@skaile/workspaces 0.24.0 → 0.26.0
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/CHANGELOG.md +276 -0
- package/README.md +2 -2
- package/dist/{asset-feeds-WKIKSZ6Z.js → asset-feeds-WMVTI7KW.js} +11 -10
- package/dist/asset-feeds-WMVTI7KW.js.map +1 -0
- package/dist/asset-manager/index.js +11 -10
- package/dist/asset-manager/installer.js +10 -9
- package/dist/asset-manager/renderers.js +2 -2
- package/dist/asset-manager/src/index.d.ts +6 -7
- package/dist/asset-manager/src/index.d.ts.map +1 -1
- package/dist/asset-manager/src/installer.d.ts.map +1 -1
- package/dist/bridge/drivers/claude-sdk.js +14 -7
- package/dist/bridge/drivers/claude-sdk.js.map +1 -1
- package/dist/bridge/drivers/codex.js +8 -34
- package/dist/bridge/drivers/codex.js.map +1 -1
- package/dist/bridge/drivers/echo.js +1 -1
- package/dist/bridge/drivers/omp.js +64 -50
- package/dist/bridge/drivers/omp.js.map +1 -1
- package/dist/bridge/index.js +4 -4
- package/dist/bridge/src/drivers/claude-sdk.d.ts.map +1 -1
- package/dist/bridge/src/drivers/codex.d.ts.map +1 -1
- package/dist/bridge/src/drivers/omp.d.ts +20 -4
- package/dist/bridge/src/drivers/omp.d.ts.map +1 -1
- package/dist/bridge/src/error-classifier.d.ts +17 -0
- package/dist/bridge/src/error-classifier.d.ts.map +1 -1
- package/dist/bridge/src/models.d.ts +1 -1
- package/dist/bridge/src/models.d.ts.map +1 -1
- package/dist/bridge/src/provider-endpoints.d.ts +16 -0
- package/dist/bridge/src/provider-endpoints.d.ts.map +1 -0
- package/dist/bridge/src/validation.d.ts +1 -1
- package/dist/bridge/src/validation.d.ts.map +1 -1
- package/dist/{chunk-M5TE6YI5.js → chunk-23M4XZQW.js} +10 -52
- package/dist/chunk-23M4XZQW.js.map +1 -0
- package/dist/{chunk-DH4N5AW4.js → chunk-2FS4FPZ7.js} +3 -3
- package/dist/{chunk-DH4N5AW4.js.map → chunk-2FS4FPZ7.js.map} +1 -1
- package/dist/{chunk-6VTG73UY.js → chunk-45H3UO2R.js} +2 -2
- package/dist/{chunk-6VTG73UY.js.map → chunk-45H3UO2R.js.map} +1 -1
- package/dist/chunk-4SQ6Y6U7.js +28 -0
- package/dist/chunk-4SQ6Y6U7.js.map +1 -0
- package/dist/{chunk-LSGAYQ2E.js → chunk-5YO3H5Q4.js} +3 -3
- package/dist/{chunk-LSGAYQ2E.js.map → chunk-5YO3H5Q4.js.map} +1 -1
- package/dist/{chunk-JDX54X4Y.js → chunk-7GWYRVAX.js} +12 -9
- package/dist/chunk-7GWYRVAX.js.map +1 -0
- package/dist/{chunk-46COM7M5.js → chunk-7OBGSR7O.js} +5 -5
- package/dist/chunk-7OBGSR7O.js.map +1 -0
- package/dist/{chunk-2RFOFHSM.js → chunk-BKF3UFF4.js} +21 -9
- package/dist/chunk-BKF3UFF4.js.map +1 -0
- package/dist/{chunk-KOVLSBXK.js → chunk-BMQKMOQY.js} +81 -79
- package/dist/chunk-BMQKMOQY.js.map +1 -0
- package/dist/{chunk-J2TITSXF.js → chunk-BQRRBGDE.js} +2 -2
- package/dist/{chunk-J2TITSXF.js.map → chunk-BQRRBGDE.js.map} +1 -1
- package/dist/{chunk-5ESCS2OS.js → chunk-C32BRO2W.js} +67 -35
- package/dist/chunk-C32BRO2W.js.map +1 -0
- package/dist/{chunk-GZWJGNNN.js → chunk-DEYYRFQU.js} +3 -3
- package/dist/chunk-DEYYRFQU.js.map +1 -0
- package/dist/{chunk-YX3UWPJ5.js → chunk-IEJ5IOC3.js} +27 -49
- package/dist/chunk-IEJ5IOC3.js.map +1 -0
- package/dist/chunk-IERB3UXJ.js +215 -0
- package/dist/chunk-IERB3UXJ.js.map +1 -0
- package/dist/{chunk-FVTV7M76.js → chunk-IFGTRL2I.js} +3 -3
- package/dist/chunk-IFGTRL2I.js.map +1 -0
- package/dist/{chunk-LJ52ZKIU.js → chunk-JIQLLZ65.js} +203 -39
- package/dist/chunk-JIQLLZ65.js.map +1 -0
- package/dist/{chunk-Z3M5K67G.js → chunk-KL2MQ6WI.js} +114 -63
- package/dist/chunk-KL2MQ6WI.js.map +1 -0
- package/dist/{chunk-6FNCZYJY.js → chunk-MBOR7D65.js} +3 -3
- package/dist/{chunk-6FNCZYJY.js.map → chunk-MBOR7D65.js.map} +1 -1
- package/dist/{chunk-QAVZOJCV.js → chunk-OVRSNIKJ.js} +2 -2
- package/dist/chunk-OVRSNIKJ.js.map +1 -0
- package/dist/{chunk-DQWREFRQ.js → chunk-PAYAFNXG.js} +22 -3
- package/dist/chunk-PAYAFNXG.js.map +1 -0
- package/dist/{chunk-D3VO6WNC.js → chunk-PRLD7EXG.js} +3 -3
- package/dist/chunk-PRLD7EXG.js.map +1 -0
- package/dist/{chunk-N6TA6RSH.js → chunk-PY7AQRGH.js} +59 -13
- package/dist/chunk-PY7AQRGH.js.map +1 -0
- package/dist/{chunk-NELZIQ2E.js → chunk-QDJKE557.js} +20 -3
- package/dist/chunk-QDJKE557.js.map +1 -0
- package/dist/{chunk-OYRW5RCM.js → chunk-QHXS3YDV.js} +9 -9
- package/dist/chunk-QHXS3YDV.js.map +1 -0
- package/dist/{chunk-2F3RUZXC.js → chunk-RTAIGPTF.js} +161 -106
- package/dist/chunk-RTAIGPTF.js.map +1 -0
- package/dist/{chunk-IPUYL6TD.js → chunk-TV72ZJYN.js} +8 -5
- package/dist/{chunk-IPUYL6TD.js.map → chunk-TV72ZJYN.js.map} +1 -1
- package/dist/{chunk-ICS76R4T.js → chunk-W7W66MDZ.js} +10 -8
- package/dist/chunk-W7W66MDZ.js.map +1 -0
- package/dist/{chunk-JQBHCJ6N.js → chunk-WD4LP66U.js} +329 -121
- package/dist/chunk-WD4LP66U.js.map +1 -0
- package/dist/{chunk-AFLH7B64.js → chunk-XGLGS5B4.js} +3 -3
- package/dist/{chunk-AFLH7B64.js.map → chunk-XGLGS5B4.js.map} +1 -1
- package/dist/{chunk-HIIARTRZ.js → chunk-YDTW4GT6.js} +450 -207
- package/dist/chunk-YDTW4GT6.js.map +1 -0
- package/dist/{chunk-2XY6732A.js → chunk-YRU4WB6Y.js} +5 -5
- package/dist/chunk-YRU4WB6Y.js.map +1 -0
- package/dist/{chunk-542K7SR6.js → chunk-Z5DI7PDG.js} +173 -90
- package/dist/chunk-Z5DI7PDG.js.map +1 -0
- package/dist/{chunk-KLNL7QHN.js → chunk-ZAP2BDHG.js} +30 -5
- package/dist/chunk-ZAP2BDHG.js.map +1 -0
- package/dist/{chunk-GCJXPUHG.js → chunk-ZONCCO5N.js} +9 -4
- package/dist/chunk-ZONCCO5N.js.map +1 -0
- package/dist/{chunk-ODPII24X.js → chunk-ZYDE52WE.js} +3 -3
- package/dist/{chunk-ODPII24X.js.map → chunk-ZYDE52WE.js.map} +1 -1
- package/dist/cli/index.js +566 -425
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/src/commands/complete-resolvers.d.ts.map +1 -1
- package/dist/cli/src/commands/config.d.ts.map +1 -1
- package/dist/cli/src/commands/connector.d.ts +7 -0
- package/dist/cli/src/commands/connector.d.ts.map +1 -1
- package/dist/cli/src/commands/flow.d.ts +3 -2
- package/dist/cli/src/commands/flow.d.ts.map +1 -1
- package/dist/cli/src/commands/npx.d.ts.map +1 -1
- package/dist/cli/src/commands/project.d.ts.map +1 -1
- package/dist/cli/src/commands/run.d.ts.map +1 -1
- package/dist/cli/src/commands/validate.d.ts.map +1 -1
- package/dist/cli/src/flow-discovery.d.ts +24 -0
- package/dist/cli/src/flow-discovery.d.ts.map +1 -0
- package/dist/cli/src/open-registry.d.ts +2 -2
- package/dist/cli/src/paths.d.ts +26 -9
- package/dist/cli/src/paths.d.ts.map +1 -1
- package/dist/cli/src/skill-walker.d.ts +9 -5
- package/dist/cli/src/skill-walker.d.ts.map +1 -1
- package/dist/connectors/config.js +8 -7
- package/dist/connectors/index.js +13 -12
- package/dist/connectors/rclone-config.js +1 -1
- package/dist/connectors/src/connector-manager.d.ts +24 -2
- package/dist/connectors/src/connector-manager.d.ts.map +1 -1
- package/dist/connectors/src/connector-prompt.d.ts.map +1 -1
- package/dist/connectors/src/connector-registry.d.ts +3 -3
- package/dist/connectors/src/credential-helper-script.d.ts.map +1 -1
- package/dist/connectors/src/index.d.ts +4 -2
- package/dist/connectors/src/index.d.ts.map +1 -1
- package/dist/connectors/src/managed-gitconfig.d.ts.map +1 -1
- package/dist/connectors/src/mount-placeholder.d.ts +68 -0
- package/dist/connectors/src/mount-placeholder.d.ts.map +1 -0
- package/dist/connectors/src/rclone-config/googledrive.d.ts +1 -1
- package/dist/core/discovery.js +1 -1
- package/dist/core/index.js +7 -6
- package/dist/core/manifest.js +2 -2
- package/dist/core/models.js +1 -1
- package/dist/core/publish-manifest.d.ts +2 -0
- package/dist/core/publish-manifest.js +5 -0
- package/dist/core/publish-manifest.js.map +1 -0
- package/dist/core/runtime-assets.js +5 -4
- package/dist/core/src/discovery.d.ts +27 -0
- package/dist/core/src/discovery.d.ts.map +1 -1
- package/dist/core/src/index.d.ts +9 -6
- package/dist/core/src/index.d.ts.map +1 -1
- package/dist/core/src/lock.d.ts.map +1 -1
- package/dist/core/src/manifest-yaml-editor.d.ts +62 -0
- package/dist/core/src/manifest-yaml-editor.d.ts.map +1 -0
- package/dist/core/src/models.d.ts +16 -3
- package/dist/core/src/models.d.ts.map +1 -1
- package/dist/core/src/publish-manifest.d.ts +160 -0
- package/dist/core/src/publish-manifest.d.ts.map +1 -0
- package/dist/core/src/repo-manager.d.ts +9 -1
- package/dist/core/src/repo-manager.d.ts.map +1 -1
- package/dist/core/src/runtime-assets.d.ts +80 -29
- package/dist/core/src/runtime-assets.d.ts.map +1 -1
- package/dist/core/src/walker.d.ts +19 -6
- package/dist/core/src/walker.d.ts.map +1 -1
- package/dist/core/src/workspace-config.d.ts +30 -36
- package/dist/core/src/workspace-config.d.ts.map +1 -1
- package/dist/core/src/workspace-yaml-editor.d.ts +1 -15
- package/dist/core/src/workspace-yaml-editor.d.ts.map +1 -1
- package/dist/core/workspace-config.js +4 -3
- package/dist/deploy/index.js +50 -79
- package/dist/deploy/index.js.map +1 -1
- package/dist/deploy/src/targets/container-runtime.d.ts +1 -1
- package/dist/deploy/src/targets/container-runtime.d.ts.map +1 -1
- package/dist/deploy/src/targets/local.d.ts.map +1 -1
- package/dist/deploy/src/targets/nix.d.ts.map +1 -1
- package/dist/deploy/src/targets/process-handle.d.ts +7 -5
- package/dist/deploy/src/targets/process-handle.d.ts.map +1 -1
- package/dist/discovery/index.js +5 -4
- package/dist/discovery/src/discover-manifest.d.ts +3 -2
- package/dist/discovery/src/discover-manifest.d.ts.map +1 -1
- package/dist/discovery/src/discover.d.ts +2 -2
- package/dist/discovery/src/discover.d.ts.map +1 -1
- package/dist/discovery/src/index.d.ts +1 -1
- package/dist/discovery/src/index.d.ts.map +1 -1
- package/dist/discovery/src/source-config.d.ts +53 -12
- package/dist/discovery/src/source-config.d.ts.map +1 -1
- package/dist/discovery/src/tree-entries.d.ts +2 -2
- package/dist/discovery/src/tree-entries.d.ts.map +1 -1
- package/dist/{ensure-sources-OJUBGX6Z.js → ensure-sources-CVULUVH4.js} +12 -11
- package/dist/ensure-sources-CVULUVH4.js.map +1 -0
- package/dist/factory-assets/.skaile-source.yaml +6 -0
- package/dist/factory-assets/README.md +36 -0
- package/dist/factory-assets/bundles/workspaces-authoring/workspaces-authoring.bundle.yaml +9 -0
- package/dist/factory-assets/connectors/deploy/CONNECTOR.md +41 -0
- package/dist/{base-assets → factory-assets}/connectors/deploy/adapter.d.ts +2 -2
- package/dist/factory-assets/connectors/deploy/adapter.d.ts.map +1 -0
- package/dist/factory-assets/connectors/deploy.js +22 -0
- package/dist/factory-assets/connectors/devserver/CONNECTOR.md +44 -0
- package/dist/{base-assets → factory-assets}/connectors/devserver/adapter.d.ts +2 -2
- package/dist/factory-assets/connectors/devserver/adapter.d.ts.map +1 -0
- package/dist/factory-assets/connectors/devserver.js +22 -0
- package/dist/factory-assets/connectors/flow/CONNECTOR.md +47 -0
- package/dist/{base-assets → factory-assets}/connectors/flow/adapter.d.ts +2 -2
- package/dist/factory-assets/connectors/flow/adapter.d.ts.map +1 -0
- package/dist/factory-assets/connectors/flow/adapter.js +22 -0
- package/dist/factory-assets/connectors/flow/engine/engine.d.ts.map +1 -0
- package/dist/{base-assets → factory-assets}/connectors/flow/engine/flow-kind-provider.d.ts +1 -1
- package/dist/factory-assets/connectors/flow/engine/flow-kind-provider.d.ts.map +1 -0
- package/dist/factory-assets/connectors/flow/engine/flow-manifest.d.ts.map +1 -0
- package/dist/factory-assets/connectors/flow/engine/index.d.ts.map +1 -0
- package/dist/factory-assets/connectors/flow/engine/loader.d.ts.map +1 -0
- package/dist/factory-assets/connectors/flow/engine/types.d.ts.map +1 -0
- package/dist/factory-assets/connectors/flow/engine.js +15 -0
- package/dist/factory-assets/connectors/flow/index.d.ts.map +1 -0
- package/dist/{base-assets → factory-assets}/connectors/flow/prompt-fragments.d.ts +5 -5
- package/dist/factory-assets/connectors/flow/prompt-fragments.d.ts.map +1 -0
- package/dist/{base-assets → factory-assets}/connectors/flow/prompt-fragments.js +1 -1
- package/dist/{base-assets → factory-assets}/connectors/flow/run-flow.d.ts +8 -8
- package/dist/factory-assets/connectors/flow/run-flow.d.ts.map +1 -0
- package/dist/factory-assets/connectors/flow/run-flow.js +25 -0
- package/dist/{base-assets → factory-assets}/connectors/flow/stimulus-driver.d.ts +2 -2
- package/dist/factory-assets/connectors/flow/stimulus-driver.d.ts.map +1 -0
- package/dist/factory-assets/connectors/flow/stimulus-driver.js +4 -0
- package/dist/factory-assets/connectors/flow.js +22 -0
- package/dist/factory-assets/connectors/git/CONNECTOR.md +145 -0
- package/dist/{base-assets → factory-assets}/connectors/git/driver.d.ts +2 -2
- package/dist/factory-assets/connectors/git/driver.d.ts.map +1 -0
- package/dist/factory-assets/connectors/git.js +22 -0
- package/dist/factory-assets/connectors/gmail/CONNECTOR.md +50 -0
- package/dist/{base-assets → factory-assets}/connectors/gmail/adapter.d.ts +2 -2
- package/dist/factory-assets/connectors/gmail/adapter.d.ts.map +1 -0
- package/dist/factory-assets/connectors/gmail.js +22 -0
- package/dist/factory-assets/connectors/googledrive/CONNECTOR.md +150 -0
- package/dist/{base-assets → factory-assets}/connectors/googledrive/driver.d.ts +2 -2
- package/dist/factory-assets/connectors/googledrive/driver.d.ts.map +1 -0
- package/dist/factory-assets/connectors/googledrive.js +22 -0
- package/dist/factory-assets/connectors/local/CONNECTOR.md +40 -0
- package/dist/{base-assets → factory-assets}/connectors/local/driver.d.ts +2 -2
- package/dist/factory-assets/connectors/local/driver.d.ts.map +1 -0
- package/dist/factory-assets/connectors/local.js +22 -0
- package/dist/factory-assets/connectors/mattermost/CONNECTOR.md +65 -0
- package/dist/{base-assets → factory-assets}/connectors/mattermost/adapter.d.ts +2 -2
- package/dist/factory-assets/connectors/mattermost/adapter.d.ts.map +1 -0
- package/dist/factory-assets/connectors/mattermost.js +22 -0
- package/dist/factory-assets/connectors/memory/CONNECTOR.md +40 -0
- package/dist/{base-assets → factory-assets}/connectors/memory/adapter.d.ts +2 -2
- package/dist/factory-assets/connectors/memory/adapter.d.ts.map +1 -0
- package/dist/factory-assets/connectors/memory.js +22 -0
- package/dist/factory-assets/connectors/minio/CONNECTOR.md +68 -0
- package/dist/{base-assets → factory-assets}/connectors/minio/adapter.d.ts +2 -2
- package/dist/factory-assets/connectors/minio/adapter.d.ts.map +1 -0
- package/dist/factory-assets/connectors/minio.js +22 -0
- package/dist/factory-assets/connectors/postgres/CONNECTOR.md +46 -0
- package/dist/{base-assets → factory-assets}/connectors/postgres/adapter.d.ts +2 -2
- package/dist/factory-assets/connectors/postgres/adapter.d.ts.map +1 -0
- package/dist/factory-assets/connectors/postgres.js +22 -0
- package/dist/factory-assets/connectors/s3/CONNECTOR.md +76 -0
- package/dist/{base-assets → factory-assets}/connectors/s3/driver.d.ts +2 -2
- package/dist/factory-assets/connectors/s3/driver.d.ts.map +1 -0
- package/dist/factory-assets/connectors/s3.js +22 -0
- package/dist/factory-assets/connectors/sharepoint/CONNECTOR.md +181 -0
- package/dist/{base-assets → factory-assets}/connectors/sharepoint/driver.d.ts +2 -2
- package/dist/factory-assets/connectors/sharepoint/driver.d.ts.map +1 -0
- package/dist/factory-assets/connectors/sharepoint.js +22 -0
- package/dist/factory-assets/connectors/sqlite/CONNECTOR.md +44 -0
- package/dist/{base-assets → factory-assets}/connectors/sqlite/adapter.d.ts +2 -2
- package/dist/factory-assets/connectors/sqlite/adapter.d.ts.map +1 -0
- package/dist/factory-assets/connectors/sqlite.js +22 -0
- package/dist/factory-assets/connectors/static-server/CONNECTOR.md +41 -0
- package/dist/{base-assets → factory-assets}/connectors/static-server/adapter.d.ts +2 -2
- package/dist/factory-assets/connectors/static-server/adapter.d.ts.map +1 -0
- package/dist/factory-assets/connectors/static-server.js +22 -0
- package/dist/factory-assets/connectors/tunnel/CONNECTOR.md +40 -0
- package/dist/{base-assets → factory-assets}/connectors/tunnel/adapter.d.ts +2 -2
- package/dist/factory-assets/connectors/tunnel/adapter.d.ts.map +1 -0
- package/dist/factory-assets/connectors/tunnel.js +22 -0
- package/dist/factory-assets/connectors/webdav/CONNECTOR.md +139 -0
- package/dist/{base-assets → factory-assets}/connectors/webdav/driver.d.ts +2 -2
- package/dist/factory-assets/connectors/webdav/driver.d.ts.map +1 -0
- package/dist/factory-assets/connectors/webdav.js +22 -0
- package/dist/factory-assets/connectors/xstate/CONNECTOR.md +57 -0
- package/dist/{base-assets → factory-assets}/connectors/xstate/adapter.d.ts +2 -2
- package/dist/factory-assets/connectors/xstate/adapter.d.ts.map +1 -0
- package/dist/factory-assets/connectors/xstate-store/CONNECTOR.md +48 -0
- package/dist/{base-assets → factory-assets}/connectors/xstate-store/adapter.d.ts +2 -2
- package/dist/factory-assets/connectors/xstate-store/adapter.d.ts.map +1 -0
- package/dist/factory-assets/connectors/xstate-store.js +22 -0
- package/dist/factory-assets/connectors/xstate.js +22 -0
- package/dist/{base-assets → factory-assets}/index.d.ts +1 -1
- package/dist/factory-assets/index.d.ts.map +1 -0
- package/dist/{base-assets → factory-assets}/index.js +1 -1
- package/dist/factory-assets/index.js.map +1 -0
- package/dist/factory-assets/skaile.manifest.yaml +25 -0
- package/dist/factory-assets/skills/authoring-skaile-assets/SKILL.md +176 -0
- package/dist/factory-assets/skills/authoring-skaile-manifests/SKILL.md +243 -0
- package/dist/factory-assets/skills/authoring-skaile-manifests/references/dependency-standard.md +197 -0
- package/dist/factory-assets/skills/manifest-compliance/SKILL.md +140 -0
- package/dist/factory-assets/skills/skaile-author-asset/SKILL.md +239 -0
- package/dist/factory-assets/skills/skaile-manage-workspace/SKILL.md +168 -0
- package/dist/{flows-DYFTPCPM.js → flows-JZFJD5IN.js} +3 -3
- package/dist/{flows-DYFTPCPM.js.map → flows-JZFJD5IN.js.map} +1 -1
- package/dist/library/index.js +14 -5
- package/dist/library/src/install/install-from-manifest.d.ts.map +1 -1
- package/dist/library/src/library.d.ts +2 -0
- package/dist/library/src/library.d.ts.map +1 -1
- package/dist/library/src/local/library.d.ts +2 -0
- package/dist/library/src/local/library.d.ts.map +1 -1
- package/dist/library/src/local/local-catalog-source.d.ts +2 -1
- package/dist/library/src/local/local-catalog-source.d.ts.map +1 -1
- package/dist/library/src/local/sidecar-paths.d.ts +4 -4
- package/dist/library/src/local/sidecar-paths.d.ts.map +1 -1
- package/dist/library/src/local/store-paths.d.ts +4 -3
- package/dist/library/src/local/store-paths.d.ts.map +1 -1
- package/dist/library/src/pin-resolver.d.ts.map +1 -1
- package/dist/library/src/preset/apply.d.ts.map +1 -1
- package/dist/library/src/preset/placeholders.d.ts.map +1 -1
- package/dist/library/src/remote/remote-catalog-source.d.ts +7 -0
- package/dist/library/src/remote/remote-catalog-source.d.ts.map +1 -1
- package/dist/library/src/remote/rest-catalog-source.d.ts +7 -0
- package/dist/library/src/remote/rest-catalog-source.d.ts.map +1 -1
- package/dist/library/src/sync/manifest-writeback.d.ts +1 -1
- package/dist/library/src/sync/manifest-writeback.d.ts.map +1 -1
- package/dist/open-library-WYASW4BH.js +22 -0
- package/dist/{open-library-67FSSQWE.js.map → open-library-WYASW4BH.js.map} +1 -1
- package/dist/paths-BMW6JYW6.js +15 -0
- package/dist/{paths-FKKGS6BA.js.map → paths-BMW6JYW6.js.map} +1 -1
- package/dist/{plugin-store-IZ5SCRAV.js → plugin-store-O5VR45CA.js} +9 -8
- package/dist/plugin-store-O5VR45CA.js.map +1 -0
- package/dist/plugins/src/asset-kind-provider.d.ts +1 -1
- package/dist/plugins/src/catalog-source.d.ts +13 -0
- package/dist/plugins/src/catalog-source.d.ts.map +1 -1
- package/dist/resolver/index.js +1 -1
- package/dist/resolver/src/parser.d.ts.map +1 -1
- package/dist/runner/index.js +20 -19
- package/dist/runner/src/capability-registry.d.ts +1 -1
- package/dist/runner/src/capability-registry.d.ts.map +1 -1
- package/dist/runner/src/external-mcp.d.ts +112 -0
- package/dist/runner/src/external-mcp.d.ts.map +1 -0
- package/dist/runner/src/resource-handler.d.ts.map +1 -1
- package/dist/runner/src/resources.d.ts +10 -2
- package/dist/runner/src/resources.d.ts.map +1 -1
- package/dist/runner/src/serve.d.ts.map +1 -1
- package/dist/runner/src/session-builder.d.ts +12 -0
- package/dist/runner/src/session-builder.d.ts.map +1 -1
- package/dist/runner/src/workspace-migration.d.ts.map +1 -1
- package/dist/sdk/asset-manager.js +11 -10
- package/dist/sdk/bridge.js +4 -4
- package/dist/sdk/core.js +7 -6
- package/dist/sdk/flow.js +12 -1
- package/dist/sdk/index.js +23 -22
- package/dist/sdk/index.js.map +1 -1
- package/dist/sdk/resolver.js +1 -1
- package/dist/sdk/runner.js +20 -19
- package/dist/sdk/session.js +1 -1
- package/dist/sdk/src/flow/index.d.ts +1 -1
- package/dist/sdk/src/flow/index.d.ts.map +1 -1
- package/dist/sdk/src/workspace.d.ts +3 -2
- package/dist/sdk/src/workspace.d.ts.map +1 -1
- package/dist/sdk/telemetry.js +1 -1
- package/dist/secrets/index.js +1 -1
- package/dist/secrets/src/providers/env.d.ts.map +1 -1
- package/dist/secrets/src/providers/local.d.ts.map +1 -1
- package/dist/session/index.js +1 -1
- package/dist/session/src/mentions.d.ts.map +1 -1
- package/dist/{setup-J7CYEQOF.js → setup-YNLFR5GB.js} +13 -12
- package/dist/setup-YNLFR5GB.js.map +1 -0
- package/dist/skills-6HJ3WINN.js +7 -0
- package/dist/{skills-CRL3VJNN.js.map → skills-6HJ3WINN.js.map} +1 -1
- package/dist/store-client-CENBEASX.js +15 -0
- package/dist/{store-client-AEI6Y3KD.js.map → store-client-CENBEASX.js.map} +1 -1
- package/dist/telemetry/index.js +1 -1
- package/dist/telemetry/src/config.d.ts +0 -16
- package/dist/telemetry/src/config.d.ts.map +1 -1
- package/dist/tui/index.js +20 -19
- package/dist/tui/index.js.map +1 -1
- package/dist/types/manifests.js +1 -1
- package/dist/types/src/flow.d.ts +2 -2
- package/dist/types/src/install-manifest.d.ts +1 -1
- package/dist/types/src/install-manifest.d.ts.map +1 -1
- package/dist/types/src/manifests/index.d.ts +1 -1
- package/dist/types/src/manifests/skill.d.ts +21 -0
- package/dist/types/src/manifests/skill.d.ts.map +1 -1
- package/dist/workspace-plugin/adapters/mcp.js +4 -4
- package/dist/workspace-plugin/adapters/omp.js +7 -7
- package/dist/workspace-plugin/index.js +1 -1
- package/dist/workspace-plugin/src/tools/flows.d.ts.map +1 -1
- package/package.json +158 -151
- package/dist/asset-feeds-WKIKSZ6Z.js.map +0 -1
- package/dist/base-assets/connectors/deploy/adapter.d.ts.map +0 -1
- package/dist/base-assets/connectors/deploy.js +0 -21
- package/dist/base-assets/connectors/devserver/adapter.d.ts.map +0 -1
- package/dist/base-assets/connectors/devserver.js +0 -21
- package/dist/base-assets/connectors/flow/adapter.d.ts.map +0 -1
- package/dist/base-assets/connectors/flow/adapter.js +0 -21
- package/dist/base-assets/connectors/flow/engine/engine.d.ts.map +0 -1
- package/dist/base-assets/connectors/flow/engine/flow-kind-provider.d.ts.map +0 -1
- package/dist/base-assets/connectors/flow/engine/flow-manifest.d.ts.map +0 -1
- package/dist/base-assets/connectors/flow/engine/index.d.ts.map +0 -1
- package/dist/base-assets/connectors/flow/engine/loader.d.ts.map +0 -1
- package/dist/base-assets/connectors/flow/engine/types.d.ts.map +0 -1
- package/dist/base-assets/connectors/flow/engine.js +0 -4
- package/dist/base-assets/connectors/flow/index.d.ts.map +0 -1
- package/dist/base-assets/connectors/flow/prompt-fragments.d.ts.map +0 -1
- package/dist/base-assets/connectors/flow/run-flow.d.ts.map +0 -1
- package/dist/base-assets/connectors/flow/run-flow.js +0 -24
- package/dist/base-assets/connectors/flow/stimulus-driver.d.ts.map +0 -1
- package/dist/base-assets/connectors/flow/stimulus-driver.js +0 -4
- package/dist/base-assets/connectors/flow.js +0 -21
- package/dist/base-assets/connectors/git/driver.d.ts.map +0 -1
- package/dist/base-assets/connectors/git.js +0 -21
- package/dist/base-assets/connectors/gmail/adapter.d.ts.map +0 -1
- package/dist/base-assets/connectors/gmail.js +0 -21
- package/dist/base-assets/connectors/googledrive/driver.d.ts.map +0 -1
- package/dist/base-assets/connectors/googledrive.js +0 -21
- package/dist/base-assets/connectors/local/driver.d.ts.map +0 -1
- package/dist/base-assets/connectors/local.js +0 -21
- package/dist/base-assets/connectors/mattermost/adapter.d.ts.map +0 -1
- package/dist/base-assets/connectors/mattermost.js +0 -21
- package/dist/base-assets/connectors/memory/adapter.d.ts.map +0 -1
- package/dist/base-assets/connectors/memory.js +0 -21
- package/dist/base-assets/connectors/minio/adapter.d.ts.map +0 -1
- package/dist/base-assets/connectors/minio.js +0 -21
- package/dist/base-assets/connectors/postgres/adapter.d.ts.map +0 -1
- package/dist/base-assets/connectors/postgres.js +0 -21
- package/dist/base-assets/connectors/s3/driver.d.ts.map +0 -1
- package/dist/base-assets/connectors/s3.js +0 -21
- package/dist/base-assets/connectors/sharepoint/driver.d.ts.map +0 -1
- package/dist/base-assets/connectors/sharepoint.js +0 -21
- package/dist/base-assets/connectors/sqlite/adapter.d.ts.map +0 -1
- package/dist/base-assets/connectors/sqlite.js +0 -21
- package/dist/base-assets/connectors/static-server/adapter.d.ts.map +0 -1
- package/dist/base-assets/connectors/static-server.js +0 -21
- package/dist/base-assets/connectors/tunnel/adapter.d.ts.map +0 -1
- package/dist/base-assets/connectors/tunnel.js +0 -21
- package/dist/base-assets/connectors/webdav/driver.d.ts.map +0 -1
- package/dist/base-assets/connectors/webdav.js +0 -21
- package/dist/base-assets/connectors/xstate/adapter.d.ts.map +0 -1
- package/dist/base-assets/connectors/xstate-store/adapter.d.ts.map +0 -1
- package/dist/base-assets/connectors/xstate-store.js +0 -21
- package/dist/base-assets/connectors/xstate.js +0 -21
- package/dist/base-assets/index.d.ts.map +0 -1
- package/dist/base-assets/index.js.map +0 -1
- package/dist/chunk-2F3RUZXC.js.map +0 -1
- package/dist/chunk-2M3XTMOL.js +0 -23
- package/dist/chunk-2M3XTMOL.js.map +0 -1
- package/dist/chunk-2RFOFHSM.js.map +0 -1
- package/dist/chunk-2XY6732A.js.map +0 -1
- package/dist/chunk-46COM7M5.js.map +0 -1
- package/dist/chunk-542K7SR6.js.map +0 -1
- package/dist/chunk-5ESCS2OS.js.map +0 -1
- package/dist/chunk-D3VO6WNC.js.map +0 -1
- package/dist/chunk-DQWREFRQ.js.map +0 -1
- package/dist/chunk-FVTV7M76.js.map +0 -1
- package/dist/chunk-GCJXPUHG.js.map +0 -1
- package/dist/chunk-GZWJGNNN.js.map +0 -1
- package/dist/chunk-HIIARTRZ.js.map +0 -1
- package/dist/chunk-ICS76R4T.js.map +0 -1
- package/dist/chunk-JDX54X4Y.js.map +0 -1
- package/dist/chunk-JQBHCJ6N.js.map +0 -1
- package/dist/chunk-KLNL7QHN.js.map +0 -1
- package/dist/chunk-KOVLSBXK.js.map +0 -1
- package/dist/chunk-LJ52ZKIU.js.map +0 -1
- package/dist/chunk-M5TE6YI5.js.map +0 -1
- package/dist/chunk-N6TA6RSH.js.map +0 -1
- package/dist/chunk-NELZIQ2E.js.map +0 -1
- package/dist/chunk-OYRW5RCM.js.map +0 -1
- package/dist/chunk-QAVZOJCV.js.map +0 -1
- package/dist/chunk-YX3UWPJ5.js.map +0 -1
- package/dist/chunk-Z3M5K67G.js.map +0 -1
- package/dist/ensure-sources-OJUBGX6Z.js.map +0 -1
- package/dist/open-library-67FSSQWE.js +0 -13
- package/dist/paths-FKKGS6BA.js +0 -4
- package/dist/plugin-store-IZ5SCRAV.js.map +0 -1
- package/dist/setup-J7CYEQOF.js.map +0 -1
- package/dist/skills-CRL3VJNN.js +0 -7
- package/dist/store-client-AEI6Y3KD.js +0 -14
- /package/dist/{base-assets → factory-assets}/connectors/deploy.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/deploy.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/devserver.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/devserver.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow/adapter.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow/engine/engine.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow/engine/flow-manifest.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow/engine/index.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow/engine/loader.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow/engine/types.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow/engine.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow/engine.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow/index.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow/prompt-fragments.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow/run-flow.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow/stimulus-driver.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/flow.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/git.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/git.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/gmail.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/gmail.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/googledrive.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/googledrive.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/local.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/local.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/mattermost.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/mattermost.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/memory.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/memory.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/minio.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/minio.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/postgres.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/postgres.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/s3.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/s3.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/sharepoint.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/sharepoint.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/sqlite.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/sqlite.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/static-server.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/static-server.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/tunnel.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/tunnel.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/webdav.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/webdav.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/xstate-store.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/xstate-store.js.map +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/xstate.d.ts +0 -0
- /package/dist/{base-assets → factory-assets}/connectors/xstate.js.map +0 -0
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { readManifestSourceConfig, discoverAssetsInTree } from './chunk-JIQLLZ65.js';
|
|
2
|
+
import { parseAssetRef } from './chunk-IEJ5IOC3.js';
|
|
3
|
+
import { PresetManifestSchema } from './chunk-QDJKE557.js';
|
|
3
4
|
import { __export } from './chunk-NSBPE2FW.js';
|
|
4
5
|
import * as crypto from 'crypto';
|
|
5
6
|
import { createHash } from 'crypto';
|
|
6
|
-
import * as
|
|
7
|
+
import * as fs11 from 'fs';
|
|
7
8
|
import * as path4 from 'path';
|
|
8
9
|
import { resolve, join, sep, dirname, isAbsolute } from 'path';
|
|
9
10
|
import { eq, like, and } from 'drizzle-orm';
|
|
@@ -138,9 +139,9 @@ function projectConfigPath(projectDir) {
|
|
|
138
139
|
return path4.join(projectDir, ".skaile", CONFIG_FILENAME);
|
|
139
140
|
}
|
|
140
141
|
function loadConfigFile(filePath) {
|
|
141
|
-
if (!
|
|
142
|
+
if (!fs11.existsSync(filePath)) return null;
|
|
142
143
|
try {
|
|
143
|
-
const content =
|
|
144
|
+
const content = fs11.readFileSync(filePath, "utf-8");
|
|
144
145
|
const raw = parse(content);
|
|
145
146
|
if (!raw || typeof raw !== "object") return null;
|
|
146
147
|
return SkaileConfigSchema.partial().parse(raw);
|
|
@@ -189,10 +190,10 @@ function resolveConfig(opts) {
|
|
|
189
190
|
}
|
|
190
191
|
function saveConfig(filePath, config) {
|
|
191
192
|
const dir = path4.dirname(filePath);
|
|
192
|
-
if (!
|
|
193
|
-
|
|
193
|
+
if (!fs11.existsSync(dir)) {
|
|
194
|
+
fs11.mkdirSync(dir, { recursive: true });
|
|
194
195
|
}
|
|
195
|
-
|
|
196
|
+
fs11.writeFileSync(filePath, stringify(config, { indent: 2 }), "utf-8");
|
|
196
197
|
}
|
|
197
198
|
|
|
198
199
|
// library/src/local/schema.ts
|
|
@@ -275,9 +276,9 @@ function resolveSidecarPaths(slug) {
|
|
|
275
276
|
return {
|
|
276
277
|
rootDir,
|
|
277
278
|
sidecarDir,
|
|
278
|
-
manifestFile: path4.join(sidecarDir, "
|
|
279
|
+
manifestFile: path4.join(sidecarDir, "skaile.manifest.yaml"),
|
|
279
280
|
readmeFile: path4.join(sidecarDir, "README.md"),
|
|
280
|
-
lockFile: path4.join(sidecarDir, "
|
|
281
|
+
lockFile: path4.join(sidecarDir, "skaile.manifest.lock.json")
|
|
281
282
|
};
|
|
282
283
|
}
|
|
283
284
|
function deriveSlug(sourceConfig, sourcePath, existingSlugs) {
|
|
@@ -293,9 +294,9 @@ function deriveSlug(sourceConfig, sourcePath, existingSlugs) {
|
|
|
293
294
|
}
|
|
294
295
|
function listSidecarSlugsOnDisk() {
|
|
295
296
|
const root = getSidecarRoot();
|
|
296
|
-
if (!
|
|
297
|
+
if (!fs11.existsSync(root)) return [];
|
|
297
298
|
const out = [];
|
|
298
|
-
for (const entry of
|
|
299
|
+
for (const entry of fs11.readdirSync(root, { withFileTypes: true })) {
|
|
299
300
|
if (!entry.isDirectory()) continue;
|
|
300
301
|
if (entry.name.startsWith(".")) continue;
|
|
301
302
|
out.push(entry.name);
|
|
@@ -320,25 +321,28 @@ function migratedMarkerPath() {
|
|
|
320
321
|
function migrateSidecarsToStoreIfNeeded() {
|
|
321
322
|
const storeRoot = getStoreRoot();
|
|
322
323
|
const marker = migratedMarkerPath();
|
|
323
|
-
if (
|
|
324
|
+
if (fs11.existsSync(marker)) return { migrated: 0, storeRoot };
|
|
324
325
|
const sidecarRoot = getSidecarRoot();
|
|
325
326
|
const manifestsDir = getStoreManifestsDir();
|
|
326
327
|
const candidates = [];
|
|
327
|
-
if (
|
|
328
|
-
for (const entry of
|
|
328
|
+
if (fs11.existsSync(sidecarRoot)) {
|
|
329
|
+
for (const entry of fs11.readdirSync(sidecarRoot, { withFileTypes: true })) {
|
|
329
330
|
if (!entry.isDirectory()) continue;
|
|
330
331
|
if (entry.name.startsWith(".")) continue;
|
|
331
|
-
const
|
|
332
|
-
|
|
332
|
+
const sidecarDir = path4.join(sidecarRoot, entry.name);
|
|
333
|
+
const current = path4.join(sidecarDir, "skaile.manifest.yaml");
|
|
334
|
+
const legacy = path4.join(sidecarDir, ".skaile-source.yaml");
|
|
335
|
+
const src = fs11.existsSync(current) ? current : fs11.existsSync(legacy) ? legacy : void 0;
|
|
336
|
+
if (src) candidates.push({ src, slug: entry.name });
|
|
333
337
|
}
|
|
334
338
|
}
|
|
335
|
-
|
|
339
|
+
fs11.mkdirSync(manifestsDir, { recursive: true });
|
|
336
340
|
let migrated = 0;
|
|
337
341
|
for (const { src, slug } of candidates) {
|
|
338
342
|
const dest = path4.join(manifestsDir, `${slug}.yaml`);
|
|
339
|
-
if (
|
|
343
|
+
if (fs11.existsSync(dest)) continue;
|
|
340
344
|
try {
|
|
341
|
-
|
|
345
|
+
fs11.renameSync(src, dest);
|
|
342
346
|
migrated++;
|
|
343
347
|
} catch (err) {
|
|
344
348
|
process.stderr.write(
|
|
@@ -347,10 +351,10 @@ function migrateSidecarsToStoreIfNeeded() {
|
|
|
347
351
|
);
|
|
348
352
|
}
|
|
349
353
|
}
|
|
350
|
-
if (!
|
|
354
|
+
if (!fs11.existsSync(path4.join(storeRoot, ".git"))) {
|
|
351
355
|
try {
|
|
352
356
|
spawnSync("git", ["init", "--quiet"], { cwd: storeRoot, stdio: "ignore" });
|
|
353
|
-
|
|
357
|
+
fs11.writeFileSync(
|
|
354
358
|
path4.join(storeRoot, ".gitignore"),
|
|
355
359
|
"# Remote-store cache \u2014 local to this machine.\nremote-cache/\n",
|
|
356
360
|
"utf8"
|
|
@@ -358,7 +362,7 @@ function migrateSidecarsToStoreIfNeeded() {
|
|
|
358
362
|
} catch {
|
|
359
363
|
}
|
|
360
364
|
}
|
|
361
|
-
|
|
365
|
+
fs11.writeFileSync(marker, (/* @__PURE__ */ new Date()).toISOString(), "utf8");
|
|
362
366
|
return { migrated, storeRoot };
|
|
363
367
|
}
|
|
364
368
|
|
|
@@ -505,7 +509,7 @@ async function runLibrariesMigration(client) {
|
|
|
505
509
|
await client.batch(stmts);
|
|
506
510
|
}
|
|
507
511
|
function assertNoLegacyLibDb(newDbPath) {
|
|
508
|
-
if (
|
|
512
|
+
if (fs11.existsSync(newDbPath)) return;
|
|
509
513
|
const parent = path4.dirname(newDbPath);
|
|
510
514
|
const skaileHome = path4.join(os.homedir(), ".skaile");
|
|
511
515
|
const defaultIndexPath2 = path4.join(skaileHome, "index.db");
|
|
@@ -521,7 +525,7 @@ function assertNoLegacyLibDb(newDbPath) {
|
|
|
521
525
|
candidates.push(path4.join(path4.dirname(parent), "library", "lib.db"));
|
|
522
526
|
}
|
|
523
527
|
for (const legacy of candidates) {
|
|
524
|
-
if (!
|
|
528
|
+
if (!fs11.existsSync(legacy)) continue;
|
|
525
529
|
throw new Error(
|
|
526
530
|
`Found legacy index database at ${legacy}. The lib.db \u2192 index.db relocation ran for one release and has been removed. Move the file manually to ${newDbPath} (and any -wal / -shm siblings), then retry.`
|
|
527
531
|
);
|
|
@@ -587,9 +591,17 @@ function assertSafeRefComponent(kind, value) {
|
|
|
587
591
|
async function installFromManifest(opts) {
|
|
588
592
|
const { manifest, libraryRoot } = opts;
|
|
589
593
|
const fetcher = opts.fetcher ?? (await import('./source-fetch-github-QN4LLTL5.js')).fetchAssetFilesFromGitHub;
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
594
|
+
let parsed;
|
|
595
|
+
try {
|
|
596
|
+
parsed = parseAssetRef(manifest.ref);
|
|
597
|
+
} catch (e) {
|
|
598
|
+
throw new Error(`invalid ref: ${manifest.ref}: ${e instanceof Error ? e.message : String(e)}`);
|
|
599
|
+
}
|
|
600
|
+
const publisher = parsed.publisher;
|
|
601
|
+
const name = parsed.name;
|
|
602
|
+
const version = parsed.pin;
|
|
603
|
+
if (!publisher) throw new Error(`invalid ref: ${manifest.ref} (missing publisher)`);
|
|
604
|
+
if (!version) throw new Error(`invalid ref: ${manifest.ref} (missing version pin)`);
|
|
593
605
|
assertSafeRefComponent("publisher", publisher);
|
|
594
606
|
assertSafeRefComponent("name", name);
|
|
595
607
|
assertSafeRefComponent("version", version);
|
|
@@ -643,6 +655,10 @@ async function installFromManifest(opts) {
|
|
|
643
655
|
function escapeLikePrefix(prefix) {
|
|
644
656
|
return prefix.replace(/[%_]/g, "\\$&");
|
|
645
657
|
}
|
|
658
|
+
function stripRefVersion(ref) {
|
|
659
|
+
const at = ref.lastIndexOf("@");
|
|
660
|
+
return at > 0 ? ref.slice(0, at) : ref;
|
|
661
|
+
}
|
|
646
662
|
function rowToLibrary(row) {
|
|
647
663
|
const cfg = (() => {
|
|
648
664
|
try {
|
|
@@ -739,12 +755,12 @@ var LocalIndex = class {
|
|
|
739
755
|
dbPath = resolveIndexPath();
|
|
740
756
|
this._kindRegistry = optionsOrDir?.kindRegistry;
|
|
741
757
|
}
|
|
742
|
-
if (!
|
|
743
|
-
|
|
758
|
+
if (!fs11.existsSync(dir)) {
|
|
759
|
+
fs11.mkdirSync(dir, { recursive: true });
|
|
744
760
|
}
|
|
745
761
|
const dbParent = path4.dirname(dbPath);
|
|
746
|
-
if (!
|
|
747
|
-
|
|
762
|
+
if (!fs11.existsSync(dbParent)) {
|
|
763
|
+
fs11.mkdirSync(dbParent, { recursive: true });
|
|
748
764
|
}
|
|
749
765
|
this.libraryDir = dir;
|
|
750
766
|
this.dbPath = dbPath;
|
|
@@ -993,10 +1009,21 @@ var LocalIndex = class {
|
|
|
993
1009
|
if (filter.defPin) conditions.push(eq(instances.defPin, filter.defPin));
|
|
994
1010
|
const where = conditions.length > 0 ? and(...conditions) : void 0;
|
|
995
1011
|
let rows = where ? await db.select().from(instances).where(where).all() : await db.select().from(instances).all();
|
|
1012
|
+
if (filter.kind) {
|
|
1013
|
+
const kindByBase = await this.buildInstanceKindMap(db);
|
|
1014
|
+
rows = rows.filter((r) => kindByBase.get(stripRefVersion(r.defRef)) === filter.kind);
|
|
1015
|
+
}
|
|
996
1016
|
if (filter.offset) rows = rows.slice(filter.offset);
|
|
997
1017
|
if (filter.limit) rows = rows.slice(0, filter.limit);
|
|
998
1018
|
return rows.map(rowToInstance);
|
|
999
1019
|
}
|
|
1020
|
+
/** Map every cached asset def's version-stripped ref base to its kind. */
|
|
1021
|
+
async buildInstanceKindMap(db) {
|
|
1022
|
+
const defs = await db.select().from(assetDefinitions).all();
|
|
1023
|
+
const map = /* @__PURE__ */ new Map();
|
|
1024
|
+
for (const d of defs) map.set(stripRefVersion(d.id), d.kind);
|
|
1025
|
+
return map;
|
|
1026
|
+
}
|
|
1000
1027
|
async updateInstance(id, patch) {
|
|
1001
1028
|
const db = await this.ensureDb();
|
|
1002
1029
|
const existing = await db.select().from(instances).where(eq(instances.id, id)).get();
|
|
@@ -1360,8 +1387,8 @@ var LibraryManager = class {
|
|
|
1360
1387
|
const lib = await this.requireLibrary(nameOrId);
|
|
1361
1388
|
const db = await this.lib.dbHandle();
|
|
1362
1389
|
await db.delete(libraries).where(eq(libraries.id, lib.id)).run();
|
|
1363
|
-
if (opts.purge &&
|
|
1364
|
-
|
|
1390
|
+
if (opts.purge && fs11.existsSync(lib.path)) {
|
|
1391
|
+
fs11.rmSync(lib.path, { recursive: true, force: true });
|
|
1365
1392
|
}
|
|
1366
1393
|
}
|
|
1367
1394
|
/**
|
|
@@ -1378,7 +1405,7 @@ var LibraryManager = class {
|
|
|
1378
1405
|
);
|
|
1379
1406
|
if (writableDefault) return { library: writableDefault, created: false };
|
|
1380
1407
|
const personalPath = path4.join(librariesDir, "personal");
|
|
1381
|
-
|
|
1408
|
+
fs11.mkdirSync(personalPath, { recursive: true });
|
|
1382
1409
|
const lib = await this.addLibrary({
|
|
1383
1410
|
name: "personal",
|
|
1384
1411
|
path: personalPath,
|
|
@@ -1440,11 +1467,11 @@ var SidecarGit = class {
|
|
|
1440
1467
|
* @docLink packages/library/concepts#sidecar-git
|
|
1441
1468
|
*/
|
|
1442
1469
|
async ensureInitialized() {
|
|
1443
|
-
if (!
|
|
1444
|
-
|
|
1470
|
+
if (!fs11.existsSync(this.rootDir)) {
|
|
1471
|
+
fs11.mkdirSync(this.rootDir, { recursive: true });
|
|
1445
1472
|
}
|
|
1446
1473
|
const gitDir = path4.join(this.rootDir, ".git");
|
|
1447
|
-
const freshRepo = !
|
|
1474
|
+
const freshRepo = !fs11.existsSync(gitDir);
|
|
1448
1475
|
if (freshRepo) {
|
|
1449
1476
|
const init = this.spawn(["init", "-b", "main"]);
|
|
1450
1477
|
if (init.exitCode !== 0) {
|
|
@@ -1452,9 +1479,9 @@ var SidecarGit = class {
|
|
|
1452
1479
|
}
|
|
1453
1480
|
}
|
|
1454
1481
|
const attrsPath = path4.join(this.rootDir, ".gitattributes");
|
|
1455
|
-
if (!
|
|
1482
|
+
if (!fs11.existsSync(attrsPath)) fs11.writeFileSync(attrsPath, GITATTRIBUTES, "utf-8");
|
|
1456
1483
|
const readmePath = path4.join(this.rootDir, "README.md");
|
|
1457
|
-
if (!
|
|
1484
|
+
if (!fs11.existsSync(readmePath)) fs11.writeFileSync(readmePath, ROOT_README, "utf-8");
|
|
1458
1485
|
if (!this.hasGlobalGitConfig("user.name")) {
|
|
1459
1486
|
this.spawn(["config", "user.name", FALLBACK_USER_NAME]);
|
|
1460
1487
|
}
|
|
@@ -1480,7 +1507,7 @@ var SidecarGit = class {
|
|
|
1480
1507
|
async commit(slug, message, opts) {
|
|
1481
1508
|
if (opts?.skip) return;
|
|
1482
1509
|
const slugDir = path4.join(this.rootDir, slug);
|
|
1483
|
-
if (
|
|
1510
|
+
if (fs11.existsSync(slugDir)) {
|
|
1484
1511
|
this.spawn(["add", "--", slug]);
|
|
1485
1512
|
} else {
|
|
1486
1513
|
this.spawn(["add", "-A"]);
|
|
@@ -1591,8 +1618,8 @@ function parseWorkspaceV2(raw) {
|
|
|
1591
1618
|
}
|
|
1592
1619
|
function loadWorkspaceV2(dir, filename = "skaile.yaml") {
|
|
1593
1620
|
const filePath = path4.join(dir, filename);
|
|
1594
|
-
if (!
|
|
1595
|
-
const content =
|
|
1621
|
+
if (!fs11.existsSync(filePath)) return null;
|
|
1622
|
+
const content = fs11.readFileSync(filePath, "utf-8");
|
|
1596
1623
|
const raw = parse(content);
|
|
1597
1624
|
if (!raw || typeof raw !== "object") return null;
|
|
1598
1625
|
return parseWorkspaceV2(raw);
|
|
@@ -1600,32 +1627,32 @@ function loadWorkspaceV2(dir, filename = "skaile.yaml") {
|
|
|
1600
1627
|
function saveWorkspaceV2(dir, v2, filename = "skaile.yaml") {
|
|
1601
1628
|
const filePath = path4.join(dir, filename);
|
|
1602
1629
|
let existing = {};
|
|
1603
|
-
if (
|
|
1604
|
-
const content =
|
|
1630
|
+
if (fs11.existsSync(filePath)) {
|
|
1631
|
+
const content = fs11.readFileSync(filePath, "utf-8");
|
|
1605
1632
|
existing = parse(content) ?? {};
|
|
1606
1633
|
}
|
|
1607
1634
|
existing.version = 2;
|
|
1608
1635
|
if (v2.library !== void 0) existing.library = v2.library;
|
|
1609
1636
|
if (v2.presets_applied !== void 0) existing.presets_applied = v2.presets_applied;
|
|
1610
|
-
if (!
|
|
1611
|
-
|
|
1637
|
+
if (!fs11.existsSync(dir)) {
|
|
1638
|
+
fs11.mkdirSync(dir, { recursive: true });
|
|
1612
1639
|
}
|
|
1613
|
-
|
|
1640
|
+
fs11.writeFileSync(filePath, stringify(existing, { indent: 2 }), "utf-8");
|
|
1614
1641
|
}
|
|
1615
1642
|
var LOCK_FILENAME = "skaile.lock.yaml";
|
|
1616
1643
|
function loadLockFile(dir) {
|
|
1617
1644
|
const filePath = path4.join(dir, LOCK_FILENAME);
|
|
1618
|
-
if (!
|
|
1619
|
-
const content =
|
|
1645
|
+
if (!fs11.existsSync(filePath)) return null;
|
|
1646
|
+
const content = fs11.readFileSync(filePath, "utf-8");
|
|
1620
1647
|
const raw = parse(content);
|
|
1621
1648
|
return LockFileSchema.parse(raw);
|
|
1622
1649
|
}
|
|
1623
1650
|
function saveLockFile(dir, lock) {
|
|
1624
1651
|
const filePath = path4.join(dir, LOCK_FILENAME);
|
|
1625
|
-
if (!
|
|
1626
|
-
|
|
1652
|
+
if (!fs11.existsSync(dir)) {
|
|
1653
|
+
fs11.mkdirSync(dir, { recursive: true });
|
|
1627
1654
|
}
|
|
1628
|
-
|
|
1655
|
+
fs11.writeFileSync(
|
|
1629
1656
|
filePath,
|
|
1630
1657
|
`# Auto-generated by skaile. Do not edit manually.
|
|
1631
1658
|
${stringify(lock, { indent: 2 })}`,
|
|
@@ -1643,31 +1670,29 @@ function createEmptyLockFile() {
|
|
|
1643
1670
|
}
|
|
1644
1671
|
function detectWorkspaceVersion(dir, filename = "skaile.yaml") {
|
|
1645
1672
|
const filePath = path4.join(dir, filename);
|
|
1646
|
-
if (!
|
|
1647
|
-
const content =
|
|
1673
|
+
if (!fs11.existsSync(filePath)) return null;
|
|
1674
|
+
const content = fs11.readFileSync(filePath, "utf-8");
|
|
1648
1675
|
const raw = parse(content);
|
|
1649
1676
|
if (!raw || typeof raw !== "object") return null;
|
|
1650
1677
|
return raw.version === 2 ? 2 : 1;
|
|
1651
1678
|
}
|
|
1652
|
-
var MANIFEST_FILENAME = "
|
|
1679
|
+
var MANIFEST_FILENAME = "skaile.manifest.yaml";
|
|
1653
1680
|
async function writeManifestIfMissing(input) {
|
|
1654
1681
|
const manifestPath = path4.join(input.libraryPath, MANIFEST_FILENAME);
|
|
1655
|
-
if (
|
|
1682
|
+
if (fs11.existsSync(manifestPath)) return { wrote: false, manifestPath };
|
|
1656
1683
|
const now = (/* @__PURE__ */ new Date()).toISOString();
|
|
1657
|
-
const yaml = `# Generated by skaile library add on ${now}
|
|
1684
|
+
const yaml = `# Generated by skaile library add on ${now} (structure: ${input.structure})
|
|
1658
1685
|
# Edit by hand to inline discovered assets; or run \`skaile library refresh-manifest\`.
|
|
1659
|
-
version: 2
|
|
1660
|
-
structure: ${input.structure}
|
|
1661
1686
|
publisher: ""
|
|
1662
1687
|
assets: []
|
|
1663
1688
|
`;
|
|
1664
|
-
|
|
1689
|
+
fs11.writeFileSync(manifestPath, yaml, "utf-8");
|
|
1665
1690
|
if (input.ownership !== "owner") {
|
|
1666
1691
|
const excludePath = path4.join(input.libraryPath, ".git", "info", "exclude");
|
|
1667
|
-
if (
|
|
1668
|
-
const current =
|
|
1692
|
+
if (fs11.existsSync(path4.dirname(excludePath))) {
|
|
1693
|
+
const current = fs11.existsSync(excludePath) ? fs11.readFileSync(excludePath, "utf-8") : "";
|
|
1669
1694
|
if (!current.includes(MANIFEST_FILENAME)) {
|
|
1670
|
-
|
|
1695
|
+
fs11.writeFileSync(
|
|
1671
1696
|
excludePath,
|
|
1672
1697
|
(current.endsWith("\n") || current === "" ? current : `${current}
|
|
1673
1698
|
`) + `# skaile-managed local-overlay manifest
|
|
@@ -1683,10 +1708,10 @@ ${MANIFEST_FILENAME}
|
|
|
1683
1708
|
function migrateWorkspaceConfig(dir, opts) {
|
|
1684
1709
|
const filename = opts?.filename ?? "skaile.yaml";
|
|
1685
1710
|
const filePath = path4.join(dir, filename);
|
|
1686
|
-
if (!
|
|
1711
|
+
if (!fs11.existsSync(filePath)) {
|
|
1687
1712
|
return { migrated: false, version: 1, warnings: ["No skaile.yaml found"] };
|
|
1688
1713
|
}
|
|
1689
|
-
const content =
|
|
1714
|
+
const content = fs11.readFileSync(filePath, "utf-8");
|
|
1690
1715
|
const raw = parse(content);
|
|
1691
1716
|
if (!raw || typeof raw !== "object") {
|
|
1692
1717
|
return { migrated: false, version: 1, warnings: ["Invalid YAML content"] };
|
|
@@ -1718,7 +1743,7 @@ function migrateWorkspaceConfig(dir, opts) {
|
|
|
1718
1743
|
} else {
|
|
1719
1744
|
doc.set("version", 2);
|
|
1720
1745
|
}
|
|
1721
|
-
|
|
1746
|
+
fs11.writeFileSync(filePath, doc.toString(), "utf-8");
|
|
1722
1747
|
}
|
|
1723
1748
|
return {
|
|
1724
1749
|
migrated: !opts?.dryRun,
|
|
@@ -1760,10 +1785,10 @@ function resolvePin(pin, availableVersions) {
|
|
|
1760
1785
|
const base = pin.slice(0, -2);
|
|
1761
1786
|
const parts = base.split(".");
|
|
1762
1787
|
const major = Number.parseInt(parts[0], 10);
|
|
1763
|
-
const minor = parts.length > 1 ? Number.parseInt(parts[1], 10) : 0;
|
|
1788
|
+
const minor = parts.length > 1 ? Number.parseInt(parts[1], 10) : void 0;
|
|
1764
1789
|
if (Number.isNaN(major)) return null;
|
|
1765
1790
|
const match = parsed.find(
|
|
1766
|
-
(v) => v.major === major && (
|
|
1791
|
+
(v) => v.major === major && (minor === void 0 || v.minor === minor)
|
|
1767
1792
|
);
|
|
1768
1793
|
return match ? { version: match.raw, match: "range" } : null;
|
|
1769
1794
|
}
|
|
@@ -1801,6 +1826,8 @@ function parseRangeTarget(range) {
|
|
|
1801
1826
|
patch: Number.isNaN(patch) ? 0 : patch
|
|
1802
1827
|
};
|
|
1803
1828
|
}
|
|
1829
|
+
|
|
1830
|
+
// library/src/local/local-catalog-source.ts
|
|
1804
1831
|
var LocalCatalogSource = class {
|
|
1805
1832
|
constructor(library, sourceId, rootPath, registry, options) {
|
|
1806
1833
|
this.library = library;
|
|
@@ -1829,6 +1856,17 @@ var LocalCatalogSource = class {
|
|
|
1829
1856
|
const defs = await this.library.listAssetDefs(libraryFilter);
|
|
1830
1857
|
return defs.map(defToCatalogAsset);
|
|
1831
1858
|
}
|
|
1859
|
+
async listVersions(ref) {
|
|
1860
|
+
const parsed = parseAssetRef(ref);
|
|
1861
|
+
const defs = await this.library.listAssetDefs({
|
|
1862
|
+
libraryId: this.sourceId,
|
|
1863
|
+
kind: parsed.kind
|
|
1864
|
+
});
|
|
1865
|
+
const wantPublisher = parsed.publisher?.replace(/^@/, "");
|
|
1866
|
+
return defs.filter(
|
|
1867
|
+
(d) => d.name === parsed.name && (wantPublisher === void 0 || d.publisher.replace(/^@/, "") === wantPublisher)
|
|
1868
|
+
).map((d) => d.version);
|
|
1869
|
+
}
|
|
1832
1870
|
async fetchTarball(_ref, _sha256) {
|
|
1833
1871
|
throw new Error(
|
|
1834
1872
|
"LocalCatalogSource does not support tarball delivery. Assets are available on disk."
|
|
@@ -1855,7 +1893,7 @@ var LocalCatalogSource = class {
|
|
|
1855
1893
|
includeDev: syncOpts?.includeDev ?? false
|
|
1856
1894
|
};
|
|
1857
1895
|
if (!this.sidecarPath) {
|
|
1858
|
-
opts.sourceConfig =
|
|
1896
|
+
opts.sourceConfig = readManifestSourceConfig(this.rootPath);
|
|
1859
1897
|
}
|
|
1860
1898
|
const result = discoverAssetsInTree(this.rootPath, opts);
|
|
1861
1899
|
let assetsUpdated = 0;
|
|
@@ -1903,18 +1941,6 @@ function defToCatalogAsset(def) {
|
|
|
1903
1941
|
manifest: def.manifest
|
|
1904
1942
|
};
|
|
1905
1943
|
}
|
|
1906
|
-
function loadSourceConfigIfPresent(rootPath) {
|
|
1907
|
-
const configPath = path4.join(rootPath, ".skaile-source.yaml");
|
|
1908
|
-
if (!fs12.existsSync(configPath)) return void 0;
|
|
1909
|
-
try {
|
|
1910
|
-
const content = fs12.readFileSync(configPath, "utf-8");
|
|
1911
|
-
const result = loadSourceConfig(content);
|
|
1912
|
-
if (!result.ok) return void 0;
|
|
1913
|
-
return result.config;
|
|
1914
|
-
} catch {
|
|
1915
|
-
return void 0;
|
|
1916
|
-
}
|
|
1917
|
-
}
|
|
1918
1944
|
function defaultCacheDir() {
|
|
1919
1945
|
return path4.join(os.homedir(), ".skaile", "catalog-cache");
|
|
1920
1946
|
}
|
|
@@ -1993,17 +2019,17 @@ var CatalogCache = class {
|
|
|
1993
2019
|
/** Read a cached tarball from disk if present, otherwise `null`. */
|
|
1994
2020
|
readTarball(sha256) {
|
|
1995
2021
|
const p = this.tarballPath(sha256);
|
|
1996
|
-
if (!
|
|
1997
|
-
return
|
|
2022
|
+
if (!fs11.existsSync(p)) return null;
|
|
2023
|
+
return fs11.readFileSync(p);
|
|
1998
2024
|
}
|
|
1999
2025
|
/** Persist a tarball blob to disk (atomic write). */
|
|
2000
2026
|
writeTarball(sha256, bytes) {
|
|
2001
2027
|
const dir = path4.join(this.dir, TARBALL_DIR);
|
|
2002
|
-
if (!
|
|
2028
|
+
if (!fs11.existsSync(dir)) fs11.mkdirSync(dir, { recursive: true });
|
|
2003
2029
|
const finalPath = this.tarballPath(sha256);
|
|
2004
2030
|
const tmpPath = `${finalPath}.${process.pid}.${Math.random().toString(36).slice(2)}.tmp`;
|
|
2005
|
-
|
|
2006
|
-
|
|
2031
|
+
fs11.writeFileSync(tmpPath, bytes);
|
|
2032
|
+
fs11.renameSync(tmpPath, finalPath);
|
|
2007
2033
|
}
|
|
2008
2034
|
// ── public: invalidation ────────────────────────────────────────────────
|
|
2009
2035
|
/**
|
|
@@ -2023,8 +2049,8 @@ var CatalogCache = class {
|
|
|
2023
2049
|
invalidateEverything() {
|
|
2024
2050
|
this.invalidateAll();
|
|
2025
2051
|
const tarballDir = path4.join(this.dir, TARBALL_DIR);
|
|
2026
|
-
if (
|
|
2027
|
-
|
|
2052
|
+
if (fs11.existsSync(tarballDir)) {
|
|
2053
|
+
fs11.rmSync(tarballDir, { recursive: true, force: true });
|
|
2028
2054
|
}
|
|
2029
2055
|
}
|
|
2030
2056
|
/** Return whether `ttlMs` is zero (air-gapped mode). */
|
|
@@ -2033,9 +2059,9 @@ var CatalogCache = class {
|
|
|
2033
2059
|
}
|
|
2034
2060
|
// ── private ─────────────────────────────────────────────────────────────
|
|
2035
2061
|
ensureDir() {
|
|
2036
|
-
if (!
|
|
2062
|
+
if (!fs11.existsSync(this.dir)) fs11.mkdirSync(this.dir, { recursive: true });
|
|
2037
2063
|
const tarballDir = path4.join(this.dir, TARBALL_DIR);
|
|
2038
|
-
if (!
|
|
2064
|
+
if (!fs11.existsSync(tarballDir)) fs11.mkdirSync(tarballDir, { recursive: true });
|
|
2039
2065
|
}
|
|
2040
2066
|
indexPath() {
|
|
2041
2067
|
return path4.join(this.dir, INDEX_FILE);
|
|
@@ -2043,12 +2069,12 @@ var CatalogCache = class {
|
|
|
2043
2069
|
loadIndex() {
|
|
2044
2070
|
if (this.index) return this.index;
|
|
2045
2071
|
const p = this.indexPath();
|
|
2046
|
-
if (!
|
|
2072
|
+
if (!fs11.existsSync(p)) {
|
|
2047
2073
|
this.index = { version: 1, resolve: {}, list: {} };
|
|
2048
2074
|
return this.index;
|
|
2049
2075
|
}
|
|
2050
2076
|
try {
|
|
2051
|
-
const raw = JSON.parse(
|
|
2077
|
+
const raw = JSON.parse(fs11.readFileSync(p, "utf-8"));
|
|
2052
2078
|
if (raw && typeof raw === "object" && raw.version === 1) {
|
|
2053
2079
|
this.index = {
|
|
2054
2080
|
version: 1,
|
|
@@ -2066,8 +2092,8 @@ var CatalogCache = class {
|
|
|
2066
2092
|
this.index = idx;
|
|
2067
2093
|
const p = this.indexPath();
|
|
2068
2094
|
const tmp = `${p}.${process.pid}.${Math.random().toString(36).slice(2)}.tmp`;
|
|
2069
|
-
|
|
2070
|
-
|
|
2095
|
+
fs11.writeFileSync(tmp, JSON.stringify(idx, null, 2), "utf-8");
|
|
2096
|
+
fs11.renameSync(tmp, p);
|
|
2071
2097
|
}
|
|
2072
2098
|
};
|
|
2073
2099
|
function filterKey(filter) {
|
|
@@ -2223,6 +2249,20 @@ var RemoteCatalogSource = class {
|
|
|
2223
2249
|
this.cache.writeTarball(sha256, buf);
|
|
2224
2250
|
return buf;
|
|
2225
2251
|
}
|
|
2252
|
+
/**
|
|
2253
|
+
* Enumerate available versions for a version-less ref. The Catalog has no
|
|
2254
|
+
* dedicated version-list route, so this derives versions from `listAssets`
|
|
2255
|
+
* (filtered to the publisher) and keeps only the matching kind+name. Reuses
|
|
2256
|
+
* the cached list path, so repeated calls are cheap.
|
|
2257
|
+
*/
|
|
2258
|
+
async listVersions(ref) {
|
|
2259
|
+
const parsed = parseAssetRef(ref);
|
|
2260
|
+
const wantPublisher = parsed.publisher?.replace(/^@/, "");
|
|
2261
|
+
const assets = await this.listAssets(wantPublisher ? { publisher: wantPublisher } : void 0);
|
|
2262
|
+
return assets.filter(
|
|
2263
|
+
(a) => a.kind === parsed.kind && a.name === parsed.name && (wantPublisher === void 0 || a.publisher.replace(/^@/, "") === wantPublisher)
|
|
2264
|
+
).map((a) => a.version);
|
|
2265
|
+
}
|
|
2226
2266
|
/**
|
|
2227
2267
|
* Single synthetic Source pointing at the configured Catalog URL. Phase 2
|
|
2228
2268
|
* is single-Source per spec; multi-source federation is Phase 4.8.
|
|
@@ -2646,6 +2686,20 @@ var RestCatalogSource = class {
|
|
|
2646
2686
|
this.cache.writeTarball(sha256, buf);
|
|
2647
2687
|
return buf;
|
|
2648
2688
|
}
|
|
2689
|
+
/**
|
|
2690
|
+
* Enumerate available versions for a version-less ref. The forge-store REST
|
|
2691
|
+
* API has no version-list route, so this derives versions from `listAssets`
|
|
2692
|
+
* (filtered to the publisher) and keeps only the matching kind+name. Reuses
|
|
2693
|
+
* the cached list path, so repeated calls are cheap.
|
|
2694
|
+
*/
|
|
2695
|
+
async listVersions(ref) {
|
|
2696
|
+
const parsed = parseAssetRef(ref);
|
|
2697
|
+
const wantPublisher = parsed.publisher?.replace(/^@/, "");
|
|
2698
|
+
const assets = await this.listAssets(wantPublisher ? { publisher: wantPublisher } : void 0);
|
|
2699
|
+
return assets.filter(
|
|
2700
|
+
(a) => a.kind === parsed.kind && a.name === parsed.name && (wantPublisher === void 0 || a.publisher.replace(/^@/, "") === wantPublisher)
|
|
2701
|
+
).map((a) => a.version);
|
|
2702
|
+
}
|
|
2649
2703
|
/**
|
|
2650
2704
|
* Single synthetic Source pointing at the configured forge-store URL.
|
|
2651
2705
|
*/
|
|
@@ -2848,9 +2902,9 @@ function validateKnowledge(data) {
|
|
|
2848
2902
|
}
|
|
2849
2903
|
function collectDirRecursive(baseDir, relativeDir) {
|
|
2850
2904
|
const full = path4.join(baseDir, relativeDir);
|
|
2851
|
-
if (!
|
|
2905
|
+
if (!fs11.existsSync(full) || !fs11.statSync(full).isDirectory()) return [];
|
|
2852
2906
|
const results = [];
|
|
2853
|
-
for (const entry of
|
|
2907
|
+
for (const entry of fs11.readdirSync(full, { withFileTypes: true })) {
|
|
2854
2908
|
const rel = path4.posix.join(relativeDir, entry.name);
|
|
2855
2909
|
if (entry.isDirectory()) {
|
|
2856
2910
|
results.push(...collectDirRecursive(baseDir, rel));
|
|
@@ -3058,6 +3112,9 @@ function validateAllPlaceholders(placeholders, inputs) {
|
|
|
3058
3112
|
}
|
|
3059
3113
|
async function queryInstancePickerChoices(library, options) {
|
|
3060
3114
|
const filter = {};
|
|
3115
|
+
if (options?.kind) {
|
|
3116
|
+
filter.kind = options.kind;
|
|
3117
|
+
}
|
|
3061
3118
|
if (options?.defRefPrefix) {
|
|
3062
3119
|
filter.defRef = options.defRefPrefix;
|
|
3063
3120
|
}
|
|
@@ -3257,8 +3314,8 @@ function resolveTemplate(template, context) {
|
|
|
3257
3314
|
});
|
|
3258
3315
|
return { value: result, hasSecret: false };
|
|
3259
3316
|
}
|
|
3260
|
-
function setNestedValue(obj,
|
|
3261
|
-
const parts =
|
|
3317
|
+
function setNestedValue(obj, path13, value) {
|
|
3318
|
+
const parts = path13.split(".");
|
|
3262
3319
|
let current = obj;
|
|
3263
3320
|
for (let i = 0; i < parts.length - 1; i++) {
|
|
3264
3321
|
const key = parts[i];
|
|
@@ -3291,11 +3348,9 @@ async function applyPreset(presetRef, manifest, inputs, opts) {
|
|
|
3291
3348
|
itemResults
|
|
3292
3349
|
);
|
|
3293
3350
|
result.errors.push(...itemResult.errors);
|
|
3294
|
-
|
|
3295
|
-
|
|
3296
|
-
|
|
3297
|
-
itemResults.set(item.id, itemResult.instances[0]);
|
|
3298
|
-
}
|
|
3351
|
+
result.instances.push(...itemResult.instances);
|
|
3352
|
+
if (item.id && itemResult.instances.length > 0) {
|
|
3353
|
+
itemResults.set(item.id, itemResult.instances[0]);
|
|
3299
3354
|
}
|
|
3300
3355
|
result.subscriptions.push(...itemResult.subscriptions);
|
|
3301
3356
|
}
|
|
@@ -3560,5 +3615,5 @@ function deepEqual(a, b) {
|
|
|
3560
3615
|
}
|
|
3561
3616
|
|
|
3562
3617
|
export { CatalogCache, CatalogConfigSchema, CatalogHttpError, DuplicateLibraryNameError, DuplicateSubscriptionError, GitSyncDriver, InstanceHasConsumersError, InstanceNotFoundError, InterpolationError, KNOWN_ASSET_KINDS, KnowledgeManifestSchema, LIBRARY_BACKENDS, LIBRARY_OWNERSHIPS, LIBRARY_STRUCTURES, LOCAL_CATALOG_URL, LibraryConfigSchema, LibraryError, LibraryInstanceRefSchema, LibraryManager, LibrarySectionSchema, LibrarySyncError, LocalCatalogSource, LocalIndex, LocalSyncDriver, LockFileSchema, LockSubscriptionSchema, OfflineError, OperationNotPermittedError, PIN_POLICIES, PinPolicySchema, PresetAppliedSchema, PresetExpandedSchema, RemoteCatalogSource, RequiresEdgeSchema, RestCatalogSource, SidecarGit, SkaileConfigSchema, SourceNotFoundError, SubscriptionNotFoundError, TarballHashMismatchError, UserLibraryNotFoundError, WorkspaceConfigV2Schema, applyNonStructuralUpgrade, applyPreset, applyPresetFromData, classifyRef, createEmptyLockFile, deriveSlug, detectChanges, detectNestedPresetRefs, detectWorkspaceVersion, evaluateUpgrade, extractLibraryInstanceId, extractReferencedKeys, filterKey, getConfigDefaults, getDefaultValue, getSidecarRoot, getStoreManifestsDir, getStoreRoot, hasInterpolationTokens, installFromManifest, interpolate, isLocalCatalogUrl, isSecretPlaceholder, knowledgeKindProvider, listSidecarSlugsOnDisk, loadLockFile, loadWorkspaceV2, migrateSidecarsToStoreIfNeeded, migrateWorkspaceConfig, parsePreset, parsePresetYaml, parseWorkspaceV2, projectConfigPath, queryInstancePickerChoices, resolveAllItems, resolveConfig, resolveIndexPath, resolveItem, resolveLibraryDir, resolvePin, resolveSidecarPaths, saveConfig, saveLockFile, saveWorkspaceV2, sha256Hex, skaileHomeDir, storeSecrets, trpcGetUrl, userConfigPath, validateAllPlaceholders, validateKnowledge, validateNestingDepth, validatePlaceholder, writeManifestIfMissing };
|
|
3563
|
-
//# sourceMappingURL=chunk-
|
|
3564
|
-
//# sourceMappingURL=chunk-
|
|
3618
|
+
//# sourceMappingURL=chunk-RTAIGPTF.js.map
|
|
3619
|
+
//# sourceMappingURL=chunk-RTAIGPTF.js.map
|