@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,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { UnitDimension } from "./dimension"
|
|
2
2
|
|
|
3
3
|
export type G = `${number}G`
|
|
4
4
|
export const G = (n: number) => `${n}G` as G
|
|
@@ -36,17 +36,24 @@ export const s = (n: number) => `${n}s` as s
|
|
|
36
36
|
export type ms = `${number}ms`
|
|
37
37
|
export const ms = (n: number) => `${n}ms` as ms
|
|
38
38
|
|
|
39
|
-
export
|
|
40
|
-
|
|
41
|
-
export namespace Unit {
|
|
39
|
+
export namespace Units {
|
|
42
40
|
export type Data = M | G | T | K | Mi | Gi | Ki
|
|
43
41
|
export type Cpu = m
|
|
44
42
|
export type Time = m | h | d | s | ms
|
|
45
43
|
export type Any = Data | Cpu | Time
|
|
46
44
|
|
|
47
|
-
export const Cpu =
|
|
45
|
+
export const Cpu = new UnitDimension({
|
|
46
|
+
name: "cpu",
|
|
47
|
+
units: ["m"]
|
|
48
|
+
})
|
|
48
49
|
|
|
49
|
-
export const Data =
|
|
50
|
+
export const Data = new UnitDimension({
|
|
51
|
+
name: "data",
|
|
52
|
+
units: ["M", "G", "T", "K", "Mi", "Gi", "Ki"]
|
|
53
|
+
})
|
|
50
54
|
|
|
51
|
-
export const Time =
|
|
55
|
+
export const Time = new UnitDimension({
|
|
56
|
+
name: "time",
|
|
57
|
+
units: ["m", "h", "d", "s", "ms"]
|
|
58
|
+
})
|
|
52
59
|
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { type Parjser } from "parjs"
|
|
2
|
+
import { map } from "parjs/combinators"
|
|
3
|
+
import { K8tsQuantityError } from "../error"
|
|
4
|
+
import { pValueUnit } from "./parser"
|
|
5
|
+
import type { Reqs_sUnitTerm } from "./types"
|
|
6
|
+
import { type Dimension_Validator, getValidator } from "./validator"
|
|
7
|
+
import { UnitValue } from "./value"
|
|
8
|
+
|
|
9
|
+
export interface Dimension_Props_Any {
|
|
10
|
+
name: string
|
|
11
|
+
units: "any"
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export interface Dimension_Props_Explicit<Units extends string> {
|
|
15
|
+
name: string
|
|
16
|
+
units: [Units, ...Units[]]
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export type Dimension_Props<Units extends string = string> =
|
|
20
|
+
| Dimension_Props_Any
|
|
21
|
+
| Dimension_Props_Explicit<Units>
|
|
22
|
+
|
|
23
|
+
export class UnitDimension<const _Units extends string = string> {
|
|
24
|
+
readonly parser: Parjser<UnitValue<_Units>>
|
|
25
|
+
private _validate: Dimension_Validator<_Units>
|
|
26
|
+
constructor(readonly _props: Dimension_Props<_Units>) {
|
|
27
|
+
this._validate = getValidator(_props)
|
|
28
|
+
this.parser = pValueUnit.pipe(
|
|
29
|
+
map(({ value, unit }) => {
|
|
30
|
+
this._validate(unit)
|
|
31
|
+
|
|
32
|
+
return new UnitValue<_Units>(unit as any, value, this._props.name)
|
|
33
|
+
})
|
|
34
|
+
)
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
parse(input: Reqs_sUnitTerm<_Units>) {
|
|
38
|
+
const pUnitValue = this.parser
|
|
39
|
+
const result = pUnitValue.parse(input)
|
|
40
|
+
if (result.kind !== "OK") {
|
|
41
|
+
throw new K8tsQuantityError(`Failed to parse ${this._props}`, {
|
|
42
|
+
more: result.trace.toString()
|
|
43
|
+
})
|
|
44
|
+
}
|
|
45
|
+
return result.value
|
|
46
|
+
}
|
|
47
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { int, letter } from "parjs"
|
|
2
|
+
import { many, map, stringify, then } from "parjs/combinators"
|
|
3
|
+
|
|
4
|
+
export const pUnit = letter().pipe(many(), stringify())
|
|
5
|
+
export const pValueUnit = int().pipe(
|
|
6
|
+
then(pUnit),
|
|
7
|
+
map(arr => {
|
|
8
|
+
const [value, unit] = arr
|
|
9
|
+
return { value, unit }
|
|
10
|
+
})
|
|
11
|
+
)
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type Reqs_sUnitTerm<_Unit extends string> = `${number}${_Unit}` | "?"
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { K8tsQuantityError } from "../error"
|
|
2
|
+
import type { Dimension_Props } from "./dimension"
|
|
3
|
+
|
|
4
|
+
export type Dimension_Validator<Units extends string> = (unit: string) => asserts unit is Units
|
|
5
|
+
export function getValidator<Units extends string>(
|
|
6
|
+
props: Dimension_Props<Units>
|
|
7
|
+
): Dimension_Validator<Units> {
|
|
8
|
+
if (props.units === "any") {
|
|
9
|
+
return (_unit: string) => true
|
|
10
|
+
}
|
|
11
|
+
const validUnits = new Set(props.units)
|
|
12
|
+
return (unit: string) => {
|
|
13
|
+
if (!validUnits.has(unit as any)) {
|
|
14
|
+
throw new K8tsQuantityError(`Unit ${unit} is not a valid unit of type ${props.name}`)
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export class UnitValue<_Unit extends string = string> {
|
|
2
|
+
constructor(
|
|
3
|
+
readonly unit: _Unit,
|
|
4
|
+
readonly value: number,
|
|
5
|
+
readonly type: string
|
|
6
|
+
) {}
|
|
7
|
+
|
|
8
|
+
get str() {
|
|
9
|
+
return `${this.value}${this.unit}`
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
get val() {
|
|
13
|
+
if (!this.unit) {
|
|
14
|
+
return +this.value
|
|
15
|
+
}
|
|
16
|
+
return this.str
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
toString() {
|
|
20
|
+
return this.str
|
|
21
|
+
}
|
|
22
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export interface CdkQuanitity<T extends string | number = string | number> {
|
|
2
|
+
value: T
|
|
3
|
+
}
|
|
4
|
+
export function isCdkQuanitity<T extends string | number>(input: any): input is CdkQuanitity<T> {
|
|
5
|
+
return (
|
|
6
|
+
typeof input === "object" &&
|
|
7
|
+
input !== null &&
|
|
8
|
+
"value" in input &&
|
|
9
|
+
Object.keys(input).length === 1
|
|
10
|
+
)
|
|
11
|
+
}
|
|
12
|
+
export function toCdkQuantity<T extends string | number | undefined>(
|
|
13
|
+
input: T
|
|
14
|
+
): T extends undefined ? undefined : CdkQuanitity<Exclude<T, undefined>> {
|
|
15
|
+
return { value: input } as any
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export type SkipUndefinedKeys<R extends Record<string, any>> = {
|
|
19
|
+
[K in keyof R as R[K] extends undefined ? never : K]: CdkQuanitity<R[K]>
|
|
20
|
+
}
|
|
21
|
+
export type NormEmptyObjectToUndefined<T> = T extends Record<string, never> ? undefined : T
|
|
22
|
+
|
|
23
|
+
export function toCdkQuantityRecord<R extends Record<string, any>>(
|
|
24
|
+
input: R
|
|
25
|
+
): NormEmptyObjectToUndefined<SkipUndefinedKeys<R>> {
|
|
26
|
+
const output: any = {}
|
|
27
|
+
for (const key in input) {
|
|
28
|
+
const quantity = toCdkQuantity(input[key])
|
|
29
|
+
if (quantity !== undefined) {
|
|
30
|
+
output[key] = quantity
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
if (Object.keys(output).length === 0) {
|
|
34
|
+
return undefined as any
|
|
35
|
+
}
|
|
36
|
+
return output
|
|
37
|
+
}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
1
|
+
import { K8tsGraphError } from "../../../core/graph/error"
|
|
2
|
+
import { display } from "../../../utils/mixin/display"
|
|
3
|
+
import { K8tsWorkloadToolsError } from "../error"
|
|
4
|
+
import type { CmdLine_Value } from "./types"
|
|
4
5
|
|
|
5
|
-
export class
|
|
6
|
+
export class CmdLine_Term_Flag {
|
|
6
7
|
constructor(readonly key: string) {}
|
|
7
8
|
|
|
8
9
|
str(joiner: string) {
|
|
@@ -18,16 +19,16 @@ export class Cli_Flag {
|
|
|
18
19
|
}
|
|
19
20
|
}
|
|
20
21
|
|
|
21
|
-
export type
|
|
22
|
+
export type CmdLine_sTermJoiner = "=" | " "
|
|
22
23
|
|
|
23
|
-
@
|
|
24
|
+
@display({
|
|
24
25
|
simple: s => s.str("=")
|
|
25
26
|
})
|
|
26
|
-
export class
|
|
27
|
+
export class CmdLine_Term_Value {
|
|
27
28
|
constructor(
|
|
28
29
|
private readonly key: string,
|
|
29
30
|
private readonly overrideTermJoiner: string | undefined,
|
|
30
|
-
private readonly value:
|
|
31
|
+
private readonly value: CmdLine_Value
|
|
31
32
|
) {}
|
|
32
33
|
|
|
33
34
|
get isMissing() {
|
|
@@ -36,7 +37,7 @@ export class Cli_OptionValueTerm {
|
|
|
36
37
|
|
|
37
38
|
private _valueStr() {
|
|
38
39
|
if (this.value === null) {
|
|
39
|
-
throw new
|
|
40
|
+
throw new K8tsWorkloadToolsError("Shouldn't be here")
|
|
40
41
|
}
|
|
41
42
|
if (this.value === "") {
|
|
42
43
|
return `""`
|
|
@@ -46,7 +47,7 @@ export class Cli_OptionValueTerm {
|
|
|
46
47
|
|
|
47
48
|
str(joiner: string) {
|
|
48
49
|
if (this.value === undefined) {
|
|
49
|
-
throw new
|
|
50
|
+
throw new K8tsGraphError("CliOptionValue cannot be undefined, use null instead")
|
|
50
51
|
}
|
|
51
52
|
|
|
52
53
|
return [this.key, this._valueStr()].join(this.overrideTermJoiner ?? joiner)
|
|
@@ -61,7 +62,7 @@ export class Cli_OptionValueTerm {
|
|
|
61
62
|
}
|
|
62
63
|
}
|
|
63
64
|
|
|
64
|
-
export class
|
|
65
|
+
export class CmdLine_Term_Verbatim {
|
|
65
66
|
constructor(readonly value: string) {}
|
|
66
67
|
|
|
67
68
|
str(joiner: string) {
|
|
@@ -77,4 +78,4 @@ export class Cli_VerbatimTerm {
|
|
|
77
78
|
}
|
|
78
79
|
}
|
|
79
80
|
|
|
80
|
-
export type
|
|
81
|
+
export type CmdLine_Term = CmdLine_Term_Flag | CmdLine_Term_Value | CmdLine_Term_Verbatim
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import { seq } from "doddle"
|
|
2
|
+
import { merge } from "lodash"
|
|
3
|
+
import { display } from "../../../utils/mixin/display"
|
|
4
|
+
import {
|
|
5
|
+
CmdLine_Term_Flag,
|
|
6
|
+
CmdLine_Term_Value,
|
|
7
|
+
CmdLine_Term_Verbatim,
|
|
8
|
+
type CmdLine_sTermJoiner,
|
|
9
|
+
type CmdLine_Term
|
|
10
|
+
} from "./cli-term"
|
|
11
|
+
import type { CmdLine_Args, CmdLine_sArg } from "./types"
|
|
12
|
+
|
|
13
|
+
export interface CmdLine_Options {
|
|
14
|
+
joiner: CmdLine_sTermJoiner
|
|
15
|
+
}
|
|
16
|
+
export interface Cmd {
|
|
17
|
+
flag(...flags: CmdLine_sArg[]): Cmd
|
|
18
|
+
verbatim(...values: string[]): Cmd
|
|
19
|
+
options(args: CmdLine_Args): Cmd
|
|
20
|
+
joiner(joiner: CmdLine_sTermJoiner): Cmd
|
|
21
|
+
toArray(): string[]
|
|
22
|
+
toString(): string
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
const defaultOptions: CmdLine_Options = {
|
|
26
|
+
joiner: " "
|
|
27
|
+
}
|
|
28
|
+
export function Cmd(executable: string) {
|
|
29
|
+
return new _CmdLine(executable, [], {
|
|
30
|
+
joiner: " "
|
|
31
|
+
}) as Cmd
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
@display({
|
|
35
|
+
simple: s => s.toString()
|
|
36
|
+
})
|
|
37
|
+
class _CmdLine implements Cmd {
|
|
38
|
+
constructor(
|
|
39
|
+
readonly executable: string,
|
|
40
|
+
private readonly _terms: CmdLine_Term[],
|
|
41
|
+
private readonly _options: CmdLine_Options
|
|
42
|
+
) {}
|
|
43
|
+
|
|
44
|
+
private _withArgs(f: (args: CmdLine_Term[]) => CmdLine_Term[]) {
|
|
45
|
+
return new _CmdLine(this.executable, f(this._terms), this._options)
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
private _withOptions(f: (options: CmdLine_Options) => CmdLine_Options) {
|
|
49
|
+
return new _CmdLine(this.executable, this._terms, f(this._options))
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
flag(...flags: CmdLine_sArg[]) {
|
|
53
|
+
const flagTerms = flags.map(flag => new CmdLine_Term_Flag(flag))
|
|
54
|
+
return this._withArgs(terms => terms.concat(flagTerms))
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
verbatim(...values: string[]) {
|
|
58
|
+
const verbatimTerms = values.map(value => new CmdLine_Term_Verbatim(value))
|
|
59
|
+
return this._withArgs(terms => terms.concat(verbatimTerms))
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
options(args: CmdLine_Args) {
|
|
63
|
+
const map = new Map(Object.entries(args)) as Map<CmdLine_sArg, string>
|
|
64
|
+
const optionTerms = seq(map)
|
|
65
|
+
.map(([key, value]) => {
|
|
66
|
+
let joiner: string | undefined
|
|
67
|
+
const lastChar = key.at(-1)
|
|
68
|
+
if (lastChar === "=") {
|
|
69
|
+
joiner = "="
|
|
70
|
+
key = key.slice(0, -1) as CmdLine_sArg
|
|
71
|
+
} else if (lastChar === " ") {
|
|
72
|
+
joiner = " "
|
|
73
|
+
key = key.slice(0, -1) as CmdLine_sArg
|
|
74
|
+
}
|
|
75
|
+
return new CmdLine_Term_Value(key, joiner, value)
|
|
76
|
+
})
|
|
77
|
+
.toArray()
|
|
78
|
+
.pull()
|
|
79
|
+
return this._withArgs(terms => terms.concat(optionTerms))
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
joiner(joiner: CmdLine_sTermJoiner) {
|
|
83
|
+
return this._withOptions(options => merge({}, options, { joiner: joiner }))
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
toArray() {
|
|
87
|
+
const terms = seq(this._terms)
|
|
88
|
+
.filter(x => !x.isMissing)
|
|
89
|
+
.flatMap(term => {
|
|
90
|
+
return term.arr(this._options.joiner)
|
|
91
|
+
})
|
|
92
|
+
.toArray()
|
|
93
|
+
.pull()
|
|
94
|
+
if (this.executable !== "") {
|
|
95
|
+
terms.unshift(this.executable)
|
|
96
|
+
}
|
|
97
|
+
return terms
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
toString() {
|
|
101
|
+
return this.toArray().join(" ")
|
|
102
|
+
}
|
|
103
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type
|
|
2
|
-
export type
|
|
3
|
-
export type
|
|
4
|
-
export type
|
|
1
|
+
export type CmdLine_sArg = `-${string}` | `--${string}`
|
|
2
|
+
export type CmdLine_sOption = `${CmdLine_sArg}=` | `${CmdLine_sArg} ` | CmdLine_sArg
|
|
3
|
+
export type CmdLine_Value = string | number | boolean | null | `${string}` | ` ${string}`
|
|
4
|
+
export type CmdLine_Args = Record<CmdLine_sOption, CmdLine_Value>
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
export type Cron_Divisor = number
|
|
2
|
+
export type Cron_Element_Simple = `${number}` | `*`
|
|
3
|
+
export type Cron_Element_Divided = `${Cron_Element_Simple}/${Cron_Divisor}`
|
|
4
|
+
type Cron_Element_RangeItem = Cron_Element_Simple | Cron_Element_Divided
|
|
5
|
+
export type Cron_Element_Range = `${Cron_Element_RangeItem}-${string}` &
|
|
6
|
+
`${string}-${Cron_Element_RangeItem}`
|
|
7
|
+
type Cron_Element_ListItem = Cron_Element_Simple | Cron_Element_Divided | Cron_Element_Range
|
|
8
|
+
export type Cron_Element_List<Es extends Cron_Element_ListItem[] = Cron_Element_ListItem[]> =
|
|
9
|
+
Es extends []
|
|
10
|
+
? ""
|
|
11
|
+
: Es extends [
|
|
12
|
+
infer E extends Cron_Element_ListItem,
|
|
13
|
+
...infer Rest extends Cron_Element_ListItem[]
|
|
14
|
+
]
|
|
15
|
+
? `${E},${Cron_Element_List<Rest>}`
|
|
16
|
+
: never
|
|
17
|
+
|
|
18
|
+
export type Cron_Element_Real =
|
|
19
|
+
| Cron_Element_Simple
|
|
20
|
+
| Cron_Element_Divided
|
|
21
|
+
| Cron_Element_Range
|
|
22
|
+
| Cron_Element_List
|
|
23
|
+
export type Cron_Element = Cron_Element_Real | true | number | false
|
|
24
|
+
export type Cron_Tuple<
|
|
25
|
+
Minute extends Cron_Element = Cron_Element,
|
|
26
|
+
Hour extends Cron_Element = Cron_Element,
|
|
27
|
+
DayOfMonth extends Cron_Element = Cron_Element,
|
|
28
|
+
Month extends Cron_Element = Cron_Element,
|
|
29
|
+
DayOfWeek extends Cron_Element = Cron_Element
|
|
30
|
+
> = [minute: Minute, hour: Hour, dayOfMonth: DayOfMonth, month: Month, dayOfWeek: DayOfWeek]
|
|
31
|
+
|
|
32
|
+
export type Cron_Record<
|
|
33
|
+
Minute extends Cron_Element = Cron_Element,
|
|
34
|
+
Hour extends Cron_Element = Cron_Element,
|
|
35
|
+
DayOfMonth extends Cron_Element = Cron_Element,
|
|
36
|
+
Month extends Cron_Element = Cron_Element,
|
|
37
|
+
DayOfWeek extends Cron_Element = Cron_Element
|
|
38
|
+
> = {
|
|
39
|
+
minute: Minute
|
|
40
|
+
hour: Hour
|
|
41
|
+
dayOfMonth: DayOfMonth
|
|
42
|
+
month: Month
|
|
43
|
+
dayOfWeek: DayOfWeek
|
|
44
|
+
}
|
|
45
|
+
export type Cron_RecordToTuple<T extends Cron_Record> = Cron_Tuple<
|
|
46
|
+
T["minute"],
|
|
47
|
+
T["hour"],
|
|
48
|
+
T["dayOfMonth"],
|
|
49
|
+
T["month"],
|
|
50
|
+
T["dayOfWeek"]
|
|
51
|
+
>
|
|
52
|
+
export type Cron_RecordFromTuple<T extends Cron_Tuple> = {
|
|
53
|
+
minute: T[0]
|
|
54
|
+
hour: T[1]
|
|
55
|
+
dayOfMonth: T[2]
|
|
56
|
+
month: T[3]
|
|
57
|
+
dayOfWeek: T[4]
|
|
58
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { K8tsGraphError } from "../../../core/graph/error"
|
|
2
|
+
import type { Cron_Record, Cron_RecordFromTuple, Cron_Tuple } from "./parse-type"
|
|
3
|
+
import { CronStanza } from "./stanza"
|
|
4
|
+
|
|
5
|
+
function shorthand<Tpl extends Cron_Tuple>(...items: Tpl): CronStanza<Cron_RecordFromTuple<Tpl>> {
|
|
6
|
+
return CronStanza<Cron_RecordFromTuple<Tpl>>({
|
|
7
|
+
minute: items[0],
|
|
8
|
+
hour: items[1],
|
|
9
|
+
dayOfMonth: items[2],
|
|
10
|
+
month: items[3],
|
|
11
|
+
dayOfWeek: items[4]
|
|
12
|
+
})
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export namespace Cron {
|
|
16
|
+
export function from<R extends Cron_Record>(record: R): CronStanza<R> {
|
|
17
|
+
return CronStanza<R>(record)
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export const minutely = shorthand(true, true, true, true, true)
|
|
21
|
+
export const hourly = shorthand(0, true, true, true, true)
|
|
22
|
+
export const daily = shorthand(0, 0, true, true, true)
|
|
23
|
+
export const weekly = shorthand(0, 0, true, true, 0)
|
|
24
|
+
export const monthly = shorthand(0, 0, 1, true, true)
|
|
25
|
+
export const yearly = shorthand(0, 0, 1, 1, true)
|
|
26
|
+
|
|
27
|
+
// TODO: Parse cron strings with type safety
|
|
28
|
+
// TODO: Write a runtime parser too
|
|
29
|
+
// TODO: Consider using an existing library for this
|
|
30
|
+
export function parse(cron: string): CronStanza<Cron_Record> {
|
|
31
|
+
const parts = cron.split(" ")
|
|
32
|
+
if (parts.length !== 5) {
|
|
33
|
+
throw new K8tsGraphError(`Invalid cron string: ${cron}`)
|
|
34
|
+
}
|
|
35
|
+
return shorthand(...(parts as any))
|
|
36
|
+
}
|
|
37
|
+
}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { display } from "../../../utils/mixin/display"
|
|
2
|
+
import type { Cron_Element, Cron_Record, Cron_RecordToTuple } from "./parse-type"
|
|
3
|
+
import type { _SetObjectKey } from "./types"
|
|
4
|
+
|
|
5
|
+
export declare const CRON_STRING: unique symbol
|
|
6
|
+
|
|
7
|
+
function _convertStanzaElement(X: Cron_Element): string {
|
|
8
|
+
if (X === true) {
|
|
9
|
+
return "*"
|
|
10
|
+
}
|
|
11
|
+
if (X === false) {
|
|
12
|
+
return "0"
|
|
13
|
+
}
|
|
14
|
+
return `${X}`
|
|
15
|
+
}
|
|
16
|
+
export interface CronStanza<R extends Cron_Record = Cron_Record> {
|
|
17
|
+
get tuple(): Cron_RecordToTuple<R>
|
|
18
|
+
toString(): string
|
|
19
|
+
get string(): string
|
|
20
|
+
minute<Minute extends Cron_Element>(
|
|
21
|
+
minute: Minute
|
|
22
|
+
): CronStanza<_SetObjectKey<R, "minute", Minute>>
|
|
23
|
+
hour<Hour extends Cron_Element>(hour: Hour): CronStanza<_SetObjectKey<R, "hour", Hour>>
|
|
24
|
+
dayOfMonth<DayOfMonth extends Cron_Element>(
|
|
25
|
+
dayOfMonth: DayOfMonth
|
|
26
|
+
): CronStanza<_SetObjectKey<R, "dayOfMonth", DayOfMonth>>
|
|
27
|
+
month<Month extends Cron_Element>(month: Month): CronStanza<_SetObjectKey<R, "month", Month>>
|
|
28
|
+
dayOfWeek<DayOfWeek extends Cron_Element>(
|
|
29
|
+
dayOfWeek: DayOfWeek
|
|
30
|
+
): CronStanza<_SetObjectKey<R, "dayOfWeek", DayOfWeek>>
|
|
31
|
+
}
|
|
32
|
+
export function CronStanza<R extends Cron_Record>(record: R) {
|
|
33
|
+
return new _CronStanza(record) as CronStanza<R>
|
|
34
|
+
}
|
|
35
|
+
@display({
|
|
36
|
+
simple(self) {
|
|
37
|
+
return self.string
|
|
38
|
+
}
|
|
39
|
+
})
|
|
40
|
+
class _CronStanza {
|
|
41
|
+
constructor(private readonly _parts: Cron_Record) {}
|
|
42
|
+
|
|
43
|
+
get tuple() {
|
|
44
|
+
return [
|
|
45
|
+
this._parts.minute,
|
|
46
|
+
this._parts.hour,
|
|
47
|
+
this._parts.dayOfMonth,
|
|
48
|
+
this._parts.month,
|
|
49
|
+
this._parts.dayOfWeek
|
|
50
|
+
] as Cron_RecordToTuple<Cron_Record>
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
get string() {
|
|
54
|
+
return this.tuple.map(_convertStanzaElement).join(" ")
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
minute<Minute extends Cron_Element>(minute: Minute): _CronStanza {
|
|
58
|
+
return new _CronStanza({
|
|
59
|
+
...this._parts,
|
|
60
|
+
minute
|
|
61
|
+
} as any)
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
hour<Hour extends Cron_Element>(hour: Hour): _CronStanza {
|
|
65
|
+
return new _CronStanza({
|
|
66
|
+
...this._parts,
|
|
67
|
+
hour
|
|
68
|
+
} as any)
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
dayOfMonth<DayOfMonth extends Cron_Element>(dayOfMonth: DayOfMonth): _CronStanza {
|
|
72
|
+
return new _CronStanza({
|
|
73
|
+
...this._parts,
|
|
74
|
+
dayOfMonth
|
|
75
|
+
} as any)
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
month<Month extends Cron_Element>(month: Month): _CronStanza {
|
|
79
|
+
return new _CronStanza({
|
|
80
|
+
...this._parts,
|
|
81
|
+
month
|
|
82
|
+
} as any)
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
dayOfWeek<DayOfWeek extends Cron_Element>(dayOfWeek: DayOfWeek): _CronStanza {
|
|
86
|
+
return new _CronStanza({
|
|
87
|
+
...this._parts,
|
|
88
|
+
dayOfWeek
|
|
89
|
+
} as any)
|
|
90
|
+
}
|
|
91
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { ImageNamespace } from "./2-namespace"
|
|
2
|
+
import { ImageRepository } from "./3-repository"
|
|
3
|
+
import type { JoinIfNotEmpty } from "./types"
|
|
4
|
+
|
|
5
|
+
export interface ImageRegistry<Text extends string = string> {
|
|
6
|
+
toString(): Text
|
|
7
|
+
isEmpty: boolean
|
|
8
|
+
repo<Name extends string = "">(name?: Name): ImageRepository<JoinIfNotEmpty<Text, "/", Name>>
|
|
9
|
+
namespace<Ns extends string = "">(namespace?: Ns): ImageNamespace<JoinIfNotEmpty<Text, "/", Ns>>
|
|
10
|
+
}
|
|
11
|
+
export function ImageRegistry<Text extends string = "">(registry?: Text) {
|
|
12
|
+
return new _ImageRegistry(registry ?? "") as ImageRegistry<Text>
|
|
13
|
+
}
|
|
14
|
+
class _ImageRegistry implements ImageRegistry<string> {
|
|
15
|
+
constructor(readonly _registry: string) {}
|
|
16
|
+
toString(): any {
|
|
17
|
+
return this._registry
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
get isEmpty() {
|
|
21
|
+
return this._registry === ""
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
repo(name?: string) {
|
|
25
|
+
return ImageRepository<any>(this._registry, "", name ?? "")
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
namespace<Ns extends string = "">(namespace?: Ns) {
|
|
29
|
+
return ImageNamespace<any>(this._registry, namespace ?? "")
|
|
30
|
+
}
|
|
31
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { display } from "../../../utils"
|
|
2
|
+
import { ImageRegistry } from "./1-host"
|
|
3
|
+
import { ImageRepository } from "./3-repository"
|
|
4
|
+
import type { JoinIfNotEmpty } from "./types"
|
|
5
|
+
|
|
6
|
+
export interface ImageNamespace<Text extends string = string> {
|
|
7
|
+
toString(): Text
|
|
8
|
+
isEmpty: boolean
|
|
9
|
+
get registry(): ImageRegistry
|
|
10
|
+
repo<Name extends string>(name?: Name): ImageRepository<JoinIfNotEmpty<Text, "/", Name>>
|
|
11
|
+
}
|
|
12
|
+
export function ImageNamespace<Text extends string = "">(registry: string, namespace?: Text) {
|
|
13
|
+
return new _ImageNamespace(registry, namespace ?? "") as ImageNamespace<Text>
|
|
14
|
+
}
|
|
15
|
+
@display({
|
|
16
|
+
simple: s => s._url
|
|
17
|
+
})
|
|
18
|
+
class _ImageNamespace implements ImageNamespace<any> {
|
|
19
|
+
private readonly _url: string
|
|
20
|
+
constructor(
|
|
21
|
+
private readonly _registry: string,
|
|
22
|
+
private readonly _namespace: string
|
|
23
|
+
) {
|
|
24
|
+
const parts = []
|
|
25
|
+
if (!this.registry.isEmpty) {
|
|
26
|
+
parts.push(this.registry)
|
|
27
|
+
}
|
|
28
|
+
if (this._namespace !== "") {
|
|
29
|
+
parts.push(this._namespace)
|
|
30
|
+
}
|
|
31
|
+
this._url = parts.join("/")
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
toString(): any {
|
|
35
|
+
return this._url
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
get registry() {
|
|
39
|
+
return ImageRegistry<any>(this._registry)
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
get isEmpty() {
|
|
43
|
+
return this.registry.isEmpty && this._namespace === ""
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
repo<Repo extends string = "">(name?: Repo): ImageRepository<any> {
|
|
47
|
+
return ImageRepository(this._registry, this._namespace, name ?? "")
|
|
48
|
+
}
|
|
49
|
+
}
|