@powerlines/plugin-nodejs 0.1.0 → 0.1.1

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 (199) hide show
  1. package/dist/_virtual/rolldown_runtime.cjs +29 -0
  2. package/dist/components/env.cjs +188 -2
  3. package/dist/components/env.d.cts +9 -2
  4. package/dist/components/env.d.mts +9 -2
  5. package/dist/components/env.mjs +185 -1
  6. package/dist/components/index.cjs +2 -3
  7. package/dist/components/index.d.cts +1 -3
  8. package/dist/components/index.d.mts +1 -3
  9. package/dist/components/index.mjs +1 -2
  10. package/dist/deepkit/schemas/reflection.cjs +3940 -0
  11. package/dist/{plugin-D7kBf19k.d.cts → deepkit/schemas/reflection.d.cts} +1 -1078
  12. package/dist/{plugin-JL1BtFku.d.mts → deepkit/schemas/reflection.d.mts} +59 -1136
  13. package/dist/deepkit/schemas/reflection.mjs +3938 -0
  14. package/dist/deepkit/schemas/reflection2.cjs +4112 -0
  15. package/dist/deepkit/schemas/reflection2.mjs +4110 -0
  16. package/dist/deepkit/src/capnp.cjs +913 -0
  17. package/dist/deepkit/src/capnp.mjs +911 -0
  18. package/dist/deepkit/src/esbuild-plugin.cjs +47 -0
  19. package/dist/deepkit/src/esbuild-plugin.mjs +46 -0
  20. package/dist/deepkit/src/reflect-type.cjs +22 -0
  21. package/dist/deepkit/src/reflect-type.mjs +20 -0
  22. package/dist/deepkit/src/resolve-reflections.cjs +16 -0
  23. package/dist/deepkit/src/resolve-reflections.mjs +15 -0
  24. package/dist/deepkit/src/transformer.cjs +52 -0
  25. package/dist/deepkit/src/transformer.mjs +49 -0
  26. package/dist/deepkit/src/transpile.cjs +29 -0
  27. package/dist/deepkit/src/transpile.mjs +27 -0
  28. package/dist/deepkit/src/types.d.cts +10 -0
  29. package/dist/deepkit/src/types.d.mts +10 -0
  30. package/dist/deepkit/src/utilities.cjs +66 -0
  31. package/dist/deepkit/src/utilities.mjs +65 -0
  32. package/dist/index.cjs +14 -813
  33. package/dist/index.d.cts +5 -5
  34. package/dist/index.d.mts +5 -5
  35. package/dist/index.mjs +11 -803
  36. package/dist/plugin-alloy/src/core/components/output.cjs +45 -0
  37. package/dist/plugin-alloy/src/core/components/output.mjs +44 -0
  38. package/dist/plugin-alloy/src/core/components/single-line-comment.cjs +22 -0
  39. package/dist/plugin-alloy/src/core/components/single-line-comment.mjs +21 -0
  40. package/dist/plugin-alloy/src/core/components/source-file.cjs +64 -0
  41. package/dist/plugin-alloy/src/core/components/source-file.d.cts +23 -0
  42. package/dist/plugin-alloy/src/core/components/source-file.d.mts +23 -0
  43. package/dist/plugin-alloy/src/core/components/source-file.mjs +62 -0
  44. package/dist/plugin-alloy/src/core/contexts/context.cjs +60 -0
  45. package/dist/plugin-alloy/src/core/contexts/context.mjs +54 -0
  46. package/dist/plugin-alloy/src/core/contexts/index.cjs +2 -0
  47. package/dist/plugin-alloy/src/core/contexts/index.mjs +4 -0
  48. package/dist/plugin-alloy/src/core/contexts/reflection.cjs +46 -0
  49. package/dist/plugin-alloy/src/core/contexts/reflection.mjs +42 -0
  50. package/dist/plugin-alloy/src/helpers/refkey.cjs +16 -0
  51. package/dist/plugin-alloy/src/helpers/refkey.mjs +15 -0
  52. package/dist/plugin-alloy/src/index.cjs +93 -0
  53. package/dist/plugin-alloy/src/index.mjs +91 -0
  54. package/dist/plugin-alloy/src/markdown/components/markdown-file.cjs +7 -0
  55. package/dist/plugin-alloy/src/markdown/components/markdown-file.mjs +9 -0
  56. package/dist/plugin-alloy/src/markdown/components/markdown-table.cjs +5 -0
  57. package/dist/plugin-alloy/src/markdown/components/markdown-table.mjs +7 -0
  58. package/dist/plugin-alloy/src/markdown/contexts/markdown-table.cjs +17 -0
  59. package/dist/plugin-alloy/src/markdown/contexts/markdown-table.mjs +17 -0
  60. package/dist/plugin-alloy/src/types/components.d.cts +22 -0
  61. package/dist/plugin-alloy/src/types/components.d.mts +24 -0
  62. package/dist/plugin-alloy/src/types/index.d.mts +2 -0
  63. package/dist/plugin-alloy/src/types/plugin.d.cts +37 -0
  64. package/dist/plugin-alloy/src/types/plugin.d.mts +37 -0
  65. package/dist/plugin-alloy/src/typescript/components/builtin-file.cjs +57 -0
  66. package/dist/plugin-alloy/src/typescript/components/builtin-file.d.cts +25 -0
  67. package/dist/plugin-alloy/src/typescript/components/builtin-file.d.mts +26 -0
  68. package/dist/plugin-alloy/src/typescript/components/builtin-file.mjs +56 -0
  69. package/dist/plugin-alloy/src/typescript/components/tsdoc-reflection.cjs +126 -0
  70. package/dist/plugin-alloy/src/typescript/components/tsdoc-reflection.mjs +124 -0
  71. package/dist/plugin-alloy/src/typescript/components/tsdoc.cjs +442 -0
  72. package/dist/plugin-alloy/src/typescript/components/tsdoc.d.cts +27 -0
  73. package/dist/plugin-alloy/src/typescript/components/tsdoc.d.mts +28 -0
  74. package/dist/plugin-alloy/src/typescript/components/tsdoc.mjs +433 -0
  75. package/dist/plugin-alloy/src/typescript/components/typescript-file.cjs +194 -0
  76. package/dist/plugin-alloy/src/typescript/components/typescript-file.d.cts +14 -0
  77. package/dist/plugin-alloy/src/typescript/components/typescript-file.d.mts +15 -0
  78. package/dist/plugin-alloy/src/typescript/components/typescript-file.mjs +191 -0
  79. package/dist/plugin-alloy/src/typescript/components/typescript-interface.cjs +68 -0
  80. package/dist/plugin-alloy/src/typescript/components/typescript-interface.d.cts +1 -0
  81. package/dist/plugin-alloy/src/typescript/components/typescript-interface.d.mts +4 -0
  82. package/dist/plugin-alloy/src/typescript/components/typescript-interface.mjs +67 -0
  83. package/dist/plugin-alloy/src/typescript/components/typescript-object.cjs +124 -0
  84. package/dist/plugin-alloy/src/typescript/components/typescript-object.mjs +123 -0
  85. package/dist/plugin-automd/src/index.cjs +101 -0
  86. package/dist/plugin-automd/src/index.mjs +98 -0
  87. package/dist/plugin-automd/src/types/plugin.d.cts +38 -0
  88. package/dist/plugin-automd/src/types/plugin.d.mts +40 -0
  89. package/dist/plugin-automd/src/types/toc.d.cts +33 -0
  90. package/dist/plugin-automd/src/types/toc.d.mts +33 -0
  91. package/dist/plugin-babel/src/helpers/ast-utils.cjs +10 -0
  92. package/dist/plugin-babel/src/helpers/ast-utils.mjs +9 -0
  93. package/dist/plugin-babel/src/helpers/create-plugin.cjs +41 -0
  94. package/dist/plugin-babel/src/helpers/create-plugin.mjs +39 -0
  95. package/dist/plugin-babel/src/helpers/filters.cjs +23 -0
  96. package/dist/plugin-babel/src/helpers/filters.mjs +21 -0
  97. package/dist/plugin-babel/src/helpers/index.cjs +5 -0
  98. package/dist/plugin-babel/src/helpers/index.mjs +7 -0
  99. package/dist/plugin-babel/src/helpers/module-helpers.cjs +38 -0
  100. package/dist/plugin-babel/src/helpers/module-helpers.mjs +35 -0
  101. package/dist/plugin-babel/src/helpers/options.cjs +50 -0
  102. package/dist/plugin-babel/src/helpers/options.mjs +47 -0
  103. package/dist/plugin-babel/src/index.cjs +91 -0
  104. package/dist/plugin-babel/src/index.mjs +89 -0
  105. package/dist/plugin-babel/src/types/index.d.mts +1 -0
  106. package/dist/plugin-babel/src/types/plugin.d.cts +15 -0
  107. package/dist/plugin-babel/src/types/plugin.d.mts +15 -0
  108. package/dist/plugin-env/src/babel/index.cjs +1 -0
  109. package/dist/plugin-env/src/babel/index.mjs +3 -0
  110. package/dist/plugin-env/src/babel/plugin.cjs +121 -0
  111. package/dist/plugin-env/src/babel/plugin.mjs +119 -0
  112. package/dist/plugin-env/src/components/docs.cjs +9 -0
  113. package/dist/plugin-env/src/components/docs.mjs +11 -0
  114. package/dist/plugin-env/src/components/env.cjs +575 -0
  115. package/dist/plugin-env/src/components/env.d.cts +11 -0
  116. package/dist/plugin-env/src/components/env.d.mts +11 -0
  117. package/dist/plugin-env/src/components/env.mjs +572 -0
  118. package/dist/plugin-env/src/components/index.cjs +2 -0
  119. package/dist/plugin-env/src/components/index.mjs +4 -0
  120. package/dist/plugin-env/src/helpers/automd-generator.cjs +22 -0
  121. package/dist/plugin-env/src/helpers/automd-generator.mjs +21 -0
  122. package/dist/plugin-env/src/helpers/create-reflection-resource.cjs +55 -0
  123. package/dist/plugin-env/src/helpers/create-reflection-resource.mjs +54 -0
  124. package/dist/plugin-env/src/helpers/index.cjs +6 -0
  125. package/dist/plugin-env/src/helpers/index.mjs +8 -0
  126. package/dist/plugin-env/src/helpers/load.cjs +83 -0
  127. package/dist/plugin-env/src/helpers/load.mjs +80 -0
  128. package/dist/plugin-env/src/helpers/persistence.cjs +199 -0
  129. package/dist/plugin-env/src/helpers/persistence.mjs +188 -0
  130. package/dist/plugin-env/src/helpers/reflect.cjs +111 -0
  131. package/dist/plugin-env/src/helpers/reflect.mjs +103 -0
  132. package/dist/plugin-env/src/helpers/source-file-env.cjs +24 -0
  133. package/dist/plugin-env/src/helpers/source-file-env.mjs +23 -0
  134. package/dist/plugin-env/src/helpers/template-helpers.cjs +2 -0
  135. package/dist/plugin-env/src/helpers/template-helpers.mjs +4 -0
  136. package/dist/plugin-env/src/index.cjs +175 -0
  137. package/dist/plugin-env/src/index.mjs +173 -0
  138. package/dist/plugin-env/src/types/plugin.d.cts +151 -0
  139. package/dist/plugin-env/src/types/plugin.d.mts +153 -0
  140. package/dist/plugin-env/src/types/runtime.d.cts +792 -0
  141. package/dist/plugin-env/src/types/runtime.d.mts +792 -0
  142. package/dist/powerlines/src/lib/build/esbuild.cjs +102 -0
  143. package/dist/powerlines/src/lib/build/esbuild.mjs +100 -0
  144. package/dist/powerlines/src/lib/entry.cjs +12 -0
  145. package/dist/powerlines/src/lib/entry.mjs +14 -0
  146. package/dist/powerlines/src/lib/logger.cjs +41 -0
  147. package/dist/powerlines/src/lib/logger.mjs +39 -0
  148. package/dist/powerlines/src/lib/typescript/tsconfig.cjs +38 -0
  149. package/dist/powerlines/src/lib/typescript/tsconfig.mjs +35 -0
  150. package/dist/powerlines/src/lib/utilities/bundle.cjs +35 -0
  151. package/dist/powerlines/src/lib/utilities/bundle.mjs +34 -0
  152. package/dist/powerlines/src/lib/utilities/resolve.cjs +30 -0
  153. package/dist/powerlines/src/lib/utilities/resolve.mjs +29 -0
  154. package/dist/powerlines/src/plugin-utils/paths.cjs +1 -0
  155. package/dist/powerlines/src/plugin-utils/paths.mjs +3 -0
  156. package/dist/powerlines/src/types/babel.d.cts +22 -0
  157. package/dist/powerlines/src/types/babel.d.mts +22 -0
  158. package/dist/powerlines/src/types/build.d.cts +145 -0
  159. package/dist/powerlines/src/types/build.d.mts +145 -0
  160. package/dist/powerlines/src/types/commands.d.cts +8 -0
  161. package/dist/powerlines/src/types/commands.d.mts +9 -0
  162. package/dist/powerlines/src/types/config.d.cts +387 -0
  163. package/dist/powerlines/src/types/config.d.mts +388 -0
  164. package/dist/powerlines/src/types/context.d.cts +414 -0
  165. package/dist/powerlines/src/types/context.d.mts +416 -0
  166. package/dist/powerlines/src/types/fs.d.cts +486 -0
  167. package/dist/powerlines/src/types/fs.d.mts +486 -0
  168. package/dist/powerlines/src/types/hooks.d.mts +2 -0
  169. package/dist/powerlines/src/types/plugin.d.cts +231 -0
  170. package/dist/powerlines/src/types/plugin.d.mts +231 -0
  171. package/dist/powerlines/src/types/resolved.d.cts +82 -0
  172. package/dist/powerlines/src/types/resolved.d.mts +82 -0
  173. package/dist/powerlines/src/types/tsconfig.d.cts +69 -0
  174. package/dist/powerlines/src/types/tsconfig.d.mts +69 -0
  175. package/dist/types/index.cjs +0 -2
  176. package/dist/types/index.d.cts +1 -3
  177. package/dist/types/index.d.mts +1 -3
  178. package/dist/types/index.mjs +0 -3
  179. package/dist/types/plugin.cjs +0 -1
  180. package/dist/types/plugin.d.cts +22 -2
  181. package/dist/types/plugin.d.mts +22 -2
  182. package/dist/types/plugin.mjs +0 -2
  183. package/package.json +6 -6
  184. package/dist/components-BWLXb7a2.cjs +0 -0
  185. package/dist/components-CXZYcH4q.d.mts +0 -1816
  186. package/dist/components-kh0CpIG2.mjs +0 -1
  187. package/dist/env-CAhIy_H3.cjs +0 -11713
  188. package/dist/env-CUyFiniR.d.cts +0 -107
  189. package/dist/env-IF4XhMjG.mjs +0 -11570
  190. package/dist/env-sRb-Y8mJ.d.mts +0 -89
  191. package/dist/index-CUbWeWHc.d.mts +0 -1
  192. package/dist/index-D6CnpA_r.d.cts +0 -1
  193. package/dist/index-DL0uimUT.d.mts +0 -1
  194. package/dist/index-DWPDThxu.d.cts +0 -1
  195. package/dist/plugin-ifZVa20V.mjs +0 -1
  196. package/dist/plugin-pBKbb5K9.cjs +0 -0
  197. package/dist/resolved-zsx09G03.d.cts +0 -1795
  198. package/dist/types-U3zd8PTP.mjs +0 -1
  199. package/dist/types-o3zWarRp.cjs +0 -0
@@ -0,0 +1,575 @@
1
+ const require_rolldown_runtime = require('../../../_virtual/rolldown_runtime.cjs');
2
+ const require_context = require('../../../plugin-alloy/src/core/contexts/context.cjs');
3
+ const require_refkey = require('../../../plugin-alloy/src/helpers/refkey.cjs');
4
+ const require_tsdoc = require('../../../plugin-alloy/src/typescript/components/tsdoc.cjs');
5
+ const require_builtin_file = require('../../../plugin-alloy/src/typescript/components/builtin-file.cjs');
6
+ const require_typescript_interface = require('../../../plugin-alloy/src/typescript/components/typescript-interface.cjs');
7
+ const require_typescript_object = require('../../../plugin-alloy/src/typescript/components/typescript-object.cjs');
8
+ const require_load = require('../helpers/load.cjs');
9
+ const require_create_reflection_resource = require('../helpers/create-reflection-resource.cjs');
10
+ let __alloy_js_core_jsx_runtime = require("@alloy-js/core/jsx-runtime");
11
+ let defu = require("defu");
12
+ defu = require_rolldown_runtime.__toESM(defu);
13
+ let __stryke_string_format_title_case = require("@stryke/string-format/title-case");
14
+ let __powerlines_deepkit_vendor_type = require("@powerlines/deepkit/vendor/type");
15
+ let __alloy_js_core = require("@alloy-js/core");
16
+ let __stryke_type_checks_is_null = require("@stryke/type-checks/is-null");
17
+ let __alloy_js_typescript = require("@alloy-js/typescript");
18
+
19
+ //#region ../plugin-env/src/components/env.tsx
20
+ /**
21
+ * Generates the environment configuration typescript definition for the Powerlines project.
22
+ */
23
+ function EnvTypeDefinition(props) {
24
+ const [{ defaultValue, reflection }] = (0, __alloy_js_core.splitProps)(props, ["defaultValue", "reflection"]);
25
+ const context = require_context.usePowerlines();
26
+ return [
27
+ (0, __alloy_js_core_jsx_runtime.createComponent)(require_typescript_interface.TypeScriptInterface, {
28
+ name: " EnvBase",
29
+ "extends": ["EnvInterface"],
30
+ defaultValue,
31
+ reflection,
32
+ "export": true
33
+ }),
34
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
35
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
36
+ (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_typescript.TypeDeclaration, {
37
+ name: "Env",
38
+ "export": true,
39
+ get children() {
40
+ return __alloy_js_core.code` {
41
+ [Key in keyof EnvBase as Key ${context?.config.env.prefix.map((prefix) => `| \`${prefix.replace(/_$/g, "")}_\${Key}\``).join(" ")}]: EnvBase[Key];
42
+ }
43
+ `;
44
+ }
45
+ })
46
+ ];
47
+ }
48
+ function ConfigPropertyConditional(props) {
49
+ const [{ context, name }] = (0, __alloy_js_core.splitProps)(props, ["context", "name"]);
50
+ if (!context) return null;
51
+ return __alloy_js_core.code`propertyName === "${name}" || propertyName.replace(/^(${context.config.env.prefix.sort((a, b) => a.startsWith(b) ? -1 : b.startsWith(a) ? 1 : a.localeCompare(b)).map((prefix) => `${prefix.replace(/_$/, "")}_`).join("|")})/g, "").toLowerCase().replace(/[\\s\\-_]+/g, "") === "${name.toLowerCase().replace(/[\s\-_]+/g, "")}"`;
52
+ }
53
+ function ConfigPropertyGet(props) {
54
+ const [{ context, property, index }] = (0, __alloy_js_core.splitProps)(props, [
55
+ "context",
56
+ "property",
57
+ "index"
58
+ ]);
59
+ if (!context) return null;
60
+ return [index === 0 ? (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_typescript.IfStatement, {
61
+ get condition() {
62
+ return [(0, __alloy_js_core_jsx_runtime.createComponent)(ConfigPropertyConditional, {
63
+ get name() {
64
+ return property.getNameAsString();
65
+ },
66
+ context
67
+ }), (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_core.Show, {
68
+ get when() {
69
+ return (0, __alloy_js_core_jsx_runtime.memo)(() => !!property.getAlias())() && property.getAlias().length > 0;
70
+ },
71
+ get children() {
72
+ return [__alloy_js_core.code` || `, (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_core.For, {
73
+ get each() {
74
+ return property.getAlias();
75
+ },
76
+ joiner: __alloy_js_core.code` || `,
77
+ children: (alias) => (0, __alloy_js_core_jsx_runtime.createComponent)(ConfigPropertyConditional, {
78
+ name: alias,
79
+ context
80
+ })
81
+ })];
82
+ }
83
+ })];
84
+ },
85
+ get children() {
86
+ return __alloy_js_core.code`return target["${property.getNameAsString()}"];`;
87
+ }
88
+ }) : (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_typescript.ElseIfClause, {
89
+ get condition() {
90
+ return [(0, __alloy_js_core_jsx_runtime.createComponent)(ConfigPropertyConditional, {
91
+ get name() {
92
+ return property.getNameAsString();
93
+ },
94
+ context
95
+ }), (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_core.Show, {
96
+ get when() {
97
+ return (0, __alloy_js_core_jsx_runtime.memo)(() => !!property.getAlias())() && property.getAlias().length > 0;
98
+ },
99
+ get children() {
100
+ return [__alloy_js_core.code` || `, (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_core.For, {
101
+ get each() {
102
+ return property.getAlias();
103
+ },
104
+ joiner: __alloy_js_core.code` || `,
105
+ children: (alias) => (0, __alloy_js_core_jsx_runtime.createComponent)(ConfigPropertyConditional, {
106
+ name: alias,
107
+ context
108
+ })
109
+ })];
110
+ }
111
+ })];
112
+ },
113
+ get children() {
114
+ return __alloy_js_core.code`return target["${property.getNameAsString()}"];`;
115
+ }
116
+ })];
117
+ }
118
+ function ConfigPropertySet(props) {
119
+ const [{ context, property, index }] = (0, __alloy_js_core.splitProps)(props, [
120
+ "context",
121
+ "property",
122
+ "index"
123
+ ]);
124
+ if (!context) return null;
125
+ return [index === 0 ? (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_typescript.IfStatement, {
126
+ get condition() {
127
+ return [(0, __alloy_js_core_jsx_runtime.createComponent)(ConfigPropertyConditional, {
128
+ get name() {
129
+ return property.getNameAsString();
130
+ },
131
+ context
132
+ }), (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_core.Show, {
133
+ get when() {
134
+ return (0, __alloy_js_core_jsx_runtime.memo)(() => !!property.getAlias())() && property.getAlias().length > 0;
135
+ },
136
+ get children() {
137
+ return [__alloy_js_core.code` || `, (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_core.For, {
138
+ get each() {
139
+ return property.getAlias();
140
+ },
141
+ joiner: __alloy_js_core.code` || `,
142
+ children: (alias) => (0, __alloy_js_core_jsx_runtime.createComponent)(ConfigPropertyConditional, {
143
+ name: alias,
144
+ context
145
+ })
146
+ })];
147
+ }
148
+ })];
149
+ },
150
+ get children() {
151
+ return __alloy_js_core.code`
152
+ target["${property.getNameAsString()}"] = newValue;
153
+ return true;
154
+ `;
155
+ }
156
+ }) : (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_typescript.ElseIfClause, {
157
+ get condition() {
158
+ return [(0, __alloy_js_core_jsx_runtime.createComponent)(ConfigPropertyConditional, {
159
+ get name() {
160
+ return property.getNameAsString();
161
+ },
162
+ context
163
+ }), (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_core.Show, {
164
+ get when() {
165
+ return (0, __alloy_js_core_jsx_runtime.memo)(() => !!property.getAlias())() && property.getAlias().length > 0;
166
+ },
167
+ get children() {
168
+ return [__alloy_js_core.code` || `, (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_core.For, {
169
+ get each() {
170
+ return property.getAlias();
171
+ },
172
+ joiner: __alloy_js_core.code` || `,
173
+ children: (alias) => (0, __alloy_js_core_jsx_runtime.createComponent)(ConfigPropertyConditional, {
174
+ name: alias,
175
+ context
176
+ })
177
+ })];
178
+ }
179
+ })];
180
+ },
181
+ get children() {
182
+ return __alloy_js_core.code`
183
+ target["${property.getNameAsString()}"] = newValue;
184
+ return true;
185
+ `;
186
+ }
187
+ })];
188
+ }
189
+ const createEnvRefkey = require_refkey.refkey("createEnv");
190
+ const envRefkey = require_refkey.refkey("env");
191
+ const envSerializerRefkey = require_refkey.refkey("EnvSerializer");
192
+ /**
193
+ * Generates the environment configuration module for the Powerlines project.
194
+ */
195
+ function EnvBuiltin(props) {
196
+ const [{ defaultConfig, children }, rest] = (0, __alloy_js_core.splitProps)(props, ["defaultConfig", "children"]);
197
+ const context = require_context.usePowerlines();
198
+ const defaultValue = (0, __alloy_js_core.computed)(() => context && require_load.loadEnvFromContext(context, process.env));
199
+ const reflection = require_create_reflection_resource.createReflectionResource(context);
200
+ const envInstance = (0, __alloy_js_core.computed)(() => {
201
+ return new __powerlines_deepkit_vendor_type.ReflectionClass({
202
+ kind: __powerlines_deepkit_vendor_type.ReflectionKind.objectLiteral,
203
+ description: `The initial environment configuration state for the ${(0, __stryke_string_format_title_case.titleCase)(context?.config?.name)} project.`,
204
+ types: []
205
+ }, reflection.data ?? void 0);
206
+ });
207
+ const reflectionGetProperties = (0, __alloy_js_core.computed)(() => reflection.data?.getProperties().filter((property) => !property.isIgnored()).sort((a, b) => a.getNameAsString().localeCompare(b.getNameAsString())) ?? []);
208
+ const reflectionSetProperties = (0, __alloy_js_core.computed)(() => reflection.data?.getProperties().filter((property) => !property.isIgnored() && !property.isReadonly()).sort((a, b) => a.getNameAsString().localeCompare(b.getNameAsString())) ?? []);
209
+ return (0, __alloy_js_core_jsx_runtime.createComponent)(require_builtin_file.BuiltinFile, (0, __alloy_js_core_jsx_runtime.mergeProps)({
210
+ id: "env",
211
+ description: "The Powerlines environment configuration module provides an interface to define environment configuration parameters."
212
+ }, rest, {
213
+ get imports() {
214
+ return (0, defu.default)({
215
+ "@powerlines/deepkit/vendor/type": [
216
+ "Type",
217
+ "stringify",
218
+ "serializer",
219
+ "serializeFunction",
220
+ "deserializeFunction",
221
+ "ReflectionKind",
222
+ "TemplateState",
223
+ "Serializer",
224
+ "TypeProperty",
225
+ "TypePropertySignature"
226
+ ],
227
+ "@powerlines/plugin-env/types/runtime": [{ name: "EnvInterface" }]
228
+ }, rest.imports ?? {});
229
+ },
230
+ get children() {
231
+ return [
232
+ (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_core.Show, {
233
+ get when() {
234
+ return !(0, __stryke_type_checks_is_null.isNull)(reflection.data);
235
+ },
236
+ get children() {
237
+ return [
238
+ (0, __alloy_js_core_jsx_runtime.createComponent)(EnvTypeDefinition, {
239
+ get defaultValue() {
240
+ return defaultValue.value;
241
+ },
242
+ get reflection() {
243
+ return reflection.data;
244
+ }
245
+ }),
246
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
247
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {})
248
+ ];
249
+ }
250
+ }),
251
+ (0, __alloy_js_core_jsx_runtime.createComponent)(require_typescript_object.TypescriptObject, {
252
+ name: "initialEnv",
253
+ type: "Partial<EnvBase>",
254
+ defaultValue,
255
+ reflection: envInstance,
256
+ "export": true,
257
+ "const": true
258
+ }),
259
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
260
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
261
+ (0, __alloy_js_core_jsx_runtime.createComponent)(require_tsdoc.TSDoc, {
262
+ heading: "The environment configuration serializer for the Powerlines application.",
263
+ get children() {
264
+ return [
265
+ (0, __alloy_js_core_jsx_runtime.createComponent)(require_tsdoc.TSDocLink, { children: `https://deepkit.io/docs/serialization/serializers` }),
266
+ (0, __alloy_js_core_jsx_runtime.createComponent)(require_tsdoc.TSDocLink, { children: `https://github.com/marcj/untitled-code/blob/master/packages/type/src/serializer.ts#L1918` }),
267
+ (0, __alloy_js_core_jsx_runtime.createComponent)(require_tsdoc.TSDocRemarks, { children: `This serializer is used to serialize and deserialize the Powerlines environment configuration.` })
268
+ ];
269
+ }
270
+ }),
271
+ (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_typescript.ClassDeclaration, {
272
+ refkey: envSerializerRefkey,
273
+ name: "EnvSerializer",
274
+ "extends": "Serializer",
275
+ "export": true,
276
+ get children() {
277
+ return (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_typescript.ClassMethod, {
278
+ name: "constructor",
279
+ "public": true,
280
+ children: __alloy_js_core.code`
281
+ super("env");
282
+
283
+ this.deserializeRegistry.register(
284
+ ReflectionKind.boolean,
285
+ (type: Type, state: TemplateState) => {
286
+ state.addSetter(
287
+ \`typeof \${state.accessor.toString()} !== "boolean" ? \${state.accessor.toString()} === 1 || \${state.accessor.toString()} === "1" || \${state.accessor.toString()}.toLowerCase() === "t" || \${state.accessor.toString()}.toLowerCase() === "true" || \${state.accessor.toString()}.toLowerCase() === "y" || \${state.accessor.toString()}.toLowerCase() === "yes" : \${state.accessor.toString()}\`
288
+ );
289
+ }
290
+ );
291
+ `
292
+ });
293
+ }
294
+ }),
295
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
296
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
297
+ (0, __alloy_js_core_jsx_runtime.createComponent)(require_tsdoc.TSDoc, {
298
+ heading: "A {@link EnvSerializer | environment configuration serializer} instance for the Powerlines application.",
299
+ get children() {
300
+ return [
301
+ (0, __alloy_js_core_jsx_runtime.createComponent)(require_tsdoc.TSDocLink, { children: `https://deepkit.io/docs/serialization/serializers` }),
302
+ (0, __alloy_js_core_jsx_runtime.createComponent)(require_tsdoc.TSDocLink, { children: `https://github.com/marcj/untitled-code/blob/master/packages/type/src/serializer.ts#L1918` }),
303
+ (0, __alloy_js_core_jsx_runtime.createComponent)(require_tsdoc.TSDocRemarks, { children: `This serializer is used to serialize and deserialize the Powerlines environment configuration.` })
304
+ ];
305
+ }
306
+ }),
307
+ (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_typescript.VarDeclaration, {
308
+ name: "envSerializer",
309
+ "export": false,
310
+ "const": true,
311
+ get initializer() {
312
+ return (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_typescript.NewExpression, {
313
+ args: [],
314
+ target: "EnvSerializer"
315
+ });
316
+ }
317
+ }),
318
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
319
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
320
+ (0, __alloy_js_core_jsx_runtime.createComponent)(require_tsdoc.TSDoc, {
321
+ heading: "Serialize a environment configuration object to JSON data objects (not a JSON string).",
322
+ get children() {
323
+ return [
324
+ (0, __alloy_js_core_jsx_runtime.createComponent)(require_tsdoc.TSDocRemarks, { children: `The resulting JSON object can be stringified using JSON.stringify().` }),
325
+ (0, __alloy_js_core_jsx_runtime.createComponent)(require_tsdoc.TSDocExample, { children: `const json = serializeEnv(env);` }),
326
+ (0, __alloy_js_core_jsx_runtime.createComponent)(require_tsdoc.TSDocThrows, { children: `ValidationError when serialization or validation fails.` })
327
+ ];
328
+ }
329
+ }),
330
+ (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_typescript.VarDeclaration, {
331
+ name: "serializeEnv",
332
+ "export": true,
333
+ "const": true,
334
+ initializer: "serializeFunction<EnvBase>(envSerializer)"
335
+ }),
336
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
337
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
338
+ (0, __alloy_js_core_jsx_runtime.createComponent)(require_tsdoc.TSDoc, {
339
+ heading: "Deserialize a environment configuration object from JSON data objects to JavaScript objects, without running any validators.",
340
+ get children() {
341
+ return [
342
+ (0, __alloy_js_core_jsx_runtime.createComponent)(require_tsdoc.TSDocRemarks, { children: `Types that are already correct will be used as-is.` }),
343
+ (0, __alloy_js_core_jsx_runtime.createComponent)(require_tsdoc.TSDocExample, { children: `const env = deserializeEnv(json);` }),
344
+ (0, __alloy_js_core_jsx_runtime.createComponent)(require_tsdoc.TSDocThrows, { children: `ValidationError when deserialization fails.` })
345
+ ];
346
+ }
347
+ }),
348
+ (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_typescript.VarDeclaration, {
349
+ name: "deserializeEnv",
350
+ "export": true,
351
+ "const": true,
352
+ initializer: "deserializeFunction<EnvBase>(envSerializer)"
353
+ }),
354
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
355
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
356
+ (0, __alloy_js_core_jsx_runtime.createComponent)(require_tsdoc.TSDoc, {
357
+ heading: "Initializes the Powerlines environment configuration module.",
358
+ get children() {
359
+ return [
360
+ (0, __alloy_js_core_jsx_runtime.createComponent)(require_tsdoc.TSDocRemarks, { children: `This function initializes the Powerlines environment configuration object.` }),
361
+ (0, __alloy_js_core_jsx_runtime.createComponent)(require_tsdoc.TSDocParam, {
362
+ name: "environmentConfig",
363
+ children: `The dynamic/runtime configuration - this could include the current environment variables or any other environment-specific settings provided by the runtime.`
364
+ }),
365
+ (0, __alloy_js_core_jsx_runtime.createComponent)(require_tsdoc.TSDocReturns, { children: `The initialized Powerlines configuration object.` })
366
+ ];
367
+ }
368
+ }),
369
+ (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_core.Show, {
370
+ get when() {
371
+ return Boolean(context?.entryPath);
372
+ },
373
+ get children() {
374
+ return (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_typescript.FunctionDeclaration, {
375
+ refkey: createEnvRefkey,
376
+ async: false,
377
+ "export": true,
378
+ name: "createEnv",
379
+ parameters: [{
380
+ name: "environmentConfig",
381
+ type: `Partial<Env>`,
382
+ optional: false,
383
+ default: "{}"
384
+ }],
385
+ returnType: "Env",
386
+ get children() {
387
+ return [
388
+ __alloy_js_core.code`
389
+ return new Proxy<Env>(
390
+ deserializeEnv({
391
+ ...initialEnv,
392
+ ...environmentConfig
393
+ }) as Env,
394
+ {
395
+ get: (target: EnvBase, propertyName: string) => { `,
396
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
397
+ (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_core.For, {
398
+ each: reflectionGetProperties,
399
+ children: (property, index) => (0, __alloy_js_core_jsx_runtime.createComponent)(ConfigPropertyGet, {
400
+ index,
401
+ context,
402
+ property
403
+ })
404
+ }),
405
+ __alloy_js_core.code`
406
+ return undefined;
407
+ }, `,
408
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
409
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
410
+ __alloy_js_core.code` set: (target: EnvBase, propertyName: string, newValue: any) => { `,
411
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
412
+ (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_core.For, {
413
+ each: reflectionSetProperties,
414
+ ender: __alloy_js_core.code` else `,
415
+ children: (property, index) => (0, __alloy_js_core_jsx_runtime.createComponent)(ConfigPropertySet, {
416
+ index,
417
+ context,
418
+ property
419
+ })
420
+ }),
421
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
422
+ __alloy_js_core.code`return false;
423
+ }
424
+ }
425
+ );
426
+ `
427
+ ];
428
+ }
429
+ });
430
+ }
431
+ }),
432
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
433
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
434
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
435
+ (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_typescript.VarDeclaration, {
436
+ refkey: envRefkey,
437
+ name: "env",
438
+ type: "Env",
439
+ "export": true,
440
+ "const": true,
441
+ get initializer() {
442
+ return [__alloy_js_core.code`createEnv(${defaultConfig || "{}"} as Partial<Env>);`];
443
+ }
444
+ }),
445
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
446
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
447
+ (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_typescript.VarDeclaration, {
448
+ "export": true,
449
+ "const": true,
450
+ name: "isCI",
451
+ doc: "Detect if the application is running in a CI environment.",
452
+ initializer: __alloy_js_core.code`Boolean(
453
+ env.CI ||
454
+ env.RUN_ID ||
455
+ env.AGOLA_GIT_REF ||
456
+ env.AC_APPCIRCLE ||
457
+ env.APPVEYOR ||
458
+ env.CODEBUILD ||
459
+ env.TF_BUILD ||
460
+ env.bamboo_planKey ||
461
+ env.BITBUCKET_COMMIT ||
462
+ env.BITRISE_IO ||
463
+ env.BUDDY_WORKSPACE_ID ||
464
+ env.BUILDKITE ||
465
+ env.CIRCLECI ||
466
+ env.CIRRUS_CI ||
467
+ env.CF_BUILD_ID ||
468
+ env.CM_BUILD_ID ||
469
+ env.CI_NAME ||
470
+ env.DRONE ||
471
+ env.DSARI ||
472
+ env.EARTHLY_CI ||
473
+ env.EAS_BUILD ||
474
+ env.GERRIT_PROJECT ||
475
+ env.GITEA_ACTIONS ||
476
+ env.GITHUB_ACTIONS ||
477
+ env.GITLAB_CI ||
478
+ env.GOCD ||
479
+ env.BUILDER_OUTPUT ||
480
+ env.HARNESS_BUILD_ID ||
481
+ env.JENKINS_URL ||
482
+ env.LAYERCI ||
483
+ env.MAGNUM ||
484
+ env.NETLIFY ||
485
+ env.NEVERCODE ||
486
+ env.PROW_JOB_ID ||
487
+ env.RELEASE_BUILD_ID ||
488
+ env.RENDER ||
489
+ env.SAILCI ||
490
+ env.HUDSON ||
491
+ env.SCREWDRIVER ||
492
+ env.SEMAPHORE ||
493
+ env.SOURCEHUT ||
494
+ env.STRIDER ||
495
+ env.TASK_ID ||
496
+ env.RUN_ID ||
497
+ env.TEAMCITY_VERSION ||
498
+ env.TRAVIS ||
499
+ env.VELA ||
500
+ env.NOW_BUILDER ||
501
+ env.APPCENTER_BUILD_ID ||
502
+ env.CI_XCODE_PROJECT ||
503
+ env.XCS || false
504
+ );
505
+ `
506
+ }),
507
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
508
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
509
+ (0, __alloy_js_core_jsx_runtime.createComponent)(require_tsdoc.TSDoc, {
510
+ heading: "Detect the \\`mode\\` of the current runtime environment.",
511
+ get children() {
512
+ return (0, __alloy_js_core_jsx_runtime.createComponent)(require_tsdoc.TSDocRemarks, { children: __alloy_js_core.code`The \`mode\` is determined by the \`MODE\` environment variable, or falls back to the \`NEXT_PUBLIC_VERCEL_ENV\`, \`NODE_ENV\`, or defaults to \`production\`. While the value can potentially be any string, Storm Software generally only allows a value in the following list:
513
+ - \`production\`
514
+ - \`test\`
515
+ - \`development\`` });
516
+ }
517
+ }),
518
+ (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_typescript.VarDeclaration, {
519
+ "export": true,
520
+ "const": true,
521
+ name: "mode",
522
+ initializer: __alloy_js_core.code`String(env.MODE) || "production"; `
523
+ }),
524
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
525
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
526
+ (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_typescript.VarDeclaration, {
527
+ "export": true,
528
+ "const": true,
529
+ name: "isProduction",
530
+ doc: "Detect if the application is running in \\\"production\\\\\" mode",
531
+ initializer: __alloy_js_core.code`["prd", "prod", "production"].includes(mode.toLowerCase()); `
532
+ }),
533
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
534
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
535
+ (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_typescript.VarDeclaration, {
536
+ "export": true,
537
+ "const": true,
538
+ name: "isTest",
539
+ doc: "Detect if the application is running in \"test\" mode",
540
+ initializer: __alloy_js_core.code`["tst", "test", "testing", "stg", "stage", "staging"].includes(mode.toLowerCase()) || env.TEST; `
541
+ }),
542
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
543
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
544
+ (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_typescript.VarDeclaration, {
545
+ "export": true,
546
+ "const": true,
547
+ name: "isDevelopment",
548
+ doc: "Detect if the application is running in \"development\" mode",
549
+ initializer: __alloy_js_core.code`["dev", "development"].includes(mode.toLowerCase()); `
550
+ }),
551
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
552
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
553
+ (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_typescript.VarDeclaration, {
554
+ "export": true,
555
+ "const": true,
556
+ name: "isDebug",
557
+ doc: "Detect if the application is running in \"debug\" mode",
558
+ initializer: __alloy_js_core.code`Boolean(isDevelopment && env.DEBUG); `
559
+ }),
560
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
561
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
562
+ (0, __alloy_js_core_jsx_runtime.createComponent)(__alloy_js_core.Show, {
563
+ get when() {
564
+ return Boolean(children);
565
+ },
566
+ children
567
+ })
568
+ ];
569
+ }
570
+ }));
571
+ }
572
+
573
+ //#endregion
574
+ exports.EnvBuiltin = EnvBuiltin;
575
+ exports.EnvTypeDefinition = EnvTypeDefinition;
@@ -0,0 +1,11 @@
1
+ import { BuiltinFileProps } from "../../../plugin-alloy/src/typescript/components/builtin-file.cjs";
2
+ import "../../../plugin-alloy/src/typescript/components/typescript-interface.cjs";
3
+ import { Children } from "@alloy-js/core";
4
+
5
+ //#region ../plugin-env/src/components/env.d.ts
6
+
7
+ interface EnvBuiltinProps extends Omit<BuiltinFileProps, "id"> {
8
+ defaultConfig?: Children;
9
+ }
10
+ //#endregion
11
+ export { EnvBuiltinProps };
@@ -0,0 +1,11 @@
1
+ import { BuiltinFileProps } from "../../../plugin-alloy/src/typescript/components/builtin-file.mjs";
2
+ import "../../../plugin-alloy/src/typescript/components/typescript-interface.mjs";
3
+ import { Children } from "@alloy-js/core";
4
+
5
+ //#region ../plugin-env/src/components/env.d.ts
6
+
7
+ interface EnvBuiltinProps extends Omit<BuiltinFileProps, "id"> {
8
+ defaultConfig?: Children;
9
+ }
10
+ //#endregion
11
+ export { EnvBuiltinProps };