@codefast/cli 0.3.13-canary.2 → 0.3.13-canary.4
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/README.md +30 -4
- package/dist/{bin.js → bin.mjs} +4 -1
- package/dist/commands/arrange.mjs +325 -0
- package/dist/commands/mirror.mjs +267 -0
- package/dist/commands/tag.mjs +283 -0
- package/dist/lib/arrange/application/arrange-analyze-json.format.mjs +10 -0
- package/dist/lib/arrange/application/arrange-group-json.format.mjs +11 -0
- package/dist/lib/arrange/application/arrange-sync-cli-result.mjs +7 -0
- package/dist/lib/arrange/application/arrange-sync-json.format.mjs +12 -0
- package/dist/lib/arrange/application/services/arrange-file-processor.service.mjs +242 -0
- package/dist/lib/arrange/application/services/arrange-target-scanner.service.mjs +237 -0
- package/dist/lib/arrange/application/use-cases/analyze-directory.use-case.mjs +258 -0
- package/dist/lib/arrange/application/use-cases/group-file.use-case.mjs +35 -0
- package/dist/lib/arrange/application/use-cases/run-arrange-sync.use-case.mjs +283 -0
- package/dist/lib/arrange/application/use-cases/suggest-cn-groups.use-case.mjs +233 -0
- package/dist/lib/arrange/arrange.feature.module.mjs +19 -0
- package/dist/lib/arrange/arrange.module.mjs +27 -0
- package/dist/lib/arrange/arrange.presentation.module.mjs +13 -0
- package/dist/lib/arrange/contracts/tokens.mjs +14 -0
- package/dist/lib/arrange/domain/arrange-analyze.service.mjs +95 -0
- package/dist/lib/arrange/domain/arrange-grouping.service.mjs +100 -0
- package/dist/lib/arrange/domain/ast/ast-helpers.helper.mjs +89 -0
- package/dist/lib/arrange/domain/ast/ast-node.model.mjs +181 -0
- package/dist/lib/arrange/domain/ast/collectors-cn.collector.mjs +52 -0
- package/dist/lib/arrange/domain/ast/collectors-jsx.collector.mjs +20 -0
- package/dist/lib/arrange/domain/ast/collectors-tv.collector.mjs +174 -0
- package/dist/lib/arrange/domain/ast/targets.model.mjs +110 -0
- package/dist/lib/arrange/domain/constants.domain.mjs +154 -0
- package/dist/lib/arrange/domain/errors.domain.mjs +18 -0
- package/dist/lib/arrange/domain/grouping.domain.mjs +306 -0
- package/dist/lib/arrange/domain/imports.domain.mjs +55 -0
- package/dist/lib/arrange/domain/source-text-formatters.formatter.mjs +54 -0
- package/dist/lib/arrange/domain/tokenizer.util.mjs +209 -0
- package/dist/lib/arrange/infra/domain-source-parser.adapter.mjs +240 -0
- package/dist/lib/arrange/infra/ensure-cn-import.adapter.mjs +8 -0
- package/dist/lib/arrange/infra/file-walker.adapter.mjs +239 -0
- package/dist/lib/arrange/infra/merge-cn-literal-pool-for-test.test-helper.mjs +18 -0
- package/dist/lib/arrange/infra/ts-ast-translator.adapter.mjs +355 -0
- package/dist/lib/arrange/presentation/arrange-cli-schema.presenter.mjs +29 -0
- package/dist/lib/arrange/presentation/arrange-sync.presenter.mjs +12 -0
- package/dist/lib/arrange/presentation/formatters.presenter.mjs +2 -0
- package/dist/lib/arrange/presentation/group-file-preview.presenter.mjs +275 -0
- package/dist/lib/arrange/presentation/prepare-arrange.orchestrator.mjs +258 -0
- package/dist/lib/arrange/presentation/present-analyze-cli.presenter.mjs +7 -0
- package/dist/lib/arrange/presentation/present-analyze-report.presenter.mjs +233 -0
- package/dist/lib/arrange/presentation/report.presenter.mjs +24 -0
- package/dist/lib/arrange/presentation/resolve-arrange-cli-target.presenter.mjs +21 -0
- package/dist/lib/config/application/use-cases/load-config.use-case.mjs +17 -0
- package/dist/lib/config/contracts/tokens.mjs +5 -0
- package/dist/lib/config/infra/config-schema.adapter.mjs +25 -0
- package/dist/lib/config/infra/loader.adapter.mjs +84 -0
- package/dist/lib/core/application/architecture-boundaries.policy.mjs +311 -0
- package/dist/lib/core/application/ports/path.port.mjs +1 -0
- package/dist/lib/core/application/schema-parse.util.mjs +17 -0
- package/dist/lib/core/application/utils/caught-unknown-message.util.mjs +19 -0
- package/dist/lib/core/application/utils/verbose-diagnostics.util.mjs +9 -0
- package/dist/lib/core/contracts/presentation.contract.mjs +1 -0
- package/dist/lib/core/contracts/tokens.mjs +5 -0
- package/dist/lib/core/core.module.mjs +9 -0
- package/dist/lib/core/domain/cli-exit-codes.domain.mjs +11 -0
- package/dist/lib/core/domain/errors.domain.mjs +16 -0
- package/dist/lib/core/domain/result.model.mjs +23 -0
- package/dist/lib/core/infra/composition-root.mjs +21 -0
- package/dist/lib/core/infra/infra.module.mjs +23 -0
- package/dist/lib/core/infra/logging-decorator.adapter.mjs +62 -0
- package/dist/lib/core/infra/path.adapter.mjs +13 -0
- package/dist/lib/core/operational/contracts/tokens.mjs +7 -0
- package/dist/lib/core/presentation/cli-executor.presenter.mjs +57 -0
- package/dist/lib/core/presentation/command.interface.mjs +1 -0
- package/dist/lib/core/presentation/format-app-error.presenter.mjs +17 -0
- package/dist/lib/core/presentation/global-cli-options.presenter.mjs +9 -0
- package/dist/lib/core/presentation/load-codefast-config.presenter.mjs +18 -0
- package/dist/lib/core/presentation/parse-cli-schema.presenter.mjs +7 -0
- package/dist/lib/core/presentation/presentation.module.mjs +11 -0
- package/dist/lib/core/presentation/try-load-codefast-config.presenter.mjs +245 -0
- package/dist/lib/infra/config-reporter.adapter.mjs +9 -0
- package/dist/lib/infra/fs-contract.port.mjs +1 -0
- package/dist/lib/infra/node-io.adapter.mjs +266 -0
- package/dist/lib/infra/workspace/repo-root.adapter.mjs +21 -0
- package/dist/lib/kernel/di/command.token.mjs +5 -0
- package/dist/lib/mirror/application/mirror-sync-json.format.mjs +12 -0
- package/dist/lib/mirror/application/ports/file-system-service.port.mjs +1 -0
- package/dist/lib/mirror/application/ports/mirror-sync-reporter.port.mjs +1 -0
- package/dist/lib/mirror/application/ports/package-repository.port.mjs +1 -0
- package/dist/lib/mirror/application/ports/sync-workspace-package.port.mjs +1 -0
- package/dist/lib/mirror/application/ports/workspace-service.port.mjs +1 -0
- package/dist/lib/mirror/application/requests/mirror-sync.request.mjs +1 -0
- package/dist/lib/mirror/application/services/sync-workspace-package.service.mjs +351 -0
- package/dist/lib/mirror/application/use-cases/generate-mirror-exports.use-case.mjs +219 -0
- package/dist/lib/mirror/application/use-cases/run-mirror-sync.use-case.mjs +302 -0
- package/dist/lib/mirror/contracts/models.mjs +1 -0
- package/dist/lib/mirror/contracts/presentation.contract.mjs +1 -0
- package/dist/lib/mirror/contracts/tokens.mjs +11 -0
- package/dist/lib/mirror/contracts/use-cases.contract.mjs +1 -0
- package/dist/lib/mirror/domain/constants.domain.mjs +16 -0
- package/dist/lib/mirror/domain/errors.domain.mjs +15 -0
- package/dist/lib/mirror/domain/types.domain.mjs +1 -0
- package/dist/lib/mirror/infra/dirent-list.adapter.mjs +13 -0
- package/dist/lib/mirror/infra/file-system-service.adapter.mjs +256 -0
- package/dist/lib/mirror/infra/mirror-sync-cli-options.adapter.mjs +1 -0
- package/dist/lib/mirror/infra/mirror-sync-reporter.adapter.mjs +236 -0
- package/dist/lib/mirror/infra/package-filter.adapter.mjs +25 -0
- package/dist/lib/mirror/infra/package-repository.adapter.mjs +235 -0
- package/dist/lib/mirror/infra/path-normalizer.adapter.mjs +7 -0
- package/dist/lib/mirror/infra/update-pkg.adapter.mjs +102 -0
- package/dist/lib/mirror/infra/workspace-packages.adapter.mjs +154 -0
- package/dist/lib/mirror/infra/workspace-service.adapter.mjs +232 -0
- package/dist/lib/mirror/mirror.feature.module.mjs +19 -0
- package/dist/lib/mirror/mirror.module.mjs +23 -0
- package/dist/lib/mirror/mirror.presentation.module.mjs +11 -0
- package/dist/lib/mirror/presentation/mirror-cli-schema.presenter.mjs +12 -0
- package/dist/lib/mirror/presentation/prepare-mirror.orchestrator.mjs +263 -0
- package/dist/lib/mirror/presentation/reporter.presenter.mjs +111 -0
- package/dist/lib/mirror/presentation/resolve-mirror-package-arg.presenter.mjs +20 -0
- package/dist/lib/shared/source-code/domain/text-edit.model.mjs +28 -0
- package/dist/lib/shared/source-code/infra/tsx-file-walk.adapter.mjs +33 -0
- package/dist/lib/tag/application/ports/tag-since-writer.port.mjs +1 -0
- package/dist/lib/tag/application/ports/tag-version-resolver.port.mjs +1 -0
- package/dist/lib/tag/application/ports/target-resolver.port.mjs +1 -0
- package/dist/lib/tag/application/ports/typescript-tree-walk.port.mjs +1 -0
- package/dist/lib/tag/application/requests/tag-sync.request.mjs +1 -0
- package/dist/lib/tag/application/tag-sync-cli-result.mjs +11 -0
- package/dist/lib/tag/application/tag-sync-json.format.mjs +14 -0
- package/dist/lib/tag/application/use-cases/run-tag-sync.use-case.mjs +398 -0
- package/dist/lib/tag/contracts/models.mjs +1 -0
- package/dist/lib/tag/contracts/presentation.contract.mjs +1 -0
- package/dist/lib/tag/contracts/tokens.mjs +12 -0
- package/dist/lib/tag/contracts/use-cases.contract.mjs +1 -0
- package/dist/lib/tag/domain/types.domain.mjs +1 -0
- package/dist/lib/tag/infra/tag-since-writer.adapter.mjs +343 -0
- package/dist/lib/tag/infra/tag-sync-cli-options.adapter.mjs +1 -0
- package/dist/lib/tag/infra/tag-target-candidates.adapter.mjs +170 -0
- package/dist/lib/tag/infra/tag-target-resolver.adapter.mjs +226 -0
- package/dist/lib/tag/infra/tag-version-resolver.adapter.mjs +247 -0
- package/dist/lib/tag/infra/typescript-tree-walk.adapter.mjs +226 -0
- package/dist/lib/tag/presentation/colors.presenter.mjs +12 -0
- package/dist/lib/tag/presentation/create-tag-progress-listener.presenter.mjs +228 -0
- package/dist/lib/tag/presentation/prepare-tag.orchestrator.mjs +264 -0
- package/dist/lib/tag/presentation/present-tag-sync-result.presenter.mjs +233 -0
- package/dist/lib/tag/presentation/resolve-tag-cli-target.presenter.mjs +9 -0
- package/dist/lib/tag/presentation/resolve-tag-workspace-root.presenter.mjs +12 -0
- package/dist/lib/tag/presentation/tag-cli-schema.presenter.mjs +12 -0
- package/dist/lib/tag/presentation/tag-sync.presenter.mjs +78 -0
- package/dist/lib/tag/tag.feature.module.mjs +19 -0
- package/dist/lib/tag/tag.module.mjs +21 -0
- package/dist/lib/tag/tag.presentation.module.mjs +15 -0
- package/dist/program.mjs +39 -0
- package/package.json +16 -19
- package/dist/bin.d.ts +0 -3
- package/dist/bin.d.ts.map +0 -1
- package/dist/commands/arrange.d.ts +0 -3
- package/dist/commands/arrange.d.ts.map +0 -1
- package/dist/commands/arrange.js +0 -129
- package/dist/commands/mirror.d.ts +0 -4
- package/dist/commands/mirror.d.ts.map +0 -1
- package/dist/commands/mirror.js +0 -75
- package/dist/commands/tag.d.ts +0 -3
- package/dist/commands/tag.d.ts.map +0 -1
- package/dist/commands/tag.js +0 -41
- package/dist/lib/arrange/application/analyze.d.ts +0 -17
- package/dist/lib/arrange/application/analyze.d.ts.map +0 -1
- package/dist/lib/arrange/application/analyze.js +0 -24
- package/dist/lib/arrange/application/group-file-preview.d.ts +0 -17
- package/dist/lib/arrange/application/group-file-preview.d.ts.map +0 -1
- package/dist/lib/arrange/application/group-file-preview.js +0 -46
- package/dist/lib/arrange/application/group-file.d.ts +0 -5
- package/dist/lib/arrange/application/group-file.d.ts.map +0 -1
- package/dist/lib/arrange/application/group-file.js +0 -40
- package/dist/lib/arrange/application/ports/domain-source-parser.port.d.ts +0 -5
- package/dist/lib/arrange/application/ports/domain-source-parser.port.d.ts.map +0 -1
- package/dist/lib/arrange/application/ports/file-walker.port.d.ts +0 -5
- package/dist/lib/arrange/application/ports/file-walker.port.d.ts.map +0 -1
- package/dist/lib/arrange/application/requests/analyze-directory.request.d.ts +0 -6
- package/dist/lib/arrange/application/requests/analyze-directory.request.d.ts.map +0 -1
- package/dist/lib/arrange/application/requests/analyze-directory.request.js +0 -4
- package/dist/lib/arrange/application/requests/arrange-sync.request.d.ts +0 -18
- package/dist/lib/arrange/application/requests/arrange-sync.request.d.ts.map +0 -1
- package/dist/lib/arrange/application/requests/arrange-sync.request.js +0 -15
- package/dist/lib/arrange/application/run-target.d.ts +0 -19
- package/dist/lib/arrange/application/run-target.d.ts.map +0 -1
- package/dist/lib/arrange/application/run-target.js +0 -85
- package/dist/lib/arrange/domain/arrange-analyze.service.d.ts +0 -12
- package/dist/lib/arrange/domain/arrange-analyze.service.d.ts.map +0 -1
- package/dist/lib/arrange/domain/arrange-analyze.service.js +0 -116
- package/dist/lib/arrange/domain/arrange-grouping.service.d.ts +0 -53
- package/dist/lib/arrange/domain/arrange-grouping.service.d.ts.map +0 -1
- package/dist/lib/arrange/domain/arrange-grouping.service.js +0 -106
- package/dist/lib/arrange/domain/ast/ast-helpers.d.ts +0 -28
- package/dist/lib/arrange/domain/ast/ast-helpers.d.ts.map +0 -1
- package/dist/lib/arrange/domain/ast/ast-helpers.js +0 -130
- package/dist/lib/arrange/domain/ast/ast-node.model.d.ts +0 -179
- package/dist/lib/arrange/domain/ast/ast-node.model.d.ts.map +0 -1
- package/dist/lib/arrange/domain/ast/ast-node.model.js +0 -210
- package/dist/lib/arrange/domain/ast/collectors-cn.d.ts +0 -7
- package/dist/lib/arrange/domain/ast/collectors-cn.d.ts.map +0 -1
- package/dist/lib/arrange/domain/ast/collectors-cn.js +0 -70
- package/dist/lib/arrange/domain/ast/collectors-jsx.d.ts +0 -4
- package/dist/lib/arrange/domain/ast/collectors-jsx.d.ts.map +0 -1
- package/dist/lib/arrange/domain/ast/collectors-jsx.js +0 -21
- package/dist/lib/arrange/domain/ast/collectors-tv.d.ts +0 -13
- package/dist/lib/arrange/domain/ast/collectors-tv.d.ts.map +0 -1
- package/dist/lib/arrange/domain/ast/collectors-tv.js +0 -302
- package/dist/lib/arrange/domain/ast/targets.d.ts +0 -8
- package/dist/lib/arrange/domain/ast/targets.d.ts.map +0 -1
- package/dist/lib/arrange/domain/ast/targets.js +0 -147
- package/dist/lib/arrange/domain/constants.d.ts +0 -68
- package/dist/lib/arrange/domain/constants.d.ts.map +0 -1
- package/dist/lib/arrange/domain/constants.js +0 -180
- package/dist/lib/arrange/domain/errors.d.ts +0 -14
- package/dist/lib/arrange/domain/errors.d.ts.map +0 -1
- package/dist/lib/arrange/domain/errors.js +0 -16
- package/dist/lib/arrange/domain/grouping.d.ts +0 -41
- package/dist/lib/arrange/domain/grouping.d.ts.map +0 -1
- package/dist/lib/arrange/domain/grouping.js +0 -307
- package/dist/lib/arrange/domain/imports.d.ts +0 -7
- package/dist/lib/arrange/domain/imports.d.ts.map +0 -1
- package/dist/lib/arrange/domain/imports.js +0 -80
- package/dist/lib/arrange/domain/source-text-formatters.d.ts +0 -16
- package/dist/lib/arrange/domain/source-text-formatters.d.ts.map +0 -1
- package/dist/lib/arrange/domain/source-text-formatters.js +0 -55
- package/dist/lib/arrange/domain/tokenizer.d.ts +0 -45
- package/dist/lib/arrange/domain/tokenizer.d.ts.map +0 -1
- package/dist/lib/arrange/domain/tokenizer.js +0 -466
- package/dist/lib/arrange/domain/types.d.ts +0 -112
- package/dist/lib/arrange/domain/types.d.ts.map +0 -1
- package/dist/lib/arrange/domain/types.js +0 -7
- package/dist/lib/arrange/index.d.ts +0 -45
- package/dist/lib/arrange/index.d.ts.map +0 -1
- package/dist/lib/arrange/index.js +0 -41
- package/dist/lib/arrange/infra/arrange-sync-cli-options.d.ts +0 -14
- package/dist/lib/arrange/infra/arrange-sync-cli-options.d.ts.map +0 -1
- package/dist/lib/arrange/infra/domain-source-parser.adapter.d.ts +0 -11
- package/dist/lib/arrange/infra/domain-source-parser.adapter.d.ts.map +0 -1
- package/dist/lib/arrange/infra/domain-source-parser.adapter.js +0 -19
- package/dist/lib/arrange/infra/ensure-cn-import.d.ts +0 -3
- package/dist/lib/arrange/infra/ensure-cn-import.d.ts.map +0 -1
- package/dist/lib/arrange/infra/ensure-cn-import.js +0 -6
- package/dist/lib/arrange/infra/file-walker.adapter.d.ts +0 -8
- package/dist/lib/arrange/infra/file-walker.adapter.d.ts.map +0 -1
- package/dist/lib/arrange/infra/file-walker.adapter.js +0 -17
- package/dist/lib/arrange/infra/merge-cn-literal-pool-for-test.d.ts +0 -8
- package/dist/lib/arrange/infra/merge-cn-literal-pool-for-test.d.ts.map +0 -1
- package/dist/lib/arrange/infra/merge-cn-literal-pool-for-test.js +0 -25
- package/dist/lib/arrange/infra/ts-ast-translator.d.ts +0 -10
- package/dist/lib/arrange/infra/ts-ast-translator.d.ts.map +0 -1
- package/dist/lib/arrange/infra/ts-ast-translator.js +0 -363
- package/dist/lib/arrange/presentation/formatters.d.ts +0 -3
- package/dist/lib/arrange/presentation/formatters.d.ts.map +0 -1
- package/dist/lib/arrange/presentation/formatters.js +0 -2
- package/dist/lib/arrange/presentation/report.d.ts +0 -4
- package/dist/lib/arrange/presentation/report.d.ts.map +0 -1
- package/dist/lib/arrange/presentation/report.js +0 -37
- package/dist/lib/config/domain/schema.d.ts +0 -50
- package/dist/lib/config/domain/schema.d.ts.map +0 -1
- package/dist/lib/config/domain/schema.js +0 -43
- package/dist/lib/config/index.d.ts +0 -4
- package/dist/lib/config/index.d.ts.map +0 -1
- package/dist/lib/config/index.js +0 -2
- package/dist/lib/config/infra/loader.d.ts +0 -11
- package/dist/lib/config/infra/loader.d.ts.map +0 -1
- package/dist/lib/config/infra/loader.js +0 -90
- package/dist/lib/core/application/architecture-boundaries.d.ts +0 -19
- package/dist/lib/core/application/architecture-boundaries.d.ts.map +0 -1
- package/dist/lib/core/application/architecture-boundaries.js +0 -263
- package/dist/lib/core/application/ports/cli-io.port.d.ts +0 -27
- package/dist/lib/core/application/ports/cli-io.port.d.ts.map +0 -1
- package/dist/lib/core/application/schema-parse.d.ts +0 -8
- package/dist/lib/core/application/schema-parse.d.ts.map +0 -1
- package/dist/lib/core/application/schema-parse.js +0 -20
- package/dist/lib/core/application/utils/caught-unknown-message.d.ts +0 -6
- package/dist/lib/core/application/utils/caught-unknown-message.d.ts.map +0 -1
- package/dist/lib/core/application/utils/caught-unknown-message.js +0 -34
- package/dist/lib/core/application/utils/verbose-diagnostics.d.ts +0 -5
- package/dist/lib/core/application/utils/verbose-diagnostics.d.ts.map +0 -1
- package/dist/lib/core/application/utils/verbose-diagnostics.js +0 -7
- package/dist/lib/core/domain/errors.d.ts +0 -11
- package/dist/lib/core/domain/errors.d.ts.map +0 -1
- package/dist/lib/core/domain/errors.js +0 -9
- package/dist/lib/core/domain/result.d.ts +0 -15
- package/dist/lib/core/domain/result.d.ts.map +0 -1
- package/dist/lib/core/domain/result.js +0 -9
- package/dist/lib/core/infra/container.d.ts +0 -34
- package/dist/lib/core/infra/container.d.ts.map +0 -1
- package/dist/lib/core/infra/container.js +0 -65
- package/dist/lib/core/infra/logging-decorator.d.ts +0 -12
- package/dist/lib/core/infra/logging-decorator.d.ts.map +0 -1
- package/dist/lib/core/infra/logging-decorator.js +0 -75
- package/dist/lib/core/presentation/cli-executor.d.ts +0 -33
- package/dist/lib/core/presentation/cli-executor.d.ts.map +0 -1
- package/dist/lib/core/presentation/cli-executor.js +0 -73
- package/dist/lib/core/presentation/create-command-handler.d.ts +0 -20
- package/dist/lib/core/presentation/create-command-handler.d.ts.map +0 -1
- package/dist/lib/core/presentation/create-command-handler.js +0 -70
- package/dist/lib/core/presentation/format-app-error.d.ts +0 -6
- package/dist/lib/core/presentation/format-app-error.d.ts.map +0 -1
- package/dist/lib/core/presentation/format-app-error.js +0 -19
- package/dist/lib/infra/caught-unknown-message.d.ts +0 -2
- package/dist/lib/infra/caught-unknown-message.d.ts.map +0 -1
- package/dist/lib/infra/caught-unknown-message.js +0 -1
- package/dist/lib/infra/config-reporter.d.ts +0 -4
- package/dist/lib/infra/config-reporter.d.ts.map +0 -1
- package/dist/lib/infra/config-reporter.js +0 -9
- package/dist/lib/infra/fs-contract.d.ts +0 -2
- package/dist/lib/infra/fs-contract.d.ts.map +0 -1
- package/dist/lib/infra/node-io.d.ts +0 -4
- package/dist/lib/infra/node-io.d.ts.map +0 -1
- package/dist/lib/infra/node-io.js +0 -27
- package/dist/lib/infra/workspace/repo-root.d.ts +0 -7
- package/dist/lib/infra/workspace/repo-root.d.ts.map +0 -1
- package/dist/lib/infra/workspace/repo-root.js +0 -23
- package/dist/lib/mirror/application/engine.d.ts +0 -10
- package/dist/lib/mirror/application/engine.d.ts.map +0 -1
- package/dist/lib/mirror/application/engine.js +0 -271
- package/dist/lib/mirror/application/ports/file-system-service.port.d.ts +0 -6
- package/dist/lib/mirror/application/ports/file-system-service.port.d.ts.map +0 -1
- package/dist/lib/mirror/application/ports/mirror-sync-reporter.port.d.ts +0 -27
- package/dist/lib/mirror/application/ports/mirror-sync-reporter.port.d.ts.map +0 -1
- package/dist/lib/mirror/application/ports/package-repository.port.d.ts +0 -16
- package/dist/lib/mirror/application/ports/package-repository.port.d.ts.map +0 -1
- package/dist/lib/mirror/application/ports/workspace-service.port.d.ts +0 -7
- package/dist/lib/mirror/application/ports/workspace-service.port.d.ts.map +0 -1
- package/dist/lib/mirror/application/requests/mirror-sync.request.d.ts +0 -10
- package/dist/lib/mirror/application/requests/mirror-sync.request.d.ts.map +0 -1
- package/dist/lib/mirror/application/requests/mirror-sync.request.js +0 -8
- package/dist/lib/mirror/application/sync.d.ts +0 -19
- package/dist/lib/mirror/application/sync.d.ts.map +0 -1
- package/dist/lib/mirror/application/sync.js +0 -168
- package/dist/lib/mirror/domain/constants.d.ts +0 -6
- package/dist/lib/mirror/domain/constants.d.ts.map +0 -1
- package/dist/lib/mirror/domain/constants.js +0 -5
- package/dist/lib/mirror/domain/errors.d.ts +0 -10
- package/dist/lib/mirror/domain/errors.d.ts.map +0 -1
- package/dist/lib/mirror/domain/errors.js +0 -12
- package/dist/lib/mirror/domain/types.d.ts +0 -65
- package/dist/lib/mirror/domain/types.d.ts.map +0 -1
- package/dist/lib/mirror/index.d.ts +0 -6
- package/dist/lib/mirror/index.d.ts.map +0 -1
- package/dist/lib/mirror/index.js +0 -1
- package/dist/lib/mirror/infra/dirent-list.d.ts +0 -9
- package/dist/lib/mirror/infra/dirent-list.d.ts.map +0 -1
- package/dist/lib/mirror/infra/dirent-list.js +0 -13
- package/dist/lib/mirror/infra/file-system-service.adapter.d.ts +0 -7
- package/dist/lib/mirror/infra/file-system-service.adapter.d.ts.map +0 -1
- package/dist/lib/mirror/infra/file-system-service.adapter.js +0 -47
- package/dist/lib/mirror/infra/mirror-sync-cli-options.d.ts +0 -14
- package/dist/lib/mirror/infra/mirror-sync-cli-options.d.ts.map +0 -1
- package/dist/lib/mirror/infra/mirror-sync-reporter.adapter.d.ts +0 -3
- package/dist/lib/mirror/infra/mirror-sync-reporter.adapter.d.ts.map +0 -1
- package/dist/lib/mirror/infra/mirror-sync-reporter.adapter.js +0 -13
- package/dist/lib/mirror/infra/package-filter.d.ts +0 -8
- package/dist/lib/mirror/infra/package-filter.d.ts.map +0 -1
- package/dist/lib/mirror/infra/package-filter.js +0 -33
- package/dist/lib/mirror/infra/package-repository.adapter.d.ts +0 -17
- package/dist/lib/mirror/infra/package-repository.adapter.d.ts.map +0 -1
- package/dist/lib/mirror/infra/package-repository.adapter.js +0 -17
- package/dist/lib/mirror/infra/path-normalizer.d.ts +0 -2
- package/dist/lib/mirror/infra/path-normalizer.d.ts.map +0 -1
- package/dist/lib/mirror/infra/path-normalizer.js +0 -4
- package/dist/lib/mirror/infra/update-pkg.d.ts +0 -19
- package/dist/lib/mirror/infra/update-pkg.d.ts.map +0 -1
- package/dist/lib/mirror/infra/update-pkg.js +0 -156
- package/dist/lib/mirror/infra/workspace-packages.d.ts +0 -26
- package/dist/lib/mirror/infra/workspace-packages.d.ts.map +0 -1
- package/dist/lib/mirror/infra/workspace-packages.js +0 -170
- package/dist/lib/mirror/infra/workspace-service.adapter.d.ts +0 -8
- package/dist/lib/mirror/infra/workspace-service.adapter.d.ts.map +0 -1
- package/dist/lib/mirror/infra/workspace-service.adapter.js +0 -10
- package/dist/lib/mirror/presentation/reporter.d.ts +0 -25
- package/dist/lib/mirror/presentation/reporter.d.ts.map +0 -1
- package/dist/lib/mirror/presentation/reporter.js +0 -140
- package/dist/lib/shared/source-code/domain/text-edit.d.ts +0 -14
- package/dist/lib/shared/source-code/domain/text-edit.d.ts.map +0 -1
- package/dist/lib/shared/source-code/domain/text-edit.js +0 -30
- package/dist/lib/shared/source-code/infra/tsx-file-walk.d.ts +0 -4
- package/dist/lib/shared/source-code/infra/tsx-file-walk.d.ts.map +0 -1
- package/dist/lib/shared/source-code/infra/tsx-file-walk.js +0 -37
- package/dist/lib/tag/application/engine.d.ts +0 -23
- package/dist/lib/tag/application/engine.d.ts.map +0 -1
- package/dist/lib/tag/application/engine.js +0 -357
- package/dist/lib/tag/application/ports/target-resolver.port.d.ts +0 -6
- package/dist/lib/tag/application/ports/target-resolver.port.d.ts.map +0 -1
- package/dist/lib/tag/application/ports/typescript-tree-walk.port.d.ts +0 -6
- package/dist/lib/tag/application/ports/typescript-tree-walk.port.d.ts.map +0 -1
- package/dist/lib/tag/application/requests/tag-sync.request.d.ts +0 -10
- package/dist/lib/tag/application/requests/tag-sync.request.d.ts.map +0 -1
- package/dist/lib/tag/application/requests/tag-sync.request.js +0 -8
- package/dist/lib/tag/domain/types.d.ts +0 -56
- package/dist/lib/tag/domain/types.d.ts.map +0 -1
- package/dist/lib/tag/index.d.ts +0 -14
- package/dist/lib/tag/index.d.ts.map +0 -1
- package/dist/lib/tag/index.js +0 -10
- package/dist/lib/tag/infra/tag-sync-cli-options.d.ts +0 -14
- package/dist/lib/tag/infra/tag-sync-cli-options.d.ts.map +0 -1
- package/dist/lib/tag/infra/tag-target-resolver.adapter.d.ts +0 -3
- package/dist/lib/tag/infra/tag-target-resolver.adapter.d.ts.map +0 -1
- package/dist/lib/tag/infra/tag-target-resolver.adapter.js +0 -4
- package/dist/lib/tag/infra/target-resolver.d.ts +0 -4
- package/dist/lib/tag/infra/target-resolver.d.ts.map +0 -1
- package/dist/lib/tag/infra/target-resolver.js +0 -200
- package/dist/lib/tag/infra/typescript-tree-walk.adapter.d.ts +0 -3
- package/dist/lib/tag/infra/typescript-tree-walk.adapter.d.ts.map +0 -1
- package/dist/lib/tag/infra/typescript-tree-walk.adapter.js +0 -4
- package/dist/lib/tag/presentation/colors.d.ts +0 -8
- package/dist/lib/tag/presentation/colors.d.ts.map +0 -1
- package/dist/lib/tag/presentation/colors.js +0 -9
- package/dist/lib/tag/presentation/tag-presenter.d.ts +0 -20
- package/dist/lib/tag/presentation/tag-presenter.d.ts.map +0 -1
- package/dist/lib/tag/presentation/tag-presenter.js +0 -92
- package/dist/program.d.ts +0 -4
- package/dist/program.d.ts.map +0 -1
- package/dist/program.js +0 -40
- /package/dist/lib/arrange/application/ports/{domain-source-parser.port.js → domain-source-parser.port.mjs} +0 -0
- /package/dist/lib/arrange/application/ports/{file-walker.port.js → file-walker.port.mjs} +0 -0
- /package/dist/lib/arrange/{infra/arrange-sync-cli-options.js → application/ports/group-file-preview.port.mjs} +0 -0
- /package/dist/lib/{core/application/ports/cli-io.port.js → arrange/application/requests/analyze-directory.request.mjs} +0 -0
- /package/dist/lib/{infra/fs-contract.js → arrange/application/requests/arrange-sync.request.mjs} +0 -0
- /package/dist/lib/{mirror/application/ports/file-system-service.port.js → arrange/application/requests/suggest-groups.request.mjs} +0 -0
- /package/dist/lib/{mirror/application/ports/mirror-sync-reporter.port.js → arrange/contracts/models.mjs} +0 -0
- /package/dist/lib/{mirror/application/ports/package-repository.port.js → arrange/contracts/presentation.contract.mjs} +0 -0
- /package/dist/lib/{mirror/application/ports/workspace-service.port.js → arrange/contracts/services.contract.mjs} +0 -0
- /package/dist/lib/{mirror/domain/types.js → arrange/contracts/use-cases.contract.mjs} +0 -0
- /package/dist/lib/{mirror/infra/mirror-sync-cli-options.js → arrange/domain/types.domain.mjs} +0 -0
- /package/dist/lib/{tag/application/ports/target-resolver.port.js → arrange/infra/arrange-sync-cli-options.adapter.mjs} +0 -0
- /package/dist/lib/{tag/application/ports/typescript-tree-walk.port.js → config/application/ports/config-loader.port.mjs} +0 -0
- /package/dist/lib/{tag/domain/types.js → config/domain/schema.domain.mjs} +0 -0
- /package/dist/lib/{tag/infra/tag-sync-cli-options.js → core/application/ports/cli-io.port.mjs} +0 -0
|
@@ -1,271 +0,0 @@
|
|
|
1
|
-
import path from "node:path";
|
|
2
|
-
import { DTS_EXTENSION, PACKAGE_JSON_EXPORT, VALID_JS_EXTENSIONS, } from "#lib/mirror/domain/constants";
|
|
3
|
-
function resolvePackageScopedConfig(configMap, pkgMeta) {
|
|
4
|
-
if (!configMap) {
|
|
5
|
-
return undefined;
|
|
6
|
-
}
|
|
7
|
-
return configMap[pkgMeta.packageName];
|
|
8
|
-
}
|
|
9
|
-
function groupFilesByModule(files) {
|
|
10
|
-
const modules = new Map();
|
|
11
|
-
for (const file of files) {
|
|
12
|
-
let ext;
|
|
13
|
-
let modulePath;
|
|
14
|
-
if (file.endsWith(DTS_EXTENSION)) {
|
|
15
|
-
ext = DTS_EXTENSION;
|
|
16
|
-
modulePath = file.slice(0, -DTS_EXTENSION.length);
|
|
17
|
-
}
|
|
18
|
-
else {
|
|
19
|
-
ext = path.extname(file);
|
|
20
|
-
if (!VALID_JS_EXTENSIONS.has(ext)) {
|
|
21
|
-
continue;
|
|
22
|
-
}
|
|
23
|
-
modulePath = file.slice(0, -ext.length);
|
|
24
|
-
}
|
|
25
|
-
if (!path.basename(modulePath)) {
|
|
26
|
-
continue;
|
|
27
|
-
}
|
|
28
|
-
let distModule = modules.get(modulePath);
|
|
29
|
-
if (!distModule) {
|
|
30
|
-
distModule = { path: modulePath, files: { js: null, mjs: null, cjs: null, dts: null } };
|
|
31
|
-
modules.set(modulePath, distModule);
|
|
32
|
-
}
|
|
33
|
-
if (ext === ".js") {
|
|
34
|
-
distModule.files.js = file;
|
|
35
|
-
}
|
|
36
|
-
else if (ext === ".mjs") {
|
|
37
|
-
distModule.files.mjs = file;
|
|
38
|
-
}
|
|
39
|
-
else if (ext === ".cjs") {
|
|
40
|
-
distModule.files.cjs = file;
|
|
41
|
-
}
|
|
42
|
-
else if (ext === DTS_EXTENSION) {
|
|
43
|
-
distModule.files.dts = file;
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
return modules;
|
|
47
|
-
}
|
|
48
|
-
function toExportPath(distPath) {
|
|
49
|
-
if (distPath === "index") {
|
|
50
|
-
return ".";
|
|
51
|
-
}
|
|
52
|
-
if (distPath.endsWith("/index")) {
|
|
53
|
-
return `./${distPath.slice(0, -6)}`;
|
|
54
|
-
}
|
|
55
|
-
return `./${distPath}`;
|
|
56
|
-
}
|
|
57
|
-
const GROUP_ORDER = {
|
|
58
|
-
components: 100,
|
|
59
|
-
hooks: 200,
|
|
60
|
-
primitives: 300,
|
|
61
|
-
core: 400,
|
|
62
|
-
loaders: 500,
|
|
63
|
-
utils: 600,
|
|
64
|
-
adapters: 700,
|
|
65
|
-
script: 750,
|
|
66
|
-
css: 900,
|
|
67
|
-
};
|
|
68
|
-
function getExportGroup(exportPath, pathTransform) {
|
|
69
|
-
if (exportPath === ".") {
|
|
70
|
-
return [".", "", 0, 0];
|
|
71
|
-
}
|
|
72
|
-
const cleanPath = exportPath.startsWith("./") ? exportPath.slice(2) : exportPath;
|
|
73
|
-
if (cleanPath.endsWith("/*")) {
|
|
74
|
-
const dirName = cleanPath.slice(0, -2);
|
|
75
|
-
return [dirName, "", dirName === "css" ? 900 : 100, 0];
|
|
76
|
-
}
|
|
77
|
-
const parts = cleanPath.split("/");
|
|
78
|
-
if (parts.length === 1) {
|
|
79
|
-
const name = parts[0];
|
|
80
|
-
if (name in GROUP_ORDER) {
|
|
81
|
-
return [name, "", GROUP_ORDER[name] ?? 0, 0];
|
|
82
|
-
}
|
|
83
|
-
if (pathTransform) {
|
|
84
|
-
return ["components", name, 100, 1];
|
|
85
|
-
}
|
|
86
|
-
return ["", name, 800, 1];
|
|
87
|
-
}
|
|
88
|
-
const group = parts[0] ?? "";
|
|
89
|
-
const subpath = parts.slice(1).join("/");
|
|
90
|
-
return [group, subpath, GROUP_ORDER[group] ?? 700, 1];
|
|
91
|
-
}
|
|
92
|
-
export function createPathTransform(config, pkgMeta) {
|
|
93
|
-
const pathConfig = resolvePackageScopedConfig(config?.pathTransformations, pkgMeta);
|
|
94
|
-
if (!pathConfig) {
|
|
95
|
-
return null;
|
|
96
|
-
}
|
|
97
|
-
const { removePrefix } = pathConfig;
|
|
98
|
-
if (!removePrefix) {
|
|
99
|
-
return null;
|
|
100
|
-
}
|
|
101
|
-
return (exportPath) => {
|
|
102
|
-
if (!exportPath.startsWith(removePrefix)) {
|
|
103
|
-
return exportPath;
|
|
104
|
-
}
|
|
105
|
-
const result = exportPath.slice(removePrefix.length);
|
|
106
|
-
if (result && result !== "." && !result.startsWith("./")) {
|
|
107
|
-
return `./${result}`;
|
|
108
|
-
}
|
|
109
|
-
return result;
|
|
110
|
-
};
|
|
111
|
-
}
|
|
112
|
-
function getSortTuple(exportPath, pathTransform) {
|
|
113
|
-
const [group, subpath, order, isIndex] = getExportGroup(exportPath, pathTransform);
|
|
114
|
-
return [order, group, isIndex, subpath];
|
|
115
|
-
}
|
|
116
|
-
function compareTuples(left, right) {
|
|
117
|
-
if (left[0] !== right[0]) {
|
|
118
|
-
return left[0] - right[0];
|
|
119
|
-
}
|
|
120
|
-
if (left[1] !== right[1]) {
|
|
121
|
-
return left[1] < right[1] ? -1 : 1;
|
|
122
|
-
}
|
|
123
|
-
if (left[2] !== right[2]) {
|
|
124
|
-
return left[2] - right[2];
|
|
125
|
-
}
|
|
126
|
-
if (left[3] !== right[3]) {
|
|
127
|
-
return left[3] < right[3] ? -1 : 1;
|
|
128
|
-
}
|
|
129
|
-
return 0;
|
|
130
|
-
}
|
|
131
|
-
async function generateCssExports(fs, fileSystemService, distDir, cssConfig) {
|
|
132
|
-
if (cssConfig === false) {
|
|
133
|
-
return {};
|
|
134
|
-
}
|
|
135
|
-
if (cssConfig === true) {
|
|
136
|
-
cssConfig = { enabled: true };
|
|
137
|
-
}
|
|
138
|
-
if (!cssConfig || cssConfig.enabled === false) {
|
|
139
|
-
return {};
|
|
140
|
-
}
|
|
141
|
-
const files = await fileSystemService.listRelativeFilesRecursively(fs, distDir);
|
|
142
|
-
const cssFiles = files.filter((relativeDistPath) => relativeDistPath.endsWith(".css"));
|
|
143
|
-
if (!cssFiles.length) {
|
|
144
|
-
return {};
|
|
145
|
-
}
|
|
146
|
-
const cssExports = {
|
|
147
|
-
...cssConfig.customExports,
|
|
148
|
-
};
|
|
149
|
-
const cssByDir = new Map();
|
|
150
|
-
const rootCss = [];
|
|
151
|
-
for (const file of cssFiles) {
|
|
152
|
-
const dirName = path.dirname(file).split(path.sep).join("/");
|
|
153
|
-
if (dirName === ".") {
|
|
154
|
-
rootCss.push(file);
|
|
155
|
-
}
|
|
156
|
-
else {
|
|
157
|
-
const arr = cssByDir.get(dirName) || [];
|
|
158
|
-
arr.push(file);
|
|
159
|
-
cssByDir.set(dirName, arr);
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
for (const file of rootCss) {
|
|
163
|
-
const exportPath = `./${file}`;
|
|
164
|
-
if (!(exportPath in cssExports)) {
|
|
165
|
-
cssExports[exportPath] = `./dist/${file}`;
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
for (const [dirName, dirFiles] of cssByDir.entries()) {
|
|
169
|
-
if ((await fileSystemService.isDirectoryCssOnly(fs, distDir, dirName)) &&
|
|
170
|
-
!cssConfig.forceExportFiles) {
|
|
171
|
-
const wildcardExport = `./${dirName}/*`;
|
|
172
|
-
if (!(wildcardExport in cssExports)) {
|
|
173
|
-
cssExports[wildcardExport] = `./dist/${dirName}/*`;
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
else {
|
|
177
|
-
for (const file of dirFiles) {
|
|
178
|
-
const exportPath = `./${file}`;
|
|
179
|
-
if (!(exportPath in cssExports)) {
|
|
180
|
-
cssExports[exportPath] = `./dist/${file}`;
|
|
181
|
-
}
|
|
182
|
-
}
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
return cssExports;
|
|
186
|
-
}
|
|
187
|
-
/**
|
|
188
|
-
* Compute `package.json#exports` from a built `dist/` tree. No logging; no writes.
|
|
189
|
-
*/
|
|
190
|
-
export async function generateExports(fs, fileSystemService, distDir, pathTransform, cssConfig, customExports) {
|
|
191
|
-
const files = await fileSystemService.listRelativeFilesRecursively(fs, distDir);
|
|
192
|
-
if (!files.length) {
|
|
193
|
-
return {
|
|
194
|
-
// Keep "./package.json" self-mapped as the standard Node.js exports fallback for package metadata.
|
|
195
|
-
exports: { [PACKAGE_JSON_EXPORT]: PACKAGE_JSON_EXPORT },
|
|
196
|
-
originalPathBySpecifier: { [PACKAGE_JSON_EXPORT]: PACKAGE_JSON_EXPORT },
|
|
197
|
-
jsCount: 0,
|
|
198
|
-
cssCount: 0,
|
|
199
|
-
};
|
|
200
|
-
}
|
|
201
|
-
const modules = groupFilesByModule(files);
|
|
202
|
-
const validModules = Array.from(modules.values()).filter((moduleEntry) => (moduleEntry.files.js || moduleEntry.files.mjs) && moduleEntry.files.dts);
|
|
203
|
-
if (!validModules.length) {
|
|
204
|
-
return {
|
|
205
|
-
// Keep "./package.json" self-mapped as the standard Node.js exports fallback for package metadata.
|
|
206
|
-
exports: { [PACKAGE_JSON_EXPORT]: PACKAGE_JSON_EXPORT },
|
|
207
|
-
originalPathBySpecifier: { [PACKAGE_JSON_EXPORT]: PACKAGE_JSON_EXPORT },
|
|
208
|
-
jsCount: 0,
|
|
209
|
-
cssCount: 0,
|
|
210
|
-
};
|
|
211
|
-
}
|
|
212
|
-
const exportsObj = {};
|
|
213
|
-
const originalPathBySpecifier = {};
|
|
214
|
-
for (const distModuleEntry of validModules) {
|
|
215
|
-
const originalExportPath = toExportPath(distModuleEntry.path);
|
|
216
|
-
let exportPath = originalExportPath;
|
|
217
|
-
if (pathTransform) {
|
|
218
|
-
exportPath = pathTransform(exportPath);
|
|
219
|
-
}
|
|
220
|
-
const distPath = `./dist/${distModuleEntry.path}`;
|
|
221
|
-
const entry = { types: `${distPath}.d.ts` };
|
|
222
|
-
if (distModuleEntry.files.mjs) {
|
|
223
|
-
entry.import = `${distPath}.mjs`;
|
|
224
|
-
}
|
|
225
|
-
else if (distModuleEntry.files.js) {
|
|
226
|
-
entry.import = `${distPath}.js`;
|
|
227
|
-
}
|
|
228
|
-
if (distModuleEntry.files.cjs) {
|
|
229
|
-
entry.require = `${distPath}.cjs`;
|
|
230
|
-
}
|
|
231
|
-
exportsObj[exportPath] = entry;
|
|
232
|
-
originalPathBySpecifier[exportPath] = originalExportPath;
|
|
233
|
-
}
|
|
234
|
-
let sortedKeys = Object.keys(exportsObj).sort((pathA, pathB) => compareTuples(getSortTuple(pathA, pathTransform), getSortTuple(pathB, pathTransform)));
|
|
235
|
-
const sortedExports = {};
|
|
236
|
-
for (const exportKey of sortedKeys) {
|
|
237
|
-
sortedExports[exportKey] = exportsObj[exportKey];
|
|
238
|
-
}
|
|
239
|
-
const cssExports = await generateCssExports(fs, fileSystemService, distDir, cssConfig ?? { enabled: true });
|
|
240
|
-
Object.assign(sortedExports, cssExports);
|
|
241
|
-
for (const [specifier, mappedPath] of Object.entries(customExports || {})) {
|
|
242
|
-
if (specifier !== PACKAGE_JSON_EXPORT) {
|
|
243
|
-
sortedExports[specifier] = mappedPath;
|
|
244
|
-
}
|
|
245
|
-
}
|
|
246
|
-
for (const cssSpecifier of Object.keys(cssExports)) {
|
|
247
|
-
if (!(cssSpecifier in originalPathBySpecifier)) {
|
|
248
|
-
originalPathBySpecifier[cssSpecifier] = cssSpecifier;
|
|
249
|
-
}
|
|
250
|
-
}
|
|
251
|
-
for (const customSpecifier of Object.keys(customExports || {})) {
|
|
252
|
-
if (customSpecifier !== PACKAGE_JSON_EXPORT && !(customSpecifier in originalPathBySpecifier)) {
|
|
253
|
-
originalPathBySpecifier[customSpecifier] = customSpecifier;
|
|
254
|
-
}
|
|
255
|
-
}
|
|
256
|
-
sortedKeys = Object.keys(sortedExports)
|
|
257
|
-
.filter((exportKey) => exportKey !== PACKAGE_JSON_EXPORT)
|
|
258
|
-
.sort((pathA, pathB) => compareTuples(getSortTuple(pathA, pathTransform), getSortTuple(pathB, pathTransform)));
|
|
259
|
-
const finalExports = {};
|
|
260
|
-
for (const exportKey of sortedKeys) {
|
|
261
|
-
finalExports[exportKey] = sortedExports[exportKey];
|
|
262
|
-
}
|
|
263
|
-
finalExports[PACKAGE_JSON_EXPORT] = PACKAGE_JSON_EXPORT;
|
|
264
|
-
originalPathBySpecifier[PACKAGE_JSON_EXPORT] = PACKAGE_JSON_EXPORT;
|
|
265
|
-
return {
|
|
266
|
-
exports: finalExports,
|
|
267
|
-
originalPathBySpecifier,
|
|
268
|
-
jsCount: Object.keys(exportsObj).length,
|
|
269
|
-
cssCount: Object.keys(cssExports).length,
|
|
270
|
-
};
|
|
271
|
-
}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { CliFs } from "#lib/core/application/ports/cli-io.port";
|
|
2
|
-
export interface FileSystemServicePort {
|
|
3
|
-
listRelativeFilesRecursively(fs: CliFs, dirPath: string): Promise<string[]>;
|
|
4
|
-
isDirectoryCssOnly(fs: CliFs, distDir: string, dirPath: string): Promise<boolean>;
|
|
5
|
-
}
|
|
6
|
-
//# sourceMappingURL=file-system-service.port.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"file-system-service.port.d.ts","sourceRoot":"","sources":["../../../../../src/lib/mirror/application/ports/file-system-service.port.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yCAAyC,CAAC;AAErE,MAAM,WAAW,qBAAqB;IACpC,4BAA4B,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5E,kBAAkB,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACnF"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import type { CliLogger } from "#lib/core/application/ports/cli-io.port";
|
|
2
|
-
import type { GlobalStats, PackageStats, WorkspaceMultiDiscoverySource } from "#lib/mirror/domain/types";
|
|
3
|
-
export type MirrorProcessingModeInput = {
|
|
4
|
-
kind: "single";
|
|
5
|
-
} | {
|
|
6
|
-
kind: "multi";
|
|
7
|
-
source: WorkspaceMultiDiscoverySource;
|
|
8
|
-
};
|
|
9
|
-
/**
|
|
10
|
-
* CLI output for mirror sync — implemented in `presentation`, injected here so `application/sync` stays clean.
|
|
11
|
-
*/
|
|
12
|
-
export type MirrorSyncReporterPort = {
|
|
13
|
-
configureMirrorColors(noColor: boolean): void;
|
|
14
|
-
mirrorBanner(logger: CliLogger): void;
|
|
15
|
-
mirrorProcessingMode(logger: CliLogger, mode: MirrorProcessingModeInput): void;
|
|
16
|
-
mirrorNoPackages(logger: CliLogger): void;
|
|
17
|
-
logSkippedWorkspacePackage(logger: CliLogger, index: number, total: number, displayName: string, reason: string): void;
|
|
18
|
-
logPackageSuccess(logger: CliLogger, index: number, total: number, pkgStats: PackageStats, generatedDistAssetCounts: {
|
|
19
|
-
jsCount: number;
|
|
20
|
-
cssCount: number;
|
|
21
|
-
}, verbose: boolean): void;
|
|
22
|
-
logPrunedStaleExport(logger: CliLogger, exportSpecifier: string): void;
|
|
23
|
-
logPackageError(logger: CliLogger, index: number, total: number, displayName: string, errValue: unknown, verbose: boolean): void;
|
|
24
|
-
mirrorSummarySeparator(logger: CliLogger): void;
|
|
25
|
-
mirrorSummary(logger: CliLogger, stats: GlobalStats, elapsedSeconds: number): void;
|
|
26
|
-
};
|
|
27
|
-
//# sourceMappingURL=mirror-sync-reporter.port.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mirror-sync-reporter.port.d.ts","sourceRoot":"","sources":["../../../../../src/lib/mirror/application/ports/mirror-sync-reporter.port.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,6BAA6B,EAC9B,MAAM,0BAA0B,CAAC;AAElC,MAAM,MAAM,yBAAyB,GACjC;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAClB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,6BAA6B,CAAA;CAAE,CAAC;AAE7D;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IAC9C,YAAY,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAAC;IACtC,oBAAoB,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,yBAAyB,GAAG,IAAI,CAAC;IAC/E,gBAAgB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAAC;IAC1C,0BAA0B,CACxB,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,GACb,IAAI,CAAC;IACR,iBAAiB,CACf,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,YAAY,EACtB,wBAAwB,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,EAC/D,OAAO,EAAE,OAAO,GACf,IAAI,CAAC;IACR,oBAAoB,CAAC,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IACvE,eAAe,CACb,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,OAAO,EACjB,OAAO,EAAE,OAAO,GACf,IAAI,CAAC;IACR,sBAAsB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAAC;IAChD,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;CACpF,CAAC"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import type { CliFs } from "#lib/core/application/ports/cli-io.port";
|
|
2
|
-
import type { ExportMapData, ExportOriginalPathBySpecifier, PackageJsonShape } from "#lib/mirror/domain/types";
|
|
3
|
-
export interface PackageRepositoryPort {
|
|
4
|
-
resolvePackageDisplayName(packageJson: {
|
|
5
|
-
name?: unknown;
|
|
6
|
-
}, folderBasename: string): string;
|
|
7
|
-
writePackageJsonExportsAtomic(fs: CliFs, packageJsonPath: string, mergeInput: {
|
|
8
|
-
generatedExports: ExportMapData;
|
|
9
|
-
managedExportSpecifiers: string[];
|
|
10
|
-
originalPathBySpecifier: ExportOriginalPathBySpecifier;
|
|
11
|
-
}): Promise<{
|
|
12
|
-
prunedKeys: string[];
|
|
13
|
-
}>;
|
|
14
|
-
parsePackageJsonShape(rawPackageJson: unknown): PackageJsonShape;
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=package-repository.port.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"package-repository.port.d.ts","sourceRoot":"","sources":["../../../../../src/lib/mirror/application/ports/package-repository.port.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yCAAyC,CAAC;AACrE,OAAO,KAAK,EACV,aAAa,EACb,6BAA6B,EAC7B,gBAAgB,EACjB,MAAM,0BAA0B,CAAC;AAElC,MAAM,WAAW,qBAAqB;IACpC,yBAAyB,CAAC,WAAW,EAAE;QAAE,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE,EAAE,cAAc,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3F,6BAA6B,CAC3B,EAAE,EAAE,KAAK,EACT,eAAe,EAAE,MAAM,EACvB,UAAU,EAAE;QACV,gBAAgB,EAAE,aAAa,CAAC;QAChC,uBAAuB,EAAE,MAAM,EAAE,CAAC;QAClC,uBAAuB,EAAE,6BAA6B,CAAC;KACxD,GACA,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IACrC,qBAAqB,CAAC,cAAc,EAAE,OAAO,GAAG,gBAAgB,CAAC;CAClE"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { CliFs, CliLogger } from "#lib/core/application/ports/cli-io.port";
|
|
2
|
-
import type { FindWorkspacePackagesResult } from "#lib/mirror/domain/types";
|
|
3
|
-
export interface WorkspaceServicePort {
|
|
4
|
-
resolvePackageFilterUnderRoot(rootDir: string, packageFilter: string): string;
|
|
5
|
-
findWorkspacePackageRelPaths(rootDir: string, fs: CliFs, logger: CliLogger): Promise<FindWorkspacePackagesResult>;
|
|
6
|
-
}
|
|
7
|
-
//# sourceMappingURL=workspace-service.port.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-service.port.d.ts","sourceRoot":"","sources":["../../../../../src/lib/mirror/application/ports/workspace-service.port.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AAE5E,MAAM,WAAW,oBAAoB;IACnC,6BAA6B,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9E,4BAA4B,CAC1B,OAAO,EAAE,MAAM,EACf,EAAE,EAAE,KAAK,EACT,MAAM,EAAE,SAAS,GAChB,OAAO,CAAC,2BAA2B,CAAC,CAAC;CACzC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
|
-
export declare const MirrorSyncRunRequestSchema: z.ZodObject<{
|
|
3
|
-
rootDir: z.ZodString;
|
|
4
|
-
verbose: z.ZodOptional<z.ZodBoolean>;
|
|
5
|
-
noColor: z.ZodOptional<z.ZodBoolean>;
|
|
6
|
-
packageFilter: z.ZodOptional<z.ZodString>;
|
|
7
|
-
config: z.ZodOptional<z.ZodUnknown>;
|
|
8
|
-
}, z.core.$strip>;
|
|
9
|
-
export type MirrorSyncRunRequest = z.infer<typeof MirrorSyncRunRequestSchema>;
|
|
10
|
-
//# sourceMappingURL=mirror-sync.request.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mirror-sync.request.d.ts","sourceRoot":"","sources":["../../../../../src/lib/mirror/application/requests/mirror-sync.request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,0BAA0B;;;;;;iBAMrC,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { type AppError } from "#lib/core/domain/errors";
|
|
2
|
-
import { type Result } from "#lib/core/domain/result";
|
|
3
|
-
import type { CliFs, CliLogger } from "#lib/core/application/ports/cli-io.port";
|
|
4
|
-
import type { FileSystemServicePort } from "#lib/mirror/application/ports/file-system-service.port";
|
|
5
|
-
import type { MirrorSyncReporterPort } from "#lib/mirror/application/ports/mirror-sync-reporter.port";
|
|
6
|
-
import type { PackageRepositoryPort } from "#lib/mirror/application/ports/package-repository.port";
|
|
7
|
-
import type { WorkspaceServicePort } from "#lib/mirror/application/ports/workspace-service.port";
|
|
8
|
-
import type { MirrorSyncRunRequest } from "#lib/mirror/application/requests/mirror-sync.request";
|
|
9
|
-
export type MirrorSyncRunDeps = {
|
|
10
|
-
readonly fs: CliFs;
|
|
11
|
-
readonly logger: CliLogger;
|
|
12
|
-
readonly workspaceService: WorkspaceServicePort;
|
|
13
|
-
readonly packageRepository: PackageRepositoryPort;
|
|
14
|
-
readonly fileSystemService: FileSystemServicePort;
|
|
15
|
-
readonly mirrorReporter: MirrorSyncReporterPort;
|
|
16
|
-
};
|
|
17
|
-
/** @returns Process exit code (0 or 1) on success, or a structured application error. */
|
|
18
|
-
export declare function runMirrorSync(request: MirrorSyncRunRequest, deps: MirrorSyncRunDeps): Promise<Result<number, AppError>>;
|
|
19
|
-
//# sourceMappingURL=sync.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../../../src/lib/mirror/application/sync.ts"],"names":[],"mappings":"AACA,OAAO,EAAY,KAAK,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAW,KAAK,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAKhF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wDAAwD,CAAC;AACpG,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yDAAyD,CAAC;AACtG,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uDAAuD,CAAC;AACnG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sDAAsD,CAAC;AACjG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sDAAsD,CAAC;AAQjG,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IACnB,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,gBAAgB,EAAE,oBAAoB,CAAC;IAChD,QAAQ,CAAC,iBAAiB,EAAE,qBAAqB,CAAC;IAClD,QAAQ,CAAC,iBAAiB,EAAE,qBAAqB,CAAC;IAClD,QAAQ,CAAC,cAAc,EAAE,sBAAsB,CAAC;CACjD,CAAC;AA+LF,yFAAyF;AACzF,wBAAsB,aAAa,CACjC,OAAO,EAAE,oBAAoB,EAC7B,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CA0EnC"}
|
|
@@ -1,168 +0,0 @@
|
|
|
1
|
-
import path from "node:path";
|
|
2
|
-
import { appError } from "#lib/core/domain/errors";
|
|
3
|
-
import { err, ok } from "#lib/core/domain/result";
|
|
4
|
-
import { messageFromCaughtUnknown } from "#lib/core/application/utils/caught-unknown-message";
|
|
5
|
-
import { DIST_DIR, PACKAGE_JSON } from "#lib/mirror/domain/constants";
|
|
6
|
-
import { createPathTransform, generateExports } from "#lib/mirror/application/engine";
|
|
7
|
-
function resolvePackageScopedConfig(configMap, pkgMeta) {
|
|
8
|
-
if (!configMap) {
|
|
9
|
-
return undefined;
|
|
10
|
-
}
|
|
11
|
-
return configMap[pkgMeta.packageName];
|
|
12
|
-
}
|
|
13
|
-
function isPackageSkipped(skipPackagesArray, pkgMeta) {
|
|
14
|
-
if (!skipPackagesArray) {
|
|
15
|
-
return false;
|
|
16
|
-
}
|
|
17
|
-
return skipPackagesArray.includes(pkgMeta.packageName);
|
|
18
|
-
}
|
|
19
|
-
async function syncExportsForWorkspacePackage(fs, packageRepository, fileSystemService, logger, mirrorReporter, rootDir, packagePathStr, index, total, config, verbose, stats) {
|
|
20
|
-
const packageDir = path.resolve(rootDir, packagePathStr);
|
|
21
|
-
const distDir = path.join(packageDir, DIST_DIR);
|
|
22
|
-
const packageJsonPath = path.join(packageDir, PACKAGE_JSON);
|
|
23
|
-
const folderBasename = path.basename(packageDir);
|
|
24
|
-
const pkgStats = {
|
|
25
|
-
name: folderBasename,
|
|
26
|
-
path: packageDir,
|
|
27
|
-
jsModules: 0,
|
|
28
|
-
cssExports: 0,
|
|
29
|
-
customExports: 0,
|
|
30
|
-
totalExports: 0,
|
|
31
|
-
hasTransform: false,
|
|
32
|
-
cssConfigStatus: "",
|
|
33
|
-
skipped: false,
|
|
34
|
-
skipReason: "",
|
|
35
|
-
error: null,
|
|
36
|
-
};
|
|
37
|
-
if (!fs.existsSync(packageJsonPath)) {
|
|
38
|
-
pkgStats.skipped = true;
|
|
39
|
-
pkgStats.skipReason = "package.json not found";
|
|
40
|
-
stats.packagesSkipped++;
|
|
41
|
-
mirrorReporter.logSkippedWorkspacePackage(logger, index, total, folderBasename, pkgStats.skipReason);
|
|
42
|
-
return pkgStats;
|
|
43
|
-
}
|
|
44
|
-
let packageJsonParseError;
|
|
45
|
-
try {
|
|
46
|
-
const pkgContent = await fs.readFile(packageJsonPath, "utf8");
|
|
47
|
-
const raw = JSON.parse(pkgContent);
|
|
48
|
-
const parsedPackageJson = packageRepository.parsePackageJsonShape(raw);
|
|
49
|
-
pkgStats.name = packageRepository.resolvePackageDisplayName(parsedPackageJson, folderBasename);
|
|
50
|
-
}
|
|
51
|
-
catch (caughtError) {
|
|
52
|
-
pkgStats.name = folderBasename;
|
|
53
|
-
packageJsonParseError = caughtError;
|
|
54
|
-
}
|
|
55
|
-
const pkgMeta = { packageName: pkgStats.name };
|
|
56
|
-
if (isPackageSkipped(config.skipPackages, pkgMeta)) {
|
|
57
|
-
pkgStats.skipped = true;
|
|
58
|
-
pkgStats.skipReason = "configured to skip";
|
|
59
|
-
stats.packagesSkipped++;
|
|
60
|
-
mirrorReporter.logSkippedWorkspacePackage(logger, index, total, pkgStats.name, pkgStats.skipReason);
|
|
61
|
-
return pkgStats;
|
|
62
|
-
}
|
|
63
|
-
if (packageJsonParseError !== undefined) {
|
|
64
|
-
if (!fs.existsSync(distDir)) {
|
|
65
|
-
pkgStats.skipped = true;
|
|
66
|
-
pkgStats.skipReason = "dist/ not found";
|
|
67
|
-
stats.packagesSkipped++;
|
|
68
|
-
mirrorReporter.logSkippedWorkspacePackage(logger, index, total, pkgStats.name, pkgStats.skipReason);
|
|
69
|
-
return pkgStats;
|
|
70
|
-
}
|
|
71
|
-
pkgStats.error = messageFromCaughtUnknown(packageJsonParseError);
|
|
72
|
-
stats.packagesErrored++;
|
|
73
|
-
mirrorReporter.logPackageError(logger, index, total, pkgStats.name, packageJsonParseError, verbose);
|
|
74
|
-
return pkgStats;
|
|
75
|
-
}
|
|
76
|
-
if (!fs.existsSync(distDir)) {
|
|
77
|
-
pkgStats.skipped = true;
|
|
78
|
-
pkgStats.skipReason = "dist/ not found";
|
|
79
|
-
stats.packagesSkipped++;
|
|
80
|
-
mirrorReporter.logSkippedWorkspacePackage(logger, index, total, pkgStats.name, pkgStats.skipReason);
|
|
81
|
-
return pkgStats;
|
|
82
|
-
}
|
|
83
|
-
try {
|
|
84
|
-
const pathTransform = createPathTransform(config, pkgMeta);
|
|
85
|
-
pkgStats.hasTransform = !!pathTransform;
|
|
86
|
-
const cssConfig = resolvePackageScopedConfig(config.cssExports, pkgMeta);
|
|
87
|
-
if (cssConfig === false) {
|
|
88
|
-
pkgStats.cssConfigStatus = "disabled";
|
|
89
|
-
}
|
|
90
|
-
else if (cssConfig !== undefined) {
|
|
91
|
-
pkgStats.cssConfigStatus = "configured";
|
|
92
|
-
}
|
|
93
|
-
const customExports = resolvePackageScopedConfig(config.customExports, pkgMeta) || {};
|
|
94
|
-
const generatedExports = await generateExports(fs, fileSystemService, distDir, pathTransform, cssConfig, customExports);
|
|
95
|
-
const { prunedKeys } = await packageRepository.writePackageJsonExportsAtomic(fs, packageJsonPath, {
|
|
96
|
-
generatedExports: generatedExports.exports,
|
|
97
|
-
managedExportSpecifiers: Object.keys(generatedExports.exports),
|
|
98
|
-
originalPathBySpecifier: generatedExports.originalPathBySpecifier,
|
|
99
|
-
});
|
|
100
|
-
for (const exportSpecifier of prunedKeys) {
|
|
101
|
-
mirrorReporter.logPrunedStaleExport(logger, exportSpecifier);
|
|
102
|
-
}
|
|
103
|
-
pkgStats.jsModules = generatedExports.jsCount;
|
|
104
|
-
pkgStats.cssExports = generatedExports.cssCount;
|
|
105
|
-
pkgStats.customExports = Object.keys(customExports).length;
|
|
106
|
-
pkgStats.totalExports = Object.keys(generatedExports.exports).length;
|
|
107
|
-
stats.packagesProcessed++;
|
|
108
|
-
stats.totalExports += pkgStats.totalExports;
|
|
109
|
-
stats.totalJsModules += pkgStats.jsModules;
|
|
110
|
-
stats.totalCssExports += pkgStats.cssExports;
|
|
111
|
-
mirrorReporter.logPackageSuccess(logger, index, total, pkgStats, generatedExports, verbose);
|
|
112
|
-
}
|
|
113
|
-
catch (caughtError) {
|
|
114
|
-
pkgStats.error = messageFromCaughtUnknown(caughtError);
|
|
115
|
-
stats.packagesErrored++;
|
|
116
|
-
mirrorReporter.logPackageError(logger, index, total, pkgStats.name, caughtError, verbose);
|
|
117
|
-
}
|
|
118
|
-
return pkgStats;
|
|
119
|
-
}
|
|
120
|
-
/** @returns Process exit code (0 or 1) on success, or a structured application error. */
|
|
121
|
-
export async function runMirrorSync(request, deps) {
|
|
122
|
-
const { fs, logger, workspaceService, packageRepository, fileSystemService, mirrorReporter } = deps;
|
|
123
|
-
const config = (request.config ?? {});
|
|
124
|
-
mirrorReporter.configureMirrorColors(!!request.noColor);
|
|
125
|
-
mirrorReporter.mirrorBanner(logger);
|
|
126
|
-
const startTime = performance.now();
|
|
127
|
-
const verbose = !!request.verbose;
|
|
128
|
-
try {
|
|
129
|
-
const stats = {
|
|
130
|
-
packagesFound: 0,
|
|
131
|
-
packagesProcessed: 0,
|
|
132
|
-
packagesSkipped: 0,
|
|
133
|
-
packagesErrored: 0,
|
|
134
|
-
totalExports: 0,
|
|
135
|
-
totalJsModules: 0,
|
|
136
|
-
totalCssExports: 0,
|
|
137
|
-
packageDetails: [],
|
|
138
|
-
};
|
|
139
|
-
let targetPackages = [];
|
|
140
|
-
if (request.packageFilter) {
|
|
141
|
-
const safe = workspaceService.resolvePackageFilterUnderRoot(request.rootDir, request.packageFilter);
|
|
142
|
-
targetPackages = [safe];
|
|
143
|
-
mirrorReporter.mirrorProcessingMode(logger, { kind: "single" });
|
|
144
|
-
}
|
|
145
|
-
else {
|
|
146
|
-
const { relPaths, multiSource } = await workspaceService.findWorkspacePackageRelPaths(request.rootDir, fs, logger);
|
|
147
|
-
targetPackages = relPaths;
|
|
148
|
-
mirrorReporter.mirrorProcessingMode(logger, { kind: "multi", source: multiSource });
|
|
149
|
-
}
|
|
150
|
-
stats.packagesFound = targetPackages.length;
|
|
151
|
-
if (targetPackages.length === 0) {
|
|
152
|
-
mirrorReporter.mirrorNoPackages(logger);
|
|
153
|
-
return ok(0);
|
|
154
|
-
}
|
|
155
|
-
let nextPackageOrdinal = 1;
|
|
156
|
-
for (const pkgPath of targetPackages) {
|
|
157
|
-
const pkgStats = await syncExportsForWorkspacePackage(fs, packageRepository, fileSystemService, logger, mirrorReporter, request.rootDir, pkgPath, nextPackageOrdinal++, targetPackages.length, config, verbose, stats);
|
|
158
|
-
stats.packageDetails.push(pkgStats);
|
|
159
|
-
}
|
|
160
|
-
const elapsed = (performance.now() - startTime) / 1000;
|
|
161
|
-
mirrorReporter.mirrorSummarySeparator(logger);
|
|
162
|
-
mirrorReporter.mirrorSummary(logger, stats, elapsed);
|
|
163
|
-
return ok(stats.packagesErrored > 0 ? 1 : 0);
|
|
164
|
-
}
|
|
165
|
-
catch (caughtError) {
|
|
166
|
-
return err(appError("INFRA_FAILURE", messageFromCaughtUnknown(caughtError), caughtError));
|
|
167
|
-
}
|
|
168
|
-
}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export declare const DIST_DIR = "dist";
|
|
2
|
-
export declare const PACKAGE_JSON = "package.json";
|
|
3
|
-
export declare const VALID_JS_EXTENSIONS: Set<string>;
|
|
4
|
-
export declare const DTS_EXTENSION = ".d.ts";
|
|
5
|
-
export declare const PACKAGE_JSON_EXPORT = "./package.json";
|
|
6
|
-
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/lib/mirror/domain/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,QAAQ,SAAS,CAAC;AAC/B,eAAO,MAAM,YAAY,iBAAiB,CAAC;AAE3C,eAAO,MAAM,mBAAmB,aAAmC,CAAC;AACpE,eAAO,MAAM,aAAa,UAAU,CAAC;AACrC,eAAO,MAAM,mBAAmB,mBAAmB,CAAC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
export declare const MirrorErrorCode: {
|
|
2
|
-
readonly FATAL: "FATAL";
|
|
3
|
-
readonly PACKAGE_WRITE: "PACKAGE_WRITE";
|
|
4
|
-
};
|
|
5
|
-
export type MirrorErrorCode = (typeof MirrorErrorCode)[keyof typeof MirrorErrorCode];
|
|
6
|
-
export declare class MirrorError extends Error {
|
|
7
|
-
readonly code: MirrorErrorCode;
|
|
8
|
-
constructor(code: MirrorErrorCode, message: string, options?: ErrorOptions);
|
|
9
|
-
}
|
|
10
|
-
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../src/lib/mirror/domain/errors.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe;aAC1B,KAAK,EAAE,OAAO;aACd,aAAa,EAAE,eAAe;CACtB,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAErF,qBAAa,WAAY,SAAQ,KAAK;IACpC,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAE/B,YAAY,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,EAIzE;CACF"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
export const MirrorErrorCode = {
|
|
2
|
-
FATAL: "FATAL",
|
|
3
|
-
PACKAGE_WRITE: "PACKAGE_WRITE",
|
|
4
|
-
};
|
|
5
|
-
export class MirrorError extends Error {
|
|
6
|
-
code;
|
|
7
|
-
constructor(code, message, options) {
|
|
8
|
-
super(message, options);
|
|
9
|
-
this.name = "MirrorError";
|
|
10
|
-
this.code = code;
|
|
11
|
-
}
|
|
12
|
-
}
|