@intentius/chant-lexicon-grafana 0.97.0 → 0.99.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/README.md +15 -5
- package/dist/actions/grafana.d.ts +24 -0
- package/dist/actions/grafana.d.ts.map +1 -0
- package/dist/actions/index.d.ts +2 -0
- package/dist/actions/index.d.ts.map +1 -0
- package/dist/alerting-build.d.ts +128 -0
- package/dist/alerting-build.d.ts.map +1 -0
- package/dist/alerting.d.ts +273 -0
- package/dist/alerting.d.ts.map +1 -0
- package/dist/api/apply.d.ts +156 -0
- package/dist/api/apply.d.ts.map +1 -0
- package/dist/api/bind.d.ts +32 -0
- package/dist/api/bind.d.ts.map +1 -0
- package/dist/api/client.d.ts +76 -0
- package/dist/api/client.d.ts.map +1 -0
- package/dist/api/converge.d.ts +33 -0
- package/dist/api/converge.d.ts.map +1 -0
- package/dist/api/dashboards.d.ts +102 -0
- package/dist/api/dashboards.d.ts.map +1 -0
- package/dist/api/datasources.d.ts +26 -0
- package/dist/api/datasources.d.ts.map +1 -0
- package/dist/api/fake-grafana-writes.d.ts +41 -0
- package/dist/api/fake-grafana-writes.d.ts.map +1 -0
- package/dist/api/fake-grafana.d.ts +61 -0
- package/dist/api/fake-grafana.d.ts.map +1 -0
- package/dist/api/folders.d.ts +110 -0
- package/dist/api/folders.d.ts.map +1 -0
- package/dist/api/library-panels.d.ts +52 -0
- package/dist/api/library-panels.d.ts.map +1 -0
- package/dist/build.d.ts +30 -2
- package/dist/build.d.ts.map +1 -1
- package/dist/catalog.d.ts +1 -1
- package/dist/catalog.d.ts.map +1 -1
- package/dist/codegen/docs.d.ts.map +1 -1
- package/dist/codegen/schema-types.d.ts +3 -3
- package/dist/codegen/schema-types.d.ts.map +1 -1
- package/dist/composites/agent-dashboard.d.ts.map +1 -1
- package/dist/composites/catalog.d.ts.map +1 -1
- package/dist/composites/index.d.ts +4 -2
- package/dist/composites/index.d.ts.map +1 -1
- package/dist/composites/red-dashboard.d.ts +21 -2
- package/dist/composites/red-dashboard.d.ts.map +1 -1
- package/dist/composites/shared.d.ts +7 -0
- package/dist/composites/shared.d.ts.map +1 -1
- package/dist/composites/slo-alert-rules.d.ts +92 -0
- package/dist/composites/slo-alert-rules.d.ts.map +1 -0
- package/dist/config.d.ts +111 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/contact-point-secrets.d.ts +17 -0
- package/dist/contact-point-secrets.d.ts.map +1 -0
- package/dist/dashboard.d.ts +16 -2
- package/dist/dashboard.d.ts.map +1 -1
- package/dist/datasource-refs.d.ts +95 -0
- package/dist/datasource-refs.d.ts.map +1 -0
- package/dist/datasource.d.ts +29 -0
- package/dist/datasource.d.ts.map +1 -1
- package/dist/deep-observe-hooks.d.ts +64 -0
- package/dist/deep-observe-hooks.d.ts.map +1 -0
- package/dist/deep-observe.d.ts +42 -0
- package/dist/deep-observe.d.ts.map +1 -0
- package/dist/describe-resources.d.ts +49 -0
- package/dist/describe-resources.d.ts.map +1 -0
- package/dist/detect.d.ts +28 -1
- package/dist/detect.d.ts.map +1 -1
- package/dist/export-resources.d.ts +38 -0
- package/dist/export-resources.d.ts.map +1 -0
- package/dist/import/alerting.d.ts +40 -0
- package/dist/import/alerting.d.ts.map +1 -0
- package/dist/import/edits.d.ts +47 -0
- package/dist/import/edits.d.ts.map +1 -0
- package/dist/import/embedded.d.ts +14 -0
- package/dist/import/embedded.d.ts.map +1 -0
- package/dist/import/generator.d.ts +60 -0
- package/dist/import/generator.d.ts.map +1 -0
- package/dist/import/live-export.d.ts +108 -0
- package/dist/import/live-export.d.ts.map +1 -0
- package/dist/import/mappings.d.ts +83 -0
- package/dist/import/mappings.d.ts.map +1 -0
- package/dist/import/model.d.ts +98 -0
- package/dist/import/model.d.ts.map +1 -0
- package/dist/import/normalize-alerting.d.ts +26 -0
- package/dist/import/normalize-alerting.d.ts.map +1 -0
- package/dist/import/normalize.d.ts +74 -0
- package/dist/import/normalize.d.ts.map +1 -0
- package/dist/import/parser.d.ts +110 -0
- package/dist/import/parser.d.ts.map +1 -0
- package/dist/import/report.d.ts +26 -0
- package/dist/import/report.d.ts.map +1 -0
- package/dist/import/testdata/fixtures.d.ts +35 -0
- package/dist/import/testdata/fixtures.d.ts.map +1 -0
- package/dist/import/v2.d.ts +72 -0
- package/dist/import/v2.d.ts.map +1 -0
- package/dist/index.d.ts +26 -9
- package/dist/index.d.ts.map +1 -1
- package/dist/integrity.json +18 -10
- package/dist/k8s.d.ts +107 -0
- package/dist/k8s.d.ts.map +1 -0
- package/dist/lint/audit-catalog.d.ts +2 -1
- package/dist/lint/audit-catalog.d.ts.map +1 -1
- package/dist/lint/post-synth/graf101.d.ts +2 -2
- package/dist/lint/post-synth/graf102.d.ts +1 -1
- package/dist/lint/post-synth/graf107.d.ts +1 -1
- package/dist/lint/post-synth/graf108.d.ts +8 -0
- package/dist/lint/post-synth/graf108.d.ts.map +1 -0
- package/dist/lint/post-synth/graf109.d.ts +8 -0
- package/dist/lint/post-synth/graf109.d.ts.map +1 -0
- package/dist/lint/post-synth/graf111.d.ts +8 -0
- package/dist/lint/post-synth/graf111.d.ts.map +1 -0
- package/dist/lint/post-synth/graf112.d.ts +8 -0
- package/dist/lint/post-synth/graf112.d.ts.map +1 -0
- package/dist/lint/post-synth/graf113.d.ts +8 -0
- package/dist/lint/post-synth/graf113.d.ts.map +1 -0
- package/dist/lint/post-synth/graf114.d.ts +8 -0
- package/dist/lint/post-synth/graf114.d.ts.map +1 -0
- package/dist/lint/post-synth/graf115.d.ts +8 -0
- package/dist/lint/post-synth/graf115.d.ts.map +1 -0
- package/dist/lint/post-synth/grafana-helpers.d.ts +7 -5
- package/dist/lint/post-synth/grafana-helpers.d.ts.map +1 -1
- package/dist/lint/post-synth/index.d.ts.map +1 -1
- package/dist/lint/rules/literal-secret.d.ts +7 -3
- package/dist/lint/rules/literal-secret.d.ts.map +1 -1
- package/dist/lsp/hover.d.ts.map +1 -1
- package/dist/manifest.json +1 -1
- package/dist/members.d.ts +27 -0
- package/dist/members.d.ts.map +1 -0
- package/dist/meta.json +135 -0
- package/dist/okf/index.md +36 -2
- package/dist/okf/rules/GRAF002.md +3 -2
- package/dist/okf/rules/GRAF101.md +3 -2
- package/dist/okf/rules/GRAF102.md +1 -0
- package/dist/okf/rules/GRAF108.md +11 -0
- package/dist/okf/rules/GRAF109.md +15 -0
- package/dist/okf/rules/GRAF111.md +11 -0
- package/dist/okf/rules/GRAF112.md +16 -0
- package/dist/okf/rules/GRAF113.md +16 -0
- package/dist/okf/rules/GRAF114.md +11 -0
- package/dist/okf/rules/GRAF115.md +11 -0
- package/dist/okf/types/AlertListPanel.md +9 -0
- package/dist/okf/types/AlertQuery.md +9 -0
- package/dist/okf/types/AlertRule.md +9 -0
- package/dist/okf/types/AlertRuleGroup.md +9 -0
- package/dist/okf/types/BarChartPanel.md +9 -0
- package/dist/okf/types/BarGaugePanel.md +9 -0
- package/dist/okf/types/CanvasPanel.md +9 -0
- package/dist/okf/types/ClassicConditionsExpression.md +9 -0
- package/dist/okf/types/ContactPoint.md +14 -0
- package/dist/okf/types/Dashboard.md +1 -0
- package/dist/okf/types/Datasource.md +3 -2
- package/dist/okf/types/ExternalDatasource.md +15 -0
- package/dist/okf/types/FlameGraphPanel.md +9 -0
- package/dist/okf/types/GeomapPanel.md +9 -0
- package/dist/okf/types/HistogramPanel.md +9 -0
- package/dist/okf/types/MathExpression.md +9 -0
- package/dist/okf/types/MuteTiming.md +13 -0
- package/dist/okf/types/NodeGraphPanel.md +9 -0
- package/dist/okf/types/NotificationPolicy.md +9 -0
- package/dist/okf/types/NotificationTemplate.md +9 -0
- package/dist/okf/types/PieChartPanel.md +9 -0
- package/dist/okf/types/ReduceExpression.md +9 -0
- package/dist/okf/types/ResampleExpression.md +9 -0
- package/dist/okf/types/SqlExpression.md +9 -0
- package/dist/okf/types/StateTimelinePanel.md +9 -0
- package/dist/okf/types/StatusHistoryPanel.md +9 -0
- package/dist/okf/types/ThresholdExpression.md +9 -0
- package/dist/okf/types/TrendPanel.md +9 -0
- package/dist/okf/types/XYChartPanel.md +9 -0
- package/dist/op/activities/grafana-apply.d.ts +75 -0
- package/dist/op/activities/grafana-apply.d.ts.map +1 -0
- package/dist/op/activities/index.d.ts +9 -0
- package/dist/op/activities/index.d.ts.map +1 -0
- package/dist/op/builders.d.ts +24 -0
- package/dist/op/builders.d.ts.map +1 -0
- package/dist/ownership.d.ts +67 -0
- package/dist/ownership.d.ts.map +1 -0
- package/dist/panel-options.d.ts +65 -0
- package/dist/panel-options.d.ts.map +1 -0
- package/dist/panels.d.ts +46 -9
- package/dist/panels.d.ts.map +1 -1
- package/dist/pin.d.ts +29 -7
- package/dist/pin.d.ts.map +1 -1
- package/dist/plugin.d.ts.map +1 -1
- package/dist/promql-check.d.ts +51 -0
- package/dist/promql-check.d.ts.map +1 -0
- package/dist/query.d.ts +9 -8
- package/dist/query.d.ts.map +1 -1
- package/dist/rules/graf101.ts +3 -3
- package/dist/rules/graf102.ts +1 -1
- package/dist/rules/graf107.ts +1 -1
- package/dist/rules/graf108.ts +17 -0
- package/dist/rules/graf109.ts +17 -0
- package/dist/rules/graf111.ts +17 -0
- package/dist/rules/graf112.ts +17 -0
- package/dist/rules/graf113.ts +17 -0
- package/dist/rules/graf114.ts +17 -0
- package/dist/rules/graf115.ts +17 -0
- package/dist/rules/grafana-helpers.ts +15 -8
- package/dist/rules/literal-secret.ts +60 -6
- package/dist/schema/barchart.gen.d.ts +198 -0
- package/dist/schema/barchart.gen.d.ts.map +1 -0
- package/dist/schema/bargauge.gen.d.ts +97 -0
- package/dist/schema/bargauge.gen.d.ts.map +1 -0
- package/dist/schema/canvas.gen.d.ts +152 -0
- package/dist/schema/canvas.gen.d.ts.map +1 -0
- package/dist/schema/dashboard.gen.d.ts +196 -21
- package/dist/schema/dashboard.gen.d.ts.map +1 -1
- package/dist/schema/expr.gen.d.ts +606 -0
- package/dist/schema/expr.gen.d.ts.map +1 -0
- package/dist/schema/gauge.gen.d.ts.map +1 -1
- package/dist/schema/geomap.gen.d.ts +100 -0
- package/dist/schema/geomap.gen.d.ts.map +1 -0
- package/dist/schema/heatmap.gen.d.ts.map +1 -1
- package/dist/schema/histogram.gen.d.ts +132 -0
- package/dist/schema/histogram.gen.d.ts.map +1 -0
- package/dist/schema/index.d.ts +12 -0
- package/dist/schema/index.d.ts.map +1 -1
- package/dist/schema/logs.gen.d.ts +1 -0
- package/dist/schema/logs.gen.d.ts.map +1 -1
- package/dist/schema/loki.gen.d.ts.map +1 -1
- package/dist/schema/nodegraph.gen.d.ts +49 -0
- package/dist/schema/nodegraph.gen.d.ts.map +1 -0
- package/dist/schema/piechart.gen.d.ts +127 -0
- package/dist/schema/piechart.gen.d.ts.map +1 -0
- package/dist/schema/prometheus.gen.d.ts.map +1 -1
- package/dist/schema/stat.gen.d.ts.map +1 -1
- package/dist/schema/statetimeline.gen.d.ts +124 -0
- package/dist/schema/statetimeline.gen.d.ts.map +1 -0
- package/dist/schema/statushistory.gen.d.ts +114 -0
- package/dist/schema/statushistory.gen.d.ts.map +1 -0
- package/dist/schema/table.gen.d.ts +22 -3
- package/dist/schema/table.gen.d.ts.map +1 -1
- package/dist/schema/tempo.gen.d.ts.map +1 -1
- package/dist/schema/text.gen.d.ts.map +1 -1
- package/dist/schema/timeseries.gen.d.ts +5 -1
- package/dist/schema/timeseries.gen.d.ts.map +1 -1
- package/dist/schema/trend.gen.d.ts +180 -0
- package/dist/schema/trend.gen.d.ts.map +1 -0
- package/dist/schema/xychart.gen.d.ts +145 -0
- package/dist/schema/xychart.gen.d.ts.map +1 -0
- package/dist/schema-validate.d.ts +30 -4
- package/dist/schema-validate.d.ts.map +1 -1
- package/dist/serializer.d.ts +11 -3
- package/dist/serializer.d.ts.map +1 -1
- package/dist/skill-defs.d.ts.map +1 -1
- package/dist/skills/chant-grafana-alerting.md +49 -0
- package/dist/skills/chant-grafana-provisioning.md +3 -3
- package/dist/skills/chant-grafana.md +12 -6
- package/dist/spec/fetch-units-cli.d.ts +3 -0
- package/dist/spec/fetch-units-cli.d.ts.map +1 -0
- package/dist/spec/overlay.d.ts +43 -0
- package/dist/spec/overlay.d.ts.map +1 -0
- package/dist/spec/schemas.d.ts +13 -7
- package/dist/spec/schemas.d.ts.map +1 -1
- package/dist/spec/units.d.ts +35 -0
- package/dist/spec/units.d.ts.map +1 -0
- package/dist/spec/units.gen.d.ts +2 -0
- package/dist/spec/units.gen.d.ts.map +1 -0
- package/dist/transformations.d.ts +459 -0
- package/dist/transformations.d.ts.map +1 -0
- package/dist/util.d.ts +6 -0
- package/dist/util.d.ts.map +1 -1
- package/dist/validate-alerting.d.ts +65 -0
- package/dist/validate-alerting.d.ts.map +1 -0
- package/dist/validate-output.d.ts +49 -9
- package/dist/validate-output.d.ts.map +1 -1
- package/dist/validate.d.ts.map +1 -1
- package/dist/variables.d.ts +7 -2
- package/dist/variables.d.ts.map +1 -1
- package/package.json +12 -4
- package/src/actions/actions.test.ts +24 -0
- package/src/actions/grafana.ts +40 -0
- package/src/actions/index.ts +1 -0
- package/src/alerting-build.ts +376 -0
- package/src/alerting.e2e.test.ts +212 -0
- package/src/alerting.test.ts +272 -0
- package/src/alerting.ts +435 -0
- package/src/api/apply.test.ts +238 -0
- package/src/api/apply.ts +384 -0
- package/src/api/bind.ts +58 -0
- package/src/api/client.ts +148 -0
- package/src/api/converge.ts +63 -0
- package/src/api/dashboards.ts +247 -0
- package/src/api/datasources.ts +33 -0
- package/src/api/fake-grafana-writes.ts +201 -0
- package/src/api/fake-grafana.ts +186 -0
- package/src/api/folders.ts +265 -0
- package/src/api/library-panels.ts +101 -0
- package/src/build.test.ts +210 -5
- package/src/build.ts +180 -43
- package/src/catalog.ts +86 -2
- package/src/codegen/docs.ts +42 -9
- package/src/codegen/schema-types.ts +16 -6
- package/src/composites/agent-dashboard.ts +6 -3
- package/src/composites/catalog.test.ts +2 -2
- package/src/composites/catalog.ts +82 -0
- package/src/composites/composites.test.ts +73 -9
- package/src/composites/index.ts +4 -2
- package/src/composites/queries.e2e.test.ts +374 -0
- package/src/composites/red-dashboard.ts +83 -12
- package/src/composites/shared.ts +11 -0
- package/src/composites/slo-alert-rules.ts +149 -0
- package/src/config.test.ts +61 -0
- package/src/config.ts +138 -0
- package/src/contact-point-secrets.ts +63 -0
- package/src/dashboard.ts +16 -2
- package/src/datasource-refs.test.ts +56 -0
- package/src/datasource-refs.ts +189 -0
- package/src/datasource.ts +52 -0
- package/src/deep-observe-hooks.ts +252 -0
- package/src/deep-observe.test.ts +265 -0
- package/src/deep-observe.ts +164 -0
- package/src/describe-resources.test.ts +255 -0
- package/src/describe-resources.ts +209 -0
- package/src/detect.ts +79 -2
- package/src/export-resources.test.ts +129 -0
- package/src/export-resources.ts +84 -0
- package/src/generated/lexicon-grafana.json +135 -0
- package/src/import/alerting-roundtrip.test.ts +161 -0
- package/src/import/alerting.ts +500 -0
- package/src/import/edits.ts +95 -0
- package/src/import/embedded.test.ts +45 -0
- package/src/import/embedded.ts +47 -0
- package/src/import/generated-types.e2e.test.ts +118 -0
- package/src/import/generator.test.ts +210 -0
- package/src/import/generator.ts +462 -0
- package/src/import/live-export.ts +264 -0
- package/src/import/mappings.ts +264 -0
- package/src/import/model.ts +110 -0
- package/src/import/normalize-alerting.ts +101 -0
- package/src/import/normalize.test.ts +117 -0
- package/src/import/normalize.ts +364 -0
- package/src/import/parser.test.ts +440 -0
- package/src/import/parser.ts +1236 -0
- package/src/import/report.ts +62 -0
- package/src/import/roundtrip.test.ts +468 -0
- package/src/import/testdata/fixtures.ts +129 -0
- package/src/import/v2.test.ts +292 -0
- package/src/import/v2.ts +803 -0
- package/src/import.e2e.test.ts +31 -84
- package/src/import.test.ts +9 -3
- package/src/index.ts +190 -5
- package/src/k8s.test.ts +98 -0
- package/src/k8s.ts +197 -0
- package/src/lint/audit-catalog.ts +60 -3
- package/src/lint/core-lint.test.ts +43 -0
- package/src/lint/post-synth/graf101.ts +3 -3
- package/src/lint/post-synth/graf102.ts +1 -1
- package/src/lint/post-synth/graf107.ts +1 -1
- package/src/lint/post-synth/graf108.ts +17 -0
- package/src/lint/post-synth/graf109.ts +17 -0
- package/src/lint/post-synth/graf111.ts +17 -0
- package/src/lint/post-synth/graf112.ts +17 -0
- package/src/lint/post-synth/graf113.ts +17 -0
- package/src/lint/post-synth/graf114.ts +17 -0
- package/src/lint/post-synth/graf115.ts +17 -0
- package/src/lint/post-synth/grafana-helpers.ts +15 -8
- package/src/lint/post-synth/index.ts +14 -0
- package/src/lint/post-synth/post-synth.test.ts +235 -11
- package/src/lint/rules/literal-secret.ts +60 -6
- package/src/lint/rules/rules.test.ts +27 -0
- package/src/lsp/completions.test.ts +5 -0
- package/src/lsp/hover.test.ts +7 -0
- package/src/lsp/hover.ts +8 -1
- package/src/members.ts +68 -0
- package/src/observe.e2e.test.ts +255 -0
- package/src/op/activities/grafana-apply.e2e.test.ts +175 -0
- package/src/op/activities/grafana-apply.test.ts +229 -0
- package/src/op/activities/grafana-apply.ts +171 -0
- package/src/op/activities/index.ts +8 -0
- package/src/op/builders.test.ts +40 -0
- package/src/op/builders.ts +34 -0
- package/src/ownership.ts +103 -0
- package/src/panel-options.ts +66 -0
- package/src/panels.test.ts +51 -0
- package/src/panels.ts +148 -10
- package/src/pin.ts +57 -6
- package/src/plugin.test.ts +5 -2
- package/src/plugin.ts +66 -0
- package/src/promql-check.test.ts +108 -0
- package/src/promql-check.ts +189 -0
- package/src/query.ts +13 -8
- package/src/schema/barchart.gen.ts +221 -0
- package/src/schema/bargauge.gen.ts +111 -0
- package/src/schema/canvas.gen.ts +176 -0
- package/src/schema/dashboard.gen.ts +206 -22
- package/src/schema/expr.gen.ts +618 -0
- package/src/schema/gauge.gen.ts +2 -1
- package/src/schema/geomap.gen.ts +112 -0
- package/src/schema/heatmap.gen.ts +2 -1
- package/src/schema/histogram.gen.ts +151 -0
- package/src/schema/index.ts +12 -0
- package/src/schema/logs.gen.ts +3 -1
- package/src/schema/loki.gen.ts +2 -1
- package/src/schema/nodegraph.gen.ts +58 -0
- package/src/schema/piechart.gen.ts +146 -0
- package/src/schema/prometheus.gen.ts +2 -1
- package/src/schema/stat.gen.ts +2 -1
- package/src/schema/statetimeline.gen.ts +143 -0
- package/src/schema/statushistory.gen.ts +132 -0
- package/src/schema/table.gen.ts +27 -4
- package/src/schema/tempo.gen.ts +2 -1
- package/src/schema/text.gen.ts +2 -1
- package/src/schema/timeseries.gen.ts +7 -2
- package/src/schema/trend.gen.ts +208 -0
- package/src/schema/xychart.gen.ts +167 -0
- package/src/schema-overlay.test.ts +282 -0
- package/src/schema-validate.ts +141 -50
- package/src/schema.test.ts +4 -2
- package/src/serializer.test.ts +13 -1
- package/src/serializer.ts +11 -3
- package/src/skill-defs.ts +17 -0
- package/src/skills/chant-grafana-alerting.md +49 -0
- package/src/skills/chant-grafana-provisioning.md +3 -3
- package/src/skills/chant-grafana.md +12 -6
- package/src/spec/fetch-cli.ts +3 -3
- package/src/spec/fetch-units-cli.ts +37 -0
- package/src/spec/overlay/canvas.overlay.json +142 -0
- package/src/spec/overlay/dashboard.overlay.json +378 -0
- package/src/spec/overlay/expr.overlay.json +14 -0
- package/src/spec/overlay/geomap.overlay.json +35 -0
- package/src/spec/overlay/logs.overlay.json +14 -0
- package/src/spec/overlay/nodegraph.overlay.json +31 -0
- package/src/spec/overlay/piechart.overlay.json +17 -0
- package/src/spec/overlay/table.overlay.json +84 -0
- package/src/spec/overlay/timeseries.overlay.json +21 -0
- package/src/spec/overlay/trend.overlay.json +17 -0
- package/src/spec/overlay/xychart.overlay.json +16 -0
- package/src/spec/overlay.ts +105 -0
- package/src/spec/schemas/barchart.jsonschema.json +419 -0
- package/src/spec/schemas/bargauge.jsonschema.json +224 -0
- package/src/spec/schemas/canvas.jsonschema.json +356 -0
- package/src/spec/schemas/dashboardv2.jsonschema.json +3387 -0
- package/src/spec/schemas/expr.jsonschema.json +987 -0
- package/src/spec/schemas/geomap.jsonschema.json +220 -0
- package/src/spec/schemas/histogram.jsonschema.json +308 -0
- package/src/spec/schemas/nodegraph.jsonschema.json +77 -0
- package/src/spec/schemas/piechart.jsonschema.json +275 -0
- package/src/spec/schemas/statetimeline.jsonschema.json +324 -0
- package/src/spec/schemas/statushistory.jsonschema.json +292 -0
- package/src/spec/schemas/trend.jsonschema.json +449 -0
- package/src/spec/schemas/xychart.jsonschema.json +428 -0
- package/src/spec/schemas.ts +22 -10
- package/src/spec/units.gen.ts +281 -0
- package/src/spec/units.ts +77 -0
- package/src/transformations.test.ts +65 -0
- package/src/transformations.ts +574 -0
- package/src/util.ts +8 -0
- package/src/validate-alerting.test.ts +255 -0
- package/src/validate-alerting.ts +428 -0
- package/src/validate-output.ts +332 -101
- package/src/validate.ts +14 -0
- package/src/variables.ts +7 -2
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
// Code generated by chant generate from the vendored Grafana schema
|
|
2
|
+
// src/spec/schemas/statushistory.jsonschema.json (see src/pin.ts) and its correction
|
|
3
|
+
// overlay in src/spec/overlay/ (see src/spec/overlay.ts). DO NOT EDIT.
|
|
4
|
+
/* eslint-disable */
|
|
5
|
+
|
|
6
|
+
export interface Options {
|
|
7
|
+
/**
|
|
8
|
+
* Set the height of the rows
|
|
9
|
+
*/
|
|
10
|
+
rowHeight: number;
|
|
11
|
+
/**
|
|
12
|
+
* Show values on the columns
|
|
13
|
+
*/
|
|
14
|
+
showValue: VisibilityMode;
|
|
15
|
+
/**
|
|
16
|
+
* Controls the column width
|
|
17
|
+
*/
|
|
18
|
+
colWidth?: number;
|
|
19
|
+
legend: VizLegendOptions;
|
|
20
|
+
tooltip: VizTooltipOptions;
|
|
21
|
+
timezone?: TimeZone[];
|
|
22
|
+
/**
|
|
23
|
+
* Enables pagination when > 0
|
|
24
|
+
*/
|
|
25
|
+
perPage?: number;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export interface FieldConfig {
|
|
29
|
+
lineWidth?: number;
|
|
30
|
+
axisPlacement?: AxisPlacement;
|
|
31
|
+
axisColorMode?: AxisColorMode;
|
|
32
|
+
axisLabel?: string;
|
|
33
|
+
axisWidth?: number;
|
|
34
|
+
axisSoftMin?: number;
|
|
35
|
+
axisSoftMax?: number;
|
|
36
|
+
axisGridShow?: boolean;
|
|
37
|
+
scaleDistribution?: ScaleDistributionConfig;
|
|
38
|
+
axisCenteredZero?: boolean;
|
|
39
|
+
hideFrom?: HideSeriesConfig;
|
|
40
|
+
fillOpacity?: number;
|
|
41
|
+
axisBorderShow?: boolean;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* TODO docs
|
|
46
|
+
*/
|
|
47
|
+
export type VisibilityMode = "auto" | "never" | "always";
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* TODO docs
|
|
51
|
+
*/
|
|
52
|
+
export interface VizLegendOptions {
|
|
53
|
+
displayMode: LegendDisplayMode;
|
|
54
|
+
placement: LegendPlacement;
|
|
55
|
+
showLegend: boolean;
|
|
56
|
+
asTable?: boolean;
|
|
57
|
+
isVisible?: boolean;
|
|
58
|
+
sortBy?: string;
|
|
59
|
+
sortDesc?: boolean;
|
|
60
|
+
width?: number;
|
|
61
|
+
calcs: string[];
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* TODO docs
|
|
66
|
+
*/
|
|
67
|
+
export interface VizTooltipOptions {
|
|
68
|
+
mode: TooltipDisplayMode;
|
|
69
|
+
sort: SortOrder;
|
|
70
|
+
maxWidth?: number;
|
|
71
|
+
maxHeight?: number;
|
|
72
|
+
hideZeros?: boolean;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* A specific timezone from https://en.wikipedia.org/wiki/Tz_database
|
|
77
|
+
*/
|
|
78
|
+
export type TimeZone = string;
|
|
79
|
+
|
|
80
|
+
/**
|
|
81
|
+
* TODO docs
|
|
82
|
+
*/
|
|
83
|
+
export type AxisPlacement = "auto" | "top" | "right" | "bottom" | "left" | "hidden";
|
|
84
|
+
|
|
85
|
+
/**
|
|
86
|
+
* TODO docs
|
|
87
|
+
*/
|
|
88
|
+
export type AxisColorMode = "text" | "series";
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* TODO docs
|
|
92
|
+
*/
|
|
93
|
+
export interface ScaleDistributionConfig {
|
|
94
|
+
type: ScaleDistribution;
|
|
95
|
+
log?: number;
|
|
96
|
+
linearThreshold?: number;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* TODO docs
|
|
101
|
+
*/
|
|
102
|
+
export interface HideSeriesConfig {
|
|
103
|
+
tooltip: boolean;
|
|
104
|
+
legend: boolean;
|
|
105
|
+
viz: boolean;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
/**
|
|
109
|
+
* TODO docs
|
|
110
|
+
* Note: "hidden" needs to remain as an option for plugins compatibility
|
|
111
|
+
*/
|
|
112
|
+
export type LegendDisplayMode = "list" | "table" | "hidden";
|
|
113
|
+
|
|
114
|
+
/**
|
|
115
|
+
* TODO docs
|
|
116
|
+
*/
|
|
117
|
+
export type LegendPlacement = "bottom" | "right";
|
|
118
|
+
|
|
119
|
+
/**
|
|
120
|
+
* TODO docs
|
|
121
|
+
*/
|
|
122
|
+
export type TooltipDisplayMode = "single" | "multi" | "none";
|
|
123
|
+
|
|
124
|
+
/**
|
|
125
|
+
* TODO docs
|
|
126
|
+
*/
|
|
127
|
+
export type SortOrder = "asc" | "desc" | "none";
|
|
128
|
+
|
|
129
|
+
/**
|
|
130
|
+
* TODO docs
|
|
131
|
+
*/
|
|
132
|
+
export type ScaleDistribution = "linear" | "log" | "ordinal" | "symlog";
|
package/src/schema/table.gen.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
// Code generated by chant generate from the vendored Grafana schema
|
|
2
|
-
// src/spec/schemas/table.jsonschema.json (see src/pin.ts)
|
|
2
|
+
// src/spec/schemas/table.jsonschema.json (see src/pin.ts) and its correction
|
|
3
|
+
// overlay in src/spec/overlay/ (see src/spec/overlay.ts). DO NOT EDIT.
|
|
3
4
|
/* eslint-disable */
|
|
4
5
|
|
|
5
6
|
export interface Options {
|
|
@@ -101,13 +102,13 @@ export type FieldTextAlignment = "auto" | "left" | "right" | "center";
|
|
|
101
102
|
* The color-background-solid, gradient-gauge, and lcd-gauge
|
|
102
103
|
* modes are deprecated in favor of new cell subOptions
|
|
103
104
|
*/
|
|
104
|
-
export type TableCellDisplayMode = "auto" | "color-text" | "color-background" | "color-background-solid" | "gradient-gauge" | "lcd-gauge" | "json-view" | "basic" | "image" | "gauge" | "sparkline" | "data-links" | "custom" | "actions";
|
|
105
|
+
export type TableCellDisplayMode = "auto" | "color-text" | "color-background" | "color-background-solid" | "gradient-gauge" | "lcd-gauge" | "json-view" | "basic" | "image" | "gauge" | "sparkline" | "data-links" | "custom" | "actions" | "pill" | "markdown" | "geo";
|
|
105
106
|
|
|
106
107
|
/**
|
|
107
108
|
* Table cell options. Each cell has a display mode
|
|
108
109
|
* and other potential options for that display.
|
|
109
110
|
*/
|
|
110
|
-
export type TableCellOptions = TableAutoCellOptions | TableSparklineCellOptions | TableBarGaugeCellOptions | TableColoredBackgroundCellOptions | TableColorTextCellOptions | TableImageCellOptions | TableDataLinksCellOptions | TableActionsCellOptions | TableJsonViewCellOptions;
|
|
111
|
+
export type TableCellOptions = TableAutoCellOptions | TableSparklineCellOptions | TableBarGaugeCellOptions | TableColoredBackgroundCellOptions | TableColorTextCellOptions | TableImageCellOptions | TableDataLinksCellOptions | TableActionsCellOptions | TableJsonViewCellOptions | TablePillCellOptions | TableMarkdownCellOptions | TableGeoCellOptions;
|
|
111
112
|
|
|
112
113
|
/**
|
|
113
114
|
* Auto mode table cell options
|
|
@@ -250,7 +251,7 @@ export type LineInterpolation = "linear" | "smooth" | "stepBefore" | "stepAfter"
|
|
|
250
251
|
* TODO docs
|
|
251
252
|
*/
|
|
252
253
|
export interface LineStyle {
|
|
253
|
-
fill?: "solid" | "dash" | "dot" | "square";
|
|
254
|
+
fill?: "solid" | "dash" | "dot" | "square" | "accessible";
|
|
254
255
|
dash?: number[];
|
|
255
256
|
}
|
|
256
257
|
|
|
@@ -332,3 +333,25 @@ export type ScaleDistribution = "linear" | "log" | "ordinal" | "symlog";
|
|
|
332
333
|
* TODO docs
|
|
333
334
|
*/
|
|
334
335
|
export type StackingMode = "none" | "normal" | "percent";
|
|
336
|
+
|
|
337
|
+
/**
|
|
338
|
+
* Pill cell options
|
|
339
|
+
*/
|
|
340
|
+
export interface TablePillCellOptions {
|
|
341
|
+
type: TableCellDisplayMode;
|
|
342
|
+
}
|
|
343
|
+
|
|
344
|
+
/**
|
|
345
|
+
* Markdown cell options
|
|
346
|
+
*/
|
|
347
|
+
export interface TableMarkdownCellOptions {
|
|
348
|
+
type: TableCellDisplayMode;
|
|
349
|
+
dynamicHeight?: boolean;
|
|
350
|
+
}
|
|
351
|
+
|
|
352
|
+
/**
|
|
353
|
+
* Geo cell options
|
|
354
|
+
*/
|
|
355
|
+
export interface TableGeoCellOptions {
|
|
356
|
+
type: TableCellDisplayMode;
|
|
357
|
+
}
|
package/src/schema/tempo.gen.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
// Code generated by chant generate from the vendored Grafana schema
|
|
2
|
-
// src/spec/schemas/tempo.jsonschema.json (see src/pin.ts)
|
|
2
|
+
// src/spec/schemas/tempo.jsonschema.json (see src/pin.ts) and its correction
|
|
3
|
+
// overlay in src/spec/overlay/ (see src/spec/overlay.ts). DO NOT EDIT.
|
|
3
4
|
/* eslint-disable */
|
|
4
5
|
|
|
5
6
|
export interface Dataquery {
|
package/src/schema/text.gen.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
// Code generated by chant generate from the vendored Grafana schema
|
|
2
|
-
// src/spec/schemas/text.jsonschema.json (see src/pin.ts)
|
|
2
|
+
// src/spec/schemas/text.jsonschema.json (see src/pin.ts) and its correction
|
|
3
|
+
// overlay in src/spec/overlay/ (see src/spec/overlay.ts). DO NOT EDIT.
|
|
3
4
|
/* eslint-disable */
|
|
4
5
|
|
|
5
6
|
export type TextMode = "html" | "markdown" | "code";
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
// Code generated by chant generate from the vendored Grafana schema
|
|
2
|
-
// src/spec/schemas/timeseries.jsonschema.json (see src/pin.ts)
|
|
2
|
+
// src/spec/schemas/timeseries.jsonschema.json (see src/pin.ts) and its correction
|
|
3
|
+
// overlay in src/spec/overlay/ (see src/spec/overlay.ts). DO NOT EDIT.
|
|
3
4
|
/* eslint-disable */
|
|
4
5
|
|
|
5
6
|
export interface Options {
|
|
@@ -88,6 +89,10 @@ export interface GraphFieldConfig {
|
|
|
88
89
|
pointSymbol?: string;
|
|
89
90
|
axisBorderShow?: boolean;
|
|
90
91
|
barMaxWidth?: number;
|
|
92
|
+
/**
|
|
93
|
+
* Show point values on the graph.
|
|
94
|
+
*/
|
|
95
|
+
showValues?: boolean;
|
|
91
96
|
}
|
|
92
97
|
|
|
93
98
|
/**
|
|
@@ -142,7 +147,7 @@ export type LineInterpolation = "linear" | "smooth" | "stepBefore" | "stepAfter"
|
|
|
142
147
|
* TODO docs
|
|
143
148
|
*/
|
|
144
149
|
export interface LineStyle {
|
|
145
|
-
fill?: "solid" | "dash" | "dot" | "square";
|
|
150
|
+
fill?: "solid" | "dash" | "dot" | "square" | "accessible";
|
|
146
151
|
dash?: number[];
|
|
147
152
|
}
|
|
148
153
|
|
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
// Code generated by chant generate from the vendored Grafana schema
|
|
2
|
+
// src/spec/schemas/trend.jsonschema.json (see src/pin.ts) and its correction
|
|
3
|
+
// overlay in src/spec/overlay/ (see src/spec/overlay.ts). DO NOT EDIT.
|
|
4
|
+
/* eslint-disable */
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Identical to timeseries... except it does not have timezone settings
|
|
8
|
+
*/
|
|
9
|
+
export interface Options {
|
|
10
|
+
legend: VizLegendOptions;
|
|
11
|
+
tooltip: VizTooltipOptions;
|
|
12
|
+
/**
|
|
13
|
+
* Name of the x field to use (defaults to first number)
|
|
14
|
+
*/
|
|
15
|
+
xField?: string;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export type FieldConfig = GraphFieldConfig;
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* TODO docs
|
|
22
|
+
*/
|
|
23
|
+
export interface VizLegendOptions {
|
|
24
|
+
displayMode: LegendDisplayMode;
|
|
25
|
+
placement: LegendPlacement;
|
|
26
|
+
showLegend: boolean;
|
|
27
|
+
asTable?: boolean;
|
|
28
|
+
isVisible?: boolean;
|
|
29
|
+
sortBy?: string;
|
|
30
|
+
sortDesc?: boolean;
|
|
31
|
+
width?: number;
|
|
32
|
+
calcs: string[];
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* TODO docs
|
|
37
|
+
*/
|
|
38
|
+
export interface VizTooltipOptions {
|
|
39
|
+
mode: TooltipDisplayMode;
|
|
40
|
+
sort: SortOrder;
|
|
41
|
+
maxWidth?: number;
|
|
42
|
+
maxHeight?: number;
|
|
43
|
+
hideZeros?: boolean;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* TODO docs
|
|
48
|
+
*/
|
|
49
|
+
export interface GraphFieldConfig {
|
|
50
|
+
drawStyle?: GraphDrawStyle;
|
|
51
|
+
gradientMode?: GraphGradientMode;
|
|
52
|
+
thresholdsStyle?: GraphThresholdsStyleConfig;
|
|
53
|
+
transform?: GraphTransform;
|
|
54
|
+
lineColor?: string;
|
|
55
|
+
lineWidth?: number;
|
|
56
|
+
lineInterpolation?: LineInterpolation;
|
|
57
|
+
lineStyle?: LineStyle;
|
|
58
|
+
fillColor?: string;
|
|
59
|
+
fillOpacity?: number;
|
|
60
|
+
showPoints?: VisibilityMode;
|
|
61
|
+
pointSize?: number;
|
|
62
|
+
pointColor?: string;
|
|
63
|
+
axisPlacement?: AxisPlacement;
|
|
64
|
+
axisColorMode?: AxisColorMode;
|
|
65
|
+
axisLabel?: string;
|
|
66
|
+
axisWidth?: number;
|
|
67
|
+
axisSoftMin?: number;
|
|
68
|
+
axisSoftMax?: number;
|
|
69
|
+
axisGridShow?: boolean;
|
|
70
|
+
scaleDistribution?: ScaleDistributionConfig;
|
|
71
|
+
axisCenteredZero?: boolean;
|
|
72
|
+
barAlignment?: BarAlignment;
|
|
73
|
+
barWidthFactor?: number;
|
|
74
|
+
stacking?: StackingConfig;
|
|
75
|
+
hideFrom?: HideSeriesConfig;
|
|
76
|
+
insertNulls?: boolean | number;
|
|
77
|
+
/**
|
|
78
|
+
* Indicate if null values should be treated as gaps or connected.
|
|
79
|
+
* When the value is a number, it represents the maximum delta in the
|
|
80
|
+
* X axis that should be considered connected. For timeseries, this is milliseconds
|
|
81
|
+
*/
|
|
82
|
+
spanNulls?: boolean | number;
|
|
83
|
+
fillBelowTo?: string;
|
|
84
|
+
pointSymbol?: string;
|
|
85
|
+
axisBorderShow?: boolean;
|
|
86
|
+
barMaxWidth?: number;
|
|
87
|
+
/**
|
|
88
|
+
* Show point values on the graph.
|
|
89
|
+
*/
|
|
90
|
+
showValues?: boolean;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* TODO docs
|
|
95
|
+
* Note: "hidden" needs to remain as an option for plugins compatibility
|
|
96
|
+
*/
|
|
97
|
+
export type LegendDisplayMode = "list" | "table" | "hidden";
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* TODO docs
|
|
101
|
+
*/
|
|
102
|
+
export type LegendPlacement = "bottom" | "right";
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* TODO docs
|
|
106
|
+
*/
|
|
107
|
+
export type TooltipDisplayMode = "single" | "multi" | "none";
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* TODO docs
|
|
111
|
+
*/
|
|
112
|
+
export type SortOrder = "asc" | "desc" | "none";
|
|
113
|
+
|
|
114
|
+
/**
|
|
115
|
+
* TODO docs
|
|
116
|
+
*/
|
|
117
|
+
export type GraphDrawStyle = "line" | "bars" | "points";
|
|
118
|
+
|
|
119
|
+
/**
|
|
120
|
+
* TODO docs
|
|
121
|
+
*/
|
|
122
|
+
export type GraphGradientMode = "none" | "opacity" | "hue" | "scheme";
|
|
123
|
+
|
|
124
|
+
/**
|
|
125
|
+
* TODO docs
|
|
126
|
+
*/
|
|
127
|
+
export interface GraphThresholdsStyleConfig {
|
|
128
|
+
mode: GraphThresholdsStyleMode;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
/**
|
|
132
|
+
* TODO docs
|
|
133
|
+
*/
|
|
134
|
+
export type GraphTransform = "constant" | "negative-Y";
|
|
135
|
+
|
|
136
|
+
/**
|
|
137
|
+
* TODO docs
|
|
138
|
+
*/
|
|
139
|
+
export type LineInterpolation = "linear" | "smooth" | "stepBefore" | "stepAfter";
|
|
140
|
+
|
|
141
|
+
/**
|
|
142
|
+
* TODO docs
|
|
143
|
+
*/
|
|
144
|
+
export interface LineStyle {
|
|
145
|
+
fill?: "solid" | "dash" | "dot" | "square";
|
|
146
|
+
dash?: number[];
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
/**
|
|
150
|
+
* TODO docs
|
|
151
|
+
*/
|
|
152
|
+
export type VisibilityMode = "auto" | "never" | "always";
|
|
153
|
+
|
|
154
|
+
/**
|
|
155
|
+
* TODO docs
|
|
156
|
+
*/
|
|
157
|
+
export type AxisPlacement = "auto" | "top" | "right" | "bottom" | "left" | "hidden";
|
|
158
|
+
|
|
159
|
+
/**
|
|
160
|
+
* TODO docs
|
|
161
|
+
*/
|
|
162
|
+
export type AxisColorMode = "text" | "series";
|
|
163
|
+
|
|
164
|
+
/**
|
|
165
|
+
* TODO docs
|
|
166
|
+
*/
|
|
167
|
+
export interface ScaleDistributionConfig {
|
|
168
|
+
type: ScaleDistribution;
|
|
169
|
+
log?: number;
|
|
170
|
+
linearThreshold?: number;
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
/**
|
|
174
|
+
* TODO docs
|
|
175
|
+
*/
|
|
176
|
+
export type BarAlignment = -1 | 0 | 1;
|
|
177
|
+
|
|
178
|
+
/**
|
|
179
|
+
* TODO docs
|
|
180
|
+
*/
|
|
181
|
+
export interface StackingConfig {
|
|
182
|
+
mode?: StackingMode;
|
|
183
|
+
group?: string;
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
/**
|
|
187
|
+
* TODO docs
|
|
188
|
+
*/
|
|
189
|
+
export interface HideSeriesConfig {
|
|
190
|
+
tooltip: boolean;
|
|
191
|
+
legend: boolean;
|
|
192
|
+
viz: boolean;
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
/**
|
|
196
|
+
* TODO docs
|
|
197
|
+
*/
|
|
198
|
+
export type GraphThresholdsStyleMode = "off" | "line" | "dashed" | "area" | "line+area" | "dashed+area" | "series";
|
|
199
|
+
|
|
200
|
+
/**
|
|
201
|
+
* TODO docs
|
|
202
|
+
*/
|
|
203
|
+
export type ScaleDistribution = "linear" | "log" | "ordinal" | "symlog";
|
|
204
|
+
|
|
205
|
+
/**
|
|
206
|
+
* TODO docs
|
|
207
|
+
*/
|
|
208
|
+
export type StackingMode = "none" | "normal" | "percent";
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
// Code generated by chant generate from the vendored Grafana schema
|
|
2
|
+
// src/spec/schemas/xychart.jsonschema.json (see src/pin.ts) and its correction
|
|
3
|
+
// overlay in src/spec/overlay/ (see src/spec/overlay.ts). DO NOT EDIT.
|
|
4
|
+
/* eslint-disable */
|
|
5
|
+
|
|
6
|
+
export type PointShape = "circle" | "square";
|
|
7
|
+
|
|
8
|
+
export type SeriesMapping = "auto" | "manual";
|
|
9
|
+
|
|
10
|
+
export type XYShowMode = "points" | "lines" | "points+lines";
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* NOTE: (copied from dashboard_kind.cue, since not exported)
|
|
14
|
+
* Matcher is a predicate configuration. Based on the config a set of field(s) or values is filtered in order to apply override / transformation.
|
|
15
|
+
* It comes with in id ( to resolve implementation from registry) and a configuration that’s specific to a particular matcher type.
|
|
16
|
+
*/
|
|
17
|
+
export interface MatcherConfig {
|
|
18
|
+
/**
|
|
19
|
+
* The matcher id. This is used to find the matcher implementation from registry.
|
|
20
|
+
*/
|
|
21
|
+
id: string;
|
|
22
|
+
/**
|
|
23
|
+
* The matcher options. This is specific to the matcher implementation: a field name for byName, a frame index for byIndex.
|
|
24
|
+
*/
|
|
25
|
+
options?: unknown;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export interface FieldConfig {
|
|
29
|
+
show?: XYShowMode;
|
|
30
|
+
pointSize?: {
|
|
31
|
+
fixed?: number;
|
|
32
|
+
min?: number;
|
|
33
|
+
max?: number;
|
|
34
|
+
};
|
|
35
|
+
pointShape?: PointShape;
|
|
36
|
+
pointStrokeWidth?: number;
|
|
37
|
+
fillOpacity?: number;
|
|
38
|
+
lineWidth?: number;
|
|
39
|
+
hideFrom?: HideSeriesConfig;
|
|
40
|
+
axisPlacement?: AxisPlacement;
|
|
41
|
+
axisColorMode?: AxisColorMode;
|
|
42
|
+
axisLabel?: string;
|
|
43
|
+
axisWidth?: number;
|
|
44
|
+
axisSoftMin?: number;
|
|
45
|
+
axisSoftMax?: number;
|
|
46
|
+
axisGridShow?: boolean;
|
|
47
|
+
scaleDistribution?: ScaleDistributionConfig;
|
|
48
|
+
axisCenteredZero?: boolean;
|
|
49
|
+
lineStyle?: LineStyle;
|
|
50
|
+
axisBorderShow?: boolean;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
export interface XYSeriesConfig {
|
|
54
|
+
name?: {
|
|
55
|
+
fixed?: string;
|
|
56
|
+
};
|
|
57
|
+
frame?: {
|
|
58
|
+
matcher: MatcherConfig;
|
|
59
|
+
};
|
|
60
|
+
x?: {
|
|
61
|
+
matcher: MatcherConfig;
|
|
62
|
+
};
|
|
63
|
+
y?: {
|
|
64
|
+
matcher: MatcherConfig;
|
|
65
|
+
};
|
|
66
|
+
color?: {
|
|
67
|
+
matcher: MatcherConfig;
|
|
68
|
+
};
|
|
69
|
+
size?: {
|
|
70
|
+
matcher: MatcherConfig;
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
export interface Options {
|
|
75
|
+
mapping: SeriesMapping;
|
|
76
|
+
legend: VizLegendOptions;
|
|
77
|
+
tooltip: VizTooltipOptions;
|
|
78
|
+
series: XYSeriesConfig[];
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* TODO docs
|
|
83
|
+
*/
|
|
84
|
+
export interface HideSeriesConfig {
|
|
85
|
+
tooltip: boolean;
|
|
86
|
+
legend: boolean;
|
|
87
|
+
viz: boolean;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* TODO docs
|
|
92
|
+
*/
|
|
93
|
+
export type AxisPlacement = "auto" | "top" | "right" | "bottom" | "left" | "hidden";
|
|
94
|
+
|
|
95
|
+
/**
|
|
96
|
+
* TODO docs
|
|
97
|
+
*/
|
|
98
|
+
export type AxisColorMode = "text" | "series";
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* TODO docs
|
|
102
|
+
*/
|
|
103
|
+
export interface ScaleDistributionConfig {
|
|
104
|
+
type: ScaleDistribution;
|
|
105
|
+
log?: number;
|
|
106
|
+
linearThreshold?: number;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* TODO docs
|
|
111
|
+
*/
|
|
112
|
+
export interface LineStyle {
|
|
113
|
+
fill?: "solid" | "dash" | "dot" | "square";
|
|
114
|
+
dash?: number[];
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
/**
|
|
118
|
+
* TODO docs
|
|
119
|
+
*/
|
|
120
|
+
export interface VizLegendOptions {
|
|
121
|
+
displayMode: LegendDisplayMode;
|
|
122
|
+
placement: LegendPlacement;
|
|
123
|
+
showLegend: boolean;
|
|
124
|
+
asTable?: boolean;
|
|
125
|
+
isVisible?: boolean;
|
|
126
|
+
sortBy?: string;
|
|
127
|
+
sortDesc?: boolean;
|
|
128
|
+
width?: number;
|
|
129
|
+
calcs: string[];
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
/**
|
|
133
|
+
* TODO docs
|
|
134
|
+
*/
|
|
135
|
+
export interface VizTooltipOptions {
|
|
136
|
+
mode: TooltipDisplayMode;
|
|
137
|
+
sort: SortOrder;
|
|
138
|
+
maxWidth?: number;
|
|
139
|
+
maxHeight?: number;
|
|
140
|
+
hideZeros?: boolean;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
/**
|
|
144
|
+
* TODO docs
|
|
145
|
+
*/
|
|
146
|
+
export type ScaleDistribution = "linear" | "log" | "ordinal" | "symlog";
|
|
147
|
+
|
|
148
|
+
/**
|
|
149
|
+
* TODO docs
|
|
150
|
+
* Note: "hidden" needs to remain as an option for plugins compatibility
|
|
151
|
+
*/
|
|
152
|
+
export type LegendDisplayMode = "list" | "table" | "hidden";
|
|
153
|
+
|
|
154
|
+
/**
|
|
155
|
+
* TODO docs
|
|
156
|
+
*/
|
|
157
|
+
export type LegendPlacement = "bottom" | "right";
|
|
158
|
+
|
|
159
|
+
/**
|
|
160
|
+
* TODO docs
|
|
161
|
+
*/
|
|
162
|
+
export type TooltipDisplayMode = "single" | "multi" | "none";
|
|
163
|
+
|
|
164
|
+
/**
|
|
165
|
+
* TODO docs
|
|
166
|
+
*/
|
|
167
|
+
export type SortOrder = "asc" | "desc" | "none";
|