diff --git a/package.json b/package.json index 56f70fab..b0772913 100644 --- a/package.json +++ b/package.json @@ -8,23 +8,23 @@ "url": "https://github.com/pybricks/pybricks-code" }, "dependencies": { - "@blueprintjs/core": "^3.41.0", + "@blueprintjs/core": "^3.47.0", "@craco/craco": "^6.2.0", "@pybricks/firmware": "4.13.0-alpha.3", "@pybricks/ide-docs": "1.5.0", "@pybricks/mpy-cross-v5": "^2.0.0", - "@shopify/react-i18n": "^6.0.4", + "@shopify/react-i18n": "^6.1.0", "@testing-library/dom": "^8.1.0", "@testing-library/jest-dom": "^5.11.9", "@testing-library/react": "^12.0.0", - "@testing-library/user-event": "^13.1.9", - "@types/file-saver": "^2.0.1", + "@testing-library/user-event": "^13.2.0", + "@types/file-saver": "^2.0.3", "@types/jest": "^26.0.24", "@types/node": "^12.20.16", - "@types/react": "^16.14.10", + "@types/react": "^16.14.11", "@types/react-dom": "^16.9.14", - "@types/react-redux": "^7.1.16", - "@types/react-splitter-layout": "^3.0.1", + "@types/react-redux": "^7.1.18", + "@types/react-splitter-layout": "^3.0.2", "@types/redux-logger": "^3.0.9", "@types/web-bluetooth": "^0.0.10", "@types/zen-push": "^0.1.1", @@ -33,8 +33,8 @@ "copy-webpack-plugin": "^6.4.1", "file-saver": "^2.0.5", "jszip": "^3.6.0", - "license-webpack-plugin": "^2.3.15", - "monaco-editor-webpack-plugin": "^4.0.0", + "license-webpack-plugin": "^2.3.20", + "monaco-editor-webpack-plugin": "^4.1.1", "monaco-themes": "^0.3.3", "mq-polyfill": "^1.1.8", "node-sass": "^6.0.1", @@ -84,15 +84,15 @@ "devDependencies": { "@typescript-eslint/eslint-plugin": "^4.28.3", "@typescript-eslint/parser": "^4.28.1", - "eslint": "^7.30.0", + "eslint": "^7.31.0", "eslint-config-prettier": "^7.2.0", - "eslint-config-typed-fp": "^1.4.1", + "eslint-config-typed-fp": "^1.5.0", "eslint-plugin-functional": "^3.2.1", "eslint-plugin-import": "^2.22.1", "eslint-plugin-prettier": "^3.4.0", "eslint-plugin-react": "^7.23.2", "eslint-plugin-total-functions": "^4.9.0", - "jest-mock-extended": "^1.0.13", + "jest-mock-extended": "^1.0.18", "prettier": "^2.3.2" } } diff --git a/yarn.lock b/yarn.lock index 6b5b301d..08f04eff 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1201,10 +1201,10 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@blueprintjs/core@^3.41.0": - version "3.46.0" - resolved "https://registry.yarnpkg.com/@blueprintjs/core/-/core-3.46.0.tgz#fde92406ed97d48c949d5fe5578e7880efdf7577" - integrity sha512-kcYrisJMz7jPIuTc9AwFAbHMmmP/BxM2CC3e8vLaLk5h+xtXVzRipx19GA6ysSdguYXOnCPETwM6421QLehCCw== +"@blueprintjs/core@^3.47.0": + version "3.47.0" + resolved "https://registry.yarnpkg.com/@blueprintjs/core/-/core-3.47.0.tgz#bf33155d224b742ba51c6e1cf5be4523290337a7" + integrity sha512-u+bfmCyPXwKZMnwY4+e/iWjO2vDUvr8hA8ydmV0afyvcEe7Sh85UPEorIgQ/CBuRIbVMNm8FpLsFzDxgkfrCNA== dependencies: "@blueprintjs/icons" "^3.27.0" "@types/dom4" "^2.0.1" @@ -1254,10 +1254,10 @@ resolved "https://registry.yarnpkg.com/@csstools/normalize.css/-/normalize.css-10.1.0.tgz#f0950bba18819512d42f7197e56c518aa491cf18" integrity sha512-ij4wRiunFfaJxjB0BdrYHIH8FxBJpOwNPhhAcunlmPdXudL1WQV1qoP9un6JsEBAgQH+7UXyyjh0g7jTxXK6tg== -"@eslint/eslintrc@^0.4.2": - version "0.4.2" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.2.tgz#f63d0ef06f5c0c57d76c4ab5f63d3835c51b0179" - integrity sha512-8nmGq/4ycLpIwzvhI4tNDmQztZ8sp+hI7cyG8i1nQDhkAbRzHpXPidRAHlNvCZQpJTKw5ItIpMw9RSToGF00mg== +"@eslint/eslintrc@^0.4.3": + version "0.4.3" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.3.tgz#9e42981ef035beb3dd49add17acb96e8ff6f394c" + integrity sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw== dependencies: ajv "^6.12.4" debug "^4.1.1" @@ -1690,27 +1690,27 @@ resolved "https://registry.yarnpkg.com/@shopify/i18n/-/i18n-1.0.1.tgz#fddb5e9188fc8364ddf6e2a9fe03c8325fa00c43" integrity sha512-nZulYLi3agPguee/dUuUg/bv8JGef3YZDvqKbgAmAW6kZn6h8ct6Q9hlLHr2O+x1WO+e6stlHDr993oONopeoA== -"@shopify/react-effect@^4.0.1": - version "4.0.1" - resolved "https://registry.yarnpkg.com/@shopify/react-effect/-/react-effect-4.0.1.tgz#1466b581d7a6c763f39d31305bccbcb0e0b2aaaa" - integrity sha512-Z7kgHvMBzRahJz6OXngqH6CgwzKk7u46oJ1vvLYEB3gWeysLGgp/dupWbikQhtxnm/gu4M0UiQcljude2v0fTg== +"@shopify/react-effect@^4.1.0": + version "4.1.0" + resolved "https://registry.yarnpkg.com/@shopify/react-effect/-/react-effect-4.1.0.tgz#963978799d82c2e0dfdeb6dc83472d9b9c431979" + integrity sha512-pLavZA0w2S2+fdDEA/NI9Qkva1T8Mgc2/RFIz6fTkO144Fi/jdI1GMcIfrgI5Z2Z0UZKEGoUbiYcg/U0EP1mgQ== -"@shopify/react-hooks@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@shopify/react-hooks/-/react-hooks-2.0.1.tgz#d3c380e401261997c91c85c9ea813f9dedff7ba9" - integrity sha512-qrzYM0H+nbcxsIJwJ8QsBVhreGylRy++KTpjGO2Cz+8mfBQUtbfHhtj0ANQbVzKpzcwPuYSC3bgpspryXdXVxQ== +"@shopify/react-hooks@^2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@shopify/react-hooks/-/react-hooks-2.1.0.tgz#f5f973756b5c8d650df0abd4cd88b5bc279c8a4b" + integrity sha512-2PKHdDGPhTtG+pZaATssK5l8qWeQUcrf1v90jZriDsGHfiNTY1SozzmdhY2HZ8Ylt2x9BGtpyOa/jOKc/SO4IQ== -"@shopify/react-i18n@^6.0.4": - version "6.0.4" - resolved "https://registry.yarnpkg.com/@shopify/react-i18n/-/react-i18n-6.0.4.tgz#b3e8a1bd21e9709c0087f4b3ae33f9084b38159b" - integrity sha512-VrxYR0XAPjprSx4RTL1J1uNLMqDyGlIrKw8sfybuDgxqLmF+KvF71w8hFNkkZCK+bWG3ypjheoK36XeZxIfqNA== +"@shopify/react-i18n@^6.1.0": + version "6.1.0" + resolved "https://registry.yarnpkg.com/@shopify/react-i18n/-/react-i18n-6.1.0.tgz#f85f58702927c416116d748051e4f77d85213518" + integrity sha512-86Z/kC+mmHvvZO9ggSFXW1gzKTFrpYal1SeLsRRL+5fJEUN1rjTfbKf/6cMcJPuy3zkoqEVJQ4qpvWo75OysAQ== dependencies: "@shopify/dates" "^1.0.2" "@shopify/decorators" "^2.0.0" "@shopify/function-enhancers" "^2.0.0" "@shopify/i18n" "^1.0.1" - "@shopify/react-effect" "^4.0.1" - "@shopify/react-hooks" "^2.0.1" + "@shopify/react-effect" "^4.1.0" + "@shopify/react-hooks" "^2.1.0" "@shopify/useful-types" "^3.0.1" "@types/hoist-non-react-statics" "^3.0.1" change-case "^3.1.0" @@ -1891,10 +1891,10 @@ "@babel/runtime" "^7.12.5" "@testing-library/dom" "^8.0.0" -"@testing-library/user-event@^13.1.9": - version "13.1.9" - resolved "https://registry.yarnpkg.com/@testing-library/user-event/-/user-event-13.1.9.tgz#29e49a42659ac3c1023565ff56819e0153a82e99" - integrity sha512-NZr0zL2TMOs2qk+dNlqrAdbaRW5dAmYwd1yuQ4r7HpkVEOj0MWuUjDWwKhcLd/atdBy8ZSMHSKp+kXSQe47ezg== +"@testing-library/user-event@^13.2.0": + version "13.2.0" + resolved "https://registry.yarnpkg.com/@testing-library/user-event/-/user-event-13.2.0.tgz#8d63aaae1f5ec1d683d3afe57acd5f175f819f0f" + integrity sha512-wDEuKkkChNfA02Fpd9A39AXmdmxkvRcHyt/cK3WWiPAQTyMhcKFNM51aQgpEDJUcdj7uPsOaDEESoW/L1b2kZA== dependencies: "@babel/runtime" "^7.12.5" @@ -1964,10 +1964,10 @@ resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.39.tgz#e177e699ee1b8c22d23174caaa7422644389509f" integrity sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw== -"@types/file-saver@^2.0.1": - version "2.0.2" - resolved "https://registry.yarnpkg.com/@types/file-saver/-/file-saver-2.0.2.tgz#bd593ccfaee42ff94a5c1c83bf69ae9be83493b9" - integrity sha512-xbqnZmGrCEqi/KUzOkeUSe77p7APvLuyellGaAoeww3CHJ1AbjQWjPSCFtKIzZn8L7LpEax4NXnC+gfa6nM7IA== +"@types/file-saver@^2.0.3": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@types/file-saver/-/file-saver-2.0.3.tgz#b734c4f5a04d20615eaed3dc106e2ab321082009" + integrity sha512-MBIou8pd/41jkff7s97B47bc9+p0BszqqDJsO51yDm49uUxeKzrfuNl5fSLC6BpLEWKA8zlwyqALVmXrFwoBHQ== "@types/glob@^7.1.1": version "7.1.3" @@ -2086,20 +2086,20 @@ dependencies: "@types/react" "^16" -"@types/react-redux@^7.1.16": - version "7.1.16" - resolved "https://registry.yarnpkg.com/@types/react-redux/-/react-redux-7.1.16.tgz#0fbd04c2500c12105494c83d4a3e45c084e3cb21" - integrity sha512-f/FKzIrZwZk7YEO9E1yoxIuDNRiDducxkFlkw/GNMGEnK9n4K8wJzlJBghpSuOVDgEUHoDkDF7Gi9lHNQR4siw== +"@types/react-redux@^7.1.16", "@types/react-redux@^7.1.18": + version "7.1.18" + resolved "https://registry.yarnpkg.com/@types/react-redux/-/react-redux-7.1.18.tgz#2bf8fd56ebaae679a90ebffe48ff73717c438e04" + integrity sha512-9iwAsPyJ9DLTRH+OFeIrm9cAbIj1i2ANL3sKQFATqnPWRbg+jEFXyZOKHiQK/N86pNRXbb4HRxAxo0SIX1XwzQ== dependencies: "@types/hoist-non-react-statics" "^3.3.0" "@types/react" "*" hoist-non-react-statics "^3.3.0" redux "^4.0.0" -"@types/react-splitter-layout@^3.0.1": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@types/react-splitter-layout/-/react-splitter-layout-3.0.1.tgz#83fd7683b07f804fb1a7b72651f5eb99cd5258a9" - integrity sha512-NsKq32LdG11G/Uj+xo2QmC9S8YSe8JRtxkBhsBE7ODFs0zcnzNEqFAQirP0H7rPe2WFGiu+d/44xbHsew7QAJw== +"@types/react-splitter-layout@^3.0.2": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@types/react-splitter-layout/-/react-splitter-layout-3.0.2.tgz#72a3c8b9329ee2a626d8c4c456852473a94a5e8b" + integrity sha512-kb6eJoMTvgefh7LJE5VZuJMiqshxgECarfNO5NAXXyLaPg1FuUPUpmDqlWyGHdal81FYBuNfT1Q9+fwrGc2fOw== dependencies: "@types/react" "*" @@ -2112,10 +2112,10 @@ "@types/scheduler" "*" csstype "^3.0.2" -"@types/react@^16", "@types/react@^16.14.10": - version "16.14.10" - resolved "https://registry.yarnpkg.com/@types/react/-/react-16.14.10.tgz#76bc1c42ed5ab0d2ab13e5c58faaccaad3449477" - integrity sha512-QadBsMyF6ldjEAXEhsmEW/L0uBDJT8yw7Qoe5sRnEKVrzMkiYoJwqoL5TKJOlArsn/wvIJM/XdVzkdL6+AS64Q== +"@types/react@^16", "@types/react@^16.14.11": + version "16.14.11" + resolved "https://registry.yarnpkg.com/@types/react/-/react-16.14.11.tgz#992a0cd4b66b9f27315042b5d96e976717368f04" + integrity sha512-Don0MtsZZ3fjwTJ2BsoqkyOy7e176KplEAKOpr/4XDdzinlyJBn9yfsKn5mcSgn4kh1B22+3tBnzBC1z63ybtQ== dependencies: "@types/prop-types" "*" "@types/scheduler" "*" @@ -5053,10 +5053,10 @@ eslint-config-react-app@^6.0.0: dependencies: confusing-browser-globals "^1.0.10" -eslint-config-typed-fp@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/eslint-config-typed-fp/-/eslint-config-typed-fp-1.4.1.tgz#1348523855db10993e383c321268d65fd14de8bd" - integrity sha512-TuEKs5IbgZOARqhhig1JoAr4EEPR3lrCuMAeqqDuwLVCnx0xK3g/fJy6O5ljtN1WqWT9cQpKVuruIy/rSqfnBg== +eslint-config-typed-fp@^1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/eslint-config-typed-fp/-/eslint-config-typed-fp-1.5.0.tgz#5f8e7540b742db3e491b75243de25cd0d6c318b7" + integrity sha512-ETR7y+BFqyhie8NjX68+Bidx8bbOoXZyultJbboD/IieASLh6l/sWNNM3Mwvi5OJKdqtllfEEqlyq1jG4x8vQQ== eslint-import-resolver-node@^0.3.4: version "0.3.4" @@ -5237,13 +5237,13 @@ eslint-webpack-plugin@^2.5.2: normalize-path "^3.0.0" schema-utils "^3.0.0" -eslint@^7.11.0, eslint@^7.30.0: - version "7.30.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.30.0.tgz#6d34ab51aaa56112fd97166226c9a97f505474f8" - integrity sha512-VLqz80i3as3NdloY44BQSJpFw534L9Oh+6zJOUaViV4JPd+DaHwutqP7tcpkW3YiXbK6s05RZl7yl7cQn+lijg== +eslint@^7.11.0, eslint@^7.31.0: + version "7.31.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.31.0.tgz#f972b539424bf2604907a970860732c5d99d3aca" + integrity sha512-vafgJpSh2ia8tnTkNUkwxGmnumgckLh5aAbLa1xRmIn9+owi8qBNGKL+B881kNKNTy7FFqTEkpNkUvmw0n6PkA== dependencies: "@babel/code-frame" "7.12.11" - "@eslint/eslintrc" "^0.4.2" + "@eslint/eslintrc" "^0.4.3" "@humanwhocodes/config-array" "^0.5.0" ajv "^6.10.0" chalk "^4.0.0" @@ -7214,12 +7214,12 @@ jest-message-util@^26.6.0, jest-message-util@^26.6.2: slash "^3.0.0" stack-utils "^2.0.2" -jest-mock-extended@^1.0.13: - version "1.0.16" - resolved "https://registry.yarnpkg.com/jest-mock-extended/-/jest-mock-extended-1.0.16.tgz#f6a96c795acc2f5ae9ee74d7b048c3b4399c6fc8" - integrity sha512-W1lI7cO0ZYmTQUBZH11nSDKyU36SxAyzBjZNxBWcpFnCKHGNWIPdFA8RJMhmobLQ8WLI4y9AMIbYzMN9q/GiRQ== +jest-mock-extended@^1.0.18: + version "1.0.18" + resolved "https://registry.yarnpkg.com/jest-mock-extended/-/jest-mock-extended-1.0.18.tgz#27a40e882c09f8230243fc6765fe7285b03f2b4b" + integrity sha512-qf1n7lIa2dTxxPIBr+FlXrbj3hnV1sG9DPZsrr2H/8W+Jw0wt6OmeOQsPcjRuW8EXIECC9pDXsSIfEdn+HP7JQ== dependencies: - ts-essentials "^4.0.0" + ts-essentials "^7.0.2" jest-mock@^26.6.2: version "26.6.2" @@ -7685,10 +7685,10 @@ levn@~0.3.0: prelude-ls "~1.1.2" type-check "~0.3.2" -license-webpack-plugin@^2.3.15: - version "2.3.19" - resolved "https://registry.yarnpkg.com/license-webpack-plugin/-/license-webpack-plugin-2.3.19.tgz#f02720b2b0bcd9ae27fb63f0bd908d9ac9335d6c" - integrity sha512-z/izhwFRYHs1sCrDgrTUsNJpd+Xsd06OcFWSwHz/TiZygm5ucweVZi1Hu14Rf6tOj/XAl1Ebyc7GW6ZyyINyWA== +license-webpack-plugin@^2.3.20: + version "2.3.20" + resolved "https://registry.yarnpkg.com/license-webpack-plugin/-/license-webpack-plugin-2.3.20.tgz#f51fb674ca31519dbedbe1c7aabc036e5a7f2858" + integrity sha512-AHVueg9clOKACSHkhmEI+PCC9x8+qsQVuKECZD3ETxETK5h/PCv5/MUzyG1gm8OMcip/s1tcNxqo9Qb7WhjGsg== dependencies: "@types/webpack-sources" "^0.1.5" webpack-sources "^1.2.0" @@ -8194,10 +8194,10 @@ mkdirp@^1.0.3, mkdirp@^1.0.4: resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== -monaco-editor-webpack-plugin@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/monaco-editor-webpack-plugin/-/monaco-editor-webpack-plugin-4.0.0.tgz#95be3f48f4220999b909266a9997727f0deab947" - integrity sha512-4BT9XDRQXraMQjxEUjR+uuubRe3RIPkvVoGw8zwWG++s7wq6TAiXaSOMdkdS9TrjCREgSnygCOlVzY6MS8RPuA== +monaco-editor-webpack-plugin@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/monaco-editor-webpack-plugin/-/monaco-editor-webpack-plugin-4.1.1.tgz#b44127910c8f4a29bde72859a1c4107c2960a939" + integrity sha512-daa+k3rytb7Jf8bcSSsbrnMsCPR7+kiHUGt08Bvqxdws3tGMPMzsiiRgCyckpKY4XChIXWoasDav3idHhrooEQ== dependencies: loader-utils "^2.0.0" @@ -11884,10 +11884,10 @@ tryer@^1.0.1: resolved "https://registry.yarnpkg.com/tryer/-/tryer-1.0.1.tgz#f2c85406800b9b0f74c9f7465b81eaad241252f8" integrity sha512-c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA== -ts-essentials@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/ts-essentials/-/ts-essentials-4.0.0.tgz#506c42b270bbd0465574b90416533175b09205ab" - integrity sha512-uQJX+SRY9mtbKU+g9kl5Fi7AEMofPCvHfJkQlaygpPmHPZrtgaBqbWFOYyiA47RhnSwwnXdepUJrgqUYxoUyhQ== +ts-essentials@^7.0.2: + version "7.0.2" + resolved "https://registry.yarnpkg.com/ts-essentials/-/ts-essentials-7.0.2.tgz#e21142df8034dbd444cb9573ed204d0b85fc64fb" + integrity sha512-qWPVC1xZGdefbsgFP7tPo+bsgSA2ZIXL1XeEe5M2WoMZxIOr/HbsHxP/Iv75IFhiMHMDGL7cOOwi5SXcgx9mHw== ts-pnp@1.2.0, ts-pnp@^1.1.6: version "1.2.0"