diff --git a/.changeset/moody-pots-share.md b/.changeset/moody-pots-share.md new file mode 100644 index 0000000..186e996 --- /dev/null +++ b/.changeset/moody-pots-share.md @@ -0,0 +1,5 @@ +--- +"remark-shiki-twoslash": patch +--- + +Adds the TypeScript version to the cache key for twoslash diff --git a/VISION.md b/VISION.md index a5eac32..60227ea 100644 --- a/VISION.md +++ b/VISION.md @@ -15,7 +15,7 @@ Things I care about which might affect scope: ### Long Term Vision -Today, early June 2021, Shiki Twoslash is bascially 1.0'd. It does everything the TypeScript website needs, +Today, early June 2021, Shiki Twoslash is basically 1.0'd. It does everything the TypeScript website needs, and is in a good position to be used in blogs as seen on [fatihkalifa.com](https://fatihkalifa.com) and [cpojer.net](https://cpojer.net), and on serious technical documentation sites like TypeScript. I, Orta, intend to keep maintaining Shiki Twoslash for a very long time, which means big changes will need an issue ahead of time because I can't maintain what I don't understand. Smaller things I can be flexible with. @@ -28,4 +28,6 @@ In [the website](https://shikijs.github.io/twoslash/) I describe Shiki Twoslash What that means is that the underlaying tokens -> HTML renderer is a complete fork from Shiki. E.g. [these files](packages/shiki-twoslash/src/renderers) won't call the original shiki renderers. I don't think I'll ever commit to re-using Shiki at at that level. Which means that there are features which Shiki may implement differently from Shiki Twoslash. For example, I copied [gatsby-remark-vscode](https://github.com/andrewbranch/gatsby-remark-vscode)'s line highlighting syntax and shiki may not. -We can take ideas (and features) from Shiki, and move them upstream too but convergence isn't a goal. \ No newline at end of file +We can take ideas (and features) from Shiki, and move them upstream too but convergence isn't a goal. + +(2023 edit: there may be a world in which [Shiki's plugin support](https://github.com/shikijs/shiki/pull/381) is enough for Twoslash, if that happens, I'm open to moving to that.) \ No newline at end of file diff --git a/packages/remark-shiki-twoslash/src/caching.ts b/packages/remark-shiki-twoslash/src/caching.ts index e19005a..2ba0cb0 100644 --- a/packages/remark-shiki-twoslash/src/caching.ts +++ b/packages/remark-shiki-twoslash/src/caching.ts @@ -25,9 +25,11 @@ export const cachedTwoslashCall = ( const { createHash } = require("crypto") const { readFileSync, existsSync, mkdirSync, writeFileSync } = require("fs") const { join } = require("path") + const shikiVersion = require('@typescript/twoslash/package.json').version + const tsVersion = require('typescript/package.json').version const shasum = createHash("sha1") - const codeSha = shasum.update(`${code}-${shikiVersion}`).digest("hex") + const codeSha = shasum.update(`${code}-${shikiVersion}-${tsVersion}`).digest("hex") const getNmCache = () => { if (__dirname.includes("node_modules")) { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 1e137db..cabb60c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,4 +1,4 @@ -lockfileVersion: 5.4 +lockfileVersion: 5.3 importers: @@ -174,7 +174,7 @@ importers: jest-file-snapshot: 0.5.0 prettier: 2.3.0 remark: 13.0.0 - tsdx: 0.14.1 + tsdx: 0.14.1_@types+node@14.14.31 tslib: 1.14.1 unified: 8.4.2 @@ -2054,7 +2054,7 @@ packages: ansi-escapes: 4.3.2 chalk: 3.0.0 exit: 0.1.2 - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 jest-changed-files: 25.5.0 jest-config: 25.5.4 jest-haste-map: 25.5.1 @@ -2200,7 +2200,7 @@ packages: collect-v8-coverage: 1.0.1 exit: 0.1.2 glob: 7.1.7 - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 istanbul-lib-coverage: 3.0.0 istanbul-lib-instrument: 4.0.3 istanbul-lib-report: 3.0.0 @@ -2216,7 +2216,7 @@ packages: terminal-link: 2.1.1 v8-to-istanbul: 4.1.4 optionalDependencies: - node-notifier: registry.npmjs.org/node-notifier/6.0.0 + node-notifier: 6.0.0 transitivePeerDependencies: - supports-color dev: true @@ -2263,7 +2263,7 @@ packages: engines: {node: '>= 8.3'} dependencies: callsites: 3.1.0 - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 source-map: 0.6.1 dev: true @@ -2272,7 +2272,7 @@ packages: engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} dependencies: callsites: 3.1.0 - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 source-map: 0.6.1 dev: true @@ -2301,7 +2301,7 @@ packages: engines: {node: '>= 8.3'} dependencies: '@jest/test-result': 25.5.0 - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 jest-haste-map: 25.5.1 jest-runner: 25.5.4 jest-runtime: 25.5.4 @@ -2317,7 +2317,7 @@ packages: engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} dependencies: '@jest/test-result': 27.0.2 - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 jest-haste-map: 27.0.5 jest-runtime: 27.0.5 transitivePeerDependencies: @@ -2334,7 +2334,7 @@ packages: chalk: 3.0.0 convert-source-map: 1.7.0 fast-json-stable-stringify: 2.1.0 - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 jest-haste-map: 25.5.1 jest-regex-util: 25.2.6 jest-util: 25.5.0 @@ -2504,7 +2504,7 @@ packages: fastq: 1.11.1 dev: true - /@rollup/plugin-babel/5.3.0_kjfyxipscbj5lcvxjjlpxecv4a: + /@rollup/plugin-babel/5.3.0_@babel+core@7.14.3+rollup@1.32.1: resolution: {integrity: sha512-9uIC8HZOnVLrLHxayq/PTzw+uS25E14KPUBh5ktF+18Mjo5yK0ToMMx6epY0uEgkjwJw0aBW4x2horYXh8juWw==} engines: {node: '>= 10.0.0'} peerDependencies: @@ -2888,7 +2888,7 @@ packages: '@types/yargs-parser': 20.2.0 dev: true - /@typescript-eslint/eslint-plugin/2.34.0_jxzg2k43owi4xwrqkezmr5eq6m: + /@typescript-eslint/eslint-plugin/2.34.0_4df26d2b9b7591cbda305132c8f490f3: resolution: {integrity: sha512-4zY3Z88rEE99+CNvTbXSyovv2z9PNOVffTWD2W8QF5s2prBQtwN2zadqERcrHpcR7O/+KMI3fcTAmUUhK/iQcQ==} engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} peerDependencies: @@ -2899,8 +2899,8 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/experimental-utils': 2.34.0_hejjmlztrvmnsks456jx6n7lwi - '@typescript-eslint/parser': 2.34.0_hejjmlztrvmnsks456jx6n7lwi + '@typescript-eslint/experimental-utils': 2.34.0_eslint@6.8.0+typescript@3.9.9 + '@typescript-eslint/parser': 2.34.0_eslint@6.8.0+typescript@3.9.9 eslint: 6.8.0 functional-red-black-tree: 1.0.1 regexpp: 3.1.0 @@ -2910,7 +2910,7 @@ packages: - supports-color dev: true - /@typescript-eslint/experimental-utils/2.34.0_hejjmlztrvmnsks456jx6n7lwi: + /@typescript-eslint/experimental-utils/2.34.0_eslint@6.8.0+typescript@3.9.9: resolution: {integrity: sha512-eS6FTkq+wuMJ+sgtuNTtcqavWXqsflWcfBnlYhg/nS4aZ1leewkXGbvBhaapn1q6qf4M71bsR1tez5JTRMuqwA==} engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} peerDependencies: @@ -2926,7 +2926,7 @@ packages: - typescript dev: true - /@typescript-eslint/parser/2.34.0_hejjmlztrvmnsks456jx6n7lwi: + /@typescript-eslint/parser/2.34.0_eslint@6.8.0+typescript@3.9.9: resolution: {integrity: sha512-03ilO0ucSD0EPTw2X4PntSIRFtDPWjrVq7C3/Z3VQHRC7+13YB55rcJI3Jt+YgeHbjUdJPcPa7b23rXCBokuyA==} engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} peerDependencies: @@ -2937,7 +2937,7 @@ packages: optional: true dependencies: '@types/eslint-visitor-keys': 1.0.0 - '@typescript-eslint/experimental-utils': 2.34.0_hejjmlztrvmnsks456jx6n7lwi + '@typescript-eslint/experimental-utils': 2.34.0_eslint@6.8.0+typescript@3.9.9 '@typescript-eslint/typescript-estree': 2.34.0_typescript@3.9.9 eslint: 6.8.0 eslint-visitor-keys: 1.3.0 @@ -3462,7 +3462,7 @@ packages: babel-plugin-istanbul: 6.0.0 babel-preset-jest: 25.5.0_@babel+core@7.14.3 chalk: 3.0.0 - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 slash: 3.0.0 transitivePeerDependencies: - supports-color @@ -3518,7 +3518,7 @@ packages: babel-plugin-istanbul: 6.0.0 babel-preset-jest: 27.0.1_@babel+core@7.14.6 chalk: 4.1.1 - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 slash: 3.0.0 transitivePeerDependencies: - supports-color @@ -4034,7 +4034,7 @@ packages: normalize-path: 3.0.0 readdirp: 3.6.0 optionalDependencies: - fsevents: registry.npmjs.org/fsevents/2.3.2 + fsevents: 2.3.2 dev: false /chrome-trace-event/1.0.3: @@ -4607,7 +4607,7 @@ packages: resolution: {integrity: sha512-F27oB3WuHDzvR2DOGNTaYy0D5o0cnrv8TeI482VM4kYgQd/FT9lUQwuNsJ0oOHtBUq7eiW5ytqzp7nBFknL+GA==} engines: {node: '>=10.13.0'} dependencies: - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 tapable: 2.2.0 dev: true @@ -4707,7 +4707,7 @@ packages: esutils: 2.0.3 optionator: 0.8.3 optionalDependencies: - source-map: registry.npmjs.org/source-map/0.6.1 + source-map: 0.6.1 dev: true /escodegen/2.0.0: @@ -4720,7 +4720,7 @@ packages: esutils: 2.0.3 optionator: 0.8.3 optionalDependencies: - source-map: registry.npmjs.org/source-map/0.6.1 + source-map: 0.6.1 dev: true /eslint-config-prettier/6.15.0_eslint@6.8.0: @@ -4733,7 +4733,7 @@ packages: get-stdin: 6.0.0 dev: true - /eslint-config-react-app/5.2.1_fctahnmyurxl4rknebkla6hmeu: + /eslint-config-react-app/5.2.1_28a603b598a46ebe454d2054b078ec25: resolution: {integrity: sha512-pGIZ8t0mFLcV+6ZirRgYK6RVqUIKRIi9MmgzUEmrIknsn3AdO0I32asO86dJgloHq+9ZPl8UIg8mYrvgP5u2wQ==} peerDependencies: '@typescript-eslint/eslint-plugin': 2.x @@ -4750,13 +4750,13 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/eslint-plugin': 2.34.0_jxzg2k43owi4xwrqkezmr5eq6m - '@typescript-eslint/parser': 2.34.0_hejjmlztrvmnsks456jx6n7lwi + '@typescript-eslint/eslint-plugin': 2.34.0_4df26d2b9b7591cbda305132c8f490f3 + '@typescript-eslint/parser': 2.34.0_eslint@6.8.0+typescript@3.9.9 babel-eslint: 10.1.0_eslint@6.8.0 confusing-browser-globals: 1.0.10 eslint: 6.8.0 eslint-plugin-flowtype: 3.13.0_eslint@6.8.0 - eslint-plugin-import: 2.23.3_tbglwmj7t2rhd43mvxmptakoay + eslint-plugin-import: 2.23.3_984cbb313f9ea271f36cadd8f9814e06 eslint-plugin-jsx-a11y: 6.4.1_eslint@6.8.0 eslint-plugin-react: 7.23.2_eslint@6.8.0 eslint-plugin-react-hooks: 2.5.1_eslint@6.8.0 @@ -4772,7 +4772,7 @@ packages: - supports-color dev: true - /eslint-module-utils/2.6.1_cch7oag2xabt66xpirhjznaddy: + /eslint-module-utils/2.6.1_108ff700dab8033f7aef444e9cb4031e: resolution: {integrity: sha512-ZXI9B8cxAJIH4nfkhTwcRTEAnrVfobYqwjWy/QMCZ8rHkZHFjf9yO4BzpiF9kCSfNlMG54eKigISHpX0+AaT4A==} engines: {node: '>=4'} peerDependencies: @@ -4790,7 +4790,7 @@ packages: eslint-import-resolver-webpack: optional: true dependencies: - '@typescript-eslint/parser': 2.34.0_hejjmlztrvmnsks456jx6n7lwi + '@typescript-eslint/parser': 2.34.0_eslint@6.8.0+typescript@3.9.9 debug: 3.2.7 eslint-import-resolver-node: 0.3.4 pkg-dir: 2.0.0 @@ -4808,7 +4808,7 @@ packages: lodash: 4.17.21 dev: true - /eslint-plugin-import/2.23.3_tbglwmj7t2rhd43mvxmptakoay: + /eslint-plugin-import/2.23.3_984cbb313f9ea271f36cadd8f9814e06: resolution: {integrity: sha512-wDxdYbSB55F7T5CC7ucDjY641VvKmlRwT0Vxh7PkY1mI4rclVRFWYfsrjDgZvwYYDZ5ee0ZtfFKXowWjqvEoRQ==} engines: {node: '>=4'} peerDependencies: @@ -4818,14 +4818,14 @@ packages: '@typescript-eslint/parser': optional: true dependencies: - '@typescript-eslint/parser': 2.34.0_hejjmlztrvmnsks456jx6n7lwi + '@typescript-eslint/parser': 2.34.0_eslint@6.8.0+typescript@3.9.9 array-includes: 3.1.3 array.prototype.flat: 1.2.4 debug: 2.6.9 doctrine: 2.1.0 eslint: 6.8.0 eslint-import-resolver-node: 0.3.4 - eslint-module-utils: 2.6.1_cch7oag2xabt66xpirhjznaddy + eslint-module-utils: 2.6.1_108ff700dab8033f7aef444e9cb4031e find-up: 2.1.0 has: 1.0.3 is-core-module: 2.4.0 @@ -4861,7 +4861,7 @@ packages: language-tags: 1.0.5 dev: true - /eslint-plugin-prettier/3.4.0_w56nqx62sqpcgkca3sb3623wsa: + /eslint-plugin-prettier/3.4.0_b77cd85fda941e232840dc83bf6b7690: resolution: {integrity: sha512-UDK6rJT6INSfcOo545jiaOwB701uAIt2/dR7WnFQoGCVl1/EMqdANBmwUaqqQ45aXprsTGzSa39LI1PyuRBxxw==} engines: {node: '>=6.0.0'} peerDependencies: @@ -5469,6 +5469,13 @@ packages: resolution: {integrity: sha1-FQStJSMVjKpA20onh8sBQRmU6k8=} dev: true + /fsevents/2.3.2: + resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + requiresBuild: true + optional: true + /function-bind/1.1.1: resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} dev: true @@ -6437,7 +6444,7 @@ packages: '@jest/types': 25.5.0 chalk: 3.0.0 exit: 0.1.2 - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 import-local: 3.0.2 is-ci: 2.0.0 jest-config: 25.5.4 @@ -6494,7 +6501,7 @@ packages: chalk: 3.0.0 deepmerge: 4.2.2 glob: 7.1.7 - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 jest-environment-jsdom: 25.5.0 jest-environment-node: 25.5.0 jest-get-type: 25.2.6 @@ -6706,7 +6713,7 @@ packages: '@types/graceful-fs': 4.1.5 anymatch: 3.1.2 fb-watchman: 2.0.1 - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 jest-serializer: 25.5.0 jest-util: 25.5.0 jest-worker: 25.5.0 @@ -6715,7 +6722,7 @@ packages: walker: 1.0.7 which: 2.0.2 optionalDependencies: - fsevents: registry.npmjs.org/fsevents/2.3.2 + fsevents: 2.3.2 transitivePeerDependencies: - supports-color dev: true @@ -6729,7 +6736,7 @@ packages: '@types/node': 15.12.4 anymatch: 3.1.2 fb-watchman: 2.0.1 - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 jest-regex-util: 26.0.0 jest-serializer: 26.6.2 jest-util: 26.6.2 @@ -6738,7 +6745,7 @@ packages: sane: 4.1.0 walker: 1.0.7 optionalDependencies: - fsevents: registry.npmjs.org/fsevents/2.3.2 + fsevents: 2.3.2 transitivePeerDependencies: - supports-color dev: true @@ -6760,7 +6767,7 @@ packages: micromatch: 4.0.4 walker: 1.0.7 optionalDependencies: - fsevents: registry.npmjs.org/fsevents/2.3.2 + fsevents: 2.3.2 dev: true /jest-jasmine2/25.5.4: @@ -6861,7 +6868,7 @@ packages: '@jest/types': 25.5.0 '@types/stack-utils': 1.0.1 chalk: 3.0.0 - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 micromatch: 4.0.4 slash: 3.0.0 stack-utils: 1.0.5 @@ -6963,7 +6970,7 @@ packages: '@jest/types': 25.5.0 browser-resolve: 1.11.3 chalk: 3.0.0 - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 jest-pnp-resolver: 1.2.2_jest-resolve@25.5.1 read-pkg-up: 7.0.1 realpath-native: 2.0.0 @@ -6996,7 +7003,7 @@ packages: '@jest/types': 25.5.0 chalk: 3.0.0 exit: 0.1.2 - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 jest-config: 25.5.4 jest-docblock: 25.3.0 jest-haste-map: 25.5.1 @@ -7066,7 +7073,7 @@ packages: collect-v8-coverage: 1.0.1 exit: 0.1.2 glob: 7.1.7 - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 jest-config: 25.5.4 jest-haste-map: 25.5.1 jest-message-util: 25.5.0 @@ -7125,7 +7132,7 @@ packages: resolution: {integrity: sha512-LxD8fY1lByomEPflwur9o4e2a5twSQ7TaVNLlFUuToIdoJuBt8tzHfCsZ42Ok6LkKXWzFWf3AGmheuLAA7LcCA==} engines: {node: '>= 8.3'} dependencies: - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 dev: true /jest-serializer/26.6.2: @@ -7133,7 +7140,7 @@ packages: engines: {node: '>= 10.14.2'} dependencies: '@types/node': 15.12.4 - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 dev: true /jest-serializer/27.0.1: @@ -7141,7 +7148,7 @@ packages: engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} dependencies: '@types/node': 15.14.0 - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 dev: true /jest-snapshot/25.5.1: @@ -7153,7 +7160,7 @@ packages: '@types/prettier': 1.19.1 chalk: 3.0.0 expect: 25.5.0 - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 jest-diff: 25.5.0 jest-get-type: 25.2.6 jest-matcher-utils: 25.5.0 @@ -7203,7 +7210,7 @@ packages: dependencies: '@jest/types': 25.5.0 chalk: 3.0.0 - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 is-ci: 2.0.0 make-dir: 3.1.0 dev: true @@ -7215,7 +7222,7 @@ packages: '@jest/types': 26.6.2 '@types/node': 15.12.4 chalk: 4.1.1 - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 is-ci: 2.0.0 micromatch: 4.0.4 dev: true @@ -7540,7 +7547,7 @@ packages: /jsonfile/4.0.0: resolution: {integrity: sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=} optionalDependencies: - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 dev: true /jsonfile/6.1.0: @@ -7548,7 +7555,7 @@ packages: dependencies: universalify: 2.0.0 optionalDependencies: - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 dev: true /jsprim/1.4.1: @@ -7652,7 +7659,7 @@ packages: resolution: {integrity: sha1-L19Fq5HjMhYjT9U62rZo607AmTs=} engines: {node: '>=4'} dependencies: - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 parse-json: 4.0.0 pify: 3.0.0 strip-bom: 3.0.0 @@ -7662,7 +7669,7 @@ packages: resolution: {integrity: sha512-OfCBkGEw4nN6JLtgRidPX6QxjBQGQf72q3si2uvqyFEMbycSFFHwAZeXx6cJgFM9wmLrf9zBwCP3Ivqa+LLZPw==} engines: {node: '>=6'} dependencies: - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 js-yaml: 3.14.1 pify: 4.0.1 strip-bom: 3.0.0 @@ -8169,6 +8176,18 @@ packages: engines: {node: '>=0.10.0'} dev: true + /node-notifier/6.0.0: + resolution: {integrity: sha512-SVfQ/wMw+DesunOm5cKqr6yDcvUTDl/yc97ybGHMrteNEY6oekXpNpS3lZwgLlwz0FLgHoiW28ZpmBHUDg37cw==} + requiresBuild: true + dependencies: + growly: 1.3.0 + is-wsl: 2.2.0 + semver: 6.3.0 + shellwords: 0.1.1 + which: 1.3.1 + dev: true + optional: true + /node-releases/1.1.73: resolution: {integrity: sha512-uW7fodD6pyW2FZNZnp/Z3hvWKeEW1Y8R1+1CnErE8cXFXzl5blBOoVB41CvMer6P6Q0S5FXDwcHgFd1Wj0U9zg==} dev: true @@ -9195,7 +9214,7 @@ packages: glob: 7.1.7 dev: true - /rollup-plugin-sourcemaps/0.6.3_3nnrsivr25jdszirxgiow55yl4: + /rollup-plugin-sourcemaps/0.6.3_db5b1922b1d752396511b990eb77b85f: resolution: {integrity: sha512-paFu+nT1xvuO1tPFYXGe+XnQvg4Hjqv/eIhG8i5EspfYYPBKL57X7iVbfv55aNVASg3dzWvES9dmWsL2KhfByw==} engines: {node: '>=10.0.0'} peerDependencies: @@ -9211,21 +9230,6 @@ packages: source-map-resolve: 0.6.0 dev: true - /rollup-plugin-sourcemaps/0.6.3_rollup@1.32.1: - resolution: {integrity: sha512-paFu+nT1xvuO1tPFYXGe+XnQvg4Hjqv/eIhG8i5EspfYYPBKL57X7iVbfv55aNVASg3dzWvES9dmWsL2KhfByw==} - engines: {node: '>=10.0.0'} - peerDependencies: - '@types/node': '>=10.0.0' - rollup: '>=0.31.2' - peerDependenciesMeta: - '@types/node': - optional: true - dependencies: - '@rollup/pluginutils': 3.1.0_rollup@1.32.1 - rollup: 1.32.1 - source-map-resolve: 0.6.0 - dev: true - /rollup-plugin-terser/5.3.1_rollup@1.32.1: resolution: {integrity: sha512-1pkwkervMJQGFYvM9nscrUoncPwiKR/K+bHdjv6PFgRo3cgPHoRT83y2Aa3GvINj4539S15t/tpFPb775TDs6w==} peerDependencies: @@ -9239,7 +9243,7 @@ packages: terser: 4.8.0 dev: true - /rollup-plugin-typescript2/0.27.3_5oriiw4weaiityb46ffmqdpvhq: + /rollup-plugin-typescript2/0.27.3_rollup@1.32.1+typescript@3.9.9: resolution: {integrity: sha512-gmYPIFmALj9D3Ga1ZbTZAKTXq1JKlTQBtj299DXhqYz9cL3g/AQfUvbb2UhH+Nf++cCq941W2Mv7UcrcgLzJJg==} peerDependencies: rollup: '>=1.26.3' @@ -10161,7 +10165,7 @@ packages: /trough/1.0.5: resolution: {integrity: sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==} - /ts-jest/25.5.1_qunjlybjqyrepz5mkseszpyh3e: + /ts-jest/25.5.1_jest@25.5.4+typescript@3.9.9: resolution: {integrity: sha512-kHEUlZMK8fn8vkxDjwbHlxXRB9dHYpyzqKIGDNxbzs+Rz+ssNDSDNusEK8Fk/sDd4xE6iKoQLfFkFVaskmTJyw==} engines: {node: '>= 8'} hasBin: true @@ -10192,78 +10196,6 @@ packages: strip-bom: 3.0.0 dev: true - /tsdx/0.14.1: - resolution: {integrity: sha512-keHmFdCL2kx5nYFlBdbE3639HQ2v9iGedAFAajobrUTH2wfX0nLPdDhbHv+GHLQZqf0c5ur1XteE8ek/+Eyj5w==} - engines: {node: '>=10'} - hasBin: true - dependencies: - '@babel/core': 7.14.3 - '@babel/helper-module-imports': 7.13.12 - '@babel/parser': 7.14.4 - '@babel/plugin-proposal-class-properties': 7.13.0_@babel+core@7.14.3 - '@babel/preset-env': 7.14.4_@babel+core@7.14.3 - '@babel/traverse': 7.14.2 - '@rollup/plugin-babel': 5.3.0_kjfyxipscbj5lcvxjjlpxecv4a - '@rollup/plugin-commonjs': 11.1.0_rollup@1.32.1 - '@rollup/plugin-json': 4.1.0_rollup@1.32.1 - '@rollup/plugin-node-resolve': 9.0.0_rollup@1.32.1 - '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/jest': 25.2.3 - '@typescript-eslint/eslint-plugin': 2.34.0_jxzg2k43owi4xwrqkezmr5eq6m - '@typescript-eslint/parser': 2.34.0_hejjmlztrvmnsks456jx6n7lwi - ansi-escapes: 4.3.2 - asyncro: 3.0.0 - babel-eslint: 10.1.0_eslint@6.8.0 - babel-plugin-annotate-pure-calls: 0.4.0_@babel+core@7.14.3 - babel-plugin-dev-expression: 0.2.2_@babel+core@7.14.3 - babel-plugin-macros: 2.8.0 - babel-plugin-polyfill-regenerator: 0.0.4_@babel+core@7.14.3 - babel-plugin-transform-rename-import: 2.3.0 - camelcase: 6.2.0 - chalk: 4.1.1 - enquirer: 2.3.6 - eslint: 6.8.0 - eslint-config-prettier: 6.15.0_eslint@6.8.0 - eslint-config-react-app: 5.2.1_fctahnmyurxl4rknebkla6hmeu - eslint-plugin-flowtype: 3.13.0_eslint@6.8.0 - eslint-plugin-import: 2.23.3_tbglwmj7t2rhd43mvxmptakoay - eslint-plugin-jsx-a11y: 6.4.1_eslint@6.8.0 - eslint-plugin-prettier: 3.4.0_w56nqx62sqpcgkca3sb3623wsa - eslint-plugin-react: 7.23.2_eslint@6.8.0 - eslint-plugin-react-hooks: 2.5.1_eslint@6.8.0 - execa: 4.1.0 - fs-extra: 9.1.0 - jest: 25.5.4 - jest-watch-typeahead: 0.5.0 - jpjs: 1.2.1 - lodash.merge: 4.6.2 - ora: 4.1.1 - pascal-case: 3.1.2 - prettier: 1.19.1 - progress-estimator: 0.2.2 - regenerator-runtime: 0.13.7 - rollup: 1.32.1 - rollup-plugin-sourcemaps: 0.6.3_rollup@1.32.1 - rollup-plugin-terser: 5.3.1_rollup@1.32.1 - rollup-plugin-typescript2: 0.27.3_5oriiw4weaiityb46ffmqdpvhq - sade: 1.7.4 - semver: 7.3.5 - shelljs: 0.8.4 - tiny-glob: 0.2.9 - ts-jest: 25.5.1_qunjlybjqyrepz5mkseszpyh3e - tslib: 1.14.1 - typescript: 3.9.9 - transitivePeerDependencies: - - '@types/babel__core' - - '@types/node' - - bufferutil - - canvas - - eslint-import-resolver-typescript - - eslint-import-resolver-webpack - - supports-color - - utf-8-validate - dev: true - /tsdx/0.14.1_@types+node@14.14.31: resolution: {integrity: sha512-keHmFdCL2kx5nYFlBdbE3639HQ2v9iGedAFAajobrUTH2wfX0nLPdDhbHv+GHLQZqf0c5ur1XteE8ek/+Eyj5w==} engines: {node: '>=10'} @@ -10275,14 +10207,14 @@ packages: '@babel/plugin-proposal-class-properties': 7.13.0_@babel+core@7.14.3 '@babel/preset-env': 7.14.4_@babel+core@7.14.3 '@babel/traverse': 7.14.2 - '@rollup/plugin-babel': 5.3.0_kjfyxipscbj5lcvxjjlpxecv4a + '@rollup/plugin-babel': 5.3.0_@babel+core@7.14.3+rollup@1.32.1 '@rollup/plugin-commonjs': 11.1.0_rollup@1.32.1 '@rollup/plugin-json': 4.1.0_rollup@1.32.1 '@rollup/plugin-node-resolve': 9.0.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 '@types/jest': 25.2.3 - '@typescript-eslint/eslint-plugin': 2.34.0_jxzg2k43owi4xwrqkezmr5eq6m - '@typescript-eslint/parser': 2.34.0_hejjmlztrvmnsks456jx6n7lwi + '@typescript-eslint/eslint-plugin': 2.34.0_4df26d2b9b7591cbda305132c8f490f3 + '@typescript-eslint/parser': 2.34.0_eslint@6.8.0+typescript@3.9.9 ansi-escapes: 4.3.2 asyncro: 3.0.0 babel-eslint: 10.1.0_eslint@6.8.0 @@ -10296,11 +10228,11 @@ packages: enquirer: 2.3.6 eslint: 6.8.0 eslint-config-prettier: 6.15.0_eslint@6.8.0 - eslint-config-react-app: 5.2.1_fctahnmyurxl4rknebkla6hmeu + eslint-config-react-app: 5.2.1_28a603b598a46ebe454d2054b078ec25 eslint-plugin-flowtype: 3.13.0_eslint@6.8.0 - eslint-plugin-import: 2.23.3_tbglwmj7t2rhd43mvxmptakoay + eslint-plugin-import: 2.23.3_984cbb313f9ea271f36cadd8f9814e06 eslint-plugin-jsx-a11y: 6.4.1_eslint@6.8.0 - eslint-plugin-prettier: 3.4.0_w56nqx62sqpcgkca3sb3623wsa + eslint-plugin-prettier: 3.4.0_b77cd85fda941e232840dc83bf6b7690 eslint-plugin-react: 7.23.2_eslint@6.8.0 eslint-plugin-react-hooks: 2.5.1_eslint@6.8.0 execa: 4.1.0 @@ -10315,14 +10247,14 @@ packages: progress-estimator: 0.2.2 regenerator-runtime: 0.13.7 rollup: 1.32.1 - rollup-plugin-sourcemaps: 0.6.3_3nnrsivr25jdszirxgiow55yl4 + rollup-plugin-sourcemaps: 0.6.3_db5b1922b1d752396511b990eb77b85f rollup-plugin-terser: 5.3.1_rollup@1.32.1 - rollup-plugin-typescript2: 0.27.3_5oriiw4weaiityb46ffmqdpvhq + rollup-plugin-typescript2: 0.27.3_rollup@1.32.1+typescript@3.9.9 sade: 1.7.4 semver: 7.3.5 shelljs: 0.8.4 tiny-glob: 0.2.9 - ts-jest: 25.5.1_qunjlybjqyrepz5mkseszpyh3e + ts-jest: 25.5.1_jest@25.5.4+typescript@3.9.9 tslib: 1.14.1 typescript: 3.9.9 transitivePeerDependencies: @@ -10647,7 +10579,7 @@ packages: dependencies: '@types/istanbul-lib-coverage': 2.0.3 convert-source-map: 1.7.0 - source-map: registry.npmjs.org/source-map/0.7.3 + source-map: 0.7.3 dev: true /v8-to-istanbul/8.0.0: @@ -10731,7 +10663,7 @@ packages: engines: {node: '>=10.13.0'} dependencies: glob-to-regexp: 0.4.1 - graceful-fs: registry.npmjs.org/graceful-fs/4.2.6 + graceful-fs: 4.2.6 dev: true /wcwidth/1.0.1: @@ -11045,48 +10977,3 @@ packages: /zwitch/1.0.5: resolution: {integrity: sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==} - - registry.npmjs.org/fsevents/2.3.2: - resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==, registry: https://registry.yarnpkg.com/, tarball: https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz} - name: fsevents - version: 2.3.2 - engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} - os: [darwin] - requiresBuild: true - optional: true - - registry.npmjs.org/graceful-fs/4.2.6: - resolution: {integrity: sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==, registry: https://registry.yarnpkg.com/, tarball: https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz} - name: graceful-fs - version: 4.2.6 - dev: true - - registry.npmjs.org/node-notifier/6.0.0: - resolution: {integrity: sha512-SVfQ/wMw+DesunOm5cKqr6yDcvUTDl/yc97ybGHMrteNEY6oekXpNpS3lZwgLlwz0FLgHoiW28ZpmBHUDg37cw==, registry: https://registry.yarnpkg.com/, tarball: https://registry.npmjs.org/node-notifier/-/node-notifier-6.0.0.tgz} - name: node-notifier - version: 6.0.0 - requiresBuild: true - dependencies: - growly: 1.3.0 - is-wsl: 2.2.0 - semver: 6.3.0 - shellwords: 0.1.1 - which: 1.3.1 - dev: true - optional: true - - registry.npmjs.org/source-map/0.6.1: - resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==, registry: https://registry.yarnpkg.com/, tarball: https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz} - name: source-map - version: 0.6.1 - engines: {node: '>=0.10.0'} - requiresBuild: true - dev: true - optional: true - - registry.npmjs.org/source-map/0.7.3: - resolution: {integrity: sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==, registry: https://registry.yarnpkg.com/, tarball: https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz} - name: source-map - version: 0.7.3 - engines: {node: '>= 8'} - dev: true