typekro 0.43.0 → 0.44.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.
- package/dist/compositions/typekro-runtime/typekro-runtime.d.ts +3 -2
- package/dist/compositions/typekro-runtime/typekro-runtime.d.ts.map +1 -1
- package/dist/compositions/typekro-runtime/typekro-runtime.js.map +1 -1
- package/dist/core/kubernetes/bun-api-client.d.ts.map +1 -1
- package/dist/core/kubernetes/bun-api-client.js +39 -9
- package/dist/core/kubernetes/bun-api-client.js.map +1 -1
- package/dist/core/kubernetes/bun-http-library.d.ts.map +1 -1
- package/dist/core/kubernetes/bun-http-library.js +5 -1
- package/dist/core/kubernetes/bun-http-library.js.map +1 -1
- package/dist/factories/apisix/compositions/apisix-bootstrap.d.ts +2 -1
- package/dist/factories/apisix/compositions/apisix-bootstrap.d.ts.map +1 -1
- package/dist/factories/apisix/compositions/apisix-bootstrap.js.map +1 -1
- package/dist/factories/apisix/compositions/apisix-helm-repository.d.ts +3 -7
- package/dist/factories/apisix/compositions/apisix-helm-repository.d.ts.map +1 -1
- package/dist/factories/apisix/compositions/apisix-helm-repository.js.map +1 -1
- package/dist/factories/apisix/resources/helm.d.ts +2 -2
- package/dist/factories/apisix/resources/helm.d.ts.map +1 -1
- package/dist/factories/apisix/resources/helm.js.map +1 -1
- package/dist/factories/cert-manager/compositions/cert-manager-bootstrap.d.ts +3 -2
- package/dist/factories/cert-manager/compositions/cert-manager-bootstrap.d.ts.map +1 -1
- package/dist/factories/cert-manager/compositions/cert-manager-bootstrap.js.map +1 -1
- package/dist/factories/cilium/compositions/cilium-bootstrap.d.ts +2 -76
- package/dist/factories/cilium/compositions/cilium-bootstrap.d.ts.map +1 -1
- package/dist/factories/cilium/compositions/cilium-bootstrap.js.map +1 -1
- package/dist/factories/cilium/resources/helm.d.ts +3 -2
- package/dist/factories/cilium/resources/helm.d.ts.map +1 -1
- package/dist/factories/cilium/resources/helm.js.map +1 -1
- package/dist/factories/clickhouse/compositions/clickhouse-helm-repository.d.ts +3 -7
- package/dist/factories/clickhouse/compositions/clickhouse-helm-repository.d.ts.map +1 -1
- package/dist/factories/clickhouse/compositions/clickhouse-helm-repository.js.map +1 -1
- package/dist/factories/clickhouse/compositions/clickhouse-operator-bootstrap.d.ts +3 -28
- package/dist/factories/clickhouse/compositions/clickhouse-operator-bootstrap.d.ts.map +1 -1
- package/dist/factories/clickhouse/compositions/clickhouse-operator-bootstrap.js.map +1 -1
- package/dist/factories/clickstack/compositions/clickstack-bootstrap.d.ts +7 -254
- package/dist/factories/clickstack/compositions/clickstack-bootstrap.d.ts.map +1 -1
- package/dist/factories/clickstack/compositions/clickstack-bootstrap.js.map +1 -1
- package/dist/factories/clickstack/compositions/clickstack-helm-repository.d.ts +3 -7
- package/dist/factories/clickstack/compositions/clickstack-helm-repository.d.ts.map +1 -1
- package/dist/factories/clickstack/compositions/clickstack-helm-repository.js.map +1 -1
- package/dist/factories/clickstack/compositions/k8s-telemetry.d.ts +4 -16
- package/dist/factories/clickstack/compositions/k8s-telemetry.d.ts.map +1 -1
- package/dist/factories/clickstack/compositions/k8s-telemetry.js.map +1 -1
- package/dist/factories/clickstack/compositions/otel-helm-repository.d.ts +3 -7
- package/dist/factories/clickstack/compositions/otel-helm-repository.d.ts.map +1 -1
- package/dist/factories/clickstack/compositions/otel-helm-repository.js.map +1 -1
- package/dist/factories/clickstack/types.d.ts +5 -0
- package/dist/factories/clickstack/types.d.ts.map +1 -1
- package/dist/factories/clickstack/types.js.map +1 -1
- package/dist/factories/clickstack/utils/storage.d.ts +13 -0
- package/dist/factories/clickstack/utils/storage.d.ts.map +1 -1
- package/dist/factories/clickstack/utils/storage.js +31 -2
- package/dist/factories/clickstack/utils/storage.js.map +1 -1
- package/dist/factories/cnpg/compositions/cnpg-bootstrap.d.ts +3 -27
- package/dist/factories/cnpg/compositions/cnpg-bootstrap.d.ts.map +1 -1
- package/dist/factories/cnpg/compositions/cnpg-bootstrap.js.map +1 -1
- package/dist/factories/dagster/compositions/dagster-bootstrap.d.ts +3 -450
- package/dist/factories/dagster/compositions/dagster-bootstrap.d.ts.map +1 -1
- package/dist/factories/dagster/compositions/dagster-bootstrap.js.map +1 -1
- package/dist/factories/dagster/compositions/dagster-helm-repository.d.ts +3 -7
- package/dist/factories/dagster/compositions/dagster-helm-repository.d.ts.map +1 -1
- package/dist/factories/dagster/compositions/dagster-helm-repository.js.map +1 -1
- package/dist/factories/envoy-ai-gateway/compositions/platform.d.ts +6 -34
- package/dist/factories/envoy-ai-gateway/compositions/platform.d.ts.map +1 -1
- package/dist/factories/envoy-ai-gateway/compositions/platform.js.map +1 -1
- package/dist/factories/envoy-ai-gateway/compositions/repository.d.ts +3 -7
- package/dist/factories/envoy-ai-gateway/compositions/repository.d.ts.map +1 -1
- package/dist/factories/envoy-ai-gateway/compositions/repository.js.map +1 -1
- package/dist/factories/external-dns/compositions/external-dns-bootstrap.d.ts +3 -1
- package/dist/factories/external-dns/compositions/external-dns-bootstrap.d.ts.map +1 -1
- package/dist/factories/external-dns/compositions/external-dns-bootstrap.js.map +1 -1
- package/dist/factories/flux/git-repository.d.ts +10 -12
- package/dist/factories/flux/git-repository.d.ts.map +1 -1
- package/dist/factories/flux/git-repository.js.map +1 -1
- package/dist/factories/flux/kustomize/kustomization.d.ts +17 -49
- package/dist/factories/flux/kustomize/kustomization.d.ts.map +1 -1
- package/dist/factories/flux/kustomize/kustomization.js.map +1 -1
- package/dist/factories/harbor/compositions/harbor-installation.d.ts +6 -309
- package/dist/factories/harbor/compositions/harbor-installation.d.ts.map +1 -1
- package/dist/factories/harbor/compositions/harbor-installation.js.map +1 -1
- package/dist/factories/harbor/compositions/harbor-rook-s3-credentials.d.ts +2 -8
- package/dist/factories/harbor/compositions/harbor-rook-s3-credentials.d.ts.map +1 -1
- package/dist/factories/harbor/compositions/harbor-rook-s3-credentials.js.map +1 -1
- package/dist/factories/hatchet/compositions/hatchet-installation.d.ts +3 -43
- package/dist/factories/hatchet/compositions/hatchet-installation.d.ts.map +1 -1
- package/dist/factories/hatchet/compositions/hatchet-installation.js.map +1 -1
- package/dist/factories/inngest/compositions/inngest-bootstrap.d.ts +3 -116
- package/dist/factories/inngest/compositions/inngest-bootstrap.d.ts.map +1 -1
- package/dist/factories/inngest/compositions/inngest-bootstrap.js.map +1 -1
- package/dist/factories/nats/compositions/nack-controller-bootstrap.d.ts +4 -15
- package/dist/factories/nats/compositions/nack-controller-bootstrap.d.ts.map +1 -1
- package/dist/factories/nats/compositions/nack-controller-bootstrap.js.map +1 -1
- package/dist/factories/nats/compositions/nats-bootstrap.d.ts +5 -26
- package/dist/factories/nats/compositions/nats-bootstrap.d.ts.map +1 -1
- package/dist/factories/nats/compositions/nats-bootstrap.js.map +1 -1
- package/dist/factories/opensearch/compositions/operator-bootstrap.d.ts +5 -23
- package/dist/factories/opensearch/compositions/operator-bootstrap.d.ts.map +1 -1
- package/dist/factories/opensearch/compositions/operator-bootstrap.js.map +1 -1
- package/dist/factories/opensearch/compositions/repository.d.ts +3 -7
- package/dist/factories/opensearch/compositions/repository.d.ts.map +1 -1
- package/dist/factories/opensearch/compositions/repository.js.map +1 -1
- package/dist/factories/ory/compositions/ory-identity-stack.d.ts +3 -2067
- package/dist/factories/ory/compositions/ory-identity-stack.d.ts.map +1 -1
- package/dist/factories/ory/compositions/ory-identity-stack.js.map +1 -1
- package/dist/factories/ory/compositions/ory-platform-stack.d.ts +3 -184
- package/dist/factories/ory/compositions/ory-platform-stack.d.ts.map +1 -1
- package/dist/factories/ory/compositions/ory-platform-stack.js.map +1 -1
- package/dist/factories/pebble/compositions/pebble-bootstrap.d.ts +3 -15
- package/dist/factories/pebble/compositions/pebble-bootstrap.d.ts.map +1 -1
- package/dist/factories/pebble/compositions/pebble-bootstrap.js.map +1 -1
- package/dist/factories/rook/compositions/object-storage-claim.d.ts +3 -18
- package/dist/factories/rook/compositions/object-storage-claim.d.ts.map +1 -1
- package/dist/factories/rook/compositions/object-storage-claim.js.map +1 -1
- package/dist/factories/rook/compositions/rook-ceph-helm-repository.d.ts +3 -7
- package/dist/factories/rook/compositions/rook-ceph-helm-repository.d.ts.map +1 -1
- package/dist/factories/rook/compositions/rook-ceph-helm-repository.js.map +1 -1
- package/dist/factories/rook/compositions/rook-ceph-operator-installation.d.ts +4 -30
- package/dist/factories/rook/compositions/rook-ceph-operator-installation.d.ts.map +1 -1
- package/dist/factories/rook/compositions/rook-ceph-operator-installation.js.map +1 -1
- package/dist/factories/rook/compositions/rook-ceph-platform.d.ts +5 -277
- package/dist/factories/rook/compositions/rook-ceph-platform.d.ts.map +1 -1
- package/dist/factories/rook/compositions/rook-ceph-platform.js.map +1 -1
- package/dist/factories/searxng/compositions/searxng-bootstrap.d.ts +2 -1
- package/dist/factories/searxng/compositions/searxng-bootstrap.d.ts.map +1 -1
- package/dist/factories/searxng/compositions/searxng-bootstrap.js +22 -22
- package/dist/factories/searxng/compositions/searxng-bootstrap.js.map +1 -1
- package/dist/factories/simple/index.d.ts +3 -3
- package/dist/factories/simple/index.d.ts.map +1 -1
- package/dist/factories/simple/index.js.map +1 -1
- package/dist/factories/traefik/compositions/traefik-bootstrap.d.ts +4 -47
- package/dist/factories/traefik/compositions/traefik-bootstrap.d.ts.map +1 -1
- package/dist/factories/traefik/compositions/traefik-bootstrap.js.map +1 -1
- package/dist/factories/traefik/compositions/traefik-helm-repository.d.ts +3 -7
- package/dist/factories/traefik/compositions/traefik-helm-repository.d.ts.map +1 -1
- package/dist/factories/traefik/compositions/traefik-helm-repository.js.map +1 -1
- package/dist/factories/traefik/resources/helm.d.ts +2 -2
- package/dist/factories/traefik/resources/helm.d.ts.map +1 -1
- package/dist/factories/traefik/resources/helm.js.map +1 -1
- package/dist/factories/valkey/compositions/valkey-bootstrap.d.ts +4 -16
- package/dist/factories/valkey/compositions/valkey-bootstrap.d.ts.map +1 -1
- package/dist/factories/valkey/compositions/valkey-bootstrap.js.map +1 -1
- package/dist/factories/valkey/compositions/valkey-helm-repository.d.ts +3 -7
- package/dist/factories/valkey/compositions/valkey-helm-repository.d.ts.map +1 -1
- package/dist/factories/valkey/compositions/valkey-helm-repository.js.map +1 -1
- package/package.json +7 -5
- package/dist/core/aspects/metadata.d.ts +0 -16
- package/dist/core/aspects/metadata.d.ts.map +0 -1
- package/dist/core/aspects/targets.d.ts +0 -9
- package/dist/core/aspects/targets.d.ts.map +0 -1
- package/dist/core/composition/analysis-metadata.d.ts +0 -15
- package/dist/core/composition/analysis-metadata.d.ts.map +0 -1
- package/dist/core/composition/index.d.ts +0 -12
- package/dist/core/composition/index.d.ts.map +0 -1
- package/dist/core/composition/nested-status-cel.d.ts +0 -82
- package/dist/core/composition/nested-status-cel.d.ts.map +0 -1
- package/dist/core/config/defaults.d.ts +0 -109
- package/dist/core/config/defaults.d.ts.map +0 -1
- package/dist/core/config/env.d.ts +0 -12
- package/dist/core/config/env.d.ts.map +0 -1
- package/dist/core/config/index.d.ts +0 -3
- package/dist/core/config/index.d.ts.map +0 -1
- package/dist/core/containers/exec.d.ts +0 -19
- package/dist/core/containers/exec.d.ts.map +0 -1
- package/dist/core/containers/registries/docker-session.d.ts +0 -14
- package/dist/core/containers/registries/docker-session.d.ts.map +0 -1
- package/dist/core/containers/registries/ecr.d.ts +0 -21
- package/dist/core/containers/registries/ecr.d.ts.map +0 -1
- package/dist/core/containers/registries/index.d.ts +0 -9
- package/dist/core/containers/registries/index.d.ts.map +0 -1
- package/dist/core/containers/registries/orbstack.d.ts +0 -13
- package/dist/core/containers/registries/orbstack.d.ts.map +0 -1
- package/dist/core/deployment/closure-planner.d.ts +0 -20
- package/dist/core/deployment/closure-planner.d.ts.map +0 -1
- package/dist/core/deployment/crd-manager.d.ts +0 -79
- package/dist/core/deployment/crd-manager.d.ts.map +0 -1
- package/dist/core/deployment/deletion-result.d.ts +0 -22
- package/dist/core/deployment/deletion-result.d.ts.map +0 -1
- package/dist/core/deployment/event-filter.d.ts +0 -142
- package/dist/core/deployment/event-filter.d.ts.map +0 -1
- package/dist/core/deployment/event-monitor.d.ts +0 -243
- package/dist/core/deployment/event-monitor.d.ts.map +0 -1
- package/dist/core/deployment/handle-tracing.d.ts +0 -14
- package/dist/core/deployment/handle-tracing.d.ts.map +0 -1
- package/dist/core/deployment/kro-instance-admission.d.ts +0 -17
- package/dist/core/deployment/kro-instance-admission.d.ts.map +0 -1
- package/dist/core/deployment/kro-instance-safety.d.ts +0 -237
- package/dist/core/deployment/kro-instance-safety.d.ts.map +0 -1
- package/dist/core/deployment/nested-composition-status.d.ts +0 -33
- package/dist/core/deployment/nested-composition-status.d.ts.map +0 -1
- package/dist/core/deployment/readiness-waiter.d.ts +0 -60
- package/dist/core/deployment/readiness-waiter.d.ts.map +0 -1
- package/dist/core/deployment/resource-applier.d.ts +0 -87
- package/dist/core/deployment/resource-applier.d.ts.map +0 -1
- package/dist/core/deployment/resource-tagging.d.ts +0 -220
- package/dist/core/deployment/resource-tagging.d.ts.map +0 -1
- package/dist/core/deployment/schema-cel-evaluator.d.ts +0 -5
- package/dist/core/deployment/schema-cel-evaluator.d.ts.map +0 -1
- package/dist/core/deployment/singleton-gitops.d.ts +0 -10
- package/dist/core/deployment/singleton-gitops.d.ts.map +0 -1
- package/dist/core/expressions/analysis/alias-inliner.d.ts +0 -14
- package/dist/core/expressions/analysis/alias-inliner.d.ts.map +0 -1
- package/dist/core/expressions/analysis/array-method-converters.d.ts +0 -19
- package/dist/core/expressions/analysis/array-method-converters.d.ts.map +0 -1
- package/dist/core/expressions/analysis/ast-helpers.d.ts +0 -49
- package/dist/core/expressions/analysis/ast-helpers.d.ts.map +0 -1
- package/dist/core/expressions/analysis/ast-node-converters.d.ts +0 -15
- package/dist/core/expressions/analysis/ast-node-converters.d.ts.map +0 -1
- package/dist/core/expressions/analysis/ast-type-guards.d.ts +0 -14
- package/dist/core/expressions/analysis/ast-type-guards.d.ts.map +0 -1
- package/dist/core/expressions/analysis/call-expression-converters.d.ts +0 -18
- package/dist/core/expressions/analysis/call-expression-converters.d.ts.map +0 -1
- package/dist/core/expressions/analysis/cel-emitter.d.ts +0 -86
- package/dist/core/expressions/analysis/cel-emitter.d.ts.map +0 -1
- package/dist/core/expressions/analysis/expression-classifier.d.ts +0 -77
- package/dist/core/expressions/analysis/expression-classifier.d.ts.map +0 -1
- package/dist/core/expressions/analysis/expression-metadata.d.ts +0 -15
- package/dist/core/expressions/analysis/expression-metadata.d.ts.map +0 -1
- package/dist/core/expressions/analysis/fn-toString-self-test.d.ts +0 -146
- package/dist/core/expressions/analysis/fn-toString-self-test.d.ts.map +0 -1
- package/dist/core/expressions/analysis/operator-utils.d.ts +0 -35
- package/dist/core/expressions/analysis/operator-utils.d.ts.map +0 -1
- package/dist/core/expressions/analysis/ready-when.d.ts +0 -3
- package/dist/core/expressions/analysis/ready-when.d.ts.map +0 -1
- package/dist/core/expressions/analysis/scope-resolver.d.ts +0 -57
- package/dist/core/expressions/analysis/scope-resolver.d.ts.map +0 -1
- package/dist/core/expressions/analysis/strict-cel.d.ts +0 -26
- package/dist/core/expressions/analysis/strict-cel.d.ts.map +0 -1
- package/dist/core/expressions/analysis/string-method-converters.d.ts +0 -27
- package/dist/core/expressions/analysis/string-method-converters.d.ts.map +0 -1
- package/dist/core/expressions/composition/composition-analyzer-helpers.d.ts +0 -114
- package/dist/core/expressions/composition/composition-analyzer-helpers.d.ts.map +0 -1
- package/dist/core/expressions/composition/composition-analyzer-ternary.d.ts +0 -78
- package/dist/core/expressions/composition/composition-analyzer-ternary.d.ts.map +0 -1
- package/dist/core/expressions/composition/composition-analyzer-traversal.d.ts +0 -37
- package/dist/core/expressions/composition/composition-analyzer-traversal.d.ts.map +0 -1
- package/dist/core/expressions/composition/context-tracker.d.ts +0 -39
- package/dist/core/expressions/composition/context-tracker.d.ts.map +0 -1
- package/dist/core/expressions/composition/expression-analyzer.d.ts +0 -101
- package/dist/core/expressions/composition/expression-analyzer.d.ts.map +0 -1
- package/dist/core/expressions/composition/imperative-analyzer.d.ts +0 -21
- package/dist/core/expressions/composition/imperative-analyzer.d.ts.map +0 -1
- package/dist/core/expressions/composition/index.d.ts +0 -17
- package/dist/core/expressions/composition/index.d.ts.map +0 -1
- package/dist/core/expressions/composition/integration-hooks.d.ts +0 -71
- package/dist/core/expressions/composition/integration-hooks.d.ts.map +0 -1
- package/dist/core/expressions/composition/scope-manager.d.ts +0 -93
- package/dist/core/expressions/composition/scope-manager.d.ts.map +0 -1
- package/dist/core/expressions/composition/types.d.ts +0 -41
- package/dist/core/expressions/composition/types.d.ts.map +0 -1
- package/dist/core/expressions/conditional/conditional-expression-processor.d.ts +0 -154
- package/dist/core/expressions/conditional/conditional-expression-processor.d.ts.map +0 -1
- package/dist/core/expressions/conditional/conditional-integration.d.ts +0 -111
- package/dist/core/expressions/conditional/conditional-integration.d.ts.map +0 -1
- package/dist/core/expressions/factory/dependency-tracker.d.ts +0 -222
- package/dist/core/expressions/factory/dependency-tracker.d.ts.map +0 -1
- package/dist/core/expressions/factory/resource-analyzer.d.ts +0 -139
- package/dist/core/expressions/factory/resource-analyzer.d.ts.map +0 -1
- package/dist/core/expressions/factory/resource-type-validator.d.ts +0 -149
- package/dist/core/expressions/factory/resource-type-validator.d.ts.map +0 -1
- package/dist/core/expressions/factory/status-ast-utils.d.ts +0 -36
- package/dist/core/expressions/factory/status-ast-utils.d.ts.map +0 -1
- package/dist/core/expressions/factory/status-cel-generation.d.ts +0 -67
- package/dist/core/expressions/factory/status-cel-generation.d.ts.map +0 -1
- package/dist/core/expressions/factory/status-field-analysis.d.ts +0 -58
- package/dist/core/expressions/factory/status-field-analysis.d.ts.map +0 -1
- package/dist/core/expressions/magic-proxy/magic-assignable-analyzer.d.ts +0 -123
- package/dist/core/expressions/magic-proxy/magic-assignable-analyzer.d.ts.map +0 -1
- package/dist/core/expressions/magic-proxy/magic-proxy-analyzer.d.ts +0 -153
- package/dist/core/expressions/magic-proxy/magic-proxy-analyzer.d.ts.map +0 -1
- package/dist/core/expressions/magic-proxy/magic-proxy-ast.d.ts +0 -44
- package/dist/core/expressions/magic-proxy/magic-proxy-ast.d.ts.map +0 -1
- package/dist/core/expressions/magic-proxy/magic-proxy-types.d.ts +0 -36
- package/dist/core/expressions/magic-proxy/magic-proxy-types.d.ts.map +0 -1
- package/dist/core/expressions/magic-proxy/optionality-analysis.d.ts +0 -54
- package/dist/core/expressions/magic-proxy/optionality-analysis.d.ts.map +0 -1
- package/dist/core/expressions/magic-proxy/optionality-cel-generation.d.ts +0 -51
- package/dist/core/expressions/magic-proxy/optionality-cel-generation.d.ts.map +0 -1
- package/dist/core/expressions/magic-proxy/optionality-hydration.d.ts +0 -84
- package/dist/core/expressions/magic-proxy/optionality-hydration.d.ts.map +0 -1
- package/dist/core/expressions/magic-proxy/optionality-optional-chaining.d.ts +0 -61
- package/dist/core/expressions/magic-proxy/optionality-optional-chaining.d.ts.map +0 -1
- package/dist/core/expressions/validation/resource-field-utils.d.ts +0 -69
- package/dist/core/expressions/validation/resource-field-utils.d.ts.map +0 -1
- package/dist/core/kubernetes/bun-watch.d.ts +0 -30
- package/dist/core/kubernetes/bun-watch.d.ts.map +0 -1
- package/dist/core/kubernetes/client-node-runtime.d.ts +0 -10
- package/dist/core/kubernetes/client-node-runtime.d.ts.map +0 -1
- package/dist/core/proxy/index.d.ts +0 -8
- package/dist/core/proxy/index.d.ts.map +0 -1
- package/dist/core/proxy/known-status-fields.d.ts +0 -27
- package/dist/core/proxy/known-status-fields.d.ts.map +0 -1
- package/dist/core/readiness/strategy-configuration.d.ts +0 -12
- package/dist/core/readiness/strategy-configuration.d.ts.map +0 -1
- package/dist/core/references/cel-lexical-scanner.d.ts +0 -113
- package/dist/core/references/cel-lexical-scanner.d.ts.map +0 -1
- package/dist/core/runtime/standalone-operation.d.ts +0 -12
- package/dist/core/runtime/standalone-operation.d.ts.map +0 -1
- package/dist/core/runtime-patches/crd-patcher.d.ts +0 -30
- package/dist/core/runtime-patches/crd-patcher.d.ts.map +0 -1
- package/dist/core/runtime-patches/crd-schema-fix.d.ts +0 -145
- package/dist/core/runtime-patches/crd-schema-fix.d.ts.map +0 -1
- package/dist/core/runtime-patches/index.d.ts +0 -8
- package/dist/core/runtime-patches/index.d.ts.map +0 -1
- package/dist/core/serialization/arktype-ast.d.ts +0 -21
- package/dist/core/serialization/arktype-ast.d.ts.map +0 -1
- package/dist/core/serialization/kro-post-processing.d.ts +0 -46
- package/dist/core/serialization/kro-post-processing.d.ts.map +0 -1
- package/dist/core/serialization/status-analysis-pipeline.d.ts +0 -67
- package/dist/core/serialization/status-analysis-pipeline.d.ts.map +0 -1
- package/dist/core/validation/cel-dialect.d.ts +0 -246
- package/dist/core/validation/cel-dialect.d.ts.map +0 -1
- package/dist/core/validation/cel-validator.d.ts +0 -77
- package/dist/core/validation/cel-validator.d.ts.map +0 -1
- package/dist/core/validation/literal-status.d.ts +0 -107
- package/dist/core/validation/literal-status.d.ts.map +0 -1
- package/dist/core/validation/structural-spec-dependence.d.ts +0 -179
- package/dist/core/validation/structural-spec-dependence.d.ts.map +0 -1
- package/dist/factories/cert-manager/utils/helm-values-mapper.d.ts +0 -23
- package/dist/factories/cert-manager/utils/helm-values-mapper.d.ts.map +0 -1
- package/dist/factories/cert-manager/utils/index.d.ts +0 -2
- package/dist/factories/cert-manager/utils/index.d.ts.map +0 -1
- package/dist/factories/flux/kustomize/types.d.ts +0 -2
- package/dist/factories/flux/kustomize/types.d.ts.map +0 -1
- package/dist/factories/nats/compositions/nack-controller-migration.d.ts +0 -18
- package/dist/factories/nats/compositions/nack-controller-migration.d.ts.map +0 -1
- package/dist/factories/ory/schemas/maester-crds.d.ts +0 -9
- package/dist/factories/ory/schemas/maester-crds.d.ts.map +0 -1
- package/dist/factories/pebble/utils/helm-values-mapper.d.ts +0 -21
- package/dist/factories/pebble/utils/helm-values-mapper.d.ts.map +0 -1
- package/dist/factories/shared.d.ts +0 -18
- package/dist/factories/shared.d.ts.map +0 -1
- package/dist/shared/own-property.d.ts +0 -15
- package/dist/shared/own-property.d.ts.map +0 -1
- package/dist/utils/cel-escape.d.ts +0 -12
- package/dist/utils/cel-escape.d.ts.map +0 -1
- package/dist/utils/cel-resource-identifiers.d.ts +0 -23
- package/dist/utils/cel-resource-identifiers.d.ts.map +0 -1
|
@@ -1,220 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Resource Tagging
|
|
3
|
-
*
|
|
4
|
-
* Applies typekro-ownership metadata to Kubernetes resources at deploy time
|
|
5
|
-
* as labels and annotations, and extracts it back at delete time. This is
|
|
6
|
-
* the core of typekro's label-based deployment-state backend: the cluster
|
|
7
|
-
* IS the state, no separate ConfigMap record is kept.
|
|
8
|
-
*
|
|
9
|
-
* ## What gets tagged
|
|
10
|
-
*
|
|
11
|
-
* **Labels** (selector-queryable, constrained to 63-char DNS-label values):
|
|
12
|
-
* - `typekro.io/managed-by=typekro` — claims ownership; acts as a broad
|
|
13
|
-
* filter for "find everything typekro has deployed"
|
|
14
|
-
* - `typekro.io/factory-name=<sanitized>` — scopes a resource to one
|
|
15
|
-
* factory identity
|
|
16
|
-
* - `typekro.io/instance-name=<sanitized>` — scopes a resource to one
|
|
17
|
-
* deployed instance within a factory
|
|
18
|
-
*
|
|
19
|
-
* **Annotations** (arbitrary strings, used for state that exceeds label
|
|
20
|
-
* constraints or isn't selector-queried):
|
|
21
|
-
* - `typekro.io/deployment-id=<uuid>` — groups resources from a single
|
|
22
|
-
* deployment call
|
|
23
|
-
* - `typekro.io/resource-id=<node-id>` — original composition-local
|
|
24
|
-
* resource id (may differ from `metadata.name` and isn't DNS-constrained)
|
|
25
|
-
* - `typekro.io/factory-name=<raw>` — unsanitized factory name for display
|
|
26
|
-
* and exact-match comparisons (labels may be truncated/sanitized)
|
|
27
|
-
* - `typekro.io/instance-name=<raw>` — same, for instance name
|
|
28
|
-
* - `typekro.io/factory-namespace=<ns>` — the factory's "home" namespace
|
|
29
|
-
* (where the factory was invoked from). Used by cross-namespace
|
|
30
|
-
* discovery to narrow queries.
|
|
31
|
-
* - `typekro.io/scopes=<json-array>` — JSON-encoded list of scope names
|
|
32
|
-
* this resource belongs to (e.g., `["cluster"]`). Empty/absent means
|
|
33
|
-
* "instance-private." See {@link getEffectiveScopes}.
|
|
34
|
-
* - `typekro.io/depends-on=<json-array>` — JSON-encoded list of
|
|
35
|
-
* composition-local resource ids that THIS resource depends on. Used
|
|
36
|
-
* by discovery to reconstruct the dependency graph for reverse-
|
|
37
|
-
* topological deletion without needing the original composition source.
|
|
38
|
-
*
|
|
39
|
-
* ## Why this design
|
|
40
|
-
*
|
|
41
|
-
* A prior iteration stored the deployment record in a ConfigMap in the
|
|
42
|
-
* factory namespace. That worked for cross-process cleanup but had
|
|
43
|
-
* drawbacks: the ConfigMap could drift from reality (e.g., a resource
|
|
44
|
-
* deleted manually leaves a dangling record), required a bootstrap
|
|
45
|
-
* namespace for the record to live in, and made multi-consumer ownership
|
|
46
|
-
* of shared resources ambiguous.
|
|
47
|
-
*
|
|
48
|
-
* Storing the state directly on the resources makes the cluster self-
|
|
49
|
-
* describing: `kubectl get all -l typekro.io/factory-name=X` returns the
|
|
50
|
-
* full set. No external index to keep in sync. Shared resources can
|
|
51
|
-
* carry tags from multiple owners naturally.
|
|
52
|
-
*/
|
|
53
|
-
import type { KubernetesResource } from '../types/kubernetes.js';
|
|
54
|
-
/** Label set on every resource deployed by typekro. */
|
|
55
|
-
export declare const MANAGED_BY_LABEL = "typekro.io/managed-by";
|
|
56
|
-
export declare const MANAGED_BY_VALUE = "typekro";
|
|
57
|
-
/** Label identifying the factory that deployed this resource. */
|
|
58
|
-
export declare const FACTORY_NAME_LABEL = "typekro.io/factory-name";
|
|
59
|
-
/** Label identifying the instance within a factory. */
|
|
60
|
-
export declare const INSTANCE_NAME_LABEL = "typekro.io/instance-name";
|
|
61
|
-
/** Annotation carrying the deployment run id. */
|
|
62
|
-
export declare const DEPLOYMENT_ID_ANNOTATION = "typekro.io/deployment-id";
|
|
63
|
-
/** Annotation carrying the composition-local resource id (pre-sanitization). */
|
|
64
|
-
export declare const RESOURCE_ID_ANNOTATION = "typekro.io/resource-id";
|
|
65
|
-
/** Annotation carrying the raw (unsanitized) factory name. */
|
|
66
|
-
export declare const FACTORY_NAME_ANNOTATION = "typekro.io/factory-name";
|
|
67
|
-
/** Annotation carrying the raw (unsanitized) instance name. */
|
|
68
|
-
export declare const INSTANCE_NAME_ANNOTATION = "typekro.io/instance-name";
|
|
69
|
-
/** Annotation carrying the factory's home namespace. */
|
|
70
|
-
export declare const FACTORY_NAMESPACE_ANNOTATION = "typekro.io/factory-namespace";
|
|
71
|
-
/** Annotation carrying scope membership as a JSON array of strings. */
|
|
72
|
-
export declare const SCOPES_ANNOTATION = "typekro.io/scopes";
|
|
73
|
-
/** Annotation carrying dependency ids as a JSON array of strings. */
|
|
74
|
-
export declare const DEPENDS_ON_ANNOTATION = "typekro.io/depends-on";
|
|
75
|
-
/** Annotation carrying the immutable singleton owner spec fingerprint. */
|
|
76
|
-
export declare const SINGLETON_SPEC_FINGERPRINT_ANNOTATION = "typekro.io/singleton-spec-fingerprint";
|
|
77
|
-
/**
|
|
78
|
-
* Everything needed to stamp a resource with its typekro ownership
|
|
79
|
-
* metadata at deploy time.
|
|
80
|
-
*/
|
|
81
|
-
export interface TagContext {
|
|
82
|
-
/** Factory identifier (raw, pre-sanitization). */
|
|
83
|
-
factoryName: string;
|
|
84
|
-
/** Instance identifier (raw, pre-sanitization). */
|
|
85
|
-
instanceName: string;
|
|
86
|
-
/** Deployment run id — usually the engine's generated `deployment-<ts>-<rand>`. */
|
|
87
|
-
deploymentId: string;
|
|
88
|
-
/** The factory's home namespace — where it was invoked from. */
|
|
89
|
-
factoryNamespace: string;
|
|
90
|
-
/** The composition-local resource id (graph node id). */
|
|
91
|
-
resourceId: string;
|
|
92
|
-
/**
|
|
93
|
-
* Scope names this resource belongs to. Empty or undefined means
|
|
94
|
-
* "instance-private — delete on deleteInstance by default."
|
|
95
|
-
*/
|
|
96
|
-
scopes?: string[];
|
|
97
|
-
/**
|
|
98
|
-
* IDs of resources this resource depends on (from the dependency graph).
|
|
99
|
-
* Used for reverse-topological deletion reconstruction.
|
|
100
|
-
*/
|
|
101
|
-
dependencies?: string[];
|
|
102
|
-
/** Fingerprint for singleton owner resources. */
|
|
103
|
-
singletonSpecFingerprint?: string;
|
|
104
|
-
}
|
|
105
|
-
/**
|
|
106
|
-
* Apply typekro ownership metadata to a resource manifest. Mutates
|
|
107
|
-
* `manifest.metadata.labels` and `manifest.metadata.annotations` in place.
|
|
108
|
-
*
|
|
109
|
-
* Called from the deploy path right before the resource is serialized and
|
|
110
|
-
* sent to the cluster. The manifest at that point is a plain object (post
|
|
111
|
-
* reference-resolution and namespace-application), so in-place mutation is
|
|
112
|
-
* safe and avoids an extra clone.
|
|
113
|
-
*
|
|
114
|
-
* Existing user-set labels and annotations are preserved — only the
|
|
115
|
-
* `typekro.io/*` keys are added or overwritten.
|
|
116
|
-
*/
|
|
117
|
-
export declare function applyTypekroTags(manifest: KubernetesResource, ctx: TagContext): void;
|
|
118
|
-
/**
|
|
119
|
-
* Parsed typekro ownership metadata extracted from a live resource's
|
|
120
|
-
* labels and annotations. Shape mirrors {@link TagContext} but with the
|
|
121
|
-
* nullable fields explicit, because labels/annotations may be missing
|
|
122
|
-
* (e.g., if a resource was tagged by an older typekro version).
|
|
123
|
-
*/
|
|
124
|
-
export interface ExtractedTags {
|
|
125
|
-
factoryName?: string;
|
|
126
|
-
instanceName?: string;
|
|
127
|
-
factoryNamespace?: string;
|
|
128
|
-
deploymentId?: string;
|
|
129
|
-
resourceId?: string;
|
|
130
|
-
scopes: string[];
|
|
131
|
-
dependencies: string[];
|
|
132
|
-
}
|
|
133
|
-
/**
|
|
134
|
-
* Extract typekro metadata from a live Kubernetes resource. The live
|
|
135
|
-
* resource is whatever the server returned from a list/read call —
|
|
136
|
-
* `metadata.labels` and `metadata.annotations` are plain records.
|
|
137
|
-
*
|
|
138
|
-
* Never throws: malformed annotations (bad JSON, wrong types) are
|
|
139
|
-
* silently ignored and return empty defaults. The caller should treat
|
|
140
|
-
* missing fields as "we don't know" rather than "the resource is
|
|
141
|
-
* un-owned," because this function is invoked on resources that matched
|
|
142
|
-
* a label selector upstream.
|
|
143
|
-
*/
|
|
144
|
-
export declare function extractTypekroTags(resource: {
|
|
145
|
-
metadata?: {
|
|
146
|
-
labels?: Record<string, string>;
|
|
147
|
-
annotations?: Record<string, string>;
|
|
148
|
-
};
|
|
149
|
-
}): ExtractedTags;
|
|
150
|
-
/**
|
|
151
|
-
* Compute the effective scope set for a resource, merging three sources:
|
|
152
|
-
*
|
|
153
|
-
* 1. `typekro.io/scopes` annotation on the live manifest (the
|
|
154
|
-
* canonical cluster-side source, used by cross-process delete).
|
|
155
|
-
* 2. WeakMap `scopes` metadata set via `setMetadataField` in-process
|
|
156
|
-
* (used when the resource is still in memory and hasn't been
|
|
157
|
-
* tagged on-cluster yet — e.g., during deploy).
|
|
158
|
-
* 3. The legacy `lifecycle: 'shared'` alias, which is equivalent to
|
|
159
|
-
* `scopes: ['shared']`.
|
|
160
|
-
*
|
|
161
|
-
* Returns an empty array if the resource is "instance-private" (no
|
|
162
|
-
* scopes from any source). Factory-provided `scope: 'cluster'` metadata is
|
|
163
|
-
* treated as membership in the broader `cluster` deletion/application scope.
|
|
164
|
-
*/
|
|
165
|
-
export declare function getEffectiveScopes(resource: KubernetesResource): string[];
|
|
166
|
-
/**
|
|
167
|
-
* Decide whether a resource matches a scope filter.
|
|
168
|
-
*
|
|
169
|
-
* Used by both the deploy path (`targetScopes`) and the delete path
|
|
170
|
-
* (`deleteInstance` scopes). The semantics are additive:
|
|
171
|
-
*
|
|
172
|
-
* - **Unscoped** resources (empty effective scopes) match when
|
|
173
|
-
* `includeUnscoped` is `true` (the default). Set to `false` to
|
|
174
|
-
* exclude them — useful when you want to tear down only shared
|
|
175
|
-
* infrastructure without touching instance-private resources.
|
|
176
|
-
* - **Scoped** resources match when ANY of their scopes appear in
|
|
177
|
-
* the `scopeFilter`. An empty filter means "no broader scopes
|
|
178
|
-
* targeted" — only unscoped resources pass.
|
|
179
|
-
*
|
|
180
|
-
* Examples (default includeUnscoped=true):
|
|
181
|
-
* scopesMatchFilter([], []) === true // unscoped, included by default
|
|
182
|
-
* scopesMatchFilter([], ['cluster']) === true // unscoped, still included
|
|
183
|
-
* scopesMatchFilter(['cluster'], []) === false // scoped, not targeted
|
|
184
|
-
* scopesMatchFilter(['cluster'], ['cluster']) === true // scoped, targeted
|
|
185
|
-
*
|
|
186
|
-
* With includeUnscoped=false:
|
|
187
|
-
* scopesMatchFilter([], ['cluster'], false) === false // unscoped excluded
|
|
188
|
-
* scopesMatchFilter(['cluster'], ['cluster'], false) === true // scoped still matches
|
|
189
|
-
*/
|
|
190
|
-
export declare function scopesMatchFilter(resourceScopes: string[], scopeFilter: string[], includeUnscoped?: boolean): boolean;
|
|
191
|
-
/**
|
|
192
|
-
* Decide whether a resource matches deploy-side `targetScopes` semantics.
|
|
193
|
-
*
|
|
194
|
-
* Deployment targeting is intentionally stricter than delete-side filtering:
|
|
195
|
-
* - `undefined` means deploy everything (handled by callers before invoking this helper).
|
|
196
|
-
* - `[]` means deploy only instance-private/unscoped resources.
|
|
197
|
-
* - Non-empty filters deploy only resources with at least one matching lifecycle scope.
|
|
198
|
-
*/
|
|
199
|
-
export declare function scopesMatchDeployTarget(resourceScopes: string[], targetScopes: string[]): boolean;
|
|
200
|
-
/**
|
|
201
|
-
* Build a label selector string for locating all resources belonging to
|
|
202
|
-
* a specific factory + instance. Used by the discovery path at delete
|
|
203
|
-
* time.
|
|
204
|
-
*/
|
|
205
|
-
export declare function buildFactoryInstanceSelector(opts: {
|
|
206
|
-
factoryName: string;
|
|
207
|
-
instanceName: string;
|
|
208
|
-
}): string;
|
|
209
|
-
/**
|
|
210
|
-
* Sanitise a string for use as a Kubernetes label value. Labels must be
|
|
211
|
-
* DNS-label-compatible (alphanumeric + `-`, `_`, `.`, max 63 chars) and
|
|
212
|
-
* must start+end with an alphanumeric. Replace anything else with `-`
|
|
213
|
-
* and truncate.
|
|
214
|
-
*
|
|
215
|
-
* Note: this is not collision-free — two factory names that differ only
|
|
216
|
-
* in disallowed characters will sanitise to the same value. Callers
|
|
217
|
-
* that need collision resistance should use the annotation form.
|
|
218
|
-
*/
|
|
219
|
-
export declare function sanitiseLabelValue(value: string): string;
|
|
220
|
-
//# sourceMappingURL=resource-tagging.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"resource-tagging.d.ts","sourceRoot":"","sources":["../../../src/core/deployment/resource-tagging.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AAGH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAIjE,uDAAuD;AACvD,eAAO,MAAM,gBAAgB,0BAA0B,CAAC;AACxD,eAAO,MAAM,gBAAgB,YAAY,CAAC;AAE1C,iEAAiE;AACjE,eAAO,MAAM,kBAAkB,4BAA4B,CAAC;AAE5D,uDAAuD;AACvD,eAAO,MAAM,mBAAmB,6BAA6B,CAAC;AAI9D,iDAAiD;AACjD,eAAO,MAAM,wBAAwB,6BAA6B,CAAC;AAEnE,gFAAgF;AAChF,eAAO,MAAM,sBAAsB,2BAA2B,CAAC;AAE/D,8DAA8D;AAC9D,eAAO,MAAM,uBAAuB,4BAA4B,CAAC;AAEjE,+DAA+D;AAC/D,eAAO,MAAM,wBAAwB,6BAA6B,CAAC;AAEnE,wDAAwD;AACxD,eAAO,MAAM,4BAA4B,iCAAiC,CAAC;AAE3E,uEAAuE;AACvE,eAAO,MAAM,iBAAiB,sBAAsB,CAAC;AAErD,qEAAqE;AACrE,eAAO,MAAM,qBAAqB,0BAA0B,CAAC;AAE7D,0EAA0E;AAC1E,eAAO,MAAM,qCAAqC,0CAA0C,CAAC;AAI7F;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,kDAAkD;IAClD,WAAW,EAAE,MAAM,CAAC;IACpB,mDAAmD;IACnD,YAAY,EAAE,MAAM,CAAC;IACrB,mFAAmF;IACnF,YAAY,EAAE,MAAM,CAAC;IACrB,gEAAgE;IAChE,gBAAgB,EAAE,MAAM,CAAC;IACzB,yDAAyD;IACzD,UAAU,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,iDAAiD;IACjD,wBAAwB,CAAC,EAAE,MAAM,CAAC;CACnC;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,kBAAkB,EAAE,GAAG,EAAE,UAAU,GAAG,IAAI,CAiCpF;AAID;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE;IAC3C,QAAQ,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAC;CACtF,GAAG,aAAa,CAyBhB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,MAAM,EAAE,CA4BzE;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,iBAAiB,CAC/B,cAAc,EAAE,MAAM,EAAE,EACxB,WAAW,EAAE,MAAM,EAAE,EACrB,eAAe,UAAO,GACrB,OAAO,CAGT;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,cAAc,EAAE,MAAM,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAIjG;AAID;;;;GAIG;AACH,wBAAgB,4BAA4B,CAAC,IAAI,EAAE;IACjD,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACtB,GAAG,MAAM,CAMT;AAsBD;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CASxD"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import type { CelExpression } from '../types/common.js';
|
|
2
|
-
import type { KroCompatibleType } from '../types/serialization.js';
|
|
3
|
-
/** Safely evaluate a schema-only CEL expression against one concrete instance spec. */
|
|
4
|
-
export declare function evaluateSchemaCelExpression(celExpression: CelExpression, spec: KroCompatibleType): unknown;
|
|
5
|
-
//# sourceMappingURL=schema-cel-evaluator.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"schema-cel-evaluator.d.ts","sourceRoot":"","sources":["../../../src/core/deployment/schema-cel-evaluator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAwJnE,uFAAuF;AACvF,wBAAgB,2BAA2B,CACzC,aAAa,EAAE,aAAa,EAC5B,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAMT"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import type { SingletonDefinitionRecord } from '../types/deployment.js';
|
|
2
|
-
/** RGD YAML for each singleton owner composition (the CRD + resource graph it owns). */
|
|
3
|
-
export declare function singletonRgdYamls(definitions: readonly SingletonDefinitionRecord[]): string[];
|
|
4
|
-
/** Owner-instance manifests — one shared CR per singleton, matching `deploy()`. */
|
|
5
|
-
export declare function singletonOwnerInstanceManifests(definitions: readonly SingletonDefinitionRecord[]): unknown[];
|
|
6
|
-
/** Owner-instance YAML documents (one per singleton). */
|
|
7
|
-
export declare function singletonOwnerInstanceYamls(definitions: readonly SingletonDefinitionRecord[]): string[];
|
|
8
|
-
/** Join YAML documents, dropping empties, with the leading docs emitted deps-first. */
|
|
9
|
-
export declare function joinYamlDocuments(leadingDocs: string[], main: string): string;
|
|
10
|
-
//# sourceMappingURL=singleton-gitops.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"singleton-gitops.d.ts","sourceRoot":"","sources":["../../../src/core/deployment/singleton-gitops.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAkBxE,wFAAwF;AACxF,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,SAAS,yBAAyB,EAAE,GAAG,MAAM,EAAE,CAI7F;AAED,mFAAmF;AACnF,wBAAgB,+BAA+B,CAC7C,WAAW,EAAE,SAAS,yBAAyB,EAAE,GAChD,OAAO,EAAE,CAkBX;AAED,yDAAyD;AACzD,wBAAgB,2BAA2B,CACzC,WAAW,EAAE,SAAS,yBAAyB,EAAE,GAChD,MAAM,EAAE,CAIV;AAED,uFAAuF;AACvF,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAK7E"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Lexical alias collection and inlining for status expressions.
|
|
3
|
-
*
|
|
4
|
-
* This pass intentionally works on source/AST before JS values are evaluated,
|
|
5
|
-
* because JavaScript operators erase the symbolic proxy expression at runtime.
|
|
6
|
-
*/
|
|
7
|
-
export type LexicalAliasScope = Record<string, string>;
|
|
8
|
-
type AnyNode = Record<string, any>;
|
|
9
|
-
export declare function buildLexicalAliasScope(ast: unknown, source: string): LexicalAliasScope;
|
|
10
|
-
export declare function inlineLexicalAliases(expression: string, scope: LexicalAliasScope): string;
|
|
11
|
-
export declare function topLevelReturnStatement(ast: unknown): AnyNode | undefined;
|
|
12
|
-
export declare function getNodeSource(node: AnyNode, fullSource: string): string;
|
|
13
|
-
export {};
|
|
14
|
-
//# sourceMappingURL=alias-inliner.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"alias-inliner.d.ts","sourceRoot":"","sources":["../../../../src/core/expressions/analysis/alias-inliner.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAKvD,KAAK,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAEnC,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,iBAAiB,CAkBtF;AAED,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,iBAAiB,GAAG,MAAM,CAmBzF;AAED,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS,CAIzE;AAyRD,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAyCvE"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* JavaScript array method → CEL expression converters.
|
|
3
|
-
*
|
|
4
|
-
* Each function converts a specific JS array method call to its CEL equivalent.
|
|
5
|
-
* All functions are stateless – they receive a `convertNode` callback for recursion.
|
|
6
|
-
*/
|
|
7
|
-
import type { Expression as ESTreeExpression, SpreadElement as ESTreeSpreadElement } from 'estree';
|
|
8
|
-
import type { CelExpression } from '../../types/common.js';
|
|
9
|
-
import type { AnalysisContext, ConvertNodeFn } from './shared-types.js';
|
|
10
|
-
type Args = readonly (ESTreeExpression | ESTreeSpreadElement)[];
|
|
11
|
-
export declare function convertArrayFind(object: CelExpression, args: Args, context: AnalysisContext, convertNode: ConvertNodeFn): CelExpression;
|
|
12
|
-
export declare function convertArrayFilter(object: CelExpression, args: Args, context: AnalysisContext, convertNode: ConvertNodeFn): CelExpression;
|
|
13
|
-
export declare function convertArrayMap(object: CelExpression, args: Args, _context: AnalysisContext): CelExpression;
|
|
14
|
-
export declare function convertArraySome(object: CelExpression, args: Args, _context: AnalysisContext): CelExpression;
|
|
15
|
-
export declare function convertArrayEvery(object: CelExpression, args: Args, _context: AnalysisContext): CelExpression;
|
|
16
|
-
export declare function convertArrayJoin(object: CelExpression, args: Args, context: AnalysisContext, convertNode: ConvertNodeFn): CelExpression;
|
|
17
|
-
export declare function convertArrayFlatMap(object: CelExpression, args: Args, _context: AnalysisContext): CelExpression;
|
|
18
|
-
export {};
|
|
19
|
-
//# sourceMappingURL=array-method-converters.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"array-method-converters.d.ts","sourceRoot":"","sources":["../../../../src/core/expressions/analysis/array-method-converters.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,UAAU,IAAI,gBAAgB,EAAE,aAAa,IAAI,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAKnG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAG3D,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAExE,KAAK,IAAI,GAAG,SAAS,CAAC,gBAAgB,GAAG,mBAAmB,CAAC,EAAE,CAAC;AAgBhE,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,eAAe,EACxB,WAAW,EAAE,aAAa,GACzB,aAAa,CAiEf;AAID,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,eAAe,EACxB,WAAW,EAAE,aAAa,GACzB,aAAa,CAiDf;AAID,wBAAgB,eAAe,CAC7B,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,eAAe,GACxB,aAAa,CAuCf;AAID,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,eAAe,GACxB,aAAa,CAoBf;AAID,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,eAAe,GACxB,aAAa,CAoBf;AAID,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,eAAe,EACxB,WAAW,EAAE,aAAa,GACzB,aAAa,CAcf;AAID,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,eAAe,GACxB,aAAa,CAuBf"}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* AST path extraction, property helpers, and small utility converters.
|
|
3
|
-
*
|
|
4
|
-
* All functions are pure (stateless) – extracted from JavaScriptToCelAnalyzer.
|
|
5
|
-
*/
|
|
6
|
-
import type { ArrowFunctionExpression as ESTreeArrowFunction, Expression as ESTreeExpression, MemberExpression as ESTreeMemberExpression, Node as ESTreeNode, SpreadElement as ESTreeSpreadElement } from 'estree';
|
|
7
|
-
import type { CelExpression } from '../../types/common.js';
|
|
8
|
-
import type { AnalysisContext, ConvertNodeFn } from './shared-types.js';
|
|
9
|
-
/**
|
|
10
|
-
* Recursively extract a dot-separated member path from an AST node.
|
|
11
|
-
* Returns strings like `"deployment.status.replicas"` or `"obj?.[0]"`.
|
|
12
|
-
*/
|
|
13
|
-
export declare function extractMemberPath(node: ESTreeNode): string;
|
|
14
|
-
/**
|
|
15
|
-
* Check whether a node represents a complex expression that cannot be
|
|
16
|
-
* handled as a simple path (e.g. contains a call expression somewhere).
|
|
17
|
-
*/
|
|
18
|
-
export declare function isComplexExpression(node: ESTreeNode): boolean;
|
|
19
|
-
/** Get simple source text from a literal AST node (fallback for computed access). */
|
|
20
|
-
export declare function getSourceText(node: ESTreeNode): string;
|
|
21
|
-
/**
|
|
22
|
-
* Get the property name from an AST node that appears as a MemberExpression
|
|
23
|
-
* property – handles `Identifier`, `PrivateIdentifier`, and string `Literal`.
|
|
24
|
-
*/
|
|
25
|
-
export declare function getPropertyName(prop: ESTreeExpression | {
|
|
26
|
-
type: string;
|
|
27
|
-
name: string;
|
|
28
|
-
}): string;
|
|
29
|
-
/**
|
|
30
|
-
* Extract the parameter name and arrow function body from an ESTree argument
|
|
31
|
-
* that is expected to be an `ArrowFunctionExpression`.
|
|
32
|
-
*/
|
|
33
|
-
export declare function extractArrowPredicate(arg: ESTreeExpression | ESTreeSpreadElement): {
|
|
34
|
-
param: string;
|
|
35
|
-
arrow: ESTreeArrowFunction;
|
|
36
|
-
};
|
|
37
|
-
/**
|
|
38
|
-
* Safely retrieve an argument at a specific index, throwing if missing.
|
|
39
|
-
*/
|
|
40
|
-
export declare function getArg(args: readonly (ESTreeExpression | ESTreeSpreadElement)[], index: number): ESTreeExpression | ESTreeSpreadElement;
|
|
41
|
-
/**
|
|
42
|
-
* Convert computed array access: `array[index]`.
|
|
43
|
-
*/
|
|
44
|
-
export declare function convertArrayAccess(node: ESTreeMemberExpression, context: AnalysisContext, convertNode: ConvertNodeFn): CelExpression;
|
|
45
|
-
/**
|
|
46
|
-
* Convert `.length` when accessed as a call-like reference → `size(obj)`.
|
|
47
|
-
*/
|
|
48
|
-
export declare function convertLengthProperty(object: CelExpression, _context: AnalysisContext): CelExpression;
|
|
49
|
-
//# sourceMappingURL=ast-helpers.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ast-helpers.d.ts","sourceRoot":"","sources":["../../../../src/core/expressions/analysis/ast-helpers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,uBAAuB,IAAI,mBAAmB,EAC9C,UAAU,IAAI,gBAAgB,EAC9B,gBAAgB,IAAI,sBAAsB,EAC1C,IAAI,IAAI,UAAU,EAElB,aAAa,IAAI,mBAAmB,EACrC,MAAM,QAAQ,CAAC;AAIhB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAExE;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CA2B1D;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAI7D;AAED,qFAAqF;AACrF,wBAAgB,aAAa,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAGtD;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,gBAAgB,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAQ/F;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,gBAAgB,GAAG,mBAAmB,GAAG;IAClF,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,mBAAmB,CAAC;CAC5B,CAWA;AAED;;GAEG;AACH,wBAAgB,MAAM,CACpB,IAAI,EAAE,SAAS,CAAC,gBAAgB,GAAG,mBAAmB,CAAC,EAAE,EACzD,KAAK,EAAE,MAAM,GACZ,gBAAgB,GAAG,mBAAmB,CAMxC;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,sBAAsB,EAC5B,OAAO,EAAE,eAAe,EACxB,WAAW,EAAE,aAAa,GACzB,aAAa,CAQf;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,aAAa,EACrB,QAAQ,EAAE,eAAe,GACxB,aAAa,CAMf"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* AST node converters for primitive node types: Literal, Identifier,
|
|
3
|
-
* UnaryExpression, ArrayExpression, and TemplateLiteral.
|
|
4
|
-
*
|
|
5
|
-
* Extracted from JavaScriptToCelAnalyzer. All functions are stateless.
|
|
6
|
-
*/
|
|
7
|
-
import type { ArrayExpression as ESTreeArrayExpression, Identifier as ESTreeIdentifier, Literal as ESTreeLiteral, TemplateLiteral as ESTreeTemplateLiteral, UnaryExpression as ESTreeUnaryExpression } from 'estree';
|
|
8
|
-
import type { CelExpression } from '../../types/common.js';
|
|
9
|
-
import type { AnalysisContext, ConvertNodeFn } from './shared-types.js';
|
|
10
|
-
export declare function convertLiteral(node: ESTreeLiteral, _context: AnalysisContext): CelExpression;
|
|
11
|
-
export declare function convertIdentifier(node: ESTreeIdentifier, context: AnalysisContext): CelExpression;
|
|
12
|
-
export declare function convertUnaryExpression(node: ESTreeUnaryExpression, context: AnalysisContext, convertNode: ConvertNodeFn): CelExpression;
|
|
13
|
-
export declare function convertArrayExpression(node: ESTreeArrayExpression, context: AnalysisContext, convertNode: ConvertNodeFn): CelExpression;
|
|
14
|
-
export declare function convertTemplateLiteral(node: ESTreeTemplateLiteral, context: AnalysisContext, convertNode: ConvertNodeFn): CelExpression;
|
|
15
|
-
//# sourceMappingURL=ast-node-converters.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ast-node-converters.d.ts","sourceRoot":"","sources":["../../../../src/core/expressions/analysis/ast-node-converters.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,eAAe,IAAI,qBAAqB,EACxC,UAAU,IAAI,gBAAgB,EAC9B,OAAO,IAAI,aAAa,EACxB,eAAe,IAAI,qBAAqB,EACxC,eAAe,IAAI,qBAAqB,EACzC,MAAM,QAAQ,CAAC;AAIhB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAIxE,wBAAgB,cAAc,CAAC,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,eAAe,GAAG,aAAa,CAsB5F;AAID,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,eAAe,GAAG,aAAa,CAwBjG;AAID,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,qBAAqB,EAC3B,OAAO,EAAE,eAAe,EACxB,WAAW,EAAE,aAAa,GACzB,aAAa,CAmCf;AAID,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,qBAAqB,EAC3B,OAAO,EAAE,eAAe,EACxB,WAAW,EAAE,aAAa,GACzB,aAAa,CAWf;AAID,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,qBAAqB,EAC3B,OAAO,EAAE,eAAe,EACxB,WAAW,EAAE,aAAa,GACzB,aAAa,CAoBf"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* ESTree AST Type Guards
|
|
3
|
-
*
|
|
4
|
-
* Provides safe property access for ESTree AST nodes without requiring
|
|
5
|
-
* `as unknown as T` double casts. Uses Reflect.get to safely extract
|
|
6
|
-
* properties from narrowed node types.
|
|
7
|
-
*/
|
|
8
|
-
import type { Node as ESTreeNode } from 'estree';
|
|
9
|
-
/**
|
|
10
|
-
* Safely extract the `name` property from an ESTree node.
|
|
11
|
-
* Intended for nodes whose `type` has been checked as `'Identifier'`.
|
|
12
|
-
*/
|
|
13
|
-
export declare function getIdentifierName(node: ESTreeNode | Record<string, unknown>): string;
|
|
14
|
-
//# sourceMappingURL=ast-type-guards.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ast-type-guards.d.ts","sourceRoot":"","sources":["../../../../src/core/expressions/analysis/ast-type-guards.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,IAAI,IAAI,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEjD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAEpF"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Call expression dispatcher and global / Math function converters.
|
|
3
|
-
*
|
|
4
|
-
* Extracted from JavaScriptToCelAnalyzer. All functions are stateless.
|
|
5
|
-
*/
|
|
6
|
-
import type { CallExpression as ESTreeCallExpression, Expression as ESTreeExpression, SpreadElement as ESTreeSpreadElement } from 'estree';
|
|
7
|
-
import type { CelExpression } from '../../types/common.js';
|
|
8
|
-
import type { AnalysisContext, ConvertNodeFn } from './shared-types.js';
|
|
9
|
-
type Args = readonly (ESTreeExpression | ESTreeSpreadElement)[];
|
|
10
|
-
export declare function convertGlobalFunction(functionName: string, args: Args, context: AnalysisContext, convertNode: ConvertNodeFn): CelExpression;
|
|
11
|
-
export declare function convertMathFunction(mathMethod: string, args: Args, context: AnalysisContext, convertNode: ConvertNodeFn): CelExpression;
|
|
12
|
-
/**
|
|
13
|
-
* Route a `CallExpression` AST node to the appropriate converter.
|
|
14
|
-
* Handles: global functions, `Math.*`, and method calls on objects.
|
|
15
|
-
*/
|
|
16
|
-
export declare function convertCallExpression(node: ESTreeCallExpression, context: AnalysisContext, convertNode: ConvertNodeFn): CelExpression;
|
|
17
|
-
export {};
|
|
18
|
-
//# sourceMappingURL=call-expression-converters.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"call-expression-converters.d.ts","sourceRoot":"","sources":["../../../../src/core/expressions/analysis/call-expression-converters.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,cAAc,IAAI,oBAAoB,EACtC,UAAU,IAAI,gBAAgB,EAC9B,aAAa,IAAI,mBAAmB,EACrC,MAAM,QAAQ,CAAC;AAIhB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAW3D,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAmBxE,KAAK,IAAI,GAAG,SAAS,CAAC,gBAAgB,GAAG,mBAAmB,CAAC,EAAE,CAAC;AAIhE,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,eAAe,EACxB,WAAW,EAAE,aAAa,GACzB,aAAa,CAwDf;AAID,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,eAAe,EACxB,WAAW,EAAE,aAAa,GACzB,aAAa,CAuFf;AAID;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,oBAAoB,EAC1B,OAAO,EAAE,eAAe,EACxB,WAAW,EAAE,aAAa,GACzB,aAAa,CA8Ef"}
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* CEL Emitter — AST-to-CEL conversion engine
|
|
3
|
-
*
|
|
4
|
-
* Extracted from analyzer.ts. Contains all methods that convert ESTree AST nodes
|
|
5
|
-
* into CEL expression strings. Each function takes an AST node, an AnalysisContext,
|
|
6
|
-
* and a recursive converter callback, returning a CelExpression.
|
|
7
|
-
*/
|
|
8
|
-
import type { BinaryExpression as ESTreeBinaryExpression, SimpleCallExpression as ESTreeCallExpression, ChainExpression as ESTreeChainExpression, ConditionalExpression as ESTreeConditionalExpression, LogicalExpression as ESTreeLogicalExpression, MemberExpression as ESTreeMemberExpression, Node as ESTreeNode } from 'estree';
|
|
9
|
-
import type { CelExpression } from '../../types/common.js';
|
|
10
|
-
import type { Enhanced } from '../../types/kubernetes.js';
|
|
11
|
-
import type { AnalysisContext } from './shared-types.js';
|
|
12
|
-
/**
|
|
13
|
-
* Callback type for recursive AST node conversion.
|
|
14
|
-
* The cel-emitter functions need this to recurse into sub-nodes.
|
|
15
|
-
*/
|
|
16
|
-
export type ASTNodeConverter = (node: ESTreeNode, context: AnalysisContext) => CelExpression;
|
|
17
|
-
/**
|
|
18
|
-
* Check if an expression string looks like a resource reference
|
|
19
|
-
*/
|
|
20
|
-
export declare function isResourceReference(expression: string): boolean;
|
|
21
|
-
/**
|
|
22
|
-
* Convert an AST node to CEL expression (dispatcher).
|
|
23
|
-
*/
|
|
24
|
-
export declare function convertASTNode(node: ESTreeNode, context: AnalysisContext, converter: ASTNodeConverter): CelExpression;
|
|
25
|
-
/**
|
|
26
|
-
* Convert binary expressions (>, <, ==, !=, &&, ||) with KubernetesRef operand handling
|
|
27
|
-
*/
|
|
28
|
-
export declare function convertBinaryExpression(node: ESTreeBinaryExpression, context: AnalysisContext, converter: ASTNodeConverter): CelExpression;
|
|
29
|
-
/**
|
|
30
|
-
* Convert member expressions (object.property, object['property']) and array access (array[0])
|
|
31
|
-
*/
|
|
32
|
-
export declare function convertMemberExpression(node: ESTreeMemberExpression, context: AnalysisContext, converter: ASTNodeConverter): CelExpression;
|
|
33
|
-
/**
|
|
34
|
-
* Convert conditional expressions (condition ? true : false)
|
|
35
|
-
*/
|
|
36
|
-
export declare function convertConditionalExpression(node: ESTreeConditionalExpression, context: AnalysisContext, converter: ASTNodeConverter): CelExpression;
|
|
37
|
-
/**
|
|
38
|
-
* Convert logical expressions (&&, ||, ??)
|
|
39
|
-
*/
|
|
40
|
-
export declare function convertLogicalExpression(node: ESTreeLogicalExpression, context: AnalysisContext, converter: ASTNodeConverter): CelExpression;
|
|
41
|
-
/**
|
|
42
|
-
* Convert logical OR fallback (value || default) to appropriate CEL conditionals
|
|
43
|
-
*/
|
|
44
|
-
export declare function convertLogicalOrFallback(left: CelExpression, right: CelExpression): CelExpression;
|
|
45
|
-
/**
|
|
46
|
-
* Convert logical AND to direct CEL boolean conjunction when operands are boolean-shaped.
|
|
47
|
-
* Otherwise preserve JavaScript guard/value semantics for expressions like `value && value.field`.
|
|
48
|
-
*/
|
|
49
|
-
export declare function convertLogicalAnd(left: CelExpression, right: CelExpression): CelExpression;
|
|
50
|
-
/**
|
|
51
|
-
* Convert nullish coalescing (value ?? default) to CEL null-checking expressions
|
|
52
|
-
*/
|
|
53
|
-
export declare function convertNullishCoalescing(left: CelExpression, right: CelExpression): CelExpression;
|
|
54
|
-
/**
|
|
55
|
-
* Convert optional chaining expressions (obj?.prop?.field) to Kro conditional CEL
|
|
56
|
-
*/
|
|
57
|
-
export declare function convertOptionalChaining(node: ESTreeChainExpression, context: AnalysisContext, converter: ASTNodeConverter): CelExpression;
|
|
58
|
-
/**
|
|
59
|
-
* Convert optional member expressions (obj?.prop, obj?.prop?.field)
|
|
60
|
-
*/
|
|
61
|
-
export declare function convertOptionalMemberExpression(node: ESTreeMemberExpression, context: AnalysisContext, converter: ASTNodeConverter): CelExpression;
|
|
62
|
-
/**
|
|
63
|
-
* Convert optional call expressions (obj?.method?.())
|
|
64
|
-
*/
|
|
65
|
-
export declare function convertOptionalCallExpression(node: ESTreeCallExpression, context: AnalysisContext, converter: ASTNodeConverter): CelExpression;
|
|
66
|
-
/**
|
|
67
|
-
* Handle complex nested expressions with proper precedence
|
|
68
|
-
*/
|
|
69
|
-
export declare function handleComplexExpression(node: ESTreeNode, context: AnalysisContext, parentOperator: string | undefined, converter: ASTNodeConverter): CelExpression;
|
|
70
|
-
/**
|
|
71
|
-
* Generate CEL expression for resource field reference
|
|
72
|
-
*/
|
|
73
|
-
export declare function getResourceFieldReference(_resource: Enhanced<unknown, unknown>, resourceKey: string, fieldPath: string, context: AnalysisContext): CelExpression;
|
|
74
|
-
/**
|
|
75
|
-
* Generate CEL expression for schema field reference
|
|
76
|
-
*/
|
|
77
|
-
export declare function getSchemaFieldReference(path: string, context: AnalysisContext): CelExpression;
|
|
78
|
-
/**
|
|
79
|
-
* Convert an AST node to CEL expression with source location tracking.
|
|
80
|
-
*/
|
|
81
|
-
export declare function convertASTNodeWithSourceTracking(node: ESTreeNode, context: AnalysisContext, originalExpression: string, sourceLocation: {
|
|
82
|
-
line: number;
|
|
83
|
-
column: number;
|
|
84
|
-
length: number;
|
|
85
|
-
}, converter: ASTNodeConverter): CelExpression;
|
|
86
|
-
//# sourceMappingURL=cel-emitter.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cel-emitter.d.ts","sourceRoot":"","sources":["../../../../src/core/expressions/analysis/cel-emitter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Expression Classifier — Expression type dispatch and special case handling
|
|
3
|
-
*
|
|
4
|
-
* Extracted from analyzer.ts. Contains methods that classify incoming expressions
|
|
5
|
-
* (string, KubernetesRef, object, function, template literal) and route them to
|
|
6
|
-
* the appropriate conversion path. Also contains special case handlers for
|
|
7
|
-
* optional chaining and nullish coalescing fallback paths.
|
|
8
|
-
*/
|
|
9
|
-
import type { Node as ESTreeNode, ReturnStatement as ESTreeReturnStatement } from 'estree';
|
|
10
|
-
import type { KubernetesRef } from '../../types/common.js';
|
|
11
|
-
import type { Enhanced } from '../../types/kubernetes.js';
|
|
12
|
-
import type { ResourceValidationResult } from '../validation/resource-validation.js';
|
|
13
|
-
import type { AnalysisContext, CelConversionResult } from './shared-types.js';
|
|
14
|
-
/**
|
|
15
|
-
* Check if a value is a static literal that doesn't need conversion.
|
|
16
|
-
* Static values (no KubernetesRef objects) should be preserved as-is for performance.
|
|
17
|
-
*/
|
|
18
|
-
export declare function isStaticValue(value: unknown): boolean;
|
|
19
|
-
/**
|
|
20
|
-
* Create a result for static values that don't require conversion.
|
|
21
|
-
*/
|
|
22
|
-
export declare function createStaticValueResult(_value: unknown): CelConversionResult;
|
|
23
|
-
/**
|
|
24
|
-
* Analyze expressions that may contain KubernetesRef objects from magic proxy system.
|
|
25
|
-
* This is the key method that detects when JavaScript expressions contain KubernetesRef objects.
|
|
26
|
-
*
|
|
27
|
-
* @param analyzeExpressionFn — callback for delegating string expressions to the main analyzer
|
|
28
|
-
*/
|
|
29
|
-
export declare function analyzeExpressionWithRefs(expression: unknown, context: AnalysisContext, analyzeExpressionFn: (expression: unknown, context: AnalysisContext) => CelConversionResult): CelConversionResult;
|
|
30
|
-
/**
|
|
31
|
-
* Analyze a KubernetesRef object directly.
|
|
32
|
-
*/
|
|
33
|
-
export declare function analyzeKubernetesRefObject(ref: KubernetesRef<unknown>, context: AnalysisContext): CelConversionResult;
|
|
34
|
-
/**
|
|
35
|
-
* Analyze object expression by examining its structure.
|
|
36
|
-
*/
|
|
37
|
-
export declare function analyzeObjectExpression(obj: unknown, context: AnalysisContext): CelConversionResult;
|
|
38
|
-
/**
|
|
39
|
-
* Analyze primitive expression (no KubernetesRef objects).
|
|
40
|
-
*/
|
|
41
|
-
export declare function analyzePrimitiveExpression(_value: unknown, _context: AnalysisContext): CelConversionResult;
|
|
42
|
-
/**
|
|
43
|
-
* Analyze a function for JavaScript expressions containing KubernetesRef objects.
|
|
44
|
-
*/
|
|
45
|
-
export declare function analyzeFunction(fn: (...args: unknown[]) => unknown): CelConversionResult;
|
|
46
|
-
/**
|
|
47
|
-
* Find return statement in AST.
|
|
48
|
-
*/
|
|
49
|
-
export declare function findReturnStatement(ast: ESTreeNode): ESTreeReturnStatement | null;
|
|
50
|
-
/**
|
|
51
|
-
* Check if a value is a template literal expression.
|
|
52
|
-
*/
|
|
53
|
-
export declare function isTemplateLiteral(value: unknown): boolean;
|
|
54
|
-
/**
|
|
55
|
-
* Analyze template literal expressions containing KubernetesRef objects.
|
|
56
|
-
*/
|
|
57
|
-
export declare function analyzeTemplateLiteral(expression: unknown, context: AnalysisContext): CelConversionResult;
|
|
58
|
-
/**
|
|
59
|
-
* Analyze complex values (objects/arrays) that may contain KubernetesRef objects.
|
|
60
|
-
*/
|
|
61
|
-
export declare function analyzeComplexValue(value: unknown, context: AnalysisContext): CelConversionResult;
|
|
62
|
-
/**
|
|
63
|
-
* Convert a single KubernetesRef to a conversion result.
|
|
64
|
-
*/
|
|
65
|
-
export declare function convertKubernetesRefToResult(ref: KubernetesRef<unknown>, context: AnalysisContext, typeValidator?: {
|
|
66
|
-
validateKubernetesRef: (ref: KubernetesRef<unknown>, availableReferences: Record<string, Enhanced<unknown, unknown>>, schemaProxy?: import('../../types/serialization.js').SchemaProxy<Record<string, unknown>, Record<string, unknown>>) => {
|
|
67
|
-
valid: boolean;
|
|
68
|
-
errors: {
|
|
69
|
-
message: string;
|
|
70
|
-
}[];
|
|
71
|
-
};
|
|
72
|
-
}): CelConversionResult;
|
|
73
|
-
/**
|
|
74
|
-
* Handle special cases for expressions that can't be parsed normally.
|
|
75
|
-
*/
|
|
76
|
-
export declare function handleSpecialCases(expression: string, context: AnalysisContext, validateResourceReferencesFn?: (refs: KubernetesRef<unknown>[], availableResources: Record<string, Enhanced<unknown, unknown>>, schemaProxy?: import('../../types/serialization.js').SchemaProxy<Record<string, unknown>, Record<string, unknown>>, validationContext?: import('../validation/resource-validation.js').ValidationContext) => ResourceValidationResult[]): CelConversionResult | null;
|
|
77
|
-
//# sourceMappingURL=expression-classifier.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"expression-classifier.d.ts","sourceRoot":"","sources":["../../../../src/core/expressions/analysis/expression-classifier.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import type { CelExpression, KubernetesRef } from '../../types/common.js';
|
|
2
|
-
export interface CelExpressionSourceLocation {
|
|
3
|
-
readonly file?: string;
|
|
4
|
-
readonly line?: number;
|
|
5
|
-
readonly column?: number;
|
|
6
|
-
}
|
|
7
|
-
export interface CelExpressionAnalysisMetadata {
|
|
8
|
-
readonly references: readonly KubernetesRef<unknown>[];
|
|
9
|
-
readonly sourceLocation?: CelExpressionSourceLocation;
|
|
10
|
-
}
|
|
11
|
-
/** Attach analyzer-owned reference and source data without changing serialized CEL objects. */
|
|
12
|
-
export declare function setCelExpressionAnalysis(expression: CelExpression, metadata: CelExpressionAnalysisMetadata): void;
|
|
13
|
-
/** Read analyzer-owned metadata while the authoring expression remains in memory. */
|
|
14
|
-
export declare function getCelExpressionAnalysis(expression: object): CelExpressionAnalysisMetadata | undefined;
|
|
15
|
-
//# sourceMappingURL=expression-metadata.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"expression-metadata.d.ts","sourceRoot":"","sources":["../../../../src/core/expressions/analysis/expression-metadata.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE1E,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,UAAU,EAAE,SAAS,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;IACvD,QAAQ,CAAC,cAAc,CAAC,EAAE,2BAA2B,CAAC;CACvD;AAID,+FAA+F;AAC/F,wBAAgB,wBAAwB,CACtC,UAAU,EAAE,aAAa,EACzB,QAAQ,EAAE,6BAA6B,GACtC,IAAI,CAEN;AAED,qFAAqF;AACrF,wBAAgB,wBAAwB,CACtC,UAAU,EAAE,MAAM,GACjB,6BAA6B,GAAG,SAAS,CAE3C"}
|