@matter/tools 0.11.0-alpha.0-20241005-e3e4e4a7a
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/README.md +100 -0
- package/bin/build.js +10 -0
- package/bin/prepare-chip.js +5 -0
- package/bin/run.js +7 -0
- package/bin/test.js +7 -0
- package/bin/version.js +7 -0
- package/chip/Dockerfile +23 -0
- package/dist/cjs/building/builder.d.ts +35 -0
- package/dist/cjs/building/builder.d.ts.map +1 -0
- package/dist/cjs/building/builder.js +210 -0
- package/dist/cjs/building/builder.js.map +6 -0
- package/dist/cjs/building/cli.d.ts +7 -0
- package/dist/cjs/building/cli.d.ts.map +1 -0
- package/dist/cjs/building/cli.js +100 -0
- package/dist/cjs/building/cli.js.map +6 -0
- package/dist/cjs/building/error.d.ts +16 -0
- package/dist/cjs/building/error.d.ts.map +1 -0
- package/dist/cjs/building/error.js +50 -0
- package/dist/cjs/building/error.js.map +6 -0
- package/dist/cjs/building/graph.d.ts +37 -0
- package/dist/cjs/building/graph.d.ts.map +1 -0
- package/dist/cjs/building/graph.js +222 -0
- package/dist/cjs/building/graph.js.map +6 -0
- package/dist/cjs/building/project.d.ts +56 -0
- package/dist/cjs/building/project.d.ts.map +1 -0
- package/dist/cjs/building/project.js +239 -0
- package/dist/cjs/building/project.js.map +6 -0
- package/dist/cjs/building/tsconfig.d.ts +16 -0
- package/dist/cjs/building/tsconfig.d.ts.map +1 -0
- package/dist/cjs/building/tsconfig.js +70 -0
- package/dist/cjs/building/tsconfig.js.map +6 -0
- package/dist/cjs/building/typescript/context.d.ts +16 -0
- package/dist/cjs/building/typescript/context.d.ts.map +1 -0
- package/dist/cjs/building/typescript/context.js +82 -0
- package/dist/cjs/building/typescript/context.js.map +6 -0
- package/dist/cjs/building/typescript/incremental-compiler.d.ts +10 -0
- package/dist/cjs/building/typescript/incremental-compiler.d.ts.map +1 -0
- package/dist/cjs/building/typescript/incremental-compiler.js +119 -0
- package/dist/cjs/building/typescript/incremental-compiler.js.map +6 -0
- package/dist/cjs/building/typescript/language-service.d.ts +13 -0
- package/dist/cjs/building/typescript/language-service.d.ts.map +1 -0
- package/dist/cjs/building/typescript/language-service.js +109 -0
- package/dist/cjs/building/typescript/language-service.js.map +6 -0
- package/dist/cjs/building/typescript/solution-builder.d.ts +10 -0
- package/dist/cjs/building/typescript/solution-builder.d.ts.map +1 -0
- package/dist/cjs/building/typescript/solution-builder.js +72 -0
- package/dist/cjs/building/typescript/solution-builder.js.map +6 -0
- package/dist/cjs/building/typescript.d.ts +13 -0
- package/dist/cjs/building/typescript.d.ts.map +1 -0
- package/dist/cjs/building/typescript.js +31 -0
- package/dist/cjs/building/typescript.js.map +6 -0
- package/dist/cjs/index.d.ts +15 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +32 -0
- package/dist/cjs/index.js.map +6 -0
- package/dist/cjs/package.json +3 -0
- package/dist/cjs/running/cli.d.ts +19 -0
- package/dist/cjs/running/cli.d.ts.map +1 -0
- package/dist/cjs/running/cli.js +82 -0
- package/dist/cjs/running/cli.js.map +6 -0
- package/dist/cjs/running/execute.d.ts +8 -0
- package/dist/cjs/running/execute.d.ts.map +1 -0
- package/dist/cjs/running/execute.js +82 -0
- package/dist/cjs/running/execute.js.map +6 -0
- package/dist/cjs/testing/chip/pics-file.d.ts +20 -0
- package/dist/cjs/testing/chip/pics-file.d.ts.map +1 -0
- package/dist/cjs/testing/chip/pics-file.js +79 -0
- package/dist/cjs/testing/chip/pics-file.js.map +6 -0
- package/dist/cjs/testing/chip.d.ts +60 -0
- package/dist/cjs/testing/chip.d.ts.map +1 -0
- package/dist/cjs/testing/chip.js +306 -0
- package/dist/cjs/testing/chip.js.map +6 -0
- package/dist/cjs/testing/cli.d.ts +9 -0
- package/dist/cjs/testing/cli.d.ts.map +1 -0
- package/dist/cjs/testing/cli.js +117 -0
- package/dist/cjs/testing/cli.js.map +6 -0
- package/dist/cjs/testing/failure-detail.d.ts +19 -0
- package/dist/cjs/testing/failure-detail.d.ts.map +1 -0
- package/dist/cjs/testing/failure-detail.js +143 -0
- package/dist/cjs/testing/failure-detail.js.map +6 -0
- package/dist/cjs/testing/files.d.ts +8 -0
- package/dist/cjs/testing/files.d.ts.map +1 -0
- package/dist/cjs/testing/files.js +52 -0
- package/dist/cjs/testing/files.js.map +6 -0
- package/dist/cjs/testing/global-declarations.d.ts +38 -0
- package/dist/cjs/testing/global-declarations.d.ts.map +1 -0
- package/dist/cjs/testing/global-declarations.js +8 -0
- package/dist/cjs/testing/global-declarations.js.map +6 -0
- package/dist/cjs/testing/global-definitions.d.ts +7 -0
- package/dist/cjs/testing/global-definitions.d.ts.map +1 -0
- package/dist/cjs/testing/global-definitions.js +50 -0
- package/dist/cjs/testing/global-definitions.js.map +6 -0
- package/dist/cjs/testing/mocha.d.ts +36 -0
- package/dist/cjs/testing/mocha.d.ts.map +1 -0
- package/dist/cjs/testing/mocha.js +155 -0
- package/dist/cjs/testing/mocha.js.map +6 -0
- package/dist/cjs/testing/mocharc.cjs +68 -0
- package/dist/cjs/testing/mocharc.d.cts +7 -0
- package/dist/cjs/testing/mocks/crypto.d.ts +7 -0
- package/dist/cjs/testing/mocks/crypto.d.ts.map +1 -0
- package/dist/cjs/testing/mocks/crypto.js +79 -0
- package/dist/cjs/testing/mocks/crypto.js.map +6 -0
- package/dist/cjs/testing/mocks/environment.d.ts +7 -0
- package/dist/cjs/testing/mocks/environment.d.ts.map +1 -0
- package/dist/cjs/testing/mocks/environment.js +7 -0
- package/dist/cjs/testing/mocks/environment.js.map +6 -0
- package/dist/cjs/testing/mocks/index.d.ts +10 -0
- package/dist/cjs/testing/mocks/index.d.ts.map +1 -0
- package/dist/cjs/testing/mocks/index.js +27 -0
- package/dist/cjs/testing/mocks/index.js.map +6 -0
- package/dist/cjs/testing/mocks/logging.d.ts +28 -0
- package/dist/cjs/testing/mocks/logging.d.ts.map +1 -0
- package/dist/cjs/testing/mocks/logging.js +93 -0
- package/dist/cjs/testing/mocks/logging.js.map +6 -0
- package/dist/cjs/testing/mocks/time.d.ts +88 -0
- package/dist/cjs/testing/mocks/time.d.ts.map +1 -0
- package/dist/cjs/testing/mocks/time.js +250 -0
- package/dist/cjs/testing/mocks/time.js.map +6 -0
- package/dist/cjs/testing/node.d.ts +16 -0
- package/dist/cjs/testing/node.d.ts.map +1 -0
- package/dist/cjs/testing/node.js +108 -0
- package/dist/cjs/testing/node.js.map +6 -0
- package/dist/cjs/testing/options.d.ts +19 -0
- package/dist/cjs/testing/options.d.ts.map +1 -0
- package/dist/cjs/testing/options.js +62 -0
- package/dist/cjs/testing/options.js.map +6 -0
- package/dist/cjs/testing/reporter.d.ts +50 -0
- package/dist/cjs/testing/reporter.d.ts.map +1 -0
- package/dist/cjs/testing/reporter.js +137 -0
- package/dist/cjs/testing/reporter.js.map +6 -0
- package/dist/cjs/testing/runner.d.ts +22 -0
- package/dist/cjs/testing/runner.d.ts.map +1 -0
- package/dist/cjs/testing/runner.js +116 -0
- package/dist/cjs/testing/runner.js.map +6 -0
- package/dist/cjs/testing/web.d.ts +8 -0
- package/dist/cjs/testing/web.d.ts.map +1 -0
- package/dist/cjs/testing/web.js +165 -0
- package/dist/cjs/testing/web.js.map +6 -0
- package/dist/cjs/util/bootstrap.mjs +105 -0
- package/dist/cjs/util/docker.d.ts +27 -0
- package/dist/cjs/util/docker.d.ts.map +1 -0
- package/dist/cjs/util/docker.js +163 -0
- package/dist/cjs/util/docker.js.map +6 -0
- package/dist/cjs/util/errors.d.ts +8 -0
- package/dist/cjs/util/errors.d.ts.map +1 -0
- package/dist/cjs/util/errors.js +55 -0
- package/dist/cjs/util/errors.js.map +6 -0
- package/dist/cjs/util/index.d.ts +8 -0
- package/dist/cjs/util/index.d.ts.map +1 -0
- package/dist/cjs/util/index.js +25 -0
- package/dist/cjs/util/index.js.map +6 -0
- package/dist/cjs/util/node-shims.d.ts +7 -0
- package/dist/cjs/util/node-shims.d.ts.map +1 -0
- package/dist/cjs/util/node-shims.js +12 -0
- package/dist/cjs/util/node-shims.js.map +6 -0
- package/dist/cjs/util/package.d.ts +61 -0
- package/dist/cjs/util/package.d.ts.map +1 -0
- package/dist/cjs/util/package.js +324 -0
- package/dist/cjs/util/package.js.map +6 -0
- package/dist/cjs/util/progress.d.ts +31 -0
- package/dist/cjs/util/progress.d.ts.map +1 -0
- package/dist/cjs/util/progress.js +232 -0
- package/dist/cjs/util/progress.js.map +6 -0
- package/dist/cjs/util/tools-path.cjs +13 -0
- package/dist/cjs/util/tools-path.d.cts +7 -0
- package/dist/cjs/util/trace-unhandled.d.ts +9 -0
- package/dist/cjs/util/trace-unhandled.d.ts.map +1 -0
- package/dist/cjs/util/trace-unhandled.js +48 -0
- package/dist/cjs/util/trace-unhandled.js.map +6 -0
- package/dist/cjs/util/wtf.d.ts +10 -0
- package/dist/cjs/util/wtf.d.ts.map +1 -0
- package/dist/cjs/util/wtf.js +53 -0
- package/dist/cjs/util/wtf.js.map +6 -0
- package/dist/cjs/versioning/cli.d.ts +7 -0
- package/dist/cjs/versioning/cli.d.ts.map +1 -0
- package/dist/cjs/versioning/cli.js +62 -0
- package/dist/cjs/versioning/cli.js.map +6 -0
- package/dist/cjs/versioning/versioner.d.ts +18 -0
- package/dist/cjs/versioning/versioner.d.ts.map +1 -0
- package/dist/cjs/versioning/versioner.js +145 -0
- package/dist/cjs/versioning/versioner.js.map +6 -0
- package/dist/esm/building/builder.d.ts +35 -0
- package/dist/esm/building/builder.d.ts.map +1 -0
- package/dist/esm/building/builder.js +180 -0
- package/dist/esm/building/builder.js.map +6 -0
- package/dist/esm/building/cli.d.ts +7 -0
- package/dist/esm/building/cli.d.ts.map +1 -0
- package/dist/esm/building/cli.js +70 -0
- package/dist/esm/building/cli.js.map +6 -0
- package/dist/esm/building/error.d.ts +16 -0
- package/dist/esm/building/error.d.ts.map +1 -0
- package/dist/esm/building/error.js +30 -0
- package/dist/esm/building/error.js.map +6 -0
- package/dist/esm/building/graph.d.ts +37 -0
- package/dist/esm/building/graph.d.ts.map +1 -0
- package/dist/esm/building/graph.js +192 -0
- package/dist/esm/building/graph.js.map +6 -0
- package/dist/esm/building/project.d.ts +56 -0
- package/dist/esm/building/project.d.ts.map +1 -0
- package/dist/esm/building/project.js +219 -0
- package/dist/esm/building/project.js.map +6 -0
- package/dist/esm/building/tsconfig.d.ts +16 -0
- package/dist/esm/building/tsconfig.d.ts.map +1 -0
- package/dist/esm/building/tsconfig.js +50 -0
- package/dist/esm/building/tsconfig.js.map +6 -0
- package/dist/esm/building/typescript/context.d.ts +16 -0
- package/dist/esm/building/typescript/context.d.ts.map +1 -0
- package/dist/esm/building/typescript/context.js +68 -0
- package/dist/esm/building/typescript/context.js.map +6 -0
- package/dist/esm/building/typescript/incremental-compiler.d.ts +10 -0
- package/dist/esm/building/typescript/incremental-compiler.d.ts.map +1 -0
- package/dist/esm/building/typescript/incremental-compiler.js +99 -0
- package/dist/esm/building/typescript/incremental-compiler.js.map +6 -0
- package/dist/esm/building/typescript/language-service.d.ts +13 -0
- package/dist/esm/building/typescript/language-service.d.ts.map +1 -0
- package/dist/esm/building/typescript/language-service.js +99 -0
- package/dist/esm/building/typescript/language-service.js.map +6 -0
- package/dist/esm/building/typescript/solution-builder.d.ts +10 -0
- package/dist/esm/building/typescript/solution-builder.d.ts.map +1 -0
- package/dist/esm/building/typescript/solution-builder.js +52 -0
- package/dist/esm/building/typescript/solution-builder.js.map +6 -0
- package/dist/esm/building/typescript.d.ts +13 -0
- package/dist/esm/building/typescript.d.ts.map +1 -0
- package/dist/esm/building/typescript.js +11 -0
- package/dist/esm/building/typescript.js.map +6 -0
- package/dist/esm/index.d.ts +15 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +15 -0
- package/dist/esm/index.js.map +6 -0
- package/dist/esm/package.json +3 -0
- package/dist/esm/running/cli.d.ts +19 -0
- package/dist/esm/running/cli.d.ts.map +1 -0
- package/dist/esm/running/cli.js +62 -0
- package/dist/esm/running/cli.js.map +6 -0
- package/dist/esm/running/execute.d.ts +8 -0
- package/dist/esm/running/execute.d.ts.map +1 -0
- package/dist/esm/running/execute.js +52 -0
- package/dist/esm/running/execute.js.map +6 -0
- package/dist/esm/testing/chip/pics-file.d.ts +20 -0
- package/dist/esm/testing/chip/pics-file.d.ts.map +1 -0
- package/dist/esm/testing/chip/pics-file.js +59 -0
- package/dist/esm/testing/chip/pics-file.js.map +6 -0
- package/dist/esm/testing/chip.d.ts +60 -0
- package/dist/esm/testing/chip.d.ts.map +1 -0
- package/dist/esm/testing/chip.js +286 -0
- package/dist/esm/testing/chip.js.map +6 -0
- package/dist/esm/testing/cli.d.ts +9 -0
- package/dist/esm/testing/cli.d.ts.map +1 -0
- package/dist/esm/testing/cli.js +87 -0
- package/dist/esm/testing/cli.js.map +6 -0
- package/dist/esm/testing/failure-detail.d.ts +19 -0
- package/dist/esm/testing/failure-detail.d.ts.map +1 -0
- package/dist/esm/testing/failure-detail.js +113 -0
- package/dist/esm/testing/failure-detail.js.map +6 -0
- package/dist/esm/testing/files.d.ts +8 -0
- package/dist/esm/testing/files.d.ts.map +1 -0
- package/dist/esm/testing/files.js +32 -0
- package/dist/esm/testing/files.js.map +6 -0
- package/dist/esm/testing/global-declarations.d.ts +38 -0
- package/dist/esm/testing/global-declarations.d.ts.map +1 -0
- package/dist/esm/testing/global-declarations.js +7 -0
- package/dist/esm/testing/global-declarations.js.map +6 -0
- package/dist/esm/testing/global-definitions.d.ts +7 -0
- package/dist/esm/testing/global-definitions.d.ts.map +1 -0
- package/dist/esm/testing/global-definitions.js +27 -0
- package/dist/esm/testing/global-definitions.js.map +6 -0
- package/dist/esm/testing/mocha.d.ts +36 -0
- package/dist/esm/testing/mocha.d.ts.map +1 -0
- package/dist/esm/testing/mocha.js +135 -0
- package/dist/esm/testing/mocha.js.map +6 -0
- package/dist/esm/testing/mocharc.cjs +68 -0
- package/dist/esm/testing/mocharc.d.cts +7 -0
- package/dist/esm/testing/mocks/crypto.d.ts +7 -0
- package/dist/esm/testing/mocks/crypto.d.ts.map +1 -0
- package/dist/esm/testing/mocks/crypto.js +59 -0
- package/dist/esm/testing/mocks/crypto.js.map +6 -0
- package/dist/esm/testing/mocks/environment.d.ts +7 -0
- package/dist/esm/testing/mocks/environment.d.ts.map +1 -0
- package/dist/esm/testing/mocks/environment.js +6 -0
- package/dist/esm/testing/mocks/environment.js.map +6 -0
- package/dist/esm/testing/mocks/index.d.ts +10 -0
- package/dist/esm/testing/mocks/index.d.ts.map +1 -0
- package/dist/esm/testing/mocks/index.js +10 -0
- package/dist/esm/testing/mocks/index.js.map +6 -0
- package/dist/esm/testing/mocks/logging.d.ts +28 -0
- package/dist/esm/testing/mocks/logging.d.ts.map +1 -0
- package/dist/esm/testing/mocks/logging.js +63 -0
- package/dist/esm/testing/mocks/logging.js.map +6 -0
- package/dist/esm/testing/mocks/time.d.ts +88 -0
- package/dist/esm/testing/mocks/time.d.ts.map +1 -0
- package/dist/esm/testing/mocks/time.js +230 -0
- package/dist/esm/testing/mocks/time.js.map +6 -0
- package/dist/esm/testing/node.d.ts +16 -0
- package/dist/esm/testing/node.d.ts.map +1 -0
- package/dist/esm/testing/node.js +78 -0
- package/dist/esm/testing/node.js.map +6 -0
- package/dist/esm/testing/options.d.ts +19 -0
- package/dist/esm/testing/options.d.ts.map +1 -0
- package/dist/esm/testing/options.js +42 -0
- package/dist/esm/testing/options.js.map +6 -0
- package/dist/esm/testing/reporter.d.ts +50 -0
- package/dist/esm/testing/reporter.d.ts.map +1 -0
- package/dist/esm/testing/reporter.js +107 -0
- package/dist/esm/testing/reporter.js.map +6 -0
- package/dist/esm/testing/runner.d.ts +22 -0
- package/dist/esm/testing/runner.d.ts.map +1 -0
- package/dist/esm/testing/runner.js +86 -0
- package/dist/esm/testing/runner.js.map +6 -0
- package/dist/esm/testing/web.d.ts +8 -0
- package/dist/esm/testing/web.d.ts.map +1 -0
- package/dist/esm/testing/web.js +135 -0
- package/dist/esm/testing/web.js.map +6 -0
- package/dist/esm/util/bootstrap.mjs +105 -0
- package/dist/esm/util/docker.d.ts +27 -0
- package/dist/esm/util/docker.d.ts.map +1 -0
- package/dist/esm/util/docker.js +133 -0
- package/dist/esm/util/docker.js.map +6 -0
- package/dist/esm/util/errors.d.ts +8 -0
- package/dist/esm/util/errors.d.ts.map +1 -0
- package/dist/esm/util/errors.js +35 -0
- package/dist/esm/util/errors.js.map +6 -0
- package/dist/esm/util/index.d.ts +8 -0
- package/dist/esm/util/index.d.ts.map +1 -0
- package/dist/esm/util/index.js +8 -0
- package/dist/esm/util/index.js.map +6 -0
- package/dist/esm/util/node-shims.d.ts +7 -0
- package/dist/esm/util/node-shims.d.ts.map +1 -0
- package/dist/esm/util/node-shims.js +11 -0
- package/dist/esm/util/node-shims.js.map +6 -0
- package/dist/esm/util/package.d.ts +61 -0
- package/dist/esm/util/package.d.ts.map +1 -0
- package/dist/esm/util/package.js +304 -0
- package/dist/esm/util/package.js.map +6 -0
- package/dist/esm/util/progress.d.ts +31 -0
- package/dist/esm/util/progress.d.ts.map +1 -0
- package/dist/esm/util/progress.js +202 -0
- package/dist/esm/util/progress.js.map +6 -0
- package/dist/esm/util/tools-path.cjs +13 -0
- package/dist/esm/util/tools-path.d.cts +7 -0
- package/dist/esm/util/trace-unhandled.d.ts +9 -0
- package/dist/esm/util/trace-unhandled.d.ts.map +1 -0
- package/dist/esm/util/trace-unhandled.js +18 -0
- package/dist/esm/util/trace-unhandled.js.map +6 -0
- package/dist/esm/util/wtf.d.ts +10 -0
- package/dist/esm/util/wtf.d.ts.map +1 -0
- package/dist/esm/util/wtf.js +23 -0
- package/dist/esm/util/wtf.js.map +6 -0
- package/dist/esm/versioning/cli.d.ts +7 -0
- package/dist/esm/versioning/cli.d.ts.map +1 -0
- package/dist/esm/versioning/cli.js +32 -0
- package/dist/esm/versioning/cli.js.map +6 -0
- package/dist/esm/versioning/versioner.d.ts +18 -0
- package/dist/esm/versioning/versioner.d.ts.map +1 -0
- package/dist/esm/versioning/versioner.js +115 -0
- package/dist/esm/versioning/versioner.js.map +6 -0
- package/package.json +82 -0
- package/src/building/builder.ts +216 -0
- package/src/building/cli.ts +89 -0
- package/src/building/error.ts +29 -0
- package/src/building/graph.ts +251 -0
- package/src/building/project.ts +313 -0
- package/src/building/tsconfig.ts +69 -0
- package/src/building/typescript/context.ts +85 -0
- package/src/building/typescript/incremental-compiler.ts +126 -0
- package/src/building/typescript/language-service.ts +132 -0
- package/src/building/typescript/solution-builder.ts +67 -0
- package/src/building/typescript.ts +15 -0
- package/src/index.ts +15 -0
- package/src/running/cli.ts +95 -0
- package/src/running/execute.ts +63 -0
- package/src/testing/chip/pics-file.ts +71 -0
- package/src/testing/chip/pics.properties +53 -0
- package/src/testing/chip.ts +420 -0
- package/src/testing/cli.ts +122 -0
- package/src/testing/failure-detail.ts +126 -0
- package/src/testing/files.ts +35 -0
- package/src/testing/global-declarations.ts +50 -0
- package/src/testing/global-definitions.ts +35 -0
- package/src/testing/index.html +16 -0
- package/src/testing/mocha.ts +162 -0
- package/src/testing/mocharc.cjs +68 -0
- package/src/testing/mocharc.d.cts +7 -0
- package/src/testing/mocks/crypto.ts +70 -0
- package/src/testing/mocks/environment.ts +7 -0
- package/src/testing/mocks/index.ts +10 -0
- package/src/testing/mocks/logging.ts +99 -0
- package/src/testing/mocks/time.ts +294 -0
- package/src/testing/node.ts +114 -0
- package/src/testing/options.ts +58 -0
- package/src/testing/reporter.ts +144 -0
- package/src/testing/runner.ts +98 -0
- package/src/testing/web.ts +174 -0
- package/src/tsconfig.json +14 -0
- package/src/util/bootstrap.mjs +105 -0
- package/src/util/docker.ts +176 -0
- package/src/util/errors.ts +33 -0
- package/src/util/index.ts +8 -0
- package/src/util/node-shims.ts +13 -0
- package/src/util/package.ts +369 -0
- package/src/util/progress.ts +252 -0
- package/src/util/tools-path.cjs +13 -0
- package/src/util/tools-path.d.cts +7 -0
- package/src/util/trace-unhandled.ts +17 -0
- package/src/util/wtf.ts +25 -0
- package/src/versioning/cli.ts +43 -0
- package/src/versioning/versioner.ts +139 -0
- package/test/testing/mocks/MockTimeTest.ts +113 -0
- package/test/tsconfig.json +15 -0
- package/tsc/tsconfig.app.json +7 -0
- package/tsc/tsconfig.base.json +41 -0
- package/tsc/tsconfig.lib.json +12 -0
- package/tsc/tsconfig.test.json +7 -0
- package/tsconfig.json +5 -0
|
@@ -0,0 +1,304 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2024 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { existsSync, readFileSync, statSync } from "fs";
|
|
7
|
+
import { readdir, readFile, stat, writeFile } from "fs/promises";
|
|
8
|
+
import { glob } from "glob";
|
|
9
|
+
import { dirname, join, relative, resolve } from "path";
|
|
10
|
+
import { maybeStatSync } from "../testing/files.js";
|
|
11
|
+
import { ignoreError, ignoreErrorSync } from "./errors.js";
|
|
12
|
+
import { Progress } from "./progress.js";
|
|
13
|
+
import { toolsPath } from "./tools-path.cjs";
|
|
14
|
+
class JsonNotFoundError extends Error {
|
|
15
|
+
}
|
|
16
|
+
const CONFIG_PATH = `src/build.config.ts`;
|
|
17
|
+
const CODEGEN_PATH = `codegen`;
|
|
18
|
+
const packageForPath = {};
|
|
19
|
+
function findJson(filename, path = ".", title) {
|
|
20
|
+
path = resolve(path);
|
|
21
|
+
while (true) {
|
|
22
|
+
const json = ignoreErrorSync(
|
|
23
|
+
["ENOENT", "ENOTDIR"],
|
|
24
|
+
() => JSON.parse(readFileSync(resolve(path, filename)).toString())
|
|
25
|
+
);
|
|
26
|
+
if (json) {
|
|
27
|
+
if (title === void 0 || json.name === title) {
|
|
28
|
+
return { root: path, json };
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
const parent = dirname(path);
|
|
32
|
+
if (parent === path) {
|
|
33
|
+
throw new JsonNotFoundError(`Could not locate ${title ?? filename}`);
|
|
34
|
+
}
|
|
35
|
+
path = parent;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
function isDirectory(path) {
|
|
39
|
+
return !!ignoreErrorSync("ENOENT", () => statSync(path).isDirectory());
|
|
40
|
+
}
|
|
41
|
+
class Package {
|
|
42
|
+
path;
|
|
43
|
+
json;
|
|
44
|
+
supportsEsm;
|
|
45
|
+
supportsCjs;
|
|
46
|
+
hasSrc;
|
|
47
|
+
hasTests;
|
|
48
|
+
hasConfig;
|
|
49
|
+
isLibrary;
|
|
50
|
+
#aliases;
|
|
51
|
+
constructor({
|
|
52
|
+
path = ".",
|
|
53
|
+
name
|
|
54
|
+
} = {}) {
|
|
55
|
+
const { root, json } = findJson("package.json", path, name);
|
|
56
|
+
this.path = root;
|
|
57
|
+
this.json = json;
|
|
58
|
+
const { esm, cjs } = selectFormats(this.json);
|
|
59
|
+
this.supportsEsm = esm;
|
|
60
|
+
this.supportsCjs = cjs;
|
|
61
|
+
this.hasSrc = isDirectory(this.resolve("src"));
|
|
62
|
+
this.hasTests = isDirectory(this.resolve("test"));
|
|
63
|
+
this.isLibrary = !!(this.json.main || this.json.module || this.json.exports);
|
|
64
|
+
this.hasConfig = this.hasFile(this.resolve(CONFIG_PATH));
|
|
65
|
+
}
|
|
66
|
+
get name() {
|
|
67
|
+
return this.json.name;
|
|
68
|
+
}
|
|
69
|
+
get exports() {
|
|
70
|
+
return this.json.exports;
|
|
71
|
+
}
|
|
72
|
+
get hasCodegen() {
|
|
73
|
+
return this.hasDirectory(CODEGEN_PATH);
|
|
74
|
+
}
|
|
75
|
+
resolve(path) {
|
|
76
|
+
return resolve(this.path, path);
|
|
77
|
+
}
|
|
78
|
+
relative(path) {
|
|
79
|
+
return relative(this.path, path);
|
|
80
|
+
}
|
|
81
|
+
async glob(pattern) {
|
|
82
|
+
pattern = this.resolve(pattern).replace(/\\/g, "/");
|
|
83
|
+
return await glob(pattern);
|
|
84
|
+
}
|
|
85
|
+
start(what) {
|
|
86
|
+
const progress = new Progress();
|
|
87
|
+
progress.startup(what, this);
|
|
88
|
+
return progress;
|
|
89
|
+
}
|
|
90
|
+
async lastModified(...paths) {
|
|
91
|
+
return this.lastModifiedAbsolute(paths.map((p) => this.resolve(p)));
|
|
92
|
+
}
|
|
93
|
+
async lastModifiedAbsolute(paths) {
|
|
94
|
+
let mtime = 0;
|
|
95
|
+
await Promise.all(
|
|
96
|
+
paths.map(async (p) => {
|
|
97
|
+
const stats = await ignoreError("ENOENT", async () => await stat(p));
|
|
98
|
+
if (!stats) {
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
let thisMtime;
|
|
102
|
+
if (stats.isDirectory()) {
|
|
103
|
+
const paths2 = (await readdir(p)).map((p2) => resolve(p, p2));
|
|
104
|
+
thisMtime = await this.lastModifiedAbsolute(paths2);
|
|
105
|
+
} else {
|
|
106
|
+
thisMtime = stats.mtimeMs;
|
|
107
|
+
}
|
|
108
|
+
if (thisMtime > mtime) {
|
|
109
|
+
mtime = thisMtime;
|
|
110
|
+
}
|
|
111
|
+
})
|
|
112
|
+
);
|
|
113
|
+
return mtime;
|
|
114
|
+
}
|
|
115
|
+
get dependencies() {
|
|
116
|
+
let result = Array();
|
|
117
|
+
for (const type of ["dependencies", "optionalDependencies", "devDependencies", "peerDependencies"]) {
|
|
118
|
+
if (typeof this.json[type] === "object" && this.json[type] !== null) {
|
|
119
|
+
result = [...result, ...Object.keys(this.json[type])];
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
return [...new Set(result)];
|
|
123
|
+
}
|
|
124
|
+
get workspace() {
|
|
125
|
+
return Package.workspaceFor(this.path);
|
|
126
|
+
}
|
|
127
|
+
static set workingDir(wd) {
|
|
128
|
+
workingDir = wd;
|
|
129
|
+
}
|
|
130
|
+
static get workspace() {
|
|
131
|
+
return this.workspaceFor(workingDir);
|
|
132
|
+
}
|
|
133
|
+
static workspaceFor(cwd) {
|
|
134
|
+
if (!workspace) {
|
|
135
|
+
workspace = find(cwd, (pkg) => Array.isArray(pkg.json.workspaces));
|
|
136
|
+
}
|
|
137
|
+
return workspace;
|
|
138
|
+
}
|
|
139
|
+
static get tools() {
|
|
140
|
+
if (!tools) {
|
|
141
|
+
tools = new Package({ path: toolsPath });
|
|
142
|
+
}
|
|
143
|
+
return tools;
|
|
144
|
+
}
|
|
145
|
+
static findExport(name, type = "esm") {
|
|
146
|
+
return this.workspace.resolveImport(name, type);
|
|
147
|
+
}
|
|
148
|
+
resolveExport(name, type = "esm") {
|
|
149
|
+
if (!name.startsWith(".")) {
|
|
150
|
+
name = `./${name}`;
|
|
151
|
+
}
|
|
152
|
+
const exportDetail = this.exports?.[name];
|
|
153
|
+
if (exportDetail) {
|
|
154
|
+
const exp = findExportCondition(exportDetail, type);
|
|
155
|
+
if (exp) {
|
|
156
|
+
return this.resolve(exp);
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
if (name === ".") {
|
|
160
|
+
if (type === "esm" && this.json.module) {
|
|
161
|
+
return this.resolve(this.json.module);
|
|
162
|
+
}
|
|
163
|
+
if (this.json.main) {
|
|
164
|
+
return this.resolve(this.json.main);
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
throw new Error(`Cannot resolve export ${name} in package ${this.name}`);
|
|
168
|
+
}
|
|
169
|
+
resolveImport(name, type = "esm") {
|
|
170
|
+
const segments = name.split("/");
|
|
171
|
+
let subdir = segments.shift();
|
|
172
|
+
if (subdir.startsWith("@") && segments.length) {
|
|
173
|
+
subdir = `${subdir}/${segments.shift()}`;
|
|
174
|
+
}
|
|
175
|
+
let resolveIn = this.path;
|
|
176
|
+
while (true) {
|
|
177
|
+
if (isDirectory(resolve(resolveIn, "node_modules", subdir))) {
|
|
178
|
+
break;
|
|
179
|
+
}
|
|
180
|
+
const nextResolveIn = dirname(resolveIn);
|
|
181
|
+
if (nextResolveIn === resolveIn) {
|
|
182
|
+
throw new Error(`Cannot find module ${subdir} from ${this.path}`);
|
|
183
|
+
}
|
|
184
|
+
resolveIn = nextResolveIn;
|
|
185
|
+
}
|
|
186
|
+
const pkg = Package.forPath(resolve(resolveIn, "node_modules", subdir));
|
|
187
|
+
return pkg.resolveExport(segments.length ? segments.join("/") : ".", type);
|
|
188
|
+
}
|
|
189
|
+
hasFile(path) {
|
|
190
|
+
return !!this.#maybeStat(path)?.isFile();
|
|
191
|
+
}
|
|
192
|
+
hasDirectory(path) {
|
|
193
|
+
return !!this.#maybeStat(path)?.isDirectory();
|
|
194
|
+
}
|
|
195
|
+
async readFile(path) {
|
|
196
|
+
return readFile(this.resolve(path), "utf-8");
|
|
197
|
+
}
|
|
198
|
+
readFileSync(path) {
|
|
199
|
+
return readFileSync(this.resolve(path), "utf-8");
|
|
200
|
+
}
|
|
201
|
+
async writeFile(path, contents) {
|
|
202
|
+
await writeFile(this.resolve(path), `${contents}`);
|
|
203
|
+
}
|
|
204
|
+
async save() {
|
|
205
|
+
await this.writeFile(join(this.path, "package.json"), JSON.stringify(this.json, void 0, 4));
|
|
206
|
+
}
|
|
207
|
+
async readJson(path) {
|
|
208
|
+
const text = await this.readFile(path);
|
|
209
|
+
try {
|
|
210
|
+
return JSON.parse(text);
|
|
211
|
+
} catch (e) {
|
|
212
|
+
if (!(e instanceof Error)) {
|
|
213
|
+
e = new Error(`${e}`);
|
|
214
|
+
}
|
|
215
|
+
e.message = `Error parsing "${this.resolve(path)}": ${e.message}`;
|
|
216
|
+
}
|
|
217
|
+
return JSON.parse(await this.readFile(path));
|
|
218
|
+
}
|
|
219
|
+
async writeJson(path, value) {
|
|
220
|
+
await this.writeFile(path, JSON.stringify(value, void 0, 4));
|
|
221
|
+
}
|
|
222
|
+
static maybeForPath(path) {
|
|
223
|
+
function find2(path2) {
|
|
224
|
+
let result2 = packageForPath[path2];
|
|
225
|
+
if (result2 === void 0) {
|
|
226
|
+
if (existsSync(join(path2, "package.json"))) {
|
|
227
|
+
result2 = new Package({ path: path2 });
|
|
228
|
+
} else {
|
|
229
|
+
result2 = find2(dirname(path2));
|
|
230
|
+
}
|
|
231
|
+
packageForPath[path2] = result2;
|
|
232
|
+
}
|
|
233
|
+
return result2;
|
|
234
|
+
}
|
|
235
|
+
const result = find2(path);
|
|
236
|
+
return result ?? void 0;
|
|
237
|
+
}
|
|
238
|
+
static forPath(path) {
|
|
239
|
+
const result = this.maybeForPath(path);
|
|
240
|
+
if (result !== void 0) {
|
|
241
|
+
return result;
|
|
242
|
+
}
|
|
243
|
+
throw new Error(`Cannot find package.json for "${path}"`);
|
|
244
|
+
}
|
|
245
|
+
get aliases() {
|
|
246
|
+
if (this.#aliases !== void 0) {
|
|
247
|
+
return this.#aliases;
|
|
248
|
+
}
|
|
249
|
+
this.#aliases = {
|
|
250
|
+
...Package.maybeForPath(dirname(this.path))?.aliases,
|
|
251
|
+
...this.json.imports
|
|
252
|
+
};
|
|
253
|
+
return this.#aliases;
|
|
254
|
+
}
|
|
255
|
+
#maybeStat(path) {
|
|
256
|
+
return maybeStatSync(this.resolve(path));
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
let workingDir = ".";
|
|
260
|
+
let workspace;
|
|
261
|
+
let tools;
|
|
262
|
+
function find(startDir, selector) {
|
|
263
|
+
let pkg = new Package({ path: startDir });
|
|
264
|
+
while (!selector(pkg)) {
|
|
265
|
+
pkg = new Package({ path: dirname(pkg.path) });
|
|
266
|
+
}
|
|
267
|
+
return pkg;
|
|
268
|
+
}
|
|
269
|
+
function selectFormats(json) {
|
|
270
|
+
let esm, cjs;
|
|
271
|
+
if (json.type === "module") {
|
|
272
|
+
esm = true;
|
|
273
|
+
cjs = json.main !== void 0 && json.module !== void 0 || !!Object.values(json.exports ?? {}).find((exp) => exp.require);
|
|
274
|
+
} else {
|
|
275
|
+
cjs = true;
|
|
276
|
+
esm = !!json.module || !!Object.values(json.exports ?? {}).find((exp) => exp.import);
|
|
277
|
+
}
|
|
278
|
+
return { esm, cjs };
|
|
279
|
+
}
|
|
280
|
+
function findExportCondition(detail, type) {
|
|
281
|
+
if (type === "esm" && detail.import) {
|
|
282
|
+
let exp2 = detail.import;
|
|
283
|
+
if (exp2 && typeof exp2 !== "string") {
|
|
284
|
+
exp2 = findExportCondition(exp2, type);
|
|
285
|
+
}
|
|
286
|
+
if (exp2) {
|
|
287
|
+
return exp2;
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
let exp = detail.require ?? detail.node ?? detail.default;
|
|
291
|
+
if (exp && typeof exp !== "string") {
|
|
292
|
+
exp = findExportCondition(exp, type);
|
|
293
|
+
}
|
|
294
|
+
if (typeof exp === "string") {
|
|
295
|
+
return exp;
|
|
296
|
+
}
|
|
297
|
+
}
|
|
298
|
+
export {
|
|
299
|
+
CODEGEN_PATH,
|
|
300
|
+
CONFIG_PATH,
|
|
301
|
+
JsonNotFoundError,
|
|
302
|
+
Package
|
|
303
|
+
};
|
|
304
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3V0aWwvcGFja2FnZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IDIwMjItMjAyNCBNYXR0ZXIuanMgQXV0aG9yc1xuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcbiAqL1xuXG5pbXBvcnQgeyBleGlzdHNTeW5jLCByZWFkRmlsZVN5bmMsIHN0YXRTeW5jIH0gZnJvbSBcImZzXCI7XG5pbXBvcnQgeyByZWFkZGlyLCByZWFkRmlsZSwgc3RhdCwgd3JpdGVGaWxlIH0gZnJvbSBcImZzL3Byb21pc2VzXCI7XG5pbXBvcnQgeyBnbG9iIH0gZnJvbSBcImdsb2JcIjtcbmltcG9ydCB7IGRpcm5hbWUsIGpvaW4sIHJlbGF0aXZlLCByZXNvbHZlIH0gZnJvbSBcInBhdGhcIjtcbmltcG9ydCB7IG1heWJlU3RhdFN5bmMgfSBmcm9tIFwiLi4vdGVzdGluZy9maWxlcy5qc1wiO1xuaW1wb3J0IHsgaWdub3JlRXJyb3IsIGlnbm9yZUVycm9yU3luYyB9IGZyb20gXCIuL2Vycm9ycy5qc1wiO1xuaW1wb3J0IHsgUHJvZ3Jlc3MgfSBmcm9tIFwiLi9wcm9ncmVzcy5qc1wiO1xuaW1wb3J0IHsgdG9vbHNQYXRoIH0gZnJvbSBcIi4vdG9vbHMtcGF0aC5janNcIjtcblxuZXhwb3J0IGNsYXNzIEpzb25Ob3RGb3VuZEVycm9yIGV4dGVuZHMgRXJyb3Ige31cblxuZXhwb3J0IGNvbnN0IENPTkZJR19QQVRIID0gYHNyYy9idWlsZC5jb25maWcudHNgO1xuZXhwb3J0IGNvbnN0IENPREVHRU5fUEFUSCA9IGBjb2RlZ2VuYDtcblxuY29uc3QgcGFja2FnZUZvclBhdGggPSB7fSBhcyBSZWNvcmQ8c3RyaW5nLCBQYWNrYWdlIHwgdW5kZWZpbmVkIHwgbnVsbD47XG5cbmZ1bmN0aW9uIGZpbmRKc29uKGZpbGVuYW1lOiBzdHJpbmcsIHBhdGg6IHN0cmluZyA9IFwiLlwiLCB0aXRsZT86IHN0cmluZykge1xuICAgIHBhdGggPSByZXNvbHZlKHBhdGgpO1xuICAgIHdoaWxlICh0cnVlKSB7XG4gICAgICAgIGNvbnN0IGpzb24gPSBpZ25vcmVFcnJvclN5bmMoW1wiRU5PRU5UXCIsIFwiRU5PVERJUlwiXSwgKCkgPT5cbiAgICAgICAgICAgIEpTT04ucGFyc2UocmVhZEZpbGVTeW5jKHJlc29sdmUocGF0aCwgZmlsZW5hbWUpKS50b1N0cmluZygpKSxcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKGpzb24pIHtcbiAgICAgICAgICAgIGlmICh0aXRsZSA9PT0gdW5kZWZpbmVkIHx8IGpzb24ubmFtZSA9PT0gdGl0bGUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4geyByb290OiBwYXRoLCBqc29uIH07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgcGFyZW50ID0gZGlybmFtZShwYXRoKTtcbiAgICAgICAgaWYgKHBhcmVudCA9PT0gcGF0aCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEpzb25Ob3RGb3VuZEVycm9yKGBDb3VsZCBub3QgbG9jYXRlICR7dGl0bGUgPz8gZmlsZW5hbWV9YCk7XG4gICAgICAgIH1cbiAgICAgICAgcGF0aCA9IHBhcmVudDtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIGlzRGlyZWN0b3J5KHBhdGg6IHN0cmluZykge1xuICAgIHJldHVybiAhIWlnbm9yZUVycm9yU3luYyhcIkVOT0VOVFwiLCAoKSA9PiBzdGF0U3luYyhwYXRoKS5pc0RpcmVjdG9yeSgpKTtcbn1cblxuZXhwb3J0IGNsYXNzIFBhY2thZ2Uge1xuICAgIHBhdGg6IHN0cmluZztcbiAgICBqc29uOiBQYWNrYWdlSnNvbjtcbiAgICBzdXBwb3J0c0VzbTogYm9vbGVhbjtcbiAgICBzdXBwb3J0c0NqczogYm9vbGVhbjtcbiAgICBoYXNTcmM6IGJvb2xlYW47XG4gICAgaGFzVGVzdHM6IGJvb2xlYW47XG4gICAgaGFzQ29uZmlnOiBib29sZWFuO1xuICAgIGlzTGlicmFyeTogYm9vbGVhbjtcbiAgICAjYWxpYXNlcz86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG5cbiAgICBjb25zdHJ1Y3Rvcih7XG4gICAgICAgIHBhdGggPSBcIi5cIixcbiAgICAgICAgbmFtZSxcbiAgICB9OiB7XG4gICAgICAgIHBhdGg/OiBzdHJpbmc7XG4gICAgICAgIG5hbWU/OiBzdHJpbmc7XG4gICAgfSA9IHt9KSB7XG4gICAgICAgIGNvbnN0IHsgcm9vdCwganNvbiB9ID0gZmluZEpzb24oXCJwYWNrYWdlLmpzb25cIiwgcGF0aCwgbmFtZSk7XG4gICAgICAgIHRoaXMucGF0aCA9IHJvb3Q7XG4gICAgICAgIHRoaXMuanNvbiA9IGpzb247XG5cbiAgICAgICAgY29uc3QgeyBlc20sIGNqcyB9ID0gc2VsZWN0Rm9ybWF0cyh0aGlzLmpzb24pO1xuICAgICAgICB0aGlzLnN1cHBvcnRzRXNtID0gZXNtO1xuICAgICAgICB0aGlzLnN1cHBvcnRzQ2pzID0gY2pzO1xuXG4gICAgICAgIHRoaXMuaGFzU3JjID0gaXNEaXJlY3RvcnkodGhpcy5yZXNvbHZlKFwic3JjXCIpKTtcbiAgICAgICAgdGhpcy5oYXNUZXN0cyA9IGlzRGlyZWN0b3J5KHRoaXMucmVzb2x2ZShcInRlc3RcIikpO1xuXG4gICAgICAgIHRoaXMuaXNMaWJyYXJ5ID0gISEodGhpcy5qc29uLm1haW4gfHwgdGhpcy5qc29uLm1vZHVsZSB8fCB0aGlzLmpzb24uZXhwb3J0cyk7XG5cbiAgICAgICAgdGhpcy5oYXNDb25maWcgPSB0aGlzLmhhc0ZpbGUodGhpcy5yZXNvbHZlKENPTkZJR19QQVRIKSk7XG4gICAgfVxuXG4gICAgZ2V0IG5hbWUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmpzb24ubmFtZTtcbiAgICB9XG5cbiAgICBnZXQgZXhwb3J0cygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuanNvbi5leHBvcnRzO1xuICAgIH1cblxuICAgIGdldCBoYXNDb2RlZ2VuKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5oYXNEaXJlY3RvcnkoQ09ERUdFTl9QQVRIKTtcbiAgICB9XG5cbiAgICByZXNvbHZlKHBhdGg6IHN0cmluZykge1xuICAgICAgICByZXR1cm4gcmVzb2x2ZSh0aGlzLnBhdGgsIHBhdGgpO1xuICAgIH1cblxuICAgIHJlbGF0aXZlKHBhdGg6IHN0cmluZykge1xuICAgICAgICByZXR1cm4gcmVsYXRpdmUodGhpcy5wYXRoLCBwYXRoKTtcbiAgICB9XG5cbiAgICBhc3luYyBnbG9iKHBhdHRlcm46IHN0cmluZykge1xuICAgICAgICAvLyBHbG9iIG9ubHkgdW5kZXJzdGFuZHMgZm9yd2FyZC1zbGFzaCBhcyBzZXBhcmF0b3IgYmVjYXVzZSByZWFzb25zXG4gICAgICAgIHBhdHRlcm4gPSB0aGlzLnJlc29sdmUocGF0dGVybikucmVwbGFjZSgvXFxcXC9nLCBcIi9cIik7XG5cbiAgICAgICAgcmV0dXJuIGF3YWl0IGdsb2IocGF0dGVybik7XG4gICAgfVxuXG4gICAgc3RhcnQod2hhdDogc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IHByb2dyZXNzID0gbmV3IFByb2dyZXNzKCk7XG4gICAgICAgIHByb2dyZXNzLnN0YXJ0dXAod2hhdCwgdGhpcyk7XG4gICAgICAgIHJldHVybiBwcm9ncmVzcztcbiAgICB9XG5cbiAgICBhc3luYyBsYXN0TW9kaWZpZWQoLi4ucGF0aHM6IHN0cmluZ1tdKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmxhc3RNb2RpZmllZEFic29sdXRlKHBhdGhzLm1hcChwID0+IHRoaXMucmVzb2x2ZShwKSkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgYXN5bmMgbGFzdE1vZGlmaWVkQWJzb2x1dGUocGF0aHM6IHN0cmluZ1tdKSB7XG4gICAgICAgIGxldCBtdGltZSA9IDA7XG4gICAgICAgIGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgICAgICAgcGF0aHMubWFwKGFzeW5jIHAgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHN0YXRzID0gYXdhaXQgaWdub3JlRXJyb3IoXCJFTk9FTlRcIiwgYXN5bmMgKCkgPT4gYXdhaXQgc3RhdChwKSk7XG4gICAgICAgICAgICAgICAgaWYgKCFzdGF0cykge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgbGV0IHRoaXNNdGltZTtcbiAgICAgICAgICAgICAgICBpZiAoc3RhdHMuaXNEaXJlY3RvcnkoKSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBwYXRocyA9IChhd2FpdCByZWFkZGlyKHApKS5tYXAocDIgPT4gcmVzb2x2ZShwLCBwMikpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzTXRpbWUgPSBhd2FpdCB0aGlzLmxhc3RNb2RpZmllZEFic29sdXRlKHBhdGhzKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzTXRpbWUgPSBzdGF0cy5tdGltZU1zO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAodGhpc010aW1lID4gbXRpbWUpIHtcbiAgICAgICAgICAgICAgICAgICAgbXRpbWUgPSB0aGlzTXRpbWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSksXG4gICAgICAgICk7XG4gICAgICAgIHJldHVybiBtdGltZTtcbiAgICB9XG5cbiAgICBnZXQgZGVwZW5kZW5jaWVzKCkge1xuICAgICAgICBsZXQgcmVzdWx0ID0gQXJyYXk8c3RyaW5nPigpO1xuICAgICAgICBmb3IgKGNvbnN0IHR5cGUgb2YgW1wiZGVwZW5kZW5jaWVzXCIsIFwib3B0aW9uYWxEZXBlbmRlbmNpZXNcIiwgXCJkZXZEZXBlbmRlbmNpZXNcIiwgXCJwZWVyRGVwZW5kZW5jaWVzXCJdKSB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIHRoaXMuanNvblt0eXBlXSA9PT0gXCJvYmplY3RcIiAmJiB0aGlzLmpzb25bdHlwZV0gIT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICByZXN1bHQgPSBbLi4ucmVzdWx0LCAuLi5PYmplY3Qua2V5cyh0aGlzLmpzb25bdHlwZV0pXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gWy4uLm5ldyBTZXQocmVzdWx0KV07XG4gICAgfVxuXG4gICAgZ2V0IHdvcmtzcGFjZSgpIHtcbiAgICAgICAgcmV0dXJuIFBhY2thZ2Uud29ya3NwYWNlRm9yKHRoaXMucGF0aCk7XG4gICAgfVxuXG4gICAgc3RhdGljIHNldCB3b3JraW5nRGlyKHdkOiBzdHJpbmcpIHtcbiAgICAgICAgd29ya2luZ0RpciA9IHdkO1xuICAgIH1cblxuICAgIHN0YXRpYyBnZXQgd29ya3NwYWNlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy53b3Jrc3BhY2VGb3Iod29ya2luZ0Rpcik7XG4gICAgfVxuXG4gICAgc3RhdGljIHdvcmtzcGFjZUZvcihjd2Q6IHN0cmluZykge1xuICAgICAgICBpZiAoIXdvcmtzcGFjZSkge1xuICAgICAgICAgICAgd29ya3NwYWNlID0gZmluZChjd2QsIHBrZyA9PiBBcnJheS5pc0FycmF5KHBrZy5qc29uLndvcmtzcGFjZXMpKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gd29ya3NwYWNlO1xuICAgIH1cblxuICAgIHN0YXRpYyBnZXQgdG9vbHMoKSB7XG4gICAgICAgIGlmICghdG9vbHMpIHtcbiAgICAgICAgICAgIHRvb2xzID0gbmV3IFBhY2thZ2UoeyBwYXRoOiB0b29sc1BhdGggfSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRvb2xzO1xuICAgIH1cblxuICAgIHN0YXRpYyBmaW5kRXhwb3J0KG5hbWU6IHN0cmluZywgdHlwZTogXCJjanNcIiB8IFwiZXNtXCIgPSBcImVzbVwiKSB7XG4gICAgICAgIHJldHVybiB0aGlzLndvcmtzcGFjZS5yZXNvbHZlSW1wb3J0KG5hbWUsIHR5cGUpO1xuICAgIH1cblxuICAgIHJlc29sdmVFeHBvcnQobmFtZTogc3RyaW5nLCB0eXBlOiBcImNqc1wiIHwgXCJlc21cIiA9IFwiZXNtXCIpIHtcbiAgICAgICAgaWYgKCFuYW1lLnN0YXJ0c1dpdGgoXCIuXCIpKSB7XG4gICAgICAgICAgICBuYW1lID0gYC4vJHtuYW1lfWA7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZXhwb3J0RGV0YWlsID0gdGhpcy5leHBvcnRzPy5bbmFtZV07XG5cbiAgICAgICAgaWYgKGV4cG9ydERldGFpbCkge1xuICAgICAgICAgICAgY29uc3QgZXhwID0gZmluZEV4cG9ydENvbmRpdGlvbihleHBvcnREZXRhaWwsIHR5cGUpO1xuICAgICAgICAgICAgaWYgKGV4cCkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnJlc29sdmUoZXhwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChuYW1lID09PSBcIi5cIikge1xuICAgICAgICAgICAgaWYgKHR5cGUgPT09IFwiZXNtXCIgJiYgdGhpcy5qc29uLm1vZHVsZSkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnJlc29sdmUodGhpcy5qc29uLm1vZHVsZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAodGhpcy5qc29uLm1haW4pIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5yZXNvbHZlKHRoaXMuanNvbi5tYWluKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IHJlc29sdmUgZXhwb3J0ICR7bmFtZX0gaW4gcGFja2FnZSAke3RoaXMubmFtZX1gKTtcbiAgICB9XG5cbiAgICByZXNvbHZlSW1wb3J0KG5hbWU6IHN0cmluZywgdHlwZTogXCJjanNcIiB8IFwiZXNtXCIgPSBcImVzbVwiKSB7XG4gICAgICAgIGNvbnN0IHNlZ21lbnRzID0gbmFtZS5zcGxpdChcIi9cIik7XG4gICAgICAgIGxldCBzdWJkaXIgPSBzZWdtZW50cy5zaGlmdCgpIGFzIHN0cmluZztcbiAgICAgICAgaWYgKHN1YmRpci5zdGFydHNXaXRoKFwiQFwiKSAmJiBzZWdtZW50cy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHN1YmRpciA9IGAke3N1YmRpcn0vJHtzZWdtZW50cy5zaGlmdCgpfWA7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgcmVzb2x2ZUluID0gdGhpcy5wYXRoO1xuICAgICAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgICAgICAgaWYgKGlzRGlyZWN0b3J5KHJlc29sdmUocmVzb2x2ZUluLCBcIm5vZGVfbW9kdWxlc1wiLCBzdWJkaXIpKSkge1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgbmV4dFJlc29sdmVJbiA9IGRpcm5hbWUocmVzb2x2ZUluKTtcbiAgICAgICAgICAgIGlmIChuZXh0UmVzb2x2ZUluID09PSByZXNvbHZlSW4pIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENhbm5vdCBmaW5kIG1vZHVsZSAke3N1YmRpcn0gZnJvbSAke3RoaXMucGF0aH1gKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJlc29sdmVJbiA9IG5leHRSZXNvbHZlSW47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBwa2cgPSBQYWNrYWdlLmZvclBhdGgocmVzb2x2ZShyZXNvbHZlSW4sIFwibm9kZV9tb2R1bGVzXCIsIHN1YmRpcikpO1xuICAgICAgICByZXR1cm4gcGtnLnJlc29sdmVFeHBvcnQoc2VnbWVudHMubGVuZ3RoID8gc2VnbWVudHMuam9pbihcIi9cIikgOiBcIi5cIiwgdHlwZSk7XG4gICAgfVxuXG4gICAgaGFzRmlsZShwYXRoOiBzdHJpbmcpIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy4jbWF5YmVTdGF0KHBhdGgpPy5pc0ZpbGUoKTtcbiAgICB9XG5cbiAgICBoYXNEaXJlY3RvcnkocGF0aDogc3RyaW5nKSB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuI21heWJlU3RhdChwYXRoKT8uaXNEaXJlY3RvcnkoKTtcbiAgICB9XG5cbiAgICBhc3luYyByZWFkRmlsZShwYXRoOiBzdHJpbmcpIHtcbiAgICAgICAgcmV0dXJuIHJlYWRGaWxlKHRoaXMucmVzb2x2ZShwYXRoKSwgXCJ1dGYtOFwiKTtcbiAgICB9XG5cbiAgICByZWFkRmlsZVN5bmMocGF0aDogc3RyaW5nKSB7XG4gICAgICAgIHJldHVybiByZWFkRmlsZVN5bmModGhpcy5yZXNvbHZlKHBhdGgpLCBcInV0Zi04XCIpO1xuICAgIH1cblxuICAgIGFzeW5jIHdyaXRlRmlsZShwYXRoOiBzdHJpbmcsIGNvbnRlbnRzOiB1bmtub3duKSB7XG4gICAgICAgIGF3YWl0IHdyaXRlRmlsZSh0aGlzLnJlc29sdmUocGF0aCksIGAke2NvbnRlbnRzfWApO1xuICAgIH1cblxuICAgIGFzeW5jIHNhdmUoKSB7XG4gICAgICAgIGF3YWl0IHRoaXMud3JpdGVGaWxlKGpvaW4odGhpcy5wYXRoLCBcInBhY2thZ2UuanNvblwiKSwgSlNPTi5zdHJpbmdpZnkodGhpcy5qc29uLCB1bmRlZmluZWQsIDQpKTtcbiAgICB9XG5cbiAgICBhc3luYyByZWFkSnNvbihwYXRoOiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgdGV4dCA9IGF3YWl0IHRoaXMucmVhZEZpbGUocGF0aCk7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICByZXR1cm4gSlNPTi5wYXJzZSh0ZXh0KTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgaWYgKCEoZSBpbnN0YW5jZW9mIEVycm9yKSkge1xuICAgICAgICAgICAgICAgIGUgPSBuZXcgRXJyb3IoYCR7ZX1gKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIChlIGFzIEVycm9yKS5tZXNzYWdlID0gYEVycm9yIHBhcnNpbmcgXCIke3RoaXMucmVzb2x2ZShwYXRoKX1cIjogJHsoZSBhcyBFcnJvcikubWVzc2FnZX1gO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBKU09OLnBhcnNlKGF3YWl0IHRoaXMucmVhZEZpbGUocGF0aCkpO1xuICAgIH1cblxuICAgIGFzeW5jIHdyaXRlSnNvbihwYXRoOiBzdHJpbmcsIHZhbHVlOiB7fSkge1xuICAgICAgICBhd2FpdCB0aGlzLndyaXRlRmlsZShwYXRoLCBKU09OLnN0cmluZ2lmeSh2YWx1ZSwgdW5kZWZpbmVkLCA0KSk7XG4gICAgfVxuXG4gICAgc3RhdGljIG1heWJlRm9yUGF0aChwYXRoOiBzdHJpbmcpIHtcbiAgICAgICAgZnVuY3Rpb24gZmluZChwYXRoOiBzdHJpbmcpOiBQYWNrYWdlIHwgbnVsbCB7XG4gICAgICAgICAgICBsZXQgcmVzdWx0ID0gcGFja2FnZUZvclBhdGhbcGF0aF07XG4gICAgICAgICAgICBpZiAocmVzdWx0ID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICBpZiAoZXhpc3RzU3luYyhqb2luKHBhdGgsIFwicGFja2FnZS5qc29uXCIpKSkge1xuICAgICAgICAgICAgICAgICAgICByZXN1bHQgPSBuZXcgUGFja2FnZSh7IHBhdGggfSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gZmluZChkaXJuYW1lKHBhdGgpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcGFja2FnZUZvclBhdGhbcGF0aF0gPSByZXN1bHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcmVzdWx0ID0gZmluZChwYXRoKTtcblxuICAgICAgICByZXR1cm4gcmVzdWx0ID8/IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBzdGF0aWMgZm9yUGF0aChwYXRoOiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5tYXliZUZvclBhdGgocGF0aCk7XG4gICAgICAgIGlmIChyZXN1bHQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgfVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENhbm5vdCBmaW5kIHBhY2thZ2UuanNvbiBmb3IgXCIke3BhdGh9XCJgKTtcbiAgICB9XG5cbiAgICBnZXQgYWxpYXNlcygpOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+IHtcbiAgICAgICAgaWYgKHRoaXMuI2FsaWFzZXMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuI2FsaWFzZXM7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLiNhbGlhc2VzID0ge1xuICAgICAgICAgICAgLi4uUGFja2FnZS5tYXliZUZvclBhdGgoZGlybmFtZSh0aGlzLnBhdGgpKT8uYWxpYXNlcyxcbiAgICAgICAgICAgIC4uLnRoaXMuanNvbi5pbXBvcnRzLFxuICAgICAgICB9O1xuXG4gICAgICAgIHJldHVybiB0aGlzLiNhbGlhc2VzO1xuICAgIH1cblxuICAgICNtYXliZVN0YXQocGF0aDogc3RyaW5nKSB7XG4gICAgICAgIHJldHVybiBtYXliZVN0YXRTeW5jKHRoaXMucmVzb2x2ZShwYXRoKSk7XG4gICAgfVxufVxuXG5leHBvcnQgdHlwZSBQYWNrYWdlSnNvbiA9IHtcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgdmVyc2lvbjogc3RyaW5nO1xuICAgIGltcG9ydHM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gICAgW2tleTogc3RyaW5nXTogYW55O1xufTtcblxubGV0IHdvcmtpbmdEaXIgPSBcIi5cIjtcbmxldCB3b3Jrc3BhY2U6IFBhY2thZ2UgfCB1bmRlZmluZWQ7XG5sZXQgdG9vbHM6IFBhY2thZ2UgfCB1bmRlZmluZWQ7XG5cbmZ1bmN0aW9uIGZpbmQoc3RhcnREaXI6IHN0cmluZywgc2VsZWN0b3I6IChwa2c6IFBhY2thZ2UpID0+IGJvb2xlYW4pOiBQYWNrYWdlIHtcbiAgICBsZXQgcGtnID0gbmV3IFBhY2thZ2UoeyBwYXRoOiBzdGFydERpciB9KTtcbiAgICB3aGlsZSAoIXNlbGVjdG9yKHBrZykpIHtcbiAgICAgICAgcGtnID0gbmV3IFBhY2thZ2UoeyBwYXRoOiBkaXJuYW1lKHBrZy5wYXRoKSB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHBrZztcbn1cblxuZnVuY3Rpb24gc2VsZWN0Rm9ybWF0cyhqc29uOiBhbnkpIHtcbiAgICBsZXQgZXNtOiBib29sZWFuLCBjanM6IGJvb2xlYW47XG5cbiAgICBpZiAoanNvbi50eXBlID09PSBcIm1vZHVsZVwiKSB7XG4gICAgICAgIGVzbSA9IHRydWU7XG4gICAgICAgIGNqcyA9XG4gICAgICAgICAgICAoanNvbi5tYWluICE9PSB1bmRlZmluZWQgJiYganNvbi5tb2R1bGUgIT09IHVuZGVmaW5lZCkgfHxcbiAgICAgICAgICAgICEhT2JqZWN0LnZhbHVlcyhqc29uLmV4cG9ydHMgPz8ge30pLmZpbmQoKGV4cDogYW55KSA9PiBleHAucmVxdWlyZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgY2pzID0gdHJ1ZTtcbiAgICAgICAgZXNtID0gISFqc29uLm1vZHVsZSB8fCAhIU9iamVjdC52YWx1ZXMoanNvbi5leHBvcnRzID8/IHt9KS5maW5kKChleHA6IGFueSkgPT4gZXhwLmltcG9ydCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHsgZXNtLCBjanMgfTtcbn1cblxuZnVuY3Rpb24gZmluZEV4cG9ydENvbmRpdGlvbihkZXRhaWw6IFJlY29yZDxzdHJpbmcsIGFueT4sIHR5cGU6IFwiZXNtXCIgfCBcImNqc1wiKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAodHlwZSA9PT0gXCJlc21cIiAmJiBkZXRhaWwuaW1wb3J0KSB7XG4gICAgICAgIGxldCBleHAgPSBkZXRhaWwuaW1wb3J0O1xuICAgICAgICBpZiAoZXhwICYmIHR5cGVvZiBleHAgIT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgICAgIGV4cCA9IGZpbmRFeHBvcnRDb25kaXRpb24oZXhwLCB0eXBlKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZXhwKSB7XG4gICAgICAgICAgICByZXR1cm4gZXhwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbGV0IGV4cCA9IGRldGFpbC5yZXF1aXJlID8/IGRldGFpbC5ub2RlID8/IGRldGFpbC5kZWZhdWx0O1xuICAgIGlmIChleHAgJiYgdHlwZW9mIGV4cCAhPT0gXCJzdHJpbmdcIikge1xuICAgICAgICBleHAgPSBmaW5kRXhwb3J0Q29uZGl0aW9uKGV4cCwgdHlwZSk7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBleHAgPT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgcmV0dXJuIGV4cDtcbiAgICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUEsU0FBUyxZQUFZLGNBQWMsZ0JBQWdCO0FBQ25ELFNBQVMsU0FBUyxVQUFVLE1BQU0saUJBQWlCO0FBQ25ELFNBQVMsWUFBWTtBQUNyQixTQUFTLFNBQVMsTUFBTSxVQUFVLGVBQWU7QUFDakQsU0FBUyxxQkFBcUI7QUFDOUIsU0FBUyxhQUFhLHVCQUF1QjtBQUM3QyxTQUFTLGdCQUFnQjtBQUN6QixTQUFTLGlCQUFpQjtBQUVuQixNQUFNLDBCQUEwQixNQUFNO0FBQUM7QUFFdkMsTUFBTSxjQUFjO0FBQ3BCLE1BQU0sZUFBZTtBQUU1QixNQUFNLGlCQUFpQixDQUFDO0FBRXhCLFNBQVMsU0FBUyxVQUFrQixPQUFlLEtBQUssT0FBZ0I7QUFDcEUsU0FBTyxRQUFRLElBQUk7QUFDbkIsU0FBTyxNQUFNO0FBQ1QsVUFBTSxPQUFPO0FBQUEsTUFBZ0IsQ0FBQyxVQUFVLFNBQVM7QUFBQSxNQUFHLE1BQ2hELEtBQUssTUFBTSxhQUFhLFFBQVEsTUFBTSxRQUFRLENBQUMsRUFBRSxTQUFTLENBQUM7QUFBQSxJQUMvRDtBQUNBLFFBQUksTUFBTTtBQUNOLFVBQUksVUFBVSxVQUFhLEtBQUssU0FBUyxPQUFPO0FBQzVDLGVBQU8sRUFBRSxNQUFNLE1BQU0sS0FBSztBQUFBLE1BQzlCO0FBQUEsSUFDSjtBQUNBLFVBQU0sU0FBUyxRQUFRLElBQUk7QUFDM0IsUUFBSSxXQUFXLE1BQU07QUFDakIs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
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/util/package.ts"],
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": ["paths", "find", "path", "result", "exp"]
|
|
6
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2024 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { Package } from "./package.js";
|
|
7
|
+
export declare class Progress {
|
|
8
|
+
#private;
|
|
9
|
+
status: Progress.Status;
|
|
10
|
+
constructor();
|
|
11
|
+
emphasize(text: unknown): string;
|
|
12
|
+
deemphasize(text: unknown): string;
|
|
13
|
+
skip(why: string, pkg: Package): void;
|
|
14
|
+
startup(what: string, pkgOrOverwrite?: Package | boolean): void;
|
|
15
|
+
update(text: string, extra?: string): void;
|
|
16
|
+
success(text: string): void;
|
|
17
|
+
failure(text: string): void;
|
|
18
|
+
info(label: string, value?: any): void;
|
|
19
|
+
shutdown(): void;
|
|
20
|
+
refresh(): void;
|
|
21
|
+
run(what: string, fn: () => void | Promise<void>): Promise<void>;
|
|
22
|
+
}
|
|
23
|
+
export declare namespace Progress {
|
|
24
|
+
enum Status {
|
|
25
|
+
Startup = "startup",
|
|
26
|
+
Ongoing = "ongoing",
|
|
27
|
+
Success = "success",
|
|
28
|
+
Failure = "failure"
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=progress.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"progress.d.ts","sourceRoot":"","sources":["../../../src/util/progress.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAuEvC,qBAAa,QAAQ;;IACjB,MAAM,kBAA2B;;IAUjC,SAAS,CAAC,IAAI,EAAE,OAAO;IAIvB,WAAW,CAAC,IAAI,EAAE,OAAO;IAIzB,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO;IAI9B,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,OAAO,GAAG,OAAO;IAcxD,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM;IAsBnC,OAAO,CAAC,IAAI,EAAE,MAAM;IAMpB,OAAO,CAAC,IAAI,EAAE,MAAM;IAMpB,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG;IAO/B,QAAQ;IAQR,OAAO;IAuBD,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;CAsBzD;AAED,yBAAiB,QAAQ,CAAC;IACtB,KAAY,MAAM;QACd,OAAO,YAAY;QACnB,OAAO,YAAY;QACnB,OAAO,YAAY;QACnB,OAAO,YAAY;KACtB;CACJ"}
|
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2024 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import colors from "ansi-colors";
|
|
7
|
+
import { stderr, stdout } from "process";
|
|
8
|
+
const CLEAR = "\x1B[K";
|
|
9
|
+
const SPINNER = "\u25D0\u25D3\u25D1\u25D2";
|
|
10
|
+
const SPINNER_INTERVAL = 100;
|
|
11
|
+
function packageIdentity(pkg) {
|
|
12
|
+
let identity = colors.bold(pkg.json.name);
|
|
13
|
+
if (pkg.json.version) {
|
|
14
|
+
identity = `${identity}@${pkg.json.version}`;
|
|
15
|
+
}
|
|
16
|
+
return identity;
|
|
17
|
+
}
|
|
18
|
+
const writeStatus = (() => {
|
|
19
|
+
let lastStatus;
|
|
20
|
+
let needNewline = false;
|
|
21
|
+
function intercept(stream) {
|
|
22
|
+
const actualWrite = stream.write;
|
|
23
|
+
stream.write = (payload, ...params) => {
|
|
24
|
+
if (lastStatus) {
|
|
25
|
+
actualWrite.call(stream, "\n");
|
|
26
|
+
lastStatus = void 0;
|
|
27
|
+
}
|
|
28
|
+
if (!payload.length) {
|
|
29
|
+
return true;
|
|
30
|
+
}
|
|
31
|
+
needNewline = // Update ends in newline
|
|
32
|
+
payload[payload.length - 1] === "\n" && // Update ends in carriage return
|
|
33
|
+
payload[payload.length - 1] !== "\r";
|
|
34
|
+
return actualWrite.call(stream, payload, ...params);
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
intercept(stdout);
|
|
38
|
+
intercept(stderr);
|
|
39
|
+
return function writeStatus2(text, willOverwrite = false) {
|
|
40
|
+
const columns = process.stdout.columns;
|
|
41
|
+
if (willOverwrite && columns !== void 0 && text.length > columns - 2) {
|
|
42
|
+
text = filterAnsi(text, columns - 2) + "\u2026";
|
|
43
|
+
}
|
|
44
|
+
text += willOverwrite ? "\r" : "\n";
|
|
45
|
+
if (text === lastStatus) {
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
if (lastStatus) {
|
|
49
|
+
lastStatus = void 0;
|
|
50
|
+
stdout.write(CLEAR);
|
|
51
|
+
} else if (needNewline && !text.startsWith("\n")) {
|
|
52
|
+
stdout.write("\n");
|
|
53
|
+
}
|
|
54
|
+
stdout.write(text);
|
|
55
|
+
lastStatus = text;
|
|
56
|
+
};
|
|
57
|
+
})();
|
|
58
|
+
class Progress {
|
|
59
|
+
status = Progress.Status.Startup;
|
|
60
|
+
#ongoingText;
|
|
61
|
+
#start;
|
|
62
|
+
#spinner = "\u29D7";
|
|
63
|
+
#refreshInterval;
|
|
64
|
+
#spinnerPosition = 0;
|
|
65
|
+
#spinnerWindow;
|
|
66
|
+
constructor() {
|
|
67
|
+
}
|
|
68
|
+
emphasize(text) {
|
|
69
|
+
return colors.bold(`${text}`);
|
|
70
|
+
}
|
|
71
|
+
deemphasize(text) {
|
|
72
|
+
return colors.dim(`${text}`);
|
|
73
|
+
}
|
|
74
|
+
skip(why, pkg) {
|
|
75
|
+
stdout.write(colors.dim(`Skip ${packageIdentity(pkg)}: ${why}
|
|
76
|
+
|
|
77
|
+
`));
|
|
78
|
+
}
|
|
79
|
+
startup(what, pkgOrOverwrite) {
|
|
80
|
+
if (process.stdout.isTTY) {
|
|
81
|
+
this.#updateSpinner();
|
|
82
|
+
this.#refreshInterval = setInterval(this.refresh.bind(this), SPINNER_INTERVAL);
|
|
83
|
+
}
|
|
84
|
+
this.status = Progress.Status.Startup;
|
|
85
|
+
if (pkgOrOverwrite === void 0 || typeof pkgOrOverwrite === "boolean") {
|
|
86
|
+
writeStatus(what, pkgOrOverwrite ?? true);
|
|
87
|
+
} else {
|
|
88
|
+
writeStatus(`${what} ${packageIdentity(pkgOrOverwrite)}`);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
update(text, extra) {
|
|
92
|
+
this.status = Progress.Status.Ongoing;
|
|
93
|
+
let duration;
|
|
94
|
+
if (this.#start === void 0) {
|
|
95
|
+
this.#start = (/* @__PURE__ */ new Date()).getTime();
|
|
96
|
+
duration = "";
|
|
97
|
+
} else {
|
|
98
|
+
duration = this.#duration;
|
|
99
|
+
}
|
|
100
|
+
extra = extra === void 0 ? "" : ` ${extra}`;
|
|
101
|
+
this.#ongoingText = `${text} ${duration}${extra}`;
|
|
102
|
+
this.#writeOngoing();
|
|
103
|
+
}
|
|
104
|
+
#writeOngoing() {
|
|
105
|
+
if (!this.#ongoingText) {
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
108
|
+
writeStatus(` ${colors.yellow(this.#spinner)} ${this.#ongoingText}`, true);
|
|
109
|
+
}
|
|
110
|
+
success(text) {
|
|
111
|
+
this.status = Progress.Status.Success;
|
|
112
|
+
writeStatus(` ${colors.green("\u2713")} ${text} ${this.#duration}`);
|
|
113
|
+
this.#start = this.#ongoingText = void 0;
|
|
114
|
+
}
|
|
115
|
+
failure(text) {
|
|
116
|
+
this.status = Progress.Status.Failure;
|
|
117
|
+
writeStatus(` ${colors.redBright("\u2717")} ${text} ${this.#duration}`);
|
|
118
|
+
this.#start = this.#ongoingText = void 0;
|
|
119
|
+
}
|
|
120
|
+
info(label, value) {
|
|
121
|
+
if (value) {
|
|
122
|
+
label = `${colors.dim(label)} ${value}`;
|
|
123
|
+
}
|
|
124
|
+
writeStatus(` ${colors.dim("\u2023")} ${label}`);
|
|
125
|
+
}
|
|
126
|
+
shutdown() {
|
|
127
|
+
if (this.#refreshInterval) {
|
|
128
|
+
clearInterval(this.#refreshInterval);
|
|
129
|
+
this.#refreshInterval = void 0;
|
|
130
|
+
}
|
|
131
|
+
writeStatus("");
|
|
132
|
+
}
|
|
133
|
+
refresh() {
|
|
134
|
+
if (this.#updateSpinner()) {
|
|
135
|
+
this.#writeOngoing();
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
#updateSpinner() {
|
|
139
|
+
if (!stdout.isTTY) {
|
|
140
|
+
return false;
|
|
141
|
+
}
|
|
142
|
+
const window = Math.floor((/* @__PURE__ */ new Date()).getTime() / SPINNER_INTERVAL);
|
|
143
|
+
if (this.#spinnerWindow === window) {
|
|
144
|
+
return false;
|
|
145
|
+
}
|
|
146
|
+
this.#spinnerWindow = window;
|
|
147
|
+
this.#spinnerPosition = (this.#spinnerPosition + 1) % SPINNER.length;
|
|
148
|
+
this.#spinner = SPINNER[this.#spinnerPosition];
|
|
149
|
+
return true;
|
|
150
|
+
}
|
|
151
|
+
async run(what, fn) {
|
|
152
|
+
this.update(what);
|
|
153
|
+
try {
|
|
154
|
+
await fn();
|
|
155
|
+
} catch (e) {
|
|
156
|
+
this.failure(what);
|
|
157
|
+
throw e;
|
|
158
|
+
}
|
|
159
|
+
this.success(what);
|
|
160
|
+
}
|
|
161
|
+
get #duration() {
|
|
162
|
+
let ms = this.#start ? (/* @__PURE__ */ new Date()).getTime() - this.#start : 0;
|
|
163
|
+
if (ms < 1e3) {
|
|
164
|
+
ms = Math.round(ms / 10) / 100;
|
|
165
|
+
} else if (ms < 1e4) {
|
|
166
|
+
ms = Math.round(ms / 100) / 10;
|
|
167
|
+
} else {
|
|
168
|
+
ms = Math.trunc(ms / 1e3);
|
|
169
|
+
}
|
|
170
|
+
return colors.dim.yellow(`(${ms}s)`);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
((Progress2) => {
|
|
174
|
+
let Status;
|
|
175
|
+
((Status2) => {
|
|
176
|
+
Status2["Startup"] = "startup";
|
|
177
|
+
Status2["Ongoing"] = "ongoing";
|
|
178
|
+
Status2["Success"] = "success";
|
|
179
|
+
Status2["Failure"] = "failure";
|
|
180
|
+
})(Status = Progress2.Status || (Progress2.Status = {}));
|
|
181
|
+
})(Progress || (Progress = {}));
|
|
182
|
+
function filterAnsi(str, len) {
|
|
183
|
+
if (!len || len < 10) return str;
|
|
184
|
+
let count = 0, esc = false, longesc = false;
|
|
185
|
+
let outp = true;
|
|
186
|
+
return str.split("").filter(function(c) {
|
|
187
|
+
if (esc && !longesc && c == "[") longesc = true;
|
|
188
|
+
if (c == "\x1B") esc = true;
|
|
189
|
+
outp = count < len || esc;
|
|
190
|
+
if (!esc && !longesc) count++;
|
|
191
|
+
if (esc && !longesc && c != "\x1B") esc = false;
|
|
192
|
+
if (longesc && c != "[" && c >= "@" && c <= "~") {
|
|
193
|
+
esc = false;
|
|
194
|
+
longesc = false;
|
|
195
|
+
}
|
|
196
|
+
return outp;
|
|
197
|
+
}).join("");
|
|
198
|
+
}
|
|
199
|
+
export {
|
|
200
|
+
Progress
|
|
201
|
+
};
|
|
202
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3V0aWwvcHJvZ3Jlc3MudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCAyMDIyLTIwMjQgTWF0dGVyLmpzIEF1dGhvcnNcbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG4gKi9cblxuaW1wb3J0IGNvbG9ycyBmcm9tIFwiYW5zaS1jb2xvcnNcIjtcbmltcG9ydCB7IHN0ZGVyciwgc3Rkb3V0IH0gZnJvbSBcInByb2Nlc3NcIjtcbmltcG9ydCB7IFBhY2thZ2UgfSBmcm9tIFwiLi9wYWNrYWdlLmpzXCI7XG5cbmNvbnN0IENMRUFSID0gXCJcXHgxYltLXCI7XG5jb25zdCBTUElOTkVSID0gXCJcdTI1RDBcdTI1RDNcdTI1RDFcdTI1RDJcIjsgLy9cIlx1Mjg1Q1x1MjgxNFx1MjgyMlx1MjhBM1wiOyAvL1tcIlx1MjZBQlx1RkUwRVwiLCBcIlx1MjZBQVx1RkUwRVwiXTsgXCJcdTI4NDhcdTI4MTRcdTI4MjJcdTI4ODFcIjtcbmNvbnN0IFNQSU5ORVJfSU5URVJWQUwgPSAxMDA7XG5cbmZ1bmN0aW9uIHBhY2thZ2VJZGVudGl0eShwa2c6IFBhY2thZ2UpIHtcbiAgICBsZXQgaWRlbnRpdHkgPSBjb2xvcnMuYm9sZChwa2cuanNvbi5uYW1lKTtcbiAgICBpZiAocGtnLmpzb24udmVyc2lvbikge1xuICAgICAgICBpZGVudGl0eSA9IGAke2lkZW50aXR5fUAke3BrZy5qc29uLnZlcnNpb259YDtcbiAgICB9XG4gICAgcmV0dXJuIGlkZW50aXR5O1xufVxuXG4vKipcbiAqIEludGVyY2VwdCB3cml0ZXMgdG8gc3RkZXJyIGFuZCBzdGRvdXQgc28gd2UgY2FuIGVuc3VyZSBvdXIgdXBkYXRlcyBhcHBlYXIgb24gZGlmZmVyZW50IGxpbmVzIGZyb20gb3RoZXIgb3V0cHV0LlxuICovXG5jb25zdCB3cml0ZVN0YXR1cyA9ICgoKSA9PiB7XG4gICAgbGV0IGxhc3RTdGF0dXM6IHVuZGVmaW5lZCB8IHN0cmluZztcbiAgICBsZXQgbmVlZE5ld2xpbmUgPSBmYWxzZTtcblxuICAgIGZ1bmN0aW9uIGludGVyY2VwdChzdHJlYW06IE5vZGVKUy5Xcml0ZVN0cmVhbSkge1xuICAgICAgICBjb25zdCBhY3R1YWxXcml0ZSA9IHN0cmVhbS53cml0ZTtcbiAgICAgICAgc3RyZWFtLndyaXRlID0gKHBheWxvYWQ6IFVpbnQ4QXJyYXkgfCBzdHJpbmcsIC4uLnBhcmFtczogYW55W10pID0+IHtcbiAgICAgICAgICAgIGlmIChsYXN0U3RhdHVzKSB7XG4gICAgICAgICAgICAgICAgYWN0dWFsV3JpdGUuY2FsbChzdHJlYW0sIFwiXFxuXCIpO1xuICAgICAgICAgICAgICAgIGxhc3RTdGF0dXMgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmICghcGF5bG9hZC5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gUmVxdWlyZSBhIG5ld2xpbmUgZm9yIHN0YXR1cyB1cGRhdGVzIGFueSB0aW1lIHRoZSBjdXJzb3IgZG9lcyBub3QgZW5kIGF0IHRoZSBiZWdpbm5pbmcgb2YgYSBsaW5lXG4gICAgICAgICAgICBuZWVkTmV3bGluZSA9XG4gICAgICAgICAgICAgICAgLy8gVXBkYXRlIGVuZHMgaW4gbmV3bGluZVxuICAgICAgICAgICAgICAgIHBheWxvYWRbcGF5bG9hZC5sZW5ndGggLSAxXSA9PT0gXCJcXG5cIiAmJlxuICAgICAgICAgICAgICAgIC8vIFVwZGF0ZSBlbmRzIGluIGNhcnJpYWdlIHJldHVyblxuICAgICAgICAgICAgICAgIHBheWxvYWRbcGF5bG9hZC5sZW5ndGggLSAxXSAhPT0gXCJcXHJcIjtcblxuICAgICAgICAgICAgcmV0dXJuIGFjdHVhbFdyaXRlLmNhbGwoc3RyZWFtLCBwYXlsb2FkLCAuLi5wYXJhbXMpO1xuICAgICAgICB9O1xuICAgIH1cblxuICAgIGludGVyY2VwdChzdGRvdXQpO1xuICAgIGludGVyY2VwdChzdGRlcnIpO1xuXG4gICAgcmV0dXJuIGZ1bmN0aW9uIHdyaXRlU3RhdHVzKHRleHQ6IHN0cmluZywgd2lsbE92ZXJ3cml0ZSA9IGZhbHNlKSB7XG4gICAgICAgIGNvbnN0IGNvbHVtbnMgPSBwcm9jZXNzLnN0ZG91dC5jb2x1bW5zO1xuICAgICAgICBpZiAod2lsbE92ZXJ3cml0ZSAmJiBjb2x1bW5zICE9PSB1bmRlZmluZWQgJiYgdGV4dC5sZW5ndGggPiBjb2x1bW5zIC0gMikge1xuICAgICAgICAgICAgdGV4dCA9IGZpbHRlckFuc2kodGV4dCwgY29sdW1ucyAtIDIpICsgXCJcdTIwMjZcIjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRleHQgKz0gd2lsbE92ZXJ3cml0ZSA/IFwiXFxyXCIgOiBcIlxcblwiO1xuICAgICAgICBpZiAodGV4dCA9PT0gbGFzdFN0YXR1cykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGxhc3RTdGF0dXMpIHtcbiAgICAgICAgICAgIGxhc3RTdGF0dXMgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICBzdGRvdXQud3JpdGUoQ0xFQVIpO1xuICAgICAgICB9IGVsc2UgaWYgKG5lZWROZXdsaW5lICYmICF0ZXh0LnN0YXJ0c1dpdGgoXCJcXG5cIikpIHtcbiAgICAgICAgICAgIHN0ZG91dC53cml0ZShcIlxcblwiKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHN0ZG91dC53cml0ZSh0ZXh0KTtcblxuICAgICAgICBsYXN0U3RhdHVzID0gdGV4dDtcbiAgICB9O1xufSkoKTtcblxuZXhwb3J0IGNsYXNzIFByb2dyZXNzIHtcbiAgICBzdGF0dXMgPSBQcm9ncmVzcy5TdGF0dXMuU3RhcnR1cDtcbiAgICAjb25nb2luZ1RleHQ/OiBzdHJpbmc7XG4gICAgI3N0YXJ0PzogbnVtYmVyO1xuICAgICNzcGlubmVyID0gXCJcdTI5RDdcIjtcbiAgICAjcmVmcmVzaEludGVydmFsPzogUmV0dXJuVHlwZTx0eXBlb2Ygc2V0SW50ZXJ2YWw+O1xuICAgICNzcGlubmVyUG9zaXRpb24gPSAwO1xuICAgICNzcGlubmVyV2luZG93PzogbnVtYmVyO1xuXG4gICAgY29uc3RydWN0b3IoKSB7fVxuXG4gICAgZW1waGFzaXplKHRleHQ6IHVua25vd24pIHtcbiAgICAgICAgcmV0dXJuIGNvbG9ycy5ib2xkKGAke3RleHR9YCk7XG4gICAgfVxuXG4gICAgZGVlbXBoYXNpemUodGV4dDogdW5rbm93bikge1xuICAgICAgICByZXR1cm4gY29sb3JzLmRpbShgJHt0ZXh0fWApO1xuICAgIH1cblxuICAgIHNraXAod2h5OiBzdHJpbmcsIHBrZzogUGFja2FnZSkge1xuICAgICAgICBzdGRvdXQud3JpdGUoY29sb3JzLmRpbShgU2tpcCAke3BhY2thZ2VJZGVudGl0eShwa2cpfTogJHt3aHl9XFxuXFxuYCkpO1xuICAgIH1cblxuICAgIHN0YXJ0dXAod2hhdDogc3RyaW5nLCBwa2dPck92ZXJ3cml0ZT86IFBhY2thZ2UgfCBib29sZWFuKSB7XG4gICAgICAgIGlmIChwcm9jZXNzLnN0ZG91dC5pc1RUWSkge1xuICAgICAgICAgICAgdGhpcy4jdXBkYXRlU3Bpbm5lcigpO1xuICAgICAgICAgICAgdGhpcy4jcmVmcmVzaEludGVydmFsID0gc2V0SW50ZXJ2YWwodGhpcy5yZWZyZXNoLmJpbmQodGhpcyksIFNQSU5ORVJfSU5URVJWQUwpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5zdGF0dXMgPSBQcm9ncmVzcy5TdGF0dXMuU3RhcnR1cDtcbiAgICAgICAgaWYgKHBrZ09yT3ZlcndyaXRlID09PSB1bmRlZmluZWQgfHwgdHlwZW9mIHBrZ09yT3ZlcndyaXRlID09PSBcImJvb2xlYW5cIikge1xuICAgICAgICAgICAgd3JpdGVTdGF0dXMod2hhdCwgcGtnT3JPdmVyd3JpdGUgPz8gdHJ1ZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB3cml0ZVN0YXR1cyhgJHt3aGF0fSAke3BhY2thZ2VJZGVudGl0eShwa2dPck92ZXJ3cml0ZSl9YCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB1cGRhdGUodGV4dDogc3RyaW5nLCBleHRyYT86IHN0cmluZykge1xuICAgICAgICB0aGlzLnN0YXR1cyA9IFByb2dyZXNzLlN0YXR1cy5PbmdvaW5nO1xuICAgICAgICBsZXQgZHVyYXRpb247XG4gICAgICAgIGlmICh0aGlzLiNzdGFydCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB0aGlzLiNzdGFydCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xuICAgICAgICAgICAgZHVyYXRpb24gPSBcIlwiO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZHVyYXRpb24gPSB0aGlzLiNkdXJhdGlvbjtcbiAgICAgICAgfVxuICAgICAgICBleHRyYSA9IGV4dHJhID09PSB1bmRlZmluZWQgPyBcIlwiIDogYCAke2V4dHJhfWA7XG4gICAgICAgIHRoaXMuI29uZ29pbmdUZXh0ID0gYCR7dGV4dH0gJHtkdXJhdGlvbn0ke2V4dHJhfWA7XG4gICAgICAgIHRoaXMuI3dyaXRlT25nb2luZygpO1xuICAgIH1cblxuICAgICN3cml0ZU9uZ29pbmcoKSB7XG4gICAgICAgIGlmICghdGhpcy4jb25nb2luZ1RleHQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHdyaXRlU3RhdHVzKGAgICR7Y29sb3JzLnllbGxvdyh0aGlzLiNzcGlubmVyKX0gJHt0aGlzLiNvbmdvaW5nVGV4dH1gLCB0cnVlKTtcbiAgICB9XG5cbiAgICBzdWNjZXNzKHRleHQ6IHN0cmluZykge1xuICAgICAgICB0aGlzLnN0YXR1cyA9IFByb2dyZXNzLlN0YXR1cy5TdWNjZXNzO1xuICAgICAgICB3cml0ZVN0YXR1cyhgICAke2NvbG9ycy5ncmVlbihcIlx1MjcxM1wiKX0gJHt0ZXh0fSAke3RoaXMuI2R1cmF0aW9ufWApO1xuICAgICAgICB0aGlzLiNzdGFydCA9IHRoaXMuI29uZ29pbmdUZXh0ID0gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIGZhaWx1cmUodGV4dDogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuc3RhdHVzID0gUHJvZ3Jlc3MuU3RhdHVzLkZhaWx1cmU7XG4gICAgICAgIHdyaXRlU3RhdHVzKGAgICR7Y29sb3JzLnJlZEJyaWdodChcIlx1MjcxN1wiKX0gJHt0ZXh0fSAke3RoaXMuI2R1cmF0aW9ufWApO1xuICAgICAgICB0aGlzLiNzdGFydCA9IHRoaXMuI29uZ29pbmdUZXh0ID0gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIGluZm8obGFiZWw6IHN0cmluZywgdmFsdWU/OiBhbnkpIHtcbiAgICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgICBsYWJlbCA9IGAke2NvbG9ycy5kaW0obGFiZWwpfSAke3ZhbHVlfWA7XG4gICAgICAgIH1cbiAgICAgICAgd3JpdGVTdGF0dXMoYCAgJHtjb2xvcnMuZGltKFwiXHUyMDIzXCIpfSAke2xhYmVsfWApO1xuICAgIH1cblxuICAgIHNodXRkb3duKCkge1xuICAgICAgICBpZiAodGhpcy4jcmVmcmVzaEludGVydmFsKSB7XG4gICAgICAgICAgICBjbGVhckludGVydmFsKHRoaXMuI3JlZnJlc2hJbnRlcnZhbCk7XG4gICAgICAgICAgICB0aGlzLiNyZWZyZXNoSW50ZXJ2YWwgPSB1bmRlZmluZWQ7XG4gICAgICAgIH1cbiAgICAgICAgd3JpdGVTdGF0dXMoXCJcIik7XG4gICAgfVxuXG4gICAgcmVmcmVzaCgpIHtcbiAgICAgICAgaWYgKHRoaXMuI3VwZGF0ZVNwaW5uZXIoKSkge1xuICAgICAgICAgICAgdGhpcy4jd3JpdGVPbmdvaW5nKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjdXBkYXRlU3Bpbm5lcigpIHtcbiAgICAgICAgaWYgKCFzdGRvdXQuaXNUVFkpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHdpbmRvdyA9IE1hdGguZmxvb3IobmV3IERhdGUoKS5nZXRUaW1lKCkgLyBTUElOTkVSX0lOVEVSVkFMKTtcbiAgICAgICAgaWYgKHRoaXMuI3NwaW5uZXJXaW5kb3cgPT09IHdpbmRvdykge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuI3NwaW5uZXJXaW5kb3cgPSB3aW5kb3c7XG5cbiAgICAgICAgdGhpcy4jc3Bpbm5lclBvc2l0aW9uID0gKHRoaXMuI3NwaW5uZXJQb3NpdGlvbiArIDEpICUgU1BJTk5FUi5sZW5ndGg7XG4gICAgICAgIHRoaXMuI3NwaW5uZXIgPSBTUElOTkVSW3RoaXMuI3NwaW5uZXJQb3NpdGlvbl07XG5cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgYXN5bmMgcnVuKHdoYXQ6IHN0cmluZywgZm46ICgpID0+IHZvaWQgfCBQcm9taXNlPHZvaWQ+KSB7XG4gICAgICAgIHRoaXMudXBkYXRlKHdoYXQpO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgYXdhaXQgZm4oKTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgdGhpcy5mYWlsdXJlKHdoYXQpO1xuICAgICAgICAgICAgdGhyb3cgZTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnN1Y2Nlc3Mod2hhdCk7XG4gICAgfVxuXG4gICAgZ2V0ICNkdXJhdGlvbigpIHtcbiAgICAgICAgbGV0IG1zID0gdGhpcy4jc3RhcnQgPyBuZXcgRGF0ZSgpLmdldFRpbWUoKSAtIHRoaXMuI3N0YXJ0IDogMDtcbiAgICAgICAgaWYgKG1zIDwgMTAwMCkge1xuICAgICAgICAgICAgbXMgPSBNYXRoLnJvdW5kKG1zIC8gMTApIC8gMTAwO1xuICAgICAgICB9IGVsc2UgaWYgKG1zIDwgMTAwMDApIHtcbiAgICAgICAgICAgIG1zID0gTWF0aC5yb3VuZChtcyAvIDEwMCkgLyAxMDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG1zID0gTWF0aC50cnVuYyhtcyAvIDEwMDApO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBjb2xvcnMuZGltLnllbGxvdyhgKCR7bXN9cylgKTtcbiAgICB9XG59XG5cbmV4cG9ydCBuYW1lc3BhY2UgUHJvZ3Jlc3Mge1xuICAgIGV4cG9ydCBlbnVtIFN0YXR1cyB7XG4gICAgICAgIFN0YXJ0dXAgPSBcInN0YXJ0dXBcIixcbiAgICAgICAgT25nb2luZyA9IFwib25nb2luZ1wiLFxuICAgICAgICBTdWNjZXNzID0gXCJzdWNjZXNzXCIsXG4gICAgICAgIEZhaWx1cmUgPSBcImZhaWx1cmVcIixcbiAgICB9XG59XG5cbi8vIFNlZSBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8yNjIzODU1My9ob3ctY2FuLWktdHJ1bmNhdGUtYS1zdHJpbmctdG8tYS1tYXhpbXVtLWxlbmd0aC13aXRob3V0LWJyZWFraW5nLWFuc2ktZXNjYXBlLWNvZFxuLy8gVE9ETyAtIHRoaXMgZnVuY3Rpb24gZG9lc24ndCBzZWVtIGVudGlyZWx5IGNvcnJlY3QsIHN0aWxsIHNlZW1zIHRvIHRydW5jYXRlIHRvbyBtdWNoXG4vLyBDcm9wIHRoZSBsZW5ndGggb2YgbGluZXMsIEFOU0kgZXNjYXBlIGNvZGUgYXdhcmVcbi8vIEFsd2F5cyBvdXRwdXRzIGV2ZXJ5IGVzY2FwZSBjaGFyLCByZWdhcmRsZXNzIG9mIGxlbmd0aCAoc28gd2UgYWx3YXlzIGVuZCB1cCB3aXRoIGEgc2FuZSBzdGF0ZSlcbi8vIFZpc2libGUgY2hhcmFjdGVycyBhcmUgZmlsdGVyZWQgb3V0IG9uY2UgbGVuZ3RoIGlzIGV4Y2VlZGVkXG5mdW5jdGlvbiBmaWx0ZXJBbnNpKHN0cjogc3RyaW5nLCBsZW46IG51bWJlcikge1xuICAgIGlmICghbGVuIHx8IGxlbiA8IDEwKSByZXR1cm4gc3RyOyAvLyBwcm9iYWJseSBub3QgYSB2YWxpZCBjb25zb2xlIC0tIHNlbmQgYmFjayB0aGUgd2hvbGUgbGluZVxuICAgIGxldCBjb3VudCA9IDAsIC8vIG51bWJlciBvZiB2aXNpYmxlIGNoYXJzIG9uIGxpbmUgc28gZmFyXG4gICAgICAgIGVzYyA9IGZhbHNlLCAvLyBpbiBhbiBlc2NhcGUgc2VxdWVuY2VcbiAgICAgICAgbG9uZ2VzYyA9IGZhbHNlOyAvLyBpbiBhIG11bHRpLWNoYXJhY3RlciBlc2NhcGUgc2VxdWVuY2VcbiAgICBsZXQgb3V0cCA9IHRydWU7IC8vIHNob3VsZCBvdXRwdXQgdGhpcyBjaGFyYWN0ZXJcbiAgICByZXR1cm4gc3RyXG4gICAgICAgIC5zcGxpdChcIlwiKVxuICAgICAgICAuZmlsdGVyKGZ1bmN0aW9uIChjKSB7XG4gICAgICAgICAgICAvLyBmaWx0ZXIgY2hhcmFjdGVycy4uLlxuICAgICAgICAgICAgaWYgKGVzYyAmJiAhbG9uZ2VzYyAmJiBjID09IFwiW1wiKSBsb25nZXNjID0gdHJ1ZTsgLy8gaGF2ZSBzZWVuIGFuIGVzY2FwZSwgbm93ICdbJywgc3RhcnQgbXVsdGktY2hhciBlc2NhcGVcbiAgICAgICAgICAgIGlmIChjID09IFwiXFx4MWJcIikgZXNjID0gdHJ1ZTsgLy8gc3RhcnQgb2YgZXNjYXBlIHNlcXVlbmNlXG5cbiAgICAgICAgICAgIG91dHAgPSBjb3VudCA8IGxlbiB8fCBlc2M7IC8vIGlmIGxlbmd0aCBleGNlZWRlZCwgZG9uJ3Qgb3V0cHV0IG5vbi1lc2NhcGUgY2hhcnNcbiAgICAgICAgICAgIGlmICghZXNjICYmICFsb25nZXNjKSBjb3VudCsrOyAvLyBpZiBub3QgaW4gZXNjYXBlLCBjb3VudCB2aXNpYmxlIGNoYXJcblxuICAgICAgICAgICAgaWYgKGVzYyAmJiAhbG9uZ2VzYyAmJiBjICE9IFwiXFx4MWJcIikgZXNjID0gZmFsc2U7IC8vIG91dCBvZiBzaW5nbGUgY2hhciBlc2NhcGVcbiAgICAgICAgICAgIGlmIChsb25nZXNjICYmIGMgIT0gXCJbXCIgJiYgYyA+PSBcIkBcIiAmJiBjIDw9IFwiflwiKSB7XG4gICAgICAgICAgICAgICAgZXNjID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgbG9uZ2VzYyA9IGZhbHNlO1xuICAgICAgICAgICAgfSAvLyBlbmQgb2YgbXVsdGktY2hhciBlc2NhcGVcblxuICAgICAgICAgICAgcmV0dXJuIG91dHA7IC8vIHJlc3VsdCBmb3IgZmlsdGVyXG4gICAgICAgIH0pXG4gICAgICAgIC5qb2luKFwiXCIpOyAvLyBnbHVlIGNoYXJzIGJhY2sgaW50byBzdHJpbmdcbn1cbiJdLAogICJtYXBwaW5ncyI6ICJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNQSxPQUFPLFlBQVk7QUFDbkIsU0FBUyxRQUFRLGNBQWM7QUFHL0IsTUFBTSxRQUFRO0FBQ2QsTUFBTSxVQUFVO0FBQ2hCLE1BQU0sbUJBQW1CO0FBRXpCLFNBQVMsZ0JBQWdCLEtBQWM7QUFDbkMsTUFBSSxXQUFXLE9BQU8sS0FBSyxJQUFJLEtBQUssSUFBSTtBQUN4QyxNQUFJLElBQUksS0FBSyxTQUFTO0FBQ2xCLGVBQVcsR0FBRyxRQUFRLElBQUksSUFBSSxLQUFLLE9BQU87QUFBQSxFQUM5QztBQUNBLFNBQU87QUFDWDtBQUtBLE1BQU0sZUFBZSxNQUFNO0FBQ3ZCLE1BQUk7QUFDSixNQUFJLGNBQWM7QUFFbEIsV0FBUyxVQUFVLFFBQTRCO0FBQzNDLFVBQU0sY0FBYyxPQUFPO0FBQzNCLFdBQU8sUUFBUSxDQUFDLFlBQWlDLFdBQWtCO0FBQy9ELFVBQUksWUFBWTtBQUNaLG9CQUFZLEtBQUssUUFBUSxJQUFJO0FBQzdCLHFCQUFhO0FBQUEsTUFDakI7QUFFQSxVQUFJLENBQUMsUUFBUSxRQUFRO0FBQ2pCLGVBQU87QUFBQSxNQUNYO0FBR0E7QUFBQSxNQUVJLFFBQVEsUUFBUSxTQUFTLENBQUMsTUFBTTtBQUFBLE1BRWhDLFFBQVEsUUFBUSxTQUFTLENBQUMsTUFBTTtBQUVwQyxhQUFPLFlBQVksS0FBSyxRQUFRLFNBQVMsR0FBRyxNQUFNO0FBQUEsSUFDdEQ7QUFBQSxFQUNKO0FBRUEsWUFBVSxNQUFNO0FBQ2hCLFlBQVUsTUFBTTtBQUVoQixTQUFPLFNBQVNBLGFBQVksTUFBYyxnQkFBZ0IsT0FBTztBQUM3RCxVQUFNLFVBQVUsUUFB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
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/util/progress.ts"],
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": ["writeStatus", "Progress", "Status"]
|
|
6
|
+
}
|