Compare commits

..

508 Commits

Author SHA1 Message Date
Francisco Hodge
f2479c47d2 Build update 2019-11-07 16:30:07 +00:00
Francisco Hodge
0e94d9c4e7 2.27.1 2019-11-07 16:30:00 +00:00
Francisco Hodge
d47d3d60ae Build update 2019-11-07 11:28:42 -05:00
Francisco Hodge
f2a97b6dcb Tests update 2019-11-07 11:26:27 -05:00
Francisco Hodge
70b99b44c6 Demo update 2019-11-07 11:26:19 -05:00
Francisco Hodge
0c481cb29a Fix activeButtonClass handling 2019-11-07 11:25:43 -05:00
Francisco Hodge
d92f84f5c3 Expand garbage collection 2019-11-07 11:25:18 -05:00
Francisco Hodge
6fe56c3abc Build update 2019-11-07 10:31:09 +00:00
Francisco Hodge
6578a8d867 2.26.25 2019-11-07 10:31:04 +00:00
dependabot-preview[bot]
b6303de61f Merge pull request #292 from hodgef/dependabot/npm_and_yarn/copy-webpack-plugin-5.0.5 2019-11-07 10:29:45 +00:00
dependabot-preview[bot]
4e888c5e91 Merge pull request #293 from hodgef/dependabot/npm_and_yarn/babel/core-7.7.2 2019-11-07 10:28:56 +00:00
dependabot-preview[bot]
d9c9e40800 Bump @babel/core from 7.7.0 to 7.7.2
Bumps [@babel/core](https://github.com/babel/babel) from 7.7.0 to 7.7.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.7.0...v7.7.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-07 10:25:31 +00:00
dependabot-preview[bot]
6996e59871 Bump copy-webpack-plugin from 5.0.4 to 5.0.5
Bumps [copy-webpack-plugin](https://github.com/webpack-contrib/copy-webpack-plugin) from 5.0.4 to 5.0.5.
- [Release notes](https://github.com/webpack-contrib/copy-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/copy-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/copy-webpack-plugin/compare/v5.0.4...v5.0.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-07 10:23:51 +00:00
Francisco Hodge
35f26a4882 Build update 2019-11-06 10:53:05 +00:00
Francisco Hodge
e1c146d66e 2.26.24 2019-11-06 10:53:00 +00:00
dependabot-preview[bot]
c4382e586d Merge pull request #289 from hodgef/dependabot/npm_and_yarn/babel/preset-env-7.7.1 2019-11-06 10:51:42 +00:00
dependabot-preview[bot]
ff69ff516b Bump @babel/preset-env from 7.6.3 to 7.7.1
Bumps [@babel/preset-env](https://github.com/babel/babel) from 7.6.3 to 7.7.1.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.6.3...v7.7.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-06 10:46:27 +00:00
Francisco Hodge
3c71de374c Build update 2019-11-06 10:45:05 +00:00
Francisco Hodge
57a1240505 2.26.23 2019-11-06 10:45:00 +00:00
dependabot-preview[bot]
6f3d749f19 Merge pull request #291 from hodgef/dependabot/npm_and_yarn/babel/core-7.7.0 2019-11-06 10:43:47 +00:00
dependabot-preview[bot]
a0dd220b1b Bump @babel/core from 7.6.4 to 7.7.0
Bumps [@babel/core](https://github.com/babel/babel) from 7.6.4 to 7.7.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.6.4...v7.7.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-06 10:38:08 +00:00
Francisco Hodge
30bbf0a44f Build update 2019-11-06 10:37:18 +00:00
Francisco Hodge
5a11fa9b1d 2.26.22 2019-11-06 10:37:13 +00:00
dependabot-preview[bot]
39830f3ca0 Merge pull request #290 from hodgef/dependabot/npm_and_yarn/babel/preset-react-7.7.0 2019-11-06 10:35:41 +00:00
dependabot-preview[bot]
ef91217dd2 Bump @babel/preset-react from 7.6.3 to 7.7.0
Bumps [@babel/preset-react](https://github.com/babel/babel) from 7.6.3 to 7.7.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.6.3...v7.7.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-06 10:30:31 +00:00
Francisco Hodge
020fa57a97 Build update 2019-11-06 10:29:46 +00:00
Francisco Hodge
acd511de86 2.26.21 2019-11-06 10:29:40 +00:00
dependabot-preview[bot]
e4c0a1a767 Merge pull request #288 from hodgef/dependabot/npm_and_yarn/babel/plugin-proposal-class-properties-7.7.0 2019-11-06 10:28:08 +00:00
dependabot-preview[bot]
49a24dad17 Bump @babel/plugin-proposal-class-properties from 7.5.5 to 7.7.0
Bumps [@babel/plugin-proposal-class-properties](https://github.com/babel/babel) from 7.5.5 to 7.7.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.5.5...v7.7.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-06 10:20:37 +00:00
Francisco Hodge
80ae730f4b Build update 2019-11-04 01:28:09 +00:00
Francisco Hodge
44347b8450 2.26.20 2019-11-04 01:28:03 +00:00
Francisco Hodge
2ac055b8d2 Update README.md 2019-11-03 20:26:45 -05:00
Francisco Hodge
9f772a1b28 Build update 2019-11-02 15:05:06 +00:00
Francisco Hodge
6df471aff7 2.26.19 2019-11-02 15:05:01 +00:00
Francisco Hodge
315ddc3892 Merge pull request #287 from Entkenntnis/master
Visual feedback on mobile&desktop
2019-11-02 08:03:48 -07:00
Francisco Hodge
68cbe73b23 Setting lighter tone for activeButton 2019-11-02 10:59:41 -04:00
Francisco Hodge
1cf6f3884f Build update 2019-11-02 14:26:07 +00:00
Francisco Hodge
1bfe7bac85 2.26.18 2019-11-02 14:26:02 +00:00
Francisco Hodge
cb44bdaaf1 Update pull_request_template.md 2019-11-02 10:24:52 -04:00
David Li
15f8ef056b don't change useTouchEventsAuto default 2019-11-02 09:23:12 +01:00
David Li
5b608d4f71 Visual feedback on mobile&desktop 2019-11-02 09:00:19 +01:00
Francisco Hodge
0c49b12341 Build update 2019-10-29 15:17:12 +00:00
Francisco Hodge
dcfd0f160d 2.26.17 2019-10-29 15:17:06 +00:00
Francisco Hodge
7206558540 Merge pull request #285 from vickylance/master
Changed the condition to >= to check for character string inputs like ".com"
2019-10-29 08:12:24 -07:00
Francisco Hodge
d1cdbd2d11 Update Utilities.js 2019-10-29 10:58:24 -04:00
Francisco Hodge
6cf99720c4 Update Utilities.test.js 2019-10-29 10:57:45 -04:00
Vignesh S
86caf021fa Update Utilities.js 2019-10-29 20:03:08 +05:30
Francisco Hodge
6c3df6725b Build update 2019-10-28 09:24:00 +00:00
Francisco Hodge
fb3daa3e7a 2.26.16 2019-10-28 09:23:54 +00:00
dependabot-preview[bot]
06f36cffda Merge pull request #284 from hodgef/dependabot/npm_and_yarn/eslint-6.6.0 2019-10-28 09:22:22 +00:00
dependabot-preview[bot]
38eb1d4975 Bump eslint from 6.5.1 to 6.6.0
Bumps [eslint](https://github.com/eslint/eslint) from 6.5.1 to 6.6.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v6.5.1...v6.6.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-28 09:17:47 +00:00
Francisco Hodge
eab836e4e9 Build update 2019-10-23 09:28:41 +00:00
Francisco Hodge
e2ff5e29c4 2.26.15 2019-10-23 09:28:36 +00:00
dependabot-preview[bot]
4a8bc0e16d Merge pull request #283 from hodgef/dependabot/npm_and_yarn/react-dom-16.11.0 2019-10-23 09:27:12 +00:00
dependabot-preview[bot]
9c896fd2f5 Merge pull request #280 from hodgef/dependabot/npm_and_yarn/webpack-dev-server-3.9.0 2019-10-23 09:25:18 +00:00
dependabot-preview[bot]
9a6fae4968 Merge pull request #282 from hodgef/dependabot/npm_and_yarn/terser-webpack-plugin-2.2.1 2019-10-23 09:24:24 +00:00
dependabot-preview[bot]
a921edd637 Merge pull request #281 from hodgef/dependabot/npm_and_yarn/eslint-plugin-react-hooks-2.2.0 2019-10-23 09:23:26 +00:00
Francisco Hodge
0471e84958 Build update 2019-10-23 09:22:38 +00:00
Francisco Hodge
757504d929 2.26.14 2019-10-23 09:22:33 +00:00
dependabot-preview[bot]
b013025762 Bump react-dom from 16.10.2 to 16.11.0
Bumps [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) from 16.10.2 to 16.11.0.
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/v16.11.0/packages/react-dom)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-23 09:22:28 +00:00
dependabot-preview[bot]
ae993c4a58 Merge pull request #279 from hodgef/dependabot/npm_and_yarn/react-16.11.0 2019-10-23 09:20:00 +00:00
dependabot-preview[bot]
587933f14b Bump terser-webpack-plugin from 2.1.3 to 2.2.1
Bumps [terser-webpack-plugin](https://github.com/webpack-contrib/terser-webpack-plugin) from 2.1.3 to 2.2.1.
- [Release notes](https://github.com/webpack-contrib/terser-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/terser-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/terser-webpack-plugin/compare/v2.1.3...v2.2.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-23 09:19:38 +00:00
dependabot-preview[bot]
1e21d0e759 Bump eslint-plugin-react-hooks from 2.1.2 to 2.2.0
Bumps [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) from 2.1.2 to 2.2.0.
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/HEAD/packages/eslint-plugin-react-hooks)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-23 09:18:40 +00:00
dependabot-preview[bot]
775c4866b3 Bump webpack-dev-server from 3.8.2 to 3.9.0
Bumps [webpack-dev-server](https://github.com/webpack/webpack-dev-server) from 3.8.2 to 3.9.0.
- [Release notes](https://github.com/webpack/webpack-dev-server/releases)
- [Changelog](https://github.com/webpack/webpack-dev-server/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.8.2...v3.9.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-23 09:16:55 +00:00
dependabot-preview[bot]
e2e7dbd571 Bump react from 16.10.2 to 16.11.0
Bumps [react](https://github.com/facebook/react/tree/HEAD/packages/react) from 16.10.2 to 16.11.0.
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/v16.11.0/packages/react)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-23 09:14:31 +00:00
Francisco Hodge
2b1a875f01 Build update 2019-10-16 03:16:16 +00:00
Francisco Hodge
c4713082f8 2.26.13 2019-10-16 03:16:11 +00:00
dependabot-preview[bot]
1282464e3b Merge pull request #277 from hodgef/dependabot/npm_and_yarn/dotenv-8.2.0 2019-10-16 03:14:42 +00:00
dependabot-preview[bot]
368cf1588d Merge pull request #276 from hodgef/dependabot/npm_and_yarn/webpack-4.41.2 2019-10-16 03:13:14 +00:00
dependabot-preview[bot]
997e448ed2 Bump dotenv from 8.1.0 to 8.2.0
Bumps [dotenv](https://github.com/motdotla/dotenv) from 8.1.0 to 8.2.0.
- [Release notes](https://github.com/motdotla/dotenv/releases)
- [Changelog](https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md)
- [Commits](https://github.com/motdotla/dotenv/compare/v8.1.0...v8.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-16 03:10:35 +00:00
dependabot-preview[bot]
460cd8753d Bump webpack from 4.41.1 to 4.41.2
Bumps [webpack](https://github.com/webpack/webpack) from 4.41.1 to 4.41.2.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v4.41.1...v4.41.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-16 03:08:54 +00:00
Francisco Hodge
2c0bce1d93 Build update 2019-10-15 21:01:59 +00:00
Francisco Hodge
d5caa8161c 2.26.12 2019-10-15 21:01:53 +00:00
Francisco Hodge
ce24a1b5e0 Update README.md 2019-10-15 17:00:15 -04:00
Francisco Hodge
3f465f2514 Build update 2019-10-13 16:05:32 +00:00
Francisco Hodge
91b66183cb 2.26.11 2019-10-13 16:05:26 +00:00
Francisco Hodge
a71bf0c81d Update README.md 2019-10-13 12:03:48 -04:00
Francisco Hodge
9e7bc9f303 Build update 2019-10-13 04:22:59 +00:00
Francisco Hodge
b03864d0e5 2.26.10 2019-10-13 04:22:54 +00:00
Francisco Hodge
be0f4a016d Update publish.yml 2019-10-13 00:21:46 -04:00
Francisco Hodge
3472031203 Build Update 2019-10-13 04:16:26 +00:00
Francisco Hodge
7c5def8e40 2.26.9 2019-10-13 04:16:20 +00:00
Francisco Hodge
2af26a861f Update publish.yml 2019-10-13 00:15:12 -04:00
Francisco Hodge
7ed08cff0d Build Update 2019-10-13 03:28:40 +00:00
Francisco Hodge
8c2ad22c48 2.26.8 2019-10-13 03:28:35 +00:00
Francisco Hodge
c6e96c5fa4 Update publish.yml 2019-10-12 23:27:28 -04:00
Francisco Hodge
71b451f02a Update publish.yml 2019-10-12 23:23:48 -04:00
Francisco Hodge
9aa1490087 2.26.7 2019-10-13 03:11:46 +00:00
Francisco Hodge
f1b6d5cbd8 Build Update 2019-10-13 03:11:45 +00:00
Francisco Hodge
46302acff0 Update publish.yml 2019-10-12 23:10:36 -04:00
Francisco Hodge
a43b32954d Update publish.yml 2019-10-12 23:01:48 -04:00
Francisco Hodge
3764e7b6f9 Update publish.yml 2019-10-12 22:58:04 -04:00
Francisco Hodge
17ac7b56de Update publish.yml 2019-10-12 22:54:08 -04:00
Francisco Hodge
991a5c58c8 Create publish.yml 2019-10-12 22:44:26 -04:00
Francisco Hodge
a7323fa8ce Delete publish.yml 2019-10-12 22:36:15 -04:00
Francisco Hodge
45396c0a0f Create publish.yml 2019-10-12 15:18:28 -04:00
Francisco Hodge
116f90910d Publishing workflow 2019-10-12 15:17:39 -04:00
dependabot-preview[bot]
14c7d33664 Merge pull request #273 from hodgef/dependabot/npm_and_yarn/babel/preset-env-7.6.3 2019-10-12 09:29:59 +00:00
dependabot-preview[bot]
7906ff209f Merge pull request #271 from hodgef/dependabot/npm_and_yarn/webpack-4.41.1 2019-10-12 09:29:27 +00:00
dependabot-preview[bot]
e2522931a7 Merge pull request #272 from hodgef/dependabot/npm_and_yarn/babel/preset-react-7.6.3 2019-10-12 09:28:04 +00:00
dependabot-preview[bot]
a9b475782f Bump @babel/preset-env from 7.6.2 to 7.6.3
Bumps [@babel/preset-env](https://github.com/babel/babel) from 7.6.2 to 7.6.3.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.6.2...v7.6.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-12 09:26:25 +00:00
dependabot-preview[bot]
49f3357975 Bump webpack from 4.41.0 to 4.41.1
Bumps [webpack](https://github.com/webpack/webpack) from 4.41.0 to 4.41.1.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v4.41.0...v4.41.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-12 09:26:23 +00:00
dependabot-preview[bot]
bddc1ccdf1 Bump @babel/preset-react from 7.0.0 to 7.6.3
Bumps [@babel/preset-react](https://github.com/babel/babel) from 7.0.0 to 7.6.3.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.0.0...v7.6.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-12 09:24:44 +00:00
dependabot-preview[bot]
735928e7fc Merge pull request #270 from hodgef/dependabot/npm_and_yarn/terser-webpack-plugin-2.1.3 2019-10-12 09:24:14 +00:00
dependabot-preview[bot]
b6130d2834 Bump terser-webpack-plugin from 2.1.2 to 2.1.3
Bumps [terser-webpack-plugin](https://github.com/webpack-contrib/terser-webpack-plugin) from 2.1.2 to 2.1.3.
- [Release notes](https://github.com/webpack-contrib/terser-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/terser-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/terser-webpack-plugin/compare/v2.1.2...v2.1.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-12 09:20:51 +00:00
dependabot-preview[bot]
949876e7f4 Merge pull request #269 from hodgef/dependabot/npm_and_yarn/babel/core-7.6.4 2019-10-12 09:17:09 +00:00
dependabot-preview[bot]
fd82ea8f3f Bump @babel/core from 7.6.2 to 7.6.4
Bumps [@babel/core](https://github.com/babel/babel) from 7.6.2 to 7.6.4.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.6.2...v7.6.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-12 09:13:45 +00:00
Francisco Hodge
7c4c40cfd4 Build update 2019-10-08 18:17:41 -04:00
Francisco Hodge
4505438932 Build update 2019-10-08 18:11:01 -04:00
Francisco Hodge
6280875f4c Updated devDependencies 2019-10-08 18:10:53 -04:00
Francisco Hodge
46c809cbf9 Removing unneeded arg in syncInstanceInputs 2019-10-08 18:10:34 -04:00
dependabot-preview[bot]
f71917377f Merge pull request #265 from hodgef/dependabot/npm_and_yarn/webpack-dev-server-3.8.2 2019-10-05 09:35:49 +00:00
dependabot-preview[bot]
3321b92f73 Bump webpack-dev-server from 3.8.1 to 3.8.2
Bumps [webpack-dev-server](https://github.com/webpack/webpack-dev-server) from 3.8.1 to 3.8.2.
- [Release notes](https://github.com/webpack/webpack-dev-server/releases)
- [Changelog](https://github.com/webpack/webpack-dev-server/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.8.1...v3.8.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-05 09:31:31 +00:00
dependabot-preview[bot]
bb830ad60a Merge pull request #267 from hodgef/dependabot/npm_and_yarn/eslint-6.5.1 2019-10-05 09:31:25 +00:00
dependabot-preview[bot]
978f969634 Merge pull request #261 from hodgef/dependabot/npm_and_yarn/react-16.10.2 2019-10-05 09:30:56 +00:00
dependabot-preview[bot]
be7365ec64 Merge pull request #266 from hodgef/dependabot/npm_and_yarn/url-loader-2.2.0 2019-10-05 09:29:16 +00:00
dependabot-preview[bot]
f16798e1b0 Bump eslint from 6.4.0 to 6.5.1
Bumps [eslint](https://github.com/eslint/eslint) from 6.4.0 to 6.5.1.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v6.4.0...v6.5.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-05 09:26:49 +00:00
dependabot-preview[bot]
1824635d47 Bump react from 16.10.0 to 16.10.2
Bumps [react](https://github.com/facebook/react/tree/HEAD/packages/react) from 16.10.0 to 16.10.2.
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/v16.10.2/packages/react)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-05 09:26:26 +00:00
dependabot-preview[bot]
50d08c848f Bump url-loader from 2.1.0 to 2.2.0
Bumps [url-loader](https://github.com/webpack-contrib/url-loader) from 2.1.0 to 2.2.0.
- [Release notes](https://github.com/webpack-contrib/url-loader/releases)
- [Changelog](https://github.com/webpack-contrib/url-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/url-loader/compare/v2.1.0...v2.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-05 09:24:49 +00:00
dependabot-preview[bot]
300ea34eea Merge pull request #264 from hodgef/dependabot/npm_and_yarn/eslint-plugin-react-7.16.0 2019-10-05 09:24:16 +00:00
dependabot-preview[bot]
85a467b6a6 Merge pull request #263 from hodgef/dependabot/npm_and_yarn/webpack-manifest-plugin-2.2.0 2019-10-05 09:23:05 +00:00
dependabot-preview[bot]
9467e4ffe3 Merge pull request #262 from hodgef/dependabot/npm_and_yarn/terser-webpack-plugin-2.1.2 2019-10-05 09:22:29 +00:00
dependabot-preview[bot]
7cfaf5e1c0 Merge pull request #260 from hodgef/dependabot/npm_and_yarn/react-dom-16.10.2 2019-10-05 09:20:52 +00:00
dependabot-preview[bot]
24497cfd97 Bump eslint-plugin-react from 7.14.3 to 7.16.0
Bumps [eslint-plugin-react](https://github.com/yannickcr/eslint-plugin-react) from 7.14.3 to 7.16.0.
- [Release notes](https://github.com/yannickcr/eslint-plugin-react/releases)
- [Changelog](https://github.com/yannickcr/eslint-plugin-react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/yannickcr/eslint-plugin-react/compare/v7.14.3...v7.16.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-05 09:20:09 +00:00
dependabot-preview[bot]
6203c9cbd1 Merge pull request #259 from hodgef/dependabot/npm_and_yarn/react-app-polyfill-1.0.4 2019-10-05 09:19:35 +00:00
dependabot-preview[bot]
27cf742fd1 Bump webpack-manifest-plugin from 2.1.2 to 2.2.0
Bumps [webpack-manifest-plugin](https://github.com/danethurber/webpack-manifest-plugin) from 2.1.2 to 2.2.0.
- [Release notes](https://github.com/danethurber/webpack-manifest-plugin/releases)
- [Commits](https://github.com/danethurber/webpack-manifest-plugin/compare/v2.1.2...v2.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-05 09:19:01 +00:00
dependabot-preview[bot]
760def8e49 Merge pull request #258 from hodgef/dependabot/npm_and_yarn/react-dev-utils-9.1.0 2019-10-05 09:18:38 +00:00
dependabot-preview[bot]
bbaae9bdb4 Bump terser-webpack-plugin from 2.1.1 to 2.1.2
Bumps [terser-webpack-plugin](https://github.com/webpack-contrib/terser-webpack-plugin) from 2.1.1 to 2.1.2.
- [Release notes](https://github.com/webpack-contrib/terser-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/terser-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/terser-webpack-plugin/compare/v2.1.1...v2.1.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-05 09:18:14 +00:00
dependabot-preview[bot]
baedb1dff4 Merge pull request #257 from hodgef/dependabot/npm_and_yarn/eslint-plugin-react-hooks-2.1.2 2019-10-05 09:17:53 +00:00
dependabot-preview[bot]
7f52cb603c Bump react-dom from 16.10.0 to 16.10.2
Bumps [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) from 16.10.0 to 16.10.2.
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/v16.10.2/packages/react-dom)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-05 09:16:24 +00:00
dependabot-preview[bot]
ef4d072708 Bump react-app-polyfill from 1.0.3 to 1.0.4
Bumps [react-app-polyfill](https://github.com/facebook/create-react-app/tree/HEAD/packages/react-app-polyfill) from 1.0.3 to 1.0.4.
- [Release notes](https://github.com/facebook/create-react-app/releases)
- [Changelog](https://github.com/facebook/create-react-app/blob/master/CHANGELOG-1.x.md)
- [Commits](https://github.com/facebook/create-react-app/commits/react-app-polyfill@1.0.4/packages/react-app-polyfill)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-05 09:15:34 +00:00
dependabot-preview[bot]
52ebbe6198 Bump react-dev-utils from 9.0.4 to 9.1.0
Bumps [react-dev-utils](https://github.com/facebook/create-react-app/tree/HEAD/packages/react-dev-utils) from 9.0.4 to 9.1.0.
- [Release notes](https://github.com/facebook/create-react-app/releases)
- [Changelog](https://github.com/facebook/create-react-app/blob/master/CHANGELOG-1.x.md)
- [Commits](https://github.com/facebook/create-react-app/commits/react-dev-utils@9.1.0/packages/react-dev-utils)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-05 09:14:30 +00:00
dependabot-preview[bot]
f7c46fad05 Bump eslint-plugin-react-hooks from 2.1.0 to 2.1.2
Bumps [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) from 2.1.0 to 2.1.2.
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/HEAD/packages/eslint-plugin-react-hooks)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-05 09:13:42 +00:00
dependabot-preview[bot]
ec4864ad2a Merge pull request #249 from hodgef/dependabot/npm_and_yarn/webpack-4.41.0 2019-09-28 09:35:45 +00:00
dependabot-preview[bot]
da7112ea2b Merge pull request #248 from hodgef/dependabot/npm_and_yarn/react-16.10.0 2019-09-28 09:32:54 +00:00
dependabot-preview[bot]
7d4e17f405 Merge pull request #253 from hodgef/dependabot/npm_and_yarn/babel/preset-env-7.6.2 2019-09-28 09:32:19 +00:00
dependabot-preview[bot]
c40472f505 Bump webpack from 4.40.2 to 4.41.0
Bumps [webpack](https://github.com/webpack/webpack) from 4.40.2 to 4.41.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v4.40.2...v4.41.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-28 09:31:25 +00:00
dependabot-preview[bot]
fa5e9c55c4 Merge pull request #255 from hodgef/dependabot/npm_and_yarn/webpack-manifest-plugin-2.1.2 2019-09-28 09:29:15 +00:00
dependabot-preview[bot]
a3c7c75455 Bump react from 16.9.0 to 16.10.0
Bumps [react](https://github.com/facebook/react/tree/HEAD/packages/react) from 16.9.0 to 16.10.0.
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/v16.10.0/packages/react)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-28 09:28:11 +00:00
dependabot-preview[bot]
a4ca5df208 Bump @babel/preset-env from 7.6.0 to 7.6.2
Bumps [@babel/preset-env](https://github.com/babel/babel) from 7.6.0 to 7.6.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.6.0...v7.6.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-28 09:28:06 +00:00
dependabot-preview[bot]
f75194bfd1 Merge pull request #254 from hodgef/dependabot/npm_and_yarn/react-dom-16.10.0 2019-09-28 09:26:55 +00:00
dependabot-preview[bot]
ebfc849029 Merge pull request #251 from hodgef/dependabot/npm_and_yarn/svgr/webpack-4.3.3 2019-09-28 09:25:52 +00:00
dependabot-preview[bot]
9f842afa91 Merge pull request #252 from hodgef/dependabot/npm_and_yarn/eslint-loader-3.0.2 2019-09-28 09:24:21 +00:00
dependabot-preview[bot]
d63f03afb7 Bump webpack-manifest-plugin from 2.0.4 to 2.1.2
Bumps [webpack-manifest-plugin](https://github.com/danethurber/webpack-manifest-plugin) from 2.0.4 to 2.1.2.
- [Release notes](https://github.com/danethurber/webpack-manifest-plugin/releases)
- [Commits](https://github.com/danethurber/webpack-manifest-plugin/compare/v2.0.4...v2.1.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-28 09:23:26 +00:00
dependabot-preview[bot]
80801cb254 Merge pull request #250 from hodgef/dependabot/npm_and_yarn/eslint-plugin-react-hooks-2.1.0 2019-09-28 09:22:29 +00:00
dependabot-preview[bot]
b626a0750b Bump react-dom from 16.9.0 to 16.10.0
Bumps [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) from 16.9.0 to 16.10.0.
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/v16.10.0/packages/react-dom)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-28 09:22:23 +00:00
dependabot-preview[bot]
ec2c4545ea Bump eslint-loader from 3.0.0 to 3.0.2
Bumps [eslint-loader](https://github.com/webpack-contrib/eslint-loader) from 3.0.0 to 3.0.2.
- [Release notes](https://github.com/webpack-contrib/eslint-loader/releases)
- [Changelog](https://github.com/webpack-contrib/eslint-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/eslint-loader/compare/v3.0.0...v3.0.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-28 09:20:04 +00:00
dependabot-preview[bot]
b201c68cb2 Merge pull request #247 from hodgef/dependabot/npm_and_yarn/babel/core-7.6.2 2019-09-28 09:19:59 +00:00
dependabot-preview[bot]
0c9d843040 Bump @svgr/webpack from 4.3.2 to 4.3.3
Bumps [@svgr/webpack](https://github.com/smooth-code/svgr) from 4.3.2 to 4.3.3.
- [Release notes](https://github.com/smooth-code/svgr/releases)
- [Changelog](https://github.com/smooth-code/svgr/blob/master/CHANGELOG.md)
- [Commits](https://github.com/smooth-code/svgr/compare/v4.3.2...v4.3.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-28 09:19:17 +00:00
dependabot-preview[bot]
3c29289a11 Merge pull request #246 from hodgef/dependabot/npm_and_yarn/terser-webpack-plugin-2.1.1 2019-09-28 09:18:54 +00:00
dependabot-preview[bot]
767b11f092 Bump eslint-plugin-react-hooks from 2.0.1 to 2.1.0
Bumps [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) from 2.0.1 to 2.1.0.
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/HEAD/packages/eslint-plugin-react-hooks)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-28 09:18:11 +00:00
dependabot-preview[bot]
d8dda787ae Merge pull request #245 from hodgef/dependabot/npm_and_yarn/is-wsl-2.1.1 2019-09-28 09:18:06 +00:00
dependabot-preview[bot]
aa689d67cf Bump @babel/core from 7.6.0 to 7.6.2
Bumps [@babel/core](https://github.com/babel/babel) from 7.6.0 to 7.6.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.6.0...v7.6.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-28 09:15:20 +00:00
dependabot-preview[bot]
64dbe67c7b Bump terser-webpack-plugin from 2.1.0 to 2.1.1
Bumps [terser-webpack-plugin](https://github.com/webpack-contrib/terser-webpack-plugin) from 2.1.0 to 2.1.1.
- [Release notes](https://github.com/webpack-contrib/terser-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/terser-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/terser-webpack-plugin/compare/v2.1.0...v2.1.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-28 09:14:33 +00:00
dependabot-preview[bot]
5fae64363d Bump is-wsl from 2.1.0 to 2.1.1
Bumps [is-wsl](https://github.com/sindresorhus/is-wsl) from 2.1.0 to 2.1.1.
- [Release notes](https://github.com/sindresorhus/is-wsl/releases)
- [Commits](https://github.com/sindresorhus/is-wsl/compare/v2.1.0...v2.1.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-28 09:13:46 +00:00
Francisco Hodge
1d01e3e433 Build update 2019-09-26 11:13:56 -04:00
Francisco Hodge
a3240e4315 Fixed issue in preventMouseDownDefault 2019-09-26 11:13:43 -04:00
Francisco Hodge
0872203d9e Update README.md 2019-09-25 11:50:04 -04:00
Francisco Hodge
5912880ae5 Update README.md 2019-09-25 11:41:12 -04:00
Francisco Hodge
84bda916ef Update README.md 2019-09-25 11:34:23 -04:00
dependabot-preview[bot]
95ba625268 Merge pull request #239 from hodgef/dependabot/npm_and_yarn/babel-preset-react-app-9.0.2 2019-09-21 09:23:01 +00:00
dependabot-preview[bot]
a9d56531d9 Merge pull request #238 from hodgef/dependabot/npm_and_yarn/react-app-polyfill-1.0.3 2019-09-21 09:22:13 +00:00
dependabot-preview[bot]
9a848dc9fe Merge pull request #237 from hodgef/dependabot/npm_and_yarn/babel-plugin-named-asset-import-0.3.4 2019-09-21 09:21:53 +00:00
dependabot-preview[bot]
c48517520b Merge pull request #236 from hodgef/dependabot/npm_and_yarn/react-dev-utils-9.0.4 2019-09-21 09:19:50 +00:00
dependabot-preview[bot]
91db170318 Merge pull request #235 from hodgef/dependabot/npm_and_yarn/terser-webpack-plugin-2.1.0 2019-09-21 09:19:24 +00:00
dependabot-preview[bot]
d1aff62d67 Bump babel-preset-react-app from 9.0.1 to 9.0.2
Bumps [babel-preset-react-app](https://github.com/facebook/create-react-app/tree/HEAD/packages/babel-preset-react-app) from 9.0.1 to 9.0.2.
- [Release notes](https://github.com/facebook/create-react-app/releases)
- [Changelog](https://github.com/facebook/create-react-app/blob/master/CHANGELOG-1.x.md)
- [Commits](https://github.com/facebook/create-react-app/commits/babel-preset-react-app@9.0.2/packages/babel-preset-react-app)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-21 09:18:38 +00:00
dependabot-preview[bot]
c627b05971 Merge pull request #234 from hodgef/dependabot/npm_and_yarn/webpack-dev-server-3.8.1 2019-09-21 09:18:20 +00:00
dependabot-preview[bot]
a21d490505 Bump react-app-polyfill from 1.0.2 to 1.0.3
Bumps [react-app-polyfill](https://github.com/facebook/create-react-app/tree/HEAD/packages/react-app-polyfill) from 1.0.2 to 1.0.3.
- [Release notes](https://github.com/facebook/create-react-app/releases)
- [Changelog](https://github.com/facebook/create-react-app/blob/master/CHANGELOG-1.x.md)
- [Commits](https://github.com/facebook/create-react-app/commits/react-app-polyfill@1.0.3/packages/react-app-polyfill)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-21 09:17:47 +00:00
dependabot-preview[bot]
696e641519 Bump babel-plugin-named-asset-import from 0.3.3 to 0.3.4
Bumps [babel-plugin-named-asset-import](https://github.com/facebook/create-react-app/tree/HEAD/packages/babel-plugin-named-asset-import) from 0.3.3 to 0.3.4.
- [Release notes](https://github.com/facebook/create-react-app/releases)
- [Changelog](https://github.com/facebook/create-react-app/blob/master/CHANGELOG-1.x.md)
- [Commits](https://github.com/facebook/create-react-app/commits/babel-plugin-named-asset-import@0.3.4/packages/babel-plugin-named-asset-import)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-21 09:17:02 +00:00
dependabot-preview[bot]
6a95ba8959 Bump react-dev-utils from 9.0.3 to 9.0.4
Bumps [react-dev-utils](https://github.com/facebook/create-react-app/tree/HEAD/packages/react-dev-utils) from 9.0.3 to 9.0.4.
- [Release notes](https://github.com/facebook/create-react-app/releases)
- [Changelog](https://github.com/facebook/create-react-app/blob/master/CHANGELOG-1.x.md)
- [Commits](https://github.com/facebook/create-react-app/commits/react-dev-utils@9.0.4/packages/react-dev-utils)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-21 09:15:10 +00:00
dependabot-preview[bot]
9e3618fcea Bump terser-webpack-plugin from 2.0.1 to 2.1.0
Bumps [terser-webpack-plugin](https://github.com/webpack-contrib/terser-webpack-plugin) from 2.0.1 to 2.1.0.
- [Release notes](https://github.com/webpack-contrib/terser-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/terser-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/terser-webpack-plugin/compare/v2.0.1...v2.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-21 09:13:55 +00:00
dependabot-preview[bot]
4d0860fa91 Bump webpack-dev-server from 3.8.0 to 3.8.1
Bumps [webpack-dev-server](https://github.com/webpack/webpack-dev-server) from 3.8.0 to 3.8.1.
- [Release notes](https://github.com/webpack/webpack-dev-server/releases)
- [Changelog](https://github.com/webpack/webpack-dev-server/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.8.0...v3.8.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-21 09:13:09 +00:00
Francisco Hodge
78f01d4675 Updated devDependencies 2019-09-19 18:04:13 -04:00
dependabot-preview[bot]
4440b26a88 Merge pull request #231 from hodgef/dependabot/npm_and_yarn/css-loader-3.2.0 2019-09-14 09:20:59 +00:00
dependabot-preview[bot]
41c76b1b6e Merge pull request #230 from hodgef/dependabot/npm_and_yarn/eslint-6.4.0 2019-09-14 09:20:09 +00:00
dependabot-preview[bot]
d2a271c9f3 Merge pull request #229 from hodgef/dependabot/npm_and_yarn/webpack-4.40.2 2019-09-14 09:19:19 +00:00
dependabot-preview[bot]
a5af9cd47c Bump css-loader from 2.1.1 to 3.2.0
Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 2.1.1 to 3.2.0.
- [Release notes](https://github.com/webpack-contrib/css-loader/releases)
- [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/css-loader/compare/v2.1.1...v3.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-14 09:16:35 +00:00
dependabot-preview[bot]
1dcb7972f4 Bump eslint from 6.3.0 to 6.4.0
Bumps [eslint](https://github.com/eslint/eslint) from 6.3.0 to 6.4.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v6.3.0...v6.4.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-14 09:15:49 +00:00
dependabot-preview[bot]
771ef9876f Bump webpack from 4.39.3 to 4.40.2
Bumps [webpack](https://github.com/webpack/webpack) from 4.39.3 to 4.40.2.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v4.39.3...v4.40.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-14 09:14:52 +00:00
dependabot-preview[bot]
2a042fbaff Merge pull request #226 from hodgef/dependabot/npm_and_yarn/babel/preset-env-7.6.0 2019-09-07 09:27:11 +00:00
dependabot-preview[bot]
b2591e38e8 Merge pull request #225 from hodgef/dependabot/npm_and_yarn/terser-webpack-plugin-2.0.1 2019-09-07 09:20:57 +00:00
dependabot-preview[bot]
fc9054010c Bump @babel/preset-env from 7.5.5 to 7.6.0
Bumps [@babel/preset-env](https://github.com/babel/babel) from 7.5.5 to 7.6.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.5.5...v7.6.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-07 09:20:51 +00:00
dependabot-preview[bot]
ff2435abd8 Merge pull request #224 from hodgef/dependabot/npm_and_yarn/fs-extra-8.1.0 2019-09-07 09:20:19 +00:00
dependabot-preview[bot]
66491c60e5 Merge pull request #223 from hodgef/dependabot/npm_and_yarn/babel/core-7.6.0 2019-09-07 09:18:38 +00:00
dependabot-preview[bot]
1f4b7c2fac Merge pull request #222 from hodgef/dependabot/npm_and_yarn/jest-24.9.0 2019-09-07 09:17:53 +00:00
dependabot-preview[bot]
1ff5759591 Bump terser-webpack-plugin from 1.4.1 to 2.0.1
Bumps [terser-webpack-plugin](https://github.com/webpack-contrib/terser-webpack-plugin) from 1.4.1 to 2.0.1.
- [Release notes](https://github.com/webpack-contrib/terser-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/terser-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/terser-webpack-plugin/compare/v1.4.1...v2.0.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-07 09:16:08 +00:00
dependabot-preview[bot]
9517ea3e34 Bump fs-extra from 7.0.1 to 8.1.0
Bumps [fs-extra](https://github.com/jprichardson/node-fs-extra) from 7.0.1 to 8.1.0.
- [Release notes](https://github.com/jprichardson/node-fs-extra/releases)
- [Changelog](https://github.com/jprichardson/node-fs-extra/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jprichardson/node-fs-extra/compare/7.0.1...8.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-07 09:15:00 +00:00
dependabot-preview[bot]
98d5da1475 Bump @babel/core from 7.5.5 to 7.6.0
Bumps [@babel/core](https://github.com/babel/babel) from 7.5.5 to 7.6.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.5.5...v7.6.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-07 09:14:12 +00:00
dependabot-preview[bot]
fbdee610cd Bump jest from 24.8.0 to 24.9.0
Bumps [jest](https://github.com/facebook/jest) from 24.8.0 to 24.9.0.
- [Release notes](https://github.com/facebook/jest/releases)
- [Changelog](https://github.com/facebook/jest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/facebook/jest/compare/v24.8.0...v24.9.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-07 09:13:25 +00:00
dependabot-preview[bot]
234373e228 Merge pull request #218 from hodgef/dependabot/npm_and_yarn/webpack-4.39.3 2019-08-31 09:40:30 +00:00
dependabot-preview[bot]
e0e932cc06 Merge pull request #213 from hodgef/dependabot/npm_and_yarn/eslint-6.3.0 2019-08-31 09:31:15 +00:00
dependabot-preview[bot]
6c5d6719b4 Bump webpack from 4.39.1 to 4.39.3
Bumps [webpack](https://github.com/webpack/webpack) from 4.39.1 to 4.39.3.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v4.39.1...v4.39.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-31 09:28:20 +00:00
dependabot-preview[bot]
554dfcb76b Bump eslint from 6.2.2 to 6.3.0
Bumps [eslint](https://github.com/eslint/eslint) from 6.2.2 to 6.3.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v6.2.2...v6.3.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-31 09:27:39 +00:00
dependabot-preview[bot]
a5b2fc2329 Merge pull request #220 from hodgef/dependabot/npm_and_yarn/ts-pnp-1.1.4 2019-08-31 09:26:02 +00:00
dependabot-preview[bot]
ea11244926 Merge pull request #215 from hodgef/dependabot/npm_and_yarn/eslint-loader-3.0.0 2019-08-31 09:25:21 +00:00
dependabot-preview[bot]
4852400915 Merge pull request #219 from hodgef/dependabot/npm_and_yarn/babel-eslint-10.0.3 2019-08-31 09:23:38 +00:00
dependabot-preview[bot]
5ee4f3fb28 Merge pull request #217 from hodgef/dependabot/npm_and_yarn/file-loader-4.2.0 2019-08-31 09:22:33 +00:00
dependabot-preview[bot]
fbc04e9e28 Bump ts-pnp from 1.1.2 to 1.1.4
Bumps [ts-pnp](https://github.com/arcanis/ts-pnp) from 1.1.2 to 1.1.4.
- [Release notes](https://github.com/arcanis/ts-pnp/releases)
- [Commits](https://github.com/arcanis/ts-pnp/compare/v1.1.2...v1.1.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-31 09:22:03 +00:00
dependabot-preview[bot]
52dedb669a Merge pull request #216 from hodgef/dependabot/npm_and_yarn/is-wsl-2.1.0 2019-08-31 09:21:34 +00:00
dependabot-preview[bot]
d52d580f7a Bump babel-eslint from 10.0.2 to 10.0.3
Bumps [babel-eslint](https://github.com/babel/babel-eslint) from 10.0.2 to 10.0.3.
- [Release notes](https://github.com/babel/babel-eslint/releases)
- [Commits](https://github.com/babel/babel-eslint/compare/v10.0.2...v10.0.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-31 09:19:37 +00:00
dependabot-preview[bot]
1513110de2 Merge pull request #214 from hodgef/dependabot/npm_and_yarn/postcss-normalize-8.0.1 2019-08-31 09:18:58 +00:00
dependabot-preview[bot]
c271643857 Bump file-loader from 3.0.1 to 4.2.0
Bumps [file-loader](https://github.com/webpack-contrib/file-loader) from 3.0.1 to 4.2.0.
- [Release notes](https://github.com/webpack-contrib/file-loader/releases)
- [Changelog](https://github.com/webpack-contrib/file-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/file-loader/compare/v3.0.1...v4.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-31 09:18:08 +00:00
dependabot-preview[bot]
475c4efc14 Bump is-wsl from 1.1.0 to 2.1.0
Bumps [is-wsl](https://github.com/sindresorhus/is-wsl) from 1.1.0 to 2.1.0.
- [Release notes](https://github.com/sindresorhus/is-wsl/releases)
- [Commits](https://github.com/sindresorhus/is-wsl/compare/v1.1.0...v2.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-31 09:17:22 +00:00
dependabot-preview[bot]
2c7424c449 Bump eslint-loader from 2.2.1 to 3.0.0
Bumps [eslint-loader](https://github.com/webpack-contrib/eslint-loader) from 2.2.1 to 3.0.0.
- [Release notes](https://github.com/webpack-contrib/eslint-loader/releases)
- [Changelog](https://github.com/webpack-contrib/eslint-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/eslint-loader/compare/v2.2.1...v3.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-31 09:16:18 +00:00
dependabot-preview[bot]
ac2bfe14b0 Bump postcss-normalize from 7.0.1 to 8.0.1
Bumps [postcss-normalize](https://github.com/csstools/postcss-normalize) from 7.0.1 to 8.0.1.
- [Release notes](https://github.com/csstools/postcss-normalize/releases)
- [Changelog](https://github.com/csstools/postcss-normalize/blob/master/CHANGELOG.md)
- [Commits](https://github.com/csstools/postcss-normalize/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-31 09:15:13 +00:00
dependabot-preview[bot]
ea61995b4c Merge pull request #208 from hodgef/dependabot/npm_and_yarn/eslint-6.2.2 2019-08-27 13:01:03 +00:00
dependabot-preview[bot]
36bd9b157c Bump eslint from 6.1.0 to 6.2.2
Bumps [eslint](https://github.com/eslint/eslint) from 6.1.0 to 6.2.2.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v6.1.0...v6.2.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-27 12:56:53 +00:00
Francisco Hodge
48bf0c2d13 Update main.yml 2019-08-27 08:49:18 -04:00
Francisco Hodge
a6db341a23 npm update 2019-08-26 23:36:12 -04:00
Francisco Hodge
3e479d55e1 Update README.md 2019-08-26 23:20:28 -04:00
Francisco Hodge
db753d7d38 Update and rename build.yml to main.yml 2019-08-26 22:58:34 -04:00
Francisco Hodge
d812186910 Update build.yml 2019-08-26 22:49:12 -04:00
Francisco Hodge
976a234874 Update and rename nodejs.yml to build.yml 2019-08-26 22:36:24 -04:00
Francisco Hodge
3624ff0d04 Update nodejs.yml 2019-08-26 22:08:17 -04:00
Francisco Hodge
5185977bcf Update nodejs.yml 2019-08-26 22:07:33 -04:00
Francisco Hodge
d8ec56bfd0 Update nodejs.yml 2019-08-26 22:05:41 -04:00
Francisco Hodge
6bf2267c54 Update nodejs.yml 2019-08-26 22:04:19 -04:00
Francisco Hodge
c9213b0673 Update nodejs.yml 2019-08-26 21:57:42 -04:00
Francisco Hodge
e70de0275f Update nodejs.yml 2019-08-26 21:54:54 -04:00
Francisco Hodge
68b4298a34 Update nodejs.yml 2019-08-26 21:22:31 -04:00
Francisco Hodge
76e6a29a36 Update nodejs.yml 2019-08-26 21:15:17 -04:00
Francisco Hodge
c786c169f6 Update nodejs.yml 2019-08-26 21:13:53 -04:00
Francisco Hodge
1940d6db03 Update nodejs.yml 2019-08-26 21:10:36 -04:00
Francisco Hodge
cda06005e5 Update nodejs.yml 2019-08-26 21:09:27 -04:00
Francisco Hodge
97448f126a Delete nodejs.yml 2019-08-26 21:07:42 -04:00
Francisco Hodge
a782deefea Testing Github CI 2019-08-26 21:02:07 -04:00
dependabot-preview[bot]
33bcf47f71 Merge pull request #211 from hodgef/dependabot/npm_and_yarn/eslint-utils-1.4.2 2019-08-26 18:39:49 +00:00
dependabot-preview[bot]
c6af491793 [Security] Bump eslint-utils from 1.4.0 to 1.4.2
Bumps [eslint-utils](https://github.com/mysticatea/eslint-utils) from 1.4.0 to 1.4.2. **This update includes a security fix.**
- [Release notes](https://github.com/mysticatea/eslint-utils/releases)
- [Commits](https://github.com/mysticatea/eslint-utils/compare/v1.4.0...v1.4.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-26 18:36:32 +00:00
dependabot-preview[bot]
baa56f1feb Merge pull request #209 from hodgef/dependabot/npm_and_yarn/dotenv-expand-5.1.0 2019-08-24 09:38:44 +00:00
dependabot-preview[bot]
b2189c17a7 Merge pull request #210 from hodgef/dependabot/npm_and_yarn/sass-loader-7.3.1 2019-08-24 09:35:27 +00:00
dependabot-preview[bot]
ea26742914 Merge pull request #204 from hodgef/dependabot/npm_and_yarn/jest-watch-typeahead-0.4.0 2019-08-24 09:33:05 +00:00
dependabot-preview[bot]
af09aa885e Bump dotenv-expand from 4.2.0 to 5.1.0
Bumps dotenv-expand from 4.2.0 to 5.1.0.

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-24 09:30:20 +00:00
dependabot-preview[bot]
4413e199cc Merge pull request #207 from hodgef/dependabot/npm_and_yarn/html-webpack-plugin-4.0.0-beta.8 2019-08-24 09:28:04 +00:00
dependabot-preview[bot]
57217d3025 Merge pull request #206 from hodgef/dependabot/npm_and_yarn/dotenv-8.1.0 2019-08-24 09:27:55 +00:00
dependabot-preview[bot]
987a1348a4 Merge pull request #205 from hodgef/dependabot/npm_and_yarn/webpack-dev-server-3.8.0 2019-08-24 09:24:47 +00:00
dependabot-preview[bot]
4d45bbdc90 Bump sass-loader from 7.2.0 to 7.3.1
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 7.2.0 to 7.3.1.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v7.2.0...v7.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-24 09:24:31 +00:00
dependabot-preview[bot]
de9565165d Bump jest-watch-typeahead from 0.3.1 to 0.4.0
Bumps [jest-watch-typeahead](https://github.com/jest-community/jest-watch-typeahead) from 0.3.1 to 0.4.0.
- [Release notes](https://github.com/jest-community/jest-watch-typeahead/releases)
- [Changelog](https://github.com/jest-community/jest-watch-typeahead/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jest-community/jest-watch-typeahead/compare/v0.3.1...v0.4.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-24 09:20:19 +00:00
dependabot-preview[bot]
a3471aa0c0 Merge pull request #203 from hodgef/dependabot/npm_and_yarn/mini-css-extract-plugin-0.8.0 2019-08-24 09:18:07 +00:00
dependabot-preview[bot]
8df40bc678 Bump html-webpack-plugin from 4.0.0-beta.5 to 4.0.0-beta.8
Bumps [html-webpack-plugin](https://github.com/jantimon/html-webpack-plugin) from 4.0.0-beta.5 to 4.0.0-beta.8.
- [Release notes](https://github.com/jantimon/html-webpack-plugin/releases)
- [Changelog](https://github.com/jantimon/html-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jantimon/html-webpack-plugin/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-24 09:16:39 +00:00
dependabot-preview[bot]
a4d376f289 Bump dotenv from 6.2.0 to 8.1.0
Bumps [dotenv](https://github.com/motdotla/dotenv) from 6.2.0 to 8.1.0.
- [Release notes](https://github.com/motdotla/dotenv/releases)
- [Changelog](https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md)
- [Commits](https://github.com/motdotla/dotenv/compare/v6.2.0...v8.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-24 09:15:53 +00:00
dependabot-preview[bot]
9f8380d2da Bump webpack-dev-server from 3.2.1 to 3.8.0
Bumps [webpack-dev-server](https://github.com/webpack/webpack-dev-server) from 3.2.1 to 3.8.0.
- [Release notes](https://github.com/webpack/webpack-dev-server/releases)
- [Changelog](https://github.com/webpack/webpack-dev-server/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.2.1...v3.8.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-24 09:15:10 +00:00
dependabot-preview[bot]
034dadcaf2 Bump mini-css-extract-plugin from 0.5.0 to 0.8.0
Bumps [mini-css-extract-plugin](https://github.com/webpack-contrib/mini-css-extract-plugin) from 0.5.0 to 0.8.0.
- [Release notes](https://github.com/webpack-contrib/mini-css-extract-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/mini-css-extract-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/mini-css-extract-plugin/compare/v0.5.0...v0.8.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-24 09:13:23 +00:00
Francisco Hodge
34d6d6a3f7 Fixed duplicate onKeyReleased type 2019-08-19 08:25:21 -04:00
Francisco Hodge
ba9c9a6a4e 2.26.1 2019-08-17 17:16:58 -04:00
Francisco Hodge
d186fb1e09 Optimization: Removing non-minified dist 2019-08-17 16:27:06 -04:00
Francisco Hodge
29677485a9 2.25.4 2019-08-17 16:06:15 -04:00
Francisco Hodge
37ade80dd6 2.25.4 2019-08-17 16:05:07 -04:00
Francisco Hodge
eab88f7de3 Merge 2019-08-17 15:39:38 -04:00
dependabot-preview[bot]
26e6747b0f Merge pull request #200 from hodgef/dependabot/npm_and_yarn/jest-24.9.0 2019-08-17 09:40:05 +00:00
dependabot-preview[bot]
88c462ddf3 Bump jest from 24.8.0 to 24.9.0
Bumps [jest](https://github.com/facebook/jest) from 24.8.0 to 24.9.0.
- [Release notes](https://github.com/facebook/jest/releases)
- [Changelog](https://github.com/facebook/jest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/facebook/jest/compare/v24.8.0...v24.9.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-17 09:34:58 +00:00
dependabot-preview[bot]
5452367733 Merge pull request #201 from hodgef/dependabot/npm_and_yarn/babel-jest-24.9.0 2019-08-17 09:32:34 +00:00
dependabot-preview[bot]
bdbf82828d Merge pull request #199 from hodgef/dependabot/npm_and_yarn/jest-resolve-24.9.0 2019-08-17 09:30:09 +00:00
dependabot-preview[bot]
e4b3622291 Merge pull request #198 from hodgef/dependabot/npm_and_yarn/webpack-4.39.2 2019-08-17 09:23:11 +00:00
dependabot-preview[bot]
181dd240a0 Merge pull request #197 from hodgef/dependabot/npm_and_yarn/react-dev-utils-9.0.3 2019-08-17 09:17:49 +00:00
dependabot-preview[bot]
628d27cf18 Bump babel-jest from 24.8.0 to 24.9.0
Bumps [babel-jest](https://github.com/facebook/jest/tree/HEAD/packages/babel-jest) from 24.8.0 to 24.9.0.
- [Release notes](https://github.com/facebook/jest/releases)
- [Changelog](https://github.com/facebook/jest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/facebook/jest/commits/v24.9.0/packages/babel-jest)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-17 09:17:45 +00:00
dependabot-preview[bot]
de8dd3f204 Bump jest-resolve from 24.8.0 to 24.9.0
Bumps [jest-resolve](https://github.com/facebook/jest/tree/HEAD/packages/jest-resolve) from 24.8.0 to 24.9.0.
- [Release notes](https://github.com/facebook/jest/releases)
- [Changelog](https://github.com/facebook/jest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/facebook/jest/commits/v24.9.0/packages/jest-resolve)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-17 09:15:30 +00:00
dependabot-preview[bot]
c696606b11 Bump webpack from 4.39.1 to 4.39.2
Bumps [webpack](https://github.com/webpack/webpack) from 4.39.1 to 4.39.2.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v4.39.1...v4.39.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-17 09:13:47 +00:00
dependabot-preview[bot]
9e17a1e0df Bump react-dev-utils from 9.0.2 to 9.0.3
Bumps [react-dev-utils](https://github.com/facebook/create-react-app/tree/HEAD/packages/react-dev-utils) from 9.0.2 to 9.0.3.
- [Release notes](https://github.com/facebook/create-react-app/releases)
- [Changelog](https://github.com/facebook/create-react-app/blob/master/CHANGELOG-1.x.md)
- [Commits](https://github.com/facebook/create-react-app/commits/react-dev-utils@9.0.3/packages/react-dev-utils)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-17 09:13:02 +00:00
Francisco Hodge
d1c9a0ead7 npm update 2019-08-13 11:18:50 -04:00
Francisco Hodge
b054ee45a3 Update README.md 2019-08-13 11:14:44 -04:00
Francisco Hodge
c459ab60c1 npm update 2019-08-13 01:35:41 -04:00
Francisco Hodge
f2c690e010 Update README.md 2019-08-13 01:28:28 -04:00
Francisco Hodge
e567c3f19b Update README.md 2019-08-13 01:19:13 -04:00
Francisco Hodge
e6f8f47975 npm update 2019-08-11 21:09:51 -04:00
Francisco Hodge
0541693901 Build update 2019-08-11 20:28:04 -04:00
Francisco Hodge
cb598712c6 npm update 2019-08-11 20:24:37 -04:00
Francisco Hodge
020aa04894 Types update 2019-08-11 20:24:12 -04:00
Francisco Hodge
618800f455 Tests update 2019-08-11 20:23:59 -04:00
Francisco Hodge
74bb07d46a Added ButtonTheme/ButtonAttributes demo 2019-08-11 20:23:42 -04:00
Francisco Hodge
f158a603c9 Added buttonAttributes option. Improved buttonTheme handling. Cleanup. Fixes #196 2019-08-11 20:21:21 -04:00
Francisco Hodge
23da05ee60 Build update 2019-08-11 00:15:13 -04:00
Francisco Hodge
331687de5b Added types for caretPosition 2019-08-11 00:08:30 -04:00
dependabot-preview[bot]
1ac8bf00ef Merge pull request #195 from hodgef/dependabot/npm_and_yarn/react-16.9.0 2019-08-10 10:03:34 +00:00
dependabot-preview[bot]
eb68681f2a Bump react from 16.8.6 to 16.9.0
Bumps [react](https://github.com/facebook/react/tree/HEAD/packages/react) from 16.8.6 to 16.9.0.
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/v16.9.0/packages/react)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-10 09:58:30 +00:00
dependabot-preview[bot]
312c9db7f7 Merge pull request #193 from hodgef/dependabot/npm_and_yarn/react-dev-utils-9.0.2 2019-08-10 09:56:18 +00:00
dependabot-preview[bot]
7317ae147e Merge pull request #190 from hodgef/dependabot/npm_and_yarn/babel-preset-react-app-9.0.1 2019-08-10 09:51:33 +00:00
dependabot-preview[bot]
a4c0b824ea Merge pull request #194 from hodgef/dependabot/npm_and_yarn/eslint-plugin-react-hooks-1.7.0 2019-08-10 09:51:25 +00:00
dependabot-preview[bot]
a23b1ab6cd Bump react-dev-utils from 9.0.1 to 9.0.2
Bumps [react-dev-utils](https://github.com/facebook/create-react-app/tree/HEAD/packages/react-dev-utils) from 9.0.1 to 9.0.2.
- [Release notes](https://github.com/facebook/create-react-app/releases)
- [Changelog](https://github.com/facebook/create-react-app/blob/master/CHANGELOG-1.x.md)
- [Commits](https://github.com/facebook/create-react-app/commits/react-dev-utils@9.0.2/packages/react-dev-utils)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-10 09:49:05 +00:00
dependabot-preview[bot]
485ae27dad Merge pull request #191 from hodgef/dependabot/npm_and_yarn/sass-loader-7.2.0 2019-08-10 09:46:59 +00:00
dependabot-preview[bot]
ed9c0744bd Merge pull request #192 from hodgef/dependabot/npm_and_yarn/webpack-dev-server-3.8.0 2019-08-10 09:41:10 +00:00
dependabot-preview[bot]
bc24494ec1 Bump eslint-plugin-react-hooks from 1.6.1 to 1.7.0
Bumps [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) from 1.6.1 to 1.7.0.
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/HEAD/packages/eslint-plugin-react-hooks)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-10 09:34:43 +00:00
dependabot-preview[bot]
9952ecd8be Merge pull request #189 from hodgef/dependabot/npm_and_yarn/file-loader-4.2.0 2019-08-10 09:32:35 +00:00
dependabot-preview[bot]
419ca818a1 Merge pull request #188 from hodgef/dependabot/npm_and_yarn/babel-plugin-named-asset-import-0.3.3 2019-08-10 09:31:40 +00:00
dependabot-preview[bot]
cab2599dd1 Bump babel-preset-react-app from 9.0.0 to 9.0.1
Bumps [babel-preset-react-app](https://github.com/facebook/create-react-app/tree/HEAD/packages/babel-preset-react-app) from 9.0.0 to 9.0.1.
- [Release notes](https://github.com/facebook/create-react-app/releases)
- [Changelog](https://github.com/facebook/create-react-app/blob/master/CHANGELOG-1.x.md)
- [Commits](https://github.com/facebook/create-react-app/commits/babel-preset-react-app@9.0.1/packages/babel-preset-react-app)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-10 09:30:15 +00:00
dependabot-preview[bot]
c59251694d Merge pull request #187 from hodgef/dependabot/npm_and_yarn/css-loader-3.2.0 2019-08-10 09:28:05 +00:00
dependabot-preview[bot]
e333ebacde Merge pull request #186 from hodgef/dependabot/npm_and_yarn/react-app-polyfill-1.0.2 2019-08-10 09:27:16 +00:00
dependabot-preview[bot]
71b5af63b8 Bump sass-loader from 7.1.0 to 7.2.0
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 7.1.0 to 7.2.0.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v7.1.0...v7.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-10 09:25:57 +00:00
dependabot-preview[bot]
a24bcc4775 Merge pull request #185 from hodgef/dependabot/npm_and_yarn/style-loader-1.0.0 2019-08-10 09:23:35 +00:00
dependabot-preview[bot]
fa984e93e8 Bump webpack-dev-server from 3.7.2 to 3.8.0
Bumps [webpack-dev-server](https://github.com/webpack/webpack-dev-server) from 3.7.2 to 3.8.0.
- [Release notes](https://github.com/webpack/webpack-dev-server/releases)
- [Changelog](https://github.com/webpack/webpack-dev-server/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.7.2...v3.8.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-10 09:20:46 +00:00
dependabot-preview[bot]
42be0e3f86 Bump file-loader from 4.1.0 to 4.2.0
Bumps [file-loader](https://github.com/webpack-contrib/file-loader) from 4.1.0 to 4.2.0.
- [Release notes](https://github.com/webpack-contrib/file-loader/releases)
- [Changelog](https://github.com/webpack-contrib/file-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/file-loader/compare/v4.1.0...v4.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-10 09:17:28 +00:00
dependabot-preview[bot]
e59afc0b0c Merge pull request #184 from hodgef/dependabot/npm_and_yarn/react-dom-16.9.0 2019-08-10 09:17:19 +00:00
dependabot-preview[bot]
96eaa2c1d3 Bump babel-plugin-named-asset-import from 0.3.2 to 0.3.3
Bumps [babel-plugin-named-asset-import](https://github.com/facebook/create-react-app/tree/HEAD/packages/babel-plugin-named-asset-import) from 0.3.2 to 0.3.3.
- [Release notes](https://github.com/facebook/create-react-app/releases)
- [Changelog](https://github.com/facebook/create-react-app/blob/master/CHANGELOG-1.x.md)
- [Commits](https://github.com/facebook/create-react-app/commits/babel-plugin-named-asset-import@0.3.3/packages/babel-plugin-named-asset-import)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-10 09:17:03 +00:00
dependabot-preview[bot]
983d27c11c Bump css-loader from 3.1.0 to 3.2.0
Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 3.1.0 to 3.2.0.
- [Release notes](https://github.com/webpack-contrib/css-loader/releases)
- [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/css-loader/compare/v3.1.0...v3.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-10 09:15:55 +00:00
dependabot-preview[bot]
cb67a69f9d Bump react-app-polyfill from 1.0.1 to 1.0.2
Bumps [react-app-polyfill](https://github.com/facebook/create-react-app/tree/HEAD/packages/react-app-polyfill) from 1.0.1 to 1.0.2.
- [Release notes](https://github.com/facebook/create-react-app/releases)
- [Changelog](https://github.com/facebook/create-react-app/blob/master/CHANGELOG-1.x.md)
- [Commits](https://github.com/facebook/create-react-app/commits/react-app-polyfill@1.0.2/packages/react-app-polyfill)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-10 09:15:12 +00:00
dependabot-preview[bot]
abc03918be Bump style-loader from 0.23.1 to 1.0.0
Bumps [style-loader](https://github.com/webpack-contrib/style-loader) from 0.23.1 to 1.0.0.
- [Release notes](https://github.com/webpack-contrib/style-loader/releases)
- [Changelog](https://github.com/webpack-contrib/style-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/style-loader/compare/v0.23.1...v1.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-10 09:14:21 +00:00
dependabot-preview[bot]
8029e1fce9 Bump react-dom from 16.8.6 to 16.9.0
Bumps [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) from 16.8.6 to 16.9.0.
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/v16.9.0/packages/react-dom)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-10 09:13:36 +00:00
dependabot-preview[bot]
946fdbb417 Merge pull request #181 from hodgef/dependabot/npm_and_yarn/resolve-1.12.0 2019-08-03 09:47:25 +00:00
dependabot-preview[bot]
f5ceef195e Bump resolve from 1.11.1 to 1.12.0
Bumps [resolve](https://github.com/browserify/resolve) from 1.11.1 to 1.12.0.
- [Release notes](https://github.com/browserify/resolve/releases)
- [Commits](https://github.com/browserify/resolve/compare/v1.11.1...v1.12.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-03 09:36:40 +00:00
dependabot-preview[bot]
82ad303159 Merge pull request #182 from hodgef/dependabot/npm_and_yarn/terser-webpack-plugin-1.4.1 2019-08-03 09:36:03 +00:00
dependabot-preview[bot]
75d8167fad Merge pull request #183 from hodgef/dependabot/npm_and_yarn/uglifyjs-webpack-plugin-2.2.0 2019-08-03 09:34:38 +00:00
dependabot-preview[bot]
32af9739be Merge pull request #180 from hodgef/dependabot/npm_and_yarn/eslint-plugin-flowtype-3.13.0 2019-08-03 09:26:34 +00:00
dependabot-preview[bot]
89c8e39d0c Bump terser-webpack-plugin from 1.3.0 to 1.4.1
Bumps [terser-webpack-plugin](https://github.com/webpack-contrib/terser-webpack-plugin) from 1.3.0 to 1.4.1.
- [Release notes](https://github.com/webpack-contrib/terser-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/terser-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/terser-webpack-plugin/compare/v1.3.0...v1.4.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-03 09:24:21 +00:00
dependabot-preview[bot]
434215cdef Bump uglifyjs-webpack-plugin from 2.1.3 to 2.2.0
Bumps [uglifyjs-webpack-plugin](https://github.com/webpack-contrib/uglifyjs-webpack-plugin) from 2.1.3 to 2.2.0.
- [Release notes](https://github.com/webpack-contrib/uglifyjs-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/uglifyjs-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/uglifyjs-webpack-plugin/compare/v2.1.3...v2.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-03 09:24:03 +00:00
dependabot-preview[bot]
e513c8b49a Merge pull request #179 from hodgef/dependabot/npm_and_yarn/webpack-4.39.1 2019-08-03 09:21:58 +00:00
dependabot-preview[bot]
6fa48db14e Bump eslint-plugin-flowtype from 3.10.4 to 3.13.0
Bumps [eslint-plugin-flowtype](https://github.com/gajus/eslint-plugin-flowtype) from 3.10.4 to 3.13.0.
- [Release notes](https://github.com/gajus/eslint-plugin-flowtype/releases)
- [Commits](https://github.com/gajus/eslint-plugin-flowtype/compare/v3.10.4...v3.13.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-03 09:14:03 +00:00
dependabot-preview[bot]
d29f82e1ed Bump webpack from 4.38.0 to 4.39.1
Bumps [webpack](https://github.com/webpack/webpack) from 4.38.0 to 4.39.1.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v4.38.0...v4.39.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-03 09:13:09 +00:00
Francisco Hodge
4b77a07565 Build update 2019-07-31 21:04:51 -04:00
dependabot-preview[bot]
4af477f749 Merge pull request #178 from hodgef/dependabot/npm_and_yarn/typescript-eslint/parser-1.13.0 2019-07-27 09:34:56 +00:00
dependabot-preview[bot]
f9439493d2 Merge pull request #177 from hodgef/dependabot/npm_and_yarn/semver-6.3.0 2019-07-27 09:28:58 +00:00
dependabot-preview[bot]
c23ff225c0 Bump @typescript-eslint/parser from 1.12.0 to 1.13.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 1.12.0 to 1.13.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v1.13.0/packages/parser)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-27 09:28:05 +00:00
dependabot-preview[bot]
cda4e404f5 Merge pull request #176 from hodgef/dependabot/npm_and_yarn/copy-webpack-plugin-5.0.4 2019-07-27 09:26:03 +00:00
dependabot-preview[bot]
f2c4d2d3df Merge pull request #175 from hodgef/dependabot/npm_and_yarn/typescript-eslint/eslint-plugin-1.13.0 2019-07-27 09:24:03 +00:00
dependabot-preview[bot]
dd73ebaaa9 Merge pull request #173 from hodgef/dependabot/npm_and_yarn/eslint-plugin-react-7.14.3 2019-07-27 09:21:51 +00:00
dependabot-preview[bot]
7e2f5ac61d Merge pull request #174 from hodgef/dependabot/npm_and_yarn/webpack-4.38.0 2019-07-27 09:20:26 +00:00
dependabot-preview[bot]
988871a5f8 Bump semver from 6.2.0 to 6.3.0
Bumps [semver](https://github.com/npm/node-semver) from 6.2.0 to 6.3.0.
- [Release notes](https://github.com/npm/node-semver/releases)
- [Changelog](https://github.com/npm/node-semver/blob/master/CHANGELOG.md)
- [Commits](https://github.com/npm/node-semver/compare/v6.2.0...v6.3.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-27 09:16:55 +00:00
dependabot-preview[bot]
d79cf5a591 Bump copy-webpack-plugin from 5.0.3 to 5.0.4
Bumps [copy-webpack-plugin](https://github.com/webpack-contrib/copy-webpack-plugin) from 5.0.3 to 5.0.4.
- [Release notes](https://github.com/webpack-contrib/copy-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/copy-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/copy-webpack-plugin/compare/v5.0.3...v5.0.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-27 09:15:48 +00:00
dependabot-preview[bot]
d8745a31c7 Bump @typescript-eslint/eslint-plugin from 1.12.0 to 1.13.0
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 1.12.0 to 1.13.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v1.13.0/packages/eslint-plugin)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-27 09:15:02 +00:00
dependabot-preview[bot]
2888562b65 Bump webpack from 4.36.1 to 4.38.0
Bumps [webpack](https://github.com/webpack/webpack) from 4.36.1 to 4.38.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v4.36.1...v4.38.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-27 09:14:14 +00:00
dependabot-preview[bot]
83367c56cd Bump eslint-plugin-react from 7.14.2 to 7.14.3
Bumps [eslint-plugin-react](https://github.com/yannickcr/eslint-plugin-react) from 7.14.2 to 7.14.3.
- [Release notes](https://github.com/yannickcr/eslint-plugin-react/releases)
- [Changelog](https://github.com/yannickcr/eslint-plugin-react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/yannickcr/eslint-plugin-react/compare/v7.14.2...v7.14.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-27 09:13:28 +00:00
dependabot-preview[bot]
258d410dee Merge pull request #168 from hodgef/dependabot/npm_and_yarn/babel/core-7.5.5 2019-07-20 10:04:16 +00:00
dependabot-preview[bot]
2b06589259 Merge pull request #167 from hodgef/dependabot/npm_and_yarn/html-webpack-plugin-4.0.0-beta.8 2019-07-20 10:01:15 +00:00
dependabot-preview[bot]
f83b592a61 Merge pull request #165 from hodgef/dependabot/npm_and_yarn/url-loader-2.1.0 2019-07-20 10:00:54 +00:00
dependabot-preview[bot]
7a2fc73ac3 Merge pull request #170 from hodgef/dependabot/npm_and_yarn/mini-css-extract-plugin-0.8.0 2019-07-20 09:55:06 +00:00
dependabot-preview[bot]
ae70a518e5 Merge pull request #169 from hodgef/dependabot/npm_and_yarn/css-loader-3.1.0 2019-07-20 09:54:43 +00:00
dependabot-preview[bot]
5f5ba69277 Bump @babel/core from 7.5.4 to 7.5.5
Bumps [@babel/core](https://github.com/babel/babel) from 7.5.4 to 7.5.5.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.5.4...v7.5.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-20 09:50:15 +00:00
dependabot-preview[bot]
f08e9d1031 Merge pull request #166 from hodgef/dependabot/npm_and_yarn/svgr/webpack-4.3.2 2019-07-20 09:48:11 +00:00
dependabot-preview[bot]
dbd4d3d7d2 Merge pull request #164 from hodgef/dependabot/npm_and_yarn/babel/plugin-proposal-class-properties-7.5.5 2019-07-20 09:45:57 +00:00
dependabot-preview[bot]
d8a350ae01 Merge pull request #163 from hodgef/dependabot/npm_and_yarn/babel/runtime-7.5.5 2019-07-20 09:41:30 +00:00
dependabot-preview[bot]
ce50ab2c4e Merge pull request #162 from hodgef/dependabot/npm_and_yarn/babel/preset-env-7.5.5 2019-07-20 09:35:12 +00:00
dependabot-preview[bot]
f16a3c7eff Bump html-webpack-plugin from 4.0.0-beta.7 to 4.0.0-beta.8
Bumps [html-webpack-plugin](https://github.com/jantimon/html-webpack-plugin) from 4.0.0-beta.7 to 4.0.0-beta.8.
- [Release notes](https://github.com/jantimon/html-webpack-plugin/releases)
- [Changelog](https://github.com/jantimon/html-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jantimon/html-webpack-plugin/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-20 09:35:05 +00:00
dependabot-preview[bot]
35cede2de1 Merge pull request #161 from hodgef/dependabot/npm_and_yarn/file-loader-4.1.0 2019-07-20 09:32:49 +00:00
dependabot-preview[bot]
d05bdd600b Bump url-loader from 2.0.1 to 2.1.0
Bumps [url-loader](https://github.com/webpack-contrib/url-loader) from 2.0.1 to 2.1.0.
- [Release notes](https://github.com/webpack-contrib/url-loader/releases)
- [Changelog](https://github.com/webpack-contrib/url-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/url-loader/compare/v2.0.1...v2.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-20 09:25:46 +00:00
dependabot-preview[bot]
c4ebf1ada0 Merge pull request #160 from hodgef/dependabot/npm_and_yarn/webpack-4.36.1 2019-07-20 09:23:34 +00:00
dependabot-preview[bot]
fa7b7c0f59 Bump mini-css-extract-plugin from 0.7.0 to 0.8.0
Bumps [mini-css-extract-plugin](https://github.com/webpack-contrib/mini-css-extract-plugin) from 0.7.0 to 0.8.0.
- [Release notes](https://github.com/webpack-contrib/mini-css-extract-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/mini-css-extract-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/mini-css-extract-plugin/compare/v0.7.0...v0.8.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-20 09:22:25 +00:00
dependabot-preview[bot]
3188c5859d Bump css-loader from 3.0.0 to 3.1.0
Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 3.0.0 to 3.1.0.
- [Release notes](https://github.com/webpack-contrib/css-loader/releases)
- [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/css-loader/compare/v3.0.0...v3.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-20 09:21:43 +00:00
dependabot-preview[bot]
c9cb6cfbb3 Bump @svgr/webpack from 4.3.1 to 4.3.2
Bumps [@svgr/webpack](https://github.com/smooth-code/svgr) from 4.3.1 to 4.3.2.
- [Release notes](https://github.com/smooth-code/svgr/releases)
- [Changelog](https://github.com/smooth-code/svgr/blob/master/CHANGELOG.md)
- [Commits](https://github.com/smooth-code/svgr/compare/v4.3.1...v4.3.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-20 09:19:14 +00:00
dependabot-preview[bot]
fdee26e841 Merge pull request #159 from hodgef/dependabot/npm_and_yarn/eslint-plugin-import-2.18.2 2019-07-20 09:19:13 +00:00
dependabot-preview[bot]
1384b6e0ff Bump @babel/plugin-proposal-class-properties from 7.5.0 to 7.5.5
Bumps [@babel/plugin-proposal-class-properties](https://github.com/babel/babel) from 7.5.0 to 7.5.5.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.5.0...v7.5.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-20 09:17:50 +00:00
dependabot-preview[bot]
36163aceec Bump @babel/runtime from 7.5.4 to 7.5.5
Bumps [@babel/runtime](https://github.com/babel/babel) from 7.5.4 to 7.5.5.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.5.4...v7.5.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-20 09:17:10 +00:00
dependabot-preview[bot]
80919dd755 Bump @babel/preset-env from 7.5.4 to 7.5.5
Bumps [@babel/preset-env](https://github.com/babel/babel) from 7.5.4 to 7.5.5.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.5.4...v7.5.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-20 09:16:24 +00:00
dependabot-preview[bot]
2197bb3abc Bump file-loader from 4.0.0 to 4.1.0
Bumps [file-loader](https://github.com/webpack-contrib/file-loader) from 4.0.0 to 4.1.0.
- [Release notes](https://github.com/webpack-contrib/file-loader/releases)
- [Changelog](https://github.com/webpack-contrib/file-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/file-loader/compare/v4.0.0...v4.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-20 09:15:38 +00:00
dependabot-preview[bot]
3a7088ec20 Bump webpack from 4.35.3 to 4.36.1
Bumps [webpack](https://github.com/webpack/webpack) from 4.35.3 to 4.36.1.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v4.35.3...v4.36.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-20 09:14:37 +00:00
dependabot-preview[bot]
cba9754672 Bump eslint-plugin-import from 2.18.0 to 2.18.2
Bumps [eslint-plugin-import](https://github.com/benmosher/eslint-plugin-import) from 2.18.0 to 2.18.2.
- [Release notes](https://github.com/benmosher/eslint-plugin-import/releases)
- [Changelog](https://github.com/benmosher/eslint-plugin-import/blob/master/CHANGELOG.md)
- [Commits](https://github.com/benmosher/eslint-plugin-import/compare/v2.18.0...v2.18.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-20 09:13:56 +00:00
Francisco Hodge
f251e6ee35 Build update 2019-07-14 18:05:43 -04:00
Francisco Hodge
2113229d61 Merge remote-tracking branch 'origin' into staging 2019-07-14 17:11:32 -04:00
Francisco Hodge
460633a00d Build update 2019-07-14 17:09:48 -04:00
Francisco Hodge
d4e9f51182 Return button in onKeyReleased method. Tests updated. Fixes #145 2019-07-14 11:55:03 -04:00
Francisco Hodge
8ba6f879d0 Code optimization, added onKeyReleased. Fixes #144, #145 2019-07-14 11:27:18 -04:00
Francisco Hodge
16f26bd6d9 Code optimization, added onKeyReleased 2019-07-14 11:06:43 -04:00
Francisco Hodge
5239521964 Code optimization, added onKeyReleased 2019-07-14 01:08:51 -04:00
dependabot-preview[bot]
b0a7748351 Merge pull request #149 from hodgef/dependabot/npm_and_yarn/babel/runtime-7.5.4 2019-07-13 09:52:06 +00:00
dependabot-preview[bot]
9f42786deb Bump @babel/runtime from 7.5.1 to 7.5.4
Bumps [@babel/runtime](https://github.com/babel/babel) from 7.5.1 to 7.5.4.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.5.1...v7.5.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-13 09:48:07 +00:00
dependabot-preview[bot]
910a9f5292 Merge pull request #152 from hodgef/dependabot/npm_and_yarn/typescript-eslint/parser-1.12.0 2019-07-13 09:45:55 +00:00
dependabot-preview[bot]
3ad37394f2 Merge pull request #150 from hodgef/dependabot/npm_and_yarn/webpack-4.35.3 2019-07-13 09:44:40 +00:00
dependabot-preview[bot]
2bc496e370 Merge pull request #153 from hodgef/dependabot/npm_and_yarn/babel/core-7.5.4 2019-07-13 09:37:36 +00:00
dependabot-preview[bot]
f6104e214f Merge pull request #151 from hodgef/dependabot/npm_and_yarn/babel/preset-env-7.5.4 2019-07-13 09:33:40 +00:00
dependabot-preview[bot]
26ce879b3a Bump @typescript-eslint/parser from 1.11.0 to 1.12.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 1.11.0 to 1.12.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v1.12.0/packages/parser)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-13 09:31:03 +00:00
dependabot-preview[bot]
4b68c236e2 Bump webpack from 4.35.2 to 4.35.3
Bumps [webpack](https://github.com/webpack/webpack) from 4.35.2 to 4.35.3.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v4.35.2...v4.35.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-13 09:30:53 +00:00
dependabot-preview[bot]
04705619a4 Merge pull request #148 from hodgef/dependabot/npm_and_yarn/typescript-eslint/eslint-plugin-1.12.0 2019-07-13 09:28:51 +00:00
dependabot-preview[bot]
ab1facf287 Merge pull request #147 from hodgef/dependabot/npm_and_yarn/html-webpack-plugin-4.0.0-beta.7 2019-07-13 09:24:26 +00:00
dependabot-preview[bot]
30c95a8264 Bump @babel/core from 7.5.0 to 7.5.4
Bumps [@babel/core](https://github.com/babel/babel) from 7.5.0 to 7.5.4.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.5.0...v7.5.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-13 09:20:13 +00:00
dependabot-preview[bot]
07ac2fef5a Bump @babel/preset-env from 7.5.0 to 7.5.4
Bumps [@babel/preset-env](https://github.com/babel/babel) from 7.5.0 to 7.5.4.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.5.0...v7.5.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-13 09:18:45 +00:00
dependabot-preview[bot]
665a120a0b Merge pull request #146 from hodgef/dependabot/npm_and_yarn/postcss-preset-env-6.7.0 2019-07-13 09:17:43 +00:00
dependabot-preview[bot]
be69873219 Bump @typescript-eslint/eslint-plugin from 1.11.0 to 1.12.0
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 1.11.0 to 1.12.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v1.12.0/packages/eslint-plugin)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-13 09:16:39 +00:00
dependabot-preview[bot]
a5281dba1c Bump html-webpack-plugin from 4.0.0-beta.5 to 4.0.0-beta.7
Bumps [html-webpack-plugin](https://github.com/jantimon/html-webpack-plugin) from 4.0.0-beta.5 to 4.0.0-beta.7.
- [Release notes](https://github.com/jantimon/html-webpack-plugin/releases)
- [Changelog](https://github.com/jantimon/html-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jantimon/html-webpack-plugin/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-13 09:15:58 +00:00
dependabot-preview[bot]
72733e57be Bump postcss-preset-env from 6.6.0 to 6.7.0
Bumps [postcss-preset-env](https://github.com/csstools/postcss-preset-env) from 6.6.0 to 6.7.0.
- [Release notes](https://github.com/csstools/postcss-preset-env/releases)
- [Changelog](https://github.com/csstools/postcss-preset-env/blob/master/CHANGELOG.md)
- [Commits](https://github.com/csstools/postcss-preset-env/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-13 09:15:11 +00:00
dependabot-preview[bot]
ea84c35e32 Merge pull request #143 from hodgef/dependabot/npm_and_yarn/lodash-4.17.14 2019-07-10 23:19:46 +00:00
dependabot-preview[bot]
bb36b32e5b [Security] Bump lodash from 4.17.11 to 4.17.14
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.11 to 4.17.14. **This update includes security fixes.**
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.11...4.17.14)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-10 23:17:04 +00:00
dependabot-preview[bot]
a44cca5ee9 Merge pull request #142 from hodgef/dependabot/npm_and_yarn/lodash.template-4.5.0 2019-07-10 20:46:04 +00:00
dependabot-preview[bot]
c9ec9716b7 [Security] Bump lodash.template from 4.4.0 to 4.5.0
Bumps [lodash.template](https://github.com/lodash/lodash) from 4.4.0 to 4.5.0. **This update includes security fixes.**
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.4.0...4.5.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-10 20:43:19 +00:00
Francisco Hodge
c49d6f858b Build update 2019-07-08 00:31:15 -04:00
Francisco Hodge
d4e54508f5 Removing active css styling for hg-button 2019-07-07 23:39:52 -04:00
dependabot-preview[bot]
b64a0383dc Merge pull request #140 from hodgef/dependabot/npm_and_yarn/babel/plugin-proposal-class-properties-7.5.0 2019-07-06 09:49:20 +00:00
dependabot-preview[bot]
d5adc5025c Merge pull request #138 from hodgef/dependabot/npm_and_yarn/semver-6.2.0 2019-07-06 09:48:47 +00:00
dependabot-preview[bot]
d39a2804cb Merge pull request #139 from hodgef/dependabot/npm_and_yarn/eslint-plugin-jsx-a11y-6.2.3 2019-07-06 09:46:44 +00:00
dependabot-preview[bot]
09c1f8b56a Merge pull request #141 from hodgef/dependabot/npm_and_yarn/svgr/webpack-4.3.1 2019-07-06 09:40:05 +00:00
dependabot-preview[bot]
dc01ad5e3a Bump @babel/plugin-proposal-class-properties from 7.4.4 to 7.5.0
Bumps [@babel/plugin-proposal-class-properties](https://github.com/babel/babel) from 7.4.4 to 7.5.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.4.4...v7.5.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-06 09:37:20 +00:00
dependabot-preview[bot]
c3a565fd20 Bump semver from 6.1.2 to 6.2.0
Bumps [semver](https://github.com/npm/node-semver) from 6.1.2 to 6.2.0.
- [Release notes](https://github.com/npm/node-semver/releases)
- [Changelog](https://github.com/npm/node-semver/blob/master/CHANGELOG.md)
- [Commits](https://github.com/npm/node-semver/compare/v6.1.2...v6.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-06 09:37:18 +00:00
dependabot-preview[bot]
3cf2764001 Merge pull request #137 from hodgef/dependabot/npm_and_yarn/babel/core-7.5.0 2019-07-06 09:35:07 +00:00
dependabot-preview[bot]
fe3a012f7f Merge pull request #136 from hodgef/dependabot/npm_and_yarn/babel/runtime-7.5.1 2019-07-06 09:32:33 +00:00
dependabot-preview[bot]
70cb19f1ef Bump eslint-plugin-jsx-a11y from 6.2.1 to 6.2.3
Bumps [eslint-plugin-jsx-a11y](https://github.com/evcohen/eslint-plugin-jsx-a11y) from 6.2.1 to 6.2.3.
- [Release notes](https://github.com/evcohen/eslint-plugin-jsx-a11y/releases)
- [Changelog](https://github.com/evcohen/eslint-plugin-jsx-a11y/blob/master/CHANGELOG.md)
- [Commits](https://github.com/evcohen/eslint-plugin-jsx-a11y/compare/v6.2.1...v6.2.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-06 09:28:16 +00:00
dependabot-preview[bot]
316647bdac Merge pull request #135 from hodgef/dependabot/npm_and_yarn/eslint-loader-2.2.1 2019-07-06 09:26:11 +00:00
dependabot-preview[bot]
8e07afda65 Merge pull request #134 from hodgef/dependabot/npm_and_yarn/webpack-4.35.2 2019-07-06 09:21:20 +00:00
dependabot-preview[bot]
25f81ab1c7 Bump @svgr/webpack from 4.3.0 to 4.3.1
Bumps [@svgr/webpack](https://github.com/smooth-code/svgr) from 4.3.0 to 4.3.1.
- [Release notes](https://github.com/smooth-code/svgr/releases)
- [Changelog](https://github.com/smooth-code/svgr/blob/master/CHANGELOG.md)
- [Commits](https://github.com/smooth-code/svgr/compare/v4.3.0...v4.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-06 09:19:12 +00:00
dependabot-preview[bot]
78f578f787 Merge pull request #133 from hodgef/dependabot/npm_and_yarn/babel/preset-env-7.5.0 2019-07-06 09:16:41 +00:00
dependabot-preview[bot]
692f773c31 Bump @babel/core from 7.4.5 to 7.5.0
Bumps [@babel/core](https://github.com/babel/babel) from 7.4.5 to 7.5.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.4.5...v7.5.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-06 09:15:59 +00:00
dependabot-preview[bot]
b95670e8c4 Bump @babel/runtime from 7.4.5 to 7.5.1
Bumps [@babel/runtime](https://github.com/babel/babel) from 7.4.5 to 7.5.1.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.4.5...v7.5.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-06 09:15:21 +00:00
dependabot-preview[bot]
c4c1e8b181 Bump eslint-loader from 2.1.2 to 2.2.1
Bumps [eslint-loader](https://github.com/webpack-contrib/eslint-loader) from 2.1.2 to 2.2.1.
- [Release notes](https://github.com/webpack-contrib/eslint-loader/releases)
- [Changelog](https://github.com/webpack-contrib/eslint-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/eslint-loader/compare/2.1.2...v2.2.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-06 09:14:39 +00:00
dependabot-preview[bot]
9e8b28b124 Bump webpack from 4.35.0 to 4.35.2
Bumps [webpack](https://github.com/webpack/webpack) from 4.35.0 to 4.35.2.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v4.35.0...v4.35.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-06 09:14:00 +00:00
dependabot-preview[bot]
665262bf93 Bump @babel/preset-env from 7.4.5 to 7.5.0
Bumps [@babel/preset-env](https://github.com/babel/babel) from 7.4.5 to 7.5.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.4.5...v7.5.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-06 09:13:22 +00:00
dependabot-preview[bot]
5830c34263 Merge pull request #127 from hodgef/dependabot/npm_and_yarn/eslint-plugin-react-hooks-1.6.1 2019-06-29 09:52:43 +00:00
dependabot-preview[bot]
458e7be599 Merge pull request #129 from hodgef/dependabot/npm_and_yarn/@typescript-eslint/eslint-plugin-1.11.0 2019-06-29 09:48:42 +00:00
dependabot-preview[bot]
9e96f186c8 Bump eslint-plugin-react-hooks from 1.6.0 to 1.6.1
Bumps [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) from 1.6.0 to 1.6.1.
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/HEAD/packages/eslint-plugin-react-hooks)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-29 09:46:46 +00:00
dependabot-preview[bot]
f2169a4cd0 Merge pull request #126 from hodgef/dependabot/npm_and_yarn/eslint-plugin-react-7.14.2 2019-06-29 09:44:40 +00:00
dependabot-preview[bot]
003d44325c Merge pull request #130 from hodgef/dependabot/npm_and_yarn/semver-6.1.2 2019-06-29 09:36:56 +00:00
dependabot-preview[bot]
e193745029 Bump @typescript-eslint/eslint-plugin from 1.10.2 to 1.11.0
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 1.10.2 to 1.11.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v1.11.0/packages/eslint-plugin)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-29 09:34:47 +00:00
dependabot-preview[bot]
dfa4686be6 Merge pull request #128 from hodgef/dependabot/npm_and_yarn/@typescript-eslint/parser-1.11.0 2019-06-29 09:32:33 +00:00
dependabot-preview[bot]
9618f96c2b Merge pull request #125 from hodgef/dependabot/npm_and_yarn/url-loader-2.0.1 2019-06-29 09:28:48 +00:00
dependabot-preview[bot]
7f0cf50d79 Bump eslint-plugin-react from 7.13.0 to 7.14.2
Bumps [eslint-plugin-react](https://github.com/yannickcr/eslint-plugin-react) from 7.13.0 to 7.14.2.
- [Release notes](https://github.com/yannickcr/eslint-plugin-react/releases)
- [Changelog](https://github.com/yannickcr/eslint-plugin-react/blob/master/CHANGELOG.md)
- [Commits](https://github.com/yannickcr/eslint-plugin-react/compare/v7.13.0...v7.14.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-29 09:27:38 +00:00
dependabot-preview[bot]
7d501807ff Merge pull request #124 from hodgef/dependabot/npm_and_yarn/eslint-plugin-import-2.18.0 2019-06-29 09:26:33 +00:00
dependabot-preview[bot]
891d3a4daf Merge pull request #123 from hodgef/dependabot/npm_and_yarn/fs-extra-8.1.0 2019-06-29 09:25:36 +00:00
dependabot-preview[bot]
a5451f73fa Merge pull request #122 from hodgef/dependabot/npm_and_yarn/optimize-css-assets-webpack-plugin-5.0.3 2019-06-29 09:22:33 +00:00
dependabot-preview[bot]
9d94f0a802 Bump semver from 6.1.1 to 6.1.2
Bumps [semver](https://github.com/npm/node-semver) from 6.1.1 to 6.1.2.
- [Release notes](https://github.com/npm/node-semver/releases)
- [Changelog](https://github.com/npm/node-semver/blob/master/CHANGELOG.md)
- [Commits](https://github.com/npm/node-semver/compare/v6.1.1...v6.1.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-29 09:19:57 +00:00
dependabot-preview[bot]
d5bdb3e917 Bump @typescript-eslint/parser from 1.10.2 to 1.11.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 1.10.2 to 1.11.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v1.11.0/packages/parser)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-29 09:18:34 +00:00
dependabot-preview[bot]
b0722f6871 Merge pull request #121 from hodgef/dependabot/npm_and_yarn/is-wsl-2.1.0 2019-06-29 09:16:16 +00:00
dependabot-preview[bot]
2865389267 Bump url-loader from 2.0.0 to 2.0.1
Bumps [url-loader](https://github.com/webpack-contrib/url-loader) from 2.0.0 to 2.0.1.
- [Release notes](https://github.com/webpack-contrib/url-loader/releases)
- [Changelog](https://github.com/webpack-contrib/url-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/url-loader/compare/v2.0.0...v2.0.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-29 09:16:09 +00:00
dependabot-preview[bot]
a3cfb8e104 Bump eslint-plugin-import from 2.17.3 to 2.18.0
Bumps [eslint-plugin-import](https://github.com/benmosher/eslint-plugin-import) from 2.17.3 to 2.18.0.
- [Release notes](https://github.com/benmosher/eslint-plugin-import/releases)
- [Changelog](https://github.com/benmosher/eslint-plugin-import/blob/master/CHANGELOG.md)
- [Commits](https://github.com/benmosher/eslint-plugin-import/compare/v2.17.3...v2.18.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-29 09:15:11 +00:00
dependabot-preview[bot]
f7cc244eb6 Bump fs-extra from 8.0.1 to 8.1.0
Bumps [fs-extra](https://github.com/jprichardson/node-fs-extra) from 8.0.1 to 8.1.0.
- [Release notes](https://github.com/jprichardson/node-fs-extra/releases)
- [Changelog](https://github.com/jprichardson/node-fs-extra/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jprichardson/node-fs-extra/commits/8.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-29 09:14:24 +00:00
dependabot-preview[bot]
e11c8c4aa0 Bump optimize-css-assets-webpack-plugin from 5.0.1 to 5.0.3
Bumps [optimize-css-assets-webpack-plugin](https://github.com/NMFR/optimize-css-assets-webpack-plugin) from 5.0.1 to 5.0.3.
- [Release notes](https://github.com/NMFR/optimize-css-assets-webpack-plugin/releases)
- [Commits](https://github.com/NMFR/optimize-css-assets-webpack-plugin/compare/v5.0.1...v5.0.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-29 09:13:45 +00:00
dependabot-preview[bot]
71b3a70b33 Bump is-wsl from 2.0.0 to 2.1.0
Bumps [is-wsl](https://github.com/sindresorhus/is-wsl) from 2.0.0 to 2.1.0.
- [Release notes](https://github.com/sindresorhus/is-wsl/releases)
- [Commits](https://github.com/sindresorhus/is-wsl/compare/v2.0.0...v2.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-29 09:12:59 +00:00
Francisco Hodge
64a63db2f3 Build update 2019-06-22 11:14:41 -04:00
Francisco Hodge
0f6da50b34 npm update 2019-06-22 11:07:37 -04:00
dependabot-preview[bot]
990efcda62 Merge pull request #118 from hodgef/dependabot/npm_and_yarn/webpack-dev-server-3.7.2 2019-06-22 09:29:43 +00:00
dependabot-preview[bot]
5954dec8a3 Merge pull request #119 from hodgef/dependabot/npm_and_yarn/eslint-plugin-flowtype-3.10.4 2019-06-22 09:25:43 +00:00
dependabot-preview[bot]
5566c09cba Merge pull request #117 from hodgef/dependabot/npm_and_yarn/babel-eslint-10.0.2 2019-06-22 09:20:40 +00:00
dependabot-preview[bot]
b9f8e95a15 Bump webpack-dev-server from 3.7.1 to 3.7.2
Bumps [webpack-dev-server](https://github.com/webpack/webpack-dev-server) from 3.7.1 to 3.7.2.
- [Release notes](https://github.com/webpack/webpack-dev-server/releases)
- [Changelog](https://github.com/webpack/webpack-dev-server/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.7.1...v3.7.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-22 09:18:52 +00:00
dependabot-preview[bot]
205004f4b3 Merge pull request #116 from hodgef/dependabot/npm_and_yarn/webpack-4.35.0 2019-06-22 09:16:52 +00:00
dependabot-preview[bot]
7adfe713a3 Bump eslint-plugin-flowtype from 3.10.3 to 3.10.4
Bumps [eslint-plugin-flowtype](https://github.com/gajus/eslint-plugin-flowtype) from 3.10.3 to 3.10.4.
- [Release notes](https://github.com/gajus/eslint-plugin-flowtype/releases)
- [Commits](https://github.com/gajus/eslint-plugin-flowtype/compare/v3.10.3...v3.10.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-22 09:15:56 +00:00
dependabot-preview[bot]
c715499007 Bump babel-eslint from 10.0.1 to 10.0.2
Bumps [babel-eslint](https://github.com/babel/babel-eslint) from 10.0.1 to 10.0.2.
- [Release notes](https://github.com/babel/babel-eslint/releases)
- [Commits](https://github.com/babel/babel-eslint/compare/v10.0.1...v10.0.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-22 09:13:58 +00:00
dependabot-preview[bot]
da36eddc43 Bump webpack from 4.34.0 to 4.35.0
Bumps [webpack](https://github.com/webpack/webpack) from 4.34.0 to 4.35.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v4.34.0...v4.35.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-22 09:13:15 +00:00
dependabot-preview[bot]
d73ecb2e59 Merge pull request #111 from hodgef/dependabot/npm_and_yarn/webpack-4.34.0 2019-06-15 09:42:52 +00:00
dependabot-preview[bot]
4b93c7def2 Bump webpack from 4.33.0 to 4.34.0
Bumps [webpack](https://github.com/webpack/webpack) from 4.33.0 to 4.34.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v4.33.0...v4.34.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-15 09:38:51 +00:00
dependabot-preview[bot]
9f8eaf5fb8 Merge pull request #110 from hodgef/dependabot/npm_and_yarn/@typescript-eslint/parser-1.10.2 2019-06-15 09:36:49 +00:00
dependabot-preview[bot]
5002fb8ae5 Merge pull request #108 from hodgef/dependabot/npm_and_yarn/css-loader-3.0.0 2019-06-15 09:29:59 +00:00
dependabot-preview[bot]
bfd6774fdc Merge pull request #112 from hodgef/dependabot/npm_and_yarn/eslint-plugin-flowtype-3.10.3 2019-06-15 09:27:22 +00:00
dependabot-preview[bot]
8f334ea429 Bump @typescript-eslint/parser from 1.9.0 to 1.10.2
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 1.9.0 to 1.10.2.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v1.10.2/packages/parser)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-15 09:23:26 +00:00
dependabot-preview[bot]
780a097ac8 Merge pull request #109 from hodgef/dependabot/npm_and_yarn/@typescript-eslint/eslint-plugin-1.10.2 2019-06-15 09:21:18 +00:00
dependabot-preview[bot]
90efb5bb08 Bump css-loader from 2.1.1 to 3.0.0
Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 2.1.1 to 3.0.0.
- [Release notes](https://github.com/webpack-contrib/css-loader/releases)
- [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/css-loader/compare/v2.1.1...v3.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-15 09:17:36 +00:00
dependabot-preview[bot]
5b20248ac5 Bump eslint-plugin-flowtype from 3.9.1 to 3.10.3
Bumps [eslint-plugin-flowtype](https://github.com/gajus/eslint-plugin-flowtype) from 3.9.1 to 3.10.3.
- [Release notes](https://github.com/gajus/eslint-plugin-flowtype/releases)
- [Commits](https://github.com/gajus/eslint-plugin-flowtype/compare/v3.9.1...v3.10.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-15 09:16:45 +00:00
dependabot-preview[bot]
fc137e4a31 Merge pull request #107 from hodgef/dependabot/npm_and_yarn/postcss-normalize-8.0.1 2019-06-15 09:15:15 +00:00
dependabot-preview[bot]
356a71c006 Bump @typescript-eslint/eslint-plugin from 1.9.0 to 1.10.2
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 1.9.0 to 1.10.2.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v1.10.2/packages/eslint-plugin)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-15 09:14:24 +00:00
dependabot-preview[bot]
e0093fc64a Bump postcss-normalize from 7.0.0 to 8.0.1
Bumps [postcss-normalize](https://github.com/csstools/postcss-normalize) from 7.0.0 to 8.0.1.
- [Release notes](https://github.com/csstools/postcss-normalize/releases)
- [Changelog](https://github.com/csstools/postcss-normalize/blob/master/CHANGELOG.md)
- [Commits](https://github.com/csstools/postcss-normalize/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-15 09:12:54 +00:00
Francisco Hodge
a2fb28a88b Build update 2019-06-13 18:40:54 -04:00
Francisco Hodge
539fa0fffd npm update 2019-06-13 18:34:45 -04:00
dependabot-preview[bot]
fa40e7a5cf Merge pull request #103 from hodgef/dependabot/npm_and_yarn/webpack-dev-server-3.7.1 2019-06-08 09:26:40 +00:00
dependabot-preview[bot]
d61813102e Merge pull request #106 from hodgef/dependabot/npm_and_yarn/prettier-1.18.2 2019-06-08 09:24:49 +00:00
dependabot-preview[bot]
1d543bb8ea Merge pull request #105 from hodgef/dependabot/npm_and_yarn/pnp-webpack-plugin-1.5.0 2019-06-08 09:22:44 +00:00
dependabot-preview[bot]
8b95cb0c93 Merge pull request #104 from hodgef/dependabot/npm_and_yarn/file-loader-4.0.0 2019-06-08 09:20:41 +00:00
dependabot-preview[bot]
b82136f248 Bump webpack-dev-server from 3.5.1 to 3.7.1
Bumps [webpack-dev-server](https://github.com/webpack/webpack-dev-server) from 3.5.1 to 3.7.1.
- [Release notes](https://github.com/webpack/webpack-dev-server/releases)
- [Changelog](https://github.com/webpack/webpack-dev-server/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.5.1...v3.7.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-08 09:17:36 +00:00
dependabot-preview[bot]
ccb952f6c5 Bump prettier from 1.17.1 to 1.18.2
Bumps [prettier](https://github.com/prettier/prettier) from 1.17.1 to 1.18.2.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/master/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/1.17.1...1.18.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-08 09:15:32 +00:00
dependabot-preview[bot]
d387d7a37c Merge pull request #102 from hodgef/dependabot/npm_and_yarn/url-loader-2.0.0 2019-06-08 09:15:28 +00:00
dependabot-preview[bot]
f3665eeea3 Bump pnp-webpack-plugin from 1.4.3 to 1.5.0
Bumps [pnp-webpack-plugin](https://github.com/arcanis/pnp-webpack-plugin) from 1.4.3 to 1.5.0.
- [Release notes](https://github.com/arcanis/pnp-webpack-plugin/releases)
- [Commits](https://github.com/arcanis/pnp-webpack-plugin/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-08 09:14:46 +00:00
dependabot-preview[bot]
1facc21b0a Bump file-loader from 3.0.1 to 4.0.0
Bumps [file-loader](https://github.com/webpack-contrib/file-loader) from 3.0.1 to 4.0.0.
- [Release notes](https://github.com/webpack-contrib/file-loader/releases)
- [Changelog](https://github.com/webpack-contrib/file-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/file-loader/compare/v3.0.1...v4.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-08 09:14:03 +00:00
dependabot-preview[bot]
1d9be6dae5 Bump url-loader from 1.1.2 to 2.0.0
Bumps [url-loader](https://github.com/webpack-contrib/url-loader) from 1.1.2 to 2.0.0.
- [Release notes](https://github.com/webpack-contrib/url-loader/releases)
- [Changelog](https://github.com/webpack-contrib/url-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/url-loader/compare/v1.1.2...v2.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-08 09:12:40 +00:00
Francisco Hodge
3162cc80f8 Build update 2019-06-05 22:23:36 -04:00
Francisco Hodge
de2100cb7b npm update 2019-06-05 21:09:14 -04:00
Francisco Hodge
04a3c186f0 Added disableButtonHold option 2019-06-05 21:08:53 -04:00
dependabot-preview[bot]
5fa612a923 Merge pull request #99 from hodgef/dependabot/npm_and_yarn/webpack-4.33.0 2019-06-05 13:15:09 +00:00
dependabot-preview[bot]
9a34b6eb37 Merge pull request #97 from hodgef/dependabot/npm_and_yarn/resolve-1.11.1 2019-06-05 13:14:41 +00:00
dependabot-preview[bot]
66fa632ca4 Bump resolve from 1.11.0 to 1.11.1
Bumps [resolve](https://github.com/browserify/resolve) from 1.11.0 to 1.11.1.
- [Release notes](https://github.com/browserify/resolve/releases)
- [Commits](https://github.com/browserify/resolve/compare/v1.11.0...v1.11.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-05 13:08:22 +00:00
dependabot-preview[bot]
51d6d66fc6 Bump webpack from 4.32.2 to 4.33.0
Bumps [webpack](https://github.com/webpack/webpack) from 4.32.2 to 4.33.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v4.32.2...v4.33.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-05 13:08:19 +00:00
dependabot-preview[bot]
84d2c45887 Merge pull request #98 from hodgef/dependabot/npm_and_yarn/webpack-dev-server-3.5.1 2019-06-05 13:05:48 +00:00
dependabot-preview[bot]
966bfd47db Merge pull request #96 from hodgef/dependabot/npm_and_yarn/postcss-normalize-8.0.0 2019-06-05 12:58:38 +00:00
dependabot-preview[bot]
02d88bae10 Bump webpack-dev-server from 3.5.0 to 3.5.1
Bumps [webpack-dev-server](https://github.com/webpack/webpack-dev-server) from 3.5.0 to 3.5.1.
- [Release notes](https://github.com/webpack/webpack-dev-server/releases)
- [Changelog](https://github.com/webpack/webpack-dev-server/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.5.0...v3.5.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-05 12:57:16 +00:00
dependabot-preview[bot]
6802c1f9dc Bump postcss-normalize from 7.0.1 to 8.0.0
Bumps [postcss-normalize](https://github.com/csstools/postcss-normalize) from 7.0.1 to 8.0.0.
- [Release notes](https://github.com/csstools/postcss-normalize/releases)
- [Changelog](https://github.com/csstools/postcss-normalize/blob/master/CHANGELOG.md)
- [Commits](https://github.com/csstools/postcss-normalize/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-05 12:55:34 +00:00
Francisco Hodge
b490481761 Build update 2019-06-02 03:04:55 -04:00
Francisco Hodge
8795232092 Added destroy method 2019-06-02 02:56:24 -04:00
dependabot-preview[bot]
ba20077e7a Merge pull request #94 from hodgef/dependabot/npm_and_yarn/mini-css-extract-plugin-0.7.0 2019-06-01 09:26:16 +00:00
dependabot-preview[bot]
f175c1dcb8 Merge pull request #93 from hodgef/dependabot/npm_and_yarn/@svgr/webpack-4.3.0 2019-06-01 09:23:27 +00:00
dependabot-preview[bot]
abd2471119 Merge pull request #92 from hodgef/dependabot/npm_and_yarn/webpack-dev-server-3.5.0 2019-06-01 09:21:18 +00:00
dependabot-preview[bot]
d25b70fc3d Merge pull request #91 from hodgef/dependabot/npm_and_yarn/semver-6.1.1 2019-06-01 09:18:32 +00:00
dependabot-preview[bot]
d274abf755 Bump mini-css-extract-plugin from 0.6.0 to 0.7.0
Bumps [mini-css-extract-plugin](https://github.com/webpack-contrib/mini-css-extract-plugin) from 0.6.0 to 0.7.0.
- [Release notes](https://github.com/webpack-contrib/mini-css-extract-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/mini-css-extract-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/mini-css-extract-plugin/compare/v0.6.0...v0.7.0)
2019-06-01 09:16:19 +00:00
dependabot-preview[bot]
922c865d0f Bump @svgr/webpack from 4.2.0 to 4.3.0
Bumps [@svgr/webpack](https://github.com/smooth-code/svgr) from 4.2.0 to 4.3.0.
- [Release notes](https://github.com/smooth-code/svgr/releases)
- [Changelog](https://github.com/smooth-code/svgr/blob/master/CHANGELOG.md)
- [Commits](https://github.com/smooth-code/svgr/compare/v4.2.0...v4.3.0)
2019-06-01 09:15:29 +00:00
dependabot-preview[bot]
5735215b0a Bump webpack-dev-server from 3.4.1 to 3.5.0
Bumps [webpack-dev-server](https://github.com/webpack/webpack-dev-server) from 3.4.1 to 3.5.0.
- [Release notes](https://github.com/webpack/webpack-dev-server/releases)
- [Changelog](https://github.com/webpack/webpack-dev-server/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.4.1...v3.5.0)
2019-06-01 09:14:36 +00:00
dependabot-preview[bot]
d007a76fa0 Bump semver from 6.1.0 to 6.1.1
Bumps [semver](https://github.com/npm/node-semver) from 6.1.0 to 6.1.1.
- [Release notes](https://github.com/npm/node-semver/releases)
- [Changelog](https://github.com/npm/node-semver/blob/master/CHANGELOG.md)
- [Commits](https://github.com/npm/node-semver/compare/v6.1.0...v6.1.1)
2019-06-01 09:13:44 +00:00
Francisco Hodge
d561c8b666 Build update 2019-05-25 17:46:21 -04:00
dependabot-preview[bot]
78cc636d32 Merge pull request #88 from hodgef/dependabot/npm_and_yarn/eslint-plugin-flowtype-3.9.1 2019-05-25 09:41:50 +00:00
dependabot-preview[bot]
5907eb3baa Merge pull request #86 from hodgef/dependabot/npm_and_yarn/terser-webpack-plugin-1.3.0 2019-05-25 09:38:09 +00:00
dependabot-preview[bot]
4e7ea1f687 Bump eslint-plugin-flowtype from 3.9.0 to 3.9.1
Bumps [eslint-plugin-flowtype](https://github.com/gajus/eslint-plugin-flowtype) from 3.9.0 to 3.9.1.
- [Release notes](https://github.com/gajus/eslint-plugin-flowtype/releases)
- [Commits](https://github.com/gajus/eslint-plugin-flowtype/compare/v3.9.0...v3.9.1)
2019-05-25 09:31:39 +00:00
dependabot-preview[bot]
4388f26cb6 Merge pull request #87 from hodgef/dependabot/npm_and_yarn/eslint-plugin-import-2.17.3 2019-05-25 09:29:23 +00:00
dependabot-preview[bot]
2c524f82ff Bump terser-webpack-plugin from 1.2.4 to 1.3.0
Bumps [terser-webpack-plugin](https://github.com/webpack-contrib/terser-webpack-plugin) from 1.2.4 to 1.3.0.
- [Release notes](https://github.com/webpack-contrib/terser-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/terser-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/terser-webpack-plugin/compare/v1.2.4...v1.3.0)
2019-05-25 09:27:10 +00:00
dependabot-preview[bot]
2911bb5022 Merge pull request #85 from hodgef/dependabot/npm_and_yarn/semver-6.1.0 2019-05-25 09:24:56 +00:00
dependabot-preview[bot]
3fe39dc9e3 Merge pull request #84 from hodgef/dependabot/npm_and_yarn/webpack-4.32.2 2019-05-25 09:22:48 +00:00
dependabot-preview[bot]
ab9839f94f Merge pull request #83 from hodgef/dependabot/npm_and_yarn/@babel/core-7.4.5 2019-05-25 09:20:05 +00:00
dependabot-preview[bot]
b4c21693bd Merge pull request #82 from hodgef/dependabot/npm_and_yarn/@babel/runtime-7.4.5 2019-05-25 09:18:14 +00:00
dependabot-preview[bot]
7a647f16ab Bump eslint-plugin-import from 2.17.2 to 2.17.3
Bumps [eslint-plugin-import](https://github.com/benmosher/eslint-plugin-import) from 2.17.2 to 2.17.3.
- [Release notes](https://github.com/benmosher/eslint-plugin-import/releases)
- [Changelog](https://github.com/benmosher/eslint-plugin-import/blob/master/CHANGELOG.md)
- [Commits](https://github.com/benmosher/eslint-plugin-import/compare/v2.17.2...v2.17.3)
2019-05-25 09:17:25 +00:00
dependabot-preview[bot]
619991b4ba Bump semver from 6.0.0 to 6.1.0
Bumps [semver](https://github.com/npm/node-semver) from 6.0.0 to 6.1.0.
- [Release notes](https://github.com/npm/node-semver/releases)
- [Changelog](https://github.com/npm/node-semver/blob/master/CHANGELOG.md)
- [Commits](https://github.com/npm/node-semver/compare/v6.0.0...v6.1.0)
2019-05-25 09:15:50 +00:00
dependabot-preview[bot]
e7fa7fb1fd Merge pull request #81 from hodgef/dependabot/npm_and_yarn/@babel/preset-env-7.4.5 2019-05-25 09:15:13 +00:00
dependabot-preview[bot]
31fa3d0592 Bump webpack from 4.31.0 to 4.32.2
Bumps [webpack](https://github.com/webpack/webpack) from 4.31.0 to 4.32.2.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v4.31.0...v4.32.2)
2019-05-25 09:15:03 +00:00
dependabot-preview[bot]
bcef967a20 Bump @babel/core from 7.4.4 to 7.4.5
Bumps [@babel/core](https://github.com/babel/babel) from 7.4.4 to 7.4.5.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.4.4...v7.4.5)
2019-05-25 09:14:15 +00:00
dependabot-preview[bot]
267838c299 Bump @babel/runtime from 7.4.4 to 7.4.5
Bumps [@babel/runtime](https://github.com/babel/babel) from 7.4.4 to 7.4.5.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.4.4...v7.4.5)
2019-05-25 09:13:27 +00:00
dependabot-preview[bot]
c5ad9d2240 Bump @babel/preset-env from 7.4.4 to 7.4.5
Bumps [@babel/preset-env](https://github.com/babel/babel) from 7.4.4 to 7.4.5.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/compare/v7.4.4...v7.4.5)
2019-05-25 09:12:40 +00:00
Francisco Hodge
8a865aed53 Build update 2019-05-21 00:02:15 -04:00
dependabot[bot]
a0f603597c Merge pull request #78 from hodgef/dependabot/npm_and_yarn/webpack-dev-server-3.4.1 2019-05-18 09:18:21 +00:00
dependabot[bot]
0a814d0a7b Bump webpack-dev-server from 3.3.1 to 3.4.1
Bumps [webpack-dev-server](https://github.com/webpack/webpack-dev-server) from 3.3.1 to 3.4.1.
- [Release notes](https://github.com/webpack/webpack-dev-server/releases)
- [Changelog](https://github.com/webpack/webpack-dev-server/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.3.1...v3.4.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-18 09:12:52 +00:00
dependabot[bot]
513db7f056 Merge pull request #71 from hodgef/dependabot/npm_and_yarn/babel-loader-8.0.6 2019-05-17 00:06:00 +00:00
dependabot[bot]
1d863c4f81 Merge pull request #72 from hodgef/dependabot/npm_and_yarn/@typescript-eslint/eslint-plugin-1.9.0 2019-05-17 00:03:55 +00:00
dependabot[bot]
9443d6a91a Merge pull request #77 from hodgef/dependabot/npm_and_yarn/eslint-plugin-flowtype-3.9.0 2019-05-17 00:01:25 +00:00
dependabot[bot]
f19bf3c933 Merge pull request #76 from hodgef/dependabot/npm_and_yarn/terser-webpack-plugin-1.2.4 2019-05-17 00:00:26 +00:00
dependabot[bot]
55f96064e0 Merge pull request #75 from hodgef/dependabot/npm_and_yarn/uglifyjs-webpack-plugin-2.1.3 2019-05-16 23:57:47 +00:00
dependabot[bot]
44e4d00111 Merge pull request #74 from hodgef/dependabot/npm_and_yarn/prettier-1.17.1 2019-05-16 23:56:57 +00:00
dependabot[bot]
13f80bdcbe Merge pull request #73 from hodgef/dependabot/npm_and_yarn/fs-extra-8.0.1 2019-05-16 23:54:39 +00:00
dependabot[bot]
17016588d6 Bump babel-loader from 8.0.5 to 8.0.6
Bumps [babel-loader](https://github.com/babel/babel-loader) from 8.0.5 to 8.0.6.
- [Release notes](https://github.com/babel/babel-loader/releases)
- [Changelog](https://github.com/babel/babel-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/babel/babel-loader/compare/v8.0.5...v8.0.6)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-16 23:50:03 +00:00
dependabot[bot]
a63e3cce76 Bump @typescript-eslint/eslint-plugin from 1.7.0 to 1.9.0
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint) from 1.7.0 to 1.9.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/compare/v1.7.0...v1.9.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-16 23:49:53 +00:00
dependabot[bot]
46b1c9bfda Bump eslint-plugin-flowtype from 3.8.1 to 3.9.0
Bumps [eslint-plugin-flowtype](https://github.com/gajus/eslint-plugin-flowtype) from 3.8.1 to 3.9.0.
- [Release notes](https://github.com/gajus/eslint-plugin-flowtype/releases)
- [Commits](https://github.com/gajus/eslint-plugin-flowtype/compare/v3.8.1...v3.9.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-16 23:48:19 +00:00
dependabot[bot]
f523d6ae51 Bump terser-webpack-plugin from 1.2.3 to 1.2.4
Bumps [terser-webpack-plugin](https://github.com/webpack-contrib/terser-webpack-plugin) from 1.2.3 to 1.2.4.
- [Release notes](https://github.com/webpack-contrib/terser-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/terser-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/terser-webpack-plugin/compare/v1.2.3...v1.2.4)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-16 23:47:50 +00:00
dependabot[bot]
68dfc94ea7 Merge pull request #70 from hodgef/dependabot/npm_and_yarn/@typescript-eslint/parser-1.9.0 2019-05-16 23:46:58 +00:00
dependabot[bot]
2274108619 Bump uglifyjs-webpack-plugin from 2.1.2 to 2.1.3
Bumps [uglifyjs-webpack-plugin](https://github.com/webpack-contrib/uglifyjs-webpack-plugin) from 2.1.2 to 2.1.3.
- [Release notes](https://github.com/webpack-contrib/uglifyjs-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/uglifyjs-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/uglifyjs-webpack-plugin/compare/v2.1.2...v2.1.3)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-16 23:46:35 +00:00
dependabot[bot]
7d5417ab2a Bump prettier from 1.17.0 to 1.17.1
Bumps [prettier](https://github.com/prettier/prettier) from 1.17.0 to 1.17.1.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/master/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/1.17.0...1.17.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-16 23:45:51 +00:00
dependabot[bot]
1a29880ef8 Bump fs-extra from 7.0.1 to 8.0.1
Bumps [fs-extra](https://github.com/jprichardson/node-fs-extra) from 7.0.1 to 8.0.1.
- [Release notes](https://github.com/jprichardson/node-fs-extra/releases)
- [Changelog](https://github.com/jprichardson/node-fs-extra/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jprichardson/node-fs-extra/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-16 23:44:57 +00:00
dependabot[bot]
319eaa22cf Merge pull request #69 from hodgef/dependabot/npm_and_yarn/resolve-1.11.0 2019-05-16 23:44:27 +00:00
dependabot[bot]
c8bafdb517 Bump @typescript-eslint/parser from 1.7.0 to 1.9.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint) from 1.7.0 to 1.9.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/compare/v1.7.0...v1.9.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-16 23:42:40 +00:00
dependabot[bot]
fb7008d04b Bump resolve from 1.10.1 to 1.11.0
Bumps [resolve](https://github.com/browserify/resolve) from 1.10.1 to 1.11.0.
- [Release notes](https://github.com/browserify/resolve/releases)
- [Commits](https://github.com/browserify/resolve/compare/v1.10.1...v1.11.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-16 23:41:38 +00:00
Francisco Hodge
69706bd8f6 Build update 2019-05-16 19:38:38 -04:00
Francisco Hodge
ad4af7cde0 npm update 2019-05-16 19:31:31 -04:00
Francisco Hodge
a0c24db9d2 Updated types 2019-05-16 19:18:46 -04:00
Francisco Hodge
f702184e15 build update 2019-05-10 18:51:45 -04:00
Francisco Hodge
45d2f5b50d Updated dev dependencies 2019-05-10 18:47:38 -04:00
52 changed files with 6552 additions and 11210 deletions

View File

@@ -5,4 +5,3 @@ A few sentences describing the overall goals of the pull request's commits.
## Checks
- [ ] Tests ( `npm run test -- --coverage` ) Coverage at `./coverage/lcov-report/index.html` should be 100%
- [ ] Documentation ( `npm run docs` ) Coverage at `./docs/source.html` should be 100%

44
.github/workflows/main.yml vendored Normal file
View File

@@ -0,0 +1,44 @@
name: Build
on: [push, pull_request]
jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
matrix:
node-version: [12.x]
os: [ubuntu-latest]
steps:
- uses: actions/checkout@v1
- name: Use Node.js ${{ matrix.node_version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node_version }}
- name: npm install, build, and test
run: |
npm install
npm run start -- --testMode
npm run demo
npm run coverage
- uses: codecov/codecov-action@v1.0.2
with:
token: ${{secrets.CODECOV_TOKEN}}
env:
CI: true
- name: Discord notification
if: success()
env:
DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
uses: Ilshidur/action-discord@master
with:
args: 'simple-keyboard - CI Build Passed'
- name: Discord notification
if: failure()
env:
DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
uses: Ilshidur/action-discord@master
with:
args: 'simple-keyboard - CI Build Failed'

44
.github/workflows/publish.yml vendored Normal file
View File

@@ -0,0 +1,44 @@
name: Publish
on:
push:
branches:
- master
jobs:
publish:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- uses: actions/setup-node@v1
with:
node-version: 12
- run: npm install
- run: npm run test -- --coverage --watchAll=false
- name: Setup GIT
run: |
git config --local --list
git checkout master
git config user.email "$GH_EMAIL"
git config user.name "Francisco Hodge"
env:
GH_EMAIL: ${{secrets.GH_EMAIL}}
- name: Bump version
run: |
git reset --hard
npm version patch
npm run build
git add . || true
git commit -m "Build update" || true
git push "https://$GITHUB_ACTOR:$GITHUB_TOKEN@github.com/$GITHUB_REPOSITORY"
env:
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
- name: npm publish
run: |
npm config set //registry.npmjs.org/:_authToken=$NODE_AUTH_TOKEN
npm run trypublish
env:
NODE_AUTH_TOKEN: ${{secrets.NODE_AUTH_TOKEN}}

1
.gitignore vendored
View File

@@ -17,6 +17,7 @@
.env.development.local
.env.test.local
.env.production.local
.vscode
npm-debug.log*
yarn-debug.log*

View File

@@ -1,6 +1,6 @@
language: node_js
node_js:
- '11.2'
- node
install:
- npm install -g codecov
- npm install

View File

@@ -1,14 +1,37 @@
<div align="center">
<a href="https://simple-keyboard.com/demo" title="View Demo" target="_blank"><img src="https://franciscohodge.com/project-pages/simple-keyboard/images/simplekeyboard-banner_B.png" align="center" width="100%"></a>
<a href="https://simple-keyboard.com/demo" title="View Demo" target="_blank"><img src="https://franciscohodge.com/project-pages/simple-keyboard/images/skdemo-4x2.gif" align="center" width="100%"></a>
<blockquote>The easily customisable and responsive on-screen virtual keyboard for Javascript projects.</blockquote>
<a href="https://www.npmjs.com/package/simple-keyboard" target="_blank"><img src="https://img.shields.io/npm/v/simple-keyboard.svg?style=flat" alt="npm version"></a>
<a href="https://travis-ci.org/hodgef/simple-keyboard" target="_blank"><img src="https://travis-ci.org/hodgef/simple-keyboard.svg?branch=master" alt="Build Status"></a>
<img src="https://img.shields.io/david/hodgef/js-library-boilerplate.svg" />
<a href="https://codecov.io/gh/hodgef/simple-keyboard" target="_blank"><img src="https://img.shields.io/codecov/c/github/hodgef/simple-keyboard/master.svg?style=flat" alt="Coverage Status"></a>
<a href="https://www.codacy.com/app/hodgef/simple-keyboard?utm_source=github.com&amp;utm_medium=referral&amp;utm_content=hodgef/simple-keyboard&amp;utm_campaign=Badge_Grade" target="_blank"><img src="https://api.codacy.com/project/badge/Grade/5778fccc6a894701853d9a1f2fb44a76" alt="Codacy Badge"></a>
</p>
</div>
<p>
<a href="https://simple-keyboard.com/demo">
<img alt="simple-keyboard: Javscript Virtual Keyboard" src="https://i.imgur.com/Po6659n.gif">
</a>
<a href="https://www.npmjs.com/package/simple-keyboard">
<img src="https://badgen.net/npm/v/simple-keyboard?color=blue" alt="npm version">
</a>
<a href="https://github.com/hodgef/simple-keyboard/actions">
<img alt="Build Status" src="https://github.com/hodgef/simple-keyboard/workflows/Build/badge.svg?color=green" />
</a>
<a href="https://github.com/hodgef/simple-keyboard/actions">
<img alt="Publish Status" src="https://github.com/hodgef/simple-keyboard/workflows/Publish/badge.svg?color=green" />
</a>
<a href="https://bundlephobia.com/result?p=simple-keyboard">
<img src="https://badgen.net/bundlephobia/minzip/simple-keyboard/?color=green" alt="install size">
</a>
<a href="https://david-dm.org/hodgef/simple-keyboard">
<img src="https://badgen.net/david/dep/hodgef/simple-keyboard" alt="coverage">
</a>
<a href="https://codecov.io/gh/hodgef/simple-keyboard">
<img src="https://badgen.net/codecov/c/github/hodgef/simple-keyboard" alt="coverage">
</a>
</p>
> The slick virtual keyboard for Javascript. Compatible with your JS, React, Angular or Vue projects.
## 🚀 Demo
[Demo Showcase (Vanilla, Angular, React, Vue)](https://simple-keyboard.com/demo)
## 📦 Installation & Usage
You can use simple-keyboard as a `<script>` tag from a CDN, or install it from npm.
@@ -18,11 +41,7 @@ Check out the [Getting Started](https://simple-keyboard.com/getting-started) doc
## 📖 Documentation
Check out the [simple-keyboard documentation](https://simple-keyboard.com/documentation) site.
Feel free to browse the [Q&A / Use-cases](https://simple-keyboard.com/qa-use-cases/) page for advanced use-cases.
## 🚀 Demo
[https://simple-keyboard.com/demo](https://simple-keyboard.com/demo)
Feel free to browse the [Questions & Answers (FAQ)](https://simple-keyboard.com/qa-use-cases/) page for common use-cases.
### To run demo on your own computer
@@ -42,6 +61,24 @@ Feel free to browse the [Q&A / Use-cases](https://simple-keyboard.com/qa-use-cas
<a href="http://franciscohodge.com/simple-keyboard/chat/join" title="Join our Discord chat" target="_blank"><img src="https://franciscohodge.com/project-pages/simple-keyboard/images/discord.png" align="center" width="200"></a>
## ✳️ Modules
You can extend simple-keyboard's functionality with [modules](https://franciscohodge.com/projects/simple-keyboard/modules/). Such as:
* [Autocorrect](https://franciscohodge.com/projects/simple-keyboard/demo-showcase/module-autocorrect/)
* [Input Mask](https://franciscohodge.com/projects/simple-keyboard/demo-showcase/module-input-mask/)
* [Key Navigation](https://franciscohodge.com/projects/simple-keyboard/demo-showcase/module-key-navigation/)
* [Swipe Keyboard](https://franciscohodge.com/projects/simple-keyboard/demo-showcase/module-swipe-keyboard/)
Want to create your own module? Check out the [Modules page](https://franciscohodge.com/projects/simple-keyboard/modules/) for instructions.
## 🎯 Compatibility
> Simple-keyboard is intended for modern, standards-compliant browsers.
> Internet Explorer is sadly not one of them, and since its market-share is negligible (~2% for IE11), resources won't be spent in trying to support it.
>
> To learn more about the rationale for not supporting IE, check out [this link](https://techcommunity.microsoft.com/t5/Windows-IT-Pro-Blog/The-perils-of-using-Internet-Explorer-as-your-default-browser/ba-p/331732).
## ✅ Contributing
PR's and issues are welcome. Feel free to submit any issues you have at:

View File

@@ -1,10 +0,0 @@
console.log('\x1b[36m%s\x1b[0m', `
______________________________________\n`);
console.log('\x1b[33m%s\x1b[0m', `Thank you for installing simple-keyboard !`);
console.log('\x1b[36m%s\x1b[0m', `
Please consider starring the repository so others can also find it.
https://github.com/hodgef/simple-keyboard/stargazers
______________________________________
`);

View File

@@ -1,6 +1,6 @@
/*!
*
* simple-keyboard v2.21.0
* simple-keyboard v2.27.1
* https://github.com/hodgef/simple-keyboard
*
* Copyright (c) Francisco Hodge (https://github.com/hodgef)
@@ -8,5 +8,5 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
*/body,html{margin:0;padding:0}.simple-keyboard{font-family:HelveticaNeue-Light,Helvetica Neue Light,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif;width:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;box-sizing:border-box;overflow:hidden;touch-action:manipulation}.simple-keyboard .hg-row{display:-webkit-flex;display:flex}.simple-keyboard .hg-row:not(:last-child){margin-bottom:5px}.simple-keyboard .hg-row .hg-button-container,.simple-keyboard .hg-row .hg-button:not(:last-child){margin-right:5px}.simple-keyboard .hg-row>div:last-child{margin-right:0}.simple-keyboard .hg-row .hg-button-container{display:-webkit-flex;display:flex}.simple-keyboard .hg-button{display:inline-block;-webkit-flex-grow:1;flex-grow:1;cursor:pointer}.simple-keyboard .hg-button span{pointer-events:none}.simple-keyboard.hg-theme-default{background-color:rgba(0,0,0,.1);padding:5px;border-radius:5px}.simple-keyboard.hg-theme-default .hg-button{box-shadow:0 0 3px -1px rgba(0,0,0,.3);height:40px;border-radius:5px;box-sizing:border-box;padding:5px;background:#fff;border-bottom:1px solid #b5b5b5;cursor:pointer;display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center}.simple-keyboard button.hg-button{border-width:0;outline:0;font-size:inherit}.simple-keyboard.hg-theme-default:not(.hg-touch-events) .hg-button:active{background:#e4e4e4}.simple-keyboard.hg-theme-default.hg-layout-numeric .hg-button{width:33.3%;height:60px;-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-justify-content:center;justify-content:center}.simple-keyboard.hg-theme-default .hg-button.hg-button-numpadadd,.simple-keyboard.hg-theme-default .hg-button.hg-button-numpadenter{height:85px}.simple-keyboard.hg-theme-default .hg-button.hg-button-numpad0{width:105px}.simple-keyboard.hg-theme-default .hg-button.hg-button-com{max-width:85px}.simple-keyboard.hg-theme-default .hg-button.hg-standardBtn.hg-button-at{max-width:45px}.simple-keyboard.hg-theme-default .hg-button.hg-selectedButton{background:rgba(5,25,70,.53);color:#fff}.simple-keyboard.hg-theme-default .hg-button.hg-standardBtn[data-skbtn=".com"]{max-width:82px}.simple-keyboard.hg-theme-default .hg-button.hg-standardBtn[data-skbtn="@"]{max-width:60px}
*/body,html{margin:0;padding:0}.simple-keyboard{font-family:HelveticaNeue-Light,Helvetica Neue Light,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif;width:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;box-sizing:border-box;overflow:hidden;touch-action:manipulation}.simple-keyboard .hg-row{display:flex}.simple-keyboard .hg-row:not(:last-child){margin-bottom:5px}.simple-keyboard .hg-row .hg-button-container,.simple-keyboard .hg-row .hg-button:not(:last-child){margin-right:5px}.simple-keyboard .hg-row>div:last-child{margin-right:0}.simple-keyboard .hg-row .hg-button-container{display:flex}.simple-keyboard .hg-button{display:inline-block;flex-grow:1;cursor:pointer}.simple-keyboard .hg-button span{pointer-events:none}.simple-keyboard.hg-theme-default{background-color:rgba(0,0,0,.1);padding:5px;border-radius:5px}.simple-keyboard.hg-theme-default .hg-button{box-shadow:0 0 3px -1px rgba(0,0,0,.3);height:40px;border-radius:5px;box-sizing:border-box;padding:5px;background:#fff;border-bottom:1px solid #b5b5b5;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:rgba(0,0,0,0)}.simple-keyboard.hg-theme-default .hg-button.hg-activeButton{background:#efefef}.simple-keyboard button.hg-button{border-width:0;outline:0;font-size:inherit}.simple-keyboard.hg-theme-default.hg-layout-numeric .hg-button{width:33.3%;height:60px;align-items:center;display:flex;justify-content:center}.simple-keyboard.hg-theme-default .hg-button.hg-button-numpadadd,.simple-keyboard.hg-theme-default .hg-button.hg-button-numpadenter{height:85px}.simple-keyboard.hg-theme-default .hg-button.hg-button-numpad0{width:105px}.simple-keyboard.hg-theme-default .hg-button.hg-button-com{max-width:85px}.simple-keyboard.hg-theme-default .hg-button.hg-standardBtn.hg-button-at{max-width:45px}.simple-keyboard.hg-theme-default .hg-button.hg-selectedButton{background:rgba(5,25,70,.53);color:#fff}.simple-keyboard.hg-theme-default .hg-button.hg-standardBtn[data-skbtn=".com"]{max-width:82px}.simple-keyboard.hg-theme-default .hg-button.hg-standardBtn[data-skbtn="@"]{max-width:60px}
/*# sourceMappingURL=index.css.map */

File diff suppressed because one or more lines are too long

View File

@@ -1,11 +0,0 @@
/*!
*
* simple-keyboard v2.21.0 (Non-minified build)
* https://github.com/hodgef/simple-keyboard
*
* Copyright (c) Francisco Hodge (https://github.com/hodgef)
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
*/body,html{margin:0;padding:0}.simple-keyboard{font-family:HelveticaNeue-Light,Helvetica Neue Light,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif;width:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;box-sizing:border-box;overflow:hidden;touch-action:manipulation}.simple-keyboard .hg-row{display:-webkit-flex;display:flex}.simple-keyboard .hg-row:not(:last-child){margin-bottom:5px}.simple-keyboard .hg-row .hg-button-container,.simple-keyboard .hg-row .hg-button:not(:last-child){margin-right:5px}.simple-keyboard .hg-row>div:last-child{margin-right:0}.simple-keyboard .hg-row .hg-button-container{display:-webkit-flex;display:flex}.simple-keyboard .hg-button{display:inline-block;-webkit-flex-grow:1;flex-grow:1;cursor:pointer}.simple-keyboard .hg-button span{pointer-events:none}.simple-keyboard.hg-theme-default{background-color:rgba(0,0,0,.1);padding:5px;border-radius:5px}.simple-keyboard.hg-theme-default .hg-button{box-shadow:0 0 3px -1px rgba(0,0,0,.3);height:40px;border-radius:5px;box-sizing:border-box;padding:5px;background:#fff;border-bottom:1px solid #b5b5b5;cursor:pointer;display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center}.simple-keyboard button.hg-button{border-width:0;outline:0;font-size:inherit}.simple-keyboard.hg-theme-default:not(.hg-touch-events) .hg-button:active{background:#e4e4e4}.simple-keyboard.hg-theme-default.hg-layout-numeric .hg-button{width:33.3%;height:60px;-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-justify-content:center;justify-content:center}.simple-keyboard.hg-theme-default .hg-button.hg-button-numpadadd,.simple-keyboard.hg-theme-default .hg-button.hg-button-numpadenter{height:85px}.simple-keyboard.hg-theme-default .hg-button.hg-button-numpad0{width:105px}.simple-keyboard.hg-theme-default .hg-button.hg-button-com{max-width:85px}.simple-keyboard.hg-theme-default .hg-button.hg-standardBtn.hg-button-at{max-width:45px}.simple-keyboard.hg-theme-default .hg-button.hg-selectedButton{background:rgba(5,25,70,.53);color:#fff}.simple-keyboard.hg-theme-default .hg-button.hg-standardBtn[data-skbtn=".com"]{max-width:82px}.simple-keyboard.hg-theme-default .hg-button.hg-standardBtn[data-skbtn="@"]{max-width:60px}

37
build/index.d.ts vendored
View File

@@ -1,7 +1,7 @@
declare module 'simple-keyboard' {
interface KeyboardLayoutObject {
default: string[];
shift?: string[];
shift?: any;
[key: string]: string[];
}
@@ -10,6 +10,12 @@ declare module 'simple-keyboard' {
buttons: string;
}
interface KeyboardButtonAttributes {
attribute: string;
value: string;
buttons: string;
}
interface KeyboardOptions {
/**
* Modify the keyboard layout.
@@ -41,6 +47,11 @@ declare module 'simple-keyboard' {
*/
buttonTheme?: KeyboardButtonTheme[];
/**
* A prop to add your own attributes to one or several buttons.
*/
buttonAttributes?: KeyboardButtonAttributes[];
/**
* Runs a `console.log` every time a key is pressed. Displays the buttons pressed and the current input.
*/
@@ -123,11 +134,21 @@ declare module 'simple-keyboard' {
*/
useMouseEvents?: boolean;
/**
* Disable button hold action.
*/
disableButtonHold?: boolean;
/**
* Executes the callback function on key press. Returns button layout name (i.e.: "{shift}").
*/
onKeyPress?: (button: string) => any;
/**
* Executes the callback function on key release.
*/
onKeyReleased?: (button: string) => any;
/**
* Executes the callback function on input change. Returns the current input's string.
*/
@@ -162,6 +183,10 @@ declare module 'simple-keyboard' {
class Keyboard {
constructor(selector: string, options: KeyboardOptions);
constructor(options: KeyboardOptions);
/**
* Options
*/
options: KeyboardOptions;
/**
@@ -169,6 +194,11 @@ declare module 'simple-keyboard' {
*/
utilities?: any;
/**
* caretPosition
*/
caretPosition?: number;
/**
* Adds/Modifies an entry to the `buttonTheme`. Basically a way to add a class to a button.
* @param {string} buttons List of buttons to select (separated by a space).
@@ -220,6 +250,11 @@ declare module 'simple-keyboard' {
* @param {string} button The button layout name to select
*/
getButtonElement(button: string): HTMLElement | HTMLElement[];
/**
* Clears keyboard listeners and DOM elements.
*/
destroy(): void;
}
export default Keyboard;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,7 @@
'use strict';
const path = require('path');
const camelcase = require('camelcase');
// This is a custom Jest transformer turning file imports into filenames.
// http://facebook.github.io/jest/docs/en/webpack.html
@@ -10,19 +11,27 @@ module.exports = {
const assetFilename = JSON.stringify(path.basename(filename));
if (filename.match(/\.svg$/)) {
// Based on how SVGR generates a component name:
// https://github.com/smooth-code/svgr/blob/01b194cf967347d43d4cbe6b434404731b87cf27/packages/core/src/state.js#L6
const pascalCaseFileName = camelcase(path.parse(filename).name, {
pascalCase: true,
});
const componentName = `Svg${pascalCaseFileName}`;
return `const React = require('react');
module.exports = {
__esModule: true,
default: ${assetFilename},
ReactComponent: React.forwardRef((props, ref) => ({
$$typeof: Symbol.for('react.element'),
type: 'svg',
ref: ref,
key: null,
props: Object.assign({}, props, {
children: ${assetFilename}
})
})),
ReactComponent: React.forwardRef(function ${componentName}(props, ref) {
return {
$$typeof: Symbol.for('react.element'),
type: 'svg',
ref: ref,
key: null,
props: Object.assign({}, props, {
children: ${assetFilename}
})
};
}),
};`;
}

View File

@@ -4,6 +4,7 @@ const fs = require('fs');
const path = require('path');
const paths = require('./paths');
const chalk = require('react-dev-utils/chalk');
const resolve = require('resolve');
/**
* Get the baseUrl of a compilerOptions object.
@@ -63,7 +64,10 @@ function getModules() {
// TypeScript project and set up the config
// based on tsconfig.json
if (hasTsConfig) {
config = require(paths.appTsConfig);
const ts = require(resolve.sync('typescript', {
basedir: paths.appNodeModules,
}));
config = ts.readConfigFile(paths.appTsConfig, ts.sys.readFile).config;
// Otherwise we'll check if there is jsconfig.json
// for non TS projects.
} else if (hasJsConfig) {

35
config/pnpTs.js Normal file
View File

@@ -0,0 +1,35 @@
'use strict';
const { resolveModuleName } = require('ts-pnp');
exports.resolveModuleName = (
typescript,
moduleName,
containingFile,
compilerOptions,
resolutionHost
) => {
return resolveModuleName(
moduleName,
containingFile,
compilerOptions,
resolutionHost,
typescript.resolveModuleName
);
};
exports.resolveTypeReferenceDirective = (
typescript,
moduleName,
containingFile,
compilerOptions,
resolutionHost
) => {
return resolveModuleName(
moduleName,
containingFile,
compilerOptions,
resolutionHost,
typescript.resolveTypeReferenceDirective
);
};

View File

@@ -25,15 +25,23 @@ const getClientEnvironment = require('./env');
const ModuleNotFoundPlugin = require('react-dev-utils/ModuleNotFoundPlugin');
const ForkTsCheckerWebpackPlugin = require('react-dev-utils/ForkTsCheckerWebpackPlugin');
const typescriptFormatter = require('react-dev-utils/typescriptFormatter');
const getPackageJson = require('./getPackageJson');
const eslint = require('eslint');
const postcssNormalize = require('postcss-normalize');
const appPackageJson = require(paths.appPackageJson);
// Source maps are resource heavy and can cause out of memory issue for large source files.
const shouldUseSourceMap = process.env.GENERATE_SOURCEMAP !== 'false';
// Some apps do not need the benefits of saving a web request, so not inlining the chunk
// makes for a smoother build process.
const shouldInlineRuntimeChunk = process.env.INLINE_RUNTIME_CHUNK !== 'false';
const imageInlineSizeLimit = parseInt(
process.env.IMAGE_INLINE_SIZE_LIMIT || '10000'
);
// Check if TypeScript is setup
const useTypeScript = fs.existsSync(paths.appTsConfig);
@@ -46,6 +54,7 @@ const sassModuleRegex = /\.module\.(scss|sass)$/;
// This is the production and development configuration.
// It is focused on developer experience, fast rebuilds, and a minimal bundle.
module.exports = function(webpackEnv) {
const isEnvDevelopment = webpackEnv === 'development';
const isEnvProduction = webpackEnv === 'production';
// Webpack uses `publicPath` to determine where the app is being served from.
@@ -66,12 +75,10 @@ module.exports = function(webpackEnv) {
// common function to get style loaders
const getStyleLoaders = (cssOptions, preProcessor) => {
const loaders = [
isEnvDevelopment && require.resolve('style-loader'),
isEnvProduction && {
loader: MiniCssExtractPlugin.loader,
options: Object.assign(
{},
shouldUseRelativeAssetPaths ? { publicPath: '../../' } : undefined
),
options: shouldUseRelativeAssetPaths ? { publicPath: '../../' } : {},
},
{
loader: require.resolve('css-loader'),
@@ -104,12 +111,20 @@ module.exports = function(webpackEnv) {
},
].filter(Boolean);
if (preProcessor) {
loaders.push({
loader: require.resolve(preProcessor),
loaders.push(
{
loader: require.resolve('resolve-url-loader'),
options: {
sourceMap: isEnvProduction && shouldUseSourceMap,
},
});
},
{
loader: require.resolve(preProcessor),
options: {
sourceMap: true,
},
}
);
}
return loaders;
};
@@ -118,10 +133,26 @@ module.exports = function(webpackEnv) {
mode: 'production',
// Stop compilation early in production
bail: isEnvProduction,
devtool: shouldUseSourceMap ? 'source-map' : false,
devtool: isEnvProduction
? shouldUseSourceMap
? 'source-map'
: false
: isEnvDevelopment && 'cheap-module-source-map',
// These are the "entry points" to our application.
// This means they will be the "root" imports that are included in JS bundle.
entry: isEnvProduction ? [paths.appDemoIndexJs] : [
// Include an alternative client for WebpackDevServer. A client's job is to
// connect to WebpackDevServer by a socket and get notified about changes.
// When you save a file, the client will either apply hot updates (in case
// of CSS changes), or refresh the page (in case of JS changes). When you
// make a syntax error, this client will display a syntax error overlay.
// Note: instead of the default WebpackDevServer client, we use a custom one
// to bring better experience for Create React App users. You can replace
// the line below with these two lines if you prefer the stock client:
// require.resolve('webpack-dev-server/client') + '?/',
// require.resolve('webpack/hot/dev-server'),
isEnvDevelopment &&
require.resolve('react-dev-utils/webpackHotDevClient'),
// Finally, this is your app's code:
paths.appDemoIndexJs,
// We include the app code last so that if there is a runtime error during
@@ -132,6 +163,7 @@ module.exports = function(webpackEnv) {
// The build folder.
path: isEnvProduction ? paths.appDemo : undefined,
// Add /* filename */ comments to generated require()s in the output.
pathinfo: isEnvDevelopment,
// There will be one main bundle, and one file per asynchronous chunk.
// In development, it does not produce real files.
filename: 'index.js',
@@ -148,7 +180,11 @@ module.exports = function(webpackEnv) {
path
.relative(paths.appSrcDemo, info.absoluteResourcePath)
.replace(/\\/g, '/')
: null,
: isEnvDevelopment &&
(info => path.resolve(info.absoluteResourcePath).replace(/\\/g, '/')),
// Prevents conflicts when multiple Webpack runtimes (from different apps)
// are used on the same page.
jsonpFunction: `webpackJsonp${appPackageJson.name}`,
},
optimization: {
minimize: isEnvProduction,
@@ -157,8 +193,8 @@ module.exports = function(webpackEnv) {
new TerserPlugin({
terserOptions: {
parse: {
// we want terser to parse ecma 8 code. However, we don't want it
// to apply any minfication steps that turns valid ecma 5 code
// We want terser to parse ecma 8 code. However, we don't want it
// to apply any minification steps that turns valid ecma 5 code
// into invalid ecma 5 code. This is why the 'compress' and 'output'
// sections only apply transformations that are ecma 5 safe
// https://github.com/facebook/create-react-app/pull/4234
@@ -174,7 +210,7 @@ module.exports = function(webpackEnv) {
comparisons: false,
// Disabled because of an issue with Terser breaking valid code:
// https://github.com/facebook/create-react-app/issues/5250
// Pending futher investigation:
// Pending further investigation:
// https://github.com/terser-js/terser/issues/120
inline: 2,
},
@@ -236,7 +272,9 @@ module.exports = function(webpackEnv) {
// We placed these paths second because we want `node_modules` to "win"
// if there are any conflicts. This matches Node resolution mechanism.
// https://github.com/facebook/create-react-app/issues/253
modules: ['node_modules', paths.appNodeModules].concat(modules.additionalModulePaths || []),
modules: ['node_modules', paths.appNodeModules].concat(
modules.additionalModulePaths || []
),
// These are the reasonable defaults supported by the Node ecosystem.
// We also include JSX as a common component filename extension to support
// some tools, although we do not recommend using it, see:
@@ -286,6 +324,7 @@ module.exports = function(webpackEnv) {
options: {
formatter: require.resolve('react-dev-utils/eslintFormatter'),
eslintPath: require.resolve('eslint'),
resolvePluginsRelativeTo: __dirname,
},
loader: require.resolve('eslint-loader'),
@@ -305,7 +344,7 @@ module.exports = function(webpackEnv) {
test: [/\.bmp$/, /\.gif$/, /\.jpe?g$/, /\.png$/],
loader: require.resolve('url-loader'),
options: {
limit: 10000,
limit: imageInlineSizeLimit,
name: 'static/media/[name].[hash:8].[ext]',
},
},
@@ -461,24 +500,34 @@ module.exports = function(webpackEnv) {
},
plugins: [
// Generates an `index.html` file with the <script> injected.
new HtmlWebpackPlugin({
inject: true,
template: paths.appHtml,
minify: {
removeComments: true,
collapseWhitespace: true,
removeRedundantAttributes: true,
useShortDoctype: true,
removeEmptyAttributes: true,
removeStyleLinkTypeAttributes: true,
keepClosingSlash: true,
minifyJS: true,
minifyCSS: true,
minifyURLs: true,
},
}),
new HtmlWebpackPlugin(
Object.assign(
{},
{
inject: true,
template: paths.appHtml
},
isEnvProduction
? {
minify: {
removeComments: true,
collapseWhitespace: true,
removeRedundantAttributes: true,
useShortDoctype: true,
removeEmptyAttributes: true,
removeStyleLinkTypeAttributes: true,
keepClosingSlash: true,
minifyJS: true,
minifyCSS: true,
minifyURLs: true,
},
}
: undefined
)
),
// Inlines the webpack runtime script. This script is too small to warrant
// a network request.
isEnvProduction &&
shouldInlineRuntimeChunk &&
new InlineChunkHtmlPlugin(HtmlWebpackPlugin, [/runtime~.+[.]js/]),
// Makes some environment variables available in index.html.
@@ -497,6 +546,18 @@ module.exports = function(webpackEnv) {
// during a production build.
// Otherwise React will be compiled in the very slow development mode.
new webpack.DefinePlugin(env.stringified),
// This is necessary to emit hot updates (currently CSS only):
isEnvDevelopment && new webpack.HotModuleReplacementPlugin(),
// Watcher doesn't work well if you mistype casing in a path so we use
// a plugin that prints an error when you attempt to do this.
// See https://github.com/facebook/create-react-app/issues/240
isEnvDevelopment && new CaseSensitivePathsPlugin(),
// If you require a missing module and then `npm install` it, you still have
// to restart the development server for Webpack to discover it. This plugin
// makes the discovery automatic so you don't have to restart.
// See https://github.com/facebook/create-react-app/issues/186
isEnvDevelopment &&
new WatchMissingNodeModulesPlugin(paths.appNodeModules),
isEnvProduction &&
new MiniCssExtractPlugin({
// Options similar to the same options in webpackOptions.output
@@ -551,6 +612,12 @@ module.exports = function(webpackEnv) {
}),
useTypescriptIncrementalApi: true,
checkSyntacticErrors: true,
resolveModuleNameModule: process.versions.pnp
? `${__dirname}/pnpTs.js`
: undefined,
resolveTypeReferenceDirectiveModule: process.versions.pnp
? `${__dirname}/pnpTs.js`
: undefined,
tsconfig: paths.appTsConfig,
reportFiles: [
'**',

View File

@@ -13,7 +13,9 @@ const TerserPlugin = require('terser-webpack-plugin');
const MiniCssExtractPlugin = require('mini-css-extract-plugin');
const OptimizeCSSAssetsPlugin = require('optimize-css-assets-webpack-plugin');
const safePostCssParser = require('postcss-safe-parser');
const ManifestPlugin = require('webpack-manifest-plugin');
const InterpolateHtmlPlugin = require('react-dev-utils/InterpolateHtmlPlugin');
const WorkboxWebpackPlugin = require('workbox-webpack-plugin');
const WatchMissingNodeModulesPlugin = require('react-dev-utils/WatchMissingNodeModulesPlugin');
const ModuleScopePlugin = require('react-dev-utils/ModuleScopePlugin');
const getCSSModuleLocalIdent = require('react-dev-utils/getCSSModuleLocalIdent');
@@ -26,15 +28,22 @@ const typescriptFormatter = require('react-dev-utils/typescriptFormatter');
const CopyWebpackPlugin = require('copy-webpack-plugin');
const getPackageJson = require('./getPackageJson');
const PrettierPlugin = require("prettier-webpack-plugin");
const eslint = require('eslint');
const postcssNormalize = require('postcss-normalize');
const appPackageJson = require(paths.appPackageJson);
// Source maps are resource heavy and can cause out of memory issue for large source files.
const shouldUseSourceMap = process.env.GENERATE_SOURCEMAP !== 'false';
// Some apps do not need the benefits of saving a web request, so not inlining the chunk
// makes for a smoother build process.
const shouldInlineRuntimeChunk = process.env.INLINE_RUNTIME_CHUNK !== 'false';
const imageInlineSizeLimit = parseInt(
process.env.IMAGE_INLINE_SIZE_LIMIT || '10000'
);
// Check if TypeScript is setup
const useTypeScript = fs.existsSync(paths.appTsConfig);
@@ -93,10 +102,7 @@ module.exports = function(webpackEnv) {
isEnvDevelopment && require.resolve('style-loader'),
isEnvProduction && {
loader: MiniCssExtractPlugin.loader,
options: Object.assign(
{},
shouldUseRelativeAssetPaths ? { publicPath: '../../' } : undefined
),
options: shouldUseRelativeAssetPaths ? { publicPath: '../../' } : {},
},
{
loader: require.resolve('css-loader'),
@@ -129,12 +135,20 @@ module.exports = function(webpackEnv) {
},
].filter(Boolean);
if (preProcessor) {
loaders.push({
loader: require.resolve(preProcessor),
loaders.push(
{
loader: require.resolve('resolve-url-loader'),
options: {
sourceMap: isEnvProduction && shouldUseSourceMap,
},
});
},
{
loader: require.resolve(preProcessor),
options: {
sourceMap: true,
},
}
);
}
return loaders;
};
@@ -199,6 +213,9 @@ module.exports = function(webpackEnv) {
.replace(/\\/g, '/')
: isEnvDevelopment &&
(info => path.resolve(info.absoluteResourcePath).replace(/\\/g, '/')),
// Prevents conflicts when multiple Webpack runtimes (from different apps)
// are used on the same page.
jsonpFunction: `webpackJsonp${appPackageJson.name}`,
},
optimization: {
minimize: isEnvProduction,
@@ -207,8 +224,8 @@ module.exports = function(webpackEnv) {
new TerserPlugin({
terserOptions: {
parse: {
// we want terser to parse ecma 8 code. However, we don't want it
// to apply any minfication steps that turns valid ecma 5 code
// We want terser to parse ecma 8 code. However, we don't want it
// to apply any minification steps that turns valid ecma 5 code
// into invalid ecma 5 code. This is why the 'compress' and 'output'
// sections only apply transformations that are ecma 5 safe
// https://github.com/facebook/create-react-app/pull/4234
@@ -224,14 +241,14 @@ module.exports = function(webpackEnv) {
comparisons: false,
// Disabled because of an issue with Terser breaking valid code:
// https://github.com/facebook/create-react-app/issues/5250
// Pending futher investigation:
// Pending further investigation:
// https://github.com/terser-js/terser/issues/120
inline: 2,
},
mangle: {
safari10: true,
//keep_classnames: true,
//keep_fnames: true,
keep_classnames: true,
keep_fnames: true,
module: true
},
output: {
@@ -289,7 +306,9 @@ module.exports = function(webpackEnv) {
// We placed these paths second because we want `node_modules` to "win"
// if there are any conflicts. This matches Node resolution mechanism.
// https://github.com/facebook/create-react-app/issues/253
modules: ['node_modules', paths.appNodeModules].concat(modules.additionalModulePaths || []),
modules: ['node_modules', paths.appNodeModules].concat(
modules.additionalModulePaths || []
),
// These are the reasonable defaults supported by the Node ecosystem.
// We also include JSX as a common component filename extension to support
// some tools, although we do not recommend using it, see:
@@ -339,6 +358,7 @@ module.exports = function(webpackEnv) {
options: {
formatter: require.resolve('react-dev-utils/eslintFormatter'),
eslintPath: require.resolve('eslint'),
resolvePluginsRelativeTo: __dirname,
},
loader: require.resolve('eslint-loader'),
@@ -358,7 +378,7 @@ module.exports = function(webpackEnv) {
test: [/\.bmp$/, /\.gif$/, /\.jpe?g$/, /\.png$/],
loader: require.resolve('url-loader'),
options: {
limit: 10000,
limit: imageInlineSizeLimit,
name: 'static/media/[name].[hash:8].[ext]',
},
},
@@ -514,12 +534,8 @@ module.exports = function(webpackEnv) {
},
plugins: [
isEnvDevelopment &&
new HtmlWebpackPlugin({
inject: true,
template: paths.appHtml,
}),
// Generates an `index.html` file with the <script> injected.
/*new HtmlWebpackPlugin(
new HtmlWebpackPlugin(
Object.assign(
{},
{
@@ -543,7 +559,7 @@ module.exports = function(webpackEnv) {
}
: undefined
)
),*/
),
// Inlines the webpack runtime script. This script is too small to warrant
// a network request.
isEnvProduction &&
@@ -639,6 +655,12 @@ module.exports = function(webpackEnv) {
async: isEnvDevelopment,
useTypescriptIncrementalApi: true,
checkSyntacticErrors: true,
resolveModuleNameModule: process.versions.pnp
? `${__dirname}/pnpTs.js`
: undefined,
resolveTypeReferenceDirectiveModule: process.versions.pnp
? `${__dirname}/pnpTs.js`
: undefined,
tsconfig: paths.appTsConfig,
reportFiles: [
'**',

View File

@@ -1,579 +0,0 @@
'use strict';
const fs = require('fs');
const isWsl = require('is-wsl');
const path = require('path');
const webpack = require('webpack');
const resolve = require('resolve');
const PnpWebpackPlugin = require('pnp-webpack-plugin');
const HtmlWebpackPlugin = require('html-webpack-plugin');
const InlineChunkHtmlPlugin = require('react-dev-utils/InlineChunkHtmlPlugin');
const MiniCssExtractPlugin = require('mini-css-extract-plugin');
const OptimizeCSSAssetsPlugin = require('optimize-css-assets-webpack-plugin');
const safePostCssParser = require('postcss-safe-parser');
const InterpolateHtmlPlugin = require('react-dev-utils/InterpolateHtmlPlugin');
const ModuleScopePlugin = require('react-dev-utils/ModuleScopePlugin');
const getCSSModuleLocalIdent = require('react-dev-utils/getCSSModuleLocalIdent');
const paths = require('./paths');
const modules = require('./modules');
const getClientEnvironment = require('./env');
const ModuleNotFoundPlugin = require('react-dev-utils/ModuleNotFoundPlugin');
const ForkTsCheckerWebpackPlugin = require('react-dev-utils/ForkTsCheckerWebpackPlugin');
const typescriptFormatter = require('react-dev-utils/typescriptFormatter');
const UglifyJsPlugin = require('uglifyjs-webpack-plugin');
const getPackageJson = require('./getPackageJson');
const postcssNormalize = require('postcss-normalize');
// Source maps are resource heavy and can cause out of memory issue for large source files.
const shouldUseSourceMap = false;
// Some apps do not need the benefits of saving a web request, so not inlining the chunk
// makes for a smoother build process.
const shouldInlineRuntimeChunk = process.env.INLINE_RUNTIME_CHUNK !== 'false';
// Check if TypeScript is setup
const useTypeScript = fs.existsSync(paths.appTsConfig);
// style files regexes
const cssRegex = /\.css$/;
const cssModuleRegex = /\.module\.css$/;
const sassRegex = /\.(scss|sass)$/;
const sassModuleRegex = /\.module\.(scss|sass)$/;
const {
version,
name,
license,
repository,
author,
} = getPackageJson('version', 'name', 'license', 'repository', 'author');
const banner = `
${name} v${version} (Non-minified build)
${repository.url}
Copyright (c) ${author.replace(/ *\<[^)]*\> */g, " ")}
This source code is licensed under the ${license} license found in the
LICENSE file in the root directory of this source tree.
`;
// This is the production and development configuration.
// It is focused on developer experience, fast rebuilds, and a minimal bundle.
module.exports = function(webpackEnv) {
const isEnvDevelopment = webpackEnv === 'development';
const isEnvProduction = webpackEnv === 'production';
// Webpack uses `publicPath` to determine where the app is being served from.
// It requires a trailing slash, or the file assets will get an incorrect path.
// In development, we always serve from the root. This makes config easier.
const publicPath = isEnvProduction
? paths.servedPath
: isEnvDevelopment && '/';
// Some apps do not use client-side routing with pushState.
// For these, "homepage" can be set to "." to enable relative asset paths.
const shouldUseRelativeAssetPaths = publicPath === './';
// `publicUrl` is just like `publicPath`, but we will provide it to our app
// as %PUBLIC_URL% in `index.html` and `process.env.PUBLIC_URL` in JavaScript.
// Omit trailing slash as %PUBLIC_URL%/xyz looks better than %PUBLIC_URL%xyz.
const publicUrl = isEnvProduction
? publicPath.slice(0, -1)
: isEnvDevelopment && '';
// Get environment variables to inject into our app.
const env = getClientEnvironment(publicUrl);
// common function to get style loaders
const getStyleLoaders = (cssOptions, preProcessor) => {
const loaders = [
{
loader: MiniCssExtractPlugin.loader,
options: Object.assign(
{},
shouldUseRelativeAssetPaths ? { publicPath: '../../' } : undefined
),
},
{
loader: require.resolve('css-loader'),
options: cssOptions,
},
{
// Options for PostCSS as we reference these options twice
// Adds vendor prefixing based on your specified browser support in
// package.json
loader: require.resolve('postcss-loader'),
options: {
// Necessary for external CSS imports to work
// https://github.com/facebook/create-react-app/issues/2677
ident: 'postcss',
plugins: () => [
require('postcss-flexbugs-fixes'),
require('postcss-preset-env')({
autoprefixer: {
flexbox: 'no-2009',
},
stage: 3,
}),
// Adds PostCSS Normalize as the reset css with default options,
// so that it honors browserslist config in package.json
// which in turn let's users customize the target behavior as per their needs.
postcssNormalize(),
],
sourceMap: shouldUseSourceMap,
},
},
].filter(Boolean);
if (preProcessor) {
loaders.push({
loader: require.resolve(preProcessor),
options: {
sourceMap: shouldUseSourceMap,
},
});
}
return loaders;
};
return {
mode: 'production',
// Stop compilation early in production
bail: true,
devtool: false,
// These are the "entry points" to our application.
// This means they will be the "root" imports that are included in JS bundle.
entry: [paths.appLibIndexJs],
output: {
// The build folder.
path: paths.appBuild,
// Add /* filename */ comments to generated require()s in the output.
pathinfo: isEnvDevelopment,
// There will be one main bundle, and one file per asynchronous chunk.
// In development, it does not produce real files.
filename: 'simple-keyboard.js',
// TODO: remove this when upgrading to webpack 5
futureEmitAssets: true,
// There are also additional JS chunk files if you use code splitting.
chunkFilename: 'index.[chunkhash:8].chunk.js',
// We inferred the "public path" (such as / or /my-project) from homepage.
// We use "/" in development.
publicPath: publicPath,
library: "SimpleKeyboard",
libraryTarget: 'umd',
umdNamedDefine: true,
// Point sourcemap entries to original disk location (format as URL on Windows)
devtoolModuleFilenameTemplate: info =>
path
.relative(paths.appSrcLib, info.absoluteResourcePath)
.replace(/\\/g, '/'),
},
optimization: {
minimizer: [
// we specify a custom UglifyJsPlugin here to get source maps in production
new UglifyJsPlugin({
cache: false,
parallel: false,
uglifyOptions: {
output: {
comments: true,
beautify: true,
braces: true,
indent_level: 2
},
mangle: false,
compress: false
},
// Use multi-process parallel running to improve the build speed
// Default number of concurrent runs: os.cpus().length - 1
// Disabled on WSL (Windows Subsystem for Linux) due to an issue with Terser
// https://github.com/webpack-contrib/terser-webpack-plugin/issues/21
parallel: !isWsl,
// Enable file caching
cache: true,
sourceMap: false,
}),
new webpack.BannerPlugin({
banner: banner,
entryOnly: true
}),
new OptimizeCSSAssetsPlugin({
cssProcessorOptions: {
parser: safePostCssParser,
map: shouldUseSourceMap
? {
// `inline: false` forces the sourcemap to be output into a
// separate file
inline: false,
// `annotation: true` appends the sourceMappingURL to the end of
// the css file, helping the browser find the sourcemap
annotation: true,
}
: false,
},
}),
],
// Automatically split vendor and commons
// https://twitter.com/wSokra/status/969633336732905474
// https://medium.com/webpack/webpack-4-code-splitting-chunk-graph-and-the-splitchunks-optimization-be739a861366
splitChunks: {
//chunks: 'all',
cacheGroups: {
default: false,
}
},
// Keep the runtime chunk separated to enable long term caching
// https://twitter.com/wSokra/status/969679223278505985
runtimeChunk: false,
},
resolve: {
// This allows you to set a fallback for where Webpack should look for modules.
// We placed these paths second because we want `node_modules` to "win"
// if there are any conflicts. This matches Node resolution mechanism.
// https://github.com/facebook/create-react-app/issues/253
modules: ['node_modules', paths.appNodeModules].concat(modules.additionalModulePaths || []),
// These are the reasonable defaults supported by the Node ecosystem.
// We also include JSX as a common component filename extension to support
// some tools, although we do not recommend using it, see:
// https://github.com/facebook/create-react-app/issues/290
// `web` extension prefixes have been added for better support
// for React Native Web.
extensions: paths.moduleFileExtensions
.map(ext => `.${ext}`)
.filter(ext => useTypeScript || !ext.includes('ts')),
alias: {
// Support React Native Web
// https://www.smashingmagazine.com/2016/08/a-glimpse-into-the-future-with-react-native-for-web/
'react-native': 'react-native-web',
},
plugins: [
// Adds support for installing with Plug'n'Play, leading to faster installs and adding
// guards against forgotten dependencies and such.
PnpWebpackPlugin,
// Prevents users from importing files from outside of src/ (or node_modules/).
// This often causes confusion because we only process files within src/ with babel.
// To fix this, we prevent you from importing files out of src/ -- if you'd like to,
// please link the files into your node_modules/ and let module-resolution kick in.
// Make sure your source files are compiled, as they will not be processed in any way.
new ModuleScopePlugin(paths.appSrc, [paths.appPackageJson]),
],
},
resolveLoader: {
plugins: [
// Also related to Plug'n'Play, but this time it tells Webpack to load its loaders
// from the current package.
PnpWebpackPlugin.moduleLoader(module),
],
},
module: {
strictExportPresence: true,
rules: [
// Disable require.ensure as it's not a standard language feature.
{ parser: { requireEnsure: false } },
// First, run the linter.
// It's important to do this before Babel processes the JS.
{
test: /\.(js|mjs|jsx|ts|tsx)$/,
enforce: 'pre',
use: [
{
options: {
formatter: require.resolve('react-dev-utils/eslintFormatter'),
eslintPath: require.resolve('eslint'),
},
loader: require.resolve('eslint-loader'),
},
],
include: paths.appSrcLib,
},
{
// "oneOf" will traverse all following loaders until one will
// match the requirements. When no loader matches it will fall
// back to the "file" loader at the end of the loader list.
oneOf: [
// "url" loader works like "file" loader except that it embeds assets
// smaller than specified limit in bytes as data URLs to avoid requests.
// A missing `test` is equivalent to a match.
{
test: [/\.bmp$/, /\.gif$/, /\.jpe?g$/, /\.png$/],
loader: require.resolve('url-loader'),
options: {
limit: 10000,
name: 'static/media/[name].[hash:8].[ext]',
},
},
// Process application JS with Babel.
// The preset includes JSX, Flow, TypeScript, and some ESnext features.
{
test: /\.(js|mjs|jsx|ts|tsx)$/,
include: paths.appSrcLib,
loader: require.resolve('babel-loader'),
options: {
customize: require.resolve(
'babel-preset-react-app/webpack-overrides'
),
plugins: [
[
require.resolve('babel-plugin-named-asset-import'),
{
loaderMap: {
svg: {
ReactComponent: '@svgr/webpack?-prettier,-svgo,+ref![path]',
},
},
},
],
],
// This is a feature of `babel-loader` for webpack (not Babel itself).
// It enables caching results in ./node_modules/.cache/babel-loader/
// directory for faster rebuilds.
cacheDirectory: true,
cacheCompression: true,
compact: true,
},
},
// Process any JS outside of the app with Babel.
// Unlike the application JS, we only compile the standard ES features.
{
test: /\.(js|mjs)$/,
exclude: /@babel(?:\/|\\{1,2})runtime/,
loader: require.resolve('babel-loader'),
options: {
babelrc: false,
configFile: false,
compact: false,
presets: [
[
require.resolve('babel-preset-react-app/dependencies'),
{ helpers: true },
],
],
cacheDirectory: true,
cacheCompression: true,
// If an error happens in a package, it's possible to be
// because it was compiled. Thus, we don't want the browser
// debugger to show the original code. Instead, the code
// being evaluated would be much more helpful.
sourceMaps: false,
},
},
// "postcss" loader applies autoprefixer to our CSS.
// "css" loader resolves paths in CSS and adds assets as dependencies.
// "style" loader turns CSS into JS modules that inject <style> tags.
// In production, we use MiniCSSExtractPlugin to extract that CSS
// to a file, but in development "style" loader enables hot editing
// of CSS.
// By default we support CSS Modules with the extension .module.css
{
test: cssRegex,
exclude: cssModuleRegex,
use: getStyleLoaders({
importLoaders: 1,
sourceMap: shouldUseSourceMap,
}),
// Don't consider CSS imports dead code even if the
// containing package claims to have no side effects.
// Remove this when webpack adds a warning or an error for this.
// See https://github.com/webpack/webpack/issues/6571
sideEffects: true,
},
// Adds support for CSS Modules (https://github.com/css-modules/css-modules)
// using the extension .module.css
{
test: cssModuleRegex,
use: getStyleLoaders({
importLoaders: 1,
sourceMap: shouldUseSourceMap,
modules: true,
getLocalIdent: getCSSModuleLocalIdent,
}),
},
// Opt-in support for SASS (using .scss or .sass extensions).
// By default we support SASS Modules with the
// extensions .module.scss or .module.sass
{
test: sassRegex,
exclude: sassModuleRegex,
use: getStyleLoaders(
{
importLoaders: 2,
sourceMap: shouldUseSourceMap,
},
'sass-loader'
),
// Don't consider CSS imports dead code even if the
// containing package claims to have no side effects.
// Remove this when webpack adds a warning or an error for this.
// See https://github.com/webpack/webpack/issues/6571
sideEffects: true,
},
// Adds support for CSS Modules, but using SASS
// using the extension .module.scss or .module.sass
{
test: sassModuleRegex,
use: getStyleLoaders(
{
importLoaders: 2,
sourceMap: shouldUseSourceMap,
modules: true,
getLocalIdent: getCSSModuleLocalIdent,
},
'sass-loader'
),
},
// "file" loader makes sure those assets get served by WebpackDevServer.
// When you `import` an asset, you get its (virtual) filename.
// In production, they would get copied to the `build` folder.
// This loader doesn't use a "test" so it will catch all modules
// that fall through the other loaders.
{
loader: require.resolve('file-loader'),
// Exclude `js` files to keep "css" loader working as it injects
// its runtime that would otherwise be processed through "file" loader.
// Also exclude `html` and `json` extensions so they get processed
// by webpacks internal loaders.
exclude: [/\.(js|mjs|jsx|ts|tsx)$/, /\.html$/, /\.json$/],
options: {
name: 'static/media/[name].[hash:8].[ext]',
},
},
// ** STOP ** Are you adding a new loader?
// Make sure to add the new loader(s) before the "file" loader.
],
},
],
},
plugins: [
// Generates an `index.html` file with the <script> injected.
/*new HtmlWebpackPlugin(
Object.assign(
{},
{
inject: true,
template: paths.appHtml,
},
isEnvProduction
? {
minify: {
removeComments: true,
collapseWhitespace: true,
removeRedundantAttributes: true,
useShortDoctype: true,
removeEmptyAttributes: true,
removeStyleLinkTypeAttributes: true,
keepClosingSlash: true,
minifyJS: true,
minifyCSS: true,
minifyURLs: true,
},
}
: undefined
)
),*/
// Inlines the webpack runtime script. This script is too small to warrant
// a network request.
shouldInlineRuntimeChunk &&
new InlineChunkHtmlPlugin(HtmlWebpackPlugin, [/runtime~.+[.]js/]),
// Makes some environment variables available in index.html.
// The public URL is available as %PUBLIC_URL% in index.html, e.g.:
// <link rel="shortcut icon" href="%PUBLIC_URL%/favicon.ico">
// In production, it will be an empty string unless you specify "homepage"
// in `package.json`, in which case it will be the pathname of that URL.
// In development, this will be an empty string.
new InterpolateHtmlPlugin(HtmlWebpackPlugin, env.raw),
// This gives some necessary context to module not found errors, such as
// the requesting resource.
new ModuleNotFoundPlugin(paths.appPath),
// Makes some environment variables available to the JS code, for example:
// if (process.env.NODE_ENV === 'production') { ... }. See `./env.js`.
// It is absolutely essential that NODE_ENV is set to production
// during a production build.
// Otherwise React will be compiled in the very slow development mode.
new webpack.DefinePlugin(env.stringified),
new MiniCssExtractPlugin({
// Options similar to the same options in webpackOptions.output
// both options are optional
filename: 'css/simple-keyboard.css',
chunkFilename: 'css/index.[contenthash:8].chunk.css',
}),
// Generate a manifest file which contains a mapping of all asset filenames
// to their corresponding output file so that tools can pick it up without
// having to parse `index.html`.
/*new ManifestPlugin({
fileName: 'asset-manifest.json',
publicPath: publicPath,
generate: (seed, files) => {
const manifestFiles = files.reduce(function(manifest, file) {
manifest[file.name] = file.path;
return manifest;
}, seed);
return {
files: manifestFiles,
};
},
}),*/
// Moment.js is an extremely popular library that bundles large locale files
// by default due to how Webpack interprets its code. This is a practical
// solution that requires the user to opt into importing specific locales.
// https://github.com/jmblog/how-to-optimize-momentjs-with-webpack
// You can remove this if you don't use Moment.js:
new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/),
// Generate a service worker script that will precache, and keep up to date,
// the HTML & assets that are part of the Webpack build.
/*isEnvProduction &&
new WorkboxWebpackPlugin.GenerateSW({
clientsClaim: true,
exclude: [/\.map$/, /asset-manifest\.json$/],
importWorkboxFrom: 'cdn',
navigateFallback: publicUrl + '/index.html',
navigateFallbackBlacklist: [
// Exclude URLs starting with /_, as they're likely an API call
new RegExp('^/_'),
// Exclude URLs containing a dot, as they're likely a resource in
// public/ and not a SPA route
new RegExp('/[^/]+\\.[^/]+$'),
],
}),*/
// TypeScript type checking
useTypeScript &&
new ForkTsCheckerWebpackPlugin({
typescript: resolve.sync('typescript', {
basedir: paths.appNodeModules,
}),
async: false,
useTypescriptIncrementalApi: true,
checkSyntacticErrors: true,
tsconfig: paths.appTsConfig,
reportFiles: [
'**',
'!**/__tests__/**',
'!**/?(*.)(spec|test).*',
'!**/src/setupProxy.*',
'!**/src/setupTests.*',
],
watch: paths.appSrcLib,
silent: true,
// The formatter is invoked directly in WebpackDevServerUtils during development
formatter: isEnvProduction ? typescriptFormatter : undefined,
}),
].filter(Boolean),
// Some libraries import Node modules but don't use them in the browser.
// Tell Webpack to provide empty mocks for them so importing them works.
node: {
module: 'empty',
dgram: 'empty',
dns: 'mock',
fs: 'empty',
http2: 'empty',
net: 'empty',
tls: 'empty',
child_process: 'empty',
},
// Turn off performance processing because we utilize
// our own hints via the FileSizeReporter
performance: false,
};
};

12905
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,17 +1,17 @@
{
"name": "simple-keyboard",
"version": "2.21.0",
"version": "2.27.1",
"description": "On-screen Javascript Virtual Keyboard",
"main": "build/index.js",
"types": "build/index.d.ts",
"scripts": {
"start": "node scripts/start.js",
"build": "node scripts/build.js && node scripts/buildUnminified.js",
"build": "node scripts/build.js",
"demo": "node scripts/demo.js",
"test": "node scripts/test.js",
"coverage": "node scripts/test.js --coverage --watchAll=false",
"postinstall": "node bin/postinstall",
"prepare": "npm run build"
"prepare": "npm run build",
"trypublish": "npm publish || true"
},
"repository": {
"type": "git",
@@ -40,80 +40,76 @@
],
"license": "MIT",
"devDependencies": {
"@babel/core": "7.4.4",
"@babel/plugin-proposal-class-properties": "^7.4.4",
"@babel/preset-env": "^7.4.4",
"@babel/preset-react": "^7.0.0",
"@svgr/webpack": "4.2.0",
"@typescript-eslint/eslint-plugin": "1.7.0",
"@typescript-eslint/parser": "1.7.0",
"babel-eslint": "10.0.1",
"babel-jest": "24.7.1",
"babel-loader": "8.0.5",
"babel-plugin-named-asset-import": "^0.3.2",
"babel-preset-react-app": "^8.0.0",
"@babel/core": "7.7.2",
"@babel/plugin-proposal-class-properties": "^7.7.0",
"@babel/preset-env": "^7.7.1",
"@babel/preset-react": "^7.7.0",
"@svgr/webpack": "4.3.3",
"@typescript-eslint/eslint-plugin": "1.13.0",
"@typescript-eslint/parser": "1.13.0",
"babel-eslint": "10.0.3",
"babel-jest": "^24.8.0",
"babel-loader": "8.0.6",
"babel-plugin-named-asset-import": "^0.3.3",
"babel-preset-react-app": "^9.0.1",
"camelcase": "^5.2.0",
"case-sensitive-paths-webpack-plugin": "2.2.0",
"copy-webpack-plugin": "^5.0.2",
"css-loader": "2.1.1",
"dotenv": "7.0.0",
"copy-webpack-plugin": "^5.0.5",
"css-loader": "3.2.0",
"dotenv": "8.2.0",
"dotenv-expand": "5.1.0",
"eslint": "^5.16.0",
"eslint-config-react-app": "^4.0.0",
"eslint-loader": "2.1.2",
"eslint-plugin-flowtype": "3.6.1",
"eslint-plugin-import": "2.17.2",
"eslint-plugin-jsx-a11y": "6.2.1",
"eslint-plugin-react": "7.12.4",
"eslint-plugin-react-hooks": "^1.5.0",
"file-loader": "3.0.1",
"fs-extra": "7.0.1",
"html-webpack-plugin": "4.0.0-beta.5",
"eslint": "^6.6.0",
"eslint-config-react-app": "^5.0.1",
"eslint-loader": "3.0.2",
"eslint-plugin-flowtype": "3.13.0",
"eslint-plugin-import": "2.18.2",
"eslint-plugin-jsx-a11y": "6.2.3",
"eslint-plugin-react": "7.16.0",
"eslint-plugin-react-hooks": "^2.2.0",
"file-loader": "4.2.0",
"fs-extra": "8.1.0",
"html-webpack-plugin": "4.0.0-beta.8",
"identity-obj-proxy": "3.0.0",
"is-wsl": "^2.0.0",
"jest": "24.7.1",
"is-wsl": "^2.1.0",
"jest": "24.9.0",
"jest-environment-jsdom-fourteen": "0.1.0",
"jest-resolve": "24.7.1",
"jest-watch-typeahead": "0.3.0",
"mini-css-extract-plugin": "0.6.0",
"optimize-css-assets-webpack-plugin": "5.0.1",
"pnp-webpack-plugin": "1.4.3",
"postcss-flexbugs-fixes": "4.1.0",
"postcss-loader": "3.0.0",
"postcss-normalize": "7.0.1",
"postcss-preset-env": "6.6.0",
"postcss-safe-parser": "4.0.1",
"jest-resolve": "24.9.0",
"jest-watch-typeahead": "0.4.0",
"mini-css-extract-plugin": "0.8.0",
"optimize-css-assets-webpack-plugin": "5.0.3",
"pnp-webpack-plugin": "1.5.0",
"prettier": "^1.17.0",
"prettier-webpack-plugin": "^1.2.0",
"react": "^16.8.6",
"react-app-polyfill": "^1.0.0",
"react-dev-utils": "^9.0.0",
"react-dom": "^16.8.6",
"resolve": "1.10.1",
"sass-loader": "7.1.0",
"semver": "6.0.0",
"style-loader": "0.23.1",
"terser-webpack-plugin": "1.2.3",
"postcss-flexbugs-fixes": "4.1.0",
"postcss-loader": "3.0.0",
"postcss-normalize": "8.0.1",
"postcss-preset-env": "6.7.0",
"postcss-safe-parser": "4.0.1",
"react": "^16.11.0",
"react-app-polyfill": "^1.0.2",
"react-dev-utils": "^9.0.3",
"react-dom": "^16.11.0",
"resolve": "1.12.0",
"resolve-url-loader": "3.1.0",
"sass-loader": "7.3.1",
"semver": "6.3.0",
"style-loader": "1.0.0",
"terser-webpack-plugin": "2.2.1",
"ts-pnp": "1.1.4",
"uglifyjs-webpack-plugin": "^2.1.2",
"url-loader": "1.1.2",
"webpack": "4.30.0",
"webpack-dev-server": "3.3.1",
"webpack-manifest-plugin": "2.0.4",
"workbox-webpack-plugin": "4.3.0"
"url-loader": "2.2.0",
"webpack": "4.41.2",
"webpack-dev-server": "3.9.0",
"webpack-manifest-plugin": "2.2.0",
"workbox-webpack-plugin": "4.3.1"
},
"eslintConfig": {
"extends": "react-app",
"settings": {
"react": {
"pragma": "React",
"version": "detect"
}
}
"extends": "react-app"
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not ie <= 11",
"not op_mini all"
],
"development": [
@@ -123,20 +119,25 @@
]
},
"jest": {
"roots": [
"<rootDir>/src"
],
"collectCoverageFrom": [
"src/**/*.{js,jsx,ts,tsx}",
"!src/**/*.d.ts",
"!src/lib/index.js",
"!src/demo/index.js",
"!src/utils/**",
"!src/**/*.d.ts",
"!**/tests/**"
],
"resolver": "jest-pnp-resolver",
"setupFiles": [
"react-app-polyfill/jsdom"
],
"setupFilesAfterEnv": [],
"testMatch": [
"<rootDir>/src/**/tests/**/*.{js,jsx,ts,tsx}"
"<rootDir>/src/**/__tests__/**/*.{js,jsx,ts,tsx}",
"<rootDir>/src/**/*.{spec,test}.{js,jsx,ts,tsx}"
],
"testEnvironment": "jest-environment-jsdom-fourteen",
"transform": {
@@ -177,10 +178,7 @@
],
"plugins": [
[
"@babel/plugin-proposal-class-properties",
{
"loose": true
}
"@babel/plugin-proposal-class-properties"
]
]
}

View File

@@ -23,8 +23,6 @@
<noscript>
You need to enable JavaScript to run this app.
</noscript>
<div id="root">
<div class="simple-keyboard"></div>
</div>
<div id="root"></div>
</body>
</html>

View File

@@ -106,7 +106,7 @@ checkBrowsers(paths.appPath, isInteractive)
);
},
err => {
console.log(chalk.red('Failed to compile.\n'));
console.error('Failed to compile');
printBuildError(err);
process.exit(1);
}

View File

@@ -1,190 +0,0 @@
'use strict';
// Do this as the first thing so that any code reading it knows the right env.
process.env.BABEL_ENV = 'production';
process.env.NODE_ENV = 'production';
// Makes the script crash on unhandled rejections instead of silently
// ignoring them. In the future, promise rejections that are not handled will
// terminate the Node.js process with a non-zero exit code.
process.on('unhandledRejection', err => {
throw err;
});
// Ensure environment variables are read.
require('../config/env');
const path = require('path');
const chalk = require('react-dev-utils/chalk');
const fs = require('fs-extra');
const webpack = require('webpack');
const configFactory = require('../config/webpack.config.unminified');
const paths = require('../config/paths');
const checkRequiredFiles = require('react-dev-utils/checkRequiredFiles');
const formatWebpackMessages = require('react-dev-utils/formatWebpackMessages');
const printHostingInstructions = require('react-dev-utils/printHostingInstructions');
const FileSizeReporter = require('react-dev-utils/FileSizeReporter');
const printBuildError = require('react-dev-utils/printBuildError');
const measureFileSizesBeforeBuild =
FileSizeReporter.measureFileSizesBeforeBuild;
const printFileSizesAfterBuild = FileSizeReporter.printFileSizesAfterBuild;
const useYarn = fs.existsSync(paths.yarnLockFile);
// These sizes are pretty large. We'll warn for bundles exceeding them.
const WARN_AFTER_BUNDLE_GZIP_SIZE = 512 * 1024;
const WARN_AFTER_CHUNK_GZIP_SIZE = 1024 * 1024;
const isInteractive = process.stdout.isTTY;
// Warn and crash if required files are missing
if (!checkRequiredFiles([paths.appHtml, paths.appIndexJs])) {
process.exit(1);
}
// Generate configuration
const config = configFactory('production');
// We require that you explicitly set browsers and do not fall back to
// browserslist defaults.
const { checkBrowsers } = require('react-dev-utils/browsersHelper');
checkBrowsers(paths.appPath, isInteractive)
.then(() => {
// First, read the current file sizes in build directory.
// This lets us display how much they changed later.
return measureFileSizesBeforeBuild(paths.appBuild);
})
.then(previousFileSizes => {
// Remove all content but keep the directory so that
// if you're in it, you don't end up in Trash
//fs.emptyDirSync(paths.appBuild);
// Merge with the public folder
//copyPublicFolder();
// Start the webpack build
return build(previousFileSizes);
})
.then(
({ stats, previousFileSizes, warnings }) => {
if (warnings.length) {
console.log(chalk.yellow('Compiled with warnings.\n'));
console.log(warnings.join('\n\n'));
console.log(
'\nSearch for the ' +
chalk.underline(chalk.yellow('keywords')) +
' to learn more about each warning.'
);
console.log(
'To ignore, add ' +
chalk.cyan('// eslint-disable-next-line') +
' to the line before.\n'
);
} else {
console.log(chalk.green('Compiled successfully.\n'));
}
console.log('File sizes after gzip:\n');
printFileSizesAfterBuild(
stats,
previousFileSizes,
paths.appBuild,
WARN_AFTER_BUNDLE_GZIP_SIZE,
WARN_AFTER_CHUNK_GZIP_SIZE
);
console.log();
const appPackage = require(paths.appPackageJson);
const publicUrl = paths.publicUrl;
const publicPath = config.output.publicPath;
const buildFolder = path.relative(process.cwd(), paths.appBuild);
printHostingInstructions(
appPackage,
publicUrl,
publicPath,
buildFolder,
useYarn
);
},
err => {
console.log(chalk.red('Failed to compile.\n'));
printBuildError(err);
process.exit(1);
}
)
.catch(err => {
if (err && err.message) {
console.log(err.message);
}
process.exit(1);
});
// Create the production build and print the deployment instructions.
function build(previousFileSizes) {
console.log('Creating a non-minified production build...');
// We used to support resolving modules according to `NODE_PATH`.
// This now has been deprecated in favor of jsconfig/tsconfig.json
// This lets you use absolute paths in imports inside large monorepos:
if (process.env.NODE_PATH) {
console.log(
chalk.yellow(
'Setting NODE_PATH to resolve modules absolutely has been deprecated in favor of setting baseUrl in jsconfig.json (or tsconfig.json if you are using TypeScript) and will be removed in a future major release of create-react-app.'
)
);
console.log();
}
const compiler = webpack(config);
return new Promise((resolve, reject) => {
compiler.run((err, stats) => {
let messages;
if (err) {
if (!err.message) {
return reject(err);
}
messages = formatWebpackMessages({
errors: [err.message],
warnings: [],
});
} else {
messages = formatWebpackMessages(
stats.toJson({ all: false, warnings: true, errors: true })
);
}
if (messages.errors.length) {
// Only keep the first error. Others are often indicative
// of the same problem, but confuse the reader with noise.
if (messages.errors.length > 1) {
messages.errors.length = 1;
}
return reject(new Error(messages.errors.join('\n\n')));
}
if (
process.env.CI &&
(typeof process.env.CI !== 'string' ||
process.env.CI.toLowerCase() !== 'false') &&
messages.warnings.length
) {
console.log(
chalk.yellow(
'\nTreating warnings as errors because process.env.CI = true.\n' +
'Most CI servers set it automatically.\n'
)
);
return reject(new Error(messages.warnings.join('\n\n')));
}
return resolve({
stats,
previousFileSizes,
warnings: messages.warnings,
});
});
});
}
function copyPublicFolder() {
fs.copySync(paths.appPublic, paths.appBuild, {
dereference: true,
filter: file => file !== paths.appHtml,
});
}

View File

@@ -106,7 +106,7 @@ checkBrowsers(paths.appPath, isInteractive)
);
},
err => {
console.log(chalk.red('Failed to compile.\n'));
console.error('Failed to compile');
printBuildError(err);
process.exit(1);
}

View File

@@ -139,6 +139,8 @@ checkBrowsers(paths.appPath, isInteractive)
stats = stats.toJson();
if (stats.errors && stats.errors.length > 0) {
devServer.close();
process.exit(1);
return;
}

View File

@@ -41,7 +41,8 @@ function isInMercurialRepository() {
// Watch unless on CI or explicitly running all tests
if (
!process.env.CI &&
argv.indexOf('--watchAll') === -1
argv.indexOf('--watchAll') === -1 &&
argv.indexOf('--watchAll=false') === -1
) {
// https://github.com/facebook/create-react-app/issues/5210
const hasSourceControl = isInGitRepository() || isInMercurialRepository();

View File

@@ -1,87 +0,0 @@
import Keyboard from "../lib";
import "./css/App.css";
/**
* simple-keyboard demo
*/
class App {
/**
* Instantiates the demo class
*/
constructor() {
document.addEventListener("DOMContentLoaded", this.onDOMLoaded);
/**
* Default input name
* @type {string}
*/
this.layoutName = "default";
}
/**
* Executed when the DOM is ready
*/
onDOMLoaded = () => {
/**
* Creates a new simple-keyboard instance
*/
this.keyboard = new Keyboard({
debug: true,
layoutName: this.layoutName,
onChange: input => this.onChange(input),
onKeyPress: button => this.onKeyPress(button),
newLineOnEnter: true,
physicalKeyboardHighlight: true
});
/**
* Adding preview (demo only)
*/
document.querySelector(".simple-keyboard").insertAdjacentHTML(
"beforebegin",
`
<div class="simple-keyboard-preview">
<textarea class="input"></textarea>
</div>
`
);
document.querySelector(".input").addEventListener("input", event => {
this.keyboard.setInput(event.target.value);
});
};
/**
* Handles shift functionality
*/
handleShiftButton = () => {
let layoutName = this.layoutName;
let shiftToggle = (this.layoutName =
layoutName === "default" ? "shift" : "default");
this.keyboard.setOptions({
layoutName: shiftToggle
});
};
/**
* Called when simple-keyboard input has changed
*/
onChange = input => {
document.querySelector(".input").value = input;
};
/**
* Called when a simple-keyboard key is pressed
*/
onKeyPress = button => {
console.log("Button pressed", button);
/**
* Shift functionality
*/
if (button === "{lock}" || button === "{shift}") this.handleShiftButton();
};
}
export default App;

55
src/demo/BasicDemo.js Normal file
View File

@@ -0,0 +1,55 @@
import Keyboard from "../lib";
import "./css/BasicDemo.css";
const setDOM = () => {
document.querySelector("#root").innerHTML = `
<input class="input" placeholder="Tap on the virtual keyboard to start" />
<div class="simple-keyboard"></div>
`;
};
class Demo {
constructor() {
setDOM();
/**
* Demo Start
*/
this.keyboard = new Keyboard({
onChange: input => this.onChange(input),
onKeyPress: button => this.onKeyPress(button)
});
/**
* Update simple-keyboard when input is changed directly
*/
document.querySelector(".input").addEventListener("input", event => {
this.keyboard.setInput(event.target.value);
});
}
onChange(input) {
document.querySelector(".input").value = input;
console.log("Input changed", input);
}
onKeyPress(button) {
console.log("Button pressed", button);
/**
* If you want to handle the shift and caps lock buttons
*/
if (button === "{shift}" || button === "{lock}") this.handleShift();
}
handleShift() {
let currentLayout = this.keyboard.options.layoutName;
let shiftToggle = currentLayout === "default" ? "shift" : "default";
this.keyboard.setOptions({
layoutName: shiftToggle
});
}
}
export default Demo;

View File

@@ -0,0 +1,73 @@
import Keyboard from "../lib";
import "./css/ButtonThemeDemo.css";
const setDOM = () => {
document.querySelector("#root").innerHTML = `
<input class="input" placeholder="Tap on the virtual keyboard to start" />
<div class="simple-keyboard"></div>
`;
};
class Demo {
constructor() {
setDOM();
/**
* Demo Start
*/
this.keyboard = new Keyboard({
theme: "hg-theme-default my-theme",
onChange: input => this.onChange(input),
onKeyPress: button => this.onKeyPress(button),
buttonTheme: [
{
class: "my-button",
buttons: "{enter} {bksp} q Q"
},
{
class: "my-button-outline",
buttons: "q Q b B"
}
],
buttonAttributes: [
{
attribute: "aria-label",
value: "bee",
buttons: "b B"
}
]
});
/**
* Update simple-keyboard when input is changed directly
*/
document.querySelector(".input").addEventListener("input", event => {
this.keyboard.setInput(event.target.value);
});
}
onChange(input) {
document.querySelector(".input").value = input;
console.log("Input changed", input);
}
onKeyPress(button) {
console.log("Button pressed", button);
/**
* If you want to handle the shift and caps lock buttons
*/
if (button === "{shift}" || button === "{lock}") this.handleShift();
}
handleShift() {
let currentLayout = this.keyboard.options.layoutName;
let shiftToggle = currentLayout === "default" ? "shift" : "default";
this.keyboard.setOptions({
layoutName: shiftToggle
});
}
}
export default Demo;

View File

@@ -0,0 +1,157 @@
import Keyboard from "../lib";
import "./css/FullKeyboardDemo.css";
const setDOM = () => {
document.querySelector("#root").innerHTML = `
<input class="input" placeholder="Tap on the virtual keyboard to start" />
<div class="keyboardContainer">
<div class="simple-keyboard-main"></div>
<div class="controlArrows">
<div class="simple-keyboard-control"></div>
<div class="simple-keyboard-arrows"></div>
</div>
<div class="numPad">
<div class="simple-keyboard-numpad"></div>
<div class="simple-keyboard-numpadEnd"></div>
</div>
</div>
`;
};
class Demo {
constructor() {
setDOM();
/**
* Demo Start
*/
let commonKeyboardOptions = {
onChange: input => this.onChange(input),
onKeyPress: button => this.onKeyPress(button),
theme: "simple-keyboard hg-theme-default hg-layout-default",
physicalKeyboardHighlight: true,
syncInstanceInputs: true,
mergeDisplay: true,
debug: true
};
this.keyboard = new Keyboard(".simple-keyboard-main", {
...commonKeyboardOptions,
/**
* Layout by:
* Sterling Butters (https://github.com/SterlingButters)
*/
layout: {
default: [
"{escape} {f1} {f2} {f3} {f4} {f5} {f6} {f7} {f8} {f9} {f10} {f11} {f12}",
"` 1 2 3 4 5 6 7 8 9 0 - = {backspace}",
"{tab} q w e r t y u i o p [ ] \\",
"{capslock} a s d f g h j k l ; ' {enter}",
"{shiftleft} z x c v b n m , . / {shiftright}",
"{controlleft} {altleft} {metaleft} {space} {metaright} {altright}"
],
shift: [
"{escape} {f1} {f2} {f3} {f4} {f5} {f6} {f7} {f8} {f9} {f10} {f11} {f12}",
"~ ! @ # $ % ^ & * ( ) _ + {backspace}",
"{tab} Q W E R T Y U I O P { } |",
'{capslock} A S D F G H J K L : " {enter}',
"{shiftleft} Z X C V B N M < > ? {shiftright}",
"{controlleft} {altleft} {metaleft} {space} {metaright} {altright}"
]
},
display: {
"{escape}": "esc ⎋",
"{tab}": "tab ⇥",
"{backspace}": "backspace ⌫",
"{enter}": "enter ↵",
"{capslock}": "caps lock ⇪",
"{shiftleft}": "shift ⇧",
"{shiftright}": "shift ⇧",
"{controlleft}": "ctrl ⌃",
"{controlright}": "ctrl ⌃",
"{altleft}": "alt ⌥",
"{altright}": "alt ⌥",
"{metaleft}": "cmd ⌘",
"{metaright}": "cmd ⌘"
}
});
this.keyboardControlPad = new Keyboard(".simple-keyboard-control", {
...commonKeyboardOptions,
layout: {
default: [
"{prtscr} {scrolllock} {pause}",
"{insert} {home} {pageup}",
"{delete} {end} {pagedown}"
]
}
});
this.keyboardArrows = new Keyboard(".simple-keyboard-arrows", {
...commonKeyboardOptions,
layout: {
default: ["{arrowup}", "{arrowleft} {arrowdown} {arrowright}"]
}
});
this.keyboardNumPad = new Keyboard(".simple-keyboard-numpad", {
...commonKeyboardOptions,
layout: {
default: [
"{numlock} {numpaddivide} {numpadmultiply}",
"{numpad7} {numpad8} {numpad9}",
"{numpad4} {numpad5} {numpad6}",
"{numpad1} {numpad2} {numpad3}",
"{numpad0} {numpaddecimal}"
]
}
});
this.keyboardNumPadEnd = new Keyboard(".simple-keyboard-numpadEnd", {
...commonKeyboardOptions,
layout: {
default: ["{numpadsubtract}", "{numpadadd}", "{numpadenter}"]
}
});
document.querySelector(".input").addEventListener("input", event => {
let input = document.querySelector(".input").value;
this.keyboard.setInput(input);
});
}
onChange(input) {
document.querySelector(".input").value = input;
this.keyboard.setInput(input);
console.log("Input changed", input);
}
onKeyPress(button) {
console.log("Button pressed", button);
/**
* If you want to handle the shift and caps lock buttons
*/
if (
button === "{shift}" ||
button === "{shiftleft}" ||
button === "{shiftright}" ||
button === "{capslock}"
)
this.handleShift();
}
handleShift() {
let currentLayout = this.keyboard.options.layoutName;
let shiftToggle = currentLayout === "default" ? "shift" : "default";
this.keyboard.setOptions({
layoutName: shiftToggle
});
}
}
export default Demo;

View File

@@ -0,0 +1,75 @@
import Keyboard from "../lib";
import "./css/MultipleKeyboardsDestroyDemo.css";
const setDOM = () => {
document.querySelector("#root").innerHTML = `
<input class="input" placeholder="Tap on the virtual keyboard to start" />
<div class="simple-keyboard"></div>
<input class="input2" placeholder="Tap on the virtual keyboard to start" />
<div class="keyboard2"></div>
`;
};
class Demo {
constructor() {
setDOM();
/**
* Demo Start
*/
this.keyboard = new Keyboard({
onChange: input => this.onChange(input),
onKeyPress: button => this.onKeyPress(button),
debug: true
});
this.keyboard2 = new Keyboard(".keyboard2", {
theme: "simple-keyboard hg-theme-default",
onChange: input => this.onChange(input, "input2"),
onKeyPress: button => this.onKeyPress(button, "keyboard2"),
debug: true
});
console.log(this.keyboard);
setTimeout(this.keyboard.destroy, 10000);
/**
* Update simple-keyboard when input is changed directly
*/
document.querySelector(".input").addEventListener("input", event => {
this.keyboard.setInput(event.target.value);
});
document.querySelector(".input2").addEventListener("input", event => {
this.keyboard2.setInput(event.target.value);
});
}
onChange(input, inputClass) {
document.querySelector(`.${inputClass || "input"}`).value = input;
console.log("Input changed", input);
}
onKeyPress(button, keyboardInstanceKey) {
console.log("Button pressed", button);
/**
* If you want to handle the shift and caps lock buttons
*/
if (button === "{shift}" || button === "{lock}")
this.handleShift(keyboardInstanceKey);
}
handleShift(keyboardInstanceKey) {
let keyboard = this[keyboardInstanceKey || "keyboard"];
let currentLayout = keyboard.options.layoutName;
let shiftToggle = currentLayout === "default" ? "shift" : "default";
keyboard.setOptions({
layoutName: shiftToggle
});
}
}
export default Demo;

View File

@@ -1,33 +0,0 @@
#root {
font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue",
Helvetica, Arial, "Lucida Grande", sans-serif;
max-width: 850px;
margin: 0 auto;
padding-top: 20px;
}
#root .simple-keyboard-preview {
background: rgba(0, 0, 0, 0.8);
border: 20px solid rgba(0, 0, 0, 0.1);
height: 200px;
border-top-right-radius: 5px;
border-top-left-radius: 5px;
padding: 10px;
box-sizing: border-box;
}
#root .input {
color: rgba(255, 255, 255, 0.9);
background: transparent;
border: none;
outline: none;
font-family: monospace;
width: 100%;
height: 100%;
font-size: 18px;
}
.simple-keyboard.hg-layout-custom {
border-top-left-radius: 0px;
border-top-right-radius: 0px;
}

View File

@@ -0,0 +1,12 @@
input {
width: 100%;
height: 100px;
padding: 20px;
font-size: 20px;
border: none;
box-sizing: border-box;
}
.simple-keyboard {
max-width: 850px;
}

View File

@@ -0,0 +1,26 @@
input {
width: 100%;
height: 100px;
padding: 20px;
font-size: 20px;
border: none;
box-sizing: border-box;
}
.simple-keyboard {
max-width: 850px;
}
.simple-keyboard.my-theme .hg-button.my-button {
background: blue;
color: white;
}
.simple-keyboard.my-theme .hg-button[aria-label] {
background: black;
color: white;
}
.simple-keyboard.my-theme .hg-button.my-button-outline {
border: 2px solid red;
}

View File

@@ -0,0 +1,132 @@
input {
width: 100%;
height: 100px;
padding: 20px;
font-size: 20px;
border: none;
box-sizing: border-box;
}
.keyboardContainer {
display: flex;
background-color: rgba(0, 0, 0, 0.1);
justify-content: center;
width: 1024px;
border-radius: 5px;
}
.simple-keyboard.hg-theme-default {
display: inline-block;
}
.simple-keyboard-main.simple-keyboard {
width: 640px;
min-width: 640px;
background: none;
}
.simple-keyboard-main.simple-keyboard .hg-row:first-child {
margin-bottom: 10px;
}
.simple-keyboard-arrows.simple-keyboard {
align-self: flex-end;
background: none;
}
.simple-keyboard .hg-button.selectedButton {
background: rgba(5, 25, 70, 0.53);
color: white;
}
.simple-keyboard .hg-button.emptySpace {
pointer-events: none;
background: none;
border: none;
box-shadow: none;
}
.simple-keyboard-arrows .hg-row {
justify-content: center;
}
.simple-keyboard-arrows .hg-button {
width: 50px;
flex-grow: 0;
justify-content: center;
display: flex;
align-items: center;
}
.controlArrows {
display: flex;
align-items: center;
justify-content: space-between;
flex-flow: column;
}
.simple-keyboard-control.simple-keyboard {
background: none;
}
.simple-keyboard-control.simple-keyboard .hg-row:first-child {
margin-bottom: 10px;
}
.simple-keyboard-control .hg-button {
width: 50px;
flex-grow: 0;
justify-content: center;
display: flex;
align-items: center;
}
.numPad {
display: flex;
align-items: flex-end;
}
.simple-keyboard-numpad.simple-keyboard {
background: none;
}
.simple-keyboard-numpad.simple-keyboard {
width: 160px;
}
.simple-keyboard-numpad.simple-keyboard .hg-button {
width: 50px;
justify-content: center;
display: flex;
align-items: center;
}
.simple-keyboard-numpadEnd.simple-keyboard {
width: 50px;
background: none;
margin: 0;
padding: 5px 5px 5px 0;
}
.simple-keyboard-numpadEnd.simple-keyboard .hg-button {
align-items: center;
justify-content: center;
display: flex;
}
.simple-keyboard-numpadEnd .hg-button.hg-standardBtn.hg-button-plus {
height: 85px;
}
.simple-keyboard-numpadEnd.simple-keyboard .hg-button.hg-button-enter {
height: 85px;
}
.simple-keyboard.hg-theme-default .hg-button.hg-selectedButton {
background: rgba(5, 25, 70, 0.53);
color: white;
}
.hg-button.hg-functionBtn.hg-button-space {
width: 350px;
}

View File

@@ -0,0 +1,12 @@
input {
width: 100%;
height: 100px;
padding: 20px;
font-size: 20px;
border: none;
box-sizing: border-box;
}
.simple-keyboard {
max-width: 850px;
}

3
src/demo/css/index.css Normal file
View File

@@ -0,0 +1,3 @@
#root {
padding: 0px 40px;
}

View File

@@ -1,6 +1,19 @@
import App from "./App";
import "./css/index.css";
/**
* Initializing demo
* Demos
*/
new App();
import BasicDemo from "./BasicDemo";
//import FullKeyboardDemo from "./FullKeyboardDemo";
//import ButtonThemeDemo from "./ButtonThemeDemo";
//import MultipleKeyboardsDemo from "./MultipleKeyboardsDestroyDemo";
/**
* Selected demo
*/
const SELECTED_DEMO = BasicDemo;
/**
* Bootstrap
*/
new SELECTED_DEMO();

View File

@@ -1,20 +1,18 @@
import TestUtility from '../../utils/TestUtility';
import Index from '../index';
import App from '../App';
import BasicDemo from '../BasicDemo';
let testUtil = new TestUtility();
it('Demo will load', () => {
testUtil.setDOM();
let demo = new App();
let demo = new BasicDemo();
});
it('Demo onDOMLoaded will work', () => {
testUtil.setDOM();
let demo = new App();
demo.onDOMLoaded();
let demo = new BasicDemo();
expect(demo.keyboard).toBeTruthy();
});
@@ -22,8 +20,7 @@ it('Demo onDOMLoaded will work', () => {
it('Demo onChange will work', () => {
testUtil.setDOM();
let demo = new App();
demo.onDOMLoaded();
let demo = new BasicDemo();
demo.onChange("test");
@@ -33,8 +30,7 @@ it('Demo onChange will work', () => {
it('Demo onChange will work', () => {
testUtil.setDOM();
let demo = new App();
demo.onDOMLoaded();
let demo = new BasicDemo();
demo.keyboard.getButtonElement("q").onclick();
@@ -44,8 +40,7 @@ it('Demo onChange will work', () => {
it('Demo input change will work', () => {
testUtil.setDOM();
let demo = new App();
demo.onDOMLoaded();
let demo = new BasicDemo();
document.body.querySelector('.input').value = "test";
document.body.querySelector('.input').dispatchEvent(new Event('input'));
@@ -56,8 +51,7 @@ it('Demo input change will work', () => {
it('Demo handleShiftButton will work', () => {
testUtil.setDOM();
let demo = new App();
demo.onDOMLoaded();
let demo = new BasicDemo();
demo.keyboard.getButtonElement("{shift}")[0].onclick();
expect(demo.keyboard.options.layoutName).toBe("shift");

View File

@@ -0,0 +1,77 @@
import TestUtility from '../../utils/TestUtility';
import ButtonThemeDemo from '../ButtonThemeDemo';
let testUtil = new TestUtility();
it('Demo will load', () => {
testUtil.setDOM();
let demo = new ButtonThemeDemo();
});
it('Demo onDOMLoaded will work', () => {
testUtil.setDOM();
let demo = new ButtonThemeDemo();
expect(demo.keyboard).toBeTruthy();
});
it('Demo onChange will work', () => {
testUtil.setDOM();
let demo = new ButtonThemeDemo();
demo.onChange("test");
expect(document.body.querySelector('.input').value).toBe("test");
});
it('Demo onChange will work', () => {
testUtil.setDOM();
let demo = new ButtonThemeDemo();
demo.keyboard.getButtonElement("q").onclick();
expect(document.body.querySelector('.input').value).toBe("q");
});
it('Demo input change will work', () => {
testUtil.setDOM();
let demo = new ButtonThemeDemo();
document.body.querySelector('.input').value = "test";
document.body.querySelector('.input').dispatchEvent(new Event('input'));
expect(demo.keyboard.getInput()).toBe("test");
});
it('Demo handleShiftButton will work', () => {
testUtil.setDOM();
let demo = new ButtonThemeDemo();
demo.keyboard.getButtonElement("{shift}")[0].onclick();
expect(demo.keyboard.options.layoutName).toBe("shift");
demo.keyboard.getButtonElement("{shift}")[0].onclick();
expect(demo.keyboard.options.layoutName).toBe("default");
});
it('Demo buttons will have proper attributes and classes', () => {
testUtil.setDOM();
let demo = new ButtonThemeDemo();
let buttonDOM = demo.keyboard.getButtonElement("b");
console.log("buttonDOM", buttonDOM.outerHTML);
let hasAttribute = buttonDOM.hasAttribute("aria-label");
expect(hasAttribute).toBeTruthy();
let hasClass = buttonDOM.classList.contains("my-button-outline");
expect(hasClass).toBeTruthy();
});

View File

@@ -0,0 +1,62 @@
import TestUtility from '../../utils/TestUtility';
import FullKeyboardDemo from '../FullKeyboardDemo';
let testUtil = new TestUtility();
it('Demo will load', () => {
testUtil.setDOM();
let demo = new FullKeyboardDemo();
});
it('Demo onDOMLoaded will work', () => {
testUtil.setDOM();
let demo = new FullKeyboardDemo();
expect(demo.keyboard).toBeTruthy();
});
it('Demo onChange will work', () => {
testUtil.setDOM();
let demo = new FullKeyboardDemo();
demo.onChange("test");
expect(document.body.querySelector('.input').value).toBe("test");
});
it('Demo onChange will work', () => {
testUtil.setDOM();
let demo = new FullKeyboardDemo();
demo.keyboard.getButtonElement("q").onclick();
expect(document.body.querySelector('.input').value).toBe("q");
});
it('Demo input change will work', () => {
testUtil.setDOM();
let demo = new FullKeyboardDemo();
document.body.querySelector('.input').value = "test";
document.body.querySelector('.input').dispatchEvent(new Event('input'));
expect(demo.keyboard.getInput()).toBe("test");
expect(demo.keyboardNumPad.getInput()).toBe("test");
});
it('Demo handleShiftButton will work', () => {
testUtil.setDOM();
let demo = new FullKeyboardDemo();
demo.keyboard.getButtonElement("{shiftleft}").onclick();
expect(demo.keyboard.options.layoutName).toBe("shift");
demo.keyboard.getButtonElement("{shiftright}").onclick();
expect(demo.keyboard.options.layoutName).toBe("default");
});

View File

@@ -0,0 +1,67 @@
import TestUtility from '../../utils/TestUtility';
import MultipleKeyboardsDestroyDemo from '../MultipleKeyboardsDestroyDemo';
let testUtil = new TestUtility();
it('Demo will load', () => {
testUtil.setDOM();
let demo = new MultipleKeyboardsDestroyDemo();
});
it('Demo onDOMLoaded will work', () => {
testUtil.setDOM();
let demo = new MultipleKeyboardsDestroyDemo();
expect(demo.keyboard).toBeTruthy();
});
it('Demo onChange will work', () => {
testUtil.setDOM();
let demo = new MultipleKeyboardsDestroyDemo();
demo.onChange("test");
demo.keyboard2.getButtonElement("q").click();
expect(document.body.querySelector('.input').value).toBe("test");
expect(document.body.querySelector('.input2').value).toBe("q");
});
it('Demo onChange will work', () => {
testUtil.setDOM();
let demo = new MultipleKeyboardsDestroyDemo();
demo.keyboard.getButtonElement("q").onclick();
expect(document.body.querySelector('.input').value).toBe("q");
});
it('Demo input change will work', () => {
testUtil.setDOM();
let demo = new MultipleKeyboardsDestroyDemo();
document.body.querySelector('.input').value = "test";
document.body.querySelector('.input').dispatchEvent(new Event('input'));
document.body.querySelector('.input2').value = "test2";
document.body.querySelector('.input2').dispatchEvent(new Event('input'));
expect(demo.keyboard.getInput()).toBe("test");
expect(demo.keyboard2.getInput()).toBe("test2");
});
it('Demo handleShiftButton will work', () => {
testUtil.setDOM();
let demo = new MultipleKeyboardsDestroyDemo();
demo.keyboard.getButtonElement("{shift}")[0].onclick();
expect(demo.keyboard.options.layoutName).toBe("shift");
demo.keyboard.getButtonElement("{shift}")[0].onclick();
expect(demo.keyboard.options.layoutName).toBe("default");
});

View File

@@ -1,7 +1,7 @@
declare module 'simple-keyboard' {
interface KeyboardLayoutObject {
default: string[];
shift?: string[];
shift?: any;
[key: string]: string[];
}
@@ -10,6 +10,12 @@ declare module 'simple-keyboard' {
buttons: string;
}
interface KeyboardButtonAttributes {
attribute: string;
value: string;
buttons: string;
}
interface KeyboardOptions {
/**
* Modify the keyboard layout.
@@ -41,6 +47,11 @@ declare module 'simple-keyboard' {
*/
buttonTheme?: KeyboardButtonTheme[];
/**
* A prop to add your own attributes to one or several buttons.
*/
buttonAttributes?: KeyboardButtonAttributes[];
/**
* Runs a `console.log` every time a key is pressed. Displays the buttons pressed and the current input.
*/
@@ -123,11 +134,21 @@ declare module 'simple-keyboard' {
*/
useMouseEvents?: boolean;
/**
* Disable button hold action.
*/
disableButtonHold?: boolean;
/**
* Executes the callback function on key press. Returns button layout name (i.e.: "{shift}").
*/
onKeyPress?: (button: string) => any;
/**
* Executes the callback function on key release.
*/
onKeyReleased?: (button: string) => any;
/**
* Executes the callback function on input change. Returns the current input's string.
*/
@@ -162,6 +183,10 @@ declare module 'simple-keyboard' {
class Keyboard {
constructor(selector: string, options: KeyboardOptions);
constructor(options: KeyboardOptions);
/**
* Options
*/
options: KeyboardOptions;
/**
@@ -169,6 +194,11 @@ declare module 'simple-keyboard' {
*/
utilities?: any;
/**
* caretPosition
*/
caretPosition?: number;
/**
* Adds/Modifies an entry to the `buttonTheme`. Basically a way to add a class to a button.
* @param {string} buttons List of buttons to select (separated by a space).
@@ -220,6 +250,11 @@ declare module 'simple-keyboard' {
* @param {string} button The button layout name to select
*/
getButtonElement(button: string): HTMLElement | HTMLElement[];
/**
* Clears keyboard listeners and DOM elements.
*/
destroy(): void;
}
export default Keyboard;

View File

@@ -69,6 +69,11 @@ html {
display: flex;
align-items: center;
justify-content: center;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.simple-keyboard.hg-theme-default .hg-button.hg-activeButton {
background: #efefef;
}
/* When using option "useButtonTag" */
@@ -78,10 +83,6 @@ html {
font-size: inherit;
}
.simple-keyboard.hg-theme-default:not(.hg-touch-events) .hg-button:active {
background: #e4e4e4;
}
.simple-keyboard.hg-theme-default.hg-layout-numeric .hg-button {
width: 33.3%;
height: 60px;

View File

@@ -27,7 +27,16 @@ class SimpleKeyboard {
/**
* Initializing Utilities
*/
this.utilities = new Utilities(this);
this.utilities = new Utilities({
getOptions: this.getOptions,
getCaretPosition: this.getCaretPosition,
dispatch: this.dispatch
});
/**
* Caret position
*/
this.caretPosition = null;
/**
* Processing options
@@ -42,6 +51,7 @@ class SimpleKeyboard {
* @property {boolean} mergeDisplay By default, when you set the display property, you replace the default one. This setting merges them instead.
* @property {string} theme A prop to add your own css classes to the keyboard wrapper. You can add multiple classes separated by a space.
* @property {Array} buttonTheme A prop to add your own css classes to one or several buttons.
* @property {Array} buttonAttributes A prop to add your own attributes to one or several buttons.
* @property {boolean} debug Runs a console.log every time a key is pressed. Displays the buttons pressed and the current input.
* @property {boolean} newLineOnEnter Specifies whether clicking the “ENTER” button will input a newline (\n) or not.
* @property {boolean} tabCharOnTab Specifies whether clicking the “TAB” button will input a tab character (\t) or not.
@@ -64,6 +74,9 @@ class SimpleKeyboard {
* @property {boolean} useTouchEvents Instructs simple-keyboard to use touch events instead of click events.
* @property {boolean} autoUseTouchEvents Enable useTouchEvents automatically when touch device is detected.
* @property {boolean} useMouseEvents Opt out of PointerEvents handling, falling back to the prior mouse event logic.
* @property {function} destroy Clears keyboard listeners and DOM elements.
* @property {boolean} disableButtonHold Disable button hold action.
* @property {function} onKeyReleased Executes the callback function on key release.
*/
this.options = options;
this.options.layoutName = this.options.layoutName || "default";
@@ -109,6 +122,32 @@ class SimpleKeyboard {
*/
this.buttonElements = {};
/**
* Simple-keyboard Instances
* This enables multiple simple-keyboard support with easier management
*/
if (!window["SimpleKeyboardInstances"])
window["SimpleKeyboardInstances"] = {};
this.currentInstanceName = this.utilities.camelCase(this.keyboardDOMClass);
window["SimpleKeyboardInstances"][this.currentInstanceName] = this;
/**
* Instance vars
*/
this.allKeyboardInstances = window["SimpleKeyboardInstances"];
this.keyboardInstanceNames = Object.keys(window["SimpleKeyboardInstances"]);
this.isFirstKeyboardInstance =
this.keyboardInstanceNames[0] === this.currentInstanceName;
/**
* Physical Keyboard support
*/
this.physicalKeyboard = new PhysicalKeyboard({
dispatch: this.dispatch,
getOptions: this.getOptions
});
/**
* Rendering keyboard
*/
@@ -118,22 +157,6 @@ class SimpleKeyboard {
throw new Error("KEYBOARD_DOM_ERROR");
}
/**
* Saving instance
* This enables multiple simple-keyboard support with easier management
*/
if (!window["SimpleKeyboardInstances"])
window["SimpleKeyboardInstances"] = {};
window["SimpleKeyboardInstances"][
this.utilities.camelCase(this.keyboardDOMClass)
] = this;
/**
* Physical Keyboard support
*/
this.physicalKeyboardInterface = new PhysicalKeyboard(this);
/**
* Modules
*/
@@ -141,6 +164,12 @@ class SimpleKeyboard {
this.loadModules();
}
/**
* Getters
*/
getOptions = () => this.options;
getCaretPosition = () => this.caretPosition;
/**
* Handles clicks made to keyboard buttons
* @param {string} button The button's layout name.
@@ -165,7 +194,6 @@ class SimpleKeyboard {
let updatedInput = this.utilities.getUpdatedInput(
button,
this.input[this.options.inputName],
this.options,
this.caretPosition
);
@@ -183,7 +211,7 @@ class SimpleKeyboard {
*/
if (
this.options.maxLength &&
this.utilities.handleMaxLength(this.input, this.options, updatedInput)
this.utilities.handleMaxLength(this.input, updatedInput)
) {
return false;
}
@@ -191,7 +219,6 @@ class SimpleKeyboard {
this.input[this.options.inputName] = this.utilities.getUpdatedInput(
button,
this.input[this.options.inputName],
this.options,
this.caretPosition,
true
);
@@ -201,7 +228,7 @@ class SimpleKeyboard {
/**
* Enforce syncInstanceInputs, if set
*/
if (this.options.syncInstanceInputs) this.syncInstanceInputs(this.input);
if (this.options.syncInstanceInputs) this.syncInstanceInputs();
/**
* Calling onChange
@@ -232,6 +259,11 @@ class SimpleKeyboard {
if (this.options.preventMouseDownDefault) e.preventDefault();
if (this.options.stopMouseDownPropagation) e.stopPropagation();
/**
* Add active class
*/
if (e) e.target.classList.add(this.activeButtonClass);
/**
* @type {boolean} Whether the mouse is being held onKeyPress
*/
@@ -244,30 +276,55 @@ class SimpleKeyboard {
/**
* @type {object} Time to wait until a key hold is detected
*/
this.holdTimeout = setTimeout(() => {
if (
this.isMouseHold &&
((!button.includes("{") && !button.includes("}")) ||
button === "{delete}" ||
button === "{backspace}" ||
button === "{bksp}" ||
button === "{space}" ||
button === "{tab}")
) {
if (this.options.debug) console.log("Button held:", button);
if (!this.options.disableButtonHold) {
this.holdTimeout = setTimeout(() => {
if (
this.isMouseHold &&
((!button.includes("{") && !button.includes("}")) ||
button === "{delete}" ||
button === "{backspace}" ||
button === "{bksp}" ||
button === "{space}" ||
button === "{tab}")
) {
if (this.options.debug) console.log("Button held:", button);
this.handleButtonHold(button, e);
}
clearTimeout(this.holdTimeout);
}, 500);
this.handleButtonHold(button, e);
}
clearTimeout(this.holdTimeout);
}, 500);
}
}
/**
* Handles button mouseup
*/
handleButtonMouseUp() {
handleButtonMouseUp(button) {
/**
* Remove active class
*/
this.recurseButtons(buttonElement => {
buttonElement.classList.remove(this.activeButtonClass);
});
this.isMouseHold = false;
if (this.holdInteractionTimeout) clearTimeout(this.holdInteractionTimeout);
/**
* Calling onKeyReleased
*/
if (button && typeof this.options.onKeyReleased === "function")
this.options.onKeyReleased(button);
}
/**
* Handles container mousedown
*/
handleKeyboardContainerMouseDown(e) {
/**
* Handle event options
*/
if (this.options.preventMouseDownDefault) e.preventDefault();
}
/**
@@ -316,7 +373,7 @@ class SimpleKeyboard {
/**
* Enforce syncInstanceInputs, if set
*/
if (this.options.syncInstanceInputs) this.syncInstanceInputs(this.input);
if (this.options.syncInstanceInputs) this.syncInstanceInputs();
}
/**
@@ -329,7 +386,7 @@ class SimpleKeyboard {
/**
* Enforce syncInstanceInputs, if set
*/
if (this.options.syncInstanceInputs) this.syncInstanceInputs(this.input);
if (this.options.syncInstanceInputs) this.syncInstanceInputs();
return this.input[inputName];
}
@@ -346,7 +403,7 @@ class SimpleKeyboard {
/**
* Enforce syncInstanceInputs, if set
*/
if (this.options.syncInstanceInputs) this.syncInstanceInputs(this.input);
if (this.options.syncInstanceInputs) this.syncInstanceInputs();
}
/**
@@ -395,7 +452,7 @@ class SimpleKeyboard {
/**
* Remove all keyboard rows and reset keyboard values.
* Used interally between re-renders.
* Used internally between re-renders.
*/
clear() {
this.keyboardDOM.innerHTML = "";
@@ -580,33 +637,63 @@ class SimpleKeyboard {
}
/**
* Retrieves the current cursor position within a input or textarea (if any)
* Handles simple-keyboard event listeners
*/
handleCaret() {
setEventListeners() {
/**
* Only first instance should insall the caret handling events
* Only first instance should set the event listeners
*/
this.caretPosition = null;
let simpleKeyboardInstances = window["SimpleKeyboardInstances"];
if (
(simpleKeyboardInstances &&
Object.keys(simpleKeyboardInstances)[0] ===
this.utilities.camelCase(this.keyboardDOMClass)) ||
!simpleKeyboardInstances
) {
if (this.isFirstKeyboardInstance || !this.allKeyboardInstances) {
if (this.options.debug) {
console.log(`Caret handling started (${this.keyboardDOMClass})`);
}
document.addEventListener("keyup", this.caretEventHandler);
document.addEventListener("mouseup", this.caretEventHandler);
document.addEventListener("touchend", this.caretEventHandler);
/**
* Event Listeners
*/
document.addEventListener("keyup", this.handleKeyUp);
document.addEventListener("keydown", this.handleKeyDown);
document.addEventListener("mouseup", this.handleMouseUp);
document.addEventListener("touchend", this.handleTouchEnd);
}
}
/**
* Called by {@link handleCaret} when an event that warrants a cursor position update is triggered
* Event Handler: KeyUp
*/
handleKeyUp(event) {
this.caretEventHandler(event);
if (this.options.physicalKeyboardHighlight) {
this.physicalKeyboard.handleHighlightKeyUp(event);
}
}
/**
* Event Handler: KeyDown
*/
handleKeyDown(event) {
if (this.options.physicalKeyboardHighlight) {
this.physicalKeyboard.handleHighlightKeyDown(event);
}
}
/**
* Event Handler: MouseUp
*/
handleMouseUp(event) {
this.caretEventHandler(event);
}
/**
* Event Handler: TouchEnd
*/
handleTouchEnd(event) {
this.caretEventHandler(event);
}
/**
* Called by {@link setEventListeners} when an event that warrants a cursor position update is triggered
*/
caretEventHandler(event) {
let targetTagName;
@@ -646,50 +733,138 @@ class SimpleKeyboard {
});
}
/**
* Execute an operation on each button
*/
recurseButtons(fn) {
if (!fn) return false;
Object.keys(this.buttonElements).forEach(buttonName =>
this.buttonElements[buttonName].forEach(fn)
);
}
/**
* Destroy keyboard listeners and DOM elements
*/
destroy() {
if (this.options.debug)
console.log(
`Destroying simple-keyboard instance: ${this.currentInstanceName}`
);
/**
* Remove document listeners
*/
document.removeEventListener("keyup", this.handleKeyUp);
document.removeEventListener("keydown", this.handleKeyDown);
document.removeEventListener("mouseup", this.handleMouseUp);
document.removeEventListener("touchend", this.handleTouchEnd);
document.onpointerup = null;
document.ontouchend = null;
document.ontouchcancel = null;
document.onmouseup = null;
/**
* Remove buttons
*/
let deleteButton = buttonElement => {
buttonElement.onpointerdown = null;
buttonElement.onpointerup = null;
buttonElement.onpointercancel = null;
buttonElement.ontouchstart = null;
buttonElement.ontouchend = null;
buttonElement.ontouchcancel = null;
buttonElement.onclick = null;
buttonElement.onmousedown = null;
buttonElement.onmouseup = null;
buttonElement.remove();
buttonElement = null;
};
this.recurseButtons(deleteButton);
this.buttonElements = null;
this.recurseButtons = null;
deleteButton = null;
/**
* Remove wrapper events
*/
this.keyboardDOM.onpointerdown = null;
this.keyboardDOM.ontouchstart = null;
this.keyboardDOM.onmousedown = null;
this.keyboardDOM.remove();
this.keyboardDOM = null;
/**
* Remove instance
*/
window["SimpleKeyboardInstances"][this.currentInstanceName] = null;
delete window["SimpleKeyboardInstances"][this.currentInstanceName];
}
/**
* Process buttonTheme option
*/
getButtonTheme() {
let buttonThemesParsed = {};
getButtonThemeClasses(button) {
let buttonTheme = this.options.buttonTheme;
let buttonClasses = [];
this.options.buttonTheme.forEach(themeObj => {
if (themeObj.buttons && themeObj.class) {
let themeButtons;
if (Array.isArray(buttonTheme)) {
buttonTheme.forEach(themeObj => {
if (
themeObj.class &&
typeof themeObj.class === "string" &&
(themeObj.buttons && typeof themeObj.buttons === "string")
) {
let themeObjClasses = themeObj.class.split(" ");
let themeObjButtons = themeObj.buttons.split(" ");
if (typeof themeObj.buttons === "string") {
themeButtons = themeObj.buttons.split(" ");
if (themeObjButtons.includes(button)) {
buttonClasses = [...buttonClasses, ...themeObjClasses];
}
} else {
console.warn(
`Incorrect "buttonTheme". Please check the documentation.`,
themeObj
);
}
});
}
if (themeButtons) {
themeButtons.forEach(themeButton => {
let themeParsed = buttonThemesParsed[themeButton];
return buttonClasses;
}
// If the button has already been added
if (themeParsed) {
// Making sure we don't add duplicate classes, even when buttonTheme has duplicates
if (
!this.utilities.countInArray(
themeParsed.split(" "),
themeObj.class
)
) {
buttonThemesParsed[themeButton] = `${themeParsed} ${
themeObj.class
}`;
}
} else {
buttonThemesParsed[themeButton] = themeObj.class;
}
});
/**
* Process buttonAttributes option
*/
setDOMButtonAttributes(button, callback) {
let buttonAttributes = this.options.buttonAttributes;
if (Array.isArray(buttonAttributes)) {
buttonAttributes.forEach(attrObj => {
if (
attrObj.attribute &&
typeof attrObj.attribute === "string" &&
(attrObj.value && typeof attrObj.value === "string") &&
(attrObj.buttons && typeof attrObj.buttons === "string")
) {
let attrObjButtons = attrObj.buttons.split(" ");
if (attrObjButtons.includes(button)) {
callback(attrObj.attribute, attrObj.value);
}
} else {
console.warn(
`Incorrect "buttonAttributes". Please check the documentation.`,
attrObj
);
}
} else {
console.warn(
`buttonTheme row is missing the "buttons" or the "class". Please check the documentation.`
);
}
});
return buttonThemesParsed;
});
}
}
onTouchDeviceDetected() {
@@ -742,9 +917,9 @@ class SimpleKeyboard {
}
/**
* Caret handling
* setEventListeners
*/
this.handleCaret();
this.setEventListeners();
if (typeof this.options.onInit === "function") this.options.onInit();
}
@@ -767,6 +942,7 @@ class SimpleKeyboard {
* Notify about PointerEvents usage
*/
if (
this.isFirstKeyboardInstance &&
this.utilities.pointerEventsSupported() &&
!this.options.useTouchEvents &&
!this.options.useMouseEvents
@@ -901,9 +1077,7 @@ class SimpleKeyboard {
*/
let containerDOM = document.createElement("div");
containerDOM.className += "hg-button-container";
let containerUID = `${
this.options.layoutName
}-r${rowIndex}c${arrIndex}`;
let containerUID = `${this.options.layoutName}-r${rowIndex}c${arrIndex}`;
containerDOM.setAttribute("data-skUID", containerUID);
/**
@@ -978,19 +1152,10 @@ class SimpleKeyboard {
let useMouseEvents = this.options.useMouseEvents || false;
let disableRowButtonContainers = this.options.disableRowButtonContainers;
/**
* Account for buttonTheme, if set
*/
let buttonThemesParsed = Array.isArray(this.options.buttonTheme)
? this.getButtonTheme()
: {};
/**
* Adding themeClass, layoutClass to keyboardDOM
*/
this.keyboardDOM.className += ` ${this.options.theme} ${layoutClass} ${
this.keyboardPluginClasses
} ${useTouchEventsClass}`;
this.keyboardDOM.className += ` ${this.options.theme} ${layoutClass} ${this.keyboardPluginClasses} ${useTouchEventsClass}`;
/**
* Iterating through each row
@@ -1051,7 +1216,6 @@ class SimpleKeyboard {
* Processing button options
*/
let fctBtnClass = this.utilities.getButtonClass(button);
let buttonThemeClass = buttonThemesParsed[button];
let buttonDisplayName = this.utilities.getButtonDisplayName(
button,
this.options.display,
@@ -1063,9 +1227,21 @@ class SimpleKeyboard {
*/
let buttonType = this.options.useButtonTag ? "button" : "div";
let buttonDOM = document.createElement(buttonType);
buttonDOM.className += `hg-button ${fctBtnClass}${
buttonThemeClass ? " " + buttonThemeClass : ""
}`;
buttonDOM.className += `hg-button ${fctBtnClass}`;
/**
* Adding buttonTheme
*/
buttonDOM.classList.add(...this.getButtonThemeClasses(button));
/**
* Adding buttonAttributes
*/
this.setDOMButtonAttributes(button, (attribute, value) => {
buttonDOM.setAttribute(attribute, value);
});
this.activeButtonClass = "hg-activeButton";
/**
* Handle button click event
@@ -1083,10 +1259,12 @@ class SimpleKeyboard {
this.handleButtonClicked(button);
this.handleButtonMouseDown(button, e);
};
buttonDOM.onpointerup = e => {
this.handleButtonMouseUp();
buttonDOM.onpointerup = () => {
this.handleButtonMouseUp(button);
};
buttonDOM.onpointercancel = () => {
this.handleButtonMouseUp(button);
};
buttonDOM.onpointercancel = e => this.handleButtonMouseUp();
} else {
/**
* Fallback for browsers not supporting PointerEvents
@@ -1099,8 +1277,12 @@ class SimpleKeyboard {
this.handleButtonClicked(button);
this.handleButtonMouseDown(button, e);
};
buttonDOM.ontouchend = e => this.handleButtonMouseUp();
buttonDOM.ontouchcancel = e => this.handleButtonMouseUp();
buttonDOM.ontouchend = () => {
this.handleButtonMouseUp(button);
};
buttonDOM.ontouchcancel = () => {
this.handleButtonMouseUp(button);
};
} else {
/**
* Handle mouse events
@@ -1112,6 +1294,9 @@ class SimpleKeyboard {
buttonDOM.onmousedown = e => {
this.handleButtonMouseDown(button, e);
};
buttonDOM.onmouseup = () => {
this.handleButtonMouseUp(button);
};
}
}
@@ -1127,11 +1312,6 @@ class SimpleKeyboard {
let buttonUID = `${this.options.layoutName}-r${rIndex}b${bIndex}`;
buttonDOM.setAttribute("data-skBtnUID", buttonUID);
/**
* Adding display label
*/
buttonDOM.setAttribute("data-displayLabel", buttonDisplayName);
/**
* Adding button label to button
*/
@@ -1180,7 +1360,7 @@ class SimpleKeyboard {
this.initialized = true;
/**
* Handling onpointerup
* Handling parent events
*/
/* istanbul ignore next */
if (
@@ -1189,17 +1369,24 @@ class SimpleKeyboard {
!useMouseEvents
) {
document.onpointerup = () => this.handleButtonMouseUp();
this.keyboardDOM.onpointerdown = e =>
this.handleKeyboardContainerMouseDown(e);
} else if (useTouchEvents) {
/**
* Handling ontouchend, ontouchcancel
*/
document.ontouchend = e => this.handleButtonMouseUp();
document.ontouchcancel = e => this.handleButtonMouseUp();
document.ontouchend = () => this.handleButtonMouseUp();
document.ontouchcancel = () => this.handleButtonMouseUp();
this.keyboardDOM.ontouchstart = e =>
this.handleKeyboardContainerMouseDown(e);
} else if (!useTouchEvents) {
/**
* Handling mouseup
*/
document.onmouseup = () => this.handleButtonMouseUp();
this.keyboardDOM.onmousedown = e =>
this.handleKeyboardContainerMouseDown(e);
}
/**

View File

@@ -1222,4 +1222,119 @@ it('Keyboard inputName change will trigget caretPosition reset', () => {
keyboard.getButtonElement("b").onpointerdown();
expect(keyboard.caretPosition).toBe(null);
});
});
it('Keyboard destroy will work', () => {
testUtil.setDOM();
let keyboard = new Keyboard();
keyboard.destroy();
expect(keyboard.keyboardDOM).toBe(null);
});
it('Keyboard destroy will work with debug option', () => {
testUtil.setDOM();
let keyboard = new Keyboard({ debug: true });
keyboard.destroy();
expect(keyboard.keyboardDOM).toBe(null);
});
it('Keyboard disableButtonHold will work', () => {
testUtil.setDOM();
let keyboard = new Keyboard({
disableButtonHold: true
});
expect(keyboard.options.disableButtonHold).toBe(true);
});
it('Keyboard caretEventHandler will be triggered on mouseup and ontouchend', () => {
testUtil.setDOM();
let keyboard = new Keyboard({
disableCaretPositioning: true
});
keyboard.caretPosition = 6;
document.dispatchEvent(new MouseEvent('mouseup', {
target: {
tagName: "input"
}
}));
expect(keyboard.caretPosition).toBe(null);
keyboard.setOptions({
disableCaretPositioning: false
})
keyboard.caretPosition = 10;
document.dispatchEvent(new TouchEvent('touchend', {
target: {
tagName: "input"
}
}));
expect(keyboard.caretPosition).toBe(10);
});
it('Keyboard onKeyReleased will work', () => {
testUtil.setDOM();
let pressed = false;
let firedTimes = 0;
let buttonPressed;
let keyboard = new Keyboard({
onKeyReleased: button => {
pressed = true;
buttonPressed = button;
firedTimes++;
},
debug: true
});
keyboard.getButtonElement("q").onpointerdown();
keyboard.getButtonElement("q").onpointerup();
expect(pressed).toBeTruthy();
expect(firedTimes).toBe(1);
expect(buttonPressed).toBe("q");
});
it('Keyboard buttonAttribute will work', () => {
testUtil.setDOM();
let keyboard = new Keyboard({
buttonAttributes: [
{
attribute: "aria-label",
value: "bee",
buttons: "b B"
}
]
});
});
it('Keyboard buttonAttribute will warn about invalid entries', () => {
testUtil.setDOM();
let keyboard = new Keyboard({
buttonAttributes: [
{
attribute: false,
value: null
}
]
});
});
it('Keyboard recurseButtons will not work without a valid param', () => {
testUtil.setDOM();
let keyboard = new Keyboard();
expect(keyboard.recurseButtons()).toBe(false);
});

View File

@@ -1,3 +1,5 @@
import Utilities from "../services/Utilities";
/**
* Physical Keyboard Service
*/
@@ -5,66 +7,47 @@ class PhysicalKeyboard {
/**
* Creates an instance of the PhysicalKeyboard service
*/
constructor(simpleKeyboardInstance) {
constructor({ dispatch, getOptions }) {
/**
* @type {object} A simple-keyboard instance
*/
this.simpleKeyboardInstance = simpleKeyboardInstance;
this.dispatch = dispatch;
this.getOptions = getOptions;
/**
* Bindings
*/
this.initKeyboardListener = this.initKeyboardListener.bind(this);
this.getSimpleKeyboardLayoutKey = this.getSimpleKeyboardLayoutKey.bind(
this
);
/**
* Initialize key listeners
*/
this.initKeyboardListener();
Utilities.bindMethods(PhysicalKeyboard, this);
}
/**
* Initializes key event listeners
*/
initKeyboardListener() {
// Adding button style on keydown
document.addEventListener("keydown", event => {
if (this.simpleKeyboardInstance.options.physicalKeyboardHighlight) {
let buttonPressed = this.getSimpleKeyboardLayoutKey(event);
handleHighlightKeyDown(event) {
let options = this.getOptions();
let buttonPressed = this.getSimpleKeyboardLayoutKey(event);
this.simpleKeyboardInstance.dispatch(instance => {
let buttonDOM =
instance.getButtonElement(buttonPressed) ||
instance.getButtonElement(`{${buttonPressed}}`);
this.dispatch(instance => {
let buttonDOM =
instance.getButtonElement(buttonPressed) ||
instance.getButtonElement(`{${buttonPressed}}`);
if (buttonDOM) {
buttonDOM.style.backgroundColor =
this.simpleKeyboardInstance.options
.physicalKeyboardHighlightBgColor || "#9ab4d0";
buttonDOM.style.color =
this.simpleKeyboardInstance.options
.physicalKeyboardHighlightTextColor || "white";
}
});
if (buttonDOM) {
buttonDOM.style.backgroundColor =
options.physicalKeyboardHighlightBgColor || "#9ab4d0";
buttonDOM.style.color =
options.physicalKeyboardHighlightTextColor || "white";
}
});
}
// Removing button style on keyup
document.addEventListener("keyup", event => {
if (this.simpleKeyboardInstance.options.physicalKeyboardHighlight) {
let buttonPressed = this.getSimpleKeyboardLayoutKey(event);
handleHighlightKeyUp(event) {
let buttonPressed = this.getSimpleKeyboardLayoutKey(event);
this.simpleKeyboardInstance.dispatch(instance => {
let buttonDOM =
instance.getButtonElement(buttonPressed) ||
instance.getButtonElement(`{${buttonPressed}}`);
this.dispatch(instance => {
let buttonDOM =
instance.getButtonElement(buttonPressed) ||
instance.getButtonElement(`{${buttonPressed}}`);
if (buttonDOM && buttonDOM.removeAttribute) {
buttonDOM.removeAttribute("style");
}
});
if (buttonDOM && buttonDOM.removeAttribute) {
buttonDOM.removeAttribute("style");
}
});
}

View File

@@ -5,11 +5,10 @@ class Utilities {
/**
* Creates an instance of the Utility service
*/
constructor(simpleKeyboardInstance) {
/**
* @type {object} A simple-keyboard instance
*/
this.simpleKeyboardInstance = simpleKeyboardInstance;
constructor({ getOptions, getCaretPosition, dispatch }) {
this.getOptions = getOptions;
this.getCaretPosition = getCaretPosition;
this.dispatch = dispatch;
/**
* Bindings
@@ -125,11 +124,11 @@ class Utilities {
*
* @param {string} button The button's layout name
* @param {string} input The input string
* @param {object} options The simple-keyboard options object
* @param {number} caretPos The cursor's current position
* @param {boolean} moveCaret Whether to update simple-keyboard's cursor
*/
getUpdatedInput(button, input, options, caretPos, moveCaret) {
getUpdatedInput(button, input, caretPos, moveCaret) {
let options = this.getOptions();
let output = input;
if (
@@ -187,43 +186,34 @@ class Utilities {
* @param {boolean} minus Whether the cursor should be moved to the left or not.
*/
updateCaretPos(length, minus) {
let newCaretPos = this.updateCaretPosAction(
this.simpleKeyboardInstance,
length,
minus
);
let newCaretPos = this.updateCaretPosAction(length, minus);
if (this.simpleKeyboardInstance.options.syncInstanceInputs) {
this.simpleKeyboardInstance.dispatch(instance => {
instance.caretPosition = newCaretPos;
});
}
this.dispatch(instance => {
instance.caretPosition = newCaretPos;
});
}
/**
* Action method of updateCaretPos
*
* @param {object} instance The instance whose position should be updated
* @param {number} length Represents by how many characters the input should be moved
* @param {boolean} minus Whether the cursor should be moved to the left or not.
*/
updateCaretPosAction(instance, length, minus) {
updateCaretPosAction(length, minus) {
let options = this.getOptions();
let caretPosition = this.getCaretPosition();
if (minus) {
if (instance.caretPosition > 0)
instance.caretPosition = instance.caretPosition - length;
if (caretPosition > 0) caretPosition = caretPosition - length;
} else {
instance.caretPosition = instance.caretPosition + length;
caretPosition = caretPosition + length;
}
if (this.simpleKeyboardInstance.options.debug) {
console.log(
"Caret at:",
instance.caretPosition,
`(${instance.keyboardDOMClass})`
);
if (options.debug) {
console.log("Caret at:", caretPosition, `(${this.keyboardDOMClass})`);
}
return instance.caretPosition;
return caretPosition;
}
/**
@@ -263,7 +253,9 @@ class Utilities {
* @param {boolean} moveCaret Whether to update simple-keyboard's cursor
*/
removeAt(source, position, moveCaret) {
if (this.simpleKeyboardInstance.caretPosition === 0) {
let caretPosition = this.getCaretPosition();
if (caretPosition === 0) {
return source;
}
@@ -306,13 +298,13 @@ class Utilities {
* Determines whether the maxLength has been reached. This function is called when the maxLength option it set.
*
* @param {object} inputObj
* @param {object} options
* @param {string} updatedInput
*/
handleMaxLength(inputObj, options, updatedInput) {
handleMaxLength(inputObj, updatedInput) {
let options = this.getOptions();
let maxLength = options.maxLength;
let currentInput = inputObj[options.inputName];
let condition = currentInput.length === maxLength;
let condition = updatedInput.length - 1 >= maxLength;
if (
/**
@@ -384,6 +376,7 @@ class Utilities {
*/
static bindMethods(myClass, instance) {
// eslint-disable-next-line no-unused-vars
for (let myMethod of Object.getOwnPropertyNames(myClass.prototype)) {
let excludeMethod =
myMethod === "constructor" || myMethod === "bindMethods";
@@ -399,6 +392,8 @@ class Utilities {
* @param {string} string The string to transform.
*/
camelCase(string) {
if (!string) return false;
return string
.toLowerCase()
.trim()
@@ -407,16 +402,6 @@ class Utilities {
word.length ? string + word[0].toUpperCase() + word.slice(1) : string
);
}
/**
* Counts the number of duplicates in a given array
*
* @param {Array} array The haystack to search in
* @param {string} value The needle to search for
*/
countInArray(array, value) {
return array.reduce((n, x) => n + (x === value), 0);
}
}
export default Utilities;

View File

@@ -13,7 +13,7 @@ it('Keyboard mergeDisplay will work', () => {
}
});
expect(keyboard.getButtonElement("q").getAttribute("data-displaylabel")).toBe("qreplaced");
expect(keyboard.getButtonElement("q").querySelector("span").innerHTML).toBe("qreplaced");
});
it('Keyboard function buttons will work', () => {
@@ -31,7 +31,7 @@ it('Keyboard {bksp} button will work', () => {
let keyboard = new Keyboard();
let output = keyboard.utilities.getUpdatedInput("{bksp}", "test", keyboard.options);
let output = keyboard.utilities.getUpdatedInput("{bksp}", "test");
expect(output).toBe("tes");
});
@@ -41,7 +41,7 @@ it('Keyboard {space} button will work', () => {
let keyboard = new Keyboard();
let output = keyboard.utilities.getUpdatedInput("{space}", "test", keyboard.options);
let output = keyboard.utilities.getUpdatedInput("{space}", "test");
expect(output).toBe("test ");
});
@@ -51,7 +51,7 @@ it('Keyboard {tab} button will work', () => {
let keyboard = new Keyboard();
let output = keyboard.utilities.getUpdatedInput("{tab}", "test", keyboard.options);
let output = keyboard.utilities.getUpdatedInput("{tab}", "test");
expect(output).toBe("test\t");
});
@@ -63,7 +63,7 @@ it('Keyboard {tab} button will work with tabCharOnTab:false', () => {
tabCharOnTab: false
});
let output = keyboard.utilities.getUpdatedInput("{tab}", "test", keyboard.options);
let output = keyboard.utilities.getUpdatedInput("{tab}", "test");
expect(output).toBe("test");
});
@@ -73,7 +73,7 @@ it('Keyboard {enter} button will work', () => {
let keyboard = new Keyboard();
let output = keyboard.utilities.getUpdatedInput("{enter}", "test", keyboard.options);
let output = keyboard.utilities.getUpdatedInput("{enter}", "test");
expect(output).toBe("test");
});
@@ -85,7 +85,7 @@ it('Keyboard {enter} button will work with newLineOnEnter:true', () => {
newLineOnEnter: true
});
let output = keyboard.utilities.getUpdatedInput("{enter}", "test", keyboard.options);
let output = keyboard.utilities.getUpdatedInput("{enter}", "test");
expect(output).toBe("test\n");
});
@@ -96,7 +96,7 @@ it('Keyboard {numpadX} buttons will work', () => {
let keyboard = new Keyboard();
for(let i = 0;i<=9;i++){
let output = keyboard.utilities.getUpdatedInput(`{numpad${i}}`, "test", keyboard.options);
let output = keyboard.utilities.getUpdatedInput(`{numpad${i}}`, "test");
expect(output).toBe(`test${i}`);
}
});
@@ -106,7 +106,7 @@ it('Keyboard {numpaddivide} button will work', () => {
let keyboard = new Keyboard();
let output = keyboard.utilities.getUpdatedInput("{numpaddivide}", "test", keyboard.options);
let output = keyboard.utilities.getUpdatedInput("{numpaddivide}", "test");
expect(output).toBe("test/");
});
@@ -116,7 +116,7 @@ it('Keyboard {numpadmultiply} button will work', () => {
let keyboard = new Keyboard();
let output = keyboard.utilities.getUpdatedInput("{numpadmultiply}", "test", keyboard.options);
let output = keyboard.utilities.getUpdatedInput("{numpadmultiply}", "test");
expect(output).toBe("test*");
});
@@ -126,7 +126,7 @@ it('Keyboard {numpadsubtract} button will work', () => {
let keyboard = new Keyboard();
let output = keyboard.utilities.getUpdatedInput("{numpadsubtract}", "test", keyboard.options);
let output = keyboard.utilities.getUpdatedInput("{numpadsubtract}", "test");
expect(output).toBe("test-");
});
@@ -136,7 +136,7 @@ it('Keyboard {numpadadd} button will work', () => {
let keyboard = new Keyboard();
let output = keyboard.utilities.getUpdatedInput("{numpadadd}", "test", keyboard.options);
let output = keyboard.utilities.getUpdatedInput("{numpadadd}", "test");
expect(output).toBe("test+");
});
@@ -146,7 +146,7 @@ it('Keyboard {numpadadd} button will work', () => {
let keyboard = new Keyboard();
let output = keyboard.utilities.getUpdatedInput("{numpadadd}", "test", keyboard.options);
let output = keyboard.utilities.getUpdatedInput("{numpadadd}", "test");
expect(output).toBe("test+");
});
@@ -156,7 +156,7 @@ it('Keyboard {numpaddecimal} button will work', () => {
let keyboard = new Keyboard();
let output = keyboard.utilities.getUpdatedInput("{numpaddecimal}", "test", keyboard.options);
let output = keyboard.utilities.getUpdatedInput("{numpaddecimal}", "test");
expect(output).toBe("test.");
});
@@ -172,7 +172,7 @@ it('Keyboard custom function buttons will work', () => {
}
});
let output = keyboard.utilities.getUpdatedInput("{randombuttontest}", "test", keyboard.options);
let output = keyboard.utilities.getUpdatedInput("{randombuttontest}", "test");
expect(output).toBe("test");
expect(keyboard.getButtonElement("{randombuttontest}").onclick).toBeTruthy();
@@ -183,7 +183,7 @@ it('Keyboard "{" button will work', () => {
let keyboard = new Keyboard();
let output = keyboard.utilities.getUpdatedInput("{", "test", keyboard.options);
let output = keyboard.utilities.getUpdatedInput("{", "test");
expect(output).toBe("test{");
});
@@ -193,7 +193,7 @@ it('Keyboard "}" button will work', () => {
let keyboard = new Keyboard();
let output = keyboard.utilities.getUpdatedInput("}", "test", keyboard.options);
let output = keyboard.utilities.getUpdatedInput("}", "test");
expect(output).toBe("test}");
});
@@ -205,7 +205,7 @@ it('Keyboard standard button will affect input', () => {
for (let i = 65; i <= 90; i++) {
let char = String.fromCharCode(i);
let output = keyboard.utilities.getUpdatedInput(char, "test", keyboard.options);
let output = keyboard.utilities.getUpdatedInput(char, "test");
expect(output).toBe(`test${char}`);
}
});
@@ -213,8 +213,9 @@ it('Keyboard standard button will affect input', () => {
it('Keyboard updateCaretPos will work with minus', () => {
testUtil.setDOM();
let keyboard = new Keyboard();
keyboard.options.syncInstanceInputs = true;
let keyboard = new Keyboard({
syncInstanceInputs: true
});
keyboard.caretPosition = 5;
keyboard.utilities.updateCaretPos(2, true);
@@ -282,7 +283,7 @@ it('Keyboard addStringAt will respect maxLength', () => {
keyboard.setInput("test");
keyboard.caretPosition = 4;
keyboard.utilities.handleMaxLength(keyboard.input, keyboard.options, "testq")
keyboard.utilities.handleMaxLength(keyboard.input, "testq")
keyboard.utilities.addStringAt("test", "q", 4);
expect(keyboard.caretPosition).toBe(4);
@@ -297,7 +298,7 @@ it('Keyboard handleMaxLength will exit out on same updatedInput', () => {
keyboard.setInput("test");
let output = keyboard.utilities.handleMaxLength(keyboard.input, keyboard.options, "test")
let output = keyboard.utilities.handleMaxLength(keyboard.input, "test")
expect(output).toBeFalsy();
});
@@ -313,7 +314,7 @@ it('Keyboard handleMaxLength will work with object maxLength', () => {
keyboard.setInput("test");
let output = keyboard.utilities.handleMaxLength(keyboard.input, keyboard.options, "testq");
let output = keyboard.utilities.handleMaxLength(keyboard.input, "testq");
expect(output).toBeTruthy();
});
@@ -330,7 +331,7 @@ it('Keyboard handleMaxLength will work with object maxLength and debug', () => {
keyboard.setInput("test");
let output = keyboard.utilities.handleMaxLength(keyboard.input, keyboard.options, "testq");
let output = keyboard.utilities.handleMaxLength(keyboard.input, "testq");
expect(output).toBeTruthy();
});
@@ -346,7 +347,7 @@ it('Keyboard handleMaxLength will return false if obj maxLength not reached', ()
keyboard.setInput("test");
let output = keyboard.utilities.handleMaxLength(keyboard.input, keyboard.options, "testq");
let output = keyboard.utilities.handleMaxLength(keyboard.input, "testq");
expect(output).toBeFalsy();
});
@@ -361,7 +362,7 @@ it('Keyboard handleMaxLength will work without debug', () => {
keyboard.setInput("test");
let output = keyboard.utilities.handleMaxLength(keyboard.input, keyboard.options, "testq");
let output = keyboard.utilities.handleMaxLength(keyboard.input, "testq");
expect(output).toBeTruthy();
});
@@ -376,9 +377,9 @@ it('Keyboard handleMaxLength will work with numeric maxLength', () => {
keyboard.setInput("test");
let output = keyboard.utilities.handleMaxLength(keyboard.input, keyboard.options, "testq");
let output = keyboard.utilities.handleMaxLength(keyboard.input, "testq");
expect(output).toBeFalsy();
expect(output).toBe(true);
});
it('Keyboard handleMaxLength wont work with non numeric or object maxLength', () => {
@@ -390,7 +391,7 @@ it('Keyboard handleMaxLength wont work with non numeric or object maxLength', ()
keyboard.setInput("test");
let output = keyboard.utilities.handleMaxLength(keyboard.input, keyboard.options, "testq");
let output = keyboard.utilities.handleMaxLength(keyboard.input, "testq");
expect(output).toBeFalsy();
});
@@ -405,7 +406,7 @@ it('Keyboard handleMaxLength wont work with non numeric or object maxLength (wit
keyboard.setInput("test");
let output = keyboard.utilities.handleMaxLength(keyboard.input, keyboard.options, "testq");
let output = keyboard.utilities.handleMaxLength(keyboard.input, "testq");
expect(output).toBeFalsy();
});
@@ -483,4 +484,10 @@ it('Keyboard will work with custom (and weird) class', () => {
testUtil.setDOM("my--weird--class");
let keyboard = new Keyboard(".my--weird--class");
expect(keyboard.keyboardDOMClass).toBe("my--weird--class");
});
});
it('Keyboard camelCase will work with empty strings', () => {
testUtil.setDOM();
let keyboard = new Keyboard();
expect(keyboard.utilities.camelCase()).toBeFalsy();
});

View File

@@ -7,9 +7,14 @@ export default class TestUtility {
*/
setDOM = (divClass) => {
this.clear();
const div = document.createElement('div');
div.className += divClass || "simple-keyboard";
document.body.appendChild(div);
const wrapperDOM = document.createElement('div');
wrapperDOM.setAttribute("id", "root");
const keyboardDOM = document.createElement('div');
keyboardDOM.className = divClass || "simple-keyboard";
wrapperDOM.appendChild(keyboardDOM);
document.body.appendChild(wrapperDOM);
}
/**