@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
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import { seq } from "doddle"
|
|
2
|
-
import {
|
|
3
|
-
import type {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import
|
|
8
|
-
|
|
9
|
-
/** Expands the resources exported by an
|
|
10
|
-
export type
|
|
11
|
-
[E in Exports as `${E["kind"]["
|
|
2
|
+
import { OriginEntity } from "../../origin"
|
|
3
|
+
import type { ExporterOrigin } from "../../origin/exporter"
|
|
4
|
+
import { ResourceIdent } from "../ident"
|
|
5
|
+
import type { ResourceRef } from "../ref"
|
|
6
|
+
import { K8tsProxyError } from "./error"
|
|
7
|
+
import { ForwardRef } from "./ref"
|
|
8
|
+
|
|
9
|
+
/** Expands the resources exported by an OriginExported into a dictionary of name to FwRef. */
|
|
10
|
+
export type ForwardExports_ByKey<Exports extends ResourceRef = ResourceRef> = {
|
|
11
|
+
[E in Exports as `${E["kind"]["value"]}/${E["ident"]["name"]}`]: ForwardRef<E>
|
|
12
12
|
}
|
|
13
13
|
/**
|
|
14
|
-
* A type describing all resources exported by an {@link
|
|
14
|
+
* A type describing all resources exported by an {@link ExporterOrigin} as forward references.
|
|
15
15
|
*
|
|
16
16
|
* FwRefs can be accessed using a key lookup, using the shorthand of `KindName/name`. For example, a
|
|
17
17
|
* Deployment named "my-app" can be accessed via `exports["Deployment/my-app"]`.
|
|
@@ -27,39 +27,39 @@ export type FwRef_Exports_ByKey<Exports extends Rsc_Ref = Rsc_Ref> = {
|
|
|
27
27
|
* During runtime, this construct can provide references to all resources attached to the Origin,
|
|
28
28
|
* even if they were not explicitly exported.
|
|
29
29
|
*/
|
|
30
|
-
export type
|
|
31
|
-
|
|
30
|
+
export type ForwardExports<Exported extends ResourceRef = any> = ForwardExports_Proxied &
|
|
31
|
+
ForwardExports_ByKey<Exported>
|
|
32
32
|
|
|
33
33
|
/**
|
|
34
|
-
* Creates a forward reference exports construct for the given {@link
|
|
34
|
+
* Creates a forward reference exports construct for the given {@link ExporterOrigin} entity.
|
|
35
35
|
*
|
|
36
36
|
* @param entity
|
|
37
37
|
* @returns
|
|
38
38
|
*/
|
|
39
|
-
export function
|
|
40
|
-
entity:
|
|
41
|
-
):
|
|
42
|
-
const proxied = new
|
|
43
|
-
const handler = new
|
|
39
|
+
export function ForwardExports<Exported extends ResourceRef>(
|
|
40
|
+
entity: ExporterOrigin
|
|
41
|
+
): ForwardExports<Exported> {
|
|
42
|
+
const proxied = new ForwardExports_Proxied(entity)
|
|
43
|
+
const handler = new ForwardExports_ProxyHandler(proxied)
|
|
44
44
|
return new Proxy(proxied, handler) as any
|
|
45
45
|
}
|
|
46
|
-
export namespace
|
|
47
|
-
export function is(obj: any): obj is
|
|
48
|
-
return obj instanceof
|
|
46
|
+
export namespace ForwardExports {
|
|
47
|
+
export function is(obj: any): obj is ForwardExports {
|
|
48
|
+
return obj instanceof ForwardExports_Proxied
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
51
|
|
|
52
52
|
/**
|
|
53
|
-
* A basic core of the {@link
|
|
54
|
-
*
|
|
53
|
+
* A basic core of the {@link ForwardExports} construct, containing information about the underlying
|
|
54
|
+
* {@link ExporterOrigin} entity.
|
|
55
55
|
*/
|
|
56
|
-
export class
|
|
57
|
-
#entity:
|
|
58
|
-
constructor(entity:
|
|
56
|
+
export class ForwardExports_Proxied {
|
|
57
|
+
#entity: ExporterOrigin
|
|
58
|
+
constructor(entity: ExporterOrigin) {
|
|
59
59
|
this.#entity = entity
|
|
60
60
|
}
|
|
61
61
|
|
|
62
|
-
__entity__(act?: (entity:
|
|
62
|
+
__entity__(act?: (entity: ExporterOrigin) => any): ExporterOrigin {
|
|
63
63
|
return this.#entity as any
|
|
64
64
|
}
|
|
65
65
|
|
|
@@ -67,10 +67,10 @@ export class Rsc_FwRef_Exports_Proxied {
|
|
|
67
67
|
if (!other) {
|
|
68
68
|
return false
|
|
69
69
|
}
|
|
70
|
-
if (
|
|
70
|
+
if (ForwardExports.is(other)) {
|
|
71
71
|
return this.#entity.equals(other.#entity)
|
|
72
72
|
}
|
|
73
|
-
if (other instanceof
|
|
73
|
+
if (other instanceof OriginEntity) {
|
|
74
74
|
return other.equals(this.#entity)
|
|
75
75
|
}
|
|
76
76
|
return false
|
|
@@ -78,24 +78,24 @@ export class Rsc_FwRef_Exports_Proxied {
|
|
|
78
78
|
}
|
|
79
79
|
|
|
80
80
|
/**
|
|
81
|
-
* Proxy handler for the {@link
|
|
82
|
-
*
|
|
81
|
+
* Proxy handler for the {@link ForwardExports} construct, providing dynamic access to the resources
|
|
82
|
+
* attached to the underlying {@link ExporterOrigin} entity.
|
|
83
83
|
*/
|
|
84
|
-
class
|
|
85
|
-
constructor(private readonly _subject:
|
|
84
|
+
class ForwardExports_ProxyHandler<Entity extends ExporterOrigin> implements ProxyHandler<Entity> {
|
|
85
|
+
constructor(private readonly _subject: ForwardExports_Proxied) {}
|
|
86
86
|
|
|
87
87
|
get entity() {
|
|
88
88
|
return this._subject["__entity__"]()
|
|
89
89
|
}
|
|
90
90
|
get node() {
|
|
91
|
-
return this.entity.
|
|
91
|
+
return this.entity.__vertex__
|
|
92
92
|
}
|
|
93
93
|
get resourceKinds() {
|
|
94
94
|
return this.node.resourceKinds
|
|
95
95
|
}
|
|
96
96
|
|
|
97
97
|
#createImmutableError(action: string) {
|
|
98
|
-
return new
|
|
98
|
+
return new K8tsProxyError(
|
|
99
99
|
`Tried to ${action} an the exports constructs of ${this.entity}, but it is immutable.`
|
|
100
100
|
)
|
|
101
101
|
}
|
|
@@ -109,7 +109,7 @@ class FwRef_Exports_Handler<Entity extends Origin_Exporter> implements ProxyHand
|
|
|
109
109
|
}
|
|
110
110
|
|
|
111
111
|
getPrototypeOf(_: Entity): object | null {
|
|
112
|
-
return
|
|
112
|
+
return ForwardExports_Proxied.prototype
|
|
113
113
|
}
|
|
114
114
|
|
|
115
115
|
get exported() {
|
|
@@ -135,21 +135,26 @@ class FwRef_Exports_Handler<Entity extends Origin_Exporter> implements ProxyHand
|
|
|
135
135
|
|
|
136
136
|
const resourceKinds = this.resourceKinds
|
|
137
137
|
const refKey = resourceKinds.tryParse(key)
|
|
138
|
-
const clazz = resourceKinds.tryGetClass(key)
|
|
139
138
|
if (refKey == null) {
|
|
140
139
|
return undefined
|
|
141
140
|
}
|
|
142
|
-
|
|
141
|
+
const clazz = resourceKinds.getClass(key)
|
|
142
|
+
|
|
143
|
+
return ForwardRef({
|
|
143
144
|
class: clazz,
|
|
144
|
-
|
|
145
|
+
ident: new ResourceIdent(refKey.kind, {
|
|
145
146
|
name: refKey.name
|
|
146
147
|
}),
|
|
147
148
|
origin: this.entity,
|
|
148
149
|
resolver: this.exported
|
|
149
|
-
.first(
|
|
150
|
+
.first(
|
|
151
|
+
exp =>
|
|
152
|
+
exp.__vertex__.name === refKey.name &&
|
|
153
|
+
exp.__vertex__.kind.equals(refKey.kind)
|
|
154
|
+
)
|
|
150
155
|
.map(x => {
|
|
151
156
|
if (x == null) {
|
|
152
|
-
throw new
|
|
157
|
+
throw new K8tsProxyError(
|
|
153
158
|
`Failed to resolve forward reference to ${refKey} in ${this.entity}.`
|
|
154
159
|
)
|
|
155
160
|
}
|
|
@@ -177,7 +182,7 @@ class FwRef_Exports_Handler<Entity extends Origin_Exporter> implements ProxyHand
|
|
|
177
182
|
}
|
|
178
183
|
|
|
179
184
|
ownKeys(target: Entity): ArrayLike<string | symbol> {
|
|
180
|
-
throw new
|
|
185
|
+
throw new K8tsProxyError(
|
|
181
186
|
`Cannot list all keys of a dynamic exports construct for ${this.entity}.`
|
|
182
187
|
)
|
|
183
188
|
}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
-
import type
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import
|
|
1
|
+
import { seq, type Doddle } from "doddle"
|
|
2
|
+
import { mapValues } from "lodash"
|
|
3
|
+
import { getNiceClassName } from "what-are-you"
|
|
4
|
+
import { K8tsGraphError } from "../../error"
|
|
5
|
+
import { ResourceIdent } from "../ident"
|
|
6
|
+
import type { ResourceRef, ResourceRef_Constructor_For } from "../ref"
|
|
7
|
+
import { K8tsProxyError } from "./error"
|
|
6
8
|
|
|
7
9
|
/**
|
|
8
10
|
* The type of a forward reference to a resource.
|
|
@@ -12,14 +14,14 @@ import type { Rsc_Ref } from "./refable"
|
|
|
12
14
|
* allows for circular references and more flexible resource definitions.
|
|
13
15
|
*
|
|
14
16
|
* The base `FwRef` object only has some basic properties about the resource being referenced, such
|
|
15
|
-
* as its {@link
|
|
16
|
-
* will trigger the resolution of the actual resource via a resolver.
|
|
17
|
+
* as its {@link ResourceIdent} and class type. Accessing any other properties or methods on the
|
|
18
|
+
* `FwRef` will trigger the resolution of the actual resource via a resolver.
|
|
17
19
|
*
|
|
18
20
|
* Because the `FwRef` avoids resolving the actual resource until needed, it won't detect missing
|
|
19
21
|
* resources when the reference is created. Instead, the missing resource will be detected later on,
|
|
20
22
|
* typically until resources are manifested. This makes it a bit harder to debug such issues.
|
|
21
23
|
*/
|
|
22
|
-
export type
|
|
24
|
+
export type ForwardRef<T extends ResourceRef = ResourceRef> = ForwardRef_Proxied<T> & T
|
|
23
25
|
|
|
24
26
|
/**
|
|
25
27
|
* Creates a forward reference to a resource, returning a proxy that defers resource resolution
|
|
@@ -28,46 +30,71 @@ export type FwRef<T extends Rsc_Ref = Rsc_Ref> = FwRef_Proxied<T> & T
|
|
|
28
30
|
* @param props The properties of the forward reference.
|
|
29
31
|
* @returns The forward reference proxy.
|
|
30
32
|
*/
|
|
31
|
-
export function
|
|
32
|
-
props:
|
|
33
|
-
):
|
|
34
|
-
const core = new
|
|
35
|
-
return new Proxy(core, new
|
|
33
|
+
export function ForwardRef<Referenced extends ResourceRef>(
|
|
34
|
+
props: ForwardRef_Props<Referenced>
|
|
35
|
+
): ForwardRef<Referenced> {
|
|
36
|
+
const core = new ForwardRef_Proxied(props)
|
|
37
|
+
return new Proxy(core, new ForwardRef_ProxyHandler(core)) as ForwardRef<Referenced>
|
|
36
38
|
}
|
|
37
|
-
export namespace
|
|
38
|
-
export function is(obj: any): obj is
|
|
39
|
-
return
|
|
39
|
+
export namespace ForwardRef {
|
|
40
|
+
export function is(obj: any): obj is ForwardRef {
|
|
41
|
+
return ForwardRef_Proxied.is(obj)
|
|
40
42
|
}
|
|
41
43
|
}
|
|
42
44
|
/** Properties for creating a forward reference to a resource. */
|
|
43
|
-
export interface
|
|
45
|
+
export interface ForwardRef_Props<Referenced extends ResourceRef> {
|
|
44
46
|
/** The class constructor of the referenced resource. */
|
|
45
|
-
readonly class?:
|
|
47
|
+
readonly class?: ResourceRef_Constructor_For<Referenced>
|
|
46
48
|
/** The reference key identifying the referenced resource. */
|
|
47
|
-
readonly
|
|
49
|
+
readonly ident: ResourceIdent
|
|
48
50
|
readonly origin: object
|
|
49
51
|
readonly resolver: Doddle<Referenced>
|
|
50
52
|
}
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
53
|
+
const hiddenProperties = {
|
|
54
|
+
is(this: ForwardRef_Proxied, clsOrKind: any): boolean {
|
|
55
|
+
if (typeof clsOrKind === "function") {
|
|
56
|
+
return this.clazz.prototype instanceof clsOrKind || this instanceof clsOrKind
|
|
57
|
+
}
|
|
58
|
+
return this.kind.equals(clsOrKind)
|
|
59
|
+
},
|
|
60
|
+
assert(this: ForwardRef_Proxied, cls: abstract new (...args: any[]) => any): any {
|
|
61
|
+
if (hiddenProperties.is.call(this, cls)) {
|
|
62
|
+
return this as any
|
|
63
|
+
}
|
|
64
|
+
throw new K8tsGraphError(
|
|
65
|
+
`This Resource ${this} is not compatible with the class ${getNiceClassName(cls)}.`
|
|
66
|
+
)
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
class ForwardRef_Proxied<To extends ResourceRef = ResourceRef> {
|
|
70
|
+
readonly #props: ForwardRef_Props<To>
|
|
71
|
+
constructor(props: ForwardRef_Props<To>) {
|
|
55
72
|
this.#props = props
|
|
73
|
+
Object.defineProperties(
|
|
74
|
+
this,
|
|
75
|
+
mapValues(hiddenProperties, prop => ({ value: prop }))
|
|
76
|
+
)
|
|
56
77
|
}
|
|
57
78
|
|
|
58
79
|
get name() {
|
|
59
|
-
return this.#props.
|
|
80
|
+
return this.#props.ident.name
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
get clazz() {
|
|
84
|
+
return (
|
|
85
|
+
this.#props.class ?? (require("../top").ResourceTop as ResourceRef_Constructor_For<To>)
|
|
86
|
+
)
|
|
60
87
|
}
|
|
61
88
|
|
|
62
89
|
get namespace() {
|
|
63
|
-
return this.__pull__().namespace // The $props.
|
|
90
|
+
return this.__pull__().ident.namespace // The $props.ident won't have a namespace
|
|
64
91
|
}
|
|
65
92
|
|
|
66
93
|
get kind() {
|
|
67
|
-
return this.#props.
|
|
94
|
+
return this.#props.ident.kind
|
|
68
95
|
}
|
|
69
96
|
|
|
70
|
-
static is(obj: any): obj is
|
|
97
|
+
static is(obj: any): obj is ForwardRef {
|
|
71
98
|
return obj && typeof obj === "object" && "__reference_props__" in obj
|
|
72
99
|
}
|
|
73
100
|
|
|
@@ -80,7 +107,7 @@ class FwRef_Proxied<To extends Rsc_Ref> {
|
|
|
80
107
|
}
|
|
81
108
|
|
|
82
109
|
get key() {
|
|
83
|
-
return new
|
|
110
|
+
return new ResourceIdent(this.kind, {
|
|
84
111
|
name: this.name,
|
|
85
112
|
namespace: this.namespace
|
|
86
113
|
})
|
|
@@ -90,27 +117,29 @@ class FwRef_Proxied<To extends Rsc_Ref> {
|
|
|
90
117
|
if (!other) {
|
|
91
118
|
return false
|
|
92
119
|
}
|
|
93
|
-
//
|
|
120
|
+
// ResourceTop has a key property, but ResourceChild doesn't
|
|
94
121
|
// However in that case, the kind will be different anyway
|
|
95
122
|
// since FwRefs are just for top resources.
|
|
96
123
|
return this.key.equals(other.key)
|
|
97
124
|
}
|
|
98
125
|
}
|
|
99
126
|
|
|
100
|
-
class
|
|
127
|
+
class ForwardRef_ProxyHandler<T extends ResourceRef> implements ProxyHandler<T> {
|
|
101
128
|
get _props() {
|
|
102
129
|
return this._subject["__reference_props__"]()
|
|
103
130
|
}
|
|
104
|
-
constructor(private readonly _subject:
|
|
131
|
+
constructor(private readonly _subject: ForwardRef_Proxied<T>) {}
|
|
105
132
|
|
|
106
133
|
get(target: T, prop: PropertyKey) {
|
|
107
134
|
const { _props, _subject } = this
|
|
108
135
|
if (prop === "constructor") {
|
|
109
136
|
return this._props.class
|
|
110
137
|
}
|
|
138
|
+
|
|
111
139
|
if (Reflect.has(_subject, prop)) {
|
|
112
140
|
return Reflect.get(_subject, prop)
|
|
113
141
|
}
|
|
142
|
+
|
|
114
143
|
const resource = _subject["__pull__"]() as any
|
|
115
144
|
const result = Reflect.get(resource, prop)
|
|
116
145
|
if (typeof result === "function") {
|
|
@@ -119,8 +148,8 @@ class FwRef_Handler<T extends Rsc_Ref> implements ProxyHandler<T> {
|
|
|
119
148
|
return result
|
|
120
149
|
}
|
|
121
150
|
getPrototypeOf(target: T) {
|
|
122
|
-
const
|
|
123
|
-
return this._props.class?.prototype ??
|
|
151
|
+
const RscTop = require("../top").ResourceTop
|
|
152
|
+
return this._props.class?.prototype ?? RscTop.prototype
|
|
124
153
|
}
|
|
125
154
|
has(target: T, prop: PropertyKey) {
|
|
126
155
|
const { _props, _subject } = this
|
|
@@ -142,19 +171,21 @@ class FwRef_Handler<T extends Rsc_Ref> implements ProxyHandler<T> {
|
|
|
142
171
|
return resourceDesc
|
|
143
172
|
}
|
|
144
173
|
get referant() {
|
|
145
|
-
return this._subject["__reference_props__"]().
|
|
174
|
+
return this._subject["__reference_props__"]().ident.string
|
|
146
175
|
}
|
|
147
176
|
#createImmutableError(action: string) {
|
|
148
|
-
return new
|
|
177
|
+
return new K8tsProxyError(
|
|
149
178
|
`Tried to ${action} a forward reference to ${this.referant}, but it cannot be modified.`
|
|
150
179
|
)
|
|
151
180
|
}
|
|
152
181
|
|
|
153
182
|
defineProperty(_: any, property: string | symbol, desc: PropertyDescriptor): boolean {
|
|
154
|
-
|
|
183
|
+
const pulled = this._props.resolver.pull() as any
|
|
184
|
+
return Reflect.defineProperty(pulled, property, desc)
|
|
155
185
|
}
|
|
156
186
|
deleteProperty(_: T, p: string | symbol): boolean {
|
|
157
|
-
|
|
187
|
+
const pulled = this._props.resolver.pull() as any
|
|
188
|
+
return Reflect.deleteProperty(pulled, p)
|
|
158
189
|
}
|
|
159
190
|
preventExtensions(): boolean {
|
|
160
191
|
return true
|
|
@@ -163,13 +194,18 @@ class FwRef_Handler<T extends Rsc_Ref> implements ProxyHandler<T> {
|
|
|
163
194
|
return false
|
|
164
195
|
}
|
|
165
196
|
set(_: T, p: string | symbol): boolean {
|
|
166
|
-
|
|
197
|
+
const pulled = this._props.resolver.pull() as any
|
|
198
|
+
return Reflect.set(pulled, p, (_ as any)[p])
|
|
167
199
|
}
|
|
168
200
|
ownKeys(): ArrayLike<string | symbol> {
|
|
169
201
|
const pulled = this._props.resolver.pull() as any
|
|
170
|
-
|
|
202
|
+
const keys1 = Reflect.ownKeys(this._subject)
|
|
203
|
+
const keys2 = Reflect.ownKeys(pulled)
|
|
204
|
+
const uniq = seq(keys1).concat(keys2).uniq().toArray()
|
|
205
|
+
return uniq.pull()
|
|
171
206
|
}
|
|
172
207
|
setPrototypeOf(): boolean {
|
|
173
|
-
|
|
208
|
+
const pulled = this._props.resolver.pull() as any
|
|
209
|
+
return Reflect.setPrototypeOf(pulled, pulled)
|
|
174
210
|
}
|
|
175
211
|
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export interface GVK_Like {
|
|
2
|
+
readonly value: string
|
|
3
|
+
readonly url: string
|
|
4
|
+
readonly dns: string
|
|
5
|
+
readonly parent: GVK_Like | null
|
|
6
|
+
equals(other: any): boolean
|
|
7
|
+
}
|
|
8
|
+
export abstract class Gvk_Base<Url extends string = string> implements GVK_Like {
|
|
9
|
+
constructor(readonly url: Url) {}
|
|
10
|
+
abstract get value(): string
|
|
11
|
+
abstract get parent(): Gvk_Base | null
|
|
12
|
+
get parts(): Gvk_Base[] {
|
|
13
|
+
const parts: Gvk_Base[] = []
|
|
14
|
+
let curr: Gvk_Base | null = this
|
|
15
|
+
while (curr) {
|
|
16
|
+
parts.unshift(curr)
|
|
17
|
+
curr = curr.parent
|
|
18
|
+
}
|
|
19
|
+
return parts
|
|
20
|
+
}
|
|
21
|
+
get dns() {
|
|
22
|
+
return this.parts
|
|
23
|
+
.map(p => p.value)
|
|
24
|
+
.filter(Boolean)
|
|
25
|
+
.join(".")
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
equals(other: any) {
|
|
29
|
+
if (other instanceof Gvk_Base) {
|
|
30
|
+
return this.url === other.url
|
|
31
|
+
}
|
|
32
|
+
if (typeof other === "string") {
|
|
33
|
+
return this.url === other
|
|
34
|
+
}
|
|
35
|
+
return false
|
|
36
|
+
}
|
|
37
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { JoinIfNotEmpty } from "../../../../expressions"
|
|
2
|
+
import { Gvk_Base } from "./0-base"
|
|
3
|
+
import { Gvk_Version } from "./2=version"
|
|
4
|
+
import type { GVK_sVersion } from "./strings"
|
|
5
|
+
export class Gvk_Group<Group extends string = string> extends Gvk_Base<Group> {
|
|
6
|
+
get parts() {
|
|
7
|
+
return [this]
|
|
8
|
+
}
|
|
9
|
+
get parent() {
|
|
10
|
+
return null
|
|
11
|
+
}
|
|
12
|
+
get value(): Group {
|
|
13
|
+
return this.url
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
version<Version extends GVK_sVersion>(version: Version) {
|
|
17
|
+
const newUrl = [this.url, version].filter(Boolean).join("/")
|
|
18
|
+
return new Gvk_Version(newUrl as JoinIfNotEmpty<Group, "/", Version>)
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
export function group<ApiGroup extends string>(apiGroup: ApiGroup) {
|
|
22
|
+
return new Gvk_Group(apiGroup)
|
|
23
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Gvk_Base } from "./0-base"
|
|
2
|
+
import { group, Gvk_Group } from "./1-group"
|
|
3
|
+
import { Gvk } from "./3-gvk"
|
|
4
|
+
import type { GVK_sVersion } from "./strings"
|
|
5
|
+
|
|
6
|
+
export class Gvk_Version<Url extends string> extends Gvk_Base<Url> {
|
|
7
|
+
get parent() {
|
|
8
|
+
return new Gvk_Group(this.url.split("/")[0] as string)
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
get value(): Url extends `${string}/${infer V}` ? V : Url extends `v${string}` ? Url : never {
|
|
12
|
+
return this.url.split("/")[1] as any
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
kind<Kind extends string>(kind: Kind, customPlural?: string) {
|
|
16
|
+
return new Gvk(`${this.url}/${kind}` as `${Url}/${Kind}`, customPlural)
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
export function version<ApiVersion extends GVK_sVersion>(apiVersion: ApiVersion) {
|
|
20
|
+
return group("").version(apiVersion)
|
|
21
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { ResourceIdent, type ResourceIdent_Options } from "../ident"
|
|
2
|
+
import { Gvk_Base } from "./0-base"
|
|
3
|
+
import { Gvk_Version } from "./2=version"
|
|
4
|
+
import { Gvk_SubKind } from "./4-subkind"
|
|
5
|
+
|
|
6
|
+
export class Gvk<Url extends string = string> extends Gvk_Base<Url> {
|
|
7
|
+
constructor(
|
|
8
|
+
url: Url,
|
|
9
|
+
private _customPlural?: string
|
|
10
|
+
) {
|
|
11
|
+
super(url)
|
|
12
|
+
}
|
|
13
|
+
get parent() {
|
|
14
|
+
const stringParts = this.url.split("/").slice(0, -1)
|
|
15
|
+
return new Gvk_Version<string>(stringParts.join("/") as string)
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
get plural() {
|
|
19
|
+
return this._customPlural ?? pluralize(this.value)
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
refKey<Name extends string>(options: ResourceIdent_Options<Name>) {
|
|
23
|
+
return new ResourceIdent<this, Name>(this as any, options)
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
get dns() {
|
|
27
|
+
const parents = this.parent.parts.map(x => x.value)
|
|
28
|
+
parents.push(this.plural)
|
|
29
|
+
return parents.join(".")
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
get value(): Url extends `${string}/${string}/${infer K}`
|
|
33
|
+
? K
|
|
34
|
+
: Url extends `v${string}/${infer K}`
|
|
35
|
+
? K
|
|
36
|
+
: never {
|
|
37
|
+
return this.url.split("/").at(-1) as any
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
subkind<SubKind extends string>(subKind: SubKind) {
|
|
41
|
+
return new Gvk_SubKind<`${Url}.${SubKind}`>(`${this.url}.${subKind}` as `${Url}.${SubKind}`)
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export function pluralize(word: string): string {
|
|
46
|
+
if (["s", "sh", "ch", "x", "z", "ro"].some(suffix => word.endsWith(suffix))) {
|
|
47
|
+
return `${word}es`
|
|
48
|
+
}
|
|
49
|
+
if (["ay", "ey", "iy", "oy", "uy"].some(suffix => word.endsWith(suffix))) {
|
|
50
|
+
return `${word}s`
|
|
51
|
+
}
|
|
52
|
+
if (word.endsWith("y")) {
|
|
53
|
+
return `${word.slice(0, -1)}ies`
|
|
54
|
+
}
|
|
55
|
+
return `${word}s`
|
|
56
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Gvk_Base } from "./0-base"
|
|
2
|
+
import { Gvk } from "./3-gvk"
|
|
3
|
+
|
|
4
|
+
export class Gvk_SubKind<Url extends string = string> extends Gvk_Base<Url> {
|
|
5
|
+
get parent() {
|
|
6
|
+
const [group, version, kind] = this.url.split("/")
|
|
7
|
+
return new Gvk<`${string}/${string}`>(
|
|
8
|
+
`${group}/${version}/${kind}` as `${string}/${string}`
|
|
9
|
+
)
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
get value(): Url extends `${string}.${infer Sk}` ? Sk : never {
|
|
13
|
+
return this.url.split("/").at(-1) as any
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
subkind<SubKind extends string>(subKind: SubKind) {
|
|
17
|
+
return new Gvk_SubKind<`${Url}.${SubKind}`>(`${this.url}.${subKind}` as `${Url}.${SubKind}`)
|
|
18
|
+
}
|
|
19
|
+
}
|