@powerlines/core 0.48.28 → 0.48.29
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/api-DTCbbtSH.d.cts +6 -0
- package/dist/api-DTCbbtSH.d.cts.map +1 -0
- package/dist/api-DTCbbtSH.d.mts +6 -0
- package/dist/api-DTCbbtSH.d.mts.map +1 -0
- package/dist/base-context-BmxgDD3S.d.mts +79 -0
- package/dist/base-context-BmxgDD3S.d.mts.map +1 -0
- package/dist/base-context-mHoSEqHf.d.cts +79 -0
- package/dist/base-context-mHoSEqHf.d.cts.map +1 -0
- package/dist/{_virtual/_rolldown/runtime.cjs → chunk-C_NdSu1c.cjs} +6 -23
- package/dist/commands-DzGd8pnR.d.cts +5 -0
- package/dist/commands-DzGd8pnR.d.cts.map +1 -0
- package/dist/commands-DzGd8pnR.d.mts +5 -0
- package/dist/commands-DzGd8pnR.d.mts.map +1 -0
- package/dist/config-BnV_o0Es.d.cts +2461 -0
- package/dist/config-BnV_o0Es.d.cts.map +1 -0
- package/dist/config-DKeDSykZ.d.cts +138 -0
- package/dist/config-DKeDSykZ.d.cts.map +1 -0
- package/dist/config-DbOP5nVu.d.mts +138 -0
- package/dist/config-DbOP5nVu.d.mts.map +1 -0
- package/dist/config-DboKmDhl.d.mts +2461 -0
- package/dist/config-DboKmDhl.d.mts.map +1 -0
- package/dist/constants/api.cjs +0 -8
- package/dist/constants/api.d.cts +2 -6
- package/dist/constants/api.d.mts +2 -8
- package/dist/constants/api.mjs +0 -8
- package/dist/constants/api.mjs.map +1 -1
- package/dist/constants/commands.cjs +0 -8
- package/dist/constants/commands.d.cts +2 -5
- package/dist/constants/commands.d.mts +2 -7
- package/dist/constants/commands.mjs +0 -8
- package/dist/constants/commands.mjs.map +1 -1
- package/dist/constants/devtools.cjs +0 -8
- package/dist/constants/devtools.d.cts +2 -13
- package/dist/constants/devtools.d.mts +2 -15
- package/dist/constants/devtools.mjs +0 -8
- package/dist/constants/devtools.mjs.map +1 -1
- package/dist/constants/environments.cjs +0 -8
- package/dist/constants/environments.d.cts +2 -10
- package/dist/constants/environments.d.mts +2 -12
- package/dist/constants/environments.mjs +0 -8
- package/dist/constants/environments.mjs.map +1 -1
- package/dist/constants/extensions.cjs +0 -8
- package/dist/constants/extensions.d.cts +2 -5
- package/dist/constants/extensions.d.mts +2 -7
- package/dist/constants/extensions.mjs +0 -8
- package/dist/constants/extensions.mjs.map +1 -1
- package/dist/constants/fs.cjs +0 -8
- package/dist/constants/fs.d.cts +2 -7
- package/dist/constants/fs.d.mts +2 -9
- package/dist/constants/fs.mjs +0 -8
- package/dist/constants/fs.mjs.map +1 -1
- package/dist/constants/hooks.cjs +0 -8
- package/dist/constants/hooks.d.cts +2 -5
- package/dist/constants/hooks.d.mts +2 -7
- package/dist/constants/hooks.mjs +0 -8
- package/dist/constants/hooks.mjs.map +1 -1
- package/dist/constants/index.cjs +0 -8
- package/dist/constants/index.d.cts +10 -10
- package/dist/constants/index.d.mts +10 -12
- package/dist/constants/index.mjs +0 -8
- package/dist/constants/log-level.cjs +0 -8
- package/dist/constants/log-level.d.cts +2 -67
- package/dist/constants/log-level.d.mts +2 -69
- package/dist/constants/log-level.mjs +0 -8
- package/dist/constants/log-level.mjs.map +1 -1
- package/dist/constants/meta.cjs +0 -8
- package/dist/constants/meta.d.cts +2 -6
- package/dist/constants/meta.d.mts +2 -8
- package/dist/constants/meta.mjs +0 -8
- package/dist/constants/meta.mjs.map +1 -1
- package/dist/constants/plugin.cjs +0 -8
- package/dist/constants/plugin.d.cts +2 -9
- package/dist/constants/plugin.d.mts +2 -11
- package/dist/constants/plugin.mjs +0 -8
- package/dist/constants/plugin.mjs.map +1 -1
- package/dist/context/base-context.cjs +3 -18
- package/dist/context/base-context.d.cts +2 -81
- package/dist/context/base-context.d.mts +2 -83
- package/dist/context/base-context.mjs +1 -11
- package/dist/context/base-context.mjs.map +1 -1
- package/dist/context/context.cjs +3 -18
- package/dist/context/context.d.cts +2 -373
- package/dist/context/context.d.mts +2 -375
- package/dist/context/context.mjs +1 -11
- package/dist/context/context.mjs.map +1 -1
- package/dist/context/environment-context.cjs +1 -17
- package/dist/context/environment-context.d.cts +2 -5
- package/dist/context/environment-context.d.cts.map +1 -1
- package/dist/context/environment-context.d.mts +2 -7
- package/dist/context/environment-context.d.mts.map +1 -1
- package/dist/context/environment-context.mjs +1 -11
- package/dist/context/environment-context.mjs.map +1 -1
- package/dist/context/execution-context.cjs +3 -18
- package/dist/context/execution-context.d.cts +2 -6
- package/dist/context/execution-context.d.cts.map +1 -1
- package/dist/context/execution-context.d.mts +2 -8
- package/dist/context/execution-context.d.mts.map +1 -1
- package/dist/context/execution-context.mjs +1 -11
- package/dist/context/execution-context.mjs.map +1 -1
- package/dist/context/index.cjs +0 -8
- package/dist/context/index.d.cts +2 -2
- package/dist/context/index.d.mts +2 -4
- package/dist/context/index.mjs +0 -8
- package/dist/context/plugin-context.cjs +1 -17
- package/dist/context/plugin-context.d.cts +1 -3
- package/dist/context/plugin-context.d.cts.map +1 -1
- package/dist/context/plugin-context.d.mts +1 -5
- package/dist/context/plugin-context.d.mts.map +1 -1
- package/dist/context/plugin-context.mjs +1 -11
- package/dist/context/plugin-context.mjs.map +1 -1
- package/dist/context-C6oL3mPw.d.mts +368 -0
- package/dist/context-C6oL3mPw.d.mts.map +1 -0
- package/dist/context-DcY6YqBQ.d.cts +368 -0
- package/dist/context-DcY6YqBQ.d.cts.map +1 -0
- package/dist/context-helpers-BKxpDArS.d.mts +15 -0
- package/dist/context-helpers-BKxpDArS.d.mts.map +1 -0
- package/dist/context-helpers-zXovPE7i.d.cts +15 -0
- package/dist/context-helpers-zXovPE7i.d.cts.map +1 -0
- package/dist/devtools-h0du-bSj.d.cts +13 -0
- package/dist/devtools-h0du-bSj.d.cts.map +1 -0
- package/dist/devtools-h0du-bSj.d.mts +13 -0
- package/dist/devtools-h0du-bSj.d.mts.map +1 -0
- package/dist/entry-BC_V2K2U.d.cts +46 -0
- package/dist/entry-BC_V2K2U.d.cts.map +1 -0
- package/dist/entry-CHIaWcmk.d.mts +46 -0
- package/dist/entry-CHIaWcmk.d.mts.map +1 -0
- package/dist/environments-BYv_kHRG.d.cts +10 -0
- package/dist/environments-BYv_kHRG.d.cts.map +1 -0
- package/dist/environments-BYv_kHRG.d.mts +10 -0
- package/dist/environments-BYv_kHRG.d.mts.map +1 -0
- package/dist/events-NA1XM2Vz.d.cts +10 -0
- package/dist/events-NA1XM2Vz.d.cts.map +1 -0
- package/dist/events-NA1XM2Vz.d.mts +10 -0
- package/dist/events-NA1XM2Vz.d.mts.map +1 -0
- package/dist/extensions-ctxXzgay.d.cts +5 -0
- package/dist/extensions-ctxXzgay.d.cts.map +1 -0
- package/dist/extensions-ctxXzgay.d.mts +5 -0
- package/dist/extensions-ctxXzgay.d.mts.map +1 -0
- package/dist/file-header-Co9oo7aI.d.cts +41 -0
- package/dist/file-header-Co9oo7aI.d.cts.map +1 -0
- package/dist/file-header-rHqeXgRV.d.mts +41 -0
- package/dist/file-header-rHqeXgRV.d.mts.map +1 -0
- package/dist/format-Cf-cgZ-s.d.cts +24 -0
- package/dist/format-Cf-cgZ-s.d.cts.map +1 -0
- package/dist/format-IQPqgWIe.d.mts +24 -0
- package/dist/format-IQPqgWIe.d.mts.map +1 -0
- package/dist/fs-BzXT5ZPj.d.cts +7 -0
- package/dist/fs-BzXT5ZPj.d.cts.map +1 -0
- package/dist/fs-BzXT5ZPj.d.mts +7 -0
- package/dist/fs-BzXT5ZPj.d.mts.map +1 -0
- package/dist/{schemas/fs.cjs → fs-C2lru696.cjs} +38 -16
- package/dist/{schemas/fs.mjs → fs-DqLn15uU.mjs} +2 -10
- package/dist/fs-DqLn15uU.mjs.map +1 -0
- package/dist/generate-types-CDkVosrS.d.cts +65 -0
- package/dist/generate-types-CDkVosrS.d.cts.map +1 -0
- package/dist/generate-types-Dw6p3cB_.d.mts +65 -0
- package/dist/generate-types-Dw6p3cB_.d.mts.map +1 -0
- package/dist/helpers-CrRRFQl5.d.mts +22 -0
- package/dist/helpers-CrRRFQl5.d.mts.map +1 -0
- package/dist/helpers-DBLIQW3U.d.cts +22 -0
- package/dist/helpers-DBLIQW3U.d.cts.map +1 -0
- package/dist/hooks-Dhc3ahex.d.cts +5 -0
- package/dist/hooks-Dhc3ahex.d.cts.map +1 -0
- package/dist/hooks-Dhc3ahex.d.mts +5 -0
- package/dist/hooks-Dhc3ahex.d.mts.map +1 -0
- package/dist/index-LtpXjuJR.d.mts +25 -0
- package/dist/index-LtpXjuJR.d.mts.map +1 -0
- package/dist/index-xk4vSgtB.d.cts +25 -0
- package/dist/index-xk4vSgtB.d.cts.map +1 -0
- package/dist/index.cjs +1 -9
- package/dist/index.d.cts +24 -32
- package/dist/index.d.mts +24 -34
- package/dist/index.mjs +1 -9
- package/dist/install-dependencies-CCjZfS9Y.d.mts +12 -0
- package/dist/install-dependencies-CCjZfS9Y.d.mts.map +1 -0
- package/dist/install-dependencies-CyeYsrfz.d.cts +12 -0
- package/dist/install-dependencies-CyeYsrfz.d.cts.map +1 -0
- package/dist/lib/config.cjs +2 -28
- package/dist/lib/config.d.cts +2 -140
- package/dist/lib/config.d.mts +2 -142
- package/dist/lib/config.mjs +1 -22
- package/dist/lib/config.mjs.map +1 -1
- package/dist/lib/context-helpers.cjs +0 -19
- package/dist/lib/context-helpers.d.cts +2 -16
- package/dist/lib/context-helpers.d.mts +2 -18
- package/dist/lib/context-helpers.mjs +1 -14
- package/dist/lib/context-helpers.mjs.map +1 -1
- package/dist/lib/entry.cjs +0 -24
- package/dist/lib/entry.d.cts +2 -47
- package/dist/lib/entry.d.mts +2 -49
- package/dist/lib/entry.mjs +1 -19
- package/dist/lib/entry.mjs.map +1 -1
- package/dist/lib/environment.cjs +2 -22
- package/dist/lib/environment.d.cts +1 -2
- package/dist/lib/environment.d.cts.map +1 -1
- package/dist/lib/environment.d.mts +1 -4
- package/dist/lib/environment.d.mts.map +1 -1
- package/dist/lib/environment.mjs +1 -16
- package/dist/lib/environment.mjs.map +1 -1
- package/dist/lib/events.cjs +1 -17
- package/dist/lib/events.d.cts +2 -10
- package/dist/lib/events.d.mts +2 -12
- package/dist/lib/events.mjs +1 -12
- package/dist/lib/events.mjs.map +1 -1
- package/dist/lib/generate-types.cjs +0 -20
- package/dist/lib/generate-types.d.cts +2 -66
- package/dist/lib/generate-types.d.mts +2 -68
- package/dist/lib/generate-types.mjs +1 -15
- package/dist/lib/generate-types.mjs.map +1 -1
- package/dist/lib/hooks.cjs +2 -22
- package/dist/lib/hooks.d.cts +2 -28
- package/dist/lib/hooks.d.mts +2 -30
- package/dist/lib/hooks.mjs +1 -16
- package/dist/lib/hooks.mjs.map +1 -1
- package/dist/lib/index.cjs +1 -9
- package/dist/lib/index.d.cts +23 -23
- package/dist/lib/index.d.mts +23 -25
- package/dist/lib/index.mjs +1 -9
- package/dist/lib/install-dependencies.cjs +1 -17
- package/dist/lib/install-dependencies.d.cts +2 -12
- package/dist/lib/install-dependencies.d.mts +2 -14
- package/dist/lib/install-dependencies.mjs +1 -11
- package/dist/lib/install-dependencies.mjs.map +1 -1
- package/dist/lib/meta.cjs +0 -8
- package/dist/lib/meta.d.cts +2 -33
- package/dist/lib/meta.d.mts +2 -35
- package/dist/lib/meta.mjs +0 -8
- package/dist/lib/meta.mjs.map +1 -1
- package/dist/lib/plugins.cjs +2 -21
- package/dist/lib/plugins.d.cts +2 -39
- package/dist/lib/plugins.d.mts +2 -41
- package/dist/lib/plugins.mjs +1 -15
- package/dist/lib/plugins.mjs.map +1 -1
- package/dist/lib/resolver.cjs +3 -18
- package/dist/lib/resolver.d.cts +2 -20
- package/dist/lib/resolver.d.mts +2 -22
- package/dist/lib/resolver.mjs +1 -11
- package/dist/lib/resolver.mjs.map +1 -1
- package/dist/lib/schemas.cjs +1 -9
- package/dist/lib/schemas.d.cts +1 -1
- package/dist/lib/schemas.d.mts +1 -3
- package/dist/lib/schemas.mjs +1 -9
- package/dist/lib/streaming-channel.cjs +1 -20
- package/dist/lib/streaming-channel.d.cts +2 -126
- package/dist/lib/streaming-channel.d.mts +2 -128
- package/dist/lib/streaming-channel.mjs +1 -14
- package/dist/lib/streaming-channel.mjs.map +1 -1
- package/dist/lib/typescript/index.cjs +0 -8
- package/dist/lib/typescript/index.d.cts +2 -2
- package/dist/lib/typescript/index.d.mts +2 -4
- package/dist/lib/typescript/index.mjs +0 -8
- package/dist/lib/typescript/ts-morph.cjs +3 -21
- package/dist/lib/typescript/ts-morph.d.cts +2 -38
- package/dist/lib/typescript/ts-morph.d.mts +2 -40
- package/dist/lib/typescript/ts-morph.mjs +1 -14
- package/dist/lib/typescript/ts-morph.mjs.map +1 -1
- package/dist/lib/typescript/tsconfig.cjs +5 -31
- package/dist/lib/typescript/tsconfig.d.cts +2 -77
- package/dist/lib/typescript/tsconfig.d.mts +2 -79
- package/dist/lib/typescript/tsconfig.mjs +1 -22
- package/dist/lib/typescript/tsconfig.mjs.map +1 -1
- package/dist/lib/unplugin/helpers.cjs +0 -19
- package/dist/lib/unplugin/helpers.d.cts +2 -23
- package/dist/lib/unplugin/helpers.d.mts +2 -25
- package/dist/lib/unplugin/helpers.mjs +1 -14
- package/dist/lib/unplugin/helpers.mjs.map +1 -1
- package/dist/lib/unplugin/index.cjs +0 -8
- package/dist/lib/unplugin/index.d.cts +3 -3
- package/dist/lib/unplugin/index.d.mts +3 -5
- package/dist/lib/unplugin/index.mjs +0 -8
- package/dist/lib/unplugin/module-resolution.cjs +3 -18
- package/dist/lib/unplugin/module-resolution.d.cts +2 -41
- package/dist/lib/unplugin/module-resolution.d.mts +2 -43
- package/dist/lib/unplugin/module-resolution.mjs +1 -11
- package/dist/lib/unplugin/module-resolution.mjs.map +1 -1
- package/dist/lib/unplugin/plugin.cjs +1 -20
- package/dist/lib/unplugin/plugin.d.cts +2 -40
- package/dist/lib/unplugin/plugin.d.mts +2 -42
- package/dist/lib/unplugin/plugin.mjs +1 -14
- package/dist/lib/unplugin/plugin.mjs.map +1 -1
- package/dist/lib/utilities/file-header.cjs +0 -21
- package/dist/lib/utilities/file-header.d.cts +2 -41
- package/dist/lib/utilities/file-header.d.mts +2 -43
- package/dist/lib/utilities/file-header.mjs +1 -16
- package/dist/lib/utilities/file-header.mjs.map +1 -1
- package/dist/lib/utilities/format.cjs +3 -21
- package/dist/lib/utilities/format.d.cts +2 -24
- package/dist/lib/utilities/format.d.mts +2 -26
- package/dist/lib/utilities/format.mjs +1 -14
- package/dist/lib/utilities/format.mjs.map +1 -1
- package/dist/lib/utilities/index.cjs +0 -8
- package/dist/lib/utilities/index.d.cts +5 -5
- package/dist/lib/utilities/index.d.mts +5 -7
- package/dist/lib/utilities/index.mjs +0 -8
- package/dist/lib/utilities/source-file.cjs +3 -22
- package/dist/lib/utilities/source-file.d.cts +2 -30
- package/dist/lib/utilities/source-file.d.mts +2 -32
- package/dist/lib/utilities/source-file.mjs +1 -15
- package/dist/lib/utilities/source-file.mjs.map +1 -1
- package/dist/lib/utilities/source-map.cjs +3 -18
- package/dist/lib/utilities/source-map.d.cts +2 -16
- package/dist/lib/utilities/source-map.d.mts +2 -18
- package/dist/lib/utilities/source-map.mjs +1 -11
- package/dist/lib/utilities/source-map.mjs.map +1 -1
- package/dist/lib/utilities/write-file.cjs +1 -17
- package/dist/lib/utilities/write-file.d.cts +2 -15
- package/dist/lib/utilities/write-file.d.mts +2 -17
- package/dist/lib/utilities/write-file.mjs +1 -11
- package/dist/lib/utilities/write-file.mjs.map +1 -1
- package/dist/lib/vfs.cjs +4 -19
- package/dist/lib/vfs.d.cts +2 -321
- package/dist/lib/vfs.d.mts +2 -323
- package/dist/lib/vfs.mjs +2 -12
- package/dist/lib/vfs.mjs.map +1 -1
- package/dist/log-level-BC8g4BBL.d.cts +67 -0
- package/dist/log-level-BC8g4BBL.d.cts.map +1 -0
- package/dist/log-level-BC8g4BBL.d.mts +67 -0
- package/dist/log-level-BC8g4BBL.d.mts.map +1 -0
- package/dist/meta-CdDd2ykC.d.cts +33 -0
- package/dist/meta-CdDd2ykC.d.cts.map +1 -0
- package/dist/meta-CfTCHU_o.d.mts +33 -0
- package/dist/meta-CfTCHU_o.d.mts.map +1 -0
- package/dist/meta-QA_SN1j3.d.cts +6 -0
- package/dist/meta-QA_SN1j3.d.cts.map +1 -0
- package/dist/meta-QA_SN1j3.d.mts +6 -0
- package/dist/meta-QA_SN1j3.d.mts.map +1 -0
- package/dist/module-resolution-CRMNPsdn.d.mts +40 -0
- package/dist/module-resolution-CRMNPsdn.d.mts.map +1 -0
- package/dist/module-resolution-D-w-EZaK.d.cts +40 -0
- package/dist/module-resolution-D-w-EZaK.d.cts.map +1 -0
- package/dist/plugin-B_b7XqaN.d.mts +39 -0
- package/dist/plugin-B_b7XqaN.d.mts.map +1 -0
- package/dist/plugin-CzV-aFwU.d.cts +39 -0
- package/dist/plugin-CzV-aFwU.d.cts.map +1 -0
- package/dist/plugin-base.cjs +1 -20
- package/dist/plugin-base.d.cts +1 -3
- package/dist/plugin-base.d.cts.map +1 -1
- package/dist/plugin-base.d.mts +1 -5
- package/dist/plugin-base.d.mts.map +1 -1
- package/dist/plugin-base.mjs +1 -14
- package/dist/plugin-base.mjs.map +1 -1
- package/dist/plugin-fhBG7SSQ.d.cts +9 -0
- package/dist/plugin-fhBG7SSQ.d.cts.map +1 -0
- package/dist/plugin-fhBG7SSQ.d.mts +9 -0
- package/dist/plugin-fhBG7SSQ.d.mts.map +1 -0
- package/dist/plugin-utils/build-helpers.cjs +0 -16
- package/dist/plugin-utils/build-helpers.d.cts +1 -2
- package/dist/plugin-utils/build-helpers.d.cts.map +1 -1
- package/dist/plugin-utils/build-helpers.d.mts +1 -4
- package/dist/plugin-utils/build-helpers.d.mts.map +1 -1
- package/dist/plugin-utils/build-helpers.mjs +1 -11
- package/dist/plugin-utils/build-helpers.mjs.map +1 -1
- package/dist/plugin-utils/combine-plugins.cjs +1 -20
- package/dist/plugin-utils/combine-plugins.d.cts +1 -1
- package/dist/plugin-utils/combine-plugins.d.mts +1 -3
- package/dist/plugin-utils/combine-plugins.d.mts.map +1 -1
- package/dist/plugin-utils/combine-plugins.mjs +1 -14
- package/dist/plugin-utils/combine-plugins.mjs.map +1 -1
- package/dist/plugin-utils/context-helpers.cjs +0 -21
- package/dist/plugin-utils/context-helpers.d.cts +1 -1
- package/dist/plugin-utils/context-helpers.d.mts +1 -3
- package/dist/plugin-utils/context-helpers.d.mts.map +1 -1
- package/dist/plugin-utils/context-helpers.mjs +1 -16
- package/dist/plugin-utils/context-helpers.mjs.map +1 -1
- package/dist/plugin-utils/docs-helper.cjs +0 -16
- package/dist/plugin-utils/docs-helper.d.mts +0 -2
- package/dist/plugin-utils/docs-helper.d.mts.map +1 -1
- package/dist/plugin-utils/docs-helper.mjs +1 -11
- package/dist/plugin-utils/docs-helper.mjs.map +1 -1
- package/dist/plugin-utils/enable-plugin.cjs +1 -17
- package/dist/plugin-utils/enable-plugin.d.cts +1 -2
- package/dist/plugin-utils/enable-plugin.d.cts.map +1 -1
- package/dist/plugin-utils/enable-plugin.d.mts +1 -4
- package/dist/plugin-utils/enable-plugin.d.mts.map +1 -1
- package/dist/plugin-utils/enable-plugin.mjs +1 -11
- package/dist/plugin-utils/enable-plugin.mjs.map +1 -1
- package/dist/plugin-utils/extend.cjs +1 -17
- package/dist/plugin-utils/extend.d.cts +1 -3
- package/dist/plugin-utils/extend.d.cts.map +1 -1
- package/dist/plugin-utils/extend.d.mts +1 -5
- package/dist/plugin-utils/extend.d.mts.map +1 -1
- package/dist/plugin-utils/extend.mjs +1 -11
- package/dist/plugin-utils/extend.mjs.map +1 -1
- package/dist/plugin-utils/filter.cjs +2 -27
- package/dist/plugin-utils/filter.d.cts +1 -1
- package/dist/plugin-utils/filter.d.mts +1 -3
- package/dist/plugin-utils/filter.d.mts.map +1 -1
- package/dist/plugin-utils/filter.mjs +1 -21
- package/dist/plugin-utils/filter.mjs.map +1 -1
- package/dist/plugin-utils/format-package-json.cjs +1 -17
- package/dist/plugin-utils/format-package-json.d.cts +1 -1
- package/dist/plugin-utils/format-package-json.d.mts +1 -3
- package/dist/plugin-utils/format-package-json.d.mts.map +1 -1
- package/dist/plugin-utils/format-package-json.mjs +1 -11
- package/dist/plugin-utils/format-package-json.mjs.map +1 -1
- package/dist/plugin-utils/format.cjs +1 -17
- package/dist/plugin-utils/format.d.mts +0 -2
- package/dist/plugin-utils/format.d.mts.map +1 -1
- package/dist/plugin-utils/format.mjs +1 -11
- package/dist/plugin-utils/format.mjs.map +1 -1
- package/dist/plugin-utils/get-config-path.cjs +1 -17
- package/dist/plugin-utils/get-config-path.d.cts +1 -1
- package/dist/plugin-utils/get-config-path.d.mts +1 -3
- package/dist/plugin-utils/get-config-path.d.mts.map +1 -1
- package/dist/plugin-utils/get-config-path.mjs +1 -11
- package/dist/plugin-utils/get-config-path.mjs.map +1 -1
- package/dist/plugin-utils/helpers.cjs +0 -33
- package/dist/plugin-utils/helpers.d.cts +1 -5
- package/dist/plugin-utils/helpers.d.cts.map +1 -1
- package/dist/plugin-utils/helpers.d.mts +1 -7
- package/dist/plugin-utils/helpers.d.mts.map +1 -1
- package/dist/plugin-utils/helpers.mjs +1 -28
- package/dist/plugin-utils/helpers.mjs.map +1 -1
- package/dist/plugin-utils/index.cjs +0 -8
- package/dist/plugin-utils/index.d.mts +0 -2
- package/dist/plugin-utils/index.mjs +0 -8
- package/dist/plugin-utils/install.cjs +1 -20
- package/dist/plugin-utils/install.d.cts +1 -1
- package/dist/plugin-utils/install.d.mts +1 -3
- package/dist/plugin-utils/install.d.mts.map +1 -1
- package/dist/plugin-utils/install.mjs +1 -14
- package/dist/plugin-utils/install.mjs.map +1 -1
- package/dist/plugin-utils/logging.cjs +2 -34
- package/dist/plugin-utils/logging.d.cts +1 -3
- package/dist/plugin-utils/logging.d.cts.map +1 -1
- package/dist/plugin-utils/logging.d.mts +1 -5
- package/dist/plugin-utils/logging.d.mts.map +1 -1
- package/dist/plugin-utils/logging.mjs +1 -28
- package/dist/plugin-utils/logging.mjs.map +1 -1
- package/dist/plugin-utils/merge.cjs +3 -21
- package/dist/plugin-utils/merge.d.cts +1 -3
- package/dist/plugin-utils/merge.d.cts.map +1 -1
- package/dist/plugin-utils/merge.d.mts +1 -5
- package/dist/plugin-utils/merge.d.mts.map +1 -1
- package/dist/plugin-utils/merge.mjs +1 -14
- package/dist/plugin-utils/merge.mjs.map +1 -1
- package/dist/plugin-utils/modules.cjs +1 -17
- package/dist/plugin-utils/modules.d.cts +1 -1
- package/dist/plugin-utils/modules.d.mts +1 -3
- package/dist/plugin-utils/modules.d.mts.map +1 -1
- package/dist/plugin-utils/modules.mjs +1 -12
- package/dist/plugin-utils/modules.mjs.map +1 -1
- package/dist/plugin-utils/paths.cjs +0 -16
- package/dist/plugin-utils/paths.d.cts +1 -1
- package/dist/plugin-utils/paths.d.mts +1 -3
- package/dist/plugin-utils/paths.d.mts.map +1 -1
- package/dist/plugin-utils/paths.mjs +1 -11
- package/dist/plugin-utils/paths.mjs.map +1 -1
- package/dist/plugin-utils/virtual.cjs +1 -25
- package/dist/plugin-utils/virtual.d.mts +0 -2
- package/dist/plugin-utils/virtual.d.mts.map +1 -1
- package/dist/plugin-utils/virtual.mjs +1 -20
- package/dist/plugin-utils/virtual.mjs.map +1 -1
- package/dist/plugins-DfL1fBZi.d.cts +37 -0
- package/dist/plugins-DfL1fBZi.d.cts.map +1 -0
- package/dist/plugins-zG2X2LA8.d.mts +37 -0
- package/dist/plugins-zG2X2LA8.d.mts.map +1 -0
- package/dist/resolver-CdBAh8dA.d.mts +19 -0
- package/dist/resolver-CdBAh8dA.d.mts.map +1 -0
- package/dist/resolver-CfCl--Eh.d.cts +19 -0
- package/dist/resolver-CfCl--Eh.d.cts.map +1 -0
- package/dist/{schemas/fs.d.cts → schemas-Zvqwdrw_.d.cts} +2 -2
- package/dist/schemas-Zvqwdrw_.d.cts.map +1 -0
- package/dist/{schemas/fs.d.mts → schemas-Zvqwdrw_.d.mts} +2 -4
- package/dist/schemas-Zvqwdrw_.d.mts.map +1 -0
- package/dist/source-file-CLw13fKE.d.mts +30 -0
- package/dist/source-file-CLw13fKE.d.mts.map +1 -0
- package/dist/source-file-CuuHaBL5.d.cts +30 -0
- package/dist/source-file-CuuHaBL5.d.cts.map +1 -0
- package/dist/source-map-Cy0aqSpe.d.mts +16 -0
- package/dist/source-map-Cy0aqSpe.d.mts.map +1 -0
- package/dist/source-map-HU4IoICc.d.cts +16 -0
- package/dist/source-map-HU4IoICc.d.cts.map +1 -0
- package/dist/storage/base.cjs +1 -17
- package/dist/storage/base.d.cts +1 -2
- package/dist/storage/base.d.cts.map +1 -1
- package/dist/storage/base.d.mts +1 -4
- package/dist/storage/base.d.mts.map +1 -1
- package/dist/storage/base.mjs +1 -11
- package/dist/storage/base.mjs.map +1 -1
- package/dist/storage/file-system.cjs +1 -17
- package/dist/storage/file-system.d.cts +1 -1
- package/dist/storage/file-system.d.mts +1 -3
- package/dist/storage/file-system.d.mts.map +1 -1
- package/dist/storage/file-system.mjs +1 -11
- package/dist/storage/file-system.mjs.map +1 -1
- package/dist/storage/helpers.cjs +0 -20
- package/dist/storage/helpers.d.mts +0 -2
- package/dist/storage/helpers.d.mts.map +1 -1
- package/dist/storage/helpers.mjs +1 -15
- package/dist/storage/helpers.mjs.map +1 -1
- package/dist/storage/index.cjs +0 -8
- package/dist/storage/index.d.mts +0 -2
- package/dist/storage/index.mjs +0 -8
- package/dist/storage/virtual.cjs +1 -17
- package/dist/storage/virtual.d.cts +1 -1
- package/dist/storage/virtual.d.mts +1 -3
- package/dist/storage/virtual.d.mts.map +1 -1
- package/dist/storage/virtual.mjs +1 -11
- package/dist/storage/virtual.mjs.map +1 -1
- package/dist/streaming-channel-CiyFd_6l.d.cts +126 -0
- package/dist/streaming-channel-CiyFd_6l.d.cts.map +1 -0
- package/dist/streaming-channel-CiyFd_6l.d.mts +126 -0
- package/dist/streaming-channel-CiyFd_6l.d.mts.map +1 -0
- package/dist/ts-morph-BGgjbOgM.d.cts +38 -0
- package/dist/ts-morph-BGgjbOgM.d.cts.map +1 -0
- package/dist/ts-morph-zLvdifpA.d.mts +38 -0
- package/dist/ts-morph-zLvdifpA.d.mts.map +1 -0
- package/dist/tsconfig-DExoZEQ0.d.cts +75 -0
- package/dist/tsconfig-DExoZEQ0.d.cts.map +1 -0
- package/dist/tsconfig-De09cBeX.d.mts +75 -0
- package/dist/tsconfig-De09cBeX.d.mts.map +1 -0
- package/dist/vfs-B9Vhnajc.d.cts +320 -0
- package/dist/vfs-B9Vhnajc.d.cts.map +1 -0
- package/dist/vfs-Dl6nPqdS.d.mts +320 -0
- package/dist/vfs-Dl6nPqdS.d.mts.map +1 -0
- package/dist/write-file-BVMnXVPo.d.cts +15 -0
- package/dist/write-file-BVMnXVPo.d.cts.map +1 -0
- package/dist/write-file-CWf9Xxwd.d.mts +15 -0
- package/dist/write-file-CWf9Xxwd.d.mts.map +1 -0
- package/package.json +2 -242
- package/dist/_virtual/_rolldown/runtime.mjs +0 -26
- package/dist/constants/api.d.cts.map +0 -1
- package/dist/constants/api.d.mts.map +0 -1
- package/dist/constants/api.test.cjs +0 -42
- package/dist/constants/api.test.d.mts +0 -2
- package/dist/constants/api.test.mjs +0 -44
- package/dist/constants/api.test.mjs.map +0 -1
- package/dist/constants/commands.d.cts.map +0 -1
- package/dist/constants/commands.d.mts.map +0 -1
- package/dist/constants/commands.test.cjs +0 -29
- package/dist/constants/commands.test.d.mts +0 -2
- package/dist/constants/commands.test.mjs +0 -31
- package/dist/constants/commands.test.mjs.map +0 -1
- package/dist/constants/devtools.d.cts.map +0 -1
- package/dist/constants/devtools.d.mts.map +0 -1
- package/dist/constants/devtools.test.cjs +0 -46
- package/dist/constants/devtools.test.d.mts +0 -2
- package/dist/constants/devtools.test.mjs +0 -48
- package/dist/constants/devtools.test.mjs.map +0 -1
- package/dist/constants/environments.d.cts.map +0 -1
- package/dist/constants/environments.d.mts.map +0 -1
- package/dist/constants/environments.test.cjs +0 -34
- package/dist/constants/environments.test.d.mts +0 -2
- package/dist/constants/environments.test.mjs +0 -36
- package/dist/constants/environments.test.mjs.map +0 -1
- package/dist/constants/extensions.d.cts.map +0 -1
- package/dist/constants/extensions.d.mts.map +0 -1
- package/dist/constants/extensions.test.cjs +0 -35
- package/dist/constants/extensions.test.d.mts +0 -2
- package/dist/constants/extensions.test.mjs +0 -37
- package/dist/constants/extensions.test.mjs.map +0 -1
- package/dist/constants/fs.d.cts.map +0 -1
- package/dist/constants/fs.d.mts.map +0 -1
- package/dist/constants/fs.test.cjs +0 -34
- package/dist/constants/fs.test.d.mts +0 -2
- package/dist/constants/fs.test.mjs +0 -36
- package/dist/constants/fs.test.mjs.map +0 -1
- package/dist/constants/hooks.d.cts.map +0 -1
- package/dist/constants/hooks.d.mts.map +0 -1
- package/dist/constants/hooks.test.cjs +0 -29
- package/dist/constants/hooks.test.d.mts +0 -2
- package/dist/constants/hooks.test.mjs +0 -31
- package/dist/constants/hooks.test.mjs.map +0 -1
- package/dist/constants/log-level.d.cts.map +0 -1
- package/dist/constants/log-level.d.mts.map +0 -1
- package/dist/constants/log-level.test.cjs +0 -76
- package/dist/constants/log-level.test.d.mts +0 -2
- package/dist/constants/log-level.test.mjs +0 -78
- package/dist/constants/log-level.test.mjs.map +0 -1
- package/dist/constants/meta.d.cts.map +0 -1
- package/dist/constants/meta.d.mts.map +0 -1
- package/dist/constants/meta.test.cjs +0 -33
- package/dist/constants/meta.test.d.mts +0 -2
- package/dist/constants/meta.test.mjs +0 -35
- package/dist/constants/meta.test.mjs.map +0 -1
- package/dist/constants/plugin.d.cts.map +0 -1
- package/dist/constants/plugin.d.mts.map +0 -1
- package/dist/constants/plugin.test.cjs +0 -59
- package/dist/constants/plugin.test.d.mts +0 -2
- package/dist/constants/plugin.test.mjs +0 -61
- package/dist/constants/plugin.test.mjs.map +0 -1
- package/dist/context/base-context.d.cts.map +0 -1
- package/dist/context/base-context.d.mts.map +0 -1
- package/dist/context/base-context.test.cjs +0 -23
- package/dist/context/base-context.test.d.cts +0 -1
- package/dist/context/base-context.test.d.mts +0 -2
- package/dist/context/base-context.test.mjs +0 -25
- package/dist/context/base-context.test.mjs.map +0 -1
- package/dist/context/context.d.cts.map +0 -1
- package/dist/context/context.d.mts.map +0 -1
- package/dist/context/context.test.cjs +0 -23
- package/dist/context/context.test.d.cts +0 -1
- package/dist/context/context.test.d.mts +0 -2
- package/dist/context/context.test.mjs +0 -25
- package/dist/context/context.test.mjs.map +0 -1
- package/dist/context/environment-context.test.cjs +0 -23
- package/dist/context/environment-context.test.d.cts +0 -1
- package/dist/context/environment-context.test.d.mts +0 -2
- package/dist/context/environment-context.test.mjs +0 -25
- package/dist/context/environment-context.test.mjs.map +0 -1
- package/dist/context/execution-context.test.cjs +0 -23
- package/dist/context/execution-context.test.d.cts +0 -1
- package/dist/context/execution-context.test.d.mts +0 -2
- package/dist/context/execution-context.test.mjs +0 -25
- package/dist/context/execution-context.test.mjs.map +0 -1
- package/dist/context/plugin-context.test.cjs +0 -23
- package/dist/context/plugin-context.test.d.cts +0 -1
- package/dist/context/plugin-context.test.d.mts +0 -2
- package/dist/context/plugin-context.test.mjs +0 -25
- package/dist/context/plugin-context.test.mjs.map +0 -1
- package/dist/lib/config.d.cts.map +0 -1
- package/dist/lib/config.d.mts.map +0 -1
- package/dist/lib/config.test.cjs +0 -23
- package/dist/lib/config.test.d.cts +0 -1
- package/dist/lib/config.test.d.mts +0 -2
- package/dist/lib/config.test.mjs +0 -25
- package/dist/lib/config.test.mjs.map +0 -1
- package/dist/lib/context-helpers.d.cts.map +0 -1
- package/dist/lib/context-helpers.d.mts.map +0 -1
- package/dist/lib/context-helpers.test.cjs +0 -23
- package/dist/lib/context-helpers.test.d.cts +0 -1
- package/dist/lib/context-helpers.test.d.mts +0 -2
- package/dist/lib/context-helpers.test.mjs +0 -25
- package/dist/lib/context-helpers.test.mjs.map +0 -1
- package/dist/lib/entry.d.cts.map +0 -1
- package/dist/lib/entry.d.mts.map +0 -1
- package/dist/lib/entry.test.cjs +0 -23
- package/dist/lib/entry.test.d.cts +0 -1
- package/dist/lib/entry.test.d.mts +0 -2
- package/dist/lib/entry.test.mjs +0 -25
- package/dist/lib/entry.test.mjs.map +0 -1
- package/dist/lib/environment.test.cjs +0 -23
- package/dist/lib/environment.test.d.cts +0 -1
- package/dist/lib/environment.test.d.mts +0 -2
- package/dist/lib/environment.test.mjs +0 -25
- package/dist/lib/environment.test.mjs.map +0 -1
- package/dist/lib/events.d.cts.map +0 -1
- package/dist/lib/events.d.mts.map +0 -1
- package/dist/lib/events.test.cjs +0 -23
- package/dist/lib/events.test.d.cts +0 -1
- package/dist/lib/events.test.d.mts +0 -2
- package/dist/lib/events.test.mjs +0 -25
- package/dist/lib/events.test.mjs.map +0 -1
- package/dist/lib/generate-types.d.cts.map +0 -1
- package/dist/lib/generate-types.d.mts.map +0 -1
- package/dist/lib/generate-types.test.cjs +0 -23
- package/dist/lib/generate-types.test.d.cts +0 -1
- package/dist/lib/generate-types.test.d.mts +0 -2
- package/dist/lib/generate-types.test.mjs +0 -25
- package/dist/lib/generate-types.test.mjs.map +0 -1
- package/dist/lib/hooks.d.cts.map +0 -1
- package/dist/lib/hooks.d.mts.map +0 -1
- package/dist/lib/hooks.test.cjs +0 -23
- package/dist/lib/hooks.test.d.cts +0 -1
- package/dist/lib/hooks.test.d.mts +0 -2
- package/dist/lib/hooks.test.mjs +0 -25
- package/dist/lib/hooks.test.mjs.map +0 -1
- package/dist/lib/install-dependencies.d.cts.map +0 -1
- package/dist/lib/install-dependencies.d.mts.map +0 -1
- package/dist/lib/install-dependencies.test.cjs +0 -23
- package/dist/lib/install-dependencies.test.d.cts +0 -1
- package/dist/lib/install-dependencies.test.d.mts +0 -2
- package/dist/lib/install-dependencies.test.mjs +0 -25
- package/dist/lib/install-dependencies.test.mjs.map +0 -1
- package/dist/lib/meta.d.cts.map +0 -1
- package/dist/lib/meta.d.mts.map +0 -1
- package/dist/lib/meta.test.cjs +0 -35
- package/dist/lib/meta.test.d.cts +0 -1
- package/dist/lib/meta.test.d.mts +0 -2
- package/dist/lib/meta.test.mjs +0 -37
- package/dist/lib/meta.test.mjs.map +0 -1
- package/dist/lib/plugins.d.cts.map +0 -1
- package/dist/lib/plugins.d.mts.map +0 -1
- package/dist/lib/plugins.test.cjs +0 -23
- package/dist/lib/plugins.test.d.cts +0 -1
- package/dist/lib/plugins.test.d.mts +0 -2
- package/dist/lib/plugins.test.mjs +0 -25
- package/dist/lib/plugins.test.mjs.map +0 -1
- package/dist/lib/resolver.d.cts.map +0 -1
- package/dist/lib/resolver.d.mts.map +0 -1
- package/dist/lib/resolver.test.cjs +0 -23
- package/dist/lib/resolver.test.d.cts +0 -1
- package/dist/lib/resolver.test.d.mts +0 -2
- package/dist/lib/resolver.test.mjs +0 -25
- package/dist/lib/resolver.test.mjs.map +0 -1
- package/dist/lib/streaming-channel.d.cts.map +0 -1
- package/dist/lib/streaming-channel.d.mts.map +0 -1
- package/dist/lib/streaming-channel.test.cjs +0 -23
- package/dist/lib/streaming-channel.test.d.cts +0 -1
- package/dist/lib/streaming-channel.test.d.mts +0 -2
- package/dist/lib/streaming-channel.test.mjs +0 -25
- package/dist/lib/streaming-channel.test.mjs.map +0 -1
- package/dist/lib/typescript/ts-morph.d.cts.map +0 -1
- package/dist/lib/typescript/ts-morph.d.mts.map +0 -1
- package/dist/lib/typescript/ts-morph.test.cjs +0 -23
- package/dist/lib/typescript/ts-morph.test.d.cts +0 -1
- package/dist/lib/typescript/ts-morph.test.d.mts +0 -2
- package/dist/lib/typescript/ts-morph.test.mjs +0 -25
- package/dist/lib/typescript/ts-morph.test.mjs.map +0 -1
- package/dist/lib/typescript/tsconfig.d.cts.map +0 -1
- package/dist/lib/typescript/tsconfig.d.mts.map +0 -1
- package/dist/lib/typescript/tsconfig.test.cjs +0 -23
- package/dist/lib/typescript/tsconfig.test.d.cts +0 -1
- package/dist/lib/typescript/tsconfig.test.d.mts +0 -2
- package/dist/lib/typescript/tsconfig.test.mjs +0 -25
- package/dist/lib/typescript/tsconfig.test.mjs.map +0 -1
- package/dist/lib/unplugin/helpers.d.cts.map +0 -1
- package/dist/lib/unplugin/helpers.d.mts.map +0 -1
- package/dist/lib/unplugin/helpers.test.cjs +0 -23
- package/dist/lib/unplugin/helpers.test.d.cts +0 -1
- package/dist/lib/unplugin/helpers.test.d.mts +0 -2
- package/dist/lib/unplugin/helpers.test.mjs +0 -25
- package/dist/lib/unplugin/helpers.test.mjs.map +0 -1
- package/dist/lib/unplugin/module-resolution.d.cts.map +0 -1
- package/dist/lib/unplugin/module-resolution.d.mts.map +0 -1
- package/dist/lib/unplugin/module-resolution.test.cjs +0 -23
- package/dist/lib/unplugin/module-resolution.test.d.cts +0 -1
- package/dist/lib/unplugin/module-resolution.test.d.mts +0 -2
- package/dist/lib/unplugin/module-resolution.test.mjs +0 -25
- package/dist/lib/unplugin/module-resolution.test.mjs.map +0 -1
- package/dist/lib/unplugin/plugin.d.cts.map +0 -1
- package/dist/lib/unplugin/plugin.d.mts.map +0 -1
- package/dist/lib/unplugin/plugin.test.cjs +0 -23
- package/dist/lib/unplugin/plugin.test.d.cts +0 -1
- package/dist/lib/unplugin/plugin.test.d.mts +0 -2
- package/dist/lib/unplugin/plugin.test.mjs +0 -25
- package/dist/lib/unplugin/plugin.test.mjs.map +0 -1
- package/dist/lib/utilities/file-header.d.cts.map +0 -1
- package/dist/lib/utilities/file-header.d.mts.map +0 -1
- package/dist/lib/utilities/file-header.test.cjs +0 -23
- package/dist/lib/utilities/file-header.test.d.cts +0 -1
- package/dist/lib/utilities/file-header.test.d.mts +0 -2
- package/dist/lib/utilities/file-header.test.mjs +0 -25
- package/dist/lib/utilities/file-header.test.mjs.map +0 -1
- package/dist/lib/utilities/format.d.cts.map +0 -1
- package/dist/lib/utilities/format.d.mts.map +0 -1
- package/dist/lib/utilities/format.test.cjs +0 -23
- package/dist/lib/utilities/format.test.d.cts +0 -1
- package/dist/lib/utilities/format.test.d.mts +0 -2
- package/dist/lib/utilities/format.test.mjs +0 -25
- package/dist/lib/utilities/format.test.mjs.map +0 -1
- package/dist/lib/utilities/source-file.d.cts.map +0 -1
- package/dist/lib/utilities/source-file.d.mts.map +0 -1
- package/dist/lib/utilities/source-file.test.cjs +0 -23
- package/dist/lib/utilities/source-file.test.d.cts +0 -1
- package/dist/lib/utilities/source-file.test.d.mts +0 -2
- package/dist/lib/utilities/source-file.test.mjs +0 -25
- package/dist/lib/utilities/source-file.test.mjs.map +0 -1
- package/dist/lib/utilities/source-map.d.cts.map +0 -1
- package/dist/lib/utilities/source-map.d.mts.map +0 -1
- package/dist/lib/utilities/source-map.test.cjs +0 -23
- package/dist/lib/utilities/source-map.test.d.cts +0 -1
- package/dist/lib/utilities/source-map.test.d.mts +0 -2
- package/dist/lib/utilities/source-map.test.mjs +0 -25
- package/dist/lib/utilities/source-map.test.mjs.map +0 -1
- package/dist/lib/utilities/write-file.d.cts.map +0 -1
- package/dist/lib/utilities/write-file.d.mts.map +0 -1
- package/dist/lib/utilities/write-file.test.cjs +0 -23
- package/dist/lib/utilities/write-file.test.d.cts +0 -1
- package/dist/lib/utilities/write-file.test.d.mts +0 -2
- package/dist/lib/utilities/write-file.test.mjs +0 -25
- package/dist/lib/utilities/write-file.test.mjs.map +0 -1
- package/dist/lib/vfs.d.cts.map +0 -1
- package/dist/lib/vfs.d.mts.map +0 -1
- package/dist/lib/vfs.test.cjs +0 -23
- package/dist/lib/vfs.test.d.cts +0 -1
- package/dist/lib/vfs.test.d.mts +0 -2
- package/dist/lib/vfs.test.mjs +0 -25
- package/dist/lib/vfs.test.mjs.map +0 -1
- package/dist/plugin-base.test.cjs +0 -23
- package/dist/plugin-base.test.d.cts +0 -1
- package/dist/plugin-base.test.d.mts +0 -2
- package/dist/plugin-base.test.mjs +0 -25
- package/dist/plugin-base.test.mjs.map +0 -1
- package/dist/plugin-utils/build-helpers.test.cjs +0 -23
- package/dist/plugin-utils/build-helpers.test.d.cts +0 -1
- package/dist/plugin-utils/build-helpers.test.d.mts +0 -2
- package/dist/plugin-utils/build-helpers.test.mjs +0 -25
- package/dist/plugin-utils/build-helpers.test.mjs.map +0 -1
- package/dist/plugin-utils/combine-plugins.test.cjs +0 -23
- package/dist/plugin-utils/combine-plugins.test.d.cts +0 -1
- package/dist/plugin-utils/combine-plugins.test.d.mts +0 -2
- package/dist/plugin-utils/combine-plugins.test.mjs +0 -25
- package/dist/plugin-utils/combine-plugins.test.mjs.map +0 -1
- package/dist/plugin-utils/context-helpers.test.cjs +0 -23
- package/dist/plugin-utils/context-helpers.test.d.cts +0 -1
- package/dist/plugin-utils/context-helpers.test.d.mts +0 -2
- package/dist/plugin-utils/context-helpers.test.mjs +0 -25
- package/dist/plugin-utils/context-helpers.test.mjs.map +0 -1
- package/dist/plugin-utils/docs-helper.test.cjs +0 -23
- package/dist/plugin-utils/docs-helper.test.d.cts +0 -1
- package/dist/plugin-utils/docs-helper.test.d.mts +0 -2
- package/dist/plugin-utils/docs-helper.test.mjs +0 -25
- package/dist/plugin-utils/docs-helper.test.mjs.map +0 -1
- package/dist/plugin-utils/enable-plugin.test.cjs +0 -23
- package/dist/plugin-utils/enable-plugin.test.d.cts +0 -1
- package/dist/plugin-utils/enable-plugin.test.d.mts +0 -2
- package/dist/plugin-utils/enable-plugin.test.mjs +0 -25
- package/dist/plugin-utils/enable-plugin.test.mjs.map +0 -1
- package/dist/plugin-utils/extend.test.cjs +0 -23
- package/dist/plugin-utils/extend.test.d.cts +0 -1
- package/dist/plugin-utils/extend.test.d.mts +0 -2
- package/dist/plugin-utils/extend.test.mjs +0 -25
- package/dist/plugin-utils/extend.test.mjs.map +0 -1
- package/dist/plugin-utils/filter.test.cjs +0 -23
- package/dist/plugin-utils/filter.test.d.cts +0 -1
- package/dist/plugin-utils/filter.test.d.mts +0 -2
- package/dist/plugin-utils/filter.test.mjs +0 -25
- package/dist/plugin-utils/filter.test.mjs.map +0 -1
- package/dist/plugin-utils/format-package-json.test.cjs +0 -23
- package/dist/plugin-utils/format-package-json.test.d.cts +0 -1
- package/dist/plugin-utils/format-package-json.test.d.mts +0 -2
- package/dist/plugin-utils/format-package-json.test.mjs +0 -25
- package/dist/plugin-utils/format-package-json.test.mjs.map +0 -1
- package/dist/plugin-utils/format.test.cjs +0 -23
- package/dist/plugin-utils/format.test.d.cts +0 -1
- package/dist/plugin-utils/format.test.d.mts +0 -2
- package/dist/plugin-utils/format.test.mjs +0 -25
- package/dist/plugin-utils/format.test.mjs.map +0 -1
- package/dist/plugin-utils/get-config-path.test.cjs +0 -23
- package/dist/plugin-utils/get-config-path.test.d.cts +0 -1
- package/dist/plugin-utils/get-config-path.test.d.mts +0 -2
- package/dist/plugin-utils/get-config-path.test.mjs +0 -25
- package/dist/plugin-utils/get-config-path.test.mjs.map +0 -1
- package/dist/plugin-utils/helpers.test.cjs +0 -23
- package/dist/plugin-utils/helpers.test.d.cts +0 -1
- package/dist/plugin-utils/helpers.test.d.mts +0 -2
- package/dist/plugin-utils/helpers.test.mjs +0 -25
- package/dist/plugin-utils/helpers.test.mjs.map +0 -1
- package/dist/plugin-utils/install.test.cjs +0 -23
- package/dist/plugin-utils/install.test.d.cts +0 -1
- package/dist/plugin-utils/install.test.d.mts +0 -2
- package/dist/plugin-utils/install.test.mjs +0 -25
- package/dist/plugin-utils/install.test.mjs.map +0 -1
- package/dist/plugin-utils/logging.test.cjs +0 -23
- package/dist/plugin-utils/logging.test.d.cts +0 -1
- package/dist/plugin-utils/logging.test.d.mts +0 -2
- package/dist/plugin-utils/logging.test.mjs +0 -25
- package/dist/plugin-utils/logging.test.mjs.map +0 -1
- package/dist/plugin-utils/merge.test.cjs +0 -23
- package/dist/plugin-utils/merge.test.d.cts +0 -1
- package/dist/plugin-utils/merge.test.d.mts +0 -2
- package/dist/plugin-utils/merge.test.mjs +0 -25
- package/dist/plugin-utils/merge.test.mjs.map +0 -1
- package/dist/plugin-utils/modules.test.cjs +0 -23
- package/dist/plugin-utils/modules.test.d.cts +0 -1
- package/dist/plugin-utils/modules.test.d.mts +0 -2
- package/dist/plugin-utils/modules.test.mjs +0 -25
- package/dist/plugin-utils/modules.test.mjs.map +0 -1
- package/dist/plugin-utils/paths.test.cjs +0 -23
- package/dist/plugin-utils/paths.test.d.cts +0 -1
- package/dist/plugin-utils/paths.test.d.mts +0 -2
- package/dist/plugin-utils/paths.test.mjs +0 -25
- package/dist/plugin-utils/paths.test.mjs.map +0 -1
- package/dist/plugin-utils/virtual.test.cjs +0 -23
- package/dist/plugin-utils/virtual.test.d.cts +0 -1
- package/dist/plugin-utils/virtual.test.d.mts +0 -2
- package/dist/plugin-utils/virtual.test.mjs +0 -25
- package/dist/plugin-utils/virtual.test.mjs.map +0 -1
- package/dist/schemas/fs.d.cts.map +0 -1
- package/dist/schemas/fs.d.mts.map +0 -1
- package/dist/schemas/fs.mjs.map +0 -1
- package/dist/storage/base.test.cjs +0 -23
- package/dist/storage/base.test.d.cts +0 -1
- package/dist/storage/base.test.d.mts +0 -2
- package/dist/storage/base.test.mjs +0 -25
- package/dist/storage/base.test.mjs.map +0 -1
- package/dist/storage/file-system.test.cjs +0 -23
- package/dist/storage/file-system.test.d.cts +0 -1
- package/dist/storage/file-system.test.d.mts +0 -2
- package/dist/storage/file-system.test.mjs +0 -25
- package/dist/storage/file-system.test.mjs.map +0 -1
- package/dist/storage/helpers.test.cjs +0 -23
- package/dist/storage/helpers.test.d.cts +0 -1
- package/dist/storage/helpers.test.d.mts +0 -2
- package/dist/storage/helpers.test.mjs +0 -25
- package/dist/storage/helpers.test.mjs.map +0 -1
- package/dist/storage/virtual.test.cjs +0 -23
- package/dist/storage/virtual.test.d.cts +0 -1
- package/dist/storage/virtual.test.d.mts +0 -2
- package/dist/storage/virtual.test.mjs +0 -25
- package/dist/storage/virtual.test.mjs.map +0 -1
- package/dist/types/api.d.cts +0 -16
- package/dist/types/api.d.cts.map +0 -1
- package/dist/types/api.d.mts +0 -18
- package/dist/types/api.d.mts.map +0 -1
- package/dist/types/config.d.cts +0 -739
- package/dist/types/config.d.cts.map +0 -1
- package/dist/types/config.d.mts +0 -741
- package/dist/types/config.d.mts.map +0 -1
- package/dist/types/context.d.cts +0 -682
- package/dist/types/context.d.cts.map +0 -1
- package/dist/types/context.d.mts +0 -684
- package/dist/types/context.d.mts.map +0 -1
- package/dist/types/fs.d.cts +0 -538
- package/dist/types/fs.d.cts.map +0 -1
- package/dist/types/fs.d.mts +0 -540
- package/dist/types/fs.d.mts.map +0 -1
- package/dist/types/hooks.d.cts +0 -96
- package/dist/types/hooks.d.cts.map +0 -1
- package/dist/types/hooks.d.mts +0 -98
- package/dist/types/hooks.d.mts.map +0 -1
- package/dist/types/index.d.cts +0 -9
- package/dist/types/index.d.mts +0 -11
- package/dist/types/logging.d.cts +0 -145
- package/dist/types/logging.d.cts.map +0 -1
- package/dist/types/logging.d.mts +0 -147
- package/dist/types/logging.d.mts.map +0 -1
- package/dist/types/plugin.d.cts +0 -207
- package/dist/types/plugin.d.cts.map +0 -1
- package/dist/types/plugin.d.mts +0 -209
- package/dist/types/plugin.d.mts.map +0 -1
- package/dist/types/tsconfig.d.cts +0 -73
- package/dist/types/tsconfig.d.cts.map +0 -1
- package/dist/types/tsconfig.d.mts +0 -75
- package/dist/types/tsconfig.d.mts.map +0 -1
- package/dist/types/unplugin.d.cts +0 -22
- package/dist/types/unplugin.d.cts.map +0 -1
- package/dist/types/unplugin.d.mts +0 -24
- package/dist/types/unplugin.d.mts.map +0 -1
- /package/dist/{constants/api.test.d.cts → index-BKZ67WMa.d.cts} +0 -0
- /package/dist/{constants/commands.test.d.cts → index-BKZ67WMa.d.mts} +0 -0
- /package/dist/{constants/devtools.test.d.cts → index-BVVgDSdq.d.cts} +0 -0
- /package/dist/{constants/environments.test.d.cts → index-BVVgDSdq.d.mts} +0 -0
- /package/dist/{constants/extensions.test.d.cts → index-Den-MsLx.d.cts} +0 -0
- /package/dist/{constants/fs.test.d.cts → index-Den-MsLx.d.mts} +0 -0
- /package/dist/{constants/hooks.test.d.cts → index-DmtQKWjk.d.cts} +0 -0
- /package/dist/{constants/log-level.test.d.cts → index-DmtQKWjk.d.mts} +0 -0
- /package/dist/{constants/meta.test.d.cts → index-_6s0AX1B.d.cts} +0 -0
- /package/dist/{constants/plugin.test.d.cts → index-_6s0AX1B.d.mts} +0 -0
|
@@ -1,12 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import __tsdown_shims_path from 'node:path'
|
|
4
|
-
import __tsdown_shims_url from 'node:url'
|
|
5
|
-
|
|
6
|
-
const __TSDOWN_SHIM_FILENAME__ = /* @__PURE__ */ __tsdown_shims_url.fileURLToPath(import.meta.url)
|
|
7
|
-
const __TSDOWN_SHIM_DIRNAME__ = /* @__PURE__ */ __tsdown_shims_path.dirname(__TSDOWN_SHIM_FILENAME__)
|
|
8
|
-
|
|
9
|
-
import { __exportAll } from "../_virtual/_rolldown/runtime.mjs";
|
|
10
1
|
import { format } from "./utilities/format.mjs";
|
|
11
2
|
import { callHook } from "./hooks.mjs";
|
|
12
3
|
import { createProgram } from "./typescript/ts-morph.mjs";
|
|
@@ -26,11 +17,6 @@ import { prettyBytes } from "@stryke/string-format/pretty-bytes";
|
|
|
26
17
|
import { DiagnosticCategory, Node, Project } from "ts-morph";
|
|
27
18
|
|
|
28
19
|
//#region src/lib/generate-types.ts
|
|
29
|
-
var generate_types_exports = /* @__PURE__ */ __exportAll({
|
|
30
|
-
emitBuiltinTypes: () => emitBuiltinTypes,
|
|
31
|
-
formatTypes: () => formatTypes,
|
|
32
|
-
handleTypes: () => handleTypes
|
|
33
|
-
});
|
|
34
20
|
/**
|
|
35
21
|
* Formats the generated TypeScript types source code.
|
|
36
22
|
*
|
|
@@ -378,5 +364,5 @@ ${formatTypes(code)}
|
|
|
378
364
|
}
|
|
379
365
|
|
|
380
366
|
//#endregion
|
|
381
|
-
export { emitBuiltinTypes, formatTypes,
|
|
367
|
+
export { emitBuiltinTypes, formatTypes, handleTypes };
|
|
382
368
|
//# sourceMappingURL=generate-types.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-types.mjs","names":[],"sources":["../../src/lib/generate-types.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { toArray } from \"@stryke/convert/to-array\";\nimport { resolvePackage } from \"@stryke/fs/resolve\";\nimport { getUnique } from \"@stryke/helpers/get-unique\";\nimport { appendPath } from \"@stryke/path/append\";\nimport { findFileName } from \"@stryke/path/file-path-fns\";\nimport { isParentPath } from \"@stryke/path/is-parent-path\";\nimport { replaceExtension, replacePath } from \"@stryke/path/replace\";\nimport { prettyBytes } from \"@stryke/string-format/pretty-bytes\";\nimport { isObject } from \"@stryke/type-checks/is-object\";\nimport { isSetObject } from \"@stryke/type-checks/is-set-object\";\nimport { isSetString } from \"@stryke/type-checks/is-set-string\";\nimport { isString } from \"@stryke/type-checks/is-string\";\nimport { DiagnosticCategory, Node, Project, SourceFile } from \"ts-morph\";\nimport { ResolvedConfig } from \"../types/config\";\nimport {\n Context,\n EnvironmentContext,\n ExecutionContext\n} from \"../types/context\";\nimport { TypesResult } from \"../types/plugin\";\nimport { callHook } from \"./hooks\";\nimport { createProgram } from \"./typescript/ts-morph\";\nimport { getTypescriptFileHeader } from \"./utilities/file-header\";\nimport { format } from \"./utilities/format\";\n\ninterface ModuleExportSpecifier {\n name: string;\n alias?: string;\n default?: boolean;\n type?: boolean;\n}\n\ninterface ModuleReference {\n name?: string;\n specifiers?: ModuleExportSpecifier[];\n all?: boolean;\n}\n\ninterface ImportModuleReference extends ModuleReference {\n name: string;\n ambient?: boolean;\n}\n\ninterface ExportModuleReference extends ModuleReference {\n text: string;\n fullText: string;\n comment?: string;\n}\n\ninterface ModuleDeclaration {\n name: string;\n text: string;\n sourceFile: SourceFile;\n comment?: string;\n exports: (ExportModuleReference | string)[];\n imports: ImportModuleReference[];\n}\n\nexport interface TypegenContext {\n context: Context;\n emitted: Map<string, string>;\n modules: ModuleDeclaration[];\n}\n\n/**\n * Formats the generated TypeScript types source code.\n *\n * @param code - The generated TypeScript code.\n * @returns The formatted TypeScript code.\n */\nexport function formatTypes(code = \"\"): string {\n return code.replaceAll(\"#private;\", \"\").replace(/__Ω/g, \"\");\n}\n\nasync function extractModuleDeclarations(\n ctx: TypegenContext,\n filePath: string,\n name: string,\n text: string\n): Promise<ModuleDeclaration> {\n const imports: ImportModuleReference[] = [];\n const exports: (ExportModuleReference | string)[] = [];\n\n const comment = text\n .match(\n new RegExp(\n `\\\\/\\\\*\\\\*(?s:.)*?@module\\\\s+${\n ctx.context.config.framework?.name ?? \"powerlines\"\n }:${name}(?s:.)*?\\\\*\\\\/\\\\s+`\n )\n )\n ?.find(comment => isSetString(comment?.trim()));\n\n // Parse the emitted .d.ts content using an in-memory ts-morph project\n const project = new Project({ useInMemoryFileSystem: true });\n const sourceFile = project.createSourceFile(\"module.d.ts\", text);\n\n // Collect /// <reference types=\"...\" /> directives as ambient dependencies\n for (const ref of sourceFile.getTypeReferenceDirectives()) {\n if (\n ref.getFileName() &&\n !ctx.context.builtins.some(builtin => ref.getFileName().endsWith(builtin))\n ) {\n imports.push({\n name: ref.getFileName(),\n ambient: true\n });\n }\n }\n\n for (const statement of sourceFile.getStatements()) {\n // --- Import declarations ---\n if (Node.isImportDeclaration(statement)) {\n const moduleSpec = statement.getModuleSpecifierValue();\n\n // Namespace import: import * as X from '...'\n if (statement.getNamespaceImport()) {\n imports.push({\n name: moduleSpec,\n specifiers: [\n {\n name: statement.getNamespaceImport()!.getText()\n }\n ],\n all: true\n });\n }\n\n // Named imports: import X from '...' or import { A, B as C } from '...'\n else if (\n statement.getNamedImports().length > 0 ||\n statement.getDefaultImport()\n ) {\n const specifiers: ModuleExportSpecifier[] = [];\n if (statement.getDefaultImport()) {\n specifiers.push({\n name: statement.getDefaultImport()!.getText(),\n default: true,\n type: statement.isTypeOnly()\n });\n }\n\n statement.getNamedImports().forEach(named => {\n specifiers.push({\n name: named.getName(),\n alias: named.getAliasNode()?.getText(),\n type: statement.isTypeOnly()\n });\n });\n\n imports.push({\n name: moduleSpec,\n specifiers\n });\n }\n }\n\n // --- Export declarations ---\n else if (Node.isExportDeclaration(statement)) {\n const moduleSpec = statement.getModuleSpecifierValue();\n if (moduleSpec) {\n // Resolve the module specifier\n let resolvedSpec = moduleSpec;\n if (!ctx.context.builtins.includes(moduleSpec)) {\n if (ctx.emitted.has(moduleSpec)) {\n resolvedSpec = ctx.emitted.get(moduleSpec)!;\n } else {\n const resolvedModule = await ctx.context.resolve(\n moduleSpec,\n filePath\n );\n if (isSetString(resolvedModule?.id)) {\n resolvedSpec = resolvedModule.id;\n }\n }\n }\n\n // Re-export from another module\n const namedExports = statement.getNamedExports();\n if (namedExports.length > 0) {\n exports.push({\n name: resolvedSpec,\n text: statement.getText(),\n fullText: statement.getFullText(),\n specifiers: namedExports.map(named => ({\n name: named.getName(),\n alias: named.getAliasNode()?.getText(),\n type: statement.isTypeOnly()\n })),\n comment: statement\n .getLeadingCommentRanges()\n .filter(\n c =>\n isSetString(c.getText().trim()) &&\n !c.getText().includes(\"@module\")\n )\n .map(c => c.getText().trim())\n .join(\"\\n\")\n .trim()\n });\n } else {\n // export * from '...'\n exports.push({\n name: resolvedSpec,\n text: statement.getText(),\n fullText: statement.getFullText(),\n all: true,\n comment: statement\n .getLeadingCommentRanges()\n .filter(\n c =>\n isSetString(c.getText().trim()) &&\n !c.getText().includes(\"@module\")\n )\n .map(c => c.getText().trim())\n .join(\"\\n\")\n .trim()\n });\n }\n } else {\n const specifiers = statement.getNamedExports().map(named => ({\n name: named.getName(),\n alias: named.getAliasNode()?.getText(),\n type: statement.isTypeOnly()\n }));\n if (specifiers.length > 0) {\n exports.push({\n text: statement.getText(),\n fullText: statement.getFullText(),\n specifiers,\n comment: statement\n .getLeadingCommentRanges()\n .filter(\n c =>\n isSetString(c.getText().trim()) &&\n !c.getText().includes(\"@module\")\n )\n .map(c => c.getText().trim())\n .join(\"\\n\")\n });\n }\n }\n }\n\n // --- Export assignments (export default ...) ---\n else if (Node.isExportAssignment(statement)) {\n exports.push({\n text: statement.getText(),\n fullText: statement.getFullText(),\n comment: statement\n .getLeadingCommentRanges()\n .filter(\n c =>\n isSetString(c.getText().trim()) &&\n !c.getText().includes(\"@module\")\n )\n .map(c => c.getText().trim())\n .join(\"\\n\")\n });\n }\n\n // --- Function declarations (export declare function ...) ---\n else if (\n Node.isFunctionDeclaration(statement) &&\n statement.isExported() &&\n statement.getNameNode()\n ) {\n exports.push({\n text: statement.getText(),\n fullText: statement.getFullText(),\n specifiers: [\n {\n name: statement.getNameNode()!.getText()\n }\n ],\n comment: statement\n .getLeadingCommentRanges()\n .filter(\n c =>\n isSetString(c.getText().trim()) &&\n !c.getText().includes(\"@module\")\n )\n .map(c => c.getText().trim())\n .join(\"\\n\")\n });\n }\n\n // --- Variable statements (export declare const ...) ---\n else if (Node.isVariableStatement(statement) && statement.isExported()) {\n exports.push({\n text: statement.getText(),\n fullText: statement.getFullText(),\n specifiers: statement\n .getDeclarationList()\n .getDeclarations()\n .filter(\n decl => decl.getNameNode() && Node.isIdentifier(decl.getNameNode())\n )\n .map(decl => ({ name: decl.getNameNode().getText() })),\n comment: statement\n .getLeadingCommentRanges()\n .filter(\n c =>\n isSetString(c.getText().trim()) &&\n !c.getText().includes(\"@module\")\n )\n .map(c => c.getText().trim())\n .join(\"\\n\")\n });\n }\n\n // --- Class declarations (export declare class ...) ---\n else if (Node.isClassDeclaration(statement) && statement.isExported()) {\n const nameNode = statement.getNameNode();\n exports.push({\n text: statement.getText(),\n fullText: statement.getFullText(),\n specifiers: nameNode ? [{ name: nameNode.getText() }] : undefined,\n comment: statement\n .getLeadingCommentRanges()\n .filter(\n c =>\n isSetString(c.getText().trim()) &&\n !c.getText().includes(\"@module\")\n )\n .map(c => c.getText().trim())\n .join(\"\\n\")\n });\n }\n\n // --- Interface declarations (export declare interface ...) ---\n else if (Node.isInterfaceDeclaration(statement) && statement.isExported()) {\n const nameNode = statement.getNameNode();\n exports.push({\n text: statement.getText(),\n fullText: statement.getFullText(),\n specifiers: nameNode ? [{ name: nameNode.getText() }] : undefined,\n comment: statement\n .getLeadingCommentRanges()\n .filter(\n c =>\n isSetString(c.getText().trim()) &&\n !c.getText().includes(\"@module\")\n )\n .map(c => c.getText().trim())\n .join(\"\\n\")\n });\n }\n\n // --- Type alias declarations (export declare type ...) ---\n else if (Node.isTypeAliasDeclaration(statement) && statement.isExported()) {\n const nameNode = statement.getNameNode();\n exports.push({\n text: statement.getText(),\n fullText: statement.getFullText(),\n specifiers: nameNode ? [{ name: nameNode.getText() }] : undefined,\n comment: statement\n .getLeadingCommentRanges()\n .filter(\n c =>\n isSetString(c.getText().trim()) &&\n !c.getText().includes(\"@module\")\n )\n .map(c => c.getText().trim())\n .join(\"\\n\")\n });\n }\n\n // --- All other statements (declarations) ---\n else if (\n ctx.context.config.output.sourceMap ||\n !statement.getFullText().includes(\"//# sourceMappingURL=\")\n ) {\n exports.push({\n text: statement.getText(),\n fullText: statement.getFullText(),\n comment: statement\n .getLeadingCommentRanges()\n .filter(\n c =>\n isSetString(c.getText().trim()) &&\n !c.getText().includes(\"@module\")\n )\n .map(c => c.getText().trim())\n .join(\"\\n\")\n });\n }\n }\n\n return {\n name,\n text,\n sourceFile,\n comment,\n imports,\n exports\n };\n}\n\n/**\n * Emits TypeScript declaration types for the provided files using the given TypeScript configuration.\n *\n * @param context - The context containing options and environment paths.\n * @param files - The list of files to generate types for.\n * @returns A promise that resolves to the generated TypeScript declaration types.\n */\nexport async function emitBuiltinTypes<TContext extends Context>(\n context: TContext,\n files: string[]\n): Promise<{ code: string; directives: string[] }> {\n if (files.length === 0) {\n context.debug(\n \"No files provided for TypeScript types generation. Typescript compilation for built-in modules will be skipped.\"\n );\n return { code: \"\", directives: [] };\n }\n\n context.debug(\n `Running the TypeScript compiler for ${\n files.length\n } generated built-in module files.`\n );\n\n const program = createProgram(context, {\n skipAddingFilesFromTsConfig: true,\n compilerOptions: {\n declaration: true,\n declarationMap: false,\n emitDeclarationOnly: true,\n sourceMap: false,\n outDir: replacePath(context.builtinsPath, context.config.cwd),\n composite: false,\n incremental: false,\n tsBuildInfoFile: undefined\n }\n });\n\n program.addSourceFilesAtPaths(files);\n const emitResult = program.emitToMemory({ emitOnlyDtsFiles: true });\n\n const diagnostics = emitResult.getDiagnostics();\n if (diagnostics && diagnostics.length > 0) {\n if (diagnostics.some(d => d.getCategory() === DiagnosticCategory.Error)) {\n throw new Error(\n `The Typescript emit process failed while generating built-in types: \\n ${diagnostics\n .filter(d => d.getCategory() === DiagnosticCategory.Error)\n .map(\n d =>\n `-${d.getSourceFile() ? `${d.getSourceFile()?.getFilePath()}:` : \"\"} ${String(\n d.getMessageText()\n )} (at ${d.getStart()}:${d.getLength()})`\n )\n .join(\"\\n\")}`\n );\n } else if (\n diagnostics.some(d => d.getCategory() === DiagnosticCategory.Warning)\n ) {\n context.warn(\n `The Typescript emit process completed with warnings while generating built-in types: \\n ${diagnostics\n .filter(d => d.getCategory() === DiagnosticCategory.Warning)\n .map(\n d =>\n `-${d.getSourceFile() ? `${d.getSourceFile()?.getFilePath()}:` : \"\"} ${String(\n d.getMessageText()\n )} (at ${d.getStart()}:${d.getLength()})`\n )\n .join(\"\\n\")}`\n );\n } else {\n context.debug(\n `The Typescript emit process completed with diagnostic messages while generating built-in types: \\n ${diagnostics\n .map(\n d =>\n `-${d.getSourceFile() ? `${d.getSourceFile()?.getFilePath()}:` : \"\"} ${String(\n d.getMessageText()\n )} (at ${d.getStart()}:${d.getLength()})`\n )\n .join(\"\\n\")}`\n );\n }\n }\n\n const emittedFiles = emitResult.getFiles();\n context.debug(\n `The TypeScript compiler emitted ${\n emittedFiles.length\n } files for built-in types.`\n );\n\n if (emittedFiles.length === 0) {\n context.warn(\n \"The TypeScript compiler did not emit any files for built-in types. This may indicate an issue with the TypeScript configuration or the provided files.\"\n );\n return { code: \"\", directives: [] };\n }\n\n const ctx = {\n context,\n modules: [] as ModuleDeclaration[],\n emitted: new Map<string, string>()\n };\n\n await Promise.all(\n emittedFiles.map(async emittedFile => {\n const filePath = appendPath(emittedFile.filePath, context.config.cwd);\n if (\n !filePath.endsWith(\".map\") &&\n findFileName(filePath) !== \"tsconfig.tsbuildinfo\" &&\n isParentPath(filePath, context.builtinsPath)\n ) {\n const moduleName = replaceExtension(\n replacePath(\n replacePath(filePath, context.builtinsPath),\n replacePath(context.builtinsPath, context.config.cwd)\n ),\n \"\",\n {\n fullExtension: true\n }\n );\n if (context.builtins.includes(moduleName)) {\n ctx.emitted.set(filePath, moduleName);\n ctx.modules.push(\n await extractModuleDeclarations(\n ctx,\n filePath,\n moduleName,\n emittedFile.text\n )\n );\n }\n }\n })\n );\n\n const commonDeclarations = [] as ExportModuleReference[];\n for (const mod of ctx.modules) {\n for (const importRef of mod.imports.filter(importRef =>\n context.builtins.some(builtin => importRef.name.endsWith(`:${builtin}`))\n )) {\n const moduleRef = ctx.modules.find(moduleRef =>\n importRef.name.endsWith(`:${moduleRef.name}`)\n );\n if (moduleRef) {\n let declaration: ExportModuleReference | undefined;\n for (const decl of moduleRef.exports.filter(decl =>\n isSetObject(decl)\n )) {\n const specifiers = decl.specifiers?.filter(specifier =>\n importRef.specifiers?.some(\n s =>\n (specifier.alias ? specifier.alias : specifier.name) ===\n (s.alias ? s.alias : s.name)\n )\n );\n if (specifiers && specifiers.length > 0) {\n importRef.specifiers = importRef.specifiers?.filter(\n s =>\n !specifiers.some(\n specifier =>\n (specifier.alias ? specifier.alias : specifier.name) ===\n (s.alias ? s.alias : s.name)\n )\n );\n if (\n importRef.specifiers &&\n importRef.specifiers.length === 0 &&\n !importRef.all &&\n !importRef.ambient\n ) {\n mod.imports = mod.imports.filter(\n imp => imp.name !== importRef.name\n );\n }\n\n declaration = decl;\n break;\n }\n }\n\n if (declaration) {\n for (const decl of moduleRef.exports.filter(\n decl =>\n isSetObject(decl) &&\n !decl.specifiers?.some(s =>\n declaration?.specifiers?.some(\n specifier =>\n (specifier.alias ? specifier.alias : specifier.name) ===\n (s.alias ? s.alias : s.name)\n )\n )\n )) {\n const exportModuleRef = decl as ExportModuleReference;\n if (\n (exportModuleRef.specifiers?.some(s => s.alias || s.name) ||\n exportModuleRef.name) &&\n new RegExp(\n `(^|\\\\s|\\\\n|\\\\r\\\\n|\\\\(|\\\\)|<|>|{|}|\\\\[|\\\\]|\\\\!|\\\\?|\\\\.|,|\\\\*|&|:)(${\n exportModuleRef.specifiers\n ?.map(s => `${s.alias ? `${s.alias}|` : \"\"}${s.name}`)\n .join(\"|\") || exportModuleRef.name\n })($|\\\\s|\\\\n|\\\\r\\\\n|\\\\(|\\\\)|<|>|{|}|\\\\[|\\\\]|\\\\!|\\\\?|\\\\.|,|\\\\*|&|:|;)`\n ).test(declaration.text)\n ) {\n commonDeclarations.push(exportModuleRef);\n }\n }\n commonDeclarations.push(declaration);\n }\n }\n }\n }\n\n let code = \"\";\n const directives: string[] = [];\n\n for (const commonDeclaration of commonDeclarations) {\n code += formatTypes(\n `${\n commonDeclaration.comment?.trim()\n ? commonDeclaration.comment.trim()\n : \"\"\n }${commonDeclaration.comment?.trim() ? \"\\n\" : \"\"}${formatTypes(\n commonDeclaration.text\n .replace(/\\s*export\\s*/, \"\")\n .replace(/\\s*declare\\s*interface\\s*/, \"interface \")\n .replace(/\\s*declare\\s*type\\s*/, \"type \")\n )}`\n );\n code += \"\\n\\n\";\n }\n\n for (const mod of ctx.modules) {\n code += mod.comment ? `${mod.comment.trim()}\\n` : \"\";\n code += `declare module \"${context.config.framework?.name ?? \"powerlines\"}:${mod.name}\" { \\n`;\n for (const importRef of mod.imports) {\n if (importRef.ambient) {\n code += directives.push(importRef.name);\n } else if (importRef.all) {\n code += `\\timport * as ${findFileName(importRef.name)} from \"${importRef.name}\";\\n`;\n } else if (importRef.specifiers) {\n const typeOnly = importRef.specifiers.every(s => s.type) ? \" type\" : \"\";\n const specifiers = importRef.specifiers\n .map(s => (s.alias ? `${s.name} as ${s.alias}` : s.name))\n .join(\", \");\n code += `\\timport${typeOnly} { ${specifiers} } from \"${importRef.name}\";\\n`;\n }\n }\n\n if (mod.imports.length > 0) {\n code += \"\\n\";\n }\n\n for (const exportRef of mod.exports.filter(\n e =>\n isString(e) ||\n !e.specifiers ||\n !commonDeclarations.some(\n commonDecl =>\n commonDecl.specifiers &&\n commonDecl.specifiers.some(specifier =>\n e.specifiers?.some(\n s =>\n (s.alias ? s.alias : s.name) ===\n (specifier.alias ? specifier.alias : specifier.name)\n )\n )\n )\n )) {\n if (isSetString(exportRef)) {\n code += `${exportRef}\\n`;\n } else if (exportRef.name) {\n if (exportRef.all) {\n code += `${\n exportRef.comment?.trim() ? exportRef.comment.trim() : \"\"\n }${\n exportRef.comment?.trim() ? \"\\n\" : \"\"\n }export * from \"${exportRef.name}\";\\n`;\n } else if (exportRef.specifiers) {\n if (exportRef.comment?.trim()) {\n code += `${exportRef.comment.trim()}\\n`;\n }\n\n code += `\\texport${\n exportRef.specifiers.every(s => s.type) ? \" type\" : \"\"\n } { ${exportRef.specifiers\n .map(s => (s.alias ? `${s.name} as ${s.alias}` : s.name))\n .join(\", \")} } from \"${exportRef.name}\";\\n`;\n }\n } else {\n code += `${exportRef.comment?.trim() ? exportRef.comment.trim() : \"\"}${\n exportRef.comment?.trim() ? \"\\n\" : \"\"\n }${formatTypes(\n exportRef.text\n .replace(/\\s*export\\s*declare\\s*/, \"export \")\n .replace(/\\s*declare\\s*/, \" \")\n )}\\n`;\n }\n }\n\n mod.exports\n .filter(\n e =>\n !isString(e) &&\n e.specifiers &&\n commonDeclarations.some(\n commonDeclaration =>\n commonDeclaration.specifiers &&\n commonDeclaration.specifiers.some(specifier =>\n e.specifiers?.some(\n s =>\n (s.alias ? s.alias : s.name) ===\n (specifier.alias ? specifier.alias : specifier.name)\n )\n )\n )\n )\n .forEach((e, i, arr) => {\n if (i === 0) {\n code += \"\\nexport { \";\n } else {\n code += \", \";\n }\n\n code += `${\n (e as ExportModuleReference)?.specifiers\n ?.filter(s =>\n commonDeclarations.some(\n commonDeclaration =>\n commonDeclaration.specifiers &&\n commonDeclaration.specifiers.some(\n specifier =>\n (s.alias ? s.alias : s.name) ===\n (specifier.alias ? specifier.alias : specifier.name)\n )\n )\n )\n .map(s => (s.alias ? `${s.name} as ${s.alias}` : s.name))\n .join(\", \") || \"\"\n }`;\n\n if (i === arr.length - 1) {\n code += ` };\\n`;\n }\n });\n\n code += \"}\";\n code += \"\\n\\n\";\n }\n\n code = await format(context, context.typesPath, code);\n\n context.debug(\n `A TypeScript declaration file (size: ${prettyBytes(\n new Blob(toArray(code)).size\n )}) emitted for the built-in modules types.`\n );\n\n return { code, directives };\n}\n\n/**\n * Generate the Powerlines TypeScript declaration file\n *\n * @param context - The execution context for generating the TypeScript declaration file, which provides access to the project configuration, environment, and utility functions for performing the generation. The context is used to manage the state and behavior of the generation process, allowing for hooks to be called at different stages and for environment-specific configurations to be applied.\n * @param env - The environment context to use for generating the TypeScript declaration file\n */\nexport async function handleTypes<\n TResolvedConfig extends ResolvedConfig,\n TSystemContext = unknown\n>(\n context: ExecutionContext<TResolvedConfig, TSystemContext>,\n env: EnvironmentContext<TResolvedConfig, TSystemContext>\n) {\n env.debug(`Preparing the TypeScript definitions for the Powerlines project.`);\n\n if (env.fs.existsSync(env.typesPath)) {\n await env.fs.remove(env.typesPath);\n }\n\n const typescriptPath = await resolvePackage(\"typescript\");\n if (!typescriptPath) {\n throw new Error(\n \"Could not resolve TypeScript package location. Please ensure TypeScript is installed.\"\n );\n }\n\n env.debug(\"Running TypeScript compiler for built-in runtime module files.\");\n\n let { code, directives } = await emitBuiltinTypes(\n env,\n (await env.getBuiltins()).reduce<string[]>((ret, builtin) => {\n const formatted = replacePath(builtin.path, env.config.cwd);\n if (!ret.includes(formatted)) {\n ret.push(formatted);\n }\n\n return ret;\n }, [])\n );\n\n env.debug(`Generating TypeScript declaration file ${env.typesPath}.`);\n\n const merge = async (\n currentResult: string | TypesResult,\n previousResult: string | TypesResult\n ): Promise<string | TypesResult> => {\n if (\n !isSetString(currentResult) &&\n !isSetObject(currentResult) &&\n !isSetString(previousResult) &&\n !isSetObject(previousResult)\n ) {\n return { code, directives };\n }\n\n const previous = (\n await format(\n env,\n env.typesPath,\n isSetString(previousResult)\n ? previousResult\n : isSetObject(previousResult)\n ? previousResult.code\n : \"\"\n )\n )\n .trim()\n .replace(code, \"\")\n .trim();\n const current = (\n await format(\n env,\n env.typesPath,\n isSetString(currentResult)\n ? currentResult\n : isSetObject(currentResult)\n ? currentResult.code\n : \"\"\n )\n )\n .trim()\n .replace(previous, \"\")\n .trim()\n .replace(code, \"\")\n .trim();\n\n return {\n directives: [\n ...(isSetObject(currentResult) && currentResult.directives\n ? currentResult.directives\n : []),\n ...(isSetObject(previousResult) && previousResult.directives\n ? previousResult.directives\n : [])\n ],\n code: await format(\n env,\n env.typesPath,\n `${\n !previous.includes(getTypescriptFileHeader(env)) &&\n !current.includes(getTypescriptFileHeader(env))\n ? `${code}\\n`\n : \"\"\n }${previous}\\n${current}`.trim()\n )\n };\n };\n const asNextParam = (\n previousResult: string | TypesResult | null | undefined\n ) => (isObject(previousResult) ? previousResult.code : previousResult);\n\n let result = await callHook(\n context,\n \"types\",\n {\n environment: env,\n sequential: true,\n order: \"pre\",\n result: \"merge\",\n merge,\n asNextParam\n },\n code\n );\n if (result) {\n if (isSetObject(result)) {\n code = result.code;\n if (Array.isArray(result.directives) && result.directives.length > 0) {\n directives = getUnique([...directives, ...result.directives]).filter(\n Boolean\n );\n }\n } else if (isSetString(result)) {\n code = result;\n }\n }\n\n result = await callHook(\n context,\n \"types\",\n {\n environment: env,\n sequential: true,\n order: \"normal\",\n result: \"merge\",\n merge,\n asNextParam\n },\n code\n );\n if (result) {\n if (isSetObject(result)) {\n code = result.code;\n if (Array.isArray(result.directives) && result.directives.length > 0) {\n directives = getUnique([...directives, ...result.directives]).filter(\n Boolean\n );\n }\n } else if (isSetString(result)) {\n code = result;\n }\n }\n\n result = await callHook(\n context,\n \"types\",\n {\n environment: env,\n sequential: true,\n order: \"post\",\n result: \"merge\",\n merge,\n asNextParam\n },\n code\n );\n if (result) {\n if (isSetObject(result)) {\n code = result.code;\n if (Array.isArray(result.directives) && result.directives.length > 0) {\n directives = getUnique([...directives, ...result.directives]).filter(\n Boolean\n );\n }\n } else if (isSetString(result)) {\n code = result;\n }\n }\n\n if (isSetString(code?.trim()) || directives.length > 0) {\n await env.fs.write(\n env.typesPath,\n `${\n directives.length > 0\n ? `${directives.map(directive => `/// <reference types=\"${directive}\" />`).join(\"\\n\")}\n\n`\n : \"\"\n }${getTypescriptFileHeader(env, { directive: null, prettierIgnore: false })}\n\n${formatTypes(code)}\n`\n );\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"generate-types.mjs","names":[],"sources":["../../src/lib/generate-types.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { toArray } from \"@stryke/convert/to-array\";\nimport { resolvePackage } from \"@stryke/fs/resolve\";\nimport { getUnique } from \"@stryke/helpers/get-unique\";\nimport { appendPath } from \"@stryke/path/append\";\nimport { findFileName } from \"@stryke/path/file-path-fns\";\nimport { isParentPath } from \"@stryke/path/is-parent-path\";\nimport { replaceExtension, replacePath } from \"@stryke/path/replace\";\nimport { prettyBytes } from \"@stryke/string-format/pretty-bytes\";\nimport { isObject } from \"@stryke/type-checks/is-object\";\nimport { isSetObject } from \"@stryke/type-checks/is-set-object\";\nimport { isSetString } from \"@stryke/type-checks/is-set-string\";\nimport { isString } from \"@stryke/type-checks/is-string\";\nimport { DiagnosticCategory, Node, Project, SourceFile } from \"ts-morph\";\nimport { ResolvedConfig } from \"../types/config\";\nimport {\n Context,\n EnvironmentContext,\n ExecutionContext\n} from \"../types/context\";\nimport { TypesResult } from \"../types/plugin\";\nimport { callHook } from \"./hooks\";\nimport { createProgram } from \"./typescript/ts-morph\";\nimport { getTypescriptFileHeader } from \"./utilities/file-header\";\nimport { format } from \"./utilities/format\";\n\ninterface ModuleExportSpecifier {\n name: string;\n alias?: string;\n default?: boolean;\n type?: boolean;\n}\n\ninterface ModuleReference {\n name?: string;\n specifiers?: ModuleExportSpecifier[];\n all?: boolean;\n}\n\ninterface ImportModuleReference extends ModuleReference {\n name: string;\n ambient?: boolean;\n}\n\ninterface ExportModuleReference extends ModuleReference {\n text: string;\n fullText: string;\n comment?: string;\n}\n\ninterface ModuleDeclaration {\n name: string;\n text: string;\n sourceFile: SourceFile;\n comment?: string;\n exports: (ExportModuleReference | string)[];\n imports: ImportModuleReference[];\n}\n\nexport interface TypegenContext {\n context: Context;\n emitted: Map<string, string>;\n modules: ModuleDeclaration[];\n}\n\n/**\n * Formats the generated TypeScript types source code.\n *\n * @param code - The generated TypeScript code.\n * @returns The formatted TypeScript code.\n */\nexport function formatTypes(code = \"\"): string {\n return code.replaceAll(\"#private;\", \"\").replace(/__Ω/g, \"\");\n}\n\nasync function extractModuleDeclarations(\n ctx: TypegenContext,\n filePath: string,\n name: string,\n text: string\n): Promise<ModuleDeclaration> {\n const imports: ImportModuleReference[] = [];\n const exports: (ExportModuleReference | string)[] = [];\n\n const comment = text\n .match(\n new RegExp(\n `\\\\/\\\\*\\\\*(?s:.)*?@module\\\\s+${\n ctx.context.config.framework?.name ?? \"powerlines\"\n }:${name}(?s:.)*?\\\\*\\\\/\\\\s+`\n )\n )\n ?.find(comment => isSetString(comment?.trim()));\n\n // Parse the emitted .d.ts content using an in-memory ts-morph project\n const project = new Project({ useInMemoryFileSystem: true });\n const sourceFile = project.createSourceFile(\"module.d.ts\", text);\n\n // Collect /// <reference types=\"...\" /> directives as ambient dependencies\n for (const ref of sourceFile.getTypeReferenceDirectives()) {\n if (\n ref.getFileName() &&\n !ctx.context.builtins.some(builtin => ref.getFileName().endsWith(builtin))\n ) {\n imports.push({\n name: ref.getFileName(),\n ambient: true\n });\n }\n }\n\n for (const statement of sourceFile.getStatements()) {\n // --- Import declarations ---\n if (Node.isImportDeclaration(statement)) {\n const moduleSpec = statement.getModuleSpecifierValue();\n\n // Namespace import: import * as X from '...'\n if (statement.getNamespaceImport()) {\n imports.push({\n name: moduleSpec,\n specifiers: [\n {\n name: statement.getNamespaceImport()!.getText()\n }\n ],\n all: true\n });\n }\n\n // Named imports: import X from '...' or import { A, B as C } from '...'\n else if (\n statement.getNamedImports().length > 0 ||\n statement.getDefaultImport()\n ) {\n const specifiers: ModuleExportSpecifier[] = [];\n if (statement.getDefaultImport()) {\n specifiers.push({\n name: statement.getDefaultImport()!.getText(),\n default: true,\n type: statement.isTypeOnly()\n });\n }\n\n statement.getNamedImports().forEach(named => {\n specifiers.push({\n name: named.getName(),\n alias: named.getAliasNode()?.getText(),\n type: statement.isTypeOnly()\n });\n });\n\n imports.push({\n name: moduleSpec,\n specifiers\n });\n }\n }\n\n // --- Export declarations ---\n else if (Node.isExportDeclaration(statement)) {\n const moduleSpec = statement.getModuleSpecifierValue();\n if (moduleSpec) {\n // Resolve the module specifier\n let resolvedSpec = moduleSpec;\n if (!ctx.context.builtins.includes(moduleSpec)) {\n if (ctx.emitted.has(moduleSpec)) {\n resolvedSpec = ctx.emitted.get(moduleSpec)!;\n } else {\n const resolvedModule = await ctx.context.resolve(\n moduleSpec,\n filePath\n );\n if (isSetString(resolvedModule?.id)) {\n resolvedSpec = resolvedModule.id;\n }\n }\n }\n\n // Re-export from another module\n const namedExports = statement.getNamedExports();\n if (namedExports.length > 0) {\n exports.push({\n name: resolvedSpec,\n text: statement.getText(),\n fullText: statement.getFullText(),\n specifiers: namedExports.map(named => ({\n name: named.getName(),\n alias: named.getAliasNode()?.getText(),\n type: statement.isTypeOnly()\n })),\n comment: statement\n .getLeadingCommentRanges()\n .filter(\n c =>\n isSetString(c.getText().trim()) &&\n !c.getText().includes(\"@module\")\n )\n .map(c => c.getText().trim())\n .join(\"\\n\")\n .trim()\n });\n } else {\n // export * from '...'\n exports.push({\n name: resolvedSpec,\n text: statement.getText(),\n fullText: statement.getFullText(),\n all: true,\n comment: statement\n .getLeadingCommentRanges()\n .filter(\n c =>\n isSetString(c.getText().trim()) &&\n !c.getText().includes(\"@module\")\n )\n .map(c => c.getText().trim())\n .join(\"\\n\")\n .trim()\n });\n }\n } else {\n const specifiers = statement.getNamedExports().map(named => ({\n name: named.getName(),\n alias: named.getAliasNode()?.getText(),\n type: statement.isTypeOnly()\n }));\n if (specifiers.length > 0) {\n exports.push({\n text: statement.getText(),\n fullText: statement.getFullText(),\n specifiers,\n comment: statement\n .getLeadingCommentRanges()\n .filter(\n c =>\n isSetString(c.getText().trim()) &&\n !c.getText().includes(\"@module\")\n )\n .map(c => c.getText().trim())\n .join(\"\\n\")\n });\n }\n }\n }\n\n // --- Export assignments (export default ...) ---\n else if (Node.isExportAssignment(statement)) {\n exports.push({\n text: statement.getText(),\n fullText: statement.getFullText(),\n comment: statement\n .getLeadingCommentRanges()\n .filter(\n c =>\n isSetString(c.getText().trim()) &&\n !c.getText().includes(\"@module\")\n )\n .map(c => c.getText().trim())\n .join(\"\\n\")\n });\n }\n\n // --- Function declarations (export declare function ...) ---\n else if (\n Node.isFunctionDeclaration(statement) &&\n statement.isExported() &&\n statement.getNameNode()\n ) {\n exports.push({\n text: statement.getText(),\n fullText: statement.getFullText(),\n specifiers: [\n {\n name: statement.getNameNode()!.getText()\n }\n ],\n comment: statement\n .getLeadingCommentRanges()\n .filter(\n c =>\n isSetString(c.getText().trim()) &&\n !c.getText().includes(\"@module\")\n )\n .map(c => c.getText().trim())\n .join(\"\\n\")\n });\n }\n\n // --- Variable statements (export declare const ...) ---\n else if (Node.isVariableStatement(statement) && statement.isExported()) {\n exports.push({\n text: statement.getText(),\n fullText: statement.getFullText(),\n specifiers: statement\n .getDeclarationList()\n .getDeclarations()\n .filter(\n decl => decl.getNameNode() && Node.isIdentifier(decl.getNameNode())\n )\n .map(decl => ({ name: decl.getNameNode().getText() })),\n comment: statement\n .getLeadingCommentRanges()\n .filter(\n c =>\n isSetString(c.getText().trim()) &&\n !c.getText().includes(\"@module\")\n )\n .map(c => c.getText().trim())\n .join(\"\\n\")\n });\n }\n\n // --- Class declarations (export declare class ...) ---\n else if (Node.isClassDeclaration(statement) && statement.isExported()) {\n const nameNode = statement.getNameNode();\n exports.push({\n text: statement.getText(),\n fullText: statement.getFullText(),\n specifiers: nameNode ? [{ name: nameNode.getText() }] : undefined,\n comment: statement\n .getLeadingCommentRanges()\n .filter(\n c =>\n isSetString(c.getText().trim()) &&\n !c.getText().includes(\"@module\")\n )\n .map(c => c.getText().trim())\n .join(\"\\n\")\n });\n }\n\n // --- Interface declarations (export declare interface ...) ---\n else if (Node.isInterfaceDeclaration(statement) && statement.isExported()) {\n const nameNode = statement.getNameNode();\n exports.push({\n text: statement.getText(),\n fullText: statement.getFullText(),\n specifiers: nameNode ? [{ name: nameNode.getText() }] : undefined,\n comment: statement\n .getLeadingCommentRanges()\n .filter(\n c =>\n isSetString(c.getText().trim()) &&\n !c.getText().includes(\"@module\")\n )\n .map(c => c.getText().trim())\n .join(\"\\n\")\n });\n }\n\n // --- Type alias declarations (export declare type ...) ---\n else if (Node.isTypeAliasDeclaration(statement) && statement.isExported()) {\n const nameNode = statement.getNameNode();\n exports.push({\n text: statement.getText(),\n fullText: statement.getFullText(),\n specifiers: nameNode ? [{ name: nameNode.getText() }] : undefined,\n comment: statement\n .getLeadingCommentRanges()\n .filter(\n c =>\n isSetString(c.getText().trim()) &&\n !c.getText().includes(\"@module\")\n )\n .map(c => c.getText().trim())\n .join(\"\\n\")\n });\n }\n\n // --- All other statements (declarations) ---\n else if (\n ctx.context.config.output.sourceMap ||\n !statement.getFullText().includes(\"//# sourceMappingURL=\")\n ) {\n exports.push({\n text: statement.getText(),\n fullText: statement.getFullText(),\n comment: statement\n .getLeadingCommentRanges()\n .filter(\n c =>\n isSetString(c.getText().trim()) &&\n !c.getText().includes(\"@module\")\n )\n .map(c => c.getText().trim())\n .join(\"\\n\")\n });\n }\n }\n\n return {\n name,\n text,\n sourceFile,\n comment,\n imports,\n exports\n };\n}\n\n/**\n * Emits TypeScript declaration types for the provided files using the given TypeScript configuration.\n *\n * @param context - The context containing options and environment paths.\n * @param files - The list of files to generate types for.\n * @returns A promise that resolves to the generated TypeScript declaration types.\n */\nexport async function emitBuiltinTypes<TContext extends Context>(\n context: TContext,\n files: string[]\n): Promise<{ code: string; directives: string[] }> {\n if (files.length === 0) {\n context.debug(\n \"No files provided for TypeScript types generation. Typescript compilation for built-in modules will be skipped.\"\n );\n return { code: \"\", directives: [] };\n }\n\n context.debug(\n `Running the TypeScript compiler for ${\n files.length\n } generated built-in module files.`\n );\n\n const program = createProgram(context, {\n skipAddingFilesFromTsConfig: true,\n compilerOptions: {\n declaration: true,\n declarationMap: false,\n emitDeclarationOnly: true,\n sourceMap: false,\n outDir: replacePath(context.builtinsPath, context.config.cwd),\n composite: false,\n incremental: false,\n tsBuildInfoFile: undefined\n }\n });\n\n program.addSourceFilesAtPaths(files);\n const emitResult = program.emitToMemory({ emitOnlyDtsFiles: true });\n\n const diagnostics = emitResult.getDiagnostics();\n if (diagnostics && diagnostics.length > 0) {\n if (diagnostics.some(d => d.getCategory() === DiagnosticCategory.Error)) {\n throw new Error(\n `The Typescript emit process failed while generating built-in types: \\n ${diagnostics\n .filter(d => d.getCategory() === DiagnosticCategory.Error)\n .map(\n d =>\n `-${d.getSourceFile() ? `${d.getSourceFile()?.getFilePath()}:` : \"\"} ${String(\n d.getMessageText()\n )} (at ${d.getStart()}:${d.getLength()})`\n )\n .join(\"\\n\")}`\n );\n } else if (\n diagnostics.some(d => d.getCategory() === DiagnosticCategory.Warning)\n ) {\n context.warn(\n `The Typescript emit process completed with warnings while generating built-in types: \\n ${diagnostics\n .filter(d => d.getCategory() === DiagnosticCategory.Warning)\n .map(\n d =>\n `-${d.getSourceFile() ? `${d.getSourceFile()?.getFilePath()}:` : \"\"} ${String(\n d.getMessageText()\n )} (at ${d.getStart()}:${d.getLength()})`\n )\n .join(\"\\n\")}`\n );\n } else {\n context.debug(\n `The Typescript emit process completed with diagnostic messages while generating built-in types: \\n ${diagnostics\n .map(\n d =>\n `-${d.getSourceFile() ? `${d.getSourceFile()?.getFilePath()}:` : \"\"} ${String(\n d.getMessageText()\n )} (at ${d.getStart()}:${d.getLength()})`\n )\n .join(\"\\n\")}`\n );\n }\n }\n\n const emittedFiles = emitResult.getFiles();\n context.debug(\n `The TypeScript compiler emitted ${\n emittedFiles.length\n } files for built-in types.`\n );\n\n if (emittedFiles.length === 0) {\n context.warn(\n \"The TypeScript compiler did not emit any files for built-in types. This may indicate an issue with the TypeScript configuration or the provided files.\"\n );\n return { code: \"\", directives: [] };\n }\n\n const ctx = {\n context,\n modules: [] as ModuleDeclaration[],\n emitted: new Map<string, string>()\n };\n\n await Promise.all(\n emittedFiles.map(async emittedFile => {\n const filePath = appendPath(emittedFile.filePath, context.config.cwd);\n if (\n !filePath.endsWith(\".map\") &&\n findFileName(filePath) !== \"tsconfig.tsbuildinfo\" &&\n isParentPath(filePath, context.builtinsPath)\n ) {\n const moduleName = replaceExtension(\n replacePath(\n replacePath(filePath, context.builtinsPath),\n replacePath(context.builtinsPath, context.config.cwd)\n ),\n \"\",\n {\n fullExtension: true\n }\n );\n if (context.builtins.includes(moduleName)) {\n ctx.emitted.set(filePath, moduleName);\n ctx.modules.push(\n await extractModuleDeclarations(\n ctx,\n filePath,\n moduleName,\n emittedFile.text\n )\n );\n }\n }\n })\n );\n\n const commonDeclarations = [] as ExportModuleReference[];\n for (const mod of ctx.modules) {\n for (const importRef of mod.imports.filter(importRef =>\n context.builtins.some(builtin => importRef.name.endsWith(`:${builtin}`))\n )) {\n const moduleRef = ctx.modules.find(moduleRef =>\n importRef.name.endsWith(`:${moduleRef.name}`)\n );\n if (moduleRef) {\n let declaration: ExportModuleReference | undefined;\n for (const decl of moduleRef.exports.filter(decl =>\n isSetObject(decl)\n )) {\n const specifiers = decl.specifiers?.filter(specifier =>\n importRef.specifiers?.some(\n s =>\n (specifier.alias ? specifier.alias : specifier.name) ===\n (s.alias ? s.alias : s.name)\n )\n );\n if (specifiers && specifiers.length > 0) {\n importRef.specifiers = importRef.specifiers?.filter(\n s =>\n !specifiers.some(\n specifier =>\n (specifier.alias ? specifier.alias : specifier.name) ===\n (s.alias ? s.alias : s.name)\n )\n );\n if (\n importRef.specifiers &&\n importRef.specifiers.length === 0 &&\n !importRef.all &&\n !importRef.ambient\n ) {\n mod.imports = mod.imports.filter(\n imp => imp.name !== importRef.name\n );\n }\n\n declaration = decl;\n break;\n }\n }\n\n if (declaration) {\n for (const decl of moduleRef.exports.filter(\n decl =>\n isSetObject(decl) &&\n !decl.specifiers?.some(s =>\n declaration?.specifiers?.some(\n specifier =>\n (specifier.alias ? specifier.alias : specifier.name) ===\n (s.alias ? s.alias : s.name)\n )\n )\n )) {\n const exportModuleRef = decl as ExportModuleReference;\n if (\n (exportModuleRef.specifiers?.some(s => s.alias || s.name) ||\n exportModuleRef.name) &&\n new RegExp(\n `(^|\\\\s|\\\\n|\\\\r\\\\n|\\\\(|\\\\)|<|>|{|}|\\\\[|\\\\]|\\\\!|\\\\?|\\\\.|,|\\\\*|&|:)(${\n exportModuleRef.specifiers\n ?.map(s => `${s.alias ? `${s.alias}|` : \"\"}${s.name}`)\n .join(\"|\") || exportModuleRef.name\n })($|\\\\s|\\\\n|\\\\r\\\\n|\\\\(|\\\\)|<|>|{|}|\\\\[|\\\\]|\\\\!|\\\\?|\\\\.|,|\\\\*|&|:|;)`\n ).test(declaration.text)\n ) {\n commonDeclarations.push(exportModuleRef);\n }\n }\n commonDeclarations.push(declaration);\n }\n }\n }\n }\n\n let code = \"\";\n const directives: string[] = [];\n\n for (const commonDeclaration of commonDeclarations) {\n code += formatTypes(\n `${\n commonDeclaration.comment?.trim()\n ? commonDeclaration.comment.trim()\n : \"\"\n }${commonDeclaration.comment?.trim() ? \"\\n\" : \"\"}${formatTypes(\n commonDeclaration.text\n .replace(/\\s*export\\s*/, \"\")\n .replace(/\\s*declare\\s*interface\\s*/, \"interface \")\n .replace(/\\s*declare\\s*type\\s*/, \"type \")\n )}`\n );\n code += \"\\n\\n\";\n }\n\n for (const mod of ctx.modules) {\n code += mod.comment ? `${mod.comment.trim()}\\n` : \"\";\n code += `declare module \"${context.config.framework?.name ?? \"powerlines\"}:${mod.name}\" { \\n`;\n for (const importRef of mod.imports) {\n if (importRef.ambient) {\n code += directives.push(importRef.name);\n } else if (importRef.all) {\n code += `\\timport * as ${findFileName(importRef.name)} from \"${importRef.name}\";\\n`;\n } else if (importRef.specifiers) {\n const typeOnly = importRef.specifiers.every(s => s.type) ? \" type\" : \"\";\n const specifiers = importRef.specifiers\n .map(s => (s.alias ? `${s.name} as ${s.alias}` : s.name))\n .join(\", \");\n code += `\\timport${typeOnly} { ${specifiers} } from \"${importRef.name}\";\\n`;\n }\n }\n\n if (mod.imports.length > 0) {\n code += \"\\n\";\n }\n\n for (const exportRef of mod.exports.filter(\n e =>\n isString(e) ||\n !e.specifiers ||\n !commonDeclarations.some(\n commonDecl =>\n commonDecl.specifiers &&\n commonDecl.specifiers.some(specifier =>\n e.specifiers?.some(\n s =>\n (s.alias ? s.alias : s.name) ===\n (specifier.alias ? specifier.alias : specifier.name)\n )\n )\n )\n )) {\n if (isSetString(exportRef)) {\n code += `${exportRef}\\n`;\n } else if (exportRef.name) {\n if (exportRef.all) {\n code += `${\n exportRef.comment?.trim() ? exportRef.comment.trim() : \"\"\n }${\n exportRef.comment?.trim() ? \"\\n\" : \"\"\n }export * from \"${exportRef.name}\";\\n`;\n } else if (exportRef.specifiers) {\n if (exportRef.comment?.trim()) {\n code += `${exportRef.comment.trim()}\\n`;\n }\n\n code += `\\texport${\n exportRef.specifiers.every(s => s.type) ? \" type\" : \"\"\n } { ${exportRef.specifiers\n .map(s => (s.alias ? `${s.name} as ${s.alias}` : s.name))\n .join(\", \")} } from \"${exportRef.name}\";\\n`;\n }\n } else {\n code += `${exportRef.comment?.trim() ? exportRef.comment.trim() : \"\"}${\n exportRef.comment?.trim() ? \"\\n\" : \"\"\n }${formatTypes(\n exportRef.text\n .replace(/\\s*export\\s*declare\\s*/, \"export \")\n .replace(/\\s*declare\\s*/, \" \")\n )}\\n`;\n }\n }\n\n mod.exports\n .filter(\n e =>\n !isString(e) &&\n e.specifiers &&\n commonDeclarations.some(\n commonDeclaration =>\n commonDeclaration.specifiers &&\n commonDeclaration.specifiers.some(specifier =>\n e.specifiers?.some(\n s =>\n (s.alias ? s.alias : s.name) ===\n (specifier.alias ? specifier.alias : specifier.name)\n )\n )\n )\n )\n .forEach((e, i, arr) => {\n if (i === 0) {\n code += \"\\nexport { \";\n } else {\n code += \", \";\n }\n\n code += `${\n (e as ExportModuleReference)?.specifiers\n ?.filter(s =>\n commonDeclarations.some(\n commonDeclaration =>\n commonDeclaration.specifiers &&\n commonDeclaration.specifiers.some(\n specifier =>\n (s.alias ? s.alias : s.name) ===\n (specifier.alias ? specifier.alias : specifier.name)\n )\n )\n )\n .map(s => (s.alias ? `${s.name} as ${s.alias}` : s.name))\n .join(\", \") || \"\"\n }`;\n\n if (i === arr.length - 1) {\n code += ` };\\n`;\n }\n });\n\n code += \"}\";\n code += \"\\n\\n\";\n }\n\n code = await format(context, context.typesPath, code);\n\n context.debug(\n `A TypeScript declaration file (size: ${prettyBytes(\n new Blob(toArray(code)).size\n )}) emitted for the built-in modules types.`\n );\n\n return { code, directives };\n}\n\n/**\n * Generate the Powerlines TypeScript declaration file\n *\n * @param context - The execution context for generating the TypeScript declaration file, which provides access to the project configuration, environment, and utility functions for performing the generation. The context is used to manage the state and behavior of the generation process, allowing for hooks to be called at different stages and for environment-specific configurations to be applied.\n * @param env - The environment context to use for generating the TypeScript declaration file\n */\nexport async function handleTypes<\n TResolvedConfig extends ResolvedConfig,\n TSystemContext = unknown\n>(\n context: ExecutionContext<TResolvedConfig, TSystemContext>,\n env: EnvironmentContext<TResolvedConfig, TSystemContext>\n) {\n env.debug(`Preparing the TypeScript definitions for the Powerlines project.`);\n\n if (env.fs.existsSync(env.typesPath)) {\n await env.fs.remove(env.typesPath);\n }\n\n const typescriptPath = await resolvePackage(\"typescript\");\n if (!typescriptPath) {\n throw new Error(\n \"Could not resolve TypeScript package location. Please ensure TypeScript is installed.\"\n );\n }\n\n env.debug(\"Running TypeScript compiler for built-in runtime module files.\");\n\n let { code, directives } = await emitBuiltinTypes(\n env,\n (await env.getBuiltins()).reduce<string[]>((ret, builtin) => {\n const formatted = replacePath(builtin.path, env.config.cwd);\n if (!ret.includes(formatted)) {\n ret.push(formatted);\n }\n\n return ret;\n }, [])\n );\n\n env.debug(`Generating TypeScript declaration file ${env.typesPath}.`);\n\n const merge = async (\n currentResult: string | TypesResult,\n previousResult: string | TypesResult\n ): Promise<string | TypesResult> => {\n if (\n !isSetString(currentResult) &&\n !isSetObject(currentResult) &&\n !isSetString(previousResult) &&\n !isSetObject(previousResult)\n ) {\n return { code, directives };\n }\n\n const previous = (\n await format(\n env,\n env.typesPath,\n isSetString(previousResult)\n ? previousResult\n : isSetObject(previousResult)\n ? previousResult.code\n : \"\"\n )\n )\n .trim()\n .replace(code, \"\")\n .trim();\n const current = (\n await format(\n env,\n env.typesPath,\n isSetString(currentResult)\n ? currentResult\n : isSetObject(currentResult)\n ? currentResult.code\n : \"\"\n )\n )\n .trim()\n .replace(previous, \"\")\n .trim()\n .replace(code, \"\")\n .trim();\n\n return {\n directives: [\n ...(isSetObject(currentResult) && currentResult.directives\n ? currentResult.directives\n : []),\n ...(isSetObject(previousResult) && previousResult.directives\n ? previousResult.directives\n : [])\n ],\n code: await format(\n env,\n env.typesPath,\n `${\n !previous.includes(getTypescriptFileHeader(env)) &&\n !current.includes(getTypescriptFileHeader(env))\n ? `${code}\\n`\n : \"\"\n }${previous}\\n${current}`.trim()\n )\n };\n };\n const asNextParam = (\n previousResult: string | TypesResult | null | undefined\n ) => (isObject(previousResult) ? previousResult.code : previousResult);\n\n let result = await callHook(\n context,\n \"types\",\n {\n environment: env,\n sequential: true,\n order: \"pre\",\n result: \"merge\",\n merge,\n asNextParam\n },\n code\n );\n if (result) {\n if (isSetObject(result)) {\n code = result.code;\n if (Array.isArray(result.directives) && result.directives.length > 0) {\n directives = getUnique([...directives, ...result.directives]).filter(\n Boolean\n );\n }\n } else if (isSetString(result)) {\n code = result;\n }\n }\n\n result = await callHook(\n context,\n \"types\",\n {\n environment: env,\n sequential: true,\n order: \"normal\",\n result: \"merge\",\n merge,\n asNextParam\n },\n code\n );\n if (result) {\n if (isSetObject(result)) {\n code = result.code;\n if (Array.isArray(result.directives) && result.directives.length > 0) {\n directives = getUnique([...directives, ...result.directives]).filter(\n Boolean\n );\n }\n } else if (isSetString(result)) {\n code = result;\n }\n }\n\n result = await callHook(\n context,\n \"types\",\n {\n environment: env,\n sequential: true,\n order: \"post\",\n result: \"merge\",\n merge,\n asNextParam\n },\n code\n );\n if (result) {\n if (isSetObject(result)) {\n code = result.code;\n if (Array.isArray(result.directives) && result.directives.length > 0) {\n directives = getUnique([...directives, ...result.directives]).filter(\n Boolean\n );\n }\n } else if (isSetString(result)) {\n code = result;\n }\n }\n\n if (isSetString(code?.trim()) || directives.length > 0) {\n await env.fs.write(\n env.typesPath,\n `${\n directives.length > 0\n ? `${directives.map(directive => `/// <reference types=\"${directive}\" />`).join(\"\\n\")}\n\n`\n : \"\"\n }${getTypescriptFileHeader(env, { directive: null, prettierIgnore: false })}\n\n${formatTypes(code)}\n`\n );\n }\n}\n"],"mappings":"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"}
|
package/dist/lib/hooks.cjs
CHANGED
|
@@ -1,13 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import __tsdown_shims_path from 'node:path'
|
|
4
|
-
import __tsdown_shims_url from 'node:url'
|
|
5
|
-
|
|
6
|
-
const __TSDOWN_SHIM_FILENAME__ = /* @__PURE__ */ __tsdown_shims_url.fileURLToPath(import.meta.url)
|
|
7
|
-
const __TSDOWN_SHIM_DIRNAME__ = /* @__PURE__ */ __tsdown_shims_path.dirname(__TSDOWN_SHIM_FILENAME__)
|
|
8
|
-
|
|
9
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
10
|
-
const
|
|
2
|
+
const require_chunk = require('../chunk-C_NdSu1c.cjs');
|
|
11
3
|
const require_plugin_utils_logging = require('../plugin-utils/logging.cjs');
|
|
12
4
|
const require_plugin_utils_helpers = require('../plugin-utils/helpers.cjs');
|
|
13
5
|
const require_plugin_utils_merge = require('../plugin-utils/merge.cjs');
|
|
@@ -18,18 +10,12 @@ let defu = require("defu");
|
|
|
18
10
|
let _stryke_type_checks_is_set_string = require("@stryke/type-checks/is-set-string");
|
|
19
11
|
let _stryke_type_checks_is_string = require("@stryke/type-checks/is-string");
|
|
20
12
|
let chalk = require("chalk");
|
|
21
|
-
chalk =
|
|
13
|
+
chalk = require_chunk.__toESM(chalk, 1);
|
|
22
14
|
let _stryke_helpers_get_field = require("@stryke/helpers/get-field");
|
|
23
15
|
let _stryke_type_checks_is_object = require("@stryke/type-checks/is-object");
|
|
24
16
|
let _stryke_type_checks_is_set = require("@stryke/type-checks/is-set");
|
|
25
17
|
|
|
26
18
|
//#region src/lib/hooks.ts
|
|
27
|
-
var hooks_exports = /* @__PURE__ */ require_runtime.__exportAll({
|
|
28
|
-
callHook: () => callHook,
|
|
29
|
-
extractHooks: () => extractHooks,
|
|
30
|
-
mergeConfigs: () => mergeConfigs,
|
|
31
|
-
mergeResults: () => mergeResults
|
|
32
|
-
});
|
|
33
19
|
/**
|
|
34
20
|
* Merges the current hook result with the previous results based on their types.
|
|
35
21
|
*
|
|
@@ -162,11 +148,5 @@ async function callHook(context, key, options, ...args) {
|
|
|
162
148
|
//#endregion
|
|
163
149
|
exports.callHook = callHook;
|
|
164
150
|
exports.extractHooks = extractHooks;
|
|
165
|
-
Object.defineProperty(exports, 'hooks_exports', {
|
|
166
|
-
enumerable: true,
|
|
167
|
-
get: function () {
|
|
168
|
-
return hooks_exports;
|
|
169
|
-
}
|
|
170
|
-
});
|
|
171
151
|
exports.mergeConfigs = mergeConfigs;
|
|
172
152
|
exports.mergeResults = mergeResults;
|
package/dist/lib/hooks.d.cts
CHANGED
|
@@ -1,28 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
import { EnvironmentContext, ExecutionContext, PluginContext } from "../types/context.cjs";
|
|
4
|
-
import { ResolvedConfig } from "../types/config.cjs";
|
|
5
|
-
//#region src/lib/hooks.d.ts
|
|
6
|
-
/**
|
|
7
|
-
* Merges the current hook result with the previous results based on their types.
|
|
8
|
-
*
|
|
9
|
-
* @param currentResult - The current hook result to merge with the previous results.
|
|
10
|
-
* @param previousResults - The previous hook results to merge with the current result.
|
|
11
|
-
* @returns The merged result.
|
|
12
|
-
*/
|
|
13
|
-
declare function mergeResults<T extends Record<string | number | symbol, any> | string>(currentResult: T, previousResults: T[]): T[];
|
|
14
|
-
/**
|
|
15
|
-
* Merges multiple hook results together, with special handling for string values and object values.
|
|
16
|
-
*
|
|
17
|
-
* @param currentResult - The current hook result to merge with the previous results.
|
|
18
|
-
* @param previousResults - The previous hook results to merge with the current result.
|
|
19
|
-
* @returns The merged result.
|
|
20
|
-
*/
|
|
21
|
-
declare function mergeConfigs<T>(currentResult: T, previousResults: T): T;
|
|
22
|
-
declare function extractHooks<TResolvedConfig extends ResolvedConfig = ResolvedConfig, TSystemContext = unknown>(context: PluginContext<TResolvedConfig, TSystemContext>, hooks: Record<string, HooksList<PluginContext<TResolvedConfig, TSystemContext>>>, plugin: Plugin<PluginContext<TResolvedConfig, TSystemContext>>, key: string, parentKey?: string): Record<string, HooksList<PluginContext<TResolvedConfig, TSystemContext>>>;
|
|
23
|
-
declare function callHook<TKey extends string, TResolvedConfig extends ResolvedConfig, TSystemContext = unknown>(context: ExecutionContext<TResolvedConfig, TSystemContext>, key: TKey, options: CallHookOptions & {
|
|
24
|
-
environment?: string | EnvironmentContext<TResolvedConfig, TSystemContext>;
|
|
25
|
-
}, ...args: InferHookParameters<PluginContext<TResolvedConfig, TSystemContext>, TKey>): Promise<ReturnType<InferHookFunction<PluginContext<TResolvedConfig, TSystemContext>, TKey>> | undefined>;
|
|
26
|
-
//#endregion
|
|
27
|
-
export { callHook, extractHooks, mergeConfigs, mergeResults };
|
|
28
|
-
//# sourceMappingURL=hooks.d.cts.map
|
|
1
|
+
import { i as mergeResults, n as extractHooks, r as mergeConfigs, t as callHook } from "../index-xk4vSgtB.cjs";
|
|
2
|
+
export { callHook, extractHooks, mergeConfigs, mergeResults };
|
package/dist/lib/hooks.d.mts
CHANGED
|
@@ -1,30 +1,2 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
import { Plugin } from "../types/plugin.mjs";
|
|
4
|
-
import { CallHookOptions, HooksList, InferHookFunction, InferHookParameters } from "../types/hooks.mjs";
|
|
5
|
-
import { EnvironmentContext, ExecutionContext, PluginContext } from "../types/context.mjs";
|
|
6
|
-
import { ResolvedConfig } from "../types/config.mjs";
|
|
7
|
-
//#region src/lib/hooks.d.ts
|
|
8
|
-
/**
|
|
9
|
-
* Merges the current hook result with the previous results based on their types.
|
|
10
|
-
*
|
|
11
|
-
* @param currentResult - The current hook result to merge with the previous results.
|
|
12
|
-
* @param previousResults - The previous hook results to merge with the current result.
|
|
13
|
-
* @returns The merged result.
|
|
14
|
-
*/
|
|
15
|
-
declare function mergeResults<T extends Record<string | number | symbol, any> | string>(currentResult: T, previousResults: T[]): T[];
|
|
16
|
-
/**
|
|
17
|
-
* Merges multiple hook results together, with special handling for string values and object values.
|
|
18
|
-
*
|
|
19
|
-
* @param currentResult - The current hook result to merge with the previous results.
|
|
20
|
-
* @param previousResults - The previous hook results to merge with the current result.
|
|
21
|
-
* @returns The merged result.
|
|
22
|
-
*/
|
|
23
|
-
declare function mergeConfigs<T>(currentResult: T, previousResults: T): T;
|
|
24
|
-
declare function extractHooks<TResolvedConfig extends ResolvedConfig = ResolvedConfig, TSystemContext = unknown>(context: PluginContext<TResolvedConfig, TSystemContext>, hooks: Record<string, HooksList<PluginContext<TResolvedConfig, TSystemContext>>>, plugin: Plugin<PluginContext<TResolvedConfig, TSystemContext>>, key: string, parentKey?: string): Record<string, HooksList<PluginContext<TResolvedConfig, TSystemContext>>>;
|
|
25
|
-
declare function callHook<TKey extends string, TResolvedConfig extends ResolvedConfig, TSystemContext = unknown>(context: ExecutionContext<TResolvedConfig, TSystemContext>, key: TKey, options: CallHookOptions & {
|
|
26
|
-
environment?: string | EnvironmentContext<TResolvedConfig, TSystemContext>;
|
|
27
|
-
}, ...args: InferHookParameters<PluginContext<TResolvedConfig, TSystemContext>, TKey>): Promise<ReturnType<InferHookFunction<PluginContext<TResolvedConfig, TSystemContext>, TKey>> | undefined>;
|
|
28
|
-
//#endregion
|
|
29
|
-
export { callHook, extractHooks, mergeConfigs, mergeResults };
|
|
30
|
-
//# sourceMappingURL=hooks.d.mts.map
|
|
1
|
+
import { i as mergeResults, n as extractHooks, r as mergeConfigs, t as callHook } from "../index-LtpXjuJR.mjs";
|
|
2
|
+
export { callHook, extractHooks, mergeConfigs, mergeResults };
|
package/dist/lib/hooks.mjs
CHANGED
|
@@ -1,12 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import __tsdown_shims_path from 'node:path'
|
|
4
|
-
import __tsdown_shims_url from 'node:url'
|
|
5
|
-
|
|
6
|
-
const __TSDOWN_SHIM_FILENAME__ = /* @__PURE__ */ __tsdown_shims_url.fileURLToPath(import.meta.url)
|
|
7
|
-
const __TSDOWN_SHIM_DIRNAME__ = /* @__PURE__ */ __tsdown_shims_path.dirname(__TSDOWN_SHIM_FILENAME__)
|
|
8
|
-
|
|
9
|
-
import { __exportAll } from "../_virtual/_rolldown/runtime.mjs";
|
|
10
1
|
import { colorText } from "../plugin-utils/logging.mjs";
|
|
11
2
|
import { addPluginHook, isPluginHook, isPluginHookField } from "../plugin-utils/helpers.mjs";
|
|
12
3
|
import { mergeConfig } from "../plugin-utils/merge.mjs";
|
|
@@ -22,12 +13,6 @@ import { isObject } from "@stryke/type-checks/is-object";
|
|
|
22
13
|
import { isSet } from "@stryke/type-checks/is-set";
|
|
23
14
|
|
|
24
15
|
//#region src/lib/hooks.ts
|
|
25
|
-
var hooks_exports = /* @__PURE__ */ __exportAll({
|
|
26
|
-
callHook: () => callHook,
|
|
27
|
-
extractHooks: () => extractHooks,
|
|
28
|
-
mergeConfigs: () => mergeConfigs,
|
|
29
|
-
mergeResults: () => mergeResults
|
|
30
|
-
});
|
|
31
16
|
/**
|
|
32
17
|
* Merges the current hook result with the previous results based on their types.
|
|
33
18
|
*
|
|
@@ -158,5 +143,5 @@ async function callHook(context, key, options, ...args) {
|
|
|
158
143
|
}
|
|
159
144
|
|
|
160
145
|
//#endregion
|
|
161
|
-
export { callHook, extractHooks,
|
|
146
|
+
export { callHook, extractHooks, mergeConfigs, mergeResults };
|
|
162
147
|
//# sourceMappingURL=hooks.mjs.map
|
package/dist/lib/hooks.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.mjs","names":["defu"],"sources":["../../src/lib/hooks.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { getField } from \"@stryke/helpers/get-field\";\nimport { isFunction } from \"@stryke/type-checks/is-function\";\nimport { isObject } from \"@stryke/type-checks/is-object\";\nimport { isSet } from \"@stryke/type-checks/is-set\";\nimport { isSetObject } from \"@stryke/type-checks/is-set-object\";\nimport { isSetString } from \"@stryke/type-checks/is-set-string\";\nimport { isString } from \"@stryke/type-checks/is-string\";\nimport { ArrayValues } from \"@stryke/types/array\";\nimport { AnyFunction } from \"@stryke/types/base\";\nimport chalk from \"chalk\";\nimport { defu } from \"defu\";\nimport {\n addPluginHook,\n colorText,\n isPluginHook,\n isPluginHookField,\n mergeConfig\n} from \"../plugin-utils\";\nimport type {\n CallHookOptions,\n EnvironmentContext,\n ExecutionContext,\n HookListOrders,\n HooksList,\n HooksListItem,\n InferHookParameters,\n InferHookReturnType,\n Plugin,\n PluginContext,\n PluginHookFields,\n ResolvedConfig\n} from \"../types\";\n\n/**\n * Merges the current hook result with the previous results based on their types.\n *\n * @param currentResult - The current hook result to merge with the previous results.\n * @param previousResults - The previous hook results to merge with the current result.\n * @returns The merged result.\n */\nexport function mergeResults<\n T extends Record<string | number | symbol, any> | string\n>(currentResult: T, previousResults: T[]): T[] {\n if (!previousResults || previousResults.length === 0) {\n return [currentResult];\n }\n\n if (isSetString(currentResult)) {\n previousResults = [\n `${isSetString(previousResults[0]) ? previousResults[0] || \"\" : \"\"}\\n${\n isSetString(previousResults[0])\n ? currentResult.replace(previousResults[0], \"\")\n : currentResult\n }`.trim() as T\n ];\n } else if (isObject(currentResult)) {\n previousResults =\n previousResults.length > 0\n ? [defu(currentResult, previousResults[0])]\n : [currentResult];\n }\n\n return previousResults;\n}\n\n/**\n * Merges multiple hook results together, with special handling for string values and object values.\n *\n * @param currentResult - The current hook result to merge with the previous results.\n * @param previousResults - The previous hook results to merge with the current result.\n * @returns The merged result.\n */\nexport function mergeConfigs<T>(currentResult: T, previousResults: T): T {\n if (isString(currentResult)) {\n previousResults =\n `${isString(previousResults) ? previousResults || \"\" : \"\"}\\n${\n currentResult || \"\"\n }`.trim() as T;\n } else if (isObject(currentResult)) {\n previousResults = mergeConfig(currentResult, previousResults ?? {}) as T;\n }\n\n return previousResults;\n}\n\n/**\n * Calls a hook with the given context, options, and arguments.\n *\n * @param context - The context to use when calling the hook.\n * @param key - The hook to call.\n * @param options - Options for calling the hook.\n * @param args - Arguments to pass to the hook.\n * @returns The return value of the hook.\n */\nasync function _callHook<\n TResolvedConfig extends ResolvedConfig,\n TSystemContext,\n TKey extends string\n>(\n context: EnvironmentContext<TResolvedConfig, TSystemContext>,\n key: TKey,\n options: CallHookOptions,\n ...args: InferHookParameters<\n PluginContext<TResolvedConfig, TSystemContext>,\n TKey\n >\n): Promise<\n | InferHookReturnType<PluginContext<TResolvedConfig, TSystemContext>, TKey>\n | undefined\n> {\n const hooks = context.selectHooks(key, options);\n if (hooks.length > 0) {\n const logger = context.extendLogger({ category: \"hooks\" });\n\n logger.debug(\n `🧩 Calling ${hooks.length} ${chalk.bold.cyanBright(\n `${key}${options?.order ? ` (${options.order})` : \"\"}`\n )} plugin hook${hooks.length > 1 ? \"s\" : \"\"}:\\n${hooks\n .map((hook, index) => ` ${index + 1}. ${colorText(hook.plugin.name)}`)\n .join(\"\\n\")}`\n );\n\n const invokeHook = async (\n hook: ArrayValues<typeof hooks>,\n hookArgs: InferHookParameters<\n PluginContext<TResolvedConfig, TSystemContext>,\n TKey\n >\n ) => {\n return Reflect.apply(hook.handler as AnyFunction, hook.context, hookArgs);\n };\n\n let results = [] as InferHookReturnType<\n PluginContext<TResolvedConfig, TSystemContext>,\n TKey\n >[];\n if (options?.sequential === false) {\n results = (await Promise.all(\n hooks.map(async hook => {\n if (!isFunction(hook.handler)) {\n throw new Error(\n `Plugin hook handler for hook \"${key}\" is not a function.`\n );\n }\n\n return invokeHook(hook, [...args]);\n })\n )) as InferHookReturnType<\n PluginContext<TResolvedConfig, TSystemContext>,\n TKey\n >[];\n } else {\n for (const hook of hooks) {\n if (!isFunction(hook.handler)) {\n throw new Error(\n `Plugin hook handler for hook \"${key}\" is not a function.`\n );\n }\n\n if (options?.result === \"first\" || options?.asNextParam === false) {\n results.push(\n (await Promise.resolve(\n invokeHook(hook, [...args])\n )) as InferHookReturnType<\n PluginContext<TResolvedConfig, TSystemContext>,\n TKey\n >\n );\n if (\n options?.result === \"first\" &&\n isSet(results[results.length - 1])\n ) {\n break;\n }\n } else {\n const sequenceArgs = [...args];\n if (results.length > 0 && sequenceArgs.length > 0) {\n sequenceArgs[0] = isFunction(options.asNextParam)\n ? await Promise.resolve(options.asNextParam(results[0]))\n : results[0];\n }\n\n const result = await Promise.resolve(\n invokeHook(hook, [...sequenceArgs] as InferHookParameters<\n PluginContext<TResolvedConfig, TSystemContext>,\n TKey\n >)\n );\n if (result) {\n if (options.result === \"last\") {\n results = [result];\n } else if (options.result === \"merge\" && options.merge) {\n results = [\n results.length > 0 && results[0]\n ? await Promise.resolve(options.merge(result, results[0]))\n : result\n ];\n } else {\n results = mergeResults(result, results);\n }\n }\n }\n }\n }\n\n const definedResults = results.filter(\n (\n result\n ): result is NonNullable<\n InferHookReturnType<\n PluginContext<TResolvedConfig, TSystemContext>,\n TKey\n >\n > => isSet(result)\n );\n\n if (definedResults.length > 0) {\n let mergedResult = undefined as\n | InferHookReturnType<\n PluginContext<TResolvedConfig, TSystemContext>,\n TKey\n >\n | undefined;\n\n for (const result of definedResults) {\n mergedResult = defu(\n result as Record<string, unknown>,\n mergedResult ?? {}\n ) as InferHookReturnType<\n PluginContext<TResolvedConfig, TSystemContext>,\n TKey\n >;\n }\n\n return mergedResult;\n }\n }\n\n return undefined;\n}\n\nexport function extractHooks<\n TResolvedConfig extends ResolvedConfig = ResolvedConfig,\n TSystemContext = unknown\n>(\n context: PluginContext<TResolvedConfig, TSystemContext>,\n hooks: Record<\n string,\n HooksList<PluginContext<TResolvedConfig, TSystemContext>>\n >,\n plugin: Plugin<PluginContext<TResolvedConfig, TSystemContext>>,\n key: string,\n parentKey?: string\n): Record<string, HooksList<PluginContext<TResolvedConfig, TSystemContext>>> {\n const combinedKey = parentKey ? `${parentKey}:${key}` : key;\n const pluginField = getField(plugin, combinedKey.replace(/:/g, \".\"));\n if (\n isPluginHookField<PluginContext<TResolvedConfig, TSystemContext>>(\n combinedKey\n ) &&\n isPluginHook(pluginField)\n ) {\n const pluginHook = pluginField;\n if (!isPluginHook(pluginHook)) {\n return hooks;\n }\n\n hooks[combinedKey] ??= {\n preEnforced: [] as HooksListItem<\n PluginContext<TResolvedConfig, TSystemContext>\n >[],\n preOrdered: [] as HooksListItem<\n PluginContext<TResolvedConfig, TSystemContext>\n >[],\n normal: [] as HooksListItem<\n PluginContext<TResolvedConfig, TSystemContext>\n >[],\n postEnforced: [] as HooksListItem<\n PluginContext<TResolvedConfig, TSystemContext>\n >[],\n postOrdered: [] as HooksListItem<\n PluginContext<TResolvedConfig, TSystemContext>\n >[]\n };\n\n if (plugin.enforce) {\n const hookListOrder = `${plugin.enforce}Enforced` as HookListOrders;\n hooks[combinedKey][hookListOrder] ??= [] as HooksListItem<\n PluginContext<TResolvedConfig, TSystemContext>\n >[];\n\n hooks[combinedKey][hookListOrder] = addPluginHook<\n PluginContext<TResolvedConfig, TSystemContext>,\n PluginHookFields<PluginContext<TResolvedConfig, TSystemContext>>\n >(context, plugin, pluginHook, hooks[combinedKey][hookListOrder]);\n\n return hooks;\n }\n\n if (isFunction(pluginHook) || !pluginHook.order) {\n hooks[combinedKey].normal ??= [];\n\n hooks[combinedKey].normal = addPluginHook<\n PluginContext<TResolvedConfig, TSystemContext>,\n PluginHookFields<PluginContext<TResolvedConfig, TSystemContext>>\n >(context, plugin, pluginHook, hooks[combinedKey].normal);\n\n return hooks;\n }\n\n const hookListOrder = `${pluginHook.order}Ordered` as HookListOrders;\n hooks[combinedKey][hookListOrder] ??= [];\n\n hooks[combinedKey][hookListOrder] = addPluginHook<\n PluginContext<TResolvedConfig, TSystemContext>,\n PluginHookFields<PluginContext<TResolvedConfig, TSystemContext>>\n >(context, plugin, pluginHook, hooks[combinedKey][hookListOrder]);\n\n return hooks;\n } else if (isSetObject(pluginField)) {\n return Object.keys(pluginField)\n .map(pluginKey =>\n extractHooks(context, hooks, plugin, pluginKey, combinedKey)\n )\n .reduce((ret, current) => {\n Object.keys(current).forEach(key => {\n ret[key] ??= {\n preEnforced: [] as HooksListItem<\n PluginContext<TResolvedConfig, TSystemContext>\n >[],\n preOrdered: [] as HooksListItem<\n PluginContext<TResolvedConfig, TSystemContext>\n >[],\n normal: [] as HooksListItem<\n PluginContext<TResolvedConfig, TSystemContext>\n >[],\n postEnforced: [] as HooksListItem<\n PluginContext<TResolvedConfig, TSystemContext>\n >[],\n postOrdered: [] as HooksListItem<\n PluginContext<TResolvedConfig, TSystemContext>\n >[]\n };\n\n [\n \"preEnforced\",\n \"preOrdered\",\n \"normal\",\n \"postEnforced\",\n \"postOrdered\"\n ].forEach(order => {\n if (\n current[key]?.[\n order as keyof HooksList<\n PluginContext<TResolvedConfig, TSystemContext>\n >\n ]\n ) {\n ret[key]![\n order as keyof HooksList<\n PluginContext<TResolvedConfig, TSystemContext>\n >\n ] ??= [];\n ret[key]![\n order as keyof HooksList<\n PluginContext<TResolvedConfig, TSystemContext>\n >\n ] = ret[key]![\n order as keyof HooksList<\n PluginContext<TResolvedConfig, TSystemContext>\n >\n ]!.concat(\n current[key][\n order as keyof HooksList<\n PluginContext<TResolvedConfig, TSystemContext>\n >\n ]!\n );\n }\n });\n });\n\n return ret;\n }, hooks);\n }\n\n return hooks;\n}\n\nexport async function callHook<\n TKey extends string,\n TResolvedConfig extends ResolvedConfig,\n TSystemContext = unknown\n>(\n context: ExecutionContext<TResolvedConfig, TSystemContext>,\n key: TKey,\n options: CallHookOptions & {\n environment?: string | EnvironmentContext<TResolvedConfig, TSystemContext>;\n },\n ...args: InferHookParameters<\n PluginContext<TResolvedConfig, TSystemContext>,\n TKey\n >\n) {\n return _callHook<TResolvedConfig, TSystemContext, TKey>(\n isSetObject(options?.environment)\n ? options.environment\n : await context.getEnvironment(options?.environment),\n key,\n { sequential: true, ...options },\n ...args\n );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"hooks.mjs","names":["defu"],"sources":["../../src/lib/hooks.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { getField } from \"@stryke/helpers/get-field\";\nimport { isFunction } from \"@stryke/type-checks/is-function\";\nimport { isObject } from \"@stryke/type-checks/is-object\";\nimport { isSet } from \"@stryke/type-checks/is-set\";\nimport { isSetObject } from \"@stryke/type-checks/is-set-object\";\nimport { isSetString } from \"@stryke/type-checks/is-set-string\";\nimport { isString } from \"@stryke/type-checks/is-string\";\nimport { ArrayValues } from \"@stryke/types/array\";\nimport { AnyFunction } from \"@stryke/types/base\";\nimport chalk from \"chalk\";\nimport { defu } from \"defu\";\nimport {\n addPluginHook,\n colorText,\n isPluginHook,\n isPluginHookField,\n mergeConfig\n} from \"../plugin-utils\";\nimport type {\n CallHookOptions,\n EnvironmentContext,\n ExecutionContext,\n HookListOrders,\n HooksList,\n HooksListItem,\n InferHookParameters,\n InferHookReturnType,\n Plugin,\n PluginContext,\n PluginHookFields,\n ResolvedConfig\n} from \"../types\";\n\n/**\n * Merges the current hook result with the previous results based on their types.\n *\n * @param currentResult - The current hook result to merge with the previous results.\n * @param previousResults - The previous hook results to merge with the current result.\n * @returns The merged result.\n */\nexport function mergeResults<\n T extends Record<string | number | symbol, any> | string\n>(currentResult: T, previousResults: T[]): T[] {\n if (!previousResults || previousResults.length === 0) {\n return [currentResult];\n }\n\n if (isSetString(currentResult)) {\n previousResults = [\n `${isSetString(previousResults[0]) ? previousResults[0] || \"\" : \"\"}\\n${\n isSetString(previousResults[0])\n ? currentResult.replace(previousResults[0], \"\")\n : currentResult\n }`.trim() as T\n ];\n } else if (isObject(currentResult)) {\n previousResults =\n previousResults.length > 0\n ? [defu(currentResult, previousResults[0])]\n : [currentResult];\n }\n\n return previousResults;\n}\n\n/**\n * Merges multiple hook results together, with special handling for string values and object values.\n *\n * @param currentResult - The current hook result to merge with the previous results.\n * @param previousResults - The previous hook results to merge with the current result.\n * @returns The merged result.\n */\nexport function mergeConfigs<T>(currentResult: T, previousResults: T): T {\n if (isString(currentResult)) {\n previousResults =\n `${isString(previousResults) ? previousResults || \"\" : \"\"}\\n${\n currentResult || \"\"\n }`.trim() as T;\n } else if (isObject(currentResult)) {\n previousResults = mergeConfig(currentResult, previousResults ?? {}) as T;\n }\n\n return previousResults;\n}\n\n/**\n * Calls a hook with the given context, options, and arguments.\n *\n * @param context - The context to use when calling the hook.\n * @param key - The hook to call.\n * @param options - Options for calling the hook.\n * @param args - Arguments to pass to the hook.\n * @returns The return value of the hook.\n */\nasync function _callHook<\n TResolvedConfig extends ResolvedConfig,\n TSystemContext,\n TKey extends string\n>(\n context: EnvironmentContext<TResolvedConfig, TSystemContext>,\n key: TKey,\n options: CallHookOptions,\n ...args: InferHookParameters<\n PluginContext<TResolvedConfig, TSystemContext>,\n TKey\n >\n): Promise<\n | InferHookReturnType<PluginContext<TResolvedConfig, TSystemContext>, TKey>\n | undefined\n> {\n const hooks = context.selectHooks(key, options);\n if (hooks.length > 0) {\n const logger = context.extendLogger({ category: \"hooks\" });\n\n logger.debug(\n `🧩 Calling ${hooks.length} ${chalk.bold.cyanBright(\n `${key}${options?.order ? ` (${options.order})` : \"\"}`\n )} plugin hook${hooks.length > 1 ? \"s\" : \"\"}:\\n${hooks\n .map((hook, index) => ` ${index + 1}. ${colorText(hook.plugin.name)}`)\n .join(\"\\n\")}`\n );\n\n const invokeHook = async (\n hook: ArrayValues<typeof hooks>,\n hookArgs: InferHookParameters<\n PluginContext<TResolvedConfig, TSystemContext>,\n TKey\n >\n ) => {\n return Reflect.apply(hook.handler as AnyFunction, hook.context, hookArgs);\n };\n\n let results = [] as InferHookReturnType<\n PluginContext<TResolvedConfig, TSystemContext>,\n TKey\n >[];\n if (options?.sequential === false) {\n results = (await Promise.all(\n hooks.map(async hook => {\n if (!isFunction(hook.handler)) {\n throw new Error(\n `Plugin hook handler for hook \"${key}\" is not a function.`\n );\n }\n\n return invokeHook(hook, [...args]);\n })\n )) as InferHookReturnType<\n PluginContext<TResolvedConfig, TSystemContext>,\n TKey\n >[];\n } else {\n for (const hook of hooks) {\n if (!isFunction(hook.handler)) {\n throw new Error(\n `Plugin hook handler for hook \"${key}\" is not a function.`\n );\n }\n\n if (options?.result === \"first\" || options?.asNextParam === false) {\n results.push(\n (await Promise.resolve(\n invokeHook(hook, [...args])\n )) as InferHookReturnType<\n PluginContext<TResolvedConfig, TSystemContext>,\n TKey\n >\n );\n if (\n options?.result === \"first\" &&\n isSet(results[results.length - 1])\n ) {\n break;\n }\n } else {\n const sequenceArgs = [...args];\n if (results.length > 0 && sequenceArgs.length > 0) {\n sequenceArgs[0] = isFunction(options.asNextParam)\n ? await Promise.resolve(options.asNextParam(results[0]))\n : results[0];\n }\n\n const result = await Promise.resolve(\n invokeHook(hook, [...sequenceArgs] as InferHookParameters<\n PluginContext<TResolvedConfig, TSystemContext>,\n TKey\n >)\n );\n if (result) {\n if (options.result === \"last\") {\n results = [result];\n } else if (options.result === \"merge\" && options.merge) {\n results = [\n results.length > 0 && results[0]\n ? await Promise.resolve(options.merge(result, results[0]))\n : result\n ];\n } else {\n results = mergeResults(result, results);\n }\n }\n }\n }\n }\n\n const definedResults = results.filter(\n (\n result\n ): result is NonNullable<\n InferHookReturnType<\n PluginContext<TResolvedConfig, TSystemContext>,\n TKey\n >\n > => isSet(result)\n );\n\n if (definedResults.length > 0) {\n let mergedResult = undefined as\n | InferHookReturnType<\n PluginContext<TResolvedConfig, TSystemContext>,\n TKey\n >\n | undefined;\n\n for (const result of definedResults) {\n mergedResult = defu(\n result as Record<string, unknown>,\n mergedResult ?? {}\n ) as InferHookReturnType<\n PluginContext<TResolvedConfig, TSystemContext>,\n TKey\n >;\n }\n\n return mergedResult;\n }\n }\n\n return undefined;\n}\n\nexport function extractHooks<\n TResolvedConfig extends ResolvedConfig = ResolvedConfig,\n TSystemContext = unknown\n>(\n context: PluginContext<TResolvedConfig, TSystemContext>,\n hooks: Record<\n string,\n HooksList<PluginContext<TResolvedConfig, TSystemContext>>\n >,\n plugin: Plugin<PluginContext<TResolvedConfig, TSystemContext>>,\n key: string,\n parentKey?: string\n): Record<string, HooksList<PluginContext<TResolvedConfig, TSystemContext>>> {\n const combinedKey = parentKey ? `${parentKey}:${key}` : key;\n const pluginField = getField(plugin, combinedKey.replace(/:/g, \".\"));\n if (\n isPluginHookField<PluginContext<TResolvedConfig, TSystemContext>>(\n combinedKey\n ) &&\n isPluginHook(pluginField)\n ) {\n const pluginHook = pluginField;\n if (!isPluginHook(pluginHook)) {\n return hooks;\n }\n\n hooks[combinedKey] ??= {\n preEnforced: [] as HooksListItem<\n PluginContext<TResolvedConfig, TSystemContext>\n >[],\n preOrdered: [] as HooksListItem<\n PluginContext<TResolvedConfig, TSystemContext>\n >[],\n normal: [] as HooksListItem<\n PluginContext<TResolvedConfig, TSystemContext>\n >[],\n postEnforced: [] as HooksListItem<\n PluginContext<TResolvedConfig, TSystemContext>\n >[],\n postOrdered: [] as HooksListItem<\n PluginContext<TResolvedConfig, TSystemContext>\n >[]\n };\n\n if (plugin.enforce) {\n const hookListOrder = `${plugin.enforce}Enforced` as HookListOrders;\n hooks[combinedKey][hookListOrder] ??= [] as HooksListItem<\n PluginContext<TResolvedConfig, TSystemContext>\n >[];\n\n hooks[combinedKey][hookListOrder] = addPluginHook<\n PluginContext<TResolvedConfig, TSystemContext>,\n PluginHookFields<PluginContext<TResolvedConfig, TSystemContext>>\n >(context, plugin, pluginHook, hooks[combinedKey][hookListOrder]);\n\n return hooks;\n }\n\n if (isFunction(pluginHook) || !pluginHook.order) {\n hooks[combinedKey].normal ??= [];\n\n hooks[combinedKey].normal = addPluginHook<\n PluginContext<TResolvedConfig, TSystemContext>,\n PluginHookFields<PluginContext<TResolvedConfig, TSystemContext>>\n >(context, plugin, pluginHook, hooks[combinedKey].normal);\n\n return hooks;\n }\n\n const hookListOrder = `${pluginHook.order}Ordered` as HookListOrders;\n hooks[combinedKey][hookListOrder] ??= [];\n\n hooks[combinedKey][hookListOrder] = addPluginHook<\n PluginContext<TResolvedConfig, TSystemContext>,\n PluginHookFields<PluginContext<TResolvedConfig, TSystemContext>>\n >(context, plugin, pluginHook, hooks[combinedKey][hookListOrder]);\n\n return hooks;\n } else if (isSetObject(pluginField)) {\n return Object.keys(pluginField)\n .map(pluginKey =>\n extractHooks(context, hooks, plugin, pluginKey, combinedKey)\n )\n .reduce((ret, current) => {\n Object.keys(current).forEach(key => {\n ret[key] ??= {\n preEnforced: [] as HooksListItem<\n PluginContext<TResolvedConfig, TSystemContext>\n >[],\n preOrdered: [] as HooksListItem<\n PluginContext<TResolvedConfig, TSystemContext>\n >[],\n normal: [] as HooksListItem<\n PluginContext<TResolvedConfig, TSystemContext>\n >[],\n postEnforced: [] as HooksListItem<\n PluginContext<TResolvedConfig, TSystemContext>\n >[],\n postOrdered: [] as HooksListItem<\n PluginContext<TResolvedConfig, TSystemContext>\n >[]\n };\n\n [\n \"preEnforced\",\n \"preOrdered\",\n \"normal\",\n \"postEnforced\",\n \"postOrdered\"\n ].forEach(order => {\n if (\n current[key]?.[\n order as keyof HooksList<\n PluginContext<TResolvedConfig, TSystemContext>\n >\n ]\n ) {\n ret[key]![\n order as keyof HooksList<\n PluginContext<TResolvedConfig, TSystemContext>\n >\n ] ??= [];\n ret[key]![\n order as keyof HooksList<\n PluginContext<TResolvedConfig, TSystemContext>\n >\n ] = ret[key]![\n order as keyof HooksList<\n PluginContext<TResolvedConfig, TSystemContext>\n >\n ]!.concat(\n current[key][\n order as keyof HooksList<\n PluginContext<TResolvedConfig, TSystemContext>\n >\n ]!\n );\n }\n });\n });\n\n return ret;\n }, hooks);\n }\n\n return hooks;\n}\n\nexport async function callHook<\n TKey extends string,\n TResolvedConfig extends ResolvedConfig,\n TSystemContext = unknown\n>(\n context: ExecutionContext<TResolvedConfig, TSystemContext>,\n key: TKey,\n options: CallHookOptions & {\n environment?: string | EnvironmentContext<TResolvedConfig, TSystemContext>;\n },\n ...args: InferHookParameters<\n PluginContext<TResolvedConfig, TSystemContext>,\n TKey\n >\n) {\n return _callHook<TResolvedConfig, TSystemContext, TKey>(\n isSetObject(options?.environment)\n ? options.environment\n : await context.getEnvironment(options?.environment),\n key,\n { sequential: true, ...options },\n ...args\n );\n}\n"],"mappings":"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"}
|
package/dist/lib/index.cjs
CHANGED
|
@@ -1,11 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import __tsdown_shims_path from 'node:path'
|
|
4
|
-
import __tsdown_shims_url from 'node:url'
|
|
5
|
-
|
|
6
|
-
const __TSDOWN_SHIM_FILENAME__ = /* @__PURE__ */ __tsdown_shims_url.fileURLToPath(import.meta.url)
|
|
7
|
-
const __TSDOWN_SHIM_DIRNAME__ = /* @__PURE__ */ __tsdown_shims_path.dirname(__TSDOWN_SHIM_FILENAME__)
|
|
8
|
-
|
|
9
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
10
2
|
const require_lib_resolver = require('./resolver.cjs');
|
|
11
3
|
const require_lib_config = require('./config.cjs');
|
|
@@ -20,7 +12,7 @@ const require_lib_generate_types = require('./generate-types.cjs');
|
|
|
20
12
|
const require_lib_install_dependencies = require('./install-dependencies.cjs');
|
|
21
13
|
const require_lib_meta = require('./meta.cjs');
|
|
22
14
|
const require_lib_plugins = require('./plugins.cjs');
|
|
23
|
-
const require_fs = require('../
|
|
15
|
+
const require_fs = require('../fs-C2lru696.cjs');
|
|
24
16
|
require('./schemas.cjs');
|
|
25
17
|
const require_lib_streaming_channel = require('./streaming-channel.cjs');
|
|
26
18
|
const require_lib_typescript_tsconfig = require('./typescript/tsconfig.cjs');
|
package/dist/lib/index.d.cts
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { createEventEmitter } from "
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import { installDependencies } from "
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
21
|
-
import { generateSourceMap } from "
|
|
22
|
-
import { writeFile } from "
|
|
23
|
-
import { VirtualFileSystem } from "
|
|
1
|
+
import { a as getDefaultMode, c as loadWorkspaceConfig, d as resolveRoot, f as tryResolveWorkspaceConfig, i as getDefaultLogLevel, l as normalizeBasePath, n as ResolvePackageConfigsResult, o as loadParsedConfig, r as defineConfig, s as loadUserConfigFile, t as PartiallyResolvedContext, u as resolvePackageConfigs } from "../config-DKeDSykZ.cjs";
|
|
2
|
+
import { n as resolvePluginConfig, t as getConfigProps } from "../context-helpers-zXovPE7i.cjs";
|
|
3
|
+
import { a as resolveInput, i as resolveEntryOutput, n as isFileReference, o as resolveInputs, r as isResolvedEntryFileReference, s as resolveInputsSync, t as getUniqueInputs } from "../entry-BC_V2K2U.cjs";
|
|
4
|
+
import { t as createEventEmitter } from "../events-NA1XM2Vz.cjs";
|
|
5
|
+
import { i as handleTypes, n as emitBuiltinTypes, r as formatTypes, t as TypegenContext } from "../generate-types-CDkVosrS.cjs";
|
|
6
|
+
import { i as mergeResults, n as extractHooks, r as mergeConfigs, t as callHook } from "../index-xk4vSgtB.cjs";
|
|
7
|
+
import { t as installDependencies } from "../install-dependencies-CyeYsrfz.cjs";
|
|
8
|
+
import { i as writeMetaFile, n as getPersistedMeta, r as getPrefixedRootHash, t as CreateContextOptions } from "../meta-CdDd2ykC.cjs";
|
|
9
|
+
import { i as resolvePlugins, n as initPlugin, r as resolvePlugin, t as ResolvePluginsOptions } from "../plugins-DfL1fBZi.cjs";
|
|
10
|
+
import { n as createResolver, t as CreateResolverOptions } from "../resolver-CfCl--Eh.cjs";
|
|
11
|
+
import { a as FileSystem, i as FileStorage, n as FileMetadata, o as _capnpFileId, r as FileMetadata_KeyValuePair, t as FileId } from "../schemas-Zvqwdrw_.cjs";
|
|
12
|
+
import { a as StreamReader, c as createStreamReader, i as StreamErrorPayload, l as createStreamSink, n as CreateStreamReaderOptions, o as StreamSink, r as CreateStreamSinkOptions, s as StreamSinkEvents, t as BufferedChunk } from "../streaming-channel-CiyFd_6l.cjs";
|
|
13
|
+
import { n as createProgram, t as VirtualFileSystemHost } from "../ts-morph-BGgjbOgM.cjs";
|
|
14
|
+
import { a as getTsconfigFilePath, c as isMatchFound, i as getTsconfigDtsPath, l as resolveTsconfig, n as findMatch, o as initializeTsconfig, r as getParsedTypeScriptConfig, s as isIncludeMatchFound, t as findIncludeMatch, u as tryTsconfigFilePath } from "../tsconfig-DExoZEQ0.cjs";
|
|
15
|
+
import { n as isUnpluginBuilderVariant, t as combineContexts } from "../helpers-DBLIQW3U.cjs";
|
|
16
|
+
import { n as createUnpluginModuleResolutionFunctions, t as CreateUnpluginModuleResolutionFunctionsOptions } from "../module-resolution-D-w-EZaK.cjs";
|
|
17
|
+
import { i as createUnpluginResolver, n as CreateUnpluginResolverOptions, r as createUnplugin, t as CreateUnpluginOptions } from "../plugin-CzV-aFwU.cjs";
|
|
18
|
+
import { a as getTypescriptFileHeader, i as getFileHeaderWarningText, n as getFileHeader, r as getFileHeaderWarning, t as FileHeaderOptions } from "../file-header-Co9oo7aI.cjs";
|
|
19
|
+
import { n as formatFolder, t as format } from "../format-Cf-cgZ-s.cjs";
|
|
20
|
+
import { n as getSourceFile, r as getString, t as getMagicString } from "../source-file-CuuHaBL5.cjs";
|
|
21
|
+
import { t as generateSourceMap } from "../source-map-HU4IoICc.cjs";
|
|
22
|
+
import { t as writeFile } from "../write-file-BVMnXVPo.cjs";
|
|
23
|
+
import { t as VirtualFileSystem } from "../vfs-B9Vhnajc.cjs";
|
|
24
24
|
export { BufferedChunk, CreateContextOptions, CreateResolverOptions, CreateStreamReaderOptions, CreateStreamSinkOptions, CreateUnpluginModuleResolutionFunctionsOptions, CreateUnpluginOptions, CreateUnpluginResolverOptions, FileHeaderOptions, FileId, FileMetadata, FileMetadata_KeyValuePair, FileStorage, FileSystem, PartiallyResolvedContext, ResolvePackageConfigsResult, ResolvePluginsOptions, StreamErrorPayload, StreamReader, StreamSink, StreamSinkEvents, TypegenContext, VirtualFileSystem, VirtualFileSystemHost, _capnpFileId, callHook, combineContexts, createEventEmitter, createProgram, createResolver, createStreamReader, createStreamSink, createUnplugin, createUnpluginModuleResolutionFunctions, createUnpluginResolver, defineConfig, emitBuiltinTypes, extractHooks, findIncludeMatch, findMatch, format, formatFolder, formatTypes, generateSourceMap, getConfigProps, getDefaultLogLevel, getDefaultMode, getFileHeader, getFileHeaderWarning, getFileHeaderWarningText, getMagicString, getParsedTypeScriptConfig, getPersistedMeta, getPrefixedRootHash, getSourceFile, getString, getTsconfigDtsPath, getTsconfigFilePath, getTypescriptFileHeader, getUniqueInputs, handleTypes, initPlugin, initializeTsconfig, installDependencies, isFileReference, isIncludeMatchFound, isMatchFound, isResolvedEntryFileReference, isUnpluginBuilderVariant, loadParsedConfig, loadUserConfigFile, loadWorkspaceConfig, mergeConfigs, mergeResults, normalizeBasePath, resolveEntryOutput, resolveInput, resolveInputs, resolveInputsSync, resolvePackageConfigs, resolvePlugin, resolvePluginConfig, resolvePlugins, resolveRoot, resolveTsconfig, tryResolveWorkspaceConfig, tryTsconfigFilePath, writeFile, writeMetaFile };
|