@powerhousedao/shared 6.2.3-dev.6 → 6.2.3-dev.60
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/dist/analytics/index.d.ts +4 -4
- package/dist/analytics/index.d.ts.map +1 -1
- package/dist/analytics/index.js +25 -24
- package/dist/analytics/index.js.map +1 -1
- package/dist/clis/args/{access-token-To5LaIfL.mjs → access-token-3Hqv_U8I.mjs} +2 -2
- package/dist/clis/args/{access-token-To5LaIfL.mjs.map → access-token-3Hqv_U8I.mjs.map} +1 -1
- package/dist/clis/args/access-token-C5sKsH2O.d.mts +16 -0
- package/dist/clis/args/access-token-C5sKsH2O.d.mts.map +1 -0
- package/dist/clis/args/access-token.d.mts +3 -2
- package/dist/clis/args/access-token.mjs +1 -1
- package/dist/clis/args/{common-CcYbXrBx.mjs → common-BXabdhiO.mjs} +30 -7
- package/dist/clis/args/common-BXabdhiO.mjs.map +1 -0
- package/dist/clis/args/common-Bnm859xU.d.mts +186 -0
- package/dist/clis/args/common-Bnm859xU.d.mts.map +1 -0
- package/dist/clis/args/common.d.mts +3 -2
- package/dist/clis/args/common.mjs +1 -1
- package/dist/clis/args/{connect-BVVvCmL9.mjs → connect-BG3HkYBk.mjs} +8 -3
- package/dist/clis/args/connect-BG3HkYBk.mjs.map +1 -0
- package/dist/clis/args/connect-DjeiqXus.d.mts +450 -0
- package/dist/clis/args/connect-DjeiqXus.d.mts.map +1 -0
- package/dist/clis/args/connect.d.mts +3 -2
- package/dist/clis/args/connect.mjs +1 -1
- package/dist/clis/args/dist-CorQTQL-.mjs +1533 -0
- package/dist/clis/args/dist-CorQTQL-.mjs.map +1 -0
- package/dist/clis/args/{generate-CA916Fvj.mjs → generate-BOItUNvP.mjs} +40 -2
- package/dist/clis/args/generate-BOItUNvP.mjs.map +1 -0
- package/dist/clis/args/generate-BPBBLeUD.d.mts +103 -0
- package/dist/clis/args/generate-BPBBLeUD.d.mts.map +1 -0
- package/dist/clis/args/generate.d.mts +3 -2
- package/dist/clis/args/generate.mjs +1 -1
- package/dist/clis/args/{help-Bqbgbalu.mjs → help-BfAqpYvC.mjs} +43 -16
- package/dist/clis/args/help-BfAqpYvC.mjs.map +1 -0
- package/dist/clis/args/help-KuqI-EEG.d.mts +203 -0
- package/dist/clis/args/help-KuqI-EEG.d.mts.map +1 -0
- package/dist/clis/args/help.d.mts +3 -2
- package/dist/clis/args/help.mjs +1 -1
- package/dist/clis/args/index.d.mts +20 -19
- package/dist/clis/args/index.mjs +18 -18
- package/dist/clis/args/init-CTaK80wE.d.mts +55 -0
- package/dist/clis/args/init-CTaK80wE.d.mts.map +1 -0
- package/dist/clis/args/{init-rz9Ei7nq.mjs → init-xlCNZ8Oe.mjs} +7 -2
- package/dist/clis/args/{init-rz9Ei7nq.mjs.map → init-xlCNZ8Oe.mjs.map} +1 -1
- package/dist/clis/args/init.d.mts +3 -2
- package/dist/clis/args/init.mjs +1 -1
- package/dist/clis/args/inspect-BjRmtB86.d.mts +13 -0
- package/dist/clis/args/inspect-BjRmtB86.d.mts.map +1 -0
- package/dist/clis/args/{inspect-tckH8mSw.mjs → inspect-UNQgtuR0.mjs} +2 -2
- package/dist/clis/args/{inspect-tckH8mSw.mjs.map → inspect-UNQgtuR0.mjs.map} +1 -1
- package/dist/clis/args/inspect.d.mts +3 -2
- package/dist/clis/args/inspect.mjs +1 -1
- package/dist/clis/args/install-B0tMyUMw.d.mts +37 -0
- package/dist/clis/args/install-B0tMyUMw.d.mts.map +1 -0
- package/dist/clis/args/{install-Sz2DlCHh.mjs → install-F-27kF6m.mjs} +2 -2
- package/dist/clis/args/{install-Sz2DlCHh.mjs.map → install-F-27kF6m.mjs.map} +1 -1
- package/dist/clis/args/install.d.mts +3 -2
- package/dist/clis/args/install.mjs +1 -1
- package/dist/clis/args/{list-DM2d6f1m.mjs → list-Bkfn8Yuo.mjs} +2 -2
- package/dist/clis/args/{list-DM2d6f1m.mjs.map → list-Bkfn8Yuo.mjs.map} +1 -1
- package/dist/clis/args/list-DrbxA7JJ.d.mts +10 -0
- package/dist/clis/args/list-DrbxA7JJ.d.mts.map +1 -0
- package/dist/clis/args/list.d.mts +3 -2
- package/dist/clis/args/list.mjs +1 -1
- package/dist/clis/args/{login-DiKT5Jfu.mjs → login-CIFkQExi.mjs} +2 -2
- package/dist/clis/args/{login-DiKT5Jfu.mjs.map → login-CIFkQExi.mjs.map} +1 -1
- package/dist/clis/args/login-CXRJXg71.d.mts +25 -0
- package/dist/clis/args/login-CXRJXg71.d.mts.map +1 -0
- package/dist/clis/args/login.d.mts +3 -2
- package/dist/clis/args/login.mjs +1 -1
- package/dist/clis/args/migrate-DkCQRL2D.d.mts +19 -0
- package/dist/clis/args/migrate-DkCQRL2D.d.mts.map +1 -0
- package/dist/clis/args/{migrate-CG_gWc4k.mjs → migrate-DwJGhc2d.mjs} +2 -2
- package/dist/clis/args/{migrate-CG_gWc4k.mjs.map → migrate-DwJGhc2d.mjs.map} +1 -1
- package/dist/clis/args/migrate.d.mts +3 -2
- package/dist/clis/args/migrate.mjs +1 -1
- package/dist/clis/args/publish-CeW4bOrl.d.mts +16 -0
- package/dist/clis/args/publish-CeW4bOrl.d.mts.map +1 -0
- package/dist/clis/args/{publish-DDZYsUfV.mjs → publish-DHqlGWmL.mjs} +2 -2
- package/dist/clis/args/{publish-DDZYsUfV.mjs.map → publish-DHqlGWmL.mjs.map} +1 -1
- package/dist/clis/args/publish.d.mts +3 -2
- package/dist/clis/args/publish.mjs +1 -1
- package/dist/clis/args/{registry-C_OVFQmI.mjs → registry-DIwES3l2.mjs} +2 -2
- package/dist/clis/args/{registry-C_OVFQmI.mjs.map → registry-DIwES3l2.mjs.map} +1 -1
- package/dist/clis/args/registry-DNH8xuaE.d.mts +17 -0
- package/dist/clis/args/registry-DNH8xuaE.d.mts.map +1 -0
- package/dist/clis/args/registry.d.mts +3 -2
- package/dist/clis/args/registry.mjs +1 -1
- package/dist/clis/args/run-CYp5t1xU.mjs +28 -0
- package/dist/clis/args/run-CYp5t1xU.mjs.map +1 -0
- package/dist/clis/args/run.d.mts +18 -0
- package/dist/clis/args/run.d.mts.map +1 -0
- package/dist/clis/args/run.mjs +2 -0
- package/dist/clis/args/service-CHjY5epu.d.mts +27 -0
- package/dist/clis/args/service-CHjY5epu.d.mts.map +1 -0
- package/dist/clis/args/{service-CHOOr0Gg.mjs → service-Cpjlyeu5.mjs} +2 -2
- package/dist/clis/args/{service-CHOOr0Gg.mjs.map → service-Cpjlyeu5.mjs.map} +1 -1
- package/dist/clis/args/service.d.mts +3 -2
- package/dist/clis/args/service.mjs +1 -1
- package/dist/clis/args/{switchboard-Dsp7nosi.mjs → switchboard-CCaAtU56.mjs} +2 -2
- package/dist/clis/args/{switchboard-Dsp7nosi.mjs.map → switchboard-CCaAtU56.mjs.map} +1 -1
- package/dist/clis/args/switchboard-RrNb1fUH.d.mts +70 -0
- package/dist/clis/args/switchboard-RrNb1fUH.d.mts.map +1 -0
- package/dist/clis/args/switchboard.d.mts +3 -2
- package/dist/clis/args/switchboard.mjs +1 -1
- package/dist/clis/args/{uninstall-CTwTX0u_.mjs → uninstall-3U0B8g5c.mjs} +2 -2
- package/dist/clis/args/{uninstall-CTwTX0u_.mjs.map → uninstall-3U0B8g5c.mjs.map} +1 -1
- package/dist/clis/args/uninstall-CDx7lwxn.d.mts +28 -0
- package/dist/clis/args/uninstall-CDx7lwxn.d.mts.map +1 -0
- package/dist/clis/args/uninstall.d.mts +3 -2
- package/dist/clis/args/uninstall.mjs +1 -1
- package/dist/clis/args/unpublish-CEDsk6uv.d.mts +22 -0
- package/dist/clis/args/unpublish-CEDsk6uv.d.mts.map +1 -0
- package/dist/clis/args/{unpublish-BPMkGEg5.mjs → unpublish-s9zUh6Gw.mjs} +2 -2
- package/dist/clis/args/{unpublish-BPMkGEg5.mjs.map → unpublish-s9zUh6Gw.mjs.map} +1 -1
- package/dist/clis/args/unpublish.d.mts +3 -2
- package/dist/clis/args/unpublish.mjs +1 -1
- package/dist/clis/args/{vetra-b4KUu1Ax.mjs → vetra-BUNlAAPp.mjs} +2 -2
- package/dist/clis/args/{vetra-b4KUu1Ax.mjs.map → vetra-BUNlAAPp.mjs.map} +1 -1
- package/dist/clis/args/vetra-DkDaWFPi.d.mts +111 -0
- package/dist/clis/args/vetra-DkDaWFPi.d.mts.map +1 -0
- package/dist/clis/args/vetra-ports.test.d.mts +2 -1
- package/dist/clis/args/vetra-ports.test.mjs +7366 -5728
- package/dist/clis/args/vetra-ports.test.mjs.map +1 -1
- package/dist/clis/args/vetra.d.mts +3 -2
- package/dist/clis/args/vetra.mjs +1 -1
- package/dist/clis/build-config-HbYUSZS1.mjs +252 -0
- package/dist/clis/build-config-HbYUSZS1.mjs.map +1 -0
- package/dist/clis/build-config.d.mts +52 -10616
- package/dist/clis/build-config.d.mts.map +1 -1
- package/dist/clis/build-config.mjs +2 -88
- package/dist/clis/build-pieces.d.mts +160 -0
- package/dist/clis/build-pieces.d.mts.map +1 -0
- package/dist/clis/build-pieces.mjs +549 -0
- package/dist/clis/build-pieces.mjs.map +1 -0
- package/dist/clis/command-names.d.mts +2 -2
- package/dist/clis/command-names.d.mts.map +1 -1
- package/dist/clis/command-names.mjs +1 -0
- package/dist/clis/command-names.mjs.map +1 -1
- package/dist/clis/constants.d.mts +3 -462
- package/dist/clis/constants.mjs +43 -12
- package/dist/clis/constants.mjs.map +1 -1
- package/dist/clis/feature-flags.d.mts +17 -0
- package/dist/clis/feature-flags.d.mts.map +1 -0
- package/dist/clis/feature-flags.mjs +21 -0
- package/dist/clis/feature-flags.mjs.map +1 -0
- package/dist/clis/index-6CZwrmQi.d.mts +11154 -0
- package/dist/clis/index-6CZwrmQi.d.mts.map +1 -0
- package/dist/clis/index.d.mts +1448 -1225
- package/dist/clis/index.d.mts.map +1 -1
- package/dist/clis/index.mjs +665 -352
- package/dist/clis/index.mjs.map +1 -1
- package/dist/clis/project-env.d.mts +4 -4
- package/dist/clis/project-env.d.mts.map +1 -1
- package/dist/clis/project-env.mjs.map +1 -1
- package/dist/clis/project-ports.d.mts +5 -5
- package/dist/clis/project-ports.d.mts.map +1 -1
- package/dist/clis/project-ports.mjs +1 -1
- package/dist/clis/project-ports.mjs.map +1 -1
- package/dist/clis/services/telemetry.d.mts +7 -7
- package/dist/clis/services/telemetry.d.mts.map +1 -1
- package/dist/clis/services/telemetry.mjs.map +1 -1
- package/dist/clis/types-DvsXtkR2.d.mts +582 -0
- package/dist/clis/types-DvsXtkR2.d.mts.map +1 -0
- package/dist/clis/utils.d.mts +4 -4
- package/dist/clis/utils.d.mts.map +1 -1
- package/dist/clis/utils.mjs.map +1 -1
- package/dist/{config-loader-B845Hidf.js → config-loader-DBJolZd0.js} +43 -9
- package/dist/config-loader-DBJolZd0.js.map +1 -0
- package/dist/connect/config-loader.d.ts +21 -8
- package/dist/connect/config-loader.d.ts.map +1 -1
- package/dist/connect/config-loader.js +2 -2
- package/dist/connect/index.d.ts +203 -57
- package/dist/connect/index.d.ts.map +1 -1
- package/dist/connect/index.js +318 -31
- package/dist/connect/index.js.map +1 -1
- package/dist/connect/json-adapter.d.ts +3 -4
- package/dist/connect/json-adapter.d.ts.map +1 -1
- package/dist/connect/json-adapter.js.map +1 -1
- package/dist/constants-DVJon33y.d.ts +9 -0
- package/dist/constants-DVJon33y.d.ts.map +1 -0
- package/dist/constants.d.ts +3 -2
- package/dist/constants.js +14 -5
- package/dist/constants.js.map +1 -1
- package/dist/document-drive/index.d.ts +131 -105
- package/dist/document-drive/index.d.ts.map +1 -1
- package/dist/document-drive/index.js +116 -54
- package/dist/document-drive/index.js.map +1 -1
- package/dist/document-model/errors.d.ts +3 -0
- package/dist/document-model/errors.js +152 -0
- package/dist/document-model/errors.js.map +1 -0
- package/dist/document-model/index.d.ts +5 -4
- package/dist/document-model/index.js +296 -390
- package/dist/document-model/index.js.map +1 -1
- package/dist/document-model/mock.d.ts +2 -3
- package/dist/document-model/mock.d.ts.map +1 -1
- package/dist/document-model/mock.js +2 -1
- package/dist/document-model/mock.js.map +1 -1
- package/dist/document-model/utils.d.ts +3 -2
- package/dist/document-model/utils.js +1 -1
- package/dist/document-model/version.d.ts +3 -0
- package/dist/document-model/version.js +8 -0
- package/dist/document-model/version.js.map +1 -0
- package/dist/index-bx0vYtFw.d.ts +36 -0
- package/dist/index-bx0vYtFw.d.ts.map +1 -0
- package/dist/index.d.ts +7 -6
- package/dist/index.js.map +1 -1
- package/dist/processors/index.d.ts +3 -2
- package/dist/processors/index.js +63 -4
- package/dist/processors/index.js.map +1 -1
- package/dist/purge-v06m_oGz.js +381 -0
- package/dist/purge-v06m_oGz.js.map +1 -0
- package/dist/registry/index.d.ts +15 -15
- package/dist/registry/index.d.ts.map +1 -1
- package/dist/registry/index.js +24 -6
- package/dist/registry/index.js.map +1 -1
- package/dist/registry/manifest-slim.d.ts +4 -3
- package/dist/registry/manifest-slim.d.ts.map +1 -1
- package/dist/registry/manifest-slim.js +21 -0
- package/dist/registry/manifest-slim.js.map +1 -1
- package/dist/registry/updates.d.ts +3 -3
- package/dist/registry/updates.d.ts.map +1 -1
- package/dist/registry/updates.js.map +1 -1
- package/dist/registry/urls.d.ts +2 -2
- package/dist/registry/urls.d.ts.map +1 -1
- package/dist/registry/urls.js.map +1 -1
- package/dist/{types-C1in4fl3.d.ts → types-Bsp8VL2y.d.ts} +2 -2
- package/dist/types-Bsp8VL2y.d.ts.map +1 -0
- package/dist/{types-YqLqb0Zb.d.ts → types-CfU91XFU.d.ts} +39 -43
- package/dist/types-CfU91XFU.d.ts.map +1 -0
- package/dist/{types-CpnWmiFY.d.ts → types-DzleLgA8.d.ts} +2038 -822
- package/dist/types-DzleLgA8.d.ts.map +1 -0
- package/dist/{utils-DP122OSS.d.ts → utils-BrKxCmKx.d.ts} +2 -2
- package/dist/utils-BrKxCmKx.d.ts.map +1 -0
- package/dist/{utils-aaTmfxFW.js → utils-CSF716ux.js} +10 -3
- package/dist/utils-CSF716ux.js.map +1 -0
- package/dist/version-BxLITo9P.d.ts +6 -0
- package/dist/version-BxLITo9P.d.ts.map +1 -0
- package/package.json +15 -6
- package/dist/clis/args/access-token--9H57y8J.d.mts +0 -18
- package/dist/clis/args/access-token--9H57y8J.d.mts.map +0 -1
- package/dist/clis/args/common-CcYbXrBx.mjs.map +0 -1
- package/dist/clis/args/common-Dsf1vpHV.d.mts +0 -183
- package/dist/clis/args/common-Dsf1vpHV.d.mts.map +0 -1
- package/dist/clis/args/connect-BVVvCmL9.mjs.map +0 -1
- package/dist/clis/args/connect-DetTnI8g.d.mts +0 -443
- package/dist/clis/args/connect-DetTnI8g.d.mts.map +0 -1
- package/dist/clis/args/generate-CA916Fvj.mjs.map +0 -1
- package/dist/clis/args/generate-DnV-bfXt.d.mts +0 -87
- package/dist/clis/args/generate-DnV-bfXt.d.mts.map +0 -1
- package/dist/clis/args/help-Bqbgbalu.mjs.map +0 -1
- package/dist/clis/args/help-CjAsudUn.d.mts +0 -193
- package/dist/clis/args/help-CjAsudUn.d.mts.map +0 -1
- package/dist/clis/args/init-CUXyfquF.d.mts +0 -55
- package/dist/clis/args/init-CUXyfquF.d.mts.map +0 -1
- package/dist/clis/args/inspect-DtZeoA5c.d.mts +0 -15
- package/dist/clis/args/inspect-DtZeoA5c.d.mts.map +0 -1
- package/dist/clis/args/install-CkP8zcHb.d.mts +0 -40
- package/dist/clis/args/install-CkP8zcHb.d.mts.map +0 -1
- package/dist/clis/args/list-BGf8s_gj.d.mts +0 -12
- package/dist/clis/args/list-BGf8s_gj.d.mts.map +0 -1
- package/dist/clis/args/login-DNsHwvqk.d.mts +0 -27
- package/dist/clis/args/login-DNsHwvqk.d.mts.map +0 -1
- package/dist/clis/args/magic-string.es-h_0HDQBQ.mjs +0 -1013
- package/dist/clis/args/magic-string.es-h_0HDQBQ.mjs.map +0 -1
- package/dist/clis/args/migrate-sixkWhxm.d.mts +0 -21
- package/dist/clis/args/migrate-sixkWhxm.d.mts.map +0 -1
- package/dist/clis/args/publish-Dqe5DUst.d.mts +0 -18
- package/dist/clis/args/publish-Dqe5DUst.d.mts.map +0 -1
- package/dist/clis/args/registry-C_RfTsKB.d.mts +0 -19
- package/dist/clis/args/registry-C_RfTsKB.d.mts.map +0 -1
- package/dist/clis/args/service-DhIkf8-O.d.mts +0 -22
- package/dist/clis/args/service-DhIkf8-O.d.mts.map +0 -1
- package/dist/clis/args/switchboard-BlPaq2at.d.mts +0 -72
- package/dist/clis/args/switchboard-BlPaq2at.d.mts.map +0 -1
- package/dist/clis/args/uninstall-BpA3YYbw.d.mts +0 -31
- package/dist/clis/args/uninstall-BpA3YYbw.d.mts.map +0 -1
- package/dist/clis/args/unpublish-CvwaIimG.d.mts +0 -24
- package/dist/clis/args/unpublish-CvwaIimG.d.mts.map +0 -1
- package/dist/clis/args/vetra-DLQ6lhLl.d.mts +0 -113
- package/dist/clis/args/vetra-DLQ6lhLl.d.mts.map +0 -1
- package/dist/clis/build-config.mjs.map +0 -1
- package/dist/clis/constants.d.mts.map +0 -1
- package/dist/config-loader-B845Hidf.js.map +0 -1
- package/dist/constants-BP_gjn8g.d.ts +0 -8
- package/dist/constants-BP_gjn8g.d.ts.map +0 -1
- package/dist/index-C_iVZe7f.d.ts +0 -7
- package/dist/index-C_iVZe7f.d.ts.map +0 -1
- package/dist/index-DyYIJtVy.d.ts +0 -836
- package/dist/index-DyYIJtVy.d.ts.map +0 -1
- package/dist/types-C1in4fl3.d.ts.map +0 -1
- package/dist/types-CpnWmiFY.d.ts.map +0 -1
- package/dist/types-YqLqb0Zb.d.ts.map +0 -1
- package/dist/utils-DP122OSS.d.ts.map +0 -1
- package/dist/utils-aaTmfxFW.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dist-CorQTQL-.mjs","names":["intToChar"],"sources":["../../../../../node_modules/.pnpm/@jridgewell+sourcemap-codec@1.6.0/node_modules/@jridgewell/sourcemap-codec/dist/sourcemap-codec.mjs","../../../../../node_modules/.pnpm/magic-string@1.4.2/node_modules/magic-string/dist/index.mjs"],"sourcesContent":["// src/vlq.ts\nvar comma = \",\".charCodeAt(0);\nvar semicolon = \";\".charCodeAt(0);\nvar chars = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";\nvar intToChar = new Uint8Array(64);\nvar charToInt = new Uint8Array(128);\nfor (let i = 0; i < chars.length; i++) {\n const c = chars.charCodeAt(i);\n intToChar[i] = c;\n charToInt[c] = i;\n}\nfunction decodeInteger(reader) {\n let value = 0;\n let shift = 0;\n let integer = 0;\n do {\n const c = reader.next();\n integer = charToInt[c];\n value |= (integer & 31) << shift;\n shift += 5;\n } while (integer & 32);\n return value;\n}\nfunction decodeSign(num) {\n return num & 1 ? -2147483648 | -(num >>> 1) : num >>> 1;\n}\nfunction encodeInteger(builder, num) {\n do {\n let clamped = num & 31;\n num >>>= 5;\n if (num > 0) clamped |= 32;\n builder.write(intToChar[clamped]);\n } while (num > 0);\n}\nfunction encodeSign(num) {\n return num < 0 ? -num << 1 | 1 : num << 1;\n}\nfunction hasMoreVlq(reader, max) {\n if (reader.pos >= max) return false;\n return reader.peek() !== comma;\n}\n\n// src/strings.ts\nvar bufLength = 1024 * 16;\nvar td = typeof TextDecoder !== \"undefined\" ? /* @__PURE__ */ new TextDecoder() : typeof Buffer !== \"undefined\" ? {\n decode(buf) {\n const out = Buffer.from(buf.buffer, buf.byteOffset, buf.byteLength);\n return out.toString();\n }\n} : {\n decode(buf) {\n let out = \"\";\n for (let i = 0; i < buf.length; i++) {\n out += String.fromCharCode(buf[i]);\n }\n return out;\n }\n};\nvar StringWriter = class {\n constructor() {\n this.pos = 0;\n this.out = \"\";\n this.buffer = new Uint8Array(bufLength);\n }\n write(v) {\n const { buffer } = this;\n buffer[this.pos++] = v;\n if (this.pos === bufLength) {\n this.out += td.decode(buffer);\n this.pos = 0;\n }\n }\n flush() {\n const { buffer, out, pos } = this;\n return pos > 0 ? out + td.decode(buffer.subarray(0, pos)) : out;\n }\n};\nvar StringReader = class {\n constructor(buffer) {\n this.pos = 0;\n this.buffer = buffer;\n }\n next() {\n return this.buffer.charCodeAt(this.pos++);\n }\n peek() {\n return this.buffer.charCodeAt(this.pos);\n }\n indexOf(char) {\n const { buffer, pos } = this;\n const idx = buffer.indexOf(char, pos);\n return idx === -1 ? buffer.length : idx;\n }\n};\n\n// src/scopes.ts\nvar EMPTY = [];\nfunction decodeOriginalScopes(input) {\n const { length } = input;\n const reader = new StringReader(input);\n const scopes = [];\n const stack = [];\n let line = 0;\n for (; reader.pos < length; reader.pos++) {\n line += decodeSign(decodeInteger(reader));\n const column = decodeSign(decodeInteger(reader));\n if (!hasMoreVlq(reader, length)) {\n const last = stack.pop();\n last[2] = line;\n last[3] = column;\n continue;\n }\n const kind = decodeSign(decodeInteger(reader));\n const fields = decodeSign(decodeInteger(reader));\n const hasName = fields & 1;\n const scope = hasName ? [line, column, 0, 0, kind, decodeSign(decodeInteger(reader))] : [line, column, 0, 0, kind];\n let vars = EMPTY;\n if (hasMoreVlq(reader, length)) {\n vars = [];\n do {\n const varsIndex = decodeSign(decodeInteger(reader));\n vars.push(varsIndex);\n } while (hasMoreVlq(reader, length));\n }\n scope.vars = vars;\n scopes.push(scope);\n stack.push(scope);\n }\n return scopes;\n}\nfunction encodeOriginalScopes(scopes) {\n const writer = new StringWriter();\n for (let i = 0; i < scopes.length; ) {\n i = _encodeOriginalScopes(scopes, i, writer, [0]);\n }\n return writer.flush();\n}\nfunction _encodeOriginalScopes(scopes, index, writer, state) {\n const scope = scopes[index];\n const { 0: startLine, 1: startColumn, 2: endLine, 3: endColumn, 4: kind, vars } = scope;\n if (index > 0) writer.write(comma);\n encodeInteger(writer, encodeSign(startLine - state[0]));\n state[0] = startLine;\n encodeInteger(writer, encodeSign(startColumn));\n encodeInteger(writer, encodeSign(kind));\n const fields = scope.length === 6 ? 1 : 0;\n encodeInteger(writer, encodeSign(fields));\n if (scope.length === 6) encodeInteger(writer, encodeSign(scope[5]));\n for (const v of vars) {\n encodeInteger(writer, encodeSign(v));\n }\n for (index++; index < scopes.length; ) {\n const next = scopes[index];\n const { 0: l, 1: c } = next;\n if (l > endLine || l === endLine && c >= endColumn) {\n break;\n }\n index = _encodeOriginalScopes(scopes, index, writer, state);\n }\n writer.write(comma);\n encodeInteger(writer, encodeSign(endLine - state[0]));\n state[0] = endLine;\n encodeInteger(writer, encodeSign(endColumn));\n return index;\n}\nfunction decodeGeneratedRanges(input) {\n const { length } = input;\n const reader = new StringReader(input);\n const ranges = [];\n const stack = [];\n let genLine = 0;\n let definitionSourcesIndex = 0;\n let definitionScopeIndex = 0;\n let callsiteSourcesIndex = 0;\n let callsiteLine = 0;\n let callsiteColumn = 0;\n let bindingLine = 0;\n let bindingColumn = 0;\n do {\n const semi = reader.indexOf(\";\");\n let genColumn = 0;\n for (; reader.pos < semi; reader.pos++) {\n genColumn += decodeSign(decodeInteger(reader));\n if (!hasMoreVlq(reader, semi)) {\n const last = stack.pop();\n last[2] = genLine;\n last[3] = genColumn;\n continue;\n }\n const fields = decodeSign(decodeInteger(reader));\n const hasDefinition = fields & 1;\n const hasCallsite = fields & 2;\n const hasScope = fields & 4;\n let callsite = null;\n let bindings = EMPTY;\n let range;\n if (hasDefinition) {\n const defSourcesIndex = definitionSourcesIndex + decodeSign(decodeInteger(reader));\n definitionScopeIndex = decodeSign(decodeInteger(reader)) + (definitionSourcesIndex === defSourcesIndex ? definitionScopeIndex : 0);\n definitionSourcesIndex = defSourcesIndex;\n range = [genLine, genColumn, 0, 0, defSourcesIndex, definitionScopeIndex];\n } else {\n range = [genLine, genColumn, 0, 0];\n }\n range.isScope = !!hasScope;\n if (hasCallsite) {\n const prevCsi = callsiteSourcesIndex;\n const prevLine = callsiteLine;\n callsiteSourcesIndex += decodeSign(decodeInteger(reader));\n const sameSource = prevCsi === callsiteSourcesIndex;\n callsiteLine = (sameSource ? callsiteLine : 0) + decodeSign(decodeInteger(reader));\n callsiteColumn = (sameSource && prevLine === callsiteLine ? callsiteColumn : 0) + decodeSign(decodeInteger(reader));\n callsite = [callsiteSourcesIndex, callsiteLine, callsiteColumn];\n }\n range.callsite = callsite;\n if (hasMoreVlq(reader, semi)) {\n bindings = [];\n do {\n bindingLine = genLine;\n bindingColumn = genColumn;\n const expressionsCount = decodeSign(decodeInteger(reader));\n let expressionRanges;\n if (expressionsCount < -1) {\n expressionRanges = [[decodeSign(decodeInteger(reader))]];\n for (let i = -1; i > expressionsCount; i--) {\n const prevBl = bindingLine;\n bindingLine += decodeSign(decodeInteger(reader));\n bindingColumn = (bindingLine === prevBl ? bindingColumn : 0) + decodeSign(decodeInteger(reader));\n const expression = decodeSign(decodeInteger(reader));\n expressionRanges.push([expression, bindingLine, bindingColumn]);\n }\n } else {\n expressionRanges = [[expressionsCount]];\n }\n bindings.push(expressionRanges);\n } while (hasMoreVlq(reader, semi));\n }\n range.bindings = bindings;\n ranges.push(range);\n stack.push(range);\n }\n genLine++;\n reader.pos = semi + 1;\n } while (reader.pos < length);\n return ranges;\n}\nfunction encodeGeneratedRanges(ranges) {\n if (ranges.length === 0) return \"\";\n const writer = new StringWriter();\n for (let i = 0; i < ranges.length; ) {\n i = _encodeGeneratedRanges(ranges, i, writer, [0, 0, 0, 0, 0, 0, 0]);\n }\n return writer.flush();\n}\nfunction _encodeGeneratedRanges(ranges, index, writer, state) {\n const range = ranges[index];\n const {\n 0: startLine,\n 1: startColumn,\n 2: endLine,\n 3: endColumn,\n isScope,\n callsite,\n bindings\n } = range;\n if (state[0] < startLine) {\n catchupLine(writer, state[0], startLine);\n state[0] = startLine;\n state[1] = 0;\n } else if (index > 0) {\n writer.write(comma);\n }\n encodeInteger(writer, encodeSign(range[1] - state[1]));\n state[1] = range[1];\n const fields = (range.length === 6 ? 1 : 0) | (callsite ? 2 : 0) | (isScope ? 4 : 0);\n encodeInteger(writer, encodeSign(fields));\n if (range.length === 6) {\n const { 4: sourcesIndex, 5: scopesIndex } = range;\n if (sourcesIndex !== state[2]) {\n state[3] = 0;\n }\n encodeInteger(writer, encodeSign(sourcesIndex - state[2]));\n state[2] = sourcesIndex;\n encodeInteger(writer, encodeSign(scopesIndex - state[3]));\n state[3] = scopesIndex;\n }\n if (callsite) {\n const { 0: sourcesIndex, 1: callLine, 2: callColumn } = range.callsite;\n if (sourcesIndex !== state[4]) {\n state[5] = 0;\n state[6] = 0;\n } else if (callLine !== state[5]) {\n state[6] = 0;\n }\n encodeInteger(writer, encodeSign(sourcesIndex - state[4]));\n state[4] = sourcesIndex;\n encodeInteger(writer, encodeSign(callLine - state[5]));\n state[5] = callLine;\n encodeInteger(writer, encodeSign(callColumn - state[6]));\n state[6] = callColumn;\n }\n if (bindings) {\n for (const binding of bindings) {\n if (binding.length > 1) encodeInteger(writer, encodeSign(-binding.length));\n const expression = binding[0][0];\n encodeInteger(writer, encodeSign(expression));\n let bindingStartLine = startLine;\n let bindingStartColumn = startColumn;\n for (let i = 1; i < binding.length; i++) {\n const expRange = binding[i];\n encodeInteger(writer, encodeSign(expRange[1] - bindingStartLine));\n bindingStartLine = expRange[1];\n encodeInteger(writer, encodeSign(expRange[2] - bindingStartColumn));\n bindingStartColumn = expRange[2];\n encodeInteger(writer, encodeSign(expRange[0]));\n }\n }\n }\n for (index++; index < ranges.length; ) {\n const next = ranges[index];\n const { 0: l, 1: c } = next;\n if (l > endLine || l === endLine && c >= endColumn) {\n break;\n }\n index = _encodeGeneratedRanges(ranges, index, writer, state);\n }\n if (state[0] < endLine) {\n catchupLine(writer, state[0], endLine);\n state[0] = endLine;\n state[1] = 0;\n } else {\n writer.write(comma);\n }\n encodeInteger(writer, encodeSign(endColumn - state[1]));\n state[1] = endColumn;\n return index;\n}\nfunction catchupLine(writer, lastLine, line) {\n do {\n writer.write(semicolon);\n } while (++lastLine < line);\n}\n\n// src/range-mappings.ts\nfunction decodeRangeMappings(input) {\n const { length } = input;\n const reader = new StringReader(input);\n const rangeMappings = [];\n do {\n const semi = reader.indexOf(\";\");\n const indices = [];\n let index = 0;\n while (reader.pos < semi) {\n index += decodeInteger(reader);\n indices.push(index);\n }\n rangeMappings.push(indices);\n reader.pos = semi + 1;\n } while (reader.pos <= length);\n return rangeMappings;\n}\nfunction encodeRangeMappings(decoded) {\n if (decoded.length === 0) return \"\";\n const writer = new StringWriter();\n for (let i = 0; i < decoded.length; i++) {\n const indices = decoded[i];\n if (i > 0) writer.write(semicolon);\n let index = 0;\n for (let j = 0; j < indices.length; j++) {\n const offset = indices[j];\n encodeInteger(writer, offset - index);\n index = offset;\n }\n }\n return writer.flush();\n}\n\n// src/sourcemap-codec.ts\nfunction decode(mappings) {\n const { length } = mappings;\n const reader = new StringReader(mappings);\n const decoded = [];\n let genColumn = 0;\n let sourcesIndex = 0;\n let sourceLine = 0;\n let sourceColumn = 0;\n let namesIndex = 0;\n do {\n const semi = reader.indexOf(\";\");\n const line = [];\n let sorted = true;\n let lastCol = 0;\n genColumn = 0;\n while (reader.pos < semi) {\n let seg;\n genColumn += decodeSign(decodeInteger(reader));\n if (genColumn < lastCol) sorted = false;\n lastCol = genColumn;\n if (hasMoreVlq(reader, semi)) {\n sourcesIndex += decodeSign(decodeInteger(reader));\n sourceLine += decodeSign(decodeInteger(reader));\n sourceColumn += decodeSign(decodeInteger(reader));\n if (hasMoreVlq(reader, semi)) {\n namesIndex += decodeSign(decodeInteger(reader));\n seg = [genColumn, sourcesIndex, sourceLine, sourceColumn, namesIndex];\n } else {\n seg = [genColumn, sourcesIndex, sourceLine, sourceColumn];\n }\n } else {\n seg = [genColumn];\n }\n line.push(seg);\n reader.pos++;\n }\n if (!sorted) sort(line);\n decoded.push(line);\n reader.pos = semi + 1;\n } while (reader.pos <= length);\n return decoded;\n}\nfunction sort(line) {\n line.sort(sortComparator);\n}\nfunction sortComparator(a, b) {\n return a[0] - b[0];\n}\nfunction encode(decoded) {\n const writer = new StringWriter();\n let sourcesIndex = 0;\n let sourceLine = 0;\n let sourceColumn = 0;\n let namesIndex = 0;\n for (let i = 0; i < decoded.length; i++) {\n const line = decoded[i];\n if (i > 0) writer.write(semicolon);\n if (line.length === 0) continue;\n let genColumn = 0;\n for (let j = 0; j < line.length; j++) {\n const segment = line[j];\n if (j > 0) writer.write(comma);\n encodeInteger(writer, encodeSign(segment[0] - genColumn));\n genColumn = segment[0];\n if (segment.length === 1) continue;\n encodeInteger(writer, encodeSign(segment[1] - sourcesIndex));\n encodeInteger(writer, encodeSign(segment[2] - sourceLine));\n encodeInteger(writer, encodeSign(segment[3] - sourceColumn));\n sourcesIndex = segment[1];\n sourceLine = segment[2];\n sourceColumn = segment[3];\n if (segment.length === 4) continue;\n encodeInteger(writer, encodeSign(segment[4] - namesIndex));\n namesIndex = segment[4];\n }\n }\n return writer.flush();\n}\nexport {\n decode,\n decodeGeneratedRanges,\n decodeOriginalScopes,\n decodeRangeMappings,\n encode,\n encodeGeneratedRanges,\n encodeOriginalScopes,\n encodeRangeMappings\n};\n//# sourceMappingURL=sourcemap-codec.mjs.map\n","import { encode, encodeRangeMappings } from \"@jridgewell/sourcemap-codec\";\n//#region src/BitSet.ts\nvar BitSet = class BitSet {\n\tconstructor(arg) {\n\t\tthis.bits = arg instanceof BitSet ? arg.bits.slice() : [];\n\t}\n\tadd(n) {\n\t\tthis.bits[n >> 5] |= 1 << (n & 31);\n\t}\n\thas(n) {\n\t\treturn !!(this.bits[n >> 5] & 1 << (n & 31));\n\t}\n};\n//#endregion\n//#region src/Chunk.ts\nvar Chunk = class Chunk {\n\tconstructor(start, end, content) {\n\t\tthis.start = start;\n\t\tthis.end = end;\n\t\tthis.original = content;\n\t\tthis.intro = \"\";\n\t\tthis.outro = \"\";\n\t\tthis.content = content;\n\t\tthis.storeName = false;\n\t\tthis.edited = false;\n\t\tthis.previous = null;\n\t\tthis.next = null;\n\t}\n\tappendLeft(content) {\n\t\tthis.outro += content;\n\t}\n\tappendRight(content) {\n\t\tthis.intro = this.intro + content;\n\t}\n\tclone() {\n\t\tconst chunk = new Chunk(this.start, this.end, this.original);\n\t\tchunk.intro = this.intro;\n\t\tchunk.outro = this.outro;\n\t\tchunk.content = this.content;\n\t\tchunk.storeName = this.storeName;\n\t\tchunk.edited = this.edited;\n\t\treturn chunk;\n\t}\n\tcontains(index) {\n\t\treturn this.start < index && index < this.end;\n\t}\n\teachNext(fn) {\n\t\tfn(this);\n\t\tlet chunk = this.next;\n\t\twhile (chunk) {\n\t\t\tfn(chunk);\n\t\t\tchunk = chunk.next;\n\t\t}\n\t}\n\teachPrevious(fn) {\n\t\tfn(this);\n\t\tlet chunk = this.previous;\n\t\twhile (chunk) {\n\t\t\tfn(chunk);\n\t\t\tchunk = chunk.previous;\n\t\t}\n\t}\n\tedit(content, storeName, contentOnly) {\n\t\tthis.content = content;\n\t\tif (!contentOnly) {\n\t\t\tthis.intro = \"\";\n\t\t\tthis.outro = \"\";\n\t\t}\n\t\tthis.storeName = storeName;\n\t\tthis.edited = true;\n\t\treturn this;\n\t}\n\tprependLeft(content) {\n\t\tthis.outro = content + this.outro;\n\t}\n\tprependRight(content) {\n\t\tthis.intro = content + this.intro;\n\t}\n\treset() {\n\t\tthis.intro = \"\";\n\t\tthis.outro = \"\";\n\t\tif (this.edited) {\n\t\t\tthis.content = this.original;\n\t\t\tthis.storeName = false;\n\t\t\tthis.edited = false;\n\t\t}\n\t}\n\tsplit(index) {\n\t\tconst sliceIndex = index - this.start;\n\t\tconst originalBefore = this.original.slice(0, sliceIndex);\n\t\tconst originalAfter = this.original.slice(sliceIndex);\n\t\tthis.original = originalBefore;\n\t\tconst newChunk = new Chunk(index, this.end, originalAfter);\n\t\tnewChunk.outro = this.outro;\n\t\tthis.outro = \"\";\n\t\tthis.end = index;\n\t\tif (this.edited) {\n\t\t\tnewChunk.edit(\"\", false, true);\n\t\t\tthis.content = \"\";\n\t\t} else this.content = originalBefore;\n\t\tnewChunk.next = this.next;\n\t\tif (newChunk.next) newChunk.next.previous = newChunk;\n\t\tnewChunk.previous = this;\n\t\tthis.next = newChunk;\n\t\treturn newChunk;\n\t}\n\ttoString() {\n\t\treturn this.intro + this.content + this.outro;\n\t}\n\ttrimEnd(rx) {\n\t\tthis.outro = this.outro.replace(rx, \"\");\n\t\tif (this.outro.length) return true;\n\t\tconst trimmed = this.content.replace(rx, \"\");\n\t\tif (trimmed.length) {\n\t\t\tif (trimmed !== this.content) {\n\t\t\t\tif (this.edited) this.edit(trimmed, this.storeName, true);\n\t\t\t\telse this.split(this.start + trimmed.length).edit(\"\", void 0, true);\n\t\t\t}\n\t\t\treturn true;\n\t\t} else {\n\t\t\tthis.edit(\"\", void 0, true);\n\t\t\tthis.intro = this.intro.replace(rx, \"\");\n\t\t\tif (this.intro.length) return true;\n\t\t}\n\t}\n\ttrimStart(rx) {\n\t\tthis.intro = this.intro.replace(rx, \"\");\n\t\tif (this.intro.length) return true;\n\t\tconst trimmed = this.content.replace(rx, \"\");\n\t\tif (trimmed.length) {\n\t\t\tif (trimmed !== this.content) {\n\t\t\t\tif (this.edited) this.edit(trimmed, this.storeName, true);\n\t\t\t\telse {\n\t\t\t\t\tthis.split(this.end - trimmed.length);\n\t\t\t\t\tthis.edit(\"\", void 0, true);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t} else {\n\t\t\tthis.edit(\"\", void 0, true);\n\t\t\tthis.outro = this.outro.replace(rx, \"\");\n\t\t\tif (this.outro.length) return true;\n\t\t}\n\t}\n};\n//#endregion\n//#region src/MagicStringError.ts\n/**\n* The single error type thrown by MagicString.\n*\n* Every message is prefixed with `[MagicString]` so its source is obvious at a\n* glance, and is kept short and consistent in tone.\n*/\nvar MagicStringError = class extends Error {\n\tname = \"MagicStringError\";\n\tconstructor(message, options) {\n\t\tsuper(`[MagicString] ${message}`, options);\n\t}\n};\n//#endregion\n//#region src/SourceMap.ts\nfunction getBtoa() {\n\t/* v8 ignore next -- environment fallback, unreachable when `btoa` is present */\n\tif (typeof globalThis !== \"undefined\" && typeof globalThis.btoa === \"function\") return (str) => globalThis.btoa(unescape(encodeURIComponent(str)));\n\tconst buffer = globalThis[\"Buffer\"];\n\tif (buffer) return (str) => buffer.from(str, \"utf-8\").toString(\"base64\");\n\treturn () => {\n\t\tthrow new MagicStringError(\"unsupported environment: `btoa` or `Buffer` is required\");\n\t};\n\t/* v8 ignore stop */\n}\nconst btoa = /* #__PURE__ */ getBtoa();\nvar SourceMap = class {\n\tconstructor(properties) {\n\t\tthis.version = 3;\n\t\tthis.file = properties.file;\n\t\tthis.sources = properties.sources;\n\t\tthis.sourcesContent = properties.sourcesContent;\n\t\tthis.names = properties.names;\n\t\tthis.mappings = typeof properties.mappings === \"string\" ? properties.mappings : encode(properties.mappings);\n\t\tif (typeof properties.x_google_ignoreList !== \"undefined\") this.x_google_ignoreList = properties.x_google_ignoreList;\n\t\tif (typeof properties.debugId !== \"undefined\") this.debugId = properties.debugId;\n\t\tif (typeof properties.rangeMappings !== \"undefined\") {\n\t\t\tlet shouldOutputRangeMapping = false;\n\t\t\tfor (const line of properties.rangeMappings) if (line.length !== 0) {\n\t\t\t\tshouldOutputRangeMapping = true;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (shouldOutputRangeMapping) this.rangeMappings = encodeRangeMappings(properties.rangeMappings);\n\t\t}\n\t}\n\t/**\n\t* Returns the equivalent of `JSON.stringify(map)`\n\t*/\n\ttoString() {\n\t\treturn JSON.stringify(this);\n\t}\n\t/**\n\t* Returns a DataURI containing the sourcemap. Useful for doing this sort of thing:\n\t* `generateMap(options?: SourceMapOptions): SourceMap;`\n\t*/\n\ttoUrl() {\n\t\treturn `data:application/json;charset=utf-8;base64,${btoa(this.toString())}`;\n\t}\n};\n//#endregion\n//#region src/utils/getLocator.ts\nfunction getLocator(source) {\n\tconst lineOffsets = [0];\n\tfor (let i = source.indexOf(\"\\n\"); i !== -1; i = source.indexOf(\"\\n\", i + 1)) lineOffsets.push(i + 1);\n\treturn function locate(index) {\n\t\tlet i = 0;\n\t\tlet j = lineOffsets.length;\n\t\twhile (i < j) {\n\t\t\tconst m = i + j >> 1;\n\t\t\tif (index < lineOffsets[m]) j = m;\n\t\t\telse i = m + 1;\n\t\t}\n\t\tconst line = i - 1;\n\t\treturn {\n\t\t\tline,\n\t\t\tcolumn: index - lineOffsets[line]\n\t\t};\n\t};\n}\n//#endregion\n//#region src/utils/getRelativePath.ts\nfunction getRelativePath(from, to) {\n\tconst fromParts = from.split(/[/\\\\]/);\n\tconst toParts = to.split(/[/\\\\]/);\n\tfromParts.pop();\n\twhile (fromParts[0] === toParts[0]) {\n\t\tfromParts.shift();\n\t\ttoParts.shift();\n\t}\n\tif (fromParts.length) {\n\t\tlet i = fromParts.length;\n\t\twhile (i--) fromParts[i] = \"..\";\n\t}\n\treturn fromParts.concat(toParts).join(\"/\");\n}\n//#endregion\n//#region src/utils/guessIndent.ts\nfunction guessIndent(code) {\n\tconst lines = code.split(\"\\n\");\n\tconst tabbed = lines.filter((line) => /^\\t+/.test(line));\n\tconst spaced = lines.filter((line) => /^ {2,}/.test(line));\n\tif (tabbed.length === 0 && spaced.length === 0) return null;\n\tif (tabbed.length >= spaced.length) return \"\t\";\n\tconst min = spaced.reduce((previous, current) => {\n\t\tconst numSpaces = /^ +/.exec(current)[0].length;\n\t\treturn Math.min(numSpaces, previous);\n\t}, Infinity);\n\treturn \" \".repeat(min);\n}\n//#endregion\n//#region src/utils/isObject.ts\nconst toString = Object.prototype.toString;\nfunction isObject(thing) {\n\treturn toString.call(thing) === \"[object Object]\";\n}\nconst BASE64_CHARS = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";\nconst intToChar = /* #__PURE__ */ (() => {\n\tconst chars = /* @__PURE__ */ new Uint8Array(64);\n\tfor (let i = 0; i < 64; i++) chars[i] = BASE64_CHARS.charCodeAt(i);\n\treturn chars;\n})();\nconst COMMA = 44;\nconst SEMICOLON = 59;\nconst BUFFER_SIZE = 16384;\nconst FLUSH_THRESHOLD = 16348;\nconst scratch = /* #__PURE__ */ new Uint8Array(BUFFER_SIZE);\nfunction writeVlq(pos, num) {\n\tnum = num < 0 ? -num << 1 | 1 : num << 1;\n\tdo {\n\t\tlet clamped = num & 31;\n\t\tnum >>>= 5;\n\t\tif (num > 0) clamped |= 32;\n\t\tscratch[pos++] = intToChar[clamped];\n\t} while (num > 0);\n\treturn pos;\n}\nconst decoder = /* #__PURE__ */ new TextDecoder();\nvar MappingsEncoder = class {\n\tconstructor() {\n\t\tthis.out = \"\";\n\t\tthis.pos = 0;\n\t\tthis.lines = [];\n\t\tthis.buffered = 0;\n\t\tthis.needsComma = false;\n\t\tthis.prevGenColumn = 0;\n\t\tthis.prevSourceIndex = 0;\n\t\tthis.prevSourceLine = 0;\n\t\tthis.prevSourceColumn = 0;\n\t\tthis.prevNameIndex = 0;\n\t}\n\tendLine(segments) {\n\t\tthis.lines.push(segments);\n\t\tthis.buffered += segments.length + 1;\n\t\tif (this.buffered >= 4096) this.drain(null);\n\t}\n\tsegments(segments) {\n\t\tthis.drain(segments);\n\t}\n\tfinish(segments) {\n\t\tthis.drain(segments);\n\t\tthis.flush();\n\t\treturn this.out;\n\t}\n\tdrain(trailing) {\n\t\tconst lines = this.lines;\n\t\tconst lineCount = lines.length;\n\t\tfor (let l = 0; l <= lineCount; l++) {\n\t\t\tconst line = l < lineCount ? lines[l] : trailing;\n\t\t\tif (line === null) break;\n\t\t\tfor (let i = 0; i < line.length; i++) {\n\t\t\t\tif (this.pos > FLUSH_THRESHOLD) this.flush();\n\t\t\t\tconst segment = line[i];\n\t\t\t\tif (this.needsComma) scratch[this.pos++] = COMMA;\n\t\t\t\tthis.needsComma = true;\n\t\t\t\tthis.pos = writeVlq(this.pos, segment[0] - this.prevGenColumn);\n\t\t\t\tthis.prevGenColumn = segment[0];\n\t\t\t\tthis.pos = writeVlq(this.pos, segment[1] - this.prevSourceIndex);\n\t\t\t\tthis.prevSourceIndex = segment[1];\n\t\t\t\tthis.pos = writeVlq(this.pos, segment[2] - this.prevSourceLine);\n\t\t\t\tthis.prevSourceLine = segment[2];\n\t\t\t\tthis.pos = writeVlq(this.pos, segment[3] - this.prevSourceColumn);\n\t\t\t\tthis.prevSourceColumn = segment[3];\n\t\t\t\tif (segment.length === 5) {\n\t\t\t\t\tthis.pos = writeVlq(this.pos, segment[4] - this.prevNameIndex);\n\t\t\t\t\tthis.prevNameIndex = segment[4];\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (l < lineCount) {\n\t\t\t\tif (this.pos > FLUSH_THRESHOLD) this.flush();\n\t\t\t\tscratch[this.pos++] = SEMICOLON;\n\t\t\t\tthis.needsComma = false;\n\t\t\t\tthis.prevGenColumn = 0;\n\t\t\t}\n\t\t}\n\t\tlines.length = 0;\n\t\tthis.buffered = 0;\n\t\tthis.flush();\n\t}\n\tflush() {\n\t\tthis.out += decoder.decode(scratch.subarray(0, this.pos));\n\t\tthis.pos = 0;\n\t}\n};\n//#endregion\n//#region src/utils/Mappings.ts\nconst NEWLINE_CHAR$1 = 10;\nfunction isWordCode(code) {\n\treturn code >= 97 && code <= 122 || code >= 65 && code <= 90 || code >= 48 && code <= 57 || code === 95;\n}\nvar Mappings = class {\n\tconstructor(hires, encoder = null) {\n\t\tthis.hires = hires;\n\t\tthis.generatedCodeLine = 0;\n\t\tthis.generatedCodeColumn = 0;\n\t\tthis.raw = [];\n\t\tthis.rawSegments = this.raw[this.generatedCodeLine] = [];\n\t\tthis.rawRangeMappings = [];\n\t\tthis.rawRangeMappingsIndices = this.rawRangeMappings[this.generatedCodeLine] = [];\n\t\tthis.encoder = encoder;\n\t}\n\tnextLine() {\n\t\tif (this.encoder === null) {\n\t\t\tthis.generatedCodeLine += 1;\n\t\t\tthis.raw[this.generatedCodeLine] = this.rawSegments = [];\n\t\t} else {\n\t\t\tthis.encoder.endLine(this.rawSegments);\n\t\t\tthis.rawSegments = [];\n\t\t\tthis.generatedCodeLine += 1;\n\t\t}\n\t\tthis.generatedCodeColumn = 0;\n\t\tthis.rawRangeMappings[this.generatedCodeLine] = this.rawRangeMappingsIndices = [];\n\t}\n\taddEdit(sourceIndex, content, loc, nameIndex) {\n\t\tif (content.length) {\n\t\t\tconst contentLengthMinusOne = content.length - 1;\n\t\t\tlet contentLineEnd = content.indexOf(\"\\n\", 0);\n\t\t\tlet previousContentLineEnd = -1;\n\t\t\twhile (contentLineEnd >= 0 && contentLengthMinusOne > contentLineEnd) {\n\t\t\t\tconst segment = [\n\t\t\t\t\tthis.generatedCodeColumn,\n\t\t\t\t\tsourceIndex,\n\t\t\t\t\tloc.line,\n\t\t\t\t\tloc.column\n\t\t\t\t];\n\t\t\t\tif (nameIndex >= 0) segment.push(nameIndex);\n\t\t\t\tthis.rawSegments.push(segment);\n\t\t\t\tthis.nextLine();\n\t\t\t\tpreviousContentLineEnd = contentLineEnd;\n\t\t\t\tcontentLineEnd = content.indexOf(\"\\n\", contentLineEnd + 1);\n\t\t\t}\n\t\t\tconst segment = [\n\t\t\t\tthis.generatedCodeColumn,\n\t\t\t\tsourceIndex,\n\t\t\t\tloc.line,\n\t\t\t\tloc.column\n\t\t\t];\n\t\t\tif (nameIndex >= 0) segment.push(nameIndex);\n\t\t\tthis.rawSegments.push(segment);\n\t\t\tthis.advance(content.slice(previousContentLineEnd + 1));\n\t\t}\n\t}\n\taddUneditedChunk(sourceIndex, chunk, original, loc, sourcemapLocations) {\n\t\tconst end = chunk.end;\n\t\tlet i = chunk.start;\n\t\tif (this.hires) {\n\t\t\tconst boundary = this.hires === \"boundary\";\n\t\t\tconst experimentalRange = this.hires === \"experimental-range\";\n\t\t\tconst encoder = experimentalRange ? null : this.encoder;\n\t\t\tlet charInHiresBoundary = false;\n\t\t\twhile (i < end) {\n\t\t\t\tif (encoder !== null && this.rawSegments.length >= 4096) {\n\t\t\t\t\tencoder.segments(this.rawSegments);\n\t\t\t\t\tthis.rawSegments.length = 0;\n\t\t\t\t}\n\t\t\t\tif (experimentalRange && i + 1 >= end) this.rawSegments.push([\n\t\t\t\t\tthis.generatedCodeColumn,\n\t\t\t\t\tsourceIndex,\n\t\t\t\t\tloc.line,\n\t\t\t\t\tloc.column\n\t\t\t\t]);\n\t\t\t\tconst code = original.charCodeAt(i);\n\t\t\t\tif (code === NEWLINE_CHAR$1) {\n\t\t\t\t\tloc.line += 1;\n\t\t\t\t\tloc.column = 0;\n\t\t\t\t\tthis.nextLine();\n\t\t\t\t\tcharInHiresBoundary = false;\n\t\t\t\t} else {\n\t\t\t\t\tif (boundary) {\n\t\t\t\t\t\tif (isWordCode(code)) {\n\t\t\t\t\t\t\tif (!charInHiresBoundary) {\n\t\t\t\t\t\t\t\tthis.rawSegments.push([\n\t\t\t\t\t\t\t\t\tthis.generatedCodeColumn,\n\t\t\t\t\t\t\t\t\tsourceIndex,\n\t\t\t\t\t\t\t\t\tloc.line,\n\t\t\t\t\t\t\t\t\tloc.column\n\t\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\t\tcharInHiresBoundary = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tthis.rawSegments.push([\n\t\t\t\t\t\t\t\tthis.generatedCodeColumn,\n\t\t\t\t\t\t\t\tsourceIndex,\n\t\t\t\t\t\t\t\tloc.line,\n\t\t\t\t\t\t\t\tloc.column\n\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\tcharInHiresBoundary = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else if (experimentalRange) {\n\t\t\t\t\t\tif (i === chunk.start) {\n\t\t\t\t\t\t\tthis.rawRangeMappingsIndices.push(this.rawSegments.length);\n\t\t\t\t\t\t\tthis.rawSegments.push([\n\t\t\t\t\t\t\t\tthis.generatedCodeColumn,\n\t\t\t\t\t\t\t\tsourceIndex,\n\t\t\t\t\t\t\t\tloc.line,\n\t\t\t\t\t\t\t\tloc.column\n\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t}\n\t\t\t\t\t} else this.rawSegments.push([\n\t\t\t\t\t\tthis.generatedCodeColumn,\n\t\t\t\t\t\tsourceIndex,\n\t\t\t\t\t\tloc.line,\n\t\t\t\t\t\tloc.column\n\t\t\t\t\t]);\n\t\t\t\t\tloc.column += 1;\n\t\t\t\t\tthis.generatedCodeColumn += 1;\n\t\t\t\t}\n\t\t\t\ti += 1;\n\t\t\t}\n\t\t} else {\n\t\t\tconst bits = sourcemapLocations.bits;\n\t\t\twhile (i < end) {\n\t\t\t\tlet newline = original.indexOf(\"\\n\", i);\n\t\t\t\tif (newline === -1 || newline > end) newline = end;\n\t\t\t\tif (newline > i) {\n\t\t\t\t\tthis.rawSegments.push([\n\t\t\t\t\t\tthis.generatedCodeColumn,\n\t\t\t\t\t\tsourceIndex,\n\t\t\t\t\t\tloc.line,\n\t\t\t\t\t\tloc.column\n\t\t\t\t\t]);\n\t\t\t\t\tfor (let w = i + 1 >> 5, last = newline - 1 >> 5; w <= last; w++) {\n\t\t\t\t\t\tlet word = bits[w];\n\t\t\t\t\t\tif (!word) continue;\n\t\t\t\t\t\tconst base = w << 5;\n\t\t\t\t\t\twhile (word) {\n\t\t\t\t\t\t\tconst lowest = word & -word;\n\t\t\t\t\t\t\tconst index = base + 31 - Math.clz32(lowest);\n\t\t\t\t\t\t\tif (index > i && index < newline) {\n\t\t\t\t\t\t\t\tconst offset = index - i;\n\t\t\t\t\t\t\t\tthis.rawSegments.push([\n\t\t\t\t\t\t\t\t\tthis.generatedCodeColumn + offset,\n\t\t\t\t\t\t\t\t\tsourceIndex,\n\t\t\t\t\t\t\t\t\tloc.line,\n\t\t\t\t\t\t\t\t\tloc.column + offset\n\t\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tword ^= lowest;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tloc.column += newline - i;\n\t\t\t\t\tthis.generatedCodeColumn += newline - i;\n\t\t\t\t}\n\t\t\t\tif (newline === end) break;\n\t\t\t\tloc.line += 1;\n\t\t\t\tloc.column = 0;\n\t\t\t\tthis.nextLine();\n\t\t\t\ti = newline + 1;\n\t\t\t}\n\t\t}\n\t}\n\tadvance(str) {\n\t\tif (!str) return;\n\t\tconst lastNewline = str.lastIndexOf(\"\\n\");\n\t\tfor (let i = str.indexOf(\"\\n\"); i !== -1; i = str.indexOf(\"\\n\", i + 1)) this.nextLine();\n\t\tthis.generatedCodeColumn += str.length - lastNewline - 1;\n\t}\n};\n//#endregion\n//#region src/MagicString.ts\nconst n = \"\\n\";\nconst NEWLINE_CHAR = \"\\n\".charCodeAt(0);\nconst CR_CHAR = \"\\r\".charCodeAt(0);\nconst warned = {\n\tinsertLeft: false,\n\tinsertRight: false,\n\tstoreName: false\n};\n/**\n* Expands the `$` substitution patterns that `String.prototype.replace` accepts\n* in a string replacement.\n* https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/replace#specifying_a_string_as_a_parameter\n*\n* `captures` holds the capture groups in order, so `captures[0]` is `$1`.\n* `namedCaptures` is `undefined` when the pattern has no named groups, and\n* `$<name>` is then literal text - which is also the case for a string search\n* value, where there are no groups of either kind.\n*/\nfunction expandReplacement(replacement, matched, position, str, captures, namedCaptures) {\n\tif (!replacement.includes(\"$\")) return replacement;\n\tlet result = \"\";\n\tlet index = 0;\n\twhile (index < replacement.length) {\n\t\tconst dollar = replacement.indexOf(\"$\", index);\n\t\tif (dollar === -1) {\n\t\t\tresult += replacement.slice(index);\n\t\t\tbreak;\n\t\t}\n\t\tresult += replacement.slice(index, dollar);\n\t\tconst char = replacement[dollar + 1];\n\t\tlet expansion = \"$\";\n\t\tlet consumed = 1;\n\t\tif (char === \"$\") consumed = 2;\n\t\telse if (char === \"&\") {\n\t\t\texpansion = matched;\n\t\t\tconsumed = 2;\n\t\t} else if (char === \"`\") {\n\t\t\texpansion = str.slice(0, position);\n\t\t\tconsumed = 2;\n\t\t} else if (char === \"'\") {\n\t\t\texpansion = str.slice(position + matched.length);\n\t\t\tconsumed = 2;\n\t\t} else if (char === \"<\" && namedCaptures !== void 0) {\n\t\t\tconst close = replacement.indexOf(\">\", dollar + 2);\n\t\t\tif (close !== -1) {\n\t\t\t\texpansion = namedCaptures[replacement.slice(dollar + 2, close)] ?? \"\";\n\t\t\t\tconsumed = close + 1 - dollar;\n\t\t\t}\n\t\t} else if (char >= \"0\" && char <= \"9\") {\n\t\t\tconst second = replacement[dollar + 2];\n\t\t\tconst double = second >= \"0\" && second <= \"9\" ? Number(char + second) : NaN;\n\t\t\tconst single = Number(char);\n\t\t\tif (double >= 1 && double <= captures.length) {\n\t\t\t\texpansion = captures[double - 1] ?? \"\";\n\t\t\t\tconsumed = 3;\n\t\t\t} else if (single >= 1 && single <= captures.length) {\n\t\t\t\texpansion = captures[single - 1] ?? \"\";\n\t\t\t\tconsumed = 2;\n\t\t\t}\n\t\t}\n\t\tresult += expansion;\n\t\tindex = dollar + consumed;\n\t}\n\treturn result;\n}\nvar MagicString = class MagicString {\n\tconstructor(string, options = {}) {\n\t\tconst chunk = new Chunk(0, string.length, string);\n\t\tObject.defineProperties(this, {\n\t\t\toriginal: {\n\t\t\t\twritable: true,\n\t\t\t\tvalue: string\n\t\t\t},\n\t\t\toutro: {\n\t\t\t\twritable: true,\n\t\t\t\tvalue: \"\"\n\t\t\t},\n\t\t\tintro: {\n\t\t\t\twritable: true,\n\t\t\t\tvalue: \"\"\n\t\t\t},\n\t\t\tfirstChunk: {\n\t\t\t\twritable: true,\n\t\t\t\tvalue: chunk\n\t\t\t},\n\t\t\tlastChunk: {\n\t\t\t\twritable: true,\n\t\t\t\tvalue: chunk\n\t\t\t},\n\t\t\tlastSearchedChunk: {\n\t\t\t\twritable: true,\n\t\t\t\tvalue: chunk\n\t\t\t},\n\t\t\tbyStart: {\n\t\t\t\twritable: true,\n\t\t\t\tvalue: /* @__PURE__ */ new Map([[0, chunk]])\n\t\t\t},\n\t\t\tbyEnd: {\n\t\t\t\twritable: true,\n\t\t\t\tvalue: /* @__PURE__ */ new Map([[string.length, chunk]])\n\t\t\t},\n\t\t\tfilename: {\n\t\t\t\twritable: true,\n\t\t\t\tvalue: options.filename\n\t\t\t},\n\t\t\tindentExclusionRanges: {\n\t\t\t\twritable: true,\n\t\t\t\tvalue: options.indentExclusionRanges\n\t\t\t},\n\t\t\tsourcemapLocations: {\n\t\t\t\twritable: true,\n\t\t\t\tvalue: new BitSet()\n\t\t\t},\n\t\t\tstoredNames: {\n\t\t\t\twritable: true,\n\t\t\t\tvalue: {}\n\t\t\t},\n\t\t\tindentStr: {\n\t\t\t\twritable: true,\n\t\t\t\tvalue: void 0\n\t\t\t},\n\t\t\tignoreList: {\n\t\t\t\twritable: true,\n\t\t\t\tvalue: options.ignoreList\n\t\t\t},\n\t\t\toffset: {\n\t\t\t\twritable: true,\n\t\t\t\tvalue: options.offset || 0\n\t\t\t},\n\t\t\thasMovedChunks: {\n\t\t\t\twritable: true,\n\t\t\t\tvalue: false\n\t\t\t}\n\t\t});\n\t}\n\t/**\n\t* Adds the specified character index (with respect to the original string) to sourcemap mappings, if `hires` is false.\n\t*/\n\taddSourcemapLocation(char) {\n\t\tthis.sourcemapLocations.add(char);\n\t}\n\t/**\n\t* Appends the specified content to the end of the string.\n\t*/\n\tappend(content) {\n\t\tif (typeof content !== \"string\") throw new MagicStringError(`content must be a string, got ${typeof content}`);\n\t\tthis.outro += content;\n\t\treturn this;\n\t}\n\t/**\n\t* Appends the specified content at the index in the original string.\n\t* If a range *ending* with index is subsequently moved, the insert will be moved with it.\n\t* See also `s.prependLeft(...)`.\n\t*/\n\tappendLeft(index, content) {\n\t\tindex = index + this.offset;\n\t\tif (typeof content !== \"string\") throw new MagicStringError(`content must be a string, got ${typeof content}`);\n\t\tthis._split(index);\n\t\tconst chunk = this.byEnd.get(index);\n\t\tif (chunk) chunk.appendLeft(content);\n\t\telse this.intro += content;\n\t\treturn this;\n\t}\n\t/**\n\t* Appends the specified content at the index in the original string.\n\t* If a range *starting* with index is subsequently moved, the insert will be moved with it.\n\t* See also `s.prependRight(...)`.\n\t*/\n\tappendRight(index, content) {\n\t\tindex = index + this.offset;\n\t\tif (typeof content !== \"string\") throw new MagicStringError(`content must be a string, got ${typeof content}`);\n\t\tthis._split(index);\n\t\tconst chunk = this.byStart.get(index);\n\t\tif (chunk) chunk.appendRight(content);\n\t\telse this.outro += content;\n\t\treturn this;\n\t}\n\t/**\n\t* Does what you'd expect.\n\t*/\n\tclone() {\n\t\tconst cloned = new MagicString(this.original, {\n\t\t\tfilename: this.filename,\n\t\t\tignoreList: this.ignoreList,\n\t\t\toffset: this.offset\n\t\t});\n\t\tlet originalChunk = this.firstChunk;\n\t\tlet clonedChunk = cloned.firstChunk = cloned.lastSearchedChunk = originalChunk.clone();\n\t\twhile (originalChunk) {\n\t\t\tcloned.byStart.set(clonedChunk.start, clonedChunk);\n\t\t\tcloned.byEnd.set(clonedChunk.end, clonedChunk);\n\t\t\tconst nextOriginalChunk = originalChunk.next;\n\t\t\tconst nextClonedChunk = nextOriginalChunk && nextOriginalChunk.clone();\n\t\t\tif (nextClonedChunk) {\n\t\t\t\tclonedChunk.next = nextClonedChunk;\n\t\t\t\tnextClonedChunk.previous = clonedChunk;\n\t\t\t\tclonedChunk = nextClonedChunk;\n\t\t\t}\n\t\t\toriginalChunk = nextOriginalChunk;\n\t\t}\n\t\tcloned.lastChunk = clonedChunk;\n\t\tif (this.indentExclusionRanges) cloned.indentExclusionRanges = this.indentExclusionRanges.slice();\n\t\tcloned.sourcemapLocations = new BitSet(this.sourcemapLocations);\n\t\tcloned.storedNames = { ...this.storedNames };\n\t\tcloned.intro = this.intro;\n\t\tcloned.outro = this.outro;\n\t\tcloned.hasMovedChunks = this.hasMovedChunks;\n\t\treturn cloned;\n\t}\n\t/**\n\t* Generates a sourcemap object with raw mappings in array form, rather than encoded as a string.\n\t* Useful if you need to manipulate the sourcemap further, but most of the time you will use `generateMap` instead.\n\t*/\n\tgenerateDecodedMap(options) {\n\t\toptions = options || {};\n\t\tconst mappings = new Mappings(options.hires);\n\t\tconst names = this._generateMappings(mappings);\n\t\treturn {\n\t\t\t...this._mapProperties(options, names),\n\t\t\tmappings: mappings.raw,\n\t\t\trangeMappings: mappings.rawRangeMappings\n\t\t};\n\t}\n\t/**\n\t* Generates a version 3 sourcemap.\n\t*/\n\tgenerateMap(options) {\n\t\toptions = options || {};\n\t\tconst encoder = new MappingsEncoder();\n\t\tconst mappings = new Mappings(options.hires, encoder);\n\t\tconst names = this._generateMappings(mappings);\n\t\treturn new SourceMap({\n\t\t\t...this._mapProperties(options, names),\n\t\t\tmappings: encoder.finish(mappings.rawSegments),\n\t\t\trangeMappings: mappings.rawRangeMappings\n\t\t});\n\t}\n\t/** @internal */\n\t_generateMappings(mappings) {\n\t\tconst sourceIndex = 0;\n\t\tconst names = Object.keys(this.storedNames);\n\t\tconst locate = getLocator(this.original);\n\t\tif (this.intro) mappings.advance(this.intro);\n\t\tthis.firstChunk.eachNext((chunk) => {\n\t\t\tconst loc = locate(chunk.start);\n\t\t\tif (chunk.intro.length) mappings.advance(chunk.intro);\n\t\t\tif (chunk.edited) mappings.addEdit(sourceIndex, chunk.content, loc, chunk.storeName ? names.indexOf(chunk.original) : -1);\n\t\t\telse mappings.addUneditedChunk(sourceIndex, chunk, this.original, loc, this.sourcemapLocations);\n\t\t\tif (chunk.outro.length) mappings.advance(chunk.outro);\n\t\t});\n\t\tif (this.outro) mappings.advance(this.outro);\n\t\treturn names;\n\t}\n\t/** @internal */\n\t_mapProperties(options, names) {\n\t\treturn {\n\t\t\tfile: options.file ? options.file.split(/[/\\\\]/).pop() : void 0,\n\t\t\tsources: [options.source ? getRelativePath(options.file || \"\", options.source) : options.file || \"\"],\n\t\t\tsourcesContent: options.includeContent ? [this.original] : void 0,\n\t\t\tnames,\n\t\t\tx_google_ignoreList: this.ignoreList ? [0] : void 0\n\t\t};\n\t}\n\t/** @internal */\n\t_ensureindentStr() {\n\t\tif (this.indentStr === void 0) this.indentStr = guessIndent(this.original);\n\t}\n\t/** @internal */\n\t_getRawIndentString() {\n\t\tthis._ensureindentStr();\n\t\treturn this.indentStr;\n\t}\n\tgetIndentString() {\n\t\tthis._ensureindentStr();\n\t\treturn this.indentStr === null ? \"\t\" : this.indentStr;\n\t}\n\tindent(indentStr, options) {\n\t\tconst pattern = /^[^\\r\\n]/gm;\n\t\tif (isObject(indentStr)) {\n\t\t\toptions = indentStr;\n\t\t\tindentStr = void 0;\n\t\t}\n\t\tif (indentStr === void 0) {\n\t\t\tthis._ensureindentStr();\n\t\t\tindentStr = this.indentStr || \"\t\";\n\t\t}\n\t\tif (indentStr === \"\") return this;\n\t\tconst resolvedIndentStr = indentStr;\n\t\toptions = options || {};\n\t\tconst isExcluded = {};\n\t\tif (options.exclude) (typeof options.exclude[0] === \"number\" ? [options.exclude] : options.exclude).forEach((exclusion) => {\n\t\t\tfor (let i = exclusion[0]; i < exclusion[1]; i += 1) isExcluded[i] = true;\n\t\t});\n\t\tlet shouldIndentNextCharacter = options.indentStart !== false;\n\t\tconst indentPiece = (str) => {\n\t\t\tif (str === \"\") return str;\n\t\t\tconst indented = str.replace(pattern, (match, offset) => offset > 0 || shouldIndentNextCharacter ? `${resolvedIndentStr}${match}` : match);\n\t\t\tshouldIndentNextCharacter = str[str.length - 1] === \"\\n\";\n\t\t\treturn indented;\n\t\t};\n\t\tthis.intro = indentPiece(this.intro);\n\t\tlet charIndex = 0;\n\t\tlet chunk = this.firstChunk;\n\t\tconst indentAt = (index) => {\n\t\t\tshouldIndentNextCharacter = false;\n\t\t\tif (index === chunk.start) chunk.appendRight(resolvedIndentStr);\n\t\t\telse {\n\t\t\t\tthis._splitChunk(chunk, index);\n\t\t\t\tchunk = chunk.next;\n\t\t\t\tchunk.prependRight(resolvedIndentStr);\n\t\t\t}\n\t\t};\n\t\twhile (chunk) {\n\t\t\tconst end = chunk.end;\n\t\t\tif (!isExcluded[chunk.start]) chunk.intro = indentPiece(chunk.intro);\n\t\t\tif (chunk.edited) {\n\t\t\t\tif (!isExcluded[charIndex]) chunk.content = indentPiece(chunk.content);\n\t\t\t} else if (options.exclude) {\n\t\t\t\tcharIndex = chunk.start;\n\t\t\t\twhile (charIndex < end) {\n\t\t\t\t\tif (!isExcluded[charIndex]) {\n\t\t\t\t\t\tconst char = this.original.charCodeAt(charIndex);\n\t\t\t\t\t\tif (char === NEWLINE_CHAR) shouldIndentNextCharacter = true;\n\t\t\t\t\t\telse if (char !== CR_CHAR && shouldIndentNextCharacter) indentAt(charIndex);\n\t\t\t\t\t}\n\t\t\t\t\tcharIndex += 1;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tcharIndex = chunk.start;\n\t\t\t\twhile (charIndex < end) {\n\t\t\t\t\tif (!shouldIndentNextCharacter) {\n\t\t\t\t\t\tconst nextLine = this.original.indexOf(n, charIndex);\n\t\t\t\t\t\tif (nextLine === -1 || nextLine >= end) break;\n\t\t\t\t\t\tshouldIndentNextCharacter = true;\n\t\t\t\t\t\tcharIndex = nextLine + 1;\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\t\t\t\t\tconst char = this.original.charCodeAt(charIndex);\n\t\t\t\t\tif (char === NEWLINE_CHAR || char === CR_CHAR) {\n\t\t\t\t\t\tcharIndex += 1;\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\t\t\t\t\tindentAt(charIndex);\n\t\t\t\t\tcharIndex += 1;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (!isExcluded[chunk.end - 1]) chunk.outro = indentPiece(chunk.outro);\n\t\t\tcharIndex = chunk.end;\n\t\t\tchunk = chunk.next;\n\t\t}\n\t\tthis.outro = indentPiece(this.outro);\n\t\treturn this;\n\t}\n\t/** @internal */\n\tinsert() {\n\t\tthrow new MagicStringError(\"insert() is deprecated, use appendLeft() or prependRight()\");\n\t}\n\t/** @internal */\n\tinsertLeft(index, content) {\n\t\tif (!warned.insertLeft) {\n\t\t\tconsole.warn(\"magicString.insertLeft(...) is deprecated. Use magicString.appendLeft(...) instead\");\n\t\t\twarned.insertLeft = true;\n\t\t}\n\t\treturn this.appendLeft(index, content);\n\t}\n\t/** @internal */\n\tinsertRight(index, content) {\n\t\tif (!warned.insertRight) {\n\t\t\tconsole.warn(\"magicString.insertRight(...) is deprecated. Use magicString.prependRight(...) instead\");\n\t\t\twarned.insertRight = true;\n\t\t}\n\t\treturn this.prependRight(index, content);\n\t}\n\t/**\n\t* Moves the characters from `start` and `end` to `index`.\n\t*\n\t* `affinity` controls where the range is anchored at `index`. With the\n\t* default `'right'`, it is inserted before the content that starts at `index`;\n\t* with `'left'`, it is inserted after the content that ends at `index`. The\n\t* two differ only when other content has already been moved to that boundary,\n\t* mirroring the `appendLeft`/`appendRight` distinction.\n\t*/\n\tmove(start, end, index, affinity = \"right\") {\n\t\tstart = start + this.offset;\n\t\tend = end + this.offset;\n\t\tindex = index + this.offset;\n\t\tif (start === end) return this;\n\t\tif (index >= start && index <= end) throw new MagicStringError(\"cannot move a selection inside itself\");\n\t\tthis._split(start);\n\t\tthis._split(end);\n\t\tthis._split(index);\n\t\tconst first = this.byStart.get(start);\n\t\tconst last = this.byEnd.get(end);\n\t\tif (this.hasMovedChunks) {\n\t\t\tlet cursor = first;\n\t\t\twhile (cursor !== last) {\n\t\t\t\tcursor = cursor.next;\n\t\t\t\tif (!cursor || cursor.start < start || cursor.end > end) throw new MagicStringError(`cannot move ${start} to ${end} because an earlier move split that range`);\n\t\t\t}\n\t\t}\n\t\tconst oldLeft = first.previous;\n\t\tconst oldRight = last.next;\n\t\tlet newLeft;\n\t\tlet newRight;\n\t\tif (affinity === \"left\") {\n\t\t\tnewLeft = this.byEnd.get(index) ?? null;\n\t\t\tif (!newLeft) {\n\t\t\t\tif (first === this.firstChunk) return this;\n\t\t\t\tnewRight = this.firstChunk;\n\t\t\t} else {\n\t\t\t\tif (newLeft.next === first) return this;\n\t\t\t\tnewRight = newLeft.next;\n\t\t\t}\n\t\t} else {\n\t\t\tnewRight = this.byStart.get(index) ?? null;\n\t\t\tif (!newRight) {\n\t\t\t\tif (last === this.lastChunk) return this;\n\t\t\t\tnewLeft = this.lastChunk;\n\t\t\t} else {\n\t\t\t\tif (newRight.previous === last) return this;\n\t\t\t\tnewLeft = newRight.previous;\n\t\t\t}\n\t\t}\n\t\tif (oldLeft) oldLeft.next = oldRight;\n\t\tif (oldRight) oldRight.previous = oldLeft;\n\t\tif (newLeft) newLeft.next = first;\n\t\tif (newRight) newRight.previous = last;\n\t\tif (!first.previous) this.firstChunk = last.next;\n\t\tif (!last.next) {\n\t\t\tthis.lastChunk = first.previous;\n\t\t\tthis.lastChunk.next = null;\n\t\t}\n\t\tfirst.previous = newLeft;\n\t\tlast.next = newRight || null;\n\t\tif (!newLeft) this.firstChunk = first;\n\t\tif (!newRight) this.lastChunk = last;\n\t\tthis.hasMovedChunks = true;\n\t\treturn this;\n\t}\n\t/**\n\t* Replaces the characters from `start` to `end` with `content`, along with the appended/prepended content in\n\t* that range. The same restrictions as `s.remove()` apply.\n\t*\n\t* The fourth argument is optional. It can have a storeName property - if true, the original name will be stored\n\t* for later inclusion in a sourcemap's names array - and a contentOnly property which determines whether only\n\t* the content is overwritten, or anything that was appended/prepended to the range as well.\n\t*\n\t* It may be preferred to use `s.update(...)` instead if you wish to avoid overwriting the appended/prepended content.\n\t*/\n\toverwrite(start, end, content, options) {\n\t\tconst optionObject = typeof options === \"object\" && options ? options : {};\n\t\treturn this.update(start, end, content, {\n\t\t\t...optionObject,\n\t\t\toverwrite: !optionObject.contentOnly\n\t\t});\n\t}\n\t/**\n\t* Replaces the characters from `start` to `end` with `content`. The same restrictions as `s.remove()` apply.\n\t*\n\t* The fourth argument is optional. It can have a storeName property - if true, the original name will be stored\n\t* for later inclusion in a sourcemap's names array - and an overwrite property which determines whether only\n\t* the content is overwritten, or anything that was appended/prepended to the range as well.\n\t*/\n\tupdate(start, end, content, options) {\n\t\tstart = start + this.offset;\n\t\tend = end + this.offset;\n\t\tif (typeof content !== \"string\") throw new MagicStringError(`content must be a string, got ${typeof content}`);\n\t\tif (this.original.length !== 0) {\n\t\t\tif (start < 0) start = Math.max(0, start + this.original.length);\n\t\t\tif (end < 0) end = Math.max(0, end + this.original.length);\n\t\t}\n\t\tif (start < 0) throw new MagicStringError(`start ${start} is out of bounds`);\n\t\tif (end > this.original.length) throw new MagicStringError(`end ${end} is out of bounds`);\n\t\tif (start === end) throw new MagicStringError(`cannot overwrite a zero-length range at ${start}, use appendLeft() or prependRight()`);\n\t\tif (start > end) throw new MagicStringError(`end must be greater than start (start: ${start}, end: ${end})`);\n\t\tthis._split(start);\n\t\tthis._split(end);\n\t\tif (options === true) {\n\t\t\tif (!warned.storeName) {\n\t\t\t\tconsole.warn(\"The final argument to magicString.overwrite(...) should be an options object. See https://github.com/rich-harris/magic-string\");\n\t\t\t\twarned.storeName = true;\n\t\t\t}\n\t\t\toptions = { storeName: true };\n\t\t}\n\t\tconst optionObject = typeof options === \"object\" && options ? options : {};\n\t\tconst storeName = optionObject.storeName || false;\n\t\tconst overwrite = optionObject.overwrite || false;\n\t\tif (storeName) {\n\t\t\tconst original = this.original.slice(start, end);\n\t\t\tObject.defineProperty(this.storedNames, original, {\n\t\t\t\twritable: true,\n\t\t\t\tvalue: true,\n\t\t\t\tenumerable: true\n\t\t\t});\n\t\t}\n\t\tconst first = this.byStart.get(start);\n\t\tconst last = this.byEnd.get(end);\n\t\t/* v8 ignore else -- unreachable: a valid start/end always yields a `first` chunk */\n\t\tif (first) {\n\t\t\tlet chunk = first;\n\t\t\twhile (chunk !== last) {\n\t\t\t\tif (chunk.next !== this.byStart.get(chunk.end)) throw new MagicStringError(\"cannot overwrite across a split point\");\n\t\t\t\tchunk = chunk.next;\n\t\t\t\tchunk.edit(\"\", false);\n\t\t\t}\n\t\t\tfirst.edit(content, storeName, !overwrite);\n\t\t} else {\n\t\t\tconst newChunk = new Chunk(start, end, \"\").edit(content, storeName);\n\t\t\tlast.next = newChunk;\n\t\t\tnewChunk.previous = last;\n\t\t}\n\t\treturn this;\n\t}\n\t/**\n\t* Prepends the string with the specified content.\n\t*/\n\tprepend(content) {\n\t\tif (typeof content !== \"string\") throw new MagicStringError(`content must be a string, got ${typeof content}`);\n\t\tthis.intro = content + this.intro;\n\t\treturn this;\n\t}\n\t/**\n\t* Same as `s.appendLeft(...)`, except that the inserted content will go *before* any previous appends or prepends at index\n\t*/\n\tprependLeft(index, content) {\n\t\tindex = index + this.offset;\n\t\tif (typeof content !== \"string\") throw new MagicStringError(`content must be a string, got ${typeof content}`);\n\t\tthis._split(index);\n\t\tconst chunk = this.byEnd.get(index);\n\t\tif (chunk) chunk.prependLeft(content);\n\t\telse this.intro = content + this.intro;\n\t\treturn this;\n\t}\n\t/**\n\t* Same as `s.appendRight(...)`, except that the inserted content will go *before* any previous appends or prepends at `index`\n\t*/\n\tprependRight(index, content) {\n\t\tindex = index + this.offset;\n\t\tif (typeof content !== \"string\") throw new MagicStringError(`content must be a string, got ${typeof content}`);\n\t\tthis._split(index);\n\t\tconst chunk = this.byStart.get(index);\n\t\tif (chunk) chunk.prependRight(content);\n\t\telse this.outro = content + this.outro;\n\t\treturn this;\n\t}\n\t/**\n\t* Removes the characters from `start` to `end` (of the original string, **not** the generated string).\n\t* Content appended or prepended at positions strictly inside the range is removed with it, while\n\t* content attached at `start` or `end` is preserved — use `s.overwrite(start, end, '')` to remove\n\t* the range including its edge inserts.\n\t* Repeated removals and removals with partially overlapping ranges are allowed.\n\t*/\n\tremove(start, end) {\n\t\tstart = start + this.offset;\n\t\tend = end + this.offset;\n\t\tif (this.original.length !== 0) {\n\t\t\tif (start < 0) start = Math.max(0, start + this.original.length);\n\t\t\tif (end < 0) end = Math.max(0, end + this.original.length);\n\t\t}\n\t\tif (start === end) return this;\n\t\tif (start < 0 || end > this.original.length) throw new MagicStringError(`range ${start}–${end} is out of bounds`);\n\t\tif (start > end) throw new MagicStringError(`end must be greater than start (start: ${start}, end: ${end})`);\n\t\tthis._split(start);\n\t\tthis._split(end);\n\t\tlet chunk = this.byStart.get(start);\n\t\twhile (chunk) {\n\t\t\tif (chunk.start > start) chunk.intro = \"\";\n\t\t\tif (chunk.end < end) chunk.outro = \"\";\n\t\t\tchunk.edit(\"\", false, true);\n\t\t\tchunk = end > chunk.end ? this.byStart.get(chunk.end) : null;\n\t\t}\n\t\treturn this;\n\t}\n\t/**\n\t* Reset the modified characters from `start` to `end` (of the original string, **not** the generated string).\n\t*/\n\treset(start, end) {\n\t\tstart = start + this.offset;\n\t\tend = end + this.offset;\n\t\tif (this.original.length !== 0) {\n\t\t\tif (start < 0) start = Math.max(0, start + this.original.length);\n\t\t\tif (end < 0) end = Math.max(0, end + this.original.length);\n\t\t}\n\t\tif (start === end) return this;\n\t\tif (start < 0 || end > this.original.length) throw new MagicStringError(`range ${start}–${end} is out of bounds`);\n\t\tif (start > end) throw new MagicStringError(`end must be greater than start (start: ${start}, end: ${end})`);\n\t\tthis._split(start);\n\t\tthis._split(end);\n\t\tlet chunk = this.byStart.get(start);\n\t\twhile (chunk) {\n\t\t\tchunk.reset();\n\t\t\tchunk = end > chunk.end ? this.byStart.get(chunk.end) : null;\n\t\t}\n\t\treturn this;\n\t}\n\tlastChar() {\n\t\tif (this.outro.length) return this.outro[this.outro.length - 1];\n\t\tlet chunk = this.lastChunk;\n\t\twhile (chunk) {\n\t\t\tif (chunk.outro.length) return chunk.outro[chunk.outro.length - 1];\n\t\t\tif (chunk.content.length) return chunk.content[chunk.content.length - 1];\n\t\t\tif (chunk.intro.length) return chunk.intro[chunk.intro.length - 1];\n\t\t\tchunk = chunk.previous;\n\t\t}\n\t\tif (this.intro.length) return this.intro[this.intro.length - 1];\n\t\treturn \"\";\n\t}\n\tlastLine() {\n\t\tlet lineIndex = this.outro.lastIndexOf(n);\n\t\tif (lineIndex !== -1) return this.outro.substr(lineIndex + 1);\n\t\tlet lineStr = this.outro;\n\t\tlet chunk = this.lastChunk;\n\t\twhile (chunk) {\n\t\t\tif (chunk.outro.length > 0) {\n\t\t\t\tlineIndex = chunk.outro.lastIndexOf(n);\n\t\t\t\tif (lineIndex !== -1) return chunk.outro.substr(lineIndex + 1) + lineStr;\n\t\t\t\tlineStr = chunk.outro + lineStr;\n\t\t\t}\n\t\t\tif (chunk.content.length > 0) {\n\t\t\t\tlineIndex = chunk.content.lastIndexOf(n);\n\t\t\t\tif (lineIndex !== -1) return chunk.content.substr(lineIndex + 1) + lineStr;\n\t\t\t\tlineStr = chunk.content + lineStr;\n\t\t\t}\n\t\t\tif (chunk.intro.length > 0) {\n\t\t\t\tlineIndex = chunk.intro.lastIndexOf(n);\n\t\t\t\tif (lineIndex !== -1) return chunk.intro.substr(lineIndex + 1) + lineStr;\n\t\t\t\tlineStr = chunk.intro + lineStr;\n\t\t\t}\n\t\t\tchunk = chunk.previous;\n\t\t}\n\t\tlineIndex = this.intro.lastIndexOf(n);\n\t\tif (lineIndex !== -1) return this.intro.substr(lineIndex + 1) + lineStr;\n\t\treturn this.intro + lineStr;\n\t}\n\t/**\n\t* Returns the content of the generated string that corresponds to the slice between `start` and `end` of the original string.\n\t* Throws error if the indices are for characters that were already removed.\n\t*/\n\tslice(start = 0, end = this.original.length - this.offset) {\n\t\tstart = start + this.offset;\n\t\tend = end + this.offset;\n\t\tif (this.original.length !== 0) {\n\t\t\tif (start < 0) start = Math.max(0, start + this.original.length);\n\t\t\tif (end < 0) end = Math.max(0, end + this.original.length);\n\t\t}\n\t\tlet result = \"\";\n\t\tlet chunk = this.firstChunk;\n\t\twhile (chunk && (chunk.start > start || chunk.end <= start)) {\n\t\t\tif (chunk.start < end && chunk.end >= end || end === 0 && chunk.start === 0) return result;\n\t\t\tchunk = chunk.next;\n\t\t}\n\t\tif (chunk && chunk.edited && chunk.start !== start) throw new MagicStringError(`cannot use edited character ${start} as slice start anchor`);\n\t\tconst startChunk = chunk;\n\t\twhile (chunk) {\n\t\t\tif (end === 0 && chunk.start === 0) break;\n\t\t\tif (chunk.intro && (startChunk !== chunk || chunk.start === start)) result += chunk.intro;\n\t\t\tconst containsEnd = chunk.start < end && chunk.end >= end;\n\t\t\tif (containsEnd && chunk.edited && chunk.end !== end) throw new MagicStringError(`cannot use edited character ${end} as slice end anchor`);\n\t\t\tconst sliceStart = startChunk === chunk ? start - chunk.start : 0;\n\t\t\tconst sliceEnd = containsEnd ? chunk.content.length + end - chunk.end : chunk.content.length;\n\t\t\tresult += chunk.content.slice(sliceStart, sliceEnd);\n\t\t\tif (chunk.outro && (!containsEnd || chunk.end === end)) result += chunk.outro;\n\t\t\tif (containsEnd) break;\n\t\t\tchunk = chunk.next;\n\t\t}\n\t\treturn result;\n\t}\n\t/**\n\t* Returns a clone of `s`, with all content before the `start` and `end` characters of the original string removed.\n\t*/\n\tsnip(start, end) {\n\t\tconst clone = this.clone();\n\t\tclone.remove(0, start);\n\t\tclone.remove(end, clone.original.length);\n\t\treturn clone;\n\t}\n\t/** @internal */\n\t_split(index) {\n\t\tif (this.byStart.get(index) || this.byEnd.get(index)) return;\n\t\tlet chunk = this.lastSearchedChunk;\n\t\tlet previousChunk = chunk;\n\t\tconst searchForward = index > chunk.end;\n\t\twhile (chunk) {\n\t\t\tif (chunk.contains(index)) return this._splitChunk(chunk, index);\n\t\t\tchunk = searchForward ? this.byStart.get(chunk.end) : this.byEnd.get(chunk.start);\n\t\t\tif (chunk === previousChunk) return;\n\t\t\tpreviousChunk = chunk;\n\t\t}\n\t}\n\t/** @internal */\n\t_splitChunk(chunk, index) {\n\t\tif (chunk.edited && chunk.content.length) {\n\t\t\tconst loc = getLocator(this.original)(index);\n\t\t\tthrow new MagicStringError(`cannot split a chunk that has already been edited (${loc.line}:${loc.column} – \"${chunk.original}\")`);\n\t\t}\n\t\tconst newChunk = chunk.split(index);\n\t\tthis.byEnd.set(index, chunk);\n\t\tthis.byStart.set(index, newChunk);\n\t\tthis.byEnd.set(newChunk.end, newChunk);\n\t\tif (chunk === this.lastChunk) this.lastChunk = newChunk;\n\t\tthis.lastSearchedChunk = chunk;\n\t\treturn true;\n\t}\n\t/**\n\t* Returns the generated string.\n\t*/\n\ttoString() {\n\t\tlet str = this.intro;\n\t\tlet chunk = this.firstChunk;\n\t\twhile (chunk) {\n\t\t\tstr += chunk.toString();\n\t\t\tchunk = chunk.next;\n\t\t}\n\t\treturn str + this.outro;\n\t}\n\t/**\n\t* Returns true if the resulting source is empty (disregarding white space).\n\t*/\n\tisEmpty() {\n\t\tif (this.intro.length && this.intro.trim()) return false;\n\t\tlet chunk = this.firstChunk;\n\t\twhile (chunk) {\n\t\t\tif (chunk.intro.length && chunk.intro.trim() || chunk.content.length && chunk.content.trim() || chunk.outro.length && chunk.outro.trim()) return false;\n\t\t\tchunk = chunk.next;\n\t\t}\n\t\tif (this.outro.length && this.outro.trim()) return false;\n\t\treturn true;\n\t}\n\tlength() {\n\t\tlet chunk = this.firstChunk;\n\t\tlet length = 0;\n\t\twhile (chunk) {\n\t\t\tlength += chunk.intro.length + chunk.content.length + chunk.outro.length;\n\t\t\tchunk = chunk.next;\n\t\t}\n\t\treturn length;\n\t}\n\t/**\n\t* Removes empty lines from the start and end.\n\t*/\n\ttrimLines() {\n\t\treturn this.trim(\"[\\\\r\\\\n]\");\n\t}\n\t/**\n\t* Trims content matching `charType` (defaults to `\\s`, i.e. whitespace) from the start and end.\n\t*/\n\ttrim(charType) {\n\t\treturn this.trimStart(charType).trimEnd(charType);\n\t}\n\t/** @internal */\n\ttrimEndAborted(charType) {\n\t\tconst rx = new RegExp(`${charType || \"\\\\s\"}+$`);\n\t\tthis.outro = this.outro.replace(rx, \"\");\n\t\tif (this.outro.length) return true;\n\t\tlet chunk = this.lastChunk;\n\t\tdo {\n\t\t\tconst end = chunk.end;\n\t\t\tconst aborted = chunk.trimEnd(rx);\n\t\t\tif (chunk.end !== end) {\n\t\t\t\tif (this.lastChunk === chunk) this.lastChunk = chunk.next;\n\t\t\t\tthis.byEnd.set(chunk.end, chunk);\n\t\t\t\tthis.byStart.set(chunk.next.start, chunk.next);\n\t\t\t\tthis.byEnd.set(chunk.next.end, chunk.next);\n\t\t\t}\n\t\t\tif (aborted) return true;\n\t\t\tchunk = chunk.previous;\n\t\t} while (chunk);\n\t\tthis.intro = this.intro.replace(rx, \"\");\n\t\treturn this.intro.length > 0;\n\t}\n\t/**\n\t* Trims content matching `charType` (defaults to `\\s`, i.e. whitespace) from the end.\n\t*/\n\ttrimEnd(charType) {\n\t\tthis.trimEndAborted(charType);\n\t\treturn this;\n\t}\n\t/** @internal */\n\ttrimStartAborted(charType) {\n\t\tconst rx = new RegExp(`^${charType || \"\\\\s\"}+`);\n\t\tthis.intro = this.intro.replace(rx, \"\");\n\t\tif (this.intro.length) return true;\n\t\tlet chunk = this.firstChunk;\n\t\tdo {\n\t\t\tconst end = chunk.end;\n\t\t\tconst aborted = chunk.trimStart(rx);\n\t\t\tif (chunk.end !== end) {\n\t\t\t\tif (chunk === this.lastChunk) this.lastChunk = chunk.next;\n\t\t\t\tthis.byEnd.set(chunk.end, chunk);\n\t\t\t\tthis.byStart.set(chunk.next.start, chunk.next);\n\t\t\t\tthis.byEnd.set(chunk.next.end, chunk.next);\n\t\t\t}\n\t\t\tif (aborted) return true;\n\t\t\tchunk = chunk.next;\n\t\t} while (chunk);\n\t\tthis.outro = this.outro.replace(rx, \"\");\n\t\treturn this.outro.length > 0;\n\t}\n\t/**\n\t* Trims content matching `charType` (defaults to `\\s`, i.e. whitespace) from the start.\n\t*/\n\ttrimStart(charType) {\n\t\tthis.trimStartAborted(charType);\n\t\treturn this;\n\t}\n\t/**\n\t* Indicates if the string has been changed.\n\t*/\n\thasChanged() {\n\t\tif (this.intro || this.outro) return true;\n\t\tlet outputIndex = 0;\n\t\tlet chunk = this.firstChunk;\n\t\twhile (chunk) {\n\t\t\tif (chunk.intro || chunk.outro) return true;\n\t\t\tif (!chunk.edited && chunk.start === outputIndex) outputIndex = chunk.end;\n\t\t\telse {\n\t\t\t\tif (!this.original.startsWith(chunk.content, outputIndex)) return true;\n\t\t\t\toutputIndex += chunk.content.length;\n\t\t\t}\n\t\t\tchunk = chunk.next;\n\t\t}\n\t\treturn outputIndex !== this.original.length;\n\t}\n\t/**\n\t* Whether the original range [start, end) has had any of its characters\n\t* removed. `replace`/`replaceAll` search `original`, so a match can land on\n\t* text that is no longer in the output - overwriting it would resurrect the\n\t* removed characters, so such matches are skipped instead.\n\t*\n\t* @internal\n\t*/\n\t_hasRemovedContent(start, end) {\n\t\tlet chunk = this.byStart.get(start);\n\t\tif (!chunk) {\n\t\t\tchunk = this.lastSearchedChunk;\n\t\t\tconst searchForward = start >= chunk.end;\n\t\t\twhile (chunk && !chunk.contains(start)) chunk = searchForward ? this.byStart.get(chunk.end) : this.byEnd.get(chunk.start);\n\t\t\tif (chunk) this.lastSearchedChunk = chunk;\n\t\t}\n\t\twhile (chunk && chunk.start < end) {\n\t\t\tif (chunk.content === \"\") return true;\n\t\t\tchunk = this.byStart.get(chunk.end);\n\t\t}\n\t\treturn false;\n\t}\n\t/** @internal */\n\t_replaceRegexp(searchValue, replacement) {\n\t\tfunction getReplacement(match, str) {\n\t\t\tif (typeof replacement === \"string\") return expandReplacement(replacement, match[0], match.index, str, match.slice(1), match.groups);\n\t\t\telse return match.groups === void 0 ? replacement(match[0], ...match.slice(1), match.index, str) : replacement(match[0], ...match.slice(1), match.index, str, match.groups);\n\t\t}\n\t\tconst replaceMatch = (match) => {\n\t\t\t/* v8 ignore next 2 -- `match.index` is always defined for matches from `matchAll` */\n\t\t\tif (match.index == null) return false;\n\t\t\tif (this._hasRemovedContent(match.index, match.index + match[0].length)) return false;\n\t\t\tconst replacement = getReplacement(match, this.original);\n\t\t\tif (replacement === match[0]) return true;\n\t\t\tif (match[0].length === 0) this.appendRight(match.index, replacement);\n\t\t\telse this.overwrite(match.index, match.index + match[0].length, replacement);\n\t\t\treturn true;\n\t\t};\n\t\tif (searchValue.global) {\n\t\t\tsearchValue.lastIndex = 0;\n\t\t\tfor (const match of this.original.matchAll(searchValue)) replaceMatch(match);\n\t\t} else {\n\t\t\tconst match = this.original.match(searchValue);\n\t\t\tif (match && !replaceMatch(match)) {\n\t\t\t\tconst global = new RegExp(searchValue.source, `${searchValue.flags}g`);\n\t\t\t\tfor (const next of this.original.matchAll(global)) if (replaceMatch(next)) break;\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t}\n\t/** @internal */\n\t_replaceString(string, replacement) {\n\t\tconst { original } = this;\n\t\tlet index = original.indexOf(string);\n\t\twhile (index !== -1) {\n\t\t\tif (this._hasRemovedContent(index, index + string.length)) {\n\t\t\t\tindex = original.indexOf(string, index + string.length);\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (typeof replacement === \"function\") replacement = replacement(string, index, original);\n\t\t\telse replacement = expandReplacement(replacement, string, index, original, [], void 0);\n\t\t\tif (string !== replacement) {\n\t\t\t\tif (string.length === 0) this.appendRight(index, replacement);\n\t\t\t\telse this.overwrite(index, index + string.length, replacement);\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t\treturn this;\n\t}\n\t/**\n\t* String replacement with RegExp or string.\n\t*/\n\treplace(searchValue, replacement) {\n\t\tif (typeof searchValue === \"string\") return this._replaceString(searchValue, replacement);\n\t\treturn this._replaceRegexp(searchValue, replacement);\n\t}\n\t/** @internal */\n\t_replaceAllString(string, replacement) {\n\t\tconst { original } = this;\n\t\tconst stringLength = string.length;\n\t\tif (stringLength === 0) {\n\t\t\tfor (let index = 0; index <= original.length; index += 1) {\n\t\t\t\tif (this._hasRemovedContent(index, index)) continue;\n\t\t\t\tconst _replacement = typeof replacement === \"function\" ? replacement(\"\", index, original) : expandReplacement(replacement, \"\", index, original, [], void 0);\n\t\t\t\tif (_replacement !== \"\") this.appendRight(index, _replacement);\n\t\t\t}\n\t\t\treturn this;\n\t\t}\n\t\tfor (let index = original.indexOf(string); index !== -1; index = original.indexOf(string, index + stringLength)) {\n\t\t\tif (this._hasRemovedContent(index, index + stringLength)) continue;\n\t\t\tconst previous = original.slice(index, index + stringLength);\n\t\t\tconst _replacement = typeof replacement === \"function\" ? replacement(previous, index, original) : expandReplacement(replacement, previous, index, original, [], void 0);\n\t\t\tif (previous !== _replacement) this.overwrite(index, index + stringLength, _replacement);\n\t\t}\n\t\treturn this;\n\t}\n\t/**\n\t* Same as `s.replace`, but replace all matched strings instead of just one.\n\t*/\n\treplaceAll(searchValue, replacement) {\n\t\tif (typeof searchValue === \"string\") return this._replaceAllString(searchValue, replacement);\n\t\tif (!searchValue.global) throw new MagicStringError(\"replaceAll() requires a global RegExp\");\n\t\treturn this._replaceRegexp(searchValue, replacement);\n\t}\n};\n//#endregion\n//#region src/Bundle.ts\nconst hasOwnProp = Object.prototype.hasOwnProperty;\nvar Bundle = class Bundle {\n\tconstructor(options = {}) {\n\t\tthis.intro = options.intro || \"\";\n\t\tthis.separator = options.separator !== void 0 ? options.separator : \"\\n\";\n\t\tthis.sources = [];\n\t\tthis.uniqueSources = [];\n\t\tthis.uniqueSourceIndexByFilename = {};\n\t}\n\t/**\n\t* Adds the specified source to the bundle, which can either be a `MagicString` object directly,\n\t* or an options object that holds a magic string `content` property and optionally provides\n\t* a `filename` for the source within the bundle, as well as an optional `ignoreList` hint\n\t* (which defaults to `false`). The `filename` is used when constructing the source map for the\n\t* bundle, to identify this `source` in the source map's `sources` field. The `ignoreList` hint\n\t* is used to populate the `x_google_ignoreList` extension field in the source map, which is a\n\t* mechanism for tools to signal to debuggers that certain sources should be ignored by default\n\t* (depending on user preferences).\n\t*/\n\taddSource(source) {\n\t\tif (source instanceof MagicString) return this.addSource({\n\t\t\tcontent: source,\n\t\t\tfilename: source.filename,\n\t\t\tseparator: this.separator\n\t\t});\n\t\tif (!isObject(source) || !source.content) throw new MagicStringError(\"addSource() requires a `content` property that is a MagicString\");\n\t\t[\n\t\t\t\"filename\",\n\t\t\t\"ignoreList\",\n\t\t\t\"indentExclusionRanges\",\n\t\t\t\"separator\"\n\t\t].forEach((option) => {\n\t\t\tif (!hasOwnProp.call(source, option)) source[option] = source.content[option];\n\t\t});\n\t\tif (source.separator === void 0) source.separator = this.separator;\n\t\tif (source.filename) {\n\t\t\tif (!hasOwnProp.call(this.uniqueSourceIndexByFilename, source.filename)) {\n\t\t\t\tthis.uniqueSourceIndexByFilename[source.filename] = this.uniqueSources.length;\n\t\t\t\tthis.uniqueSources.push({\n\t\t\t\t\tfilename: source.filename,\n\t\t\t\t\tcontent: source.content.original\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tconst uniqueSource = this.uniqueSources[this.uniqueSourceIndexByFilename[source.filename]];\n\t\t\t\tif (source.content.original !== uniqueSource.content) throw new MagicStringError(`duplicate filename \"${source.filename}\" with different content, use unique filenames`);\n\t\t\t}\n\t\t}\n\t\tthis.sources.push(source);\n\t\treturn this;\n\t}\n\tappend(str, options) {\n\t\tthis.addSource({\n\t\t\tcontent: new MagicString(str),\n\t\t\tseparator: options && options.separator || \"\"\n\t\t});\n\t\treturn this;\n\t}\n\tclone() {\n\t\tconst bundle = new Bundle({\n\t\t\tintro: this.intro,\n\t\t\tseparator: this.separator\n\t\t});\n\t\tthis.sources.forEach((source) => {\n\t\t\tbundle.addSource({\n\t\t\t\tfilename: source.filename,\n\t\t\t\tcontent: source.content.clone(),\n\t\t\t\tignoreList: source.ignoreList,\n\t\t\t\tindentExclusionRanges: source.indentExclusionRanges,\n\t\t\t\tseparator: source.separator\n\t\t\t});\n\t\t});\n\t\treturn bundle;\n\t}\n\t/**\n\t* Flattens the bundle into a single `MagicString`, so the concatenated result can be\n\t* processed further with the full `MagicString` API. The returned string's `original`\n\t* is the concatenation of every source's `original`, and all existing edits, inserts,\n\t* intros, outros and separators are preserved as inserted content, so its `toString()`\n\t* equals the bundle's `toString()` and its sourcemap maps back to that combined original.\n\t*\n\t* Because a `MagicString` maps to a single source, per-source `filename`s are not carried\n\t* over; generate the bundle's map before flattening if you need the multi-source mapping.\n\t*/\n\ttoMagicString() {\n\t\tconst combined = new MagicString(this.sources.map((source) => source.content.original).join(\"\"));\n\t\tlet offset = 0;\n\t\tlet pending = this.intro;\n\t\tlet first = null;\n\t\tlet last = null;\n\t\tconst byStart = /* @__PURE__ */ new Map();\n\t\tconst byEnd = /* @__PURE__ */ new Map();\n\t\tlet hasMovedChunks = false;\n\t\tthis.sources.forEach((source, i) => {\n\t\t\tconst magicString = source.content;\n\t\t\tconst separator = i > 0 ? source.separator !== void 0 ? source.separator : this.separator : \"\";\n\t\t\tif (magicString.original.length === 0) {\n\t\t\t\tpending += separator + magicString.toString();\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tpending += separator + magicString.intro;\n\t\t\tlet sourceFirst = null;\n\t\t\tlet previous = null;\n\t\t\tlet originalChunk = magicString.firstChunk;\n\t\t\twhile (originalChunk) {\n\t\t\t\tconst chunk = originalChunk.clone();\n\t\t\t\tchunk.start += offset;\n\t\t\t\tchunk.end += offset;\n\t\t\t\tchunk.previous = previous;\n\t\t\t\tchunk.next = null;\n\t\t\t\tif (previous) previous.next = chunk;\n\t\t\t\tbyStart.set(chunk.start, chunk);\n\t\t\t\tbyEnd.set(chunk.end, chunk);\n\t\t\t\tsourceFirst ??= chunk;\n\t\t\t\tprevious = chunk;\n\t\t\t\toriginalChunk = originalChunk.next;\n\t\t\t}\n\t\t\tconst sourceLast = previous;\n\t\t\tsourceFirst.intro = pending + sourceFirst.intro;\n\t\t\tpending = \"\";\n\t\t\tsourceLast.outro += magicString.outro;\n\t\t\tif (last) {\n\t\t\t\tlast.next = sourceFirst;\n\t\t\t\tsourceFirst.previous = last;\n\t\t\t} else first = sourceFirst;\n\t\t\tlast = sourceLast;\n\t\t\tfor (let index = 0; index < magicString.original.length; index += 1) if (magicString.sourcemapLocations.has(index)) combined.sourcemapLocations.add(index + offset);\n\t\t\tObject.keys(magicString.storedNames).forEach((name) => {\n\t\t\t\tObject.defineProperty(combined.storedNames, name, {\n\t\t\t\t\twritable: true,\n\t\t\t\t\tvalue: true,\n\t\t\t\t\tenumerable: true\n\t\t\t\t});\n\t\t\t});\n\t\t\tif (magicString.hasMovedChunks) hasMovedChunks = true;\n\t\t\toffset += magicString.original.length;\n\t\t});\n\t\tif (!first) {\n\t\t\tcombined.intro = pending;\n\t\t\treturn combined;\n\t\t}\n\t\tif (pending) last.outro += pending;\n\t\tcombined.firstChunk = first;\n\t\tcombined.lastChunk = last;\n\t\tcombined.lastSearchedChunk = first;\n\t\tcombined.byStart = byStart;\n\t\tcombined.byEnd = byEnd;\n\t\tcombined.hasMovedChunks = hasMovedChunks;\n\t\treturn combined;\n\t}\n\tgenerateDecodedMap(options = {}) {\n\t\tconst mappings = new Mappings(options.hires);\n\t\tconst { names, x_google_ignoreList } = this._generateMappings(mappings);\n\t\treturn {\n\t\t\t...this._mapProperties(options, names, x_google_ignoreList),\n\t\t\tmappings: mappings.raw,\n\t\t\trangeMappings: mappings.rawRangeMappings\n\t\t};\n\t}\n\tgenerateMap(options = {}) {\n\t\tconst encoder = new MappingsEncoder();\n\t\tconst mappings = new Mappings(options.hires, encoder);\n\t\tconst { names, x_google_ignoreList } = this._generateMappings(mappings);\n\t\treturn new SourceMap({\n\t\t\t...this._mapProperties(options, names, x_google_ignoreList),\n\t\t\tmappings: encoder.finish(mappings.rawSegments),\n\t\t\trangeMappings: mappings.rawRangeMappings\n\t\t});\n\t}\n\t/** @internal */\n\t_generateMappings(mappings) {\n\t\tconst names = [];\n\t\tlet x_google_ignoreList;\n\t\tthis.sources.forEach((source) => {\n\t\t\tObject.keys(source.content.storedNames).forEach((name) => {\n\t\t\t\tif (!names.includes(name)) names.push(name);\n\t\t\t});\n\t\t});\n\t\tif (this.intro) mappings.advance(this.intro);\n\t\tthis.sources.forEach((source, i) => {\n\t\t\tif (i > 0)\n /* v8 ignore next -- addSource always normalizes source.separator */\n\t\t\tmappings.advance(source.separator !== void 0 ? source.separator : this.separator);\n\t\t\tconst sourceIndex = source.filename ? this.uniqueSourceIndexByFilename[source.filename] : -1;\n\t\t\tconst magicString = source.content;\n\t\t\tconst locate = getLocator(magicString.original);\n\t\t\tif (magicString.intro) mappings.advance(magicString.intro);\n\t\t\tmagicString.firstChunk.eachNext((chunk) => {\n\t\t\t\tconst loc = locate(chunk.start);\n\t\t\t\tif (chunk.intro.length) mappings.advance(chunk.intro);\n\t\t\t\tif (source.filename) {\n\t\t\t\t\tif (chunk.edited) mappings.addEdit(sourceIndex, chunk.content, loc, chunk.storeName ? names.indexOf(chunk.original) : -1);\n\t\t\t\t\telse mappings.addUneditedChunk(sourceIndex, chunk, magicString.original, loc, magicString.sourcemapLocations);\n\t\t\t\t} else mappings.advance(chunk.content);\n\t\t\t\tif (chunk.outro.length) mappings.advance(chunk.outro);\n\t\t\t});\n\t\t\tif (magicString.outro) mappings.advance(magicString.outro);\n\t\t\tif (source.ignoreList && sourceIndex !== -1) {\n\t\t\t\tif (x_google_ignoreList === void 0) x_google_ignoreList = [];\n\t\t\t\tx_google_ignoreList.push(sourceIndex);\n\t\t\t}\n\t\t});\n\t\treturn {\n\t\t\tnames,\n\t\t\tx_google_ignoreList\n\t\t};\n\t}\n\t/** @internal */\n\t_mapProperties(options, names, x_google_ignoreList) {\n\t\treturn {\n\t\t\tfile: options.file ? options.file.split(/[/\\\\]/).pop() : void 0,\n\t\t\tsources: this.uniqueSources.map((source) => {\n\t\t\t\treturn options.file ? getRelativePath(options.file, source.filename) : source.filename;\n\t\t\t}),\n\t\t\tsourcesContent: this.uniqueSources.map((source) => {\n\t\t\t\treturn (typeof options.includeContent === \"function\" ? options.includeContent(source) : options.includeContent) ? source.content : null;\n\t\t\t}),\n\t\t\tnames,\n\t\t\tx_google_ignoreList\n\t\t};\n\t}\n\tgetIndentString() {\n\t\tconst indentStringCounts = {};\n\t\tthis.sources.forEach((source) => {\n\t\t\tconst indentStr = source.content._getRawIndentString();\n\t\t\tif (indentStr === null) return;\n\t\t\tif (!indentStringCounts[indentStr]) indentStringCounts[indentStr] = 0;\n\t\t\tindentStringCounts[indentStr] += 1;\n\t\t});\n\t\treturn Object.keys(indentStringCounts).sort((a, b) => {\n\t\t\treturn indentStringCounts[b] - indentStringCounts[a];\n\t\t})[0] || \"\t\";\n\t}\n\tindent(indentStr) {\n\t\tif (!arguments.length) indentStr = this.getIndentString();\n\t\tif (indentStr === \"\") return this;\n\t\tlet trailingNewline = !this.intro || this.intro.slice(-1) === \"\\n\";\n\t\tthis.sources.forEach((source, i) => {\n\t\t\t/* v8 ignore next -- addSource always normalizes source.separator */\n\t\t\tconst separator = source.separator !== void 0 ? source.separator : this.separator;\n\t\t\tconst indentStart = trailingNewline || i > 0 && /\\r?\\n$/.test(separator);\n\t\t\tsource.content.indent(indentStr, {\n\t\t\t\texclude: source.indentExclusionRanges,\n\t\t\t\tindentStart\n\t\t\t});\n\t\t\ttrailingNewline = source.content.lastChar() === \"\\n\";\n\t\t});\n\t\tif (this.intro) this.intro = indentStr + this.intro.replace(/^[^\\n]/gm, (match, index) => {\n\t\t\treturn index > 0 ? indentStr + match : match;\n\t\t});\n\t\treturn this;\n\t}\n\tprepend(str) {\n\t\tthis.intro = str + this.intro;\n\t\treturn this;\n\t}\n\ttoString() {\n\t\tconst body = this.sources.map((source, i) => {\n\t\t\t/* v8 ignore next -- addSource always normalizes source.separator */\n\t\t\tconst separator = source.separator !== void 0 ? source.separator : this.separator;\n\t\t\treturn (i > 0 ? separator : \"\") + source.content.toString();\n\t\t}).join(\"\");\n\t\treturn this.intro + body;\n\t}\n\tisEmpty() {\n\t\tif (this.intro.length && this.intro.trim()) return false;\n\t\tif (this.sources.some((source, i) => {\n\t\t\t/* v8 ignore next -- addSource always normalizes source.separator */\n\t\t\tconst separator = source.separator !== void 0 ? source.separator : this.separator;\n\t\t\treturn i > 0 && separator.trim() !== \"\" || !source.content.isEmpty();\n\t\t})) return false;\n\t\treturn true;\n\t}\n\tlength() {\n\t\treturn this.sources.reduce((length, source, i) => {\n\t\t\t/* v8 ignore next -- addSource always normalizes source.separator */\n\t\t\tconst separator = source.separator !== void 0 ? source.separator : this.separator;\n\t\t\treturn length + (i > 0 ? separator.length : 0) + source.content.toString().length;\n\t\t}, this.intro.length);\n\t}\n\ttrimLines() {\n\t\treturn this.trim(\"[\\\\r\\\\n]\");\n\t}\n\ttrim(charType) {\n\t\treturn this.trimStart(charType).trimEnd(charType);\n\t}\n\ttrimStart(charType) {\n\t\tconst rx = new RegExp(`^${charType || \"\\\\s\"}+`);\n\t\tthis.intro = this.intro.replace(rx, \"\");\n\t\tif (!this.intro) for (let i = 0; i < this.sources.length; i += 1) {\n\t\t\tconst source = this.sources[i];\n\t\t\tif (i > 0) {\n\t\t\t\tsource.separator = (source.separator !== void 0 ? source.separator : this.separator).replace(rx, \"\");\n\t\t\t\tif (source.separator) break;\n\t\t\t}\n\t\t\tif (source.content.trimStartAborted(charType)) break;\n\t\t}\n\t\treturn this;\n\t}\n\ttrimEnd(charType) {\n\t\tconst rx = new RegExp(`${charType || \"\\\\s\"}+$`);\n\t\tfor (let i = this.sources.length - 1; i >= 0; i -= 1) {\n\t\t\tconst source = this.sources[i];\n\t\t\tif (source.content.trimEndAborted(charType)) return this;\n\t\t\tif (i > 0) {\n\t\t\t\tsource.separator = (source.separator !== void 0 ? source.separator : this.separator).replace(rx, \"\");\n\t\t\t\tif (source.separator) return this;\n\t\t\t}\n\t\t}\n\t\tthis.intro = this.intro.replace(rx, \"\");\n\t\treturn this;\n\t}\n};\n//#endregion\nexport { Bundle, MagicString, MagicString as default, MagicStringError, SourceMap };\n"],"x_google_ignoreList":[0,1],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { o as debugArgs } from "./common-
|
|
1
|
+
import { o as debugArgs } from "./common-BXabdhiO.mjs";
|
|
2
2
|
import { array, boolean, flag, multioption, oneOf, option, optional, positional, string } from "cmd-ts";
|
|
3
3
|
//#region processors/constants.ts
|
|
4
4
|
const PROCESSOR_APPS = ["connect", "switchboard"];
|
|
@@ -83,6 +83,44 @@ const generateArgs = {
|
|
|
83
83
|
long: "subgraph",
|
|
84
84
|
description: "Subgraph name."
|
|
85
85
|
}),
|
|
86
|
+
pieceName: option({
|
|
87
|
+
type: optional(string),
|
|
88
|
+
long: "piece",
|
|
89
|
+
description: "Piece name."
|
|
90
|
+
}),
|
|
91
|
+
pieceId: option({
|
|
92
|
+
type: optional(string),
|
|
93
|
+
long: "piece-id",
|
|
94
|
+
description: "Piece id, the pieceName a workflow step holds, e.g. @acme/piece-crm. Defaults to one derived from the package name."
|
|
95
|
+
}),
|
|
96
|
+
pieceAuth: option({
|
|
97
|
+
type: oneOf([
|
|
98
|
+
"none",
|
|
99
|
+
"secret",
|
|
100
|
+
"custom"
|
|
101
|
+
]),
|
|
102
|
+
long: "piece-auth",
|
|
103
|
+
description: "The kind of connection the generated piece asks for. Default is custom.",
|
|
104
|
+
defaultValue: () => "custom",
|
|
105
|
+
defaultValueIsSerializable: true
|
|
106
|
+
}),
|
|
107
|
+
pieceActionName: option({
|
|
108
|
+
type: optional(string),
|
|
109
|
+
long: "piece-action",
|
|
110
|
+
description: "Name of an action to generate inside a piece."
|
|
111
|
+
}),
|
|
112
|
+
pieceTriggerName: option({
|
|
113
|
+
type: optional(string),
|
|
114
|
+
long: "piece-trigger",
|
|
115
|
+
description: "Name of a trigger to generate inside a piece."
|
|
116
|
+
}),
|
|
117
|
+
pieceTriggerStrategy: option({
|
|
118
|
+
type: oneOf(["polling", "webhook"]),
|
|
119
|
+
long: "piece-trigger-strategy",
|
|
120
|
+
description: "How a generated trigger fires. Default is polling.",
|
|
121
|
+
defaultValue: () => "polling",
|
|
122
|
+
defaultValueIsSerializable: true
|
|
123
|
+
}),
|
|
86
124
|
importScriptName: option({
|
|
87
125
|
type: optional(string),
|
|
88
126
|
long: "import-script",
|
|
@@ -150,4 +188,4 @@ const generateArgs = {
|
|
|
150
188
|
//#endregion
|
|
151
189
|
export { generateArgs as t };
|
|
152
190
|
|
|
153
|
-
//# sourceMappingURL=generate-
|
|
191
|
+
//# sourceMappingURL=generate-BOItUNvP.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generate-BOItUNvP.mjs","names":[],"sources":["../../../processors/constants.ts","../../../clis/args/generate.ts"],"sourcesContent":["export const PROCESSOR_APPS = [\"connect\", \"switchboard\"] as const;\nexport const DEFAULT_RELATIONAL_PROCESSOR_DB_NAME = \"relational-db\";\nexport const DEFAULT_ANALYTICS_PROCESSOR_DB_NAME = \"analytics-db\";\n","import type { Type } from \"cmd-ts\";\nimport {\n array,\n boolean,\n flag,\n multioption,\n oneOf,\n option,\n optional,\n positional,\n string,\n} from \"cmd-ts\";\nimport { PROCESSOR_APPS } from \"processors\";\nimport { debugArgs } from \"./common.js\";\n\nconst ProcessorAppType: Type<string[], (\"connect\" | \"switchboard\")[]> = {\n from(processorApps) {\n if (processorApps.length === 0) {\n throw new Error(\n `No arguments provided for processor apps. Must be \"connect\" and/or \"switchboard\"`,\n );\n }\n if (processorApps.length > 2) {\n throw new Error(\n `Too many arguments provided for processor apps. Must be \"connect\" and/or \"switchboard\"`,\n );\n }\n const allowed = new Set(PROCESSOR_APPS);\n if (\n !processorApps.every((p) => allowed.has(p as \"connect\" | \"switchboard\"))\n ) {\n throw new Error(\n `Processor apps can only be \"connect\" and/or \"switchboard\".`,\n );\n }\n return Promise.resolve(processorApps as (\"connect\" | \"switchboard\")[]);\n },\n};\n\nexport const generateArgs = {\n documentModelFilePositional: positional({\n type: optional(string),\n displayName: \"document model file path\",\n description: \"Path to the document model file.\",\n }),\n documentModelFileOption: option({\n type: optional(string),\n long: \"file\",\n description: \"Path to the document model file.\",\n }),\n editorName: option({\n type: optional(string),\n long: \"editor\",\n description: \"Editor name.\",\n }),\n editorId: option({\n type: optional(string),\n long: \"editor-id\",\n description: \"Editor ID\",\n }),\n editorDirName: option({\n type: optional(string),\n long: \"editor-dir-name\",\n description:\n \"Use a different directory name for the generated editor. Default is the editor name in kebab case.\",\n }),\n documentType: option({\n type: optional(string),\n long: \"document-type\",\n description: \"Document type for the generated document editor.\",\n }),\n documentTypes: option({\n type: optional(string),\n long: \"document-types\",\n description:\n \"[DEPRECATED] Comma separated list of document types for the generated document editor. [WARNING] Generated editor code is not set up to handle multiple document types.\",\n }),\n appName: option({\n type: optional(string),\n long: \"app\",\n description: \"App name.\",\n }),\n appId: option({\n type: optional(string),\n long: \"app-id\",\n description: \"App ID.\",\n }),\n appDirName: option({\n type: optional(string),\n long: \"app-dir-name\",\n description:\n \"Use a different directory name for the generated app. Default is the app name in kebab case.\",\n }),\n processorName: option({\n type: optional(string),\n long: \"processor\",\n description: \"Processor name.\",\n }),\n processorType: option({\n type: oneOf([\"relationalDb\", \"analytics\"] as const),\n long: \"processor-type\",\n description:\n \"Whether to generate an analytics processor or a relational DB processor. Default is analytics.\",\n defaultValue: () => \"analytics\" as const,\n defaultValueIsSerializable: true,\n }),\n processorApps: multioption({\n long: \"processor-apps\",\n type: ProcessorAppType,\n description: \"The apps where the generated processor will run\",\n defaultValue: () => [\"switchboard\" as const],\n defaultValueIsSerializable: true,\n }),\n subgraphName: option({\n type: optional(string),\n long: \"subgraph\",\n description: \"Subgraph name.\",\n }),\n pieceName: option({\n type: optional(string),\n long: \"piece\",\n description: \"Piece name.\",\n }),\n pieceId: option({\n type: optional(string),\n long: \"piece-id\",\n description:\n \"Piece id, the pieceName a workflow step holds, e.g. @acme/piece-crm. Defaults to one derived from the package name.\",\n }),\n pieceAuth: option({\n type: oneOf([\"none\", \"secret\", \"custom\"] as const),\n long: \"piece-auth\",\n description:\n \"The kind of connection the generated piece asks for. Default is custom.\",\n defaultValue: () => \"custom\" as const,\n defaultValueIsSerializable: true,\n }),\n pieceActionName: option({\n type: optional(string),\n long: \"piece-action\",\n description: \"Name of an action to generate inside a piece.\",\n }),\n pieceTriggerName: option({\n type: optional(string),\n long: \"piece-trigger\",\n description: \"Name of a trigger to generate inside a piece.\",\n }),\n pieceTriggerStrategy: option({\n type: oneOf([\"polling\", \"webhook\"] as const),\n long: \"piece-trigger-strategy\",\n description: \"How a generated trigger fires. Default is polling.\",\n defaultValue: () => \"polling\" as const,\n defaultValueIsSerializable: true,\n }),\n importScriptName: option({\n type: optional(string),\n long: \"import-script\",\n description: \"Import script name.\",\n }),\n allowedDocumentTypes: multioption({\n type: optional(array(string)),\n long: \"allowed-document-types\",\n description: \"Supported document types for a app.\",\n }),\n migrationFile: option({\n type: optional(string),\n long: \"migration-file\",\n description: \"Path to the migration file.\",\n }),\n schemaFile: option({\n type: optional(string),\n long: \"schema-file\",\n description: \"Path to the output file. Defaults to './schema.ts'\",\n }),\n disableDragAndDrop: flag({\n type: optional(boolean),\n long: \"disable-drag-and-drop\",\n description: \"Disable drag and drop in the generated app.\",\n }),\n force: flag({\n type: optional(boolean),\n long: \"force\",\n short: \"f\",\n description: \"Overwrite operation reducers.\",\n }),\n verbose: flag({\n type: optional(boolean),\n long: \"logs\",\n description: \"Show additional logging information.\",\n }),\n watch: flag({\n type: optional(boolean),\n long: \"watch\",\n short: \"w\",\n description: \"Watch the generated code.\",\n }),\n skipFormat: flag({\n type: optional(boolean),\n long: \"skip-format\",\n short: \"sf\",\n description: \"Skip formatting the generated code.\",\n }),\n useVersioning: flag({\n type: boolean,\n long: \"use-versioning\",\n description: \"Allow upgrading document models with versioning.\",\n defaultValue: () => true,\n defaultValueIsSerializable: true,\n }),\n migrateLegacy: flag({\n type: boolean,\n long: \"migrate-legacy\",\n description:\n \"Migrate existing legacy document model code to versioned structure. Implies --use-versioning.\",\n defaultValue: () => false,\n defaultValueIsSerializable: true,\n }),\n ...debugArgs,\n};\n"],"mappings":"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"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
//#region clis/args/generate.d.ts
|
|
2
|
+
declare const generateArgs: {
|
|
3
|
+
debug: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
4
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<boolean | undefined>>;
|
|
5
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & import("cmd-ts/dist/cjs/argparser.js").Register & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
6
|
+
documentModelFilePositional: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
7
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<string | undefined>>;
|
|
8
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
9
|
+
documentModelFileOption: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
10
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<string | undefined>>;
|
|
11
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
12
|
+
editorName: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
13
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<string | undefined>>;
|
|
14
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
15
|
+
editorId: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
16
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<string | undefined>>;
|
|
17
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
18
|
+
editorDirName: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
19
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<string | undefined>>;
|
|
20
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
21
|
+
documentType: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
22
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<string | undefined>>;
|
|
23
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
24
|
+
documentTypes: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
25
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<string | undefined>>;
|
|
26
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
27
|
+
appName: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
28
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<string | undefined>>;
|
|
29
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
30
|
+
appId: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
31
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<string | undefined>>;
|
|
32
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
33
|
+
appDirName: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
34
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<string | undefined>>;
|
|
35
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
36
|
+
processorName: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
37
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<string | undefined>>;
|
|
38
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
39
|
+
processorType: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
40
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<"analytics" | "relationalDb">>;
|
|
41
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
42
|
+
processorApps: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
43
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<("connect" | "switchboard")[]>>;
|
|
44
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & import("cmd-ts/dist/cjs/argparser.js").Register;
|
|
45
|
+
subgraphName: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
46
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<string | undefined>>;
|
|
47
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
48
|
+
pieceName: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
49
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<string | undefined>>;
|
|
50
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
51
|
+
pieceId: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
52
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<string | undefined>>;
|
|
53
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
54
|
+
pieceAuth: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
55
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<"custom" | "none" | "secret">>;
|
|
56
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
57
|
+
pieceActionName: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
58
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<string | undefined>>;
|
|
59
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
60
|
+
pieceTriggerName: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
61
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<string | undefined>>;
|
|
62
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
63
|
+
pieceTriggerStrategy: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
64
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<"polling" | "webhook">>;
|
|
65
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
66
|
+
importScriptName: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
67
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<string | undefined>>;
|
|
68
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
69
|
+
allowedDocumentTypes: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
70
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<string[] | undefined>>;
|
|
71
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & import("cmd-ts/dist/cjs/argparser.js").Register;
|
|
72
|
+
migrationFile: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
73
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<string | undefined>>;
|
|
74
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
75
|
+
schemaFile: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
76
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<string | undefined>>;
|
|
77
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
78
|
+
disableDragAndDrop: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
79
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<boolean | undefined>>;
|
|
80
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & import("cmd-ts/dist/cjs/argparser.js").Register & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
81
|
+
force: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
82
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<boolean | undefined>>;
|
|
83
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & import("cmd-ts/dist/cjs/argparser.js").Register & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
84
|
+
verbose: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
85
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<boolean | undefined>>;
|
|
86
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & import("cmd-ts/dist/cjs/argparser.js").Register & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
87
|
+
watch: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
88
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<boolean | undefined>>;
|
|
89
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & import("cmd-ts/dist/cjs/argparser.js").Register & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
90
|
+
skipFormat: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
91
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<boolean | undefined>>;
|
|
92
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & import("cmd-ts/dist/cjs/argparser.js").Register & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
93
|
+
useVersioning: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
94
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<boolean>>;
|
|
95
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & import("cmd-ts/dist/cjs/argparser.js").Register & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
96
|
+
migrateLegacy: Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
97
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<boolean>>;
|
|
98
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & import("cmd-ts/dist/cjs/argparser.js").Register & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive>;
|
|
99
|
+
};
|
|
100
|
+
//#endregion
|
|
101
|
+
export { generateArgs as t };
|
|
102
|
+
export {};
|
|
103
|
+
//# sourceMappingURL=generate-BPBBLeUD.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generate-BPBBLeUD.d.mts","names":[],"sources":["../../../clis/args/generate.ts"],"mappings":";cAuCa"}
|
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
import { t as generateArgs } from "./generate-
|
|
2
|
-
export { generateArgs };
|
|
1
|
+
import { t as generateArgs } from "./generate-BPBBLeUD.mjs";
|
|
2
|
+
export { generateArgs };
|
|
3
|
+
export {};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as generateArgs } from "./generate-
|
|
1
|
+
import { t as generateArgs } from "./generate-BOItUNvP.mjs";
|
|
2
2
|
export { generateArgs };
|
|
@@ -1,20 +1,40 @@
|
|
|
1
|
-
import { o as debugArgs } from "./common-
|
|
2
|
-
import { t as accessTokenArgs } from "./access-token-
|
|
3
|
-
import { t as connectArgs } from "./connect-
|
|
4
|
-
import { t as generateArgs } from "./generate-
|
|
5
|
-
import { t as inspectArgs } from "./inspect-
|
|
6
|
-
import { t as installArgs } from "./install-
|
|
7
|
-
import { t as listArgs } from "./list-
|
|
8
|
-
import { t as loginArgs } from "./login-
|
|
9
|
-
import { t as migrateArgs } from "./migrate-
|
|
10
|
-
import { t as publishArgs } from "./publish-
|
|
11
|
-
import { n as registryLoginArgs } from "./registry-
|
|
12
|
-
import { t as
|
|
13
|
-
import { t as
|
|
14
|
-
import {
|
|
1
|
+
import { o as debugArgs } from "./common-BXabdhiO.mjs";
|
|
2
|
+
import { t as accessTokenArgs } from "./access-token-3Hqv_U8I.mjs";
|
|
3
|
+
import { t as connectArgs } from "./connect-BG3HkYBk.mjs";
|
|
4
|
+
import { t as generateArgs } from "./generate-BOItUNvP.mjs";
|
|
5
|
+
import { t as inspectArgs } from "./inspect-UNQgtuR0.mjs";
|
|
6
|
+
import { t as installArgs } from "./install-F-27kF6m.mjs";
|
|
7
|
+
import { t as listArgs } from "./list-Bkfn8Yuo.mjs";
|
|
8
|
+
import { t as loginArgs } from "./login-CIFkQExi.mjs";
|
|
9
|
+
import { t as migrateArgs } from "./migrate-DwJGhc2d.mjs";
|
|
10
|
+
import { t as publishArgs } from "./publish-DHqlGWmL.mjs";
|
|
11
|
+
import { n as registryLoginArgs } from "./registry-DIwES3l2.mjs";
|
|
12
|
+
import { t as runArgs } from "./run-CYp5t1xU.mjs";
|
|
13
|
+
import { t as switchboardArgs } from "./switchboard-CCaAtU56.mjs";
|
|
14
|
+
import { t as uninstallArgs } from "./uninstall-3U0B8g5c.mjs";
|
|
15
|
+
import { r as vetraArgs } from "./vetra-BUNlAAPp.mjs";
|
|
15
16
|
import { command } from "cmd-ts";
|
|
17
|
+
//#region clis/feature-flags.ts
|
|
18
|
+
/**
|
|
19
|
+
* Feature toggles shared by the CLIs (ph-cli and ph-cmd's dispatch/help).
|
|
20
|
+
* Hand-rolled env predicates by the CLI convention — deliberately no
|
|
21
|
+
* OpenFeature dependency here; that stack belongs to the runtime apps.
|
|
22
|
+
*/
|
|
23
|
+
/**
|
|
24
|
+
* Gates the uniform-runners surface: the `ph run` command (registration,
|
|
25
|
+
* help listing, and ph-cmd forwarding), host-name sugar, and the `ph init`
|
|
26
|
+
* hosts/ scaffold. Off by default; set to `1` or `true` to enable. Rollout
|
|
27
|
+
* plan: docs/plans/2026-10-13-uniform-runners.md.
|
|
28
|
+
*/
|
|
29
|
+
const UNIFORM_RUNNERS_FLAG = "FEATURE_UNIFORM_RUNNERS_ENABLED";
|
|
30
|
+
function isUniformRunnersEnabled(env = process.env) {
|
|
31
|
+
const value = env[UNIFORM_RUNNERS_FLAG]?.trim().toLowerCase();
|
|
32
|
+
return value === "1" || value === "true";
|
|
33
|
+
}
|
|
34
|
+
//#endregion
|
|
16
35
|
//#region clis/command-names.ts
|
|
17
36
|
const phCliCommandNames = [
|
|
37
|
+
"run",
|
|
18
38
|
"generate",
|
|
19
39
|
"vetra",
|
|
20
40
|
"connect",
|
|
@@ -49,7 +69,13 @@ function helpCommand(config) {
|
|
|
49
69
|
aliases
|
|
50
70
|
});
|
|
51
71
|
}
|
|
52
|
-
const
|
|
72
|
+
const allPhCliHelpCommands = {
|
|
73
|
+
run: helpCommand({
|
|
74
|
+
name: "run",
|
|
75
|
+
args: runArgs,
|
|
76
|
+
description: "Run a host from hosts/ with its runner",
|
|
77
|
+
handler: () => {}
|
|
78
|
+
}),
|
|
53
79
|
generate: helpCommand({
|
|
54
80
|
name: "generate",
|
|
55
81
|
args: generateArgs,
|
|
@@ -146,7 +172,8 @@ const phCliHelpCommands = {
|
|
|
146
172
|
handler: () => {}
|
|
147
173
|
})
|
|
148
174
|
};
|
|
175
|
+
const phCliHelpCommands = isUniformRunnersEnabled() ? allPhCliHelpCommands : (({ run: _run, ...rest }) => rest)(allPhCliHelpCommands);
|
|
149
176
|
//#endregion
|
|
150
177
|
export { phCliCommandNames as n, phCliHelpCommands as t };
|
|
151
178
|
|
|
152
|
-
//# sourceMappingURL=help-
|
|
179
|
+
//# sourceMappingURL=help-BfAqpYvC.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"help-BfAqpYvC.mjs","names":[],"sources":["../../../clis/feature-flags.ts","../../../clis/command-names.ts","../../../clis/args/help.ts"],"sourcesContent":["/**\n * Feature toggles shared by the CLIs (ph-cli and ph-cmd's dispatch/help).\n * Hand-rolled env predicates by the CLI convention — deliberately no\n * OpenFeature dependency here; that stack belongs to the runtime apps.\n */\n\n/**\n * Gates the uniform-runners surface: the `ph run` command (registration,\n * help listing, and ph-cmd forwarding), host-name sugar, and the `ph init`\n * hosts/ scaffold. Off by default; set to `1` or `true` to enable. Rollout\n * plan: docs/plans/2026-10-13-uniform-runners.md.\n */\nexport const UNIFORM_RUNNERS_FLAG = \"FEATURE_UNIFORM_RUNNERS_ENABLED\";\n\nexport function isUniformRunnersEnabled(\n env: Record<string, string | undefined> = process.env,\n): boolean {\n const value = env[UNIFORM_RUNNERS_FLAG]?.trim().toLowerCase();\n return value === \"1\" || value === \"true\";\n}\n","// Hardcoded so ph-cmd's dispatch doesn't have to evaluate phCliHelpCommands.\n// The compile-time guard in args/help.ts catches drift.\nexport const phCliCommandNames = [\n \"run\",\n \"generate\",\n \"vetra\",\n \"connect\",\n \"build\",\n \"publish\",\n \"list\",\n \"l\",\n \"access-token\",\n \"registry-login\",\n \"inspect\",\n \"is\",\n \"migrate\",\n \"switchboard\",\n \"reactor\",\n \"login\",\n \"logout\",\n \"install\",\n \"add\",\n \"i\",\n \"uninstall\",\n \"remove\",\n] as const;\n","import { command } from \"cmd-ts\";\nimport { isUniformRunnersEnabled } from \"../feature-flags.js\";\nimport type { phCliCommandNames } from \"../command-names.js\";\nimport { accessTokenArgs } from \"./access-token.js\";\nimport { debugArgs } from \"./common.js\";\nimport { connectArgs } from \"./connect.js\";\nimport { generateArgs } from \"./generate.js\";\nimport { inspectArgs } from \"./inspect.js\";\nimport { installArgs } from \"./install.js\";\nimport { listArgs } from \"./list.js\";\nimport { loginArgs } from \"./login.js\";\nimport { migrateArgs } from \"./migrate.js\";\nimport { publishArgs } from \"./publish.js\";\nimport { registryLoginArgs } from \"./registry.js\";\nimport { runArgs } from \"./run.js\";\nimport { switchboardArgs } from \"./switchboard.js\";\nimport { uninstallArgs } from \"./uninstall.js\";\nimport { vetraArgs } from \"./vetra.js\";\n\n// Thin wrapper around `command()` that preserves the literal types of\n// `name` and `aliases` on the return value.\nfunction helpCommand<\n const N extends string,\n const A extends readonly string[] = readonly [],\n>(\n config: Parameters<typeof command>[0] & { name: N; aliases?: A },\n): ReturnType<typeof command> & { readonly name: N; readonly aliases: A } {\n const aliases = (config.aliases ?? ([] as readonly string[])) as A;\n // Forward the original config (with the normalized aliases) through cmd-ts\n // and re-attach the literal types via a localized cast.\n return Object.assign(command({ ...config, aliases: [...aliases] }), {\n name: config.name,\n aliases,\n }) as ReturnType<typeof command> & {\n readonly name: N;\n readonly aliases: A;\n };\n}\n\nconst allPhCliHelpCommands = {\n run: helpCommand({\n name: \"run\",\n args: runArgs,\n description: \"Run a host from hosts/ with its runner\",\n handler: () => {},\n }),\n generate: helpCommand({\n name: \"generate\",\n args: generateArgs,\n description: \"Generate powerhouse code\",\n handler: () => {},\n }),\n vetra: helpCommand({\n name: \"vetra\",\n args: vetraArgs,\n description:\n \"Starts Vetra development environment with switchboard, reactor, and connect\",\n handler: () => {},\n }),\n connect: helpCommand({\n name: \"connect\",\n args: connectArgs,\n description: \"Powerhouse Connect commands\",\n handler: () => {},\n }),\n build: helpCommand({\n name: \"build\",\n args: debugArgs,\n description: \"Build your project for publishing to the registry\",\n handler: () => {},\n }),\n publish: helpCommand({\n name: \"publish\",\n args: publishArgs,\n description: \"Publish a package to the Powerhouse registry\",\n handler: () => {},\n }),\n list: helpCommand({\n name: \"list\",\n aliases: [\"l\"],\n args: listArgs,\n description: \"List installed packages\",\n handler: () => {},\n }),\n \"access-token\": helpCommand({\n name: \"access-token\",\n args: accessTokenArgs,\n description: \"Generate a bearer token for API authentication\",\n handler: () => {},\n }),\n \"registry-login\": helpCommand({\n name: \"registry-login\",\n args: registryLoginArgs,\n description:\n \"Log in to a Powerhouse registry (writes a Renown bearer token to ~/.npmrc)\",\n handler: () => {},\n }),\n inspect: helpCommand({\n name: \"inspect\",\n aliases: [\"is\"],\n args: inspectArgs,\n description: \"Inspect a package\",\n handler: () => {},\n }),\n migrate: helpCommand({\n name: \"migrate\",\n args: migrateArgs,\n description: \"Run migrations\",\n handler: () => {},\n }),\n switchboard: helpCommand({\n name: \"switchboard\",\n aliases: [\"reactor\"],\n args: switchboardArgs,\n description: \"Starts local Switchboard\",\n handler: () => {},\n }),\n login: helpCommand({\n name: \"login\",\n args: loginArgs,\n description: \"Authenticate with Renown using your Ethereum wallet\",\n handler: () => {},\n }),\n logout: helpCommand({\n name: \"logout\",\n args: loginArgs,\n description: \"Deletes an existing session created with 'ph login'\",\n handler: () => {},\n }),\n install: helpCommand({\n name: \"install\",\n aliases: [\"add\", \"i\"],\n args: installArgs,\n description: \"Install a Powerhouse dependency\",\n handler: () => {},\n }),\n uninstall: helpCommand({\n name: \"uninstall\",\n aliases: [\"remove\"],\n args: uninstallArgs,\n description: \"Uninstall a Powerhouse dependency\",\n handler: () => {},\n }),\n};\n\n// `run` is flag-gated: with uniform-runners off it must not surface in help\n// or dispatch at all (ph-cli also skips its registration). The cast keeps the\n// FULL compile-time shape so the drift guard below still pairs the name lists\n// while the runtime object simply lacks the key.\nexport const phCliHelpCommands = (\n isUniformRunnersEnabled()\n ? allPhCliHelpCommands\n : (({ run: _run, ...rest }) => rest)(allPhCliHelpCommands)\n) as typeof allPhCliHelpCommands;\n\nexport { phCliCommandNames } from \"../command-names.js\";\n\n// Compile-time drift guard: phCliCommandNames must match the names+aliases\n// declared above. If you add or rename a command/alias, the type of\n// `_DerivedNames` changes and the assignment below errors until\n// `command-names.ts` is updated to match. Costs nothing at runtime.\ntype _DerivedNames = {\n [K in keyof typeof phCliHelpCommands]:\n | (typeof phCliHelpCommands)[K][\"name\"]\n | (typeof phCliHelpCommands)[K][\"aliases\"][number];\n}[keyof typeof phCliHelpCommands];\n\ntype _Names = (typeof phCliCommandNames)[number];\n\ntype _Equal<A, B> =\n (<T>() => T extends A ? 1 : 2) extends <T>() => T extends B ? 1 : 2\n ? true\n : false;\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst _phCliCommandNamesInSync: _Equal<_DerivedNames, _Names> extends true\n ? true\n : never = true;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,MAAa,uBAAuB;AAEpC,SAAgB,wBACd,MAA0C,QAAQ,KACzC;CACT,MAAM,QAAQ,IAAI,qBAAqB,EAAE,KAAK,CAAC,CAAC,YAAY;CAC5D,OAAO,UAAU,OAAO,UAAU;AACpC;;;ACjBA,MAAa,oBAAoB;CAC/B;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;;;ACJA,SAAS,YAIP,QACwE;CACxE,MAAM,UAAW,OAAO,WAAY,CAAC;CAGrC,OAAO,OAAO,OAAO,QAAQ;EAAE,GAAG;EAAQ,SAAS,CAAC,GAAG,OAAO;CAAE,CAAC,GAAG;EAClE,MAAM,OAAO;EACb;CACF,CAAC;AAIH;AAEA,MAAM,uBAAuB;CAC3B,KAAK,YAAY;EACf,MAAM;EACN,MAAM;EACN,aAAa;EACb,eAAe,CAAC;CAClB,CAAC;CACD,UAAU,YAAY;EACpB,MAAM;EACN,MAAM;EACN,aAAa;EACb,eAAe,CAAC;CAClB,CAAC;CACD,OAAO,YAAY;EACjB,MAAM;EACN,MAAM;EACN,aACE;EACF,eAAe,CAAC;CAClB,CAAC;CACD,SAAS,YAAY;EACnB,MAAM;EACN,MAAM;EACN,aAAa;EACb,eAAe,CAAC;CAClB,CAAC;CACD,OAAO,YAAY;EACjB,MAAM;EACN,MAAM;EACN,aAAa;EACb,eAAe,CAAC;CAClB,CAAC;CACD,SAAS,YAAY;EACnB,MAAM;EACN,MAAM;EACN,aAAa;EACb,eAAe,CAAC;CAClB,CAAC;CACD,MAAM,YAAY;EAChB,MAAM;EACN,SAAS,CAAC,GAAG;EACb,MAAM;EACN,aAAa;EACb,eAAe,CAAC;CAClB,CAAC;CACD,gBAAgB,YAAY;EAC1B,MAAM;EACN,MAAM;EACN,aAAa;EACb,eAAe,CAAC;CAClB,CAAC;CACD,kBAAkB,YAAY;EAC5B,MAAM;EACN,MAAM;EACN,aACE;EACF,eAAe,CAAC;CAClB,CAAC;CACD,SAAS,YAAY;EACnB,MAAM;EACN,SAAS,CAAC,IAAI;EACd,MAAM;EACN,aAAa;EACb,eAAe,CAAC;CAClB,CAAC;CACD,SAAS,YAAY;EACnB,MAAM;EACN,MAAM;EACN,aAAa;EACb,eAAe,CAAC;CAClB,CAAC;CACD,aAAa,YAAY;EACvB,MAAM;EACN,SAAS,CAAC,SAAS;EACnB,MAAM;EACN,aAAa;EACb,eAAe,CAAC;CAClB,CAAC;CACD,OAAO,YAAY;EACjB,MAAM;EACN,MAAM;EACN,aAAa;EACb,eAAe,CAAC;CAClB,CAAC;CACD,QAAQ,YAAY;EAClB,MAAM;EACN,MAAM;EACN,aAAa;EACb,eAAe,CAAC;CAClB,CAAC;CACD,SAAS,YAAY;EACnB,MAAM;EACN,SAAS,CAAC,OAAO,GAAG;EACpB,MAAM;EACN,aAAa;EACb,eAAe,CAAC;CAClB,CAAC;CACD,WAAW,YAAY;EACrB,MAAM;EACN,SAAS,CAAC,QAAQ;EAClB,MAAM;EACN,aAAa;EACb,eAAe,CAAC;CAClB,CAAC;AACH;AAMA,MAAa,oBACX,wBAAwB,IACpB,yBACE,EAAE,KAAK,MAAM,GAAG,WAAW,KAAA,CAAM,oBAAoB"}
|