opkg 0.5.0 → 0.6.1
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 +82 -21
- package/dist/commands/add.js +11 -276
- package/dist/commands/add.js.map +1 -1
- package/dist/commands/duplicate.js +5 -2
- package/dist/commands/duplicate.js.map +1 -1
- package/dist/commands/init.js +76 -145
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/install.js +30 -671
- package/dist/commands/install.js.map +1 -1
- package/dist/commands/list.js +9 -3
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/login.js +58 -0
- package/dist/commands/login.js.map +1 -0
- package/dist/commands/logout.js +28 -0
- package/dist/commands/logout.js.map +1 -0
- package/dist/commands/pack.js +10 -137
- package/dist/commands/pack.js.map +1 -1
- package/dist/commands/pull.js +5 -299
- package/dist/commands/pull.js.map +1 -1
- package/dist/commands/push.js +5 -239
- package/dist/commands/push.js.map +1 -1
- package/dist/commands/save.js +29 -168
- package/dist/commands/save.js.map +1 -1
- package/dist/commands/show.js +18 -5
- package/dist/commands/show.js.map +1 -1
- package/dist/commands/status.js +21 -8
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/tui.js +61 -0
- package/dist/commands/tui.js.map +1 -0
- package/dist/commands/uninstall.js +5 -5
- package/dist/commands/uninstall.js.map +1 -1
- package/dist/constants/index.js +19 -45
- package/dist/constants/index.js.map +1 -1
- package/dist/constants/workspace.js +9 -0
- package/dist/constants/workspace.js.map +1 -0
- package/dist/core/add/add-conflict-handler.js +68 -0
- package/dist/core/add/add-conflict-handler.js.map +1 -0
- package/dist/core/add/add-pipeline.js +137 -0
- package/dist/core/add/add-pipeline.js.map +1 -0
- package/dist/core/add/package-index-updater.js +66 -36
- package/dist/core/add/package-index-updater.js.map +1 -1
- package/dist/core/add/platform-path-transformer.js +47 -0
- package/dist/core/add/platform-path-transformer.js.map +1 -0
- package/dist/core/add/source-collector.js +57 -0
- package/dist/core/add/source-collector.js.map +1 -0
- package/dist/core/api-keys.js +6 -2
- package/dist/core/api-keys.js.map +1 -1
- package/dist/core/auth.js +25 -40
- package/dist/core/auth.js.map +1 -1
- package/dist/core/config.js +11 -3
- package/dist/core/config.js.map +1 -1
- package/dist/core/dependency-resolver.js +24 -11
- package/dist/core/dependency-resolver.js.map +1 -1
- package/dist/core/device-auth.js +81 -0
- package/dist/core/device-auth.js.map +1 -0
- package/dist/core/directory.js +15 -9
- package/dist/core/directory.js.map +1 -1
- package/dist/core/discovery/file-discovery.js +55 -54
- package/dist/core/discovery/file-discovery.js.map +1 -1
- package/dist/core/discovery/platform-files-discovery.js +32 -17
- package/dist/core/discovery/platform-files-discovery.js.map +1 -1
- package/dist/core/install/bulk-install-pipeline.js +200 -0
- package/dist/core/install/bulk-install-pipeline.js.map +1 -0
- package/dist/core/install/canonical-plan.js +129 -0
- package/dist/core/install/canonical-plan.js.map +1 -0
- package/dist/core/install/download-keys.js +2 -2
- package/dist/core/install/download-keys.js.map +1 -1
- package/dist/core/install/dry-run.js +2 -2
- package/dist/core/install/dry-run.js.map +1 -1
- package/dist/core/install/index.js +3 -0
- package/dist/core/install/index.js.map +1 -0
- package/dist/core/install/install-errors.js +41 -0
- package/dist/core/install/install-errors.js.map +1 -0
- package/dist/core/install/install-flow.js +8 -9
- package/dist/core/install/install-flow.js.map +1 -1
- package/dist/core/install/install-pipeline.js +296 -0
- package/dist/core/install/install-pipeline.js.map +1 -0
- package/dist/core/install/install-reporting.js +99 -0
- package/dist/core/install/install-reporting.js.map +1 -0
- package/dist/core/install/platform-resolution.js +6 -6
- package/dist/core/install/platform-resolution.js.map +1 -1
- package/dist/core/install/remote-flow.js +84 -7
- package/dist/core/install/remote-flow.js.map +1 -1
- package/dist/core/install/version-selection.js +25 -8
- package/dist/core/install/version-selection.js.map +1 -1
- package/dist/core/openpackage.js +22 -14
- package/dist/core/openpackage.js.map +1 -1
- package/dist/core/package-context.js +246 -0
- package/dist/core/package-context.js.map +1 -0
- package/dist/core/package.js +73 -9
- package/dist/core/package.js.map +1 -1
- package/dist/core/platforms.js +126 -217
- package/dist/core/platforms.js.map +1 -1
- package/dist/core/profiles.js +60 -3
- package/dist/core/profiles.js.map +1 -1
- package/dist/core/pull/pull-errors.js +62 -0
- package/dist/core/pull/pull-errors.js.map +1 -0
- package/dist/core/pull/pull-options.js +2 -0
- package/dist/core/pull/pull-options.js.map +1 -0
- package/dist/core/pull/pull-output.js +50 -0
- package/dist/core/pull/pull-output.js.map +1 -0
- package/dist/core/pull/pull-pipeline.js +141 -0
- package/dist/core/pull/pull-pipeline.js.map +1 -0
- package/dist/core/pull/pull-strategies.js +103 -0
- package/dist/core/pull/pull-strategies.js.map +1 -0
- package/dist/core/pull/pull-types.js +2 -0
- package/dist/core/pull/pull-types.js.map +1 -0
- package/dist/core/push/push-context.js +95 -0
- package/dist/core/push/push-context.js.map +1 -0
- package/dist/core/push/push-errors.js +133 -0
- package/dist/core/push/push-errors.js.map +1 -0
- package/dist/core/push/push-output.js +44 -0
- package/dist/core/push/push-output.js.map +1 -0
- package/dist/core/push/push-pipeline.js +74 -0
- package/dist/core/push/push-pipeline.js.map +1 -0
- package/dist/core/push/push-single-file.js +56 -0
- package/dist/core/push/push-single-file.js.map +1 -0
- package/dist/core/push/push-types.js +2 -0
- package/dist/core/push/push-types.js.map +1 -0
- package/dist/core/push/push-upload.js +68 -0
- package/dist/core/push/push-upload.js.map +1 -0
- package/dist/core/registry/registry-rename.js +2 -1
- package/dist/core/registry/registry-rename.js.map +1 -1
- package/dist/core/registry.js +14 -5
- package/dist/core/registry.js.map +1 -1
- package/dist/core/remote-pull.js +165 -36
- package/dist/core/remote-pull.js.map +1 -1
- package/dist/core/save/constants.js +4 -0
- package/dist/core/save/constants.js.map +1 -1
- package/dist/core/save/name-resolution.js +31 -0
- package/dist/core/save/name-resolution.js.map +1 -0
- package/dist/core/save/package-detection.js +147 -0
- package/dist/core/save/package-detection.js.map +1 -0
- package/dist/core/save/package-saver.js +82 -43
- package/dist/core/save/package-saver.js.map +1 -1
- package/dist/core/save/package-yml-generator.js +51 -71
- package/dist/core/save/package-yml-generator.js.map +1 -1
- package/dist/core/save/root-save-candidates.js.map +1 -1
- package/dist/core/save/save-candidate-loader.js +89 -0
- package/dist/core/save/save-candidate-loader.js.map +1 -0
- package/dist/core/save/save-conflict-resolution.js +72 -410
- package/dist/core/save/save-conflict-resolution.js.map +1 -1
- package/dist/core/save/save-conflict-resolver.js +277 -0
- package/dist/core/save/save-conflict-resolver.js.map +1 -0
- package/dist/core/save/save-pipeline.js +162 -0
- package/dist/core/save/save-pipeline.js.map +1 -0
- package/dist/core/save/save-single-file.js +124 -0
- package/dist/core/save/save-single-file.js.map +1 -0
- package/dist/core/save/save-types.js +2 -0
- package/dist/core/save/save-types.js.map +1 -0
- package/dist/core/save/save-yml-resolution.js +77 -39
- package/dist/core/save/save-yml-resolution.js.map +1 -1
- package/dist/core/save/workspace-rename.js +6 -6
- package/dist/core/save/workspace-rename.js.map +1 -1
- package/dist/core/scoping/package-scoping.js +14 -2
- package/dist/core/scoping/package-scoping.js.map +1 -1
- package/dist/core/status/status-file-discovery.js +12 -30
- package/dist/core/status/status-file-discovery.js.map +1 -1
- package/dist/core/sync/platform-sync.js +7 -4
- package/dist/core/sync/platform-sync.js.map +1 -1
- package/dist/core/sync/root-files-sync.js +59 -1
- package/dist/core/sync/root-files-sync.js.map +1 -1
- package/dist/core/token-store.js +73 -0
- package/dist/core/token-store.js.map +1 -0
- package/dist/core/uninstall/uninstall-file-discovery.js +1 -2
- package/dist/core/uninstall/uninstall-file-discovery.js.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/tui/app.js +95 -0
- package/dist/tui/app.js.map +1 -0
- package/dist/tui/components/package-list.js +73 -0
- package/dist/tui/components/package-list.js.map +1 -0
- package/dist/tui/controller.js +365 -0
- package/dist/tui/controller.js.map +1 -0
- package/dist/tui/index.js +12 -0
- package/dist/tui/index.js.map +1 -0
- package/dist/tui/services/file-index.js +64 -0
- package/dist/tui/services/file-index.js.map +1 -0
- package/dist/tui/services/packages.js +18 -0
- package/dist/tui/services/packages.js.map +1 -0
- package/dist/tui/services/save.js +21 -0
- package/dist/tui/services/save.js.map +1 -0
- package/dist/tui/state/app-state.js +15 -0
- package/dist/tui/state/app-state.js.map +1 -0
- package/dist/tui/state.js +17 -0
- package/dist/tui/state.js.map +1 -0
- package/dist/tui/types.js +2 -0
- package/dist/tui/types.js.map +1 -0
- package/dist/tui/views/add-file-modal.js +129 -0
- package/dist/tui/views/add-file-modal.js.map +1 -0
- package/dist/tui/views/file-preview.js +44 -0
- package/dist/tui/views/file-preview.js.map +1 -0
- package/dist/tui/views/list-packages.js +73 -0
- package/dist/tui/views/list-packages.js.map +1 -0
- package/dist/tui/views/main-menu.js +29 -0
- package/dist/tui/views/main-menu.js.map +1 -0
- package/dist/tui/views/manage-view.js +81 -0
- package/dist/tui/views/manage-view.js.map +1 -0
- package/dist/tui/views/package-hub.js +120 -0
- package/dist/tui/views/package-hub.js.map +1 -0
- package/dist/tui/views/placeholder.js +24 -0
- package/dist/tui/views/placeholder.js.map +1 -0
- package/dist/types/index.js.map +1 -1
- package/dist/utils/bun-bootstrap.js +72 -0
- package/dist/utils/bun-bootstrap.js.map +1 -0
- package/dist/utils/file-processing.js +5 -58
- package/dist/utils/file-processing.js.map +1 -1
- package/dist/utils/formatters.js +3 -1
- package/dist/utils/formatters.js.map +1 -1
- package/dist/utils/http-client.js +27 -5
- package/dist/utils/http-client.js.map +1 -1
- package/dist/utils/index-based-installer.js +40 -35
- package/dist/utils/index-based-installer.js.map +1 -1
- package/dist/utils/install-file-discovery.js +18 -24
- package/dist/utils/install-file-discovery.js.map +1 -1
- package/dist/utils/install-orchestrator.js +21 -21
- package/dist/utils/install-orchestrator.js.map +1 -1
- package/dist/utils/jsonc.js +44 -0
- package/dist/utils/jsonc.js.map +1 -0
- package/dist/utils/manifest-paths.js +27 -0
- package/dist/utils/manifest-paths.js.map +1 -0
- package/dist/utils/package-copy.js +199 -0
- package/dist/utils/package-copy.js.map +1 -0
- package/dist/utils/package-filters.js +125 -0
- package/dist/utils/package-filters.js.map +1 -0
- package/dist/utils/package-index-yml.js +15 -10
- package/dist/utils/package-index-yml.js.map +1 -1
- package/dist/utils/package-installation.js +4 -113
- package/dist/utils/package-installation.js.map +1 -1
- package/dist/utils/package-local-files.js +2 -35
- package/dist/utils/package-local-files.js.map +1 -1
- package/dist/utils/package-management.js +191 -75
- package/dist/utils/package-management.js.map +1 -1
- package/dist/utils/package-merge.js +48 -0
- package/dist/utils/package-merge.js.map +1 -0
- package/dist/utils/package-name.js +29 -0
- package/dist/utils/package-name.js.map +1 -1
- package/dist/utils/package-versioning.js +16 -4
- package/dist/utils/package-versioning.js.map +1 -1
- package/dist/utils/package-yml.js +41 -12
- package/dist/utils/package-yml.js.map +1 -1
- package/dist/utils/path-normalization.js +8 -53
- package/dist/utils/path-normalization.js.map +1 -1
- package/dist/utils/paths.js +17 -9
- package/dist/utils/paths.js.map +1 -1
- package/dist/utils/platform-file.js +16 -59
- package/dist/utils/platform-file.js.map +1 -1
- package/dist/utils/platform-mapper.js +29 -41
- package/dist/utils/platform-mapper.js.map +1 -1
- package/dist/utils/platform-specific-paths.js.map +1 -1
- package/dist/utils/platform-utils.js +28 -139
- package/dist/utils/platform-utils.js.map +1 -1
- package/dist/utils/platform-yaml-merge.js +13 -6
- package/dist/utils/platform-yaml-merge.js.map +1 -1
- package/dist/utils/prompts.js +0 -31
- package/dist/utils/prompts.js.map +1 -1
- package/dist/utils/registry-entry-filter.js +38 -24
- package/dist/utils/registry-entry-filter.js.map +1 -1
- package/dist/utils/registry-paths.js +48 -0
- package/dist/utils/registry-paths.js.map +1 -0
- package/dist/utils/root-file-installer.js +19 -0
- package/dist/utils/root-file-installer.js.map +1 -1
- package/dist/utils/root-file-registry.js.map +1 -1
- package/dist/utils/tarball.js +6 -2
- package/dist/utils/tarball.js.map +1 -1
- package/dist/utils/version-ranges.js +11 -8
- package/dist/utils/version-ranges.js.map +1 -1
- package/package.json +3 -2
- package/platforms.jsonc +178 -0
- package/specs/auth/auth-device-flow.md +70 -0
- package/specs/install/install-behavior.md +30 -0
- package/specs/install/package-yml-canonical.md +21 -1
- package/specs/install/version-resolution.md +9 -7
- package/specs/login/login-device-flow.md +70 -0
- package/specs/package/README.md +60 -0
- package/specs/package/nested-packages-and-parent-packages.md +79 -0
- package/specs/package/package-index-yml.md +171 -0
- package/specs/package/package-root-layout.md +78 -0
- package/specs/package/registry-payload-and-copy.md +77 -0
- package/specs/package/universal-content.md +144 -0
- package/specs/platforms.md +193 -0
- package/specs/push/push-behavior.md +38 -10
- package/specs/push/push-errors-and-hints.md +19 -6
- package/specs/push/push-remote-upload.md +3 -0
- package/specs/push/push-scoping.md +14 -22
- package/specs/push/push-version-selection.md +18 -16
- package/specs/save/README.md +40 -0
- package/specs/save/save-conflict-resolution.md +146 -0
- package/specs/save/save-file-discovery.md +101 -0
- package/specs/save/save-frontmatter-overrides.md +81 -0
- package/specs/save/save-modes-inputs.md +55 -0
- package/specs/save/save-naming-scoping.md +93 -0
- package/specs/save/save-package-detection.md +60 -0
- package/specs/save/save-registry-sync.md +126 -0
- package/specs/save-pack.md +1 -0
- package/dist/commands/release.js +0 -33
- package/dist/commands/release.js.map +0 -1
- package/dist/commands/tag.js +0 -311
- package/dist/commands/tag.js.map +0 -1
- package/dist/commands/update.js +0 -30
- package/dist/commands/update.js.map +0 -1
- package/dist/core/add/formula-index-updater.js +0 -290
- package/dist/core/add/formula-index-updater.js.map +0 -1
- package/dist/core/discovery/ai-files-discovery.js +0 -2
- package/dist/core/discovery/ai-files-discovery.js.map +0 -1
- package/dist/core/discovery/formula-files-discovery.js +0 -14
- package/dist/core/discovery/formula-files-discovery.js.map +0 -1
- package/dist/core/discovery/index-files-discovery.js +0 -91
- package/dist/core/discovery/index-files-discovery.js.map +0 -1
- package/dist/core/discovery/md-files-discovery.js +0 -82
- package/dist/core/discovery/md-files-discovery.js.map +0 -1
- package/dist/core/discovery/package-files-discovery.js +0 -14
- package/dist/core/discovery/package-files-discovery.js.map +0 -1
- package/dist/core/discovery/platform-discovery.js +0 -84
- package/dist/core/discovery/platform-discovery.js.map +0 -1
- package/dist/core/discovery/root-files-discovery.js +0 -2
- package/dist/core/discovery/root-files-discovery.js.map +0 -1
- package/dist/core/formula.js +0 -170
- package/dist/core/formula.js.map +0 -1
- package/dist/core/git-registry.js +0 -46
- package/dist/core/git-registry.js.map +0 -1
- package/dist/core/groundzero.js +0 -277
- package/dist/core/groundzero.js.map +0 -1
- package/dist/core/install/scenario.js +0 -11
- package/dist/core/install/scenario.js.map +0 -1
- package/dist/core/package-sync.js +0 -219
- package/dist/core/package-sync.js.map +0 -1
- package/dist/core/save/formula-file-generator.js +0 -167
- package/dist/core/save/formula-file-generator.js.map +0 -1
- package/dist/core/save/formula-saver.js +0 -52
- package/dist/core/save/formula-saver.js.map +0 -1
- package/dist/core/save/formula-yml-generator.js +0 -89
- package/dist/core/save/formula-yml-generator.js.map +0 -1
- package/dist/core/save/formula-yml-versioning.js +0 -108
- package/dist/core/save/formula-yml-versioning.js.map +0 -1
- package/dist/core/save/generic-file-sync.js +0 -38
- package/dist/core/save/generic-file-sync.js.map +0 -1
- package/dist/core/save/md-files-sync.js +0 -33
- package/dist/core/save/md-files-sync.js.map +0 -1
- package/dist/core/save/package-yml-versioning.js +0 -108
- package/dist/core/save/package-yml-versioning.js.map +0 -1
- package/dist/core/save/platform-sync.js +0 -95
- package/dist/core/save/platform-sync.js.map +0 -1
- package/dist/core/save/root-files-sync.js +0 -140
- package/dist/core/save/root-files-sync.js.map +0 -1
- package/dist/core/save/save-candidate-types.js +0 -2
- package/dist/core/save/save-candidate-types.js.map +0 -1
- package/dist/core/save/save-conflict-types.js +0 -2
- package/dist/core/save/save-conflict-types.js.map +0 -1
- package/dist/core/save/save-file-discovery.js +0 -5
- package/dist/core/save/save-file-discovery.js.map +0 -1
- package/dist/core/status-file-discovery.js +0 -175
- package/dist/core/status-file-discovery.js.map +0 -1
- package/dist/utils/discovery/file-processing.js +0 -156
- package/dist/utils/discovery/file-processing.js.map +0 -1
- package/dist/utils/discovery/formula-discovery.js +0 -211
- package/dist/utils/discovery/formula-discovery.js.map +0 -1
- package/dist/utils/discovery/platform-discovery.js +0 -2
- package/dist/utils/discovery/platform-discovery.js.map +0 -1
- package/dist/utils/formula-discovery.js +0 -102
- package/dist/utils/formula-discovery.js.map +0 -1
- package/dist/utils/formula-index-yml.js +0 -122
- package/dist/utils/formula-index-yml.js.map +0 -1
- package/dist/utils/formula-installation.js +0 -110
- package/dist/utils/formula-installation.js.map +0 -1
- package/dist/utils/formula-local-files.js +0 -38
- package/dist/utils/formula-local-files.js.map +0 -1
- package/dist/utils/formula-management.js +0 -191
- package/dist/utils/formula-management.js.map +0 -1
- package/dist/utils/formula-name.js +0 -97
- package/dist/utils/formula-name.js.map +0 -1
- package/dist/utils/formula-versioning.js +0 -109
- package/dist/utils/formula-versioning.js.map +0 -1
- package/dist/utils/formula-yml.js +0 -82
- package/dist/utils/formula-yml.js.map +0 -1
- package/dist/utils/git.js +0 -54
- package/dist/utils/git.js.map +0 -1
- package/dist/utils/id-based-discovery.js +0 -126
- package/dist/utils/id-based-discovery.js.map +0 -1
- package/dist/utils/id-based-installer.js +0 -249
- package/dist/utils/id-based-installer.js.map +0 -1
- package/dist/utils/index-yml-based-installer.js +0 -375
- package/dist/utils/index-yml-based-installer.js.map +0 -1
- package/dist/utils/index-yml.js +0 -124
- package/dist/utils/index-yml.js.map +0 -1
- package/dist/utils/md-frontmatter.js +0 -3
- package/dist/utils/md-frontmatter.js.map +0 -1
- package/dist/utils/package-link-yml.js +0 -92
- package/dist/utils/package-link-yml.js.map +0 -1
- package/dist/utils/platform-discovery.js +0 -2
- package/dist/utils/platform-discovery.js.map +0 -1
- package/dist/utils/platform-frontmatter-split.js +0 -15
- package/dist/utils/platform-frontmatter-split.js.map +0 -1
- package/dist/utils/timestamp-encoder.js +0 -13
- package/dist/utils/timestamp-encoder.js.map +0 -1
- package/dist/utils/wip-versioning.js +0 -24
- package/dist/utils/wip-versioning.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"package-yml-versioning.js","sourceRoot":"","sources":["../../../src/core/save/package-yml-versioning.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Platform Sync Module
|
|
3
|
-
* Utility functions for syncing saved formula files across detected platforms
|
|
4
|
-
*/
|
|
5
|
-
import { getDetectedPlatforms } from '../platforms.js';
|
|
6
|
-
import { FILE_PATTERNS, PLATFORMS } from '../../constants/index.js';
|
|
7
|
-
import { logger } from '../../utils/logger.js';
|
|
8
|
-
import { parseUniversalPath } from '../../utils/platform-file.js';
|
|
9
|
-
import { syncRootFiles } from './root-files-sync.js';
|
|
10
|
-
import { syncUniversalMarkdown } from './md-files-sync.js';
|
|
11
|
-
import { syncGenericFile } from './generic-file-sync.js';
|
|
12
|
-
/**
|
|
13
|
-
* Determine if a formula file is syncable across platforms.
|
|
14
|
-
* - Allows universal subdir .md files
|
|
15
|
-
* - Allows index.yml under universal subdirs
|
|
16
|
-
*/
|
|
17
|
-
function isYamlOverrideFile(relPath) {
|
|
18
|
-
// Matches filename.{platform}.yml using platform list from constants
|
|
19
|
-
const alternation = Object.values(PLATFORMS).join('|');
|
|
20
|
-
const regex = new RegExp(`\\\.(?:${alternation})\\\.yml$`, 'i');
|
|
21
|
-
return regex.test(relPath);
|
|
22
|
-
}
|
|
23
|
-
function isSyncableUniversalFile(file) {
|
|
24
|
-
const parsed = parseUniversalPath(file.path);
|
|
25
|
-
if (!parsed)
|
|
26
|
-
return false;
|
|
27
|
-
// Exclude YAML override files; these are used only to merge frontmatter
|
|
28
|
-
if (isYamlOverrideFile(file.path))
|
|
29
|
-
return false;
|
|
30
|
-
return true; // Accept any other file in universal subdirs
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* Sync saved formula files across all detected platforms
|
|
34
|
-
* @param cwd - Current working directory
|
|
35
|
-
* @param formulaFiles - Array of formula files that were saved to registry
|
|
36
|
-
* @returns Promise resolving to sync result with created files
|
|
37
|
-
*/
|
|
38
|
-
export async function syncPlatformFiles(cwd, formulaFiles) {
|
|
39
|
-
const result = {
|
|
40
|
-
created: [],
|
|
41
|
-
updated: []
|
|
42
|
-
};
|
|
43
|
-
// Get detected platforms
|
|
44
|
-
const detectedPlatforms = await getDetectedPlatforms(cwd);
|
|
45
|
-
if (detectedPlatforms.length === 0) {
|
|
46
|
-
logger.debug('No platforms detected, skipping platform sync');
|
|
47
|
-
return result;
|
|
48
|
-
}
|
|
49
|
-
// Filter formula files to only those in universal subdirs (rules, commands, agents)
|
|
50
|
-
// Include .md files and index.yml (copied verbatim), but exclude other .yml overrides
|
|
51
|
-
const syncableFiles = formulaFiles.filter(isSyncableUniversalFile);
|
|
52
|
-
if (syncableFiles.length === 0) {
|
|
53
|
-
logger.debug('No syncable files found (no universal subdir files), skipping platform sync');
|
|
54
|
-
return result;
|
|
55
|
-
}
|
|
56
|
-
logger.debug(`Starting platform sync for ${syncableFiles.length} files across ${detectedPlatforms.length} platforms`);
|
|
57
|
-
// Process each syncable file
|
|
58
|
-
for (const file of syncableFiles) {
|
|
59
|
-
const parsedPath = parseUniversalPath(file.path);
|
|
60
|
-
if (!parsedPath)
|
|
61
|
-
continue;
|
|
62
|
-
// Skip platform-specific files entirely (those with a platform suffix in filename)
|
|
63
|
-
if (parsedPath.platformSuffix) {
|
|
64
|
-
continue;
|
|
65
|
-
}
|
|
66
|
-
// Sync non platform-specific files across detected platforms
|
|
67
|
-
const { universalSubdir, relPath } = parsedPath;
|
|
68
|
-
const lower = relPath.toLowerCase();
|
|
69
|
-
try {
|
|
70
|
-
if (lower.endsWith(FILE_PATTERNS.MD_FILES)) {
|
|
71
|
-
// Markdown files: convert extension + merge YAML overrides
|
|
72
|
-
await syncUniversalMarkdown(cwd, universalSubdir, relPath, file.content, formulaFiles, result);
|
|
73
|
-
}
|
|
74
|
-
else {
|
|
75
|
-
// Other files: copy as-is preserving filename and structure
|
|
76
|
-
await syncGenericFile(cwd, universalSubdir, relPath, file.content, result);
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
catch (error) {
|
|
80
|
-
logger.warn(`Failed to sync file ${file.path}: ${error}`);
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
return result;
|
|
84
|
-
}
|
|
85
|
-
export async function performPlatformSync(cwd, formulaName, formulaFiles) {
|
|
86
|
-
// Sync universal files across detected platforms
|
|
87
|
-
const syncResult = await syncPlatformFiles(cwd, formulaFiles);
|
|
88
|
-
// Sync root files across detected platforms
|
|
89
|
-
const rootSyncResult = await syncRootFiles(cwd, formulaFiles, formulaName);
|
|
90
|
-
return {
|
|
91
|
-
created: [...syncResult.created, ...rootSyncResult.created],
|
|
92
|
-
updated: [...syncResult.updated, ...rootSyncResult.updated]
|
|
93
|
-
};
|
|
94
|
-
}
|
|
95
|
-
//# sourceMappingURL=platform-sync.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"platform-sync.js","sourceRoot":"","sources":["../../../src/core/save/platform-sync.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,140 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Root File Sync Module
|
|
3
|
-
* Utility functions for syncing saved root formula files across detected platforms
|
|
4
|
-
*/
|
|
5
|
-
import { relative } from 'path';
|
|
6
|
-
import { ensureDir, writeTextFile, exists, readTextFile } from '../../utils/fs.js';
|
|
7
|
-
import { getDetectedPlatforms, getPlatformDefinition, getAllPlatforms } from '../platforms.js';
|
|
8
|
-
import { logger } from '../../utils/logger.js';
|
|
9
|
-
import { getPlatformForRootFile } from '../../utils/root-file-registry.js';
|
|
10
|
-
import { mergeFormulaContentIntoRootFile } from '../../utils/root-file-merger.js';
|
|
11
|
-
import { ensureRootMarkerIdAndExtract, buildOpenMarker, CLOSE_MARKER } from '../../utils/root-file-extractor.js';
|
|
12
|
-
import { getPathLeaf } from '../../utils/path-normalization.js';
|
|
13
|
-
/**
|
|
14
|
-
* Sync saved root formula files across all detected platforms
|
|
15
|
-
* Converts between platform-specific root files (e.g., CLAUDE.md ↔ AGENTS.md)
|
|
16
|
-
* @param cwd - Current working directory
|
|
17
|
-
* @param formulaFiles - Array of formula files that were saved to registry
|
|
18
|
-
* @param formulaName - Name of the formula being synced
|
|
19
|
-
* @returns Promise resolving to sync result with created, updated, and skipped files
|
|
20
|
-
*/
|
|
21
|
-
export async function syncRootFiles(cwd, formulaFiles, formulaName) {
|
|
22
|
-
const result = {
|
|
23
|
-
created: [],
|
|
24
|
-
updated: [],
|
|
25
|
-
skipped: []
|
|
26
|
-
};
|
|
27
|
-
// Get detected platforms
|
|
28
|
-
const detectedPlatforms = await getDetectedPlatforms(cwd);
|
|
29
|
-
if (detectedPlatforms.length === 0) {
|
|
30
|
-
logger.debug('No platforms detected, skipping root file sync');
|
|
31
|
-
return result;
|
|
32
|
-
}
|
|
33
|
-
// Filter formula files to only root files
|
|
34
|
-
const rootFiles = formulaFiles.filter(file => isRootFile(file.path));
|
|
35
|
-
if (rootFiles.length === 0) {
|
|
36
|
-
logger.debug('No root files found in formula, skipping root file sync');
|
|
37
|
-
return result;
|
|
38
|
-
}
|
|
39
|
-
logger.debug(`Starting root file sync for ${rootFiles.length} files across ${detectedPlatforms.length} platforms`);
|
|
40
|
-
// Process each root file
|
|
41
|
-
for (const rootFile of rootFiles) {
|
|
42
|
-
try {
|
|
43
|
-
const syncResults = await syncSingleRootFile(cwd, rootFile, formulaName, detectedPlatforms);
|
|
44
|
-
result.created.push(...syncResults.created);
|
|
45
|
-
result.updated.push(...syncResults.updated);
|
|
46
|
-
result.skipped.push(...syncResults.skipped);
|
|
47
|
-
}
|
|
48
|
-
catch (error) {
|
|
49
|
-
logger.warn(`Failed to sync root file ${rootFile.path}: ${error}`);
|
|
50
|
-
result.skipped.push(rootFile.path);
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
return result;
|
|
54
|
-
}
|
|
55
|
-
/**
|
|
56
|
-
* Check if a file path represents a root file
|
|
57
|
-
*/
|
|
58
|
-
export function isRootFile(filePath) {
|
|
59
|
-
// Get all possible root file names from platform definitions
|
|
60
|
-
const rootFileNames = new Set();
|
|
61
|
-
for (const platform of getAllPlatforms()) {
|
|
62
|
-
const def = getPlatformDefinition(platform);
|
|
63
|
-
if (def.rootFile) {
|
|
64
|
-
rootFileNames.add(def.rootFile);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
const fileName = getPathLeaf(filePath);
|
|
68
|
-
return fileName ? rootFileNames.has(fileName) : false;
|
|
69
|
-
}
|
|
70
|
-
/**
|
|
71
|
-
* Sync a single root file across detected platforms
|
|
72
|
-
*/
|
|
73
|
-
async function syncSingleRootFile(cwd, rootFile, formulaName, detectedPlatforms) {
|
|
74
|
-
const result = {
|
|
75
|
-
created: [],
|
|
76
|
-
updated: [],
|
|
77
|
-
skipped: []
|
|
78
|
-
};
|
|
79
|
-
const sourceFileName = getPathLeaf(rootFile.path);
|
|
80
|
-
const sourcePlatform = getPlatformForRootFile(sourceFileName);
|
|
81
|
-
// Extract the formula content from the source root file
|
|
82
|
-
const ensured = ensureRootMarkerIdAndExtract(rootFile.content, formulaName);
|
|
83
|
-
if (!ensured) {
|
|
84
|
-
logger.warn(`Invalid marker-wrapped content in ${sourceFileName}, skipping sync`);
|
|
85
|
-
result.skipped.push(rootFile.path);
|
|
86
|
-
return result;
|
|
87
|
-
}
|
|
88
|
-
const formulaContent = buildOpenMarker(formulaName, ensured.id) + '\n' + ensured.sectionBody + '\n' + CLOSE_MARKER;
|
|
89
|
-
// Sync to each detected platform
|
|
90
|
-
for (const platform of detectedPlatforms) {
|
|
91
|
-
const platformDef = getPlatformDefinition(platform);
|
|
92
|
-
if (!platformDef.rootFile) {
|
|
93
|
-
continue; // Platform doesn't use root files
|
|
94
|
-
}
|
|
95
|
-
try {
|
|
96
|
-
const targetRootFile = platformDef.rootFile;
|
|
97
|
-
const targetPath = `${cwd}/${targetRootFile}`;
|
|
98
|
-
// Check if target file already exists
|
|
99
|
-
const fileExists = await exists(targetPath);
|
|
100
|
-
let existingContent = '';
|
|
101
|
-
if (fileExists) {
|
|
102
|
-
try {
|
|
103
|
-
existingContent = await readTextFile(targetPath, 'utf8');
|
|
104
|
-
}
|
|
105
|
-
catch (error) {
|
|
106
|
-
logger.warn(`Failed to read existing file ${targetPath}: ${error}`);
|
|
107
|
-
result.skipped.push(`${platform}:${targetRootFile}`);
|
|
108
|
-
continue;
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
// Merge the formula content into the target file
|
|
112
|
-
const mergedContent = mergeFormulaContentIntoRootFile(existingContent, formulaName, formulaContent);
|
|
113
|
-
// Ensure target directory exists (though root files are at project root)
|
|
114
|
-
await ensureDir(cwd);
|
|
115
|
-
// Write the merged content
|
|
116
|
-
await writeTextFile(targetPath, mergedContent, 'utf8');
|
|
117
|
-
// Record result
|
|
118
|
-
const relativePath = relative(cwd, targetPath);
|
|
119
|
-
if (fileExists) {
|
|
120
|
-
if (existingContent !== mergedContent) {
|
|
121
|
-
result.updated.push(`${relativePath}`);
|
|
122
|
-
logger.debug(`Updated synced root file: ${targetPath}`);
|
|
123
|
-
}
|
|
124
|
-
else {
|
|
125
|
-
logger.debug(`Root file unchanged: ${targetPath}`);
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
else {
|
|
129
|
-
result.created.push(`${relativePath}`);
|
|
130
|
-
logger.debug(`Created synced root file: ${targetPath}`);
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
catch (error) {
|
|
134
|
-
logger.warn(`Failed to sync root file ${platformDef.rootFile}: ${error}`);
|
|
135
|
-
result.skipped.push(`${platformDef.rootFile}`);
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
return result;
|
|
139
|
-
}
|
|
140
|
-
//# sourceMappingURL=root-files-sync.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"root-files-sync.js","sourceRoot":"","sources":["../../../src/core/save/root-files-sync.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"save-candidate-types.js","sourceRoot":"","sources":["../../../src/core/save/save-candidate-types.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"save-conflict-types.js","sourceRoot":"","sources":["../../../src/core/save/save-conflict-types.ts"],"names":[],"mappings":""}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { resolvePackageFilesWithConflicts } from './save-conflict-resolution.js';
|
|
2
|
-
export async function discoverPackageFilesForSave(packageInfo, options = {}) {
|
|
3
|
-
return await resolvePackageFilesWithConflicts(packageInfo, options);
|
|
4
|
-
}
|
|
5
|
-
//# sourceMappingURL=save-file-discovery.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"save-file-discovery.js","sourceRoot":"","sources":["../../../src/core/save/save-file-discovery.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,gCAAgC,EAEjC,MAAM,+BAA+B,CAAC;AAEvC,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,WAA2B,EAC3B,UAAyC,EAAE;IAE3C,OAAO,MAAM,gCAAgC,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;AACtE,CAAC"}
|
|
@@ -1,175 +0,0 @@
|
|
|
1
|
-
import { join, dirname } from 'path';
|
|
2
|
-
import { FILE_PATTERNS, PLATFORM_AI, PLATFORM_DIRS, UNIVERSAL_SUBDIRS } from '../constants/index.js';
|
|
3
|
-
import { buildPlatformSearchConfig } from './discovery/platform-discovery.js';
|
|
4
|
-
import { getPlatformDefinition, getAllPlatforms } from './platforms.js';
|
|
5
|
-
import { exists, walkFiles, readTextFile } from '../utils/fs.js';
|
|
6
|
-
import { parseMarkdownFrontmatter } from '../utils/md-frontmatter.js';
|
|
7
|
-
import { findMatchingIndexYmlDirsRecursive } from './discovery/index-files-discovery.js';
|
|
8
|
-
import { extractFormulaContentFromRootFile } from '../utils/root-file-extractor.js';
|
|
9
|
-
/**
|
|
10
|
-
* Discover installed formulas using same methods as uninstall but optimized for status command
|
|
11
|
-
* Returns detailed file information for formulas in the config
|
|
12
|
-
*/
|
|
13
|
-
export async function discoverFormulasForStatus(formulaNames) {
|
|
14
|
-
const cwd = process.cwd();
|
|
15
|
-
const result = new Map();
|
|
16
|
-
// Initialize result entries for all requested formulas
|
|
17
|
-
for (const formulaName of formulaNames) {
|
|
18
|
-
result.set(formulaName, { aiFiles: [], platforms: {}, rootFiles: [] });
|
|
19
|
-
}
|
|
20
|
-
// Use same platform detection as uninstall
|
|
21
|
-
const configs = await buildPlatformSearchConfig(cwd);
|
|
22
|
-
// Process each platform configuration
|
|
23
|
-
for (const cfg of configs) {
|
|
24
|
-
if (cfg.platform === PLATFORM_AI) {
|
|
25
|
-
await discoverAIForFormulas(cwd, result, formulaNames);
|
|
26
|
-
}
|
|
27
|
-
else {
|
|
28
|
-
await discoverPlatformForFormulas(cwd, cfg.platform, result, formulaNames);
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
// Check root files for all formulas
|
|
32
|
-
await discoverRootFilesForFormulas(cwd, result, formulaNames);
|
|
33
|
-
// Only return entries that have actual files discovered
|
|
34
|
-
const filteredResult = new Map();
|
|
35
|
-
for (const [name, entry] of result) {
|
|
36
|
-
const hasFiles = entry.aiFiles.length > 0 ||
|
|
37
|
-
Object.keys(entry.platforms).length > 0 ||
|
|
38
|
-
(entry.rootFiles && entry.rootFiles.length > 0);
|
|
39
|
-
if (hasFiles) {
|
|
40
|
-
filteredResult.set(name, entry);
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
return filteredResult;
|
|
44
|
-
}
|
|
45
|
-
/**
|
|
46
|
-
* Discover AI files for requested formulas using same logic as uninstall
|
|
47
|
-
*/
|
|
48
|
-
async function discoverAIForFormulas(cwd, result, formulaNames) {
|
|
49
|
-
const aiDir = PLATFORM_DIRS.AI;
|
|
50
|
-
const fullAIDir = join(cwd, aiDir);
|
|
51
|
-
if (!(await exists(fullAIDir)))
|
|
52
|
-
return;
|
|
53
|
-
// Use same file discovery as uninstall
|
|
54
|
-
for await (const filePath of walkFiles(fullAIDir)) {
|
|
55
|
-
if (!filePath.endsWith(FILE_PATTERNS.MD_FILES) && !filePath.endsWith(FILE_PATTERNS.MDC_FILES)) {
|
|
56
|
-
continue;
|
|
57
|
-
}
|
|
58
|
-
try {
|
|
59
|
-
const content = await readTextFile(filePath);
|
|
60
|
-
const fm = parseMarkdownFrontmatter(content);
|
|
61
|
-
const formulaName = fm?.formula?.name || fm?.formula;
|
|
62
|
-
if (formulaName && formulaNames.includes(formulaName)) {
|
|
63
|
-
const entry = result.get(formulaName);
|
|
64
|
-
entry.aiFiles.push(filePath);
|
|
65
|
-
if (!entry.anyPath)
|
|
66
|
-
entry.anyPath = dirname(filePath);
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
catch {
|
|
70
|
-
// Skip unreadable files
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
// Check index.yml marked directories for AI
|
|
74
|
-
for (const formulaName of formulaNames) {
|
|
75
|
-
const matchingDirs = await findMatchingIndexYmlDirsRecursive(fullAIDir, formulaName);
|
|
76
|
-
if (matchingDirs.length > 0) {
|
|
77
|
-
const entry = result.get(formulaName);
|
|
78
|
-
// Add directory markers (simplified - just track presence)
|
|
79
|
-
if (!entry.anyPath)
|
|
80
|
-
entry.anyPath = matchingDirs[0];
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* Discover platform files for requested formulas using same logic as uninstall
|
|
86
|
-
*/
|
|
87
|
-
async function discoverPlatformForFormulas(cwd, platform, result, formulaNames) {
|
|
88
|
-
const def = getPlatformDefinition(platform);
|
|
89
|
-
const platformRoot = join(cwd, def.rootDir);
|
|
90
|
-
for (const [subKey, subDef] of Object.entries(def.subdirs)) {
|
|
91
|
-
const targetDir = join(platformRoot, subDef.path || '');
|
|
92
|
-
if (!(await exists(targetDir)))
|
|
93
|
-
continue;
|
|
94
|
-
for await (const fp of walkFiles(targetDir)) {
|
|
95
|
-
const allowedExts = (subDef.readExts) || [FILE_PATTERNS.MD_FILES];
|
|
96
|
-
if (!allowedExts.some((ext) => fp.endsWith(ext)))
|
|
97
|
-
continue;
|
|
98
|
-
try {
|
|
99
|
-
const content = await readTextFile(fp);
|
|
100
|
-
const fm = parseMarkdownFrontmatter(content);
|
|
101
|
-
const formulaName = fm?.formula?.name || fm?.formula;
|
|
102
|
-
if (formulaName && formulaNames.includes(formulaName)) {
|
|
103
|
-
const entry = result.get(formulaName);
|
|
104
|
-
entry.platforms[platform] = entry.platforms[platform] || {};
|
|
105
|
-
if (subKey === UNIVERSAL_SUBDIRS.RULES) {
|
|
106
|
-
entry.platforms[platform].rules = entry.platforms[platform].rules || { found: 0 };
|
|
107
|
-
entry.platforms[platform].rules.found++;
|
|
108
|
-
}
|
|
109
|
-
else if (subKey === UNIVERSAL_SUBDIRS.COMMANDS) {
|
|
110
|
-
entry.platforms[platform].commands = entry.platforms[platform].commands || { found: 0 };
|
|
111
|
-
entry.platforms[platform].commands.found++;
|
|
112
|
-
}
|
|
113
|
-
else if (subKey === UNIVERSAL_SUBDIRS.AGENTS) {
|
|
114
|
-
entry.platforms[platform].agents = entry.platforms[platform].agents || { found: 0 };
|
|
115
|
-
entry.platforms[platform].agents.found++;
|
|
116
|
-
}
|
|
117
|
-
if (!entry.anyPath)
|
|
118
|
-
entry.anyPath = dirname(fp);
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
catch {
|
|
122
|
-
// Skip unreadable files
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
// Check index.yml marked directories for platform
|
|
127
|
-
for (const formulaName of formulaNames) {
|
|
128
|
-
const matchingDirs = await findMatchingIndexYmlDirsRecursive(platformRoot, formulaName);
|
|
129
|
-
if (matchingDirs.length > 0) {
|
|
130
|
-
const entry = result.get(formulaName);
|
|
131
|
-
if (!entry.anyPath)
|
|
132
|
-
entry.anyPath = matchingDirs[0];
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
/**
|
|
137
|
-
* Discover root files for requested formulas using same logic as uninstall
|
|
138
|
-
*/
|
|
139
|
-
async function discoverRootFilesForFormulas(cwd, result, formulaNames) {
|
|
140
|
-
console.log('formulaNames', formulaNames);
|
|
141
|
-
const seen = new Set();
|
|
142
|
-
for (const platform of getAllPlatforms()) {
|
|
143
|
-
const def = getPlatformDefinition(platform);
|
|
144
|
-
if (!def.rootFile)
|
|
145
|
-
continue;
|
|
146
|
-
const absPath = join(cwd, def.rootFile);
|
|
147
|
-
if (seen.has(absPath))
|
|
148
|
-
continue;
|
|
149
|
-
seen.add(absPath);
|
|
150
|
-
console.log('absPath', absPath);
|
|
151
|
-
if (!(await exists(absPath)))
|
|
152
|
-
continue;
|
|
153
|
-
try {
|
|
154
|
-
const content = await readTextFile(absPath);
|
|
155
|
-
for (const formulaName of formulaNames) {
|
|
156
|
-
console.log('formulaName', formulaName);
|
|
157
|
-
const extracted = extractFormulaContentFromRootFile(content, formulaName);
|
|
158
|
-
if (extracted) {
|
|
159
|
-
const entry = result.get(formulaName);
|
|
160
|
-
// console.log('entry', entry);
|
|
161
|
-
if (!entry.anyPath)
|
|
162
|
-
entry.anyPath = absPath;
|
|
163
|
-
// Track root file paths
|
|
164
|
-
if (!entry.rootFiles.includes(absPath)) {
|
|
165
|
-
entry.rootFiles.push(absPath);
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
}
|
|
170
|
-
catch (error) {
|
|
171
|
-
// Ignore errors
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
//# sourceMappingURL=status-file-discovery.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"status-file-discovery.js","sourceRoot":"","sources":["../../src/core/status-file-discovery.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,156 +0,0 @@
|
|
|
1
|
-
import { join } from 'path';
|
|
2
|
-
import { parseMarkdownFrontmatter } from '../md-frontmatter.js';
|
|
3
|
-
import { PLATFORM_AI, PLATFORM_DIRS } from '../../constants/index.js';
|
|
4
|
-
import { logger } from '../logger.js';
|
|
5
|
-
import { exists, readTextFile, listFiles, listDirectories, isDirectory } from '../fs.js';
|
|
6
|
-
import { calculateFileHash } from '../hash-utils.js';
|
|
7
|
-
import { mapPlatformFileToUniversal } from '../platform-mapper.js';
|
|
8
|
-
import { getRelativePathFromBase } from '../path-normalization.js';
|
|
9
|
-
import { getPlatformDefinition } from '../../core/platforms.js';
|
|
10
|
-
import { shouldIncludeMarkdownFile } from '../../core/discovery/md-files-discovery.js';
|
|
11
|
-
/**
|
|
12
|
-
* Get file modification time
|
|
13
|
-
* @throws Error if unable to get file stats
|
|
14
|
-
*/
|
|
15
|
-
export async function getFileMtime(filePath) {
|
|
16
|
-
const { getStats } = await import('../fs.js');
|
|
17
|
-
const stats = await getStats(filePath);
|
|
18
|
-
return stats.mtime.getTime();
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Recursively find files by extension in a directory
|
|
22
|
-
*/
|
|
23
|
-
export async function findFilesByExtension(dir, extensions = [], baseDir = dir) {
|
|
24
|
-
if (!(await exists(dir)) || !(await isDirectory(dir))) {
|
|
25
|
-
return [];
|
|
26
|
-
}
|
|
27
|
-
const files = [];
|
|
28
|
-
const normalizedExtensions = extensions.map(extension => extension.startsWith('.') ? extension : `.${extension}`);
|
|
29
|
-
// Check current directory files
|
|
30
|
-
const dirFiles = await listFiles(dir);
|
|
31
|
-
for (const file of dirFiles) {
|
|
32
|
-
// If no extension is provided, include all files
|
|
33
|
-
// Otherwise, include only files with the specified extension
|
|
34
|
-
if (normalizedExtensions.length === 0 || normalizedExtensions.some(extension => file.endsWith(extension))) {
|
|
35
|
-
const fullPath = join(dir, file);
|
|
36
|
-
const relativePath = getRelativePathFromBase(fullPath, baseDir);
|
|
37
|
-
files.push({ fullPath, relativePath });
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
// Recursively search subdirectories
|
|
41
|
-
const subdirs = await listDirectories(dir);
|
|
42
|
-
const subFilesPromises = subdirs.map(subdir => findFilesByExtension(join(dir, subdir), extensions, baseDir));
|
|
43
|
-
const subFiles = await Promise.all(subFilesPromises);
|
|
44
|
-
files.push(...subFiles.flat());
|
|
45
|
-
return files;
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* Recursively find directories containing a specific file
|
|
49
|
-
* @param rootDir - Root directory to start searching from
|
|
50
|
-
* @param targetFileName - Name of the file to search for (e.g., 'formula.yml')
|
|
51
|
-
* @param parseCallback - Optional callback to parse and validate the file content
|
|
52
|
-
* @returns Array of directory paths where the file was found
|
|
53
|
-
*/
|
|
54
|
-
export async function findDirectoriesContainingFile(rootDir, targetFileName, parseCallback) {
|
|
55
|
-
const results = [];
|
|
56
|
-
if (!(await exists(rootDir)) || !(await isDirectory(rootDir))) {
|
|
57
|
-
return results;
|
|
58
|
-
}
|
|
59
|
-
async function recurse(dir) {
|
|
60
|
-
try {
|
|
61
|
-
const files = await listFiles(dir);
|
|
62
|
-
// Check if target file exists in current directory
|
|
63
|
-
if (files.includes(targetFileName)) {
|
|
64
|
-
const filePath = join(dir, targetFileName);
|
|
65
|
-
// If parse callback provided, use it to validate/parse
|
|
66
|
-
if (parseCallback) {
|
|
67
|
-
try {
|
|
68
|
-
const parsedContent = await parseCallback(filePath);
|
|
69
|
-
if (parsedContent !== null) {
|
|
70
|
-
results.push({ dirPath: dir, parsedContent });
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
catch (error) {
|
|
74
|
-
logger.warn(`Failed to parse ${targetFileName} at ${filePath}: ${error}`);
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
else {
|
|
78
|
-
// No callback, just record the directory
|
|
79
|
-
results.push({ dirPath: dir });
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
// Recursively search subdirectories
|
|
83
|
-
const subdirs = await listDirectories(dir);
|
|
84
|
-
for (const subdir of subdirs) {
|
|
85
|
-
const subdirPath = join(dir, subdir);
|
|
86
|
-
await recurse(subdirPath);
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
catch (error) {
|
|
90
|
-
logger.warn(`Failed to scan directory: ${dir}`, { error });
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
await recurse(rootDir);
|
|
94
|
-
return results;
|
|
95
|
-
}
|
|
96
|
-
/**
|
|
97
|
-
* Process a single markdown file for discovery - common logic used by multiple discovery methods
|
|
98
|
-
*/
|
|
99
|
-
export async function processMdFileForDiscovery(file, formulaName, platform, registryPathPrefix) {
|
|
100
|
-
try {
|
|
101
|
-
const content = await readTextFile(file.fullPath);
|
|
102
|
-
let frontmatter;
|
|
103
|
-
try {
|
|
104
|
-
frontmatter = parseMarkdownFrontmatter(content);
|
|
105
|
-
}
|
|
106
|
-
catch (parseError) {
|
|
107
|
-
logger.warn(`Failed to parse frontmatter in ${file.relativePath}: ${parseError}`);
|
|
108
|
-
frontmatter = null;
|
|
109
|
-
}
|
|
110
|
-
const shouldInclude = shouldIncludeMarkdownFile(file, frontmatter, platform, formulaName);
|
|
111
|
-
if (shouldInclude) {
|
|
112
|
-
try {
|
|
113
|
-
const mtime = await getFileMtime(file.fullPath);
|
|
114
|
-
const contentHash = await calculateFileHash(content);
|
|
115
|
-
// Compute registry path using new universal mapping
|
|
116
|
-
let registryPath;
|
|
117
|
-
if (platform !== PLATFORM_AI) {
|
|
118
|
-
// Universal file from platform directory - use the mapper to get universal path
|
|
119
|
-
const mapping = mapPlatformFileToUniversal(file.fullPath);
|
|
120
|
-
if (mapping) {
|
|
121
|
-
registryPath = join(mapping.subdir, mapping.relPath);
|
|
122
|
-
}
|
|
123
|
-
else {
|
|
124
|
-
// Fallback to old logic
|
|
125
|
-
registryPath = registryPathPrefix ? join(registryPathPrefix, file.relativePath) : file.relativePath;
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
else {
|
|
129
|
-
// Platform-specific file or directory mode - use normal registry path logic
|
|
130
|
-
registryPath = registryPathPrefix ? join(registryPathPrefix, file.relativePath) : file.relativePath;
|
|
131
|
-
}
|
|
132
|
-
const sourceDir = platform === PLATFORM_AI ? PLATFORM_DIRS.AI : getPlatformDefinition(platform).rootDir;
|
|
133
|
-
const result = {
|
|
134
|
-
fullPath: file.fullPath,
|
|
135
|
-
relativePath: file.relativePath,
|
|
136
|
-
sourceDir,
|
|
137
|
-
registryPath,
|
|
138
|
-
mtime,
|
|
139
|
-
contentHash
|
|
140
|
-
};
|
|
141
|
-
if (frontmatter?.formula?.platformSpecific === true) {
|
|
142
|
-
result.forcePlatformSpecific = true;
|
|
143
|
-
}
|
|
144
|
-
return result;
|
|
145
|
-
}
|
|
146
|
-
catch (error) {
|
|
147
|
-
logger.warn(`Failed to process file metadata for ${file.relativePath}: ${error}`);
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
catch (error) {
|
|
152
|
-
logger.warn(`Failed to read ${file.relativePath}: ${error}`);
|
|
153
|
-
}
|
|
154
|
-
return null;
|
|
155
|
-
}
|
|
156
|
-
//# sourceMappingURL=file-processing.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"file-processing.js","sourceRoot":"","sources":["../../../src/utils/discovery/file-processing.ts"],"names":[],"mappings":"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"}
|