@k8ts/instruments 0.11.3 → 0.12.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.
- package/dist/core/graph/entity.d.ts +9 -22
- package/dist/core/graph/entity.d.ts.map +1 -1
- package/dist/core/graph/entity.js +11 -19
- package/dist/core/graph/entity.js.map +1 -1
- package/dist/core/graph/error.d.ts +7 -0
- package/dist/core/graph/error.d.ts.map +1 -0
- package/dist/core/graph/error.js +12 -0
- package/dist/core/graph/error.js.map +1 -0
- package/dist/core/graph/index.d.ts +2 -2
- package/dist/core/graph/index.d.ts.map +1 -1
- package/dist/core/graph/index.js +4 -4
- package/dist/core/graph/index.js.map +1 -1
- package/dist/core/graph/origin/dummy.d.ts +13 -0
- package/dist/core/graph/origin/dummy.d.ts.map +1 -0
- package/dist/core/graph/origin/dummy.js +25 -0
- package/dist/core/graph/origin/dummy.js.map +1 -0
- package/dist/core/graph/origin/events.d.ts +19 -26
- package/dist/core/graph/origin/events.d.ts.map +1 -1
- package/dist/core/graph/origin/events.js +1 -30
- package/dist/core/graph/origin/events.js.map +1 -1
- package/dist/core/graph/origin/exporter.d.ts +10 -10
- package/dist/core/graph/origin/exporter.d.ts.map +1 -1
- package/dist/core/graph/origin/exporter.js +20 -18
- package/dist/core/graph/origin/exporter.js.map +1 -1
- package/dist/core/graph/origin/index.d.ts +5 -3
- package/dist/core/graph/origin/index.d.ts.map +1 -1
- package/dist/core/graph/origin/index.js +5 -3
- package/dist/core/graph/origin/index.js.map +1 -1
- package/dist/core/graph/origin/kind-map/index.d.ts +16 -17
- package/dist/core/graph/origin/kind-map/index.d.ts.map +1 -1
- package/dist/core/graph/origin/kind-map/index.js +35 -34
- package/dist/core/graph/origin/kind-map/index.js.map +1 -1
- package/dist/core/graph/origin/origin.d.ts +37 -0
- package/dist/core/graph/origin/origin.d.ts.map +1 -0
- package/dist/core/graph/origin/{entity.js → origin.js} +67 -58
- package/dist/core/graph/origin/origin.js.map +1 -0
- package/dist/core/graph/origin/props.d.ts +9 -0
- package/dist/core/graph/origin/props.d.ts.map +1 -0
- package/dist/core/graph/origin/props.js.map +1 -0
- package/dist/core/graph/origin/template.d.ts +15 -0
- package/dist/core/graph/origin/template.d.ts.map +1 -0
- package/dist/core/graph/origin/template.js +35 -0
- package/dist/core/graph/origin/template.js.map +1 -0
- package/dist/core/graph/origin/tracker.d.ts +7 -9
- package/dist/core/graph/origin/tracker.d.ts.map +1 -1
- package/dist/core/graph/origin/tracker.js +4 -15
- package/dist/core/graph/origin/tracker.js.map +1 -1
- package/dist/core/graph/origin/vertex.d.ts +21 -0
- package/dist/core/graph/origin/vertex.d.ts.map +1 -0
- package/dist/core/graph/origin/{node.js → vertex.js} +27 -17
- package/dist/core/graph/origin/vertex.js.map +1 -0
- package/dist/core/graph/relation.d.ts +4 -4
- package/dist/core/graph/relation.d.ts.map +1 -1
- package/dist/core/graph/relation.js +4 -5
- package/dist/core/graph/relation.js.map +1 -1
- package/dist/core/graph/resource/creation-options.d.ts +22 -0
- package/dist/core/graph/resource/creation-options.d.ts.map +1 -0
- package/dist/core/graph/resource/creation-options.js +3 -0
- package/dist/core/graph/resource/creation-options.js.map +1 -0
- package/dist/core/graph/resource/dummy/base.d.ts +9 -0
- package/dist/core/graph/resource/dummy/base.d.ts.map +1 -0
- package/dist/core/graph/resource/dummy/base.js +15 -0
- package/dist/core/graph/resource/dummy/base.js.map +1 -0
- package/dist/core/graph/resource/dummy/index.d.ts.map +1 -0
- package/dist/core/graph/resource/dummy/index.js.map +1 -0
- package/dist/core/graph/resource/forward/error.d.ts +5 -0
- package/dist/core/graph/resource/forward/error.d.ts.map +1 -0
- package/dist/core/graph/resource/forward/error.js +12 -0
- package/dist/core/graph/resource/forward/error.js.map +1 -0
- package/dist/core/graph/resource/forward/exports.d.ts +46 -0
- package/dist/core/graph/resource/forward/exports.d.ts.map +1 -0
- package/dist/core/graph/resource/{reference/fw-ref-exports.js → forward/exports.js} +32 -31
- package/dist/core/graph/resource/forward/exports.js.map +1 -0
- package/dist/core/graph/resource/forward/index.d.ts +3 -0
- package/dist/core/graph/resource/forward/index.d.ts.map +1 -0
- package/dist/core/graph/resource/forward/index.js +8 -0
- package/dist/core/graph/resource/forward/index.js.map +1 -0
- package/dist/core/graph/resource/{reference/fw-ref.d.ts → forward/ref.d.ts} +20 -20
- package/dist/core/graph/resource/forward/ref.d.ts.map +1 -0
- package/dist/core/graph/resource/{reference/fw-ref.js → forward/ref.js} +56 -27
- package/dist/core/graph/resource/forward/ref.js.map +1 -0
- package/dist/core/graph/resource/gvk/0-base.d.ts +17 -0
- package/dist/core/graph/resource/gvk/0-base.d.ts.map +1 -0
- package/dist/core/graph/resource/gvk/0-base.js +35 -0
- package/dist/core/graph/resource/gvk/0-base.js.map +1 -0
- package/dist/core/graph/resource/gvk/1-group.d.ts +12 -0
- package/dist/core/graph/resource/gvk/1-group.d.ts.map +1 -0
- package/dist/core/graph/resource/gvk/1-group.js +26 -0
- package/dist/core/graph/resource/gvk/1-group.js.map +1 -0
- package/dist/core/graph/resource/gvk/2=version.d.ts +11 -0
- package/dist/core/graph/resource/gvk/2=version.d.ts.map +1 -0
- package/dist/core/graph/resource/gvk/2=version.js +23 -0
- package/dist/core/graph/resource/gvk/2=version.js.map +1 -0
- package/dist/core/graph/resource/gvk/3-gvk.d.ts +16 -0
- package/dist/core/graph/resource/gvk/3-gvk.d.ts.map +1 -0
- package/dist/core/graph/resource/gvk/3-gvk.js +50 -0
- package/dist/core/graph/resource/gvk/3-gvk.js.map +1 -0
- package/dist/core/graph/resource/gvk/4-subkind.d.ts +8 -0
- package/dist/core/graph/resource/gvk/4-subkind.d.ts.map +1 -0
- package/dist/core/graph/resource/gvk/4-subkind.js +19 -0
- package/dist/core/graph/resource/gvk/4-subkind.js.map +1 -0
- package/dist/core/graph/resource/gvk/index.d.ts +6 -0
- package/dist/core/graph/resource/gvk/index.d.ts.map +1 -0
- package/dist/core/graph/resource/gvk/index.js +22 -0
- package/dist/core/graph/resource/gvk/index.js.map +1 -0
- package/dist/core/graph/resource/gvk/strings.d.ts +4 -0
- package/dist/core/graph/resource/gvk/strings.d.ts.map +1 -0
- package/dist/core/graph/resource/{reference/refable.js → gvk/strings.js} +1 -1
- package/dist/core/graph/resource/gvk/strings.js.map +1 -0
- package/dist/core/graph/resource/{ref-key/ref-key.d.ts → ident/ident.d.ts} +25 -36
- package/dist/core/graph/resource/ident/ident.d.ts.map +1 -0
- package/dist/core/graph/resource/{ref-key/ref-key.js → ident/ident.js} +38 -49
- package/dist/core/graph/resource/ident/ident.js.map +1 -0
- package/dist/core/graph/resource/ident/index.d.ts +2 -0
- package/dist/core/graph/resource/ident/index.d.ts.map +1 -0
- package/dist/core/graph/resource/{ref-key → ident}/index.js +1 -1
- package/dist/core/graph/resource/ident/index.js.map +1 -0
- package/dist/core/graph/resource/ident/parsing.d.ts +16 -0
- package/dist/core/graph/resource/ident/parsing.d.ts.map +1 -0
- package/dist/core/graph/resource/ident/parsing.js +36 -0
- package/dist/core/graph/resource/ident/parsing.js.map +1 -0
- package/dist/core/graph/resource/index.d.ts +10 -9
- package/dist/core/graph/resource/index.d.ts.map +1 -1
- package/dist/core/graph/resource/index.js +10 -9
- package/dist/core/graph/resource/index.js.map +1 -1
- package/dist/core/graph/resource/k8s-resource.d.ts +18 -0
- package/dist/core/graph/resource/k8s-resource.d.ts.map +1 -0
- package/dist/core/graph/resource/k8s-resource.js +85 -0
- package/dist/core/graph/resource/k8s-resource.js.map +1 -0
- package/dist/core/graph/resource/part.d.ts +12 -0
- package/dist/core/graph/resource/part.d.ts.map +1 -0
- package/dist/core/graph/resource/part.js +20 -0
- package/dist/core/graph/resource/part.js.map +1 -0
- package/dist/core/graph/resource/props.d.ts +9 -0
- package/dist/core/graph/resource/props.d.ts.map +1 -0
- package/dist/core/graph/resource/{field.js → props.js} +1 -1
- package/dist/core/graph/resource/props.js.map +1 -0
- package/dist/core/graph/resource/ref.d.ts +25 -0
- package/dist/core/graph/resource/ref.d.ts.map +1 -0
- package/dist/core/graph/resource/ref.js +3 -0
- package/dist/core/graph/resource/ref.js.map +1 -0
- package/dist/core/graph/resource/resource.d.ts +23 -0
- package/dist/core/graph/resource/resource.d.ts.map +1 -0
- package/dist/core/graph/resource/{entity.js → resource.js} +40 -37
- package/dist/core/graph/resource/resource.js.map +1 -0
- package/dist/core/graph/resource/vertex.d.ts +31 -0
- package/dist/core/graph/resource/vertex.d.ts.map +1 -0
- package/dist/core/graph/resource/{node.js → vertex.js} +36 -34
- package/dist/core/graph/resource/vertex.js.map +1 -0
- package/dist/core/graph/{node.d.ts → vertex.d.ts} +12 -14
- package/dist/core/graph/vertex.d.ts.map +1 -0
- package/dist/core/graph/{node.js → vertex.js} +18 -23
- package/dist/core/graph/vertex.js.map +1 -0
- package/dist/core/manifest/index.d.ts +7 -17
- package/dist/core/manifest/index.d.ts.map +1 -1
- package/dist/core/manifest/index.js +1 -1
- package/dist/core/manifest/index.js.map +1 -1
- package/dist/core/tracing/embedder.d.ts +4 -0
- package/dist/core/tracing/embedder.d.ts.map +1 -0
- package/dist/core/tracing/{traced.js → embedder.js} +2 -2
- package/dist/core/tracing/embedder.js.map +1 -0
- package/dist/core/tracing/git.d.ts +7 -7
- package/dist/core/tracing/git.d.ts.map +1 -1
- package/dist/core/tracing/git.js +7 -7
- package/dist/core/tracing/git.js.map +1 -1
- package/dist/core/tracing/index.d.ts +2 -2
- package/dist/core/tracing/index.d.ts.map +1 -1
- package/dist/core/tracing/index.js +2 -2
- package/dist/core/tracing/index.js.map +1 -1
- package/dist/core/tracing/source.d.ts +11 -0
- package/dist/core/tracing/source.d.ts.map +1 -0
- package/dist/core/tracing/{trace.js → source.js} +6 -6
- package/dist/core/tracing/source.js.map +1 -0
- package/dist/expressions/data-sources/env-var.d.ts +5 -25
- package/dist/expressions/data-sources/env-var.d.ts.map +1 -1
- package/dist/expressions/data-sources/env-var.js +58 -34
- package/dist/expressions/data-sources/env-var.js.map +1 -1
- package/dist/expressions/data-sources/error.d.ts +8 -0
- package/dist/expressions/data-sources/error.d.ts.map +1 -0
- package/dist/expressions/data-sources/error.js +13 -0
- package/dist/expressions/data-sources/error.js.map +1 -0
- package/dist/expressions/data-sources/index.d.ts +1 -1
- package/dist/expressions/data-sources/index.d.ts.map +1 -1
- package/dist/expressions/data-sources/index.js +1 -1
- package/dist/expressions/data-sources/index.js.map +1 -1
- package/dist/expressions/data-sources/interface.d.ts +9 -26
- package/dist/expressions/data-sources/interface.d.ts.map +1 -1
- package/dist/expressions/data-sources/interface.js +4 -0
- package/dist/expressions/data-sources/interface.js.map +1 -1
- package/dist/expressions/data-sources/js-object.d.ts +7 -0
- package/dist/expressions/data-sources/js-object.d.ts.map +1 -0
- package/dist/expressions/data-sources/js-object.js +98 -0
- package/dist/expressions/data-sources/js-object.js.map +1 -0
- package/dist/expressions/data-sources/local-file.d.ts +7 -28
- package/dist/expressions/data-sources/local-file.d.ts.map +1 -1
- package/dist/expressions/data-sources/local-file.js +139 -73
- package/dist/expressions/data-sources/local-file.js.map +1 -1
- package/dist/expressions/network/error.d.ts +7 -0
- package/dist/expressions/network/error.d.ts.map +1 -0
- package/dist/expressions/network/error.js +12 -0
- package/dist/expressions/network/error.js.map +1 -0
- package/dist/expressions/network/index.d.ts +5 -1
- package/dist/expressions/network/index.d.ts.map +1 -1
- package/dist/expressions/network/index.js +5 -1
- package/dist/expressions/network/index.js.map +1 -1
- package/dist/expressions/network/ip/ip4.d.ts +8 -0
- package/dist/expressions/network/ip/ip4.d.ts.map +1 -0
- package/dist/expressions/network/ip/ip4.js +14 -0
- package/dist/expressions/network/ip/ip4.js.map +1 -0
- package/dist/expressions/network/ip/subnet4.d.ts +8 -0
- package/dist/expressions/network/ip/subnet4.d.ts.map +1 -0
- package/dist/expressions/network/ip/{index.js → subnet4.js} +2 -11
- package/dist/expressions/network/ip/subnet4.js.map +1 -0
- package/dist/expressions/network/ports/entry.d.ts +5 -0
- package/dist/expressions/network/ports/entry.d.ts.map +1 -0
- package/dist/expressions/network/ports/entry.js +36 -0
- package/dist/expressions/network/ports/entry.js.map +1 -0
- package/dist/expressions/network/ports/{map.d.ts → mapping.d.ts} +15 -17
- package/dist/expressions/network/ports/mapping.d.ts.map +1 -0
- package/dist/expressions/network/ports/mapping.js +95 -0
- package/dist/expressions/network/ports/mapping.js.map +1 -0
- package/dist/expressions/network/ports/parser.d.ts +3 -0
- package/dist/expressions/network/ports/parser.d.ts.map +1 -0
- package/dist/expressions/network/ports/{tools/parse.js → parser.js} +2 -2
- package/dist/expressions/network/ports/parser.js.map +1 -0
- package/dist/expressions/network/ports/provider.d.ts +72 -0
- package/dist/expressions/network/ports/provider.d.ts.map +1 -0
- package/dist/expressions/network/ports/provider.js +143 -0
- package/dist/expressions/network/ports/provider.js.map +1 -0
- package/dist/expressions/network/ports/types.d.ts +22 -9
- package/dist/expressions/network/ports/types.d.ts.map +1 -1
- package/dist/expressions/quantities/error.d.ts +7 -0
- package/dist/expressions/quantities/error.d.ts.map +1 -0
- package/dist/expressions/quantities/error.js +12 -0
- package/dist/expressions/quantities/error.js.map +1 -0
- package/dist/expressions/quantities/index.d.ts +10 -2
- package/dist/expressions/quantities/index.d.ts.map +1 -1
- package/dist/expressions/quantities/index.js +10 -2
- package/dist/expressions/quantities/index.js.map +1 -1
- package/dist/expressions/quantities/reqs/objects.d.ts +18 -0
- package/dist/expressions/quantities/reqs/objects.d.ts.map +1 -0
- package/dist/expressions/quantities/reqs/objects.js +81 -0
- package/dist/expressions/quantities/reqs/objects.js.map +1 -0
- package/dist/expressions/quantities/reqs/parser.d.ts +4 -0
- package/dist/expressions/quantities/reqs/parser.d.ts.map +1 -0
- package/dist/expressions/quantities/{reqlem → reqs}/parser.js +2 -2
- package/dist/expressions/quantities/reqs/parser.js.map +1 -0
- package/dist/expressions/quantities/reqs/types.d.ts +28 -0
- package/dist/expressions/quantities/reqs/types.d.ts.map +1 -0
- package/dist/expressions/quantities/reqs/types.js.map +1 -0
- package/dist/expressions/quantities/reqs/values.d.ts +17 -0
- package/dist/expressions/quantities/reqs/values.d.ts.map +1 -0
- package/dist/expressions/quantities/reqs/values.js +42 -0
- package/dist/expressions/quantities/reqs/values.js.map +1 -0
- package/dist/expressions/quantities/units/{units.d.ts → built-in.d.ts} +6 -8
- package/dist/expressions/quantities/units/built-in.d.ts.map +1 -0
- package/dist/expressions/quantities/units/built-in.js +44 -0
- package/dist/expressions/quantities/units/built-in.js.map +1 -0
- package/dist/expressions/quantities/units/dimension.d.ts +20 -0
- package/dist/expressions/quantities/units/dimension.d.ts.map +1 -0
- package/dist/expressions/quantities/units/dimension.js +33 -0
- package/dist/expressions/quantities/units/dimension.js.map +1 -0
- package/dist/expressions/quantities/units/parser.d.ts +6 -0
- package/dist/expressions/quantities/units/parser.d.ts.map +1 -0
- package/dist/expressions/quantities/units/parser.js +11 -0
- package/dist/expressions/quantities/units/parser.js.map +1 -0
- package/dist/expressions/quantities/units/types.d.ts +2 -0
- package/dist/expressions/quantities/units/types.d.ts.map +1 -0
- package/dist/expressions/quantities/units/types.js +3 -0
- package/dist/expressions/quantities/units/types.js.map +1 -0
- package/dist/expressions/quantities/units/validator.d.ts +4 -0
- package/dist/expressions/quantities/units/validator.d.ts.map +1 -0
- package/dist/expressions/quantities/units/validator.js +16 -0
- package/dist/expressions/quantities/units/validator.js.map +1 -0
- package/dist/expressions/quantities/units/value.d.ts +10 -0
- package/dist/expressions/quantities/units/value.d.ts.map +1 -0
- package/dist/expressions/quantities/units/value.js +27 -0
- package/dist/expressions/quantities/units/value.js.map +1 -0
- package/dist/expressions/quantities/util.d.ts +11 -0
- package/dist/expressions/quantities/util.d.ts.map +1 -0
- package/dist/expressions/quantities/util.js +28 -0
- package/dist/expressions/quantities/util.js.map +1 -0
- package/dist/expressions/workload/cmd/cli-term.d.ts +7 -7
- package/dist/expressions/workload/cmd/cli-term.d.ts.map +1 -1
- package/dist/expressions/workload/cmd/cli-term.js +16 -15
- package/dist/expressions/workload/cmd/cli-term.js.map +1 -1
- package/dist/expressions/workload/cmd/cmd-line.d.ts +15 -0
- package/dist/expressions/workload/cmd/cmd-line.d.ts.map +1 -0
- package/dist/expressions/workload/cmd/{cli-command.js → cmd-line.js} +23 -27
- package/dist/expressions/workload/cmd/cmd-line.js.map +1 -0
- package/dist/expressions/workload/cmd/types.d.ts +4 -4
- package/dist/expressions/workload/cmd/types.d.ts.map +1 -1
- package/dist/expressions/workload/cronjob/parse-type.d.ts +30 -0
- package/dist/expressions/workload/cronjob/parse-type.d.ts.map +1 -0
- package/dist/{core/graph/resource/external/features.js → expressions/workload/cronjob/parse-type.js} +1 -1
- package/dist/expressions/workload/cronjob/parse-type.js.map +1 -0
- package/dist/expressions/workload/cronjob/shorthand.d.ts +13 -0
- package/dist/expressions/workload/cronjob/shorthand.d.ts.map +1 -0
- package/dist/expressions/workload/cronjob/shorthand.js +39 -0
- package/dist/expressions/workload/cronjob/shorthand.js.map +1 -0
- package/dist/expressions/workload/cronjob/stanza.d.ts +15 -0
- package/dist/expressions/workload/cronjob/stanza.d.ts.map +1 -0
- package/dist/expressions/workload/cronjob/{index.js → stanza.js} +29 -62
- package/dist/expressions/workload/cronjob/stanza.js.map +1 -0
- package/dist/expressions/workload/cronjob/types.d.ts +3 -1
- package/dist/expressions/workload/cronjob/types.d.ts.map +1 -1
- package/dist/expressions/workload/error.d.ts +7 -0
- package/dist/expressions/workload/error.d.ts.map +1 -0
- package/dist/expressions/workload/error.js +12 -0
- package/dist/expressions/workload/error.js.map +1 -0
- package/dist/expressions/workload/image/1-host.d.ts +11 -0
- package/dist/expressions/workload/image/1-host.d.ts.map +1 -0
- package/dist/expressions/workload/image/1-host.js +27 -0
- package/dist/expressions/workload/image/1-host.js.map +1 -0
- package/dist/expressions/workload/image/2-namespace.d.ts +11 -0
- package/dist/expressions/workload/image/2-namespace.d.ts.map +1 -0
- package/dist/expressions/workload/image/2-namespace.js +90 -0
- package/dist/expressions/workload/image/2-namespace.js.map +1 -0
- package/dist/expressions/workload/image/3-repository.d.ts +11 -0
- package/dist/expressions/workload/image/3-repository.d.ts.map +1 -0
- package/dist/expressions/workload/image/3-repository.js +38 -0
- package/dist/expressions/workload/image/3-repository.js.map +1 -0
- package/dist/expressions/workload/image/4-image.d.ts +22 -0
- package/dist/expressions/workload/image/4-image.d.ts.map +1 -0
- package/dist/expressions/workload/image/4-image.js +43 -0
- package/dist/expressions/workload/image/4-image.js.map +1 -0
- package/dist/expressions/workload/image/index.d.ts +4 -1
- package/dist/expressions/workload/image/index.d.ts.map +1 -1
- package/dist/expressions/workload/image/index.js +3 -6
- package/dist/expressions/workload/image/index.js.map +1 -1
- package/dist/expressions/workload/image/types.d.ts +2 -0
- package/dist/expressions/workload/image/types.d.ts.map +1 -0
- package/dist/expressions/workload/image/types.js +3 -0
- package/dist/expressions/workload/image/types.js.map +1 -0
- package/dist/expressions/workload/image/util.d.ts +2 -0
- package/dist/expressions/workload/image/util.d.ts.map +1 -0
- package/dist/expressions/workload/image/util.js +3 -0
- package/dist/expressions/workload/image/util.js.map +1 -0
- package/dist/expressions/workload/index.d.ts +9 -3
- package/dist/expressions/workload/index.d.ts.map +1 -1
- package/dist/expressions/workload/index.js +9 -3
- package/dist/expressions/workload/index.js.map +1 -1
- package/dist/expressions/workload/owner/group.d.ts +10 -0
- package/dist/expressions/workload/owner/group.d.ts.map +1 -0
- package/dist/expressions/workload/owner/group.js +27 -0
- package/dist/expressions/workload/owner/group.js.map +1 -0
- package/dist/expressions/workload/owner/index.d.ts +4 -0
- package/dist/expressions/workload/owner/index.d.ts.map +1 -0
- package/dist/expressions/workload/owner/index.js +8 -0
- package/dist/expressions/workload/owner/index.js.map +1 -0
- package/dist/expressions/workload/owner/ownership.d.ts +9 -0
- package/dist/expressions/workload/owner/ownership.d.ts.map +1 -0
- package/dist/expressions/workload/owner/ownership.js +22 -0
- package/dist/expressions/workload/owner/ownership.js.map +1 -0
- package/dist/expressions/workload/owner/user.d.ts +18 -0
- package/dist/expressions/workload/owner/user.d.ts.map +1 -0
- package/dist/expressions/workload/owner/user.js +32 -0
- package/dist/expressions/workload/owner/user.js.map +1 -0
- package/dist/utils/index.d.ts +3 -3
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +3 -3
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/{displayers → mixin/display}/displayers.d.ts +9 -9
- package/dist/utils/mixin/display/displayers.d.ts.map +1 -0
- package/dist/utils/{displayers → mixin/display}/displayers.js +13 -7
- package/dist/utils/mixin/display/displayers.js.map +1 -0
- package/dist/utils/mixin/display/index.d.ts.map +1 -0
- package/dist/utils/mixin/display/index.js.map +1 -0
- package/dist/utils/mixin/embedder/base.d.ts.map +1 -0
- package/dist/utils/{embedder → mixin/embedder}/base.js +3 -2
- package/dist/utils/mixin/embedder/base.js.map +1 -0
- package/dist/utils/mixin/embedder/index.d.ts +2 -0
- package/dist/utils/mixin/embedder/index.d.ts.map +1 -0
- package/dist/{core/graph/resource/external → utils/mixin/embedder}/index.js +0 -2
- package/dist/utils/mixin/embedder/index.js.map +1 -0
- package/dist/utils/mixin/error.d.ts +5 -0
- package/dist/utils/mixin/error.d.ts.map +1 -0
- package/dist/{expressions/network/ports → utils/mixin}/error.js +4 -5
- package/dist/utils/mixin/error.js.map +1 -0
- package/dist/utils/mixin/index.d.ts +3 -0
- package/dist/utils/mixin/index.d.ts.map +1 -0
- package/dist/{expressions/quantities/reqlem → utils/mixin}/index.js +2 -2
- package/dist/utils/mixin/index.js.map +1 -0
- package/dist/utils/phrase-renderer/index.d.ts +4 -0
- package/dist/utils/phrase-renderer/index.d.ts.map +1 -0
- package/dist/utils/phrase-renderer/index.js +43 -0
- package/dist/utils/phrase-renderer/index.js.map +1 -0
- package/dist/utils/{_string/pretty-objects.d.ts → phrase-renderer/phrases.d.ts} +1 -1
- package/dist/utils/phrase-renderer/phrases.d.ts.map +1 -0
- package/dist/utils/{_string/pretty-objects.js → phrase-renderer/phrases.js} +7 -7
- package/dist/utils/phrase-renderer/phrases.js.map +1 -0
- package/dist/utils/{_string/post-processor.d.ts → phrase-renderer/renderer.d.ts} +2 -2
- package/dist/utils/phrase-renderer/renderer.d.ts.map +1 -0
- package/dist/utils/{_string/post-processor.js → phrase-renderer/renderer.js} +4 -4
- package/dist/utils/phrase-renderer/renderer.js.map +1 -0
- package/dist/utils/types.d.ts +2 -0
- package/dist/utils/types.d.ts.map +1 -0
- package/dist/utils/types.js +3 -0
- package/dist/utils/types.js.map +1 -0
- package/dist/utils/util.d.ts +6 -0
- package/dist/utils/util.d.ts.map +1 -0
- package/dist/utils/util.js +23 -0
- package/dist/utils/util.js.map +1 -0
- package/package.json +6 -4
- package/src/core/graph/entity.ts +22 -38
- package/src/core/graph/error.ts +7 -0
- package/src/core/graph/index.ts +2 -2
- package/src/core/graph/origin/dummy.ts +23 -0
- package/src/core/graph/origin/events.ts +21 -60
- package/src/core/graph/origin/exporter.ts +26 -24
- package/src/core/graph/origin/index.ts +5 -3
- package/src/core/graph/origin/kind-map/index.ts +57 -57
- package/src/core/graph/origin/origin.ts +144 -0
- package/src/core/graph/origin/props.ts +11 -0
- package/src/core/graph/origin/template.ts +36 -0
- package/src/core/graph/origin/tracker.ts +15 -26
- package/src/core/graph/origin/{node.ts → vertex.ts} +25 -22
- package/src/core/graph/relation.ts +8 -10
- package/src/core/graph/resource/creation-options.ts +27 -0
- package/src/core/graph/resource/dummy/base.ts +13 -0
- package/src/core/graph/resource/forward/error.ts +7 -0
- package/src/core/graph/resource/{reference/fw-ref-exports.ts → forward/exports.ts} +48 -43
- package/src/core/graph/resource/forward/index.ts +2 -0
- package/src/core/graph/resource/{reference/fw-ref.ts → forward/ref.ts} +76 -40
- package/src/core/graph/resource/gvk/0-base.ts +37 -0
- package/src/core/graph/resource/gvk/1-group.ts +23 -0
- package/src/core/graph/resource/gvk/2=version.ts +21 -0
- package/src/core/graph/resource/gvk/3-gvk.ts +56 -0
- package/src/core/graph/resource/gvk/4-subkind.ts +19 -0
- package/src/core/graph/resource/gvk/index.ts +5 -0
- package/src/core/graph/resource/gvk/strings.ts +3 -0
- package/src/core/graph/resource/ident/ident.ts +140 -0
- package/src/core/graph/resource/ident/index.ts +1 -0
- package/src/core/graph/resource/ident/parsing.ts +36 -0
- package/src/core/graph/resource/index.ts +10 -9
- package/src/core/graph/resource/k8s-resource.ts +98 -0
- package/src/core/graph/resource/part.ts +26 -0
- package/src/core/graph/resource/props.ts +11 -0
- package/src/core/graph/resource/ref.ts +33 -0
- package/src/core/graph/resource/resource.ts +78 -0
- package/src/core/graph/resource/vertex.ts +134 -0
- package/src/core/graph/{node.ts → vertex.ts} +35 -38
- package/src/core/manifest/index.ts +7 -18
- package/src/core/tracing/embedder.ts +4 -0
- package/src/core/tracing/git.ts +9 -9
- package/src/core/tracing/index.ts +2 -2
- package/src/core/tracing/{trace.ts → source.ts} +6 -6
- package/src/expressions/data-sources/env-var.ts +15 -33
- package/src/expressions/data-sources/error.ts +8 -0
- package/src/expressions/data-sources/index.ts +1 -1
- package/src/expressions/data-sources/interface.ts +14 -28
- package/src/expressions/data-sources/js-object.ts +39 -0
- package/src/expressions/data-sources/local-file.ts +55 -61
- package/src/expressions/network/error.ts +7 -0
- package/src/expressions/network/index.ts +5 -1
- package/src/expressions/network/ip/ip4.ts +14 -0
- package/src/expressions/network/ip/subnet4.ts +9 -0
- package/src/expressions/network/ports/entry.ts +44 -0
- package/src/expressions/network/ports/mapping.ts +108 -0
- package/src/expressions/network/ports/{tools/parse.ts → parser.ts} +4 -4
- package/src/expressions/network/ports/provider.ts +193 -0
- package/src/expressions/network/ports/types.ts +23 -9
- package/src/expressions/quantities/error.ts +8 -0
- package/src/expressions/quantities/index.ts +11 -2
- package/src/expressions/quantities/reqs/objects.ts +85 -0
- package/src/expressions/quantities/{reqlem → reqs}/parser.ts +5 -5
- package/src/expressions/quantities/reqs/types.ts +35 -0
- package/src/expressions/quantities/reqs/values.ts +47 -0
- package/src/expressions/quantities/units/{units.ts → built-in.ts} +14 -7
- package/src/expressions/quantities/units/dimension.ts +47 -0
- package/src/expressions/quantities/units/parser.ts +11 -0
- package/src/expressions/quantities/units/types.ts +1 -0
- package/src/expressions/quantities/units/validator.ts +17 -0
- package/src/expressions/quantities/units/value.ts +22 -0
- package/src/expressions/quantities/util.ts +37 -0
- package/src/expressions/workload/cmd/cli-term.ts +13 -12
- package/src/expressions/workload/cmd/cmd-line.ts +103 -0
- package/src/expressions/workload/cmd/types.ts +4 -4
- package/src/expressions/workload/cronjob/parse-type.ts +58 -0
- package/src/expressions/workload/cronjob/shorthand.ts +37 -0
- package/src/expressions/workload/cronjob/stanza.ts +91 -0
- package/src/expressions/workload/cronjob/types.ts +3 -0
- package/src/expressions/workload/error.ts +7 -0
- package/src/expressions/workload/image/1-host.ts +31 -0
- package/src/expressions/workload/image/2-namespace.ts +49 -0
- package/src/expressions/workload/image/3-repository.ts +50 -0
- package/src/expressions/workload/image/4-image.ts +95 -0
- package/src/expressions/workload/image/index.ts +4 -1
- package/src/expressions/workload/image/types.ts +5 -0
- package/src/expressions/workload/index.ts +9 -3
- package/src/expressions/workload/owner/group.ts +30 -0
- package/src/expressions/workload/owner/index.ts +3 -0
- package/src/expressions/workload/owner/ownership.ts +26 -0
- package/src/expressions/workload/owner/user.ts +34 -0
- package/src/utils/index.ts +3 -3
- package/src/utils/{displayers → mixin/display}/displayers.ts +26 -20
- package/src/utils/{embedder → mixin/embedder}/base.ts +4 -2
- package/src/utils/mixin/embedder/index.ts +1 -0
- package/src/{expressions/network/ports → utils/mixin}/error.ts +2 -3
- package/src/utils/mixin/index.ts +2 -0
- package/src/utils/{_string/pretty-print.ts → phrase-renderer/index.ts} +5 -3
- package/src/utils/{_string/pretty-objects.ts → phrase-renderer/phrases.ts} +6 -6
- package/src/utils/{_string/post-processor.ts → phrase-renderer/renderer.ts} +1 -1
- package/src/utils/types.ts +1 -0
- package/src/utils/util.ts +24 -0
- package/dist/core/graph/node.d.ts.map +0 -1
- package/dist/core/graph/node.js.map +0 -1
- package/dist/core/graph/origin/entity.d.ts +0 -37
- package/dist/core/graph/origin/entity.d.ts.map +0 -1
- package/dist/core/graph/origin/entity.js.map +0 -1
- package/dist/core/graph/origin/external.d.ts +0 -14
- package/dist/core/graph/origin/external.d.ts.map +0 -1
- package/dist/core/graph/origin/external.js +0 -22
- package/dist/core/graph/origin/external.js.map +0 -1
- package/dist/core/graph/origin/node.d.ts +0 -23
- package/dist/core/graph/origin/node.d.ts.map +0 -1
- package/dist/core/graph/origin/node.js.map +0 -1
- package/dist/core/graph/origin/origin-events.d.ts +0 -41
- package/dist/core/graph/origin/origin-events.d.ts.map +0 -1
- package/dist/core/graph/origin/origin-events.js +0 -46
- package/dist/core/graph/origin/origin-events.js.map +0 -1
- package/dist/core/graph/resource/api-kind/index.d.ts +0 -54
- package/dist/core/graph/resource/api-kind/index.d.ts.map +0 -1
- package/dist/core/graph/resource/api-kind/index.js +0 -239
- package/dist/core/graph/resource/api-kind/index.js.map +0 -1
- package/dist/core/graph/resource/api-kind/pluralize.d.ts +0 -24
- package/dist/core/graph/resource/api-kind/pluralize.d.ts.map +0 -1
- package/dist/core/graph/resource/api-kind/pluralize.js +0 -16
- package/dist/core/graph/resource/api-kind/pluralize.js.map +0 -1
- package/dist/core/graph/resource/child.d.ts +0 -11
- package/dist/core/graph/resource/child.d.ts.map +0 -1
- package/dist/core/graph/resource/child.js +0 -22
- package/dist/core/graph/resource/child.js.map +0 -1
- package/dist/core/graph/resource/entity.d.ts +0 -22
- package/dist/core/graph/resource/entity.d.ts.map +0 -1
- package/dist/core/graph/resource/entity.js.map +0 -1
- package/dist/core/graph/resource/external/base.d.ts +0 -14
- package/dist/core/graph/resource/external/base.d.ts.map +0 -1
- package/dist/core/graph/resource/external/base.js +0 -37
- package/dist/core/graph/resource/external/base.js.map +0 -1
- package/dist/core/graph/resource/external/features.d.ts +0 -2
- package/dist/core/graph/resource/external/features.d.ts.map +0 -1
- package/dist/core/graph/resource/external/features.js.map +0 -1
- package/dist/core/graph/resource/external/index.d.ts +0 -4
- package/dist/core/graph/resource/external/index.d.ts.map +0 -1
- package/dist/core/graph/resource/external/index.js.map +0 -1
- package/dist/core/graph/resource/external/props.d.ts +0 -15
- package/dist/core/graph/resource/external/props.d.ts.map +0 -1
- package/dist/core/graph/resource/external/props.js.map +0 -1
- package/dist/core/graph/resource/field.d.ts +0 -2
- package/dist/core/graph/resource/field.d.ts.map +0 -1
- package/dist/core/graph/resource/field.js.map +0 -1
- package/dist/core/graph/resource/node.d.ts +0 -30
- package/dist/core/graph/resource/node.d.ts.map +0 -1
- package/dist/core/graph/resource/node.js.map +0 -1
- package/dist/core/graph/resource/ref-key/index.d.ts +0 -2
- package/dist/core/graph/resource/ref-key/index.d.ts.map +0 -1
- package/dist/core/graph/resource/ref-key/index.js.map +0 -1
- package/dist/core/graph/resource/ref-key/ref-key.d.ts.map +0 -1
- package/dist/core/graph/resource/ref-key/ref-key.js.map +0 -1
- package/dist/core/graph/resource/reference/error.d.ts +0 -5
- package/dist/core/graph/resource/reference/error.d.ts.map +0 -1
- package/dist/core/graph/resource/reference/error.js +0 -11
- package/dist/core/graph/resource/reference/error.js.map +0 -1
- package/dist/core/graph/resource/reference/fw-ref-exports.d.ts +0 -46
- package/dist/core/graph/resource/reference/fw-ref-exports.d.ts.map +0 -1
- package/dist/core/graph/resource/reference/fw-ref-exports.js.map +0 -1
- package/dist/core/graph/resource/reference/fw-ref.d.ts.map +0 -1
- package/dist/core/graph/resource/reference/fw-ref.js.map +0 -1
- package/dist/core/graph/resource/reference/index.d.ts +0 -4
- package/dist/core/graph/resource/reference/index.d.ts.map +0 -1
- package/dist/core/graph/resource/reference/index.js +0 -8
- package/dist/core/graph/resource/reference/index.js.map +0 -1
- package/dist/core/graph/resource/reference/refable.d.ts +0 -21
- package/dist/core/graph/resource/reference/refable.d.ts.map +0 -1
- package/dist/core/graph/resource/reference/refable.js.map +0 -1
- package/dist/core/graph/resource/top.d.ts +0 -21
- package/dist/core/graph/resource/top.d.ts.map +0 -1
- package/dist/core/graph/resource/top.js +0 -73
- package/dist/core/graph/resource/top.js.map +0 -1
- package/dist/core/tracing/trace.d.ts +0 -11
- package/dist/core/tracing/trace.d.ts.map +0 -1
- package/dist/core/tracing/trace.js.map +0 -1
- package/dist/core/tracing/traced.d.ts +0 -4
- package/dist/core/tracing/traced.d.ts.map +0 -1
- package/dist/core/tracing/traced.js.map +0 -1
- package/dist/expressions/data-sources/base.d.ts +0 -30
- package/dist/expressions/data-sources/base.d.ts.map +0 -1
- package/dist/expressions/data-sources/base.js +0 -37
- package/dist/expressions/data-sources/base.js.map +0 -1
- package/dist/expressions/network/ip/index.d.ts +0 -14
- package/dist/expressions/network/ip/index.d.ts.map +0 -1
- package/dist/expressions/network/ip/index.js.map +0 -1
- package/dist/expressions/network/ports/error.d.ts +0 -5
- package/dist/expressions/network/ports/error.d.ts.map +0 -1
- package/dist/expressions/network/ports/error.js.map +0 -1
- package/dist/expressions/network/ports/index.d.ts +0 -7
- package/dist/expressions/network/ports/index.d.ts.map +0 -1
- package/dist/expressions/network/ports/index.js +0 -13
- package/dist/expressions/network/ports/index.js.map +0 -1
- package/dist/expressions/network/ports/map.d.ts.map +0 -1
- package/dist/expressions/network/ports/map.js +0 -68
- package/dist/expressions/network/ports/map.js.map +0 -1
- package/dist/expressions/network/ports/set.d.ts +0 -93
- package/dist/expressions/network/ports/set.d.ts.map +0 -1
- package/dist/expressions/network/ports/set.js +0 -125
- package/dist/expressions/network/ports/set.js.map +0 -1
- package/dist/expressions/network/ports/tools/entry.d.ts +0 -6
- package/dist/expressions/network/ports/tools/entry.d.ts.map +0 -1
- package/dist/expressions/network/ports/tools/entry.js +0 -39
- package/dist/expressions/network/ports/tools/entry.js.map +0 -1
- package/dist/expressions/network/ports/tools/parse.d.ts +0 -3
- package/dist/expressions/network/ports/tools/parse.d.ts.map +0 -1
- package/dist/expressions/network/ports/tools/parse.js.map +0 -1
- package/dist/expressions/quantities/reqlem/index.d.ts +0 -3
- package/dist/expressions/quantities/reqlem/index.d.ts.map +0 -1
- package/dist/expressions/quantities/reqlem/index.js.map +0 -1
- package/dist/expressions/quantities/reqlem/objects.d.ts +0 -24
- package/dist/expressions/quantities/reqlem/objects.d.ts.map +0 -1
- package/dist/expressions/quantities/reqlem/objects.js +0 -103
- package/dist/expressions/quantities/reqlem/objects.js.map +0 -1
- package/dist/expressions/quantities/reqlem/parser.d.ts +0 -4
- package/dist/expressions/quantities/reqlem/parser.d.ts.map +0 -1
- package/dist/expressions/quantities/reqlem/parser.js.map +0 -1
- package/dist/expressions/quantities/reqlem/types.d.ts +0 -23
- package/dist/expressions/quantities/reqlem/types.d.ts.map +0 -1
- package/dist/expressions/quantities/reqlem/types.js.map +0 -1
- package/dist/expressions/quantities/units/index.d.ts +0 -3
- package/dist/expressions/quantities/units/index.d.ts.map +0 -1
- package/dist/expressions/quantities/units/index.js +0 -22
- package/dist/expressions/quantities/units/index.js.map +0 -1
- package/dist/expressions/quantities/units/unit-parser.d.ts +0 -29
- package/dist/expressions/quantities/units/unit-parser.d.ts.map +0 -1
- package/dist/expressions/quantities/units/unit-parser.js +0 -85
- package/dist/expressions/quantities/units/unit-parser.js.map +0 -1
- package/dist/expressions/quantities/units/units.d.ts.map +0 -1
- package/dist/expressions/quantities/units/units.js +0 -35
- package/dist/expressions/quantities/units/units.js.map +0 -1
- package/dist/expressions/workload/_user/index.d.ts +0 -16
- package/dist/expressions/workload/_user/index.d.ts.map +0 -1
- package/dist/expressions/workload/_user/index.js +0 -33
- package/dist/expressions/workload/_user/index.js.map +0 -1
- package/dist/expressions/workload/cmd/cli-command.d.ts +0 -22
- package/dist/expressions/workload/cmd/cli-command.d.ts.map +0 -1
- package/dist/expressions/workload/cmd/cli-command.js.map +0 -1
- package/dist/expressions/workload/cmd/index.d.ts +0 -3
- package/dist/expressions/workload/cmd/index.d.ts.map +0 -1
- package/dist/expressions/workload/cmd/index.js +0 -7
- package/dist/expressions/workload/cmd/index.js.map +0 -1
- package/dist/expressions/workload/cronjob/index.d.ts +0 -57
- package/dist/expressions/workload/cronjob/index.d.ts.map +0 -1
- package/dist/expressions/workload/cronjob/index.js.map +0 -1
- package/dist/expressions/workload/image/family.d.ts +0 -30
- package/dist/expressions/workload/image/family.d.ts.map +0 -1
- package/dist/expressions/workload/image/family.js +0 -180
- package/dist/expressions/workload/image/family.js.map +0 -1
- package/dist/utils/_string/index.d.ts +0 -6
- package/dist/utils/_string/index.d.ts.map +0 -1
- package/dist/utils/_string/index.js +0 -22
- package/dist/utils/_string/index.js.map +0 -1
- package/dist/utils/_string/markers.d.ts +0 -3
- package/dist/utils/_string/markers.d.ts.map +0 -1
- package/dist/utils/_string/markers.js +0 -64
- package/dist/utils/_string/markers.js.map +0 -1
- package/dist/utils/_string/post-processor.d.ts.map +0 -1
- package/dist/utils/_string/post-processor.js.map +0 -1
- package/dist/utils/_string/pretty-objects.d.ts.map +0 -1
- package/dist/utils/_string/pretty-objects.js.map +0 -1
- package/dist/utils/_string/pretty-print.d.ts +0 -2
- package/dist/utils/_string/pretty-print.d.ts.map +0 -1
- package/dist/utils/_string/pretty-print.js +0 -27
- package/dist/utils/_string/pretty-print.js.map +0 -1
- package/dist/utils/_string/super-script.d.ts +0 -2
- package/dist/utils/_string/super-script.d.ts.map +0 -1
- package/dist/utils/_string/super-script.js +0 -20
- package/dist/utils/_string/super-script.js.map +0 -1
- package/dist/utils/displayers/displayers.d.ts.map +0 -1
- package/dist/utils/displayers/displayers.js.map +0 -1
- package/dist/utils/displayers/index.d.ts.map +0 -1
- package/dist/utils/displayers/index.js.map +0 -1
- package/dist/utils/embedder/base.d.ts.map +0 -1
- package/dist/utils/embedder/base.js.map +0 -1
- package/dist/utils/embedder/index.d.ts.map +0 -1
- package/dist/utils/embedder/index.js.map +0 -1
- package/dist/utils/tagged-template.d.ts +0 -2
- package/dist/utils/tagged-template.d.ts.map +0 -1
- package/dist/utils/tagged-template.js +0 -10
- package/dist/utils/tagged-template.js.map +0 -1
- package/src/core/graph/entities.md +0 -1
- package/src/core/graph/origin/entity.ts +0 -138
- package/src/core/graph/origin/external.ts +0 -21
- package/src/core/graph/origin/origin-events.ts +0 -86
- package/src/core/graph/readme.md +0 -161
- package/src/core/graph/resource/api-kind/index.ts +0 -171
- package/src/core/graph/resource/api-kind/pluralize.ts +0 -40
- package/src/core/graph/resource/child.ts +0 -23
- package/src/core/graph/resource/entity.ts +0 -73
- package/src/core/graph/resource/external/base.ts +0 -39
- package/src/core/graph/resource/external/index.ts +0 -3
- package/src/core/graph/resource/external/props.ts +0 -16
- package/src/core/graph/resource/field.ts +0 -0
- package/src/core/graph/resource/node.ts +0 -132
- package/src/core/graph/resource/ref-key/index.ts +0 -1
- package/src/core/graph/resource/ref-key/ref-key.ts +0 -156
- package/src/core/graph/resource/reference/error.ts +0 -7
- package/src/core/graph/resource/reference/index.ts +0 -3
- package/src/core/graph/resource/reference/refable.ts +0 -26
- package/src/core/graph/resource/top.ts +0 -82
- package/src/core/tracing/traced.ts +0 -4
- package/src/expressions/data-sources/base.ts +0 -38
- package/src/expressions/network/ip/index.ts +0 -17
- package/src/expressions/network/ports/index.ts +0 -8
- package/src/expressions/network/ports/map.ts +0 -88
- package/src/expressions/network/ports/set.ts +0 -178
- package/src/expressions/network/ports/tools/entry.ts +0 -41
- package/src/expressions/quantities/reqlem/index.ts +0 -2
- package/src/expressions/quantities/reqlem/objects.ts +0 -107
- package/src/expressions/quantities/reqlem/types.ts +0 -28
- package/src/expressions/quantities/units/index.ts +0 -2
- package/src/expressions/quantities/units/unit-parser.ts +0 -92
- package/src/expressions/workload/_user/index.ts +0 -24
- package/src/expressions/workload/cmd/cli-command.ts +0 -99
- package/src/expressions/workload/cmd/index.ts +0 -2
- package/src/expressions/workload/cronjob/index.ts +0 -166
- package/src/expressions/workload/image/family.ts +0 -87
- package/src/utils/_string/index.ts +0 -5
- package/src/utils/_string/markers.ts +0 -66
- package/src/utils/_string/super-script.ts +0 -17
- package/src/utils/tagged-template.ts +0 -6
- /package/dist/core/graph/{resource/external → origin}/props.js +0 -0
- /package/dist/{utils/embedder → core/graph/resource/dummy}/index.d.ts +0 -0
- /package/dist/{utils/embedder → core/graph/resource/dummy}/index.js +0 -0
- /package/dist/expressions/quantities/{reqlem → reqs}/types.js +0 -0
- /package/dist/utils/{displayers → mixin/display}/index.d.ts +0 -0
- /package/dist/utils/{displayers → mixin/display}/index.js +0 -0
- /package/dist/utils/{embedder → mixin/embedder}/base.d.ts +0 -0
- /package/src/{utils/embedder → core/graph/resource/dummy}/index.ts +0 -0
- /package/src/{core/graph/resource/external/features.ts → expressions/workload/image/util.ts} +0 -0
- /package/src/utils/{displayers → mixin/display}/index.ts +0 -0
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
import type { DummyResource } from "../dummy"
|
|
2
|
+
import type { Gvk, Gvk_Base } from "../gvk"
|
|
3
|
+
import type { ResourceRef, ResourceRef_Constructor_For } from "../ref"
|
|
4
|
+
import type { ResourceIdent_sFormat } from "./parsing"
|
|
5
|
+
|
|
6
|
+
export const separator = "/"
|
|
7
|
+
|
|
8
|
+
/** Parsed representation of a reference key string. */
|
|
9
|
+
export interface ResourceIdent_Parsed {
|
|
10
|
+
/** The Kubernetes resource kind */
|
|
11
|
+
kind: string
|
|
12
|
+
/** The resource name */
|
|
13
|
+
name: string
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
type nsKind = Gvk<"v1/Namespace">
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Options for creating a RefKey instance.
|
|
20
|
+
*
|
|
21
|
+
* @template Name - The resource name type
|
|
22
|
+
*/
|
|
23
|
+
export interface ResourceIdent_Options<Name extends string = string> {
|
|
24
|
+
/** The resource name */
|
|
25
|
+
name: Name
|
|
26
|
+
/** Optional namespace for namespaced resources. Can be a RefKey, string, or Ref2 */
|
|
27
|
+
namespace?: ResourceIdent<nsKind> | string | ResourceRef<nsKind>
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export interface ResourceIdent_Like {
|
|
31
|
+
readonly kind: Gvk_Base
|
|
32
|
+
readonly name: string
|
|
33
|
+
readonly namespace: string | undefined
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* A unique identifier for a k8s resource consisting of a Kind, name, and namespace. Used by
|
|
38
|
+
* resources to reference other resources. Serves as the basis for the {@link DummyResource} resource
|
|
39
|
+
* type.
|
|
40
|
+
*
|
|
41
|
+
* Important: This class is ambiguous because it can represent keys for namespaced resources but
|
|
42
|
+
* ignore the namespace. Needs some kind of refactor.
|
|
43
|
+
*/
|
|
44
|
+
export class ResourceIdent<K extends Gvk_Base = Gvk_Base, Name extends string = string> {
|
|
45
|
+
/** The resource name */
|
|
46
|
+
name: string
|
|
47
|
+
/** The optional namespace for namespaced resources */
|
|
48
|
+
namespace: string | undefined
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* Creates a new RefKey instance.
|
|
52
|
+
*
|
|
53
|
+
* @param kind - The Kubernetes resource kind
|
|
54
|
+
* @param options - Configuration options including name and optional namespace
|
|
55
|
+
*/
|
|
56
|
+
constructor(
|
|
57
|
+
readonly kind: K,
|
|
58
|
+
options: ResourceIdent_Options<Name>
|
|
59
|
+
) {
|
|
60
|
+
this.name = options.name
|
|
61
|
+
if (typeof options.namespace === "string") {
|
|
62
|
+
this.namespace = options.namespace
|
|
63
|
+
} else if (options.namespace && "ident" in options.namespace) {
|
|
64
|
+
this.namespace = options.namespace.ident.name
|
|
65
|
+
} else if (options.namespace) {
|
|
66
|
+
this.namespace = options.namespace.name
|
|
67
|
+
} else {
|
|
68
|
+
this.namespace = undefined
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
rename<NewName extends string>(newName: NewName) {
|
|
73
|
+
return new ResourceIdent<K, NewName>(this.kind, {
|
|
74
|
+
name: newName,
|
|
75
|
+
namespace: this.namespace
|
|
76
|
+
})
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* Returns the string representation of this reference key. Format: "Kind/Namespace/Name" or
|
|
81
|
+
* "Kind/Name" for cluster-scoped resources.
|
|
82
|
+
*/
|
|
83
|
+
get string(): ResourceIdent_sFormat<K["value"], Name> {
|
|
84
|
+
return [this.kind.value, this.namespace, this.name]
|
|
85
|
+
.filter(x => !!x)
|
|
86
|
+
.join(separator) as ResourceIdent_sFormat<K["value"], Name>
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* Checks if this RefKey is equal to another RefKey by comparing kind, name, and namespace.
|
|
91
|
+
*
|
|
92
|
+
* @param other - The RefKey to compare with
|
|
93
|
+
* @returns True if both RefKeys have the same kind, name, and namespace
|
|
94
|
+
*/
|
|
95
|
+
equals(other: ResourceIdent): boolean {
|
|
96
|
+
if (other == null) {
|
|
97
|
+
return false
|
|
98
|
+
}
|
|
99
|
+
if (typeof other !== "object") {
|
|
100
|
+
return false
|
|
101
|
+
}
|
|
102
|
+
return (
|
|
103
|
+
this.kind.equals(other.kind) &&
|
|
104
|
+
this.name === other.name &&
|
|
105
|
+
this.namespace === other.namespace
|
|
106
|
+
)
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* Returns the string representation of this reference key.
|
|
111
|
+
*
|
|
112
|
+
* @returns The reference key in string format
|
|
113
|
+
*/
|
|
114
|
+
toString() {
|
|
115
|
+
return this.string
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
/**
|
|
119
|
+
* Creates an External reference to this resource.
|
|
120
|
+
*
|
|
121
|
+
* @template P - The external properties type
|
|
122
|
+
* @param options - Optional external properties configuration
|
|
123
|
+
* @returns An External instance with the specified features
|
|
124
|
+
*/
|
|
125
|
+
DummyResource(): DummyResource<K> {
|
|
126
|
+
const DummyResource: ResourceRef_Constructor_For<DummyResource<K>> =
|
|
127
|
+
require("../dummy").DummyResource
|
|
128
|
+
const self = this
|
|
129
|
+
|
|
130
|
+
const className = `${this.kind.value}DummyResource`
|
|
131
|
+
const cls = {
|
|
132
|
+
[className]: class extends DummyResource {
|
|
133
|
+
get kind() {
|
|
134
|
+
return self.kind
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
}[className]
|
|
138
|
+
return new cls(this.name, this.namespace, {}) as DummyResource<K>
|
|
139
|
+
}
|
|
140
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./ident"
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { type ResourceIdent_Parsed, separator } from "./ident"
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Attempts to parse a reference key string into its kind and name components. Returns undefined if
|
|
5
|
+
* the string cannot be parsed.
|
|
6
|
+
*
|
|
7
|
+
* @param ref - The reference key string to parse (format: "Kind/Name")
|
|
8
|
+
* @returns The parsed reference key, or undefined if parsing fails
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
export function tryParse(ref: string): ResourceIdent_Parsed | undefined {
|
|
12
|
+
if (typeof ref !== "string") {
|
|
13
|
+
return undefined
|
|
14
|
+
}
|
|
15
|
+
if (ref == null) {
|
|
16
|
+
return undefined
|
|
17
|
+
}
|
|
18
|
+
if (typeof ref === "object") {
|
|
19
|
+
return undefined
|
|
20
|
+
}
|
|
21
|
+
const [kind, name] = ref.split(separator).map(s => s.trim())
|
|
22
|
+
if (!kind || !name) {
|
|
23
|
+
return undefined
|
|
24
|
+
}
|
|
25
|
+
return {
|
|
26
|
+
kind,
|
|
27
|
+
name
|
|
28
|
+
}
|
|
29
|
+
} /**
|
|
30
|
+
* String format template for reference keys.
|
|
31
|
+
*
|
|
32
|
+
* @template Kind - The Kubernetes resource kind
|
|
33
|
+
* @template Name - The resource name
|
|
34
|
+
*/
|
|
35
|
+
|
|
36
|
+
export type ResourceIdent_sFormat<Kind extends string, Name extends string> = `${Kind}/${Name}`
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
export * from "./
|
|
2
|
-
export * from "./
|
|
3
|
-
export * from "./
|
|
4
|
-
export * from "./
|
|
5
|
-
export * from "./
|
|
6
|
-
export * from "./
|
|
7
|
-
export * from "./
|
|
8
|
-
export * from "./
|
|
9
|
-
export * from "./
|
|
1
|
+
export * from "./dummy"
|
|
2
|
+
export * from "./forward"
|
|
3
|
+
export * from "./gvk"
|
|
4
|
+
export * from "./ident"
|
|
5
|
+
export * from "./k8s-resource"
|
|
6
|
+
export * from "./part"
|
|
7
|
+
export * from "./props"
|
|
8
|
+
export * from "./ref"
|
|
9
|
+
export * from "./resource"
|
|
10
|
+
export * from "./vertex"
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { Metadata } from "@k8ts/metadata"
|
|
2
|
+
import { doddle } from "doddle"
|
|
3
|
+
import { omit } from "lodash"
|
|
4
|
+
import StackTracey from "stacktracey"
|
|
5
|
+
import {
|
|
6
|
+
type K8tsManifest,
|
|
7
|
+
type K8tsManifest_GVK,
|
|
8
|
+
type K8tsManifest_Metadata
|
|
9
|
+
} from "../../manifest"
|
|
10
|
+
import { Trace_Source, TraceEmbedder } from "../../tracing"
|
|
11
|
+
import { K8tsGraphError } from "../error"
|
|
12
|
+
import { OriginContextTracker } from "../origin/tracker"
|
|
13
|
+
import type {
|
|
14
|
+
ResourceTop_CreationOptions,
|
|
15
|
+
ResourceTop_CreationOptions_Input
|
|
16
|
+
} from "./creation-options"
|
|
17
|
+
import type { Resource_Props_Top } from "./props"
|
|
18
|
+
import { ResourceEntity } from "./resource"
|
|
19
|
+
let globalEntityId = 1
|
|
20
|
+
export abstract class K8sResource<
|
|
21
|
+
Name extends string = string,
|
|
22
|
+
Props extends Resource_Props_Top = Resource_Props_Top
|
|
23
|
+
> extends ResourceEntity<Name, Props> {
|
|
24
|
+
readonly metadata: Metadata
|
|
25
|
+
protected readonly _creation: ResourceTop_CreationOptions
|
|
26
|
+
protected readonly __entity_id__ = (() => {
|
|
27
|
+
return `${this.kind.value}_${this.ident.name}_${(globalEntityId++).toString(16)}`
|
|
28
|
+
})()
|
|
29
|
+
constructor(name: Name, props: Props, creationOptions?: ResourceTop_CreationOptions_Input) {
|
|
30
|
+
const ownOrigin = creationOptions?.origins?.own ?? OriginContextTracker.current
|
|
31
|
+
if (!ownOrigin) {
|
|
32
|
+
throw new K8tsGraphError(`Resource ${name} must be created within an Origin context`)
|
|
33
|
+
}
|
|
34
|
+
super(name, ownOrigin.namespace, props)
|
|
35
|
+
this._creation = {
|
|
36
|
+
origins: {
|
|
37
|
+
own: ownOrigin,
|
|
38
|
+
subscope: creationOptions?.origins?.subscope ?? ownOrigin
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
this.metadata = new Metadata(props.$metadata)
|
|
42
|
+
.overwrite(creationOptions?.metadata)
|
|
43
|
+
.overwrite({
|
|
44
|
+
"^k8ts.org/entity-id": this.__entity_id__
|
|
45
|
+
})
|
|
46
|
+
|
|
47
|
+
this._creation.origins.own["__attach_resource__"](this)
|
|
48
|
+
TraceEmbedder.add(this, new Trace_Source(new StackTracey().slice(2)))
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
protected __scope__<F extends (...args: any[]) => any>(fn: F): F {
|
|
52
|
+
const bound = this._creation.origins.subscope["__bind__"](fn)
|
|
53
|
+
return bound
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
protected get __origin__() {
|
|
57
|
+
return this._creation.origins.own
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
protected get __metadata__(): K8tsManifest_Metadata {
|
|
61
|
+
const self = this
|
|
62
|
+
return {
|
|
63
|
+
name: self.ident.name,
|
|
64
|
+
namespace: self.ident.namespace,
|
|
65
|
+
labels: self.metadata.labels,
|
|
66
|
+
annotations: self.metadata.annotations
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
protected get __gvk__(): K8tsManifest_GVK {
|
|
71
|
+
return {
|
|
72
|
+
apiVersion: this.kind.parent!.url,
|
|
73
|
+
kind: this.kind.value
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
protected abstract __body__(): object
|
|
78
|
+
|
|
79
|
+
protected __manifest__(): K8tsManifest | Promise<K8tsManifest> {
|
|
80
|
+
return doddle(async () => {
|
|
81
|
+
const body = await this.__body__()
|
|
82
|
+
// We want the body to be after the metadata and the gvk
|
|
83
|
+
// But we don't want it to override anything if it has extra keys
|
|
84
|
+
const trimmedBody = omit(body, ["metadata", "apiVersion", "kind"])
|
|
85
|
+
const a = {
|
|
86
|
+
...this.__gvk__,
|
|
87
|
+
metadata: this.__metadata__,
|
|
88
|
+
...trimmedBody
|
|
89
|
+
}
|
|
90
|
+
this.__origin__["__emit__"]("resource/manifested", {
|
|
91
|
+
origin: this.__origin__,
|
|
92
|
+
manifest: a,
|
|
93
|
+
resource: this
|
|
94
|
+
})
|
|
95
|
+
return a
|
|
96
|
+
}).pull()
|
|
97
|
+
}
|
|
98
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { Gvk_Base } from "./gvk"
|
|
2
|
+
import type { Resource_Props } from "./props"
|
|
3
|
+
import { ResourceEntity } from "./resource"
|
|
4
|
+
|
|
5
|
+
export abstract class ResourcePart<
|
|
6
|
+
Props extends Resource_Props = Resource_Props
|
|
7
|
+
> extends ResourceEntity<string, Props> {
|
|
8
|
+
abstract get kind(): Gvk_Base
|
|
9
|
+
#parent: ResourceEntity
|
|
10
|
+
constructor(parent: ResourceEntity, name: string, props: Props) {
|
|
11
|
+
const parentNs = parent.ident.namespace
|
|
12
|
+
|
|
13
|
+
super(name, parentNs, props)
|
|
14
|
+
this.#parent = parent
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
protected get __parent__(): ResourceEntity {
|
|
18
|
+
return this.#parent
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
protected abstract __submanifest__(): object
|
|
22
|
+
|
|
23
|
+
protected get __origin__() {
|
|
24
|
+
return this.__parent__["__origin__"]
|
|
25
|
+
}
|
|
26
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Metadata_Input } from "@k8ts/metadata"
|
|
2
|
+
|
|
3
|
+
export interface Resource_Props<ResultType extends object = object> {
|
|
4
|
+
$$manifest?: ResultType
|
|
5
|
+
$noEmit?: boolean
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export interface Resource_Props_Top<ResultType extends object = object>
|
|
9
|
+
extends Resource_Props<ResultType> {
|
|
10
|
+
$metadata?: Metadata_Input
|
|
11
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { EntityRef } from "../entity"
|
|
2
|
+
import type { GVK_Like } from "./gvk"
|
|
3
|
+
import type { ResourceVertex } from "./vertex"
|
|
4
|
+
|
|
5
|
+
export type ResourceRef_Constructor_For<R extends ResourceRef = ResourceRef> = {
|
|
6
|
+
prototype: R
|
|
7
|
+
} & (abstract new (...args: any[]) => R)
|
|
8
|
+
export type ResourceRef_Constructor<K extends GVK_Like = GVK_Like> = ResourceRef_Constructor_For<
|
|
9
|
+
ResourceRef<K>
|
|
10
|
+
>
|
|
11
|
+
export type ResourceRef<
|
|
12
|
+
_Kind extends GVK_Like = GVK_Like,
|
|
13
|
+
Name extends string = string
|
|
14
|
+
> = EntityRef & {
|
|
15
|
+
noEmit: boolean
|
|
16
|
+
kind: _Kind
|
|
17
|
+
ident: {
|
|
18
|
+
name: Name
|
|
19
|
+
namespace?: string
|
|
20
|
+
}
|
|
21
|
+
is<Type>(cls: abstract new (...args: any[]) => Type): this is Type
|
|
22
|
+
is<_Kind extends GVK_Like>(kind: _Kind): this is ResourceRef<_Kind>
|
|
23
|
+
equals(other: any): boolean
|
|
24
|
+
__vertex__: ResourceVertex
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export type ResourceRef_HasKeys<X extends ResourceRef, Else = never> = [X] extends [
|
|
28
|
+
{
|
|
29
|
+
keys: (infer K extends string)[]
|
|
30
|
+
}
|
|
31
|
+
]
|
|
32
|
+
? K
|
|
33
|
+
: Else
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { getNiceClassName } from "what-are-you"
|
|
2
|
+
import { ResourceIdent } from "."
|
|
3
|
+
|
|
4
|
+
import { display } from "../../../utils"
|
|
5
|
+
import { getDeepPropertyDescriptor } from "../../../utils/util"
|
|
6
|
+
import { EntityBase } from "../entity"
|
|
7
|
+
import { K8tsGraphError } from "../error"
|
|
8
|
+
import type { OriginEntity } from "../origin"
|
|
9
|
+
import { ForwardRef } from "./forward"
|
|
10
|
+
import type { Gvk_Base } from "./gvk"
|
|
11
|
+
import { Resource_Props } from "./props"
|
|
12
|
+
import { type ResourceRef } from "./ref"
|
|
13
|
+
import { ResourceVertex } from "./vertex"
|
|
14
|
+
@display({
|
|
15
|
+
simple: s => s.__vertex__,
|
|
16
|
+
pretty: s => s.__vertex__
|
|
17
|
+
})
|
|
18
|
+
export abstract class ResourceEntity<
|
|
19
|
+
Name extends string = string,
|
|
20
|
+
Props extends Resource_Props = Resource_Props
|
|
21
|
+
>
|
|
22
|
+
extends EntityBase<ResourceVertex, ResourceEntity, ResourceRef>
|
|
23
|
+
implements ResourceRef
|
|
24
|
+
{
|
|
25
|
+
abstract get kind(): Gvk_Base
|
|
26
|
+
ident: ResourceIdent<Gvk_Base, Name>
|
|
27
|
+
readonly props: Props
|
|
28
|
+
constructor(name: Name, namespace: string | undefined, props: Props) {
|
|
29
|
+
super()
|
|
30
|
+
this.props = props
|
|
31
|
+
|
|
32
|
+
const desc = getDeepPropertyDescriptor(this, "kind")
|
|
33
|
+
if (!desc || !desc.get) {
|
|
34
|
+
throw new K8tsGraphError(
|
|
35
|
+
`ResourceEntity subclass ${getNiceClassName(this)} must implement the 'kind' property as a getter, but it's missing or not a getter.`
|
|
36
|
+
)
|
|
37
|
+
}
|
|
38
|
+
const kind = (this as any).kind as Gvk_Base
|
|
39
|
+
this.ident = new ResourceIdent(kind, {
|
|
40
|
+
name: name,
|
|
41
|
+
namespace: namespace
|
|
42
|
+
})
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
get noEmit() {
|
|
46
|
+
return this.props.$noEmit === true
|
|
47
|
+
}
|
|
48
|
+
set noEmit(value: boolean) {
|
|
49
|
+
this.props.$noEmit = value
|
|
50
|
+
}
|
|
51
|
+
is<K extends this["kind"]>(kind: K): this is { kind: K }
|
|
52
|
+
is<Inst extends ResourceRef = ResourceRef>(
|
|
53
|
+
cls: abstract new (...args: any[]) => Inst
|
|
54
|
+
): this is Inst
|
|
55
|
+
is(cls: any): boolean {
|
|
56
|
+
if (typeof cls === "function") {
|
|
57
|
+
return this instanceof cls
|
|
58
|
+
}
|
|
59
|
+
return this.kind.equals(cls)
|
|
60
|
+
}
|
|
61
|
+
equals(other: any): boolean {
|
|
62
|
+
if (!other) {
|
|
63
|
+
return false
|
|
64
|
+
}
|
|
65
|
+
if (ForwardRef.is(other)) {
|
|
66
|
+
return other.equals(this)
|
|
67
|
+
}
|
|
68
|
+
if (other instanceof ResourceEntity) {
|
|
69
|
+
return Object.is(this, other)
|
|
70
|
+
}
|
|
71
|
+
return false
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
protected abstract get __origin__(): OriginEntity
|
|
75
|
+
get __vertex__(): ResourceVertex {
|
|
76
|
+
return new ResourceVertex(this.__origin__.__vertex__, this)
|
|
77
|
+
}
|
|
78
|
+
}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import { Metadata } from "@k8ts/metadata"
|
|
2
|
+
import chalk from "chalk"
|
|
3
|
+
import { seq } from "doddle"
|
|
4
|
+
import { Display, display } from "../../../utils/mixin/display"
|
|
5
|
+
import { TraceEmbedder } from "../../tracing"
|
|
6
|
+
import { Formats } from "../entity"
|
|
7
|
+
import { K8tsGraphError } from "../error"
|
|
8
|
+
import { OriginVertex } from "../origin/vertex"
|
|
9
|
+
import { Vertex } from "../vertex"
|
|
10
|
+
import type { Gvk } from "./gvk"
|
|
11
|
+
import { ResourceIdent } from "./ident"
|
|
12
|
+
import type { ResourceRef_Constructor_For } from "./ref"
|
|
13
|
+
import type { ResourceEntity } from "./resource"
|
|
14
|
+
|
|
15
|
+
@display({
|
|
16
|
+
simple: s => `[${s.shortFqn}]`,
|
|
17
|
+
pretty(resource, format) {
|
|
18
|
+
format ??= "global"
|
|
19
|
+
|
|
20
|
+
let kindName = chalk.greenBright(resource.kind.value)
|
|
21
|
+
if (format !== "lowkey") {
|
|
22
|
+
kindName = chalk.bold(kindName)
|
|
23
|
+
}
|
|
24
|
+
const parts = [kindName]
|
|
25
|
+
if (resource.namespace) {
|
|
26
|
+
parts.push(chalk.yellowBright(resource.namespace))
|
|
27
|
+
}
|
|
28
|
+
parts.push(chalk.blueBright(resource.name))
|
|
29
|
+
const mainPart = parts.join("/")
|
|
30
|
+
let originPart = `${Display.get(resource.origin).prefix!()}`
|
|
31
|
+
let text = ""
|
|
32
|
+
|
|
33
|
+
text += mainPart
|
|
34
|
+
if (format !== "local") {
|
|
35
|
+
text = `${originPart}${text}`
|
|
36
|
+
}
|
|
37
|
+
if (format === "source") {
|
|
38
|
+
text += ` (at ${resource.trace.format()})`
|
|
39
|
+
}
|
|
40
|
+
return text
|
|
41
|
+
}
|
|
42
|
+
})
|
|
43
|
+
export class ResourceVertex extends Vertex<ResourceVertex, ResourceEntity> {
|
|
44
|
+
get fullFqn() {
|
|
45
|
+
return [this.kind.dns, this.namespace, this.name].filter(Boolean).join("/")
|
|
46
|
+
}
|
|
47
|
+
get ident(): ResourceIdent {
|
|
48
|
+
return this.entity.ident
|
|
49
|
+
}
|
|
50
|
+
get kind() {
|
|
51
|
+
return this.entity.kind as Gvk
|
|
52
|
+
}
|
|
53
|
+
get hasInheritedNoEmit() {
|
|
54
|
+
return (
|
|
55
|
+
this.noEmit ||
|
|
56
|
+
this.origin.hasInheritedNoEmit ||
|
|
57
|
+
this.ancestors.some(x => x.noEmit).pull()
|
|
58
|
+
)
|
|
59
|
+
}
|
|
60
|
+
get namespace() {
|
|
61
|
+
return this.ident.namespace
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
get trace() {
|
|
65
|
+
return TraceEmbedder.get(this.entity)
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
get isExported() {
|
|
69
|
+
return this.metadata?.tryGet("#k8ts.org/exported") ?? false
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
get metadata() {
|
|
73
|
+
return "metadata" in this.entity ? (this.entity.metadata as Metadata) : undefined
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
get noEmit(): boolean {
|
|
77
|
+
return "noEmit" in this.entity ? (this.entity.noEmit as boolean) : false
|
|
78
|
+
}
|
|
79
|
+
set noEmit(v: boolean) {
|
|
80
|
+
this.entity.noEmit = v
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
when<EntityTypeCtor extends ResourceRef_Constructor_For>(
|
|
84
|
+
type: EntityTypeCtor,
|
|
85
|
+
fn: (entity: InstanceType<EntityTypeCtor>) => void
|
|
86
|
+
) {
|
|
87
|
+
const entity = this.entity as InstanceType<EntityTypeCtor>
|
|
88
|
+
if (entity instanceof type) {
|
|
89
|
+
fn(entity)
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
as<EntityType extends ResourceEntity>(type: ResourceRef_Constructor_For<EntityType>) {
|
|
94
|
+
const entity = this.entity as EntityType
|
|
95
|
+
if (entity instanceof type) {
|
|
96
|
+
return entity
|
|
97
|
+
}
|
|
98
|
+
throw new K8tsGraphError(
|
|
99
|
+
`This node is for an entity of type ${entity.constructor.name}, not ${type.name}`
|
|
100
|
+
)
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
get origins() {
|
|
104
|
+
const self = this
|
|
105
|
+
return seq(function* () {
|
|
106
|
+
let current: OriginVertex | null = self.origin
|
|
107
|
+
while (current) {
|
|
108
|
+
yield current
|
|
109
|
+
current = current.parent
|
|
110
|
+
}
|
|
111
|
+
})
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
get shortFqn() {
|
|
115
|
+
return `${this.origin.name}:${this.ident}`
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
get localName() {
|
|
119
|
+
return this.ident.string
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
format(format: Formats) {
|
|
123
|
+
return Display.get(this).pretty(format)
|
|
124
|
+
}
|
|
125
|
+
get name() {
|
|
126
|
+
return this.entity.ident.name
|
|
127
|
+
}
|
|
128
|
+
constructor(
|
|
129
|
+
readonly origin: OriginVertex,
|
|
130
|
+
readonly entity: ResourceEntity
|
|
131
|
+
) {
|
|
132
|
+
super(entity)
|
|
133
|
+
}
|
|
134
|
+
}
|