mathjs 10.4.1 → 10.4.2
Sign up to get free protection for your applications and to get access to all the features.
- package/HISTORY.md +17 -0
- package/docs/datatypes/units.md +2 -2
- package/docs/reference/functions/format.md +3 -0
- package/examples/node_modules/.bin/acorn +12 -0
- package/examples/node_modules/.bin/acorn.cmd +17 -0
- package/examples/node_modules/.bin/acorn.ps1 +28 -0
- package/examples/node_modules/.bin/browserslist +12 -0
- package/examples/node_modules/.bin/browserslist.cmd +17 -0
- package/examples/node_modules/.bin/browserslist.ps1 +28 -0
- package/examples/node_modules/.bin/envinfo +2 -5
- package/examples/node_modules/.bin/envinfo.cmd +6 -6
- package/examples/node_modules/.bin/envinfo.ps1 +12 -2
- package/examples/node_modules/.bin/import-local-fixture +2 -5
- package/examples/node_modules/.bin/import-local-fixture.cmd +6 -6
- package/examples/node_modules/.bin/import-local-fixture.ps1 +12 -2
- package/examples/node_modules/.bin/node-which +2 -5
- package/examples/node_modules/.bin/node-which.cmd +6 -6
- package/examples/node_modules/.bin/node-which.ps1 +12 -2
- package/examples/node_modules/.bin/resolve +12 -0
- package/examples/node_modules/.bin/resolve.cmd +17 -0
- package/examples/node_modules/.bin/resolve.ps1 +28 -0
- package/examples/node_modules/.bin/terser +12 -0
- package/examples/node_modules/.bin/terser.cmd +17 -0
- package/examples/node_modules/.bin/terser.ps1 +28 -0
- package/examples/node_modules/.bin/webpack +12 -0
- package/examples/node_modules/.bin/webpack-cli +2 -5
- package/examples/node_modules/.bin/webpack-cli.cmd +6 -6
- package/examples/node_modules/.bin/webpack-cli.ps1 +12 -2
- package/examples/node_modules/.bin/webpack.cmd +17 -0
- package/examples/node_modules/.bin/webpack.ps1 +28 -0
- package/examples/node_modules/.package-lock.json +1407 -0
- package/examples/node_modules/@discoveryjs/json-ext/README.md +2 -1
- package/examples/node_modules/@discoveryjs/json-ext/dist/json-ext.js +147 -164
- package/examples/node_modules/@discoveryjs/json-ext/dist/json-ext.min.js +1 -1
- package/examples/node_modules/@discoveryjs/json-ext/dist/version.js +1 -0
- package/examples/node_modules/@discoveryjs/json-ext/index.d.ts +31 -0
- package/examples/node_modules/@discoveryjs/json-ext/package.json +53 -90
- package/examples/node_modules/@discoveryjs/json-ext/src/index.js +1 -1
- package/examples/node_modules/@discoveryjs/json-ext/src/parse-chunked.js +89 -44
- package/examples/node_modules/@discoveryjs/json-ext/src/stringify-info.js +11 -4
- package/examples/node_modules/@discoveryjs/json-ext/src/stringify-stream.js +17 -3
- package/examples/node_modules/@discoveryjs/json-ext/src/utils.js +6 -5
- package/examples/node_modules/@discoveryjs/json-ext/src/version.js +1 -0
- package/examples/node_modules/@types/eslint/LICENSE +21 -0
- package/examples/node_modules/@types/eslint/README.md +16 -0
- package/examples/node_modules/@types/eslint/helpers.d.ts +3 -0
- package/examples/node_modules/@types/eslint/index.d.ts +953 -0
- package/examples/node_modules/@types/eslint/package.json +65 -0
- package/examples/node_modules/@types/eslint/rules/best-practices.d.ts +931 -0
- package/examples/node_modules/@types/eslint/rules/deprecated.d.ts +267 -0
- package/examples/node_modules/@types/eslint/rules/ecmascript-6.d.ts +502 -0
- package/examples/node_modules/@types/eslint/rules/index.d.ts +21 -0
- package/examples/node_modules/@types/eslint/rules/node-commonjs.d.ts +133 -0
- package/examples/node_modules/@types/eslint/rules/possible-errors.d.ts +484 -0
- package/examples/node_modules/@types/eslint/rules/strict-mode.d.ts +11 -0
- package/examples/node_modules/@types/eslint/rules/stylistic-issues.d.ts +1893 -0
- package/examples/node_modules/@types/eslint/rules/variables.d.ts +187 -0
- package/examples/node_modules/@types/eslint/use-at-your-own-risk.d.ts +8 -0
- package/examples/node_modules/@types/eslint-scope/LICENSE +21 -0
- package/examples/node_modules/@types/eslint-scope/README.md +84 -0
- package/examples/node_modules/@types/eslint-scope/index.d.ts +64 -0
- package/examples/node_modules/@types/eslint-scope/package.json +28 -0
- package/examples/node_modules/@types/estree/LICENSE +21 -0
- package/examples/node_modules/@types/estree/README.md +16 -0
- package/examples/node_modules/@types/estree/flow.d.ts +174 -0
- package/examples/node_modules/@types/estree/index.d.ts +595 -0
- package/examples/node_modules/@types/estree/package.json +25 -0
- package/examples/node_modules/@types/json-schema/LICENSE +21 -0
- package/examples/node_modules/@types/json-schema/README.md +16 -0
- package/examples/node_modules/@types/json-schema/index.d.ts +758 -0
- package/examples/node_modules/@types/json-schema/package.json +40 -0
- package/examples/node_modules/@types/node/LICENSE +21 -0
- package/examples/node_modules/@types/node/README.md +16 -0
- package/examples/node_modules/@types/node/assert/strict.d.ts +8 -0
- package/examples/node_modules/@types/node/assert.d.ts +912 -0
- package/examples/node_modules/@types/node/async_hooks.d.ts +501 -0
- package/examples/node_modules/@types/node/buffer.d.ts +2232 -0
- package/examples/node_modules/@types/node/child_process.d.ts +1366 -0
- package/examples/node_modules/@types/node/cluster.d.ts +414 -0
- package/examples/node_modules/@types/node/console.d.ts +412 -0
- package/examples/node_modules/@types/node/constants.d.ts +18 -0
- package/examples/node_modules/@types/node/crypto.d.ts +3307 -0
- package/examples/node_modules/@types/node/dgram.d.ts +545 -0
- package/examples/node_modules/@types/node/diagnostics_channel.d.ts +134 -0
- package/examples/node_modules/@types/node/dns/promises.d.ts +370 -0
- package/examples/node_modules/@types/node/dns.d.ts +659 -0
- package/examples/node_modules/@types/node/domain.d.ts +169 -0
- package/examples/node_modules/@types/node/events.d.ts +651 -0
- package/examples/node_modules/@types/node/fs/promises.d.ts +1091 -0
- package/examples/node_modules/@types/node/fs.d.ts +3869 -0
- package/examples/node_modules/@types/node/globals.d.ts +284 -0
- package/examples/node_modules/@types/node/globals.global.d.ts +1 -0
- package/examples/node_modules/@types/node/http.d.ts +1396 -0
- package/examples/node_modules/@types/node/http2.d.ts +2100 -0
- package/examples/node_modules/@types/node/https.d.ts +391 -0
- package/examples/node_modules/@types/node/index.d.ts +129 -0
- package/examples/node_modules/@types/node/inspector.d.ts +2744 -0
- package/examples/node_modules/@types/node/module.d.ts +114 -0
- package/examples/node_modules/@types/node/net.d.ts +784 -0
- package/examples/node_modules/@types/node/os.d.ts +455 -0
- package/examples/node_modules/@types/node/package.json +220 -0
- package/examples/node_modules/@types/node/path.d.ts +180 -0
- package/examples/node_modules/@types/node/perf_hooks.d.ts +557 -0
- package/examples/node_modules/@types/node/process.d.ts +1481 -0
- package/examples/node_modules/@types/node/punycode.d.ts +117 -0
- package/examples/node_modules/@types/node/querystring.d.ts +131 -0
- package/examples/node_modules/@types/node/readline.d.ts +650 -0
- package/examples/node_modules/@types/node/repl.d.ts +424 -0
- package/examples/node_modules/@types/node/stream/consumers.d.ts +24 -0
- package/examples/node_modules/@types/node/stream/promises.d.ts +42 -0
- package/examples/node_modules/@types/node/stream/web.d.ts +330 -0
- package/examples/node_modules/@types/node/stream.d.ts +1249 -0
- package/examples/node_modules/@types/node/string_decoder.d.ts +67 -0
- package/examples/node_modules/@types/node/timers/promises.d.ts +68 -0
- package/examples/node_modules/@types/node/timers.d.ts +94 -0
- package/examples/node_modules/@types/node/tls.d.ts +1020 -0
- package/examples/node_modules/@types/node/trace_events.d.ts +161 -0
- package/examples/node_modules/@types/node/tty.d.ts +204 -0
- package/examples/node_modules/@types/node/url.d.ts +891 -0
- package/examples/node_modules/@types/node/util.d.ts +1594 -0
- package/examples/node_modules/@types/node/v8.d.ts +378 -0
- package/examples/node_modules/@types/node/vm.d.ts +507 -0
- package/examples/node_modules/@types/node/wasi.d.ts +158 -0
- package/examples/node_modules/@types/node/worker_threads.d.ts +649 -0
- package/examples/node_modules/@types/node/zlib.d.ts +517 -0
- package/examples/node_modules/@webassemblyjs/ast/LICENSE +21 -0
- package/examples/node_modules/@webassemblyjs/ast/README.md +167 -0
- package/examples/node_modules/@webassemblyjs/ast/esm/clone.js +3 -0
- package/examples/node_modules/@webassemblyjs/ast/esm/definitions.js +668 -0
- package/examples/node_modules/@webassemblyjs/ast/esm/index.js +7 -0
- package/examples/node_modules/@webassemblyjs/ast/esm/node-helpers.js +84 -0
- package/examples/node_modules/@webassemblyjs/ast/esm/node-path.js +137 -0
- package/examples/node_modules/@webassemblyjs/ast/esm/nodes.js +925 -0
- package/examples/node_modules/@webassemblyjs/ast/esm/signatures.js +199 -0
- package/examples/node_modules/@webassemblyjs/ast/esm/transform/ast-module-to-module-context/index.js +378 -0
- package/examples/node_modules/@webassemblyjs/ast/esm/transform/denormalize-type-references/index.js +76 -0
- package/examples/node_modules/@webassemblyjs/ast/esm/transform/wast-identifier-to-index/index.js +216 -0
- package/examples/node_modules/@webassemblyjs/ast/esm/traverse.js +96 -0
- package/examples/node_modules/{webpack-cli/lib/utils/__tests__/test-all-lock/pnpm-lock.yaml → @webassemblyjs/ast/esm/types/basic.js} +0 -0
- package/examples/node_modules/{webpack-cli/lib/utils/__tests__/test-all-lock/yarn.lock → @webassemblyjs/ast/esm/types/nodes.js} +0 -0
- package/examples/node_modules/{webpack-cli/lib/utils/__tests__/test-npm-and-pnpm/pnpm-lock.yaml → @webassemblyjs/ast/esm/types/traverse.js} +0 -0
- package/examples/node_modules/@webassemblyjs/ast/esm/utils.js +265 -0
- package/examples/node_modules/@webassemblyjs/ast/lib/clone.js +10 -0
- package/examples/node_modules/@webassemblyjs/ast/lib/definitions.js +668 -0
- package/examples/node_modules/@webassemblyjs/ast/lib/index.js +127 -0
- package/examples/node_modules/@webassemblyjs/ast/lib/node-helpers.js +107 -0
- package/examples/node_modules/@webassemblyjs/ast/lib/node-path.js +144 -0
- package/examples/node_modules/@webassemblyjs/ast/lib/nodes.js +1144 -0
- package/examples/node_modules/@webassemblyjs/ast/lib/signatures.js +207 -0
- package/examples/node_modules/@webassemblyjs/ast/lib/transform/ast-module-to-module-context/index.js +389 -0
- package/examples/node_modules/@webassemblyjs/ast/lib/transform/denormalize-type-references/index.js +83 -0
- package/examples/node_modules/@webassemblyjs/ast/lib/transform/wast-identifier-to-index/index.js +225 -0
- package/examples/node_modules/@webassemblyjs/ast/lib/traverse.js +105 -0
- package/examples/node_modules/{webpack-cli/lib/utils/__tests__/test-npm-and-yarn/yarn.lock → @webassemblyjs/ast/lib/types/basic.js} +0 -0
- package/examples/node_modules/{webpack-cli/lib/utils/__tests__/test-pnpm-lock/pnpm-lock.yaml → @webassemblyjs/ast/lib/types/nodes.js} +0 -0
- package/examples/node_modules/{webpack-cli/lib/utils/__tests__/test-yarn-and-pnpm/pnpm-lock.yaml → @webassemblyjs/ast/lib/types/traverse.js} +0 -0
- package/examples/node_modules/@webassemblyjs/ast/lib/utils.js +306 -0
- package/examples/node_modules/@webassemblyjs/ast/package.json +32 -0
- package/examples/node_modules/@webassemblyjs/ast/scripts/generateNodeUtils.js +219 -0
- package/examples/node_modules/@webassemblyjs/ast/scripts/generateTypeDefinitions.js +47 -0
- package/examples/node_modules/@webassemblyjs/ast/scripts/util.js +38 -0
- package/examples/node_modules/@webassemblyjs/floating-point-hex-parser/LICENSE +21 -0
- package/examples/node_modules/@webassemblyjs/floating-point-hex-parser/README.md +34 -0
- package/examples/node_modules/@webassemblyjs/floating-point-hex-parser/esm/index.js +42 -0
- package/examples/node_modules/@webassemblyjs/floating-point-hex-parser/lib/index.js +49 -0
- package/examples/node_modules/@webassemblyjs/floating-point-hex-parser/package.json +24 -0
- package/examples/node_modules/@webassemblyjs/helper-api-error/LICENSE +21 -0
- package/examples/node_modules/@webassemblyjs/helper-api-error/esm/index.js +47 -0
- package/examples/node_modules/@webassemblyjs/helper-api-error/lib/index.js +62 -0
- package/examples/node_modules/@webassemblyjs/helper-api-error/package.json +18 -0
- package/examples/node_modules/@webassemblyjs/helper-buffer/LICENSE +21 -0
- package/examples/node_modules/@webassemblyjs/helper-buffer/esm/compare.js +65 -0
- package/examples/node_modules/@webassemblyjs/helper-buffer/esm/index.js +67 -0
- package/examples/node_modules/@webassemblyjs/helper-buffer/lib/compare.js +73 -0
- package/examples/node_modules/@webassemblyjs/helper-buffer/lib/index.js +78 -0
- package/examples/node_modules/@webassemblyjs/helper-buffer/package.json +24 -0
- package/examples/node_modules/@webassemblyjs/helper-numbers/LICENSE +21 -0
- package/examples/node_modules/@webassemblyjs/helper-numbers/esm/index.js +91 -0
- package/examples/node_modules/@webassemblyjs/helper-numbers/lib/index.js +116 -0
- package/examples/node_modules/@webassemblyjs/helper-numbers/package.json +25 -0
- package/examples/node_modules/@webassemblyjs/helper-numbers/src/index.js +105 -0
- package/examples/node_modules/@webassemblyjs/helper-wasm-bytecode/LICENSE +21 -0
- package/examples/node_modules/@webassemblyjs/helper-wasm-bytecode/esm/index.js +391 -0
- package/examples/node_modules/@webassemblyjs/helper-wasm-bytecode/esm/section.js +31 -0
- package/examples/node_modules/@webassemblyjs/helper-wasm-bytecode/lib/index.js +406 -0
- package/examples/node_modules/@webassemblyjs/helper-wasm-bytecode/lib/section.js +38 -0
- package/examples/node_modules/@webassemblyjs/helper-wasm-bytecode/package.json +20 -0
- package/examples/node_modules/@webassemblyjs/helper-wasm-section/LICENSE +21 -0
- package/examples/node_modules/@webassemblyjs/helper-wasm-section/esm/create.js +107 -0
- package/examples/node_modules/@webassemblyjs/helper-wasm-section/esm/index.js +3 -0
- package/examples/node_modules/@webassemblyjs/helper-wasm-section/esm/remove.js +36 -0
- package/examples/node_modules/@webassemblyjs/helper-wasm-section/esm/resize.js +78 -0
- package/examples/node_modules/@webassemblyjs/helper-wasm-section/lib/create.js +121 -0
- package/examples/node_modules/@webassemblyjs/helper-wasm-section/lib/index.js +35 -0
- package/examples/node_modules/@webassemblyjs/helper-wasm-section/lib/remove.js +45 -0
- package/examples/node_modules/@webassemblyjs/helper-wasm-section/lib/resize.js +90 -0
- package/examples/node_modules/@webassemblyjs/helper-wasm-section/package.json +29 -0
- package/examples/node_modules/@webassemblyjs/ieee754/LICENSE +21 -0
- package/examples/node_modules/@webassemblyjs/ieee754/esm/index.js +33 -0
- package/examples/node_modules/@webassemblyjs/ieee754/lib/index.js +52 -0
- package/examples/node_modules/@webassemblyjs/ieee754/package.json +23 -0
- package/examples/node_modules/@webassemblyjs/ieee754/src/index.js +47 -0
- package/examples/node_modules/@webassemblyjs/leb128/LICENSE.txt +194 -0
- package/examples/node_modules/@webassemblyjs/leb128/esm/bits.js +145 -0
- package/examples/node_modules/@webassemblyjs/leb128/esm/bufs.js +218 -0
- package/examples/node_modules/@webassemblyjs/leb128/esm/index.js +34 -0
- package/examples/node_modules/@webassemblyjs/leb128/esm/leb.js +316 -0
- package/examples/node_modules/@webassemblyjs/leb128/lib/bits.js +156 -0
- package/examples/node_modules/@webassemblyjs/leb128/lib/bufs.js +236 -0
- package/examples/node_modules/@webassemblyjs/leb128/lib/index.js +59 -0
- package/examples/node_modules/@webassemblyjs/leb128/lib/leb.js +332 -0
- package/examples/node_modules/@webassemblyjs/leb128/package.json +23 -0
- package/examples/node_modules/@webassemblyjs/utf8/LICENSE +21 -0
- package/examples/node_modules/@webassemblyjs/utf8/esm/decoder.js +95 -0
- package/examples/node_modules/@webassemblyjs/utf8/esm/encoder.js +46 -0
- package/examples/node_modules/@webassemblyjs/utf8/esm/index.js +2 -0
- package/examples/node_modules/@webassemblyjs/utf8/lib/decoder.js +102 -0
- package/examples/node_modules/@webassemblyjs/utf8/lib/encoder.js +53 -0
- package/examples/node_modules/@webassemblyjs/utf8/lib/index.js +21 -0
- package/examples/node_modules/@webassemblyjs/utf8/package.json +20 -0
- package/examples/node_modules/@webassemblyjs/utf8/src/decoder.js +86 -0
- package/examples/node_modules/@webassemblyjs/utf8/src/encoder.js +44 -0
- package/examples/node_modules/@webassemblyjs/utf8/src/index.js +4 -0
- package/examples/node_modules/@webassemblyjs/utf8/test/index.js +13 -0
- package/examples/node_modules/@webassemblyjs/wasm-edit/LICENSE +21 -0
- package/examples/node_modules/@webassemblyjs/wasm-edit/README.md +86 -0
- package/examples/node_modules/@webassemblyjs/wasm-edit/esm/apply.js +299 -0
- package/examples/node_modules/@webassemblyjs/wasm-edit/esm/index.js +114 -0
- package/examples/node_modules/@webassemblyjs/wasm-edit/lib/apply.js +311 -0
- package/examples/node_modules/@webassemblyjs/wasm-edit/lib/index.js +133 -0
- package/examples/node_modules/@webassemblyjs/wasm-edit/package.json +33 -0
- package/examples/node_modules/@webassemblyjs/wasm-gen/LICENSE +21 -0
- package/examples/node_modules/@webassemblyjs/wasm-gen/esm/encoder/index.js +301 -0
- package/examples/node_modules/@webassemblyjs/wasm-gen/esm/index.js +51 -0
- package/examples/node_modules/@webassemblyjs/wasm-gen/lib/encoder/index.js +357 -0
- package/examples/node_modules/@webassemblyjs/wasm-gen/lib/index.js +64 -0
- package/examples/node_modules/@webassemblyjs/wasm-gen/package.json +27 -0
- package/examples/node_modules/@webassemblyjs/wasm-opt/LICENSE +21 -0
- package/examples/node_modules/@webassemblyjs/wasm-opt/esm/index.js +41 -0
- package/examples/node_modules/@webassemblyjs/wasm-opt/esm/leb128.js +47 -0
- package/examples/node_modules/@webassemblyjs/wasm-opt/lib/index.js +50 -0
- package/examples/node_modules/@webassemblyjs/wasm-opt/lib/leb128.js +56 -0
- package/examples/node_modules/@webassemblyjs/wasm-opt/package.json +26 -0
- package/examples/node_modules/@webassemblyjs/wasm-parser/LICENSE +21 -0
- package/examples/node_modules/@webassemblyjs/wasm-parser/README.md +28 -0
- package/examples/node_modules/@webassemblyjs/wasm-parser/esm/decoder.js +1776 -0
- package/examples/node_modules/@webassemblyjs/wasm-parser/esm/index.js +247 -0
- package/examples/node_modules/{webpack-cli/lib/utils/__tests__/test-yarn-and-pnpm/yarn.lock → @webassemblyjs/wasm-parser/esm/types/decoder.js} +0 -0
- package/examples/node_modules/@webassemblyjs/wasm-parser/lib/decoder.js +1792 -0
- package/examples/node_modules/@webassemblyjs/wasm-parser/lib/index.js +257 -0
- package/examples/node_modules/{webpack-cli/lib/utils/__tests__/test-yarn-lock/yarn.lock → @webassemblyjs/wasm-parser/lib/types/decoder.js} +0 -0
- package/examples/node_modules/@webassemblyjs/wasm-parser/package.json +44 -0
- package/examples/node_modules/@webassemblyjs/wast-printer/LICENSE +21 -0
- package/examples/node_modules/@webassemblyjs/wast-printer/README.md +17 -0
- package/examples/node_modules/@webassemblyjs/wast-printer/esm/index.js +904 -0
- package/examples/node_modules/@webassemblyjs/wast-printer/lib/index.js +915 -0
- package/examples/node_modules/@webassemblyjs/wast-printer/package.json +36 -0
- package/examples/node_modules/@webpack-cli/configtest/README.md +27 -0
- package/examples/node_modules/@webpack-cli/configtest/lib/index.js +18 -25
- package/examples/node_modules/@webpack-cli/configtest/package.json +14 -36
- package/examples/node_modules/@webpack-cli/info/README.md +6 -5
- package/examples/node_modules/@webpack-cli/info/lib/index.js +57 -38
- package/examples/node_modules/@webpack-cli/info/package.json +19 -37
- package/examples/node_modules/@webpack-cli/serve/README.md +4 -0
- package/examples/node_modules/@webpack-cli/serve/lib/index.js +214 -41
- package/examples/node_modules/@webpack-cli/serve/lib/types.d.ts +62 -19
- package/examples/node_modules/@webpack-cli/serve/lib/types.js +21 -2
- package/examples/node_modules/@webpack-cli/serve/package.json +15 -36
- package/examples/node_modules/@xtuc/ieee754/LICENSE +28 -0
- package/examples/node_modules/@xtuc/ieee754/README.md +51 -0
- package/examples/node_modules/@xtuc/ieee754/dist/.gitkeep +0 -0
- package/examples/node_modules/@xtuc/ieee754/dist/index.cjs.js +96 -0
- package/examples/node_modules/@xtuc/ieee754/index.js +84 -0
- package/examples/node_modules/@xtuc/ieee754/package.json +42 -0
- package/examples/node_modules/@xtuc/long/LICENSE +202 -0
- package/examples/node_modules/@xtuc/long/README.md +257 -0
- package/examples/node_modules/@xtuc/long/dist/long.js +2 -0
- package/examples/node_modules/@xtuc/long/dist/long.js.map +1 -0
- package/examples/node_modules/@xtuc/long/index.d.ts +429 -0
- package/examples/node_modules/@xtuc/long/index.js +1 -0
- package/examples/node_modules/@xtuc/long/package.json +36 -0
- package/examples/node_modules/@xtuc/long/src/long.js +1405 -0
- package/examples/node_modules/acorn/CHANGELOG.md +788 -0
- package/examples/node_modules/acorn/LICENSE +21 -0
- package/examples/node_modules/acorn/README.md +280 -0
- package/examples/node_modules/acorn/bin/acorn +4 -0
- package/examples/node_modules/acorn/dist/acorn.d.ts +214 -0
- package/examples/node_modules/acorn/dist/acorn.js +5619 -0
- package/examples/node_modules/acorn/dist/acorn.mjs +5588 -0
- package/examples/node_modules/acorn/dist/acorn.mjs.d.ts +2 -0
- package/examples/node_modules/acorn/dist/bin.js +91 -0
- package/examples/node_modules/acorn/package.json +46 -0
- package/examples/node_modules/acorn-import-assertions/README.md +15 -0
- package/examples/node_modules/acorn-import-assertions/lib/index.js +287 -0
- package/examples/node_modules/acorn-import-assertions/lib/index.mjs +242 -0
- package/examples/node_modules/acorn-import-assertions/package.json +49 -0
- package/examples/node_modules/acorn-import-assertions/src/index.js +242 -0
- package/examples/node_modules/ajv/.tonic_example.js +20 -0
- package/examples/node_modules/ajv/LICENSE +22 -0
- package/examples/node_modules/ajv/README.md +1497 -0
- package/examples/node_modules/ajv/dist/ajv.bundle.js +7189 -0
- package/examples/node_modules/ajv/dist/ajv.min.js +3 -0
- package/examples/node_modules/ajv/dist/ajv.min.js.map +1 -0
- package/examples/node_modules/ajv/lib/ajv.d.ts +397 -0
- package/examples/node_modules/ajv/lib/ajv.js +506 -0
- package/examples/node_modules/ajv/lib/cache.js +26 -0
- package/examples/node_modules/ajv/lib/compile/async.js +90 -0
- package/examples/node_modules/ajv/lib/compile/equal.js +5 -0
- package/examples/node_modules/ajv/lib/compile/error_classes.js +34 -0
- package/examples/node_modules/ajv/lib/compile/formats.js +142 -0
- package/examples/node_modules/ajv/lib/compile/index.js +387 -0
- package/examples/node_modules/ajv/lib/compile/resolve.js +270 -0
- package/examples/node_modules/ajv/lib/compile/rules.js +66 -0
- package/examples/node_modules/ajv/lib/compile/schema_obj.js +9 -0
- package/examples/node_modules/ajv/lib/compile/ucs2length.js +20 -0
- package/examples/node_modules/ajv/lib/compile/util.js +239 -0
- package/examples/node_modules/ajv/lib/data.js +49 -0
- package/examples/node_modules/ajv/lib/definition_schema.js +37 -0
- package/examples/node_modules/ajv/lib/dot/_limit.jst +113 -0
- package/examples/node_modules/ajv/lib/dot/_limitItems.jst +12 -0
- package/examples/node_modules/ajv/lib/dot/_limitLength.jst +12 -0
- package/examples/node_modules/ajv/lib/dot/_limitProperties.jst +12 -0
- package/examples/node_modules/ajv/lib/dot/allOf.jst +32 -0
- package/examples/node_modules/ajv/lib/dot/anyOf.jst +46 -0
- package/examples/node_modules/ajv/lib/dot/coerce.def +51 -0
- package/examples/node_modules/ajv/lib/dot/comment.jst +9 -0
- package/examples/node_modules/ajv/lib/dot/const.jst +11 -0
- package/examples/node_modules/ajv/lib/dot/contains.jst +55 -0
- package/examples/node_modules/ajv/lib/dot/custom.jst +191 -0
- package/examples/node_modules/ajv/lib/dot/defaults.def +47 -0
- package/examples/node_modules/ajv/lib/dot/definitions.def +203 -0
- package/examples/node_modules/ajv/lib/dot/dependencies.jst +79 -0
- package/examples/node_modules/ajv/lib/dot/enum.jst +30 -0
- package/examples/node_modules/ajv/lib/dot/errors.def +194 -0
- package/examples/node_modules/ajv/lib/dot/format.jst +106 -0
- package/examples/node_modules/ajv/lib/dot/if.jst +73 -0
- package/examples/node_modules/ajv/lib/dot/items.jst +98 -0
- package/examples/node_modules/ajv/lib/dot/missing.def +39 -0
- package/examples/node_modules/ajv/lib/dot/multipleOf.jst +22 -0
- package/examples/node_modules/ajv/lib/dot/not.jst +43 -0
- package/examples/node_modules/ajv/lib/dot/oneOf.jst +54 -0
- package/examples/node_modules/ajv/lib/dot/pattern.jst +14 -0
- package/examples/node_modules/ajv/lib/dot/properties.jst +245 -0
- package/examples/node_modules/ajv/lib/dot/propertyNames.jst +52 -0
- package/examples/node_modules/ajv/lib/dot/ref.jst +85 -0
- package/examples/node_modules/ajv/lib/dot/required.jst +108 -0
- package/examples/node_modules/ajv/lib/dot/uniqueItems.jst +62 -0
- package/examples/node_modules/ajv/lib/dot/validate.jst +276 -0
- package/examples/node_modules/ajv/lib/dotjs/README.md +3 -0
- package/examples/node_modules/ajv/lib/dotjs/_limit.js +163 -0
- package/examples/node_modules/ajv/lib/dotjs/_limitItems.js +80 -0
- package/examples/node_modules/ajv/lib/dotjs/_limitLength.js +85 -0
- package/examples/node_modules/ajv/lib/dotjs/_limitProperties.js +80 -0
- package/examples/node_modules/ajv/lib/dotjs/allOf.js +42 -0
- package/examples/node_modules/ajv/lib/dotjs/anyOf.js +73 -0
- package/examples/node_modules/ajv/lib/dotjs/comment.js +14 -0
- package/examples/node_modules/ajv/lib/dotjs/const.js +56 -0
- package/examples/node_modules/ajv/lib/dotjs/contains.js +81 -0
- package/examples/node_modules/ajv/lib/dotjs/custom.js +228 -0
- package/examples/node_modules/ajv/lib/dotjs/dependencies.js +168 -0
- package/examples/node_modules/ajv/lib/dotjs/enum.js +66 -0
- package/examples/node_modules/ajv/lib/dotjs/format.js +150 -0
- package/examples/node_modules/ajv/lib/dotjs/if.js +103 -0
- package/examples/node_modules/ajv/lib/dotjs/index.js +33 -0
- package/examples/node_modules/ajv/lib/dotjs/items.js +140 -0
- package/examples/node_modules/ajv/lib/dotjs/multipleOf.js +80 -0
- package/examples/node_modules/ajv/lib/dotjs/not.js +84 -0
- package/examples/node_modules/ajv/lib/dotjs/oneOf.js +73 -0
- package/examples/node_modules/ajv/lib/dotjs/pattern.js +75 -0
- package/examples/node_modules/ajv/lib/dotjs/properties.js +335 -0
- package/examples/node_modules/ajv/lib/dotjs/propertyNames.js +81 -0
- package/examples/node_modules/ajv/lib/dotjs/ref.js +124 -0
- package/examples/node_modules/ajv/lib/dotjs/required.js +270 -0
- package/examples/node_modules/ajv/lib/dotjs/uniqueItems.js +86 -0
- package/examples/node_modules/ajv/lib/dotjs/validate.js +482 -0
- package/examples/node_modules/ajv/lib/keyword.js +146 -0
- package/examples/node_modules/ajv/lib/refs/data.json +17 -0
- package/examples/node_modules/ajv/lib/refs/json-schema-draft-04.json +149 -0
- package/examples/node_modules/ajv/lib/refs/json-schema-draft-06.json +154 -0
- package/examples/node_modules/ajv/lib/refs/json-schema-draft-07.json +168 -0
- package/examples/node_modules/ajv/lib/refs/json-schema-secure.json +94 -0
- package/examples/node_modules/ajv/package.json +106 -0
- package/examples/node_modules/ajv/scripts/.eslintrc.yml +3 -0
- package/examples/node_modules/ajv/scripts/bundle.js +61 -0
- package/examples/node_modules/ajv/scripts/compile-dots.js +73 -0
- package/examples/node_modules/ajv/scripts/info +10 -0
- package/examples/node_modules/ajv/scripts/prepare-tests +12 -0
- package/examples/node_modules/ajv/scripts/publish-built-version +32 -0
- package/examples/node_modules/ajv/scripts/travis-gh-pages +23 -0
- package/examples/node_modules/ajv-keywords/LICENSE +21 -0
- package/examples/node_modules/ajv-keywords/README.md +836 -0
- package/examples/node_modules/ajv-keywords/ajv-keywords.d.ts +7 -0
- package/examples/node_modules/ajv-keywords/index.js +35 -0
- package/examples/node_modules/ajv-keywords/keywords/_formatLimit.js +101 -0
- package/examples/node_modules/ajv-keywords/keywords/_util.js +15 -0
- package/examples/node_modules/ajv-keywords/keywords/allRequired.js +18 -0
- package/examples/node_modules/ajv-keywords/keywords/anyRequired.js +24 -0
- package/examples/node_modules/ajv-keywords/keywords/deepProperties.js +54 -0
- package/examples/node_modules/ajv-keywords/keywords/deepRequired.js +57 -0
- package/examples/node_modules/ajv-keywords/keywords/dot/_formatLimit.jst +116 -0
- package/examples/node_modules/ajv-keywords/keywords/dot/patternRequired.jst +33 -0
- package/examples/node_modules/ajv-keywords/keywords/dot/switch.jst +71 -0
- package/examples/node_modules/ajv-keywords/keywords/dotjs/README.md +3 -0
- package/examples/node_modules/ajv-keywords/keywords/dotjs/_formatLimit.js +178 -0
- package/examples/node_modules/ajv-keywords/keywords/dotjs/patternRequired.js +58 -0
- package/examples/node_modules/ajv-keywords/keywords/dotjs/switch.js +129 -0
- package/examples/node_modules/ajv-keywords/keywords/dynamicDefaults.js +72 -0
- package/examples/node_modules/ajv-keywords/keywords/formatMaximum.js +3 -0
- package/examples/node_modules/ajv-keywords/keywords/formatMinimum.js +3 -0
- package/examples/node_modules/ajv-keywords/keywords/index.js +22 -0
- package/examples/node_modules/ajv-keywords/keywords/instanceof.js +58 -0
- package/examples/node_modules/ajv-keywords/keywords/oneRequired.js +24 -0
- package/examples/node_modules/ajv-keywords/keywords/patternRequired.js +21 -0
- package/examples/node_modules/ajv-keywords/keywords/prohibited.js +24 -0
- package/examples/node_modules/ajv-keywords/keywords/range.js +36 -0
- package/examples/node_modules/ajv-keywords/keywords/regexp.js +36 -0
- package/examples/node_modules/ajv-keywords/keywords/select.js +79 -0
- package/examples/node_modules/ajv-keywords/keywords/switch.js +38 -0
- package/examples/node_modules/ajv-keywords/keywords/transform.js +80 -0
- package/examples/node_modules/ajv-keywords/keywords/typeof.js +32 -0
- package/examples/node_modules/ajv-keywords/keywords/uniqueItemProperties.js +59 -0
- package/examples/node_modules/ajv-keywords/package.json +53 -0
- package/examples/node_modules/browserslist/LICENSE +20 -0
- package/examples/node_modules/browserslist/README.md +66 -0
- package/examples/node_modules/browserslist/browser.js +50 -0
- package/examples/node_modules/browserslist/cli.js +152 -0
- package/examples/node_modules/browserslist/error.d.ts +7 -0
- package/examples/node_modules/browserslist/error.js +12 -0
- package/examples/node_modules/browserslist/index.d.ts +178 -0
- package/examples/node_modules/browserslist/index.js +1235 -0
- package/examples/node_modules/browserslist/node.js +393 -0
- package/examples/node_modules/browserslist/package.json +41 -0
- package/examples/node_modules/browserslist/update-db.js +317 -0
- package/examples/node_modules/buffer-from/LICENSE +21 -0
- package/examples/node_modules/buffer-from/index.js +72 -0
- package/examples/node_modules/buffer-from/package.json +19 -0
- package/examples/node_modules/buffer-from/readme.md +69 -0
- package/examples/node_modules/caniuse-lite/LICENSE +395 -0
- package/examples/node_modules/caniuse-lite/README.md +92 -0
- package/examples/node_modules/caniuse-lite/data/agents.js +1 -0
- package/examples/node_modules/caniuse-lite/data/browserVersions.js +1 -0
- package/examples/node_modules/caniuse-lite/data/browsers.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/aac.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/abortcontroller.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/ac3-ec3.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/accelerometer.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/addeventlistener.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/alternate-stylesheet.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/ambient-light.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/apng.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/array-find-index.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/array-find.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/array-flat.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/array-includes.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/arrow-functions.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/asmjs.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/async-clipboard.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/async-functions.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/atob-btoa.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/audio-api.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/audio.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/audiotracks.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/autofocus.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/auxclick.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/av1.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/avif.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/background-attachment.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/background-clip-text.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/background-img-opts.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/background-position-x-y.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/background-repeat-round-space.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/background-sync.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/battery-status.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/beacon.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/beforeafterprint.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/bigint.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/blobbuilder.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/bloburls.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/border-image.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/border-radius.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/broadcastchannel.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/brotli.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/calc.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/canvas-blending.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/canvas-text.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/canvas.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/ch-unit.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/chacha20-poly1305.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/channel-messaging.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/childnode-remove.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/classlist.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/client-hints-dpr-width-viewport.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/clipboard.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/colr-v1.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/colr.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/comparedocumentposition.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/console-basic.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/console-time.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/const.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/constraint-validation.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/contenteditable.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/contentsecuritypolicy.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/contentsecuritypolicy2.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/cookie-store-api.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/cors.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/createimagebitmap.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/credential-management.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/cryptography.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-all.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-animation.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-any-link.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-appearance.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-at-counter-style.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-autofill.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-backdrop-filter.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-background-offsets.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-backgroundblendmode.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-boxdecorationbreak.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-boxshadow.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-canvas.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-caret-color.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-cascade-layers.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-case-insensitive.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-clip-path.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-color-adjust.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-color-function.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-conic-gradients.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-container-queries.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-containment.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-content-visibility.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-counters.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-crisp-edges.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-cross-fade.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-default-pseudo.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-descendant-gtgt.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-deviceadaptation.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-dir-pseudo.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-display-contents.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-element-function.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-env-function.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-exclusions.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-featurequeries.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-file-selector-button.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-filter-function.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-filters.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-first-letter.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-first-line.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-fixed.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-focus-visible.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-focus-within.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-font-palette.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-font-rendering-controls.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-font-stretch.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-gencontent.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-gradients.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-grid.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-hanging-punctuation.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-has.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-hyphenate.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-hyphens.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-image-orientation.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-image-set.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-in-out-of-range.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-indeterminate-pseudo.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-initial-letter.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-initial-value.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-lch-lab.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-letter-spacing.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-line-clamp.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-logical-props.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-marker-pseudo.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-masks.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-matches-pseudo.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-math-functions.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-media-interaction.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-media-resolution.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-media-scripting.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-mediaqueries.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-mixblendmode.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-motion-paths.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-namespaces.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-nesting.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-not-sel-list.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-nth-child-of.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-opacity.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-optional-pseudo.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-overflow-anchor.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-overflow-overlay.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-overflow.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-overscroll-behavior.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-page-break.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-paged-media.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-paint-api.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-placeholder-shown.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-placeholder.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-read-only-write.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-rebeccapurple.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-reflections.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-regions.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-repeating-gradients.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-resize.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-revert-value.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-rrggbbaa.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-scroll-behavior.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-scroll-timeline.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-scrollbar.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-sel2.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-sel3.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-selection.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-shapes.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-snappoints.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-sticky.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-subgrid.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-supports-api.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-table.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-text-align-last.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-text-indent.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-text-justify.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-text-orientation.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-text-spacing.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-textshadow.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-touch-action-2.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-touch-action.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-transitions.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-unicode-bidi.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-unset-value.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-variables.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-when-else.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-widows-orphans.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-width-stretch.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-writing-mode.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css-zoom.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css3-attr.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css3-boxsizing.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css3-colors.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css3-cursors-grab.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css3-cursors-newer.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css3-cursors.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/css3-tabsize.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/currentcolor.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/custom-elements.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/custom-elementsv1.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/customevent.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/datalist.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/dataset.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/datauri.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/date-tolocaledatestring.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/decorators.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/details.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/deviceorientation.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/devicepixelratio.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/dialog.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/dispatchevent.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/dnssec.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/do-not-track.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/document-currentscript.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/document-evaluate-xpath.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/document-execcommand.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/document-policy.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/document-scrollingelement.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/documenthead.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/dom-manip-convenience.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/dom-range.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/domcontentloaded.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/domfocusin-domfocusout-events.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/dommatrix.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/download.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/dragndrop.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/element-closest.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/element-from-point.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/element-scroll-methods.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/eme.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/eot.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/es5.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/es6-class.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/es6-generators.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/es6-module-dynamic-import.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/es6-module.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/es6-number.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/es6-string-includes.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/es6.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/eventsource.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/extended-system-fonts.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/feature-policy.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/fetch.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/fieldset-disabled.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/fileapi.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/filereader.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/filereadersync.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/filesystem.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/flac.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/flexbox-gap.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/flexbox.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/flow-root.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/focusin-focusout-events.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/focusoptions-preventscroll.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/font-family-system-ui.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/font-feature.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/font-kerning.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/font-loading.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/font-metrics-overrides.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/font-size-adjust.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/font-smooth.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/font-unicode-range.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/font-variant-alternates.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/font-variant-east-asian.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/font-variant-numeric.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/fontface.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/form-attribute.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/form-submit-attributes.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/form-validation.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/forms.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/fullscreen.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/gamepad.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/geolocation.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/getboundingclientrect.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/getcomputedstyle.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/getelementsbyclassname.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/getrandomvalues.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/gyroscope.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/hardwareconcurrency.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/hashchange.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/heif.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/hevc.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/hidden.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/high-resolution-time.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/history.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/html-media-capture.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/html5semantic.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/http-live-streaming.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/http2.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/http3.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/iframe-sandbox.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/iframe-seamless.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/iframe-srcdoc.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/imagecapture.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/ime.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/img-naturalwidth-naturalheight.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/import-maps.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/imports.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/indeterminate-checkbox.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/indexeddb.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/indexeddb2.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/inline-block.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/innertext.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/input-autocomplete-onoff.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/input-color.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/input-datetime.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/input-email-tel-url.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/input-event.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/input-file-accept.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/input-file-directory.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/input-file-multiple.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/input-inputmode.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/input-minlength.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/input-number.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/input-pattern.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/input-placeholder.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/input-range.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/input-search.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/input-selection.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/insert-adjacent.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/insertadjacenthtml.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/internationalization.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/intersectionobserver-v2.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/intersectionobserver.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/intl-pluralrules.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/intrinsic-width.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/jpeg2000.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/jpegxl.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/jpegxr.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/js-regexp-lookbehind.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/json.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/justify-content-space-evenly.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/kerning-pairs-ligatures.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/keyboardevent-charcode.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/keyboardevent-code.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/keyboardevent-getmodifierstate.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/keyboardevent-key.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/keyboardevent-location.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/keyboardevent-which.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/lazyload.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/let.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/link-icon-png.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/link-icon-svg.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/link-rel-dns-prefetch.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/link-rel-modulepreload.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/link-rel-preconnect.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/link-rel-prefetch.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/link-rel-preload.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/link-rel-prerender.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/loading-lazy-attr.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/localecompare.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/magnetometer.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/matchesselector.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/matchmedia.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/mathml.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/maxlength.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/media-attribute.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/media-fragments.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/media-session-api.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/mediacapture-fromelement.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/mediarecorder.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/mediasource.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/menu.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/meta-theme-color.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/meter.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/midi.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/minmaxwh.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/mp3.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/mpeg-dash.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/mpeg4.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/multibackgrounds.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/multicolumn.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/mutation-events.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/mutationobserver.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/namevalue-storage.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/native-filesystem-api.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/nav-timing.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/navigator-language.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/netinfo.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/notifications.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/object-entries.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/object-fit.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/object-observe.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/object-values.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/objectrtc.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/offline-apps.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/offscreencanvas.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/ogg-vorbis.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/ogv.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/ol-reversed.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/once-event-listener.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/online-status.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/opus.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/orientation-sensor.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/outline.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/pad-start-end.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/page-transition-events.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/pagevisibility.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/passive-event-listener.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/passwordrules.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/path2d.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/payment-request.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/pdf-viewer.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/permissions-api.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/permissions-policy.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/picture-in-picture.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/picture.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/ping.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/png-alpha.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/pointer-events.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/pointer.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/pointerlock.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/portals.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/prefers-color-scheme.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/prefers-reduced-motion.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/private-class-fields.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/private-methods-and-accessors.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/progress.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/promise-finally.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/promises.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/proximity.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/proxy.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/public-class-fields.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/publickeypinning.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/push-api.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/queryselector.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/readonly-attr.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/referrer-policy.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/registerprotocolhandler.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/rel-noopener.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/rel-noreferrer.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/rellist.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/rem.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/requestanimationframe.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/requestidlecallback.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/resizeobserver.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/resource-timing.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/rest-parameters.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/rtcpeerconnection.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/ruby.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/run-in.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/same-site-cookie-attribute.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/screen-orientation.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/script-async.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/script-defer.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/scrollintoview.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/scrollintoviewifneeded.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/sdch.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/selection-api.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/server-timing.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/serviceworkers.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/setimmediate.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/sha-2.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/shadowdom.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/shadowdomv1.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/sharedarraybuffer.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/sharedworkers.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/sni.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/spdy.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/speech-recognition.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/speech-synthesis.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/spellcheck-attribute.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/sql-storage.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/srcset.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/stream.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/streams.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/stricttransportsecurity.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/style-scoped.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/subresource-integrity.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/svg-css.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/svg-filters.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/svg-fonts.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/svg-fragment.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/svg-html.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/svg-html5.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/svg-img.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/svg-smil.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/svg.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/sxg.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/tabindex-attr.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/template-literals.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/template.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/temporal.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/testfeat.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/text-decoration.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/text-emphasis.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/text-overflow.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/text-size-adjust.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/text-stroke.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/text-underline-offset.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/textcontent.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/textencoder.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/tls1-1.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/tls1-2.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/tls1-3.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/token-binding.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/touch.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/transforms2d.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/transforms3d.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/trusted-types.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/ttf.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/typedarrays.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/u2f.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/unhandledrejection.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/upgradeinsecurerequests.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/url-scroll-to-text-fragment.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/url.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/urlsearchparams.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/use-strict.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/user-select-none.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/user-timing.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/variable-fonts.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/vector-effect.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/vibration.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/video.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/videotracks.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/viewport-unit-variants.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/viewport-units.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/wai-aria.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/wake-lock.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/wasm.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/wav.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/wbr-element.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/web-animation.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/web-app-manifest.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/web-bluetooth.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/web-serial.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/web-share.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/webauthn.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/webgl.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/webgl2.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/webgpu.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/webhid.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/webkit-user-drag.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/webm.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/webnfc.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/webp.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/websockets.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/webusb.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/webvr.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/webvtt.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/webworkers.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/webxr.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/will-change.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/woff.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/woff2.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/word-break.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/wordwrap.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/x-doc-messaging.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/x-frame-options.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/xhr2.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/xhtml.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/xhtmlsmil.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features/xml-serializer.js +1 -0
- package/examples/node_modules/caniuse-lite/data/features.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/AD.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/AE.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/AF.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/AG.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/AI.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/AL.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/AM.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/AO.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/AR.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/AS.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/AT.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/AU.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/AW.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/AX.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/AZ.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/BA.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/BB.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/BD.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/BE.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/BF.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/BG.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/BH.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/BI.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/BJ.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/BM.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/BN.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/BO.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/BR.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/BS.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/BT.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/BW.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/BY.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/BZ.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/CA.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/CD.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/CF.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/CG.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/CH.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/CI.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/CK.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/CL.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/CM.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/CN.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/CO.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/CR.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/CU.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/CV.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/CX.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/CY.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/CZ.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/DE.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/DJ.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/DK.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/DM.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/DO.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/DZ.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/EC.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/EE.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/EG.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/ER.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/ES.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/ET.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/FI.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/FJ.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/FK.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/FM.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/FO.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/FR.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/GA.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/GB.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/GD.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/GE.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/GF.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/GG.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/GH.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/GI.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/GL.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/GM.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/GN.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/GP.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/GQ.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/GR.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/GT.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/GU.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/GW.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/GY.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/HK.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/HN.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/HR.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/HT.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/HU.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/ID.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/IE.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/IL.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/IM.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/IN.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/IQ.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/IR.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/IS.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/IT.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/JE.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/JM.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/JO.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/JP.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/KE.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/KG.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/KH.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/KI.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/KM.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/KN.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/KP.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/KR.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/KW.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/KY.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/KZ.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/LA.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/LB.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/LC.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/LI.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/LK.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/LR.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/LS.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/LT.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/LU.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/LV.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/LY.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/MA.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/MC.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/MD.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/ME.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/MG.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/MH.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/MK.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/ML.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/MM.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/MN.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/MO.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/MP.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/MQ.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/MR.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/MS.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/MT.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/MU.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/MV.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/MW.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/MX.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/MY.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/MZ.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/NA.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/NC.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/NE.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/NF.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/NG.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/NI.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/NL.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/NO.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/NP.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/NR.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/NU.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/NZ.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/OM.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/PA.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/PE.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/PF.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/PG.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/PH.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/PK.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/PL.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/PM.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/PN.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/PR.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/PS.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/PT.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/PW.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/PY.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/QA.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/RE.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/RO.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/RS.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/RU.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/RW.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/SA.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/SB.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/SC.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/SD.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/SE.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/SG.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/SH.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/SI.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/SK.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/SL.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/SM.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/SN.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/SO.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/SR.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/ST.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/SV.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/SY.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/SZ.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/TC.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/TD.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/TG.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/TH.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/TJ.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/TK.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/TL.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/TM.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/TN.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/TO.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/TR.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/TT.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/TV.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/TW.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/TZ.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/UA.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/UG.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/US.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/UY.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/UZ.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/VA.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/VC.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/VE.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/VG.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/VI.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/VN.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/VU.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/WF.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/WS.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/YE.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/YT.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/ZA.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/ZM.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/ZW.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/alt-af.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/alt-an.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/alt-as.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/alt-eu.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/alt-na.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/alt-oc.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/alt-sa.js +1 -0
- package/examples/node_modules/caniuse-lite/data/regions/alt-ww.js +1 -0
- package/examples/node_modules/caniuse-lite/dist/lib/statuses.js +9 -0
- package/examples/node_modules/caniuse-lite/dist/lib/supported.js +9 -0
- package/examples/node_modules/caniuse-lite/dist/unpacker/agents.js +47 -0
- package/examples/node_modules/caniuse-lite/dist/unpacker/browserVersions.js +1 -0
- package/examples/node_modules/caniuse-lite/dist/unpacker/browsers.js +1 -0
- package/examples/node_modules/caniuse-lite/dist/unpacker/feature.js +48 -0
- package/examples/node_modules/caniuse-lite/dist/unpacker/features.js +6 -0
- package/examples/node_modules/caniuse-lite/dist/unpacker/index.js +4 -0
- package/examples/node_modules/caniuse-lite/dist/unpacker/region.js +22 -0
- package/examples/node_modules/caniuse-lite/package.json +34 -0
- package/examples/node_modules/chrome-trace-event/CHANGES.md +26 -0
- package/examples/node_modules/chrome-trace-event/LICENSE.txt +23 -0
- package/examples/node_modules/chrome-trace-event/README.md +31 -0
- package/examples/node_modules/chrome-trace-event/dist/trace-event.d.ts +52 -0
- package/examples/node_modules/chrome-trace-event/dist/trace-event.js +170 -0
- package/examples/node_modules/chrome-trace-event/dist/trace-event.js.map +1 -0
- package/examples/node_modules/chrome-trace-event/package.json +38 -0
- package/examples/node_modules/clone-deep/package.json +17 -48
- package/examples/node_modules/colorette/README.md +54 -22
- package/examples/node_modules/colorette/index.cjs +213 -71
- package/examples/node_modules/colorette/index.d.ts +91 -47
- package/examples/node_modules/colorette/index.js +142 -68
- package/examples/node_modules/colorette/package.json +17 -51
- package/examples/node_modules/commander/CHANGELOG.md +339 -360
- package/examples/node_modules/commander/Readme.md +254 -743
- package/examples/node_modules/commander/index.js +1003 -1996
- package/examples/node_modules/commander/package.json +24 -86
- package/examples/node_modules/commander/typings/index.d.ts +153 -470
- package/examples/node_modules/cross-spawn/package.json +40 -71
- package/examples/node_modules/electron-to-chromium/CHANGELOG.md +14 -0
- package/examples/node_modules/electron-to-chromium/LICENSE +5 -0
- package/examples/node_modules/electron-to-chromium/README.md +186 -0
- package/examples/node_modules/electron-to-chromium/chromium-versions.js +45 -0
- package/examples/node_modules/electron-to-chromium/chromium-versions.json +1 -0
- package/examples/node_modules/electron-to-chromium/full-chromium-versions.js +1833 -0
- package/examples/node_modules/electron-to-chromium/full-chromium-versions.json +1 -0
- package/examples/node_modules/electron-to-chromium/full-versions.js +1335 -0
- package/examples/node_modules/electron-to-chromium/full-versions.json +1 -0
- package/examples/node_modules/electron-to-chromium/index.js +36 -0
- package/examples/node_modules/electron-to-chromium/package.json +42 -0
- package/examples/node_modules/electron-to-chromium/versions.js +89 -0
- package/examples/node_modules/electron-to-chromium/versions.json +1 -0
- package/examples/node_modules/enhanced-resolve/LICENSE +20 -0
- package/examples/node_modules/enhanced-resolve/README.md +167 -0
- package/examples/node_modules/enhanced-resolve/lib/AliasFieldPlugin.js +96 -0
- package/examples/node_modules/enhanced-resolve/lib/AliasPlugin.js +120 -0
- package/examples/node_modules/enhanced-resolve/lib/AppendPlugin.js +47 -0
- package/examples/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js +477 -0
- package/examples/node_modules/enhanced-resolve/lib/CloneBasenamePlugin.js +45 -0
- package/examples/node_modules/enhanced-resolve/lib/ConditionalPlugin.js +59 -0
- package/examples/node_modules/enhanced-resolve/lib/DescriptionFilePlugin.js +96 -0
- package/examples/node_modules/enhanced-resolve/lib/DescriptionFileUtils.js +170 -0
- package/examples/node_modules/enhanced-resolve/lib/DirectoryExistsPlugin.js +63 -0
- package/examples/node_modules/enhanced-resolve/lib/ExportsFieldPlugin.js +149 -0
- package/examples/node_modules/enhanced-resolve/lib/FileExistsPlugin.js +58 -0
- package/examples/node_modules/enhanced-resolve/lib/ImportsFieldPlugin.js +171 -0
- package/examples/node_modules/enhanced-resolve/lib/JoinRequestPartPlugin.js +64 -0
- package/examples/node_modules/enhanced-resolve/lib/JoinRequestPlugin.js +41 -0
- package/examples/node_modules/enhanced-resolve/lib/LogInfoPlugin.js +50 -0
- package/examples/node_modules/enhanced-resolve/lib/MainFieldPlugin.js +81 -0
- package/examples/node_modules/enhanced-resolve/lib/ModulesInHierachicDirectoriesPlugin.js +9 -0
- package/examples/node_modules/enhanced-resolve/lib/ModulesInHierarchicalDirectoriesPlugin.js +80 -0
- package/examples/node_modules/enhanced-resolve/lib/ModulesInRootPlugin.js +47 -0
- package/examples/node_modules/enhanced-resolve/lib/NextPlugin.js +33 -0
- package/examples/node_modules/enhanced-resolve/lib/ParsePlugin.js +74 -0
- package/examples/node_modules/enhanced-resolve/lib/PnpPlugin.js +103 -0
- package/examples/node_modules/enhanced-resolve/lib/Resolver.js +500 -0
- package/examples/node_modules/enhanced-resolve/lib/ResolverFactory.js +661 -0
- package/examples/node_modules/enhanced-resolve/lib/RestrictionsPlugin.js +65 -0
- package/examples/node_modules/enhanced-resolve/lib/ResultPlugin.js +42 -0
- package/examples/node_modules/enhanced-resolve/lib/RootsPlugin.js +62 -0
- package/examples/node_modules/enhanced-resolve/lib/SelfReferencePlugin.js +80 -0
- package/examples/node_modules/enhanced-resolve/lib/SymlinkPlugin.js +88 -0
- package/examples/node_modules/enhanced-resolve/lib/SyncAsyncFileSystemDecorator.js +95 -0
- package/examples/node_modules/enhanced-resolve/lib/TryNextPlugin.js +41 -0
- package/examples/node_modules/enhanced-resolve/lib/UnsafeCachePlugin.js +99 -0
- package/examples/node_modules/enhanced-resolve/lib/UseFilePlugin.js +49 -0
- package/examples/node_modules/enhanced-resolve/lib/createInnerContext.js +37 -0
- package/examples/node_modules/enhanced-resolve/lib/forEachBail.js +25 -0
- package/examples/node_modules/enhanced-resolve/lib/getInnerRequest.js +27 -0
- package/examples/node_modules/enhanced-resolve/lib/getPaths.js +37 -0
- package/examples/node_modules/enhanced-resolve/lib/index.js +131 -0
- package/examples/node_modules/enhanced-resolve/lib/util/entrypoints.js +667 -0
- package/examples/node_modules/enhanced-resolve/lib/util/identifier.js +26 -0
- package/examples/node_modules/enhanced-resolve/lib/util/path.js +221 -0
- package/examples/node_modules/enhanced-resolve/lib/util/process-browser.js +16 -0
- package/examples/node_modules/enhanced-resolve/package.json +70 -0
- package/examples/node_modules/enhanced-resolve/types.d.ts +506 -0
- package/examples/node_modules/envinfo/dist/cli.js +1 -1
- package/examples/node_modules/envinfo/dist/envinfo.js +1 -1
- package/examples/node_modules/envinfo/package.json +55 -89
- package/examples/node_modules/es-module-lexer/LICENSE +10 -0
- package/examples/node_modules/es-module-lexer/README.md +251 -0
- package/examples/node_modules/es-module-lexer/dist/lexer.asm.js +1 -0
- package/examples/node_modules/es-module-lexer/dist/lexer.cjs +1 -0
- package/examples/node_modules/es-module-lexer/dist/lexer.js +2 -0
- package/examples/node_modules/es-module-lexer/lexer.js +899 -0
- package/examples/node_modules/es-module-lexer/package.json +53 -0
- package/examples/node_modules/es-module-lexer/types/lexer.d.ts +86 -0
- package/examples/node_modules/escalade/dist/index.js +22 -0
- package/examples/node_modules/escalade/dist/index.mjs +22 -0
- package/examples/node_modules/escalade/index.d.ts +3 -0
- package/examples/node_modules/escalade/license +9 -0
- package/examples/node_modules/escalade/package.json +61 -0
- package/examples/node_modules/escalade/readme.md +211 -0
- package/examples/node_modules/escalade/sync/index.d.ts +2 -0
- package/examples/node_modules/escalade/sync/index.js +18 -0
- package/examples/node_modules/escalade/sync/index.mjs +18 -0
- package/examples/node_modules/eslint-scope/CHANGELOG.md +70 -0
- package/examples/node_modules/eslint-scope/LICENSE +22 -0
- package/examples/node_modules/eslint-scope/README.md +54 -0
- package/examples/node_modules/eslint-scope/lib/definition.js +86 -0
- package/examples/node_modules/eslint-scope/lib/index.js +165 -0
- package/examples/node_modules/eslint-scope/lib/pattern-visitor.js +152 -0
- package/examples/node_modules/eslint-scope/lib/reference.js +167 -0
- package/examples/node_modules/eslint-scope/lib/referencer.js +629 -0
- package/examples/node_modules/eslint-scope/lib/scope-manager.js +247 -0
- package/examples/node_modules/eslint-scope/lib/scope.js +748 -0
- package/examples/node_modules/eslint-scope/lib/variable.js +88 -0
- package/examples/node_modules/eslint-scope/package.json +48 -0
- package/examples/node_modules/esrecurse/.babelrc +3 -0
- package/examples/node_modules/esrecurse/README.md +171 -0
- package/examples/node_modules/esrecurse/esrecurse.js +117 -0
- package/examples/node_modules/esrecurse/gulpfile.babel.js +92 -0
- package/examples/node_modules/esrecurse/node_modules/estraverse/.jshintrc +16 -0
- package/examples/node_modules/esrecurse/node_modules/estraverse/LICENSE.BSD +19 -0
- package/examples/node_modules/esrecurse/node_modules/estraverse/README.md +153 -0
- package/examples/node_modules/esrecurse/node_modules/estraverse/estraverse.js +805 -0
- package/examples/node_modules/esrecurse/node_modules/estraverse/gulpfile.js +70 -0
- package/examples/node_modules/esrecurse/node_modules/estraverse/package.json +40 -0
- package/examples/node_modules/esrecurse/package.json +52 -0
- package/examples/node_modules/estraverse/.jshintrc +16 -0
- package/examples/node_modules/estraverse/LICENSE.BSD +19 -0
- package/examples/node_modules/estraverse/README.md +153 -0
- package/examples/node_modules/estraverse/estraverse.js +782 -0
- package/examples/node_modules/estraverse/gulpfile.js +70 -0
- package/examples/node_modules/estraverse/package.json +40 -0
- package/examples/node_modules/events/.airtap.yml +15 -0
- package/examples/node_modules/events/.github/FUNDING.yml +12 -0
- package/examples/node_modules/events/.travis.yml +18 -0
- package/examples/node_modules/events/History.md +118 -0
- package/examples/node_modules/events/LICENSE +22 -0
- package/examples/node_modules/events/Readme.md +50 -0
- package/examples/node_modules/events/events.js +497 -0
- package/examples/node_modules/events/package.json +37 -0
- package/examples/node_modules/events/security.md +10 -0
- package/examples/node_modules/events/tests/add-listeners.js +111 -0
- package/examples/node_modules/events/tests/check-listener-leaks.js +101 -0
- package/examples/node_modules/events/tests/common.js +104 -0
- package/examples/node_modules/events/tests/errors.js +13 -0
- package/examples/node_modules/events/tests/events-list.js +28 -0
- package/examples/node_modules/events/tests/events-once.js +234 -0
- package/examples/node_modules/events/tests/index.js +64 -0
- package/examples/node_modules/events/tests/legacy-compat.js +16 -0
- package/examples/node_modules/events/tests/listener-count.js +37 -0
- package/examples/node_modules/events/tests/listeners-side-effects.js +56 -0
- package/examples/node_modules/events/tests/listeners.js +168 -0
- package/examples/node_modules/events/tests/max-listeners.js +47 -0
- package/examples/node_modules/events/tests/method-names.js +35 -0
- package/examples/node_modules/events/tests/modify-in-emit.js +90 -0
- package/examples/node_modules/events/tests/num-args.js +60 -0
- package/examples/node_modules/events/tests/once.js +83 -0
- package/examples/node_modules/events/tests/prepend.js +31 -0
- package/examples/node_modules/events/tests/remove-all-listeners.js +133 -0
- package/examples/node_modules/events/tests/remove-listeners.js +212 -0
- package/examples/node_modules/events/tests/set-max-listeners-side-effects.js +31 -0
- package/examples/node_modules/events/tests/special-event-names.js +45 -0
- package/examples/node_modules/events/tests/subclass.js +66 -0
- package/examples/node_modules/events/tests/symbols.js +25 -0
- package/examples/node_modules/execa/index.d.ts +12 -2
- package/examples/node_modules/execa/index.js +14 -4
- package/examples/node_modules/execa/lib/command.js +25 -5
- package/examples/node_modules/execa/lib/error.js +2 -0
- package/examples/node_modules/execa/lib/kill.js +7 -4
- package/examples/node_modules/execa/lib/stream.js +1 -1
- package/examples/node_modules/execa/package.json +72 -100
- package/examples/node_modules/execa/readme.md +16 -3
- package/examples/node_modules/fast-deep-equal/LICENSE +21 -0
- package/examples/node_modules/fast-deep-equal/README.md +96 -0
- package/examples/node_modules/fast-deep-equal/es6/index.d.ts +2 -0
- package/examples/node_modules/fast-deep-equal/es6/index.js +72 -0
- package/examples/node_modules/fast-deep-equal/es6/react.d.ts +2 -0
- package/examples/node_modules/fast-deep-equal/es6/react.js +79 -0
- package/examples/node_modules/fast-deep-equal/index.d.ts +4 -0
- package/examples/node_modules/fast-deep-equal/index.js +46 -0
- package/examples/node_modules/fast-deep-equal/package.json +61 -0
- package/examples/node_modules/fast-deep-equal/react.d.ts +2 -0
- package/examples/node_modules/fast-deep-equal/react.js +53 -0
- package/examples/node_modules/fast-json-stable-stringify/.eslintrc.yml +26 -0
- package/examples/node_modules/fast-json-stable-stringify/.github/FUNDING.yml +1 -0
- package/examples/node_modules/fast-json-stable-stringify/.travis.yml +8 -0
- package/examples/node_modules/fast-json-stable-stringify/LICENSE +21 -0
- package/examples/node_modules/fast-json-stable-stringify/README.md +131 -0
- package/examples/node_modules/fast-json-stable-stringify/benchmark/index.js +31 -0
- package/examples/node_modules/fast-json-stable-stringify/benchmark/test.json +137 -0
- package/examples/node_modules/fast-json-stable-stringify/example/key_cmp.js +7 -0
- package/examples/node_modules/fast-json-stable-stringify/example/nested.js +3 -0
- package/examples/node_modules/fast-json-stable-stringify/example/str.js +3 -0
- package/examples/node_modules/fast-json-stable-stringify/example/value_cmp.js +7 -0
- package/examples/node_modules/fast-json-stable-stringify/index.d.ts +4 -0
- package/examples/node_modules/fast-json-stable-stringify/index.js +59 -0
- package/examples/node_modules/fast-json-stable-stringify/package.json +52 -0
- package/examples/node_modules/fast-json-stable-stringify/test/cmp.js +13 -0
- package/examples/node_modules/fast-json-stable-stringify/test/nested.js +44 -0
- package/examples/node_modules/fast-json-stable-stringify/test/str.js +46 -0
- package/examples/node_modules/fast-json-stable-stringify/test/to-json.js +22 -0
- package/examples/node_modules/fastest-levenshtein/package.json +33 -60
- package/examples/node_modules/find-up/package.json +51 -83
- package/examples/node_modules/function-bind/package.json +23 -54
- package/examples/node_modules/get-stream/index.d.ts +1 -1
- package/examples/node_modules/get-stream/package.json +45 -77
- package/examples/node_modules/get-stream/readme.md +1 -1
- package/examples/node_modules/glob-to-regexp/.travis.yml +4 -0
- package/examples/node_modules/glob-to-regexp/README.md +75 -0
- package/examples/node_modules/glob-to-regexp/index.js +130 -0
- package/examples/node_modules/glob-to-regexp/package.json +23 -0
- package/examples/node_modules/glob-to-regexp/test.js +235 -0
- package/examples/node_modules/graceful-fs/LICENSE +15 -0
- package/examples/node_modules/graceful-fs/README.md +143 -0
- package/examples/node_modules/graceful-fs/clone.js +23 -0
- package/examples/node_modules/graceful-fs/graceful-fs.js +429 -0
- package/examples/node_modules/graceful-fs/legacy-streams.js +118 -0
- package/examples/node_modules/graceful-fs/package.json +50 -0
- package/examples/node_modules/graceful-fs/polyfills.js +348 -0
- package/examples/node_modules/has/package.json +21 -46
- package/examples/node_modules/has-flag/index.d.ts +39 -0
- package/examples/node_modules/has-flag/index.js +8 -0
- package/examples/node_modules/has-flag/license +9 -0
- package/examples/node_modules/has-flag/package.json +46 -0
- package/examples/node_modules/has-flag/readme.md +89 -0
- package/examples/node_modules/human-signals/package.json +27 -59
- package/examples/node_modules/import-local/index.js +9 -4
- package/examples/node_modules/import-local/package.json +50 -81
- package/examples/node_modules/import-local/readme.md +7 -8
- package/examples/node_modules/interpret/package.json +24 -67
- package/examples/node_modules/is-core-module/.eslintrc +0 -1
- package/examples/node_modules/is-core-module/.nycrc +0 -4
- package/examples/node_modules/is-core-module/CHANGELOG.md +69 -0
- package/examples/node_modules/is-core-module/README.md +6 -3
- package/examples/node_modules/is-core-module/core.json +85 -16
- package/examples/node_modules/is-core-module/index.js +1 -1
- package/examples/node_modules/is-core-module/package.json +67 -92
- package/examples/node_modules/is-core-module/test/index.js +47 -0
- package/examples/node_modules/is-plain-object/package.json +26 -68
- package/examples/node_modules/is-stream/index.d.ts +0 -1
- package/examples/node_modules/is-stream/index.js +1 -2
- package/examples/node_modules/is-stream/license +1 -1
- package/examples/node_modules/is-stream/package.json +40 -71
- package/examples/node_modules/is-stream/readme.md +12 -9
- package/examples/node_modules/isexe/package.json +16 -45
- package/examples/node_modules/isobject/package.json +24 -69
- package/examples/node_modules/jest-worker/LICENSE +21 -0
- package/examples/node_modules/jest-worker/README.md +247 -0
- package/examples/node_modules/jest-worker/build/Farm.d.ts +29 -0
- package/examples/node_modules/jest-worker/build/Farm.js +206 -0
- package/examples/node_modules/jest-worker/build/FifoQueue.d.ts +18 -0
- package/examples/node_modules/jest-worker/build/FifoQueue.js +171 -0
- package/examples/node_modules/jest-worker/build/PriorityQueue.d.ts +41 -0
- package/examples/node_modules/jest-worker/build/PriorityQueue.js +188 -0
- package/examples/node_modules/jest-worker/build/WorkerPool.d.ts +13 -0
- package/examples/node_modules/jest-worker/build/WorkerPool.js +49 -0
- package/examples/node_modules/jest-worker/build/base/BaseWorkerPool.d.ts +21 -0
- package/examples/node_modules/jest-worker/build/base/BaseWorkerPool.js +201 -0
- package/examples/node_modules/jest-worker/build/index.d.ts +49 -0
- package/examples/node_modules/jest-worker/build/index.js +223 -0
- package/examples/node_modules/jest-worker/build/types.d.ts +143 -0
- package/examples/node_modules/jest-worker/build/types.js +39 -0
- package/examples/node_modules/jest-worker/build/workers/ChildProcessWorker.d.ts +51 -0
- package/examples/node_modules/jest-worker/build/workers/ChildProcessWorker.js +333 -0
- package/examples/node_modules/jest-worker/build/workers/NodeThreadsWorker.d.ts +34 -0
- package/examples/node_modules/jest-worker/build/workers/NodeThreadsWorker.js +344 -0
- package/examples/node_modules/jest-worker/build/workers/messageParent.d.ts +8 -0
- package/examples/node_modules/jest-worker/build/workers/messageParent.js +38 -0
- package/examples/node_modules/jest-worker/build/workers/processChild.d.ts +7 -0
- package/examples/node_modules/jest-worker/build/workers/processChild.js +148 -0
- package/examples/node_modules/jest-worker/build/workers/threadChild.d.ts +7 -0
- package/examples/node_modules/jest-worker/build/workers/threadChild.js +159 -0
- package/examples/node_modules/jest-worker/package.json +38 -0
- package/examples/node_modules/json-parse-better-errors/CHANGELOG.md +46 -0
- package/examples/node_modules/json-parse-better-errors/LICENSE.md +7 -0
- package/examples/node_modules/json-parse-better-errors/README.md +46 -0
- package/examples/node_modules/json-parse-better-errors/index.js +38 -0
- package/examples/node_modules/json-parse-better-errors/package.json +45 -0
- package/examples/node_modules/json-schema-traverse/.eslintrc.yml +27 -0
- package/examples/node_modules/json-schema-traverse/.travis.yml +8 -0
- package/examples/node_modules/json-schema-traverse/LICENSE +21 -0
- package/examples/node_modules/json-schema-traverse/README.md +83 -0
- package/examples/node_modules/json-schema-traverse/index.js +89 -0
- package/examples/node_modules/json-schema-traverse/package.json +43 -0
- package/examples/node_modules/json-schema-traverse/spec/.eslintrc.yml +6 -0
- package/examples/node_modules/json-schema-traverse/spec/fixtures/schema.js +125 -0
- package/examples/node_modules/json-schema-traverse/spec/index.spec.js +171 -0
- package/examples/node_modules/kind-of/package.json +27 -83
- package/examples/node_modules/loader-runner/LICENSE +21 -0
- package/examples/node_modules/loader-runner/README.md +53 -0
- package/examples/node_modules/loader-runner/lib/LoaderLoadingError.js +11 -0
- package/examples/node_modules/loader-runner/lib/LoaderRunner.js +415 -0
- package/examples/node_modules/loader-runner/lib/loadLoader.js +54 -0
- package/examples/node_modules/loader-runner/package.json +45 -0
- package/examples/node_modules/locate-path/package.json +43 -75
- package/examples/node_modules/merge-stream/package.json +10 -45
- package/examples/node_modules/mime-db/HISTORY.md +507 -0
- package/examples/node_modules/mime-db/LICENSE +23 -0
- package/examples/node_modules/mime-db/README.md +100 -0
- package/examples/node_modules/mime-db/db.json +8519 -0
- package/examples/node_modules/mime-db/index.js +12 -0
- package/examples/node_modules/mime-db/package.json +60 -0
- package/examples/node_modules/mime-types/HISTORY.md +397 -0
- package/examples/node_modules/mime-types/LICENSE +23 -0
- package/examples/node_modules/mime-types/README.md +113 -0
- package/examples/node_modules/mime-types/index.js +188 -0
- package/examples/node_modules/mime-types/package.json +44 -0
- package/examples/node_modules/mimic-fn/package.json +40 -72
- package/examples/node_modules/neo-async/LICENSE +22 -0
- package/examples/node_modules/neo-async/README.md +273 -0
- package/examples/node_modules/neo-async/all.js +3 -0
- package/examples/node_modules/neo-async/allLimit.js +3 -0
- package/examples/node_modules/neo-async/allSeries.js +3 -0
- package/examples/node_modules/neo-async/angelFall.js +3 -0
- package/examples/node_modules/neo-async/any.js +3 -0
- package/examples/node_modules/neo-async/anyLimit.js +3 -0
- package/examples/node_modules/neo-async/anySeries.js +3 -0
- package/examples/node_modules/neo-async/apply.js +3 -0
- package/examples/node_modules/neo-async/applyEach.js +3 -0
- package/examples/node_modules/neo-async/applyEachSeries.js +3 -0
- package/examples/node_modules/neo-async/async.js +9184 -0
- package/examples/node_modules/neo-async/async.min.js +80 -0
- package/examples/node_modules/neo-async/asyncify.js +3 -0
- package/examples/node_modules/neo-async/auto.js +3 -0
- package/examples/node_modules/neo-async/autoInject.js +3 -0
- package/examples/node_modules/neo-async/cargo.js +3 -0
- package/examples/node_modules/neo-async/compose.js +3 -0
- package/examples/node_modules/neo-async/concat.js +3 -0
- package/examples/node_modules/neo-async/concatLimit.js +3 -0
- package/examples/node_modules/neo-async/concatSeries.js +3 -0
- package/examples/node_modules/neo-async/constant.js +3 -0
- package/examples/node_modules/neo-async/createLogger.js +3 -0
- package/examples/node_modules/neo-async/detect.js +3 -0
- package/examples/node_modules/neo-async/detectLimit.js +3 -0
- package/examples/node_modules/neo-async/detectSeries.js +3 -0
- package/examples/node_modules/neo-async/dir.js +3 -0
- package/examples/node_modules/neo-async/doDuring.js +3 -0
- package/examples/node_modules/neo-async/doUntil.js +3 -0
- package/examples/node_modules/neo-async/doWhilst.js +3 -0
- package/examples/node_modules/neo-async/during.js +3 -0
- package/examples/node_modules/neo-async/each.js +3 -0
- package/examples/node_modules/neo-async/eachLimit.js +3 -0
- package/examples/node_modules/neo-async/eachOf.js +3 -0
- package/examples/node_modules/neo-async/eachOfLimit.js +3 -0
- package/examples/node_modules/neo-async/eachOfSeries.js +3 -0
- package/examples/node_modules/neo-async/eachSeries.js +3 -0
- package/examples/node_modules/neo-async/ensureAsync.js +3 -0
- package/examples/node_modules/neo-async/every.js +3 -0
- package/examples/node_modules/neo-async/everyLimit.js +3 -0
- package/examples/node_modules/neo-async/everySeries.js +3 -0
- package/examples/node_modules/neo-async/fast.js +3 -0
- package/examples/node_modules/neo-async/filter.js +3 -0
- package/examples/node_modules/neo-async/filterLimit.js +3 -0
- package/examples/node_modules/neo-async/filterSeries.js +3 -0
- package/examples/node_modules/neo-async/find.js +3 -0
- package/examples/node_modules/neo-async/findLimit.js +3 -0
- package/examples/node_modules/neo-async/findSeries.js +3 -0
- package/examples/node_modules/neo-async/foldl.js +3 -0
- package/examples/node_modules/neo-async/foldr.js +3 -0
- package/examples/node_modules/neo-async/forEach.js +3 -0
- package/examples/node_modules/neo-async/forEachLimit.js +3 -0
- package/examples/node_modules/neo-async/forEachOf.js +3 -0
- package/examples/node_modules/neo-async/forEachOfLimit.js +3 -0
- package/examples/node_modules/neo-async/forEachOfSeries.js +3 -0
- package/examples/node_modules/neo-async/forEachSeries.js +3 -0
- package/examples/node_modules/neo-async/forever.js +3 -0
- package/examples/node_modules/neo-async/groupBy.js +3 -0
- package/examples/node_modules/neo-async/groupByLimit.js +3 -0
- package/examples/node_modules/neo-async/groupBySeries.js +3 -0
- package/examples/node_modules/neo-async/inject.js +3 -0
- package/examples/node_modules/neo-async/iterator.js +3 -0
- package/examples/node_modules/neo-async/log.js +3 -0
- package/examples/node_modules/neo-async/map.js +3 -0
- package/examples/node_modules/neo-async/mapLimit.js +3 -0
- package/examples/node_modules/neo-async/mapSeries.js +3 -0
- package/examples/node_modules/neo-async/mapValues.js +3 -0
- package/examples/node_modules/neo-async/mapValuesLimit.js +3 -0
- package/examples/node_modules/neo-async/mapValuesSeries.js +3 -0
- package/examples/node_modules/neo-async/memoize.js +3 -0
- package/examples/node_modules/neo-async/nextTick.js +3 -0
- package/examples/node_modules/neo-async/omit.js +3 -0
- package/examples/node_modules/neo-async/omitLimit.js +3 -0
- package/examples/node_modules/neo-async/omitSeries.js +3 -0
- package/examples/node_modules/neo-async/package.json +57 -0
- package/examples/node_modules/neo-async/parallel.js +3 -0
- package/examples/node_modules/neo-async/parallelLimit.js +3 -0
- package/examples/node_modules/neo-async/pick.js +3 -0
- package/examples/node_modules/neo-async/pickLimit.js +3 -0
- package/examples/node_modules/neo-async/pickSeries.js +3 -0
- package/examples/node_modules/neo-async/priorityQueue.js +3 -0
- package/examples/node_modules/neo-async/queue.js +3 -0
- package/examples/node_modules/neo-async/race.js +3 -0
- package/examples/node_modules/neo-async/reduce.js +3 -0
- package/examples/node_modules/neo-async/reduceRight.js +3 -0
- package/examples/node_modules/neo-async/reflect.js +3 -0
- package/examples/node_modules/neo-async/reflectAll.js +3 -0
- package/examples/node_modules/neo-async/reject.js +3 -0
- package/examples/node_modules/neo-async/rejectLimit.js +3 -0
- package/examples/node_modules/neo-async/rejectSeries.js +3 -0
- package/examples/node_modules/neo-async/retry.js +3 -0
- package/examples/node_modules/neo-async/retryable.js +3 -0
- package/examples/node_modules/neo-async/safe.js +3 -0
- package/examples/node_modules/neo-async/select.js +3 -0
- package/examples/node_modules/neo-async/selectLimit.js +3 -0
- package/examples/node_modules/neo-async/selectSeries.js +3 -0
- package/examples/node_modules/neo-async/seq.js +3 -0
- package/examples/node_modules/neo-async/series.js +3 -0
- package/examples/node_modules/neo-async/setImmediate.js +3 -0
- package/examples/node_modules/neo-async/some.js +3 -0
- package/examples/node_modules/neo-async/someLimit.js +3 -0
- package/examples/node_modules/neo-async/someSeries.js +3 -0
- package/examples/node_modules/neo-async/sortBy.js +3 -0
- package/examples/node_modules/neo-async/sortByLimit.js +3 -0
- package/examples/node_modules/neo-async/sortBySeries.js +3 -0
- package/examples/node_modules/neo-async/timeout.js +3 -0
- package/examples/node_modules/neo-async/times.js +3 -0
- package/examples/node_modules/neo-async/timesLimit.js +3 -0
- package/examples/node_modules/neo-async/timesSeries.js +3 -0
- package/examples/node_modules/neo-async/transform.js +3 -0
- package/examples/node_modules/neo-async/transformLimit.js +3 -0
- package/examples/node_modules/neo-async/transformSeries.js +3 -0
- package/examples/node_modules/neo-async/tryEach.js +3 -0
- package/examples/node_modules/neo-async/unmemoize.js +3 -0
- package/examples/node_modules/neo-async/until.js +3 -0
- package/examples/node_modules/neo-async/waterfall.js +3 -0
- package/examples/node_modules/neo-async/whilst.js +3 -0
- package/examples/node_modules/neo-async/wrapSync.js +3 -0
- package/examples/node_modules/node-releases/LICENSE +21 -0
- package/examples/node_modules/node-releases/README.md +31 -0
- package/examples/node_modules/node-releases/data/processed/envs.json +1 -0
- package/examples/node_modules/node-releases/data/release-schedule/release-schedule.json +1 -0
- package/examples/node_modules/node-releases/package.json +18 -0
- package/examples/node_modules/npm-run-path/package.json +42 -74
- package/examples/node_modules/onetime/package.json +41 -73
- package/examples/node_modules/p-limit/package.json +50 -82
- package/examples/node_modules/p-locate/package.json +51 -83
- package/examples/node_modules/p-try/package.json +40 -72
- package/examples/node_modules/path-exists/package.json +37 -69
- package/examples/node_modules/path-key/package.json +37 -70
- package/examples/node_modules/path-parse/index.js +17 -35
- package/examples/node_modules/path-parse/package.json +13 -41
- package/examples/node_modules/picocolors/LICENSE +15 -0
- package/examples/node_modules/picocolors/README.md +21 -0
- package/examples/node_modules/picocolors/package.json +25 -0
- package/examples/node_modules/picocolors/picocolors.browser.js +4 -0
- package/examples/node_modules/picocolors/picocolors.d.ts +5 -0
- package/examples/node_modules/picocolors/picocolors.js +58 -0
- package/examples/node_modules/picocolors/types.ts +30 -0
- package/examples/node_modules/pkg-dir/package.json +54 -86
- package/examples/node_modules/punycode/LICENSE-MIT.txt +20 -0
- package/examples/node_modules/punycode/README.md +122 -0
- package/examples/node_modules/punycode/package.json +58 -0
- package/examples/node_modules/punycode/punycode.es6.js +441 -0
- package/examples/node_modules/punycode/punycode.js +440 -0
- package/examples/node_modules/randombytes/.travis.yml +15 -0
- package/examples/node_modules/randombytes/.zuul.yml +1 -0
- package/examples/node_modules/randombytes/LICENSE +21 -0
- package/examples/node_modules/randombytes/README.md +14 -0
- package/examples/node_modules/randombytes/browser.js +50 -0
- package/examples/node_modules/randombytes/index.js +1 -0
- package/examples/node_modules/randombytes/package.json +36 -0
- package/examples/node_modules/randombytes/test.js +81 -0
- package/examples/node_modules/rechoir/README.md +9 -0
- package/examples/node_modules/rechoir/lib/extension.js +35 -10
- package/examples/node_modules/rechoir/package.json +24 -67
- package/examples/node_modules/resolve/.eslintrc +34 -8
- package/examples/node_modules/resolve/.github/FUNDING.yml +12 -0
- package/examples/node_modules/resolve/appveyor.yml +4 -2
- package/examples/node_modules/resolve/async.js +3 -0
- package/examples/node_modules/resolve/bin/resolve +50 -0
- package/examples/node_modules/resolve/lib/async.js +10 -1
- package/examples/node_modules/resolve/lib/core.js +1 -2
- package/examples/node_modules/resolve/lib/core.json +85 -16
- package/examples/node_modules/resolve/lib/homedir.js +24 -0
- package/examples/node_modules/resolve/lib/node-modules-paths.js +1 -1
- package/examples/node_modules/resolve/lib/sync.js +14 -5
- package/examples/node_modules/resolve/package.json +60 -78
- package/examples/node_modules/resolve/readme.markdown +35 -13
- package/examples/node_modules/resolve/sync.js +3 -0
- package/examples/node_modules/resolve/test/home_paths.js +127 -0
- package/examples/node_modules/resolve/test/home_paths_sync.js +114 -0
- package/examples/node_modules/resolve/test/mock_sync.js +2 -4
- package/examples/node_modules/resolve/test/node_path.js +1 -1
- package/examples/node_modules/resolve/test/resolver/invalid_main/package.json +1 -1
- package/examples/node_modules/resolve/test/resolver/malformed_package_json/index.js +0 -0
- package/examples/node_modules/resolve/test/resolver/malformed_package_json/package.json +1 -0
- package/examples/node_modules/resolve/test/resolver.js +99 -3
- package/examples/node_modules/resolve/test/resolver_sync.js +310 -23
- package/examples/node_modules/resolve-cwd/package.json +41 -73
- package/examples/node_modules/resolve-from/package.json +34 -66
- package/examples/node_modules/safe-buffer/LICENSE +21 -0
- package/examples/node_modules/safe-buffer/README.md +584 -0
- package/examples/node_modules/safe-buffer/index.d.ts +187 -0
- package/examples/node_modules/safe-buffer/index.js +65 -0
- package/examples/node_modules/safe-buffer/package.json +51 -0
- package/examples/node_modules/schema-utils/LICENSE +20 -0
- package/examples/node_modules/schema-utils/README.md +290 -0
- package/examples/node_modules/schema-utils/declarations/ValidationError.d.ts +74 -0
- package/examples/node_modules/schema-utils/declarations/index.d.ts +3 -0
- package/examples/node_modules/schema-utils/declarations/keywords/absolutePath.d.ts +10 -0
- package/examples/node_modules/schema-utils/declarations/util/Range.d.ts +79 -0
- package/examples/node_modules/schema-utils/declarations/util/hints.d.ts +3 -0
- package/examples/node_modules/schema-utils/declarations/validate.d.ts +37 -0
- package/examples/node_modules/schema-utils/dist/ValidationError.js +1271 -0
- package/examples/node_modules/schema-utils/dist/index.js +11 -0
- package/examples/node_modules/schema-utils/dist/keywords/absolutePath.js +93 -0
- package/examples/node_modules/schema-utils/dist/util/Range.js +163 -0
- package/examples/node_modules/schema-utils/dist/util/hints.js +105 -0
- package/examples/node_modules/schema-utils/dist/validate.js +163 -0
- package/examples/node_modules/schema-utils/package.json +78 -0
- package/examples/node_modules/serialize-javascript/LICENSE +27 -0
- package/examples/node_modules/serialize-javascript/README.md +142 -0
- package/examples/node_modules/serialize-javascript/index.js +268 -0
- package/examples/node_modules/serialize-javascript/package.json +36 -0
- package/examples/node_modules/shallow-clone/package.json +20 -57
- package/examples/node_modules/shebang-command/package.json +32 -64
- package/examples/node_modules/shebang-regex/package.json +33 -65
- package/examples/node_modules/signal-exit/README.md +1 -1
- package/examples/node_modules/signal-exit/index.js +169 -130
- package/examples/node_modules/signal-exit/package.json +24 -52
- package/examples/node_modules/source-map/CHANGELOG.md +301 -0
- package/examples/node_modules/source-map/LICENSE +28 -0
- package/examples/node_modules/source-map/README.md +742 -0
- package/examples/node_modules/source-map/dist/source-map.debug.js +3234 -0
- package/examples/node_modules/source-map/dist/source-map.js +3233 -0
- package/examples/node_modules/source-map/dist/source-map.min.js +2 -0
- package/examples/node_modules/source-map/dist/source-map.min.js.map +1 -0
- package/examples/node_modules/source-map/lib/array-set.js +121 -0
- package/examples/node_modules/source-map/lib/base64-vlq.js +140 -0
- package/examples/node_modules/source-map/lib/base64.js +67 -0
- package/examples/node_modules/source-map/lib/binary-search.js +111 -0
- package/examples/node_modules/source-map/lib/mapping-list.js +79 -0
- package/examples/node_modules/source-map/lib/quick-sort.js +114 -0
- package/examples/node_modules/source-map/lib/source-map-consumer.js +1145 -0
- package/examples/node_modules/source-map/lib/source-map-generator.js +425 -0
- package/examples/node_modules/source-map/lib/source-node.js +413 -0
- package/examples/node_modules/source-map/lib/util.js +488 -0
- package/examples/node_modules/source-map/package.json +73 -0
- package/examples/node_modules/source-map/source-map.d.ts +98 -0
- package/examples/node_modules/source-map/source-map.js +8 -0
- package/examples/node_modules/source-map-support/LICENSE.md +21 -0
- package/examples/node_modules/source-map-support/README.md +284 -0
- package/examples/node_modules/source-map-support/browser-source-map-support.js +114 -0
- package/examples/node_modules/source-map-support/package.json +31 -0
- package/examples/node_modules/source-map-support/register-hook-require.js +1 -0
- package/examples/node_modules/source-map-support/register.js +1 -0
- package/examples/node_modules/source-map-support/source-map-support.js +625 -0
- package/examples/node_modules/strip-final-newline/package.json +38 -70
- package/examples/node_modules/supports-color/browser.js +24 -0
- package/examples/node_modules/supports-color/index.js +152 -0
- package/examples/node_modules/supports-color/license +9 -0
- package/examples/node_modules/supports-color/package.json +58 -0
- package/examples/node_modules/supports-color/readme.md +77 -0
- package/examples/node_modules/supports-preserve-symlinks-flag/.eslintrc +14 -0
- package/examples/node_modules/supports-preserve-symlinks-flag/.github/FUNDING.yml +12 -0
- package/examples/node_modules/supports-preserve-symlinks-flag/.nycrc +9 -0
- package/examples/node_modules/supports-preserve-symlinks-flag/CHANGELOG.md +22 -0
- package/examples/node_modules/supports-preserve-symlinks-flag/LICENSE +21 -0
- package/examples/node_modules/supports-preserve-symlinks-flag/README.md +42 -0
- package/examples/node_modules/supports-preserve-symlinks-flag/browser.js +3 -0
- package/examples/node_modules/supports-preserve-symlinks-flag/index.js +9 -0
- package/examples/node_modules/supports-preserve-symlinks-flag/package.json +70 -0
- package/examples/node_modules/supports-preserve-symlinks-flag/test/index.js +29 -0
- package/examples/node_modules/tapable/LICENSE +21 -0
- package/examples/node_modules/tapable/README.md +296 -0
- package/examples/node_modules/tapable/lib/AsyncParallelBailHook.js +85 -0
- package/examples/node_modules/tapable/lib/AsyncParallelHook.js +37 -0
- package/examples/node_modules/tapable/lib/AsyncSeriesBailHook.js +42 -0
- package/examples/node_modules/tapable/lib/AsyncSeriesHook.js +37 -0
- package/examples/node_modules/tapable/lib/AsyncSeriesLoopHook.js +37 -0
- package/examples/node_modules/tapable/lib/AsyncSeriesWaterfallHook.js +47 -0
- package/examples/node_modules/tapable/lib/Hook.js +175 -0
- package/examples/node_modules/tapable/lib/HookCodeFactory.js +468 -0
- package/examples/node_modules/tapable/lib/HookMap.js +61 -0
- package/examples/node_modules/tapable/lib/MultiHook.js +54 -0
- package/examples/node_modules/tapable/lib/SyncBailHook.js +51 -0
- package/examples/node_modules/tapable/lib/SyncHook.js +46 -0
- package/examples/node_modules/tapable/lib/SyncLoopHook.js +46 -0
- package/examples/node_modules/tapable/lib/SyncWaterfallHook.js +57 -0
- package/examples/node_modules/tapable/lib/index.js +19 -0
- package/examples/node_modules/tapable/lib/util-browser.js +16 -0
- package/examples/node_modules/tapable/package.json +44 -0
- package/examples/node_modules/tapable/tapable.d.ts +116 -0
- package/examples/node_modules/terser/CHANGELOG.md +480 -0
- package/examples/node_modules/terser/LICENSE +29 -0
- package/examples/node_modules/terser/PATRONS.md +15 -0
- package/examples/node_modules/terser/README.md +1374 -0
- package/examples/node_modules/terser/bin/package.json +10 -0
- package/examples/node_modules/terser/bin/terser +21 -0
- package/examples/node_modules/terser/bin/uglifyjs +10 -0
- package/examples/node_modules/terser/dist/.gitkeep +0 -0
- package/examples/node_modules/terser/dist/bundle.min.js +28332 -0
- package/examples/node_modules/terser/dist/package.json +10 -0
- package/examples/node_modules/terser/lib/ast.js +1858 -0
- package/examples/node_modules/terser/lib/cli.js +479 -0
- package/examples/node_modules/terser/lib/compress/common.js +296 -0
- package/examples/node_modules/terser/lib/compress/compressor-flags.js +63 -0
- package/examples/node_modules/terser/lib/compress/drop-side-effect-free.js +350 -0
- package/examples/node_modules/terser/lib/compress/evaluate.js +461 -0
- package/examples/node_modules/terser/lib/compress/index.js +4667 -0
- package/examples/node_modules/terser/lib/compress/inference.js +948 -0
- package/examples/node_modules/terser/lib/compress/native-objects.js +184 -0
- package/examples/node_modules/terser/lib/compress/reduce-vars.js +675 -0
- package/examples/node_modules/terser/lib/compress/tighten-body.js +1461 -0
- package/examples/node_modules/terser/lib/equivalent-to.js +313 -0
- package/examples/node_modules/terser/lib/minify.js +335 -0
- package/examples/node_modules/terser/lib/mozilla-ast.js +1376 -0
- package/examples/node_modules/terser/lib/output.js +2347 -0
- package/examples/node_modules/terser/lib/parse.js +3362 -0
- package/examples/node_modules/terser/lib/propmangle.js +376 -0
- package/examples/node_modules/terser/lib/scope.js +1042 -0
- package/examples/node_modules/terser/lib/size.js +490 -0
- package/examples/node_modules/terser/lib/sourcemap.js +114 -0
- package/examples/node_modules/terser/lib/transform.js +318 -0
- package/examples/node_modules/terser/lib/utils/first_in_statement.js +50 -0
- package/examples/node_modules/terser/lib/utils/index.js +302 -0
- package/examples/node_modules/terser/main.js +27 -0
- package/examples/node_modules/terser/node_modules/source-map/CHANGELOG.md +344 -0
- package/examples/node_modules/terser/node_modules/source-map/LICENSE +28 -0
- package/examples/node_modules/terser/node_modules/source-map/README.md +822 -0
- package/examples/node_modules/terser/node_modules/source-map/dist/source-map.js +3351 -0
- package/examples/node_modules/terser/node_modules/source-map/lib/array-set.js +100 -0
- package/examples/node_modules/terser/node_modules/source-map/lib/base64-vlq.js +111 -0
- package/examples/node_modules/terser/node_modules/source-map/lib/base64.js +18 -0
- package/examples/node_modules/terser/node_modules/source-map/lib/binary-search.js +107 -0
- package/examples/node_modules/terser/node_modules/source-map/lib/mapping-list.js +80 -0
- package/examples/node_modules/terser/node_modules/source-map/lib/mappings.wasm +0 -0
- package/examples/node_modules/terser/node_modules/source-map/lib/read-wasm.js +40 -0
- package/examples/node_modules/terser/node_modules/source-map/lib/source-map-consumer.js +1254 -0
- package/examples/node_modules/terser/node_modules/source-map/lib/source-map-generator.js +413 -0
- package/examples/node_modules/terser/node_modules/source-map/lib/source-node.js +404 -0
- package/examples/node_modules/terser/node_modules/source-map/lib/util.js +546 -0
- package/examples/node_modules/terser/node_modules/source-map/lib/wasm.js +107 -0
- package/examples/node_modules/terser/node_modules/source-map/package.json +90 -0
- package/examples/node_modules/terser/node_modules/source-map/source-map.d.ts +369 -0
- package/examples/node_modules/terser/node_modules/source-map/source-map.js +8 -0
- package/examples/node_modules/terser/package.json +152 -0
- package/examples/node_modules/terser/tools/domprops.js +7771 -0
- package/examples/node_modules/terser/tools/exit.cjs +7 -0
- package/examples/node_modules/terser/tools/props.html +55 -0
- package/examples/node_modules/terser/tools/terser.d.ts +207 -0
- package/examples/node_modules/terser-webpack-plugin/LICENSE +20 -0
- package/examples/node_modules/terser-webpack-plugin/README.md +742 -0
- package/examples/node_modules/terser-webpack-plugin/dist/index.js +798 -0
- package/examples/node_modules/terser-webpack-plugin/dist/minify.js +50 -0
- package/examples/node_modules/terser-webpack-plugin/dist/options.json +164 -0
- package/examples/node_modules/terser-webpack-plugin/dist/utils.js +687 -0
- package/examples/node_modules/terser-webpack-plugin/package.json +114 -0
- package/examples/node_modules/terser-webpack-plugin/types/index.d.ts +329 -0
- package/examples/node_modules/terser-webpack-plugin/types/minify.d.ts +17 -0
- package/examples/node_modules/terser-webpack-plugin/types/utils.d.ts +100 -0
- package/examples/node_modules/uri-js/LICENSE +11 -0
- package/examples/node_modules/uri-js/README.md +203 -0
- package/examples/node_modules/uri-js/dist/es5/uri.all.d.ts +59 -0
- package/examples/node_modules/uri-js/dist/es5/uri.all.js +1443 -0
- package/examples/node_modules/uri-js/dist/es5/uri.all.js.map +1 -0
- package/examples/node_modules/uri-js/dist/es5/uri.all.min.d.ts +59 -0
- package/examples/node_modules/uri-js/dist/es5/uri.all.min.js +3 -0
- package/examples/node_modules/uri-js/dist/es5/uri.all.min.js.map +1 -0
- package/examples/node_modules/uri-js/dist/esnext/index.d.ts +1 -0
- package/examples/node_modules/uri-js/dist/esnext/index.js +17 -0
- package/examples/node_modules/uri-js/dist/esnext/index.js.map +1 -0
- package/examples/node_modules/uri-js/dist/esnext/regexps-iri.d.ts +3 -0
- package/examples/node_modules/uri-js/dist/esnext/regexps-iri.js +3 -0
- package/examples/node_modules/uri-js/dist/esnext/regexps-iri.js.map +1 -0
- package/examples/node_modules/uri-js/dist/esnext/regexps-uri.d.ts +4 -0
- package/examples/node_modules/uri-js/dist/esnext/regexps-uri.js +42 -0
- package/examples/node_modules/uri-js/dist/esnext/regexps-uri.js.map +1 -0
- package/examples/node_modules/uri-js/dist/esnext/schemes/http.d.ts +3 -0
- package/examples/node_modules/uri-js/dist/esnext/schemes/http.js +28 -0
- package/examples/node_modules/uri-js/dist/esnext/schemes/http.js.map +1 -0
- package/examples/node_modules/uri-js/dist/esnext/schemes/https.d.ts +3 -0
- package/examples/node_modules/uri-js/dist/esnext/schemes/https.js +9 -0
- package/examples/node_modules/uri-js/dist/esnext/schemes/https.js.map +1 -0
- package/examples/node_modules/uri-js/dist/esnext/schemes/mailto.d.ts +12 -0
- package/examples/node_modules/uri-js/dist/esnext/schemes/mailto.js +148 -0
- package/examples/node_modules/uri-js/dist/esnext/schemes/mailto.js.map +1 -0
- package/examples/node_modules/uri-js/dist/esnext/schemes/urn-uuid.d.ts +7 -0
- package/examples/node_modules/uri-js/dist/esnext/schemes/urn-uuid.js +23 -0
- package/examples/node_modules/uri-js/dist/esnext/schemes/urn-uuid.js.map +1 -0
- package/examples/node_modules/uri-js/dist/esnext/schemes/urn.d.ts +10 -0
- package/examples/node_modules/uri-js/dist/esnext/schemes/urn.js +49 -0
- package/examples/node_modules/uri-js/dist/esnext/schemes/urn.js.map +1 -0
- package/examples/node_modules/uri-js/dist/esnext/schemes/ws.d.ts +7 -0
- package/examples/node_modules/uri-js/dist/esnext/schemes/ws.js +41 -0
- package/examples/node_modules/uri-js/dist/esnext/schemes/ws.js.map +1 -0
- package/examples/node_modules/uri-js/dist/esnext/schemes/wss.d.ts +3 -0
- package/examples/node_modules/uri-js/dist/esnext/schemes/wss.js +9 -0
- package/examples/node_modules/uri-js/dist/esnext/schemes/wss.js.map +1 -0
- package/examples/node_modules/uri-js/dist/esnext/uri.d.ts +59 -0
- package/examples/node_modules/uri-js/dist/esnext/uri.js +480 -0
- package/examples/node_modules/uri-js/dist/esnext/uri.js.map +1 -0
- package/examples/node_modules/uri-js/dist/esnext/util.d.ts +6 -0
- package/examples/node_modules/uri-js/dist/esnext/util.js +36 -0
- package/examples/node_modules/uri-js/dist/esnext/util.js.map +1 -0
- package/examples/node_modules/uri-js/package.json +77 -0
- package/examples/node_modules/uri-js/yarn.lock +2558 -0
- package/examples/node_modules/watchpack/LICENSE +20 -0
- package/examples/node_modules/watchpack/README.md +149 -0
- package/examples/node_modules/watchpack/lib/DirectoryWatcher.js +785 -0
- package/examples/node_modules/watchpack/lib/LinkResolver.js +107 -0
- package/examples/node_modules/watchpack/lib/getWatcherManager.js +52 -0
- package/examples/node_modules/watchpack/lib/reducePlan.js +138 -0
- package/examples/node_modules/watchpack/lib/watchEventSource.js +335 -0
- package/examples/node_modules/watchpack/lib/watchpack.js +383 -0
- package/examples/node_modules/watchpack/package.json +49 -0
- package/examples/node_modules/webpack/LICENSE +20 -0
- package/examples/node_modules/webpack/README.md +711 -0
- package/examples/node_modules/webpack/SECURITY.md +9 -0
- package/examples/node_modules/webpack/bin/webpack.js +163 -0
- package/examples/node_modules/webpack/hot/dev-server.js +61 -0
- package/examples/node_modules/webpack/hot/emitter.js +2 -0
- package/examples/node_modules/webpack/hot/lazy-compilation-node.js +40 -0
- package/examples/node_modules/webpack/hot/lazy-compilation-web.js +74 -0
- package/examples/node_modules/webpack/hot/log-apply-result.js +44 -0
- package/examples/node_modules/webpack/hot/log.js +59 -0
- package/examples/node_modules/webpack/hot/only-dev-server.js +102 -0
- package/examples/node_modules/webpack/hot/poll.js +37 -0
- package/examples/node_modules/webpack/hot/signal.js +62 -0
- package/examples/node_modules/webpack/lib/APIPlugin.js +253 -0
- package/examples/node_modules/webpack/lib/AbstractMethodError.js +49 -0
- package/examples/node_modules/webpack/lib/AsyncDependenciesBlock.js +106 -0
- package/examples/node_modules/webpack/lib/AsyncDependencyToInitialChunkError.js +31 -0
- package/examples/node_modules/webpack/lib/AutomaticPrefetchPlugin.js +65 -0
- package/examples/node_modules/webpack/lib/BannerPlugin.js +123 -0
- package/examples/node_modules/webpack/lib/Cache.js +161 -0
- package/examples/node_modules/webpack/lib/CacheFacade.js +345 -0
- package/examples/node_modules/webpack/lib/CaseSensitiveModulesWarning.js +71 -0
- package/examples/node_modules/webpack/lib/Chunk.js +820 -0
- package/examples/node_modules/webpack/lib/ChunkGraph.js +1727 -0
- package/examples/node_modules/webpack/lib/ChunkGroup.js +584 -0
- package/examples/node_modules/webpack/lib/ChunkRenderError.js +31 -0
- package/examples/node_modules/webpack/lib/ChunkTemplate.js +138 -0
- package/examples/node_modules/webpack/lib/CleanPlugin.js +420 -0
- package/examples/node_modules/webpack/lib/CodeGenerationError.js +29 -0
- package/examples/node_modules/webpack/lib/CodeGenerationResults.js +155 -0
- package/examples/node_modules/webpack/lib/CommentCompilationWarning.js +33 -0
- package/examples/node_modules/webpack/lib/CompatibilityPlugin.js +152 -0
- package/examples/node_modules/webpack/lib/Compilation.js +5292 -0
- package/examples/node_modules/webpack/lib/Compiler.js +1217 -0
- package/examples/node_modules/webpack/lib/ConcatenationScope.js +159 -0
- package/examples/node_modules/webpack/lib/ConcurrentCompilationError.js +18 -0
- package/examples/node_modules/webpack/lib/ConditionalInitFragment.js +112 -0
- package/examples/node_modules/webpack/lib/ConstPlugin.js +497 -0
- package/examples/node_modules/webpack/lib/ContextExclusionPlugin.js +32 -0
- package/examples/node_modules/webpack/lib/ContextModule.js +1147 -0
- package/examples/node_modules/webpack/lib/ContextModuleFactory.js +437 -0
- package/examples/node_modules/webpack/lib/ContextReplacementPlugin.js +157 -0
- package/examples/node_modules/webpack/lib/DefinePlugin.js +601 -0
- package/examples/node_modules/webpack/lib/DelegatedModule.js +239 -0
- package/examples/node_modules/webpack/lib/DelegatedModuleFactoryPlugin.js +91 -0
- package/examples/node_modules/webpack/lib/DelegatedPlugin.js +43 -0
- package/examples/node_modules/webpack/lib/DependenciesBlock.js +107 -0
- package/examples/node_modules/webpack/lib/Dependency.js +348 -0
- package/examples/node_modules/webpack/lib/DependencyTemplate.js +57 -0
- package/examples/node_modules/webpack/lib/DependencyTemplates.js +67 -0
- package/examples/node_modules/webpack/lib/DllEntryPlugin.js +55 -0
- package/examples/node_modules/webpack/lib/DllModule.js +157 -0
- package/examples/node_modules/webpack/lib/DllModuleFactory.js +37 -0
- package/examples/node_modules/webpack/lib/DllPlugin.js +68 -0
- package/examples/node_modules/webpack/lib/DllReferencePlugin.js +162 -0
- package/examples/node_modules/webpack/lib/DynamicEntryPlugin.js +79 -0
- package/examples/node_modules/webpack/lib/EntryOptionPlugin.js +93 -0
- package/examples/node_modules/webpack/lib/EntryPlugin.js +67 -0
- package/examples/node_modules/webpack/lib/Entrypoint.js +101 -0
- package/examples/node_modules/webpack/lib/EnvironmentPlugin.js +63 -0
- package/examples/node_modules/webpack/lib/ErrorHelpers.js +61 -0
- package/examples/node_modules/webpack/lib/EvalDevToolModulePlugin.js +117 -0
- package/examples/node_modules/webpack/lib/EvalSourceMapDevToolPlugin.js +206 -0
- package/examples/node_modules/webpack/lib/ExportsInfo.js +1523 -0
- package/examples/node_modules/webpack/lib/ExportsInfoApiPlugin.js +71 -0
- package/examples/node_modules/webpack/lib/ExternalModule.js +758 -0
- package/examples/node_modules/webpack/lib/ExternalModuleFactoryPlugin.js +254 -0
- package/examples/node_modules/webpack/lib/ExternalsPlugin.js +37 -0
- package/examples/node_modules/webpack/lib/FileSystemInfo.js +3559 -0
- package/examples/node_modules/webpack/lib/FlagAllModulesAsUsedPlugin.js +55 -0
- package/examples/node_modules/webpack/lib/FlagDependencyExportsPlugin.js +417 -0
- package/examples/node_modules/webpack/lib/FlagDependencyUsagePlugin.js +347 -0
- package/examples/node_modules/webpack/lib/FlagEntryExportAsUsedPlugin.js +53 -0
- package/examples/node_modules/webpack/lib/Generator.js +149 -0
- package/examples/node_modules/webpack/lib/GraphHelpers.js +37 -0
- package/examples/node_modules/webpack/lib/HarmonyLinkingError.js +16 -0
- package/examples/node_modules/webpack/lib/HookWebpackError.js +93 -0
- package/examples/node_modules/webpack/lib/HotModuleReplacementPlugin.js +778 -0
- package/examples/node_modules/webpack/lib/HotUpdateChunk.js +19 -0
- package/examples/node_modules/webpack/lib/IgnoreErrorModuleFactory.js +39 -0
- package/examples/node_modules/webpack/lib/IgnorePlugin.js +83 -0
- package/examples/node_modules/webpack/lib/IgnoreWarningsPlugin.js +39 -0
- package/examples/node_modules/webpack/lib/InitFragment.js +161 -0
- package/examples/node_modules/webpack/lib/InvalidDependenciesModuleWarning.js +44 -0
- package/examples/node_modules/webpack/lib/JavascriptMetaInfoPlugin.js +68 -0
- package/examples/node_modules/webpack/lib/LibManifestPlugin.js +115 -0
- package/examples/node_modules/webpack/lib/LibraryTemplatePlugin.js +48 -0
- package/examples/node_modules/webpack/lib/LoaderOptionsPlugin.js +71 -0
- package/examples/node_modules/webpack/lib/LoaderTargetPlugin.js +37 -0
- package/examples/node_modules/webpack/lib/MainTemplate.js +329 -0
- package/examples/node_modules/webpack/lib/Module.js +1091 -0
- package/examples/node_modules/webpack/lib/ModuleBuildError.js +77 -0
- package/examples/node_modules/webpack/lib/ModuleDependencyError.js +40 -0
- package/examples/node_modules/webpack/lib/ModuleDependencyWarning.js +45 -0
- package/examples/node_modules/webpack/lib/ModuleError.js +61 -0
- package/examples/node_modules/webpack/lib/ModuleFactory.js +50 -0
- package/examples/node_modules/webpack/lib/ModuleFilenameHelpers.js +277 -0
- package/examples/node_modules/webpack/lib/ModuleGraph.js +856 -0
- package/examples/node_modules/webpack/lib/ModuleGraphConnection.js +191 -0
- package/examples/node_modules/webpack/lib/ModuleHashingError.js +29 -0
- package/examples/node_modules/webpack/lib/ModuleInfoHeaderPlugin.js +255 -0
- package/examples/node_modules/webpack/lib/ModuleNotFoundError.js +86 -0
- package/examples/node_modules/webpack/lib/ModuleParseError.js +109 -0
- package/examples/node_modules/webpack/lib/ModuleProfile.js +107 -0
- package/examples/node_modules/webpack/lib/ModuleRestoreError.js +42 -0
- package/examples/node_modules/webpack/lib/ModuleStoreError.js +42 -0
- package/examples/node_modules/webpack/lib/ModuleTemplate.js +142 -0
- package/examples/node_modules/webpack/lib/ModuleWarning.js +61 -0
- package/examples/node_modules/webpack/lib/MultiCompiler.js +582 -0
- package/examples/node_modules/webpack/lib/MultiStats.js +166 -0
- package/examples/node_modules/webpack/lib/MultiWatching.js +77 -0
- package/examples/node_modules/webpack/lib/NoEmitOnErrorsPlugin.js +28 -0
- package/examples/node_modules/webpack/lib/NoModeWarning.js +22 -0
- package/examples/node_modules/webpack/lib/NodeStuffInWebError.js +34 -0
- package/examples/node_modules/webpack/lib/NodeStuffPlugin.js +186 -0
- package/examples/node_modules/webpack/lib/NormalModule.js +1411 -0
- package/examples/node_modules/webpack/lib/NormalModuleFactory.js +1118 -0
- package/examples/node_modules/webpack/lib/NormalModuleReplacementPlugin.js +71 -0
- package/examples/node_modules/webpack/lib/NullFactory.js +23 -0
- package/examples/node_modules/webpack/lib/OptimizationStages.js +10 -0
- package/examples/node_modules/webpack/lib/OptionsApply.js +11 -0
- package/examples/node_modules/webpack/lib/Parser.js +38 -0
- package/examples/node_modules/webpack/lib/PrefetchPlugin.js +50 -0
- package/examples/node_modules/webpack/lib/ProgressPlugin.js +613 -0
- package/examples/node_modules/webpack/lib/ProvidePlugin.js +101 -0
- package/examples/node_modules/webpack/lib/RawModule.js +152 -0
- package/examples/node_modules/webpack/lib/RecordIdsPlugin.js +238 -0
- package/examples/node_modules/webpack/lib/RequestShortener.js +34 -0
- package/examples/node_modules/webpack/lib/RequireJsStuffPlugin.js +77 -0
- package/examples/node_modules/webpack/lib/ResolverFactory.js +151 -0
- package/examples/node_modules/webpack/lib/RuntimeGlobals.js +381 -0
- package/examples/node_modules/webpack/lib/RuntimeModule.js +213 -0
- package/examples/node_modules/webpack/lib/RuntimePlugin.js +444 -0
- package/examples/node_modules/webpack/lib/RuntimeTemplate.js +1041 -0
- package/examples/node_modules/webpack/lib/SelfModuleFactory.js +21 -0
- package/examples/node_modules/webpack/lib/SingleEntryPlugin.js +8 -0
- package/examples/node_modules/webpack/lib/SizeFormatHelpers.js +27 -0
- package/examples/node_modules/webpack/lib/SourceMapDevToolModuleOptionsPlugin.js +57 -0
- package/examples/node_modules/webpack/lib/SourceMapDevToolPlugin.js +560 -0
- package/examples/node_modules/webpack/lib/Stats.js +84 -0
- package/examples/node_modules/webpack/lib/Template.js +419 -0
- package/examples/node_modules/webpack/lib/TemplatedPathPlugin.js +346 -0
- package/examples/node_modules/webpack/lib/UnhandledSchemeError.js +33 -0
- package/examples/node_modules/webpack/lib/UnsupportedFeatureWarning.js +32 -0
- package/examples/node_modules/webpack/lib/UseStrictPlugin.js +56 -0
- package/examples/node_modules/webpack/lib/WarnCaseSensitiveModulesPlugin.js +53 -0
- package/examples/node_modules/webpack/lib/WarnDeprecatedOptionPlugin.js +54 -0
- package/examples/node_modules/webpack/lib/WarnNoModeSetPlugin.js +25 -0
- package/examples/node_modules/webpack/lib/WatchIgnorePlugin.js +132 -0
- package/examples/node_modules/webpack/lib/Watching.js +479 -0
- package/examples/node_modules/webpack/lib/WebpackError.js +61 -0
- package/examples/node_modules/webpack/lib/WebpackIsIncludedPlugin.js +85 -0
- package/examples/node_modules/webpack/lib/WebpackOptionsApply.js +700 -0
- package/examples/node_modules/webpack/lib/WebpackOptionsDefaulter.js +19 -0
- package/examples/node_modules/webpack/lib/asset/AssetGenerator.js +464 -0
- package/examples/node_modules/webpack/lib/asset/AssetModulesPlugin.js +223 -0
- package/examples/node_modules/webpack/lib/asset/AssetParser.js +56 -0
- package/examples/node_modules/webpack/lib/asset/AssetSourceGenerator.js +71 -0
- package/examples/node_modules/webpack/lib/asset/AssetSourceParser.js +31 -0
- package/examples/node_modules/webpack/lib/asset/RawDataUrlModule.js +148 -0
- package/examples/node_modules/webpack/lib/async-modules/AwaitDependenciesInitFragment.js +69 -0
- package/examples/node_modules/webpack/lib/async-modules/InferAsyncModulesPlugin.js +55 -0
- package/examples/node_modules/webpack/lib/buildChunkGraph.js +1401 -0
- package/examples/node_modules/webpack/lib/cache/AddBuildDependenciesPlugin.js +33 -0
- package/examples/node_modules/webpack/lib/cache/AddManagedPathsPlugin.js +35 -0
- package/examples/node_modules/webpack/lib/cache/IdleFileCachePlugin.js +227 -0
- package/examples/node_modules/webpack/lib/cache/MemoryCachePlugin.js +57 -0
- package/examples/node_modules/webpack/lib/cache/MemoryWithGcCachePlugin.js +129 -0
- package/examples/node_modules/webpack/lib/cache/PackFileCacheStrategy.js +1426 -0
- package/examples/node_modules/webpack/lib/cache/ResolverCachePlugin.js +354 -0
- package/examples/node_modules/webpack/lib/cache/getLazyHashedEtag.js +81 -0
- package/examples/node_modules/webpack/lib/cache/mergeEtags.js +74 -0
- package/examples/node_modules/webpack/lib/cli.js +655 -0
- package/examples/node_modules/webpack/lib/config/browserslistTargetHandler.js +333 -0
- package/examples/node_modules/webpack/lib/config/defaults.js +1309 -0
- package/examples/node_modules/webpack/lib/config/normalization.js +529 -0
- package/examples/node_modules/webpack/lib/config/target.js +348 -0
- package/examples/node_modules/webpack/lib/container/ContainerEntryDependency.js +47 -0
- package/examples/node_modules/webpack/lib/container/ContainerEntryModule.js +283 -0
- package/examples/node_modules/webpack/lib/container/ContainerEntryModuleFactory.js +27 -0
- package/examples/node_modules/webpack/lib/container/ContainerExposedDependency.js +52 -0
- package/examples/node_modules/webpack/lib/container/ContainerPlugin.js +105 -0
- package/examples/node_modules/webpack/lib/container/ContainerReferencePlugin.js +142 -0
- package/examples/node_modules/webpack/lib/container/FallbackDependency.js +51 -0
- package/examples/node_modules/webpack/lib/container/FallbackItemDependency.js +30 -0
- package/examples/node_modules/webpack/lib/container/FallbackModule.js +173 -0
- package/examples/node_modules/webpack/lib/container/FallbackModuleFactory.js +27 -0
- package/examples/node_modules/webpack/lib/container/ModuleFederationPlugin.js +92 -0
- package/examples/node_modules/webpack/lib/container/RemoteModule.js +171 -0
- package/examples/node_modules/webpack/lib/container/RemoteRuntimeModule.js +128 -0
- package/examples/node_modules/webpack/lib/container/RemoteToExternalDependency.js +30 -0
- package/examples/node_modules/webpack/lib/container/options.js +91 -0
- package/examples/node_modules/webpack/lib/css/CssExportsGenerator.js +139 -0
- package/examples/node_modules/webpack/lib/css/CssGenerator.js +109 -0
- package/examples/node_modules/webpack/lib/css/CssLoadingRuntimeModule.js +440 -0
- package/examples/node_modules/webpack/lib/css/CssModulesPlugin.js +462 -0
- package/examples/node_modules/webpack/lib/css/CssParser.js +618 -0
- package/examples/node_modules/webpack/lib/css/walkCssTokens.js +659 -0
- package/examples/node_modules/webpack/lib/debug/ProfilingPlugin.js +454 -0
- package/examples/node_modules/webpack/lib/dependencies/AMDDefineDependency.js +221 -0
- package/examples/node_modules/webpack/lib/dependencies/AMDDefineDependencyParserPlugin.js +354 -0
- package/examples/node_modules/webpack/lib/dependencies/AMDPlugin.js +216 -0
- package/examples/node_modules/webpack/lib/dependencies/AMDRequireArrayDependency.js +99 -0
- package/examples/node_modules/webpack/lib/dependencies/AMDRequireContextDependency.js +53 -0
- package/examples/node_modules/webpack/lib/dependencies/AMDRequireDependenciesBlock.js +22 -0
- package/examples/node_modules/webpack/lib/dependencies/AMDRequireDependenciesBlockParserPlugin.js +279 -0
- package/examples/node_modules/webpack/lib/dependencies/AMDRequireDependency.js +174 -0
- package/examples/node_modules/webpack/lib/dependencies/AMDRequireItemDependency.js +35 -0
- package/examples/node_modules/webpack/lib/dependencies/AMDRuntimeModules.js +48 -0
- package/examples/node_modules/webpack/lib/dependencies/CachedConstDependency.js +106 -0
- package/examples/node_modules/webpack/lib/dependencies/CommonJsDependencyHelpers.js +49 -0
- package/examples/node_modules/webpack/lib/dependencies/CommonJsExportRequireDependency.js +374 -0
- package/examples/node_modules/webpack/lib/dependencies/CommonJsExportsDependency.js +160 -0
- package/examples/node_modules/webpack/lib/dependencies/CommonJsExportsParserPlugin.js +336 -0
- package/examples/node_modules/webpack/lib/dependencies/CommonJsFullRequireDependency.js +136 -0
- package/examples/node_modules/webpack/lib/dependencies/CommonJsImportsParserPlugin.js +388 -0
- package/examples/node_modules/webpack/lib/dependencies/CommonJsPlugin.js +280 -0
- package/examples/node_modules/webpack/lib/dependencies/CommonJsRequireContextDependency.js +55 -0
- package/examples/node_modules/webpack/lib/dependencies/CommonJsRequireDependency.js +34 -0
- package/examples/node_modules/webpack/lib/dependencies/CommonJsSelfReferenceDependency.js +141 -0
- package/examples/node_modules/webpack/lib/dependencies/ConstDependency.js +108 -0
- package/examples/node_modules/webpack/lib/dependencies/ContextDependency.js +147 -0
- package/examples/node_modules/webpack/lib/dependencies/ContextDependencyHelpers.js +232 -0
- package/examples/node_modules/webpack/lib/dependencies/ContextDependencyTemplateAsId.js +61 -0
- package/examples/node_modules/webpack/lib/dependencies/ContextDependencyTemplateAsRequireCall.js +59 -0
- package/examples/node_modules/webpack/lib/dependencies/ContextElementDependency.js +77 -0
- package/examples/node_modules/webpack/lib/dependencies/CreateScriptUrlDependency.js +66 -0
- package/examples/node_modules/webpack/lib/dependencies/CriticalDependencyWarning.js +25 -0
- package/examples/node_modules/webpack/lib/dependencies/CssExportDependency.js +85 -0
- package/examples/node_modules/webpack/lib/dependencies/CssImportDependency.js +75 -0
- package/examples/node_modules/webpack/lib/dependencies/CssLocalIdentifierDependency.js +119 -0
- package/examples/node_modules/webpack/lib/dependencies/CssSelfLocalIdentifierDependency.js +101 -0
- package/examples/node_modules/webpack/lib/dependencies/CssUrlDependency.js +132 -0
- package/examples/node_modules/webpack/lib/dependencies/DelegatedSourceDependency.js +30 -0
- package/examples/node_modules/webpack/lib/dependencies/DllEntryDependency.js +47 -0
- package/examples/node_modules/webpack/lib/dependencies/DynamicExports.js +69 -0
- package/examples/node_modules/webpack/lib/dependencies/EntryDependency.js +30 -0
- package/examples/node_modules/webpack/lib/dependencies/ExportsInfoDependency.js +143 -0
- package/examples/node_modules/webpack/lib/dependencies/HarmonyAcceptDependency.js +134 -0
- package/examples/node_modules/webpack/lib/dependencies/HarmonyAcceptImportDependency.js +37 -0
- package/examples/node_modules/webpack/lib/dependencies/HarmonyCompatibilityDependency.js +91 -0
- package/examples/node_modules/webpack/lib/dependencies/HarmonyDetectionParserPlugin.js +97 -0
- package/examples/node_modules/webpack/lib/dependencies/HarmonyExportDependencyParserPlugin.js +185 -0
- package/examples/node_modules/webpack/lib/dependencies/HarmonyExportExpressionDependency.js +190 -0
- package/examples/node_modules/webpack/lib/dependencies/HarmonyExportHeaderDependency.js +65 -0
- package/examples/node_modules/webpack/lib/dependencies/HarmonyExportImportedSpecifierDependency.js +1271 -0
- package/examples/node_modules/webpack/lib/dependencies/HarmonyExportInitFragment.js +168 -0
- package/examples/node_modules/webpack/lib/dependencies/HarmonyExportSpecifierDependency.js +111 -0
- package/examples/node_modules/webpack/lib/dependencies/HarmonyExports.js +40 -0
- package/examples/node_modules/webpack/lib/dependencies/HarmonyImportDependency.js +359 -0
- package/examples/node_modules/webpack/lib/dependencies/HarmonyImportDependencyParserPlugin.js +256 -0
- package/examples/node_modules/webpack/lib/dependencies/HarmonyImportSideEffectDependency.js +80 -0
- package/examples/node_modules/webpack/lib/dependencies/HarmonyImportSpecifierDependency.js +331 -0
- package/examples/node_modules/webpack/lib/dependencies/HarmonyModulesPlugin.js +121 -0
- package/examples/node_modules/webpack/lib/dependencies/HarmonyTopLevelThisParserPlugin.js +27 -0
- package/examples/node_modules/webpack/lib/dependencies/ImportContextDependency.js +52 -0
- package/examples/node_modules/webpack/lib/dependencies/ImportDependency.js +101 -0
- package/examples/node_modules/webpack/lib/dependencies/ImportEagerDependency.js +69 -0
- package/examples/node_modules/webpack/lib/dependencies/ImportMetaContextDependency.js +35 -0
- package/examples/node_modules/webpack/lib/dependencies/ImportMetaContextDependencyParserPlugin.js +252 -0
- package/examples/node_modules/webpack/lib/dependencies/ImportMetaContextPlugin.js +59 -0
- package/examples/node_modules/webpack/lib/dependencies/ImportMetaHotAcceptDependency.js +35 -0
- package/examples/node_modules/webpack/lib/dependencies/ImportMetaHotDeclineDependency.js +36 -0
- package/examples/node_modules/webpack/lib/dependencies/ImportMetaPlugin.js +203 -0
- package/examples/node_modules/webpack/lib/dependencies/ImportParserPlugin.js +267 -0
- package/examples/node_modules/webpack/lib/dependencies/ImportPlugin.js +82 -0
- package/examples/node_modules/webpack/lib/dependencies/ImportWeakDependency.js +67 -0
- package/examples/node_modules/webpack/lib/dependencies/JsonExportsDependency.js +103 -0
- package/examples/node_modules/webpack/lib/dependencies/LoaderDependency.js +27 -0
- package/examples/node_modules/webpack/lib/dependencies/LoaderImportDependency.js +28 -0
- package/examples/node_modules/webpack/lib/dependencies/LoaderPlugin.js +261 -0
- package/examples/node_modules/webpack/lib/dependencies/LocalModule.js +44 -0
- package/examples/node_modules/webpack/lib/dependencies/LocalModuleDependency.js +69 -0
- package/examples/node_modules/webpack/lib/dependencies/LocalModulesHelpers.js +50 -0
- package/examples/node_modules/webpack/lib/dependencies/ModuleDecoratorDependency.js +129 -0
- package/examples/node_modules/webpack/lib/dependencies/ModuleDependency.js +81 -0
- package/examples/node_modules/webpack/lib/dependencies/ModuleDependencyTemplateAsId.js +34 -0
- package/examples/node_modules/webpack/lib/dependencies/ModuleDependencyTemplateAsRequireId.js +38 -0
- package/examples/node_modules/webpack/lib/dependencies/ModuleHotAcceptDependency.js +35 -0
- package/examples/node_modules/webpack/lib/dependencies/ModuleHotDeclineDependency.js +36 -0
- package/examples/node_modules/webpack/lib/dependencies/NullDependency.js +40 -0
- package/examples/node_modules/webpack/lib/dependencies/PrefetchDependency.js +24 -0
- package/examples/node_modules/webpack/lib/dependencies/ProvidedDependency.js +122 -0
- package/examples/node_modules/webpack/lib/dependencies/PureExpressionDependency.js +128 -0
- package/examples/node_modules/webpack/lib/dependencies/RequireContextDependency.js +31 -0
- package/examples/node_modules/webpack/lib/dependencies/RequireContextDependencyParserPlugin.js +58 -0
- package/examples/node_modules/webpack/lib/dependencies/RequireContextPlugin.js +150 -0
- package/examples/node_modules/webpack/lib/dependencies/RequireEnsureDependenciesBlock.js +22 -0
- package/examples/node_modules/webpack/lib/dependencies/RequireEnsureDependenciesBlockParserPlugin.js +121 -0
- package/examples/node_modules/webpack/lib/dependencies/RequireEnsureDependency.js +101 -0
- package/examples/node_modules/webpack/lib/dependencies/RequireEnsureItemDependency.js +33 -0
- package/examples/node_modules/webpack/lib/dependencies/RequireEnsurePlugin.js +66 -0
- package/examples/node_modules/webpack/lib/dependencies/RequireHeaderDependency.js +57 -0
- package/examples/node_modules/webpack/lib/dependencies/RequireIncludeDependency.js +74 -0
- package/examples/node_modules/webpack/lib/dependencies/RequireIncludeDependencyParserPlugin.js +77 -0
- package/examples/node_modules/webpack/lib/dependencies/RequireIncludePlugin.js +42 -0
- package/examples/node_modules/webpack/lib/dependencies/RequireResolveContextDependency.js +50 -0
- package/examples/node_modules/webpack/lib/dependencies/RequireResolveDependency.js +51 -0
- package/examples/node_modules/webpack/lib/dependencies/RequireResolveHeaderDependency.js +63 -0
- package/examples/node_modules/webpack/lib/dependencies/RuntimeRequirementsDependency.js +77 -0
- package/examples/node_modules/webpack/lib/dependencies/StaticExportsDependency.js +66 -0
- package/examples/node_modules/webpack/lib/dependencies/SystemPlugin.js +140 -0
- package/examples/node_modules/webpack/lib/dependencies/SystemRuntimeModule.js +35 -0
- package/examples/node_modules/webpack/lib/dependencies/URLDependency.js +158 -0
- package/examples/node_modules/webpack/lib/dependencies/URLPlugin.js +114 -0
- package/examples/node_modules/webpack/lib/dependencies/UnsupportedDependency.js +69 -0
- package/examples/node_modules/webpack/lib/dependencies/WebAssemblyExportImportedDependency.js +79 -0
- package/examples/node_modules/webpack/lib/dependencies/WebAssemblyImportDependency.js +100 -0
- package/examples/node_modules/webpack/lib/dependencies/WebpackIsIncludedDependency.js +80 -0
- package/examples/node_modules/webpack/lib/dependencies/WorkerDependency.js +89 -0
- package/examples/node_modules/webpack/lib/dependencies/WorkerPlugin.js +416 -0
- package/examples/node_modules/webpack/lib/dependencies/getFunctionExpression.js +55 -0
- package/examples/node_modules/webpack/lib/dependencies/processExportInfo.js +65 -0
- package/examples/node_modules/webpack/lib/electron/ElectronTargetPlugin.js +68 -0
- package/examples/node_modules/webpack/lib/errors/BuildCycleError.js +27 -0
- package/examples/node_modules/webpack/lib/esm/ExportWebpackRequireRuntimeModule.js +29 -0
- package/examples/node_modules/webpack/lib/esm/ModuleChunkFormatPlugin.js +202 -0
- package/examples/node_modules/webpack/lib/esm/ModuleChunkLoadingPlugin.js +76 -0
- package/examples/node_modules/webpack/lib/esm/ModuleChunkLoadingRuntimeModule.js +242 -0
- package/examples/node_modules/webpack/lib/formatLocation.js +68 -0
- package/examples/node_modules/webpack/lib/hmr/HotModuleReplacement.runtime.js +394 -0
- package/examples/node_modules/webpack/lib/hmr/HotModuleReplacementRuntimeModule.js +42 -0
- package/examples/node_modules/webpack/lib/hmr/JavascriptHotModuleReplacement.runtime.js +462 -0
- package/examples/node_modules/webpack/lib/hmr/LazyCompilationPlugin.js +418 -0
- package/examples/node_modules/webpack/lib/hmr/lazyCompilationBackend.js +143 -0
- package/examples/node_modules/webpack/lib/ids/ChunkModuleIdRangePlugin.js +80 -0
- package/examples/node_modules/webpack/lib/ids/DeterministicChunkIdsPlugin.js +70 -0
- package/examples/node_modules/webpack/lib/ids/DeterministicModuleIdsPlugin.js +93 -0
- package/examples/node_modules/webpack/lib/ids/HashedModuleIdsPlugin.js +77 -0
- package/examples/node_modules/webpack/lib/ids/IdHelpers.js +477 -0
- package/examples/node_modules/webpack/lib/ids/NamedChunkIdsPlugin.js +81 -0
- package/examples/node_modules/webpack/lib/ids/NamedModuleIdsPlugin.js +58 -0
- package/examples/node_modules/webpack/lib/ids/NaturalChunkIdsPlugin.js +33 -0
- package/examples/node_modules/webpack/lib/ids/NaturalModuleIdsPlugin.js +39 -0
- package/examples/node_modules/webpack/lib/ids/OccurrenceChunkIdsPlugin.js +80 -0
- package/examples/node_modules/webpack/lib/ids/OccurrenceModuleIdsPlugin.js +159 -0
- package/examples/node_modules/webpack/lib/ids/SyncModuleIdsPlugin.js +140 -0
- package/examples/node_modules/webpack/lib/index.js +579 -0
- package/examples/node_modules/webpack/lib/javascript/ArrayPushCallbackChunkFormatPlugin.js +154 -0
- package/examples/node_modules/webpack/lib/javascript/BasicEvaluatedExpression.js +480 -0
- package/examples/node_modules/webpack/lib/javascript/ChunkHelpers.js +33 -0
- package/examples/node_modules/webpack/lib/javascript/CommonJsChunkFormatPlugin.js +172 -0
- package/examples/node_modules/webpack/lib/javascript/EnableChunkLoadingPlugin.js +118 -0
- package/examples/node_modules/webpack/lib/javascript/JavascriptGenerator.js +225 -0
- package/examples/node_modules/webpack/lib/javascript/JavascriptModulesPlugin.js +1370 -0
- package/examples/node_modules/webpack/lib/javascript/JavascriptParser.js +3776 -0
- package/examples/node_modules/webpack/lib/javascript/JavascriptParserHelpers.js +107 -0
- package/examples/node_modules/webpack/lib/javascript/StartupHelpers.js +132 -0
- package/examples/node_modules/webpack/lib/json/JsonData.js +41 -0
- package/examples/node_modules/webpack/lib/json/JsonGenerator.js +191 -0
- package/examples/node_modules/webpack/lib/json/JsonModulesPlugin.js +50 -0
- package/examples/node_modules/webpack/lib/json/JsonParser.js +57 -0
- package/examples/node_modules/webpack/lib/library/AbstractLibraryPlugin.js +297 -0
- package/examples/node_modules/webpack/lib/library/AmdLibraryPlugin.js +162 -0
- package/examples/node_modules/webpack/lib/library/AssignLibraryPlugin.js +375 -0
- package/examples/node_modules/webpack/lib/library/EnableLibraryPlugin.js +248 -0
- package/examples/node_modules/webpack/lib/library/ExportPropertyLibraryPlugin.js +113 -0
- package/examples/node_modules/webpack/lib/library/JsonpLibraryPlugin.js +88 -0
- package/examples/node_modules/webpack/lib/library/ModuleLibraryPlugin.js +104 -0
- package/examples/node_modules/webpack/lib/library/SystemLibraryPlugin.js +233 -0
- package/examples/node_modules/webpack/lib/library/UmdLibraryPlugin.js +324 -0
- package/examples/node_modules/webpack/lib/logging/Logger.js +163 -0
- package/examples/node_modules/webpack/lib/logging/createConsoleLogger.js +228 -0
- package/examples/node_modules/webpack/lib/logging/runtime.js +46 -0
- package/examples/node_modules/webpack/lib/logging/truncateArgs.js +82 -0
- package/examples/node_modules/webpack/lib/node/CommonJsChunkLoadingPlugin.js +105 -0
- package/examples/node_modules/webpack/lib/node/NodeEnvironmentPlugin.js +60 -0
- package/examples/node_modules/webpack/lib/node/NodeSourcePlugin.js +19 -0
- package/examples/node_modules/webpack/lib/node/NodeTargetPlugin.js +81 -0
- package/examples/node_modules/webpack/lib/node/NodeTemplatePlugin.js +33 -0
- package/examples/node_modules/webpack/lib/node/NodeWatchFileSystem.js +194 -0
- package/examples/node_modules/webpack/lib/node/ReadFileChunkLoadingRuntimeModule.js +291 -0
- package/examples/node_modules/webpack/lib/node/ReadFileCompileAsyncWasmPlugin.js +107 -0
- package/examples/node_modules/webpack/lib/node/ReadFileCompileWasmPlugin.js +93 -0
- package/examples/node_modules/webpack/lib/node/RequireChunkLoadingRuntimeModule.js +238 -0
- package/examples/node_modules/webpack/lib/node/nodeConsole.js +143 -0
- package/examples/node_modules/webpack/lib/optimize/AggressiveMergingPlugin.js +92 -0
- package/examples/node_modules/webpack/lib/optimize/AggressiveSplittingPlugin.js +329 -0
- package/examples/node_modules/webpack/lib/optimize/ConcatenatedModule.js +1879 -0
- package/examples/node_modules/webpack/lib/optimize/EnsureChunkConditionsPlugin.js +85 -0
- package/examples/node_modules/webpack/lib/optimize/FlagIncludedChunksPlugin.js +118 -0
- package/examples/node_modules/webpack/lib/optimize/InnerGraph.js +346 -0
- package/examples/node_modules/webpack/lib/optimize/InnerGraphPlugin.js +368 -0
- package/examples/node_modules/webpack/lib/optimize/LimitChunkCountPlugin.js +256 -0
- package/examples/node_modules/webpack/lib/optimize/MangleExportsPlugin.js +177 -0
- package/examples/node_modules/webpack/lib/optimize/MergeDuplicateChunksPlugin.js +115 -0
- package/examples/node_modules/webpack/lib/optimize/MinChunkSizePlugin.js +113 -0
- package/examples/node_modules/webpack/lib/optimize/MinMaxSizeWarning.js +30 -0
- package/examples/node_modules/webpack/lib/optimize/ModuleConcatenationPlugin.js +866 -0
- package/examples/node_modules/webpack/lib/optimize/RealContentHashPlugin.js +408 -0
- package/examples/node_modules/webpack/lib/optimize/RemoveEmptyChunksPlugin.js +57 -0
- package/examples/node_modules/webpack/lib/optimize/RemoveParentModulesPlugin.js +121 -0
- package/examples/node_modules/webpack/lib/optimize/RuntimeChunkPlugin.js +44 -0
- package/examples/node_modules/webpack/lib/optimize/SideEffectsFlagPlugin.js +337 -0
- package/examples/node_modules/webpack/lib/optimize/SplitChunksPlugin.js +1723 -0
- package/examples/node_modules/webpack/lib/performance/AssetsOverSizeLimitWarning.js +32 -0
- package/examples/node_modules/webpack/lib/performance/EntrypointsOverSizeLimitWarning.js +35 -0
- package/examples/node_modules/webpack/lib/performance/NoAsyncChunksWarning.js +20 -0
- package/examples/node_modules/webpack/lib/performance/SizeLimitsPlugin.js +165 -0
- package/examples/node_modules/webpack/lib/prefetch/ChunkPrefetchFunctionRuntimeModule.js +44 -0
- package/examples/node_modules/webpack/lib/prefetch/ChunkPrefetchPreloadPlugin.js +95 -0
- package/examples/node_modules/webpack/lib/prefetch/ChunkPrefetchStartupRuntimeModule.js +52 -0
- package/examples/node_modules/webpack/lib/prefetch/ChunkPrefetchTriggerRuntimeModule.js +49 -0
- package/examples/node_modules/webpack/lib/prefetch/ChunkPreloadTriggerRuntimeModule.js +43 -0
- package/examples/node_modules/webpack/lib/rules/BasicEffectRulePlugin.js +39 -0
- package/examples/node_modules/webpack/lib/rules/BasicMatcherRulePlugin.js +47 -0
- package/examples/node_modules/webpack/lib/rules/ObjectMatcherRulePlugin.js +47 -0
- package/examples/node_modules/webpack/lib/rules/RuleSetCompiler.js +379 -0
- package/examples/node_modules/webpack/lib/rules/UseEffectRulePlugin.js +194 -0
- package/examples/node_modules/webpack/lib/runtime/AsyncModuleRuntimeModule.js +156 -0
- package/examples/node_modules/webpack/lib/runtime/AutoPublicPathRuntimeModule.js +69 -0
- package/examples/node_modules/webpack/lib/runtime/ChunkNameRuntimeModule.js +27 -0
- package/examples/node_modules/webpack/lib/runtime/CompatGetDefaultExportRuntimeModule.js +37 -0
- package/examples/node_modules/webpack/lib/runtime/CompatRuntimeModule.js +78 -0
- package/examples/node_modules/webpack/lib/runtime/CreateFakeNamespaceObjectRuntimeModule.js +66 -0
- package/examples/node_modules/webpack/lib/runtime/CreateScriptRuntimeModule.js +36 -0
- package/examples/node_modules/webpack/lib/runtime/CreateScriptUrlRuntimeModule.js +36 -0
- package/examples/node_modules/webpack/lib/runtime/DefinePropertyGettersRuntimeModule.js +39 -0
- package/examples/node_modules/webpack/lib/runtime/EnsureChunkRuntimeModule.js +54 -0
- package/examples/node_modules/webpack/lib/runtime/GetChunkFilenameRuntimeModule.js +282 -0
- package/examples/node_modules/webpack/lib/runtime/GetFullHashRuntimeModule.js +29 -0
- package/examples/node_modules/webpack/lib/runtime/GetMainFilenameRuntimeModule.js +44 -0
- package/examples/node_modules/webpack/lib/runtime/GetTrustedTypesPolicyRuntimeModule.js +76 -0
- package/examples/node_modules/webpack/lib/runtime/GlobalRuntimeModule.js +47 -0
- package/examples/node_modules/webpack/lib/runtime/HasOwnPropertyRuntimeModule.js +32 -0
- package/examples/node_modules/webpack/lib/runtime/HelperRuntimeModule.js +18 -0
- package/examples/node_modules/webpack/lib/runtime/LoadScriptRuntimeModule.js +158 -0
- package/examples/node_modules/webpack/lib/runtime/MakeNamespaceObjectRuntimeModule.js +36 -0
- package/examples/node_modules/webpack/lib/runtime/OnChunksLoadedRuntimeModule.js +76 -0
- package/examples/node_modules/webpack/lib/runtime/PublicPathRuntimeModule.js +30 -0
- package/examples/node_modules/webpack/lib/runtime/RelativeUrlRuntimeModule.js +41 -0
- package/examples/node_modules/webpack/lib/runtime/RuntimeIdRuntimeModule.js +28 -0
- package/examples/node_modules/webpack/lib/runtime/StartupChunkDependenciesPlugin.js +74 -0
- package/examples/node_modules/webpack/lib/runtime/StartupChunkDependenciesRuntimeModule.js +67 -0
- package/examples/node_modules/webpack/lib/runtime/StartupEntrypointRuntimeModule.js +50 -0
- package/examples/node_modules/webpack/lib/runtime/SystemContextRuntimeModule.js +25 -0
- package/examples/node_modules/webpack/lib/schemes/DataUriPlugin.js +56 -0
- package/examples/node_modules/webpack/lib/schemes/FileUriPlugin.js +49 -0
- package/examples/node_modules/webpack/lib/schemes/HttpUriPlugin.js +1118 -0
- package/examples/node_modules/webpack/lib/serialization/ArraySerializer.js +22 -0
- package/examples/node_modules/webpack/lib/serialization/BinaryMiddleware.js +950 -0
- package/examples/node_modules/webpack/lib/serialization/DateObjectSerializer.js +16 -0
- package/examples/node_modules/webpack/lib/serialization/ErrorObjectSerializer.js +27 -0
- package/examples/node_modules/webpack/lib/serialization/FileMiddleware.js +665 -0
- package/examples/node_modules/webpack/lib/serialization/MapObjectSerializer.js +31 -0
- package/examples/node_modules/webpack/lib/serialization/NullPrototypeObjectSerializer.js +33 -0
- package/examples/node_modules/webpack/lib/serialization/ObjectMiddleware.js +734 -0
- package/examples/node_modules/webpack/lib/serialization/PlainObjectSerializer.js +80 -0
- package/examples/node_modules/webpack/lib/serialization/RegExpObjectSerializer.js +17 -0
- package/examples/node_modules/webpack/lib/serialization/Serializer.js +46 -0
- package/examples/node_modules/webpack/lib/serialization/SerializerMiddleware.js +153 -0
- package/examples/node_modules/webpack/lib/serialization/SetObjectSerializer.js +24 -0
- package/examples/node_modules/webpack/lib/serialization/SingleItemMiddleware.js +34 -0
- package/examples/node_modules/webpack/lib/serialization/types.js +13 -0
- package/examples/node_modules/webpack/lib/sharing/ConsumeSharedFallbackDependency.js +30 -0
- package/examples/node_modules/webpack/lib/sharing/ConsumeSharedModule.js +251 -0
- package/examples/node_modules/webpack/lib/sharing/ConsumeSharedPlugin.js +319 -0
- package/examples/node_modules/webpack/lib/sharing/ConsumeSharedRuntimeModule.js +360 -0
- package/examples/node_modules/webpack/lib/sharing/ProvideForSharedDependency.js +34 -0
- package/examples/node_modules/webpack/lib/sharing/ProvideSharedDependency.js +63 -0
- package/examples/node_modules/webpack/lib/sharing/ProvideSharedModule.js +184 -0
- package/examples/node_modules/webpack/lib/sharing/ProvideSharedModuleFactory.js +35 -0
- package/examples/node_modules/webpack/lib/sharing/ProvideSharedPlugin.js +237 -0
- package/examples/node_modules/webpack/lib/sharing/SharePlugin.js +92 -0
- package/examples/node_modules/webpack/lib/sharing/ShareRuntimeModule.js +141 -0
- package/examples/node_modules/webpack/lib/sharing/resolveMatchedConfigs.js +91 -0
- package/examples/node_modules/webpack/lib/sharing/utils.js +90 -0
- package/examples/node_modules/webpack/lib/stats/DefaultStatsFactoryPlugin.js +2398 -0
- package/examples/node_modules/webpack/lib/stats/DefaultStatsPresetPlugin.js +326 -0
- package/examples/node_modules/webpack/lib/stats/DefaultStatsPrinterPlugin.js +1380 -0
- package/examples/node_modules/webpack/lib/stats/StatsFactory.js +292 -0
- package/examples/node_modules/webpack/lib/stats/StatsPrinter.js +249 -0
- package/examples/node_modules/webpack/lib/util/ArrayHelpers.js +44 -0
- package/examples/node_modules/webpack/lib/util/ArrayQueue.js +111 -0
- package/examples/node_modules/webpack/lib/util/AsyncQueue.js +373 -0
- package/examples/node_modules/webpack/lib/util/Hash.js +35 -0
- package/examples/node_modules/webpack/lib/util/IterableHelpers.js +46 -0
- package/examples/node_modules/webpack/lib/util/LazyBucketSortedSet.js +236 -0
- package/examples/node_modules/webpack/lib/util/LazySet.js +208 -0
- package/examples/node_modules/webpack/lib/util/MapHelpers.js +22 -0
- package/examples/node_modules/webpack/lib/util/ParallelismFactorCalculator.js +59 -0
- package/examples/node_modules/webpack/lib/util/Queue.js +51 -0
- package/examples/node_modules/webpack/lib/util/Semaphore.js +54 -0
- package/examples/node_modules/webpack/lib/util/SetHelpers.js +94 -0
- package/examples/node_modules/webpack/lib/util/SortableSet.js +160 -0
- package/examples/node_modules/webpack/lib/util/StackedCacheMap.js +110 -0
- package/examples/node_modules/webpack/lib/util/StackedMap.js +166 -0
- package/examples/node_modules/webpack/lib/util/StringXor.js +55 -0
- package/examples/node_modules/webpack/lib/util/TupleQueue.js +61 -0
- package/examples/node_modules/webpack/lib/util/TupleSet.js +150 -0
- package/examples/node_modules/webpack/lib/util/URLAbsoluteSpecifier.js +87 -0
- package/examples/node_modules/webpack/lib/util/WeakTupleMap.js +171 -0
- package/examples/node_modules/webpack/lib/util/binarySearchBounds.js +86 -0
- package/examples/node_modules/webpack/lib/util/cleverMerge.js +568 -0
- package/examples/node_modules/webpack/lib/util/comparators.js +459 -0
- package/examples/node_modules/webpack/lib/util/compileBooleanMatcher.js +206 -0
- package/examples/node_modules/webpack/lib/util/create-schema-validation.js +28 -0
- package/examples/node_modules/webpack/lib/util/createHash.js +171 -0
- package/examples/node_modules/webpack/lib/util/deprecation.js +264 -0
- package/examples/node_modules/webpack/lib/util/deterministicGrouping.js +508 -0
- package/examples/node_modules/webpack/lib/util/extractUrlAndGlobal.js +18 -0
- package/examples/node_modules/webpack/lib/util/findGraphRoots.js +229 -0
- package/examples/node_modules/webpack/lib/util/fs.js +337 -0
- package/examples/node_modules/webpack/lib/util/hash/BatchedHash.js +68 -0
- package/examples/node_modules/webpack/lib/util/hash/md4.js +20 -0
- package/examples/node_modules/webpack/lib/util/hash/wasm-hash.js +163 -0
- package/examples/node_modules/webpack/lib/util/hash/xxhash64.js +20 -0
- package/examples/node_modules/webpack/lib/util/identifier.js +377 -0
- package/examples/node_modules/webpack/lib/util/internalSerializables.js +211 -0
- package/examples/node_modules/webpack/lib/util/makeSerializable.js +30 -0
- package/examples/node_modules/webpack/lib/util/memoize.js +32 -0
- package/examples/node_modules/webpack/lib/util/nonNumericOnlyHash.js +22 -0
- package/examples/node_modules/webpack/lib/util/numberHash.js +45 -0
- package/examples/node_modules/webpack/lib/util/objectToMap.js +15 -0
- package/examples/node_modules/webpack/lib/util/processAsyncTree.js +62 -0
- package/examples/node_modules/webpack/lib/util/propertyAccess.js +78 -0
- package/examples/node_modules/webpack/lib/util/registerExternalSerializer.js +337 -0
- package/examples/node_modules/webpack/lib/util/runtime.js +623 -0
- package/examples/node_modules/webpack/lib/util/semver.js +484 -0
- package/examples/node_modules/webpack/lib/util/serialization.js +128 -0
- package/examples/node_modules/webpack/lib/util/smartGrouping.js +206 -0
- package/examples/node_modules/webpack/lib/util/source.js +61 -0
- package/examples/node_modules/webpack/lib/validateSchema.js +175 -0
- package/examples/node_modules/webpack/lib/wasm/EnableWasmLoadingPlugin.js +118 -0
- package/examples/node_modules/webpack/lib/wasm-async/AsyncWasmLoadingRuntimeModule.js +78 -0
- package/examples/node_modules/webpack/lib/wasm-async/AsyncWebAssemblyGenerator.js +53 -0
- package/examples/node_modules/webpack/lib/wasm-async/AsyncWebAssemblyJavascriptGenerator.js +194 -0
- package/examples/node_modules/webpack/lib/wasm-async/AsyncWebAssemblyModulesPlugin.js +198 -0
- package/examples/node_modules/webpack/lib/wasm-async/AsyncWebAssemblyParser.js +75 -0
- package/examples/node_modules/webpack/lib/wasm-sync/UnsupportedWebAssemblyFeatureError.js +16 -0
- package/examples/node_modules/webpack/lib/wasm-sync/WasmChunkLoadingRuntimeModule.js +372 -0
- package/examples/node_modules/webpack/lib/wasm-sync/WasmFinalizeExportsPlugin.js +82 -0
- package/examples/node_modules/webpack/lib/wasm-sync/WebAssemblyGenerator.js +501 -0
- package/examples/node_modules/webpack/lib/wasm-sync/WebAssemblyInInitialChunkError.js +106 -0
- package/examples/node_modules/webpack/lib/wasm-sync/WebAssemblyJavascriptGenerator.js +216 -0
- package/examples/node_modules/webpack/lib/wasm-sync/WebAssemblyModulesPlugin.js +142 -0
- package/examples/node_modules/webpack/lib/wasm-sync/WebAssemblyParser.js +192 -0
- package/examples/node_modules/webpack/lib/wasm-sync/WebAssemblyUtils.js +65 -0
- package/examples/node_modules/webpack/lib/web/FetchCompileAsyncWasmPlugin.js +62 -0
- package/examples/node_modules/webpack/lib/web/FetchCompileWasmPlugin.js +71 -0
- package/examples/node_modules/webpack/lib/web/JsonpChunkLoadingPlugin.js +91 -0
- package/examples/node_modules/webpack/lib/web/JsonpChunkLoadingRuntimeModule.js +450 -0
- package/examples/node_modules/webpack/lib/web/JsonpTemplatePlugin.js +38 -0
- package/examples/node_modules/webpack/lib/webpack.js +171 -0
- package/examples/node_modules/webpack/lib/webworker/ImportScriptsChunkLoadingPlugin.js +94 -0
- package/examples/node_modules/webpack/lib/webworker/ImportScriptsChunkLoadingRuntimeModule.js +238 -0
- package/examples/node_modules/webpack/lib/webworker/WebWorkerTemplatePlugin.js +25 -0
- package/examples/node_modules/webpack/module.d.ts +215 -0
- package/examples/node_modules/webpack/package.json +242 -0
- package/examples/node_modules/webpack/schemas/WebpackOptions.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/WebpackOptions.check.js +6 -0
- package/examples/node_modules/webpack/schemas/WebpackOptions.json +5321 -0
- package/examples/node_modules/webpack/schemas/_container.json +155 -0
- package/examples/node_modules/webpack/schemas/_sharing.json +118 -0
- package/examples/node_modules/webpack/schemas/plugins/BannerPlugin.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/BannerPlugin.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/BannerPlugin.json +103 -0
- package/examples/node_modules/webpack/schemas/plugins/DllPlugin.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/DllPlugin.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/DllPlugin.json +36 -0
- package/examples/node_modules/webpack/schemas/plugins/DllReferencePlugin.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/DllReferencePlugin.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/DllReferencePlugin.json +206 -0
- package/examples/node_modules/webpack/schemas/plugins/HashedModuleIdsPlugin.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/HashedModuleIdsPlugin.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/HashedModuleIdsPlugin.json +44 -0
- package/examples/node_modules/webpack/schemas/plugins/IgnorePlugin.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/IgnorePlugin.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/IgnorePlugin.json +34 -0
- package/examples/node_modules/webpack/schemas/plugins/JsonModulesPluginParser.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/JsonModulesPluginParser.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/JsonModulesPluginParser.json +12 -0
- package/examples/node_modules/webpack/schemas/plugins/LoaderOptionsPlugin.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/LoaderOptionsPlugin.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/LoaderOptionsPlugin.json +27 -0
- package/examples/node_modules/webpack/schemas/plugins/ProgressPlugin.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/ProgressPlugin.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/ProgressPlugin.json +65 -0
- package/examples/node_modules/webpack/schemas/plugins/SourceMapDevToolPlugin.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/SourceMapDevToolPlugin.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/SourceMapDevToolPlugin.json +143 -0
- package/examples/node_modules/webpack/schemas/plugins/WatchIgnorePlugin.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/WatchIgnorePlugin.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/WatchIgnorePlugin.json +25 -0
- package/examples/node_modules/webpack/schemas/plugins/asset/AssetGeneratorOptions.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/asset/AssetGeneratorOptions.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/asset/AssetGeneratorOptions.json +3 -0
- package/examples/node_modules/webpack/schemas/plugins/asset/AssetInlineGeneratorOptions.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/asset/AssetInlineGeneratorOptions.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/asset/AssetInlineGeneratorOptions.json +3 -0
- package/examples/node_modules/webpack/schemas/plugins/asset/AssetParserOptions.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/asset/AssetParserOptions.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/asset/AssetParserOptions.json +3 -0
- package/examples/node_modules/webpack/schemas/plugins/asset/AssetResourceGeneratorOptions.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/asset/AssetResourceGeneratorOptions.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/asset/AssetResourceGeneratorOptions.json +3 -0
- package/examples/node_modules/webpack/schemas/plugins/container/ContainerPlugin.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/container/ContainerPlugin.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/container/ContainerPlugin.json +286 -0
- package/examples/node_modules/webpack/schemas/plugins/container/ContainerReferencePlugin.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/container/ContainerReferencePlugin.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/container/ContainerReferencePlugin.json +128 -0
- package/examples/node_modules/webpack/schemas/plugins/container/ExternalsType.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/container/ExternalsType.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/container/ExternalsType.json +3 -0
- package/examples/node_modules/webpack/schemas/plugins/container/ModuleFederationPlugin.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/container/ModuleFederationPlugin.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/container/ModuleFederationPlugin.json +513 -0
- package/examples/node_modules/webpack/schemas/plugins/css/CssGeneratorOptions.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/css/CssGeneratorOptions.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/css/CssGeneratorOptions.json +3 -0
- package/examples/node_modules/webpack/schemas/plugins/css/CssParserOptions.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/css/CssParserOptions.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/css/CssParserOptions.json +3 -0
- package/examples/node_modules/webpack/schemas/plugins/debug/ProfilingPlugin.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/debug/ProfilingPlugin.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/debug/ProfilingPlugin.json +12 -0
- package/examples/node_modules/webpack/schemas/plugins/ids/OccurrenceChunkIdsPlugin.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/ids/OccurrenceChunkIdsPlugin.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/ids/OccurrenceChunkIdsPlugin.json +11 -0
- package/examples/node_modules/webpack/schemas/plugins/ids/OccurrenceModuleIdsPlugin.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/ids/OccurrenceModuleIdsPlugin.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/ids/OccurrenceModuleIdsPlugin.json +11 -0
- package/examples/node_modules/webpack/schemas/plugins/optimize/AggressiveSplittingPlugin.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/optimize/AggressiveSplittingPlugin.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/optimize/AggressiveSplittingPlugin.json +23 -0
- package/examples/node_modules/webpack/schemas/plugins/optimize/LimitChunkCountPlugin.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/optimize/LimitChunkCountPlugin.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/optimize/LimitChunkCountPlugin.json +21 -0
- package/examples/node_modules/webpack/schemas/plugins/optimize/MinChunkSizePlugin.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/optimize/MinChunkSizePlugin.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/optimize/MinChunkSizePlugin.json +20 -0
- package/examples/node_modules/webpack/schemas/plugins/schemes/HttpUriPlugin.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/schemes/HttpUriPlugin.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/schemes/HttpUriPlugin.json +74 -0
- package/examples/node_modules/webpack/schemas/plugins/sharing/ConsumeSharedPlugin.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/sharing/ConsumeSharedPlugin.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/sharing/ConsumeSharedPlugin.json +120 -0
- package/examples/node_modules/webpack/schemas/plugins/sharing/ProvideSharedPlugin.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/sharing/ProvideSharedPlugin.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/sharing/ProvideSharedPlugin.json +94 -0
- package/examples/node_modules/webpack/schemas/plugins/sharing/SharePlugin.check.d.ts +7 -0
- package/examples/node_modules/webpack/schemas/plugins/sharing/SharePlugin.check.js +6 -0
- package/examples/node_modules/webpack/schemas/plugins/sharing/SharePlugin.json +133 -0
- package/examples/node_modules/webpack/types.d.ts +13072 -0
- package/examples/node_modules/webpack-cli/README.md +45 -14
- package/examples/node_modules/webpack-cli/bin/cli.js +9 -32
- package/examples/node_modules/webpack-cli/lib/bootstrap.js +12 -15
- package/examples/node_modules/webpack-cli/lib/index.js +3 -3
- package/examples/node_modules/webpack-cli/lib/plugins/CLIPlugin.js +101 -68
- package/examples/node_modules/webpack-cli/lib/utils/dynamic-import-loader.js +7 -7
- package/examples/node_modules/webpack-cli/lib/webpack-cli.js +2093 -1553
- package/examples/node_modules/webpack-cli/node_modules/commander/CHANGELOG.md +440 -0
- package/examples/node_modules/webpack-cli/node_modules/commander/LICENSE +22 -0
- package/examples/node_modules/webpack-cli/node_modules/commander/Readme.md +917 -0
- package/examples/node_modules/{commander → webpack-cli/node_modules/commander}/esm.mjs +0 -0
- package/examples/node_modules/webpack-cli/node_modules/commander/index.js +2217 -0
- package/examples/node_modules/{commander → webpack-cli/node_modules/commander}/package-support.json +0 -0
- package/examples/node_modules/webpack-cli/node_modules/commander/package.json +68 -0
- package/examples/node_modules/webpack-cli/node_modules/commander/typings/index.d.ts +627 -0
- package/examples/node_modules/webpack-cli/package.json +30 -63
- package/examples/node_modules/webpack-merge/CHANGELOG.md +5 -0
- package/examples/node_modules/webpack-merge/README.md +3 -3
- package/examples/node_modules/webpack-merge/dist/index.d.ts +4 -4
- package/examples/node_modules/webpack-merge/dist/index.js +8 -7
- package/examples/node_modules/webpack-merge/dist/index.js.map +1 -1
- package/examples/node_modules/webpack-merge/dist/join-arrays.js +7 -6
- package/examples/node_modules/webpack-merge/dist/join-arrays.js.map +1 -1
- package/examples/node_modules/webpack-merge/dist/types.d.ts +1 -0
- package/examples/node_modules/webpack-merge/dist/unique.js +5 -4
- package/examples/node_modules/webpack-merge/dist/unique.js.map +1 -1
- package/examples/node_modules/webpack-merge/dist/utils.d.ts +1 -1
- package/examples/node_modules/webpack-merge/package.json +37 -65
- package/examples/node_modules/webpack-sources/LICENSE +21 -0
- package/examples/node_modules/webpack-sources/README.md +228 -0
- package/examples/node_modules/webpack-sources/lib/CachedSource.js +274 -0
- package/examples/node_modules/webpack-sources/lib/CompatSource.js +66 -0
- package/examples/node_modules/webpack-sources/lib/ConcatSource.js +319 -0
- package/examples/node_modules/webpack-sources/lib/OriginalSource.js +135 -0
- package/examples/node_modules/webpack-sources/lib/PrefixSource.js +114 -0
- package/examples/node_modules/webpack-sources/lib/RawSource.js +81 -0
- package/examples/node_modules/webpack-sources/lib/ReplaceSource.js +467 -0
- package/examples/node_modules/webpack-sources/lib/SizeOnlySource.js +42 -0
- package/examples/node_modules/webpack-sources/lib/Source.js +38 -0
- package/examples/node_modules/webpack-sources/lib/SourceMapSource.js +247 -0
- package/examples/node_modules/webpack-sources/lib/helpers/createMappingsSerializer.js +206 -0
- package/examples/node_modules/webpack-sources/lib/helpers/getFromStreamChunks.js +129 -0
- package/examples/node_modules/webpack-sources/lib/helpers/getGeneratedSourceInfo.js +33 -0
- package/examples/node_modules/webpack-sources/lib/helpers/getName.js +14 -0
- package/examples/node_modules/webpack-sources/lib/helpers/getSource.js +17 -0
- package/examples/node_modules/webpack-sources/lib/helpers/readMappings.js +116 -0
- package/examples/node_modules/webpack-sources/lib/helpers/splitIntoLines.js +21 -0
- package/examples/node_modules/webpack-sources/lib/helpers/splitIntoPotentialTokens.js +41 -0
- package/examples/node_modules/webpack-sources/lib/helpers/streamAndGetSourceAndMap.js +102 -0
- package/examples/node_modules/webpack-sources/lib/helpers/streamChunks.js +36 -0
- package/examples/node_modules/webpack-sources/lib/helpers/streamChunksOfCombinedSourceMap.js +329 -0
- package/examples/node_modules/webpack-sources/lib/helpers/streamChunksOfRawSource.js +34 -0
- package/examples/node_modules/webpack-sources/lib/helpers/streamChunksOfSourceMap.js +412 -0
- package/examples/node_modules/webpack-sources/lib/index.js +30 -0
- package/examples/node_modules/webpack-sources/package.json +58 -0
- package/examples/node_modules/which/package.json +22 -55
- package/examples/node_modules/wildcard/package.json +22 -51
- package/lib/browser/math.js +6 -6
- package/lib/browser/math.js.map +1 -1
- package/lib/cjs/expression/embeddedDocs/function/matrix/forEach.js +1 -1
- package/lib/cjs/expression/node/FunctionNode.js +30 -8
- package/lib/cjs/function/arithmetic/sign.js +4 -0
- package/lib/cjs/function/string/format.js +3 -0
- package/lib/cjs/header.js +2 -2
- package/lib/cjs/type/unit/Unit.js +67 -79
- package/lib/cjs/utils/string.js +17 -4
- package/lib/cjs/version.js +1 -1
- package/lib/esm/expression/embeddedDocs/function/matrix/forEach.js +1 -1
- package/lib/esm/expression/node/FunctionNode.js +29 -9
- package/lib/esm/function/arithmetic/sign.js +4 -0
- package/lib/esm/function/string/format.js +3 -0
- package/lib/esm/type/unit/Unit.js +67 -79
- package/lib/esm/utils/string.js +18 -4
- package/lib/esm/version.js +1 -1
- package/package.json +2 -2
- package/examples/node_modules/@discoveryjs/json-ext/CHANGELOG.md +0 -42
- package/examples/node_modules/@webpack-cli/configtest/CHANGELOG.md +0 -18
- package/examples/node_modules/@webpack-cli/configtest/LICENSE +0 -20
- package/examples/node_modules/@webpack-cli/info/CHANGELOG.md +0 -61
- package/examples/node_modules/@webpack-cli/info/LICENSE +0 -20
- package/examples/node_modules/@webpack-cli/serve/CHANGELOG.md +0 -93
- package/examples/node_modules/@webpack-cli/serve/LICENSE +0 -20
- package/examples/node_modules/@webpack-cli/serve/lib/startDevServer.d.ts +0 -12
- package/examples/node_modules/@webpack-cli/serve/lib/startDevServer.js +0 -113
- package/examples/node_modules/ansi-colors/LICENSE +0 -21
- package/examples/node_modules/ansi-colors/README.md +0 -315
- package/examples/node_modules/ansi-colors/index.js +0 -177
- package/examples/node_modules/ansi-colors/package.json +0 -152
- package/examples/node_modules/ansi-colors/symbols.js +0 -70
- package/examples/node_modules/ansi-colors/types/index.d.ts +0 -161
- package/examples/node_modules/enquirer/CHANGELOG.md +0 -135
- package/examples/node_modules/enquirer/LICENSE +0 -21
- package/examples/node_modules/enquirer/README.md +0 -1752
- package/examples/node_modules/enquirer/index.d.ts +0 -151
- package/examples/node_modules/enquirer/index.js +0 -250
- package/examples/node_modules/enquirer/lib/ansi.js +0 -116
- package/examples/node_modules/enquirer/lib/combos.js +0 -75
- package/examples/node_modules/enquirer/lib/completer.js +0 -52
- package/examples/node_modules/enquirer/lib/interpolate.js +0 -266
- package/examples/node_modules/enquirer/lib/keypress.js +0 -243
- package/examples/node_modules/enquirer/lib/placeholder.js +0 -63
- package/examples/node_modules/enquirer/lib/prompt.js +0 -485
- package/examples/node_modules/enquirer/lib/prompts/autocomplete.js +0 -113
- package/examples/node_modules/enquirer/lib/prompts/basicauth.js +0 -41
- package/examples/node_modules/enquirer/lib/prompts/confirm.js +0 -13
- package/examples/node_modules/enquirer/lib/prompts/editable.js +0 -136
- package/examples/node_modules/enquirer/lib/prompts/form.js +0 -196
- package/examples/node_modules/enquirer/lib/prompts/index.js +0 -28
- package/examples/node_modules/enquirer/lib/prompts/input.js +0 -55
- package/examples/node_modules/enquirer/lib/prompts/invisible.js +0 -11
- package/examples/node_modules/enquirer/lib/prompts/list.js +0 -36
- package/examples/node_modules/enquirer/lib/prompts/multiselect.js +0 -11
- package/examples/node_modules/enquirer/lib/prompts/numeral.js +0 -1
- package/examples/node_modules/enquirer/lib/prompts/password.js +0 -18
- package/examples/node_modules/enquirer/lib/prompts/quiz.js +0 -37
- package/examples/node_modules/enquirer/lib/prompts/scale.js +0 -237
- package/examples/node_modules/enquirer/lib/prompts/select.js +0 -139
- package/examples/node_modules/enquirer/lib/prompts/snippet.js +0 -185
- package/examples/node_modules/enquirer/lib/prompts/sort.js +0 -37
- package/examples/node_modules/enquirer/lib/prompts/survey.js +0 -163
- package/examples/node_modules/enquirer/lib/prompts/text.js +0 -1
- package/examples/node_modules/enquirer/lib/prompts/toggle.js +0 -109
- package/examples/node_modules/enquirer/lib/render.js +0 -33
- package/examples/node_modules/enquirer/lib/roles.js +0 -46
- package/examples/node_modules/enquirer/lib/state.js +0 -69
- package/examples/node_modules/enquirer/lib/styles.js +0 -144
- package/examples/node_modules/enquirer/lib/symbols.js +0 -66
- package/examples/node_modules/enquirer/lib/theme.js +0 -11
- package/examples/node_modules/enquirer/lib/timer.js +0 -38
- package/examples/node_modules/enquirer/lib/types/array.js +0 -658
- package/examples/node_modules/enquirer/lib/types/auth.js +0 -29
- package/examples/node_modules/enquirer/lib/types/boolean.js +0 -88
- package/examples/node_modules/enquirer/lib/types/index.js +0 -7
- package/examples/node_modules/enquirer/lib/types/number.js +0 -86
- package/examples/node_modules/enquirer/lib/types/string.js +0 -185
- package/examples/node_modules/enquirer/lib/utils.js +0 -268
- package/examples/node_modules/enquirer/package.json +0 -148
- package/examples/node_modules/is-core-module/.eslintignore +0 -1
- package/examples/node_modules/is-core-module/.github/FUNDING.yml +0 -12
- package/examples/node_modules/is-core-module/.github/workflows/node-4+.yml +0 -54
- package/examples/node_modules/is-core-module/.github/workflows/node-iojs.yml +0 -58
- package/examples/node_modules/is-core-module/.github/workflows/node-pretest.yml +0 -26
- package/examples/node_modules/is-core-module/.github/workflows/node-zero.yml +0 -58
- package/examples/node_modules/is-core-module/.github/workflows/rebase.yml +0 -15
- package/examples/node_modules/is-core-module/.github/workflows/require-allow-edits.yml +0 -14
- package/examples/node_modules/path-parse/.travis.yml +0 -9
- package/examples/node_modules/path-parse/test.js +0 -77
- package/examples/node_modules/resolve/.eslintignore +0 -1
- package/examples/node_modules/resolve/test/.eslintrc +0 -5
- package/examples/node_modules/signal-exit/CHANGELOG.md +0 -35
- package/examples/node_modules/v8-compile-cache/CHANGELOG.md +0 -53
- package/examples/node_modules/v8-compile-cache/LICENSE +0 -21
- package/examples/node_modules/v8-compile-cache/README.md +0 -55
- package/examples/node_modules/v8-compile-cache/package.json +0 -66
- package/examples/node_modules/v8-compile-cache/v8-compile-cache.js +0 -371
- package/examples/node_modules/webpack-cli/CHANGELOG.md +0 -501
- package/examples/node_modules/webpack-cli/LICENSE +0 -20
- package/examples/node_modules/webpack-cli/lib/utils/__tests__/get-package-manager.test.js +0 -108
- package/examples/node_modules/webpack-cli/lib/utils/__tests__/prompt-installation.test.js +0 -118
- package/examples/node_modules/webpack-cli/lib/utils/capitalize-first-letter.js +0 -9
- package/examples/node_modules/webpack-cli/lib/utils/get-package-manager.js +0 -65
- package/examples/node_modules/webpack-cli/lib/utils/index.js +0 -49
- package/examples/node_modules/webpack-cli/lib/utils/logger.js +0 -11
- package/examples/node_modules/webpack-cli/lib/utils/package-exists.js +0 -9
- package/examples/node_modules/webpack-cli/lib/utils/prompt-installation.js +0 -58
- package/examples/node_modules/webpack-cli/lib/utils/run-command.js +0 -13
- package/examples/node_modules/webpack-cli/lib/utils/to-kebab-case.js +0 -5
@@ -0,0 +1,3559 @@
|
|
1
|
+
/*
|
2
|
+
MIT License http://www.opensource.org/licenses/mit-license.php
|
3
|
+
Author Tobias Koppers @sokra
|
4
|
+
*/
|
5
|
+
|
6
|
+
"use strict";
|
7
|
+
|
8
|
+
const { create: createResolver } = require("enhanced-resolve");
|
9
|
+
const asyncLib = require("neo-async");
|
10
|
+
const AsyncQueue = require("./util/AsyncQueue");
|
11
|
+
const StackedCacheMap = require("./util/StackedCacheMap");
|
12
|
+
const createHash = require("./util/createHash");
|
13
|
+
const { join, dirname, relative, lstatReadlinkAbsolute } = require("./util/fs");
|
14
|
+
const makeSerializable = require("./util/makeSerializable");
|
15
|
+
const processAsyncTree = require("./util/processAsyncTree");
|
16
|
+
|
17
|
+
/** @typedef {import("./WebpackError")} WebpackError */
|
18
|
+
/** @typedef {import("./logging/Logger").Logger} Logger */
|
19
|
+
/** @typedef {typeof import("./util/Hash")} Hash */
|
20
|
+
/** @typedef {import("./util/fs").IStats} IStats */
|
21
|
+
/** @typedef {import("./util/fs").InputFileSystem} InputFileSystem */
|
22
|
+
|
23
|
+
const supportsEsm = +process.versions.modules >= 83;
|
24
|
+
|
25
|
+
let FS_ACCURACY = 2000;
|
26
|
+
|
27
|
+
const EMPTY_SET = new Set();
|
28
|
+
|
29
|
+
const RBDT_RESOLVE_CJS = 0;
|
30
|
+
const RBDT_RESOLVE_ESM = 1;
|
31
|
+
const RBDT_RESOLVE_DIRECTORY = 2;
|
32
|
+
const RBDT_RESOLVE_CJS_FILE = 3;
|
33
|
+
const RBDT_RESOLVE_CJS_FILE_AS_CHILD = 4;
|
34
|
+
const RBDT_RESOLVE_ESM_FILE = 5;
|
35
|
+
const RBDT_DIRECTORY = 6;
|
36
|
+
const RBDT_FILE = 7;
|
37
|
+
const RBDT_DIRECTORY_DEPENDENCIES = 8;
|
38
|
+
const RBDT_FILE_DEPENDENCIES = 9;
|
39
|
+
|
40
|
+
const INVALID = Symbol("invalid");
|
41
|
+
|
42
|
+
/**
|
43
|
+
* @typedef {Object} FileSystemInfoEntry
|
44
|
+
* @property {number} safeTime
|
45
|
+
* @property {number=} timestamp
|
46
|
+
*/
|
47
|
+
|
48
|
+
/**
|
49
|
+
* @typedef {Object} ResolvedContextFileSystemInfoEntry
|
50
|
+
* @property {number} safeTime
|
51
|
+
* @property {string=} timestampHash
|
52
|
+
*/
|
53
|
+
|
54
|
+
/**
|
55
|
+
* @typedef {Object} ContextFileSystemInfoEntry
|
56
|
+
* @property {number} safeTime
|
57
|
+
* @property {string=} timestampHash
|
58
|
+
* @property {ResolvedContextFileSystemInfoEntry=} resolved
|
59
|
+
* @property {Set<string>=} symlinks
|
60
|
+
*/
|
61
|
+
|
62
|
+
/**
|
63
|
+
* @typedef {Object} TimestampAndHash
|
64
|
+
* @property {number} safeTime
|
65
|
+
* @property {number=} timestamp
|
66
|
+
* @property {string} hash
|
67
|
+
*/
|
68
|
+
|
69
|
+
/**
|
70
|
+
* @typedef {Object} ResolvedContextTimestampAndHash
|
71
|
+
* @property {number} safeTime
|
72
|
+
* @property {string=} timestampHash
|
73
|
+
* @property {string} hash
|
74
|
+
*/
|
75
|
+
|
76
|
+
/**
|
77
|
+
* @typedef {Object} ContextTimestampAndHash
|
78
|
+
* @property {number} safeTime
|
79
|
+
* @property {string=} timestampHash
|
80
|
+
* @property {string} hash
|
81
|
+
* @property {ResolvedContextTimestampAndHash=} resolved
|
82
|
+
* @property {Set<string>=} symlinks
|
83
|
+
*/
|
84
|
+
|
85
|
+
/**
|
86
|
+
* @typedef {Object} ContextHash
|
87
|
+
* @property {string} hash
|
88
|
+
* @property {string=} resolved
|
89
|
+
* @property {Set<string>=} symlinks
|
90
|
+
*/
|
91
|
+
|
92
|
+
/**
|
93
|
+
* @typedef {Object} SnapshotOptimizationEntry
|
94
|
+
* @property {Snapshot} snapshot
|
95
|
+
* @property {number} shared
|
96
|
+
* @property {Set<string>} snapshotContent
|
97
|
+
* @property {Set<SnapshotOptimizationEntry>} children
|
98
|
+
*/
|
99
|
+
|
100
|
+
/**
|
101
|
+
* @typedef {Object} ResolveBuildDependenciesResult
|
102
|
+
* @property {Set<string>} files list of files
|
103
|
+
* @property {Set<string>} directories list of directories
|
104
|
+
* @property {Set<string>} missing list of missing entries
|
105
|
+
* @property {Map<string, string | false>} resolveResults stored resolve results
|
106
|
+
* @property {Object} resolveDependencies dependencies of the resolving
|
107
|
+
* @property {Set<string>} resolveDependencies.files list of files
|
108
|
+
* @property {Set<string>} resolveDependencies.directories list of directories
|
109
|
+
* @property {Set<string>} resolveDependencies.missing list of missing entries
|
110
|
+
*/
|
111
|
+
|
112
|
+
const DONE_ITERATOR_RESULT = new Set().keys().next();
|
113
|
+
|
114
|
+
// cspell:word tshs
|
115
|
+
// Tsh = Timestamp + Hash
|
116
|
+
// Tshs = Timestamp + Hash combinations
|
117
|
+
|
118
|
+
class SnapshotIterator {
|
119
|
+
constructor(next) {
|
120
|
+
this.next = next;
|
121
|
+
}
|
122
|
+
}
|
123
|
+
|
124
|
+
class SnapshotIterable {
|
125
|
+
constructor(snapshot, getMaps) {
|
126
|
+
this.snapshot = snapshot;
|
127
|
+
this.getMaps = getMaps;
|
128
|
+
}
|
129
|
+
|
130
|
+
[Symbol.iterator]() {
|
131
|
+
let state = 0;
|
132
|
+
/** @type {IterableIterator<string>} */
|
133
|
+
let it;
|
134
|
+
/** @type {(Snapshot) => (Map<string, any> | Set<string>)[]} */
|
135
|
+
let getMaps;
|
136
|
+
/** @type {(Map<string, any> | Set<string>)[]} */
|
137
|
+
let maps;
|
138
|
+
/** @type {Snapshot} */
|
139
|
+
let snapshot;
|
140
|
+
let queue;
|
141
|
+
return new SnapshotIterator(() => {
|
142
|
+
for (;;) {
|
143
|
+
switch (state) {
|
144
|
+
case 0:
|
145
|
+
snapshot = this.snapshot;
|
146
|
+
getMaps = this.getMaps;
|
147
|
+
maps = getMaps(snapshot);
|
148
|
+
state = 1;
|
149
|
+
/* falls through */
|
150
|
+
case 1:
|
151
|
+
if (maps.length > 0) {
|
152
|
+
const map = maps.pop();
|
153
|
+
if (map !== undefined) {
|
154
|
+
it = map.keys();
|
155
|
+
state = 2;
|
156
|
+
} else {
|
157
|
+
break;
|
158
|
+
}
|
159
|
+
} else {
|
160
|
+
state = 3;
|
161
|
+
break;
|
162
|
+
}
|
163
|
+
/* falls through */
|
164
|
+
case 2: {
|
165
|
+
const result = it.next();
|
166
|
+
if (!result.done) return result;
|
167
|
+
state = 1;
|
168
|
+
break;
|
169
|
+
}
|
170
|
+
case 3: {
|
171
|
+
const children = snapshot.children;
|
172
|
+
if (children !== undefined) {
|
173
|
+
if (children.size === 1) {
|
174
|
+
// shortcut for a single child
|
175
|
+
// avoids allocation of queue
|
176
|
+
for (const child of children) snapshot = child;
|
177
|
+
maps = getMaps(snapshot);
|
178
|
+
state = 1;
|
179
|
+
break;
|
180
|
+
}
|
181
|
+
if (queue === undefined) queue = [];
|
182
|
+
for (const child of children) {
|
183
|
+
queue.push(child);
|
184
|
+
}
|
185
|
+
}
|
186
|
+
if (queue !== undefined && queue.length > 0) {
|
187
|
+
snapshot = queue.pop();
|
188
|
+
maps = getMaps(snapshot);
|
189
|
+
state = 1;
|
190
|
+
break;
|
191
|
+
} else {
|
192
|
+
state = 4;
|
193
|
+
}
|
194
|
+
}
|
195
|
+
/* falls through */
|
196
|
+
case 4:
|
197
|
+
return DONE_ITERATOR_RESULT;
|
198
|
+
}
|
199
|
+
}
|
200
|
+
});
|
201
|
+
}
|
202
|
+
}
|
203
|
+
|
204
|
+
class Snapshot {
|
205
|
+
constructor() {
|
206
|
+
this._flags = 0;
|
207
|
+
/** @type {number | undefined} */
|
208
|
+
this.startTime = undefined;
|
209
|
+
/** @type {Map<string, FileSystemInfoEntry | null> | undefined} */
|
210
|
+
this.fileTimestamps = undefined;
|
211
|
+
/** @type {Map<string, string | null> | undefined} */
|
212
|
+
this.fileHashes = undefined;
|
213
|
+
/** @type {Map<string, TimestampAndHash | string | null> | undefined} */
|
214
|
+
this.fileTshs = undefined;
|
215
|
+
/** @type {Map<string, ResolvedContextFileSystemInfoEntry | null> | undefined} */
|
216
|
+
this.contextTimestamps = undefined;
|
217
|
+
/** @type {Map<string, string | null> | undefined} */
|
218
|
+
this.contextHashes = undefined;
|
219
|
+
/** @type {Map<string, ResolvedContextTimestampAndHash | null> | undefined} */
|
220
|
+
this.contextTshs = undefined;
|
221
|
+
/** @type {Map<string, boolean> | undefined} */
|
222
|
+
this.missingExistence = undefined;
|
223
|
+
/** @type {Map<string, string> | undefined} */
|
224
|
+
this.managedItemInfo = undefined;
|
225
|
+
/** @type {Set<string> | undefined} */
|
226
|
+
this.managedFiles = undefined;
|
227
|
+
/** @type {Set<string> | undefined} */
|
228
|
+
this.managedContexts = undefined;
|
229
|
+
/** @type {Set<string> | undefined} */
|
230
|
+
this.managedMissing = undefined;
|
231
|
+
/** @type {Set<Snapshot> | undefined} */
|
232
|
+
this.children = undefined;
|
233
|
+
}
|
234
|
+
|
235
|
+
hasStartTime() {
|
236
|
+
return (this._flags & 1) !== 0;
|
237
|
+
}
|
238
|
+
|
239
|
+
setStartTime(value) {
|
240
|
+
this._flags = this._flags | 1;
|
241
|
+
this.startTime = value;
|
242
|
+
}
|
243
|
+
|
244
|
+
setMergedStartTime(value, snapshot) {
|
245
|
+
if (value) {
|
246
|
+
if (snapshot.hasStartTime()) {
|
247
|
+
this.setStartTime(Math.min(value, snapshot.startTime));
|
248
|
+
} else {
|
249
|
+
this.setStartTime(value);
|
250
|
+
}
|
251
|
+
} else {
|
252
|
+
if (snapshot.hasStartTime()) this.setStartTime(snapshot.startTime);
|
253
|
+
}
|
254
|
+
}
|
255
|
+
|
256
|
+
hasFileTimestamps() {
|
257
|
+
return (this._flags & 2) !== 0;
|
258
|
+
}
|
259
|
+
|
260
|
+
setFileTimestamps(value) {
|
261
|
+
this._flags = this._flags | 2;
|
262
|
+
this.fileTimestamps = value;
|
263
|
+
}
|
264
|
+
|
265
|
+
hasFileHashes() {
|
266
|
+
return (this._flags & 4) !== 0;
|
267
|
+
}
|
268
|
+
|
269
|
+
setFileHashes(value) {
|
270
|
+
this._flags = this._flags | 4;
|
271
|
+
this.fileHashes = value;
|
272
|
+
}
|
273
|
+
|
274
|
+
hasFileTshs() {
|
275
|
+
return (this._flags & 8) !== 0;
|
276
|
+
}
|
277
|
+
|
278
|
+
setFileTshs(value) {
|
279
|
+
this._flags = this._flags | 8;
|
280
|
+
this.fileTshs = value;
|
281
|
+
}
|
282
|
+
|
283
|
+
hasContextTimestamps() {
|
284
|
+
return (this._flags & 0x10) !== 0;
|
285
|
+
}
|
286
|
+
|
287
|
+
setContextTimestamps(value) {
|
288
|
+
this._flags = this._flags | 0x10;
|
289
|
+
this.contextTimestamps = value;
|
290
|
+
}
|
291
|
+
|
292
|
+
hasContextHashes() {
|
293
|
+
return (this._flags & 0x20) !== 0;
|
294
|
+
}
|
295
|
+
|
296
|
+
setContextHashes(value) {
|
297
|
+
this._flags = this._flags | 0x20;
|
298
|
+
this.contextHashes = value;
|
299
|
+
}
|
300
|
+
|
301
|
+
hasContextTshs() {
|
302
|
+
return (this._flags & 0x40) !== 0;
|
303
|
+
}
|
304
|
+
|
305
|
+
setContextTshs(value) {
|
306
|
+
this._flags = this._flags | 0x40;
|
307
|
+
this.contextTshs = value;
|
308
|
+
}
|
309
|
+
|
310
|
+
hasMissingExistence() {
|
311
|
+
return (this._flags & 0x80) !== 0;
|
312
|
+
}
|
313
|
+
|
314
|
+
setMissingExistence(value) {
|
315
|
+
this._flags = this._flags | 0x80;
|
316
|
+
this.missingExistence = value;
|
317
|
+
}
|
318
|
+
|
319
|
+
hasManagedItemInfo() {
|
320
|
+
return (this._flags & 0x100) !== 0;
|
321
|
+
}
|
322
|
+
|
323
|
+
setManagedItemInfo(value) {
|
324
|
+
this._flags = this._flags | 0x100;
|
325
|
+
this.managedItemInfo = value;
|
326
|
+
}
|
327
|
+
|
328
|
+
hasManagedFiles() {
|
329
|
+
return (this._flags & 0x200) !== 0;
|
330
|
+
}
|
331
|
+
|
332
|
+
setManagedFiles(value) {
|
333
|
+
this._flags = this._flags | 0x200;
|
334
|
+
this.managedFiles = value;
|
335
|
+
}
|
336
|
+
|
337
|
+
hasManagedContexts() {
|
338
|
+
return (this._flags & 0x400) !== 0;
|
339
|
+
}
|
340
|
+
|
341
|
+
setManagedContexts(value) {
|
342
|
+
this._flags = this._flags | 0x400;
|
343
|
+
this.managedContexts = value;
|
344
|
+
}
|
345
|
+
|
346
|
+
hasManagedMissing() {
|
347
|
+
return (this._flags & 0x800) !== 0;
|
348
|
+
}
|
349
|
+
|
350
|
+
setManagedMissing(value) {
|
351
|
+
this._flags = this._flags | 0x800;
|
352
|
+
this.managedMissing = value;
|
353
|
+
}
|
354
|
+
|
355
|
+
hasChildren() {
|
356
|
+
return (this._flags & 0x1000) !== 0;
|
357
|
+
}
|
358
|
+
|
359
|
+
setChildren(value) {
|
360
|
+
this._flags = this._flags | 0x1000;
|
361
|
+
this.children = value;
|
362
|
+
}
|
363
|
+
|
364
|
+
addChild(child) {
|
365
|
+
if (!this.hasChildren()) {
|
366
|
+
this.setChildren(new Set());
|
367
|
+
}
|
368
|
+
this.children.add(child);
|
369
|
+
}
|
370
|
+
|
371
|
+
serialize({ write }) {
|
372
|
+
write(this._flags);
|
373
|
+
if (this.hasStartTime()) write(this.startTime);
|
374
|
+
if (this.hasFileTimestamps()) write(this.fileTimestamps);
|
375
|
+
if (this.hasFileHashes()) write(this.fileHashes);
|
376
|
+
if (this.hasFileTshs()) write(this.fileTshs);
|
377
|
+
if (this.hasContextTimestamps()) write(this.contextTimestamps);
|
378
|
+
if (this.hasContextHashes()) write(this.contextHashes);
|
379
|
+
if (this.hasContextTshs()) write(this.contextTshs);
|
380
|
+
if (this.hasMissingExistence()) write(this.missingExistence);
|
381
|
+
if (this.hasManagedItemInfo()) write(this.managedItemInfo);
|
382
|
+
if (this.hasManagedFiles()) write(this.managedFiles);
|
383
|
+
if (this.hasManagedContexts()) write(this.managedContexts);
|
384
|
+
if (this.hasManagedMissing()) write(this.managedMissing);
|
385
|
+
if (this.hasChildren()) write(this.children);
|
386
|
+
}
|
387
|
+
|
388
|
+
deserialize({ read }) {
|
389
|
+
this._flags = read();
|
390
|
+
if (this.hasStartTime()) this.startTime = read();
|
391
|
+
if (this.hasFileTimestamps()) this.fileTimestamps = read();
|
392
|
+
if (this.hasFileHashes()) this.fileHashes = read();
|
393
|
+
if (this.hasFileTshs()) this.fileTshs = read();
|
394
|
+
if (this.hasContextTimestamps()) this.contextTimestamps = read();
|
395
|
+
if (this.hasContextHashes()) this.contextHashes = read();
|
396
|
+
if (this.hasContextTshs()) this.contextTshs = read();
|
397
|
+
if (this.hasMissingExistence()) this.missingExistence = read();
|
398
|
+
if (this.hasManagedItemInfo()) this.managedItemInfo = read();
|
399
|
+
if (this.hasManagedFiles()) this.managedFiles = read();
|
400
|
+
if (this.hasManagedContexts()) this.managedContexts = read();
|
401
|
+
if (this.hasManagedMissing()) this.managedMissing = read();
|
402
|
+
if (this.hasChildren()) this.children = read();
|
403
|
+
}
|
404
|
+
|
405
|
+
/**
|
406
|
+
* @param {function(Snapshot): (ReadonlyMap<string, any> | ReadonlySet<string>)[]} getMaps first
|
407
|
+
* @returns {Iterable<string>} iterable
|
408
|
+
*/
|
409
|
+
_createIterable(getMaps) {
|
410
|
+
return new SnapshotIterable(this, getMaps);
|
411
|
+
}
|
412
|
+
|
413
|
+
/**
|
414
|
+
* @returns {Iterable<string>} iterable
|
415
|
+
*/
|
416
|
+
getFileIterable() {
|
417
|
+
return this._createIterable(s => [
|
418
|
+
s.fileTimestamps,
|
419
|
+
s.fileHashes,
|
420
|
+
s.fileTshs,
|
421
|
+
s.managedFiles
|
422
|
+
]);
|
423
|
+
}
|
424
|
+
|
425
|
+
/**
|
426
|
+
* @returns {Iterable<string>} iterable
|
427
|
+
*/
|
428
|
+
getContextIterable() {
|
429
|
+
return this._createIterable(s => [
|
430
|
+
s.contextTimestamps,
|
431
|
+
s.contextHashes,
|
432
|
+
s.contextTshs,
|
433
|
+
s.managedContexts
|
434
|
+
]);
|
435
|
+
}
|
436
|
+
|
437
|
+
/**
|
438
|
+
* @returns {Iterable<string>} iterable
|
439
|
+
*/
|
440
|
+
getMissingIterable() {
|
441
|
+
return this._createIterable(s => [s.missingExistence, s.managedMissing]);
|
442
|
+
}
|
443
|
+
}
|
444
|
+
|
445
|
+
makeSerializable(Snapshot, "webpack/lib/FileSystemInfo", "Snapshot");
|
446
|
+
|
447
|
+
const MIN_COMMON_SNAPSHOT_SIZE = 3;
|
448
|
+
|
449
|
+
/**
|
450
|
+
* @template T
|
451
|
+
*/
|
452
|
+
class SnapshotOptimization {
|
453
|
+
/**
|
454
|
+
* @param {function(Snapshot): boolean} has has value
|
455
|
+
* @param {function(Snapshot): Map<string, T> | Set<string>} get get value
|
456
|
+
* @param {function(Snapshot, Map<string, T> | Set<string>): void} set set value
|
457
|
+
* @param {boolean=} useStartTime use the start time of snapshots
|
458
|
+
* @param {boolean=} isSet value is an Set instead of a Map
|
459
|
+
*/
|
460
|
+
constructor(has, get, set, useStartTime = true, isSet = false) {
|
461
|
+
this._has = has;
|
462
|
+
this._get = get;
|
463
|
+
this._set = set;
|
464
|
+
this._useStartTime = useStartTime;
|
465
|
+
this._isSet = isSet;
|
466
|
+
/** @type {Map<string, SnapshotOptimizationEntry>} */
|
467
|
+
this._map = new Map();
|
468
|
+
this._statItemsShared = 0;
|
469
|
+
this._statItemsUnshared = 0;
|
470
|
+
this._statSharedSnapshots = 0;
|
471
|
+
this._statReusedSharedSnapshots = 0;
|
472
|
+
}
|
473
|
+
|
474
|
+
getStatisticMessage() {
|
475
|
+
const total = this._statItemsShared + this._statItemsUnshared;
|
476
|
+
if (total === 0) return undefined;
|
477
|
+
return `${
|
478
|
+
this._statItemsShared && Math.round((this._statItemsShared * 100) / total)
|
479
|
+
}% (${this._statItemsShared}/${total}) entries shared via ${
|
480
|
+
this._statSharedSnapshots
|
481
|
+
} shared snapshots (${
|
482
|
+
this._statReusedSharedSnapshots + this._statSharedSnapshots
|
483
|
+
} times referenced)`;
|
484
|
+
}
|
485
|
+
|
486
|
+
clear() {
|
487
|
+
this._map.clear();
|
488
|
+
this._statItemsShared = 0;
|
489
|
+
this._statItemsUnshared = 0;
|
490
|
+
this._statSharedSnapshots = 0;
|
491
|
+
this._statReusedSharedSnapshots = 0;
|
492
|
+
}
|
493
|
+
|
494
|
+
/**
|
495
|
+
* @param {Snapshot} newSnapshot snapshot
|
496
|
+
* @param {Set<string>} capturedFiles files to snapshot/share
|
497
|
+
* @returns {void}
|
498
|
+
*/
|
499
|
+
optimize(newSnapshot, capturedFiles) {
|
500
|
+
/**
|
501
|
+
* @param {SnapshotOptimizationEntry} entry optimization entry
|
502
|
+
* @returns {void}
|
503
|
+
*/
|
504
|
+
const increaseSharedAndStoreOptimizationEntry = entry => {
|
505
|
+
if (entry.children !== undefined) {
|
506
|
+
entry.children.forEach(increaseSharedAndStoreOptimizationEntry);
|
507
|
+
}
|
508
|
+
entry.shared++;
|
509
|
+
storeOptimizationEntry(entry);
|
510
|
+
};
|
511
|
+
/**
|
512
|
+
* @param {SnapshotOptimizationEntry} entry optimization entry
|
513
|
+
* @returns {void}
|
514
|
+
*/
|
515
|
+
const storeOptimizationEntry = entry => {
|
516
|
+
for (const path of entry.snapshotContent) {
|
517
|
+
const old = this._map.get(path);
|
518
|
+
if (old.shared < entry.shared) {
|
519
|
+
this._map.set(path, entry);
|
520
|
+
}
|
521
|
+
capturedFiles.delete(path);
|
522
|
+
}
|
523
|
+
};
|
524
|
+
|
525
|
+
/** @type {SnapshotOptimizationEntry} */
|
526
|
+
let newOptimizationEntry = undefined;
|
527
|
+
|
528
|
+
const capturedFilesSize = capturedFiles.size;
|
529
|
+
|
530
|
+
/** @type {Set<SnapshotOptimizationEntry> | undefined} */
|
531
|
+
const optimizationEntries = new Set();
|
532
|
+
|
533
|
+
for (const path of capturedFiles) {
|
534
|
+
const optimizationEntry = this._map.get(path);
|
535
|
+
if (optimizationEntry === undefined) {
|
536
|
+
if (newOptimizationEntry === undefined) {
|
537
|
+
newOptimizationEntry = {
|
538
|
+
snapshot: newSnapshot,
|
539
|
+
shared: 0,
|
540
|
+
snapshotContent: undefined,
|
541
|
+
children: undefined
|
542
|
+
};
|
543
|
+
}
|
544
|
+
this._map.set(path, newOptimizationEntry);
|
545
|
+
continue;
|
546
|
+
} else {
|
547
|
+
optimizationEntries.add(optimizationEntry);
|
548
|
+
}
|
549
|
+
}
|
550
|
+
|
551
|
+
optimizationEntries: for (const optimizationEntry of optimizationEntries) {
|
552
|
+
const snapshot = optimizationEntry.snapshot;
|
553
|
+
if (optimizationEntry.shared > 0) {
|
554
|
+
// It's a shared snapshot
|
555
|
+
// We can't change it, so we can only use it when all files match
|
556
|
+
// and startTime is compatible
|
557
|
+
if (
|
558
|
+
this._useStartTime &&
|
559
|
+
newSnapshot.startTime &&
|
560
|
+
(!snapshot.startTime || snapshot.startTime > newSnapshot.startTime)
|
561
|
+
) {
|
562
|
+
continue;
|
563
|
+
}
|
564
|
+
const nonSharedFiles = new Set();
|
565
|
+
const snapshotContent = optimizationEntry.snapshotContent;
|
566
|
+
const snapshotEntries = this._get(snapshot);
|
567
|
+
for (const path of snapshotContent) {
|
568
|
+
if (!capturedFiles.has(path)) {
|
569
|
+
if (!snapshotEntries.has(path)) {
|
570
|
+
// File is not shared and can't be removed from the snapshot
|
571
|
+
// because it's in a child of the snapshot
|
572
|
+
continue optimizationEntries;
|
573
|
+
}
|
574
|
+
nonSharedFiles.add(path);
|
575
|
+
continue;
|
576
|
+
}
|
577
|
+
}
|
578
|
+
if (nonSharedFiles.size === 0) {
|
579
|
+
// The complete snapshot is shared
|
580
|
+
// add it as child
|
581
|
+
newSnapshot.addChild(snapshot);
|
582
|
+
increaseSharedAndStoreOptimizationEntry(optimizationEntry);
|
583
|
+
this._statReusedSharedSnapshots++;
|
584
|
+
} else {
|
585
|
+
// Only a part of the snapshot is shared
|
586
|
+
const sharedCount = snapshotContent.size - nonSharedFiles.size;
|
587
|
+
if (sharedCount < MIN_COMMON_SNAPSHOT_SIZE) {
|
588
|
+
// Common part it too small
|
589
|
+
continue optimizationEntries;
|
590
|
+
}
|
591
|
+
// Extract common timestamps from both snapshots
|
592
|
+
let commonMap;
|
593
|
+
if (this._isSet) {
|
594
|
+
commonMap = new Set();
|
595
|
+
for (const path of /** @type {Set<string>} */ (snapshotEntries)) {
|
596
|
+
if (nonSharedFiles.has(path)) continue;
|
597
|
+
commonMap.add(path);
|
598
|
+
snapshotEntries.delete(path);
|
599
|
+
}
|
600
|
+
} else {
|
601
|
+
commonMap = new Map();
|
602
|
+
const map = /** @type {Map<string, T>} */ (snapshotEntries);
|
603
|
+
for (const [path, value] of map) {
|
604
|
+
if (nonSharedFiles.has(path)) continue;
|
605
|
+
commonMap.set(path, value);
|
606
|
+
snapshotEntries.delete(path);
|
607
|
+
}
|
608
|
+
}
|
609
|
+
// Create and attach snapshot
|
610
|
+
const commonSnapshot = new Snapshot();
|
611
|
+
if (this._useStartTime) {
|
612
|
+
commonSnapshot.setMergedStartTime(newSnapshot.startTime, snapshot);
|
613
|
+
}
|
614
|
+
this._set(commonSnapshot, commonMap);
|
615
|
+
newSnapshot.addChild(commonSnapshot);
|
616
|
+
snapshot.addChild(commonSnapshot);
|
617
|
+
// Create optimization entry
|
618
|
+
const newEntry = {
|
619
|
+
snapshot: commonSnapshot,
|
620
|
+
shared: optimizationEntry.shared + 1,
|
621
|
+
snapshotContent: new Set(commonMap.keys()),
|
622
|
+
children: undefined
|
623
|
+
};
|
624
|
+
if (optimizationEntry.children === undefined)
|
625
|
+
optimizationEntry.children = new Set();
|
626
|
+
optimizationEntry.children.add(newEntry);
|
627
|
+
storeOptimizationEntry(newEntry);
|
628
|
+
this._statSharedSnapshots++;
|
629
|
+
}
|
630
|
+
} else {
|
631
|
+
// It's a unshared snapshot
|
632
|
+
// We can extract a common shared snapshot
|
633
|
+
// with all common files
|
634
|
+
const snapshotEntries = this._get(snapshot);
|
635
|
+
if (snapshotEntries === undefined) {
|
636
|
+
// Incomplete snapshot, that can't be used
|
637
|
+
continue optimizationEntries;
|
638
|
+
}
|
639
|
+
let commonMap;
|
640
|
+
if (this._isSet) {
|
641
|
+
commonMap = new Set();
|
642
|
+
const set = /** @type {Set<string>} */ (snapshotEntries);
|
643
|
+
if (capturedFiles.size < set.size) {
|
644
|
+
for (const path of capturedFiles) {
|
645
|
+
if (set.has(path)) commonMap.add(path);
|
646
|
+
}
|
647
|
+
} else {
|
648
|
+
for (const path of set) {
|
649
|
+
if (capturedFiles.has(path)) commonMap.add(path);
|
650
|
+
}
|
651
|
+
}
|
652
|
+
} else {
|
653
|
+
commonMap = new Map();
|
654
|
+
const map = /** @type {Map<string, T>} */ (snapshotEntries);
|
655
|
+
for (const path of capturedFiles) {
|
656
|
+
const ts = map.get(path);
|
657
|
+
if (ts === undefined) continue;
|
658
|
+
commonMap.set(path, ts);
|
659
|
+
}
|
660
|
+
}
|
661
|
+
|
662
|
+
if (commonMap.size < MIN_COMMON_SNAPSHOT_SIZE) {
|
663
|
+
// Common part it too small
|
664
|
+
continue optimizationEntries;
|
665
|
+
}
|
666
|
+
// Create and attach snapshot
|
667
|
+
const commonSnapshot = new Snapshot();
|
668
|
+
if (this._useStartTime) {
|
669
|
+
commonSnapshot.setMergedStartTime(newSnapshot.startTime, snapshot);
|
670
|
+
}
|
671
|
+
this._set(commonSnapshot, commonMap);
|
672
|
+
newSnapshot.addChild(commonSnapshot);
|
673
|
+
snapshot.addChild(commonSnapshot);
|
674
|
+
// Remove files from snapshot
|
675
|
+
for (const path of commonMap.keys()) snapshotEntries.delete(path);
|
676
|
+
const sharedCount = commonMap.size;
|
677
|
+
this._statItemsUnshared -= sharedCount;
|
678
|
+
this._statItemsShared += sharedCount;
|
679
|
+
// Create optimization entry
|
680
|
+
storeOptimizationEntry({
|
681
|
+
snapshot: commonSnapshot,
|
682
|
+
shared: 2,
|
683
|
+
snapshotContent: new Set(commonMap.keys()),
|
684
|
+
children: undefined
|
685
|
+
});
|
686
|
+
this._statSharedSnapshots++;
|
687
|
+
}
|
688
|
+
}
|
689
|
+
const unshared = capturedFiles.size;
|
690
|
+
this._statItemsUnshared += unshared;
|
691
|
+
this._statItemsShared += capturedFilesSize - unshared;
|
692
|
+
}
|
693
|
+
}
|
694
|
+
|
695
|
+
const parseString = str => {
|
696
|
+
if (str[0] === "'") str = `"${str.slice(1, -1).replace(/"/g, '\\"')}"`;
|
697
|
+
return JSON.parse(str);
|
698
|
+
};
|
699
|
+
|
700
|
+
/* istanbul ignore next */
|
701
|
+
/**
|
702
|
+
* @param {number} mtime mtime
|
703
|
+
*/
|
704
|
+
const applyMtime = mtime => {
|
705
|
+
if (FS_ACCURACY > 1 && mtime % 2 !== 0) FS_ACCURACY = 1;
|
706
|
+
else if (FS_ACCURACY > 10 && mtime % 20 !== 0) FS_ACCURACY = 10;
|
707
|
+
else if (FS_ACCURACY > 100 && mtime % 200 !== 0) FS_ACCURACY = 100;
|
708
|
+
else if (FS_ACCURACY > 1000 && mtime % 2000 !== 0) FS_ACCURACY = 1000;
|
709
|
+
};
|
710
|
+
|
711
|
+
/**
|
712
|
+
* @template T
|
713
|
+
* @template K
|
714
|
+
* @param {Map<T, K>} a source map
|
715
|
+
* @param {Map<T, K>} b joining map
|
716
|
+
* @returns {Map<T, K>} joined map
|
717
|
+
*/
|
718
|
+
const mergeMaps = (a, b) => {
|
719
|
+
if (!b || b.size === 0) return a;
|
720
|
+
if (!a || a.size === 0) return b;
|
721
|
+
const map = new Map(a);
|
722
|
+
for (const [key, value] of b) {
|
723
|
+
map.set(key, value);
|
724
|
+
}
|
725
|
+
return map;
|
726
|
+
};
|
727
|
+
|
728
|
+
/**
|
729
|
+
* @template T
|
730
|
+
* @template K
|
731
|
+
* @param {Set<T, K>} a source map
|
732
|
+
* @param {Set<T, K>} b joining map
|
733
|
+
* @returns {Set<T, K>} joined map
|
734
|
+
*/
|
735
|
+
const mergeSets = (a, b) => {
|
736
|
+
if (!b || b.size === 0) return a;
|
737
|
+
if (!a || a.size === 0) return b;
|
738
|
+
const map = new Set(a);
|
739
|
+
for (const item of b) {
|
740
|
+
map.add(item);
|
741
|
+
}
|
742
|
+
return map;
|
743
|
+
};
|
744
|
+
|
745
|
+
/**
|
746
|
+
* Finding file or directory to manage
|
747
|
+
* @param {string} managedPath path that is managing by {@link FileSystemInfo}
|
748
|
+
* @param {string} path path to file or directory
|
749
|
+
* @returns {string|null} managed item
|
750
|
+
* @example
|
751
|
+
* getManagedItem(
|
752
|
+
* '/Users/user/my-project/node_modules/',
|
753
|
+
* '/Users/user/my-project/node_modules/package/index.js'
|
754
|
+
* ) === '/Users/user/my-project/node_modules/package'
|
755
|
+
* getManagedItem(
|
756
|
+
* '/Users/user/my-project/node_modules/',
|
757
|
+
* '/Users/user/my-project/node_modules/package1/node_modules/package2'
|
758
|
+
* ) === '/Users/user/my-project/node_modules/package1/node_modules/package2'
|
759
|
+
* getManagedItem(
|
760
|
+
* '/Users/user/my-project/node_modules/',
|
761
|
+
* '/Users/user/my-project/node_modules/.bin/script.js'
|
762
|
+
* ) === null // hidden files are disallowed as managed items
|
763
|
+
* getManagedItem(
|
764
|
+
* '/Users/user/my-project/node_modules/',
|
765
|
+
* '/Users/user/my-project/node_modules/package'
|
766
|
+
* ) === '/Users/user/my-project/node_modules/package'
|
767
|
+
*/
|
768
|
+
const getManagedItem = (managedPath, path) => {
|
769
|
+
let i = managedPath.length;
|
770
|
+
let slashes = 1;
|
771
|
+
let startingPosition = true;
|
772
|
+
loop: while (i < path.length) {
|
773
|
+
switch (path.charCodeAt(i)) {
|
774
|
+
case 47: // slash
|
775
|
+
case 92: // backslash
|
776
|
+
if (--slashes === 0) break loop;
|
777
|
+
startingPosition = true;
|
778
|
+
break;
|
779
|
+
case 46: // .
|
780
|
+
// hidden files are disallowed as managed items
|
781
|
+
// it's probably .yarn-integrity or .cache
|
782
|
+
if (startingPosition) return null;
|
783
|
+
break;
|
784
|
+
case 64: // @
|
785
|
+
if (!startingPosition) return null;
|
786
|
+
slashes++;
|
787
|
+
break;
|
788
|
+
default:
|
789
|
+
startingPosition = false;
|
790
|
+
break;
|
791
|
+
}
|
792
|
+
i++;
|
793
|
+
}
|
794
|
+
if (i === path.length) slashes--;
|
795
|
+
// return null when path is incomplete
|
796
|
+
if (slashes !== 0) return null;
|
797
|
+
// if (path.slice(i + 1, i + 13) === "node_modules")
|
798
|
+
if (
|
799
|
+
path.length >= i + 13 &&
|
800
|
+
path.charCodeAt(i + 1) === 110 &&
|
801
|
+
path.charCodeAt(i + 2) === 111 &&
|
802
|
+
path.charCodeAt(i + 3) === 100 &&
|
803
|
+
path.charCodeAt(i + 4) === 101 &&
|
804
|
+
path.charCodeAt(i + 5) === 95 &&
|
805
|
+
path.charCodeAt(i + 6) === 109 &&
|
806
|
+
path.charCodeAt(i + 7) === 111 &&
|
807
|
+
path.charCodeAt(i + 8) === 100 &&
|
808
|
+
path.charCodeAt(i + 9) === 117 &&
|
809
|
+
path.charCodeAt(i + 10) === 108 &&
|
810
|
+
path.charCodeAt(i + 11) === 101 &&
|
811
|
+
path.charCodeAt(i + 12) === 115
|
812
|
+
) {
|
813
|
+
// if this is the end of the path
|
814
|
+
if (path.length === i + 13) {
|
815
|
+
// return the node_modules directory
|
816
|
+
// it's special
|
817
|
+
return path;
|
818
|
+
}
|
819
|
+
const c = path.charCodeAt(i + 13);
|
820
|
+
// if next symbol is slash or backslash
|
821
|
+
if (c === 47 || c === 92) {
|
822
|
+
// Managed subpath
|
823
|
+
return getManagedItem(path.slice(0, i + 14), path);
|
824
|
+
}
|
825
|
+
}
|
826
|
+
return path.slice(0, i);
|
827
|
+
};
|
828
|
+
|
829
|
+
/**
|
830
|
+
* @template {ContextFileSystemInfoEntry | ContextTimestampAndHash} T
|
831
|
+
* @param {T} entry entry
|
832
|
+
* @returns {T["resolved"] | undefined} the resolved entry
|
833
|
+
*/
|
834
|
+
const getResolvedTimestamp = entry => {
|
835
|
+
if (entry === null) return null;
|
836
|
+
if (entry.resolved !== undefined) return entry.resolved;
|
837
|
+
return entry.symlinks === undefined ? entry : undefined;
|
838
|
+
};
|
839
|
+
|
840
|
+
/**
|
841
|
+
* @param {ContextHash} entry entry
|
842
|
+
* @returns {string | undefined} the resolved entry
|
843
|
+
*/
|
844
|
+
const getResolvedHash = entry => {
|
845
|
+
if (entry === null) return null;
|
846
|
+
if (entry.resolved !== undefined) return entry.resolved;
|
847
|
+
return entry.symlinks === undefined ? entry.hash : undefined;
|
848
|
+
};
|
849
|
+
|
850
|
+
const addAll = (source, target) => {
|
851
|
+
for (const key of source) target.add(key);
|
852
|
+
};
|
853
|
+
|
854
|
+
/**
|
855
|
+
* Used to access information about the filesystem in a cached way
|
856
|
+
*/
|
857
|
+
class FileSystemInfo {
|
858
|
+
/**
|
859
|
+
* @param {InputFileSystem} fs file system
|
860
|
+
* @param {Object} options options
|
861
|
+
* @param {Iterable<string | RegExp>=} options.managedPaths paths that are only managed by a package manager
|
862
|
+
* @param {Iterable<string | RegExp>=} options.immutablePaths paths that are immutable
|
863
|
+
* @param {Logger=} options.logger logger used to log invalid snapshots
|
864
|
+
* @param {string | Hash=} options.hashFunction the hash function to use
|
865
|
+
*/
|
866
|
+
constructor(
|
867
|
+
fs,
|
868
|
+
{
|
869
|
+
managedPaths = [],
|
870
|
+
immutablePaths = [],
|
871
|
+
logger,
|
872
|
+
hashFunction = "md4"
|
873
|
+
} = {}
|
874
|
+
) {
|
875
|
+
this.fs = fs;
|
876
|
+
this.logger = logger;
|
877
|
+
this._remainingLogs = logger ? 40 : 0;
|
878
|
+
this._loggedPaths = logger ? new Set() : undefined;
|
879
|
+
this._hashFunction = hashFunction;
|
880
|
+
/** @type {WeakMap<Snapshot, boolean | (function(WebpackError=, boolean=): void)[]>} */
|
881
|
+
this._snapshotCache = new WeakMap();
|
882
|
+
this._fileTimestampsOptimization = new SnapshotOptimization(
|
883
|
+
s => s.hasFileTimestamps(),
|
884
|
+
s => s.fileTimestamps,
|
885
|
+
(s, v) => s.setFileTimestamps(v)
|
886
|
+
);
|
887
|
+
this._fileHashesOptimization = new SnapshotOptimization(
|
888
|
+
s => s.hasFileHashes(),
|
889
|
+
s => s.fileHashes,
|
890
|
+
(s, v) => s.setFileHashes(v),
|
891
|
+
false
|
892
|
+
);
|
893
|
+
this._fileTshsOptimization = new SnapshotOptimization(
|
894
|
+
s => s.hasFileTshs(),
|
895
|
+
s => s.fileTshs,
|
896
|
+
(s, v) => s.setFileTshs(v)
|
897
|
+
);
|
898
|
+
this._contextTimestampsOptimization = new SnapshotOptimization(
|
899
|
+
s => s.hasContextTimestamps(),
|
900
|
+
s => s.contextTimestamps,
|
901
|
+
(s, v) => s.setContextTimestamps(v)
|
902
|
+
);
|
903
|
+
this._contextHashesOptimization = new SnapshotOptimization(
|
904
|
+
s => s.hasContextHashes(),
|
905
|
+
s => s.contextHashes,
|
906
|
+
(s, v) => s.setContextHashes(v),
|
907
|
+
false
|
908
|
+
);
|
909
|
+
this._contextTshsOptimization = new SnapshotOptimization(
|
910
|
+
s => s.hasContextTshs(),
|
911
|
+
s => s.contextTshs,
|
912
|
+
(s, v) => s.setContextTshs(v)
|
913
|
+
);
|
914
|
+
this._missingExistenceOptimization = new SnapshotOptimization(
|
915
|
+
s => s.hasMissingExistence(),
|
916
|
+
s => s.missingExistence,
|
917
|
+
(s, v) => s.setMissingExistence(v),
|
918
|
+
false
|
919
|
+
);
|
920
|
+
this._managedItemInfoOptimization = new SnapshotOptimization(
|
921
|
+
s => s.hasManagedItemInfo(),
|
922
|
+
s => s.managedItemInfo,
|
923
|
+
(s, v) => s.setManagedItemInfo(v),
|
924
|
+
false
|
925
|
+
);
|
926
|
+
this._managedFilesOptimization = new SnapshotOptimization(
|
927
|
+
s => s.hasManagedFiles(),
|
928
|
+
s => s.managedFiles,
|
929
|
+
(s, v) => s.setManagedFiles(v),
|
930
|
+
false,
|
931
|
+
true
|
932
|
+
);
|
933
|
+
this._managedContextsOptimization = new SnapshotOptimization(
|
934
|
+
s => s.hasManagedContexts(),
|
935
|
+
s => s.managedContexts,
|
936
|
+
(s, v) => s.setManagedContexts(v),
|
937
|
+
false,
|
938
|
+
true
|
939
|
+
);
|
940
|
+
this._managedMissingOptimization = new SnapshotOptimization(
|
941
|
+
s => s.hasManagedMissing(),
|
942
|
+
s => s.managedMissing,
|
943
|
+
(s, v) => s.setManagedMissing(v),
|
944
|
+
false,
|
945
|
+
true
|
946
|
+
);
|
947
|
+
/** @type {StackedCacheMap<string, FileSystemInfoEntry | "ignore" | null>} */
|
948
|
+
this._fileTimestamps = new StackedCacheMap();
|
949
|
+
/** @type {Map<string, string>} */
|
950
|
+
this._fileHashes = new Map();
|
951
|
+
/** @type {Map<string, TimestampAndHash | string>} */
|
952
|
+
this._fileTshs = new Map();
|
953
|
+
/** @type {StackedCacheMap<string, ContextFileSystemInfoEntry | "ignore" | null>} */
|
954
|
+
this._contextTimestamps = new StackedCacheMap();
|
955
|
+
/** @type {Map<string, ContextHash>} */
|
956
|
+
this._contextHashes = new Map();
|
957
|
+
/** @type {Map<string, ContextTimestampAndHash>} */
|
958
|
+
this._contextTshs = new Map();
|
959
|
+
/** @type {Map<string, string>} */
|
960
|
+
this._managedItems = new Map();
|
961
|
+
/** @type {AsyncQueue<string, string, FileSystemInfoEntry | null>} */
|
962
|
+
this.fileTimestampQueue = new AsyncQueue({
|
963
|
+
name: "file timestamp",
|
964
|
+
parallelism: 30,
|
965
|
+
processor: this._readFileTimestamp.bind(this)
|
966
|
+
});
|
967
|
+
/** @type {AsyncQueue<string, string, string | null>} */
|
968
|
+
this.fileHashQueue = new AsyncQueue({
|
969
|
+
name: "file hash",
|
970
|
+
parallelism: 10,
|
971
|
+
processor: this._readFileHash.bind(this)
|
972
|
+
});
|
973
|
+
/** @type {AsyncQueue<string, string, ContextFileSystemInfoEntry | null>} */
|
974
|
+
this.contextTimestampQueue = new AsyncQueue({
|
975
|
+
name: "context timestamp",
|
976
|
+
parallelism: 2,
|
977
|
+
processor: this._readContextTimestamp.bind(this)
|
978
|
+
});
|
979
|
+
/** @type {AsyncQueue<string, string, ContextHash | null>} */
|
980
|
+
this.contextHashQueue = new AsyncQueue({
|
981
|
+
name: "context hash",
|
982
|
+
parallelism: 2,
|
983
|
+
processor: this._readContextHash.bind(this)
|
984
|
+
});
|
985
|
+
/** @type {AsyncQueue<string, string, ContextTimestampAndHash | null>} */
|
986
|
+
this.contextTshQueue = new AsyncQueue({
|
987
|
+
name: "context hash and timestamp",
|
988
|
+
parallelism: 2,
|
989
|
+
processor: this._readContextTimestampAndHash.bind(this)
|
990
|
+
});
|
991
|
+
/** @type {AsyncQueue<string, string, string | null>} */
|
992
|
+
this.managedItemQueue = new AsyncQueue({
|
993
|
+
name: "managed item info",
|
994
|
+
parallelism: 10,
|
995
|
+
processor: this._getManagedItemInfo.bind(this)
|
996
|
+
});
|
997
|
+
/** @type {AsyncQueue<string, string, Set<string>>} */
|
998
|
+
this.managedItemDirectoryQueue = new AsyncQueue({
|
999
|
+
name: "managed item directory info",
|
1000
|
+
parallelism: 10,
|
1001
|
+
processor: this._getManagedItemDirectoryInfo.bind(this)
|
1002
|
+
});
|
1003
|
+
this.managedPaths = Array.from(managedPaths);
|
1004
|
+
this.managedPathsWithSlash = /** @type {string[]} */ (
|
1005
|
+
this.managedPaths.filter(p => typeof p === "string")
|
1006
|
+
).map(p => join(fs, p, "_").slice(0, -1));
|
1007
|
+
|
1008
|
+
this.managedPathsRegExps = /** @type {RegExp[]} */ (
|
1009
|
+
this.managedPaths.filter(p => typeof p !== "string")
|
1010
|
+
);
|
1011
|
+
this.immutablePaths = Array.from(immutablePaths);
|
1012
|
+
this.immutablePathsWithSlash = /** @type {string[]} */ (
|
1013
|
+
this.immutablePaths.filter(p => typeof p === "string")
|
1014
|
+
).map(p => join(fs, p, "_").slice(0, -1));
|
1015
|
+
this.immutablePathsRegExps = /** @type {RegExp[]} */ (
|
1016
|
+
this.immutablePaths.filter(p => typeof p !== "string")
|
1017
|
+
);
|
1018
|
+
|
1019
|
+
this._cachedDeprecatedFileTimestamps = undefined;
|
1020
|
+
this._cachedDeprecatedContextTimestamps = undefined;
|
1021
|
+
|
1022
|
+
this._warnAboutExperimentalEsmTracking = false;
|
1023
|
+
|
1024
|
+
this._statCreatedSnapshots = 0;
|
1025
|
+
this._statTestedSnapshotsCached = 0;
|
1026
|
+
this._statTestedSnapshotsNotCached = 0;
|
1027
|
+
this._statTestedChildrenCached = 0;
|
1028
|
+
this._statTestedChildrenNotCached = 0;
|
1029
|
+
this._statTestedEntries = 0;
|
1030
|
+
}
|
1031
|
+
|
1032
|
+
logStatistics() {
|
1033
|
+
const logWhenMessage = (header, message) => {
|
1034
|
+
if (message) {
|
1035
|
+
this.logger.log(`${header}: ${message}`);
|
1036
|
+
}
|
1037
|
+
};
|
1038
|
+
this.logger.log(`${this._statCreatedSnapshots} new snapshots created`);
|
1039
|
+
this.logger.log(
|
1040
|
+
`${
|
1041
|
+
this._statTestedSnapshotsNotCached &&
|
1042
|
+
Math.round(
|
1043
|
+
(this._statTestedSnapshotsNotCached * 100) /
|
1044
|
+
(this._statTestedSnapshotsCached +
|
1045
|
+
this._statTestedSnapshotsNotCached)
|
1046
|
+
)
|
1047
|
+
}% root snapshot uncached (${this._statTestedSnapshotsNotCached} / ${
|
1048
|
+
this._statTestedSnapshotsCached + this._statTestedSnapshotsNotCached
|
1049
|
+
})`
|
1050
|
+
);
|
1051
|
+
this.logger.log(
|
1052
|
+
`${
|
1053
|
+
this._statTestedChildrenNotCached &&
|
1054
|
+
Math.round(
|
1055
|
+
(this._statTestedChildrenNotCached * 100) /
|
1056
|
+
(this._statTestedChildrenCached + this._statTestedChildrenNotCached)
|
1057
|
+
)
|
1058
|
+
}% children snapshot uncached (${this._statTestedChildrenNotCached} / ${
|
1059
|
+
this._statTestedChildrenCached + this._statTestedChildrenNotCached
|
1060
|
+
})`
|
1061
|
+
);
|
1062
|
+
this.logger.log(`${this._statTestedEntries} entries tested`);
|
1063
|
+
this.logger.log(
|
1064
|
+
`File info in cache: ${this._fileTimestamps.size} timestamps ${this._fileHashes.size} hashes ${this._fileTshs.size} timestamp hash combinations`
|
1065
|
+
);
|
1066
|
+
logWhenMessage(
|
1067
|
+
`File timestamp snapshot optimization`,
|
1068
|
+
this._fileTimestampsOptimization.getStatisticMessage()
|
1069
|
+
);
|
1070
|
+
logWhenMessage(
|
1071
|
+
`File hash snapshot optimization`,
|
1072
|
+
this._fileHashesOptimization.getStatisticMessage()
|
1073
|
+
);
|
1074
|
+
logWhenMessage(
|
1075
|
+
`File timestamp hash combination snapshot optimization`,
|
1076
|
+
this._fileTshsOptimization.getStatisticMessage()
|
1077
|
+
);
|
1078
|
+
this.logger.log(
|
1079
|
+
`Directory info in cache: ${this._contextTimestamps.size} timestamps ${this._contextHashes.size} hashes ${this._contextTshs.size} timestamp hash combinations`
|
1080
|
+
);
|
1081
|
+
logWhenMessage(
|
1082
|
+
`Directory timestamp snapshot optimization`,
|
1083
|
+
this._contextTimestampsOptimization.getStatisticMessage()
|
1084
|
+
);
|
1085
|
+
logWhenMessage(
|
1086
|
+
`Directory hash snapshot optimization`,
|
1087
|
+
this._contextHashesOptimization.getStatisticMessage()
|
1088
|
+
);
|
1089
|
+
logWhenMessage(
|
1090
|
+
`Directory timestamp hash combination snapshot optimization`,
|
1091
|
+
this._contextTshsOptimization.getStatisticMessage()
|
1092
|
+
);
|
1093
|
+
logWhenMessage(
|
1094
|
+
`Missing items snapshot optimization`,
|
1095
|
+
this._missingExistenceOptimization.getStatisticMessage()
|
1096
|
+
);
|
1097
|
+
this.logger.log(
|
1098
|
+
`Managed items info in cache: ${this._managedItems.size} items`
|
1099
|
+
);
|
1100
|
+
logWhenMessage(
|
1101
|
+
`Managed items snapshot optimization`,
|
1102
|
+
this._managedItemInfoOptimization.getStatisticMessage()
|
1103
|
+
);
|
1104
|
+
logWhenMessage(
|
1105
|
+
`Managed files snapshot optimization`,
|
1106
|
+
this._managedFilesOptimization.getStatisticMessage()
|
1107
|
+
);
|
1108
|
+
logWhenMessage(
|
1109
|
+
`Managed contexts snapshot optimization`,
|
1110
|
+
this._managedContextsOptimization.getStatisticMessage()
|
1111
|
+
);
|
1112
|
+
logWhenMessage(
|
1113
|
+
`Managed missing snapshot optimization`,
|
1114
|
+
this._managedMissingOptimization.getStatisticMessage()
|
1115
|
+
);
|
1116
|
+
}
|
1117
|
+
|
1118
|
+
_log(path, reason, ...args) {
|
1119
|
+
const key = path + reason;
|
1120
|
+
if (this._loggedPaths.has(key)) return;
|
1121
|
+
this._loggedPaths.add(key);
|
1122
|
+
this.logger.debug(`${path} invalidated because ${reason}`, ...args);
|
1123
|
+
if (--this._remainingLogs === 0) {
|
1124
|
+
this.logger.debug(
|
1125
|
+
"Logging limit has been reached and no further logging will be emitted by FileSystemInfo"
|
1126
|
+
);
|
1127
|
+
}
|
1128
|
+
}
|
1129
|
+
|
1130
|
+
clear() {
|
1131
|
+
this._remainingLogs = this.logger ? 40 : 0;
|
1132
|
+
if (this._loggedPaths !== undefined) this._loggedPaths.clear();
|
1133
|
+
|
1134
|
+
this._snapshotCache = new WeakMap();
|
1135
|
+
this._fileTimestampsOptimization.clear();
|
1136
|
+
this._fileHashesOptimization.clear();
|
1137
|
+
this._fileTshsOptimization.clear();
|
1138
|
+
this._contextTimestampsOptimization.clear();
|
1139
|
+
this._contextHashesOptimization.clear();
|
1140
|
+
this._contextTshsOptimization.clear();
|
1141
|
+
this._missingExistenceOptimization.clear();
|
1142
|
+
this._managedItemInfoOptimization.clear();
|
1143
|
+
this._managedFilesOptimization.clear();
|
1144
|
+
this._managedContextsOptimization.clear();
|
1145
|
+
this._managedMissingOptimization.clear();
|
1146
|
+
this._fileTimestamps.clear();
|
1147
|
+
this._fileHashes.clear();
|
1148
|
+
this._fileTshs.clear();
|
1149
|
+
this._contextTimestamps.clear();
|
1150
|
+
this._contextHashes.clear();
|
1151
|
+
this._contextTshs.clear();
|
1152
|
+
this._managedItems.clear();
|
1153
|
+
this._managedItems.clear();
|
1154
|
+
|
1155
|
+
this._cachedDeprecatedFileTimestamps = undefined;
|
1156
|
+
this._cachedDeprecatedContextTimestamps = undefined;
|
1157
|
+
|
1158
|
+
this._statCreatedSnapshots = 0;
|
1159
|
+
this._statTestedSnapshotsCached = 0;
|
1160
|
+
this._statTestedSnapshotsNotCached = 0;
|
1161
|
+
this._statTestedChildrenCached = 0;
|
1162
|
+
this._statTestedChildrenNotCached = 0;
|
1163
|
+
this._statTestedEntries = 0;
|
1164
|
+
}
|
1165
|
+
|
1166
|
+
/**
|
1167
|
+
* @param {ReadonlyMap<string, FileSystemInfoEntry | "ignore" | null>} map timestamps
|
1168
|
+
* @param {boolean=} immutable if 'map' is immutable and FileSystemInfo can keep referencing it
|
1169
|
+
* @returns {void}
|
1170
|
+
*/
|
1171
|
+
addFileTimestamps(map, immutable) {
|
1172
|
+
this._fileTimestamps.addAll(map, immutable);
|
1173
|
+
this._cachedDeprecatedFileTimestamps = undefined;
|
1174
|
+
}
|
1175
|
+
|
1176
|
+
/**
|
1177
|
+
* @param {ReadonlyMap<string, FileSystemInfoEntry | "ignore" | null>} map timestamps
|
1178
|
+
* @param {boolean=} immutable if 'map' is immutable and FileSystemInfo can keep referencing it
|
1179
|
+
* @returns {void}
|
1180
|
+
*/
|
1181
|
+
addContextTimestamps(map, immutable) {
|
1182
|
+
this._contextTimestamps.addAll(map, immutable);
|
1183
|
+
this._cachedDeprecatedContextTimestamps = undefined;
|
1184
|
+
}
|
1185
|
+
|
1186
|
+
/**
|
1187
|
+
* @param {string} path file path
|
1188
|
+
* @param {function((WebpackError | null)=, (FileSystemInfoEntry | "ignore" | null)=): void} callback callback function
|
1189
|
+
* @returns {void}
|
1190
|
+
*/
|
1191
|
+
getFileTimestamp(path, callback) {
|
1192
|
+
const cache = this._fileTimestamps.get(path);
|
1193
|
+
if (cache !== undefined) return callback(null, cache);
|
1194
|
+
this.fileTimestampQueue.add(path, callback);
|
1195
|
+
}
|
1196
|
+
|
1197
|
+
/**
|
1198
|
+
* @param {string} path context path
|
1199
|
+
* @param {function((WebpackError | null)=, (ResolvedContextFileSystemInfoEntry | "ignore" | null)=): void} callback callback function
|
1200
|
+
* @returns {void}
|
1201
|
+
*/
|
1202
|
+
getContextTimestamp(path, callback) {
|
1203
|
+
const cache = this._contextTimestamps.get(path);
|
1204
|
+
if (cache !== undefined) {
|
1205
|
+
if (cache === "ignore") return callback(null, "ignore");
|
1206
|
+
const resolved = getResolvedTimestamp(cache);
|
1207
|
+
if (resolved !== undefined) return callback(null, resolved);
|
1208
|
+
return this._resolveContextTimestamp(cache, callback);
|
1209
|
+
}
|
1210
|
+
this.contextTimestampQueue.add(path, (err, entry) => {
|
1211
|
+
if (err) return callback(err);
|
1212
|
+
const resolved = getResolvedTimestamp(entry);
|
1213
|
+
if (resolved !== undefined) return callback(null, resolved);
|
1214
|
+
this._resolveContextTimestamp(entry, callback);
|
1215
|
+
});
|
1216
|
+
}
|
1217
|
+
|
1218
|
+
/**
|
1219
|
+
* @param {string} path context path
|
1220
|
+
* @param {function((WebpackError | null)=, (ContextFileSystemInfoEntry | "ignore" | null)=): void} callback callback function
|
1221
|
+
* @returns {void}
|
1222
|
+
*/
|
1223
|
+
_getUnresolvedContextTimestamp(path, callback) {
|
1224
|
+
const cache = this._contextTimestamps.get(path);
|
1225
|
+
if (cache !== undefined) return callback(null, cache);
|
1226
|
+
this.contextTimestampQueue.add(path, callback);
|
1227
|
+
}
|
1228
|
+
|
1229
|
+
/**
|
1230
|
+
* @param {string} path file path
|
1231
|
+
* @param {function((WebpackError | null)=, string=): void} callback callback function
|
1232
|
+
* @returns {void}
|
1233
|
+
*/
|
1234
|
+
getFileHash(path, callback) {
|
1235
|
+
const cache = this._fileHashes.get(path);
|
1236
|
+
if (cache !== undefined) return callback(null, cache);
|
1237
|
+
this.fileHashQueue.add(path, callback);
|
1238
|
+
}
|
1239
|
+
|
1240
|
+
/**
|
1241
|
+
* @param {string} path context path
|
1242
|
+
* @param {function((WebpackError | null)=, string=): void} callback callback function
|
1243
|
+
* @returns {void}
|
1244
|
+
*/
|
1245
|
+
getContextHash(path, callback) {
|
1246
|
+
const cache = this._contextHashes.get(path);
|
1247
|
+
if (cache !== undefined) {
|
1248
|
+
const resolved = getResolvedHash(cache);
|
1249
|
+
if (resolved !== undefined) return callback(null, resolved);
|
1250
|
+
return this._resolveContextHash(cache, callback);
|
1251
|
+
}
|
1252
|
+
this.contextHashQueue.add(path, (err, entry) => {
|
1253
|
+
if (err) return callback(err);
|
1254
|
+
const resolved = getResolvedHash(entry);
|
1255
|
+
if (resolved !== undefined) return callback(null, resolved);
|
1256
|
+
this._resolveContextHash(entry, callback);
|
1257
|
+
});
|
1258
|
+
}
|
1259
|
+
|
1260
|
+
/**
|
1261
|
+
* @param {string} path context path
|
1262
|
+
* @param {function((WebpackError | null)=, ContextHash=): void} callback callback function
|
1263
|
+
* @returns {void}
|
1264
|
+
*/
|
1265
|
+
_getUnresolvedContextHash(path, callback) {
|
1266
|
+
const cache = this._contextHashes.get(path);
|
1267
|
+
if (cache !== undefined) return callback(null, cache);
|
1268
|
+
this.contextHashQueue.add(path, callback);
|
1269
|
+
}
|
1270
|
+
|
1271
|
+
/**
|
1272
|
+
* @param {string} path context path
|
1273
|
+
* @param {function((WebpackError | null)=, ResolvedContextTimestampAndHash=): void} callback callback function
|
1274
|
+
* @returns {void}
|
1275
|
+
*/
|
1276
|
+
getContextTsh(path, callback) {
|
1277
|
+
const cache = this._contextTshs.get(path);
|
1278
|
+
if (cache !== undefined) {
|
1279
|
+
const resolved = getResolvedTimestamp(cache);
|
1280
|
+
if (resolved !== undefined) return callback(null, resolved);
|
1281
|
+
return this._resolveContextTsh(cache, callback);
|
1282
|
+
}
|
1283
|
+
this.contextTshQueue.add(path, (err, entry) => {
|
1284
|
+
if (err) return callback(err);
|
1285
|
+
const resolved = getResolvedTimestamp(entry);
|
1286
|
+
if (resolved !== undefined) return callback(null, resolved);
|
1287
|
+
this._resolveContextTsh(entry, callback);
|
1288
|
+
});
|
1289
|
+
}
|
1290
|
+
|
1291
|
+
/**
|
1292
|
+
* @param {string} path context path
|
1293
|
+
* @param {function((WebpackError | null)=, ContextTimestampAndHash=): void} callback callback function
|
1294
|
+
* @returns {void}
|
1295
|
+
*/
|
1296
|
+
_getUnresolvedContextTsh(path, callback) {
|
1297
|
+
const cache = this._contextTshs.get(path);
|
1298
|
+
if (cache !== undefined) return callback(null, cache);
|
1299
|
+
this.contextTshQueue.add(path, callback);
|
1300
|
+
}
|
1301
|
+
|
1302
|
+
_createBuildDependenciesResolvers() {
|
1303
|
+
const resolveContext = createResolver({
|
1304
|
+
resolveToContext: true,
|
1305
|
+
exportsFields: [],
|
1306
|
+
fileSystem: this.fs
|
1307
|
+
});
|
1308
|
+
const resolveCjs = createResolver({
|
1309
|
+
extensions: [".js", ".json", ".node"],
|
1310
|
+
conditionNames: ["require", "node"],
|
1311
|
+
exportsFields: ["exports"],
|
1312
|
+
fileSystem: this.fs
|
1313
|
+
});
|
1314
|
+
const resolveCjsAsChild = createResolver({
|
1315
|
+
extensions: [".js", ".json", ".node"],
|
1316
|
+
conditionNames: ["require", "node"],
|
1317
|
+
exportsFields: [],
|
1318
|
+
fileSystem: this.fs
|
1319
|
+
});
|
1320
|
+
const resolveEsm = createResolver({
|
1321
|
+
extensions: [".js", ".json", ".node"],
|
1322
|
+
fullySpecified: true,
|
1323
|
+
conditionNames: ["import", "node"],
|
1324
|
+
exportsFields: ["exports"],
|
1325
|
+
fileSystem: this.fs
|
1326
|
+
});
|
1327
|
+
return { resolveContext, resolveEsm, resolveCjs, resolveCjsAsChild };
|
1328
|
+
}
|
1329
|
+
|
1330
|
+
/**
|
1331
|
+
* @param {string} context context directory
|
1332
|
+
* @param {Iterable<string>} deps dependencies
|
1333
|
+
* @param {function((Error | null)=, ResolveBuildDependenciesResult=): void} callback callback function
|
1334
|
+
* @returns {void}
|
1335
|
+
*/
|
1336
|
+
resolveBuildDependencies(context, deps, callback) {
|
1337
|
+
const { resolveContext, resolveEsm, resolveCjs, resolveCjsAsChild } =
|
1338
|
+
this._createBuildDependenciesResolvers();
|
1339
|
+
|
1340
|
+
/** @type {Set<string>} */
|
1341
|
+
const files = new Set();
|
1342
|
+
/** @type {Set<string>} */
|
1343
|
+
const fileSymlinks = new Set();
|
1344
|
+
/** @type {Set<string>} */
|
1345
|
+
const directories = new Set();
|
1346
|
+
/** @type {Set<string>} */
|
1347
|
+
const directorySymlinks = new Set();
|
1348
|
+
/** @type {Set<string>} */
|
1349
|
+
const missing = new Set();
|
1350
|
+
/** @type {Set<string>} */
|
1351
|
+
const resolveFiles = new Set();
|
1352
|
+
/** @type {Set<string>} */
|
1353
|
+
const resolveDirectories = new Set();
|
1354
|
+
/** @type {Set<string>} */
|
1355
|
+
const resolveMissing = new Set();
|
1356
|
+
/** @type {Map<string, string | false>} */
|
1357
|
+
const resolveResults = new Map();
|
1358
|
+
const invalidResolveResults = new Set();
|
1359
|
+
const resolverContext = {
|
1360
|
+
fileDependencies: resolveFiles,
|
1361
|
+
contextDependencies: resolveDirectories,
|
1362
|
+
missingDependencies: resolveMissing
|
1363
|
+
};
|
1364
|
+
const expectedToString = expected => {
|
1365
|
+
return expected ? ` (expected ${expected})` : "";
|
1366
|
+
};
|
1367
|
+
const jobToString = job => {
|
1368
|
+
switch (job.type) {
|
1369
|
+
case RBDT_RESOLVE_CJS:
|
1370
|
+
return `resolve commonjs ${job.path}${expectedToString(
|
1371
|
+
job.expected
|
1372
|
+
)}`;
|
1373
|
+
case RBDT_RESOLVE_ESM:
|
1374
|
+
return `resolve esm ${job.path}${expectedToString(job.expected)}`;
|
1375
|
+
case RBDT_RESOLVE_DIRECTORY:
|
1376
|
+
return `resolve directory ${job.path}`;
|
1377
|
+
case RBDT_RESOLVE_CJS_FILE:
|
1378
|
+
return `resolve commonjs file ${job.path}${expectedToString(
|
1379
|
+
job.expected
|
1380
|
+
)}`;
|
1381
|
+
case RBDT_RESOLVE_ESM_FILE:
|
1382
|
+
return `resolve esm file ${job.path}${expectedToString(
|
1383
|
+
job.expected
|
1384
|
+
)}`;
|
1385
|
+
case RBDT_DIRECTORY:
|
1386
|
+
return `directory ${job.path}`;
|
1387
|
+
case RBDT_FILE:
|
1388
|
+
return `file ${job.path}`;
|
1389
|
+
case RBDT_DIRECTORY_DEPENDENCIES:
|
1390
|
+
return `directory dependencies ${job.path}`;
|
1391
|
+
case RBDT_FILE_DEPENDENCIES:
|
1392
|
+
return `file dependencies ${job.path}`;
|
1393
|
+
}
|
1394
|
+
return `unknown ${job.type} ${job.path}`;
|
1395
|
+
};
|
1396
|
+
const pathToString = job => {
|
1397
|
+
let result = ` at ${jobToString(job)}`;
|
1398
|
+
job = job.issuer;
|
1399
|
+
while (job !== undefined) {
|
1400
|
+
result += `\n at ${jobToString(job)}`;
|
1401
|
+
job = job.issuer;
|
1402
|
+
}
|
1403
|
+
return result;
|
1404
|
+
};
|
1405
|
+
processAsyncTree(
|
1406
|
+
Array.from(deps, dep => ({
|
1407
|
+
type: RBDT_RESOLVE_CJS,
|
1408
|
+
context,
|
1409
|
+
path: dep,
|
1410
|
+
expected: undefined,
|
1411
|
+
issuer: undefined
|
1412
|
+
})),
|
1413
|
+
20,
|
1414
|
+
(job, push, callback) => {
|
1415
|
+
const { type, context, path, expected } = job;
|
1416
|
+
const resolveDirectory = path => {
|
1417
|
+
const key = `d\n${context}\n${path}`;
|
1418
|
+
if (resolveResults.has(key)) {
|
1419
|
+
return callback();
|
1420
|
+
}
|
1421
|
+
resolveResults.set(key, undefined);
|
1422
|
+
resolveContext(context, path, resolverContext, (err, _, result) => {
|
1423
|
+
if (err) {
|
1424
|
+
if (expected === false) {
|
1425
|
+
resolveResults.set(key, false);
|
1426
|
+
return callback();
|
1427
|
+
}
|
1428
|
+
invalidResolveResults.add(key);
|
1429
|
+
err.message += `\nwhile resolving '${path}' in ${context} to a directory`;
|
1430
|
+
return callback(err);
|
1431
|
+
}
|
1432
|
+
const resultPath = result.path;
|
1433
|
+
resolveResults.set(key, resultPath);
|
1434
|
+
push({
|
1435
|
+
type: RBDT_DIRECTORY,
|
1436
|
+
context: undefined,
|
1437
|
+
path: resultPath,
|
1438
|
+
expected: undefined,
|
1439
|
+
issuer: job
|
1440
|
+
});
|
1441
|
+
callback();
|
1442
|
+
});
|
1443
|
+
};
|
1444
|
+
const resolveFile = (path, symbol, resolve) => {
|
1445
|
+
const key = `${symbol}\n${context}\n${path}`;
|
1446
|
+
if (resolveResults.has(key)) {
|
1447
|
+
return callback();
|
1448
|
+
}
|
1449
|
+
resolveResults.set(key, undefined);
|
1450
|
+
resolve(context, path, resolverContext, (err, _, result) => {
|
1451
|
+
if (typeof expected === "string") {
|
1452
|
+
if (!err && result && result.path === expected) {
|
1453
|
+
resolveResults.set(key, result.path);
|
1454
|
+
} else {
|
1455
|
+
invalidResolveResults.add(key);
|
1456
|
+
this.logger.warn(
|
1457
|
+
`Resolving '${path}' in ${context} for build dependencies doesn't lead to expected result '${expected}', but to '${
|
1458
|
+
err || (result && result.path)
|
1459
|
+
}' instead. Resolving dependencies are ignored for this path.\n${pathToString(
|
1460
|
+
job
|
1461
|
+
)}`
|
1462
|
+
);
|
1463
|
+
}
|
1464
|
+
} else {
|
1465
|
+
if (err) {
|
1466
|
+
if (expected === false) {
|
1467
|
+
resolveResults.set(key, false);
|
1468
|
+
return callback();
|
1469
|
+
}
|
1470
|
+
invalidResolveResults.add(key);
|
1471
|
+
err.message += `\nwhile resolving '${path}' in ${context} as file\n${pathToString(
|
1472
|
+
job
|
1473
|
+
)}`;
|
1474
|
+
return callback(err);
|
1475
|
+
}
|
1476
|
+
const resultPath = result.path;
|
1477
|
+
resolveResults.set(key, resultPath);
|
1478
|
+
push({
|
1479
|
+
type: RBDT_FILE,
|
1480
|
+
context: undefined,
|
1481
|
+
path: resultPath,
|
1482
|
+
expected: undefined,
|
1483
|
+
issuer: job
|
1484
|
+
});
|
1485
|
+
}
|
1486
|
+
callback();
|
1487
|
+
});
|
1488
|
+
};
|
1489
|
+
switch (type) {
|
1490
|
+
case RBDT_RESOLVE_CJS: {
|
1491
|
+
const isDirectory = /[\\/]$/.test(path);
|
1492
|
+
if (isDirectory) {
|
1493
|
+
resolveDirectory(path.slice(0, path.length - 1));
|
1494
|
+
} else {
|
1495
|
+
resolveFile(path, "f", resolveCjs);
|
1496
|
+
}
|
1497
|
+
break;
|
1498
|
+
}
|
1499
|
+
case RBDT_RESOLVE_ESM: {
|
1500
|
+
const isDirectory = /[\\/]$/.test(path);
|
1501
|
+
if (isDirectory) {
|
1502
|
+
resolveDirectory(path.slice(0, path.length - 1));
|
1503
|
+
} else {
|
1504
|
+
resolveFile(path);
|
1505
|
+
}
|
1506
|
+
break;
|
1507
|
+
}
|
1508
|
+
case RBDT_RESOLVE_DIRECTORY: {
|
1509
|
+
resolveDirectory(path);
|
1510
|
+
break;
|
1511
|
+
}
|
1512
|
+
case RBDT_RESOLVE_CJS_FILE: {
|
1513
|
+
resolveFile(path, "f", resolveCjs);
|
1514
|
+
break;
|
1515
|
+
}
|
1516
|
+
case RBDT_RESOLVE_CJS_FILE_AS_CHILD: {
|
1517
|
+
resolveFile(path, "c", resolveCjsAsChild);
|
1518
|
+
break;
|
1519
|
+
}
|
1520
|
+
case RBDT_RESOLVE_ESM_FILE: {
|
1521
|
+
resolveFile(path, "e", resolveEsm);
|
1522
|
+
break;
|
1523
|
+
}
|
1524
|
+
case RBDT_FILE: {
|
1525
|
+
if (files.has(path)) {
|
1526
|
+
callback();
|
1527
|
+
break;
|
1528
|
+
}
|
1529
|
+
files.add(path);
|
1530
|
+
this.fs.realpath(path, (err, _realPath) => {
|
1531
|
+
if (err) return callback(err);
|
1532
|
+
const realPath = /** @type {string} */ (_realPath);
|
1533
|
+
if (realPath !== path) {
|
1534
|
+
fileSymlinks.add(path);
|
1535
|
+
resolveFiles.add(path);
|
1536
|
+
if (files.has(realPath)) return callback();
|
1537
|
+
files.add(realPath);
|
1538
|
+
}
|
1539
|
+
push({
|
1540
|
+
type: RBDT_FILE_DEPENDENCIES,
|
1541
|
+
context: undefined,
|
1542
|
+
path: realPath,
|
1543
|
+
expected: undefined,
|
1544
|
+
issuer: job
|
1545
|
+
});
|
1546
|
+
callback();
|
1547
|
+
});
|
1548
|
+
break;
|
1549
|
+
}
|
1550
|
+
case RBDT_DIRECTORY: {
|
1551
|
+
if (directories.has(path)) {
|
1552
|
+
callback();
|
1553
|
+
break;
|
1554
|
+
}
|
1555
|
+
directories.add(path);
|
1556
|
+
this.fs.realpath(path, (err, _realPath) => {
|
1557
|
+
if (err) return callback(err);
|
1558
|
+
const realPath = /** @type {string} */ (_realPath);
|
1559
|
+
if (realPath !== path) {
|
1560
|
+
directorySymlinks.add(path);
|
1561
|
+
resolveFiles.add(path);
|
1562
|
+
if (directories.has(realPath)) return callback();
|
1563
|
+
directories.add(realPath);
|
1564
|
+
}
|
1565
|
+
push({
|
1566
|
+
type: RBDT_DIRECTORY_DEPENDENCIES,
|
1567
|
+
context: undefined,
|
1568
|
+
path: realPath,
|
1569
|
+
expected: undefined,
|
1570
|
+
issuer: job
|
1571
|
+
});
|
1572
|
+
callback();
|
1573
|
+
});
|
1574
|
+
break;
|
1575
|
+
}
|
1576
|
+
case RBDT_FILE_DEPENDENCIES: {
|
1577
|
+
// Check for known files without dependencies
|
1578
|
+
if (/\.json5?$|\.yarn-integrity$|yarn\.lock$|\.ya?ml/.test(path)) {
|
1579
|
+
process.nextTick(callback);
|
1580
|
+
break;
|
1581
|
+
}
|
1582
|
+
// Check commonjs cache for the module
|
1583
|
+
/** @type {NodeModule} */
|
1584
|
+
const module = require.cache[path];
|
1585
|
+
if (module && Array.isArray(module.children)) {
|
1586
|
+
children: for (const child of module.children) {
|
1587
|
+
let childPath = child.filename;
|
1588
|
+
if (childPath) {
|
1589
|
+
push({
|
1590
|
+
type: RBDT_FILE,
|
1591
|
+
context: undefined,
|
1592
|
+
path: childPath,
|
1593
|
+
expected: undefined,
|
1594
|
+
issuer: job
|
1595
|
+
});
|
1596
|
+
const context = dirname(this.fs, path);
|
1597
|
+
for (const modulePath of module.paths) {
|
1598
|
+
if (childPath.startsWith(modulePath)) {
|
1599
|
+
let subPath = childPath.slice(modulePath.length + 1);
|
1600
|
+
const packageMatch = /^(@[^\\/]+[\\/])[^\\/]+/.exec(
|
1601
|
+
subPath
|
1602
|
+
);
|
1603
|
+
if (packageMatch) {
|
1604
|
+
push({
|
1605
|
+
type: RBDT_FILE,
|
1606
|
+
context: undefined,
|
1607
|
+
path:
|
1608
|
+
modulePath +
|
1609
|
+
childPath[modulePath.length] +
|
1610
|
+
packageMatch[0] +
|
1611
|
+
childPath[modulePath.length] +
|
1612
|
+
"package.json",
|
1613
|
+
expected: false,
|
1614
|
+
issuer: job
|
1615
|
+
});
|
1616
|
+
}
|
1617
|
+
let request = subPath.replace(/\\/g, "/");
|
1618
|
+
if (request.endsWith(".js"))
|
1619
|
+
request = request.slice(0, -3);
|
1620
|
+
push({
|
1621
|
+
type: RBDT_RESOLVE_CJS_FILE_AS_CHILD,
|
1622
|
+
context,
|
1623
|
+
path: request,
|
1624
|
+
expected: child.filename,
|
1625
|
+
issuer: job
|
1626
|
+
});
|
1627
|
+
continue children;
|
1628
|
+
}
|
1629
|
+
}
|
1630
|
+
let request = relative(this.fs, context, childPath);
|
1631
|
+
if (request.endsWith(".js")) request = request.slice(0, -3);
|
1632
|
+
request = request.replace(/\\/g, "/");
|
1633
|
+
if (!request.startsWith("../")) request = `./${request}`;
|
1634
|
+
push({
|
1635
|
+
type: RBDT_RESOLVE_CJS_FILE,
|
1636
|
+
context,
|
1637
|
+
path: request,
|
1638
|
+
expected: child.filename,
|
1639
|
+
issuer: job
|
1640
|
+
});
|
1641
|
+
}
|
1642
|
+
}
|
1643
|
+
} else if (supportsEsm && /\.m?js$/.test(path)) {
|
1644
|
+
if (!this._warnAboutExperimentalEsmTracking) {
|
1645
|
+
this.logger.log(
|
1646
|
+
"Node.js doesn't offer a (nice) way to introspect the ESM dependency graph yet.\n" +
|
1647
|
+
"Until a full solution is available webpack uses an experimental ESM tracking based on parsing.\n" +
|
1648
|
+
"As best effort webpack parses the ESM files to guess dependencies. But this can lead to expensive and incorrect tracking."
|
1649
|
+
);
|
1650
|
+
this._warnAboutExperimentalEsmTracking = true;
|
1651
|
+
}
|
1652
|
+
const lexer = require("es-module-lexer");
|
1653
|
+
lexer.init.then(() => {
|
1654
|
+
this.fs.readFile(path, (err, content) => {
|
1655
|
+
if (err) return callback(err);
|
1656
|
+
try {
|
1657
|
+
const context = dirname(this.fs, path);
|
1658
|
+
const source = content.toString();
|
1659
|
+
const [imports] = lexer.parse(source);
|
1660
|
+
for (const imp of imports) {
|
1661
|
+
try {
|
1662
|
+
let dependency;
|
1663
|
+
if (imp.d === -1) {
|
1664
|
+
// import ... from "..."
|
1665
|
+
dependency = parseString(
|
1666
|
+
source.substring(imp.s - 1, imp.e + 1)
|
1667
|
+
);
|
1668
|
+
} else if (imp.d > -1) {
|
1669
|
+
// import()
|
1670
|
+
let expr = source.substring(imp.s, imp.e).trim();
|
1671
|
+
dependency = parseString(expr);
|
1672
|
+
} else {
|
1673
|
+
// e.g. import.meta
|
1674
|
+
continue;
|
1675
|
+
}
|
1676
|
+
push({
|
1677
|
+
type: RBDT_RESOLVE_ESM_FILE,
|
1678
|
+
context,
|
1679
|
+
path: dependency,
|
1680
|
+
expected: undefined,
|
1681
|
+
issuer: job
|
1682
|
+
});
|
1683
|
+
} catch (e) {
|
1684
|
+
this.logger.warn(
|
1685
|
+
`Parsing of ${path} for build dependencies failed at 'import(${source.substring(
|
1686
|
+
imp.s,
|
1687
|
+
imp.e
|
1688
|
+
)})'.\n` +
|
1689
|
+
"Build dependencies behind this expression are ignored and might cause incorrect cache invalidation."
|
1690
|
+
);
|
1691
|
+
this.logger.debug(pathToString(job));
|
1692
|
+
this.logger.debug(e.stack);
|
1693
|
+
}
|
1694
|
+
}
|
1695
|
+
} catch (e) {
|
1696
|
+
this.logger.warn(
|
1697
|
+
`Parsing of ${path} for build dependencies failed and all dependencies of this file are ignored, which might cause incorrect cache invalidation..`
|
1698
|
+
);
|
1699
|
+
this.logger.debug(pathToString(job));
|
1700
|
+
this.logger.debug(e.stack);
|
1701
|
+
}
|
1702
|
+
process.nextTick(callback);
|
1703
|
+
});
|
1704
|
+
}, callback);
|
1705
|
+
break;
|
1706
|
+
} else {
|
1707
|
+
this.logger.log(
|
1708
|
+
`Assuming ${path} has no dependencies as we were unable to assign it to any module system.`
|
1709
|
+
);
|
1710
|
+
this.logger.debug(pathToString(job));
|
1711
|
+
}
|
1712
|
+
process.nextTick(callback);
|
1713
|
+
break;
|
1714
|
+
}
|
1715
|
+
case RBDT_DIRECTORY_DEPENDENCIES: {
|
1716
|
+
const match =
|
1717
|
+
/(^.+[\\/]node_modules[\\/](?:@[^\\/]+[\\/])?[^\\/]+)/.exec(path);
|
1718
|
+
const packagePath = match ? match[1] : path;
|
1719
|
+
const packageJson = join(this.fs, packagePath, "package.json");
|
1720
|
+
this.fs.readFile(packageJson, (err, content) => {
|
1721
|
+
if (err) {
|
1722
|
+
if (err.code === "ENOENT") {
|
1723
|
+
resolveMissing.add(packageJson);
|
1724
|
+
const parent = dirname(this.fs, packagePath);
|
1725
|
+
if (parent !== packagePath) {
|
1726
|
+
push({
|
1727
|
+
type: RBDT_DIRECTORY_DEPENDENCIES,
|
1728
|
+
context: undefined,
|
1729
|
+
path: parent,
|
1730
|
+
expected: undefined,
|
1731
|
+
issuer: job
|
1732
|
+
});
|
1733
|
+
}
|
1734
|
+
callback();
|
1735
|
+
return;
|
1736
|
+
}
|
1737
|
+
return callback(err);
|
1738
|
+
}
|
1739
|
+
resolveFiles.add(packageJson);
|
1740
|
+
let packageData;
|
1741
|
+
try {
|
1742
|
+
packageData = JSON.parse(content.toString("utf-8"));
|
1743
|
+
} catch (e) {
|
1744
|
+
return callback(e);
|
1745
|
+
}
|
1746
|
+
const depsObject = packageData.dependencies;
|
1747
|
+
const optionalDepsObject = packageData.optionalDependencies;
|
1748
|
+
const allDeps = new Set();
|
1749
|
+
const optionalDeps = new Set();
|
1750
|
+
if (typeof depsObject === "object" && depsObject) {
|
1751
|
+
for (const dep of Object.keys(depsObject)) {
|
1752
|
+
allDeps.add(dep);
|
1753
|
+
}
|
1754
|
+
}
|
1755
|
+
if (
|
1756
|
+
typeof optionalDepsObject === "object" &&
|
1757
|
+
optionalDepsObject
|
1758
|
+
) {
|
1759
|
+
for (const dep of Object.keys(optionalDepsObject)) {
|
1760
|
+
allDeps.add(dep);
|
1761
|
+
optionalDeps.add(dep);
|
1762
|
+
}
|
1763
|
+
}
|
1764
|
+
for (const dep of allDeps) {
|
1765
|
+
push({
|
1766
|
+
type: RBDT_RESOLVE_DIRECTORY,
|
1767
|
+
context: packagePath,
|
1768
|
+
path: dep,
|
1769
|
+
expected: !optionalDeps.has(dep),
|
1770
|
+
issuer: job
|
1771
|
+
});
|
1772
|
+
}
|
1773
|
+
callback();
|
1774
|
+
});
|
1775
|
+
break;
|
1776
|
+
}
|
1777
|
+
}
|
1778
|
+
},
|
1779
|
+
err => {
|
1780
|
+
if (err) return callback(err);
|
1781
|
+
for (const l of fileSymlinks) files.delete(l);
|
1782
|
+
for (const l of directorySymlinks) directories.delete(l);
|
1783
|
+
for (const k of invalidResolveResults) resolveResults.delete(k);
|
1784
|
+
callback(null, {
|
1785
|
+
files,
|
1786
|
+
directories,
|
1787
|
+
missing,
|
1788
|
+
resolveResults,
|
1789
|
+
resolveDependencies: {
|
1790
|
+
files: resolveFiles,
|
1791
|
+
directories: resolveDirectories,
|
1792
|
+
missing: resolveMissing
|
1793
|
+
}
|
1794
|
+
});
|
1795
|
+
}
|
1796
|
+
);
|
1797
|
+
}
|
1798
|
+
|
1799
|
+
/**
|
1800
|
+
* @param {Map<string, string | false>} resolveResults results from resolving
|
1801
|
+
* @param {function((Error | null)=, boolean=): void} callback callback with true when resolveResults resolve the same way
|
1802
|
+
* @returns {void}
|
1803
|
+
*/
|
1804
|
+
checkResolveResultsValid(resolveResults, callback) {
|
1805
|
+
const { resolveCjs, resolveCjsAsChild, resolveEsm, resolveContext } =
|
1806
|
+
this._createBuildDependenciesResolvers();
|
1807
|
+
asyncLib.eachLimit(
|
1808
|
+
resolveResults,
|
1809
|
+
20,
|
1810
|
+
([key, expectedResult], callback) => {
|
1811
|
+
const [type, context, path] = key.split("\n");
|
1812
|
+
switch (type) {
|
1813
|
+
case "d":
|
1814
|
+
resolveContext(context, path, {}, (err, _, result) => {
|
1815
|
+
if (expectedResult === false)
|
1816
|
+
return callback(err ? undefined : INVALID);
|
1817
|
+
if (err) return callback(err);
|
1818
|
+
const resultPath = result.path;
|
1819
|
+
if (resultPath !== expectedResult) return callback(INVALID);
|
1820
|
+
callback();
|
1821
|
+
});
|
1822
|
+
break;
|
1823
|
+
case "f":
|
1824
|
+
resolveCjs(context, path, {}, (err, _, result) => {
|
1825
|
+
if (expectedResult === false)
|
1826
|
+
return callback(err ? undefined : INVALID);
|
1827
|
+
if (err) return callback(err);
|
1828
|
+
const resultPath = result.path;
|
1829
|
+
if (resultPath !== expectedResult) return callback(INVALID);
|
1830
|
+
callback();
|
1831
|
+
});
|
1832
|
+
break;
|
1833
|
+
case "c":
|
1834
|
+
resolveCjsAsChild(context, path, {}, (err, _, result) => {
|
1835
|
+
if (expectedResult === false)
|
1836
|
+
return callback(err ? undefined : INVALID);
|
1837
|
+
if (err) return callback(err);
|
1838
|
+
const resultPath = result.path;
|
1839
|
+
if (resultPath !== expectedResult) return callback(INVALID);
|
1840
|
+
callback();
|
1841
|
+
});
|
1842
|
+
break;
|
1843
|
+
case "e":
|
1844
|
+
resolveEsm(context, path, {}, (err, _, result) => {
|
1845
|
+
if (expectedResult === false)
|
1846
|
+
return callback(err ? undefined : INVALID);
|
1847
|
+
if (err) return callback(err);
|
1848
|
+
const resultPath = result.path;
|
1849
|
+
if (resultPath !== expectedResult) return callback(INVALID);
|
1850
|
+
callback();
|
1851
|
+
});
|
1852
|
+
break;
|
1853
|
+
default:
|
1854
|
+
callback(new Error("Unexpected type in resolve result key"));
|
1855
|
+
break;
|
1856
|
+
}
|
1857
|
+
},
|
1858
|
+
/**
|
1859
|
+
* @param {Error | typeof INVALID=} err error or invalid flag
|
1860
|
+
* @returns {void}
|
1861
|
+
*/
|
1862
|
+
err => {
|
1863
|
+
if (err === INVALID) {
|
1864
|
+
return callback(null, false);
|
1865
|
+
}
|
1866
|
+
if (err) {
|
1867
|
+
return callback(err);
|
1868
|
+
}
|
1869
|
+
return callback(null, true);
|
1870
|
+
}
|
1871
|
+
);
|
1872
|
+
}
|
1873
|
+
|
1874
|
+
/**
|
1875
|
+
*
|
1876
|
+
* @param {number} startTime when processing the files has started
|
1877
|
+
* @param {Iterable<string>} files all files
|
1878
|
+
* @param {Iterable<string>} directories all directories
|
1879
|
+
* @param {Iterable<string>} missing all missing files or directories
|
1880
|
+
* @param {Object} options options object (for future extensions)
|
1881
|
+
* @param {boolean=} options.hash should use hash to snapshot
|
1882
|
+
* @param {boolean=} options.timestamp should use timestamp to snapshot
|
1883
|
+
* @param {function((WebpackError | null)=, (Snapshot | null)=): void} callback callback function
|
1884
|
+
* @returns {void}
|
1885
|
+
*/
|
1886
|
+
createSnapshot(startTime, files, directories, missing, options, callback) {
|
1887
|
+
/** @type {Map<string, FileSystemInfoEntry | null>} */
|
1888
|
+
const fileTimestamps = new Map();
|
1889
|
+
/** @type {Map<string, string | null>} */
|
1890
|
+
const fileHashes = new Map();
|
1891
|
+
/** @type {Map<string, TimestampAndHash | string | null>} */
|
1892
|
+
const fileTshs = new Map();
|
1893
|
+
/** @type {Map<string, FileSystemInfoEntry | null>} */
|
1894
|
+
const contextTimestamps = new Map();
|
1895
|
+
/** @type {Map<string, string | null>} */
|
1896
|
+
const contextHashes = new Map();
|
1897
|
+
/** @type {Map<string, ResolvedContextTimestampAndHash | null>} */
|
1898
|
+
const contextTshs = new Map();
|
1899
|
+
/** @type {Map<string, boolean>} */
|
1900
|
+
const missingExistence = new Map();
|
1901
|
+
/** @type {Map<string, string>} */
|
1902
|
+
const managedItemInfo = new Map();
|
1903
|
+
/** @type {Set<string>} */
|
1904
|
+
const managedFiles = new Set();
|
1905
|
+
/** @type {Set<string>} */
|
1906
|
+
const managedContexts = new Set();
|
1907
|
+
/** @type {Set<string>} */
|
1908
|
+
const managedMissing = new Set();
|
1909
|
+
/** @type {Set<Snapshot>} */
|
1910
|
+
const children = new Set();
|
1911
|
+
|
1912
|
+
const snapshot = new Snapshot();
|
1913
|
+
if (startTime) snapshot.setStartTime(startTime);
|
1914
|
+
|
1915
|
+
/** @type {Set<string>} */
|
1916
|
+
const managedItems = new Set();
|
1917
|
+
|
1918
|
+
/** 1 = timestamp, 2 = hash, 3 = timestamp + hash */
|
1919
|
+
const mode = options && options.hash ? (options.timestamp ? 3 : 2) : 1;
|
1920
|
+
|
1921
|
+
let jobs = 1;
|
1922
|
+
const jobDone = () => {
|
1923
|
+
if (--jobs === 0) {
|
1924
|
+
if (fileTimestamps.size !== 0) {
|
1925
|
+
snapshot.setFileTimestamps(fileTimestamps);
|
1926
|
+
}
|
1927
|
+
if (fileHashes.size !== 0) {
|
1928
|
+
snapshot.setFileHashes(fileHashes);
|
1929
|
+
}
|
1930
|
+
if (fileTshs.size !== 0) {
|
1931
|
+
snapshot.setFileTshs(fileTshs);
|
1932
|
+
}
|
1933
|
+
if (contextTimestamps.size !== 0) {
|
1934
|
+
snapshot.setContextTimestamps(contextTimestamps);
|
1935
|
+
}
|
1936
|
+
if (contextHashes.size !== 0) {
|
1937
|
+
snapshot.setContextHashes(contextHashes);
|
1938
|
+
}
|
1939
|
+
if (contextTshs.size !== 0) {
|
1940
|
+
snapshot.setContextTshs(contextTshs);
|
1941
|
+
}
|
1942
|
+
if (missingExistence.size !== 0) {
|
1943
|
+
snapshot.setMissingExistence(missingExistence);
|
1944
|
+
}
|
1945
|
+
if (managedItemInfo.size !== 0) {
|
1946
|
+
snapshot.setManagedItemInfo(managedItemInfo);
|
1947
|
+
}
|
1948
|
+
this._managedFilesOptimization.optimize(snapshot, managedFiles);
|
1949
|
+
if (managedFiles.size !== 0) {
|
1950
|
+
snapshot.setManagedFiles(managedFiles);
|
1951
|
+
}
|
1952
|
+
this._managedContextsOptimization.optimize(snapshot, managedContexts);
|
1953
|
+
if (managedContexts.size !== 0) {
|
1954
|
+
snapshot.setManagedContexts(managedContexts);
|
1955
|
+
}
|
1956
|
+
this._managedMissingOptimization.optimize(snapshot, managedMissing);
|
1957
|
+
if (managedMissing.size !== 0) {
|
1958
|
+
snapshot.setManagedMissing(managedMissing);
|
1959
|
+
}
|
1960
|
+
if (children.size !== 0) {
|
1961
|
+
snapshot.setChildren(children);
|
1962
|
+
}
|
1963
|
+
this._snapshotCache.set(snapshot, true);
|
1964
|
+
this._statCreatedSnapshots++;
|
1965
|
+
|
1966
|
+
callback(null, snapshot);
|
1967
|
+
}
|
1968
|
+
};
|
1969
|
+
const jobError = () => {
|
1970
|
+
if (jobs > 0) {
|
1971
|
+
// large negative number instead of NaN or something else to keep jobs to stay a SMI (v8)
|
1972
|
+
jobs = -100000000;
|
1973
|
+
callback(null, null);
|
1974
|
+
}
|
1975
|
+
};
|
1976
|
+
const checkManaged = (path, managedSet) => {
|
1977
|
+
for (const immutablePath of this.immutablePathsRegExps) {
|
1978
|
+
if (immutablePath.test(path)) {
|
1979
|
+
managedSet.add(path);
|
1980
|
+
return true;
|
1981
|
+
}
|
1982
|
+
}
|
1983
|
+
for (const immutablePath of this.immutablePathsWithSlash) {
|
1984
|
+
if (path.startsWith(immutablePath)) {
|
1985
|
+
managedSet.add(path);
|
1986
|
+
return true;
|
1987
|
+
}
|
1988
|
+
}
|
1989
|
+
for (const managedPath of this.managedPathsRegExps) {
|
1990
|
+
const match = managedPath.exec(path);
|
1991
|
+
if (match) {
|
1992
|
+
const managedItem = getManagedItem(match[1], path);
|
1993
|
+
if (managedItem) {
|
1994
|
+
managedItems.add(managedItem);
|
1995
|
+
managedSet.add(path);
|
1996
|
+
return true;
|
1997
|
+
}
|
1998
|
+
}
|
1999
|
+
}
|
2000
|
+
for (const managedPath of this.managedPathsWithSlash) {
|
2001
|
+
if (path.startsWith(managedPath)) {
|
2002
|
+
const managedItem = getManagedItem(managedPath, path);
|
2003
|
+
if (managedItem) {
|
2004
|
+
managedItems.add(managedItem);
|
2005
|
+
managedSet.add(path);
|
2006
|
+
return true;
|
2007
|
+
}
|
2008
|
+
}
|
2009
|
+
}
|
2010
|
+
return false;
|
2011
|
+
};
|
2012
|
+
const captureNonManaged = (items, managedSet) => {
|
2013
|
+
const capturedItems = new Set();
|
2014
|
+
for (const path of items) {
|
2015
|
+
if (!checkManaged(path, managedSet)) capturedItems.add(path);
|
2016
|
+
}
|
2017
|
+
return capturedItems;
|
2018
|
+
};
|
2019
|
+
const processCapturedFiles = capturedFiles => {
|
2020
|
+
switch (mode) {
|
2021
|
+
case 3:
|
2022
|
+
this._fileTshsOptimization.optimize(snapshot, capturedFiles);
|
2023
|
+
for (const path of capturedFiles) {
|
2024
|
+
const cache = this._fileTshs.get(path);
|
2025
|
+
if (cache !== undefined) {
|
2026
|
+
fileTshs.set(path, cache);
|
2027
|
+
} else {
|
2028
|
+
jobs++;
|
2029
|
+
this._getFileTimestampAndHash(path, (err, entry) => {
|
2030
|
+
if (err) {
|
2031
|
+
if (this.logger) {
|
2032
|
+
this.logger.debug(
|
2033
|
+
`Error snapshotting file timestamp hash combination of ${path}: ${err.stack}`
|
2034
|
+
);
|
2035
|
+
}
|
2036
|
+
jobError();
|
2037
|
+
} else {
|
2038
|
+
fileTshs.set(path, entry);
|
2039
|
+
jobDone();
|
2040
|
+
}
|
2041
|
+
});
|
2042
|
+
}
|
2043
|
+
}
|
2044
|
+
break;
|
2045
|
+
case 2:
|
2046
|
+
this._fileHashesOptimization.optimize(snapshot, capturedFiles);
|
2047
|
+
for (const path of capturedFiles) {
|
2048
|
+
const cache = this._fileHashes.get(path);
|
2049
|
+
if (cache !== undefined) {
|
2050
|
+
fileHashes.set(path, cache);
|
2051
|
+
} else {
|
2052
|
+
jobs++;
|
2053
|
+
this.fileHashQueue.add(path, (err, entry) => {
|
2054
|
+
if (err) {
|
2055
|
+
if (this.logger) {
|
2056
|
+
this.logger.debug(
|
2057
|
+
`Error snapshotting file hash of ${path}: ${err.stack}`
|
2058
|
+
);
|
2059
|
+
}
|
2060
|
+
jobError();
|
2061
|
+
} else {
|
2062
|
+
fileHashes.set(path, entry);
|
2063
|
+
jobDone();
|
2064
|
+
}
|
2065
|
+
});
|
2066
|
+
}
|
2067
|
+
}
|
2068
|
+
break;
|
2069
|
+
case 1:
|
2070
|
+
this._fileTimestampsOptimization.optimize(snapshot, capturedFiles);
|
2071
|
+
for (const path of capturedFiles) {
|
2072
|
+
const cache = this._fileTimestamps.get(path);
|
2073
|
+
if (cache !== undefined) {
|
2074
|
+
if (cache !== "ignore") {
|
2075
|
+
fileTimestamps.set(path, cache);
|
2076
|
+
}
|
2077
|
+
} else {
|
2078
|
+
jobs++;
|
2079
|
+
this.fileTimestampQueue.add(path, (err, entry) => {
|
2080
|
+
if (err) {
|
2081
|
+
if (this.logger) {
|
2082
|
+
this.logger.debug(
|
2083
|
+
`Error snapshotting file timestamp of ${path}: ${err.stack}`
|
2084
|
+
);
|
2085
|
+
}
|
2086
|
+
jobError();
|
2087
|
+
} else {
|
2088
|
+
fileTimestamps.set(path, entry);
|
2089
|
+
jobDone();
|
2090
|
+
}
|
2091
|
+
});
|
2092
|
+
}
|
2093
|
+
}
|
2094
|
+
break;
|
2095
|
+
}
|
2096
|
+
};
|
2097
|
+
if (files) {
|
2098
|
+
processCapturedFiles(captureNonManaged(files, managedFiles));
|
2099
|
+
}
|
2100
|
+
const processCapturedDirectories = capturedDirectories => {
|
2101
|
+
switch (mode) {
|
2102
|
+
case 3:
|
2103
|
+
this._contextTshsOptimization.optimize(snapshot, capturedDirectories);
|
2104
|
+
for (const path of capturedDirectories) {
|
2105
|
+
const cache = this._contextTshs.get(path);
|
2106
|
+
/** @type {ResolvedContextTimestampAndHash} */
|
2107
|
+
let resolved;
|
2108
|
+
if (
|
2109
|
+
cache !== undefined &&
|
2110
|
+
(resolved = getResolvedTimestamp(cache)) !== undefined
|
2111
|
+
) {
|
2112
|
+
contextTshs.set(path, resolved);
|
2113
|
+
} else {
|
2114
|
+
jobs++;
|
2115
|
+
/**
|
2116
|
+
* @param {Error=} err error
|
2117
|
+
* @param {ResolvedContextTimestampAndHash=} entry entry
|
2118
|
+
* @returns {void}
|
2119
|
+
*/
|
2120
|
+
const callback = (err, entry) => {
|
2121
|
+
if (err) {
|
2122
|
+
if (this.logger) {
|
2123
|
+
this.logger.debug(
|
2124
|
+
`Error snapshotting context timestamp hash combination of ${path}: ${err.stack}`
|
2125
|
+
);
|
2126
|
+
}
|
2127
|
+
jobError();
|
2128
|
+
} else {
|
2129
|
+
contextTshs.set(path, entry);
|
2130
|
+
jobDone();
|
2131
|
+
}
|
2132
|
+
};
|
2133
|
+
if (cache !== undefined) {
|
2134
|
+
this._resolveContextTsh(cache, callback);
|
2135
|
+
} else {
|
2136
|
+
this.getContextTsh(path, callback);
|
2137
|
+
}
|
2138
|
+
}
|
2139
|
+
}
|
2140
|
+
break;
|
2141
|
+
case 2:
|
2142
|
+
this._contextHashesOptimization.optimize(
|
2143
|
+
snapshot,
|
2144
|
+
capturedDirectories
|
2145
|
+
);
|
2146
|
+
for (const path of capturedDirectories) {
|
2147
|
+
const cache = this._contextHashes.get(path);
|
2148
|
+
let resolved;
|
2149
|
+
if (
|
2150
|
+
cache !== undefined &&
|
2151
|
+
(resolved = getResolvedHash(cache)) !== undefined
|
2152
|
+
) {
|
2153
|
+
contextHashes.set(path, resolved);
|
2154
|
+
} else {
|
2155
|
+
jobs++;
|
2156
|
+
const callback = (err, entry) => {
|
2157
|
+
if (err) {
|
2158
|
+
if (this.logger) {
|
2159
|
+
this.logger.debug(
|
2160
|
+
`Error snapshotting context hash of ${path}: ${err.stack}`
|
2161
|
+
);
|
2162
|
+
}
|
2163
|
+
jobError();
|
2164
|
+
} else {
|
2165
|
+
contextHashes.set(path, entry);
|
2166
|
+
jobDone();
|
2167
|
+
}
|
2168
|
+
};
|
2169
|
+
if (cache !== undefined) {
|
2170
|
+
this._resolveContextHash(cache, callback);
|
2171
|
+
} else {
|
2172
|
+
this.getContextHash(path, callback);
|
2173
|
+
}
|
2174
|
+
}
|
2175
|
+
}
|
2176
|
+
break;
|
2177
|
+
case 1:
|
2178
|
+
this._contextTimestampsOptimization.optimize(
|
2179
|
+
snapshot,
|
2180
|
+
capturedDirectories
|
2181
|
+
);
|
2182
|
+
for (const path of capturedDirectories) {
|
2183
|
+
const cache = this._contextTimestamps.get(path);
|
2184
|
+
if (cache === "ignore") continue;
|
2185
|
+
let resolved;
|
2186
|
+
if (
|
2187
|
+
cache !== undefined &&
|
2188
|
+
(resolved = getResolvedTimestamp(cache)) !== undefined
|
2189
|
+
) {
|
2190
|
+
contextTimestamps.set(path, resolved);
|
2191
|
+
} else {
|
2192
|
+
jobs++;
|
2193
|
+
/**
|
2194
|
+
* @param {Error=} err error
|
2195
|
+
* @param {ResolvedContextFileSystemInfoEntry=} entry entry
|
2196
|
+
* @returns {void}
|
2197
|
+
*/
|
2198
|
+
const callback = (err, entry) => {
|
2199
|
+
if (err) {
|
2200
|
+
if (this.logger) {
|
2201
|
+
this.logger.debug(
|
2202
|
+
`Error snapshotting context timestamp of ${path}: ${err.stack}`
|
2203
|
+
);
|
2204
|
+
}
|
2205
|
+
jobError();
|
2206
|
+
} else {
|
2207
|
+
contextTimestamps.set(path, entry);
|
2208
|
+
jobDone();
|
2209
|
+
}
|
2210
|
+
};
|
2211
|
+
if (cache !== undefined) {
|
2212
|
+
this._resolveContextTimestamp(cache, callback);
|
2213
|
+
} else {
|
2214
|
+
this.getContextTimestamp(path, callback);
|
2215
|
+
}
|
2216
|
+
}
|
2217
|
+
}
|
2218
|
+
break;
|
2219
|
+
}
|
2220
|
+
};
|
2221
|
+
if (directories) {
|
2222
|
+
processCapturedDirectories(
|
2223
|
+
captureNonManaged(directories, managedContexts)
|
2224
|
+
);
|
2225
|
+
}
|
2226
|
+
const processCapturedMissing = capturedMissing => {
|
2227
|
+
this._missingExistenceOptimization.optimize(snapshot, capturedMissing);
|
2228
|
+
for (const path of capturedMissing) {
|
2229
|
+
const cache = this._fileTimestamps.get(path);
|
2230
|
+
if (cache !== undefined) {
|
2231
|
+
if (cache !== "ignore") {
|
2232
|
+
missingExistence.set(path, Boolean(cache));
|
2233
|
+
}
|
2234
|
+
} else {
|
2235
|
+
jobs++;
|
2236
|
+
this.fileTimestampQueue.add(path, (err, entry) => {
|
2237
|
+
if (err) {
|
2238
|
+
if (this.logger) {
|
2239
|
+
this.logger.debug(
|
2240
|
+
`Error snapshotting missing timestamp of ${path}: ${err.stack}`
|
2241
|
+
);
|
2242
|
+
}
|
2243
|
+
jobError();
|
2244
|
+
} else {
|
2245
|
+
missingExistence.set(path, Boolean(entry));
|
2246
|
+
jobDone();
|
2247
|
+
}
|
2248
|
+
});
|
2249
|
+
}
|
2250
|
+
}
|
2251
|
+
};
|
2252
|
+
if (missing) {
|
2253
|
+
processCapturedMissing(captureNonManaged(missing, managedMissing));
|
2254
|
+
}
|
2255
|
+
this._managedItemInfoOptimization.optimize(snapshot, managedItems);
|
2256
|
+
for (const path of managedItems) {
|
2257
|
+
const cache = this._managedItems.get(path);
|
2258
|
+
if (cache !== undefined) {
|
2259
|
+
if (!cache.startsWith("*")) {
|
2260
|
+
managedFiles.add(join(this.fs, path, "package.json"));
|
2261
|
+
} else if (cache === "*nested") {
|
2262
|
+
managedMissing.add(join(this.fs, path, "package.json"));
|
2263
|
+
}
|
2264
|
+
managedItemInfo.set(path, cache);
|
2265
|
+
} else {
|
2266
|
+
jobs++;
|
2267
|
+
this.managedItemQueue.add(path, (err, entry) => {
|
2268
|
+
if (err) {
|
2269
|
+
if (this.logger) {
|
2270
|
+
this.logger.debug(
|
2271
|
+
`Error snapshotting managed item ${path}: ${err.stack}`
|
2272
|
+
);
|
2273
|
+
}
|
2274
|
+
jobError();
|
2275
|
+
} else if (entry) {
|
2276
|
+
if (!entry.startsWith("*")) {
|
2277
|
+
managedFiles.add(join(this.fs, path, "package.json"));
|
2278
|
+
} else if (cache === "*nested") {
|
2279
|
+
managedMissing.add(join(this.fs, path, "package.json"));
|
2280
|
+
}
|
2281
|
+
managedItemInfo.set(path, entry);
|
2282
|
+
jobDone();
|
2283
|
+
} else {
|
2284
|
+
// Fallback to normal snapshotting
|
2285
|
+
const process = (set, fn) => {
|
2286
|
+
if (set.size === 0) return;
|
2287
|
+
const captured = new Set();
|
2288
|
+
for (const file of set) {
|
2289
|
+
if (file.startsWith(path)) captured.add(file);
|
2290
|
+
}
|
2291
|
+
if (captured.size > 0) fn(captured);
|
2292
|
+
};
|
2293
|
+
process(managedFiles, processCapturedFiles);
|
2294
|
+
process(managedContexts, processCapturedDirectories);
|
2295
|
+
process(managedMissing, processCapturedMissing);
|
2296
|
+
jobDone();
|
2297
|
+
}
|
2298
|
+
});
|
2299
|
+
}
|
2300
|
+
}
|
2301
|
+
jobDone();
|
2302
|
+
}
|
2303
|
+
|
2304
|
+
/**
|
2305
|
+
* @param {Snapshot} snapshot1 a snapshot
|
2306
|
+
* @param {Snapshot} snapshot2 a snapshot
|
2307
|
+
* @returns {Snapshot} merged snapshot
|
2308
|
+
*/
|
2309
|
+
mergeSnapshots(snapshot1, snapshot2) {
|
2310
|
+
const snapshot = new Snapshot();
|
2311
|
+
if (snapshot1.hasStartTime() && snapshot2.hasStartTime())
|
2312
|
+
snapshot.setStartTime(Math.min(snapshot1.startTime, snapshot2.startTime));
|
2313
|
+
else if (snapshot2.hasStartTime()) snapshot.startTime = snapshot2.startTime;
|
2314
|
+
else if (snapshot1.hasStartTime()) snapshot.startTime = snapshot1.startTime;
|
2315
|
+
if (snapshot1.hasFileTimestamps() || snapshot2.hasFileTimestamps()) {
|
2316
|
+
snapshot.setFileTimestamps(
|
2317
|
+
mergeMaps(snapshot1.fileTimestamps, snapshot2.fileTimestamps)
|
2318
|
+
);
|
2319
|
+
}
|
2320
|
+
if (snapshot1.hasFileHashes() || snapshot2.hasFileHashes()) {
|
2321
|
+
snapshot.setFileHashes(
|
2322
|
+
mergeMaps(snapshot1.fileHashes, snapshot2.fileHashes)
|
2323
|
+
);
|
2324
|
+
}
|
2325
|
+
if (snapshot1.hasFileTshs() || snapshot2.hasFileTshs()) {
|
2326
|
+
snapshot.setFileTshs(mergeMaps(snapshot1.fileTshs, snapshot2.fileTshs));
|
2327
|
+
}
|
2328
|
+
if (snapshot1.hasContextTimestamps() || snapshot2.hasContextTimestamps()) {
|
2329
|
+
snapshot.setContextTimestamps(
|
2330
|
+
mergeMaps(snapshot1.contextTimestamps, snapshot2.contextTimestamps)
|
2331
|
+
);
|
2332
|
+
}
|
2333
|
+
if (snapshot1.hasContextHashes() || snapshot2.hasContextHashes()) {
|
2334
|
+
snapshot.setContextHashes(
|
2335
|
+
mergeMaps(snapshot1.contextHashes, snapshot2.contextHashes)
|
2336
|
+
);
|
2337
|
+
}
|
2338
|
+
if (snapshot1.hasContextTshs() || snapshot2.hasContextTshs()) {
|
2339
|
+
snapshot.setContextTshs(
|
2340
|
+
mergeMaps(snapshot1.contextTshs, snapshot2.contextTshs)
|
2341
|
+
);
|
2342
|
+
}
|
2343
|
+
if (snapshot1.hasMissingExistence() || snapshot2.hasMissingExistence()) {
|
2344
|
+
snapshot.setMissingExistence(
|
2345
|
+
mergeMaps(snapshot1.missingExistence, snapshot2.missingExistence)
|
2346
|
+
);
|
2347
|
+
}
|
2348
|
+
if (snapshot1.hasManagedItemInfo() || snapshot2.hasManagedItemInfo()) {
|
2349
|
+
snapshot.setManagedItemInfo(
|
2350
|
+
mergeMaps(snapshot1.managedItemInfo, snapshot2.managedItemInfo)
|
2351
|
+
);
|
2352
|
+
}
|
2353
|
+
if (snapshot1.hasManagedFiles() || snapshot2.hasManagedFiles()) {
|
2354
|
+
snapshot.setManagedFiles(
|
2355
|
+
mergeSets(snapshot1.managedFiles, snapshot2.managedFiles)
|
2356
|
+
);
|
2357
|
+
}
|
2358
|
+
if (snapshot1.hasManagedContexts() || snapshot2.hasManagedContexts()) {
|
2359
|
+
snapshot.setManagedContexts(
|
2360
|
+
mergeSets(snapshot1.managedContexts, snapshot2.managedContexts)
|
2361
|
+
);
|
2362
|
+
}
|
2363
|
+
if (snapshot1.hasManagedMissing() || snapshot2.hasManagedMissing()) {
|
2364
|
+
snapshot.setManagedMissing(
|
2365
|
+
mergeSets(snapshot1.managedMissing, snapshot2.managedMissing)
|
2366
|
+
);
|
2367
|
+
}
|
2368
|
+
if (snapshot1.hasChildren() || snapshot2.hasChildren()) {
|
2369
|
+
snapshot.setChildren(mergeSets(snapshot1.children, snapshot2.children));
|
2370
|
+
}
|
2371
|
+
if (
|
2372
|
+
this._snapshotCache.get(snapshot1) === true &&
|
2373
|
+
this._snapshotCache.get(snapshot2) === true
|
2374
|
+
) {
|
2375
|
+
this._snapshotCache.set(snapshot, true);
|
2376
|
+
}
|
2377
|
+
return snapshot;
|
2378
|
+
}
|
2379
|
+
|
2380
|
+
/**
|
2381
|
+
* @param {Snapshot} snapshot the snapshot made
|
2382
|
+
* @param {function((WebpackError | null)=, boolean=): void} callback callback function
|
2383
|
+
* @returns {void}
|
2384
|
+
*/
|
2385
|
+
checkSnapshotValid(snapshot, callback) {
|
2386
|
+
const cachedResult = this._snapshotCache.get(snapshot);
|
2387
|
+
if (cachedResult !== undefined) {
|
2388
|
+
this._statTestedSnapshotsCached++;
|
2389
|
+
if (typeof cachedResult === "boolean") {
|
2390
|
+
callback(null, cachedResult);
|
2391
|
+
} else {
|
2392
|
+
cachedResult.push(callback);
|
2393
|
+
}
|
2394
|
+
return;
|
2395
|
+
}
|
2396
|
+
this._statTestedSnapshotsNotCached++;
|
2397
|
+
this._checkSnapshotValidNoCache(snapshot, callback);
|
2398
|
+
}
|
2399
|
+
|
2400
|
+
/**
|
2401
|
+
* @param {Snapshot} snapshot the snapshot made
|
2402
|
+
* @param {function((WebpackError | null)=, boolean=): void} callback callback function
|
2403
|
+
* @returns {void}
|
2404
|
+
*/
|
2405
|
+
_checkSnapshotValidNoCache(snapshot, callback) {
|
2406
|
+
/** @type {number | undefined} */
|
2407
|
+
let startTime = undefined;
|
2408
|
+
if (snapshot.hasStartTime()) {
|
2409
|
+
startTime = snapshot.startTime;
|
2410
|
+
}
|
2411
|
+
let jobs = 1;
|
2412
|
+
const jobDone = () => {
|
2413
|
+
if (--jobs === 0) {
|
2414
|
+
this._snapshotCache.set(snapshot, true);
|
2415
|
+
callback(null, true);
|
2416
|
+
}
|
2417
|
+
};
|
2418
|
+
const invalid = () => {
|
2419
|
+
if (jobs > 0) {
|
2420
|
+
// large negative number instead of NaN or something else to keep jobs to stay a SMI (v8)
|
2421
|
+
jobs = -100000000;
|
2422
|
+
this._snapshotCache.set(snapshot, false);
|
2423
|
+
callback(null, false);
|
2424
|
+
}
|
2425
|
+
};
|
2426
|
+
const invalidWithError = (path, err) => {
|
2427
|
+
if (this._remainingLogs > 0) {
|
2428
|
+
this._log(path, `error occurred: %s`, err);
|
2429
|
+
}
|
2430
|
+
invalid();
|
2431
|
+
};
|
2432
|
+
/**
|
2433
|
+
* @param {string} path file path
|
2434
|
+
* @param {string} current current hash
|
2435
|
+
* @param {string} snap snapshot hash
|
2436
|
+
* @returns {boolean} true, if ok
|
2437
|
+
*/
|
2438
|
+
const checkHash = (path, current, snap) => {
|
2439
|
+
if (current !== snap) {
|
2440
|
+
// If hash differ it's invalid
|
2441
|
+
if (this._remainingLogs > 0) {
|
2442
|
+
this._log(path, `hashes differ (%s != %s)`, current, snap);
|
2443
|
+
}
|
2444
|
+
return false;
|
2445
|
+
}
|
2446
|
+
return true;
|
2447
|
+
};
|
2448
|
+
/**
|
2449
|
+
* @param {string} path file path
|
2450
|
+
* @param {boolean} current current entry
|
2451
|
+
* @param {boolean} snap entry from snapshot
|
2452
|
+
* @returns {boolean} true, if ok
|
2453
|
+
*/
|
2454
|
+
const checkExistence = (path, current, snap) => {
|
2455
|
+
if (!current !== !snap) {
|
2456
|
+
// If existence of item differs
|
2457
|
+
// it's invalid
|
2458
|
+
if (this._remainingLogs > 0) {
|
2459
|
+
this._log(
|
2460
|
+
path,
|
2461
|
+
current ? "it didn't exist before" : "it does no longer exist"
|
2462
|
+
);
|
2463
|
+
}
|
2464
|
+
return false;
|
2465
|
+
}
|
2466
|
+
return true;
|
2467
|
+
};
|
2468
|
+
/**
|
2469
|
+
* @param {string} path file path
|
2470
|
+
* @param {FileSystemInfoEntry} current current entry
|
2471
|
+
* @param {FileSystemInfoEntry} snap entry from snapshot
|
2472
|
+
* @param {boolean} log log reason
|
2473
|
+
* @returns {boolean} true, if ok
|
2474
|
+
*/
|
2475
|
+
const checkFile = (path, current, snap, log = true) => {
|
2476
|
+
if (current === snap) return true;
|
2477
|
+
if (!checkExistence(path, Boolean(current), Boolean(snap))) return false;
|
2478
|
+
if (current) {
|
2479
|
+
// For existing items only
|
2480
|
+
if (typeof startTime === "number" && current.safeTime > startTime) {
|
2481
|
+
// If a change happened after starting reading the item
|
2482
|
+
// this may no longer be valid
|
2483
|
+
if (log && this._remainingLogs > 0) {
|
2484
|
+
this._log(
|
2485
|
+
path,
|
2486
|
+
`it may have changed (%d) after the start time of the snapshot (%d)`,
|
2487
|
+
current.safeTime,
|
2488
|
+
startTime
|
2489
|
+
);
|
2490
|
+
}
|
2491
|
+
return false;
|
2492
|
+
}
|
2493
|
+
if (
|
2494
|
+
snap.timestamp !== undefined &&
|
2495
|
+
current.timestamp !== snap.timestamp
|
2496
|
+
) {
|
2497
|
+
// If we have a timestamp (it was a file or symlink) and it differs from current timestamp
|
2498
|
+
// it's invalid
|
2499
|
+
if (log && this._remainingLogs > 0) {
|
2500
|
+
this._log(
|
2501
|
+
path,
|
2502
|
+
`timestamps differ (%d != %d)`,
|
2503
|
+
current.timestamp,
|
2504
|
+
snap.timestamp
|
2505
|
+
);
|
2506
|
+
}
|
2507
|
+
return false;
|
2508
|
+
}
|
2509
|
+
}
|
2510
|
+
return true;
|
2511
|
+
};
|
2512
|
+
/**
|
2513
|
+
* @param {string} path file path
|
2514
|
+
* @param {ResolvedContextFileSystemInfoEntry} current current entry
|
2515
|
+
* @param {ResolvedContextFileSystemInfoEntry} snap entry from snapshot
|
2516
|
+
* @param {boolean} log log reason
|
2517
|
+
* @returns {boolean} true, if ok
|
2518
|
+
*/
|
2519
|
+
const checkContext = (path, current, snap, log = true) => {
|
2520
|
+
if (current === snap) return true;
|
2521
|
+
if (!checkExistence(path, Boolean(current), Boolean(snap))) return false;
|
2522
|
+
if (current) {
|
2523
|
+
// For existing items only
|
2524
|
+
if (typeof startTime === "number" && current.safeTime > startTime) {
|
2525
|
+
// If a change happened after starting reading the item
|
2526
|
+
// this may no longer be valid
|
2527
|
+
if (log && this._remainingLogs > 0) {
|
2528
|
+
this._log(
|
2529
|
+
path,
|
2530
|
+
`it may have changed (%d) after the start time of the snapshot (%d)`,
|
2531
|
+
current.safeTime,
|
2532
|
+
startTime
|
2533
|
+
);
|
2534
|
+
}
|
2535
|
+
return false;
|
2536
|
+
}
|
2537
|
+
if (
|
2538
|
+
snap.timestampHash !== undefined &&
|
2539
|
+
current.timestampHash !== snap.timestampHash
|
2540
|
+
) {
|
2541
|
+
// If we have a timestampHash (it was a directory) and it differs from current timestampHash
|
2542
|
+
// it's invalid
|
2543
|
+
if (log && this._remainingLogs > 0) {
|
2544
|
+
this._log(
|
2545
|
+
path,
|
2546
|
+
`timestamps hashes differ (%s != %s)`,
|
2547
|
+
current.timestampHash,
|
2548
|
+
snap.timestampHash
|
2549
|
+
);
|
2550
|
+
}
|
2551
|
+
return false;
|
2552
|
+
}
|
2553
|
+
}
|
2554
|
+
return true;
|
2555
|
+
};
|
2556
|
+
if (snapshot.hasChildren()) {
|
2557
|
+
const childCallback = (err, result) => {
|
2558
|
+
if (err || !result) return invalid();
|
2559
|
+
else jobDone();
|
2560
|
+
};
|
2561
|
+
for (const child of snapshot.children) {
|
2562
|
+
const cache = this._snapshotCache.get(child);
|
2563
|
+
if (cache !== undefined) {
|
2564
|
+
this._statTestedChildrenCached++;
|
2565
|
+
/* istanbul ignore else */
|
2566
|
+
if (typeof cache === "boolean") {
|
2567
|
+
if (cache === false) {
|
2568
|
+
invalid();
|
2569
|
+
return;
|
2570
|
+
}
|
2571
|
+
} else {
|
2572
|
+
jobs++;
|
2573
|
+
cache.push(childCallback);
|
2574
|
+
}
|
2575
|
+
} else {
|
2576
|
+
this._statTestedChildrenNotCached++;
|
2577
|
+
jobs++;
|
2578
|
+
this._checkSnapshotValidNoCache(child, childCallback);
|
2579
|
+
}
|
2580
|
+
}
|
2581
|
+
}
|
2582
|
+
if (snapshot.hasFileTimestamps()) {
|
2583
|
+
const { fileTimestamps } = snapshot;
|
2584
|
+
this._statTestedEntries += fileTimestamps.size;
|
2585
|
+
for (const [path, ts] of fileTimestamps) {
|
2586
|
+
const cache = this._fileTimestamps.get(path);
|
2587
|
+
if (cache !== undefined) {
|
2588
|
+
if (cache !== "ignore" && !checkFile(path, cache, ts)) {
|
2589
|
+
invalid();
|
2590
|
+
return;
|
2591
|
+
}
|
2592
|
+
} else {
|
2593
|
+
jobs++;
|
2594
|
+
this.fileTimestampQueue.add(path, (err, entry) => {
|
2595
|
+
if (err) return invalidWithError(path, err);
|
2596
|
+
if (!checkFile(path, entry, ts)) {
|
2597
|
+
invalid();
|
2598
|
+
} else {
|
2599
|
+
jobDone();
|
2600
|
+
}
|
2601
|
+
});
|
2602
|
+
}
|
2603
|
+
}
|
2604
|
+
}
|
2605
|
+
const processFileHashSnapshot = (path, hash) => {
|
2606
|
+
const cache = this._fileHashes.get(path);
|
2607
|
+
if (cache !== undefined) {
|
2608
|
+
if (cache !== "ignore" && !checkHash(path, cache, hash)) {
|
2609
|
+
invalid();
|
2610
|
+
return;
|
2611
|
+
}
|
2612
|
+
} else {
|
2613
|
+
jobs++;
|
2614
|
+
this.fileHashQueue.add(path, (err, entry) => {
|
2615
|
+
if (err) return invalidWithError(path, err);
|
2616
|
+
if (!checkHash(path, entry, hash)) {
|
2617
|
+
invalid();
|
2618
|
+
} else {
|
2619
|
+
jobDone();
|
2620
|
+
}
|
2621
|
+
});
|
2622
|
+
}
|
2623
|
+
};
|
2624
|
+
if (snapshot.hasFileHashes()) {
|
2625
|
+
const { fileHashes } = snapshot;
|
2626
|
+
this._statTestedEntries += fileHashes.size;
|
2627
|
+
for (const [path, hash] of fileHashes) {
|
2628
|
+
processFileHashSnapshot(path, hash);
|
2629
|
+
}
|
2630
|
+
}
|
2631
|
+
if (snapshot.hasFileTshs()) {
|
2632
|
+
const { fileTshs } = snapshot;
|
2633
|
+
this._statTestedEntries += fileTshs.size;
|
2634
|
+
for (const [path, tsh] of fileTshs) {
|
2635
|
+
if (typeof tsh === "string") {
|
2636
|
+
processFileHashSnapshot(path, tsh);
|
2637
|
+
} else {
|
2638
|
+
const cache = this._fileTimestamps.get(path);
|
2639
|
+
if (cache !== undefined) {
|
2640
|
+
if (cache === "ignore" || !checkFile(path, cache, tsh, false)) {
|
2641
|
+
processFileHashSnapshot(path, tsh && tsh.hash);
|
2642
|
+
}
|
2643
|
+
} else {
|
2644
|
+
jobs++;
|
2645
|
+
this.fileTimestampQueue.add(path, (err, entry) => {
|
2646
|
+
if (err) return invalidWithError(path, err);
|
2647
|
+
if (!checkFile(path, entry, tsh, false)) {
|
2648
|
+
processFileHashSnapshot(path, tsh && tsh.hash);
|
2649
|
+
}
|
2650
|
+
jobDone();
|
2651
|
+
});
|
2652
|
+
}
|
2653
|
+
}
|
2654
|
+
}
|
2655
|
+
}
|
2656
|
+
if (snapshot.hasContextTimestamps()) {
|
2657
|
+
const { contextTimestamps } = snapshot;
|
2658
|
+
this._statTestedEntries += contextTimestamps.size;
|
2659
|
+
for (const [path, ts] of contextTimestamps) {
|
2660
|
+
const cache = this._contextTimestamps.get(path);
|
2661
|
+
if (cache === "ignore") continue;
|
2662
|
+
let resolved;
|
2663
|
+
if (
|
2664
|
+
cache !== undefined &&
|
2665
|
+
(resolved = getResolvedTimestamp(cache)) !== undefined
|
2666
|
+
) {
|
2667
|
+
if (!checkContext(path, resolved, ts)) {
|
2668
|
+
invalid();
|
2669
|
+
return;
|
2670
|
+
}
|
2671
|
+
} else {
|
2672
|
+
jobs++;
|
2673
|
+
/**
|
2674
|
+
* @param {Error=} err error
|
2675
|
+
* @param {ResolvedContextFileSystemInfoEntry=} entry entry
|
2676
|
+
* @returns {void}
|
2677
|
+
*/
|
2678
|
+
const callback = (err, entry) => {
|
2679
|
+
if (err) return invalidWithError(path, err);
|
2680
|
+
if (!checkContext(path, entry, ts)) {
|
2681
|
+
invalid();
|
2682
|
+
} else {
|
2683
|
+
jobDone();
|
2684
|
+
}
|
2685
|
+
};
|
2686
|
+
if (cache !== undefined) {
|
2687
|
+
this._resolveContextTimestamp(cache, callback);
|
2688
|
+
} else {
|
2689
|
+
this.getContextTimestamp(path, callback);
|
2690
|
+
}
|
2691
|
+
}
|
2692
|
+
}
|
2693
|
+
}
|
2694
|
+
const processContextHashSnapshot = (path, hash) => {
|
2695
|
+
const cache = this._contextHashes.get(path);
|
2696
|
+
let resolved;
|
2697
|
+
if (
|
2698
|
+
cache !== undefined &&
|
2699
|
+
(resolved = getResolvedHash(cache)) !== undefined
|
2700
|
+
) {
|
2701
|
+
if (!checkHash(path, resolved, hash)) {
|
2702
|
+
invalid();
|
2703
|
+
return;
|
2704
|
+
}
|
2705
|
+
} else {
|
2706
|
+
jobs++;
|
2707
|
+
const callback = (err, entry) => {
|
2708
|
+
if (err) return invalidWithError(path, err);
|
2709
|
+
if (!checkHash(path, entry, hash)) {
|
2710
|
+
invalid();
|
2711
|
+
} else {
|
2712
|
+
jobDone();
|
2713
|
+
}
|
2714
|
+
};
|
2715
|
+
if (cache !== undefined) {
|
2716
|
+
this._resolveContextHash(cache, callback);
|
2717
|
+
} else {
|
2718
|
+
this.getContextHash(path, callback);
|
2719
|
+
}
|
2720
|
+
}
|
2721
|
+
};
|
2722
|
+
if (snapshot.hasContextHashes()) {
|
2723
|
+
const { contextHashes } = snapshot;
|
2724
|
+
this._statTestedEntries += contextHashes.size;
|
2725
|
+
for (const [path, hash] of contextHashes) {
|
2726
|
+
processContextHashSnapshot(path, hash);
|
2727
|
+
}
|
2728
|
+
}
|
2729
|
+
if (snapshot.hasContextTshs()) {
|
2730
|
+
const { contextTshs } = snapshot;
|
2731
|
+
this._statTestedEntries += contextTshs.size;
|
2732
|
+
for (const [path, tsh] of contextTshs) {
|
2733
|
+
if (typeof tsh === "string") {
|
2734
|
+
processContextHashSnapshot(path, tsh);
|
2735
|
+
} else {
|
2736
|
+
const cache = this._contextTimestamps.get(path);
|
2737
|
+
if (cache === "ignore") continue;
|
2738
|
+
let resolved;
|
2739
|
+
if (
|
2740
|
+
cache !== undefined &&
|
2741
|
+
(resolved = getResolvedTimestamp(cache)) !== undefined
|
2742
|
+
) {
|
2743
|
+
if (!checkContext(path, resolved, tsh, false)) {
|
2744
|
+
processContextHashSnapshot(path, tsh && tsh.hash);
|
2745
|
+
}
|
2746
|
+
} else {
|
2747
|
+
jobs++;
|
2748
|
+
/**
|
2749
|
+
* @param {Error=} err error
|
2750
|
+
* @param {ResolvedContextFileSystemInfoEntry=} entry entry
|
2751
|
+
* @returns {void}
|
2752
|
+
*/
|
2753
|
+
const callback = (err, entry) => {
|
2754
|
+
if (err) return invalidWithError(path, err);
|
2755
|
+
if (!checkContext(path, entry, tsh, false)) {
|
2756
|
+
processContextHashSnapshot(path, tsh && tsh.hash);
|
2757
|
+
}
|
2758
|
+
jobDone();
|
2759
|
+
};
|
2760
|
+
if (cache !== undefined) {
|
2761
|
+
this._resolveContextTimestamp(cache, callback);
|
2762
|
+
} else {
|
2763
|
+
this.getContextTimestamp(path, callback);
|
2764
|
+
}
|
2765
|
+
}
|
2766
|
+
}
|
2767
|
+
}
|
2768
|
+
}
|
2769
|
+
if (snapshot.hasMissingExistence()) {
|
2770
|
+
const { missingExistence } = snapshot;
|
2771
|
+
this._statTestedEntries += missingExistence.size;
|
2772
|
+
for (const [path, existence] of missingExistence) {
|
2773
|
+
const cache = this._fileTimestamps.get(path);
|
2774
|
+
if (cache !== undefined) {
|
2775
|
+
if (
|
2776
|
+
cache !== "ignore" &&
|
2777
|
+
!checkExistence(path, Boolean(cache), Boolean(existence))
|
2778
|
+
) {
|
2779
|
+
invalid();
|
2780
|
+
return;
|
2781
|
+
}
|
2782
|
+
} else {
|
2783
|
+
jobs++;
|
2784
|
+
this.fileTimestampQueue.add(path, (err, entry) => {
|
2785
|
+
if (err) return invalidWithError(path, err);
|
2786
|
+
if (!checkExistence(path, Boolean(entry), Boolean(existence))) {
|
2787
|
+
invalid();
|
2788
|
+
} else {
|
2789
|
+
jobDone();
|
2790
|
+
}
|
2791
|
+
});
|
2792
|
+
}
|
2793
|
+
}
|
2794
|
+
}
|
2795
|
+
if (snapshot.hasManagedItemInfo()) {
|
2796
|
+
const { managedItemInfo } = snapshot;
|
2797
|
+
this._statTestedEntries += managedItemInfo.size;
|
2798
|
+
for (const [path, info] of managedItemInfo) {
|
2799
|
+
const cache = this._managedItems.get(path);
|
2800
|
+
if (cache !== undefined) {
|
2801
|
+
if (!checkHash(path, cache, info)) {
|
2802
|
+
invalid();
|
2803
|
+
return;
|
2804
|
+
}
|
2805
|
+
} else {
|
2806
|
+
jobs++;
|
2807
|
+
this.managedItemQueue.add(path, (err, entry) => {
|
2808
|
+
if (err) return invalidWithError(path, err);
|
2809
|
+
if (!checkHash(path, entry, info)) {
|
2810
|
+
invalid();
|
2811
|
+
} else {
|
2812
|
+
jobDone();
|
2813
|
+
}
|
2814
|
+
});
|
2815
|
+
}
|
2816
|
+
}
|
2817
|
+
}
|
2818
|
+
jobDone();
|
2819
|
+
|
2820
|
+
// if there was an async action
|
2821
|
+
// try to join multiple concurrent request for this snapshot
|
2822
|
+
if (jobs > 0) {
|
2823
|
+
const callbacks = [callback];
|
2824
|
+
callback = (err, result) => {
|
2825
|
+
for (const callback of callbacks) callback(err, result);
|
2826
|
+
};
|
2827
|
+
this._snapshotCache.set(snapshot, callbacks);
|
2828
|
+
}
|
2829
|
+
}
|
2830
|
+
|
2831
|
+
_readFileTimestamp(path, callback) {
|
2832
|
+
this.fs.stat(path, (err, stat) => {
|
2833
|
+
if (err) {
|
2834
|
+
if (err.code === "ENOENT") {
|
2835
|
+
this._fileTimestamps.set(path, null);
|
2836
|
+
this._cachedDeprecatedFileTimestamps = undefined;
|
2837
|
+
return callback(null, null);
|
2838
|
+
}
|
2839
|
+
return callback(err);
|
2840
|
+
}
|
2841
|
+
|
2842
|
+
let ts;
|
2843
|
+
if (stat.isDirectory()) {
|
2844
|
+
ts = {
|
2845
|
+
safeTime: 0,
|
2846
|
+
timestamp: undefined
|
2847
|
+
};
|
2848
|
+
} else {
|
2849
|
+
const mtime = +stat.mtime;
|
2850
|
+
|
2851
|
+
if (mtime) applyMtime(mtime);
|
2852
|
+
|
2853
|
+
ts = {
|
2854
|
+
safeTime: mtime ? mtime + FS_ACCURACY : Infinity,
|
2855
|
+
timestamp: mtime
|
2856
|
+
};
|
2857
|
+
}
|
2858
|
+
|
2859
|
+
this._fileTimestamps.set(path, ts);
|
2860
|
+
this._cachedDeprecatedFileTimestamps = undefined;
|
2861
|
+
|
2862
|
+
callback(null, ts);
|
2863
|
+
});
|
2864
|
+
}
|
2865
|
+
|
2866
|
+
_readFileHash(path, callback) {
|
2867
|
+
this.fs.readFile(path, (err, content) => {
|
2868
|
+
if (err) {
|
2869
|
+
if (err.code === "EISDIR") {
|
2870
|
+
this._fileHashes.set(path, "directory");
|
2871
|
+
return callback(null, "directory");
|
2872
|
+
}
|
2873
|
+
if (err.code === "ENOENT") {
|
2874
|
+
this._fileHashes.set(path, null);
|
2875
|
+
return callback(null, null);
|
2876
|
+
}
|
2877
|
+
if (err.code === "ERR_FS_FILE_TOO_LARGE") {
|
2878
|
+
this.logger.warn(`Ignoring ${path} for hashing as it's very large`);
|
2879
|
+
this._fileHashes.set(path, "too large");
|
2880
|
+
return callback(null, "too large");
|
2881
|
+
}
|
2882
|
+
return callback(err);
|
2883
|
+
}
|
2884
|
+
|
2885
|
+
const hash = createHash(this._hashFunction);
|
2886
|
+
|
2887
|
+
hash.update(content);
|
2888
|
+
|
2889
|
+
const digest = /** @type {string} */ (hash.digest("hex"));
|
2890
|
+
|
2891
|
+
this._fileHashes.set(path, digest);
|
2892
|
+
|
2893
|
+
callback(null, digest);
|
2894
|
+
});
|
2895
|
+
}
|
2896
|
+
|
2897
|
+
_getFileTimestampAndHash(path, callback) {
|
2898
|
+
const continueWithHash = hash => {
|
2899
|
+
const cache = this._fileTimestamps.get(path);
|
2900
|
+
if (cache !== undefined) {
|
2901
|
+
if (cache !== "ignore") {
|
2902
|
+
const result = {
|
2903
|
+
...cache,
|
2904
|
+
hash
|
2905
|
+
};
|
2906
|
+
this._fileTshs.set(path, result);
|
2907
|
+
return callback(null, result);
|
2908
|
+
} else {
|
2909
|
+
this._fileTshs.set(path, hash);
|
2910
|
+
return callback(null, hash);
|
2911
|
+
}
|
2912
|
+
} else {
|
2913
|
+
this.fileTimestampQueue.add(path, (err, entry) => {
|
2914
|
+
if (err) {
|
2915
|
+
return callback(err);
|
2916
|
+
}
|
2917
|
+
const result = {
|
2918
|
+
...entry,
|
2919
|
+
hash
|
2920
|
+
};
|
2921
|
+
this._fileTshs.set(path, result);
|
2922
|
+
return callback(null, result);
|
2923
|
+
});
|
2924
|
+
}
|
2925
|
+
};
|
2926
|
+
|
2927
|
+
const cache = this._fileHashes.get(path);
|
2928
|
+
if (cache !== undefined) {
|
2929
|
+
continueWithHash(cache);
|
2930
|
+
} else {
|
2931
|
+
this.fileHashQueue.add(path, (err, entry) => {
|
2932
|
+
if (err) {
|
2933
|
+
return callback(err);
|
2934
|
+
}
|
2935
|
+
continueWithHash(entry);
|
2936
|
+
});
|
2937
|
+
}
|
2938
|
+
}
|
2939
|
+
|
2940
|
+
/**
|
2941
|
+
* @template T
|
2942
|
+
* @template ItemType
|
2943
|
+
* @param {Object} options options
|
2944
|
+
* @param {string} options.path path
|
2945
|
+
* @param {function(string): ItemType} options.fromImmutablePath called when context item is an immutable path
|
2946
|
+
* @param {function(string): ItemType} options.fromManagedItem called when context item is a managed path
|
2947
|
+
* @param {function(string, string, function(Error=, ItemType=): void): void} options.fromSymlink called when context item is a symlink
|
2948
|
+
* @param {function(string, IStats, function(Error=, ItemType=): void): void} options.fromFile called when context item is a file
|
2949
|
+
* @param {function(string, IStats, function(Error=, ItemType=): void): void} options.fromDirectory called when context item is a directory
|
2950
|
+
* @param {function(string[], ItemType[]): T} options.reduce called from all context items
|
2951
|
+
* @param {function((Error | null)=, (T)=): void} callback callback
|
2952
|
+
*/
|
2953
|
+
_readContext(
|
2954
|
+
{
|
2955
|
+
path,
|
2956
|
+
fromImmutablePath,
|
2957
|
+
fromManagedItem,
|
2958
|
+
fromSymlink,
|
2959
|
+
fromFile,
|
2960
|
+
fromDirectory,
|
2961
|
+
reduce
|
2962
|
+
},
|
2963
|
+
callback
|
2964
|
+
) {
|
2965
|
+
this.fs.readdir(path, (err, _files) => {
|
2966
|
+
if (err) {
|
2967
|
+
if (err.code === "ENOENT") {
|
2968
|
+
return callback(null, null);
|
2969
|
+
}
|
2970
|
+
return callback(err);
|
2971
|
+
}
|
2972
|
+
const files = /** @type {string[]} */ (_files)
|
2973
|
+
.map(file => file.normalize("NFC"))
|
2974
|
+
.filter(file => !/^\./.test(file))
|
2975
|
+
.sort();
|
2976
|
+
asyncLib.map(
|
2977
|
+
files,
|
2978
|
+
(file, callback) => {
|
2979
|
+
const child = join(this.fs, path, file);
|
2980
|
+
for (const immutablePath of this.immutablePathsRegExps) {
|
2981
|
+
if (immutablePath.test(path)) {
|
2982
|
+
// ignore any immutable path for timestamping
|
2983
|
+
return callback(null, fromImmutablePath(path));
|
2984
|
+
}
|
2985
|
+
}
|
2986
|
+
for (const immutablePath of this.immutablePathsWithSlash) {
|
2987
|
+
if (path.startsWith(immutablePath)) {
|
2988
|
+
// ignore any immutable path for timestamping
|
2989
|
+
return callback(null, fromImmutablePath(path));
|
2990
|
+
}
|
2991
|
+
}
|
2992
|
+
for (const managedPath of this.managedPathsRegExps) {
|
2993
|
+
const match = managedPath.exec(path);
|
2994
|
+
if (match) {
|
2995
|
+
const managedItem = getManagedItem(match[1], path);
|
2996
|
+
if (managedItem) {
|
2997
|
+
// construct timestampHash from managed info
|
2998
|
+
return this.managedItemQueue.add(managedItem, (err, info) => {
|
2999
|
+
if (err) return callback(err);
|
3000
|
+
return callback(null, fromManagedItem(info));
|
3001
|
+
});
|
3002
|
+
}
|
3003
|
+
}
|
3004
|
+
}
|
3005
|
+
for (const managedPath of this.managedPathsWithSlash) {
|
3006
|
+
if (path.startsWith(managedPath)) {
|
3007
|
+
const managedItem = getManagedItem(managedPath, child);
|
3008
|
+
if (managedItem) {
|
3009
|
+
// construct timestampHash from managed info
|
3010
|
+
return this.managedItemQueue.add(managedItem, (err, info) => {
|
3011
|
+
if (err) return callback(err);
|
3012
|
+
return callback(null, fromManagedItem(info));
|
3013
|
+
});
|
3014
|
+
}
|
3015
|
+
}
|
3016
|
+
}
|
3017
|
+
|
3018
|
+
lstatReadlinkAbsolute(this.fs, child, (err, stat) => {
|
3019
|
+
if (err) return callback(err);
|
3020
|
+
|
3021
|
+
if (typeof stat === "string") {
|
3022
|
+
return fromSymlink(child, stat, callback);
|
3023
|
+
}
|
3024
|
+
|
3025
|
+
if (stat.isFile()) {
|
3026
|
+
return fromFile(child, stat, callback);
|
3027
|
+
}
|
3028
|
+
if (stat.isDirectory()) {
|
3029
|
+
return fromDirectory(child, stat, callback);
|
3030
|
+
}
|
3031
|
+
callback(null, null);
|
3032
|
+
});
|
3033
|
+
},
|
3034
|
+
(err, results) => {
|
3035
|
+
if (err) return callback(err);
|
3036
|
+
const result = reduce(files, results);
|
3037
|
+
callback(null, result);
|
3038
|
+
}
|
3039
|
+
);
|
3040
|
+
});
|
3041
|
+
}
|
3042
|
+
|
3043
|
+
_readContextTimestamp(path, callback) {
|
3044
|
+
this._readContext(
|
3045
|
+
{
|
3046
|
+
path,
|
3047
|
+
fromImmutablePath: () => null,
|
3048
|
+
fromManagedItem: info => ({
|
3049
|
+
safeTime: 0,
|
3050
|
+
timestampHash: info
|
3051
|
+
}),
|
3052
|
+
fromSymlink: (file, target, callback) => {
|
3053
|
+
callback(null, {
|
3054
|
+
timestampHash: target,
|
3055
|
+
symlinks: new Set([target])
|
3056
|
+
});
|
3057
|
+
},
|
3058
|
+
fromFile: (file, stat, callback) => {
|
3059
|
+
// Prefer the cached value over our new stat to report consistent results
|
3060
|
+
const cache = this._fileTimestamps.get(file);
|
3061
|
+
if (cache !== undefined)
|
3062
|
+
return callback(null, cache === "ignore" ? null : cache);
|
3063
|
+
|
3064
|
+
const mtime = +stat.mtime;
|
3065
|
+
|
3066
|
+
if (mtime) applyMtime(mtime);
|
3067
|
+
|
3068
|
+
const ts = {
|
3069
|
+
safeTime: mtime ? mtime + FS_ACCURACY : Infinity,
|
3070
|
+
timestamp: mtime
|
3071
|
+
};
|
3072
|
+
|
3073
|
+
this._fileTimestamps.set(file, ts);
|
3074
|
+
this._cachedDeprecatedFileTimestamps = undefined;
|
3075
|
+
callback(null, ts);
|
3076
|
+
},
|
3077
|
+
fromDirectory: (directory, stat, callback) => {
|
3078
|
+
this.contextTimestampQueue.increaseParallelism();
|
3079
|
+
this._getUnresolvedContextTimestamp(directory, (err, tsEntry) => {
|
3080
|
+
this.contextTimestampQueue.decreaseParallelism();
|
3081
|
+
callback(err, tsEntry);
|
3082
|
+
});
|
3083
|
+
},
|
3084
|
+
reduce: (files, tsEntries) => {
|
3085
|
+
let symlinks = undefined;
|
3086
|
+
|
3087
|
+
const hash = createHash(this._hashFunction);
|
3088
|
+
|
3089
|
+
for (const file of files) hash.update(file);
|
3090
|
+
let safeTime = 0;
|
3091
|
+
for (const entry of tsEntries) {
|
3092
|
+
if (!entry) {
|
3093
|
+
hash.update("n");
|
3094
|
+
continue;
|
3095
|
+
}
|
3096
|
+
if (entry.timestamp) {
|
3097
|
+
hash.update("f");
|
3098
|
+
hash.update(`${entry.timestamp}`);
|
3099
|
+
} else if (entry.timestampHash) {
|
3100
|
+
hash.update("d");
|
3101
|
+
hash.update(`${entry.timestampHash}`);
|
3102
|
+
}
|
3103
|
+
if (entry.symlinks !== undefined) {
|
3104
|
+
if (symlinks === undefined) symlinks = new Set();
|
3105
|
+
addAll(entry.symlinks, symlinks);
|
3106
|
+
}
|
3107
|
+
if (entry.safeTime) {
|
3108
|
+
safeTime = Math.max(safeTime, entry.safeTime);
|
3109
|
+
}
|
3110
|
+
}
|
3111
|
+
|
3112
|
+
const digest = /** @type {string} */ (hash.digest("hex"));
|
3113
|
+
|
3114
|
+
const result = {
|
3115
|
+
safeTime,
|
3116
|
+
timestampHash: digest
|
3117
|
+
};
|
3118
|
+
if (symlinks) result.symlinks = symlinks;
|
3119
|
+
return result;
|
3120
|
+
}
|
3121
|
+
},
|
3122
|
+
(err, result) => {
|
3123
|
+
if (err) return callback(err);
|
3124
|
+
this._contextTimestamps.set(path, result);
|
3125
|
+
this._cachedDeprecatedContextTimestamps = undefined;
|
3126
|
+
|
3127
|
+
callback(null, result);
|
3128
|
+
}
|
3129
|
+
);
|
3130
|
+
}
|
3131
|
+
|
3132
|
+
/**
|
3133
|
+
* @param {ContextFileSystemInfoEntry} entry entry
|
3134
|
+
* @param {function((Error | null)=, ResolvedContextFileSystemInfoEntry=): void} callback callback
|
3135
|
+
* @returns {void}
|
3136
|
+
*/
|
3137
|
+
_resolveContextTimestamp(entry, callback) {
|
3138
|
+
const hashes = [];
|
3139
|
+
let safeTime = 0;
|
3140
|
+
processAsyncTree(
|
3141
|
+
entry.symlinks,
|
3142
|
+
10,
|
3143
|
+
(target, push, callback) => {
|
3144
|
+
this._getUnresolvedContextTimestamp(target, (err, entry) => {
|
3145
|
+
if (err) return callback(err);
|
3146
|
+
if (entry && entry !== "ignore") {
|
3147
|
+
hashes.push(entry.timestampHash);
|
3148
|
+
if (entry.safeTime) {
|
3149
|
+
safeTime = Math.max(safeTime, entry.safeTime);
|
3150
|
+
}
|
3151
|
+
if (entry.symlinks !== undefined) {
|
3152
|
+
for (const target of entry.symlinks) push(target);
|
3153
|
+
}
|
3154
|
+
}
|
3155
|
+
callback();
|
3156
|
+
});
|
3157
|
+
},
|
3158
|
+
err => {
|
3159
|
+
if (err) return callback(err);
|
3160
|
+
const hash = createHash(this._hashFunction);
|
3161
|
+
hash.update(entry.timestampHash);
|
3162
|
+
if (entry.safeTime) {
|
3163
|
+
safeTime = Math.max(safeTime, entry.safeTime);
|
3164
|
+
}
|
3165
|
+
hashes.sort();
|
3166
|
+
for (const h of hashes) {
|
3167
|
+
hash.update(h);
|
3168
|
+
}
|
3169
|
+
callback(
|
3170
|
+
null,
|
3171
|
+
(entry.resolved = {
|
3172
|
+
safeTime,
|
3173
|
+
timestampHash: /** @type {string} */ (hash.digest("hex"))
|
3174
|
+
})
|
3175
|
+
);
|
3176
|
+
}
|
3177
|
+
);
|
3178
|
+
}
|
3179
|
+
|
3180
|
+
_readContextHash(path, callback) {
|
3181
|
+
this._readContext(
|
3182
|
+
{
|
3183
|
+
path,
|
3184
|
+
fromImmutablePath: () => "",
|
3185
|
+
fromManagedItem: info => info || "",
|
3186
|
+
fromSymlink: (file, target, callback) => {
|
3187
|
+
callback(null, {
|
3188
|
+
hash: target,
|
3189
|
+
symlinks: new Set([target])
|
3190
|
+
});
|
3191
|
+
},
|
3192
|
+
fromFile: (file, stat, callback) =>
|
3193
|
+
this.getFileHash(file, (err, hash) => {
|
3194
|
+
callback(err, hash || "");
|
3195
|
+
}),
|
3196
|
+
fromDirectory: (directory, stat, callback) => {
|
3197
|
+
this.contextHashQueue.increaseParallelism();
|
3198
|
+
this._getUnresolvedContextHash(directory, (err, hash) => {
|
3199
|
+
this.contextHashQueue.decreaseParallelism();
|
3200
|
+
callback(err, hash || "");
|
3201
|
+
});
|
3202
|
+
},
|
3203
|
+
/**
|
3204
|
+
* @param {string[]} files files
|
3205
|
+
* @param {(string | ContextHash)[]} fileHashes hashes
|
3206
|
+
* @returns {ContextHash} reduced hash
|
3207
|
+
*/
|
3208
|
+
reduce: (files, fileHashes) => {
|
3209
|
+
let symlinks = undefined;
|
3210
|
+
const hash = createHash(this._hashFunction);
|
3211
|
+
|
3212
|
+
for (const file of files) hash.update(file);
|
3213
|
+
for (const entry of fileHashes) {
|
3214
|
+
if (typeof entry === "string") {
|
3215
|
+
hash.update(entry);
|
3216
|
+
} else {
|
3217
|
+
hash.update(entry.hash);
|
3218
|
+
if (entry.symlinks) {
|
3219
|
+
if (symlinks === undefined) symlinks = new Set();
|
3220
|
+
addAll(entry.symlinks, symlinks);
|
3221
|
+
}
|
3222
|
+
}
|
3223
|
+
}
|
3224
|
+
|
3225
|
+
const result = {
|
3226
|
+
hash: /** @type {string} */ (hash.digest("hex"))
|
3227
|
+
};
|
3228
|
+
if (symlinks) result.symlinks = symlinks;
|
3229
|
+
return result;
|
3230
|
+
}
|
3231
|
+
},
|
3232
|
+
(err, result) => {
|
3233
|
+
if (err) return callback(err);
|
3234
|
+
this._contextHashes.set(path, result);
|
3235
|
+
return callback(null, result);
|
3236
|
+
}
|
3237
|
+
);
|
3238
|
+
}
|
3239
|
+
|
3240
|
+
/**
|
3241
|
+
* @param {ContextHash} entry context hash
|
3242
|
+
* @param {function((Error | null)=, string=): void} callback callback
|
3243
|
+
* @returns {void}
|
3244
|
+
*/
|
3245
|
+
_resolveContextHash(entry, callback) {
|
3246
|
+
const hashes = [];
|
3247
|
+
processAsyncTree(
|
3248
|
+
entry.symlinks,
|
3249
|
+
10,
|
3250
|
+
(target, push, callback) => {
|
3251
|
+
this._getUnresolvedContextHash(target, (err, hash) => {
|
3252
|
+
if (err) return callback(err);
|
3253
|
+
if (hash) {
|
3254
|
+
hashes.push(hash.hash);
|
3255
|
+
if (hash.symlinks !== undefined) {
|
3256
|
+
for (const target of hash.symlinks) push(target);
|
3257
|
+
}
|
3258
|
+
}
|
3259
|
+
callback();
|
3260
|
+
});
|
3261
|
+
},
|
3262
|
+
err => {
|
3263
|
+
if (err) return callback(err);
|
3264
|
+
const hash = createHash(this._hashFunction);
|
3265
|
+
hash.update(entry.hash);
|
3266
|
+
hashes.sort();
|
3267
|
+
for (const h of hashes) {
|
3268
|
+
hash.update(h);
|
3269
|
+
}
|
3270
|
+
callback(
|
3271
|
+
null,
|
3272
|
+
(entry.resolved = /** @type {string} */ (hash.digest("hex")))
|
3273
|
+
);
|
3274
|
+
}
|
3275
|
+
);
|
3276
|
+
}
|
3277
|
+
|
3278
|
+
_readContextTimestampAndHash(path, callback) {
|
3279
|
+
const finalize = (timestamp, hash) => {
|
3280
|
+
const result =
|
3281
|
+
timestamp === "ignore"
|
3282
|
+
? hash
|
3283
|
+
: {
|
3284
|
+
...timestamp,
|
3285
|
+
...hash
|
3286
|
+
};
|
3287
|
+
this._contextTshs.set(path, result);
|
3288
|
+
callback(null, result);
|
3289
|
+
};
|
3290
|
+
const cachedHash = this._contextHashes.get(path);
|
3291
|
+
const cachedTimestamp = this._contextTimestamps.get(path);
|
3292
|
+
if (cachedHash !== undefined) {
|
3293
|
+
if (cachedTimestamp !== undefined) {
|
3294
|
+
finalize(cachedTimestamp, cachedHash);
|
3295
|
+
} else {
|
3296
|
+
this.contextTimestampQueue.add(path, (err, entry) => {
|
3297
|
+
if (err) return callback(err);
|
3298
|
+
finalize(entry, cachedHash);
|
3299
|
+
});
|
3300
|
+
}
|
3301
|
+
} else {
|
3302
|
+
if (cachedTimestamp !== undefined) {
|
3303
|
+
this.contextHashQueue.add(path, (err, entry) => {
|
3304
|
+
if (err) return callback(err);
|
3305
|
+
finalize(cachedTimestamp, entry);
|
3306
|
+
});
|
3307
|
+
} else {
|
3308
|
+
this._readContext(
|
3309
|
+
{
|
3310
|
+
path,
|
3311
|
+
fromImmutablePath: () => null,
|
3312
|
+
fromManagedItem: info => ({
|
3313
|
+
safeTime: 0,
|
3314
|
+
timestampHash: info,
|
3315
|
+
hash: info || ""
|
3316
|
+
}),
|
3317
|
+
fromSymlink: (fle, target, callback) => {
|
3318
|
+
callback(null, {
|
3319
|
+
timestampHash: target,
|
3320
|
+
hash: target,
|
3321
|
+
symlinks: new Set([target])
|
3322
|
+
});
|
3323
|
+
},
|
3324
|
+
fromFile: (file, stat, callback) => {
|
3325
|
+
this._getFileTimestampAndHash(file, callback);
|
3326
|
+
},
|
3327
|
+
fromDirectory: (directory, stat, callback) => {
|
3328
|
+
this.contextTshQueue.increaseParallelism();
|
3329
|
+
this.contextTshQueue.add(directory, (err, result) => {
|
3330
|
+
this.contextTshQueue.decreaseParallelism();
|
3331
|
+
callback(err, result);
|
3332
|
+
});
|
3333
|
+
},
|
3334
|
+
/**
|
3335
|
+
* @param {string[]} files files
|
3336
|
+
* @param {(Partial<TimestampAndHash> & Partial<ContextTimestampAndHash> | string | null)[]} results results
|
3337
|
+
* @returns {ContextTimestampAndHash} tsh
|
3338
|
+
*/
|
3339
|
+
reduce: (files, results) => {
|
3340
|
+
let symlinks = undefined;
|
3341
|
+
|
3342
|
+
const tsHash = createHash(this._hashFunction);
|
3343
|
+
const hash = createHash(this._hashFunction);
|
3344
|
+
|
3345
|
+
for (const file of files) {
|
3346
|
+
tsHash.update(file);
|
3347
|
+
hash.update(file);
|
3348
|
+
}
|
3349
|
+
let safeTime = 0;
|
3350
|
+
for (const entry of results) {
|
3351
|
+
if (!entry) {
|
3352
|
+
tsHash.update("n");
|
3353
|
+
continue;
|
3354
|
+
}
|
3355
|
+
if (typeof entry === "string") {
|
3356
|
+
tsHash.update("n");
|
3357
|
+
hash.update(entry);
|
3358
|
+
continue;
|
3359
|
+
}
|
3360
|
+
if (entry.timestamp) {
|
3361
|
+
tsHash.update("f");
|
3362
|
+
tsHash.update(`${entry.timestamp}`);
|
3363
|
+
} else if (entry.timestampHash) {
|
3364
|
+
tsHash.update("d");
|
3365
|
+
tsHash.update(`${entry.timestampHash}`);
|
3366
|
+
}
|
3367
|
+
if (entry.symlinks !== undefined) {
|
3368
|
+
if (symlinks === undefined) symlinks = new Set();
|
3369
|
+
addAll(entry.symlinks, symlinks);
|
3370
|
+
}
|
3371
|
+
if (entry.safeTime) {
|
3372
|
+
safeTime = Math.max(safeTime, entry.safeTime);
|
3373
|
+
}
|
3374
|
+
hash.update(entry.hash);
|
3375
|
+
}
|
3376
|
+
|
3377
|
+
const result = {
|
3378
|
+
safeTime,
|
3379
|
+
timestampHash: /** @type {string} */ (tsHash.digest("hex")),
|
3380
|
+
hash: /** @type {string} */ (hash.digest("hex"))
|
3381
|
+
};
|
3382
|
+
if (symlinks) result.symlinks = symlinks;
|
3383
|
+
return result;
|
3384
|
+
}
|
3385
|
+
},
|
3386
|
+
(err, result) => {
|
3387
|
+
if (err) return callback(err);
|
3388
|
+
this._contextTshs.set(path, result);
|
3389
|
+
return callback(null, result);
|
3390
|
+
}
|
3391
|
+
);
|
3392
|
+
}
|
3393
|
+
}
|
3394
|
+
}
|
3395
|
+
|
3396
|
+
/**
|
3397
|
+
* @param {ContextTimestampAndHash} entry entry
|
3398
|
+
* @param {function((Error | null)=, ResolvedContextTimestampAndHash=): void} callback callback
|
3399
|
+
* @returns {void}
|
3400
|
+
*/
|
3401
|
+
_resolveContextTsh(entry, callback) {
|
3402
|
+
const hashes = [];
|
3403
|
+
const tsHashes = [];
|
3404
|
+
let safeTime = 0;
|
3405
|
+
processAsyncTree(
|
3406
|
+
entry.symlinks,
|
3407
|
+
10,
|
3408
|
+
(target, push, callback) => {
|
3409
|
+
this._getUnresolvedContextTsh(target, (err, entry) => {
|
3410
|
+
if (err) return callback(err);
|
3411
|
+
if (entry) {
|
3412
|
+
hashes.push(entry.hash);
|
3413
|
+
if (entry.timestampHash) tsHashes.push(entry.timestampHash);
|
3414
|
+
if (entry.safeTime) {
|
3415
|
+
safeTime = Math.max(safeTime, entry.safeTime);
|
3416
|
+
}
|
3417
|
+
if (entry.symlinks !== undefined) {
|
3418
|
+
for (const target of entry.symlinks) push(target);
|
3419
|
+
}
|
3420
|
+
}
|
3421
|
+
callback();
|
3422
|
+
});
|
3423
|
+
},
|
3424
|
+
err => {
|
3425
|
+
if (err) return callback(err);
|
3426
|
+
const hash = createHash(this._hashFunction);
|
3427
|
+
const tsHash = createHash(this._hashFunction);
|
3428
|
+
hash.update(entry.hash);
|
3429
|
+
if (entry.timestampHash) tsHash.update(entry.timestampHash);
|
3430
|
+
if (entry.safeTime) {
|
3431
|
+
safeTime = Math.max(safeTime, entry.safeTime);
|
3432
|
+
}
|
3433
|
+
hashes.sort();
|
3434
|
+
for (const h of hashes) {
|
3435
|
+
hash.update(h);
|
3436
|
+
}
|
3437
|
+
tsHashes.sort();
|
3438
|
+
for (const h of tsHashes) {
|
3439
|
+
tsHash.update(h);
|
3440
|
+
}
|
3441
|
+
callback(
|
3442
|
+
null,
|
3443
|
+
(entry.resolved = {
|
3444
|
+
safeTime,
|
3445
|
+
timestampHash: /** @type {string} */ (tsHash.digest("hex")),
|
3446
|
+
hash: /** @type {string} */ (hash.digest("hex"))
|
3447
|
+
})
|
3448
|
+
);
|
3449
|
+
}
|
3450
|
+
);
|
3451
|
+
}
|
3452
|
+
|
3453
|
+
_getManagedItemDirectoryInfo(path, callback) {
|
3454
|
+
this.fs.readdir(path, (err, elements) => {
|
3455
|
+
if (err) {
|
3456
|
+
if (err.code === "ENOENT" || err.code === "ENOTDIR") {
|
3457
|
+
return callback(null, EMPTY_SET);
|
3458
|
+
}
|
3459
|
+
return callback(err);
|
3460
|
+
}
|
3461
|
+
const set = new Set(
|
3462
|
+
/** @type {string[]} */ (elements).map(element =>
|
3463
|
+
join(this.fs, path, element)
|
3464
|
+
)
|
3465
|
+
);
|
3466
|
+
callback(null, set);
|
3467
|
+
});
|
3468
|
+
}
|
3469
|
+
|
3470
|
+
_getManagedItemInfo(path, callback) {
|
3471
|
+
const dir = dirname(this.fs, path);
|
3472
|
+
this.managedItemDirectoryQueue.add(dir, (err, elements) => {
|
3473
|
+
if (err) {
|
3474
|
+
return callback(err);
|
3475
|
+
}
|
3476
|
+
if (!elements.has(path)) {
|
3477
|
+
// file or directory doesn't exist
|
3478
|
+
this._managedItems.set(path, "*missing");
|
3479
|
+
return callback(null, "*missing");
|
3480
|
+
}
|
3481
|
+
// something exists
|
3482
|
+
// it may be a file or directory
|
3483
|
+
if (
|
3484
|
+
path.endsWith("node_modules") &&
|
3485
|
+
(path.endsWith("/node_modules") || path.endsWith("\\node_modules"))
|
3486
|
+
) {
|
3487
|
+
// we are only interested in existence of this special directory
|
3488
|
+
this._managedItems.set(path, "*node_modules");
|
3489
|
+
return callback(null, "*node_modules");
|
3490
|
+
}
|
3491
|
+
|
3492
|
+
// we assume it's a directory, as files shouldn't occur in managed paths
|
3493
|
+
const packageJsonPath = join(this.fs, path, "package.json");
|
3494
|
+
this.fs.readFile(packageJsonPath, (err, content) => {
|
3495
|
+
if (err) {
|
3496
|
+
if (err.code === "ENOENT" || err.code === "ENOTDIR") {
|
3497
|
+
// no package.json or path is not a directory
|
3498
|
+
this.fs.readdir(path, (err, elements) => {
|
3499
|
+
if (
|
3500
|
+
!err &&
|
3501
|
+
elements.length === 1 &&
|
3502
|
+
elements[0] === "node_modules"
|
3503
|
+
) {
|
3504
|
+
// This is only a grouping folder e. g. used by yarn
|
3505
|
+
// we are only interested in existence of this special directory
|
3506
|
+
this._managedItems.set(path, "*nested");
|
3507
|
+
return callback(null, "*nested");
|
3508
|
+
}
|
3509
|
+
this.logger.warn(
|
3510
|
+
`Managed item ${path} isn't a directory or doesn't contain a package.json (see snapshot.managedPaths option)`
|
3511
|
+
);
|
3512
|
+
return callback();
|
3513
|
+
});
|
3514
|
+
return;
|
3515
|
+
}
|
3516
|
+
return callback(err);
|
3517
|
+
}
|
3518
|
+
let data;
|
3519
|
+
try {
|
3520
|
+
data = JSON.parse(content.toString("utf-8"));
|
3521
|
+
} catch (e) {
|
3522
|
+
return callback(e);
|
3523
|
+
}
|
3524
|
+
if (!data.name) {
|
3525
|
+
this.logger.warn(
|
3526
|
+
`${packageJsonPath} doesn't contain a "name" property (see snapshot.managedPaths option)`
|
3527
|
+
);
|
3528
|
+
return callback();
|
3529
|
+
}
|
3530
|
+
const info = `${data.name || ""}@${data.version || ""}`;
|
3531
|
+
this._managedItems.set(path, info);
|
3532
|
+
callback(null, info);
|
3533
|
+
});
|
3534
|
+
});
|
3535
|
+
}
|
3536
|
+
|
3537
|
+
getDeprecatedFileTimestamps() {
|
3538
|
+
if (this._cachedDeprecatedFileTimestamps !== undefined)
|
3539
|
+
return this._cachedDeprecatedFileTimestamps;
|
3540
|
+
const map = new Map();
|
3541
|
+
for (const [path, info] of this._fileTimestamps) {
|
3542
|
+
if (info) map.set(path, typeof info === "object" ? info.safeTime : null);
|
3543
|
+
}
|
3544
|
+
return (this._cachedDeprecatedFileTimestamps = map);
|
3545
|
+
}
|
3546
|
+
|
3547
|
+
getDeprecatedContextTimestamps() {
|
3548
|
+
if (this._cachedDeprecatedContextTimestamps !== undefined)
|
3549
|
+
return this._cachedDeprecatedContextTimestamps;
|
3550
|
+
const map = new Map();
|
3551
|
+
for (const [path, info] of this._contextTimestamps) {
|
3552
|
+
if (info) map.set(path, typeof info === "object" ? info.safeTime : null);
|
3553
|
+
}
|
3554
|
+
return (this._cachedDeprecatedContextTimestamps = map);
|
3555
|
+
}
|
3556
|
+
}
|
3557
|
+
|
3558
|
+
module.exports = FileSystemInfo;
|
3559
|
+
module.exports.Snapshot = Snapshot;
|