@powerlines/plugin-crypto 0.10.74 → 0.10.75

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.
Files changed (30) hide show
  1. package/dist/alloy/src/core/components/source-file.cjs +1 -1
  2. package/dist/alloy/src/core/components/source-file.mjs +1 -1
  3. package/dist/alloy/src/typescript/components/typescript-file.cjs +1 -1
  4. package/dist/alloy/src/typescript/components/typescript-file.mjs +1 -1
  5. package/dist/plugin-automd/src/index.cjs +1 -0
  6. package/dist/plugin-automd/src/index.mjs +1 -0
  7. package/dist/plugin-automd/src/types/plugin.d.cts +38 -0
  8. package/dist/plugin-automd/src/types/plugin.d.mts +40 -0
  9. package/dist/plugin-automd/src/types/toc.d.cts +33 -0
  10. package/dist/plugin-automd/src/types/toc.d.mts +33 -0
  11. package/dist/plugin-babel/src/index.cjs +1 -1
  12. package/dist/plugin-babel/src/index.mjs +1 -1
  13. package/dist/plugin-env/src/helpers/automd-generator.cjs +1 -0
  14. package/dist/plugin-env/src/helpers/automd-generator.mjs +1 -0
  15. package/dist/plugin-env/src/helpers/load.cjs +1 -1
  16. package/dist/plugin-env/src/helpers/load.mjs +1 -1
  17. package/dist/plugin-env/src/helpers/persistence.cjs +1 -1
  18. package/dist/plugin-env/src/helpers/persistence.mjs +1 -1
  19. package/dist/plugin-env/src/helpers/reflect.cjs +1 -1
  20. package/dist/plugin-env/src/helpers/reflect.mjs +1 -1
  21. package/dist/plugin-env/src/index.cjs +6 -12
  22. package/dist/plugin-env/src/index.mjs +6 -12
  23. package/dist/plugin-env/src/types/plugin.d.cts +8 -0
  24. package/dist/plugin-env/src/types/plugin.d.mts +8 -0
  25. package/dist/powerlines/src/lib/build/esbuild.cjs +2 -2
  26. package/dist/powerlines/src/lib/build/esbuild.mjs +2 -2
  27. package/dist/powerlines/src/lib/entry.cjs +1 -1
  28. package/dist/powerlines/src/lib/entry.mjs +1 -1
  29. package/dist/powerlines/src/types/config.d.mts +1 -1
  30. package/package.json +5 -5
@@ -1 +1 @@
1
- const e=require(`../../../../_virtual/rolldown_runtime.cjs`);let t=require(`@alloy-js/core/jsx-runtime`),n=require(`@alloy-js/core`),r=require(`defu`);r=e.__toESM(r);let i=require(`@stryke/path/append`);function a(e){let[{children:a,meta:o,path:s,header:c,preset:l,filetype:u,reference:d}]=(0,n.splitProps)(e,[`children`,`meta`,`path`,`header`,`preset`,`filetype`,`reference`]),f=(0,n.useContext)(n.SourceDirectoryContext),p={path:(0,i.appendPath)(s,f.path),filetype:u,reference:d};f?.addContent(p);let m=(0,n.useFormatOptions)({printWidth:e.printWidth,tabWidth:e.tabWidth,useTabs:e.useTabs,insertFinalNewLine:e.insertFinalNewLine}),h=(0,n.getContext)();return h.meta=(0,r.default)({sourceFile:p,printOptions:m,output:{preset:l}},o??{}),(0,t.createComponent)(n.SourceFileContext.Provider,{value:p,get children(){return[(0,t.createComponent)(n.Show,{when:c!==void 0,get children(){return[c,(0,t.createIntrinsic)(`hbr`,{})]}}),a]}})}exports.SourceFile=a;
1
+ const e=require(`../../../../_virtual/rolldown_runtime.cjs`);let t=require(`@alloy-js/core/jsx-runtime`),n=require(`@alloy-js/core`),r=require(`@stryke/path/append`),i=require(`defu`);i=e.__toESM(i);function a(e){let[{children:a,meta:o,path:s,header:c,preset:l,filetype:u,reference:d}]=(0,n.splitProps)(e,[`children`,`meta`,`path`,`header`,`preset`,`filetype`,`reference`]),f=(0,n.useContext)(n.SourceDirectoryContext),p={path:(0,r.appendPath)(s,f.path),filetype:u,reference:d};f?.addContent(p);let m=(0,n.useFormatOptions)({printWidth:e.printWidth,tabWidth:e.tabWidth,useTabs:e.useTabs,insertFinalNewLine:e.insertFinalNewLine}),h=(0,n.getContext)();return h.meta=(0,i.default)({sourceFile:p,printOptions:m,output:{preset:l}},o??{}),(0,t.createComponent)(n.SourceFileContext.Provider,{value:p,get children(){return[(0,t.createComponent)(n.Show,{when:c!==void 0,get children(){return[c,(0,t.createIntrinsic)(`hbr`,{})]}}),a]}})}exports.SourceFile=a;
@@ -1 +1 @@
1
- import{createComponent as e,createIntrinsic as t}from"@alloy-js/core/jsx-runtime";import{Show as n,SourceDirectoryContext as r,SourceFileContext as i,getContext as a,splitProps as o,useContext as s,useFormatOptions as c}from"@alloy-js/core";import l from"defu";import{appendPath as u}from"@stryke/path/append";function d(d){let[{children:f,meta:p,path:m,header:h,preset:g,filetype:_,reference:v}]=o(d,[`children`,`meta`,`path`,`header`,`preset`,`filetype`,`reference`]),y=s(r),b={path:u(m,y.path),filetype:_,reference:v};y?.addContent(b);let x=c({printWidth:d.printWidth,tabWidth:d.tabWidth,useTabs:d.useTabs,insertFinalNewLine:d.insertFinalNewLine}),S=a();return S.meta=l({sourceFile:b,printOptions:x,output:{preset:g}},p??{}),e(i.Provider,{value:b,get children(){return[e(n,{when:h!==void 0,get children(){return[h,t(`hbr`,{})]}}),f]}})}export{d as SourceFile};
1
+ import{createComponent as e,createIntrinsic as t}from"@alloy-js/core/jsx-runtime";import{Show as n,SourceDirectoryContext as r,SourceFileContext as i,getContext as a,splitProps as o,useContext as s,useFormatOptions as c}from"@alloy-js/core";import{appendPath as l}from"@stryke/path/append";import u from"defu";function d(d){let[{children:f,meta:p,path:m,header:h,preset:g,filetype:_,reference:v}]=o(d,[`children`,`meta`,`path`,`header`,`preset`,`filetype`,`reference`]),y=s(r),b={path:l(m,y.path),filetype:_,reference:v};y?.addContent(b);let x=c({printWidth:d.printWidth,tabWidth:d.tabWidth,useTabs:d.useTabs,insertFinalNewLine:d.insertFinalNewLine}),S=a();return S.meta=u({sourceFile:b,printOptions:x,output:{preset:g}},p??{}),e(i.Provider,{value:b,get children(){return[e(n,{when:h!==void 0,get children(){return[h,t(`hbr`,{})]}}),f]}})}export{d as SourceFile};
@@ -1 +1 @@
1
- const e=require(`../../../../_virtual/rolldown_runtime.cjs`),t=require(`../../core/contexts/context.cjs`),n=require(`../../core/components/single-line-comment.cjs`),r=require(`../../core/components/source-file.cjs`);let i=require(`@alloy-js/core/jsx-runtime`),a=require(`@alloy-js/core`),o=require(`@stryke/string-format/title-case`),s=require(`@stryke/type-checks/is-string`),c=require(`@stryke/path/append`),l=require(`@alloy-js/typescript`),u=require(`@stryke/type-checks/is-boolean`);function d(e){let[{children:t,path:n,imports:o,tsx:s,header:d,hashbang:m},h]=(0,a.splitProps)(e,[`children`,`path`,`imports`,`tsx`,`header`,`hashbang`]),g=(0,a.useContext)(a.SourceDirectoryContext),_=(0,l.getSourceDirectoryData)(g),v=(0,c.appendPath)(n,g.path),y=new l.TSModuleScope(v,(0,a.useScope)());_.modules.add(y);let b=(0,a.useContext)(l.PackageContext);return b&&b.scope.addModule(y),e.export&&b&&((0,u.isBoolean)(e.export)?b.scope.addExport(v,y):b.scope.addExport(e.export,y)),(0,i.createComponent)(l.SourceFileContext.Provider,{value:{scope:y},get children(){return(0,i.createComponent)(a.Scope,{value:y,get children(){return(0,i.createComponent)(r.SourceFile,(0,i.mergeProps)(h,{path:v,get header(){return d??(0,i.createComponent)(f,{hashbang:m,get children(){return(0,i.createComponent)(p,{imports:o,scope:y})}})},filetype:s?`tsx`:`typescript`,children:t}))}})}})}function f(e){let{header:r,hashbang:s,disableEslint:c=!0,disableBiome:l=!0,disablePrettier:u=!1,children:d}=e,f=t.usePowerlines();return[(0,i.createComponent)(a.Show,{get when(){return!!s},get children(){return[(0,i.memo)(()=>s===!0?a.code`#!/usr/bin/env ${f?.config.mode===`development`?`-S NODE_OPTIONS=--enable-source-maps`:``} node`:s),(0,i.createIntrinsic)(`hbr`,{})]}}),(0,i.createComponent)(a.Show,{get when(){return!!r},get children(){return[r,(0,i.createIntrinsic)(`hbr`,{})]}}),(0,i.createIntrinsic)(`hbr`,{}),(0,i.createComponent)(a.Show,{get when(){return!!c},get children(){return[(0,i.createComponent)(n.SingleLineComment,{variant:`slash-star`,children:`eslint-disable`}),(0,i.createIntrinsic)(`hbr`,{})]}}),(0,i.createComponent)(a.Show,{get when(){return!!u},get children(){return[(0,i.createComponent)(n.SingleLineComment,{variant:`slash-star`,children:`prettier-ignore`}),(0,i.createIntrinsic)(`hbr`,{})]}}),(0,i.createComponent)(a.Show,{get when(){return!!l},get children(){return[(0,i.createComponent)(n.SingleLineComment,{children:`biome-ignore lint: disable`}),(0,i.createIntrinsic)(`hbr`,{})]}}),(0,i.createComponent)(a.Show,{get when(){return!!c||!!u||!!l},get children(){return(0,i.createIntrinsic)(`hbr`,{})}}),(0,i.createComponent)(a.Show,{get when(){return!!d},get children(){return[d,(0,i.createIntrinsic)(`hbr`,{})]}}),(0,i.createComponent)(n.SingleLineComment,{get children(){return a.code`Generated by ${(0,o.titleCase)(f?.config.framework)||`Powerlines`}`}}),(0,i.createIntrinsic)(`hbr`,{}),(0,i.createComponent)(n.SingleLineComment,{children:a.code`NOTE: Do not edit this file manually - it will be overwritten automatically by the "prepare" command`}),(0,i.createIntrinsic)(`hbr`,{})]}function p(e){let{imports:t}=e,n=(0,l.useSourceFile)(),r=e.scope??n.scope;return(0,i.createComponent)(a.Show,{get when(){return r.importedModules.size>0||!!t&&Object.keys(t).length>0},get children(){return[(0,i.createComponent)(a.Show,{get when(){return!!t&&Object.keys(t).length>0},get children(){return Object.entries(t??{}).map(([e,t])=>a.code`import ${t===null?``:t.filter(e=>!(0,s.isString)(e)&&e.default).map(e=>e.alias?e.alias:e.name).join(`, `)+(t.filter(e=>!(0,s.isString)(e)&&e.default).length>0&&t.filter(e=>(0,s.isString)(e)||!e.default).length>0?`, `:``)+(t.filter(e=>(0,s.isString)(e)||!e.default).length>0?`{ ${t.map(e=>(0,s.isString)(e)?e:e.alias?`${e.name} as ${e.alias}`:e.name).join(`, `)} }`:``)} from "${e}";`)}}),(0,i.createComponent)(a.Show,{get when(){return r.importedModules.size>0},get children(){return(0,i.createComponent)(l.ImportStatements,{get records(){return r.importedModules}})}}),(0,i.createIntrinsic)(`hbr`,{})]}})}exports.TypescriptFile=d,exports.TypescriptFileHeader=f,exports.TypescriptFileHeaderImports=p;
1
+ const e=require(`../../../../_virtual/rolldown_runtime.cjs`),t=require(`../../core/contexts/context.cjs`),n=require(`../../core/components/single-line-comment.cjs`),r=require(`../../core/components/source-file.cjs`);let i=require(`@alloy-js/core/jsx-runtime`),a=require(`@alloy-js/core`),o=require(`@stryke/path/append`),s=require(`@stryke/string-format/title-case`),c=require(`@stryke/type-checks/is-string`),l=require(`@alloy-js/typescript`),u=require(`@stryke/type-checks/is-boolean`);function d(e){let[{children:t,path:n,imports:s,tsx:c,header:d,hashbang:m},h]=(0,a.splitProps)(e,[`children`,`path`,`imports`,`tsx`,`header`,`hashbang`]),g=(0,a.useContext)(a.SourceDirectoryContext),_=(0,l.getSourceDirectoryData)(g),v=(0,o.appendPath)(n,g.path),y=new l.TSModuleScope(v,(0,a.useScope)());_.modules.add(y);let b=(0,a.useContext)(l.PackageContext);return b&&b.scope.addModule(y),e.export&&b&&((0,u.isBoolean)(e.export)?b.scope.addExport(v,y):b.scope.addExport(e.export,y)),(0,i.createComponent)(l.SourceFileContext.Provider,{value:{scope:y},get children(){return(0,i.createComponent)(a.Scope,{value:y,get children(){return(0,i.createComponent)(r.SourceFile,(0,i.mergeProps)(h,{path:v,get header(){return d??(0,i.createComponent)(f,{hashbang:m,get children(){return(0,i.createComponent)(p,{imports:s,scope:y})}})},filetype:c?`tsx`:`typescript`,children:t}))}})}})}function f(e){let{header:r,hashbang:o,disableEslint:c=!0,disableBiome:l=!0,disablePrettier:u=!1,children:d}=e,f=t.usePowerlines();return[(0,i.createComponent)(a.Show,{get when(){return!!o},get children(){return[(0,i.memo)(()=>o===!0?a.code`#!/usr/bin/env ${f?.config.mode===`development`?`-S NODE_OPTIONS=--enable-source-maps`:``} node`:o),(0,i.createIntrinsic)(`hbr`,{})]}}),(0,i.createComponent)(a.Show,{get when(){return!!r},get children(){return[r,(0,i.createIntrinsic)(`hbr`,{})]}}),(0,i.createIntrinsic)(`hbr`,{}),(0,i.createComponent)(a.Show,{get when(){return!!c},get children(){return[(0,i.createComponent)(n.SingleLineComment,{variant:`slash-star`,children:`eslint-disable`}),(0,i.createIntrinsic)(`hbr`,{})]}}),(0,i.createComponent)(a.Show,{get when(){return!!u},get children(){return[(0,i.createComponent)(n.SingleLineComment,{variant:`slash-star`,children:`prettier-ignore`}),(0,i.createIntrinsic)(`hbr`,{})]}}),(0,i.createComponent)(a.Show,{get when(){return!!l},get children(){return[(0,i.createComponent)(n.SingleLineComment,{children:`biome-ignore lint: disable`}),(0,i.createIntrinsic)(`hbr`,{})]}}),(0,i.createComponent)(a.Show,{get when(){return!!c||!!u||!!l},get children(){return(0,i.createIntrinsic)(`hbr`,{})}}),(0,i.createComponent)(a.Show,{get when(){return!!d},get children(){return[d,(0,i.createIntrinsic)(`hbr`,{})]}}),(0,i.createComponent)(n.SingleLineComment,{get children(){return a.code`Generated by ${(0,s.titleCase)(f?.config.framework)||`Powerlines`}`}}),(0,i.createIntrinsic)(`hbr`,{}),(0,i.createComponent)(n.SingleLineComment,{children:a.code`NOTE: Do not edit this file manually - it will be overwritten automatically by the "prepare" command`}),(0,i.createIntrinsic)(`hbr`,{})]}function p(e){let{imports:t}=e,n=(0,l.useSourceFile)(),r=e.scope??n.scope;return(0,i.createComponent)(a.Show,{get when(){return r.importedModules.size>0||!!t&&Object.keys(t).length>0},get children(){return[(0,i.createComponent)(a.Show,{get when(){return!!t&&Object.keys(t).length>0},get children(){return Object.entries(t??{}).map(([e,t])=>a.code`import ${t===null?``:t.filter(e=>!(0,c.isString)(e)&&e.default).map(e=>e.alias?e.alias:e.name).join(`, `)+(t.filter(e=>!(0,c.isString)(e)&&e.default).length>0&&t.filter(e=>(0,c.isString)(e)||!e.default).length>0?`, `:``)+(t.filter(e=>(0,c.isString)(e)||!e.default).length>0?`{ ${t.map(e=>(0,c.isString)(e)?e:e.alias?`${e.name} as ${e.alias}`:e.name).join(`, `)} }`:``)} from "${e}";`)}}),(0,i.createComponent)(a.Show,{get when(){return r.importedModules.size>0},get children(){return(0,i.createComponent)(l.ImportStatements,{get records(){return r.importedModules}})}}),(0,i.createIntrinsic)(`hbr`,{})]}})}exports.TypescriptFile=d,exports.TypescriptFileHeader=f,exports.TypescriptFileHeaderImports=p;
@@ -1 +1 @@
1
- import{usePowerlines as e}from"../../core/contexts/context.mjs";import{SingleLineComment as t}from"../../core/components/single-line-comment.mjs";import{SourceFile as n}from"../../core/components/source-file.mjs";import{createComponent as r,createIntrinsic as i,memo as a,mergeProps as o}from"@alloy-js/core/jsx-runtime";import{Scope as s,Show as c,SourceDirectoryContext as l,code as u,splitProps as d,useContext as f,useScope as p}from"@alloy-js/core";import{titleCase as m}from"@stryke/string-format/title-case";import{isString as h}from"@stryke/type-checks/is-string";import{appendPath as g}from"@stryke/path/append";import{ImportStatements as _,PackageContext as v,SourceFileContext as y,TSModuleScope as b,getSourceDirectoryData as x,useSourceFile as S}from"@alloy-js/typescript";import{isBoolean as C}from"@stryke/type-checks/is-boolean";function w(e){let[{children:t,path:i,imports:a,tsx:c,header:u,hashbang:m},h]=d(e,[`children`,`path`,`imports`,`tsx`,`header`,`hashbang`]),_=f(l),S=x(_),w=g(i,_.path),D=new b(w,p());S.modules.add(D);let O=f(v);return O&&O.scope.addModule(D),e.export&&O&&(C(e.export)?O.scope.addExport(w,D):O.scope.addExport(e.export,D)),r(y.Provider,{value:{scope:D},get children(){return r(s,{value:D,get children(){return r(n,o(h,{path:w,get header(){return u??r(T,{hashbang:m,get children(){return r(E,{imports:a,scope:D})}})},filetype:c?`tsx`:`typescript`,children:t}))}})}})}function T(n){let{header:o,hashbang:s,disableEslint:l=!0,disableBiome:d=!0,disablePrettier:f=!1,children:p}=n,h=e();return[r(c,{get when(){return!!s},get children(){return[a(()=>s===!0?u`#!/usr/bin/env ${h?.config.mode===`development`?`-S NODE_OPTIONS=--enable-source-maps`:``} node`:s),i(`hbr`,{})]}}),r(c,{get when(){return!!o},get children(){return[o,i(`hbr`,{})]}}),i(`hbr`,{}),r(c,{get when(){return!!l},get children(){return[r(t,{variant:`slash-star`,children:`eslint-disable`}),i(`hbr`,{})]}}),r(c,{get when(){return!!f},get children(){return[r(t,{variant:`slash-star`,children:`prettier-ignore`}),i(`hbr`,{})]}}),r(c,{get when(){return!!d},get children(){return[r(t,{children:`biome-ignore lint: disable`}),i(`hbr`,{})]}}),r(c,{get when(){return!!l||!!f||!!d},get children(){return i(`hbr`,{})}}),r(c,{get when(){return!!p},get children(){return[p,i(`hbr`,{})]}}),r(t,{get children(){return u`Generated by ${m(h?.config.framework)||`Powerlines`}`}}),i(`hbr`,{}),r(t,{children:u`NOTE: Do not edit this file manually - it will be overwritten automatically by the "prepare" command`}),i(`hbr`,{})]}function E(e){let{imports:t}=e,n=S(),a=e.scope??n.scope;return r(c,{get when(){return a.importedModules.size>0||!!t&&Object.keys(t).length>0},get children(){return[r(c,{get when(){return!!t&&Object.keys(t).length>0},get children(){return Object.entries(t??{}).map(([e,t])=>u`import ${t===null?``:t.filter(e=>!h(e)&&e.default).map(e=>e.alias?e.alias:e.name).join(`, `)+(t.filter(e=>!h(e)&&e.default).length>0&&t.filter(e=>h(e)||!e.default).length>0?`, `:``)+(t.filter(e=>h(e)||!e.default).length>0?`{ ${t.map(e=>h(e)?e:e.alias?`${e.name} as ${e.alias}`:e.name).join(`, `)} }`:``)} from "${e}";`)}}),r(c,{get when(){return a.importedModules.size>0},get children(){return r(_,{get records(){return a.importedModules}})}}),i(`hbr`,{})]}})}export{w as TypescriptFile,T as TypescriptFileHeader,E as TypescriptFileHeaderImports};
1
+ import{usePowerlines as e}from"../../core/contexts/context.mjs";import{SingleLineComment as t}from"../../core/components/single-line-comment.mjs";import{SourceFile as n}from"../../core/components/source-file.mjs";import{createComponent as r,createIntrinsic as i,memo as a,mergeProps as o}from"@alloy-js/core/jsx-runtime";import{Scope as s,Show as c,SourceDirectoryContext as l,code as u,splitProps as d,useContext as f,useScope as p}from"@alloy-js/core";import{appendPath as m}from"@stryke/path/append";import{titleCase as h}from"@stryke/string-format/title-case";import{isString as g}from"@stryke/type-checks/is-string";import{ImportStatements as _,PackageContext as v,SourceFileContext as y,TSModuleScope as b,getSourceDirectoryData as x,useSourceFile as S}from"@alloy-js/typescript";import{isBoolean as C}from"@stryke/type-checks/is-boolean";function w(e){let[{children:t,path:i,imports:a,tsx:c,header:u,hashbang:h},g]=d(e,[`children`,`path`,`imports`,`tsx`,`header`,`hashbang`]),_=f(l),S=x(_),w=m(i,_.path),D=new b(w,p());S.modules.add(D);let O=f(v);return O&&O.scope.addModule(D),e.export&&O&&(C(e.export)?O.scope.addExport(w,D):O.scope.addExport(e.export,D)),r(y.Provider,{value:{scope:D},get children(){return r(s,{value:D,get children(){return r(n,o(g,{path:w,get header(){return u??r(T,{hashbang:h,get children(){return r(E,{imports:a,scope:D})}})},filetype:c?`tsx`:`typescript`,children:t}))}})}})}function T(n){let{header:o,hashbang:s,disableEslint:l=!0,disableBiome:d=!0,disablePrettier:f=!1,children:p}=n,m=e();return[r(c,{get when(){return!!s},get children(){return[a(()=>s===!0?u`#!/usr/bin/env ${m?.config.mode===`development`?`-S NODE_OPTIONS=--enable-source-maps`:``} node`:s),i(`hbr`,{})]}}),r(c,{get when(){return!!o},get children(){return[o,i(`hbr`,{})]}}),i(`hbr`,{}),r(c,{get when(){return!!l},get children(){return[r(t,{variant:`slash-star`,children:`eslint-disable`}),i(`hbr`,{})]}}),r(c,{get when(){return!!f},get children(){return[r(t,{variant:`slash-star`,children:`prettier-ignore`}),i(`hbr`,{})]}}),r(c,{get when(){return!!d},get children(){return[r(t,{children:`biome-ignore lint: disable`}),i(`hbr`,{})]}}),r(c,{get when(){return!!l||!!f||!!d},get children(){return i(`hbr`,{})}}),r(c,{get when(){return!!p},get children(){return[p,i(`hbr`,{})]}}),r(t,{get children(){return u`Generated by ${h(m?.config.framework)||`Powerlines`}`}}),i(`hbr`,{}),r(t,{children:u`NOTE: Do not edit this file manually - it will be overwritten automatically by the "prepare" command`}),i(`hbr`,{})]}function E(e){let{imports:t}=e,n=S(),a=e.scope??n.scope;return r(c,{get when(){return a.importedModules.size>0||!!t&&Object.keys(t).length>0},get children(){return[r(c,{get when(){return!!t&&Object.keys(t).length>0},get children(){return Object.entries(t??{}).map(([e,t])=>u`import ${t===null?``:t.filter(e=>!g(e)&&e.default).map(e=>e.alias?e.alias:e.name).join(`, `)+(t.filter(e=>!g(e)&&e.default).length>0&&t.filter(e=>g(e)||!e.default).length>0?`, `:``)+(t.filter(e=>g(e)||!e.default).length>0?`{ ${t.map(e=>g(e)?e:e.alias?`${e.name} as ${e.alias}`:e.name).join(`, `)} }`:``)} from "${e}";`)}}),r(c,{get when(){return a.importedModules.size>0},get children(){return r(_,{get records(){return a.importedModules}})}}),i(`hbr`,{})]}})}export{w as TypescriptFile,T as TypescriptFileHeader,E as TypescriptFileHeaderImports};
@@ -0,0 +1 @@
1
+ const e=require(`../../_virtual/rolldown_runtime.cjs`);let t=require(`@stryke/path/replace`),n=require(`@stryke/convert/to-array`),r=require(`@stryke/fs/is-file`),i=require(`@stryke/fs/list-files`),a=require(`@stryke/path/append`),o=require(`@stryke/path/is-type`),s=require(`@stryke/path/join-paths`),c=require(`automd`),l=require(`c12`),u=require(`defu`);u=e.__toESM(u);let d=require(`markdown-toc`);d=e.__toESM(d);const f=(e={})=>({name:`automd`,async config(){let t=await(0,c.loadConfig)((0,s.joinPaths)(this.workspaceConfig.workspaceRoot,this.config.projectRoot),e);return(!t.prefix||!Array.isArray(t.prefix))&&(t.prefix=(0,n.toArray)(t.prefix??[])),t.prefix.includes(`automd`)||t.prefix.push(`automd`),t.prefix.includes(`powerlines`)||t.prefix.push(`powerlines`),{automd:(0,u.default)(t??{},{configFile:e.configFile,allowIssues:!0,dir:this.config.projectRoot,watch:!1,input:`README.md`,toc:{maxDepth:6,bullets:`-`}})}},async configResolved(){if(this.config.framework&&!(0,n.toArray)(this.config.automd.prefix).includes(this.config.framework)&&(this.config.automd.prefix=(0,n.toArray)(this.config.automd.prefix).concat(this.config.framework)),this.config.automd.configFile){let{config:e}=await(0,l.loadConfig)({cwd:this.config.automd.dir,configFile:this.config.automd.configFile,defaults:{ignore:[`**/node_modules`,`**/dist`,`**/.*`],dir:this.config.automd.dir}});this.config.automd=(0,c.resolveConfig)((0,u.default)(this.config.automd,{...e,prefix:(0,n.toArray)(e.prefix??[])}))}this.config.automd.input=(await Promise.all((0,n.toArray)(this.config.automd.input).map(async e=>e.includes(`*`)?(0,i.listFiles)((0,o.isAbsolutePath)(e)?e:(0,a.appendPath)(e,this.config.projectRoot),{ignore:this.config.automd.ignore}):(0,o.isAbsolutePath)(e)?e:(0,a.appendPath)(e,this.config.projectRoot)))).flat(),this.config.automd.output&&!(0,o.isAbsolutePath)(this.config.automd.output)&&(this.config.automd.output=(0,a.appendPath)(this.config.automd.output,this.config.projectRoot)),this.config.automd.generators??={},this.config.automd.toc!==!1&&(this.config.automd.generators.toc??={name:`toc`,generate:e=>{let t=this.config.automd.toc??{};return{contents:(0,d.default)(e.block.md,{...t,maxdepth:t.maxDepth,first1:t.firstH1}).content}}})},async docs(){await Promise.all((0,n.toArray)(this.config.automd.input).map(async e=>{let n=await this.fs.read(e);if(n){let i=await(0,c.transform)(n,this.config.automd);if(i.hasIssues&&this.config.automd.allowIssues===!1)throw Error(`AutoMD found issues in file "${e}". Please resolve the issues or set \`allowIssues\` to true in the plugin configuration to ignore them.`);i.hasChanged&&await this.fs.write((0,a.appendPath)(this.config.automd.output?(0,r.isDirectory)(this.config.automd.output)?(0,t.replacePath)(e,this.config.automd.output):this.config.automd.output:e,this.config.projectRoot),i.contents)}}))}});var p=f;exports.default=p;
@@ -0,0 +1 @@
1
+ import{replacePath as e}from"@stryke/path/replace";import{toArray as t}from"@stryke/convert/to-array";import{isDirectory as n}from"@stryke/fs/is-file";import{listFiles as r}from"@stryke/fs/list-files";import{appendPath as i}from"@stryke/path/append";import{isAbsolutePath as a}from"@stryke/path/is-type";import{joinPaths as o}from"@stryke/path/join-paths";import{loadConfig as s,resolveConfig as c,transform as l}from"automd";import{loadConfig as u}from"c12";import d from"defu";import f from"markdown-toc";var p=(p={})=>({name:`automd`,async config(){let e=await s(o(this.workspaceConfig.workspaceRoot,this.config.projectRoot),p);return(!e.prefix||!Array.isArray(e.prefix))&&(e.prefix=t(e.prefix??[])),e.prefix.includes(`automd`)||e.prefix.push(`automd`),e.prefix.includes(`powerlines`)||e.prefix.push(`powerlines`),{automd:d(e??{},{configFile:p.configFile,allowIssues:!0,dir:this.config.projectRoot,watch:!1,input:`README.md`,toc:{maxDepth:6,bullets:`-`}})}},async configResolved(){if(this.config.framework&&!t(this.config.automd.prefix).includes(this.config.framework)&&(this.config.automd.prefix=t(this.config.automd.prefix).concat(this.config.framework)),this.config.automd.configFile){let{config:e}=await u({cwd:this.config.automd.dir,configFile:this.config.automd.configFile,defaults:{ignore:[`**/node_modules`,`**/dist`,`**/.*`],dir:this.config.automd.dir}});this.config.automd=c(d(this.config.automd,{...e,prefix:t(e.prefix??[])}))}this.config.automd.input=(await Promise.all(t(this.config.automd.input).map(async e=>e.includes(`*`)?r(a(e)?e:i(e,this.config.projectRoot),{ignore:this.config.automd.ignore}):a(e)?e:i(e,this.config.projectRoot)))).flat(),this.config.automd.output&&!a(this.config.automd.output)&&(this.config.automd.output=i(this.config.automd.output,this.config.projectRoot)),this.config.automd.generators??={},this.config.automd.toc!==!1&&(this.config.automd.generators.toc??={name:`toc`,generate:e=>{let t=this.config.automd.toc??{};return{contents:f(e.block.md,{...t,maxdepth:t.maxDepth,first1:t.firstH1}).content}}})},async docs(){await Promise.all(t(this.config.automd.input).map(async t=>{let r=await this.fs.read(t);if(r){let a=await l(r,this.config.automd);if(a.hasIssues&&this.config.automd.allowIssues===!1)throw Error(`AutoMD found issues in file "${t}". Please resolve the issues or set \`allowIssues\` to true in the plugin configuration to ignore them.`);a.hasChanged&&await this.fs.write(i(this.config.automd.output?n(this.config.automd.output)?e(t,this.config.automd.output):this.config.automd.output:t,this.config.projectRoot),a.contents)}}))}});export{p as default};
@@ -0,0 +1,38 @@
1
+ import { TOCOptions } from "./toc.cjs";
2
+ import { Config } from "automd";
3
+
4
+ //#region ../plugin-automd/src/types/plugin.d.ts
5
+
6
+ type AutoMDPluginOptions = Omit<Config, "dir" | "watch" | "onWatch" | "prefix"> & {
7
+ /**
8
+ * Path to the AutoMD configuration file.
9
+ *
10
+ * @remarks
11
+ * If not provided, the plugin will use the default AutoMD configuration resolution mechanism.
12
+ */
13
+ configFile?: string;
14
+ /**
15
+ * An indicator specifying whether or not issues found by AutoMD during the prepare task are considered fatal.
16
+ *
17
+ * @defaultValue true
18
+ */
19
+ allowIssues?: boolean;
20
+ /**
21
+ * Alternate prefix strings to use for finding generators
22
+ *
23
+ * @remarks
24
+ * By default, AutoMD looks for generators with the "automd" prefix, so that any `<!-- automd:generator [...args] --> ... <!-- /automd -->` comments will be picked up. If you want to use different prefixes (for example, to avoid conflicts with other tools), you would provide a value like "myPrefix" and AutoMD would also look for `<!-- myPrefix:generator [...args] --> ... <!-- /myPrefix -->` comments.
25
+ *
26
+ * @defaultValue ["automd", "powerlines", "\{framework\}"]
27
+ */
28
+ prefix?: string | string[];
29
+ /**
30
+ * Table of Contents generator options
31
+ *
32
+ * @remarks
33
+ * If set to `false`, the built-in Table of Contents generator will be disabled.
34
+ */
35
+ toc?: false | TOCOptions;
36
+ };
37
+ //#endregion
38
+ export { AutoMDPluginOptions };
@@ -0,0 +1,40 @@
1
+ import "../../../powerlines/src/types/config.mjs";
2
+ import "../../../powerlines/src/types/resolved.mjs";
3
+ import "../../../powerlines/src/types/context.mjs";
4
+ import { TOCOptions } from "./toc.mjs";
5
+ import { Config } from "automd";
6
+
7
+ //#region ../plugin-automd/src/types/plugin.d.ts
8
+ type AutoMDPluginOptions = Omit<Config, "dir" | "watch" | "onWatch" | "prefix"> & {
9
+ /**
10
+ * Path to the AutoMD configuration file.
11
+ *
12
+ * @remarks
13
+ * If not provided, the plugin will use the default AutoMD configuration resolution mechanism.
14
+ */
15
+ configFile?: string;
16
+ /**
17
+ * An indicator specifying whether or not issues found by AutoMD during the prepare task are considered fatal.
18
+ *
19
+ * @defaultValue true
20
+ */
21
+ allowIssues?: boolean;
22
+ /**
23
+ * Alternate prefix strings to use for finding generators
24
+ *
25
+ * @remarks
26
+ * By default, AutoMD looks for generators with the "automd" prefix, so that any `<!-- automd:generator [...args] --> ... <!-- /automd -->` comments will be picked up. If you want to use different prefixes (for example, to avoid conflicts with other tools), you would provide a value like "myPrefix" and AutoMD would also look for `<!-- myPrefix:generator [...args] --> ... <!-- /myPrefix -->` comments.
27
+ *
28
+ * @defaultValue ["automd", "powerlines", "\{framework\}"]
29
+ */
30
+ prefix?: string | string[];
31
+ /**
32
+ * Table of Contents generator options
33
+ *
34
+ * @remarks
35
+ * If set to `false`, the built-in Table of Contents generator will be disabled.
36
+ */
37
+ toc?: false | TOCOptions;
38
+ };
39
+ //#endregion
40
+ export { AutoMDPluginOptions };
@@ -0,0 +1,33 @@
1
+ //#region ../plugin-automd/src/types/toc.d.ts
2
+ interface TOCOptions {
3
+ /**
4
+ * A slugify function to generate slugs for the headings.
5
+ */
6
+ slugify?: (str: string) => string;
7
+ /**
8
+ * The maximum depth of headings to include in the TOC.
9
+ *
10
+ * @defaultValue 6
11
+ */
12
+ maxDepth?: number;
13
+ /**
14
+ * Whether to include the first H1 heading in the TOC.
15
+ */
16
+ firstH1?: boolean;
17
+ /**
18
+ * The bullet character to use for list items in the TOC.
19
+ *
20
+ * @defaultValue "-"
21
+ */
22
+ bullets?: string;
23
+ /**
24
+ * A prefix to add to each heading in the TOC.
25
+ */
26
+ prefix?: string;
27
+ /**
28
+ * A filter function to determine which headings to include in the TOC.
29
+ */
30
+ filter?: (str: string, level: number) => boolean;
31
+ }
32
+ //#endregion
33
+ export { TOCOptions };
@@ -0,0 +1,33 @@
1
+ //#region ../plugin-automd/src/types/toc.d.ts
2
+ interface TOCOptions {
3
+ /**
4
+ * A slugify function to generate slugs for the headings.
5
+ */
6
+ slugify?: (str: string) => string;
7
+ /**
8
+ * The maximum depth of headings to include in the TOC.
9
+ *
10
+ * @defaultValue 6
11
+ */
12
+ maxDepth?: number;
13
+ /**
14
+ * Whether to include the first H1 heading in the TOC.
15
+ */
16
+ firstH1?: boolean;
17
+ /**
18
+ * The bullet character to use for list items in the TOC.
19
+ *
20
+ * @defaultValue "-"
21
+ */
22
+ bullets?: string;
23
+ /**
24
+ * A prefix to add to each heading in the TOC.
25
+ */
26
+ prefix?: string;
27
+ /**
28
+ * A filter function to determine which headings to include in the TOC.
29
+ */
30
+ filter?: (str: string, level: number) => boolean;
31
+ }
32
+ //#endregion
33
+ export { TOCOptions };
@@ -1 +1 @@
1
- const e=require(`../../_virtual/rolldown_runtime.cjs`),t=require(`./helpers/filters.cjs`),n=require(`./helpers/options.cjs`),r=require(`./helpers/create-plugin.cjs`),i=require(`./helpers/module-helpers.cjs`);require(`./helpers/index.cjs`);let a=require(`@storm-software/config-tools/types`),o=require(`@stryke/path/is-parent-path`),s=require(`@stryke/type-checks/is-set-object`),c=require(`@babel/core`),l=require(`@stryke/path/file-path-fns`),u=require(`defu`);u=e.__toESM(u);const d=(e={})=>({name:`babel`,config(){if((0,s.isSetObject)(e))return{transform:{babel:e}}},configResolved:{order:`pre`,handler(){this.devDependencies[`@babel/core`]=`^7.28.4`,this.config.transform.babel=(0,u.default)(this.config.transform.babel??{},{plugins:[],presets:[]})}},async transform(r,i){if((0,o.isParentPath)(i,this.powerlinesPath)||r.includes(`/* @storm-ignore */`)||r.includes(`/* @storm-disable */`))return this.log(a.LogLevelLabel.TRACE,`Skipping Babel transformation for: ${i}`),{code:r,id:i};this.log(a.LogLevelLabel.TRACE,`Babel transforming file: ${i}`);let s=this.config.transform.babel.plugins.map(e=>n.resolveBabelPlugin(this,r,i,e)).filter((e,n,r)=>e&&!t.isDuplicatePlugin(r,e)),d=this.config.transform.babel.presets.map(e=>n.resolveBabelPlugin(this,r,i,e)).filter((e,n,r)=>e&&!t.isDuplicatePlugin(r,e));if(Array.isArray(s)&&s.length===0&&Array.isArray(d)&&d.length===0)return{code:r,id:i};[`ts`,`cts`,`mts`,`tsx`].includes((0,l.findFileExtensionSafe)(i))&&!t.isDuplicatePlugin(s,`@babel/plugin-syntax-typescript`)&&!t.isDuplicatePlugin(d,`@babel/preset-typescript`)&&s.unshift([`@babel/plugin-syntax-typescript`,{isTSX:(0,l.findFileExtension)(i)===`.tsx`}]);let f=await(0,c.transformAsync)(r,{highlightCode:!0,code:!0,ast:!1,cloneInputAst:!1,comments:!0,sourceType:`module`,configFile:!1,babelrc:!1,envName:this.config.mode,caller:{name:this.config.framework},...this.config.transform.babel??{},filename:i,plugins:s.map(t=>Array.isArray(t)&&t.length>=2?[t[0],(0,u.default)(t.length>1&&t[1]?t[1]:{},{options:e})]:t).filter(Boolean),presets:d.map(t=>Array.isArray(t)&&t.length>=2?[t[0],(0,u.default)(t.length>1&&t[1]?t[1]:{},{options:e})]:t).filter(Boolean)});if(!f?.code)throw Error(`Powerlines - Babel plugin failed to compile ${i}`);return{code:f.code,id:i}}});var f=d;exports.default=f;
1
+ const e=require(`../../_virtual/rolldown_runtime.cjs`),t=require(`./helpers/filters.cjs`),n=require(`./helpers/options.cjs`),r=require(`./helpers/create-plugin.cjs`),i=require(`./helpers/module-helpers.cjs`);require(`./helpers/index.cjs`);let a=require(`@storm-software/config-tools/types`),o=require(`@stryke/path/is-parent-path`),s=require(`@stryke/type-checks/is-set-object`),c=require(`defu`);c=e.__toESM(c);let l=require(`@babel/core`),u=require(`@stryke/path/file-path-fns`);const d=(e={})=>({name:`babel`,config(){if((0,s.isSetObject)(e))return{transform:{babel:e}}},configResolved:{order:`pre`,handler(){this.devDependencies[`@babel/core`]=`^7.28.4`,this.config.transform.babel=(0,c.default)(this.config.transform.babel??{},{plugins:[],presets:[]})}},async transform(r,i){if((0,o.isParentPath)(i,this.powerlinesPath)||r.includes(`/* @storm-ignore */`)||r.includes(`/* @storm-disable */`))return this.log(a.LogLevelLabel.TRACE,`Skipping Babel transformation for: ${i}`),{code:r,id:i};this.log(a.LogLevelLabel.TRACE,`Babel transforming file: ${i}`);let s=this.config.transform.babel.plugins.map(e=>n.resolveBabelPlugin(this,r,i,e)).filter((e,n,r)=>e&&!t.isDuplicatePlugin(r,e)),d=this.config.transform.babel.presets.map(e=>n.resolveBabelPlugin(this,r,i,e)).filter((e,n,r)=>e&&!t.isDuplicatePlugin(r,e));if(Array.isArray(s)&&s.length===0&&Array.isArray(d)&&d.length===0)return{code:r,id:i};[`ts`,`cts`,`mts`,`tsx`].includes((0,u.findFileExtensionSafe)(i))&&!t.isDuplicatePlugin(s,`@babel/plugin-syntax-typescript`)&&!t.isDuplicatePlugin(d,`@babel/preset-typescript`)&&s.unshift([`@babel/plugin-syntax-typescript`,{isTSX:(0,u.findFileExtension)(i)===`.tsx`}]);let f=await(0,l.transformAsync)(r,{highlightCode:!0,code:!0,ast:!1,cloneInputAst:!1,comments:!0,sourceType:`module`,configFile:!1,babelrc:!1,envName:this.config.mode,caller:{name:this.config.framework},...this.config.transform.babel??{},filename:i,plugins:s.map(t=>Array.isArray(t)&&t.length>=2?[t[0],(0,c.default)(t.length>1&&t[1]?t[1]:{},{options:e})]:t).filter(Boolean),presets:d.map(t=>Array.isArray(t)&&t.length>=2?[t[0],(0,c.default)(t.length>1&&t[1]?t[1]:{},{options:e})]:t).filter(Boolean)});if(!f?.code)throw Error(`Powerlines - Babel plugin failed to compile ${i}`);return{code:f.code,id:i}}});var f=d;exports.default=f;
@@ -1 +1 @@
1
- import{getPluginName as e,isDuplicatePlugin as t}from"./helpers/filters.mjs";import{resolveBabelPlugin as n,resolvePluginFunction as r}from"./helpers/options.mjs";import{createBabelPlugin as i}from"./helpers/create-plugin.mjs";import{addImport as a,addImportsToProgram as o}from"./helpers/module-helpers.mjs";import"./helpers/index.mjs";import{LogLevelLabel as s}from"@storm-software/config-tools/types";import{isParentPath as c}from"@stryke/path/is-parent-path";import{isSetObject as l}from"@stryke/type-checks/is-set-object";import{transformAsync as u}from"@babel/core";import{findFileExtension as d,findFileExtensionSafe as f}from"@stryke/path/file-path-fns";import p from"defu";var m=(e={})=>({name:`babel`,config(){if(l(e))return{transform:{babel:e}}},configResolved:{order:`pre`,handler(){this.devDependencies[`@babel/core`]=`^7.28.4`,this.config.transform.babel=p(this.config.transform.babel??{},{plugins:[],presets:[]})}},async transform(r,i){if(c(i,this.powerlinesPath)||r.includes(`/* @storm-ignore */`)||r.includes(`/* @storm-disable */`))return this.log(s.TRACE,`Skipping Babel transformation for: ${i}`),{code:r,id:i};this.log(s.TRACE,`Babel transforming file: ${i}`);let a=this.config.transform.babel.plugins.map(e=>n(this,r,i,e)).filter((e,n,r)=>e&&!t(r,e)),o=this.config.transform.babel.presets.map(e=>n(this,r,i,e)).filter((e,n,r)=>e&&!t(r,e));if(Array.isArray(a)&&a.length===0&&Array.isArray(o)&&o.length===0)return{code:r,id:i};[`ts`,`cts`,`mts`,`tsx`].includes(f(i))&&!t(a,`@babel/plugin-syntax-typescript`)&&!t(o,`@babel/preset-typescript`)&&a.unshift([`@babel/plugin-syntax-typescript`,{isTSX:d(i)===`.tsx`}]);let l=await u(r,{highlightCode:!0,code:!0,ast:!1,cloneInputAst:!1,comments:!0,sourceType:`module`,configFile:!1,babelrc:!1,envName:this.config.mode,caller:{name:this.config.framework},...this.config.transform.babel??{},filename:i,plugins:a.map(t=>Array.isArray(t)&&t.length>=2?[t[0],p(t.length>1&&t[1]?t[1]:{},{options:e})]:t).filter(Boolean),presets:o.map(t=>Array.isArray(t)&&t.length>=2?[t[0],p(t.length>1&&t[1]?t[1]:{},{options:e})]:t).filter(Boolean)});if(!l?.code)throw Error(`Powerlines - Babel plugin failed to compile ${i}`);return{code:l.code,id:i}}});export{m as default};
1
+ import{getPluginName as e,isDuplicatePlugin as t}from"./helpers/filters.mjs";import{resolveBabelPlugin as n,resolvePluginFunction as r}from"./helpers/options.mjs";import{createBabelPlugin as i}from"./helpers/create-plugin.mjs";import{addImport as a,addImportsToProgram as o}from"./helpers/module-helpers.mjs";import"./helpers/index.mjs";import{LogLevelLabel as s}from"@storm-software/config-tools/types";import{isParentPath as c}from"@stryke/path/is-parent-path";import{isSetObject as l}from"@stryke/type-checks/is-set-object";import u from"defu";import{transformAsync as d}from"@babel/core";import{findFileExtension as f,findFileExtensionSafe as p}from"@stryke/path/file-path-fns";var m=(e={})=>({name:`babel`,config(){if(l(e))return{transform:{babel:e}}},configResolved:{order:`pre`,handler(){this.devDependencies[`@babel/core`]=`^7.28.4`,this.config.transform.babel=u(this.config.transform.babel??{},{plugins:[],presets:[]})}},async transform(r,i){if(c(i,this.powerlinesPath)||r.includes(`/* @storm-ignore */`)||r.includes(`/* @storm-disable */`))return this.log(s.TRACE,`Skipping Babel transformation for: ${i}`),{code:r,id:i};this.log(s.TRACE,`Babel transforming file: ${i}`);let a=this.config.transform.babel.plugins.map(e=>n(this,r,i,e)).filter((e,n,r)=>e&&!t(r,e)),o=this.config.transform.babel.presets.map(e=>n(this,r,i,e)).filter((e,n,r)=>e&&!t(r,e));if(Array.isArray(a)&&a.length===0&&Array.isArray(o)&&o.length===0)return{code:r,id:i};[`ts`,`cts`,`mts`,`tsx`].includes(p(i))&&!t(a,`@babel/plugin-syntax-typescript`)&&!t(o,`@babel/preset-typescript`)&&a.unshift([`@babel/plugin-syntax-typescript`,{isTSX:f(i)===`.tsx`}]);let l=await d(r,{highlightCode:!0,code:!0,ast:!1,cloneInputAst:!1,comments:!0,sourceType:`module`,configFile:!1,babelrc:!1,envName:this.config.mode,caller:{name:this.config.framework},...this.config.transform.babel??{},filename:i,plugins:a.map(t=>Array.isArray(t)&&t.length>=2?[t[0],u(t.length>1&&t[1]?t[1]:{},{options:e})]:t).filter(Boolean),presets:o.map(t=>Array.isArray(t)&&t.length>=2?[t[0],u(t.length>1&&t[1]?t[1]:{},{options:e})]:t).filter(Boolean)});if(!l?.code)throw Error(`Powerlines - Babel plugin failed to compile ${i}`);return{code:l.code,id:i}}});export{m as default};
@@ -0,0 +1 @@
1
+ const e=require(`../../../_virtual/rolldown_runtime.cjs`);let t=require(`@stryke/path/join-paths`),n=require(`automd`);const r=e=>(0,n.defineGenerator)({name:`env`,async generate(){let n=(0,t.joinPaths)(e.config.projectRoot,`docs`,`generated`,`env.md`);return e.fs.existsSync(n)?{contents:await e.fs.read(n)||``}:{contents:``}}});exports.env=r;
@@ -0,0 +1 @@
1
+ import{joinPaths as e}from"@stryke/path/join-paths";import{defineGenerator as t}from"automd";const n=n=>t({name:`env`,async generate(){let t=e(n.config.projectRoot,`docs`,`generated`,`env.md`);return n.fs.existsSync(t)?{contents:await n.fs.read(t)||``}:{contents:``}}});export{n as env};
@@ -1 +1 @@
1
- const e=require(`../../../_virtual/rolldown_runtime.cjs`),t=require(`./source-file-env.cjs`);let n=require(`@stryke/type-checks/is-set-string`),r=require(`@stryke/type-checks/is-set-object`),i=require(`defu`);i=e.__toESM(i);let a=require(`@stryke/path/join-paths`),o=require(`@stryke/env/load-env`),s=require(`@stryke/string-format/kebab-case`),c=require(`c12`);async function l(e,n,r){let a=await(0,o.loadEnv)(r,n);if(e.additionalFiles&&e.additionalFiles?.length>0){let t=await Promise.all(e.additionalFiles.map(async e=>(0,o.loadEnvFile)(e,r)));for(let e of t)a=(0,i.default)(e,a)}return t.removeEnvPrefix(a)}async function u(e,t,n,r,o,s){let[u,d]=await Promise.all([l(e,n,t),(0,c.loadConfig)({cwd:t,name:`storm`,envName:n,defaults:{NAME:o.name?.replace(`@${s.namespace}/`,``),MODE:n,ORG:s.organization},globalRc:!0,packageJson:!0,dotenv:!0,jitiOptions:{fsCache:(0,a.joinPaths)(r,`jiti`),moduleCache:!0}})]);return(0,i.default)(u,d.config,s)}function d(e,t){return(0,i.default)({APP_NAME:(0,s.kebabCase)(e.config.name||e.packageJson.name?.replace(`/${e.workspaceConfig.namespace}`,``)),APP_VERSION:e.packageJson.version,BUILD_ID:e.meta.buildId,BUILD_TIMESTAMP:new Date(e.meta.timestamp).toISOString(),BUILD_CHECKSUM:e.meta.checksum,RELEASE_ID:e.meta.releaseId,RELEASE_TAG:`${(0,s.kebabCase)(e.config.name)}@${e.packageJson.version}`,DEFAULT_LOCALE:e.workspaceConfig.locale,DEFAULT_TIMEZONE:e.workspaceConfig.timezone,LOG_LEVEL:e.config.logLevel,ERROR_URL:e.workspaceConfig.error?.url,ORGANIZATION:(0,n.isSetString)(e.workspaceConfig.organization)?e.workspaceConfig.organization:e.workspaceConfig.organization?.name,PLATFORM:e.config.build.platform,MODE:e.workspaceConfig.mode,DEBUG:e.workspaceConfig.mode===`development`,STACKTRACE:e.workspaceConfig.mode===`development`,ENVIRONMENT:e.environment},(0,r.isSetObject)(e?.env?.types?.env)?e.env.types.env?.getProperties().reduce((e,n)=>(e[n.name]=t[n.name]??n.getDefaultValue(),e),{}):{})}async function f(e,t){let[n,r,a]=await Promise.all([u(t,e.config.projectRoot,e.config.mode,e.cachePath,e.packageJson,e.workspaceConfig),u(t,e.workspaceConfig.workspaceRoot,e.config.mode,e.cachePath,e.packageJson,e.workspaceConfig),u(t,e.envPaths.config,e.config.mode,e.cachePath,e.packageJson,e.workspaceConfig)]);return(0,i.default)(d(e,process.env),n,r,a)}exports.loadEnv=f,exports.loadEnvFromContext=d;
1
+ const e=require(`../../../_virtual/rolldown_runtime.cjs`),t=require(`./source-file-env.cjs`);let n=require(`@stryke/type-checks/is-set-string`),r=require(`@stryke/type-checks/is-set-object`),i=require(`@stryke/path/join-paths`),a=require(`c12`),o=require(`defu`);o=e.__toESM(o);let s=require(`@stryke/env/load-env`),c=require(`@stryke/string-format/kebab-case`);async function l(e,n,r){let i=await(0,s.loadEnv)(r,n);if(e.additionalFiles&&e.additionalFiles?.length>0){let t=await Promise.all(e.additionalFiles.map(async e=>(0,s.loadEnvFile)(e,r)));for(let e of t)i=(0,o.default)(e,i)}return t.removeEnvPrefix(i)}async function u(e,t,n,r,s,c){let[u,d]=await Promise.all([l(e,n,t),(0,a.loadConfig)({cwd:t,name:`storm`,envName:n,defaults:{NAME:s.name?.replace(`@${c.namespace}/`,``),MODE:n,ORG:c.organization},globalRc:!0,packageJson:!0,dotenv:!0,jitiOptions:{fsCache:(0,i.joinPaths)(r,`jiti`),moduleCache:!0}})]);return(0,o.default)(u,d.config,c)}function d(e,t){return(0,o.default)({APP_NAME:(0,c.kebabCase)(e.config.name||e.packageJson.name?.replace(`/${e.workspaceConfig.namespace}`,``)),APP_VERSION:e.packageJson.version,BUILD_ID:e.meta.buildId,BUILD_TIMESTAMP:new Date(e.meta.timestamp).toISOString(),BUILD_CHECKSUM:e.meta.checksum,RELEASE_ID:e.meta.releaseId,RELEASE_TAG:`${(0,c.kebabCase)(e.config.name)}@${e.packageJson.version}`,DEFAULT_LOCALE:e.workspaceConfig.locale,DEFAULT_TIMEZONE:e.workspaceConfig.timezone,LOG_LEVEL:e.config.logLevel,ERROR_URL:e.workspaceConfig.error?.url,ORGANIZATION:(0,n.isSetString)(e.workspaceConfig.organization)?e.workspaceConfig.organization:e.workspaceConfig.organization?.name,PLATFORM:e.config.build.platform,MODE:e.workspaceConfig.mode,DEBUG:e.workspaceConfig.mode===`development`,STACKTRACE:e.workspaceConfig.mode===`development`,ENVIRONMENT:e.environment},(0,r.isSetObject)(e?.env?.types?.env)?e.env.types.env?.getProperties().reduce((e,n)=>(e[n.name]=t[n.name]??n.getDefaultValue(),e),{}):{})}async function f(e,t){let[n,r,i]=await Promise.all([u(t,e.config.projectRoot,e.config.mode,e.cachePath,e.packageJson,e.workspaceConfig),u(t,e.workspaceConfig.workspaceRoot,e.config.mode,e.cachePath,e.packageJson,e.workspaceConfig),u(t,e.envPaths.config,e.config.mode,e.cachePath,e.packageJson,e.workspaceConfig)]);return(0,o.default)(d(e,process.env),n,r,i)}exports.loadEnv=f,exports.loadEnvFromContext=d;
@@ -1 +1 @@
1
- import{removeEnvPrefix as e}from"./source-file-env.mjs";import{isSetString as t}from"@stryke/type-checks/is-set-string";import{isSetObject as n}from"@stryke/type-checks/is-set-object";import r from"defu";import{joinPaths as i}from"@stryke/path/join-paths";import{loadEnv as a,loadEnvFile as o}from"@stryke/env/load-env";import{kebabCase as s}from"@stryke/string-format/kebab-case";import{loadConfig as c}from"c12";async function l(t,n,i){let s=await a(i,n);if(t.additionalFiles&&t.additionalFiles?.length>0){let e=await Promise.all(t.additionalFiles.map(async e=>o(e,i)));for(let t of e)s=r(t,s)}return e(s)}async function u(e,t,n,a,o,s){let[u,d]=await Promise.all([l(e,n,t),c({cwd:t,name:`storm`,envName:n,defaults:{NAME:o.name?.replace(`@${s.namespace}/`,``),MODE:n,ORG:s.organization},globalRc:!0,packageJson:!0,dotenv:!0,jitiOptions:{fsCache:i(a,`jiti`),moduleCache:!0}})]);return r(u,d.config,s)}function d(e,i){return r({APP_NAME:s(e.config.name||e.packageJson.name?.replace(`/${e.workspaceConfig.namespace}`,``)),APP_VERSION:e.packageJson.version,BUILD_ID:e.meta.buildId,BUILD_TIMESTAMP:new Date(e.meta.timestamp).toISOString(),BUILD_CHECKSUM:e.meta.checksum,RELEASE_ID:e.meta.releaseId,RELEASE_TAG:`${s(e.config.name)}@${e.packageJson.version}`,DEFAULT_LOCALE:e.workspaceConfig.locale,DEFAULT_TIMEZONE:e.workspaceConfig.timezone,LOG_LEVEL:e.config.logLevel,ERROR_URL:e.workspaceConfig.error?.url,ORGANIZATION:t(e.workspaceConfig.organization)?e.workspaceConfig.organization:e.workspaceConfig.organization?.name,PLATFORM:e.config.build.platform,MODE:e.workspaceConfig.mode,DEBUG:e.workspaceConfig.mode===`development`,STACKTRACE:e.workspaceConfig.mode===`development`,ENVIRONMENT:e.environment},n(e?.env?.types?.env)?e.env.types.env?.getProperties().reduce((e,t)=>(e[t.name]=i[t.name]??t.getDefaultValue(),e),{}):{})}async function f(e,t){let[n,i,a]=await Promise.all([u(t,e.config.projectRoot,e.config.mode,e.cachePath,e.packageJson,e.workspaceConfig),u(t,e.workspaceConfig.workspaceRoot,e.config.mode,e.cachePath,e.packageJson,e.workspaceConfig),u(t,e.envPaths.config,e.config.mode,e.cachePath,e.packageJson,e.workspaceConfig)]);return r(d(e,process.env),n,i,a)}export{f as loadEnv,d as loadEnvFromContext};
1
+ import{removeEnvPrefix as e}from"./source-file-env.mjs";import{isSetString as t}from"@stryke/type-checks/is-set-string";import{isSetObject as n}from"@stryke/type-checks/is-set-object";import{joinPaths as r}from"@stryke/path/join-paths";import{loadConfig as i}from"c12";import a from"defu";import{loadEnv as o,loadEnvFile as s}from"@stryke/env/load-env";import{kebabCase as c}from"@stryke/string-format/kebab-case";async function l(t,n,r){let i=await o(r,n);if(t.additionalFiles&&t.additionalFiles?.length>0){let e=await Promise.all(t.additionalFiles.map(async e=>s(e,r)));for(let t of e)i=a(t,i)}return e(i)}async function u(e,t,n,o,s,c){let[u,d]=await Promise.all([l(e,n,t),i({cwd:t,name:`storm`,envName:n,defaults:{NAME:s.name?.replace(`@${c.namespace}/`,``),MODE:n,ORG:c.organization},globalRc:!0,packageJson:!0,dotenv:!0,jitiOptions:{fsCache:r(o,`jiti`),moduleCache:!0}})]);return a(u,d.config,c)}function d(e,r){return a({APP_NAME:c(e.config.name||e.packageJson.name?.replace(`/${e.workspaceConfig.namespace}`,``)),APP_VERSION:e.packageJson.version,BUILD_ID:e.meta.buildId,BUILD_TIMESTAMP:new Date(e.meta.timestamp).toISOString(),BUILD_CHECKSUM:e.meta.checksum,RELEASE_ID:e.meta.releaseId,RELEASE_TAG:`${c(e.config.name)}@${e.packageJson.version}`,DEFAULT_LOCALE:e.workspaceConfig.locale,DEFAULT_TIMEZONE:e.workspaceConfig.timezone,LOG_LEVEL:e.config.logLevel,ERROR_URL:e.workspaceConfig.error?.url,ORGANIZATION:t(e.workspaceConfig.organization)?e.workspaceConfig.organization:e.workspaceConfig.organization?.name,PLATFORM:e.config.build.platform,MODE:e.workspaceConfig.mode,DEBUG:e.workspaceConfig.mode===`development`,STACKTRACE:e.workspaceConfig.mode===`development`,ENVIRONMENT:e.environment},n(e?.env?.types?.env)?e.env.types.env?.getProperties().reduce((e,t)=>(e[t.name]=r[t.name]??t.getDefaultValue(),e),{}):{})}async function f(e,t){let[n,r,i]=await Promise.all([u(t,e.config.projectRoot,e.config.mode,e.cachePath,e.packageJson,e.workspaceConfig),u(t,e.workspaceConfig.workspaceRoot,e.config.mode,e.cachePath,e.packageJson,e.workspaceConfig),u(t,e.envPaths.config,e.config.mode,e.cachePath,e.packageJson,e.workspaceConfig)]);return a(d(e,process.env),n,r,i)}export{f as loadEnv,d as loadEnvFromContext};
@@ -1 +1 @@
1
- const e=require(`../../../_virtual/rolldown_runtime.cjs`),t=require(`../../../deepkit/src/vendor/type.cjs`),n=require(`../../../deepkit/src/capnp.cjs`),r=require(`../../../deepkit/schemas/reflection2.cjs`),i=require(`../../../deepkit/src/resolve-reflections.cjs`),a=require(`./reflect.cjs`);let o=require(`@stryke/capnp`);o=e.__toESM(o);let s=require(`@stryke/fs/buffer`),c=require(`node:fs`),l=require(`@stryke/path/join-paths`),u=require(`@stryke/fs/resolve`),d=require(`@stryke/type-checks/is-empty-object`);async function f(e){return(0,u.resolvePackage)(`@powerlines/plugin-env/types/runtime`,{paths:[e.workspaceConfig.workspaceRoot,(0,l.joinPaths)(e.workspaceConfig.workspaceRoot,e.config.projectRoot)]})}async function p(e){return{file:await f(e),name:`EnvInterface`}}async function m(e){return{file:await f(e),name:`SecretsInterface`}}function h(e,t=`env`){return(0,l.joinPaths)(i.getReflectionsPath(e),`env`,`${t}-types.bin`)}async function g(e,i=`env`){let l=h(e,i);if(!(0,c.existsSync)(l)){if(!e.env.types.env||(0,d.isEmptyObject)(e.env.types.env)){let t=a.createEnvReflection(e),n=new o.Message;t.messageRoot=n.initRoot(r.SerializedTypes),t.dataBuffer=n.toArrayBuffer(),e.env.types.env=t,await _(e,e.env.types.env,i)}return e.env.types.env}let u=await(0,s.readFileBuffer)(l),f=new o.Message(u,!1).getRoot(r.SerializedTypes),p=(0,t.type_exports.resolveClassType)((0,t.type_exports.deserializeType)(n.convertFromCapnp(f.types)));return e.env.types[i]=p,e.env.types[i].messageRoot=f,e.env.types[i].dataBuffer=u,p}async function _(e,t,i=`env`){let a=t.serializeType(),c=new o.Message;n.convertToCapnp(a,c.initRoot(r.SerializedTypes)._initTypes(a.length)),await(0,s.writeFileBuffer)(h(e,i),c.toArrayBuffer())}function v(e,t){return(0,l.joinPaths)(i.getReflectionsPath(e),`env`,`${t}.bin`)}async function y(e){let i=v(e,`env`);if(!(0,c.existsSync)(i)){if(e.env.types.env||(e.env.types.env=await g(e,`env`)),!e.env.used.env||(0,d.isEmptyObject)(e.env.used.env)){let n=a.createEnvReflection(e,{type:{kind:t.type_exports.ReflectionKind.objectLiteral,typeName:`Env`,description:`An object containing the environment configuration parameters that are used (at least once) by the ${e.config.name?`${e.config.name} application`:`application`}.`,types:[]},superReflection:e.env.types.env});n.name=`Env`;let i=new o.Message;n.messageRoot=i.initRoot(r.SerializedTypes),n.dataBuffer=i.toArrayBuffer(),e.env.used.env=n,await x(e,e.env.used.env,`env`)}return e.env.used.env}let l=await(0,s.readFileBuffer)(i),u=new o.Message(l,!1).getRoot(r.SerializedTypes),f=(0,t.type_exports.resolveClassType)((0,t.type_exports.deserializeType)(n.convertFromCapnp(u.types)));return e.env.used.env=f,e.env.used.env.messageRoot=u,e.env.used.env.dataBuffer=l,f}async function b(e){let i=v(e,`secrets`);if(!(0,c.existsSync)(i)){if(e.env.types.secrets||(e.env.types.secrets=await g(e,`secrets`)),!e.env.used.secrets||(0,d.isEmptyObject)(e.env.used.secrets)){let n=a.createEnvReflection(e,{type:{kind:t.type_exports.ReflectionKind.objectLiteral,typeName:`Secrets`,description:`An object containing the secret configuration parameters that are used (at least once) by the ${e.config.name?`${e.config.name} application`:`application`}.`,types:[]},superReflection:e.env.types.secrets});n.name=`Secrets`;let i=new o.Message;n.messageRoot=i.initRoot(r.SerializedTypes),n.dataBuffer=i.toArrayBuffer(),e.env.used.secrets=n,await x(e,e.env.used.secrets,`secrets`)}return e.env.used.secrets}let l=await(0,s.readFileBuffer)(i),u=new o.Message(l,!1).getRoot(r.SerializedTypes),f=(0,t.type_exports.resolveClassType)((0,t.type_exports.deserializeType)(n.convertFromCapnp(u.types)));return e.env.used.secrets=f,e.env.used.secrets.messageRoot=u,e.env.used.secrets.dataBuffer=l,f}async function x(e,t,i=`env`){let a=t.serializeType(),c=new o.Message;n.convertToCapnp(a,c.initRoot(r.SerializedTypes)._initTypes(a.length)),await(0,s.writeFileBuffer)(v(e,i),c.toArrayBuffer())}exports.getEnvDefaultTypeDefinition=p,exports.getEnvReflectionsPath=v,exports.getEnvTypeReflectionsPath=h,exports.getSecretsDefaultTypeDefinition=m,exports.readEnvReflection=y,exports.readEnvTypeReflection=g,exports.readSecretsReflection=b,exports.resolveRuntimeTypeFile=f,exports.writeEnvReflection=x,exports.writeEnvTypeReflection=_;
1
+ const e=require(`../../../_virtual/rolldown_runtime.cjs`),t=require(`../../../deepkit/src/vendor/type.cjs`),n=require(`../../../deepkit/src/capnp.cjs`),r=require(`../../../deepkit/schemas/reflection2.cjs`),i=require(`../../../deepkit/src/resolve-reflections.cjs`),a=require(`./reflect.cjs`);let o=require(`@stryke/path/join-paths`),s=require(`@stryke/capnp`);s=e.__toESM(s);let c=require(`@stryke/fs/buffer`),l=require(`node:fs`),u=require(`@stryke/fs/resolve`),d=require(`@stryke/type-checks/is-empty-object`);async function f(e){return(0,u.resolvePackage)(`@powerlines/plugin-env/types/runtime`,{paths:[e.workspaceConfig.workspaceRoot,(0,o.joinPaths)(e.workspaceConfig.workspaceRoot,e.config.projectRoot)]})}async function p(e){return{file:await f(e),name:`EnvInterface`}}async function m(e){return{file:await f(e),name:`SecretsInterface`}}function h(e,t=`env`){return(0,o.joinPaths)(i.getReflectionsPath(e),`env`,`${t}-types.bin`)}async function g(e,i=`env`){let o=h(e,i);if(!(0,l.existsSync)(o)){if(!e.env.types.env||(0,d.isEmptyObject)(e.env.types.env)){let t=a.createEnvReflection(e),n=new s.Message;t.messageRoot=n.initRoot(r.SerializedTypes),t.dataBuffer=n.toArrayBuffer(),e.env.types.env=t,await _(e,e.env.types.env,i)}return e.env.types.env}let u=await(0,c.readFileBuffer)(o),f=new s.Message(u,!1).getRoot(r.SerializedTypes),p=(0,t.type_exports.resolveClassType)((0,t.type_exports.deserializeType)(n.convertFromCapnp(f.types)));return e.env.types[i]=p,e.env.types[i].messageRoot=f,e.env.types[i].dataBuffer=u,p}async function _(e,t,i=`env`){let a=t.serializeType(),o=new s.Message;n.convertToCapnp(a,o.initRoot(r.SerializedTypes)._initTypes(a.length)),await(0,c.writeFileBuffer)(h(e,i),o.toArrayBuffer())}function v(e,t){return(0,o.joinPaths)(i.getReflectionsPath(e),`env`,`${t}.bin`)}async function y(e){let i=v(e,`env`);if(!(0,l.existsSync)(i)){if(e.env.types.env||(e.env.types.env=await g(e,`env`)),!e.env.used.env||(0,d.isEmptyObject)(e.env.used.env)){let n=a.createEnvReflection(e,{type:{kind:t.type_exports.ReflectionKind.objectLiteral,typeName:`Env`,description:`An object containing the environment configuration parameters that are used (at least once) by the ${e.config.name?`${e.config.name} application`:`application`}.`,types:[]},superReflection:e.env.types.env});n.name=`Env`;let i=new s.Message;n.messageRoot=i.initRoot(r.SerializedTypes),n.dataBuffer=i.toArrayBuffer(),e.env.used.env=n,await x(e,e.env.used.env,`env`)}return e.env.used.env}let o=await(0,c.readFileBuffer)(i),u=new s.Message(o,!1).getRoot(r.SerializedTypes),f=(0,t.type_exports.resolveClassType)((0,t.type_exports.deserializeType)(n.convertFromCapnp(u.types)));return e.env.used.env=f,e.env.used.env.messageRoot=u,e.env.used.env.dataBuffer=o,f}async function b(e){let i=v(e,`secrets`);if(!(0,l.existsSync)(i)){if(e.env.types.secrets||(e.env.types.secrets=await g(e,`secrets`)),!e.env.used.secrets||(0,d.isEmptyObject)(e.env.used.secrets)){let n=a.createEnvReflection(e,{type:{kind:t.type_exports.ReflectionKind.objectLiteral,typeName:`Secrets`,description:`An object containing the secret configuration parameters that are used (at least once) by the ${e.config.name?`${e.config.name} application`:`application`}.`,types:[]},superReflection:e.env.types.secrets});n.name=`Secrets`;let i=new s.Message;n.messageRoot=i.initRoot(r.SerializedTypes),n.dataBuffer=i.toArrayBuffer(),e.env.used.secrets=n,await x(e,e.env.used.secrets,`secrets`)}return e.env.used.secrets}let o=await(0,c.readFileBuffer)(i),u=new s.Message(o,!1).getRoot(r.SerializedTypes),f=(0,t.type_exports.resolveClassType)((0,t.type_exports.deserializeType)(n.convertFromCapnp(u.types)));return e.env.used.secrets=f,e.env.used.secrets.messageRoot=u,e.env.used.secrets.dataBuffer=o,f}async function x(e,t,i=`env`){let a=t.serializeType(),o=new s.Message;n.convertToCapnp(a,o.initRoot(r.SerializedTypes)._initTypes(a.length)),await(0,c.writeFileBuffer)(v(e,i),o.toArrayBuffer())}exports.getEnvDefaultTypeDefinition=p,exports.getEnvReflectionsPath=v,exports.getEnvTypeReflectionsPath=h,exports.getSecretsDefaultTypeDefinition=m,exports.readEnvReflection=y,exports.readEnvTypeReflection=g,exports.readSecretsReflection=b,exports.resolveRuntimeTypeFile=f,exports.writeEnvReflection=x,exports.writeEnvTypeReflection=_;
@@ -1 +1 @@
1
- import{type_exports as e}from"../../../deepkit/src/vendor/type.mjs";import{convertFromCapnp as t,convertToCapnp as n}from"../../../deepkit/src/capnp.mjs";import{SerializedTypes as r}from"../../../deepkit/schemas/reflection2.mjs";import{getReflectionsPath as i}from"../../../deepkit/src/resolve-reflections.mjs";import{createEnvReflection as a}from"./reflect.mjs";import*as o from"@stryke/capnp";import{readFileBuffer as s,writeFileBuffer as c}from"@stryke/fs/buffer";import{existsSync as l}from"node:fs";import{joinPaths as u}from"@stryke/path/join-paths";import{resolvePackage as d}from"@stryke/fs/resolve";import{isEmptyObject as f}from"@stryke/type-checks/is-empty-object";async function p(e){return d(`@powerlines/plugin-env/types/runtime`,{paths:[e.workspaceConfig.workspaceRoot,u(e.workspaceConfig.workspaceRoot,e.config.projectRoot)]})}async function m(e){return{file:await p(e),name:`EnvInterface`}}async function h(e){return{file:await p(e),name:`SecretsInterface`}}function g(e,t=`env`){return u(i(e),`env`,`${t}-types.bin`)}async function _(n,i=`env`){let c=g(n,i);if(!l(c)){if(!n.env.types.env||f(n.env.types.env)){let e=a(n),t=new o.Message;e.messageRoot=t.initRoot(r),e.dataBuffer=t.toArrayBuffer(),n.env.types.env=e,await v(n,n.env.types.env,i)}return n.env.types.env}let u=await s(c),d=new o.Message(u,!1).getRoot(r),p=(0,e.resolveClassType)((0,e.deserializeType)(t(d.types)));return n.env.types[i]=p,n.env.types[i].messageRoot=d,n.env.types[i].dataBuffer=u,p}async function v(e,t,i=`env`){let a=t.serializeType(),s=new o.Message;n(a,s.initRoot(r)._initTypes(a.length)),await c(g(e,i),s.toArrayBuffer())}function y(e,t){return u(i(e),`env`,`${t}.bin`)}async function b(n){let i=y(n,`env`);if(!l(i)){if(n.env.types.env||(n.env.types.env=await _(n,`env`)),!n.env.used.env||f(n.env.used.env)){let t=a(n,{type:{kind:e.ReflectionKind.objectLiteral,typeName:`Env`,description:`An object containing the environment configuration parameters that are used (at least once) by the ${n.config.name?`${n.config.name} application`:`application`}.`,types:[]},superReflection:n.env.types.env});t.name=`Env`;let i=new o.Message;t.messageRoot=i.initRoot(r),t.dataBuffer=i.toArrayBuffer(),n.env.used.env=t,await S(n,n.env.used.env,`env`)}return n.env.used.env}let c=await s(i),u=new o.Message(c,!1).getRoot(r),d=(0,e.resolveClassType)((0,e.deserializeType)(t(u.types)));return n.env.used.env=d,n.env.used.env.messageRoot=u,n.env.used.env.dataBuffer=c,d}async function x(n){let i=y(n,`secrets`);if(!l(i)){if(n.env.types.secrets||(n.env.types.secrets=await _(n,`secrets`)),!n.env.used.secrets||f(n.env.used.secrets)){let t=a(n,{type:{kind:e.ReflectionKind.objectLiteral,typeName:`Secrets`,description:`An object containing the secret configuration parameters that are used (at least once) by the ${n.config.name?`${n.config.name} application`:`application`}.`,types:[]},superReflection:n.env.types.secrets});t.name=`Secrets`;let i=new o.Message;t.messageRoot=i.initRoot(r),t.dataBuffer=i.toArrayBuffer(),n.env.used.secrets=t,await S(n,n.env.used.secrets,`secrets`)}return n.env.used.secrets}let c=await s(i),u=new o.Message(c,!1).getRoot(r),d=(0,e.resolveClassType)((0,e.deserializeType)(t(u.types)));return n.env.used.secrets=d,n.env.used.secrets.messageRoot=u,n.env.used.secrets.dataBuffer=c,d}async function S(e,t,i=`env`){let a=t.serializeType(),s=new o.Message;n(a,s.initRoot(r)._initTypes(a.length)),await c(y(e,i),s.toArrayBuffer())}export{m as getEnvDefaultTypeDefinition,y as getEnvReflectionsPath,g as getEnvTypeReflectionsPath,h as getSecretsDefaultTypeDefinition,b as readEnvReflection,_ as readEnvTypeReflection,x as readSecretsReflection,p as resolveRuntimeTypeFile,S as writeEnvReflection,v as writeEnvTypeReflection};
1
+ import{type_exports as e}from"../../../deepkit/src/vendor/type.mjs";import{convertFromCapnp as t,convertToCapnp as n}from"../../../deepkit/src/capnp.mjs";import{SerializedTypes as r}from"../../../deepkit/schemas/reflection2.mjs";import{getReflectionsPath as i}from"../../../deepkit/src/resolve-reflections.mjs";import{createEnvReflection as a}from"./reflect.mjs";import{joinPaths as o}from"@stryke/path/join-paths";import*as s from"@stryke/capnp";import{readFileBuffer as c,writeFileBuffer as l}from"@stryke/fs/buffer";import{existsSync as u}from"node:fs";import{resolvePackage as d}from"@stryke/fs/resolve";import{isEmptyObject as f}from"@stryke/type-checks/is-empty-object";async function p(e){return d(`@powerlines/plugin-env/types/runtime`,{paths:[e.workspaceConfig.workspaceRoot,o(e.workspaceConfig.workspaceRoot,e.config.projectRoot)]})}async function m(e){return{file:await p(e),name:`EnvInterface`}}async function h(e){return{file:await p(e),name:`SecretsInterface`}}function g(e,t=`env`){return o(i(e),`env`,`${t}-types.bin`)}async function _(n,i=`env`){let o=g(n,i);if(!u(o)){if(!n.env.types.env||f(n.env.types.env)){let e=a(n),t=new s.Message;e.messageRoot=t.initRoot(r),e.dataBuffer=t.toArrayBuffer(),n.env.types.env=e,await v(n,n.env.types.env,i)}return n.env.types.env}let l=await c(o),d=new s.Message(l,!1).getRoot(r),p=(0,e.resolveClassType)((0,e.deserializeType)(t(d.types)));return n.env.types[i]=p,n.env.types[i].messageRoot=d,n.env.types[i].dataBuffer=l,p}async function v(e,t,i=`env`){let a=t.serializeType(),o=new s.Message;n(a,o.initRoot(r)._initTypes(a.length)),await l(g(e,i),o.toArrayBuffer())}function y(e,t){return o(i(e),`env`,`${t}.bin`)}async function b(n){let i=y(n,`env`);if(!u(i)){if(n.env.types.env||(n.env.types.env=await _(n,`env`)),!n.env.used.env||f(n.env.used.env)){let t=a(n,{type:{kind:e.ReflectionKind.objectLiteral,typeName:`Env`,description:`An object containing the environment configuration parameters that are used (at least once) by the ${n.config.name?`${n.config.name} application`:`application`}.`,types:[]},superReflection:n.env.types.env});t.name=`Env`;let i=new s.Message;t.messageRoot=i.initRoot(r),t.dataBuffer=i.toArrayBuffer(),n.env.used.env=t,await S(n,n.env.used.env,`env`)}return n.env.used.env}let o=await c(i),l=new s.Message(o,!1).getRoot(r),d=(0,e.resolveClassType)((0,e.deserializeType)(t(l.types)));return n.env.used.env=d,n.env.used.env.messageRoot=l,n.env.used.env.dataBuffer=o,d}async function x(n){let i=y(n,`secrets`);if(!u(i)){if(n.env.types.secrets||(n.env.types.secrets=await _(n,`secrets`)),!n.env.used.secrets||f(n.env.used.secrets)){let t=a(n,{type:{kind:e.ReflectionKind.objectLiteral,typeName:`Secrets`,description:`An object containing the secret configuration parameters that are used (at least once) by the ${n.config.name?`${n.config.name} application`:`application`}.`,types:[]},superReflection:n.env.types.secrets});t.name=`Secrets`;let i=new s.Message;t.messageRoot=i.initRoot(r),t.dataBuffer=i.toArrayBuffer(),n.env.used.secrets=t,await S(n,n.env.used.secrets,`secrets`)}return n.env.used.secrets}let o=await c(i),l=new s.Message(o,!1).getRoot(r),d=(0,e.resolveClassType)((0,e.deserializeType)(t(l.types)));return n.env.used.secrets=d,n.env.used.secrets.messageRoot=l,n.env.used.secrets.dataBuffer=o,d}async function S(e,t,i=`env`){let a=t.serializeType(),o=new s.Message;n(a,o.initRoot(r)._initTypes(a.length)),await l(y(e,i),o.toArrayBuffer())}export{m as getEnvDefaultTypeDefinition,y as getEnvReflectionsPath,g as getEnvTypeReflectionsPath,h as getSecretsDefaultTypeDefinition,b as readEnvReflection,_ as readEnvTypeReflection,x as readSecretsReflection,p as resolveRuntimeTypeFile,S as writeEnvReflection,v as writeEnvTypeReflection};
@@ -1 +1 @@
1
- const e=require(`../../../_virtual/rolldown_runtime.cjs`),t=require(`../../../deepkit/src/vendor/type.cjs`),n=require(`../../../deepkit/src/reflect-type.cjs`),r=require(`./persistence.cjs`);let i=require(`@stryke/path/is-parent-path`),a=require(`@stryke/string-format/title-case`),o=require(`@stryke/path/join-paths`);function s(e,n){return d(e,{type:(0,t.type_exports.merge)(n.map(e=>e.type))})}function c(e,n){return f(e,{type:(0,t.type_exports.merge)(n.map(e=>e.type))})}var l=class{PLATFORM=`neutral`;MODE=`production`;DEBUG=!1;TEST=!1;MINIMAL=!1;NO_COLOR=!1;FORCE_COLOR=!1;FORCE_HYPERLINK=!1;STACKTRACE=!1;INCLUDE_ERROR_DATA=!1;CI=!1},u=class{};function d(e,n={}){let r=n.superReflection??new t.type_exports.ReflectionClass({kind:t.type_exports.ReflectionKind.class,description:`The base environment configuration definition for the ${(0,a.titleCase)(e.config.name)} project.`,classType:l,types:[],implements:[{kind:t.type_exports.ReflectionKind.objectLiteral,typeName:`EnvInterface`,description:`The environment configuration interface definition for the ${(0,a.titleCase)(e.config.name)} project.`,types:[]}]});r.name=`Env`;let i=new t.type_exports.ReflectionClass(n.type??{kind:t.type_exports.ReflectionKind.objectLiteral,typeName:`Env`,description:`A schema describing the list of available environment variables that can be used by the ${e.config.name?`${(0,a.titleCase)(e.config.name)} application`:`application`}.`,types:[]},r);return i.name=`Env`,i}function f(e,n={}){let r=n.superReflection??new t.type_exports.ReflectionClass({kind:t.type_exports.ReflectionKind.class,description:`The base secrets configuration definition for the ${(0,a.titleCase)(e.config.name)} project.`,classType:u,types:[],implements:[{kind:t.type_exports.ReflectionKind.objectLiteral,typeName:`SecretsInterface`,description:`The secrets configuration interface definition for the ${(0,a.titleCase)(e.config.name)} project.`,types:[]}]});r.name=`Secrets`;let i=new t.type_exports.ReflectionClass(n.type??{kind:t.type_exports.ReflectionKind.objectLiteral,typeName:`Secrets`,description:`A schema describing the list of available environment secrets that can be used by the ${e.config.name?`${(0,a.titleCase)(e.config.name)} application`:`application`}.`,types:[]},r);return i.name=`Secrets`,i}async function p(e,a,c){let l;a&&(l=(0,t.type_exports.resolveClassType)(await n.reflectType(e,{file:(0,i.isParentPath)(a,e.workspaceConfig.workspaceRoot)?a:(0,o.joinPaths)(e.workspaceConfig.workspaceRoot,a),name:c},{skipNodeModulesBundle:!0})));let u=await n.reflectType(e,await r.getEnvDefaultTypeDefinition(e));return s(e,[await r.readEnvTypeReflection(e,`env`),l,(0,t.type_exports.resolveClassType)(u)].filter(Boolean))}async function m(e,a,s){let l;a&&(l=(0,t.type_exports.resolveClassType)(await n.reflectType(e,{file:(0,i.isParentPath)(a,e.workspaceConfig.workspaceRoot)?a:(0,o.joinPaths)(e.workspaceConfig.workspaceRoot,a),name:s},{skipNodeModulesBundle:!0})));let u=await n.reflectType(e,await r.getSecretsDefaultTypeDefinition(e));return c(e,[await r.readSecretsReflection(e),l,(0,t.type_exports.resolveClassType)(u)].filter(Boolean))}exports.BaseEnv=l,exports.BaseSecrets=u,exports.createEnvReflection=d,exports.createSecretsReflection=f,exports.mergeEnvReflections=s,exports.mergeSecretsReflections=c,exports.reflectEnv=p,exports.reflectSecrets=m;
1
+ const e=require(`../../../_virtual/rolldown_runtime.cjs`),t=require(`../../../deepkit/src/vendor/type.cjs`),n=require(`../../../deepkit/src/reflect-type.cjs`),r=require(`./persistence.cjs`);let i=require(`@stryke/path/is-parent-path`),a=require(`@stryke/path/join-paths`),o=require(`@stryke/string-format/title-case`);function s(e,n){return d(e,{type:(0,t.type_exports.merge)(n.map(e=>e.type))})}function c(e,n){return f(e,{type:(0,t.type_exports.merge)(n.map(e=>e.type))})}var l=class{PLATFORM=`neutral`;MODE=`production`;DEBUG=!1;TEST=!1;MINIMAL=!1;NO_COLOR=!1;FORCE_COLOR=!1;FORCE_HYPERLINK=!1;STACKTRACE=!1;INCLUDE_ERROR_DATA=!1;CI=!1},u=class{};function d(e,n={}){let r=n.superReflection??new t.type_exports.ReflectionClass({kind:t.type_exports.ReflectionKind.class,description:`The base environment configuration definition for the ${(0,o.titleCase)(e.config.name)} project.`,classType:l,types:[],implements:[{kind:t.type_exports.ReflectionKind.objectLiteral,typeName:`EnvInterface`,description:`The environment configuration interface definition for the ${(0,o.titleCase)(e.config.name)} project.`,types:[]}]});r.name=`Env`;let i=new t.type_exports.ReflectionClass(n.type??{kind:t.type_exports.ReflectionKind.objectLiteral,typeName:`Env`,description:`A schema describing the list of available environment variables that can be used by the ${e.config.name?`${(0,o.titleCase)(e.config.name)} application`:`application`}.`,types:[]},r);return i.name=`Env`,i}function f(e,n={}){let r=n.superReflection??new t.type_exports.ReflectionClass({kind:t.type_exports.ReflectionKind.class,description:`The base secrets configuration definition for the ${(0,o.titleCase)(e.config.name)} project.`,classType:u,types:[],implements:[{kind:t.type_exports.ReflectionKind.objectLiteral,typeName:`SecretsInterface`,description:`The secrets configuration interface definition for the ${(0,o.titleCase)(e.config.name)} project.`,types:[]}]});r.name=`Secrets`;let i=new t.type_exports.ReflectionClass(n.type??{kind:t.type_exports.ReflectionKind.objectLiteral,typeName:`Secrets`,description:`A schema describing the list of available environment secrets that can be used by the ${e.config.name?`${(0,o.titleCase)(e.config.name)} application`:`application`}.`,types:[]},r);return i.name=`Secrets`,i}async function p(e,o,c){let l;o&&(l=(0,t.type_exports.resolveClassType)(await n.reflectType(e,{file:(0,i.isParentPath)(o,e.workspaceConfig.workspaceRoot)?o:(0,a.joinPaths)(e.workspaceConfig.workspaceRoot,o),name:c},{skipNodeModulesBundle:!0})));let u=await n.reflectType(e,await r.getEnvDefaultTypeDefinition(e));return s(e,[await r.readEnvTypeReflection(e,`env`),l,(0,t.type_exports.resolveClassType)(u)].filter(Boolean))}async function m(e,o,s){let l;o&&(l=(0,t.type_exports.resolveClassType)(await n.reflectType(e,{file:(0,i.isParentPath)(o,e.workspaceConfig.workspaceRoot)?o:(0,a.joinPaths)(e.workspaceConfig.workspaceRoot,o),name:s},{skipNodeModulesBundle:!0})));let u=await n.reflectType(e,await r.getSecretsDefaultTypeDefinition(e));return c(e,[await r.readSecretsReflection(e),l,(0,t.type_exports.resolveClassType)(u)].filter(Boolean))}exports.BaseEnv=l,exports.BaseSecrets=u,exports.createEnvReflection=d,exports.createSecretsReflection=f,exports.mergeEnvReflections=s,exports.mergeSecretsReflections=c,exports.reflectEnv=p,exports.reflectSecrets=m;
@@ -1 +1 @@
1
- import{type_exports as e}from"../../../deepkit/src/vendor/type.mjs";import{reflectType as t}from"../../../deepkit/src/reflect-type.mjs";import{getEnvDefaultTypeDefinition as n,getSecretsDefaultTypeDefinition as r,readEnvTypeReflection as i,readSecretsReflection as a}from"./persistence.mjs";import{isParentPath as o}from"@stryke/path/is-parent-path";import{titleCase as s}from"@stryke/string-format/title-case";import{joinPaths as c}from"@stryke/path/join-paths";function l(t,n){return p(t,{type:(0,e.merge)(n.map(e=>e.type))})}function u(t,n){return m(t,{type:(0,e.merge)(n.map(e=>e.type))})}var d=class{PLATFORM=`neutral`;MODE=`production`;DEBUG=!1;TEST=!1;MINIMAL=!1;NO_COLOR=!1;FORCE_COLOR=!1;FORCE_HYPERLINK=!1;STACKTRACE=!1;INCLUDE_ERROR_DATA=!1;CI=!1},f=class{};function p(t,n={}){let r=n.superReflection??new e.ReflectionClass({kind:e.ReflectionKind.class,description:`The base environment configuration definition for the ${s(t.config.name)} project.`,classType:d,types:[],implements:[{kind:e.ReflectionKind.objectLiteral,typeName:`EnvInterface`,description:`The environment configuration interface definition for the ${s(t.config.name)} project.`,types:[]}]});r.name=`Env`;let i=new e.ReflectionClass(n.type??{kind:e.ReflectionKind.objectLiteral,typeName:`Env`,description:`A schema describing the list of available environment variables that can be used by the ${t.config.name?`${s(t.config.name)} application`:`application`}.`,types:[]},r);return i.name=`Env`,i}function m(t,n={}){let r=n.superReflection??new e.ReflectionClass({kind:e.ReflectionKind.class,description:`The base secrets configuration definition for the ${s(t.config.name)} project.`,classType:f,types:[],implements:[{kind:e.ReflectionKind.objectLiteral,typeName:`SecretsInterface`,description:`The secrets configuration interface definition for the ${s(t.config.name)} project.`,types:[]}]});r.name=`Secrets`;let i=new e.ReflectionClass(n.type??{kind:e.ReflectionKind.objectLiteral,typeName:`Secrets`,description:`A schema describing the list of available environment secrets that can be used by the ${t.config.name?`${s(t.config.name)} application`:`application`}.`,types:[]},r);return i.name=`Secrets`,i}async function h(r,a,s){let u;a&&(u=(0,e.resolveClassType)(await t(r,{file:o(a,r.workspaceConfig.workspaceRoot)?a:c(r.workspaceConfig.workspaceRoot,a),name:s},{skipNodeModulesBundle:!0})));let d=await t(r,await n(r));return l(r,[await i(r,`env`),u,(0,e.resolveClassType)(d)].filter(Boolean))}async function g(n,i,s){let l;i&&(l=(0,e.resolveClassType)(await t(n,{file:o(i,n.workspaceConfig.workspaceRoot)?i:c(n.workspaceConfig.workspaceRoot,i),name:s},{skipNodeModulesBundle:!0})));let d=await t(n,await r(n));return u(n,[await a(n),l,(0,e.resolveClassType)(d)].filter(Boolean))}export{d as BaseEnv,f as BaseSecrets,p as createEnvReflection,m as createSecretsReflection,l as mergeEnvReflections,u as mergeSecretsReflections,h as reflectEnv,g as reflectSecrets};
1
+ import{type_exports as e}from"../../../deepkit/src/vendor/type.mjs";import{reflectType as t}from"../../../deepkit/src/reflect-type.mjs";import{getEnvDefaultTypeDefinition as n,getSecretsDefaultTypeDefinition as r,readEnvTypeReflection as i,readSecretsReflection as a}from"./persistence.mjs";import{isParentPath as o}from"@stryke/path/is-parent-path";import{joinPaths as s}from"@stryke/path/join-paths";import{titleCase as c}from"@stryke/string-format/title-case";function l(t,n){return p(t,{type:(0,e.merge)(n.map(e=>e.type))})}function u(t,n){return m(t,{type:(0,e.merge)(n.map(e=>e.type))})}var d=class{PLATFORM=`neutral`;MODE=`production`;DEBUG=!1;TEST=!1;MINIMAL=!1;NO_COLOR=!1;FORCE_COLOR=!1;FORCE_HYPERLINK=!1;STACKTRACE=!1;INCLUDE_ERROR_DATA=!1;CI=!1},f=class{};function p(t,n={}){let r=n.superReflection??new e.ReflectionClass({kind:e.ReflectionKind.class,description:`The base environment configuration definition for the ${c(t.config.name)} project.`,classType:d,types:[],implements:[{kind:e.ReflectionKind.objectLiteral,typeName:`EnvInterface`,description:`The environment configuration interface definition for the ${c(t.config.name)} project.`,types:[]}]});r.name=`Env`;let i=new e.ReflectionClass(n.type??{kind:e.ReflectionKind.objectLiteral,typeName:`Env`,description:`A schema describing the list of available environment variables that can be used by the ${t.config.name?`${c(t.config.name)} application`:`application`}.`,types:[]},r);return i.name=`Env`,i}function m(t,n={}){let r=n.superReflection??new e.ReflectionClass({kind:e.ReflectionKind.class,description:`The base secrets configuration definition for the ${c(t.config.name)} project.`,classType:f,types:[],implements:[{kind:e.ReflectionKind.objectLiteral,typeName:`SecretsInterface`,description:`The secrets configuration interface definition for the ${c(t.config.name)} project.`,types:[]}]});r.name=`Secrets`;let i=new e.ReflectionClass(n.type??{kind:e.ReflectionKind.objectLiteral,typeName:`Secrets`,description:`A schema describing the list of available environment secrets that can be used by the ${t.config.name?`${c(t.config.name)} application`:`application`}.`,types:[]},r);return i.name=`Secrets`,i}async function h(r,a,c){let u;a&&(u=(0,e.resolveClassType)(await t(r,{file:o(a,r.workspaceConfig.workspaceRoot)?a:s(r.workspaceConfig.workspaceRoot,a),name:c},{skipNodeModulesBundle:!0})));let d=await t(r,await n(r));return l(r,[await i(r,`env`),u,(0,e.resolveClassType)(d)].filter(Boolean))}async function g(n,i,c){let l;i&&(l=(0,e.resolveClassType)(await t(n,{file:o(i,n.workspaceConfig.workspaceRoot)?i:s(n.workspaceConfig.workspaceRoot,i),name:c},{skipNodeModulesBundle:!0})));let d=await t(n,await r(n));return u(n,[await a(n),l,(0,e.resolveClassType)(d)].filter(Boolean))}export{d as BaseEnv,f as BaseSecrets,p as createEnvReflection,m as createSecretsReflection,l as mergeEnvReflections,u as mergeSecretsReflections,h as reflectEnv,g as reflectSecrets};
@@ -1,16 +1,10 @@
1
- const e=require(`../../_virtual/rolldown_runtime.cjs`),t=require(`../../alloy/src/create-plugin.cjs`),n=require(`../../deepkit/src/vendor/type.cjs`),r=require(`../../plugin-babel/src/index.cjs`),i=require(`./helpers/reflect.cjs`),a=require(`./helpers/persistence.cjs`),o=require(`./babel/plugin.cjs`),s=require(`./helpers/source-file-env.cjs`),c=require(`./helpers/load.cjs`),l=require(`./helpers/create-reflection-resource.cjs`),u=require(`./components/env.cjs`);require(`./babel/index.cjs`),require(`./components/index.cjs`),require(`./helpers/index.cjs`);let d=require(`@alloy-js/core/jsx-runtime`),f=require(`@storm-software/config-tools/types`),p=require(`@stryke/path/is-parent-path`),m=require(`defu`);m=e.__toESM(m);let h=require(`@stryke/convert/parse-type-definition`),g=require(`@stryke/convert/to-array`),_=require(`@stryke/env/types`),v=require(`@stryke/fs/exists`),y=require(`@stryke/fs/helpers`),b=require(`@stryke/path/join`),x=require(`@stryke/string-format/constant-case`);const S=t.createAlloyPlugin((e={})=>({name:`env`,dependsOn:[r.default(e.babel)],async config(){this.log(f.LogLevelLabel.TRACE,"Providing default configuration for the Powerlines `env` build plugin.");let t={env:(0,m.default)(e,{types:{},prefix:[]}),transform:{babel:{plugins:[o.envBabelPlugin]}}};if(t.env.types)t.env.types=(0,h.parseTypeDefinition)(t.env.types);else{this.log(f.LogLevelLabel.WARN,"The `env.types` configuration parameter was not provided. Please ensure this is expected.");let e=await a.getEnvDefaultTypeDefinition(this);t.env.types=(0,h.parseTypeDefinition)(`${e.file}#${e.name}`)}if(t.env.secrets)t.env.secrets=(0,h.parseTypeDefinition)(t.env.secrets);else{let e=await a.getSecretsDefaultTypeDefinition(this);t.env.secrets=(0,h.parseTypeDefinition)(`${e.file}#${e.name}`)}return t.env.prefix=(0,g.toArray)(t.env.prefix??[]).reduce((e,t)=>{let n=(0,x.constantCase)(t);return e.includes(n)||e.push(n),e},[..._.ENV_PREFIXES,`POWERLINES_`]),t.env.prefix=t.env.prefix.reduce((e,t)=>(e.includes(t.replace(/_$/g,``))||e.push(t.replace(/_$/g,``)),e),[]),t},async configResolved(){if(this.log(f.LogLevelLabel.TRACE,`Environment plugin configuration has been resolved for the Powerlines project.`),this.config.env.inject??=this.config.projectType===`application`,this.env=(0,m.default)({parsed:await c.loadEnv(this,this.config.env)},this.env??{},{types:{env:{}},used:{env:{},secrets:{}},parsed:{},injected:{}}),this.config.command!==`prepare`&&this.persistedMeta?.checksum===this.meta.checksum&&(0,v.existsSync)(a.getEnvTypeReflectionsPath(this,`env`)))this.log(f.LogLevelLabel.TRACE,`Skipping reflection initialization as the meta checksum has not changed.`),this.env.types.env=await a.readEnvTypeReflection(this,`env`),(0,v.existsSync)(a.getEnvReflectionsPath(this,`env`))&&(this.env.used.env=await a.readEnvReflection(this)),(0,v.existsSync)(a.getEnvTypeReflectionsPath(this,`secrets`))&&(this.env.types.secrets=await a.readEnvTypeReflection(this,`secrets`)),(0,v.existsSync)(a.getEnvReflectionsPath(this,`secrets`))&&(this.env.used.secrets=await a.readSecretsReflection(this));else{if(this.env.types.env=await i.reflectEnv(this,this.config.env.types?.file?(0,p.isParentPath)(this.config.env.types?.file,this.workspaceConfig.workspaceRoot)?this.config.env.types?.file:(0,b.joinPaths)(this.config.projectRoot,this.config.env.types?.file):void 0,this.config.env.types?.name),!this.env.types.env)throw Error(`Failed to find the environment configuration type reflection in the context.`);if(await a.writeEnvTypeReflection(this,this.env.types.env,`env`),this.env.types.secrets=await i.reflectSecrets(this,this.config.env.secrets?.file?(0,p.isParentPath)(this.config.env.secrets?.file,this.workspaceConfig.workspaceRoot)?this.config.env.secrets?.file:(0,b.joinPaths)(this.config.projectRoot,this.config.env.secrets?.file):void 0,this.config.env.secrets?.name),!this.env.types.secrets)throw Error(`Failed to find the secrets configuration type reflection in the context.`);await a.writeEnvTypeReflection(this,this.env.types.secrets,`secrets`),this.log(f.LogLevelLabel.TRACE,`Resolved ${this.env.types.env.getProperties().length??0} environment configuration parameters and ${this.env.types.secrets?.getProperties().length??0} secret configuration parameters`);let e=this.env.types.env.getProperties().filter(e=>e.getAlias().length>0);Object.entries(await c.loadEnv(this,this.config.env)).forEach(([t,n])=>{let r=this.config.env.prefix.reduce((e,n)=>t.replace(/_$/g,``).startsWith(n)?t.replace(/_$/g,``).slice(n.length):e,t),i=e.find(e=>e?.getAlias().reverse().includes(r));(this.env.types.env?.hasProperty(r)||i)&&this.env.types.env.getProperty(r).setDefaultValue(n)}),this.env.used.env=new n.type_exports.ReflectionClass({kind:n.type_exports.ReflectionKind.objectLiteral,typeName:`Env`,description:`An object containing the environment configuration parameters used by the ${this.config.name?`${this.config.name} application`:`application`}.`,types:[]},this.env.types.env),await a.writeEnvReflection(this,this.env.used.env,`env`),this.env.types.secrets&&(await a.writeEnvTypeReflection(this,this.env.types.secrets,`secrets`),this.env.used.secrets=new n.type_exports.ReflectionClass({kind:n.type_exports.ReflectionKind.objectLiteral,typeName:`Secrets`,description:`An object containing the secret configuration parameters used by the ${this.config.name?`${this.config.name} application`:`application`}.`,types:[]},this.env.types.secrets),await a.writeEnvReflection(this,this.env.used.secrets,`secrets`))}},render(){let e=this;return this.log(f.LogLevelLabel.TRACE,`Preparing the Environment runtime artifacts for the Powerlines project.`),(0,d.createComponent)(u.EnvBuiltin,{get defaultConfig(){return e.config.env.defaultConfig}})},async docs(){this.log(f.LogLevelLabel.TRACE,`Writing Environment documentation for the Powerlines project artifacts.`);let e=(0,b.joinPaths)(this.config.projectRoot,`docs`,`generated`);(0,v.existsSync)(e)||await(0,y.createDirectory)(e);let t=await a.readEnvTypeReflection(this,`env`),r=(0,b.joinPaths)(e,`env.md`);this.log(f.LogLevelLabel.TRACE,`Documenting environment variables configuration in "${r}"`),await this.fs.write(r,`<!-- Generated by Powerlines -->
1
+ const e=require(`../../_virtual/rolldown_runtime.cjs`),t=require(`../../alloy/src/create-plugin.cjs`),n=require(`../../deepkit/src/vendor/type.cjs`),r=require(`../../plugin-automd/src/index.cjs`),i=require(`../../plugin-babel/src/index.cjs`),a=require(`./helpers/reflect.cjs`),o=require(`./helpers/persistence.cjs`),s=require(`./babel/plugin.cjs`),c=require(`./helpers/source-file-env.cjs`),l=require(`./helpers/load.cjs`),u=require(`./helpers/create-reflection-resource.cjs`),d=require(`./components/env.cjs`),f=require(`./helpers/automd-generator.cjs`);require(`./babel/index.cjs`),require(`./components/index.cjs`),require(`./helpers/index.cjs`);let p=require(`@alloy-js/core/jsx-runtime`),m=require(`@storm-software/config-tools/types`),h=require(`@stryke/path/is-parent-path`),g=require(`@stryke/convert/to-array`),_=require(`defu`);_=e.__toESM(_);let v=require(`@stryke/string-format/title-case`),y=require(`@stryke/convert/parse-type-definition`),b=require(`@stryke/env/types`),x=require(`@stryke/fs/exists`),S=require(`@stryke/fs/helpers`),C=require(`@stryke/path/join`),w=require(`@stryke/string-format/constant-case`);const T=t.createAlloyPlugin((e={})=>({name:`env`,async config(){this.log(m.LogLevelLabel.TRACE,"Providing default configuration for the Powerlines `env` build plugin.");let t={env:(0,_.default)(e,{types:{},prefix:[]}),transform:{babel:{plugins:[s.envBabelPlugin]}}};if(t.env.types)t.env.types=(0,y.parseTypeDefinition)(t.env.types);else{this.log(m.LogLevelLabel.WARN,"The `env.types` configuration parameter was not provided. Please ensure this is expected.");let e=await o.getEnvDefaultTypeDefinition(this);t.env.types=(0,y.parseTypeDefinition)(`${e.file}#${e.name}`)}if(t.env.secrets)t.env.secrets=(0,y.parseTypeDefinition)(t.env.secrets);else{let e=await o.getSecretsDefaultTypeDefinition(this);t.env.secrets=(0,y.parseTypeDefinition)(`${e.file}#${e.name}`)}return t.env.prefix=(0,g.toArray)(t.env.prefix??[]).reduce((e,t)=>{let n=(0,w.constantCase)(t);return e.includes(n)||e.push(n),e},[...b.ENV_PREFIXES,`POWERLINES_`]),t.env.prefix=t.env.prefix.reduce((e,t)=>(e.includes(t.replace(/_$/g,``))||e.push(t.replace(/_$/g,``)),e),[]),t},async configResolved(){if(this.log(m.LogLevelLabel.TRACE,`Environment plugin configuration has been resolved for the Powerlines project.`),this.config.env.inject??=this.config.projectType===`application`,this.env=(0,_.default)({parsed:await l.loadEnv(this,this.config.env)},this.env??{},{types:{env:{}},used:{env:{},secrets:{}},parsed:{},injected:{}}),this.config.command!==`prepare`&&this.persistedMeta?.checksum===this.meta.checksum&&(0,x.existsSync)(o.getEnvTypeReflectionsPath(this,`env`)))this.log(m.LogLevelLabel.TRACE,`Skipping reflection initialization as the meta checksum has not changed.`),this.env.types.env=await o.readEnvTypeReflection(this,`env`),(0,x.existsSync)(o.getEnvReflectionsPath(this,`env`))&&(this.env.used.env=await o.readEnvReflection(this)),(0,x.existsSync)(o.getEnvTypeReflectionsPath(this,`secrets`))&&(this.env.types.secrets=await o.readEnvTypeReflection(this,`secrets`)),(0,x.existsSync)(o.getEnvReflectionsPath(this,`secrets`))&&(this.env.used.secrets=await o.readSecretsReflection(this));else{if(this.env.types.env=await a.reflectEnv(this,this.config.env.types?.file?(0,h.isParentPath)(this.config.env.types?.file,this.workspaceConfig.workspaceRoot)?this.config.env.types?.file:(0,C.joinPaths)(this.config.projectRoot,this.config.env.types?.file):void 0,this.config.env.types?.name),!this.env.types.env)throw Error(`Failed to find the environment configuration type reflection in the context.`);if(await o.writeEnvTypeReflection(this,this.env.types.env,`env`),this.env.types.secrets=await a.reflectSecrets(this,this.config.env.secrets?.file?(0,h.isParentPath)(this.config.env.secrets?.file,this.workspaceConfig.workspaceRoot)?this.config.env.secrets?.file:(0,C.joinPaths)(this.config.projectRoot,this.config.env.secrets?.file):void 0,this.config.env.secrets?.name),!this.env.types.secrets)throw Error(`Failed to find the secrets configuration type reflection in the context.`);await o.writeEnvTypeReflection(this,this.env.types.secrets,`secrets`),this.log(m.LogLevelLabel.TRACE,`Resolved ${this.env.types.env.getProperties().length??0} environment configuration parameters and ${this.env.types.secrets?.getProperties().length??0} secret configuration parameters`);let e=this.env.types.env.getProperties().filter(e=>e.getAlias().length>0);Object.entries(await l.loadEnv(this,this.config.env)).forEach(([t,n])=>{let r=this.config.env.prefix.reduce((e,n)=>t.replace(/_$/g,``).startsWith(n)?t.replace(/_$/g,``).slice(n.length):e,t),i=e.find(e=>e?.getAlias().reverse().includes(r));(this.env.types.env?.hasProperty(r)||i)&&this.env.types.env.getProperty(r).setDefaultValue(n)}),this.env.used.env=new n.type_exports.ReflectionClass({kind:n.type_exports.ReflectionKind.objectLiteral,typeName:`Env`,description:`An object containing the environment configuration parameters used by the ${this.config.name?`${this.config.name} application`:`application`}.`,types:[]},this.env.types.env),await o.writeEnvReflection(this,this.env.used.env,`env`),this.env.types.secrets&&(await o.writeEnvTypeReflection(this,this.env.types.secrets,`secrets`),this.env.used.secrets=new n.type_exports.ReflectionClass({kind:n.type_exports.ReflectionKind.objectLiteral,typeName:`Secrets`,description:`An object containing the secret configuration parameters used by the ${this.config.name?`${this.config.name} application`:`application`}.`,types:[]},this.env.types.secrets),await o.writeEnvReflection(this,this.env.used.secrets,`secrets`))}},render(){let e=this;return this.log(m.LogLevelLabel.TRACE,`Preparing the Environment runtime artifacts for the Powerlines project.`),(0,p.createComponent)(d.EnvBuiltin,{get defaultConfig(){return e.config.env.defaultConfig}})},async docs(){this.log(m.LogLevelLabel.TRACE,`Writing Environment documentation for the Powerlines project artifacts.`);let e=(0,C.joinPaths)(this.config.projectRoot,`docs`,`generated`);(0,x.existsSync)(e)||await(0,S.createDirectory)(e);let t=await o.readEnvTypeReflection(this,`env`),r=(0,C.joinPaths)(e,`env.md`);this.log(m.LogLevelLabel.TRACE,`Documenting environment variables configuration in "${r}"`),await this.fs.write(r,`<!-- Generated by ${(0,v.titleCase)(this.config.framework)||`Powerlines`} -->
2
2
 
3
- # Environment variables configuration
3
+ Below is a list of environment variables used by the [${this.packageJson.name}](https://www.npmjs.com/package/${this.packageJson.name}) package. These values can be updated in the \`.env\` file in the root of the project. The variables in the list below are used as configuration parameters to drive the processing of the application. The data contained in these variables are **not** considered sensitive or confidential. Any values provided in these variables will be available in plain text to the public.
4
4
 
5
- Below is a list of environment variables used by the [${this.packageJson.name}](https://www.npmjs.com/package/${this.packageJson.name}) package. These values can be updated in the \`.env\` file in the root of the project.
6
-
7
- ## Environment Configuration
8
-
9
- The below list of environment variables are used as configuration parameters to drive the processing of the application. The data contained in these variables are **not** considered sensitive or confidential. Any values provided in these variables will be available in plain text to the public.
10
-
11
- | Name | Description | Type | Default Value | Required |
12
- | ---- | ----------- | ---- | ------------- | :------: |
13
- ${t.getProperties().filter(e=>e.getNameAsString()!==`__STORM_INJECTED__`).sort((e,t)=>e.getNameAsString().localeCompare(t.getNameAsString())).map(e=>`| ${e.getNameAsString().trim()} | ${(e.getDescription()?.replaceAll(`\r`,``)?.replaceAll(`
5
+ | Name | Description | Type | Default Value | Required |
6
+ | ---- | ----------- | ---- | ------------- | :------: |
7
+ ${t.getProperties().filter(e=>e.getNameAsString()!==`__POWERLINES_INJECTED__`).sort((e,t)=>e.getNameAsString().localeCompare(t.getNameAsString())).map(e=>`| ${e.getNameAsString().trim()} | ${(e.getDescription()?.replaceAll(`\r`,``)?.replaceAll(`
14
8
  `,``)??``).trim()} | ${(0,n.type_exports.stringifyType)(e.getType()).trim().replaceAll(` | `,`, or `)} | ${e.hasDefault()?String(e.getDefaultValue())?.includes(`"`)?e.getDefaultValue():`\`${e.getDefaultValue()}\``:``} | ${e.isValueRequired()?``:`✔`} |`).join(`
15
9
  `)}
16
- `)},async buildEnd(){let e=a.getEnvReflectionsPath(this,`env`);this.log(f.LogLevelLabel.TRACE,`Writing env reflection types to ${e}.`),await a.writeEnvReflection(this,this.env.used.env,`env`)}}));var C=S;exports.default=C;
10
+ `)},async buildEnd(){let e=o.getEnvReflectionsPath(this,`env`);this.log(m.LogLevelLabel.TRACE,`Writing env reflection types to ${e}.`),await o.writeEnvReflection(this,this.env.used.env,`env`)}})),E=(e={})=>[i.default(e.babel),T(e),{name:`env:automd-generator`,config(){return{automd:(0,_.default)(e.automd??{},{generators:{env:f.env(this)}})}}},{name:`env:vite`,vite:{configResolved(){return{envPrefix:this.config?.env?.prefix}}}},r.default(e.automd)];var D=E;exports.default=D;
@@ -1,16 +1,10 @@
1
- import{createAlloyPlugin as e}from"../../alloy/src/create-plugin.mjs";import{type_exports as t}from"../../deepkit/src/vendor/type.mjs";import n from"../../plugin-babel/src/index.mjs";import{BaseEnv as r,BaseSecrets as i,createEnvReflection as a,createSecretsReflection as o,mergeEnvReflections as s,mergeSecretsReflections as c,reflectEnv as l,reflectSecrets as u}from"./helpers/reflect.mjs";import{getEnvDefaultTypeDefinition as d,getEnvReflectionsPath as f,getEnvTypeReflectionsPath as p,getSecretsDefaultTypeDefinition as m,readEnvReflection as h,readEnvTypeReflection as g,readSecretsReflection as _,resolveRuntimeTypeFile as v,writeEnvReflection as y,writeEnvTypeReflection as b}from"./helpers/persistence.mjs";import{envBabelPlugin as x}from"./babel/plugin.mjs";import{removeEnvPrefix as S}from"./helpers/source-file-env.mjs";import{loadEnv as C,loadEnvFromContext as w}from"./helpers/load.mjs";import{createReflectionResource as T}from"./helpers/create-reflection-resource.mjs";import{EnvBuiltin as E,EnvTypeDefinition as D}from"./components/env.mjs";import"./babel/index.mjs";import"./components/index.mjs";import"./helpers/index.mjs";import{createComponent as O}from"@alloy-js/core/jsx-runtime";import{LogLevelLabel as k}from"@storm-software/config-tools/types";import{isParentPath as A}from"@stryke/path/is-parent-path";import j from"defu";import{parseTypeDefinition as M}from"@stryke/convert/parse-type-definition";import{toArray as N}from"@stryke/convert/to-array";import{ENV_PREFIXES as P}from"@stryke/env/types";import{existsSync as F}from"@stryke/fs/exists";import{createDirectory as I}from"@stryke/fs/helpers";import{joinPaths as L}from"@stryke/path/join";import{constantCase as R}from"@stryke/string-format/constant-case";var z=e((e={})=>({name:`env`,dependsOn:[n(e.babel)],async config(){this.log(k.TRACE,"Providing default configuration for the Powerlines `env` build plugin.");let t={env:j(e,{types:{},prefix:[]}),transform:{babel:{plugins:[x]}}};if(t.env.types)t.env.types=M(t.env.types);else{this.log(k.WARN,"The `env.types` configuration parameter was not provided. Please ensure this is expected.");let e=await d(this);t.env.types=M(`${e.file}#${e.name}`)}if(t.env.secrets)t.env.secrets=M(t.env.secrets);else{let e=await m(this);t.env.secrets=M(`${e.file}#${e.name}`)}return t.env.prefix=N(t.env.prefix??[]).reduce((e,t)=>{let n=R(t);return e.includes(n)||e.push(n),e},[...P,`POWERLINES_`]),t.env.prefix=t.env.prefix.reduce((e,t)=>(e.includes(t.replace(/_$/g,``))||e.push(t.replace(/_$/g,``)),e),[]),t},async configResolved(){if(this.log(k.TRACE,`Environment plugin configuration has been resolved for the Powerlines project.`),this.config.env.inject??=this.config.projectType===`application`,this.env=j({parsed:await C(this,this.config.env)},this.env??{},{types:{env:{}},used:{env:{},secrets:{}},parsed:{},injected:{}}),this.config.command!==`prepare`&&this.persistedMeta?.checksum===this.meta.checksum&&F(p(this,`env`)))this.log(k.TRACE,`Skipping reflection initialization as the meta checksum has not changed.`),this.env.types.env=await g(this,`env`),F(f(this,`env`))&&(this.env.used.env=await h(this)),F(p(this,`secrets`))&&(this.env.types.secrets=await g(this,`secrets`)),F(f(this,`secrets`))&&(this.env.used.secrets=await _(this));else{if(this.env.types.env=await l(this,this.config.env.types?.file?A(this.config.env.types?.file,this.workspaceConfig.workspaceRoot)?this.config.env.types?.file:L(this.config.projectRoot,this.config.env.types?.file):void 0,this.config.env.types?.name),!this.env.types.env)throw Error(`Failed to find the environment configuration type reflection in the context.`);if(await b(this,this.env.types.env,`env`),this.env.types.secrets=await u(this,this.config.env.secrets?.file?A(this.config.env.secrets?.file,this.workspaceConfig.workspaceRoot)?this.config.env.secrets?.file:L(this.config.projectRoot,this.config.env.secrets?.file):void 0,this.config.env.secrets?.name),!this.env.types.secrets)throw Error(`Failed to find the secrets configuration type reflection in the context.`);await b(this,this.env.types.secrets,`secrets`),this.log(k.TRACE,`Resolved ${this.env.types.env.getProperties().length??0} environment configuration parameters and ${this.env.types.secrets?.getProperties().length??0} secret configuration parameters`);let e=this.env.types.env.getProperties().filter(e=>e.getAlias().length>0);Object.entries(await C(this,this.config.env)).forEach(([t,n])=>{let r=this.config.env.prefix.reduce((e,n)=>t.replace(/_$/g,``).startsWith(n)?t.replace(/_$/g,``).slice(n.length):e,t),i=e.find(e=>e?.getAlias().reverse().includes(r));(this.env.types.env?.hasProperty(r)||i)&&this.env.types.env.getProperty(r).setDefaultValue(n)}),this.env.used.env=new t.ReflectionClass({kind:t.ReflectionKind.objectLiteral,typeName:`Env`,description:`An object containing the environment configuration parameters used by the ${this.config.name?`${this.config.name} application`:`application`}.`,types:[]},this.env.types.env),await y(this,this.env.used.env,`env`),this.env.types.secrets&&(await b(this,this.env.types.secrets,`secrets`),this.env.used.secrets=new t.ReflectionClass({kind:t.ReflectionKind.objectLiteral,typeName:`Secrets`,description:`An object containing the secret configuration parameters used by the ${this.config.name?`${this.config.name} application`:`application`}.`,types:[]},this.env.types.secrets),await y(this,this.env.used.secrets,`secrets`))}},render(){let e=this;return this.log(k.TRACE,`Preparing the Environment runtime artifacts for the Powerlines project.`),O(E,{get defaultConfig(){return e.config.env.defaultConfig}})},async docs(){this.log(k.TRACE,`Writing Environment documentation for the Powerlines project artifacts.`);let e=L(this.config.projectRoot,`docs`,`generated`);F(e)||await I(e);let n=await g(this,`env`),r=L(e,`env.md`);this.log(k.TRACE,`Documenting environment variables configuration in "${r}"`),await this.fs.write(r,`<!-- Generated by Powerlines -->
1
+ import{createAlloyPlugin as e}from"../../alloy/src/create-plugin.mjs";import{type_exports as t}from"../../deepkit/src/vendor/type.mjs";import n from"../../plugin-automd/src/index.mjs";import r from"../../plugin-babel/src/index.mjs";import{BaseEnv as i,BaseSecrets as a,createEnvReflection as o,createSecretsReflection as s,mergeEnvReflections as c,mergeSecretsReflections as l,reflectEnv as u,reflectSecrets as d}from"./helpers/reflect.mjs";import{getEnvDefaultTypeDefinition as f,getEnvReflectionsPath as p,getEnvTypeReflectionsPath as m,getSecretsDefaultTypeDefinition as h,readEnvReflection as g,readEnvTypeReflection as _,readSecretsReflection as v,resolveRuntimeTypeFile as y,writeEnvReflection as b,writeEnvTypeReflection as x}from"./helpers/persistence.mjs";import{envBabelPlugin as S}from"./babel/plugin.mjs";import{removeEnvPrefix as C}from"./helpers/source-file-env.mjs";import{loadEnv as w,loadEnvFromContext as T}from"./helpers/load.mjs";import{createReflectionResource as E}from"./helpers/create-reflection-resource.mjs";import{EnvBuiltin as D,EnvTypeDefinition as O}from"./components/env.mjs";import{env as k}from"./helpers/automd-generator.mjs";import"./babel/index.mjs";import"./components/index.mjs";import"./helpers/index.mjs";import{createComponent as A}from"@alloy-js/core/jsx-runtime";import{LogLevelLabel as j}from"@storm-software/config-tools/types";import{isParentPath as M}from"@stryke/path/is-parent-path";import{toArray as N}from"@stryke/convert/to-array";import P from"defu";import{titleCase as F}from"@stryke/string-format/title-case";import{parseTypeDefinition as I}from"@stryke/convert/parse-type-definition";import{ENV_PREFIXES as L}from"@stryke/env/types";import{existsSync as R}from"@stryke/fs/exists";import{createDirectory as z}from"@stryke/fs/helpers";import{joinPaths as B}from"@stryke/path/join";import{constantCase as V}from"@stryke/string-format/constant-case";const H=e((e={})=>({name:`env`,async config(){this.log(j.TRACE,"Providing default configuration for the Powerlines `env` build plugin.");let t={env:P(e,{types:{},prefix:[]}),transform:{babel:{plugins:[S]}}};if(t.env.types)t.env.types=I(t.env.types);else{this.log(j.WARN,"The `env.types` configuration parameter was not provided. Please ensure this is expected.");let e=await f(this);t.env.types=I(`${e.file}#${e.name}`)}if(t.env.secrets)t.env.secrets=I(t.env.secrets);else{let e=await h(this);t.env.secrets=I(`${e.file}#${e.name}`)}return t.env.prefix=N(t.env.prefix??[]).reduce((e,t)=>{let n=V(t);return e.includes(n)||e.push(n),e},[...L,`POWERLINES_`]),t.env.prefix=t.env.prefix.reduce((e,t)=>(e.includes(t.replace(/_$/g,``))||e.push(t.replace(/_$/g,``)),e),[]),t},async configResolved(){if(this.log(j.TRACE,`Environment plugin configuration has been resolved for the Powerlines project.`),this.config.env.inject??=this.config.projectType===`application`,this.env=P({parsed:await w(this,this.config.env)},this.env??{},{types:{env:{}},used:{env:{},secrets:{}},parsed:{},injected:{}}),this.config.command!==`prepare`&&this.persistedMeta?.checksum===this.meta.checksum&&R(m(this,`env`)))this.log(j.TRACE,`Skipping reflection initialization as the meta checksum has not changed.`),this.env.types.env=await _(this,`env`),R(p(this,`env`))&&(this.env.used.env=await g(this)),R(m(this,`secrets`))&&(this.env.types.secrets=await _(this,`secrets`)),R(p(this,`secrets`))&&(this.env.used.secrets=await v(this));else{if(this.env.types.env=await u(this,this.config.env.types?.file?M(this.config.env.types?.file,this.workspaceConfig.workspaceRoot)?this.config.env.types?.file:B(this.config.projectRoot,this.config.env.types?.file):void 0,this.config.env.types?.name),!this.env.types.env)throw Error(`Failed to find the environment configuration type reflection in the context.`);if(await x(this,this.env.types.env,`env`),this.env.types.secrets=await d(this,this.config.env.secrets?.file?M(this.config.env.secrets?.file,this.workspaceConfig.workspaceRoot)?this.config.env.secrets?.file:B(this.config.projectRoot,this.config.env.secrets?.file):void 0,this.config.env.secrets?.name),!this.env.types.secrets)throw Error(`Failed to find the secrets configuration type reflection in the context.`);await x(this,this.env.types.secrets,`secrets`),this.log(j.TRACE,`Resolved ${this.env.types.env.getProperties().length??0} environment configuration parameters and ${this.env.types.secrets?.getProperties().length??0} secret configuration parameters`);let e=this.env.types.env.getProperties().filter(e=>e.getAlias().length>0);Object.entries(await w(this,this.config.env)).forEach(([t,n])=>{let r=this.config.env.prefix.reduce((e,n)=>t.replace(/_$/g,``).startsWith(n)?t.replace(/_$/g,``).slice(n.length):e,t),i=e.find(e=>e?.getAlias().reverse().includes(r));(this.env.types.env?.hasProperty(r)||i)&&this.env.types.env.getProperty(r).setDefaultValue(n)}),this.env.used.env=new t.ReflectionClass({kind:t.ReflectionKind.objectLiteral,typeName:`Env`,description:`An object containing the environment configuration parameters used by the ${this.config.name?`${this.config.name} application`:`application`}.`,types:[]},this.env.types.env),await b(this,this.env.used.env,`env`),this.env.types.secrets&&(await x(this,this.env.types.secrets,`secrets`),this.env.used.secrets=new t.ReflectionClass({kind:t.ReflectionKind.objectLiteral,typeName:`Secrets`,description:`An object containing the secret configuration parameters used by the ${this.config.name?`${this.config.name} application`:`application`}.`,types:[]},this.env.types.secrets),await b(this,this.env.used.secrets,`secrets`))}},render(){let e=this;return this.log(j.TRACE,`Preparing the Environment runtime artifacts for the Powerlines project.`),A(D,{get defaultConfig(){return e.config.env.defaultConfig}})},async docs(){this.log(j.TRACE,`Writing Environment documentation for the Powerlines project artifacts.`);let e=B(this.config.projectRoot,`docs`,`generated`);R(e)||await z(e);let n=await _(this,`env`),r=B(e,`env.md`);this.log(j.TRACE,`Documenting environment variables configuration in "${r}"`),await this.fs.write(r,`<!-- Generated by ${F(this.config.framework)||`Powerlines`} -->
2
2
 
3
- # Environment variables configuration
3
+ Below is a list of environment variables used by the [${this.packageJson.name}](https://www.npmjs.com/package/${this.packageJson.name}) package. These values can be updated in the \`.env\` file in the root of the project. The variables in the list below are used as configuration parameters to drive the processing of the application. The data contained in these variables are **not** considered sensitive or confidential. Any values provided in these variables will be available in plain text to the public.
4
4
 
5
- Below is a list of environment variables used by the [${this.packageJson.name}](https://www.npmjs.com/package/${this.packageJson.name}) package. These values can be updated in the \`.env\` file in the root of the project.
6
-
7
- ## Environment Configuration
8
-
9
- The below list of environment variables are used as configuration parameters to drive the processing of the application. The data contained in these variables are **not** considered sensitive or confidential. Any values provided in these variables will be available in plain text to the public.
10
-
11
- | Name | Description | Type | Default Value | Required |
12
- | ---- | ----------- | ---- | ------------- | :------: |
13
- ${n.getProperties().filter(e=>e.getNameAsString()!==`__STORM_INJECTED__`).sort((e,t)=>e.getNameAsString().localeCompare(t.getNameAsString())).map(e=>`| ${e.getNameAsString().trim()} | ${(e.getDescription()?.replaceAll(`\r`,``)?.replaceAll(`
5
+ | Name | Description | Type | Default Value | Required |
6
+ | ---- | ----------- | ---- | ------------- | :------: |
7
+ ${n.getProperties().filter(e=>e.getNameAsString()!==`__POWERLINES_INJECTED__`).sort((e,t)=>e.getNameAsString().localeCompare(t.getNameAsString())).map(e=>`| ${e.getNameAsString().trim()} | ${(e.getDescription()?.replaceAll(`\r`,``)?.replaceAll(`
14
8
  `,``)??``).trim()} | ${(0,t.stringifyType)(e.getType()).trim().replaceAll(` | `,`, or `)} | ${e.hasDefault()?String(e.getDefaultValue())?.includes(`"`)?e.getDefaultValue():`\`${e.getDefaultValue()}\``:``} | ${e.isValueRequired()?``:`✔`} |`).join(`
15
9
  `)}
16
- `)},async buildEnd(){let e=f(this,`env`);this.log(k.TRACE,`Writing env reflection types to ${e}.`),await y(this,this.env.used.env,`env`)}}));export{z as default};
10
+ `)},async buildEnd(){let e=p(this,`env`);this.log(j.TRACE,`Writing env reflection types to ${e}.`),await b(this,this.env.used.env,`env`)}}));var U=(e={})=>[r(e.babel),H(e),{name:`env:automd-generator`,config(){return{automd:P(e.automd??{},{generators:{env:k(this)}})}}},{name:`env:vite`,vite:{configResolved(){return{envPrefix:this.config?.env?.prefix}}}},n(e.automd)];export{U as default};
@@ -1,4 +1,5 @@
1
1
  import { Reflection } from "../../../deepkit/src/types.cjs";
2
+ import { AutoMDPluginOptions } from "../../../plugin-automd/src/types/plugin.cjs";
2
3
  import { BabelPluginContext, BabelPluginOptions, BabelPluginResolvedConfig, BabelPluginUserConfig } from "../../../plugin-babel/src/types/plugin.cjs";
3
4
  import { EnvInterface, SecretsInterface } from "./runtime.cjs";
4
5
  import { DotenvConfiguration, TypeDefinition, TypeDefinitionParameter } from "@stryke/types/configuration";
@@ -45,6 +46,13 @@ type EnvPluginOptions = Omit<DotenvConfiguration, "types"> & {
45
46
  * This option allows you to customize the Babel transformation process used to inject environment variables into the source code. If not provided, the plugin will use default Babel settings.
46
47
  */
47
48
  babel?: BabelPluginOptions;
49
+ /**
50
+ * AutoMD configuration options to allow injecting environment variables documentation into a markdown file such as a README.md.
51
+ *
52
+ * @remarks
53
+ * The README.md file should contain the `<!-- automd:env --><!-- /automd -->` comment block where the documentation will be injected.
54
+ */
55
+ automd?: AutoMDPluginOptions;
48
56
  };
49
57
  type EnvPluginUserConfig = BabelPluginUserConfig & {
50
58
  env: EnvPluginOptions;
@@ -1,4 +1,5 @@
1
1
  import { Reflection } from "../../../deepkit/src/types.mjs";
2
+ import { AutoMDPluginOptions } from "../../../plugin-automd/src/types/plugin.mjs";
2
3
  import { BabelPluginContext, BabelPluginOptions, BabelPluginResolvedConfig, BabelPluginUserConfig } from "../../../plugin-babel/src/types/plugin.mjs";
3
4
  import "../../../plugin-babel/src/types/index.mjs";
4
5
  import { EnvInterface, SecretsInterface } from "./runtime.mjs";
@@ -46,6 +47,13 @@ type EnvPluginOptions = Omit<DotenvConfiguration, "types"> & {
46
47
  * This option allows you to customize the Babel transformation process used to inject environment variables into the source code. If not provided, the plugin will use default Babel settings.
47
48
  */
48
49
  babel?: BabelPluginOptions;
50
+ /**
51
+ * AutoMD configuration options to allow injecting environment variables documentation into a markdown file such as a README.md.
52
+ *
53
+ * @remarks
54
+ * The README.md file should contain the `<!-- automd:env --><!-- /automd -->` comment block where the documentation will be injected.
55
+ */
56
+ automd?: AutoMDPluginOptions;
49
57
  };
50
58
  type EnvPluginUserConfig = BabelPluginUserConfig & {
51
59
  env: EnvPluginOptions;
@@ -1,4 +1,4 @@
1
- const e=require(`../../../../_virtual/rolldown_runtime.cjs`);require(`../entry.cjs`);let t=require(`@stryke/path/replace`),n=require(`defu`);n=e.__toESM(n);let r=require(`@stryke/type-checks/is-string`),i=require(`@stryke/path/join-paths`),a=require(`@stryke/helpers/omit`),o=require(`@stryke/string-format/camel-case`);const s={target:`esnext`,platform:`neutral`,format:`esm`,write:!0,minify:!0,sourcemap:!1,bundle:!0,treeShaking:!0,keepNames:!0,splitting:!0,logLevel:`silent`};function c(e){let t=e.config.build.override.inject??e.config.build.inject;return t&&Object.keys(t).length>0&&e.fs.writeSync((0,i.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,o.camelCase)(e)!==e){if(t.length===1)return`
1
+ const e=require(`../../../../_virtual/rolldown_runtime.cjs`);require(`../entry.cjs`);let t=require(`@stryke/path/replace`),n=require(`@stryke/path/join-paths`),r=require(`defu`);r=e.__toESM(r);let i=require(`@stryke/type-checks/is-string`),a=require(`@stryke/helpers/omit`),o=require(`@stryke/string-format/camel-case`);const s={target:`esnext`,platform:`neutral`,format:`esm`,write:!0,minify:!0,sourcemap:!1,bundle:!0,treeShaking:!0,keepNames:!0,splitting:!0,logLevel:`silent`};function c(e){let t=e.config.build.override.inject??e.config.build.inject;return t&&Object.keys(t).length>0&&e.fs.writeSync((0,n.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,o.camelCase)(e)!==e){if(t.length===1)return`
2
2
  import ${(0,o.camelCase)(e)} from "${t[0]}";
3
3
  export { ${(0,o.camelCase)(e)} as "${e}" }`;if(t.length>1)return`
4
4
  import ${t[1]===`*`?`* as ${(0,o.camelCase)(e)}`:`{ ${t[1]} as ${(0,o.camelCase)(e)} }`} from "${t[0]}";
@@ -11,4 +11,4 @@ import ${(0,o.camelCase)(e)} from "${t[0]}";
11
11
  export { ${(0,o.camelCase)(e)} as "${e}" }`;else return`
12
12
  import ${e} from "${t}";
13
13
  export { ${e} };`;return``}).join(`
14
- `)),(0,n.default)({alias:e.builtins.reduce((t,n)=>{if(!t[n]){let r=e.fs.ids[n];r&&(t[n]=r)}return t},e.config.build.alias?Array.isArray(e.config.build.alias)?e.config.build.alias.reduce((e,t)=>(e[t.find.toString()]||(e[t.find.toString()]=t.replacement),e),{}):e.config.build.alias:{}),inject:t&&Object.keys(t).length>0?[(0,i.joinPaths)(e.workspaceConfig.workspaceRoot,e.config.projectRoot,e.artifactsPath,`inject-shim.js`)]:void 0},e.config.build.variant===`esbuild`?(0,a.omit)(e.config.build.override,[`alias`,`inject`,`external`,`noExternal`,`skipNodeModulesBundle`,`extensions`]):{},e.config.build.variant===`esbuild`?(0,a.omit)(e.config.build,[`alias`,`inject`,`external`,`noExternal`,`skipNodeModulesBundle`,`extensions`,`variant`,`override`]):{},{mainFields:e.config.build.mainFields,conditions:e.config.build.conditions,define:e.config.build.define,resolveExtensions:e.config.build.extensions,packages:e.config.build.skipNodeModulesBundle?`external`:e.config.build.variant===`esbuild`?e.config.build.packages:void 0,format:Array.isArray(e.config.output.format)?e.config.output.format[0]:e.config.output.format,platform:e.config.build.platform,treeShaking:!!e.config.build?.treeshake||e.config.build?.treeShaking,outdir:e.config.output.buildPath,tsconfig:e.tsconfig.tsconfigFilePath,minify:e.config.mode!==`development`,metafile:e.config.mode===`development`,sourcemap:e.config.mode===`development`},s)}exports.extractESBuildConfig=c;
14
+ `)),(0,r.default)({alias:e.builtins.reduce((t,n)=>{if(!t[n]){let r=e.fs.ids[n];r&&(t[n]=r)}return t},e.config.build.alias?Array.isArray(e.config.build.alias)?e.config.build.alias.reduce((e,t)=>(e[t.find.toString()]||(e[t.find.toString()]=t.replacement),e),{}):e.config.build.alias:{}),inject:t&&Object.keys(t).length>0?[(0,n.joinPaths)(e.workspaceConfig.workspaceRoot,e.config.projectRoot,e.artifactsPath,`inject-shim.js`)]:void 0},e.config.build.variant===`esbuild`?(0,a.omit)(e.config.build.override,[`alias`,`inject`,`external`,`noExternal`,`skipNodeModulesBundle`,`extensions`]):{},e.config.build.variant===`esbuild`?(0,a.omit)(e.config.build,[`alias`,`inject`,`external`,`noExternal`,`skipNodeModulesBundle`,`extensions`,`variant`,`override`]):{},{mainFields:e.config.build.mainFields,conditions:e.config.build.conditions,define:e.config.build.define,resolveExtensions:e.config.build.extensions,packages:e.config.build.skipNodeModulesBundle?`external`:e.config.build.variant===`esbuild`?e.config.build.packages:void 0,format:Array.isArray(e.config.output.format)?e.config.output.format[0]:e.config.output.format,platform:e.config.build.platform,treeShaking:!!e.config.build?.treeshake||e.config.build?.treeShaking,outdir:e.config.output.buildPath,tsconfig:e.tsconfig.tsconfigFilePath,minify:e.config.mode!==`development`,metafile:e.config.mode===`development`,sourcemap:e.config.mode===`development`},s)}exports.extractESBuildConfig=c;
@@ -1,4 +1,4 @@
1
- import"../entry.mjs";import{replacePath as e}from"@stryke/path/replace";import t from"defu";import{isString as n}from"@stryke/type-checks/is-string";import{joinPaths as r}from"@stryke/path/join-paths";import{omit as i}from"@stryke/helpers/omit";import{camelCase as a}from"@stryke/string-format/camel-case";const o={target:`esnext`,platform:`neutral`,format:`esm`,write:!0,minify:!0,sourcemap:!1,bundle:!0,treeShaking:!0,keepNames:!0,splitting:!0,logLevel:`silent`};function s(e){let n=e.config.build.override.inject??e.config.build.inject;return n&&Object.keys(n).length>0&&e.fs.writeSync(r(e.workspaceConfig.workspaceRoot,e.config.projectRoot,e.artifactsPath,`inject-shim.js`),Object.entries(n).map(([e,t])=>{if(t)if(Array.isArray(t)){if(a(e)!==e){if(t.length===1)return`
1
+ import"../entry.mjs";import{replacePath as e}from"@stryke/path/replace";import{joinPaths as t}from"@stryke/path/join-paths";import n from"defu";import{isString as r}from"@stryke/type-checks/is-string";import{omit as i}from"@stryke/helpers/omit";import{camelCase as a}from"@stryke/string-format/camel-case";const o={target:`esnext`,platform:`neutral`,format:`esm`,write:!0,minify:!0,sourcemap:!1,bundle:!0,treeShaking:!0,keepNames:!0,splitting:!0,logLevel:`silent`};function s(e){let r=e.config.build.override.inject??e.config.build.inject;return r&&Object.keys(r).length>0&&e.fs.writeSync(t(e.workspaceConfig.workspaceRoot,e.config.projectRoot,e.artifactsPath,`inject-shim.js`),Object.entries(r).map(([e,t])=>{if(t)if(Array.isArray(t)){if(a(e)!==e){if(t.length===1)return`
2
2
  import ${a(e)} from "${t[0]}";
3
3
  export { ${a(e)} as "${e}" }`;if(t.length>1)return`
4
4
  import ${t[1]===`*`?`* as ${a(e)}`:`{ ${t[1]} as ${a(e)} }`} from "${t[0]}";
@@ -11,4 +11,4 @@ import ${a(e)} from "${t[0]}";
11
11
  export { ${a(e)} as "${e}" }`;else return`
12
12
  import ${e} from "${t}";
13
13
  export { ${e} };`;return``}).join(`
14
- `)),t({alias:e.builtins.reduce((t,n)=>{if(!t[n]){let r=e.fs.ids[n];r&&(t[n]=r)}return t},e.config.build.alias?Array.isArray(e.config.build.alias)?e.config.build.alias.reduce((e,t)=>(e[t.find.toString()]||(e[t.find.toString()]=t.replacement),e),{}):e.config.build.alias:{}),inject:n&&Object.keys(n).length>0?[r(e.workspaceConfig.workspaceRoot,e.config.projectRoot,e.artifactsPath,`inject-shim.js`)]:void 0},e.config.build.variant===`esbuild`?i(e.config.build.override,[`alias`,`inject`,`external`,`noExternal`,`skipNodeModulesBundle`,`extensions`]):{},e.config.build.variant===`esbuild`?i(e.config.build,[`alias`,`inject`,`external`,`noExternal`,`skipNodeModulesBundle`,`extensions`,`variant`,`override`]):{},{mainFields:e.config.build.mainFields,conditions:e.config.build.conditions,define:e.config.build.define,resolveExtensions:e.config.build.extensions,packages:e.config.build.skipNodeModulesBundle?`external`:e.config.build.variant===`esbuild`?e.config.build.packages:void 0,format:Array.isArray(e.config.output.format)?e.config.output.format[0]:e.config.output.format,platform:e.config.build.platform,treeShaking:!!e.config.build?.treeshake||e.config.build?.treeShaking,outdir:e.config.output.buildPath,tsconfig:e.tsconfig.tsconfigFilePath,minify:e.config.mode!==`development`,metafile:e.config.mode===`development`,sourcemap:e.config.mode===`development`},o)}export{s as extractESBuildConfig};
14
+ `)),n({alias:e.builtins.reduce((t,n)=>{if(!t[n]){let r=e.fs.ids[n];r&&(t[n]=r)}return t},e.config.build.alias?Array.isArray(e.config.build.alias)?e.config.build.alias.reduce((e,t)=>(e[t.find.toString()]||(e[t.find.toString()]=t.replacement),e),{}):e.config.build.alias:{}),inject:r&&Object.keys(r).length>0?[t(e.workspaceConfig.workspaceRoot,e.config.projectRoot,e.artifactsPath,`inject-shim.js`)]:void 0},e.config.build.variant===`esbuild`?i(e.config.build.override,[`alias`,`inject`,`external`,`noExternal`,`skipNodeModulesBundle`,`extensions`]):{},e.config.build.variant===`esbuild`?i(e.config.build,[`alias`,`inject`,`external`,`noExternal`,`skipNodeModulesBundle`,`extensions`,`variant`,`override`]):{},{mainFields:e.config.build.mainFields,conditions:e.config.build.conditions,define:e.config.build.define,resolveExtensions:e.config.build.extensions,packages:e.config.build.skipNodeModulesBundle?`external`:e.config.build.variant===`esbuild`?e.config.build.packages:void 0,format:Array.isArray(e.config.output.format)?e.config.output.format[0]:e.config.output.format,platform:e.config.build.platform,treeShaking:!!e.config.build?.treeshake||e.config.build?.treeShaking,outdir:e.config.output.buildPath,tsconfig:e.tsconfig.tsconfigFilePath,minify:e.config.mode!==`development`,metafile:e.config.mode===`development`,sourcemap:e.config.mode===`development`},o)}export{s as extractESBuildConfig};
@@ -1 +1 @@
1
- require(`../plugin-utils/paths.cjs`);let e=require(`@stryke/path/replace`),t=require(`@stryke/type-checks/is-set-string`),n=require(`@stryke/type-checks/is-string`),r=require(`@stryke/convert/parse-type-definition`),i=require(`@stryke/convert/to-array`),a=require(`@stryke/helpers/get-unique`),o=require(`@stryke/path/join-paths`);require(`@stryke/fs/is-file`),require(`@stryke/fs/list-files`),require(`@stryke/hash/murmurhash`);let s=require(`@stryke/path/append`);
1
+ require(`../plugin-utils/paths.cjs`);let e=require(`@stryke/path/replace`),t=require(`@stryke/type-checks/is-set-string`),n=require(`@stryke/convert/to-array`),r=require(`@stryke/fs/is-file`),i=require(`@stryke/fs/list-files`),a=require(`@stryke/path/append`),o=require(`@stryke/path/join-paths`),s=require(`@stryke/type-checks/is-string`),c=require(`@stryke/convert/parse-type-definition`),l=require(`@stryke/helpers/get-unique`);require(`@stryke/hash/murmurhash`);
@@ -1 +1 @@
1
- import"../plugin-utils/paths.mjs";import{replacePath as e}from"@stryke/path/replace";import{isSetString as t}from"@stryke/type-checks/is-set-string";import{isString as n}from"@stryke/type-checks/is-string";import{parseTypeDefinition as r}from"@stryke/convert/parse-type-definition";import{toArray as i}from"@stryke/convert/to-array";import{getUniqueBy as a}from"@stryke/helpers/get-unique";import{joinPaths as o}from"@stryke/path/join-paths";import"@stryke/fs/is-file";import"@stryke/fs/list-files";import"@stryke/hash/murmurhash";import{appendPath as s}from"@stryke/path/append";export{};
1
+ import"../plugin-utils/paths.mjs";import{replacePath as e}from"@stryke/path/replace";import{isSetString as t}from"@stryke/type-checks/is-set-string";import{toArray as n}from"@stryke/convert/to-array";import"@stryke/fs/is-file";import{listFiles as r}from"@stryke/fs/list-files";import{appendPath as i}from"@stryke/path/append";import{joinPaths as a}from"@stryke/path/join-paths";import{isString as o}from"@stryke/type-checks/is-string";import{parseTypeDefinition as s}from"@stryke/convert/parse-type-definition";import{getUniqueBy as c}from"@stryke/helpers/get-unique";import"@stryke/hash/murmurhash";export{};
@@ -5,8 +5,8 @@ import { TSConfig } from "./tsconfig.mjs";
5
5
  import { PluginContext } from "./context.mjs";
6
6
  import { Plugin } from "./plugin.mjs";
7
7
  import { LogLevelLabel } from "@storm-software/config-tools/types";
8
- import { transformAsync } from "@babel/core";
9
8
  import "c12";
9
+ import { transformAsync } from "@babel/core";
10
10
  import { MaybePromise } from "@stryke/types/base";
11
11
  import { PreviewOptions } from "vite";
12
12
  import { Format } from "@storm-software/build-tools/types";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@powerlines/plugin-crypto",
3
- "version": "0.10.74",
3
+ "version": "0.10.75",
4
4
  "type": "module",
5
5
  "description": "A Powerlines plugin that provides unique identifier generation capabilities at runtime by adding the `id` builtin module.",
6
6
  "repository": {
@@ -128,17 +128,17 @@
128
128
  "files": ["dist/**/*"],
129
129
  "keywords": ["powerlines", "storm-software", "powerlines-plugin"],
130
130
  "dependencies": {
131
- "@powerlines/plugin-env": "^0.13.106",
131
+ "@powerlines/plugin-env": "^0.14.0",
132
132
  "@storm-software/config-tools": "^1.188.73",
133
133
  "@stryke/path": "^0.24.0",
134
134
  "defu": "^6.1.4",
135
- "powerlines": "^0.36.2",
135
+ "powerlines": "^0.36.3",
136
136
  "@noble/ciphers": "^2.1.1"
137
137
  },
138
138
  "devDependencies": {
139
- "@powerlines/nx": "^0.11.28",
139
+ "@powerlines/nx": "^0.11.29",
140
140
  "@types/node": "^24.10.4"
141
141
  },
142
142
  "publishConfig": { "access": "public" },
143
- "gitHead": "916e24a276b03bbc9d64349bf85f37ffb43d5e87"
143
+ "gitHead": "0d695fa64043ba14e7c7ae8759e9e0cf5b2a6b38"
144
144
  }