Mercurial > code > home > repos > streamed-graph
changeset 88:ac7ad087d474
graph view rewrites and fixes for the multi-subject table
author | drewp@bigasterisk.com |
---|---|
date | Tue, 30 Nov 2021 00:14:37 -0800 |
parents | 910e2037d72d |
children | 4d19a94906d2 |
files | demo/index.html package.json pnpm-lock.yaml src/graph_view.ts src/tabulate.test.ts src/tabulate.ts |
diffstat | 6 files changed, 1528 insertions(+), 1315 deletions(-) [+] |
line wrap: on
line diff
--- a/demo/index.html Thu Nov 25 18:52:07 2021 -0800 +++ b/demo/index.html Tue Nov 30 00:14:37 2021 -0800 @@ -9,6 +9,7 @@ <style>body {background: black; color: white; } </style> + here's a streamed-graph: <streamed-graph expanded url="http://10.43.193.115/graph/zigbee/events"></streamed-graph> here's a streamed-graph: <streamed-graph expanded url="http://dash:9075/graph/environment/events"></streamed-graph> </body> </html>
--- a/package.json Thu Nov 25 18:52:07 2021 -0800 +++ b/package.json Tue Nov 30 00:14:37 2021 -0800 @@ -13,6 +13,7 @@ "dependencies": { "@types/jsonld": "^1.5.6", "@types/n3": "^1.10.4", + "immutable": "^4.0.0", "jsonld": "^5.2.0", "lit": "^2.0.2", "n3": "^1.11.2",
--- a/pnpm-lock.yaml Thu Nov 25 18:52:07 2021 -0800 +++ b/pnpm-lock.yaml Tue Nov 30 00:14:37 2021 -0800 @@ -1,27 +1,28 @@ dependencies: '@types/jsonld': 1.5.6 '@types/n3': 1.10.4 + immutable: 4.0.0 jsonld: 5.2.0 lit: 2.0.2 n3: 1.11.2 rdf-js: 4.0.2 devDependencies: - '@rollup/plugin-commonjs': 21.0.1_rollup@2.60.0 - '@rollup/plugin-node-resolve': 13.0.6_rollup@2.60.0 - '@rollup/plugin-replace': 3.0.0_rollup@2.60.0 - '@rollup/plugin-typescript': 8.3.0_15dfac413fd0241781a9fd89f988e2e5 - '@types/jest': 27.0.2 + '@rollup/plugin-commonjs': 21.0.1_rollup@2.60.2 + '@rollup/plugin-node-resolve': 13.0.6_rollup@2.60.2 + '@rollup/plugin-replace': 3.0.0_rollup@2.60.2 + '@rollup/plugin-typescript': 8.3.0_cf49768e670184c7e0e13e8a66db2d3a + '@types/jest': 27.0.3 '@types/rollup-plugin-postcss': 3.1.4 - jest: 27.3.1 + jest: 27.4.0 node-globals: 0.1.5 - rollup: 2.60.0 + rollup: 2.60.2 rollup-plugin-node-builtins: 2.1.2 rollup-plugin-node-globals: 1.4.0 - rollup-plugin-postcss: 4.0.1 + rollup-plugin-postcss: 4.0.2 stylus: 0.55.0 - ts-jest: 27.0.7_2c4ca6574207836d1023f54689cc81ac + ts-jest: 27.0.7_bfad92f4d8caf69d57ace222bbbf1afc tslib: 2.3.1 - typescript: 4.4.4 + typescript: 4.5.2 lockfileVersion: 5.1 packages: /@babel/code-frame/7.16.0: @@ -32,81 +33,180 @@ node: '>=6.9.0' resolution: integrity: sha512-IF4EOMEV+bfYwOmNxGzSnjR2EmQod7f1UXOpZM3l4i4o4QNwzjtJAu/HxdjHq0aYBvdqMuQEY1eg0nqW9ZPORA== - /@babel/core/7.8.3: + /@babel/compat-data/7.16.4: + dev: true + engines: + node: '>=6.9.0' + resolution: + integrity: sha512-1o/jo7D+kC9ZjHX5v+EHrdjl3PhxMrLSOTGsOdHJ+KL8HCaEK6ehrVL2RS6oHDZp+L7xLirLrPmQtEng769J/Q== + /@babel/core/7.16.0_@babel+core@7.16.0: dependencies: '@babel/code-frame': 7.16.0 - '@babel/generator': 7.8.3 - '@babel/helpers': 7.8.3 - '@babel/parser': 7.8.3 - '@babel/template': 7.8.3 - '@babel/traverse': 7.8.3 - '@babel/types': 7.8.3 - convert-source-map: 1.7.0 - debug: 4.1.1 - gensync: 1.0.0-beta.1 - json5: 2.1.1 - lodash: 4.17.15 - resolve: 1.20.0 - semver: 5.7.1 + '@babel/generator': 7.16.0 + '@babel/helper-compilation-targets': 7.16.3_@babel+core@7.16.0 + '@babel/helper-module-transforms': 7.16.0 + '@babel/helpers': 7.16.3 + '@babel/parser': 7.16.4 + '@babel/template': 7.16.0 + '@babel/traverse': 7.16.3 + '@babel/types': 7.16.0 + convert-source-map: 1.8.0 + debug: 4.3.3 + gensync: 1.0.0-beta.2 + json5: 2.2.0 + semver: 6.3.0 + source-map: 0.5.7 + dev: true + engines: + node: '>=6.9.0' + peerDependencies: + '@babel/core': '*' + resolution: + integrity: sha512-mYZEvshBRHGsIAiyH5PzCFTCfbWfoYbO/jcSdXQSUQu1/pW0xDZAUP7KEc32heqWTAfAHhV9j1vH8Sav7l+JNQ== + /@babel/generator/7.16.0: + dependencies: + '@babel/types': 7.16.0 + jsesc: 2.5.2 source-map: 0.5.7 dev: true engines: node: '>=6.9.0' resolution: - integrity: sha512-4XFkf8AwyrEG7Ziu3L2L0Cv+WyY47Tcsp70JFmpftbAA1K7YL/sgE9jh9HyNj08Y/U50ItUchpN0w6HxAoX1rA== - /@babel/generator/7.8.3: - dependencies: - '@babel/types': 7.8.3 - jsesc: 2.5.2 - lodash: 4.17.21 - source-map: 0.5.7 - dev: true - resolution: - integrity: sha512-WjoPk8hRpDRqqzRpvaR8/gDUPkrnOOeuT2m8cNICJtZH6mwaCo3v0OKMI7Y6SM1pBtyijnLtAL0HDi41pf41ug== - /@babel/helper-function-name/7.8.3: - dependencies: - '@babel/helper-get-function-arity': 7.8.3 - '@babel/template': 7.8.3 - '@babel/types': 7.8.3 - dev: true - resolution: - integrity: sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA== - /@babel/helper-get-function-arity/7.8.3: - dependencies: - '@babel/types': 7.8.3 - dev: true - resolution: - integrity: sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA== + integrity: sha512-RR8hUCfRQn9j9RPKEVXo9LiwoxLPYn6hNZlvUOR8tSnaxlD0p0+la00ZP9/SnRt6HchKr+X0fO2r8vrETiJGew== + /@babel/helper-compilation-targets/7.16.3_@babel+core@7.16.0: + dependencies: + '@babel/compat-data': 7.16.4 + '@babel/core': 7.16.0_@babel+core@7.16.0 + '@babel/helper-validator-option': 7.14.5 + browserslist: 4.18.1 + semver: 6.3.0 + dev: true + engines: + node: '>=6.9.0' + peerDependencies: + '@babel/core': ^7.0.0 + resolution: + integrity: sha512-vKsoSQAyBmxS35JUOOt+07cLc6Nk/2ljLIHwmq2/NM6hdioUaqEXq/S+nXvbvXbZkNDlWOymPanJGOc4CBjSJA== + /@babel/helper-function-name/7.16.0: + dependencies: + '@babel/helper-get-function-arity': 7.16.0 + '@babel/template': 7.16.0 + '@babel/types': 7.16.0 + dev: true + engines: + node: '>=6.9.0' + resolution: + integrity: sha512-BZh4mEk1xi2h4HFjWUXRQX5AEx4rvaZxHgax9gcjdLWdkjsY7MKt5p0otjsg5noXw+pB+clMCjw+aEVYADMjog== + /@babel/helper-get-function-arity/7.16.0: + dependencies: + '@babel/types': 7.16.0 + dev: true + engines: + node: '>=6.9.0' + resolution: + integrity: sha512-ASCquNcywC1NkYh/z7Cgp3w31YW8aojjYIlNg4VeJiHkqyP4AzIvr4qx7pYDb4/s8YcsZWqqOSxgkvjUz1kpDQ== + /@babel/helper-hoist-variables/7.16.0: + dependencies: + '@babel/types': 7.16.0 + dev: true + engines: + node: '>=6.9.0' + resolution: + integrity: sha512-1AZlpazjUR0EQZQv3sgRNfM9mEVWPK3M6vlalczA+EECcPz3XPh6VplbErL5UoMpChhSck5wAJHthlj1bYpcmg== + /@babel/helper-member-expression-to-functions/7.16.0: + dependencies: + '@babel/types': 7.16.0 + dev: true + engines: + node: '>=6.9.0' + resolution: + integrity: sha512-bsjlBFPuWT6IWhl28EdrQ+gTvSvj5tqVP5Xeftp07SEuz5pLnsXZuDkDD3Rfcxy0IsHmbZ+7B2/9SHzxO0T+sQ== + /@babel/helper-module-imports/7.16.0: + dependencies: + '@babel/types': 7.16.0 + dev: true + engines: + node: '>=6.9.0' + resolution: + integrity: sha512-kkH7sWzKPq0xt3H1n+ghb4xEMP8k0U7XV3kkB+ZGy69kDk2ySFW1qPi06sjKzFY3t1j6XbJSqr4mF9L7CYVyhg== + /@babel/helper-module-transforms/7.16.0: + dependencies: + '@babel/helper-module-imports': 7.16.0 + '@babel/helper-replace-supers': 7.16.0 + '@babel/helper-simple-access': 7.16.0 + '@babel/helper-split-export-declaration': 7.16.0 + '@babel/helper-validator-identifier': 7.15.7 + '@babel/template': 7.16.0 + '@babel/traverse': 7.16.3 + '@babel/types': 7.16.0 + dev: true + engines: + node: '>=6.9.0' + resolution: + integrity: sha512-My4cr9ATcaBbmaEa8M0dZNA74cfI6gitvUAskgDtAFmAqyFKDSHQo5YstxPbN+lzHl2D9l/YOEFqb2mtUh4gfA== + /@babel/helper-optimise-call-expression/7.16.0: + dependencies: + '@babel/types': 7.16.0 + dev: true + engines: + node: '>=6.9.0' + resolution: + integrity: sha512-SuI467Gi2V8fkofm2JPnZzB/SUuXoJA5zXe/xzyPP2M04686RzFKFHPK6HDVN6JvWBIEW8tt9hPR7fXdn2Lgpw== /@babel/helper-plugin-utils/7.14.5: dev: true engines: node: '>=6.9.0' resolution: integrity: sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ== - /@babel/helper-plugin-utils/7.8.3: - dev: true - resolution: - integrity: sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ== - /@babel/helper-split-export-declaration/7.8.3: - dependencies: - '@babel/types': 7.8.3 - dev: true - resolution: - integrity: sha512-3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA== + /@babel/helper-replace-supers/7.16.0: + dependencies: + '@babel/helper-member-expression-to-functions': 7.16.0 + '@babel/helper-optimise-call-expression': 7.16.0 + '@babel/traverse': 7.16.3 + '@babel/types': 7.16.0 + dev: true + engines: + node: '>=6.9.0' + resolution: + integrity: sha512-TQxuQfSCdoha7cpRNJvfaYxxxzmbxXw/+6cS7V02eeDYyhxderSoMVALvwupA54/pZcOTtVeJ0xccp1nGWladA== + /@babel/helper-simple-access/7.16.0: + dependencies: + '@babel/types': 7.16.0 + dev: true + engines: + node: '>=6.9.0' + resolution: + integrity: sha512-o1rjBT/gppAqKsYfUdfHq5Rk03lMQrkPHG1OWzHWpLgVXRH4HnMM9Et9CVdIqwkCQlobnGHEJMsgWP/jE1zUiw== + /@babel/helper-split-export-declaration/7.16.0: + dependencies: + '@babel/types': 7.16.0 + dev: true + engines: + node: '>=6.9.0' + resolution: + integrity: sha512-0YMMRpuDFNGTHNRiiqJX19GjNXA4H0E8jZ2ibccfSxaCogbm3am5WN/2nQNj0YnQwGWM1J06GOcQ2qnh3+0paw== /@babel/helper-validator-identifier/7.15.7: dev: true engines: node: '>=6.9.0' resolution: integrity: sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w== - /@babel/helpers/7.8.3: - dependencies: - '@babel/template': 7.8.3 - '@babel/traverse': 7.8.3 - '@babel/types': 7.8.3 - dev: true - resolution: - integrity: sha512-LmU3q9Pah/XyZU89QvBgGt+BCsTPoQa+73RxAQh8fb8qkDyIfeQnmgs+hvzhTCKTzqOyk7JTkS3MS1S8Mq5yrQ== + /@babel/helper-validator-option/7.14.5: + dev: true + engines: + node: '>=6.9.0' + resolution: + integrity: sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow== + /@babel/helpers/7.16.3: + dependencies: + '@babel/template': 7.16.0 + '@babel/traverse': 7.16.3 + '@babel/types': 7.16.0 + dev: true + engines: + node: '>=6.9.0' + resolution: + integrity: sha512-Xn8IhDlBPhvYTvgewPKawhADichOsbkZuzN7qz2BusOM0brChsyXMDJvldWaYMMUNiCQdQzNEioXTp3sC8Nt8w== /@babel/highlight/7.16.0: dependencies: '@babel/helper-validator-identifier': 7.15.7 @@ -117,115 +217,115 @@ node: '>=6.9.0' resolution: integrity: sha512-t8MH41kUQylBtu2+4IQA3atqevA2lRgqA2wyVB/YiWmsDSuylZZuXOUy9ric30hfzauEFfdsuk/eXTRrGrfd0g== - /@babel/parser/7.8.3: + /@babel/parser/7.16.4: dev: true engines: node: '>=6.0.0' hasBin: true resolution: - integrity: sha512-/V72F4Yp/qmHaTALizEm9Gf2eQHV3QyTL3K0cNfijwnMnb1L+LDlAubb/ZnSdGAVzVSWakujHYs1I26x66sMeQ== - /@babel/plugin-syntax-async-generators/7.8.4_@babel+core@7.8.3: - dependencies: - '@babel/core': 7.8.3 + integrity: sha512-6V0qdPUaiVHH3RtZeLIsc+6pDhbYzHR8ogA8w+f+Wc77DuXto19g2QUwveINoS34Uw+W8/hQDGJCx+i4n7xcng== + /@babel/plugin-syntax-async-generators/7.8.4_@babel+core@7.16.0: + dependencies: + '@babel/core': 7.16.0_@babel+core@7.16.0 '@babel/helper-plugin-utils': 7.14.5 dev: true peerDependencies: '@babel/core': ^7.0.0-0 resolution: integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw== - /@babel/plugin-syntax-bigint/7.8.3_@babel+core@7.8.3: - dependencies: - '@babel/core': 7.8.3 + /@babel/plugin-syntax-bigint/7.8.3_@babel+core@7.16.0: + dependencies: + '@babel/core': 7.16.0_@babel+core@7.16.0 '@babel/helper-plugin-utils': 7.14.5 dev: true peerDependencies: '@babel/core': ^7.0.0-0 resolution: integrity: sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg== - /@babel/plugin-syntax-class-properties/7.12.13_@babel+core@7.8.3: - dependencies: - '@babel/core': 7.8.3 + /@babel/plugin-syntax-class-properties/7.12.13_@babel+core@7.16.0: + dependencies: + '@babel/core': 7.16.0_@babel+core@7.16.0 '@babel/helper-plugin-utils': 7.14.5 dev: true peerDependencies: '@babel/core': ^7.0.0-0 resolution: integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== - /@babel/plugin-syntax-import-meta/7.10.4_@babel+core@7.8.3: - dependencies: - '@babel/core': 7.8.3 + /@babel/plugin-syntax-import-meta/7.10.4_@babel+core@7.16.0: + dependencies: + '@babel/core': 7.16.0_@babel+core@7.16.0 '@babel/helper-plugin-utils': 7.14.5 dev: true peerDependencies: '@babel/core': ^7.0.0-0 resolution: integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g== - /@babel/plugin-syntax-json-strings/7.8.3_@babel+core@7.8.3: - dependencies: - '@babel/core': 7.8.3 + /@babel/plugin-syntax-json-strings/7.8.3_@babel+core@7.16.0: + dependencies: + '@babel/core': 7.16.0_@babel+core@7.16.0 '@babel/helper-plugin-utils': 7.14.5 dev: true peerDependencies: '@babel/core': ^7.0.0-0 resolution: integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA== - /@babel/plugin-syntax-logical-assignment-operators/7.10.4_@babel+core@7.8.3: - dependencies: - '@babel/core': 7.8.3 + /@babel/plugin-syntax-logical-assignment-operators/7.10.4_@babel+core@7.16.0: + dependencies: + '@babel/core': 7.16.0_@babel+core@7.16.0 '@babel/helper-plugin-utils': 7.14.5 dev: true peerDependencies: '@babel/core': ^7.0.0-0 resolution: integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig== - /@babel/plugin-syntax-nullish-coalescing-operator/7.8.3_@babel+core@7.8.3: - dependencies: - '@babel/core': 7.8.3 + /@babel/plugin-syntax-nullish-coalescing-operator/7.8.3_@babel+core@7.16.0: + dependencies: + '@babel/core': 7.16.0_@babel+core@7.16.0 '@babel/helper-plugin-utils': 7.14.5 dev: true peerDependencies: '@babel/core': ^7.0.0-0 resolution: integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ== - /@babel/plugin-syntax-numeric-separator/7.10.4_@babel+core@7.8.3: - dependencies: - '@babel/core': 7.8.3 + /@babel/plugin-syntax-numeric-separator/7.10.4_@babel+core@7.16.0: + dependencies: + '@babel/core': 7.16.0_@babel+core@7.16.0 '@babel/helper-plugin-utils': 7.14.5 dev: true peerDependencies: '@babel/core': ^7.0.0-0 resolution: integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== - /@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.8.3: - dependencies: - '@babel/core': 7.8.3 + /@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.16.0: + dependencies: + '@babel/core': 7.16.0_@babel+core@7.16.0 '@babel/helper-plugin-utils': 7.14.5 dev: true peerDependencies: '@babel/core': ^7.0.0-0 resolution: integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== - /@babel/plugin-syntax-optional-catch-binding/7.8.3_@babel+core@7.8.3: - dependencies: - '@babel/core': 7.8.3 + /@babel/plugin-syntax-optional-catch-binding/7.8.3_@babel+core@7.16.0: + dependencies: + '@babel/core': 7.16.0_@babel+core@7.16.0 '@babel/helper-plugin-utils': 7.14.5 dev: true peerDependencies: '@babel/core': ^7.0.0-0 resolution: integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q== - /@babel/plugin-syntax-optional-chaining/7.8.3_@babel+core@7.8.3: - dependencies: - '@babel/core': 7.8.3 + /@babel/plugin-syntax-optional-chaining/7.8.3_@babel+core@7.16.0: + dependencies: + '@babel/core': 7.16.0_@babel+core@7.16.0 '@babel/helper-plugin-utils': 7.14.5 dev: true peerDependencies: '@babel/core': ^7.0.0-0 resolution: integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg== - /@babel/plugin-syntax-top-level-await/7.14.5_@babel+core@7.8.3: - dependencies: - '@babel/core': 7.8.3 + /@babel/plugin-syntax-top-level-await/7.14.5_@babel+core@7.16.0: + dependencies: + '@babel/core': 7.16.0_@babel+core@7.16.0 '@babel/helper-plugin-utils': 7.14.5 dev: true engines: @@ -234,9 +334,9 @@ '@babel/core': ^7.0.0-0 resolution: integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw== - /@babel/plugin-syntax-typescript/7.16.0_@babel+core@7.8.3: - dependencies: - '@babel/core': 7.8.3 + /@babel/plugin-syntax-typescript/7.16.0_@babel+core@7.16.0: + dependencies: + '@babel/core': 7.16.0_@babel+core@7.16.0 '@babel/helper-plugin-utils': 7.14.5 dev: true engines: @@ -245,36 +345,41 @@ '@babel/core': ^7.0.0-0 resolution: integrity: sha512-Xv6mEXqVdaqCBfJFyeab0fH2DnUoMsDmhamxsSi4j8nLd4Vtw213WMJr55xxqipC/YVWyPY3K0blJncPYji+dQ== - /@babel/template/7.8.3: + /@babel/template/7.16.0: dependencies: '@babel/code-frame': 7.16.0 - '@babel/parser': 7.8.3 - '@babel/types': 7.8.3 - dev: true - resolution: - integrity: sha512-04m87AcQgAFdvuoyiQ2kgELr2tV8B4fP/xJAVUL3Yb3bkNdMedD3d0rlSQr3PegP0cms3eHjl1F7PWlvWbU8FQ== - /@babel/traverse/7.8.3: + '@babel/parser': 7.16.4 + '@babel/types': 7.16.0 + dev: true + engines: + node: '>=6.9.0' + resolution: + integrity: sha512-MnZdpFD/ZdYhXwiunMqqgyZyucaYsbL0IrjoGjaVhGilz+x8YB++kRfygSOIj1yOtWKPlx7NBp+9I1RQSgsd5A== + /@babel/traverse/7.16.3: dependencies: '@babel/code-frame': 7.16.0 - '@babel/generator': 7.8.3 - '@babel/helper-function-name': 7.8.3 - '@babel/helper-split-export-declaration': 7.8.3 - '@babel/parser': 7.8.3 - '@babel/types': 7.8.3 - debug: 4.1.1 + '@babel/generator': 7.16.0 + '@babel/helper-function-name': 7.16.0 + '@babel/helper-hoist-variables': 7.16.0 + '@babel/helper-split-export-declaration': 7.16.0 + '@babel/parser': 7.16.4 + '@babel/types': 7.16.0 + debug: 4.3.3 globals: 11.12.0 - lodash: 4.17.21 - dev: true - resolution: - integrity: sha512-we+a2lti+eEImHmEXp7bM9cTxGzxPmBiVJlLVD+FuuQMeeO7RaDbutbgeheDkw+Xe3mCfJHnGOWLswT74m2IPg== - /@babel/types/7.8.3: - dependencies: - esutils: 2.0.3 - lodash: 4.17.21 + dev: true + engines: + node: '>=6.9.0' + resolution: + integrity: sha512-eolumr1vVMjqevCpwVO99yN/LoGL0EyHiLO5I043aYQvwOJ9eR5UsZSClHVCzfhBduMAsSzgA/6AyqPjNayJag== + /@babel/types/7.16.0: + dependencies: + '@babel/helper-validator-identifier': 7.15.7 to-fast-properties: 2.0.0 dev: true - resolution: - integrity: sha512-jBD+G8+LWpMBBWvVcdr4QysjUE4mU/syrhN17o1u3gx0/WzJB1kwiVZAXRtWbsIPOwW8pF/YJV5+nmetPzepXg== + engines: + node: '>=6.9.0' + resolution: + integrity: sha512-PJgg/k3SdLsGb3hhisFvtLOw5ts113klrpLuIPtCJIU+BB24fqq6lf8RWqKJEjzqXR9AEH1rIb5XTqwBHB+kQg== /@bcoe/v8-coverage/0.2.3: dev: true resolution: @@ -289,66 +394,67 @@ node: '>=10.0.0' resolution: integrity: sha512-W9KQQ5pUJcaR0I4c2HPJC0a7kRbZApIorZgPnEDwMBgj16iQzutGLrCXYaZOmxqVLVNqqlQ4aUJh+HBQZy4W6Q== - /@istanbuljs/load-nyc-config/1.0.0: + /@istanbuljs/load-nyc-config/1.1.0: dependencies: camelcase: 5.3.1 find-up: 4.1.0 - js-yaml: 3.13.1 + get-package-type: 0.1.0 + js-yaml: 3.14.1 resolve-from: 5.0.0 dev: true engines: node: '>=8' resolution: - integrity: sha512-ZR0rq/f/E4f4XcgnDvtMWXCUJpi8eO0rssVhmztsZqLIEFA9UUP9zmpE0VxlM+kv/E1ul2I876Fwil2ayptDVg== - /@istanbuljs/schema/0.1.2: + integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ== + /@istanbuljs/schema/0.1.3: dev: true engines: node: '>=8' resolution: - integrity: sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw== - /@jest/console/27.3.1: - dependencies: - '@jest/types': 27.2.5 - '@types/node': 13.1.7 + integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== + /@jest/console/27.4.0: + dependencies: + '@jest/types': 27.4.0 + '@types/node': 16.11.11 chalk: 4.1.2 - jest-message-util: 27.3.1 - jest-util: 27.3.1 + jest-message-util: 27.4.0 + jest-util: 27.4.0 slash: 3.0.0 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-RkFNWmv0iui+qsOr/29q9dyfKTTT5DCuP31kUwg7rmOKPT/ozLeGLKJKVIiOfbiKyleUZKIrHwhmiZWVe8IMdw== - /@jest/core/27.3.1: - dependencies: - '@jest/console': 27.3.1 - '@jest/reporters': 27.3.1 - '@jest/test-result': 27.3.1 - '@jest/transform': 27.3.1 - '@jest/types': 27.2.5 - '@types/node': 13.1.7 - ansi-escapes: 4.3.0 + integrity: sha512-2m7Xwcd1zTWtai5DCl+b0TAfoH8p5uqUoKmfzJCAfCrIwoJAf3xB+4nx3eKEGoyNfg5oavrh3gjbZ1n5z5eh4Q== + /@jest/core/27.4.0: + dependencies: + '@jest/console': 27.4.0 + '@jest/reporters': 27.4.0 + '@jest/test-result': 27.4.0 + '@jest/transform': 27.4.0 + '@jest/types': 27.4.0 + '@types/node': 16.11.11 + ansi-escapes: 4.3.2 chalk: 4.1.2 emittery: 0.8.1 exit: 0.1.2 graceful-fs: 4.2.8 - jest-changed-files: 27.3.0 - jest-config: 27.3.1 - jest-haste-map: 27.3.1 - jest-message-util: 27.3.1 - jest-regex-util: 27.0.6 - jest-resolve: 27.3.1_jest-resolve@27.3.1 - jest-resolve-dependencies: 27.3.1 - jest-runner: 27.3.1 - jest-runtime: 27.3.1 - jest-snapshot: 27.3.1 - jest-util: 27.3.1 - jest-validate: 27.3.1 - jest-watcher: 27.3.1 + jest-changed-files: 27.4.0 + jest-config: 27.4.0 + jest-haste-map: 27.4.0 + jest-message-util: 27.4.0 + jest-regex-util: 27.4.0 + jest-resolve: 27.4.0_jest-resolve@27.4.0 + jest-resolve-dependencies: 27.4.0 + jest-runner: 27.4.0 + jest-runtime: 27.4.0 + jest-snapshot: 27.4.0 + jest-util: 27.4.0 + jest-validate: 27.4.0 + jest-watcher: 27.4.0 micromatch: 4.0.4 rimraf: 3.0.2 slash: 3.0.0 - strip-ansi: 6.0.0 + strip-ansi: 6.0.1 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 @@ -358,63 +464,63 @@ node-notifier: optional: true resolution: - integrity: sha512-DMNE90RR5QKx0EA+wqe3/TNEwiRpOkhshKNxtLxd4rt3IZpCt+RSL+FoJsGeblRZmqdK4upHA/mKKGPPRAifhg== - /@jest/environment/27.3.1: - dependencies: - '@jest/fake-timers': 27.3.1 - '@jest/types': 27.2.5 - '@types/node': 13.1.7 - jest-mock: 27.3.0 + integrity: sha512-P6eoNIbE0OeenvCxrwdj0jRgeZg8r4eXNCS2zMgAS8EADzdp03mKe7TNwCsEPr460QIYCBwJo4W8wqai3UPXOA== + /@jest/environment/27.4.0: + dependencies: + '@jest/fake-timers': 27.4.0 + '@jest/types': 27.4.0 + '@types/node': 16.11.11 + jest-mock: 27.4.0 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-BCKCj4mOVLme6Tanoyc9k0ultp3pnmuyHw73UHRPeeZxirsU/7E3HC4le/VDb/SMzE1JcPnto+XBKFOcoiJzVw== - /@jest/fake-timers/27.3.1: - dependencies: - '@jest/types': 27.2.5 + integrity: sha512-7HJ1c6lVNuxrj9PT5AD4yVDDqFt9B0lLsshxZJXShL/LOkLnBO4MoZMH3w1lXQJY3zxk3/l1yg2j7uRKpxF4yw== + /@jest/fake-timers/27.4.0: + dependencies: + '@jest/types': 27.4.0 '@sinonjs/fake-timers': 8.1.0 - '@types/node': 13.1.7 - jest-message-util: 27.3.1 - jest-mock: 27.3.0 - jest-util: 27.3.1 + '@types/node': 16.11.11 + jest-message-util: 27.4.0 + jest-mock: 27.4.0 + jest-util: 27.4.0 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-M3ZFgwwlqJtWZ+QkBG5NmC23A9w+A6ZxNsO5nJxJsKYt4yguBd3i8TpjQz5NfCX91nEve1KqD9RA2Q+Q1uWqoA== - /@jest/globals/27.3.1: - dependencies: - '@jest/environment': 27.3.1 - '@jest/types': 27.2.5 - expect: 27.3.1 + integrity: sha512-oyMxDKlj/ThRms9eS0xFkxmUvjJ8lHsNS4gNErDRFSruTER1/OQi2L5N0sJav+/AcBoY/Pa313CpB6RgdDacGA== + /@jest/globals/27.4.0: + dependencies: + '@jest/environment': 27.4.0 + '@jest/types': 27.4.0 + expect: 27.4.0 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-Q651FWiWQAIFiN+zS51xqhdZ8g9b88nGCobC87argAxA7nMfNQq0Q0i9zTfQYgLa6qFXk2cGANEqfK051CZ8Pg== - /@jest/reporters/27.3.1: + integrity: sha512-jIkd2RSV18wvOqFx5climVkwONuxqNKD8jHMvIumj8+E0qqWqymBcWymidjbxmJ3L3Zr60l0lAJGKw0BstREeQ== + /@jest/reporters/27.4.0: dependencies: '@bcoe/v8-coverage': 0.2.3 - '@jest/console': 27.3.1 - '@jest/test-result': 27.3.1 - '@jest/transform': 27.3.1 - '@jest/types': 27.2.5 - '@types/node': 13.1.7 + '@jest/console': 27.4.0 + '@jest/test-result': 27.4.0 + '@jest/transform': 27.4.0 + '@jest/types': 27.4.0 + '@types/node': 16.11.11 chalk: 4.1.2 - collect-v8-coverage: 1.0.0 + collect-v8-coverage: 1.0.1 exit: 0.1.2 - glob: 7.1.6 + glob: 7.2.0 graceful-fs: 4.2.8 - istanbul-lib-coverage: 3.0.0 + istanbul-lib-coverage: 3.2.0 istanbul-lib-instrument: 4.0.3 istanbul-lib-report: 3.0.0 - istanbul-lib-source-maps: 4.0.0 + istanbul-lib-source-maps: 4.0.1 istanbul-reports: 3.0.5 - jest-haste-map: 27.3.1 - jest-resolve: 27.3.1_jest-resolve@27.3.1 - jest-util: 27.3.1 - jest-worker: 27.3.1 + jest-haste-map: 27.4.0 + jest-resolve: 27.4.0_jest-resolve@27.4.0 + jest-util: 27.4.0 + jest-worker: 27.4.0 slash: 3.0.0 source-map: 0.6.1 string-length: 4.0.2 @@ -429,8 +535,8 @@ node-notifier: optional: true resolution: - integrity: sha512-m2YxPmL9Qn1emFVgZGEiMwDntDxRRQ2D58tiDQlwYTg5GvbFOKseYCcHtn0WsI8CG4vzPglo3nqbOiT8ySBT/w== - /@jest/source-map/27.0.6: + integrity: sha512-QqIdI9WBH5tBwSHZ81FEZkt3h8fvw+zdV0YQrUtdEbJEBGV/AHgRsIP23sdD/ybLfRFpjZJEyWT+7dM4mxnPYQ== + /@jest/source-map/27.4.0: dependencies: callsites: 3.1.0 graceful-fs: 4.2.8 @@ -439,83 +545,83 @@ engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-Fek4mi5KQrqmlY07T23JRi0e7Z9bXTOOD86V/uS0EIW4PClvPDqZOyFlLpNJheS6QI0FNX1CgmPjtJ4EA/2M+g== - /@jest/test-result/27.3.1: - dependencies: - '@jest/console': 27.3.1 - '@jest/types': 27.2.5 - '@types/istanbul-lib-coverage': 2.0.1 - collect-v8-coverage: 1.0.0 + integrity: sha512-Ntjx9jzP26Bvhbm93z/AKcPRj/9wrkI88/gK60glXDx1q+IeI0rf7Lw2c89Ch6ofonB0On/iRDreQuQ6te9pgQ== + /@jest/test-result/27.4.0: + dependencies: + '@jest/console': 27.4.0 + '@jest/types': 27.4.0 + '@types/istanbul-lib-coverage': 2.0.3 + collect-v8-coverage: 1.0.1 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-mLn6Thm+w2yl0opM8J/QnPTqrfS4FoXsXF2WIWJb2O/GBSyResL71BRuMYbYRsGt7ELwS5JGcEcGb52BNrumgg== - /@jest/test-sequencer/27.3.1: - dependencies: - '@jest/test-result': 27.3.1 + integrity: sha512-/RiwMUC9pKK1E85CEflPvb4uE4Zo9JK2Iq3RbkbBoj4FkEASb/Zsqta8WGot2J1GxOk3rqdW513tfSDYQQJVpA== + /@jest/test-sequencer/27.4.0: + dependencies: + '@jest/test-result': 27.4.0 graceful-fs: 4.2.8 - jest-haste-map: 27.3.1 - jest-runtime: 27.3.1 + jest-haste-map: 27.4.0 + jest-runtime: 27.4.0 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-siySLo07IMEdSjA4fqEnxfIX8lB/lWYsBPwNFtkOvsFQvmBrL3yj3k3uFNZv/JDyApTakRpxbKLJ3CT8UGVCrA== - /@jest/transform/27.3.1: - dependencies: - '@babel/core': 7.8.3 - '@jest/types': 27.2.5 - babel-plugin-istanbul: 6.0.0 + integrity: sha512-yKu+sjFgelc5zUf0kcbbsO86qV0NIMPyYFFRaWTaEsq+j7aueX/Zev+NcX+bm7BCwCMWeK7V5AUE6HUOblylHA== + /@jest/transform/27.4.0: + dependencies: + '@babel/core': 7.16.0_@babel+core@7.16.0 + '@jest/types': 27.4.0 + babel-plugin-istanbul: 6.1.1 chalk: 4.1.2 - convert-source-map: 1.7.0 + convert-source-map: 1.8.0 fast-json-stable-stringify: 2.1.0 graceful-fs: 4.2.8 - jest-haste-map: 27.3.1 - jest-regex-util: 27.0.6 - jest-util: 27.3.1 + jest-haste-map: 27.4.0 + jest-regex-util: 27.4.0 + jest-util: 27.4.0 micromatch: 4.0.4 pirates: 4.0.1 slash: 3.0.0 source-map: 0.6.1 - write-file-atomic: 3.0.1 + write-file-atomic: 3.0.3 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-3fSvQ02kuvjOI1C1ssqMVBKJpZf6nwoCiSu00zAKh5nrp3SptNtZy/8s5deayHnqxhjD9CWDJ+yqQwuQ0ZafXQ== - /@jest/types/27.2.5: - dependencies: - '@types/istanbul-lib-coverage': 2.0.1 + integrity: sha512-/8Cb8kEoCtXN/Co5lvv+jG0zv4Uj3ruIvffYUzxNGRGmM7qqaHtOBZ3WbH0T1Nvjya5utTA4YtwbInZVS6Zt9A== + /@jest/types/27.4.0: + dependencies: + '@types/istanbul-lib-coverage': 2.0.3 '@types/istanbul-reports': 3.0.1 - '@types/node': 13.1.7 + '@types/node': 16.11.11 '@types/yargs': 16.0.4 chalk: 4.1.2 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-nmuM4VuDtCZcY+eTpw+0nvstwReMsjPoj7ZR80/BbixulhLaiX+fbv8oeLW8WZlJMcsGQsTmMKT/iTZu1Uy/lQ== + integrity: sha512-jIsLdASXMf8GS7P7oGFGwobNse/6Ewq3GBPHoo0i6XRmja+NrUoDqJm4a1ffF2bHGleKJizxokcp1sCqSktP3g== /@lit/reactive-element/1.0.2: dev: false resolution: integrity: sha512-oz3d3MKjQ2tXynQgyaQaMpGTDNyNDeBdo6dXf1AbjTwhA1IRINHmA7kSaVYv9ttKweNkEoNqp9DqteDdgWzPEg== /@rdfjs/types/1.0.1: dependencies: - '@types/node': 13.1.7 + '@types/node': 16.11.11 dev: false resolution: integrity: sha512-YxVkH0XrCNG3MWeZxfg596GFe+oorTVusmNxRP6ZHTsGczZ8AGvG3UchRNkg3Fy4MyysI7vBAA5YZbESL+VmHQ== - /@rollup/plugin-commonjs/21.0.1_rollup@2.60.0: - dependencies: - '@rollup/pluginutils': 3.1.0_rollup@2.60.0 + /@rollup/plugin-commonjs/21.0.1_rollup@2.60.2: + dependencies: + '@rollup/pluginutils': 3.1.0_rollup@2.60.2 commondir: 1.0.1 estree-walker: 2.0.2 glob: 7.2.0 is-reference: 1.2.1 magic-string: 0.25.7 resolve: 1.20.0 - rollup: 2.60.0 + rollup: 2.60.2 dev: true engines: node: '>= 8.0.0' @@ -523,15 +629,15 @@ rollup: ^2.38.3 resolution: integrity: sha512-EA+g22lbNJ8p5kuZJUYyhhDK7WgJckW5g4pNN7n4mAFUM96VuwUnNT3xr2Db2iCZPI1pJPbGyfT5mS9T1dHfMg== - /@rollup/plugin-node-resolve/13.0.6_rollup@2.60.0: - dependencies: - '@rollup/pluginutils': 3.1.0_rollup@2.60.0 + /@rollup/plugin-node-resolve/13.0.6_rollup@2.60.2: + dependencies: + '@rollup/pluginutils': 3.1.0_rollup@2.60.2 '@types/resolve': 1.17.1 - builtin-modules: 3.1.0 + builtin-modules: 3.2.0 deepmerge: 4.2.2 is-module: 1.0.0 resolve: 1.20.0 - rollup: 2.60.0 + rollup: 2.60.2 dev: true engines: node: '>= 10.0.0' @@ -539,23 +645,23 @@ rollup: ^2.42.0 resolution: integrity: sha512-sFsPDMPd4gMqnh2gS0uIxELnoRUp5kBl5knxD2EO0778G1oOJv4G1vyT2cpWz75OU2jDVcXhjVUuTAczGyFNKA== - /@rollup/plugin-replace/3.0.0_rollup@2.60.0: - dependencies: - '@rollup/pluginutils': 3.1.0_rollup@2.60.0 + /@rollup/plugin-replace/3.0.0_rollup@2.60.2: + dependencies: + '@rollup/pluginutils': 3.1.0_rollup@2.60.2 magic-string: 0.25.7 - rollup: 2.60.0 + rollup: 2.60.2 dev: true peerDependencies: rollup: ^1.20.0 || ^2.0.0 resolution: integrity: sha512-3c7JCbMuYXM4PbPWT4+m/4Y6U60SgsnDT/cCyAyUKwFHg7pTSfsSQzIpETha3a3ig6OdOKzZz87D9ZXIK3qsDg== - /@rollup/plugin-typescript/8.3.0_15dfac413fd0241781a9fd89f988e2e5: - dependencies: - '@rollup/pluginutils': 3.1.0_rollup@2.60.0 + /@rollup/plugin-typescript/8.3.0_cf49768e670184c7e0e13e8a66db2d3a: + dependencies: + '@rollup/pluginutils': 3.1.0_rollup@2.60.2 resolve: 1.20.0 - rollup: 2.60.0 + rollup: 2.60.2 tslib: 2.3.1 - typescript: 4.4.4 + typescript: 4.5.2 dev: true engines: node: '>=8.0.0' @@ -565,12 +671,12 @@ typescript: '>=3.7.0' resolution: integrity: sha512-I5FpSvLbtAdwJ+naznv+B4sjXZUcIvLLceYpITAn7wAP8W0wqc5noLdGIp9HGVntNhRWXctwPYrSSFQxtl0FPA== - /@rollup/pluginutils/3.1.0_rollup@2.60.0: + /@rollup/pluginutils/3.1.0_rollup@2.60.2: dependencies: '@types/estree': 0.0.39 estree-walker: 1.0.1 picomatch: 2.3.0 - rollup: 2.60.0 + rollup: 2.60.2 dev: true engines: node: '>= 8.0.0' @@ -578,15 +684,15 @@ rollup: ^1.20.0||^2.0.0 resolution: integrity: sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg== - /@sinonjs/commons/1.7.0: + /@sinonjs/commons/1.8.3: dependencies: type-detect: 4.0.8 dev: true resolution: - integrity: sha512-qbk9AP+cZUsKdW1GJsBpxPKFmCJ0T8swwzVje3qFd+AkQb74Q/tiuzrdfFg8AD2g5HH/XbE/I8Uc1KYHVYWfhg== + integrity: sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ== /@sinonjs/fake-timers/8.1.0: dependencies: - '@sinonjs/commons': 1.7.0 + '@sinonjs/commons': 1.8.3 dev: true resolution: integrity: sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg== @@ -604,37 +710,33 @@ integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA== /@types/babel__core/7.1.16: dependencies: - '@babel/parser': 7.8.3 - '@babel/types': 7.8.3 - '@types/babel__generator': 7.6.1 - '@types/babel__template': 7.0.2 - '@types/babel__traverse': 7.0.8 + '@babel/parser': 7.16.4 + '@babel/types': 7.16.0 + '@types/babel__generator': 7.6.3 + '@types/babel__template': 7.4.1 + '@types/babel__traverse': 7.14.2 dev: true resolution: integrity: sha512-EAEHtisTMM+KaKwfWdC3oyllIqswlznXCIVCt7/oRNrh+DhgT4UEBNC/jlADNjvw7UnfbcdkGQcPVZ1xYiLcrQ== - /@types/babel__generator/7.6.1: - dependencies: - '@babel/types': 7.8.3 - dev: true - resolution: - integrity: sha512-bBKm+2VPJcMRVwNhxKu8W+5/zT7pwNEqeokFOmbvVSqGzFneNxYcEBro9Ac7/N9tlsaPYnZLK8J1LWKkMsLAew== - /@types/babel__template/7.0.2: - dependencies: - '@babel/parser': 7.8.3 - '@babel/types': 7.8.3 - dev: true - resolution: - integrity: sha512-/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg== - /@types/babel__traverse/7.0.8: - dependencies: - '@babel/types': 7.8.3 - dev: true - resolution: - integrity: sha512-yGeB2dHEdvxjP0y4UbRtQaSkXJ9649fYCmIdRoul5kfAoGCwxuCbMhag0k3RPfnuh9kPGm8x89btcfDEXdVWGw== - /@types/color-name/1.1.1: - dev: true - resolution: - integrity: sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ== + /@types/babel__generator/7.6.3: + dependencies: + '@babel/types': 7.16.0 + dev: true + resolution: + integrity: sha512-/GWCmzJWqV7diQW54smJZzWbSFf4QYtF71WCKhcx6Ru/tFyQIY2eiiITcCAeuPbNSvT9YCGkVMqqvSk2Z0mXiA== + /@types/babel__template/7.4.1: + dependencies: + '@babel/parser': 7.16.4 + '@babel/types': 7.16.0 + dev: true + resolution: + integrity: sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g== + /@types/babel__traverse/7.14.2: + dependencies: + '@babel/types': 7.16.0 + dev: true + resolution: + integrity: sha512-K2waXdXBi2302XUdcHcR1jCeU0LL4TD9HRs/gk0N2Xvrht+G/BfJa4QObBQZfhMdxiCpV3COl5Nfq4uKTeTnJA== /@types/estree/0.0.39: dev: true resolution: @@ -645,60 +747,72 @@ integrity: sha512-C6N5s2ZFtuZRj54k2/zyRhNDjJwwcViAM3Nbm8zjBpbqAdZ00mr0CFxvSKeO8Y/e03WVFLpQMdHYVfUd6SB+Hw== /@types/graceful-fs/4.1.5: dependencies: - '@types/node': 13.1.7 + '@types/node': 16.11.11 dev: true resolution: integrity: sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw== - /@types/istanbul-lib-coverage/2.0.1: - dev: true - resolution: - integrity: sha512-hRJD2ahnnpLgsj6KWMYSrmXkM3rm2Dl1qkx6IOFD5FnuNPXJIG5L0dhgKXCYTRMGzU4n0wImQ/xfmRc4POUFlg== - /@types/istanbul-lib-report/1.1.1: - dependencies: - '@types/istanbul-lib-coverage': 2.0.1 - dev: true - resolution: - integrity: sha512-3BUTyMzbZa2DtDI2BkERNC6jJw2Mr2Y0oGI7mRxYNBPxppbtEK1F66u3bKwU2g+wxwWI7PAoRpJnOY1grJqzHg== + /@types/istanbul-lib-coverage/2.0.3: + dev: true + resolution: + integrity: sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw== + /@types/istanbul-lib-report/3.0.0: + dependencies: + '@types/istanbul-lib-coverage': 2.0.3 + dev: true + resolution: + integrity: sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg== /@types/istanbul-reports/3.0.1: dependencies: - '@types/istanbul-lib-report': 1.1.1 + '@types/istanbul-lib-report': 3.0.0 dev: true resolution: integrity: sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw== - /@types/jest/27.0.2: - dependencies: - jest-diff: 27.3.1 - pretty-format: 27.3.1 - dev: true - resolution: - integrity: sha512-4dRxkS/AFX0c5XW6IPMNOydLn2tEhNhJV7DnYK+0bjoJZ+QTmfucBlihX7aoEsh/ocYtkLC73UbnBXBXIxsULA== + /@types/jest/27.0.3: + dependencies: + jest-diff: 27.4.0 + pretty-format: 27.4.0 + dev: true + resolution: + integrity: sha512-cmmwv9t7gBYt7hNKH5Spu7Kuu/DotGa+Ff+JGRKZ4db5eh8PnKS4LuebJ3YLUoyOyIHraTGyULn23YtEAm0VSg== + /@types/jsdom/16.2.13: + dependencies: + '@types/node': 16.11.11 + '@types/parse5': 6.0.3 + '@types/tough-cookie': 4.0.1 + dev: true + resolution: + integrity: sha512-8JQCjdeAidptSsOcRWk2iTm9wCcwn9l+kRG6k5bzUacrnm1ezV4forq0kWjUih/tumAeoG+OspOvQEbbRucBTw== /@types/jsonld/1.5.6: dev: false resolution: integrity: sha512-OUcfMjRie5IOrJulUQwVNvV57SOdKcTfBj3pjXNxzXqeOIrY2aGDNGW/Tlp83EQPkz4tCE6YWVrGuc/ZeaAQGg== /@types/n3/1.10.4: dependencies: - '@types/node': 13.1.7 + '@types/node': 16.11.11 rdf-js: 4.0.2 dev: false resolution: integrity: sha512-FfRTwcbXcScVHuAjIASveRWL6Fi6fPALl1Ge8tMESYLqU7R42LJvtdBpUi+f9YK0oQPqIN+zFFgMDFJfLMx0bg== - /@types/node/13.1.7: - resolution: - integrity: sha512-HU0q9GXazqiKwviVxg9SI/+t/nAsGkvLDkIdxz+ObejG2nX6Si00TeLqHMoS+a/1tjH7a8YpKVQwtgHuMQsldg== + /@types/node/16.11.11: + resolution: + integrity: sha512-KB0sixD67CeecHC33MYn+eYARkqTheIRNuu97y2XMjR7Wu3XibO1vaY6VBV6O/a89SPI81cEUIYT87UqUWlZNw== + /@types/parse5/6.0.3: + dev: true + resolution: + integrity: sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g== /@types/prettier/2.4.2: dev: true resolution: integrity: sha512-ekoj4qOQYp7CvjX8ZDBgN86w3MqQhLE1hczEJbEIjgFEumDy+na/4AJAbLXfgEWFNB2pKadM5rPFtuSGMWK7xA== /@types/resolve/1.17.1: dependencies: - '@types/node': 13.1.7 + '@types/node': 16.11.11 dev: true resolution: integrity: sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw== /@types/rollup-plugin-postcss/3.1.4: dependencies: - rollup-plugin-postcss: 4.0.1 + rollup-plugin-postcss: 4.0.2 deprecated: 'This is a stub types definition. rollup-plugin-postcss provides its own type definitions, so you do not need this installed.' dev: true resolution: @@ -707,17 +821,21 @@ dev: true resolution: integrity: sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw== + /@types/tough-cookie/4.0.1: + dev: true + resolution: + integrity: sha512-Y0K95ThC3esLEYD6ZuqNek29lNX2EM1qxV8y2FTLUB0ff5wWrk7az+mLrnNFUnaXcgKye22+sFBRXOgpPILZNg== /@types/trusted-types/2.0.2: dev: false resolution: integrity: sha512-F5DIZ36YVLE+PN+Zwws4kJogq47hNgX3Nx6WyDJ3kcplxyke3XIzB8uK5n/Lpm1HBsbGzd6nmGehL8cPekP+Tg== - /@types/yargs-parser/15.0.0: - dev: true - resolution: - integrity: sha512-FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw== + /@types/yargs-parser/20.2.1: + dev: true + resolution: + integrity: sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw== /@types/yargs/16.0.4: dependencies: - '@types/yargs-parser': 15.0.0 + '@types/yargs-parser': 20.2.1 dev: true resolution: integrity: sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw== @@ -756,31 +874,18 @@ integrity: sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg== /acorn-node/1.8.2: dependencies: - acorn: 7.1.0 - acorn-walk: 7.0.0 + acorn: 7.4.1 + acorn-walk: 7.2.0 xtend: 4.0.2 dev: true resolution: integrity: sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A== - /acorn-walk/7.0.0: - dev: true - engines: - node: '>=0.4.0' - resolution: - integrity: sha512-7Bv1We7ZGuU79zZbb6rRqcpxo3OY+zrdtloZWoyD8fmGX+FeXRjE+iuGkZjSXLVovLzrsvMGMy0EkwA0E0umxg== /acorn-walk/7.2.0: dev: true engines: node: '>=0.4.0' resolution: integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== - /acorn/5.7.3: - dev: true - engines: - node: '>=0.4.0' - hasBin: true - resolution: - integrity: sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw== /acorn/5.7.4: dev: true engines: @@ -788,13 +893,6 @@ hasBin: true resolution: integrity: sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg== - /acorn/7.1.0: - dev: true - engines: - node: '>=0.4.0' - hasBin: true - resolution: - integrity: sha512-kL5CuoXA/dgxlBbVrflsflzQ3PAas7RYZB52NOm/6839iVYJgKMJ3cQJD+t2i5+qFa8h3MDpEOJiS64E8JLnSQ== /acorn/7.4.1: dev: true engines: @@ -802,16 +900,16 @@ hasBin: true resolution: integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== - /acorn/8.5.0: + /acorn/8.6.0: dev: true engines: node: '>=0.4.0' hasBin: true resolution: - integrity: sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q== + integrity: sha512-U1riIR+lBSNi3IbxtaHOIKdH8sLFv3NYfNv8sg7ZsNhcfl4HF2++BfqqrNAxoCLQW1iiylOj76ecnaUxz+z9yw== /agent-base/6.0.2: dependencies: - debug: 4.1.1 + debug: 4.3.3 dev: true engines: node: '>= 6.0.0' @@ -821,14 +919,14 @@ dev: true resolution: integrity: sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM= - /ansi-escapes/4.3.0: - dependencies: - type-fest: 0.8.1 + /ansi-escapes/4.3.2: + dependencies: + type-fest: 0.21.3 dev: true engines: node: '>=8' resolution: - integrity: sha512-EiYhwo0v255HUL6eDyuLrXEkTi7WwVCLAw+SeOQ7M7qdun1z1pum4DEm/nuqIVbPvi9RPPc9k9LbyBv6H0DwVg== + integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== /ansi-regex/2.1.1: dev: true engines: @@ -855,15 +953,14 @@ node: '>=4' resolution: integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== - /ansi-styles/4.2.1: - dependencies: - '@types/color-name': 1.1.1 + /ansi-styles/4.3.0: + dependencies: color-convert: 2.0.1 dev: true engines: node: '>=8' resolution: - integrity: sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA== + integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== /ansi-styles/5.2.0: dev: true engines: @@ -878,7 +975,7 @@ optional: true resolution: integrity: sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA== - /anymatch/3.1.1: + /anymatch/3.1.2: dependencies: normalize-path: 3.0.0 picomatch: 2.3.0 @@ -886,7 +983,7 @@ engines: node: '>= 8' resolution: - integrity: sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg== + integrity: sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg== /argparse/1.0.10: dependencies: sprintf-js: 1.0.3 @@ -937,14 +1034,15 @@ optional: true resolution: integrity: sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= - /asn1.js/4.10.1: - dependencies: - bn.js: 4.11.8 + /asn1.js/5.4.1: + dependencies: + bn.js: 4.12.0 inherits: 2.0.4 minimalistic-assert: 1.0.1 - dev: true - resolution: - integrity: sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw== + safer-buffer: 2.1.2 + dev: true + resolution: + integrity: sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA== /assert/1.5.0: dependencies: object-assign: 4.1.1 @@ -982,10 +1080,10 @@ babel-register: 6.26.0 babel-runtime: 6.26.0 commander: 2.20.3 - convert-source-map: 1.7.0 + convert-source-map: 1.8.0 fs-readdir-recursive: 1.1.0 - glob: 7.1.6 - lodash: 4.17.15 + glob: 7.2.0 + lodash: 4.17.21 output-file-sync: 1.1.2 path-is-absolute: 1.0.1 slash: 1.0.0 @@ -1017,10 +1115,10 @@ babel-traverse: 6.26.0 babel-types: 6.26.0 babylon: 6.18.0 - convert-source-map: 1.7.0 + convert-source-map: 1.8.0 debug: 2.6.9 json5: 0.5.1 - lodash: 4.17.15 + lodash: 4.17.21 minimatch: 3.0.4 path-is-absolute: 1.0.1 private: 0.1.8 @@ -1036,7 +1134,7 @@ babel-types: 6.26.0 detect-indent: 4.0.0 jsesc: 1.3.0 - lodash: 4.17.15 + lodash: 4.17.21 source-map: 0.5.7 trim-right: 1.0.1 dev: true @@ -1072,7 +1170,7 @@ babel-helper-function-name: 6.24.1 babel-runtime: 6.26.0 babel-types: 6.26.0 - lodash: 4.17.15 + lodash: 4.17.21 dev: true resolution: integrity: sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8= @@ -1128,7 +1226,7 @@ dependencies: babel-runtime: 6.26.0 babel-types: 6.26.0 - lodash: 4.17.15 + lodash: 4.17.21 dev: true resolution: integrity: sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI= @@ -1160,14 +1258,14 @@ dev: true resolution: integrity: sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI= - /babel-jest/27.3.1_@babel+core@7.8.3: - dependencies: - '@babel/core': 7.8.3 - '@jest/transform': 27.3.1 - '@jest/types': 27.2.5 + /babel-jest/27.4.0_@babel+core@7.16.0: + dependencies: + '@babel/core': 7.16.0_@babel+core@7.16.0 + '@jest/transform': 27.4.0 + '@jest/types': 27.4.0 '@types/babel__core': 7.1.16 - babel-plugin-istanbul: 6.0.0 - babel-preset-jest: 27.2.0_@babel+core@7.8.3 + babel-plugin-istanbul: 6.1.1 + babel-preset-jest: 27.4.0_@babel+core@7.16.0 chalk: 4.1.2 graceful-fs: 4.2.8 slash: 3.0.0 @@ -1177,7 +1275,7 @@ peerDependencies: '@babel/core': ^7.8.0 resolution: - integrity: sha512-SjIF8hh/ir0peae2D6S6ZKRhUy7q/DnpH7k/V6fT4Bgs/LXXUztOpX4G2tCgq8mLo5HA9mN6NmlFMeYtKmIsTQ== + integrity: sha512-4855S+YT4Hx0OiXFDBOWhrMj1Y9zYE7StlchuZtr1vbo1LEDBIkt8U6+7cse8jkpJSV98w3nBVDrPgol5Ab/cQ== /babel-messages/6.23.0: dependencies: babel-runtime: 6.26.0 @@ -1190,34 +1288,34 @@ dev: true resolution: integrity: sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o= - /babel-plugin-istanbul/6.0.0: - dependencies: - '@babel/helper-plugin-utils': 7.8.3 - '@istanbuljs/load-nyc-config': 1.0.0 - '@istanbuljs/schema': 0.1.2 - istanbul-lib-instrument: 4.0.3 + /babel-plugin-istanbul/6.1.1: + dependencies: + '@babel/helper-plugin-utils': 7.14.5 + '@istanbuljs/load-nyc-config': 1.1.0 + '@istanbuljs/schema': 0.1.3 + istanbul-lib-instrument: 5.1.0 test-exclude: 6.0.0 dev: true engines: node: '>=8' resolution: - integrity: sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ== - /babel-plugin-jest-hoist/27.2.0: - dependencies: - '@babel/template': 7.8.3 - '@babel/types': 7.8.3 + integrity: sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA== + /babel-plugin-jest-hoist/27.4.0: + dependencies: + '@babel/template': 7.16.0 + '@babel/types': 7.16.0 '@types/babel__core': 7.1.16 - '@types/babel__traverse': 7.0.8 + '@types/babel__traverse': 7.14.2 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-TOux9khNKdi64mW+0OIhcmbAn75tTlzKhxmiNXevQaPbrBYK7YKjP1jl6NHTJ6XR5UgUrJbCnWlKVnJn29dfjw== + integrity: sha512-Jcu7qS4OX5kTWBc45Hz7BMmgXuJqRnhatqpUhnzGC3OBYpOmf2tv6jFNwZpwM7wU7MUuv2r9IPS/ZlYOuburVw== /babel-plugin-module-resolver/2.7.1: dependencies: find-babel-config: 1.2.0 - glob: 7.1.6 - resolve: 1.14.2 + glob: 7.2.0 + resolve: 1.20.0 dev: true resolution: integrity: sha1-GL48Qt31n3pFbJ4FEs2ROU9uS+E= @@ -1337,7 +1435,7 @@ babel-template: 6.26.0 babel-traverse: 6.26.0 babel-types: 6.26.0 - lodash: 4.17.15 + lodash: 4.17.21 dev: true resolution: integrity: sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8= @@ -1532,26 +1630,26 @@ /babel-polyfill/6.26.0: dependencies: babel-runtime: 6.26.0 - core-js: 2.6.11 + core-js: 2.6.12 regenerator-runtime: 0.10.5 dev: true resolution: integrity: sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM= - /babel-preset-current-node-syntax/1.0.1_@babel+core@7.8.3: - dependencies: - '@babel/core': 7.8.3 - '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.8.3 - '@babel/plugin-syntax-bigint': 7.8.3_@babel+core@7.8.3 - '@babel/plugin-syntax-class-properties': 7.12.13_@babel+core@7.8.3 - '@babel/plugin-syntax-import-meta': 7.10.4_@babel+core@7.8.3 - '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.8.3 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.8.3 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.8.3 - '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.8.3 - '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.8.3 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.8.3 - '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.8.3 - '@babel/plugin-syntax-top-level-await': 7.14.5_@babel+core@7.8.3 + /babel-preset-current-node-syntax/1.0.1_@babel+core@7.16.0: + dependencies: + '@babel/core': 7.16.0_@babel+core@7.16.0 + '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.16.0 + '@babel/plugin-syntax-bigint': 7.8.3_@babel+core@7.16.0 + '@babel/plugin-syntax-class-properties': 7.12.13_@babel+core@7.16.0 + '@babel/plugin-syntax-import-meta': 7.10.4_@babel+core@7.16.0 + '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.16.0 + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.16.0 + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.16.0 + '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.16.0 + '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.16.0 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.16.0 + '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.16.0 + '@babel/plugin-syntax-top-level-await': 7.14.5_@babel+core@7.16.0 dev: true peerDependencies: '@babel/core': ^7.0.0 @@ -1602,18 +1700,18 @@ dev: true resolution: integrity: sha1-WXvq37n38gi8/YoS6bKym4svFNE= - /babel-preset-jest/27.2.0_@babel+core@7.8.3: - dependencies: - '@babel/core': 7.8.3 - babel-plugin-jest-hoist: 27.2.0 - babel-preset-current-node-syntax: 1.0.1_@babel+core@7.8.3 + /babel-preset-jest/27.4.0_@babel+core@7.16.0: + dependencies: + '@babel/core': 7.16.0_@babel+core@7.16.0 + babel-plugin-jest-hoist: 27.4.0 + babel-preset-current-node-syntax: 1.0.1_@babel+core@7.16.0 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 peerDependencies: '@babel/core': ^7.0.0 resolution: - integrity: sha512-z7MgQ3peBwN5L5aCqBKnF6iqdlvZvFUQynEhu0J+X9nHLU72jO3iY331lcYrg+AssJ8q7xsv5/3AICzVmJ/wvg== + integrity: sha512-NK4jGYpnBvNxcGo7/ZpZJr51jCGT+3bwwpVIDY2oNfTxJJldRtB4VAcYdgp1loDE50ODuTu+yBjpMAswv5tlpg== /babel-preset-latest/6.24.1: dependencies: babel-preset-es2015: 6.24.1 @@ -1662,17 +1760,17 @@ dependencies: babel-core: 6.26.3 babel-runtime: 6.26.0 - core-js: 2.6.11 + core-js: 2.6.12 home-or-tmp: 2.0.0 - lodash: 4.17.15 - mkdirp: 0.5.1 + lodash: 4.17.21 + mkdirp: 0.5.5 source-map-support: 0.4.18 dev: true resolution: integrity: sha1-btAhFz4vy0htestFxgCahW9kcHE= /babel-runtime/6.26.0: dependencies: - core-js: 2.6.11 + core-js: 2.6.12 regenerator-runtime: 0.11.1 dev: true resolution: @@ -1683,7 +1781,7 @@ babel-traverse: 6.26.0 babel-types: 6.26.0 babylon: 6.18.0 - lodash: 4.17.15 + lodash: 4.17.21 dev: true resolution: integrity: sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI= @@ -1697,7 +1795,7 @@ debug: 2.6.9 globals: 9.18.0 invariant: 2.2.4 - lodash: 4.17.15 + lodash: 4.17.21 dev: true resolution: integrity: sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4= @@ -1705,7 +1803,7 @@ dependencies: babel-runtime: 6.26.0 esutils: 2.0.3 - lodash: 4.17.15 + lodash: 4.17.21 to-fast-properties: 1.0.3 dev: true resolution: @@ -1734,10 +1832,10 @@ optional: true resolution: integrity: sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== - /base64-js/1.3.1: - dev: true - resolution: - integrity: sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g== + /base64-js/1.5.1: + dev: true + resolution: + integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== /big.js/5.2.2: dev: true resolution: @@ -1762,10 +1860,14 @@ dev: true resolution: integrity: sha1-yba8oI0bwuoA/Ir7Txpf0eHGbk4= - /bn.js/4.11.8: - dev: true - resolution: - integrity: sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA== + /bn.js/4.12.0: + dev: true + resolution: + integrity: sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA== + /bn.js/5.2.0: + dev: true + resolution: + integrity: sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw== /boolbase/1.0.0: dev: true resolution: @@ -1781,7 +1883,7 @@ dependencies: expand-range: 1.8.2 preserve: 0.2.0 - repeat-element: 1.1.3 + repeat-element: 1.1.4 dev: true engines: node: '>=0.10.0' @@ -1795,7 +1897,7 @@ extend-shallow: 2.0.1 fill-range: 4.0.0 isobject: 3.0.1 - repeat-element: 1.1.3 + repeat-element: 1.1.4 snapdragon: 0.8.2 snapdragon-node: 2.1.1 split-string: 3.1.0 @@ -1823,7 +1925,7 @@ JSONStream: 1.3.5 combine-source-map: 0.8.0 defined: 1.0.0 - safe-buffer: 5.2.0 + safe-buffer: 5.2.1 through2: 2.0.5 umd: 3.0.3 dev: true @@ -1847,7 +1949,7 @@ create-hash: 1.2.0 evp_bytestokey: 1.0.3 inherits: 2.0.4 - safe-buffer: 5.2.0 + safe-buffer: 5.2.1 dev: true resolution: integrity: sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA== @@ -1864,7 +1966,7 @@ cipher-base: 1.0.4 des.js: 1.0.1 inherits: 2.0.4 - safe-buffer: 5.2.0 + safe-buffer: 5.2.1 dev: true resolution: integrity: sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A== @@ -1876,25 +1978,27 @@ dev: true resolution: integrity: sha1-8HWqinKdTRcW0GZiDjhvzBMRqW8= - /browserify-rsa/4.0.1: - dependencies: - bn.js: 4.11.8 + /browserify-rsa/4.1.0: + dependencies: + bn.js: 5.2.0 randombytes: 2.1.0 dev: true resolution: - integrity: sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ= - /browserify-sign/4.0.4: - dependencies: - bn.js: 4.11.8 - browserify-rsa: 4.0.1 + integrity: sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog== + /browserify-sign/4.2.1: + dependencies: + bn.js: 5.2.0 + browserify-rsa: 4.1.0 create-hash: 1.2.0 create-hmac: 1.1.7 - elliptic: 6.5.2 + elliptic: 6.5.4 inherits: 2.0.4 - parse-asn1: 5.1.5 - dev: true - resolution: - integrity: sha1-qk62jl17ZYuqa/alfmMMvXqT0pg= + parse-asn1: 5.1.6 + readable-stream: 3.6.0 + safe-buffer: 5.2.1 + dev: true + resolution: + integrity: sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg== /browserify-zlib/0.1.4: dependencies: pako: 0.2.9 @@ -1919,12 +2023,12 @@ domain-browser: 1.1.7 duplexer2: 0.1.4 events: 1.1.1 - glob: 7.1.6 + glob: 7.2.0 has: 1.0.3 htmlescape: 1.1.1 https-browserify: 0.0.1 inherits: 2.0.4 - insert-module-globals: 7.2.0 + insert-module-globals: 7.2.1 labeled-stream-splicer: 2.0.2 module-deps: 4.1.1 os-browserify: 0.1.2 @@ -1935,9 +2039,9 @@ querystring-es3: 0.2.1 read-only-stream: 2.0.0 readable-stream: 2.3.7 - resolve: 1.14.2 + resolve: 1.20.0 shasum: 1.0.2 - shell-quote: 1.7.2 + shell-quote: 1.7.3 stream-browserify: 2.0.2 stream-http: 2.8.3 string_decoder: 0.10.31 @@ -1956,8 +2060,8 @@ integrity: sha1-tanJAgJD8McORnW+yCI7xifkFc4= /browserslist/4.18.1: dependencies: - caniuse-lite: 1.0.30001282 - electron-to-chromium: 1.3.900 + caniuse-lite: 1.0.30001283 + electron-to-chromium: 1.4.5 escalade: 3.1.1 node-releases: 2.0.1 picocolors: 1.0.0 @@ -1985,28 +2089,28 @@ dev: true resolution: integrity: sha1-8mNHuC33b9N+GLy1KIxJcM/VxAQ= - /buffer-from/1.1.1: - dev: true - resolution: - integrity: sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== + /buffer-from/1.1.2: + dev: true + resolution: + integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== /buffer-xor/1.0.3: dev: true resolution: integrity: sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk= /buffer/4.9.2: dependencies: - base64-js: 1.3.1 - ieee754: 1.1.13 + base64-js: 1.5.1 + ieee754: 1.2.1 isarray: 1.0.0 dev: true resolution: integrity: sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg== - /builtin-modules/3.1.0: + /builtin-modules/3.2.0: dev: true engines: node: '>=6' resolution: - integrity: sha512-k0KL0aWZuBt2lrxrcASWDfwOLMnodeQjodT/1SxEQAXsHANgo6ZC/VEaSEHCXt7aSTZ4/4H5LKa+tBXmW7Vtvw== + integrity: sha512-lGzLKcioL90C7wMczpkY0n/oART3MbBa8R9OFGE1rJxoVI86u4WAGfEk8Wjv10eKSyTHVGkSo3bvBylCEtk7LA== /builtin-status-codes/3.0.0: dev: true resolution: @@ -2053,24 +2157,20 @@ /caniuse-api/3.0.0: dependencies: browserslist: 4.18.1 - caniuse-lite: 1.0.30001021 + caniuse-lite: 1.0.30001283 lodash.memoize: 4.1.2 lodash.uniq: 4.5.0 dev: true resolution: integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw== - /caniuse-lite/1.0.30001021: - dev: true - resolution: - integrity: sha512-wuMhT7/hwkgd8gldgp2jcrUjOU9RXJ4XxGumQeOsUr91l3WwmM68Cpa/ymCnWEDqakwFXhuDQbaKNHXBPgeE9g== - /caniuse-lite/1.0.30001282: - dev: true - resolution: - integrity: sha512-YhF/hG6nqBEllymSIjLtR2iWDDnChvhnVJqp+vloyt2tEHFG1yBR+ac2B/rOw0qOK0m0lEXU2dv4E/sMk5P9Kg== - /canonicalize/1.0.1: + /caniuse-lite/1.0.30001283: + dev: true + resolution: + integrity: sha512-9RoKo841j1GQFSJz/nCXOj0sD7tHBtlowjYlrqIUS812x9/emfBLBt6IyMz1zIaYc/eRL8Cs6HPUVi2Hzq4sIg== + /canonicalize/1.0.8: dev: false resolution: - integrity: sha512-N3cmB3QLhS5TJ5smKFf1w42rJXWe6C1qP01z4dxJiI5v269buii4fLHWETDyf7yEd0azGLNC63VxNMiPd2u0Cg== + integrity: sha512-0CNTVCLZggSh7bc5VkX5WWPWO+cyZbNd07IHIsSXLia/eAq+r836hgk+8BKoEh7949Mda87VUOitx5OddVj64A== /chalk/1.1.3: dependencies: ansi-styles: 2.2.1 @@ -2095,8 +2195,8 @@ integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== /chalk/4.1.2: dependencies: - ansi-styles: 4.2.1 - supports-color: 7.1.0 + ansi-styles: 4.3.0 + supports-color: 7.2.0 dev: true engines: node: '>=10' @@ -2118,20 +2218,21 @@ is-glob: 2.0.1 path-is-absolute: 1.0.1 readdirp: 2.2.1 + deprecated: Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies. dev: true optional: true optionalDependencies: - fsevents: 1.2.11 + fsevents: 1.2.13 resolution: integrity: sha1-eY5ol3gVHIB2tLNg5e3SjNortGg= - /ci-info/3.2.0: - dev: true - resolution: - integrity: sha512-dVqRX7fLUm8J6FgHJ418XuIgDLZDkYcDFTeL6TA2gt5WlIZUQrrH6EZrNClwT/H0FateUsZkGIOPRrLbP+PR9A== + /ci-info/3.3.0: + dev: true + resolution: + integrity: sha512-riT/3vI5YpVH6/qomlDnJow6TBee2PBKSEpx3O32EGPYbWGIRsIlGRms3Sm74wYE1JMo8RnO04Hb12+v1J5ICw== /cipher-base/1.0.4: dependencies: inherits: 2.0.4 - safe-buffer: 5.2.0 + safe-buffer: 5.2.1 dev: true resolution: integrity: sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q== @@ -2153,8 +2254,8 @@ integrity: sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== /cliui/7.0.4: dependencies: - string-width: 4.2.0 - strip-ansi: 6.0.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 wrap-ansi: 7.0.0 dev: true resolution: @@ -2170,10 +2271,10 @@ node: '>= 0.12.0' resolution: integrity: sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= - /collect-v8-coverage/1.0.0: - dev: true - resolution: - integrity: sha512-VKIhJgvk8E1W28m5avZ2Gv2Ruv5YiF56ug2oclvaG9md69BuZImMG2sk9g7QNKLUbtYAKQjXjYxbYZVUlMMKmQ== + /collect-v8-coverage/1.0.1: + dev: true + resolution: + integrity: sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg== /collection-visit/1.0.0: dependencies: map-visit: 1.0.0 @@ -2262,7 +2363,7 @@ integrity: sha1-cIl4Yk2FavQaWnQd790mHadSwmY= /concat-stream/1.6.2: dependencies: - buffer-from: 1.1.1 + buffer-from: 1.1.2 inherits: 2.0.4 readable-stream: 2.3.7 typedarray: 0.0.6 @@ -2289,12 +2390,12 @@ dev: true resolution: integrity: sha1-SCnId+n+SbMWHzvzZziI4gRpmGA= - /convert-source-map/1.7.0: + /convert-source-map/1.8.0: dependencies: safe-buffer: 5.1.2 dev: true resolution: - integrity: sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA== + integrity: sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA== /copy-descriptor/0.1.1: dev: true engines: @@ -2302,23 +2403,23 @@ optional: true resolution: integrity: sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= - /core-js/2.6.11: - deprecated: 'core-js@<3 is no longer maintained and not recommended for usage due to the number of issues. Please, upgrade your dependencies to the actual version of core-js@3.' + /core-js/2.6.12: + deprecated: 'core-js@<3.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Please, upgrade your dependencies to the actual version of core-js.' dev: true requiresBuild: true resolution: - integrity: sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg== - /core-util-is/1.0.2: - dev: true - resolution: - integrity: sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= - /create-ecdh/4.0.3: - dependencies: - bn.js: 4.11.8 - elliptic: 6.5.2 - dev: true - resolution: - integrity: sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw== + integrity: sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ== + /core-util-is/1.0.3: + dev: true + resolution: + integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== + /create-ecdh/4.0.4: + dependencies: + bn.js: 4.12.0 + elliptic: 6.5.4 + dev: true + resolution: + integrity: sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A== /create-hash/1.2.0: dependencies: cipher-base: 1.0.4 @@ -2335,7 +2436,7 @@ create-hash: 1.2.0 inherits: 2.0.4 ripemd160: 2.0.2 - safe-buffer: 5.2.0 + safe-buffer: 5.2.1 sha.js: 2.4.11 dev: true resolution: @@ -2353,13 +2454,13 @@ /crypto-browserify/3.12.0: dependencies: browserify-cipher: 1.0.1 - browserify-sign: 4.0.4 - create-ecdh: 4.0.3 + browserify-sign: 4.2.1 + create-ecdh: 4.0.4 create-hash: 1.2.0 create-hmac: 1.1.7 diffie-hellman: 5.0.3 inherits: 2.0.4 - pbkdf2: 3.0.17 + pbkdf2: 3.1.2 public-encrypt: 4.0.3 randombytes: 2.1.0 randomfill: 1.0.4 @@ -2416,7 +2517,7 @@ hasBin: true resolution: integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== - /cssnano-preset-default/5.1.7: + /cssnano-preset-default/5.1.8: dependencies: css-declaration-sorter: 6.1.3 cssnano-utils: 2.0.1 @@ -2443,7 +2544,7 @@ postcss-normalize-url: 5.0.3 postcss-normalize-whitespace: 5.0.1 postcss-ordered-values: 5.0.2 - postcss-reduce-initial: 5.0.1 + postcss-reduce-initial: 5.0.2 postcss-reduce-transforms: 5.0.1 postcss-svgo: 5.0.3 postcss-unique-selectors: 5.0.2 @@ -2453,7 +2554,7 @@ peerDependencies: postcss: ^8.2.15 resolution: - integrity: sha512-bWDjtTY+BOqrqBtsSQIbN0RLGD2Yr2CnecpP0ydHNafh9ZUEre8c8VYTaH9FEbyOt0eIfEUAYYk5zj92ioO8LA== + integrity: sha512-zWMlP0+AMPBVE852SqTrP0DnhTcTA2C1wAF92TKZ3Va+aUVqLIhkqKlnJIXXdqXD7RN+S1ujuWmNpvrJBiM/vg== /cssnano-utils/2.0.1: dev: true engines: @@ -2462,9 +2563,9 @@ postcss: ^8.2.15 resolution: integrity: sha512-i8vLRZTnEH9ubIyfdZCAdIdgnHAUeQeByEeQ2I7oTilvP9oHO6RScpeq3GsFUVqeB8uZgOQ9pw8utofNn32hhQ== - /cssnano/5.0.11: - dependencies: - cssnano-preset-default: 5.1.7 + /cssnano/5.0.12: + dependencies: + cssnano-preset-default: 5.1.8 is-resolvable: 1.1.0 lilconfig: 2.0.4 yaml: 1.10.2 @@ -2474,7 +2575,7 @@ peerDependencies: postcss: ^8.2.15 resolution: - integrity: sha512-5SHM31NAAe29jvy0MJqK40zZ/8dGlnlzcfHKw00bWMVFp8LWqtuyPSFwbaoIoxvt71KWJOfg8HMRGrBR3PExCg== + integrity: sha512-U38V4x2iJ3ijPdeWqUrEr4eKBB5PbEKsNP5T8xcik2Au3LeMtiMHX0i2Hu9k51FcKofNZumbrcdC6+a521IUHg== /csso/4.2.0: dependencies: css-tree: 1.1.3 @@ -2531,13 +2632,19 @@ dev: true resolution: integrity: sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== - /debug/4.1.1: + /debug/4.3.3: dependencies: ms: 2.1.2 - deprecated: 'Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)' - dev: true - resolution: - integrity: sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== + dev: true + engines: + node: '>=6.0' + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + resolution: + integrity: sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q== /decimal.js/10.3.1: dev: true resolution: @@ -2552,10 +2659,10 @@ dev: true resolution: integrity: sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw= - /deep-is/0.1.3: - dev: true - resolution: - integrity: sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= + /deep-is/0.1.4: + dev: true + resolution: + integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== /deepmerge/4.2.2: dev: true engines: @@ -2639,20 +2746,20 @@ integrity: sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== /detective/4.7.1: dependencies: - acorn: 5.7.3 + acorn: 5.7.4 defined: 1.0.0 dev: true resolution: integrity: sha512-H6PmeeUcZloWtdt4DAkFyzFL94arpHr3NOwwmVILFiy+9Qd4JTxxXrzfyGk/lmct2qVGBwTSwSXagqu2BxmWig== - /diff-sequences/27.0.6: + /diff-sequences/27.4.0: dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-ag6wfpBFyNXZ0p8pcuIDS//D8H062ZQJ3fzYxjpmeKjnz8W4pekL3AI8VohmyZmsWW2PWaHgjsmqR6L13101VQ== + integrity: sha512-YqiQzkrsmHMH5uuh8OdQFU9/ZpADnwzml8z0O5HvRNda+5UZsaX/xN+AAxfR2hWq1Y7HZnAzO9J5lJXOuDz2Ww== /diffie-hellman/5.0.3: dependencies: - bn.js: 4.11.8 + bn.js: 4.12.0 miller-rabin: 4.0.1 randombytes: 2.1.0 dev: true @@ -2662,7 +2769,7 @@ dependencies: domelementtype: 2.2.0 domhandler: 4.2.2 - entities: 2.0.0 + entities: 2.2.0 dev: true resolution: integrity: sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig== @@ -2707,13 +2814,13 @@ dev: true resolution: integrity: sha1-ixLauHjA1p4+eJEFFmKjL8a93ME= - /electron-to-chromium/1.3.900: - dev: true - resolution: - integrity: sha512-SuXbQD8D4EjsaBaJJxySHbC+zq8JrFfxtb4GIr4E9n1BcROyMcRrJCYQNpJ9N+Wjf5mFp7Wp0OHykd14JNEzzQ== - /elliptic/6.5.2: - dependencies: - bn.js: 4.11.8 + /electron-to-chromium/1.4.5: + dev: true + resolution: + integrity: sha512-YKaB+t8ul5crdh6OeqT2qXdxJGI0fAYb6/X8pDIyye+c3a7ndOCk5gVeKX+ABwivCGNS56vOAif3TN0qJMpEHw== + /elliptic/6.5.4: + dependencies: + bn.js: 4.12.0 brorand: 1.1.0 hash.js: 1.1.7 hmac-drbg: 1.0.1 @@ -2722,7 +2829,7 @@ minimalistic-crypto-utils: 1.0.1 dev: true resolution: - integrity: sha512-f4x70okzZbIQl/NSRLkI/+tteV/9WqL98zx+SQ69KbXxmVrmjwsNUPn/gYJJ0sHvEak24cZgHIPegRePAtA/xw== + integrity: sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ== /emittery/0.8.1: dev: true engines: @@ -2733,23 +2840,23 @@ dev: true resolution: integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== - /emojis-list/2.1.0: - dev: true - engines: - node: '>= 0.10' - resolution: - integrity: sha1-TapNnbAPmBmIDHn6RXrlsJof04k= - /entities/2.0.0: - dev: true - resolution: - integrity: sha512-D9f7V0JSRwIxlRI2mjMqufDrRDnx8p+eEOz7aUM9SuvF8gsBzra0/6tbjl1m8eQHrZlYj6PxqE00hZ1SAIKPLw== - /errno/0.1.7: + /emojis-list/3.0.0: + dev: true + engines: + node: '>= 4' + resolution: + integrity: sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q== + /entities/2.2.0: + dev: true + resolution: + integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== + /errno/0.1.8: dependencies: prr: 1.0.1 dev: true hasBin: true resolution: - integrity: sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg== + integrity: sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A== /escalade/3.1.1: dev: true engines: @@ -2842,7 +2949,7 @@ /evp_bytestokey/1.0.3: dependencies: md5.js: 1.3.5 - safe-buffer: 5.2.0 + safe-buffer: 5.2.1 dev: true resolution: integrity: sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA== @@ -2851,11 +2958,11 @@ cross-spawn: 7.0.3 get-stream: 6.0.1 human-signals: 2.1.0 - is-stream: 2.0.0 + is-stream: 2.0.1 merge-stream: 2.0.0 npm-run-path: 4.0.1 onetime: 5.1.2 - signal-exit: 3.0.5 + signal-exit: 3.0.6 strip-final-newline: 2.0.0 dev: true engines: @@ -2901,19 +3008,19 @@ optional: true resolution: integrity: sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc= - /expect/27.3.1: - dependencies: - '@jest/types': 27.2.5 + /expect/27.4.0: + dependencies: + '@jest/types': 27.4.0 ansi-styles: 5.2.0 - jest-get-type: 27.3.1 - jest-matcher-utils: 27.3.1 - jest-message-util: 27.3.1 - jest-regex-util: 27.0.6 + jest-get-type: 27.4.0 + jest-matcher-utils: 27.4.0 + jest-message-util: 27.4.0 + jest-regex-util: 27.4.0 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-MrNXV2sL9iDRebWPGOGFdPQRl2eDQNu/uhxIMShjjx74T6kC6jFIkmQ6OqXDtevjGUkyB2IT56RzDBqXf/QPCg== + integrity: sha512-3V4Nq5E5dS7bzFfinUThG0OnOnNIDdEPC0KG1pBgB1Z7ZTDVuuyvSBTOQewi0z0vaGKWPaJ880tGI+pPm+5aCg== /extend-shallow/2.0.1: dependencies: is-extendable: 0.1.1 @@ -2966,10 +3073,10 @@ dev: true resolution: integrity: sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= - /fast-safe-stringify/2.0.7: - dev: true - resolution: - integrity: sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA== + /fast-safe-stringify/2.1.1: + dev: true + resolution: + integrity: sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA== /fb-watchman/2.0.1: dependencies: bser: 2.1.1 @@ -3004,7 +3111,7 @@ is-number: 2.1.0 isobject: 2.1.0 randomatic: 3.1.1 - repeat-element: 1.1.3 + repeat-element: 1.1.4 repeat-string: 1.6.1 dev: true engines: @@ -3074,7 +3181,7 @@ dependencies: asynckit: 0.4.0 combined-stream: 1.0.8 - mime-types: 2.1.26 + mime-types: 2.1.34 dev: true engines: node: '>= 6' @@ -3097,21 +3204,20 @@ dev: true resolution: integrity: sha1-FQStJSMVjKpA20onh8sBQRmU6k8= - /fsevents/1.2.11: - bundledDependencies: - - node-pre-gyp + /fsevents/1.2.13: dependencies: bindings: 1.5.0 - nan: 2.14.0 - dev: true - engines: - node: '>=4.0' + nan: 2.15.0 + deprecated: fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2. + dev: true + engines: + node: '>= 4.0' optional: true os: - darwin requiresBuild: true resolution: - integrity: sha512-+ux3lx6peh0BpvY0JebGyZoiR4D+oYzdPZMKJwkZ+sFkNJzpL7tXc/wehS49gUAxg3tmMHPHZkA8JU2rhhgDHw== + integrity: sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw== /fsevents/2.3.2: dev: true engines: @@ -3133,16 +3239,16 @@ integrity: sha1-7Sgcq+1G/uz5Ie4y3ExQs3KsfPo= /generic-names/2.0.1: dependencies: - loader-utils: 1.2.3 + loader-utils: 1.4.0 dev: true resolution: integrity: sha512-kPCHWa1m9wGG/OwQpeweTwM/PYiQLrUIxXbt/P4Nic3LbGjCP0YwrALHW1uNLKZ0LIMg+RF+XRlj2ekT9ZlZAQ== - /gensync/1.0.0-beta.1: + /gensync/1.0.0-beta.2: dev: true engines: node: '>=6.9.0' resolution: - integrity: sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg== + integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== /get-assigned-identifiers/1.2.0: dev: true resolution: @@ -3153,6 +3259,12 @@ node: 6.* || 8.* || >= 10.* resolution: integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== + /get-package-type/0.1.0: + dev: true + engines: + node: '>=8.0.0' + resolution: + integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== /get-stream/6.0.1: dev: true engines: @@ -3183,17 +3295,6 @@ optional: true resolution: integrity: sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg= - /glob/7.1.6: - dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 3.0.4 - once: 1.4.0 - path-is-absolute: 1.0.1 - dev: true - resolution: - integrity: sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== /glob/7.2.0: dependencies: fs.realpath: 1.0.0 @@ -3217,10 +3318,6 @@ node: '>=0.10.0' resolution: integrity: sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ== - /graceful-fs/4.2.3: - dev: true - resolution: - integrity: sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ== /graceful-fs/4.2.8: dev: true resolution: @@ -3292,15 +3389,16 @@ node: '>= 0.4.0' resolution: integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== - /hash-base/3.0.4: + /hash-base/3.1.0: dependencies: inherits: 2.0.4 - safe-buffer: 5.2.0 + readable-stream: 3.6.0 + safe-buffer: 5.2.1 dev: true engines: node: '>=4' resolution: - integrity: sha1-X8hoaEfs1zSZQDMZprCj8/auSRg= + integrity: sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA== /hash.js/1.1.7: dependencies: inherits: 2.0.4 @@ -3333,10 +3431,10 @@ node: '>=10' resolution: integrity: sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ== - /html-escaper/2.0.0: - dev: true - resolution: - integrity: sha512-a4u9BeERWGu/S8JiWEAQcdrg9v4QArtP9keViQjGMdff20fBdd8waotXaNmODqBe6uZ3Nafi7K/ho4gCQHV3Ig== + /html-escaper/2.0.2: + dev: true + resolution: + integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== /htmlescape/1.1.1: dev: true engines: @@ -3347,7 +3445,7 @@ dependencies: '@tootallnate/once': 1.1.2 agent-base: 6.0.2 - debug: 4.1.1 + debug: 4.3.3 dev: true engines: node: '>= 6' @@ -3360,7 +3458,7 @@ /https-proxy-agent/5.0.0: dependencies: agent-base: 6.0.2 - debug: 4.1.1 + debug: 4.3.3 dev: true engines: node: '>= 6' @@ -3396,10 +3494,14 @@ dev: true resolution: integrity: sha512-zfNREywMuf0NzDo9mVsL0yegjsirJxHpKHvWcyRozIqQy89g0a3U+oBPOCN4cc0oCiOuYgZHimzaW/R46G1Mpg== - /ieee754/1.1.13: - dev: true - resolution: - integrity: sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg== + /ieee754/1.2.1: + dev: true + resolution: + integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== + /immutable/4.0.0: + dev: false + resolution: + integrity: sha512-zIE9hX70qew5qTUjSS7wi1iwj/l7+m54KWU247nhM3v806UdGj1yDndXj+IOYxxtW9zyLI+xqFNZjTuDaLUqFw== /import-cwd/3.0.0: dependencies: import-from: 3.0.0 @@ -3416,7 +3518,7 @@ node: '>=8' resolution: integrity: sha512-CiuXOFFSzkU5x/CR0+z7T91Iht4CXgfCxVOFRhh2Zyhg5wOpWvvDLQUsWl+gcN+QscYBjez8hDCt85O7RLDttQ== - /import-local/3.0.2: + /import-local/3.0.3: dependencies: pkg-dir: 4.2.0 resolve-cwd: 3.0.0 @@ -3425,7 +3527,7 @@ node: '>=8' hasBin: true resolution: - integrity: sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA== + integrity: sha512-bE9iaUY3CXH8Cwfan/abDKAxe1KGT9kyGsBPqf6DMK/z0a2OzAsrukeYNgIH6cH5Xr452jb1TUL8rSfCLjZ9uA== /imurmurhash/0.1.4: dev: true engines: @@ -3460,7 +3562,7 @@ dev: true resolution: integrity: sha1-+Tk0ccGKedFyT4Y/o4tYY3Ct4qU= - /insert-module-globals/7.2.0: + /insert-module-globals/7.2.1: dependencies: JSONStream: 1.3.5 acorn-node: 1.8.2 @@ -3475,7 +3577,7 @@ dev: true hasBin: true resolution: - integrity: sha512-VE6NlW+WGn2/AeOMd496AHFYmE7eLKkUY6Ty31k4og5vmA3Fjuwe9v6ifH6Xx/Hz27QvdoMoviw1/pqWRB09Sw== + integrity: sha512-ufS5Qq9RZN+Bu899eA9QCAYThY+gGW7oRkmb0vC93Vlyu/CFGcH0OYPEjVkDXA5FEbTt1+VWzdoOD3Ny9N+8tg== /invariant/2.2.4: dependencies: loose-envify: 1.4.0 @@ -3499,7 +3601,7 @@ integrity: sha1-qeEss66Nh2cn7u84Q/igiXtcmNY= /is-accessor-descriptor/1.0.0: dependencies: - kind-of: 6.0.2 + kind-of: 6.0.3 dev: true engines: node: '>=0.10.0' @@ -3536,7 +3638,7 @@ integrity: sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y= /is-data-descriptor/1.0.0: dependencies: - kind-of: 6.0.2 + kind-of: 6.0.3 dev: true engines: node: '>=0.10.0' @@ -3558,7 +3660,7 @@ dependencies: is-accessor-descriptor: 1.0.0 is-data-descriptor: 1.0.0 - kind-of: 6.0.2 + kind-of: 6.0.3 dev: true engines: node: '>=0.10.0' @@ -3604,14 +3706,12 @@ optional: true resolution: integrity: sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA= - /is-finite/1.0.2: - dependencies: - number-is-nan: 1.0.1 + /is-finite/1.1.0: dev: true engines: node: '>=0.10.0' resolution: - integrity: sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko= + integrity: sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w== /is-fullwidth-code-point/3.0.0: dev: true engines: @@ -3709,12 +3809,12 @@ dev: true resolution: integrity: sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg== - /is-stream/2.0.0: + /is-stream/2.0.1: dev: true engines: node: '>=8' resolution: - integrity: sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw== + integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== /is-typedarray/1.0.0: dev: true resolution: @@ -3762,80 +3862,92 @@ optional: true resolution: integrity: sha1-TkMekrEalzFjaqH5yNHMvP2reN8= - /istanbul-lib-coverage/3.0.0: + /istanbul-lib-coverage/3.2.0: dev: true engines: node: '>=8' resolution: - integrity: sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg== + integrity: sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== /istanbul-lib-instrument/4.0.3: dependencies: - '@babel/core': 7.8.3 - '@istanbuljs/schema': 0.1.2 - istanbul-lib-coverage: 3.0.0 + '@babel/core': 7.16.0_@babel+core@7.16.0 + '@istanbuljs/schema': 0.1.3 + istanbul-lib-coverage: 3.2.0 semver: 6.3.0 dev: true engines: node: '>=8' resolution: integrity: sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ== + /istanbul-lib-instrument/5.1.0: + dependencies: + '@babel/core': 7.16.0_@babel+core@7.16.0 + '@babel/parser': 7.16.4 + '@istanbuljs/schema': 0.1.3 + istanbul-lib-coverage: 3.2.0 + semver: 6.3.0 + dev: true + engines: + node: '>=8' + resolution: + integrity: sha512-czwUz525rkOFDJxfKK6mYfIs9zBKILyrZQxjz3ABhjQXhbhFsSbo1HW/BFcsDnfJYJWA6thRR5/TUY2qs5W99Q== /istanbul-lib-report/3.0.0: dependencies: - istanbul-lib-coverage: 3.0.0 + istanbul-lib-coverage: 3.2.0 make-dir: 3.1.0 - supports-color: 7.1.0 + supports-color: 7.2.0 dev: true engines: node: '>=8' resolution: integrity: sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw== - /istanbul-lib-source-maps/4.0.0: - dependencies: - debug: 4.1.1 - istanbul-lib-coverage: 3.0.0 + /istanbul-lib-source-maps/4.0.1: + dependencies: + debug: 4.3.3 + istanbul-lib-coverage: 3.2.0 source-map: 0.6.1 dev: true engines: - node: '>=8' - resolution: - integrity: sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg== + node: '>=10' + resolution: + integrity: sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw== /istanbul-reports/3.0.5: dependencies: - html-escaper: 2.0.0 + html-escaper: 2.0.2 istanbul-lib-report: 3.0.0 dev: true engines: node: '>=8' resolution: integrity: sha512-5+19PlhnGabNWB7kOFnuxT8H3T/iIyQzIbQMxXsURmmvKg86P2sbkrGOT77VnHw0Qr0gc2XzRaRfMZYYbSQCJQ== - /jest-changed-files/27.3.0: - dependencies: - '@jest/types': 27.2.5 + /jest-changed-files/27.4.0: + dependencies: + '@jest/types': 27.4.0 execa: 5.1.1 throat: 6.0.1 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-9DJs9garMHv4RhylUMZgbdCJ3+jHSkpL9aaVKp13xtXAD80qLTLrqcDZL1PHA9dYA0bCI86Nv2BhkLpLhrBcPg== - /jest-circus/27.3.1: - dependencies: - '@jest/environment': 27.3.1 - '@jest/test-result': 27.3.1 - '@jest/types': 27.2.5 - '@types/node': 13.1.7 + integrity: sha512-TacYni8ZumaB10L/fGRH92MbLYkn+MF2KtgHeAOcwnOzfmt+S6CDmJeslZuLOpnRUQKkV/Vr4qPAlrBTE5r67A== + /jest-circus/27.4.0: + dependencies: + '@jest/environment': 27.4.0 + '@jest/test-result': 27.4.0 + '@jest/types': 27.4.0 + '@types/node': 16.11.11 chalk: 4.1.2 co: 4.6.0 dedent: 0.7.0 - expect: 27.3.1 + expect: 27.4.0 is-generator-fn: 2.1.0 - jest-each: 27.3.1 - jest-matcher-utils: 27.3.1 - jest-message-util: 27.3.1 - jest-runtime: 27.3.1 - jest-snapshot: 27.3.1 - jest-util: 27.3.1 - pretty-format: 27.3.1 + jest-each: 27.4.0 + jest-matcher-utils: 27.4.0 + jest-message-util: 27.4.0 + jest-runtime: 27.4.0 + jest-snapshot: 27.4.0 + jest-util: 27.4.0 + pretty-format: 27.4.0 slash: 3.0.0 stack-utils: 2.0.5 throat: 6.0.1 @@ -3843,20 +3955,20 @@ engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-v1dsM9II6gvXokgqq6Yh2jHCpfg7ZqV4jWY66u7npz24JnhP3NHxI0sKT7+ZMQ7IrOWHYAaeEllOySbDbWsiXw== - /jest-cli/27.3.1: - dependencies: - '@jest/core': 27.3.1 - '@jest/test-result': 27.3.1 - '@jest/types': 27.2.5 + integrity: sha512-WYmHSsuH82HZqOHPU1vD2AKyzUp5t/0R7jT1XJ8ga+hIGR5Ddv6PUQeMJvjnftyLC0izSm3tZaIYB+H6FfYqZA== + /jest-cli/27.4.0: + dependencies: + '@jest/core': 27.4.0 + '@jest/test-result': 27.4.0 + '@jest/types': 27.4.0 chalk: 4.1.2 exit: 0.1.2 graceful-fs: 4.2.8 - import-local: 3.0.2 - jest-config: 27.3.1 - jest-util: 27.3.1 - jest-validate: 27.3.1 - prompts: 2.3.0 + import-local: 3.0.3 + jest-config: 27.4.0 + jest-util: 27.4.0 + jest-validate: 27.4.0 + prompts: 2.4.2 yargs: 16.2.0 dev: true engines: @@ -3868,30 +3980,31 @@ node-notifier: optional: true resolution: - integrity: sha512-WHnCqpfK+6EvT62me6WVs8NhtbjAS4/6vZJnk7/2+oOr50cwAzG4Wxt6RXX0hu6m1169ZGMlhYYUNeKBXCph/Q== - /jest-config/27.3.1: - dependencies: - '@babel/core': 7.8.3 - '@jest/test-sequencer': 27.3.1 - '@jest/types': 27.2.5 - babel-jest: 27.3.1_@babel+core@7.8.3 + integrity: sha512-cTL2ORt/ha+x6KJfVp0oTAyPmHVw7IJ+lA3kmT/kNcWoCiKa+t/JlF5x+nJ0UfL3/IQLV+ysYgu8MjGM8WXH+w== + /jest-config/27.4.0: + dependencies: + '@babel/core': 7.16.0_@babel+core@7.16.0 + '@jest/test-sequencer': 27.4.0 + '@jest/types': 27.4.0 + babel-jest: 27.4.0_@babel+core@7.16.0 chalk: 4.1.2 - ci-info: 3.2.0 + ci-info: 3.3.0 deepmerge: 4.2.2 - glob: 7.1.6 + glob: 7.2.0 graceful-fs: 4.2.8 - jest-circus: 27.3.1 - jest-environment-jsdom: 27.3.1 - jest-environment-node: 27.3.1 - jest-get-type: 27.3.1 - jest-jasmine2: 27.3.1 - jest-regex-util: 27.0.6 - jest-resolve: 27.3.1_jest-resolve@27.3.1 - jest-runner: 27.3.1 - jest-util: 27.3.1 - jest-validate: 27.3.1 + jest-circus: 27.4.0 + jest-environment-jsdom: 27.4.0 + jest-environment-node: 27.4.0 + jest-get-type: 27.4.0 + jest-jasmine2: 27.4.0 + jest-regex-util: 27.4.0 + jest-resolve: 27.4.0_jest-resolve@27.4.0 + jest-runner: 27.4.0 + jest-util: 27.4.0 + jest-validate: 27.4.0 micromatch: 4.0.4 - pretty-format: 27.3.1 + pretty-format: 27.4.0 + slash: 3.0.0 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 @@ -3901,165 +4014,166 @@ ts-node: optional: true resolution: - integrity: sha512-KY8xOIbIACZ/vdYCKSopL44I0xboxC751IX+DXL2+Wx6DKNycyEfV3rryC3BPm5Uq/BBqDoMrKuqLEUNJmMKKg== - /jest-diff/27.3.1: + integrity: sha512-4ZDJd0HLX4snqDNOQYswMjQj7d7I2Bm8+TYIytDcRSAy7mkneQCKHBJu2NtIuzXxAoS2Sy+sjZ1UX/9L06zZCQ== + /jest-diff/27.4.0: dependencies: chalk: 4.1.2 - diff-sequences: 27.0.6 - jest-get-type: 27.3.1 - pretty-format: 27.3.1 + diff-sequences: 27.4.0 + jest-get-type: 27.4.0 + pretty-format: 27.4.0 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-PCeuAH4AWUo2O5+ksW4pL9v5xJAcIKPUPfIhZBcG1RKv/0+dvaWTQK1Nrau8d67dp65fOqbeMdoil+6PedyEPQ== - /jest-docblock/27.0.6: + integrity: sha512-fdXgpnyQH4LNSnYgRfHN/g413bqbPspWIAZPlXrdNISehDih1VNDtuRvlzGQJ4Go+fur1HKB2IyI25t6cWi5EA== + /jest-docblock/27.4.0: dependencies: detect-newline: 3.1.0 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-Fid6dPcjwepTFraz0YxIMCi7dejjJ/KL9FBjPYhBp4Sv1Y9PdhImlKZqYU555BlN4TQKaTc+F2Av1z+anVyGkA== - /jest-each/27.3.1: - dependencies: - '@jest/types': 27.2.5 + integrity: sha512-7TBazUdCKGV7svZ+gh7C8esAnweJoG+SvcF6Cjqj4l17zA2q1cMwx2JObSioubk317H+cjcHgP+7fTs60paulg== + /jest-each/27.4.0: + dependencies: + '@jest/types': 27.4.0 chalk: 4.1.2 - jest-get-type: 27.3.1 - jest-util: 27.3.1 - pretty-format: 27.3.1 + jest-get-type: 27.4.0 + jest-util: 27.4.0 + pretty-format: 27.4.0 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-E4SwfzKJWYcvOYCjOxhZcxwL+AY0uFMvdCOwvzgutJiaiodFjkxQQDxHm8FQBeTqDnSmKsQWn7ldMRzTn2zJaQ== - /jest-environment-jsdom/27.3.1: - dependencies: - '@jest/environment': 27.3.1 - '@jest/fake-timers': 27.3.1 - '@jest/types': 27.2.5 - '@types/node': 13.1.7 - jest-mock: 27.3.0 - jest-util: 27.3.1 + integrity: sha512-dq6r/Uf6Q7sI/gND7WyCmQ7Z13p1CSusMkHEC//+schTrhTRe+ubPO2GtejHlWV+BldH6aMAAmtlEZgBroNrNg== + /jest-environment-jsdom/27.4.0: + dependencies: + '@jest/environment': 27.4.0 + '@jest/fake-timers': 27.4.0 + '@jest/types': 27.4.0 + '@types/jsdom': 16.2.13 + '@types/node': 16.11.11 + jest-mock: 27.4.0 + jest-util: 27.4.0 jsdom: 16.7.0 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-3MOy8qMzIkQlfb3W1TfrD7uZHj+xx8Olix5vMENkj5djPmRqndMaXtpnaZkxmxM+Qc3lo+yVzJjzuXbCcZjAlg== - /jest-environment-node/27.3.1: - dependencies: - '@jest/environment': 27.3.1 - '@jest/fake-timers': 27.3.1 - '@jest/types': 27.2.5 - '@types/node': 13.1.7 - jest-mock: 27.3.0 - jest-util: 27.3.1 + integrity: sha512-fgM6g4WftTTpRA8dB5FnmS3n+PthwjTdMwl/Lcq2QlCo0I5smyD+t82bzO9tX5w6ygxbCbnP4VkSWWYdqO4j+w== + /jest-environment-node/27.4.0: + dependencies: + '@jest/environment': 27.4.0 + '@jest/fake-timers': 27.4.0 + '@jest/types': 27.4.0 + '@types/node': 16.11.11 + jest-mock: 27.4.0 + jest-util: 27.4.0 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-T89F/FgkE8waqrTSA7/ydMkcc52uYPgZZ6q8OaZgyiZkJb5QNNCF6oPZjH9IfPFfcc9uBWh1574N0kY0pSvTXw== - /jest-get-type/27.3.1: + integrity: sha512-VG3jLukpPhpffd7dUiC7+usyTG8Omytg4NOjGQtv88208O2AAMwcqpOAl1/uVOhUvbiegtVztyd3ZzAQtBxifA== + /jest-get-type/27.4.0: dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-+Ilqi8hgHSAdhlQ3s12CAVNd8H96ZkQBfYoXmArzZnOfAtVAJEiPDBirjByEblvG/4LPJmkL+nBqPO3A1YJAEg== - /jest-haste-map/27.3.1: - dependencies: - '@jest/types': 27.2.5 + integrity: sha512-tk9o+ld5TWq41DkK14L4wox4s2D9MtTpKaAVzXfr5CUKm5ZK2ExcaFE0qls2W71zE/6R2TxxrK9w2r6svAFDBQ== + /jest-haste-map/27.4.0: + dependencies: + '@jest/types': 27.4.0 '@types/graceful-fs': 4.1.5 - '@types/node': 13.1.7 - anymatch: 3.1.1 + '@types/node': 16.11.11 + anymatch: 3.1.2 fb-watchman: 2.0.1 graceful-fs: 4.2.8 - jest-regex-util: 27.0.6 - jest-serializer: 27.0.6 - jest-util: 27.3.1 - jest-worker: 27.3.1 + jest-regex-util: 27.4.0 + jest-serializer: 27.4.0 + jest-util: 27.4.0 + jest-worker: 27.4.0 micromatch: 4.0.4 - walker: 1.0.7 + walker: 1.0.8 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 optionalDependencies: fsevents: 2.3.2 resolution: - integrity: sha512-lYfNZIzwPccDJZIyk9Iz5iQMM/MH56NIIcGj7AFU1YyA4ewWFBl8z+YPJuSCRML/ee2cCt2y3W4K3VXPT6Nhzg== - /jest-jasmine2/27.3.1: - dependencies: - '@babel/traverse': 7.8.3 - '@jest/environment': 27.3.1 - '@jest/source-map': 27.0.6 - '@jest/test-result': 27.3.1 - '@jest/types': 27.2.5 - '@types/node': 13.1.7 + integrity: sha512-xTXw1/JBJvdvTEsnTlRj9u9AAg2t23r5GHbtc5eC6AuEIRPfGWV02Y67U0p4K1KpEWLsk9Pb3b6Kfde/5a3C5A== + /jest-jasmine2/27.4.0: + dependencies: + '@babel/traverse': 7.16.3 + '@jest/environment': 27.4.0 + '@jest/source-map': 27.4.0 + '@jest/test-result': 27.4.0 + '@jest/types': 27.4.0 + '@types/node': 16.11.11 chalk: 4.1.2 co: 4.6.0 - expect: 27.3.1 + expect: 27.4.0 is-generator-fn: 2.1.0 - jest-each: 27.3.1 - jest-matcher-utils: 27.3.1 - jest-message-util: 27.3.1 - jest-runtime: 27.3.1 - jest-snapshot: 27.3.1 - jest-util: 27.3.1 - pretty-format: 27.3.1 + jest-each: 27.4.0 + jest-matcher-utils: 27.4.0 + jest-message-util: 27.4.0 + jest-runtime: 27.4.0 + jest-snapshot: 27.4.0 + jest-util: 27.4.0 + pretty-format: 27.4.0 throat: 6.0.1 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-WK11ZUetDQaC09w4/j7o4FZDUIp+4iYWH/Lik34Pv7ukL+DuXFGdnmmi7dT58J2ZYKFB5r13GyE0z3NPeyJmsg== - /jest-leak-detector/27.3.1: - dependencies: - jest-get-type: 27.3.1 - pretty-format: 27.3.1 + integrity: sha512-yvfWhQM/ZoxXfBZJdiKXCQxt18pOrciQUDqkT+EXtzhpKPIsbPdWCVv53NOqeWnRQR4HVhNgKK/fYD6BUXCxzA== + /jest-leak-detector/27.4.0: + dependencies: + jest-get-type: 27.4.0 + pretty-format: 27.4.0 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-78QstU9tXbaHzwlRlKmTpjP9k4Pvre5l0r8Spo4SbFFVy/4Abg9I6ZjHwjg2QyKEAMg020XcjP+UgLZIY50yEg== - /jest-matcher-utils/27.3.1: + integrity: sha512-d7QeqzIOVQeMI6VROLPNeYagcxPCvqYD6A34Ol9D+vPzs72omGXsGbuuJrChD51zuA4ESXcLYZ81L9JHr1VYGw== + /jest-matcher-utils/27.4.0: dependencies: chalk: 4.1.2 - jest-diff: 27.3.1 - jest-get-type: 27.3.1 - pretty-format: 27.3.1 + jest-diff: 27.4.0 + jest-get-type: 27.4.0 + pretty-format: 27.4.0 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-hX8N7zXS4k+8bC1Aj0OWpGb7D3gIXxYvPNK1inP5xvE4ztbz3rc4AkI6jGVaerepBnfWB17FL5lWFJT3s7qo8w== - /jest-message-util/27.3.1: + integrity: sha512-vBy1tEyuKiItYgV9x9ubccyadOy5xAAmDBgXk8dMppXBXG4glggrGcZvE+8l1r+te477bRcFLB/hRyGm5Tdxzw== + /jest-message-util/27.4.0: dependencies: '@babel/code-frame': 7.16.0 - '@jest/types': 27.2.5 + '@jest/types': 27.4.0 '@types/stack-utils': 2.0.1 chalk: 4.1.2 graceful-fs: 4.2.8 micromatch: 4.0.4 - pretty-format: 27.3.1 + pretty-format: 27.4.0 slash: 3.0.0 stack-utils: 2.0.5 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-bh3JEmxsTZ/9rTm0jQrPElbY2+y48Rw2t47uMfByNyUVR+OfPh4anuyKsGqsNkXk/TI4JbLRZx+7p7Hdt6q1yg== - /jest-mock/27.3.0: - dependencies: - '@jest/types': 27.2.5 - '@types/node': 13.1.7 + integrity: sha512-2KmfpnxFwt+5CF0YST6U1IwFomX9gx2dmcAV/ZjzF9/4tlmieExl7Ch7D36l94mIxWTXhDuPji4XOvxRBdswrQ== + /jest-mock/27.4.0: + dependencies: + '@jest/types': 27.4.0 + '@types/node': 16.11.11 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-ziZiLk0elZOQjD08bLkegBzv5hCABu/c8Ytx45nJKkysQwGaonvmTxwjLqEA4qGdasq9o2I8/HtdGMNnVsMTGw== - /jest-pnp-resolver/1.2.2_jest-resolve@27.3.1: - dependencies: - jest-resolve: 27.3.1_jest-resolve@27.3.1 + integrity: sha512-hQMpGIFEjhb6rtOz4JZcZaMdQytXjm54tBif9rpXfdzbEgYZ9+JGOUNqdtu3n09KG95/zEVwRI07HAuoSV1Dxw== + /jest-pnp-resolver/1.2.2_jest-resolve@27.4.0: + dependencies: + jest-resolve: 27.4.0_jest-resolve@27.4.0 dev: true engines: node: '>=6' @@ -4070,31 +4184,31 @@ optional: true resolution: integrity: sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w== - /jest-regex-util/27.0.6: + /jest-regex-util/27.4.0: dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-SUhPzBsGa1IKm8hx2F4NfTGGp+r7BXJ4CulsZ1k2kI+mGLG+lxGrs76veN2LF/aUdGosJBzKgXmNCw+BzFqBDQ== - /jest-resolve-dependencies/27.3.1: - dependencies: - '@jest/types': 27.2.5 - jest-regex-util: 27.0.6 - jest-snapshot: 27.3.1 + integrity: sha512-WeCpMpNnqJYMQoOjm1nTtsgbR4XHAk1u00qDoNBQoykM280+/TmgA5Qh5giC1ecy6a5d4hbSsHzpBtu5yvlbEg== + /jest-resolve-dependencies/27.4.0: + dependencies: + '@jest/types': 27.4.0 + jest-regex-util: 27.4.0 + jest-snapshot: 27.4.0 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-X7iLzY8pCiYOnvYo2YrK3P9oSE8/3N2f4pUZMJ8IUcZnT81vlSonya1KTO9ZfKGuC+svE6FHK/XOb8SsoRUV1A== - /jest-resolve/27.3.1_jest-resolve@27.3.1: - dependencies: - '@jest/types': 27.2.5 + integrity: sha512-D+Ean4nLgbRqhWCSKJIWpC36O7itmZbVQjnHWLF4brAP0r2sGATXjjhERIaiBCt/V2IhCDcH0EvS+PA7gSrf5g== + /jest-resolve/27.4.0_jest-resolve@27.4.0: + dependencies: + '@jest/types': 27.4.0 chalk: 4.1.2 graceful-fs: 4.2.8 - jest-haste-map: 27.3.1 - jest-pnp-resolver: 1.2.2_jest-resolve@27.3.1 - jest-util: 27.3.1 - jest-validate: 27.3.1 + jest-haste-map: 27.4.0 + jest-pnp-resolver: 1.2.2_jest-resolve@27.4.0 + jest-util: 27.4.0 + jest-validate: 27.4.0 resolve: 1.20.0 resolve.exports: 1.1.0 slash: 3.0.0 @@ -4104,61 +4218,61 @@ peerDependencies: jest-resolve: '*' resolution: - integrity: sha512-Dfzt25CFSPo3Y3GCbxynRBZzxq9AdyNN+x/v2IqYx6KVT5Z6me2Z/PsSGFSv3cOSUZqJ9pHxilao/I/m9FouLw== - /jest-runner/27.3.1: - dependencies: - '@jest/console': 27.3.1 - '@jest/environment': 27.3.1 - '@jest/test-result': 27.3.1 - '@jest/transform': 27.3.1 - '@jest/types': 27.2.5 - '@types/node': 13.1.7 + integrity: sha512-XF54RYG9a9fHTlovCwC5U49TVAfCkHLoJnMhgaT2AYif4E5BechlKUAlhYE4fkbr1J5LzP7O9qfgRA5JSR8HzQ== + /jest-runner/27.4.0: + dependencies: + '@jest/console': 27.4.0 + '@jest/environment': 27.4.0 + '@jest/test-result': 27.4.0 + '@jest/transform': 27.4.0 + '@jest/types': 27.4.0 + '@types/node': 16.11.11 chalk: 4.1.2 emittery: 0.8.1 exit: 0.1.2 graceful-fs: 4.2.8 - jest-docblock: 27.0.6 - jest-environment-jsdom: 27.3.1 - jest-environment-node: 27.3.1 - jest-haste-map: 27.3.1 - jest-leak-detector: 27.3.1 - jest-message-util: 27.3.1 - jest-resolve: 27.3.1_jest-resolve@27.3.1 - jest-runtime: 27.3.1 - jest-util: 27.3.1 - jest-worker: 27.3.1 - source-map-support: 0.5.16 + jest-docblock: 27.4.0 + jest-environment-jsdom: 27.4.0 + jest-environment-node: 27.4.0 + jest-haste-map: 27.4.0 + jest-leak-detector: 27.4.0 + jest-message-util: 27.4.0 + jest-resolve: 27.4.0_jest-resolve@27.4.0 + jest-runtime: 27.4.0 + jest-util: 27.4.0 + jest-worker: 27.4.0 + source-map-support: 0.5.21 throat: 6.0.1 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-r4W6kBn6sPr3TBwQNmqE94mPlYVn7fLBseeJfo4E2uCTmAyDFm2O5DYAQAFP7Q3YfiA/bMwg8TVsciP7k0xOww== - /jest-runtime/27.3.1: - dependencies: - '@jest/console': 27.3.1 - '@jest/environment': 27.3.1 - '@jest/globals': 27.3.1 - '@jest/source-map': 27.0.6 - '@jest/test-result': 27.3.1 - '@jest/transform': 27.3.1 - '@jest/types': 27.2.5 + integrity: sha512-ncnnOVQlqDorBAMNTuA2Htg3XJlnwAySpUBDmlJy4+WEwb5zB2cDLA3roPSMe0lVn8mGGXccl1/a8xwvE6txiQ== + /jest-runtime/27.4.0: + dependencies: + '@jest/console': 27.4.0 + '@jest/environment': 27.4.0 + '@jest/globals': 27.4.0 + '@jest/source-map': 27.4.0 + '@jest/test-result': 27.4.0 + '@jest/transform': 27.4.0 + '@jest/types': 27.4.0 '@types/yargs': 16.0.4 chalk: 4.1.2 cjs-module-lexer: 1.2.2 - collect-v8-coverage: 1.0.0 + collect-v8-coverage: 1.0.1 execa: 5.1.1 exit: 0.1.2 - glob: 7.1.6 + glob: 7.2.0 graceful-fs: 4.2.8 - jest-haste-map: 27.3.1 - jest-message-util: 27.3.1 - jest-mock: 27.3.0 - jest-regex-util: 27.0.6 - jest-resolve: 27.3.1_jest-resolve@27.3.1 - jest-snapshot: 27.3.1 - jest-util: 27.3.1 - jest-validate: 27.3.1 + jest-haste-map: 27.4.0 + jest-message-util: 27.4.0 + jest-mock: 27.4.0 + jest-regex-util: 27.4.0 + jest-resolve: 27.4.0_jest-resolve@27.4.0 + jest-snapshot: 27.4.0 + jest-util: 27.4.0 + jest-validate: 27.4.0 slash: 3.0.0 strip-bom: 4.0.0 yargs: 16.2.0 @@ -4166,102 +4280,102 @@ engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-qtO6VxPbS8umqhEDpjA4pqTkKQ1Hy4ZSi9mDVeE9Za7LKBo2LdW2jmT+Iod3XFaJqINikZQsn2wEi0j9wPRbLg== - /jest-serializer/27.0.6: - dependencies: - '@types/node': 13.1.7 + integrity: sha512-8IcQQFhVWWNq45wuDYooIDNdmhOVebOsIDOfXN/Xbw4h/6G1qy9+i5OND7Qmb4g+cSawK5C2tAdHcdR8Q9eSew== + /jest-serializer/27.4.0: + dependencies: + '@types/node': 16.11.11 graceful-fs: 4.2.8 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-PtGdVK9EGC7dsaziskfqaAPib6wTViY3G8E5wz9tLVPhHyiDNTZn/xjZ4khAw+09QkoOVpn7vF5nPSN6dtBexA== - /jest-snapshot/27.3.1: - dependencies: - '@babel/core': 7.8.3 - '@babel/generator': 7.8.3 - '@babel/parser': 7.8.3 - '@babel/plugin-syntax-typescript': 7.16.0_@babel+core@7.8.3 - '@babel/traverse': 7.8.3 - '@babel/types': 7.8.3 - '@jest/transform': 27.3.1 - '@jest/types': 27.2.5 - '@types/babel__traverse': 7.0.8 + integrity: sha512-RDhpcn5f1JYTX2pvJAGDcnsNTnsV9bjYPU8xcV+xPwOXnUPOQwf4ZEuiU6G9H1UztH+OapMgu/ckEVwO87PwnQ== + /jest-snapshot/27.4.0: + dependencies: + '@babel/core': 7.16.0_@babel+core@7.16.0 + '@babel/generator': 7.16.0 + '@babel/parser': 7.16.4 + '@babel/plugin-syntax-typescript': 7.16.0_@babel+core@7.16.0 + '@babel/traverse': 7.16.3 + '@babel/types': 7.16.0 + '@jest/transform': 27.4.0 + '@jest/types': 27.4.0 + '@types/babel__traverse': 7.14.2 '@types/prettier': 2.4.2 - babel-preset-current-node-syntax: 1.0.1_@babel+core@7.8.3 + babel-preset-current-node-syntax: 1.0.1_@babel+core@7.16.0 chalk: 4.1.2 - expect: 27.3.1 + expect: 27.4.0 graceful-fs: 4.2.8 - jest-diff: 27.3.1 - jest-get-type: 27.3.1 - jest-haste-map: 27.3.1 - jest-matcher-utils: 27.3.1 - jest-message-util: 27.3.1 - jest-resolve: 27.3.1_jest-resolve@27.3.1 - jest-util: 27.3.1 + jest-diff: 27.4.0 + jest-get-type: 27.4.0 + jest-haste-map: 27.4.0 + jest-matcher-utils: 27.4.0 + jest-message-util: 27.4.0 + jest-resolve: 27.4.0_jest-resolve@27.4.0 + jest-util: 27.4.0 natural-compare: 1.4.0 - pretty-format: 27.3.1 + pretty-format: 27.4.0 semver: 7.3.5 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-APZyBvSgQgOT0XumwfFu7X3G5elj6TGhCBLbBdn3R1IzYustPGPE38F51dBWMQ8hRXa9je0vAdeVDtqHLvB6lg== - /jest-util/27.3.1: - dependencies: - '@jest/types': 27.2.5 - '@types/node': 13.1.7 + integrity: sha512-iOisfzB00tQE/rk+LzLzjbjElT4Lq26ZrYHX/1OfhVb7IZbu/2i4bkS7YK3fimfw3zleWRTleUMCmWGi+GCjpQ== + /jest-util/27.4.0: + dependencies: + '@jest/types': 27.4.0 + '@types/node': 16.11.11 chalk: 4.1.2 - ci-info: 3.2.0 + ci-info: 3.3.0 graceful-fs: 4.2.8 picomatch: 2.3.0 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-8fg+ifEH3GDryLQf/eKZck1DEs2YuVPBCMOaHQxVVLmQwl/CDhWzrvChTX4efLZxGrw+AA0mSXv78cyytBt/uw== - /jest-validate/27.3.1: - dependencies: - '@jest/types': 27.2.5 + integrity: sha512-9HL5h/IWeg2u2dt0UIiseVRCnadh7CMPD4B9AeoEO23/NofaEfcPzIfl8dw45CpGHjP+xenw1viQYMd25DWquA== + /jest-validate/27.4.0: + dependencies: + '@jest/types': 27.4.0 camelcase: 6.2.1 chalk: 4.1.2 - jest-get-type: 27.3.1 + jest-get-type: 27.4.0 leven: 3.1.0 - pretty-format: 27.3.1 + pretty-format: 27.4.0 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-3H0XCHDFLA9uDII67Bwi1Vy7AqwA5HqEEjyy934lgVhtJ3eisw6ShOF1MDmRPspyikef5MyExvIm0/TuLzZ86Q== - /jest-watcher/27.3.1: - dependencies: - '@jest/test-result': 27.3.1 - '@jest/types': 27.2.5 - '@types/node': 13.1.7 - ansi-escapes: 4.3.0 + integrity: sha512-Gsfh/KtS7fXDNzz3oKmB1F8dFVqWwqOwhUqEHhKM8Y0R0bJK8R2HLiuqKfnqfbuybdiGiVdzqaK5c0poZaQAew== + /jest-watcher/27.4.0: + dependencies: + '@jest/test-result': 27.4.0 + '@jest/types': 27.4.0 + '@types/node': 16.11.11 + ansi-escapes: 4.3.2 chalk: 4.1.2 - jest-util: 27.3.1 + jest-util: 27.4.0 string-length: 4.0.2 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-9/xbV6chABsGHWh9yPaAGYVVKurWoP3ZMCv6h+O1v9/+pkOroigs6WzZ0e9gLP/njokUwM7yQhr01LKJVMkaZA== - /jest-worker/27.3.1: - dependencies: - '@types/node': 13.1.7 + integrity: sha512-0ZXzsp/NArW6IXxo4g7DP/nCJqS/OLCZyl08qzd8ANGSEoTsliivBumjUK5/0gvx/K4Oc60APNyTMfJJ6WENcg== + /jest-worker/27.4.0: + dependencies: + '@types/node': 16.11.11 merge-stream: 2.0.0 supports-color: 8.1.1 dev: true engines: node: '>= 10.13.0' resolution: - integrity: sha512-ks3WCzsiZaOPJl/oMsDjaf0TRiSv7ctNgs0FqRr2nARsovz6AWWy4oLElwcquGSz692DzgZQrCLScPNs5YlC4g== - /jest/27.3.1: - dependencies: - '@jest/core': 27.3.1 - import-local: 3.0.2 - jest-cli: 27.3.1 + integrity: sha512-4WuKcUxtzxBoKOUFbt1MtTY9fJwPVD4aN/4Cgxee7OLetPZn5as2bjfZz98XSf2Zq1JFfhqPZpS+43BmWXKgCA== + /jest/27.4.0: + dependencies: + '@jest/core': 27.4.0 + import-local: 3.0.3 + jest-cli: 27.4.0 dev: true engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 @@ -4272,7 +4386,7 @@ node-notifier: optional: true resolution: - integrity: sha512-U2AX0AgQGd5EzMsiZpYt8HyZ+nSVIh5ujQ9CPp9EQZJMjXIiSZpJNweZl0swatKRoqHWgGKM3zaSwm4Zaz87ng== + integrity: sha512-54SYE6EmGRoHS+9/OCspbb7tAD2WYAvBBXmny2Zp39/QgnNIWZD4KujhAZyRXHWASTBa9/WfXM2oekNBIOFV2A== /js-tokens/3.0.2: dev: true resolution: @@ -4281,18 +4395,18 @@ dev: true resolution: integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== - /js-yaml/3.13.1: + /js-yaml/3.14.1: dependencies: argparse: 1.0.10 esprima: 4.0.1 dev: true hasBin: true resolution: - integrity: sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw== + integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== /jsdom/16.7.0: dependencies: abab: 2.0.5 - acorn: 8.5.0 + acorn: 8.6.0 acorn-globals: 6.0.0 cssom: 0.4.4 cssstyle: 2.3.0 @@ -4316,7 +4430,7 @@ whatwg-encoding: 1.0.5 whatwg-mimetype: 2.3.0 whatwg-url: 8.7.0 - ws: 7.5.5 + ws: 7.5.6 xml-name-validator: 3.0.0 dev: true engines: @@ -4358,20 +4472,20 @@ integrity: sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE= /json5/1.0.1: dependencies: - minimist: 1.2.0 + minimist: 1.2.5 dev: true hasBin: true resolution: integrity: sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== - /json5/2.1.1: - dependencies: - minimist: 1.2.0 + /json5/2.2.0: + dependencies: + minimist: 1.2.5 dev: true engines: node: '>=6' hasBin: true resolution: - integrity: sha512-l+3HXD0GEI3huGq1njuqtzYK8OYJyXMkOLtQ53pjWh89tvWS2h6l+1zMkYWqlb57+SiQodKZyvMEFb2X+KrFhQ== + integrity: sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA== /jsonify/0.0.0: dev: true resolution: @@ -4379,7 +4493,7 @@ /jsonld/5.2.0: dependencies: '@digitalbazaar/http-client': 1.2.0 - canonicalize: 1.0.1 + canonicalize: 1.0.8 lru-cache: 6.0.0 rdf-canonize: 3.0.0 dev: false @@ -4418,13 +4532,13 @@ optional: true resolution: integrity: sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== - /kind-of/6.0.2: + /kind-of/6.0.3: dev: true engines: node: '>=0.10.0' optional: true resolution: - integrity: sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA== + integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== /kleur/3.0.3: dev: true engines: @@ -4471,7 +4585,7 @@ /level-filesystem/1.2.0: dependencies: concat-stream: 1.6.2 - errno: 0.1.7 + errno: 0.1.8 fwd-stream: 1.0.4 level-blobs: 0.1.7 level-peek: 1.0.6 @@ -4528,7 +4642,7 @@ dependencies: bl: 0.8.2 deferred-leveldown: 0.2.0 - errno: 0.1.7 + errno: 0.1.8 prr: 0.0.0 readable-stream: 1.0.34 semver: 2.3.2 @@ -4578,16 +4692,16 @@ dev: false resolution: integrity: sha512-hKA/1YaSB+P+DvKWuR2q1Xzy/iayhNrJ3aveD0OQ9CKn6wUjsdnF/7LavDOJsKP/K5jzW/kXsuduPgRvTFrFJw== - /loader-utils/1.2.3: + /loader-utils/1.4.0: dependencies: big.js: 5.2.2 - emojis-list: 2.1.0 + emojis-list: 3.0.0 json5: 1.0.1 dev: true engines: node: '>=4.0.0' resolution: - integrity: sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA== + integrity: sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA== /locate-path/5.0.0: dependencies: p-locate: 4.1.0 @@ -4612,10 +4726,6 @@ dev: true resolution: integrity: sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= - /lodash/4.17.15: - dev: true - resolution: - integrity: sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== /lodash/4.17.21: dev: true resolution: @@ -4658,16 +4768,16 @@ node: '>=8' resolution: integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== - /make-error/1.3.5: - dev: true - resolution: - integrity: sha512-c3sIjNUow0+8swNwVpqoH4YCShKNFkMaw6oH1mNS2haDZQqkeZFlHS3dhoeEbKKmJB4vXpJucU6oH75aDYeE9g== - /makeerror/1.0.11: - dependencies: - tmpl: 1.0.4 - dev: true - resolution: - integrity: sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw= + /make-error/1.3.6: + dev: true + resolution: + integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== + /makeerror/1.0.12: + dependencies: + tmpl: 1.0.5 + dev: true + resolution: + integrity: sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg== /map-cache/0.2.2: dev: true engines: @@ -4691,9 +4801,9 @@ integrity: sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A== /md5.js/1.3.5: dependencies: - hash-base: 3.0.4 + hash-base: 3.1.0 inherits: 2.0.4 - safe-buffer: 5.2.0 + safe-buffer: 5.2.1 dev: true resolution: integrity: sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg== @@ -4735,7 +4845,7 @@ extend-shallow: 3.0.2 extglob: 2.0.4 fragment-cache: 0.2.1 - kind-of: 6.0.2 + kind-of: 6.0.3 nanomatch: 1.2.13 object.pick: 1.3.0 regex-not: 1.0.2 @@ -4758,26 +4868,26 @@ integrity: sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg== /miller-rabin/4.0.1: dependencies: - bn.js: 4.11.8 + bn.js: 4.12.0 brorand: 1.1.0 dev: true hasBin: true resolution: integrity: sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA== - /mime-db/1.43.0: + /mime-db/1.51.0: dev: true engines: node: '>= 0.6' resolution: - integrity: sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ== - /mime-types/2.1.26: - dependencies: - mime-db: 1.43.0 + integrity: sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g== + /mime-types/2.1.34: + dependencies: + mime-db: 1.51.0 dev: true engines: node: '>= 0.6' resolution: - integrity: sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ== + integrity: sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A== /mimic-fn/2.1.0: dev: true engines: @@ -4798,14 +4908,10 @@ dev: true resolution: integrity: sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== - /minimist/0.0.8: - dev: true - resolution: - integrity: sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= - /minimist/1.2.0: - dev: true - resolution: - integrity: sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= + /minimist/1.2.5: + dev: true + resolution: + integrity: sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== /mixin-deep/1.3.2: dependencies: for-in: 1.0.2 @@ -4816,13 +4922,13 @@ optional: true resolution: integrity: sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== - /mkdirp/0.5.1: - dependencies: - minimist: 0.0.8 + /mkdirp/0.5.5: + dependencies: + minimist: 1.2.5 dev: true hasBin: true resolution: - integrity: sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= + integrity: sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== /mkdirp/1.0.4: dev: true engines: @@ -4842,7 +4948,7 @@ inherits: 2.0.4 parents: 1.0.1 readable-stream: 2.3.7 - resolve: 1.14.2 + resolve: 1.20.0 stream-combiner2: 1.1.1 subarg: 1.0.0 through2: 2.0.5 @@ -4857,10 +4963,10 @@ dev: true resolution: integrity: sha1-VBdxtfh6BJzGVUBHXTrZZnN9aQg= - /moment/2.24.0: - dev: true - resolution: - integrity: sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg== + /moment/2.29.1: + dev: true + resolution: + integrity: sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ== /ms/2.0.0: dev: true resolution: @@ -4878,11 +4984,11 @@ node: '>=8.0' resolution: integrity: sha512-yFCoR+BEcXP0f7G+f0cyTbCe1vQMEFys9803g/EQ1nVGKTcZDZQvR/OIvz8JbpaCPLlDx5By6XSDued2HbgkfQ== - /nan/2.14.0: + /nan/2.15.0: dev: true optional: true resolution: - integrity: sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg== + integrity: sha512-8ZtvEnA2c5aYCZYd1cvgdnU6cqwixRoYg70xPLWUws5ORTa/lnw+u4amixRS/Ac5U5mQVgp9pnlSUnbNWFaWZQ== /nanomatch/1.2.13: dependencies: arr-diff: 4.0.0 @@ -4891,7 +4997,7 @@ extend-shallow: 3.0.2 fragment-cache: 0.2.1 is-windows: 1.0.2 - kind-of: 6.0.2 + kind-of: 6.0.3 object.pick: 1.3.0 regex-not: 1.0.2 snapdragon: 0.8.2 @@ -4923,8 +5029,8 @@ babel-preset-latest: 6.24.1 babel-preset-stage-0: 6.24.1 browserify: 13.3.0 - lodash: 4.17.15 - moment: 2.24.0 + lodash: 4.17.21 + moment: 2.29.1 moment-duration-format: 1.3.0 seamless-immutable: 6.3.0 dev: true @@ -4985,12 +5091,6 @@ dev: true resolution: integrity: sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w== - /number-is-nan/1.0.1: - dev: true - engines: - node: '>=0.10.0' - resolution: - integrity: sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= /nwsapi/2.2.0: dev: true resolution: @@ -5073,7 +5173,7 @@ integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== /optionator/0.8.3: dependencies: - deep-is: 0.1.3 + deep-is: 0.1.4 fast-levenshtein: 2.0.6 levn: 0.3.0 prelude-ls: 1.1.2 @@ -5102,8 +5202,8 @@ integrity: sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= /output-file-sync/1.1.2: dependencies: - graceful-fs: 4.2.3 - mkdirp: 0.5.1 + graceful-fs: 4.2.8 + mkdirp: 0.5.5 object-assign: 4.1.1 dev: true resolution: @@ -5114,17 +5214,17 @@ node: '>=4' resolution: integrity: sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= - /p-limit/2.2.2: + /p-limit/2.3.0: dependencies: p-try: 2.2.0 dev: true engines: node: '>=6' resolution: - integrity: sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ== + integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== /p-locate/4.1.0: dependencies: - p-limit: 2.2.2 + p-limit: 2.3.0 dev: true engines: node: '>=8' @@ -5163,17 +5263,16 @@ dev: true resolution: integrity: sha1-/t1NK/GTp3dF/nHjcdc8MwfZx1E= - /parse-asn1/5.1.5: - dependencies: - asn1.js: 4.10.1 + /parse-asn1/5.1.6: + dependencies: + asn1.js: 5.4.1 browserify-aes: 1.2.0 - create-hash: 1.2.0 evp_bytestokey: 1.0.3 - pbkdf2: 3.0.17 - safe-buffer: 5.2.0 - dev: true - resolution: - integrity: sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ== + pbkdf2: 3.1.2 + safe-buffer: 5.2.1 + dev: true + resolution: + integrity: sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw== /parse-glob/3.0.4: dependencies: glob-base: 0.3.0 @@ -5225,10 +5324,6 @@ node: '>=8' resolution: integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== - /path-parse/1.0.6: - dev: true - resolution: - integrity: sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== /path-parse/1.0.7: dev: true resolution: @@ -5239,18 +5334,18 @@ node: '>= 0.8.0' resolution: integrity: sha1-6GQhf3TDaFDwhSt43Hv31KVyG/I= - /pbkdf2/3.0.17: + /pbkdf2/3.1.2: dependencies: create-hash: 1.2.0 create-hmac: 1.1.7 ripemd160: 2.0.2 - safe-buffer: 5.2.0 + safe-buffer: 5.2.1 sha.js: 2.4.11 dev: true engines: node: '>=0.12' resolution: - integrity: sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA== + integrity: sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA== /picocolors/1.0.0: dev: true resolution: @@ -5293,7 +5388,7 @@ /postcss-calc/8.0.0: dependencies: postcss-selector-parser: 6.0.6 - postcss-value-parser: 4.1.0 + postcss-value-parser: 4.2.0 dev: true peerDependencies: postcss: ^8.2.2 @@ -5304,7 +5399,7 @@ browserslist: 4.18.1 caniuse-api: 3.0.0 colord: 2.9.1 - postcss-value-parser: 4.1.0 + postcss-value-parser: 4.2.0 dev: true engines: node: ^10 || ^12 || >=14.0 @@ -5314,7 +5409,7 @@ integrity: sha512-VVwMrEYLcHYePUYV99Ymuoi7WhKrMGy/V9/kTS0DkCoJYmmjdOMneyhzYUxcNgteKDVbrewOkSM7Wje/MFwxzA== /postcss-convert-values/5.0.2: dependencies: - postcss-value-parser: 4.1.0 + postcss-value-parser: 4.2.0 dev: true engines: node: ^10 || ^12 || >=14.0 @@ -5371,7 +5466,7 @@ integrity: sha512-ipM8Ds01ZUophjDTQYSVP70slFSYg3T0/zyfII5vzhN6V57YSxMgG5syXuwi5VtS8wSf3iL30v0uBdoIVx4Q0g== /postcss-merge-longhand/5.0.4: dependencies: - postcss-value-parser: 4.1.0 + postcss-value-parser: 4.2.0 stylehacks: 5.0.1 dev: true engines: @@ -5395,7 +5490,7 @@ integrity: sha512-cEKTMEbWazVa5NXd8deLdCnXl+6cYG7m2am+1HzqH0EnTdy8fRysatkaXb2dEnR+fdaDxTvuZ5zoBdv6efF6hg== /postcss-minify-font-values/5.0.1: dependencies: - postcss-value-parser: 4.1.0 + postcss-value-parser: 4.2.0 dev: true engines: node: ^10 || ^12 || >=14.0 @@ -5407,7 +5502,7 @@ dependencies: colord: 2.9.1 cssnano-utils: 2.0.1 - postcss-value-parser: 4.1.0 + postcss-value-parser: 4.2.0 dev: true engines: node: ^10 || ^12 || >=14.0 @@ -5420,7 +5515,7 @@ alphanum-sort: 1.0.2 browserslist: 4.18.1 cssnano-utils: 2.0.1 - postcss-value-parser: 4.1.0 + postcss-value-parser: 4.2.0 dev: true engines: node: ^10 || ^12 || >=14.0 @@ -5451,7 +5546,7 @@ dependencies: icss-utils: 5.1.0 postcss-selector-parser: 6.0.6 - postcss-value-parser: 4.1.0 + postcss-value-parser: 4.2.0 dev: true engines: node: ^10 || ^12 || >= 14 @@ -5505,7 +5600,7 @@ /postcss-normalize-display-values/5.0.1: dependencies: cssnano-utils: 2.0.1 - postcss-value-parser: 4.1.0 + postcss-value-parser: 4.2.0 dev: true engines: node: ^10 || ^12 || >=14.0 @@ -5515,7 +5610,7 @@ integrity: sha512-uupdvWk88kLDXi5HEyI9IaAJTE3/Djbcrqq8YgjvAVuzgVuqIk3SuJWUisT2gaJbZm1H9g5k2w1xXilM3x8DjQ== /postcss-normalize-positions/5.0.1: dependencies: - postcss-value-parser: 4.1.0 + postcss-value-parser: 4.2.0 dev: true engines: node: ^10 || ^12 || >=14.0 @@ -5526,7 +5621,7 @@ /postcss-normalize-repeat-style/5.0.1: dependencies: cssnano-utils: 2.0.1 - postcss-value-parser: 4.1.0 + postcss-value-parser: 4.2.0 dev: true engines: node: ^10 || ^12 || >=14.0 @@ -5536,7 +5631,7 @@ integrity: sha512-syZ2itq0HTQjj4QtXZOeefomckiV5TaUO6ReIEabCh3wgDs4Mr01pkif0MeVwKyU/LHEkPJnpwFKRxqWA/7O3w== /postcss-normalize-string/5.0.1: dependencies: - postcss-value-parser: 4.1.0 + postcss-value-parser: 4.2.0 dev: true engines: node: ^10 || ^12 || >=14.0 @@ -5547,7 +5642,7 @@ /postcss-normalize-timing-functions/5.0.1: dependencies: cssnano-utils: 2.0.1 - postcss-value-parser: 4.1.0 + postcss-value-parser: 4.2.0 dev: true engines: node: ^10 || ^12 || >=14.0 @@ -5558,7 +5653,7 @@ /postcss-normalize-unicode/5.0.1: dependencies: browserslist: 4.18.1 - postcss-value-parser: 4.1.0 + postcss-value-parser: 4.2.0 dev: true engines: node: ^10 || ^12 || >=14.0 @@ -5570,7 +5665,7 @@ dependencies: is-absolute-url: 3.0.3 normalize-url: 6.1.0 - postcss-value-parser: 4.1.0 + postcss-value-parser: 4.2.0 dev: true engines: node: ^10 || ^12 || >=14.0 @@ -5580,7 +5675,7 @@ integrity: sha512-qWiUMbvkRx3kc1Dp5opzUwc7MBWZcSDK2yofCmdvFBCpx+zFPkxBC1FASQ59Pt+flYfj/nTZSkmF56+XG5elSg== /postcss-normalize-whitespace/5.0.1: dependencies: - postcss-value-parser: 4.1.0 + postcss-value-parser: 4.2.0 dev: true engines: node: ^10 || ^12 || >=14.0 @@ -5591,7 +5686,7 @@ /postcss-ordered-values/5.0.2: dependencies: cssnano-utils: 2.0.1 - postcss-value-parser: 4.1.0 + postcss-value-parser: 4.2.0 dev: true engines: node: ^10 || ^12 || >=14.0 @@ -5599,7 +5694,7 @@ postcss: ^8.2.15 resolution: integrity: sha512-8AFYDSOYWebJYLyJi3fyjl6CqMEG/UVworjiyK1r573I56kb3e879sCJLGvR3merj+fAdPpVplXKQZv+ey6CgQ== - /postcss-reduce-initial/5.0.1: + /postcss-reduce-initial/5.0.2: dependencies: browserslist: 4.18.1 caniuse-api: 3.0.0 @@ -5609,11 +5704,11 @@ peerDependencies: postcss: ^8.2.15 resolution: - integrity: sha512-zlCZPKLLTMAqA3ZWH57HlbCjkD55LX9dsRyxlls+wfuRfqCi5mSlZVan0heX5cHr154Dq9AfbH70LyhrSAezJw== + integrity: sha512-v/kbAAQ+S1V5v9TJvbGkV98V2ERPdU6XvMcKMjqAlYiJ2NtsHGlKYLPjWWcXlaTKNxooId7BGxeraK8qXvzKtw== /postcss-reduce-transforms/5.0.1: dependencies: cssnano-utils: 2.0.1 - postcss-value-parser: 4.1.0 + postcss-value-parser: 4.2.0 dev: true engines: node: ^10 || ^12 || >=14.0 @@ -5632,7 +5727,7 @@ integrity: sha512-9LXrvaaX3+mcv5xkg5kFwqSzSH1JIObIx51PrndZwlmznwXRfxMddDvo9gve3gVR8ZTKgoFDdWkbRFmEhT4PMg== /postcss-svgo/5.0.3: dependencies: - postcss-value-parser: 4.1.0 + postcss-value-parser: 4.2.0 svgo: 2.8.0 dev: true engines: @@ -5652,10 +5747,10 @@ postcss: ^8.2.15 resolution: integrity: sha512-w3zBVlrtZm7loQWRPVC0yjUwwpty7OM6DnEHkxcSQXO1bMS3RJ+JUS5LFMSDZHJcvGsRwhZinCWVqn8Kej4EDA== - /postcss-value-parser/4.1.0: - dev: true - resolution: - integrity: sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ== + /postcss-value-parser/4.2.0: + dev: true + resolution: + integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== /prelude-ls/1.1.2: dev: true engines: @@ -5669,9 +5764,9 @@ optional: true resolution: integrity: sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks= - /pretty-format/27.3.1: - dependencies: - '@jest/types': 27.2.5 + /pretty-format/27.4.0: + dependencies: + '@jest/types': 27.4.0 ansi-regex: 5.0.1 ansi-styles: 5.2.0 react-is: 17.0.2 @@ -5679,7 +5774,7 @@ engines: node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0 resolution: - integrity: sha512-DR/c+pvFc52nLimLROYjnXPtolawm+uWDxr4FjuLDLUn+ktWnSN851KoHwHzzqq6rfCOjkzN8FLgDrSub6UDuA== + integrity: sha512-n0QR6hMREfp6nLzfVksXMAfIxk1ffOOfbb/FzKHFmRtn9iJKaZXB8WMzLr8a72IASShEAhqK06nlwp1gVWgqKg== /private/0.1.8: dev: true engines: @@ -5710,15 +5805,15 @@ node: '>=0.12' resolution: integrity: sha1-LMfr6Vn8OmYZwEq029yeRS2GS70= - /prompts/2.3.0: + /prompts/2.4.2: dependencies: kleur: 3.0.3 - sisteransi: 1.0.4 + sisteransi: 1.0.5 dev: true engines: node: '>= 6' resolution: - integrity: sha512-NfbbPPg/74fT7wk2XYQ7hAIp9zJyZp5Fu19iRbORqqy1BhtrkZ0fPafBU+7bmn8ie69DpT0R6QpJIN2oisYjJg== + integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q== /prr/0.0.0: dev: true resolution: @@ -5727,18 +5822,18 @@ dev: true resolution: integrity: sha1-0/wRS6BplaRexok/SEzrHXj19HY= - /psl/1.7.0: - dev: true - resolution: - integrity: sha512-5NsSEDv8zY70ScRnOTn7bK7eanl2MvFrOrS/R6x+dBt5g1ghnj9Zv90kO8GwT8gxcu2ANyFprnFYB85IogIJOQ== + /psl/1.8.0: + dev: true + resolution: + integrity: sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ== /public-encrypt/4.0.3: dependencies: - bn.js: 4.11.8 - browserify-rsa: 4.0.1 + bn.js: 4.12.0 + browserify-rsa: 4.1.0 create-hash: 1.2.0 - parse-asn1: 5.1.5 + parse-asn1: 5.1.6 randombytes: 2.1.0 - safe-buffer: 5.2.0 + safe-buffer: 5.2.1 dev: true resolution: integrity: sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q== @@ -5763,6 +5858,7 @@ resolution: integrity: sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM= /querystring/0.2.0: + deprecated: The querystring API is considered Legacy. new code should use the URLSearchParams API instead. dev: true engines: node: '>=0.4.x' @@ -5775,7 +5871,7 @@ /randomatic/3.1.1: dependencies: is-number: 4.0.0 - kind-of: 6.0.2 + kind-of: 6.0.3 math-random: 1.0.4 dev: true engines: @@ -5785,14 +5881,14 @@ integrity: sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw== /randombytes/2.1.0: dependencies: - safe-buffer: 5.2.0 + safe-buffer: 5.2.1 dev: true resolution: integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== /randomfill/1.0.4: dependencies: randombytes: 2.1.0 - safe-buffer: 5.2.0 + safe-buffer: 5.2.1 dev: true resolution: integrity: sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw== @@ -5822,7 +5918,7 @@ integrity: sha1-JyT9aoET1zdkrCiNQ4YnDB2/F/A= /readable-stream/1.0.34: dependencies: - core-util-is: 1.0.2 + core-util-is: 1.0.3 inherits: 2.0.4 isarray: 0.0.1 string_decoder: 0.10.31 @@ -5831,7 +5927,7 @@ integrity: sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw= /readable-stream/1.1.14: dependencies: - core-util-is: 1.0.2 + core-util-is: 1.0.3 inherits: 2.0.4 isarray: 0.0.1 string_decoder: 0.10.31 @@ -5840,7 +5936,7 @@ integrity: sha1-fPTFTvZI44EwhMY23SB54WbAgdk= /readable-stream/2.0.6: dependencies: - core-util-is: 1.0.2 + core-util-is: 1.0.3 inherits: 2.0.4 isarray: 1.0.0 process-nextick-args: 1.0.7 @@ -5851,7 +5947,7 @@ integrity: sha1-j5A0HmilPMySh4jaz80Rs265t44= /readable-stream/2.3.7: dependencies: - core-util-is: 1.0.2 + core-util-is: 1.0.3 inherits: 2.0.4 isarray: 1.0.0 process-nextick-args: 2.0.1 @@ -5864,16 +5960,15 @@ /readable-stream/3.6.0: dependencies: inherits: 2.0.4 - string_decoder: 1.1.1 + string_decoder: 1.3.0 util-deprecate: 1.0.2 - dev: false engines: node: '>= 6' resolution: integrity: sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== /readdirp/2.2.1: dependencies: - graceful-fs: 4.2.3 + graceful-fs: 4.2.8 micromatch: 3.1.10 readable-stream: 2.3.7 dev: true @@ -5882,10 +5977,10 @@ optional: true resolution: integrity: sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ== - /regenerate/1.4.0: - dev: true - resolution: - integrity: sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg== + /regenerate/1.4.2: + dev: true + resolution: + integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A== /regenerator-runtime/0.10.5: dev: true resolution: @@ -5923,7 +6018,7 @@ integrity: sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== /regexpu-core/2.0.0: dependencies: - regenerate: 1.4.0 + regenerate: 1.4.2 regjsgen: 0.2.0 regjsparser: 0.1.5 dev: true @@ -5945,13 +6040,13 @@ optional: true resolution: integrity: sha1-wkvOKig62tW8P1jg1IJJuSN52O8= - /repeat-element/1.1.3: + /repeat-element/1.1.4: dev: true engines: node: '>=0.10.0' optional: true resolution: - integrity: sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== + integrity: sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ== /repeat-string/1.6.1: dev: true engines: @@ -5961,7 +6056,7 @@ integrity: sha1-jcrkcOHIirwtYA//Sndihtp15jc= /repeating/2.0.1: dependencies: - is-finite: 1.0.2 + is-finite: 1.1.0 dev: true engines: node: '>=0.10.0' @@ -5988,6 +6083,7 @@ resolution: integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== /resolve-url/0.2.1: + deprecated: 'https://github.com/lydell/resolve-url#deprecated' dev: true optional: true resolution: @@ -6002,12 +6098,6 @@ dev: true resolution: integrity: sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs= - /resolve/1.14.2: - dependencies: - path-parse: 1.0.6 - dev: true - resolution: - integrity: sha512-EjlOBLBO1kxsUxsKjLt7TAECyKW6fOh1VRkykQkKGzcBbjjPIxBqGh0jf7GJ3k/f5mxMqW3htMD3WdTUVtW8HQ== /resolve/1.20.0: dependencies: is-core-module: 2.8.0 @@ -6024,14 +6114,14 @@ integrity: sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== /rimraf/3.0.2: dependencies: - glob: 7.1.6 + glob: 7.2.0 dev: true hasBin: true resolution: integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== /ripemd160/2.0.2: dependencies: - hash-base: 3.0.4 + hash-base: 3.1.0 inherits: 2.0.4 dev: true resolution: @@ -6056,11 +6146,11 @@ dev: true resolution: integrity: sha512-xRkB+W/m1KLIzPUmG0ofvR+CPNcvuCuNdjVBVS7ALKSxr3EDhnzNceGkGi1m8MToSli13AzKFYH4ie9w3I5L3g== - /rollup-plugin-postcss/4.0.1: + /rollup-plugin-postcss/4.0.2: dependencies: chalk: 4.1.2 concat-with-sourcemaps: 1.1.0 - cssnano: 5.0.11 + cssnano: 5.0.12 import-cwd: 3.0.0 p-queue: 6.6.2 pify: 5.0.0 @@ -6077,14 +6167,14 @@ peerDependencies: postcss: 8.x resolution: - integrity: sha512-kUJHlpDGl9+kDfdUUbnerW0Mx1R0PL/6dgciUE/w19swYDBjug7RQfxIRvRGtO/cvCkynYyU8e/YFMI544vskA== + integrity: sha512-05EaY6zvZdmvPUDi3uCcAQoESDcYnv8ogJJQRp6V5kZ6J6P7uAVJlrTZcaaA20wTH527YTnKfkAoPxWI/jPp4w== /rollup-pluginutils/2.8.2: dependencies: estree-walker: 0.6.1 dev: true resolution: integrity: sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ== - /rollup/2.60.0: + /rollup/2.60.2: dev: true engines: node: '>=10.0.0' @@ -6092,14 +6182,14 @@ optionalDependencies: fsevents: 2.3.2 resolution: - integrity: sha512-cHdv9GWd58v58rdseC8e8XIaPUo8a9cgZpnCMMDGZFDZKEODOiPPEQFXLriWr/TjXzhPPmG5bkAztPsOARIcGQ== + integrity: sha512-1Bgjpq61sPjgoZzuiDSGvbI1tD91giZABgjCQBKM5aYLnzjq52GoDuWVwT/cm/MCxCMPU8gqQvkj8doQ5C8Oqw== /safe-buffer/5.1.2: + dev: true resolution: integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== - /safe-buffer/5.2.0: - dev: true - resolution: - integrity: sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg== + /safe-buffer/5.2.1: + resolution: + integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== /safe-identifier/0.4.2: dev: true resolution: @@ -6136,23 +6226,11 @@ hasBin: true resolution: integrity: sha1-uYSPJdbPNjMwc+ye+IVtQvEjPlI= - /semver/5.7.1: - dev: true - hasBin: true - resolution: - integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== /semver/6.3.0: dev: true hasBin: true resolution: integrity: sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== - /semver/7.1.3: - dev: true - engines: - node: '>=10' - hasBin: true - resolution: - integrity: sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA== /semver/7.3.5: dependencies: lru-cache: 6.0.0 @@ -6181,14 +6259,14 @@ /sha.js/2.4.11: dependencies: inherits: 2.0.4 - safe-buffer: 5.2.0 + safe-buffer: 5.2.1 dev: true hasBin: true resolution: integrity: sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ== /shasum-object/1.0.0: dependencies: - fast-safe-stringify: 2.0.7 + fast-safe-stringify: 2.1.1 dev: true resolution: integrity: sha512-Iqo5rp/3xVi6M4YheapzZhhGPVs0yZwHj7wvwQ1B9z8H6zk+FEnI7y3Teq7qwnekfEhu8WmG2z0z4iWZaxLWVg== @@ -6213,26 +6291,22 @@ node: '>=8' resolution: integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== - /shell-quote/1.7.2: - dev: true - resolution: - integrity: sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg== - /signal-exit/3.0.2: - dev: true - resolution: - integrity: sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= - /signal-exit/3.0.5: - dev: true - resolution: - integrity: sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ== - /simple-concat/1.0.0: - dev: true - resolution: - integrity: sha1-c0TLuLbib7J9ZrL8hvn21Zl1IcY= - /sisteransi/1.0.4: - dev: true - resolution: - integrity: sha512-/ekMoM4NJ59ivGSfKapeG+FWtrmWvA1p6FBZwXrqojw90vJu8lBmrTxCMuBCydKtkaUe2zt4PlxeTKpjwMbyig== + /shell-quote/1.7.3: + dev: true + resolution: + integrity: sha512-Vpfqwm4EnqGdlsBFNmHhxhElJYrdfcxPThu+ryKS5J8L/fhAwLazFZtq+S+TWZ9ANj2piSQLGj6NQg+lKPmxrw== + /signal-exit/3.0.6: + dev: true + resolution: + integrity: sha512-sDl4qMFpijcGw22U5w63KmD3cZJfBuFlVNbVMKje2keoKML7X2UzWbc4XrmEbDwg0NXJc3yv4/ox7b+JWb57kQ== + /simple-concat/1.0.1: + dev: true + resolution: + integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q== + /sisteransi/1.0.5: + dev: true + resolution: + integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== /slash/1.0.0: dev: true engines: @@ -6286,7 +6360,7 @@ atob: 2.1.2 decode-uri-component: 0.2.0 resolve-url: 0.2.1 - source-map-url: 0.4.0 + source-map-url: 0.4.1 urix: 0.1.0 dev: true optional: true @@ -6305,18 +6379,18 @@ dev: true resolution: integrity: sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA== - /source-map-support/0.5.16: - dependencies: - buffer-from: 1.1.1 + /source-map-support/0.5.21: + dependencies: + buffer-from: 1.1.2 source-map: 0.6.1 dev: true resolution: - integrity: sha512-efyLRJDr68D9hBBNIPWFjhpFzURh+KJykQwvMyW5UiZzYwoF6l4YMMDIJJEyFWxWCqfyxLzz6tSfUFR+kXXsVQ== - /source-map-url/0.4.0: + integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== + /source-map-url/0.4.1: dev: true optional: true resolution: - integrity: sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM= + integrity: sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== /source-map/0.5.7: dev: true engines: @@ -6412,7 +6486,7 @@ /string-length/4.0.2: dependencies: char-regex: 1.0.2 - strip-ansi: 6.0.0 + strip-ansi: 6.0.1 dev: true engines: node: '>=10' @@ -6422,16 +6496,16 @@ dev: true resolution: integrity: sha1-qJPtNH5yKZvIO++78qaSqNI51d0= - /string-width/4.2.0: + /string-width/4.2.3: dependencies: emoji-regex: 8.0.0 is-fullwidth-code-point: 3.0.0 - strip-ansi: 6.0.0 + strip-ansi: 6.0.1 dev: true engines: node: '>=8' resolution: - integrity: sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg== + integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== /string_decoder/0.10.31: dev: true resolution: @@ -6439,8 +6513,14 @@ /string_decoder/1.1.1: dependencies: safe-buffer: 5.1.2 + dev: true resolution: integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== + /string_decoder/1.3.0: + dependencies: + safe-buffer: 5.2.1 + resolution: + integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== /strip-ansi/3.0.1: dependencies: ansi-regex: 2.1.1 @@ -6449,14 +6529,14 @@ node: '>=0.10.0' resolution: integrity: sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= - /strip-ansi/6.0.0: + /strip-ansi/6.0.1: dependencies: ansi-regex: 5.0.1 dev: true engines: node: '>=8' resolution: - integrity: sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== + integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== /strip-bom/4.0.0: dev: true engines: @@ -6488,7 +6568,7 @@ dependencies: css: 3.0.0 debug: 3.1.0 - glob: 7.1.6 + glob: 7.2.0 mkdirp: 1.0.4 safer-buffer: 2.1.2 sax: 1.2.4 @@ -6500,7 +6580,7 @@ integrity: sha512-MuzIIVRSbc8XxHH7FjkvWqkIcr1BvoMZoR/oFuAJDlh7VSaNJzrB4uJ38GRQa+mWjLXODAMzeDe0xi9GYbGwnw== /subarg/1.0.0: dependencies: - minimist: 1.2.0 + minimist: 1.2.5 dev: true resolution: integrity: sha1-9izxdYHplrSPyWVpn1TAauJouNI= @@ -6518,14 +6598,14 @@ node: '>=4' resolution: integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== - /supports-color/7.1.0: + /supports-color/7.2.0: dependencies: has-flag: 4.0.0 dev: true engines: node: '>=8' resolution: - integrity: sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g== + integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== /supports-color/8.1.1: dependencies: has-flag: 4.0.0 @@ -6534,15 +6614,15 @@ node: '>=10' resolution: integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== - /supports-hyperlinks/2.1.0: + /supports-hyperlinks/2.2.0: dependencies: has-flag: 4.0.0 - supports-color: 7.1.0 + supports-color: 7.2.0 dev: true engines: node: '>=8' resolution: - integrity: sha512-zoE5/e+dnEijk6ASB6/qrK+oYdm2do1hjoLWrqUC/8WEIW1gbxFcKuBof7sW8ArN6e+AYvsE8HBGiVRWL/F5CA== + integrity: sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ== /svgo/2.8.0: dependencies: '@trysound/sax': 0.2.0 @@ -6570,8 +6650,8 @@ integrity: sha512-YPPlu67mdnHGTup2A8ff7BC2Pjq0e0Yp/IyTFN03zWO0RcK07uLcbi7C2KpGR2FvWbaB0+bfE27a+sBKebSo7w== /terminal-link/2.1.1: dependencies: - ansi-escapes: 4.3.0 - supports-hyperlinks: 2.1.0 + ansi-escapes: 4.3.2 + supports-hyperlinks: 2.2.0 dev: true engines: node: '>=8' @@ -6579,8 +6659,8 @@ integrity: sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ== /test-exclude/6.0.0: dependencies: - '@istanbuljs/schema': 0.1.2 - glob: 7.1.6 + '@istanbuljs/schema': 0.1.3 + glob: 7.2.0 minimatch: 3.0.4 dev: true engines: @@ -6614,10 +6694,10 @@ dev: true resolution: integrity: sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q= - /tmpl/1.0.4: - dev: true - resolution: - integrity: sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE= + /tmpl/1.0.5: + dev: true + resolution: + integrity: sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== /to-arraybuffer/1.0.1: dev: true resolution: @@ -6675,7 +6755,7 @@ integrity: sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== /tough-cookie/4.0.0: dependencies: - psl: 1.7.0 + psl: 1.8.0 punycode: 2.1.1 universalify: 0.1.2 dev: true @@ -6697,18 +6777,18 @@ node: '>=0.10.0' resolution: integrity: sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM= - /ts-jest/27.0.7_2c4ca6574207836d1023f54689cc81ac: - dependencies: - '@types/jest': 27.0.2 + /ts-jest/27.0.7_bfad92f4d8caf69d57ace222bbbf1afc: + dependencies: + '@types/jest': 27.0.3 bs-logger: 0.2.6 fast-json-stable-stringify: 2.1.0 - jest: 27.3.1 - jest-util: 27.3.1 - json5: 2.1.1 + jest: 27.4.0 + jest-util: 27.4.0 + json5: 2.2.0 lodash.memoize: 4.1.2 - make-error: 1.3.5 - semver: 7.1.3 - typescript: 4.4.4 + make-error: 1.3.6 + semver: 7.3.5 + typescript: 4.5.2 yargs-parser: 20.2.9 dev: true engines: @@ -6751,12 +6831,12 @@ node: '>=4' resolution: integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== - /type-fest/0.8.1: - dev: true - engines: - node: '>=8' - resolution: - integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== + /type-fest/0.21.3: + dev: true + engines: + node: '>=10' + resolution: + integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== /typedarray-to-buffer/1.0.4: dev: true resolution: @@ -6771,13 +6851,13 @@ dev: true resolution: integrity: sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= - /typescript/4.4.4: + /typescript/4.5.2: dev: true engines: node: '>=4.2.0' hasBin: true resolution: - integrity: sha512-DqGhF5IKoBl8WNf8C1gu8q0xZSInh9j1kJJMqT3a94w1JzVaBU4EXOSMrz9yDqMT0xt3selp83fuFMQ0uzv6qA== + integrity: sha512-5BlMof9H1yGt0P8/WF+wPNw6GfctgGjXp5hkblpyT+8rkASSmkUKMXrxR0Xg8ThVCi/JnHQiKXeBaEwCeQwMFw== /umd/3.0.3: dev: true hasBin: true @@ -6788,7 +6868,7 @@ acorn-node: 1.8.2 dash-ast: 1.0.0 get-assigned-identifiers: 1.2.0 - simple-concat: 1.0.0 + simple-concat: 1.0.1 xtend: 4.0.2 dev: true hasBin: true @@ -6823,6 +6903,7 @@ resolution: integrity: sha1-g3aHP30jNRef+x5vw6jtDfyKtVk= /urix/0.1.0: + deprecated: 'Please see https://github.com/lydell/urix#deprecated' dev: true optional: true resolution: @@ -6865,8 +6946,8 @@ integrity: sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A== /v8-to-istanbul/8.1.0: dependencies: - '@types/istanbul-lib-coverage': 2.0.1 - convert-source-map: 1.7.0 + '@types/istanbul-lib-coverage': 2.0.3 + convert-source-map: 1.8.0 source-map: 0.7.3 dev: true engines: @@ -6905,12 +6986,12 @@ node: '>=10' resolution: integrity: sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA== - /walker/1.0.7: - dependencies: - makeerror: 1.0.11 - dev: true - resolution: - integrity: sha1-L3+bj9ENZ3JisYqITijRlhjgKPs= + /walker/1.0.8: + dependencies: + makeerror: 1.0.12 + dev: true + resolution: + integrity: sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ== /webidl-conversions/5.0.0: dev: true engines: @@ -6960,9 +7041,9 @@ integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== /wrap-ansi/7.0.0: dependencies: - ansi-styles: 4.2.1 - string-width: 4.2.0 - strip-ansi: 6.0.0 + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 dev: true engines: node: '>=10' @@ -6972,16 +7053,16 @@ dev: true resolution: integrity: sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= - /write-file-atomic/3.0.1: + /write-file-atomic/3.0.3: dependencies: imurmurhash: 0.1.4 is-typedarray: 1.0.0 - signal-exit: 3.0.2 + signal-exit: 3.0.6 typedarray-to-buffer: 3.1.5 dev: true resolution: - integrity: sha512-JPStrIyyVJ6oCSz/691fAjFtefZ6q+fP6tm+OS4Qw6o+TGQxNp1ziY2PgS+X/m0V8OWhZiO/m4xSj+Pr4RrZvw== - /ws/7.5.5: + integrity: sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== + /ws/7.5.6: dev: true engines: node: '>=8.3.0' @@ -6994,7 +7075,7 @@ utf-8-validate: optional: true resolution: - integrity: sha512-BAkMFcAzl8as1G/hArkxOxq3G7pjUqQ3gzYbLL0/5zNkph70e+lCoxBGnm6AW1+/aiNeV4fnKqZ8m4GZewmH2w== + integrity: sha512-6GLgCqo2cy2A2rjCNFlxQS6ZljG/coZfZXclldI8FB/1G3CCI36Zd8xy2HrFVACi8tfk5XrgLQEk+P0Tnz9UcA== /xml-name-validator/3.0.0: dev: true resolution: @@ -7065,7 +7146,7 @@ escalade: 3.1.1 get-caller-file: 2.0.5 require-directory: 2.1.1 - string-width: 4.2.0 + string-width: 4.2.3 y18n: 5.0.8 yargs-parser: 20.2.9 dev: true @@ -7082,6 +7163,7 @@ '@types/jsonld': ^1.5.6 '@types/n3': ^1.10.4 '@types/rollup-plugin-postcss': ^3.1.4 + immutable: ^4.0.0 jest: ^27.3.1 jsonld: ^5.2.0 lit: ^2.0.2
--- a/src/graph_view.ts Thu Nov 25 18:52:07 2021 -0800 +++ b/src/graph_view.ts Tue Nov 30 00:14:37 2021 -0800 @@ -1,87 +1,42 @@ -import { html, TemplateResult } from 'lit'; -import { DataFactory, Literal, Store, NamedNode, Quad, Quad_Object, Term, Util } from 'n3'; - -import { SuffixLabels } from './suffixLabels'; +import { html, TemplateResult } from "lit"; +import { DataFactory, Literal, NamedNode, Quad, Store, Term, Util } from "n3"; +import { SuffixLabels } from "./suffixLabels"; +import { + groupByRdfType, + MultiSubjsTypeBlockLayout, + predsForSubj, + TypeToSubjs, +} from "./tabulate"; const { namedNode } = DataFactory; -// // import ns from 'n3/src/IRIs'; -// // const { rdf } = ns; -const rdf = { - type: namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#type") -}; - -type TypeToSubjs = Map<NamedNode, Set<NamedNode>>; -// When there are multiple types, an arbitrary one is used. -function groupByRdfType( - graph: Store -): { byType: TypeToSubjs; untyped: Set<NamedNode> } { - const rdfType = rdf.type; - const byType: TypeToSubjs = new Map(); - const untyped: Set<NamedNode> = new Set(); // subjs - const internSubjs = new Map<string, NamedNode>(); - graph.forEach( - q => { - if (!Util.isNamedNode(q.subject)) { - throw new Error("unsupported " + q.subject.value); - } - const subj = q.subject as NamedNode; - - let subjType: NamedNode | null = null; - - graph.forObjects( - (o: Quad_Object) => { - subjType = o as NamedNode; - }, - subj, - rdfType, - null - ); - - if (subjType !== null) { - // (subj, rdf:type, subjType) in graph - if (!byType.has(subjType)) { - byType.set(subjType, new Set()); - } - (byType.get(subjType) as Set<NamedNode>).add(subj); - } else { - // no rdf:type stmt in graph - if (!internSubjs.has(subj.value)) { - internSubjs.set(subj.value, subj); - } - const intSubj: NamedNode = internSubjs.get( - subj.value as string - ) as NamedNode; - untyped.add(intSubj); - } - }, - null, - null, - null, - null - ); - return { byType: byType, untyped: untyped }; +// https://github.com/rdfjs/N3.js/issues/265 +if ((Literal.prototype as any).hashCode === undefined) { + (Literal.prototype as any).hashCode = () => 0; } - +if ((NamedNode.prototype as any).hashCode === undefined) { + (NamedNode.prototype as any).hashCode = () => 0; +} class NodeDisplay { labels: SuffixLabels; constructor(labels: SuffixLabels) { this.labels = labels; } - getHtml(n: Term | NamedNode): TemplateResult { + render(n: Term | NamedNode): TemplateResult { if (Util.isLiteral(n)) { n = n as Literal; let dtPart: any = ""; - if (n.datatype) { + if ( + n.datatype && + n.datatype.value != "http://www.w3.org/2001/XMLSchema#string" && // boring + n.datatype.value != + "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString" // boring + ) { dtPart = html` - ^^<span class="literalType"> - ${this.getHtml(n.datatype)} - </span> + ^^<span class="literalType"> ${this.render(n.datatype)} </span> `; } - return html` - <span class="literal">${n.value}${dtPart}</span> - `; + return html` <span class="literal">${n.value}${dtPart}</span> `; } if (Util.isNamedNode(n)) { @@ -92,7 +47,7 @@ ["http://www.w3.org/1999/02/22-rdf-syntax-ns#", "rdf:"], ["http://www.w3.org/2000/01/rdf-schema#", "rdfs:"], ["http://purl.org/dc/elements/1.1/", "dc:"], - ["http://www.w3.org/2001/XMLSchema#", "xsd:"] + ["http://www.w3.org/2001/XMLSchema#", "xsd:"], ]) { if (uriValue.startsWith(long)) { uriValue = short + uriValue.substr(long.length); @@ -108,14 +63,10 @@ uriValue = dn; } - return html` - <a class="graphUri" href="${n.value}">${uriValue}</a> - `; + return html` <a class="graphUri" href="${n.value}">${uriValue}</a> `; } - return html` - [${n.termType} ${n.value}] - `; + return html` [${n.termType} ${n.value}] `; } } @@ -155,42 +106,31 @@ ); } - _subjBlock(subj: NamedNode) { - const predsSet: Set<NamedNode> = new Set(); - this.graph.forEach( - (q: Quad) => { - predsSet.add(q.predicate as NamedNode); - }, - subj, - null, - null, - null - ); - const preds = Array.from(predsSet.values()); - preds.sort(); + _subjPredObjsBlock(subj: NamedNode) { + const columns = predsForSubj(this.graph, subj); return html` <div class="subject"> - ${this.nodeDisplay.getHtml(subj)} + ${this.nodeDisplay.render(subj)} <!-- todo: special section for uri/type-and-icon/label/comment --> <div> - ${preds.map(p => { - return this._predBlock(subj, p); + ${columns.map((p) => { + return this._predObjsBlock(subj, p); })} </div> </div> `; } - _objBlock(obj: Term) { + _objCell(obj: Term) { return html` <div class="object"> - ${this.nodeDisplay.getHtml(obj)} + ${this.nodeDisplay.render(obj)} <!-- indicate what source or graph said this stmt --> </div> `; } - _predBlock(subj: NamedNode, pred: NamedNode) { + _predObjsBlock(subj: NamedNode, pred: NamedNode) { const objsSet = new Set<Term>(); this.graph.forEach( (q: Quad) => { @@ -205,109 +145,69 @@ objs.sort(); return html` <div class="predicate"> - ${this.nodeDisplay.getHtml(pred)} - <div> - ${objs.map(this._objBlock.bind(this))} - </div> + ${this.nodeDisplay.render(pred)} + <div>${objs.map(this._objCell.bind(this))}</div> </div> `; } - byTypeBlock(byType: TypeToSubjs, typeUri: NamedNode) { - const subjSet = byType.get(typeUri); - const subjs: Array<NamedNode> = subjSet ? Array.from(subjSet) : []; - subjs.sort(); - - const graphCells = new Map<string, Set<Term>>(); // [subj, pred] : objs - const makeCellKey = (subj: NamedNode, pred: NamedNode) => - subj.value + "|||" + pred.value; - const preds = new Set<NamedNode>(); + _drawObj(obj: Term): TemplateResult { + return html` <div>${this.nodeDisplay.render(obj)}</div> `; + } - subjs.forEach((subj: NamedNode) => { - this.graph.forEach( - (q: Quad) => { - if (!Util.isNamedNode(q.predicate)) { - throw new Error(); - } - preds.add(q.predicate as NamedNode); - const cellKey = makeCellKey(subj, q.predicate as NamedNode); - if (!graphCells.has(cellKey)) { - graphCells.set(cellKey, new Set<Term>()); - } - graphCells.get(cellKey)!.add(q.object); - }, - subj, - null, - null, - null - ); - }); - const predsList = Array.from(preds); - predsList.splice(predsList.indexOf(rdf.type), 1); - // also pull out label, which should be used on 1st column - predsList.sort(); + _drawColumnHead(pred: NamedNode): TemplateResult { + return html` <th>${this.nodeDisplay.render(pred)}</th> `; + } - const thead = () => { - const predColumnHead = (pred: NamedNode) => { - return html` - <th>${this.nodeDisplay.getHtml(pred)}</th> - `; - }; - return html` - <thead> - <tr> - <th></th> - ${predsList.map(predColumnHead)} - </tr> - </thead> - `; - }; + _thead(layout: MultiSubjsTypeBlockLayout): TemplateResult { + return html` + <thead> + <tr> + <th></th> + ${layout.preds.map(this._drawColumnHead.bind(this))} + </tr> + </thead> + `; + } - const instanceRow = (subj: NamedNode) => { - const cell = (pred: NamedNode) => { - const objs = graphCells.get(subj + "|||" + pred); - if (!objs) { - return html` - <td></td> - `; - } - const objsList = Array.from(objs); - objsList.sort(); - const draw = (obj: Term) => { - return html` - <div>${this.nodeDisplay.getHtml(obj)}</div> - `; - }; - return html` - <td>${objsList.map(draw)}</td> - `; - }; + _msbCell(layout: MultiSubjsTypeBlockLayout, subj: NamedNode) { + return (pred: NamedNode): TemplateResult => { + const objs = layout.graphCells.get(layout.makeCellKey(subj, pred)); + if (!objs || !objs.size) { + return html` <td></td> `; + } + const objsList = Array.from(objs); + objsList.sort(); + return html` <td>${objsList.map(this._drawObj.bind(this))}</td> `; + }; + } + _instanceRow(layout: MultiSubjsTypeBlockLayout) { + return (subj: NamedNode): TemplateResult => { return html` <tr> - <td>${this.nodeDisplay.getHtml(subj)}</td> - ${predsList.map(cell)} + <td>${this.nodeDisplay.render(subj)}</td> + ${layout.preds.map(this._msbCell(layout, subj))} </tr> `; }; + } + + _multiSubjsTypeBlock(byType: TypeToSubjs, typeUri: NamedNode) { + const layout = new MultiSubjsTypeBlockLayout(this.graph, byType, typeUri); return html` - <div>[icon] ${this.nodeDisplay.getHtml(typeUri)} resources</div> + <div>[icon] ${this.nodeDisplay.render(typeUri)} type resources</div> <div class="typeBlockScroll"> <table class="typeBlock"> - ${thead()} ${subjs.map(instanceRow)} + ${this._thead(layout)} ${layout.subjs.map(this._instanceRow(layout))} </table> </div> `; } makeTemplate(): TemplateResult { - const { byType, untyped } = groupByRdfType(this.graph); - const typedSubjs = Array.from(byType.keys()); - typedSubjs.sort(); - - const untypedSubjs = Array.from(untyped.values()); - untypedSubjs.sort(); + const { byType, typedSubjs, untypedSubjs } = groupByRdfType(this.graph); return html` <section> @@ -317,9 +217,11 @@ These statements are all in the <span data-bind="html: $root.createCurie(graphUri())">...</span> graph.--> </div> - ${typedSubjs.map((t: NamedNode) => this.byTypeBlock(byType, t))} + ${typedSubjs.map((t: NamedNode) => + this._multiSubjsTypeBlock(byType, t) + )} <div class="spoGrid"> - ${untypedSubjs.map(this._subjBlock.bind(this))} + ${untypedSubjs.map(this._subjPredObjsBlock.bind(this))} </div> </section> `;
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/tabulate.test.ts Tue Nov 30 00:14:37 2021 -0800 @@ -0,0 +1,66 @@ +import { groupByRdfType } from "./tabulate"; +import { + Literal, + DataFactory, + Store, + Prefixes, + Parser, + Quad, + NamedNode, +} from "n3"; +import Immutable from "immutable"; +const { namedNode } = DataFactory; + +describe("equality", () => { + test("investigation of https://github.com/rdfjs/N3.js/issues/265", () => { + const x = namedNode("x"); + const x2 = namedNode("x"); + // (NamedNode.prototype as any).hashCode = () => 0; + // expect((x as any).hashCode()).toEqual((x2 as any).hashCode()) + expect(x === x2).toBeFalsy(); + expect(x == x2).toBeFalsy(); + expect(x.equals(x2)).toBeTruthy(); + let imap = Immutable.Map(); + imap = imap.set(x, 11); + imap = imap.set(x, 22); + imap = imap.set(x2, 33); + expect(imap.has(x)).toBeTruthy(); + expect(imap.has(x2)).toBeTruthy(); + expect(imap.size).toEqual(1); + }); +}); + +describe("groupByRdfType", () => { + test("finds multiple graphs", () => {}); + test("works", async () => { + const store = new Store(); + + const parser = new Parser(); + await new Promise((res, rej) => { + parser.parse( + `PREFIX : <urn:> + :rs1 a :Foo; :pred1 "obj1" . + :rs2 a :Foo; :pred1 "obj2" . + :rs3 a :Bar . + :rs4 :pred1 "obj4" . +`, + (error, quad: Quad, prefixes: Prefixes) => { + if (quad) { + store.addQuad(quad); + } else { + res(undefined); + } + } + ); + }); + const grouped = groupByRdfType(store); + expect(Array.from(grouped.byType.keys())).toHaveLength(2); + expect(grouped.byType.get(namedNode("urn:Foo"))).toEqual( + Immutable.Set([namedNode("urn:rs1"), namedNode("urn:rs2")]) + ); + expect(grouped.byType.get(namedNode("urn:Bar"))).toEqual( + Immutable.Set([namedNode("urn:rs3")]) + ); + expect(grouped.untypedSubjs).toEqual([namedNode("urn:rs4")]); + }); +});
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/tabulate.ts Tue Nov 30 00:14:37 2021 -0800 @@ -0,0 +1,161 @@ +// Organize graph data into tables (column orders, etc) for the view layer. + +import Immutable from "immutable"; // mostly using this for the builtin equals() testing, since NamedNode(x)!=NamedNode(x) +import { + DataFactory, + NamedNode, + Quad, + Quad_Object, + Store, + Term, + Util, +} from "n3"; + +const { namedNode } = DataFactory; + +// // import ns from 'n3/src/IRIs'; +// // const { rdf } = ns; +export const rdf = { + type: namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"), +}; + +type UriSet = Immutable.Set<NamedNode>; +export type TypeToSubjs = Immutable.Map<NamedNode, UriSet>; + +// https://github.com/rdfjs/N3.js/issues/265 +if ((NamedNode.prototype as any).hashCode === undefined) { + (NamedNode.prototype as any).hashCode = () => 0; +} + +function getType(graph: Store, subj: NamedNode): NamedNode | null { + let subjType: NamedNode | null = null; + + graph.forObjects( + (o: Quad_Object) => { + subjType = o as NamedNode; + }, + subj, + rdf.type, + null + ); + return subjType; +} + +// When there are multiple types, an arbitrary one is used. +export function groupByRdfType( + graph: Store +): { byType: TypeToSubjs; typedSubjs: NamedNode[]; untypedSubjs: NamedNode[] } { + let byType: TypeToSubjs = Immutable.Map(); + let untyped: UriSet = Immutable.Set(); // subjs + const internSubjs = new Map<string, NamedNode>(); + graph.forEach( + (q) => { + if (!Util.isNamedNode(q.subject)) { + throw new Error("unsupported " + q.subject.value); + } + const subj = q.subject as NamedNode; + + const subjType = getType(graph, subj); + + if (subjType !== null) { + // (subj, rdf:type, subjType) in graph + const oldKeys = Array.from(byType.keys()); + const oldVal = byType.get(subjType, Immutable.Set<NamedNode>()); + const newVal = oldVal.add(subj); + byType = byType.set(subjType, newVal); + } else { + untyped = untyped.add(subj); + } + }, + null, + null, + null, + null + ); + + const typedSubjs = Array.from(byType.keys()); + typedSubjs.sort(); + + const untypedSubjs = Array.from(untyped.values()); + untypedSubjs.sort(); + return { byType: byType, typedSubjs: typedSubjs, untypedSubjs: untypedSubjs }; +} + +export function predsForSubj(graph: Store, typeUri: NamedNode): NamedNode[] { + const predsSet: Set<NamedNode> = new Set(); + graph.forEach( + (q: Quad) => { + predsSet.add(q.predicate as NamedNode); + }, + typeUri, + null, + null, + null + ); + const preds = Array.from(predsSet.values()); + preds.sort(); + return preds; +} + +interface ISP { + subj: NamedNode; + pred: NamedNode; +} +const SP = Immutable.Record<ISP>({ + subj: new NamedNode(""), + pred: new NamedNode(""), +}); + +export class MultiSubjsTypeBlockLayout { + subjs: NamedNode[]; + preds: NamedNode[]; + graphCells: Immutable.Map<ISP, Immutable.Set<Term>>; + constructor(graph: Store, byType: TypeToSubjs, typeUri: NamedNode) { + const subjSet = byType.get(typeUri); + this.subjs = subjSet ? Array.from(subjSet) : []; + this.subjs.sort(); + + let preds = Immutable.Set<NamedNode>(); + + this.graphCells = Immutable.Map<ISP, Immutable.Set<Term>>().withMutations( + (mutGraphCells) => { + this.subjs.forEach((subj: NamedNode) => { + graph.forEach( + (q: Quad) => { + if (!Util.isNamedNode(q.predicate)) { + throw new Error(); + } + + const pred = q.predicate as NamedNode; + if (pred.equals(rdf.type)) { + // the whole block is labeled with the type + return; + } + preds = preds.add(pred); + const cellKey = this.makeCellKey(subj, pred); + mutGraphCells.set( + cellKey, + mutGraphCells.get(cellKey, Immutable.Set<Term>()).add(q.object) + ); + }, + subj, + null, + null, + null + ); + }); + } + ); + this.preds = Array.from(preds); + this.preds.splice(this.preds.indexOf(rdf.type), 1); + // also pull out label, which should be used on 1st column + this.preds.sort(); + } + + makeCellKey(subj: NamedNode, pred: NamedNode): ISP { + return SP({ + subj: subj, + pred: pred, + }); + } +}