typekro 0.4.0 → 0.7.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 (1425) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/advanced/index.d.ts +52 -0
  3. package/dist/advanced/index.d.ts.map +1 -0
  4. package/dist/advanced/index.js +60 -0
  5. package/dist/advanced/index.js.map +1 -0
  6. package/dist/alchemy/deployers.d.ts.map +1 -1
  7. package/dist/alchemy/deployers.js +12 -28
  8. package/dist/alchemy/deployers.js.map +1 -1
  9. package/dist/alchemy/index.d.ts +8 -8
  10. package/dist/alchemy/index.d.ts.map +1 -1
  11. package/dist/alchemy/index.js +12 -11
  12. package/dist/alchemy/index.js.map +1 -1
  13. package/dist/alchemy/resolver.d.ts.map +1 -1
  14. package/dist/alchemy/resolver.js +6 -5
  15. package/dist/alchemy/resolver.js.map +1 -1
  16. package/dist/alchemy/resource-registration.d.ts.map +1 -1
  17. package/dist/alchemy/resource-registration.js +20 -8
  18. package/dist/alchemy/resource-registration.js.map +1 -1
  19. package/dist/alchemy/type-inference.d.ts.map +1 -1
  20. package/dist/alchemy/type-inference.js +6 -5
  21. package/dist/alchemy/type-inference.js.map +1 -1
  22. package/dist/alchemy/types.d.ts +1 -1
  23. package/dist/alchemy/types.d.ts.map +1 -1
  24. package/dist/alchemy/utilities.d.ts.map +1 -1
  25. package/dist/alchemy/utilities.js +1 -1
  26. package/dist/alchemy/utilities.js.map +1 -1
  27. package/dist/alchemy/wrapper.d.ts +4 -2
  28. package/dist/alchemy/wrapper.d.ts.map +1 -1
  29. package/dist/alchemy/wrapper.js +2 -1
  30. package/dist/alchemy/wrapper.js.map +1 -1
  31. package/dist/compositions/typekro-runtime/index.d.ts +3 -0
  32. package/dist/compositions/typekro-runtime/index.d.ts.map +1 -0
  33. package/dist/compositions/typekro-runtime/index.js.map +1 -0
  34. package/dist/{core/composition → compositions}/typekro-runtime/typekro-runtime.d.ts +7 -2
  35. package/dist/compositions/typekro-runtime/typekro-runtime.d.ts.map +1 -0
  36. package/dist/compositions/typekro-runtime/typekro-runtime.js +404 -0
  37. package/dist/compositions/typekro-runtime/typekro-runtime.js.map +1 -0
  38. package/dist/compositions/typekro-runtime/types.d.ts +45 -0
  39. package/dist/compositions/typekro-runtime/types.d.ts.map +1 -0
  40. package/dist/compositions/typekro-runtime/types.js.map +1 -0
  41. package/dist/core/composition/context.d.ts +105 -0
  42. package/dist/core/composition/context.d.ts.map +1 -0
  43. package/dist/core/composition/context.js +125 -0
  44. package/dist/core/composition/context.js.map +1 -0
  45. package/dist/core/composition/imperative.d.ts +36 -10
  46. package/dist/core/composition/imperative.d.ts.map +1 -1
  47. package/dist/core/composition/imperative.js +183 -142
  48. package/dist/core/composition/imperative.js.map +1 -1
  49. package/dist/core/composition/index.d.ts +2 -4
  50. package/dist/core/composition/index.d.ts.map +1 -1
  51. package/dist/core/composition/index.js +1 -4
  52. package/dist/core/composition/index.js.map +1 -1
  53. package/dist/core/composition/nested-status-cel.d.ts +50 -0
  54. package/dist/core/composition/nested-status-cel.d.ts.map +1 -0
  55. package/dist/core/composition/nested-status-cel.js +169 -0
  56. package/dist/core/composition/nested-status-cel.js.map +1 -0
  57. package/dist/core/composition-debugger.d.ts +78 -0
  58. package/dist/core/composition-debugger.d.ts.map +1 -0
  59. package/dist/core/composition-debugger.js +142 -0
  60. package/dist/core/composition-debugger.js.map +1 -0
  61. package/dist/core/config/defaults.d.ts +109 -0
  62. package/dist/core/config/defaults.d.ts.map +1 -0
  63. package/dist/core/config/defaults.js +150 -0
  64. package/dist/core/config/defaults.js.map +1 -0
  65. package/dist/core/config/env.d.ts +12 -0
  66. package/dist/core/config/env.d.ts.map +1 -0
  67. package/dist/core/config/env.js +16 -0
  68. package/dist/core/config/env.js.map +1 -0
  69. package/dist/core/config/index.d.ts +3 -0
  70. package/dist/core/config/index.d.ts.map +1 -0
  71. package/dist/core/config/index.js +3 -0
  72. package/dist/core/config/index.js.map +1 -0
  73. package/dist/core/constants/brands.d.ts +4 -57
  74. package/dist/core/constants/brands.d.ts.map +1 -1
  75. package/dist/core/constants/brands.js +4 -60
  76. package/dist/core/constants/brands.js.map +1 -1
  77. package/dist/core/containers/build.d.ts +50 -0
  78. package/dist/core/containers/build.d.ts.map +1 -0
  79. package/dist/core/containers/build.js +146 -0
  80. package/dist/core/containers/build.js.map +1 -0
  81. package/dist/core/containers/errors.d.ts +14 -0
  82. package/dist/core/containers/errors.d.ts.map +1 -0
  83. package/dist/core/containers/errors.js +48 -0
  84. package/dist/core/containers/errors.js.map +1 -0
  85. package/dist/core/containers/exec.d.ts +36 -0
  86. package/dist/core/containers/exec.d.ts.map +1 -0
  87. package/dist/core/containers/exec.js +110 -0
  88. package/dist/core/containers/exec.js.map +1 -0
  89. package/dist/core/containers/index.d.ts +21 -0
  90. package/dist/core/containers/index.d.ts.map +1 -0
  91. package/dist/core/containers/index.js +20 -0
  92. package/dist/core/containers/index.js.map +1 -0
  93. package/dist/core/containers/registries/ecr.d.ts +22 -0
  94. package/dist/core/containers/registries/ecr.d.ts.map +1 -0
  95. package/dist/core/containers/registries/ecr.js +118 -0
  96. package/dist/core/containers/registries/ecr.js.map +1 -0
  97. package/dist/core/containers/registries/index.d.ts +9 -0
  98. package/dist/core/containers/registries/index.d.ts.map +1 -0
  99. package/dist/core/containers/registries/index.js +23 -0
  100. package/dist/core/containers/registries/index.js.map +1 -0
  101. package/dist/core/containers/registries/orbstack.d.ts +14 -0
  102. package/dist/core/containers/registries/orbstack.d.ts.map +1 -0
  103. package/dist/core/containers/registries/orbstack.js +24 -0
  104. package/dist/core/containers/registries/orbstack.js.map +1 -0
  105. package/dist/core/containers/registries/types.d.ts +94 -0
  106. package/dist/core/containers/registries/types.d.ts.map +1 -0
  107. package/dist/core/containers/registries/types.js +11 -0
  108. package/dist/core/containers/registries/types.js.map +1 -0
  109. package/dist/core/dependencies/graph.d.ts +4 -0
  110. package/dist/core/dependencies/graph.d.ts.map +1 -1
  111. package/dist/core/dependencies/graph.js +10 -4
  112. package/dist/core/dependencies/graph.js.map +1 -1
  113. package/dist/core/dependencies/resolver.d.ts +28 -0
  114. package/dist/core/dependencies/resolver.d.ts.map +1 -1
  115. package/dist/core/dependencies/resolver.js +141 -8
  116. package/dist/core/dependencies/resolver.js.map +1 -1
  117. package/dist/core/deployment/client-provider-manager.d.ts +40 -0
  118. package/dist/core/deployment/client-provider-manager.d.ts.map +1 -0
  119. package/dist/core/deployment/client-provider-manager.js +63 -0
  120. package/dist/core/deployment/client-provider-manager.js.map +1 -0
  121. package/dist/core/deployment/closure-planner.d.ts +20 -0
  122. package/dist/core/deployment/closure-planner.d.ts.map +1 -0
  123. package/dist/core/deployment/closure-planner.js +96 -0
  124. package/dist/core/deployment/closure-planner.js.map +1 -0
  125. package/dist/core/deployment/crd-manager.d.ts +52 -0
  126. package/dist/core/deployment/crd-manager.d.ts.map +1 -0
  127. package/dist/core/deployment/crd-manager.js +227 -0
  128. package/dist/core/deployment/crd-manager.js.map +1 -0
  129. package/dist/core/deployment/debug-logger.d.ts +3 -14
  130. package/dist/core/deployment/debug-logger.d.ts.map +1 -1
  131. package/dist/core/deployment/debug-logger.js +41 -12
  132. package/dist/core/deployment/debug-logger.js.map +1 -1
  133. package/dist/core/deployment/direct-factory.d.ts +36 -8
  134. package/dist/core/deployment/direct-factory.d.ts.map +1 -1
  135. package/dist/core/deployment/direct-factory.js +355 -164
  136. package/dist/core/deployment/direct-factory.js.map +1 -1
  137. package/dist/core/deployment/engine.d.ts +85 -65
  138. package/dist/core/deployment/engine.d.ts.map +1 -1
  139. package/dist/core/deployment/engine.js +549 -1704
  140. package/dist/core/deployment/engine.js.map +1 -1
  141. package/dist/core/deployment/errors.d.ts +30 -0
  142. package/dist/core/deployment/errors.d.ts.map +1 -0
  143. package/dist/core/deployment/errors.js +84 -0
  144. package/dist/core/deployment/errors.js.map +1 -0
  145. package/dist/core/deployment/event-filter.d.ts.map +1 -1
  146. package/dist/core/deployment/event-filter.js +16 -12
  147. package/dist/core/deployment/event-filter.js.map +1 -1
  148. package/dist/core/deployment/event-monitor.d.ts +3 -3
  149. package/dist/core/deployment/event-monitor.d.ts.map +1 -1
  150. package/dist/core/deployment/event-monitor.js +127 -49
  151. package/dist/core/deployment/event-monitor.js.map +1 -1
  152. package/dist/core/deployment/index.d.ts +5 -2
  153. package/dist/core/deployment/index.d.ts.map +1 -1
  154. package/dist/core/deployment/index.js +5 -3
  155. package/dist/core/deployment/index.js.map +1 -1
  156. package/dist/core/deployment/k8s-helpers.d.ts +44 -0
  157. package/dist/core/deployment/k8s-helpers.d.ts.map +1 -0
  158. package/dist/core/deployment/k8s-helpers.js +109 -0
  159. package/dist/core/deployment/k8s-helpers.js.map +1 -0
  160. package/dist/core/deployment/kro-factory.d.ts +35 -22
  161. package/dist/core/deployment/kro-factory.d.ts.map +1 -1
  162. package/dist/core/deployment/kro-factory.js +450 -375
  163. package/dist/core/deployment/kro-factory.js.map +1 -1
  164. package/dist/core/deployment/kro-readiness.d.ts +54 -0
  165. package/dist/core/deployment/kro-readiness.d.ts.map +1 -0
  166. package/dist/core/deployment/kro-readiness.js +149 -0
  167. package/dist/core/deployment/kro-readiness.js.map +1 -0
  168. package/dist/core/deployment/nested-composition-status.d.ts +33 -0
  169. package/dist/core/deployment/nested-composition-status.d.ts.map +1 -0
  170. package/dist/core/deployment/nested-composition-status.js +101 -0
  171. package/dist/core/deployment/nested-composition-status.js.map +1 -0
  172. package/dist/core/deployment/readiness-waiter.d.ts +60 -0
  173. package/dist/core/deployment/readiness-waiter.d.ts.map +1 -0
  174. package/dist/core/deployment/readiness-waiter.js +262 -0
  175. package/dist/core/deployment/readiness-waiter.js.map +1 -0
  176. package/dist/core/deployment/readiness.d.ts +3 -9
  177. package/dist/core/deployment/readiness.d.ts.map +1 -1
  178. package/dist/core/deployment/readiness.js +12 -28
  179. package/dist/core/deployment/readiness.js.map +1 -1
  180. package/dist/core/deployment/resource-applier.d.ts +58 -0
  181. package/dist/core/deployment/resource-applier.d.ts.map +1 -0
  182. package/dist/core/deployment/resource-applier.js +385 -0
  183. package/dist/core/deployment/resource-applier.js.map +1 -0
  184. package/dist/core/deployment/rollback-manager.d.ts +19 -2
  185. package/dist/core/deployment/rollback-manager.d.ts.map +1 -1
  186. package/dist/core/deployment/rollback-manager.js +146 -11
  187. package/dist/core/deployment/rollback-manager.js.map +1 -1
  188. package/dist/core/deployment/shared-utilities.d.ts +38 -9
  189. package/dist/core/deployment/shared-utilities.d.ts.map +1 -1
  190. package/dist/core/deployment/shared-utilities.js +92 -22
  191. package/dist/core/deployment/shared-utilities.js.map +1 -1
  192. package/dist/core/deployment/status-hydrator.d.ts.map +1 -1
  193. package/dist/core/deployment/status-hydrator.js +13 -10
  194. package/dist/core/deployment/status-hydrator.js.map +1 -1
  195. package/dist/core/deployment/strategies/alchemy-strategy.d.ts.map +1 -1
  196. package/dist/core/deployment/strategies/alchemy-strategy.js +16 -9
  197. package/dist/core/deployment/strategies/alchemy-strategy.js.map +1 -1
  198. package/dist/core/deployment/strategies/base-strategy.d.ts +14 -0
  199. package/dist/core/deployment/strategies/base-strategy.d.ts.map +1 -1
  200. package/dist/core/deployment/strategies/base-strategy.js +325 -244
  201. package/dist/core/deployment/strategies/base-strategy.js.map +1 -1
  202. package/dist/core/deployment/strategies/direct-strategy.d.ts +10 -4
  203. package/dist/core/deployment/strategies/direct-strategy.d.ts.map +1 -1
  204. package/dist/core/deployment/strategies/direct-strategy.js +140 -33
  205. package/dist/core/deployment/strategies/direct-strategy.js.map +1 -1
  206. package/dist/core/deployment/strategies/kro-strategy.d.ts +13 -8
  207. package/dist/core/deployment/strategies/kro-strategy.d.ts.map +1 -1
  208. package/dist/core/deployment/strategies/kro-strategy.js +51 -148
  209. package/dist/core/deployment/strategies/kro-strategy.js.map +1 -1
  210. package/dist/core/errors.d.ts +134 -83
  211. package/dist/core/errors.d.ts.map +1 -1
  212. package/dist/core/errors.js +177 -300
  213. package/dist/core/errors.js.map +1 -1
  214. package/dist/core/expressions/analysis/analyzer.d.ts +155 -0
  215. package/dist/core/expressions/analysis/analyzer.d.ts.map +1 -0
  216. package/dist/core/expressions/analysis/analyzer.js +540 -0
  217. package/dist/core/expressions/analysis/analyzer.js.map +1 -0
  218. package/dist/core/expressions/analysis/array-method-converters.d.ts +19 -0
  219. package/dist/core/expressions/analysis/array-method-converters.d.ts.map +1 -0
  220. package/dist/core/expressions/analysis/array-method-converters.js +175 -0
  221. package/dist/core/expressions/analysis/array-method-converters.js.map +1 -0
  222. package/dist/core/expressions/analysis/ast-helpers.d.ts +49 -0
  223. package/dist/core/expressions/analysis/ast-helpers.d.ts.map +1 -0
  224. package/dist/core/expressions/analysis/ast-helpers.js +106 -0
  225. package/dist/core/expressions/analysis/ast-helpers.js.map +1 -0
  226. package/dist/core/expressions/analysis/ast-node-converters.d.ts +15 -0
  227. package/dist/core/expressions/analysis/ast-node-converters.d.ts.map +1 -0
  228. package/dist/core/expressions/analysis/ast-node-converters.js +123 -0
  229. package/dist/core/expressions/analysis/ast-node-converters.js.map +1 -0
  230. package/dist/core/expressions/analysis/ast-type-guards.d.ts +14 -0
  231. package/dist/core/expressions/analysis/ast-type-guards.d.ts.map +1 -0
  232. package/dist/core/expressions/analysis/ast-type-guards.js +15 -0
  233. package/dist/core/expressions/analysis/ast-type-guards.js.map +1 -0
  234. package/dist/core/expressions/{cache.d.ts → analysis/cache.d.ts} +1 -1
  235. package/dist/core/expressions/analysis/cache.d.ts.map +1 -0
  236. package/dist/core/expressions/{cache.js → analysis/cache.js} +13 -13
  237. package/dist/core/expressions/analysis/cache.js.map +1 -0
  238. package/dist/core/expressions/analysis/call-expression-converters.d.ts +18 -0
  239. package/dist/core/expressions/analysis/call-expression-converters.d.ts.map +1 -0
  240. package/dist/core/expressions/analysis/call-expression-converters.js +220 -0
  241. package/dist/core/expressions/analysis/call-expression-converters.js.map +1 -0
  242. package/dist/core/expressions/analysis/cel-emitter.d.ts +85 -0
  243. package/dist/core/expressions/analysis/cel-emitter.d.ts.map +1 -0
  244. package/dist/core/expressions/analysis/cel-emitter.js +455 -0
  245. package/dist/core/expressions/analysis/cel-emitter.js.map +1 -0
  246. package/dist/core/expressions/analysis/expression-classifier.d.ts +77 -0
  247. package/dist/core/expressions/analysis/expression-classifier.d.ts.map +1 -0
  248. package/dist/core/expressions/analysis/expression-classifier.js +487 -0
  249. package/dist/core/expressions/analysis/expression-classifier.js.map +1 -0
  250. package/dist/core/expressions/analysis/fn-toString-self-test.d.ts +146 -0
  251. package/dist/core/expressions/analysis/fn-toString-self-test.d.ts.map +1 -0
  252. package/dist/core/expressions/analysis/fn-toString-self-test.js +243 -0
  253. package/dist/core/expressions/analysis/fn-toString-self-test.js.map +1 -0
  254. package/dist/core/expressions/analysis/operator-utils.d.ts +35 -0
  255. package/dist/core/expressions/analysis/operator-utils.d.ts.map +1 -0
  256. package/dist/core/expressions/analysis/operator-utils.js +167 -0
  257. package/dist/core/expressions/analysis/operator-utils.js.map +1 -0
  258. package/dist/core/expressions/analysis/parse-core.d.ts +63 -0
  259. package/dist/core/expressions/analysis/parse-core.d.ts.map +1 -0
  260. package/dist/core/expressions/analysis/parse-core.js +115 -0
  261. package/dist/core/expressions/analysis/parse-core.js.map +1 -0
  262. package/dist/core/expressions/{parser.d.ts → analysis/parser.d.ts} +2 -38
  263. package/dist/core/expressions/analysis/parser.d.ts.map +1 -0
  264. package/dist/core/expressions/{parser.js → analysis/parser.js} +20 -80
  265. package/dist/core/expressions/analysis/parser.js.map +1 -0
  266. package/dist/core/expressions/analysis/scope-resolver.d.ts +57 -0
  267. package/dist/core/expressions/analysis/scope-resolver.d.ts.map +1 -0
  268. package/dist/core/expressions/analysis/scope-resolver.js +440 -0
  269. package/dist/core/expressions/analysis/scope-resolver.js.map +1 -0
  270. package/dist/core/expressions/analysis/shared-types.d.ts +132 -0
  271. package/dist/core/expressions/analysis/shared-types.d.ts.map +1 -0
  272. package/dist/core/expressions/analysis/shared-types.js +13 -0
  273. package/dist/core/expressions/analysis/shared-types.js.map +1 -0
  274. package/dist/core/expressions/analysis/source-map.d.ts.map +1 -0
  275. package/dist/core/expressions/{source-map.js → analysis/source-map.js} +16 -17
  276. package/dist/core/expressions/analysis/source-map.js.map +1 -0
  277. package/dist/core/expressions/analysis/string-method-converters.d.ts +27 -0
  278. package/dist/core/expressions/analysis/string-method-converters.d.ts.map +1 -0
  279. package/dist/core/expressions/analysis/string-method-converters.js +208 -0
  280. package/dist/core/expressions/analysis/string-method-converters.js.map +1 -0
  281. package/dist/core/expressions/{types.d.ts → analysis/types.d.ts} +5 -5
  282. package/dist/core/expressions/analysis/types.d.ts.map +1 -0
  283. package/dist/core/expressions/analysis/types.js.map +1 -0
  284. package/dist/core/expressions/composition/composition-analyzer-helpers.d.ts +92 -0
  285. package/dist/core/expressions/composition/composition-analyzer-helpers.d.ts.map +1 -0
  286. package/dist/core/expressions/composition/composition-analyzer-helpers.js +301 -0
  287. package/dist/core/expressions/composition/composition-analyzer-helpers.js.map +1 -0
  288. package/dist/core/expressions/composition/composition-analyzer-ternary.d.ts +77 -0
  289. package/dist/core/expressions/composition/composition-analyzer-ternary.d.ts.map +1 -0
  290. package/dist/core/expressions/composition/composition-analyzer-ternary.js +364 -0
  291. package/dist/core/expressions/composition/composition-analyzer-ternary.js.map +1 -0
  292. package/dist/core/expressions/composition/composition-analyzer-traversal.d.ts +37 -0
  293. package/dist/core/expressions/composition/composition-analyzer-traversal.d.ts.map +1 -0
  294. package/dist/core/expressions/composition/composition-analyzer-traversal.js +375 -0
  295. package/dist/core/expressions/composition/composition-analyzer-traversal.js.map +1 -0
  296. package/dist/core/expressions/composition/composition-analyzer-types.d.ts +140 -0
  297. package/dist/core/expressions/composition/composition-analyzer-types.d.ts.map +1 -0
  298. package/dist/core/expressions/composition/composition-analyzer-types.js +8 -0
  299. package/dist/core/expressions/composition/composition-analyzer-types.js.map +1 -0
  300. package/dist/core/expressions/composition/composition-analyzer.d.ts +39 -0
  301. package/dist/core/expressions/composition/composition-analyzer.d.ts.map +1 -0
  302. package/dist/core/expressions/composition/composition-analyzer.js +144 -0
  303. package/dist/core/expressions/composition/composition-analyzer.js.map +1 -0
  304. package/dist/core/expressions/composition/context-tracker.d.ts +39 -0
  305. package/dist/core/expressions/composition/context-tracker.d.ts.map +1 -0
  306. package/dist/core/expressions/composition/context-tracker.js +64 -0
  307. package/dist/core/expressions/composition/context-tracker.js.map +1 -0
  308. package/dist/core/expressions/composition/expression-analyzer.d.ts +101 -0
  309. package/dist/core/expressions/composition/expression-analyzer.d.ts.map +1 -0
  310. package/dist/core/expressions/composition/expression-analyzer.js +425 -0
  311. package/dist/core/expressions/composition/expression-analyzer.js.map +1 -0
  312. package/dist/core/expressions/composition/imperative-analyzer.d.ts +29 -0
  313. package/dist/core/expressions/composition/imperative-analyzer.d.ts.map +1 -0
  314. package/dist/core/expressions/{imperative-analyzer.js → composition/imperative-analyzer.js} +126 -23
  315. package/dist/core/expressions/composition/imperative-analyzer.js.map +1 -0
  316. package/dist/core/expressions/composition/index.d.ts +17 -0
  317. package/dist/core/expressions/composition/index.d.ts.map +1 -0
  318. package/dist/core/expressions/composition/index.js +18 -0
  319. package/dist/core/expressions/composition/index.js.map +1 -0
  320. package/dist/core/expressions/composition/integration-hooks.d.ts +71 -0
  321. package/dist/core/expressions/composition/integration-hooks.d.ts.map +1 -0
  322. package/dist/core/expressions/composition/integration-hooks.js +248 -0
  323. package/dist/core/expressions/composition/integration-hooks.js.map +1 -0
  324. package/dist/core/expressions/composition/scope-manager.d.ts +93 -0
  325. package/dist/core/expressions/composition/scope-manager.d.ts.map +1 -0
  326. package/dist/core/expressions/composition/scope-manager.js +215 -0
  327. package/dist/core/expressions/composition/scope-manager.js.map +1 -0
  328. package/dist/core/expressions/composition/types.d.ts +41 -0
  329. package/dist/core/expressions/composition/types.d.ts.map +1 -0
  330. package/dist/core/expressions/composition/types.js +7 -0
  331. package/dist/core/expressions/composition/types.js.map +1 -0
  332. package/dist/core/expressions/{conditional-expression-processor.d.ts → conditional/conditional-expression-processor.d.ts} +3 -3
  333. package/dist/core/expressions/conditional/conditional-expression-processor.d.ts.map +1 -0
  334. package/dist/core/expressions/{conditional-expression-processor.js → conditional/conditional-expression-processor.js} +59 -50
  335. package/dist/core/expressions/conditional/conditional-expression-processor.js.map +1 -0
  336. package/dist/core/expressions/{conditional-integration.d.ts → conditional/conditional-integration.d.ts} +13 -35
  337. package/dist/core/expressions/conditional/conditional-integration.d.ts.map +1 -0
  338. package/dist/core/expressions/{conditional-integration.js → conditional/conditional-integration.js} +92 -86
  339. package/dist/core/expressions/conditional/conditional-integration.js.map +1 -0
  340. package/dist/core/expressions/{context-aware-generator.d.ts → context/context-aware-generator.d.ts} +4 -28
  341. package/dist/core/expressions/context/context-aware-generator.d.ts.map +1 -0
  342. package/dist/core/expressions/{context-aware-generator.js → context/context-aware-generator.js} +27 -121
  343. package/dist/core/expressions/context/context-aware-generator.js.map +1 -0
  344. package/dist/core/expressions/{context-detector.d.ts → context/context-detector.d.ts} +7 -13
  345. package/dist/core/expressions/context/context-detector.d.ts.map +1 -0
  346. package/dist/core/expressions/{context-detector.js → context/context-detector.js} +45 -63
  347. package/dist/core/expressions/context/context-detector.js.map +1 -0
  348. package/dist/core/expressions/{context-validator.d.ts → context/context-validator.d.ts} +5 -36
  349. package/dist/core/expressions/context/context-validator.d.ts.map +1 -0
  350. package/dist/core/expressions/{context-validator.js → context/context-validator.js} +55 -124
  351. package/dist/core/expressions/context/context-validator.js.map +1 -0
  352. package/dist/core/expressions/{cel-conversion-engine.d.ts → factory/cel-conversion-engine.d.ts} +3 -3
  353. package/dist/core/expressions/factory/cel-conversion-engine.d.ts.map +1 -0
  354. package/dist/core/expressions/{cel-conversion-engine.js → factory/cel-conversion-engine.js} +10 -9
  355. package/dist/core/expressions/factory/cel-conversion-engine.js.map +1 -0
  356. package/dist/core/expressions/factory/dependency-tracker.d.ts +222 -0
  357. package/dist/core/expressions/factory/dependency-tracker.d.ts.map +1 -0
  358. package/dist/core/expressions/factory/dependency-tracker.js +512 -0
  359. package/dist/core/expressions/factory/dependency-tracker.js.map +1 -0
  360. package/dist/core/expressions/{factory-integration.d.ts → factory/factory-integration.d.ts} +3 -18
  361. package/dist/core/expressions/factory/factory-integration.d.ts.map +1 -0
  362. package/dist/core/expressions/{factory-integration.js → factory/factory-integration.js} +28 -29
  363. package/dist/core/expressions/factory/factory-integration.js.map +1 -0
  364. package/dist/core/expressions/{factory-pattern-handler.d.ts → factory/factory-pattern-handler.d.ts} +8 -8
  365. package/dist/core/expressions/factory/factory-pattern-handler.d.ts.map +1 -0
  366. package/dist/core/expressions/{factory-pattern-handler.js → factory/factory-pattern-handler.js} +101 -73
  367. package/dist/core/expressions/factory/factory-pattern-handler.js.map +1 -0
  368. package/dist/core/expressions/{migration-helpers.d.ts → factory/migration-helpers.d.ts} +4 -4
  369. package/dist/core/expressions/factory/migration-helpers.d.ts.map +1 -0
  370. package/dist/core/expressions/{migration-helpers.js → factory/migration-helpers.js} +28 -26
  371. package/dist/core/expressions/factory/migration-helpers.js.map +1 -0
  372. package/dist/core/expressions/factory/resource-analyzer.d.ts +139 -0
  373. package/dist/core/expressions/factory/resource-analyzer.d.ts.map +1 -0
  374. package/dist/core/expressions/factory/resource-analyzer.js +286 -0
  375. package/dist/core/expressions/factory/resource-analyzer.js.map +1 -0
  376. package/dist/core/expressions/factory/resource-type-validator.d.ts +149 -0
  377. package/dist/core/expressions/factory/resource-type-validator.d.ts.map +1 -0
  378. package/dist/core/expressions/factory/resource-type-validator.js +318 -0
  379. package/dist/core/expressions/factory/resource-type-validator.js.map +1 -0
  380. package/dist/core/expressions/factory/status-ast-utils.d.ts +36 -0
  381. package/dist/core/expressions/factory/status-ast-utils.d.ts.map +1 -0
  382. package/dist/core/expressions/factory/status-ast-utils.js +320 -0
  383. package/dist/core/expressions/factory/status-ast-utils.js.map +1 -0
  384. package/dist/core/expressions/factory/status-builder-analyzer.d.ts +91 -0
  385. package/dist/core/expressions/factory/status-builder-analyzer.d.ts.map +1 -0
  386. package/dist/core/expressions/factory/status-builder-analyzer.js +374 -0
  387. package/dist/core/expressions/factory/status-builder-analyzer.js.map +1 -0
  388. package/dist/core/expressions/factory/status-builder-types.d.ts +166 -0
  389. package/dist/core/expressions/factory/status-builder-types.d.ts.map +1 -0
  390. package/dist/core/expressions/factory/status-builder-types.js +8 -0
  391. package/dist/core/expressions/factory/status-builder-types.js.map +1 -0
  392. package/dist/core/expressions/factory/status-cel-generation.d.ts +67 -0
  393. package/dist/core/expressions/factory/status-cel-generation.d.ts.map +1 -0
  394. package/dist/core/expressions/factory/status-cel-generation.js +330 -0
  395. package/dist/core/expressions/factory/status-cel-generation.js.map +1 -0
  396. package/dist/core/expressions/factory/status-field-analysis.d.ts +57 -0
  397. package/dist/core/expressions/factory/status-field-analysis.d.ts.map +1 -0
  398. package/dist/core/expressions/factory/status-field-analysis.js +475 -0
  399. package/dist/core/expressions/factory/status-field-analysis.js.map +1 -0
  400. package/dist/core/expressions/index.d.ts +39 -51
  401. package/dist/core/expressions/index.d.ts.map +1 -1
  402. package/dist/core/expressions/index.js +46 -47
  403. package/dist/core/expressions/index.js.map +1 -1
  404. package/dist/core/expressions/{magic-assignable-analyzer.d.ts → magic-proxy/magic-assignable-analyzer.d.ts} +5 -5
  405. package/dist/core/expressions/magic-proxy/magic-assignable-analyzer.d.ts.map +1 -0
  406. package/dist/core/expressions/{magic-assignable-analyzer.js → magic-proxy/magic-assignable-analyzer.js} +29 -24
  407. package/dist/core/expressions/magic-proxy/magic-assignable-analyzer.js.map +1 -0
  408. package/dist/core/expressions/{magic-proxy-analyzer.d.ts → magic-proxy/magic-proxy-analyzer.d.ts} +15 -68
  409. package/dist/core/expressions/magic-proxy/magic-proxy-analyzer.d.ts.map +1 -0
  410. package/dist/core/expressions/{magic-proxy-analyzer.js → magic-proxy/magic-proxy-analyzer.js} +45 -196
  411. package/dist/core/expressions/magic-proxy/magic-proxy-analyzer.js.map +1 -0
  412. package/dist/core/expressions/magic-proxy/magic-proxy-ast.d.ts +44 -0
  413. package/dist/core/expressions/magic-proxy/magic-proxy-ast.d.ts.map +1 -0
  414. package/dist/core/expressions/magic-proxy/magic-proxy-ast.js +175 -0
  415. package/dist/core/expressions/magic-proxy/magic-proxy-ast.js.map +1 -0
  416. package/dist/core/expressions/{magic-proxy-detector.d.ts → magic-proxy/magic-proxy-detector.d.ts} +7 -7
  417. package/dist/core/expressions/magic-proxy/magic-proxy-detector.d.ts.map +1 -0
  418. package/dist/core/expressions/{magic-proxy-detector.js → magic-proxy/magic-proxy-detector.js} +36 -28
  419. package/dist/core/expressions/magic-proxy/magic-proxy-detector.js.map +1 -0
  420. package/dist/core/expressions/magic-proxy/magic-proxy-types.d.ts +36 -0
  421. package/dist/core/expressions/magic-proxy/magic-proxy-types.d.ts.map +1 -0
  422. package/dist/core/expressions/magic-proxy/magic-proxy-types.js +8 -0
  423. package/dist/core/expressions/magic-proxy/magic-proxy-types.js.map +1 -0
  424. package/dist/core/expressions/magic-proxy/optionality-analysis.d.ts +54 -0
  425. package/dist/core/expressions/magic-proxy/optionality-analysis.d.ts.map +1 -0
  426. package/dist/core/expressions/magic-proxy/optionality-analysis.js +239 -0
  427. package/dist/core/expressions/magic-proxy/optionality-analysis.js.map +1 -0
  428. package/dist/core/expressions/magic-proxy/optionality-cel-generation.d.ts +51 -0
  429. package/dist/core/expressions/magic-proxy/optionality-cel-generation.d.ts.map +1 -0
  430. package/dist/core/expressions/magic-proxy/optionality-cel-generation.js +201 -0
  431. package/dist/core/expressions/magic-proxy/optionality-cel-generation.js.map +1 -0
  432. package/dist/core/expressions/magic-proxy/optionality-handler.d.ts +119 -0
  433. package/dist/core/expressions/magic-proxy/optionality-handler.d.ts.map +1 -0
  434. package/dist/core/expressions/magic-proxy/optionality-handler.js +321 -0
  435. package/dist/core/expressions/magic-proxy/optionality-handler.js.map +1 -0
  436. package/dist/core/expressions/magic-proxy/optionality-hydration.d.ts +84 -0
  437. package/dist/core/expressions/magic-proxy/optionality-hydration.d.ts.map +1 -0
  438. package/dist/core/expressions/magic-proxy/optionality-hydration.js +378 -0
  439. package/dist/core/expressions/magic-proxy/optionality-hydration.js.map +1 -0
  440. package/dist/core/expressions/magic-proxy/optionality-optional-chaining.d.ts +61 -0
  441. package/dist/core/expressions/magic-proxy/optionality-optional-chaining.d.ts.map +1 -0
  442. package/dist/core/expressions/magic-proxy/optionality-optional-chaining.js +218 -0
  443. package/dist/core/expressions/magic-proxy/optionality-optional-chaining.js.map +1 -0
  444. package/dist/core/expressions/magic-proxy/optionality-types.d.ts +206 -0
  445. package/dist/core/expressions/magic-proxy/optionality-types.d.ts.map +1 -0
  446. package/dist/core/expressions/magic-proxy/optionality-types.js +9 -0
  447. package/dist/core/expressions/magic-proxy/optionality-types.js.map +1 -0
  448. package/dist/core/expressions/validation/compile-time-checker.d.ts +74 -0
  449. package/dist/core/expressions/validation/compile-time-checker.d.ts.map +1 -0
  450. package/dist/core/expressions/{compile-time-validation.js → validation/compile-time-checker.js} +44 -91
  451. package/dist/core/expressions/validation/compile-time-checker.js.map +1 -0
  452. package/dist/core/expressions/validation/compile-time-errors.d.ts +70 -0
  453. package/dist/core/expressions/validation/compile-time-errors.d.ts.map +1 -0
  454. package/dist/core/expressions/validation/compile-time-errors.js +63 -0
  455. package/dist/core/expressions/validation/compile-time-errors.js.map +1 -0
  456. package/dist/core/expressions/validation/compile-time-types.d.ts +147 -0
  457. package/dist/core/expressions/validation/compile-time-types.d.ts.map +1 -0
  458. package/dist/core/expressions/validation/compile-time-types.js +8 -0
  459. package/dist/core/expressions/validation/compile-time-types.js.map +1 -0
  460. package/dist/core/expressions/validation/compile-time-validation.d.ts +13 -0
  461. package/dist/core/expressions/validation/compile-time-validation.d.ts.map +1 -0
  462. package/dist/core/expressions/validation/compile-time-validation.js +14 -0
  463. package/dist/core/expressions/validation/compile-time-validation.js.map +1 -0
  464. package/dist/core/expressions/validation/kubernetes-field-types.d.ts +35 -0
  465. package/dist/core/expressions/validation/kubernetes-field-types.d.ts.map +1 -0
  466. package/dist/core/expressions/validation/kubernetes-field-types.js +230 -0
  467. package/dist/core/expressions/validation/kubernetes-field-types.js.map +1 -0
  468. package/dist/core/expressions/validation/resource-field-utils.d.ts +69 -0
  469. package/dist/core/expressions/validation/resource-field-utils.d.ts.map +1 -0
  470. package/dist/core/expressions/validation/resource-field-utils.js +280 -0
  471. package/dist/core/expressions/validation/resource-field-utils.js.map +1 -0
  472. package/dist/core/expressions/{resource-validation.d.ts → validation/resource-validation-types.d.ts} +6 -63
  473. package/dist/core/expressions/validation/resource-validation-types.d.ts.map +1 -0
  474. package/dist/core/expressions/validation/resource-validation-types.js +69 -0
  475. package/dist/core/expressions/validation/resource-validation-types.js.map +1 -0
  476. package/dist/core/expressions/validation/resource-validation.d.ts +49 -0
  477. package/dist/core/expressions/validation/resource-validation.d.ts.map +1 -0
  478. package/dist/core/expressions/validation/resource-validation.js +288 -0
  479. package/dist/core/expressions/validation/resource-validation.js.map +1 -0
  480. package/dist/core/expressions/{type-inference.d.ts → validation/type-inference-types.d.ts} +34 -88
  481. package/dist/core/expressions/validation/type-inference-types.d.ts.map +1 -0
  482. package/dist/core/expressions/validation/type-inference-types.js +52 -0
  483. package/dist/core/expressions/validation/type-inference-types.js.map +1 -0
  484. package/dist/core/expressions/validation/type-inference.d.ts +86 -0
  485. package/dist/core/expressions/validation/type-inference.d.ts.map +1 -0
  486. package/dist/core/expressions/{type-inference.js → validation/type-inference.js} +66 -299
  487. package/dist/core/expressions/validation/type-inference.js.map +1 -0
  488. package/dist/core/expressions/{type-safety.d.ts → validation/type-safety.d.ts} +6 -5
  489. package/dist/core/expressions/validation/type-safety.d.ts.map +1 -0
  490. package/dist/core/expressions/{type-safety.js → validation/type-safety.js} +34 -19
  491. package/dist/core/expressions/validation/type-safety.js.map +1 -0
  492. package/dist/core/kubernetes/api.d.ts.map +1 -1
  493. package/dist/core/kubernetes/api.js +21 -12
  494. package/dist/core/kubernetes/api.js.map +1 -1
  495. package/dist/core/kubernetes/bun-api-client.d.ts +36 -14
  496. package/dist/core/kubernetes/bun-api-client.d.ts.map +1 -1
  497. package/dist/core/kubernetes/bun-api-client.js +47 -24
  498. package/dist/core/kubernetes/bun-api-client.js.map +1 -1
  499. package/dist/core/kubernetes/bun-http-library.d.ts +69 -3
  500. package/dist/core/kubernetes/bun-http-library.d.ts.map +1 -1
  501. package/dist/core/kubernetes/bun-http-library.js +118 -11
  502. package/dist/core/kubernetes/bun-http-library.js.map +1 -1
  503. package/dist/core/kubernetes/client-provider.d.ts +121 -35
  504. package/dist/core/kubernetes/client-provider.d.ts.map +1 -1
  505. package/dist/core/kubernetes/client-provider.js +181 -65
  506. package/dist/core/kubernetes/client-provider.js.map +1 -1
  507. package/dist/core/kubernetes/errors.d.ts +5 -5
  508. package/dist/core/kubernetes/errors.js +5 -5
  509. package/dist/core/kubernetes/index.d.ts +8 -7
  510. package/dist/core/kubernetes/index.d.ts.map +1 -1
  511. package/dist/core/kubernetes/index.js +8 -8
  512. package/dist/core/kubernetes/index.js.map +1 -1
  513. package/dist/core/kubernetes/type-guards.d.ts +1 -1
  514. package/dist/core/kubernetes/type-guards.js +1 -1
  515. package/dist/core/logging/config.d.ts.map +1 -1
  516. package/dist/core/logging/config.js +20 -4
  517. package/dist/core/logging/config.js.map +1 -1
  518. package/dist/core/logging/logger.d.ts +3 -3
  519. package/dist/core/logging/logger.d.ts.map +1 -1
  520. package/dist/core/logging/logger.js +18 -18
  521. package/dist/core/logging/logger.js.map +1 -1
  522. package/dist/core/logging/types.d.ts +13 -8
  523. package/dist/core/logging/types.d.ts.map +1 -1
  524. package/dist/core/metadata/index.d.ts +9 -0
  525. package/dist/core/metadata/index.d.ts.map +1 -0
  526. package/dist/core/metadata/index.js +9 -0
  527. package/dist/core/metadata/index.js.map +1 -0
  528. package/dist/core/metadata/resource-metadata.d.ts +120 -0
  529. package/dist/core/metadata/resource-metadata.d.ts.map +1 -0
  530. package/dist/core/metadata/resource-metadata.js +217 -0
  531. package/dist/core/metadata/resource-metadata.js.map +1 -0
  532. package/dist/core/proxy/create-resource.d.ts +50 -0
  533. package/dist/core/proxy/create-resource.d.ts.map +1 -0
  534. package/dist/core/proxy/create-resource.js +435 -0
  535. package/dist/core/proxy/create-resource.js.map +1 -0
  536. package/dist/core/proxy/index.d.ts +8 -0
  537. package/dist/core/proxy/index.d.ts.map +1 -0
  538. package/dist/core/proxy/index.js +7 -0
  539. package/dist/core/proxy/index.js.map +1 -0
  540. package/dist/core/proxy/known-status-fields.d.ts +27 -0
  541. package/dist/core/proxy/known-status-fields.d.ts.map +1 -0
  542. package/dist/core/proxy/known-status-fields.js +185 -0
  543. package/dist/core/proxy/known-status-fields.js.map +1 -0
  544. package/dist/core/readiness/evaluator-factories.d.ts +100 -0
  545. package/dist/core/readiness/evaluator-factories.d.ts.map +1 -0
  546. package/dist/core/readiness/evaluator-factories.js +168 -0
  547. package/dist/core/readiness/evaluator-factories.js.map +1 -0
  548. package/dist/core/readiness/evaluator.d.ts +21 -0
  549. package/dist/core/readiness/evaluator.d.ts.map +1 -0
  550. package/dist/core/readiness/evaluator.js +38 -0
  551. package/dist/core/readiness/evaluator.js.map +1 -0
  552. package/dist/core/readiness/index.d.ts +3 -0
  553. package/dist/core/readiness/index.d.ts.map +1 -1
  554. package/dist/core/readiness/index.js +2 -0
  555. package/dist/core/readiness/index.js.map +1 -1
  556. package/dist/core/readiness/registry.d.ts +3 -3
  557. package/dist/core/readiness/registry.d.ts.map +1 -1
  558. package/dist/core/readiness/registry.js +2 -0
  559. package/dist/core/readiness/registry.js.map +1 -1
  560. package/dist/core/references/cel-evaluator.d.ts +11 -0
  561. package/dist/core/references/cel-evaluator.d.ts.map +1 -1
  562. package/dist/core/references/cel-evaluator.js +65 -27
  563. package/dist/core/references/cel-evaluator.js.map +1 -1
  564. package/dist/core/references/cel.d.ts +66 -23
  565. package/dist/core/references/cel.d.ts.map +1 -1
  566. package/dist/core/references/cel.js +184 -117
  567. package/dist/core/references/cel.js.map +1 -1
  568. package/dist/core/references/external-refs.d.ts +41 -21
  569. package/dist/core/references/external-refs.d.ts.map +1 -1
  570. package/dist/core/references/external-refs.js +73 -30
  571. package/dist/core/references/external-refs.js.map +1 -1
  572. package/dist/core/references/index.d.ts +5 -4
  573. package/dist/core/references/index.d.ts.map +1 -1
  574. package/dist/core/references/index.js +6 -6
  575. package/dist/core/references/index.js.map +1 -1
  576. package/dist/core/references/resolver.d.ts +15 -11
  577. package/dist/core/references/resolver.d.ts.map +1 -1
  578. package/dist/core/references/resolver.js +203 -159
  579. package/dist/core/references/resolver.js.map +1 -1
  580. package/dist/core/references/schema-proxy.d.ts.map +1 -1
  581. package/dist/core/references/schema-proxy.js +97 -14
  582. package/dist/core/references/schema-proxy.js.map +1 -1
  583. package/dist/core/resources/factory-registry.d.ts +99 -0
  584. package/dist/core/resources/factory-registry.d.ts.map +1 -0
  585. package/dist/core/resources/factory-registry.js +166 -0
  586. package/dist/core/resources/factory-registry.js.map +1 -0
  587. package/dist/core/resources/id.d.ts +44 -0
  588. package/dist/core/resources/id.d.ts.map +1 -0
  589. package/dist/core/resources/id.js +78 -0
  590. package/dist/core/resources/id.js.map +1 -0
  591. package/dist/core/resources/index.d.ts +7 -0
  592. package/dist/core/resources/index.d.ts.map +1 -0
  593. package/dist/core/resources/index.js +6 -0
  594. package/dist/core/resources/index.js.map +1 -0
  595. package/dist/core/{utils → runtime-patches}/crd-patcher.d.ts +1 -1
  596. package/dist/core/runtime-patches/crd-patcher.d.ts.map +1 -0
  597. package/dist/core/runtime-patches/crd-patcher.js +124 -0
  598. package/dist/core/runtime-patches/crd-patcher.js.map +1 -0
  599. package/dist/core/{utils → runtime-patches}/crd-schema-fix.d.ts +39 -2
  600. package/dist/core/runtime-patches/crd-schema-fix.d.ts.map +1 -0
  601. package/dist/core/{utils → runtime-patches}/crd-schema-fix.js +130 -26
  602. package/dist/core/runtime-patches/crd-schema-fix.js.map +1 -0
  603. package/dist/core/runtime-patches/index.d.ts +8 -0
  604. package/dist/core/runtime-patches/index.d.ts.map +1 -0
  605. package/dist/core/runtime-patches/index.js +8 -0
  606. package/dist/core/runtime-patches/index.js.map +1 -0
  607. package/dist/core/{evaluation → serialization}/cel-optimizer.d.ts +2 -2
  608. package/dist/core/serialization/cel-optimizer.d.ts.map +1 -0
  609. package/dist/core/{evaluation → serialization}/cel-optimizer.js +11 -23
  610. package/dist/core/serialization/cel-optimizer.js.map +1 -0
  611. package/dist/core/serialization/cel-references.d.ts +36 -0
  612. package/dist/core/serialization/cel-references.d.ts.map +1 -0
  613. package/dist/core/serialization/cel-references.js +308 -0
  614. package/dist/core/serialization/cel-references.js.map +1 -0
  615. package/dist/core/serialization/core.d.ts +171 -4
  616. package/dist/core/serialization/core.d.ts.map +1 -1
  617. package/dist/core/serialization/core.js +401 -710
  618. package/dist/core/serialization/core.js.map +1 -1
  619. package/dist/core/serialization/index.d.ts +3 -1
  620. package/dist/core/serialization/index.d.ts.map +1 -1
  621. package/dist/core/serialization/index.js +5 -1
  622. package/dist/core/serialization/index.js.map +1 -1
  623. package/dist/core/serialization/schema.d.ts +34 -3
  624. package/dist/core/serialization/schema.d.ts.map +1 -1
  625. package/dist/core/serialization/schema.js +160 -13
  626. package/dist/core/serialization/schema.js.map +1 -1
  627. package/dist/core/serialization/status-analysis-helpers.d.ts +68 -0
  628. package/dist/core/serialization/status-analysis-helpers.d.ts.map +1 -0
  629. package/dist/core/serialization/status-analysis-helpers.js +284 -0
  630. package/dist/core/serialization/status-analysis-helpers.js.map +1 -0
  631. package/dist/core/serialization/status-analysis-pipeline.d.ts +67 -0
  632. package/dist/core/serialization/status-analysis-pipeline.d.ts.map +1 -0
  633. package/dist/core/serialization/status-analysis-pipeline.js +536 -0
  634. package/dist/core/serialization/status-analysis-pipeline.js.map +1 -0
  635. package/dist/core/serialization/validation.d.ts.map +1 -1
  636. package/dist/core/serialization/validation.js +5 -3
  637. package/dist/core/serialization/validation.js.map +1 -1
  638. package/dist/core/serialization/yaml.d.ts +14 -3
  639. package/dist/core/serialization/yaml.d.ts.map +1 -1
  640. package/dist/core/serialization/yaml.js +458 -13
  641. package/dist/core/serialization/yaml.js.map +1 -1
  642. package/dist/core/types/common.d.ts +43 -8
  643. package/dist/core/types/common.d.ts.map +1 -1
  644. package/dist/core/types/composable.d.ts +62 -0
  645. package/dist/core/types/composable.d.ts.map +1 -0
  646. package/dist/core/types/composable.js +51 -0
  647. package/dist/core/types/composable.js.map +1 -0
  648. package/dist/core/types/deployment.d.ts +237 -95
  649. package/dist/core/types/deployment.d.ts.map +1 -1
  650. package/dist/core/types/deployment.js +1 -40
  651. package/dist/core/types/deployment.js.map +1 -1
  652. package/dist/core/types/index.d.ts +7 -10
  653. package/dist/core/types/index.d.ts.map +1 -1
  654. package/dist/core/types/index.js +33 -4
  655. package/dist/core/types/index.js.map +1 -1
  656. package/dist/core/types/kubernetes.d.ts +226 -16
  657. package/dist/core/types/kubernetes.d.ts.map +1 -1
  658. package/dist/core/types/kubernetes.js +11 -1
  659. package/dist/core/types/kubernetes.js.map +1 -1
  660. package/dist/core/types/references.d.ts +27 -1
  661. package/dist/core/types/references.d.ts.map +1 -1
  662. package/dist/core/types/references.js +3 -2
  663. package/dist/core/types/references.js.map +1 -1
  664. package/dist/core/types/resource-graph.d.ts +9 -33
  665. package/dist/core/types/resource-graph.d.ts.map +1 -1
  666. package/dist/core/types/resource-graph.js +2 -2
  667. package/dist/core/types/schema.d.ts +51 -0
  668. package/dist/core/types/schema.d.ts.map +1 -0
  669. package/dist/core/types/schema.js +9 -0
  670. package/dist/core/types/schema.js.map +1 -0
  671. package/dist/core/types/serialization.d.ts +106 -46
  672. package/dist/core/types/serialization.d.ts.map +1 -1
  673. package/dist/core/types/yaml.d.ts +0 -24
  674. package/dist/core/types/yaml.d.ts.map +1 -1
  675. package/dist/core/validation/cel-validator.d.ts +5 -5
  676. package/dist/core/validation/cel-validator.d.ts.map +1 -1
  677. package/dist/core/validation/cel-validator.js +90 -42
  678. package/dist/core/validation/cel-validator.js.map +1 -1
  679. package/dist/core/yaml/path-resolver.d.ts +21 -6
  680. package/dist/core/yaml/path-resolver.d.ts.map +1 -1
  681. package/dist/core/yaml/path-resolver.js +404 -38
  682. package/dist/core/yaml/path-resolver.js.map +1 -1
  683. package/dist/factories/apisix/compositions/apisix-bootstrap.d.ts +19 -15
  684. package/dist/factories/apisix/compositions/apisix-bootstrap.d.ts.map +1 -1
  685. package/dist/factories/apisix/compositions/apisix-bootstrap.js +99 -112
  686. package/dist/factories/apisix/compositions/apisix-bootstrap.js.map +1 -1
  687. package/dist/factories/apisix/resources/helm.d.ts +8 -8
  688. package/dist/factories/apisix/resources/helm.d.ts.map +1 -1
  689. package/dist/factories/apisix/resources/helm.js +20 -47
  690. package/dist/factories/apisix/resources/helm.js.map +1 -1
  691. package/dist/factories/apisix/types.d.ts +35 -2
  692. package/dist/factories/apisix/types.d.ts.map +1 -1
  693. package/dist/factories/apisix/types.js.map +1 -1
  694. package/dist/factories/apisix/utils/admin-credentials.d.ts +43 -0
  695. package/dist/factories/apisix/utils/admin-credentials.d.ts.map +1 -0
  696. package/dist/factories/apisix/utils/admin-credentials.js +82 -0
  697. package/dist/factories/apisix/utils/admin-credentials.js.map +1 -0
  698. package/dist/factories/apisix/utils/helm-values-mapper.d.ts.map +1 -1
  699. package/dist/factories/apisix/utils/helm-values-mapper.js +33 -35
  700. package/dist/factories/apisix/utils/helm-values-mapper.js.map +1 -1
  701. package/dist/factories/apisix/utils/index.d.ts +1 -0
  702. package/dist/factories/apisix/utils/index.d.ts.map +1 -1
  703. package/dist/factories/apisix/utils/index.js +1 -0
  704. package/dist/factories/apisix/utils/index.js.map +1 -1
  705. package/dist/factories/cert-manager/compositions/cert-manager-bootstrap.d.ts +2 -2
  706. package/dist/factories/cert-manager/compositions/cert-manager-bootstrap.d.ts.map +1 -1
  707. package/dist/factories/cert-manager/compositions/cert-manager-bootstrap.js +49 -63
  708. package/dist/factories/cert-manager/compositions/cert-manager-bootstrap.js.map +1 -1
  709. package/dist/factories/cert-manager/resources/certificates.d.ts.map +1 -1
  710. package/dist/factories/cert-manager/resources/certificates.js +12 -47
  711. package/dist/factories/cert-manager/resources/certificates.js.map +1 -1
  712. package/dist/factories/cert-manager/resources/helm.d.ts +2 -22
  713. package/dist/factories/cert-manager/resources/helm.d.ts.map +1 -1
  714. package/dist/factories/cert-manager/resources/helm.js +30 -167
  715. package/dist/factories/cert-manager/resources/helm.js.map +1 -1
  716. package/dist/factories/cert-manager/resources/issuers.d.ts.map +1 -1
  717. package/dist/factories/cert-manager/resources/issuers.js +9 -104
  718. package/dist/factories/cert-manager/resources/issuers.js.map +1 -1
  719. package/dist/factories/cert-manager/types.d.ts +5 -78
  720. package/dist/factories/cert-manager/types.d.ts.map +1 -1
  721. package/dist/factories/cert-manager/types.js +2 -22
  722. package/dist/factories/cert-manager/types.js.map +1 -1
  723. package/dist/factories/cert-manager/utils/helm-values-mapper.d.ts +8 -4
  724. package/dist/factories/cert-manager/utils/helm-values-mapper.d.ts.map +1 -1
  725. package/dist/factories/cert-manager/utils/helm-values-mapper.js +55 -56
  726. package/dist/factories/cert-manager/utils/helm-values-mapper.js.map +1 -1
  727. package/dist/factories/cert-manager/utils/index.d.ts +1 -1
  728. package/dist/factories/cert-manager/utils/index.d.ts.map +1 -1
  729. package/dist/factories/cert-manager/utils/index.js +1 -1
  730. package/dist/factories/cert-manager/utils/index.js.map +1 -1
  731. package/dist/factories/cilium/compositions/cilium-bootstrap.d.ts +3 -3
  732. package/dist/factories/cilium/compositions/cilium-bootstrap.d.ts.map +1 -1
  733. package/dist/factories/cilium/compositions/cilium-bootstrap.js +62 -34
  734. package/dist/factories/cilium/compositions/cilium-bootstrap.js.map +1 -1
  735. package/dist/factories/cilium/errors.d.ts +41 -0
  736. package/dist/factories/cilium/errors.d.ts.map +1 -0
  737. package/dist/factories/cilium/errors.js +75 -0
  738. package/dist/factories/cilium/errors.js.map +1 -0
  739. package/dist/factories/cilium/index.d.ts +1 -0
  740. package/dist/factories/cilium/index.d.ts.map +1 -1
  741. package/dist/factories/cilium/index.js +4 -0
  742. package/dist/factories/cilium/index.js.map +1 -1
  743. package/dist/factories/cilium/resources/gateway.d.ts.map +1 -1
  744. package/dist/factories/cilium/resources/gateway.js +3 -5
  745. package/dist/factories/cilium/resources/gateway.js.map +1 -1
  746. package/dist/factories/cilium/resources/helm.d.ts +2 -2
  747. package/dist/factories/cilium/resources/helm.d.ts.map +1 -1
  748. package/dist/factories/cilium/resources/helm.js +8 -16
  749. package/dist/factories/cilium/resources/helm.js.map +1 -1
  750. package/dist/factories/cilium/resources/index.d.ts +1 -5
  751. package/dist/factories/cilium/resources/index.d.ts.map +1 -1
  752. package/dist/factories/cilium/resources/index.js +4 -20
  753. package/dist/factories/cilium/resources/index.js.map +1 -1
  754. package/dist/factories/cilium/resources/networking.d.ts +9 -13
  755. package/dist/factories/cilium/resources/networking.d.ts.map +1 -1
  756. package/dist/factories/cilium/resources/networking.js +152 -251
  757. package/dist/factories/cilium/resources/networking.js.map +1 -1
  758. package/dist/factories/cilium/types.d.ts +3 -47
  759. package/dist/factories/cilium/types.d.ts.map +1 -1
  760. package/dist/factories/cilium/types.js +2 -71
  761. package/dist/factories/cilium/types.js.map +1 -1
  762. package/dist/factories/cnpg/compositions/cnpg-bootstrap.d.ts +55 -0
  763. package/dist/factories/cnpg/compositions/cnpg-bootstrap.d.ts.map +1 -0
  764. package/dist/factories/cnpg/compositions/cnpg-bootstrap.js +92 -0
  765. package/dist/factories/cnpg/compositions/cnpg-bootstrap.js.map +1 -0
  766. package/dist/factories/cnpg/compositions/index.d.ts +2 -0
  767. package/dist/factories/cnpg/compositions/index.d.ts.map +1 -0
  768. package/dist/factories/cnpg/compositions/index.js +2 -0
  769. package/dist/factories/cnpg/compositions/index.js.map +1 -0
  770. package/dist/factories/cnpg/index.d.ts +42 -0
  771. package/dist/factories/cnpg/index.d.ts.map +1 -0
  772. package/dist/factories/cnpg/index.js +42 -0
  773. package/dist/factories/cnpg/index.js.map +1 -0
  774. package/dist/factories/cnpg/resources/backup.d.ts +34 -0
  775. package/dist/factories/cnpg/resources/backup.d.ts.map +1 -0
  776. package/dist/factories/cnpg/resources/backup.js +87 -0
  777. package/dist/factories/cnpg/resources/backup.js.map +1 -0
  778. package/dist/factories/cnpg/resources/cluster.d.ts +55 -0
  779. package/dist/factories/cnpg/resources/cluster.d.ts.map +1 -0
  780. package/dist/factories/cnpg/resources/cluster.js +123 -0
  781. package/dist/factories/cnpg/resources/cluster.js.map +1 -0
  782. package/dist/factories/cnpg/resources/helm.d.ts +45 -0
  783. package/dist/factories/cnpg/resources/helm.d.ts.map +1 -0
  784. package/dist/factories/cnpg/resources/helm.js +78 -0
  785. package/dist/factories/cnpg/resources/helm.js.map +1 -0
  786. package/dist/factories/cnpg/resources/index.d.ts +6 -0
  787. package/dist/factories/cnpg/resources/index.d.ts.map +1 -0
  788. package/dist/factories/cnpg/resources/index.js +6 -0
  789. package/dist/factories/cnpg/resources/index.js.map +1 -0
  790. package/dist/factories/cnpg/resources/pooler.d.ts +38 -0
  791. package/dist/factories/cnpg/resources/pooler.d.ts.map +1 -0
  792. package/dist/factories/cnpg/resources/pooler.js +97 -0
  793. package/dist/factories/cnpg/resources/pooler.js.map +1 -0
  794. package/dist/factories/cnpg/resources/scheduled-backup.d.ts +35 -0
  795. package/dist/factories/cnpg/resources/scheduled-backup.d.ts.map +1 -0
  796. package/dist/factories/cnpg/resources/scheduled-backup.js +68 -0
  797. package/dist/factories/cnpg/resources/scheduled-backup.js.map +1 -0
  798. package/dist/factories/cnpg/types.d.ts +507 -0
  799. package/dist/factories/cnpg/types.d.ts.map +1 -0
  800. package/dist/factories/cnpg/types.js +398 -0
  801. package/dist/factories/cnpg/types.js.map +1 -0
  802. package/dist/factories/cnpg/utils/helm-values-mapper.d.ts +70 -0
  803. package/dist/factories/cnpg/utils/helm-values-mapper.d.ts.map +1 -0
  804. package/dist/factories/cnpg/utils/helm-values-mapper.js +79 -0
  805. package/dist/factories/cnpg/utils/helm-values-mapper.js.map +1 -0
  806. package/dist/factories/cnpg/utils/index.d.ts +2 -0
  807. package/dist/factories/cnpg/utils/index.d.ts.map +1 -0
  808. package/dist/factories/cnpg/utils/index.js +2 -0
  809. package/dist/factories/cnpg/utils/index.js.map +1 -0
  810. package/dist/factories/external-dns/compositions/external-dns-bootstrap.d.ts +1 -1
  811. package/dist/factories/external-dns/compositions/external-dns-bootstrap.d.ts.map +1 -1
  812. package/dist/factories/external-dns/compositions/external-dns-bootstrap.js +5 -11
  813. package/dist/factories/external-dns/compositions/external-dns-bootstrap.js.map +1 -1
  814. package/dist/factories/external-dns/resources/helm.d.ts +2 -2
  815. package/dist/factories/external-dns/resources/helm.d.ts.map +1 -1
  816. package/dist/factories/external-dns/resources/helm.js +66 -61
  817. package/dist/factories/external-dns/resources/helm.js.map +1 -1
  818. package/dist/factories/external-dns/types.d.ts +2 -2
  819. package/dist/factories/external-dns/types.d.ts.map +1 -1
  820. package/dist/factories/external-dns/types.js.map +1 -1
  821. package/dist/factories/flux/git-repository.d.ts +12 -2
  822. package/dist/factories/flux/git-repository.d.ts.map +1 -1
  823. package/dist/factories/flux/git-repository.js +33 -0
  824. package/dist/factories/flux/git-repository.js.map +1 -1
  825. package/dist/factories/flux/kustomize/kustomization.d.ts +2 -0
  826. package/dist/factories/flux/kustomize/kustomization.d.ts.map +1 -1
  827. package/dist/factories/flux/kustomize/kustomization.js.map +1 -1
  828. package/dist/factories/flux/kustomize/readiness-evaluators.d.ts +1 -1
  829. package/dist/factories/flux/kustomize/readiness-evaluators.d.ts.map +1 -1
  830. package/dist/factories/flux/kustomize/readiness-evaluators.js +3 -1
  831. package/dist/factories/flux/kustomize/readiness-evaluators.js.map +1 -1
  832. package/dist/factories/helm/helm-release.d.ts +13 -0
  833. package/dist/factories/helm/helm-release.d.ts.map +1 -1
  834. package/dist/factories/helm/helm-release.js +39 -16
  835. package/dist/factories/helm/helm-release.js.map +1 -1
  836. package/dist/factories/helm/helm-repository.d.ts +26 -1
  837. package/dist/factories/helm/helm-repository.d.ts.map +1 -1
  838. package/dist/factories/helm/helm-repository.js +30 -17
  839. package/dist/factories/helm/helm-repository.js.map +1 -1
  840. package/dist/factories/helm/index.d.ts +10 -4
  841. package/dist/factories/helm/index.d.ts.map +1 -1
  842. package/dist/factories/helm/index.js +10 -4
  843. package/dist/factories/helm/index.js.map +1 -1
  844. package/dist/factories/helm/readiness-evaluators.d.ts +21 -8
  845. package/dist/factories/helm/readiness-evaluators.d.ts.map +1 -1
  846. package/dist/factories/helm/readiness-evaluators.js +98 -82
  847. package/dist/factories/helm/readiness-evaluators.js.map +1 -1
  848. package/dist/factories/helm/types.d.ts +15 -0
  849. package/dist/factories/helm/types.d.ts.map +1 -1
  850. package/dist/factories/index.d.ts +7 -8
  851. package/dist/factories/index.d.ts.map +1 -1
  852. package/dist/factories/index.js +24 -20
  853. package/dist/factories/index.js.map +1 -1
  854. package/dist/factories/inngest/compositions/index.d.ts +2 -0
  855. package/dist/factories/inngest/compositions/index.d.ts.map +1 -0
  856. package/dist/factories/inngest/compositions/index.js +2 -0
  857. package/dist/factories/inngest/compositions/index.js.map +1 -0
  858. package/dist/factories/inngest/compositions/inngest-bootstrap.d.ts +150 -0
  859. package/dist/factories/inngest/compositions/inngest-bootstrap.d.ts.map +1 -0
  860. package/dist/factories/inngest/compositions/inngest-bootstrap.js +90 -0
  861. package/dist/factories/inngest/compositions/inngest-bootstrap.js.map +1 -0
  862. package/dist/factories/inngest/index.d.ts +45 -0
  863. package/dist/factories/inngest/index.d.ts.map +1 -0
  864. package/dist/factories/inngest/index.js +45 -0
  865. package/dist/factories/inngest/index.js.map +1 -0
  866. package/dist/factories/inngest/resources/helm.d.ts +53 -0
  867. package/dist/factories/inngest/resources/helm.d.ts.map +1 -0
  868. package/dist/factories/inngest/resources/helm.js +88 -0
  869. package/dist/factories/inngest/resources/helm.js.map +1 -0
  870. package/dist/factories/inngest/resources/index.d.ts +2 -0
  871. package/dist/factories/inngest/resources/index.d.ts.map +1 -0
  872. package/dist/factories/inngest/resources/index.js +2 -0
  873. package/dist/factories/inngest/resources/index.js.map +1 -0
  874. package/dist/factories/inngest/types.d.ts +177 -0
  875. package/dist/factories/inngest/types.d.ts.map +1 -0
  876. package/dist/factories/inngest/types.js +189 -0
  877. package/dist/factories/inngest/types.js.map +1 -0
  878. package/dist/factories/inngest/utils/helm-values-mapper.d.ts +127 -0
  879. package/dist/factories/inngest/utils/helm-values-mapper.d.ts.map +1 -0
  880. package/dist/factories/inngest/utils/helm-values-mapper.js +116 -0
  881. package/dist/factories/inngest/utils/helm-values-mapper.js.map +1 -0
  882. package/dist/factories/inngest/utils/index.d.ts +2 -0
  883. package/dist/factories/inngest/utils/index.d.ts.map +1 -0
  884. package/dist/factories/inngest/utils/index.js +2 -0
  885. package/dist/factories/inngest/utils/index.js.map +1 -0
  886. package/dist/factories/kro/kro-crd.d.ts.map +1 -1
  887. package/dist/factories/kro/kro-crd.js +3 -2
  888. package/dist/factories/kro/kro-crd.js.map +1 -1
  889. package/dist/factories/kro/kro-custom-resource.d.ts.map +1 -1
  890. package/dist/factories/kro/kro-custom-resource.js +3 -2
  891. package/dist/factories/kro/kro-custom-resource.js.map +1 -1
  892. package/dist/factories/kro/resource-graph-definition.d.ts +29 -1
  893. package/dist/factories/kro/resource-graph-definition.d.ts.map +1 -1
  894. package/dist/factories/kro/resource-graph-definition.js +26 -8
  895. package/dist/factories/kro/resource-graph-definition.js.map +1 -1
  896. package/dist/factories/kubernetes/admission/mutating-webhook-configuration.d.ts +3 -2
  897. package/dist/factories/kubernetes/admission/mutating-webhook-configuration.d.ts.map +1 -1
  898. package/dist/factories/kubernetes/admission/mutating-webhook-configuration.js +3 -2
  899. package/dist/factories/kubernetes/admission/mutating-webhook-configuration.js.map +1 -1
  900. package/dist/factories/kubernetes/admission/validating-webhook-configuration.d.ts +3 -2
  901. package/dist/factories/kubernetes/admission/validating-webhook-configuration.d.ts.map +1 -1
  902. package/dist/factories/kubernetes/admission/validating-webhook-configuration.js +3 -2
  903. package/dist/factories/kubernetes/admission/validating-webhook-configuration.js.map +1 -1
  904. package/dist/factories/kubernetes/autoscaling/horizontal-pod-autoscaler-v1.d.ts +3 -1
  905. package/dist/factories/kubernetes/autoscaling/horizontal-pod-autoscaler-v1.d.ts.map +1 -1
  906. package/dist/factories/kubernetes/autoscaling/horizontal-pod-autoscaler-v1.js.map +1 -1
  907. package/dist/factories/kubernetes/autoscaling/horizontal-pod-autoscaler.d.ts +3 -1
  908. package/dist/factories/kubernetes/autoscaling/horizontal-pod-autoscaler.d.ts.map +1 -1
  909. package/dist/factories/kubernetes/autoscaling/horizontal-pod-autoscaler.js +2 -1
  910. package/dist/factories/kubernetes/autoscaling/horizontal-pod-autoscaler.js.map +1 -1
  911. package/dist/factories/kubernetes/certificates/certificate-signing-request.d.ts +3 -1
  912. package/dist/factories/kubernetes/certificates/certificate-signing-request.d.ts.map +1 -1
  913. package/dist/factories/kubernetes/certificates/certificate-signing-request.js.map +1 -1
  914. package/dist/factories/kubernetes/config/config-map.d.ts +14 -1
  915. package/dist/factories/kubernetes/config/config-map.d.ts.map +1 -1
  916. package/dist/factories/kubernetes/config/config-map.js +21 -7
  917. package/dist/factories/kubernetes/config/config-map.js.map +1 -1
  918. package/dist/factories/kubernetes/config/secret.d.ts +17 -0
  919. package/dist/factories/kubernetes/config/secret.d.ts.map +1 -1
  920. package/dist/factories/kubernetes/config/secret.js +27 -7
  921. package/dist/factories/kubernetes/config/secret.js.map +1 -1
  922. package/dist/factories/kubernetes/coordination/lease.d.ts +3 -1
  923. package/dist/factories/kubernetes/coordination/lease.d.ts.map +1 -1
  924. package/dist/factories/kubernetes/coordination/lease.js +2 -1
  925. package/dist/factories/kubernetes/coordination/lease.js.map +1 -1
  926. package/dist/factories/kubernetes/core/component-status.d.ts +3 -1
  927. package/dist/factories/kubernetes/core/component-status.d.ts.map +1 -1
  928. package/dist/factories/kubernetes/core/component-status.js.map +1 -1
  929. package/dist/factories/kubernetes/core/namespace.d.ts +10 -0
  930. package/dist/factories/kubernetes/core/namespace.d.ts.map +1 -1
  931. package/dist/factories/kubernetes/core/namespace.js +14 -3
  932. package/dist/factories/kubernetes/core/namespace.js.map +1 -1
  933. package/dist/factories/kubernetes/core/node.d.ts +3 -1
  934. package/dist/factories/kubernetes/core/node.d.ts.map +1 -1
  935. package/dist/factories/kubernetes/core/node.js.map +1 -1
  936. package/dist/factories/kubernetes/core/pod.d.ts +3 -1
  937. package/dist/factories/kubernetes/core/pod.d.ts.map +1 -1
  938. package/dist/factories/kubernetes/core/pod.js +2 -1
  939. package/dist/factories/kubernetes/core/pod.js.map +1 -1
  940. package/dist/factories/kubernetes/extensions/custom-resource-definition.d.ts +3 -1
  941. package/dist/factories/kubernetes/extensions/custom-resource-definition.d.ts.map +1 -1
  942. package/dist/factories/kubernetes/extensions/custom-resource-definition.js.map +1 -1
  943. package/dist/factories/kubernetes/extensions/custom-resource.d.ts +1 -0
  944. package/dist/factories/kubernetes/extensions/custom-resource.d.ts.map +1 -1
  945. package/dist/factories/kubernetes/extensions/custom-resource.js +5 -1
  946. package/dist/factories/kubernetes/extensions/custom-resource.js.map +1 -1
  947. package/dist/factories/kubernetes/index.d.ts +0 -2
  948. package/dist/factories/kubernetes/index.d.ts.map +1 -1
  949. package/dist/factories/kubernetes/index.js +3 -8
  950. package/dist/factories/kubernetes/index.js.map +1 -1
  951. package/dist/factories/kubernetes/networking/endpoint-slice.d.ts +3 -1
  952. package/dist/factories/kubernetes/networking/endpoint-slice.d.ts.map +1 -1
  953. package/dist/factories/kubernetes/networking/endpoint-slice.js.map +1 -1
  954. package/dist/factories/kubernetes/networking/endpoints.d.ts +3 -1
  955. package/dist/factories/kubernetes/networking/endpoints.d.ts.map +1 -1
  956. package/dist/factories/kubernetes/networking/endpoints.js +3 -2
  957. package/dist/factories/kubernetes/networking/endpoints.js.map +1 -1
  958. package/dist/factories/kubernetes/networking/ingress-class.d.ts +3 -1
  959. package/dist/factories/kubernetes/networking/ingress-class.d.ts.map +1 -1
  960. package/dist/factories/kubernetes/networking/ingress-class.js +2 -7
  961. package/dist/factories/kubernetes/networking/ingress-class.js.map +1 -1
  962. package/dist/factories/kubernetes/networking/ingress.d.ts +15 -2
  963. package/dist/factories/kubernetes/networking/ingress.d.ts.map +1 -1
  964. package/dist/factories/kubernetes/networking/ingress.js +64 -11
  965. package/dist/factories/kubernetes/networking/ingress.js.map +1 -1
  966. package/dist/factories/kubernetes/networking/network-policy.d.ts +3 -1
  967. package/dist/factories/kubernetes/networking/network-policy.d.ts.map +1 -1
  968. package/dist/factories/kubernetes/networking/network-policy.js +2 -8
  969. package/dist/factories/kubernetes/networking/network-policy.js.map +1 -1
  970. package/dist/factories/kubernetes/networking/service.d.ts +14 -1
  971. package/dist/factories/kubernetes/networking/service.d.ts.map +1 -1
  972. package/dist/factories/kubernetes/networking/service.js +22 -2
  973. package/dist/factories/kubernetes/networking/service.js.map +1 -1
  974. package/dist/factories/kubernetes/policy/limit-range.d.ts +3 -1
  975. package/dist/factories/kubernetes/policy/limit-range.d.ts.map +1 -1
  976. package/dist/factories/kubernetes/policy/limit-range.js +2 -8
  977. package/dist/factories/kubernetes/policy/limit-range.js.map +1 -1
  978. package/dist/factories/kubernetes/policy/pod-disruption-budget.d.ts +3 -1
  979. package/dist/factories/kubernetes/policy/pod-disruption-budget.d.ts.map +1 -1
  980. package/dist/factories/kubernetes/policy/pod-disruption-budget.js +3 -2
  981. package/dist/factories/kubernetes/policy/pod-disruption-budget.js.map +1 -1
  982. package/dist/factories/kubernetes/policy/resource-quota.d.ts +3 -1
  983. package/dist/factories/kubernetes/policy/resource-quota.d.ts.map +1 -1
  984. package/dist/factories/kubernetes/policy/resource-quota.js +3 -2
  985. package/dist/factories/kubernetes/policy/resource-quota.js.map +1 -1
  986. package/dist/factories/kubernetes/rbac/cluster-role-binding.d.ts +20 -1
  987. package/dist/factories/kubernetes/rbac/cluster-role-binding.d.ts.map +1 -1
  988. package/dist/factories/kubernetes/rbac/cluster-role-binding.js +19 -8
  989. package/dist/factories/kubernetes/rbac/cluster-role-binding.js.map +1 -1
  990. package/dist/factories/kubernetes/rbac/cluster-role.d.ts +3 -1
  991. package/dist/factories/kubernetes/rbac/cluster-role.d.ts.map +1 -1
  992. package/dist/factories/kubernetes/rbac/cluster-role.js +2 -8
  993. package/dist/factories/kubernetes/rbac/cluster-role.js.map +1 -1
  994. package/dist/factories/kubernetes/rbac/role-binding.d.ts +3 -1
  995. package/dist/factories/kubernetes/rbac/role-binding.d.ts.map +1 -1
  996. package/dist/factories/kubernetes/rbac/role-binding.js +2 -8
  997. package/dist/factories/kubernetes/rbac/role-binding.js.map +1 -1
  998. package/dist/factories/kubernetes/rbac/role.d.ts +3 -1
  999. package/dist/factories/kubernetes/rbac/role.d.ts.map +1 -1
  1000. package/dist/factories/kubernetes/rbac/role.js +2 -8
  1001. package/dist/factories/kubernetes/rbac/role.js.map +1 -1
  1002. package/dist/factories/kubernetes/rbac/service-account.d.ts +3 -1
  1003. package/dist/factories/kubernetes/rbac/service-account.d.ts.map +1 -1
  1004. package/dist/factories/kubernetes/rbac/service-account.js +2 -8
  1005. package/dist/factories/kubernetes/rbac/service-account.js.map +1 -1
  1006. package/dist/factories/kubernetes/scheduling/priority-class.d.ts +3 -1
  1007. package/dist/factories/kubernetes/scheduling/priority-class.d.ts.map +1 -1
  1008. package/dist/factories/kubernetes/scheduling/priority-class.js +2 -7
  1009. package/dist/factories/kubernetes/scheduling/priority-class.js.map +1 -1
  1010. package/dist/factories/kubernetes/scheduling/runtime-class.d.ts +3 -2
  1011. package/dist/factories/kubernetes/scheduling/runtime-class.d.ts.map +1 -1
  1012. package/dist/factories/kubernetes/scheduling/runtime-class.js +2 -1
  1013. package/dist/factories/kubernetes/scheduling/runtime-class.js.map +1 -1
  1014. package/dist/factories/kubernetes/storage/csi-driver.d.ts +3 -1
  1015. package/dist/factories/kubernetes/storage/csi-driver.d.ts.map +1 -1
  1016. package/dist/factories/kubernetes/storage/csi-driver.js +2 -7
  1017. package/dist/factories/kubernetes/storage/csi-driver.js.map +1 -1
  1018. package/dist/factories/kubernetes/storage/csi-node.d.ts +3 -1
  1019. package/dist/factories/kubernetes/storage/csi-node.d.ts.map +1 -1
  1020. package/dist/factories/kubernetes/storage/csi-node.js +2 -1
  1021. package/dist/factories/kubernetes/storage/csi-node.js.map +1 -1
  1022. package/dist/factories/kubernetes/storage/persistent-volume-claim.d.ts +14 -1
  1023. package/dist/factories/kubernetes/storage/persistent-volume-claim.d.ts.map +1 -1
  1024. package/dist/factories/kubernetes/storage/persistent-volume-claim.js +13 -1
  1025. package/dist/factories/kubernetes/storage/persistent-volume-claim.js.map +1 -1
  1026. package/dist/factories/kubernetes/storage/persistent-volume.d.ts +3 -1
  1027. package/dist/factories/kubernetes/storage/persistent-volume.d.ts.map +1 -1
  1028. package/dist/factories/kubernetes/storage/persistent-volume.js +3 -2
  1029. package/dist/factories/kubernetes/storage/persistent-volume.js.map +1 -1
  1030. package/dist/factories/kubernetes/storage/storage-class.d.ts +3 -1
  1031. package/dist/factories/kubernetes/storage/storage-class.d.ts.map +1 -1
  1032. package/dist/factories/kubernetes/storage/storage-class.js +2 -8
  1033. package/dist/factories/kubernetes/storage/storage-class.js.map +1 -1
  1034. package/dist/factories/kubernetes/storage/volume-attachment.d.ts +3 -1
  1035. package/dist/factories/kubernetes/storage/volume-attachment.d.ts.map +1 -1
  1036. package/dist/factories/kubernetes/storage/volume-attachment.js +10 -0
  1037. package/dist/factories/kubernetes/storage/volume-attachment.js.map +1 -1
  1038. package/dist/factories/kubernetes/workloads/cron-job.d.ts +14 -1
  1039. package/dist/factories/kubernetes/workloads/cron-job.d.ts.map +1 -1
  1040. package/dist/factories/kubernetes/workloads/cron-job.js +14 -2
  1041. package/dist/factories/kubernetes/workloads/cron-job.js.map +1 -1
  1042. package/dist/factories/kubernetes/workloads/daemon-set.d.ts +14 -1
  1043. package/dist/factories/kubernetes/workloads/daemon-set.d.ts.map +1 -1
  1044. package/dist/factories/kubernetes/workloads/daemon-set.js +13 -1
  1045. package/dist/factories/kubernetes/workloads/daemon-set.js.map +1 -1
  1046. package/dist/factories/kubernetes/workloads/deployment.d.ts +14 -1
  1047. package/dist/factories/kubernetes/workloads/deployment.d.ts.map +1 -1
  1048. package/dist/factories/kubernetes/workloads/deployment.js +27 -2
  1049. package/dist/factories/kubernetes/workloads/deployment.js.map +1 -1
  1050. package/dist/factories/kubernetes/workloads/job.d.ts +14 -1
  1051. package/dist/factories/kubernetes/workloads/job.d.ts.map +1 -1
  1052. package/dist/factories/kubernetes/workloads/job.js +19 -2
  1053. package/dist/factories/kubernetes/workloads/job.js.map +1 -1
  1054. package/dist/factories/kubernetes/workloads/replica-set.d.ts +3 -1
  1055. package/dist/factories/kubernetes/workloads/replica-set.d.ts.map +1 -1
  1056. package/dist/factories/kubernetes/workloads/replica-set.js +2 -1
  1057. package/dist/factories/kubernetes/workloads/replica-set.js.map +1 -1
  1058. package/dist/factories/kubernetes/workloads/replication-controller.d.ts +3 -1
  1059. package/dist/factories/kubernetes/workloads/replication-controller.d.ts.map +1 -1
  1060. package/dist/factories/kubernetes/workloads/replication-controller.js +3 -2
  1061. package/dist/factories/kubernetes/workloads/replication-controller.js.map +1 -1
  1062. package/dist/factories/kubernetes/workloads/stateful-set.d.ts +14 -1
  1063. package/dist/factories/kubernetes/workloads/stateful-set.d.ts.map +1 -1
  1064. package/dist/factories/kubernetes/workloads/stateful-set.js +22 -2
  1065. package/dist/factories/kubernetes/workloads/stateful-set.js.map +1 -1
  1066. package/dist/factories/kubernetes/yaml/conflict-handler.d.ts +23 -0
  1067. package/dist/factories/kubernetes/yaml/conflict-handler.d.ts.map +1 -0
  1068. package/dist/factories/kubernetes/yaml/conflict-handler.js +83 -0
  1069. package/dist/factories/kubernetes/yaml/conflict-handler.js.map +1 -0
  1070. package/dist/factories/kubernetes/yaml/yaml-directory.d.ts +6 -11
  1071. package/dist/factories/kubernetes/yaml/yaml-directory.d.ts.map +1 -1
  1072. package/dist/factories/kubernetes/yaml/yaml-directory.js +10 -75
  1073. package/dist/factories/kubernetes/yaml/yaml-directory.js.map +1 -1
  1074. package/dist/factories/kubernetes/yaml/yaml-file.d.ts +42 -13
  1075. package/dist/factories/kubernetes/yaml/yaml-file.d.ts.map +1 -1
  1076. package/dist/factories/kubernetes/yaml/yaml-file.js +206 -99
  1077. package/dist/factories/kubernetes/yaml/yaml-file.js.map +1 -1
  1078. package/dist/factories/pebble/compositions/pebble-bootstrap.d.ts +1 -1
  1079. package/dist/factories/pebble/compositions/pebble-bootstrap.d.ts.map +1 -1
  1080. package/dist/factories/pebble/compositions/pebble-bootstrap.js +15 -17
  1081. package/dist/factories/pebble/compositions/pebble-bootstrap.js.map +1 -1
  1082. package/dist/factories/pebble/resources/helm.d.ts +2 -2
  1083. package/dist/factories/pebble/resources/helm.d.ts.map +1 -1
  1084. package/dist/factories/pebble/resources/helm.js +9 -28
  1085. package/dist/factories/pebble/resources/helm.js.map +1 -1
  1086. package/dist/factories/shared.d.ts +12 -71
  1087. package/dist/factories/shared.d.ts.map +1 -1
  1088. package/dist/factories/shared.js +10 -531
  1089. package/dist/factories/shared.js.map +1 -1
  1090. package/dist/factories/simple/autoscaling/horizontal-pod-autoscaler.d.ts +11 -0
  1091. package/dist/factories/simple/autoscaling/horizontal-pod-autoscaler.d.ts.map +1 -1
  1092. package/dist/factories/simple/autoscaling/horizontal-pod-autoscaler.js +12 -0
  1093. package/dist/factories/simple/autoscaling/horizontal-pod-autoscaler.js.map +1 -1
  1094. package/dist/factories/simple/compositions/web-service.d.ts +35 -0
  1095. package/dist/factories/simple/compositions/web-service.d.ts.map +1 -0
  1096. package/dist/{core/composition/composition.js → factories/simple/compositions/web-service.js} +15 -2
  1097. package/dist/factories/simple/compositions/web-service.js.map +1 -0
  1098. package/dist/factories/simple/config/config-map.d.ts +11 -0
  1099. package/dist/factories/simple/config/config-map.d.ts.map +1 -1
  1100. package/dist/factories/simple/config/config-map.js +11 -0
  1101. package/dist/factories/simple/config/config-map.js.map +1 -1
  1102. package/dist/factories/simple/config/secret.d.ts +11 -0
  1103. package/dist/factories/simple/config/secret.d.ts.map +1 -1
  1104. package/dist/factories/simple/config/secret.js +17 -3
  1105. package/dist/factories/simple/config/secret.js.map +1 -1
  1106. package/dist/factories/simple/helm/index.d.ts +10 -0
  1107. package/dist/factories/simple/helm/index.d.ts.map +1 -1
  1108. package/dist/factories/simple/helm/index.js +10 -0
  1109. package/dist/factories/simple/helm/index.js.map +1 -1
  1110. package/dist/factories/simple/index.d.ts +1 -1
  1111. package/dist/factories/simple/networking/ingress.d.ts +14 -2
  1112. package/dist/factories/simple/networking/ingress.d.ts.map +1 -1
  1113. package/dist/factories/simple/networking/ingress.js +12 -0
  1114. package/dist/factories/simple/networking/ingress.js.map +1 -1
  1115. package/dist/factories/simple/networking/network-policy.d.ts +11 -1
  1116. package/dist/factories/simple/networking/network-policy.d.ts.map +1 -1
  1117. package/dist/factories/simple/networking/network-policy.js +10 -0
  1118. package/dist/factories/simple/networking/network-policy.js.map +1 -1
  1119. package/dist/factories/simple/networking/service.d.ts +10 -0
  1120. package/dist/factories/simple/networking/service.d.ts.map +1 -1
  1121. package/dist/factories/simple/networking/service.js +10 -0
  1122. package/dist/factories/simple/networking/service.js.map +1 -1
  1123. package/dist/factories/simple/storage/persistent-volume-claim.d.ts +10 -0
  1124. package/dist/factories/simple/storage/persistent-volume-claim.d.ts.map +1 -1
  1125. package/dist/factories/simple/storage/persistent-volume-claim.js +10 -0
  1126. package/dist/factories/simple/storage/persistent-volume-claim.js.map +1 -1
  1127. package/dist/factories/simple/storage/persistent-volume.d.ts +11 -0
  1128. package/dist/factories/simple/storage/persistent-volume.d.ts.map +1 -1
  1129. package/dist/factories/simple/storage/persistent-volume.js +12 -0
  1130. package/dist/factories/simple/storage/persistent-volume.js.map +1 -1
  1131. package/dist/factories/simple/types.d.ts +16 -0
  1132. package/dist/factories/simple/types.d.ts.map +1 -1
  1133. package/dist/factories/simple/workloads/cron-job.d.ts +10 -0
  1134. package/dist/factories/simple/workloads/cron-job.d.ts.map +1 -1
  1135. package/dist/factories/simple/workloads/cron-job.js +11 -0
  1136. package/dist/factories/simple/workloads/cron-job.js.map +1 -1
  1137. package/dist/factories/simple/workloads/daemon-set.d.ts +9 -0
  1138. package/dist/factories/simple/workloads/daemon-set.d.ts.map +1 -1
  1139. package/dist/factories/simple/workloads/daemon-set.js +9 -0
  1140. package/dist/factories/simple/workloads/daemon-set.js.map +1 -1
  1141. package/dist/factories/simple/workloads/deployment.d.ts +11 -1
  1142. package/dist/factories/simple/workloads/deployment.d.ts.map +1 -1
  1143. package/dist/factories/simple/workloads/deployment.js +19 -9
  1144. package/dist/factories/simple/workloads/deployment.js.map +1 -1
  1145. package/dist/factories/simple/workloads/job.d.ts +10 -0
  1146. package/dist/factories/simple/workloads/job.d.ts.map +1 -1
  1147. package/dist/factories/simple/workloads/job.js +11 -0
  1148. package/dist/factories/simple/workloads/job.js.map +1 -1
  1149. package/dist/factories/simple/workloads/stateful-set.d.ts +11 -0
  1150. package/dist/factories/simple/workloads/stateful-set.d.ts.map +1 -1
  1151. package/dist/factories/simple/workloads/stateful-set.js +12 -0
  1152. package/dist/factories/simple/workloads/stateful-set.js.map +1 -1
  1153. package/dist/factories/simple/yaml/index.d.ts +8 -0
  1154. package/dist/factories/simple/yaml/index.d.ts.map +1 -1
  1155. package/dist/factories/simple/yaml/index.js +8 -0
  1156. package/dist/factories/simple/yaml/index.js.map +1 -1
  1157. package/dist/factories/valkey/compositions/index.d.ts +2 -0
  1158. package/dist/factories/valkey/compositions/index.d.ts.map +1 -0
  1159. package/dist/factories/valkey/compositions/index.js +2 -0
  1160. package/dist/factories/valkey/compositions/index.js.map +1 -0
  1161. package/dist/factories/valkey/compositions/valkey-bootstrap.d.ts +41 -0
  1162. package/dist/factories/valkey/compositions/valkey-bootstrap.d.ts.map +1 -0
  1163. package/dist/factories/valkey/compositions/valkey-bootstrap.js +105 -0
  1164. package/dist/factories/valkey/compositions/valkey-bootstrap.js.map +1 -0
  1165. package/dist/factories/valkey/index.d.ts +50 -0
  1166. package/dist/factories/valkey/index.d.ts.map +1 -0
  1167. package/dist/factories/valkey/index.js +50 -0
  1168. package/dist/factories/valkey/index.js.map +1 -0
  1169. package/dist/factories/valkey/resources/helm.d.ts +53 -0
  1170. package/dist/factories/valkey/resources/helm.d.ts.map +1 -0
  1171. package/dist/factories/valkey/resources/helm.js +82 -0
  1172. package/dist/factories/valkey/resources/helm.js.map +1 -0
  1173. package/dist/factories/valkey/resources/index.d.ts +3 -0
  1174. package/dist/factories/valkey/resources/index.d.ts.map +1 -0
  1175. package/dist/factories/valkey/resources/index.js +3 -0
  1176. package/dist/factories/valkey/resources/index.js.map +1 -0
  1177. package/dist/factories/valkey/resources/valkey.d.ts +46 -0
  1178. package/dist/factories/valkey/resources/valkey.d.ts.map +1 -0
  1179. package/dist/factories/valkey/resources/valkey.js +123 -0
  1180. package/dist/factories/valkey/resources/valkey.js.map +1 -0
  1181. package/dist/factories/valkey/types.d.ts +185 -0
  1182. package/dist/factories/valkey/types.d.ts.map +1 -0
  1183. package/dist/factories/valkey/types.js +204 -0
  1184. package/dist/factories/valkey/types.js.map +1 -0
  1185. package/dist/factories/valkey/utils/helm-values-mapper.d.ts +32 -0
  1186. package/dist/factories/valkey/utils/helm-values-mapper.d.ts.map +1 -0
  1187. package/dist/factories/valkey/utils/helm-values-mapper.js +58 -0
  1188. package/dist/factories/valkey/utils/helm-values-mapper.js.map +1 -0
  1189. package/dist/factories/valkey/utils/index.d.ts +2 -0
  1190. package/dist/factories/valkey/utils/index.d.ts.map +1 -0
  1191. package/dist/factories/valkey/utils/index.js +2 -0
  1192. package/dist/factories/valkey/utils/index.js.map +1 -0
  1193. package/dist/factories/webapp/compositions/index.d.ts +2 -0
  1194. package/dist/factories/webapp/compositions/index.d.ts.map +1 -0
  1195. package/dist/factories/webapp/compositions/index.js +2 -0
  1196. package/dist/factories/webapp/compositions/index.js.map +1 -0
  1197. package/dist/factories/webapp/compositions/web-app-with-processing.d.ts +98 -0
  1198. package/dist/factories/webapp/compositions/web-app-with-processing.d.ts.map +1 -0
  1199. package/dist/factories/webapp/compositions/web-app-with-processing.js +221 -0
  1200. package/dist/factories/webapp/compositions/web-app-with-processing.js.map +1 -0
  1201. package/dist/factories/webapp/index.d.ts +53 -0
  1202. package/dist/factories/webapp/index.d.ts.map +1 -0
  1203. package/dist/factories/webapp/index.js +53 -0
  1204. package/dist/factories/webapp/index.js.map +1 -0
  1205. package/dist/factories/webapp/types.d.ts +69 -0
  1206. package/dist/factories/webapp/types.d.ts.map +1 -0
  1207. package/dist/factories/webapp/types.js +92 -0
  1208. package/dist/factories/webapp/types.js.map +1 -0
  1209. package/dist/index.d.ts +105 -6
  1210. package/dist/index.d.ts.map +1 -1
  1211. package/dist/index.js +115 -42
  1212. package/dist/index.js.map +1 -1
  1213. package/dist/shared/brands.d.ts +48 -0
  1214. package/dist/shared/brands.d.ts.map +1 -0
  1215. package/dist/shared/brands.js +48 -0
  1216. package/dist/shared/brands.js.map +1 -0
  1217. package/dist/utils/helpers.d.ts +31 -57
  1218. package/dist/utils/helpers.d.ts.map +1 -1
  1219. package/dist/utils/helpers.js +46 -494
  1220. package/dist/utils/helpers.js.map +1 -1
  1221. package/dist/utils/index.d.ts +5 -4
  1222. package/dist/utils/index.d.ts.map +1 -1
  1223. package/dist/utils/index.js +8 -6
  1224. package/dist/utils/index.js.map +1 -1
  1225. package/dist/utils/string.d.ts +31 -0
  1226. package/dist/utils/string.d.ts.map +1 -0
  1227. package/dist/utils/string.js +82 -0
  1228. package/dist/utils/string.js.map +1 -0
  1229. package/dist/utils/type-guards.d.ts +20 -11
  1230. package/dist/utils/type-guards.d.ts.map +1 -1
  1231. package/dist/utils/type-guards.js +78 -26
  1232. package/dist/utils/type-guards.js.map +1 -1
  1233. package/package.json +43 -13
  1234. package/dist/core/composition/composition.d.ts +0 -10
  1235. package/dist/core/composition/composition.d.ts.map +0 -1
  1236. package/dist/core/composition/composition.js.map +0 -1
  1237. package/dist/core/composition/typekro-runtime/index.d.ts +0 -3
  1238. package/dist/core/composition/typekro-runtime/index.d.ts.map +0 -1
  1239. package/dist/core/composition/typekro-runtime/index.js.map +0 -1
  1240. package/dist/core/composition/typekro-runtime/typekro-runtime.d.ts.map +0 -1
  1241. package/dist/core/composition/typekro-runtime/typekro-runtime.js +0 -165
  1242. package/dist/core/composition/typekro-runtime/typekro-runtime.js.map +0 -1
  1243. package/dist/core/composition/typekro-runtime/types.d.ts +0 -19
  1244. package/dist/core/composition/typekro-runtime/types.d.ts.map +0 -1
  1245. package/dist/core/composition/typekro-runtime/types.js.map +0 -1
  1246. package/dist/core/composition/types.d.ts +0 -27
  1247. package/dist/core/composition/types.d.ts.map +0 -1
  1248. package/dist/core/composition/types.js +0 -8
  1249. package/dist/core/composition/types.js.map +0 -1
  1250. package/dist/core/dependencies/type-guards.d.ts +0 -17
  1251. package/dist/core/dependencies/type-guards.d.ts.map +0 -1
  1252. package/dist/core/dependencies/type-guards.js +0 -40
  1253. package/dist/core/dependencies/type-guards.js.map +0 -1
  1254. package/dist/core/deployment/deployment-strategies.d.ts +0 -12
  1255. package/dist/core/deployment/deployment-strategies.d.ts.map +0 -1
  1256. package/dist/core/deployment/deployment-strategies.js +0 -11
  1257. package/dist/core/deployment/deployment-strategies.js.map +0 -1
  1258. package/dist/core/deployment/event-streamer.d.ts +0 -112
  1259. package/dist/core/deployment/event-streamer.d.ts.map +0 -1
  1260. package/dist/core/deployment/event-streamer.js +0 -348
  1261. package/dist/core/deployment/event-streamer.js.map +0 -1
  1262. package/dist/core/direct-deployment.d.ts +0 -8
  1263. package/dist/core/direct-deployment.d.ts.map +0 -1
  1264. package/dist/core/direct-deployment.js +0 -9
  1265. package/dist/core/direct-deployment.js.map +0 -1
  1266. package/dist/core/evaluation/cel-optimizer.d.ts.map +0 -1
  1267. package/dist/core/evaluation/cel-optimizer.js.map +0 -1
  1268. package/dist/core/expressions/analyzer.d.ts +0 -584
  1269. package/dist/core/expressions/analyzer.d.ts.map +0 -1
  1270. package/dist/core/expressions/analyzer.js +0 -2921
  1271. package/dist/core/expressions/analyzer.js.map +0 -1
  1272. package/dist/core/expressions/cache.d.ts.map +0 -1
  1273. package/dist/core/expressions/cache.js.map +0 -1
  1274. package/dist/core/expressions/cel-conversion-engine.d.ts.map +0 -1
  1275. package/dist/core/expressions/cel-conversion-engine.js.map +0 -1
  1276. package/dist/core/expressions/compile-time-validation.d.ts +0 -270
  1277. package/dist/core/expressions/compile-time-validation.d.ts.map +0 -1
  1278. package/dist/core/expressions/compile-time-validation.js.map +0 -1
  1279. package/dist/core/expressions/composition-integration.d.ts +0 -315
  1280. package/dist/core/expressions/composition-integration.d.ts.map +0 -1
  1281. package/dist/core/expressions/composition-integration.js +0 -944
  1282. package/dist/core/expressions/composition-integration.js.map +0 -1
  1283. package/dist/core/expressions/conditional-expression-processor.d.ts.map +0 -1
  1284. package/dist/core/expressions/conditional-expression-processor.js.map +0 -1
  1285. package/dist/core/expressions/conditional-integration.d.ts.map +0 -1
  1286. package/dist/core/expressions/conditional-integration.js.map +0 -1
  1287. package/dist/core/expressions/conditional-validation.d.ts +0 -181
  1288. package/dist/core/expressions/conditional-validation.d.ts.map +0 -1
  1289. package/dist/core/expressions/conditional-validation.js +0 -460
  1290. package/dist/core/expressions/conditional-validation.js.map +0 -1
  1291. package/dist/core/expressions/context-aware-generator.d.ts.map +0 -1
  1292. package/dist/core/expressions/context-aware-generator.js.map +0 -1
  1293. package/dist/core/expressions/context-detector.d.ts.map +0 -1
  1294. package/dist/core/expressions/context-detector.js.map +0 -1
  1295. package/dist/core/expressions/context-switcher.d.ts +0 -185
  1296. package/dist/core/expressions/context-switcher.d.ts.map +0 -1
  1297. package/dist/core/expressions/context-switcher.js +0 -515
  1298. package/dist/core/expressions/context-switcher.js.map +0 -1
  1299. package/dist/core/expressions/context-validator.d.ts.map +0 -1
  1300. package/dist/core/expressions/context-validator.js.map +0 -1
  1301. package/dist/core/expressions/custom-context-manager.d.ts +0 -194
  1302. package/dist/core/expressions/custom-context-manager.d.ts.map +0 -1
  1303. package/dist/core/expressions/custom-context-manager.js +0 -390
  1304. package/dist/core/expressions/custom-context-manager.js.map +0 -1
  1305. package/dist/core/expressions/expression-proxy.d.ts +0 -80
  1306. package/dist/core/expressions/expression-proxy.d.ts.map +0 -1
  1307. package/dist/core/expressions/expression-proxy.js +0 -227
  1308. package/dist/core/expressions/expression-proxy.js.map +0 -1
  1309. package/dist/core/expressions/factory-integration.d.ts.map +0 -1
  1310. package/dist/core/expressions/factory-integration.js.map +0 -1
  1311. package/dist/core/expressions/factory-pattern-handler.d.ts.map +0 -1
  1312. package/dist/core/expressions/factory-pattern-handler.js.map +0 -1
  1313. package/dist/core/expressions/field-hydration-processor.d.ts +0 -191
  1314. package/dist/core/expressions/field-hydration-processor.d.ts.map +0 -1
  1315. package/dist/core/expressions/field-hydration-processor.js +0 -561
  1316. package/dist/core/expressions/field-hydration-processor.js.map +0 -1
  1317. package/dist/core/expressions/imperative-analyzer.d.ts +0 -21
  1318. package/dist/core/expressions/imperative-analyzer.d.ts.map +0 -1
  1319. package/dist/core/expressions/imperative-analyzer.js.map +0 -1
  1320. package/dist/core/expressions/lazy-analysis.d.ts +0 -1128
  1321. package/dist/core/expressions/lazy-analysis.d.ts.map +0 -1
  1322. package/dist/core/expressions/lazy-analysis.js +0 -2443
  1323. package/dist/core/expressions/lazy-analysis.js.map +0 -1
  1324. package/dist/core/expressions/magic-assignable-analyzer.d.ts.map +0 -1
  1325. package/dist/core/expressions/magic-assignable-analyzer.js.map +0 -1
  1326. package/dist/core/expressions/magic-proxy-analyzer.d.ts.map +0 -1
  1327. package/dist/core/expressions/magic-proxy-analyzer.js.map +0 -1
  1328. package/dist/core/expressions/magic-proxy-detector.d.ts.map +0 -1
  1329. package/dist/core/expressions/magic-proxy-detector.js.map +0 -1
  1330. package/dist/core/expressions/migration-helpers.d.ts.map +0 -1
  1331. package/dist/core/expressions/migration-helpers.js.map +0 -1
  1332. package/dist/core/expressions/optionality-handler.d.ts +0 -503
  1333. package/dist/core/expressions/optionality-handler.d.ts.map +0 -1
  1334. package/dist/core/expressions/optionality-handler.js +0 -1306
  1335. package/dist/core/expressions/optionality-handler.js.map +0 -1
  1336. package/dist/core/expressions/parser.d.ts.map +0 -1
  1337. package/dist/core/expressions/parser.js.map +0 -1
  1338. package/dist/core/expressions/readiness-integration.d.ts +0 -119
  1339. package/dist/core/expressions/readiness-integration.d.ts.map +0 -1
  1340. package/dist/core/expressions/readiness-integration.js +0 -386
  1341. package/dist/core/expressions/readiness-integration.js.map +0 -1
  1342. package/dist/core/expressions/resource-analyzer.d.ts +0 -486
  1343. package/dist/core/expressions/resource-analyzer.d.ts.map +0 -1
  1344. package/dist/core/expressions/resource-analyzer.js +0 -1086
  1345. package/dist/core/expressions/resource-analyzer.js.map +0 -1
  1346. package/dist/core/expressions/resource-validation.d.ts.map +0 -1
  1347. package/dist/core/expressions/resource-validation.js +0 -552
  1348. package/dist/core/expressions/resource-validation.js.map +0 -1
  1349. package/dist/core/expressions/runtime-error-mapper.d.ts +0 -138
  1350. package/dist/core/expressions/runtime-error-mapper.d.ts.map +0 -1
  1351. package/dist/core/expressions/runtime-error-mapper.js +0 -412
  1352. package/dist/core/expressions/runtime-error-mapper.js.map +0 -1
  1353. package/dist/core/expressions/source-map.d.ts.map +0 -1
  1354. package/dist/core/expressions/source-map.js.map +0 -1
  1355. package/dist/core/expressions/status-builder-analyzer.d.ts +0 -353
  1356. package/dist/core/expressions/status-builder-analyzer.d.ts.map +0 -1
  1357. package/dist/core/expressions/status-builder-analyzer.js +0 -1311
  1358. package/dist/core/expressions/status-builder-analyzer.js.map +0 -1
  1359. package/dist/core/expressions/type-inference.d.ts.map +0 -1
  1360. package/dist/core/expressions/type-inference.js.map +0 -1
  1361. package/dist/core/expressions/type-safety.d.ts.map +0 -1
  1362. package/dist/core/expressions/type-safety.js.map +0 -1
  1363. package/dist/core/expressions/types.d.ts.map +0 -1
  1364. package/dist/core/expressions/types.js.map +0 -1
  1365. package/dist/core/factory.d.ts +0 -12
  1366. package/dist/core/factory.d.ts.map +0 -1
  1367. package/dist/core/factory.js +0 -13
  1368. package/dist/core/factory.js.map +0 -1
  1369. package/dist/core/readiness/cluster-state.d.ts +0 -229
  1370. package/dist/core/readiness/cluster-state.d.ts.map +0 -1
  1371. package/dist/core/readiness/cluster-state.js +0 -368
  1372. package/dist/core/readiness/cluster-state.js.map +0 -1
  1373. package/dist/core/scope/resolver.d.ts +0 -16
  1374. package/dist/core/scope/resolver.d.ts.map +0 -1
  1375. package/dist/core/scope/resolver.js +0 -45
  1376. package/dist/core/scope/resolver.js.map +0 -1
  1377. package/dist/core/types/factory-scope.d.ts +0 -42
  1378. package/dist/core/types/factory-scope.d.ts.map +0 -1
  1379. package/dist/core/types/factory-scope.js +0 -14
  1380. package/dist/core/types/factory-scope.js.map +0 -1
  1381. package/dist/core/utils/crd-patcher.d.ts.map +0 -1
  1382. package/dist/core/utils/crd-patcher.js +0 -198
  1383. package/dist/core/utils/crd-patcher.js.map +0 -1
  1384. package/dist/core/utils/crd-schema-fix.d.ts.map +0 -1
  1385. package/dist/core/utils/crd-schema-fix.js.map +0 -1
  1386. package/dist/core/utils/index.d.ts +0 -12
  1387. package/dist/core/utils/index.d.ts.map +0 -1
  1388. package/dist/core/utils/index.js +0 -12
  1389. package/dist/core/utils/index.js.map +0 -1
  1390. package/dist/core/utils/minimal-connection-reset-suppression.d.ts +0 -16
  1391. package/dist/core/utils/minimal-connection-reset-suppression.d.ts.map +0 -1
  1392. package/dist/core/utils/minimal-connection-reset-suppression.js +0 -72
  1393. package/dist/core/utils/minimal-connection-reset-suppression.js.map +0 -1
  1394. package/dist/core/utils/output-filter.d.ts +0 -16
  1395. package/dist/core/utils/output-filter.d.ts.map +0 -1
  1396. package/dist/core/utils/output-filter.js +0 -90
  1397. package/dist/core/utils/output-filter.js.map +0 -1
  1398. package/dist/core/utils/scoped-error-suppression.d.ts +0 -25
  1399. package/dist/core/utils/scoped-error-suppression.d.ts.map +0 -1
  1400. package/dist/core/utils/scoped-error-suppression.js +0 -226
  1401. package/dist/core/utils/scoped-error-suppression.js.map +0 -1
  1402. package/dist/core.d.ts +0 -30
  1403. package/dist/core.d.ts.map +0 -1
  1404. package/dist/core.js +0 -59
  1405. package/dist/core.js.map +0 -1
  1406. package/dist/factories/cilium/resources/bgp.d.ts +0 -10
  1407. package/dist/factories/cilium/resources/bgp.d.ts.map +0 -1
  1408. package/dist/factories/cilium/resources/bgp.js +0 -14
  1409. package/dist/factories/cilium/resources/bgp.js.map +0 -1
  1410. package/dist/factories/cilium/resources/load-balancer.d.ts +0 -9
  1411. package/dist/factories/cilium/resources/load-balancer.d.ts.map +0 -1
  1412. package/dist/factories/cilium/resources/load-balancer.js +0 -12
  1413. package/dist/factories/cilium/resources/load-balancer.js.map +0 -1
  1414. package/dist/factories/cilium/resources/observability.d.ts +0 -9
  1415. package/dist/factories/cilium/resources/observability.d.ts.map +0 -1
  1416. package/dist/factories/cilium/resources/observability.js +0 -11
  1417. package/dist/factories/cilium/resources/observability.js.map +0 -1
  1418. package/dist/factories/cilium/resources/security.d.ts +0 -10
  1419. package/dist/factories/cilium/resources/security.d.ts.map +0 -1
  1420. package/dist/factories/cilium/resources/security.js +0 -14
  1421. package/dist/factories/cilium/resources/security.js.map +0 -1
  1422. /package/dist/{core/composition → compositions}/typekro-runtime/index.js +0 -0
  1423. /package/dist/{core/composition → compositions}/typekro-runtime/types.js +0 -0
  1424. /package/dist/core/expressions/{source-map.d.ts → analysis/source-map.d.ts} +0 -0
  1425. /package/dist/core/expressions/{types.js → analysis/types.js} +0 -0
@@ -1,1311 +0,0 @@
1
- /**
2
- * Status Builder Analyzer for JavaScript to CEL Expression Conversion
3
- *
4
- * This module provides specialized analysis for status builder functions used in
5
- * toResourceGraph. It detects KubernetesRef objects from the magic proxy system
6
- * and converts JavaScript expressions to appropriate CEL expressions for status
7
- * field population.
8
- *
9
- * Key Features:
10
- * - Analyzes status builder functions for KubernetesRef detection
11
- * - Converts return object expressions to CEL for status field mapping
12
- * - Integrates with magic proxy system (SchemaProxy and ResourcesProxy)
13
- * - Provides status context-specific CEL generation
14
- * - Supports both direct and Kro factory patterns
15
- */
16
- import * as acorn from 'acorn';
17
- import * as estraverse from 'estraverse';
18
- import { ConversionError } from '../errors.js';
19
- import { getComponentLogger } from '../logging/index.js';
20
- import { containsKubernetesRefs } from '../../utils/type-guards.js';
21
- import { JavaScriptToCelAnalyzer } from './analyzer.js';
22
- import { MagicProxyAnalyzer, } from './magic-proxy-analyzer.js';
23
- import { SourceMapBuilder } from './source-map.js';
24
- import { EnhancedTypeOptionalityHandler } from './optionality-handler.js';
25
- import { CEL_EXPRESSION_BRAND } from '../constants/brands.js';
26
- /**
27
- * Default analysis options
28
- */
29
- const DEFAULT_ANALYSIS_OPTIONS = {
30
- deepAnalysis: true,
31
- includeSourceMapping: true,
32
- validateReferences: true,
33
- performOptionalityAnalysis: true,
34
- factoryType: 'kro',
35
- maxDepth: 10,
36
- hydrationStates: new Map(),
37
- conservativeNullSafety: true
38
- };
39
- /**
40
- * Status Builder Analyzer
41
- *
42
- * Analyzes status builder functions to extract KubernetesRef dependencies
43
- * and convert JavaScript expressions to CEL for status field population.
44
- */
45
- export class StatusBuilderAnalyzer {
46
- expressionAnalyzer;
47
- magicProxyAnalyzer;
48
- optionalityHandler;
49
- options;
50
- logger = getComponentLogger('status-builder-analyzer');
51
- constructor(expressionAnalyzer, options) {
52
- this.expressionAnalyzer = expressionAnalyzer || new JavaScriptToCelAnalyzer();
53
- this.magicProxyAnalyzer = new MagicProxyAnalyzer();
54
- this.optionalityHandler = new EnhancedTypeOptionalityHandler();
55
- this.options = { ...DEFAULT_ANALYSIS_OPTIONS, ...options };
56
- }
57
- /**
58
- * Analyze status builder function for toResourceGraph integration
59
- *
60
- * This is the main method that analyzes a status builder function and extracts
61
- * KubernetesRef dependencies for conversion to CEL expressions.
62
- */
63
- analyzeStatusBuilder(statusBuilder, resources, schemaProxy) {
64
- try {
65
- this.logger.debug('Analyzing status builder function', {
66
- resourceCount: Object.keys(resources).length,
67
- hasSchemaProxy: !!schemaProxy,
68
- factoryType: this.options.factoryType
69
- });
70
- const originalSource = statusBuilder.toString();
71
- // Parse the status builder function
72
- const ast = this.parseStatusBuilderFunction(originalSource);
73
- // Analyze the return statement
74
- const returnStatement = this.analyzeReturnStatement(ast, originalSource);
75
- if (!returnStatement || !returnStatement.returnsObject) {
76
- throw new ConversionError('Status builder must return an object literal', originalSource, 'function-call');
77
- }
78
- // Analyze each property in the returned object
79
- const fieldAnalysis = new Map();
80
- const statusMappings = {};
81
- const allDependencies = [];
82
- const allSourceMap = [];
83
- const allErrors = [];
84
- let overallValid = true;
85
- for (const property of returnStatement.properties) {
86
- try {
87
- const fieldResult = this.analyzeStatusField(property, resources, originalSource, schemaProxy);
88
- fieldAnalysis.set(property.name, fieldResult);
89
- if (fieldResult.valid) {
90
- if (fieldResult.celExpression) {
91
- // For dynamic expressions, use the CEL expression directly
92
- statusMappings[property.name] = fieldResult.celExpression;
93
- }
94
- else if (fieldResult.staticValue !== undefined) {
95
- // For static objects, keep as plain JavaScript objects for performance
96
- statusMappings[property.name] = fieldResult.staticValue;
97
- }
98
- else if (property.valueNode.type === 'Literal') {
99
- // For static literals, keep as plain JavaScript values for performance
100
- statusMappings[property.name] = property.valueNode.value;
101
- }
102
- else if (property.valueNode.type === 'Identifier' && property.valueNode.name === 'undefined') {
103
- // For undefined identifier, preserve as undefined (will be filtered out during serialization)
104
- statusMappings[property.name] = undefined;
105
- }
106
- else if (property.valueNode.type === 'UnaryExpression' &&
107
- property.valueNode.operator === '!' &&
108
- property.valueNode.argument?.type === 'Literal' &&
109
- typeof property.valueNode.argument.value === 'number') {
110
- // For boolean literals represented as !0 or !1
111
- const booleanValue = property.valueNode.argument.value === 0; // !0 = true, !1 = false
112
- statusMappings[property.name] = booleanValue;
113
- }
114
- }
115
- allDependencies.push(...fieldResult.dependencies);
116
- allSourceMap.push(...fieldResult.sourceMap);
117
- allErrors.push(...fieldResult.errors);
118
- if (!fieldResult.valid) {
119
- overallValid = false;
120
- }
121
- }
122
- catch (error) {
123
- const fieldError = new ConversionError(`Failed to analyze status field '${property.name}': ${error instanceof Error ? error.message : String(error)}`, property.valueSource, 'unknown');
124
- allErrors.push(fieldError);
125
- overallValid = false;
126
- this.logger.debug('Status field analysis using fallback', {
127
- fieldName: property.name,
128
- reason: 'Field contains patterns that cannot be converted to CEL',
129
- fallbackBehavior: 'Static evaluation will be used',
130
- error: error instanceof Error ? error.message : String(error)
131
- });
132
- }
133
- }
134
- // Categorize dependencies
135
- const { resourceReferences, schemaReferences } = this.categorizeDependencies(allDependencies);
136
- this.logger.debug('Status builder analysis complete', {
137
- fieldCount: returnStatement.properties.length,
138
- validFields: Object.keys(statusMappings).length,
139
- totalDependencies: allDependencies.length,
140
- resourceReferences: resourceReferences.length,
141
- schemaReferences: schemaReferences.length,
142
- overallValid
143
- });
144
- return {
145
- fieldAnalysis,
146
- statusMappings,
147
- allDependencies,
148
- resourceReferences,
149
- schemaReferences,
150
- sourceMap: allSourceMap,
151
- errors: allErrors,
152
- valid: overallValid,
153
- originalSource,
154
- ast,
155
- returnStatement
156
- };
157
- }
158
- catch (error) {
159
- const analysisError = new ConversionError(`Failed to analyze status builder: ${error instanceof Error ? error.message : String(error)}`, statusBuilder.toString(), 'function-call');
160
- this.logger.info('Status builder analysis using fallback - this is normal for certain patterns', {
161
- reason: 'Status builder contains patterns that cannot be converted to CEL expressions',
162
- fallbackBehavior: 'Static evaluation will be used instead',
163
- error: error instanceof Error ? error.message : String(error)
164
- });
165
- return {
166
- fieldAnalysis: new Map(),
167
- statusMappings: {},
168
- allDependencies: [],
169
- resourceReferences: [],
170
- schemaReferences: [],
171
- sourceMap: [],
172
- errors: [analysisError],
173
- valid: false,
174
- originalSource: statusBuilder.toString()
175
- };
176
- }
177
- }
178
- /**
179
- * Analyze return object expressions with magic proxy support
180
- *
181
- * This method analyzes the object returned by the status builder function
182
- * and detects KubernetesRef objects from the magic proxy system.
183
- */
184
- analyzeReturnObjectWithMagicProxy(returnObject, resources, schemaProxy) {
185
- const statusMappings = {};
186
- const dependencies = [];
187
- const errors = [];
188
- if (!returnObject || typeof returnObject !== 'object') {
189
- errors.push(new ConversionError('Return object must be a valid object', String(returnObject), 'unknown'));
190
- return { statusMappings, dependencies, errors };
191
- }
192
- for (const [fieldName, fieldValue] of Object.entries(returnObject)) {
193
- try {
194
- const fieldResult = this.analyzeReturnObjectField(fieldName, fieldValue, resources, schemaProxy);
195
- if (fieldResult.celExpression) {
196
- statusMappings[fieldName] = fieldResult.celExpression;
197
- }
198
- dependencies.push(...fieldResult.dependencies);
199
- errors.push(...fieldResult.errors);
200
- }
201
- catch (error) {
202
- errors.push(new ConversionError(`Failed to analyze field '${fieldName}': ${error instanceof Error ? error.message : String(error)}`, String(fieldValue), 'unknown'));
203
- }
204
- }
205
- return { statusMappings, dependencies, errors };
206
- }
207
- /**
208
- * Analyze a single field in the return object with comprehensive magic proxy support
209
- */
210
- analyzeReturnObjectField(fieldName, fieldValue, resources, schemaProxy) {
211
- try {
212
- // Create comprehensive analysis context
213
- const context = {
214
- type: 'status',
215
- availableReferences: resources,
216
- ...(schemaProxy && { schemaProxy }),
217
- factoryType: this.options.factoryType,
218
- hydrationStates: this.options.hydrationStates,
219
- conservativeNullSafety: this.options.conservativeNullSafety,
220
- useKroConditionals: true,
221
- generateHasChecks: true,
222
- maxOptionalityDepth: this.options.maxDepth,
223
- dependencies: []
224
- };
225
- // Step 1: Detect if the field value contains KubernetesRef objects
226
- const containsRefs = containsKubernetesRefs(fieldValue);
227
- if (!containsRefs) {
228
- // No KubernetesRef objects - return as static value
229
- return {
230
- celExpression: this.convertStaticValueToCel(fieldValue),
231
- dependencies: [],
232
- errors: [],
233
- requiresConversion: false
234
- };
235
- }
236
- // Step 2: Analyze KubernetesRef objects for optionality requirements
237
- const optionalityResults = this.optionalityHandler.analyzeOptionalityRequirements(fieldValue, context);
238
- // Step 3: Generate CEL expression with appropriate null-safety
239
- const celResult = this.optionalityHandler.generateNullSafeCelExpression(fieldValue, optionalityResults, context);
240
- // Step 4: Extract dependencies from the analysis
241
- const dependencies = optionalityResults.map(result => result.kubernetesRef);
242
- return {
243
- celExpression: celResult.celExpression,
244
- dependencies,
245
- errors: celResult.errors,
246
- requiresConversion: true
247
- };
248
- }
249
- catch (error) {
250
- const fieldError = new ConversionError(`Failed to analyze return object field '${fieldName}': ${error instanceof Error ? error.message : String(error)}`, String(fieldValue), 'unknown');
251
- return {
252
- celExpression: null,
253
- dependencies: [],
254
- errors: [fieldError],
255
- requiresConversion: false
256
- };
257
- }
258
- }
259
- /**
260
- * Convert static values (no KubernetesRef objects) to CEL expressions
261
- */
262
- convertStaticValueToCel(value) {
263
- let celExpression;
264
- let type;
265
- if (typeof value === 'string') {
266
- celExpression = `"${value.replace(/"/g, '\\"')}"`;
267
- type = 'string';
268
- }
269
- else if (typeof value === 'number') {
270
- celExpression = String(value);
271
- type = 'number';
272
- }
273
- else if (typeof value === 'boolean') {
274
- celExpression = String(value);
275
- type = 'boolean';
276
- }
277
- else if (value === null) {
278
- celExpression = 'null';
279
- type = 'null';
280
- }
281
- else if (value === undefined) {
282
- celExpression = 'null';
283
- type = 'null';
284
- }
285
- else if (Array.isArray(value)) {
286
- const elements = value.map(item => this.convertStaticValueToCel(item).expression);
287
- celExpression = `[${elements.join(', ')}]`;
288
- type = 'array';
289
- }
290
- else if (typeof value === 'object') {
291
- const properties = Object.entries(value).map(([key, val]) => {
292
- const convertedVal = this.convertStaticValueToCel(val);
293
- return `"${key}": ${convertedVal.expression}`;
294
- });
295
- celExpression = `{${properties.join(', ')}}`;
296
- type = 'object';
297
- }
298
- else {
299
- celExpression = String(value);
300
- type = 'unknown';
301
- }
302
- return {
303
- [CEL_EXPRESSION_BRAND]: true,
304
- expression: celExpression,
305
- type
306
- };
307
- }
308
- /**
309
- * Perform deep analysis of nested return object structures
310
- */
311
- analyzeNestedReturnObjectStructure(returnObject, resources, schemaProxy, depth = 0) {
312
- const flattenedMappings = {};
313
- const nestedDependencies = new Map();
314
- const structureErrors = [];
315
- if (depth > this.options.maxDepth) {
316
- structureErrors.push(new ConversionError(`Maximum analysis depth (${this.options.maxDepth}) exceeded`, String(returnObject), 'unknown'));
317
- return { flattenedMappings, nestedDependencies, structureErrors };
318
- }
319
- try {
320
- this.analyzeObjectStructureRecursively(returnObject, '', flattenedMappings, nestedDependencies, structureErrors, resources, schemaProxy, depth);
321
- }
322
- catch (error) {
323
- structureErrors.push(new ConversionError(`Failed to analyze nested structure: ${error instanceof Error ? error.message : String(error)}`, String(returnObject), 'unknown'));
324
- }
325
- return { flattenedMappings, nestedDependencies, structureErrors };
326
- }
327
- /**
328
- * Recursively analyze object structure for KubernetesRef objects
329
- */
330
- analyzeObjectStructureRecursively(obj, pathPrefix, flattenedMappings, nestedDependencies, errors, resources, schemaProxy, depth = 0) {
331
- if (!obj || typeof obj !== 'object' || Array.isArray(obj)) {
332
- return;
333
- }
334
- for (const [key, value] of Object.entries(obj)) {
335
- const fullPath = pathPrefix ? `${pathPrefix}.${key}` : key;
336
- try {
337
- if (containsKubernetesRefs(value)) {
338
- // Analyze this field for KubernetesRef objects
339
- const fieldResult = this.analyzeReturnObjectField(fullPath, value, resources, schemaProxy);
340
- if (fieldResult.celExpression) {
341
- flattenedMappings[fullPath] = fieldResult.celExpression;
342
- }
343
- if (fieldResult.dependencies.length > 0) {
344
- nestedDependencies.set(fullPath, fieldResult.dependencies);
345
- }
346
- errors.push(...fieldResult.errors);
347
- }
348
- else if (value && typeof value === 'object' && !Array.isArray(value)) {
349
- // Recursively analyze nested objects
350
- this.analyzeObjectStructureRecursively(value, fullPath, flattenedMappings, nestedDependencies, errors, resources, schemaProxy, depth + 1);
351
- }
352
- else {
353
- // Static value - convert directly
354
- flattenedMappings[fullPath] = this.convertStaticValueToCel(value);
355
- }
356
- }
357
- catch (error) {
358
- errors.push(new ConversionError(`Failed to analyze nested field '${fullPath}': ${error instanceof Error ? error.message : String(error)}`, String(value), 'unknown'));
359
- }
360
- }
361
- }
362
- /**
363
- * Generate status context-specific CEL from KubernetesRef objects
364
- *
365
- * This method generates CEL expressions specifically for status context,
366
- * taking into account the magic proxy system and field hydration timing.
367
- */
368
- generateStatusContextCel(kubernetesRef, context) {
369
- try {
370
- return this.generateStatusContextCelWithAdvancedFeatures(kubernetesRef, context);
371
- }
372
- catch (error) {
373
- this.logger.debug('Status context CEL generation using fallback', {
374
- resourceId: kubernetesRef.resourceId,
375
- fieldPath: kubernetesRef.fieldPath,
376
- reason: 'Reference pattern cannot be converted to CEL',
377
- fallbackBehavior: 'Static reference will be used',
378
- error: error instanceof Error ? error.message : String(error)
379
- });
380
- // Return a safe fallback
381
- return this.generateFallbackStatusCel(kubernetesRef);
382
- }
383
- }
384
- /**
385
- * Generate advanced status context CEL with full feature support
386
- */
387
- generateStatusContextCelWithAdvancedFeatures(kubernetesRef, context) {
388
- const isSchemaRef = kubernetesRef.resourceId === '__schema__';
389
- const fieldPath = kubernetesRef.fieldPath || '';
390
- // Build base CEL expression
391
- let baseCelExpression;
392
- if (isSchemaRef) {
393
- baseCelExpression = `schema.${fieldPath}`;
394
- }
395
- else {
396
- baseCelExpression = `resources.${kubernetesRef.resourceId}.${fieldPath}`;
397
- }
398
- // Determine status-specific handling requirements
399
- const statusHandlingInfo = this.analyzeStatusFieldHandlingRequirements(kubernetesRef, context);
400
- // Apply status-specific transformations
401
- const finalExpression = this.applyStatusContextTransformations(baseCelExpression, statusHandlingInfo, context);
402
- // Infer the result type based on the field path and context
403
- const resultType = this.inferStatusFieldType(kubernetesRef, context);
404
- return {
405
- [CEL_EXPRESSION_BRAND]: true,
406
- expression: finalExpression,
407
- type: resultType,
408
- metadata: {
409
- isStatusContext: true,
410
- requiresHydration: statusHandlingInfo.requiresHydration,
411
- isOptional: statusHandlingInfo.isOptional,
412
- handlingStrategy: statusHandlingInfo.strategy
413
- }
414
- };
415
- }
416
- /**
417
- * Analyze status field handling requirements
418
- */
419
- analyzeStatusFieldHandlingRequirements(kubernetesRef, context) {
420
- const fieldPath = kubernetesRef.fieldPath || '';
421
- const isSchemaRef = kubernetesRef.resourceId === '__schema__';
422
- const isStatusField = fieldPath.startsWith('status.');
423
- // Determine if this field requires hydration
424
- const requiresHydration = !isSchemaRef && isStatusField;
425
- // Determine if this field is optional in status context
426
- const isOptional = this.isFieldOptionalInStatusContext(kubernetesRef, context);
427
- // Determine handling strategy
428
- let strategy;
429
- if (requiresHydration && isOptional) {
430
- strategy = 'hydration-with-null-safety';
431
- }
432
- else if (requiresHydration) {
433
- strategy = 'hydration-required';
434
- }
435
- else if (isOptional) {
436
- strategy = 'null-safety-only';
437
- }
438
- else {
439
- strategy = 'direct-access';
440
- }
441
- // Determine priority for status field evaluation
442
- const priority = this.calculateStatusFieldPriority(kubernetesRef, context);
443
- return {
444
- kubernetesRef,
445
- requiresHydration,
446
- isOptional,
447
- strategy,
448
- priority,
449
- fieldCategory: this.categorizeStatusField(fieldPath),
450
- expectedAvailability: this.estimateFieldAvailability(kubernetesRef, context)
451
- };
452
- }
453
- /**
454
- * Apply status context-specific transformations to CEL expression
455
- */
456
- applyStatusContextTransformations(baseCelExpression, handlingInfo, context) {
457
- let transformedExpression = baseCelExpression;
458
- switch (handlingInfo.strategy) {
459
- case 'hydration-with-null-safety':
460
- transformedExpression = this.applyHydrationWithNullSafety(baseCelExpression, handlingInfo, context);
461
- break;
462
- case 'hydration-required':
463
- transformedExpression = this.applyHydrationRequired(baseCelExpression, handlingInfo, context);
464
- break;
465
- case 'null-safety-only':
466
- transformedExpression = this.applyNullSafetyOnly(baseCelExpression, handlingInfo, context);
467
- break;
468
- case 'direct-access':
469
- // No transformation needed
470
- break;
471
- }
472
- return transformedExpression;
473
- }
474
- /**
475
- * Apply hydration with null-safety transformation
476
- */
477
- applyHydrationWithNullSafety(baseCelExpression, _handlingInfo, context) {
478
- if (context.useKroConditionals) {
479
- // Use Kro's conditional operators
480
- return baseCelExpression.replace(/\./g, '?.');
481
- }
482
- else if (context.generateHasChecks) {
483
- // Use has() checks
484
- const pathParts = baseCelExpression.split('.');
485
- const hasChecks = [];
486
- for (let i = 0; i < pathParts.length; i++) {
487
- const partialPath = pathParts.slice(0, i + 1).join('.');
488
- hasChecks.push(`has(${partialPath})`);
489
- }
490
- return `${hasChecks.join(' && ')} && ${baseCelExpression}`;
491
- }
492
- return baseCelExpression;
493
- }
494
- /**
495
- * Apply hydration required transformation
496
- */
497
- applyHydrationRequired(baseCelExpression, handlingInfo, _context) {
498
- // For hydration required fields, we might want to add readiness checks
499
- if (handlingInfo.fieldCategory === 'readiness-indicator') {
500
- return `${baseCelExpression} != null && ${baseCelExpression}`;
501
- }
502
- return baseCelExpression;
503
- }
504
- /**
505
- * Apply null-safety only transformation
506
- */
507
- applyNullSafetyOnly(baseCelExpression, _handlingInfo, context) {
508
- if (context.generateHasChecks) {
509
- return `has(${baseCelExpression}) && ${baseCelExpression}`;
510
- }
511
- return baseCelExpression;
512
- }
513
- /**
514
- * Check if a field is optional in status context
515
- */
516
- isFieldOptionalInStatusContext(kubernetesRef, _context) {
517
- const fieldPath = kubernetesRef.fieldPath || '';
518
- // Status fields are generally optional during hydration
519
- if (fieldPath.startsWith('status.')) {
520
- return true;
521
- }
522
- // Some spec fields might be optional
523
- const optionalSpecFields = [
524
- 'spec.replicas',
525
- 'spec.resources',
526
- 'spec.nodeSelector',
527
- 'spec.tolerations'
528
- ];
529
- if (optionalSpecFields.some(field => fieldPath.startsWith(field))) {
530
- return true;
531
- }
532
- // Metadata fields like labels and annotations are optional
533
- const optionalMetadataFields = [
534
- 'metadata.labels',
535
- 'metadata.annotations',
536
- 'metadata.namespace'
537
- ];
538
- if (optionalMetadataFields.some(field => fieldPath.startsWith(field))) {
539
- return true;
540
- }
541
- return false;
542
- }
543
- /**
544
- * Calculate priority for status field evaluation
545
- */
546
- calculateStatusFieldPriority(kubernetesRef, _context) {
547
- const fieldPath = kubernetesRef.fieldPath || '';
548
- // Higher priority (lower number) for critical status fields
549
- if (fieldPath.includes('ready') || fieldPath.includes('available')) {
550
- return 1;
551
- }
552
- if (fieldPath.startsWith('status.conditions')) {
553
- return 2;
554
- }
555
- if (fieldPath.startsWith('status.')) {
556
- return 3;
557
- }
558
- if (fieldPath.startsWith('spec.')) {
559
- return 4;
560
- }
561
- if (fieldPath.startsWith('metadata.')) {
562
- return 5;
563
- }
564
- return 10; // Default priority
565
- }
566
- /**
567
- * Categorize status field type
568
- */
569
- categorizeStatusField(fieldPath) {
570
- if (fieldPath.includes('ready') || fieldPath.includes('available')) {
571
- return 'readiness-indicator';
572
- }
573
- if (fieldPath.includes('conditions')) {
574
- return 'condition-status';
575
- }
576
- if (fieldPath.includes('replicas')) {
577
- return 'replica-status';
578
- }
579
- if (fieldPath.includes('loadBalancer') || fieldPath.includes('ingress')) {
580
- return 'network-status';
581
- }
582
- if (fieldPath.includes('phase') || fieldPath.includes('state')) {
583
- return 'lifecycle-status';
584
- }
585
- return 'general-status';
586
- }
587
- /**
588
- * Estimate field availability timing
589
- */
590
- estimateFieldAvailability(kubernetesRef, _context) {
591
- const fieldPath = kubernetesRef.fieldPath || '';
592
- if (kubernetesRef.resourceId === '__schema__') {
593
- return 'immediate';
594
- }
595
- if (fieldPath.startsWith('metadata.')) {
596
- return 'immediate';
597
- }
598
- if (fieldPath.startsWith('spec.')) {
599
- return 'immediate';
600
- }
601
- if (fieldPath.includes('ready') || fieldPath.includes('available')) {
602
- return 'delayed';
603
- }
604
- if (fieldPath.includes('loadBalancer') || fieldPath.includes('ingress')) {
605
- return 'very-delayed';
606
- }
607
- return 'delayed';
608
- }
609
- /**
610
- * Infer the type of a status field
611
- */
612
- inferStatusFieldType(kubernetesRef, _context) {
613
- const fieldPath = kubernetesRef.fieldPath || '';
614
- if (fieldPath.includes('replicas') || fieldPath.includes('count')) {
615
- return 'number';
616
- }
617
- if (fieldPath.includes('ready') || fieldPath.includes('available')) {
618
- return 'boolean';
619
- }
620
- if (fieldPath.includes('conditions')) {
621
- return 'array';
622
- }
623
- if (fieldPath.includes('phase') || fieldPath.includes('state')) {
624
- return 'string';
625
- }
626
- if (fieldPath.includes('ip') || fieldPath.includes('IP')) {
627
- return 'string';
628
- }
629
- return 'unknown';
630
- }
631
- /**
632
- * Analyze a mixed object expression (contains both static and dynamic values)
633
- */
634
- analyzeMixedObjectExpression(objectNode, resources, originalSource, schemaProxy) {
635
- if (objectNode.type !== 'ObjectExpression') {
636
- return { valid: false, processedObject: null, dependencies: [], requiresConversion: false };
637
- }
638
- const result = {};
639
- const allDependencies = [];
640
- let requiresConversion = false;
641
- for (const prop of objectNode.properties) {
642
- if (prop.type === 'Property' && prop.key.type === 'Identifier') {
643
- const key = prop.key.name;
644
- // Handle different value types
645
- if (prop.value.type === 'Literal') {
646
- // Static literal value
647
- result[key] = prop.value.value;
648
- }
649
- else if (prop.value.type === 'ObjectExpression') {
650
- // Nested object - recursively analyze
651
- const nestedResult = this.analyzeMixedObjectExpression(prop.value, resources, originalSource, schemaProxy);
652
- if (nestedResult.valid) {
653
- result[key] = nestedResult.processedObject;
654
- allDependencies.push(...nestedResult.dependencies);
655
- if (nestedResult.requiresConversion) {
656
- requiresConversion = true;
657
- }
658
- }
659
- else {
660
- return { valid: false, processedObject: null, dependencies: [], requiresConversion: false };
661
- }
662
- }
663
- else {
664
- // Dynamic expression - analyze with expression analyzer
665
- let valueSource;
666
- try {
667
- valueSource = this.getNodeSource(prop.value, originalSource);
668
- }
669
- catch (_error) {
670
- return { valid: false, processedObject: null, dependencies: [], requiresConversion: false };
671
- }
672
- // Create analysis context
673
- const context = {
674
- type: 'status',
675
- availableReferences: resources,
676
- ...(schemaProxy && { schemaProxy }),
677
- factoryType: this.options.factoryType,
678
- dependencies: []
679
- };
680
- try {
681
- // Analyze the expression using the main analyzer
682
- const analysisResult = this.expressionAnalyzer.analyzeExpression(valueSource, context);
683
- if (analysisResult.valid && analysisResult.celExpression) {
684
- // Dynamic expression - wrap in CEL
685
- const celString = analysisResult.celExpression.expression;
686
- result[key] = celString.includes('${') ? celString : `\${${celString}}`;
687
- allDependencies.push(...analysisResult.dependencies);
688
- requiresConversion = true;
689
- }
690
- else {
691
- // Try to evaluate as static value
692
- const staticValue = this.evaluateStaticValue(prop.value);
693
- if (staticValue !== null) {
694
- result[key] = staticValue;
695
- }
696
- else {
697
- return { valid: false, processedObject: null, dependencies: [], requiresConversion: false };
698
- }
699
- }
700
- }
701
- catch (error) {
702
- // If expression analysis fails, try static evaluation
703
- const staticValue = this.evaluateStaticValue(prop.value);
704
- if (staticValue !== null) {
705
- result[key] = staticValue;
706
- }
707
- else {
708
- console.log(`Failed to analyze property '${key}' of type '${prop.value.type}':`, error);
709
- return { valid: false, processedObject: null, dependencies: [], requiresConversion: false };
710
- }
711
- }
712
- }
713
- }
714
- else {
715
- // Non-standard property structure
716
- return { valid: false, processedObject: null, dependencies: [], requiresConversion: false };
717
- }
718
- }
719
- return {
720
- valid: true,
721
- processedObject: result,
722
- dependencies: allDependencies,
723
- requiresConversion
724
- };
725
- }
726
- /**
727
- * Evaluate a static object expression to a JavaScript object
728
- */
729
- evaluateStaticObjectExpression(objectNode) {
730
- if (objectNode.type !== 'ObjectExpression') {
731
- return null;
732
- }
733
- const result = {};
734
- for (const prop of objectNode.properties) {
735
- if (prop.type === 'Property' && prop.key.type === 'Identifier') {
736
- const key = prop.key.name;
737
- const value = this.evaluateStaticValue(prop.value);
738
- if (value === null && prop.value.type !== 'Literal') {
739
- // If we can't evaluate a property statically, this isn't a static object
740
- return null;
741
- }
742
- result[key] = value;
743
- }
744
- else {
745
- // Non-static property structure
746
- return null;
747
- }
748
- }
749
- return result;
750
- }
751
- /**
752
- * Evaluate a static value from an AST node
753
- */
754
- evaluateStaticValue(node) {
755
- switch (node.type) {
756
- case 'Literal':
757
- return node.value;
758
- case 'UnaryExpression':
759
- if (node.operator === '!' && node.argument?.type === 'Literal') {
760
- return !node.argument.value;
761
- }
762
- if (node.operator === '-' && node.argument?.type === 'Literal' && typeof node.argument.value === 'number') {
763
- return -node.argument.value;
764
- }
765
- return null;
766
- case 'ObjectExpression':
767
- return this.evaluateStaticObjectExpression(node);
768
- case 'ArrayExpression': {
769
- const arrayResult = [];
770
- for (const element of node.elements) {
771
- if (element === null) {
772
- arrayResult.push(null);
773
- }
774
- else {
775
- const elementValue = this.evaluateStaticValue(element);
776
- if (elementValue === null && element.type !== 'Literal') {
777
- return null; // Non-static array
778
- }
779
- arrayResult.push(elementValue);
780
- }
781
- }
782
- return arrayResult;
783
- }
784
- default:
785
- return null; // Non-static value
786
- }
787
- }
788
- /**
789
- * Create a CelExpression for a static value
790
- */
791
- createStaticCelExpression(value) {
792
- return {
793
- [CEL_EXPRESSION_BRAND]: true,
794
- expression: value
795
- };
796
- }
797
- /**
798
- * Extract source code for an AST node using range information
799
- */
800
- getNodeSource(node, originalSource) {
801
- if (!node || !node.type) {
802
- return '';
803
- }
804
- // Try to use range information to extract the actual source
805
- let start;
806
- let end;
807
- // Check for start/end properties (acorn format)
808
- if (typeof node.start === 'number' && typeof node.end === 'number') {
809
- start = node.start;
810
- end = node.end;
811
- }
812
- // Check for range array (alternative format)
813
- else if (Array.isArray(node.range) && node.range.length === 2) {
814
- start = node.range[0];
815
- end = node.range[1];
816
- }
817
- // If we have valid range information, extract the source
818
- if (typeof start === 'number' && typeof end === 'number' &&
819
- start >= 0 && end <= originalSource.length && start <= end) {
820
- const extracted = originalSource.slice(start, end).trim();
821
- if (extracted.length > 0) {
822
- return extracted;
823
- }
824
- }
825
- // Fallback to manual reconstruction for specific node types
826
- switch (node.type) {
827
- case 'Literal':
828
- return typeof node.value === 'string' ? `"${node.value}"` : String(node.value);
829
- case 'Identifier':
830
- return node.name;
831
- case 'BinaryExpression': {
832
- const left = this.getNodeSource(node.left, originalSource);
833
- const right = this.getNodeSource(node.right, originalSource);
834
- return `${left} ${node.operator} ${right}`;
835
- }
836
- case 'MemberExpression': {
837
- const object = this.getNodeSource(node.object, originalSource);
838
- if (node.computed) {
839
- return `${object}[${this.getNodeSource(node.property, originalSource)}]`;
840
- }
841
- else {
842
- const propertyName = node.property.name || this.getNodeSource(node.property, originalSource);
843
- return `${object}.${propertyName}`;
844
- }
845
- }
846
- case 'ConditionalExpression':
847
- return `${this.getNodeSource(node.test, originalSource)} ? ${this.getNodeSource(node.consequent, originalSource)} : ${this.getNodeSource(node.alternate, originalSource)}`;
848
- case 'LogicalExpression':
849
- return `${this.getNodeSource(node.left, originalSource)} ${node.operator} ${this.getNodeSource(node.right, originalSource)}`;
850
- case 'CallExpression': {
851
- const callee = this.getNodeSource(node.callee, originalSource);
852
- const args = node.arguments.map((arg) => this.getNodeSource(arg, originalSource)).join(', ');
853
- return `${callee}(${args})`;
854
- }
855
- case 'ArrowFunctionExpression': {
856
- const params = node.params.map((param) => param.name).join(', ');
857
- const body = this.getNodeSource(node.body, originalSource);
858
- return `(${params}) => ${body}`;
859
- }
860
- case 'TemplateLiteral': {
861
- // Simplified template literal reconstruction
862
- let result = '`';
863
- for (let i = 0; i < node.quasis.length; i++) {
864
- const quasi = node.quasis[i];
865
- result += quasi?.value?.raw || quasi?.value?.cooked || '';
866
- if (i < node.expressions.length) {
867
- result += `\${${this.getNodeSource(node.expressions[i], originalSource)}}`;
868
- }
869
- }
870
- result += '`';
871
- return result;
872
- }
873
- default:
874
- // Fallback - return a placeholder
875
- return `<${node.type}>`;
876
- }
877
- }
878
- /**
879
- * Generate fallback status CEL expression
880
- */
881
- generateFallbackStatusCel(kubernetesRef) {
882
- const isSchemaRef = kubernetesRef.resourceId === '__schema__';
883
- const basePath = isSchemaRef
884
- ? `schema.${kubernetesRef.fieldPath}`
885
- : `resources.${kubernetesRef.resourceId}.${kubernetesRef.fieldPath}`;
886
- return {
887
- [CEL_EXPRESSION_BRAND]: true,
888
- expression: basePath,
889
- type: 'unknown'
890
- };
891
- }
892
- /**
893
- * Parse status builder function to AST
894
- */
895
- parseStatusBuilderFunction(source) {
896
- try {
897
- // Parse the function source with modern JavaScript support using acorn
898
- const ast = acorn.parse(source, {
899
- ecmaVersion: 2022, // Support modern JavaScript features including optional chaining
900
- sourceType: 'script',
901
- locations: true,
902
- ranges: true
903
- });
904
- return ast;
905
- }
906
- catch (error) {
907
- throw new ConversionError(`Failed to parse status builder function: ${error instanceof Error ? error.message : String(error)}`, source, 'javascript');
908
- }
909
- }
910
- /**
911
- * Analyze the return statement of the status builder
912
- */
913
- analyzeReturnStatement(ast, originalSource) {
914
- let foundReturnStatement = null;
915
- let foundArrowFunction = null;
916
- // Find the return statement or arrow function with implicit return
917
- estraverse.traverse(ast, {
918
- enter: (node) => {
919
- if (node.type === 'ReturnStatement') {
920
- foundReturnStatement = node;
921
- return estraverse.VisitorOption.Break;
922
- }
923
- if (node.type === 'ArrowFunctionExpression' && node.body?.type === 'ObjectExpression') {
924
- foundArrowFunction = node;
925
- return estraverse.VisitorOption.Break;
926
- }
927
- return undefined;
928
- }
929
- });
930
- // Handle explicit return statement
931
- if (foundReturnStatement) {
932
- const returnStatement = foundReturnStatement;
933
- // Check if it returns an object expression
934
- const returnsObject = returnStatement.argument?.type === 'ObjectExpression';
935
- if (!returnsObject) {
936
- return {
937
- node: returnStatement,
938
- returnsObject: false,
939
- properties: [],
940
- sourceLocation: {
941
- line: returnStatement.loc?.start.line || 0,
942
- column: returnStatement.loc?.start.column || 0,
943
- length: 0
944
- }
945
- };
946
- }
947
- // Analyze properties in the object expression
948
- const objectExpression = returnStatement.argument;
949
- const properties = this.analyzeObjectProperties(objectExpression, originalSource);
950
- return {
951
- node: returnStatement,
952
- returnsObject: true,
953
- properties,
954
- sourceLocation: {
955
- line: returnStatement.loc?.start.line || 0,
956
- column: returnStatement.loc?.start.column || 0,
957
- length: returnStatement.range ? returnStatement.range[1] - returnStatement.range[0] : 0
958
- }
959
- };
960
- }
961
- // Handle arrow function with implicit return
962
- if (foundArrowFunction && foundArrowFunction.body?.type === 'ObjectExpression') {
963
- const objectExpression = foundArrowFunction.body;
964
- const properties = this.analyzeObjectProperties(objectExpression, originalSource);
965
- return {
966
- node: foundArrowFunction,
967
- returnsObject: true,
968
- properties,
969
- sourceLocation: {
970
- line: objectExpression.loc?.start.line || 0,
971
- column: objectExpression.loc?.start.column || 0,
972
- length: objectExpression.range ? objectExpression.range[1] - objectExpression.range[0] : 0
973
- }
974
- };
975
- }
976
- return null;
977
- }
978
- /**
979
- * Analyze properties in an object expression
980
- */
981
- analyzeObjectProperties(objectExpression, originalSource) {
982
- const properties = [];
983
- for (const prop of objectExpression.properties) {
984
- if (prop.type === 'Property' && prop.key.type === 'Identifier') {
985
- const propertyAnalysis = {
986
- name: prop.key.name,
987
- valueNode: prop.value,
988
- valueSource: this.getNodeSource(prop.value, originalSource),
989
- containsKubernetesRefs: false, // Will be determined during field analysis
990
- sourceLocation: {
991
- line: prop.loc?.start.line || 0,
992
- column: prop.loc?.start.column || 0,
993
- length: prop.range ? prop.range[1] - prop.range[0] : 0
994
- }
995
- };
996
- properties.push(propertyAnalysis);
997
- }
998
- }
999
- return properties;
1000
- }
1001
- /**
1002
- * Analyze a single status field
1003
- */
1004
- analyzeStatusField(property, resources, originalSource, schemaProxy) {
1005
- const fieldName = property.name;
1006
- const originalExpression = property.valueSource;
1007
- try {
1008
- // Check if this is a static literal value
1009
- if (property.valueNode.type === 'Literal') {
1010
- // Static literal - return as-is without CEL conversion
1011
- return {
1012
- fieldName,
1013
- originalExpression,
1014
- celExpression: null,
1015
- dependencies: [],
1016
- requiresConversion: false,
1017
- valid: true,
1018
- errors: [],
1019
- sourceMap: [],
1020
- optionalityAnalysis: [],
1021
- inferredType: typeof property.valueNode.value,
1022
- confidence: 1.0
1023
- };
1024
- }
1025
- // Check if this is the 'undefined' identifier (special case)
1026
- if (property.valueNode.type === 'Identifier' && property.valueNode.name === 'undefined') {
1027
- // undefined identifier - return as-is without CEL conversion
1028
- return {
1029
- fieldName,
1030
- originalExpression,
1031
- celExpression: null,
1032
- dependencies: [],
1033
- requiresConversion: false,
1034
- valid: true,
1035
- errors: [],
1036
- sourceMap: [],
1037
- optionalityAnalysis: [],
1038
- inferredType: 'undefined',
1039
- confidence: 1.0
1040
- };
1041
- }
1042
- // Check if this is a boolean literal represented as UnaryExpression (!0 for true, !1 for false)
1043
- if (property.valueNode.type === 'UnaryExpression' &&
1044
- property.valueNode.operator === '!' &&
1045
- property.valueNode.argument?.type === 'Literal' &&
1046
- typeof property.valueNode.argument.value === 'number') {
1047
- const _booleanValue = property.valueNode.argument.value === 0; // !0 = true, !1 = false
1048
- return {
1049
- fieldName,
1050
- originalExpression,
1051
- celExpression: null,
1052
- dependencies: [],
1053
- requiresConversion: false,
1054
- valid: true,
1055
- errors: [],
1056
- sourceMap: [],
1057
- optionalityAnalysis: [],
1058
- inferredType: 'boolean',
1059
- confidence: 1.0
1060
- };
1061
- }
1062
- // Check if this is a static object expression
1063
- if (property.valueNode.type === 'ObjectExpression') {
1064
- // Try to evaluate the object as a static value
1065
- const staticValue = this.evaluateStaticObjectExpression(property.valueNode);
1066
- if (staticValue !== null) {
1067
- return {
1068
- fieldName,
1069
- originalExpression,
1070
- celExpression: null,
1071
- dependencies: [],
1072
- requiresConversion: false,
1073
- valid: true,
1074
- errors: [],
1075
- sourceMap: [],
1076
- optionalityAnalysis: [],
1077
- inferredType: 'object',
1078
- confidence: 1.0,
1079
- staticValue // Store the evaluated static value
1080
- };
1081
- }
1082
- else {
1083
- // This is a mixed object (contains both static and dynamic values)
1084
- // Recursively analyze each property
1085
- const mixedObjectResult = this.analyzeMixedObjectExpression(property.valueNode, resources, originalSource, schemaProxy);
1086
- if (mixedObjectResult.valid) {
1087
- return {
1088
- fieldName,
1089
- originalExpression,
1090
- celExpression: null,
1091
- dependencies: mixedObjectResult.dependencies,
1092
- requiresConversion: mixedObjectResult.requiresConversion,
1093
- valid: true,
1094
- errors: [],
1095
- sourceMap: [],
1096
- optionalityAnalysis: [],
1097
- inferredType: 'object',
1098
- confidence: 1.0,
1099
- staticValue: mixedObjectResult.processedObject
1100
- };
1101
- }
1102
- else {
1103
- // Mixed object analysis failed, return error
1104
- return {
1105
- fieldName,
1106
- originalExpression,
1107
- celExpression: null,
1108
- dependencies: [],
1109
- requiresConversion: false,
1110
- valid: false,
1111
- errors: [new ConversionError(`Failed to analyze mixed object expression for field '${fieldName}'`, originalExpression, 'unknown')],
1112
- sourceMap: [],
1113
- optionalityAnalysis: [],
1114
- inferredType: 'object',
1115
- confidence: 0.0
1116
- };
1117
- }
1118
- }
1119
- }
1120
- // Create analysis context
1121
- const context = {
1122
- type: 'status',
1123
- availableReferences: resources,
1124
- ...(schemaProxy && { schemaProxy }),
1125
- factoryType: this.options.factoryType,
1126
- ...(this.options.includeSourceMapping && { sourceMap: new SourceMapBuilder() }),
1127
- dependencies: []
1128
- };
1129
- // Analyze the expression using the main analyzer
1130
- const analysisResult = this.expressionAnalyzer.analyzeExpression(originalExpression, context);
1131
- // Perform optionality analysis if enabled
1132
- let optionalityAnalysis = [];
1133
- if (this.options.performOptionalityAnalysis) {
1134
- const optionalityContext = {
1135
- ...context,
1136
- hydrationStates: this.options.hydrationStates,
1137
- conservativeNullSafety: this.options.conservativeNullSafety,
1138
- useKroConditionals: true,
1139
- generateHasChecks: true
1140
- };
1141
- optionalityAnalysis = this.optionalityHandler.analyzeOptionalityRequirements(originalExpression, optionalityContext);
1142
- }
1143
- return {
1144
- fieldName,
1145
- originalExpression,
1146
- celExpression: analysisResult.celExpression,
1147
- dependencies: analysisResult.dependencies,
1148
- requiresConversion: analysisResult.requiresConversion,
1149
- valid: analysisResult.valid,
1150
- errors: analysisResult.errors,
1151
- sourceMap: analysisResult.sourceMap,
1152
- optionalityAnalysis,
1153
- inferredType: analysisResult.inferredType ? String(analysisResult.inferredType) : undefined,
1154
- confidence: this.calculateFieldConfidence(analysisResult, optionalityAnalysis)
1155
- };
1156
- }
1157
- catch (error) {
1158
- const fieldError = new ConversionError(`Failed to analyze field '${fieldName}': ${error instanceof Error ? error.message : String(error)}`, originalExpression, 'unknown');
1159
- return {
1160
- fieldName,
1161
- originalExpression,
1162
- celExpression: null,
1163
- dependencies: [],
1164
- requiresConversion: false,
1165
- valid: false,
1166
- errors: [fieldError],
1167
- sourceMap: [],
1168
- optionalityAnalysis: [],
1169
- inferredType: undefined,
1170
- confidence: 0
1171
- };
1172
- }
1173
- }
1174
- /**
1175
- * Calculate confidence level for field analysis
1176
- */
1177
- calculateFieldConfidence(analysisResult, optionalityAnalysis) {
1178
- let confidence = 0.8; // Base confidence
1179
- if (analysisResult.valid) {
1180
- confidence += 0.1;
1181
- }
1182
- if (analysisResult.errors.length === 0) {
1183
- confidence += 0.1;
1184
- }
1185
- // Factor in optionality analysis confidence
1186
- if (optionalityAnalysis.length > 0) {
1187
- const avgOptionalityConfidence = optionalityAnalysis.reduce((sum, result) => sum + result.confidence, 0) / optionalityAnalysis.length;
1188
- confidence = (confidence + avgOptionalityConfidence) / 2;
1189
- }
1190
- return Math.max(0, Math.min(1, confidence));
1191
- }
1192
- /**
1193
- * Categorize dependencies into resource and schema references
1194
- */
1195
- categorizeDependencies(dependencies) {
1196
- const resourceReferences = [];
1197
- const schemaReferences = [];
1198
- for (const dep of dependencies) {
1199
- if (dep.resourceId === '__schema__') {
1200
- schemaReferences.push(dep);
1201
- }
1202
- else {
1203
- resourceReferences.push(dep);
1204
- }
1205
- }
1206
- return { resourceReferences, schemaReferences };
1207
- }
1208
- }
1209
- /**
1210
- * Analyze status builder function for toResourceGraph integration with KubernetesRef detection
1211
- *
1212
- * This is the main integration point for toResourceGraph to analyze status builder functions
1213
- * and detect KubernetesRef objects from the magic proxy system.
1214
- */
1215
- export function analyzeStatusBuilderForToResourceGraph(statusBuilder, resources, schemaProxy, factoryType = 'kro') {
1216
- const options = {
1217
- deepAnalysis: true,
1218
- includeSourceMapping: true,
1219
- validateReferences: true,
1220
- performOptionalityAnalysis: true,
1221
- factoryType,
1222
- conservativeNullSafety: true
1223
- };
1224
- const analyzer = new StatusBuilderAnalyzer(undefined, options);
1225
- const result = analyzer.analyzeStatusBuilder(statusBuilder, resources, schemaProxy);
1226
- // Calculate hydration order based on dependencies
1227
- const hydrationOrder = calculateStatusFieldHydrationOrder(result.fieldAnalysis);
1228
- // Determine if any conversion is required
1229
- const requiresConversion = Array.from(result.fieldAnalysis.values()).some(field => field.requiresConversion);
1230
- return {
1231
- statusMappings: result.statusMappings,
1232
- dependencies: result.allDependencies,
1233
- hydrationOrder,
1234
- errors: result.errors,
1235
- valid: result.valid,
1236
- requiresConversion
1237
- };
1238
- }
1239
- /**
1240
- * Calculate hydration order for status fields based on their dependencies
1241
- */
1242
- function calculateStatusFieldHydrationOrder(fieldAnalysis) {
1243
- const fieldDependencies = new Map();
1244
- const allFields = Array.from(fieldAnalysis.keys());
1245
- // Build field-to-field dependencies
1246
- for (const [fieldName, analysis] of fieldAnalysis) {
1247
- const fieldDeps = new Set();
1248
- // For each KubernetesRef dependency, find other fields that might provide that data
1249
- for (const dep of analysis.dependencies) {
1250
- if (dep.resourceId !== '__schema__') {
1251
- // Find fields that reference the same resource
1252
- for (const [otherField, otherAnalysis] of fieldAnalysis) {
1253
- if (otherField !== fieldName) {
1254
- const hasMatchingResource = otherAnalysis.dependencies.some(otherDep => otherDep.resourceId === dep.resourceId);
1255
- if (hasMatchingResource) {
1256
- fieldDeps.add(otherField);
1257
- }
1258
- }
1259
- }
1260
- }
1261
- }
1262
- fieldDependencies.set(fieldName, fieldDeps);
1263
- }
1264
- // Perform topological sort
1265
- const visited = new Set();
1266
- const visiting = new Set();
1267
- const result = [];
1268
- const visit = (field) => {
1269
- if (visiting.has(field)) {
1270
- // Circular dependency - add to result anyway
1271
- return;
1272
- }
1273
- if (visited.has(field)) {
1274
- return;
1275
- }
1276
- visiting.add(field);
1277
- const deps = fieldDependencies.get(field) || new Set();
1278
- for (const dep of deps) {
1279
- visit(dep);
1280
- }
1281
- visiting.delete(field);
1282
- visited.add(field);
1283
- result.push(field);
1284
- };
1285
- for (const field of allFields) {
1286
- visit(field);
1287
- }
1288
- return result;
1289
- }
1290
- /**
1291
- * Convenience function to analyze status builder functions
1292
- */
1293
- export function analyzeStatusBuilder(statusBuilder, resources, schemaProxy, options) {
1294
- const analyzer = new StatusBuilderAnalyzer(undefined, options);
1295
- return analyzer.analyzeStatusBuilder(statusBuilder, resources, schemaProxy);
1296
- }
1297
- /**
1298
- * Convenience function to analyze return objects with magic proxy support
1299
- */
1300
- export function analyzeReturnObjectWithMagicProxy(returnObject, resources, schemaProxy, options) {
1301
- const analyzer = new StatusBuilderAnalyzer(undefined, options);
1302
- return analyzer.analyzeReturnObjectWithMagicProxy(returnObject, resources, schemaProxy);
1303
- }
1304
- /**
1305
- * Convenience function to generate status context-specific CEL
1306
- */
1307
- export function generateStatusContextCel(kubernetesRef, context, options) {
1308
- const analyzer = new StatusBuilderAnalyzer(undefined, options);
1309
- return analyzer.generateStatusContextCel(kubernetesRef, context);
1310
- }
1311
- //# sourceMappingURL=status-builder-analyzer.js.map