opkg 0.9.0 → 0.9.2
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/bin/openpackage +1 -1
- package/dist/core/install/preprocessing/base-resolver.js +37 -17
- package/dist/core/install/preprocessing/base-resolver.js.map +1 -1
- package/dist/core/install/preprocessing/index.js +1 -1
- package/dist/core/install/preprocessing/index.js.map +1 -1
- package/dist/core/install/resolution/installation-planner.js +7 -22
- package/dist/core/install/resolution/installation-planner.js.map +1 -1
- package/dist/core/install/unified/context-builders.js +25 -5
- package/dist/core/install/unified/context-builders.js.map +1 -1
- package/dist/utils/git-clone.js +9 -3
- package/dist/utils/git-clone.js.map +1 -1
- package/package.json +10 -10
- package/packages/cli/bin/openpackage +5 -0
- package/packages/cli/dist/add-AFORN4DK.js +624 -0
- package/packages/cli/dist/add-AFORN4DK.js.map +7 -0
- package/packages/cli/dist/add-TASDXRAL.js +608 -0
- package/packages/cli/dist/add-TASDXRAL.js.map +7 -0
- package/packages/cli/dist/chunk-2NGVXUNT.js +108 -0
- package/packages/cli/dist/chunk-2NGVXUNT.js.map +7 -0
- package/packages/cli/dist/chunk-2PMMVTRN.js +44 -0
- package/packages/cli/dist/chunk-2PMMVTRN.js.map +7 -0
- package/packages/cli/dist/chunk-3RORRNJN.js +31 -0
- package/packages/cli/dist/chunk-3RORRNJN.js.map +7 -0
- package/packages/cli/dist/chunk-4TCVCEPB.js +274 -0
- package/packages/cli/dist/chunk-4TCVCEPB.js.map +7 -0
- package/packages/cli/dist/chunk-5EFWGD33.js +70 -0
- package/packages/cli/dist/chunk-5EFWGD33.js.map +7 -0
- package/packages/cli/dist/chunk-5HSDD3SL.js +100 -0
- package/packages/cli/dist/chunk-5HSDD3SL.js.map +7 -0
- package/packages/cli/dist/chunk-5XEDHH4X.js +371 -0
- package/packages/cli/dist/chunk-5XEDHH4X.js.map +7 -0
- package/packages/cli/dist/chunk-6HEBGHXK.js +302 -0
- package/packages/cli/dist/chunk-6HEBGHXK.js.map +7 -0
- package/packages/cli/dist/chunk-6YZNE3MU.js +29 -0
- package/packages/cli/dist/chunk-6YZNE3MU.js.map +7 -0
- package/packages/cli/dist/chunk-A6ISKBNM.js +48 -0
- package/packages/cli/dist/chunk-A6ISKBNM.js.map +7 -0
- package/packages/cli/dist/chunk-AMHDY5PC.js +31 -0
- package/packages/cli/dist/chunk-AMHDY5PC.js.map +7 -0
- package/packages/cli/dist/chunk-ATYT3SA6.js +172 -0
- package/packages/cli/dist/chunk-ATYT3SA6.js.map +7 -0
- package/packages/cli/dist/chunk-AUYRGQIJ.js +99 -0
- package/packages/cli/dist/chunk-AUYRGQIJ.js.map +7 -0
- package/packages/cli/dist/chunk-BCYZDID6.js +60 -0
- package/packages/cli/dist/chunk-BCYZDID6.js.map +7 -0
- package/packages/cli/dist/chunk-BGSNTCZP.js +172 -0
- package/packages/cli/dist/chunk-BGSNTCZP.js.map +7 -0
- package/packages/cli/dist/chunk-BM66UY63.js +413 -0
- package/packages/cli/dist/chunk-BM66UY63.js.map +7 -0
- package/packages/cli/dist/chunk-BN3JSWOU.js +371 -0
- package/packages/cli/dist/chunk-BN3JSWOU.js.map +7 -0
- package/packages/cli/dist/chunk-BRRTF7CU.js +99 -0
- package/packages/cli/dist/chunk-BRRTF7CU.js.map +7 -0
- package/packages/cli/dist/chunk-CBLKT6WA.js +48 -0
- package/packages/cli/dist/chunk-CBLKT6WA.js.map +7 -0
- package/packages/cli/dist/chunk-DFRQACQV.js +1168 -0
- package/packages/cli/dist/chunk-DFRQACQV.js.map +7 -0
- package/packages/cli/dist/chunk-DN7RINDJ.js +975 -0
- package/packages/cli/dist/chunk-DN7RINDJ.js.map +7 -0
- package/packages/cli/dist/chunk-E2DVTD75.js +196 -0
- package/packages/cli/dist/chunk-E2DVTD75.js.map +7 -0
- package/packages/cli/dist/chunk-E2HYZWNV.js +32 -0
- package/packages/cli/dist/chunk-E2HYZWNV.js.map +7 -0
- package/packages/cli/dist/chunk-EGAP6GNA.js +31 -0
- package/packages/cli/dist/chunk-EGAP6GNA.js.map +7 -0
- package/packages/cli/dist/chunk-ELCB4RC2.js +1121 -0
- package/packages/cli/dist/chunk-ELCB4RC2.js.map +7 -0
- package/packages/cli/dist/chunk-FRYA3JAQ.js +48 -0
- package/packages/cli/dist/chunk-FRYA3JAQ.js.map +7 -0
- package/packages/cli/dist/chunk-GJWX5XPU.js +274 -0
- package/packages/cli/dist/chunk-GJWX5XPU.js.map +7 -0
- package/packages/cli/dist/chunk-GKEHDSL4.js +732 -0
- package/packages/cli/dist/chunk-GKEHDSL4.js.map +7 -0
- package/packages/cli/dist/chunk-GP5FJYSS.js +186 -0
- package/packages/cli/dist/chunk-GP5FJYSS.js.map +7 -0
- package/packages/cli/dist/chunk-GXPSKN7J.js +538 -0
- package/packages/cli/dist/chunk-GXPSKN7J.js.map +7 -0
- package/packages/cli/dist/chunk-GZIV2HZM.js +195 -0
- package/packages/cli/dist/chunk-GZIV2HZM.js.map +7 -0
- package/packages/cli/dist/chunk-IBIYIU3K.js +23 -0
- package/packages/cli/dist/chunk-IBIYIU3K.js.map +7 -0
- package/packages/cli/dist/chunk-ID4SVDQZ.js +61 -0
- package/packages/cli/dist/chunk-ID4SVDQZ.js.map +7 -0
- package/packages/cli/dist/chunk-IVM4PQP4.js +568 -0
- package/packages/cli/dist/chunk-IVM4PQP4.js.map +7 -0
- package/packages/cli/dist/chunk-IXOEIRDT.js +1028 -0
- package/packages/cli/dist/chunk-IXOEIRDT.js.map +7 -0
- package/packages/cli/dist/chunk-J2OQQZFA.js +48 -0
- package/packages/cli/dist/chunk-J2OQQZFA.js.map +7 -0
- package/packages/cli/dist/chunk-J4IFFBLP.js +103 -0
- package/packages/cli/dist/chunk-J4IFFBLP.js.map +7 -0
- package/packages/cli/dist/chunk-K3FCWE4I.js +1168 -0
- package/packages/cli/dist/chunk-K3FCWE4I.js.map +7 -0
- package/packages/cli/dist/chunk-KGBDKY5V.js +113 -0
- package/packages/cli/dist/chunk-KGBDKY5V.js.map +7 -0
- package/packages/cli/dist/chunk-LVPD45D5.js +61 -0
- package/packages/cli/dist/chunk-LVPD45D5.js.map +7 -0
- package/packages/cli/dist/chunk-MLYYVOS3.js +498 -0
- package/packages/cli/dist/chunk-MLYYVOS3.js.map +7 -0
- package/packages/cli/dist/chunk-OFM3UWJJ.js +190 -0
- package/packages/cli/dist/chunk-OFM3UWJJ.js.map +7 -0
- package/packages/cli/dist/chunk-PXL2RUMX.js +14 -0
- package/packages/cli/dist/chunk-PXL2RUMX.js.map +7 -0
- package/packages/cli/dist/chunk-Q2N6OZJC.js +258 -0
- package/packages/cli/dist/chunk-Q2N6OZJC.js.map +7 -0
- package/packages/cli/dist/chunk-QQFDQPT3.js +86 -0
- package/packages/cli/dist/chunk-QQFDQPT3.js.map +7 -0
- package/packages/cli/dist/chunk-QTQYI4L5.js +155 -0
- package/packages/cli/dist/chunk-QTQYI4L5.js.map +7 -0
- package/packages/cli/dist/chunk-QURLGVA4.js +74 -0
- package/packages/cli/dist/chunk-QURLGVA4.js.map +7 -0
- package/packages/cli/dist/chunk-S47F4OG4.js +173 -0
- package/packages/cli/dist/chunk-S47F4OG4.js.map +7 -0
- package/packages/cli/dist/chunk-S6OARUVQ.js +376 -0
- package/packages/cli/dist/chunk-S6OARUVQ.js.map +7 -0
- package/packages/cli/dist/chunk-SHKYQQJJ.js +11 -0
- package/packages/cli/dist/chunk-SHKYQQJJ.js.map +7 -0
- package/packages/cli/dist/chunk-SSHWUJEG.js +788 -0
- package/packages/cli/dist/chunk-SSHWUJEG.js.map +7 -0
- package/packages/cli/dist/chunk-SVEFLCC2.js +25 -0
- package/packages/cli/dist/chunk-SVEFLCC2.js.map +7 -0
- package/packages/cli/dist/chunk-TFQ4JBVO.js +222 -0
- package/packages/cli/dist/chunk-TFQ4JBVO.js.map +7 -0
- package/packages/cli/dist/chunk-UDAWJRKD.js +63 -0
- package/packages/cli/dist/chunk-UDAWJRKD.js.map +7 -0
- package/packages/cli/dist/chunk-UR6VJWA3.js +108 -0
- package/packages/cli/dist/chunk-UR6VJWA3.js.map +7 -0
- package/packages/cli/dist/chunk-UVWARZQC.js +52 -0
- package/packages/cli/dist/chunk-UVWARZQC.js.map +7 -0
- package/packages/cli/dist/chunk-V2JKF46L.js +61 -0
- package/packages/cli/dist/chunk-V2JKF46L.js.map +7 -0
- package/packages/cli/dist/chunk-V5OW4YEB.js +92 -0
- package/packages/cli/dist/chunk-V5OW4YEB.js.map +7 -0
- package/packages/cli/dist/chunk-VN22A7NW.js +145 -0
- package/packages/cli/dist/chunk-VN22A7NW.js.map +7 -0
- package/packages/cli/dist/chunk-WQG6LPP3.js +190 -0
- package/packages/cli/dist/chunk-WQG6LPP3.js.map +7 -0
- package/packages/cli/dist/chunk-XEPVYZO3.js +130 -0
- package/packages/cli/dist/chunk-XEPVYZO3.js.map +7 -0
- package/packages/cli/dist/chunk-YMKK4XPN.js +38 -0
- package/packages/cli/dist/chunk-YMKK4XPN.js.map +7 -0
- package/packages/cli/dist/chunk-YXLKLL3V.js +253 -0
- package/packages/cli/dist/chunk-YXLKLL3V.js.map +7 -0
- package/packages/cli/dist/configure-CBKHH5ZC.js +107 -0
- package/packages/cli/dist/configure-CBKHH5ZC.js.map +7 -0
- package/packages/cli/dist/configure-IW22RQIX.js +107 -0
- package/packages/cli/dist/configure-IW22RQIX.js.map +7 -0
- package/packages/cli/dist/errors-X5KO3GTP.js +23 -0
- package/packages/cli/dist/errors-X5KO3GTP.js.map +7 -0
- package/packages/cli/dist/file-format-detector-DEAVQPAT.js +22 -0
- package/packages/cli/dist/file-format-detector-DEAVQPAT.js.map +7 -0
- package/packages/cli/dist/format-distribution-analyzer-MIFCFIAJ.js +91 -0
- package/packages/cli/dist/format-distribution-analyzer-MIFCFIAJ.js.map +7 -0
- package/packages/cli/dist/index.js +212 -0
- package/packages/cli/dist/index.js.map +7 -0
- package/packages/cli/dist/install-WS7D32ND.js +7694 -0
- package/packages/cli/dist/install-WS7D32ND.js.map +7 -0
- package/packages/cli/dist/install-ZR42VB5K.js +7770 -0
- package/packages/cli/dist/install-ZR42VB5K.js.map +7 -0
- package/packages/cli/dist/list-GSBJJXQT.js +327 -0
- package/packages/cli/dist/list-GSBJJXQT.js.map +7 -0
- package/packages/cli/dist/list-L7DYJYXO.js +126 -0
- package/packages/cli/dist/list-L7DYJYXO.js.map +7 -0
- package/packages/cli/dist/logger-WHZJRF6G.js +8 -0
- package/packages/cli/dist/logger-WHZJRF6G.js.map +7 -0
- package/packages/cli/dist/login-5KPCJJYE.js +121 -0
- package/packages/cli/dist/login-5KPCJJYE.js.map +7 -0
- package/packages/cli/dist/login-TUPFY4I2.js +151 -0
- package/packages/cli/dist/login-TUPFY4I2.js.map +7 -0
- package/packages/cli/dist/logout-FCOJT6KE.js +40 -0
- package/packages/cli/dist/logout-FCOJT6KE.js.map +7 -0
- package/packages/cli/dist/logout-GTYZM3NQ.js +40 -0
- package/packages/cli/dist/logout-GTYZM3NQ.js.map +7 -0
- package/packages/cli/dist/new-FMYTAQD2.js +277 -0
- package/packages/cli/dist/new-FMYTAQD2.js.map +7 -0
- package/packages/cli/dist/new-UJ3HI5MZ.js +275 -0
- package/packages/cli/dist/new-UJ3HI5MZ.js.map +7 -0
- package/packages/cli/dist/package-marker-detector-JELOHCL7.js +80 -0
- package/packages/cli/dist/package-marker-detector-JELOHCL7.js.map +7 -0
- package/packages/cli/dist/package-yml-33CZZC3T.js +16 -0
- package/packages/cli/dist/package-yml-33CZZC3T.js.map +7 -0
- package/packages/cli/dist/plugin-naming-Z2RD7XOF.js +29 -0
- package/packages/cli/dist/plugin-naming-Z2RD7XOF.js.map +7 -0
- package/packages/cli/dist/publish-NHZEF7NP.js +621 -0
- package/packages/cli/dist/publish-NHZEF7NP.js.map +7 -0
- package/packages/cli/dist/publish-VXEPM3TI.js +619 -0
- package/packages/cli/dist/publish-VXEPM3TI.js.map +7 -0
- package/packages/cli/dist/remove-S5DT4F7A.js +508 -0
- package/packages/cli/dist/remove-S5DT4F7A.js.map +7 -0
- package/packages/cli/dist/remove-Z5YY2PZZ.js +542 -0
- package/packages/cli/dist/remove-Z5YY2PZZ.js.map +7 -0
- package/packages/cli/dist/resource-discoverer-QF3Q4QAE.js +17 -0
- package/packages/cli/dist/resource-discoverer-QF3Q4QAE.js.map +7 -0
- package/packages/cli/dist/save-RRBXRROU.js +1726 -0
- package/packages/cli/dist/save-RRBXRROU.js.map +7 -0
- package/packages/cli/dist/save-YHCXQDLA.js +1728 -0
- package/packages/cli/dist/save-YHCXQDLA.js.map +7 -0
- package/packages/cli/dist/search-65S4VUKZ.js +157 -0
- package/packages/cli/dist/search-65S4VUKZ.js.map +7 -0
- package/packages/cli/dist/search-RW5EX76L.js +157 -0
- package/packages/cli/dist/search-RW5EX76L.js.map +7 -0
- package/packages/cli/dist/set-CGYGCM3C.js +251 -0
- package/packages/cli/dist/set-CGYGCM3C.js.map +7 -0
- package/packages/cli/dist/set-SGEPTBDB.js +251 -0
- package/packages/cli/dist/set-SGEPTBDB.js.map +7 -0
- package/packages/cli/dist/uninstall-7EJCVTLD.js +868 -0
- package/packages/cli/dist/uninstall-7EJCVTLD.js.map +7 -0
- package/packages/cli/dist/uninstall-UBZTRBEK.js +540 -0
- package/packages/cli/dist/uninstall-UBZTRBEK.js.map +7 -0
- package/packages/cli/dist/unpublish-V4PMWZVD.js +243 -0
- package/packages/cli/dist/unpublish-V4PMWZVD.js.map +7 -0
- package/packages/cli/dist/unpublish-YMHUZ4EZ.js +243 -0
- package/packages/cli/dist/unpublish-YMHUZ4EZ.js.map +7 -0
- package/packages/cli/dist/view-62MJAH7O.js +452 -0
- package/packages/cli/dist/view-62MJAH7O.js.map +7 -0
- package/packages/cli/dist/view-TVWVUS3B.js +488 -0
- package/packages/cli/dist/view-TVWVUS3B.js.map +7 -0
- package/packages/cli/package.json +45 -0
- package/packages/core/dist/constants/index.d.ts +151 -0
- package/packages/core/dist/constants/index.d.ts.map +1 -0
- package/packages/core/dist/constants/index.js +155 -0
- package/packages/core/dist/constants/index.js.map +1 -0
- package/packages/core/dist/constants/workspace.d.ts +3 -0
- package/packages/core/dist/constants/workspace.d.ts.map +1 -0
- package/packages/core/dist/constants/workspace.js +9 -0
- package/packages/core/dist/constants/workspace.js.map +1 -0
- package/packages/core/dist/core/add/add-conflict-handler.d.ts +17 -0
- package/packages/core/dist/core/add/add-conflict-handler.d.ts.map +1 -0
- package/packages/core/dist/core/add/add-conflict-handler.js +107 -0
- package/packages/core/dist/core/add/add-conflict-handler.js.map +1 -0
- package/packages/core/dist/core/add/add-dependency-flow.d.ts +14 -0
- package/packages/core/dist/core/add/add-dependency-flow.d.ts.map +1 -0
- package/packages/core/dist/core/add/add-dependency-flow.js +93 -0
- package/packages/core/dist/core/add/add-dependency-flow.js.map +1 -0
- package/packages/core/dist/core/add/add-input-classifier.d.ts +34 -0
- package/packages/core/dist/core/add/add-input-classifier.d.ts.map +1 -0
- package/packages/core/dist/core/add/add-input-classifier.js +159 -0
- package/packages/core/dist/core/add/add-input-classifier.js.map +1 -0
- package/packages/core/dist/core/add/add-orchestrator.d.ts +40 -0
- package/packages/core/dist/core/add/add-orchestrator.d.ts.map +1 -0
- package/packages/core/dist/core/add/add-orchestrator.js +81 -0
- package/packages/core/dist/core/add/add-orchestrator.js.map +1 -0
- package/packages/core/dist/core/add/add-to-source-pipeline.d.ts +22 -0
- package/packages/core/dist/core/add/add-to-source-pipeline.d.ts.map +1 -0
- package/packages/core/dist/core/add/add-to-source-pipeline.js +164 -0
- package/packages/core/dist/core/add/add-to-source-pipeline.js.map +1 -0
- package/packages/core/dist/core/add/package-index-updater.d.ts +24 -0
- package/packages/core/dist/core/add/package-index-updater.d.ts.map +1 -0
- package/packages/core/dist/core/add/package-index-updater.js +324 -0
- package/packages/core/dist/core/add/package-index-updater.js.map +1 -0
- package/packages/core/dist/core/add/platform-path-transformer.d.ts +7 -0
- package/packages/core/dist/core/add/platform-path-transformer.d.ts.map +1 -0
- package/packages/core/dist/core/add/platform-path-transformer.js +50 -0
- package/packages/core/dist/core/add/platform-path-transformer.js.map +1 -0
- package/packages/core/dist/core/add/source-collector.d.ts +12 -0
- package/packages/core/dist/core/add/source-collector.d.ts.map +1 -0
- package/packages/core/dist/core/add/source-collector.js +76 -0
- package/packages/core/dist/core/add/source-collector.js.map +1 -0
- package/packages/core/dist/core/api-keys.d.ts +21 -0
- package/packages/core/dist/core/api-keys.d.ts.map +1 -0
- package/packages/core/dist/core/api-keys.js +29 -0
- package/packages/core/dist/core/api-keys.js.map +1 -0
- package/packages/core/dist/core/auth.d.ts +32 -0
- package/packages/core/dist/core/auth.d.ts.map +1 -0
- package/packages/core/dist/core/auth.js +132 -0
- package/packages/core/dist/core/auth.js.map +1 -0
- package/packages/core/dist/core/cache-manager.d.ts +22 -0
- package/packages/core/dist/core/cache-manager.d.ts.map +1 -0
- package/packages/core/dist/core/cache-manager.js +104 -0
- package/packages/core/dist/core/cache-manager.js.map +1 -0
- package/packages/core/dist/core/config.d.ts +64 -0
- package/packages/core/dist/core/config.d.ts.map +1 -0
- package/packages/core/dist/core/config.js +189 -0
- package/packages/core/dist/core/config.js.map +1 -0
- package/packages/core/dist/core/conversion-context/creation.d.ts +50 -0
- package/packages/core/dist/core/conversion-context/creation.d.ts.map +1 -0
- package/packages/core/dist/core/conversion-context/creation.js +153 -0
- package/packages/core/dist/core/conversion-context/creation.js.map +1 -0
- package/packages/core/dist/core/conversion-context/index.d.ts +12 -0
- package/packages/core/dist/core/conversion-context/index.d.ts.map +1 -0
- package/packages/core/dist/core/conversion-context/index.js +13 -0
- package/packages/core/dist/core/conversion-context/index.js.map +1 -0
- package/packages/core/dist/core/conversion-context/serialization.d.ts +38 -0
- package/packages/core/dist/core/conversion-context/serialization.d.ts.map +1 -0
- package/packages/core/dist/core/conversion-context/serialization.js +129 -0
- package/packages/core/dist/core/conversion-context/serialization.js.map +1 -0
- package/packages/core/dist/core/conversion-context/validation.d.ts +49 -0
- package/packages/core/dist/core/conversion-context/validation.d.ts.map +1 -0
- package/packages/core/dist/core/conversion-context/validation.js +200 -0
- package/packages/core/dist/core/conversion-context/validation.js.map +1 -0
- package/packages/core/dist/core/dependency-resolver/display.d.ts +10 -0
- package/packages/core/dist/core/dependency-resolver/display.d.ts.map +1 -0
- package/packages/core/dist/core/dependency-resolver/display.js +32 -0
- package/packages/core/dist/core/dependency-resolver/display.js.map +1 -0
- package/packages/core/dist/core/dependency-resolver/index.d.ts +19 -0
- package/packages/core/dist/core/dependency-resolver/index.d.ts.map +1 -0
- package/packages/core/dist/core/dependency-resolver/index.js +22 -0
- package/packages/core/dist/core/dependency-resolver/index.js.map +1 -0
- package/packages/core/dist/core/dependency-resolver/prompts.d.ts +9 -0
- package/packages/core/dist/core/dependency-resolver/prompts.d.ts.map +1 -0
- package/packages/core/dist/core/dependency-resolver/prompts.js +12 -0
- package/packages/core/dist/core/dependency-resolver/prompts.js.map +1 -0
- package/packages/core/dist/core/dependency-resolver/resolver.d.ts +36 -0
- package/packages/core/dist/core/dependency-resolver/resolver.d.ts.map +1 -0
- package/packages/core/dist/core/dependency-resolver/resolver.js +672 -0
- package/packages/core/dist/core/dependency-resolver/resolver.js.map +1 -0
- package/packages/core/dist/core/dependency-resolver/tree-utils.d.ts +14 -0
- package/packages/core/dist/core/dependency-resolver/tree-utils.d.ts.map +1 -0
- package/packages/core/dist/core/dependency-resolver/tree-utils.js +96 -0
- package/packages/core/dist/core/dependency-resolver/tree-utils.js.map +1 -0
- package/packages/core/dist/core/dependency-resolver/types.d.ts +52 -0
- package/packages/core/dist/core/dependency-resolver/types.d.ts.map +1 -0
- package/packages/core/dist/core/dependency-resolver/types.js +2 -0
- package/packages/core/dist/core/dependency-resolver/types.js.map +1 -0
- package/packages/core/dist/core/dependency-resolver.d.ts +14 -0
- package/packages/core/dist/core/dependency-resolver.d.ts.map +1 -0
- package/packages/core/dist/core/dependency-resolver.js +15 -0
- package/packages/core/dist/core/dependency-resolver.js.map +1 -0
- package/packages/core/dist/core/device-auth.d.ts +25 -0
- package/packages/core/dist/core/device-auth.d.ts.map +1 -0
- package/packages/core/dist/core/device-auth.js +95 -0
- package/packages/core/dist/core/device-auth.js.map +1 -0
- package/packages/core/dist/core/directory.d.ts +74 -0
- package/packages/core/dist/core/directory.d.ts.map +1 -0
- package/packages/core/dist/core/directory.js +203 -0
- package/packages/core/dist/core/directory.js.map +1 -0
- package/packages/core/dist/core/discovery/file-discovery.d.ts +17 -0
- package/packages/core/dist/core/discovery/file-discovery.d.ts.map +1 -0
- package/packages/core/dist/core/discovery/file-discovery.js +61 -0
- package/packages/core/dist/core/discovery/file-discovery.js.map +1 -0
- package/packages/core/dist/core/discovery/platform-files-discovery.d.ts +3 -0
- package/packages/core/dist/core/discovery/platform-files-discovery.d.ts.map +1 -0
- package/packages/core/dist/core/discovery/platform-files-discovery.js +101 -0
- package/packages/core/dist/core/discovery/platform-files-discovery.js.map +1 -0
- package/packages/core/dist/core/execution-context.d.ts +47 -0
- package/packages/core/dist/core/execution-context.d.ts.map +1 -0
- package/packages/core/dist/core/execution-context.js +146 -0
- package/packages/core/dist/core/execution-context.js.map +1 -0
- package/packages/core/dist/core/flows/flow-execution-coordinator.d.ts +87 -0
- package/packages/core/dist/core/flows/flow-execution-coordinator.d.ts.map +1 -0
- package/packages/core/dist/core/flows/flow-execution-coordinator.js +294 -0
- package/packages/core/dist/core/flows/flow-execution-coordinator.js.map +1 -0
- package/packages/core/dist/core/flows/flow-executor.d.ts +190 -0
- package/packages/core/dist/core/flows/flow-executor.d.ts.map +1 -0
- package/packages/core/dist/core/flows/flow-executor.js +1138 -0
- package/packages/core/dist/core/flows/flow-executor.js.map +1 -0
- package/packages/core/dist/core/flows/flow-key-extractor.d.ts +40 -0
- package/packages/core/dist/core/flows/flow-key-extractor.d.ts.map +1 -0
- package/packages/core/dist/core/flows/flow-key-extractor.js +101 -0
- package/packages/core/dist/core/flows/flow-key-extractor.js.map +1 -0
- package/packages/core/dist/core/flows/flow-key-mapper.d.ts +27 -0
- package/packages/core/dist/core/flows/flow-key-mapper.d.ts.map +1 -0
- package/packages/core/dist/core/flows/flow-key-mapper.js +283 -0
- package/packages/core/dist/core/flows/flow-key-mapper.js.map +1 -0
- package/packages/core/dist/core/flows/flow-source-discovery.d.ts +106 -0
- package/packages/core/dist/core/flows/flow-source-discovery.d.ts.map +1 -0
- package/packages/core/dist/core/flows/flow-source-discovery.js +311 -0
- package/packages/core/dist/core/flows/flow-source-discovery.js.map +1 -0
- package/packages/core/dist/core/flows/flow-transforms.d.ts +129 -0
- package/packages/core/dist/core/flows/flow-transforms.d.ts.map +1 -0
- package/packages/core/dist/core/flows/flow-transforms.js +613 -0
- package/packages/core/dist/core/flows/flow-transforms.js.map +1 -0
- package/packages/core/dist/core/flows/map-pipeline/context.d.ts +30 -0
- package/packages/core/dist/core/flows/map-pipeline/context.d.ts.map +1 -0
- package/packages/core/dist/core/flows/map-pipeline/context.js +73 -0
- package/packages/core/dist/core/flows/map-pipeline/context.js.map +1 -0
- package/packages/core/dist/core/flows/map-pipeline/index.d.ts +48 -0
- package/packages/core/dist/core/flows/map-pipeline/index.d.ts.map +1 -0
- package/packages/core/dist/core/flows/map-pipeline/index.js +176 -0
- package/packages/core/dist/core/flows/map-pipeline/index.js.map +1 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/copy.d.ts +32 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/copy.d.ts.map +1 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/copy.js +104 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/copy.js.map +1 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/pipe.d.ts +37 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/pipe.d.ts.map +1 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/pipe.js +70 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/pipe.js.map +1 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/rename.d.ts +26 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/rename.d.ts.map +1 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/rename.js +102 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/rename.js.map +1 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/set.d.ts +24 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/set.d.ts.map +1 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/set.js +50 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/set.js.map +1 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/switch.d.ts +31 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/switch.d.ts.map +1 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/switch.js +84 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/switch.js.map +1 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/transform.d.ts +22 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/transform.d.ts.map +1 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/transform.js +576 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/transform.js.map +1 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/unset.d.ts +27 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/unset.d.ts.map +1 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/unset.js +65 -0
- package/packages/core/dist/core/flows/map-pipeline/operations/unset.js.map +1 -0
- package/packages/core/dist/core/flows/map-pipeline/types.d.ts +358 -0
- package/packages/core/dist/core/flows/map-pipeline/types.d.ts.map +1 -0
- package/packages/core/dist/core/flows/map-pipeline/types.js +8 -0
- package/packages/core/dist/core/flows/map-pipeline/types.js.map +1 -0
- package/packages/core/dist/core/flows/map-pipeline/utils.d.ts +104 -0
- package/packages/core/dist/core/flows/map-pipeline/utils.d.ts.map +1 -0
- package/packages/core/dist/core/flows/map-pipeline/utils.js +278 -0
- package/packages/core/dist/core/flows/map-pipeline/utils.js.map +1 -0
- package/packages/core/dist/core/flows/markdown.d.ts +22 -0
- package/packages/core/dist/core/flows/markdown.d.ts.map +1 -0
- package/packages/core/dist/core/flows/markdown.js +51 -0
- package/packages/core/dist/core/flows/markdown.js.map +1 -0
- package/packages/core/dist/core/flows/platform-converter.d.ts +90 -0
- package/packages/core/dist/core/flows/platform-converter.d.ts.map +1 -0
- package/packages/core/dist/core/flows/platform-converter.js +366 -0
- package/packages/core/dist/core/flows/platform-converter.js.map +1 -0
- package/packages/core/dist/core/flows/platform-suffix-handler.d.ts +97 -0
- package/packages/core/dist/core/flows/platform-suffix-handler.d.ts.map +1 -0
- package/packages/core/dist/core/flows/platform-suffix-handler.js +212 -0
- package/packages/core/dist/core/flows/platform-suffix-handler.js.map +1 -0
- package/packages/core/dist/core/flows/source-resolver.d.ts +99 -0
- package/packages/core/dist/core/flows/source-resolver.d.ts.map +1 -0
- package/packages/core/dist/core/flows/source-resolver.js +192 -0
- package/packages/core/dist/core/flows/source-resolver.js.map +1 -0
- package/packages/core/dist/core/flows/switch-resolver.d.ts +48 -0
- package/packages/core/dist/core/flows/switch-resolver.d.ts.map +1 -0
- package/packages/core/dist/core/flows/switch-resolver.js +205 -0
- package/packages/core/dist/core/flows/switch-resolver.js.map +1 -0
- package/packages/core/dist/core/git-clone-registry.d.ts +19 -0
- package/packages/core/dist/core/git-clone-registry.d.ts.map +1 -0
- package/packages/core/dist/core/git-clone-registry.js +88 -0
- package/packages/core/dist/core/git-clone-registry.js.map +1 -0
- package/packages/core/dist/core/git-clone.d.ts +27 -0
- package/packages/core/dist/core/git-clone.d.ts.map +1 -0
- package/packages/core/dist/core/git-clone.js +282 -0
- package/packages/core/dist/core/git-clone.js.map +1 -0
- package/packages/core/dist/core/glob-target-mapping.d.ts +18 -0
- package/packages/core/dist/core/glob-target-mapping.d.ts.map +1 -0
- package/packages/core/dist/core/glob-target-mapping.js +88 -0
- package/packages/core/dist/core/glob-target-mapping.js.map +1 -0
- package/packages/core/dist/core/http-client.d.ts +54 -0
- package/packages/core/dist/core/http-client.d.ts.map +1 -0
- package/packages/core/dist/core/http-client.js +235 -0
- package/packages/core/dist/core/http-client.js.map +1 -0
- package/packages/core/dist/core/install/ambiguity-prompts.d.ts +46 -0
- package/packages/core/dist/core/install/ambiguity-prompts.d.ts.map +1 -0
- package/packages/core/dist/core/install/ambiguity-prompts.js +108 -0
- package/packages/core/dist/core/install/ambiguity-prompts.js.map +1 -0
- package/packages/core/dist/core/install/base-detector.d.ts +50 -0
- package/packages/core/dist/core/install/base-detector.d.ts.map +1 -0
- package/packages/core/dist/core/install/base-detector.js +312 -0
- package/packages/core/dist/core/install/base-detector.js.map +1 -0
- package/packages/core/dist/core/install/conflicts/file-conflict-resolver.d.ts +215 -0
- package/packages/core/dist/core/install/conflicts/file-conflict-resolver.d.ts.map +1 -0
- package/packages/core/dist/core/install/conflicts/file-conflict-resolver.js +599 -0
- package/packages/core/dist/core/install/conflicts/file-conflict-resolver.js.map +1 -0
- package/packages/core/dist/core/install/convenience-matchers.d.ts +82 -0
- package/packages/core/dist/core/install/convenience-matchers.d.ts.map +1 -0
- package/packages/core/dist/core/install/convenience-matchers.js +355 -0
- package/packages/core/dist/core/install/convenience-matchers.js.map +1 -0
- package/packages/core/dist/core/install/conversion-context.d.ts +146 -0
- package/packages/core/dist/core/install/conversion-context.d.ts.map +1 -0
- package/packages/core/dist/core/install/conversion-context.js +163 -0
- package/packages/core/dist/core/install/conversion-context.js.map +1 -0
- package/packages/core/dist/core/install/conversion-coordinator.d.ts +91 -0
- package/packages/core/dist/core/install/conversion-coordinator.d.ts.map +1 -0
- package/packages/core/dist/core/install/conversion-coordinator.js +273 -0
- package/packages/core/dist/core/install/conversion-coordinator.js.map +1 -0
- package/packages/core/dist/core/install/detection-types.d.ts +216 -0
- package/packages/core/dist/core/install/detection-types.d.ts.map +1 -0
- package/packages/core/dist/core/install/detection-types.js +8 -0
- package/packages/core/dist/core/install/detection-types.js.map +1 -0
- package/packages/core/dist/core/install/download-keys.d.ts +10 -0
- package/packages/core/dist/core/install/download-keys.d.ts.map +1 -0
- package/packages/core/dist/core/install/download-keys.js +34 -0
- package/packages/core/dist/core/install/download-keys.js.map +1 -0
- package/packages/core/dist/core/install/file-format-detector.d.ts +52 -0
- package/packages/core/dist/core/install/file-format-detector.d.ts.map +1 -0
- package/packages/core/dist/core/install/file-format-detector.js +317 -0
- package/packages/core/dist/core/install/file-format-detector.js.map +1 -0
- package/packages/core/dist/core/install/file-updater.d.ts +7 -0
- package/packages/core/dist/core/install/file-updater.d.ts.map +1 -0
- package/packages/core/dist/core/install/file-updater.js +28 -0
- package/packages/core/dist/core/install/file-updater.js.map +1 -0
- package/packages/core/dist/core/install/flow-based-installer.d.ts +30 -0
- package/packages/core/dist/core/install/flow-based-installer.d.ts.map +1 -0
- package/packages/core/dist/core/install/flow-based-installer.js +85 -0
- package/packages/core/dist/core/install/flow-based-installer.js.map +1 -0
- package/packages/core/dist/core/install/flow-index-installer.d.ts +46 -0
- package/packages/core/dist/core/install/flow-index-installer.d.ts.map +1 -0
- package/packages/core/dist/core/install/flow-index-installer.js +319 -0
- package/packages/core/dist/core/install/flow-index-installer.js.map +1 -0
- package/packages/core/dist/core/install/format-detector.d.ts +85 -0
- package/packages/core/dist/core/install/format-detector.d.ts.map +1 -0
- package/packages/core/dist/core/install/format-detector.js +327 -0
- package/packages/core/dist/core/install/format-detector.js.map +1 -0
- package/packages/core/dist/core/install/format-distribution-analyzer.d.ts +98 -0
- package/packages/core/dist/core/install/format-distribution-analyzer.d.ts.map +1 -0
- package/packages/core/dist/core/install/format-distribution-analyzer.js +215 -0
- package/packages/core/dist/core/install/format-distribution-analyzer.js.map +1 -0
- package/packages/core/dist/core/install/format-group-merger.d.ts +66 -0
- package/packages/core/dist/core/install/format-group-merger.d.ts.map +1 -0
- package/packages/core/dist/core/install/format-group-merger.js +206 -0
- package/packages/core/dist/core/install/format-group-merger.js.map +1 -0
- package/packages/core/dist/core/install/git-package-loader.d.ts +17 -0
- package/packages/core/dist/core/install/git-package-loader.d.ts.map +1 -0
- package/packages/core/dist/core/install/git-package-loader.js +52 -0
- package/packages/core/dist/core/install/git-package-loader.js.map +1 -0
- package/packages/core/dist/core/install/handlers/index.d.ts +5 -0
- package/packages/core/dist/core/install/handlers/index.d.ts.map +1 -0
- package/packages/core/dist/core/install/handlers/index.js +6 -0
- package/packages/core/dist/core/install/handlers/index.js.map +1 -0
- package/packages/core/dist/core/install/helpers/conflict-detection.d.ts +41 -0
- package/packages/core/dist/core/install/helpers/conflict-detection.d.ts.map +1 -0
- package/packages/core/dist/core/install/helpers/conflict-detection.js +71 -0
- package/packages/core/dist/core/install/helpers/conflict-detection.js.map +1 -0
- package/packages/core/dist/core/install/helpers/file-discovery.d.ts +9 -0
- package/packages/core/dist/core/install/helpers/file-discovery.d.ts.map +1 -0
- package/packages/core/dist/core/install/helpers/file-discovery.js +63 -0
- package/packages/core/dist/core/install/helpers/file-discovery.js.map +1 -0
- package/packages/core/dist/core/install/helpers/format-detection.d.ts +42 -0
- package/packages/core/dist/core/install/helpers/format-detection.d.ts.map +1 -0
- package/packages/core/dist/core/install/helpers/format-detection.js +66 -0
- package/packages/core/dist/core/install/helpers/format-detection.js.map +1 -0
- package/packages/core/dist/core/install/helpers/index.d.ts +10 -0
- package/packages/core/dist/core/install/helpers/index.d.ts.map +1 -0
- package/packages/core/dist/core/install/helpers/index.js +14 -0
- package/packages/core/dist/core/install/helpers/index.js.map +1 -0
- package/packages/core/dist/core/install/helpers/result-aggregation.d.ts +58 -0
- package/packages/core/dist/core/install/helpers/result-aggregation.d.ts.map +1 -0
- package/packages/core/dist/core/install/helpers/result-aggregation.js +107 -0
- package/packages/core/dist/core/install/helpers/result-aggregation.js.map +1 -0
- package/packages/core/dist/core/install/helpers/result-logging.d.ts +47 -0
- package/packages/core/dist/core/install/helpers/result-logging.d.ts.map +1 -0
- package/packages/core/dist/core/install/helpers/result-logging.js +85 -0
- package/packages/core/dist/core/install/helpers/result-logging.js.map +1 -0
- package/packages/core/dist/core/install/import-flow-converter.d.ts +89 -0
- package/packages/core/dist/core/install/import-flow-converter.d.ts.map +1 -0
- package/packages/core/dist/core/install/import-flow-converter.js +436 -0
- package/packages/core/dist/core/install/import-flow-converter.js.map +1 -0
- package/packages/core/dist/core/install/index-based-installer.d.ts +35 -0
- package/packages/core/dist/core/install/index-based-installer.d.ts.map +1 -0
- package/packages/core/dist/core/install/index-based-installer.js +459 -0
- package/packages/core/dist/core/install/index-based-installer.js.map +1 -0
- package/packages/core/dist/core/install/input-classifier-base.d.ts +65 -0
- package/packages/core/dist/core/install/input-classifier-base.d.ts.map +1 -0
- package/packages/core/dist/core/install/input-classifier-base.js +173 -0
- package/packages/core/dist/core/install/input-classifier-base.js.map +1 -0
- package/packages/core/dist/core/install/install-errors.d.ts +6 -0
- package/packages/core/dist/core/install/install-errors.d.ts.map +1 -0
- package/packages/core/dist/core/install/install-errors.js +41 -0
- package/packages/core/dist/core/install/install-errors.js.map +1 -0
- package/packages/core/dist/core/install/install-helpers.d.ts +36 -0
- package/packages/core/dist/core/install/install-helpers.d.ts.map +1 -0
- package/packages/core/dist/core/install/install-helpers.js +89 -0
- package/packages/core/dist/core/install/install-helpers.js.map +1 -0
- package/packages/core/dist/core/install/install-reporting.d.ts +42 -0
- package/packages/core/dist/core/install/install-reporting.d.ts.map +1 -0
- package/packages/core/dist/core/install/install-reporting.js +182 -0
- package/packages/core/dist/core/install/install-reporting.js.map +1 -0
- package/packages/core/dist/core/install/list-handler.d.ts +18 -0
- package/packages/core/dist/core/install/list-handler.d.ts.map +1 -0
- package/packages/core/dist/core/install/list-handler.js +112 -0
- package/packages/core/dist/core/install/list-handler.js.map +1 -0
- package/packages/core/dist/core/install/local-source-resolution.d.ts +30 -0
- package/packages/core/dist/core/install/local-source-resolution.d.ts.map +1 -0
- package/packages/core/dist/core/install/local-source-resolution.js +103 -0
- package/packages/core/dist/core/install/local-source-resolution.js.map +1 -0
- package/packages/core/dist/core/install/marketplace-handler.d.ts +129 -0
- package/packages/core/dist/core/install/marketplace-handler.d.ts.map +1 -0
- package/packages/core/dist/core/install/marketplace-handler.js +631 -0
- package/packages/core/dist/core/install/marketplace-handler.js.map +1 -0
- package/packages/core/dist/core/install/operations/conflict-handler.d.ts +13 -0
- package/packages/core/dist/core/install/operations/conflict-handler.d.ts.map +1 -0
- package/packages/core/dist/core/install/operations/conflict-handler.js +73 -0
- package/packages/core/dist/core/install/operations/conflict-handler.js.map +1 -0
- package/packages/core/dist/core/install/operations/index.d.ts +8 -0
- package/packages/core/dist/core/install/operations/index.d.ts.map +1 -0
- package/packages/core/dist/core/install/operations/index.js +8 -0
- package/packages/core/dist/core/install/operations/index.js.map +1 -0
- package/packages/core/dist/core/install/operations/installation-executor.d.ts +48 -0
- package/packages/core/dist/core/install/operations/installation-executor.d.ts.map +1 -0
- package/packages/core/dist/core/install/operations/installation-executor.js +174 -0
- package/packages/core/dist/core/install/operations/installation-executor.js.map +1 -0
- package/packages/core/dist/core/install/operations/root-files.d.ts +37 -0
- package/packages/core/dist/core/install/operations/root-files.d.ts.map +1 -0
- package/packages/core/dist/core/install/operations/root-files.js +173 -0
- package/packages/core/dist/core/install/operations/root-files.js.map +1 -0
- package/packages/core/dist/core/install/orchestrator/index.d.ts +5 -0
- package/packages/core/dist/core/install/orchestrator/index.d.ts.map +1 -0
- package/packages/core/dist/core/install/orchestrator/index.js +4 -0
- package/packages/core/dist/core/install/orchestrator/index.js.map +1 -0
- package/packages/core/dist/core/install/orchestrator/orchestrator.d.ts +96 -0
- package/packages/core/dist/core/install/orchestrator/orchestrator.d.ts.map +1 -0
- package/packages/core/dist/core/install/orchestrator/orchestrator.js +684 -0
- package/packages/core/dist/core/install/orchestrator/orchestrator.js.map +1 -0
- package/packages/core/dist/core/install/orchestrator/strategies/base.d.ts +34 -0
- package/packages/core/dist/core/install/orchestrator/strategies/base.d.ts.map +1 -0
- package/packages/core/dist/core/install/orchestrator/strategies/base.js +43 -0
- package/packages/core/dist/core/install/orchestrator/strategies/base.js.map +1 -0
- package/packages/core/dist/core/install/orchestrator/strategies/bulk-strategy.d.ts +17 -0
- package/packages/core/dist/core/install/orchestrator/strategies/bulk-strategy.d.ts.map +1 -0
- package/packages/core/dist/core/install/orchestrator/strategies/bulk-strategy.js +52 -0
- package/packages/core/dist/core/install/orchestrator/strategies/bulk-strategy.js.map +1 -0
- package/packages/core/dist/core/install/orchestrator/strategies/git-strategy.d.ts +15 -0
- package/packages/core/dist/core/install/orchestrator/strategies/git-strategy.d.ts.map +1 -0
- package/packages/core/dist/core/install/orchestrator/strategies/git-strategy.js +112 -0
- package/packages/core/dist/core/install/orchestrator/strategies/git-strategy.js.map +1 -0
- package/packages/core/dist/core/install/orchestrator/strategies/index.d.ts +11 -0
- package/packages/core/dist/core/install/orchestrator/strategies/index.d.ts.map +1 -0
- package/packages/core/dist/core/install/orchestrator/strategies/index.js +21 -0
- package/packages/core/dist/core/install/orchestrator/strategies/index.js.map +1 -0
- package/packages/core/dist/core/install/orchestrator/strategies/path-strategy.d.ts +17 -0
- package/packages/core/dist/core/install/orchestrator/strategies/path-strategy.d.ts.map +1 -0
- package/packages/core/dist/core/install/orchestrator/strategies/path-strategy.js +61 -0
- package/packages/core/dist/core/install/orchestrator/strategies/path-strategy.js.map +1 -0
- package/packages/core/dist/core/install/orchestrator/strategies/registry-strategy.d.ts +17 -0
- package/packages/core/dist/core/install/orchestrator/strategies/registry-strategy.d.ts.map +1 -0
- package/packages/core/dist/core/install/orchestrator/strategies/registry-strategy.js +38 -0
- package/packages/core/dist/core/install/orchestrator/strategies/registry-strategy.js.map +1 -0
- package/packages/core/dist/core/install/orchestrator/subsumption-resolver.d.ts +75 -0
- package/packages/core/dist/core/install/orchestrator/subsumption-resolver.d.ts.map +1 -0
- package/packages/core/dist/core/install/orchestrator/subsumption-resolver.js +193 -0
- package/packages/core/dist/core/install/orchestrator/subsumption-resolver.js.map +1 -0
- package/packages/core/dist/core/install/orchestrator/types.d.ts +104 -0
- package/packages/core/dist/core/install/orchestrator/types.d.ts.map +1 -0
- package/packages/core/dist/core/install/orchestrator/types.js +2 -0
- package/packages/core/dist/core/install/orchestrator/types.js.map +1 -0
- package/packages/core/dist/core/install/package-input.d.ts +28 -0
- package/packages/core/dist/core/install/package-input.d.ts.map +1 -0
- package/packages/core/dist/core/install/package-input.js +99 -0
- package/packages/core/dist/core/install/package-input.js.map +1 -0
- package/packages/core/dist/core/install/package-installation.d.ts +13 -0
- package/packages/core/dist/core/install/package-installation.d.ts.map +1 -0
- package/packages/core/dist/core/install/package-installation.js +30 -0
- package/packages/core/dist/core/install/package-installation.js.map +1 -0
- package/packages/core/dist/core/install/package-marker-detector.d.ts +93 -0
- package/packages/core/dist/core/install/package-marker-detector.d.ts.map +1 -0
- package/packages/core/dist/core/install/package-marker-detector.js +185 -0
- package/packages/core/dist/core/install/package-marker-detector.js.map +1 -0
- package/packages/core/dist/core/install/path-package-loader.d.ts +42 -0
- package/packages/core/dist/core/install/path-package-loader.d.ts.map +1 -0
- package/packages/core/dist/core/install/path-package-loader.js +173 -0
- package/packages/core/dist/core/install/path-package-loader.js.map +1 -0
- package/packages/core/dist/core/install/platform-resolution.d.ts +15 -0
- package/packages/core/dist/core/install/platform-resolution.d.ts.map +1 -0
- package/packages/core/dist/core/install/platform-resolution.js +31 -0
- package/packages/core/dist/core/install/platform-resolution.js.map +1 -0
- package/packages/core/dist/core/install/plugin-detector.d.ts +46 -0
- package/packages/core/dist/core/install/plugin-detector.d.ts.map +1 -0
- package/packages/core/dist/core/install/plugin-detector.js +126 -0
- package/packages/core/dist/core/install/plugin-detector.js.map +1 -0
- package/packages/core/dist/core/install/plugin-metadata-resolver.d.ts +62 -0
- package/packages/core/dist/core/install/plugin-metadata-resolver.d.ts.map +1 -0
- package/packages/core/dist/core/install/plugin-metadata-resolver.js +125 -0
- package/packages/core/dist/core/install/plugin-metadata-resolver.js.map +1 -0
- package/packages/core/dist/core/install/plugin-sources.d.ts +59 -0
- package/packages/core/dist/core/install/plugin-sources.d.ts.map +1 -0
- package/packages/core/dist/core/install/plugin-sources.js +122 -0
- package/packages/core/dist/core/install/plugin-sources.js.map +1 -0
- package/packages/core/dist/core/install/plugin-transformer.d.ts +29 -0
- package/packages/core/dist/core/install/plugin-transformer.d.ts.map +1 -0
- package/packages/core/dist/core/install/plugin-transformer.js +159 -0
- package/packages/core/dist/core/install/plugin-transformer.js.map +1 -0
- package/packages/core/dist/core/install/preprocessing/base-resolver.d.ts +61 -0
- package/packages/core/dist/core/install/preprocessing/base-resolver.d.ts.map +1 -0
- package/packages/core/dist/core/install/preprocessing/base-resolver.js +135 -0
- package/packages/core/dist/core/install/preprocessing/base-resolver.js.map +1 -0
- package/packages/core/dist/core/install/preprocessing/convenience-preprocessor.d.ts +11 -0
- package/packages/core/dist/core/install/preprocessing/convenience-preprocessor.d.ts.map +1 -0
- package/packages/core/dist/core/install/preprocessing/convenience-preprocessor.js +22 -0
- package/packages/core/dist/core/install/preprocessing/convenience-preprocessor.js.map +1 -0
- package/packages/core/dist/core/install/preprocessing/index.d.ts +6 -0
- package/packages/core/dist/core/install/preprocessing/index.d.ts.map +1 -0
- package/packages/core/dist/core/install/preprocessing/index.js +5 -0
- package/packages/core/dist/core/install/preprocessing/index.js.map +1 -0
- package/packages/core/dist/core/install/preprocessing/input-classifier.d.ts +21 -0
- package/packages/core/dist/core/install/preprocessing/input-classifier.d.ts.map +1 -0
- package/packages/core/dist/core/install/preprocessing/input-classifier.js +66 -0
- package/packages/core/dist/core/install/preprocessing/input-classifier.js.map +1 -0
- package/packages/core/dist/core/install/preprocessing/options-normalizer.d.ts +19 -0
- package/packages/core/dist/core/install/preprocessing/options-normalizer.d.ts.map +1 -0
- package/packages/core/dist/core/install/preprocessing/options-normalizer.js +41 -0
- package/packages/core/dist/core/install/preprocessing/options-normalizer.js.map +1 -0
- package/packages/core/dist/core/install/remote-flow.d.ts +38 -0
- package/packages/core/dist/core/install/remote-flow.d.ts.map +1 -0
- package/packages/core/dist/core/install/remote-flow.js +180 -0
- package/packages/core/dist/core/install/remote-flow.js.map +1 -0
- package/packages/core/dist/core/install/remote-reporting.d.ts +11 -0
- package/packages/core/dist/core/install/remote-reporting.d.ts.map +1 -0
- package/packages/core/dist/core/install/remote-reporting.js +63 -0
- package/packages/core/dist/core/install/remote-reporting.js.map +1 -0
- package/packages/core/dist/core/install/resolution/content-root-cache.d.ts +32 -0
- package/packages/core/dist/core/install/resolution/content-root-cache.d.ts.map +1 -0
- package/packages/core/dist/core/install/resolution/content-root-cache.js +87 -0
- package/packages/core/dist/core/install/resolution/content-root-cache.js.map +1 -0
- package/packages/core/dist/core/install/resolution/executor.d.ts +23 -0
- package/packages/core/dist/core/install/resolution/executor.d.ts.map +1 -0
- package/packages/core/dist/core/install/resolution/executor.js +187 -0
- package/packages/core/dist/core/install/resolution/executor.js.map +1 -0
- package/packages/core/dist/core/install/resolution/graph-builder.d.ts +31 -0
- package/packages/core/dist/core/install/resolution/graph-builder.d.ts.map +1 -0
- package/packages/core/dist/core/install/resolution/graph-builder.js +299 -0
- package/packages/core/dist/core/install/resolution/graph-builder.js.map +1 -0
- package/packages/core/dist/core/install/resolution/id-generator.d.ts +19 -0
- package/packages/core/dist/core/install/resolution/id-generator.d.ts.map +1 -0
- package/packages/core/dist/core/install/resolution/id-generator.js +70 -0
- package/packages/core/dist/core/install/resolution/id-generator.js.map +1 -0
- package/packages/core/dist/core/install/resolution/index.d.ts +15 -0
- package/packages/core/dist/core/install/resolution/index.d.ts.map +1 -0
- package/packages/core/dist/core/install/resolution/index.js +13 -0
- package/packages/core/dist/core/install/resolution/index.js.map +1 -0
- package/packages/core/dist/core/install/resolution/installation-planner.d.ts +23 -0
- package/packages/core/dist/core/install/resolution/installation-planner.d.ts.map +1 -0
- package/packages/core/dist/core/install/resolution/installation-planner.js +158 -0
- package/packages/core/dist/core/install/resolution/installation-planner.js.map +1 -0
- package/packages/core/dist/core/install/resolution/manifest-reader.d.ts +34 -0
- package/packages/core/dist/core/install/resolution/manifest-reader.d.ts.map +1 -0
- package/packages/core/dist/core/install/resolution/manifest-reader.js +112 -0
- package/packages/core/dist/core/install/resolution/manifest-reader.js.map +1 -0
- package/packages/core/dist/core/install/resolution/package-loader.d.ts +22 -0
- package/packages/core/dist/core/install/resolution/package-loader.d.ts.map +1 -0
- package/packages/core/dist/core/install/resolution/package-loader.js +176 -0
- package/packages/core/dist/core/install/resolution/package-loader.js.map +1 -0
- package/packages/core/dist/core/install/resolution/types.d.ts +290 -0
- package/packages/core/dist/core/install/resolution/types.d.ts.map +1 -0
- package/packages/core/dist/core/install/resolution/types.js +6 -0
- package/packages/core/dist/core/install/resolution/types.js.map +1 -0
- package/packages/core/dist/core/install/resolution/version-solver.d.ts +43 -0
- package/packages/core/dist/core/install/resolution/version-solver.d.ts.map +1 -0
- package/packages/core/dist/core/install/resolution/version-solver.js +166 -0
- package/packages/core/dist/core/install/resolution/version-solver.js.map +1 -0
- package/packages/core/dist/core/install/resource-discoverer.d.ts +21 -0
- package/packages/core/dist/core/install/resource-discoverer.d.ts.map +1 -0
- package/packages/core/dist/core/install/resource-discoverer.js +233 -0
- package/packages/core/dist/core/install/resource-discoverer.js.map +1 -0
- package/packages/core/dist/core/install/resource-selection-menu.d.ts +25 -0
- package/packages/core/dist/core/install/resource-selection-menu.d.ts.map +1 -0
- package/packages/core/dist/core/install/resource-selection-menu.js +250 -0
- package/packages/core/dist/core/install/resource-selection-menu.js.map +1 -0
- package/packages/core/dist/core/install/resource-types.d.ts +62 -0
- package/packages/core/dist/core/install/resource-types.d.ts.map +1 -0
- package/packages/core/dist/core/install/resource-types.js +5 -0
- package/packages/core/dist/core/install/resource-types.js.map +1 -0
- package/packages/core/dist/core/install/schema-registry.d.ts +69 -0
- package/packages/core/dist/core/install/schema-registry.d.ts.map +1 -0
- package/packages/core/dist/core/install/schema-registry.js +219 -0
- package/packages/core/dist/core/install/schema-registry.js.map +1 -0
- package/packages/core/dist/core/install/sources/base.d.ts +77 -0
- package/packages/core/dist/core/install/sources/base.d.ts.map +1 -0
- package/packages/core/dist/core/install/sources/base.js +12 -0
- package/packages/core/dist/core/install/sources/base.js.map +1 -0
- package/packages/core/dist/core/install/sources/git-source.d.ts +11 -0
- package/packages/core/dist/core/install/sources/git-source.d.ts.map +1 -0
- package/packages/core/dist/core/install/sources/git-source.js +132 -0
- package/packages/core/dist/core/install/sources/git-source.js.map +1 -0
- package/packages/core/dist/core/install/sources/loader-factory.d.ts +7 -0
- package/packages/core/dist/core/install/sources/loader-factory.d.ts.map +1 -0
- package/packages/core/dist/core/install/sources/loader-factory.js +24 -0
- package/packages/core/dist/core/install/sources/loader-factory.js.map +1 -0
- package/packages/core/dist/core/install/sources/path-source.d.ts +11 -0
- package/packages/core/dist/core/install/sources/path-source.d.ts.map +1 -0
- package/packages/core/dist/core/install/sources/path-source.js +124 -0
- package/packages/core/dist/core/install/sources/path-source.js.map +1 -0
- package/packages/core/dist/core/install/sources/registry-source.d.ts +11 -0
- package/packages/core/dist/core/install/sources/registry-source.d.ts.map +1 -0
- package/packages/core/dist/core/install/sources/registry-source.js +85 -0
- package/packages/core/dist/core/install/sources/registry-source.js.map +1 -0
- package/packages/core/dist/core/install/sources/workspace-source.d.ts +11 -0
- package/packages/core/dist/core/install/sources/workspace-source.d.ts.map +1 -0
- package/packages/core/dist/core/install/sources/workspace-source.js +78 -0
- package/packages/core/dist/core/install/sources/workspace-source.js.map +1 -0
- package/packages/core/dist/core/install/strategies/base-strategy.d.ts +56 -0
- package/packages/core/dist/core/install/strategies/base-strategy.d.ts.map +1 -0
- package/packages/core/dist/core/install/strategies/base-strategy.js +128 -0
- package/packages/core/dist/core/install/strategies/base-strategy.js.map +1 -0
- package/packages/core/dist/core/install/strategies/conversion-strategy.d.ts +43 -0
- package/packages/core/dist/core/install/strategies/conversion-strategy.d.ts.map +1 -0
- package/packages/core/dist/core/install/strategies/conversion-strategy.js +146 -0
- package/packages/core/dist/core/install/strategies/conversion-strategy.js.map +1 -0
- package/packages/core/dist/core/install/strategies/flow-based-strategy.d.ts +50 -0
- package/packages/core/dist/core/install/strategies/flow-based-strategy.d.ts.map +1 -0
- package/packages/core/dist/core/install/strategies/flow-based-strategy.js +326 -0
- package/packages/core/dist/core/install/strategies/flow-based-strategy.js.map +1 -0
- package/packages/core/dist/core/install/strategies/helpers/flow-helpers.d.ts +12 -0
- package/packages/core/dist/core/install/strategies/helpers/flow-helpers.d.ts.map +1 -0
- package/packages/core/dist/core/install/strategies/helpers/flow-helpers.js +22 -0
- package/packages/core/dist/core/install/strategies/helpers/flow-helpers.js.map +1 -0
- package/packages/core/dist/core/install/strategies/helpers/platform-filtering.d.ts +21 -0
- package/packages/core/dist/core/install/strategies/helpers/platform-filtering.d.ts.map +1 -0
- package/packages/core/dist/core/install/strategies/helpers/platform-filtering.js +53 -0
- package/packages/core/dist/core/install/strategies/helpers/platform-filtering.js.map +1 -0
- package/packages/core/dist/core/install/strategies/helpers/result-converter.d.ts +22 -0
- package/packages/core/dist/core/install/strategies/helpers/result-converter.d.ts.map +1 -0
- package/packages/core/dist/core/install/strategies/helpers/result-converter.js +60 -0
- package/packages/core/dist/core/install/strategies/helpers/result-converter.js.map +1 -0
- package/packages/core/dist/core/install/strategies/helpers/temp-directory.d.ts +45 -0
- package/packages/core/dist/core/install/strategies/helpers/temp-directory.d.ts.map +1 -0
- package/packages/core/dist/core/install/strategies/helpers/temp-directory.js +77 -0
- package/packages/core/dist/core/install/strategies/helpers/temp-directory.js.map +1 -0
- package/packages/core/dist/core/install/strategies/index.d.ts +16 -0
- package/packages/core/dist/core/install/strategies/index.d.ts.map +1 -0
- package/packages/core/dist/core/install/strategies/index.js +18 -0
- package/packages/core/dist/core/install/strategies/index.js.map +1 -0
- package/packages/core/dist/core/install/strategies/strategy-selector.d.ts +20 -0
- package/packages/core/dist/core/install/strategies/strategy-selector.d.ts.map +1 -0
- package/packages/core/dist/core/install/strategies/strategy-selector.js +34 -0
- package/packages/core/dist/core/install/strategies/strategy-selector.js.map +1 -0
- package/packages/core/dist/core/install/strategies/types.d.ts +89 -0
- package/packages/core/dist/core/install/strategies/types.d.ts.map +1 -0
- package/packages/core/dist/core/install/strategies/types.js +7 -0
- package/packages/core/dist/core/install/strategies/types.js.map +1 -0
- package/packages/core/dist/core/install/types.d.ts +12 -0
- package/packages/core/dist/core/install/types.d.ts.map +1 -0
- package/packages/core/dist/core/install/types.js +5 -0
- package/packages/core/dist/core/install/types.js.map +1 -0
- package/packages/core/dist/core/install/unified/context-builders.d.ts +52 -0
- package/packages/core/dist/core/install/unified/context-builders.d.ts.map +1 -0
- package/packages/core/dist/core/install/unified/context-builders.js +396 -0
- package/packages/core/dist/core/install/unified/context-builders.js.map +1 -0
- package/packages/core/dist/core/install/unified/context-helpers.d.ts +22 -0
- package/packages/core/dist/core/install/unified/context-helpers.d.ts.map +1 -0
- package/packages/core/dist/core/install/unified/context-helpers.js +80 -0
- package/packages/core/dist/core/install/unified/context-helpers.js.map +1 -0
- package/packages/core/dist/core/install/unified/context.d.ts +124 -0
- package/packages/core/dist/core/install/unified/context.d.ts.map +1 -0
- package/packages/core/dist/core/install/unified/context.js +2 -0
- package/packages/core/dist/core/install/unified/context.js.map +1 -0
- package/packages/core/dist/core/install/unified/index.d.ts +12 -0
- package/packages/core/dist/core/install/unified/index.d.ts.map +1 -0
- package/packages/core/dist/core/install/unified/index.js +13 -0
- package/packages/core/dist/core/install/unified/index.js.map +1 -0
- package/packages/core/dist/core/install/unified/multi-context-pipeline.d.ts +10 -0
- package/packages/core/dist/core/install/unified/multi-context-pipeline.d.ts.map +1 -0
- package/packages/core/dist/core/install/unified/multi-context-pipeline.js +86 -0
- package/packages/core/dist/core/install/unified/multi-context-pipeline.js.map +1 -0
- package/packages/core/dist/core/install/unified/phases/conflicts.d.ts +7 -0
- package/packages/core/dist/core/install/unified/phases/conflicts.d.ts.map +1 -0
- package/packages/core/dist/core/install/unified/phases/conflicts.js +17 -0
- package/packages/core/dist/core/install/unified/phases/conflicts.js.map +1 -0
- package/packages/core/dist/core/install/unified/phases/convert.d.ts +22 -0
- package/packages/core/dist/core/install/unified/phases/convert.d.ts.map +1 -0
- package/packages/core/dist/core/install/unified/phases/convert.js +228 -0
- package/packages/core/dist/core/install/unified/phases/convert.js.map +1 -0
- package/packages/core/dist/core/install/unified/phases/execute.d.ts +26 -0
- package/packages/core/dist/core/install/unified/phases/execute.d.ts.map +1 -0
- package/packages/core/dist/core/install/unified/phases/execute.js +82 -0
- package/packages/core/dist/core/install/unified/phases/execute.js.map +1 -0
- package/packages/core/dist/core/install/unified/phases/load-package.d.ts +11 -0
- package/packages/core/dist/core/install/unified/phases/load-package.d.ts.map +1 -0
- package/packages/core/dist/core/install/unified/phases/load-package.js +121 -0
- package/packages/core/dist/core/install/unified/phases/load-package.js.map +1 -0
- package/packages/core/dist/core/install/unified/phases/manifest.d.ts +6 -0
- package/packages/core/dist/core/install/unified/phases/manifest.d.ts.map +1 -0
- package/packages/core/dist/core/install/unified/phases/manifest.js +73 -0
- package/packages/core/dist/core/install/unified/phases/manifest.js.map +1 -0
- package/packages/core/dist/core/install/unified/phases/report.d.ts +11 -0
- package/packages/core/dist/core/install/unified/phases/report.d.ts.map +1 -0
- package/packages/core/dist/core/install/unified/phases/report.js +62 -0
- package/packages/core/dist/core/install/unified/phases/report.js.map +1 -0
- package/packages/core/dist/core/install/unified/phases/resolve-dependencies.d.ts +6 -0
- package/packages/core/dist/core/install/unified/phases/resolve-dependencies.d.ts.map +1 -0
- package/packages/core/dist/core/install/unified/phases/resolve-dependencies.js +122 -0
- package/packages/core/dist/core/install/unified/phases/resolve-dependencies.js.map +1 -0
- package/packages/core/dist/core/install/unified/pipeline.d.ts +13 -0
- package/packages/core/dist/core/install/unified/pipeline.d.ts.map +1 -0
- package/packages/core/dist/core/install/unified/pipeline.js +114 -0
- package/packages/core/dist/core/install/unified/pipeline.js.map +1 -0
- package/packages/core/dist/core/install/validators/index.d.ts +3 -0
- package/packages/core/dist/core/install/validators/index.d.ts.map +1 -0
- package/packages/core/dist/core/install/validators/index.js +3 -0
- package/packages/core/dist/core/install/validators/index.js.map +1 -0
- package/packages/core/dist/core/install/validators/options-validator.d.ts +16 -0
- package/packages/core/dist/core/install/validators/options-validator.d.ts.map +1 -0
- package/packages/core/dist/core/install/validators/options-validator.js +28 -0
- package/packages/core/dist/core/install/validators/options-validator.js.map +1 -0
- package/packages/core/dist/core/install/validators/target-validator.d.ts +6 -0
- package/packages/core/dist/core/install/validators/target-validator.d.ts.map +1 -0
- package/packages/core/dist/core/install/validators/target-validator.js +19 -0
- package/packages/core/dist/core/install/validators/target-validator.js.map +1 -0
- package/packages/core/dist/core/install/version-selection.d.ts +51 -0
- package/packages/core/dist/core/install/version-selection.d.ts.map +1 -0
- package/packages/core/dist/core/install/version-selection.js +272 -0
- package/packages/core/dist/core/install/version-selection.js.map +1 -0
- package/packages/core/dist/core/interaction-policy.d.ts +40 -0
- package/packages/core/dist/core/interaction-policy.d.ts.map +1 -0
- package/packages/core/dist/core/interaction-policy.js +60 -0
- package/packages/core/dist/core/interaction-policy.js.map +1 -0
- package/packages/core/dist/core/list/list-pipeline.d.ts +80 -0
- package/packages/core/dist/core/list/list-pipeline.d.ts.map +1 -0
- package/packages/core/dist/core/list/list-pipeline.js +550 -0
- package/packages/core/dist/core/list/list-pipeline.js.map +1 -0
- package/packages/core/dist/core/list/list-printers.d.ts +16 -0
- package/packages/core/dist/core/list/list-printers.d.ts.map +1 -0
- package/packages/core/dist/core/list/list-printers.js +191 -0
- package/packages/core/dist/core/list/list-printers.js.map +1 -0
- package/packages/core/dist/core/list/list-tree-renderer.d.ts +95 -0
- package/packages/core/dist/core/list/list-tree-renderer.d.ts.map +1 -0
- package/packages/core/dist/core/list/list-tree-renderer.js +147 -0
- package/packages/core/dist/core/list/list-tree-renderer.js.map +1 -0
- package/packages/core/dist/core/list/remote-list-resolver.d.ts +22 -0
- package/packages/core/dist/core/list/remote-list-resolver.d.ts.map +1 -0
- package/packages/core/dist/core/list/remote-list-resolver.js +219 -0
- package/packages/core/dist/core/list/remote-list-resolver.js.map +1 -0
- package/packages/core/dist/core/list/scope-data-collector.d.ts +59 -0
- package/packages/core/dist/core/list/scope-data-collector.d.ts.map +1 -0
- package/packages/core/dist/core/list/scope-data-collector.js +307 -0
- package/packages/core/dist/core/list/scope-data-collector.js.map +1 -0
- package/packages/core/dist/core/list/untracked-files-scanner.d.ts +62 -0
- package/packages/core/dist/core/list/untracked-files-scanner.d.ts.map +1 -0
- package/packages/core/dist/core/list/untracked-files-scanner.js +471 -0
- package/packages/core/dist/core/list/untracked-files-scanner.js.map +1 -0
- package/packages/core/dist/core/list/view-metadata.d.ts +12 -0
- package/packages/core/dist/core/list/view-metadata.d.ts.map +1 -0
- package/packages/core/dist/core/list/view-metadata.js +31 -0
- package/packages/core/dist/core/list/view-metadata.js.map +1 -0
- package/packages/core/dist/core/markdown-frontmatter.d.ts +54 -0
- package/packages/core/dist/core/markdown-frontmatter.d.ts.map +1 -0
- package/packages/core/dist/core/markdown-frontmatter.js +224 -0
- package/packages/core/dist/core/markdown-frontmatter.js.map +1 -0
- package/packages/core/dist/core/openpackage.d.ts +46 -0
- package/packages/core/dist/core/openpackage.d.ts.map +1 -0
- package/packages/core/dist/core/openpackage.js +303 -0
- package/packages/core/dist/core/openpackage.js.map +1 -0
- package/packages/core/dist/core/package-context.d.ts +99 -0
- package/packages/core/dist/core/package-context.d.ts.map +1 -0
- package/packages/core/dist/core/package-context.js +220 -0
- package/packages/core/dist/core/package-context.js.map +1 -0
- package/packages/core/dist/core/package-creation.d.ts +45 -0
- package/packages/core/dist/core/package-creation.d.ts.map +1 -0
- package/packages/core/dist/core/package-creation.js +160 -0
- package/packages/core/dist/core/package-creation.js.map +1 -0
- package/packages/core/dist/core/package-management.d.ts +70 -0
- package/packages/core/dist/core/package-management.d.ts.map +1 -0
- package/packages/core/dist/core/package-management.js +416 -0
- package/packages/core/dist/core/package-management.js.map +1 -0
- package/packages/core/dist/core/package-name-resolution.d.ts +110 -0
- package/packages/core/dist/core/package-name-resolution.d.ts.map +1 -0
- package/packages/core/dist/core/package-name-resolution.js +327 -0
- package/packages/core/dist/core/package-name-resolution.js.map +1 -0
- package/packages/core/dist/core/package-versioning.d.ts +37 -0
- package/packages/core/dist/core/package-versioning.d.ts.map +1 -0
- package/packages/core/dist/core/package-versioning.js +107 -0
- package/packages/core/dist/core/package-versioning.js.map +1 -0
- package/packages/core/dist/core/package.d.ts +50 -0
- package/packages/core/dist/core/package.d.ts.map +1 -0
- package/packages/core/dist/core/package.js +243 -0
- package/packages/core/dist/core/package.js.map +1 -0
- package/packages/core/dist/core/platform/directory-preservation.d.ts +52 -0
- package/packages/core/dist/core/platform/directory-preservation.d.ts.map +1 -0
- package/packages/core/dist/core/platform/directory-preservation.js +101 -0
- package/packages/core/dist/core/platform/directory-preservation.js.map +1 -0
- package/packages/core/dist/core/platform/platform-file.d.ts +42 -0
- package/packages/core/dist/core/platform/platform-file.d.ts.map +1 -0
- package/packages/core/dist/core/platform/platform-file.js +133 -0
- package/packages/core/dist/core/platform/platform-file.js.map +1 -0
- package/packages/core/dist/core/platform/platform-mapper.d.ts +74 -0
- package/packages/core/dist/core/platform/platform-mapper.d.ts.map +1 -0
- package/packages/core/dist/core/platform/platform-mapper.js +541 -0
- package/packages/core/dist/core/platform/platform-mapper.js.map +1 -0
- package/packages/core/dist/core/platform/platform-root-files.d.ts +25 -0
- package/packages/core/dist/core/platform/platform-root-files.d.ts.map +1 -0
- package/packages/core/dist/core/platform/platform-root-files.js +44 -0
- package/packages/core/dist/core/platform/platform-root-files.js.map +1 -0
- package/packages/core/dist/core/platform/platform-specific-paths.d.ts +20 -0
- package/packages/core/dist/core/platform/platform-specific-paths.d.ts.map +1 -0
- package/packages/core/dist/core/platform/platform-specific-paths.js +81 -0
- package/packages/core/dist/core/platform/platform-specific-paths.js.map +1 -0
- package/packages/core/dist/core/platform/platform-utils.d.ts +23 -0
- package/packages/core/dist/core/platform/platform-utils.d.ts.map +1 -0
- package/packages/core/dist/core/platform/platform-utils.js +65 -0
- package/packages/core/dist/core/platform/platform-utils.js.map +1 -0
- package/packages/core/dist/core/platform/registry-entry-filter.d.ts +29 -0
- package/packages/core/dist/core/platform/registry-entry-filter.d.ts.map +1 -0
- package/packages/core/dist/core/platform/registry-entry-filter.js +91 -0
- package/packages/core/dist/core/platform/registry-entry-filter.js.map +1 -0
- package/packages/core/dist/core/platform/root-file-uninstaller.d.ts +15 -0
- package/packages/core/dist/core/platform/root-file-uninstaller.d.ts.map +1 -0
- package/packages/core/dist/core/platform/root-file-uninstaller.js +74 -0
- package/packages/core/dist/core/platform/root-file-uninstaller.js.map +1 -0
- package/packages/core/dist/core/platform-yaml-merge.d.ts +9 -0
- package/packages/core/dist/core/platform-yaml-merge.d.ts.map +1 -0
- package/packages/core/dist/core/platform-yaml-merge.js +35 -0
- package/packages/core/dist/core/platform-yaml-merge.js.map +1 -0
- package/packages/core/dist/core/platforms.d.ts +197 -0
- package/packages/core/dist/core/platforms.d.ts.map +1 -0
- package/packages/core/dist/core/platforms.js +939 -0
- package/packages/core/dist/core/platforms.js.map +1 -0
- package/packages/core/dist/core/ports/console-output.d.ts +10 -0
- package/packages/core/dist/core/ports/console-output.d.ts.map +1 -0
- package/packages/core/dist/core/ports/console-output.js +64 -0
- package/packages/core/dist/core/ports/console-output.js.map +1 -0
- package/packages/core/dist/core/ports/console-progress.d.ts +21 -0
- package/packages/core/dist/core/ports/console-progress.d.ts.map +1 -0
- package/packages/core/dist/core/ports/console-progress.js +101 -0
- package/packages/core/dist/core/ports/console-progress.js.map +1 -0
- package/packages/core/dist/core/ports/console-prompt.d.ts +13 -0
- package/packages/core/dist/core/ports/console-prompt.d.ts.map +1 -0
- package/packages/core/dist/core/ports/console-prompt.js +32 -0
- package/packages/core/dist/core/ports/console-prompt.js.map +1 -0
- package/packages/core/dist/core/ports/index.d.ts +15 -0
- package/packages/core/dist/core/ports/index.d.ts.map +1 -0
- package/packages/core/dist/core/ports/index.js +12 -0
- package/packages/core/dist/core/ports/index.js.map +1 -0
- package/packages/core/dist/core/ports/output.d.ts +50 -0
- package/packages/core/dist/core/ports/output.d.ts.map +1 -0
- package/packages/core/dist/core/ports/output.js +13 -0
- package/packages/core/dist/core/ports/output.js.map +1 -0
- package/packages/core/dist/core/ports/progress.d.ts +131 -0
- package/packages/core/dist/core/ports/progress.d.ts.map +1 -0
- package/packages/core/dist/core/ports/progress.js +19 -0
- package/packages/core/dist/core/ports/progress.js.map +1 -0
- package/packages/core/dist/core/ports/prompt.d.ts +64 -0
- package/packages/core/dist/core/ports/prompt.d.ts.map +1 -0
- package/packages/core/dist/core/ports/prompt.js +14 -0
- package/packages/core/dist/core/ports/prompt.js.map +1 -0
- package/packages/core/dist/core/ports/resolve.d.ts +50 -0
- package/packages/core/dist/core/ports/resolve.d.ts.map +1 -0
- package/packages/core/dist/core/ports/resolve.js +64 -0
- package/packages/core/dist/core/ports/resolve.js.map +1 -0
- package/packages/core/dist/core/profiles.d.ts +54 -0
- package/packages/core/dist/core/profiles.d.ts.map +1 -0
- package/packages/core/dist/core/profiles.js +230 -0
- package/packages/core/dist/core/profiles.js.map +1 -0
- package/packages/core/dist/core/publish/local-publish-pipeline.d.ts +17 -0
- package/packages/core/dist/core/publish/local-publish-pipeline.d.ts.map +1 -0
- package/packages/core/dist/core/publish/local-publish-pipeline.js +162 -0
- package/packages/core/dist/core/publish/local-publish-pipeline.js.map +1 -0
- package/packages/core/dist/core/publish/publish-errors.d.ts +8 -0
- package/packages/core/dist/core/publish/publish-errors.d.ts.map +1 -0
- package/packages/core/dist/core/publish/publish-errors.js +57 -0
- package/packages/core/dist/core/publish/publish-errors.js.map +1 -0
- package/packages/core/dist/core/publish/publish-output.d.ts +29 -0
- package/packages/core/dist/core/publish/publish-output.d.ts.map +1 -0
- package/packages/core/dist/core/publish/publish-output.js +62 -0
- package/packages/core/dist/core/publish/publish-output.js.map +1 -0
- package/packages/core/dist/core/publish/publish-pipeline.d.ts +7 -0
- package/packages/core/dist/core/publish/publish-pipeline.d.ts.map +1 -0
- package/packages/core/dist/core/publish/publish-pipeline.js +238 -0
- package/packages/core/dist/core/publish/publish-pipeline.js.map +1 -0
- package/packages/core/dist/core/publish/publish-types.d.ts +18 -0
- package/packages/core/dist/core/publish/publish-types.d.ts.map +1 -0
- package/packages/core/dist/core/publish/publish-types.js +2 -0
- package/packages/core/dist/core/publish/publish-types.js.map +1 -0
- package/packages/core/dist/core/publish/publish-upload.d.ts +9 -0
- package/packages/core/dist/core/publish/publish-upload.d.ts.map +1 -0
- package/packages/core/dist/core/publish/publish-upload.js +51 -0
- package/packages/core/dist/core/publish/publish-upload.js.map +1 -0
- package/packages/core/dist/core/registry-writer.d.ts +22 -0
- package/packages/core/dist/core/registry-writer.d.ts.map +1 -0
- package/packages/core/dist/core/registry-writer.js +93 -0
- package/packages/core/dist/core/registry-writer.js.map +1 -0
- package/packages/core/dist/core/remote-pull.d.ts +93 -0
- package/packages/core/dist/core/remote-pull.d.ts.map +1 -0
- package/packages/core/dist/core/remote-pull.js +514 -0
- package/packages/core/dist/core/remote-pull.js.map +1 -0
- package/packages/core/dist/core/remove/removal-collector.d.ts +13 -0
- package/packages/core/dist/core/remove/removal-collector.d.ts.map +1 -0
- package/packages/core/dist/core/remove/removal-collector.js +52 -0
- package/packages/core/dist/core/remove/removal-collector.js.map +1 -0
- package/packages/core/dist/core/remove/removal-confirmation.d.ts +26 -0
- package/packages/core/dist/core/remove/removal-confirmation.d.ts.map +1 -0
- package/packages/core/dist/core/remove/removal-confirmation.js +30 -0
- package/packages/core/dist/core/remove/removal-confirmation.js.map +1 -0
- package/packages/core/dist/core/remove/remove-dependency-flow.d.ts +18 -0
- package/packages/core/dist/core/remove/remove-dependency-flow.d.ts.map +1 -0
- package/packages/core/dist/core/remove/remove-dependency-flow.js +23 -0
- package/packages/core/dist/core/remove/remove-dependency-flow.js.map +1 -0
- package/packages/core/dist/core/remove/remove-from-source-pipeline.d.ts +32 -0
- package/packages/core/dist/core/remove/remove-from-source-pipeline.d.ts.map +1 -0
- package/packages/core/dist/core/remove/remove-from-source-pipeline.js +260 -0
- package/packages/core/dist/core/remove/remove-from-source-pipeline.js.map +1 -0
- package/packages/core/dist/core/remove/remove-input-classifier.d.ts +22 -0
- package/packages/core/dist/core/remove/remove-input-classifier.d.ts.map +1 -0
- package/packages/core/dist/core/remove/remove-input-classifier.js +53 -0
- package/packages/core/dist/core/remove/remove-input-classifier.js.map +1 -0
- package/packages/core/dist/core/resources/disambiguation-prompt.d.ts +38 -0
- package/packages/core/dist/core/resources/disambiguation-prompt.d.ts.map +1 -0
- package/packages/core/dist/core/resources/disambiguation-prompt.js +60 -0
- package/packages/core/dist/core/resources/disambiguation-prompt.js.map +1 -0
- package/packages/core/dist/core/resources/installed-resources.d.ts +4 -0
- package/packages/core/dist/core/resources/installed-resources.d.ts.map +1 -0
- package/packages/core/dist/core/resources/installed-resources.js +35 -0
- package/packages/core/dist/core/resources/installed-resources.js.map +1 -0
- package/packages/core/dist/core/resources/markdown-metadata.d.ts +7 -0
- package/packages/core/dist/core/resources/markdown-metadata.d.ts.map +1 -0
- package/packages/core/dist/core/resources/markdown-metadata.js +24 -0
- package/packages/core/dist/core/resources/markdown-metadata.js.map +1 -0
- package/packages/core/dist/core/resources/resource-builder.d.ts +52 -0
- package/packages/core/dist/core/resources/resource-builder.d.ts.map +1 -0
- package/packages/core/dist/core/resources/resource-builder.js +140 -0
- package/packages/core/dist/core/resources/resource-builder.js.map +1 -0
- package/packages/core/dist/core/resources/resource-catalog.d.ts +26 -0
- package/packages/core/dist/core/resources/resource-catalog.d.ts.map +1 -0
- package/packages/core/dist/core/resources/resource-catalog.js +20 -0
- package/packages/core/dist/core/resources/resource-catalog.js.map +1 -0
- package/packages/core/dist/core/resources/resource-namespace.d.ts +25 -0
- package/packages/core/dist/core/resources/resource-namespace.d.ts.map +1 -0
- package/packages/core/dist/core/resources/resource-namespace.js +84 -0
- package/packages/core/dist/core/resources/resource-namespace.js.map +1 -0
- package/packages/core/dist/core/resources/resource-naming.d.ts +11 -0
- package/packages/core/dist/core/resources/resource-naming.d.ts.map +1 -0
- package/packages/core/dist/core/resources/resource-naming.js +29 -0
- package/packages/core/dist/core/resources/resource-naming.js.map +1 -0
- package/packages/core/dist/core/resources/resource-registry.d.ts +14 -0
- package/packages/core/dist/core/resources/resource-registry.d.ts.map +1 -0
- package/packages/core/dist/core/resources/resource-registry.js +43 -0
- package/packages/core/dist/core/resources/resource-registry.js.map +1 -0
- package/packages/core/dist/core/resources/resource-resolver.d.ts +42 -0
- package/packages/core/dist/core/resources/resource-resolver.d.ts.map +1 -0
- package/packages/core/dist/core/resources/resource-resolver.js +67 -0
- package/packages/core/dist/core/resources/resource-resolver.js.map +1 -0
- package/packages/core/dist/core/resources/scope-traversal.d.ts +37 -0
- package/packages/core/dist/core/resources/scope-traversal.d.ts.map +1 -0
- package/packages/core/dist/core/resources/scope-traversal.js +52 -0
- package/packages/core/dist/core/resources/scope-traversal.js.map +1 -0
- package/packages/core/dist/core/resources/source-key-classifier.d.ts +6 -0
- package/packages/core/dist/core/resources/source-key-classifier.d.ts.map +1 -0
- package/packages/core/dist/core/resources/source-key-classifier.js +22 -0
- package/packages/core/dist/core/resources/source-key-classifier.js.map +1 -0
- package/packages/core/dist/core/save/save-candidate-builder.d.ts +57 -0
- package/packages/core/dist/core/save/save-candidate-builder.d.ts.map +1 -0
- package/packages/core/dist/core/save/save-candidate-builder.js +293 -0
- package/packages/core/dist/core/save/save-candidate-builder.js.map +1 -0
- package/packages/core/dist/core/save/save-conflict-analyzer.d.ts +120 -0
- package/packages/core/dist/core/save/save-conflict-analyzer.d.ts.map +1 -0
- package/packages/core/dist/core/save/save-conflict-analyzer.js +305 -0
- package/packages/core/dist/core/save/save-conflict-analyzer.js.map +1 -0
- package/packages/core/dist/core/save/save-conversion-helper.d.ts +84 -0
- package/packages/core/dist/core/save/save-conversion-helper.d.ts.map +1 -0
- package/packages/core/dist/core/save/save-conversion-helper.js +522 -0
- package/packages/core/dist/core/save/save-conversion-helper.js.map +1 -0
- package/packages/core/dist/core/save/save-group-builder.d.ts +49 -0
- package/packages/core/dist/core/save/save-group-builder.d.ts.map +1 -0
- package/packages/core/dist/core/save/save-group-builder.js +233 -0
- package/packages/core/dist/core/save/save-group-builder.js.map +1 -0
- package/packages/core/dist/core/save/save-interactive-resolver.d.ts +73 -0
- package/packages/core/dist/core/save/save-interactive-resolver.d.ts.map +1 -0
- package/packages/core/dist/core/save/save-interactive-resolver.js +300 -0
- package/packages/core/dist/core/save/save-interactive-resolver.js.map +1 -0
- package/packages/core/dist/core/save/save-merge-extractor.d.ts +61 -0
- package/packages/core/dist/core/save/save-merge-extractor.d.ts.map +1 -0
- package/packages/core/dist/core/save/save-merge-extractor.js +272 -0
- package/packages/core/dist/core/save/save-merge-extractor.js.map +1 -0
- package/packages/core/dist/core/save/save-platform-handler.d.ts +51 -0
- package/packages/core/dist/core/save/save-platform-handler.d.ts.map +1 -0
- package/packages/core/dist/core/save/save-platform-handler.js +93 -0
- package/packages/core/dist/core/save/save-platform-handler.js.map +1 -0
- package/packages/core/dist/core/save/save-resolution-executor.d.ts +40 -0
- package/packages/core/dist/core/save/save-resolution-executor.d.ts.map +1 -0
- package/packages/core/dist/core/save/save-resolution-executor.js +197 -0
- package/packages/core/dist/core/save/save-resolution-executor.js.map +1 -0
- package/packages/core/dist/core/save/save-result-reporter.d.ts +109 -0
- package/packages/core/dist/core/save/save-result-reporter.d.ts.map +1 -0
- package/packages/core/dist/core/save/save-result-reporter.js +176 -0
- package/packages/core/dist/core/save/save-result-reporter.js.map +1 -0
- package/packages/core/dist/core/save/save-to-source-pipeline.d.ts +45 -0
- package/packages/core/dist/core/save/save-to-source-pipeline.d.ts.map +1 -0
- package/packages/core/dist/core/save/save-to-source-pipeline.js +234 -0
- package/packages/core/dist/core/save/save-to-source-pipeline.js.map +1 -0
- package/packages/core/dist/core/save/save-types.d.ts +157 -0
- package/packages/core/dist/core/save/save-types.d.ts.map +1 -0
- package/packages/core/dist/core/save/save-types.js +8 -0
- package/packages/core/dist/core/save/save-types.js.map +1 -0
- package/packages/core/dist/core/save/save-write-coordinator.d.ts +36 -0
- package/packages/core/dist/core/save/save-write-coordinator.d.ts.map +1 -0
- package/packages/core/dist/core/save/save-write-coordinator.js +571 -0
- package/packages/core/dist/core/save/save-write-coordinator.js.map +1 -0
- package/packages/core/dist/core/scope-resolution.d.ts +64 -0
- package/packages/core/dist/core/scope-resolution.d.ts.map +1 -0
- package/packages/core/dist/core/scope-resolution.js +143 -0
- package/packages/core/dist/core/scope-resolution.js.map +1 -0
- package/packages/core/dist/core/scoping/package-scoping.d.ts +35 -0
- package/packages/core/dist/core/scoping/package-scoping.d.ts.map +1 -0
- package/packages/core/dist/core/scoping/package-scoping.js +234 -0
- package/packages/core/dist/core/scoping/package-scoping.js.map +1 -0
- package/packages/core/dist/core/search/search-pipeline.d.ts +55 -0
- package/packages/core/dist/core/search/search-pipeline.d.ts.map +1 -0
- package/packages/core/dist/core/search/search-pipeline.js +120 -0
- package/packages/core/dist/core/search/search-pipeline.js.map +1 -0
- package/packages/core/dist/core/set/set-output.d.ts +23 -0
- package/packages/core/dist/core/set/set-output.d.ts.map +1 -0
- package/packages/core/dist/core/set/set-output.js +77 -0
- package/packages/core/dist/core/set/set-output.js.map +1 -0
- package/packages/core/dist/core/set/set-pipeline.d.ts +13 -0
- package/packages/core/dist/core/set/set-pipeline.d.ts.map +1 -0
- package/packages/core/dist/core/set/set-pipeline.js +334 -0
- package/packages/core/dist/core/set/set-pipeline.js.map +1 -0
- package/packages/core/dist/core/set/set-types.d.ts +50 -0
- package/packages/core/dist/core/set/set-types.d.ts.map +1 -0
- package/packages/core/dist/core/set/set-types.js +5 -0
- package/packages/core/dist/core/set/set-types.js.map +1 -0
- package/packages/core/dist/core/source-mutability.d.ts +6 -0
- package/packages/core/dist/core/source-mutability.d.ts.map +1 -0
- package/packages/core/dist/core/source-mutability.js +15 -0
- package/packages/core/dist/core/source-mutability.js.map +1 -0
- package/packages/core/dist/core/source-resolution/dependency-graph.d.ts +8 -0
- package/packages/core/dist/core/source-resolution/dependency-graph.d.ts.map +1 -0
- package/packages/core/dist/core/source-resolution/dependency-graph.js +115 -0
- package/packages/core/dist/core/source-resolution/dependency-graph.js.map +1 -0
- package/packages/core/dist/core/source-resolution/resolve-mutable-source.d.ts +31 -0
- package/packages/core/dist/core/source-resolution/resolve-mutable-source.d.ts.map +1 -0
- package/packages/core/dist/core/source-resolution/resolve-mutable-source.js +110 -0
- package/packages/core/dist/core/source-resolution/resolve-mutable-source.js.map +1 -0
- package/packages/core/dist/core/source-resolution/resolve-package-source.d.ts +3 -0
- package/packages/core/dist/core/source-resolution/resolve-package-source.d.ts.map +1 -0
- package/packages/core/dist/core/source-resolution/resolve-package-source.js +29 -0
- package/packages/core/dist/core/source-resolution/resolve-package-source.js.map +1 -0
- package/packages/core/dist/core/source-resolution/resolve-registry-version.d.ts +31 -0
- package/packages/core/dist/core/source-resolution/resolve-registry-version.d.ts.map +1 -0
- package/packages/core/dist/core/source-resolution/resolve-registry-version.js +47 -0
- package/packages/core/dist/core/source-resolution/resolve-registry-version.js.map +1 -0
- package/packages/core/dist/core/source-resolution/types.d.ts +39 -0
- package/packages/core/dist/core/source-resolution/types.d.ts.map +1 -0
- package/packages/core/dist/core/source-resolution/types.js +2 -0
- package/packages/core/dist/core/source-resolution/types.js.map +1 -0
- package/packages/core/dist/core/telemetry.d.ts +59 -0
- package/packages/core/dist/core/telemetry.d.ts.map +1 -0
- package/packages/core/dist/core/telemetry.js +166 -0
- package/packages/core/dist/core/telemetry.js.map +1 -0
- package/packages/core/dist/core/uninstall/direct-uninstall-flow.d.ts +37 -0
- package/packages/core/dist/core/uninstall/direct-uninstall-flow.d.ts.map +1 -0
- package/packages/core/dist/core/uninstall/direct-uninstall-flow.js +88 -0
- package/packages/core/dist/core/uninstall/direct-uninstall-flow.js.map +1 -0
- package/packages/core/dist/core/uninstall/flow-aware-uninstaller.d.ts +34 -0
- package/packages/core/dist/core/uninstall/flow-aware-uninstaller.d.ts.map +1 -0
- package/packages/core/dist/core/uninstall/flow-aware-uninstaller.js +189 -0
- package/packages/core/dist/core/uninstall/flow-aware-uninstaller.js.map +1 -0
- package/packages/core/dist/core/uninstall/uninstall-executor.d.ts +15 -0
- package/packages/core/dist/core/uninstall/uninstall-executor.d.ts.map +1 -0
- package/packages/core/dist/core/uninstall/uninstall-executor.js +85 -0
- package/packages/core/dist/core/uninstall/uninstall-executor.js.map +1 -0
- package/packages/core/dist/core/uninstall/uninstall-pipeline.d.ts +8 -0
- package/packages/core/dist/core/uninstall/uninstall-pipeline.d.ts.map +1 -0
- package/packages/core/dist/core/uninstall/uninstall-pipeline.js +178 -0
- package/packages/core/dist/core/uninstall/uninstall-pipeline.js.map +1 -0
- package/packages/core/dist/core/uninstall/uninstall-reporter.d.ts +26 -0
- package/packages/core/dist/core/uninstall/uninstall-reporter.d.ts.map +1 -0
- package/packages/core/dist/core/uninstall/uninstall-reporter.js +76 -0
- package/packages/core/dist/core/uninstall/uninstall-reporter.js.map +1 -0
- package/packages/core/dist/core/uninstall/workspace-resource-collector.d.ts +68 -0
- package/packages/core/dist/core/uninstall/workspace-resource-collector.d.ts.map +1 -0
- package/packages/core/dist/core/uninstall/workspace-resource-collector.js +221 -0
- package/packages/core/dist/core/uninstall/workspace-resource-collector.js.map +1 -0
- package/packages/core/dist/core/universal-patterns.d.ts +26 -0
- package/packages/core/dist/core/universal-patterns.d.ts.map +1 -0
- package/packages/core/dist/core/universal-patterns.js +64 -0
- package/packages/core/dist/core/universal-patterns.js.map +1 -0
- package/packages/core/dist/core/unpublish/interactive-unpublish-flow.d.ts +33 -0
- package/packages/core/dist/core/unpublish/interactive-unpublish-flow.d.ts.map +1 -0
- package/packages/core/dist/core/unpublish/interactive-unpublish-flow.js +118 -0
- package/packages/core/dist/core/unpublish/interactive-unpublish-flow.js.map +1 -0
- package/packages/core/dist/core/unpublish/local-unpublish-pipeline.d.ts +8 -0
- package/packages/core/dist/core/unpublish/local-unpublish-pipeline.d.ts.map +1 -0
- package/packages/core/dist/core/unpublish/local-unpublish-pipeline.js +174 -0
- package/packages/core/dist/core/unpublish/local-unpublish-pipeline.js.map +1 -0
- package/packages/core/dist/core/unpublish/unpublish-output.d.ts +7 -0
- package/packages/core/dist/core/unpublish/unpublish-output.d.ts.map +1 -0
- package/packages/core/dist/core/unpublish/unpublish-output.js +27 -0
- package/packages/core/dist/core/unpublish/unpublish-output.js.map +1 -0
- package/packages/core/dist/core/unpublish/unpublish-pipeline.d.ts +6 -0
- package/packages/core/dist/core/unpublish/unpublish-pipeline.d.ts.map +1 -0
- package/packages/core/dist/core/unpublish/unpublish-pipeline.js +17 -0
- package/packages/core/dist/core/unpublish/unpublish-pipeline.js.map +1 -0
- package/packages/core/dist/core/unpublish/unpublish-types.d.ts +17 -0
- package/packages/core/dist/core/unpublish/unpublish-types.d.ts.map +1 -0
- package/packages/core/dist/core/unpublish/unpublish-types.js +2 -0
- package/packages/core/dist/core/unpublish/unpublish-types.js.map +1 -0
- package/packages/core/dist/core/view/view-helpers.d.ts +17 -0
- package/packages/core/dist/core/view/view-helpers.d.ts.map +1 -0
- package/packages/core/dist/core/view/view-helpers.js +32 -0
- package/packages/core/dist/core/view/view-helpers.js.map +1 -0
- package/packages/core/dist/core/view/view-pipeline.d.ts +71 -0
- package/packages/core/dist/core/view/view-pipeline.d.ts.map +1 -0
- package/packages/core/dist/core/view/view-pipeline.js +267 -0
- package/packages/core/dist/core/view/view-pipeline.js.map +1 -0
- package/packages/core/dist/core/view/view-printers.d.ts +21 -0
- package/packages/core/dist/core/view/view-printers.d.ts.map +1 -0
- package/packages/core/dist/core/view/view-printers.js +124 -0
- package/packages/core/dist/core/view/view-printers.js.map +1 -0
- package/packages/core/dist/core/workspace-package-context.d.ts +54 -0
- package/packages/core/dist/core/workspace-package-context.d.ts.map +1 -0
- package/packages/core/dist/core/workspace-package-context.js +68 -0
- package/packages/core/dist/core/workspace-package-context.js.map +1 -0
- package/packages/core/dist/generated/version.d.ts +2 -0
- package/packages/core/dist/generated/version.d.ts.map +1 -0
- package/packages/core/dist/generated/version.js +3 -0
- package/packages/core/dist/generated/version.js.map +1 -0
- package/packages/core/dist/index.d.ts +48 -0
- package/packages/core/dist/index.d.ts.map +1 -0
- package/packages/core/dist/index.js +72 -0
- package/packages/core/dist/index.js.map +1 -0
- package/packages/core/dist/types/api.d.ts +47 -0
- package/packages/core/dist/types/api.d.ts.map +1 -0
- package/packages/core/dist/types/api.js +5 -0
- package/packages/core/dist/types/api.js.map +1 -0
- package/packages/core/dist/types/conversion-context.d.ts +175 -0
- package/packages/core/dist/types/conversion-context.d.ts.map +1 -0
- package/packages/core/dist/types/conversion-context.js +11 -0
- package/packages/core/dist/types/conversion-context.js.map +1 -0
- package/packages/core/dist/types/execution-context.d.ts +122 -0
- package/packages/core/dist/types/execution-context.d.ts.map +1 -0
- package/packages/core/dist/types/execution-context.js +8 -0
- package/packages/core/dist/types/execution-context.js.map +1 -0
- package/packages/core/dist/types/flows.d.ts +360 -0
- package/packages/core/dist/types/flows.d.ts.map +1 -0
- package/packages/core/dist/types/flows.js +8 -0
- package/packages/core/dist/types/flows.js.map +1 -0
- package/packages/core/dist/types/index.d.ts +271 -0
- package/packages/core/dist/types/index.d.ts.map +1 -0
- package/packages/core/dist/types/index.js +36 -0
- package/packages/core/dist/types/index.js.map +1 -0
- package/packages/core/dist/types/install.d.ts +5 -0
- package/packages/core/dist/types/install.d.ts.map +1 -0
- package/packages/core/dist/types/install.js +5 -0
- package/packages/core/dist/types/install.js.map +1 -0
- package/packages/core/dist/types/platform-flows.d.ts +349 -0
- package/packages/core/dist/types/platform-flows.d.ts.map +1 -0
- package/packages/core/dist/types/platform-flows.js +8 -0
- package/packages/core/dist/types/platform-flows.js.map +1 -0
- package/packages/core/dist/types/platform.d.ts +32 -0
- package/packages/core/dist/types/platform.d.ts.map +1 -0
- package/packages/core/dist/types/platform.js +6 -0
- package/packages/core/dist/types/platform.js.map +1 -0
- package/packages/core/dist/types/resources.d.ts +14 -0
- package/packages/core/dist/types/resources.d.ts.map +1 -0
- package/packages/core/dist/types/resources.js +5 -0
- package/packages/core/dist/types/resources.js.map +1 -0
- package/packages/core/dist/types/workspace-index.d.ts +60 -0
- package/packages/core/dist/types/workspace-index.d.ts.map +1 -0
- package/packages/core/dist/types/workspace-index.js +6 -0
- package/packages/core/dist/types/workspace-index.js.map +1 -0
- package/packages/core/dist/utils/cleanup-empty-parents.d.ts +20 -0
- package/packages/core/dist/utils/cleanup-empty-parents.d.ts.map +1 -0
- package/packages/core/dist/utils/cleanup-empty-parents.js +56 -0
- package/packages/core/dist/utils/cleanup-empty-parents.js.map +1 -0
- package/packages/core/dist/utils/custom-path-resolution.d.ts +69 -0
- package/packages/core/dist/utils/custom-path-resolution.d.ts.map +1 -0
- package/packages/core/dist/utils/custom-path-resolution.js +160 -0
- package/packages/core/dist/utils/custom-path-resolution.js.map +1 -0
- package/packages/core/dist/utils/entity-detector.d.ts +33 -0
- package/packages/core/dist/utils/entity-detector.d.ts.map +1 -0
- package/packages/core/dist/utils/entity-detector.js +78 -0
- package/packages/core/dist/utils/entity-detector.js.map +1 -0
- package/packages/core/dist/utils/error-reasons.d.ts +9 -0
- package/packages/core/dist/utils/error-reasons.d.ts.map +1 -0
- package/packages/core/dist/utils/error-reasons.js +51 -0
- package/packages/core/dist/utils/error-reasons.js.map +1 -0
- package/packages/core/dist/utils/errors.d.ts +36 -0
- package/packages/core/dist/utils/errors.d.ts.map +1 -0
- package/packages/core/dist/utils/errors.js +73 -0
- package/packages/core/dist/utils/errors.js.map +1 -0
- package/packages/core/dist/utils/expand-directory-selections.d.ts +37 -0
- package/packages/core/dist/utils/expand-directory-selections.d.ts.map +1 -0
- package/packages/core/dist/utils/expand-directory-selections.js +101 -0
- package/packages/core/dist/utils/expand-directory-selections.js.map +1 -0
- package/packages/core/dist/utils/file-processing.d.ts +26 -0
- package/packages/core/dist/utils/file-processing.d.ts.map +1 -0
- package/packages/core/dist/utils/file-processing.js +91 -0
- package/packages/core/dist/utils/file-processing.js.map +1 -0
- package/packages/core/dist/utils/file-scanner.d.ts +62 -0
- package/packages/core/dist/utils/file-scanner.d.ts.map +1 -0
- package/packages/core/dist/utils/file-scanner.js +168 -0
- package/packages/core/dist/utils/file-scanner.js.map +1 -0
- package/packages/core/dist/utils/file-walker.d.ts +69 -0
- package/packages/core/dist/utils/file-walker.d.ts.map +1 -0
- package/packages/core/dist/utils/file-walker.js +144 -0
- package/packages/core/dist/utils/file-walker.js.map +1 -0
- package/packages/core/dist/utils/formatters.d.ts +93 -0
- package/packages/core/dist/utils/formatters.d.ts.map +1 -0
- package/packages/core/dist/utils/formatters.js +196 -0
- package/packages/core/dist/utils/formatters.js.map +1 -0
- package/packages/core/dist/utils/fs.d.ts +94 -0
- package/packages/core/dist/utils/fs.d.ts.map +1 -0
- package/packages/core/dist/utils/fs.js +362 -0
- package/packages/core/dist/utils/fs.js.map +1 -0
- package/packages/core/dist/utils/git-cache.d.ts +91 -0
- package/packages/core/dist/utils/git-cache.d.ts.map +1 -0
- package/packages/core/dist/utils/git-cache.js +196 -0
- package/packages/core/dist/utils/git-cache.js.map +1 -0
- package/packages/core/dist/utils/git-spec.d.ts +19 -0
- package/packages/core/dist/utils/git-spec.d.ts.map +1 -0
- package/packages/core/dist/utils/git-spec.js +96 -0
- package/packages/core/dist/utils/git-spec.js.map +1 -0
- package/packages/core/dist/utils/git-url-detection.d.ts +92 -0
- package/packages/core/dist/utils/git-url-detection.d.ts.map +1 -0
- package/packages/core/dist/utils/git-url-detection.js +327 -0
- package/packages/core/dist/utils/git-url-detection.js.map +1 -0
- package/packages/core/dist/utils/git-url-parser.d.ts +53 -0
- package/packages/core/dist/utils/git-url-parser.d.ts.map +1 -0
- package/packages/core/dist/utils/git-url-parser.js +113 -0
- package/packages/core/dist/utils/git-url-parser.js.map +1 -0
- package/packages/core/dist/utils/hash-utils.d.ts +14 -0
- package/packages/core/dist/utils/hash-utils.d.ts.map +1 -0
- package/packages/core/dist/utils/hash-utils.js +40 -0
- package/packages/core/dist/utils/hash-utils.js.map +1 -0
- package/packages/core/dist/utils/home-directory.d.ts +41 -0
- package/packages/core/dist/utils/home-directory.d.ts.map +1 -0
- package/packages/core/dist/utils/home-directory.js +71 -0
- package/packages/core/dist/utils/home-directory.js.map +1 -0
- package/packages/core/dist/utils/ini.d.ts +43 -0
- package/packages/core/dist/utils/ini.d.ts.map +1 -0
- package/packages/core/dist/utils/ini.js +120 -0
- package/packages/core/dist/utils/ini.js.map +1 -0
- package/packages/core/dist/utils/install-error-messages.d.ts +32 -0
- package/packages/core/dist/utils/install-error-messages.d.ts.map +1 -0
- package/packages/core/dist/utils/install-error-messages.js +176 -0
- package/packages/core/dist/utils/install-error-messages.js.map +1 -0
- package/packages/core/dist/utils/install-helpers.d.ts +6 -0
- package/packages/core/dist/utils/install-helpers.d.ts.map +1 -0
- package/packages/core/dist/utils/install-helpers.js +6 -0
- package/packages/core/dist/utils/install-helpers.js.map +1 -0
- package/packages/core/dist/utils/jsonc.d.ts +18 -0
- package/packages/core/dist/utils/jsonc.d.ts.map +1 -0
- package/packages/core/dist/utils/jsonc.js +79 -0
- package/packages/core/dist/utils/jsonc.js.map +1 -0
- package/packages/core/dist/utils/logger.d.ts +19 -0
- package/packages/core/dist/utils/logger.d.ts.map +1 -0
- package/packages/core/dist/utils/logger.js +78 -0
- package/packages/core/dist/utils/logger.js.map +1 -0
- package/packages/core/dist/utils/manifest-paths.d.ts +10 -0
- package/packages/core/dist/utils/manifest-paths.d.ts.map +1 -0
- package/packages/core/dist/utils/manifest-paths.js +19 -0
- package/packages/core/dist/utils/manifest-paths.js.map +1 -0
- package/packages/core/dist/utils/package-copy.d.ts +40 -0
- package/packages/core/dist/utils/package-copy.d.ts.map +1 -0
- package/packages/core/dist/utils/package-copy.js +101 -0
- package/packages/core/dist/utils/package-copy.js.map +1 -0
- package/packages/core/dist/utils/package-filters.d.ts +2 -0
- package/packages/core/dist/utils/package-filters.d.ts.map +1 -0
- package/packages/core/dist/utils/package-filters.js +29 -0
- package/packages/core/dist/utils/package-filters.js.map +1 -0
- package/packages/core/dist/utils/package-index-yml.d.ts +26 -0
- package/packages/core/dist/utils/package-index-yml.d.ts.map +1 -0
- package/packages/core/dist/utils/package-index-yml.js +172 -0
- package/packages/core/dist/utils/package-index-yml.js.map +1 -0
- package/packages/core/dist/utils/package-merge.d.ts +13 -0
- package/packages/core/dist/utils/package-merge.d.ts.map +1 -0
- package/packages/core/dist/utils/package-merge.js +48 -0
- package/packages/core/dist/utils/package-merge.js.map +1 -0
- package/packages/core/dist/utils/package-name.d.ts +84 -0
- package/packages/core/dist/utils/package-name.d.ts.map +1 -0
- package/packages/core/dist/utils/package-name.js +265 -0
- package/packages/core/dist/utils/package-name.js.map +1 -0
- package/packages/core/dist/utils/package-yml.d.ts +11 -0
- package/packages/core/dist/utils/package-yml.d.ts.map +1 -0
- package/packages/core/dist/utils/package-yml.js +280 -0
- package/packages/core/dist/utils/package-yml.js.map +1 -0
- package/packages/core/dist/utils/package.d.ts +5 -0
- package/packages/core/dist/utils/package.d.ts.map +1 -0
- package/packages/core/dist/utils/package.js +8 -0
- package/packages/core/dist/utils/package.js.map +1 -0
- package/packages/core/dist/utils/path-comparison.d.ts +52 -0
- package/packages/core/dist/utils/path-comparison.d.ts.map +1 -0
- package/packages/core/dist/utils/path-comparison.js +110 -0
- package/packages/core/dist/utils/path-comparison.js.map +1 -0
- package/packages/core/dist/utils/path-normalization.d.ts +54 -0
- package/packages/core/dist/utils/path-normalization.d.ts.map +1 -0
- package/packages/core/dist/utils/path-normalization.js +116 -0
- package/packages/core/dist/utils/path-normalization.js.map +1 -0
- package/packages/core/dist/utils/path-resolution.d.ts +36 -0
- package/packages/core/dist/utils/path-resolution.d.ts.map +1 -0
- package/packages/core/dist/utils/path-resolution.js +106 -0
- package/packages/core/dist/utils/path-resolution.js.map +1 -0
- package/packages/core/dist/utils/paths.d.ts +35 -0
- package/packages/core/dist/utils/paths.d.ts.map +1 -0
- package/packages/core/dist/utils/paths.js +70 -0
- package/packages/core/dist/utils/paths.js.map +1 -0
- package/packages/core/dist/utils/pattern-matcher.d.ts +66 -0
- package/packages/core/dist/utils/pattern-matcher.d.ts.map +1 -0
- package/packages/core/dist/utils/pattern-matcher.js +195 -0
- package/packages/core/dist/utils/pattern-matcher.js.map +1 -0
- package/packages/core/dist/utils/platform-yaml-merge.d.ts +6 -0
- package/packages/core/dist/utils/platform-yaml-merge.d.ts.map +1 -0
- package/packages/core/dist/utils/platform-yaml-merge.js +6 -0
- package/packages/core/dist/utils/platform-yaml-merge.js.map +1 -0
- package/packages/core/dist/utils/plugin-naming.d.ts +160 -0
- package/packages/core/dist/utils/plugin-naming.d.ts.map +1 -0
- package/packages/core/dist/utils/plugin-naming.js +401 -0
- package/packages/core/dist/utils/plugin-naming.js.map +1 -0
- package/packages/core/dist/utils/resolution-mode.d.ts +10 -0
- package/packages/core/dist/utils/resolution-mode.d.ts.map +1 -0
- package/packages/core/dist/utils/resolution-mode.js +16 -0
- package/packages/core/dist/utils/resolution-mode.js.map +1 -0
- package/packages/core/dist/utils/resource-arg-parser.d.ts +48 -0
- package/packages/core/dist/utils/resource-arg-parser.d.ts.map +1 -0
- package/packages/core/dist/utils/resource-arg-parser.js +231 -0
- package/packages/core/dist/utils/resource-arg-parser.js.map +1 -0
- package/packages/core/dist/utils/root-file-extractor.d.ts +55 -0
- package/packages/core/dist/utils/root-file-extractor.d.ts.map +1 -0
- package/packages/core/dist/utils/root-file-extractor.js +115 -0
- package/packages/core/dist/utils/root-file-extractor.js.map +1 -0
- package/packages/core/dist/utils/root-file-merger.d.ts +15 -0
- package/packages/core/dist/utils/root-file-merger.d.ts.map +1 -0
- package/packages/core/dist/utils/root-file-merger.js +57 -0
- package/packages/core/dist/utils/root-file-merger.js.map +1 -0
- package/packages/core/dist/utils/source-operation-arguments.d.ts +48 -0
- package/packages/core/dist/utils/source-operation-arguments.d.ts.map +1 -0
- package/packages/core/dist/utils/source-operation-arguments.js +66 -0
- package/packages/core/dist/utils/source-operation-arguments.js.map +1 -0
- package/packages/core/dist/utils/tarball.d.ts +30 -0
- package/packages/core/dist/utils/tarball.d.ts.map +1 -0
- package/packages/core/dist/utils/tarball.js +200 -0
- package/packages/core/dist/utils/tarball.js.map +1 -0
- package/packages/core/dist/utils/validation/index.d.ts +4 -0
- package/packages/core/dist/utils/validation/index.d.ts.map +1 -0
- package/packages/core/dist/utils/validation/index.js +5 -0
- package/packages/core/dist/utils/validation/index.js.map +1 -0
- package/packages/core/dist/utils/validation/manifest.d.ts +16 -0
- package/packages/core/dist/utils/validation/manifest.d.ts.map +1 -0
- package/packages/core/dist/utils/validation/manifest.js +27 -0
- package/packages/core/dist/utils/validation/manifest.js.map +1 -0
- package/packages/core/dist/utils/validation/package-files.d.ts +13 -0
- package/packages/core/dist/utils/validation/package-files.d.ts.map +1 -0
- package/packages/core/dist/utils/validation/package-files.js +15 -0
- package/packages/core/dist/utils/validation/package-files.js.map +1 -0
- package/packages/core/dist/utils/validation/version.d.ts +24 -0
- package/packages/core/dist/utils/validation/version.d.ts.map +1 -0
- package/packages/core/dist/utils/validation/version.js +42 -0
- package/packages/core/dist/utils/validation/version.js.map +1 -0
- package/packages/core/dist/utils/version-generator.d.ts +58 -0
- package/packages/core/dist/utils/version-generator.d.ts.map +1 -0
- package/packages/core/dist/utils/version-generator.js +132 -0
- package/packages/core/dist/utils/version-generator.js.map +1 -0
- package/packages/core/dist/utils/version-ranges.d.ts +88 -0
- package/packages/core/dist/utils/version-ranges.d.ts.map +1 -0
- package/packages/core/dist/utils/version-ranges.js +342 -0
- package/packages/core/dist/utils/version-ranges.js.map +1 -0
- package/packages/core/dist/utils/workspace-index-helpers.d.ts +17 -0
- package/packages/core/dist/utils/workspace-index-helpers.d.ts.map +1 -0
- package/packages/core/dist/utils/workspace-index-helpers.js +28 -0
- package/packages/core/dist/utils/workspace-index-helpers.js.map +1 -0
- package/packages/core/dist/utils/workspace-index-ownership.d.ts +32 -0
- package/packages/core/dist/utils/workspace-index-ownership.d.ts.map +1 -0
- package/packages/core/dist/utils/workspace-index-ownership.js +111 -0
- package/packages/core/dist/utils/workspace-index-ownership.js.map +1 -0
- package/packages/core/dist/utils/workspace-index-yml.d.ts +9 -0
- package/packages/core/dist/utils/workspace-index-yml.d.ts.map +1 -0
- package/packages/core/dist/utils/workspace-index-yml.js +300 -0
- package/packages/core/dist/utils/workspace-index-yml.js.map +1 -0
- package/packages/core/dist/utils/workspace-package-context.d.ts +6 -0
- package/packages/core/dist/utils/workspace-package-context.d.ts.map +1 -0
- package/packages/core/dist/utils/workspace-package-context.js +6 -0
- package/packages/core/dist/utils/workspace-package-context.js.map +1 -0
- package/packages/core/package.json +96 -0
- package/packages/gui/package.json +24 -0
- package/packages/gui/src-tauri/Cargo.toml +14 -0
- package/turbo.json +15 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../core/src/core/workspace-package-context.ts", "../../core/src/utils/expand-directory-selections.ts", "../src/utils/interactive-file-selector.ts", "../src/utils/file-selector-with-header.ts", "../../core/src/utils/file-scanner.ts", "../../core/src/utils/source-operation-arguments.ts"],
|
|
4
|
+
"sourcesContent": ["import { join, basename } from 'path';\n\nimport { FILE_PATTERNS } from '../constants/index.js';\nimport { ensureLocalOpenPackageStructure, createWorkspacePackageYml } from './package-management.js';\nimport { getLocalOpenPackageDir } from '../utils/paths.js';\nimport { parsePackageYml } from '../utils/package-yml.js';\nimport type { PackageYml } from '../types/index.js';\n\n/**\n * Workspace package context for add/remove operations.\n * Contains essential package metadata for operating on workspace root (.openpackage/).\n */\nexport interface WorkspacePackageContext {\n /** Package name (from manifest or workspace directory name) */\n name: string;\n /** Package version (if specified in manifest) */\n version?: string;\n /** Full package configuration from openpackage.yml */\n config: PackageYml;\n /** Absolute path to package manifest (openpackage.yml) */\n packageYmlPath: string;\n /** Root directory of the package (.openpackage/) */\n packageRootDir: string;\n /** Directory containing package files (same as root for workspace packages) */\n packageFilesDir: string;\n}\n\n/**\n * Build workspace package context for operations on workspace root (.openpackage/).\n * \n * This utility creates or ensures the workspace package structure exists and loads\n * the manifest configuration. Used by add/remove commands when operating on the\n * workspace root (no specific package specified via --to/--from).\n * \n * @param cwd - Current working directory\n * @returns Workspace package context with loaded configuration\n * @throws Error if manifest cannot be read\n * \n * @example\n * // Add command: opkg add ./file.md (no --to option)\n * const context = await buildWorkspacePackageContext(cwd);\n * // Files will be added to context.packageRootDir (.openpackage/)\n * \n * @example\n * // Remove command: opkg remove agents/my-agent (no --from option)\n * const context = await buildWorkspacePackageContext(cwd);\n * // Files will be removed from context.packageRootDir (.openpackage/)\n */\nexport async function buildWorkspacePackageContext(\n cwd: string\n): Promise<WorkspacePackageContext> {\n // Ensure .openpackage/ structure exists\n await ensureLocalOpenPackageStructure(cwd);\n\n // Create workspace manifest if it doesn't exist\n await createWorkspacePackageYml(cwd);\n\n const openpackageDir = getLocalOpenPackageDir(cwd);\n const packageYmlPath = join(openpackageDir, FILE_PATTERNS.OPENPACKAGE_YML);\n\n // Load workspace manifest\n let config: PackageYml;\n try {\n config = await parsePackageYml(packageYmlPath);\n } catch (error) {\n throw new Error(\n `Failed to read workspace manifest at ${packageYmlPath}: ${error}`\n );\n }\n\n // Use workspace directory name as package name if not specified in manifest\n const packageName = config.name || basename(cwd);\n\n return {\n name: packageName,\n version: config.version,\n config,\n packageYmlPath,\n packageRootDir: openpackageDir,\n packageFilesDir: openpackageDir\n };\n}\n\n/**\n * Ensure workspace package structure exists and is initialized.\n * This is a convenience wrapper around ensureLocalOpenPackageStructure and createWorkspacePackageYml.\n * \n * @param cwd - Current working directory\n * \n * @example\n * // Ensure workspace is ready before performing operations\n * await ensureWorkspacePackageExists(cwd);\n * // Now .openpackage/ directory and openpackage.yml exist\n */\nexport async function ensureWorkspacePackageExists(cwd: string): Promise<void> {\n await ensureLocalOpenPackageStructure(cwd);\n await createWorkspacePackageYml(cwd);\n}\n", "/**\n * Directory Selection Expansion Utility\n * \n * Expands directory selections (paths ending with '/') into all files within them.\n * Used by add and remove commands to handle directory selections from interactive file selector.\n */\n\nimport { join, relative } from 'path';\nimport { promises as fs } from 'fs';\nimport { walkFiles } from './file-walker.js';\nimport { isJunk } from 'junk';\n\n/**\n * Expand directory selections into individual file paths\n * \n * @param selectedPaths - Array of selected paths (files and directories with '/' suffix)\n * @param basePath - Base directory path for resolving relative paths\n * @returns Array of individual file paths (no directories)\n * \n * @example\n * const selections = ['src/', 'package.json', 'docs/readme.md'];\n * const expanded = await expandDirectorySelections(selections, '/workspace');\n * // Returns: ['src/index.ts', 'src/utils/helper.ts', 'package.json', 'docs/readme.md']\n */\nexport async function expandDirectorySelections(\n selectedPaths: string[],\n basePath: string\n): Promise<string[]> {\n const expandedFiles: string[] = [];\n const seenFiles = new Set<string>();\n \n for (const path of selectedPaths) {\n if (path.endsWith('/')) {\n // This is a directory - expand it to all files within\n const dirPath = path.slice(0, -1); // Remove trailing '/'\n const absDirPath = join(basePath, dirPath);\n \n // Check if directory exists\n try {\n const stat = await fs.stat(absDirPath);\n if (!stat.isDirectory()) {\n // Not a directory, skip\n continue;\n }\n } catch {\n // Directory doesn't exist or is inaccessible, skip\n continue;\n }\n \n // Walk all files in the directory\n const filter = (filePath: string, isDirectory: boolean) => {\n if (isDirectory) {\n return true; // Always traverse directories\n }\n \n // Filter out junk files\n const segments = filePath.split('/');\n const basename = segments[segments.length - 1];\n return !isJunk(basename);\n };\n \n for await (const filePath of walkFiles(absDirPath, { filter })) {\n // Convert to relative path from basePath (path.relative handles trailing slashes correctly)\n const relativePath = relative(basePath, filePath);\n \n // Only add if not already seen (avoid duplicates)\n if (!seenFiles.has(relativePath)) {\n seenFiles.add(relativePath);\n expandedFiles.push(relativePath);\n }\n }\n } else {\n // This is a regular file - add it directly if not already seen\n if (!seenFiles.has(path)) {\n seenFiles.add(path);\n expandedFiles.push(path);\n }\n }\n }\n \n return expandedFiles;\n}\n\n/**\n * Check if any selected paths are directories\n * \n * @param selectedPaths - Array of selected paths\n * @returns True if at least one path is a directory (ends with '/')\n */\nexport function hasDirectorySelections(selectedPaths: string[]): boolean {\n return selectedPaths.some(path => path.endsWith('/'));\n}\n\n/**\n * Count how many directories and files are in the selection\n * \n * @param selectedPaths - Array of selected paths\n * @returns Object with counts of directories and files\n */\nexport function countSelectionTypes(selectedPaths: string[]): { dirs: number; files: number } {\n let dirs = 0;\n let files = 0;\n \n for (const path of selectedPaths) {\n if (path.endsWith('/')) {\n dirs++;\n } else {\n files++;\n }\n }\n \n return { dirs, files };\n}\n", "/**\n * Interactive File Selector\n * \n * Provides fuzzy file selection with dynamic header showing selected files.\n * Uses custom AutocompletePrompt that updates the header in real-time.\n */\n\nimport { note, log } from '@clack/prompts';\nimport { promptFileSelector } from './file-selector-with-header.js';\nimport { scanWorkspaceFiles } from '@opkg/core/utils/file-scanner.js';\nimport { countSelectionTypes } from '@opkg/core/utils/expand-directory-selections.js';\nimport { logger } from '@opkg/core/utils/logger.js';\n\n/**\n * Options for interactive file selection\n */\nexport interface FileSelectionOptions {\n /** Base directory to scan from (default: process.cwd()) */\n cwd?: string;\n \n /** Specific directory path to scan (overrides cwd if provided) */\n basePath?: string;\n \n /** Prompt message to display (default: 'Select files') */\n message?: string;\n \n /** Placeholder text when no input (default: 'Type to search files...') */\n placeholder?: string;\n \n /** Maximum items to display at once (default: 10) */\n maxItems?: number;\n \n /** Additional directories to exclude from scanning */\n excludeDirs?: string[];\n \n /** Fuzzy search threshold (0-1, default: 0.5) */\n fuzzyThreshold?: number;\n \n /** Whether to include directories in results (default: false) */\n includeDirs?: boolean;\n}\n\n/**\n * Display an interactive fuzzy file selector with dynamic header\n * \n * Features:\n * - Dynamic header showing selected files (updates in real-time)\n * - Fuzzy search with real-time filtering\n * - Space to toggle selection\n * - Enter to confirm\n * \n * @param options - Selection options\n * @returns Array of selected relative file paths, or null if cancelled\n * \n * @example\n * const files = await interactiveFileSelect({ cwd: process.cwd() });\n * if (files) {\n * console.log('Selected:', files);\n * } else {\n * console.log('Cancelled');\n * }\n */\nexport async function interactiveFileSelect(\n options: FileSelectionOptions = {}\n): Promise<string[] | null> {\n const {\n cwd = process.cwd(),\n basePath,\n message,\n placeholder,\n maxItems = 10,\n excludeDirs = [],\n fuzzyThreshold = 0.5,\n includeDirs = false\n } = options;\n \n // Set smart defaults based on whether directories are included\n const finalMessage = message || (includeDirs ? 'Select files or directories to add' : 'Select files to add');\n const finalPlaceholder = placeholder || (includeDirs ? 'Type to search...' : 'Type to search files...');\n \n const scanDir = basePath || cwd;\n \n try {\n // Scan workspace for all files\n logger.debug('Scanning workspace for files', { scanDir });\n const allFiles = await scanWorkspaceFiles({ cwd, basePath, excludeDirs, includeDirs });\n \n // Check if any files found\n if (allFiles.length === 0) {\n logger.warn('No files found in workspace');\n note('No files found in the workspace directory', 'No Files');\n return null;\n }\n \n logger.debug(`Found ${allFiles.length} files to display`);\n \n // Display the file selector with dynamic header\n const selectedFiles = await promptFileSelector({\n message: finalMessage,\n files: allFiles,\n placeholder: finalPlaceholder,\n maxItems,\n fuzzyThreshold\n });\n \n // Check if user cancelled or selected nothing\n if (!selectedFiles || selectedFiles.length === 0) {\n logger.debug('No files selected or user cancelled');\n return null; // Prompt handles its own cancellation display\n }\n \n logger.debug(`User selected ${selectedFiles.length} file(s)`, { selectedFiles });\n\n // Show summary after selection (use dir/file counts when includeDirs)\n const fileList = selectedFiles.length <= 5\n ? selectedFiles.join('\\n')\n : selectedFiles.slice(0, 5).join('\\n') + `\\n... and ${selectedFiles.length - 5} more`;\n const countLabel = includeDirs\n ? (() => {\n const { dirs, files } = countSelectionTypes(selectedFiles);\n const parts: string[] = [];\n if (dirs > 0) parts.push(`${dirs} dir${dirs === 1 ? '' : 's'}`);\n if (files > 0) parts.push(`${files} file${files === 1 ? '' : 's'}`);\n return parts.join(' and ');\n })()\n : `${selectedFiles.length} file${selectedFiles.length === 1 ? '' : 's'}`;\n log.success(`Selected ${countLabel}:\\n${fileList}`);\n \n return selectedFiles;\n \n } catch (error) {\n logger.error('Error during file selection', { error });\n throw new Error(`File selection failed: ${error}`);\n }\n}\n\n/**\n * Display an interactive fuzzy file selector for single file selection\n * \n * @param options - Selection options\n * @returns Selected relative file path, or null if cancelled\n */\nexport async function interactiveFileSelectSingle(\n options: FileSelectionOptions = {}\n): Promise<string | null> {\n const result = await interactiveFileSelect({\n ...options,\n message: options.message || 'Select a file'\n });\n \n if (!result || result.length === 0) {\n return null;\n }\n \n // Return the first selected file\n return result[0];\n}\n", "/**\n * File Selector with Dynamic Header\n * \n * Custom AutocompletePrompt that shows selected files in a dynamic header\n * that updates in real-time as selections change.\n */\n\nimport { AutocompletePrompt, isCancel } from '@clack/core';\nimport { search } from 'fast-fuzzy';\nimport pico from 'picocolors';\nimport type { Key } from 'node:readline';\n\n/**\n * Options for file selector with dynamic header\n */\nexport interface FileSelectorOptions {\n /** Prompt message */\n message: string;\n \n /** All available files */\n files: string[];\n \n /** Placeholder text */\n placeholder?: string;\n \n /** Maximum items to show */\n maxItems?: number;\n \n /** Fuzzy search threshold */\n fuzzyThreshold?: number;\n}\n\n/**\n * File option for autocomplete\n */\ninterface FileOption {\n value: string;\n label: string;\n}\n\n/**\n * Custom AutocompletePrompt that shows selected files above the search UI\n */\nexport class FileSelectorWithHeader extends AutocompletePrompt<FileOption> {\n private allFiles: string[];\n private fuzzyThreshold: number;\n private message: string;\n private placeholder: string;\n private maxVisibleItems: number;\n\n constructor(options: FileSelectorOptions) {\n const fileOptions: FileOption[] = options.files.map(file => ({\n value: file,\n label: file\n }));\n\n super({\n options: fileOptions,\n multiple: true,\n render() {\n return this.renderWithHeader();\n }\n } as any);\n\n this.allFiles = options.files;\n this.message = options.message;\n this.placeholder = options.placeholder || 'Type to search...';\n this.maxVisibleItems = options.maxItems || 10;\n this.fuzzyThreshold = options.fuzzyThreshold || 0.5;\n\n // Override the options to provide dynamic filtering\n this.setupFuzzyFiltering();\n\n // Disable wrap-around: stay at top when pressing up at first item\n this.setupNoOverscroll();\n }\n\n /**\n * Prevent wrap-around: stay at top when pressing up at first item (don't jump to last)\n */\n private setupNoOverscroll(): void {\n this.on('key', (_char: string | undefined, key: Key) => {\n const len = this.filteredOptions.length;\n if (len <= 1) return;\n\n if (key.name === 'up' && this.cursor === len - 1) {\n // Cursor wrapped from 0 to end; emit synthetic down to undo\n this.emit('key', undefined, { name: 'down', ctrl: false, meta: false, shift: false } as Key);\n }\n });\n }\n\n /**\n * Setup fuzzy filtering based on user input\n */\n private setupFuzzyFiltering(): void {\n // Listen to userInput changes to update filtered options\n this.on('userInput', () => {\n this.updateFilteredOptions();\n });\n }\n\n /**\n * Update filtered options based on current user input\n */\n private updateFilteredOptions(): void {\n const input = this.userInput;\n \n let filteredFiles: string[];\n \n if (!input || input.trim() === '') {\n filteredFiles = this.allFiles;\n } else {\n filteredFiles = search(input, this.allFiles, {\n threshold: this.fuzzyThreshold,\n ignoreCase: true,\n returnMatchData: false\n }) as string[];\n }\n\n // Update filteredOptions (this is a public property we can modify)\n this.filteredOptions = filteredFiles.map(file => ({\n value: file,\n label: file\n }));\n }\n\n /**\n * Main render method with dynamic header\n */\n private renderWithHeader(): string {\n // Handle final states with collapsed rendering\n if (this.state === 'cancel') {\n return this.renderCancelled();\n }\n \n if (this.state === 'submit') {\n // Treat empty selection as cancellation\n if (this.selectedValues.length === 0) {\n return this.renderCancelled();\n }\n return this.renderSubmitted();\n }\n \n // Render full interactive UI for active/initial/error states\n const sections: string[] = [];\n\n // === DYNAMIC HEADER SECTION ===\n sections.push(this.renderSelectedFilesHeader());\n\n // === PROMPT SECTION ===\n sections.push(this.renderSearchSection());\n\n // === OPTIONS LIST ===\n sections.push(this.renderOptionsList());\n\n // === FOOTER ===\n sections.push(this.renderFooter());\n\n return sections.join('\\n');\n }\n\n /**\n * Get a smart label for the current selection (e.g., \"2 dirs, 1 file\" or \"3 files\")\n */\n private getSelectionLabel(): string {\n const count = this.selectedValues.length;\n const dirs = this.selectedValues.filter(v => v.endsWith('/')).length;\n const files = count - dirs;\n \n if (dirs === 0) {\n return `${files} file${files === 1 ? '' : 's'}`;\n } else if (files === 0) {\n return `${dirs} dir${dirs === 1 ? '' : 's'}`;\n } else {\n return `${dirs} dir${dirs === 1 ? '' : 's'}, ${files} file${files === 1 ? '' : 's'}`;\n }\n }\n\n /**\n * Render the selected files header using Clack's simple log-style format\n */\n private renderSelectedFilesHeader(): string {\n const count = this.selectedValues.length;\n const lines: string[] = [];\n \n // Title line with pointer symbol (\u25C6) for consistency with prompt message\n const title = count === 0 \n ? `Selected: ${pico.dim('none (use Space to select)')}`\n : `Selected: ${pico.cyan(this.getSelectionLabel())}`;\n \n lines.push(`${pico.cyan('\u25C6')} ${title}`);\n \n // Show selected files (up to 5)\n if (count > 0) {\n const displayCount = Math.min(5, count);\n for (let i = 0; i < displayCount; i++) {\n const file = this.selectedValues[i];\n lines.push(`${pico.cyan('\u2502')} ${pico.dim('\u2713 ' + file)}`);\n }\n \n // Show \"... and X more\" if there are more\n if (count > displayCount) {\n lines.push(`${pico.cyan('\u2502')} ${pico.dim(`... and ${count - displayCount} more`)}`);\n }\n }\n \n // Separator line\n lines.push(pico.cyan('\u2502'));\n \n return lines.join('\\n');\n }\n\n /**\n * Render the search section\n */\n private renderSearchSection(): string {\n const matchCount = this.filteredOptions.length;\n const totalCount = this.allFiles.length;\n\n const stateSymbol = pico.cyan('\u25C6');\n const searchLabel = pico.dim('Search:');\n const input = this.userInput || pico.gray(this.placeholder);\n const cursor = this.state === 'active' ? pico.cyan('\u2588') : '';\n const matches = matchCount !== totalCount\n ? pico.dim(` (${matchCount} ${matchCount === 1 ? 'match' : 'matches'})`)\n : '';\n\n return `${stateSymbol} ${this.message}\\n${pico.cyan('\u2502')} ${searchLabel} ${input}${cursor}${matches}`;\n }\n\n /**\n * Render the options list with sliding window to keep cursor in view\n */\n private renderOptionsList(): string {\n const lines: string[] = [];\n const totalOptions = this.filteredOptions.length;\n const maxItems = this.maxVisibleItems;\n\n if (totalOptions === 0) {\n lines.push(`${pico.cyan('\u2502')} ${pico.gray('No matches found')}`);\n return lines.join('\\n');\n }\n\n // Sliding window: scroll so cursor stays in view\n let visibleStart = 0;\n if (this.cursor >= maxItems - 3) {\n visibleStart = Math.max(0, Math.min(this.cursor - maxItems + 3, totalOptions - maxItems));\n }\n const visibleEnd = Math.min(visibleStart + maxItems, totalOptions);\n const visibleOptions = this.filteredOptions.slice(visibleStart, visibleEnd);\n\n // Show \"more above\" indicator when scrolled down\n if (visibleStart > 0) {\n lines.push(`${pico.cyan('\u2502')} ${pico.gray(`... ${visibleStart} above`)}`);\n }\n\n for (let i = 0; i < visibleOptions.length; i++) {\n const option = visibleOptions[i];\n const isSelected = this.selectedValues.includes(option.value);\n const isCursor = visibleStart + i === this.cursor;\n\n // Checkbox\n const checkbox = isSelected ? pico.cyan('\u25FC') : pico.dim('\u25FB');\n\n // Cursor indicator\n const cursorMark = isCursor ? pico.cyan('\u25B8') : ' ';\n\n // File name\n let fileName = option.label;\n if (isCursor) {\n fileName = pico.cyan(fileName);\n } else if (isSelected) {\n fileName = pico.white(fileName);\n } else {\n fileName = pico.dim(fileName);\n }\n\n lines.push(`${pico.cyan('\u2502')} ${cursorMark} ${checkbox} ${fileName}`);\n }\n\n // Show \"more below\" indicator when there are more items\n if (visibleEnd < totalOptions) {\n const remaining = totalOptions - visibleEnd;\n lines.push(`${pico.cyan('\u2502')} ${pico.gray(`... ${remaining} more`)}`);\n }\n\n return lines.join('\\n');\n }\n\n /**\n * Render the footer with hints\n */\n private renderFooter(): string {\n const hints = pico.dim('Space: select \u2022 Enter: confirm \u2022 Esc: cancel');\n return `${pico.cyan('\u2514')} ${hints}`;\n }\n\n /**\n * Render the collapsed cancelled state\n */\n private renderCancelled(): string {\n const symbol = pico.red('\u25A0'); // Red square for cancelled\n const end = pico.gray('\u2514');\n \n return `${symbol} ${this.message}\\n${end} ${pico.dim('Operation cancelled')}`;\n }\n\n /**\n * Render the collapsed submitted state (for successful selection)\n */\n private renderSubmitted(): string {\n const symbol = pico.green('\u25C7'); // Green hollow diamond for success\n const bar = pico.gray('\u2502');\n \n const status = pico.dim(this.getSelectionLabel() + ' selected');\n \n return `${symbol} ${this.message}\\n${bar} ${status}`;\n }\n}\n\n/**\n * Helper function to create and run the file selector\n */\nexport async function promptFileSelector(\n options: FileSelectorOptions\n): Promise<string[] | null> {\n const selector = new FileSelectorWithHeader(options);\n const result = await selector.prompt();\n\n if (isCancel(result)) {\n return null;\n }\n\n return result as string[];\n}\n", "/**\n * File Scanner Utility\n * \n * Scans all files in a workspace directory for interactive file selection.\n * Filters out junk files and common build/dependency directories.\n */\n\nimport { relative } from 'path';\nimport { isJunk } from 'junk';\nimport { walkFiles } from './file-walker.js';\nimport { logger } from './logger.js';\n\n/**\n * Common directories to exclude from file scanning\n */\nconst DEFAULT_EXCLUDE_DIRS = new Set([\n 'node_modules',\n '.git',\n '.next',\n '.turbo',\n 'dist',\n 'build',\n 'out',\n '.cache',\n 'coverage',\n '.nyc_output',\n '.parcel-cache',\n '.webpack',\n '.vscode',\n '.idea',\n '__pycache__',\n 'target',\n 'vendor',\n]);\n\n/**\n * Options for scanning workspace files\n */\nexport interface FileScanOptions {\n /** Base directory to scan from (default: process.cwd()) */\n cwd?: string;\n \n /** Specific directory path to scan (overrides cwd if provided) */\n basePath?: string;\n \n /** Additional directory names to exclude (merged with defaults) */\n excludeDirs?: string[];\n \n /** Maximum number of files to return (default: 10000) */\n maxFiles?: number;\n \n /** Whether to follow symbolic links (default: false) */\n followSymlinks?: boolean;\n \n /** Whether to include directories in results (default: false) */\n includeDirs?: boolean;\n}\n\n/**\n * Check if a path segment is an excluded directory\n */\nfunction isExcludedDir(fullPath: string, excludeDirs: Set<string>): boolean {\n const segments = fullPath.split('/');\n \n // Check if any segment matches an excluded directory\n for (const segment of segments) {\n if (excludeDirs.has(segment)) {\n return true;\n }\n }\n \n return false;\n}\n\n/**\n * Scan workspace for all non-junk files\n * \n * @param options - Scanning options\n * @returns Array of relative file paths (and optionally directory paths with '/' suffix) from cwd (or basePath if specified)\n * \n * @example\n * const files = await scanWorkspaceFiles({ cwd: '/path/to/workspace' });\n * // Returns: ['src/index.ts', 'package.json', '.openpkgs/rules/cursor.md', ...]\n * \n * @example\n * // Scan a specific directory\n * const packageFiles = await scanWorkspaceFiles({ \n * cwd: '/workspace',\n * basePath: '/workspace/.openpackage/packages/my-pkg'\n * });\n * // Returns files relative to basePath: ['file1.txt', 'subdir/file2.txt', ...]\n * \n * @example\n * // Include directories in results\n * const filesAndDirs = await scanWorkspaceFiles({ \n * cwd: '/path/to/workspace',\n * includeDirs: true\n * });\n * // Returns: ['src/', 'src/index.ts', 'src/utils/', 'src/utils/helper.ts', ...]\n */\nexport async function scanWorkspaceFiles(\n options: FileScanOptions = {}\n): Promise<string[]> {\n const {\n cwd = process.cwd(),\n basePath,\n excludeDirs = [],\n maxFiles = 10000,\n followSymlinks = false,\n includeDirs = false\n } = options;\n \n // Use basePath if provided, otherwise use cwd\n const scanDir = basePath || cwd;\n \n // Merge default and custom exclude directories\n const allExcludeDirs = new Set([\n ...DEFAULT_EXCLUDE_DIRS,\n ...excludeDirs\n ]);\n \n const files: string[] = [];\n const dirs: string[] = [];\n let fileCount = 0;\n \n try {\n // Create filter for file walker\n const filter = (path: string, isDirectory: boolean) => {\n // Get the basename for junk checking\n const segments = path.split('/');\n const basename = segments[segments.length - 1];\n \n // Filter out junk files\n if (isJunk(basename)) {\n return false;\n }\n \n // Filter out excluded directories and their contents\n if (isExcludedDir(path, allExcludeDirs)) {\n return false;\n }\n \n return true;\n };\n \n // Walk files and collect relative paths\n for await (const filePath of walkFiles(scanDir, { filter, followSymlinks, includeDirs })) {\n // Stop if we've hit the max files limit\n if (fileCount >= maxFiles) {\n logger.debug(`File scan limit reached: ${maxFiles} files`);\n break;\n }\n \n // Convert to relative path for display\n const relativePath = relative(scanDir, filePath);\n \n // Skip if relative path is empty (shouldn't happen, but safety check)\n if (!relativePath || relativePath === '.') {\n continue;\n }\n \n // Check if this is a directory (when includeDirs is enabled)\n if (includeDirs) {\n const fs = await import('fs');\n const stat = await fs.promises.stat(filePath);\n if (stat.isDirectory()) {\n // Add '/' suffix to directories for visual distinction\n dirs.push(relativePath + '/');\n } else {\n files.push(relativePath);\n }\n } else {\n files.push(relativePath);\n }\n \n fileCount++;\n }\n \n // Sort files and directories for better UX\n // Directories first, then files, both alphabetically within their group\n const allItems = [...dirs.sort(), ...files.sort()];\n \n // Apply depth-based sorting to prioritize shallow items\n allItems.sort((a, b) => {\n // Remove trailing '/' for directory depth calculation\n const aPath = a.endsWith('/') ? a.slice(0, -1) : a;\n const bPath = b.endsWith('/') ? b.slice(0, -1) : b;\n \n // Prioritize items in root directory\n const aDepth = aPath.split('/').length;\n const bDepth = bPath.split('/').length;\n \n if (aDepth !== bDepth) {\n return aDepth - bDepth;\n }\n \n // Then alphabetically\n return a.localeCompare(b);\n });\n \n logger.debug(`Scanned ${allItems.length} items in workspace`, { scanDir, includeDirs });\n \n return allItems;\n \n } catch (error) {\n logger.error('Error scanning workspace files', { error, scanDir });\n throw new Error(`Failed to scan workspace files: ${error}`);\n }\n}\n\n/**\n * Check if the current environment supports interactive prompts.\n *\n * Prefer using `ExecutionContext.interactive` when available -- this\n * function exists as a last-resort fallback for code paths that\n * don't have access to a context object.\n * \n * @returns True if stdin and stdout are TTY (terminal)\n * @deprecated Use ExecutionContext.interactive instead when possible.\n */\nexport function canPrompt(): boolean {\n return Boolean(process.stdin.isTTY && process.stdout.isTTY);\n}\n", "import { resolve as resolvePath, join } from 'path';\n\nimport { exists } from './fs.js';\nimport { getLocalOpenPackageDir } from './paths.js';\n\n/**\n * Options for resolving source operation arguments.\n */\nexport interface SourceOperationOptions {\n /** Command name for error messages ('add' | 'remove') */\n command: 'add' | 'remove';\n /** Whether to check workspace root path in addition to filesystem path (for remove) */\n checkWorkspaceRoot?: boolean;\n}\n\n/**\n * Resolved source operation result.\n */\nexport interface ResolvedSourceOperation {\n /** Package name (null = workspace root, string = specific package) */\n resolvedPackageName: string | null;\n /** Path to operate on */\n resolvedPath: string;\n}\n\n/**\n * Resolve source operation arguments to determine package name and operation path.\n * \n * This shared utility handles argument resolution for both add and remove commands:\n * - For add: packageName from --to option, pathArg is source path to add\n * - For remove: packageName from --from option, pathArg is target path to remove\n * \n * @param cwd - Current working directory\n * @param packageName - Package name from --to/--from option (undefined = workspace root)\n * @param pathArg - Path argument from command line\n * @param options - Command-specific options\n * @returns Resolved package name and path\n * \n * @example\n * // Add command: opkg add ./file.md --to my-package\n * const result = await resolveSourceOperationArguments(\n * cwd, 'my-package', './file.md', { command: 'add' }\n * );\n * // => { resolvedPackageName: 'my-package', resolvedPath: './file.md' }\n * \n * @example\n * // Remove command: opkg remove agents/my-agent\n * const result = await resolveSourceOperationArguments(\n * cwd, undefined, 'agents/my-agent', { command: 'remove', checkWorkspaceRoot: true }\n * );\n * // Checks both ./agents/my-agent AND .openpackage/agents/my-agent\n * // => { resolvedPackageName: null, resolvedPath: 'agents/my-agent' }\n */\nexport async function resolveSourceOperationArguments(\n cwd: string,\n packageName: string | undefined,\n pathArg: string | undefined,\n options: SourceOperationOptions\n): Promise<ResolvedSourceOperation> {\n const { command, checkWorkspaceRoot = false } = options;\n const flagName = command === 'add' ? '--to' : '--from';\n \n // Two arguments provided: explicit package name + path\n if (packageName && pathArg) {\n return { resolvedPackageName: packageName, resolvedPath: pathArg };\n }\n\n // One argument provided\n const singleArg = packageName || pathArg;\n if (!singleArg) {\n throw new Error(`Path argument is required for ${command}.`);\n }\n\n // Check if single arg is a valid path\n const absPath = resolvePath(cwd, singleArg);\n let pathExists = await exists(absPath);\n \n // For remove command, also check workspace root path\n if (!pathExists && checkWorkspaceRoot) {\n const openpackageDir = getLocalOpenPackageDir(cwd);\n const workspaceRootPath = join(openpackageDir, singleArg);\n pathExists = await exists(workspaceRootPath);\n }\n \n if (pathExists) {\n // It's a valid path \u2192 operate on workspace root\n return { resolvedPackageName: null, resolvedPath: singleArg };\n }\n\n // Path doesn't exist. For remove, pass through so the pipeline can try dependency resolution.\n // For add, this would have failed earlier. Only remove uses checkWorkspaceRoot.\n if (checkWorkspaceRoot && command === 'remove') {\n return { resolvedPackageName: null, resolvedPath: singleArg };\n }\n\n // Not a valid path \u2192 treat as package name (error will be thrown later)\n throw new Error(\n `Path '${singleArg}' not found.\\n\\n` +\n `If you meant to specify a package name, use: opkg ${command} <path> ${flagName} ${singleArg}`\n );\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["join", "join", "basename", "relative", "isJunk", "basename", "isJunk", "relative", "join", "join"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,302 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import {
|
|
3
|
+
extractPlatformSuffixFromFilename
|
|
4
|
+
} from "./chunk-UDAWJRKD.js";
|
|
5
|
+
import {
|
|
6
|
+
splitFrontmatter
|
|
7
|
+
} from "./chunk-KGBDKY5V.js";
|
|
8
|
+
import {
|
|
9
|
+
getPlatformDefinitions,
|
|
10
|
+
isPlatformId,
|
|
11
|
+
matchesUniversalPattern,
|
|
12
|
+
resolveSwitchExpressionFull
|
|
13
|
+
} from "./chunk-GKEHDSL4.js";
|
|
14
|
+
import {
|
|
15
|
+
logger
|
|
16
|
+
} from "./chunk-5EFWGD33.js";
|
|
17
|
+
|
|
18
|
+
// ../core/src/core/install/file-format-detector.ts
|
|
19
|
+
import { minimatch } from "minimatch";
|
|
20
|
+
|
|
21
|
+
// ../core/src/core/install/schema-registry.ts
|
|
22
|
+
import { readFileSync, existsSync } from "fs";
|
|
23
|
+
import { join, dirname } from "path";
|
|
24
|
+
import { fileURLToPath } from "url";
|
|
25
|
+
function findProjectRoot() {
|
|
26
|
+
let __filename = fileURLToPath(import.meta.url), dir = dirname(__filename);
|
|
27
|
+
for (let i = 0; i < 10; i++) {
|
|
28
|
+
if (existsSync(join(dir, "platforms.jsonc")))
|
|
29
|
+
return dir;
|
|
30
|
+
let parent = dirname(dir);
|
|
31
|
+
if (parent === dir) break;
|
|
32
|
+
dir = parent;
|
|
33
|
+
}
|
|
34
|
+
return join(dirname(fileURLToPath(import.meta.url)), "../../../");
|
|
35
|
+
}
|
|
36
|
+
var projectRoot = findProjectRoot(), platformsJsoncPath = join(projectRoot, "platforms.jsonc"), SchemaRegistry = class {
|
|
37
|
+
constructor() {
|
|
38
|
+
this.schemaCache = /* @__PURE__ */ new Map();
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Load a schema from an explicit path
|
|
42
|
+
*
|
|
43
|
+
* @param schemaPath - Relative path from platforms.jsonc (e.g., "./schemas/formats/claude-agent.schema.json")
|
|
44
|
+
* @returns Parsed JSON schema with detection extensions
|
|
45
|
+
*/
|
|
46
|
+
loadSchema(schemaPath) {
|
|
47
|
+
if (this.schemaCache.has(schemaPath))
|
|
48
|
+
return this.schemaCache.get(schemaPath);
|
|
49
|
+
try {
|
|
50
|
+
let resolvedPath = this.resolveSchemaPath(schemaPath), content = readFileSync(resolvedPath, "utf-8"), schema = JSON.parse(content);
|
|
51
|
+
return !schema.$schema || !schema.properties ? (logger.warn(`Schema at ${schemaPath} is missing required fields ($schema, properties)`), null) : (this.schemaCache.set(schemaPath, schema), schema);
|
|
52
|
+
} catch (error) {
|
|
53
|
+
return logger.warn(`Failed to load schema from ${schemaPath}:`, error), null;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Resolve schema path relative to platforms.jsonc
|
|
58
|
+
*/
|
|
59
|
+
resolveSchemaPath(schemaPath) {
|
|
60
|
+
let cleanPath = schemaPath.replace(/^\.\//, "");
|
|
61
|
+
return join(dirname(platformsJsoncPath), cleanPath);
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Get schema for a flow's 'from' or 'to' pattern
|
|
65
|
+
*
|
|
66
|
+
* @param flow - Flow object (may use string or object patterns)
|
|
67
|
+
* @param direction - Which pattern to extract schema from ('from' or 'to')
|
|
68
|
+
* @param context - Optional flow context for resolving $switch expressions
|
|
69
|
+
* @returns Schema if pattern has schema reference, null otherwise
|
|
70
|
+
*/
|
|
71
|
+
getSchemaForFlow(flow, direction, context) {
|
|
72
|
+
let pattern = flow[direction];
|
|
73
|
+
if (typeof pattern == "object" && "$switch" in pattern) {
|
|
74
|
+
if (!context)
|
|
75
|
+
return null;
|
|
76
|
+
try {
|
|
77
|
+
let result = resolveSwitchExpressionFull(pattern, context);
|
|
78
|
+
return result.schema ? this.loadSchema(result.schema) : null;
|
|
79
|
+
} catch {
|
|
80
|
+
return null;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
let schemaPath = this.extractSchemaPath(pattern, direction);
|
|
84
|
+
return schemaPath ? this.loadSchema(schemaPath) : null;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Extract schema path from a pattern (string, array, or object)
|
|
88
|
+
*/
|
|
89
|
+
extractSchemaPath(pattern, direction) {
|
|
90
|
+
if (typeof pattern == "string")
|
|
91
|
+
return null;
|
|
92
|
+
if (Array.isArray(pattern) && direction === "from") {
|
|
93
|
+
if (pattern.length === 0) return null;
|
|
94
|
+
let first = pattern[0];
|
|
95
|
+
return typeof first == "object" && "schema" in first && first.schema || null;
|
|
96
|
+
}
|
|
97
|
+
return typeof pattern == "object" && pattern !== null && "schema" in pattern && pattern.schema || null;
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Get all schemas referenced in platform flows
|
|
101
|
+
*
|
|
102
|
+
* @param platforms - Platform definitions registry
|
|
103
|
+
* @returns Map of schema path -> loaded schema
|
|
104
|
+
*/
|
|
105
|
+
getAllFlowSchemas(platforms) {
|
|
106
|
+
let schemas = /* @__PURE__ */ new Map();
|
|
107
|
+
for (let [platformId, def] of Object.entries(platforms))
|
|
108
|
+
if (def.import && Array.isArray(def.import))
|
|
109
|
+
for (let flow of def.import) {
|
|
110
|
+
let schema = this.getSchemaForFlow(flow, "from");
|
|
111
|
+
if (schema) {
|
|
112
|
+
let schemaPath = this.extractSchemaPath(flow.from, "from");
|
|
113
|
+
schemaPath && schemas.set(schemaPath, schema);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
return schemas;
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Clear the schema cache
|
|
120
|
+
* Useful for testing or reloading schemas
|
|
121
|
+
*/
|
|
122
|
+
clearCache() {
|
|
123
|
+
this.schemaCache.clear();
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Get number of cached schemas
|
|
127
|
+
*/
|
|
128
|
+
getCacheSize() {
|
|
129
|
+
return this.schemaCache.size;
|
|
130
|
+
}
|
|
131
|
+
}, schemaRegistry = new SchemaRegistry();
|
|
132
|
+
function getPatternFromFlow(flow, direction) {
|
|
133
|
+
let pattern = flow[direction];
|
|
134
|
+
if (typeof pattern == "object" && pattern !== null && "$switch" in pattern || typeof pattern == "object" && pattern !== null && !("pattern" in pattern) && !Array.isArray(pattern))
|
|
135
|
+
return null;
|
|
136
|
+
if (typeof pattern == "string")
|
|
137
|
+
return pattern;
|
|
138
|
+
if (Array.isArray(pattern) && direction === "from") {
|
|
139
|
+
if (pattern.length === 0) return null;
|
|
140
|
+
let first = pattern[0];
|
|
141
|
+
return typeof first == "string" ? first : typeof first == "object" && "pattern" in first ? first.pattern : null;
|
|
142
|
+
}
|
|
143
|
+
return typeof pattern == "object" && pattern !== null && "pattern" in pattern ? pattern.pattern : null;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
// ../core/src/core/install/file-format-detector.ts
|
|
147
|
+
function detectFileFormat(file, targetDir) {
|
|
148
|
+
let frontmatter = file.frontmatter;
|
|
149
|
+
if (!frontmatter && file.content && (frontmatter = splitFrontmatter(file.content).frontmatter || {}), !frontmatter || Object.keys(frontmatter).length === 0) {
|
|
150
|
+
let normalizedPath = file.path.replace(/\\/g, "/").replace(/^\.\/?/, "");
|
|
151
|
+
return matchesUniversalPattern(normalizedPath, targetDir) ? {
|
|
152
|
+
platform: "universal",
|
|
153
|
+
confidence: 0.3,
|
|
154
|
+
matchedFlow: null,
|
|
155
|
+
matchedSchema: null,
|
|
156
|
+
matchedFields: [],
|
|
157
|
+
path: file.path
|
|
158
|
+
} : {
|
|
159
|
+
platform: "unknown",
|
|
160
|
+
confidence: 0,
|
|
161
|
+
matchedFlow: null,
|
|
162
|
+
matchedSchema: null,
|
|
163
|
+
matchedFields: [],
|
|
164
|
+
path: file.path
|
|
165
|
+
};
|
|
166
|
+
}
|
|
167
|
+
let platforms = getPlatformDefinitions(targetDir), matches = [];
|
|
168
|
+
for (let [platformId, def] of Object.entries(platforms)) {
|
|
169
|
+
if (def.export && def.export.length > 0)
|
|
170
|
+
for (let flow of def.export) {
|
|
171
|
+
let schema = schemaRegistry.getSchemaForFlow(flow, "to");
|
|
172
|
+
if (!schema) continue;
|
|
173
|
+
let match = scoreAgainstSchema(frontmatter, schema, flow, file.path, platformId);
|
|
174
|
+
match.score > 0 && matches.push(match);
|
|
175
|
+
}
|
|
176
|
+
if (def.import && def.import.length > 0)
|
|
177
|
+
for (let flow of def.import) {
|
|
178
|
+
let schema = schemaRegistry.getSchemaForFlow(flow, "from");
|
|
179
|
+
if (!schema) continue;
|
|
180
|
+
let match = scoreAgainstSchema(frontmatter, schema, flow, file.path, platformId);
|
|
181
|
+
match.score > 0 && matches.push(match);
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
if (matches.length === 0) {
|
|
185
|
+
let pathPlatform = extractPlatformSuffixFromFilename(file.path);
|
|
186
|
+
return pathPlatform && isPlatformId(pathPlatform) ? {
|
|
187
|
+
platform: pathPlatform,
|
|
188
|
+
confidence: 0.7,
|
|
189
|
+
matchedFlow: null,
|
|
190
|
+
matchedSchema: null,
|
|
191
|
+
matchedFields: [],
|
|
192
|
+
path: file.path
|
|
193
|
+
} : {
|
|
194
|
+
platform: "universal",
|
|
195
|
+
confidence: 0.3,
|
|
196
|
+
matchedFlow: null,
|
|
197
|
+
matchedSchema: null,
|
|
198
|
+
matchedFields: [],
|
|
199
|
+
path: file.path
|
|
200
|
+
};
|
|
201
|
+
}
|
|
202
|
+
let bestMatch = matches.reduce(
|
|
203
|
+
(best, current) => current.score > best.score ? current : best
|
|
204
|
+
);
|
|
205
|
+
return {
|
|
206
|
+
platform: bestMatch.platform,
|
|
207
|
+
confidence: Math.min(1, bestMatch.score / bestMatch.maxScore),
|
|
208
|
+
matchedFlow: bestMatch.flow,
|
|
209
|
+
matchedSchema: bestMatch.schemaPath,
|
|
210
|
+
matchedFields: bestMatch.matchedFields,
|
|
211
|
+
path: file.path
|
|
212
|
+
};
|
|
213
|
+
}
|
|
214
|
+
function scoreAgainstSchema(frontmatter, schema, flow, filePath, platformId) {
|
|
215
|
+
let score = 0, maxScore = 0, matchedFields = [];
|
|
216
|
+
if (schema.properties)
|
|
217
|
+
for (let [fieldName, property] of Object.entries(schema.properties)) {
|
|
218
|
+
let weight = property["x-detection-weight"] || 0.1;
|
|
219
|
+
if (maxScore += weight, !(fieldName in frontmatter))
|
|
220
|
+
continue;
|
|
221
|
+
let value = frontmatter[fieldName];
|
|
222
|
+
validateFieldAgainstSchema(value, property) && (score += weight, matchedFields.push(fieldName), property["x-exclusive"] && (score += 0.1));
|
|
223
|
+
}
|
|
224
|
+
let pathBoost = getPathBoost(filePath, flow);
|
|
225
|
+
score += pathBoost;
|
|
226
|
+
let schemaPath = extractSchemaPathFromFlow(flow);
|
|
227
|
+
return {
|
|
228
|
+
platform: platformId,
|
|
229
|
+
schemaPath: schemaPath || "unknown",
|
|
230
|
+
flow,
|
|
231
|
+
score,
|
|
232
|
+
maxScore,
|
|
233
|
+
matchedFields,
|
|
234
|
+
pathBoost
|
|
235
|
+
};
|
|
236
|
+
}
|
|
237
|
+
function validateFieldAgainstSchema(value, property) {
|
|
238
|
+
if (property.type) {
|
|
239
|
+
let types = Array.isArray(property.type) ? property.type : [property.type], valueType = getValueType(value);
|
|
240
|
+
if (!types.includes(valueType))
|
|
241
|
+
return !1;
|
|
242
|
+
}
|
|
243
|
+
if (property.enum && !property.enum.includes(value) || property.pattern && typeof value == "string" && !new RegExp(property.pattern).test(value))
|
|
244
|
+
return !1;
|
|
245
|
+
if (property.type === "array" && Array.isArray(value) && property.items && property.items.type) {
|
|
246
|
+
let itemType = property.items.type;
|
|
247
|
+
for (let item of value)
|
|
248
|
+
if (getValueType(item) !== itemType)
|
|
249
|
+
return !1;
|
|
250
|
+
}
|
|
251
|
+
return property.type === "object" && typeof value == "object" && value !== null, !0;
|
|
252
|
+
}
|
|
253
|
+
function getValueType(value) {
|
|
254
|
+
return value === null ? "null" : Array.isArray(value) ? "array" : typeof value;
|
|
255
|
+
}
|
|
256
|
+
function getPathBoost(filePath, flow) {
|
|
257
|
+
let pattern = getPatternFromFlow(flow, "from");
|
|
258
|
+
return pattern && matchGlob(filePath, pattern) ? 0.2 : 0;
|
|
259
|
+
}
|
|
260
|
+
function matchGlob(filePath, pattern) {
|
|
261
|
+
try {
|
|
262
|
+
return minimatch(filePath, pattern);
|
|
263
|
+
} catch (error) {
|
|
264
|
+
return logger.warn(`Invalid glob pattern: ${pattern}`, error), !1;
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
function extractSchemaPathFromFlow(flow) {
|
|
268
|
+
let from = flow.from;
|
|
269
|
+
if (typeof from == "object" && from !== null && "$switch" in from)
|
|
270
|
+
return null;
|
|
271
|
+
if (Array.isArray(from) && from.length > 0) {
|
|
272
|
+
let first = from[0];
|
|
273
|
+
return typeof first == "object" && "schema" in first && first.schema || null;
|
|
274
|
+
}
|
|
275
|
+
return typeof from == "object" && from !== null && "schema" in from && from.schema || null;
|
|
276
|
+
}
|
|
277
|
+
function detectFileFormats(files, targetDir) {
|
|
278
|
+
let results = /* @__PURE__ */ new Map();
|
|
279
|
+
for (let file of files) {
|
|
280
|
+
let format = detectFileFormat(file, targetDir);
|
|
281
|
+
results.set(file.path, format);
|
|
282
|
+
}
|
|
283
|
+
return results;
|
|
284
|
+
}
|
|
285
|
+
function groupFilesByFormat(formats) {
|
|
286
|
+
let groups = /* @__PURE__ */ new Map();
|
|
287
|
+
for (let [filePath, format] of formats) {
|
|
288
|
+
let platform = format.platform, group = groups.get(platform) || [];
|
|
289
|
+
group.push(filePath), groups.set(platform, group);
|
|
290
|
+
}
|
|
291
|
+
return groups;
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
export {
|
|
295
|
+
schemaRegistry,
|
|
296
|
+
getPatternFromFlow,
|
|
297
|
+
detectFileFormat,
|
|
298
|
+
scoreAgainstSchema,
|
|
299
|
+
detectFileFormats,
|
|
300
|
+
groupFilesByFormat
|
|
301
|
+
};
|
|
302
|
+
//# sourceMappingURL=chunk-6HEBGHXK.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../core/src/core/install/file-format-detector.ts", "../../core/src/core/install/schema-registry.ts"],
|
|
4
|
+
"sourcesContent": ["/**\n * File Format Detector Module\n * \n * Detects format for individual files using schema-based scoring.\n * Core detection logic for per-file format analysis.\n */\n\nimport { minimatch } from 'minimatch';\nimport { logger } from '../../utils/logger.js';\nimport { splitFrontmatter } from '../markdown-frontmatter.js';\nimport { schemaRegistry, getPatternFromFlow } from './schema-registry.js';\nimport { getPlatformDefinitions, isPlatformId, matchesUniversalPattern } from '../platforms.js';\nimport { extractPlatformSuffixFromFilename } from '../flows/platform-suffix-handler.js';\nimport type { Flow } from '../../types/flows.js';\nimport type { \n DetectionSchema,\n SchemaProperty,\n FileFormat,\n SchemaMatchResult,\n PackageFile,\n PlatformId\n} from './detection-types.js';\n\n/**\n * Detect format for a single file\n * \n * Main entry point for file-level format detection.\n * Scores file against all platform schemas and returns best match.\n * \n * @param file - Package file with path and optional content/frontmatter\n * @param targetDir - Optional target directory for local platform config\n * @returns Detected format with confidence score\n */\nexport function detectFileFormat(\n file: PackageFile,\n targetDir?: string\n): FileFormat {\n // Parse frontmatter if not already parsed\n let frontmatter = file.frontmatter;\n if (!frontmatter && file.content) {\n const parsed = splitFrontmatter(file.content);\n frontmatter = parsed.frontmatter || {};\n }\n \n // No frontmatter - use path-based fallback for universal locations\n if (!frontmatter || Object.keys(frontmatter).length === 0) {\n // Files at universal paths (commands/, agents/, rules/, etc.) or config files\n // are already in universal format; treat as universal, not unknown\n const normalizedPath = file.path.replace(/\\\\/g, '/').replace(/^\\.\\/?/, '');\n if (matchesUniversalPattern(normalizedPath, targetDir)) {\n return {\n platform: 'universal',\n confidence: 0.3,\n matchedFlow: null,\n matchedSchema: null,\n matchedFields: [],\n path: file.path\n };\n }\n return {\n platform: 'unknown',\n confidence: 0,\n matchedFlow: null,\n matchedSchema: null,\n matchedFields: [],\n path: file.path\n };\n }\n \n // Score against all platform schemas\n const platforms = getPlatformDefinitions(targetDir);\n const matches: SchemaMatchResult[] = [];\n \n for (const [platformId, def] of Object.entries(platforms)) {\n // Check both export and import flows for schemas\n // Export flows: universal -> platform (has platform schema on 'to')\n // Import flows: platform -> universal (has platform schema on 'from')\n \n // Check export flows for platform format schemas (on 'to' field)\n if (def.export && def.export.length > 0) {\n for (const flow of def.export) {\n const schema = schemaRegistry.getSchemaForFlow(flow, 'to');\n if (!schema) continue;\n \n const match = scoreAgainstSchema(frontmatter, schema, flow, file.path, platformId);\n if (match.score > 0) {\n matches.push(match);\n }\n }\n }\n \n // Check import flows for platform format schemas (on 'from' field)\n if (def.import && def.import.length > 0) {\n for (const flow of def.import) {\n const schema = schemaRegistry.getSchemaForFlow(flow, 'from');\n if (!schema) continue;\n \n const match = scoreAgainstSchema(frontmatter, schema, flow, file.path, platformId);\n if (match.score > 0) {\n matches.push(match);\n }\n }\n }\n }\n \n // No matches - use path-based platform suffix if present (e.g. foo.opencode.md)\n if (matches.length === 0) {\n const pathPlatform = extractPlatformSuffixFromFilename(file.path);\n if (pathPlatform && isPlatformId(pathPlatform)) {\n return {\n platform: pathPlatform,\n confidence: 0.7,\n matchedFlow: null,\n matchedSchema: null,\n matchedFields: [],\n path: file.path\n };\n }\n return {\n platform: 'universal',\n confidence: 0.3,\n matchedFlow: null,\n matchedSchema: null,\n matchedFields: [],\n path: file.path\n };\n }\n \n // Select best match\n const bestMatch = matches.reduce((best, current) => \n current.score > best.score ? current : best\n );\n \n return {\n platform: bestMatch.platform,\n confidence: Math.min(1.0, bestMatch.score / bestMatch.maxScore),\n matchedFlow: bestMatch.flow,\n matchedSchema: bestMatch.schemaPath,\n matchedFields: bestMatch.matchedFields,\n path: file.path\n };\n}\n\n/**\n * Score frontmatter against a schema\n * \n * Calculates confidence score based on:\n * - Field presence and type matching\n * - Detection weights from schema\n * - Exclusive field bonuses\n * - Path pattern matching boost\n * \n * @param frontmatter - Parsed frontmatter object\n * @param schema - Detection schema with x-detection-weight extensions\n * @param flow - Flow that references this schema\n * @param filePath - File path for pattern matching\n * @param platformId - Platform ID for result\n * @returns Schema match result with score breakdown\n */\nexport function scoreAgainstSchema(\n frontmatter: Record<string, any>,\n schema: DetectionSchema,\n flow: Flow,\n filePath: string,\n platformId: PlatformId\n): SchemaMatchResult {\n let score = 0;\n let maxScore = 0;\n const matchedFields: string[] = [];\n \n // Score each field\n if (schema.properties) {\n for (const [fieldName, property] of Object.entries(schema.properties)) {\n const weight = property['x-detection-weight'] || 0.1;\n maxScore += weight;\n \n // Check if field exists in frontmatter\n if (!(fieldName in frontmatter)) {\n continue;\n }\n \n const value = frontmatter[fieldName];\n \n // Validate against schema constraints\n if (!validateFieldAgainstSchema(value, property)) {\n continue;\n }\n \n // Field matches - add weight\n score += weight;\n matchedFields.push(fieldName);\n \n // Bonus for exclusive fields\n if (property['x-exclusive']) {\n score += 0.1;\n }\n }\n }\n \n // Add path boost if file matches flow pattern\n const pathBoost = getPathBoost(filePath, flow);\n score += pathBoost;\n \n // Extract schema path from flow\n const schemaPath = extractSchemaPathFromFlow(flow);\n \n return {\n platform: platformId,\n schemaPath: schemaPath || 'unknown',\n flow,\n score,\n maxScore,\n matchedFields,\n pathBoost\n };\n}\n\n/**\n * Validate a value against schema property constraints\n * \n * Checks type, enum, pattern, etc.\n */\nfunction validateFieldAgainstSchema(\n value: any,\n property: SchemaProperty\n): boolean {\n // Check type\n if (property.type) {\n const types = Array.isArray(property.type) ? property.type : [property.type];\n const valueType = getValueType(value);\n \n if (!types.includes(valueType)) {\n return false;\n }\n }\n \n // Check enum\n if (property.enum && !property.enum.includes(value)) {\n return false;\n }\n \n // Check pattern (for strings)\n if (property.pattern && typeof value === 'string') {\n const regex = new RegExp(property.pattern);\n if (!regex.test(value)) {\n return false;\n }\n }\n \n // Check array items\n if (property.type === 'array' && Array.isArray(value)) {\n if (property.items) {\n // Basic validation - all items should match item schema type\n if (property.items.type) {\n const itemType = property.items.type;\n for (const item of value) {\n if (getValueType(item) !== itemType) {\n return false;\n }\n }\n }\n }\n }\n \n // Check object properties\n if (property.type === 'object' && typeof value === 'object' && value !== null) {\n // Basic validation passed - could add more detailed object validation\n return true;\n }\n \n return true;\n}\n\n/**\n * Get JSON Schema type for a value\n */\nfunction getValueType(value: any): string {\n if (value === null) return 'null';\n if (Array.isArray(value)) return 'array';\n return typeof value;\n}\n\n/**\n * Get path boost for file matching flow pattern\n * \n * @param filePath - File path to check\n * @param flow - Flow with pattern\n * @returns Boost value (0-0.2)\n */\nfunction getPathBoost(filePath: string, flow: Flow): number {\n const pattern = getPatternFromFlow(flow, 'from');\n if (!pattern) {\n return 0;\n }\n \n // Check if file path matches pattern\n if (matchGlob(filePath, pattern)) {\n return 0.2;\n }\n \n return 0;\n}\n\n/**\n * Match file path against glob pattern\n */\nfunction matchGlob(filePath: string, pattern: string): boolean {\n try {\n return minimatch(filePath, pattern);\n } catch (error) {\n logger.warn(`Invalid glob pattern: ${pattern}`, error);\n return false;\n }\n}\n\n/**\n * Extract schema path from flow\n */\nfunction extractSchemaPathFromFlow(flow: Flow): string | null {\n const from = flow.from;\n \n // Skip switch expressions\n if (typeof from === 'object' && from !== null && '$switch' in from) {\n return null;\n }\n \n // Array - check first element\n if (Array.isArray(from) && from.length > 0) {\n const first = from[0];\n if (typeof first === 'object' && 'schema' in first) {\n return (first as any).schema || null;\n }\n return null;\n }\n \n // Object with schema\n if (typeof from === 'object' && from !== null && 'schema' in from) {\n return (from as any).schema || null;\n }\n \n return null;\n}\n\n/**\n * Batch detect formats for multiple files\n * \n * @param files - Array of package files\n * @param targetDir - Optional target directory\n * @returns Map of file path -> detected format\n */\nexport function detectFileFormats(\n files: PackageFile[],\n targetDir?: string\n): Map<string, FileFormat> {\n const results = new Map<string, FileFormat>();\n \n for (const file of files) {\n const format = detectFileFormat(file, targetDir);\n results.set(file.path, format);\n }\n \n return results;\n}\n\n/**\n * Group files by detected format\n * \n * @param formats - Map of file path -> format\n * @returns Map of platform -> file paths\n */\nexport function groupFilesByFormat(\n formats: Map<string, FileFormat>\n): Map<PlatformId | 'unknown', string[]> {\n const groups = new Map<PlatformId | 'unknown', string[]>();\n \n for (const [filePath, format] of formats) {\n const platform = format.platform;\n const group = groups.get(platform) || [];\n group.push(filePath);\n groups.set(platform, group);\n }\n \n return groups;\n}\n", "/**\n * Schema Registry Module\n * \n * Loads, caches, and provides access to format detection schemas.\n * Schemas are referenced from platforms.jsonc flows and define format-specific\n * field signatures for detection.\n */\n\nimport { readFileSync, existsSync } from 'fs';\nimport { join, dirname } from 'path';\nimport { fileURLToPath } from 'url';\nimport { logger } from '../../utils/logger.js';\nimport type { Flow, FlowContext, SwitchExpression } from '../../types/flows.js';\nimport type { \n DetectionSchema, \n FlowPattern,\n PlatformId \n} from './detection-types.js';\nimport { resolveSwitchExpressionFull } from '../flows/switch-resolver.js';\n\n// Get the path to platforms.jsonc for resolving relative schema paths.\n// Walk up from __dirname until we find the file (mirrors getProjectRoot in jsonc.ts).\nfunction findProjectRoot(): string {\n const __filename = fileURLToPath(import.meta.url);\n let dir = dirname(__filename);\n for (let i = 0; i < 10; i++) {\n if (existsSync(join(dir, 'platforms.jsonc'))) {\n return dir;\n }\n const parent = dirname(dir);\n if (parent === dir) break;\n dir = parent;\n }\n // Fallback to original 3-levels-up behaviour\n return join(dirname(fileURLToPath(import.meta.url)), '../../../');\n}\n\nconst projectRoot = findProjectRoot();\nconst platformsJsoncPath = join(projectRoot, 'platforms.jsonc');\n\n/**\n * Schema Registry\n * \n * Singleton registry for loading and caching format detection schemas.\n * Schemas are lazy-loaded on first access and cached for reuse.\n */\nclass SchemaRegistry {\n private schemaCache = new Map<string, DetectionSchema>();\n\n /**\n * Load a schema from an explicit path\n * \n * @param schemaPath - Relative path from platforms.jsonc (e.g., \"./schemas/formats/claude-agent.schema.json\")\n * @returns Parsed JSON schema with detection extensions\n */\n loadSchema(schemaPath: string): DetectionSchema | null {\n // Check cache first\n if (this.schemaCache.has(schemaPath)) {\n return this.schemaCache.get(schemaPath)!;\n }\n\n try {\n // Resolve path relative to platforms.jsonc location\n const resolvedPath = this.resolveSchemaPath(schemaPath);\n \n const content = readFileSync(resolvedPath, 'utf-8');\n const schema = JSON.parse(content) as DetectionSchema;\n \n // Validate basic structure\n if (!schema.$schema || !schema.properties) {\n logger.warn(`Schema at ${schemaPath} is missing required fields ($schema, properties)`);\n return null;\n }\n \n // Cache and return\n this.schemaCache.set(schemaPath, schema);\n return schema;\n } catch (error) {\n logger.warn(`Failed to load schema from ${schemaPath}:`, error);\n return null;\n }\n }\n\n /**\n * Resolve schema path relative to platforms.jsonc\n */\n private resolveSchemaPath(schemaPath: string): string {\n // Remove leading \"./\" if present\n const cleanPath = schemaPath.replace(/^\\.\\//, '');\n return join(dirname(platformsJsoncPath), cleanPath);\n }\n\n /**\n * Get schema for a flow's 'from' or 'to' pattern\n * \n * @param flow - Flow object (may use string or object patterns)\n * @param direction - Which pattern to extract schema from ('from' or 'to')\n * @param context - Optional flow context for resolving $switch expressions\n * @returns Schema if pattern has schema reference, null otherwise\n */\n getSchemaForFlow(flow: Flow, direction: 'from' | 'to', context?: FlowContext): DetectionSchema | null {\n const pattern = flow[direction];\n \n // Handle switch expressions - resolve with context if available\n if (typeof pattern === 'object' && '$switch' in pattern) {\n if (!context) {\n // Without context, cannot resolve switch expression\n return null;\n }\n \n try {\n const result = resolveSwitchExpressionFull(pattern as SwitchExpression, context);\n if (result.schema) {\n return this.loadSchema(result.schema);\n }\n return null;\n } catch {\n // If switch resolution fails, return null\n return null;\n }\n }\n \n // Extract schema path from pattern\n const schemaPath = this.extractSchemaPath(pattern, direction);\n if (!schemaPath) {\n return null;\n }\n \n return this.loadSchema(schemaPath);\n }\n\n /**\n * Extract schema path from a pattern (string, array, or object)\n */\n private extractSchemaPath(\n pattern: string | string[] | FlowPattern | Record<string, any>,\n direction: 'from' | 'to'\n ): string | null {\n // String pattern - no schema\n if (typeof pattern === 'string') {\n return null;\n }\n \n // Array of patterns - check if first element has schema (for 'from' only)\n if (Array.isArray(pattern) && direction === 'from') {\n if (pattern.length === 0) return null;\n \n const first = pattern[0];\n if (typeof first === 'object' && 'schema' in first) {\n return (first as FlowPattern).schema || null;\n }\n return null;\n }\n \n // Object pattern - check for schema field\n if (typeof pattern === 'object' && pattern !== null && 'schema' in pattern) {\n return (pattern as FlowPattern).schema || null;\n }\n \n return null;\n }\n\n /**\n * Get all schemas referenced in platform flows\n * \n * @param platforms - Platform definitions registry\n * @returns Map of schema path -> loaded schema\n */\n getAllFlowSchemas(platforms: Record<PlatformId, any>): Map<string, DetectionSchema> {\n const schemas = new Map<string, DetectionSchema>();\n \n for (const [platformId, def] of Object.entries(platforms)) {\n // Process import flows (workspace -> package, used for detection)\n if (def.import && Array.isArray(def.import)) {\n for (const flow of def.import) {\n const schema = this.getSchemaForFlow(flow, 'from');\n if (schema) {\n const schemaPath = this.extractSchemaPath(flow.from, 'from');\n if (schemaPath) {\n schemas.set(schemaPath, schema);\n }\n }\n }\n }\n }\n \n return schemas;\n }\n\n /**\n * Clear the schema cache\n * Useful for testing or reloading schemas\n */\n clearCache(): void {\n this.schemaCache.clear();\n }\n\n /**\n * Get number of cached schemas\n */\n getCacheSize(): number {\n return this.schemaCache.size;\n }\n}\n\n// Export singleton instance\nexport const schemaRegistry = new SchemaRegistry();\n\n/**\n * Helper: Get pattern string from flow (handles string, array, and object formats)\n * \n * @param flow - Flow object\n * @param direction - Which pattern to extract ('from' or 'to')\n * @returns Pattern string (first pattern if array)\n */\nexport function getPatternFromFlow(flow: Flow, direction: 'from' | 'to'): string | null {\n const pattern = flow[direction];\n \n // Skip switch expressions\n if (typeof pattern === 'object' && pattern !== null && '$switch' in pattern) {\n return null;\n }\n \n // Skip MultiTargetFlows (can't extract single pattern)\n if (typeof pattern === 'object' && pattern !== null && !('pattern' in pattern) && !Array.isArray(pattern)) {\n return null;\n }\n \n // String pattern\n if (typeof pattern === 'string') {\n return pattern;\n }\n \n // Array of patterns (for 'from' only)\n if (Array.isArray(pattern) && direction === 'from') {\n if (pattern.length === 0) return null;\n \n const first = pattern[0];\n if (typeof first === 'string') {\n return first;\n }\n if (typeof first === 'object' && 'pattern' in first) {\n return (first as FlowPattern).pattern;\n }\n return null;\n }\n \n // Object pattern with 'pattern' field\n if (typeof pattern === 'object' && pattern !== null && 'pattern' in pattern) {\n return (pattern as unknown as FlowPattern).pattern;\n }\n \n return null;\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
// ../core/src/core/resources/resource-naming.ts
|
|
4
|
+
import { basename } from "path";
|
|
5
|
+
function stripExtension(filename) {
|
|
6
|
+
return filename.replace(/\.[^.]+$/, "") || filename;
|
|
7
|
+
}
|
|
8
|
+
function defaultNameFromPath(filePath) {
|
|
9
|
+
return stripExtension(basename(filePath));
|
|
10
|
+
}
|
|
11
|
+
function defaultNameFromSkillDir(dirPath) {
|
|
12
|
+
return basename(dirPath);
|
|
13
|
+
}
|
|
14
|
+
function preferFrontmatterName(frontmatterName, fallbackName) {
|
|
15
|
+
return frontmatterName && frontmatterName.trim().length > 0 ? frontmatterName : fallbackName;
|
|
16
|
+
}
|
|
17
|
+
function deriveUntrackedResourceName(workspacePath) {
|
|
18
|
+
let parts = workspacePath.split("/"), fileName = parts[parts.length - 1];
|
|
19
|
+
return fileName === "SKILL.md" && parts.length >= 2 ? parts[parts.length - 2] : stripExtension(fileName);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export {
|
|
23
|
+
stripExtension,
|
|
24
|
+
defaultNameFromPath,
|
|
25
|
+
defaultNameFromSkillDir,
|
|
26
|
+
preferFrontmatterName,
|
|
27
|
+
deriveUntrackedResourceName
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=chunk-6YZNE3MU.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../core/src/core/resources/resource-naming.ts"],
|
|
4
|
+
"sourcesContent": ["import { basename } from 'path';\n\nexport function stripExtension(filename: string): string {\n return filename.replace(/\\.[^.]+$/, '') || filename;\n}\n\nexport function defaultNameFromPath(filePath: string): string {\n return stripExtension(basename(filePath));\n}\n\nexport function defaultNameFromSkillDir(dirPath: string): string {\n return basename(dirPath);\n}\n\nexport function preferFrontmatterName(\n frontmatterName: string | undefined,\n fallbackName: string\n): string {\n return frontmatterName && frontmatterName.trim().length > 0\n ? frontmatterName\n : fallbackName;\n}\n\n/**\n * Derive a display name from an untracked file's workspace path.\n * For SKILL.md files nested in a directory, uses the parent directory name.\n * Otherwise uses the filename without extension.\n */\nexport function deriveUntrackedResourceName(workspacePath: string): string {\n const parts = workspacePath.split('/');\n const fileName = parts[parts.length - 1];\n if (fileName === 'SKILL.md' && parts.length >= 2) {\n return parts[parts.length - 2];\n }\n return stripExtension(fileName);\n}\n"],
|
|
5
|
+
"mappings": ";;;AAAA,SAAS,gBAAgB;AAElB,SAAS,eAAe,UAA0B;AACvD,SAAO,SAAS,QAAQ,YAAY,EAAE,KAAK;AAC7C;AAEO,SAAS,oBAAoB,UAA0B;AAC5D,SAAO,eAAe,SAAS,QAAQ,CAAC;AAC1C;AAEO,SAAS,wBAAwB,SAAyB;AAC/D,SAAO,SAAS,OAAO;AACzB;AAEO,SAAS,sBACd,iBACA,cACQ;AACR,SAAO,mBAAmB,gBAAgB,KAAK,EAAE,SAAS,IACtD,kBACA;AACN;AAOO,SAAS,4BAA4B,eAA+B;AACzE,MAAM,QAAQ,cAAc,MAAM,GAAG,GAC/B,WAAW,MAAM,MAAM,SAAS,CAAC;AACvC,SAAI,aAAa,cAAc,MAAM,UAAU,IACtC,MAAM,MAAM,SAAS,CAAC,IAExB,eAAe,QAAQ;AAChC;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
// ../core/src/utils/file-walker.ts
|
|
4
|
+
import { promises as fs } from "fs";
|
|
5
|
+
import { join } from "path";
|
|
6
|
+
async function* walkFiles(dir, options = {}) {
|
|
7
|
+
let {
|
|
8
|
+
filter,
|
|
9
|
+
followSymlinks = !1,
|
|
10
|
+
maxDepth = 1 / 0,
|
|
11
|
+
includeDirs = !1
|
|
12
|
+
} = options;
|
|
13
|
+
yield* walkFilesInternal(dir, filter, followSymlinks, maxDepth, includeDirs, 0);
|
|
14
|
+
}
|
|
15
|
+
async function* walkFilesInternal(dir, filter, followSymlinks, maxDepth, includeDirs, currentDepth) {
|
|
16
|
+
if (!(currentDepth > maxDepth))
|
|
17
|
+
try {
|
|
18
|
+
let entries = await fs.readdir(dir, { withFileTypes: !0 });
|
|
19
|
+
for (let entry of entries) {
|
|
20
|
+
let fullPath = join(dir, entry.name), isDirectory = entry.isDirectory(), isFile = entry.isFile();
|
|
21
|
+
if (entry.isSymbolicLink() && followSymlinks)
|
|
22
|
+
try {
|
|
23
|
+
let stat = await fs.stat(fullPath);
|
|
24
|
+
isDirectory = stat.isDirectory(), isFile = stat.isFile();
|
|
25
|
+
} catch {
|
|
26
|
+
continue;
|
|
27
|
+
}
|
|
28
|
+
else if (entry.isSymbolicLink())
|
|
29
|
+
continue;
|
|
30
|
+
filter && !await filter(fullPath, isDirectory) || (isDirectory && includeDirs && (yield fullPath), isDirectory ? yield* walkFilesInternal(
|
|
31
|
+
fullPath,
|
|
32
|
+
filter,
|
|
33
|
+
followSymlinks,
|
|
34
|
+
maxDepth,
|
|
35
|
+
includeDirs,
|
|
36
|
+
currentDepth + 1
|
|
37
|
+
) : isFile && (yield fullPath));
|
|
38
|
+
}
|
|
39
|
+
} catch (error) {
|
|
40
|
+
if (error.code !== "EACCES" && error.code !== "EPERM")
|
|
41
|
+
throw error;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export {
|
|
46
|
+
walkFiles
|
|
47
|
+
};
|
|
48
|
+
//# sourceMappingURL=chunk-A6ISKBNM.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../core/src/utils/file-walker.ts"],
|
|
4
|
+
"sourcesContent": ["/**\n * File Walker Utility\n * \n * Provides efficient file system traversal utilities for walking directory trees.\n * Used across install, save, status, pack, and other commands.\n */\n\nimport { promises as fs } from 'fs';\nimport { join } from 'path';\n\n/**\n * Filter predicate for file walking\n */\nexport type FileFilter = (path: string, isDirectory: boolean) => boolean | Promise<boolean>;\n\n/**\n * Options for file walking\n */\nexport interface WalkOptions {\n /**\n * Filter predicate to include/exclude files and directories\n */\n filter?: FileFilter;\n \n /**\n * Follow symbolic links (default: false)\n */\n followSymlinks?: boolean;\n \n /**\n * Maximum depth to traverse (default: unlimited)\n */\n maxDepth?: number;\n \n /**\n * Include directories in results (default: false, only files)\n */\n includeDirs?: boolean;\n}\n\n/**\n * Async generator that walks a directory tree and yields file paths\n * \n * @param dir - Directory to walk\n * @param options - Walking options\n * \n * @example\n * for await (const filePath of walkFiles('/path/to/dir')) {\n * console.log(filePath);\n * }\n */\nexport async function* walkFiles(\n dir: string,\n options: WalkOptions = {}\n): AsyncGenerator<string> {\n const {\n filter,\n followSymlinks = false,\n maxDepth = Infinity,\n includeDirs = false\n } = options;\n \n yield* walkFilesInternal(dir, filter, followSymlinks, maxDepth, includeDirs, 0);\n}\n\n/**\n * Internal recursive walker\n */\nasync function* walkFilesInternal(\n dir: string,\n filter: FileFilter | undefined,\n followSymlinks: boolean,\n maxDepth: number,\n includeDirs: boolean,\n currentDepth: number\n): AsyncGenerator<string> {\n // Check depth limit\n if (currentDepth > maxDepth) {\n return;\n }\n \n try {\n const entries = await fs.readdir(dir, { withFileTypes: true });\n \n for (const entry of entries) {\n const fullPath = join(dir, entry.name);\n \n // Handle symlinks\n let isDirectory = entry.isDirectory();\n let isFile = entry.isFile();\n \n if (entry.isSymbolicLink() && followSymlinks) {\n try {\n const stat = await fs.stat(fullPath);\n isDirectory = stat.isDirectory();\n isFile = stat.isFile();\n } catch {\n // Skip broken symlinks\n continue;\n }\n } else if (entry.isSymbolicLink()) {\n // Skip symlinks if not following\n continue;\n }\n \n // Apply filter\n if (filter) {\n const shouldInclude = await filter(fullPath, isDirectory);\n if (!shouldInclude) {\n continue;\n }\n }\n \n // Yield directories if requested\n if (isDirectory && includeDirs) {\n yield fullPath;\n }\n \n // Recurse into directories\n if (isDirectory) {\n yield* walkFilesInternal(\n fullPath,\n filter,\n followSymlinks,\n maxDepth,\n includeDirs,\n currentDepth + 1\n );\n } else if (isFile) {\n // Yield files\n yield fullPath;\n }\n }\n } catch (error) {\n // Ignore permission errors and continue\n if ((error as NodeJS.ErrnoException).code !== 'EACCES' && \n (error as NodeJS.ErrnoException).code !== 'EPERM') {\n throw error;\n }\n }\n}\n\n/**\n * Walk directory and collect all files into an array\n * \n * @param dir - Directory to walk\n * @param options - Walking options\n * @returns Array of file paths\n */\nexport async function collectFiles(\n dir: string,\n options: WalkOptions = {}\n): Promise<string[]> {\n const files: string[] = [];\n \n for await (const filePath of walkFiles(dir, options)) {\n files.push(filePath);\n }\n \n return files;\n}\n\n/**\n * Walk directory with a simple include/exclude pattern filter\n * \n * @param dir - Directory to walk\n * @param includePatterns - Patterns to include (minimatch)\n * @param excludePatterns - Patterns to exclude (minimatch)\n * @returns Async generator of matching file paths\n */\nexport async function* walkWithPatterns(\n dir: string,\n includePatterns: string[] = ['**/*'],\n excludePatterns: string[] = []\n): AsyncGenerator<string> {\n const { minimatch } = await import('minimatch');\n const { relative } = await import('path');\n \n const filter: FileFilter = (path: string, isDirectory: boolean) => {\n // Always traverse directories\n if (isDirectory) {\n return true;\n }\n \n const relativePath = relative(dir, path);\n \n // Check exclusions first\n for (const pattern of excludePatterns) {\n if (minimatch(relativePath, pattern, { dot: true })) {\n return false;\n }\n }\n \n // Check inclusions\n for (const pattern of includePatterns) {\n if (minimatch(relativePath, pattern, { dot: true })) {\n return true;\n }\n }\n \n return false;\n };\n \n yield* walkFiles(dir, { filter });\n}\n\n/**\n * Count files in a directory (without collecting them all)\n * \n * @param dir - Directory to walk\n * @param options - Walking options\n * @returns Number of files\n */\nexport async function countFiles(\n dir: string,\n options: WalkOptions = {}\n): Promise<number> {\n let count = 0;\n \n for await (const _ of walkFiles(dir, options)) {\n count++;\n }\n \n return count;\n}\n"],
|
|
5
|
+
"mappings": ";;;AAOA,SAAS,YAAY,UAAU;AAC/B,SAAS,YAAY;AA2CrB,gBAAuB,UACrB,KACA,UAAuB,CAAC,GACA;AACxB,MAAM;AAAA,IACJ;AAAA,IACA,iBAAiB;AAAA,IACjB,WAAW;AAAA,IACX,cAAc;AAAA,EAChB,IAAI;AAEJ,SAAO,kBAAkB,KAAK,QAAQ,gBAAgB,UAAU,aAAa,CAAC;AAChF;AAKA,gBAAgB,kBACd,KACA,QACA,gBACA,UACA,aACA,cACwB;AAExB,MAAI,iBAAe;AAInB,QAAI;AACF,UAAM,UAAU,MAAM,GAAG,QAAQ,KAAK,EAAE,eAAe,GAAK,CAAC;AAE7D,eAAW,SAAS,SAAS;AAC3B,YAAM,WAAW,KAAK,KAAK,MAAM,IAAI,GAGjC,cAAc,MAAM,YAAY,GAChC,SAAS,MAAM,OAAO;AAE1B,YAAI,MAAM,eAAe,KAAK;AAC5B,cAAI;AACF,gBAAM,OAAO,MAAM,GAAG,KAAK,QAAQ;AACnC,0BAAc,KAAK,YAAY,GAC/B,SAAS,KAAK,OAAO;AAAA,UACvB,QAAQ;AAEN;AAAA,UACF;AAAA,iBACS,MAAM,eAAe;AAE9B;AAIF,QAAI,UAEE,CADkB,MAAM,OAAO,UAAU,WAAW,MAOtD,eAAe,gBACjB,MAAM,WAIJ,cACF,OAAO;AAAA,UACL;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA,eAAe;AAAA,QACjB,IACS,WAET,MAAM;AAAA,MAEV;AAAA,IACF,SAAS,OAAO;AAEd,UAAK,MAAgC,SAAS,YACzC,MAAgC,SAAS;AAC5C,cAAM;AAAA,IAEV;AACF;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import {
|
|
3
|
+
remove
|
|
4
|
+
} from "./chunk-S47F4OG4.js";
|
|
5
|
+
import {
|
|
6
|
+
logger
|
|
7
|
+
} from "./chunk-5EFWGD33.js";
|
|
8
|
+
|
|
9
|
+
// ../core/src/utils/cleanup-empty-parents.ts
|
|
10
|
+
import path from "path";
|
|
11
|
+
import { readdir } from "fs/promises";
|
|
12
|
+
async function cleanupEmptyParents(rootDir, deletedPaths, preservedDirs = /* @__PURE__ */ new Set()) {
|
|
13
|
+
let candidateDirs = /* @__PURE__ */ new Set();
|
|
14
|
+
for (let deletedPath of deletedPaths) {
|
|
15
|
+
let current = path.dirname(deletedPath);
|
|
16
|
+
for (; current.startsWith(rootDir) && current !== rootDir && !preservedDirs.has(current); )
|
|
17
|
+
candidateDirs.add(current), current = path.dirname(current);
|
|
18
|
+
}
|
|
19
|
+
let sorted = Array.from(candidateDirs).sort((a, b) => b.length - a.length);
|
|
20
|
+
for (let dir of sorted)
|
|
21
|
+
try {
|
|
22
|
+
(await readdir(dir)).length === 0 && !preservedDirs.has(dir) && (await remove(dir), logger.debug(`Removed empty directory: ${path.relative(rootDir, dir)}`));
|
|
23
|
+
} catch (error) {
|
|
24
|
+
logger.debug(`Could not process directory ${dir}: ${error}`);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export {
|
|
29
|
+
cleanupEmptyParents
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=chunk-AMHDY5PC.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../core/src/utils/cleanup-empty-parents.ts"],
|
|
4
|
+
"sourcesContent": ["import path from 'path';\nimport { readdir } from 'fs/promises';\n\nimport { remove } from './fs.js';\nimport { logger } from './logger.js';\n\n/**\n * Clean up empty parent directories after file deletion.\n * \n * Walks up the directory tree from each deleted file, removing empty directories\n * until hitting a preserved directory or the root.\n * \n * For platform files (e.g., .cursor/commands/essentials/file.md):\n * - Removes empty subdirectories (essentials/, commands/)\n * - Stops at and preserves the platform root (.cursor/)\n * \n * For root files (e.g., docs/guides/file.md):\n * - Removes all empty parent directories\n * - Stops only at workspace root\n * \n * @param rootDir - Root directory boundary (workspace root or package root)\n * @param deletedPaths - Absolute paths of deleted files\n * @param preservedDirs - Set of absolute directory paths to preserve (never remove)\n */\nexport async function cleanupEmptyParents(\n rootDir: string,\n deletedPaths: string[],\n preservedDirs: Set<string> = new Set()\n): Promise<void> {\n const candidateDirs = new Set<string>();\n\n // Collect all parent directories from deleted files\n for (const deletedPath of deletedPaths) {\n let current = path.dirname(deletedPath);\n \n // Walk up the directory tree\n while (current.startsWith(rootDir) && current !== rootDir) {\n // Stop at preserved directories (platform roots)\n if (preservedDirs.has(current)) {\n break;\n }\n \n candidateDirs.add(current);\n current = path.dirname(current);\n }\n }\n\n // Sort by depth (deepest first) to ensure we process child directories before parents\n const sorted = Array.from(candidateDirs).sort((a, b) => b.length - a.length);\n \n // Remove empty directories\n for (const dir of sorted) {\n try {\n const entries = await readdir(dir);\n \n // Only remove if directory is empty and not preserved\n if (entries.length === 0 && !preservedDirs.has(dir)) {\n await remove(dir);\n logger.debug(`Removed empty directory: ${path.relative(rootDir, dir)}`);\n }\n } catch (error) {\n // Ignore errors (directory may not exist, permission issues, etc.)\n logger.debug(`Could not process directory ${dir}: ${error}`);\n }\n }\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;AAAA,OAAO,UAAU;AACjB,SAAS,eAAe;AAuBxB,eAAsB,oBACpB,SACA,cACA,gBAA6B,oBAAI,IAAI,GACtB;AACf,MAAM,gBAAgB,oBAAI,IAAY;AAGtC,WAAW,eAAe,cAAc;AACtC,QAAI,UAAU,KAAK,QAAQ,WAAW;AAGtC,WAAO,QAAQ,WAAW,OAAO,KAAK,YAAY,WAE5C,eAAc,IAAI,OAAO;AAI7B,oBAAc,IAAI,OAAO,GACzB,UAAU,KAAK,QAAQ,OAAO;AAAA,EAElC;AAGA,MAAM,SAAS,MAAM,KAAK,aAAa,EAAE,KAAK,CAAC,GAAG,MAAM,EAAE,SAAS,EAAE,MAAM;AAG3E,WAAW,OAAO;AAChB,QAAI;AAIF,OAHgB,MAAM,QAAQ,GAAG,GAGrB,WAAW,KAAK,CAAC,cAAc,IAAI,GAAG,MAChD,MAAM,OAAO,GAAG,GAChB,OAAO,MAAM,4BAA4B,KAAK,SAAS,SAAS,GAAG,CAAC,EAAE;AAAA,IAE1E,SAAS,OAAO;AAEd,aAAO,MAAM,+BAA+B,GAAG,KAAK,KAAK,EAAE;AAAA,IAC7D;AAEJ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|