powerlines 0.37.77 → 0.37.78
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/lib/{chunk-ZOUD5WPQ.cjs → chunk-3I6LVWDP.cjs} +4 -4
- package/dist/lib/{chunk-ZOUD5WPQ.cjs.map → chunk-3I6LVWDP.cjs.map} +1 -1
- package/dist/lib/{chunk-NHYQ45UY.cjs → chunk-5EQ4CPQF.cjs} +19 -19
- package/dist/lib/{chunk-NHYQ45UY.cjs.map → chunk-5EQ4CPQF.cjs.map} +1 -1
- package/dist/lib/{chunk-PRAJIORG.js → chunk-5P644NSA.js} +3 -3
- package/dist/lib/{chunk-PRAJIORG.js.map → chunk-5P644NSA.js.map} +1 -1
- package/dist/lib/{chunk-3SMW7KVT.cjs → chunk-5ZPTAQEL.cjs} +3 -3
- package/dist/lib/{chunk-3SMW7KVT.cjs.map → chunk-5ZPTAQEL.cjs.map} +1 -1
- package/dist/lib/{chunk-6TXWOIA7.js → chunk-FLGXMGPQ.js} +3 -3
- package/dist/lib/{chunk-6TXWOIA7.js.map → chunk-FLGXMGPQ.js.map} +1 -1
- package/dist/lib/{chunk-O5OZ2UZO.cjs → chunk-GV526TGC.cjs} +4 -4
- package/dist/lib/chunk-GV526TGC.cjs.map +1 -0
- package/dist/lib/{chunk-WUZN5S4O.cjs → chunk-LI5EMC63.cjs} +16 -16
- package/dist/lib/{chunk-WUZN5S4O.cjs.map → chunk-LI5EMC63.cjs.map} +1 -1
- package/dist/lib/chunk-M2YUBCOO.cjs +4 -0
- package/dist/lib/{chunk-3GMJQ5G3.cjs.map → chunk-M2YUBCOO.cjs.map} +1 -1
- package/dist/lib/{chunk-VLUZ5CII.js → chunk-MQGE627Y.js} +3 -3
- package/dist/lib/{chunk-VLUZ5CII.js.map → chunk-MQGE627Y.js.map} +1 -1
- package/dist/lib/{chunk-NC45P7WJ.cjs → chunk-PG4GO2CR.cjs} +44 -60
- package/dist/lib/chunk-PG4GO2CR.cjs.map +1 -0
- package/dist/lib/{chunk-RXBIMIC6.js → chunk-PMXZ2XNX.js} +3 -3
- package/dist/lib/{chunk-RXBIMIC6.js.map → chunk-PMXZ2XNX.js.map} +1 -1
- package/dist/lib/chunk-R5BT5UQJ.cjs +75 -0
- package/dist/lib/chunk-R5BT5UQJ.cjs.map +1 -0
- package/dist/lib/chunk-RBL4NKT3.js +73 -0
- package/dist/lib/chunk-RBL4NKT3.js.map +1 -0
- package/dist/lib/{chunk-R36EMMJN.js → chunk-S5ZVX4JC.js} +44 -61
- package/dist/lib/chunk-S5ZVX4JC.js.map +1 -0
- package/dist/lib/{chunk-NQRBC322.cjs → chunk-SCWBDB6B.cjs} +6 -6
- package/dist/lib/{chunk-NQRBC322.cjs.map → chunk-SCWBDB6B.cjs.map} +1 -1
- package/dist/lib/chunk-XJFMPZ5P.js +3 -0
- package/dist/lib/{chunk-4BPHC6QQ.js.map → chunk-XJFMPZ5P.js.map} +1 -1
- package/dist/lib/{chunk-LCCQFULF.js → chunk-XXBJRC3X.js} +4 -4
- package/dist/lib/{chunk-LCCQFULF.js.map → chunk-XXBJRC3X.js.map} +1 -1
- package/dist/lib/{chunk-VWV5EWZM.js → chunk-YHPUSCWS.js} +4 -4
- package/dist/lib/chunk-YHPUSCWS.js.map +1 -0
- package/dist/lib/{chunk-KSKVDYXI.cjs → chunk-Z7AFA7O6.cjs} +5 -5
- package/dist/lib/{chunk-KSKVDYXI.cjs.map → chunk-Z7AFA7O6.cjs.map} +1 -1
- package/dist/lib/{chunk-PGSOL5W5.js → chunk-ZKIG3DC2.js} +4 -4
- package/dist/lib/{chunk-PGSOL5W5.js.map → chunk-ZKIG3DC2.js.map} +1 -1
- package/dist/lib/contexts/api-context.cjs +6 -6
- package/dist/lib/contexts/api-context.js +5 -5
- package/dist/lib/contexts/context.cjs +4 -4
- package/dist/lib/contexts/context.js +3 -3
- package/dist/lib/contexts/environment-context.cjs +5 -5
- package/dist/lib/contexts/environment-context.js +4 -4
- package/dist/lib/contexts/index.cjs +8 -8
- package/dist/lib/contexts/index.js +5 -5
- package/dist/lib/fs/index.cjs +3 -3
- package/dist/lib/fs/index.js +2 -2
- package/dist/lib/fs/storage/index.cjs +5 -5
- package/dist/lib/fs/storage/index.js +1 -1
- package/dist/lib/fs/vfs.cjs +3 -3
- package/dist/lib/fs/vfs.js +2 -2
- package/dist/lib/index.cjs +33 -24
- package/dist/lib/index.d.cts +2 -1
- package/dist/lib/index.d.ts +2 -1
- package/dist/lib/index.js +11 -10
- package/dist/lib/unplugin/factory.cjs +7 -7
- package/dist/lib/unplugin/factory.js +6 -6
- package/dist/lib/unplugin/index.cjs +19 -10
- package/dist/lib/unplugin/index.d.cts +2 -1
- package/dist/lib/unplugin/index.d.ts +2 -1
- package/dist/lib/unplugin/index.js +9 -8
- package/dist/lib/unplugin/module-resolution.cjs +13 -0
- package/dist/lib/unplugin/module-resolution.cjs.map +1 -0
- package/dist/lib/unplugin/module-resolution.d.cts +52 -0
- package/dist/lib/unplugin/module-resolution.d.ts +52 -0
- package/dist/lib/unplugin/module-resolution.js +4 -0
- package/dist/lib/unplugin/module-resolution.js.map +1 -0
- package/dist/lib/unplugin/plugin.cjs +7 -2
- package/dist/lib/unplugin/plugin.d.cts +8 -1
- package/dist/lib/unplugin/plugin.d.ts +8 -1
- package/dist/lib/unplugin/plugin.js +2 -1
- package/dist/lib/utilities/bundle.cjs +4 -3
- package/dist/lib/utilities/bundle.js +3 -2
- package/dist/lib/utilities/index.cjs +12 -11
- package/dist/lib/utilities/index.js +4 -3
- package/dist/lib/utilities/resolve.cjs +5 -4
- package/dist/lib/utilities/resolve.js +4 -3
- package/dist/unplugin.cjs +109 -58
- package/dist/unplugin.d.cts +23 -2
- package/dist/unplugin.d.ts +23 -2
- package/dist/unplugin.js +108 -59
- package/package.json +2 -2
- package/dist/lib/chunk-3GMJQ5G3.cjs +0 -4
- package/dist/lib/chunk-4BPHC6QQ.js +0 -3
- package/dist/lib/chunk-NC45P7WJ.cjs.map +0 -1
- package/dist/lib/chunk-O5OZ2UZO.cjs.map +0 -1
- package/dist/lib/chunk-R36EMMJN.js.map +0 -1
- package/dist/lib/chunk-VWV5EWZM.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"chunk-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"chunk-M2YUBCOO.cjs"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { isUnpluginBuilderVariant } from './chunk-254IMO3A.js';
|
|
2
|
-
import { PowerlinesContext, isPluginConfig, isPlugin, PLUGIN_NON_HOOK_FIELDS, isPluginHookField, isPluginHook, addPluginHook, isUnpluginHookField, isUnpluginHookKey } from './chunk-
|
|
2
|
+
import { PowerlinesContext, isPluginConfig, isPlugin, PLUGIN_NON_HOOK_FIELDS, isPluginHookField, isPluginHook, addPluginHook, isUnpluginHookField, isUnpluginHookKey } from './chunk-5P644NSA.js';
|
|
3
3
|
import { createPluginContext } from './chunk-OSHOIYXW.js';
|
|
4
4
|
import { __name } from './chunk-7QVYU63E.js';
|
|
5
5
|
import { resolvePackage } from '@stryke/fs/resolve';
|
|
@@ -228,5 +228,5 @@ var PowerlinesEnvironmentContext = class _PowerlinesEnvironmentContext extends P
|
|
|
228
228
|
};
|
|
229
229
|
|
|
230
230
|
export { PowerlinesEnvironmentContext };
|
|
231
|
-
//# sourceMappingURL=chunk-
|
|
232
|
-
//# sourceMappingURL=chunk-
|
|
231
|
+
//# sourceMappingURL=chunk-MQGE627Y.js.map
|
|
232
|
+
//# sourceMappingURL=chunk-MQGE627Y.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/lib/contexts/environment-context.ts"],"names":["PowerlinesEnvironmentContext","PowerlinesContext","fromConfig","workspaceConfig","config","context","init","powerlinesPath","resolvePackage","Error","environment","plugins","hooks","addPlugin","plugin","resolvedPlugin","isFunction","applyToEnvironment","result","Promise","resolve","isObject","Object","keys","length","isPluginConfig","$$internal","isPlugin","createPluginContext","push","filter","key","PLUGIN_NON_HOOK_FIELDS","includes","reduce","ret","hook","isPluginHookField","pluginHook","isPluginHook","preEnforced","preOrdered","normal","postEnforced","postOrdered","enforce","hookListOrder","bucket","addPluginHook","order","isUnpluginHookField","unpluginPlugin","isSetObject","field","variantField","warn","String","selectHooks","options","isUnpluginHookKey","variant","split","isUnpluginBuilderVariant","fieldHooks","mapHooksToResult","hooksList","map","find","p","name","handler","resolvedConfig"],"mappings":"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","file":"chunk-VLUZ5CII.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 { resolvePackage } from \"@stryke/fs/resolve\";\nimport { isFunction } from \"@stryke/type-checks/is-function\";\nimport { isObject } from \"@stryke/type-checks/is-object\";\nimport { isSetObject } from \"@stryke/type-checks/is-set-object\";\nimport { ArrayValues } from \"@stryke/types/array\";\nimport { AnyFunction } from \"@stryke/types/base\";\nimport {\n addPluginHook,\n isPlugin,\n isPluginConfig,\n isPluginHook,\n isPluginHookField,\n isUnpluginHookField,\n isUnpluginHookKey\n} from \"../../plugin-utils/helpers\";\nimport { PluginConfig, WorkspaceConfig } from \"../../types/config\";\nimport {\n EnvironmentContext,\n EnvironmentContextPlugin,\n PluginContext,\n SelectHookResult,\n SelectHookResultItem,\n SelectHooksOptions\n} from \"../../types/context\";\nimport {\n HookFields,\n HookListOrders,\n HooksList,\n InferHooksListItem,\n PluginHooksListItem,\n UnpluginHookList,\n UnpluginHooksListItem\n} from \"../../types/hooks\";\nimport {\n Plugin,\n PLUGIN_NON_HOOK_FIELDS,\n PluginHook,\n PluginHookFields\n} from \"../../types/plugin\";\nimport {\n EnvironmentResolvedConfig,\n ResolvedConfig\n} from \"../../types/resolved\";\nimport { UnpluginOptions } from \"../../types/unplugin\";\nimport { isUnpluginBuilderVariant } from \"../unplugin/helpers\";\nimport { PowerlinesContext } from \"./context\";\nimport { createPluginContext } from \"./plugin-context\";\n\nexport class PowerlinesEnvironmentContext<\n TResolvedConfig extends ResolvedConfig = ResolvedConfig\n>\n extends PowerlinesContext<TResolvedConfig>\n implements EnvironmentContext<TResolvedConfig>\n{\n /**\n * The hooks registered by plugins in this environment\n */\n #hooks: HooksList<PluginContext<TResolvedConfig>> = {} as HooksList<\n PluginContext<TResolvedConfig>\n >;\n\n /**\n * Create a new Storm context from the workspace root and user config.\n *\n * @param workspaceConfig - The root directory of the workspace.\n * @param config - The user configuration options.\n * @returns A promise that resolves to the new context.\n */\n public static async fromConfig<\n TResolvedConfig extends ResolvedConfig = ResolvedConfig\n >(\n workspaceConfig: WorkspaceConfig,\n config: TResolvedConfig\n ): Promise<PowerlinesEnvironmentContext<TResolvedConfig>> {\n const context = new PowerlinesEnvironmentContext<TResolvedConfig>(\n config,\n workspaceConfig\n );\n await context.init();\n\n const powerlinesPath = await resolvePackage(\"powerlines\");\n if (!powerlinesPath) {\n throw new Error(\"Could not resolve `powerlines` package location.\");\n }\n\n context.powerlinesPath = powerlinesPath;\n\n return context;\n }\n\n /**\n * The resolved environment configuration\n */\n public environment!: EnvironmentResolvedConfig;\n\n /**\n * The list of plugins applied to this environment\n */\n public plugins: EnvironmentContextPlugin<TResolvedConfig>[] = [];\n\n /**\n * The resolved configuration options\n */\n public override get config(): TResolvedConfig {\n return super.config;\n }\n\n public get hooks(): HooksList<PluginContext<TResolvedConfig>> {\n return this.#hooks;\n }\n\n public async addPlugin(plugin: Plugin<PluginContext<TResolvedConfig>>) {\n let resolvedPlugin = plugin;\n if (isFunction(plugin.applyToEnvironment)) {\n const result = (await Promise.resolve(\n plugin.applyToEnvironment(this.environment) as Promise<any>\n )) as boolean | PluginConfig<PluginContext<TResolvedConfig>>;\n\n if (!result || (isObject(result) && Object.keys(result).length === 0)) {\n return;\n }\n\n if (isPluginConfig<PluginContext<TResolvedConfig>>(result)) {\n return this.$$internal.addPlugin(result);\n }\n\n resolvedPlugin = isPlugin<PluginContext<TResolvedConfig>>(result)\n ? result\n : plugin;\n }\n\n const context = createPluginContext<TResolvedConfig>(resolvedPlugin, this);\n\n this.plugins.push({\n plugin: resolvedPlugin,\n context\n });\n\n this.#hooks = Object.keys(resolvedPlugin)\n .filter(\n key =>\n !PLUGIN_NON_HOOK_FIELDS.includes(\n key as ArrayValues<typeof PLUGIN_NON_HOOK_FIELDS>\n )\n )\n .reduce((ret, key) => {\n const hook = key as HookFields<PluginContext<TResolvedConfig>>;\n\n if (isPluginHookField<PluginContext<TResolvedConfig>>(hook)) {\n const pluginHook = resolvedPlugin[hook];\n if (!isPluginHook(pluginHook)) {\n return ret;\n }\n\n ret[hook] ??= {\n preEnforced: [],\n preOrdered: [],\n normal: [],\n postEnforced: [],\n postOrdered: []\n };\n\n if (resolvedPlugin.enforce) {\n const hookListOrder =\n `${resolvedPlugin.enforce}Enforced` as HookListOrders;\n ret[hook][hookListOrder] ??= [];\n\n const bucket = ret[hook][hookListOrder];\n addPluginHook<\n PluginContext<TResolvedConfig>,\n PluginHookFields<PluginContext<TResolvedConfig>>\n >(context, resolvedPlugin, pluginHook, bucket);\n\n return ret;\n }\n\n if (isFunction(pluginHook) || !pluginHook.order) {\n ret[hook].normal ??= [];\n\n const bucket = ret[hook].normal;\n addPluginHook<\n PluginContext<TResolvedConfig>,\n PluginHookFields<PluginContext<TResolvedConfig>>\n >(context, resolvedPlugin, pluginHook, bucket);\n\n return ret;\n }\n\n const hookListOrder = `${pluginHook.order}Ordered` as HookListOrders;\n ret[hook][hookListOrder] ??= [];\n\n addPluginHook(\n context,\n resolvedPlugin,\n pluginHook,\n ret[hook][hookListOrder] as PluginHooksListItem<\n PluginContext<TResolvedConfig>\n >[]\n );\n\n return ret;\n } else if (isUnpluginHookField(hook)) {\n const unpluginPlugin = resolvedPlugin[hook];\n if (!isSetObject(unpluginPlugin)) {\n return ret;\n }\n\n for (const field of Object.keys(unpluginPlugin)) {\n const variantField = field as keyof UnpluginOptions[typeof hook];\n\n const pluginHook = unpluginPlugin[\n variantField\n ] as PluginHook<AnyFunction>;\n if (!isPluginHook(pluginHook)) {\n continue;\n }\n\n ret[hook] ??= {};\n (ret[hook][variantField] as UnpluginHookList<\n PluginContext<TResolvedConfig>,\n typeof variantField\n >) ??= {\n preEnforced: [],\n preOrdered: [],\n normal: [],\n postEnforced: [],\n postOrdered: []\n };\n\n if (resolvedPlugin.enforce) {\n addPluginHook(\n context,\n resolvedPlugin,\n pluginHook,\n ret[hook][variantField][\n `${resolvedPlugin.enforce}Enforced`\n ] as UnpluginHooksListItem<PluginContext<TResolvedConfig>>[]\n );\n\n return ret;\n }\n\n if (isFunction(pluginHook) || !pluginHook.order) {\n addPluginHook(\n context,\n resolvedPlugin,\n pluginHook,\n (\n ret[hook][variantField] as UnpluginHookList<\n PluginContext<TResolvedConfig>,\n typeof variantField\n >\n ).normal!\n );\n\n return ret;\n }\n\n addPluginHook(\n context,\n resolvedPlugin,\n pluginHook,\n ret[hook][variantField][\n `${pluginHook.order}Ordered`\n ] as UnpluginHooksListItem<PluginContext<TResolvedConfig>>[]\n );\n }\n } else {\n this.warn(`Unknown plugin hook field: ${String(hook)}`);\n }\n\n return ret;\n }, this.hooks);\n }\n\n /**\n * Retrieves the hook handlers for a specific hook name\n */\n public selectHooks<TKey extends string>(\n key: TKey,\n options?: SelectHooksOptions\n ): SelectHookResult<PluginContext<TResolvedConfig>, TKey> {\n const result = [] as SelectHookResult<PluginContext<TResolvedConfig>, TKey>;\n\n if (isUnpluginHookKey(key)) {\n const variant = String(key).split(\":\")[0];\n if (isUnpluginBuilderVariant(variant)) {\n const hooks = this.hooks[variant];\n if (hooks) {\n const field = String(key).split(\":\")[1] as keyof typeof hooks;\n if (field && hooks[field]) {\n const fieldHooks = hooks[field] as Record<\n HookListOrders,\n InferHooksListItem<PluginContext<TResolvedConfig>, TKey>[]\n >;\n\n if (options?.order) {\n const mapHooksToResult = (\n hooksList: InferHooksListItem<\n PluginContext<TResolvedConfig>,\n TKey\n >[]\n ): SelectHookResult<PluginContext<TResolvedConfig>, TKey> =>\n hooksList.map(hook => {\n const plugin = this.plugins.find(\n p => p.plugin.name === hook.plugin.name\n );\n if (!plugin) {\n throw new Error(\n `Could not find plugin context for plugin \"${\n hook.plugin.name\n }\".`\n );\n }\n\n return {\n handler: hook.handler,\n plugin: hook.plugin,\n context: plugin.context\n } as SelectHookResultItem<\n PluginContext<TResolvedConfig>,\n TKey\n >;\n });\n\n if (options?.order === \"pre\") {\n result.push(...mapHooksToResult(fieldHooks.preOrdered ?? []));\n result.push(...mapHooksToResult(fieldHooks.preEnforced ?? []));\n } else if (options?.order === \"post\") {\n result.push(...mapHooksToResult(fieldHooks.postOrdered ?? []));\n result.push(...mapHooksToResult(fieldHooks.postEnforced ?? []));\n } else {\n result.push(...mapHooksToResult(fieldHooks.normal ?? []));\n }\n } else {\n result.push(...this.selectHooks(key, { order: \"pre\" }));\n result.push(...this.selectHooks(key, { order: \"normal\" }));\n result.push(...this.selectHooks(key, { order: \"post\" }));\n }\n }\n }\n }\n } else if (isPluginHookField<PluginContext<TResolvedConfig>>(key)) {\n if (this.hooks[key]) {\n const fieldHooks = this.hooks[key] as Record<\n HookListOrders,\n InferHooksListItem<PluginContext<TResolvedConfig>, TKey>[]\n >;\n\n if (options?.order) {\n const mapHooksToResult = (\n hooksList: InferHooksListItem<\n PluginContext<TResolvedConfig>,\n TKey\n >[]\n ): SelectHookResult<PluginContext<TResolvedConfig>, TKey> =>\n hooksList.map(hook => {\n const plugin = this.plugins.find(\n p => p.plugin.name === hook.plugin.name\n );\n if (!plugin) {\n throw new Error(\n `Could not find plugin context for plugin \"${\n hook.plugin.name\n }\".`\n );\n }\n\n return {\n handler: hook.handler,\n plugin: hook.plugin,\n context: plugin.context\n } as SelectHookResultItem<PluginContext<TResolvedConfig>, TKey>;\n });\n\n if (options?.order === \"pre\") {\n result.push(...mapHooksToResult(fieldHooks.preOrdered ?? []));\n result.push(...mapHooksToResult(fieldHooks.preEnforced ?? []));\n } else if (options?.order === \"post\") {\n result.push(...mapHooksToResult(fieldHooks.postOrdered ?? []));\n result.push(...mapHooksToResult(fieldHooks.postEnforced ?? []));\n } else {\n result.push(...mapHooksToResult(fieldHooks.normal ?? []));\n }\n } else {\n result.push(...this.selectHooks(key, { order: \"pre\" }));\n result.push(...this.selectHooks(key, { order: \"normal\" }));\n result.push(...this.selectHooks(key, { order: \"post\" }));\n }\n }\n } else {\n throw new Error(`Unknown plugin hook key: ${String(key)}`);\n }\n\n return result;\n }\n\n protected constructor(\n config: TResolvedConfig,\n workspaceConfig: WorkspaceConfig\n ) {\n super(workspaceConfig);\n\n this.resolvedConfig = config;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/lib/contexts/environment-context.ts"],"names":["PowerlinesEnvironmentContext","PowerlinesContext","fromConfig","workspaceConfig","config","context","init","powerlinesPath","resolvePackage","Error","environment","plugins","hooks","addPlugin","plugin","resolvedPlugin","isFunction","applyToEnvironment","result","Promise","resolve","isObject","Object","keys","length","isPluginConfig","$$internal","isPlugin","createPluginContext","push","filter","key","PLUGIN_NON_HOOK_FIELDS","includes","reduce","ret","hook","isPluginHookField","pluginHook","isPluginHook","preEnforced","preOrdered","normal","postEnforced","postOrdered","enforce","hookListOrder","bucket","addPluginHook","order","isUnpluginHookField","unpluginPlugin","isSetObject","field","variantField","warn","String","selectHooks","options","isUnpluginHookKey","variant","split","isUnpluginBuilderVariant","fieldHooks","mapHooksToResult","hooksList","map","find","p","name","handler","resolvedConfig"],"mappings":"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","file":"chunk-MQGE627Y.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 { resolvePackage } from \"@stryke/fs/resolve\";\nimport { isFunction } from \"@stryke/type-checks/is-function\";\nimport { isObject } from \"@stryke/type-checks/is-object\";\nimport { isSetObject } from \"@stryke/type-checks/is-set-object\";\nimport { ArrayValues } from \"@stryke/types/array\";\nimport { AnyFunction } from \"@stryke/types/base\";\nimport {\n addPluginHook,\n isPlugin,\n isPluginConfig,\n isPluginHook,\n isPluginHookField,\n isUnpluginHookField,\n isUnpluginHookKey\n} from \"../../plugin-utils/helpers\";\nimport { PluginConfig, WorkspaceConfig } from \"../../types/config\";\nimport {\n EnvironmentContext,\n EnvironmentContextPlugin,\n PluginContext,\n SelectHookResult,\n SelectHookResultItem,\n SelectHooksOptions\n} from \"../../types/context\";\nimport {\n HookFields,\n HookListOrders,\n HooksList,\n InferHooksListItem,\n PluginHooksListItem,\n UnpluginHookList,\n UnpluginHooksListItem\n} from \"../../types/hooks\";\nimport {\n Plugin,\n PLUGIN_NON_HOOK_FIELDS,\n PluginHook,\n PluginHookFields\n} from \"../../types/plugin\";\nimport {\n EnvironmentResolvedConfig,\n ResolvedConfig\n} from \"../../types/resolved\";\nimport { UnpluginOptions } from \"../../types/unplugin\";\nimport { isUnpluginBuilderVariant } from \"../unplugin/helpers\";\nimport { PowerlinesContext } from \"./context\";\nimport { createPluginContext } from \"./plugin-context\";\n\nexport class PowerlinesEnvironmentContext<\n TResolvedConfig extends ResolvedConfig = ResolvedConfig\n>\n extends PowerlinesContext<TResolvedConfig>\n implements EnvironmentContext<TResolvedConfig>\n{\n /**\n * The hooks registered by plugins in this environment\n */\n #hooks: HooksList<PluginContext<TResolvedConfig>> = {} as HooksList<\n PluginContext<TResolvedConfig>\n >;\n\n /**\n * Create a new Storm context from the workspace root and user config.\n *\n * @param workspaceConfig - The root directory of the workspace.\n * @param config - The user configuration options.\n * @returns A promise that resolves to the new context.\n */\n public static async fromConfig<\n TResolvedConfig extends ResolvedConfig = ResolvedConfig\n >(\n workspaceConfig: WorkspaceConfig,\n config: TResolvedConfig\n ): Promise<PowerlinesEnvironmentContext<TResolvedConfig>> {\n const context = new PowerlinesEnvironmentContext<TResolvedConfig>(\n config,\n workspaceConfig\n );\n await context.init();\n\n const powerlinesPath = await resolvePackage(\"powerlines\");\n if (!powerlinesPath) {\n throw new Error(\"Could not resolve `powerlines` package location.\");\n }\n\n context.powerlinesPath = powerlinesPath;\n\n return context;\n }\n\n /**\n * The resolved environment configuration\n */\n public environment!: EnvironmentResolvedConfig;\n\n /**\n * The list of plugins applied to this environment\n */\n public plugins: EnvironmentContextPlugin<TResolvedConfig>[] = [];\n\n /**\n * The resolved configuration options\n */\n public override get config(): TResolvedConfig {\n return super.config;\n }\n\n public get hooks(): HooksList<PluginContext<TResolvedConfig>> {\n return this.#hooks;\n }\n\n public async addPlugin(plugin: Plugin<PluginContext<TResolvedConfig>>) {\n let resolvedPlugin = plugin;\n if (isFunction(plugin.applyToEnvironment)) {\n const result = (await Promise.resolve(\n plugin.applyToEnvironment(this.environment) as Promise<any>\n )) as boolean | PluginConfig<PluginContext<TResolvedConfig>>;\n\n if (!result || (isObject(result) && Object.keys(result).length === 0)) {\n return;\n }\n\n if (isPluginConfig<PluginContext<TResolvedConfig>>(result)) {\n return this.$$internal.addPlugin(result);\n }\n\n resolvedPlugin = isPlugin<PluginContext<TResolvedConfig>>(result)\n ? result\n : plugin;\n }\n\n const context = createPluginContext<TResolvedConfig>(resolvedPlugin, this);\n\n this.plugins.push({\n plugin: resolvedPlugin,\n context\n });\n\n this.#hooks = Object.keys(resolvedPlugin)\n .filter(\n key =>\n !PLUGIN_NON_HOOK_FIELDS.includes(\n key as ArrayValues<typeof PLUGIN_NON_HOOK_FIELDS>\n )\n )\n .reduce((ret, key) => {\n const hook = key as HookFields<PluginContext<TResolvedConfig>>;\n\n if (isPluginHookField<PluginContext<TResolvedConfig>>(hook)) {\n const pluginHook = resolvedPlugin[hook];\n if (!isPluginHook(pluginHook)) {\n return ret;\n }\n\n ret[hook] ??= {\n preEnforced: [],\n preOrdered: [],\n normal: [],\n postEnforced: [],\n postOrdered: []\n };\n\n if (resolvedPlugin.enforce) {\n const hookListOrder =\n `${resolvedPlugin.enforce}Enforced` as HookListOrders;\n ret[hook][hookListOrder] ??= [];\n\n const bucket = ret[hook][hookListOrder];\n addPluginHook<\n PluginContext<TResolvedConfig>,\n PluginHookFields<PluginContext<TResolvedConfig>>\n >(context, resolvedPlugin, pluginHook, bucket);\n\n return ret;\n }\n\n if (isFunction(pluginHook) || !pluginHook.order) {\n ret[hook].normal ??= [];\n\n const bucket = ret[hook].normal;\n addPluginHook<\n PluginContext<TResolvedConfig>,\n PluginHookFields<PluginContext<TResolvedConfig>>\n >(context, resolvedPlugin, pluginHook, bucket);\n\n return ret;\n }\n\n const hookListOrder = `${pluginHook.order}Ordered` as HookListOrders;\n ret[hook][hookListOrder] ??= [];\n\n addPluginHook(\n context,\n resolvedPlugin,\n pluginHook,\n ret[hook][hookListOrder] as PluginHooksListItem<\n PluginContext<TResolvedConfig>\n >[]\n );\n\n return ret;\n } else if (isUnpluginHookField(hook)) {\n const unpluginPlugin = resolvedPlugin[hook];\n if (!isSetObject(unpluginPlugin)) {\n return ret;\n }\n\n for (const field of Object.keys(unpluginPlugin)) {\n const variantField = field as keyof UnpluginOptions[typeof hook];\n\n const pluginHook = unpluginPlugin[\n variantField\n ] as PluginHook<AnyFunction>;\n if (!isPluginHook(pluginHook)) {\n continue;\n }\n\n ret[hook] ??= {};\n (ret[hook][variantField] as UnpluginHookList<\n PluginContext<TResolvedConfig>,\n typeof variantField\n >) ??= {\n preEnforced: [],\n preOrdered: [],\n normal: [],\n postEnforced: [],\n postOrdered: []\n };\n\n if (resolvedPlugin.enforce) {\n addPluginHook(\n context,\n resolvedPlugin,\n pluginHook,\n ret[hook][variantField][\n `${resolvedPlugin.enforce}Enforced`\n ] as UnpluginHooksListItem<PluginContext<TResolvedConfig>>[]\n );\n\n return ret;\n }\n\n if (isFunction(pluginHook) || !pluginHook.order) {\n addPluginHook(\n context,\n resolvedPlugin,\n pluginHook,\n (\n ret[hook][variantField] as UnpluginHookList<\n PluginContext<TResolvedConfig>,\n typeof variantField\n >\n ).normal!\n );\n\n return ret;\n }\n\n addPluginHook(\n context,\n resolvedPlugin,\n pluginHook,\n ret[hook][variantField][\n `${pluginHook.order}Ordered`\n ] as UnpluginHooksListItem<PluginContext<TResolvedConfig>>[]\n );\n }\n } else {\n this.warn(`Unknown plugin hook field: ${String(hook)}`);\n }\n\n return ret;\n }, this.hooks);\n }\n\n /**\n * Retrieves the hook handlers for a specific hook name\n */\n public selectHooks<TKey extends string>(\n key: TKey,\n options?: SelectHooksOptions\n ): SelectHookResult<PluginContext<TResolvedConfig>, TKey> {\n const result = [] as SelectHookResult<PluginContext<TResolvedConfig>, TKey>;\n\n if (isUnpluginHookKey(key)) {\n const variant = String(key).split(\":\")[0];\n if (isUnpluginBuilderVariant(variant)) {\n const hooks = this.hooks[variant];\n if (hooks) {\n const field = String(key).split(\":\")[1] as keyof typeof hooks;\n if (field && hooks[field]) {\n const fieldHooks = hooks[field] as Record<\n HookListOrders,\n InferHooksListItem<PluginContext<TResolvedConfig>, TKey>[]\n >;\n\n if (options?.order) {\n const mapHooksToResult = (\n hooksList: InferHooksListItem<\n PluginContext<TResolvedConfig>,\n TKey\n >[]\n ): SelectHookResult<PluginContext<TResolvedConfig>, TKey> =>\n hooksList.map(hook => {\n const plugin = this.plugins.find(\n p => p.plugin.name === hook.plugin.name\n );\n if (!plugin) {\n throw new Error(\n `Could not find plugin context for plugin \"${\n hook.plugin.name\n }\".`\n );\n }\n\n return {\n handler: hook.handler,\n plugin: hook.plugin,\n context: plugin.context\n } as SelectHookResultItem<\n PluginContext<TResolvedConfig>,\n TKey\n >;\n });\n\n if (options?.order === \"pre\") {\n result.push(...mapHooksToResult(fieldHooks.preOrdered ?? []));\n result.push(...mapHooksToResult(fieldHooks.preEnforced ?? []));\n } else if (options?.order === \"post\") {\n result.push(...mapHooksToResult(fieldHooks.postOrdered ?? []));\n result.push(...mapHooksToResult(fieldHooks.postEnforced ?? []));\n } else {\n result.push(...mapHooksToResult(fieldHooks.normal ?? []));\n }\n } else {\n result.push(...this.selectHooks(key, { order: \"pre\" }));\n result.push(...this.selectHooks(key, { order: \"normal\" }));\n result.push(...this.selectHooks(key, { order: \"post\" }));\n }\n }\n }\n }\n } else if (isPluginHookField<PluginContext<TResolvedConfig>>(key)) {\n if (this.hooks[key]) {\n const fieldHooks = this.hooks[key] as Record<\n HookListOrders,\n InferHooksListItem<PluginContext<TResolvedConfig>, TKey>[]\n >;\n\n if (options?.order) {\n const mapHooksToResult = (\n hooksList: InferHooksListItem<\n PluginContext<TResolvedConfig>,\n TKey\n >[]\n ): SelectHookResult<PluginContext<TResolvedConfig>, TKey> =>\n hooksList.map(hook => {\n const plugin = this.plugins.find(\n p => p.plugin.name === hook.plugin.name\n );\n if (!plugin) {\n throw new Error(\n `Could not find plugin context for plugin \"${\n hook.plugin.name\n }\".`\n );\n }\n\n return {\n handler: hook.handler,\n plugin: hook.plugin,\n context: plugin.context\n } as SelectHookResultItem<PluginContext<TResolvedConfig>, TKey>;\n });\n\n if (options?.order === \"pre\") {\n result.push(...mapHooksToResult(fieldHooks.preOrdered ?? []));\n result.push(...mapHooksToResult(fieldHooks.preEnforced ?? []));\n } else if (options?.order === \"post\") {\n result.push(...mapHooksToResult(fieldHooks.postOrdered ?? []));\n result.push(...mapHooksToResult(fieldHooks.postEnforced ?? []));\n } else {\n result.push(...mapHooksToResult(fieldHooks.normal ?? []));\n }\n } else {\n result.push(...this.selectHooks(key, { order: \"pre\" }));\n result.push(...this.selectHooks(key, { order: \"normal\" }));\n result.push(...this.selectHooks(key, { order: \"post\" }));\n }\n }\n } else {\n throw new Error(`Unknown plugin hook key: ${String(key)}`);\n }\n\n return result;\n }\n\n protected constructor(\n config: TResolvedConfig,\n workspaceConfig: WorkspaceConfig\n ) {\n super(workspaceConfig);\n\n this.resolvedConfig = config;\n }\n}\n"]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var chunkR5BT5UQJ_cjs = require('./chunk-R5BT5UQJ.cjs');
|
|
3
4
|
var chunkGNEHIBN4_cjs = require('./chunk-GNEHIBN4.cjs');
|
|
4
5
|
var chunkGFUPZMLG_cjs = require('./chunk-GFUPZMLG.cjs');
|
|
5
6
|
var chunkOXOTWH3L_cjs = require('./chunk-OXOTWH3L.cjs');
|
|
@@ -7,6 +8,45 @@ var chunkPK6SKIKE_cjs = require('./chunk-PK6SKIKE.cjs');
|
|
|
7
8
|
var types = require('@storm-software/config-tools/types');
|
|
8
9
|
var unplugin = require('unplugin');
|
|
9
10
|
|
|
11
|
+
function createUnpluginResolver(context) {
|
|
12
|
+
const ctx = context;
|
|
13
|
+
unplugin.setParseImpl(ctx.parse);
|
|
14
|
+
return () => {
|
|
15
|
+
const log = chunkGFUPZMLG_cjs.extendLog(ctx.log, "unplugin");
|
|
16
|
+
log(types.LogLevelLabel.DEBUG, "Initializing Unplugin");
|
|
17
|
+
try {
|
|
18
|
+
const { resolveId, load } = chunkR5BT5UQJ_cjs.createUnpluginModuleResolutionFunctions(context);
|
|
19
|
+
return {
|
|
20
|
+
name: "powerlines",
|
|
21
|
+
api: ctx.$$internal.api,
|
|
22
|
+
resolveId: {
|
|
23
|
+
filter: {
|
|
24
|
+
id: {
|
|
25
|
+
include: [
|
|
26
|
+
/.*/
|
|
27
|
+
]
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
handler: resolveId
|
|
31
|
+
},
|
|
32
|
+
load: {
|
|
33
|
+
filter: {
|
|
34
|
+
id: {
|
|
35
|
+
include: [
|
|
36
|
+
/.*/
|
|
37
|
+
]
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
handler: load
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
} catch (error) {
|
|
44
|
+
log(types.LogLevelLabel.FATAL, error?.message);
|
|
45
|
+
throw error;
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
chunkPK6SKIKE_cjs.__name(createUnpluginResolver, "createUnpluginResolver");
|
|
10
50
|
function createUnplugin(context) {
|
|
11
51
|
const ctx = context;
|
|
12
52
|
unplugin.setParseImpl(ctx.parse);
|
|
@@ -14,6 +54,7 @@ function createUnplugin(context) {
|
|
|
14
54
|
const log = chunkGFUPZMLG_cjs.extendLog(ctx.log, "unplugin");
|
|
15
55
|
log(types.LogLevelLabel.DEBUG, "Initializing Unplugin");
|
|
16
56
|
try {
|
|
57
|
+
const { resolveId, load } = chunkR5BT5UQJ_cjs.createUnpluginModuleResolutionFunctions(context);
|
|
17
58
|
async function buildStart() {
|
|
18
59
|
log(types.LogLevelLabel.DEBUG, "Powerlines build plugin starting...");
|
|
19
60
|
await ctx.$$internal.callHook("buildStart", {
|
|
@@ -21,64 +62,6 @@ function createUnplugin(context) {
|
|
|
21
62
|
});
|
|
22
63
|
}
|
|
23
64
|
chunkPK6SKIKE_cjs.__name(buildStart, "buildStart");
|
|
24
|
-
async function resolveId(id, importer, opts = {
|
|
25
|
-
isEntry: false
|
|
26
|
-
}) {
|
|
27
|
-
let result = await ctx.$$internal.callHook("resolveId", {
|
|
28
|
-
sequential: true,
|
|
29
|
-
result: "first",
|
|
30
|
-
order: "pre"
|
|
31
|
-
}, id, importer, opts);
|
|
32
|
-
if (result) {
|
|
33
|
-
return result;
|
|
34
|
-
}
|
|
35
|
-
result = await ctx.$$internal.callHook("resolveId", {
|
|
36
|
-
sequential: true,
|
|
37
|
-
result: "first",
|
|
38
|
-
order: "normal"
|
|
39
|
-
}, id, importer, opts);
|
|
40
|
-
if (result) {
|
|
41
|
-
return result;
|
|
42
|
-
}
|
|
43
|
-
result = await ctx.resolve(id, importer, opts);
|
|
44
|
-
if (result) {
|
|
45
|
-
return result;
|
|
46
|
-
}
|
|
47
|
-
return ctx.$$internal.callHook("resolveId", {
|
|
48
|
-
sequential: true,
|
|
49
|
-
result: "first",
|
|
50
|
-
order: "post"
|
|
51
|
-
}, id, importer, opts);
|
|
52
|
-
}
|
|
53
|
-
chunkPK6SKIKE_cjs.__name(resolveId, "resolveId");
|
|
54
|
-
async function load(id) {
|
|
55
|
-
let result = await ctx.$$internal.callHook("load", {
|
|
56
|
-
sequential: true,
|
|
57
|
-
result: "first",
|
|
58
|
-
order: "pre"
|
|
59
|
-
}, id);
|
|
60
|
-
if (result) {
|
|
61
|
-
return result;
|
|
62
|
-
}
|
|
63
|
-
result = await ctx.$$internal.callHook("load", {
|
|
64
|
-
sequential: true,
|
|
65
|
-
result: "first",
|
|
66
|
-
order: "normal"
|
|
67
|
-
}, id);
|
|
68
|
-
if (result) {
|
|
69
|
-
return result;
|
|
70
|
-
}
|
|
71
|
-
result = await ctx.load(id);
|
|
72
|
-
if (result) {
|
|
73
|
-
return result;
|
|
74
|
-
}
|
|
75
|
-
return ctx.$$internal.callHook("load", {
|
|
76
|
-
sequential: true,
|
|
77
|
-
result: "first",
|
|
78
|
-
order: "post"
|
|
79
|
-
}, id);
|
|
80
|
-
}
|
|
81
|
-
chunkPK6SKIKE_cjs.__name(load, "load");
|
|
82
65
|
async function transform(code, id) {
|
|
83
66
|
let transformed = code;
|
|
84
67
|
for (const hook of ctx.$$internal.environment.selectHooks("transform")) {
|
|
@@ -147,5 +130,6 @@ function createUnplugin(context) {
|
|
|
147
130
|
chunkPK6SKIKE_cjs.__name(createUnplugin, "createUnplugin");
|
|
148
131
|
|
|
149
132
|
exports.createUnplugin = createUnplugin;
|
|
150
|
-
|
|
151
|
-
//# sourceMappingURL=chunk-
|
|
133
|
+
exports.createUnpluginResolver = createUnpluginResolver;
|
|
134
|
+
//# sourceMappingURL=chunk-PG4GO2CR.cjs.map
|
|
135
|
+
//# sourceMappingURL=chunk-PG4GO2CR.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/lib/unplugin/plugin.ts"],"names":["createUnpluginResolver","context","ctx","setParseImpl","parse","log","extendLog","LogLevelLabel","DEBUG","resolveId","load","createUnpluginModuleResolutionFunctions","name","api","$$internal","filter","id","include","handler","error","FATAL","message","createUnplugin","buildStart","callHook","sequential","transform","code","transformed","hook","environment","selectHooks","result","apply","combineContexts","getString","buildEnd","writeBundle","vite","sharedDuringBuild"],"mappings":"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","file":"chunk-PG4GO2CR.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 type {\n TransformResult,\n UnpluginBuildContext,\n UnpluginContext\n} from \"unplugin\";\nimport { setParseImpl } from \"unplugin\";\nimport { UnpluginBuilderVariant } from \"../../types/build\";\nimport { PluginContext } from \"../../types/context\";\nimport { UNSAFE_PluginContext } from \"../../types/internal\";\nimport { UnpluginFactory } from \"../../types/unplugin\";\nimport { extendLog } from \"../logger\";\nimport { getString } from \"../utilities/source-file\";\nimport { combineContexts } from \"./helpers\";\nimport { createUnpluginModuleResolutionFunctions } from \"./module-resolution\";\n\n/**\n * Creates a Powerlines unplugin instance.\n *\n * @param context - The plugin context.\n * @returns The unplugin instance.\n */\nexport function createUnpluginResolver<\n TContext extends PluginContext = PluginContext,\n TBuildVariant extends UnpluginBuilderVariant = UnpluginBuilderVariant\n>(context: TContext): UnpluginFactory<TBuildVariant> {\n const ctx = context as unknown as UNSAFE_PluginContext;\n setParseImpl(ctx.parse);\n\n return () => {\n const log = extendLog(ctx.log, \"unplugin\");\n log(LogLevelLabel.DEBUG, \"Initializing Unplugin\");\n\n try {\n const { resolveId, load } =\n createUnpluginModuleResolutionFunctions<TContext>(context);\n\n return {\n name: \"powerlines\",\n api: ctx.$$internal.api,\n resolveId: {\n filter: {\n id: {\n include: [/.*/]\n }\n },\n handler: resolveId\n },\n load: {\n filter: {\n id: {\n include: [/.*/]\n }\n },\n handler: load\n }\n };\n } catch (error) {\n log(LogLevelLabel.FATAL, (error as Error)?.message);\n\n throw error;\n }\n };\n}\n\n/**\n * Creates a Powerlines unplugin instance.\n *\n * @param context - The plugin context.\n * @returns The unplugin instance.\n */\nexport function createUnplugin<\n TContext extends PluginContext = PluginContext,\n TBuildVariant extends UnpluginBuilderVariant = UnpluginBuilderVariant\n>(context: TContext): UnpluginFactory<TBuildVariant> {\n const ctx = context as unknown as UNSAFE_PluginContext;\n setParseImpl(ctx.parse);\n\n return () => {\n const log = extendLog(ctx.log, \"unplugin\");\n log(LogLevelLabel.DEBUG, \"Initializing Unplugin\");\n\n try {\n const { resolveId, load } =\n createUnpluginModuleResolutionFunctions<TContext>(context);\n\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 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 hook of ctx.$$internal.environment.selectHooks(\n \"transform\"\n )) {\n const result: TransformResult | string | undefined =\n await hook.handler.apply(combineContexts(ctx, this), [\n getString(transformed),\n id\n ]);\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 api: ctx.$$internal.api,\n resolveId: {\n filter: {\n id: {\n include: [/.*/]\n }\n },\n handler: resolveId\n },\n load: {\n filter: {\n id: {\n include: [/.*/]\n }\n },\n handler: load\n },\n transform,\n buildStart,\n 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,4 +1,4 @@
|
|
|
1
|
-
import { bundle } from './chunk-
|
|
1
|
+
import { bundle } from './chunk-YHPUSCWS.js';
|
|
2
2
|
import { __name } from './chunk-7QVYU63E.js';
|
|
3
3
|
import { parseTypeDefinition } from '@stryke/convert/parse-type-definition';
|
|
4
4
|
import { isSetString } from '@stryke/type-checks/is-set-string';
|
|
@@ -46,5 +46,5 @@ ${result.text}` : ""}`);
|
|
|
46
46
|
__name(resolve, "resolve");
|
|
47
47
|
|
|
48
48
|
export { resolve };
|
|
49
|
-
//# sourceMappingURL=chunk-
|
|
50
|
-
//# sourceMappingURL=chunk-
|
|
49
|
+
//# sourceMappingURL=chunk-PMXZ2XNX.js.map
|
|
50
|
+
//# sourceMappingURL=chunk-PMXZ2XNX.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/lib/utilities/resolve.ts"],"names":["resolve","context","type","overrides","typeDefinition","isSetString","parseTypeDefinition","result","bundle","file","resolved","resolver","evalModule","text","filename","path","forceTranspile","error","message","RegExp","config","framework","test","moduleName","match","Error","logLevel","exportName","name","resolvedExport","undefined","Object","keys","length","join"],"mappings":"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","file":"chunk-
|
|
1
|
+
{"version":3,"sources":["../../src/lib/utilities/resolve.ts"],"names":["resolve","context","type","overrides","typeDefinition","isSetString","parseTypeDefinition","result","bundle","file","resolved","resolver","evalModule","text","filename","path","forceTranspile","error","message","RegExp","config","framework","test","moduleName","match","Error","logLevel","exportName","name","resolvedExport","undefined","Object","keys","length","join"],"mappings":"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","file":"chunk-PMXZ2XNX.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 { parseTypeDefinition } from \"@stryke/convert/parse-type-definition\";\nimport { isSetString } from \"@stryke/type-checks/is-set-string\";\nimport {\n TypeDefinition,\n TypeDefinitionParameter\n} from \"@stryke/types/configuration\";\nimport { ESBuildResolvedBuildConfig } from \"../../types/build\";\nimport { PluginContext } from \"../../types/context\";\nimport { bundle } from \"./bundle\";\n\n/**\n * Compiles a type definition to a module.\n *\n * @param context - The context object containing the environment paths.\n * @param type - The type definition to compile. This can be either a string or a {@link TypeDefinition} object.\n * @param overrides - Optional overrides for the ESBuild configuration.\n * @returns A promise that resolves to the compiled module.\n */\nexport async function resolve<TResult>(\n context: PluginContext,\n type: TypeDefinitionParameter,\n overrides: Partial<ESBuildResolvedBuildConfig> = {}\n): Promise<TResult> {\n let typeDefinition!: TypeDefinition;\n if (isSetString(type)) {\n typeDefinition = parseTypeDefinition(type) as TypeDefinition;\n } else {\n typeDefinition = type;\n }\n\n const result = await bundle(context, typeDefinition.file, overrides);\n\n let resolved: any;\n try {\n resolved = await context.resolver.evalModule(result.text, {\n filename: result.path,\n forceTranspile: true\n });\n } catch (error) {\n if (\n isSetString((error as Error).message) &&\n new RegExp(\n `Cannot find module '${context.config.framework || \"powerlines\"}:.*'`\n ).test((error as Error).message)\n ) {\n const moduleName = (error as Error).message.match(\n new RegExp(\n `Cannot find module '(${context.config.framework || \"powerlines\"}:.*)'`\n )\n )?.[1];\n throw new Error(\n `The module \"${moduleName}\" could not be resolved while evaluating \"${\n typeDefinition.file\n }\". It is possible the required built-in modules have not yet been generated. Please check the order of your plugins. ${\n context.config.logLevel === \"debug\" ||\n context.config.logLevel === \"trace\"\n ? `\n\nBundle output for module:\n${result.text}`\n : \"\"\n }`\n );\n }\n\n throw new Error(\n `Failed to evaluate the bundled module for \"${\n typeDefinition.file\n }\". Error: ${(error as Error).message}${\n context.config.logLevel === \"debug\" ||\n context.config.logLevel === \"trace\"\n ? `\n\nBundle output for module:\n${result.text}`\n : \"\"\n }`\n );\n }\n\n let exportName = typeDefinition.name;\n if (!exportName) {\n exportName = \"default\";\n }\n\n const resolvedExport = resolved[exportName] ?? resolved[`__Ω${exportName}`];\n if (resolvedExport === undefined) {\n throw new Error(\n `The export \"${exportName}\" could not be resolved in the \"${\n typeDefinition.file\n }\" module. ${\n Object.keys(resolved).length === 0\n ? `After bundling, no exports were found in the module. Please ensure that the \"${\n typeDefinition.file\n }\" module has a \"${exportName}\" export with the desired value.`\n : `After bundling, the available exports were: ${Object.keys(\n resolved\n ).join(\n \", \"\n )}. Please ensure that the export exists and is correctly named.`\n }${\n context.config.logLevel === \"debug\"\n ? `\n\nBundle output for module:\n${result.text}`\n : \"\"\n }`\n );\n }\n\n return resolvedExport;\n}\n"]}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var chunkPK6SKIKE_cjs = require('./chunk-PK6SKIKE.cjs');
|
|
4
|
+
|
|
5
|
+
// src/lib/unplugin/module-resolution.ts
|
|
6
|
+
function createUnpluginModuleResolutionFunctions(context) {
|
|
7
|
+
const ctx = context;
|
|
8
|
+
async function resolveId(id, importer, opts = {
|
|
9
|
+
isEntry: false
|
|
10
|
+
}) {
|
|
11
|
+
let result = await ctx.$$internal.callHook("resolveId", {
|
|
12
|
+
sequential: true,
|
|
13
|
+
result: "first",
|
|
14
|
+
order: "pre"
|
|
15
|
+
}, id, importer, opts);
|
|
16
|
+
if (result) {
|
|
17
|
+
return result;
|
|
18
|
+
}
|
|
19
|
+
result = await ctx.$$internal.callHook("resolveId", {
|
|
20
|
+
sequential: true,
|
|
21
|
+
result: "first",
|
|
22
|
+
order: "normal"
|
|
23
|
+
}, id, importer, opts);
|
|
24
|
+
if (result) {
|
|
25
|
+
return result;
|
|
26
|
+
}
|
|
27
|
+
result = await ctx.resolve(id, importer, opts);
|
|
28
|
+
if (result) {
|
|
29
|
+
return result;
|
|
30
|
+
}
|
|
31
|
+
return ctx.$$internal.callHook("resolveId", {
|
|
32
|
+
sequential: true,
|
|
33
|
+
result: "first",
|
|
34
|
+
order: "post"
|
|
35
|
+
}, id, importer, opts);
|
|
36
|
+
}
|
|
37
|
+
chunkPK6SKIKE_cjs.__name(resolveId, "resolveId");
|
|
38
|
+
async function load(id) {
|
|
39
|
+
let result = await ctx.$$internal.callHook("load", {
|
|
40
|
+
sequential: true,
|
|
41
|
+
result: "first",
|
|
42
|
+
order: "pre"
|
|
43
|
+
}, id);
|
|
44
|
+
if (result) {
|
|
45
|
+
return result;
|
|
46
|
+
}
|
|
47
|
+
result = await ctx.$$internal.callHook("load", {
|
|
48
|
+
sequential: true,
|
|
49
|
+
result: "first",
|
|
50
|
+
order: "normal"
|
|
51
|
+
}, id);
|
|
52
|
+
if (result) {
|
|
53
|
+
return result;
|
|
54
|
+
}
|
|
55
|
+
result = await ctx.load(id);
|
|
56
|
+
if (result) {
|
|
57
|
+
return result;
|
|
58
|
+
}
|
|
59
|
+
return ctx.$$internal.callHook("load", {
|
|
60
|
+
sequential: true,
|
|
61
|
+
result: "first",
|
|
62
|
+
order: "post"
|
|
63
|
+
}, id);
|
|
64
|
+
}
|
|
65
|
+
chunkPK6SKIKE_cjs.__name(load, "load");
|
|
66
|
+
return {
|
|
67
|
+
resolveId,
|
|
68
|
+
load
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
chunkPK6SKIKE_cjs.__name(createUnpluginModuleResolutionFunctions, "createUnpluginModuleResolutionFunctions");
|
|
72
|
+
|
|
73
|
+
exports.createUnpluginModuleResolutionFunctions = createUnpluginModuleResolutionFunctions;
|
|
74
|
+
//# sourceMappingURL=chunk-R5BT5UQJ.cjs.map
|
|
75
|
+
//# sourceMappingURL=chunk-R5BT5UQJ.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/lib/unplugin/module-resolution.ts"],"names":["createUnpluginModuleResolutionFunctions","context","ctx","resolveId","id","importer","opts","isEntry","result","$$internal","callHook","sequential","order","resolve","load"],"mappings":";;;;;AAwCO,SAASA,wCAEdC,OAAAA,EAAiB;AACjB,EAAA,MAAMC,GAAAA,GAAMD,OAAAA;AAEZ,EAAA,eAAeE,SAAAA,CAEbC,EAAAA,EACAC,QAAAA,EACAC,IAAAA,GAEI;IAAEC,OAAAA,EAAS;GAAM,EAAC;AAEtB,IAAA,IAAIC,MAAAA,GAAS,MAAMN,GAAAA,CAAIO,UAAAA,CAAWC,SAChC,WAAA,EACA;MACEC,UAAAA,EAAY,IAAA;MACZH,MAAAA,EAAQ,OAAA;MACRI,KAAAA,EAAO;KACT,EACAR,EAAAA,EACAC,UACAC,IAAAA,CAAAA;AAEF,IAAA,IAAIE,MAAAA,EAAQ;AACV,MAAA,OAAOA,MAAAA;AACT,IAAA;AAEAA,IAAAA,MAAAA,GAAS,MAAMN,GAAAA,CAAIO,UAAAA,CAAWC,QAAAA,CAC5B,WAAA,EACA;MACEC,UAAAA,EAAY,IAAA;MACZH,MAAAA,EAAQ,OAAA;MACRI,KAAAA,EAAO;KACT,EACAR,EAAAA,EACAC,UACAC,IAAAA,CAAAA;AAEF,IAAA,IAAIE,MAAAA,EAAQ;AACV,MAAA,OAAOA,MAAAA;AACT,IAAA;AAEAA,IAAAA,MAAAA,GAAS,MAAMN,GAAAA,CAAIW,OAAAA,CAAQT,EAAAA,EAAIC,UAAUC,IAAAA,CAAAA;AACzC,IAAA,IAAIE,MAAAA,EAAQ;AACV,MAAA,OAAOA,MAAAA;AACT,IAAA;AAEA,IAAA,OAAON,GAAAA,CAAIO,UAAAA,CAAWC,QAAAA,CACpB,WAAA,EACA;MACEC,UAAAA,EAAY,IAAA;MACZH,MAAAA,EAAQ,OAAA;MACRI,KAAAA,EAAO;KACT,EACAR,EAAAA,EACAC,UACAC,IAAAA,CAAAA;AAEJ,EAAA;AAtDeH,EAAAA,wBAAAA,CAAAA,SAAAA,EAAAA,WAAAA,CAAAA;AAwDf,EAAA,eAAeW,KAEbV,EAAAA,EAAU;AAEV,IAAA,IAAII,MAAAA,GAAS,MAAMN,GAAAA,CAAIO,UAAAA,CAAWC,SAChC,MAAA,EACA;MACEC,UAAAA,EAAY,IAAA;MACZH,MAAAA,EAAQ,OAAA;MACRI,KAAAA,EAAO;AACT,KAAA,EACAR,EAAAA,CAAAA;AAEF,IAAA,IAAII,MAAAA,EAAQ;AACV,MAAA,OAAOA,MAAAA;AACT,IAAA;AAEAA,IAAAA,MAAAA,GAAS,MAAMN,GAAAA,CAAIO,UAAAA,CAAWC,QAAAA,CAC5B,MAAA,EACA;MACEC,UAAAA,EAAY,IAAA;MACZH,MAAAA,EAAQ,OAAA;MACRI,KAAAA,EAAO;AACT,KAAA,EACAR,EAAAA,CAAAA;AAEF,IAAA,IAAII,MAAAA,EAAQ;AACV,MAAA,OAAOA,MAAAA;AACT,IAAA;AAEAA,IAAAA,MAAAA,GAAS,MAAMN,GAAAA,CAAIY,IAAAA,CAAKV,EAAAA,CAAAA;AACxB,IAAA,IAAII,MAAAA,EAAQ;AACV,MAAA,OAAOA,MAAAA;AACT,IAAA;AAEA,IAAA,OAAON,GAAAA,CAAIO,UAAAA,CAAWC,QAAAA,CACpB,MAAA,EACA;MACEC,UAAAA,EAAY,IAAA;MACZH,MAAAA,EAAQ,OAAA;MACRI,KAAAA,EAAO;AACT,KAAA,EACAR,EAAAA,CAAAA;AAEJ,EAAA;AA5CeU,EAAAA,wBAAAA,CAAAA,IAAAA,EAAAA,MAAAA,CAAAA;AA8Cf,EAAA,OAAO;AACLX,IAAAA,SAAAA;AACAW,IAAAA;AACF,GAAA;AACF;AA/GgBd,wBAAAA,CAAAA,uCAAAA,EAAAA,yCAAAA,CAAAA","file":"chunk-R5BT5UQJ.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 { LoadResult } from \"rollup\";\nimport type {\n ExternalIdResult,\n HookFnMap,\n UnpluginBuildContext,\n UnpluginContext\n} from \"unplugin\";\nimport { PluginContext } from \"../../types/context\";\nimport { UNSAFE_PluginContext } from \"../../types/internal\";\n\n/**\n * Creates the module resolution hook functions for a Powerlines unplugin plugin instance.\n *\n * @remarks\n * This includes the `resolveId` and `load` hooks.\n *\n * @see https://rollupjs.org/plugin-development/#resolveid\n * @see https://rollupjs.org/plugin-development/#load\n *\n * @param context - The plugin context.\n * @returns The module resolution hooks (`resolveId` and `load`).\n */\nexport function createUnpluginModuleResolutionFunctions<\n TContext extends PluginContext = PluginContext\n>(context: TContext): Pick<HookFnMap, \"resolveId\" | \"load\"> {\n const ctx = context as unknown as UNSAFE_PluginContext;\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 ctx.resolve(id, importer, opts);\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<LoadResult | 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 result = await ctx.load(id);\n if (result) {\n return result;\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 return {\n resolveId,\n load\n };\n}\n"]}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { __name } from './chunk-7QVYU63E.js';
|
|
2
|
+
|
|
3
|
+
// src/lib/unplugin/module-resolution.ts
|
|
4
|
+
function createUnpluginModuleResolutionFunctions(context) {
|
|
5
|
+
const ctx = context;
|
|
6
|
+
async function resolveId(id, importer, opts = {
|
|
7
|
+
isEntry: false
|
|
8
|
+
}) {
|
|
9
|
+
let result = await ctx.$$internal.callHook("resolveId", {
|
|
10
|
+
sequential: true,
|
|
11
|
+
result: "first",
|
|
12
|
+
order: "pre"
|
|
13
|
+
}, id, importer, opts);
|
|
14
|
+
if (result) {
|
|
15
|
+
return result;
|
|
16
|
+
}
|
|
17
|
+
result = await ctx.$$internal.callHook("resolveId", {
|
|
18
|
+
sequential: true,
|
|
19
|
+
result: "first",
|
|
20
|
+
order: "normal"
|
|
21
|
+
}, id, importer, opts);
|
|
22
|
+
if (result) {
|
|
23
|
+
return result;
|
|
24
|
+
}
|
|
25
|
+
result = await ctx.resolve(id, importer, opts);
|
|
26
|
+
if (result) {
|
|
27
|
+
return result;
|
|
28
|
+
}
|
|
29
|
+
return ctx.$$internal.callHook("resolveId", {
|
|
30
|
+
sequential: true,
|
|
31
|
+
result: "first",
|
|
32
|
+
order: "post"
|
|
33
|
+
}, id, importer, opts);
|
|
34
|
+
}
|
|
35
|
+
__name(resolveId, "resolveId");
|
|
36
|
+
async function load(id) {
|
|
37
|
+
let result = await ctx.$$internal.callHook("load", {
|
|
38
|
+
sequential: true,
|
|
39
|
+
result: "first",
|
|
40
|
+
order: "pre"
|
|
41
|
+
}, id);
|
|
42
|
+
if (result) {
|
|
43
|
+
return result;
|
|
44
|
+
}
|
|
45
|
+
result = await ctx.$$internal.callHook("load", {
|
|
46
|
+
sequential: true,
|
|
47
|
+
result: "first",
|
|
48
|
+
order: "normal"
|
|
49
|
+
}, id);
|
|
50
|
+
if (result) {
|
|
51
|
+
return result;
|
|
52
|
+
}
|
|
53
|
+
result = await ctx.load(id);
|
|
54
|
+
if (result) {
|
|
55
|
+
return result;
|
|
56
|
+
}
|
|
57
|
+
return ctx.$$internal.callHook("load", {
|
|
58
|
+
sequential: true,
|
|
59
|
+
result: "first",
|
|
60
|
+
order: "post"
|
|
61
|
+
}, id);
|
|
62
|
+
}
|
|
63
|
+
__name(load, "load");
|
|
64
|
+
return {
|
|
65
|
+
resolveId,
|
|
66
|
+
load
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
__name(createUnpluginModuleResolutionFunctions, "createUnpluginModuleResolutionFunctions");
|
|
70
|
+
|
|
71
|
+
export { createUnpluginModuleResolutionFunctions };
|
|
72
|
+
//# sourceMappingURL=chunk-RBL4NKT3.js.map
|
|
73
|
+
//# sourceMappingURL=chunk-RBL4NKT3.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/lib/unplugin/module-resolution.ts"],"names":["createUnpluginModuleResolutionFunctions","context","ctx","resolveId","id","importer","opts","isEntry","result","$$internal","callHook","sequential","order","resolve","load"],"mappings":";;;AAwCO,SAASA,wCAEdC,OAAAA,EAAiB;AACjB,EAAA,MAAMC,GAAAA,GAAMD,OAAAA;AAEZ,EAAA,eAAeE,SAAAA,CAEbC,EAAAA,EACAC,QAAAA,EACAC,IAAAA,GAEI;IAAEC,OAAAA,EAAS;GAAM,EAAC;AAEtB,IAAA,IAAIC,MAAAA,GAAS,MAAMN,GAAAA,CAAIO,UAAAA,CAAWC,SAChC,WAAA,EACA;MACEC,UAAAA,EAAY,IAAA;MACZH,MAAAA,EAAQ,OAAA;MACRI,KAAAA,EAAO;KACT,EACAR,EAAAA,EACAC,UACAC,IAAAA,CAAAA;AAEF,IAAA,IAAIE,MAAAA,EAAQ;AACV,MAAA,OAAOA,MAAAA;AACT,IAAA;AAEAA,IAAAA,MAAAA,GAAS,MAAMN,GAAAA,CAAIO,UAAAA,CAAWC,QAAAA,CAC5B,WAAA,EACA;MACEC,UAAAA,EAAY,IAAA;MACZH,MAAAA,EAAQ,OAAA;MACRI,KAAAA,EAAO;KACT,EACAR,EAAAA,EACAC,UACAC,IAAAA,CAAAA;AAEF,IAAA,IAAIE,MAAAA,EAAQ;AACV,MAAA,OAAOA,MAAAA;AACT,IAAA;AAEAA,IAAAA,MAAAA,GAAS,MAAMN,GAAAA,CAAIW,OAAAA,CAAQT,EAAAA,EAAIC,UAAUC,IAAAA,CAAAA;AACzC,IAAA,IAAIE,MAAAA,EAAQ;AACV,MAAA,OAAOA,MAAAA;AACT,IAAA;AAEA,IAAA,OAAON,GAAAA,CAAIO,UAAAA,CAAWC,QAAAA,CACpB,WAAA,EACA;MACEC,UAAAA,EAAY,IAAA;MACZH,MAAAA,EAAQ,OAAA;MACRI,KAAAA,EAAO;KACT,EACAR,EAAAA,EACAC,UACAC,IAAAA,CAAAA;AAEJ,EAAA;AAtDeH,EAAAA,MAAAA,CAAAA,SAAAA,EAAAA,WAAAA,CAAAA;AAwDf,EAAA,eAAeW,KAEbV,EAAAA,EAAU;AAEV,IAAA,IAAII,MAAAA,GAAS,MAAMN,GAAAA,CAAIO,UAAAA,CAAWC,SAChC,MAAA,EACA;MACEC,UAAAA,EAAY,IAAA;MACZH,MAAAA,EAAQ,OAAA;MACRI,KAAAA,EAAO;AACT,KAAA,EACAR,EAAAA,CAAAA;AAEF,IAAA,IAAII,MAAAA,EAAQ;AACV,MAAA,OAAOA,MAAAA;AACT,IAAA;AAEAA,IAAAA,MAAAA,GAAS,MAAMN,GAAAA,CAAIO,UAAAA,CAAWC,QAAAA,CAC5B,MAAA,EACA;MACEC,UAAAA,EAAY,IAAA;MACZH,MAAAA,EAAQ,OAAA;MACRI,KAAAA,EAAO;AACT,KAAA,EACAR,EAAAA,CAAAA;AAEF,IAAA,IAAII,MAAAA,EAAQ;AACV,MAAA,OAAOA,MAAAA;AACT,IAAA;AAEAA,IAAAA,MAAAA,GAAS,MAAMN,GAAAA,CAAIY,IAAAA,CAAKV,EAAAA,CAAAA;AACxB,IAAA,IAAII,MAAAA,EAAQ;AACV,MAAA,OAAOA,MAAAA;AACT,IAAA;AAEA,IAAA,OAAON,GAAAA,CAAIO,UAAAA,CAAWC,QAAAA,CACpB,MAAA,EACA;MACEC,UAAAA,EAAY,IAAA;MACZH,MAAAA,EAAQ,OAAA;MACRI,KAAAA,EAAO;AACT,KAAA,EACAR,EAAAA,CAAAA;AAEJ,EAAA;AA5CeU,EAAAA,MAAAA,CAAAA,IAAAA,EAAAA,MAAAA,CAAAA;AA8Cf,EAAA,OAAO;AACLX,IAAAA,SAAAA;AACAW,IAAAA;AACF,GAAA;AACF;AA/GgBd,MAAAA,CAAAA,uCAAAA,EAAAA,yCAAAA,CAAAA","file":"chunk-RBL4NKT3.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 { LoadResult } from \"rollup\";\nimport type {\n ExternalIdResult,\n HookFnMap,\n UnpluginBuildContext,\n UnpluginContext\n} from \"unplugin\";\nimport { PluginContext } from \"../../types/context\";\nimport { UNSAFE_PluginContext } from \"../../types/internal\";\n\n/**\n * Creates the module resolution hook functions for a Powerlines unplugin plugin instance.\n *\n * @remarks\n * This includes the `resolveId` and `load` hooks.\n *\n * @see https://rollupjs.org/plugin-development/#resolveid\n * @see https://rollupjs.org/plugin-development/#load\n *\n * @param context - The plugin context.\n * @returns The module resolution hooks (`resolveId` and `load`).\n */\nexport function createUnpluginModuleResolutionFunctions<\n TContext extends PluginContext = PluginContext\n>(context: TContext): Pick<HookFnMap, \"resolveId\" | \"load\"> {\n const ctx = context as unknown as UNSAFE_PluginContext;\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 ctx.resolve(id, importer, opts);\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<LoadResult | 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 result = await ctx.load(id);\n if (result) {\n return result;\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 return {\n resolveId,\n load\n };\n}\n"]}
|