aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--package-lock.json60
-rw-r--r--packages/forms/package-lock.json2
-rw-r--r--packages/forms/package.json9
-rw-r--r--packages/forms/src/button/index.tsx14
-rw-r--r--packages/forms/src/error/index.tsx3
-rw-r--r--packages/forms/src/input/index.tsx3
-rw-r--r--packages/forms/src/label/index.tsx2
-rw-r--r--packages/forms/src/select/index.tsx99
-rw-r--r--packages/forms/src/toggle/index.tsx3
-rw-r--r--packages/forms/src/wrapper/index.tsx15
-rw-r--r--packages/forms/webpack.config.js19
-rw-r--r--packages/theme/package.json6
-rw-r--r--packages/theme/webpack.config.js10
-rw-r--r--packages/ui/package.json9
-rw-r--r--packages/ui/src/badge/index.tsx1
-rw-r--r--packages/ui/src/headline/index.tsx2
-rw-r--r--packages/ui/src/infobox/index.tsx4
-rw-r--r--packages/ui/src/loader/index.tsx11
-rw-r--r--packages/ui/webpack.config.js19
19 files changed, 129 insertions, 162 deletions
diff --git a/package-lock.json b/package-lock.json
index 435909e89..6dee2c9e2 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -3104,7 +3104,7 @@
3104 "JSONStream": { 3104 "JSONStream": {
3105 "version": "1.3.5", 3105 "version": "1.3.5",
3106 "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", 3106 "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz",
3107 "integrity": "sha1-MgjB8I06TZkmGrZPkjArwV4RHKA=", 3107 "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==",
3108 "dev": true, 3108 "dev": true,
3109 "requires": { 3109 "requires": {
3110 "jsonparse": "^1.2.0", 3110 "jsonparse": "^1.2.0",
@@ -5601,7 +5601,7 @@
5601 "conventional-changelog-angular": { 5601 "conventional-changelog-angular": {
5602 "version": "5.0.2", 5602 "version": "5.0.2",
5603 "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.2.tgz", 5603 "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.2.tgz",
5604 "integrity": "sha1-OdlFY14DttDJ1AeLHfdOBhY9xmo=", 5604 "integrity": "sha512-yx7m7lVrXmt4nKWQgWZqxSALEiAKZhOAcbxdUaU9575mB0CzXVbgrgpfSnSP7OqWDUTYGD0YVJ0MSRdyOPgAwA==",
5605 "dev": true, 5605 "dev": true,
5606 "requires": { 5606 "requires": {
5607 "compare-func": "^1.3.1", 5607 "compare-func": "^1.3.1",
@@ -5611,7 +5611,7 @@
5611 "conventional-changelog-core": { 5611 "conventional-changelog-core": {
5612 "version": "3.1.5", 5612 "version": "3.1.5",
5613 "resolved": "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-3.1.5.tgz", 5613 "resolved": "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-3.1.5.tgz",
5614 "integrity": "sha1-wu35KFOTCLVP4bkKL8cxq8AhhSw=", 5614 "integrity": "sha512-iwqAotS4zk0wA4S84YY1JCUG7X3LxaRjJxuUo6GI4dZuIy243j5nOg/Ora35ExT4DOiw5dQbMMQvw2SUjh6moQ==",
5615 "dev": true, 5615 "dev": true,
5616 "requires": { 5616 "requires": {
5617 "conventional-changelog-writer": "^4.0.2", 5617 "conventional-changelog-writer": "^4.0.2",
@@ -5632,7 +5632,7 @@
5632 "dateformat": { 5632 "dateformat": {
5633 "version": "3.0.3", 5633 "version": "3.0.3",
5634 "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", 5634 "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz",
5635 "integrity": "sha1-puN0maTZqc+F71hyBE1ikByYia4=", 5635 "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==",
5636 "dev": true 5636 "dev": true
5637 }, 5637 },
5638 "find-up": { 5638 "find-up": {
@@ -5669,7 +5669,7 @@
5669 "path-type": { 5669 "path-type": {
5670 "version": "3.0.0", 5670 "version": "3.0.0",
5671 "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", 5671 "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz",
5672 "integrity": "sha1-zvMdyOCho7sNEFwM2Xzzv0f0428=", 5672 "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==",
5673 "dev": true, 5673 "dev": true,
5674 "requires": { 5674 "requires": {
5675 "pify": "^3.0.0" 5675 "pify": "^3.0.0"
@@ -5713,13 +5713,13 @@
5713 "conventional-changelog-preset-loader": { 5713 "conventional-changelog-preset-loader": {
5714 "version": "2.0.2", 5714 "version": "2.0.2",
5715 "resolved": "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.0.2.tgz", 5715 "resolved": "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.0.2.tgz",
5716 "integrity": "sha1-gdGgdSORPz0X2jpJ8AkflnrTRbA=", 5716 "integrity": "sha512-pBY+qnUoJPXAXXqVGwQaVmcye05xi6z231QM98wHWamGAmu/ghkBprQAwmF5bdmyobdVxiLhPY3PrCfSeUNzRQ==",
5717 "dev": true 5717 "dev": true
5718 }, 5718 },
5719 "conventional-changelog-writer": { 5719 "conventional-changelog-writer": {
5720 "version": "4.0.2", 5720 "version": "4.0.2",
5721 "resolved": "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-4.0.2.tgz", 5721 "resolved": "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-4.0.2.tgz",
5722 "integrity": "sha1-60k+2EJp56Zj2jbkmvUcVGOcmmc=", 5722 "integrity": "sha512-d8/FQY/fix2xXEBUhOo8u3DCbyEw3UOQgYHxLsPDw+wHUDma/GQGAGsGtoH876WyNs32fViHmTOUrgRKVLvBug==",
5723 "dev": true, 5723 "dev": true,
5724 "requires": { 5724 "requires": {
5725 "compare-func": "^1.3.1", 5725 "compare-func": "^1.3.1",
@@ -5754,7 +5754,7 @@
5754 "dateformat": { 5754 "dateformat": {
5755 "version": "3.0.3", 5755 "version": "3.0.3",
5756 "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", 5756 "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz",
5757 "integrity": "sha1-puN0maTZqc+F71hyBE1ikByYia4=", 5757 "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==",
5758 "dev": true 5758 "dev": true
5759 }, 5759 },
5760 "find-up": { 5760 "find-up": {
@@ -5793,7 +5793,7 @@
5793 "meow": { 5793 "meow": {
5794 "version": "4.0.1", 5794 "version": "4.0.1",
5795 "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.1.tgz", 5795 "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.1.tgz",
5796 "integrity": "sha1-1IWY9vSxRy81v2MXqVlFrONH+XU=", 5796 "integrity": "sha512-xcSBHD5Z86zaOc+781KrupuHAzeGXSLtiAOmBsiLDiPSaYSB6hdew2ng9EBAnZ62jagG9MHAOdxpDi/lWBFJ/A==",
5797 "dev": true, 5797 "dev": true,
5798 "requires": { 5798 "requires": {
5799 "camelcase-keys": "^4.0.0", 5799 "camelcase-keys": "^4.0.0",
@@ -5820,7 +5820,7 @@
5820 "path-type": { 5820 "path-type": {
5821 "version": "3.0.0", 5821 "version": "3.0.0",
5822 "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", 5822 "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz",
5823 "integrity": "sha1-zvMdyOCho7sNEFwM2Xzzv0f0428=", 5823 "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==",
5824 "dev": true, 5824 "dev": true,
5825 "requires": { 5825 "requires": {
5826 "pify": "^3.0.0" 5826 "pify": "^3.0.0"
@@ -5892,7 +5892,7 @@
5892 "conventional-commits-filter": { 5892 "conventional-commits-filter": {
5893 "version": "2.0.1", 5893 "version": "2.0.1",
5894 "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-2.0.1.tgz", 5894 "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-2.0.1.tgz",
5895 "integrity": "sha1-VaE13hgC9lELZ1jgpqqeCyhhjbM=", 5895 "integrity": "sha512-92OU8pz/977udhBjgPEbg3sbYzIxMDFTlQT97w7KdhR9igNqdJvy8smmedAAgn4tPiqseFloKkrVfbXCVd+E7A==",
5896 "dev": true, 5896 "dev": true,
5897 "requires": { 5897 "requires": {
5898 "is-subset": "^0.1.1", 5898 "is-subset": "^0.1.1",
@@ -5902,7 +5902,7 @@
5902 "conventional-commits-parser": { 5902 "conventional-commits-parser": {
5903 "version": "3.0.1", 5903 "version": "3.0.1",
5904 "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.0.1.tgz", 5904 "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.0.1.tgz",
5905 "integrity": "sha1-/hxJdT3z+Y7bIoWl5IXhH/p/Lkw=", 5905 "integrity": "sha512-P6U5UOvDeidUJ8ebHVDIoXzI7gMlQ1OF/id6oUvp8cnZvOXMt1n8nYl74Ey9YMn0uVQtxmCtjPQawpsssBWtGg==",
5906 "dev": true, 5906 "dev": true,
5907 "requires": { 5907 "requires": {
5908 "JSONStream": "^1.0.4", 5908 "JSONStream": "^1.0.4",
@@ -5967,7 +5967,7 @@
5967 "meow": { 5967 "meow": {
5968 "version": "4.0.1", 5968 "version": "4.0.1",
5969 "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.1.tgz", 5969 "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.1.tgz",
5970 "integrity": "sha1-1IWY9vSxRy81v2MXqVlFrONH+XU=", 5970 "integrity": "sha512-xcSBHD5Z86zaOc+781KrupuHAzeGXSLtiAOmBsiLDiPSaYSB6hdew2ng9EBAnZ62jagG9MHAOdxpDi/lWBFJ/A==",
5971 "dev": true, 5971 "dev": true,
5972 "requires": { 5972 "requires": {
5973 "camelcase-keys": "^4.0.0", 5973 "camelcase-keys": "^4.0.0",
@@ -5994,7 +5994,7 @@
5994 "path-type": { 5994 "path-type": {
5995 "version": "3.0.0", 5995 "version": "3.0.0",
5996 "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", 5996 "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz",
5997 "integrity": "sha1-zvMdyOCho7sNEFwM2Xzzv0f0428=", 5997 "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==",
5998 "dev": true, 5998 "dev": true,
5999 "requires": { 5999 "requires": {
6000 "pify": "^3.0.0" 6000 "pify": "^3.0.0"
@@ -9924,7 +9924,7 @@
9924 "git-raw-commits": { 9924 "git-raw-commits": {
9925 "version": "2.0.0", 9925 "version": "2.0.0",
9926 "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.0.tgz", 9926 "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.0.tgz",
9927 "integrity": "sha1-2Srd90RAwUvMXIPszj+3+KeRGLU=", 9927 "integrity": "sha512-w4jFEJFgKXMQJ0H0ikBk2S+4KP2VEjhCvLCNqbNRQC8BgGWgLKNCO7a9K9LI+TVT7Gfoloje502sEnctibffgg==",
9928 "dev": true, 9928 "dev": true,
9929 "requires": { 9929 "requires": {
9930 "dargs": "^4.0.1", 9930 "dargs": "^4.0.1",
@@ -10006,7 +10006,7 @@
10006 "meow": { 10006 "meow": {
10007 "version": "4.0.1", 10007 "version": "4.0.1",
10008 "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.1.tgz", 10008 "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.1.tgz",
10009 "integrity": "sha1-1IWY9vSxRy81v2MXqVlFrONH+XU=", 10009 "integrity": "sha512-xcSBHD5Z86zaOc+781KrupuHAzeGXSLtiAOmBsiLDiPSaYSB6hdew2ng9EBAnZ62jagG9MHAOdxpDi/lWBFJ/A==",
10010 "dev": true, 10010 "dev": true,
10011 "requires": { 10011 "requires": {
10012 "camelcase-keys": "^4.0.0", 10012 "camelcase-keys": "^4.0.0",
@@ -10033,7 +10033,7 @@
10033 "path-type": { 10033 "path-type": {
10034 "version": "3.0.0", 10034 "version": "3.0.0",
10035 "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", 10035 "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz",
10036 "integrity": "sha1-zvMdyOCho7sNEFwM2Xzzv0f0428=", 10036 "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==",
10037 "dev": true, 10037 "dev": true,
10038 "requires": { 10038 "requires": {
10039 "pify": "^3.0.0" 10039 "pify": "^3.0.0"
@@ -10109,7 +10109,7 @@
10109 "git-semver-tags": { 10109 "git-semver-tags": {
10110 "version": "2.0.2", 10110 "version": "2.0.2",
10111 "resolved": "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-2.0.2.tgz", 10111 "resolved": "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-2.0.2.tgz",
10112 "integrity": "sha1-9QbsB8qt4ZGsDI1aIb24ExtJNOM=", 10112 "integrity": "sha512-34lMF7Yo1xEmsK2EkbArdoU79umpvm0MfzaDkSNYSJqtM5QLAVTPWgpiXSVI5o/O9EvZPSrP4Zvnec/CqhSd5w==",
10113 "dev": true, 10113 "dev": true,
10114 "requires": { 10114 "requires": {
10115 "meow": "^4.0.0", 10115 "meow": "^4.0.0",
@@ -10169,7 +10169,7 @@
10169 "meow": { 10169 "meow": {
10170 "version": "4.0.1", 10170 "version": "4.0.1",
10171 "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.1.tgz", 10171 "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.1.tgz",
10172 "integrity": "sha1-1IWY9vSxRy81v2MXqVlFrONH+XU=", 10172 "integrity": "sha512-xcSBHD5Z86zaOc+781KrupuHAzeGXSLtiAOmBsiLDiPSaYSB6hdew2ng9EBAnZ62jagG9MHAOdxpDi/lWBFJ/A==",
10173 "dev": true, 10173 "dev": true,
10174 "requires": { 10174 "requires": {
10175 "camelcase-keys": "^4.0.0", 10175 "camelcase-keys": "^4.0.0",
@@ -10196,7 +10196,7 @@
10196 "path-type": { 10196 "path-type": {
10197 "version": "3.0.0", 10197 "version": "3.0.0",
10198 "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", 10198 "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz",
10199 "integrity": "sha1-zvMdyOCho7sNEFwM2Xzzv0f0428=", 10199 "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==",
10200 "dev": true, 10200 "dev": true,
10201 "requires": { 10201 "requires": {
10202 "pify": "^3.0.0" 10202 "pify": "^3.0.0"
@@ -11206,7 +11206,7 @@
11206 "handlebars": { 11206 "handlebars": {
11207 "version": "4.0.12", 11207 "version": "4.0.12",
11208 "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.0.12.tgz", 11208 "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.0.12.tgz",
11209 "integrity": "sha1-LBXIqW1G2l4mZwBRi6jLjZGdW8U=", 11209 "integrity": "sha512-RhmTekP+FZL+XNhwS1Wf+bTTZpdLougwt5pcgA1tuz6Jcx0fpH/7z0qd71RKnZHBCxIRBHfBOnio4gViPemNzA==",
11210 "dev": true, 11210 "dev": true,
11211 "requires": { 11211 "requires": {
11212 "async": "^2.5.0", 11212 "async": "^2.5.0",
@@ -11218,7 +11218,7 @@
11218 "async": { 11218 "async": {
11219 "version": "2.6.1", 11219 "version": "2.6.1",
11220 "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", 11220 "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz",
11221 "integrity": "sha1-skWiPKcZMAROxT+kaqAKPofGphA=", 11221 "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==",
11222 "dev": true, 11222 "dev": true,
11223 "requires": { 11223 "requires": {
11224 "lodash": "^4.17.10" 11224 "lodash": "^4.17.10"
@@ -14046,7 +14046,7 @@
14046 "minimist-options": { 14046 "minimist-options": {
14047 "version": "3.0.2", 14047 "version": "3.0.2",
14048 "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-3.0.2.tgz", 14048 "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-3.0.2.tgz",
14049 "integrity": "sha1-+6TIGRM54T7PTWG+sD8HAQPz2VQ=", 14049 "integrity": "sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==",
14050 "dev": true, 14050 "dev": true,
14051 "requires": { 14051 "requires": {
14052 "arrify": "^1.0.1", 14052 "arrify": "^1.0.1",
@@ -14261,7 +14261,7 @@
14261 "modify-values": { 14261 "modify-values": {
14262 "version": "1.0.1", 14262 "version": "1.0.1",
14263 "resolved": "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz", 14263 "resolved": "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz",
14264 "integrity": "sha1-s5OfpgVUZHTj4+PGPWS9Q7TuYCI=", 14264 "integrity": "sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==",
14265 "dev": true 14265 "dev": true
14266 }, 14266 },
14267 "moment": { 14267 "moment": {
@@ -18138,7 +18138,7 @@
18138 "dependencies": { 18138 "dependencies": {
18139 "minimist": { 18139 "minimist": {
18140 "version": "0.0.10", 18140 "version": "0.0.10",
18141 "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", 18141 "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz",
18142 "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=", 18142 "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=",
18143 "dev": true 18143 "dev": true
18144 }, 18144 },
@@ -20904,7 +20904,7 @@
20904 "split": { 20904 "split": {
20905 "version": "1.0.1", 20905 "version": "1.0.1",
20906 "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", 20906 "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz",
20907 "integrity": "sha1-YFvZvjA6pZ+zX5Ip++oN3snqB9k=", 20907 "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==",
20908 "dev": true, 20908 "dev": true,
20909 "requires": { 20909 "requires": {
20910 "through": "2" 20910 "through": "2"
@@ -20922,7 +20922,7 @@
20922 "split2": { 20922 "split2": {
20923 "version": "2.2.0", 20923 "version": "2.2.0",
20924 "resolved": "https://registry.npmjs.org/split2/-/split2-2.2.0.tgz", 20924 "resolved": "https://registry.npmjs.org/split2/-/split2-2.2.0.tgz",
20925 "integrity": "sha1-GGsldbz4PoW30YRldWI47k7kJJM=", 20925 "integrity": "sha512-RAb22TG39LhI31MbreBgIuKiIKhVsawfTgEGqKHTK87aG+ul/PB8Sqoi3I7kVdRWiCfrKxK3uo4/YUkpNvhPbw==",
20926 "dev": true, 20926 "dev": true,
20927 "requires": { 20927 "requires": {
20928 "through2": "^2.0.2" 20928 "through2": "^2.0.2"
@@ -21428,7 +21428,7 @@
21428 "text-extensions": { 21428 "text-extensions": {
21429 "version": "1.9.0", 21429 "version": "1.9.0",
21430 "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-1.9.0.tgz", 21430 "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-1.9.0.tgz",
21431 "integrity": "sha1-GFPkX+45yUXOb2w2stZZtaq8KiY=", 21431 "integrity": "sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ==",
21432 "dev": true 21432 "dev": true
21433 }, 21433 },
21434 "text-table": { 21434 "text-table": {
@@ -21942,7 +21942,7 @@
21942 "uglify-js": { 21942 "uglify-js": {
21943 "version": "3.4.9", 21943 "version": "3.4.9",
21944 "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.9.tgz", 21944 "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.9.tgz",
21945 "integrity": "sha1-rwLxgMEgfXZDLkc+0koo9KeCuuM=", 21945 "integrity": "sha512-8CJsbKOtEbnJsTyv6LE6m6ZKniqMiFWmm9sRbopbkGs3gMPPfd3Fh8iIA4Ykv5MgaTbqHr4BaoGLJLZNhsrW1Q==",
21946 "dev": true, 21946 "dev": true,
21947 "requires": { 21947 "requires": {
21948 "commander": "~2.17.1", 21948 "commander": "~2.17.1",
@@ -21952,7 +21952,7 @@
21952 "commander": { 21952 "commander": {
21953 "version": "2.17.1", 21953 "version": "2.17.1",
21954 "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz", 21954 "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz",
21955 "integrity": "sha1-vXerfebelCBc6sxy8XFtKfIKd78=", 21955 "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==",
21956 "dev": true 21956 "dev": true
21957 }, 21957 },
21958 "source-map": { 21958 "source-map": {
diff --git a/packages/forms/package-lock.json b/packages/forms/package-lock.json
index 834db8d33..b5b24c239 100644
--- a/packages/forms/package-lock.json
+++ b/packages/forms/package-lock.json
@@ -1,6 +1,6 @@
1{ 1{
2 "name": "@meetfranz/forms", 2 "name": "@meetfranz/forms",
3 "version": "1.0.4", 3 "version": "1.0.6",
4 "lockfileVersion": 1, 4 "lockfileVersion": 1,
5 "requires": true, 5 "requires": true,
6 "dependencies": { 6 "dependencies": {
diff --git a/packages/forms/package.json b/packages/forms/package.json
index af5c46a54..a9151e245 100644
--- a/packages/forms/package.json
+++ b/packages/forms/package.json
@@ -1,11 +1,11 @@
1{ 1{
2 "name": "@meetfranz/forms", 2 "name": "@meetfranz/forms",
3 "version": "1.0.5", 3 "version": "1.0.6",
4 "description": "React form components for Franz", 4 "description": "React form components for Franz",
5 "main": "lib/index.js", 5 "main": "lib/index.js",
6 "scripts": { 6 "scripts": {
7 "dev": "NODE_ENV=development ../../node_modules/.bin/webpack -w", 7 "dev": "tsc -w",
8 "prepare": "../../node_modules/.bin/webpack" 8 "prepare": "tsc"
9 }, 9 },
10 "publishConfig": { 10 "publishConfig": {
11 "access": "public" 11 "access": "public"
@@ -31,9 +31,6 @@
31 }, 31 },
32 "peerDependencies": { 32 "peerDependencies": {
33 "classnames": "^2.2.6", 33 "classnames": "^2.2.6",
34 "lodash": "^4.17.11",
35 "mobx": "^5.8.0",
36 "mobx-react": "^5.4.3",
37 "react": "^16.7.0", 34 "react": "^16.7.0",
38 "react-dom": "16.7.0", 35 "react-dom": "16.7.0",
39 "react-jss": "^8.6.1" 36 "react-jss": "^8.6.1"
diff --git a/packages/forms/src/button/index.tsx b/packages/forms/src/button/index.tsx
index b7cca7fa4..90eda21e7 100644
--- a/packages/forms/src/button/index.tsx
+++ b/packages/forms/src/button/index.tsx
@@ -3,7 +3,6 @@ import Icon from '@mdi/react';
3import { Theme } from '@meetfranz/theme'; 3import { Theme } from '@meetfranz/theme';
4import classnames from 'classnames'; 4import classnames from 'classnames';
5import CSS from 'csstype'; 5import CSS from 'csstype';
6import { observer } from 'mobx-react';
7import React, { Component } from 'react'; 6import React, { Component } from 'react';
8import injectStyle from 'react-jss'; 7import injectStyle from 'react-jss';
9import Loader from 'react-loader'; 8import Loader from 'react-loader';
@@ -37,7 +36,7 @@ const styles = (theme: Theme) => ({
37 border: 'none', 36 border: 'none',
38 display: 'inline-flex', 37 display: 'inline-flex',
39 position: 'relative' as CSS.PositionProperty, 38 position: 'relative' as CSS.PositionProperty,
40 transition: 'background .5s', 39 transition: 'background .5s, opacity 0.3s',
41 textAlign: 'center' as CSS.TextAlignProperty, 40 textAlign: 'center' as CSS.TextAlignProperty,
42 outline: 'none', 41 outline: 'none',
43 alignItems: 'center', 42 alignItems: 'center',
@@ -45,6 +44,14 @@ const styles = (theme: Theme) => ({
45 width: (props: IProps) => (props.stretch ? '100%' : 'auto') as CSS.WidthProperty<string>, 44 width: (props: IProps) => (props.stretch ? '100%' : 'auto') as CSS.WidthProperty<string>,
46 fontSize: theme.uiFontSize, 45 fontSize: theme.uiFontSize,
47 textDecoration: 'none', 46 textDecoration: 'none',
47
48 '&:hover': {
49 opacity: 0.8,
50 },
51 '&:active': {
52 opacity: 0.5,
53 transition: 'none',
54 },
48 }, 55 },
49 label: { 56 label: {
50 margin: '10px 20px', 57 margin: '10px 20px',
@@ -126,7 +133,6 @@ const styles = (theme: Theme) => ({
126 }, 133 },
127}); 134});
128 135
129@observer
130class ButtonComponent extends Component<IProps> { 136class ButtonComponent extends Component<IProps> {
131 public static defaultProps = { 137 public static defaultProps = {
132 type: 'button', 138 type: 'button',
@@ -237,6 +243,7 @@ class ButtonComponent extends Component<IProps> {
237 [`${className}`]: className, 243 [`${className}`]: className,
238 })} 244 })}
239 disabled={disabled} 245 disabled={disabled}
246 data-type="franz-button"
240 > 247 >
241 {content} 248 {content}
242 </button> 249 </button>
@@ -253,6 +260,7 @@ class ButtonComponent extends Component<IProps> {
253 [`${className}`]: className, 260 [`${className}`]: className,
254 })} 261 })}
255 rel={target === '_blank' ? 'noopener' : ''} 262 rel={target === '_blank' ? 'noopener' : ''}
263 data-type="franz-button"
256 > 264 >
257 {content} 265 {content}
258 </a> 266 </a>
diff --git a/packages/forms/src/error/index.tsx b/packages/forms/src/error/index.tsx
index 9d26e086d..a487bb281 100644
--- a/packages/forms/src/error/index.tsx
+++ b/packages/forms/src/error/index.tsx
@@ -1,6 +1,4 @@
1import classnames from 'classnames';
2import { Classes } from 'jss'; 1import { Classes } from 'jss';
3import { observer } from 'mobx-react';
4import React, { Component } from 'react'; 2import React, { Component } from 'react';
5import injectSheet from 'react-jss'; 3import injectSheet from 'react-jss';
6 4
@@ -11,7 +9,6 @@ interface IProps {
11 message: string; 9 message: string;
12} 10}
13 11
14@observer
15class ErrorComponent extends Component<IProps> { 12class ErrorComponent extends Component<IProps> {
16 render() { 13 render() {
17 const { 14 const {
diff --git a/packages/forms/src/input/index.tsx b/packages/forms/src/input/index.tsx
index cd6da3778..de7e7848e 100644
--- a/packages/forms/src/input/index.tsx
+++ b/packages/forms/src/input/index.tsx
@@ -1,7 +1,6 @@
1import { mdiEye, mdiEyeOff } from '@mdi/js'; 1import { mdiEye, mdiEyeOff } from '@mdi/js';
2import Icon from '@mdi/react'; 2import Icon from '@mdi/react';
3import classnames from 'classnames'; 3import classnames from 'classnames';
4import { observer } from 'mobx-react';
5import React, { Component, createRef } from 'react'; 4import React, { Component, createRef } from 'react';
6import injectSheet from 'react-jss'; 5import injectSheet from 'react-jss';
7 6
@@ -33,7 +32,6 @@ interface IState {
33 passwordScore: number; 32 passwordScore: number;
34} 33}
35 34
36@observer
37class InputComponent extends Component<IProps, IState> { 35class InputComponent extends Component<IProps, IState> {
38 public static defaultProps = { 36 public static defaultProps = {
39 focus: false, 37 focus: false,
@@ -114,6 +112,7 @@ class InputComponent extends Component<IProps, IState> {
114 return ( 112 return (
115 <Wrapper 113 <Wrapper
116 className={className} 114 className={className}
115 identifier="franz-input"
117 > 116 >
118 <Label 117 <Label
119 title={label} 118 title={label}
diff --git a/packages/forms/src/label/index.tsx b/packages/forms/src/label/index.tsx
index ee3268b16..36fcfbedf 100644
--- a/packages/forms/src/label/index.tsx
+++ b/packages/forms/src/label/index.tsx
@@ -1,6 +1,5 @@
1import classnames from 'classnames'; 1import classnames from 'classnames';
2import { Classes } from 'jss'; 2import { Classes } from 'jss';
3import { observer } from 'mobx-react';
4import React, { Component } from 'react'; 3import React, { Component } from 'react';
5import injectSheet from 'react-jss'; 4import injectSheet from 'react-jss';
6 5
@@ -12,7 +11,6 @@ interface ILabel extends IFormField, React.LabelHTMLAttributes<HTMLLabelElement>
12 classes: Classes; 11 classes: Classes;
13} 12}
14 13
15@observer
16class LabelComponent extends Component<ILabel> { 14class LabelComponent extends Component<ILabel> {
17 static defaultProps = { 15 static defaultProps = {
18 showLabel: true, 16 showLabel: true,
diff --git a/packages/forms/src/select/index.tsx b/packages/forms/src/select/index.tsx
index 58bb7317a..4a9e3c56e 100644
--- a/packages/forms/src/select/index.tsx
+++ b/packages/forms/src/select/index.tsx
@@ -2,8 +2,6 @@ import { mdiArrowRightDropCircleOutline, mdiCloseCircle, mdiMagnify } from '@mdi
2import Icon from '@mdi/react'; 2import Icon from '@mdi/react';
3import { Theme } from '@meetfranz/theme'; 3import { Theme } from '@meetfranz/theme';
4import classnames from 'classnames'; 4import classnames from 'classnames';
5import debounce from 'lodash/debounce';
6import { observer } from 'mobx-react';
7import React, { Component, createRef } from 'react'; 5import React, { Component, createRef } from 'react';
8import injectStyle from 'react-jss'; 6import injectStyle from 'react-jss';
9 7
@@ -86,7 +84,8 @@ const styles = (theme: Theme) => ({
86 }, 84 },
87 }, 85 },
88 selected: { 86 selected: {
89 fontWeight: 'bold', 87 background: theme.selectOptionItemActive,
88 color: theme.selectOptionItemActiveColor,
90 }, 89 },
91 toggle: { 90 toggle: {
92 marginLeft: 'auto', 91 marginLeft: 'auto',
@@ -133,7 +132,6 @@ const styles = (theme: Theme) => ({
133 }, 132 },
134}); 133});
135 134
136@observer
137class SelectComponent extends Component<IProps> { 135class SelectComponent extends Component<IProps> {
138 public static defaultProps = { 136 public static defaultProps = {
139 onChange: () => {}, 137 onChange: () => {},
@@ -166,7 +164,7 @@ class SelectComponent extends Component<IProps> {
166 } 164 }
167 } 165 }
168 166
169 componentDidUpdate() { 167 componentDidUpdate(prevProps: IProps, prevState: IState) {
170 const { 168 const {
171 open, 169 open,
172 } = this.state; 170 } = this.state;
@@ -179,41 +177,6 @@ class SelectComponent extends Component<IProps> {
179 } 177 }
180 178
181 componentDidMount() { 179 componentDidMount() {
182 if (this.componentRef && this.componentRef.current) {
183 this.keyListener = this.componentRef.current.addEventListener('keydown', debounce((e) => {
184 const {
185 selected,
186 open,
187 options,
188 } = this.state;
189
190 if (!open) return;
191
192 if (e.keyCode === 38 && selected > 0) {
193 this.setState((state: IState) => ({
194 selected: state.selected - 1,
195 }));
196 } else if (e.keyCode === 40 && selected < Object.keys(options!).length - 1) {
197 this.setState((state: IState) => ({
198 selected: state.selected + 1,
199 }));
200 } else if (e.keyCode === 13) {
201 this.select(Object.keys(options!)[selected]);
202 }
203
204 if (this.activeOptionRef && this.activeOptionRef.current && this.scrollContainerRef && this.scrollContainerRef.current) {
205 const containerTopOffset = this.scrollContainerRef.current.offsetTop;
206 const optionTopOffset = this.activeOptionRef.current.offsetTop;
207
208 const topOffset = optionTopOffset - containerTopOffset;
209
210 this.scrollContainerRef.current.scrollTop = topOffset - 35;
211 }
212 }, 10, {
213 leading: true,
214 }));
215 }
216
217 if (this.inputRef && this.inputRef.current) { 180 if (this.inputRef && this.inputRef.current) {
218 const { 181 const {
219 data, 182 data,
@@ -223,10 +186,14 @@ class SelectComponent extends Component<IProps> {
223 Object.keys(data).map(key => this.inputRef.current!.dataset[key] = data[key]); 186 Object.keys(data).map(key => this.inputRef.current!.dataset[key] = data[key]);
224 } 187 }
225 } 188 }
189
190 window.addEventListener('keydown', this.arrowKeysHandler.bind(this), false);
226 } 191 }
227 192
228 componentWillMount() { 193 componentWillMount() {
229 const { value } = this.props; 194 const {
195 value,
196 } = this.props;
230 197
231 if (this.componentRef && this.componentRef.current) { 198 if (this.componentRef && this.componentRef.current) {
232 this.componentRef.current.removeEventListener('keydown', this.keyListener); 199 this.componentRef.current.removeEventListener('keydown', this.keyListener);
@@ -241,6 +208,10 @@ class SelectComponent extends Component<IProps> {
241 this.setFilter(); 208 this.setFilter();
242 } 209 }
243 210
211 componentWillUnmount() {
212 window.removeEventListener('keydown', this.arrowKeysHandler.bind(this));
213 }
214
244 setFilter(needle: string = '') { 215 setFilter(needle: string = '') {
245 const { options } = this.props; 216 const { options } = this.props;
246 217
@@ -277,6 +248,49 @@ class SelectComponent extends Component<IProps> {
277 } 248 }
278 } 249 }
279 250
251 arrowKeysHandler(e: KeyboardEvent) {
252 const {
253 selected,
254 open,
255 options,
256 } = this.state;
257
258 if (!open) return;
259
260 if (e.keyCode === 38 || e.keyCode === 40) {
261 e.preventDefault();
262 }
263
264 if (this.componentRef && this.componentRef.current) {
265 if (e.keyCode === 38 && selected > 0) {
266 this.setState((state: IState) => ({
267 selected: state.selected - 1,
268 }));
269 } else if (e.keyCode === 40 && selected < Object.keys(options!).length - 1) {
270 this.setState((state: IState) => ({
271 selected: state.selected + 1,
272 }));
273 } else if (e.keyCode === 13) {
274 this.select(Object.keys(options!)[selected]);
275 }
276
277 if (this.activeOptionRef && this.activeOptionRef.current && this.scrollContainerRef && this.scrollContainerRef.current) {
278 const containerTopOffset = this.scrollContainerRef.current.offsetTop;
279 const optionTopOffset = this.activeOptionRef.current.offsetTop;
280
281 const topOffset = optionTopOffset - containerTopOffset;
282
283 this.scrollContainerRef.current.scrollTop = topOffset - 35;
284 }
285 }
286
287 switch (e.keyCode){
288 case 37: case 39: case 38: case 40: // Arrow keys
289 case 32: break; // Space
290 default: break; // do not block other keys
291 }
292 }
293
280 render() { 294 render() {
281 const { 295 const {
282 actionText, 296 actionText,
@@ -314,6 +328,7 @@ class SelectComponent extends Component<IProps> {
314 return ( 328 return (
315 <Wrapper 329 <Wrapper
316 className={className} 330 className={className}
331 identifier="franz-select"
317 > 332 >
318 <Label 333 <Label
319 title={label} 334 title={label}
@@ -366,7 +381,7 @@ class SelectComponent extends Component<IProps> {
366 <button 381 <button
367 type="button" 382 type="button"
368 className={classes.clearNeedle} 383 className={classes.clearNeedle}
369 onClick={() => this.setState({ needle: '', selected: -1 })} 384 onClick={() => this.setFilter()}
370 > 385 >
371 <Icon 386 <Icon
372 path={mdiCloseCircle} 387 path={mdiCloseCircle}
diff --git a/packages/forms/src/toggle/index.tsx b/packages/forms/src/toggle/index.tsx
index 4f446ab1a..6487f1d07 100644
--- a/packages/forms/src/toggle/index.tsx
+++ b/packages/forms/src/toggle/index.tsx
@@ -1,7 +1,6 @@
1import { Theme } from '@meetfranz/theme'; 1import { Theme } from '@meetfranz/theme';
2import classnames from 'classnames'; 2import classnames from 'classnames';
3import CSS from 'csstype'; 3import CSS from 'csstype';
4import { observer } from 'mobx-react';
5import React, { Component, createRef } from 'react'; 4import React, { Component, createRef } from 'react';
6import injectStyle from 'react-jss'; 5import injectStyle from 'react-jss';
7 6
@@ -55,7 +54,6 @@ const styles = (theme: Theme) => ({
55 }, 54 },
56}); 55});
57 56
58@observer
59class ToggleComponent extends Component<IProps> { 57class ToggleComponent extends Component<IProps> {
60 public static defaultProps = { 58 public static defaultProps = {
61 onChange: () => {}, 59 onChange: () => {},
@@ -81,6 +79,7 @@ class ToggleComponent extends Component<IProps> {
81 return ( 79 return (
82 <Wrapper 80 <Wrapper
83 className={className} 81 className={className}
82 identifier="franz-toggle"
84 > 83 >
85 <Label 84 <Label
86 title={label} 85 title={label}
diff --git a/packages/forms/src/wrapper/index.tsx b/packages/forms/src/wrapper/index.tsx
index 87e2c6513..d9c61381d 100644
--- a/packages/forms/src/wrapper/index.tsx
+++ b/packages/forms/src/wrapper/index.tsx
@@ -1,5 +1,4 @@
1import classnames from 'classnames'; 1import classnames from 'classnames';
2import { observer } from 'mobx-react';
3import React, { Component } from 'react'; 2import React, { Component } from 'react';
4import injectStyle from 'react-jss'; 3import injectStyle from 'react-jss';
5import { IWithStyle } from '../typings/generic'; 4import { IWithStyle } from '../typings/generic';
@@ -9,22 +8,26 @@ import styles from './styles';
9interface IProps extends IWithStyle { 8interface IProps extends IWithStyle {
10 children: React.ReactNode; 9 children: React.ReactNode;
11 className?: string; 10 className?: string;
11 identifier: string;
12} 12}
13 13
14@observer
15class WrapperComponent extends Component<IProps> { 14class WrapperComponent extends Component<IProps> {
16 render() { 15 render() {
17 const { 16 const {
18 children, 17 children,
19 classes, 18 classes,
20 className, 19 className,
20 identifier,
21 } = this.props; 21 } = this.props;
22 22
23 return ( 23 return (
24 <div className={classnames({ 24 <div
25 [`${classes.container}`]: true, 25 className={classnames({
26 [`${className}`]: className, 26 [`${classes.container}`]: true,
27 })}> 27 [`${className}`]: className,
28 })}
29 data-type={identifier}
30 >
28 {children} 31 {children}
29 </div> 32 </div>
30 ); 33 );
diff --git a/packages/forms/webpack.config.js b/packages/forms/webpack.config.js
deleted file mode 100644
index cc3370359..000000000
--- a/packages/forms/webpack.config.js
+++ /dev/null
@@ -1,19 +0,0 @@
1const path = require('path');
2const baseConfig = require('../../webpack.config.base')(__dirname);
3
4module.exports = Object.assign({}, baseConfig, {
5 output: {
6 filename: 'index.js',
7 path: path.join(__dirname, 'lib'),
8 libraryTarget: 'commonjs2',
9 },
10 externals: {
11 react: 'react',
12 reactDom: 'react-dom',
13 classnames: 'classnames',
14 lodash: 'lodash',
15 mobx: 'mobx',
16 mobxReact: 'mobx-react',
17 reactJss: 'react-jss',
18 },
19});
diff --git a/packages/theme/package.json b/packages/theme/package.json
index c31271aab..83d58b56d 100644
--- a/packages/theme/package.json
+++ b/packages/theme/package.json
@@ -1,6 +1,6 @@
1{ 1{
2 "name": "@meetfranz/theme", 2 "name": "@meetfranz/theme",
3 "version": "1.0.5", 3 "version": "1.0.6",
4 "description": "Theme configuration for Franz", 4 "description": "Theme configuration for Franz",
5 "author": "Stefan Malzner <stefan@adlk.io>", 5 "author": "Stefan Malzner <stefan@adlk.io>",
6 "homepage": "https://github.com/meetfranz/franz", 6 "homepage": "https://github.com/meetfranz/franz",
@@ -14,8 +14,8 @@
14 "url": "git+https://github.com/meetfranz/franz.git" 14 "url": "git+https://github.com/meetfranz/franz.git"
15 }, 15 },
16 "scripts": { 16 "scripts": {
17 "dev": "NODE_ENV=development ../../node_modules/.bin/webpack -w", 17 "dev": "tsc -w",
18 "prepare": "../../node_modules/.bin/webpack", 18 "prepare": "tsc",
19 "preprepare": "npm run test", 19 "preprepare": "npm run test",
20 "test": "npx mocha" 20 "test": "npx mocha"
21 }, 21 },
diff --git a/packages/theme/webpack.config.js b/packages/theme/webpack.config.js
deleted file mode 100644
index 8ad7ee3b6..000000000
--- a/packages/theme/webpack.config.js
+++ /dev/null
@@ -1,10 +0,0 @@
1const path = require('path');
2const baseConfig = require('../../webpack.config.base')(__dirname);
3
4module.exports = Object.assign({}, baseConfig, {
5 output: {
6 filename: 'index.js',
7 path: path.join(__dirname, 'lib'),
8 libraryTarget: 'commonjs2',
9 },
10});
diff --git a/packages/ui/package.json b/packages/ui/package.json
index cd7252850..387f8de50 100644
--- a/packages/ui/package.json
+++ b/packages/ui/package.json
@@ -1,11 +1,11 @@
1{ 1{
2 "name": "@meetfranz/ui", 2 "name": "@meetfranz/ui",
3 "version": "0.0.0", 3 "version": "0.0.1",
4 "description": "React UI components for Franz", 4 "description": "React UI components for Franz",
5 "main": "lib/index.js", 5 "main": "lib/index.js",
6 "scripts": { 6 "scripts": {
7 "dev": "NODE_ENV=development ../../node_modules/.bin/webpack -w", 7 "dev": "tsc -w",
8 "prepare": "../../node_modules/.bin/webpack" 8 "prepare": "tsc"
9 }, 9 },
10 "publishConfig": { 10 "publishConfig": {
11 "access": "public" 11 "access": "public"
@@ -30,9 +30,6 @@
30 }, 30 },
31 "peerDependencies": { 31 "peerDependencies": {
32 "classnames": "^2.2.6", 32 "classnames": "^2.2.6",
33 "lodash": "^4.17.11",
34 "mobx": "^5.8.0",
35 "mobx-react": "^5.4.3",
36 "react": "^16.7.0", 33 "react": "^16.7.0",
37 "react-dom": "16.7.0", 34 "react-dom": "16.7.0",
38 "react-jss": "^8.6.1" 35 "react-jss": "^8.6.1"
diff --git a/packages/ui/src/badge/index.tsx b/packages/ui/src/badge/index.tsx
index 241e778e7..fc52ecc73 100644
--- a/packages/ui/src/badge/index.tsx
+++ b/packages/ui/src/badge/index.tsx
@@ -65,6 +65,7 @@ class BadgeComponent extends Component<IProps> {
65 [classes[type]]: true, 65 [classes[type]]: true,
66 [`${className}`]: className, 66 [`${className}`]: className,
67 })} 67 })}
68 data-type="franz-badge"
68 > 69 >
69 {children} 70 {children}
70 </div> 71 </div>
diff --git a/packages/ui/src/headline/index.tsx b/packages/ui/src/headline/index.tsx
index 3458a40ad..7eabfcf80 100644
--- a/packages/ui/src/headline/index.tsx
+++ b/packages/ui/src/headline/index.tsx
@@ -3,7 +3,6 @@ import classnames from 'classnames';
3import React, { Component } from 'react'; 3import React, { Component } from 'react';
4import injectStyle from 'react-jss'; 4import injectStyle from 'react-jss';
5 5
6import { uiFontSize } from '@meetfranz/theme/lib/themes/default';
7import { IWithStyle, Omit } from '../typings/generic'; 6import { IWithStyle, Omit } from '../typings/generic';
8 7
9interface IProps extends IWithStyle { 8interface IProps extends IWithStyle {
@@ -55,6 +54,7 @@ class HeadlineComponent extends Component<IProps> {
55 [classes[level ? `h${level}` : 'h1']]: true, 54 [classes[level ? `h${level}` : 'h1']]: true,
56 [`${className}`]: className, 55 [`${className}`]: className,
57 }), 56 }),
57 'data-type': 'franz-headline',
58 }, 58 },
59 children, 59 children,
60 ); 60 );
diff --git a/packages/ui/src/infobox/index.tsx b/packages/ui/src/infobox/index.tsx
index bf985ea9c..53ed16341 100644
--- a/packages/ui/src/infobox/index.tsx
+++ b/packages/ui/src/infobox/index.tsx
@@ -1,9 +1,7 @@
1import { Theme } from '@meetfranz/theme'; 1import { Theme } from '@meetfranz/theme';
2import classnames from 'classnames'; 2import classnames from 'classnames';
3import { observer } from 'mobx-react';
4import React, { Component } from 'react'; 3import React, { Component } from 'react';
5import injectStyle from 'react-jss'; 4import injectStyle from 'react-jss';
6// import Loader from 'react-loader';
7 5
8import { Icon } from '../'; 6import { Icon } from '../';
9import { IWithStyle } from '../typings/generic'; 7import { IWithStyle } from '../typings/generic';
@@ -95,7 +93,6 @@ const styles = (theme: Theme) => ({
95 ...buttonStyles(theme), 93 ...buttonStyles(theme),
96}); 94});
97 95
98@observer
99class InfoboxComponent extends Component<IProps, IState> { 96class InfoboxComponent extends Component<IProps, IState> {
100 public static defaultProps = { 97 public static defaultProps = {
101 type: 'primary', 98 type: 'primary',
@@ -160,6 +157,7 @@ class InfoboxComponent extends Component<IProps, IState> {
160 [classes[`${type}`]]: type, 157 [classes[`${type}`]]: type,
161 [classes.dismissing]: isDismissing, 158 [classes.dismissing]: isDismissing,
162 })} 159 })}
160 data-type="franz-infobox"
163 > 161 >
164 {icon && ( 162 {icon && (
165 <Icon icon={icon} className={classes.icon} /> 163 <Icon icon={icon} className={classes.icon} />
diff --git a/packages/ui/src/loader/index.tsx b/packages/ui/src/loader/index.tsx
index 799caf195..de5ba5237 100644
--- a/packages/ui/src/loader/index.tsx
+++ b/packages/ui/src/loader/index.tsx
@@ -26,10 +26,13 @@ class LoaderComponent extends Component<IProps> {
26 } = this.props; 26 } = this.props;
27 27
28 return ( 28 return (
29 <div className={classnames({ 29 <div
30 [classes.container]: true, 30 className={classnames({
31 [`${className}`]: className, 31 [classes.container]: true,
32 })}> 32 [`${className}`]: className,
33 })}
34 data-type="franz-loader"
35 >
33 <ReactLoader 36 <ReactLoader
34 loaded={false} 37 loaded={false}
35 width={4} 38 width={4}
diff --git a/packages/ui/webpack.config.js b/packages/ui/webpack.config.js
deleted file mode 100644
index cc3370359..000000000
--- a/packages/ui/webpack.config.js
+++ /dev/null
@@ -1,19 +0,0 @@
1const path = require('path');
2const baseConfig = require('../../webpack.config.base')(__dirname);
3
4module.exports = Object.assign({}, baseConfig, {
5 output: {
6 filename: 'index.js',
7 path: path.join(__dirname, 'lib'),
8 libraryTarget: 'commonjs2',
9 },
10 externals: {
11 react: 'react',
12 reactDom: 'react-dom',
13 classnames: 'classnames',
14 lodash: 'lodash',
15 mobx: 'mobx',
16 mobxReact: 'mobx-react',
17 reactJss: 'react-jss',
18 },
19});