@powerlines/plugin-env 0.16.7 → 0.16.9

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 (48) hide show
  1. package/dist/babel/plugin.cjs +3 -3
  2. package/dist/babel/plugin.d.cts +3 -3
  3. package/dist/babel/plugin.d.cts.map +1 -1
  4. package/dist/babel/plugin.d.mts +3 -3
  5. package/dist/babel/plugin.d.mts.map +1 -1
  6. package/dist/babel/plugin.mjs +1 -1
  7. package/dist/babel/plugin.mjs.map +1 -1
  8. package/dist/components/docs.cjs +1 -1
  9. package/dist/components/docs.mjs +1 -1
  10. package/dist/components/env.cjs +2 -2
  11. package/dist/components/env.mjs +2 -2
  12. package/dist/helpers/automd-generator.cjs +3 -3
  13. package/dist/helpers/automd-generator.d.cts +1 -1
  14. package/dist/helpers/automd-generator.d.mts +1 -1
  15. package/dist/helpers/automd-generator.mjs +2 -2
  16. package/dist/helpers/automd-generator.mjs.map +1 -1
  17. package/dist/helpers/docs-helper.cjs +2 -2
  18. package/dist/helpers/docs-helper.mjs +2 -2
  19. package/dist/helpers/docs-helper.mjs.map +1 -1
  20. package/dist/helpers/index.cjs +2 -2
  21. package/dist/helpers/index.mjs +2 -2
  22. package/dist/helpers/load.cjs +8 -8
  23. package/dist/helpers/load.d.cts +2 -2
  24. package/dist/helpers/load.d.mts +2 -2
  25. package/dist/helpers/load.mjs +6 -6
  26. package/dist/helpers/load.mjs.map +1 -1
  27. package/dist/helpers/persistence.cjs +7 -7
  28. package/dist/helpers/persistence.d.cts +1 -1
  29. package/dist/helpers/persistence.d.mts +1 -1
  30. package/dist/helpers/persistence.mjs +3 -3
  31. package/dist/helpers/persistence.mjs.map +1 -1
  32. package/dist/helpers/reflect.cjs +1 -1
  33. package/dist/helpers/reflect.mjs +1 -1
  34. package/dist/index.cjs +10 -56
  35. package/dist/index.d.cts +8 -17
  36. package/dist/index.d.cts.map +1 -1
  37. package/dist/index.d.mts +8 -17
  38. package/dist/index.d.mts.map +1 -1
  39. package/dist/index.mjs +11 -20
  40. package/dist/index.mjs.map +1 -1
  41. package/dist/node_modules/.pnpm/c12@3.3.3_magicast@0.5.2/node_modules/c12/dist/index.cjs +1 -1
  42. package/dist/node_modules/.pnpm/c12@3.3.3_magicast@0.5.2/node_modules/c12/dist/index.mjs +1 -1
  43. package/dist/node_modules/.pnpm/giget@2.0.0/node_modules/giget/dist/shared/giget.OCaTp9b-.cjs +1 -1
  44. package/dist/node_modules/.pnpm/giget@2.0.0/node_modules/giget/dist/shared/giget.OCaTp9b-.mjs +1 -1
  45. package/dist/node_modules/.pnpm/rc9@2.1.2/node_modules/rc9/dist/index.cjs +1 -1
  46. package/dist/node_modules/.pnpm/rc9@2.1.2/node_modules/rc9/dist/index.mjs +1 -1
  47. package/dist/types/plugin.d.mts +1 -1
  48. package/package.json +12 -12
@@ -1 +1 @@
1
- {"version":3,"file":"persistence.mjs","names":[],"sources":["../../src/helpers/persistence.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { convertFromCapnp, convertToCapnp } from \"@powerlines/deepkit/capnp\";\nimport { getReflectionsPath } from \"@powerlines/deepkit/resolve-reflections\";\nimport { SerializedTypes } from \"@powerlines/deepkit/schemas/reflection\";\nimport { Reflection } from \"@powerlines/deepkit/types\";\nimport {\n deserializeType,\n ReflectionClass,\n ReflectionKind,\n resolveClassType\n} from \"@powerlines/deepkit/vendor/type\";\nimport * as capnp from \"@stryke/capnp\";\nimport {\n readFileBuffer,\n writeFileBuffer,\n writeFileBufferSync\n} from \"@stryke/fs/buffer\";\nimport { joinPaths } from \"@stryke/path/join-paths\";\nimport { isEmptyObject } from \"@stryke/type-checks/is-empty-object\";\nimport type { TypeDefinition } from \"@stryke/types/configuration\";\nimport { existsSync } from \"node:fs\";\nimport { Context, UnresolvedContext } from \"powerlines/types/context\";\nimport {\n EnvPluginContext,\n EnvPluginResolvedConfig,\n EnvType\n} from \"../types/plugin\";\nimport { createEnvReflection } from \"./reflect\";\n\n/**\n * Resolves the runtime type definition file for the environment variables.\n *\n * @param context - The plugin context.\n * @returns The runtime type definition file for the environment variables.\n */\nexport async function resolveRuntimeTypeFile(\n context: UnresolvedContext<EnvPluginResolvedConfig>\n): Promise<string> {\n const resolved = await context.fs.resolve(\n \"@powerlines/plugin-env/types/runtime\"\n );\n if (!resolved) {\n throw new Error(\n `Failed to resolve the runtime type definition file for the environment variables. Please ensure that the \"@powerlines/plugin-env\" package is installed.`\n );\n }\n\n return resolved;\n}\n\n/**\n * Gets the default type definition for the environment variables.\n *\n * @param context - The plugin context.\n * @returns The default type definition for the environment variables.\n */\nexport async function getEnvDefaultTypeDefinition(\n context: UnresolvedContext<EnvPluginResolvedConfig>\n): Promise<TypeDefinition> {\n return {\n file: await resolveRuntimeTypeFile(context),\n name: \"EnvInterface\"\n };\n}\n\n/** Gets the default type definition for the environment secrets.\n *\n * @param context - The plugin context.\n * @returns The default type definition for the environment secrets.\n */\nexport async function getSecretsDefaultTypeDefinition(\n context: UnresolvedContext<EnvPluginResolvedConfig>\n): Promise<TypeDefinition> {\n return {\n file: await resolveRuntimeTypeFile(context),\n name: \"SecretsInterface\"\n };\n}\n\n/**\n * Gets the path to the environment type reflections.\n *\n * @param context - The plugin context.\n * @param name - The name of the type reflections.\n * @returns The path to the environment type reflections.\n */\nexport function getEnvTypeReflectionsPath(\n context: Context<EnvPluginResolvedConfig>,\n name: EnvType = \"env\"\n): string {\n return joinPaths(getReflectionsPath(context), \"env\", `${name}-types.bin`);\n}\n\n/**\n * Reads the environment type reflection from the file system.\n *\n * @param context - The plugin context.\n * @param name - The name of the type reflections.\n * @returns The environment type reflection.\n */\nexport async function readEnvTypeReflection(\n context: EnvPluginContext,\n name: EnvType = \"env\"\n): Promise<ReflectionClass<any>> {\n const filePath = getEnvTypeReflectionsPath(context, name);\n if (!existsSync(filePath)) {\n if (!context.env.types.env || isEmptyObject(context.env.types.env)) {\n const reflection = createEnvReflection(context) as Reflection;\n\n const message = new capnp.Message();\n reflection.messageRoot = message.initRoot(SerializedTypes);\n reflection.dataBuffer = message.toArrayBuffer();\n\n context.env.types.env = reflection;\n await writeEnvTypeReflection(context, context.env.types.env, name);\n }\n\n return context.env.types.env;\n }\n\n const buffer = await readFileBuffer(filePath);\n const message = new capnp.Message(buffer, false);\n const messageRoot = message.getRoot(SerializedTypes);\n\n const reflection = resolveClassType(\n deserializeType(convertFromCapnp(messageRoot.types))\n );\n\n context.env.types[name] = reflection;\n context.env.types[name].messageRoot = messageRoot;\n context.env.types[name].dataBuffer = buffer;\n\n return reflection;\n}\n\n/**\n * Writes the environment type reflection to the file system.\n *\n * @param context - The plugin context.\n * @param reflection - The environment type reflection to write.\n * @param name - The name of the type reflections.\n */\nexport async function writeEnvTypeReflection(\n context: EnvPluginContext,\n reflection: ReflectionClass<any>,\n name: EnvType = \"env\"\n) {\n const serialized = reflection.serializeType();\n\n const message = new capnp.Message();\n const root = message.initRoot(SerializedTypes);\n\n convertToCapnp(serialized, root._initTypes(serialized.length));\n\n await writeFileBuffer(\n getEnvTypeReflectionsPath(context, name),\n message.toArrayBuffer()\n );\n}\n\nexport function getEnvReflectionsPath(\n context: EnvPluginContext,\n name: EnvType\n): string {\n return joinPaths(getReflectionsPath(context), \"env\", `${name}.bin`);\n}\n\n/**\n * Reads the environment reflection data from the file system.\n *\n * @param context - The plugin context.\n * @returns The environment reflection data.\n */\nexport async function readEnvReflection(\n context: EnvPluginContext\n): Promise<ReflectionClass<any>> {\n const filePath = getEnvReflectionsPath(context, \"env\");\n if (!existsSync(filePath)) {\n if (!context.env.types.env) {\n context.env.types.env = await readEnvTypeReflection(context, \"env\");\n }\n\n if (!context.env.used.env || isEmptyObject(context.env.used.env)) {\n const reflection = createEnvReflection(context, {\n type: {\n kind: ReflectionKind.objectLiteral,\n typeName: \"Env\",\n description: `An object containing the environment configuration parameters that are used (at least once) by the ${\n context.config.name\n ? `${context.config.name} application`\n : \"application\"\n }.`,\n types: []\n },\n superReflection: context.env.types.env\n }) as Reflection;\n reflection.name = \"Env\";\n\n const message = new capnp.Message();\n reflection.messageRoot = message.initRoot(SerializedTypes);\n reflection.dataBuffer = message.toArrayBuffer();\n\n context.env.used.env = reflection;\n await writeEnvReflection(context, context.env.used.env, \"env\");\n }\n\n return context.env.used.env;\n }\n\n const buffer = await readFileBuffer(filePath);\n const message = new capnp.Message(buffer, false);\n const messageRoot = message.getRoot(SerializedTypes);\n\n const reflection = resolveClassType(\n deserializeType(convertFromCapnp(messageRoot.types))\n );\n\n context.env.used.env = reflection;\n context.env.used.env.messageRoot = messageRoot;\n context.env.used.env.dataBuffer = buffer;\n\n return reflection;\n}\n\n/**\n * Reads the secret environment reflection data from the file system.\n *\n * @param context - The plugin context.\n * @returns The environment reflection data.\n */\nexport async function readSecretsReflection(\n context: EnvPluginContext\n): Promise<ReflectionClass<any>> {\n const filePath = getEnvReflectionsPath(context, \"secrets\");\n if (!existsSync(filePath)) {\n if (!context.env.types.secrets) {\n context.env.types.secrets = await readEnvTypeReflection(\n context,\n \"secrets\"\n );\n }\n\n if (!context.env.used.secrets || isEmptyObject(context.env.used.secrets)) {\n const reflection = createEnvReflection(context, {\n type: {\n kind: ReflectionKind.objectLiteral,\n typeName: \"Secrets\",\n description: `An object containing the secret configuration parameters that are used (at least once) by the ${\n context.config.name\n ? `${context.config.name} application`\n : \"application\"\n }.`,\n types: []\n },\n superReflection: context.env.types.secrets\n }) as Reflection;\n reflection.name = \"Secrets\";\n\n const message = new capnp.Message();\n reflection.messageRoot = message.initRoot(SerializedTypes);\n reflection.dataBuffer = message.toArrayBuffer();\n\n context.env.used.secrets = reflection;\n await writeEnvReflection(context, context.env.used.secrets, \"secrets\");\n }\n\n return context.env.used.secrets;\n }\n\n const buffer = await readFileBuffer(filePath);\n const message = new capnp.Message(buffer, false);\n const messageRoot = message.getRoot(SerializedTypes);\n\n const reflection = resolveClassType(\n deserializeType(convertFromCapnp(messageRoot.types))\n );\n\n context.env.used.secrets = reflection;\n context.env.used.secrets.messageRoot = messageRoot;\n context.env.used.secrets.dataBuffer = buffer;\n\n return reflection;\n}\n\n/**\n * Writes the environment reflection data to the file system.\n *\n * @param context - The plugin context.\n * @param reflection - The reflection data to write.\n * @param name - The name of the reflection (either \"env\" or \"secrets\").\n */\nexport async function writeEnvReflection(\n context: EnvPluginContext,\n reflection: ReflectionClass<any>,\n name: EnvType = \"env\"\n) {\n const serialized = reflection.serializeType();\n\n const message = new capnp.Message();\n const root = message.initRoot(SerializedTypes);\n\n convertToCapnp(serialized, root._initTypes(serialized.length));\n\n await writeFileBuffer(\n getEnvReflectionsPath(context, name),\n message.toArrayBuffer()\n );\n}\n\n/**\n * Writes the environment reflection data to the file system.\n *\n * @param context - The plugin context.\n * @param reflection - The reflection data to write.\n * @param name - The name of the reflection (either \"env\" or \"secrets\").\n */\nexport function writeEnvReflectionSync(\n context: EnvPluginContext,\n reflection: ReflectionClass<any>,\n name: EnvType = \"env\"\n) {\n const serialized = reflection.serializeType();\n\n const message = new capnp.Message();\n const root = message.initRoot(SerializedTypes);\n\n convertToCapnp(serialized, root._initTypes(serialized.length));\n\n writeFileBufferSync(\n getEnvReflectionsPath(context, name),\n message.toArrayBuffer()\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"persistence.mjs","names":[],"sources":["../../src/helpers/persistence.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { convertFromCapnp, convertToCapnp } from \"@powerlines/deepkit/capnp\";\nimport { getReflectionsPath } from \"@powerlines/deepkit/resolve-reflections\";\nimport { SerializedTypes } from \"@powerlines/deepkit/schemas/reflection\";\nimport { Reflection } from \"@powerlines/deepkit/types\";\nimport {\n deserializeType,\n ReflectionClass,\n ReflectionKind,\n resolveClassType\n} from \"@powerlines/deepkit/vendor/type\";\nimport * as capnp from \"@stryke/capnp\";\nimport {\n readFileBuffer,\n writeFileBuffer,\n writeFileBufferSync\n} from \"@stryke/fs/buffer\";\nimport { joinPaths } from \"@stryke/path/join-paths\";\nimport { isEmptyObject } from \"@stryke/type-checks/is-empty-object\";\nimport type { TypeDefinition } from \"@stryke/types/configuration\";\nimport { existsSync } from \"node:fs\";\nimport { Context, UnresolvedContext } from \"powerlines\";\nimport {\n EnvPluginContext,\n EnvPluginResolvedConfig,\n EnvType\n} from \"../types/plugin\";\nimport { createEnvReflection } from \"./reflect\";\n\n/**\n * Resolves the runtime type definition file for the environment variables.\n *\n * @param context - The plugin context.\n * @returns The runtime type definition file for the environment variables.\n */\nexport async function resolveRuntimeTypeFile(\n context: UnresolvedContext<EnvPluginResolvedConfig>\n): Promise<string> {\n const resolved = await context.fs.resolve(\n \"@powerlines/plugin-env/types/runtime\"\n );\n if (!resolved) {\n throw new Error(\n `Failed to resolve the runtime type definition file for the environment variables. Please ensure that the \"@powerlines/plugin-env\" package is installed.`\n );\n }\n\n return resolved;\n}\n\n/**\n * Gets the default type definition for the environment variables.\n *\n * @param context - The plugin context.\n * @returns The default type definition for the environment variables.\n */\nexport async function getEnvDefaultTypeDefinition(\n context: UnresolvedContext<EnvPluginResolvedConfig>\n): Promise<TypeDefinition> {\n return {\n file: await resolveRuntimeTypeFile(context),\n name: \"EnvInterface\"\n };\n}\n\n/** Gets the default type definition for the environment secrets.\n *\n * @param context - The plugin context.\n * @returns The default type definition for the environment secrets.\n */\nexport async function getSecretsDefaultTypeDefinition(\n context: UnresolvedContext<EnvPluginResolvedConfig>\n): Promise<TypeDefinition> {\n return {\n file: await resolveRuntimeTypeFile(context),\n name: \"SecretsInterface\"\n };\n}\n\n/**\n * Gets the path to the environment type reflections.\n *\n * @param context - The plugin context.\n * @param name - The name of the type reflections.\n * @returns The path to the environment type reflections.\n */\nexport function getEnvTypeReflectionsPath(\n context: Context<EnvPluginResolvedConfig>,\n name: EnvType = \"env\"\n): string {\n return joinPaths(getReflectionsPath(context), \"env\", `${name}-types.bin`);\n}\n\n/**\n * Reads the environment type reflection from the file system.\n *\n * @param context - The plugin context.\n * @param name - The name of the type reflections.\n * @returns The environment type reflection.\n */\nexport async function readEnvTypeReflection(\n context: EnvPluginContext,\n name: EnvType = \"env\"\n): Promise<ReflectionClass<any>> {\n const filePath = getEnvTypeReflectionsPath(context, name);\n if (!existsSync(filePath)) {\n if (!context.env.types.env || isEmptyObject(context.env.types.env)) {\n const reflection = createEnvReflection(context) as Reflection;\n\n const message = new capnp.Message();\n reflection.messageRoot = message.initRoot(SerializedTypes);\n reflection.dataBuffer = message.toArrayBuffer();\n\n context.env.types.env = reflection;\n await writeEnvTypeReflection(context, context.env.types.env, name);\n }\n\n return context.env.types.env;\n }\n\n const buffer = await readFileBuffer(filePath);\n const message = new capnp.Message(buffer, false);\n const messageRoot = message.getRoot(SerializedTypes);\n\n const reflection = resolveClassType(\n deserializeType(convertFromCapnp(messageRoot.types))\n );\n\n context.env.types[name] = reflection;\n context.env.types[name].messageRoot = messageRoot;\n context.env.types[name].dataBuffer = buffer;\n\n return reflection;\n}\n\n/**\n * Writes the environment type reflection to the file system.\n *\n * @param context - The plugin context.\n * @param reflection - The environment type reflection to write.\n * @param name - The name of the type reflections.\n */\nexport async function writeEnvTypeReflection(\n context: EnvPluginContext,\n reflection: ReflectionClass<any>,\n name: EnvType = \"env\"\n) {\n const serialized = reflection.serializeType();\n\n const message = new capnp.Message();\n const root = message.initRoot(SerializedTypes);\n\n convertToCapnp(serialized, root._initTypes(serialized.length));\n\n await writeFileBuffer(\n getEnvTypeReflectionsPath(context, name),\n message.toArrayBuffer()\n );\n}\n\nexport function getEnvReflectionsPath(\n context: EnvPluginContext,\n name: EnvType\n): string {\n return joinPaths(getReflectionsPath(context), \"env\", `${name}.bin`);\n}\n\n/**\n * Reads the environment reflection data from the file system.\n *\n * @param context - The plugin context.\n * @returns The environment reflection data.\n */\nexport async function readEnvReflection(\n context: EnvPluginContext\n): Promise<ReflectionClass<any>> {\n const filePath = getEnvReflectionsPath(context, \"env\");\n if (!existsSync(filePath)) {\n if (!context.env.types.env) {\n context.env.types.env = await readEnvTypeReflection(context, \"env\");\n }\n\n if (!context.env.used.env || isEmptyObject(context.env.used.env)) {\n const reflection = createEnvReflection(context, {\n type: {\n kind: ReflectionKind.objectLiteral,\n typeName: \"Env\",\n description: `An object containing the environment configuration parameters that are used (at least once) by the ${\n context.config.name\n ? `${context.config.name} application`\n : \"application\"\n }.`,\n types: []\n },\n superReflection: context.env.types.env\n }) as Reflection;\n reflection.name = \"Env\";\n\n const message = new capnp.Message();\n reflection.messageRoot = message.initRoot(SerializedTypes);\n reflection.dataBuffer = message.toArrayBuffer();\n\n context.env.used.env = reflection;\n await writeEnvReflection(context, context.env.used.env, \"env\");\n }\n\n return context.env.used.env;\n }\n\n const buffer = await readFileBuffer(filePath);\n const message = new capnp.Message(buffer, false);\n const messageRoot = message.getRoot(SerializedTypes);\n\n const reflection = resolveClassType(\n deserializeType(convertFromCapnp(messageRoot.types))\n );\n\n context.env.used.env = reflection;\n context.env.used.env.messageRoot = messageRoot;\n context.env.used.env.dataBuffer = buffer;\n\n return reflection;\n}\n\n/**\n * Reads the secret environment reflection data from the file system.\n *\n * @param context - The plugin context.\n * @returns The environment reflection data.\n */\nexport async function readSecretsReflection(\n context: EnvPluginContext\n): Promise<ReflectionClass<any>> {\n const filePath = getEnvReflectionsPath(context, \"secrets\");\n if (!existsSync(filePath)) {\n if (!context.env.types.secrets) {\n context.env.types.secrets = await readEnvTypeReflection(\n context,\n \"secrets\"\n );\n }\n\n if (!context.env.used.secrets || isEmptyObject(context.env.used.secrets)) {\n const reflection = createEnvReflection(context, {\n type: {\n kind: ReflectionKind.objectLiteral,\n typeName: \"Secrets\",\n description: `An object containing the secret configuration parameters that are used (at least once) by the ${\n context.config.name\n ? `${context.config.name} application`\n : \"application\"\n }.`,\n types: []\n },\n superReflection: context.env.types.secrets\n }) as Reflection;\n reflection.name = \"Secrets\";\n\n const message = new capnp.Message();\n reflection.messageRoot = message.initRoot(SerializedTypes);\n reflection.dataBuffer = message.toArrayBuffer();\n\n context.env.used.secrets = reflection;\n await writeEnvReflection(context, context.env.used.secrets, \"secrets\");\n }\n\n return context.env.used.secrets;\n }\n\n const buffer = await readFileBuffer(filePath);\n const message = new capnp.Message(buffer, false);\n const messageRoot = message.getRoot(SerializedTypes);\n\n const reflection = resolveClassType(\n deserializeType(convertFromCapnp(messageRoot.types))\n );\n\n context.env.used.secrets = reflection;\n context.env.used.secrets.messageRoot = messageRoot;\n context.env.used.secrets.dataBuffer = buffer;\n\n return reflection;\n}\n\n/**\n * Writes the environment reflection data to the file system.\n *\n * @param context - The plugin context.\n * @param reflection - The reflection data to write.\n * @param name - The name of the reflection (either \"env\" or \"secrets\").\n */\nexport async function writeEnvReflection(\n context: EnvPluginContext,\n reflection: ReflectionClass<any>,\n name: EnvType = \"env\"\n) {\n const serialized = reflection.serializeType();\n\n const message = new capnp.Message();\n const root = message.initRoot(SerializedTypes);\n\n convertToCapnp(serialized, root._initTypes(serialized.length));\n\n await writeFileBuffer(\n getEnvReflectionsPath(context, name),\n message.toArrayBuffer()\n );\n}\n\n/**\n * Writes the environment reflection data to the file system.\n *\n * @param context - The plugin context.\n * @param reflection - The reflection data to write.\n * @param name - The name of the reflection (either \"env\" or \"secrets\").\n */\nexport function writeEnvReflectionSync(\n context: EnvPluginContext,\n reflection: ReflectionClass<any>,\n name: EnvType = \"env\"\n) {\n const serialized = reflection.serializeType();\n\n const message = new capnp.Message();\n const root = message.initRoot(SerializedTypes);\n\n convertToCapnp(serialized, root._initTypes(serialized.length));\n\n writeFileBufferSync(\n getEnvReflectionsPath(context, name),\n message.toArrayBuffer()\n );\n}\n"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  const require_rolldown_runtime = require('../_virtual/rolldown_runtime.cjs');
2
+ const require_join_paths = require('../node_modules/.pnpm/@stryke_path@0.26.6/node_modules/@stryke/path/dist/join-paths.cjs');
2
3
  const require_types_runtime = require('../types/runtime.cjs');
3
4
  const require_types_plugin = require('../types/plugin.cjs');
4
- const require_join_paths = require('../node_modules/.pnpm/@stryke_path@0.26.6/node_modules/@stryke/path/dist/join-paths.cjs');
5
5
  const require_is_parent_path = require('../node_modules/.pnpm/@stryke_path@0.26.6/node_modules/@stryke/path/dist/is-parent-path.cjs');
6
6
  const require_helpers_persistence = require('./persistence.cjs');
7
7
  let __powerlines_deepkit_vendor_type = require("@powerlines/deepkit/vendor/type");
@@ -1,6 +1,6 @@
1
+ import { joinPaths } from "../node_modules/.pnpm/@stryke_path@0.26.6/node_modules/@stryke/path/dist/join-paths.mjs";
1
2
  import { __ΩEnvInterface, __ΩSecretsInterface } from "../types/runtime.mjs";
2
3
  import { __ΩEnvPluginContext } from "../types/plugin.mjs";
3
- import { joinPaths } from "../node_modules/.pnpm/@stryke_path@0.26.6/node_modules/@stryke/path/dist/join-paths.mjs";
4
4
  import { isParentPath } from "../node_modules/.pnpm/@stryke_path@0.26.6/node_modules/@stryke/path/dist/is-parent-path.mjs";
5
5
  import { getEnvDefaultTypeDefinition, getSecretsDefaultTypeDefinition, readEnvTypeReflection, readSecretsReflection } from "./persistence.mjs";
6
6
  import { ReflectionClass, ReflectionKind, __ΩTypeClass, __ΩTypeObjectLiteral, merge, resolveClassType } from "@powerlines/deepkit/vendor/type";
package/dist/index.cjs CHANGED
@@ -1,29 +1,19 @@
1
1
  Object.defineProperty(exports, '__esModule', { value: true });
2
2
  const require_rolldown_runtime = require('./_virtual/rolldown_runtime.cjs');
3
- const require_types_runtime = require('./types/runtime.cjs');
4
- const require_types_plugin = require('./types/plugin.cjs');
5
- require('./types/index.cjs');
3
+ const require_parse_type_definition = require('./node_modules/.pnpm/@stryke_convert@0.6.40/node_modules/@stryke/convert/dist/parse-type-definition.cjs');
4
+ const require_to_array = require('./node_modules/.pnpm/@stryke_convert@0.6.40/node_modules/@stryke/convert/dist/to-array.cjs');
6
5
  const require_join_paths = require('./node_modules/.pnpm/@stryke_path@0.26.6/node_modules/@stryke/path/dist/join-paths.cjs');
7
- const require_helpers_reflect = require('./helpers/reflect.cjs');
8
- const require_helpers_persistence = require('./helpers/persistence.cjs');
9
- const require_helpers_template_helpers = require('./helpers/template-helpers.cjs');
10
- const require_helpers_source_file_env = require('./helpers/source-file-env.cjs');
11
6
  const require_defu = require('./node_modules/.pnpm/defu@6.1.4/node_modules/defu/dist/defu.cjs');
12
- const require_helpers_load = require('./helpers/load.cjs');
13
- const require_helpers_create_reflection_resource = require('./helpers/create-reflection-resource.cjs');
14
- require('./helpers/index.cjs');
7
+ const require_babel_plugin = require('./babel/plugin.cjs');
15
8
  const require_helpers_docs_helper = require('./helpers/docs-helper.cjs');
16
- const require_helpers_automd_generator = require('./helpers/automd-generator.cjs');
17
9
  const require_components_docs = require('./components/docs.cjs');
10
+ const require_helpers_load = require('./helpers/load.cjs');
18
11
  const require_components_env = require('./components/env.cjs');
19
- require('./components/index.cjs');
20
- const require_babel_plugin = require('./babel/plugin.cjs');
21
- require('./babel/index.cjs');
22
- const require_parse_type_definition = require('./node_modules/.pnpm/@stryke_convert@0.6.40/node_modules/@stryke/convert/dist/parse-type-definition.cjs');
23
- const require_to_array = require('./node_modules/.pnpm/@stryke_convert@0.6.40/node_modules/@stryke/convert/dist/to-array.cjs');
24
- let __powerlines_deepkit_vendor_type = require("@powerlines/deepkit/vendor/type");
25
- let __stryke_env_types = require("@stryke/env/types");
12
+ const require_helpers_automd_generator = require('./helpers/automd-generator.cjs');
13
+ const require_helpers_reflect = require('./helpers/reflect.cjs');
14
+ const require_helpers_persistence = require('./helpers/persistence.cjs');
26
15
  let __alloy_js_core_jsx_runtime = require("@alloy-js/core/jsx-runtime");
16
+ let __powerlines_deepkit_vendor_type = require("@powerlines/deepkit/vendor/type");
27
17
  let __powerlines_plugin_alloy = require("@powerlines/plugin-alloy");
28
18
  __powerlines_plugin_alloy = require_rolldown_runtime.__toESM(__powerlines_plugin_alloy);
29
19
  let __powerlines_plugin_alloy_render = require("@powerlines/plugin-alloy/render");
@@ -31,6 +21,7 @@ let __powerlines_plugin_automd = require("@powerlines/plugin-automd");
31
21
  __powerlines_plugin_automd = require_rolldown_runtime.__toESM(__powerlines_plugin_automd);
32
22
  let __powerlines_plugin_babel = require("@powerlines/plugin-babel");
33
23
  __powerlines_plugin_babel = require_rolldown_runtime.__toESM(__powerlines_plugin_babel);
24
+ let __stryke_env_types = require("@stryke/env/types");
34
25
  let __stryke_fs_exists = require("@stryke/fs/exists");
35
26
  let __stryke_string_format_constant_case = require("@stryke/string-format/constant-case");
36
27
  let __stryke_type_checks_is_set_string = require("@stryke/type-checks/is-set-string");
@@ -200,42 +191,5 @@ const plugin = (options = {}) => {
200
191
  var src_default = plugin;
201
192
 
202
193
  //#endregion
203
- exports.BaseEnv = require_helpers_reflect.BaseEnv;
204
- exports.BaseSecrets = require_helpers_reflect.BaseSecrets;
205
- exports.EnvBuiltin = require_components_env.EnvBuiltin;
206
- exports.EnvDocsFile = require_components_docs.EnvDocsFile;
207
- exports.EnvTypeDefinition = require_components_env.EnvTypeDefinition;
208
- exports.__ΩCreateEnvReflectionOptions = require_helpers_reflect.__ΩCreateEnvReflectionOptions;
209
- exports.__ΩEnvInterface = require_types_runtime.__ΩEnvInterface;
210
- exports.__ΩEnvPluginContext = require_types_plugin.__ΩEnvPluginContext;
211
- exports.__ΩEnvPluginOptions = require_types_plugin.__ΩEnvPluginOptions;
212
- exports.__ΩEnvPluginResolvedConfig = require_types_plugin.__ΩEnvPluginResolvedConfig;
213
- exports.__ΩEnvPluginUserConfig = require_types_plugin.__ΩEnvPluginUserConfig;
214
- exports.__ΩEnvType = require_types_plugin.__ΩEnvType;
215
- exports.__ΩSecretsInterface = require_types_runtime.__ΩSecretsInterface;
216
- exports.createEnvReflection = require_helpers_reflect.createEnvReflection;
217
- exports.createReflection = require_helpers_create_reflection_resource.createReflection;
218
- exports.createSecretsReflection = require_helpers_reflect.createSecretsReflection;
219
- exports.createTemplateReflection = require_helpers_template_helpers.createTemplateReflection;
220
194
  exports.default = src_default;
221
- exports.envBabelPlugin = require_babel_plugin.envBabelPlugin;
222
- exports.formatEnvField = require_helpers_source_file_env.formatEnvField;
223
- exports.getEnvDefaultTypeDefinition = require_helpers_persistence.getEnvDefaultTypeDefinition;
224
- exports.getEnvReflectionsPath = require_helpers_persistence.getEnvReflectionsPath;
225
- exports.getEnvTypeReflectionsPath = require_helpers_persistence.getEnvTypeReflectionsPath;
226
- exports.getSecretsDefaultTypeDefinition = require_helpers_persistence.getSecretsDefaultTypeDefinition;
227
- exports.loadEnv = require_helpers_load.loadEnv;
228
- exports.loadEnvFromContext = require_helpers_load.loadEnvFromContext;
229
- exports.mergeEnvReflections = require_helpers_reflect.mergeEnvReflections;
230
- exports.mergeSecretsReflections = require_helpers_reflect.mergeSecretsReflections;
231
- exports.plugin = plugin;
232
- exports.readEnvReflection = require_helpers_persistence.readEnvReflection;
233
- exports.readEnvTypeReflection = require_helpers_persistence.readEnvTypeReflection;
234
- exports.readSecretsReflection = require_helpers_persistence.readSecretsReflection;
235
- exports.reflectEnv = require_helpers_reflect.reflectEnv;
236
- exports.reflectSecrets = require_helpers_reflect.reflectSecrets;
237
- exports.removeEnvPrefix = require_helpers_source_file_env.removeEnvPrefix;
238
- exports.resolveRuntimeTypeFile = require_helpers_persistence.resolveRuntimeTypeFile;
239
- exports.writeEnvReflection = require_helpers_persistence.writeEnvReflection;
240
- exports.writeEnvReflectionSync = require_helpers_persistence.writeEnvReflectionSync;
241
- exports.writeEnvTypeReflection = require_helpers_persistence.writeEnvTypeReflection;
195
+ exports.plugin = plugin;
package/dist/index.d.cts CHANGED
@@ -1,25 +1,16 @@
1
- import { EnvInterface, SecretsInterface, __ΩEnvInterface, __ΩSecretsInterface } from "./types/runtime.cjs";
2
- import { EnvPluginContext, EnvPluginOptions, EnvPluginResolvedConfig, EnvPluginUserConfig, EnvType, __ΩEnvPluginContext, __ΩEnvPluginOptions, __ΩEnvPluginResolvedConfig, __ΩEnvPluginUserConfig, __ΩEnvType } from "./types/plugin.cjs";
3
- import { EnvDocsFile, EnvDocsFileProps, __ΩEnvDocsFileProps } from "./components/docs.cjs";
4
- import { EnvBuiltin, EnvBuiltinProps, EnvTypeDefinition, __ΩEnvBuiltinProps } from "./components/env.cjs";
5
- import "./components/index.cjs";
6
- import { createReflection } from "./helpers/create-reflection-resource.cjs";
7
- import { loadEnv, loadEnvFromContext } from "./helpers/load.cjs";
8
- import { getEnvDefaultTypeDefinition, getEnvReflectionsPath, getEnvTypeReflectionsPath, getSecretsDefaultTypeDefinition, readEnvReflection, readEnvTypeReflection, readSecretsReflection, resolveRuntimeTypeFile, writeEnvReflection, writeEnvReflectionSync, writeEnvTypeReflection } from "./helpers/persistence.cjs";
9
- import { BaseEnv, BaseSecrets, CreateEnvReflectionOptions, __ΩCreateEnvReflectionOptions, createEnvReflection, createSecretsReflection, mergeEnvReflections, mergeSecretsReflections, reflectEnv, reflectSecrets } from "./helpers/reflect.cjs";
10
- import { formatEnvField, removeEnvPrefix } from "./helpers/source-file-env.cjs";
11
- import { createTemplateReflection } from "./helpers/template-helpers.cjs";
12
- import "./helpers/index.cjs";
13
- import "./types/index.cjs";
14
- import { envBabelPlugin } from "./babel/plugin.cjs";
15
- import "./babel/index.cjs";
16
- import { Plugin } from "powerlines/types/plugin";
1
+ import { EnvPluginContext, EnvPluginOptions } from "./types/plugin.cjs";
2
+ import { Plugin } from "powerlines";
17
3
 
18
4
  //#region src/index.d.ts
5
+ declare module "powerlines" {
6
+ interface UserConfig {
7
+ env?: EnvPluginOptions;
8
+ }
9
+ }
19
10
  /**
20
11
  * A Powerlines plugin to inject environment variables into the source code.
21
12
  */
22
13
  declare const plugin: <TContext extends EnvPluginContext = EnvPluginContext>(options?: EnvPluginOptions) => Plugin<TContext>[];
23
14
  //#endregion
24
- export { BaseEnv, BaseSecrets, CreateEnvReflectionOptions, EnvBuiltin, EnvBuiltinProps, EnvDocsFile, EnvDocsFileProps, EnvInterface, EnvPluginContext, EnvPluginOptions, EnvPluginResolvedConfig, EnvPluginUserConfig, EnvType, EnvTypeDefinition, SecretsInterface, __ΩCreateEnvReflectionOptions, __ΩEnvBuiltinProps, __ΩEnvDocsFileProps, __ΩEnvInterface, __ΩEnvPluginContext, __ΩEnvPluginOptions, __ΩEnvPluginResolvedConfig, __ΩEnvPluginUserConfig, __ΩEnvType, __ΩSecretsInterface, createEnvReflection, createReflection, createSecretsReflection, createTemplateReflection, plugin as default, plugin, envBabelPlugin, formatEnvField, getEnvDefaultTypeDefinition, getEnvReflectionsPath, getEnvTypeReflectionsPath, getSecretsDefaultTypeDefinition, loadEnv, loadEnvFromContext, mergeEnvReflections, mergeSecretsReflections, readEnvReflection, readEnvTypeReflection, readSecretsReflection, reflectEnv, reflectSecrets, removeEnvPrefix, resolveRuntimeTypeFile, writeEnvReflection, writeEnvReflectionSync, writeEnvTypeReflection };
15
+ export { plugin as default, plugin };
25
16
  //# sourceMappingURL=index.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.cts","names":[],"sources":["../src/index.tsx"],"sourcesContent":[],"mappings":";;;;;;;;;;;;;;;;;;;;;cAoEa,0BAA2B,mBAAmB,4BAChD,qBA2VJ,OAAO"}
1
+ {"version":3,"file":"index.d.cts","names":[],"sources":["../src/index.tsx"],"sourcesContent":[],"mappings":";;;;;;IA0DoE,GAAA,CAAA,EAI1D,gBAJ0D;EAAA;;;;AAWpE;AAAwC,cAA3B,MAA2B,EAAA,CAAA,iBAAA,gBAAA,GAAmB,gBAAnB,CAAA,CAAA,OAAA,CAAA,EAC7B,gBAD6B,EAAA,GA4VjC,MA5ViC,CA4V1B,QA5V0B,CAAA,EAAA"}
package/dist/index.d.mts CHANGED
@@ -1,25 +1,16 @@
1
- import { EnvInterface, SecretsInterface, __ΩEnvInterface, __ΩSecretsInterface } from "./types/runtime.mjs";
2
- import { EnvPluginContext, EnvPluginOptions, EnvPluginResolvedConfig, EnvPluginUserConfig, EnvType, __ΩEnvPluginContext, __ΩEnvPluginOptions, __ΩEnvPluginResolvedConfig, __ΩEnvPluginUserConfig, __ΩEnvType } from "./types/plugin.mjs";
3
- import { EnvDocsFile, EnvDocsFileProps, __ΩEnvDocsFileProps } from "./components/docs.mjs";
4
- import { EnvBuiltin, EnvBuiltinProps, EnvTypeDefinition, __ΩEnvBuiltinProps } from "./components/env.mjs";
5
- import "./components/index.mjs";
6
- import { createReflection } from "./helpers/create-reflection-resource.mjs";
7
- import { loadEnv, loadEnvFromContext } from "./helpers/load.mjs";
8
- import { getEnvDefaultTypeDefinition, getEnvReflectionsPath, getEnvTypeReflectionsPath, getSecretsDefaultTypeDefinition, readEnvReflection, readEnvTypeReflection, readSecretsReflection, resolveRuntimeTypeFile, writeEnvReflection, writeEnvReflectionSync, writeEnvTypeReflection } from "./helpers/persistence.mjs";
9
- import { BaseEnv, BaseSecrets, CreateEnvReflectionOptions, __ΩCreateEnvReflectionOptions, createEnvReflection, createSecretsReflection, mergeEnvReflections, mergeSecretsReflections, reflectEnv, reflectSecrets } from "./helpers/reflect.mjs";
10
- import { formatEnvField, removeEnvPrefix } from "./helpers/source-file-env.mjs";
11
- import { createTemplateReflection } from "./helpers/template-helpers.mjs";
12
- import "./helpers/index.mjs";
13
- import "./types/index.mjs";
14
- import { envBabelPlugin } from "./babel/plugin.mjs";
15
- import "./babel/index.mjs";
16
- import { Plugin } from "powerlines/types/plugin";
1
+ import { EnvPluginContext, EnvPluginOptions } from "./types/plugin.mjs";
2
+ import { Plugin } from "powerlines";
17
3
 
18
4
  //#region src/index.d.ts
5
+ declare module "powerlines" {
6
+ interface UserConfig {
7
+ env?: EnvPluginOptions;
8
+ }
9
+ }
19
10
  /**
20
11
  * A Powerlines plugin to inject environment variables into the source code.
21
12
  */
22
13
  declare const plugin: <TContext extends EnvPluginContext = EnvPluginContext>(options?: EnvPluginOptions) => Plugin<TContext>[];
23
14
  //#endregion
24
- export { BaseEnv, BaseSecrets, CreateEnvReflectionOptions, EnvBuiltin, EnvBuiltinProps, EnvDocsFile, EnvDocsFileProps, EnvInterface, EnvPluginContext, EnvPluginOptions, EnvPluginResolvedConfig, EnvPluginUserConfig, EnvType, EnvTypeDefinition, SecretsInterface, __ΩCreateEnvReflectionOptions, __ΩEnvBuiltinProps, __ΩEnvDocsFileProps, __ΩEnvInterface, __ΩEnvPluginContext, __ΩEnvPluginOptions, __ΩEnvPluginResolvedConfig, __ΩEnvPluginUserConfig, __ΩEnvType, __ΩSecretsInterface, createEnvReflection, createReflection, createSecretsReflection, createTemplateReflection, plugin as default, plugin, envBabelPlugin, formatEnvField, getEnvDefaultTypeDefinition, getEnvReflectionsPath, getEnvTypeReflectionsPath, getSecretsDefaultTypeDefinition, loadEnv, loadEnvFromContext, mergeEnvReflections, mergeSecretsReflections, readEnvReflection, readEnvTypeReflection, readSecretsReflection, reflectEnv, reflectSecrets, removeEnvPrefix, resolveRuntimeTypeFile, writeEnvReflection, writeEnvReflectionSync, writeEnvTypeReflection };
15
+ export { plugin as default, plugin };
25
16
  //# sourceMappingURL=index.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../src/index.tsx"],"sourcesContent":[],"mappings":";;;;;;;;;;;;;;;;;;;;;cAoEa,0BAA2B,mBAAmB,4BAChD,qBA2VJ,OAAO"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/index.tsx"],"sourcesContent":[],"mappings":";;;;;;IA0DoE,GAAA,CAAA,EAI1D,gBAJ0D;EAAA;;;;AAWpE;AAAwC,cAA3B,MAA2B,EAAA,CAAA,iBAAA,gBAAA,GAAmB,gBAAnB,CAAA,CAAA,OAAA,CAAA,EAC7B,gBAD6B,EAAA,GA4VjC,MA5ViC,CA4V1B,QA5V0B,CAAA,EAAA"}
package/dist/index.mjs CHANGED
@@ -1,31 +1,22 @@
1
- import { __ΩEnvInterface, __ΩSecretsInterface } from "./types/runtime.mjs";
2
- import { __ΩEnvPluginContext, __ΩEnvPluginOptions, __ΩEnvPluginResolvedConfig, __ΩEnvPluginUserConfig, __ΩEnvType } from "./types/plugin.mjs";
3
- import "./types/index.mjs";
1
+ import { parseTypeDefinition } from "./node_modules/.pnpm/@stryke_convert@0.6.40/node_modules/@stryke/convert/dist/parse-type-definition.mjs";
2
+ import { toArray } from "./node_modules/.pnpm/@stryke_convert@0.6.40/node_modules/@stryke/convert/dist/to-array.mjs";
4
3
  import { joinPaths } from "./node_modules/.pnpm/@stryke_path@0.26.6/node_modules/@stryke/path/dist/join-paths.mjs";
5
- import { BaseEnv, BaseSecrets, __ΩCreateEnvReflectionOptions, createEnvReflection, createSecretsReflection, mergeEnvReflections, mergeSecretsReflections, reflectEnv, reflectSecrets } from "./helpers/reflect.mjs";
6
- import { getEnvDefaultTypeDefinition, getEnvReflectionsPath, getEnvTypeReflectionsPath, getSecretsDefaultTypeDefinition, readEnvReflection, readEnvTypeReflection, readSecretsReflection, resolveRuntimeTypeFile, writeEnvReflection, writeEnvReflectionSync, writeEnvTypeReflection } from "./helpers/persistence.mjs";
7
- import { createTemplateReflection } from "./helpers/template-helpers.mjs";
8
- import { formatEnvField, removeEnvPrefix } from "./helpers/source-file-env.mjs";
9
4
  import { defu } from "./node_modules/.pnpm/defu@6.1.4/node_modules/defu/dist/defu.mjs";
10
- import { loadEnv, loadEnvFromContext } from "./helpers/load.mjs";
11
- import { createReflection } from "./helpers/create-reflection-resource.mjs";
12
- import "./helpers/index.mjs";
5
+ import { envBabelPlugin } from "./babel/plugin.mjs";
13
6
  import { getDocsOutputPath } from "./helpers/docs-helper.mjs";
14
- import { env } from "./helpers/automd-generator.mjs";
15
7
  import { EnvDocsFile } from "./components/docs.mjs";
16
- import { EnvBuiltin, EnvTypeDefinition } from "./components/env.mjs";
17
- import "./components/index.mjs";
18
- import { envBabelPlugin } from "./babel/plugin.mjs";
19
- import "./babel/index.mjs";
20
- import { parseTypeDefinition } from "./node_modules/.pnpm/@stryke_convert@0.6.40/node_modules/@stryke/convert/dist/parse-type-definition.mjs";
21
- import { toArray } from "./node_modules/.pnpm/@stryke_convert@0.6.40/node_modules/@stryke/convert/dist/to-array.mjs";
22
- import { ReflectionClass, ReflectionKind } from "@powerlines/deepkit/vendor/type";
23
- import { ENV_PREFIXES } from "@stryke/env/types";
8
+ import { loadEnv } from "./helpers/load.mjs";
9
+ import { EnvBuiltin } from "./components/env.mjs";
10
+ import { env } from "./helpers/automd-generator.mjs";
11
+ import { reflectEnv, reflectSecrets } from "./helpers/reflect.mjs";
12
+ import { getEnvDefaultTypeDefinition, getEnvReflectionsPath, getEnvTypeReflectionsPath, getSecretsDefaultTypeDefinition, readEnvReflection, readEnvTypeReflection, readSecretsReflection, writeEnvReflection, writeEnvTypeReflection } from "./helpers/persistence.mjs";
24
13
  import { createComponent } from "@alloy-js/core/jsx-runtime";
14
+ import { ReflectionClass, ReflectionKind } from "@powerlines/deepkit/vendor/type";
25
15
  import alloy from "@powerlines/plugin-alloy";
26
16
  import { render } from "@powerlines/plugin-alloy/render";
27
17
  import automd from "@powerlines/plugin-automd";
28
18
  import babel from "@powerlines/plugin-babel";
19
+ import { ENV_PREFIXES } from "@stryke/env/types";
29
20
  import { existsSync } from "@stryke/fs/exists";
30
21
  import { constantCase } from "@stryke/string-format/constant-case";
31
22
  import { isSetString } from "@stryke/type-checks/is-set-string";
@@ -195,5 +186,5 @@ const plugin = (options = {}) => {
195
186
  var src_default = plugin;
196
187
 
197
188
  //#endregion
198
- export { BaseEnv, BaseSecrets, EnvBuiltin, EnvDocsFile, EnvTypeDefinition, __ΩCreateEnvReflectionOptions, __ΩEnvInterface, __ΩEnvPluginContext, __ΩEnvPluginOptions, __ΩEnvPluginResolvedConfig, __ΩEnvPluginUserConfig, __ΩEnvType, __ΩSecretsInterface, createEnvReflection, createReflection, createSecretsReflection, createTemplateReflection, src_default as default, envBabelPlugin, formatEnvField, getEnvDefaultTypeDefinition, getEnvReflectionsPath, getEnvTypeReflectionsPath, getSecretsDefaultTypeDefinition, loadEnv, loadEnvFromContext, mergeEnvReflections, mergeSecretsReflections, plugin, readEnvReflection, readEnvTypeReflection, readSecretsReflection, reflectEnv, reflectSecrets, removeEnvPrefix, resolveRuntimeTypeFile, writeEnvReflection, writeEnvReflectionSync, writeEnvTypeReflection };
189
+ export { src_default as default, plugin };
199
190
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","names":["ReflectionClass","ReflectionKind","alloy","render","automd","babel","parseTypeDefinition","toArray","ENV_PREFIXES","existsSync","joinPaths","constantCase","isSetString","defu","envBabelPlugin","EnvDocsFile","EnvBuiltin","env","getDocsOutputPath","loadEnv","getEnvDefaultTypeDefinition","getEnvReflectionsPath","getEnvTypeReflectionsPath","getSecretsDefaultTypeDefinition","readEnvReflection","readEnvTypeReflection","readSecretsReflection","writeEnvReflection","writeEnvTypeReflection","reflectEnv","reflectSecrets","plugin","options","name","config","debug","types","validate","inject","prefix","transform","plugins","file","fs","resolve","warn","envDefaultTypeDefinition","secrets","secretsDefaultTypeDefinition","reduce","ret","formattedPrefix","includes","push","framework","filter","Boolean","replace","configResolved","parsed","used","injected","command","skipCache","persistedMeta","checksum","meta","Error","getProperties","length","envWithAlias","prop","getAlias","Object","entries","forEach","key","value","unprefixedKey","startsWith","slice","aliasKey","find","reverse","hasProperty","getProperty","setDefaultValue","kind","objectLiteral","typeName","description","prepare","_self$","result","_$createComponent","defaultConfig","reflection","order","handler","trace","docs","levelOffset","buildEnd","reflectionPath","generators","vite","envPrefix"],"sources":["../src/index.tsx"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport {\n ReflectionClass,\n ReflectionKind\n} from \"@powerlines/deepkit/vendor/type\";\nimport alloy from \"@powerlines/plugin-alloy\";\nimport { render } from \"@powerlines/plugin-alloy/render\";\nimport automd from \"@powerlines/plugin-automd\";\nimport babel from \"@powerlines/plugin-babel\";\nimport { parseTypeDefinition } from \"@stryke/convert/parse-type-definition\";\nimport { toArray } from \"@stryke/convert/to-array\";\nimport { ENV_PREFIXES } from \"@stryke/env/types\";\nimport { existsSync } from \"@stryke/fs/exists\";\nimport { joinPaths } from \"@stryke/path/join\";\nimport { constantCase } from \"@stryke/string-format/constant-case\";\nimport { isSetString } from \"@stryke/type-checks/is-set-string\";\nimport {\n TypeDefinition,\n TypeDefinitionParameter\n} from \"@stryke/types/configuration\";\nimport defu from \"defu\";\nimport { Plugin } from \"powerlines/types/plugin\";\nimport type { UserConfig as ViteUserConfig } from \"vite\";\nimport { envBabelPlugin } from \"./babel/plugin\";\nimport { EnvDocsFile } from \"./components/docs\";\nimport { EnvBuiltin } from \"./components/env\";\nimport { env } from \"./helpers/automd-generator\";\nimport { getDocsOutputPath } from \"./helpers/docs-helper\";\nimport { loadEnv } from \"./helpers/load\";\nimport {\n getEnvDefaultTypeDefinition,\n getEnvReflectionsPath,\n getEnvTypeReflectionsPath,\n getSecretsDefaultTypeDefinition,\n readEnvReflection,\n readEnvTypeReflection,\n readSecretsReflection,\n writeEnvReflection,\n writeEnvTypeReflection\n} from \"./helpers/persistence\";\nimport { reflectEnv, reflectSecrets } from \"./helpers/reflect\";\nimport { EnvPluginContext, EnvPluginOptions } from \"./types/plugin\";\n\nexport * from \"./babel\";\nexport * from \"./components\";\nexport * from \"./helpers\";\nexport * from \"./types\";\n\n/**\n * A Powerlines plugin to inject environment variables into the source code.\n */\nexport const plugin = <TContext extends EnvPluginContext = EnvPluginContext>(\n options: EnvPluginOptions = {}\n) => {\n return [\n alloy(options.alloy),\n babel(options.babel),\n {\n name: \"env\",\n async config() {\n this.debug(\n \"Providing default configuration for the Powerlines `env` build plugin.\"\n );\n\n const config = {\n env: defu(options, {\n types: {} as TypeDefinitionParameter,\n validate: false,\n inject: false,\n prefix: []\n }),\n transform: {\n babel: {\n plugins: [envBabelPlugin]\n }\n }\n };\n\n if (\n isSetString(config.env.types) ||\n (config.env.types && isSetString(config.env.types.file))\n ) {\n config.env.types = parseTypeDefinition(\n config.env.types\n ) as TypeDefinition;\n\n const file = await this.fs.resolve(config.env.types.file);\n if (file) {\n config.env.types.file = file;\n }\n } else {\n this.warn(\n \"The `env.types` configuration parameter was not provided. Please ensure this is expected.\"\n );\n\n const envDefaultTypeDefinition =\n await getEnvDefaultTypeDefinition(this);\n\n const file = await this.fs.resolve(envDefaultTypeDefinition.file);\n if (file) {\n config.env.types = parseTypeDefinition(\n `${file}#${envDefaultTypeDefinition.name}`\n ) as TypeDefinition;\n }\n }\n\n if (\n isSetString(config.env.secrets) ||\n (config.env.secrets && isSetString(config.env.secrets.file))\n ) {\n config.env.secrets = parseTypeDefinition(\n config.env.secrets\n ) as TypeDefinition;\n\n const file = await this.fs.resolve(config.env.secrets.file);\n if (file) {\n config.env.secrets.file = file;\n }\n } else {\n const secretsDefaultTypeDefinition =\n await getSecretsDefaultTypeDefinition(this);\n\n const file = await this.fs.resolve(secretsDefaultTypeDefinition.file);\n if (file) {\n config.env.secrets = parseTypeDefinition(\n `${file}#${secretsDefaultTypeDefinition.name}`\n ) as TypeDefinition;\n }\n }\n\n config.env.prefix = toArray(\n (config.env.prefix ?? []) as string[]\n ).reduce(\n (ret: string[], prefix: string) => {\n const formattedPrefix = constantCase(prefix);\n if (!ret.includes(formattedPrefix)) {\n ret.push(formattedPrefix);\n }\n\n return ret;\n },\n [\n ...ENV_PREFIXES,\n \"POWERLINES_\",\n this.config.framework &&\n this.config.framework !== \"powerlines\" &&\n `${constantCase(this.config.framework)}_`\n ].filter(Boolean) as string[]\n );\n\n config.env.prefix = toArray(config.env.prefix).reduce((ret, prefix) => {\n if (!ret.includes(prefix.replace(/_$/g, \"\"))) {\n ret.push(prefix.replace(/_$/g, \"\"));\n }\n return ret;\n }, [] as string[]);\n\n return config;\n },\n async configResolved() {\n this.debug(\n `Environment plugin configuration has been resolved for the Powerlines project.`\n );\n\n this.env = defu(\n {\n parsed: await loadEnv(this, this.config.env)\n },\n this.env ?? {},\n {\n types: {\n env: {}\n },\n used: {\n env: {},\n secrets: {}\n },\n parsed: {},\n injected: {}\n }\n ) as EnvPluginContext[\"env\"];\n\n if (\n this.config.command !== \"prepare\" &&\n !this.config.skipCache &&\n this.persistedMeta?.checksum === this.meta.checksum &&\n existsSync(getEnvTypeReflectionsPath(this, \"env\"))\n ) {\n this.debug(\n `Skipping reflection initialization as the meta checksum has not changed.`\n );\n\n this.env.types.env = await readEnvTypeReflection(this, \"env\");\n\n if (existsSync(getEnvReflectionsPath(this, \"env\"))) {\n this.env.used.env = await readEnvReflection(this);\n }\n\n if (existsSync(getEnvTypeReflectionsPath(this, \"secrets\"))) {\n this.env.types.secrets = await readEnvTypeReflection(\n this,\n \"secrets\"\n );\n }\n\n if (existsSync(getEnvReflectionsPath(this, \"secrets\"))) {\n this.env.used.secrets = await readSecretsReflection(this);\n }\n } else {\n this.debug(\n `Starting environment configuration reflection initialization.`\n );\n\n this.env.types.env = await reflectEnv(\n this,\n this.config.env.types?.file,\n this.config.env.types?.name\n );\n if (!this.env.types.env) {\n throw new Error(\n \"Failed to find the environment configuration type reflection in the context.\"\n );\n }\n\n await writeEnvTypeReflection(this, this.env.types.env, \"env\");\n\n this.env.types.secrets = await reflectSecrets(\n this,\n this.config.env.secrets?.file,\n this.config.env.secrets?.name\n );\n if (!this.env.types.secrets) {\n throw new Error(\n \"Failed to find the secrets configuration type reflection in the context.\"\n );\n }\n\n await writeEnvTypeReflection(this, this.env.types.secrets, \"secrets\");\n\n this.debug(\n `Resolved ${\n this.env.types.env.getProperties().length ?? 0\n } environment configuration parameters and ${\n this.env.types.secrets?.getProperties().length ?? 0\n } secret configuration parameters`\n );\n\n const envWithAlias = this.env.types.env\n .getProperties()\n .filter(prop => prop.getAlias().length > 0);\n\n Object.entries(await loadEnv(this, this.config.env)).forEach(\n ([key, value]) => {\n const unprefixedKey = this.config.env.prefix.reduce(\n (ret, prefix) => {\n if (key.replace(/_$/g, \"\").startsWith(prefix)) {\n return key.replace(/_$/g, \"\").slice(prefix.length);\n }\n return ret;\n },\n key\n );\n\n const aliasKey = envWithAlias.find(prop =>\n prop?.getAlias().reverse().includes(unprefixedKey)\n );\n if (this.env.types.env?.hasProperty(unprefixedKey) || aliasKey) {\n this.env.types.env\n .getProperty(unprefixedKey)\n .setDefaultValue(value);\n }\n }\n );\n\n this.env.used.env = new ReflectionClass(\n {\n kind: ReflectionKind.objectLiteral,\n typeName: \"Env\",\n description: `An object containing the environment configuration parameters used by the ${\n this.config.name\n ? `${this.config.name} application`\n : \"application\"\n }.`,\n types: []\n },\n this.env.types.env\n );\n\n await writeEnvReflection(this, this.env.used.env, \"env\");\n\n if (this.env.types.secrets) {\n await writeEnvTypeReflection(\n this,\n this.env.types.secrets,\n \"secrets\"\n );\n\n this.env.used.secrets = new ReflectionClass(\n {\n kind: ReflectionKind.objectLiteral,\n typeName: \"Secrets\",\n description: `An object containing the secret configuration parameters used by the ${\n this.config.name\n ? `${this.config.name} application`\n : \"application\"\n }.`,\n types: []\n },\n this.env.types.secrets\n );\n await writeEnvReflection(this, this.env.used.secrets, \"secrets\");\n }\n }\n },\n async prepare() {\n this.debug(\n `Preparing the Environment runtime artifacts for the Powerlines project.`\n );\n\n const result = await readEnvTypeReflection(this, \"env\");\n\n return render(\n this,\n <EnvBuiltin\n defaultConfig={this.config.env.defaultConfig}\n reflection={result}\n />\n );\n },\n transform: {\n order: \"post\",\n async handler() {\n if (this.env.used.env.getProperties().length > 0) {\n this.trace(\n `Persisting used environment configuration reflections to ${getEnvReflectionsPath(\n this,\n \"env\"\n )}.`\n );\n await writeEnvReflection(this, this.env.used.env, \"env\");\n }\n\n if (this.env.used.secrets.getProperties().length > 0) {\n this.trace(\n `Persisting used secret configuration reflections to ${getEnvReflectionsPath(\n this,\n \"secrets\"\n )}.`\n );\n await writeEnvReflection(this, this.env.used.secrets, \"secrets\");\n }\n }\n },\n async docs() {\n this.debug(\n `Documenting environment variables configuration values in \"${joinPaths(\n getDocsOutputPath(this),\n \"env.md\"\n )}\"`\n );\n\n const result = await readEnvTypeReflection(this, \"env\");\n\n return render(\n this,\n <EnvDocsFile levelOffset={0} reflection={result} />\n );\n },\n async buildEnd() {\n const reflectionPath = getEnvReflectionsPath(this, \"env\");\n\n this.debug(`Writing env reflection types to ${reflectionPath}.`);\n\n await writeEnvReflection(this, this.env.used.env, \"env\");\n }\n },\n {\n name: \"env:automd-generator\",\n config() {\n return {\n automd: defu(options.automd ?? {}, {\n generators: {\n env: env(this)\n }\n })\n };\n }\n },\n {\n name: \"env:vite\",\n vite: {\n configResolved(this: TContext) {\n return {\n envPrefix: this.config?.env?.prefix\n } as ViteUserConfig;\n }\n }\n },\n automd(options.automd)\n ] as Plugin<TContext>[];\n};\n\nexport default plugin;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","names":["ReflectionClass","ReflectionKind","alloy","render","automd","babel","parseTypeDefinition","toArray","ENV_PREFIXES","existsSync","joinPaths","constantCase","isSetString","defu","envBabelPlugin","EnvDocsFile","EnvBuiltin","env","getDocsOutputPath","loadEnv","getEnvDefaultTypeDefinition","getEnvReflectionsPath","getEnvTypeReflectionsPath","getSecretsDefaultTypeDefinition","readEnvReflection","readEnvTypeReflection","readSecretsReflection","writeEnvReflection","writeEnvTypeReflection","reflectEnv","reflectSecrets","plugin","options","name","config","debug","types","validate","inject","prefix","transform","plugins","file","fs","resolve","warn","envDefaultTypeDefinition","secrets","secretsDefaultTypeDefinition","reduce","ret","formattedPrefix","includes","push","framework","filter","Boolean","replace","configResolved","parsed","used","injected","command","skipCache","persistedMeta","checksum","meta","Error","getProperties","length","envWithAlias","prop","getAlias","Object","entries","forEach","key","value","unprefixedKey","startsWith","slice","aliasKey","find","reverse","hasProperty","getProperty","setDefaultValue","kind","objectLiteral","typeName","description","prepare","_self$","result","_$createComponent","defaultConfig","reflection","order","handler","trace","docs","levelOffset","buildEnd","reflectionPath","generators","vite","envPrefix"],"sources":["../src/index.tsx"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport {\n ReflectionClass,\n ReflectionKind\n} from \"@powerlines/deepkit/vendor/type\";\nimport alloy from \"@powerlines/plugin-alloy\";\nimport { render } from \"@powerlines/plugin-alloy/render\";\nimport automd from \"@powerlines/plugin-automd\";\nimport babel from \"@powerlines/plugin-babel\";\nimport { parseTypeDefinition } from \"@stryke/convert/parse-type-definition\";\nimport { toArray } from \"@stryke/convert/to-array\";\nimport { ENV_PREFIXES } from \"@stryke/env/types\";\nimport { existsSync } from \"@stryke/fs/exists\";\nimport { joinPaths } from \"@stryke/path/join\";\nimport { constantCase } from \"@stryke/string-format/constant-case\";\nimport { isSetString } from \"@stryke/type-checks/is-set-string\";\nimport {\n TypeDefinition,\n TypeDefinitionParameter\n} from \"@stryke/types/configuration\";\nimport defu from \"defu\";\nimport { Plugin } from \"powerlines\";\nimport type { UserConfig as ViteUserConfig } from \"vite\";\nimport { envBabelPlugin } from \"./babel/plugin\";\nimport { EnvDocsFile } from \"./components/docs\";\nimport { EnvBuiltin } from \"./components/env\";\nimport { env } from \"./helpers/automd-generator\";\nimport { getDocsOutputPath } from \"./helpers/docs-helper\";\nimport { loadEnv } from \"./helpers/load\";\nimport {\n getEnvDefaultTypeDefinition,\n getEnvReflectionsPath,\n getEnvTypeReflectionsPath,\n getSecretsDefaultTypeDefinition,\n readEnvReflection,\n readEnvTypeReflection,\n readSecretsReflection,\n writeEnvReflection,\n writeEnvTypeReflection\n} from \"./helpers/persistence\";\nimport { reflectEnv, reflectSecrets } from \"./helpers/reflect\";\nimport { EnvPluginContext, EnvPluginOptions } from \"./types/plugin\";\n\ndeclare module \"powerlines\" {\n export interface UserConfig {\n env?: EnvPluginOptions;\n }\n}\n\n/**\n * A Powerlines plugin to inject environment variables into the source code.\n */\nexport const plugin = <TContext extends EnvPluginContext = EnvPluginContext>(\n options: EnvPluginOptions = {}\n) => {\n return [\n alloy(options.alloy),\n babel(options.babel),\n {\n name: \"env\",\n async config() {\n this.debug(\n \"Providing default configuration for the Powerlines `env` build plugin.\"\n );\n\n const config = {\n env: defu(options, {\n types: {} as TypeDefinitionParameter,\n validate: false,\n inject: false,\n prefix: []\n }),\n transform: {\n babel: {\n plugins: [envBabelPlugin]\n }\n }\n };\n\n if (\n isSetString(config.env.types) ||\n (config.env.types && isSetString(config.env.types.file))\n ) {\n config.env.types = parseTypeDefinition(\n config.env.types\n ) as TypeDefinition;\n\n const file = await this.fs.resolve(config.env.types.file);\n if (file) {\n config.env.types.file = file;\n }\n } else {\n this.warn(\n \"The `env.types` configuration parameter was not provided. Please ensure this is expected.\"\n );\n\n const envDefaultTypeDefinition =\n await getEnvDefaultTypeDefinition(this);\n\n const file = await this.fs.resolve(envDefaultTypeDefinition.file);\n if (file) {\n config.env.types = parseTypeDefinition(\n `${file}#${envDefaultTypeDefinition.name}`\n ) as TypeDefinition;\n }\n }\n\n if (\n isSetString(config.env.secrets) ||\n (config.env.secrets && isSetString(config.env.secrets.file))\n ) {\n config.env.secrets = parseTypeDefinition(\n config.env.secrets\n ) as TypeDefinition;\n\n const file = await this.fs.resolve(config.env.secrets.file);\n if (file) {\n config.env.secrets.file = file;\n }\n } else {\n const secretsDefaultTypeDefinition =\n await getSecretsDefaultTypeDefinition(this);\n\n const file = await this.fs.resolve(secretsDefaultTypeDefinition.file);\n if (file) {\n config.env.secrets = parseTypeDefinition(\n `${file}#${secretsDefaultTypeDefinition.name}`\n ) as TypeDefinition;\n }\n }\n\n config.env.prefix = toArray(\n (config.env.prefix ?? []) as string[]\n ).reduce(\n (ret: string[], prefix: string) => {\n const formattedPrefix = constantCase(prefix);\n if (!ret.includes(formattedPrefix)) {\n ret.push(formattedPrefix);\n }\n\n return ret;\n },\n [\n ...ENV_PREFIXES,\n \"POWERLINES_\",\n this.config.framework &&\n this.config.framework !== \"powerlines\" &&\n `${constantCase(this.config.framework)}_`\n ].filter(Boolean) as string[]\n );\n\n config.env.prefix = toArray(config.env.prefix).reduce((ret, prefix) => {\n if (!ret.includes(prefix.replace(/_$/g, \"\"))) {\n ret.push(prefix.replace(/_$/g, \"\"));\n }\n return ret;\n }, [] as string[]);\n\n return config;\n },\n async configResolved() {\n this.debug(\n `Environment plugin configuration has been resolved for the Powerlines project.`\n );\n\n this.env = defu(\n {\n parsed: await loadEnv(this, this.config.env)\n },\n this.env ?? {},\n {\n types: {\n env: {}\n },\n used: {\n env: {},\n secrets: {}\n },\n parsed: {},\n injected: {}\n }\n ) as EnvPluginContext[\"env\"];\n\n if (\n this.config.command !== \"prepare\" &&\n !this.config.skipCache &&\n this.persistedMeta?.checksum === this.meta.checksum &&\n existsSync(getEnvTypeReflectionsPath(this, \"env\"))\n ) {\n this.debug(\n `Skipping reflection initialization as the meta checksum has not changed.`\n );\n\n this.env.types.env = await readEnvTypeReflection(this, \"env\");\n\n if (existsSync(getEnvReflectionsPath(this, \"env\"))) {\n this.env.used.env = await readEnvReflection(this);\n }\n\n if (existsSync(getEnvTypeReflectionsPath(this, \"secrets\"))) {\n this.env.types.secrets = await readEnvTypeReflection(\n this,\n \"secrets\"\n );\n }\n\n if (existsSync(getEnvReflectionsPath(this, \"secrets\"))) {\n this.env.used.secrets = await readSecretsReflection(this);\n }\n } else {\n this.debug(\n `Starting environment configuration reflection initialization.`\n );\n\n this.env.types.env = await reflectEnv(\n this,\n this.config.env.types?.file,\n this.config.env.types?.name\n );\n if (!this.env.types.env) {\n throw new Error(\n \"Failed to find the environment configuration type reflection in the context.\"\n );\n }\n\n await writeEnvTypeReflection(this, this.env.types.env, \"env\");\n\n this.env.types.secrets = await reflectSecrets(\n this,\n this.config.env.secrets?.file,\n this.config.env.secrets?.name\n );\n if (!this.env.types.secrets) {\n throw new Error(\n \"Failed to find the secrets configuration type reflection in the context.\"\n );\n }\n\n await writeEnvTypeReflection(this, this.env.types.secrets, \"secrets\");\n\n this.debug(\n `Resolved ${\n this.env.types.env.getProperties().length ?? 0\n } environment configuration parameters and ${\n this.env.types.secrets?.getProperties().length ?? 0\n } secret configuration parameters`\n );\n\n const envWithAlias = this.env.types.env\n .getProperties()\n .filter(prop => prop.getAlias().length > 0);\n\n Object.entries(await loadEnv(this, this.config.env)).forEach(\n ([key, value]) => {\n const unprefixedKey = this.config.env.prefix.reduce(\n (ret, prefix) => {\n if (key.replace(/_$/g, \"\").startsWith(prefix)) {\n return key.replace(/_$/g, \"\").slice(prefix.length);\n }\n return ret;\n },\n key\n );\n\n const aliasKey = envWithAlias.find(prop =>\n prop?.getAlias().reverse().includes(unprefixedKey)\n );\n if (this.env.types.env?.hasProperty(unprefixedKey) || aliasKey) {\n this.env.types.env\n .getProperty(unprefixedKey)\n .setDefaultValue(value);\n }\n }\n );\n\n this.env.used.env = new ReflectionClass(\n {\n kind: ReflectionKind.objectLiteral,\n typeName: \"Env\",\n description: `An object containing the environment configuration parameters used by the ${\n this.config.name\n ? `${this.config.name} application`\n : \"application\"\n }.`,\n types: []\n },\n this.env.types.env\n );\n\n await writeEnvReflection(this, this.env.used.env, \"env\");\n\n if (this.env.types.secrets) {\n await writeEnvTypeReflection(\n this,\n this.env.types.secrets,\n \"secrets\"\n );\n\n this.env.used.secrets = new ReflectionClass(\n {\n kind: ReflectionKind.objectLiteral,\n typeName: \"Secrets\",\n description: `An object containing the secret configuration parameters used by the ${\n this.config.name\n ? `${this.config.name} application`\n : \"application\"\n }.`,\n types: []\n },\n this.env.types.secrets\n );\n await writeEnvReflection(this, this.env.used.secrets, \"secrets\");\n }\n }\n },\n async prepare() {\n this.debug(\n `Preparing the Environment runtime artifacts for the Powerlines project.`\n );\n\n const result = await readEnvTypeReflection(this, \"env\");\n\n return render(\n this,\n <EnvBuiltin\n defaultConfig={this.config.env.defaultConfig}\n reflection={result}\n />\n );\n },\n transform: {\n order: \"post\",\n async handler() {\n if (this.env.used.env.getProperties().length > 0) {\n this.trace(\n `Persisting used environment configuration reflections to ${getEnvReflectionsPath(\n this,\n \"env\"\n )}.`\n );\n await writeEnvReflection(this, this.env.used.env, \"env\");\n }\n\n if (this.env.used.secrets.getProperties().length > 0) {\n this.trace(\n `Persisting used secret configuration reflections to ${getEnvReflectionsPath(\n this,\n \"secrets\"\n )}.`\n );\n await writeEnvReflection(this, this.env.used.secrets, \"secrets\");\n }\n }\n },\n async docs() {\n this.debug(\n `Documenting environment variables configuration values in \"${joinPaths(\n getDocsOutputPath(this),\n \"env.md\"\n )}\"`\n );\n\n const result = await readEnvTypeReflection(this, \"env\");\n\n return render(\n this,\n <EnvDocsFile levelOffset={0} reflection={result} />\n );\n },\n async buildEnd() {\n const reflectionPath = getEnvReflectionsPath(this, \"env\");\n\n this.debug(`Writing env reflection types to ${reflectionPath}.`);\n\n await writeEnvReflection(this, this.env.used.env, \"env\");\n }\n },\n {\n name: \"env:automd-generator\",\n config() {\n return {\n automd: defu(options.automd ?? {}, {\n generators: {\n env: env(this)\n }\n })\n };\n }\n },\n {\n name: \"env:vite\",\n vite: {\n configResolved(this: TContext) {\n return {\n envPrefix: this.config?.env?.prefix\n } as ViteUserConfig;\n }\n }\n },\n automd(options.automd)\n ] as Plugin<TContext>[];\n};\n\nexport default plugin;\n"],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  const require_rolldown_runtime = require('../../../../../../_virtual/rolldown_runtime.cjs');
2
+ const require_defu = require('../../../../defu@6.1.4/node_modules/defu/dist/defu.cjs');
2
3
  const require_pathe_M_eThtNZ = require('../../../../pathe@2.0.3/node_modules/pathe/dist/shared/pathe.M-eThtNZ.cjs');
3
4
  const require_main$1 = require('../../../../dotenv@17.3.1/node_modules/dotenv/lib/main.cjs');
4
5
  const require_index = require('../../../../exsolve@1.0.8/node_modules/exsolve/dist/index.cjs');
5
6
  const require_jiti = require('../../../../jiti@2.6.1/node_modules/jiti/lib/jiti.cjs');
6
- const require_defu = require('../../../../defu@6.1.4/node_modules/defu/dist/defu.cjs');
7
7
  const require_index$1 = require('../../../../rc9@2.1.2/node_modules/rc9/dist/index.cjs');
8
8
  const require_index$2 = require('../../../../pkg-types@2.3.0/node_modules/pkg-types/dist/index.cjs');
9
9
  let node_fs = require("node:fs");
@@ -1,9 +1,9 @@
1
1
  import { __toESM } from "../../../../../../_virtual/rolldown_runtime.mjs";
2
+ import { defu } from "../../../../defu@6.1.4/node_modules/defu/dist/defu.mjs";
2
3
  import { basename, dirname, extname, join, normalize, resolve } from "../../../../pathe@2.0.3/node_modules/pathe/dist/shared/pathe.M-eThtNZ.mjs";
3
4
  import { require_main } from "../../../../dotenv@17.3.1/node_modules/dotenv/lib/main.mjs";
4
5
  import { resolveModulePath } from "../../../../exsolve@1.0.8/node_modules/exsolve/dist/index.mjs";
5
6
  import { createJiti } from "../../../../jiti@2.6.1/node_modules/jiti/lib/jiti.mjs";
6
- import { defu } from "../../../../defu@6.1.4/node_modules/defu/dist/defu.mjs";
7
7
  import { read, readUser } from "../../../../rc9@2.1.2/node_modules/rc9/dist/index.mjs";
8
8
  import { findWorkspaceDir, readPackageJSON } from "../../../../pkg-types@2.3.0/node_modules/pkg-types/dist/index.mjs";
9
9
  import { existsSync, promises, statSync } from "node:fs";
@@ -1,6 +1,6 @@
1
1
  const require_rolldown_runtime = require('../../../../../../../_virtual/rolldown_runtime.cjs');
2
- const require_pathe_M_eThtNZ = require('../../../../../pathe@2.0.3/node_modules/pathe/dist/shared/pathe.M-eThtNZ.cjs');
3
2
  const require_defu = require('../../../../../defu@6.1.4/node_modules/defu/dist/defu.cjs');
3
+ const require_pathe_M_eThtNZ = require('../../../../../pathe@2.0.3/node_modules/pathe/dist/shared/pathe.M-eThtNZ.cjs');
4
4
  const require_index = require('../../../../../nypm@0.6.5/node_modules/nypm/dist/index.cjs');
5
5
  const require_proxy$1 = require('../../../../../node-fetch-native@1.6.7/node_modules/node-fetch-native/dist/proxy.cjs');
6
6
  let node_fs = require("node:fs");
@@ -1,5 +1,5 @@
1
- import { basename, dirname as dirname$1, resolve as resolve$1 } from "../../../../../pathe@2.0.3/node_modules/pathe/dist/shared/pathe.M-eThtNZ.mjs";
2
1
  import { defu } from "../../../../../defu@6.1.4/node_modules/defu/dist/defu.mjs";
2
+ import { basename, dirname as dirname$1, resolve as resolve$1 } from "../../../../../pathe@2.0.3/node_modules/pathe/dist/shared/pathe.M-eThtNZ.mjs";
3
3
  import { installDependencies } from "../../../../../nypm@0.6.5/node_modules/nypm/dist/index.mjs";
4
4
  import { require_proxy } from "../../../../../node-fetch-native@1.6.7/node_modules/node-fetch-native/dist/proxy.mjs";
5
5
  import fs, { createWriteStream, existsSync, readdirSync, renameSync } from "node:fs";
@@ -1,6 +1,6 @@
1
1
  const require_rolldown_runtime = require('../../../../../../_virtual/rolldown_runtime.cjs');
2
- const require_index = require('../../../../destr@2.0.5/node_modules/destr/dist/index.cjs');
3
2
  require('../../../../defu@6.1.4/node_modules/defu/dist/defu.cjs');
3
+ const require_index = require('../../../../destr@2.0.5/node_modules/destr/dist/index.cjs');
4
4
  let node_fs = require("node:fs");
5
5
  let node_path = require("node:path");
6
6
  let node_os = require("node:os");
@@ -1,5 +1,5 @@
1
- import { destr } from "../../../../destr@2.0.5/node_modules/destr/dist/index.mjs";
2
1
  import "../../../../defu@6.1.4/node_modules/defu/dist/defu.mjs";
2
+ import { destr } from "../../../../destr@2.0.5/node_modules/destr/dist/index.mjs";
3
3
  import { existsSync, readFileSync } from "node:fs";
4
4
  import { resolve } from "node:path";
5
5
  import { homedir } from "node:os";
@@ -1,9 +1,9 @@
1
1
  import { EnvInterface, SecretsInterface } from "./runtime.mjs";
2
+ import { DotenvParseOutput } from "@stryke/env/types";
2
3
  import { BabelPluginContext, BabelPluginOptions, BabelPluginResolvedConfig, BabelPluginUserConfig } from "@powerlines/plugin-babel/types";
3
4
  import { AutoMDPluginOptions } from "@powerlines/plugin-automd/types/plugin";
4
5
  import { AlloyPluginContext, AlloyPluginOptions, AlloyPluginResolvedConfig, AlloyPluginUserConfig } from "@powerlines/plugin-alloy/types";
5
6
  import { Reflection } from "@powerlines/deepkit/types";
6
- import { DotenvParseOutput } from "@stryke/env/types";
7
7
  import { Children } from "@alloy-js/core";
8
8
  import { DotenvConfiguration, TypeDefinition, TypeDefinitionParameter } from "@stryke/types/configuration";
9
9
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@powerlines/plugin-env",
3
- "version": "0.16.7",
3
+ "version": "0.16.9",
4
4
  "type": "module",
5
5
  "description": "A package containing a Powerlines plugin for injecting static .env configuration values to the code so that they're accessible at runtime.",
6
6
  "repository": {
@@ -55,6 +55,7 @@
55
55
  "default": "./dist/index.mjs"
56
56
  }
57
57
  },
58
+ "./*": "./*",
58
59
  "./babel": {
59
60
  "require": {
60
61
  "types": "./dist/babel/index.d.cts",
@@ -251,7 +252,6 @@
251
252
  "default": "./dist/helpers/template-helpers.mjs"
252
253
  }
253
254
  },
254
- "./package.json": "./package.json",
255
255
  "./types": {
256
256
  "require": {
257
257
  "types": "./dist/types/index.d.cts",
@@ -305,11 +305,11 @@
305
305
  "@alloy-js/typescript": "0.23.0-dev.4",
306
306
  "@babel/core": "^7.29.0",
307
307
  "@babel/types": "^7.29.0",
308
- "@powerlines/plugin-alloy": "^0.23.20",
309
- "@powerlines/plugin-automd": "^0.1.290",
310
- "@powerlines/plugin-babel": "^0.12.299",
311
- "@powerlines/plugin-plugin": "^0.12.241",
312
- "@storm-software/config-tools": "^1.189.9",
308
+ "@powerlines/plugin-alloy": "^0.23.22",
309
+ "@powerlines/plugin-automd": "^0.1.292",
310
+ "@powerlines/plugin-babel": "^0.12.301",
311
+ "@powerlines/plugin-plugin": "^0.12.243",
312
+ "@storm-software/config-tools": "^1.189.10",
313
313
  "@stryke/capnp": "^0.12.68",
314
314
  "@stryke/env": "^0.20.60",
315
315
  "@stryke/fs": "^0.33.43",
@@ -318,15 +318,15 @@
318
318
  "@stryke/type-checks": "^0.5.25",
319
319
  "@stryke/types": "^0.10.39",
320
320
  "automd": "^0.4.3",
321
- "powerlines": "^0.38.57"
321
+ "powerlines": "^0.39.1"
322
322
  },
323
323
  "devDependencies": {
324
- "@powerlines/deepkit": "^0.6.70",
325
- "@powerlines/plugin-deepkit": "^0.11.169",
326
- "@types/node": "^25.3.1",
324
+ "@powerlines/deepkit": "^0.6.72",
325
+ "@powerlines/plugin-deepkit": "^0.11.171",
326
+ "@types/node": "^25.3.3",
327
327
  "vite": "8.0.0-beta.2"
328
328
  },
329
329
  "publishConfig": { "access": "public" },
330
330
  "types": "./dist/index.d.cts",
331
- "gitHead": "eb3dbd19bd153aa5a988bce09a1cf05d985cb04b"
331
+ "gitHead": "30a096fed42d3462dbc028b16145250c373f3d99"
332
332
  }