Compare commits
3 Commits
ash/react-
...
wb/plugins
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c86b05ec10 | ||
|
|
0102c0447b | ||
|
|
c065ba3a6f |
4
.github/CODEOWNERS
vendored
4
.github/CODEOWNERS
vendored
@@ -440,7 +440,6 @@ i18next.config.ts @grafana/grafana-frontend-platform
|
|||||||
/e2e-playwright/dashboards/TestDashboard.json @grafana/dashboards-squad @grafana/grafana-search-navigate-organise
|
/e2e-playwright/dashboards/TestDashboard.json @grafana/dashboards-squad @grafana/grafana-search-navigate-organise
|
||||||
/e2e-playwright/dashboards/TestV2Dashboard.json @grafana/dashboards-squad
|
/e2e-playwright/dashboards/TestV2Dashboard.json @grafana/dashboards-squad
|
||||||
/e2e-playwright/dashboards/V2DashWithRepeats.json @grafana/dashboards-squad
|
/e2e-playwright/dashboards/V2DashWithRepeats.json @grafana/dashboards-squad
|
||||||
/e2e-playwright/dashboards/V2DashWithRowRepeats.json @grafana/dashboards-squad
|
|
||||||
/e2e-playwright/dashboards/V2DashWithTabRepeats.json @grafana/dashboards-squad
|
/e2e-playwright/dashboards/V2DashWithTabRepeats.json @grafana/dashboards-squad
|
||||||
/e2e-playwright/dashboards-suite/adhoc-filter-from-panel.spec.ts @grafana/datapro
|
/e2e-playwright/dashboards-suite/adhoc-filter-from-panel.spec.ts @grafana/datapro
|
||||||
/e2e-playwright/dashboards-suite/dashboard-browse-nested.spec.ts @grafana/grafana-search-navigate-organise
|
/e2e-playwright/dashboards-suite/dashboard-browse-nested.spec.ts @grafana/grafana-search-navigate-organise
|
||||||
@@ -543,7 +542,6 @@ i18next.config.ts @grafana/grafana-frontend-platform
|
|||||||
/packages/grafana-data/tsconfig.json @grafana/grafana-frontend-platform
|
/packages/grafana-data/tsconfig.json @grafana/grafana-frontend-platform
|
||||||
/packages/grafana-data/test/ @grafana/grafana-frontend-platform
|
/packages/grafana-data/test/ @grafana/grafana-frontend-platform
|
||||||
/packages/grafana-data/typings/ @grafana/grafana-frontend-platform
|
/packages/grafana-data/typings/ @grafana/grafana-frontend-platform
|
||||||
/packages/grafana-data/scripts/ @grafana/grafana-frontend-platform
|
|
||||||
|
|
||||||
/packages/grafana-data/src/**/*logs* @grafana/observability-logs
|
/packages/grafana-data/src/**/*logs* @grafana/observability-logs
|
||||||
/packages/grafana-data/src/context/plugins/ @grafana/plugins-platform-frontend
|
/packages/grafana-data/src/context/plugins/ @grafana/plugins-platform-frontend
|
||||||
@@ -659,7 +657,6 @@ i18next.config.ts @grafana/grafana-frontend-platform
|
|||||||
/packages/grafana-runtime/src/services/LocationService.tsx @grafana/grafana-search-navigate-organise
|
/packages/grafana-runtime/src/services/LocationService.tsx @grafana/grafana-search-navigate-organise
|
||||||
/packages/grafana-runtime/src/services/LocationSrv.ts @grafana/grafana-search-navigate-organise
|
/packages/grafana-runtime/src/services/LocationSrv.ts @grafana/grafana-search-navigate-organise
|
||||||
/packages/grafana-runtime/src/services/live.ts @grafana/dashboards-squad
|
/packages/grafana-runtime/src/services/live.ts @grafana/dashboards-squad
|
||||||
/packages/grafana-runtime/src/services/pluginMeta @grafana/plugins-platform-frontend
|
|
||||||
/packages/grafana-runtime/src/utils/chromeHeaderHeight.ts @grafana/grafana-search-navigate-organise
|
/packages/grafana-runtime/src/utils/chromeHeaderHeight.ts @grafana/grafana-search-navigate-organise
|
||||||
/packages/grafana-runtime/src/utils/DataSourceWithBackend* @grafana/grafana-datasources-core-services
|
/packages/grafana-runtime/src/utils/DataSourceWithBackend* @grafana/grafana-datasources-core-services
|
||||||
/packages/grafana-runtime/src/utils/licensing.ts @grafana/grafana-operator-experience-squad
|
/packages/grafana-runtime/src/utils/licensing.ts @grafana/grafana-operator-experience-squad
|
||||||
@@ -1278,7 +1275,6 @@ embed.go @grafana/grafana-as-code
|
|||||||
/.github/workflows/i18n-crowdin-download.yml @grafana/grafana-frontend-platform
|
/.github/workflows/i18n-crowdin-download.yml @grafana/grafana-frontend-platform
|
||||||
/.github/workflows/i18n-crowdin-create-tasks.yml @grafana/grafana-frontend-platform
|
/.github/workflows/i18n-crowdin-create-tasks.yml @grafana/grafana-frontend-platform
|
||||||
/.github/workflows/i18n-verify.yml @grafana/grafana-frontend-platform
|
/.github/workflows/i18n-verify.yml @grafana/grafana-frontend-platform
|
||||||
/.github/workflows/deploy-storybook.yml @grafana/grafana-frontend-platform
|
|
||||||
/.github/workflows/deploy-storybook-preview.yml @grafana/grafana-frontend-platform
|
/.github/workflows/deploy-storybook-preview.yml @grafana/grafana-frontend-platform
|
||||||
/.github/workflows/scripts/crowdin/create-tasks.ts @grafana/grafana-frontend-platform
|
/.github/workflows/scripts/crowdin/create-tasks.ts @grafana/grafana-frontend-platform
|
||||||
/.github/workflows/scripts/publish-frontend-metrics.mts @grafana/grafana-frontend-platform
|
/.github/workflows/scripts/publish-frontend-metrics.mts @grafana/grafana-frontend-platform
|
||||||
|
|||||||
79
.github/workflows/deploy-storybook.yml
vendored
79
.github/workflows/deploy-storybook.yml
vendored
@@ -1,79 +0,0 @@
|
|||||||
name: Deploy Storybook
|
|
||||||
|
|
||||||
on:
|
|
||||||
workflow_dispatch:
|
|
||||||
# push:
|
|
||||||
# branches:
|
|
||||||
# - main
|
|
||||||
|
|
||||||
concurrency:
|
|
||||||
group: ${{ github.workflow }}-${{ github.ref }}
|
|
||||||
cancel-in-progress: true
|
|
||||||
|
|
||||||
permissions: {}
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
detect-changes:
|
|
||||||
# Only run in grafana/grafana
|
|
||||||
if: github.repository == 'grafana/grafana'
|
|
||||||
name: Detect whether code changed
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
outputs:
|
|
||||||
changed-frontend-packages: ${{ steps.detect-changes.outputs.frontend-packages }}
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v5
|
|
||||||
with:
|
|
||||||
persist-credentials: true # required to get more history in the changed-files action
|
|
||||||
fetch-depth: 2
|
|
||||||
- name: Detect changes
|
|
||||||
id: detect-changes
|
|
||||||
uses: ./.github/actions/change-detection
|
|
||||||
with:
|
|
||||||
self: .github/workflows/deploy-storybook.yml
|
|
||||||
deploy-storybook:
|
|
||||||
name: Deploy Storybook
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
needs: detect-changes
|
|
||||||
# Only run in grafana/grafana
|
|
||||||
if: github.repository == 'grafana/grafana' && needs.detect-changes.outputs.changed-frontend-packages == 'true'
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
id-token: write
|
|
||||||
|
|
||||||
env:
|
|
||||||
BUCKET_NAME: grafana-storybook
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: Checkout code
|
|
||||||
uses: actions/checkout@v5
|
|
||||||
with:
|
|
||||||
persist-credentials: false
|
|
||||||
|
|
||||||
- name: Setup Node.js
|
|
||||||
uses: ./.github/actions/setup-node
|
|
||||||
|
|
||||||
- name: Install dependencies
|
|
||||||
run: yarn install --immutable
|
|
||||||
|
|
||||||
- name: Build storybook
|
|
||||||
run: yarn storybook:build
|
|
||||||
|
|
||||||
# Create the GCS folder name
|
|
||||||
# Right now, this just returns "canary"
|
|
||||||
# But we'll expand this to work for "latest" as well in the future
|
|
||||||
- name: Create deploy name
|
|
||||||
id: create-deploy-name
|
|
||||||
run: |
|
|
||||||
echo "deploy-name=canary" >> "$GITHUB_OUTPUT"
|
|
||||||
|
|
||||||
- name: Upload Storybook
|
|
||||||
uses: grafana/shared-workflows/actions/push-to-gcs@main
|
|
||||||
with:
|
|
||||||
environment: prod
|
|
||||||
bucket: ${{ env.BUCKET_NAME }}
|
|
||||||
bucket_path: ${{ steps.create-deploy-name.outputs.deploy-name }}
|
|
||||||
path: packages/grafana-ui/dist/storybook
|
|
||||||
service_account: github-gf-storybook-deploy@grafanalabs-workload-identity.iam.gserviceaccount.com
|
|
||||||
parent: false
|
|
||||||
@@ -121,8 +121,6 @@ linters:
|
|||||||
- '**/pkg/tsdb/zipkin/**/*'
|
- '**/pkg/tsdb/zipkin/**/*'
|
||||||
- '**/pkg/tsdb/jaeger/*'
|
- '**/pkg/tsdb/jaeger/*'
|
||||||
- '**/pkg/tsdb/jaeger/**/*'
|
- '**/pkg/tsdb/jaeger/**/*'
|
||||||
- '**/pkg/tsdb/elasticsearch/*'
|
|
||||||
- '**/pkg/tsdb/elasticsearch/**/*'
|
|
||||||
deny:
|
deny:
|
||||||
- pkg: github.com/grafana/grafana/pkg/api
|
- pkg: github.com/grafana/grafana/pkg/api
|
||||||
desc: Core plugins are not allowed to depend on Grafana core packages
|
desc: Core plugins are not allowed to depend on Grafana core packages
|
||||||
|
|||||||
7
Makefile
7
Makefile
@@ -135,7 +135,7 @@ i18n-extract-enterprise:
|
|||||||
@echo "Skipping i18n extract for Enterprise: not enabled"
|
@echo "Skipping i18n extract for Enterprise: not enabled"
|
||||||
else
|
else
|
||||||
i18n-extract-enterprise:
|
i18n-extract-enterprise:
|
||||||
@echo "Extracting i18n strings for Enterprise"
|
@echo "Extracting i18n strings for Enterprise"
|
||||||
cd public/locales/enterprise && yarn run i18next-cli extract --sync-primary
|
cd public/locales/enterprise && yarn run i18next-cli extract --sync-primary
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@@ -227,10 +227,6 @@ fix-cue:
|
|||||||
gen-jsonnet:
|
gen-jsonnet:
|
||||||
go generate ./devenv/jsonnet
|
go generate ./devenv/jsonnet
|
||||||
|
|
||||||
.PHONY: gen-themes
|
|
||||||
gen-themes:
|
|
||||||
go generate ./pkg/services/preference
|
|
||||||
|
|
||||||
.PHONY: update-workspace
|
.PHONY: update-workspace
|
||||||
update-workspace: gen-go
|
update-workspace: gen-go
|
||||||
@echo "updating workspace"
|
@echo "updating workspace"
|
||||||
@@ -248,7 +244,6 @@ build-go-fast: ## Build all Go binaries without updating workspace.
|
|||||||
.PHONY: build-backend
|
.PHONY: build-backend
|
||||||
build-backend: ## Build Grafana backend.
|
build-backend: ## Build Grafana backend.
|
||||||
@echo "build backend"
|
@echo "build backend"
|
||||||
$(MAKE) gen-themes
|
|
||||||
$(GO) run build.go $(GO_BUILD_FLAGS) build-backend
|
$(GO) run build.go $(GO_BUILD_FLAGS) build-backend
|
||||||
|
|
||||||
.PHONY: build-air
|
.PHONY: build-air
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ type check struct {
|
|||||||
PluginStore pluginstore.Store
|
PluginStore pluginstore.Store
|
||||||
PluginContextProvider PluginContextProvider
|
PluginContextProvider PluginContextProvider
|
||||||
PluginClient plugins.Client
|
PluginClient plugins.Client
|
||||||
PluginRepo checks.PluginInfoGetter
|
PluginRepo repo.Service
|
||||||
GrafanaVersion string
|
GrafanaVersion string
|
||||||
pluginCanBeInstalledCache map[string]bool
|
pluginCanBeInstalledCache map[string]bool
|
||||||
pluginExistsCacheMu sync.RWMutex
|
pluginExistsCacheMu sync.RWMutex
|
||||||
@@ -39,7 +39,7 @@ func New(
|
|||||||
pluginStore pluginstore.Store,
|
pluginStore pluginstore.Store,
|
||||||
pluginContextProvider PluginContextProvider,
|
pluginContextProvider PluginContextProvider,
|
||||||
pluginClient plugins.Client,
|
pluginClient plugins.Client,
|
||||||
pluginRepo checks.PluginInfoGetter,
|
pluginRepo repo.Service,
|
||||||
grafanaVersion string,
|
grafanaVersion string,
|
||||||
) checks.Check {
|
) checks.Check {
|
||||||
return &check{
|
return &check{
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ import (
|
|||||||
|
|
||||||
type missingPluginStep struct {
|
type missingPluginStep struct {
|
||||||
PluginStore pluginstore.Store
|
PluginStore pluginstore.Store
|
||||||
PluginRepo checks.PluginInfoGetter
|
PluginRepo repo.Service
|
||||||
GrafanaVersion string
|
GrafanaVersion string
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,6 @@ import (
|
|||||||
|
|
||||||
"github.com/grafana/grafana-app-sdk/logging"
|
"github.com/grafana/grafana-app-sdk/logging"
|
||||||
advisorv0alpha1 "github.com/grafana/grafana/apps/advisor/pkg/apis/advisor/v0alpha1"
|
advisorv0alpha1 "github.com/grafana/grafana/apps/advisor/pkg/apis/advisor/v0alpha1"
|
||||||
"github.com/grafana/grafana/pkg/plugins/repo"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
// Check returns metadata about the check being executed and the list of Steps
|
// Check returns metadata about the check being executed and the list of Steps
|
||||||
@@ -38,10 +37,3 @@ type Step interface {
|
|||||||
// Run executes the step for an item and returns a report
|
// Run executes the step for an item and returns a report
|
||||||
Run(ctx context.Context, log logging.Logger, obj *advisorv0alpha1.CheckSpec, item any) ([]advisorv0alpha1.CheckReportFailure, error)
|
Run(ctx context.Context, log logging.Logger, obj *advisorv0alpha1.CheckSpec, item any) ([]advisorv0alpha1.CheckReportFailure, error)
|
||||||
}
|
}
|
||||||
|
|
||||||
// PluginInfoGetter is a minimal interface for retrieving plugin information from a repository.
|
|
||||||
// It contains only the GetPluginsInfo method used by plugincheck and datasourcecheck.
|
|
||||||
type PluginInfoGetter interface {
|
|
||||||
// GetPluginsInfo will return a list of plugins from grafana.com/api/plugins.
|
|
||||||
GetPluginsInfo(ctx context.Context, options repo.GetPluginsInfoOptions, compatOpts repo.CompatOpts) ([]repo.PluginInfo, error)
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ const (
|
|||||||
|
|
||||||
func New(
|
func New(
|
||||||
pluginStore pluginstore.Store,
|
pluginStore pluginstore.Store,
|
||||||
pluginRepo checks.PluginInfoGetter,
|
pluginRepo repo.Service,
|
||||||
updateChecker pluginchecker.PluginUpdateChecker,
|
updateChecker pluginchecker.PluginUpdateChecker,
|
||||||
pluginErrorResolver plugins.ErrorResolver,
|
pluginErrorResolver plugins.ErrorResolver,
|
||||||
grafanaVersion string,
|
grafanaVersion string,
|
||||||
@@ -33,7 +33,7 @@ func New(
|
|||||||
|
|
||||||
type check struct {
|
type check struct {
|
||||||
PluginStore pluginstore.Store
|
PluginStore pluginstore.Store
|
||||||
PluginRepo checks.PluginInfoGetter
|
PluginRepo repo.Service
|
||||||
updateChecker pluginchecker.PluginUpdateChecker
|
updateChecker pluginchecker.PluginUpdateChecker
|
||||||
pluginErrorResolver plugins.ErrorResolver
|
pluginErrorResolver plugins.ErrorResolver
|
||||||
GrafanaVersion string
|
GrafanaVersion string
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ go 1.25.5
|
|||||||
|
|
||||||
require (
|
require (
|
||||||
github.com/go-kit/log v0.2.1
|
github.com/go-kit/log v0.2.1
|
||||||
github.com/grafana/alerting v0.0.0-20260112172717-98a49ed9557f
|
github.com/grafana/alerting v0.0.0-20251231150637-b7821017d69f
|
||||||
github.com/grafana/dskit v0.0.0-20250908063411-6b6da59b5cc4
|
github.com/grafana/dskit v0.0.0-20250908063411-6b6da59b5cc4
|
||||||
github.com/grafana/grafana-app-sdk v0.48.7
|
github.com/grafana/grafana-app-sdk v0.48.7
|
||||||
github.com/grafana/grafana-app-sdk/logging v0.48.7
|
github.com/grafana/grafana-app-sdk/logging v0.48.7
|
||||||
|
|||||||
@@ -243,8 +243,8 @@ github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
|
|||||||
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
||||||
github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg=
|
github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg=
|
||||||
github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk=
|
github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk=
|
||||||
github.com/grafana/alerting v0.0.0-20260112172717-98a49ed9557f h1:3bXOyht68qkfvD6Y8z8XoenFbytSSOIkr/s+AqRzj0o=
|
github.com/grafana/alerting v0.0.0-20251231150637-b7821017d69f h1:Br4SaUL3dnVopKKNhDavCLgehw60jdtl/sIxdfzmVts=
|
||||||
github.com/grafana/alerting v0.0.0-20260112172717-98a49ed9557f/go.mod h1:Ji0SfJChcwjgq8ljy6Y5CcYfHfAYKXjKYeysOoDS/6s=
|
github.com/grafana/alerting v0.0.0-20251231150637-b7821017d69f/go.mod h1:l7v67cgP7x72ajB9UPZlumdrHqNztpKoqQ52cU8T3LU=
|
||||||
github.com/grafana/dskit v0.0.0-20250908063411-6b6da59b5cc4 h1:jSojuc7njleS3UOz223WDlXOinmuLAIPI0z2vtq8EgI=
|
github.com/grafana/dskit v0.0.0-20250908063411-6b6da59b5cc4 h1:jSojuc7njleS3UOz223WDlXOinmuLAIPI0z2vtq8EgI=
|
||||||
github.com/grafana/dskit v0.0.0-20250908063411-6b6da59b5cc4/go.mod h1:VahT+GtfQIM+o8ht2StR6J9g+Ef+C2Vokh5uuSmOD/4=
|
github.com/grafana/dskit v0.0.0-20250908063411-6b6da59b5cc4/go.mod h1:VahT+GtfQIM+o8ht2StR6J9g+Ef+C2Vokh5uuSmOD/4=
|
||||||
github.com/grafana/grafana-app-sdk v0.48.7 h1:9mF7nqkqP0QUYYDlznoOt+GIyjzj45wGfUHB32u2ZMo=
|
github.com/grafana/grafana-app-sdk v0.48.7 h1:9mF7nqkqP0QUYYDlznoOt+GIyjzj45wGfUHB32u2ZMo=
|
||||||
|
|||||||
@@ -254,18 +254,8 @@ FieldConfig: {
|
|||||||
// custom is specified by the FieldConfig field
|
// custom is specified by the FieldConfig field
|
||||||
// in panel plugin schemas.
|
// in panel plugin schemas.
|
||||||
custom?: {...}
|
custom?: {...}
|
||||||
|
|
||||||
// Calculate min max per field
|
|
||||||
fieldMinMax?: bool
|
|
||||||
|
|
||||||
// How null values should be handled when calculating field stats
|
|
||||||
// "null" - Include null values, "connected" - Ignore nulls, "null as zero" - Treat nulls as zero
|
|
||||||
nullValueMode?: NullValueMode
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// How null values should be handled
|
|
||||||
NullValueMode: "null" | "connected" | "null as zero"
|
|
||||||
|
|
||||||
DynamicConfigValue: {
|
DynamicConfigValue: {
|
||||||
id: string | *""
|
id: string | *""
|
||||||
value?: _
|
value?: _
|
||||||
|
|||||||
@@ -250,18 +250,8 @@ FieldConfig: {
|
|||||||
// custom is specified by the FieldConfig field
|
// custom is specified by the FieldConfig field
|
||||||
// in panel plugin schemas.
|
// in panel plugin schemas.
|
||||||
custom?: {...}
|
custom?: {...}
|
||||||
|
|
||||||
// Calculate min max per field
|
|
||||||
fieldMinMax?: bool
|
|
||||||
|
|
||||||
// How null values should be handled when calculating field stats
|
|
||||||
// "null" - Include null values, "connected" - Ignore nulls, "null as zero" - Treat nulls as zero
|
|
||||||
nullValueMode?: NullValueMode
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// How null values should be handled
|
|
||||||
NullValueMode: "null" | "connected" | "null as zero"
|
|
||||||
|
|
||||||
DynamicConfigValue: {
|
DynamicConfigValue: {
|
||||||
id: string | *""
|
id: string | *""
|
||||||
value?: _
|
value?: _
|
||||||
|
|||||||
@@ -258,18 +258,8 @@ FieldConfig: {
|
|||||||
// custom is specified by the FieldConfig field
|
// custom is specified by the FieldConfig field
|
||||||
// in panel plugin schemas.
|
// in panel plugin schemas.
|
||||||
custom?: {...}
|
custom?: {...}
|
||||||
|
|
||||||
// Calculate min max per field
|
|
||||||
fieldMinMax?: bool
|
|
||||||
|
|
||||||
// How null values should be handled when calculating field stats
|
|
||||||
// "null" - Include null values, "connected" - Ignore nulls, "null as zero" - Treat nulls as zero
|
|
||||||
nullValueMode?: NullValueMode
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// How null values should be handled
|
|
||||||
NullValueMode: "null" | "connected" | "null as zero"
|
|
||||||
|
|
||||||
DynamicConfigValue: {
|
DynamicConfigValue: {
|
||||||
id: string | *""
|
id: string | *""
|
||||||
value?: _
|
value?: _
|
||||||
|
|||||||
@@ -419,11 +419,6 @@ type DashboardFieldConfig struct {
|
|||||||
// custom is specified by the FieldConfig field
|
// custom is specified by the FieldConfig field
|
||||||
// in panel plugin schemas.
|
// in panel plugin schemas.
|
||||||
Custom map[string]interface{} `json:"custom,omitempty"`
|
Custom map[string]interface{} `json:"custom,omitempty"`
|
||||||
// Calculate min max per field
|
|
||||||
FieldMinMax *bool `json:"fieldMinMax,omitempty"`
|
|
||||||
// How null values should be handled when calculating field stats
|
|
||||||
// "null" - Include null values, "connected" - Ignore nulls, "null as zero" - Treat nulls as zero
|
|
||||||
NullValueMode *DashboardNullValueMode `json:"nullValueMode,omitempty"`
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// NewDashboardFieldConfig creates a new DashboardFieldConfig object.
|
// NewDashboardFieldConfig creates a new DashboardFieldConfig object.
|
||||||
@@ -750,16 +745,6 @@ func NewDashboardActionVariable() *DashboardActionVariable {
|
|||||||
// +k8s:openapi-gen=true
|
// +k8s:openapi-gen=true
|
||||||
const DashboardActionVariableType = "string"
|
const DashboardActionVariableType = "string"
|
||||||
|
|
||||||
// How null values should be handled
|
|
||||||
// +k8s:openapi-gen=true
|
|
||||||
type DashboardNullValueMode string
|
|
||||||
|
|
||||||
const (
|
|
||||||
DashboardNullValueModeNull DashboardNullValueMode = "null"
|
|
||||||
DashboardNullValueModeConnected DashboardNullValueMode = "connected"
|
|
||||||
DashboardNullValueModeNullAsZero DashboardNullValueMode = "null as zero"
|
|
||||||
)
|
|
||||||
|
|
||||||
// +k8s:openapi-gen=true
|
// +k8s:openapi-gen=true
|
||||||
type DashboardDynamicConfigValue struct {
|
type DashboardDynamicConfigValue struct {
|
||||||
Id string `json:"id"`
|
Id string `json:"id"`
|
||||||
|
|||||||
@@ -2277,20 +2277,6 @@ func schema_pkg_apis_dashboard_v2alpha1_DashboardFieldConfig(ref common.Referenc
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
"fieldMinMax": {
|
|
||||||
SchemaProps: spec.SchemaProps{
|
|
||||||
Description: "Calculate min max per field",
|
|
||||||
Type: []string{"boolean"},
|
|
||||||
Format: "",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
"nullValueMode": {
|
|
||||||
SchemaProps: spec.SchemaProps{
|
|
||||||
Description: "How null values should be handled when calculating field stats \"null\" - Include null values, \"connected\" - Ignore nulls, \"null as zero\" - Treat nulls as zero",
|
|
||||||
Type: []string{"string"},
|
|
||||||
Format: "",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -254,18 +254,8 @@ FieldConfig: {
|
|||||||
// custom is specified by the FieldConfig field
|
// custom is specified by the FieldConfig field
|
||||||
// in panel plugin schemas.
|
// in panel plugin schemas.
|
||||||
custom?: {...}
|
custom?: {...}
|
||||||
|
|
||||||
// Calculate min max per field
|
|
||||||
fieldMinMax?: bool
|
|
||||||
|
|
||||||
// How null values should be handled when calculating field stats
|
|
||||||
// "null" - Include null values, "connected" - Ignore nulls, "null as zero" - Treat nulls as zero
|
|
||||||
nullValueMode?: NullValueMode
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// How null values should be handled
|
|
||||||
NullValueMode: "null" | "connected" | "null as zero"
|
|
||||||
|
|
||||||
DynamicConfigValue: {
|
DynamicConfigValue: {
|
||||||
id: string | *""
|
id: string | *""
|
||||||
value?: _
|
value?: _
|
||||||
|
|||||||
@@ -423,11 +423,6 @@ type DashboardFieldConfig struct {
|
|||||||
// custom is specified by the FieldConfig field
|
// custom is specified by the FieldConfig field
|
||||||
// in panel plugin schemas.
|
// in panel plugin schemas.
|
||||||
Custom map[string]interface{} `json:"custom,omitempty"`
|
Custom map[string]interface{} `json:"custom,omitempty"`
|
||||||
// Calculate min max per field
|
|
||||||
FieldMinMax *bool `json:"fieldMinMax,omitempty"`
|
|
||||||
// How null values should be handled when calculating field stats
|
|
||||||
// "null" - Include null values, "connected" - Ignore nulls, "null as zero" - Treat nulls as zero
|
|
||||||
NullValueMode *DashboardNullValueMode `json:"nullValueMode,omitempty"`
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// NewDashboardFieldConfig creates a new DashboardFieldConfig object.
|
// NewDashboardFieldConfig creates a new DashboardFieldConfig object.
|
||||||
@@ -754,16 +749,6 @@ func NewDashboardActionVariable() *DashboardActionVariable {
|
|||||||
// +k8s:openapi-gen=true
|
// +k8s:openapi-gen=true
|
||||||
const DashboardActionVariableType = "string"
|
const DashboardActionVariableType = "string"
|
||||||
|
|
||||||
// How null values should be handled
|
|
||||||
// +k8s:openapi-gen=true
|
|
||||||
type DashboardNullValueMode string
|
|
||||||
|
|
||||||
const (
|
|
||||||
DashboardNullValueModeNull DashboardNullValueMode = "null"
|
|
||||||
DashboardNullValueModeConnected DashboardNullValueMode = "connected"
|
|
||||||
DashboardNullValueModeNullAsZero DashboardNullValueMode = "null as zero"
|
|
||||||
)
|
|
||||||
|
|
||||||
// +k8s:openapi-gen=true
|
// +k8s:openapi-gen=true
|
||||||
type DashboardDynamicConfigValue struct {
|
type DashboardDynamicConfigValue struct {
|
||||||
Id string `json:"id"`
|
Id string `json:"id"`
|
||||||
|
|||||||
@@ -2284,20 +2284,6 @@ func schema_pkg_apis_dashboard_v2beta1_DashboardFieldConfig(ref common.Reference
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
"fieldMinMax": {
|
|
||||||
SchemaProps: spec.SchemaProps{
|
|
||||||
Description: "Calculate min max per field",
|
|
||||||
Type: []string{"boolean"},
|
|
||||||
Format: "",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
"nullValueMode": {
|
|
||||||
SchemaProps: spec.SchemaProps{
|
|
||||||
Description: "How null values should be handled when calculating field stats \"null\" - Include null values, \"connected\" - Ignore nulls, \"null as zero\" - Treat nulls as zero",
|
|
||||||
Type: []string{"string"},
|
|
||||||
Format: "",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|||||||
4
apps/dashboard/pkg/apis/dashboard_manifest.go
generated
4
apps/dashboard/pkg/apis/dashboard_manifest.go
generated
File diff suppressed because one or more lines are too long
@@ -1,427 +0,0 @@
|
|||||||
{
|
|
||||||
"annotations": {
|
|
||||||
"list": [
|
|
||||||
{
|
|
||||||
"builtIn": 1,
|
|
||||||
"datasource": {
|
|
||||||
"type": "grafana",
|
|
||||||
"uid": "-- Grafana --"
|
|
||||||
},
|
|
||||||
"enable": true,
|
|
||||||
"hide": true,
|
|
||||||
"iconColor": "rgba(0, 211, 255, 1)",
|
|
||||||
"name": "Annotations \u0026 Alerts",
|
|
||||||
"type": "dashboard"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"datasource": {
|
|
||||||
"type": "grafana",
|
|
||||||
"uid": "-- Grafana --"
|
|
||||||
},
|
|
||||||
"enable": true,
|
|
||||||
"hide": true,
|
|
||||||
"iconColor": "rgba(0, 211, 255, 1)",
|
|
||||||
"name": "Annotations \u0026 Alerts",
|
|
||||||
"target": {
|
|
||||||
"limit": 100,
|
|
||||||
"matchAny": false,
|
|
||||||
"tags": [],
|
|
||||||
"type": "dashboard"
|
|
||||||
},
|
|
||||||
"type": "dashboard"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"datasource": {
|
|
||||||
"type": "grafana-testdata-datasource"
|
|
||||||
},
|
|
||||||
"enable": true,
|
|
||||||
"filter": {
|
|
||||||
"exclude": false,
|
|
||||||
"ids": [
|
|
||||||
1
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"iconColor": "red",
|
|
||||||
"name": "Red, only panel 1",
|
|
||||||
"target": {
|
|
||||||
"lines": 4,
|
|
||||||
"refId": "Anno",
|
|
||||||
"scenarioId": "annotations"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"datasource": {
|
|
||||||
"type": "grafana-testdata-datasource"
|
|
||||||
},
|
|
||||||
"enable": true,
|
|
||||||
"filter": {
|
|
||||||
"exclude": true,
|
|
||||||
"ids": [
|
|
||||||
1
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"iconColor": "yellow",
|
|
||||||
"name": "Yellow - all except 1",
|
|
||||||
"target": {
|
|
||||||
"lines": 5,
|
|
||||||
"refId": "Anno",
|
|
||||||
"scenarioId": "annotations"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"datasource": {
|
|
||||||
"type": "grafana-testdata-datasource"
|
|
||||||
},
|
|
||||||
"enable": true,
|
|
||||||
"filter": {
|
|
||||||
"exclude": false,
|
|
||||||
"ids": [
|
|
||||||
3,
|
|
||||||
4
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"iconColor": "dark-purple",
|
|
||||||
"name": "Purple only panel 3+4",
|
|
||||||
"target": {
|
|
||||||
"lines": 6,
|
|
||||||
"refId": "Anno",
|
|
||||||
"scenarioId": "annotations"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"editable": true,
|
|
||||||
"fiscalYearStartMonth": 0,
|
|
||||||
"graphTooltip": 0,
|
|
||||||
"id": 119,
|
|
||||||
"links": [],
|
|
||||||
"liveNow": false,
|
|
||||||
"panels": [
|
|
||||||
{
|
|
||||||
"datasource": {
|
|
||||||
"type": "grafana-testdata-datasource"
|
|
||||||
},
|
|
||||||
"fieldConfig": {
|
|
||||||
"defaults": {
|
|
||||||
"color": {
|
|
||||||
"mode": "palette-classic"
|
|
||||||
},
|
|
||||||
"custom": {
|
|
||||||
"axisCenteredZero": false,
|
|
||||||
"axisColorMode": "text",
|
|
||||||
"axisLabel": "",
|
|
||||||
"axisPlacement": "auto",
|
|
||||||
"barAlignment": 0,
|
|
||||||
"drawStyle": "line",
|
|
||||||
"fillOpacity": 0,
|
|
||||||
"gradientMode": "none",
|
|
||||||
"hideFrom": {
|
|
||||||
"legend": false,
|
|
||||||
"tooltip": false,
|
|
||||||
"viz": false
|
|
||||||
},
|
|
||||||
"lineInterpolation": "linear",
|
|
||||||
"lineWidth": 1,
|
|
||||||
"pointSize": 5,
|
|
||||||
"scaleDistribution": {
|
|
||||||
"type": "linear"
|
|
||||||
},
|
|
||||||
"showPoints": "auto",
|
|
||||||
"spanNulls": false,
|
|
||||||
"stacking": {
|
|
||||||
"group": "A",
|
|
||||||
"mode": "none"
|
|
||||||
},
|
|
||||||
"thresholdsStyle": {
|
|
||||||
"mode": "off"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"mappings": [],
|
|
||||||
"thresholds": {
|
|
||||||
"mode": "absolute",
|
|
||||||
"steps": [
|
|
||||||
{
|
|
||||||
"color": "green"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"color": "red",
|
|
||||||
"value": 80
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"overrides": []
|
|
||||||
},
|
|
||||||
"gridPos": {
|
|
||||||
"h": 8,
|
|
||||||
"w": 12,
|
|
||||||
"x": 0,
|
|
||||||
"y": 0
|
|
||||||
},
|
|
||||||
"id": 1,
|
|
||||||
"options": {
|
|
||||||
"legend": {
|
|
||||||
"calcs": [],
|
|
||||||
"displayMode": "list",
|
|
||||||
"placement": "bottom",
|
|
||||||
"showLegend": true
|
|
||||||
},
|
|
||||||
"tooltip": {
|
|
||||||
"mode": "single",
|
|
||||||
"sort": "none"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"title": "Panel one",
|
|
||||||
"type": "timeseries"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"datasource": {
|
|
||||||
"type": "grafana-testdata-datasource"
|
|
||||||
},
|
|
||||||
"fieldConfig": {
|
|
||||||
"defaults": {
|
|
||||||
"color": {
|
|
||||||
"mode": "palette-classic"
|
|
||||||
},
|
|
||||||
"custom": {
|
|
||||||
"axisCenteredZero": false,
|
|
||||||
"axisColorMode": "text",
|
|
||||||
"axisLabel": "",
|
|
||||||
"axisPlacement": "auto",
|
|
||||||
"barAlignment": 0,
|
|
||||||
"drawStyle": "line",
|
|
||||||
"fillOpacity": 0,
|
|
||||||
"gradientMode": "none",
|
|
||||||
"hideFrom": {
|
|
||||||
"legend": false,
|
|
||||||
"tooltip": false,
|
|
||||||
"viz": false
|
|
||||||
},
|
|
||||||
"lineInterpolation": "linear",
|
|
||||||
"lineWidth": 1,
|
|
||||||
"pointSize": 5,
|
|
||||||
"scaleDistribution": {
|
|
||||||
"type": "linear"
|
|
||||||
},
|
|
||||||
"showPoints": "auto",
|
|
||||||
"spanNulls": false,
|
|
||||||
"stacking": {
|
|
||||||
"group": "A",
|
|
||||||
"mode": "none"
|
|
||||||
},
|
|
||||||
"thresholdsStyle": {
|
|
||||||
"mode": "off"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"mappings": [],
|
|
||||||
"thresholds": {
|
|
||||||
"mode": "absolute",
|
|
||||||
"steps": [
|
|
||||||
{
|
|
||||||
"color": "green"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"color": "red",
|
|
||||||
"value": 80
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"overrides": []
|
|
||||||
},
|
|
||||||
"gridPos": {
|
|
||||||
"h": 8,
|
|
||||||
"w": 12,
|
|
||||||
"x": 12,
|
|
||||||
"y": 0
|
|
||||||
},
|
|
||||||
"id": 2,
|
|
||||||
"options": {
|
|
||||||
"legend": {
|
|
||||||
"calcs": [],
|
|
||||||
"displayMode": "list",
|
|
||||||
"placement": "bottom",
|
|
||||||
"showLegend": true
|
|
||||||
},
|
|
||||||
"tooltip": {
|
|
||||||
"mode": "single",
|
|
||||||
"sort": "none"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"title": "Panel two",
|
|
||||||
"type": "timeseries"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"datasource": {
|
|
||||||
"type": "grafana-testdata-datasource"
|
|
||||||
},
|
|
||||||
"fieldConfig": {
|
|
||||||
"defaults": {
|
|
||||||
"color": {
|
|
||||||
"mode": "palette-classic"
|
|
||||||
},
|
|
||||||
"custom": {
|
|
||||||
"axisCenteredZero": false,
|
|
||||||
"axisColorMode": "text",
|
|
||||||
"axisLabel": "",
|
|
||||||
"axisPlacement": "auto",
|
|
||||||
"barAlignment": 0,
|
|
||||||
"drawStyle": "line",
|
|
||||||
"fillOpacity": 0,
|
|
||||||
"gradientMode": "none",
|
|
||||||
"hideFrom": {
|
|
||||||
"legend": false,
|
|
||||||
"tooltip": false,
|
|
||||||
"viz": false
|
|
||||||
},
|
|
||||||
"lineInterpolation": "linear",
|
|
||||||
"lineWidth": 1,
|
|
||||||
"pointSize": 5,
|
|
||||||
"scaleDistribution": {
|
|
||||||
"type": "linear"
|
|
||||||
},
|
|
||||||
"showPoints": "auto",
|
|
||||||
"spanNulls": false,
|
|
||||||
"stacking": {
|
|
||||||
"group": "A",
|
|
||||||
"mode": "none"
|
|
||||||
},
|
|
||||||
"thresholdsStyle": {
|
|
||||||
"mode": "off"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"mappings": [],
|
|
||||||
"thresholds": {
|
|
||||||
"mode": "absolute",
|
|
||||||
"steps": [
|
|
||||||
{
|
|
||||||
"color": "green"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"color": "red",
|
|
||||||
"value": 80
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"overrides": []
|
|
||||||
},
|
|
||||||
"gridPos": {
|
|
||||||
"h": 8,
|
|
||||||
"w": 12,
|
|
||||||
"x": 0,
|
|
||||||
"y": 8
|
|
||||||
},
|
|
||||||
"id": 3,
|
|
||||||
"options": {
|
|
||||||
"legend": {
|
|
||||||
"calcs": [],
|
|
||||||
"displayMode": "list",
|
|
||||||
"placement": "bottom",
|
|
||||||
"showLegend": true
|
|
||||||
},
|
|
||||||
"tooltip": {
|
|
||||||
"mode": "single",
|
|
||||||
"sort": "none"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"title": "Panel three",
|
|
||||||
"type": "timeseries"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"datasource": {
|
|
||||||
"type": "grafana-testdata-datasource"
|
|
||||||
},
|
|
||||||
"fieldConfig": {
|
|
||||||
"defaults": {
|
|
||||||
"color": {
|
|
||||||
"mode": "palette-classic"
|
|
||||||
},
|
|
||||||
"custom": {
|
|
||||||
"axisCenteredZero": false,
|
|
||||||
"axisColorMode": "text",
|
|
||||||
"axisLabel": "",
|
|
||||||
"axisPlacement": "auto",
|
|
||||||
"barAlignment": 0,
|
|
||||||
"drawStyle": "line",
|
|
||||||
"fillOpacity": 0,
|
|
||||||
"gradientMode": "none",
|
|
||||||
"hideFrom": {
|
|
||||||
"legend": false,
|
|
||||||
"tooltip": false,
|
|
||||||
"viz": false
|
|
||||||
},
|
|
||||||
"lineInterpolation": "linear",
|
|
||||||
"lineWidth": 1,
|
|
||||||
"pointSize": 5,
|
|
||||||
"scaleDistribution": {
|
|
||||||
"type": "linear"
|
|
||||||
},
|
|
||||||
"showPoints": "auto",
|
|
||||||
"spanNulls": false,
|
|
||||||
"stacking": {
|
|
||||||
"group": "A",
|
|
||||||
"mode": "none"
|
|
||||||
},
|
|
||||||
"thresholdsStyle": {
|
|
||||||
"mode": "off"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"mappings": [],
|
|
||||||
"thresholds": {
|
|
||||||
"mode": "absolute",
|
|
||||||
"steps": [
|
|
||||||
{
|
|
||||||
"color": "green"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"color": "red",
|
|
||||||
"value": 80
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"overrides": []
|
|
||||||
},
|
|
||||||
"gridPos": {
|
|
||||||
"h": 8,
|
|
||||||
"w": 12,
|
|
||||||
"x": 12,
|
|
||||||
"y": 8
|
|
||||||
},
|
|
||||||
"id": 4,
|
|
||||||
"options": {
|
|
||||||
"legend": {
|
|
||||||
"calcs": [],
|
|
||||||
"displayMode": "list",
|
|
||||||
"placement": "bottom",
|
|
||||||
"showLegend": true
|
|
||||||
},
|
|
||||||
"tooltip": {
|
|
||||||
"mode": "single",
|
|
||||||
"sort": "none"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"title": "Panel four",
|
|
||||||
"type": "timeseries"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"refresh": "",
|
|
||||||
"schemaVersion": 42,
|
|
||||||
"tags": [
|
|
||||||
"gdev",
|
|
||||||
"annotations"
|
|
||||||
],
|
|
||||||
"templating": {
|
|
||||||
"list": []
|
|
||||||
},
|
|
||||||
"time": {
|
|
||||||
"from": "now-30m",
|
|
||||||
"to": "now"
|
|
||||||
},
|
|
||||||
"timepicker": {},
|
|
||||||
"timezone": "",
|
|
||||||
"title": "Annotation filtering",
|
|
||||||
"uid": "ed155665",
|
|
||||||
"weekStart": ""
|
|
||||||
}
|
|
||||||
@@ -219,7 +219,8 @@
|
|||||||
"value": 80
|
"value": 80
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
},
|
||||||
|
"unitScale": true
|
||||||
},
|
},
|
||||||
"overrides": []
|
"overrides": []
|
||||||
},
|
},
|
||||||
@@ -311,7 +312,8 @@
|
|||||||
"value": 80
|
"value": 80
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
},
|
||||||
|
"unitScale": true
|
||||||
},
|
},
|
||||||
"overrides": []
|
"overrides": []
|
||||||
},
|
},
|
||||||
@@ -490,7 +492,8 @@
|
|||||||
"value": 80
|
"value": 80
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
},
|
||||||
|
"unitScale": true
|
||||||
},
|
},
|
||||||
"overrides": []
|
"overrides": []
|
||||||
},
|
},
|
||||||
@@ -581,7 +584,8 @@
|
|||||||
"value": 80
|
"value": 80
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
},
|
||||||
|
"unitScale": true
|
||||||
},
|
},
|
||||||
"overrides": []
|
"overrides": []
|
||||||
},
|
},
|
||||||
@@ -672,7 +676,8 @@
|
|||||||
"value": 80
|
"value": 80
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
},
|
||||||
|
"unitScale": true
|
||||||
},
|
},
|
||||||
"overrides": []
|
"overrides": []
|
||||||
},
|
},
|
||||||
@@ -786,7 +791,8 @@
|
|||||||
"value": 80
|
"value": 80
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
},
|
||||||
|
"unitScale": true
|
||||||
},
|
},
|
||||||
"overrides": []
|
"overrides": []
|
||||||
},
|
},
|
||||||
@@ -900,7 +906,8 @@
|
|||||||
"value": 80
|
"value": 80
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
},
|
||||||
|
"unitScale": true
|
||||||
},
|
},
|
||||||
"overrides": []
|
"overrides": []
|
||||||
},
|
},
|
||||||
@@ -1015,7 +1022,8 @@
|
|||||||
"value": 80
|
"value": 80
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
},
|
||||||
|
"unitScale": true
|
||||||
},
|
},
|
||||||
"overrides": []
|
"overrides": []
|
||||||
},
|
},
|
||||||
@@ -65,14 +65,17 @@
|
|||||||
"mode": "absolute",
|
"mode": "absolute",
|
||||||
"steps": [
|
"steps": [
|
||||||
{
|
{
|
||||||
"color": "#7EB26D"
|
"color": "#7EB26D",
|
||||||
|
"index": 0
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"color": "#ef843c",
|
"color": "#ef843c",
|
||||||
|
"index": 1,
|
||||||
"value": 75
|
"value": 75
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"color": "#e24d42",
|
"color": "#e24d42",
|
||||||
|
"index": 2,
|
||||||
"value": 90
|
"value": 90
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -133,14 +136,17 @@
|
|||||||
"mode": "absolute",
|
"mode": "absolute",
|
||||||
"steps": [
|
"steps": [
|
||||||
{
|
{
|
||||||
"color": "#7EB26D"
|
"color": "#7EB26D",
|
||||||
|
"index": 0
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"color": "#ef843c",
|
"color": "#ef843c",
|
||||||
|
"index": 1,
|
||||||
"value": 75
|
"value": 75
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"color": "#e24d42",
|
"color": "#e24d42",
|
||||||
|
"index": 2,
|
||||||
"value": 90
|
"value": 90
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -201,14 +207,17 @@
|
|||||||
"mode": "absolute",
|
"mode": "absolute",
|
||||||
"steps": [
|
"steps": [
|
||||||
{
|
{
|
||||||
"color": "#7EB26D"
|
"color": "#7EB26D",
|
||||||
|
"index": 0
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"color": "#ef843c",
|
"color": "#ef843c",
|
||||||
|
"index": 1,
|
||||||
"value": 75
|
"value": 75
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"color": "#e24d42",
|
"color": "#e24d42",
|
||||||
|
"index": 2,
|
||||||
"value": 90
|
"value": 90
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -262,6 +271,7 @@
|
|||||||
"mode": "thresholds"
|
"mode": "thresholds"
|
||||||
},
|
},
|
||||||
"custom": {},
|
"custom": {},
|
||||||
|
"decimals": "",
|
||||||
"mappings": [],
|
"mappings": [],
|
||||||
"max": 100,
|
"max": 100,
|
||||||
"min": 0,
|
"min": 0,
|
||||||
@@ -269,14 +279,17 @@
|
|||||||
"mode": "absolute",
|
"mode": "absolute",
|
||||||
"steps": [
|
"steps": [
|
||||||
{
|
{
|
||||||
"color": "#7EB26D"
|
"color": "#7EB26D",
|
||||||
|
"index": 0
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"color": "#ef843c",
|
"color": "#ef843c",
|
||||||
|
"index": 1,
|
||||||
"value": 75
|
"value": 75
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"color": "#e24d42",
|
"color": "#e24d42",
|
||||||
|
"index": 2,
|
||||||
"value": 90
|
"value": 90
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -329,6 +342,7 @@
|
|||||||
"mode": "thresholds"
|
"mode": "thresholds"
|
||||||
},
|
},
|
||||||
"custom": {},
|
"custom": {},
|
||||||
|
"decimals": "",
|
||||||
"mappings": [],
|
"mappings": [],
|
||||||
"max": 100,
|
"max": 100,
|
||||||
"min": 0,
|
"min": 0,
|
||||||
@@ -336,14 +350,17 @@
|
|||||||
"mode": "absolute",
|
"mode": "absolute",
|
||||||
"steps": [
|
"steps": [
|
||||||
{
|
{
|
||||||
"color": "#7EB26D"
|
"color": "#7EB26D",
|
||||||
|
"index": 0
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"color": "#ef843c",
|
"color": "#ef843c",
|
||||||
|
"index": 1,
|
||||||
"value": 75
|
"value": 75
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"color": "#e24d42",
|
"color": "#e24d42",
|
||||||
|
"index": 2,
|
||||||
"value": 90
|
"value": 90
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -397,6 +414,7 @@
|
|||||||
"mode": "thresholds"
|
"mode": "thresholds"
|
||||||
},
|
},
|
||||||
"custom": {},
|
"custom": {},
|
||||||
|
"decimals": "",
|
||||||
"mappings": [],
|
"mappings": [],
|
||||||
"max": 100,
|
"max": 100,
|
||||||
"min": 0,
|
"min": 0,
|
||||||
@@ -404,14 +422,17 @@
|
|||||||
"mode": "absolute",
|
"mode": "absolute",
|
||||||
"steps": [
|
"steps": [
|
||||||
{
|
{
|
||||||
"color": "#7EB26D"
|
"color": "#7EB26D",
|
||||||
|
"index": 0
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"color": "#ef843c",
|
"color": "#ef843c",
|
||||||
|
"index": 1,
|
||||||
"value": 75
|
"value": 75
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"color": "#e24d42",
|
"color": "#e24d42",
|
||||||
|
"index": 2,
|
||||||
"value": 90
|
"value": 90
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -464,6 +485,7 @@
|
|||||||
"mode": "thresholds"
|
"mode": "thresholds"
|
||||||
},
|
},
|
||||||
"custom": {},
|
"custom": {},
|
||||||
|
"decimals": "",
|
||||||
"mappings": [],
|
"mappings": [],
|
||||||
"max": 100,
|
"max": 100,
|
||||||
"min": 0,
|
"min": 0,
|
||||||
@@ -471,14 +493,17 @@
|
|||||||
"mode": "absolute",
|
"mode": "absolute",
|
||||||
"steps": [
|
"steps": [
|
||||||
{
|
{
|
||||||
"color": "#7EB26D"
|
"color": "#7EB26D",
|
||||||
|
"index": 0
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"color": "#ef843c",
|
"color": "#ef843c",
|
||||||
|
"index": 1,
|
||||||
"value": 75
|
"value": 75
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"color": "#e24d42",
|
"color": "#e24d42",
|
||||||
|
"index": 2,
|
||||||
"value": 90
|
"value": 90
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -643,6 +668,7 @@
|
|||||||
"mode": "thresholds"
|
"mode": "thresholds"
|
||||||
},
|
},
|
||||||
"custom": {},
|
"custom": {},
|
||||||
|
"decimals": "",
|
||||||
"mappings": [
|
"mappings": [
|
||||||
{
|
{
|
||||||
"options": {
|
"options": {
|
||||||
@@ -659,14 +685,17 @@
|
|||||||
"mode": "absolute",
|
"mode": "absolute",
|
||||||
"steps": [
|
"steps": [
|
||||||
{
|
{
|
||||||
"color": "#7EB26D"
|
"color": "#7EB26D",
|
||||||
|
"index": 0
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"color": "#ef843c",
|
"color": "#ef843c",
|
||||||
|
"index": 1,
|
||||||
"value": 75
|
"value": 75
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"color": "#e24d42",
|
"color": "#e24d42",
|
||||||
|
"index": 2,
|
||||||
"value": 90
|
"value": 90
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -721,6 +750,7 @@
|
|||||||
"mode": "thresholds"
|
"mode": "thresholds"
|
||||||
},
|
},
|
||||||
"custom": {},
|
"custom": {},
|
||||||
|
"decimals": "",
|
||||||
"mappings": [
|
"mappings": [
|
||||||
{
|
{
|
||||||
"options": {
|
"options": {
|
||||||
@@ -738,14 +768,17 @@
|
|||||||
"mode": "absolute",
|
"mode": "absolute",
|
||||||
"steps": [
|
"steps": [
|
||||||
{
|
{
|
||||||
"color": "#7EB26D"
|
"color": "#7EB26D",
|
||||||
|
"index": 0
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"color": "#ef843c",
|
"color": "#ef843c",
|
||||||
|
"index": 1,
|
||||||
"value": 75
|
"value": 75
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"color": "#e24d42",
|
"color": "#e24d42",
|
||||||
|
"index": 2,
|
||||||
"value": 90
|
"value": 90
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -800,6 +833,7 @@
|
|||||||
"mode": "thresholds"
|
"mode": "thresholds"
|
||||||
},
|
},
|
||||||
"custom": {},
|
"custom": {},
|
||||||
|
"decimals": "",
|
||||||
"mappings": [
|
"mappings": [
|
||||||
{
|
{
|
||||||
"options": {
|
"options": {
|
||||||
@@ -818,14 +852,17 @@
|
|||||||
"mode": "absolute",
|
"mode": "absolute",
|
||||||
"steps": [
|
"steps": [
|
||||||
{
|
{
|
||||||
"color": "#7EB26D"
|
"color": "#7EB26D",
|
||||||
|
"index": 0
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"color": "#ef843c",
|
"color": "#ef843c",
|
||||||
|
"index": 1,
|
||||||
"value": 75
|
"value": 75
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"color": "#e24d42",
|
"color": "#e24d42",
|
||||||
|
"index": 2,
|
||||||
"value": 90
|
"value": 90
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -880,6 +917,7 @@
|
|||||||
"mode": "thresholds"
|
"mode": "thresholds"
|
||||||
},
|
},
|
||||||
"custom": {},
|
"custom": {},
|
||||||
|
"decimals": "",
|
||||||
"mappings": [
|
"mappings": [
|
||||||
{
|
{
|
||||||
"options": {
|
"options": {
|
||||||
@@ -908,14 +946,17 @@
|
|||||||
"mode": "absolute",
|
"mode": "absolute",
|
||||||
"steps": [
|
"steps": [
|
||||||
{
|
{
|
||||||
"color": "#7EB26D"
|
"color": "#7EB26D",
|
||||||
|
"index": 0
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"color": "#ef843c",
|
"color": "#ef843c",
|
||||||
|
"index": 1,
|
||||||
"value": 75
|
"value": 75
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"color": "#e24d42",
|
"color": "#e24d42",
|
||||||
|
"index": 2,
|
||||||
"value": 90
|
"value": 90
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -997,7 +1038,7 @@
|
|||||||
"mode": "thresholds"
|
"mode": "thresholds"
|
||||||
},
|
},
|
||||||
"custom": {},
|
"custom": {},
|
||||||
"decimals": 2,
|
"decimals": "2",
|
||||||
"mappings": [],
|
"mappings": [],
|
||||||
"max": 100,
|
"max": 100,
|
||||||
"min": 0,
|
"min": 0,
|
||||||
@@ -1005,14 +1046,17 @@
|
|||||||
"mode": "absolute",
|
"mode": "absolute",
|
||||||
"steps": [
|
"steps": [
|
||||||
{
|
{
|
||||||
"color": "#7EB26D"
|
"color": "#7EB26D",
|
||||||
|
"index": 0
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"color": "#ef843c",
|
"color": "#ef843c",
|
||||||
|
"index": 1,
|
||||||
"value": 75
|
"value": 75
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"color": "#e24d42",
|
"color": "#e24d42",
|
||||||
|
"index": 2,
|
||||||
"value": 90
|
"value": 90
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user