powerlines 0.37.54 → 0.37.56

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/dist/api.cjs +2 -2
  2. package/dist/api.js +1 -1
  3. package/dist/astro.cjs +4 -4
  4. package/dist/astro.js +3 -3
  5. package/dist/{chunk-DMSPAYHA.cjs → chunk-2ESGIL56.cjs} +5 -142
  6. package/dist/{chunk-C25WKEO2.js → chunk-2VUAOV5V.js} +3 -3
  7. package/dist/{chunk-4DWSMUC2.js → chunk-5OE3ACWC.js} +3 -3
  8. package/dist/{chunk-DKYPRXSW.js → chunk-7LH63BFW.js} +3 -3
  9. package/dist/{chunk-EHGIUEFJ.cjs → chunk-BSKRKIB5.cjs} +4 -4
  10. package/dist/chunk-JK5Y4ABM.cjs +12 -0
  11. package/dist/{chunk-WVLRUTAI.js → chunk-L4OM5KXO.js} +5 -141
  12. package/dist/{chunk-G5QXE5QH.cjs → chunk-LFHXRRZX.cjs} +5 -5
  13. package/dist/{chunk-RPEWOQOR.js → chunk-NUYBKMON.js} +3 -3
  14. package/dist/chunk-PCQFHZKL.cjs +12 -0
  15. package/dist/{chunk-FBPHSZXY.js → chunk-PQOEG6WQ.js} +3 -3
  16. package/dist/{chunk-PTMMULXX.cjs → chunk-QQ6V5SC5.cjs} +4 -4
  17. package/dist/esbuild.cjs +6 -6
  18. package/dist/esbuild.js +3 -3
  19. package/dist/farm.cjs +3 -3
  20. package/dist/farm.js +2 -2
  21. package/dist/index.cjs +10 -10
  22. package/dist/index.js +2 -2
  23. package/dist/lib/build/esbuild.cjs +5 -5
  24. package/dist/lib/build/esbuild.js +2 -2
  25. package/dist/lib/build/index.cjs +12 -12
  26. package/dist/lib/build/index.js +4 -4
  27. package/dist/lib/build/tsup.cjs +6 -6
  28. package/dist/lib/build/tsup.js +3 -3
  29. package/dist/lib/build/vite.cjs +5 -5
  30. package/dist/lib/build/vite.js +3 -3
  31. package/dist/lib/{chunk-4DLYGQZC.cjs → chunk-26DEN74R.cjs} +6 -6
  32. package/dist/lib/{chunk-4DLYGQZC.cjs.map → chunk-26DEN74R.cjs.map} +1 -1
  33. package/dist/lib/{chunk-UDP5UT5U.cjs → chunk-43LFJIBT.cjs} +4 -4
  34. package/dist/lib/{chunk-UDP5UT5U.cjs.map → chunk-43LFJIBT.cjs.map} +1 -1
  35. package/dist/lib/{chunk-5LL3YTST.cjs → chunk-ALXWGYR7.cjs} +4 -4
  36. package/dist/lib/{chunk-5LL3YTST.cjs.map → chunk-ALXWGYR7.cjs.map} +1 -1
  37. package/dist/lib/{chunk-P5JP3DHH.js → chunk-CIBV7IDT.js} +5 -141
  38. package/dist/lib/chunk-CIBV7IDT.js.map +1 -0
  39. package/dist/lib/{chunk-6CXIQSZI.cjs → chunk-DMSD5NS5.cjs} +19 -19
  40. package/dist/lib/{chunk-6CXIQSZI.cjs.map → chunk-DMSD5NS5.cjs.map} +1 -1
  41. package/dist/lib/{chunk-QA5Q2UBH.cjs → chunk-DTGZYBQX.cjs} +4 -4
  42. package/dist/lib/{chunk-QA5Q2UBH.cjs.map → chunk-DTGZYBQX.cjs.map} +1 -1
  43. package/dist/lib/{chunk-DUROA7IY.cjs → chunk-DWKRVCBP.cjs} +17 -172
  44. package/dist/lib/chunk-DWKRVCBP.cjs.map +1 -0
  45. package/dist/lib/{chunk-ARPXWAQM.cjs → chunk-FIXA5XLP.cjs} +4 -4
  46. package/dist/lib/{chunk-ARPXWAQM.cjs.map → chunk-FIXA5XLP.cjs.map} +1 -1
  47. package/dist/lib/{chunk-M4Q6V2EL.js → chunk-G2GLLLRU.js} +4 -4
  48. package/dist/lib/{chunk-M4Q6V2EL.js.map → chunk-G2GLLLRU.js.map} +1 -1
  49. package/dist/lib/{chunk-5RFTIHJY.cjs → chunk-HCDETYRM.cjs} +4 -4
  50. package/dist/lib/chunk-HCDETYRM.cjs.map +1 -0
  51. package/dist/lib/{chunk-DSQDA3AX.js → chunk-I4LBDWHI.js} +3 -3
  52. package/dist/lib/{chunk-DSQDA3AX.js.map → chunk-I4LBDWHI.js.map} +1 -1
  53. package/dist/lib/{chunk-MT6U737Y.js → chunk-I4VVVKOI.js} +3 -3
  54. package/dist/lib/{chunk-MT6U737Y.js.map → chunk-I4VVVKOI.js.map} +1 -1
  55. package/dist/lib/{chunk-XOLWPP4K.cjs → chunk-IEWCXR3Q.cjs} +5 -5
  56. package/dist/lib/{chunk-XOLWPP4K.cjs.map → chunk-IEWCXR3Q.cjs.map} +1 -1
  57. package/dist/lib/{chunk-3VHQ4ICQ.js → chunk-IJ534W5N.js} +3 -3
  58. package/dist/lib/{chunk-3VHQ4ICQ.js.map → chunk-IJ534W5N.js.map} +1 -1
  59. package/dist/lib/{chunk-YFI33VEM.cjs → chunk-ODRURQ3X.cjs} +4 -4
  60. package/dist/lib/{chunk-YFI33VEM.cjs.map → chunk-ODRURQ3X.cjs.map} +1 -1
  61. package/dist/lib/{chunk-BZUPF244.js → chunk-PMOMJSBN.js} +3 -3
  62. package/dist/lib/{chunk-BZUPF244.js.map → chunk-PMOMJSBN.js.map} +1 -1
  63. package/dist/lib/{chunk-S52XMZ4T.js → chunk-VWKNWAN3.js} +4 -4
  64. package/dist/lib/{chunk-S52XMZ4T.js.map → chunk-VWKNWAN3.js.map} +1 -1
  65. package/dist/lib/{chunk-FUY5E7BG.js → chunk-VXFMR22Q.js} +3 -3
  66. package/dist/lib/{chunk-FUY5E7BG.js.map → chunk-VXFMR22Q.js.map} +1 -1
  67. package/dist/lib/{chunk-ZW6KFCBI.js → chunk-Y7RUTBOF.js} +3 -3
  68. package/dist/lib/{chunk-ZW6KFCBI.js.map → chunk-Y7RUTBOF.js.map} +1 -1
  69. package/dist/lib/{chunk-CJI6MHJH.js → chunk-YVFFKAMF.js} +3 -3
  70. package/dist/lib/{chunk-CJI6MHJH.js.map → chunk-YVFFKAMF.js.map} +1 -1
  71. package/dist/lib/contexts/api-context.cjs +5 -5
  72. package/dist/lib/contexts/api-context.js +4 -4
  73. package/dist/lib/contexts/context.cjs +3 -3
  74. package/dist/lib/contexts/context.js +2 -2
  75. package/dist/lib/contexts/environment-context.cjs +4 -4
  76. package/dist/lib/contexts/environment-context.js +3 -3
  77. package/dist/lib/contexts/index.cjs +7 -7
  78. package/dist/lib/contexts/index.js +4 -4
  79. package/dist/lib/entry.cjs +8 -8
  80. package/dist/lib/entry.js +1 -1
  81. package/dist/lib/index.cjs +21 -21
  82. package/dist/lib/index.js +8 -8
  83. package/dist/lib/unplugin/factory.cjs +6 -6
  84. package/dist/lib/unplugin/factory.js +5 -5
  85. package/dist/lib/unplugin/index.cjs +6 -6
  86. package/dist/lib/unplugin/index.js +5 -5
  87. package/dist/lib/utilities/bundle.cjs +4 -4
  88. package/dist/lib/utilities/bundle.js +3 -3
  89. package/dist/lib/utilities/index.cjs +6 -6
  90. package/dist/lib/utilities/index.js +4 -4
  91. package/dist/lib/utilities/resolve.cjs +5 -5
  92. package/dist/lib/utilities/resolve.js +4 -4
  93. package/dist/next.cjs +4 -4
  94. package/dist/next.js +3 -3
  95. package/dist/nuxt.cjs +8 -8
  96. package/dist/nuxt.js +4 -4
  97. package/dist/rolldown.cjs +6 -6
  98. package/dist/rolldown.js +3 -3
  99. package/dist/rollup.cjs +3 -3
  100. package/dist/rollup.js +2 -2
  101. package/dist/rspack.cjs +3 -3
  102. package/dist/rspack.js +2 -2
  103. package/dist/tsdown.cjs +4 -4
  104. package/dist/tsdown.js +3 -3
  105. package/dist/tsup.cjs +4 -4
  106. package/dist/tsup.js +3 -3
  107. package/dist/unloader.cjs +3 -3
  108. package/dist/unloader.js +2 -2
  109. package/dist/unplugin.cjs +8 -8
  110. package/dist/unplugin.js +4 -4
  111. package/dist/vite.cjs +6 -6
  112. package/dist/vite.js +3 -3
  113. package/dist/webpack.cjs +6 -6
  114. package/dist/webpack.js +3 -3
  115. package/package.json +2 -2
  116. package/dist/chunk-5WCKSLT7.cjs +0 -12
  117. package/dist/chunk-KE67B233.cjs +0 -12
  118. package/dist/lib/chunk-5RFTIHJY.cjs.map +0 -1
  119. package/dist/lib/chunk-DUROA7IY.cjs.map +0 -1
  120. package/dist/lib/chunk-P5JP3DHH.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/lib/entry.ts"],"names":["resolveEntryOutput","context","typeDefinition","replaceExtension","replacePath","file","joinPaths","workspaceConfig","workspaceRoot","config","sourceRoot","projectRoot","resolveEntry","input","output","resolveEntries","typeDefinitions","Promise","all","map","entry","isResolvedEntryTypeDefinition","replacePathTokens","isString","parseTypeDefinition","filePath","isAbsolutePath","appendPath","fs","isFile","name","glob","flat","filter","Boolean","isTypeDefinition","undefined","resolveEntriesSync","isFileSync","globSync","getUniqueEntries","entries","getUniqueBy","toArray","item","isSetString","murmurhash","maxLength"],"mappings":"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","file":"chunk-M4Q6V2EL.js","sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { parseTypeDefinition } from \"@stryke/convert/parse-type-definition\";\nimport { toArray } from \"@stryke/convert/to-array\";\nimport { murmurhash } from \"@stryke/hash/murmurhash\";\nimport { getUniqueBy } from \"@stryke/helpers/get-unique\";\nimport { appendPath } from \"@stryke/path/append\";\nimport { isAbsolutePath } from \"@stryke/path/is-type\";\nimport { joinPaths } from \"@stryke/path/join-paths\";\nimport { replaceExtension, replacePath } from \"@stryke/path/replace\";\nimport { isSetString } from \"@stryke/type-checks/is-set-string\";\nimport { isString } from \"@stryke/type-checks/is-string\";\nimport type {\n TypeDefinition,\n TypeDefinitionParameter\n} from \"@stryke/types/configuration\";\nimport { replacePathTokens } from \"../plugin-utils/paths\";\nimport type { Context } from \"../types/context\";\nimport { ResolvedEntryTypeDefinition } from \"../types/resolved\";\n\n// export function resolveEntryInputFile(\n// context: Context,\n// typeDefinition: TypeDefinition\n// ): string {\n// return replacePath(\n// typeDefinition.file,\n// joinPaths(context.workspaceConfig.workspaceRoot, context.config.projectRoot)\n// );\n// }\n\n// export function resolveEntryInput(\n// context: Context,\n// typeDefinition: TypeDefinition\n// ): TypeDefinition {\n// return {\n// file: resolveEntryInputFile(context, typeDefinition),\n// name: typeDefinition.name\n// };\n// }\n\nexport function resolveEntryOutput(\n context: Context,\n typeDefinition: TypeDefinition\n): string {\n return replaceExtension(\n replacePath(\n replacePath(\n replacePath(\n replacePath(\n replacePath(\n typeDefinition.file,\n joinPaths(\n context.workspaceConfig.workspaceRoot,\n context.config.sourceRoot\n )\n ),\n joinPaths(\n context.workspaceConfig.workspaceRoot,\n context.config.projectRoot\n )\n ),\n context.config.sourceRoot\n ),\n context.config.projectRoot\n ),\n replacePath(context.config.sourceRoot, context.config.projectRoot)\n )\n );\n}\n\nexport function resolveEntry(\n context: Context,\n typeDefinition: TypeDefinition\n): ResolvedEntryTypeDefinition {\n // const input = resolveEntryInput(context, typeDefinition);\n\n return {\n ...typeDefinition,\n input: typeDefinition,\n output: resolveEntryOutput(context, typeDefinition)\n };\n}\n\n/**\n * Resolves multiple type definitions into their corresponding resolved entry type definitions.\n *\n * @param context - The current context\n * @param typeDefinitions - The type definitions to resolve.\n * @returns A promise that resolves to an array of resolved entry type definitions.\n */\nexport async function resolveEntries(\n context: Context,\n typeDefinitions: Array<TypeDefinitionParameter | ResolvedEntryTypeDefinition>\n): Promise<ResolvedEntryTypeDefinition[]> {\n return (\n await Promise.all(\n typeDefinitions.map(async entry => {\n if (isResolvedEntryTypeDefinition(entry)) {\n return { ...entry, file: replacePathTokens(context, entry.file) };\n }\n\n let typeDefinition: TypeDefinition;\n if (isString(entry)) {\n typeDefinition = parseTypeDefinition(\n replacePathTokens(context, entry)\n )!;\n } else {\n typeDefinition = entry;\n typeDefinition.file = replacePathTokens(context, typeDefinition.file);\n }\n\n const filePath = isAbsolutePath(typeDefinition.file)\n ? typeDefinition.file\n : appendPath(typeDefinition.file, context.config.projectRoot);\n if (await context.fs.isFile(filePath)) {\n return resolveEntry(context, {\n file: replacePath(filePath, context.config.projectRoot),\n name: typeDefinition.name\n });\n }\n\n return (\n await context.fs.glob(\n appendPath(filePath, context.workspaceConfig.workspaceRoot)\n )\n ).map(file =>\n resolveEntry(context, {\n file: replacePath(file, context.config.projectRoot),\n name: typeDefinition.name\n })\n );\n })\n )\n )\n .flat()\n .filter(Boolean);\n}\n\n/**\n * Checks if the provided entry is a type definition.\n *\n * @param entry - The entry to check.\n * @returns True if the entry is a type definition, false otherwise.\n */\nexport function isTypeDefinition(\n entry: TypeDefinitionParameter\n): entry is TypeDefinition {\n return !isString(entry) && entry.file !== undefined;\n}\n\n/**\n * Checks if the provided entry is a resolved entry type definition.\n *\n * @param entry - The entry to check.\n * @returns True if the entry is a resolved entry type definition, false otherwise.\n */\nexport function isResolvedEntryTypeDefinition(\n entry: TypeDefinitionParameter | ResolvedEntryTypeDefinition\n): entry is ResolvedEntryTypeDefinition {\n return (\n isTypeDefinition(entry) &&\n (entry as ResolvedEntryTypeDefinition).input !== undefined &&\n (entry as ResolvedEntryTypeDefinition).output !== undefined\n );\n}\n\n/**\n * Resolves multiple type definitions into their corresponding resolved entry type definitions.\n *\n * @param context - The current context\n * @param typeDefinitions - The type definitions to resolve.\n * @returns A promise that resolves to an array of resolved entry type definitions.\n */\nexport function resolveEntriesSync(\n context: Context,\n typeDefinitions: Array<TypeDefinitionParameter | ResolvedEntryTypeDefinition>\n): ResolvedEntryTypeDefinition[] {\n return typeDefinitions\n .map(entry => {\n if (isResolvedEntryTypeDefinition(entry)) {\n return { ...entry, file: replacePathTokens(context, entry.file) };\n }\n\n let typeDefinition: TypeDefinition;\n if (isString(entry)) {\n typeDefinition = parseTypeDefinition(\n replacePathTokens(context, entry)\n )!;\n } else {\n typeDefinition = entry;\n typeDefinition.file = replacePathTokens(context, typeDefinition.file);\n }\n\n const filePath = isAbsolutePath(typeDefinition.file)\n ? typeDefinition.file\n : appendPath(typeDefinition.file, context.config.projectRoot);\n if (context.fs.isFileSync(filePath)) {\n return resolveEntry(context, {\n file: replacePath(filePath, context.config.projectRoot),\n name: typeDefinition.name\n });\n }\n\n return context.fs\n .globSync(appendPath(filePath, context.workspaceConfig.workspaceRoot))\n .map(file =>\n resolveEntry(context, {\n file: replacePath(file, context.config.projectRoot),\n name: typeDefinition.name\n })\n );\n })\n .flat()\n .filter(Boolean);\n}\n\n// /** Resolve a virtual entry point by generating a unique file path in the artifacts directory.\n// *\n// * @param context - The current context\n// * @param typeDefinition - The type definition to resolve.\n// * @returns The resolved entry type definition with a unique virtual file path.\n// */\n// export function resolveVirtualEntry(\n// context: Context,\n// typeDefinition: TypeDefinitionParameter\n// ): ResolvedEntryTypeDefinition {\n// const parsed = parseTypeDefinition(typeDefinition)!;\n// const resolved = resolveEntry(context, parsed);\n// const file = joinPaths(\n// context.artifactsPath,\n// `entry-${murmurhash(\n// { file: resolved.file, name: resolved.name },\n// { maxLength: 24 }\n// )\n// .replaceAll(\"-\", \"0\")\n// .replaceAll(\"_\", \"1\")}.ts`\n// );\n\n// return {\n// file,\n// name: resolved.name,\n// input: {\n// file,\n// name: resolved.name\n// },\n// output: file\n// };\n// }\n\n/**\n * Get unique entries from the provided list.\n *\n * @param entries - The entries to process.\n * @returns An array of unique entries (by file path or content hash).\n */\nexport function getUniqueEntries(\n entries: TypeDefinitionParameter | TypeDefinitionParameter[] = []\n): TypeDefinitionParameter[] {\n return getUniqueBy(toArray(entries), (item: TypeDefinitionParameter) =>\n isSetString(item) ? item : murmurhash(item ?? {}, { maxLength: 24 })\n );\n}\n"]}
1
+ {"version":3,"sources":["../../src/lib/entry.ts"],"names":["resolveEntryOutput","context","typeDefinition","replaceExtension","replacePath","file","joinPaths","workspaceConfig","workspaceRoot","config","sourceRoot","projectRoot","resolveEntry","input","output","resolveEntries","typeDefinitions","Promise","all","map","entry","isResolvedEntryTypeDefinition","replacePathTokens","isString","parseTypeDefinition","filePath","isAbsolutePath","appendPath","fs","isFile","name","glob","flat","filter","Boolean","isTypeDefinition","undefined","resolveEntriesSync","isFileSync","globSync","getUniqueEntries","entries","getUniqueBy","toArray","item","isSetString","murmurhash","maxLength"],"mappings":"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","file":"chunk-G2GLLLRU.js","sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { parseTypeDefinition } from \"@stryke/convert/parse-type-definition\";\nimport { toArray } from \"@stryke/convert/to-array\";\nimport { murmurhash } from \"@stryke/hash/murmurhash\";\nimport { getUniqueBy } from \"@stryke/helpers/get-unique\";\nimport { appendPath } from \"@stryke/path/append\";\nimport { isAbsolutePath } from \"@stryke/path/is-type\";\nimport { joinPaths } from \"@stryke/path/join-paths\";\nimport { replaceExtension, replacePath } from \"@stryke/path/replace\";\nimport { isSetString } from \"@stryke/type-checks/is-set-string\";\nimport { isString } from \"@stryke/type-checks/is-string\";\nimport type {\n TypeDefinition,\n TypeDefinitionParameter\n} from \"@stryke/types/configuration\";\nimport { replacePathTokens } from \"../plugin-utils/paths\";\nimport type { Context } from \"../types/context\";\nimport { ResolvedEntryTypeDefinition } from \"../types/resolved\";\n\n// export function resolveEntryInputFile(\n// context: Context,\n// typeDefinition: TypeDefinition\n// ): string {\n// return replacePath(\n// typeDefinition.file,\n// joinPaths(context.workspaceConfig.workspaceRoot, context.config.projectRoot)\n// );\n// }\n\n// export function resolveEntryInput(\n// context: Context,\n// typeDefinition: TypeDefinition\n// ): TypeDefinition {\n// return {\n// file: resolveEntryInputFile(context, typeDefinition),\n// name: typeDefinition.name\n// };\n// }\n\nexport function resolveEntryOutput(\n context: Context,\n typeDefinition: TypeDefinition\n): string {\n return replaceExtension(\n replacePath(\n replacePath(\n replacePath(\n replacePath(\n replacePath(\n typeDefinition.file,\n joinPaths(\n context.workspaceConfig.workspaceRoot,\n context.config.sourceRoot\n )\n ),\n joinPaths(\n context.workspaceConfig.workspaceRoot,\n context.config.projectRoot\n )\n ),\n context.config.sourceRoot\n ),\n context.config.projectRoot\n ),\n replacePath(context.config.sourceRoot, context.config.projectRoot)\n )\n );\n}\n\nexport function resolveEntry(\n context: Context,\n typeDefinition: TypeDefinition\n): ResolvedEntryTypeDefinition {\n // const input = resolveEntryInput(context, typeDefinition);\n\n return {\n ...typeDefinition,\n input: typeDefinition,\n output: resolveEntryOutput(context, typeDefinition)\n };\n}\n\n/**\n * Resolves multiple type definitions into their corresponding resolved entry type definitions.\n *\n * @param context - The current context\n * @param typeDefinitions - The type definitions to resolve.\n * @returns A promise that resolves to an array of resolved entry type definitions.\n */\nexport async function resolveEntries(\n context: Context,\n typeDefinitions: Array<TypeDefinitionParameter | ResolvedEntryTypeDefinition>\n): Promise<ResolvedEntryTypeDefinition[]> {\n return (\n await Promise.all(\n typeDefinitions.map(async entry => {\n if (isResolvedEntryTypeDefinition(entry)) {\n return { ...entry, file: replacePathTokens(context, entry.file) };\n }\n\n let typeDefinition: TypeDefinition;\n if (isString(entry)) {\n typeDefinition = parseTypeDefinition(\n replacePathTokens(context, entry)\n )!;\n } else {\n typeDefinition = entry;\n typeDefinition.file = replacePathTokens(context, typeDefinition.file);\n }\n\n const filePath = isAbsolutePath(typeDefinition.file)\n ? typeDefinition.file\n : appendPath(typeDefinition.file, context.config.projectRoot);\n if (await context.fs.isFile(filePath)) {\n return resolveEntry(context, {\n file: replacePath(filePath, context.config.projectRoot),\n name: typeDefinition.name\n });\n }\n\n return (\n await context.fs.glob(\n appendPath(filePath, context.workspaceConfig.workspaceRoot)\n )\n ).map(file =>\n resolveEntry(context, {\n file: replacePath(file, context.config.projectRoot),\n name: typeDefinition.name\n })\n );\n })\n )\n )\n .flat()\n .filter(Boolean);\n}\n\n/**\n * Checks if the provided entry is a type definition.\n *\n * @param entry - The entry to check.\n * @returns True if the entry is a type definition, false otherwise.\n */\nexport function isTypeDefinition(\n entry: TypeDefinitionParameter\n): entry is TypeDefinition {\n return !isString(entry) && entry.file !== undefined;\n}\n\n/**\n * Checks if the provided entry is a resolved entry type definition.\n *\n * @param entry - The entry to check.\n * @returns True if the entry is a resolved entry type definition, false otherwise.\n */\nexport function isResolvedEntryTypeDefinition(\n entry: TypeDefinitionParameter | ResolvedEntryTypeDefinition\n): entry is ResolvedEntryTypeDefinition {\n return (\n isTypeDefinition(entry) &&\n (entry as ResolvedEntryTypeDefinition).input !== undefined &&\n (entry as ResolvedEntryTypeDefinition).output !== undefined\n );\n}\n\n/**\n * Resolves multiple type definitions into their corresponding resolved entry type definitions.\n *\n * @param context - The current context\n * @param typeDefinitions - The type definitions to resolve.\n * @returns A promise that resolves to an array of resolved entry type definitions.\n */\nexport function resolveEntriesSync(\n context: Context,\n typeDefinitions: Array<TypeDefinitionParameter | ResolvedEntryTypeDefinition>\n): ResolvedEntryTypeDefinition[] {\n return typeDefinitions\n .map(entry => {\n if (isResolvedEntryTypeDefinition(entry)) {\n return { ...entry, file: replacePathTokens(context, entry.file) };\n }\n\n let typeDefinition: TypeDefinition;\n if (isString(entry)) {\n typeDefinition = parseTypeDefinition(\n replacePathTokens(context, entry)\n )!;\n } else {\n typeDefinition = entry;\n typeDefinition.file = replacePathTokens(context, typeDefinition.file);\n }\n\n const filePath = isAbsolutePath(typeDefinition.file)\n ? typeDefinition.file\n : appendPath(typeDefinition.file, context.config.projectRoot);\n if (context.fs.isFileSync(filePath)) {\n return resolveEntry(context, {\n file: appendPath(filePath, context.workspaceConfig.workspaceRoot),\n name: typeDefinition.name\n });\n }\n\n return context.fs\n .globSync(appendPath(filePath, context.workspaceConfig.workspaceRoot))\n .map(file =>\n resolveEntry(context, {\n file,\n name: typeDefinition.name\n })\n );\n })\n .flat()\n .filter(Boolean);\n}\n\n// /** Resolve a virtual entry point by generating a unique file path in the artifacts directory.\n// *\n// * @param context - The current context\n// * @param typeDefinition - The type definition to resolve.\n// * @returns The resolved entry type definition with a unique virtual file path.\n// */\n// export function resolveVirtualEntry(\n// context: Context,\n// typeDefinition: TypeDefinitionParameter\n// ): ResolvedEntryTypeDefinition {\n// const parsed = parseTypeDefinition(typeDefinition)!;\n// const resolved = resolveEntry(context, parsed);\n// const file = joinPaths(\n// context.artifactsPath,\n// `entry-${murmurhash(\n// { file: resolved.file, name: resolved.name },\n// { maxLength: 24 }\n// )\n// .replaceAll(\"-\", \"0\")\n// .replaceAll(\"_\", \"1\")}.ts`\n// );\n\n// return {\n// file,\n// name: resolved.name,\n// input: {\n// file,\n// name: resolved.name\n// },\n// output: file\n// };\n// }\n\n/**\n * Get unique entries from the provided list.\n *\n * @param entries - The entries to process.\n * @returns An array of unique entries (by file path or content hash).\n */\nexport function getUniqueEntries(\n entries: TypeDefinitionParameter | TypeDefinitionParameter[] = []\n): TypeDefinitionParameter[] {\n return getUniqueBy(toArray(entries), (item: TypeDefinitionParameter) =>\n isSetString(item) ? item : murmurhash(item ?? {}, { maxLength: 24 })\n );\n}\n"]}
@@ -80,12 +80,12 @@ function resolveEntriesSync(context, typeDefinitions) {
80
80
  const filePath = isType.isAbsolutePath(typeDefinition.file) ? typeDefinition.file : append.appendPath(typeDefinition.file, context.config.projectRoot);
81
81
  if (context.fs.isFileSync(filePath)) {
82
82
  return resolveEntry(context, {
83
- file: replace.replacePath(filePath, context.config.projectRoot),
83
+ file: append.appendPath(filePath, context.workspaceConfig.workspaceRoot),
84
84
  name: typeDefinition.name
85
85
  });
86
86
  }
87
87
  return context.fs.globSync(append.appendPath(filePath, context.workspaceConfig.workspaceRoot)).map((file) => resolveEntry(context, {
88
- file: replace.replacePath(file, context.config.projectRoot),
88
+ file,
89
89
  name: typeDefinition.name
90
90
  }));
91
91
  }).flat().filter(Boolean);
@@ -105,5 +105,5 @@ exports.resolveEntries = resolveEntries;
105
105
  exports.resolveEntriesSync = resolveEntriesSync;
106
106
  exports.resolveEntry = resolveEntry;
107
107
  exports.resolveEntryOutput = resolveEntryOutput;
108
- //# sourceMappingURL=chunk-5RFTIHJY.cjs.map
109
- //# sourceMappingURL=chunk-5RFTIHJY.cjs.map
108
+ //# sourceMappingURL=chunk-HCDETYRM.cjs.map
109
+ //# sourceMappingURL=chunk-HCDETYRM.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/lib/entry.ts"],"names":["resolveEntryOutput","context","typeDefinition","replaceExtension","replacePath","file","joinPaths","workspaceConfig","workspaceRoot","config","sourceRoot","projectRoot","resolveEntry","input","output","resolveEntries","typeDefinitions","Promise","all","map","entry","isResolvedEntryTypeDefinition","replacePathTokens","isString","parseTypeDefinition","filePath","isAbsolutePath","appendPath","fs","isFile","name","glob","flat","filter","Boolean","isTypeDefinition","undefined","resolveEntriesSync","isFileSync","globSync","getUniqueEntries","entries","getUniqueBy","toArray","item","isSetString","murmurhash","maxLength"],"mappings":"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","file":"chunk-HCDETYRM.cjs","sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { parseTypeDefinition } from \"@stryke/convert/parse-type-definition\";\nimport { toArray } from \"@stryke/convert/to-array\";\nimport { murmurhash } from \"@stryke/hash/murmurhash\";\nimport { getUniqueBy } from \"@stryke/helpers/get-unique\";\nimport { appendPath } from \"@stryke/path/append\";\nimport { isAbsolutePath } from \"@stryke/path/is-type\";\nimport { joinPaths } from \"@stryke/path/join-paths\";\nimport { replaceExtension, replacePath } from \"@stryke/path/replace\";\nimport { isSetString } from \"@stryke/type-checks/is-set-string\";\nimport { isString } from \"@stryke/type-checks/is-string\";\nimport type {\n TypeDefinition,\n TypeDefinitionParameter\n} from \"@stryke/types/configuration\";\nimport { replacePathTokens } from \"../plugin-utils/paths\";\nimport type { Context } from \"../types/context\";\nimport { ResolvedEntryTypeDefinition } from \"../types/resolved\";\n\n// export function resolveEntryInputFile(\n// context: Context,\n// typeDefinition: TypeDefinition\n// ): string {\n// return replacePath(\n// typeDefinition.file,\n// joinPaths(context.workspaceConfig.workspaceRoot, context.config.projectRoot)\n// );\n// }\n\n// export function resolveEntryInput(\n// context: Context,\n// typeDefinition: TypeDefinition\n// ): TypeDefinition {\n// return {\n// file: resolveEntryInputFile(context, typeDefinition),\n// name: typeDefinition.name\n// };\n// }\n\nexport function resolveEntryOutput(\n context: Context,\n typeDefinition: TypeDefinition\n): string {\n return replaceExtension(\n replacePath(\n replacePath(\n replacePath(\n replacePath(\n replacePath(\n typeDefinition.file,\n joinPaths(\n context.workspaceConfig.workspaceRoot,\n context.config.sourceRoot\n )\n ),\n joinPaths(\n context.workspaceConfig.workspaceRoot,\n context.config.projectRoot\n )\n ),\n context.config.sourceRoot\n ),\n context.config.projectRoot\n ),\n replacePath(context.config.sourceRoot, context.config.projectRoot)\n )\n );\n}\n\nexport function resolveEntry(\n context: Context,\n typeDefinition: TypeDefinition\n): ResolvedEntryTypeDefinition {\n // const input = resolveEntryInput(context, typeDefinition);\n\n return {\n ...typeDefinition,\n input: typeDefinition,\n output: resolveEntryOutput(context, typeDefinition)\n };\n}\n\n/**\n * Resolves multiple type definitions into their corresponding resolved entry type definitions.\n *\n * @param context - The current context\n * @param typeDefinitions - The type definitions to resolve.\n * @returns A promise that resolves to an array of resolved entry type definitions.\n */\nexport async function resolveEntries(\n context: Context,\n typeDefinitions: Array<TypeDefinitionParameter | ResolvedEntryTypeDefinition>\n): Promise<ResolvedEntryTypeDefinition[]> {\n return (\n await Promise.all(\n typeDefinitions.map(async entry => {\n if (isResolvedEntryTypeDefinition(entry)) {\n return { ...entry, file: replacePathTokens(context, entry.file) };\n }\n\n let typeDefinition: TypeDefinition;\n if (isString(entry)) {\n typeDefinition = parseTypeDefinition(\n replacePathTokens(context, entry)\n )!;\n } else {\n typeDefinition = entry;\n typeDefinition.file = replacePathTokens(context, typeDefinition.file);\n }\n\n const filePath = isAbsolutePath(typeDefinition.file)\n ? typeDefinition.file\n : appendPath(typeDefinition.file, context.config.projectRoot);\n if (await context.fs.isFile(filePath)) {\n return resolveEntry(context, {\n file: replacePath(filePath, context.config.projectRoot),\n name: typeDefinition.name\n });\n }\n\n return (\n await context.fs.glob(\n appendPath(filePath, context.workspaceConfig.workspaceRoot)\n )\n ).map(file =>\n resolveEntry(context, {\n file: replacePath(file, context.config.projectRoot),\n name: typeDefinition.name\n })\n );\n })\n )\n )\n .flat()\n .filter(Boolean);\n}\n\n/**\n * Checks if the provided entry is a type definition.\n *\n * @param entry - The entry to check.\n * @returns True if the entry is a type definition, false otherwise.\n */\nexport function isTypeDefinition(\n entry: TypeDefinitionParameter\n): entry is TypeDefinition {\n return !isString(entry) && entry.file !== undefined;\n}\n\n/**\n * Checks if the provided entry is a resolved entry type definition.\n *\n * @param entry - The entry to check.\n * @returns True if the entry is a resolved entry type definition, false otherwise.\n */\nexport function isResolvedEntryTypeDefinition(\n entry: TypeDefinitionParameter | ResolvedEntryTypeDefinition\n): entry is ResolvedEntryTypeDefinition {\n return (\n isTypeDefinition(entry) &&\n (entry as ResolvedEntryTypeDefinition).input !== undefined &&\n (entry as ResolvedEntryTypeDefinition).output !== undefined\n );\n}\n\n/**\n * Resolves multiple type definitions into their corresponding resolved entry type definitions.\n *\n * @param context - The current context\n * @param typeDefinitions - The type definitions to resolve.\n * @returns A promise that resolves to an array of resolved entry type definitions.\n */\nexport function resolveEntriesSync(\n context: Context,\n typeDefinitions: Array<TypeDefinitionParameter | ResolvedEntryTypeDefinition>\n): ResolvedEntryTypeDefinition[] {\n return typeDefinitions\n .map(entry => {\n if (isResolvedEntryTypeDefinition(entry)) {\n return { ...entry, file: replacePathTokens(context, entry.file) };\n }\n\n let typeDefinition: TypeDefinition;\n if (isString(entry)) {\n typeDefinition = parseTypeDefinition(\n replacePathTokens(context, entry)\n )!;\n } else {\n typeDefinition = entry;\n typeDefinition.file = replacePathTokens(context, typeDefinition.file);\n }\n\n const filePath = isAbsolutePath(typeDefinition.file)\n ? typeDefinition.file\n : appendPath(typeDefinition.file, context.config.projectRoot);\n if (context.fs.isFileSync(filePath)) {\n return resolveEntry(context, {\n file: appendPath(filePath, context.workspaceConfig.workspaceRoot),\n name: typeDefinition.name\n });\n }\n\n return context.fs\n .globSync(appendPath(filePath, context.workspaceConfig.workspaceRoot))\n .map(file =>\n resolveEntry(context, {\n file,\n name: typeDefinition.name\n })\n );\n })\n .flat()\n .filter(Boolean);\n}\n\n// /** Resolve a virtual entry point by generating a unique file path in the artifacts directory.\n// *\n// * @param context - The current context\n// * @param typeDefinition - The type definition to resolve.\n// * @returns The resolved entry type definition with a unique virtual file path.\n// */\n// export function resolveVirtualEntry(\n// context: Context,\n// typeDefinition: TypeDefinitionParameter\n// ): ResolvedEntryTypeDefinition {\n// const parsed = parseTypeDefinition(typeDefinition)!;\n// const resolved = resolveEntry(context, parsed);\n// const file = joinPaths(\n// context.artifactsPath,\n// `entry-${murmurhash(\n// { file: resolved.file, name: resolved.name },\n// { maxLength: 24 }\n// )\n// .replaceAll(\"-\", \"0\")\n// .replaceAll(\"_\", \"1\")}.ts`\n// );\n\n// return {\n// file,\n// name: resolved.name,\n// input: {\n// file,\n// name: resolved.name\n// },\n// output: file\n// };\n// }\n\n/**\n * Get unique entries from the provided list.\n *\n * @param entries - The entries to process.\n * @returns An array of unique entries (by file path or content hash).\n */\nexport function getUniqueEntries(\n entries: TypeDefinitionParameter | TypeDefinitionParameter[] = []\n): TypeDefinitionParameter[] {\n return getUniqueBy(toArray(entries), (item: TypeDefinitionParameter) =>\n isSetString(item) ? item : murmurhash(item ?? {}, { maxLength: 24 })\n );\n}\n"]}
@@ -5,7 +5,7 @@ import { BUILDER_VARIANTS, UNPLUGIN_BUILDER_VARIANTS } from './chunk-HGE5DAZF.js
5
5
  import { VirtualFileSystem } from './chunk-GQNZENVF.js';
6
6
  import { loadWorkspaceConfig, loadUserConfigFile } from './chunk-Q25ZPXA7.js';
7
7
  import { createLog, extendLog } from './chunk-F5GKG7AF.js';
8
- import { resolveEntriesSync, getUniqueEntries } from './chunk-M4Q6V2EL.js';
8
+ import { resolveEntriesSync, getUniqueEntries } from './chunk-G2GLLLRU.js';
9
9
  import { replacePathTokens } from './chunk-FFATMOAQ.js';
10
10
  import { __name } from './chunk-7QVYU63E.js';
11
11
  import { LogLevelLabel } from '@storm-software/config-tools/types';
@@ -1247,5 +1247,5 @@ var PowerlinesContext = class _PowerlinesContext {
1247
1247
  };
1248
1248
 
1249
1249
  export { PLUGIN_NON_HOOK_FIELDS, PowerlinesContext, addPluginHook, checkDedupe, findInvalidPluginConfig, isPlugin, isPluginConfig, isPluginConfigObject, isPluginConfigTuple, isPluginHook, isPluginHookField, isUnpluginHookField, isUnpluginHookKey };
1250
- //# sourceMappingURL=chunk-DSQDA3AX.js.map
1251
- //# sourceMappingURL=chunk-DSQDA3AX.js.map
1250
+ //# sourceMappingURL=chunk-I4LBDWHI.js.map
1251
+ //# sourceMappingURL=chunk-I4LBDWHI.js.map