typekro 0.8.0 → 0.10.0

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 (557) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/alchemy/deployers.d.ts +16 -1
  3. package/dist/alchemy/deployers.d.ts.map +1 -1
  4. package/dist/alchemy/deployers.js +131 -18
  5. package/dist/alchemy/deployers.js.map +1 -1
  6. package/dist/alchemy/deployment.d.ts +1 -1
  7. package/dist/alchemy/deployment.d.ts.map +1 -1
  8. package/dist/alchemy/deployment.js +1 -1
  9. package/dist/alchemy/deployment.js.map +1 -1
  10. package/dist/alchemy/kro-delete.d.ts +66 -0
  11. package/dist/alchemy/kro-delete.d.ts.map +1 -0
  12. package/dist/alchemy/kro-delete.js +183 -0
  13. package/dist/alchemy/kro-delete.js.map +1 -0
  14. package/dist/alchemy/resource-registration.d.ts +16 -0
  15. package/dist/alchemy/resource-registration.d.ts.map +1 -1
  16. package/dist/alchemy/resource-registration.js +138 -24
  17. package/dist/alchemy/resource-registration.js.map +1 -1
  18. package/dist/alchemy/types.d.ts +8 -4
  19. package/dist/alchemy/types.d.ts.map +1 -1
  20. package/dist/aspects.d.ts +3 -0
  21. package/dist/aspects.d.ts.map +1 -0
  22. package/dist/aspects.js +2 -0
  23. package/dist/aspects.js.map +1 -0
  24. package/dist/compositions/typekro-runtime/typekro-runtime.d.ts +1 -1
  25. package/dist/compositions/typekro-runtime/typekro-runtime.d.ts.map +1 -1
  26. package/dist/compositions/typekro-runtime/typekro-runtime.js +27 -9
  27. package/dist/compositions/typekro-runtime/typekro-runtime.js.map +1 -1
  28. package/dist/core/aspects/apply.d.ts +30 -0
  29. package/dist/core/aspects/apply.d.ts.map +1 -0
  30. package/dist/core/aspects/apply.js +369 -0
  31. package/dist/core/aspects/apply.js.map +1 -0
  32. package/dist/core/aspects/dev-aspects.d.ts +14 -0
  33. package/dist/core/aspects/dev-aspects.d.ts.map +1 -0
  34. package/dist/core/aspects/dev-aspects.js +70 -0
  35. package/dist/core/aspects/dev-aspects.js.map +1 -0
  36. package/dist/core/aspects/index.d.ts +31 -0
  37. package/dist/core/aspects/index.d.ts.map +1 -0
  38. package/dist/core/aspects/index.js +30 -0
  39. package/dist/core/aspects/index.js.map +1 -0
  40. package/dist/core/aspects/metadata-aspects.d.ts +12 -0
  41. package/dist/core/aspects/metadata-aspects.d.ts.map +1 -0
  42. package/dist/core/aspects/metadata-aspects.js +24 -0
  43. package/dist/core/aspects/metadata-aspects.js.map +1 -0
  44. package/dist/core/aspects/metadata.d.ts +16 -0
  45. package/dist/core/aspects/metadata.d.ts.map +1 -0
  46. package/dist/core/aspects/metadata.js +24 -0
  47. package/dist/core/aspects/metadata.js.map +1 -0
  48. package/dist/core/aspects/primitives.d.ts +23 -0
  49. package/dist/core/aspects/primitives.d.ts.map +1 -0
  50. package/dist/core/aspects/primitives.js +258 -0
  51. package/dist/core/aspects/primitives.js.map +1 -0
  52. package/dist/core/aspects/targets.d.ts +9 -0
  53. package/dist/core/aspects/targets.d.ts.map +1 -0
  54. package/dist/core/aspects/targets.js +23 -0
  55. package/dist/core/aspects/targets.js.map +1 -0
  56. package/dist/core/aspects/types.d.ts +361 -0
  57. package/dist/core/aspects/types.d.ts.map +1 -0
  58. package/dist/core/aspects/types.js +16 -0
  59. package/dist/core/aspects/types.js.map +1 -0
  60. package/dist/core/aspects/workload-aspects.d.ts +17 -0
  61. package/dist/core/aspects/workload-aspects.d.ts.map +1 -0
  62. package/dist/core/aspects/workload-aspects.js +40 -0
  63. package/dist/core/aspects/workload-aspects.js.map +1 -0
  64. package/dist/core/composition/context.d.ts +58 -2
  65. package/dist/core/composition/context.d.ts.map +1 -1
  66. package/dist/core/composition/context.js +4 -0
  67. package/dist/core/composition/context.js.map +1 -1
  68. package/dist/core/composition/imperative.d.ts +9 -0
  69. package/dist/core/composition/imperative.d.ts.map +1 -1
  70. package/dist/core/composition/imperative.js +538 -54
  71. package/dist/core/composition/imperative.js.map +1 -1
  72. package/dist/core/composition/nested-status-cel.d.ts +34 -1
  73. package/dist/core/composition/nested-status-cel.d.ts.map +1 -1
  74. package/dist/core/composition/nested-status-cel.js +379 -41
  75. package/dist/core/composition/nested-status-cel.js.map +1 -1
  76. package/dist/core/composition-debugger.d.ts +1 -1
  77. package/dist/core/composition-debugger.d.ts.map +1 -1
  78. package/dist/core/composition-debugger.js.map +1 -1
  79. package/dist/core/constants/brands.d.ts +1 -1
  80. package/dist/core/constants/brands.d.ts.map +1 -1
  81. package/dist/core/constants/brands.js +1 -1
  82. package/dist/core/constants/brands.js.map +1 -1
  83. package/dist/core/containers/build.d.ts.map +1 -1
  84. package/dist/core/containers/build.js +40 -12
  85. package/dist/core/containers/build.js.map +1 -1
  86. package/dist/core/dependencies/resolver.d.ts +19 -0
  87. package/dist/core/dependencies/resolver.d.ts.map +1 -1
  88. package/dist/core/dependencies/resolver.js +261 -1
  89. package/dist/core/dependencies/resolver.js.map +1 -1
  90. package/dist/core/deployment/client-provider-manager.d.ts +9 -3
  91. package/dist/core/deployment/client-provider-manager.d.ts.map +1 -1
  92. package/dist/core/deployment/client-provider-manager.js +12 -0
  93. package/dist/core/deployment/client-provider-manager.js.map +1 -1
  94. package/dist/core/deployment/crd-manager.d.ts +24 -0
  95. package/dist/core/deployment/crd-manager.d.ts.map +1 -1
  96. package/dist/core/deployment/crd-manager.js +79 -1
  97. package/dist/core/deployment/crd-manager.js.map +1 -1
  98. package/dist/core/deployment/deployment-state-discovery.d.ts +116 -0
  99. package/dist/core/deployment/deployment-state-discovery.d.ts.map +1 -0
  100. package/dist/core/deployment/deployment-state-discovery.js +400 -0
  101. package/dist/core/deployment/deployment-state-discovery.js.map +1 -0
  102. package/dist/core/deployment/direct-factory.d.ts +65 -6
  103. package/dist/core/deployment/direct-factory.d.ts.map +1 -1
  104. package/dist/core/deployment/direct-factory.js +584 -62
  105. package/dist/core/deployment/direct-factory.js.map +1 -1
  106. package/dist/core/deployment/engine.d.ts +64 -3
  107. package/dist/core/deployment/engine.d.ts.map +1 -1
  108. package/dist/core/deployment/engine.js +194 -27
  109. package/dist/core/deployment/engine.js.map +1 -1
  110. package/dist/core/deployment/event-filter.js +1 -1
  111. package/dist/core/deployment/event-filter.js.map +1 -1
  112. package/dist/core/deployment/event-monitor.d.ts +11 -0
  113. package/dist/core/deployment/event-monitor.d.ts.map +1 -1
  114. package/dist/core/deployment/event-monitor.js +14 -0
  115. package/dist/core/deployment/event-monitor.js.map +1 -1
  116. package/dist/core/deployment/handle-tracing.d.ts +14 -0
  117. package/dist/core/deployment/handle-tracing.d.ts.map +1 -0
  118. package/dist/core/deployment/handle-tracing.js +38 -0
  119. package/dist/core/deployment/handle-tracing.js.map +1 -0
  120. package/dist/core/deployment/kro-factory.d.ts +115 -3
  121. package/dist/core/deployment/kro-factory.d.ts.map +1 -1
  122. package/dist/core/deployment/kro-factory.js +922 -278
  123. package/dist/core/deployment/kro-factory.js.map +1 -1
  124. package/dist/core/deployment/kro-readiness.d.ts.map +1 -1
  125. package/dist/core/deployment/kro-readiness.js +21 -12
  126. package/dist/core/deployment/kro-readiness.js.map +1 -1
  127. package/dist/core/deployment/nested-composition-status.d.ts +1 -1
  128. package/dist/core/deployment/nested-composition-status.d.ts.map +1 -1
  129. package/dist/core/deployment/nested-composition-status.js +96 -53
  130. package/dist/core/deployment/nested-composition-status.js.map +1 -1
  131. package/dist/core/deployment/resource-applier.d.ts +15 -2
  132. package/dist/core/deployment/resource-applier.d.ts.map +1 -1
  133. package/dist/core/deployment/resource-applier.js +75 -25
  134. package/dist/core/deployment/resource-applier.js.map +1 -1
  135. package/dist/core/deployment/resource-tagging.d.ts +220 -0
  136. package/dist/core/deployment/resource-tagging.d.ts.map +1 -0
  137. package/dist/core/deployment/resource-tagging.js +292 -0
  138. package/dist/core/deployment/resource-tagging.js.map +1 -0
  139. package/dist/core/deployment/rollback-manager.d.ts +25 -4
  140. package/dist/core/deployment/rollback-manager.d.ts.map +1 -1
  141. package/dist/core/deployment/rollback-manager.js +70 -57
  142. package/dist/core/deployment/rollback-manager.js.map +1 -1
  143. package/dist/core/deployment/shared-utilities.d.ts +6 -0
  144. package/dist/core/deployment/shared-utilities.d.ts.map +1 -1
  145. package/dist/core/deployment/shared-utilities.js +32 -2
  146. package/dist/core/deployment/shared-utilities.js.map +1 -1
  147. package/dist/core/deployment/singleton-owner-drift.d.ts +16 -0
  148. package/dist/core/deployment/singleton-owner-drift.d.ts.map +1 -0
  149. package/dist/core/deployment/singleton-owner-drift.js +54 -0
  150. package/dist/core/deployment/singleton-owner-drift.js.map +1 -0
  151. package/dist/core/deployment/strategies/alchemy-strategy.d.ts +3 -1
  152. package/dist/core/deployment/strategies/alchemy-strategy.d.ts.map +1 -1
  153. package/dist/core/deployment/strategies/alchemy-strategy.js +121 -18
  154. package/dist/core/deployment/strategies/alchemy-strategy.js.map +1 -1
  155. package/dist/core/deployment/strategies/base-strategy.d.ts +9 -3
  156. package/dist/core/deployment/strategies/base-strategy.d.ts.map +1 -1
  157. package/dist/core/deployment/strategies/base-strategy.js +32 -4
  158. package/dist/core/deployment/strategies/base-strategy.js.map +1 -1
  159. package/dist/core/deployment/strategies/direct-strategy.d.ts +12 -4
  160. package/dist/core/deployment/strategies/direct-strategy.d.ts.map +1 -1
  161. package/dist/core/deployment/strategies/direct-strategy.js +112 -8
  162. package/dist/core/deployment/strategies/direct-strategy.js.map +1 -1
  163. package/dist/core/errors.d.ts +2 -2
  164. package/dist/core/errors.d.ts.map +1 -1
  165. package/dist/core/errors.js.map +1 -1
  166. package/dist/core/expressions/analysis/cache.d.ts +2 -2
  167. package/dist/core/expressions/analysis/cache.d.ts.map +1 -1
  168. package/dist/core/expressions/analysis/cache.js +4 -0
  169. package/dist/core/expressions/analysis/cache.js.map +1 -1
  170. package/dist/core/expressions/analysis/fn-toString-self-test.d.ts.map +1 -1
  171. package/dist/core/expressions/analysis/fn-toString-self-test.js +0 -1
  172. package/dist/core/expressions/analysis/fn-toString-self-test.js.map +1 -1
  173. package/dist/core/expressions/analysis/shared-types.d.ts +2 -2
  174. package/dist/core/expressions/analysis/shared-types.d.ts.map +1 -1
  175. package/dist/core/expressions/analysis/source-map.d.ts.map +1 -1
  176. package/dist/core/expressions/analysis/source-map.js +1 -0
  177. package/dist/core/expressions/analysis/source-map.js.map +1 -1
  178. package/dist/core/expressions/analysis/types.d.ts +7 -7
  179. package/dist/core/expressions/analysis/types.d.ts.map +1 -1
  180. package/dist/core/expressions/composition/composition-analyzer-helpers.d.ts +29 -1
  181. package/dist/core/expressions/composition/composition-analyzer-helpers.d.ts.map +1 -1
  182. package/dist/core/expressions/composition/composition-analyzer-helpers.js +348 -17
  183. package/dist/core/expressions/composition/composition-analyzer-helpers.js.map +1 -1
  184. package/dist/core/expressions/composition/composition-analyzer-ternary.d.ts +2 -2
  185. package/dist/core/expressions/composition/composition-analyzer-ternary.d.ts.map +1 -1
  186. package/dist/core/expressions/composition/composition-analyzer-ternary.js +221 -10
  187. package/dist/core/expressions/composition/composition-analyzer-ternary.js.map +1 -1
  188. package/dist/core/expressions/composition/composition-analyzer-traversal.d.ts.map +1 -1
  189. package/dist/core/expressions/composition/composition-analyzer-traversal.js +67 -2
  190. package/dist/core/expressions/composition/composition-analyzer-traversal.js.map +1 -1
  191. package/dist/core/expressions/composition/composition-analyzer-types.d.ts +52 -0
  192. package/dist/core/expressions/composition/composition-analyzer-types.d.ts.map +1 -1
  193. package/dist/core/expressions/composition/composition-analyzer.d.ts.map +1 -1
  194. package/dist/core/expressions/composition/composition-analyzer.js +150 -6
  195. package/dist/core/expressions/composition/composition-analyzer.js.map +1 -1
  196. package/dist/core/expressions/composition/expression-analyzer.d.ts.map +1 -1
  197. package/dist/core/expressions/composition/expression-analyzer.js +21 -4
  198. package/dist/core/expressions/composition/expression-analyzer.js.map +1 -1
  199. package/dist/core/expressions/composition/imperative-analyzer.d.ts +1 -1
  200. package/dist/core/expressions/composition/imperative-analyzer.d.ts.map +1 -1
  201. package/dist/core/expressions/composition/imperative-analyzer.js +31 -7
  202. package/dist/core/expressions/composition/imperative-analyzer.js.map +1 -1
  203. package/dist/core/expressions/composition/scope-manager.d.ts +2 -2
  204. package/dist/core/expressions/composition/scope-manager.d.ts.map +1 -1
  205. package/dist/core/expressions/composition/scope-manager.js.map +1 -1
  206. package/dist/core/expressions/conditional/conditional-expression-processor.d.ts +3 -3
  207. package/dist/core/expressions/conditional/conditional-expression-processor.d.ts.map +1 -1
  208. package/dist/core/expressions/conditional/conditional-expression-processor.js.map +1 -1
  209. package/dist/core/expressions/conditional/conditional-integration.d.ts.map +1 -1
  210. package/dist/core/expressions/conditional/conditional-integration.js.map +1 -1
  211. package/dist/core/expressions/context/context-aware-generator.d.ts +5 -5
  212. package/dist/core/expressions/context/context-aware-generator.d.ts.map +1 -1
  213. package/dist/core/expressions/context/context-aware-generator.js.map +1 -1
  214. package/dist/core/expressions/context/context-detector.d.ts +3 -3
  215. package/dist/core/expressions/context/context-detector.d.ts.map +1 -1
  216. package/dist/core/expressions/context/context-detector.js.map +1 -1
  217. package/dist/core/expressions/context/context-validator.d.ts +6 -6
  218. package/dist/core/expressions/context/context-validator.d.ts.map +1 -1
  219. package/dist/core/expressions/context/context-validator.js +2 -2
  220. package/dist/core/expressions/context/context-validator.js.map +1 -1
  221. package/dist/core/expressions/factory/cel-conversion-engine.d.ts +4 -4
  222. package/dist/core/expressions/factory/cel-conversion-engine.d.ts.map +1 -1
  223. package/dist/core/expressions/factory/cel-conversion-engine.js.map +1 -1
  224. package/dist/core/expressions/factory/dependency-tracker.d.ts +2 -2
  225. package/dist/core/expressions/factory/dependency-tracker.d.ts.map +1 -1
  226. package/dist/core/expressions/factory/dependency-tracker.js +21 -5
  227. package/dist/core/expressions/factory/dependency-tracker.js.map +1 -1
  228. package/dist/core/expressions/factory/factory-integration.d.ts +2 -4
  229. package/dist/core/expressions/factory/factory-integration.d.ts.map +1 -1
  230. package/dist/core/expressions/factory/factory-integration.js +0 -6
  231. package/dist/core/expressions/factory/factory-integration.js.map +1 -1
  232. package/dist/core/expressions/factory/factory-pattern-handler.d.ts +3 -3
  233. package/dist/core/expressions/factory/factory-pattern-handler.d.ts.map +1 -1
  234. package/dist/core/expressions/factory/factory-pattern-handler.js +1 -0
  235. package/dist/core/expressions/factory/factory-pattern-handler.js.map +1 -1
  236. package/dist/core/expressions/factory/migration-helpers.js.map +1 -1
  237. package/dist/core/expressions/factory/resource-analyzer.d.ts +4 -4
  238. package/dist/core/expressions/factory/resource-analyzer.d.ts.map +1 -1
  239. package/dist/core/expressions/factory/resource-analyzer.js.map +1 -1
  240. package/dist/core/expressions/factory/resource-type-validator.d.ts +5 -5
  241. package/dist/core/expressions/factory/resource-type-validator.d.ts.map +1 -1
  242. package/dist/core/expressions/factory/resource-type-validator.js.map +1 -1
  243. package/dist/core/expressions/factory/status-builder-analyzer.d.ts +6 -7
  244. package/dist/core/expressions/factory/status-builder-analyzer.d.ts.map +1 -1
  245. package/dist/core/expressions/factory/status-builder-analyzer.js +0 -3
  246. package/dist/core/expressions/factory/status-builder-analyzer.js.map +1 -1
  247. package/dist/core/expressions/factory/status-builder-types.d.ts +1 -1
  248. package/dist/core/expressions/factory/status-builder-types.d.ts.map +1 -1
  249. package/dist/core/expressions/factory/status-cel-generation.d.ts +1 -1
  250. package/dist/core/expressions/factory/status-cel-generation.d.ts.map +1 -1
  251. package/dist/core/expressions/factory/status-cel-generation.js +1 -1
  252. package/dist/core/expressions/factory/status-cel-generation.js.map +1 -1
  253. package/dist/core/expressions/factory/status-field-analysis.d.ts +3 -3
  254. package/dist/core/expressions/factory/status-field-analysis.d.ts.map +1 -1
  255. package/dist/core/expressions/factory/status-field-analysis.js.map +1 -1
  256. package/dist/core/expressions/magic-proxy/magic-assignable-analyzer.d.ts +5 -5
  257. package/dist/core/expressions/magic-proxy/magic-assignable-analyzer.d.ts.map +1 -1
  258. package/dist/core/expressions/magic-proxy/magic-assignable-analyzer.js +1 -1
  259. package/dist/core/expressions/magic-proxy/magic-assignable-analyzer.js.map +1 -1
  260. package/dist/core/expressions/magic-proxy/magic-proxy-analyzer.d.ts +10 -10
  261. package/dist/core/expressions/magic-proxy/magic-proxy-analyzer.d.ts.map +1 -1
  262. package/dist/core/expressions/magic-proxy/magic-proxy-analyzer.js +5 -1
  263. package/dist/core/expressions/magic-proxy/magic-proxy-analyzer.js.map +1 -1
  264. package/dist/core/expressions/magic-proxy/magic-proxy-ast.d.ts +2 -2
  265. package/dist/core/expressions/magic-proxy/magic-proxy-ast.d.ts.map +1 -1
  266. package/dist/core/expressions/magic-proxy/magic-proxy-ast.js.map +1 -1
  267. package/dist/core/expressions/magic-proxy/magic-proxy-detector.d.ts +5 -5
  268. package/dist/core/expressions/magic-proxy/magic-proxy-detector.d.ts.map +1 -1
  269. package/dist/core/expressions/magic-proxy/magic-proxy-detector.js.map +1 -1
  270. package/dist/core/expressions/magic-proxy/magic-proxy-types.d.ts +2 -2
  271. package/dist/core/expressions/magic-proxy/magic-proxy-types.d.ts.map +1 -1
  272. package/dist/core/expressions/magic-proxy/optionality-handler.d.ts +1 -2
  273. package/dist/core/expressions/magic-proxy/optionality-handler.d.ts.map +1 -1
  274. package/dist/core/expressions/magic-proxy/optionality-handler.js +2 -15
  275. package/dist/core/expressions/magic-proxy/optionality-handler.js.map +1 -1
  276. package/dist/core/expressions/validation/compile-time-checker.d.ts +1 -1
  277. package/dist/core/expressions/validation/compile-time-checker.d.ts.map +1 -1
  278. package/dist/core/expressions/validation/compile-time-checker.js.map +1 -1
  279. package/dist/core/expressions/validation/compile-time-types.d.ts +2 -2
  280. package/dist/core/expressions/validation/compile-time-types.d.ts.map +1 -1
  281. package/dist/core/expressions/validation/kubernetes-field-types.d.ts +4 -4
  282. package/dist/core/expressions/validation/kubernetes-field-types.d.ts.map +1 -1
  283. package/dist/core/expressions/validation/kubernetes-field-types.js.map +1 -1
  284. package/dist/core/expressions/validation/resource-field-utils.d.ts +10 -10
  285. package/dist/core/expressions/validation/resource-field-utils.d.ts.map +1 -1
  286. package/dist/core/expressions/validation/resource-field-utils.js.map +1 -1
  287. package/dist/core/expressions/validation/resource-validation.d.ts +3 -3
  288. package/dist/core/expressions/validation/resource-validation.d.ts.map +1 -1
  289. package/dist/core/expressions/validation/resource-validation.js.map +1 -1
  290. package/dist/core/expressions/validation/type-inference-types.d.ts +2 -2
  291. package/dist/core/expressions/validation/type-inference-types.d.ts.map +1 -1
  292. package/dist/core/expressions/validation/type-safety.d.ts +2 -2
  293. package/dist/core/expressions/validation/type-safety.d.ts.map +1 -1
  294. package/dist/core/expressions/validation/type-safety.js +1 -0
  295. package/dist/core/expressions/validation/type-safety.js.map +1 -1
  296. package/dist/core/kubernetes/bun-api-client.js.map +1 -1
  297. package/dist/core/kubernetes/bun-http-library.d.ts.map +1 -1
  298. package/dist/core/kubernetes/bun-http-library.js +29 -3
  299. package/dist/core/kubernetes/bun-http-library.js.map +1 -1
  300. package/dist/core/kubernetes/client-provider.d.ts +12 -0
  301. package/dist/core/kubernetes/client-provider.d.ts.map +1 -1
  302. package/dist/core/kubernetes/client-provider.js +35 -0
  303. package/dist/core/kubernetes/client-provider.js.map +1 -1
  304. package/dist/core/metadata/resource-metadata.d.ts +49 -1
  305. package/dist/core/metadata/resource-metadata.d.ts.map +1 -1
  306. package/dist/core/metadata/resource-metadata.js.map +1 -1
  307. package/dist/core/proxy/create-resource.d.ts +15 -0
  308. package/dist/core/proxy/create-resource.d.ts.map +1 -1
  309. package/dist/core/proxy/create-resource.js +79 -2
  310. package/dist/core/proxy/create-resource.js.map +1 -1
  311. package/dist/core/readiness/registry.js +2 -2
  312. package/dist/core/readiness/registry.js.map +1 -1
  313. package/dist/core/references/cel-evaluator.d.ts +1 -4
  314. package/dist/core/references/cel-evaluator.d.ts.map +1 -1
  315. package/dist/core/references/cel-evaluator.js +3 -7
  316. package/dist/core/references/cel-evaluator.js.map +1 -1
  317. package/dist/core/references/cel.d.ts +22 -0
  318. package/dist/core/references/cel.d.ts.map +1 -1
  319. package/dist/core/references/cel.js +106 -8
  320. package/dist/core/references/cel.js.map +1 -1
  321. package/dist/core/references/external-refs.d.ts.map +1 -1
  322. package/dist/core/references/external-refs.js +3 -0
  323. package/dist/core/references/external-refs.js.map +1 -1
  324. package/dist/core/references/resolver.d.ts.map +1 -1
  325. package/dist/core/references/resolver.js +28 -17
  326. package/dist/core/references/resolver.js.map +1 -1
  327. package/dist/core/references/schema-proxy.d.ts +18 -10
  328. package/dist/core/references/schema-proxy.d.ts.map +1 -1
  329. package/dist/core/references/schema-proxy.js +174 -23
  330. package/dist/core/references/schema-proxy.js.map +1 -1
  331. package/dist/core/runtime-patches/crd-schema-fix.d.ts.map +1 -1
  332. package/dist/core/runtime-patches/crd-schema-fix.js +4 -1
  333. package/dist/core/runtime-patches/crd-schema-fix.js.map +1 -1
  334. package/dist/core/serialization/cel-optimizer.d.ts.map +1 -1
  335. package/dist/core/serialization/cel-optimizer.js +2 -0
  336. package/dist/core/serialization/cel-optimizer.js.map +1 -1
  337. package/dist/core/serialization/cel-references.d.ts +75 -1
  338. package/dist/core/serialization/cel-references.d.ts.map +1 -1
  339. package/dist/core/serialization/cel-references.js +692 -156
  340. package/dist/core/serialization/cel-references.js.map +1 -1
  341. package/dist/core/serialization/core.d.ts +8 -8
  342. package/dist/core/serialization/core.d.ts.map +1 -1
  343. package/dist/core/serialization/core.js +672 -90
  344. package/dist/core/serialization/core.js.map +1 -1
  345. package/dist/core/serialization/kro-post-processing.d.ts +1 -1
  346. package/dist/core/serialization/kro-post-processing.d.ts.map +1 -1
  347. package/dist/core/serialization/kro-post-processing.js +69 -22
  348. package/dist/core/serialization/kro-post-processing.js.map +1 -1
  349. package/dist/core/serialization/schema.d.ts +1 -0
  350. package/dist/core/serialization/schema.d.ts.map +1 -1
  351. package/dist/core/serialization/schema.js +378 -50
  352. package/dist/core/serialization/schema.js.map +1 -1
  353. package/dist/core/serialization/status-analysis-pipeline.d.ts +1 -1
  354. package/dist/core/serialization/status-analysis-pipeline.d.ts.map +1 -1
  355. package/dist/core/serialization/status-analysis-pipeline.js.map +1 -1
  356. package/dist/core/serialization/yaml.d.ts +3 -2
  357. package/dist/core/serialization/yaml.d.ts.map +1 -1
  358. package/dist/core/serialization/yaml.js +385 -55
  359. package/dist/core/serialization/yaml.js.map +1 -1
  360. package/dist/core/singleton/singleton.d.ts +16 -0
  361. package/dist/core/singleton/singleton.d.ts.map +1 -0
  362. package/dist/core/singleton/singleton.js +135 -0
  363. package/dist/core/singleton/singleton.js.map +1 -0
  364. package/dist/core/types/common.d.ts +2 -2
  365. package/dist/core/types/common.d.ts.map +1 -1
  366. package/dist/core/types/composable.d.ts +1 -1
  367. package/dist/core/types/composable.d.ts.map +1 -1
  368. package/dist/core/types/deployment.d.ts +129 -9
  369. package/dist/core/types/deployment.d.ts.map +1 -1
  370. package/dist/core/types/deployment.js +1 -1
  371. package/dist/core/types/deployment.js.map +1 -1
  372. package/dist/core/types/kubernetes.d.ts +25 -17
  373. package/dist/core/types/kubernetes.d.ts.map +1 -1
  374. package/dist/core/types/references.d.ts +1 -1
  375. package/dist/core/types/references.d.ts.map +1 -1
  376. package/dist/core/types/references.js.map +1 -1
  377. package/dist/core/types/resource-graph.d.ts +2 -1
  378. package/dist/core/types/resource-graph.d.ts.map +1 -1
  379. package/dist/core/types/schema.d.ts +1 -1
  380. package/dist/core/types/schema.d.ts.map +1 -1
  381. package/dist/core/types/serialization.d.ts +24 -6
  382. package/dist/core/types/serialization.d.ts.map +1 -1
  383. package/dist/core/validation/cel-validator.d.ts +15 -2
  384. package/dist/core/validation/cel-validator.d.ts.map +1 -1
  385. package/dist/core/validation/cel-validator.js +144 -63
  386. package/dist/core/validation/cel-validator.js.map +1 -1
  387. package/dist/factories/apisix/compositions/apisix-bootstrap.d.ts +2 -41
  388. package/dist/factories/apisix/compositions/apisix-bootstrap.d.ts.map +1 -1
  389. package/dist/factories/apisix/compositions/apisix-bootstrap.js +262 -217
  390. package/dist/factories/apisix/compositions/apisix-bootstrap.js.map +1 -1
  391. package/dist/factories/apisix/index.d.ts +2 -2
  392. package/dist/factories/apisix/index.js +2 -2
  393. package/dist/factories/apisix/resources/helm.d.ts +2 -2
  394. package/dist/factories/apisix/resources/helm.d.ts.map +1 -1
  395. package/dist/factories/apisix/resources/helm.js.map +1 -1
  396. package/dist/factories/apisix/types.d.ts +21 -11
  397. package/dist/factories/apisix/types.d.ts.map +1 -1
  398. package/dist/factories/apisix/types.js +106 -4
  399. package/dist/factories/apisix/types.js.map +1 -1
  400. package/dist/factories/apisix/utils/admin-credentials.d.ts +5 -3
  401. package/dist/factories/apisix/utils/admin-credentials.d.ts.map +1 -1
  402. package/dist/factories/apisix/utils/admin-credentials.js +14 -10
  403. package/dist/factories/apisix/utils/admin-credentials.js.map +1 -1
  404. package/dist/factories/apisix/utils/helm-values-mapper.d.ts.map +1 -1
  405. package/dist/factories/apisix/utils/helm-values-mapper.js +4 -2
  406. package/dist/factories/apisix/utils/helm-values-mapper.js.map +1 -1
  407. package/dist/factories/cert-manager/resources/challenges.js.map +1 -1
  408. package/dist/factories/cert-manager/types.d.ts +3 -3
  409. package/dist/factories/cert-manager/types.d.ts.map +1 -1
  410. package/dist/factories/cilium/compositions/cilium-bootstrap.d.ts +4 -4
  411. package/dist/factories/cilium/types.d.ts +3 -3
  412. package/dist/factories/cilium/types.d.ts.map +1 -1
  413. package/dist/factories/cnpg/compositions/cnpg-bootstrap.d.ts +1 -0
  414. package/dist/factories/cnpg/compositions/cnpg-bootstrap.d.ts.map +1 -1
  415. package/dist/factories/cnpg/compositions/cnpg-bootstrap.js +48 -0
  416. package/dist/factories/cnpg/compositions/cnpg-bootstrap.js.map +1 -1
  417. package/dist/factories/cnpg/resources/cluster.js +1 -1
  418. package/dist/factories/cnpg/resources/cluster.js.map +1 -1
  419. package/dist/factories/cnpg/resources/helm.d.ts.map +1 -1
  420. package/dist/factories/cnpg/resources/helm.js +1 -0
  421. package/dist/factories/cnpg/resources/helm.js.map +1 -1
  422. package/dist/factories/cnpg/resources/pooler.js +1 -1
  423. package/dist/factories/cnpg/resources/pooler.js.map +1 -1
  424. package/dist/factories/cnpg/types.d.ts +9 -8
  425. package/dist/factories/cnpg/types.d.ts.map +1 -1
  426. package/dist/factories/cnpg/types.js +11 -0
  427. package/dist/factories/cnpg/types.js.map +1 -1
  428. package/dist/factories/external-dns/compositions/external-dns-bootstrap.d.ts.map +1 -1
  429. package/dist/factories/external-dns/compositions/external-dns-bootstrap.js +153 -41
  430. package/dist/factories/external-dns/compositions/external-dns-bootstrap.js.map +1 -1
  431. package/dist/factories/external-dns/resources/dns-endpoint.js +1 -1
  432. package/dist/factories/external-dns/resources/dns-endpoint.js.map +1 -1
  433. package/dist/factories/external-dns/resources/helm.d.ts +1 -1
  434. package/dist/factories/external-dns/resources/helm.d.ts.map +1 -1
  435. package/dist/factories/external-dns/resources/helm.js +17 -10
  436. package/dist/factories/external-dns/resources/helm.js.map +1 -1
  437. package/dist/factories/external-dns/types.d.ts +5 -2
  438. package/dist/factories/external-dns/types.d.ts.map +1 -1
  439. package/dist/factories/external-dns/types.js.map +1 -1
  440. package/dist/factories/flux/git-repository.d.ts.map +1 -1
  441. package/dist/factories/flux/git-repository.js +1 -1
  442. package/dist/factories/flux/git-repository.js.map +1 -1
  443. package/dist/factories/flux/kustomize/kustomization.d.ts +2 -2
  444. package/dist/factories/flux/kustomize/kustomization.d.ts.map +1 -1
  445. package/dist/factories/flux/kustomize/readiness-evaluators.d.ts +1 -1
  446. package/dist/factories/flux/kustomize/readiness-evaluators.d.ts.map +1 -1
  447. package/dist/factories/flux/kustomize/readiness-evaluators.js +1 -1
  448. package/dist/factories/flux/kustomize/readiness-evaluators.js.map +1 -1
  449. package/dist/factories/helm/helm-release.d.ts +3 -2
  450. package/dist/factories/helm/helm-release.d.ts.map +1 -1
  451. package/dist/factories/helm/helm-release.js +1 -0
  452. package/dist/factories/helm/helm-release.js.map +1 -1
  453. package/dist/factories/helm/helm-repository.d.ts +1 -1
  454. package/dist/factories/helm/helm-repository.d.ts.map +1 -1
  455. package/dist/factories/helm/helm-repository.js +6 -4
  456. package/dist/factories/helm/helm-repository.js.map +1 -1
  457. package/dist/factories/helm/readiness-evaluators.d.ts +6 -6
  458. package/dist/factories/helm/readiness-evaluators.d.ts.map +1 -1
  459. package/dist/factories/helm/readiness-evaluators.js +15 -9
  460. package/dist/factories/helm/readiness-evaluators.js.map +1 -1
  461. package/dist/factories/helm/types.d.ts +5 -1
  462. package/dist/factories/helm/types.d.ts.map +1 -1
  463. package/dist/factories/inngest/compositions/inngest-bootstrap.d.ts +1 -0
  464. package/dist/factories/inngest/compositions/inngest-bootstrap.d.ts.map +1 -1
  465. package/dist/factories/inngest/compositions/inngest-bootstrap.js +4 -3
  466. package/dist/factories/inngest/compositions/inngest-bootstrap.js.map +1 -1
  467. package/dist/factories/inngest/resources/helm.js +1 -1
  468. package/dist/factories/inngest/resources/helm.js.map +1 -1
  469. package/dist/factories/inngest/types.d.ts +5 -4
  470. package/dist/factories/inngest/types.d.ts.map +1 -1
  471. package/dist/factories/inngest/types.js +2 -0
  472. package/dist/factories/inngest/types.js.map +1 -1
  473. package/dist/factories/kro/kro-custom-resource.js +1 -1
  474. package/dist/factories/kro/kro-custom-resource.js.map +1 -1
  475. package/dist/factories/kubernetes/config/config-map.d.ts +2 -2
  476. package/dist/factories/kubernetes/config/config-map.d.ts.map +1 -1
  477. package/dist/factories/kubernetes/config/secret.d.ts +2 -2
  478. package/dist/factories/kubernetes/config/secret.d.ts.map +1 -1
  479. package/dist/factories/kubernetes/networking/service.js +1 -1
  480. package/dist/factories/kubernetes/networking/service.js.map +1 -1
  481. package/dist/factories/kubernetes/yaml/yaml-directory.d.ts.map +1 -1
  482. package/dist/factories/kubernetes/yaml/yaml-directory.js +9 -0
  483. package/dist/factories/kubernetes/yaml/yaml-directory.js.map +1 -1
  484. package/dist/factories/kubernetes/yaml/yaml-file.d.ts.map +1 -1
  485. package/dist/factories/kubernetes/yaml/yaml-file.js +9 -0
  486. package/dist/factories/kubernetes/yaml/yaml-file.js.map +1 -1
  487. package/dist/factories/pebble/resources/helm.js.map +1 -1
  488. package/dist/factories/pebble/types.d.ts +2 -2
  489. package/dist/factories/searxng/compositions/searxng-bootstrap.d.ts +3 -2
  490. package/dist/factories/searxng/compositions/searxng-bootstrap.d.ts.map +1 -1
  491. package/dist/factories/searxng/compositions/searxng-bootstrap.js +205 -167
  492. package/dist/factories/searxng/compositions/searxng-bootstrap.js.map +1 -1
  493. package/dist/factories/searxng/resources/searxng.d.ts +1 -1
  494. package/dist/factories/searxng/resources/searxng.js +1 -1
  495. package/dist/factories/searxng/types.d.ts +5 -4
  496. package/dist/factories/searxng/types.d.ts.map +1 -1
  497. package/dist/factories/searxng/types.js +8 -7
  498. package/dist/factories/searxng/types.js.map +1 -1
  499. package/dist/factories/searxng/utils/settings-builder.d.ts +4 -3
  500. package/dist/factories/searxng/utils/settings-builder.d.ts.map +1 -1
  501. package/dist/factories/searxng/utils/settings-builder.js +4 -3
  502. package/dist/factories/searxng/utils/settings-builder.js.map +1 -1
  503. package/dist/factories/simple/config/config-map.d.ts +2 -2
  504. package/dist/factories/simple/config/config-map.d.ts.map +1 -1
  505. package/dist/factories/simple/config/secret.d.ts +2 -2
  506. package/dist/factories/simple/config/secret.d.ts.map +1 -1
  507. package/dist/factories/simple/helm/index.d.ts +1 -1
  508. package/dist/factories/simple/helm/index.d.ts.map +1 -1
  509. package/dist/factories/simple/helm/index.js.map +1 -1
  510. package/dist/factories/simple/index.d.ts +3 -3
  511. package/dist/factories/simple/index.d.ts.map +1 -1
  512. package/dist/factories/simple/storage/persistent-volume.js.map +1 -1
  513. package/dist/factories/simple/types.d.ts +11 -1
  514. package/dist/factories/simple/types.d.ts.map +1 -1
  515. package/dist/factories/simple/workloads/deployment.d.ts +4 -1
  516. package/dist/factories/simple/workloads/deployment.d.ts.map +1 -1
  517. package/dist/factories/simple/workloads/deployment.js +9 -2
  518. package/dist/factories/simple/workloads/deployment.js.map +1 -1
  519. package/dist/factories/simple/workloads/stateful-set.d.ts +4 -1
  520. package/dist/factories/simple/workloads/stateful-set.d.ts.map +1 -1
  521. package/dist/factories/simple/workloads/stateful-set.js +6 -2
  522. package/dist/factories/simple/workloads/stateful-set.js.map +1 -1
  523. package/dist/factories/valkey/compositions/valkey-bootstrap.d.ts +1 -0
  524. package/dist/factories/valkey/compositions/valkey-bootstrap.d.ts.map +1 -1
  525. package/dist/factories/valkey/compositions/valkey-bootstrap.js +116 -0
  526. package/dist/factories/valkey/compositions/valkey-bootstrap.js.map +1 -1
  527. package/dist/factories/valkey/resources/valkey.js +1 -1
  528. package/dist/factories/valkey/resources/valkey.js.map +1 -1
  529. package/dist/factories/valkey/types.d.ts +6 -5
  530. package/dist/factories/valkey/types.d.ts.map +1 -1
  531. package/dist/factories/valkey/types.js +10 -0
  532. package/dist/factories/valkey/types.js.map +1 -1
  533. package/dist/factories/webapp/compositions/web-app-with-processing.d.ts +90 -6
  534. package/dist/factories/webapp/compositions/web-app-with-processing.d.ts.map +1 -1
  535. package/dist/factories/webapp/compositions/web-app-with-processing.js +180 -20
  536. package/dist/factories/webapp/compositions/web-app-with-processing.js.map +1 -1
  537. package/dist/factories/webapp/index.d.ts +3 -4
  538. package/dist/factories/webapp/index.d.ts.map +1 -1
  539. package/dist/factories/webapp/index.js +3 -4
  540. package/dist/factories/webapp/index.js.map +1 -1
  541. package/dist/factories/webapp/types.d.ts +60 -2
  542. package/dist/factories/webapp/types.d.ts.map +1 -1
  543. package/dist/factories/webapp/types.js +80 -3
  544. package/dist/factories/webapp/types.js.map +1 -1
  545. package/dist/index.d.ts +5 -1
  546. package/dist/index.d.ts.map +1 -1
  547. package/dist/index.js +3 -0
  548. package/dist/index.js.map +1 -1
  549. package/dist/shared/brands.d.ts +18 -8
  550. package/dist/shared/brands.d.ts.map +1 -1
  551. package/dist/shared/brands.js +19 -9
  552. package/dist/shared/brands.js.map +1 -1
  553. package/dist/utils/cel-escape.d.ts +12 -0
  554. package/dist/utils/cel-escape.d.ts.map +1 -0
  555. package/dist/utils/cel-escape.js +19 -0
  556. package/dist/utils/cel-escape.js.map +1 -0
  557. package/package.json +7 -2
@@ -0,0 +1,369 @@
1
+ import { containsCelExpressions, containsKubernetesRefs, isCelExpression, isKubernetesRef, isMixedTemplate, isResourceReference, } from '../../utils/type-guards.js';
2
+ import { TypeKroError } from '../errors.js';
3
+ import { copyResourceMetadata } from '../metadata/resource-metadata.js';
4
+ import { getAspectMetadata, setAspectMetadata } from './metadata.js';
5
+ import { resolveFactoryTargetId } from './targets.js';
6
+ import { AspectDefinitionError } from './types.js';
7
+ export class AspectApplicationError extends TypeKroError {
8
+ aspectIndex;
9
+ target;
10
+ mode;
11
+ reason;
12
+ name = 'AspectApplicationError';
13
+ selector;
14
+ matchCount;
15
+ resourceId;
16
+ resourceKind;
17
+ resourceName;
18
+ surface;
19
+ operation;
20
+ fieldPath;
21
+ constructor(message, aspectIndex, target, mode, reason, options = {}) {
22
+ super(message, 'ASPECT_APPLICATION_ERROR', {
23
+ aspectIndex,
24
+ target,
25
+ mode,
26
+ reason,
27
+ ...options,
28
+ });
29
+ this.aspectIndex = aspectIndex;
30
+ this.target = target;
31
+ this.mode = mode;
32
+ this.reason = reason;
33
+ Object.assign(this, options);
34
+ }
35
+ }
36
+ function cloneValue(value) {
37
+ if (isKubernetesRef(value) ||
38
+ isCelExpression(value) ||
39
+ isMixedTemplate(value) ||
40
+ isResourceReference(value)) {
41
+ return value;
42
+ }
43
+ if (Array.isArray(value))
44
+ return value.map((item) => cloneValue(item));
45
+ if (value && typeof value === 'object') {
46
+ const clone = {};
47
+ for (const [key, child] of Object.entries(value)) {
48
+ clone[key] = cloneValue(child);
49
+ }
50
+ return clone;
51
+ }
52
+ return value;
53
+ }
54
+ function cloneResources(resources) {
55
+ const cloned = {};
56
+ for (const [key, resource] of Object.entries(resources)) {
57
+ const clone = cloneValue(resource);
58
+ copyResourceMetadata(resource, clone);
59
+ cloned[key] = clone;
60
+ }
61
+ return cloned;
62
+ }
63
+ function isTargetGroup(target) {
64
+ return (!!target && typeof target === 'object' && 'kind' in target && target.kind === 'target-group');
65
+ }
66
+ function targetLabel(target) {
67
+ if (Array.isArray(target)) {
68
+ return target.map((child) => targetLabel(child)).join(',');
69
+ }
70
+ if (typeof target === 'function') {
71
+ return String(Reflect.get(target, '__typekroAspectTargetId') ?? target.name);
72
+ }
73
+ if (isTargetGroup(target))
74
+ return target.id;
75
+ return 'unknown';
76
+ }
77
+ function normalizedTargetId(value) {
78
+ return String(value).toLowerCase();
79
+ }
80
+ function hasStructuredSpec(resource) {
81
+ return !!resource.spec && typeof resource.spec === 'object' && !Array.isArray(resource.spec);
82
+ }
83
+ function matchesTarget(resource, aspectDefinition) {
84
+ const metadata = getAspectMetadata(resource);
85
+ const targets = Array.isArray(aspectDefinition.target)
86
+ ? aspectDefinition.target
87
+ : [aspectDefinition.target];
88
+ return targets.some((target) => {
89
+ if (typeof target === 'function') {
90
+ const targetId = resolveFactoryTargetId(target);
91
+ if (targetId === undefined)
92
+ return false;
93
+ // Factory targets are kind-level identities, so custom factories that
94
+ // produce the same Kubernetes kind intentionally share the same target.
95
+ return (normalizedTargetId(metadata?.factoryTarget) === normalizedTargetId(targetId) ||
96
+ normalizedTargetId(resource.kind) === normalizedTargetId(targetId));
97
+ }
98
+ if (isTargetGroup(target)) {
99
+ if (target.id === 'allResources')
100
+ return true;
101
+ if (target.id === 'resources') {
102
+ return metadata?.overrideSchema !== undefined || hasStructuredSpec(resource);
103
+ }
104
+ return metadata?.targetGroups?.includes(target.id) ?? false;
105
+ }
106
+ return false;
107
+ });
108
+ }
109
+ function matchesSelector(resource, selector) {
110
+ if (!selector)
111
+ return true;
112
+ const metadata = getAspectMetadata(resource);
113
+ if (selector.slot !== undefined && metadata?.slot !== selector.slot)
114
+ return false;
115
+ if (selector.id !== undefined && metadata?.id !== selector.id)
116
+ return false;
117
+ if (selector.name !== undefined &&
118
+ (metadata?.name ?? resource.metadata?.name) !== selector.name) {
119
+ return false;
120
+ }
121
+ if (selector.namespace !== undefined &&
122
+ (metadata?.namespace ?? resource.metadata?.namespace) !== selector.namespace) {
123
+ return false;
124
+ }
125
+ if (selector.kind !== undefined && (metadata?.kind ?? resource.kind) !== selector.kind)
126
+ return false;
127
+ if (selector.labels) {
128
+ const labels = resource.metadata?.labels ?? metadata?.labels ?? {};
129
+ for (const [key, value] of Object.entries(selector.labels)) {
130
+ if (labels[key] !== value)
131
+ return false;
132
+ }
133
+ }
134
+ return true;
135
+ }
136
+ function setLabelsFromResource(resource) {
137
+ const metadata = getAspectMetadata(resource);
138
+ if (!metadata)
139
+ return;
140
+ const labels = resource.metadata?.labels ?? metadata.labels;
141
+ if (labels !== undefined) {
142
+ setAspectMetadata(resource, { labels });
143
+ }
144
+ }
145
+ function applyMetadataSurface(resource, surface) {
146
+ resource.metadata ??= {};
147
+ if (surface.labels) {
148
+ resource.metadata.labels = applyMapOperation(resource.metadata.labels ?? {}, surface.labels);
149
+ }
150
+ if (surface.annotations) {
151
+ resource.metadata.annotations = applyMapOperation(resource.metadata.annotations ?? {}, surface.annotations);
152
+ }
153
+ setLabelsFromResource(resource);
154
+ }
155
+ function applyMapOperation(current, operation) {
156
+ return operation.kind === 'replace'
157
+ ? Object.fromEntries(Object.entries(operation.value).filter((entry) => entry[1] !== undefined))
158
+ : Object.fromEntries(Object.entries({ ...current, ...operation.value }).filter((entry) => entry[1] !== undefined));
159
+ }
160
+ function isOperation(value) {
161
+ return (!!value &&
162
+ typeof value === 'object' &&
163
+ 'kind' in value &&
164
+ (value.kind === 'replace' ||
165
+ value.kind === 'merge' ||
166
+ value.kind === 'append' ||
167
+ value.kind === 'patchEach' ||
168
+ value.kind === 'mergeByName'));
169
+ }
170
+ function applyOverrideSurface(resource, surface, context) {
171
+ validateOverridePatch(resource, surface.patch, context);
172
+ applyPatch(resource, surface.patch, [], context);
173
+ }
174
+ function operationPlacementIsAllowed(fieldKind, operation) {
175
+ if (operation.kind === 'replace')
176
+ return true;
177
+ if (operation.kind === 'merge')
178
+ return fieldKind === 'object';
179
+ return fieldKind === 'array';
180
+ }
181
+ function validateOverridePatchNode(node, patch, path, context) {
182
+ if (!patch || typeof patch !== 'object')
183
+ return;
184
+ if (isOperation(patch)) {
185
+ if (!operationPlacementIsAllowed(node.kind, patch)) {
186
+ const fieldPath = path.join('.');
187
+ throw new AspectApplicationError(`Aspect ${patch.kind} operation is not valid for ${node.kind} field ${fieldPath}`, context.aspectIndex, context.target, context.mode, 'operation is not allowed for the advertised writable aspect field type', { ...context, operation: patch.kind, fieldPath });
188
+ }
189
+ return;
190
+ }
191
+ if (node.kind !== 'object' || !node.children) {
192
+ const fieldPath = path.join('.');
193
+ throw new AspectApplicationError(`Aspect override field ${fieldPath} must use replace(...)`, context.aspectIndex, context.target, context.mode, 'nested patch is not valid for this advertised writable aspect field', { ...context, fieldPath });
194
+ }
195
+ for (const [key, childPatch] of Object.entries(patch)) {
196
+ const childNode = node.children[key];
197
+ const childPath = [...path, key];
198
+ if (!childNode) {
199
+ const fieldPath = childPath.join('.');
200
+ throw new AspectApplicationError(`Aspect override field ${fieldPath} is not advertised for this resource`, context.aspectIndex, context.target, context.mode, 'field is not in the advertised writable aspect schema', { ...context, fieldPath });
201
+ }
202
+ validateOverridePatchNode(childNode, childPatch, childPath, context);
203
+ }
204
+ }
205
+ function validateOverridePatch(resource, patch, context) {
206
+ const schema = getAspectMetadata(resource)?.overrideSchema;
207
+ // Generic factory targets derive their deep writable shape from TypeScript.
208
+ // At runtime we still enforce root/spec boundaries and concrete operation
209
+ // compatibility against existing fields during applyPatch/applyOperation, but
210
+ // TypeScript remains authoritative for optional Kubernetes fields that are not
211
+ // present in the initial manifest.
212
+ if (!schema)
213
+ return;
214
+ validateOverridePatchNode(schema, patch, [], context);
215
+ }
216
+ function applyPatch(target, patch, path, context) {
217
+ if (!patch || typeof patch !== 'object')
218
+ return;
219
+ for (const [key, value] of Object.entries(patch)) {
220
+ const nextPath = [...path, key];
221
+ if (isOperation(value)) {
222
+ applyOperation(target, key, value, nextPath, context);
223
+ }
224
+ else {
225
+ const child = target[key];
226
+ if (child !== undefined && (typeof child !== 'object' || Array.isArray(child))) {
227
+ const fieldPath = nextPath.join('.');
228
+ throw new AspectApplicationError(`Aspect nested patch requires an object field at ${fieldPath}`, context.aspectIndex, context.target, context.mode, 'nested patch target is not an object', { ...context, fieldPath });
229
+ }
230
+ if (!child)
231
+ target[key] = {};
232
+ applyPatch(target[key], value, nextPath, context);
233
+ }
234
+ }
235
+ }
236
+ function applyOperation(target, key, operation, path, context) {
237
+ const current = target[key];
238
+ const fieldPath = path.join('.');
239
+ if (operation.kind === 'merge' && Object.keys(operation.value).length === 0)
240
+ return;
241
+ if (operation.kind === 'append' && operation.value.length === 0)
242
+ return;
243
+ if (operation.kind === 'mergeByName' && operation.value.length === 0)
244
+ return;
245
+ const operationValueContainsReferences = 'patch' in operation
246
+ ? containsKubernetesRefs(operation.patch) || containsCelExpressions(operation.patch)
247
+ : containsKubernetesRefs(operation.value) || containsCelExpressions(operation.value);
248
+ const currentValueContainsReferences = containsKubernetesRefs(current) || containsCelExpressions(current);
249
+ if (context.mode === 'kro' &&
250
+ (operation.kind === 'merge' || operation.kind === 'append') &&
251
+ (currentValueContainsReferences || operationValueContainsReferences)) {
252
+ throw new AspectApplicationError(`Aspect ${operation.kind} is not safe for reference-backed Kro field ${fieldPath}`, context.aspectIndex, context.target, context.mode, 'reference-backed composite or payload cannot be merged or appended in Kro mode', { ...context, operation: operation.kind, fieldPath });
253
+ }
254
+ if (context.mode === 'kro' && operation.kind === 'mergeByName' && operationValueContainsReferences) {
255
+ throw new AspectApplicationError(`Aspect ${operation.kind} payload is not safe for Kro field ${fieldPath}`, context.aspectIndex, context.target, context.mode, 'reference-backed payload cannot be merged by name in Kro mode', { ...context, operation: operation.kind, fieldPath });
256
+ }
257
+ if (operation.kind === 'replace') {
258
+ target[key] = cloneValue(operation.value);
259
+ }
260
+ else if (operation.kind === 'merge') {
261
+ if (!current || typeof current !== 'object' || Array.isArray(current)) {
262
+ throw new AspectApplicationError(`Aspect merge operation requires an object field at ${fieldPath}`, context.aspectIndex, context.target, context.mode, 'merge operation target is not an object', { ...context, operation: operation.kind, fieldPath });
263
+ }
264
+ target[key] = { ...current, ...operation.value };
265
+ }
266
+ else if (operation.kind === 'append') {
267
+ if (current === undefined) {
268
+ target[key] = cloneValue(operation.value);
269
+ return;
270
+ }
271
+ if (!Array.isArray(current)) {
272
+ throw new AspectApplicationError(`Aspect append operation requires an array field at ${fieldPath}`, context.aspectIndex, context.target, context.mode, 'append operation target is not an array', { ...context, operation: operation.kind, fieldPath });
273
+ }
274
+ target[key] = [...current, ...operation.value];
275
+ }
276
+ else if (operation.kind === 'patchEach') {
277
+ if (!Array.isArray(current)) {
278
+ throw new AspectApplicationError(`Aspect patchEach operation requires an array field at ${fieldPath}`, context.aspectIndex, context.target, context.mode, 'patchEach operation target is not an array', { ...context, operation: operation.kind, fieldPath });
279
+ }
280
+ for (const [index, entry] of current.entries()) {
281
+ if (!entry || typeof entry !== 'object' || Array.isArray(entry)) {
282
+ throw new AspectApplicationError(`Aspect patchEach operation requires object entries at ${fieldPath}`, context.aspectIndex, context.target, context.mode, 'patchEach operation entry is not an object', { ...context, operation: operation.kind, fieldPath: `${fieldPath}[${index}]` });
283
+ }
284
+ applyPatch(entry, operation.patch, [`${fieldPath}[${index}]`], context);
285
+ }
286
+ }
287
+ else {
288
+ if (current === undefined) {
289
+ target[key] = cloneValue(operation.value);
290
+ return;
291
+ }
292
+ if (!Array.isArray(current)) {
293
+ throw new AspectApplicationError(`Aspect mergeByName operation requires an array field at ${fieldPath}`, context.aspectIndex, context.target, context.mode, 'mergeByName operation target is not an array', { ...context, operation: operation.kind, fieldPath });
294
+ }
295
+ const merged = current.map((entry) => cloneValue(entry));
296
+ for (const value of operation.value) {
297
+ const existingIndex = merged.findIndex((entry) => !!entry &&
298
+ typeof entry === 'object' &&
299
+ !Array.isArray(entry) &&
300
+ entry.name === value.name);
301
+ if (existingIndex >= 0) {
302
+ merged[existingIndex] = {
303
+ ...merged[existingIndex],
304
+ ...cloneValue(value),
305
+ };
306
+ }
307
+ else {
308
+ merged.push(cloneValue(value));
309
+ }
310
+ }
311
+ target[key] = merged;
312
+ }
313
+ }
314
+ export function applyAspects(resources, options) {
315
+ if (options.aspects.length === 0)
316
+ return resources;
317
+ const cloned = cloneResources(resources);
318
+ const resourceList = Object.values(cloned);
319
+ options.aspects.forEach((definition, index) => {
320
+ const typedDefinition = definition;
321
+ const target = targetLabel(typedDefinition.target);
322
+ const matches = resourceList.filter((resource) => matchesTarget(resource, typedDefinition) &&
323
+ matchesSelector(resource, typedDefinition.selector));
324
+ if (typedDefinition.cardinality === 'exactly-one' && matches.length !== 1) {
325
+ throw new AspectApplicationError(`Aspect expected one ${target} match but found ${matches.length}`, index, target, options.mode, 'selector cardinality mismatch', {
326
+ ...(typedDefinition.selector !== undefined ? { selector: typedDefinition.selector } : {}),
327
+ matchCount: matches.length,
328
+ });
329
+ }
330
+ if (typedDefinition.cardinality === 'one-or-more' && matches.length === 0) {
331
+ throw new AspectApplicationError(`Aspect selector matched no resources for ${target}`, index, target, options.mode, 'no resources matched selector', {
332
+ ...(typedDefinition.selector !== undefined ? { selector: typedDefinition.selector } : {}),
333
+ matchCount: 0,
334
+ });
335
+ }
336
+ for (const resource of matches) {
337
+ const metadata = getAspectMetadata(resource);
338
+ if (typedDefinition.surface.kind === 'metadata') {
339
+ applyMetadataSurface(resource, typedDefinition.surface);
340
+ }
341
+ else if (typedDefinition.surface.kind === 'override') {
342
+ try {
343
+ applyOverrideSurface(resource, typedDefinition.surface, {
344
+ mode: options.mode,
345
+ aspectIndex: index,
346
+ target,
347
+ ...(typedDefinition.selector !== undefined
348
+ ? { selector: typedDefinition.selector }
349
+ : {}),
350
+ matchCount: matches.length,
351
+ ...(metadata?.id !== undefined ? { resourceId: metadata.id } : {}),
352
+ resourceKind: resource.kind,
353
+ ...(resource.metadata?.name !== undefined
354
+ ? { resourceName: String(resource.metadata.name) }
355
+ : {}),
356
+ surface: 'override',
357
+ });
358
+ }
359
+ catch (error) {
360
+ if (error instanceof AspectApplicationError)
361
+ throw error;
362
+ throw new AspectDefinitionError('override', String(error));
363
+ }
364
+ }
365
+ }
366
+ });
367
+ return cloned;
368
+ }
369
+ //# sourceMappingURL=apply.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apply.js","sourceRoot":"","sources":["../../../src/core/aspects/apply.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { workloads } from './primitives.js';
2
+ import type { AspectDefinition, HotReloadAspectOptions, HotReloadAspectSchema, LocalWorkspaceAspectOptions, OverrideAspectSurface, WorkloadPodTemplateAspectSchema } from './types.js';
3
+ /** Creates a workload aspect that mounts a local host workspace into every container. */
4
+ export declare function withLocalWorkspace(options: LocalWorkspaceAspectOptions): AspectDefinition<typeof workloads, OverrideAspectSurface<WorkloadPodTemplateAspectSchema>>;
5
+ /**
6
+ * Creates a dev-mode hot reload override surface for workload pod templates.
7
+ *
8
+ * The helper intentionally returns only the override surface. Callers still pick
9
+ * the target and selector with `aspect.on(...)`, keeping dev behavior explicit.
10
+ */
11
+ export declare function hotReload(options: HotReloadAspectOptions): OverrideAspectSurface<HotReloadAspectSchema>;
12
+ /** Creates a workload-targeted dev-mode hot reload aspect. */
13
+ export declare function withHotReload(options: HotReloadAspectOptions): AspectDefinition<typeof workloads, OverrideAspectSurface<HotReloadAspectSchema>>;
14
+ //# sourceMappingURL=dev-aspects.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev-aspects.d.ts","sourceRoot":"","sources":["../../../src/core/aspects/dev-aspects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG9G,OAAO,KAAK,EACV,gBAAgB,EAEhB,sBAAsB,EACtB,qBAAqB,EACrB,2BAA2B,EAC3B,qBAAqB,EAErB,+BAA+B,EAChC,MAAM,YAAY,CAAC;AAWpB,yFAAyF;AACzF,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,2BAA2B,GACnC,gBAAgB,CAAC,OAAO,SAAS,EAAE,qBAAqB,CAAC,+BAA+B,CAAC,CAAC,CAsB5F;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,sBAAsB,GAAG,qBAAqB,CAAC,qBAAqB,CAAC,CA+BvG;AAED,8DAA8D;AAC9D,wBAAgB,aAAa,CAC3B,OAAO,EAAE,sBAAsB,GAC9B,gBAAgB,CAAC,OAAO,SAAS,EAAE,qBAAqB,CAAC,qBAAqB,CAAC,CAAC,CAKlF"}
@@ -0,0 +1,70 @@
1
+ import { aspect, isPlainObject, mergeByName, override, patchEach, replace, workloads } from './primitives.js';
2
+ import { workloadOverride } from './workload-aspects.js';
3
+ import { AspectDefinitionError } from './types.js';
4
+ function createDefinitionError(functionName, reason) {
5
+ return new AspectDefinitionError(functionName, reason);
6
+ }
7
+ /** Creates a workload aspect that mounts a local host workspace into every container. */
8
+ export function withLocalWorkspace(options) {
9
+ if (!isPlainObject(options)) {
10
+ throw createDefinitionError('override', 'withLocalWorkspace(...) options must be an object');
11
+ }
12
+ const volumeName = options.volumeName ?? 'workspace';
13
+ const mountPath = options.mountPath ?? '/workspace';
14
+ const volumeMount = { name: volumeName, mountPath };
15
+ const volume = {
16
+ name: volumeName,
17
+ hostPath: { path: options.workspacePath, type: options.hostPathType ?? 'Directory' },
18
+ };
19
+ return workloadOverride({
20
+ spec: {
21
+ template: {
22
+ spec: {
23
+ containers: patchEach({ volumeMounts: mergeByName([volumeMount]) }),
24
+ volumes: mergeByName([volume]),
25
+ },
26
+ },
27
+ },
28
+ });
29
+ }
30
+ /**
31
+ * Creates a dev-mode hot reload override surface for workload pod templates.
32
+ *
33
+ * The helper intentionally returns only the override surface. Callers still pick
34
+ * the target and selector with `aspect.on(...)`, keeping dev behavior explicit.
35
+ */
36
+ export function hotReload(options) {
37
+ if (!isPlainObject(options)) {
38
+ throw createDefinitionError('hotReload', 'hotReload(...) options must be an object');
39
+ }
40
+ if (!Array.isArray(options.containers) || options.containers.length === 0) {
41
+ throw createDefinitionError('hotReload', 'hotReload(...) containers must be a non-empty array');
42
+ }
43
+ if (options.volumes !== undefined && !Array.isArray(options.volumes)) {
44
+ throw createDefinitionError('hotReload', 'hotReload(...) volumes must be an array');
45
+ }
46
+ if (options.labels !== undefined && !isPlainObject(options.labels)) {
47
+ throw createDefinitionError('hotReload', 'hotReload(...) labels must be an object');
48
+ }
49
+ const labelPatch = {};
50
+ for (const [key, value] of Object.entries(options.labels ?? {})) {
51
+ labelPatch[key] = replace(value);
52
+ }
53
+ return override({
54
+ spec: {
55
+ ...(options.replicas !== undefined && { replicas: replace(options.replicas) }),
56
+ template: {
57
+ ...(options.labels !== undefined && { metadata: { labels: labelPatch } }),
58
+ spec: {
59
+ containers: replace(options.containers),
60
+ ...(options.volumes !== undefined && { volumes: replace(options.volumes) }),
61
+ },
62
+ },
63
+ },
64
+ });
65
+ }
66
+ /** Creates a workload-targeted dev-mode hot reload aspect. */
67
+ export function withHotReload(options) {
68
+ return aspect.on(workloads, hotReload(options));
69
+ }
70
+ //# sourceMappingURL=dev-aspects.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev-aspects.js","sourceRoot":"","sources":["../../../src/core/aspects/dev-aspects.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Typed resource aspects for applying validated metadata and spec overrides to
3
+ * TypeKro resources at render/factory time.
4
+ *
5
+ * Target groups: `allResources` accepts `metadata(...)` for every rendered
6
+ * resource. `resources` accepts `override(...)` for every rendered resource with
7
+ * a structured `spec`. Factory functions such as `simple.Deployment` are used as
8
+ * kind/capability tokens, not strict provenance tokens: a Deployment target can
9
+ * match Deployment-producing factories that advertise compatible aspect
10
+ * metadata. Use `slot(...)` and `.where(...)` for exact semantic targeting.
11
+ * Runtime validation remains best-effort for optional fields absent from the
12
+ * initial manifest.
13
+ *
14
+ * Selectors use AND semantics across `slot`, `id`, `name`, `namespace`, `kind`,
15
+ * and `labels`. By default an aspect requires one-or-more matches; `.optional()`
16
+ * allows zero matches and `.expectOne()` requires exactly one match.
17
+ *
18
+ * Operation legality is schema-derived: `replace(...)` is valid for advertised
19
+ * scalar, object, and array fields; `merge(...)` is valid for advertised object
20
+ * fields; `append(...)` is valid for advertised array fields. Kro mode rejects
21
+ * `merge(...)` and `append(...)` when either the current composite field or the
22
+ * operation payload contains Kubernetes refs or CEL expressions.
23
+ */
24
+ export { AspectApplicationError, applyAspects } from './apply.js';
25
+ export { hotReload, withHotReload, withLocalWorkspace } from './dev-aspects.js';
26
+ export { withAnnotations, withLabels, withMetadata } from './metadata-aspects.js';
27
+ export { allResources, append, aspect, merge, metadata, override, replace, resources, slot, workloads, } from './primitives.js';
28
+ export { AspectDefinitionError } from './types.js';
29
+ export type * from './types.js';
30
+ export { withEnvFrom, withEnvVars, withImagePullPolicy, withReplicas, withResourceDefaults, withServiceAccount, } from './workload-aspects.js';
31
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/aspects/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAClF,OAAO,EACL,YAAY,EACZ,MAAM,EACN,MAAM,EACN,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,SAAS,EACT,IAAI,EACJ,SAAS,GACV,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,mBAAmB,YAAY,CAAC;AAChC,OAAO,EACL,WAAW,EACX,WAAW,EACX,mBAAmB,EACnB,YAAY,EACZ,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Typed resource aspects for applying validated metadata and spec overrides to
3
+ * TypeKro resources at render/factory time.
4
+ *
5
+ * Target groups: `allResources` accepts `metadata(...)` for every rendered
6
+ * resource. `resources` accepts `override(...)` for every rendered resource with
7
+ * a structured `spec`. Factory functions such as `simple.Deployment` are used as
8
+ * kind/capability tokens, not strict provenance tokens: a Deployment target can
9
+ * match Deployment-producing factories that advertise compatible aspect
10
+ * metadata. Use `slot(...)` and `.where(...)` for exact semantic targeting.
11
+ * Runtime validation remains best-effort for optional fields absent from the
12
+ * initial manifest.
13
+ *
14
+ * Selectors use AND semantics across `slot`, `id`, `name`, `namespace`, `kind`,
15
+ * and `labels`. By default an aspect requires one-or-more matches; `.optional()`
16
+ * allows zero matches and `.expectOne()` requires exactly one match.
17
+ *
18
+ * Operation legality is schema-derived: `replace(...)` is valid for advertised
19
+ * scalar, object, and array fields; `merge(...)` is valid for advertised object
20
+ * fields; `append(...)` is valid for advertised array fields. Kro mode rejects
21
+ * `merge(...)` and `append(...)` when either the current composite field or the
22
+ * operation payload contains Kubernetes refs or CEL expressions.
23
+ */
24
+ export { AspectApplicationError, applyAspects } from './apply.js';
25
+ export { hotReload, withHotReload, withLocalWorkspace } from './dev-aspects.js';
26
+ export { withAnnotations, withLabels, withMetadata } from './metadata-aspects.js';
27
+ export { allResources, append, aspect, merge, metadata, override, replace, resources, slot, workloads, } from './primitives.js';
28
+ export { AspectDefinitionError } from './types.js';
29
+ export { withEnvFrom, withEnvVars, withImagePullPolicy, withReplicas, withResourceDefaults, withServiceAccount, } from './workload-aspects.js';
30
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/aspects/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAClF,OAAO,EACL,YAAY,EACZ,MAAM,EACN,MAAM,EACN,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,SAAS,EACT,IAAI,EACJ,SAAS,GACV,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAEnD,OAAO,EACL,WAAW,EACX,WAAW,EACX,mBAAmB,EACnB,YAAY,EACZ,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { allResources } from './primitives.js';
2
+ import type { AnnotationMap, AspectDefinition, LabelMap, MetadataAspectSurface } from './types.js';
3
+ /** Creates a cross-cutting resource metadata label aspect. */
4
+ export declare function withLabels(labels: LabelMap): AspectDefinition<typeof allResources, MetadataAspectSurface>;
5
+ /** Creates a cross-cutting resource metadata annotation aspect. */
6
+ export declare function withAnnotations(annotations: AnnotationMap): AspectDefinition<typeof allResources, MetadataAspectSurface>;
7
+ /** Creates a cross-cutting resource metadata aspect. */
8
+ export declare function withMetadata(options: {
9
+ readonly labels?: LabelMap;
10
+ readonly annotations?: AnnotationMap;
11
+ }): AspectDefinition<typeof allResources, MetadataAspectSurface>;
12
+ //# sourceMappingURL=metadata-aspects.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata-aspects.d.ts","sourceRoot":"","sources":["../../../src/core/aspects/metadata-aspects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAA0C,MAAM,iBAAiB,CAAC;AAEvF,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EAEhB,QAAQ,EACR,qBAAqB,EACtB,MAAM,YAAY,CAAC;AAUpB,8DAA8D;AAC9D,wBAAgB,UAAU,CAAC,MAAM,EAAE,QAAQ,GAAG,gBAAgB,CAAC,OAAO,YAAY,EAAE,qBAAqB,CAAC,CAEzG;AAED,mEAAmE;AACnE,wBAAgB,eAAe,CAC7B,WAAW,EAAE,aAAa,GACzB,gBAAgB,CAAC,OAAO,YAAY,EAAE,qBAAqB,CAAC,CAE9D;AAED,wDAAwD;AACxD,wBAAgB,YAAY,CAAC,OAAO,EAAE;IACpC,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC;IAC3B,QAAQ,CAAC,WAAW,CAAC,EAAE,aAAa,CAAC;CACtC,GAAG,gBAAgB,CAAC,OAAO,YAAY,EAAE,qBAAqB,CAAC,CAW/D"}
@@ -0,0 +1,24 @@
1
+ import { allResources, aspect, isPlainObject, merge, metadata } from './primitives.js';
2
+ import { AspectDefinitionError } from './types.js';
3
+ function createDefinitionError(functionName, reason) {
4
+ return new AspectDefinitionError(functionName, reason);
5
+ }
6
+ /** Creates a cross-cutting resource metadata label aspect. */
7
+ export function withLabels(labels) {
8
+ return aspect.on(allResources, metadata({ labels: merge(labels) }));
9
+ }
10
+ /** Creates a cross-cutting resource metadata annotation aspect. */
11
+ export function withAnnotations(annotations) {
12
+ return aspect.on(allResources, metadata({ annotations: merge(annotations) }));
13
+ }
14
+ /** Creates a cross-cutting resource metadata aspect. */
15
+ export function withMetadata(options) {
16
+ if (!isPlainObject(options)) {
17
+ throw createDefinitionError('metadata', 'withMetadata(...) options must be an object');
18
+ }
19
+ return aspect.on(allResources, metadata({
20
+ ...(options.labels !== undefined && { labels: merge(options.labels) }),
21
+ ...(options.annotations !== undefined && { annotations: merge(options.annotations) }),
22
+ }));
23
+ }
24
+ //# sourceMappingURL=metadata-aspects.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata-aspects.js","sourceRoot":"","sources":["../../../src/core/aspects/metadata-aspects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AASvF,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAEnD,SAAS,qBAAqB,CAC5B,YAA0C,EAC1C,MAAc;IAEd,OAAO,IAAI,qBAAqB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;AACzD,CAAC;AAED,8DAA8D;AAC9D,MAAM,UAAU,UAAU,CAAC,MAAgB;IACzC,OAAO,MAAM,CAAC,EAAE,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;AACtE,CAAC;AAED,mEAAmE;AACnE,MAAM,UAAU,eAAe,CAC7B,WAA0B;IAE1B,OAAO,MAAM,CAAC,EAAE,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;AAChF,CAAC;AAED,wDAAwD;AACxD,MAAM,UAAU,YAAY,CAAC,OAG5B;IACC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,MAAM,qBAAqB,CAAC,UAAU,EAAE,6CAA6C,CAAC,CAAC;IACzF,CAAC;IACD,OAAO,MAAM,CAAC,EAAE,CACd,YAAY,EACZ,QAAQ,CAAC;QACP,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACtE,GAAG,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS,IAAI,EAAE,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;KACtF,CAAC,CACH,CAAC;AACJ,CAAC"}
@@ -0,0 +1,16 @@
1
+ import type { ResourceAspectMetadata } from './types.js';
2
+ type AspectOverrideFieldKind = 'scalar' | 'object' | 'array';
3
+ /** Factory-owned runtime mirror of a curated writable override schema. */
4
+ export interface AspectOverrideSchemaNode {
5
+ readonly kind: AspectOverrideFieldKind;
6
+ readonly children?: Readonly<Record<string, AspectOverrideSchemaNode>>;
7
+ }
8
+ interface ResourceAspectRuntimeMetadata extends ResourceAspectMetadata {
9
+ readonly overrideSchema?: AspectOverrideSchemaNode;
10
+ }
11
+ /** Merges aspect matching metadata onto a resource object. */
12
+ export declare function setAspectMetadata(resource: WeakKey, metadata: ResourceAspectRuntimeMetadata): void;
13
+ /** Reads aspect matching metadata for a resource object. */
14
+ export declare function getAspectMetadata(resource: WeakKey): ResourceAspectRuntimeMetadata | undefined;
15
+ export {};
16
+ //# sourceMappingURL=metadata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../../src/core/aspects/metadata.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAEzD,KAAK,uBAAuB,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE7D,0EAA0E;AAC1E,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,IAAI,EAAE,uBAAuB,CAAC;IACvC,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC,CAAC;CACxE;AAED,UAAU,6BAA8B,SAAQ,sBAAsB;IACpE,QAAQ,CAAC,cAAc,CAAC,EAAE,wBAAwB,CAAC;CACpD;AAED,8DAA8D;AAC9D,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,OAAO,EACjB,QAAQ,EAAE,6BAA6B,GACtC,IAAI,CAgBN;AAED,4DAA4D;AAC5D,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,OAAO,GAAG,6BAA6B,GAAG,SAAS,CAE9F"}