typekro 0.2.2 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (213) hide show
  1. package/README.md +4 -3
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/core/composition/imperative.d.ts.map +1 -1
  4. package/dist/core/composition/imperative.js +15 -2
  5. package/dist/core/composition/imperative.js.map +1 -1
  6. package/dist/core/composition/typekro-runtime/typekro-runtime.d.ts.map +1 -1
  7. package/dist/core/composition/typekro-runtime/typekro-runtime.js +24 -25
  8. package/dist/core/composition/typekro-runtime/typekro-runtime.js.map +1 -1
  9. package/dist/core/dependencies/type-guards.d.ts.map +1 -1
  10. package/dist/core/dependencies/type-guards.js +7 -2
  11. package/dist/core/dependencies/type-guards.js.map +1 -1
  12. package/dist/core/deployment/engine.d.ts +13 -1
  13. package/dist/core/deployment/engine.d.ts.map +1 -1
  14. package/dist/core/deployment/engine.js +48 -3
  15. package/dist/core/deployment/engine.js.map +1 -1
  16. package/dist/core/errors.d.ts +85 -0
  17. package/dist/core/errors.d.ts.map +1 -1
  18. package/dist/core/errors.js +135 -0
  19. package/dist/core/errors.js.map +1 -1
  20. package/dist/core/evaluation/cel-optimizer.d.ts.map +1 -1
  21. package/dist/core/evaluation/cel-optimizer.js +7 -13
  22. package/dist/core/evaluation/cel-optimizer.js.map +1 -1
  23. package/dist/core/expressions/analyzer.d.ts +584 -0
  24. package/dist/core/expressions/analyzer.d.ts.map +1 -0
  25. package/dist/core/expressions/analyzer.js +2956 -0
  26. package/dist/core/expressions/analyzer.js.map +1 -0
  27. package/dist/core/expressions/cache.d.ts +136 -0
  28. package/dist/core/expressions/cache.d.ts.map +1 -0
  29. package/dist/core/expressions/cache.js +347 -0
  30. package/dist/core/expressions/cache.js.map +1 -0
  31. package/dist/core/expressions/cel-conversion-engine.d.ts +126 -0
  32. package/dist/core/expressions/cel-conversion-engine.d.ts.map +1 -0
  33. package/dist/core/expressions/cel-conversion-engine.js +293 -0
  34. package/dist/core/expressions/cel-conversion-engine.js.map +1 -0
  35. package/dist/core/expressions/compile-time-validation.d.ts +270 -0
  36. package/dist/core/expressions/compile-time-validation.d.ts.map +1 -0
  37. package/dist/core/expressions/compile-time-validation.js +506 -0
  38. package/dist/core/expressions/compile-time-validation.js.map +1 -0
  39. package/dist/core/expressions/composition-integration.d.ts +315 -0
  40. package/dist/core/expressions/composition-integration.d.ts.map +1 -0
  41. package/dist/core/expressions/composition-integration.js +936 -0
  42. package/dist/core/expressions/composition-integration.js.map +1 -0
  43. package/dist/core/expressions/conditional-expression-processor.d.ts +154 -0
  44. package/dist/core/expressions/conditional-expression-processor.d.ts.map +1 -0
  45. package/dist/core/expressions/conditional-expression-processor.js +479 -0
  46. package/dist/core/expressions/conditional-expression-processor.js.map +1 -0
  47. package/dist/core/expressions/conditional-integration.d.ts +133 -0
  48. package/dist/core/expressions/conditional-integration.d.ts.map +1 -0
  49. package/dist/core/expressions/conditional-integration.js +293 -0
  50. package/dist/core/expressions/conditional-integration.js.map +1 -0
  51. package/dist/core/expressions/conditional-validation.d.ts +181 -0
  52. package/dist/core/expressions/conditional-validation.d.ts.map +1 -0
  53. package/dist/core/expressions/conditional-validation.js +460 -0
  54. package/dist/core/expressions/conditional-validation.js.map +1 -0
  55. package/dist/core/expressions/context-aware-generator.d.ts +127 -0
  56. package/dist/core/expressions/context-aware-generator.d.ts.map +1 -0
  57. package/dist/core/expressions/context-aware-generator.js +500 -0
  58. package/dist/core/expressions/context-aware-generator.js.map +1 -0
  59. package/dist/core/expressions/context-detector.d.ts +148 -0
  60. package/dist/core/expressions/context-detector.d.ts.map +1 -0
  61. package/dist/core/expressions/context-detector.js +546 -0
  62. package/dist/core/expressions/context-detector.js.map +1 -0
  63. package/dist/core/expressions/context-switcher.d.ts +185 -0
  64. package/dist/core/expressions/context-switcher.d.ts.map +1 -0
  65. package/dist/core/expressions/context-switcher.js +515 -0
  66. package/dist/core/expressions/context-switcher.js.map +1 -0
  67. package/dist/core/expressions/context-validator.d.ts +176 -0
  68. package/dist/core/expressions/context-validator.d.ts.map +1 -0
  69. package/dist/core/expressions/context-validator.js +452 -0
  70. package/dist/core/expressions/context-validator.js.map +1 -0
  71. package/dist/core/expressions/custom-context-manager.d.ts +194 -0
  72. package/dist/core/expressions/custom-context-manager.d.ts.map +1 -0
  73. package/dist/core/expressions/custom-context-manager.js +390 -0
  74. package/dist/core/expressions/custom-context-manager.js.map +1 -0
  75. package/dist/core/expressions/expression-proxy.d.ts +80 -0
  76. package/dist/core/expressions/expression-proxy.d.ts.map +1 -0
  77. package/dist/core/expressions/expression-proxy.js +227 -0
  78. package/dist/core/expressions/expression-proxy.js.map +1 -0
  79. package/dist/core/expressions/factory-integration.d.ts +132 -0
  80. package/dist/core/expressions/factory-integration.d.ts.map +1 -0
  81. package/dist/core/expressions/factory-integration.js +327 -0
  82. package/dist/core/expressions/factory-integration.js.map +1 -0
  83. package/dist/core/expressions/factory-pattern-handler.d.ts +88 -0
  84. package/dist/core/expressions/factory-pattern-handler.d.ts.map +1 -0
  85. package/dist/core/expressions/factory-pattern-handler.js +336 -0
  86. package/dist/core/expressions/factory-pattern-handler.js.map +1 -0
  87. package/dist/core/expressions/field-hydration-processor.d.ts +188 -0
  88. package/dist/core/expressions/field-hydration-processor.d.ts.map +1 -0
  89. package/dist/core/expressions/field-hydration-processor.js +562 -0
  90. package/dist/core/expressions/field-hydration-processor.js.map +1 -0
  91. package/dist/core/expressions/imperative-analyzer.d.ts +21 -0
  92. package/dist/core/expressions/imperative-analyzer.d.ts.map +1 -0
  93. package/dist/core/expressions/imperative-analyzer.js +457 -0
  94. package/dist/core/expressions/imperative-analyzer.js.map +1 -0
  95. package/dist/core/expressions/index.d.ts +54 -0
  96. package/dist/core/expressions/index.d.ts.map +1 -0
  97. package/dist/core/expressions/index.js +50 -0
  98. package/dist/core/expressions/index.js.map +1 -0
  99. package/dist/core/expressions/lazy-analysis.d.ts +1128 -0
  100. package/dist/core/expressions/lazy-analysis.d.ts.map +1 -0
  101. package/dist/core/expressions/lazy-analysis.js +2443 -0
  102. package/dist/core/expressions/lazy-analysis.js.map +1 -0
  103. package/dist/core/expressions/magic-assignable-analyzer.d.ts +123 -0
  104. package/dist/core/expressions/magic-assignable-analyzer.d.ts.map +1 -0
  105. package/dist/core/expressions/magic-assignable-analyzer.js +352 -0
  106. package/dist/core/expressions/magic-assignable-analyzer.js.map +1 -0
  107. package/dist/core/expressions/magic-proxy-analyzer.d.ts +206 -0
  108. package/dist/core/expressions/magic-proxy-analyzer.d.ts.map +1 -0
  109. package/dist/core/expressions/magic-proxy-analyzer.js +639 -0
  110. package/dist/core/expressions/magic-proxy-analyzer.js.map +1 -0
  111. package/dist/core/expressions/magic-proxy-detector.d.ts +154 -0
  112. package/dist/core/expressions/magic-proxy-detector.d.ts.map +1 -0
  113. package/dist/core/expressions/magic-proxy-detector.js +242 -0
  114. package/dist/core/expressions/magic-proxy-detector.js.map +1 -0
  115. package/dist/core/expressions/migration-helpers.d.ts +133 -0
  116. package/dist/core/expressions/migration-helpers.d.ts.map +1 -0
  117. package/dist/core/expressions/migration-helpers.js +443 -0
  118. package/dist/core/expressions/migration-helpers.js.map +1 -0
  119. package/dist/core/expressions/optionality-handler.d.ts +503 -0
  120. package/dist/core/expressions/optionality-handler.d.ts.map +1 -0
  121. package/dist/core/expressions/optionality-handler.js +1306 -0
  122. package/dist/core/expressions/optionality-handler.js.map +1 -0
  123. package/dist/core/expressions/readiness-integration.d.ts +119 -0
  124. package/dist/core/expressions/readiness-integration.d.ts.map +1 -0
  125. package/dist/core/expressions/readiness-integration.js +386 -0
  126. package/dist/core/expressions/readiness-integration.js.map +1 -0
  127. package/dist/core/expressions/resource-analyzer.d.ts +486 -0
  128. package/dist/core/expressions/resource-analyzer.d.ts.map +1 -0
  129. package/dist/core/expressions/resource-analyzer.js +1086 -0
  130. package/dist/core/expressions/resource-analyzer.js.map +1 -0
  131. package/dist/core/expressions/resource-validation.d.ts +187 -0
  132. package/dist/core/expressions/resource-validation.d.ts.map +1 -0
  133. package/dist/core/expressions/resource-validation.js +552 -0
  134. package/dist/core/expressions/resource-validation.js.map +1 -0
  135. package/dist/core/expressions/runtime-error-mapper.d.ts +138 -0
  136. package/dist/core/expressions/runtime-error-mapper.d.ts.map +1 -0
  137. package/dist/core/expressions/runtime-error-mapper.js +412 -0
  138. package/dist/core/expressions/runtime-error-mapper.js.map +1 -0
  139. package/dist/core/expressions/source-map.d.ts +168 -0
  140. package/dist/core/expressions/source-map.d.ts.map +1 -0
  141. package/dist/core/expressions/source-map.js +350 -0
  142. package/dist/core/expressions/source-map.js.map +1 -0
  143. package/dist/core/expressions/status-builder-analyzer.d.ts +353 -0
  144. package/dist/core/expressions/status-builder-analyzer.d.ts.map +1 -0
  145. package/dist/core/expressions/status-builder-analyzer.js +1311 -0
  146. package/dist/core/expressions/status-builder-analyzer.js.map +1 -0
  147. package/dist/core/expressions/type-inference.d.ts +184 -0
  148. package/dist/core/expressions/type-inference.d.ts.map +1 -0
  149. package/dist/core/expressions/type-inference.js +838 -0
  150. package/dist/core/expressions/type-inference.js.map +1 -0
  151. package/dist/core/expressions/type-safety.d.ts +203 -0
  152. package/dist/core/expressions/type-safety.d.ts.map +1 -0
  153. package/dist/core/expressions/type-safety.js +442 -0
  154. package/dist/core/expressions/type-safety.js.map +1 -0
  155. package/dist/core/expressions/types.d.ts +282 -0
  156. package/dist/core/expressions/types.d.ts.map +1 -0
  157. package/dist/core/expressions/types.js +8 -0
  158. package/dist/core/expressions/types.js.map +1 -0
  159. package/dist/core/kubernetes/client-provider.js +2 -2
  160. package/dist/core/kubernetes/client-provider.js.map +1 -1
  161. package/dist/core/references/cel.d.ts +13 -1
  162. package/dist/core/references/cel.d.ts.map +1 -1
  163. package/dist/core/references/cel.js +50 -0
  164. package/dist/core/references/cel.js.map +1 -1
  165. package/dist/core/references/schema-proxy.d.ts.map +1 -1
  166. package/dist/core/references/schema-proxy.js +13 -8
  167. package/dist/core/references/schema-proxy.js.map +1 -1
  168. package/dist/core/serialization/core.d.ts.map +1 -1
  169. package/dist/core/serialization/core.js +573 -9
  170. package/dist/core/serialization/core.js.map +1 -1
  171. package/dist/core/types/deployment.d.ts +7 -0
  172. package/dist/core/types/deployment.d.ts.map +1 -1
  173. package/dist/core/types/deployment.js +7 -0
  174. package/dist/core/types/deployment.js.map +1 -1
  175. package/dist/core/types/index.d.ts +1 -0
  176. package/dist/core/types/index.d.ts.map +1 -1
  177. package/dist/core/types/index.js.map +1 -1
  178. package/dist/core/validation/cel-validator.d.ts.map +1 -1
  179. package/dist/core/validation/cel-validator.js +4 -8
  180. package/dist/core/validation/cel-validator.js.map +1 -1
  181. package/dist/core.d.ts +1 -1
  182. package/dist/core.d.ts.map +1 -1
  183. package/dist/core.js +1 -1
  184. package/dist/core.js.map +1 -1
  185. package/dist/factories/helm/helm-release.d.ts.map +1 -1
  186. package/dist/factories/helm/helm-release.js +0 -5
  187. package/dist/factories/helm/helm-release.js.map +1 -1
  188. package/dist/factories/helm/types.d.ts +1 -1
  189. package/dist/factories/helm/types.d.ts.map +1 -1
  190. package/dist/factories/index.js +1 -0
  191. package/dist/factories/index.js.map +1 -1
  192. package/dist/factories/shared.d.ts.map +1 -1
  193. package/dist/factories/shared.js +21 -1
  194. package/dist/factories/shared.js.map +1 -1
  195. package/dist/factories/simple/index.d.ts +2 -2
  196. package/dist/factories/simple/index.d.ts.map +1 -1
  197. package/dist/factories/simple/workloads/deployment.d.ts +3 -3
  198. package/dist/factories/simple/workloads/deployment.d.ts.map +1 -1
  199. package/dist/factories/simple/workloads/deployment.js +37 -11
  200. package/dist/factories/simple/workloads/deployment.js.map +1 -1
  201. package/dist/index.d.ts +1 -1
  202. package/dist/index.d.ts.map +1 -1
  203. package/dist/index.js +1 -1
  204. package/dist/index.js.map +1 -1
  205. package/dist/utils/index.d.ts +1 -1
  206. package/dist/utils/index.d.ts.map +1 -1
  207. package/dist/utils/index.js +1 -1
  208. package/dist/utils/index.js.map +1 -1
  209. package/dist/utils/type-guards.d.ts +6 -0
  210. package/dist/utils/type-guards.d.ts.map +1 -1
  211. package/dist/utils/type-guards.js +25 -2
  212. package/dist/utils/type-guards.js.map +1 -1
  213. package/package.json +6 -1
@@ -0,0 +1,185 @@
1
+ /**
2
+ * Context Switching for Nested Expressions with KubernetesRef Objects
3
+ *
4
+ * This module provides functionality to handle context switching when analyzing
5
+ * nested JavaScript expressions that contain KubernetesRef objects, ensuring
6
+ * that each part of a complex expression is converted using the appropriate context.
7
+ */
8
+ import type { CelExpression, KubernetesRef } from '../types/common.js';
9
+ import type { Enhanced } from '../types/kubernetes.js';
10
+ import type { SchemaProxy } from '../types/serialization.js';
11
+ import type { ExpressionContext, ExpressionContextDetector } from './context-detector.js';
12
+ import type { ContextAwareCelGenerator } from './context-aware-generator.js';
13
+ import type { ContextExpressionValidator, ContextValidationReport } from './context-validator.js';
14
+ /**
15
+ * Context switching configuration
16
+ */
17
+ export interface ContextSwitchingConfig {
18
+ /** Primary context for the expression */
19
+ primaryContext: ExpressionContext;
20
+ /** Available resources for context analysis */
21
+ availableResources?: Record<string, Enhanced<any, any>>;
22
+ /** Schema proxy for schema field analysis */
23
+ schemaProxy?: SchemaProxy<any, any>;
24
+ /** Factory type being used */
25
+ factoryType?: 'direct' | 'kro';
26
+ /** Whether to enable automatic context detection */
27
+ autoDetectContext?: boolean;
28
+ /** Whether to validate context switches */
29
+ validateContextSwitches?: boolean;
30
+ /** Maximum nesting depth to analyze */
31
+ maxNestingDepth?: number;
32
+ /** Whether to optimize context switches */
33
+ optimizeContextSwitches?: boolean;
34
+ /** Custom context detection rules */
35
+ customContextRules?: ContextSwitchingRule[];
36
+ }
37
+ /**
38
+ * Context switching rule
39
+ */
40
+ export interface ContextSwitchingRule {
41
+ /** Rule identifier */
42
+ id: string;
43
+ /** Rule name */
44
+ name: string;
45
+ /** When this rule should be applied */
46
+ condition: (expression: any, currentContext: ExpressionContext, parentContext: ExpressionContext, depth: number) => boolean;
47
+ /** What context to switch to */
48
+ targetContext: ExpressionContext;
49
+ /** Priority of this rule (higher = more important) */
50
+ priority: number;
51
+ }
52
+ /**
53
+ * Context switch point in an expression
54
+ */
55
+ export interface ContextSwitchPoint {
56
+ /** Path to the expression part that needs context switching */
57
+ path: string[];
58
+ /** Current context */
59
+ currentContext: ExpressionContext;
60
+ /** Target context */
61
+ targetContext: ExpressionContext;
62
+ /** Reason for the context switch */
63
+ reason: string;
64
+ /** Expression part that triggered the switch */
65
+ expression: any;
66
+ /** KubernetesRef objects in this part */
67
+ kubernetesRefs: KubernetesRef<any>[];
68
+ /** Nesting depth */
69
+ depth: number;
70
+ }
71
+ /**
72
+ * Context switching result
73
+ */
74
+ export interface ContextSwitchingResult {
75
+ /** Original expression */
76
+ originalExpression: any;
77
+ /** Primary context used */
78
+ primaryContext: ExpressionContext;
79
+ /** Context switch points found */
80
+ switchPoints: ContextSwitchPoint[];
81
+ /** Generated CEL expressions by context */
82
+ celExpressions: Map<string, CelExpression>;
83
+ /** Final combined CEL expression */
84
+ finalCelExpression: CelExpression;
85
+ /** All dependencies found */
86
+ allDependencies: KubernetesRef<any>[];
87
+ /** Validation reports by context */
88
+ validationReports: Map<ExpressionContext, ContextValidationReport>;
89
+ /** Warnings generated during context switching */
90
+ warnings: string[];
91
+ /** Performance metrics */
92
+ performanceMetrics?: ContextSwitchingMetrics;
93
+ }
94
+ /**
95
+ * Performance metrics for context switching
96
+ */
97
+ export interface ContextSwitchingMetrics {
98
+ /** Total analysis time */
99
+ totalTimeMs: number;
100
+ /** Time spent on context detection */
101
+ contextDetectionTimeMs: number;
102
+ /** Time spent on CEL generation */
103
+ celGenerationTimeMs: number;
104
+ /** Time spent on validation */
105
+ validationTimeMs: number;
106
+ /** Number of context switches performed */
107
+ contextSwitchCount: number;
108
+ /** Maximum nesting depth reached */
109
+ maxDepthReached: number;
110
+ }
111
+ /**
112
+ * Context switcher for nested expressions
113
+ */
114
+ export declare class ExpressionContextSwitcher {
115
+ private contextDetector;
116
+ private celGenerator;
117
+ private validator;
118
+ constructor(contextDetector: ExpressionContextDetector, celGenerator: ContextAwareCelGenerator, validator: ContextExpressionValidator);
119
+ /**
120
+ * Analyze and convert a nested expression with context switching
121
+ */
122
+ analyzeWithContextSwitching(expression: any, config: ContextSwitchingConfig): ContextSwitchingResult;
123
+ /**
124
+ * Find context switch points in a nested expression
125
+ */
126
+ private findContextSwitchPoints;
127
+ /**
128
+ * Analyze string expressions for context switching patterns
129
+ */
130
+ private analyzeStringExpression;
131
+ /**
132
+ * Parse template literal into parts
133
+ */
134
+ private parseTemplateLiteral;
135
+ /**
136
+ * Parse conditional expression
137
+ */
138
+ private parseConditionalExpression;
139
+ /**
140
+ * Find matching closing brace
141
+ */
142
+ private findMatchingBrace;
143
+ /**
144
+ * Group switch points by context
145
+ */
146
+ private groupSwitchPointsByContext;
147
+ /**
148
+ * Determine CEL generation strategy for context
149
+ */
150
+ private determineCelStrategy;
151
+ /**
152
+ * Combine CEL expressions from different contexts
153
+ */
154
+ private combineCelExpressions;
155
+ /**
156
+ * Extract KubernetesRef objects from expression
157
+ */
158
+ private extractKubernetesRefs;
159
+ /**
160
+ * Recursively extract KubernetesRef objects
161
+ */
162
+ private recursivelyExtractRefs;
163
+ }
164
+ /**
165
+ * Context switching utilities
166
+ */
167
+ export declare class ContextSwitchingUtils {
168
+ /**
169
+ * Create default context switching rules
170
+ */
171
+ static createDefaultRules(): ContextSwitchingRule[];
172
+ /**
173
+ * Optimize context switching configuration
174
+ */
175
+ static optimizeConfig(config: ContextSwitchingConfig): ContextSwitchingConfig;
176
+ /**
177
+ * Analyze context switching performance
178
+ */
179
+ static analyzePerformance(result: ContextSwitchingResult): string;
180
+ }
181
+ /**
182
+ * Create a context switcher with default dependencies
183
+ */
184
+ export declare function createContextSwitcher(contextDetector: ExpressionContextDetector, celGenerator: ContextAwareCelGenerator, validator: ContextExpressionValidator): ExpressionContextSwitcher;
185
+ //# sourceMappingURL=context-switcher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-switcher.d.ts","sourceRoot":"","sources":["../../../src/core/expressions/context-switcher.ts"],"names":[],"mappings":"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"}