From ee9ce6e904324067ffcefca67ae3016e004cd114 Mon Sep 17 00:00:00 2001 From: Mike Perrotti Date: Wed, 9 Jan 2019 15:17:04 -0500 Subject: [PATCH] feat: generate icon sprite from folder of SVGs --- .gitignore | 1 + package-lock.json | 339 ++++++++++++++++-- package.json | 5 + packages/icons/iconSpriteConfig.js | 18 + packages/icons/scripts/build.js | 102 ++++++ .../src/icon-product/cluster-inverse.svg | 16 + packages/icons/src/icon-product/cluster.svg | 16 + .../src/icon-product/components-inverse.svg | 16 + .../icons/src/icon-product/components.svg | 16 + .../icons/src/icon-product/gear-inverse.svg | 16 + packages/icons/src/icon-product/gear.svg | 16 + .../icons/src/icon-product/graph-inverse.svg | 16 + packages/icons/src/icon-product/graph.svg | 16 + .../icons/src/icon-product/jobs-inverse.svg | 16 + packages/icons/src/icon-product/jobs.svg | 16 + .../icons/src/icon-product/lock-inverse.svg | 16 + packages/icons/src/icon-product/lock.svg | 16 + .../src/icon-product/network-inverse.svg | 16 + packages/icons/src/icon-product/network.svg | 16 + .../src/icon-product/packages-inverse.svg | 16 + packages/icons/src/icon-product/packages.svg | 16 + .../src/icon-product/servers-inverse.svg | 16 + packages/icons/src/icon-product/servers.svg | 16 + .../src/icon-product/services-inverse.svg | 16 + packages/icons/src/icon-product/services.svg | 16 + .../icons/src/icon-product/users-inverse.svg | 16 + packages/icons/src/icon-product/users.svg | 16 + packages/icons/src/icon-system/arrow-down.svg | 3 + packages/icons/src/icon-system/arrow-left.svg | 3 + .../icons/src/icon-system/arrow-right.svg | 3 + packages/icons/src/icon-system/arrow-up.svg | 3 + packages/icons/src/icon-system/caret-down.svg | 3 + packages/icons/src/icon-system/caret-left.svg | 3 + .../icons/src/icon-system/caret-right.svg | 3 + packages/icons/src/icon-system/caret-up.svg | 3 + packages/icons/src/icon-system/check.svg | 3 + .../icons/src/icon-system/circle-check.svg | 3 + .../icons/src/icon-system/circle-close.svg | 3 + .../src/icon-system/circle-information.svg | 3 + .../icons/src/icon-system/circle-question.svg | 3 + packages/icons/src/icon-system/clipboard.svg | 6 + packages/icons/src/icon-system/close.svg | 3 + packages/icons/src/icon-system/commit.svg | 3 + packages/icons/src/icon-system/container.svg | 6 + packages/icons/src/icon-system/containers.svg | 6 + packages/icons/src/icon-system/database.svg | 6 + packages/icons/src/icon-system/door-key.svg | 6 + packages/icons/src/icon-system/download.svg | 3 + .../src/icon-system/ellipsis-horizontal.svg | 3 + .../src/icon-system/ellipsis-vertical.svg | 3 + packages/icons/src/icon-system/export.svg | 3 + packages/icons/src/icon-system/eye-slash.svg | 3 + packages/icons/src/icon-system/eye.svg | 3 + .../icons/src/icon-system/folder-minus.svg | 6 + .../icons/src/icon-system/folder-open.svg | 6 + .../icons/src/icon-system/folder-plus.svg | 6 + packages/icons/src/icon-system/folder.svg | 6 + packages/icons/src/icon-system/funnel.svg | 3 + packages/icons/src/icon-system/gear.svg | 3 + packages/icons/src/icon-system/import.svg | 3 + packages/icons/src/icon-system/key.svg | 3 + packages/icons/src/icon-system/lock-open.svg | 6 + packages/icons/src/icon-system/lock.svg | 3 + packages/icons/src/icon-system/menu.svg | 3 + packages/icons/src/icon-system/minus.svg | 3 + .../icons/src/icon-system/open-external.svg | 3 + .../icons/src/icon-system/page-document.svg | 6 + packages/icons/src/icon-system/page.svg | 6 + .../icons/src/icon-system/pages-document.svg | 6 + packages/icons/src/icon-system/pages.svg | 6 + packages/icons/src/icon-system/paperclip.svg | 3 + packages/icons/src/icon-system/pencil.svg | 3 + packages/icons/src/icon-system/plus.svg | 3 + packages/icons/src/icon-system/repeat.svg | 3 + packages/icons/src/icon-system/search.svg | 3 + packages/icons/src/icon-system/services.svg | 6 + packages/icons/src/icon-system/share.svg | 3 + packages/icons/src/icon-system/shield.svg | 6 + packages/icons/src/icon-system/shuffle.svg | 3 + .../src/icon-system/sidebar-collapse.svg | 3 + .../icons/src/icon-system/sidebar-expand.svg | 3 + packages/icons/src/icon-system/upload.svg | 3 + packages/icons/src/icon-system/user-minus.svg | 6 + packages/icons/src/icon-system/user-plus.svg | 6 + packages/icons/src/icon-system/user.svg | 3 + .../icons/src/icon-system/users-minus.svg | 6 + packages/icons/src/icon-system/users-plus.svg | 6 + packages/icons/src/icon-system/users.svg | 6 + packages/icons/src/icon-system/yield.svg | 3 + 89 files changed, 1043 insertions(+), 23 deletions(-) create mode 100644 packages/icons/iconSpriteConfig.js create mode 100644 packages/icons/scripts/build.js create mode 100644 packages/icons/src/icon-product/cluster-inverse.svg create mode 100644 packages/icons/src/icon-product/cluster.svg create mode 100644 packages/icons/src/icon-product/components-inverse.svg create mode 100644 packages/icons/src/icon-product/components.svg create mode 100644 packages/icons/src/icon-product/gear-inverse.svg create mode 100644 packages/icons/src/icon-product/gear.svg create mode 100644 packages/icons/src/icon-product/graph-inverse.svg create mode 100644 packages/icons/src/icon-product/graph.svg create mode 100644 packages/icons/src/icon-product/jobs-inverse.svg create mode 100644 packages/icons/src/icon-product/jobs.svg create mode 100644 packages/icons/src/icon-product/lock-inverse.svg create mode 100644 packages/icons/src/icon-product/lock.svg create mode 100644 packages/icons/src/icon-product/network-inverse.svg create mode 100644 packages/icons/src/icon-product/network.svg create mode 100644 packages/icons/src/icon-product/packages-inverse.svg create mode 100644 packages/icons/src/icon-product/packages.svg create mode 100644 packages/icons/src/icon-product/servers-inverse.svg create mode 100644 packages/icons/src/icon-product/servers.svg create mode 100644 packages/icons/src/icon-product/services-inverse.svg create mode 100644 packages/icons/src/icon-product/services.svg create mode 100644 packages/icons/src/icon-product/users-inverse.svg create mode 100644 packages/icons/src/icon-product/users.svg create mode 100644 packages/icons/src/icon-system/arrow-down.svg create mode 100644 packages/icons/src/icon-system/arrow-left.svg create mode 100644 packages/icons/src/icon-system/arrow-right.svg create mode 100644 packages/icons/src/icon-system/arrow-up.svg create mode 100644 packages/icons/src/icon-system/caret-down.svg create mode 100644 packages/icons/src/icon-system/caret-left.svg create mode 100644 packages/icons/src/icon-system/caret-right.svg create mode 100644 packages/icons/src/icon-system/caret-up.svg create mode 100644 packages/icons/src/icon-system/check.svg create mode 100644 packages/icons/src/icon-system/circle-check.svg create mode 100644 packages/icons/src/icon-system/circle-close.svg create mode 100644 packages/icons/src/icon-system/circle-information.svg create mode 100644 packages/icons/src/icon-system/circle-question.svg create mode 100644 packages/icons/src/icon-system/clipboard.svg create mode 100644 packages/icons/src/icon-system/close.svg create mode 100644 packages/icons/src/icon-system/commit.svg create mode 100644 packages/icons/src/icon-system/container.svg create mode 100644 packages/icons/src/icon-system/containers.svg create mode 100644 packages/icons/src/icon-system/database.svg create mode 100644 packages/icons/src/icon-system/door-key.svg create mode 100644 packages/icons/src/icon-system/download.svg create mode 100644 packages/icons/src/icon-system/ellipsis-horizontal.svg create mode 100644 packages/icons/src/icon-system/ellipsis-vertical.svg create mode 100644 packages/icons/src/icon-system/export.svg create mode 100644 packages/icons/src/icon-system/eye-slash.svg create mode 100644 packages/icons/src/icon-system/eye.svg create mode 100644 packages/icons/src/icon-system/folder-minus.svg create mode 100644 packages/icons/src/icon-system/folder-open.svg create mode 100644 packages/icons/src/icon-system/folder-plus.svg create mode 100644 packages/icons/src/icon-system/folder.svg create mode 100644 packages/icons/src/icon-system/funnel.svg create mode 100644 packages/icons/src/icon-system/gear.svg create mode 100644 packages/icons/src/icon-system/import.svg create mode 100644 packages/icons/src/icon-system/key.svg create mode 100644 packages/icons/src/icon-system/lock-open.svg create mode 100644 packages/icons/src/icon-system/lock.svg create mode 100644 packages/icons/src/icon-system/menu.svg create mode 100644 packages/icons/src/icon-system/minus.svg create mode 100644 packages/icons/src/icon-system/open-external.svg create mode 100644 packages/icons/src/icon-system/page-document.svg create mode 100644 packages/icons/src/icon-system/page.svg create mode 100644 packages/icons/src/icon-system/pages-document.svg create mode 100644 packages/icons/src/icon-system/pages.svg create mode 100644 packages/icons/src/icon-system/paperclip.svg create mode 100644 packages/icons/src/icon-system/pencil.svg create mode 100644 packages/icons/src/icon-system/plus.svg create mode 100644 packages/icons/src/icon-system/repeat.svg create mode 100644 packages/icons/src/icon-system/search.svg create mode 100644 packages/icons/src/icon-system/services.svg create mode 100644 packages/icons/src/icon-system/share.svg create mode 100644 packages/icons/src/icon-system/shield.svg create mode 100644 packages/icons/src/icon-system/shuffle.svg create mode 100644 packages/icons/src/icon-system/sidebar-collapse.svg create mode 100644 packages/icons/src/icon-system/sidebar-expand.svg create mode 100644 packages/icons/src/icon-system/upload.svg create mode 100644 packages/icons/src/icon-system/user-minus.svg create mode 100644 packages/icons/src/icon-system/user-plus.svg create mode 100644 packages/icons/src/icon-system/user.svg create mode 100644 packages/icons/src/icon-system/users-minus.svg create mode 100644 packages/icons/src/icon-system/users-plus.svg create mode 100644 packages/icons/src/icon-system/users.svg create mode 100644 packages/icons/src/icon-system/yield.svg diff --git a/.gitignore b/.gitignore index 008be1da2..24e5c892a 100644 --- a/.gitignore +++ b/.gitignore @@ -13,3 +13,4 @@ tmp/ .env coverage storybook-static/ +packages/icons/dist/ diff --git a/package-lock.json b/package-lock.json index 5b3613ea7..5983d7806 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,6 +13,38 @@ "@babel/highlight": "^7.0.0" } }, + "@babel/generator": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.2.2.tgz", + "integrity": "sha512-I4o675J/iS8k+P38dvJ3IBGqObLXyQLTxtrR4u9cSUJOURvafeEWb/pFMOTwtNrmq73mJzyF6ueTbO1BtN0Zeg==", + "dev": true, + "requires": { + "@babel/types": "^7.2.2", + "jsesc": "^2.5.1", + "lodash": "^4.17.10", + "source-map": "^0.5.0", + "trim-right": "^1.0.1" + }, + "dependencies": { + "@babel/types": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.2.2.tgz", + "integrity": "sha512-fKCuD6UFUMkR541eDWL+2ih/xFZBXPOg/7EQFeTluMDebfqR4jrpaCjLhkWlQS4hT6nRa2PMEgXKbRB5/H2fpg==", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.10", + "to-fast-properties": "^2.0.0" + } + }, + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true + } + } + }, "@babel/helper-module-imports": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.0.0.tgz", @@ -39,9 +71,9 @@ "dev": true }, "@babel/types": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.1.3.tgz", - "integrity": "sha512-RpPOVfK+yatXyn8n4PB1NW6k9qjinrXrRR8ugBN8fD6hCy5RXI6PSbVqpOJBO9oSaY7Nom4ohj35feb0UR9hSA==", + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.2.2.tgz", + "integrity": "sha512-fKCuD6UFUMkR541eDWL+2ih/xFZBXPOg/7EQFeTluMDebfqR4jrpaCjLhkWlQS4hT6nRa2PMEgXKbRB5/H2fpg==", "requires": { "esutils": "^2.0.2", "lodash": "^4.17.10", @@ -1066,6 +1098,12 @@ "integrity": "sha512-ZBFR7TROLVzCkswA3Fmqq+IIJt62/T7aY/Dmz+QkU7CaW2QFqAitCE8Ups7IzmGhcN1YWMBT4Qcoc07jU9hOJQ==", "dev": true }, + "@types/q": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.1.tgz", + "integrity": "sha512-eqz8c/0kwNi/OEHQfvIuJVLTst3in0e7uTKeuY+WL/zfKn0xVujOTp42bS/vUUokhK5P2BppLd9JXMOMHcgbjA==", + "dev": true + }, "@types/react": { "version": "16.4.16", "resolved": "https://registry.npmjs.org/@types/react/-/react-16.4.16.tgz", @@ -3904,7 +3942,7 @@ }, "chalk": { "version": "1.1.3", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { @@ -3917,7 +3955,7 @@ }, "strip-ansi": { "version": "3.0.1", - "resolved": "http://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, "requires": { @@ -4845,6 +4883,12 @@ "nth-check": "~1.0.1" } }, + "css-select-base-adapter": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz", + "integrity": "sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==", + "dev": true + }, "css-selector-tokenizer": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.0.tgz", @@ -4856,6 +4900,22 @@ "regexpu-core": "^1.0.0" } }, + "css-tree": { + "version": "1.0.0-alpha.28", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.28.tgz", + "integrity": "sha512-joNNW1gCp3qFFzj4St6zk+Wh/NBv0vM5YbEreZk0SD4S23S+1xBKb6cLDg2uj4P4k/GUMlIm6cKIDqIG+vdt0w==", + "dev": true, + "requires": { + "mdn-data": "~1.1.0", + "source-map": "^0.5.3" + } + }, + "css-url-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/css-url-regex/-/css-url-regex-1.1.0.tgz", + "integrity": "sha1-g4NCMMyfdMRX3lnuvRVD/uuDt+w=", + "dev": true + }, "css-what": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.0.tgz", @@ -11353,6 +11413,18 @@ "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=" }, + "lodash.assignin": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", + "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=", + "dev": true + }, + "lodash.bind": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz", + "integrity": "sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU=", + "dev": true + }, "lodash.camelcase": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", @@ -11370,6 +11442,12 @@ "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", "dev": true }, + "lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=", + "dev": true + }, "lodash.escape": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/lodash.escape/-/lodash.escape-4.0.1.tgz", @@ -11381,12 +11459,30 @@ "resolved": "https://registry.npmjs.org/lodash.escaperegexp/-/lodash.escaperegexp-4.1.2.tgz", "integrity": "sha1-ZHYsSGGAglGKw99Mz11YhtriA0c=" }, + "lodash.filter": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz", + "integrity": "sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4=", + "dev": true + }, + "lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=", + "dev": true + }, "lodash.flattendeep": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=", "dev": true }, + "lodash.foreach": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", + "integrity": "sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=", + "dev": true + }, "lodash.get": { "version": "4.4.2", "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", @@ -11472,6 +11568,18 @@ "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=" }, + "lodash.reduce": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz", + "integrity": "sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs=", + "dev": true + }, + "lodash.reject": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reject/-/lodash.reject-4.6.0.tgz", + "integrity": "sha1-gNZJLcFHCGS79YNTO2UfQqn1JBU=", + "dev": true + }, "lodash.set": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/lodash.set/-/lodash.set-4.3.2.tgz", @@ -11805,6 +11913,12 @@ "safe-buffer": "^5.1.2" } }, + "mdn-data": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-1.1.4.tgz", + "integrity": "sha512-FSYbp3lyKjyj3E7fMl6rYvUdX0FBXaluGqlFoYESWQlyUTq8R+wp0rkFxoYFqZlHCvsUXGjyJmLQSnXToYhOSA==", + "dev": true + }, "media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", @@ -18035,12 +18149,34 @@ } } }, + "colors": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", + "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", + "dev": true + }, + "esprima": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", + "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", + "dev": true + }, "has-flag": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", "dev": true }, + "js-yaml": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.7.0.tgz", + "integrity": "sha1-XJZ93YN6m/3KXy3oQlOr6KHAO4A=", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^2.6.0" + } + }, "postcss": { "version": "5.2.18", "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", @@ -18070,6 +18206,21 @@ "requires": { "has-flag": "^1.0.0" } + }, + "svgo": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-0.7.2.tgz", + "integrity": "sha1-n1dyQTlSE1xv779Ar+ak+qiLS7U=", + "dev": true, + "requires": { + "coa": "~1.0.1", + "colors": "~1.1.2", + "csso": "~2.3.1", + "js-yaml": "~3.7.0", + "mkdirp": "~0.5.1", + "sax": "~1.2.1", + "whet.extend": "~0.9.9" + } } } }, @@ -20403,6 +20554,12 @@ "safe-buffer": "^5.1.1" } }, + "stable": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", + "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", + "dev": true + }, "stack-utils": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.1.tgz", @@ -20753,40 +20910,170 @@ "dev": true }, "svgo": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-0.7.2.tgz", - "integrity": "sha1-n1dyQTlSE1xv779Ar+ak+qiLS7U=", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-1.1.1.tgz", + "integrity": "sha512-GBkJbnTuFpM4jFbiERHDWhZc/S/kpHToqmZag3aEBjPYK44JAN2QBjvrGIxLOoCyMZjuFQIfTO2eJd8uwLY/9g==", "dev": true, "requires": { - "coa": "~1.0.1", + "coa": "~2.0.1", "colors": "~1.1.2", - "csso": "~2.3.1", - "js-yaml": "~3.7.0", + "css-select": "^2.0.0", + "css-select-base-adapter": "~0.1.0", + "css-tree": "1.0.0-alpha.28", + "css-url-regex": "^1.1.0", + "csso": "^3.5.0", + "js-yaml": "^3.12.0", "mkdirp": "~0.5.1", - "sax": "~1.2.1", - "whet.extend": "~0.9.9" + "object.values": "^1.0.4", + "sax": "~1.2.4", + "stable": "~0.1.6", + "unquote": "~1.1.1", + "util.promisify": "~1.0.0" }, "dependencies": { + "coa": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz", + "integrity": "sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==", + "dev": true, + "requires": { + "@types/q": "^1.5.1", + "chalk": "^2.4.1", + "q": "^1.1.2" + } + }, "colors": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", "dev": true }, - "esprima": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", + "css-select": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.0.2.tgz", + "integrity": "sha512-dSpYaDVoWaELjvZ3mS6IKZM/y2PMPa/XYoEfYNZePL4U/XgyxZNroHEHReDx/d+VgXh9VbCTtFqLkFbmeqeaRQ==", + "dev": true, + "requires": { + "boolbase": "^1.0.0", + "css-what": "^2.1.2", + "domutils": "^1.7.0", + "nth-check": "^1.0.2" + } + }, + "css-what": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.2.tgz", + "integrity": "sha512-wan8dMWQ0GUeF7DGEPVjhHemVW/vy6xUYmFzRY8RYqgA0JtXC9rJmbScBjqSu6dg9q0lwPQy6ZAmJVr3PPTvqQ==", "dev": true }, - "js-yaml": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.7.0.tgz", - "integrity": "sha1-XJZ93YN6m/3KXy3oQlOr6KHAO4A=", + "csso": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/csso/-/csso-3.5.1.tgz", + "integrity": "sha512-vrqULLffYU1Q2tLdJvaCYbONStnfkfimRxXNaGjxMldI0C7JPBC4rB1RyjhfdZ4m1frm8pM9uRPKH3d2knZ8gg==", "dev": true, "requires": { - "argparse": "^1.0.7", - "esprima": "^2.6.0" + "css-tree": "1.0.0-alpha.29" + }, + "dependencies": { + "css-tree": { + "version": "1.0.0-alpha.29", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.29.tgz", + "integrity": "sha512-sRNb1XydwkW9IOci6iB2xmy8IGCj6r/fr+JWitvJ2JxQRPzN3T4AGGVWCMlVmVwM1gtgALJRmGIlWv5ppnGGkg==", + "dev": true, + "requires": { + "mdn-data": "~1.1.0", + "source-map": "^0.5.3" + } + } + } + }, + "domutils": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", + "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", + "dev": true, + "requires": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "nth-check": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "dev": true, + "requires": { + "boolbase": "~1.0.0" + } + } + } + }, + "svgstore": { + "version": "3.0.0-2", + "resolved": "https://registry.npmjs.org/svgstore/-/svgstore-3.0.0-2.tgz", + "integrity": "sha512-qiR9MvGgCWLuuspa9wFkafE1BrwrtsoFwhsWHt6zFK7vq3TcYKPCKFOVDBa0rAflF7/GI3SFIE+h38l8vFCFgQ==", + "dev": true, + "requires": { + "cheerio": "^0.22.0", + "object-assign": "^4.1.1" + }, + "dependencies": { + "cheerio": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz", + "integrity": "sha1-qbqoYKP5tZWmuBsahocxIe06Jp4=", + "dev": true, + "requires": { + "css-select": "~1.2.0", + "dom-serializer": "~0.1.0", + "entities": "~1.1.1", + "htmlparser2": "^3.9.1", + "lodash.assignin": "^4.0.9", + "lodash.bind": "^4.1.4", + "lodash.defaults": "^4.0.1", + "lodash.filter": "^4.4.0", + "lodash.flatten": "^4.2.0", + "lodash.foreach": "^4.3.0", + "lodash.map": "^4.4.0", + "lodash.merge": "^4.4.0", + "lodash.pick": "^4.2.1", + "lodash.reduce": "^4.4.0", + "lodash.reject": "^4.4.0", + "lodash.some": "^4.4.0" + } + }, + "domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "dev": true, + "requires": { + "domelementtype": "1" + } + }, + "htmlparser2": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.0.tgz", + "integrity": "sha512-J1nEUGv+MkXS0weHNWVKJJ+UrLfePxRWpN3C9bEi9fLxL2+ggW94DQvgYVXsaT30PGwYRIZKNZXuyMhp3Di4bQ==", + "dev": true, + "requires": { + "domelementtype": "^1.3.0", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^3.0.6" + } + }, + "readable-stream": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.1.1.tgz", + "integrity": "sha512-DkN66hPyqDhnIQ6Jcsvx9bFjhw214O4poMBcIMgPVpQvNy9a0e0Uhg5SqySyDKAmUlwt8LonTBz1ezOnM8pUdA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" } } } @@ -21649,6 +21936,12 @@ "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", "dev": true }, + "unquote": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", + "integrity": "sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ=", + "dev": true + }, "unset-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", diff --git a/package.json b/package.json index 2b77b456f..742398d9b 100644 --- a/package.json +++ b/package.json @@ -18,6 +18,7 @@ "prebuild:storybook": "npm run build:design-tokens", "prebuild:design-tokens": "npm run clean:design-tokens", "build:design-tokens": "node ./packages/design-tokens/scripts/build.js", + "build:svg": "node ./packages/icons/scripts/build.js", "clean": "rimraf dist", "clean:design-tokens": "rm -rf ./dist/design-tokens", "commitlint": "commitlint -e", @@ -55,6 +56,8 @@ "semantic-release": "15.9.6" }, "devDependencies": { + "@babel/generator": "^7.2.2", + "@babel/types": "^7.2.2", "@commitlint/cli": "7.2.0", "@commitlint/config-conventional": "7.1.2", "@dcos/tslint-config": "0.1.1", @@ -97,6 +100,8 @@ "rimraf": "2.6.2", "storybook-readme": "4.0.2", "style-dictionary": "^2.4.0", + "svgo": "1.1.1", + "svgstore": "3.0.0-2", "ts-jest": "23.10.4", "ts-loader": "3.5.0", "tslib": "1.9.3", diff --git a/packages/icons/iconSpriteConfig.js b/packages/icons/iconSpriteConfig.js new file mode 100644 index 000000000..61445e314 --- /dev/null +++ b/packages/icons/iconSpriteConfig.js @@ -0,0 +1,18 @@ +const path = require("path"); +const systemIconsPath = path.join(__dirname, "src", "icon-system"); +const productIconsPath = path.join(__dirname, "src", "icon-product"); + +const iconDistConfigObj = { + system: { + inDir: systemIconsPath, + filename: "system-icons-sprite.svg", + idPrefix: "system" + }, + product: { + inDir: productIconsPath, + filename: "product-icons-sprite.svg", + idPrefix: "product" + } +}; + +module.exports = iconDistConfigObj; diff --git a/packages/icons/scripts/build.js b/packages/icons/scripts/build.js new file mode 100644 index 000000000..0b3e74c4c --- /dev/null +++ b/packages/icons/scripts/build.js @@ -0,0 +1,102 @@ +const path = require("path"); +const { + existsSync, + mkdirSync, + readdirSync, + readFile, + readFileSync, + writeFileSync +} = require("fs"); +const t = require("@babel/types"); +const generate = require("@babel/generator").default; +const SVGO = require("svgo"); +const svgstore = require("svgstore"); +const iconSpriteConfig = require("../iconSpriteConfig.js"); +const svgo = new SVGO({ + plugins: [ + { + removeDoctype: true, + }, + { + cleanupIDs: false, + } + ] +}); +const buildDirPath = path.join(__dirname, "../", "dist"); + +const getFilePaths = dir => + readdirSync(dir).map(file => `${dir}/${file}`); + +const writeSprite = (srcDir, spritePath, idPrefix) => { + console.info(`\tgenerating sprite at:\n\t${spritePath}\n`); + + writeFileSync( + spritePath, + getFilePaths(srcDir).reduce((sprites, file) => { + return sprites.add(`${idPrefix}-${path.basename(file, ".svg")}`, readFileSync(file, "utf8")); + }, svgstore({renameDefs: true})) + ); +}; + +const optimizeWithSVGO = spritePath => { + console.info("\toptimizing sprite\n"); + + readFile(spritePath, "utf8", (err, data) => { + if (err) { + throw err; + } + + svgo.optimize(data, { path: spritePath }).then(result => { + writeFileSync(spritePath, result.data); + }); + }); +}; + +const writeEnum = (srcDir, iconSetName, idPrefix) => { + console.info("\tcreating icon name enum\n"); + + const svgNamesObj = + getFilePaths(srcDir) + .map(file => path.basename(file, ".svg")) + .reduce((prev, curr) => { + const nameToPascal = curr.replace(/(\-|^)([a-z])/gi, (match, p1, p2) => p2.toUpperCase()); + + prev[nameToPascal] = curr; + return prev; + }, {}); + const ast = t.tSEnumDeclaration( + t.identifier(`${iconSetName.replace(/^\w/, c => c.toUpperCase())}Icons`), + Object.keys(svgNamesObj).map(svgName => + t.tSEnumMember(t.identifier(svgName), t.stringLiteral(`${idPrefix}-${svgNamesObj[svgName]}`)) + ) + ); + const { code } = generate(ast); + + writeFileSync( + path.join(buildDirPath, `${iconSetName}-icons-enum.ts`), + // when generate parses the AST, it adds a trailing comma that needs + // to be removed in order for Prettier to pass + `export ${code.replace(/,(?=[^,]*$)/, '')}\n` + ); +} + +if (!existsSync(buildDirPath)) { + mkdirSync(buildDirPath); +} + +Object.keys(iconSpriteConfig).forEach(iconSet => { + console.info(`🔧 "${iconSet}" icons`); + writeSprite( + iconSpriteConfig[iconSet].inDir, + path.join(buildDirPath, iconSpriteConfig[iconSet].filename), + iconSpriteConfig[iconSet].idPrefix + ); + optimizeWithSVGO( + path.join(buildDirPath, iconSpriteConfig[iconSet].filename) + ); + writeEnum( + iconSpriteConfig[iconSet].inDir, + iconSet, + iconSpriteConfig[iconSet].idPrefix + ); +}); diff --git a/packages/icons/src/icon-product/cluster-inverse.svg b/packages/icons/src/icon-product/cluster-inverse.svg new file mode 100644 index 000000000..88623e7d0 --- /dev/null +++ b/packages/icons/src/icon-product/cluster-inverse.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/packages/icons/src/icon-product/cluster.svg b/packages/icons/src/icon-product/cluster.svg new file mode 100644 index 000000000..548edfea4 --- /dev/null +++ b/packages/icons/src/icon-product/cluster.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/packages/icons/src/icon-product/components-inverse.svg b/packages/icons/src/icon-product/components-inverse.svg new file mode 100644 index 000000000..7aa99821f --- /dev/null +++ b/packages/icons/src/icon-product/components-inverse.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/packages/icons/src/icon-product/components.svg b/packages/icons/src/icon-product/components.svg new file mode 100644 index 000000000..a50d67d52 --- /dev/null +++ b/packages/icons/src/icon-product/components.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/packages/icons/src/icon-product/gear-inverse.svg b/packages/icons/src/icon-product/gear-inverse.svg new file mode 100644 index 000000000..1f3efe466 --- /dev/null +++ b/packages/icons/src/icon-product/gear-inverse.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/packages/icons/src/icon-product/gear.svg b/packages/icons/src/icon-product/gear.svg new file mode 100644 index 000000000..95e6ed243 --- /dev/null +++ b/packages/icons/src/icon-product/gear.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/packages/icons/src/icon-product/graph-inverse.svg b/packages/icons/src/icon-product/graph-inverse.svg new file mode 100644 index 000000000..cabababcf --- /dev/null +++ b/packages/icons/src/icon-product/graph-inverse.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/packages/icons/src/icon-product/graph.svg b/packages/icons/src/icon-product/graph.svg new file mode 100644 index 000000000..d0d7d23d9 --- /dev/null +++ b/packages/icons/src/icon-product/graph.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/packages/icons/src/icon-product/jobs-inverse.svg b/packages/icons/src/icon-product/jobs-inverse.svg new file mode 100644 index 000000000..a8b20cab9 --- /dev/null +++ b/packages/icons/src/icon-product/jobs-inverse.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/packages/icons/src/icon-product/jobs.svg b/packages/icons/src/icon-product/jobs.svg new file mode 100644 index 000000000..e32d86711 --- /dev/null +++ b/packages/icons/src/icon-product/jobs.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/packages/icons/src/icon-product/lock-inverse.svg b/packages/icons/src/icon-product/lock-inverse.svg new file mode 100644 index 000000000..08407be22 --- /dev/null +++ b/packages/icons/src/icon-product/lock-inverse.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/packages/icons/src/icon-product/lock.svg b/packages/icons/src/icon-product/lock.svg new file mode 100644 index 000000000..bd582c819 --- /dev/null +++ b/packages/icons/src/icon-product/lock.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/packages/icons/src/icon-product/network-inverse.svg b/packages/icons/src/icon-product/network-inverse.svg new file mode 100644 index 000000000..cddd70da3 --- /dev/null +++ b/packages/icons/src/icon-product/network-inverse.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/packages/icons/src/icon-product/network.svg b/packages/icons/src/icon-product/network.svg new file mode 100644 index 000000000..381f9f626 --- /dev/null +++ b/packages/icons/src/icon-product/network.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/packages/icons/src/icon-product/packages-inverse.svg b/packages/icons/src/icon-product/packages-inverse.svg new file mode 100644 index 000000000..a2221c0eb --- /dev/null +++ b/packages/icons/src/icon-product/packages-inverse.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/packages/icons/src/icon-product/packages.svg b/packages/icons/src/icon-product/packages.svg new file mode 100644 index 000000000..5207fd5e9 --- /dev/null +++ b/packages/icons/src/icon-product/packages.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/packages/icons/src/icon-product/servers-inverse.svg b/packages/icons/src/icon-product/servers-inverse.svg new file mode 100644 index 000000000..2fa95b650 --- /dev/null +++ b/packages/icons/src/icon-product/servers-inverse.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/packages/icons/src/icon-product/servers.svg b/packages/icons/src/icon-product/servers.svg new file mode 100644 index 000000000..dae3a791d --- /dev/null +++ b/packages/icons/src/icon-product/servers.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/packages/icons/src/icon-product/services-inverse.svg b/packages/icons/src/icon-product/services-inverse.svg new file mode 100644 index 000000000..f8ff2c605 --- /dev/null +++ b/packages/icons/src/icon-product/services-inverse.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/packages/icons/src/icon-product/services.svg b/packages/icons/src/icon-product/services.svg new file mode 100644 index 000000000..2ea5c9183 --- /dev/null +++ b/packages/icons/src/icon-product/services.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/packages/icons/src/icon-product/users-inverse.svg b/packages/icons/src/icon-product/users-inverse.svg new file mode 100644 index 000000000..24ea24f1f --- /dev/null +++ b/packages/icons/src/icon-product/users-inverse.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/packages/icons/src/icon-product/users.svg b/packages/icons/src/icon-product/users.svg new file mode 100644 index 000000000..45dabb9d6 --- /dev/null +++ b/packages/icons/src/icon-product/users.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/packages/icons/src/icon-system/arrow-down.svg b/packages/icons/src/icon-system/arrow-down.svg new file mode 100644 index 000000000..fb5540a22 --- /dev/null +++ b/packages/icons/src/icon-system/arrow-down.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/arrow-left.svg b/packages/icons/src/icon-system/arrow-left.svg new file mode 100644 index 000000000..23e6a66e0 --- /dev/null +++ b/packages/icons/src/icon-system/arrow-left.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/arrow-right.svg b/packages/icons/src/icon-system/arrow-right.svg new file mode 100644 index 000000000..4f9a217ae --- /dev/null +++ b/packages/icons/src/icon-system/arrow-right.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/arrow-up.svg b/packages/icons/src/icon-system/arrow-up.svg new file mode 100644 index 000000000..1d68ec876 --- /dev/null +++ b/packages/icons/src/icon-system/arrow-up.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/caret-down.svg b/packages/icons/src/icon-system/caret-down.svg new file mode 100644 index 000000000..4fc34d9bc --- /dev/null +++ b/packages/icons/src/icon-system/caret-down.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/caret-left.svg b/packages/icons/src/icon-system/caret-left.svg new file mode 100644 index 000000000..426014e95 --- /dev/null +++ b/packages/icons/src/icon-system/caret-left.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/caret-right.svg b/packages/icons/src/icon-system/caret-right.svg new file mode 100644 index 000000000..5d57a3230 --- /dev/null +++ b/packages/icons/src/icon-system/caret-right.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/caret-up.svg b/packages/icons/src/icon-system/caret-up.svg new file mode 100644 index 000000000..d4349d0f4 --- /dev/null +++ b/packages/icons/src/icon-system/caret-up.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/check.svg b/packages/icons/src/icon-system/check.svg new file mode 100644 index 000000000..24216b4b4 --- /dev/null +++ b/packages/icons/src/icon-system/check.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/circle-check.svg b/packages/icons/src/icon-system/circle-check.svg new file mode 100644 index 000000000..0727f7d1c --- /dev/null +++ b/packages/icons/src/icon-system/circle-check.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/circle-close.svg b/packages/icons/src/icon-system/circle-close.svg new file mode 100644 index 000000000..00503ed06 --- /dev/null +++ b/packages/icons/src/icon-system/circle-close.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/circle-information.svg b/packages/icons/src/icon-system/circle-information.svg new file mode 100644 index 000000000..c7b36b26b --- /dev/null +++ b/packages/icons/src/icon-system/circle-information.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/circle-question.svg b/packages/icons/src/icon-system/circle-question.svg new file mode 100644 index 000000000..8ed13a01f --- /dev/null +++ b/packages/icons/src/icon-system/circle-question.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/clipboard.svg b/packages/icons/src/icon-system/clipboard.svg new file mode 100644 index 000000000..f25e92f35 --- /dev/null +++ b/packages/icons/src/icon-system/clipboard.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/packages/icons/src/icon-system/close.svg b/packages/icons/src/icon-system/close.svg new file mode 100644 index 000000000..0243d9d97 --- /dev/null +++ b/packages/icons/src/icon-system/close.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/commit.svg b/packages/icons/src/icon-system/commit.svg new file mode 100644 index 000000000..3a80ea835 --- /dev/null +++ b/packages/icons/src/icon-system/commit.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/container.svg b/packages/icons/src/icon-system/container.svg new file mode 100644 index 000000000..674085b8e --- /dev/null +++ b/packages/icons/src/icon-system/container.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/packages/icons/src/icon-system/containers.svg b/packages/icons/src/icon-system/containers.svg new file mode 100644 index 000000000..6a317b2f1 --- /dev/null +++ b/packages/icons/src/icon-system/containers.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/packages/icons/src/icon-system/database.svg b/packages/icons/src/icon-system/database.svg new file mode 100644 index 000000000..8cb75f6d7 --- /dev/null +++ b/packages/icons/src/icon-system/database.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/packages/icons/src/icon-system/door-key.svg b/packages/icons/src/icon-system/door-key.svg new file mode 100644 index 000000000..5edf8948b --- /dev/null +++ b/packages/icons/src/icon-system/door-key.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/packages/icons/src/icon-system/download.svg b/packages/icons/src/icon-system/download.svg new file mode 100644 index 000000000..b7dd29a91 --- /dev/null +++ b/packages/icons/src/icon-system/download.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/ellipsis-horizontal.svg b/packages/icons/src/icon-system/ellipsis-horizontal.svg new file mode 100644 index 000000000..c6ab4e801 --- /dev/null +++ b/packages/icons/src/icon-system/ellipsis-horizontal.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/ellipsis-vertical.svg b/packages/icons/src/icon-system/ellipsis-vertical.svg new file mode 100644 index 000000000..f445beba2 --- /dev/null +++ b/packages/icons/src/icon-system/ellipsis-vertical.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/export.svg b/packages/icons/src/icon-system/export.svg new file mode 100644 index 000000000..df7431c4e --- /dev/null +++ b/packages/icons/src/icon-system/export.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/eye-slash.svg b/packages/icons/src/icon-system/eye-slash.svg new file mode 100644 index 000000000..66b34f190 --- /dev/null +++ b/packages/icons/src/icon-system/eye-slash.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/eye.svg b/packages/icons/src/icon-system/eye.svg new file mode 100644 index 000000000..7e714de32 --- /dev/null +++ b/packages/icons/src/icon-system/eye.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/folder-minus.svg b/packages/icons/src/icon-system/folder-minus.svg new file mode 100644 index 000000000..fc5dff151 --- /dev/null +++ b/packages/icons/src/icon-system/folder-minus.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/packages/icons/src/icon-system/folder-open.svg b/packages/icons/src/icon-system/folder-open.svg new file mode 100644 index 000000000..952b62e8a --- /dev/null +++ b/packages/icons/src/icon-system/folder-open.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/packages/icons/src/icon-system/folder-plus.svg b/packages/icons/src/icon-system/folder-plus.svg new file mode 100644 index 000000000..3b29e0e8d --- /dev/null +++ b/packages/icons/src/icon-system/folder-plus.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/packages/icons/src/icon-system/folder.svg b/packages/icons/src/icon-system/folder.svg new file mode 100644 index 000000000..317f79a16 --- /dev/null +++ b/packages/icons/src/icon-system/folder.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/packages/icons/src/icon-system/funnel.svg b/packages/icons/src/icon-system/funnel.svg new file mode 100644 index 000000000..8ba293ec4 --- /dev/null +++ b/packages/icons/src/icon-system/funnel.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/gear.svg b/packages/icons/src/icon-system/gear.svg new file mode 100644 index 000000000..ae326ca10 --- /dev/null +++ b/packages/icons/src/icon-system/gear.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/import.svg b/packages/icons/src/icon-system/import.svg new file mode 100644 index 000000000..5b44f3584 --- /dev/null +++ b/packages/icons/src/icon-system/import.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/key.svg b/packages/icons/src/icon-system/key.svg new file mode 100644 index 000000000..2e44bb442 --- /dev/null +++ b/packages/icons/src/icon-system/key.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/lock-open.svg b/packages/icons/src/icon-system/lock-open.svg new file mode 100644 index 000000000..3f9f7deb4 --- /dev/null +++ b/packages/icons/src/icon-system/lock-open.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/packages/icons/src/icon-system/lock.svg b/packages/icons/src/icon-system/lock.svg new file mode 100644 index 000000000..997ecbed7 --- /dev/null +++ b/packages/icons/src/icon-system/lock.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/menu.svg b/packages/icons/src/icon-system/menu.svg new file mode 100644 index 000000000..a35360344 --- /dev/null +++ b/packages/icons/src/icon-system/menu.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/minus.svg b/packages/icons/src/icon-system/minus.svg new file mode 100644 index 000000000..d1b53d71d --- /dev/null +++ b/packages/icons/src/icon-system/minus.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/open-external.svg b/packages/icons/src/icon-system/open-external.svg new file mode 100644 index 000000000..5609af7b7 --- /dev/null +++ b/packages/icons/src/icon-system/open-external.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/page-document.svg b/packages/icons/src/icon-system/page-document.svg new file mode 100644 index 000000000..aca7d7c84 --- /dev/null +++ b/packages/icons/src/icon-system/page-document.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/packages/icons/src/icon-system/page.svg b/packages/icons/src/icon-system/page.svg new file mode 100644 index 000000000..f6c08d2d9 --- /dev/null +++ b/packages/icons/src/icon-system/page.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/packages/icons/src/icon-system/pages-document.svg b/packages/icons/src/icon-system/pages-document.svg new file mode 100644 index 000000000..651b497eb --- /dev/null +++ b/packages/icons/src/icon-system/pages-document.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/packages/icons/src/icon-system/pages.svg b/packages/icons/src/icon-system/pages.svg new file mode 100644 index 000000000..6d6652cf5 --- /dev/null +++ b/packages/icons/src/icon-system/pages.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/packages/icons/src/icon-system/paperclip.svg b/packages/icons/src/icon-system/paperclip.svg new file mode 100644 index 000000000..19faba0fb --- /dev/null +++ b/packages/icons/src/icon-system/paperclip.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/pencil.svg b/packages/icons/src/icon-system/pencil.svg new file mode 100644 index 000000000..d24fcc828 --- /dev/null +++ b/packages/icons/src/icon-system/pencil.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/plus.svg b/packages/icons/src/icon-system/plus.svg new file mode 100644 index 000000000..27116450e --- /dev/null +++ b/packages/icons/src/icon-system/plus.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/repeat.svg b/packages/icons/src/icon-system/repeat.svg new file mode 100644 index 000000000..4bfaa76ca --- /dev/null +++ b/packages/icons/src/icon-system/repeat.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/search.svg b/packages/icons/src/icon-system/search.svg new file mode 100644 index 000000000..331c3f3aa --- /dev/null +++ b/packages/icons/src/icon-system/search.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/services.svg b/packages/icons/src/icon-system/services.svg new file mode 100644 index 000000000..ba4860762 --- /dev/null +++ b/packages/icons/src/icon-system/services.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/packages/icons/src/icon-system/share.svg b/packages/icons/src/icon-system/share.svg new file mode 100644 index 000000000..bc6be1d57 --- /dev/null +++ b/packages/icons/src/icon-system/share.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/shield.svg b/packages/icons/src/icon-system/shield.svg new file mode 100644 index 000000000..f59f55b09 --- /dev/null +++ b/packages/icons/src/icon-system/shield.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/packages/icons/src/icon-system/shuffle.svg b/packages/icons/src/icon-system/shuffle.svg new file mode 100644 index 000000000..1d9965d16 --- /dev/null +++ b/packages/icons/src/icon-system/shuffle.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/sidebar-collapse.svg b/packages/icons/src/icon-system/sidebar-collapse.svg new file mode 100644 index 000000000..4753ddc2b --- /dev/null +++ b/packages/icons/src/icon-system/sidebar-collapse.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/sidebar-expand.svg b/packages/icons/src/icon-system/sidebar-expand.svg new file mode 100644 index 000000000..fcf81f392 --- /dev/null +++ b/packages/icons/src/icon-system/sidebar-expand.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/upload.svg b/packages/icons/src/icon-system/upload.svg new file mode 100644 index 000000000..71520c86b --- /dev/null +++ b/packages/icons/src/icon-system/upload.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/user-minus.svg b/packages/icons/src/icon-system/user-minus.svg new file mode 100644 index 000000000..7c5510731 --- /dev/null +++ b/packages/icons/src/icon-system/user-minus.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/packages/icons/src/icon-system/user-plus.svg b/packages/icons/src/icon-system/user-plus.svg new file mode 100644 index 000000000..6c54b6f47 --- /dev/null +++ b/packages/icons/src/icon-system/user-plus.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/packages/icons/src/icon-system/user.svg b/packages/icons/src/icon-system/user.svg new file mode 100644 index 000000000..3c77912f5 --- /dev/null +++ b/packages/icons/src/icon-system/user.svg @@ -0,0 +1,3 @@ + + + diff --git a/packages/icons/src/icon-system/users-minus.svg b/packages/icons/src/icon-system/users-minus.svg new file mode 100644 index 000000000..f081729f0 --- /dev/null +++ b/packages/icons/src/icon-system/users-minus.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/packages/icons/src/icon-system/users-plus.svg b/packages/icons/src/icon-system/users-plus.svg new file mode 100644 index 000000000..ef123f1fa --- /dev/null +++ b/packages/icons/src/icon-system/users-plus.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/packages/icons/src/icon-system/users.svg b/packages/icons/src/icon-system/users.svg new file mode 100644 index 000000000..edefdedb9 --- /dev/null +++ b/packages/icons/src/icon-system/users.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/packages/icons/src/icon-system/yield.svg b/packages/icons/src/icon-system/yield.svg new file mode 100644 index 000000000..54aa789b3 --- /dev/null +++ b/packages/icons/src/icon-system/yield.svg @@ -0,0 +1,3 @@ + + +