@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,100 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var cli_exports = {};
|
|
30
|
+
__export(cli_exports, {
|
|
31
|
+
main: () => main
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(cli_exports);
|
|
34
|
+
var import_yargs = __toESM(require("yargs"), 1);
|
|
35
|
+
var import_helpers = require("yargs/helpers");
|
|
36
|
+
var import_builder = require("./builder.js");
|
|
37
|
+
var import_graph = require("./graph.js");
|
|
38
|
+
var import_project = require("./project.js");
|
|
39
|
+
var import_tsconfig = require("./tsconfig.js");
|
|
40
|
+
/**
|
|
41
|
+
* @license
|
|
42
|
+
* Copyright 2022-2024 Matter.js Authors
|
|
43
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
44
|
+
*/
|
|
45
|
+
var Mode = /* @__PURE__ */ ((Mode2) => {
|
|
46
|
+
Mode2[Mode2["BuildProject"] = 0] = "BuildProject";
|
|
47
|
+
Mode2[Mode2["BuildProjectWithDependencies"] = 1] = "BuildProjectWithDependencies";
|
|
48
|
+
Mode2[Mode2["BuildWorkspace"] = 2] = "BuildWorkspace";
|
|
49
|
+
Mode2[Mode2["DisplayGraph"] = 3] = "DisplayGraph";
|
|
50
|
+
Mode2[Mode2["SyncTsconfigs"] = 4] = "SyncTsconfigs";
|
|
51
|
+
return Mode2;
|
|
52
|
+
})(Mode || {});
|
|
53
|
+
async function main(argv = process.argv) {
|
|
54
|
+
const targets = Array();
|
|
55
|
+
let mode = 0 /* BuildProject */;
|
|
56
|
+
const args = await (0, import_yargs.default)((0, import_helpers.hideBin)(argv)).usage("Builds packages adhering to matter.js standards.").option("prefix", { alias: "p", default: ".", type: "string", describe: "specify build directory" }).option("clean", { alias: "c", default: false, type: "boolean", describe: "clean before build" }).option("workspaces", { alias: "w", default: false, type: "boolean", describe: "build all workspace packages" }).option("dependencies", { alias: "d", default: false, type: "boolean", describe: "build dependencies" }).command("*", "build types and both JS files", () => {
|
|
57
|
+
}).command("clean", "remove build and dist directories", () => targets.push(import_builder.Target.clean)).command("types", "build type definitions", () => targets.push(import_builder.Target.types)).command("esm", "build JS (ES6 modules)", () => targets.push(import_builder.Target.esm)).command("cjs", "build JS (CommonJS modules)", () => targets.push(import_builder.Target.cjs)).command("graph", "display the workspace graph", () => mode = 3 /* DisplayGraph */).command("tsconfigs", "sync all tsconfigs with package.json", () => mode = 4 /* SyncTsconfigs */).wrap(Math.min(process.stdout.columns, 80)).strict().argv;
|
|
58
|
+
if (mode === 0 /* BuildProject */) {
|
|
59
|
+
if (args.workspaces) {
|
|
60
|
+
mode = 2 /* BuildWorkspace */;
|
|
61
|
+
} else if (args.dependencies) {
|
|
62
|
+
mode = 1 /* BuildProjectWithDependencies */;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
function builder(graph) {
|
|
66
|
+
return new import_builder.Builder({ ...args, targets: [...targets], graph });
|
|
67
|
+
}
|
|
68
|
+
switch (mode) {
|
|
69
|
+
case 0 /* BuildProject */:
|
|
70
|
+
const project = new import_project.Project(args.prefix);
|
|
71
|
+
await builder().build(project);
|
|
72
|
+
break;
|
|
73
|
+
case 1 /* BuildProjectWithDependencies */:
|
|
74
|
+
{
|
|
75
|
+
const graph = await import_graph.Graph.forProject(args.prefix);
|
|
76
|
+
if (graph === void 0) {
|
|
77
|
+
throw new Error(`Cannot build with dependencies because ${args.prefix} is not in a workspace`);
|
|
78
|
+
}
|
|
79
|
+
await graph.build(builder(graph));
|
|
80
|
+
}
|
|
81
|
+
break;
|
|
82
|
+
case 2 /* BuildWorkspace */:
|
|
83
|
+
{
|
|
84
|
+
const graph = await import_graph.Graph.load();
|
|
85
|
+
await (0, import_tsconfig.syncAllTsconfigs)(graph);
|
|
86
|
+
await graph.build(builder());
|
|
87
|
+
}
|
|
88
|
+
break;
|
|
89
|
+
case 3 /* DisplayGraph */:
|
|
90
|
+
(await import_graph.Graph.load()).display();
|
|
91
|
+
break;
|
|
92
|
+
case 4 /* SyncTsconfigs */:
|
|
93
|
+
{
|
|
94
|
+
const graph = await import_graph.Graph.load();
|
|
95
|
+
await (0, import_tsconfig.syncAllTsconfigs)(graph);
|
|
96
|
+
}
|
|
97
|
+
break;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=cli.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/building/cli.ts"],
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,mBAAkB;AAClB,qBAAwB;AACxB,qBAAgC;AAChC,mBAAsB;AACtB,qBAAwB;AACxB,sBAAiC;AAXjC;AAAA;AAAA;AAAA;AAAA;AAaA,IAAK,OAAL,kBAAKA,UAAL;AACI,EAAAA,YAAA;AACA,EAAAA,YAAA;AACA,EAAAA,YAAA;AACA,EAAAA,YAAA;AACA,EAAAA,YAAA;AALC,SAAAA;AAAA,GAAA;AAQL,eAAsB,KAAK,OAAO,QAAQ,MAAM;AAC5C,QAAM,UAAU,MAAc;AAC9B,MAAI,OAAO;AAEX,QAAM,OAAO,UAAM,aAAAC,aAAM,wBAAQ,IAAI,CAAC,EACjC,MAAM,kDAAkD,EACxD,OAAO,UAAU,EAAE,OAAO,KAAK,SAAS,KAAK,MAAM,UAAU,UAAU,0BAA0B,CAAC,EAClG,OAAO,SAAS,EAAE,OAAO,KAAK,SAAS,OAAO,MAAM,WAAW,UAAU,qBAAqB,CAAC,EAC/F,OAAO,cAAc,EAAE,OAAO,KAAK,SAAS,OAAO,MAAM,WAAW,UAAU,+BAA+B,CAAC,EAC9G,OAAO,gBAAgB,EAAE,OAAO,KAAK,SAAS,OAAO,MAAM,WAAW,UAAU,qBAAqB,CAAC,EACtG,QAAQ,KAAK,iCAAiC,MAAM;AAAA,EAAC,CAAC,EACtD,QAAQ,SAAS,qCAAqC,MAAM,QAAQ,KAAK,sBAAO,KAAK,CAAC,EACtF,QAAQ,SAAS,0BAA0B,MAAM,QAAQ,KAAK,sBAAO,KAAK,CAAC,EAC3E,QAAQ,OAAO,0BAA0B,MAAM,QAAQ,KAAK,sBAAO,GAAG,CAAC,EACvE,QAAQ,OAAO,+BAA+B,MAAM,QAAQ,KAAK,sBAAO,GAAG,CAAC,EAC5E,QAAQ,SAAS,+BAA+B,MAAO,OAAO,oBAAkB,EAChF,QAAQ,aAAa,wCAAwC,MAAO,OAAO,qBAAmB,EAC9F,KAAK,KAAK,IAAI,QAAQ,OAAO,SAAS,EAAE,CAAC,EACzC,OAAO,EAAE;AAEd,MAAI,SAAS,sBAAmB;AAC5B,QAAI,KAAK,YAAY;AACjB,aAAO;AAAA,IACX,WAAW,KAAK,cAAc;AAC1B,aAAO;AAAA,IACX;AAAA,EACJ;AAEA,WAAS,QAAQ,OAAe;AAC5B,WAAO,IAAI,uBAAQ,EAAE,GAAG,MAAM,SAAS,CAAC,GAAG,OAAO,GAAG,MAAM,CAAC;AAAA,EAChE;AAEA,UAAQ,MAAc;AAAA,IAClB,KAAK;AACD,YAAM,UAAU,IAAI,uBAAQ,KAAK,MAAM;AACvC,YAAM,QAAQ,EAAE,MAAM,OAAO;AAC7B;AAAA,IAEJ,KAAK;AACD;AACI,cAAM,QAAQ,MAAM,mBAAM,WAAW,KAAK,MAAM;AAChD,YAAI,UAAU,QAAW;AACrB,gBAAM,IAAI,MAAM,0CAA0C,KAAK,MAAM,wBAAwB;AAAA,QACjG;AACA,cAAM,MAAM,MAAM,QAAQ,KAAK,CAAC;AAAA,MACpC;AACA;AAAA,IAEJ,KAAK;AACD;AACI,cAAM,QAAQ,MAAM,mBAAM,KAAK;AAC/B,kBAAM,kCAAiB,KAAK;AAC5B,cAAM,MAAM,MAAM,QAAQ,CAAC;AAAA,MAC/B;AACA;AAAA,IAEJ,KAAK;AACD,OAAC,MAAM,mBAAM,KAAK,GAAG,QAAQ;AAC7B;AAAA,IAEJ,KAAK;AACD;AACI,cAAM,QAAQ,MAAM,mBAAM,KAAK;AAC/B,kBAAM,kCAAiB,KAAK;AAAA,MAChC;AACA;AAAA,EACR;AACJ;",
|
|
5
|
+
"names": ["Mode", "yargs"]
|
|
6
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2024 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
export declare class InternalBuildError extends Error {
|
|
7
|
+
constructor(message: string);
|
|
8
|
+
}
|
|
9
|
+
export declare class BuildError extends Error {
|
|
10
|
+
readonly diagnostics: string;
|
|
11
|
+
constructor(diagnostics: string);
|
|
12
|
+
get stack(): string;
|
|
13
|
+
toString(): string;
|
|
14
|
+
inspect(): string;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=error.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../../src/building/error.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,qBAAa,kBAAmB,SAAQ,KAAK;gBAC7B,OAAO,EAAE,MAAM;CAG9B;AAED,qBAAa,UAAW,SAAQ,KAAK;IACrB,QAAQ,CAAC,WAAW,EAAE,MAAM;gBAAnB,WAAW,EAAE,MAAM;IAIxC,IAAa,KAAK,WAEjB;IAEQ,QAAQ;IAIjB,OAAO;CAGV"}
|
|
@@ -0,0 +1,50 @@
|
|
|
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 error_exports = {};
|
|
20
|
+
__export(error_exports, {
|
|
21
|
+
BuildError: () => BuildError,
|
|
22
|
+
InternalBuildError: () => InternalBuildError
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(error_exports);
|
|
25
|
+
/**
|
|
26
|
+
* @license
|
|
27
|
+
* Copyright 2022-2024 Matter.js Authors
|
|
28
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
29
|
+
*/
|
|
30
|
+
class InternalBuildError extends Error {
|
|
31
|
+
constructor(message) {
|
|
32
|
+
super(message);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
class BuildError extends Error {
|
|
36
|
+
constructor(diagnostics) {
|
|
37
|
+
super();
|
|
38
|
+
this.diagnostics = diagnostics;
|
|
39
|
+
}
|
|
40
|
+
get stack() {
|
|
41
|
+
return this.diagnostics;
|
|
42
|
+
}
|
|
43
|
+
toString() {
|
|
44
|
+
return this.diagnostics;
|
|
45
|
+
}
|
|
46
|
+
inspect() {
|
|
47
|
+
return this.toString();
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=error.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/building/error.ts"],
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMO,MAAM,2BAA2B,MAAM;AAAA,EAC1C,YAAY,SAAiB;AACzB,UAAM,OAAO;AAAA,EACjB;AACJ;AAEO,MAAM,mBAAmB,MAAM;AAAA,EAClC,YAAqB,aAAqB;AACtC,UAAM;AADW;AAAA,EAErB;AAAA,EAEA,IAAa,QAAQ;AACjB,WAAO,KAAK;AAAA,EAChB;AAAA,EAES,WAAW;AAChB,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,UAAU;AACN,WAAO,KAAK,SAAS;AAAA,EACzB;AACJ;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
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 { Builder } from "./builder.js";
|
|
8
|
+
import { BuildInformation, Project } from "./project.js";
|
|
9
|
+
/**
|
|
10
|
+
* Graph of dependencies for workspace packages.
|
|
11
|
+
*
|
|
12
|
+
* We use this information to determine which packages are "dirty" and need rebuild. In the future we can also use for
|
|
13
|
+
* parallel build, only tricky part there is showing status.
|
|
14
|
+
*/
|
|
15
|
+
export declare class Graph {
|
|
16
|
+
#private;
|
|
17
|
+
readonly nodes: Graph.Node[];
|
|
18
|
+
protected constructor(nodes: Graph.Node[]);
|
|
19
|
+
get(name: string): Graph.Node;
|
|
20
|
+
static load(pkg?: Package): Promise<Graph>;
|
|
21
|
+
static forProject(path: string): Promise<Graph | undefined>;
|
|
22
|
+
build(builder: Builder, showSkipped?: boolean): Promise<void>;
|
|
23
|
+
display(): void;
|
|
24
|
+
}
|
|
25
|
+
export declare namespace Graph {
|
|
26
|
+
interface Node {
|
|
27
|
+
pkg: Package;
|
|
28
|
+
project: Project;
|
|
29
|
+
dependencies: Node[];
|
|
30
|
+
buildTime: number;
|
|
31
|
+
info: BuildInformation;
|
|
32
|
+
modifyTime: number;
|
|
33
|
+
isDirty: boolean;
|
|
34
|
+
prebuildDirty: boolean;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=graph.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../../src/building/graph.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAqB,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAEhE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,OAAO,EAAuB,gBAAgB,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE9E;;;;;GAKG;AACH,qBAAa,KAAK;;IACQ,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE;IAAlD,SAAS,aAAsB,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE;IAElD,GAAG,CAAC,IAAI,EAAE,MAAM;WAQH,IAAI,CAAC,GAAG,UAAoB;WAK5B,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,SAAS,CAAC;IAuC3D,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,UAAO;IAmChD,OAAO;CAiHV;AAED,yBAAiB,KAAK,CAAC;IACnB,UAAiB,IAAI;QACjB,GAAG,EAAE,OAAO,CAAC;QACb,OAAO,EAAE,OAAO,CAAC;QACjB,YAAY,EAAE,IAAI,EAAE,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,gBAAgB,CAAC;QACvB,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,OAAO,CAAC;QACjB,aAAa,EAAE,OAAO,CAAC;KAC1B;CACJ"}
|
|
@@ -0,0 +1,222 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var graph_exports = {};
|
|
30
|
+
__export(graph_exports, {
|
|
31
|
+
Graph: () => Graph
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(graph_exports);
|
|
34
|
+
var import_map_workspaces = __toESM(require("@npmcli/map-workspaces"), 1);
|
|
35
|
+
var import_ansi_colors = __toESM(require("ansi-colors"), 1);
|
|
36
|
+
var import_package = require("../util/package.js");
|
|
37
|
+
var import_progress = require("../util/progress.js");
|
|
38
|
+
var import_error = require("./error.js");
|
|
39
|
+
var import_project = require("./project.js");
|
|
40
|
+
/**
|
|
41
|
+
* @license
|
|
42
|
+
* Copyright 2022-2024 Matter.js Authors
|
|
43
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
44
|
+
*/
|
|
45
|
+
class Graph {
|
|
46
|
+
constructor(nodes) {
|
|
47
|
+
this.nodes = nodes;
|
|
48
|
+
}
|
|
49
|
+
get(name) {
|
|
50
|
+
const node = this.nodes.find((node2) => node2.pkg.name === name);
|
|
51
|
+
if (node === void 0) {
|
|
52
|
+
throw new Error(`Cannot locate package "${name}"`);
|
|
53
|
+
}
|
|
54
|
+
return node;
|
|
55
|
+
}
|
|
56
|
+
static async load(pkg = import_package.Package.workspace) {
|
|
57
|
+
const nodeMap = await this.#loadNodes(pkg.workspace);
|
|
58
|
+
return await this.#createGraph(Object.values(nodeMap));
|
|
59
|
+
}
|
|
60
|
+
static async forProject(path) {
|
|
61
|
+
let workspace;
|
|
62
|
+
try {
|
|
63
|
+
workspace = import_package.Package.workspaceFor(path);
|
|
64
|
+
} catch (e) {
|
|
65
|
+
if (e instanceof import_package.JsonNotFoundError) {
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
throw e;
|
|
69
|
+
}
|
|
70
|
+
const nodeMap = await this.#loadNodes(workspace);
|
|
71
|
+
const rootPkg = new import_package.Package({ path });
|
|
72
|
+
const rootNode = nodeMap[rootPkg.json.name];
|
|
73
|
+
if (!rootNode) {
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
const nodes = /* @__PURE__ */ new Set();
|
|
77
|
+
function addNode(node) {
|
|
78
|
+
if (nodes.has(node)) {
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
nodes.add(node);
|
|
82
|
+
for (const dependency of node.dependencies) {
|
|
83
|
+
addNode(dependency);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
addNode(rootNode);
|
|
87
|
+
return await this.#createGraph([...nodes]);
|
|
88
|
+
}
|
|
89
|
+
// TODO - parallelization will be trivial except need to update Progress
|
|
90
|
+
// to support display of multiple simultaneous tasks
|
|
91
|
+
async build(builder, showSkipped = true) {
|
|
92
|
+
const toBuild = new Set(this.nodes);
|
|
93
|
+
for (const node of this.nodes) {
|
|
94
|
+
await builder.configure(node.project);
|
|
95
|
+
}
|
|
96
|
+
while (toBuild.size) {
|
|
97
|
+
let node;
|
|
98
|
+
nodes: for (node of toBuild) {
|
|
99
|
+
for (const dep of node.dependencies) {
|
|
100
|
+
if (dep.isDirty) {
|
|
101
|
+
continue nodes;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
break;
|
|
105
|
+
}
|
|
106
|
+
if (!node) {
|
|
107
|
+
throw new Error("Internal logic error: No unbuilt project has fully built dependencies");
|
|
108
|
+
}
|
|
109
|
+
if (node.isDirty || builder.unconditional) {
|
|
110
|
+
await builder.build(node.project);
|
|
111
|
+
node.info.timestamp = (/* @__PURE__ */ new Date()).toISOString();
|
|
112
|
+
} else if (showSkipped) {
|
|
113
|
+
new import_progress.Progress().skip("Up to date", node.pkg);
|
|
114
|
+
}
|
|
115
|
+
toBuild.delete(node);
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
display() {
|
|
119
|
+
for (const node of this.nodes) {
|
|
120
|
+
const progress = node.pkg.start("Node");
|
|
121
|
+
progress.info("path", node.pkg.path);
|
|
122
|
+
progress.info("modified", formatTime(node.modifyTime));
|
|
123
|
+
progress.info("built", formatTime(node.info.timestamp ?? 0));
|
|
124
|
+
progress.info("dirty", node.isDirty ? import_ansi_colors.default.dim.red("yes") : import_ansi_colors.default.dim.green("no"));
|
|
125
|
+
progress.info("dependencies", node.dependencies.map(formatDep).join(", "));
|
|
126
|
+
progress.shutdown();
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
static async #createGraph(nodes) {
|
|
130
|
+
const graph = new Graph(nodes);
|
|
131
|
+
await Promise.all(
|
|
132
|
+
graph.nodes.map(async (node) => {
|
|
133
|
+
if (node.pkg.hasFile(import_project.BUILD_INFO_LOCATION)) {
|
|
134
|
+
node.info = await node.pkg.readJson(import_project.BUILD_INFO_LOCATION);
|
|
135
|
+
}
|
|
136
|
+
node.modifyTime = await node.pkg.lastModified("package.json", "src", "test");
|
|
137
|
+
return node;
|
|
138
|
+
})
|
|
139
|
+
);
|
|
140
|
+
const stack = Array();
|
|
141
|
+
function findCircular(node) {
|
|
142
|
+
if (stack.indexOf(node) !== -1) {
|
|
143
|
+
stack.push(node);
|
|
144
|
+
throw new import_error.InternalBuildError(`Circular dependency: ${stack.map(formatDep).join(" \u25B8 ")}`);
|
|
145
|
+
}
|
|
146
|
+
stack.push(node);
|
|
147
|
+
for (const dep of node.dependencies) {
|
|
148
|
+
findCircular(dep);
|
|
149
|
+
}
|
|
150
|
+
stack.pop();
|
|
151
|
+
}
|
|
152
|
+
for (const node of graph.nodes) {
|
|
153
|
+
findCircular(node);
|
|
154
|
+
}
|
|
155
|
+
return graph;
|
|
156
|
+
}
|
|
157
|
+
static async #loadNodes(workspace) {
|
|
158
|
+
const workspaces = await (0, import_map_workspaces.default)({ pkg: workspace.json, cwd: workspace.path });
|
|
159
|
+
const nodeMap = {};
|
|
160
|
+
const allDeps = {};
|
|
161
|
+
for (const path of workspaces.values()) {
|
|
162
|
+
const pkg = new import_package.Package({ path });
|
|
163
|
+
allDeps[pkg.json.name] = pkg.dependencies;
|
|
164
|
+
nodeMap[pkg.json.name] = {
|
|
165
|
+
pkg,
|
|
166
|
+
project: new import_project.Project(pkg),
|
|
167
|
+
dependencies: [],
|
|
168
|
+
info: {},
|
|
169
|
+
modifyTime: 0,
|
|
170
|
+
get buildTime() {
|
|
171
|
+
return this.info.timestamp ? new Date(this.info.timestamp).getTime() : 0;
|
|
172
|
+
},
|
|
173
|
+
get isDirty() {
|
|
174
|
+
return this.modifyTime > this.buildTime || !!this.dependencies.find(
|
|
175
|
+
(dep) => dep.isDirty || dep.buildTime > this.buildTime && (dep.info.apiSha === void 0 || dep.info.apiSha !== this.info.dependencyApiShas?.[dep.pkg.name])
|
|
176
|
+
);
|
|
177
|
+
},
|
|
178
|
+
// This version of dirty should only be used after building all dependencies. If this project is
|
|
179
|
+
// unmodified and the SHA of the type definitions of the target project is also unmodified then we do
|
|
180
|
+
// not need to build
|
|
181
|
+
get prebuildDirty() {
|
|
182
|
+
if (this.modifyTime > this.buildTime) {
|
|
183
|
+
return true;
|
|
184
|
+
}
|
|
185
|
+
const depShas = this.info.dependencyApiShas;
|
|
186
|
+
if (typeof depShas !== "object") {
|
|
187
|
+
return this.isDirty;
|
|
188
|
+
}
|
|
189
|
+
for (const dep of this.dependencies) {
|
|
190
|
+
const depSha = depShas[dep.pkg.name];
|
|
191
|
+
if (depSha === void 0 || depSha !== dep.info.apiSha) {
|
|
192
|
+
return true;
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
return false;
|
|
196
|
+
}
|
|
197
|
+
};
|
|
198
|
+
}
|
|
199
|
+
for (const name in allDeps) {
|
|
200
|
+
for (const dep of allDeps[name]) {
|
|
201
|
+
const depNode = nodeMap[dep];
|
|
202
|
+
if (depNode && depNode !== nodeMap[name]) {
|
|
203
|
+
nodeMap[name].dependencies.push(depNode);
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
return nodeMap;
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
function formatTime(time) {
|
|
211
|
+
if (!time) {
|
|
212
|
+
return import_ansi_colors.default.dim.red("never");
|
|
213
|
+
}
|
|
214
|
+
if (typeof time === "string") {
|
|
215
|
+
time = new Date(time).getTime();
|
|
216
|
+
}
|
|
217
|
+
return new Date(time - (/* @__PURE__ */ new Date()).getTimezoneOffset()).toISOString().split(".")[0].replace("T", " ");
|
|
218
|
+
}
|
|
219
|
+
function formatDep(node) {
|
|
220
|
+
return node.pkg.name.replace(/^@(?:project-chip|matter\.js)\//, "");
|
|
221
|
+
}
|
|
222
|
+
//# sourceMappingURL=graph.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/building/graph.ts"],
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": ["node", "colors", "mapWorkspaces"]
|
|
6
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2024 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { Hash } from "crypto";
|
|
7
|
+
import { Format } from "esbuild";
|
|
8
|
+
import { Package } from "../util/package.js";
|
|
9
|
+
import { Progress } from "../util/progress.js";
|
|
10
|
+
export declare const BUILD_INFO_LOCATION = "build/info.json";
|
|
11
|
+
export interface BuildInformation {
|
|
12
|
+
/**
|
|
13
|
+
* Time of last build. Compared to source files to determine whether build is dirty.
|
|
14
|
+
*/
|
|
15
|
+
timestamp?: string;
|
|
16
|
+
/**
|
|
17
|
+
* API signature. Used by dependents to determine whether they need to rebuild after we do.
|
|
18
|
+
*/
|
|
19
|
+
apiSha?: string;
|
|
20
|
+
/**
|
|
21
|
+
* API signature of each dependency. Compared to apiSha of each dependency during dirty detection.
|
|
22
|
+
*/
|
|
23
|
+
dependencyApiShas?: Record<string, string>;
|
|
24
|
+
}
|
|
25
|
+
export declare class Project {
|
|
26
|
+
#private;
|
|
27
|
+
pkg: Package;
|
|
28
|
+
constructor(source?: Package | string);
|
|
29
|
+
buildSource(format: Format): Promise<void>;
|
|
30
|
+
buildTests(format: Format): Promise<void>;
|
|
31
|
+
clean(): Promise<void>;
|
|
32
|
+
/**
|
|
33
|
+
* Installs declaration files into specified directory. Also computes SHA-1 hash for all files that we use to
|
|
34
|
+
* detect "public API changes".
|
|
35
|
+
*
|
|
36
|
+
* Note we use cp to traverse filesystem, detect changes, locate source maps and compute API SHA. A little
|
|
37
|
+
* convoluted but works. When you correct for a node 20/windows bug.
|
|
38
|
+
*/
|
|
39
|
+
installDeclarationFormats(formats: Iterable<string>, apiSha?: Hash): Promise<void>;
|
|
40
|
+
get hasDeclarations(): boolean;
|
|
41
|
+
installDeclarations(apiSha?: Hash): Promise<void>;
|
|
42
|
+
recordBuildInfo(info: BuildInformation): Promise<void>;
|
|
43
|
+
configure(progress: Progress): Promise<Project.Config | undefined>;
|
|
44
|
+
}
|
|
45
|
+
export declare namespace Project {
|
|
46
|
+
interface Context {
|
|
47
|
+
project: Project;
|
|
48
|
+
progress: Progress;
|
|
49
|
+
}
|
|
50
|
+
interface Config {
|
|
51
|
+
startup?: (context: Context) => Promise<void>;
|
|
52
|
+
before?: (context: Context) => Promise<void>;
|
|
53
|
+
after?: (context: Context) => Promise<void>;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=project.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../../src/building/project.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAoB,MAAM,EAAE,MAAM,SAAS,CAAC;AAMnD,OAAO,EAAe,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/C,eAAO,MAAM,mBAAmB,oBAAoB,CAAC;AAErD,MAAM,WAAW,gBAAgB;IAC7B;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9C;AAED,qBAAa,OAAO;;IAChB,GAAG,EAAE,OAAO,CAAC;gBAID,MAAM,GAAE,OAAO,GAAG,MAAY;IAYpC,WAAW,CAAC,MAAM,EAAE,MAAM;IAK1B,UAAU,CAAC,MAAM,EAAE,MAAM;IA2BzB,KAAK;IAMX;;;;;;OAMG;IACG,yBAAyB,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,IAAI;IAsFxE,IAAI,eAAe,YAElB;IAEK,mBAAmB,CAAC,MAAM,CAAC,EAAE,IAAI;IAYjC,eAAe,CAAC,IAAI,EAAE,gBAAgB;IAMtC,SAAS,CAAC,QAAQ,EAAE,QAAQ;CA8FrC;AAED,yBAAiB,OAAO,CAAC;IACrB,UAAiB,OAAO;QACpB,OAAO,EAAE,OAAO,CAAC;QACjB,QAAQ,EAAE,QAAQ,CAAC;KACtB;IAED,UAAiB,MAAM;QACnB,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;QAC9C,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;QAC7C,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;KAC/C;CACJ"}
|