diff --git a/icons/ic-accessibility.svg b/icons/ic-accessibility.svg
new file mode 100644
index 00000000..7d913389
--- /dev/null
+++ b/icons/ic-accessibility.svg
@@ -0,0 +1,4 @@
+
\ No newline at end of file
diff --git a/icons/ic-account-circle.svg b/icons/ic-account-circle.svg
new file mode 100644
index 00000000..53abd5a9
--- /dev/null
+++ b/icons/ic-account-circle.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/ic-add.svg b/icons/ic-add.svg
new file mode 100644
index 00000000..d92c119a
--- /dev/null
+++ b/icons/ic-add.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/ic-archive.svg b/icons/ic-archive.svg
new file mode 100644
index 00000000..bc703480
--- /dev/null
+++ b/icons/ic-archive.svg
@@ -0,0 +1,4 @@
+
diff --git a/icons/ic-arrow-left.svg b/icons/ic-arrow-left.svg
new file mode 100644
index 00000000..f80337cf
--- /dev/null
+++ b/icons/ic-arrow-left.svg
@@ -0,0 +1,4 @@
+
+
\ No newline at end of file
diff --git a/icons/ic-arrows-sort-down.svg b/icons/ic-arrows-sort-down.svg
new file mode 100644
index 00000000..b7793bb2
--- /dev/null
+++ b/icons/ic-arrows-sort-down.svg
@@ -0,0 +1,5 @@
+
+
\ No newline at end of file
diff --git a/icons/ic-arrows-sort-up.svg b/icons/ic-arrows-sort-up.svg
new file mode 100644
index 00000000..ddb85688
--- /dev/null
+++ b/icons/ic-arrows-sort-up.svg
@@ -0,0 +1,5 @@
+
+
\ No newline at end of file
diff --git a/icons/ic-authenticator.svg b/icons/ic-authenticator.svg
new file mode 100644
index 00000000..e8dd720c
--- /dev/null
+++ b/icons/ic-authenticator.svg
@@ -0,0 +1,4 @@
+
\ No newline at end of file
diff --git a/icons/ic-check-bold.svg b/icons/ic-check-bold.svg
new file mode 100644
index 00000000..01df89c3
--- /dev/null
+++ b/icons/ic-check-bold.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/ic-check-circle.svg b/icons/ic-check-circle.svg
new file mode 100644
index 00000000..ddb5737f
--- /dev/null
+++ b/icons/ic-check-circle.svg
@@ -0,0 +1,4 @@
+
+
\ No newline at end of file
diff --git a/icons/ic-check.svg b/icons/ic-check.svg
new file mode 100644
index 00000000..ff64da1b
--- /dev/null
+++ b/icons/ic-check.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/ic-chevron-down.svg b/icons/ic-chevron-down.svg
new file mode 100644
index 00000000..190774ef
--- /dev/null
+++ b/icons/ic-chevron-down.svg
@@ -0,0 +1,4 @@
+
\ No newline at end of file
diff --git a/icons/ic-chevron-right.svg b/icons/ic-chevron-right.svg
new file mode 100644
index 00000000..6d39ca8a
--- /dev/null
+++ b/icons/ic-chevron-right.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/ic-close.svg b/icons/ic-close.svg
new file mode 100644
index 00000000..cd22c9a5
--- /dev/null
+++ b/icons/ic-close.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/ic-cloud-off.svg b/icons/ic-cloud-off.svg
new file mode 100644
index 00000000..49015714
--- /dev/null
+++ b/icons/ic-cloud-off.svg
@@ -0,0 +1,4 @@
+
+
\ No newline at end of file
diff --git a/icons/ic-code.svg b/icons/ic-code.svg
new file mode 100644
index 00000000..79df4be8
--- /dev/null
+++ b/icons/ic-code.svg
@@ -0,0 +1,4 @@
+
\ No newline at end of file
diff --git a/icons/ic-copy.svg b/icons/ic-copy.svg
new file mode 100644
index 00000000..98e2c93e
--- /dev/null
+++ b/icons/ic-copy.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/ic-download.svg b/icons/ic-download.svg
new file mode 100644
index 00000000..e87e6516
--- /dev/null
+++ b/icons/ic-download.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/ic-email.svg b/icons/ic-email.svg
new file mode 100644
index 00000000..378c18e0
--- /dev/null
+++ b/icons/ic-email.svg
@@ -0,0 +1,4 @@
+
+
\ No newline at end of file
diff --git a/icons/ic-eye-off.svg b/icons/ic-eye-off.svg
new file mode 100644
index 00000000..76cf0901
--- /dev/null
+++ b/icons/ic-eye-off.svg
@@ -0,0 +1,4 @@
+
+
\ No newline at end of file
diff --git a/icons/ic-eye.svg b/icons/ic-eye.svg
new file mode 100644
index 00000000..9248599f
--- /dev/null
+++ b/icons/ic-eye.svg
@@ -0,0 +1,4 @@
+
+
\ No newline at end of file
diff --git a/icons/ic-folder.svg b/icons/ic-folder.svg
new file mode 100644
index 00000000..db3aea31
--- /dev/null
+++ b/icons/ic-folder.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/ic-hashtag.svg b/icons/ic-hashtag.svg
new file mode 100644
index 00000000..4fbec792
--- /dev/null
+++ b/icons/ic-hashtag.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/ic-help.svg b/icons/ic-help.svg
new file mode 100644
index 00000000..dfec7f52
--- /dev/null
+++ b/icons/ic-help.svg
@@ -0,0 +1,4 @@
+
\ No newline at end of file
diff --git a/icons/ic-info.svg b/icons/ic-info.svg
new file mode 100644
index 00000000..57567768
--- /dev/null
+++ b/icons/ic-info.svg
@@ -0,0 +1,4 @@
+
\ No newline at end of file
diff --git a/icons/ic-keyboard.svg b/icons/ic-keyboard.svg
new file mode 100644
index 00000000..3d37ab60
--- /dev/null
+++ b/icons/ic-keyboard.svg
@@ -0,0 +1,4 @@
+
\ No newline at end of file
diff --git a/icons/ic-link-off.svg b/icons/ic-link-off.svg
new file mode 100644
index 00000000..3b701266
--- /dev/null
+++ b/icons/ic-link-off.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/ic-list-bulleted.svg b/icons/ic-list-bulleted.svg
new file mode 100644
index 00000000..98c5a433
--- /dev/null
+++ b/icons/ic-list-bulleted.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/ic-listed.svg b/icons/ic-listed.svg
new file mode 100644
index 00000000..7179c323
--- /dev/null
+++ b/icons/ic-listed.svg
@@ -0,0 +1,5 @@
+
\ No newline at end of file
diff --git a/icons/ic-lock-filled.svg b/icons/ic-lock-filled.svg
new file mode 100644
index 00000000..a71db279
--- /dev/null
+++ b/icons/ic-lock-filled.svg
@@ -0,0 +1,4 @@
+
\ No newline at end of file
diff --git a/icons/ic-lock.svg b/icons/ic-lock.svg
new file mode 100644
index 00000000..946b674f
--- /dev/null
+++ b/icons/ic-lock.svg
@@ -0,0 +1,4 @@
+
+
\ No newline at end of file
diff --git a/icons/ic-markdown.svg b/icons/ic-markdown.svg
new file mode 100644
index 00000000..1efac587
--- /dev/null
+++ b/icons/ic-markdown.svg
@@ -0,0 +1,4 @@
+
\ No newline at end of file
diff --git a/icons/ic-menu-arrow-down-alt.svg b/icons/ic-menu-arrow-down-alt.svg
new file mode 100644
index 00000000..8e150eb1
--- /dev/null
+++ b/icons/ic-menu-arrow-down-alt.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/ic-menu-arrow-down.svg b/icons/ic-menu-arrow-down.svg
new file mode 100644
index 00000000..be1d6a48
--- /dev/null
+++ b/icons/ic-menu-arrow-down.svg
@@ -0,0 +1,4 @@
+
+
\ No newline at end of file
diff --git a/icons/ic-menu-arrow-right.svg b/icons/ic-menu-arrow-right.svg
new file mode 100644
index 00000000..ba5890ea
--- /dev/null
+++ b/icons/ic-menu-arrow-right.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/ic-menu-close.svg b/icons/ic-menu-close.svg
new file mode 100644
index 00000000..74aedeeb
--- /dev/null
+++ b/icons/ic-menu-close.svg
@@ -0,0 +1,4 @@
+
\ No newline at end of file
diff --git a/icons/ic-more.svg b/icons/ic-more.svg
new file mode 100644
index 00000000..ec8fe110
--- /dev/null
+++ b/icons/ic-more.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/ic-pencil-off.svg b/icons/ic-pencil-off.svg
new file mode 100644
index 00000000..060d7c87
--- /dev/null
+++ b/icons/ic-pencil-off.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/ic-pin-filled.svg b/icons/ic-pin-filled.svg
new file mode 100644
index 00000000..4e5ae92a
--- /dev/null
+++ b/icons/ic-pin-filled.svg
@@ -0,0 +1,3 @@
+
\ No newline at end of file
diff --git a/icons/ic-pin-off.svg b/icons/ic-pin-off.svg
new file mode 100644
index 00000000..813118cc
--- /dev/null
+++ b/icons/ic-pin-off.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/ic-pin.svg b/icons/ic-pin.svg
new file mode 100644
index 00000000..cf2de7c7
--- /dev/null
+++ b/icons/ic-pin.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/ic-premium-feature.svg b/icons/ic-premium-feature.svg
new file mode 100644
index 00000000..7b02bc1f
--- /dev/null
+++ b/icons/ic-premium-feature.svg
@@ -0,0 +1,6 @@
+
\ No newline at end of file
diff --git a/icons/ic-restore.svg b/icons/ic-restore.svg
new file mode 100644
index 00000000..ab1c4420
--- /dev/null
+++ b/icons/ic-restore.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/ic-security.svg b/icons/ic-security.svg
new file mode 100644
index 00000000..06ab6033
--- /dev/null
+++ b/icons/ic-security.svg
@@ -0,0 +1,4 @@
+
\ No newline at end of file
diff --git a/icons/ic-server.svg b/icons/ic-server.svg
new file mode 100644
index 00000000..faa3ea19
--- /dev/null
+++ b/icons/ic-server.svg
@@ -0,0 +1,4 @@
+
+
\ No newline at end of file
diff --git a/icons/ic-settings.svg b/icons/ic-settings.svg
new file mode 100644
index 00000000..2d2a2652
--- /dev/null
+++ b/icons/ic-settings.svg
@@ -0,0 +1,4 @@
+
\ No newline at end of file
diff --git a/icons/ic-signin.svg b/icons/ic-signin.svg
new file mode 100644
index 00000000..f211b7c4
--- /dev/null
+++ b/icons/ic-signin.svg
@@ -0,0 +1,4 @@
+
+
\ No newline at end of file
diff --git a/icons/ic-signout.svg b/icons/ic-signout.svg
new file mode 100644
index 00000000..3b66c862
--- /dev/null
+++ b/icons/ic-signout.svg
@@ -0,0 +1,4 @@
+
+
\ No newline at end of file
diff --git a/icons/ic-spreadsheets.svg b/icons/ic-spreadsheets.svg
new file mode 100644
index 00000000..2566d69b
--- /dev/null
+++ b/icons/ic-spreadsheets.svg
@@ -0,0 +1,4 @@
+
\ No newline at end of file
diff --git a/icons/ic-star.svg b/icons/ic-star.svg
new file mode 100644
index 00000000..19072b96
--- /dev/null
+++ b/icons/ic-star.svg
@@ -0,0 +1,4 @@
+
\ No newline at end of file
diff --git a/icons/ic-sync.svg b/icons/ic-sync.svg
new file mode 100644
index 00000000..b93f0ba9
--- /dev/null
+++ b/icons/ic-sync.svg
@@ -0,0 +1,4 @@
+
+
\ No newline at end of file
diff --git a/icons/ic-tasks.svg b/icons/ic-tasks.svg
new file mode 100644
index 00000000..c6b89554
--- /dev/null
+++ b/icons/ic-tasks.svg
@@ -0,0 +1,4 @@
+
\ No newline at end of file
diff --git a/icons/ic-text-paragraph.svg b/icons/ic-text-paragraph.svg
new file mode 100644
index 00000000..376e8ad4
--- /dev/null
+++ b/icons/ic-text-paragraph.svg
@@ -0,0 +1,3 @@
+
\ No newline at end of file
diff --git a/icons/ic-text-rich.svg b/icons/ic-text-rich.svg
new file mode 100644
index 00000000..d895ca8c
--- /dev/null
+++ b/icons/ic-text-rich.svg
@@ -0,0 +1,4 @@
+
\ No newline at end of file
diff --git a/icons/ic-textbox-password.svg b/icons/ic-textbox-password.svg
new file mode 100644
index 00000000..46c18912
--- /dev/null
+++ b/icons/ic-textbox-password.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/ic-themes.svg b/icons/ic-themes.svg
new file mode 100644
index 00000000..62ac3133
--- /dev/null
+++ b/icons/ic-themes.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/ic-trash-filled.svg b/icons/ic-trash-filled.svg
new file mode 100644
index 00000000..63f9575b
--- /dev/null
+++ b/icons/ic-trash-filled.svg
@@ -0,0 +1,4 @@
+
\ No newline at end of file
diff --git a/icons/ic-trash-sweep.svg b/icons/ic-trash-sweep.svg
new file mode 100644
index 00000000..dab4177a
--- /dev/null
+++ b/icons/ic-trash-sweep.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/ic-trash.svg b/icons/ic-trash.svg
new file mode 100644
index 00000000..0890f396
--- /dev/null
+++ b/icons/ic-trash.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/ic-tune.svg b/icons/ic-tune.svg
new file mode 100644
index 00000000..7fa38a00
--- /dev/null
+++ b/icons/ic-tune.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/ic-unarchive.svg b/icons/ic-unarchive.svg
new file mode 100644
index 00000000..74f0a8d9
--- /dev/null
+++ b/icons/ic-unarchive.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/ic-user.svg b/icons/ic-user.svg
new file mode 100644
index 00000000..ee303b0e
--- /dev/null
+++ b/icons/ic-user.svg
@@ -0,0 +1,4 @@
+
\ No newline at end of file
diff --git a/icons/ic-window.svg b/icons/ic-window.svg
new file mode 100644
index 00000000..c94c68f8
--- /dev/null
+++ b/icons/ic-window.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/il-notes.svg b/icons/il-notes.svg
new file mode 100644
index 00000000..2d9cfc0b
--- /dev/null
+++ b/icons/il-notes.svg
@@ -0,0 +1,35 @@
+
diff --git a/src/components/Icon.tsx b/src/components/Icon.tsx
new file mode 100644
index 00000000..b06afbc5
--- /dev/null
+++ b/src/components/Icon.tsx
@@ -0,0 +1,146 @@
+import React from 'react-native';
+import AccessibilityIcon from '../../icons/ic-accessibility.svg';
+import AccountCircleIcon from '../../icons/ic-account-circle.svg';
+import AddIcon from '../../icons/ic-add.svg';
+import ArchiveIcon from '../../icons/ic-archive.svg';
+import ArrowLeftIcon from '../../icons/ic-arrow-left.svg';
+import ArrowsSortDownIcon from '../../icons/ic-arrows-sort-down.svg';
+import ArrowsSortUpIcon from '../../icons/ic-arrows-sort-up.svg';
+import AuthenticatorIcon from '../../icons/ic-authenticator.svg';
+import CheckBoldIcon from '../../icons/ic-check-bold.svg';
+import CheckCircleIcon from '../../icons/ic-check-circle.svg';
+import CheckIcon from '../../icons/ic-check.svg';
+import ChevronDownIcon from '../../icons/ic-chevron-down.svg';
+import ChevronRightIcon from '../../icons/ic-chevron-right.svg';
+import CloseIcon from '../../icons/ic-close.svg';
+import CloudOffIcon from '../../icons/ic-cloud-off.svg';
+import CodeIcon from '../../icons/ic-code.svg';
+import CopyIcon from '../../icons/ic-copy.svg';
+import DownloadIcon from '../../icons/ic-download.svg';
+import EmailIcon from '../../icons/ic-email.svg';
+import EyeOffIcon from '../../icons/ic-eye-off.svg';
+import EyeIcon from '../../icons/ic-eye.svg';
+import HashtagIcon from '../../icons/ic-hashtag.svg';
+import HelpIcon from '../../icons/ic-help.svg';
+import InfoIcon from '../../icons/ic-info.svg';
+import KeyboardIcon from '../../icons/ic-keyboard.svg';
+import LinkOffIcon from '../../icons/ic-link-off.svg';
+import ListBulleted from '../../icons/ic-list-bulleted.svg';
+import ListedIcon from '../../icons/ic-listed.svg';
+import LockFilledIcon from '../../icons/ic-lock-filled.svg';
+import LockIcon from '../../icons/ic-lock.svg';
+import MarkdownIcon from '../../icons/ic-markdown.svg';
+import MenuArrowDownAlt from '../../icons/ic-menu-arrow-down-alt.svg';
+import MenuArrowDownIcon from '../../icons/ic-menu-arrow-down.svg';
+import MenuArrowRight from '../../icons/ic-menu-arrow-right.svg';
+import MenuCloseIcon from '../../icons/ic-menu-close.svg';
+import MoreIcon from '../../icons/ic-more.svg';
+import PencilOffIcon from '../../icons/ic-pencil-off.svg';
+import PinFilledIcon from '../../icons/ic-pin-filled.svg';
+import UnpinIcon from '../../icons/ic-pin-off.svg';
+import PinIcon from '../../icons/ic-pin.svg';
+import PremiumFeatureIcon from '../../icons/ic-premium-feature.svg';
+import RestoreIcon from '../../icons/ic-restore.svg';
+import SecurityIcon from '../../icons/ic-security.svg';
+import ServerIcon from '../../icons/ic-server.svg';
+import SettingsIcon from '../../icons/ic-settings.svg';
+import SignInIcon from '../../icons/ic-signin.svg';
+import SignOutIcon from '../../icons/ic-signout.svg';
+import SpreadsheetsIcon from '../../icons/ic-spreadsheets.svg';
+import StarIcon from '../../icons/ic-star.svg';
+import SyncIcon from '../../icons/ic-sync.svg';
+import TasksIcon from '../../icons/ic-tasks.svg';
+import PlainTextIcon from '../../icons/ic-text-paragraph.svg';
+import RichTextIcon from '../../icons/ic-text-rich.svg';
+import PasswordIcon from '../../icons/ic-textbox-password.svg';
+import ThemesIcon from '../../icons/ic-themes.svg';
+import TrashFilledIcon from '../../icons/ic-trash-filled.svg';
+import TrashSweepIcon from '../../icons/ic-trash-sweep.svg';
+import TrashIcon from '../../icons/ic-trash.svg';
+import TuneIcon from '../../icons/ic-tune.svg';
+import UnarchiveIcon from '../../icons/ic-unarchive.svg';
+import UserIcon from '../../icons/ic-user.svg';
+import WindowIcon from '../../icons/ic-window.svg';
+
+const ICONS = {
+ 'menu-arrow-down-alt': MenuArrowDownAlt,
+ 'menu-arrow-right': MenuArrowRight,
+ 'arrows-sort-up': ArrowsSortUpIcon,
+ 'arrows-sort-down': ArrowsSortDownIcon,
+ lock: LockIcon,
+ 'lock-filled': LockFilledIcon,
+ eye: EyeIcon,
+ 'eye-off': EyeOffIcon,
+ server: ServerIcon,
+ email: EmailIcon,
+ 'chevron-down': ChevronDownIcon,
+ 'arrow-left': ArrowLeftIcon,
+ sync: SyncIcon,
+ 'check-circle': CheckCircleIcon,
+ signIn: SignInIcon,
+ signOut: SignOutIcon,
+ 'cloud-off': CloudOffIcon,
+ 'pencil-off': PencilOffIcon,
+ 'plain-text': PlainTextIcon,
+ 'rich-text': RichTextIcon,
+ code: CodeIcon,
+ markdown: MarkdownIcon,
+ authenticator: AuthenticatorIcon,
+ spreadsheets: SpreadsheetsIcon,
+ tasks: TasksIcon,
+ trash: TrashIcon,
+ 'trash-filled': TrashFilledIcon,
+ pin: PinIcon,
+ 'pin-filled': PinFilledIcon,
+ unpin: UnpinIcon,
+ archive: ArchiveIcon,
+ unarchive: UnarchiveIcon,
+ hashtag: HashtagIcon,
+ 'chevron-right': ChevronRightIcon,
+ restore: RestoreIcon,
+ close: CloseIcon,
+ password: PasswordIcon,
+ 'trash-sweep': TrashSweepIcon,
+ more: MoreIcon,
+ tune: TuneIcon,
+ accessibility: AccessibilityIcon,
+ add: AddIcon,
+ help: HelpIcon,
+ keyboard: KeyboardIcon,
+ 'list-bulleted': ListBulleted,
+ 'link-off': LinkOffIcon,
+ listed: ListedIcon,
+ security: SecurityIcon,
+ settings: SettingsIcon,
+ star: StarIcon,
+ themes: ThemesIcon,
+ user: UserIcon,
+ copy: CopyIcon,
+ download: DownloadIcon,
+ info: InfoIcon,
+ check: CheckIcon,
+ 'check-bold': CheckBoldIcon,
+ 'account-circle': AccountCircleIcon,
+ 'menu-arrow-down': MenuArrowDownIcon,
+ 'menu-close': MenuCloseIcon,
+ window: WindowIcon,
+ 'premium-feature': PremiumFeatureIcon,
+};
+
+export type IconType = keyof typeof ICONS;
+
+type Props = {
+ type: IconType;
+ className?: string;
+ ariaHidden?: boolean;
+};
+
+export const Icon = ({ type, className = '', ariaHidden = false }: Props) => {
+ const IconComponent = ICONS[type];
+ return (
+
+ );
+};