@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,239 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var project_exports = {};
|
|
20
|
+
__export(project_exports, {
|
|
21
|
+
BUILD_INFO_LOCATION: () => BUILD_INFO_LOCATION,
|
|
22
|
+
Project: () => Project
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(project_exports);
|
|
25
|
+
var import_esbuild = require("esbuild");
|
|
26
|
+
var import_promises = require("fs/promises");
|
|
27
|
+
var import_glob = require("glob");
|
|
28
|
+
var import_os = require("os");
|
|
29
|
+
var import_path = require("path");
|
|
30
|
+
var import_errors = require("../util/errors.js");
|
|
31
|
+
var import_package = require("../util/package.js");
|
|
32
|
+
/**
|
|
33
|
+
* @license
|
|
34
|
+
* Copyright 2022-2024 Matter.js Authors
|
|
35
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
36
|
+
*/
|
|
37
|
+
const BUILD_INFO_LOCATION = "build/info.json";
|
|
38
|
+
class Project {
|
|
39
|
+
pkg;
|
|
40
|
+
#config;
|
|
41
|
+
#configured;
|
|
42
|
+
constructor(source = ".") {
|
|
43
|
+
if (typeof source === "string") {
|
|
44
|
+
this.pkg = new import_package.Package({ path: source });
|
|
45
|
+
} else {
|
|
46
|
+
this.pkg = source;
|
|
47
|
+
}
|
|
48
|
+
if (!this.pkg.hasSrc) {
|
|
49
|
+
throw new Error(`Found package ${this.pkg.json.name} but no src directory is present`);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
async buildSource(format) {
|
|
53
|
+
await this.#build(format, "src", `dist/${format}`);
|
|
54
|
+
await this.#configureFormat("dist", format, true);
|
|
55
|
+
}
|
|
56
|
+
async buildTests(format) {
|
|
57
|
+
if (this.pkg.hasDirectory("test")) {
|
|
58
|
+
await this.#build(format, "test", `build/${format}/test`);
|
|
59
|
+
}
|
|
60
|
+
const src = `dist/${format}`;
|
|
61
|
+
const dest = `build/${format}/src`;
|
|
62
|
+
try {
|
|
63
|
+
const destPath = this.pkg.resolve(dest);
|
|
64
|
+
await (0, import_promises.mkdir)((0, import_path.dirname)(destPath), { recursive: true });
|
|
65
|
+
await (0, import_errors.ignoreError)("EEXIST", async () => await (0, import_promises.symlink)(this.pkg.resolve(src), destPath));
|
|
66
|
+
} catch (e) {
|
|
67
|
+
if (e.code === "EPERM" && (0, import_os.platform)() === "win32") {
|
|
68
|
+
await (0, import_promises.cp)(this.pkg.resolve(src), this.pkg.resolve(dest), {
|
|
69
|
+
recursive: true,
|
|
70
|
+
force: true
|
|
71
|
+
});
|
|
72
|
+
} else {
|
|
73
|
+
throw e;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
await this.#configureFormat("build", format, false);
|
|
77
|
+
}
|
|
78
|
+
async clean() {
|
|
79
|
+
for (const dir of ["build", "dist"]) {
|
|
80
|
+
await (0, import_promises.rm)(this.pkg.resolve(dir), { recursive: true, force: true });
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Installs declaration files into specified directory. Also computes SHA-1 hash for all files that we use to
|
|
85
|
+
* detect "public API changes".
|
|
86
|
+
*
|
|
87
|
+
* Note we use cp to traverse filesystem, detect changes, locate source maps and compute API SHA. A little
|
|
88
|
+
* convoluted but works. When you correct for a node 20/windows bug.
|
|
89
|
+
*/
|
|
90
|
+
async installDeclarationFormats(formats, apiSha) {
|
|
91
|
+
const srcMaps = Array();
|
|
92
|
+
let firstPass = true;
|
|
93
|
+
const src = this.pkg.resolve("build/types/src");
|
|
94
|
+
for (const format of formats) {
|
|
95
|
+
await (0, import_promises.cp)(src, this.pkg.resolve(`dist/${format}`), {
|
|
96
|
+
recursive: true,
|
|
97
|
+
force: true,
|
|
98
|
+
filter: async (source, destination) => {
|
|
99
|
+
const sourceStat = await (0, import_promises.stat)(source);
|
|
100
|
+
if (!sourceStat.isFile()) {
|
|
101
|
+
return true;
|
|
102
|
+
}
|
|
103
|
+
const destinationMtime = (await (0, import_errors.ignoreError)("ENOENT", () => (0, import_promises.stat)(destination)))?.mtimeMs;
|
|
104
|
+
if (destinationMtime !== void 0) {
|
|
105
|
+
const sourceMtime = sourceStat.mtimeMs;
|
|
106
|
+
if (destinationMtime >= sourceMtime) {
|
|
107
|
+
return false;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
if (source.endsWith(".d.ts.map")) {
|
|
111
|
+
if (firstPass) {
|
|
112
|
+
if (source.startsWith("\\\\?\\")) {
|
|
113
|
+
source = source.slice(4);
|
|
114
|
+
}
|
|
115
|
+
srcMaps.push(source);
|
|
116
|
+
}
|
|
117
|
+
return false;
|
|
118
|
+
}
|
|
119
|
+
if (apiSha) {
|
|
120
|
+
apiSha.update(await (0, import_promises.readFile)(source));
|
|
121
|
+
}
|
|
122
|
+
return true;
|
|
123
|
+
}
|
|
124
|
+
});
|
|
125
|
+
firstPass = false;
|
|
126
|
+
}
|
|
127
|
+
for (const filename of srcMaps) {
|
|
128
|
+
let map = await (0, import_promises.readFile)(filename);
|
|
129
|
+
let pos = map.indexOf('"sources":["../');
|
|
130
|
+
if (pos === -1) {
|
|
131
|
+
throw new Error(
|
|
132
|
+
`Could not find sources position in declaration map ${filename}, format may have changed`
|
|
133
|
+
);
|
|
134
|
+
}
|
|
135
|
+
pos += 12;
|
|
136
|
+
map = map.copyWithin(pos, pos + 3).subarray(0, map.length - 3);
|
|
137
|
+
const pathRelativeToDest = (0, import_path.relative)(src, filename);
|
|
138
|
+
for (const format of formats) {
|
|
139
|
+
await (0, import_promises.writeFile)((0, import_path.join)((0, import_path.join)(this.pkg.resolve(`dist/${format}`), pathRelativeToDest)), map);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
get hasDeclarations() {
|
|
144
|
+
return this.pkg.hasDirectory("build/types");
|
|
145
|
+
}
|
|
146
|
+
async installDeclarations(apiSha) {
|
|
147
|
+
await (0, import_promises.mkdir)(this.pkg.resolve("dist"), { recursive: true });
|
|
148
|
+
const formats = /* @__PURE__ */ new Set();
|
|
149
|
+
if (this.pkg.supportsEsm) {
|
|
150
|
+
formats.add("esm");
|
|
151
|
+
}
|
|
152
|
+
if (this.pkg.supportsCjs) {
|
|
153
|
+
formats.add("cjs");
|
|
154
|
+
}
|
|
155
|
+
await this.installDeclarationFormats(formats, apiSha);
|
|
156
|
+
}
|
|
157
|
+
async recordBuildInfo(info) {
|
|
158
|
+
await (0, import_promises.mkdir)(this.pkg.resolve("build"), { recursive: true });
|
|
159
|
+
info.timestamp = (/* @__PURE__ */ new Date()).toISOString();
|
|
160
|
+
await (0, import_promises.writeFile)(this.pkg.resolve(BUILD_INFO_LOCATION), JSON.stringify(info, void 0, 4));
|
|
161
|
+
}
|
|
162
|
+
async configure(progress) {
|
|
163
|
+
if (this.#configured) {
|
|
164
|
+
return this.#config;
|
|
165
|
+
}
|
|
166
|
+
if (!this.pkg.hasConfig) {
|
|
167
|
+
return {};
|
|
168
|
+
}
|
|
169
|
+
const configPath = this.pkg.resolve(import_package.CONFIG_PATH);
|
|
170
|
+
const outfile = configPath.replace(/\\/g, "/").replace("/src/", "/build/").replace(/\.ts$/, ".js");
|
|
171
|
+
await (0, import_esbuild.build)({
|
|
172
|
+
entryPoints: [configPath],
|
|
173
|
+
outfile,
|
|
174
|
+
sourcemap: true
|
|
175
|
+
});
|
|
176
|
+
this.#config = await import(`file://${outfile}`);
|
|
177
|
+
this.#configured = true;
|
|
178
|
+
if (this.#config?.startup) {
|
|
179
|
+
await this.#config?.startup({
|
|
180
|
+
project: this,
|
|
181
|
+
progress
|
|
182
|
+
});
|
|
183
|
+
}
|
|
184
|
+
return this.#config;
|
|
185
|
+
}
|
|
186
|
+
async #build(format, indir, outdir) {
|
|
187
|
+
const entryPoints = await this.#targetsOf(indir, outdir, "ts", "js");
|
|
188
|
+
const configPath = this.pkg.resolve(import_package.CONFIG_PATH);
|
|
189
|
+
for (const entry of entryPoints) {
|
|
190
|
+
if (entry.in === configPath) {
|
|
191
|
+
continue;
|
|
192
|
+
}
|
|
193
|
+
entry.out = entry.out.replace(/\.[jt]s$/, "");
|
|
194
|
+
}
|
|
195
|
+
await (0, import_esbuild.build)({
|
|
196
|
+
entryPoints,
|
|
197
|
+
outdir: this.pkg.path,
|
|
198
|
+
format,
|
|
199
|
+
sourcemap: true,
|
|
200
|
+
sourcesContent: false,
|
|
201
|
+
absWorkingDir: (0, import_path.dirname)(this.pkg.resolve(indir)),
|
|
202
|
+
// This is necessary to downlevel "using"
|
|
203
|
+
target: "es2022",
|
|
204
|
+
logOverride: {
|
|
205
|
+
"direct-eval": "silent"
|
|
206
|
+
}
|
|
207
|
+
});
|
|
208
|
+
for (const entry of await this.#targetsOf(indir, outdir, "cjs", "mjs", "d.cts", "d.mts")) {
|
|
209
|
+
await (0, import_promises.cp)(entry.in, entry.out);
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
async #configureFormat(dir, format, isDist) {
|
|
213
|
+
let { imports } = this.pkg.json;
|
|
214
|
+
if (isDist && typeof imports === "object") {
|
|
215
|
+
imports = { ...imports };
|
|
216
|
+
for (const key in imports) {
|
|
217
|
+
const value = imports[key];
|
|
218
|
+
if (typeof value === "string") {
|
|
219
|
+
imports[key] = value.replace(/^\.\/src\//, "./");
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
const path = this.pkg.resolve(`${dir}/${format}/package.json`);
|
|
224
|
+
const json = {
|
|
225
|
+
type: format === "cjs" ? "commonjs" : "module",
|
|
226
|
+
imports
|
|
227
|
+
};
|
|
228
|
+
await (0, import_promises.writeFile)(path, JSON.stringify(json, void 0, 4));
|
|
229
|
+
}
|
|
230
|
+
async #targetsOf(indir, outdir, ...extensions) {
|
|
231
|
+
indir = this.pkg.resolve(indir).replace(/\\/g, "/");
|
|
232
|
+
outdir = this.pkg.resolve(outdir).replace(/\\/g, "/");
|
|
233
|
+
return (await (0, import_glob.glob)(extensions.map((ext) => `${indir}/**/*.${ext}`))).map((file) => ({
|
|
234
|
+
in: file,
|
|
235
|
+
out: `${outdir}/${file.slice(indir.length + 1)}`
|
|
236
|
+
}));
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
//# sourceMappingURL=project.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/building/project.ts"],
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": ["esbuild"]
|
|
6
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2024 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { Graph } from "./graph.js";
|
|
7
|
+
/**
|
|
8
|
+
* Unfortunately typescript's "project references" are redundant with package.json dependencies. We don't use them for
|
|
9
|
+
* build but there are still some advantages to maintaining them so we just ensure they're in sync during workspace
|
|
10
|
+
* builds.
|
|
11
|
+
*
|
|
12
|
+
* One discussion on the topic: https://github.com/microsoft/TypeScript/issues/25376
|
|
13
|
+
*/
|
|
14
|
+
export declare function syncAllTsconfigs(graph: Graph): Promise<void>;
|
|
15
|
+
export declare function syncPackageTsconfigs(graph: Graph, node: Graph.Node): Promise<void>;
|
|
16
|
+
//# sourceMappingURL=tsconfig.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tsconfig.d.ts","sourceRoot":"","sources":["../../../src/building/tsconfig.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,KAAK,iBAelD;AAMD,wBAAsB,oBAAoB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,iBAGxE"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var tsconfig_exports = {};
|
|
20
|
+
__export(tsconfig_exports, {
|
|
21
|
+
syncAllTsconfigs: () => syncAllTsconfigs,
|
|
22
|
+
syncPackageTsconfigs: () => syncPackageTsconfigs
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(tsconfig_exports);
|
|
25
|
+
var import_path = require("path");
|
|
26
|
+
/**
|
|
27
|
+
* @license
|
|
28
|
+
* Copyright 2022-2024 Matter.js Authors
|
|
29
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
30
|
+
*/
|
|
31
|
+
async function syncAllTsconfigs(graph) {
|
|
32
|
+
const workspace = graph.nodes[0].pkg.workspace;
|
|
33
|
+
const rootTsconfig = await workspace.readJson("tsconfig.json");
|
|
34
|
+
const originalReferences = rootTsconfig.references;
|
|
35
|
+
rootTsconfig.references = [];
|
|
36
|
+
for (const node of graph.nodes) {
|
|
37
|
+
await syncPackageTsconfigs(graph, node);
|
|
38
|
+
rootTsconfig.references.push({ path: workspace.relative(node.pkg.path) });
|
|
39
|
+
}
|
|
40
|
+
if (referencesChanged(originalReferences, rootTsconfig.references)) {
|
|
41
|
+
await workspace.writeJson("tsconfig.json", rootTsconfig);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
function referencesChanged(originalReferences, newReferences) {
|
|
45
|
+
return JSON.stringify(originalReferences) !== JSON.stringify(newReferences);
|
|
46
|
+
}
|
|
47
|
+
async function syncPackageTsconfigs(graph, node) {
|
|
48
|
+
await syncSubproject(node, "src");
|
|
49
|
+
await syncSubproject(node, "test", node.pkg.resolve("src"), graph.get("@matter/tools").pkg.resolve("src"));
|
|
50
|
+
}
|
|
51
|
+
async function syncSubproject(node, path, ...extraRefs) {
|
|
52
|
+
path = node.pkg.resolve(path);
|
|
53
|
+
const tsconfigPath = (0, import_path.resolve)(path, "tsconfig.json");
|
|
54
|
+
if (!node.pkg.hasFile(tsconfigPath)) {
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
const tsconfig = await node.pkg.readJson(tsconfigPath);
|
|
58
|
+
let refs = tsconfig.refs;
|
|
59
|
+
if (refs === void 0) {
|
|
60
|
+
refs = [];
|
|
61
|
+
}
|
|
62
|
+
const deps = node.dependencies.map((dep) => dep.pkg.resolve("src")).filter((p) => !p.match(/packages\/tools/));
|
|
63
|
+
const desired = [.../* @__PURE__ */ new Set([...deps, ...extraRefs])];
|
|
64
|
+
const newReferences = desired.map((ref) => ({ path: (0, import_path.relative)(path, ref) }));
|
|
65
|
+
if (referencesChanged(tsconfig.references, newReferences)) {
|
|
66
|
+
tsconfig.references = newReferences;
|
|
67
|
+
await node.pkg.writeJson(tsconfigPath, tsconfig);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=tsconfig.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/building/tsconfig.ts"],
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,kBAAkC;AANlC;AAAA;AAAA;AAAA;AAAA;AAgBA,eAAsB,iBAAiB,OAAc;AACjD,QAAM,YAAY,MAAM,MAAM,CAAC,EAAE,IAAI;AACrC,QAAM,eAAe,MAAM,UAAU,SAAS,eAAe;AAE7D,QAAM,qBAAqB,aAAa;AACxC,eAAa,aAAa,CAAC;AAE3B,aAAW,QAAQ,MAAM,OAAO;AAC5B,UAAM,qBAAqB,OAAO,IAAI;AACtC,iBAAa,WAAW,KAAK,EAAE,MAAM,UAAU,SAAS,KAAK,IAAI,IAAI,EAAE,CAAC;AAAA,EAC5E;AAEA,MAAI,kBAAkB,oBAAoB,aAAa,UAAU,GAAG;AAChE,UAAM,UAAU,UAAU,iBAAiB,YAAY;AAAA,EAC3D;AACJ;AAEA,SAAS,kBAAkB,oBAA6B,eAAwB;AAC5E,SAAO,KAAK,UAAU,kBAAkB,MAAM,KAAK,UAAU,aAAa;AAC9E;AAEA,eAAsB,qBAAqB,OAAc,MAAkB;AACvE,QAAM,eAAe,MAAM,KAAK;AAChC,QAAM,eAAe,MAAM,QAAQ,KAAK,IAAI,QAAQ,KAAK,GAAG,MAAM,IAAI,eAAe,EAAE,IAAI,QAAQ,KAAK,CAAC;AAC7G;AAEA,eAAe,eAAe,MAAkB,SAAiB,WAAqB;AAClF,SAAO,KAAK,IAAI,QAAQ,IAAI;AAE5B,QAAM,mBAAe,qBAAQ,MAAM,eAAe;AAClD,MAAI,CAAC,KAAK,IAAI,QAAQ,YAAY,GAAG;AACjC;AAAA,EACJ;AAEA,QAAM,WAAW,MAAM,KAAK,IAAI,SAAS,YAAY;AAErD,MAAI,OAAO,SAAS;AAEpB,MAAI,SAAS,QAAW;AACpB,WAAO,CAAC;AAAA,EACZ;AAEA,QAAM,OAAO,KAAK,aAAa,IAAI,SAAO,IAAI,IAAI,QAAQ,KAAK,CAAC,EAAE,OAAO,OAAK,CAAC,EAAE,MAAM,iBAAiB,CAAC;AAEzG,QAAM,UAAU,CAAC,GAAG,oBAAI,IAAI,CAAC,GAAG,MAAM,GAAG,SAAS,CAAC,CAAC;AAEpD,QAAM,gBAAgB,QAAQ,IAAI,UAAQ,EAAE,UAAM,sBAAS,MAAM,GAAG,EAAE,EAAE;AAExE,MAAI,kBAAkB,SAAS,YAAY,aAAa,GAAG;AACvD,aAAS,aAAa;AACtB,UAAM,KAAK,IAAI,UAAU,cAAc,QAAQ;AAAA,EACnD;AACJ;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2024 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { Diagnostic } from "typescript";
|
|
7
|
+
import { Package } from "../../util/package.js";
|
|
8
|
+
export interface TypescriptContext {
|
|
9
|
+
build(pkg: Package, path: string, emit?: boolean): Promise<void>;
|
|
10
|
+
}
|
|
11
|
+
export declare namespace TypescriptContext {
|
|
12
|
+
function diagnose(diagnostics?: Diagnostic | Diagnostic[]): void;
|
|
13
|
+
function compilerOptionsFor(path: string, ignoreErrors?: boolean): import("typescript").CompilerOptions;
|
|
14
|
+
function instrumentHostForSpinner(host: {}, refreshCallback?: () => void): void;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../../src/building/typescript/context.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAEH,UAAU,EAKb,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAGhD,MAAM,WAAW,iBAAiB;IAC9B,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACpE;AAED,yBAAiB,iBAAiB,CAAC;IAC/B,SAAgB,QAAQ,CAAC,WAAW,CAAC,EAAE,UAAU,GAAG,UAAU,EAAE,QAuB/D;IAED,SAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,UAAQ,wCAQpE;IAED,SAAgB,wBAAwB,CAAC,IAAI,EAAE,EAAE,EAAE,eAAe,CAAC,EAAE,MAAM,IAAI,QAyB9E;CACJ"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var context_exports = {};
|
|
20
|
+
__export(context_exports, {
|
|
21
|
+
TypescriptContext: () => TypescriptContext
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(context_exports);
|
|
24
|
+
var import_path = require("path");
|
|
25
|
+
var import_typescript = require("typescript");
|
|
26
|
+
var import_error = require("../error.js");
|
|
27
|
+
/**
|
|
28
|
+
* @license
|
|
29
|
+
* Copyright 2022-2024 Matter.js Authors
|
|
30
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
31
|
+
*/
|
|
32
|
+
var TypescriptContext;
|
|
33
|
+
((TypescriptContext2) => {
|
|
34
|
+
function diagnose(diagnostics) {
|
|
35
|
+
if (diagnostics === void 0) {
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
if (Array.isArray(diagnostics)) {
|
|
39
|
+
if (!diagnostics.length) {
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
} else {
|
|
43
|
+
diagnostics = [diagnostics];
|
|
44
|
+
}
|
|
45
|
+
const host = (0, import_typescript.createCompilerHost)({});
|
|
46
|
+
let formatted = (0, import_typescript.formatDiagnosticsWithColorAndContext)(diagnostics, host);
|
|
47
|
+
formatted = formatted.replace(/\u001b\[96m/gms, "\n\x1B[96m");
|
|
48
|
+
throw new import_error.BuildError(formatted);
|
|
49
|
+
}
|
|
50
|
+
TypescriptContext2.diagnose = diagnose;
|
|
51
|
+
function compilerOptionsFor(path, ignoreErrors = false) {
|
|
52
|
+
const file = (0, import_typescript.readConfigFile)(path, import_typescript.sys.readFile);
|
|
53
|
+
diagnose(file.error);
|
|
54
|
+
const config = (0, import_typescript.parseJsonConfigFileContent)(file.config, import_typescript.sys, (0, import_path.dirname)(path));
|
|
55
|
+
if (!ignoreErrors) {
|
|
56
|
+
diagnose(config.errors);
|
|
57
|
+
}
|
|
58
|
+
return config.options;
|
|
59
|
+
}
|
|
60
|
+
TypescriptContext2.compilerOptionsFor = compilerOptionsFor;
|
|
61
|
+
function instrumentHostForSpinner(host, refreshCallback) {
|
|
62
|
+
if (!refreshCallback) {
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
for (const name of ["readFile", "writeFile", "getSourceFile"]) {
|
|
66
|
+
if (!(name in host)) {
|
|
67
|
+
continue;
|
|
68
|
+
}
|
|
69
|
+
const fn = host[name];
|
|
70
|
+
if (typeof fn !== "function") {
|
|
71
|
+
continue;
|
|
72
|
+
}
|
|
73
|
+
host[name] = (...args) => {
|
|
74
|
+
const result = fn.apply(host, args);
|
|
75
|
+
refreshCallback();
|
|
76
|
+
return result;
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
TypescriptContext2.instrumentHostForSpinner = instrumentHostForSpinner;
|
|
81
|
+
})(TypescriptContext || (TypescriptContext = {}));
|
|
82
|
+
//# sourceMappingURL=context.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/building/typescript/context.ts"],
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,kBAAwB;AACxB,wBAOO;AAEP,mBAA2B;AAhB3B;AAAA;AAAA;AAAA;AAAA;AAsBO,IAAU;AAAA,CAAV,CAAUA,uBAAV;AACI,WAAS,SAAS,aAAyC;AAC9D,QAAI,gBAAgB,QAAW;AAC3B;AAAA,IACJ;AACA,QAAI,MAAM,QAAQ,WAAW,GAAG;AAC5B,UAAI,CAAC,YAAY,QAAQ;AACrB;AAAA,MACJ;AAAA,IACJ,OAAO;AACH,oBAAc,CAAC,WAAW;AAAA,IAC9B;AAEA,UAAM,WAAO,sCAAmB,CAAC,CAAC;AAElC,QAAI,gBAAY,wDAAqC,aAAa,IAAI;AAMtE,gBAAY,UAAU,QAAQ,kBAAkB,YAAc;AAE9D,UAAM,IAAI,wBAAW,SAAS;AAAA,EAClC;AAvBO,EAAAA,mBAAS;AAyBT,WAAS,mBAAmB,MAAc,eAAe,OAAO;AACnE,UAAM,WAAO,kCAAe,MAAM,sBAAI,QAAQ;AAC9C,aAAS,KAAK,KAAK;AACnB,UAAM,aAAS,8CAA2B,KAAK,QAAQ,2BAAK,qBAAQ,IAAI,CAAC;AACzE,QAAI,CAAC,cAAc;AACf,eAAS,OAAO,MAAM;AAAA,IAC1B;AACA,WAAO,OAAO;AAAA,EAClB;AARO,EAAAA,mBAAS;AAUT,WAAS,yBAAyB,MAAU,iBAA8B;AAC7E,QAAI,CAAC,iBAAiB;AAClB;AAAA,IACJ;AAMA,eAAW,QAAQ,CAAC,YAAY,aAAa,eAAe,GAAG;AAC3D,UAAI,EAAE,QAAQ,OAAO;AACjB;AAAA,MACJ;AAEA,YAAM,KAAM,KAAuC,IAAI;AACvD,UAAI,OAAO,OAAO,YAAY;AAC1B;AAAA,MACJ;AAEA,MAAC,KAAuC,IAAI,IAAI,IAAI,SAAc;AAC9D,cAAM,SAAS,GAAG,MAAM,MAAM,IAAI;AAClC,wBAAgB;AAChB,eAAO;AAAA,MACX;AAAA,IACJ;AAAA,EACJ;AAzBO,EAAAA,mBAAS;AAAA,GApCH;",
|
|
5
|
+
"names": ["TypescriptContext"]
|
|
6
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2024 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { Package } from "../../util/package.js";
|
|
7
|
+
import { Graph } from "../graph.js";
|
|
8
|
+
import { TypescriptContext } from "./context.js";
|
|
9
|
+
export declare function createIncrementalCompilerContext(_workspace: Package, _graph: Graph | undefined, refreshCallback?: () => void): TypescriptContext;
|
|
10
|
+
//# sourceMappingURL=incremental-compiler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"incremental-compiler.d.ts","sourceRoot":"","sources":["../../../../src/building/typescript/incremental-compiler.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEhD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEjD,wBAAgB,gCAAgC,CAC5C,UAAU,EAAE,OAAO,EACnB,MAAM,EAAE,KAAK,GAAG,SAAS,EACzB,eAAe,CAAC,EAAE,MAAM,IAAI,GAC7B,iBAAiB,CA4GnB"}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var incremental_compiler_exports = {};
|
|
20
|
+
__export(incremental_compiler_exports, {
|
|
21
|
+
createIncrementalCompilerContext: () => createIncrementalCompilerContext
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(incremental_compiler_exports);
|
|
24
|
+
var import_fs = require("fs");
|
|
25
|
+
var import_typescript = require("typescript");
|
|
26
|
+
var import_package = require("../../util/package.js");
|
|
27
|
+
var import_error = require("../error.js");
|
|
28
|
+
var import_context = require("./context.js");
|
|
29
|
+
/**
|
|
30
|
+
* @license
|
|
31
|
+
* Copyright 2022-2024 Matter.js Authors
|
|
32
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
33
|
+
*/
|
|
34
|
+
function createIncrementalCompilerContext(_workspace, _graph, refreshCallback) {
|
|
35
|
+
const baseOptions = {
|
|
36
|
+
...import_context.TypescriptContext.compilerOptionsFor(import_package.Package.tools.resolve("tsc/tsconfig.base.json")),
|
|
37
|
+
incremental: true,
|
|
38
|
+
isolatedModules: true,
|
|
39
|
+
skipLibCheck: true
|
|
40
|
+
};
|
|
41
|
+
return { build };
|
|
42
|
+
async function build(pkg, path, emit) {
|
|
43
|
+
let options;
|
|
44
|
+
if (emit) {
|
|
45
|
+
options = {
|
|
46
|
+
outDir: pkg.resolve("build/types"),
|
|
47
|
+
emitDeclarationOnly: true,
|
|
48
|
+
sourceMap: true,
|
|
49
|
+
declarationMap: true
|
|
50
|
+
};
|
|
51
|
+
} else {
|
|
52
|
+
options = {
|
|
53
|
+
noEmit: true
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
options = {
|
|
57
|
+
...baseOptions,
|
|
58
|
+
tsBuildInfoFile: pkg.resolve("build/tsbuildinfo"),
|
|
59
|
+
rootDir: pkg.path,
|
|
60
|
+
...options
|
|
61
|
+
};
|
|
62
|
+
delete options.composite;
|
|
63
|
+
if (pkg.hasSrc) {
|
|
64
|
+
loadConfiguredOptions(pkg.resolve("src/tsconfig.json"), options);
|
|
65
|
+
}
|
|
66
|
+
if (pkg.hasTests) {
|
|
67
|
+
loadConfiguredOptions(pkg.resolve("src/tsconfig.json"), options);
|
|
68
|
+
}
|
|
69
|
+
const host = (0, import_typescript.createIncrementalCompilerHost)(options);
|
|
70
|
+
import_context.TypescriptContext.instrumentHostForSpinner(host, refreshCallback);
|
|
71
|
+
const sources = Array();
|
|
72
|
+
if (path === "src") {
|
|
73
|
+
if (pkg.hasSrc) {
|
|
74
|
+
sources.push(...await pkg.glob("src/**/*.ts"));
|
|
75
|
+
}
|
|
76
|
+
} else if (path === "test") {
|
|
77
|
+
if (pkg.hasTests) {
|
|
78
|
+
sources.push(...await pkg.glob("test/**/*.ts"));
|
|
79
|
+
}
|
|
80
|
+
} else {
|
|
81
|
+
throw new import_error.InternalBuildError(`Unsupported build path "${path}"`);
|
|
82
|
+
}
|
|
83
|
+
const program = (0, import_typescript.createIncrementalProgram)({
|
|
84
|
+
rootNames: sources,
|
|
85
|
+
options,
|
|
86
|
+
host
|
|
87
|
+
});
|
|
88
|
+
const diagnostics = [
|
|
89
|
+
...program.getConfigFileParsingDiagnostics(),
|
|
90
|
+
...program.getSyntacticDiagnostics(),
|
|
91
|
+
...program.getOptionsDiagnostics(),
|
|
92
|
+
...program.getSemanticDiagnostics()
|
|
93
|
+
];
|
|
94
|
+
if (!options.noEmit) {
|
|
95
|
+
diagnostics.push(...program.emit().diagnostics);
|
|
96
|
+
}
|
|
97
|
+
import_context.TypescriptContext.diagnose(diagnostics);
|
|
98
|
+
}
|
|
99
|
+
function loadConfiguredOptions(path, into) {
|
|
100
|
+
if (!(0, import_fs.existsSync)(path)) {
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
const options = import_context.TypescriptContext.compilerOptionsFor(path);
|
|
104
|
+
delete options?.composite;
|
|
105
|
+
const types = options?.types;
|
|
106
|
+
if (types) {
|
|
107
|
+
if (into.types) {
|
|
108
|
+
const merged = new Set(into.types);
|
|
109
|
+
for (const type of types) {
|
|
110
|
+
merged.add(type);
|
|
111
|
+
}
|
|
112
|
+
into.types = [...merged];
|
|
113
|
+
} else {
|
|
114
|
+
into.types = types;
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
//# sourceMappingURL=incremental-compiler.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/building/typescript/incremental-compiler.ts"],
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,gBAA2B;AAC3B,wBAAyF;AACzF,qBAAwB;AACxB,mBAAmC;AAEnC,qBAAkC;AAXlC;AAAA;AAAA;AAAA;AAAA;AAaO,SAAS,iCACZ,YACA,QACA,iBACiB;AACjB,QAAM,cAAc;AAAA,IAChB,GAAG,iCAAkB,mBAAmB,uBAAQ,MAAM,QAAQ,wBAAwB,CAAC;AAAA,IAEvF,aAAa;AAAA,IACb,iBAAiB;AAAA,IACjB,cAAc;AAAA,EAClB;AAEA,SAAO,EAAE,MAAM;AAEf,iBAAe,MAAM,KAAc,MAAc,MAAgB;AAC7D,QAAI;AACJ,QAAI,MAAM;AACN,gBAAU;AAAA,QACN,QAAQ,IAAI,QAAQ,aAAa;AAAA,QACjC,qBAAqB;AAAA,QACrB,WAAW;AAAA,QACX,gBAAgB;AAAA,MACpB;AAAA,IACJ,OAAO;AACH,gBAAU;AAAA,QACN,QAAQ;AAAA,MACZ;AAAA,IACJ;AAEA,cAAU;AAAA,MACN,GAAG;AAAA,MACH,iBAAiB,IAAI,QAAQ,mBAAmB;AAAA,MAChD,SAAS,IAAI;AAAA,MACb,GAAG;AAAA,IACP;AAEA,WAAO,QAAQ;AAEf,QAAI,IAAI,QAAQ;AACZ,4BAAsB,IAAI,QAAQ,mBAAmB,GAAG,OAAO;AAAA,IACnE;AAEA,QAAI,IAAI,UAAU;AACd,4BAAsB,IAAI,QAAQ,mBAAmB,GAAG,OAAO;AAAA,IACnE;AAEA,UAAM,WAAO,iDAA8B,OAAO;AAElD,qCAAkB,yBAAyB,MAAM,eAAe;AAChE,UAAM,UAAU,MAAc;AAE9B,QAAI,SAAS,OAAO;AAChB,UAAI,IAAI,QAAQ;AACZ,gBAAQ,KAAK,GAAI,MAAM,IAAI,KAAK,aAAa,CAAE;AAAA,MACnD;AAAA,IACJ,WAAW,SAAS,QAAQ;AACxB,UAAI,IAAI,UAAU;AACd,gBAAQ,KAAK,GAAI,MAAM,IAAI,KAAK,cAAc,CAAE;AAAA,MACpD;AAAA,IACJ,OAAO;AACH,YAAM,IAAI,gCAAmB,2BAA2B,IAAI,GAAG;AAAA,IACnE;AAEA,UAAM,cAAU,4CAAyB;AAAA,MACrC,WAAW;AAAA,MACX;AAAA,MACA;AAAA,IACJ,CAAC;AAGD,UAAM,cAAc;AAAA,MAChB,GAAG,QAAQ,gCAAgC;AAAA,MAC3C,GAAG,QAAQ,wBAAwB;AAAA,MACnC,GAAG,QAAQ,sBAAsB;AAAA,MACjC,GAAG,QAAQ,uBAAuB;AAAA,IACtC;AAEA,QAAI,CAAC,QAAQ,QAAQ;AACjB,kBAAY,KAAK,GAAG,QAAQ,KAAK,EAAE,WAAW;AAAA,IAClD;AAEA,qCAAkB,SAAS,WAAW;AAAA,EAC1C;AAMA,WAAS,sBAAsB,MAAc,MAAuB;AAChE,QAAI,KAAC,sBAAW,IAAI,GAAG;AAEnB;AAAA,IACJ;AAEA,UAAM,UAAU,iCAAkB,mBAAmB,IAAI;AAEzD,WAAO,SAAS;AAEhB,UAAM,QAAQ,SAAS;AACvB,QAAI,OAAO;AACP,UAAI,KAAK,OAAO;AACZ,cAAM,SAAS,IAAI,IAAI,KAAK,KAAK;AACjC,mBAAW,QAAQ,OAAO;AACtB,iBAAO,IAAI,IAAI;AAAA,QACnB;AACA,aAAK,QAAQ,CAAC,GAAG,MAAM;AAAA,MAC3B,OAAO;AACH,aAAK,QAAQ;AAAA,MACjB;AAAA,IACJ;AAAA,EACJ;AACJ;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2024 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { Package } from "../../util/package.js";
|
|
7
|
+
import { Graph } from "../graph.js";
|
|
8
|
+
import { TypescriptContext } from "./context.js";
|
|
9
|
+
/**
|
|
10
|
+
* This is highly experimental and not yet fully functional.
|
|
11
|
+
*/
|
|
12
|
+
export declare function createLanguageServiceContext(workspace: Package, _graph: Graph | undefined, refreshCallback: () => void): Promise<TypescriptContext>;
|
|
13
|
+
//# sourceMappingURL=language-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"language-service.d.ts","sourceRoot":"","sources":["../../../../src/building/typescript/language-service.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAiBH,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEjD;;GAEG;AACH,wBAAsB,4BAA4B,CAC9C,SAAS,EAAE,OAAO,EAClB,MAAM,EAAE,KAAK,GAAG,SAAS,EACzB,eAAe,EAAE,MAAM,IAAI,GAC5B,OAAO,CAAC,iBAAiB,CAAC,CAmG5B"}
|