powerlines 0.6.1 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/astro.cjs +8 -8
- package/dist/astro.d.cts +1 -1
- package/dist/astro.d.ts +1 -1
- package/dist/astro.js +5 -5
- package/dist/{chunk-KNO2M23A.js → chunk-2CNNHTLQ.js} +3 -3
- package/dist/{chunk-L5GLIKXZ.js → chunk-3KDLNXR2.js} +3 -3
- package/dist/{chunk-ADSCR5XG.js → chunk-3M7JOAG2.js} +3 -3
- package/dist/{chunk-TXTWKVWH.js → chunk-3TWKQNDH.js} +3 -3
- package/dist/chunk-3WADZS76.cjs +24 -0
- package/dist/chunk-4AKYOJXA.cjs +20 -0
- package/dist/{chunk-WJT7T6W5.cjs → chunk-5BMVZ2J3.cjs} +25 -20
- package/dist/{chunk-5QMOCGCK.js → chunk-5FOMG64G.js} +3 -3
- package/dist/{chunk-FO3BCZ7I.cjs → chunk-B5UJMXT7.cjs} +2 -2
- package/dist/chunk-CT56Z4A5.cjs +12 -0
- package/dist/{chunk-AW2LSG43.cjs → chunk-G4VNZ3U2.cjs} +4 -4
- package/dist/{chunk-FK3MZTKX.cjs → chunk-H3DAM4ZC.cjs} +4 -4
- package/dist/{chunk-B6G6LTDH.js → chunk-HQOIPPXC.js} +3 -3
- package/dist/{chunk-KFCDBHCT.js → chunk-ITUNIK6G.js} +24 -19
- package/dist/{chunk-RF2IZCFH.cjs → chunk-IWAWK6QY.cjs} +4 -4
- package/dist/chunk-KMLFL4CW.js +14 -0
- package/dist/{chunk-FAMB6PTO.cjs → chunk-L2FOZFCY.cjs} +4 -4
- package/dist/{chunk-S7USQUJV.js → chunk-L3BSBOST.js} +3 -3
- package/dist/chunk-LJKLD77I.cjs +12 -0
- package/dist/chunk-NKOW5VPV.cjs +12 -0
- package/dist/chunk-NWADEQ7Z.cjs +12 -0
- package/dist/chunk-PBF6NZ5X.cjs +12 -0
- package/dist/{chunk-UPPRHJT4.js → chunk-QQGS6IQZ.js} +3 -3
- package/dist/{chunk-NDZJPIXK.cjs → chunk-R7QBD2CA.cjs} +8 -8
- package/dist/{chunk-7HEPGGKY.cjs → chunk-RELMZQ2F.cjs} +4 -4
- package/dist/{chunk-UDSXA7AL.cjs → chunk-S7OH2JEE.cjs} +2 -2
- package/dist/{chunk-N2QM4T3D.js → chunk-SXZICBIR.js} +2 -2
- package/dist/chunk-ULXUM6T3.cjs +34 -0
- package/dist/chunk-UWSABODX.js +31 -0
- package/dist/{chunk-SXQLYT2H.js → chunk-UXQMPRRF.js} +2 -2
- package/dist/{chunk-5ACQG5UA.js → chunk-XPRQFK7T.js} +3 -3
- package/dist/{chunk-S4I5DL5U.js → chunk-XQNFWNO4.js} +3 -3
- package/dist/{chunk-DJ7OEHR6.js → chunk-Y3DXEDVV.js} +3 -3
- package/dist/{chunk-TBICI24M.js → chunk-ZBOHY2FX.js} +4 -4
- package/dist/define-config.d.cts +1 -1
- package/dist/define-config.d.ts +1 -1
- package/dist/esbuild.cjs +7 -7
- package/dist/esbuild.d.cts +1 -1
- package/dist/esbuild.d.ts +1 -1
- package/dist/esbuild.js +4 -4
- package/dist/extend-plugin.cjs +13 -0
- package/dist/extend-plugin.d.cts +48 -0
- package/dist/extend-plugin.d.ts +48 -0
- package/dist/extend-plugin.js +4 -0
- package/dist/farm.cjs +4 -4
- package/dist/farm.d.cts +1 -1
- package/dist/farm.d.ts +1 -1
- package/dist/farm.js +3 -3
- package/dist/hooks-Bsux3yRH.d.cts +28 -0
- package/dist/hooks-DNo6rFyJ.d.ts +28 -0
- package/dist/index.cjs +27 -22
- package/dist/index.d.cts +4 -2
- package/dist/index.d.ts +4 -2
- package/dist/index.js +18 -17
- package/dist/internal/api.cjs +3 -3
- package/dist/internal/api.d.cts +2 -1
- package/dist/internal/api.d.ts +2 -1
- package/dist/internal/api.js +2 -2
- package/dist/lib/build/esbuild.d.cts +2 -2
- package/dist/lib/build/esbuild.d.ts +2 -2
- package/dist/lib/build/index.cjs +4 -4
- package/dist/lib/build/index.d.cts +3 -2
- package/dist/lib/build/index.d.ts +3 -2
- package/dist/lib/build/index.js +1 -1
- package/dist/lib/build/rolldown.d.cts +2 -2
- package/dist/lib/build/rolldown.d.ts +2 -2
- package/dist/lib/build/rollup.d.cts +2 -2
- package/dist/lib/build/rollup.d.ts +2 -2
- package/dist/lib/build/rspack.d.cts +2 -2
- package/dist/lib/build/rspack.d.ts +2 -2
- package/dist/lib/build/tsup.d.cts +2 -2
- package/dist/lib/build/tsup.d.ts +2 -2
- package/dist/lib/build/unbuild.cjs +4 -4
- package/dist/lib/build/unbuild.d.cts +22 -3
- package/dist/lib/build/unbuild.d.ts +22 -3
- package/dist/lib/build/unbuild.js +1 -1
- package/dist/lib/build/vite.d.cts +2 -2
- package/dist/lib/build/vite.d.ts +2 -2
- package/dist/lib/build/webpack.d.cts +2 -2
- package/dist/lib/build/webpack.d.ts +2 -2
- package/dist/lib/{chunk-TJURBPBY.cjs → chunk-6WVUO7M4.cjs} +3 -3
- package/dist/lib/chunk-6WVUO7M4.cjs.map +1 -0
- package/dist/lib/{chunk-RAMRPMFI.js → chunk-76ZPTPDX.js} +3 -4
- package/dist/lib/chunk-76ZPTPDX.js.map +1 -0
- package/dist/lib/{chunk-W6ZSRUY2.cjs → chunk-7IBV47QK.cjs} +2 -3
- package/dist/lib/chunk-7IBV47QK.cjs.map +1 -0
- package/dist/lib/{chunk-UGV446VO.cjs → chunk-7QV523K6.cjs} +3 -4
- package/dist/lib/chunk-7QV523K6.cjs.map +1 -0
- package/dist/lib/{chunk-OY2CMFTJ.js → chunk-B74JOQLB.js} +2 -3
- package/dist/lib/chunk-B74JOQLB.js.map +1 -0
- package/dist/lib/{chunk-YO7VJP6Z.cjs → chunk-K5WQ3PLT.cjs} +36 -31
- package/dist/lib/chunk-K5WQ3PLT.cjs.map +1 -0
- package/dist/lib/{chunk-T6FKCZRX.js → chunk-XOHGJW5P.js} +3 -3
- package/dist/lib/chunk-XOHGJW5P.js.map +1 -0
- package/dist/lib/{chunk-QZUPXK3A.js → chunk-XXK5BM6Z.js} +23 -18
- package/dist/lib/chunk-XXK5BM6Z.js.map +1 -0
- package/dist/lib/{config-CHVR37vX.d.ts → config-CNAXWorR.d.ts} +11 -53
- package/dist/lib/{config-DoR-gOOH.d.cts → config-Db6OT19W.d.cts} +11 -53
- package/dist/lib/config-file.d.cts +2 -2
- package/dist/lib/config-file.d.ts +2 -2
- package/dist/lib/deepkit/index.cjs +1 -1
- package/dist/lib/deepkit/index.d.cts +2 -2
- package/dist/lib/deepkit/index.d.ts +2 -2
- package/dist/lib/deepkit/index.js +1 -1
- package/dist/lib/deepkit/reflect-type.cjs +1 -1
- package/dist/lib/deepkit/reflect-type.d.cts +2 -2
- package/dist/lib/deepkit/reflect-type.d.ts +2 -2
- package/dist/lib/deepkit/reflect-type.js +1 -1
- package/dist/lib/deepkit/resolve-reflections.d.cts +2 -2
- package/dist/lib/deepkit/resolve-reflections.d.ts +2 -2
- package/dist/lib/deepkit/transformer.d.cts +2 -2
- package/dist/lib/deepkit/transformer.d.ts +2 -2
- package/dist/lib/entry.d.cts +2 -2
- package/dist/lib/entry.d.ts +2 -2
- package/dist/lib/hooks-Do13PWjN.d.cts +28 -0
- package/dist/lib/hooks-PaFdWKMh.d.ts +28 -0
- package/dist/lib/index.cjs +19 -19
- package/dist/lib/index.d.cts +3 -2
- package/dist/lib/index.d.ts +3 -2
- package/dist/lib/index.js +4 -4
- package/dist/lib/logger.d.cts +2 -2
- package/dist/lib/logger.d.ts +2 -2
- package/dist/lib/typescript/compiler-host.d.cts +2 -2
- package/dist/lib/typescript/compiler-host.d.ts +2 -2
- package/dist/lib/typescript/import-transformer.d.cts +2 -2
- package/dist/lib/typescript/import-transformer.d.ts +2 -2
- package/dist/lib/typescript/index.d.cts +2 -2
- package/dist/lib/typescript/index.d.ts +2 -2
- package/dist/lib/typescript/program.d.cts +2 -2
- package/dist/lib/typescript/program.d.ts +2 -2
- package/dist/lib/typescript/transpile.d.cts +2 -2
- package/dist/lib/typescript/transpile.d.ts +2 -2
- package/dist/lib/unplugin/factory.cjs +3 -3
- package/dist/lib/unplugin/factory.d.cts +3 -2
- package/dist/lib/unplugin/factory.d.ts +3 -2
- package/dist/lib/unplugin/factory.js +2 -2
- package/dist/lib/unplugin/index.cjs +5 -5
- package/dist/lib/unplugin/index.d.cts +3 -2
- package/dist/lib/unplugin/index.d.ts +3 -2
- package/dist/lib/unplugin/index.js +3 -3
- package/dist/lib/unplugin/plugin.cjs +2 -2
- package/dist/lib/unplugin/plugin.d.cts +2 -2
- package/dist/lib/unplugin/plugin.d.ts +2 -2
- package/dist/lib/unplugin/plugin.js +1 -1
- package/dist/lib/unplugin/resolve-id.d.cts +2 -2
- package/dist/lib/unplugin/resolve-id.d.ts +2 -2
- package/dist/lib/utilities/file-header.d.cts +2 -2
- package/dist/lib/utilities/file-header.d.ts +2 -2
- package/dist/lib/utilities/index.cjs +14 -14
- package/dist/lib/utilities/index.d.cts +2 -2
- package/dist/lib/utilities/index.d.ts +2 -2
- package/dist/lib/utilities/index.js +1 -1
- package/dist/lib/utilities/meta.d.cts +2 -2
- package/dist/lib/utilities/meta.d.ts +2 -2
- package/dist/lib/utilities/plugin-helpers.cjs +14 -14
- package/dist/lib/utilities/plugin-helpers.d.cts +1 -1
- package/dist/lib/utilities/plugin-helpers.d.ts +1 -1
- package/dist/lib/utilities/plugin-helpers.js +1 -1
- package/dist/lib/utilities/resolve-path.d.cts +2 -2
- package/dist/lib/utilities/resolve-path.d.ts +2 -2
- package/dist/lib/utilities/worker.d.cts +2 -2
- package/dist/lib/utilities/worker.d.ts +2 -2
- package/dist/lib/utilities/write-file.d.cts +2 -2
- package/dist/lib/utilities/write-file.d.ts +2 -2
- package/dist/next.cjs +8 -8
- package/dist/next.js +5 -5
- package/dist/nuxt.cjs +9 -9
- package/dist/nuxt.js +6 -6
- package/dist/{resolved-FsbyTSdi.d.cts → resolved-DcBls4aH.d.cts} +142 -186
- package/dist/{resolved-BAlwv88V.d.ts → resolved-vAIx5R3j.d.ts} +142 -186
- package/dist/rolldown.cjs +7 -7
- package/dist/rolldown.d.cts +1 -1
- package/dist/rolldown.d.ts +1 -1
- package/dist/rolldown.js +4 -4
- package/dist/rollup.cjs +7 -7
- package/dist/rollup.d.cts +1 -1
- package/dist/rollup.d.ts +1 -1
- package/dist/rollup.js +4 -4
- package/dist/rspack.cjs +7 -7
- package/dist/rspack.d.cts +1 -1
- package/dist/rspack.d.ts +1 -1
- package/dist/rspack.js +4 -4
- package/dist/tsup.cjs +8 -8
- package/dist/tsup.js +5 -5
- package/dist/types/babel.d.cts +1 -1
- package/dist/types/babel.d.ts +1 -1
- package/dist/types/commands.d.cts +1 -1
- package/dist/types/commands.d.ts +1 -1
- package/dist/types/compiler.d.cts +1 -1
- package/dist/types/compiler.d.ts +1 -1
- package/dist/types/config.d.cts +1 -1
- package/dist/types/config.d.ts +1 -1
- package/dist/types/context.cjs +2 -2
- package/dist/types/context.d.cts +1 -1
- package/dist/types/context.d.ts +1 -1
- package/dist/types/context.js +1 -1
- package/dist/types/hooks.d.cts +1 -1
- package/dist/types/hooks.d.ts +1 -1
- package/dist/types/index.cjs +4 -4
- package/dist/types/index.d.cts +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/index.js +2 -2
- package/dist/types/internal.cjs +4 -0
- package/dist/types/internal.cjs.map +1 -0
- package/dist/types/internal.d.cts +61 -0
- package/dist/types/internal.d.ts +61 -0
- package/dist/types/internal.js +3 -0
- package/dist/types/internal.js.map +1 -0
- package/dist/types/plugin.cjs +2 -2
- package/dist/types/plugin.d.cts +1 -1
- package/dist/types/plugin.d.ts +1 -1
- package/dist/types/plugin.js +1 -1
- package/dist/types/resolved.d.cts +1 -1
- package/dist/types/resolved.d.ts +1 -1
- package/dist/types/unplugin.d.cts +1 -1
- package/dist/types/unplugin.d.ts +1 -1
- package/dist/unloader.cjs +7 -7
- package/dist/unloader.d.cts +1 -1
- package/dist/unloader.d.ts +1 -1
- package/dist/unloader.js +4 -4
- package/dist/unplugin.cjs +18 -18
- package/dist/unplugin.d.cts +2 -1
- package/dist/unplugin.d.ts +2 -1
- package/dist/unplugin.js +15 -15
- package/dist/vite.cjs +7 -7
- package/dist/vite.d.cts +1 -1
- package/dist/vite.d.ts +1 -1
- package/dist/vite.js +4 -4
- package/dist/webpack.cjs +7 -7
- package/dist/webpack.d.cts +1 -1
- package/dist/webpack.d.ts +1 -1
- package/dist/webpack.js +4 -4
- package/package.json +65 -51
- package/dist/chunk-3UC4BQUF.cjs +0 -12
- package/dist/chunk-5N6IHHFL.cjs +0 -12
- package/dist/chunk-7XTLR5US.cjs +0 -12
- package/dist/chunk-BMCONDG7.cjs +0 -12
- package/dist/chunk-H2CDRBLH.cjs +0 -24
- package/dist/chunk-KZKUYJFE.cjs +0 -34
- package/dist/chunk-LKIMLMOB.cjs +0 -12
- package/dist/chunk-OFLJD3YF.js +0 -31
- package/dist/lib/chunk-OY2CMFTJ.js.map +0 -1
- package/dist/lib/chunk-QZUPXK3A.js.map +0 -1
- package/dist/lib/chunk-RAMRPMFI.js.map +0 -1
- package/dist/lib/chunk-T6FKCZRX.js.map +0 -1
- package/dist/lib/chunk-TJURBPBY.cjs.map +0 -1
- package/dist/lib/chunk-UGV446VO.cjs.map +0 -1
- package/dist/lib/chunk-W6ZSRUY2.cjs.map +0 -1
- package/dist/lib/chunk-YO7VJP6Z.cjs.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/lib/unplugin/plugin.ts"],"names":["createUnplugin","context","options","ctx","log","extendLog","LogLevelLabel","DEBUG","buildStart","$$internal","callHook","sequential","resolveId","id","importer","opts","isEntry","result","order","handleResolveId","skipResolve","skipNodeModulesBundle","config","build","external","noExternal","load","resolvedPath","fs","resolvePath","type","readFile","transform","code","transformed","handler","environment","selectHooks","apply","defu","getString","buildEnd","writeBundle","name","filter","include","buildFinish","vite","sharedDuringBuild","error","FATAL","message"],"mappings":"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","file":"chunk-RAMRPMFI.js","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 { LogLevelLabel } from \"@storm-software/config-tools/types\";\nimport defu from \"defu\";\nimport type {\n ExternalIdResult,\n TransformResult,\n UnpluginBuildContext,\n UnpluginContext,\n UnpluginFactory\n} from \"unplugin\";\n// eslint-disable-next-line camelcase\nimport { Internal_PluginContext, PluginContext } from \"../../types/context\";\nimport { extendLog } from \"../logger\";\nimport { getString } from \"../utilities/source-file\";\nimport { handleResolveId } from \"./resolve-id\";\n\nexport interface CreateUnpluginOptions {\n /**\n * If true, skips the plugin resolution step.\n *\n * @remarks\n * This value should be set to `true` when using a build tool that handles `external` and `noExternal` options itself (for example `tsup`).\n *\n * @defaultValue false\n */\n skipResolve?: boolean;\n}\n\n/**\n * Creates a Powerlines unplugin instance.\n *\n * @param context - The plugin context.\n * @param options - Options for creating the unplugin.\n * @returns The unplugin instance.\n */\nexport function createUnplugin<TContext extends PluginContext = PluginContext>(\n context: TContext,\n options: CreateUnpluginOptions = {}\n): UnpluginFactory<object> {\n // eslint-disable-next-line camelcase\n const ctx = context as unknown as Internal_PluginContext;\n\n return () => {\n const log = extendLog(ctx.log, \"unplugin\");\n log(LogLevelLabel.DEBUG, \"Initializing Unplugin\");\n\n try {\n async function buildStart(this: UnpluginBuildContext) {\n log(LogLevelLabel.DEBUG, \"Powerlines build plugin starting...\");\n\n await ctx.$$internal.callHook(\"buildStart\", {\n sequential: true\n });\n }\n\n async function resolveId(\n this: UnpluginBuildContext & UnpluginContext,\n id: string,\n importer?: string,\n opts: {\n isEntry: boolean;\n } = { isEntry: false }\n ): Promise<string | ExternalIdResult | null | undefined> {\n let result = await ctx.$$internal.callHook(\n \"resolveId\",\n {\n sequential: true,\n result: \"first\",\n order: \"pre\"\n },\n id,\n importer,\n opts\n );\n if (result) {\n return result;\n }\n\n result = await ctx.$$internal.callHook(\n \"resolveId\",\n {\n sequential: true,\n result: \"first\",\n order: \"normal\"\n },\n id,\n importer,\n opts\n );\n if (result) {\n return result;\n }\n\n result = await handleResolveId(\n ctx,\n {\n id,\n importer,\n options: opts\n },\n {\n skipResolve: options.skipResolve,\n skipNodeModulesBundle: ctx.config.build.skipNodeModulesBundle,\n external: ctx.config.build.external,\n noExternal: ctx.config.build.noExternal\n }\n );\n if (result) {\n return result;\n }\n\n return ctx.$$internal.callHook(\n \"resolveId\",\n {\n sequential: true,\n result: \"first\",\n order: \"post\"\n },\n id,\n importer,\n opts\n );\n }\n\n async function load(\n this: UnpluginBuildContext & UnpluginContext,\n id: string\n ): Promise<TransformResult | null | undefined> {\n let result = await ctx.$$internal.callHook(\n \"load\",\n {\n sequential: true,\n result: \"first\",\n order: \"pre\"\n },\n id\n );\n if (result) {\n return result;\n }\n\n result = await ctx.$$internal.callHook(\n \"load\",\n {\n sequential: true,\n result: \"first\",\n order: \"normal\"\n },\n id\n );\n if (result) {\n return result;\n }\n\n if (id) {\n const resolvedPath = ctx.fs.resolvePath(id, {\n type: \"file\"\n });\n if (resolvedPath) {\n return ctx.fs.readFile(resolvedPath);\n }\n }\n\n return ctx.$$internal.callHook(\n \"load\",\n {\n sequential: true,\n result: \"first\",\n order: \"post\"\n },\n id\n );\n }\n\n async function transform(\n this: UnpluginBuildContext & UnpluginContext,\n code: string,\n id: string\n ): Promise<TransformResult | null | undefined> {\n let transformed: TransformResult | string = code;\n\n for (const handler of ctx.$$internal.environment.selectHooks(\n \"transform\"\n )) {\n const result: TransformResult | string | undefined =\n await handler.apply(defu(ctx, this), [getString(transformed), id]);\n if (result) {\n transformed = result;\n }\n }\n\n return transformed;\n }\n\n async function buildEnd(this: UnpluginBuildContext): Promise<void> {\n log(LogLevelLabel.DEBUG, \"Powerlines build plugin finishing...\");\n\n return ctx.$$internal.callHook(\"buildEnd\", {\n sequential: true\n });\n }\n\n async function writeBundle(): Promise<void> {\n log(LogLevelLabel.DEBUG, \"Finalizing Powerlines project output...\");\n\n return ctx.$$internal.callHook(\"writeBundle\", {\n sequential: true\n });\n }\n\n return {\n name: \"powerlines\",\n resolveId: {\n filter: {\n id: {\n include: [/.*/]\n }\n },\n handler: resolveId\n },\n load: {\n filter: {\n id: {\n include: [/.*/, /^storm:/]\n }\n },\n handler: load\n },\n transform,\n buildStart,\n buildFinish: buildEnd,\n writeBundle,\n vite: {\n sharedDuringBuild: true\n }\n };\n } catch (error) {\n log(LogLevelLabel.FATAL, (error as Error)?.message);\n\n throw error;\n }\n };\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/types/commands.ts","../../src/lib/utilities/plugin-helpers.ts"],"names":["SUPPORTED_COMMANDS","isPlugin","value","isSetObject","isSetString","name","isUndefined","applyToEnvironment","isFunction","dedupe","dependsOn","Array","isArray","every","isPluginConfig","command","handler","isPluginConfigObject","plugin","options","isPluginConfigTuple","length","isPluginHookFunction","isPluginHookObject","isPluginHook","getHookHandler","pluginHook","extractPluginHook","context","hook","undefined","normal","bind","order","isHookExternal","startsWith","isHookInternal","checkDedupe","plugins","some","p","addPluginHook","hooksList","map","push"],"mappings":"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","file":"chunk-T6FKCZRX.js","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 type { ArrayValues } from \"@stryke/types/array\";\nimport type { MaybePromise } from \"@stryke/types/base\";\nimport type { Context } from \"./context\";\n\nexport const SUPPORTED_COMMANDS = [\n \"new\",\n \"clean\",\n \"prepare\",\n \"lint\",\n \"test\",\n \"build\",\n \"docs\",\n \"release\",\n \"finalize\"\n] as const;\n\nexport type CommandType = ArrayValues<typeof SUPPORTED_COMMANDS>;\nexport type Commands<TContext extends Context = Context> = Record<\n CommandType,\n (this: TContext) => MaybePromise<void>\n>;\n","/* -------------------------------------------------------------------\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 { isFunction } from \"@stryke/type-checks/is-function\";\nimport { isSetObject } from \"@stryke/type-checks/is-set-object\";\nimport { isSetString } from \"@stryke/type-checks/is-set-string\";\nimport { isUndefined } from \"@stryke/type-checks/is-undefined\";\nimport { AnyFunction } from \"@stryke/types/base\";\nimport { ResolvedConfig } from \"powerlines/types/resolved\";\nimport { SUPPORTED_COMMANDS } from \"../../types/commands\";\nimport {\n PluginConfig,\n PluginConfigObject,\n PluginConfigTuple\n} from \"../../types/config\";\nimport { PluginContext } from \"../../types/context\";\nimport {\n BaseHookKeys,\n BaseHooksListItem,\n ExternalHookKeys,\n HookKeys\n} from \"../../types/hooks\";\nimport { Plugin, PluginHook, PluginHookObject } from \"../../types/plugin\";\n\n/**\n * Type guard to check if an object is a {@link Plugin}\n *\n * @param value - The object to check\n * @returns True if the object is a {@link Plugin}, false otherwise\n */\nexport function isPlugin<\n TResolvedConfig extends ResolvedConfig = ResolvedConfig\n>(value: unknown): value is Plugin<PluginContext<TResolvedConfig>> {\n return (\n isSetObject(value) &&\n \"name\" in value &&\n isSetString(value.name) &&\n (isUndefined(\n (value as Plugin<PluginContext<TResolvedConfig>>).applyToEnvironment\n ) ||\n (\"applyToEnvironment\" in value &&\n isFunction(value.applyToEnvironment))) &&\n (isUndefined((value as Plugin<PluginContext<TResolvedConfig>>).dedupe) ||\n (\"dedupe\" in value && isFunction(value.dedupe))) &&\n (isUndefined((value as Plugin<PluginContext<TResolvedConfig>>).dependsOn) ||\n (\"dependsOn\" in value &&\n Array.isArray(value.dependsOn) &&\n value.dependsOn.every(isPluginConfig))) &&\n SUPPORTED_COMMANDS.every(\n command =>\n isUndefined(\n (value as Plugin<PluginContext<TResolvedConfig>>)[command]\n ) ||\n (command in value &&\n (isFunction((value as Record<string, any>)[command]) ||\n (isSetObject((value as Record<string, any>)[command]) &&\n \"handler\" in (value as Record<string, any>)[command] &&\n isFunction((value as Record<string, any>)[command].handler))))\n )\n );\n}\n\n/**\n * Type guard to check if an object is a {@link PluginConfigObject}\n *\n * @param value - The object to check\n * @returns True if the object is a {@link PluginConfigObject}, false otherwise\n */\nexport function isPluginConfigObject(\n value: unknown\n): value is PluginConfigObject {\n return (\n isSetObject(value) &&\n \"plugin\" in value &&\n (((isSetString(value.plugin) || isFunction(value.plugin)) &&\n \"options\" in value &&\n isSetObject(value.options)) ||\n isPlugin(value.plugin))\n );\n}\n\n/**\n * Type guard to check if an object is a {@link PluginConfigTuple}\n *\n * @param value - The object to check\n * @returns True if the object is a {@link PluginConfigTuple}, false otherwise\n */\nexport function isPluginConfigTuple(\n value: unknown\n): value is PluginConfigTuple {\n return (\n Array.isArray(value) &&\n (value.length === 1 || value.length === 2) &&\n (((isSetString(value[0]) || isFunction(value[0])) &&\n value.length > 1 &&\n isSetObject(value[1])) ||\n isPlugin(value[0]))\n );\n}\n\n/**\n * Type guard to check if an object is a {@link PluginConfig}\n *\n * @param value - The object to check\n * @returns True if the object is a {@link PluginConfig}, false otherwise\n */\nexport function isPluginConfig(value: unknown): value is PluginConfig {\n return (\n isSetString(value) ||\n isFunction(value) ||\n isPlugin(value) ||\n isPluginConfigObject(value) ||\n isPluginConfigTuple(value)\n );\n}\n\n/**\n * Type guard to check if an value is a {@link PluginHook} function\n *\n * @param value - The value to check\n * @returns True if the value is a {@link PluginHook} function, false otherwise\n */\nexport function isPluginHookFunction(value: unknown): value is AnyFunction {\n return (\n isFunction(value) ||\n (isSetObject(value) && \"handler\" in value && isFunction(value.handler))\n );\n}\n\n/**\n * Type guard to check if an value is a {@link PluginHook} function\n *\n * @param value - The value to check\n * @returns True if the value is a {@link PluginHook} function, false otherwise\n */\nexport function isPluginHookObject(\n value: unknown\n): value is PluginHookObject<AnyFunction> {\n return isSetObject(value) && \"handler\" in value && isFunction(value.handler);\n}\n\n/**\n * Type guard to check if an object is a {@link PluginHook}\n *\n * @param value - The object to check\n * @returns True if the object is a {@link PluginHook}, false otherwise\n */\nexport function isPluginHook(value: unknown): value is PluginHook<AnyFunction> {\n return isPluginHookFunction(value) || isPluginHookObject(value);\n}\n\n/**\n * Extract the hook handler function from a plugin hook\n *\n * @param pluginHook - The plugin hook to extract the handler function from\n * @returns The hook handler function\n */\nexport function getHookHandler(\n pluginHook: PluginHook<AnyFunction>\n): AnyFunction {\n return isFunction(pluginHook) ? pluginHook : pluginHook.handler;\n}\n\n/**\n * Extract a plugin hook from a plugin\n *\n * @param context - The build context\n * @param plugin - The plugin to extract the hook from\n * @param hook - The name of the hook to extract\n * @returns The extracted hook, or undefined if the hook does not exist\n */\nexport function extractPluginHook<\n TContext extends PluginContext = PluginContext,\n TPlugin extends Plugin<TContext> = Plugin<TContext>\n>(context: TContext, plugin: TPlugin, hook: BaseHookKeys<TContext>) {\n const pluginHook = plugin[hook];\n if (!isPluginHook(pluginHook)) {\n return undefined;\n }\n\n return isFunction(pluginHook)\n ? {\n normal: pluginHook.bind(context)\n }\n : {\n [pluginHook.order ? pluginHook.order : \"normal\"]:\n pluginHook.handler.bind(context)\n };\n}\n\n/**\n * Check if a hook is external.\n *\n * @param hook - The name of the hook to check.\n * @returns True if the hook is external, false otherwise.\n */\nexport function isHookExternal(hook: HookKeys): hook is ExternalHookKeys {\n return (\n hook.startsWith(\"vite:\") ||\n hook.startsWith(\"esbuild:\") ||\n hook.startsWith(\"rolldown:\") ||\n hook.startsWith(\"rollup:\") ||\n hook.startsWith(\"webpack:\") ||\n hook.startsWith(\"rspack:\") ||\n hook.startsWith(\"farm:\")\n );\n}\n\n/**\n * Check if a hook is internal.\n *\n * @param hook - The name of the hook to check.\n * @returns True if the hook is external, false otherwise.\n */\nexport function isHookInternal(hook: HookKeys): hook is BaseHookKeys {\n return !isHookExternal(hook);\n}\n\n/**\n * Check if a plugin should be deduplicated.\n *\n * @param plugin - The plugin to check\n * @param plugins - The list of plugins to check against\n * @returns True if the plugin should be deduplicated, false otherwise\n */\nexport function checkDedupe<\n TResolvedConfig extends ResolvedConfig = ResolvedConfig,\n TContext extends\n PluginContext<TResolvedConfig> = PluginContext<TResolvedConfig>\n>(plugin: Plugin<TContext>, plugins: Plugin<TContext>[]) {\n return plugins.some(\n p =>\n p.dedupe !== false &&\n ((isFunction(p.dedupe) && p.dedupe(plugin)) || p.name === plugin.name)\n );\n}\n\n/**\n * Add a plugin hook to the hooks list.\n *\n * @param context - The plugin context\n * @param plugin - The plugin to add the hook from\n * @param pluginHook - The plugin hook to add\n * @param hooksList - The list of hooks to add to\n */\nexport function addPluginHook<TContext extends PluginContext = PluginContext>(\n context: TContext,\n plugin: Plugin<TContext>,\n pluginHook: PluginHook<AnyFunction>,\n hooksList: BaseHooksListItem<TContext, BaseHookKeys<TContext>>[]\n) {\n if (\n !checkDedupe(\n plugin,\n hooksList.map(hook => hook.plugin)\n )\n ) {\n hooksList.push(\n isFunction(pluginHook)\n ? {\n plugin,\n handler: getHookHandler(pluginHook).bind(context)\n }\n : {\n plugin,\n ...pluginHook,\n handler: getHookHandler(pluginHook).bind(context)\n }\n );\n }\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/types/commands.ts","../../src/lib/utilities/plugin-helpers.ts"],"names":["SUPPORTED_COMMANDS","isPlugin","value","isSetObject","isSetString","name","isUndefined","applyToEnvironment","isFunction","dedupe","dependsOn","Array","isArray","every","isPluginConfig","command","handler","isPluginConfigObject","plugin","options","isPluginConfigTuple","length","isPluginHookFunction","isPluginHookObject","isPluginHook","getHookHandler","pluginHook","extractPluginHook","context","hook","undefined","normal","bind","order","isHookExternal","startsWith","isHookInternal","checkDedupe","plugins","some","p","addPluginHook","hooksList","map","push"],"mappings":"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","file":"chunk-TJURBPBY.cjs","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 type { ArrayValues } from \"@stryke/types/array\";\nimport type { MaybePromise } from \"@stryke/types/base\";\nimport type { Context } from \"./context\";\n\nexport const SUPPORTED_COMMANDS = [\n \"new\",\n \"clean\",\n \"prepare\",\n \"lint\",\n \"test\",\n \"build\",\n \"docs\",\n \"release\",\n \"finalize\"\n] as const;\n\nexport type CommandType = ArrayValues<typeof SUPPORTED_COMMANDS>;\nexport type Commands<TContext extends Context = Context> = Record<\n CommandType,\n (this: TContext) => MaybePromise<void>\n>;\n","/* -------------------------------------------------------------------\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 { isFunction } from \"@stryke/type-checks/is-function\";\nimport { isSetObject } from \"@stryke/type-checks/is-set-object\";\nimport { isSetString } from \"@stryke/type-checks/is-set-string\";\nimport { isUndefined } from \"@stryke/type-checks/is-undefined\";\nimport { AnyFunction } from \"@stryke/types/base\";\nimport { ResolvedConfig } from \"powerlines/types/resolved\";\nimport { SUPPORTED_COMMANDS } from \"../../types/commands\";\nimport {\n PluginConfig,\n PluginConfigObject,\n PluginConfigTuple\n} from \"../../types/config\";\nimport { PluginContext } from \"../../types/context\";\nimport {\n BaseHookKeys,\n BaseHooksListItem,\n ExternalHookKeys,\n HookKeys\n} from \"../../types/hooks\";\nimport { Plugin, PluginHook, PluginHookObject } from \"../../types/plugin\";\n\n/**\n * Type guard to check if an object is a {@link Plugin}\n *\n * @param value - The object to check\n * @returns True if the object is a {@link Plugin}, false otherwise\n */\nexport function isPlugin<\n TResolvedConfig extends ResolvedConfig = ResolvedConfig\n>(value: unknown): value is Plugin<PluginContext<TResolvedConfig>> {\n return (\n isSetObject(value) &&\n \"name\" in value &&\n isSetString(value.name) &&\n (isUndefined(\n (value as Plugin<PluginContext<TResolvedConfig>>).applyToEnvironment\n ) ||\n (\"applyToEnvironment\" in value &&\n isFunction(value.applyToEnvironment))) &&\n (isUndefined((value as Plugin<PluginContext<TResolvedConfig>>).dedupe) ||\n (\"dedupe\" in value && isFunction(value.dedupe))) &&\n (isUndefined((value as Plugin<PluginContext<TResolvedConfig>>).dependsOn) ||\n (\"dependsOn\" in value &&\n Array.isArray(value.dependsOn) &&\n value.dependsOn.every(isPluginConfig))) &&\n SUPPORTED_COMMANDS.every(\n command =>\n isUndefined(\n (value as Plugin<PluginContext<TResolvedConfig>>)[command]\n ) ||\n (command in value &&\n (isFunction((value as Record<string, any>)[command]) ||\n (isSetObject((value as Record<string, any>)[command]) &&\n \"handler\" in (value as Record<string, any>)[command] &&\n isFunction((value as Record<string, any>)[command].handler))))\n )\n );\n}\n\n/**\n * Type guard to check if an object is a {@link PluginConfigObject}\n *\n * @param value - The object to check\n * @returns True if the object is a {@link PluginConfigObject}, false otherwise\n */\nexport function isPluginConfigObject(\n value: unknown\n): value is PluginConfigObject {\n return (\n isSetObject(value) &&\n \"plugin\" in value &&\n (((isSetString(value.plugin) || isFunction(value.plugin)) &&\n \"options\" in value &&\n isSetObject(value.options)) ||\n isPlugin(value.plugin))\n );\n}\n\n/**\n * Type guard to check if an object is a {@link PluginConfigTuple}\n *\n * @param value - The object to check\n * @returns True if the object is a {@link PluginConfigTuple}, false otherwise\n */\nexport function isPluginConfigTuple(\n value: unknown\n): value is PluginConfigTuple {\n return (\n Array.isArray(value) &&\n (value.length === 1 || value.length === 2) &&\n (((isSetString(value[0]) || isFunction(value[0])) &&\n value.length > 1 &&\n isSetObject(value[1])) ||\n isPlugin(value[0]))\n );\n}\n\n/**\n * Type guard to check if an object is a {@link PluginConfig}\n *\n * @param value - The object to check\n * @returns True if the object is a {@link PluginConfig}, false otherwise\n */\nexport function isPluginConfig(value: unknown): value is PluginConfig {\n return (\n isSetString(value) ||\n isFunction(value) ||\n isPlugin(value) ||\n isPluginConfigObject(value) ||\n isPluginConfigTuple(value)\n );\n}\n\n/**\n * Type guard to check if an value is a {@link PluginHook} function\n *\n * @param value - The value to check\n * @returns True if the value is a {@link PluginHook} function, false otherwise\n */\nexport function isPluginHookFunction(value: unknown): value is AnyFunction {\n return (\n isFunction(value) ||\n (isSetObject(value) && \"handler\" in value && isFunction(value.handler))\n );\n}\n\n/**\n * Type guard to check if an value is a {@link PluginHook} function\n *\n * @param value - The value to check\n * @returns True if the value is a {@link PluginHook} function, false otherwise\n */\nexport function isPluginHookObject(\n value: unknown\n): value is PluginHookObject<AnyFunction> {\n return isSetObject(value) && \"handler\" in value && isFunction(value.handler);\n}\n\n/**\n * Type guard to check if an object is a {@link PluginHook}\n *\n * @param value - The object to check\n * @returns True if the object is a {@link PluginHook}, false otherwise\n */\nexport function isPluginHook(value: unknown): value is PluginHook<AnyFunction> {\n return isPluginHookFunction(value) || isPluginHookObject(value);\n}\n\n/**\n * Extract the hook handler function from a plugin hook\n *\n * @param pluginHook - The plugin hook to extract the handler function from\n * @returns The hook handler function\n */\nexport function getHookHandler(\n pluginHook: PluginHook<AnyFunction>\n): AnyFunction {\n return isFunction(pluginHook) ? pluginHook : pluginHook.handler;\n}\n\n/**\n * Extract a plugin hook from a plugin\n *\n * @param context - The build context\n * @param plugin - The plugin to extract the hook from\n * @param hook - The name of the hook to extract\n * @returns The extracted hook, or undefined if the hook does not exist\n */\nexport function extractPluginHook<\n TContext extends PluginContext = PluginContext,\n TPlugin extends Plugin<TContext> = Plugin<TContext>\n>(context: TContext, plugin: TPlugin, hook: BaseHookKeys<TContext>) {\n const pluginHook = plugin[hook];\n if (!isPluginHook(pluginHook)) {\n return undefined;\n }\n\n return isFunction(pluginHook)\n ? {\n normal: pluginHook.bind(context)\n }\n : {\n [pluginHook.order ? pluginHook.order : \"normal\"]:\n pluginHook.handler.bind(context)\n };\n}\n\n/**\n * Check if a hook is external.\n *\n * @param hook - The name of the hook to check.\n * @returns True if the hook is external, false otherwise.\n */\nexport function isHookExternal(hook: HookKeys): hook is ExternalHookKeys {\n return (\n hook.startsWith(\"vite:\") ||\n hook.startsWith(\"esbuild:\") ||\n hook.startsWith(\"rolldown:\") ||\n hook.startsWith(\"rollup:\") ||\n hook.startsWith(\"webpack:\") ||\n hook.startsWith(\"rspack:\") ||\n hook.startsWith(\"farm:\")\n );\n}\n\n/**\n * Check if a hook is internal.\n *\n * @param hook - The name of the hook to check.\n * @returns True if the hook is external, false otherwise.\n */\nexport function isHookInternal(hook: HookKeys): hook is BaseHookKeys {\n return !isHookExternal(hook);\n}\n\n/**\n * Check if a plugin should be deduplicated.\n *\n * @param plugin - The plugin to check\n * @param plugins - The list of plugins to check against\n * @returns True if the plugin should be deduplicated, false otherwise\n */\nexport function checkDedupe<\n TResolvedConfig extends ResolvedConfig = ResolvedConfig,\n TContext extends\n PluginContext<TResolvedConfig> = PluginContext<TResolvedConfig>\n>(plugin: Plugin<TContext>, plugins: Plugin<TContext>[]) {\n return plugins.some(\n p =>\n p.dedupe !== false &&\n ((isFunction(p.dedupe) && p.dedupe(plugin)) || p.name === plugin.name)\n );\n}\n\n/**\n * Add a plugin hook to the hooks list.\n *\n * @param context - The plugin context\n * @param plugin - The plugin to add the hook from\n * @param pluginHook - The plugin hook to add\n * @param hooksList - The list of hooks to add to\n */\nexport function addPluginHook<TContext extends PluginContext = PluginContext>(\n context: TContext,\n plugin: Plugin<TContext>,\n pluginHook: PluginHook<AnyFunction>,\n hooksList: BaseHooksListItem<TContext, BaseHookKeys<TContext>>[]\n) {\n if (\n !checkDedupe(\n plugin,\n hooksList.map(hook => hook.plugin)\n )\n ) {\n hooksList.push(\n isFunction(pluginHook)\n ? {\n plugin,\n handler: getHookHandler(pluginHook).bind(context)\n }\n : {\n plugin,\n ...pluginHook,\n handler: getHookHandler(pluginHook).bind(context)\n }\n );\n }\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/lib/unplugin/plugin.ts"],"names":["createUnplugin","context","options","ctx","log","extendLog","LogLevelLabel","DEBUG","buildStart","$$internal","callHook","sequential","resolveId","id","importer","opts","isEntry","result","order","handleResolveId","skipResolve","skipNodeModulesBundle","config","build","external","noExternal","load","resolvedPath","fs","resolvePath","type","readFile","transform","code","transformed","handler","environment","selectHooks","apply","defu","getString","buildEnd","writeBundle","name","filter","include","buildFinish","vite","sharedDuringBuild","error","FATAL","message"],"mappings":"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","file":"chunk-UGV446VO.cjs","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 { LogLevelLabel } from \"@storm-software/config-tools/types\";\nimport defu from \"defu\";\nimport type {\n ExternalIdResult,\n TransformResult,\n UnpluginBuildContext,\n UnpluginContext,\n UnpluginFactory\n} from \"unplugin\";\n// eslint-disable-next-line camelcase\nimport { Internal_PluginContext, PluginContext } from \"../../types/context\";\nimport { extendLog } from \"../logger\";\nimport { getString } from \"../utilities/source-file\";\nimport { handleResolveId } from \"./resolve-id\";\n\nexport interface CreateUnpluginOptions {\n /**\n * If true, skips the plugin resolution step.\n *\n * @remarks\n * This value should be set to `true` when using a build tool that handles `external` and `noExternal` options itself (for example `tsup`).\n *\n * @defaultValue false\n */\n skipResolve?: boolean;\n}\n\n/**\n * Creates a Powerlines unplugin instance.\n *\n * @param context - The plugin context.\n * @param options - Options for creating the unplugin.\n * @returns The unplugin instance.\n */\nexport function createUnplugin<TContext extends PluginContext = PluginContext>(\n context: TContext,\n options: CreateUnpluginOptions = {}\n): UnpluginFactory<object> {\n // eslint-disable-next-line camelcase\n const ctx = context as unknown as Internal_PluginContext;\n\n return () => {\n const log = extendLog(ctx.log, \"unplugin\");\n log(LogLevelLabel.DEBUG, \"Initializing Unplugin\");\n\n try {\n async function buildStart(this: UnpluginBuildContext) {\n log(LogLevelLabel.DEBUG, \"Powerlines build plugin starting...\");\n\n await ctx.$$internal.callHook(\"buildStart\", {\n sequential: true\n });\n }\n\n async function resolveId(\n this: UnpluginBuildContext & UnpluginContext,\n id: string,\n importer?: string,\n opts: {\n isEntry: boolean;\n } = { isEntry: false }\n ): Promise<string | ExternalIdResult | null | undefined> {\n let result = await ctx.$$internal.callHook(\n \"resolveId\",\n {\n sequential: true,\n result: \"first\",\n order: \"pre\"\n },\n id,\n importer,\n opts\n );\n if (result) {\n return result;\n }\n\n result = await ctx.$$internal.callHook(\n \"resolveId\",\n {\n sequential: true,\n result: \"first\",\n order: \"normal\"\n },\n id,\n importer,\n opts\n );\n if (result) {\n return result;\n }\n\n result = await handleResolveId(\n ctx,\n {\n id,\n importer,\n options: opts\n },\n {\n skipResolve: options.skipResolve,\n skipNodeModulesBundle: ctx.config.build.skipNodeModulesBundle,\n external: ctx.config.build.external,\n noExternal: ctx.config.build.noExternal\n }\n );\n if (result) {\n return result;\n }\n\n return ctx.$$internal.callHook(\n \"resolveId\",\n {\n sequential: true,\n result: \"first\",\n order: \"post\"\n },\n id,\n importer,\n opts\n );\n }\n\n async function load(\n this: UnpluginBuildContext & UnpluginContext,\n id: string\n ): Promise<TransformResult | null | undefined> {\n let result = await ctx.$$internal.callHook(\n \"load\",\n {\n sequential: true,\n result: \"first\",\n order: \"pre\"\n },\n id\n );\n if (result) {\n return result;\n }\n\n result = await ctx.$$internal.callHook(\n \"load\",\n {\n sequential: true,\n result: \"first\",\n order: \"normal\"\n },\n id\n );\n if (result) {\n return result;\n }\n\n if (id) {\n const resolvedPath = ctx.fs.resolvePath(id, {\n type: \"file\"\n });\n if (resolvedPath) {\n return ctx.fs.readFile(resolvedPath);\n }\n }\n\n return ctx.$$internal.callHook(\n \"load\",\n {\n sequential: true,\n result: \"first\",\n order: \"post\"\n },\n id\n );\n }\n\n async function transform(\n this: UnpluginBuildContext & UnpluginContext,\n code: string,\n id: string\n ): Promise<TransformResult | null | undefined> {\n let transformed: TransformResult | string = code;\n\n for (const handler of ctx.$$internal.environment.selectHooks(\n \"transform\"\n )) {\n const result: TransformResult | string | undefined =\n await handler.apply(defu(ctx, this), [getString(transformed), id]);\n if (result) {\n transformed = result;\n }\n }\n\n return transformed;\n }\n\n async function buildEnd(this: UnpluginBuildContext): Promise<void> {\n log(LogLevelLabel.DEBUG, \"Powerlines build plugin finishing...\");\n\n return ctx.$$internal.callHook(\"buildEnd\", {\n sequential: true\n });\n }\n\n async function writeBundle(): Promise<void> {\n log(LogLevelLabel.DEBUG, \"Finalizing Powerlines project output...\");\n\n return ctx.$$internal.callHook(\"writeBundle\", {\n sequential: true\n });\n }\n\n return {\n name: \"powerlines\",\n resolveId: {\n filter: {\n id: {\n include: [/.*/]\n }\n },\n handler: resolveId\n },\n load: {\n filter: {\n id: {\n include: [/.*/, /^storm:/]\n }\n },\n handler: load\n },\n transform,\n buildStart,\n buildFinish: buildEnd,\n writeBundle,\n vite: {\n sharedDuringBuild: true\n }\n };\n } catch (error) {\n log(LogLevelLabel.FATAL, (error as Error)?.message);\n\n throw error;\n }\n };\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/lib/build/unbuild.ts"],"names":["DEFAULT_UNBUILD_CONFIG","dts","clean","includeSrc","treeShaking","splitting","stub","watchOptions","outputPath","generatePackageJson","banner","rollup","emitCJS","replace","resolve","json","esbuild","target","commonjs","alias","unbuildLoader","context","input","options","test","path","output","contents","getContents","declaration","srcPath","match","cm","extension","push","transformed","result","$$internal","callHook","sequential","order","getString","includes","transform","Object","fromEntries","entries","filter","key","loader","then","r","code","isCjs","format","resolver","source","retainLines","ext","startsWith","extractUnbuildConfig","defu","fs","builtinIdMap","keys","reduce","ret","id","get","config","build","variant","override","projectName","name","orgName","isObject","workspaceConfig","organization","sourceRoot","projectRoot","platform","external","loaders","jiti","interopDefault","fsCache","joinPaths","envPaths","cache","moduleCache","extractRollupConfig","debug","mode","minify","sourcemap"],"mappings":"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","file":"chunk-W6ZSRUY2.cjs","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 type { Loader, LoaderResult } from \"@storm-software/unbuild/types\";\nimport { joinPaths } from \"@stryke/path/join-paths\";\nimport { isObject } from \"@stryke/type-checks/is-object\";\nimport defu from \"defu\";\nimport { transform } from \"esbuild\";\nimport { TransformResult } from \"unplugin\";\nimport {\n UnbuildBuildConfig,\n UnbuildResolvedBuildConfig\n} from \"../../types/build\";\n// eslint-disable-next-line camelcase\nimport { Context, Internal_PluginContext } from \"../../types/context\";\nimport { getString } from \"../utilities/source-file\";\nimport { extractRollupConfig } from \"./rollup\";\n\nexport const DEFAULT_UNBUILD_CONFIG = {\n dts: true,\n clean: false,\n includeSrc: false,\n treeShaking: true,\n splitting: true,\n stub: false,\n watchOptions: {},\n outputPath: \"dist\",\n generatePackageJson: true,\n banner: \" \",\n rollup: {\n dts: {},\n emitCJS: true,\n replace: {},\n resolve: {},\n json: {},\n esbuild: { target: \"es2020\" },\n commonjs: {},\n alias: {}\n }\n} as Partial<UnbuildBuildConfig>;\n\n// eslint-disable-next-line camelcase\nexport const unbuildLoader = (context: Internal_PluginContext): Loader => {\n return async (input, { options }) => {\n if (\n !/\\.(?:c|m)?[jt]sx?$/.test(input.path) ||\n /\\.d\\.[cm]?ts$/.test(input.path)\n ) {\n return;\n }\n\n const output: LoaderResult = [];\n\n let contents = await input.getContents();\n\n // declaration\n if (options.declaration && !input.srcPath?.match(/\\.d\\.[cm]?ts$/)) {\n const cm = input.srcPath?.match(/(?<=\\.)(?:c|m)(?=[jt]s$)/)?.[0] || \"\";\n const extension = `.d.${cm}ts`;\n output.push({\n contents,\n srcPath: input.srcPath,\n path: input.path,\n extension,\n declaration: true\n });\n }\n\n let transformed: TransformResult | string = contents;\n\n let result = await context.$$internal.callHook(\n \"transform\",\n {\n sequential: true,\n order: \"pre\"\n },\n transformed,\n input.path\n );\n if (result) {\n transformed = result;\n }\n\n result = await context.$$internal.callHook(\n \"transform\",\n {\n sequential: true,\n order: \"normal\"\n },\n getString(transformed),\n input.path\n );\n if (result) {\n transformed = result;\n }\n\n result = await context.$$internal.callHook(\n \"transform\",\n {\n sequential: true,\n order: \"post\"\n },\n getString(transformed),\n input.path\n );\n if (result) {\n transformed = result;\n }\n\n // typescript => js\n if ([\".ts\", \".mts\", \".cts\"].includes(input.extension)) {\n contents = await transform(getString(transformed), {\n ...Object.fromEntries(\n Object.entries(options.esbuild ?? {}).filter(\n ([key]) => key !== \"absPaths\"\n )\n ),\n loader: \"ts\"\n }).then(r => r.code);\n } else if ([\".tsx\", \".jsx\"].includes(input.extension)) {\n contents = await transform(getString(transformed), {\n loader: input.extension === \".tsx\" ? \"tsx\" : \"jsx\",\n ...Object.fromEntries(\n Object.entries(options.esbuild ?? {}).filter(\n ([key]) => key !== \"absPaths\"\n )\n )\n }).then(r => r.code);\n }\n\n // esm => cjs\n const isCjs = options.format === \"cjs\";\n if (isCjs) {\n contents = context.resolver\n .transform({\n source: contents,\n retainLines: false\n })\n .replace(/^exports.default = /gm, \"module.exports = \")\n .replace(/^var _default = exports.default = /gm, \"module.exports = \")\n .replace(\"module.exports = void 0;\", \"\");\n }\n\n let extension = isCjs ? \".js\" : \".mjs\"; // TODO: Default to .cjs in next major version\n if (options.ext) {\n extension = options.ext.startsWith(\".\") ? options.ext : `.${options.ext}`;\n }\n\n output.push({\n contents,\n path: input.path,\n extension\n });\n\n return output;\n };\n};\n\n/**\n * Extracts the unbuild configuration from the context.\n *\n * @param context - The build context.\n * @returns The resolved unbuild configuration.\n */\nexport function extractUnbuildConfig(\n context: Context\n): UnbuildResolvedBuildConfig {\n return defu(\n {\n alias: context.fs.builtinIdMap.keys().reduce(\n (ret, id) => {\n const path = context.fs.builtinIdMap.get(id);\n if (path) {\n ret[id] = path;\n }\n\n return ret;\n },\n {} as Record<string, string>\n )\n },\n context.config.build.variant === \"unbuild\" ? context.config.override : {},\n {\n projectName: context.config.name,\n name: context.config.name,\n orgName: isObject(context.workspaceConfig.organization)\n ? context.workspaceConfig.organization.name\n : context.workspaceConfig.organization,\n sourceRoot: context.config.sourceRoot,\n projectRoot: context.config.projectRoot,\n outputPath: context.config.output.outputPath || \"dist\",\n platform: context.config.build.platform,\n external: context.fs.builtinIdMap.keys().reduce((ret, id) => {\n if (!ret.includes(id)) {\n ret.push(id);\n }\n\n return ret;\n }, context.config.build.external ?? []) as string[],\n // eslint-disable-next-line camelcase\n loaders: [unbuildLoader(context as Internal_PluginContext)],\n jiti: {\n interopDefault: true,\n fsCache: joinPaths(context.envPaths.cache, \"jiti\"),\n moduleCache: true\n },\n rollup: extractRollupConfig(context) as any\n },\n context.config.build.variant === \"unbuild\" ? context.config.build : {},\n {\n debug: context.config.mode === \"development\",\n minify: context.config.mode !== \"development\",\n sourcemap: context.config.mode === \"development\"\n },\n DEFAULT_UNBUILD_CONFIG\n );\n}\n"]}
|