@unbrained/pm-cli 2026.7.3 → 2026.7.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +36 -0
- package/CONTRIBUTING.md +36 -7
- package/README.md +1 -9
- package/dist/cli/commands/calendar.d.ts +3 -2
- package/dist/cli/commands/calendar.js +5 -5
- package/dist/cli/commands/calendar.js.map +1 -1
- package/dist/cli/commands/claim.js +17 -3
- package/dist/cli/commands/claim.js.map +1 -1
- package/dist/cli/commands/close.js +34 -16
- package/dist/cli/commands/close.js.map +1 -1
- package/dist/cli/commands/completion.js +231 -345
- package/dist/cli/commands/completion.js.map +1 -1
- package/dist/cli/commands/copy.js +3 -3
- package/dist/cli/commands/copy.js.map +1 -1
- package/dist/cli/commands/create.d.ts +9 -59
- package/dist/cli/commands/create.js +162 -132
- package/dist/cli/commands/create.js.map +1 -1
- package/dist/cli/commands/extension/bundled-catalog.d.ts +6 -0
- package/dist/cli/commands/extension/bundled-catalog.js +15 -2
- package/dist/cli/commands/extension/bundled-catalog.js.map +1 -1
- package/dist/cli/commands/extension/describe.d.ts +6 -3
- package/dist/cli/commands/extension/describe.js +21 -9
- package/dist/cli/commands/extension/describe.js.map +1 -1
- package/dist/cli/commands/extension/doctor.d.ts +0 -4
- package/dist/cli/commands/extension/doctor.js +3 -3
- package/dist/cli/commands/extension/doctor.js.map +1 -1
- package/dist/cli/commands/extension/scaffold.js +59 -133
- package/dist/cli/commands/extension/scaffold.js.map +1 -1
- package/dist/cli/commands/extension/shared.d.ts +2 -7
- package/dist/cli/commands/extension/shared.js +4 -10
- package/dist/cli/commands/extension/shared.js.map +1 -1
- package/dist/cli/commands/extension.js +33 -8
- package/dist/cli/commands/extension.js.map +1 -1
- package/dist/cli/commands/files.js +3 -3
- package/dist/cli/commands/files.js.map +1 -1
- package/dist/cli/commands/history-compact.js +9 -18
- package/dist/cli/commands/history-compact.js.map +1 -1
- package/dist/cli/commands/history-repair.js +9 -19
- package/dist/cli/commands/history-repair.js.map +1 -1
- package/dist/cli/commands/init-agent-guidance.js +133 -97
- package/dist/cli/commands/init-agent-guidance.js.map +1 -1
- package/dist/cli/commands/init.js +3 -3
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/item-filter-options.d.ts +2 -0
- package/dist/cli/commands/item-filter-options.js +2 -2
- package/dist/cli/commands/item-filter-options.js.map +1 -1
- package/dist/cli/commands/mutation-command-options.d.ts +78 -0
- package/dist/cli/commands/mutation-command-options.js +10 -0
- package/dist/cli/commands/mutation-command-options.js.map +1 -0
- package/dist/cli/commands/profile.js +3 -3
- package/dist/cli/commands/profile.js.map +1 -1
- package/dist/cli/commands/reindex.js +4 -4
- package/dist/cli/commands/reindex.js.map +1 -1
- package/dist/cli/commands/restore.js +3 -3
- package/dist/cli/commands/restore.js.map +1 -1
- package/dist/cli/commands/schema.js +10 -10
- package/dist/cli/commands/schema.js.map +1 -1
- package/dist/cli/commands/shared-unset-fields.d.ts +19 -0
- package/dist/cli/commands/shared-unset-fields.js +31 -2
- package/dist/cli/commands/shared-unset-fields.js.map +1 -1
- package/dist/cli/commands/update.d.ts +2 -59
- package/dist/cli/commands/update.js +29 -98
- package/dist/cli/commands/update.js.map +1 -1
- package/dist/cli/commands/validate.js +4 -4
- package/dist/cli/commands/validate.js.map +1 -1
- package/dist/cli/error-guidance.js +107 -7
- package/dist/cli/error-guidance.js.map +1 -1
- package/dist/cli/main.d.ts +6 -2
- package/dist/cli/main.js +33 -12
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/register-list-query.js +4 -2
- package/dist/cli/register-list-query.js.map +1 -1
- package/dist/cli/registration-helpers.js +12 -6
- package/dist/cli/registration-helpers.js.map +1 -1
- package/dist/cli-bundle/chunks/activity-4XQIDNM5.js +18 -0
- package/dist/cli-bundle/chunks/{activity-5YWLSPGE.js → activity-YKAKZTZ4.js} +11 -9
- package/dist/cli-bundle/chunks/{aggregate-2V2M3JZU.js → aggregate-EQX2RGB7.js} +16 -13
- package/dist/cli-bundle/chunks/{aggregate-2V2M3JZU.js.map → aggregate-EQX2RGB7.js.map} +1 -1
- package/dist/cli-bundle/chunks/{aggregate-EK7DXML7.js → aggregate-PEGZGJXD.js} +18 -15
- package/dist/cli-bundle/chunks/{aggregate-EK7DXML7.js.map → aggregate-PEGZGJXD.js.map} +1 -1
- package/dist/cli-bundle/chunks/{append-EZESUVJT.js → append-CZGUZ45Q.js} +11 -8
- package/dist/cli-bundle/chunks/{append-EZESUVJT.js.map → append-CZGUZ45Q.js.map} +1 -1
- package/dist/cli-bundle/chunks/{append-JFG4WQMG.js → append-NSQBCXZJ.js} +13 -10
- package/dist/cli-bundle/chunks/{append-JFG4WQMG.js.map → append-NSQBCXZJ.js.map} +1 -1
- package/dist/cli-bundle/chunks/chunk-3JZNEQBA.js +1413 -0
- package/dist/cli-bundle/chunks/chunk-3JZNEQBA.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-NOIEVOK5.js → chunk-3PL6LEKP.js} +16 -14
- package/dist/cli-bundle/chunks/{chunk-NOIEVOK5.js.map → chunk-3PL6LEKP.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-6KRFL33E.js → chunk-3U3VEWK6.js} +277 -119
- package/dist/cli-bundle/chunks/chunk-3U3VEWK6.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-Z5F6XZXE.js → chunk-3Y4OESPP.js} +14 -12
- package/dist/cli-bundle/chunks/{chunk-Z5F6XZXE.js.map → chunk-3Y4OESPP.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-HB4FAT3O.js → chunk-4LRVSBO6.js} +21 -15
- package/dist/cli-bundle/chunks/chunk-4LRVSBO6.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-T3P7PMZP.js → chunk-4OFLJHX6.js} +7 -5
- package/dist/cli-bundle/chunks/{chunk-T3P7PMZP.js.map → chunk-4OFLJHX6.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-JPATY4SE.js → chunk-4QQ6PM7M.js} +45 -557
- package/dist/cli-bundle/chunks/chunk-4QQ6PM7M.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-6CDCWKSX.js → chunk-53BTLLAF.js} +68 -331
- package/dist/cli-bundle/chunks/chunk-53BTLLAF.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-4WB6S4YX.js → chunk-57C2RLW5.js} +277 -112
- package/dist/cli-bundle/chunks/chunk-57C2RLW5.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-PULUSQAV.js → chunk-5B3X4Y22.js} +52 -63
- package/dist/cli-bundle/chunks/{chunk-PULUSQAV.js.map → chunk-5B3X4Y22.js.map} +3 -3
- package/dist/cli-bundle/chunks/{chunk-7LYO6S5A.js → chunk-5J2XPTAD.js} +10 -8
- package/dist/cli-bundle/chunks/{chunk-7LYO6S5A.js.map → chunk-5J2XPTAD.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-QCDTQCMW.js → chunk-5JE6SMYS.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-MHRS5FUX.js → chunk-5JZ7APJU.js} +153 -108
- package/dist/cli-bundle/chunks/chunk-5JZ7APJU.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-KHVGM5CS.js → chunk-5VVUKE3U.js} +544 -2368
- package/dist/cli-bundle/chunks/chunk-5VVUKE3U.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-RJH5VQHW.js → chunk-75U6M5ZD.js} +22 -16
- package/dist/cli-bundle/chunks/chunk-75U6M5ZD.js.map +1 -0
- package/dist/cli-bundle/chunks/chunk-7C2O74AE.js +23 -0
- package/dist/cli-bundle/chunks/chunk-7C2O74AE.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-ZFTKYWIF.js → chunk-7EQNAZX2.js} +14 -12
- package/dist/cli-bundle/chunks/{chunk-ZFTKYWIF.js.map → chunk-7EQNAZX2.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-Z4DGFQDH.js → chunk-7LQKVMPA.js} +14 -4
- package/dist/cli-bundle/chunks/chunk-7LQKVMPA.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-ERG65A2L.js → chunk-7MDXZAZS.js} +29 -7
- package/dist/cli-bundle/chunks/chunk-7MDXZAZS.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-OGLGI22K.js → chunk-7QH7DHUB.js} +74 -8
- package/dist/cli-bundle/chunks/chunk-7QH7DHUB.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-JBZ2NTKX.js → chunk-7WYXBPYQ.js} +7 -5
- package/dist/cli-bundle/chunks/{chunk-JBZ2NTKX.js.map → chunk-7WYXBPYQ.js.map} +1 -1
- package/dist/cli-bundle/chunks/chunk-AAEQMOC6.js +150 -0
- package/dist/cli-bundle/chunks/chunk-AAEQMOC6.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-K5DT2YKM.js → chunk-ABRA3BHY.js} +18 -16
- package/dist/cli-bundle/chunks/{chunk-K5DT2YKM.js.map → chunk-ABRA3BHY.js.map} +2 -2
- package/dist/cli-bundle/chunks/chunk-B5KXLBSJ.js +47 -0
- package/dist/cli-bundle/chunks/chunk-B5KXLBSJ.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-7CLLC75T.js → chunk-BFVHCAOO.js} +9 -7
- package/dist/cli-bundle/chunks/{chunk-7CLLC75T.js.map → chunk-BFVHCAOO.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-MDHWWBNZ.js → chunk-BVEUCSH2.js} +6 -4
- package/dist/cli-bundle/chunks/{chunk-MDHWWBNZ.js.map → chunk-BVEUCSH2.js.map} +1 -1
- package/dist/cli-bundle/chunks/chunk-C3PMDWGX.js +160 -0
- package/dist/cli-bundle/chunks/chunk-C3PMDWGX.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-T4XBKJ3F.js → chunk-D3UCE7RW.js} +7 -5
- package/dist/cli-bundle/chunks/{chunk-T4XBKJ3F.js.map → chunk-D3UCE7RW.js.map} +1 -1
- package/dist/cli-bundle/chunks/chunk-DC3QJQWI.js +275 -0
- package/dist/cli-bundle/chunks/chunk-DC3QJQWI.js.map +7 -0
- package/dist/cli-bundle/chunks/chunk-DLQ4ZTCU.js +634 -0
- package/dist/cli-bundle/chunks/chunk-DLQ4ZTCU.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-AJHYQCBJ.js → chunk-DRBV5UC2.js} +8 -23
- package/dist/cli-bundle/chunks/chunk-DRBV5UC2.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-NZ7QIUP5.js → chunk-E2FUG6GD.js} +67 -351
- package/dist/cli-bundle/chunks/chunk-E2FUG6GD.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-4PFVUUYV.js → chunk-EEY54JMF.js} +5 -3
- package/dist/cli-bundle/chunks/{chunk-4PFVUUYV.js.map → chunk-EEY54JMF.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-3W2HJKJX.js → chunk-EZFKWSC7.js} +94 -16
- package/dist/cli-bundle/chunks/{chunk-3W2HJKJX.js.map → chunk-EZFKWSC7.js.map} +4 -4
- package/dist/cli-bundle/chunks/{chunk-F6WNBITZ.js → chunk-FDBARR33.js} +40 -19
- package/dist/cli-bundle/chunks/{chunk-F6WNBITZ.js.map → chunk-FDBARR33.js.map} +3 -3
- package/dist/cli-bundle/chunks/{chunk-WRYERRZX.js → chunk-FGQKEDE4.js} +36 -12
- package/dist/cli-bundle/chunks/chunk-FGQKEDE4.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-CXR3CMBQ.js → chunk-FJRKQREY.js} +10 -18
- package/dist/cli-bundle/chunks/chunk-FJRKQREY.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-QNNQAAZ5.js → chunk-FUM6UMY4.js} +10 -11
- package/dist/cli-bundle/chunks/{chunk-QNNQAAZ5.js.map → chunk-FUM6UMY4.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-TQ6AX5SQ.js → chunk-GIWXVMZ3.js} +140 -334
- package/dist/cli-bundle/chunks/chunk-GIWXVMZ3.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-FZJM2TXF.js → chunk-HBYZDSK5.js} +19 -17
- package/dist/cli-bundle/chunks/{chunk-FZJM2TXF.js.map → chunk-HBYZDSK5.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-5IZUBZBR.js → chunk-HJE4JTKQ.js} +6 -4
- package/dist/cli-bundle/chunks/{chunk-5IZUBZBR.js.map → chunk-HJE4JTKQ.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-YSDFIY7N.js → chunk-HK72NWAD.js} +89 -18
- package/dist/cli-bundle/chunks/chunk-HK72NWAD.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-LBE5QFMZ.js → chunk-IJ6CO3JV.js} +41 -20
- package/dist/cli-bundle/chunks/{chunk-LBE5QFMZ.js.map → chunk-IJ6CO3JV.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-YF746GTH.js → chunk-JFCVQXZX.js} +139 -326
- package/dist/cli-bundle/chunks/chunk-JFCVQXZX.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-A3OQ7TFW.js → chunk-JLA7EVYV.js} +12 -10
- package/dist/cli-bundle/chunks/{chunk-A3OQ7TFW.js.map → chunk-JLA7EVYV.js.map} +1 -1
- package/dist/cli-bundle/chunks/chunk-K32L7HZO.js +76 -0
- package/dist/cli-bundle/chunks/chunk-K32L7HZO.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-32IUNTG4.js → chunk-K3AGVXSF.js} +37 -13
- package/dist/cli-bundle/chunks/chunk-K3AGVXSF.js.map +1 -0
- package/dist/cli-bundle/chunks/chunk-KDZ6K25I.js +79 -0
- package/dist/cli-bundle/chunks/chunk-KDZ6K25I.js.map +7 -0
- package/dist/cli-bundle/chunks/chunk-KGHH652T.js +44 -0
- package/dist/cli-bundle/chunks/chunk-KGHH652T.js.map +1 -0
- package/dist/cli-bundle/chunks/chunk-KL22PY6L.js +915 -0
- package/dist/cli-bundle/chunks/chunk-KL22PY6L.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-BI4R7HI2.js → chunk-KLG4ZULO.js} +12 -10
- package/dist/cli-bundle/chunks/{chunk-BI4R7HI2.js.map → chunk-KLG4ZULO.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-XRYSCRZR.js → chunk-LEKT4K7I.js} +74 -8
- package/dist/cli-bundle/chunks/chunk-LEKT4K7I.js.map +7 -0
- package/dist/cli-bundle/chunks/{contracts-X74F2GSM.js → chunk-MNZ7DRNC.js} +13 -10
- package/dist/cli-bundle/chunks/{contracts-X74F2GSM.js.map → chunk-MNZ7DRNC.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-4EXFFP7T.js → chunk-MTTXDAK4.js} +206 -147
- package/dist/cli-bundle/chunks/chunk-MTTXDAK4.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-KEZOIPCR.js → chunk-MZ7VNEVY.js} +8 -6
- package/dist/cli-bundle/chunks/{chunk-KEZOIPCR.js.map → chunk-MZ7VNEVY.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-5JIWFWOZ.js → chunk-N6DNM2FA.js} +2 -2
- package/dist/cli-bundle/chunks/{test-runs-QIR5MJPL.js → chunk-N7X4WP6L.js} +11 -8
- package/dist/cli-bundle/chunks/{test-runs-QIR5MJPL.js.map → chunk-N7X4WP6L.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-U3S2B7TA.js → chunk-NBFCNJ7Q.js} +206 -147
- package/dist/cli-bundle/chunks/chunk-NBFCNJ7Q.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-GVJE5T7Q.js → chunk-NER3KUUS.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-NNHHXJB2.js +20 -0
- package/dist/cli-bundle/chunks/chunk-NNHHXJB2.js.map +1 -0
- package/dist/cli-bundle/chunks/chunk-OBA2WH65.js +918 -0
- package/dist/cli-bundle/chunks/chunk-OBA2WH65.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-YPWUSH72.js → chunk-OESSOFJ4.js} +14 -12
- package/dist/cli-bundle/chunks/{chunk-YPWUSH72.js.map → chunk-OESSOFJ4.js.map} +1 -1
- package/dist/cli-bundle/chunks/chunk-OK5NXCZB.js +238 -0
- package/dist/cli-bundle/chunks/chunk-OK5NXCZB.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-FUFFPIYA.js → chunk-OWTIRHX4.js} +28 -6
- package/dist/cli-bundle/chunks/chunk-OWTIRHX4.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-Z7RPDF2Y.js → chunk-P3VRG72Q.js} +10 -8
- package/dist/cli-bundle/chunks/{chunk-Z7RPDF2Y.js.map → chunk-P3VRG72Q.js.map} +1 -1
- package/dist/cli-bundle/chunks/chunk-P5TFTLWW.js +1423 -0
- package/dist/cli-bundle/chunks/chunk-P5TFTLWW.js.map +7 -0
- package/dist/cli-bundle/chunks/chunk-P5YORJRH.js +1977 -0
- package/dist/cli-bundle/chunks/chunk-P5YORJRH.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-MEZZZBYX.js → chunk-PDXT6Q55.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-EJ2OCBHF.js → chunk-PJ3A56YF.js} +46 -537
- package/dist/cli-bundle/chunks/chunk-PJ3A56YF.js.map +1 -0
- package/dist/cli-bundle/chunks/{test-runs-MG5VIGSK.js → chunk-PPAJG4GB.js} +13 -10
- package/dist/cli-bundle/chunks/{test-runs-MG5VIGSK.js.map → chunk-PPAJG4GB.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-572FKBRL.js → chunk-PPE4YUQM.js} +1725 -1663
- package/dist/cli-bundle/chunks/chunk-PPE4YUQM.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-ER4ME5U2.js → chunk-QHZO65XW.js} +8 -6
- package/dist/cli-bundle/chunks/{chunk-ER4ME5U2.js.map → chunk-QHZO65XW.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-T6AXEBOP.js → chunk-R3ZBLGTC.js} +9 -10
- package/dist/cli-bundle/chunks/{chunk-T6AXEBOP.js.map → chunk-R3ZBLGTC.js.map} +2 -2
- package/dist/cli-bundle/chunks/chunk-RCT3YJOK.js +624 -0
- package/dist/cli-bundle/chunks/chunk-RCT3YJOK.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-YVKZ3ANP.js → chunk-RX3HQSYG.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-LOWVNZBZ.js → chunk-S4APD35C.js} +4 -4
- package/dist/cli-bundle/chunks/{chunk-FH2H3CBD.js → chunk-S5AYOUT5.js} +8 -6
- package/dist/cli-bundle/chunks/{chunk-FH2H3CBD.js.map → chunk-S5AYOUT5.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-SYE6WMV6.js → chunk-STPSZ2XY.js} +19 -744
- package/dist/cli-bundle/chunks/chunk-STPSZ2XY.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-6NYJGMTY.js → chunk-T35XLYZF.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-P5L7Z2O6.js → chunk-T3ABIMGW.js} +5 -3
- package/dist/cli-bundle/chunks/{chunk-P5L7Z2O6.js.map → chunk-T3ABIMGW.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-SU2E4AWU.js → chunk-T3F4DF23.js} +16 -14
- package/dist/cli-bundle/chunks/{chunk-SU2E4AWU.js.map → chunk-T3F4DF23.js.map} +1 -1
- package/dist/cli-bundle/chunks/chunk-T4MX77AK.js +272 -0
- package/dist/cli-bundle/chunks/chunk-T4MX77AK.js.map +1 -0
- package/dist/cli-bundle/chunks/chunk-T5Y3QSNF.js +5354 -0
- package/dist/cli-bundle/chunks/chunk-T5Y3QSNF.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-ECU6MMTQ.js → chunk-TSPKZRRW.js} +50 -116
- package/dist/cli-bundle/chunks/chunk-TSPKZRRW.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-BE2SR6QL.js → chunk-TT42JUMF.js} +4 -4
- package/dist/cli-bundle/chunks/chunk-UHKX7I75.js +165 -0
- package/dist/cli-bundle/chunks/chunk-UHKX7I75.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-RAHINBVP.js → chunk-UI5BJ6DO.js} +1339 -1277
- package/dist/cli-bundle/chunks/chunk-UI5BJ6DO.js.map +7 -0
- package/dist/cli-bundle/chunks/chunk-US3T3W5J.js +1932 -0
- package/dist/cli-bundle/chunks/chunk-US3T3W5J.js.map +1 -0
- package/dist/cli-bundle/chunks/chunk-UZRDBL6W.js +175 -0
- package/dist/cli-bundle/chunks/chunk-UZRDBL6W.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-B4O5S7I3.js → chunk-VUHVWI4C.js} +13 -3
- package/dist/cli-bundle/chunks/chunk-VUHVWI4C.js.map +7 -0
- package/dist/cli-bundle/chunks/{contracts-L6ODXNUM.js → chunk-VZIYHZDX.js} +11 -8
- package/dist/cli-bundle/chunks/{contracts-L6ODXNUM.js.map → chunk-VZIYHZDX.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-U5TR4N7J.js → chunk-WISPVC2E.js} +9 -7
- package/dist/cli-bundle/chunks/{chunk-U5TR4N7J.js.map → chunk-WISPVC2E.js.map} +1 -1
- package/dist/cli-bundle/chunks/chunk-WVSGSZ6J.js +5434 -0
- package/dist/cli-bundle/chunks/chunk-WVSGSZ6J.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-HQAF23Q2.js → chunk-XQCG2JGW.js} +17 -749
- package/dist/cli-bundle/chunks/chunk-XQCG2JGW.js.map +7 -0
- package/dist/cli-bundle/chunks/chunk-Y76TWC45.js +550 -0
- package/dist/cli-bundle/chunks/chunk-Y76TWC45.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-L4SLHV6G.js → chunk-YD5FML7K.js} +464 -2239
- package/dist/cli-bundle/chunks/chunk-YD5FML7K.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-YSGTMDWC.js → chunk-YFIE7YK6.js} +7 -5
- package/dist/cli-bundle/chunks/{chunk-YSGTMDWC.js.map → chunk-YFIE7YK6.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-WYOIIFSE.js → chunk-YMABYTNG.js} +49 -115
- package/dist/cli-bundle/chunks/chunk-YMABYTNG.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-SU3TB4NS.js → chunk-YOF5VPKM.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-WJA3PXW7.js → chunk-YPPVU5GX.js} +11 -9
- package/dist/cli-bundle/chunks/{chunk-WJA3PXW7.js.map → chunk-YPPVU5GX.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-GUYNUXQT.js → chunk-YQMMMONE.js} +6 -4
- package/dist/cli-bundle/chunks/{chunk-GUYNUXQT.js.map → chunk-YQMMMONE.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-AIKU3IIL.js → chunk-YSAH5FY5.js} +16 -14
- package/dist/cli-bundle/chunks/{chunk-AIKU3IIL.js.map → chunk-YSAH5FY5.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-KS6ATO47.js → chunk-YZIR4R3U.js} +153 -108
- package/dist/cli-bundle/chunks/chunk-YZIR4R3U.js.map +7 -0
- package/dist/cli-bundle/chunks/{chunk-LCWQP6NM.js → chunk-Z2CRRZYF.js} +14 -12
- package/dist/cli-bundle/chunks/{chunk-LCWQP6NM.js.map → chunk-Z2CRRZYF.js.map} +1 -1
- package/dist/cli-bundle/chunks/chunk-ZAHXPXVY.js +533 -0
- package/dist/cli-bundle/chunks/chunk-ZAHXPXVY.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-UMNQZS4H.js → chunk-ZCJAA3JK.js} +8 -6
- package/dist/cli-bundle/chunks/{chunk-UMNQZS4H.js.map → chunk-ZCJAA3JK.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-EQURFOMH.js → chunk-ZD34OFFQ.js} +5 -3
- package/dist/cli-bundle/chunks/{chunk-EQURFOMH.js.map → chunk-ZD34OFFQ.js.map} +1 -1
- package/dist/cli-bundle/chunks/{chunk-67LARBDL.js → chunk-ZJB3UV5U.js} +54 -58
- package/dist/cli-bundle/chunks/chunk-ZJB3UV5U.js.map +1 -0
- package/dist/cli-bundle/chunks/{chunk-5E7N4T2Z.js → chunk-ZMD35NYG.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-ZVDL32GJ.js +241 -0
- package/dist/cli-bundle/chunks/chunk-ZVDL32GJ.js.map +7 -0
- package/dist/cli-bundle/chunks/{claim-5GU7OE67.js → claim-4DROPSIS.js} +30 -13
- package/dist/cli-bundle/chunks/claim-4DROPSIS.js.map +1 -0
- package/dist/cli-bundle/chunks/{claim-2BGBGSVI.js → claim-VX54TV5U.js} +29 -12
- package/dist/cli-bundle/chunks/claim-VX54TV5U.js.map +7 -0
- package/dist/cli-bundle/chunks/{close-AFVKPR57.js → close-3YRR3XY6.js} +9 -7
- package/dist/cli-bundle/chunks/close-OB2Y4QP5.js +16 -0
- package/dist/cli-bundle/chunks/{close-many-JKUJMHLG.js → close-many-AP4MWU36.js} +21 -18
- package/dist/cli-bundle/chunks/{close-many-JKUJMHLG.js.map → close-many-AP4MWU36.js.map} +1 -1
- package/dist/cli-bundle/chunks/{close-many-7KLOSYLP.js → close-many-OMZIGZB4.js} +19 -16
- package/dist/cli-bundle/chunks/{close-many-7KLOSYLP.js.map → close-many-OMZIGZB4.js.map} +1 -1
- package/dist/cli-bundle/chunks/{comments-DNWHEBOS.js → comments-MIW5MZOX.js} +12 -9
- package/dist/cli-bundle/chunks/{comments-DNWHEBOS.js.map → comments-MIW5MZOX.js.map} +1 -1
- package/dist/cli-bundle/chunks/{comments-RW23R3VE.js → comments-SAG5LSKL.js} +14 -11
- package/dist/cli-bundle/chunks/{comments-RW23R3VE.js.map → comments-SAG5LSKL.js.map} +1 -1
- package/dist/cli-bundle/chunks/{config-AUM5WBYA.js → config-DJJKZB5R.js} +20 -17
- package/dist/cli-bundle/chunks/{config-AUM5WBYA.js.map → config-DJJKZB5R.js.map} +1 -1
- package/dist/cli-bundle/chunks/{config-OZWSA2NP.js → config-V57QD47V.js} +22 -19
- package/dist/cli-bundle/chunks/{config-OZWSA2NP.js.map → config-V57QD47V.js.map} +1 -1
- package/dist/cli-bundle/chunks/{context-PKCEHQY3.js → context-4OQGIPSO.js} +15 -12
- package/dist/cli-bundle/chunks/{context-OYXRGY7S.js → context-WLA6IAWE.js} +15 -12
- package/dist/cli-bundle/chunks/contracts-HXJLKCRI.js +12 -0
- package/dist/cli-bundle/chunks/contracts-OJEXMKVW.js +16 -0
- package/dist/cli-bundle/chunks/{copy-I4NCLBR4.js → copy-LEE6P6EM.js} +17 -14
- package/dist/cli-bundle/chunks/{copy-I4NCLBR4.js.map → copy-LEE6P6EM.js.map} +2 -2
- package/dist/cli-bundle/chunks/{copy-6XOR3HKN.js → copy-OTJOWFL6.js} +18 -15
- package/dist/cli-bundle/chunks/{copy-6XOR3HKN.js.map → copy-OTJOWFL6.js.map} +1 -1
- package/dist/cli-bundle/chunks/create-WKOZKPQR.js +30 -0
- package/dist/cli-bundle/chunks/{create-PM45M6PE.js → create-XWWQFQ6S.js} +14 -12
- package/dist/cli-bundle/chunks/{delete-7YXHYG67.js → delete-62JQTYT4.js} +10 -7
- package/dist/cli-bundle/chunks/{delete-7YXHYG67.js.map → delete-62JQTYT4.js.map} +1 -1
- package/dist/cli-bundle/chunks/{delete-LPISP43T.js → delete-HQKGRNRZ.js} +12 -9
- package/dist/cli-bundle/chunks/{delete-LPISP43T.js.map → delete-HQKGRNRZ.js.map} +1 -1
- package/dist/cli-bundle/chunks/{deps-WATKQDE3.js → deps-55FTG6Z5.js} +12 -9
- package/dist/cli-bundle/chunks/{deps-WATKQDE3.js.map → deps-55FTG6Z5.js.map} +1 -1
- package/dist/cli-bundle/chunks/{deps-N2T26FME.js → deps-L2FPIAD3.js} +10 -7
- package/dist/cli-bundle/chunks/{deps-N2T26FME.js.map → deps-L2FPIAD3.js.map} +1 -1
- package/dist/cli-bundle/chunks/{docs-6LQ3GLM7.js → docs-6CRCSVKK.js} +11 -9
- package/dist/cli-bundle/chunks/{docs-6LQ3GLM7.js.map → docs-6CRCSVKK.js.map} +1 -1
- package/dist/cli-bundle/chunks/{docs-Z3X6JZLT.js → docs-S6UTOTO5.js} +9 -7
- package/dist/cli-bundle/chunks/{docs-Z3X6JZLT.js.map → docs-S6UTOTO5.js.map} +1 -1
- package/dist/cli-bundle/chunks/{eval-6DCLG52D.js → eval-N6UHFWVO.js} +15 -11
- package/dist/cli-bundle/chunks/{eval-6DCLG52D.js.map → eval-N6UHFWVO.js.map} +1 -1
- package/dist/cli-bundle/chunks/{eval-Y3ZCUTHK.js → eval-PHOTWYHI.js} +17 -13
- package/dist/cli-bundle/chunks/{eval-Y3ZCUTHK.js.map → eval-PHOTWYHI.js.map} +1 -1
- package/dist/cli-bundle/chunks/{extension-BNINIMT7.js → extension-NBAH62ML.js} +17 -11
- package/dist/cli-bundle/chunks/{extension-QWE4YYK5.js → extension-ZF6ZZPOU.js} +17 -11
- package/dist/cli-bundle/chunks/{files-FUYPSOFJ.js → files-6P57MRKL.js} +14 -11
- package/dist/cli-bundle/chunks/files-6P57MRKL.js.map +7 -0
- package/dist/cli-bundle/chunks/{files-6SGKHS6O.js → files-JPU3FNJ7.js} +15 -12
- package/dist/cli-bundle/chunks/files-JPU3FNJ7.js.map +1 -0
- package/dist/cli-bundle/chunks/{focus-2Q3K76G2.js → focus-LFZ6IDBR.js} +15 -11
- package/dist/cli-bundle/chunks/{focus-2Q3K76G2.js.map → focus-LFZ6IDBR.js.map} +1 -1
- package/dist/cli-bundle/chunks/{focus-ATLBWXXD.js → focus-WNMYCVYA.js} +13 -9
- package/dist/cli-bundle/chunks/{focus-ATLBWXXD.js.map → focus-WNMYCVYA.js.map} +1 -1
- package/dist/cli-bundle/chunks/{gc-RUYEMNRF.js → gc-AETFKZ44.js} +10 -7
- package/dist/cli-bundle/chunks/{gc-RUYEMNRF.js.map → gc-AETFKZ44.js.map} +1 -1
- package/dist/cli-bundle/chunks/{gc-TDWSDR66.js → gc-RLBP4QVN.js} +12 -9
- package/dist/cli-bundle/chunks/{gc-TDWSDR66.js.map → gc-RLBP4QVN.js.map} +1 -1
- package/dist/cli-bundle/chunks/{get-LY6M2JIM.js → get-NH2MPBCI.js} +18 -15
- package/dist/cli-bundle/chunks/{get-LY6M2JIM.js.map → get-NH2MPBCI.js.map} +1 -1
- package/dist/cli-bundle/chunks/{get-2WGLX74N.js → get-P4ZQXCPZ.js} +16 -13
- package/dist/cli-bundle/chunks/{get-2WGLX74N.js.map → get-P4ZQXCPZ.js.map} +1 -1
- package/dist/cli-bundle/chunks/{health-4RKHYS3T.js → health-3GVPMQBL.js} +36 -29
- package/dist/cli-bundle/chunks/{health-4RKHYS3T.js.map → health-3GVPMQBL.js.map} +1 -1
- package/dist/cli-bundle/chunks/{health-TMFVNYRA.js → health-DNTM72GJ.js} +34 -27
- package/dist/cli-bundle/chunks/{health-TMFVNYRA.js.map → health-DNTM72GJ.js.map} +1 -1
- package/dist/cli-bundle/chunks/history-RYKLC72X.js +20 -0
- package/dist/cli-bundle/chunks/{history-SGRRS72R.js → history-SGPYRAFT.js} +10 -8
- package/dist/cli-bundle/chunks/{history-compact-LOED43R3.js → history-compact-3F6VELO7.js} +26 -30
- package/dist/cli-bundle/chunks/history-compact-3F6VELO7.js.map +7 -0
- package/dist/cli-bundle/chunks/{history-compact-V5DNAQHH.js → history-compact-656Y2TN4.js} +27 -31
- package/dist/cli-bundle/chunks/history-compact-656Y2TN4.js.map +1 -0
- package/dist/cli-bundle/chunks/history-redact-4H3FCKF3.js +21 -0
- package/dist/cli-bundle/chunks/{history-redact-IRL7WJ3E.js → history-redact-54ICFKXM.js} +11 -9
- package/dist/cli-bundle/chunks/{history-repair-PGYQJMGD.js → history-repair-4N6SDVHK.js} +25 -30
- package/dist/cli-bundle/chunks/history-repair-4N6SDVHK.js.map +7 -0
- package/dist/cli-bundle/chunks/{history-repair-4WVBVHFR.js → history-repair-EVTO6LIH.js} +26 -31
- package/dist/cli-bundle/chunks/history-repair-EVTO6LIH.js.map +1 -0
- package/dist/cli-bundle/chunks/init-RPIPQUNV.js +32 -0
- package/dist/cli-bundle/chunks/init-SKQAESQS.js +28 -0
- package/dist/cli-bundle/chunks/{learnings-4FJY7WIW.js → learnings-2HTPZNGZ.js} +10 -8
- package/dist/cli-bundle/chunks/{learnings-4FJY7WIW.js.map → learnings-2HTPZNGZ.js.map} +1 -1
- package/dist/cli-bundle/chunks/{learnings-4BHWFFUV.js → learnings-YBIHY3D6.js} +12 -10
- package/dist/cli-bundle/chunks/{learnings-4BHWFFUV.js.map → learnings-YBIHY3D6.js.map} +1 -1
- package/dist/cli-bundle/chunks/{list-472TIOVK.js → list-64LHZ3HM.js} +10 -8
- package/dist/cli-bundle/chunks/{list-D7BF5CL2.js → list-7LXBTEKI.js} +10 -8
- package/dist/cli-bundle/chunks/{next-SFQZVX2B.js → next-7ODPAQ4U.js} +22 -18
- package/dist/cli-bundle/chunks/{next-SFQZVX2B.js.map → next-7ODPAQ4U.js.map} +1 -1
- package/dist/cli-bundle/chunks/{next-D5STGWI2.js → next-ODJUM4ZM.js} +24 -20
- package/dist/cli-bundle/chunks/{next-D5STGWI2.js.map → next-ODJUM4ZM.js.map} +1 -1
- package/dist/cli-bundle/chunks/{notes-6KNOSLIT.js → notes-72YXN5JX.js} +10 -8
- package/dist/cli-bundle/chunks/{notes-6KNOSLIT.js.map → notes-72YXN5JX.js.map} +1 -1
- package/dist/cli-bundle/chunks/{notes-W4UEICGF.js → notes-NJ7IQJX4.js} +12 -10
- package/dist/cli-bundle/chunks/{notes-W4UEICGF.js.map → notes-NJ7IQJX4.js.map} +1 -1
- package/dist/cli-bundle/chunks/{plan-MJQW5XK3.js → plan-R4NDQ27E.js} +18 -15
- package/dist/cli-bundle/chunks/{plan-MJQW5XK3.js.map → plan-R4NDQ27E.js.map} +1 -1
- package/dist/cli-bundle/chunks/{plan-JO6V7BXO.js → plan-XWY5T67S.js} +20 -17
- package/dist/cli-bundle/chunks/{plan-JO6V7BXO.js.map → plan-XWY5T67S.js.map} +1 -1
- package/dist/cli-bundle/chunks/profile-XQWEQKS3.js +397 -0
- package/dist/cli-bundle/chunks/profile-XQWEQKS3.js.map +1 -0
- package/dist/cli-bundle/chunks/profile-YRDHLMRO.js +400 -0
- package/dist/cli-bundle/chunks/profile-YRDHLMRO.js.map +7 -0
- package/dist/cli-bundle/chunks/{register-list-query-ELBHCCFI.js → register-list-query-5H66WFYF.js} +24 -21
- package/dist/cli-bundle/chunks/register-list-query-5H66WFYF.js.map +7 -0
- package/dist/cli-bundle/chunks/{register-list-query-GAPQ6DM3.js → register-list-query-FB3FNDLZ.js} +25 -22
- package/dist/cli-bundle/chunks/{register-list-query-ELBHCCFI.js.map → register-list-query-FB3FNDLZ.js.map} +1 -7
- package/dist/cli-bundle/chunks/{register-mutation-SJWMVIJ2.js → register-mutation-UJO23C7R.js} +42 -39
- package/dist/cli-bundle/chunks/{register-mutation-SJWMVIJ2.js.map → register-mutation-UJO23C7R.js.map} +1 -1
- package/dist/cli-bundle/chunks/{register-mutation-ROFE2YPC.js → register-mutation-Z2ETYHKS.js} +40 -37
- package/dist/cli-bundle/chunks/{register-mutation-ROFE2YPC.js.map → register-mutation-Z2ETYHKS.js.map} +1 -1
- package/dist/cli-bundle/chunks/{register-operations-MEKU3AKC.js → register-operations-A3XAM5J7.js} +39 -36
- package/dist/cli-bundle/chunks/{register-operations-MEKU3AKC.js.map → register-operations-A3XAM5J7.js.map} +1 -1
- package/dist/cli-bundle/chunks/{register-operations-IADFVH53.js → register-operations-SG7HBSUP.js} +37 -34
- package/dist/cli-bundle/chunks/{register-operations-IADFVH53.js.map → register-operations-SG7HBSUP.js.map} +1 -1
- package/dist/cli-bundle/chunks/{register-setup-AJWUSSQX.js → register-setup-I45OGJUV.js} +25 -19
- package/dist/cli-bundle/chunks/{register-setup-AJWUSSQX.js.map → register-setup-I45OGJUV.js.map} +1 -1
- package/dist/cli-bundle/chunks/{register-setup-3QJY43CY.js → register-setup-K6U3NVY5.js} +23 -17
- package/dist/cli-bundle/chunks/{register-setup-3QJY43CY.js.map → register-setup-K6U3NVY5.js.map} +1 -1
- package/dist/cli-bundle/chunks/restore-PXOFL6AM.js +19 -0
- package/dist/cli-bundle/chunks/{restore-44IHMMZZ.js → restore-YJ2ET6AT.js} +11 -9
- package/dist/cli-bundle/chunks/{scheduling-shortcuts-TSBK4AY5.js → scheduling-shortcuts-SSC4MYWQ.js} +14 -12
- package/dist/cli-bundle/chunks/{scheduling-shortcuts-TSBK4AY5.js.map → scheduling-shortcuts-SSC4MYWQ.js.map} +1 -1
- package/dist/cli-bundle/chunks/{scheduling-shortcuts-OLHNLAZY.js → scheduling-shortcuts-ULRG7MNP.js} +16 -14
- package/dist/cli-bundle/chunks/{scheduling-shortcuts-OLHNLAZY.js.map → scheduling-shortcuts-ULRG7MNP.js.map} +1 -1
- package/dist/cli-bundle/chunks/{schema-VBCELP5G.js → schema-2PUXCZ25.js} +10 -7
- package/dist/cli-bundle/chunks/{schema-IB2NZZWD.js → schema-Y6DXXK2F.js} +10 -7
- package/dist/cli-bundle/chunks/{search-7UBETML4.js → search-3S72CTD6.js} +13 -10
- package/dist/cli-bundle/chunks/{search-R227JOL6.js → search-WNUNBQXO.js} +13 -10
- package/dist/cli-bundle/chunks/{stats-FAG7COEH.js → stats-IJYTRQGV.js} +13 -10
- package/dist/cli-bundle/chunks/{stats-FAG7COEH.js.map → stats-IJYTRQGV.js.map} +1 -1
- package/dist/cli-bundle/chunks/{stats-MCK7PLYS.js → stats-L2D5Y2O5.js} +15 -12
- package/dist/cli-bundle/chunks/{stats-MCK7PLYS.js.map → stats-L2D5Y2O5.js.map} +1 -1
- package/dist/cli-bundle/chunks/{telemetry-DRPDZMAO.js → telemetry-L2CVOKVN.js} +11 -8
- package/dist/cli-bundle/chunks/{telemetry-DRPDZMAO.js.map → telemetry-L2CVOKVN.js.map} +1 -1
- package/dist/cli-bundle/chunks/{telemetry-GVVUQSJQ.js → telemetry-QBYWQA76.js} +13 -10
- package/dist/cli-bundle/chunks/{telemetry-GVVUQSJQ.js.map → telemetry-QBYWQA76.js.map} +1 -1
- package/dist/cli-bundle/chunks/{test-QY44WAMR.js → test-DQ2QFJ7W.js} +21 -15
- package/dist/cli-bundle/chunks/test-W7QBLVJS.js +41 -0
- package/dist/cli-bundle/chunks/{test-all-USPJHXFR.js → test-all-636NTRTT.js} +26 -19
- package/dist/cli-bundle/chunks/{test-all-USPJHXFR.js.map → test-all-636NTRTT.js.map} +1 -1
- package/dist/cli-bundle/chunks/{test-all-QD6QAEG7.js → test-all-DWYK3RG6.js} +24 -17
- package/dist/cli-bundle/chunks/{test-all-QD6QAEG7.js.map → test-all-DWYK3RG6.js.map} +1 -1
- package/dist/cli-bundle/chunks/test-runs-245OINZR.js +28 -0
- package/dist/cli-bundle/chunks/test-runs-245OINZR.js.map +1 -0
- package/dist/cli-bundle/chunks/test-runs-ZRD4GCTT.js +24 -0
- package/dist/cli-bundle/chunks/test-runs-ZRD4GCTT.js.map +7 -0
- package/dist/cli-bundle/chunks/update-SFLZPJXX.js +30 -0
- package/dist/cli-bundle/chunks/update-SFLZPJXX.js.map +1 -0
- package/dist/cli-bundle/chunks/update-SJZ6S77U.js +26 -0
- package/dist/cli-bundle/chunks/update-SJZ6S77U.js.map +7 -0
- package/dist/cli-bundle/chunks/{update-many-RATAARHU.js → update-many-DC7X3EWM.js} +32 -29
- package/dist/cli-bundle/chunks/{update-many-RATAARHU.js.map → update-many-DC7X3EWM.js.map} +1 -1
- package/dist/cli-bundle/chunks/{update-many-BEMTDA2X.js → update-many-SLLAMHT7.js} +34 -31
- package/dist/cli-bundle/chunks/{update-many-BEMTDA2X.js.map → update-many-SLLAMHT7.js.map} +1 -1
- package/dist/cli-bundle/chunks/{upgrade-VU46BLJZ.js → upgrade-HFFXLZJA.js} +19 -12
- package/dist/cli-bundle/chunks/{upgrade-VU46BLJZ.js.map → upgrade-HFFXLZJA.js.map} +1 -1
- package/dist/cli-bundle/chunks/{upgrade-NWMR3VQL.js → upgrade-UYQKM7RF.js} +21 -14
- package/dist/cli-bundle/chunks/{upgrade-NWMR3VQL.js.map → upgrade-UYQKM7RF.js.map} +1 -1
- package/dist/cli-bundle/chunks/{validate-NRY6MFXN.js → validate-PA4FDTOV.js} +35 -28
- package/dist/cli-bundle/chunks/validate-PA4FDTOV.js.map +7 -0
- package/dist/cli-bundle/chunks/{validate-GAJ6FUSI.js → validate-Z7L75YEJ.js} +35 -28
- package/dist/cli-bundle/chunks/validate-Z7L75YEJ.js.map +1 -0
- package/dist/cli-bundle/main.js +173 -57
- package/dist/cli-bundle/main.js.map +2 -2
- package/dist/cli-bundle/sdk-runtime.js +247 -0
- package/dist/cli-bundle/sdk-runtime.js.map +7 -0
- package/dist/cli-bundle/sdk-testing.js +101 -0
- package/dist/cli-bundle/sdk-testing.js.map +7 -0
- package/dist/cli-bundle/sdk.js +787 -0
- package/dist/cli-bundle/sdk.js.map +7 -0
- package/dist/core/config/nested-settings.d.ts +4 -3
- package/dist/core/config/nested-settings.js +17 -6
- package/dist/core/config/nested-settings.js.map +1 -1
- package/dist/core/extensions/activation-summary.d.ts +6 -0
- package/dist/core/extensions/activation-summary.js +10 -4
- package/dist/core/extensions/activation-summary.js.map +1 -1
- package/dist/core/extensions/capability-usage.d.ts +6 -0
- package/dist/core/extensions/capability-usage.js +10 -4
- package/dist/core/extensions/capability-usage.js.map +1 -1
- package/dist/core/extensions/extension-types.d.ts +6 -2
- package/dist/core/extensions/extension-types.js +2 -2
- package/dist/core/extensions/extension-types.js.map +1 -1
- package/dist/core/extensions/loader.d.ts +3 -0
- package/dist/core/extensions/loader.js +11 -19
- package/dist/core/extensions/loader.js.map +1 -1
- package/dist/core/history/history-rewrite.d.ts +10 -0
- package/dist/core/history/history-rewrite.js +28 -4
- package/dist/core/history/history-rewrite.js.map +1 -1
- package/dist/core/item/parent-reference-policy.d.ts +9 -1
- package/dist/core/item/parent-reference-policy.js +28 -4
- package/dist/core/item/parent-reference-policy.js.map +1 -1
- package/dist/core/item/type-registry.d.ts +1 -0
- package/dist/core/item/type-registry.js +153 -177
- package/dist/core/item/type-registry.js.map +1 -1
- package/dist/core/lock/lock.d.ts +28 -1
- package/dist/core/lock/lock.js +254 -20
- package/dist/core/lock/lock.js.map +1 -1
- package/dist/core/search/background-refresh.js +7 -19
- package/dist/core/search/background-refresh.js.map +1 -1
- package/dist/core/search/http-client.d.ts +0 -1
- package/dist/core/search/http-client.js +3 -3
- package/dist/core/search/http-client.js.map +1 -1
- package/dist/core/shared/constants.js +3 -2
- package/dist/core/shared/constants.js.map +1 -1
- package/dist/core/shared/errors.d.ts +1 -0
- package/dist/core/shared/errors.js +2 -2
- package/dist/core/shared/errors.js.map +1 -1
- package/dist/core/shared/primitives.d.ts +12 -0
- package/dist/core/shared/primitives.js +29 -2
- package/dist/core/shared/primitives.js.map +1 -1
- package/dist/core/store/item-store.js +3 -3
- package/dist/core/store/item-store.js.map +1 -1
- package/dist/core/store/settings-validator.d.ts +1 -0
- package/dist/core/store/settings-validator.js +6 -3
- package/dist/core/store/settings-validator.js.map +1 -1
- package/dist/core/store/settings.js +3 -3
- package/dist/core/store/settings.js.map +1 -1
- package/dist/core/validate/fix-planning.d.ts +0 -2
- package/dist/core/validate/fix-planning.js +3 -3
- package/dist/core/validate/fix-planning.js.map +1 -1
- package/dist/sdk/cli-contracts/commander-mutation-options.js +3 -2
- package/dist/sdk/cli-contracts/commander-mutation-options.js.map +1 -1
- package/dist/sdk/cli-contracts/flag-contracts.js +5 -2
- package/dist/sdk/cli-contracts/flag-contracts.js.map +1 -1
- package/dist/sdk/cli-contracts/tool-option-contracts.js +4 -2
- package/dist/sdk/cli-contracts/tool-option-contracts.js.map +1 -1
- package/dist/sdk/cli-contracts/tool-schema.js +55 -94
- package/dist/sdk/cli-contracts/tool-schema.js.map +1 -1
- package/dist/sdk/errors.d.ts +21 -2
- package/dist/sdk/errors.js +8 -2
- package/dist/sdk/errors.js.map +1 -1
- package/dist/sdk/package-import-adapters.d.ts +90 -2
- package/dist/sdk/package-import-adapters.js +275 -3
- package/dist/sdk/package-import-adapters.js.map +1 -1
- package/dist/sdk/runtime.d.ts +1 -1
- package/dist/sdk/runtime.js +3 -3
- package/dist/sdk/runtime.js.map +1 -1
- package/dist/sdk/testing.js +41 -19
- package/dist/sdk/testing.js.map +1 -1
- package/dist/types.d.ts +6 -0
- package/dist/types.js +2 -2
- package/dist/types.js.map +1 -1
- package/docs/ARCHITECTURE.md +27 -0
- package/docs/CONFIGURATION.md +3 -0
- package/docs/README.md +1 -0
- package/docs/SDK_PRIMITIVE_INVENTORY.md +55 -0
- package/docs/TESTING.md +5 -1
- package/docs/examples/ci/github-actions-pm-extension-gate.yml +5 -5
- package/docs/examples/ci/gitlab-ci-pm-extension-gate.yml +1 -1
- package/docs/examples/ci/jenkins-pm-extension-gate.Jenkinsfile +1 -1
- package/package.json +14 -26
- package/packages/pm-beads/extensions/beads/package.json +3 -0
- package/packages/pm-beads/extensions/beads/runtime-loader.ts +50 -41
- package/packages/pm-beads/extensions/beads/runtime.ts +106 -223
- package/packages/pm-calendar/extensions/calendar/package.json +3 -0
- package/packages/pm-calendar/extensions/calendar/runtime.ts +21 -18
- package/packages/pm-command-kit/extensions/command-kit/package.json +3 -0
- package/packages/pm-governance-audit/extensions/governance-audit/package.json +3 -0
- package/packages/pm-guide-shell/extensions/guide-shell/package.json +3 -0
- package/packages/pm-guide-shell/extensions/guide-shell/runtime.ts +9 -11
- package/packages/pm-kanban/extensions/kanban/package.json +3 -0
- package/packages/pm-lifecycle-hooks/extensions/lifecycle-hooks/package.json +3 -0
- package/packages/pm-search-advanced/extensions/search-advanced/package.json +3 -0
- package/packages/pm-templates/extensions/templates/package.json +3 -0
- package/packages/pm-todos/extensions/todos/package.json +3 -0
- package/packages/pm-todos/extensions/todos/runtime-loader.ts +62 -72
- package/packages/pm-todos/extensions/todos/runtime.ts +61 -257
- package/plugins/pm-claude/scripts/pm-mcp-server.mjs +73 -31
- package/plugins/pm-codex/scripts/pm-mcp-server.mjs +80 -34
- package/scripts/bundle-cli.mjs +12 -2
- package/scripts/install.ps1 +7 -7
- package/dist/cli-bundle/chunks/activity-BIML7K2D.js +0 -16
- package/dist/cli-bundle/chunks/chunk-32IUNTG4.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-4EXFFP7T.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-4WB6S4YX.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-572FKBRL.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-67LARBDL.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-6CDCWKSX.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-6KRFL33E.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-AJHYQCBJ.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-B4O5S7I3.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-CXR3CMBQ.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-ECU6MMTQ.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-EJ2OCBHF.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-ERG65A2L.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-FUFFPIYA.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-HB4FAT3O.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-HQAF23Q2.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-JPATY4SE.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-KHVGM5CS.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-KS6ATO47.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-L4SLHV6G.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-MHRS5FUX.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-NZ7QIUP5.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-OGLGI22K.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-RAHINBVP.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-RJH5VQHW.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-SYE6WMV6.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-TQ6AX5SQ.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-U3S2B7TA.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-WRYERRZX.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-WYOIIFSE.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-XRYSCRZR.js.map +0 -7
- package/dist/cli-bundle/chunks/chunk-YF746GTH.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-YSDFIY7N.js.map +0 -1
- package/dist/cli-bundle/chunks/chunk-Z4DGFQDH.js.map +0 -1
- package/dist/cli-bundle/chunks/claim-2BGBGSVI.js.map +0 -7
- package/dist/cli-bundle/chunks/claim-5GU7OE67.js.map +0 -1
- package/dist/cli-bundle/chunks/close-6YODBUIV.js +0 -14
- package/dist/cli-bundle/chunks/create-Z7YCH3BE.js +0 -28
- package/dist/cli-bundle/chunks/files-6SGKHS6O.js.map +0 -1
- package/dist/cli-bundle/chunks/files-FUYPSOFJ.js.map +0 -7
- package/dist/cli-bundle/chunks/history-CGNQJXFE.js +0 -18
- package/dist/cli-bundle/chunks/history-compact-LOED43R3.js.map +0 -7
- package/dist/cli-bundle/chunks/history-compact-V5DNAQHH.js.map +0 -1
- package/dist/cli-bundle/chunks/history-redact-N3JK7VBW.js +0 -19
- package/dist/cli-bundle/chunks/history-repair-4WVBVHFR.js.map +0 -1
- package/dist/cli-bundle/chunks/history-repair-PGYQJMGD.js.map +0 -7
- package/dist/cli-bundle/chunks/init-4GESW7RM.js +0 -26
- package/dist/cli-bundle/chunks/init-XIDPABA4.js +0 -22
- package/dist/cli-bundle/chunks/profile-3TOTMUR4.js +0 -1243
- package/dist/cli-bundle/chunks/profile-3TOTMUR4.js.map +0 -7
- package/dist/cli-bundle/chunks/profile-WIQY2KCV.js +0 -1205
- package/dist/cli-bundle/chunks/profile-WIQY2KCV.js.map +0 -1
- package/dist/cli-bundle/chunks/register-list-query-GAPQ6DM3.js.map +0 -1
- package/dist/cli-bundle/chunks/restore-EXHU34EU.js +0 -17
- package/dist/cli-bundle/chunks/test-SY76DZTO.js +0 -35
- package/dist/cli-bundle/chunks/update-A7EICML6.js +0 -24
- package/dist/cli-bundle/chunks/update-IKJZWLQC.js +0 -28
- package/dist/cli-bundle/chunks/validate-GAJ6FUSI.js.map +0 -1
- package/dist/cli-bundle/chunks/validate-NRY6MFXN.js.map +0 -7
- /package/dist/cli-bundle/chunks/{activity-BIML7K2D.js.map → activity-4XQIDNM5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{activity-5YWLSPGE.js.map → activity-YKAKZTZ4.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-QCDTQCMW.js.map → chunk-5JE6SMYS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-5JIWFWOZ.js.map → chunk-N6DNM2FA.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-GVJE5T7Q.js.map → chunk-NER3KUUS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-MEZZZBYX.js.map → chunk-PDXT6Q55.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-YVKZ3ANP.js.map → chunk-RX3HQSYG.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-LOWVNZBZ.js.map → chunk-S4APD35C.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-6NYJGMTY.js.map → chunk-T35XLYZF.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-BE2SR6QL.js.map → chunk-TT42JUMF.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-SU3TB4NS.js.map → chunk-YOF5VPKM.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{chunk-5E7N4T2Z.js.map → chunk-ZMD35NYG.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{close-AFVKPR57.js.map → close-3YRR3XY6.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{close-6YODBUIV.js.map → close-OB2Y4QP5.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{context-PKCEHQY3.js.map → context-4OQGIPSO.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{context-OYXRGY7S.js.map → context-WLA6IAWE.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{create-Z7YCH3BE.js.map → contracts-HXJLKCRI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{create-PM45M6PE.js.map → contracts-OJEXMKVW.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{extension-BNINIMT7.js.map → create-WKOZKPQR.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{extension-QWE4YYK5.js.map → create-XWWQFQ6S.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-CGNQJXFE.js.map → extension-NBAH62ML.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-SGRRS72R.js.map → extension-ZF6ZZPOU.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-redact-N3JK7VBW.js.map → history-RYKLC72X.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{history-redact-IRL7WJ3E.js.map → history-SGPYRAFT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{init-XIDPABA4.js.map → history-redact-4H3FCKF3.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{init-4GESW7RM.js.map → history-redact-54ICFKXM.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{list-D7BF5CL2.js.map → init-RPIPQUNV.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{list-472TIOVK.js.map → init-SKQAESQS.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{restore-EXHU34EU.js.map → list-64LHZ3HM.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{restore-44IHMMZZ.js.map → list-7LXBTEKI.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{schema-VBCELP5G.js.map → restore-PXOFL6AM.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{schema-IB2NZZWD.js.map → restore-YJ2ET6AT.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{search-R227JOL6.js.map → schema-2PUXCZ25.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{search-7UBETML4.js.map → schema-Y6DXXK2F.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{test-QY44WAMR.js.map → search-3S72CTD6.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{test-SY76DZTO.js.map → search-WNUNBQXO.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-IKJZWLQC.js.map → test-DQ2QFJ7W.js.map} +0 -0
- /package/dist/cli-bundle/chunks/{update-A7EICML6.js.map → test-W7QBLVJS.js.map} +0 -0
|
@@ -1,28 +1,39 @@
|
|
|
1
1
|
import {
|
|
2
|
-
|
|
3
|
-
} from "./chunk-
|
|
2
|
+
buildExtensionDescribeResult
|
|
3
|
+
} from "./chunk-KDZ6K25I.js";
|
|
4
4
|
import {
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
PM_PACKAGE_RESOURCE_KINDS,
|
|
6
|
+
collectPackageExtensionDirectories,
|
|
7
|
+
readPmPackageManifest
|
|
8
|
+
} from "./chunk-ZVDL32GJ.js";
|
|
7
9
|
import {
|
|
8
|
-
buildExtensionDescribeResult,
|
|
9
10
|
scaffoldExtensionProject
|
|
10
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-E2FUG6GD.js";
|
|
12
|
+
import {
|
|
13
|
+
splitCommaList
|
|
14
|
+
} from "./chunk-5HIZDR5A.js";
|
|
11
15
|
import {
|
|
12
16
|
normalizeExtensionNameForMatch,
|
|
13
17
|
normalizeManagedDirectoryName,
|
|
14
18
|
normalizeStringList,
|
|
15
19
|
parseExtensionManifest,
|
|
16
20
|
validateExtensionDirectory
|
|
17
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-R3ZBLGTC.js";
|
|
22
|
+
import {
|
|
23
|
+
ensureTypeFolderScaffold
|
|
24
|
+
} from "./chunk-4QQ6PM7M.js";
|
|
18
25
|
import {
|
|
19
26
|
nowIso
|
|
20
|
-
} from "./chunk-
|
|
27
|
+
} from "./chunk-DRBV5UC2.js";
|
|
28
|
+
import {
|
|
29
|
+
PmCliError,
|
|
30
|
+
readSettings,
|
|
31
|
+
writeSettings
|
|
32
|
+
} from "./chunk-P5YORJRH.js";
|
|
21
33
|
import {
|
|
22
34
|
EXIT_CODE,
|
|
23
35
|
EXTENSION_CAPABILITY_CONTRACT,
|
|
24
36
|
KNOWN_EXTENSION_CAPABILITIES,
|
|
25
|
-
PmCliError,
|
|
26
37
|
activateExtensions,
|
|
27
38
|
isPathWithinDirectory,
|
|
28
39
|
levenshteinDistanceWithinLimit,
|
|
@@ -31,20 +42,18 @@ import {
|
|
|
31
42
|
parseLegacyExtensionCapabilityAliasWarning,
|
|
32
43
|
parseUnknownExtensionCapabilityWarning,
|
|
33
44
|
pathExists,
|
|
34
|
-
readSettings,
|
|
35
45
|
reconcileExtensionCapabilityUsage,
|
|
36
46
|
resolveExtensionRoots,
|
|
37
47
|
resolveGlobalPmRoot,
|
|
38
48
|
resolvePmPackageRootFromModule,
|
|
39
|
-
resolvePmRoot
|
|
40
|
-
|
|
41
|
-
} from "./chunk-KHVGM5CS.js";
|
|
49
|
+
resolvePmRoot
|
|
50
|
+
} from "./chunk-5VVUKE3U.js";
|
|
42
51
|
|
|
43
52
|
// dist/cli/commands/extension.js
|
|
44
53
|
import { execFile as execFile2 } from "node:child_process";
|
|
45
|
-
import
|
|
54
|
+
import fs4 from "node:fs/promises";
|
|
46
55
|
import os2 from "node:os";
|
|
47
|
-
import
|
|
56
|
+
import path4 from "node:path";
|
|
48
57
|
import { promisify as promisify2 } from "node:util";
|
|
49
58
|
|
|
50
59
|
// dist/cli/commands/extension/managed-state.js
|
|
@@ -227,238 +236,11 @@ function upsertManagedEntry(state, entry) {
|
|
|
227
236
|
|
|
228
237
|
// dist/cli/commands/extension/install-sources.js
|
|
229
238
|
import { execFile } from "node:child_process";
|
|
230
|
-
import
|
|
239
|
+
import fs2 from "node:fs/promises";
|
|
231
240
|
import os from "node:os";
|
|
232
|
-
import
|
|
241
|
+
import path2 from "node:path";
|
|
233
242
|
import { fileURLToPath } from "node:url";
|
|
234
243
|
import { promisify } from "node:util";
|
|
235
|
-
|
|
236
|
-
// dist/core/packages/manifest.js
|
|
237
|
-
import fs2 from "node:fs/promises";
|
|
238
|
-
import path2 from "node:path";
|
|
239
|
-
!(function() {
|
|
240
|
-
try {
|
|
241
|
-
var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
|
|
242
|
-
n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "7abddddb-c56b-5fe9-9516-908b8fbc75db");
|
|
243
|
-
} catch (e2) {
|
|
244
|
-
}
|
|
245
|
-
})();
|
|
246
|
-
var PM_PACKAGE_RESOURCE_KINDS = [
|
|
247
|
-
"extensions",
|
|
248
|
-
"docs",
|
|
249
|
-
"examples",
|
|
250
|
-
"assets",
|
|
251
|
-
"prompts"
|
|
252
|
-
];
|
|
253
|
-
var PM_PACKAGE_CONVENTIONAL_RESOURCE_ROOTS = Object.freeze({
|
|
254
|
-
extensions: Object.freeze([
|
|
255
|
-
".agents/pm/extensions",
|
|
256
|
-
"extensions",
|
|
257
|
-
".custom/pm-extensions",
|
|
258
|
-
".custom/pm-extension"
|
|
259
|
-
]),
|
|
260
|
-
docs: Object.freeze([
|
|
261
|
-
"docs",
|
|
262
|
-
"documentation"
|
|
263
|
-
]),
|
|
264
|
-
examples: Object.freeze([
|
|
265
|
-
"examples",
|
|
266
|
-
"docs/examples"
|
|
267
|
-
]),
|
|
268
|
-
assets: Object.freeze([
|
|
269
|
-
"assets",
|
|
270
|
-
".agents/pm/assets"
|
|
271
|
-
]),
|
|
272
|
-
prompts: Object.freeze([
|
|
273
|
-
"prompts",
|
|
274
|
-
".agents/pm/prompts"
|
|
275
|
-
])
|
|
276
|
-
});
|
|
277
|
-
function isKnownPackageResourceKind(value) {
|
|
278
|
-
return PM_PACKAGE_RESOURCE_KINDS.includes(value);
|
|
279
|
-
}
|
|
280
|
-
function normalizePackageResourceEntries(kind, raw) {
|
|
281
|
-
if (raw === void 0 || raw === null) {
|
|
282
|
-
return [];
|
|
283
|
-
}
|
|
284
|
-
const entries = Array.isArray(raw) ? raw : [raw];
|
|
285
|
-
const normalized = [];
|
|
286
|
-
for (const entry of entries) {
|
|
287
|
-
if (typeof entry !== "string" || entry.trim().length === 0) {
|
|
288
|
-
throw new PmCliError(`Package manifest field pm.${kind} must contain string paths.`, EXIT_CODE.USAGE);
|
|
289
|
-
}
|
|
290
|
-
normalized.push(entry.trim());
|
|
291
|
-
}
|
|
292
|
-
return [...new Set(normalized)].sort((left, right) => left.localeCompare(right));
|
|
293
|
-
}
|
|
294
|
-
function normalizePackageResourceMap(raw) {
|
|
295
|
-
if (raw === void 0 || raw === null) {
|
|
296
|
-
return {};
|
|
297
|
-
}
|
|
298
|
-
if (typeof raw !== "object" || Array.isArray(raw)) {
|
|
299
|
-
throw new PmCliError("Package manifest field pm must be an object.", EXIT_CODE.USAGE);
|
|
300
|
-
}
|
|
301
|
-
const resources = {};
|
|
302
|
-
const candidate = raw;
|
|
303
|
-
for (const [key, value] of Object.entries(candidate)) {
|
|
304
|
-
if (!isKnownPackageResourceKind(key)) {
|
|
305
|
-
continue;
|
|
306
|
-
}
|
|
307
|
-
const entries = normalizePackageResourceEntries(key, value);
|
|
308
|
-
if (entries.length > 0) {
|
|
309
|
-
resources[key] = entries;
|
|
310
|
-
}
|
|
311
|
-
}
|
|
312
|
-
return resources;
|
|
313
|
-
}
|
|
314
|
-
function readStringField(source, key) {
|
|
315
|
-
const value = source[key];
|
|
316
|
-
return typeof value === "string" && value.trim().length > 0 ? value.trim() : void 0;
|
|
317
|
-
}
|
|
318
|
-
function normalizeStringArray(raw) {
|
|
319
|
-
if (!Array.isArray(raw)) {
|
|
320
|
-
return void 0;
|
|
321
|
-
}
|
|
322
|
-
const values = raw.map((value) => typeof value === "string" ? value.trim() : "").filter((value) => value.length > 0);
|
|
323
|
-
return values.length > 0 ? [...new Set(values)].sort((left, right) => left.localeCompare(right)) : void 0;
|
|
324
|
-
}
|
|
325
|
-
function readUrlLikeField(raw) {
|
|
326
|
-
if (typeof raw === "string" && raw.trim().length > 0) {
|
|
327
|
-
return raw.trim();
|
|
328
|
-
}
|
|
329
|
-
if (typeof raw === "object" && raw !== null && !Array.isArray(raw)) {
|
|
330
|
-
const value = raw.url;
|
|
331
|
-
return typeof value === "string" && value.trim().length > 0 ? value.trim() : void 0;
|
|
332
|
-
}
|
|
333
|
-
return void 0;
|
|
334
|
-
}
|
|
335
|
-
function normalizeCatalogLinks(raw) {
|
|
336
|
-
if (typeof raw !== "object" || raw === null || Array.isArray(raw)) {
|
|
337
|
-
return void 0;
|
|
338
|
-
}
|
|
339
|
-
const source = raw;
|
|
340
|
-
const links = {
|
|
341
|
-
docs: readStringField(source, "docs"),
|
|
342
|
-
npm: readStringField(source, "npm"),
|
|
343
|
-
repository: readStringField(source, "repository"),
|
|
344
|
-
report: readStringField(source, "report")
|
|
345
|
-
};
|
|
346
|
-
return Object.values(links).some((value) => typeof value === "string") ? links : void 0;
|
|
347
|
-
}
|
|
348
|
-
function normalizeCatalogMedia(raw) {
|
|
349
|
-
if (typeof raw !== "object" || raw === null || Array.isArray(raw)) {
|
|
350
|
-
return void 0;
|
|
351
|
-
}
|
|
352
|
-
const source = raw;
|
|
353
|
-
const media = {
|
|
354
|
-
image: readStringField(source, "image"),
|
|
355
|
-
video: readStringField(source, "video")
|
|
356
|
-
};
|
|
357
|
-
return Object.values(media).some((value) => typeof value === "string") ? media : void 0;
|
|
358
|
-
}
|
|
359
|
-
function normalizePackageCatalogMetadata(raw) {
|
|
360
|
-
if (typeof raw !== "object" || raw === null || Array.isArray(raw)) {
|
|
361
|
-
return void 0;
|
|
362
|
-
}
|
|
363
|
-
const source = raw;
|
|
364
|
-
const catalog = {
|
|
365
|
-
display_name: readStringField(source, "display_name") ?? readStringField(source, "displayName"),
|
|
366
|
-
category: readStringField(source, "category"),
|
|
367
|
-
summary: readStringField(source, "summary"),
|
|
368
|
-
links: normalizeCatalogLinks(source.links),
|
|
369
|
-
media: normalizeCatalogMedia(source.media),
|
|
370
|
-
tags: normalizeStringArray(source.tags)
|
|
371
|
-
};
|
|
372
|
-
return Object.values(catalog).some((value) => value !== void 0) ? catalog : void 0;
|
|
373
|
-
}
|
|
374
|
-
async function readPmPackageManifest(packageRoot) {
|
|
375
|
-
const packageJsonPath = path2.join(packageRoot, "package.json");
|
|
376
|
-
if (!await pathExists(packageJsonPath)) {
|
|
377
|
-
return {
|
|
378
|
-
source: "convention",
|
|
379
|
-
resources: {}
|
|
380
|
-
};
|
|
381
|
-
}
|
|
382
|
-
let parsed;
|
|
383
|
-
try {
|
|
384
|
-
parsed = JSON.parse(await fs2.readFile(packageJsonPath, "utf8"));
|
|
385
|
-
} catch (error) {
|
|
386
|
-
throw new PmCliError(`Failed to parse package manifest at "${packageJsonPath}": ${String(error)}`, EXIT_CODE.USAGE);
|
|
387
|
-
}
|
|
388
|
-
if (typeof parsed !== "object" || parsed === null || Array.isArray(parsed)) {
|
|
389
|
-
throw new PmCliError(`Package manifest at "${packageJsonPath}" must be a JSON object.`, EXIT_CODE.USAGE);
|
|
390
|
-
}
|
|
391
|
-
const packageJson = parsed;
|
|
392
|
-
const pmManifest = packageJson.pm;
|
|
393
|
-
const hasPmManifest = pmManifest !== void 0 && pmManifest !== null;
|
|
394
|
-
const pmManifestRecord = typeof pmManifest === "object" && pmManifest !== null && !Array.isArray(pmManifest) ? pmManifest : {};
|
|
395
|
-
return {
|
|
396
|
-
source: hasPmManifest ? "pm" : "convention",
|
|
397
|
-
package_json_path: packageJsonPath,
|
|
398
|
-
package_name: typeof packageJson.name === "string" ? packageJson.name : void 0,
|
|
399
|
-
package_version: typeof packageJson.version === "string" ? packageJson.version : void 0,
|
|
400
|
-
package_private: packageJson.private === true,
|
|
401
|
-
package_description: typeof packageJson.description === "string" ? packageJson.description : void 0,
|
|
402
|
-
package_keywords: normalizeStringArray(packageJson.keywords),
|
|
403
|
-
package_homepage: typeof packageJson.homepage === "string" ? packageJson.homepage : void 0,
|
|
404
|
-
package_repository_url: readUrlLikeField(packageJson.repository),
|
|
405
|
-
package_bugs_url: readUrlLikeField(packageJson.bugs),
|
|
406
|
-
aliases: normalizeStringArray(pmManifestRecord.aliases),
|
|
407
|
-
resources: normalizePackageResourceMap(pmManifest),
|
|
408
|
-
catalog: normalizePackageCatalogMetadata(pmManifestRecord.catalog)
|
|
409
|
-
};
|
|
410
|
-
}
|
|
411
|
-
async function listExtensionManifestDirectories(parentDirectory) {
|
|
412
|
-
if (!await pathExists(parentDirectory)) {
|
|
413
|
-
return [];
|
|
414
|
-
}
|
|
415
|
-
const entries = await fs2.readdir(parentDirectory, { withFileTypes: true });
|
|
416
|
-
const candidates = [];
|
|
417
|
-
for (const entry of entries) {
|
|
418
|
-
if (!entry.isDirectory()) {
|
|
419
|
-
continue;
|
|
420
|
-
}
|
|
421
|
-
const directory = path2.join(parentDirectory, entry.name);
|
|
422
|
-
if (await pathExists(path2.join(directory, "manifest.json"))) {
|
|
423
|
-
candidates.push(directory);
|
|
424
|
-
}
|
|
425
|
-
}
|
|
426
|
-
return candidates.sort((left, right) => left.localeCompare(right));
|
|
427
|
-
}
|
|
428
|
-
async function collectPackageExtensionDirectories(packageRoot) {
|
|
429
|
-
if (await pathExists(path2.join(packageRoot, "manifest.json"))) {
|
|
430
|
-
return [packageRoot];
|
|
431
|
-
}
|
|
432
|
-
const manifest = await readPmPackageManifest(packageRoot);
|
|
433
|
-
const manifestEntries = manifest.resources.extensions ?? [];
|
|
434
|
-
const discovered = /* @__PURE__ */ new Set();
|
|
435
|
-
for (const entry of manifestEntries) {
|
|
436
|
-
if (entry.includes("*") || entry.startsWith("!")) {
|
|
437
|
-
throw new PmCliError(`Package extension entry "${entry}" uses a glob/exclusion pattern. pm package installs currently require concrete extension paths or directories.`, EXIT_CODE.USAGE);
|
|
438
|
-
}
|
|
439
|
-
const absolute = path2.resolve(packageRoot, entry);
|
|
440
|
-
if (!isPathWithinDirectory(packageRoot, absolute)) {
|
|
441
|
-
throw new PmCliError(`Package extension entry "${entry}" resolves outside package root.`, EXIT_CODE.USAGE);
|
|
442
|
-
}
|
|
443
|
-
if (await pathExists(path2.join(absolute, "manifest.json"))) {
|
|
444
|
-
discovered.add(absolute);
|
|
445
|
-
continue;
|
|
446
|
-
}
|
|
447
|
-
for (const child of await listExtensionManifestDirectories(absolute)) {
|
|
448
|
-
discovered.add(child);
|
|
449
|
-
}
|
|
450
|
-
}
|
|
451
|
-
if (manifestEntries.length === 0) {
|
|
452
|
-
for (const root of PM_PACKAGE_CONVENTIONAL_RESOURCE_ROOTS.extensions) {
|
|
453
|
-
for (const child of await listExtensionManifestDirectories(path2.join(packageRoot, root))) {
|
|
454
|
-
discovered.add(child);
|
|
455
|
-
}
|
|
456
|
-
}
|
|
457
|
-
}
|
|
458
|
-
return [...discovered].sort((left, right) => left.localeCompare(right));
|
|
459
|
-
}
|
|
460
|
-
|
|
461
|
-
// dist/cli/commands/extension/install-sources.js
|
|
462
244
|
!(function() {
|
|
463
245
|
try {
|
|
464
246
|
var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
|
|
@@ -559,7 +341,7 @@ function parseExtensionInstallSource(input, options = {}) {
|
|
|
559
341
|
return {
|
|
560
342
|
kind: "local",
|
|
561
343
|
input: normalizedInput,
|
|
562
|
-
absolute_path:
|
|
344
|
+
absolute_path: path2.resolve(process.cwd(), normalizedInput)
|
|
563
345
|
};
|
|
564
346
|
}
|
|
565
347
|
async function runGitCommand(args, execRunner = execFileAsync) {
|
|
@@ -660,8 +442,8 @@ function wrapNpmPackResolutionError(spec, error) {
|
|
|
660
442
|
return new PmCliError(recovery.message, EXIT_CODE.NOT_FOUND, recovery.context);
|
|
661
443
|
}
|
|
662
444
|
async function resolveLocalNpmPackagePath(spec) {
|
|
663
|
-
if (
|
|
664
|
-
const absolutePath =
|
|
445
|
+
if (path2.isAbsolute(spec) || spec.startsWith(".") || spec.startsWith("..")) {
|
|
446
|
+
const absolutePath = path2.resolve(process.cwd(), spec);
|
|
665
447
|
return await pathExists(absolutePath) ? absolutePath : null;
|
|
666
448
|
}
|
|
667
449
|
try {
|
|
@@ -673,7 +455,7 @@ async function resolveLocalNpmPackagePath(spec) {
|
|
|
673
455
|
} catch {
|
|
674
456
|
}
|
|
675
457
|
if (!/^[a-z][a-z0-9+.-]*:/i.test(spec)) {
|
|
676
|
-
const absolutePath =
|
|
458
|
+
const absolutePath = path2.resolve(process.cwd(), spec);
|
|
677
459
|
if (await pathExists(absolutePath)) {
|
|
678
460
|
return absolutePath;
|
|
679
461
|
}
|
|
@@ -709,7 +491,7 @@ function normalizeNpmLocalFileAliasSpec(spec, cwd = process.cwd()) {
|
|
|
709
491
|
return spec;
|
|
710
492
|
}
|
|
711
493
|
if (!target.startsWith("/")) {
|
|
712
|
-
return `${packageName}@${
|
|
494
|
+
return `${packageName}@${path2.resolve(cwd, target)}`;
|
|
713
495
|
}
|
|
714
496
|
let decodedPath;
|
|
715
497
|
try {
|
|
@@ -726,7 +508,7 @@ function parsePackedNpmPackage(stdout, packDirectory) {
|
|
|
726
508
|
const first = Array.isArray(parsed) ? parsed[0] : void 0;
|
|
727
509
|
if (first && typeof first.filename === "string" && first.filename.trim().length > 0) {
|
|
728
510
|
return {
|
|
729
|
-
tarball:
|
|
511
|
+
tarball: path2.resolve(packDirectory, first.filename),
|
|
730
512
|
package: typeof first.name === "string" ? first.name : void 0,
|
|
731
513
|
version: typeof first.version === "string" ? first.version : void 0
|
|
732
514
|
};
|
|
@@ -738,7 +520,7 @@ function parsePackedNpmPackage(stdout, packDirectory) {
|
|
|
738
520
|
throw new PmCliError("npm pack did not report a tarball filename.", EXIT_CODE.GENERIC_FAILURE);
|
|
739
521
|
}
|
|
740
522
|
return {
|
|
741
|
-
tarball:
|
|
523
|
+
tarball: path2.resolve(packDirectory, lastLine)
|
|
742
524
|
};
|
|
743
525
|
}
|
|
744
526
|
async function resolveNpmSourceDirectory(source) {
|
|
@@ -747,8 +529,8 @@ async function resolveNpmSourceDirectory(source) {
|
|
|
747
529
|
async function resolveNpmSourceDirectoryWithRunner(source, npmRunner) {
|
|
748
530
|
const localPackageRoot = await resolveLocalNpmPackagePath(source.spec);
|
|
749
531
|
if (localPackageRoot) {
|
|
750
|
-
const packageJsonPath =
|
|
751
|
-
const packageJson = await pathExists(packageJsonPath) ? JSON.parse(await
|
|
532
|
+
const packageJsonPath = path2.join(localPackageRoot, "package.json");
|
|
533
|
+
const packageJson = await pathExists(packageJsonPath) ? JSON.parse(await fs2.readFile(packageJsonPath, "utf8")) : {};
|
|
752
534
|
return {
|
|
753
535
|
directory: await resolvePackageExtensionDirectory(localPackageRoot, source.input),
|
|
754
536
|
package: typeof packageJson.name === "string" ? packageJson.name : void 0,
|
|
@@ -757,17 +539,17 @@ async function resolveNpmSourceDirectoryWithRunner(source, npmRunner) {
|
|
|
757
539
|
}
|
|
758
540
|
};
|
|
759
541
|
}
|
|
760
|
-
const tempRoot = await
|
|
761
|
-
const packDirectory =
|
|
762
|
-
const extractDirectory =
|
|
763
|
-
await
|
|
764
|
-
await
|
|
542
|
+
const tempRoot = await fs2.mkdtemp(path2.join(os.tmpdir(), "pm-npm-package-source-"));
|
|
543
|
+
const packDirectory = path2.join(tempRoot, "pack");
|
|
544
|
+
const extractDirectory = path2.join(tempRoot, "extract");
|
|
545
|
+
await fs2.mkdir(packDirectory, { recursive: true });
|
|
546
|
+
await fs2.mkdir(extractDirectory, { recursive: true });
|
|
765
547
|
try {
|
|
766
548
|
const packSpec = await resolveNpmPackSpec(source.spec);
|
|
767
549
|
const packStdout = await npmRunner(["pack", packSpec, "--json", "--pack-destination", packDirectory]);
|
|
768
550
|
const packed = parsePackedNpmPackage(packStdout, packDirectory);
|
|
769
551
|
await execFileAsync("tar", ["-xzf", packed.tarball, "-C", extractDirectory], { encoding: "utf8" });
|
|
770
|
-
const packageRoot =
|
|
552
|
+
const packageRoot = path2.join(extractDirectory, "package");
|
|
771
553
|
await installNpmPackageRuntimeDependencies(packageRoot);
|
|
772
554
|
const directory = await resolvePackageExtensionDirectory(packageRoot, source.input);
|
|
773
555
|
return {
|
|
@@ -775,11 +557,11 @@ async function resolveNpmSourceDirectoryWithRunner(source, npmRunner) {
|
|
|
775
557
|
package: packed.package,
|
|
776
558
|
version: packed.version,
|
|
777
559
|
cleanup: async () => {
|
|
778
|
-
await
|
|
560
|
+
await fs2.rm(tempRoot, { recursive: true, force: true });
|
|
779
561
|
}
|
|
780
562
|
};
|
|
781
563
|
} catch (error) {
|
|
782
|
-
await
|
|
564
|
+
await fs2.rm(tempRoot, { recursive: true, force: true });
|
|
783
565
|
const wrappedError = wrapNpmPackResolutionError(source.spec, error);
|
|
784
566
|
if (wrappedError) {
|
|
785
567
|
throw wrappedError;
|
|
@@ -788,13 +570,13 @@ async function resolveNpmSourceDirectoryWithRunner(source, npmRunner) {
|
|
|
788
570
|
}
|
|
789
571
|
}
|
|
790
572
|
async function installNpmPackageRuntimeDependencies(packageRoot) {
|
|
791
|
-
const packageJsonPath =
|
|
573
|
+
const packageJsonPath = path2.join(packageRoot, "package.json");
|
|
792
574
|
if (!await pathExists(packageJsonPath)) {
|
|
793
575
|
return;
|
|
794
576
|
}
|
|
795
577
|
let parsed;
|
|
796
578
|
try {
|
|
797
|
-
parsed = JSON.parse(await
|
|
579
|
+
parsed = JSON.parse(await fs2.readFile(packageJsonPath, "utf8"));
|
|
798
580
|
} catch {
|
|
799
581
|
return;
|
|
800
582
|
}
|
|
@@ -811,12 +593,12 @@ async function installNpmPackageRuntimeDependencies(packageRoot) {
|
|
|
811
593
|
delete runtimeOnlyManifest.devDependencies;
|
|
812
594
|
const installManifest = { ...runtimeOnlyManifest };
|
|
813
595
|
removeHostedPmCliDependency(installManifest);
|
|
814
|
-
await
|
|
596
|
+
await fs2.writeFile(packageJsonPath, `${JSON.stringify(installManifest, null, 2)}
|
|
815
597
|
`, "utf8");
|
|
816
598
|
try {
|
|
817
599
|
await Promise.all([
|
|
818
|
-
|
|
819
|
-
|
|
600
|
+
fs2.rm(path2.join(packageRoot, "package-lock.json"), { force: true }),
|
|
601
|
+
fs2.rm(path2.join(packageRoot, "npm-shrinkwrap.json"), { force: true })
|
|
820
602
|
]);
|
|
821
603
|
if (dependencySpecs.length > 0) {
|
|
822
604
|
await runNpmCommand([
|
|
@@ -834,7 +616,7 @@ async function installNpmPackageRuntimeDependencies(packageRoot) {
|
|
|
834
616
|
await linkHostedPmCliDependency(packageRoot);
|
|
835
617
|
}
|
|
836
618
|
} finally {
|
|
837
|
-
await
|
|
619
|
+
await fs2.writeFile(packageJsonPath, `${JSON.stringify(runtimeOnlyManifest, null, 2)}
|
|
838
620
|
`, "utf8");
|
|
839
621
|
}
|
|
840
622
|
}
|
|
@@ -864,11 +646,11 @@ function removeHostedPmCliDependency(manifest) {
|
|
|
864
646
|
async function linkHostedPmCliDependency(packageRoot) {
|
|
865
647
|
const hostPackageRoot = resolvePmPackageRootFromModule(import.meta.url, ["../../../.."]);
|
|
866
648
|
const [scope, packageName] = PM_CLI_PACKAGE_NAME.split("/");
|
|
867
|
-
const scopedDirectory =
|
|
868
|
-
const linkPath =
|
|
869
|
-
await
|
|
870
|
-
await
|
|
871
|
-
await
|
|
649
|
+
const scopedDirectory = path2.join(packageRoot, "node_modules", scope);
|
|
650
|
+
const linkPath = path2.join(scopedDirectory, packageName);
|
|
651
|
+
await fs2.mkdir(scopedDirectory, { recursive: true });
|
|
652
|
+
await fs2.rm(linkPath, { recursive: true, force: true });
|
|
653
|
+
await fs2.symlink(hostPackageRoot, linkPath, resolveDirectorySymlinkType(process.platform));
|
|
872
654
|
}
|
|
873
655
|
function resolveDirectorySymlinkType(platform) {
|
|
874
656
|
return platform === "win32" ? "junction" : "dir";
|
|
@@ -894,7 +676,7 @@ async function resolvePackageExtensionDirectory(packageRoot, sourceLabel) {
|
|
|
894
676
|
return discovered[0];
|
|
895
677
|
}
|
|
896
678
|
if (discovered.length > 1) {
|
|
897
|
-
const choices = discovered.map((entry) =>
|
|
679
|
+
const choices = discovered.map((entry) => path2.relative(packageRoot, entry).replaceAll(path2.sep, "/")).sort((left, right) => left.localeCompare(right));
|
|
898
680
|
throw new PmCliError(`Package source "${sourceLabel}" contains multiple extension manifests. Provide an explicit extension path. Candidates: ${choices.join(", ")}`, EXIT_CODE.USAGE);
|
|
899
681
|
}
|
|
900
682
|
throw new PmCliError(`Unable to locate a pm extension manifest in package source "${sourceLabel}". Package installs currently activate only extension resources, so add package.json pm.extensions or an extensions/ directory. Metadata-only resources like pm.docs/pm.examples are catalog metadata and do not activate commands.`, EXIT_CODE.USAGE);
|
|
@@ -903,33 +685,33 @@ async function resolveGithubSourceDirectory(cloneDirectory, source) {
|
|
|
903
685
|
const candidatePaths = [];
|
|
904
686
|
if (source.subpath) {
|
|
905
687
|
candidatePaths.push(source.subpath);
|
|
906
|
-
candidatePaths.push(
|
|
907
|
-
candidatePaths.push(
|
|
908
|
-
candidatePaths.push(
|
|
688
|
+
candidatePaths.push(path2.posix.join(".agents/pm/extensions", source.subpath));
|
|
689
|
+
candidatePaths.push(path2.posix.join(".custom/pm-extensions", source.subpath));
|
|
690
|
+
candidatePaths.push(path2.posix.join(".custom/pm-extension", source.subpath));
|
|
909
691
|
}
|
|
910
692
|
for (const candidate of candidatePaths) {
|
|
911
|
-
const absolute =
|
|
693
|
+
const absolute = path2.resolve(cloneDirectory, candidate);
|
|
912
694
|
if (!isPathWithinDirectory(cloneDirectory, absolute)) {
|
|
913
695
|
continue;
|
|
914
696
|
}
|
|
915
|
-
if (await pathExists(
|
|
697
|
+
if (await pathExists(path2.join(absolute, "manifest.json"))) {
|
|
916
698
|
return { directory: absolute, resolved_subpath: candidate };
|
|
917
699
|
}
|
|
918
700
|
}
|
|
919
|
-
if (await pathExists(
|
|
701
|
+
if (await pathExists(path2.join(cloneDirectory, "manifest.json"))) {
|
|
920
702
|
return { directory: cloneDirectory, resolved_subpath: "." };
|
|
921
703
|
}
|
|
922
704
|
const discoveredDirectory = await resolvePackageExtensionDirectory(cloneDirectory, source.input);
|
|
923
705
|
return {
|
|
924
706
|
directory: discoveredDirectory,
|
|
925
|
-
resolved_subpath:
|
|
707
|
+
resolved_subpath: path2.relative(cloneDirectory, discoveredDirectory).replaceAll(path2.sep, "/")
|
|
926
708
|
};
|
|
927
709
|
}
|
|
928
710
|
async function resolveInstallSource(source) {
|
|
929
711
|
if (source.kind === "local") {
|
|
930
712
|
let localStats;
|
|
931
713
|
try {
|
|
932
|
-
localStats = await
|
|
714
|
+
localStats = await fs2.stat(source.absolute_path);
|
|
933
715
|
} catch {
|
|
934
716
|
throw new PmCliError(`Local extension source does not exist: "${source.absolute_path}".`, EXIT_CODE.NOT_FOUND);
|
|
935
717
|
}
|
|
@@ -948,12 +730,12 @@ async function resolveInstallSource(source) {
|
|
|
948
730
|
source,
|
|
949
731
|
directory: resolved.directory,
|
|
950
732
|
cleanup: resolved.cleanup,
|
|
951
|
-
resolved_subpath:
|
|
733
|
+
resolved_subpath: path2.relative(path2.dirname(resolved.directory), resolved.directory).replaceAll(path2.sep, "/"),
|
|
952
734
|
npm_package: resolved.package,
|
|
953
735
|
npm_version: resolved.version
|
|
954
736
|
};
|
|
955
737
|
}
|
|
956
|
-
const cloneDirectory = await
|
|
738
|
+
const cloneDirectory = await fs2.mkdtemp(path2.join(os.tmpdir(), "pm-extension-source-"));
|
|
957
739
|
const cloneArgs = ["clone", "--depth", "1"];
|
|
958
740
|
if (source.ref) {
|
|
959
741
|
cloneArgs.push("--branch", source.ref);
|
|
@@ -969,11 +751,11 @@ async function resolveInstallSource(source) {
|
|
|
969
751
|
resolved_subpath: resolved.resolved_subpath,
|
|
970
752
|
commit,
|
|
971
753
|
cleanup: async () => {
|
|
972
|
-
await
|
|
754
|
+
await fs2.rm(cloneDirectory, { recursive: true, force: true });
|
|
973
755
|
}
|
|
974
756
|
};
|
|
975
757
|
} catch (error) {
|
|
976
|
-
await
|
|
758
|
+
await fs2.rm(cloneDirectory, { recursive: true, force: true });
|
|
977
759
|
throw error;
|
|
978
760
|
}
|
|
979
761
|
}
|
|
@@ -981,17 +763,17 @@ async function areDirectoriesEquivalent(left, right) {
|
|
|
981
763
|
if (!await pathExists(left) || !await pathExists(right)) {
|
|
982
764
|
return false;
|
|
983
765
|
}
|
|
984
|
-
const [leftRealPath, rightRealPath] = await Promise.all([
|
|
766
|
+
const [leftRealPath, rightRealPath] = await Promise.all([fs2.realpath(left), fs2.realpath(right)]);
|
|
985
767
|
return leftRealPath === rightRealPath;
|
|
986
768
|
}
|
|
987
769
|
|
|
988
770
|
// dist/cli/commands/extension/bundled-catalog.js
|
|
989
|
-
import
|
|
990
|
-
import
|
|
771
|
+
import fs3 from "node:fs/promises";
|
|
772
|
+
import path3 from "node:path";
|
|
991
773
|
!(function() {
|
|
992
774
|
try {
|
|
993
775
|
var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
|
|
994
|
-
n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "
|
|
776
|
+
n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "ce7070ac-9aa5-56b7-b6dd-80ff19b24553");
|
|
995
777
|
} catch (e2) {
|
|
996
778
|
}
|
|
997
779
|
})();
|
|
@@ -1011,7 +793,7 @@ function resolvePackageRootCandidates() {
|
|
|
1011
793
|
const candidates = [];
|
|
1012
794
|
const envRoot = process.env[PM_PACKAGE_ROOT_ENV];
|
|
1013
795
|
if (typeof envRoot === "string" && envRoot.trim().length > 0) {
|
|
1014
|
-
candidates.push(
|
|
796
|
+
candidates.push(path3.resolve(envRoot.trim()));
|
|
1015
797
|
}
|
|
1016
798
|
candidates.push(resolvePmPackageRootFromModule(import.meta.url, ["../../../.."]));
|
|
1017
799
|
return [...new Set(candidates)];
|
|
@@ -1027,8 +809,8 @@ async function resolveBundledExtensionAliasSource(input) {
|
|
|
1027
809
|
return null;
|
|
1028
810
|
}
|
|
1029
811
|
for (const packageRoot2 of resolvePackageRootCandidates()) {
|
|
1030
|
-
const legacyExtensionPath =
|
|
1031
|
-
if (await pathExists(
|
|
812
|
+
const legacyExtensionPath = path3.join(packageRoot2, ".agents", "pm", "extensions", alias.legacy_extension_directory);
|
|
813
|
+
if (await pathExists(path3.join(legacyExtensionPath, "manifest.json"))) {
|
|
1032
814
|
return legacyExtensionPath;
|
|
1033
815
|
}
|
|
1034
816
|
}
|
|
@@ -1043,17 +825,17 @@ function derivePackageAlias(packageDirectory) {
|
|
|
1043
825
|
async function collectBundledPackageEntries() {
|
|
1044
826
|
const entriesByAlias = /* @__PURE__ */ new Map();
|
|
1045
827
|
for (const packageRoot of resolvePackageRootCandidates()) {
|
|
1046
|
-
const packagesRoot =
|
|
828
|
+
const packagesRoot = path3.join(packageRoot, "packages");
|
|
1047
829
|
if (!await pathExists(packagesRoot)) {
|
|
1048
830
|
continue;
|
|
1049
831
|
}
|
|
1050
|
-
const entries = await
|
|
832
|
+
const entries = await fs3.readdir(packagesRoot, { withFileTypes: true });
|
|
1051
833
|
for (const entry of entries) {
|
|
1052
834
|
if (!entry.isDirectory() || !entry.name.startsWith("pm-")) {
|
|
1053
835
|
continue;
|
|
1054
836
|
}
|
|
1055
|
-
const candidateRoot =
|
|
1056
|
-
if (!await pathExists(
|
|
837
|
+
const candidateRoot = path3.join(packagesRoot, entry.name);
|
|
838
|
+
if (!await pathExists(path3.join(candidateRoot, "package.json"))) {
|
|
1057
839
|
continue;
|
|
1058
840
|
}
|
|
1059
841
|
const manifest = await readPmPackageManifest(candidateRoot);
|
|
@@ -1076,8 +858,8 @@ async function collectBundledPackageEntries() {
|
|
|
1076
858
|
continue;
|
|
1077
859
|
}
|
|
1078
860
|
for (const packageRoot of resolvePackageRootCandidates()) {
|
|
1079
|
-
const packagePath =
|
|
1080
|
-
if (await pathExists(
|
|
861
|
+
const packagePath = path3.join(packageRoot, "packages", legacy.package_directory);
|
|
862
|
+
if (await pathExists(path3.join(packagePath, "package.json"))) {
|
|
1081
863
|
entriesByAlias.set(alias, {
|
|
1082
864
|
alias,
|
|
1083
865
|
package_directory: legacy.package_directory,
|
|
@@ -1097,6 +879,14 @@ async function resolveBundledPackageRoot(alias) {
|
|
|
1097
879
|
const entry = (await collectBundledPackageEntries()).find((candidate) => candidate.alias === normalized);
|
|
1098
880
|
return entry?.package_root ?? null;
|
|
1099
881
|
}
|
|
882
|
+
async function resolveBundledPackageNpmName(alias) {
|
|
883
|
+
const packageRoot = await resolveBundledPackageRoot(alias);
|
|
884
|
+
if (!packageRoot) {
|
|
885
|
+
return null;
|
|
886
|
+
}
|
|
887
|
+
const manifest = await readPmPackageManifest(packageRoot);
|
|
888
|
+
return manifest.package_name ?? null;
|
|
889
|
+
}
|
|
1100
890
|
async function resolveBundledAliasManifestName(input) {
|
|
1101
891
|
const bundledAliasSource = await resolveBundledExtensionAliasSource(input);
|
|
1102
892
|
if (!bundledAliasSource) {
|
|
@@ -1128,7 +918,7 @@ function buildBundledCatalogPackageEntry(manifest, bundledEntry, scope, installe
|
|
|
1128
918
|
alias: bundledEntry.alias,
|
|
1129
919
|
bundled: true,
|
|
1130
920
|
available: true,
|
|
1131
|
-
installed: installedBuiltinAliases.has(bundledEntry.alias) || installedLocations.has(
|
|
921
|
+
installed: installedBuiltinAliases.has(bundledEntry.alias) || installedLocations.has(path3.resolve(bundledEntry.package_root)),
|
|
1132
922
|
install_target: bundledEntry.alias,
|
|
1133
923
|
install_command: `pm install ${bundledEntry.alias} ${installScopeFlag}`,
|
|
1134
924
|
package_name: manifest.package_name,
|
|
@@ -1153,7 +943,7 @@ async function buildBundledPackageCatalog(scope, global2, options = {}) {
|
|
|
1153
943
|
const roots = resolveExtensionRoots(resolvePmRoot(process.cwd(), global2.path), process.cwd());
|
|
1154
944
|
const selectedRoot = scope === "global" ? roots.global : roots.project;
|
|
1155
945
|
const managedStateRead = await readManagedExtensionState(selectedRoot);
|
|
1156
|
-
const installedLocations = new Set(managedStateRead.state.entries.filter((entry) => entry.scope === scope).filter((entry) => entry.source.kind !== "builtin").map((entry) =>
|
|
946
|
+
const installedLocations = new Set(managedStateRead.state.entries.filter((entry) => entry.scope === scope).filter((entry) => entry.source.kind !== "builtin").map((entry) => path3.resolve(entry.source.location)));
|
|
1157
947
|
const installedBuiltinAliases = new Set(managedStateRead.state.entries.filter((entry) => entry.scope === scope && entry.source.kind === "builtin").flatMap((entry) => [entry.source.name, entry.source.input, entry.source.location]).filter((value) => typeof value === "string" && value.trim().length > 0).map((value) => value.trim().toLowerCase()));
|
|
1158
948
|
const packages = [];
|
|
1159
949
|
for (const bundledEntry of await collectBundledPackageEntries()) {
|
|
@@ -1225,7 +1015,7 @@ function projectPackageCatalogEntry(entry, fields) {
|
|
|
1225
1015
|
!(function() {
|
|
1226
1016
|
try {
|
|
1227
1017
|
var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
|
|
1228
|
-
n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "
|
|
1018
|
+
n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "ae517a2b-6ef0-52a1-8b5c-bf4e18e874ea");
|
|
1229
1019
|
} catch (e2) {
|
|
1230
1020
|
}
|
|
1231
1021
|
})();
|
|
@@ -1725,7 +1515,7 @@ function buildDoctorConsistencySummary(scope, installedExtensions, loadedExtensi
|
|
|
1725
1515
|
!(function() {
|
|
1726
1516
|
try {
|
|
1727
1517
|
var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
|
|
1728
|
-
n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "
|
|
1518
|
+
n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "3ff8a83f-729e-576a-8830-d52097bd0d34");
|
|
1729
1519
|
} catch (e2) {
|
|
1730
1520
|
}
|
|
1731
1521
|
})();
|
|
@@ -1838,11 +1628,19 @@ function sleep(ms) {
|
|
|
1838
1628
|
setTimeout(resolve, ms);
|
|
1839
1629
|
});
|
|
1840
1630
|
}
|
|
1841
|
-
async function
|
|
1631
|
+
async function ensureExtensionModuleTypeMarker(destinationDirectory) {
|
|
1632
|
+
const markerPath = path4.join(destinationDirectory, "package.json");
|
|
1633
|
+
if (await pathExists(markerPath)) {
|
|
1634
|
+
return;
|
|
1635
|
+
}
|
|
1636
|
+
await fs4.writeFile(markerPath, `${JSON.stringify({ type: "module" }, null, 2)}
|
|
1637
|
+
`, "utf8");
|
|
1638
|
+
}
|
|
1639
|
+
async function copyExtensionDirectoryForInstall(sourceDirectory, destinationDirectory, copyDirectory = fs4.cp) {
|
|
1842
1640
|
for (let attempt = 1; attempt <= EXTENSION_INSTALL_COPY_ATTEMPTS; attempt += 1) {
|
|
1843
1641
|
try {
|
|
1844
1642
|
if (await pathExists(destinationDirectory)) {
|
|
1845
|
-
await
|
|
1643
|
+
await fs4.rm(destinationDirectory, { recursive: true, force: true });
|
|
1846
1644
|
}
|
|
1847
1645
|
await copyExtensionDirectoryWithoutSelfNesting(sourceDirectory, destinationDirectory, copyDirectory);
|
|
1848
1646
|
return;
|
|
@@ -1855,8 +1653,8 @@ async function copyExtensionDirectoryForInstall(sourceDirectory, destinationDire
|
|
|
1855
1653
|
}
|
|
1856
1654
|
}
|
|
1857
1655
|
async function copyExtensionDirectoryWithoutSelfNesting(sourceDirectory, destinationDirectory, copyDirectory) {
|
|
1858
|
-
const resolvedSource =
|
|
1859
|
-
const resolvedDestination =
|
|
1656
|
+
const resolvedSource = path4.resolve(sourceDirectory);
|
|
1657
|
+
const resolvedDestination = path4.resolve(destinationDirectory);
|
|
1860
1658
|
if (resolvedSource === resolvedDestination) {
|
|
1861
1659
|
return;
|
|
1862
1660
|
}
|
|
@@ -1864,28 +1662,28 @@ async function copyExtensionDirectoryWithoutSelfNesting(sourceDirectory, destina
|
|
|
1864
1662
|
await copyDirectory(sourceDirectory, destinationDirectory, { recursive: true, force: true });
|
|
1865
1663
|
return;
|
|
1866
1664
|
}
|
|
1867
|
-
const stagingRoot = await
|
|
1868
|
-
const stagedDirectory =
|
|
1665
|
+
const stagingRoot = await fs4.mkdtemp(path4.join(os2.tmpdir(), "pm-extension-copy-"));
|
|
1666
|
+
const stagedDirectory = path4.join(stagingRoot, "extension");
|
|
1869
1667
|
try {
|
|
1870
1668
|
await copyDirectory(sourceDirectory, stagedDirectory, { recursive: true, force: true });
|
|
1871
1669
|
await copyDirectory(stagedDirectory, destinationDirectory, { recursive: true, force: true });
|
|
1872
1670
|
} finally {
|
|
1873
|
-
await
|
|
1671
|
+
await fs4.rm(stagingRoot, { recursive: true, force: true });
|
|
1874
1672
|
}
|
|
1875
1673
|
}
|
|
1876
1674
|
async function withExtensionInstallLock(settingsRoot, destinationDirectoryName, run, options) {
|
|
1877
|
-
const lockRoot =
|
|
1878
|
-
const lockPath =
|
|
1879
|
-
await
|
|
1675
|
+
const lockRoot = path4.join(settingsRoot, "runtime", "extension-install-locks");
|
|
1676
|
+
const lockPath = path4.join(lockRoot, `${destinationDirectoryName}.lock`);
|
|
1677
|
+
await fs4.mkdir(lockRoot, { recursive: true });
|
|
1880
1678
|
const attempts = Math.max(1, Math.floor(options?.attempts ?? EXTENSION_INSTALL_LOCK_ATTEMPTS));
|
|
1881
1679
|
const delayMs = Math.max(0, Math.floor(options?.delay_ms ?? EXTENSION_INSTALL_LOCK_DELAY_MS));
|
|
1882
1680
|
const staleMs = Math.max(0, Math.floor(options?.stale_ms ?? EXTENSION_INSTALL_LOCK_STALE_MS));
|
|
1883
1681
|
let acquired = false;
|
|
1884
1682
|
for (let attempt = 1; attempt <= attempts; attempt += 1) {
|
|
1885
1683
|
try {
|
|
1886
|
-
await
|
|
1684
|
+
await fs4.mkdir(lockPath);
|
|
1887
1685
|
acquired = true;
|
|
1888
|
-
await
|
|
1686
|
+
await fs4.writeFile(path4.join(lockPath, "owner.json"), `${JSON.stringify({ pid: process.pid, created_at: nowIso(), destination: destinationDirectoryName }, null, 2)}
|
|
1889
1687
|
`, "utf8");
|
|
1890
1688
|
break;
|
|
1891
1689
|
} catch (error) {
|
|
@@ -1894,12 +1692,12 @@ async function withExtensionInstallLock(settingsRoot, destinationDirectoryName,
|
|
|
1894
1692
|
}
|
|
1895
1693
|
let stat = null;
|
|
1896
1694
|
try {
|
|
1897
|
-
stat = await
|
|
1695
|
+
stat = await fs4.stat(lockPath);
|
|
1898
1696
|
} catch {
|
|
1899
1697
|
stat = null;
|
|
1900
1698
|
}
|
|
1901
1699
|
if (stat && Date.now() - stat.mtimeMs > staleMs) {
|
|
1902
|
-
await
|
|
1700
|
+
await fs4.rm(lockPath, { recursive: true, force: true });
|
|
1903
1701
|
continue;
|
|
1904
1702
|
}
|
|
1905
1703
|
await sleep(delayMs);
|
|
@@ -1911,7 +1709,7 @@ async function withExtensionInstallLock(settingsRoot, destinationDirectoryName,
|
|
|
1911
1709
|
try {
|
|
1912
1710
|
return await run();
|
|
1913
1711
|
} finally {
|
|
1914
|
-
await
|
|
1712
|
+
await fs4.rm(lockPath, { recursive: true, force: true }).catch(() => void 0);
|
|
1915
1713
|
}
|
|
1916
1714
|
}
|
|
1917
1715
|
async function resolveInstalledExtensionCandidate(installed, extensionTarget) {
|
|
@@ -2168,7 +1966,7 @@ async function listInstalledExtensions(extensionsRoot, scope, settings, state) {
|
|
|
2168
1966
|
warnings: []
|
|
2169
1967
|
};
|
|
2170
1968
|
}
|
|
2171
|
-
const entries = await
|
|
1969
|
+
const entries = await fs4.readdir(extensionsRoot, { withFileTypes: true });
|
|
2172
1970
|
const directories = entries.filter((entry) => entry.isDirectory()).map((entry) => entry.name).sort((left, right) => left.localeCompare(right));
|
|
2173
1971
|
const managedByName = /* @__PURE__ */ new Map();
|
|
2174
1972
|
const managedByDirectory = /* @__PURE__ */ new Map();
|
|
@@ -2179,8 +1977,8 @@ async function listInstalledExtensions(extensionsRoot, scope, settings, state) {
|
|
|
2179
1977
|
const warnings = [];
|
|
2180
1978
|
const summaries = [];
|
|
2181
1979
|
for (const directoryName of directories) {
|
|
2182
|
-
const extensionDirectory =
|
|
2183
|
-
const manifestPath =
|
|
1980
|
+
const extensionDirectory = path4.join(extensionsRoot, directoryName);
|
|
1981
|
+
const manifestPath = path4.join(extensionDirectory, "manifest.json");
|
|
2184
1982
|
if (!await pathExists(manifestPath)) {
|
|
2185
1983
|
warnings.push(`extension_manifest_missing:${scope}:${directoryName}`);
|
|
2186
1984
|
const managedEntry2 = managedByDirectory.get(normalizeExtensionNameForMatch(directoryName));
|
|
@@ -2195,7 +1993,7 @@ async function listInstalledExtensions(extensionsRoot, scope, settings, state) {
|
|
|
2195
1993
|
}
|
|
2196
1994
|
let rawManifest;
|
|
2197
1995
|
try {
|
|
2198
|
-
rawManifest = JSON.parse(await
|
|
1996
|
+
rawManifest = JSON.parse(await fs4.readFile(manifestPath, "utf8"));
|
|
2199
1997
|
} catch {
|
|
2200
1998
|
warnings.push(`extension_manifest_invalid_json:${scope}:${directoryName}`);
|
|
2201
1999
|
continue;
|
|
@@ -2228,7 +2026,7 @@ function summarizeRuntimeCommandPathsForExtension(extensionName, installed) {
|
|
|
2228
2026
|
};
|
|
2229
2027
|
}
|
|
2230
2028
|
function resolveCommandDiscoveryPackageName(extensionName, source) {
|
|
2231
|
-
if (
|
|
2029
|
+
if (typeof source.package === "string" && source.package.trim().length > 0) {
|
|
2232
2030
|
return source.package.trim();
|
|
2233
2031
|
}
|
|
2234
2032
|
if (source.kind === "builtin" && typeof source.name === "string" && source.name.trim().length > 0) {
|
|
@@ -2359,7 +2157,7 @@ async function adoptUnmanagedExtensions(extensionsRoot, scope, installedExtensio
|
|
|
2359
2157
|
let nextState = state;
|
|
2360
2158
|
const adoptedEntries = [];
|
|
2361
2159
|
for (const candidate of sortedCandidates) {
|
|
2362
|
-
const extensionDirectory =
|
|
2160
|
+
const extensionDirectory = path4.join(extensionsRoot, candidate.directory);
|
|
2363
2161
|
const validated = await validateExtensionDirectory(extensionDirectory);
|
|
2364
2162
|
const now = nowIso();
|
|
2365
2163
|
const sourceRecord = {
|
|
@@ -2683,13 +2481,14 @@ async function runExtensionCatalogAction(ctx) {
|
|
|
2683
2481
|
}
|
|
2684
2482
|
return withResult(await buildBundledPackageCatalog(scope, global2, options));
|
|
2685
2483
|
}
|
|
2686
|
-
function buildInstallManagedSource(bundledAliasName, installSource, resolvedSource) {
|
|
2484
|
+
function buildInstallManagedSource(bundledAliasName, bundledPackageName, installSource, resolvedSource) {
|
|
2687
2485
|
if (bundledAliasName) {
|
|
2688
2486
|
return {
|
|
2689
2487
|
kind: "builtin",
|
|
2690
2488
|
input: bundledAliasName,
|
|
2691
2489
|
location: bundledAliasName,
|
|
2692
|
-
name: bundledAliasName
|
|
2490
|
+
name: bundledAliasName,
|
|
2491
|
+
...bundledPackageName === null ? {} : { package: bundledPackageName }
|
|
2693
2492
|
};
|
|
2694
2493
|
}
|
|
2695
2494
|
if (installSource.kind === "local") {
|
|
@@ -2722,18 +2521,19 @@ function buildInstallManagedSource(bundledAliasName, installSource, resolvedSour
|
|
|
2722
2521
|
}
|
|
2723
2522
|
async function performExtensionInstallUnderLock(ctx, input) {
|
|
2724
2523
|
const { scope, resolvedRoots, warnings, global: global2, withResult } = ctx;
|
|
2725
|
-
const { validated, destinationDirectoryName, bundledAliasName, installSource, resolvedSource } = input;
|
|
2524
|
+
const { validated, destinationDirectoryName, bundledAliasName, bundledPackageName, installSource, resolvedSource } = input;
|
|
2726
2525
|
const settings = await readSettings(resolvedRoots.settings_root);
|
|
2727
2526
|
const managedStateRead = await readManagedExtensionState(resolvedRoots.selected_root);
|
|
2728
2527
|
warnings.push(...managedStateRead.warnings);
|
|
2729
|
-
const destinationDirectory =
|
|
2528
|
+
const destinationDirectory = path4.join(resolvedRoots.selected_root, destinationDirectoryName);
|
|
2730
2529
|
const destinationExists = await pathExists(destinationDirectory);
|
|
2731
2530
|
const installInPlace = await areDirectoriesEquivalent(validated.directory, destinationDirectory);
|
|
2732
|
-
await
|
|
2531
|
+
await fs4.mkdir(resolvedRoots.selected_root, { recursive: true });
|
|
2733
2532
|
if (!installInPlace) {
|
|
2734
2533
|
await copyExtensionDirectoryForInstall(validated.directory, destinationDirectory);
|
|
2735
2534
|
}
|
|
2736
|
-
|
|
2535
|
+
await ensureExtensionModuleTypeMarker(destinationDirectory);
|
|
2536
|
+
const sourceRecord = buildInstallManagedSource(bundledAliasName, bundledPackageName, installSource, resolvedSource);
|
|
2737
2537
|
const now = nowIso();
|
|
2738
2538
|
const existingManagedEntry = managedStateRead.state.entries.find((entry) => normalizeExtensionNameForMatch(entry.name) === normalizeExtensionNameForMatch(validated.manifest.name));
|
|
2739
2539
|
const sourceUnchanged = existingManagedEntry !== void 0 && existingManagedEntry.manifest_version === validated.manifest.version && managedExtensionSourcesEquivalent(existingManagedEntry.source, sourceRecord);
|
|
@@ -2828,6 +2628,7 @@ async function runExtensionInstallAction(ctx) {
|
|
|
2828
2628
|
}
|
|
2829
2629
|
const bundledAliasSource = typeof githubOption === "string" ? null : await resolveBundledExtensionAliasSource(explicitSourceInput);
|
|
2830
2630
|
const bundledAliasName = bundledAliasSource === null ? null : explicitSourceInput.trim().toLowerCase();
|
|
2631
|
+
const bundledPackageName = bundledAliasName === null ? null : await resolveBundledPackageNpmName(bundledAliasName);
|
|
2831
2632
|
const sourceInput = bundledAliasSource ?? explicitSourceInput;
|
|
2832
2633
|
const installSource = parseExtensionInstallSource(sourceInput, {
|
|
2833
2634
|
forceGithub: typeof githubOption === "string",
|
|
@@ -2841,6 +2642,7 @@ async function runExtensionInstallAction(ctx) {
|
|
|
2841
2642
|
validated,
|
|
2842
2643
|
destinationDirectoryName,
|
|
2843
2644
|
bundledAliasName,
|
|
2645
|
+
bundledPackageName,
|
|
2844
2646
|
installSource,
|
|
2845
2647
|
resolvedSource
|
|
2846
2648
|
}));
|
|
@@ -2912,7 +2714,7 @@ async function runExtensionAdoptAction(ctx) {
|
|
|
2912
2714
|
}
|
|
2913
2715
|
});
|
|
2914
2716
|
}
|
|
2915
|
-
const extensionDirectory =
|
|
2717
|
+
const extensionDirectory = path4.join(resolvedRoots.selected_root, candidate.directory);
|
|
2916
2718
|
const validated = await validateExtensionDirectory(extensionDirectory);
|
|
2917
2719
|
const now = nowIso();
|
|
2918
2720
|
const sourceRecord = githubOption === void 0 ? {
|
|
@@ -2978,8 +2780,8 @@ async function runExtensionUninstallAction(ctx) {
|
|
|
2978
2780
|
if (!candidate) {
|
|
2979
2781
|
throw new PmCliError(`Installed extension "${extensionTarget}" was not found in ${scope} scope.`, EXIT_CODE.NOT_FOUND);
|
|
2980
2782
|
}
|
|
2981
|
-
const destinationDirectory =
|
|
2982
|
-
await
|
|
2783
|
+
const destinationDirectory = path4.join(resolvedRoots.selected_root, candidate.directory);
|
|
2784
|
+
await fs4.rm(destinationDirectory, { recursive: true, force: true });
|
|
2983
2785
|
const updatedState = {
|
|
2984
2786
|
...managedStateRead.state,
|
|
2985
2787
|
updated_at: nowIso(),
|
|
@@ -3256,7 +3058,11 @@ async function runExtensionDescribeAction(ctx) {
|
|
|
3256
3058
|
const describeResult = buildExtensionDescribeResult(normalizedTarget, loadResult, activationResult);
|
|
3257
3059
|
if (normalizedTarget !== void 0 && describeResult.extensions.length === 0) {
|
|
3258
3060
|
const noun = options.vocabulary === "package" ? "package" : "extension";
|
|
3259
|
-
|
|
3061
|
+
const loadedNames = [
|
|
3062
|
+
...new Set(loadResult.loaded.map((entry) => options.vocabulary === "package" && typeof entry.source_package === "string" && entry.source_package.trim().length > 0 ? entry.source_package.trim() : entry.name))
|
|
3063
|
+
].sort((left, right) => left.localeCompare(right));
|
|
3064
|
+
const loadedHint = loadedNames.length > 0 ? ` Loaded ${noun} names: ${loadedNames.join(", ")}.` : "";
|
|
3065
|
+
throw new PmCliError(`No loaded ${noun} named "${normalizedTarget}" was found in ${scope} scope.${loadedHint} Run pm ${noun} explore to list discovered ${noun}s.`, EXIT_CODE.NOT_FOUND);
|
|
3260
3066
|
}
|
|
3261
3067
|
return withResult({
|
|
3262
3068
|
target: describeResult.target,
|
|
@@ -3428,4 +3234,4 @@ export {
|
|
|
3428
3234
|
runExtension,
|
|
3429
3235
|
_testOnly
|
|
3430
3236
|
};
|
|
3431
|
-
//# sourceMappingURL=chunk-
|
|
3237
|
+
//# sourceMappingURL=chunk-GIWXVMZ3.js.map
|