@powerlines/plugin-vite 0.14.54 → 0.14.56

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.
@@ -1 +1 @@
1
- const e=require(`../unplugin-CBw3hzOn.cjs`);require(`../helpers-LF26RHol.cjs`),exports.createVitePlugin=e.t;
1
+ const e=require(`../unplugin-UTNYpV5r.cjs`);require(`../helpers-LF26RHol.cjs`),exports.createVitePlugin=e.t;
@@ -1,4 +1,4 @@
1
- import "../plugin-Hxj-Dt1_.cjs";
2
- import { t as createVitePlugin } from "../unplugin-C-Y5b-bG.cjs";
1
+ import "../plugin-CkScSe1l.cjs";
2
+ import { t as createVitePlugin } from "../unplugin-cDFki-Ui.cjs";
3
3
  import "../index-D6CnpA_r.cjs";
4
4
  export { createVitePlugin };
@@ -1,4 +1,4 @@
1
- import "../plugin-ZU4wrS6F.mjs";
2
- import { t as createVitePlugin } from "../unplugin-BceZb6Fd.mjs";
1
+ import "../plugin-CwjfMnJI.mjs";
2
+ import { t as createVitePlugin } from "../unplugin-DZb1zEJx.mjs";
3
3
  import "../index-DL0uimUT.mjs";
4
4
  export { createVitePlugin };
@@ -1 +1 @@
1
- const e=require(`../unplugin-CBw3hzOn.cjs`);exports.createVitePlugin=e.t;
1
+ const e=require(`../unplugin-UTNYpV5r.cjs`);exports.createVitePlugin=e.t;
@@ -1,3 +1,3 @@
1
- import "../plugin-Hxj-Dt1_.cjs";
2
- import { t as createVitePlugin } from "../unplugin-C-Y5b-bG.cjs";
1
+ import "../plugin-CkScSe1l.cjs";
2
+ import { t as createVitePlugin } from "../unplugin-cDFki-Ui.cjs";
3
3
  export { createVitePlugin };
@@ -1,3 +1,3 @@
1
- import "../plugin-ZU4wrS6F.mjs";
2
- import { t as createVitePlugin } from "../unplugin-BceZb6Fd.mjs";
1
+ import "../plugin-CwjfMnJI.mjs";
2
+ import { t as createVitePlugin } from "../unplugin-DZb1zEJx.mjs";
3
3
  export { createVitePlugin };
package/dist/index.cjs CHANGED
@@ -1,4 +1,4 @@
1
- Object.defineProperty(exports,`__esModule`,{value:!0});const e=require(`./unplugin-CBw3hzOn.cjs`);require(`./helpers-LF26RHol.cjs`),require(`./plugin-pBKbb5K9.cjs`),require(`./types-o3zWarRp.cjs`);let t=require(`@storm-software/config-tools/types`),n=require(`@stryke/fs/package-fns`),r=require(`@stryke/path/join-paths`),i=require(`defu`);i=e.n(i);let a=require(`@stryke/helpers/omit`),o=require(`@stryke/path/replace`),s=require(`@stryke/string-format/camel-case`),c=require(`@stryke/type-checks/is-string`);const l={target:`esnext`,platform:`neutral`,format:`esm`,write:!0,minify:!0,sourcemap:!1,bundle:!0,treeShaking:!0,keepNames:!0,splitting:!0,logLevel:`silent`};function u(e){let t=e.config.build.override.inject??e.config.build.inject;return t&&Object.keys(t).length>0&&e.fs.writeSync((0,r.joinPaths)(e.workspaceConfig.workspaceRoot,e.config.projectRoot,e.artifactsPath,`inject-shim.js`),Object.entries(t).map(([e,t])=>{if(t)if(Array.isArray(t)){if((0,s.camelCase)(e)!==e){if(t.length===1)return`
1
+ Object.defineProperty(exports,`__esModule`,{value:!0});const e=require(`./unplugin-UTNYpV5r.cjs`);require(`./helpers-LF26RHol.cjs`),require(`./plugin-pBKbb5K9.cjs`),require(`./types-o3zWarRp.cjs`);let t=require(`@storm-software/config-tools/types`),n=require(`@stryke/fs/package-fns`),r=require(`@stryke/path/join-paths`),i=require(`defu`);i=e.n(i);let a=require(`@stryke/helpers/omit`),o=require(`@stryke/path/replace`),s=require(`@stryke/string-format/camel-case`),c=require(`@stryke/type-checks/is-string`);const l={target:`esnext`,platform:`neutral`,format:`esm`,write:!0,minify:!0,sourcemap:!1,bundle:!0,treeShaking:!0,keepNames:!0,splitting:!0,logLevel:`silent`};function u(e){let t=e.config.build.override.inject??e.config.build.inject;return t&&Object.keys(t).length>0&&e.fs.writeSync((0,r.joinPaths)(e.workspaceConfig.workspaceRoot,e.config.projectRoot,e.artifactsPath,`inject-shim.js`),Object.entries(t).map(([e,t])=>{if(t)if(Array.isArray(t)){if((0,s.camelCase)(e)!==e){if(t.length===1)return`
2
2
  import ${(0,s.camelCase)(e)} from "${t[0]}";
3
3
  export { ${(0,s.camelCase)(e)} as "${e}" }`;if(t.length>1)return`
4
4
  import ${t[1]===`*`?`* as ${(0,s.camelCase)(e)}`:`{ ${t[1]} as ${(0,s.camelCase)(e)} }`} from "${t[0]}";
package/dist/index.d.cts CHANGED
@@ -1,5 +1,5 @@
1
- import { a as __ΩVitePluginOptions, i as __ΩVitePluginContext, n as VitePluginOptions, o as __ΩVitePluginResolvedConfig, r as VitePluginResolvedConfig, s as Plugin, t as VitePluginContext } from "./plugin-Hxj-Dt1_.cjs";
2
- import { t as createVitePlugin } from "./unplugin-C-Y5b-bG.cjs";
1
+ import { a as __ΩVitePluginOptions, i as __ΩVitePluginContext, n as VitePluginOptions, o as __ΩVitePluginResolvedConfig, r as VitePluginResolvedConfig, s as Plugin, t as VitePluginContext } from "./plugin-CkScSe1l.cjs";
2
+ import { t as createVitePlugin } from "./unplugin-cDFki-Ui.cjs";
3
3
  import "./index-D6CnpA_r.cjs";
4
4
  import "./index-D4ELpJXS.cjs";
5
5
 
package/dist/index.d.mts CHANGED
@@ -1,5 +1,5 @@
1
- import { a as __ΩVitePluginOptions, i as __ΩVitePluginContext, n as VitePluginOptions, o as __ΩVitePluginResolvedConfig, r as VitePluginResolvedConfig, s as Plugin, t as VitePluginContext } from "./plugin-ZU4wrS6F.mjs";
2
- import { t as createVitePlugin } from "./unplugin-BceZb6Fd.mjs";
1
+ import { a as __ΩVitePluginOptions, i as __ΩVitePluginContext, n as VitePluginOptions, o as __ΩVitePluginResolvedConfig, r as VitePluginResolvedConfig, s as Plugin, t as VitePluginContext } from "./plugin-CwjfMnJI.mjs";
2
+ import { t as createVitePlugin } from "./unplugin-DZb1zEJx.mjs";
3
3
  import "./index-DL0uimUT.mjs";
4
4
  import "./index-9iG2qHLe.mjs";
5
5
 
@@ -912,7 +912,7 @@ interface Plugin<in out TContext extends PluginContext<ResolvedConfig> = PluginC
912
912
  * @param environment - The environment to check.
913
913
  * @returns `true` if the plugin should be active in the specified environment, `false` otherwise.
914
914
  */
915
- applyToEnvironment?: (environment: EnvironmentResolvedConfig) => MaybePromise<boolean | Plugin<TContext>>;
915
+ applyToEnvironment?: (environment: EnvironmentResolvedConfig) => MaybePromise<boolean | PluginConfig<any>>;
916
916
  }
917
917
  //#endregion
918
918
  //#region ../powerlines/src/types/tsconfig.d.ts
@@ -5,7 +5,6 @@ import { ResolveOptions } from "@stryke/fs/resolve";
5
5
  import "@babel/helper-plugin-utils";
6
6
  import ts from "typescript";
7
7
  import { Project } from "ts-morph";
8
- import "c12";
9
8
  import { EnvPaths } from "@stryke/env/get-env-paths";
10
9
  import { FetchRequestOptions } from "@stryke/http/fetch";
11
10
  import { ParseResult, ParserOptions } from "oxc-parser";
@@ -915,7 +914,7 @@ interface Plugin<in out TContext extends PluginContext<ResolvedConfig> = PluginC
915
914
  * @param environment - The environment to check.
916
915
  * @returns `true` if the plugin should be active in the specified environment, `false` otherwise.
917
916
  */
918
- applyToEnvironment?: (environment: EnvironmentResolvedConfig) => MaybePromise<boolean | Plugin<TContext>>;
917
+ applyToEnvironment?: (environment: EnvironmentResolvedConfig) => MaybePromise<boolean | PluginConfig<any>>;
919
918
  }
920
919
  //#endregion
921
920
  //#region ../powerlines/src/types/tsconfig.d.ts
@@ -1,3 +1,3 @@
1
- import { a as __ΩVitePluginOptions, i as __ΩVitePluginContext, n as VitePluginOptions, o as __ΩVitePluginResolvedConfig, r as VitePluginResolvedConfig, t as VitePluginContext } from "../plugin-Hxj-Dt1_.cjs";
1
+ import { a as __ΩVitePluginOptions, i as __ΩVitePluginContext, n as VitePluginOptions, o as __ΩVitePluginResolvedConfig, r as VitePluginResolvedConfig, t as VitePluginContext } from "../plugin-CkScSe1l.cjs";
2
2
  import "../index-D4ELpJXS.cjs";
3
3
  export { VitePluginContext, VitePluginOptions, VitePluginResolvedConfig, __ΩVitePluginContext, __ΩVitePluginOptions, __ΩVitePluginResolvedConfig };
@@ -1,3 +1,3 @@
1
- import { a as __ΩVitePluginOptions, i as __ΩVitePluginContext, n as VitePluginOptions, o as __ΩVitePluginResolvedConfig, r as VitePluginResolvedConfig, t as VitePluginContext } from "../plugin-ZU4wrS6F.mjs";
1
+ import { a as __ΩVitePluginOptions, i as __ΩVitePluginContext, n as VitePluginOptions, o as __ΩVitePluginResolvedConfig, r as VitePluginResolvedConfig, t as VitePluginContext } from "../plugin-CwjfMnJI.mjs";
2
2
  import "../index-9iG2qHLe.mjs";
3
3
  export { VitePluginContext, VitePluginOptions, VitePluginResolvedConfig, __ΩVitePluginContext, __ΩVitePluginOptions, __ΩVitePluginResolvedConfig };
@@ -1,2 +1,2 @@
1
- import { a as __ΩVitePluginOptions, i as __ΩVitePluginContext, n as VitePluginOptions, o as __ΩVitePluginResolvedConfig, r as VitePluginResolvedConfig, t as VitePluginContext } from "../plugin-Hxj-Dt1_.cjs";
1
+ import { a as __ΩVitePluginOptions, i as __ΩVitePluginContext, n as VitePluginOptions, o as __ΩVitePluginResolvedConfig, r as VitePluginResolvedConfig, t as VitePluginContext } from "../plugin-CkScSe1l.cjs";
2
2
  export { VitePluginContext, VitePluginOptions, VitePluginResolvedConfig, __ΩVitePluginContext, __ΩVitePluginOptions, __ΩVitePluginResolvedConfig };
@@ -1,2 +1,2 @@
1
- import { a as __ΩVitePluginOptions, i as __ΩVitePluginContext, n as VitePluginOptions, o as __ΩVitePluginResolvedConfig, r as VitePluginResolvedConfig, t as VitePluginContext } from "../plugin-ZU4wrS6F.mjs";
1
+ import { a as __ΩVitePluginOptions, i as __ΩVitePluginContext, n as VitePluginOptions, o as __ΩVitePluginResolvedConfig, r as VitePluginResolvedConfig, t as VitePluginContext } from "../plugin-CwjfMnJI.mjs";
2
2
  export { VitePluginContext, VitePluginOptions, VitePluginResolvedConfig, __ΩVitePluginContext, __ΩVitePluginOptions, __ΩVitePluginResolvedConfig };
@@ -1,4 +1,4 @@
1
- import { t as VitePluginContext } from "./plugin-ZU4wrS6F.mjs";
1
+ import { t as VitePluginContext } from "./plugin-CwjfMnJI.mjs";
2
2
  import * as vite0 from "vite";
3
3
 
4
4
  //#region src/helpers/unplugin.d.ts
@@ -17,7 +17,7 @@ ${c.errors.map(e=>`- ${(e.category!==void 0&&e.code?`[${e.category}-${e.code}]:
17
17
  ${T.default.green(` - Updated: ${e.current} `)}
18
18
  `).join(`
19
19
  `)}
20
- `),await e.fs.write(e.tsconfig.tsconfigFilePath,j.StormJSON.stringify(t)),e.tsconfig=K(e.workspaceConfig.workspaceRoot,e.config.projectRoot,e.config.tsconfig),!e.tsconfig)throw Error(`Failed to parse the TypeScript configuration file.`)}const ft=`default`;function pt(e,t){return(0,d.default)(t.environments?.[e]??{},{name:e,title:t.title||(0,N.titleCase)(t.name),ssr:!1,mainFields:t.build?.platform===`browser`?[`browser`,`module`,`jsnext:main`,`jsnext`]:[`module`,`jsnext:main`,`jsnext`],extensions:[`.mjs`,`.js`,`.mts`,`.ts`,`.jsx`,`.tsx`,`.json`],consumer:t.build?.platform===`browser`?`client`:`server`,preview:t.build?.platform===`browser`?{port:5173,open:!0,strictPort:!1,host:`localhost`,allowedHosts:[`.`],cors:!0,headers:{}}:void 0},t)}function mt(e){return pt(`default`,e)}async function ht(e,t){return(0,d.default)({workspaceRoot:e},await(0,he.getWorkspaceConfig)(!0,{cwd:t,workspaceRoot:e,useDefault:!0}))}async function gt(e,t,n,r,i=`production`,a,o=`powerlines`){let s={},c;if(a&&(c=(0,P.existsSync)((0,f.replacePath)(a,e))?(0,f.replacePath)(a,e):(0,P.existsSync)((0,u.joinPaths)((0,y.appendPath)(e,t),(0,f.replacePath)(a,e)))?(0,u.joinPaths)((0,y.appendPath)(e,t),(0,f.replacePath)(a,e)):(0,P.existsSync)((0,u.joinPaths)((0,y.appendPath)(e,t),a))?(0,u.joinPaths)((0,y.appendPath)(e,t),a):void 0),c||=(0,P.existsSync)((0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.${i}.config.ts`))?(0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.${i}.config.ts`):(0,P.existsSync)((0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.${i}.config.js`))?(0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.${i}.config.js`):(0,P.existsSync)((0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.${i}.config.mts`))?(0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.${i}.config.mts`):(0,P.existsSync)((0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.${i}.config.mjs`))?(0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.${i}.config.mjs`):(0,P.existsSync)((0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.config.ts`))?(0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.config.ts`):(0,P.existsSync)((0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.config.js`))?(0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.config.js`):(0,P.existsSync)((0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.config.mts`))?(0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.config.mts`):(0,P.existsSync)((0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.config.mjs`))?(0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.config.mjs`):void 0,c){let e=await n.import(n.esmResolve(c));if(e){let t={};(0,C.isFunction)(e)&&(t=await Promise.resolve(e({command:r,mode:i,isSsrBuild:!1,isPreview:!1}))),(0,w.isSetObject)(t)&&(s={...t,config:t,configFile:c})}}let l=await(0,ge.loadConfig)({cwd:e,name:o,envName:i,globalRc:!0,packageJson:!0,dotenv:!0,jiti:n});return(0,d.default)(s,(0,w.isSetObject)(l?.config)?{...l.config,...l}:{})}function _t(e){return(0,d.default)(e,{interopDefault:!0,fsCache:e.mode===`development`?!1:(0,u.joinPaths)(e.cacheDir,`jiti`),moduleCache:e.mode!==`development`})}function vt(e){return(0,we.createJiti)((0,u.joinPaths)(e.workspaceRoot,e.projectRoot),_t({...e}))}function yt(e){let t=(0,we.createJiti)((0,u.joinPaths)(e.workspaceRoot,e.projectRoot),_t(e));return t.plugin=vt(e),t}const bt=[`new`,`clean`,`prepare`,`lint`,`test`,`build`,`docs`,`deploy`,`finalize`];function q(e){return(0,w.isSetObject)(e)&&`name`in e&&(0,b.isSetString)(e.name)&&((0,z.isUndefined)(e.applyToEnvironment)||`applyToEnvironment`in e&&(0,C.isFunction)(e.applyToEnvironment))&&((0,z.isUndefined)(e.dedupe)||`dedupe`in e&&(0,C.isFunction)(e.dedupe))&&((0,z.isUndefined)(e.dependsOn)||`dependsOn`in e&&Array.isArray(e.dependsOn)&&e.dependsOn.every(Ct))&&bt.every(t=>(0,z.isUndefined)(e[t])||t in e&&((0,C.isFunction)(e[t])||(0,w.isSetObject)(e[t])&&`handler`in e[t]&&(0,C.isFunction)(e[t].handler)))}function xt(e){return(0,w.isSetObject)(e)&&`plugin`in e&&(((0,b.isSetString)(e.plugin)||(0,C.isFunction)(e.plugin))&&`options`in e&&(0,w.isSetObject)(e.options)||q(e.plugin))}function St(e){return Array.isArray(e)&&(e.length===1||e.length===2)&&(((0,b.isSetString)(e[0])||(0,C.isFunction)(e[0]))&&e.length>1&&(0,w.isSetObject)(e[1])||q(e[0]))}function Ct(e){return(0,b.isSetString)(e)||(0,C.isFunction)(e)||q(e)||xt(e)||St(e)}function wt(e){return(0,C.isFunction)(e)||(0,w.isSetObject)(e)&&`handler`in e&&(0,C.isFunction)(e.handler)}function Tt(e){return(0,w.isSetObject)(e)&&`handler`in e&&(0,C.isFunction)(e.handler)}function Et(e){return wt(e)||Tt(e)}function Dt(e){return(0,C.isFunction)(e)?e:e.handler}function Ot(e){return e.startsWith(`vite:`)||e.startsWith(`esbuild:`)||e.startsWith(`rolldown:`)||e.startsWith(`rollup:`)||e.startsWith(`webpack:`)||e.startsWith(`rspack:`)||e.startsWith(`farm:`)}function J(e,t){return e.dedupe===!1||t.some(t=>t.dedupe!==!1&&((0,C.isFunction)(t.dedupe)&&t.dedupe(e)||t.name===e.name))}function kt(e,t,n,r){J(t,r.map(e=>e.plugin))||r.push((0,C.isFunction)(n)?{plugin:t,handler:Dt(n).bind(e)}:{plugin:t,...n,handler:Dt(n).bind(e)})}var At=class extends B.Struct{static _capnp={displayName:`KeyValuePair`,id:`eabb26cf58b2a14c`,size:new B.ObjectSize(0,2)};get key(){return B.utils.getText(0,this)}set key(e){B.utils.setText(0,e,this)}get value(){return B.utils.getText(1,this)}set value(e){B.utils.setText(1,e,this)}toString(){return`FileMetadata_KeyValuePair_`+super.toString()}},jt=class e extends B.Struct{static KeyValuePair=At;static _capnp={displayName:`FileMetadata`,id:`8e2cab5d7e28c7b3`,size:new B.ObjectSize(8,3),defaultType:`normal`};static _Properties;get id(){return B.utils.getText(0,this)}set id(e){B.utils.setText(0,e,this)}get type(){return B.utils.getText(1,this,e._capnp.defaultType)}set type(e){B.utils.setText(1,e,this)}get timestamp(){return B.utils.getUint32(0,this)}set timestamp(e){B.utils.setUint32(0,e,this)}_adoptProperties(e){B.utils.adopt(e,B.utils.getPointer(2,this))}_disownProperties(){return B.utils.disown(this.properties)}get properties(){return B.utils.getList(2,e._Properties,this)}_hasProperties(){return!B.utils.isNull(B.utils.getPointer(2,this))}_initProperties(t){return B.utils.initList(2,e._Properties,t,this)}set properties(e){B.utils.copyFrom(e,B.utils.getPointer(2,this))}toString(){return`FileMetadata_`+super.toString()}},Mt=class extends B.Struct{static _capnp={displayName:`FileId`,id:`990d6a471072f997`,size:new B.ObjectSize(0,2)};get id(){return B.utils.getText(0,this)}set id(e){B.utils.setText(0,e,this)}get path(){return B.utils.getText(1,this)}set path(e){B.utils.setText(1,e,this)}toString(){return`FileId_`+super.toString()}},Nt=class extends B.Struct{static _capnp={displayName:`FileStorage`,id:`9dca66ac858c9ebe`,size:new B.ObjectSize(0,2)};get path(){return B.utils.getText(0,this)}set path(e){B.utils.setText(0,e,this)}get code(){return B.utils.getText(1,this)}set code(e){B.utils.setText(1,e,this)}toString(){return`FileStorage_`+super.toString()}},Y=class e extends B.Struct{static _capnp={displayName:`FileSystem`,id:`ae0c23d43e56abcf`,size:new B.ObjectSize(0,3)};static _Ids;static _Storage;static _Metadata;_adoptIds(e){B.utils.adopt(e,B.utils.getPointer(0,this))}_disownIds(){return B.utils.disown(this.ids)}get ids(){return B.utils.getList(0,e._Ids,this)}_hasIds(){return!B.utils.isNull(B.utils.getPointer(0,this))}_initIds(t){return B.utils.initList(0,e._Ids,t,this)}set ids(e){B.utils.copyFrom(e,B.utils.getPointer(0,this))}_adoptStorage(e){B.utils.adopt(e,B.utils.getPointer(1,this))}_disownStorage(){return B.utils.disown(this.storage)}get storage(){return B.utils.getList(1,e._Storage,this)}_hasStorage(){return!B.utils.isNull(B.utils.getPointer(1,this))}_initStorage(t){return B.utils.initList(1,e._Storage,t,this)}set storage(e){B.utils.copyFrom(e,B.utils.getPointer(1,this))}_adoptMetadata(e){B.utils.adopt(e,B.utils.getPointer(2,this))}_disownMetadata(){return B.utils.disown(this.metadata)}get metadata(){return B.utils.getList(2,e._Metadata,this)}_hasMetadata(){return!B.utils.isNull(B.utils.getPointer(2,this))}_initMetadata(t){return B.utils.initList(2,e._Metadata,t,this)}set metadata(e){B.utils.copyFrom(e,B.utils.getPointer(2,this))}toString(){return`FileSystem_`+super.toString()}};jt._Properties=B.CompositeList(At),Y._Ids=B.CompositeList(Mt),Y._Storage=B.CompositeList(Nt),Y._Metadata=B.CompositeList(jt);let Pt=function(e){return e.VIRTUAL=`virtual`,e.FS=`fs`,e}({});const Ft=(e,t={})=>{let n=t.logLevel===null?c.LogLevelLabel.SILENT:t.logLevel||c.LogLevelLabel.INFO;return n===c.LogLevelLabel.SILENT?je.noop:t.customLogger?t.customLogger:(r,...i)=>(0,ke.getLogFn)((0,ke.getLogLevel)(r),{...t,logLevel:n})(`${T.default.bold.hex((0,Ae.getColor)(`brand`,t))(`powerlines${e?`:${e}`:``}${t.name?` ${T.default.gray(`> `)}${t.name}`:``} ${T.default.gray(`> `)}`)}${i.join(` `)} `.trim())},It=[`#00A0DD`,`#6FCE4E`,`#FBBF24`,`#F43F5E`,`#3B82F6`,`#A855F7`,`#469592`,`#288EDF`,`#10B981`,`#EF4444`,`#F0EC56`,`#F472B6`,`#22D3EE`,`#EAB308`,`#84CC16`,`#F87171`,`#0EA5E9`,`#D946EF`,`#FACC15`,`#34D399`],Lt=(e,t)=>(n,...r)=>e(n,` ${T.default.inverse.hex(It[t.split(``).map(e=>e.charCodeAt(0)).reduce((e,t)=>e+t,0)%It.length]||It[0])(` ${(0,N.titleCase)(t)} `)} ${r.join(` `)} `);function Rt(e){return(0,se.isError)(e)&&`code`in e&&e.code}function X(e){return Rt(e)&&(e.code===`ENOENT`||e.code===`EISDIR`?null:e)}function Z(e){return(0,Me.correctPath)((0,Ne.slash)(e?.toString()||`.`).replace(/^file:\/\//,``))}function zt(e,t=`powerlines`){return e.replace(/^\\0/,``).startsWith(`${t.replace(/:$/,``)}`)}function Bt(e,t=`powerlines`){return`${t.replace(/:$/,``)}:${Z(e).replace(RegExp(`^${t.replace(/:$/,``)}:`),``).replace(/^\\0/,``).replace((0,M.findFileDotExtensionSafe)(Z(e)),``)}`}function Vt(e,t,n=`powerlines`){return(0,F.isAbsolutePath)(e)?e:zt(Z(e),n)?Bt(Z(e),n).replace(RegExp(`^${n.replace(/:$/,``)}:`),t):Z(e)}function Ht(e,t){return(0,v.getUnique)((0,m.toArray)(t).map(t=>(0,w.isSetObject)(t)&&((0,b.isSetString)(t.input)||(0,b.isSetString)(t.glob))?(0,I.joinPaths)(t.input||e,t.glob||`**/*`):(0,b.isSetString)(t)?t:void 0).filter(b.isSetString))}var Ut=class{#e=!1;options;constructor(e={base:`/`}){this.options=e,this.options.base=(0,Re.resolve)(e.base),this.options.isReadOnly=!!e.isReadOnly}async exists(e){return this.existsSync(e)}async get(e){return this.getSync(e)}async set(e,t){this.options.isReadOnly||this.setSync(e,t)}mkdirSync(e){}async mkdir(e){return Promise.resolve(this.mkdirSync(e))}async remove(e){this.options.isReadOnly||this.removeSync(e)}clearSync(e){if(!this.options.isReadOnly){let t=this.listSync(e||this.options.base);if(!t.length)return;t.map(t=>this.removeSync(e&&!t.startsWith(e)?(0,I.joinPaths)(e,t):t))}}async clear(e){if(!this.options.isReadOnly){let t=await this.list(e||this.options.base);if(!t.length)return;await Promise.all(t.map(async t=>this.remove(e&&!t.startsWith(e)?(0,I.joinPaths)(e,t):t)))}}async list(e){return this.listSync(e)}isDirectorySync(e){return!1}async isDirectory(e){return Promise.resolve(this.isDirectorySync(e))}isFileSync(e){return this.existsSync(e)&&!this.isDirectorySync(e)}async isFile(e){return Promise.resolve(this.isFileSync(e))}dispose(){return Promise.resolve()}async[Symbol.asyncDispose](){return this._dispose()}resolve(e=this.options.base){if(/\.\.:|\.\.$/.test(e))throw Error(`[${this.name}]: Invalid key: ${JSON.stringify(e)} provided to storage adapter.`);return(0,y.appendPath)((0,Me.correctPath)(e).replace(/:/g,`/`),this.options.base)}async _dispose(){this.#e||=(await Promise.resolve(this.dispose()),!0)}},Wt=class extends Ut{name=`file-system`;constructor(e){super(e)}existsSync(e){return(0,P.existsSync)(this.resolve(e))}async exists(e){return(0,P.exists)(this.resolve(e))}getSync(e){return(0,Pe.readFileSync)(this.resolve(e))}async get(e){return(0,Pe.readFile)(this.resolve(e))}setSync(e,t){if(!this.options.isReadOnly)return(0,Fe.writeFileSync)(this.resolve(e),t)}async set(e,t){if(!this.options.isReadOnly)return(0,Fe.writeFile)(this.resolve(e),t)}removeSync(e){if(!this.options.isReadOnly)try{return(0,Ie.unlinkSync)(this.resolve(e))}catch(e){return X(e)}}async remove(e){if(!this.options.isReadOnly)return(0,Le.unlink)(this.resolve(e)).catch(X)}mkdirSync(e){(0,x.createDirectorySync)(this.resolve(e))}async mkdir(e){await(0,x.createDirectory)(this.resolve(e))}listSync(e){try{return(0,g.listFilesSync)(this.resolve(e),{ignore:this.options.ignore})}catch(e){return X(e)??[]}}async list(e){return(0,g.listFiles)(this.resolve(e),{ignore:this.options.ignore}).catch(X).then(e=>e||[])}isDirectorySync(e){return(0,h.isDirectory)(this.resolve(e))}isFileSync(e){return!(0,h.isFile)(this.resolve(e))}},Q=class extends Ut{name=`virtual`;data=new Map;constructor(e){super(e)}existsSync(e){return this.data.has(this.resolve(e))}getSync(e){return this.data.get(this.resolve(e))??null}setSync(e,t){this.options.isReadOnly||this.data.set(this.resolve(e),t)}removeSync(e){this.options.isReadOnly||this.data.delete(this.resolve(e))}listSync(e){return[...this.data.keys().filter(t=>e?(0,V.isParentPath)(t,this.resolve(e)):!0)]}async dispose(){return this.clear()}},Gt=class e{#e;#t;#n;#r={"":new Wt};#i;#a=!1;#o;#s;#c(e){let t=e;return(0,V.isParentPath)(t,this.#o.builtinsPath)&&(t=(0,f.replacePath)(t,this.#o.builtinsPath)),Bt(t,this.#o.config.output.builtinPrefix)}#l(e){return Vt(e.includes(`{`)||e.includes(`}`)?U(this.#o,e):e,this.#o.builtinsPath,this.#o.config.output.builtinPrefix)}#u(e){let t=`::GLOBSTAR::`;return RegExp(`^${this.#l(e).replace(/\*\*/g,t).replace(/[.+^${}()|[\]\\]/g,`\\$&`).replace(/\*/g,`[^/]*`).replace(/\?/g,`[^/]`).replace(new RegExp(t,`g`),`.*`)}$`)}#d(e){let t=this.resolveSync(this.#l(e))||e;for(let e of Object.keys(this.#r).filter(Boolean).sort().reverse())if((0,V.isParentPath)(t,e))return{base:e,relativeKey:(0,f.replacePath)(t,e),adapter:this.#r[e]};return{base:``,relativeKey:t,adapter:this.#r[``]}}#f(e=``,t=!1){return Object.keys(this.#r).sort().reverse().filter(n=>(0,V.isParentPath)(n,e)||t&&(0,V.isParentPath)(e,n)).map(t=>({relativeBase:e.length>t.length?e.slice(t.length):void 0,base:t,adapter:this.#r[t]}))}static async create(t){if(!t.config.skipCache&&(0,P.existsSync)((0,u.joinPaths)(t.dataPath,`fs.bin`))){let n=await(0,Te.readFileBuffer)((0,u.joinPaths)(t.dataPath,`fs.bin`)),r=new B.Message(n,!1).getRoot(Y),i=new e(t,r);r._hasStorage()&&r.storage.length>0&&await Promise.all(r.storage.values().map(async e=>{await i.write(e.path,e.code)}))}return new e(t,new B.Message().initRoot(Y))}static createSync(t){if(!t.config.skipCache&&(0,P.existsSync)((0,u.joinPaths)(t.dataPath,`fs.bin`))){let n=(0,Te.readFileBufferSync)((0,u.joinPaths)(t.dataPath,`fs.bin`)),r=new B.Message(n,!1).getRoot(Y),i=new e(t,r);r._hasStorage()&&r.storage.length>0&&r.storage.values().map(e=>{i.writeSync(e.path,e.code)})}return new e(t,new B.Message().initRoot(Y))}get metadata(){return new Proxy(this.#e,{get:(e,t)=>e[this.#c(t)]})}get ids(){return new Proxy(this.#n,{get:(e,t)=>e[this.#l(t)]})}get paths(){return new Proxy(this.#n,{get:(e,t)=>e[this.#c(t)]})}get resolverCache(){return this.#i||=(0,Se.create)({cacheId:`module-resolution`,cacheDir:this.#o.cachePath,ttl:3600*1e3,lruSize:5e3,persistInterval:100}),this.#i}constructor(e,t){this.#o=e,(0,w.isSetObject)(this.#o.config.output.storage)&&(this.#r={...this.#r,...this.#o.config.output.storage}),this.#r.virtual??=new Q({base:`/_virtual`}),this.#o.config.output.storage!==Pt.FS&&(this.#r[this.#o.artifactsPath]??=new Q({base:this.#o.artifactsPath}),this.#r[this.#o.builtinsPath]??=new Q({base:this.#o.builtinsPath}),this.#r[this.#o.entryPath]??=new Q({base:this.#o.entryPath})),this.#e={},t._hasMetadata()&&(this.#e=t.metadata.values().reduce((e,t)=>(e[t.id]={id:t.id,type:t.type,timestamp:t.timestamp||Date.now(),properties:t._hasProperties()?t.properties.values().reduce((e,t)=>(e[t.key]=t.value,e),{}):{}},e),{})),this.#t={},this.#n={},t._hasIds()&&(this.#t=t.ids.values().reduce((e,t)=>(e[t.path]??=t.id,e),{}),this.#n=t.ids.values().reduce((e,t)=>(e[t.id]??=t.path,e),{})),this.#s=Lt(this.#o.log,`file-system`)}async exists(e){let{relativeKey:t,adapter:n}=this.#d(e);return n.exists(t)}existsSync(e){let{relativeKey:t,adapter:n}=this.#d(e);return n.existsSync(t)}isVirtual(e){let t=this.resolveSync(e);return t?this.#d(t)?.adapter?.name===`virtual`:!1}isDirectorySync(e){let t=this.resolveSync(e);return t?!!(this.existsSync(t)&&this.#d(t)?.adapter?.isDirectorySync(t)):!1}async isDirectory(e){let t=await this.resolve(e);return t?!!(await this.exists(t)&&await this.#d(t)?.adapter?.isDirectory(t)):!1}isFileSync(e){let t=this.resolveSync(e);return t?this.#d(t)?.adapter?.isFileSync(t)??!1:!1}async isFile(e){let t=await this.resolve(e);return t?await this.#d(t)?.adapter?.isFile(t)??!1:!1}listSync(e){return(0,v.getUnique)(this.#f(e,!0).map(e=>e.adapter.listSync(e.relativeBase?e.base?(0,y.appendPath)(e.relativeBase,e.base):e.relativeBase:e.base)).flat())}async list(e){return(0,v.getUnique)((await Promise.all(this.#f(e,!0).map(async e=>e.adapter.list(e.relativeBase?e.base?(0,y.appendPath)(e.relativeBase,e.base):e.relativeBase:e.base)))).flat())}async remove(e){let t=this.#l(e);this.#s(c.LogLevelLabel.TRACE,`Removing file: ${t}`);let{relativeKey:n,adapter:r}=this.#d(t);(0,M.hasFileExtension)(t)?await r.remove(n):await r.clear(n);let i=this.#t[t];i&&this.#e[i]&&(delete this.#e[i],delete this.#t[t],delete this.#n[i])}removeSync(e){let t=this.#l(e);this.#s(c.LogLevelLabel.TRACE,`Removing file: ${t}`);let{relativeKey:n,adapter:r}=this.#d(t);(0,M.hasFileExtension)(t)?r.removeSync(n):r.clearSync(n);let i=this.#t[t];i&&this.#e[i]&&(delete this.#e[i],delete this.#t[t],delete this.#n[i])}async glob(e){let t=[];for(let n of Ht(this.#o.workspaceConfig.workspaceRoot,e)){let e=this.#l(n);if(!/[*?[\]{}]/.test(e)&&!e.includes(`**`)){if(this.isDirectorySync(e))t.push(...await this.list(e));else{let n=await this.resolve(e);n&&!t.includes(n)&&t.push(n)}continue}let r=(0,F.isAbsolutePath)(e)?e:this.#l((0,u.joinPaths)(this.#o.workspaceConfig.workspaceRoot,e)),i=r.search(/[*?[\]{}]/),a=i===-1?(0,M.findFilePath)(r):r.slice(0,Math.max(0,r.lastIndexOf(`/`,i)));await Promise.all((await this.list(a&&(0,F.isAbsolutePath)(a)?a:this.#o.workspaceConfig.workspaceRoot)).map(async e=>{if(this.#u(r).test(e)){let n=this.resolveSync(e);n&&!t.includes(n)&&t.push(n)}}))}return t}globSync(e){let t=[];for(let n of Ht(this.#o.workspaceConfig.workspaceRoot,e)){let e=this.#l(n);if(!/[*?[\]{}]/.test(e)&&!e.includes(`**`)){if(this.isDirectorySync(e))t.push(...this.listSync(e));else{let n=this.resolveSync(e);n&&!t.includes(n)&&t.push(n)}continue}let r=(0,F.isAbsolutePath)(e)?e:this.#l((0,u.joinPaths)(this.#o.workspaceConfig.workspaceRoot,e)),i=r.search(/[*?[\]{}]/),a=i===-1?(0,M.findFilePath)(r):r.slice(0,Math.max(0,r.lastIndexOf(`/`,i))),o=this.listSync(a&&(0,F.isAbsolutePath)(a)?a:this.#o.workspaceConfig.workspaceRoot);for(let e of o)if(this.#u(r).test(e)){let n=this.resolveSync(e);n&&!t.includes(n)&&t.push(n)}}return t}async copy(e,t){let n=e instanceof URL?(0,H.fileURLToPath)(e):e,r=t instanceof URL?(0,H.fileURLToPath)(t):t;if(!(0,b.isSetString)(n)&&(!(0,w.isSetObject)(n)||!(0,b.isSetString)(n.input))||!(0,b.isSetString)(r))return;let i=(0,p.isString)(n)?n:n.input?n.input:this.#o.workspaceConfig.workspaceRoot,a=await this.resolve(i);if(a)if(this.isDirectorySync(a)||(0,b.isSetString)(n)&&n.includes(`*`)||(0,w.isSetObject)(n)&&(0,b.isSetString)(n.glob))await Promise.all((await this.glob(n)).map(async e=>this.copy(e,(0,y.appendPath)((0,f.replacePath)(e,i),r))));else{let e=await this.read(a);e!==void 0&&await this.write(this.#l(r),e,{skipFormat:!0})}}copySync(e,t){let n=e instanceof URL?(0,H.fileURLToPath)(e):e,r=t instanceof URL?(0,H.fileURLToPath)(t):t;if(!(0,b.isSetString)(n)&&(!(0,w.isSetObject)(n)||!(0,b.isSetString)(n.input))||!(0,b.isSetString)(r))return;let i=(0,p.isString)(n)?n:n.input?n.input:this.#o.workspaceConfig.workspaceRoot,a=this.resolveSync(i);if(a)if(this.isDirectorySync(a)||(0,b.isSetString)(n)&&n.includes(`*`)||(0,w.isSetObject)(n)&&(0,b.isSetString)(n.glob))this.globSync(n).map(e=>this.copySync(e,(0,y.appendPath)((0,M.findFilePath)((0,f.replacePath)(e,i)),r)));else{let e=this.readSync(a);e!==void 0&&this.writeSync(this.#l((0,M.hasFileExtension)(r)?r:(0,y.appendPath)((0,M.findFileName)(a),r)),e,{skipFormat:!0})}}async move(e,t){(0,M.hasFileExtension)(e)?(await this.copy(e,t),await this.remove(e)):await Promise.all((await this.list(e)).map(async e=>{await this.copy(e,t),await this.remove(e)}))}moveSync(e,t){(0,M.hasFileExtension)(e)?(this.copySync(e,t),this.removeSync(e)):this.listSync(e).forEach(e=>{this.copySync(e,t),this.removeSync(e)})}async read(e){let t=await this.resolve(e);if(!t)return;let{relativeKey:n,adapter:r}=this.#d(t);return this.#s(c.LogLevelLabel.TRACE,`Reading ${r.name} file: ${t}`),await r.get(n)??void 0}readSync(e){let t=this.resolveSync(e);if(!t)return;let{relativeKey:n,adapter:r}=this.#d(t);return this.#s(c.LogLevelLabel.TRACE,`Reading ${r.name} file: ${t}`),r.getSync(n)??void 0}async write(e,t=``,n={}){let r=t;if(!n.skipFormat){let n=await(0,Oe.resolveConfig)(this.#l(e));n&&(r=await(0,Oe.format)(t,{absolutePath:this.#l(e),...n}))}let{relativeKey:i,adapter:a}=this.#d(e);this.#s(c.LogLevelLabel.TRACE,`Writing ${this.#l(i)} to ${a.name===`virtual`?`the virtual file system`:a.name===`file-system`?`the local file system`:a.name} (size: ${(0,Ee.prettyBytes)(new De.Blob((0,m.toArray)(r)).size)})`);let o=n?.meta?.id||this.#c(i);return this.#e[o]={variant:`normal`,timestamp:Date.now(),...n.meta??{}},this.#n[o]=this.#l(i),this.#t[this.#l(i)]=o,a.set(i,r)}writeSync(e,t=``,n={}){let{relativeKey:r,adapter:i}=this.#d(e);this.#s(c.LogLevelLabel.TRACE,`Writing ${this.#l(r)} file to ${i.name===`virtual`?`the virtual file system`:i.name===`file-system`?`the local file system`:i.name} (size: ${(0,Ee.prettyBytes)(new De.Blob((0,m.toArray)(t)).size)})`);let a=n?.meta?.id||this.#c(r);return this.#e[a]={variant:`normal`,timestamp:Date.now(),...n.meta??{}},this.#n[a]=this.#l(r),this.#t[this.#l(r)]=a,i.setSync(r,t)}mkdirSync(e){return this.#d(e)?.adapter?.mkdirSync(e)}async mkdir(e){return this.#d(e)?.adapter?.mkdir(e)}getMetadata(e){let t=this.resolveSync(e);if(t&&this.metadata[t])return this.metadata[t]}async resolve(e,t,n={}){let r=e;if((r.includes(`{`)||r.includes(`}`))&&(r=U(this.#o,r)),(0,F.isAbsolutePath)(r))return r;let i=(0,_.murmurhash)({path:this.#c(r),importer:t,options:n}),a;if(!this.#o.config.skipCache&&(a=this.resolverCache.get(i),a))return a;if(a=this.paths[this.#c(r)],!a){let e=n.paths??[];t&&!e.includes(t)&&e.push(t),e.push(this.#o.workspaceConfig.workspaceRoot),e.push((0,y.appendPath)(this.#o.config.projectRoot,this.#o.workspaceConfig.workspaceRoot)),e.push((0,y.appendPath)(this.#o.config.sourceRoot,this.#o.workspaceConfig.workspaceRoot)),e.push(...Object.keys(this.#o.tsconfig?.options?.paths??{}).filter(e=>r.startsWith(e.replace(/\*$/,``))).map(e=>this.#o.tsconfig?.options?.paths?.[e]).flat().filter(Boolean).map(e=>(0,y.appendPath)(e,this.#o.workspaceConfig.workspaceRoot)));for(let t of(0,S.getResolutionCombinations)(r,{paths:e})){let{relativeKey:e,adapter:n}=this.#d(t);if(await n.exists(e)){a=t;break}}if(!a)try{a=await(0,S.resolve)(r,{...n,paths:e})}catch{}}return a&&!this.#o.config.skipCache&&this.resolverCache.set(i,a),a}resolveSync(e,t,n={}){let r=e;if((r.includes(`{`)||r.includes(`}`))&&(r=U(this.#o,r)),(0,F.isAbsolutePath)(r))return r;let i;if(!this.#o.config.skipCache&&(i=this.resolverCache.get(this.#c(r)),i))return i;if(i=this.paths[this.#c(r)],!i){let e=n.paths??[];t&&!e.includes(t)&&e.push(t),e.push(this.#o.workspaceConfig.workspaceRoot),e.push((0,y.appendPath)(this.#o.config.projectRoot,this.#o.workspaceConfig.workspaceRoot)),e.push((0,y.appendPath)(this.#o.config.sourceRoot,this.#o.workspaceConfig.workspaceRoot)),e.push(...Object.keys(this.#o.tsconfig?.options?.paths??{}).filter(e=>r.startsWith(e.replace(/\*$/,``))).map(e=>this.#o.tsconfig?.options?.paths?.[e]).flat().filter(Boolean).map(e=>(0,y.appendPath)(e,this.#o.workspaceConfig.workspaceRoot)));for(let t of(0,S.getResolutionCombinations)(r,{paths:e})){let{relativeKey:e,adapter:n}=this.#d(t);if(n.existsSync(e)){i=t;break}}if(!i)try{i=(0,S.resolveSync)(r,{...n,paths:e})}catch{}}return i&&!this.#o.config.skipCache&&this.resolverCache.set(this.#c(r),i),i}async dispose(){if(!this.#a){this.#a=!0,this.#s(c.LogLevelLabel.DEBUG,`Disposing virtual file system...`),await this.remove((0,u.joinPaths)(this.#o.dataPath,`fs.bin`));let e=new B.Message,t=e.initRoot(Y),n=await this.list(),r=t._initStorage(n.length);await Promise.all(n.map(async(e,t)=>{let n=await this.read(e),i=r.get(t);i.path=e,i.code=n||``}));let i=t._initIds(Object.keys(this.ids).length);Object.entries(this.ids).filter(([,e])=>e).forEach(([e,t],n)=>{let r=i.get(n);r.id=e,r.path=t});let a=t._initMetadata(Object.keys(this.metadata).length);Object.entries(this.metadata).filter(([,e])=>e).forEach(([e,t],n)=>{let r=a.get(n);if(r.id=e,r.type=t.type,r.timestamp=t.timestamp??BigInt(Date.now()),t.properties){let e=r._initProperties(Object.keys(t.properties).length);Object.entries(t.properties).forEach(([t,n],r)=>{let i=e.get(r);i.key=t,i.value=n})}}),await(0,Te.writeFileBuffer)((0,u.joinPaths)(this.#o.dataPath,`fs.bin`),e.toArrayBuffer()),this.#o.config.skipCache||this.#i.save(!0),await Promise.all(this.#f().map(async e=>e.adapter.dispose())),this.#s(c.LogLevelLabel.TRACE,`Virtual file system has been disposed.`)}}async[Symbol.asyncDispose](){return this.dispose()}};const Kt=45,qt=62;function Jt(e,t){let n=`${(0,ze.kebabCase)(e)}_${t}`;return n.length>45?n.slice(0,45):n}async function Yt(e){let t=(0,u.joinPaths)(e.dataPath,`meta.json`);e.log(c.LogLevelLabel.DEBUG,`Writing runtime metadata to ${t}`),await e.fs.write(t,JSON.stringify(e.meta,null,2))}const $=new WeakMap;(0,R.setGlobalDispatcher)(new R.Agent({keepAliveTimeout:1e4}).compose(R.interceptors.retry({maxRetries:3,minTimeout:1e3,maxTimeout:1e4,timeoutFactor:2,retryAfter:!0})));var Xt=class e{#e={};#t;#n=null;#r=(0,xe.uuid)();#i=(0,xe.uuid)();#a=Date.now();#o;#s;#c;#l;#u;#d;#f(e={}){return{variant:e.build?.variant,projectType:e.type,projectRoot:e.root,name:e.name,title:e.title,description:e.description,sourceRoot:e.sourceRoot,configFile:e.configFile,customLogger:e.customLogger,logLevel:e.logLevel,tsconfig:e.tsconfig,tsconfigRaw:e.tsconfigRaw,skipCache:e.skipCache,skipInstalls:e.skipInstalls,entry:e.entry,output:e.output,plugins:e.plugins,mode:e.mode,lint:e.lint,transform:e.transform,build:e.build,framework:e.framework,...e}}static async from(t,n){let r=new e(await ht(t,n.root));if(await r.withUserConfig(n),r.powerlinesPath=await(0,S.resolvePackage)(`powerlines`),!r.powerlinesPath)throw Error("Could not resolve `powerlines` package location.");return r}dependencies={};devDependencies={};persistedMeta=void 0;powerlinesPath;packageJson;projectJson=void 0;resolver;resolvePatterns=[];get $$internal(){return this.#e}set $$internal(e){this.#e=e}get entry(){return We(this,(0,m.toArray)(this.config.entry))}get tsconfig(){return this.#c||(this.tsconfig={tsconfigFilePath:this.config.tsconfig}),this.#c}set tsconfig(e){this.#c=e,this.resolvePatterns=(0,L.tsconfigPathsToRegExp)(e?.options?.paths??{})}get fs(){return this.#s||=Gt.createSync(this),this.#s}get checksum(){return this.#n}get meta(){return{buildId:this.#r,releaseId:this.#i,checksum:this.#n,timestamp:this.#a,projectRootHash:(0,_.murmurhash)({workspaceRoot:this.workspaceConfig?.workspaceRoot,projectRoot:this.config?.projectRoot},{maxLength:45}),configHash:(0,_.murmurhash)(this.config,{maxLength:62})}}get config(){return this.resolvedConfig??{}}get log(){return this.logFn||=this.createLog(),this.logFn}get workspaceConfig(){return this.#t}get envPaths(){return this.#o||=(0,_e.getEnvPaths)({orgId:`storm-software`,appId:`powerlines`,workspaceRoot:this.workspaceConfig.workspaceRoot}),this.#o}get artifactsPath(){return(0,I.joinPaths)(this.workspaceConfig.workspaceRoot,this.config.projectRoot,this.config.output.artifactsPath)}get builtinsPath(){return(0,I.joinPaths)(this.artifactsPath,`builtins`)}get entryPath(){return(0,I.joinPaths)(this.artifactsPath,`entry`)}get dataPath(){return(0,I.joinPaths)(this.envPaths.data,`projects`,Jt(this.config.name,this.meta.projectRootHash))}get cachePath(){return(0,I.joinPaths)(this.envPaths.cache,`projects`,(0,_.murmurhash)({checksum:this.#n,config:this.meta.configHash},{maxLength:62}))}get dtsPath(){return this.config.output.dts?(0,y.appendPath)(this.config.output.dts,this.workspaceConfig.workspaceRoot):(0,I.joinPaths)(this.workspaceConfig.workspaceRoot,this.config.projectRoot,`powerlines.d.ts`)}get relativeToWorkspaceRoot(){return(0,ne.relativeToWorkspaceRoot)(this.config.projectRoot)}get builtins(){return Object.values(this.fs.metadata).filter(e=>e&&e.type===`builtin`).map(e=>e?.id).filter(Boolean)}get program(){return this.#l||=Qe(this,{skipAddingFilesFromTsConfig:!0}),this.#l}get parserCache(){return this.#u||=(0,Se.create)({cacheId:`parser`,cacheDir:this.cachePath,ttl:7200*1e3,lruSize:5e3,persistInterval:250}),this.#u}get requestCache(){return this.#d||=(0,Se.create)({cacheId:`http`,cacheDir:this.cachePath,ttl:300*1e3,lruSize:5e3,persistInterval:250}),this.#d}async fetch(e,t={}){let n=(0,_.murmurhash)({input:e.toString(),options:JSON.stringify(t)});if(!this.config.skipCache&&!t.skipCache){let e=this.requestCache.get(n);if(e)return new R.Response(e.body,{status:e.status,statusText:e.statusText,headers:e.headers})}let r=await(0,ye.fetchRequest)(e,{timeout:12e3,...t}),i={body:await r.text(),status:r.status,statusText:r.statusText,headers:Object.fromEntries(r.headers.entries())};if(!this.config.skipCache&&!t.skipCache)try{this.requestCache.set(n,i)}catch{}return new R.Response(i.body,{status:i.status,statusText:i.statusText,headers:i.headers})}async parse(e,t={}){let n=(0,_.murmurhash)({code:e,options:t}),r;return!this.config.skipCache&&(r=this.parserCache.get(n),r)?r:(r=await(0,Ce.parse)(`source.${t.lang||`ts`}`,e,{...t,sourceType:`module`,showSemanticErrors:this.config.mode===`development`}),this.config.skipCache||this.parserCache.set(n,r),r)}async resolve(e,t,n={}){let r=e;if(this.config.build.alias)if(Array.isArray(this.config.build.alias)){let e=this.config.build.alias.find(e=>(0,L.match)(r,[e.find]));e&&(r=e.replacement)}else (0,w.isSetObject)(this.config.build.alias)&&this.config.build.alias[e]&&(r=this.config.build.alias[e]);if(this.fs.isVirtual(r)){let e=await this.fs.resolve(r,t,{conditions:this.config.build.conditions,extensions:this.config.build.extensions,...n});return e?{id:`\0${e}`,external:this.config.projectType!==`application`}:void 0}if(this.config.build.skipNodeModulesBundle){if((0,L.match)(r,this.resolvePatterns)||(0,L.match)(r,this.config.build.noExternal))return;if((0,L.match)(r,this.config.build.external)||r.startsWith(`node:`)||!/^[A-Z]:[/\\]|^\.{0,2}\/|^\.{1,2}$/.test(r))return{id:r,external:!0}}else{if((0,L.match)(r,this.config.build.noExternal))return;if((0,L.match)(r,this.config.build.external)||r.startsWith(`node:`))return{id:r,external:!0}}}async load(e){let t=await this.fs.resolve(e);if(!t)return;let n=await this.fs.read(t);if(n)return{code:n,map:null}}async getBuiltins(){return Promise.all(Object.entries(this.fs.metadata).filter(([,e])=>e&&e.type===`builtin`).map(async([e,t])=>{let n=await this.fs.read(e);return{...t,path:e,code:n}}))}async emitEntry(e,t,n={}){return this.fs.write((0,F.isAbsolute)(t)?t:(0,y.appendPath)(t,this.entryPath),e,(0,d.default)(n,{type:`entry`}))}async emitBuiltin(e,t,n,r={}){return this.fs.write(n?(0,F.isAbsolute)(n)?n:(0,I.joinPaths)(this.builtinsPath,n):(0,y.appendPath)(t,this.builtinsPath),e,(0,d.default)(r,{type:`builtin`}))}async withUserConfig(e,t={isHighPriority:!0}){this.mergeUserConfig(e),await this.init(this.config.userConfig,t)}async withInlineConfig(e,t={isHighPriority:!0}){if(this.config.inlineConfig=e,e.command===`new`){let e=(0,I.joinPaths)(this.workspaceConfig.workspaceRoot,`package.json`);if(!(0,P.existsSync)(e))throw Error(`The workspace package.json file could not be found at ${e}`);this.packageJson=await(0,A.readJsonFile)(e),this.workspaceConfig.repository??=(0,b.isSetString)(this.packageJson?.repository)?this.packageJson.repository:this.packageJson?.repository?.url}await this.init(this.config.inlineConfig,t)}fatal(e){this.log(c.LogLevelLabel.FATAL,(0,p.isString)(e)?e:j.StormJSON.stringify(e))}error(e){this.log(c.LogLevelLabel.ERROR,(0,p.isString)(e)?e:j.StormJSON.stringify(e))}warn(e){this.log(c.LogLevelLabel.WARN,(0,p.isString)(e)?e:j.StormJSON.stringify(e))}info(e){this.log(c.LogLevelLabel.INFO,(0,p.isString)(e)?e:j.StormJSON.stringify(e))}debug(e){this.log(c.LogLevelLabel.DEBUG,(0,p.isString)(e)?e:j.StormJSON.stringify(e))}trace(e){this.log(c.LogLevelLabel.TRACE,(0,p.isString)(e)?e:j.StormJSON.stringify(e))}createLog(e=null){return Ft(e,{...this.config,logLevel:(0,be.isNull)(this.config.logLevel)?`silent`:this.config.logLevel})}extendLog(e){return Lt(this.log,e)}async generateChecksum(e=this.config.projectRoot){return this.#n=await(0,ve.hashDirectory)(e,{ignore:[`node_modules`,`.git`,`.nx`,`.cache`,`.storm`,`tmp`,`dist`]}),this.#n}constructor(e){this.#t=e,this.#o=(0,_e.getEnvPaths)({orgId:`storm-software`,appId:`powerlines`,workspaceRoot:e.workspaceRoot})}resolvedConfig={};logFn;async init(e={},t={isHighPriority:!0}){let n={projectRoot:e.root??this.config.projectRoot??this.config.userConfig?.root??this.config.inlineConfig?.root,mode:(e.mode??this.config.mode)||this.workspaceConfig.mode,skipCache:e.skipCache??this.config.skipCache??!1,configFile:e.configFile??this.config.configFile,framework:e.framework??this.config.framework??`powerlines`,command:this.config.inlineConfig?.command};if($.has(n)){let e=$.get(n);this.projectJson=e.projectJson,this.packageJson=e.packageJson,this.#n=e.checksum,this.resolver=e.resolver,this.mergeUserConfig(e.userConfig.config,this.config.userConfig)}else{let t=(0,I.joinPaths)(n.projectRoot,`project.json`);(0,P.existsSync)(t)&&(this.projectJson=await(0,A.readJsonFile)(t));let r=(0,I.joinPaths)(n.projectRoot,`package.json`);(0,P.existsSync)(r)&&(this.packageJson=await(0,A.readJsonFile)(r)),this.#n=await this.generateChecksum(n.projectRoot),this.resolver=yt({workspaceRoot:this.workspaceConfig.workspaceRoot,projectRoot:n.projectRoot,cacheDir:this.cachePath,mode:n.mode,logLevel:e.logLevel||this.config?.logLevel||this.workspaceConfig.logLevel||`info`,skipCache:n.skipCache});let i=await gt(n.projectRoot,this.workspaceConfig.workspaceRoot,this.resolver,n.command,n.mode,n.configFile,n.framework);this.mergeUserConfig(i.config),$.set(n,{projectJson:this.projectJson,packageJson:this.packageJson,checksum:this.#n,resolver:this.resolver,userConfig:i})}e.tsconfig??=W(this.workspaceConfig.workspaceRoot,n.projectRoot,e.tsconfig),(0,w.isSetObject)(e)&&(this.resolvedConfig=(0,d.default)({inlineConfig:this.config.inlineConfig,userConfig:this.config.userConfig},t.isHighPriority?this.#f(e):{},{command:this.config.inlineConfig?.command,...this.#f(this.config.inlineConfig)},this.#f(this.config.userConfig),{mode:this.workspaceConfig?.mode,logLevel:this.workspaceConfig?.logLevel,skipCache:this.workspaceConfig?.skipCache},{name:this.projectJson?.name||this.packageJson?.name,version:this.packageJson?.version,description:this.packageJson?.description,sourceRoot:this.projectJson?.sourceRoot||(0,y.appendPath)(`src`,n.projectRoot),output:(0,d.default)(e.output??{},{outputPath:n.projectRoot?(0,I.joinPaths)(this.workspaceConfig?.directories?.build||`dist`,n.projectRoot):this.workspaceConfig?.directories?.build||`dist`,artifactsPath:(0,I.joinPaths)(n.projectRoot,`.${e.framework??`powerlines`}`),dts:(0,I.joinPaths)(n.projectRoot,`${e.framework??`powerlines`}.d.ts`),builtinPrefix:e.framework??`powerlines`,assets:[{glob:`LICENSE`},{input:n.projectRoot,glob:`*.md`},{input:n.projectRoot,glob:`package.json`}]})},t.isHighPriority?{}:this.#f(e),{inlineConfig:{},userConfig:{},framework:`powerlines`,platform:`neutral`,mode:`production`,projectType:`application`,logLevel:`info`,preview:!1,environments:{},transform:{babel:{plugins:[],presets:[]}},lint:{eslint:{}},build:{target:`esnext`,override:{}}})),this.config.entry=Ge(this.config.entry),this.config.name?.startsWith(`@`)&&this.config.name.split(`/`).filter(Boolean).length>1&&(this.config.name=this.config.name.split(`/`).filter(Boolean)[1]),this.config.title??=(0,N.titleCase)(this.config.name),this.config.userConfig.build?.external&&(this.config.userConfig.build.external=(0,v.getUnique)(this.config.userConfig.build.external)),this.config.userConfig.build?.noExternal&&(this.config.userConfig.build.noExternal=(0,v.getUnique)(this.config.userConfig.build.noExternal)),this.config.build.external&&(this.config.build.external=(0,v.getUnique)(this.config.build.external)),this.config.build.noExternal&&(this.config.build.noExternal=(0,v.getUnique)(this.config.build.noExternal)),this.config.output.format=(0,v.getUnique)((0,m.toArray)(this.config.output?.format??(this.config.projectType===`library`?[`cjs`,`esm`]:[`esm`]))),this.config.projectRoot&&this.config.projectRoot!==`.`&&this.config.projectRoot!==`./`&&this.config.projectRoot!==this.workspaceConfig.workspaceRoot?(this.config.output.outputPath??=(0,I.joinPaths)(`dist`,this.config.projectRoot),this.config.output.buildPath??=(0,I.joinPaths)(this.config.projectRoot,`dist`)):(this.config.output.outputPath??=`dist`,this.config.output.buildPath??=`dist`),this.config.output.assets=(0,v.getUnique)(this.config.output.assets.map(e=>({glob:(0,w.isSetObject)(e)?e.glob:e,input:(0,p.isString)(e)||!e.input||e.input===`.`||e.input===`/`||e.input===`./`?this.workspaceConfig.workspaceRoot:(0,y.appendPath)(e.input,this.workspaceConfig.workspaceRoot),output:(0,y.appendPath)((0,w.isSetObject)(e)&&e.output?(0,I.joinPaths)(this.config.output.outputPath,(0,f.replacePath)(e.output,this.config.output.outputPath)):this.config.output.outputPath,this.workspaceConfig.workspaceRoot),ignore:(0,w.isSetObject)(e)&&e.ignore?(0,m.toArray)(e.ignore):void 0}))),this.config.plugins=(this.config.plugins??[]).filter(Boolean).reduce((e,t)=>(q(t)&&J(t,e.filter(e=>q(e)))||e.push(t),e),[]),this.config.tsconfig&&(this.config.tsconfig=U(this,this.config.tsconfig)),this.config.output.dts&&(this.config.output.dts=U(this,this.config.output.dts)),this.config.build.polyfill&&(this.config.build.polyfill=this.config.build.polyfill.map(e=>U(this,e))),this.config.output.assets&&(this.config.output.assets=this.config.output.assets.map(e=>({...e,glob:U(this,e.glob),ignore:e.ignore?e.ignore.map(e=>U(this,e)):void 0,input:U(this,e.input),output:U(this,e.output)}))),this.#s??=await Gt.create(this)}mergeUserConfig(e={},t=this.config.userConfig??{}){this.config.userConfig=(0,d.default)({entry:Array.isArray(e.entry)&&e.entry.length>0?e.entry:Array.isArray(t?.entry)&&t.entry.length>0?t.entry:[]},(0,ee.omit)(e??{},[`entry`]),(0,ee.omit)(t??{},[`entry`])),this.config.userConfig.output?.format&&(this.config.userConfig.output.format=(0,v.getUnique)((0,m.toArray)(this.config.userConfig.output?.format))),this.config.userConfig.plugins=(this.config.userConfig.plugins??[]).filter(Boolean).reduce((e,t)=>(q(t)&&J(t,e.filter(e=>q(e)))||e.push(t),e),[])}};const Zt=[`name`,`api`,`enforce`,`dedupe`,`dependsOn`,`applyToEnvironment`];function Qt(e,t){let n=e=>(0,p.isString)(e)?e:e.message,r=t.extendLog(e.name),i=async(e,n,...r)=>t.$$internal.api.callHook(e,{sequential:!0,result:`merge`,...n,environment:t},...r);return new Proxy({},{get(e,a){return a===`$$internal`?{...t.$$internal,environment:t,callHook:i}:a===`log`||a===`logger`?r:a===`error`?e=>{r(c.LogLevelLabel.ERROR,n(e))}:a===`warn`?e=>{r(c.LogLevelLabel.WARN,n(e))}:a===`info`?e=>{r(c.LogLevelLabel.INFO,n(e))}:a===`debug`?e=>{r(c.LogLevelLabel.DEBUG,n(e))}:a===`trace`?e=>{r(c.LogLevelLabel.TRACE,n(e))}:t[a]},set(e,n,i){return[`$$internal`,`environment`,`config`,`log`,`logger`,`error`,`warn`,`plugins`,`hooks`,`addPlugin`,`selectHooks`].includes(n)?(r(c.LogLevelLabel.WARN,`Cannot set read-only property "${String(n)}"`),!1):(t[n]=i,!0)}})}var $t=class e extends Xt{#e={};static async fromConfig(t,n){let r=new e(n,t);if(await r.init(),r.powerlinesPath=await(0,S.resolvePackage)(`powerlines`),!r.powerlinesPath)throw Error("Could not resolve `powerlines` package location.");return r}environment;plugins=[];get config(){return super.config}get hooks(){return this.#e}async addPlugin(e){let t=e;if(e.applyToEnvironment){let n=await Promise.resolve(e.applyToEnvironment(this.environment));if(!n||(0,le.isObject)(n)&&Object.keys(n).length===0)return;t=q(n)?n:e}let n=Qt(t,this);this.plugins.push({plugin:t,context:n}),this.#e=Object.keys(t).filter(e=>!Zt.includes(e)).reduce((e,r)=>{let i=r,a=t[i];if(!Et(a))return e;if(Ot(i))e[i]??=[],e[i].push({plugin:t,hook:Dt(a).bind(n)});else{if(e[i]??={},t.enforce)return e[i][`${t.enforce}Enforced`]??=[],kt(n,t,a,e[i][`${t.enforce}Enforced`]),e;if((0,C.isFunction)(a)||!a.order)return e[i].normal??=[],kt(n,t,a,e[i].normal),e;e[i][`${a.order}Ordered`]??=[],kt(n,t,a,e[i][`${a.order}Ordered`])}return e},this.hooks)}selectHooks(e,t){let n=[];if(this.hooks[e])if(Ot(e))n.push(...this.hooks[e].map(e=>{let t=this.plugins.find(t=>t.plugin.name===e.plugin.name);if(!t)throw Error(`Could not find plugin context for plugin "${e.plugin.name}".`);return{handle:e.handler,context:t.context}}));else{let r=this.hooks[e];t?.order?t?.order===`pre`?(n.push(...(r.preOrdered??[]).map(e=>{let t=this.plugins.find(t=>t.plugin.name===e.plugin.name);if(!t)throw Error(`Could not find plugin context for plugin "${e.plugin.name}".`);return{handle:e.handler,context:t.context}})),n.push(...(r.preEnforced??[]).map(e=>{let t=this.plugins.find(t=>t.plugin.name===e.plugin.name);if(!t)throw Error(`Could not find plugin context for plugin "${e.plugin.name}".`);return{handle:e.handler,context:t.context}}))):t?.order===`post`?(n.push(...(r.postOrdered??[]).map(e=>{let t=this.plugins.find(t=>t.plugin.name===e.plugin.name);if(!t)throw Error(`Could not find plugin context for plugin "${e.plugin.name}".`);return{handle:e.handler,context:t.context}})),n.push(...(r.postEnforced??[]).map(e=>{let t=this.plugins.find(t=>t.plugin.name===e.plugin.name);if(!t)throw Error(`Could not find plugin context for plugin "${e.plugin.name}".`);return{handle:e.handler,context:t.context}}))):n.push(...(r.normal??[]).map(e=>{let t=this.plugins.find(t=>t.plugin.name===e.plugin.name);if(!t)throw Error(`Could not find plugin context for plugin "${e.plugin.name}".`);return{handle:e.handler,context:t.context}})):(n.push(...this.selectHooks(e,{order:`pre`})),n.push(...this.selectHooks(e,{order:`normal`})),n.push(...this.selectHooks(e,{order:`post`})))}return n}constructor(e,t){super(t),this.resolvedConfig=e}},en=class e extends Xt{#e={};#t=[];#n;static async from(t,n){let r=new e(await ht(t,n.root));if(await r.withUserConfig(n),r.powerlinesPath=await(0,S.resolvePackage)(`powerlines`),!r.powerlinesPath)throw Error("Could not resolve `powerlines` package location.");return r}get $$internal(){return super.$$internal}set $$internal(e){super.$$internal=e;for(let e of Object.values(this.environments))e.$$internal=super.$$internal}get environments(){return this.#e}get log(){return this.#n||=this.createLog(`engine`),this.#n}get plugins(){return this.#t}constructor(e){super(e)}async init(e={}){await super.init(e),await Promise.all((0,m.toArray)(this.config.userConfig.environments&&Object.keys(this.config.userConfig.environments).length>0?Object.keys(this.config.userConfig.environments).map(e=>pt(e,this.config.userConfig)):mt(this.config.userConfig)).map(async e=>{this.#e[e.name]=await this.in(e)}))}async in(e){let t;t=this.environments[e.name]?this.environments[e.name]:await $t.fromConfig(this.workspaceConfig,this.config),(0,w.isSetObject)(this.config.inlineConfig)&&await t.withInlineConfig(this.config.inlineConfig),t.environment=e,t.plugins=[];for(let e of this.plugins)await t.addPlugin(e);return t}async withUserConfig(e,t={isHighPriority:!0}){await super.withUserConfig(e,t),await Promise.all(Object.keys(this.#e).map(async n=>{await this.#e[n].withUserConfig(e,t)}))}async withInlineConfig(e,t={isHighPriority:!0}){await super.withInlineConfig(e,t),await Promise.all(Object.keys(this.#e).map(async n=>{await this.#e[n].withInlineConfig(e,t)}))}async addPlugin(e){this.plugins.push(e),await Promise.all(Object.keys(this.environments).map(async t=>{await this.environments[t].addPlugin(e)}))}async getEnvironment(e){let t;if(e&&(t=this.environments[e]),Object.keys(this.environments).length===1&&(t=this.environments[Object.keys(this.environments)[0]],this.log(c.LogLevelLabel.DEBUG,`Applying the only configured environment: ${T.default.bold.cyanBright(t?.environment.name)}`)),!t){if(e)throw Error(`Environment "${e}" not found.`);t=await this.in(mt(this.config.userConfig)),this.log(c.LogLevelLabel.WARN,`No environment specified, and no default environment found. Using a temporary default environment: ${T.default.bold.cyanBright(t?.environment.name)}`)}return t}async getEnvironmentSafe(e){try{return await this.getEnvironment(e)}catch{return}}};function tn(e){return`
20
+ `),await e.fs.write(e.tsconfig.tsconfigFilePath,j.StormJSON.stringify(t)),e.tsconfig=K(e.workspaceConfig.workspaceRoot,e.config.projectRoot,e.config.tsconfig),!e.tsconfig)throw Error(`Failed to parse the TypeScript configuration file.`)}const ft=`default`;function pt(e,t){return(0,d.default)(t.environments?.[e]??{},{name:e,title:t.title||(0,N.titleCase)(t.name),ssr:!1,mainFields:t.build?.platform===`browser`?[`browser`,`module`,`jsnext:main`,`jsnext`]:[`module`,`jsnext:main`,`jsnext`],extensions:[`.mjs`,`.js`,`.mts`,`.ts`,`.jsx`,`.tsx`,`.json`],consumer:t.build?.platform===`browser`?`client`:`server`,preview:t.build?.platform===`browser`?{port:5173,open:!0,strictPort:!1,host:`localhost`,allowedHosts:[`.`],cors:!0,headers:{}}:void 0},t)}function mt(e){return pt(`default`,e)}async function ht(e,t){return(0,d.default)({workspaceRoot:e},await(0,he.getWorkspaceConfig)(!0,{cwd:t,workspaceRoot:e,useDefault:!0}))}async function gt(e,t,n,r,i=`production`,a,o=`powerlines`){let s={},c;if(a&&(c=(0,P.existsSync)((0,f.replacePath)(a,e))?(0,f.replacePath)(a,e):(0,P.existsSync)((0,u.joinPaths)((0,y.appendPath)(e,t),(0,f.replacePath)(a,e)))?(0,u.joinPaths)((0,y.appendPath)(e,t),(0,f.replacePath)(a,e)):(0,P.existsSync)((0,u.joinPaths)((0,y.appendPath)(e,t),a))?(0,u.joinPaths)((0,y.appendPath)(e,t),a):void 0),c||=(0,P.existsSync)((0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.${i}.config.ts`))?(0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.${i}.config.ts`):(0,P.existsSync)((0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.${i}.config.js`))?(0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.${i}.config.js`):(0,P.existsSync)((0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.${i}.config.mts`))?(0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.${i}.config.mts`):(0,P.existsSync)((0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.${i}.config.mjs`))?(0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.${i}.config.mjs`):(0,P.existsSync)((0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.config.ts`))?(0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.config.ts`):(0,P.existsSync)((0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.config.js`))?(0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.config.js`):(0,P.existsSync)((0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.config.mts`))?(0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.config.mts`):(0,P.existsSync)((0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.config.mjs`))?(0,u.joinPaths)((0,y.appendPath)(e,t),`${o}.config.mjs`):void 0,c){let e=await n.import(n.esmResolve(c));if(e){let t={};(0,C.isFunction)(e)&&(t=await Promise.resolve(e({command:r,mode:i,isSsrBuild:!1,isPreview:!1}))),(0,w.isSetObject)(t)&&(s={...t,config:t,configFile:c})}}let l=await(0,ge.loadConfig)({cwd:e,name:o,envName:i,globalRc:!0,packageJson:!0,dotenv:!0,jiti:n});return(0,d.default)(s,(0,w.isSetObject)(l?.config)?{...l.config,...l}:{})}function _t(e){return(0,d.default)(e,{interopDefault:!0,fsCache:e.mode===`development`?!1:(0,u.joinPaths)(e.cacheDir,`jiti`),moduleCache:e.mode!==`development`})}function vt(e){return(0,we.createJiti)((0,u.joinPaths)(e.workspaceRoot,e.projectRoot),_t({...e}))}function yt(e){let t=(0,we.createJiti)((0,u.joinPaths)(e.workspaceRoot,e.projectRoot),_t(e));return t.plugin=vt(e),t}const bt=[`new`,`clean`,`prepare`,`lint`,`test`,`build`,`docs`,`deploy`,`finalize`];function q(e){return(0,w.isSetObject)(e)&&`name`in e&&(0,b.isSetString)(e.name)&&((0,z.isUndefined)(e.applyToEnvironment)||`applyToEnvironment`in e&&(0,C.isFunction)(e.applyToEnvironment))&&((0,z.isUndefined)(e.dedupe)||`dedupe`in e&&(0,C.isFunction)(e.dedupe))&&((0,z.isUndefined)(e.dependsOn)||`dependsOn`in e&&Array.isArray(e.dependsOn)&&e.dependsOn.every(Ct))&&bt.every(t=>(0,z.isUndefined)(e[t])||t in e&&((0,C.isFunction)(e[t])||(0,w.isSetObject)(e[t])&&`handler`in e[t]&&(0,C.isFunction)(e[t].handler)))}function xt(e){return(0,w.isSetObject)(e)&&`plugin`in e&&(((0,b.isSetString)(e.plugin)||(0,C.isFunction)(e.plugin))&&`options`in e&&(0,w.isSetObject)(e.options)||q(e.plugin))}function St(e){return Array.isArray(e)&&(e.length===1||e.length===2)&&(((0,b.isSetString)(e[0])||(0,C.isFunction)(e[0]))&&e.length>1&&(0,w.isSetObject)(e[1])||q(e[0]))}function Ct(e){return(0,b.isSetString)(e)||(0,C.isFunction)(e)||q(e)||xt(e)||St(e)}function wt(e){return(0,C.isFunction)(e)||(0,w.isSetObject)(e)&&`handler`in e&&(0,C.isFunction)(e.handler)}function Tt(e){return(0,w.isSetObject)(e)&&`handler`in e&&(0,C.isFunction)(e.handler)}function Et(e){return wt(e)||Tt(e)}function Dt(e){return(0,C.isFunction)(e)?e:e.handler}function Ot(e){return e.startsWith(`vite:`)||e.startsWith(`esbuild:`)||e.startsWith(`rolldown:`)||e.startsWith(`rollup:`)||e.startsWith(`webpack:`)||e.startsWith(`rspack:`)||e.startsWith(`farm:`)}function J(e,t){return e.dedupe===!1||t.some(t=>t.dedupe!==!1&&((0,C.isFunction)(t.dedupe)&&t.dedupe(e)||t.name===e.name))}function kt(e,t,n,r){J(t,r.map(e=>e.plugin))||r.push((0,C.isFunction)(n)?{plugin:t,handler:Dt(n).bind(e)}:{plugin:t,...n,handler:Dt(n).bind(e)})}var At=class extends B.Struct{static _capnp={displayName:`KeyValuePair`,id:`eabb26cf58b2a14c`,size:new B.ObjectSize(0,2)};get key(){return B.utils.getText(0,this)}set key(e){B.utils.setText(0,e,this)}get value(){return B.utils.getText(1,this)}set value(e){B.utils.setText(1,e,this)}toString(){return`FileMetadata_KeyValuePair_`+super.toString()}},jt=class e extends B.Struct{static KeyValuePair=At;static _capnp={displayName:`FileMetadata`,id:`8e2cab5d7e28c7b3`,size:new B.ObjectSize(8,3),defaultType:`normal`};static _Properties;get id(){return B.utils.getText(0,this)}set id(e){B.utils.setText(0,e,this)}get type(){return B.utils.getText(1,this,e._capnp.defaultType)}set type(e){B.utils.setText(1,e,this)}get timestamp(){return B.utils.getUint32(0,this)}set timestamp(e){B.utils.setUint32(0,e,this)}_adoptProperties(e){B.utils.adopt(e,B.utils.getPointer(2,this))}_disownProperties(){return B.utils.disown(this.properties)}get properties(){return B.utils.getList(2,e._Properties,this)}_hasProperties(){return!B.utils.isNull(B.utils.getPointer(2,this))}_initProperties(t){return B.utils.initList(2,e._Properties,t,this)}set properties(e){B.utils.copyFrom(e,B.utils.getPointer(2,this))}toString(){return`FileMetadata_`+super.toString()}},Mt=class extends B.Struct{static _capnp={displayName:`FileId`,id:`990d6a471072f997`,size:new B.ObjectSize(0,2)};get id(){return B.utils.getText(0,this)}set id(e){B.utils.setText(0,e,this)}get path(){return B.utils.getText(1,this)}set path(e){B.utils.setText(1,e,this)}toString(){return`FileId_`+super.toString()}},Nt=class extends B.Struct{static _capnp={displayName:`FileStorage`,id:`9dca66ac858c9ebe`,size:new B.ObjectSize(0,2)};get path(){return B.utils.getText(0,this)}set path(e){B.utils.setText(0,e,this)}get code(){return B.utils.getText(1,this)}set code(e){B.utils.setText(1,e,this)}toString(){return`FileStorage_`+super.toString()}},Y=class e extends B.Struct{static _capnp={displayName:`FileSystem`,id:`ae0c23d43e56abcf`,size:new B.ObjectSize(0,3)};static _Ids;static _Storage;static _Metadata;_adoptIds(e){B.utils.adopt(e,B.utils.getPointer(0,this))}_disownIds(){return B.utils.disown(this.ids)}get ids(){return B.utils.getList(0,e._Ids,this)}_hasIds(){return!B.utils.isNull(B.utils.getPointer(0,this))}_initIds(t){return B.utils.initList(0,e._Ids,t,this)}set ids(e){B.utils.copyFrom(e,B.utils.getPointer(0,this))}_adoptStorage(e){B.utils.adopt(e,B.utils.getPointer(1,this))}_disownStorage(){return B.utils.disown(this.storage)}get storage(){return B.utils.getList(1,e._Storage,this)}_hasStorage(){return!B.utils.isNull(B.utils.getPointer(1,this))}_initStorage(t){return B.utils.initList(1,e._Storage,t,this)}set storage(e){B.utils.copyFrom(e,B.utils.getPointer(1,this))}_adoptMetadata(e){B.utils.adopt(e,B.utils.getPointer(2,this))}_disownMetadata(){return B.utils.disown(this.metadata)}get metadata(){return B.utils.getList(2,e._Metadata,this)}_hasMetadata(){return!B.utils.isNull(B.utils.getPointer(2,this))}_initMetadata(t){return B.utils.initList(2,e._Metadata,t,this)}set metadata(e){B.utils.copyFrom(e,B.utils.getPointer(2,this))}toString(){return`FileSystem_`+super.toString()}};jt._Properties=B.CompositeList(At),Y._Ids=B.CompositeList(Mt),Y._Storage=B.CompositeList(Nt),Y._Metadata=B.CompositeList(jt);let Pt=function(e){return e.VIRTUAL=`virtual`,e.FS=`fs`,e}({});const Ft=(e,t={})=>{let n=t.logLevel===null?c.LogLevelLabel.SILENT:t.logLevel||c.LogLevelLabel.INFO;return n===c.LogLevelLabel.SILENT?je.noop:t.customLogger?t.customLogger:(r,...i)=>(0,ke.getLogFn)((0,ke.getLogLevel)(r),{...t,logLevel:n})(`${T.default.bold.hex((0,Ae.getColor)(`brand`,t))(`powerlines${e?`:${e}`:``}${t.name?` ${T.default.gray(`> `)}${t.name}`:``} ${T.default.gray(`> `)}`)}${i.join(` `)} `.trim())},It=[`#00A0DD`,`#6FCE4E`,`#FBBF24`,`#F43F5E`,`#3B82F6`,`#A855F7`,`#469592`,`#288EDF`,`#10B981`,`#EF4444`,`#F0EC56`,`#F472B6`,`#22D3EE`,`#EAB308`,`#84CC16`,`#F87171`,`#0EA5E9`,`#D946EF`,`#FACC15`,`#34D399`],Lt=(e,t)=>(n,...r)=>e(n,` ${T.default.inverse.hex(It[t.split(``).map(e=>e.charCodeAt(0)).reduce((e,t)=>e+t,0)%It.length]||It[0])(` ${(0,N.titleCase)(t)} `)} ${r.join(` `)} `);function Rt(e){return(0,se.isError)(e)&&`code`in e&&e.code}function X(e){return Rt(e)&&(e.code===`ENOENT`||e.code===`EISDIR`?null:e)}function Z(e){return(0,Me.correctPath)((0,Ne.slash)(e?.toString()||`.`).replace(/^file:\/\//,``))}function zt(e,t=`powerlines`){return e.replace(/^\\0/,``).startsWith(`${t.replace(/:$/,``)}`)}function Bt(e,t=`powerlines`){return`${t.replace(/:$/,``)}:${Z(e).replace(RegExp(`^${t.replace(/:$/,``)}:`),``).replace(/^\\0/,``).replace((0,M.findFileDotExtensionSafe)(Z(e)),``)}`}function Vt(e,t,n=`powerlines`){return(0,F.isAbsolutePath)(e)?e:zt(Z(e),n)?Bt(Z(e),n).replace(RegExp(`^${n.replace(/:$/,``)}:`),t):Z(e)}function Ht(e,t){return(0,v.getUnique)((0,m.toArray)(t).map(t=>(0,w.isSetObject)(t)&&((0,b.isSetString)(t.input)||(0,b.isSetString)(t.glob))?(0,I.joinPaths)(t.input||e,t.glob||`**/*`):(0,b.isSetString)(t)?t:void 0).filter(b.isSetString))}var Ut=class{#e=!1;options;constructor(e={base:`/`}){this.options=e,this.options.base=(0,Re.resolve)(e.base),this.options.isReadOnly=!!e.isReadOnly}async exists(e){return this.existsSync(e)}async get(e){return this.getSync(e)}async set(e,t){this.options.isReadOnly||this.setSync(e,t)}mkdirSync(e){}async mkdir(e){return Promise.resolve(this.mkdirSync(e))}async remove(e){this.options.isReadOnly||this.removeSync(e)}clearSync(e){if(!this.options.isReadOnly){let t=this.listSync(e||this.options.base);if(!t.length)return;t.map(t=>this.removeSync(e&&!t.startsWith(e)?(0,I.joinPaths)(e,t):t))}}async clear(e){if(!this.options.isReadOnly){let t=await this.list(e||this.options.base);if(!t.length)return;await Promise.all(t.map(async t=>this.remove(e&&!t.startsWith(e)?(0,I.joinPaths)(e,t):t)))}}async list(e){return this.listSync(e)}isDirectorySync(e){return!1}async isDirectory(e){return Promise.resolve(this.isDirectorySync(e))}isFileSync(e){return this.existsSync(e)&&!this.isDirectorySync(e)}async isFile(e){return Promise.resolve(this.isFileSync(e))}dispose(){return Promise.resolve()}async[Symbol.asyncDispose](){return this._dispose()}resolve(e=this.options.base){if(/\.\.:|\.\.$/.test(e))throw Error(`[${this.name}]: Invalid key: ${JSON.stringify(e)} provided to storage adapter.`);return(0,y.appendPath)((0,Me.correctPath)(e).replace(/:/g,`/`),this.options.base)}async _dispose(){this.#e||=(await Promise.resolve(this.dispose()),!0)}},Wt=class extends Ut{name=`file-system`;constructor(e){super(e)}existsSync(e){return(0,P.existsSync)(this.resolve(e))}async exists(e){return(0,P.exists)(this.resolve(e))}getSync(e){return(0,Pe.readFileSync)(this.resolve(e))}async get(e){return(0,Pe.readFile)(this.resolve(e))}setSync(e,t){if(!this.options.isReadOnly)return(0,Fe.writeFileSync)(this.resolve(e),t)}async set(e,t){if(!this.options.isReadOnly)return(0,Fe.writeFile)(this.resolve(e),t)}removeSync(e){if(!this.options.isReadOnly)try{return(0,Ie.unlinkSync)(this.resolve(e))}catch(e){return X(e)}}async remove(e){if(!this.options.isReadOnly)return(0,Le.unlink)(this.resolve(e)).catch(X)}mkdirSync(e){(0,x.createDirectorySync)(this.resolve(e))}async mkdir(e){await(0,x.createDirectory)(this.resolve(e))}listSync(e){try{return(0,g.listFilesSync)(this.resolve(e),{ignore:this.options.ignore})}catch(e){return X(e)??[]}}async list(e){return(0,g.listFiles)(this.resolve(e),{ignore:this.options.ignore}).catch(X).then(e=>e||[])}isDirectorySync(e){return(0,h.isDirectory)(this.resolve(e))}isFileSync(e){return!(0,h.isFile)(this.resolve(e))}},Q=class extends Ut{name=`virtual`;data=new Map;constructor(e){super(e)}existsSync(e){return this.data.has(this.resolve(e))}getSync(e){return this.data.get(this.resolve(e))??null}setSync(e,t){this.options.isReadOnly||this.data.set(this.resolve(e),t)}removeSync(e){this.options.isReadOnly||this.data.delete(this.resolve(e))}listSync(e){return[...this.data.keys().filter(t=>e?(0,V.isParentPath)(t,this.resolve(e)):!0)]}async dispose(){return this.clear()}},Gt=class e{#e;#t;#n;#r={"":new Wt};#i;#a=!1;#o;#s;#c(e){let t=e;return(0,V.isParentPath)(t,this.#o.builtinsPath)&&(t=(0,f.replacePath)(t,this.#o.builtinsPath)),Bt(t,this.#o.config.output.builtinPrefix)}#l(e){return Vt(e.includes(`{`)||e.includes(`}`)?U(this.#o,e):e,this.#o.builtinsPath,this.#o.config.output.builtinPrefix)}#u(e){let t=`::GLOBSTAR::`;return RegExp(`^${this.#l(e).replace(/\*\*/g,t).replace(/[.+^${}()|[\]\\]/g,`\\$&`).replace(/\*/g,`[^/]*`).replace(/\?/g,`[^/]`).replace(new RegExp(t,`g`),`.*`)}$`)}#d(e){let t=this.resolveSync(this.#l(e))||e;for(let e of Object.keys(this.#r).filter(Boolean).sort().reverse())if((0,V.isParentPath)(t,e))return{base:e,relativeKey:(0,f.replacePath)(t,e),adapter:this.#r[e]};return{base:``,relativeKey:t,adapter:this.#r[``]}}#f(e=``,t=!1){return Object.keys(this.#r).sort().reverse().filter(n=>(0,V.isParentPath)(n,e)||t&&(0,V.isParentPath)(e,n)).map(t=>({relativeBase:e.length>t.length?e.slice(t.length):void 0,base:t,adapter:this.#r[t]}))}static async create(t){if(!t.config.skipCache&&(0,P.existsSync)((0,u.joinPaths)(t.dataPath,`fs.bin`))){let n=await(0,Te.readFileBuffer)((0,u.joinPaths)(t.dataPath,`fs.bin`)),r=new B.Message(n,!1).getRoot(Y),i=new e(t,r);r._hasStorage()&&r.storage.length>0&&await Promise.all(r.storage.values().map(async e=>{await i.write(e.path,e.code)}))}return new e(t,new B.Message().initRoot(Y))}static createSync(t){if(!t.config.skipCache&&(0,P.existsSync)((0,u.joinPaths)(t.dataPath,`fs.bin`))){let n=(0,Te.readFileBufferSync)((0,u.joinPaths)(t.dataPath,`fs.bin`)),r=new B.Message(n,!1).getRoot(Y),i=new e(t,r);r._hasStorage()&&r.storage.length>0&&r.storage.values().map(e=>{i.writeSync(e.path,e.code)})}return new e(t,new B.Message().initRoot(Y))}get metadata(){return new Proxy(this.#e,{get:(e,t)=>e[this.#c(t)]})}get ids(){return new Proxy(this.#n,{get:(e,t)=>e[this.#l(t)]})}get paths(){return new Proxy(this.#n,{get:(e,t)=>e[this.#c(t)]})}get resolverCache(){return this.#i||=(0,Se.create)({cacheId:`module-resolution`,cacheDir:this.#o.cachePath,ttl:3600*1e3,lruSize:5e3,persistInterval:100}),this.#i}constructor(e,t){this.#o=e,(0,w.isSetObject)(this.#o.config.output.storage)&&(this.#r={...this.#r,...this.#o.config.output.storage}),this.#r.virtual??=new Q({base:`/_virtual`}),this.#o.config.output.storage!==Pt.FS&&(this.#r[this.#o.artifactsPath]??=new Q({base:this.#o.artifactsPath}),this.#r[this.#o.builtinsPath]??=new Q({base:this.#o.builtinsPath}),this.#r[this.#o.entryPath]??=new Q({base:this.#o.entryPath})),this.#e={},t._hasMetadata()&&(this.#e=t.metadata.values().reduce((e,t)=>(e[t.id]={id:t.id,type:t.type,timestamp:t.timestamp||Date.now(),properties:t._hasProperties()?t.properties.values().reduce((e,t)=>(e[t.key]=t.value,e),{}):{}},e),{})),this.#t={},this.#n={},t._hasIds()&&(this.#t=t.ids.values().reduce((e,t)=>(e[t.path]??=t.id,e),{}),this.#n=t.ids.values().reduce((e,t)=>(e[t.id]??=t.path,e),{})),this.#s=Lt(this.#o.log,`file-system`)}async exists(e){let{relativeKey:t,adapter:n}=this.#d(e);return n.exists(t)}existsSync(e){let{relativeKey:t,adapter:n}=this.#d(e);return n.existsSync(t)}isVirtual(e){let t=this.resolveSync(e);return t?this.#d(t)?.adapter?.name===`virtual`:!1}isDirectorySync(e){let t=this.resolveSync(e);return t?!!(this.existsSync(t)&&this.#d(t)?.adapter?.isDirectorySync(t)):!1}async isDirectory(e){let t=await this.resolve(e);return t?!!(await this.exists(t)&&await this.#d(t)?.adapter?.isDirectory(t)):!1}isFileSync(e){let t=this.resolveSync(e);return t?this.#d(t)?.adapter?.isFileSync(t)??!1:!1}async isFile(e){let t=await this.resolve(e);return t?await this.#d(t)?.adapter?.isFile(t)??!1:!1}listSync(e){return(0,v.getUnique)(this.#f(e,!0).map(e=>e.adapter.listSync(e.relativeBase?e.base?(0,y.appendPath)(e.relativeBase,e.base):e.relativeBase:e.base)).flat())}async list(e){return(0,v.getUnique)((await Promise.all(this.#f(e,!0).map(async e=>e.adapter.list(e.relativeBase?e.base?(0,y.appendPath)(e.relativeBase,e.base):e.relativeBase:e.base)))).flat())}async remove(e){let t=this.#l(e);this.#s(c.LogLevelLabel.TRACE,`Removing file: ${t}`);let{relativeKey:n,adapter:r}=this.#d(t);(0,M.hasFileExtension)(t)?await r.remove(n):await r.clear(n);let i=this.#t[t];i&&this.#e[i]&&(delete this.#e[i],delete this.#t[t],delete this.#n[i])}removeSync(e){let t=this.#l(e);this.#s(c.LogLevelLabel.TRACE,`Removing file: ${t}`);let{relativeKey:n,adapter:r}=this.#d(t);(0,M.hasFileExtension)(t)?r.removeSync(n):r.clearSync(n);let i=this.#t[t];i&&this.#e[i]&&(delete this.#e[i],delete this.#t[t],delete this.#n[i])}async glob(e){let t=[];for(let n of Ht(this.#o.workspaceConfig.workspaceRoot,e)){let e=this.#l(n);if(!/[*?[\]{}]/.test(e)&&!e.includes(`**`)){if(this.isDirectorySync(e))t.push(...await this.list(e));else{let n=await this.resolve(e);n&&!t.includes(n)&&t.push(n)}continue}let r=(0,F.isAbsolutePath)(e)?e:this.#l((0,u.joinPaths)(this.#o.workspaceConfig.workspaceRoot,e)),i=r.search(/[*?[\]{}]/),a=i===-1?(0,M.findFilePath)(r):r.slice(0,Math.max(0,r.lastIndexOf(`/`,i)));await Promise.all((await this.list(a&&(0,F.isAbsolutePath)(a)?a:this.#o.workspaceConfig.workspaceRoot)).map(async e=>{if(this.#u(r).test(e)){let n=this.resolveSync(e);n&&!t.includes(n)&&t.push(n)}}))}return t}globSync(e){let t=[];for(let n of Ht(this.#o.workspaceConfig.workspaceRoot,e)){let e=this.#l(n);if(!/[*?[\]{}]/.test(e)&&!e.includes(`**`)){if(this.isDirectorySync(e))t.push(...this.listSync(e));else{let n=this.resolveSync(e);n&&!t.includes(n)&&t.push(n)}continue}let r=(0,F.isAbsolutePath)(e)?e:this.#l((0,u.joinPaths)(this.#o.workspaceConfig.workspaceRoot,e)),i=r.search(/[*?[\]{}]/),a=i===-1?(0,M.findFilePath)(r):r.slice(0,Math.max(0,r.lastIndexOf(`/`,i))),o=this.listSync(a&&(0,F.isAbsolutePath)(a)?a:this.#o.workspaceConfig.workspaceRoot);for(let e of o)if(this.#u(r).test(e)){let n=this.resolveSync(e);n&&!t.includes(n)&&t.push(n)}}return t}async copy(e,t){let n=e instanceof URL?(0,H.fileURLToPath)(e):e,r=t instanceof URL?(0,H.fileURLToPath)(t):t;if(!(0,b.isSetString)(n)&&(!(0,w.isSetObject)(n)||!(0,b.isSetString)(n.input))||!(0,b.isSetString)(r))return;let i=(0,p.isString)(n)?n:n.input?n.input:this.#o.workspaceConfig.workspaceRoot,a=await this.resolve(i);if(a)if(this.isDirectorySync(a)||(0,b.isSetString)(n)&&n.includes(`*`)||(0,w.isSetObject)(n)&&(0,b.isSetString)(n.glob))await Promise.all((await this.glob(n)).map(async e=>this.copy(e,(0,y.appendPath)((0,f.replacePath)(e,i),r))));else{let e=await this.read(a);e!==void 0&&await this.write(this.#l(r),e,{skipFormat:!0})}}copySync(e,t){let n=e instanceof URL?(0,H.fileURLToPath)(e):e,r=t instanceof URL?(0,H.fileURLToPath)(t):t;if(!(0,b.isSetString)(n)&&(!(0,w.isSetObject)(n)||!(0,b.isSetString)(n.input))||!(0,b.isSetString)(r))return;let i=(0,p.isString)(n)?n:n.input?n.input:this.#o.workspaceConfig.workspaceRoot,a=this.resolveSync(i);if(a)if(this.isDirectorySync(a)||(0,b.isSetString)(n)&&n.includes(`*`)||(0,w.isSetObject)(n)&&(0,b.isSetString)(n.glob))this.globSync(n).map(e=>this.copySync(e,(0,y.appendPath)((0,M.findFilePath)((0,f.replacePath)(e,i)),r)));else{let e=this.readSync(a);e!==void 0&&this.writeSync(this.#l((0,M.hasFileExtension)(r)?r:(0,y.appendPath)((0,M.findFileName)(a),r)),e,{skipFormat:!0})}}async move(e,t){(0,M.hasFileExtension)(e)?(await this.copy(e,t),await this.remove(e)):await Promise.all((await this.list(e)).map(async e=>{await this.copy(e,t),await this.remove(e)}))}moveSync(e,t){(0,M.hasFileExtension)(e)?(this.copySync(e,t),this.removeSync(e)):this.listSync(e).forEach(e=>{this.copySync(e,t),this.removeSync(e)})}async read(e){let t=await this.resolve(e);if(!t)return;let{relativeKey:n,adapter:r}=this.#d(t);return this.#s(c.LogLevelLabel.TRACE,`Reading ${r.name} file: ${t}`),await r.get(n)??void 0}readSync(e){let t=this.resolveSync(e);if(!t)return;let{relativeKey:n,adapter:r}=this.#d(t);return this.#s(c.LogLevelLabel.TRACE,`Reading ${r.name} file: ${t}`),r.getSync(n)??void 0}async write(e,t=``,n={}){let r=t;if(!n.skipFormat){let n=await(0,Oe.resolveConfig)(this.#l(e));n&&(r=await(0,Oe.format)(t,{absolutePath:this.#l(e),...n}))}let{relativeKey:i,adapter:a}=this.#d(e);this.#s(c.LogLevelLabel.TRACE,`Writing ${this.#l(i)} to ${a.name===`virtual`?`the virtual file system`:a.name===`file-system`?`the local file system`:a.name} (size: ${(0,Ee.prettyBytes)(new De.Blob((0,m.toArray)(r)).size)})`);let o=n?.meta?.id||this.#c(i);return this.#e[o]={variant:`normal`,timestamp:Date.now(),...n.meta??{}},this.#n[o]=this.#l(i),this.#t[this.#l(i)]=o,a.set(i,r)}writeSync(e,t=``,n={}){let{relativeKey:r,adapter:i}=this.#d(e);this.#s(c.LogLevelLabel.TRACE,`Writing ${this.#l(r)} file to ${i.name===`virtual`?`the virtual file system`:i.name===`file-system`?`the local file system`:i.name} (size: ${(0,Ee.prettyBytes)(new De.Blob((0,m.toArray)(t)).size)})`);let a=n?.meta?.id||this.#c(r);return this.#e[a]={variant:`normal`,timestamp:Date.now(),...n.meta??{}},this.#n[a]=this.#l(r),this.#t[this.#l(r)]=a,i.setSync(r,t)}mkdirSync(e){return this.#d(e)?.adapter?.mkdirSync(e)}async mkdir(e){return this.#d(e)?.adapter?.mkdir(e)}getMetadata(e){let t=this.resolveSync(e);if(t&&this.metadata[t])return this.metadata[t]}async resolve(e,t,n={}){let r=e;if((r.includes(`{`)||r.includes(`}`))&&(r=U(this.#o,r)),(0,F.isAbsolutePath)(r))return r;let i=(0,_.murmurhash)({path:this.#c(r),importer:t,options:n}),a;if(!this.#o.config.skipCache&&(a=this.resolverCache.get(i),a))return a;if(a=this.paths[this.#c(r)],!a){let e=n.paths??[];t&&!e.includes(t)&&e.push(t),e.push(this.#o.workspaceConfig.workspaceRoot),e.push((0,y.appendPath)(this.#o.config.projectRoot,this.#o.workspaceConfig.workspaceRoot)),e.push((0,y.appendPath)(this.#o.config.sourceRoot,this.#o.workspaceConfig.workspaceRoot)),e.push(...Object.keys(this.#o.tsconfig?.options?.paths??{}).filter(e=>r.startsWith(e.replace(/\*$/,``))).map(e=>this.#o.tsconfig?.options?.paths?.[e]).flat().filter(Boolean).map(e=>(0,y.appendPath)(e,this.#o.workspaceConfig.workspaceRoot)));for(let t of(0,S.getResolutionCombinations)(r,{paths:e})){let{relativeKey:e,adapter:n}=this.#d(t);if(await n.exists(e)){a=t;break}}if(!a)try{a=await(0,S.resolve)(r,{...n,paths:e})}catch{}}return a&&!this.#o.config.skipCache&&this.resolverCache.set(i,a),a}resolveSync(e,t,n={}){let r=e;if((r.includes(`{`)||r.includes(`}`))&&(r=U(this.#o,r)),(0,F.isAbsolutePath)(r))return r;let i;if(!this.#o.config.skipCache&&(i=this.resolverCache.get(this.#c(r)),i))return i;if(i=this.paths[this.#c(r)],!i){let e=n.paths??[];t&&!e.includes(t)&&e.push(t),e.push(this.#o.workspaceConfig.workspaceRoot),e.push((0,y.appendPath)(this.#o.config.projectRoot,this.#o.workspaceConfig.workspaceRoot)),e.push((0,y.appendPath)(this.#o.config.sourceRoot,this.#o.workspaceConfig.workspaceRoot)),e.push(...Object.keys(this.#o.tsconfig?.options?.paths??{}).filter(e=>r.startsWith(e.replace(/\*$/,``))).map(e=>this.#o.tsconfig?.options?.paths?.[e]).flat().filter(Boolean).map(e=>(0,y.appendPath)(e,this.#o.workspaceConfig.workspaceRoot)));for(let t of(0,S.getResolutionCombinations)(r,{paths:e})){let{relativeKey:e,adapter:n}=this.#d(t);if(n.existsSync(e)){i=t;break}}if(!i)try{i=(0,S.resolveSync)(r,{...n,paths:e})}catch{}}return i&&!this.#o.config.skipCache&&this.resolverCache.set(this.#c(r),i),i}async dispose(){if(!this.#a){this.#a=!0,this.#s(c.LogLevelLabel.DEBUG,`Disposing virtual file system...`),await this.remove((0,u.joinPaths)(this.#o.dataPath,`fs.bin`));let e=new B.Message,t=e.initRoot(Y),n=await this.list(),r=t._initStorage(n.length);await Promise.all(n.map(async(e,t)=>{let n=await this.read(e),i=r.get(t);i.path=e,i.code=n||``}));let i=t._initIds(Object.keys(this.ids).length);Object.entries(this.ids).filter(([,e])=>e).forEach(([e,t],n)=>{let r=i.get(n);r.id=e,r.path=t});let a=t._initMetadata(Object.keys(this.metadata).length);Object.entries(this.metadata).filter(([,e])=>e).forEach(([e,t],n)=>{let r=a.get(n);if(r.id=e,r.type=t.type,r.timestamp=t.timestamp??BigInt(Date.now()),t.properties){let e=r._initProperties(Object.keys(t.properties).length);Object.entries(t.properties).forEach(([t,n],r)=>{let i=e.get(r);i.key=t,i.value=n})}}),await(0,Te.writeFileBuffer)((0,u.joinPaths)(this.#o.dataPath,`fs.bin`),e.toArrayBuffer()),this.#o.config.skipCache||this.#i.save(!0),await Promise.all(this.#f().map(async e=>e.adapter.dispose())),this.#s(c.LogLevelLabel.TRACE,`Virtual file system has been disposed.`)}}async[Symbol.asyncDispose](){return this.dispose()}};const Kt=45,qt=62;function Jt(e,t){let n=`${(0,ze.kebabCase)(e)}_${t}`;return n.length>45?n.slice(0,45):n}async function Yt(e){let t=(0,u.joinPaths)(e.dataPath,`meta.json`);e.log(c.LogLevelLabel.DEBUG,`Writing runtime metadata to ${t}`),await e.fs.write(t,JSON.stringify(e.meta,null,2))}const $=new WeakMap;(0,R.setGlobalDispatcher)(new R.Agent({keepAliveTimeout:1e4}).compose(R.interceptors.retry({maxRetries:3,minTimeout:1e3,maxTimeout:1e4,timeoutFactor:2,retryAfter:!0})));var Xt=class e{#e={};#t;#n=null;#r=(0,xe.uuid)();#i=(0,xe.uuid)();#a=Date.now();#o;#s;#c;#l;#u;#d;#f(e={}){return{variant:e.build?.variant,projectType:e.type,projectRoot:e.root,name:e.name,title:e.title,description:e.description,sourceRoot:e.sourceRoot,configFile:e.configFile,customLogger:e.customLogger,logLevel:e.logLevel,tsconfig:e.tsconfig,tsconfigRaw:e.tsconfigRaw,skipCache:e.skipCache,skipInstalls:e.skipInstalls,entry:e.entry,output:e.output,plugins:e.plugins,mode:e.mode,lint:e.lint,transform:e.transform,build:e.build,framework:e.framework,...e}}static async from(t,n){let r=new e(await ht(t,n.root));if(await r.withUserConfig(n),r.powerlinesPath=await(0,S.resolvePackage)(`powerlines`),!r.powerlinesPath)throw Error("Could not resolve `powerlines` package location.");return r}dependencies={};devDependencies={};persistedMeta=void 0;powerlinesPath;packageJson;projectJson=void 0;resolver;resolvePatterns=[];get $$internal(){return this.#e}set $$internal(e){this.#e=e}get entry(){return We(this,(0,m.toArray)(this.config.entry))}get tsconfig(){return this.#c||(this.tsconfig={tsconfigFilePath:this.config.tsconfig}),this.#c}set tsconfig(e){this.#c=e,this.resolvePatterns=(0,L.tsconfigPathsToRegExp)(e?.options?.paths??{})}get fs(){return this.#s||=Gt.createSync(this),this.#s}get checksum(){return this.#n}get meta(){return{buildId:this.#r,releaseId:this.#i,checksum:this.#n,timestamp:this.#a,projectRootHash:(0,_.murmurhash)({workspaceRoot:this.workspaceConfig?.workspaceRoot,projectRoot:this.config?.projectRoot},{maxLength:45}),configHash:(0,_.murmurhash)(this.config,{maxLength:62})}}get config(){return this.resolvedConfig??{}}get log(){return this.logFn||=this.createLog(),this.logFn}get workspaceConfig(){return this.#t}get envPaths(){return this.#o||=(0,_e.getEnvPaths)({orgId:`storm-software`,appId:`powerlines`,workspaceRoot:this.workspaceConfig.workspaceRoot}),this.#o}get artifactsPath(){return(0,I.joinPaths)(this.workspaceConfig.workspaceRoot,this.config.projectRoot,this.config.output.artifactsPath)}get builtinsPath(){return(0,I.joinPaths)(this.artifactsPath,`builtins`)}get entryPath(){return(0,I.joinPaths)(this.artifactsPath,`entry`)}get dataPath(){return(0,I.joinPaths)(this.envPaths.data,`projects`,Jt(this.config.name,this.meta.projectRootHash))}get cachePath(){return(0,I.joinPaths)(this.envPaths.cache,`projects`,(0,_.murmurhash)({checksum:this.#n,config:this.meta.configHash},{maxLength:62}))}get dtsPath(){return this.config.output.dts?(0,y.appendPath)(this.config.output.dts,this.workspaceConfig.workspaceRoot):(0,I.joinPaths)(this.workspaceConfig.workspaceRoot,this.config.projectRoot,`powerlines.d.ts`)}get relativeToWorkspaceRoot(){return(0,ne.relativeToWorkspaceRoot)(this.config.projectRoot)}get builtins(){return Object.values(this.fs.metadata).filter(e=>e&&e.type===`builtin`).map(e=>e?.id).filter(Boolean)}get program(){return this.#l||=Qe(this,{skipAddingFilesFromTsConfig:!0}),this.#l}get parserCache(){return this.#u||=(0,Se.create)({cacheId:`parser`,cacheDir:this.cachePath,ttl:7200*1e3,lruSize:5e3,persistInterval:250}),this.#u}get requestCache(){return this.#d||=(0,Se.create)({cacheId:`http`,cacheDir:this.cachePath,ttl:300*1e3,lruSize:5e3,persistInterval:250}),this.#d}async fetch(e,t={}){let n=(0,_.murmurhash)({input:e.toString(),options:JSON.stringify(t)});if(!this.config.skipCache&&!t.skipCache){let e=this.requestCache.get(n);if(e)return new R.Response(e.body,{status:e.status,statusText:e.statusText,headers:e.headers})}let r=await(0,ye.fetchRequest)(e,{timeout:12e3,...t}),i={body:await r.text(),status:r.status,statusText:r.statusText,headers:Object.fromEntries(r.headers.entries())};if(!this.config.skipCache&&!t.skipCache)try{this.requestCache.set(n,i)}catch{}return new R.Response(i.body,{status:i.status,statusText:i.statusText,headers:i.headers})}async parse(e,t={}){let n=(0,_.murmurhash)({code:e,options:t}),r;return!this.config.skipCache&&(r=this.parserCache.get(n),r)?r:(r=await(0,Ce.parse)(`source.${t.lang||`ts`}`,e,{...t,sourceType:`module`,showSemanticErrors:this.config.mode===`development`}),this.config.skipCache||this.parserCache.set(n,r),r)}async resolve(e,t,n={}){let r=e;if(this.config.build.alias)if(Array.isArray(this.config.build.alias)){let e=this.config.build.alias.find(e=>(0,L.match)(r,[e.find]));e&&(r=e.replacement)}else (0,w.isSetObject)(this.config.build.alias)&&this.config.build.alias[e]&&(r=this.config.build.alias[e]);if(this.fs.isVirtual(r)){let e=await this.fs.resolve(r,t,{conditions:this.config.build.conditions,extensions:this.config.build.extensions,...n});return e?{id:`\0${e}`,external:this.config.projectType!==`application`}:void 0}if(this.config.build.skipNodeModulesBundle){if((0,L.match)(r,this.resolvePatterns)||(0,L.match)(r,this.config.build.noExternal))return;if((0,L.match)(r,this.config.build.external)||r.startsWith(`node:`)||!/^[A-Z]:[/\\]|^\.{0,2}\/|^\.{1,2}$/.test(r))return{id:r,external:!0}}else{if((0,L.match)(r,this.config.build.noExternal))return;if((0,L.match)(r,this.config.build.external)||r.startsWith(`node:`))return{id:r,external:!0}}}async load(e){let t=await this.fs.resolve(e);if(!t)return;let n=await this.fs.read(t);if(n)return{code:n,map:null}}async getBuiltins(){return Promise.all(Object.entries(this.fs.metadata).filter(([,e])=>e&&e.type===`builtin`).map(async([e,t])=>{let n=await this.fs.read(e);return{...t,path:e,code:n}}))}async emitEntry(e,t,n={}){return this.fs.write((0,F.isAbsolute)(t)?t:(0,y.appendPath)(t,this.entryPath),e,(0,d.default)(n,{type:`entry`}))}async emitBuiltin(e,t,n,r={}){return this.fs.write(n?(0,F.isAbsolute)(n)?n:(0,I.joinPaths)(this.builtinsPath,n):(0,y.appendPath)(t,this.builtinsPath),e,(0,d.default)(r,{type:`builtin`}))}async withUserConfig(e,t={isHighPriority:!0}){this.mergeUserConfig(e),await this.init(this.config.userConfig,t)}async withInlineConfig(e,t={isHighPriority:!0}){if(this.config.inlineConfig=e,e.command===`new`){let e=(0,I.joinPaths)(this.workspaceConfig.workspaceRoot,`package.json`);if(!(0,P.existsSync)(e))throw Error(`The workspace package.json file could not be found at ${e}`);this.packageJson=await(0,A.readJsonFile)(e),this.workspaceConfig.repository??=(0,b.isSetString)(this.packageJson?.repository)?this.packageJson.repository:this.packageJson?.repository?.url}await this.init(this.config.inlineConfig,t)}fatal(e){this.log(c.LogLevelLabel.FATAL,(0,p.isString)(e)?e:j.StormJSON.stringify(e))}error(e){this.log(c.LogLevelLabel.ERROR,(0,p.isString)(e)?e:j.StormJSON.stringify(e))}warn(e){this.log(c.LogLevelLabel.WARN,(0,p.isString)(e)?e:j.StormJSON.stringify(e))}info(e){this.log(c.LogLevelLabel.INFO,(0,p.isString)(e)?e:j.StormJSON.stringify(e))}debug(e){this.log(c.LogLevelLabel.DEBUG,(0,p.isString)(e)?e:j.StormJSON.stringify(e))}trace(e){this.log(c.LogLevelLabel.TRACE,(0,p.isString)(e)?e:j.StormJSON.stringify(e))}createLog(e=null){return Ft(e,{...this.config,logLevel:(0,be.isNull)(this.config.logLevel)?`silent`:this.config.logLevel})}extendLog(e){return Lt(this.log,e)}async generateChecksum(e=this.config.projectRoot){return this.#n=await(0,ve.hashDirectory)(e,{ignore:[`node_modules`,`.git`,`.nx`,`.cache`,`.storm`,`tmp`,`dist`]}),this.#n}constructor(e){this.#t=e,this.#o=(0,_e.getEnvPaths)({orgId:`storm-software`,appId:`powerlines`,workspaceRoot:e.workspaceRoot})}resolvedConfig={};logFn;async init(e={},t={isHighPriority:!0}){let n={projectRoot:e.root??this.config.projectRoot??this.config.userConfig?.root??this.config.inlineConfig?.root,mode:(e.mode??this.config.mode)||this.workspaceConfig.mode,skipCache:e.skipCache??this.config.skipCache??!1,configFile:e.configFile??this.config.configFile,framework:e.framework??this.config.framework??`powerlines`,command:this.config.inlineConfig?.command};if($.has(n)){let e=$.get(n);this.projectJson=e.projectJson,this.packageJson=e.packageJson,this.#n=e.checksum,this.resolver=e.resolver,this.mergeUserConfig(e.userConfig.config,this.config.userConfig)}else{let t=(0,I.joinPaths)(n.projectRoot,`project.json`);(0,P.existsSync)(t)&&(this.projectJson=await(0,A.readJsonFile)(t));let r=(0,I.joinPaths)(n.projectRoot,`package.json`);(0,P.existsSync)(r)&&(this.packageJson=await(0,A.readJsonFile)(r)),this.#n=await this.generateChecksum(n.projectRoot),this.resolver=yt({workspaceRoot:this.workspaceConfig.workspaceRoot,projectRoot:n.projectRoot,cacheDir:this.cachePath,mode:n.mode,logLevel:e.logLevel||this.config?.logLevel||this.workspaceConfig.logLevel||`info`,skipCache:n.skipCache});let i=await gt(n.projectRoot,this.workspaceConfig.workspaceRoot,this.resolver,n.command,n.mode,n.configFile,n.framework);this.mergeUserConfig(i.config),$.set(n,{projectJson:this.projectJson,packageJson:this.packageJson,checksum:this.#n,resolver:this.resolver,userConfig:i})}e.tsconfig??=W(this.workspaceConfig.workspaceRoot,n.projectRoot,e.tsconfig),(0,w.isSetObject)(e)&&(this.resolvedConfig=(0,d.default)({inlineConfig:this.config.inlineConfig,userConfig:this.config.userConfig},t.isHighPriority?this.#f(e):{},{command:this.config.inlineConfig?.command,...this.#f(this.config.inlineConfig)},this.#f(this.config.userConfig),{mode:this.workspaceConfig?.mode,logLevel:this.workspaceConfig?.logLevel,skipCache:this.workspaceConfig?.skipCache},{name:this.projectJson?.name||this.packageJson?.name,version:this.packageJson?.version,description:this.packageJson?.description,sourceRoot:this.projectJson?.sourceRoot||(0,y.appendPath)(`src`,n.projectRoot),output:(0,d.default)(e.output??{},{outputPath:n.projectRoot?(0,I.joinPaths)(this.workspaceConfig?.directories?.build||`dist`,n.projectRoot):this.workspaceConfig?.directories?.build||`dist`,artifactsPath:(0,I.joinPaths)(n.projectRoot,`.${e.framework??`powerlines`}`),dts:(0,I.joinPaths)(n.projectRoot,`${e.framework??`powerlines`}.d.ts`),builtinPrefix:e.framework??`powerlines`,assets:[{glob:`LICENSE`},{input:n.projectRoot,glob:`*.md`},{input:n.projectRoot,glob:`package.json`}]})},t.isHighPriority?{}:this.#f(e),{inlineConfig:{},userConfig:{},framework:`powerlines`,platform:`neutral`,mode:`production`,projectType:`application`,logLevel:`info`,preview:!1,environments:{},transform:{babel:{plugins:[],presets:[]}},lint:{eslint:{}},build:{target:`esnext`,override:{}}})),this.config.entry=Ge(this.config.entry),this.config.name?.startsWith(`@`)&&this.config.name.split(`/`).filter(Boolean).length>1&&(this.config.name=this.config.name.split(`/`).filter(Boolean)[1]),this.config.title??=(0,N.titleCase)(this.config.name),this.config.userConfig.build?.external&&(this.config.userConfig.build.external=(0,v.getUnique)(this.config.userConfig.build.external)),this.config.userConfig.build?.noExternal&&(this.config.userConfig.build.noExternal=(0,v.getUnique)(this.config.userConfig.build.noExternal)),this.config.build.external&&(this.config.build.external=(0,v.getUnique)(this.config.build.external)),this.config.build.noExternal&&(this.config.build.noExternal=(0,v.getUnique)(this.config.build.noExternal)),this.config.output.format=(0,v.getUnique)((0,m.toArray)(this.config.output?.format??(this.config.projectType===`library`?[`cjs`,`esm`]:[`esm`]))),this.config.projectRoot&&this.config.projectRoot!==`.`&&this.config.projectRoot!==`./`&&this.config.projectRoot!==this.workspaceConfig.workspaceRoot?(this.config.output.outputPath??=(0,I.joinPaths)(`dist`,this.config.projectRoot),this.config.output.buildPath??=(0,I.joinPaths)(this.config.projectRoot,`dist`)):(this.config.output.outputPath??=`dist`,this.config.output.buildPath??=`dist`),this.config.output.assets=(0,v.getUnique)(this.config.output.assets.map(e=>({glob:(0,w.isSetObject)(e)?e.glob:e,input:(0,p.isString)(e)||!e.input||e.input===`.`||e.input===`/`||e.input===`./`?this.workspaceConfig.workspaceRoot:(0,y.appendPath)(e.input,this.workspaceConfig.workspaceRoot),output:(0,y.appendPath)((0,w.isSetObject)(e)&&e.output?(0,I.joinPaths)(this.config.output.outputPath,(0,f.replacePath)(e.output,this.config.output.outputPath)):this.config.output.outputPath,this.workspaceConfig.workspaceRoot),ignore:(0,w.isSetObject)(e)&&e.ignore?(0,m.toArray)(e.ignore):void 0}))),this.config.plugins=(this.config.plugins??[]).filter(Boolean).reduce((e,t)=>(q(t)&&J(t,e.filter(e=>q(e)))||e.push(t),e),[]),this.config.tsconfig&&(this.config.tsconfig=U(this,this.config.tsconfig)),this.config.output.dts&&(this.config.output.dts=U(this,this.config.output.dts)),this.config.build.polyfill&&(this.config.build.polyfill=this.config.build.polyfill.map(e=>U(this,e))),this.config.output.assets&&(this.config.output.assets=this.config.output.assets.map(e=>({...e,glob:U(this,e.glob),ignore:e.ignore?e.ignore.map(e=>U(this,e)):void 0,input:U(this,e.input),output:U(this,e.output)}))),this.#s??=await Gt.create(this)}mergeUserConfig(e={},t=this.config.userConfig??{}){this.config.userConfig=(0,d.default)({entry:Array.isArray(e.entry)&&e.entry.length>0?e.entry:Array.isArray(t?.entry)&&t.entry.length>0?t.entry:[]},(0,ee.omit)(e??{},[`entry`]),(0,ee.omit)(t??{},[`entry`])),this.config.userConfig.output?.format&&(this.config.userConfig.output.format=(0,v.getUnique)((0,m.toArray)(this.config.userConfig.output?.format))),this.config.userConfig.plugins=(this.config.userConfig.plugins??[]).filter(Boolean).reduce((e,t)=>(q(t)&&J(t,e.filter(e=>q(e)))||e.push(t),e),[])}};const Zt=[`name`,`api`,`enforce`,`dedupe`,`dependsOn`,`applyToEnvironment`];function Qt(e,t){let n=e=>(0,p.isString)(e)?e:e.message,r=t.extendLog(e.name),i=async(e,n,...r)=>t.$$internal.api.callHook(e,{sequential:!0,result:`merge`,...n,environment:t},...r);return new Proxy({},{get(e,a){return a===`$$internal`?{...t.$$internal,environment:t,callHook:i}:a===`log`||a===`logger`?r:a===`error`?e=>{r(c.LogLevelLabel.ERROR,n(e))}:a===`warn`?e=>{r(c.LogLevelLabel.WARN,n(e))}:a===`info`?e=>{r(c.LogLevelLabel.INFO,n(e))}:a===`debug`?e=>{r(c.LogLevelLabel.DEBUG,n(e))}:a===`trace`?e=>{r(c.LogLevelLabel.TRACE,n(e))}:t[a]},set(e,n,i){return[`$$internal`,`environment`,`config`,`log`,`logger`,`error`,`warn`,`plugins`,`hooks`,`addPlugin`,`selectHooks`].includes(n)?(r(c.LogLevelLabel.WARN,`Cannot set read-only property "${String(n)}"`),!1):(t[n]=i,!0)}})}var $t=class e extends Xt{#e={};static async fromConfig(t,n){let r=new e(n,t);if(await r.init(),r.powerlinesPath=await(0,S.resolvePackage)(`powerlines`),!r.powerlinesPath)throw Error("Could not resolve `powerlines` package location.");return r}environment;plugins=[];get config(){return super.config}get hooks(){return this.#e}async addPlugin(e){let t=e;if((0,C.isFunction)(e.applyToEnvironment)){let n=await Promise.resolve(e.applyToEnvironment(this.environment));if(!n||(0,le.isObject)(n)&&Object.keys(n).length===0)return;if(Ct(n))return this.$$internal.addPlugin(n);t=q(n)?n:e}let n=Qt(t,this);this.plugins.push({plugin:t,context:n}),this.#e=Object.keys(t).filter(e=>!Zt.includes(e)).reduce((e,r)=>{let i=r,a=t[i];if(!Et(a))return e;if(Ot(i))e[i]??=[],e[i].push({plugin:t,hook:Dt(a).bind(n)});else{if(e[i]??={},t.enforce)return e[i][`${t.enforce}Enforced`]??=[],kt(n,t,a,e[i][`${t.enforce}Enforced`]),e;if((0,C.isFunction)(a)||!a.order)return e[i].normal??=[],kt(n,t,a,e[i].normal),e;e[i][`${a.order}Ordered`]??=[],kt(n,t,a,e[i][`${a.order}Ordered`])}return e},this.hooks)}selectHooks(e,t){let n=[];if(this.hooks[e])if(Ot(e))n.push(...this.hooks[e].map(e=>{let t=this.plugins.find(t=>t.plugin.name===e.plugin.name);if(!t)throw Error(`Could not find plugin context for plugin "${e.plugin.name}".`);return{handle:e.handler,context:t.context}}));else{let r=this.hooks[e];t?.order?t?.order===`pre`?(n.push(...(r.preOrdered??[]).map(e=>{let t=this.plugins.find(t=>t.plugin.name===e.plugin.name);if(!t)throw Error(`Could not find plugin context for plugin "${e.plugin.name}".`);return{handle:e.handler,context:t.context}})),n.push(...(r.preEnforced??[]).map(e=>{let t=this.plugins.find(t=>t.plugin.name===e.plugin.name);if(!t)throw Error(`Could not find plugin context for plugin "${e.plugin.name}".`);return{handle:e.handler,context:t.context}}))):t?.order===`post`?(n.push(...(r.postOrdered??[]).map(e=>{let t=this.plugins.find(t=>t.plugin.name===e.plugin.name);if(!t)throw Error(`Could not find plugin context for plugin "${e.plugin.name}".`);return{handle:e.handler,context:t.context}})),n.push(...(r.postEnforced??[]).map(e=>{let t=this.plugins.find(t=>t.plugin.name===e.plugin.name);if(!t)throw Error(`Could not find plugin context for plugin "${e.plugin.name}".`);return{handle:e.handler,context:t.context}}))):n.push(...(r.normal??[]).map(e=>{let t=this.plugins.find(t=>t.plugin.name===e.plugin.name);if(!t)throw Error(`Could not find plugin context for plugin "${e.plugin.name}".`);return{handle:e.handler,context:t.context}})):(n.push(...this.selectHooks(e,{order:`pre`})),n.push(...this.selectHooks(e,{order:`normal`})),n.push(...this.selectHooks(e,{order:`post`})))}return n}constructor(e,t){super(t),this.resolvedConfig=e}},en=class e extends Xt{#e={};#t=[];#n;static async from(t,n){let r=new e(await ht(t,n.root));if(await r.withUserConfig(n),r.powerlinesPath=await(0,S.resolvePackage)(`powerlines`),!r.powerlinesPath)throw Error("Could not resolve `powerlines` package location.");return r}get $$internal(){return super.$$internal}set $$internal(e){super.$$internal=e;for(let e of Object.values(this.environments))e.$$internal=super.$$internal}get environments(){return this.#e}get log(){return this.#n||=this.createLog(`engine`),this.#n}get plugins(){return this.#t}constructor(e){super(e)}async init(e={}){await super.init(e),await Promise.all((0,m.toArray)(this.config.userConfig.environments&&Object.keys(this.config.userConfig.environments).length>0?Object.keys(this.config.userConfig.environments).map(e=>pt(e,this.config.userConfig)):mt(this.config.userConfig)).map(async e=>{this.#e[e.name]=await this.in(e)}))}async in(e){let t;t=this.environments[e.name]?this.environments[e.name]:await $t.fromConfig(this.workspaceConfig,this.config),(0,w.isSetObject)(this.config.inlineConfig)&&await t.withInlineConfig(this.config.inlineConfig),t.environment=e,t.plugins=[];for(let e of this.plugins)await t.addPlugin(e);return t}async withUserConfig(e,t={isHighPriority:!0}){await super.withUserConfig(e,t),await Promise.all(Object.keys(this.#e).map(async n=>{await this.#e[n].withUserConfig(e,t)}))}async withInlineConfig(e,t={isHighPriority:!0}){await super.withInlineConfig(e,t),await Promise.all(Object.keys(this.#e).map(async n=>{await this.#e[n].withInlineConfig(e,t)}))}async addPlugin(e){this.plugins.push(e),await Promise.all(Object.keys(this.environments).map(async t=>{await this.environments[t].addPlugin(e)}))}async getEnvironment(e){let t;if(e&&(t=this.environments[e]),Object.keys(this.environments).length===1&&(t=this.environments[Object.keys(this.environments)[0]],this.log(c.LogLevelLabel.DEBUG,`Applying the only configured environment: ${T.default.bold.cyanBright(t?.environment.name)}`)),!t){if(e)throw Error(`Environment "${e}" not found.`);t=await this.in(mt(this.config.userConfig)),this.log(c.LogLevelLabel.WARN,`No environment specified, and no default environment found. Using a temporary default environment: ${T.default.bold.cyanBright(t?.environment.name)}`)}return t}async getEnvironmentSafe(e){try{return await this.getEnvironment(e)}catch{return}}};function tn(e){return`
21
21
  // Generated with ${(0,N.titleCase)(e.config.framework)}
22
22
  // Note: Do not edit this file manually - it will be overwritten automatically
23
23
  `}function nn(e,t={}){let{directive:n=null,prettierIgnore:r=!1}=t;return`/* eslint-disable */
@@ -26,7 +26,7 @@ ${r?`// prettier-ignore`:``}${n?`\n\n${n}\n`:`
26
26
  `}
27
27
  ${tn(e)}
28
28
 
29
- `}var rn=class e{#e;get context(){return this.#e}constructor(e){this.#e=e}static async from(t,n){let r=new e(await en.from(t,n));r.#e.$$internal={api:r};for(let e of r.context.config.plugins??[])await r.#r(e);r.context.plugins.length===0&&r.context.log(c.LogLevelLabel.WARN,`No Powerlines plugins were specified in the options. Please ensure this is correct, as it is generally not recommended.`);let i=await r.callHook(`config`,{environment:await r.context.getEnvironment(),sequential:!0,result:`merge`});return await r.context.withUserConfig(i,{isHighPriority:!1}),r}async prepare(e={command:`prepare`}){this.context.log(c.LogLevelLabel.TRACE,` 🏗️ Preparing the Powerlines project`),this.context.log(c.LogLevelLabel.TRACE,` ⚙️ Aggregating configuration options for the Powerlines project`),await this.context.withInlineConfig(e),await this.#n(async e=>{if(e.log(c.LogLevelLabel.TRACE,`Initializing the processing options for the Powerlines project.`),await this.callHook(`configResolved`,{environment:e,order:`pre`}),await ut(e),await this.callHook(`configResolved`,{environment:e,order:`normal`}),e.log(c.LogLevelLabel.DEBUG,`The configuration provided ${(0,m.toArray)(e.config.entry).length} entry point(s), Powerlines has found ${e.entry.length} entry files(s) for the ${e.config.title} project${e.entry.length>0&&e.entry.length<10?`: \n${e.entry.map(e=>`- ${e.input.file||e.file}${e.output?` -> ${e.output}`:``}`).join(`
29
+ `}var rn=class e{#e;get context(){return this.#e}constructor(e){this.#e=e}static async from(t,n){let r=new e(await en.from(t,n));r.#e.$$internal={api:r,addPlugin:r.#r.bind(r)};for(let e of r.context.config.plugins??[])await r.#r(e);r.context.plugins.length===0&&r.context.log(c.LogLevelLabel.WARN,`No Powerlines plugins were specified in the options. Please ensure this is correct, as it is generally not recommended.`);let i=await r.callHook(`config`,{environment:await r.context.getEnvironment(),sequential:!0,result:`merge`});return await r.context.withUserConfig(i,{isHighPriority:!1}),r}async prepare(e={command:`prepare`}){this.context.log(c.LogLevelLabel.TRACE,` 🏗️ Preparing the Powerlines project`),this.context.log(c.LogLevelLabel.TRACE,` ⚙️ Aggregating configuration options for the Powerlines project`),await this.context.withInlineConfig(e),await this.#n(async e=>{if(e.log(c.LogLevelLabel.TRACE,`Initializing the processing options for the Powerlines project.`),await this.callHook(`configResolved`,{environment:e,order:`pre`}),await ut(e),await this.callHook(`configResolved`,{environment:e,order:`normal`}),e.log(c.LogLevelLabel.DEBUG,`The configuration provided ${(0,m.toArray)(e.config.entry).length} entry point(s), Powerlines has found ${e.entry.length} entry files(s) for the ${e.config.title} project${e.entry.length>0&&e.entry.length<10?`: \n${e.entry.map(e=>`- ${e.input.file||e.file}${e.output?` -> ${e.output}`:``}`).join(`
30
30
  `)}`:``}.`),await dt(e),await it(e),await this.callHook(`configResolved`,{environment:e,order:`post`}),e.log(c.LogLevelLabel.TRACE,`Powerlines configuration has been resolved: \n\n${(0,ae.formatLogMessage)(e.config)}`),e.fs.existsSync(e.cachePath)||await(0,x.createDirectory)(e.cachePath),e.fs.existsSync(e.dataPath)||await(0,x.createDirectory)(e.dataPath),await this.callHook(`prepare`,{environment:e,order:`pre`}),await this.callHook(`prepare`,{environment:e,order:`normal`}),e.config.output.dts!==!1){e.log(c.LogLevelLabel.TRACE,`Preparing the TypeScript definitions for the Powerlines project.`),e.fs.existsSync(e.dtsPath)&&await e.fs.remove(e.dtsPath),e.log(c.LogLevelLabel.TRACE,`Transforming built-ins runtime modules files.`);let t=await Promise.all((await e.getBuiltins()).map(async t=>{let n=await(0,ie.transformAsync)(t.code.toString(),{highlightCode:!0,code:!0,ast:!1,cloneInputAst:!1,comments:!0,sourceType:`module`,configFile:!1,babelrc:!1,envName:e.config.mode,caller:{name:`powerlines`},...e.config.transform.babel,filename:t.path,plugins:[[`@babel/plugin-syntax-typescript`],[Xe(e)]]});if(!n?.code)throw Error(`Powerlines - Generate Types failed to compile ${t.id}`);return e.log(c.LogLevelLabel.TRACE,`Writing transformed built-in runtime file ${t.id}.`),await e.emitBuiltin(n.code,t.id,t.path),t.path}));if(!await(0,S.resolvePackage)(`typescript`))throw Error(`Could not resolve TypeScript package location. Please ensure TypeScript is installed.`);let n=t.reduce((t,n)=>{let r=(0,f.replacePath)(n,e.workspaceConfig.workspaceRoot);return t.includes(r)||t.push(r),t},[]);e.log(c.LogLevelLabel.TRACE,`Parsing TypeScript configuration for the Powerlines project.`);let r=await et(e,n);e.log(c.LogLevelLabel.TRACE,`Generating TypeScript declaration file ${e.dtsPath}.`);let i=[],a=e=>(0,le.isObject)(e)?e.code:e,o=await this.callHook(`types`,{environment:e,sequential:!0,order:`pre`,result:`merge`,asNextParam:a},r);if(o&&((0,w.isSetObject)(o)?(r=o.code,Array.isArray(o.directives)&&o.directives.length>0&&i.push(...o.directives)):(0,b.isSetString)(o)&&(r=o)),o=await this.callHook(`types`,{environment:e,sequential:!0,order:`normal`,result:`merge`,asNextParam:a},r),o&&((0,w.isSetObject)(o)?(r=o.code,Array.isArray(o.directives)&&o.directives.length>0&&i.push(...o.directives)):(0,b.isSetString)(o)&&(r=o)),o=await this.callHook(`types`,{environment:e,sequential:!0,order:`post`,result:`merge`,asNextParam:a},r),o&&((0,w.isSetObject)(o)?(r=o.code,Array.isArray(o.directives)&&o.directives.length>0&&i.push(...o.directives)):(0,b.isSetString)(o)&&(r=o)),r?.trim()||i.length>0)await e.fs.write(e.dtsPath,`${i?`${i.map(e=>`/// <reference types="${e}" />`).join(`
31
31
  `)}
32
32
 
@@ -1,4 +1,4 @@
1
- import { t as VitePluginContext } from "./plugin-Hxj-Dt1_.cjs";
1
+ import { t as VitePluginContext } from "./plugin-CkScSe1l.cjs";
2
2
  import * as vite0 from "vite";
3
3
 
4
4
  //#region src/helpers/unplugin.d.ts
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@powerlines/plugin-vite",
3
- "version": "0.14.54",
3
+ "version": "0.14.56",
4
4
  "type": "module",
5
5
  "description": "A package containing a Powerlines plugin to assist in developing other Powerlines plugins.",
6
6
  "repository": {
@@ -156,15 +156,15 @@
156
156
  "@stryke/types": "^0.10.13",
157
157
  "defu": "^6.1.4",
158
158
  "jiti": "^2.6.1",
159
- "powerlines": "^0.30.5"
159
+ "powerlines": "^0.30.7"
160
160
  },
161
161
  "devDependencies": {
162
162
  "vite": "^7.2.6",
163
163
  "rolldown-vite": "^7.2.10",
164
- "@powerlines/nx": "^0.10.54",
165
- "@powerlines/plugin-plugin": "^0.12.6",
164
+ "@powerlines/nx": "^0.10.56",
165
+ "@powerlines/plugin-plugin": "^0.12.8",
166
166
  "@types/node": "^24.10.1"
167
167
  },
168
168
  "publishConfig": { "access": "public" },
169
- "gitHead": "12939184c800cdcfa2dd68f9aa9adb7ed40fb651"
169
+ "gitHead": "c99d14f5c417d27c6854661afcf485f629f4e143"
170
170
  }