├── .betterer.results ├── .betterer.results.json ├── .betterer.ts ├── .bingo ├── .gitignore ├── README.md ├── Variables.mk ├── bra.mod ├── bra.sum ├── cue.mod ├── cue.sum ├── drone.mod ├── drone.sum ├── go.mod ├── golangci-lint.mod ├── golangci-lint.sum ├── jb.mod ├── jb.sum ├── lefthook.mod ├── lefthook.sum ├── swagger.mod ├── swagger.sum └── variables.env ├── .bra.toml ├── .browserslistrc ├── .changelog-archive ├── CHANGELOG.1.md ├── CHANGELOG.2.md ├── CHANGELOG.3.md ├── CHANGELOG.4.md ├── CHANGELOG.5.md ├── CHANGELOG.6.md ├── CHANGELOG.7.md ├── CHANGELOG.8.md └── CHANGELOG.9.md ├── .dockerignore ├── .drone.star ├── .drone.yml ├── .editorconfig ├── .eslintignore ├── .eslintrc ├── .gitattributes ├── .github ├── CODEOWNERS ├── ISSUE_TEMPLATE │ ├── 0-bug-report.yaml │ ├── 1-feature_requests.md │ ├── 2-accessibility.md │ ├── 3-grafana_ui_component.md │ ├── 4-UX-design.yaml │ ├── 5-chore.md │ ├── 8-Saga_contribution.yaml │ ├── 9-staff_issues.md │ └── config.yml ├── PULL_REQUEST_TEMPLATE.md ├── bot.md ├── commands.json ├── dependabot.yml ├── issue-opened.json ├── metrics-collector.json ├── pr-checks.json ├── pr-commands.json ├── renovate.json5 ├── teams.yml └── workflows │ ├── alerting-swagger-gen.yml │ ├── auto-milestone.yml │ ├── backport.yml │ ├── bump-version.yml │ ├── close-milestone.yml │ ├── codeowners-validator.yml │ ├── codeql-analysis.yml │ ├── commands.yml │ ├── community-release.yml │ ├── core-plugins-build-and-release.yml │ ├── create-security-patch-from-security-mirror.yml │ ├── dashboards-issue-add-label.yml │ ├── detect-breaking-changes-levitate.yml │ ├── doc-validator.yml │ ├── ephemeral-instances-pr-comment.yml │ ├── ephemeral-instances-pr-opened-closed.yml │ ├── epic-add-to-platform-ux-parent-project.yml │ ├── github-release.yml │ ├── i18n-crowdin-download.yml │ ├── i18n-crowdin-upload.yml │ ├── issue-labeled.yml │ ├── issue-opened.yml │ ├── metrics-collector.yml │ ├── milestone.yml │ ├── pr-checks.yml │ ├── pr-codeql-analysis-go.yml │ ├── pr-codeql-analysis-javascript.yml │ ├── pr-codeql-analysis-python.yml │ ├── pr-commands.yml │ ├── pr-go-workspace-check.yml │ ├── pr-patch-check.yml │ ├── publish-kinds-next.yml │ ├── publish-kinds-release.yml │ ├── publish-technical-documentation-next.yml │ ├── publish-technical-documentation-release.yml │ ├── remove-milestone.yml │ ├── run-scenes-e2e.yml │ ├── sbom-report.yml │ ├── scripts │ ├── json-file-to-job-output.js │ ├── kinds │ │ └── verify-kinds.go │ └── pr-get-job-link.js │ ├── snyk.yml │ ├── stale.yml │ ├── sync-mirror.yml │ ├── update-changelog.yml │ ├── update-make-docs.yml │ └── verify-kinds.yml ├── .gitignore ├── .golangci.toml ├── .husky └── pre-commit ├── .levignore.js ├── .nvmrc ├── .pa11yci-pr.conf.js ├── .pa11yci.conf.js ├── .prettierignore ├── .prettierrc.js ├── .vim └── coc-settings.json ├── .vscode └── launch.json ├── .yarn ├── patches │ ├── @storybook-blocks-npm-8.0.10-6f477cd35f.patch │ ├── history-npm-4.10.1-ee217563ae.patch │ ├── react-grid-layout-npm-1.4.4-4024c5395b.patch │ ├── react-split-pane-npm-0.1.92-93dbf51dff.patch │ └── slate-dev-environment-npm-0.2.5-9aeb7da7b5.patch ├── plugins │ └── @yarnpkg │ │ └── plugin-outdated.cjs └── releases │ └── yarn-4.2.2.cjs ├── .yarnrc.yml ├── CHANGELOG.md ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── Dockerfile ├── GOVERNANCE.md ├── HALL_OF_FAME.md ├── LICENSE ├── LICENSING.md ├── MAINTAINERS.md ├── Makefile ├── NOTICE.md ├── README.md ├── ROADMAP.md ├── SECURITY.md ├── SUPPORT.md ├── WORKFLOW.md ├── conf ├── defaults.ini ├── ldap.toml ├── ldap_multiple.toml ├── provisioning │ ├── access-control │ │ └── sample.yaml │ ├── alerting │ │ └── sample.yaml │ ├── dashboards │ │ └── sample.yaml │ ├── datasources │ │ └── sample.yaml │ └── plugins │ │ └── sample.yaml └── sample.ini ├── contribute ├── ISSUE_TRIAGE.md ├── README.md ├── UPGRADING_DEPENDENCIES.md ├── architecture │ ├── README.md │ └── frontend-data-requests.md ├── backend │ ├── README.md │ ├── communication.md │ ├── database.md │ ├── errors.md │ ├── instrumentation.md │ ├── package-hierarchy.md │ ├── recommended-practices.md │ ├── services.md │ ├── style-guide.md │ ├── support-bundles.md │ ├── upgrading-dependencies.md │ └── upgrading-go-version.md ├── breaking-changes-guide │ ├── breaking-changes-comment-screenshot.png │ ├── breaking-changes-console-screenshot-1.png │ ├── breaking-changes-console-screenshot-2.png │ ├── breaking-changes-console-screenshot-3.png │ ├── breaking-changes-guide.md │ └── breaking-changes-workflow.png ├── create-pull-request.md ├── deprecation-policy.md ├── developer-guide.md ├── documentation │ └── README.md ├── drone-pipeline.md ├── engineering │ └── terminology.md ├── feature-toggles.md ├── internationalization.md ├── merge-pull-request.md ├── style-guides │ ├── accessibility.md │ ├── code-comments.md │ ├── e2e-core.md │ ├── e2e-plugins.md │ ├── e2e.md │ ├── frontend.md │ ├── redux.md │ ├── storybook.md │ ├── styling.md │ ├── testing.md │ └── themes.md └── triage-issues.md ├── crowdin.yml ├── cue.mod └── module.cue ├── cypress.config.js ├── devenv ├── README.md ├── alert_rules.yaml ├── bulk-dashboards │ ├── bulk-dashboards.yaml │ └── bulkdash.jsonnet ├── bulk-folders │ ├── bulk-folders.sh │ └── bulk-folders.yaml ├── create_docker_compose.sh ├── dashboards.yaml ├── datasources.yaml ├── datasources_docker.yaml ├── dev-dashboards-without-uid │ ├── panel_tests_graph.json │ ├── panel_tests_graph_time_regions.json │ └── panel_tests_polystat.json ├── dev-dashboards │ ├── all-panels.json │ ├── annotations │ │ └── annotation-filtering.json │ ├── dashboards.go │ ├── datasource-elasticsearch │ │ ├── elasticsearch_complex.json │ │ ├── elasticsearch_migration.json │ │ └── elasticsearch_simple.json │ ├── datasource-influxdb │ │ ├── influxdb-logs.json │ │ └── influxdb-templated.json │ ├── datasource-loki │ │ ├── loki_fakedata.json │ │ └── loki_query_splitting.json │ ├── datasource-mssql │ │ ├── mssql_fakedata.json │ │ └── mssql_unittest.json │ ├── datasource-mysql │ │ ├── mysql_fakedata.json │ │ └── mysql_unittest.json │ ├── datasource-opentsdb │ │ ├── opentsdb.json │ │ └── opentsdb_v23.json │ ├── datasource-postgres │ │ ├── postgres_fakedata.json │ │ └── postgres_unittest.json │ ├── datasource-testdata │ │ ├── bar-gauge-demo2.json │ │ ├── demo1.json │ │ ├── new_features_in_v62.json │ │ ├── new_features_in_v74.json │ │ └── new_features_in_v8.json │ ├── e2e-repeats │ │ ├── Repeating-Kitchen-Sink.json │ │ ├── Repeating-a-panel-horizontally.json │ │ ├── Repeating-a-panel-vertically.json │ │ ├── Repeating-a-row-with-a-repeating-horizontal-panel.json │ │ ├── Repeating-a-row-with-a-repeating-vertical-panel.json │ │ └── Repeating-an-empty-row.json │ ├── feature-templating │ │ ├── datadata-macros.json │ │ ├── global-variables-and-interpolation.json │ │ ├── templating-dashboard-links-and-variables.json │ │ ├── templating-repeating-panels.json │ │ ├── templating-repeating-rows.json │ │ ├── templating-textbox-e2e-scenarios.json │ │ ├── testdata-datalinks.json │ │ ├── testdata-nested-variables-drilldown.json │ │ ├── testdata-nested-variables.json │ │ ├── testdata-test-variable-output.json │ │ ├── testdata-variables-textbox.json │ │ └── testdata-variables-that-update-on-time-change.json │ ├── home.json │ ├── live │ │ ├── live-flakey-refresh.json │ │ ├── live-flakey.json │ │ ├── live-publish.json │ │ └── live-streams.json │ ├── migrations │ │ └── migrations.json │ ├── panel-barchart │ │ ├── barchart-autosizing.json │ │ ├── barchart-label-rotation-skipping.json │ │ ├── barchart-thresholds-mappings.json │ │ └── barchart-tooltips-legends.json │ ├── panel-bargauge │ │ ├── bar_gauge_demo.json │ │ ├── panel_tests_bar_gauge.json │ │ └── panel_tests_bar_gauge2.json │ ├── panel-candlestick │ │ └── candlestick.json │ ├── panel-canvas │ │ ├── canvas-connection-examples.json │ │ ├── canvas-datalinks.json │ │ └── canvas-examples.json │ ├── panel-common │ │ ├── auto_decimals.json │ │ ├── color_modes.json │ │ ├── lazy_loading.json │ │ ├── linked-viz.json │ │ ├── panels_without_title.json │ │ └── shared_queries.json │ ├── panel-dashlist │ │ └── dashlist.json │ ├── panel-datagrid │ │ └── datagrid_metric_values.json │ ├── panel-flamegraph │ │ └── panel_tests_flame_graph.json │ ├── panel-gauge │ │ ├── gauge-multi-series.json │ │ └── gauge_tests.json │ ├── panel-geomap │ │ ├── geomap-color-field.json │ │ ├── geomap-photo-layer.json │ │ ├── geomap-route-layer.json │ │ ├── geomap-spatial-operations-transformer.json │ │ ├── geomap-v91.json │ │ ├── geomap_multi-layers.json │ │ └── panel-geomap.json │ ├── panel-graph │ │ ├── graph-gradient-area-fills.json │ │ ├── graph-shared-tooltips.json │ │ ├── graph-time-regions.json │ │ ├── graph_tests.json │ │ └── graph_y_axis.json │ ├── panel-heatmap │ │ ├── heatmap-calculate-log.json │ │ ├── heatmap-legacy.json │ │ └── heatmap-x.json │ ├── panel-histogram │ │ └── histogram_tests.json │ ├── panel-library │ │ └── panel-library.json │ ├── panel-piechart │ │ └── panel_test_piechart.json │ ├── panel-polystat │ │ └── polystat_test.json │ ├── panel-stat │ │ └── panel-stat-tests.json │ ├── panel-table │ │ ├── table_pagination.json │ │ ├── table_sparkline_cell.json │ │ ├── table_tests.json │ │ └── table_tests_new.json │ ├── panel-text │ │ └── text-options.json │ ├── panel-timeline │ │ ├── timeline-align-endtime.json │ │ ├── timeline-align-nulls-retain.json │ │ ├── timeline-demo.json │ │ ├── timeline-modes.json │ │ └── timeline-thresholds-mappings.json │ ├── panel-timeseries │ │ ├── timeseries-bars-high-density.json │ │ ├── timeseries-by-value-color-schemes.json │ │ ├── timeseries-formats.json │ │ ├── timeseries-gradient-area.json │ │ ├── timeseries-hue-gradients.json │ │ ├── timeseries-nulls.json │ │ ├── timeseries-out-of-rage.json │ │ ├── timeseries-shared-tooltip-cursor-position.json │ │ ├── timeseries-soft-limits.json │ │ ├── timeseries-stacking.json │ │ ├── timeseries-stacking2.json │ │ ├── timeseries-thresholds.json │ │ ├── timeseries-time.json │ │ ├── timeseries-y-ticks-zero-decimals.json │ │ ├── timeseries-yaxis-ticks.json │ │ └── timeseries.json │ ├── panel-trend │ │ └── trend_example.json │ ├── panel-xychart │ │ ├── xychart-example.json │ │ └── xychart-tooltip-color-test.json │ ├── scenarios │ │ ├── relative_time_zone_support.json │ │ ├── slow_queries_and_annotations.json │ │ ├── tall_dashboard.json │ │ └── time_zone_support.json │ └── transforms │ │ ├── config-from-query.json │ │ ├── extract-json-paths.json │ │ ├── filter.json │ │ ├── join-by-field.json │ │ ├── join-by-labels.json │ │ ├── regression-analysis.json │ │ ├── reuse.json │ │ └── rows-to-fields.json ├── docker │ ├── blocks │ │ ├── alert_webhook_listener │ │ │ ├── Dockerfile │ │ │ ├── docker-compose.yaml │ │ │ └── main.go │ │ ├── auth │ │ │ ├── README.md │ │ │ ├── apache_proxy │ │ │ │ ├── Dockerfile │ │ │ │ ├── docker-compose.yaml │ │ │ │ ├── ports.conf │ │ │ │ └── proxy.conf │ │ │ ├── apache_proxy_mac │ │ │ │ ├── Dockerfile │ │ │ │ ├── docker-compose.yaml │ │ │ │ ├── ports.conf │ │ │ │ └── proxy.conf │ │ │ ├── authentik │ │ │ │ ├── README.md │ │ │ │ ├── cert.crt │ │ │ │ ├── cloak.sql │ │ │ │ ├── docker-compose.yaml │ │ │ │ ├── key.pem │ │ │ │ └── ldap_authentik.toml │ │ │ ├── freeipa │ │ │ │ ├── docker-compose.yaml │ │ │ │ ├── ldap_freeipa.toml │ │ │ │ └── notes.md │ │ │ ├── jwt_proxy │ │ │ │ ├── cloak.sql │ │ │ │ ├── docker-build-keycloak-m1-image.sh │ │ │ │ ├── docker-compose.yaml │ │ │ │ ├── jwks.json │ │ │ │ └── readme.md │ │ │ ├── nginx_proxy │ │ │ │ ├── docker-compose.yaml │ │ │ │ ├── htpasswd │ │ │ │ ├── nginx.conf │ │ │ │ └── nginx_login_only.conf │ │ │ ├── nginx_proxy_mac │ │ │ │ ├── Dockerfile │ │ │ │ ├── docker-compose.yaml │ │ │ │ ├── htpasswd │ │ │ │ ├── nginx.conf │ │ │ │ └── nginx_login_only.conf │ │ │ ├── oauth │ │ │ │ ├── cloak.sql │ │ │ │ ├── docker-compose.yaml │ │ │ │ ├── jwks.json │ │ │ │ └── readme.md │ │ │ ├── openldap-multiple │ │ │ │ ├── README.md │ │ │ │ ├── docker-compose.yaml │ │ │ │ ├── ldap_dev.toml │ │ │ │ ├── srv1_prepopulate │ │ │ │ │ ├── 1_units.ldif │ │ │ │ │ ├── 2_users.ldif │ │ │ │ │ └── 3_groups.ldif │ │ │ │ └── srv2_prepopulate │ │ │ │ │ ├── 1_units.ldif │ │ │ │ │ ├── 2_users.ldif │ │ │ │ │ └── 3_groups.ldif │ │ │ ├── openldap │ │ │ │ ├── README.md │ │ │ │ ├── docker-compose.yaml │ │ │ │ └── prepopulate │ │ │ │ │ ├── 1_units.ldif │ │ │ │ │ ├── 2_users.ldif │ │ │ │ │ └── 3_groups.ldif │ │ │ ├── prometheus_basic_auth_proxy │ │ │ │ ├── Dockerfile │ │ │ │ ├── docker-compose.yaml │ │ │ │ ├── htpasswd │ │ │ │ └── nginx.conf │ │ │ └── prometheus_oauth2_proxy_azure │ │ │ │ ├── README.md │ │ │ │ ├── docker-compose.yaml │ │ │ │ └── oauth2-proxy.example.cfg │ │ ├── clickhouse │ │ │ └── docker-compose.yaml │ │ ├── collectd │ │ │ ├── Dockerfile │ │ │ ├── README.md │ │ │ ├── collectd.conf.tpl │ │ │ ├── docker-compose.yaml │ │ │ ├── etc_mtab │ │ │ └── start_container │ │ ├── elastic │ │ │ ├── .env │ │ │ ├── data │ │ │ │ ├── Dockerfile │ │ │ │ └── data.js │ │ │ └── docker-compose.yaml │ │ ├── elasticstack │ │ │ ├── .env │ │ │ ├── docker-compose.yaml │ │ │ ├── filebeat.yml │ │ │ └── metricbeat.yml │ │ ├── etcd │ │ │ └── docker-compose.yaml │ │ ├── grafana │ │ │ ├── .env │ │ │ └── docker-compose.yaml │ │ ├── graphite │ │ │ └── docker-compose.yaml │ │ ├── graphite09 │ │ │ ├── Dockerfile │ │ │ ├── docker-compose.yaml │ │ │ └── files │ │ │ │ ├── carbon.conf │ │ │ │ ├── events_views.py │ │ │ │ ├── initial_data.json │ │ │ │ ├── local_settings.py │ │ │ │ ├── my_htpasswd │ │ │ │ ├── nginx.conf │ │ │ │ ├── statsd_config.js │ │ │ │ ├── storage-aggregation.conf │ │ │ │ ├── storage-schemas.conf │ │ │ │ └── supervisord.conf │ │ ├── graphite1 │ │ │ └── docker-compose.yaml │ │ ├── influxdb │ │ │ ├── docker-compose.yaml │ │ │ ├── setup_influxql.sh │ │ │ └── telegraf.conf │ │ ├── influxdb1 │ │ │ ├── docker-compose.yaml │ │ │ ├── influxdb.conf │ │ │ └── telegraf.conf │ │ ├── jaeger │ │ │ ├── docker-compose.yaml │ │ │ └── promtail-config.yaml │ │ ├── loki-promtail │ │ │ ├── README.md │ │ │ ├── docker-compose.yaml │ │ │ └── promtail-config.yaml │ │ ├── loki │ │ │ ├── data │ │ │ │ ├── Dockerfile │ │ │ │ └── data.js │ │ │ ├── docker-compose.yaml │ │ │ └── loki-config.yaml │ │ ├── maildev │ │ │ ├── README.md │ │ │ └── docker-compose.yaml │ │ ├── mariadb │ │ │ └── docker-compose.yaml │ │ ├── memcached │ │ │ └── docker-compose.yaml │ │ ├── mimir_backend │ │ │ ├── docker-compose.yaml │ │ │ └── nginx │ │ │ │ ├── .htpasswd │ │ │ │ └── nginx.conf.template │ │ ├── mssql │ │ │ ├── build │ │ │ │ ├── Dockerfile │ │ │ │ ├── entrypoint.sh │ │ │ │ ├── setup.sh │ │ │ │ └── setup.sql.template │ │ │ └── docker-compose.yaml │ │ ├── mssql_arm64 │ │ │ ├── README.md │ │ │ ├── build │ │ │ │ ├── Dockerfile │ │ │ │ └── entrypoint.sh │ │ │ └── docker-compose.yaml │ │ ├── mssql_tests │ │ │ └── docker-compose.yaml │ │ ├── mssql_tls │ │ │ ├── build │ │ │ │ ├── Dockerfile │ │ │ │ ├── entrypoint.sh │ │ │ │ ├── mssql.conf │ │ │ │ ├── setup.sh │ │ │ │ └── setup.sql.template │ │ │ └── docker-compose.yaml │ │ ├── mysql │ │ │ ├── .env │ │ │ ├── config │ │ │ └── docker-compose.yaml │ │ ├── mysql_exporter │ │ │ ├── .env │ │ │ ├── docker-compose.yaml │ │ │ └── mysql-exporter.cnf │ │ ├── mysql_opendata │ │ │ ├── Dockerfile │ │ │ ├── docker-compose.yaml │ │ │ └── import_csv.sql │ │ ├── mysql_tests │ │ │ ├── .env │ │ │ ├── Dockerfile │ │ │ ├── docker-compose.yaml │ │ │ └── setup.sql │ │ ├── opentsdb │ │ │ └── docker-compose.yaml │ │ ├── postgres │ │ │ ├── .env │ │ │ └── docker-compose.yaml │ │ ├── postgres_tests │ │ │ ├── .env │ │ │ ├── Dockerfile │ │ │ ├── docker-compose.yaml │ │ │ └── setup.sql │ │ ├── prometheus │ │ │ ├── Dockerfile │ │ │ ├── alert.yml │ │ │ ├── docker-compose.yaml │ │ │ ├── prometheus.yml │ │ │ ├── recording.yml │ │ │ └── web.yml │ │ ├── prometheus_random_data │ │ │ └── Dockerfile │ │ ├── pyroscope │ │ │ └── docker-compose.yaml │ │ ├── redis │ │ │ └── docker-compose.yaml │ │ ├── self-instrumentation │ │ │ ├── agent.flow │ │ │ ├── docker-compose.yaml │ │ │ ├── prometheus.yaml │ │ │ ├── promtail.yaml │ │ │ ├── readme.md │ │ │ └── tempo.yaml │ │ ├── sensugo │ │ │ ├── backend.yml │ │ │ ├── docker-compose.yaml │ │ │ └── notes.md │ │ ├── slow_proxy │ │ │ ├── .env │ │ │ ├── Dockerfile │ │ │ ├── docker-compose.yaml │ │ │ └── main.go │ │ ├── smtp │ │ │ ├── Dockerfile │ │ │ ├── bootstrap.sh │ │ │ └── docker-compose.yaml │ │ ├── tempo │ │ │ ├── README.md │ │ │ ├── docker-compose.yaml │ │ │ ├── prometheus.yaml │ │ │ └── tempo.yaml │ │ ├── traefik │ │ │ ├── configs │ │ │ │ └── subpath_no_rewrite.yml │ │ │ ├── docker-compose.yml │ │ │ └── traefik.yml │ │ ├── webdav │ │ │ ├── README.md │ │ │ └── docker-compose.yaml │ │ └── zipkin │ │ │ └── docker-compose.yaml │ ├── buildcontainer │ │ ├── Dockerfile │ │ ├── build.sh │ │ ├── build_circle.sh │ │ └── run_circle.sh │ ├── compose_header.yml │ ├── debtest │ │ ├── Dockerfile │ │ └── build.sh │ ├── ha-test-unified-alerting │ │ ├── .gitignore │ │ ├── Dockerfile │ │ ├── README.md │ │ ├── docker-compose.yaml │ │ ├── grafana-service.yml │ │ ├── grafana │ │ │ └── provisioning │ │ │ │ ├── dashboards │ │ │ │ ├── alerts │ │ │ │ │ └── overview.json │ │ │ │ ├── dashboards.yaml │ │ │ │ └── mysql │ │ │ │ │ └── overview.json │ │ │ │ └── datasources │ │ │ │ └── datasources.yaml │ │ ├── logs │ │ │ └── webhook │ │ │ │ └── .gitkeep │ │ ├── prometheus │ │ │ └── prometheus.yml │ │ └── webhook-listener.go │ ├── ha_test │ │ ├── .gitignore │ │ ├── README.md │ │ ├── alerts.sh │ │ ├── docker-compose.yaml │ │ ├── fluentd │ │ │ └── fluentd.conf │ │ ├── grafana │ │ │ └── provisioning │ │ │ │ ├── dashboards │ │ │ │ ├── alerts │ │ │ │ │ └── overview.json │ │ │ │ ├── dashboards.yaml │ │ │ │ └── mysql │ │ │ │ │ └── overview.json │ │ │ │ └── datasources │ │ │ │ └── datasources.yaml │ │ └── prometheus │ │ │ └── prometheus.yml │ ├── loadtest │ │ ├── README.md │ │ ├── annotations_by_tag_test.js │ │ ├── auth_key_test.js │ │ ├── auth_proxy_test.js │ │ ├── auth_token_slow_test.js │ │ ├── auth_token_test.js │ │ ├── modules │ │ │ ├── client.js │ │ │ └── util.js │ │ └── run.sh │ └── rpmtest │ │ └── build.sh ├── jsonnet │ ├── Makefile │ ├── dev-dashboards.go │ ├── dev-dashboards.libsonnet │ ├── gen.go │ ├── main.libsonnet │ └── tmpl │ │ └── gen.libsonnet.tmpl ├── local-npm │ ├── conf │ │ └── config.yaml │ └── docker-compose.yaml ├── setup.sh └── vscode │ └── launch.json ├── docs ├── .codespellignore ├── .gitignore ├── Makefile ├── README.md ├── docs.mk ├── logo-horizontal-dark.png ├── logo-horizontal.png ├── make-docs ├── sources │ ├── _index.md │ ├── administration │ │ ├── _index.md │ │ ├── api-keys │ │ │ └── index.md │ │ ├── back-up-grafana │ │ │ └── index.md │ │ ├── correlations │ │ │ ├── _index.md │ │ │ ├── add-permissions-to-create-new-correlations │ │ │ │ └── index.md │ │ │ ├── correlation-configuration │ │ │ │ └── index.md │ │ │ ├── correlation-permissions │ │ │ │ └── index.md │ │ │ ├── create-a-new-correlation │ │ │ │ └── index.md │ │ │ ├── use-correlations-in-visualizations │ │ │ │ └── index.md │ │ │ └── use-variables-and-transformations │ │ │ │ └── index.md │ │ ├── data-source-management │ │ │ ├── _index.md │ │ │ └── teamlbac │ │ │ │ ├── _index.md │ │ │ │ ├── configure-teamlbac-for-loki │ │ │ │ └── index.md │ │ │ │ └── create-teamlbac-rules │ │ │ │ └── index.md │ │ ├── enterprise-licensing │ │ │ ├── _index.md │ │ │ └── activate-aws-marketplace-license │ │ │ │ ├── _index.md │ │ │ │ ├── activate-license-on-ecs │ │ │ │ └── index.md │ │ │ │ ├── activate-license-on-eks │ │ │ │ └── index.md │ │ │ │ ├── activate-license-on-instance-outside-aws │ │ │ │ └── index.md │ │ │ │ ├── manage-license-in-aws-marketplace │ │ │ │ └── index.md │ │ │ │ └── transfer-ge-license │ │ │ │ └── index.md │ │ ├── feature-toggles │ │ │ └── index.md │ │ ├── organization-management │ │ │ └── index.md │ │ ├── organization-preferences │ │ │ └── index.md │ │ ├── plugin-management │ │ │ └── index.md │ │ ├── provisioning │ │ │ └── index.md │ │ ├── recorded-queries │ │ │ └── index.md │ │ ├── roles-and-permissions │ │ │ ├── _index.md │ │ │ └── access-control │ │ │ │ ├── _index.md │ │ │ │ ├── assign-rbac-roles │ │ │ │ └── index.md │ │ │ │ ├── configure-rbac │ │ │ │ └── index.md │ │ │ │ ├── custom-role-actions-scopes │ │ │ │ └── index.md │ │ │ │ ├── manage-rbac-roles │ │ │ │ └── index.md │ │ │ │ ├── plan-rbac-rollout-strategy │ │ │ │ └── index.md │ │ │ │ ├── rbac-fixed-basic-role-definitions │ │ │ │ └── index.md │ │ │ │ ├── rbac-grafana-provisioning │ │ │ │ └── index.md │ │ │ │ ├── rbac-terraform-provisioning │ │ │ │ └── index.md │ │ │ │ └── troubleshooting │ │ │ │ └── index.md │ │ ├── service-accounts │ │ │ └── index.md │ │ ├── stats-and-license │ │ │ └── index.md │ │ ├── team-management │ │ │ ├── _index.md │ │ │ ├── administering-grafana-teams.md │ │ │ └── configure-grafana-teams.md │ │ └── user-management │ │ │ ├── _index.md │ │ │ ├── manage-dashboard-permissions │ │ │ └── index.md │ │ │ ├── manage-org-users │ │ │ └── index.md │ │ │ ├── server-user-management │ │ │ ├── _index.md │ │ │ ├── add-remove-user-to-org │ │ │ │ └── index.md │ │ │ ├── assign-remove-server-admin-privileges │ │ │ │ └── index.md │ │ │ ├── change-user-org-permissions │ │ │ │ └── index.md │ │ │ └── grant-editor-admin-permissions │ │ │ │ └── index.md │ │ │ └── user-preferences │ │ │ └── index.md │ ├── alerting │ │ ├── _index.md │ │ ├── alerting-rules │ │ │ ├── _index.md │ │ │ ├── create-grafana-managed-rule.md │ │ │ ├── create-mimir-loki-managed-recording-rule.md │ │ │ ├── create-mimir-loki-managed-rule.md │ │ │ └── templating-labels-annotations.md │ │ ├── configure-notifications │ │ │ ├── _index.md │ │ │ ├── create-notification-policy.md │ │ │ ├── create-silence.md │ │ │ ├── manage-contact-points │ │ │ │ ├── _index.md │ │ │ │ └── integrations │ │ │ │ │ ├── configure-email.md │ │ │ │ │ ├── configure-oncall.md │ │ │ │ │ ├── configure-slack.md │ │ │ │ │ ├── configure-telegram.md │ │ │ │ │ ├── pager-duty.md │ │ │ │ │ └── webhook-notifier.md │ │ │ ├── mute-timings.md │ │ │ └── template-notifications │ │ │ │ ├── _index.md │ │ │ │ ├── create-notification-templates.md │ │ │ │ ├── images-in-notifications.md │ │ │ │ ├── reference.md │ │ │ │ ├── use-notification-templates.md │ │ │ │ └── using-go-templating-language.md │ │ ├── fundamentals │ │ │ ├── _index.md │ │ │ ├── alert-rule-evaluation │ │ │ │ ├── _index.md │ │ │ │ └── state-and-health.md │ │ │ ├── alert-rules │ │ │ │ ├── _index.md │ │ │ │ ├── annotation-label.md │ │ │ │ └── queries-conditions.md │ │ │ └── notifications │ │ │ │ ├── _index.md │ │ │ │ ├── alertmanager.md │ │ │ │ ├── contact-points.md │ │ │ │ ├── notification-policies.md │ │ │ │ └── templates.md │ │ ├── manage-notifications │ │ │ ├── _index.md │ │ │ ├── declare-incident-from-alert.md │ │ │ ├── view-alert-groups.md │ │ │ ├── view-alert-rules.md │ │ │ ├── view-notification-errors.md │ │ │ └── view-state-health.md │ │ ├── monitor │ │ │ └── _index.md │ │ └── set-up │ │ │ ├── _index.md │ │ │ ├── configure-alert-state-history │ │ │ └── index.md │ │ │ ├── configure-alertmanager │ │ │ └── index.md │ │ │ ├── configure-high-availability │ │ │ └── _index.md │ │ │ ├── configure-rbac │ │ │ ├── _index.md │ │ │ ├── access-folders │ │ │ │ └── index.md │ │ │ └── access-roles │ │ │ │ └── index.md │ │ │ ├── configure-roles │ │ │ └── index.md │ │ │ ├── performance-limitations │ │ │ └── index.md │ │ │ └── provision-alerting-resources │ │ │ ├── _index.md │ │ │ ├── export-alerting-resources │ │ │ └── index.md │ │ │ ├── file-provisioning │ │ │ └── index.md │ │ │ ├── http-api-provisioning │ │ │ └── _index.md │ │ │ └── terraform-provisioning │ │ │ └── index.md │ ├── breaking-changes │ │ ├── _index.md │ │ ├── breaking-changes-v10-0.md │ │ ├── breaking-changes-v10-3.md │ │ └── breaking-changes-v11-0.md │ ├── cli.md │ ├── dashboards │ │ ├── _index.md │ │ ├── assess-dashboard-usage │ │ │ └── index.md │ │ ├── build-dashboards │ │ │ ├── _index.md │ │ │ ├── annotate-visualizations │ │ │ │ └── index.md │ │ │ ├── best-practices │ │ │ │ └── index.md │ │ │ ├── create-dashboard-url-variables │ │ │ │ └── index.md │ │ │ ├── create-dashboard │ │ │ │ └── index.md │ │ │ ├── import-dashboards │ │ │ │ └── index.md │ │ │ ├── manage-dashboard-links │ │ │ │ └── index.md │ │ │ ├── manage-library-panels │ │ │ │ └── index.md │ │ │ ├── manage-version-history │ │ │ │ └── index.md │ │ │ ├── modify-dashboard-settings │ │ │ │ └── index.md │ │ │ └── view-dashboard-json-model │ │ │ │ └── index.md │ │ ├── create-manage-playlists │ │ │ └── index.md │ │ ├── create-reports │ │ │ └── index.md │ │ ├── dashboard-public │ │ │ └── index.md │ │ ├── manage-dashboards │ │ │ └── index.md │ │ ├── share-dashboards-panels │ │ │ └── index.md │ │ ├── troubleshoot-dashboards │ │ │ └── index.md │ │ ├── use-dashboards │ │ │ └── index.md │ │ └── variables │ │ │ ├── _index.md │ │ │ ├── add-template-variables │ │ │ └── index.md │ │ │ ├── inspect-variable │ │ │ └── index.md │ │ │ └── variable-syntax │ │ │ └── index.md │ ├── datasources │ │ ├── _index.md │ │ ├── alertmanager │ │ │ └── _index.md │ │ ├── aws-cloudwatch │ │ │ ├── _index.md │ │ │ ├── aws-authentication │ │ │ │ └── index.md │ │ │ ├── query-editor │ │ │ │ └── index.md │ │ │ └── template-variables │ │ │ │ └── index.md │ │ ├── azure-monitor │ │ │ ├── _index.md │ │ │ ├── query-editor │ │ │ │ └── index.md │ │ │ └── template-variables │ │ │ │ └── index.md │ │ ├── elasticsearch │ │ │ ├── _index.md │ │ │ ├── configure-elasticsearch-data-source.md │ │ │ ├── query-editor │ │ │ │ └── index.md │ │ │ └── template-variables │ │ │ │ └── index.md │ │ ├── google-cloud-monitoring │ │ │ ├── _index.md │ │ │ ├── google-authentication │ │ │ │ └── index.md │ │ │ ├── query-editor │ │ │ │ └── index.md │ │ │ └── template-variables │ │ │ │ └── index.md │ │ ├── graphite │ │ │ ├── _index.md │ │ │ ├── query-editor │ │ │ │ └── index.md │ │ │ └── template-variables │ │ │ │ └── index.md │ │ ├── influxdb │ │ │ ├── _index.md │ │ │ ├── query-editor │ │ │ │ └── index.md │ │ │ └── template-variables │ │ │ │ └── index.md │ │ ├── jaeger │ │ │ └── _index.md │ │ ├── loki │ │ │ ├── _index.md │ │ │ ├── configure-loki-data-source.md │ │ │ ├── query-editor │ │ │ │ └── index.md │ │ │ └── template-variables │ │ │ │ └── index.md │ │ ├── mssql │ │ │ ├── _index.md │ │ │ ├── query-editor │ │ │ │ └── index.md │ │ │ └── template-variables │ │ │ │ └── index.md │ │ ├── mysql │ │ │ └── _index.md │ │ ├── opentsdb │ │ │ └── _index.md │ │ ├── parca.md │ │ ├── postgres │ │ │ └── _index.md │ │ ├── prometheus │ │ │ ├── _index.md │ │ │ ├── configure-prometheus-data-source.md │ │ │ ├── query-editor │ │ │ │ └── index.md │ │ │ └── template-variables │ │ │ │ └── index.md │ │ ├── pyroscope │ │ │ ├── _index.md │ │ │ ├── configure-pyroscope-data-source.md │ │ │ ├── profiling-and-tracing.md │ │ │ └── query-profile-data.md │ │ ├── tempo │ │ │ ├── _index.md │ │ │ ├── configure-tempo-data-source.md │ │ │ ├── json-trace-file.md │ │ │ ├── link-trace-id.md │ │ │ ├── query-editor │ │ │ │ ├── _index.md │ │ │ │ ├── traceql-editor.md │ │ │ │ └── traceql-search.md │ │ │ ├── service-graph.md │ │ │ ├── span-filters.md │ │ │ └── tracing-best-practices.md │ │ ├── testdata │ │ │ └── _index.md │ │ └── zipkin │ │ │ └── _index.md │ ├── developers │ │ ├── _index.md │ │ ├── angular_deprecation │ │ │ ├── _index.md │ │ │ └── angular-plugins.md │ │ ├── cla.md │ │ ├── contribute.md │ │ ├── http_api │ │ │ ├── _index.md │ │ │ ├── access_control.md │ │ │ ├── admin.md │ │ │ ├── alerting_provisioning.md │ │ │ ├── annotations.md │ │ │ ├── auth.md │ │ │ ├── correlations.md │ │ │ ├── create-api-tokens-for-org.md │ │ │ ├── curl-examples.md │ │ │ ├── dashboard.md │ │ │ ├── dashboard_permissions.md │ │ │ ├── dashboard_public.md │ │ │ ├── dashboard_versions.md │ │ │ ├── data_source.md │ │ │ ├── datasource_permissions.md │ │ │ ├── folder.md │ │ │ ├── folder_dashboard_search.md │ │ │ ├── folder_permissions.md │ │ │ ├── library_element.md │ │ │ ├── licensing.md │ │ │ ├── org.md │ │ │ ├── other.md │ │ │ ├── playlist.md │ │ │ ├── preferences.md │ │ │ ├── query_and_resource_caching.md │ │ │ ├── query_history.md │ │ │ ├── reporting.md │ │ │ ├── serviceaccount.md │ │ │ ├── short_url.md │ │ │ ├── snapshot.md │ │ │ ├── sso-settings.md │ │ │ ├── team.md │ │ │ ├── team_sync.md │ │ │ └── user.md │ │ └── plugins │ │ │ └── plugin.schema.json │ ├── explore │ │ ├── _index.md │ │ ├── correlations-editor-in-explore.md │ │ ├── explore-inspector.md │ │ ├── explore-metrics.md │ │ ├── logs-integration.md │ │ ├── query-management.md │ │ └── trace-integration.md │ ├── fundamentals │ │ ├── _index.md │ │ ├── dashboards-overview │ │ │ └── index.md │ │ ├── exemplars │ │ │ └── index.md │ │ ├── glossary │ │ │ └── index.md │ │ ├── intro-histograms │ │ │ └── index.md │ │ ├── intro-to-prometheus │ │ │ └── index.md │ │ ├── timeseries-dimensions │ │ │ └── index.md │ │ └── timeseries │ │ │ └── index.md │ ├── getting-started │ │ ├── _index.md │ │ ├── build-first-dashboard.md │ │ ├── get-started-grafana-influxdb.md │ │ ├── get-started-grafana-ms-sql-server.md │ │ └── get-started-grafana-prometheus.md │ ├── introduction │ │ ├── _index.md │ │ ├── grafana-cloud.md │ │ └── grafana-enterprise.md │ ├── menu.yaml │ ├── panels-visualizations │ │ ├── _index.md │ │ ├── configure-data-links │ │ │ └── index.md │ │ ├── configure-legend │ │ │ └── index.md │ │ ├── configure-overrides │ │ │ └── index.md │ │ ├── configure-panel-options │ │ │ └── index.md │ │ ├── configure-standard-options │ │ │ └── index.md │ │ ├── configure-thresholds │ │ │ └── index.md │ │ ├── configure-tooltips │ │ │ └── index.md │ │ ├── configure-value-mappings │ │ │ └── index.md │ │ ├── panel-editor-overview │ │ │ └── index.md │ │ ├── panel-inspector │ │ │ └── index.md │ │ ├── panel-overview │ │ │ └── index.md │ │ ├── query-transform-data │ │ │ ├── _index.md │ │ │ ├── calculation-types │ │ │ │ └── index.md │ │ │ ├── expression-queries │ │ │ │ └── index.md │ │ │ ├── share-query │ │ │ │ └── index.md │ │ │ ├── transform-data │ │ │ │ └── index.md │ │ │ └── troubleshoot-queries │ │ │ │ └── index.md │ │ └── visualizations │ │ │ ├── _index.md │ │ │ ├── alert-list │ │ │ └── index.md │ │ │ ├── annotations │ │ │ └── index.md │ │ │ ├── bar-chart │ │ │ └── index.md │ │ │ ├── bar-gauge │ │ │ └── index.md │ │ │ ├── candlestick │ │ │ └── index.md │ │ │ ├── canvas │ │ │ └── index.md │ │ │ ├── dashboard-list │ │ │ └── index.md │ │ │ ├── datagrid │ │ │ └── index.md │ │ │ ├── flame-graph │ │ │ └── index.md │ │ │ ├── gauge │ │ │ └── index.md │ │ │ ├── geomap │ │ │ └── index.md │ │ │ ├── heatmap │ │ │ └── index.md │ │ │ ├── histogram │ │ │ └── index.md │ │ │ ├── logs │ │ │ └── index.md │ │ │ ├── news │ │ │ └── index.md │ │ │ ├── node-graph │ │ │ └── index.md │ │ │ ├── pie-chart │ │ │ └── index.md │ │ │ ├── stat │ │ │ └── index.md │ │ │ ├── state-timeline │ │ │ └── index.md │ │ │ ├── status-history │ │ │ └── index.md │ │ │ ├── table │ │ │ └── index.md │ │ │ ├── text │ │ │ └── index.md │ │ │ ├── time-series │ │ │ └── index.md │ │ │ ├── traces │ │ │ └── index.md │ │ │ ├── trend │ │ │ └── index.md │ │ │ └── xy-chart │ │ │ └── index.md │ ├── release-notes │ │ ├── _index.md │ │ ├── release-notes-7-3-0.md │ │ ├── release-notes-7-3-1.md │ │ ├── release-notes-7-3-10.md │ │ ├── release-notes-7-3-2.md │ │ ├── release-notes-7-3-3.md │ │ ├── release-notes-7-3-4.md │ │ ├── release-notes-7-3-5.md │ │ ├── release-notes-7-3-6.md │ │ ├── release-notes-7-3-7.md │ │ ├── release-notes-7-4-0.md │ │ ├── release-notes-7-4-1.md │ │ ├── release-notes-7-4-2.md │ │ ├── release-notes-7-4-3.md │ │ ├── release-notes-7-4-5.md │ │ ├── release-notes-7-5-0-beta1.md │ │ ├── release-notes-7-5-0-beta2.md │ │ ├── release-notes-7-5-0.md │ │ ├── release-notes-7-5-1.md │ │ ├── release-notes-7-5-10.md │ │ ├── release-notes-7-5-11.md │ │ ├── release-notes-7-5-12.md │ │ ├── release-notes-7-5-13.md │ │ ├── release-notes-7-5-15.md │ │ ├── release-notes-7-5-2.md │ │ ├── release-notes-7-5-3.md │ │ ├── release-notes-7-5-4.md │ │ ├── release-notes-7-5-5.md │ │ ├── release-notes-7-5-6.md │ │ ├── release-notes-7-5-7.md │ │ ├── release-notes-7-5-8.md │ │ ├── release-notes-7-5-9.md │ │ ├── release-notes-8-0-0-beta1.md │ │ ├── release-notes-8-0-0-beta2.md │ │ ├── release-notes-8-0-0-beta3.md │ │ ├── release-notes-8-0-0.md │ │ ├── release-notes-8-0-1.md │ │ ├── release-notes-8-0-2.md │ │ ├── release-notes-8-0-3.md │ │ ├── release-notes-8-0-4.md │ │ ├── release-notes-8-0-5.md │ │ ├── release-notes-8-0-6.md │ │ ├── release-notes-8-0-7.md │ │ ├── release-notes-8-1-0-beta1.md │ │ ├── release-notes-8-1-0-beta2.md │ │ ├── release-notes-8-1-0-beta3.md │ │ ├── release-notes-8-1-0.md │ │ ├── release-notes-8-1-1.md │ │ ├── release-notes-8-1-2.md │ │ ├── release-notes-8-1-3.md │ │ ├── release-notes-8-1-4.md │ │ ├── release-notes-8-1-5.md │ │ ├── release-notes-8-1-6.md │ │ ├── release-notes-8-1-7.md │ │ ├── release-notes-8-1-8.md │ │ ├── release-notes-8-2-0-beta1.md │ │ ├── release-notes-8-2-0-beta2.md │ │ ├── release-notes-8-2-0.md │ │ ├── release-notes-8-2-1.md │ │ ├── release-notes-8-2-2.md │ │ ├── release-notes-8-2-3.md │ │ ├── release-notes-8-2-4.md │ │ ├── release-notes-8-2-5.md │ │ ├── release-notes-8-2-6.md │ │ ├── release-notes-8-2-7.md │ │ ├── release-notes-8-3-0-beta1.md │ │ ├── release-notes-8-3-0-beta2.md │ │ ├── release-notes-8-3-0.md │ │ ├── release-notes-8-3-1.md │ │ ├── release-notes-8-3-11.md │ │ ├── release-notes-8-3-2.md │ │ ├── release-notes-8-3-3.md │ │ ├── release-notes-8-3-4.md │ │ ├── release-notes-8-3-5.md │ │ ├── release-notes-8-3-6.md │ │ ├── release-notes-8-3-7.md │ │ ├── release-notes-8-4-0-beta1.md │ │ ├── release-notes-8-4-0.md │ │ ├── release-notes-8-4-1.md │ │ ├── release-notes-8-4-10.md │ │ ├── release-notes-8-4-11.md │ │ ├── release-notes-8-4-2.md │ │ ├── release-notes-8-4-3.md │ │ ├── release-notes-8-4-4.md │ │ ├── release-notes-8-4-5.md │ │ ├── release-notes-8-4-6.md │ │ ├── release-notes-8-4-7.md │ │ ├── release-notes-8-5-0-beta1.md │ │ ├── release-notes-8-5-0.md │ │ ├── release-notes-8-5-1.md │ │ ├── release-notes-8-5-10.md │ │ ├── release-notes-8-5-11.md │ │ ├── release-notes-8-5-13.md │ │ ├── release-notes-8-5-2.md │ │ ├── release-notes-8-5-3.md │ │ ├── release-notes-8-5-4.md │ │ ├── release-notes-8-5-5.md │ │ ├── release-notes-8-5-6.md │ │ ├── release-notes-8-5-9.md │ │ ├── release-notes-9-0-0-beta1.md │ │ ├── release-notes-9-0-0-beta2.md │ │ ├── release-notes-9-0-0-beta3.md │ │ ├── release-notes-9-0-0.md │ │ ├── release-notes-9-0-1.md │ │ ├── release-notes-9-0-2.md │ │ ├── release-notes-9-0-3.md │ │ ├── release-notes-9-0-4.md │ │ ├── release-notes-9-0-5.md │ │ ├── release-notes-9-0-6.md │ │ ├── release-notes-9-0-7.md │ │ ├── release-notes-9-0-8.md │ │ ├── release-notes-9-0-9.md │ │ ├── release-notes-9-1-0-beta1.md │ │ ├── release-notes-9-1-0.md │ │ ├── release-notes-9-1-1.md │ │ ├── release-notes-9-1-2.md │ │ ├── release-notes-9-1-3.md │ │ ├── release-notes-9-1-4.md │ │ ├── release-notes-9-1-5.md │ │ ├── release-notes-9-1-6.md │ │ ├── release-notes-9-1-7.md │ │ └── release-notes-v7-4-2.md │ ├── search │ │ └── _index.md │ ├── setup-grafana │ │ ├── _index.md │ │ ├── configure-docker.md │ │ ├── configure-grafana │ │ │ ├── _index.md │ │ │ ├── configure-custom-branding │ │ │ │ └── index.md │ │ │ ├── configure-tracing │ │ │ │ └── index.md │ │ │ ├── enterprise-configuration │ │ │ │ └── index.md │ │ │ ├── feature-toggles │ │ │ │ └── index.md │ │ │ ├── proxy │ │ │ │ └── index.md │ │ │ └── settings-updates-at-runtime │ │ │ │ └── index.md │ │ ├── configure-security │ │ │ ├── _index.md │ │ │ ├── audit-grafana.md │ │ │ ├── configure-authentication │ │ │ │ ├── _index.md │ │ │ │ ├── auth-proxy │ │ │ │ │ └── index.md │ │ │ │ ├── azuread │ │ │ │ │ └── index.md │ │ │ │ ├── enhanced-ldap │ │ │ │ │ └── index.md │ │ │ │ ├── generic-oauth │ │ │ │ │ └── index.md │ │ │ │ ├── github │ │ │ │ │ └── index.md │ │ │ │ ├── gitlab │ │ │ │ │ └── index.md │ │ │ │ ├── google │ │ │ │ │ └── index.md │ │ │ │ ├── grafana-cloud │ │ │ │ │ └── index.md │ │ │ │ ├── grafana │ │ │ │ │ └── index.md │ │ │ │ ├── jwt │ │ │ │ │ └── index.md │ │ │ │ ├── keycloak-multitenant │ │ │ │ │ └── index.md │ │ │ │ ├── keycloak │ │ │ │ │ └── index.md │ │ │ │ ├── ldap │ │ │ │ │ └── index.md │ │ │ │ ├── okta │ │ │ │ │ └── index.md │ │ │ │ ├── saml-ui │ │ │ │ │ └── index.md │ │ │ │ └── saml │ │ │ │ │ └── index.md │ │ │ ├── configure-database-encryption │ │ │ │ ├── _index.md │ │ │ │ ├── encrypt-secrets-using-aws-kms │ │ │ │ │ └── index.md │ │ │ │ ├── encrypt-secrets-using-azure-key-vault │ │ │ │ │ └── index.md │ │ │ │ ├── encrypt-secrets-using-google-cloud-kms │ │ │ │ │ └── index.md │ │ │ │ ├── encrypt-secrets-using-hashicorp-key-vault │ │ │ │ │ └── index.md │ │ │ │ └── integrate-with-hashicorp-vault │ │ │ │ │ └── index.md │ │ │ ├── configure-request-security.md │ │ │ ├── configure-security-hardening │ │ │ │ └── index.md │ │ │ ├── configure-team-sync.md │ │ │ ├── export-logs.md │ │ │ ├── planning-iam-strategy │ │ │ │ └── index.md │ │ │ └── secret-scan.md │ │ ├── image-rendering │ │ │ ├── _index.md │ │ │ ├── monitoring │ │ │ │ └── index.md │ │ │ └── troubleshooting │ │ │ │ └── index.md │ │ ├── installation │ │ │ ├── _index.md │ │ │ ├── debian │ │ │ │ └── index.md │ │ │ ├── docker │ │ │ │ └── index.md │ │ │ ├── helm │ │ │ │ └── index.md │ │ │ ├── kubernetes │ │ │ │ └── index.md │ │ │ ├── mac │ │ │ │ └── index.md │ │ │ ├── redhat-rhel-fedora │ │ │ │ └── index.md │ │ │ ├── suse-opensuse │ │ │ │ └── index.md │ │ │ └── windows │ │ │ │ └── index.md │ │ ├── set-up-for-high-availability.md │ │ ├── set-up-grafana-live.md │ │ ├── set-up-grafana-monitoring.md │ │ ├── set-up-https.md │ │ ├── sign-in-to-grafana.md │ │ └── start-restart-grafana.md │ ├── shared │ │ ├── alerts │ │ │ ├── alerting_provisioning.md │ │ │ ├── first-step.md │ │ │ ├── grafana-managed-alerts.md │ │ │ └── how_label_matching_works.md │ │ ├── auth │ │ │ └── intro.md │ │ ├── back-up │ │ │ └── back-up-grafana.md │ │ ├── basics │ │ │ ├── grafana-cloud.md │ │ │ ├── grafana-enterprise.md │ │ │ └── what-is-grafana.md │ │ ├── datasources │ │ │ ├── pyroscope-profile-tracing-intro.md │ │ │ ├── tempo-editor-traceql.md │ │ │ ├── tempo-search-traceql.md │ │ │ └── tempo-traces-to-profiles.md │ │ ├── example.md │ │ ├── index.md │ │ ├── influxdb │ │ │ └── intro.md │ │ ├── manage-users │ │ │ ├── view-server-org-list-and-edit.md │ │ │ ├── view-server-org-list.md │ │ │ ├── view-server-user-list-search.md │ │ │ ├── view-server-user-list.md │ │ │ └── view-team-list.md │ │ ├── panels │ │ │ ├── panel-links-intro.md │ │ │ └── repeat-panel-intro.md │ │ ├── preferences │ │ │ ├── navigate-to-the-dashboard-list.md │ │ │ ├── navigate-user-preferences-list.md │ │ │ ├── org-preferences-list.md │ │ │ ├── select-home-dashboard-list.md │ │ │ ├── select-timezone-list.md │ │ │ ├── select-ui-theme-list.md │ │ │ └── some-tasks-require-permissions.md │ │ ├── systemd │ │ │ └── bind-net-capabilities.md │ │ ├── test.md │ │ ├── tutorials │ │ │ ├── create-plugin.md │ │ │ ├── plugin-anatomy.md │ │ │ ├── publish-your-plugin.md │ │ │ └── set-up-environment.md │ │ ├── upgrade │ │ │ ├── intro.md │ │ │ └── upgrade-common-tasks.md │ │ ├── view-server-org-list.md │ │ ├── view-server-user-list-search.md │ │ └── visualizations │ │ │ ├── change-axis-link.md │ │ │ ├── connect-null-values.md │ │ │ ├── datalink-options.md │ │ │ ├── disconnect-values.md │ │ │ ├── legend-options-1.md │ │ │ ├── legend-options-2.md │ │ │ ├── multiple-y-axes.md │ │ │ ├── overrides-options.md │ │ │ ├── panel-options.md │ │ │ ├── stack-series-link.md │ │ │ ├── standard-options.md │ │ │ ├── thresholds-options-1.md │ │ │ ├── thresholds-options-2.md │ │ │ ├── tooltip-options-1.md │ │ │ ├── tooltip-options-2.md │ │ │ └── value-mappings-options.md │ ├── troubleshooting │ │ ├── _index.md │ │ ├── send-panel-to-grafana-support │ │ │ └── index.md │ │ └── support-bundles │ │ │ └── index.md │ ├── tutorials │ │ ├── _index.md │ │ ├── alerting-get-started │ │ │ └── index.md │ │ ├── create-alerts-from-flux-queries │ │ │ └── index.md │ │ ├── create-alerts-with-logs │ │ │ └── index.md │ │ ├── create-users-and-teams │ │ │ └── index.md │ │ ├── grafana-fundamentals │ │ │ └── index.md │ │ ├── iis │ │ │ └── index.md │ │ ├── install-grafana-on-raspberry-pi │ │ │ └── index.md │ │ ├── integrate-hubot │ │ │ └── index.md │ │ ├── provision-dashboards-and-data-sources │ │ │ └── index.md │ │ ├── run-grafana-behind-a-proxy │ │ │ └── index.md │ │ └── stream-metrics-from-telegraf-to-grafana │ │ │ └── index.md │ ├── upgrade-guide │ │ ├── _index.md │ │ ├── upgrade-v10.0 │ │ │ └── index.md │ │ ├── upgrade-v10.1 │ │ │ └── index.md │ │ ├── upgrade-v10.2 │ │ │ └── index.md │ │ ├── upgrade-v10.3 │ │ │ └── index.md │ │ ├── upgrade-v10.4 │ │ │ └── index.md │ │ ├── upgrade-v11.0 │ │ │ └── index.md │ │ ├── upgrade-v8.0 │ │ │ └── index.md │ │ ├── upgrade-v8.1 │ │ │ └── index.md │ │ ├── upgrade-v8.2 │ │ │ └── index.md │ │ ├── upgrade-v8.3 │ │ │ └── index.md │ │ ├── upgrade-v8.4 │ │ │ └── index.md │ │ ├── upgrade-v8.5 │ │ │ └── index.md │ │ ├── upgrade-v9.0 │ │ │ └── index.md │ │ ├── upgrade-v9.1 │ │ │ └── index.md │ │ ├── upgrade-v9.2 │ │ │ └── index.md │ │ ├── upgrade-v9.3 │ │ │ └── index.md │ │ ├── upgrade-v9.4 │ │ │ └── index.md │ │ └── upgrade-v9.5 │ │ │ └── index.md │ └── whatsnew │ │ ├── _index.md │ │ ├── whats-new-in-v10-0.md │ │ ├── whats-new-in-v10-1.md │ │ ├── whats-new-in-v10-2.md │ │ ├── whats-new-in-v10-3.md │ │ ├── whats-new-in-v10-4.md │ │ ├── whats-new-in-v11-0.md │ │ ├── whats-new-in-v7-0.md │ │ ├── whats-new-in-v7-1.md │ │ ├── whats-new-in-v7-2.md │ │ ├── whats-new-in-v7-3.md │ │ ├── whats-new-in-v7-4.md │ │ ├── whats-new-in-v7-5.md │ │ ├── whats-new-in-v8-0.md │ │ ├── whats-new-in-v8-1.md │ │ ├── whats-new-in-v8-2.md │ │ ├── whats-new-in-v8-3.md │ │ ├── whats-new-in-v8-4.md │ │ ├── whats-new-in-v8-5.md │ │ ├── whats-new-in-v9-0.md │ │ ├── whats-new-in-v9-1.md │ │ ├── whats-new-in-v9-2.md │ │ ├── whats-new-in-v9-3.md │ │ ├── whats-new-in-v9-4.md │ │ ├── whats-new-in-v9-5.md │ │ └── whats-new-next │ │ └── README.md └── variables.mk ├── e2e ├── benchmarks │ ├── dashboards │ │ └── live │ │ │ └── 4-20hz-panels.json │ └── live │ │ └── 4-20hz-panels.spec.ts ├── cloud-plugins-suite │ └── azure-monitor.spec.ts ├── custom-plugins │ ├── frontend-sandbox-app-test │ │ ├── img │ │ │ └── logo.svg │ │ ├── module.js │ │ └── plugin.json │ ├── frontend-sandbox-datasource-test │ │ ├── img │ │ │ └── logo.svg │ │ ├── module.js │ │ └── plugin.json │ └── frontend-sandbox-panel-test │ │ ├── img │ │ └── logo.svg │ │ ├── module.js │ │ └── plugin.json ├── cypress │ ├── fixtures │ │ ├── example.json │ │ ├── exemplars-query-response.json │ │ ├── long-trace-response.json │ │ ├── prometheus-query-range-response.json │ │ ├── prometheus-query-response.json │ │ └── tempo-response.json │ ├── plugins │ │ ├── benchmark │ │ │ ├── CDPDataCollector.js │ │ │ ├── formatting.js │ │ │ └── index.js │ │ ├── extendConfig.js │ │ ├── index.js │ │ ├── readProvisions.js │ │ └── typescriptPreprocessor.js │ └── support │ │ ├── commands.js │ │ ├── e2e.js │ │ └── index.d.ts ├── dashboards-suite │ ├── Repeating_a_panel_horizontally.spec.ts │ ├── Repeating_a_panel_vertically.spec.ts │ ├── Repeating_an_empty_row.spec.ts │ ├── dashboard-browse-nested.spec.ts │ ├── dashboard-browse.spec.ts │ ├── dashboard-live-streaming.spec.ts │ ├── dashboard-panel-attention.spec.ts │ ├── dashboard-public-create.spec.ts │ ├── dashboard-public-templating.spec.ts │ ├── dashboard-templating.spec.ts │ ├── dashboard-time-zone.spec.ts │ ├── dashboard-timepicker.spec.ts │ ├── embedded-dashboard.spec.ts │ ├── general-dashboards.spec.ts │ ├── import-dashboard.spec.ts │ ├── load-options-from-url.spec.ts │ ├── new-constant-variable.spec.ts │ ├── new-custom-variable.spec.ts │ ├── new-datasource-variable.spec.ts │ ├── new-interval-variable.spec.ts │ ├── new-query-variable.spec.ts │ ├── new-text-box-variable.spec.ts │ ├── set-options-from-ui.spec.ts │ ├── templating-dashboard-links-and-variables.spec.ts │ ├── textbox-variables.spec.ts │ └── utils │ │ └── makeDashboard.ts ├── dashboards │ ├── DashboardLiveTest.json │ ├── DashboardSearchTest.json │ ├── PanelSandboxDashboard.json │ └── TestDashboard.json ├── log-reporter.js ├── panels-suite │ ├── dashlist.spec.ts │ ├── datagrid-data-change.spec.ts │ ├── datagrid-editing-features.spec.ts │ ├── frontend-sandbox-panel.spec.ts │ ├── geomap-layer-types.spec.ts │ ├── geomap-map-controls.spec.ts │ ├── geomap-spatial-operations-transform.spec.ts │ ├── panelEdit_base.spec.ts │ ├── panelEdit_queries.spec.ts │ └── panelEdit_transforms.spec.ts ├── plugin-e2e │ ├── mysql │ │ ├── mocks │ │ │ └── mysql.mocks.ts │ │ └── mysql.spec.ts │ └── plugin-e2e-api-tests │ │ ├── README.md │ │ ├── as-admin-user │ │ ├── annotationEditPage.spec.ts │ │ ├── datasourceConfigPage.spec.ts │ │ ├── explorePage.spec.ts │ │ ├── featureToggles.spec.ts │ │ ├── panelDataAssertion.spec.ts │ │ ├── panelEditPage.spec.ts │ │ └── variableEditPage.spec.ts │ │ ├── as-viewer-user │ │ └── permissions.spec.ts │ │ ├── errors.ts │ │ └── mocks │ │ ├── queries.ts │ │ └── resources.ts ├── run-suite ├── scenes │ ├── dashboard-suite │ │ ├── Repeating_a_panel_horizontally.spec.ts │ │ ├── Repeating_a_panel_vertically.spec.ts │ │ ├── Repeating_an_empty_row.spec.ts │ │ ├── dashboard-browse-nested.spec.ts │ │ ├── dashboard-browse.spec.ts │ │ ├── dashboard-live-streaming.spec.ts │ │ ├── dashboard-public-create.spec.ts │ │ ├── dashboard-public-templating.spec.ts │ │ ├── dashboard-templating.spec.ts │ │ ├── dashboard-time-zone.spec.ts │ │ ├── dashboard-timepicker.spec.ts │ │ ├── embedded-dashboard.spec.ts │ │ ├── general-dashboards.spec.ts │ │ ├── import-dashboard.spec.ts │ │ ├── load-options-from-url.spec.ts │ │ ├── new-constant-variable.spec.ts │ │ ├── new-custom-variable.spec.ts │ │ ├── new-datasource-variable.spec.ts │ │ ├── new-interval-variable.spec.ts │ │ ├── new-query-variable.spec.ts │ │ ├── new-text-box-variable.spec.ts │ │ ├── set-options-from-ui.spec.ts │ │ ├── snapshot-create.spec.ts │ │ ├── templating-dashboard-links-and-variables.spec.ts │ │ ├── textbox-variables.spec.ts │ │ └── utils │ │ │ └── makeDashboard.ts │ ├── dashboards │ │ ├── DashboardLiveTest.json │ │ ├── DashboardSearchTest.json │ │ ├── PanelSandboxDashboard.json │ │ └── TestDashboard.json │ ├── panels-suite │ │ ├── dashlist.spec.ts │ │ ├── datagrid-data-change.spec.ts │ │ ├── datagrid-editing-features.spec.ts │ │ ├── frontend-sandbox-panel.spec.ts │ │ ├── geomap-layer-types.spec.ts │ │ ├── geomap-map-controls.spec.ts │ │ ├── geomap-spatial-operations-transform.spec.ts │ │ ├── panelEdit_base.spec.ts │ │ ├── panelEdit_queries.spec.ts │ │ └── panelEdit_transforms.spec.ts │ ├── shared │ │ └── smokeTestScenario.ts │ ├── smoke-tests-suite │ │ ├── 1-smoketests.spec.ts │ │ └── panels_smokescreen.spec.ts │ └── utils │ │ ├── flows │ │ ├── addDashboard.ts │ │ ├── addDataSource.ts │ │ ├── addPanel.ts │ │ ├── assertSuccessNotification.ts │ │ ├── configurePanel.ts │ │ ├── confirmModal.ts │ │ ├── deleteDashboard.ts │ │ ├── deleteDataSource.ts │ │ ├── editPanel.ts │ │ ├── importDashboard.ts │ │ ├── importDashboards.ts │ │ ├── index.ts │ │ ├── login.ts │ │ ├── openDashboard.ts │ │ ├── openPanelMenuItem.ts │ │ ├── revertAllChanges.ts │ │ ├── saveDashboard.ts │ │ ├── selectOption.ts │ │ ├── setDashboardTimeRange.ts │ │ ├── setTimeRange.ts │ │ └── userPreferences.ts │ │ ├── index.ts │ │ ├── support │ │ ├── benchmark.ts │ │ ├── index.ts │ │ ├── localStorage.ts │ │ ├── monaco.ts │ │ ├── scenarioContext.ts │ │ ├── selector.ts │ │ ├── types.ts │ │ └── url.ts │ │ └── typings │ │ ├── index.ts │ │ └── undo.ts ├── shared │ └── smokeTestScenario.ts ├── smoke-tests-suite │ ├── 1-smoketests.spec.ts │ └── panels_smokescreen.spec.ts ├── start-and-run-suite ├── tsconfig.json ├── utils │ ├── flows │ │ ├── addDashboard.ts │ │ ├── addDataSource.ts │ │ ├── addPanel.ts │ │ ├── assertSuccessNotification.ts │ │ ├── configurePanel.ts │ │ ├── confirmModal.ts │ │ ├── deleteDashboard.ts │ │ ├── deleteDataSource.ts │ │ ├── editPanel.ts │ │ ├── importDashboard.ts │ │ ├── importDashboards.ts │ │ ├── index.ts │ │ ├── login.ts │ │ ├── openDashboard.ts │ │ ├── openPanelMenuItem.ts │ │ ├── revertAllChanges.ts │ │ ├── saveDashboard.ts │ │ ├── selectOption.ts │ │ ├── setDashboardTimeRange.ts │ │ ├── setTimeRange.ts │ │ └── userPreferences.ts │ ├── index.ts │ ├── support │ │ ├── benchmark.ts │ │ ├── index.ts │ │ ├── localStorage.ts │ │ ├── monaco.ts │ │ ├── scenarioContext.ts │ │ ├── selector.ts │ │ ├── types.ts │ │ └── url.ts │ └── typings │ │ ├── index.ts │ │ └── undo.ts ├── various-suite │ ├── bar-gauge.spec.ts │ ├── exemplars.spec.ts │ ├── explore.spec.ts │ ├── filter-annotations.spec.ts │ ├── frontend-sandbox-app.spec.ts │ ├── frontend-sandbox-datasource.spec.ts │ ├── gauge.spec.ts │ ├── graph-auto-migrate.spec.ts │ ├── helpers │ │ └── prometheus-helpers.ts │ ├── inspect-drawer.spec.ts │ ├── loki-editor.spec.ts │ ├── loki-query-builder.spec.ts │ ├── loki-table-explore-to-dash.spec.ts │ ├── navigation.spec.ts │ ├── pie-chart.spec.ts │ ├── prometheus-annotations.spec.ts │ ├── prometheus-config.spec.ts │ ├── prometheus-editor.spec.ts │ ├── prometheus-variable-editor.spec.ts │ ├── query-editor.spec.ts │ ├── return-to-previous.spec.ts │ ├── select-focus.spec.ts │ ├── solo-route.spec.ts │ ├── trace-view-scrolling.spec.ts │ └── visualization-suggestions.spec.ts ├── verify-release └── verify │ └── specs │ └── smoketests.spec.ts ├── emails ├── Makefile ├── README.md ├── grunt │ ├── aliases.yaml │ ├── assemble.js │ ├── copy.js │ └── replace.js ├── gruntfile.js ├── package.json └── templates │ ├── invited_to_org.mjml │ ├── invited_to_org.txt │ ├── new_user_invite.mjml │ ├── new_user_invite.txt │ ├── ng_alert_notification.mjml │ ├── ng_alert_notification.txt │ ├── partials │ ├── _globals.mjml │ ├── alerting │ │ ├── firing_instance.mjml │ │ ├── grouping_labels.mjml │ │ ├── instance_details.mjml │ │ ├── resolved_instance.mjml │ │ └── summary.mjml │ └── layout │ │ ├── default.txt │ │ ├── footer.mjml │ │ ├── head.mjml │ │ ├── header.mjml │ │ └── theme.css │ ├── reset_password.mjml │ ├── reset_password.txt │ ├── signup_started.mjml │ ├── signup_started.txt │ ├── verify_email.mjml │ ├── verify_email.txt │ ├── welcome_on_signup.mjml │ └── welcome_on_signup.txt ├── embed.go ├── go.mod ├── go.sum ├── go.work ├── go.work.sum ├── grafana-mixin ├── .gitignore ├── Makefile ├── README.md ├── alerts │ └── alerts.libsonnet ├── dashboards │ ├── dashboards.libsonnet │ └── grafana-overview.json ├── mixin.libsonnet ├── rules │ └── rules.libsonnet └── scripts │ ├── build.sh │ ├── common.sh │ ├── format.sh │ └── lint.sh ├── hack ├── README.md ├── boilerplate.go.txt ├── externalTools.go ├── make-aggregator-pki.sh ├── openapi-codegen.sh └── update-codegen.sh ├── jest.config.js ├── kinds ├── accesspolicy │ └── access_policy_kind.cue ├── dashboard │ └── dashboard_kind.cue ├── gen.go ├── librarypanel │ └── librarypanel_kind.cue ├── preferences │ └── preferences_kind.cue ├── publicdashboard │ └── public_dashboard_kind.cue ├── role │ └── role_kind.cue ├── rolebinding │ └── role_binding_kind.cue └── team │ └── team_kind.cue ├── latest.json ├── lefthook.rc ├── lefthook.yml ├── lerna.json ├── local └── .gitkeep ├── nx.json ├── package.json ├── packages ├── README.md ├── grafana-data │ ├── .eslintrc │ ├── CHANGELOG.md │ ├── LICENSE_APACHE2 │ ├── README.md │ ├── package.json │ ├── rollup.config.ts │ ├── src │ │ ├── context │ │ │ └── plugins │ │ │ │ ├── DataSourcePluginContextProvider.tsx │ │ │ │ ├── PluginContext.tsx │ │ │ │ ├── PluginContextProvider.tsx │ │ │ │ ├── guards.ts │ │ │ │ └── usePluginContext.tsx │ │ ├── dataframe │ │ │ ├── ArrayDataFrame.test.ts │ │ │ ├── ArrayDataFrame.ts │ │ │ ├── CircularDataFrame.ts │ │ │ ├── DataFrameJSON.test.ts │ │ │ ├── DataFrameJSON.ts │ │ │ ├── DataFrameView.test.ts │ │ │ ├── DataFrameView.ts │ │ │ ├── FieldCache.test.ts │ │ │ ├── FieldCache.ts │ │ │ ├── MutableDataFrame.test.ts │ │ │ ├── MutableDataFrame.ts │ │ │ ├── StreamingDataFrame.test.ts │ │ │ ├── StreamingDataFrame.ts │ │ │ ├── __snapshots__ │ │ │ │ └── all_types.golden.arrow │ │ │ ├── dimensions.ts │ │ │ ├── frameComparisons.test.ts │ │ │ ├── frameComparisons.ts │ │ │ ├── index.ts │ │ │ ├── processDataFrame.test.ts │ │ │ ├── processDataFrame.ts │ │ │ ├── utils.test.ts │ │ │ └── utils.ts │ │ ├── datetime │ │ │ ├── common.ts │ │ │ ├── datemath.test.ts │ │ │ ├── datemath.ts │ │ │ ├── durationutil.test.ts │ │ │ ├── durationutil.ts │ │ │ ├── formats.test.ts │ │ │ ├── formats.ts │ │ │ ├── formatter.test.ts │ │ │ ├── formatter.ts │ │ │ ├── index.ts │ │ │ ├── moment_wrapper.ts │ │ │ ├── parser.test.ts │ │ │ ├── parser.ts │ │ │ ├── rangeutil.test.ts │ │ │ ├── rangeutil.ts │ │ │ ├── timezones.test.ts │ │ │ └── timezones.ts │ │ ├── events │ │ │ ├── EventBus.test.ts │ │ │ ├── EventBus.ts │ │ │ ├── common.ts │ │ │ ├── eventFactory.ts │ │ │ ├── index.ts │ │ │ └── types.ts │ │ ├── field │ │ │ ├── FieldConfigOptionsRegistry.tsx │ │ │ ├── displayProcessor.test.ts │ │ │ ├── displayProcessor.ts │ │ │ ├── fieldColor.test.ts │ │ │ ├── fieldColor.ts │ │ │ ├── fieldComparers.ts │ │ │ ├── fieldDisplay.test.ts │ │ │ ├── fieldDisplay.ts │ │ │ ├── fieldOverrides.test.ts │ │ │ ├── fieldOverrides.ts │ │ │ ├── fieldState.test.ts │ │ │ ├── fieldState.ts │ │ │ ├── getFieldDisplayValuesProxy.test.tsx │ │ │ ├── getFieldDisplayValuesProxy.ts │ │ │ ├── index.ts │ │ │ ├── overrides │ │ │ │ └── processors.ts │ │ │ ├── scale.test.ts │ │ │ ├── scale.ts │ │ │ ├── standardFieldConfigEditorRegistry.ts │ │ │ ├── thresholds.test.ts │ │ │ └── thresholds.ts │ │ ├── geo │ │ │ └── layer.ts │ │ ├── index.ts │ │ ├── monaco │ │ │ ├── index.ts │ │ │ └── languageRegistry.ts │ │ ├── panel │ │ │ ├── PanelPlugin.test.tsx │ │ │ ├── PanelPlugin.ts │ │ │ ├── getPanelOptionsWithDefaults.test.ts │ │ │ ├── getPanelOptionsWithDefaults.ts │ │ │ └── registryFactories.ts │ │ ├── query │ │ │ ├── index.ts │ │ │ ├── refId.test.ts │ │ │ └── refId.ts │ │ ├── text │ │ │ ├── index.ts │ │ │ ├── markdown.test.ts │ │ │ ├── markdown.ts │ │ │ ├── sanitize.test.ts │ │ │ ├── sanitize.ts │ │ │ ├── string.test.ts │ │ │ ├── string.ts │ │ │ ├── text.test.ts │ │ │ └── text.ts │ │ ├── themes │ │ │ ├── breakpoints.ts │ │ │ ├── colorManipulator.test.ts │ │ │ ├── colorManipulator.ts │ │ │ ├── context.tsx │ │ │ ├── createColors.test.ts │ │ │ ├── createColors.ts │ │ │ ├── createComponents.ts │ │ │ ├── createShadows.ts │ │ │ ├── createShape.ts │ │ │ ├── createSpacing.test.ts │ │ │ ├── createSpacing.ts │ │ │ ├── createTheme.test.ts │ │ │ ├── createTheme.ts │ │ │ ├── createTransitions.test.ts │ │ │ ├── createTransitions.ts │ │ │ ├── createTypography.ts │ │ │ ├── createV1Theme.ts │ │ │ ├── createVisualizationColors.test.ts │ │ │ ├── createVisualizationColors.ts │ │ │ ├── index.ts │ │ │ ├── palette.ts │ │ │ ├── registry.ts │ │ │ ├── types.ts │ │ │ └── zIndex.ts │ │ ├── transformations │ │ │ ├── fieldReducer.test.ts │ │ │ ├── fieldReducer.ts │ │ │ ├── index.ts │ │ │ ├── matchers.ts │ │ │ ├── matchers │ │ │ │ ├── compareValues.test.ts │ │ │ │ ├── compareValues.ts │ │ │ │ ├── fieldTypeMatcher.test.ts │ │ │ │ ├── fieldTypeMatcher.ts │ │ │ │ ├── fieldValueMatcher.test.ts │ │ │ │ ├── fieldValueMatcher.ts │ │ │ │ ├── ids.ts │ │ │ │ ├── matchers.test.ts │ │ │ │ ├── nameMatcher.test.ts │ │ │ │ ├── nameMatcher.ts │ │ │ │ ├── predicates.test.ts │ │ │ │ ├── predicates.ts │ │ │ │ ├── refIdMatcher.ts │ │ │ │ ├── simpleFieldMatcher.ts │ │ │ │ └── valueMatchers │ │ │ │ │ ├── equalMatchers.test.ts │ │ │ │ │ ├── equalMatchers.ts │ │ │ │ │ ├── nullMatchers.test.ts │ │ │ │ │ ├── nullMatchers.ts │ │ │ │ │ ├── numericMatchers.test.ts │ │ │ │ │ ├── numericMatchers.ts │ │ │ │ │ ├── rangeMatchers.test.ts │ │ │ │ │ ├── rangeMatchers.ts │ │ │ │ │ ├── regexMatchers.test.ts │ │ │ │ │ ├── regexMatchers.ts │ │ │ │ │ ├── substringMatchers.test.ts │ │ │ │ │ ├── substringMatchers.ts │ │ │ │ │ └── types.ts │ │ │ ├── standardTransformersRegistry.ts │ │ │ ├── transformDataFrame.test.ts │ │ │ ├── transformDataFrame.ts │ │ │ ├── transformers.ts │ │ │ └── transformers │ │ │ │ ├── calculateField.test.ts │ │ │ │ ├── calculateField.ts │ │ │ │ ├── concat.test.ts │ │ │ │ ├── concat.ts │ │ │ │ ├── convertFieldType.test.ts │ │ │ │ ├── convertFieldType.ts │ │ │ │ ├── ensureColumns.test.ts │ │ │ │ ├── ensureColumns.ts │ │ │ │ ├── filter.test.ts │ │ │ │ ├── filter.ts │ │ │ │ ├── filterByName.test.ts │ │ │ │ ├── filterByName.ts │ │ │ │ ├── filterByRefId.test.ts │ │ │ │ ├── filterByRefId.ts │ │ │ │ ├── filterByValue.test.ts │ │ │ │ ├── filterByValue.ts │ │ │ │ ├── formatString.test.ts │ │ │ │ ├── formatString.ts │ │ │ │ ├── formatTime.test.ts │ │ │ │ ├── formatTime.ts │ │ │ │ ├── groupBy.test.ts │ │ │ │ ├── groupBy.ts │ │ │ │ ├── groupToNestedTable.test.ts │ │ │ │ ├── groupToNestedTable.ts │ │ │ │ ├── groupingToMatrix.test.ts │ │ │ │ ├── groupingToMatrix.ts │ │ │ │ ├── histogram.test.ts │ │ │ │ ├── histogram.ts │ │ │ │ ├── ids.ts │ │ │ │ ├── joinByField.test.ts │ │ │ │ ├── joinByField.ts │ │ │ │ ├── joinDataFrames.test.ts │ │ │ │ ├── joinDataFrames.ts │ │ │ │ ├── labelsToFields.test.ts │ │ │ │ ├── labelsToFields.ts │ │ │ │ ├── limit.test.ts │ │ │ │ ├── limit.ts │ │ │ │ ├── merge.test.ts │ │ │ │ ├── merge.ts │ │ │ │ ├── noop.ts │ │ │ │ ├── nulls │ │ │ │ ├── nullInsertThreshold.test.ts │ │ │ │ ├── nullInsertThreshold.ts │ │ │ │ ├── nullToUndefThreshold.ts │ │ │ │ ├── nullToValue.test.ts │ │ │ │ └── nullToValue.ts │ │ │ │ ├── order.test.ts │ │ │ │ ├── order.ts │ │ │ │ ├── organize.test.ts │ │ │ │ ├── organize.ts │ │ │ │ ├── reduce.test.ts │ │ │ │ ├── reduce.ts │ │ │ │ ├── rename.test.ts │ │ │ │ ├── rename.ts │ │ │ │ ├── renameByRegex.test.ts │ │ │ │ ├── renameByRegex.ts │ │ │ │ ├── seriesToRows.test.ts │ │ │ │ ├── seriesToRows.ts │ │ │ │ ├── sortBy.test.ts │ │ │ │ ├── sortBy.ts │ │ │ │ └── utils.ts │ │ ├── types │ │ │ ├── OptionsUIRegistryBuilder.ts │ │ │ ├── ScopedVars.ts │ │ │ ├── accesscontrol.ts │ │ │ ├── alerts.ts │ │ │ ├── annotations.ts │ │ │ ├── app.ts │ │ │ ├── config.ts │ │ │ ├── constants.ts │ │ │ ├── dashboard.ts │ │ │ ├── data.test.ts │ │ │ ├── data.ts │ │ │ ├── dataFrame.ts │ │ │ ├── dataFrameTypes.ts │ │ │ ├── dataLink.ts │ │ │ ├── datasource.ts │ │ │ ├── displayValue.ts │ │ │ ├── explore.ts │ │ │ ├── featureToggles.gen.ts │ │ │ ├── fieldColor.ts │ │ │ ├── fieldOverrides.ts │ │ │ ├── flot.ts │ │ │ ├── geometry.ts │ │ │ ├── graph.ts │ │ │ ├── icon.ts │ │ │ ├── index.ts │ │ │ ├── layout.ts │ │ │ ├── legacyEvents.ts │ │ │ ├── live.test.ts │ │ │ ├── live.ts │ │ │ ├── logs.ts │ │ │ ├── navModel.ts │ │ │ ├── options.ts │ │ │ ├── orgs.ts │ │ │ ├── panel.ts │ │ │ ├── plugin.ts │ │ │ ├── pluginExtensions.ts │ │ │ ├── pluginSignature.ts │ │ │ ├── query.ts │ │ │ ├── queryRunner.ts │ │ │ ├── scopes.ts │ │ │ ├── select.ts │ │ │ ├── slider.ts │ │ │ ├── templateVars.ts │ │ │ ├── theme.ts │ │ │ ├── thresholds.ts │ │ │ ├── time.ts │ │ │ ├── trace.ts │ │ │ ├── transformations.ts │ │ │ ├── valueMapping.ts │ │ │ ├── variables.ts │ │ │ └── vector.ts │ │ ├── utils │ │ │ ├── OptionsUIBuilders.ts │ │ │ ├── Registry.test.ts │ │ │ ├── Registry.ts │ │ │ ├── __snapshots__ │ │ │ │ └── csv.test.ts.snap │ │ │ ├── anyToNumber.ts │ │ │ ├── arrayUtils.test.ts │ │ │ ├── arrayUtils.ts │ │ │ ├── binaryOperators.ts │ │ │ ├── csv.test.ts │ │ │ ├── csv.ts │ │ │ ├── dataLinks.test.ts │ │ │ ├── dataLinks.ts │ │ │ ├── datasource.ts │ │ │ ├── deprecationWarning.test.ts │ │ │ ├── deprecationWarning.ts │ │ │ ├── docs.ts │ │ │ ├── fieldParser.ts │ │ │ ├── flotPairs.test.ts │ │ │ ├── flotPairs.ts │ │ │ ├── index.ts │ │ │ ├── labels.test.ts │ │ │ ├── labels.ts │ │ │ ├── legend.test.ts │ │ │ ├── legend.ts │ │ │ ├── location.test.ts │ │ │ ├── location.ts │ │ │ ├── makeClassES5Compatible.ts │ │ │ ├── matchPluginId.ts │ │ │ ├── namedColorsPalette.test.ts │ │ │ ├── namedColorsPalette.ts │ │ │ ├── nodeGraph.ts │ │ │ ├── numbers.ts │ │ │ ├── object.ts │ │ │ ├── selectUtils.ts │ │ │ ├── series.test.ts │ │ │ ├── series.ts │ │ │ ├── testdata │ │ │ │ ├── roundtrip.csv │ │ │ │ ├── simple.csv │ │ │ │ └── withHeaders.csv │ │ │ ├── tests │ │ │ │ ├── mockDataSource.ts │ │ │ │ ├── mockStandardProperties.ts │ │ │ │ └── mockTransformationsRegistry.ts │ │ │ ├── unaryOperators.ts │ │ │ ├── url.test.ts │ │ │ ├── url.ts │ │ │ ├── valueMappings.test.ts │ │ │ ├── valueMappings.ts │ │ │ ├── variables.ts │ │ │ └── withLoadingIndicator.ts │ │ ├── valueFormats │ │ │ ├── arithmeticFormatters.test.ts │ │ │ ├── arithmeticFormatters.ts │ │ │ ├── categories.ts │ │ │ ├── dateTimeFormatters.test.ts │ │ │ ├── dateTimeFormatters.ts │ │ │ ├── index.ts │ │ │ ├── symbolFormatters.test.ts │ │ │ ├── symbolFormatters.ts │ │ │ ├── valueFormats.test.ts │ │ │ └── valueFormats.ts │ │ └── vector │ │ │ ├── ArrayVector.test.ts │ │ │ ├── ArrayVector.ts │ │ │ ├── CircularVector.test.ts │ │ │ ├── CircularVector.ts │ │ │ └── FunctionalVector.ts │ ├── test │ │ ├── __mocks__ │ │ │ └── pluginMocks.ts │ │ └── helpers │ │ │ └── fieldConfig.ts │ ├── tsconfig.build.json │ ├── tsconfig.json │ └── typings │ │ └── jest │ │ └── index.d.ts ├── grafana-e2e-selectors │ ├── CHANGELOG.md │ ├── LICENSE_APACHE2 │ ├── README.md │ ├── package.json │ ├── rollup.config.ts │ ├── src │ │ ├── index.ts │ │ ├── selectors │ │ │ ├── components.ts │ │ │ ├── index.ts │ │ │ └── pages.ts │ │ └── types │ │ │ ├── index.ts │ │ │ └── selectors.ts │ ├── tsconfig.build.json │ └── tsconfig.json ├── grafana-eslint-rules │ ├── LICENSE_APACHE2 │ ├── README.md │ ├── index.cjs │ ├── package.json │ ├── rules │ │ ├── no-aria-label-e2e-selectors.cjs │ │ ├── no-border-radius-literal.cjs │ │ ├── no-unreduced-motion.cjs │ │ ├── no-utranslated-strings.cjs │ │ └── theme-token-usage.cjs │ ├── tests │ │ ├── no-aria-label-e2e-selectors.test.js │ │ └── no-border-radius-literal.test.js │ └── tsconfig.json ├── grafana-flamegraph │ ├── .eslintrc │ ├── CHANGELOG.md │ ├── LICENSE_APACHE2 │ ├── README.md │ ├── package.json │ ├── rollup.config.ts │ ├── src │ │ ├── FlameGraph │ │ │ ├── FlameGraph.test.tsx │ │ │ ├── FlameGraph.tsx │ │ │ ├── FlameGraphCanvas.test.tsx │ │ │ ├── FlameGraphCanvas.tsx │ │ │ ├── FlameGraphContextMenu.tsx │ │ │ ├── FlameGraphMetadata.test.tsx │ │ │ ├── FlameGraphMetadata.tsx │ │ │ ├── FlameGraphTooltip.test.tsx │ │ │ ├── FlameGraphTooltip.tsx │ │ │ ├── __snapshots__ │ │ │ │ └── FlameGraph.test.tsx.snap │ │ │ ├── colors.test.ts │ │ │ ├── colors.ts │ │ │ ├── dataTransform.test.ts │ │ │ ├── dataTransform.ts │ │ │ ├── murmur3.ts │ │ │ ├── rendering.test.ts │ │ │ ├── rendering.ts │ │ │ ├── testData │ │ │ │ ├── dataFlamebearer.ts │ │ │ │ └── dataNestedSet.ts │ │ │ ├── testHelpers.test.ts │ │ │ ├── testHelpers.ts │ │ │ ├── treeTransforms.test.ts │ │ │ └── treeTransforms.ts │ │ ├── FlameGraphContainer.test.tsx │ │ ├── FlameGraphContainer.tsx │ │ ├── FlameGraphHeader.test.tsx │ │ ├── FlameGraphHeader.tsx │ │ ├── TopTable │ │ │ ├── FlameGraphTopTableContainer.test.tsx │ │ │ └── FlameGraphTopTableContainer.tsx │ │ ├── constants.ts │ │ ├── index.ts │ │ ├── types.ts │ │ └── types │ │ │ └── emotion-core-stub.d.ts │ ├── tsconfig.build.json │ └── tsconfig.json ├── grafana-icons │ ├── .gitignore │ ├── .svgrrc.cjs │ ├── CHANGELOG.md │ ├── LICENSE_APACHE2 │ ├── README.md │ ├── package.json │ ├── rollup.config.ts │ ├── src │ │ └── IconBase.tsx │ ├── svg │ │ ├── adjust-circle.svg │ │ ├── ai.svg │ │ ├── align-left.svg │ │ ├── align-right.svg │ │ ├── amazon.svg │ │ ├── anchor.svg │ │ ├── angle-double-down.svg │ │ ├── angle-double-right.svg │ │ ├── angle-double-up.svg │ │ ├── angle-down.svg │ │ ├── angle-left.svg │ │ ├── angle-right.svg │ │ ├── angle-up.svg │ │ ├── application-observability.svg │ │ ├── apps.svg │ │ ├── archive-alt.svg │ │ ├── arrow-down.svg │ │ ├── arrow-from-right.svg │ │ ├── arrow-left.svg │ │ ├── arrow-random.svg │ │ ├── arrow-right.svg │ │ ├── arrow-to-right.svg │ │ ├── arrow-up.svg │ │ ├── arrow.svg │ │ ├── arrows-h.svg │ │ ├── arrows-v.svg │ │ ├── asserts.svg │ │ ├── at.svg │ │ ├── backward.svg │ │ ├── bar-alignment-after.svg │ │ ├── bar-alignment-before.svg │ │ ├── bar-alignment-center.svg │ │ ├── bars.svg │ │ ├── bell-slash.svg │ │ ├── bell.svg │ │ ├── bolt.svg │ │ ├── book-open.svg │ │ ├── book.svg │ │ ├── bookmark.svg │ │ ├── brackets-curly.svg │ │ ├── bug.svg │ │ ├── building.svg │ │ ├── calculator-alt.svg │ │ ├── calendar-alt.svg │ │ ├── calendar-slash.svg │ │ ├── camera.svg │ │ ├── cancel.svg │ │ ├── capture.svg │ │ ├── channel-add.svg │ │ ├── chart-line.svg │ │ ├── check-circle.svg │ │ ├── check-square.svg │ │ ├── check.svg │ │ ├── circle-mono.svg │ │ ├── circle.svg │ │ ├── clipboard-alt.svg │ │ ├── clock-nine.svg │ │ ├── cloud-download.svg │ │ ├── cloud-upload.svg │ │ ├── cloud.svg │ │ ├── code-branch.svg │ │ ├── cog.svg │ │ ├── columns.svg │ │ ├── comment-alt-message.svg │ │ ├── comment-alt-share.svg │ │ ├── comment-alt.svg │ │ ├── comments-alt.svg │ │ ├── compass.svg │ │ ├── copy.svg │ │ ├── corner-down-right-alt.svg │ │ ├── create-dashboard.svg │ │ ├── credit-card.svg │ │ ├── crosshair.svg │ │ ├── cube.svg │ │ ├── dashboard.svg │ │ ├── database.svg │ │ ├── dice-three.svg │ │ ├── discord.svg │ │ ├── docker.svg │ │ ├── document-info.svg │ │ ├── document-layout-left.svg │ │ ├── download-alt.svg │ │ ├── draggabledots.svg │ │ ├── edit.svg │ │ ├── ellipsis-h.svg │ │ ├── ellipsis-v.svg │ │ ├── enter.svg │ │ ├── envelope.svg │ │ ├── exchange-alt.svg │ │ ├── exclamation-circle.svg │ │ ├── exclamation-triangle.svg │ │ ├── expand-arrows.svg │ │ ├── external-link-alt.svg │ │ ├── eye-slash.svg │ │ ├── eye.svg │ │ ├── favorite.svg │ │ ├── file-alt.svg │ │ ├── file-blank.svg │ │ ├── file-copy-alt.svg │ │ ├── file-download.svg │ │ ├── file-edit-alt.svg │ │ ├── file-landscape-alt.svg │ │ ├── filter.svg │ │ ├── fire.svg │ │ ├── flip.svg │ │ ├── folder-open.svg │ │ ├── folder-plus.svg │ │ ├── folder-upload.svg │ │ ├── folder.svg │ │ ├── font.svg │ │ ├── forward.svg │ │ ├── frontend-observability.svg │ │ ├── github.svg │ │ ├── gitlab.svg │ │ ├── globe.svg │ │ ├── glue.svg │ │ ├── google-hangouts-alt.svg │ │ ├── google.svg │ │ ├── grafana.svg │ │ ├── graph-bar.svg │ │ ├── grid.svg │ │ ├── heart-break.svg │ │ ├── heart-rate.svg │ │ ├── heart.svg │ │ ├── hipchat.svg │ │ ├── history-alt.svg │ │ ├── history.svg │ │ ├── home-alt.svg │ │ ├── home.svg │ │ ├── horizontal-align-center.svg │ │ ├── horizontal-align-left.svg │ │ ├── horizontal-align-right.svg │ │ ├── hourglass.svg │ │ ├── import.svg │ │ ├── info-circle.svg │ │ ├── info.svg │ │ ├── interpolation-linear.svg │ │ ├── interpolation-smooth.svg │ │ ├── interpolation-step-after.svg │ │ ├── interpolation-step-before.svg │ │ ├── k6.svg │ │ ├── key-skeleton-alt.svg │ │ ├── keyboard.svg │ │ ├── landscape.svg │ │ ├── layer-group.svg │ │ ├── layers-alt.svg │ │ ├── layout-simple.svg │ │ ├── library-panel.svg │ │ ├── line-alt.svg │ │ ├── line.svg │ │ ├── link.svg │ │ ├── list-ol.svg │ │ ├── list-ui-alt.svg │ │ ├── list-ul.svg │ │ ├── lock.svg │ │ ├── logs.svg │ │ ├── map-marker-minus.svg │ │ ├── map-marker-plus.svg │ │ ├── map-marker.svg │ │ ├── message.svg │ │ ├── microsoft.svg │ │ ├── minus-circle.svg │ │ ├── minus.svg │ │ ├── ml.svg │ │ ├── mobile-android.svg │ │ ├── monitor.svg │ │ ├── movepane-left.svg │ │ ├── movepane-right.svg │ │ ├── okta.svg │ │ ├── pagerduty.svg │ │ ├── palette.svg │ │ ├── panel-add.svg │ │ ├── paragraph.svg │ │ ├── pathfinder-unite.svg │ │ ├── pause.svg │ │ ├── pen.svg │ │ ├── percentage.svg │ │ ├── pin.svg │ │ ├── play.svg │ │ ├── plug.svg │ │ ├── plus-circle.svg │ │ ├── plus-square.svg │ │ ├── plus.svg │ │ ├── portrait.svg │ │ ├── power.svg │ │ ├── presentation-play.svg │ │ ├── process.svg │ │ ├── prometheus.svg │ │ ├── question-circle.svg │ │ ├── record-audio.svg │ │ ├── repeat.svg │ │ ├── rocket.svg │ │ ├── rss.svg │ │ ├── ruler-combined.svg │ │ ├── save.svg │ │ ├── search-minus.svg │ │ ├── search-plus.svg │ │ ├── search.svg │ │ ├── service-account.svg │ │ ├── share-alt.svg │ │ ├── shield-exclamation.svg │ │ ├── shield.svg │ │ ├── show-context.svg │ │ ├── signal.svg │ │ ├── signin.svg │ │ ├── signout.svg │ │ ├── sitemap.svg │ │ ├── slack.svg │ │ ├── sliders-v-alt.svg │ │ ├── sort-amount-down.svg │ │ ├── sort-amount-up.svg │ │ ├── spinner.svg │ │ ├── square-shape.svg │ │ ├── star.svg │ │ ├── step-backward.svg │ │ ├── stopwatch-slash.svg │ │ ├── stopwatch.svg │ │ ├── sync-slash.svg │ │ ├── sync.svg │ │ ├── table-collapse-all.svg │ │ ├── table-expand-all.svg │ │ ├── table.svg │ │ ├── tag-alt.svg │ │ ├── telegram-alt.svg │ │ ├── text-fields.svg │ │ ├── thumbs-up.svg │ │ ├── times-circle.svg │ │ ├── times.svg │ │ ├── toggle-off.svg │ │ ├── toggle-on.svg │ │ ├── traces.svg │ │ ├── trash-alt.svg │ │ ├── unarchive.svg │ │ ├── unlock.svg │ │ ├── upload.svg │ │ ├── user-arrows.svg │ │ ├── user.svg │ │ ├── users-alt.svg │ │ ├── vertical-align-bottom.svg │ │ ├── vertical-align-center.svg │ │ ├── vertical-align-top.svg │ │ ├── web-section-alt.svg │ │ ├── wrap-text.svg │ │ └── x.svg │ ├── templates │ │ ├── icon.cjs │ │ └── index.cjs │ ├── tsconfig.build.json │ └── tsconfig.json ├── grafana-o11y-ds-frontend │ ├── package.json │ ├── src │ │ ├── IntervalInput │ │ │ ├── IntervalInput.test.tsx │ │ │ ├── IntervalInput.tsx │ │ │ ├── validation.test.ts │ │ │ └── validation.ts │ │ ├── LocalStorageValueProvider │ │ │ └── LocalStorageValueProvider.tsx │ │ ├── NodeGraph │ │ │ └── NodeGraphSettings.tsx │ │ ├── SpanBar │ │ │ └── SpanBarSettings.tsx │ │ ├── TemporaryAlert.test.tsx │ │ ├── TemporaryAlert.tsx │ │ ├── TraceToLogs │ │ │ ├── TagMappingInput.tsx │ │ │ ├── TraceToLogsSettings.test.tsx │ │ │ └── TraceToLogsSettings.tsx │ │ ├── TraceToMetrics │ │ │ └── TraceToMetricsSettings.tsx │ │ ├── TraceToProfiles │ │ │ ├── TraceToProfilesSettings.test.tsx │ │ │ └── TraceToProfilesSettings.tsx │ │ ├── combineResponses.test.ts │ │ ├── combineResponses.ts │ │ ├── index.ts │ │ ├── pyroscope │ │ │ ├── ProfileTypesCascader.tsx │ │ │ ├── dataquery.gen.ts │ │ │ ├── datasource.ts │ │ │ └── types.ts │ │ ├── store.ts │ │ └── utils.ts │ └── tsconfig.json ├── grafana-plugin-configs │ ├── constants.ts │ ├── package.json │ ├── tsconfig.json │ ├── types │ │ └── custom.d.ts │ ├── utils.ts │ └── webpack.config.ts ├── grafana-prometheus │ ├── CHANGELOG.md │ ├── LICENSE_AGPL │ ├── README.md │ ├── jest.config.js │ ├── package.json │ ├── rollup.config.ts │ ├── src │ │ ├── __mocks__ │ │ │ └── datasource.ts │ │ ├── add_label_to_query.test.ts │ │ ├── add_label_to_query.ts │ │ ├── components │ │ │ ├── AnnotationQueryEditor.tsx │ │ │ ├── PromCheatSheet.tsx │ │ │ ├── PromExemplarField.tsx │ │ │ ├── PromExploreExtraField.test.tsx │ │ │ ├── PromExploreExtraField.tsx │ │ │ ├── PromQueryEditorByApp.test.tsx │ │ │ ├── PromQueryEditorByApp.tsx │ │ │ ├── PromQueryEditorForAlerting.tsx │ │ │ ├── PromQueryField.test.tsx │ │ │ ├── PromQueryField.tsx │ │ │ ├── PrometheusMetricsBrowser.test.tsx │ │ │ ├── PrometheusMetricsBrowser.tsx │ │ │ ├── VariableQueryEditor.test.tsx │ │ │ ├── VariableQueryEditor.tsx │ │ │ ├── monaco-query-field │ │ │ │ ├── MonacoQueryField.tsx │ │ │ │ ├── MonacoQueryFieldLazy.tsx │ │ │ │ ├── MonacoQueryFieldProps.ts │ │ │ │ ├── MonacoQueryFieldWrapper.tsx │ │ │ │ ├── getOverrideServices.ts │ │ │ │ ├── monaco-completion-provider │ │ │ │ │ ├── completions.test.ts │ │ │ │ │ ├── completions.ts │ │ │ │ │ ├── data_provider.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── situation.test.ts │ │ │ │ │ ├── situation.ts │ │ │ │ │ ├── util.ts │ │ │ │ │ ├── validation.test.ts │ │ │ │ │ └── validation.ts │ │ │ │ └── promql.ts │ │ │ └── types.ts │ │ ├── configuration │ │ │ ├── AlertingSettingsOverhaul.tsx │ │ │ ├── ConfigEditor.test.tsx │ │ │ ├── ConfigEditor.tsx │ │ │ ├── DataSourceHttpSettingsOverhaul.tsx │ │ │ ├── ExemplarSetting.tsx │ │ │ ├── ExemplarsSettings.tsx │ │ │ ├── PromFlavorVersions.ts │ │ │ ├── PromSettings.test.tsx │ │ │ ├── PromSettings.tsx │ │ │ └── mocks.ts │ │ ├── dashboards │ │ │ ├── grafana_stats.json │ │ │ ├── prometheus_2_stats.json │ │ │ └── prometheus_stats.json │ │ ├── dataquery.ts │ │ ├── datasource.test.ts │ │ ├── datasource.ts │ │ ├── gcopypaste │ │ │ ├── app │ │ │ │ ├── core │ │ │ │ │ ├── components │ │ │ │ │ │ └── LocalStorageValueProvider │ │ │ │ │ │ │ ├── LocalStorageValueProvider.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── store.ts │ │ │ │ │ └── utils │ │ │ │ │ │ ├── CancelablePromise.ts │ │ │ │ │ │ └── query.ts │ │ │ │ └── features │ │ │ │ │ ├── datasources │ │ │ │ │ └── __mocks__ │ │ │ │ │ │ └── dataSourcesMocks.ts │ │ │ │ │ └── live │ │ │ │ │ └── data │ │ │ │ │ └── amendTimeSeries.ts │ │ │ ├── packages │ │ │ │ └── grafana-ui │ │ │ │ │ └── src │ │ │ │ │ └── components │ │ │ │ │ └── Select │ │ │ │ │ └── SelectBase.tsx │ │ │ ├── public │ │ │ │ └── test │ │ │ │ │ └── matchers │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── toEmitValues.test.ts │ │ │ │ │ ├── toEmitValues.ts │ │ │ │ │ ├── toEmitValuesWith.test.ts │ │ │ │ │ ├── toEmitValuesWith.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── utils.ts │ │ │ └── test │ │ │ │ └── helpers │ │ │ │ └── selectOptionInTest.ts │ │ ├── img │ │ │ ├── cortex_logo.svg │ │ │ ├── mimir_logo.svg │ │ │ ├── prometheus_logo.svg │ │ │ └── thanos_logo.svg │ │ ├── index.ts │ │ ├── language_provider.mock.ts │ │ ├── language_provider.test.ts │ │ ├── language_provider.ts │ │ ├── language_utils.test.ts │ │ ├── language_utils.ts │ │ ├── metric_find_query.test.ts │ │ ├── metric_find_query.ts │ │ ├── migrations │ │ │ └── variableMigration.ts │ │ ├── module.test.ts │ │ ├── module.ts │ │ ├── promql.test.ts │ │ ├── promql.ts │ │ ├── query_hints.test.ts │ │ ├── query_hints.ts │ │ ├── querybuilder │ │ │ ├── PromQueryModeller.test.ts │ │ │ ├── PromQueryModeller.ts │ │ │ ├── QueryPattern.tsx │ │ │ ├── QueryPatternsModal.test.tsx │ │ │ ├── QueryPatternsModal.tsx │ │ │ ├── aggregations.ts │ │ │ ├── binaryScalarOperations.ts │ │ │ ├── components │ │ │ │ ├── LabelFilterItem.tsx │ │ │ │ ├── LabelFilters.test.tsx │ │ │ │ ├── LabelFilters.tsx │ │ │ │ ├── LabelParamEditor.tsx │ │ │ │ ├── MetricSelect.test.tsx │ │ │ │ ├── MetricSelect.tsx │ │ │ │ ├── MetricsLabelsSection.tsx │ │ │ │ ├── NestedQuery.tsx │ │ │ │ ├── NestedQueryList.tsx │ │ │ │ ├── PromQueryBuilder.test.tsx │ │ │ │ ├── PromQueryBuilder.tsx │ │ │ │ ├── PromQueryBuilderContainer.test.tsx │ │ │ │ ├── PromQueryBuilderContainer.tsx │ │ │ │ ├── PromQueryBuilderExplained.tsx │ │ │ │ ├── PromQueryBuilderOptions.test.tsx │ │ │ │ ├── PromQueryBuilderOptions.tsx │ │ │ │ ├── PromQueryCodeEditor.test.tsx │ │ │ │ ├── PromQueryCodeEditor.tsx │ │ │ │ ├── PromQueryCodeEditorAutocompleteInfo.test.tsx │ │ │ │ ├── PromQueryCodeEditorAutocompleteInfo.tsx │ │ │ │ ├── PromQueryEditorSelector.test.tsx │ │ │ │ ├── PromQueryEditorSelector.tsx │ │ │ │ ├── PromQueryLegendEditor.tsx │ │ │ │ ├── QueryPreview.tsx │ │ │ │ ├── metrics-modal │ │ │ │ │ ├── AdditionalSettings.tsx │ │ │ │ │ ├── FeedbackLink.tsx │ │ │ │ │ ├── MetricsModal.test.tsx │ │ │ │ │ ├── MetricsModal.tsx │ │ │ │ │ ├── ResultsTable.tsx │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── state │ │ │ │ │ │ ├── helpers.ts │ │ │ │ │ │ └── state.ts │ │ │ │ │ ├── styles.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── uFuzzy.ts │ │ │ │ └── promQail │ │ │ │ │ ├── PromQail.test.tsx │ │ │ │ │ ├── PromQail.tsx │ │ │ │ │ ├── QueryAssistantButton.test.tsx │ │ │ │ │ ├── QueryAssistantButton.tsx │ │ │ │ │ ├── QuerySuggestionContainer.tsx │ │ │ │ │ ├── QuerySuggestionItem.tsx │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── prompts.ts │ │ │ │ │ ├── resources │ │ │ │ │ ├── AI_Logo_bw.svg │ │ │ │ │ └── AI_Logo_color.svg │ │ │ │ │ ├── state │ │ │ │ │ ├── helpers.test.ts │ │ │ │ │ ├── helpers.ts │ │ │ │ │ ├── state.ts │ │ │ │ │ └── templates.ts │ │ │ │ │ └── types.ts │ │ │ ├── hooks │ │ │ │ ├── useFlag.test.ts │ │ │ │ └── useFlag.ts │ │ │ ├── operationUtils.test.ts │ │ │ ├── operationUtils.ts │ │ │ ├── operations.ts │ │ │ ├── parsing.test.ts │ │ │ ├── parsing.ts │ │ │ ├── parsingUtils.test.ts │ │ │ ├── parsingUtils.ts │ │ │ ├── shared │ │ │ │ ├── LokiAndPromQueryModellerBase.ts │ │ │ │ ├── OperationEditor.tsx │ │ │ │ ├── OperationExplainedBox.tsx │ │ │ │ ├── OperationHeader.tsx │ │ │ │ ├── OperationInfoButton.tsx │ │ │ │ ├── OperationList.test.tsx │ │ │ │ ├── OperationList.tsx │ │ │ │ ├── OperationListExplained.tsx │ │ │ │ ├── OperationParamEditor.tsx │ │ │ │ ├── OperationsEditorRow.tsx │ │ │ │ ├── QueryBuilderHints.tsx │ │ │ │ ├── QueryEditorModeToggle.tsx │ │ │ │ ├── QueryHeaderSwitch.tsx │ │ │ │ ├── QueryOptionGroup.tsx │ │ │ │ ├── RawQuery.tsx │ │ │ │ └── types.ts │ │ │ ├── state.test.ts │ │ │ ├── state.ts │ │ │ ├── testUtils.ts │ │ │ └── types.ts │ │ ├── querycache │ │ │ ├── QueryCache.test.ts │ │ │ ├── QueryCache.ts │ │ │ └── QueryCacheTestData.ts │ │ ├── result_transformer.test.ts │ │ ├── result_transformer.ts │ │ ├── tracking.ts │ │ ├── types.ts │ │ ├── typings │ │ │ └── jest.d.ts │ │ └── variables.ts │ ├── tsconfig.build.json │ └── tsconfig.json ├── grafana-runtime │ ├── .eslintrc │ ├── CHANGELOG.md │ ├── LICENSE_APACHE2 │ ├── README.md │ ├── package.json │ ├── rollup.config.ts │ ├── src │ │ ├── analytics │ │ │ ├── plugins │ │ │ │ ├── eventProperties.ts │ │ │ │ ├── usePluginInteractionReporter.test.tsx │ │ │ │ └── usePluginInteractionReporter.ts │ │ │ ├── types.ts │ │ │ └── utils.ts │ │ ├── components │ │ │ ├── DataSourcePicker.test.tsx │ │ │ ├── DataSourcePicker.tsx │ │ │ ├── EmbeddedDashboard.tsx │ │ │ ├── PanelDataErrorView.tsx │ │ │ ├── PanelRenderer.tsx │ │ │ └── PluginPage.tsx │ │ ├── config.ts │ │ ├── index.ts │ │ ├── services │ │ │ ├── AngularLoader.ts │ │ │ ├── EchoSrv.ts │ │ │ ├── LocationService.test.ts │ │ │ ├── LocationService.ts │ │ │ ├── LocationSrv.ts │ │ │ ├── QueryRunner.ts │ │ │ ├── __mocks__ │ │ │ │ └── dataSourceSrv.ts │ │ │ ├── appEvents.ts │ │ │ ├── backendSrv.ts │ │ │ ├── dataSourceSrv.ts │ │ │ ├── index.ts │ │ │ ├── legacyAngularInjector.ts │ │ │ ├── live.ts │ │ │ ├── pluginExtensions │ │ │ │ ├── getPluginExtensions.test.ts │ │ │ │ ├── getPluginExtensions.ts │ │ │ │ ├── usePluginExtensions.test.tsx │ │ │ │ ├── usePluginExtensions.ts │ │ │ │ ├── utils.test.ts │ │ │ │ └── utils.ts │ │ │ └── templateSrv.ts │ │ └── utils │ │ │ ├── DataSourceWithBackend.test.ts │ │ │ ├── DataSourceWithBackend.ts │ │ │ ├── licensing.ts │ │ │ ├── logging.ts │ │ │ ├── plugin.ts │ │ │ ├── publicDashboardQueryHandler.ts │ │ │ ├── queryResponse.test.ts │ │ │ ├── queryResponse.ts │ │ │ ├── returnToPrevious.ts │ │ │ └── toDataQueryError.ts │ ├── tsconfig.build.json │ └── tsconfig.json ├── grafana-schema │ ├── .eslintrc │ ├── CHANGELOG.md │ ├── LICENSE_APACHE2 │ ├── README.md │ ├── package.json │ ├── rollup.config.ts │ ├── src │ │ ├── common │ │ │ ├── common.gen.ts │ │ │ ├── data.cue │ │ │ ├── data_source.cue │ │ │ ├── dataquery_gen.cue │ │ │ ├── dimensions.cue │ │ │ ├── geo.cue │ │ │ ├── heatmap.cue │ │ │ ├── logs.cue │ │ │ ├── mudball.cue │ │ │ ├── table.cue │ │ │ ├── time.cue │ │ │ └── variables.cue │ │ ├── index.gen.ts │ │ ├── index.ts │ │ ├── raw │ │ │ ├── accesspolicy │ │ │ │ └── x │ │ │ │ │ └── accesspolicy_types.gen.ts │ │ │ ├── composable │ │ │ │ ├── annotationslist │ │ │ │ │ └── panelcfg │ │ │ │ │ │ └── x │ │ │ │ │ │ └── AnnotationsListPanelCfg_types.gen.ts │ │ │ │ ├── azuremonitor │ │ │ │ │ └── dataquery │ │ │ │ │ │ └── x │ │ │ │ │ │ └── AzureMonitorDataQuery_types.gen.ts │ │ │ │ ├── barchart │ │ │ │ │ └── panelcfg │ │ │ │ │ │ └── x │ │ │ │ │ │ └── BarChartPanelCfg_types.gen.ts │ │ │ │ ├── bargauge │ │ │ │ │ └── panelcfg │ │ │ │ │ │ └── x │ │ │ │ │ │ └── BarGaugePanelCfg_types.gen.ts │ │ │ │ ├── candlestick │ │ │ │ │ └── panelcfg │ │ │ │ │ │ └── x │ │ │ │ │ │ └── CandlestickPanelCfg_types.gen.ts │ │ │ │ ├── canvas │ │ │ │ │ └── panelcfg │ │ │ │ │ │ └── x │ │ │ │ │ │ └── CanvasPanelCfg_types.gen.ts │ │ │ │ ├── cloudwatch │ │ │ │ │ └── dataquery │ │ │ │ │ │ └── x │ │ │ │ │ │ └── CloudWatchDataQuery_types.gen.ts │ │ │ │ ├── dashboardlist │ │ │ │ │ └── panelcfg │ │ │ │ │ │ └── x │ │ │ │ │ │ └── DashboardListPanelCfg_types.gen.ts │ │ │ │ ├── datagrid │ │ │ │ │ └── panelcfg │ │ │ │ │ │ └── x │ │ │ │ │ │ └── DatagridPanelCfg_types.gen.ts │ │ │ │ ├── debug │ │ │ │ │ └── panelcfg │ │ │ │ │ │ └── x │ │ │ │ │ │ └── DebugPanelCfg_types.gen.ts │ │ │ │ ├── elasticsearch │ │ │ │ │ └── dataquery │ │ │ │ │ │ └── x │ │ │ │ │ │ └── ElasticsearchDataQuery_types.gen.ts │ │ │ │ ├── gauge │ │ │ │ │ └── panelcfg │ │ │ │ │ │ └── x │ │ │ │ │ │ └── GaugePanelCfg_types.gen.ts │ │ │ │ ├── geomap │ │ │ │ │ └── panelcfg │ │ │ │ │ │ └── x │ │ │ │ │ │ └── GeomapPanelCfg_types.gen.ts │ │ │ │ ├── googlecloudmonitoring │ │ │ │ │ └── dataquery │ │ │ │ │ │ └── x │ │ │ │ │ │ └── GoogleCloudMonitoringDataQuery_types.gen.ts │ │ │ │ ├── grafanapyroscope │ │ │ │ │ └── dataquery │ │ │ │ │ │ └── x │ │ │ │ │ │ └── GrafanaPyroscopeDataQuery_types.gen.ts │ │ │ │ ├── heatmap │ │ │ │ │ └── panelcfg │ │ │ │ │ │ └── x │ │ │ │ │ │ └── HeatmapPanelCfg_types.gen.ts │ │ │ │ ├── histogram │ │ │ │ │ └── panelcfg │ │ │ │ │ │ └── x │ │ │ │ │ │ └── HistogramPanelCfg_types.gen.ts │ │ │ │ ├── logs │ │ │ │ │ └── panelcfg │ │ │ │ │ │ └── x │ │ │ │ │ │ └── LogsPanelCfg_types.gen.ts │ │ │ │ ├── loki │ │ │ │ │ └── dataquery │ │ │ │ │ │ └── x │ │ │ │ │ │ └── LokiDataQuery_types.gen.ts │ │ │ │ ├── news │ │ │ │ │ └── panelcfg │ │ │ │ │ │ └── x │ │ │ │ │ │ └── NewsPanelCfg_types.gen.ts │ │ │ │ ├── nodegraph │ │ │ │ │ └── panelcfg │ │ │ │ │ │ └── x │ │ │ │ │ │ └── NodeGraphPanelCfg_types.gen.ts │ │ │ │ ├── parca │ │ │ │ │ └── dataquery │ │ │ │ │ │ └── x │ │ │ │ │ │ └── ParcaDataQuery_types.gen.ts │ │ │ │ ├── piechart │ │ │ │ │ └── panelcfg │ │ │ │ │ │ └── x │ │ │ │ │ │ └── PieChartPanelCfg_types.gen.ts │ │ │ │ ├── stat │ │ │ │ │ └── panelcfg │ │ │ │ │ │ └── x │ │ │ │ │ │ └── StatPanelCfg_types.gen.ts │ │ │ │ ├── statetimeline │ │ │ │ │ └── panelcfg │ │ │ │ │ │ └── x │ │ │ │ │ │ └── StateTimelinePanelCfg_types.gen.ts │ │ │ │ ├── statushistory │ │ │ │ │ └── panelcfg │ │ │ │ │ │ └── x │ │ │ │ │ │ └── StatusHistoryPanelCfg_types.gen.ts │ │ │ │ ├── table │ │ │ │ │ └── panelcfg │ │ │ │ │ │ └── x │ │ │ │ │ │ └── TablePanelCfg_types.gen.ts │ │ │ │ ├── tempo │ │ │ │ │ └── dataquery │ │ │ │ │ │ └── x │ │ │ │ │ │ └── TempoDataQuery_types.gen.ts │ │ │ │ ├── text │ │ │ │ │ └── panelcfg │ │ │ │ │ │ └── x │ │ │ │ │ │ └── TextPanelCfg_types.gen.ts │ │ │ │ ├── timeseries │ │ │ │ │ └── panelcfg │ │ │ │ │ │ └── x │ │ │ │ │ │ └── TimeSeriesPanelCfg_types.gen.ts │ │ │ │ ├── trend │ │ │ │ │ └── panelcfg │ │ │ │ │ │ └── x │ │ │ │ │ │ └── TrendPanelCfg_types.gen.ts │ │ │ │ ├── xychart │ │ │ │ │ └── panelcfg │ │ │ │ │ │ └── x │ │ │ │ │ │ └── XYChartPanelCfg_types.gen.ts │ │ │ │ └── xychart2 │ │ │ │ │ └── panelcfg │ │ │ │ │ └── x │ │ │ │ │ └── XYChartPanelCfg_types.gen.ts │ │ │ ├── dashboard │ │ │ │ └── x │ │ │ │ │ └── dashboard_types.gen.ts │ │ │ ├── librarypanel │ │ │ │ └── x │ │ │ │ │ └── librarypanel_types.gen.ts │ │ │ ├── preferences │ │ │ │ └── x │ │ │ │ │ └── preferences_types.gen.ts │ │ │ ├── publicdashboard │ │ │ │ └── x │ │ │ │ │ └── publicdashboard_types.gen.ts │ │ │ ├── role │ │ │ │ └── x │ │ │ │ │ └── role_types.gen.ts │ │ │ ├── rolebinding │ │ │ │ └── x │ │ │ │ │ └── rolebinding_types.gen.ts │ │ │ └── team │ │ │ │ └── x │ │ │ │ └── team_types.gen.ts │ │ └── veneer │ │ │ ├── common.types.ts │ │ │ ├── dashboard.types.ts │ │ │ └── librarypanel.types.ts │ ├── tsconfig.build.json │ └── tsconfig.json ├── grafana-sql │ ├── package.json │ ├── src │ │ ├── ResponseParser.test.ts │ │ ├── ResponseParser.ts │ │ ├── components │ │ │ ├── ConfirmModal.tsx │ │ │ ├── DatasetSelector.tsx │ │ │ ├── ErrorBoundary.tsx │ │ │ ├── QueryEditor.tsx │ │ │ ├── QueryEditorFeatureFlag.utils.ts │ │ │ ├── QueryHeader.tsx │ │ │ ├── SqlComponents.test.tsx │ │ │ ├── SqlComponents.testHelpers.ts │ │ │ ├── TableSelector.tsx │ │ │ ├── configuration │ │ │ │ ├── ConnectionLimits.tsx │ │ │ │ ├── Divider.tsx │ │ │ │ ├── NumberInput.tsx │ │ │ │ ├── TLSSecretsConfig.tsx │ │ │ │ ├── useMigrateDatabaseFields.test.ts │ │ │ │ └── useMigrateDatabaseFields.ts │ │ │ ├── index.ts │ │ │ ├── query-editor-raw │ │ │ │ ├── QueryEditorRaw.tsx │ │ │ │ ├── QueryToolbox.tsx │ │ │ │ ├── QueryValidator.tsx │ │ │ │ ├── README.md │ │ │ │ └── RawEditor.tsx │ │ │ └── visual-query-builder │ │ │ │ ├── AwesomeQueryBuilder.tsx │ │ │ │ ├── GroupByRow.tsx │ │ │ │ ├── OrderByRow.tsx │ │ │ │ ├── Preview.tsx │ │ │ │ ├── SQLGroupByRow.tsx │ │ │ │ ├── SQLOrderByRow.tsx │ │ │ │ ├── SQLSelectRow.tsx │ │ │ │ ├── SQLWhereRow.tsx │ │ │ │ ├── SelectRow.tsx │ │ │ │ ├── VisualEditor.tsx │ │ │ │ ├── WhereRow.tsx │ │ │ │ └── index.ts │ │ ├── constants.ts │ │ ├── datasource │ │ │ └── SqlDatasource.ts │ │ ├── defaults.ts │ │ ├── expressions.ts │ │ ├── index.ts │ │ ├── types.ts │ │ └── utils │ │ │ ├── formatSQL.ts │ │ │ ├── logging.ts │ │ │ ├── migration.test.ts │ │ │ ├── migration.ts │ │ │ ├── sql.utils.ts │ │ │ ├── testHelpers.ts │ │ │ └── useSqlChange.ts │ └── tsconfig.json └── grafana-ui │ ├── .eslintrc │ ├── .storybook │ ├── grafana.dark.scss │ ├── grafana.light.scss │ ├── main.ts │ ├── manager-head.html │ ├── manager.ts │ ├── preview.ts │ ├── storybookTheme.ts │ └── tsconfig.json │ ├── CHANGELOG.md │ ├── LICENSE_APACHE2 │ ├── README.md │ ├── package.json │ ├── rollup.config.ts │ ├── src │ ├── Intro.mdx │ ├── components │ │ ├── Alert │ │ │ ├── Alert.mdx │ │ │ ├── Alert.test.tsx │ │ │ ├── Alert.tsx │ │ │ ├── InlineBanner.story.tsx │ │ │ └── Toast.story.tsx │ │ ├── AutoSaveField │ │ │ ├── AutoSaveField.mdx │ │ │ ├── AutoSaveField.story.tsx │ │ │ ├── AutoSaveField.test.tsx │ │ │ ├── AutoSaveField.tsx │ │ │ └── EllipsisAnimated.tsx │ │ ├── Badge │ │ │ ├── Badge.mdx │ │ │ ├── Badge.story.tsx │ │ │ └── Badge.tsx │ │ ├── BarGauge │ │ │ ├── BarGauge.mdx │ │ │ ├── BarGauge.story.tsx │ │ │ ├── BarGauge.test.tsx │ │ │ └── BarGauge.tsx │ │ ├── BigValue │ │ │ ├── BigValue.mdx │ │ │ ├── BigValue.story.tsx │ │ │ ├── BigValue.test.tsx │ │ │ ├── BigValue.tsx │ │ │ ├── BigValueLayout.test.tsx │ │ │ ├── BigValueLayout.tsx │ │ │ └── PercentChange.tsx │ │ ├── BrowserLabel │ │ │ └── Label.tsx │ │ ├── Button │ │ │ ├── Button.mdx │ │ │ ├── Button.story.tsx │ │ │ ├── Button.test.tsx │ │ │ ├── Button.tsx │ │ │ ├── ButtonGroup.tsx │ │ │ ├── FullWidthButtonContainer.tsx │ │ │ └── index.ts │ │ ├── ButtonCascader │ │ │ ├── ButtonCascader.story.tsx │ │ │ └── ButtonCascader.tsx │ │ ├── CallToActionCard │ │ │ ├── CallToActionCard.internal.story.tsx │ │ │ ├── CallToActionCard.test.tsx │ │ │ └── CallToActionCard.tsx │ │ ├── Card │ │ │ ├── Card.story.tsx │ │ │ ├── Card.test.tsx │ │ │ ├── Card.tsx │ │ │ └── CardContainer.tsx │ │ ├── Cascader │ │ │ ├── Cascader.mdx │ │ │ ├── Cascader.story.tsx │ │ │ ├── Cascader.test.tsx │ │ │ ├── Cascader.tsx │ │ │ ├── optionMappings.ts │ │ │ └── styles.ts │ │ ├── ClickOutsideWrapper │ │ │ ├── ClickOutsideWrapper.mdx │ │ │ ├── ClickOutsideWrapper.story.tsx │ │ │ └── ClickOutsideWrapper.tsx │ │ ├── ClipboardButton │ │ │ ├── ClipboardButton.internal.story.tsx │ │ │ ├── ClipboardButton.mdx │ │ │ └── ClipboardButton.tsx │ │ ├── Collapse │ │ │ ├── CollapsableSection.mdx │ │ │ ├── CollapsableSection.story.tsx │ │ │ ├── CollapsableSection.tsx │ │ │ ├── Collapse.mdx │ │ │ ├── Collapse.story.tsx │ │ │ └── Collapse.tsx │ │ ├── ColorPicker │ │ │ ├── ColorInput.tsx │ │ │ ├── ColorPicker.mdx │ │ │ ├── ColorPicker.story.tsx │ │ │ ├── ColorPicker.test.tsx │ │ │ ├── ColorPicker.tsx │ │ │ ├── ColorPickerInput.test.tsx │ │ │ ├── ColorPickerInput.tsx │ │ │ ├── ColorPickerPopover.story.tsx │ │ │ ├── ColorPickerPopover.test.tsx │ │ │ ├── ColorPickerPopover.tsx │ │ │ ├── ColorSwatch.tsx │ │ │ ├── NamedColorsGroup.tsx │ │ │ ├── NamedColorsPalette.test.tsx │ │ │ ├── NamedColorsPalette.tsx │ │ │ ├── Palettes.story.tsx │ │ │ ├── SeriesColorPickerPopover.tsx │ │ │ └── SpectrumPalette.tsx │ │ ├── ConfirmButton │ │ │ ├── ConfirmButton.mdx │ │ │ ├── ConfirmButton.story.tsx │ │ │ ├── ConfirmButton.test.tsx │ │ │ ├── ConfirmButton.tsx │ │ │ └── DeleteButton.tsx │ │ ├── ConfirmModal │ │ │ ├── ConfirmModal.mdx │ │ │ ├── ConfirmModal.story.tsx │ │ │ ├── ConfirmModal.test.tsx │ │ │ └── ConfirmModal.tsx │ │ ├── ContextMenu │ │ │ ├── ContextMenu.mdx │ │ │ ├── ContextMenu.story.tsx │ │ │ ├── ContextMenu.tsx │ │ │ ├── ContextMenuStoryHelper.tsx │ │ │ └── WithContextMenu.tsx │ │ ├── CustomScrollbar │ │ │ ├── CustomScrollbar.test.tsx │ │ │ ├── CustomScrollbar.tsx │ │ │ ├── ScrollIndicators.tsx │ │ │ └── __snapshots__ │ │ │ │ └── CustomScrollbar.test.tsx.snap │ │ ├── DataLinks │ │ │ ├── DataLinkButton.tsx │ │ │ ├── DataLinkEditor.tsx │ │ │ ├── DataLinkInput.tsx │ │ │ ├── DataLinkSuggestions.tsx │ │ │ ├── DataLinksContextMenu.test.tsx │ │ │ ├── DataLinksContextMenu.tsx │ │ │ ├── DataLinksInlineEditor │ │ │ │ ├── DataLinkEditorModalContent.tsx │ │ │ │ ├── DataLinksInlineEditor.tsx │ │ │ │ ├── DataLinksListItem.test.tsx │ │ │ │ └── DataLinksListItem.tsx │ │ │ ├── FieldLinkList.tsx │ │ │ └── SelectionReference.ts │ │ ├── DataSourceSettings │ │ │ ├── AlertingSettings.test.tsx │ │ │ ├── AlertingSettings.tsx │ │ │ ├── BasicAuthSettings.tsx │ │ │ ├── CertificationKey.tsx │ │ │ ├── CustomHeadersSettings.test.tsx │ │ │ ├── CustomHeadersSettings.tsx │ │ │ ├── DataSourceHttpSettings.mdx │ │ │ ├── DataSourceHttpSettings.story.tsx │ │ │ ├── DataSourceHttpSettings.test.tsx │ │ │ ├── DataSourceHttpSettings.tsx │ │ │ ├── HttpProxySettings.tsx │ │ │ ├── SecureSocksProxySettings.tsx │ │ │ ├── TLSAuthSettings.tsx │ │ │ └── types.ts │ │ ├── DateTimePickers │ │ │ ├── DatePicker │ │ │ │ ├── DatePicker.mdx │ │ │ │ ├── DatePicker.story.tsx │ │ │ │ ├── DatePicker.test.tsx │ │ │ │ └── DatePicker.tsx │ │ │ ├── DatePickerWithInput │ │ │ │ ├── DatePickerWithInput.mdx │ │ │ │ ├── DatePickerWithInput.story.tsx │ │ │ │ ├── DatePickerWithInput.test.tsx │ │ │ │ └── DatePickerWithInput.tsx │ │ │ ├── DateTimePicker │ │ │ │ ├── DateTimePicker.mdx │ │ │ │ ├── DateTimePicker.story.tsx │ │ │ │ ├── DateTimePicker.test.tsx │ │ │ │ └── DateTimePicker.tsx │ │ │ ├── RelativeTimeRangePicker │ │ │ │ ├── RelativeTimeRangePicker.story.tsx │ │ │ │ ├── RelativeTimeRangePicker.test.tsx │ │ │ │ ├── RelativeTimeRangePicker.tsx │ │ │ │ ├── utils.test.ts │ │ │ │ └── utils.ts │ │ │ ├── TimeOfDayPicker.story.tsx │ │ │ ├── TimeOfDayPicker.tsx │ │ │ ├── TimeRangeInput.mdx │ │ │ ├── TimeRangeInput.story.tsx │ │ │ ├── TimeRangeInput.tsx │ │ │ ├── TimeRangePicker.story.tsx │ │ │ ├── TimeRangePicker.test.tsx │ │ │ ├── TimeRangePicker.tsx │ │ │ ├── TimeRangePicker │ │ │ │ ├── CalendarBody.tsx │ │ │ │ ├── CalendarFooter.tsx │ │ │ │ ├── CalendarHeader.tsx │ │ │ │ ├── TimePickerCalendar.test.tsx │ │ │ │ ├── TimePickerCalendar.tsx │ │ │ │ ├── TimePickerContent.test.tsx │ │ │ │ ├── TimePickerContent.tsx │ │ │ │ ├── TimePickerFooter.tsx │ │ │ │ ├── TimePickerTitle.tsx │ │ │ │ ├── TimeRangeContent.test.tsx │ │ │ │ ├── TimeRangeContent.tsx │ │ │ │ ├── TimeRangeLabel.tsx │ │ │ │ ├── TimeRangeList.tsx │ │ │ │ ├── TimeRangeOption.tsx │ │ │ │ ├── hooks.test.tsx │ │ │ │ ├── hooks.ts │ │ │ │ └── mapper.ts │ │ │ ├── TimeZonePicker.story.tsx │ │ │ ├── TimeZonePicker.tsx │ │ │ ├── TimeZonePicker │ │ │ │ ├── TimeZoneDescription.tsx │ │ │ │ ├── TimeZoneGroup.tsx │ │ │ │ ├── TimeZoneOffset.tsx │ │ │ │ ├── TimeZoneOption.tsx │ │ │ │ └── TimeZoneTitle.tsx │ │ │ ├── WeekStartPicker.story.tsx │ │ │ ├── WeekStartPicker.tsx │ │ │ ├── options.ts │ │ │ ├── utils.ts │ │ │ └── utils │ │ │ │ └── adjustDateForReactCalendar.ts │ │ ├── Divider │ │ │ ├── Divider.mdx │ │ │ ├── Divider.story.tsx │ │ │ └── Divider.tsx │ │ ├── DragHandle │ │ │ └── DragHandle.tsx │ │ ├── Drawer │ │ │ ├── Drawer.mdx │ │ │ ├── Drawer.story.tsx │ │ │ └── Drawer.tsx │ │ ├── Dropdown │ │ │ ├── ButtonSelect.internal.story.tsx │ │ │ ├── ButtonSelect.test.tsx │ │ │ ├── ButtonSelect.tsx │ │ │ ├── Dropdown.mdx │ │ │ ├── Dropdown.story.tsx │ │ │ ├── Dropdown.test.tsx │ │ │ └── Dropdown.tsx │ │ ├── EmptySearchResult │ │ │ ├── EmptySearchResult.mdx │ │ │ ├── EmptySearchResult.story.tsx │ │ │ └── EmptySearchResult.tsx │ │ ├── EmptyState │ │ │ ├── EmptyState.mdx │ │ │ ├── EmptyState.story.tsx │ │ │ ├── EmptyState.tsx │ │ │ ├── GrotCTA │ │ │ │ ├── GrotCTA.tsx │ │ │ │ └── grot-cta.svg │ │ │ ├── GrotNotFound │ │ │ │ ├── GrotNotFound.tsx │ │ │ │ └── grot-not-found.svg │ │ │ └── grot-completed.svg │ │ ├── ErrorBoundary │ │ │ ├── ErrorBoundary.mdx │ │ │ ├── ErrorBoundary.story.tsx │ │ │ ├── ErrorBoundary.test.tsx │ │ │ ├── ErrorBoundary.tsx │ │ │ └── ErrorWithStack.tsx │ │ ├── FeatureBadge │ │ │ ├── FeatureBadge.mdx │ │ │ ├── FeatureBadge.story.tsx │ │ │ └── FeatureBadge.tsx │ │ ├── FileDropzone │ │ │ ├── FileDropzone.mdx │ │ │ ├── FileDropzone.story.tsx │ │ │ ├── FileDropzone.test.tsx │ │ │ ├── FileDropzone.tsx │ │ │ ├── FileListItem.mdx │ │ │ ├── FileListItem.story.tsx │ │ │ ├── FileListItem.test.tsx │ │ │ ├── FileListItem.tsx │ │ │ └── index.ts │ │ ├── FileUpload │ │ │ ├── FileUpload.mdx │ │ │ ├── FileUpload.story.tsx │ │ │ ├── FileUpload.test.tsx │ │ │ └── FileUpload.tsx │ │ ├── FilterInput │ │ │ └── FilterInput.tsx │ │ ├── FilterPill │ │ │ ├── FilterPill.mdx │ │ │ ├── FilterPill.story.tsx │ │ │ └── FilterPill.tsx │ │ ├── FormField │ │ │ ├── FormField.internal.story.tsx │ │ │ ├── FormField.test.tsx │ │ │ └── FormField.tsx │ │ ├── FormLabel │ │ │ └── FormLabel.tsx │ │ ├── FormattedValueDisplay │ │ │ ├── FormattedValueDisplay.mdx │ │ │ ├── FormattedValueDisplay.story.tsx │ │ │ └── FormattedValueDisplay.tsx │ │ ├── Forms │ │ │ ├── Checkbox.mdx │ │ │ ├── Checkbox.story.tsx │ │ │ ├── Checkbox.tsx │ │ │ ├── Field.mdx │ │ │ ├── Field.story.tsx │ │ │ ├── Field.test.tsx │ │ │ ├── Field.tsx │ │ │ ├── FieldArray.mdx │ │ │ ├── FieldArray.story.tsx │ │ │ ├── FieldArray.tsx │ │ │ ├── FieldSet.mdx │ │ │ ├── FieldSet.story.tsx │ │ │ ├── FieldSet.tsx │ │ │ ├── FieldValidationMessage.mdx │ │ │ ├── FieldValidationMessage.story.tsx │ │ │ ├── FieldValidationMessage.tsx │ │ │ ├── Form.mdx │ │ │ ├── Form.story.tsx │ │ │ ├── Form.tsx │ │ │ ├── InlineField.mdx │ │ │ ├── InlineField.story.tsx │ │ │ ├── InlineField.test.tsx │ │ │ ├── InlineField.tsx │ │ │ ├── InlineFieldRow.mdx │ │ │ ├── InlineFieldRow.story.tsx │ │ │ ├── InlineFieldRow.tsx │ │ │ ├── InlineLabel.mdx │ │ │ ├── InlineLabel.story.tsx │ │ │ ├── InlineLabel.tsx │ │ │ ├── InlineSegmentGroup.tsx │ │ │ ├── Label.mdx │ │ │ ├── Label.story.tsx │ │ │ ├── Label.tsx │ │ │ ├── Legacy │ │ │ │ ├── Input │ │ │ │ │ ├── Input.internal.story.tsx │ │ │ │ │ ├── Input.test.tsx │ │ │ │ │ └── Input.tsx │ │ │ │ ├── Select │ │ │ │ │ ├── IndicatorsContainer.tsx │ │ │ │ │ ├── NoOptionsMessage.tsx │ │ │ │ │ ├── Select.internal.story.tsx │ │ │ │ │ ├── Select.tsx │ │ │ │ │ ├── SelectOption.test.tsx │ │ │ │ │ ├── SelectOption.tsx │ │ │ │ │ ├── SelectOptionGroup.tsx │ │ │ │ │ └── __snapshots__ │ │ │ │ │ │ └── SelectOption.test.tsx.snap │ │ │ │ └── Switch │ │ │ │ │ ├── Switch.internal.story.tsx │ │ │ │ │ └── Switch.tsx │ │ │ ├── Legend.mdx │ │ │ ├── Legend.story.tsx │ │ │ ├── Legend.tsx │ │ │ ├── RadioButtonGroup │ │ │ │ ├── RadioButton.tsx │ │ │ │ ├── RadioButtonGroup.mdx │ │ │ │ ├── RadioButtonGroup.story.tsx │ │ │ │ └── RadioButtonGroup.tsx │ │ │ ├── RadioButtonList │ │ │ │ ├── RadioButtonDot.tsx │ │ │ │ ├── RadioButtonList.mdx │ │ │ │ ├── RadioButtonList.story.tsx │ │ │ │ └── RadioButtonList.tsx │ │ │ ├── commonStyles.ts │ │ │ └── types.ts │ │ ├── Gauge │ │ │ ├── Gauge.test.tsx │ │ │ ├── Gauge.tsx │ │ │ ├── utils.test.ts │ │ │ └── utils.ts │ │ ├── Icon │ │ │ ├── Icon.mdx │ │ │ ├── Icon.story.tsx │ │ │ ├── Icon.tsx │ │ │ ├── utils.test.ts │ │ │ └── utils.ts │ │ ├── IconButton │ │ │ ├── IconButton.mdx │ │ │ ├── IconButton.story.tsx │ │ │ └── IconButton.tsx │ │ ├── InfoBox │ │ │ ├── FeatureInfoBox.tsx │ │ │ ├── InfoBox.mdx │ │ │ ├── InfoBox.story.tsx │ │ │ └── InfoBox.tsx │ │ ├── InfoTooltip │ │ │ ├── InfoTooltip.internal.story.tsx │ │ │ └── InfoTooltip.tsx │ │ ├── InlineToast │ │ │ ├── InlineToast.internal.story.tsx │ │ │ ├── InlineToast.mdx │ │ │ └── InlineToast.tsx │ │ ├── Input │ │ │ ├── AutoSizeInput.mdx │ │ │ ├── AutoSizeInput.story.tsx │ │ │ ├── AutoSizeInput.test.tsx │ │ │ ├── AutoSizeInput.tsx │ │ │ ├── Input.mdx │ │ │ ├── Input.story.tsx │ │ │ ├── Input.tsx │ │ │ ├── storyUtils.tsx │ │ │ └── utils.ts │ │ ├── InputControl.tsx │ │ ├── InteractiveTable │ │ │ ├── Expander │ │ │ │ └── index.tsx │ │ │ ├── InteractiveTable.mdx │ │ │ ├── InteractiveTable.story.tsx │ │ │ ├── InteractiveTable.test.tsx │ │ │ ├── InteractiveTable.tsx │ │ │ ├── types.ts │ │ │ └── utils.ts │ │ ├── JSONFormatter │ │ │ ├── JSONFormatter.tsx │ │ │ └── json_explorer │ │ │ │ ├── helpers.test.ts │ │ │ │ ├── helpers.ts │ │ │ │ └── json_explorer.ts │ │ ├── Layout │ │ │ ├── Box │ │ │ │ ├── Box.mdx │ │ │ │ ├── Box.story.tsx │ │ │ │ └── Box.tsx │ │ │ ├── Grid │ │ │ │ ├── Grid.mdx │ │ │ │ ├── Grid.story.tsx │ │ │ │ └── Grid.tsx │ │ │ ├── Layout.mdx │ │ │ ├── Layout.story.tsx │ │ │ ├── Layout.tsx │ │ │ ├── Space.mdx │ │ │ ├── Space.story.tsx │ │ │ ├── Space.tsx │ │ │ ├── Stack │ │ │ │ ├── Stack.mdx │ │ │ │ ├── Stack.story.tsx │ │ │ │ └── Stack.tsx │ │ │ ├── types.ts │ │ │ └── utils │ │ │ │ ├── responsiveness.tsx │ │ │ │ └── styles.ts │ │ ├── Link │ │ │ ├── Link.tsx │ │ │ ├── TextLink.mdx │ │ │ ├── TextLink.story.tsx │ │ │ ├── TextLink.test.tsx │ │ │ └── TextLink.tsx │ │ ├── List │ │ │ ├── AbstractList.test.tsx │ │ │ ├── AbstractList.tsx │ │ │ ├── InlineList.tsx │ │ │ ├── List.internal.story.tsx │ │ │ └── List.tsx │ │ ├── LoadingBar │ │ │ ├── LoadingBar.mdx │ │ │ ├── LoadingBar.story.tsx │ │ │ └── LoadingBar.tsx │ │ ├── LoadingPlaceholder │ │ │ ├── LoadingPlaceholder.mdx │ │ │ ├── LoadingPlaceholder.story.tsx │ │ │ └── LoadingPlaceholder.tsx │ │ ├── MatchersUI │ │ │ ├── FieldNameByRegexMatcherEditor.tsx │ │ │ ├── FieldNameMatcherEditor.tsx │ │ │ ├── FieldNamePicker.tsx │ │ │ ├── FieldNamesMatcherEditor.tsx │ │ │ ├── FieldTypeMatcherEditor.tsx │ │ │ ├── FieldValueMatcher.tsx │ │ │ ├── FieldsByFrameRefIdMatcher.test.tsx │ │ │ ├── FieldsByFrameRefIdMatcher.tsx │ │ │ ├── fieldMatchersUI.ts │ │ │ ├── types.ts │ │ │ └── utils.ts │ │ ├── Menu │ │ │ ├── Menu.mdx │ │ │ ├── Menu.story.tsx │ │ │ ├── Menu.test.tsx │ │ │ ├── Menu.tsx │ │ │ ├── MenuDivider.tsx │ │ │ ├── MenuGroup.tsx │ │ │ ├── MenuItem.test.tsx │ │ │ ├── MenuItem.tsx │ │ │ ├── SubMenu.test.tsx │ │ │ ├── SubMenu.tsx │ │ │ ├── hooks.test.tsx │ │ │ ├── hooks.ts │ │ │ ├── utils.test.ts │ │ │ └── utils.ts │ │ ├── Modal │ │ │ ├── Modal.mdx │ │ │ ├── Modal.story.tsx │ │ │ ├── Modal.test.tsx │ │ │ ├── Modal.tsx │ │ │ ├── ModalHeader.tsx │ │ │ ├── ModalTabContent.tsx │ │ │ ├── ModalTabsHeader.tsx │ │ │ ├── ModalsContext.tsx │ │ │ └── getModalStyles.ts │ │ ├── Monaco │ │ │ ├── CodeEditor.internal.story.tsx │ │ │ ├── CodeEditor.mdx │ │ │ ├── CodeEditor.tsx │ │ │ ├── ReactMonacoEditor.tsx │ │ │ ├── ReactMonacoEditorLazy.tsx │ │ │ ├── suggestions.test.ts │ │ │ ├── suggestions.ts │ │ │ ├── theme.ts │ │ │ ├── types.ts │ │ │ └── utils.ts │ │ ├── PageLayout │ │ │ ├── PageToolbar.story.tsx │ │ │ ├── PageToolbar.test.tsx │ │ │ └── PageToolbar.tsx │ │ ├── Pagination │ │ │ ├── Pagination.mdx │ │ │ ├── Pagination.story.tsx │ │ │ ├── Pagination.test.tsx │ │ │ └── Pagination.tsx │ │ ├── PanelChrome │ │ │ ├── HoverWidget.tsx │ │ │ ├── LoadingIndicator.tsx │ │ │ ├── PanelChrome.mdx │ │ │ ├── PanelChrome.story.tsx │ │ │ ├── PanelChrome.test.tsx │ │ │ ├── PanelChrome.tsx │ │ │ ├── PanelContext.ts │ │ │ ├── PanelDescription.tsx │ │ │ ├── PanelMenu.tsx │ │ │ ├── PanelStatus.tsx │ │ │ ├── TitleItem.tsx │ │ │ ├── index.ts │ │ │ └── types.ts │ │ ├── PanelContainer │ │ │ ├── PanelContainer.mdx │ │ │ ├── PanelContainer.story.tsx │ │ │ └── PanelContainer.tsx │ │ ├── PluginSignatureBadge │ │ │ ├── PluginSignatureBadge.mdx │ │ │ ├── PluginSignatureBadge.story.tsx │ │ │ └── PluginSignatureBadge.tsx │ │ ├── Portal │ │ │ └── Portal.tsx │ │ ├── QueryField │ │ │ ├── QueryField.story.tsx │ │ │ ├── QueryField.test.tsx │ │ │ └── QueryField.tsx │ │ ├── RefreshPicker │ │ │ ├── RefreshPicker.mdx │ │ │ ├── RefreshPicker.story.tsx │ │ │ ├── RefreshPicker.test.tsx │ │ │ └── RefreshPicker.tsx │ │ ├── RenderUserContentAsHTML │ │ │ ├── RenderUserContentAsHTML.mdx │ │ │ ├── RenderUserContentAsHTML.story.tsx │ │ │ ├── RenderUserContentAsHTML.test.tsx │ │ │ └── RenderUserContentAsHTML.tsx │ │ ├── SecretFormField │ │ │ ├── SecretFormField.internal.story.tsx │ │ │ └── SecretFormField.tsx │ │ ├── SecretInput │ │ │ ├── SecretInput.mdx │ │ │ ├── SecretInput.story.tsx │ │ │ ├── SecretInput.test.tsx │ │ │ ├── SecretInput.tsx │ │ │ └── index.tsx │ │ ├── SecretTextArea │ │ │ ├── SecretTextArea.story.tsx │ │ │ ├── SecretTextArea.test.tsx │ │ │ ├── SecretTextArea.tsx │ │ │ └── index.tsx │ │ ├── Segment │ │ │ ├── Segment.story.tsx │ │ │ ├── Segment.tsx │ │ │ ├── SegmentAsync.story.tsx │ │ │ ├── SegmentAsync.tsx │ │ │ ├── SegmentInput.story.tsx │ │ │ ├── SegmentInput.tsx │ │ │ ├── SegmentSection.tsx │ │ │ ├── SegmentSelect.tsx │ │ │ ├── index.ts │ │ │ ├── styles.ts │ │ │ ├── types.ts │ │ │ └── useExpandableLabel.tsx │ │ ├── Select │ │ │ ├── CustomInput.tsx │ │ │ ├── DropdownIndicator.tsx │ │ │ ├── IndicatorsContainer.tsx │ │ │ ├── InputControl.tsx │ │ │ ├── MultiValue.tsx │ │ │ ├── Select.mdx │ │ │ ├── Select.story.tsx │ │ │ ├── Select.tsx │ │ │ ├── SelectBase.test.tsx │ │ │ ├── SelectBase.tsx │ │ │ ├── SelectContainer.tsx │ │ │ ├── SelectMenu.tsx │ │ │ ├── SelectOptionGroupHeader.tsx │ │ │ ├── SelectPerf.internal.story.tsx │ │ │ ├── SingleValue.tsx │ │ │ ├── ValueContainer.tsx │ │ │ ├── getSelectStyles.ts │ │ │ ├── mockOptions.tsx │ │ │ ├── resetSelectStyles.ts │ │ │ ├── types.ts │ │ │ ├── utils.test.ts │ │ │ └── utils.ts │ │ ├── SetInterval │ │ │ └── SetInterval.tsx │ │ ├── SingleStatShared │ │ │ ├── SingleStatBaseOptions.test.ts │ │ │ ├── SingleStatBaseOptions.ts │ │ │ └── index.ts │ │ ├── Slider │ │ │ ├── HandleTooltip.tsx │ │ │ ├── RangeSlider.mdx │ │ │ ├── RangeSlider.story.tsx │ │ │ ├── RangeSlider.test.tsx │ │ │ ├── RangeSlider.tsx │ │ │ ├── Slider.mdx │ │ │ ├── Slider.story.tsx │ │ │ ├── Slider.test.tsx │ │ │ ├── Slider.tsx │ │ │ ├── styles.ts │ │ │ └── types.ts │ │ ├── Sparkline │ │ │ ├── Sparkline.tsx │ │ │ ├── utils.test.ts │ │ │ └── utils.ts │ │ ├── Spinner │ │ │ ├── Spinner.mdx │ │ │ ├── Spinner.story.tsx │ │ │ └── Spinner.tsx │ │ ├── Splitter │ │ │ ├── useSplitter.mdx │ │ │ ├── useSplitter.story.tsx │ │ │ └── useSplitter.ts │ │ ├── StatsPicker │ │ │ ├── StatsPicker.story.tsx │ │ │ └── StatsPicker.tsx │ │ ├── Switch │ │ │ ├── Switch.mdx │ │ │ ├── Switch.story.tsx │ │ │ └── Switch.tsx │ │ ├── TabbedContainer │ │ │ └── TabbedContainer.tsx │ │ ├── Table │ │ │ ├── BarGaugeCell.tsx │ │ │ ├── CellActions.tsx │ │ │ ├── DataLinksCell.tsx │ │ │ ├── DefaultCell.tsx │ │ │ ├── ExpandedRow.tsx │ │ │ ├── Filter.tsx │ │ │ ├── FilterList.tsx │ │ │ ├── FilterPopup.tsx │ │ │ ├── FooterCell.tsx │ │ │ ├── FooterRow.tsx │ │ │ ├── GeoCell.tsx │ │ │ ├── HeaderRow.tsx │ │ │ ├── ImageCell.tsx │ │ │ ├── JSONViewCell.tsx │ │ │ ├── RowExpander.tsx │ │ │ ├── RowsList.tsx │ │ │ ├── SparklineCell.tsx │ │ │ ├── Table.mdx │ │ │ ├── Table.story.tsx │ │ │ ├── Table.test.tsx │ │ │ ├── Table.tsx │ │ │ ├── TableCell.tsx │ │ │ ├── TableCellInspectModal.tsx │ │ │ ├── hooks.ts │ │ │ ├── reducer.ts │ │ │ ├── styles.ts │ │ │ ├── types.ts │ │ │ ├── utils.test.ts │ │ │ └── utils.ts │ │ ├── TableInputCSV │ │ │ ├── TableInputCSV.internal.story.tsx │ │ │ ├── TableInputCSV.test.tsx │ │ │ └── TableInputCSV.tsx │ │ ├── Tabs │ │ │ ├── Counter.tsx │ │ │ ├── Tab.tsx │ │ │ ├── TabContent.tsx │ │ │ ├── Tabs.story.tsx │ │ │ ├── TabsBar.mdx │ │ │ ├── TabsBar.tsx │ │ │ ├── VerticalTab.tsx │ │ │ └── index.ts │ │ ├── Tags │ │ │ ├── Tag.mdx │ │ │ ├── Tag.story.tsx │ │ │ ├── Tag.tsx │ │ │ ├── TagList.mdx │ │ │ ├── TagList.story.tsx │ │ │ └── TagList.tsx │ │ ├── TagsInput │ │ │ ├── TagItem.tsx │ │ │ ├── TagsInput.mdx │ │ │ ├── TagsInput.story.tsx │ │ │ ├── TagsInput.test.tsx │ │ │ └── TagsInput.tsx │ │ ├── Text │ │ │ ├── Text.mdx │ │ │ ├── Text.story.tsx │ │ │ ├── Text.test.tsx │ │ │ ├── Text.tsx │ │ │ ├── TruncatedText.tsx │ │ │ ├── Typography.internal.story.tsx │ │ │ └── utils.ts │ │ ├── TextArea │ │ │ ├── TextArea.mdx │ │ │ ├── TextArea.story.tsx │ │ │ └── TextArea.tsx │ │ ├── ThemeDemos │ │ │ ├── EmotionPerfTest.tsx │ │ │ ├── ThemeDemo.story.tsx │ │ │ └── ThemeDemo.tsx │ │ ├── Toggletip │ │ │ ├── Toggletip.mdx │ │ │ ├── Toggletip.story.tsx │ │ │ ├── Toggletip.test.tsx │ │ │ ├── Toggletip.tsx │ │ │ ├── index.ts │ │ │ └── types.ts │ │ ├── ToolbarButton │ │ │ ├── ToolbarButton.mdx │ │ │ ├── ToolbarButton.story.tsx │ │ │ ├── ToolbarButton.tsx │ │ │ ├── ToolbarButtonRow.mdx │ │ │ ├── ToolbarButtonRow.story.tsx │ │ │ ├── ToolbarButtonRow.tsx │ │ │ └── index.ts │ │ ├── Tooltip │ │ │ ├── Popover.tsx │ │ │ ├── PopoverController.tsx │ │ │ ├── Tooltip.mdx │ │ │ ├── Tooltip.story.tsx │ │ │ ├── Tooltip.test.tsx │ │ │ ├── Tooltip.tsx │ │ │ ├── index.ts │ │ │ └── types.ts │ │ ├── Typeahead │ │ │ ├── PartialHighlighter.test.tsx │ │ │ ├── PartialHighlighter.tsx │ │ │ ├── Typeahead.test.tsx │ │ │ ├── Typeahead.tsx │ │ │ ├── TypeaheadInfo.test.tsx │ │ │ ├── TypeaheadInfo.tsx │ │ │ └── TypeaheadItem.tsx │ │ ├── UnitPicker │ │ │ ├── UnitPicker.mdx │ │ │ ├── UnitPicker.story.tsx │ │ │ └── UnitPicker.tsx │ │ ├── UsersIndicator │ │ │ ├── Avatar.mdx │ │ │ ├── Avatar.story.tsx │ │ │ ├── Avatar.tsx │ │ │ ├── UserIcon.mdx │ │ │ ├── UserIcon.story.tsx │ │ │ ├── UserIcon.test.tsx │ │ │ ├── UserIcon.tsx │ │ │ ├── UsersIndicator.mdx │ │ │ ├── UsersIndicator.story.tsx │ │ │ ├── UsersIndicator.test.tsx │ │ │ ├── UsersIndicator.tsx │ │ │ └── types.ts │ │ ├── ValuePicker │ │ │ ├── ValuePicker.mdx │ │ │ ├── ValuePicker.story.tsx │ │ │ └── ValuePicker.tsx │ │ ├── VizLayout │ │ │ ├── VizLayout.story.tsx │ │ │ └── VizLayout.tsx │ │ ├── VizLegend │ │ │ ├── SeriesIcon.test.tsx │ │ │ ├── SeriesIcon.tsx │ │ │ ├── VizLegend.story.tsx │ │ │ ├── VizLegend.tsx │ │ │ ├── VizLegendList.tsx │ │ │ ├── VizLegendListItem.tsx │ │ │ ├── VizLegendSeriesIcon.tsx │ │ │ ├── VizLegendStatsList.tsx │ │ │ ├── VizLegendTable.tsx │ │ │ ├── VizLegendTableItem.tsx │ │ │ ├── types.ts │ │ │ └── utils.ts │ │ ├── VizRepeater │ │ │ └── VizRepeater.tsx │ │ ├── VizTooltip │ │ │ ├── SeriesTable.story.tsx │ │ │ ├── SeriesTable.tsx │ │ │ ├── VizTooltip.tsx │ │ │ ├── VizTooltipColorIndicator.tsx │ │ │ ├── VizTooltipContainer.tsx │ │ │ ├── VizTooltipContent.tsx │ │ │ ├── VizTooltipFooter.tsx │ │ │ ├── VizTooltipHeader.tsx │ │ │ ├── VizTooltipRow.tsx │ │ │ ├── index.tsx │ │ │ ├── types.ts │ │ │ ├── utils.test.ts │ │ │ └── utils.ts │ │ ├── index.ts │ │ ├── transitions │ │ │ ├── FadeTransition.tsx │ │ │ └── SlideOutTransition.tsx │ │ └── uPlot │ │ │ ├── Plot.test.tsx │ │ │ ├── Plot.tsx │ │ │ ├── PlotLegend.tsx │ │ │ ├── config.ts │ │ │ ├── config │ │ │ ├── UPlotAxisBuilder.ts │ │ │ ├── UPlotConfigBuilder.test.ts │ │ │ ├── UPlotConfigBuilder.ts │ │ │ ├── UPlotScaleBuilder.test.ts │ │ │ ├── UPlotScaleBuilder.ts │ │ │ ├── UPlotSeriesBuilder.ts │ │ │ ├── UPlotThresholds.ts │ │ │ └── gradientFills.ts │ │ │ ├── geometries │ │ │ ├── EventsCanvas.tsx │ │ │ ├── Marker.tsx │ │ │ ├── XYCanvas.tsx │ │ │ └── index.ts │ │ │ ├── internal.ts │ │ │ ├── plugins │ │ │ ├── CloseButton.tsx │ │ │ ├── EventBusPlugin.tsx │ │ │ ├── KeyboardPlugin.tsx │ │ │ ├── TooltipPlugin2.tsx │ │ │ └── index.ts │ │ │ ├── types.ts │ │ │ ├── utils.test.ts │ │ │ └── utils.ts │ ├── graveyard │ │ ├── Graph │ │ │ ├── Graph.test.tsx │ │ │ ├── Graph.tsx │ │ │ ├── GraphContextMenu.tsx │ │ │ ├── GraphSeriesToggler.tsx │ │ │ ├── GraphTooltip │ │ │ │ ├── GraphTooltip.tsx │ │ │ │ ├── MultiModeGraphTooltip.test.tsx │ │ │ │ ├── MultiModeGraphTooltip.tsx │ │ │ │ ├── SingleModeGraphTooltip.tsx │ │ │ │ └── types.ts │ │ │ ├── GraphWithLegend.internal.story.tsx │ │ │ ├── GraphWithLegend.tsx │ │ │ ├── types.ts │ │ │ ├── utils.test.ts │ │ │ └── utils.ts │ │ ├── GraphNG │ │ │ ├── GraphNG.tsx │ │ │ ├── __snapshots__ │ │ │ │ └── utils.test.ts.snap │ │ │ ├── hooks.ts │ │ │ ├── nullInsertThreshold.test.ts │ │ │ ├── nullInsertThreshold.ts │ │ │ ├── nullToUndefThreshold.ts │ │ │ ├── nullToValue.test.ts │ │ │ ├── nullToValue.ts │ │ │ ├── types.ts │ │ │ ├── utils.test.ts │ │ │ └── utils.ts │ │ ├── README.md │ │ ├── TimeSeries │ │ │ ├── TimeSeries.tsx │ │ │ ├── utils.test.ts │ │ │ └── utils.ts │ │ └── uPlot │ │ │ └── plugins │ │ │ ├── TooltipPlugin.tsx │ │ │ └── ZoomPlugin.tsx │ ├── index.ts │ ├── options │ │ ├── builder │ │ │ ├── axis.tsx │ │ │ ├── hideSeries.tsx │ │ │ ├── index.ts │ │ │ ├── legend.tsx │ │ │ ├── stacking.tsx │ │ │ ├── text.tsx │ │ │ └── tooltip.tsx │ │ └── index.ts │ ├── schema.ts │ ├── slate-plugins │ │ ├── braces.ts │ │ ├── clear.ts │ │ ├── clipboard.ts │ │ ├── indentation.ts │ │ ├── index.ts │ │ ├── newline.ts │ │ ├── runner.ts │ │ ├── selection_shortcuts.ts │ │ ├── slate-prism │ │ │ ├── TOKEN_MARK.ts │ │ │ ├── index.ts │ │ │ └── options.tsx │ │ ├── suggestions.test.tsx │ │ └── suggestions.tsx │ ├── themes │ │ ├── GlobalStyles │ │ │ ├── GlobalStyles.tsx │ │ │ ├── angularPanelStyles.ts │ │ │ ├── card.ts │ │ │ ├── elements.ts │ │ │ ├── extra.ts │ │ │ ├── forms.ts │ │ │ ├── legacySelect.ts │ │ │ ├── markdownStyles.ts │ │ │ ├── page.ts │ │ │ ├── rcTimePicker.ts │ │ │ ├── skeletonStyles.ts │ │ │ └── uPlot.ts │ │ ├── ThemeContext.test.tsx │ │ ├── ThemeContext.tsx │ │ ├── _variables.dark.scss.tmpl.ts │ │ ├── _variables.light.scss.tmpl.ts │ │ ├── _variables.scss.tmpl.ts │ │ ├── default.ts │ │ ├── getTheme.ts │ │ ├── index.ts │ │ ├── mixins.ts │ │ ├── selectThemeVariant.test.ts │ │ ├── selectThemeVariant.ts │ │ ├── stylesFactory.test.ts │ │ └── stylesFactory.ts │ ├── types │ │ ├── completion.ts │ │ ├── emotion-core-stub.d.ts │ │ ├── forms.ts │ │ ├── icon.ts │ │ ├── index.ts │ │ ├── input.ts │ │ ├── interactiveTable.ts │ │ ├── jquery.d.ts │ │ ├── mdx.d.ts │ │ ├── orientation.ts │ │ ├── react-table-config.d.ts │ │ ├── select.ts │ │ ├── size.ts │ │ └── theme.ts │ ├── unstable.ts │ └── utils │ │ ├── DelayRender.tsx │ │ ├── closePopover.ts │ │ ├── colors.ts │ │ ├── dataLinks.test.ts │ │ ├── dataLinks.ts │ │ ├── debug.ts │ │ ├── dom.ts │ │ ├── file.ts │ │ ├── fuzzy.test.ts │ │ ├── fuzzy.ts │ │ ├── generatedFileBanner.ts │ │ ├── i18n.tsx │ │ ├── index.ts │ │ ├── logger.ts │ │ ├── measureText.ts │ │ ├── nodeGraph.ts │ │ ├── reactUtils.ts │ │ ├── reverseMap.test.ts │ │ ├── reverseMap.ts │ │ ├── scrollbar.ts │ │ ├── searchFunctions.ts │ │ ├── skeleton.tsx │ │ ├── slate.ts │ │ ├── squares.ts │ │ ├── storybook │ │ ├── DashboardStoryCanvas.tsx │ │ ├── StoryExample.tsx │ │ ├── ThemedDocsContainer.tsx │ │ ├── data.ts │ │ ├── icons.ts │ │ ├── themeStorybookControls.tsx │ │ ├── withStoryContainer.tsx │ │ ├── withTheme.tsx │ │ └── withTimeZone.tsx │ │ ├── table.ts │ │ ├── tags.ts │ │ ├── tooltipUtils.ts │ │ ├── typeahead.ts │ │ ├── useAsyncDependency.ts │ │ ├── useCombinedRefs.ts │ │ ├── useComponetInstanceId.ts │ │ ├── useDelayedSwitch.internal.story.tsx │ │ ├── useDelayedSwitch.ts │ │ ├── useForceUpdate.ts │ │ ├── validate.test.ts │ │ └── validate.ts │ ├── tsconfig.build.json │ └── tsconfig.json ├── packaging ├── autocomplete │ ├── bash_autocomplete │ ├── powershell_autocomplete.ps1 │ └── zsh_autocomplete ├── deb │ ├── control │ │ ├── postinst │ │ └── prerm │ ├── default │ │ └── grafana-server │ ├── init.d │ │ └── grafana-server │ └── systemd │ │ └── grafana-server.service ├── docker │ ├── README.md │ ├── build.sh │ ├── custom │ │ └── Dockerfile │ ├── push_to_docker_hub.sh │ └── run.sh ├── mac │ └── bin │ │ └── grafana ├── rpm │ ├── control │ │ ├── postinst │ │ └── posttrans │ ├── init.d │ │ └── grafana-server │ ├── sysconfig │ │ └── grafana-server │ └── systemd │ │ └── grafana-server.service └── wrappers │ ├── grafana │ ├── grafana-cli │ └── grafana-server ├── pkg ├── README.md ├── api │ ├── README.md │ ├── accesscontrol.go │ ├── admin.go │ ├── admin_encryption.go │ ├── admin_provisioning.go │ ├── admin_provisioning_test.go │ ├── admin_test.go │ ├── admin_users.go │ ├── admin_users_test.go │ ├── alerting.go │ ├── annotations.go │ ├── annotations_test.go │ ├── api.go │ ├── api_test.go │ ├── apierrors │ │ ├── dashboard.go │ │ └── folder.go │ ├── apikey.go │ ├── avatar │ │ ├── avatar.go │ │ └── avatar_test.go │ ├── basic_auth.go │ ├── basic_auth_test.go │ ├── common_test.go │ ├── dashboard.go │ ├── dashboard_permission.go │ ├── dashboard_permission_test.go │ ├── dashboard_snapshot.go │ ├── dashboard_snapshot_test.go │ ├── dashboard_test.go │ ├── dataproxy.go │ ├── datasource │ │ └── validation.go │ ├── datasources.go │ ├── datasources_test.go │ ├── ds_query.go │ ├── ds_query_test.go │ ├── dtos │ │ ├── acl.go │ │ ├── annotations.go │ │ ├── apikey.go │ │ ├── dashboard.go │ │ ├── datasource.go │ │ ├── folder.go │ │ ├── frontend_settings.go │ │ ├── index.go │ │ ├── invite.go │ │ ├── live.go │ │ ├── models.go │ │ ├── models_test.go │ │ ├── org.go │ │ ├── playlist.go │ │ ├── plugins.go │ │ ├── prefs.go │ │ ├── short_url.go │ │ ├── user.go │ │ └── user_token.go │ ├── fakes.go │ ├── folder.go │ ├── folder_bench_test.go │ ├── folder_permission.go │ ├── folder_permission_test.go │ ├── folder_test.go │ ├── frontend_logging.go │ ├── frontend_logging_test.go │ ├── frontend_metrics.go │ ├── frontendlogging │ │ ├── grafana_javascript_agent.go │ │ ├── grafana_javascript_agent_payload.go │ │ ├── grafana_javascript_agent_sourcemaps.go │ │ ├── source_maps.go │ │ └── test-data │ │ │ └── foo.js.map │ ├── frontendsettings.go │ ├── frontendsettings_test.go │ ├── grafana_com_proxy.go │ ├── health.go │ ├── health_test.go │ ├── http_server.go │ ├── http_server_test.go │ ├── index.go │ ├── login.go │ ├── login_oauth.go │ ├── login_oauth_test.go │ ├── login_test.go │ ├── org.go │ ├── org_invite.go │ ├── org_invite_test.go │ ├── org_test.go │ ├── org_users.go │ ├── org_users_test.go │ ├── password.go │ ├── playlist.go │ ├── plugin_checks.go │ ├── plugin_checks_test.go │ ├── plugin_dashboards.go │ ├── plugin_dashboards_test.go │ ├── plugin_metrics.go │ ├── plugin_metrics_test.go │ ├── plugin_proxy.go │ ├── plugin_proxy_test.go │ ├── plugin_resource.go │ ├── plugin_resource_test.go │ ├── pluginproxy │ │ ├── ds_auth_provider.go │ │ ├── ds_auth_provider_test.go │ │ ├── ds_proxy.go │ │ ├── ds_proxy_test.go │ │ ├── pluginproxy.go │ │ ├── pluginproxy_test.go │ │ ├── test-data │ │ │ ├── access-token-1.json │ │ │ └── access-token-2.json │ │ ├── token_provider.go │ │ ├── token_provider_azure.go │ │ ├── token_provider_gce.go │ │ ├── token_provider_generic.go │ │ ├── token_provider_jwt.go │ │ ├── token_provider_test.go │ │ ├── utils.go │ │ └── utils_test.go │ ├── plugins.go │ ├── plugins_test.go │ ├── preferences.go │ ├── preferences_test.go │ ├── quota.go │ ├── quota_test.go │ ├── render.go │ ├── response │ │ ├── response.go │ │ ├── response_test.go │ │ └── web_hack.go │ ├── routing │ │ ├── route_register.go │ │ ├── route_register_test.go │ │ └── routing.go │ ├── search.go │ ├── short_url.go │ ├── short_url_test.go │ ├── signup.go │ ├── static │ │ └── static.go │ ├── swagger.go │ ├── swagger_responses.go │ ├── swagger_tags.json │ ├── user.go │ ├── user_test.go │ ├── user_token.go │ ├── user_token_test.go │ ├── utils.go │ └── webassets │ │ ├── testdata │ │ └── sample-assets-manifest.json │ │ ├── webassets.go │ │ └── webassets_test.go ├── apimachinery │ ├── apis │ │ └── common │ │ │ └── v0alpha1 │ │ │ ├── doc.go │ │ │ ├── resource.go │ │ │ ├── types.go │ │ │ ├── unstructured.go │ │ │ ├── zz_generated.defaults.go │ │ │ ├── zz_generated.openapi.go │ │ │ └── zz_generated.openapi_violation_exceptions.list │ ├── go.mod │ └── go.sum ├── apis │ ├── dashboard │ │ └── v0alpha1 │ │ │ ├── doc.go │ │ │ ├── register.go │ │ │ ├── types.go │ │ │ ├── zz_generated.deepcopy.go │ │ │ ├── zz_generated.defaults.go │ │ │ ├── zz_generated.openapi.go │ │ │ └── zz_generated.openapi_violation_exceptions.list │ ├── dashboardsnapshot │ │ └── v0alpha1 │ │ │ ├── doc.go │ │ │ ├── register.go │ │ │ ├── types.go │ │ │ ├── zz_generated.deepcopy.go │ │ │ ├── zz_generated.defaults.go │ │ │ ├── zz_generated.openapi.go │ │ │ └── zz_generated.openapi_violation_exceptions.list │ ├── datasource │ │ └── v0alpha1 │ │ │ ├── doc.go │ │ │ ├── register.go │ │ │ ├── types.go │ │ │ ├── zz_generated.deepcopy.go │ │ │ ├── zz_generated.defaults.go │ │ │ └── zz_generated.openapi.go │ ├── example │ │ └── v0alpha1 │ │ │ ├── doc.go │ │ │ ├── register.go │ │ │ ├── types.go │ │ │ ├── zz_generated.deepcopy.go │ │ │ ├── zz_generated.defaults.go │ │ │ ├── zz_generated.openapi.go │ │ │ └── zz_generated.openapi_violation_exceptions.list │ ├── featuretoggle │ │ └── v0alpha1 │ │ │ ├── doc.go │ │ │ ├── register.go │ │ │ ├── types.go │ │ │ ├── zz_generated.deepcopy.go │ │ │ ├── zz_generated.defaults.go │ │ │ ├── zz_generated.openapi.go │ │ │ └── zz_generated.openapi_violation_exceptions.list │ ├── folder │ │ └── v0alpha1 │ │ │ ├── doc.go │ │ │ ├── register.go │ │ │ ├── types.go │ │ │ ├── zz_generated.deepcopy.go │ │ │ ├── zz_generated.defaults.go │ │ │ ├── zz_generated.openapi.go │ │ │ └── zz_generated.openapi_violation_exceptions.list │ ├── peakq │ │ └── v0alpha1 │ │ │ ├── doc.go │ │ │ ├── register.go │ │ │ ├── types.go │ │ │ ├── zz_generated.deepcopy.go │ │ │ ├── zz_generated.defaults.go │ │ │ └── zz_generated.openapi.go │ ├── playlist │ │ └── v0alpha1 │ │ │ ├── doc.go │ │ │ ├── register.go │ │ │ ├── types.go │ │ │ ├── types_test.go │ │ │ ├── zz_generated.deepcopy.go │ │ │ ├── zz_generated.defaults.go │ │ │ ├── zz_generated.openapi.go │ │ │ └── zz_generated.openapi_violation_exceptions.list │ ├── query │ │ └── v0alpha1 │ │ │ ├── datasource.go │ │ │ ├── doc.go │ │ │ ├── query.go │ │ │ ├── query_test.go │ │ │ ├── register.go │ │ │ ├── template │ │ │ ├── doc.go │ │ │ ├── format.go │ │ │ ├── format_test.go │ │ │ ├── render.go │ │ │ ├── render_test.go │ │ │ ├── types.go │ │ │ ├── zz_generated.deepcopy.go │ │ │ └── zz_generated.defaults.go │ │ │ ├── zz_generated.deepcopy.go │ │ │ ├── zz_generated.defaults.go │ │ │ ├── zz_generated.openapi.go │ │ │ └── zz_generated.openapi_violation_exceptions.list │ ├── scope │ │ └── v0alpha1 │ │ │ ├── doc.go │ │ │ ├── register.go │ │ │ ├── types.go │ │ │ ├── zz_generated.deepcopy.go │ │ │ ├── zz_generated.defaults.go │ │ │ ├── zz_generated.openapi.go │ │ │ └── zz_generated.openapi_violation_exceptions.list │ └── service │ │ └── v0alpha1 │ │ ├── doc.go │ │ ├── register.go │ │ ├── types.go │ │ ├── zz_generated.deepcopy.go │ │ ├── zz_generated.defaults.go │ │ └── zz_generated.openapi.go ├── apiserver │ ├── builder │ │ ├── common.go │ │ ├── helper.go │ │ ├── openapi.go │ │ └── request_handler.go │ ├── endpoints │ │ ├── filters │ │ │ ├── accept.go │ │ │ ├── accept_test.go │ │ │ ├── path_rewriter.go │ │ │ ├── path_rewriter_test.go │ │ │ └── tracing_log.go │ │ ├── request │ │ │ ├── accept.go │ │ │ └── accept_test.go │ │ └── responsewriter │ │ │ ├── responsewriter.go │ │ │ └── responsewriter_test.go │ ├── go.mod │ ├── go.sum │ ├── registry │ │ └── generic │ │ │ └── strategy.go │ ├── rest │ │ ├── dualwriter.go │ │ ├── dualwriter_mode1.go │ │ ├── dualwriter_mode1_test.go │ │ ├── dualwriter_mode2.go │ │ ├── dualwriter_mode2_test.go │ │ ├── dualwriter_mode3.go │ │ ├── dualwriter_mode3_test.go │ │ ├── dualwriter_mode4.go │ │ ├── dualwriter_mode4_test.go │ │ ├── dualwriter_test.go │ │ ├── metrics.go │ │ └── storage_mocks_test.go │ └── storage │ │ └── file │ │ ├── file.go │ │ ├── restoptions.go │ │ ├── util.go │ │ ├── watcher_test.go │ │ └── watchset.go ├── build │ ├── action.go │ ├── cmd.go │ ├── cmd │ │ ├── argcount_wrapper.go │ │ ├── buildbackend.go │ │ ├── builddocker.go │ │ ├── buildfrontend.go │ │ ├── buildfrontendpackages.go │ │ ├── buildinternalplugins.go │ │ ├── e2etests.go │ │ ├── enterprisecheck.go │ │ ├── enterprisecheck_test.go │ │ ├── exportversion.go │ │ ├── fetchimages.go │ │ ├── flags.go │ │ ├── grafanacom.go │ │ ├── grafanacom_test.go │ │ ├── main.go │ │ ├── npm.go │ │ ├── package.go │ │ ├── publishartifacts.go │ │ ├── publishaws.go │ │ ├── publishaws_test.go │ │ ├── publishconfig.go │ │ ├── publishgithub.go │ │ ├── publishgithub_test.go │ │ ├── publishimages_enterprise2.go │ │ ├── publishmetrics.go │ │ ├── publishstaticassets.go │ │ ├── publishstorybook.go │ │ ├── shellcheck.go │ │ ├── storestorybook.go │ │ ├── uploadcdn.go │ │ ├── uploadpackages.go │ │ ├── uploadpackages_test.go │ │ ├── verifydrone.go │ │ ├── verifystarlark.go │ │ ├── verifystarlark_test.go │ │ ├── verifystorybook.go │ │ ├── whatsnewchecker.go │ │ └── whatsnewchecker_test.go │ ├── compilers │ │ └── install.go │ ├── config │ │ ├── config.go │ │ ├── edition.go │ │ ├── genmetadata.go │ │ ├── genmetadata_test.go │ │ ├── package.json │ │ ├── revision.go │ │ ├── variant.go │ │ ├── version.go │ │ ├── version_mode.go │ │ └── versions.go │ ├── cryptoutil │ │ └── md5.go │ ├── docker │ │ ├── build.go │ │ ├── dockerconfig.go │ │ ├── init.go │ │ └── push.go │ ├── docs.go │ ├── droneutil │ │ ├── docs.go │ │ ├── event.go │ │ └── event_test.go │ ├── e2eutil │ │ └── grafana_server.go │ ├── env │ │ ├── fallback.go │ │ ├── fallback_test.go │ │ ├── lookup.go │ │ └── lookup_test.go │ ├── errutil │ │ └── group.go │ ├── exec.go │ ├── executil │ │ └── exec.go │ ├── frontend │ │ ├── build.go │ │ ├── config.go │ │ └── config_test.go │ ├── fs.go │ ├── fsutil │ │ ├── copy_test.go │ │ ├── copyfile.go │ │ ├── createtemp.go │ │ ├── createtemp_test.go │ │ ├── exists_test.go │ │ └── exsits.go │ ├── gcloud │ │ ├── auth.go │ │ └── storage │ │ │ ├── gsutil.go │ │ │ └── gsutil_test.go │ ├── git.go │ ├── git │ │ ├── git.go │ │ ├── git_checks_test.go │ │ ├── git_issues_test.go │ │ └── git_test.go │ ├── golangutils │ │ ├── build.go │ │ └── doc.go │ ├── gpg │ │ ├── gpg.go │ │ └── import.go │ ├── grafana │ │ ├── build.go │ │ └── variant.go │ ├── lerna │ │ └── lerna.go │ ├── metrics │ │ └── publish.go │ ├── npm │ │ └── npm.go │ ├── opts.go │ ├── packaging │ │ ├── artifacts.go │ │ ├── docs.go │ │ ├── errors.go │ │ ├── grafana.go │ │ └── grafana_test.go │ ├── plugins │ │ ├── build.go │ │ ├── download.go │ │ ├── manifest.go │ │ └── zip.go │ ├── stringutil │ │ └── contains.go │ ├── syncutil │ │ └── pool.go │ ├── validation │ │ ├── docs.go │ │ └── validation.go │ ├── version.go │ ├── versions │ │ ├── version.go │ │ └── version_test.go │ └── wire │ │ ├── AUTHORS │ │ ├── CODE_OF_CONDUCT.md │ │ ├── CONTRIBUTING.md │ │ ├── CONTRIBUTORS │ │ ├── LICENSE │ │ ├── README.md │ │ ├── _tutorial │ │ ├── README.md │ │ ├── main.go │ │ ├── wire.go │ │ └── wire_gen.go │ │ ├── cmd │ │ └── wire │ │ │ ├── main.go │ │ │ └── wire │ │ ├── docs │ │ ├── best-practices.md │ │ ├── faq.md │ │ └── guide.md │ │ ├── go.mod │ │ ├── go.sum │ │ ├── internal │ │ ├── alldeps │ │ ├── check_api_change.sh │ │ ├── listdeps.sh │ │ ├── runtests.sh │ │ └── wire │ │ │ ├── analyze.go │ │ │ ├── copyast.go │ │ │ ├── errors.go │ │ │ ├── parse.go │ │ │ ├── testdata │ │ │ ├── BindInjectorArg │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── BindInjectorArgPointer │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── BindInterfaceWithValue │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── BuildTagsAllPackages │ │ │ │ ├── bar │ │ │ │ │ ├── bar.go │ │ │ │ │ └── bar_inject.go │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── Chain │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── Cleanup │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── CopyOtherDecls │ │ │ │ ├── foo │ │ │ │ │ └── foo.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── Cycle │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── DocComment │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── EmptyVar │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── ExampleWithMocks │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── ExportedValue │ │ │ │ ├── bar │ │ │ │ │ └── bar.go │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── ExportedValueDifferentPackage │ │ │ │ ├── bar │ │ │ │ │ └── bar.go │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── FieldsOfCycle │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── FieldsOfImportedStruct │ │ │ │ ├── bar │ │ │ │ │ └── bar.go │ │ │ │ ├── baz │ │ │ │ │ └── baz.go │ │ │ │ ├── foo │ │ │ │ │ └── foo.go │ │ │ │ ├── main │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── FieldsOfStruct │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── FieldsOfStructDoNotProvidePtrToField │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── FieldsOfStructPointer │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── FieldsOfValueStruct │ │ │ │ ├── bar │ │ │ │ │ └── bar.go │ │ │ │ ├── baz │ │ │ │ │ └── baz.go │ │ │ │ ├── foo │ │ │ │ │ └── foo.go │ │ │ │ ├── main │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── FuncArgProvider │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── Header │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── header │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── ImportedInterfaceBinding │ │ │ │ ├── bar │ │ │ │ │ ├── bar.go │ │ │ │ │ └── wire.go │ │ │ │ ├── foo │ │ │ │ │ └── foo.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── InjectInput │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── InjectInputConflict │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── InjectWithPanic │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── InjectorMissingCleanup │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── InjectorMissingError │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── InterfaceBinding │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── InterfaceBindingDoesntImplement │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── InterfaceBindingInvalidArg0 │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── InterfaceBindingNotEnoughArgs │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── InterfaceBindingReuse │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── InterfaceValue │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── InterfaceValueDoesntImplement │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── InterfaceValueInvalidArg0 │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── InterfaceValueNotEnoughArgs │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── InvalidInjector │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── MultipleArgsSameType │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── MultipleBindings │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── MultipleMissingInputs │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── MultipleSimilarPackages │ │ │ │ ├── bar │ │ │ │ │ └── bar.go │ │ │ │ ├── baz │ │ │ │ │ └── baz.go │ │ │ │ ├── foo │ │ │ │ │ └── foo.go │ │ │ │ ├── main │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── NamingWorstCase │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── NamingWorstCaseAllInOne │ │ │ │ ├── foo │ │ │ │ │ └── foo.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── NiladicIdentity │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── NiladicValue │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── NoImplicitInterface │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── NoInjectParamNames │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── NoopBuild │ │ │ │ ├── foo │ │ │ │ │ └── foo.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── PartialCleanup │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── PkgImport │ │ │ │ ├── anon1 │ │ │ │ │ └── anon1.go │ │ │ │ ├── anon2 │ │ │ │ │ └── anon2.go │ │ │ │ ├── bar │ │ │ │ │ └── bar.go │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── ProviderSetBindingMissingConcreteType │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── RelativePkg │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── ReservedKeywords │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── ReturnArgumentAsInterface │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── ReturnError │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── Struct │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── StructNotAStruct │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── StructPointer │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── StructWithPreventTag │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── TwoDeps │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── UnexportedStruct │ │ │ │ ├── bar │ │ │ │ │ └── bar.go │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── UnexportedValue │ │ │ │ ├── bar │ │ │ │ │ └── bar.go │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── UnusedProviders │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── ValueChain │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── ValueConversion │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── ValueFromFunctionScope │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── ValueIsInterfaceValue │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ └── wire_errs.txt │ │ │ ├── ValueIsStruct │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ ├── VarValue │ │ │ │ ├── foo │ │ │ │ │ ├── foo.go │ │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ │ ├── program_out.txt │ │ │ │ │ └── wire_gen.go │ │ │ └── Varargs │ │ │ │ ├── foo │ │ │ │ ├── foo.go │ │ │ │ └── wire.go │ │ │ │ ├── pkg │ │ │ │ └── want │ │ │ │ ├── program_out.txt │ │ │ │ └── wire_gen.go │ │ │ ├── wire.go │ │ │ └── wire_test.go │ │ └── wire.go ├── bus │ ├── bus.go │ └── bus_test.go ├── cmd │ ├── grafana-cli │ │ ├── commands │ │ │ ├── cli.go │ │ │ ├── commands.go │ │ │ ├── commandstest │ │ │ │ ├── context.go │ │ │ │ └── fake_ioutil.go │ │ │ ├── conflict-examples │ │ │ │ └── conflict_example_users.tf │ │ │ ├── conflict_user_command.go │ │ │ ├── conflict_user_command_test.go │ │ │ ├── datamigrations │ │ │ │ ├── encrypt_datasource_passwords.go │ │ │ │ └── encrypt_datasource_passwords_test.go │ │ │ ├── install_command.go │ │ │ ├── install_command_test.go │ │ │ ├── listremote_command.go │ │ │ ├── listversions_command.go │ │ │ ├── ls_command.go │ │ │ ├── ls_command_test.go │ │ │ ├── remove_command.go │ │ │ ├── reset_password_command.go │ │ │ ├── reset_password_command_test.go │ │ │ ├── secretsmigrations │ │ │ │ └── secretsmigrations.go │ │ │ ├── upgrade_all_command.go │ │ │ ├── upgrade_all_command_test.go │ │ │ └── upgrade_command.go │ │ ├── logger │ │ │ ├── logger.go │ │ │ └── loggerV2.go │ │ ├── main.go │ │ ├── models │ │ │ └── model.go │ │ ├── runner │ │ │ └── runner.go │ │ ├── services │ │ │ ├── api_client.go │ │ │ ├── api_client_test.go │ │ │ ├── io_util.go │ │ │ └── services.go │ │ └── utils │ │ │ ├── args_mock.go │ │ │ ├── command_line.go │ │ │ ├── command_line_mock.go │ │ │ └── grafana_path.go │ ├── grafana-server │ │ ├── commands │ │ │ ├── buildinfo.go │ │ │ ├── cli.go │ │ │ ├── diagnostics.go │ │ │ ├── diagnostics_test.go │ │ │ ├── flags.go │ │ │ └── target.go │ │ └── main.go │ └── grafana │ │ ├── apiserver │ │ ├── apiserver.md │ │ ├── cmd.go │ │ ├── deploy │ │ │ └── aggregator-test │ │ │ │ ├── apiservice.yaml │ │ │ │ ├── externalname.yaml │ │ │ │ └── kustomization.yaml │ │ └── server.go │ │ ├── main.go │ │ └── main_test.go ├── codegen │ ├── astmanip_test.go │ ├── generators.go │ ├── generators │ │ ├── decorators.go │ │ ├── go_generator.go │ │ ├── openapi_generator.go │ │ ├── ts_generator.go │ │ └── utils.go │ ├── jenny_core_registry.go │ ├── jenny_eachmajor.go │ ├── jenny_go_spec.go │ ├── jenny_k8_resources.go │ ├── jenny_ts_types.go │ ├── jenny_tsveneerindex.go │ ├── tmpl.go │ ├── tmpl │ │ ├── core_metadata.tmpl │ │ ├── core_registry.tmpl │ │ ├── core_resource.tmpl │ │ ├── core_status.tmpl │ │ └── gen_header.tmpl │ ├── util_go.go │ └── util_ts.go ├── components │ ├── apikeygen │ │ ├── apikeygen.go │ │ └── apikeygen_test.go │ ├── dashdiffs │ │ ├── compare.go │ │ ├── formatter_basic.go │ │ ├── formatter_json.go │ │ └── formatter_test.go │ ├── imguploader │ │ ├── azureblobuploader.go │ │ ├── azureblobuploader_test.go │ │ ├── gcs │ │ │ ├── gcsuploader.go │ │ │ └── gcsuploader_test.go │ │ ├── imguploader.go │ │ ├── imguploader_test.go │ │ ├── localuploader.go │ │ ├── localuploader_test.go │ │ ├── mock.go │ │ ├── s3uploader.go │ │ ├── s3uploader_test.go │ │ ├── webdavuploader.go │ │ └── webdavuploader_test.go │ ├── loki │ │ ├── README │ │ ├── logproto │ │ │ ├── LICENSE_APACHE2 │ │ │ ├── extensions.go │ │ │ ├── logproto.pb.go │ │ │ ├── logproto.proto │ │ │ ├── timestamp.go │ │ │ ├── types.go │ │ │ └── types_test.go │ │ ├── lokigrpc │ │ │ ├── client.go │ │ │ ├── config.go │ │ │ └── tenant.go │ │ └── lokihttp │ │ │ ├── batch.go │ │ │ ├── client.go │ │ │ ├── config.go │ │ │ ├── fake.go │ │ │ └── types.go │ ├── null │ │ └── float.go │ ├── satokengen │ │ ├── cmd │ │ │ └── main.go │ │ ├── errors.go │ │ ├── tokengen.go │ │ └── tokengen_test.go │ └── simplejson │ │ ├── simplejson.go │ │ ├── simplejson_go11.go │ │ └── simplejson_test.go ├── events │ └── events.go ├── expr │ ├── classic │ │ ├── classic.go │ │ ├── classic_test.go │ │ ├── evaluator.go │ │ ├── evaluator_test.go │ │ ├── reduce.go │ │ └── reduce_test.go │ ├── commands.go │ ├── commands_test.go │ ├── converter.go │ ├── converter_test.go │ ├── dataplane.go │ ├── dataplane_test.go │ ├── errors.go │ ├── errors_test.go │ ├── graph.go │ ├── graph_test.go │ ├── hysteresis.go │ ├── hysteresis_test.go │ ├── mathexp │ │ ├── exp.go │ │ ├── exp_nan_null_val_test.go │ │ ├── exp_scalar_no_test.go │ │ ├── exp_series_test.go │ │ ├── exp_test.go │ │ ├── funcs.go │ │ ├── funcs_test.go │ │ ├── parse │ │ │ ├── lex.go │ │ │ ├── lex_test.go │ │ │ ├── node.go │ │ │ └── parse.go │ │ ├── reduce.go │ │ ├── reduce_test.go │ │ ├── resample.go │ │ ├── resample_test.go │ │ ├── testing.go │ │ ├── type_series.go │ │ ├── types.go │ │ ├── types_test.go │ │ └── union_test.go │ ├── metrics.go │ ├── ml.go │ ├── ml │ │ ├── model.go │ │ ├── node.go │ │ ├── node_test.go │ │ ├── outlier.go │ │ ├── outlier_test.go │ │ └── testing.go │ ├── ml_test.go │ ├── nodes.go │ ├── nodes_test.go │ ├── query.go │ ├── query.panel.example.json │ ├── query.panel.schema.json │ ├── query.request.example.json │ ├── query.request.schema.json │ ├── query.types.json │ ├── query_test.go │ ├── reader.go │ ├── service.go │ ├── service_test.go │ ├── sql │ │ ├── parser.go │ │ └── parser_test.go │ ├── sql_command.go │ ├── sql_command_test.go │ ├── testing.go │ ├── threshold.go │ ├── threshold_bench_test.go │ ├── threshold_test.go │ └── transform.go ├── extensions │ └── main.go ├── generated │ ├── applyconfiguration │ │ ├── internal │ │ │ └── internal.go │ │ ├── service │ │ │ └── v0alpha1 │ │ │ │ ├── externalname.go │ │ │ │ └── externalnamespec.go │ │ └── utils.go │ ├── clientset │ │ └── versioned │ │ │ ├── clientset.go │ │ │ ├── fake │ │ │ ├── clientset_generated.go │ │ │ ├── doc.go │ │ │ └── register.go │ │ │ ├── scheme │ │ │ ├── doc.go │ │ │ └── register.go │ │ │ └── typed │ │ │ └── service │ │ │ └── v0alpha1 │ │ │ ├── doc.go │ │ │ ├── externalname.go │ │ │ ├── fake │ │ │ ├── doc.go │ │ │ ├── fake_externalname.go │ │ │ └── fake_service_client.go │ │ │ ├── generated_expansion.go │ │ │ └── service_client.go │ ├── informers │ │ └── externalversions │ │ │ ├── factory.go │ │ │ ├── generic.go │ │ │ ├── internalinterfaces │ │ │ └── factory_interfaces.go │ │ │ └── service │ │ │ ├── interface.go │ │ │ └── v0alpha1 │ │ │ ├── externalname.go │ │ │ └── interface.go │ └── listers │ │ └── service │ │ └── v0alpha1 │ │ ├── expansion_generated.go │ │ └── externalname.go ├── ifaces │ └── gcsifaces │ │ └── gcsifaces.go ├── infra │ ├── appcontext │ │ ├── user.go │ │ └── user_test.go │ ├── db │ │ ├── db.go │ │ ├── dbtest │ │ │ └── dbtest.go │ │ └── sqlbuilder.go │ ├── filestorage │ │ ├── api.go │ │ ├── api_test.go │ │ ├── cdk_blob_filestorage.go │ │ ├── db_filestorage.go │ │ ├── file_storage_mock.go │ │ ├── filter.go │ │ ├── filter_test.go │ │ ├── fs_integration_test.go │ │ ├── test_utils.go │ │ ├── wrapper.go │ │ └── wrapper_test.go │ ├── fs │ │ ├── copy.go │ │ ├── copy_test.go │ │ ├── exists.go │ │ └── exists_test.go │ ├── httpclient │ │ ├── count_bytes_reader.go │ │ ├── count_bytes_reader_test.go │ │ ├── httpclientprovider │ │ │ ├── datasource_metrics_middleware.go │ │ │ ├── datasource_metrics_middleware_test.go │ │ │ ├── grafana_request_id_header_middleware.go │ │ │ ├── grafana_request_id_header_middleware_test.go │ │ │ ├── host_redirect_validation_middleware.go │ │ │ ├── http_client_provider.go │ │ │ ├── http_client_provider_test.go │ │ │ ├── http_logger_middleware.go │ │ │ ├── http_logger_middleware_test.go │ │ │ ├── prometheus_metrics_middleware.go │ │ │ ├── prometheus_metrics_middleware_test.go │ │ │ ├── testing.go │ │ │ ├── tracing_middleware.go │ │ │ ├── tracing_middleware_test.go │ │ │ ├── user_agent_middleware.go │ │ │ └── user_agent_middleware_test.go │ │ └── provider.go │ ├── kvstore │ │ ├── kvstore.go │ │ ├── kvstore_test.go │ │ ├── model.go │ │ ├── sql.go │ │ └── test_utils.go │ ├── localcache │ │ └── cache.go │ ├── log │ │ ├── composite_logger.go │ │ ├── composite_logger_test.go │ │ ├── databaseCounter.go │ │ ├── databaseCounter_test.go │ │ ├── file.go │ │ ├── file_test.go │ │ ├── handlers.go │ │ ├── interface.go │ │ ├── log.go │ │ ├── log_test.go │ │ ├── logtest │ │ │ ├── fake.go │ │ │ └── slog.go │ │ ├── requestTiming.go │ │ ├── slogadapter │ │ │ └── adapter.go │ │ ├── syslog.go │ │ ├── syslog_windows.go │ │ ├── term │ │ │ └── terminal_logger.go │ │ └── text │ │ │ └── text_logger.go │ ├── metrics │ │ ├── frontendmetrics.go │ │ ├── graphitebridge │ │ │ ├── graphite.go │ │ │ └── graphite_test.go │ │ ├── metrics.go │ │ ├── metricutil │ │ │ ├── utils.go │ │ │ └── utils_test.go │ │ ├── service.go │ │ ├── service_test.go │ │ ├── settings.go │ │ └── wireset.go │ ├── network │ │ ├── address.go │ │ └── address_test.go │ ├── process │ │ ├── process.go │ │ ├── root_check.go │ │ └── root_check_windows.go │ ├── remotecache │ │ ├── database_storage.go │ │ ├── database_storage_test.go │ │ ├── memcached_storage.go │ │ ├── memcached_storage_integration_test.go │ │ ├── redis_storage.go │ │ ├── redis_storage_integration_test.go │ │ ├── redis_storage_test.go │ │ ├── remotecache.go │ │ ├── remotecache_test.go │ │ ├── test_utils.go │ │ └── testing.go │ ├── serverlock │ │ ├── errors.go │ │ ├── model.go │ │ ├── serverlock.go │ │ ├── serverlock_integration_test.go │ │ └── serverlock_test.go │ ├── slugify │ │ ├── slugify.go │ │ └── slugify_test.go │ ├── tracing │ │ ├── test_helper.go │ │ ├── tracing.go │ │ ├── tracing_config.go │ │ ├── tracing_config_test.go │ │ └── tracing_test.go │ ├── usagestats │ │ ├── mock.go │ │ ├── service.go │ │ ├── service │ │ │ ├── api.go │ │ │ ├── api_test.go │ │ │ ├── service.go │ │ │ ├── usage_stats.go │ │ │ └── usage_stats_test.go │ │ ├── statscollector │ │ │ ├── concurrent_users.go │ │ │ ├── concurrent_users_test.go │ │ │ ├── prometheus_flavor.go │ │ │ ├── prometheus_flavor_test.go │ │ │ ├── service.go │ │ │ └── service_test.go │ │ └── validator │ │ │ ├── fake.go │ │ │ ├── impl.go │ │ │ └── service.go │ └── x │ │ └── persistentcollection │ │ ├── local_fs.go │ │ ├── local_fs_test.go │ │ └── model.go ├── kinds │ ├── accesspolicy │ │ ├── accesspolicy_gen.go │ │ ├── accesspolicy_metadata_gen.go │ │ ├── accesspolicy_spec_gen.go │ │ ├── accesspolicy_status_gen.go │ │ ├── utils.go │ │ └── utils_test.go │ ├── dashboard │ │ ├── addenda.go │ │ ├── dashboard_gen.go │ │ ├── dashboard_metadata_gen.go │ │ ├── dashboard_spec_gen.go │ │ └── dashboard_status_gen.go │ ├── general.go │ ├── librarypanel │ │ ├── librarypanel_gen.go │ │ ├── librarypanel_metadata_gen.go │ │ ├── librarypanel_spec_gen.go │ │ └── librarypanel_status_gen.go │ ├── preferences │ │ ├── preferences_gen.go │ │ ├── preferences_metadata_gen.go │ │ ├── preferences_spec_gen.go │ │ └── preferences_status_gen.go │ ├── publicdashboard │ │ ├── publicdashboard_gen.go │ │ ├── publicdashboard_metadata_gen.go │ │ ├── publicdashboard_spec_gen.go │ │ └── publicdashboard_status_gen.go │ ├── role │ │ ├── role_gen.go │ │ ├── role_metadata_gen.go │ │ ├── role_spec_gen.go │ │ └── role_status_gen.go │ ├── rolebinding │ │ ├── rolebinding_gen.go │ │ ├── rolebinding_metadata_gen.go │ │ ├── rolebinding_spec_gen.go │ │ └── rolebinding_status_gen.go │ └── team │ │ ├── team_gen.go │ │ ├── team_metadata_gen.go │ │ ├── team_spec_gen.go │ │ └── team_status_gen.go ├── login │ └── social │ │ ├── connectors │ │ ├── azuread_jwks.go │ │ ├── azuread_oauth.go │ │ ├── azuread_oauth_test.go │ │ ├── common.go │ │ ├── errors.go │ │ ├── generic_oauth.go │ │ ├── generic_oauth_test.go │ │ ├── github_oauth.go │ │ ├── github_oauth_test.go │ │ ├── gitlab_oauth.go │ │ ├── gitlab_oauth_test.go │ │ ├── google_oauth.go │ │ ├── google_oauth_test.go │ │ ├── grafana_com_oauth.go │ │ ├── grafana_com_oauth_test.go │ │ ├── okta_oauth.go │ │ ├── okta_oauth_test.go │ │ ├── org_role_mapper.go │ │ ├── org_role_mapper_test.go │ │ └── social_base.go │ │ ├── social.go │ │ ├── socialimpl │ │ ├── service.go │ │ ├── service_test.go │ │ └── support_bundle.go │ │ └── socialtest │ │ ├── social_connector_mock.go │ │ └── social_service_fake.go ├── middleware │ ├── auth.go │ ├── auth_test.go │ ├── cookies │ │ └── cookies.go │ ├── csp.go │ ├── csrf │ │ ├── csrf.go │ │ └── csrf_test.go │ ├── dashboard_redirect.go │ ├── dashboard_redirect_test.go │ ├── gziper.go │ ├── loggermw │ │ ├── logger.go │ │ └── logger_test.go │ ├── middleware.go │ ├── middleware_test.go │ ├── org_redirect.go │ ├── org_redirect_test.go │ ├── quota.go │ ├── quota_test.go │ ├── recovery.go │ ├── recovery_test.go │ ├── request_metadata_test.go │ ├── request_metrics.go │ ├── request_test.go │ ├── request_tracing.go │ ├── requestmeta │ │ ├── request_metadata.go │ │ └── request_metadata_test.go │ ├── subpath_redirect.go │ ├── subpath_redirect_test.go │ ├── testing.go │ └── validate_host.go ├── mocks │ └── mock_gcsifaces │ │ └── mocks.go ├── models │ ├── roletype │ │ └── role_type.go │ ├── theme.go │ └── usertoken │ │ ├── user_token.go │ │ └── user_token_test.go ├── modules │ ├── dependencies.go │ ├── listener.go │ ├── modules.go │ └── util.go ├── plugins │ ├── apiserver.go │ ├── apiserver_test.go │ ├── auth │ │ └── models.go │ ├── backendplugin │ │ ├── backendplugin.go │ │ ├── coreplugin │ │ │ ├── core_plugin.go │ │ │ ├── core_plugin_test.go │ │ │ ├── registry.go │ │ │ └── registry_test.go │ │ ├── grpcplugin │ │ │ ├── client.go │ │ │ ├── client_proto.go │ │ │ ├── client_v2.go │ │ │ ├── grpc_plugin.go │ │ │ ├── log_wrapper.go │ │ │ └── log_wrapper_test.go │ │ ├── ifaces.go │ │ ├── pluginextensionv2 │ │ │ ├── buf.gen.yaml │ │ │ ├── buf.yaml │ │ │ ├── renderer_grpc_plugin.go │ │ │ ├── rendererv2.pb.go │ │ │ ├── rendererv2.proto │ │ │ ├── rendererv2_grpc.pb.go │ │ │ ├── sanitizer.pb.go │ │ │ ├── sanitizer.proto │ │ │ └── sanitizer_grpc.pb.go │ │ ├── provider │ │ │ └── provider.go │ │ └── secretsmanagerplugin │ │ │ ├── buf.gen.yaml │ │ │ ├── buf.yaml │ │ │ ├── secretsmanager.pb.go │ │ │ ├── secretsmanager.proto │ │ │ ├── secretsmanager_grcp_plugin.go │ │ │ └── secretsmanager_grpc.pb.go │ ├── codegen │ │ ├── jenny_plugin_registry.go │ │ ├── jenny_plugingotypes.go │ │ ├── jenny_plugintstypes.go │ │ ├── tmpl.go │ │ └── tmpl │ │ │ └── composable_registry.tmpl │ ├── config │ │ ├── config.go │ │ └── tracing.go │ ├── envvars │ │ └── envvars.go │ ├── errors.go │ ├── httpresponsesender │ │ ├── http_response_sender.go │ │ └── http_response_sender_test.go │ ├── ifaces.go │ ├── localfiles.go │ ├── localfiles_test.go │ ├── log │ │ ├── fake.go │ │ ├── ifaces.go │ │ ├── infra_wrapper.go │ │ └── logger.go │ ├── manager │ │ ├── client │ │ │ ├── client.go │ │ │ ├── client_test.go │ │ │ ├── clienttest │ │ │ │ └── clienttest.go │ │ │ ├── decorator.go │ │ │ └── decorator_test.go │ │ ├── fakes │ │ │ └── fakes.go │ │ ├── filestore │ │ │ └── fs.go │ │ ├── installer.go │ │ ├── installer_test.go │ │ ├── loader │ │ │ ├── angular │ │ │ │ ├── angulardetector │ │ │ │ │ ├── angulardetector.go │ │ │ │ │ └── angulardetector_test.go │ │ │ │ └── angularinspector │ │ │ │ │ ├── angularinspector.go │ │ │ │ │ ├── angularinspector_test.go │ │ │ │ │ ├── fakes.go │ │ │ │ │ └── fakes_test.go │ │ │ ├── assetpath │ │ │ │ ├── assetpath.go │ │ │ │ └── assetpath_test.go │ │ │ ├── finder │ │ │ │ ├── ifaces.go │ │ │ │ ├── local.go │ │ │ │ └── local_test.go │ │ │ ├── ifaces.go │ │ │ ├── loader.go │ │ │ └── loader_test.go │ │ ├── pipeline │ │ │ ├── bootstrap │ │ │ │ ├── bootstrap.go │ │ │ │ ├── doc.go │ │ │ │ ├── factory.go │ │ │ │ ├── steps.go │ │ │ │ └── steps_test.go │ │ │ ├── discovery │ │ │ │ ├── discovery.go │ │ │ │ ├── doc.go │ │ │ │ └── steps.go │ │ │ ├── doc.go │ │ │ ├── initialization │ │ │ │ ├── doc.go │ │ │ │ ├── initialization.go │ │ │ │ ├── steps.go │ │ │ │ └── steps_test.go │ │ │ ├── termination │ │ │ │ ├── doc.go │ │ │ │ ├── steps.go │ │ │ │ └── termination.go │ │ │ └── validation │ │ │ │ ├── doc.go │ │ │ │ ├── steps.go │ │ │ │ ├── steps_test.go │ │ │ │ └── validation.go │ │ ├── process │ │ │ ├── ifaces.go │ │ │ ├── process.go │ │ │ └── process_test.go │ │ ├── registry │ │ │ ├── ifaces.go │ │ │ ├── in_memory.go │ │ │ └── in_memory_test.go │ │ ├── signature │ │ │ ├── authorizer.go │ │ │ ├── manifest.go │ │ │ ├── manifest_test.go │ │ │ ├── signature.go │ │ │ └── statickey │ │ │ │ └── static_retriever.go │ │ ├── sources │ │ │ ├── ifaces.go │ │ │ ├── source_local_disk.go │ │ │ ├── source_local_disk_test.go │ │ │ ├── sources.go │ │ │ └── sources_test.go │ │ └── testdata │ │ │ ├── app-with-child │ │ │ └── dist │ │ │ │ ├── MANIFEST.txt │ │ │ │ ├── child │ │ │ │ └── plugin.json │ │ │ │ └── plugin.json │ │ │ ├── cdn │ │ │ └── plugin │ │ │ │ └── plugin.json │ │ │ ├── disallowed-cue-import │ │ │ ├── composable.cue │ │ │ └── plugin.json │ │ │ ├── duplicate-plugins │ │ │ └── nested │ │ │ │ ├── MANIFEST.txt │ │ │ │ ├── nested │ │ │ │ ├── MANIFEST.txt │ │ │ │ └── plugin.json │ │ │ │ └── plugin.json │ │ │ ├── external-registration │ │ │ └── plugin.json │ │ │ ├── includes-symlinks │ │ │ ├── MANIFEST.txt │ │ │ ├── dashboards │ │ │ │ ├── connections.json │ │ │ │ └── extra │ │ │ │ │ └── memory.json │ │ │ ├── extra │ │ │ ├── plugin.json │ │ │ ├── symlink_to_txt │ │ │ └── text.txt │ │ │ ├── installer │ │ │ └── plugin │ │ │ │ ├── MANIFEST.txt │ │ │ │ └── plugin.json │ │ │ ├── invalid-plugin-json │ │ │ └── plugin.json │ │ │ ├── invalid-v1-signature │ │ │ └── plugin │ │ │ │ ├── MANIFEST.txt │ │ │ │ └── plugin.json │ │ │ ├── invalid-v2-extra-file │ │ │ └── plugin │ │ │ │ ├── MANIFEST.txt │ │ │ │ ├── extraFile │ │ │ │ └── plugin.json │ │ │ ├── invalid-v2-missing-file │ │ │ └── plugin │ │ │ │ ├── MANIFEST.txt │ │ │ │ └── plugin.json │ │ │ ├── lacking-files │ │ │ └── plugin │ │ │ │ ├── MANIFEST.txt │ │ │ │ └── plugin.json │ │ │ ├── missing-kind-datasource │ │ │ ├── composable_dataquery.cue │ │ │ └── plugin.json │ │ │ ├── name-mismatch-panel │ │ │ ├── composable_panelcfg.cue │ │ │ └── plugin.json │ │ │ ├── nested-plugins │ │ │ └── parent │ │ │ │ ├── MANIFEST.txt │ │ │ │ ├── nested │ │ │ │ └── plugin.json │ │ │ │ └── plugin.json │ │ │ ├── no-rootfile │ │ │ └── dummy │ │ │ ├── non-pvt-with-root-url │ │ │ └── plugin │ │ │ │ ├── MANIFEST.txt │ │ │ │ └── plugin.json │ │ │ ├── panel-conflicting-joinschema │ │ │ ├── composable.cue │ │ │ └── plugin.json │ │ │ ├── panel-does-not-follow-slot-joinschema │ │ │ ├── composable.cue │ │ │ └── plugin.json │ │ │ ├── plugin-with-dist │ │ │ └── plugin │ │ │ │ ├── dist │ │ │ │ ├── MANIFEST.txt │ │ │ │ └── plugin.json │ │ │ │ └── plugin.json │ │ │ ├── pluginRootWithDist │ │ │ ├── datasource │ │ │ │ └── plugin.json │ │ │ ├── dist │ │ │ │ └── plugin.json │ │ │ └── panel │ │ │ │ ├── dist │ │ │ │ └── plugin.json │ │ │ │ └── src │ │ │ │ └── plugin.json │ │ │ ├── renderer-added-file │ │ │ └── plugin │ │ │ │ ├── MANIFEST.txt │ │ │ │ ├── chrome-win │ │ │ │ └── debug.log │ │ │ │ └── plugin.json │ │ │ ├── symbolic-plugin-dirs │ │ │ └── plugin │ │ │ ├── test-app-with-includes │ │ │ ├── dashboards │ │ │ │ └── memory.json │ │ │ └── plugin.json │ │ │ ├── test-app-with-roles │ │ │ ├── MANIFEST.txt │ │ │ └── plugin.json │ │ │ ├── test-app │ │ │ ├── MANIFEST.txt │ │ │ ├── dashboards │ │ │ │ ├── connections.json │ │ │ │ ├── connections_result.json │ │ │ │ └── memory.json │ │ │ └── plugin.json │ │ │ ├── unsigned-datasource │ │ │ └── plugin │ │ │ │ └── plugin.json │ │ │ ├── unsigned-panel │ │ │ └── plugin │ │ │ │ └── plugin.json │ │ │ ├── valid-model-datasource │ │ │ ├── composable_dataquery.cue │ │ │ ├── composable_datasourcecfg.cue │ │ │ └── plugin.json │ │ │ ├── valid-model-panel │ │ │ ├── composable.cue │ │ │ └── plugin.json │ │ │ ├── valid-v2-pvt-signature-root-url-uri │ │ │ └── plugin │ │ │ │ ├── MANIFEST.txt │ │ │ │ └── plugin.json │ │ │ ├── valid-v2-pvt-signature │ │ │ └── plugin │ │ │ │ ├── MANIFEST.txt │ │ │ │ └── plugin.json │ │ │ └── valid-v2-signature │ │ │ └── plugin │ │ │ ├── MANIFEST.txt │ │ │ └── plugin.json │ ├── models.go │ ├── pfs │ │ ├── decl.go │ │ ├── decl_parser.go │ │ ├── doc.go │ │ ├── errors.go │ │ ├── pfs.go │ │ ├── plugin.go │ │ └── plugindef_types.go │ ├── pluginrequestmeta │ │ ├── plugin_request_meta.go │ │ └── plugin_request_meta_test.go │ ├── plugins.go │ ├── plugins_test.go │ ├── pluginscdn │ │ ├── pluginscdn.go │ │ ├── pluginscdn_test.go │ │ ├── url_constructor.go │ │ └── url_constructor_test.go │ ├── repo │ │ ├── client.go │ │ ├── errors.go │ │ ├── errors_test.go │ │ ├── ifaces.go │ │ ├── models.go │ │ ├── service.go │ │ ├── service_test.go │ │ ├── version.go │ │ └── version_test.go │ ├── storage │ │ ├── fs.go │ │ ├── fs_test.go │ │ ├── ifaces.go │ │ ├── models.go │ │ └── testdata │ │ │ ├── grafana-simple-json-datasource-ec18fa4da8096a952608a7e4c7782b4260b41bcf.zip │ │ │ ├── plugin-with-absolute-member.zip │ │ │ ├── plugin-with-absolute-symlink-dir.zip │ │ │ ├── plugin-with-absolute-symlink.zip │ │ │ ├── plugin-with-parent-member.zip │ │ │ ├── plugin-with-symlink-dir.zip │ │ │ ├── plugin-with-symlink.zip │ │ │ └── plugin-with-symlinks.zip │ └── test_utils.go ├── promlib │ ├── README.md │ ├── client │ │ ├── client.go │ │ ├── client_test.go │ │ ├── transport.go │ │ └── transport_test.go │ ├── converter │ │ ├── prom.go │ │ ├── prom_test.go │ │ └── testdata │ │ │ ├── loki-streams-a-frame.jsonc │ │ │ ├── loki-streams-a.json │ │ │ ├── loki-streams-b-frame.jsonc │ │ │ ├── loki-streams-b.json │ │ │ ├── loki-streams-c-frame.jsonc │ │ │ ├── loki-streams-c.json │ │ │ ├── loki-streams-structured-metadata-frame.jsonc │ │ │ ├── loki-streams-structured-metadata.json │ │ │ ├── prom-error-frame.jsonc │ │ │ ├── prom-error.json │ │ │ ├── prom-exemplars-a-frame.json │ │ │ ├── prom-exemplars-a-frame.jsonc │ │ │ ├── prom-exemplars-a-golden.txt │ │ │ ├── prom-exemplars-a.json │ │ │ ├── prom-exemplars-b-frame.json │ │ │ ├── prom-exemplars-b-frame.jsonc │ │ │ ├── prom-exemplars-b-golden.txt │ │ │ ├── prom-exemplars-b.json │ │ │ ├── prom-exemplars-diff-labels-frame.jsonc │ │ │ ├── prom-exemplars-diff-labels.json │ │ │ ├── prom-exemplars-frame.jsonc │ │ │ ├── prom-exemplars.json │ │ │ ├── prom-labels-frame.jsonc │ │ │ ├── prom-labels.json │ │ │ ├── prom-matrix-frame.jsonc │ │ │ ├── prom-matrix-histogram-no-labels-frame.jsonc │ │ │ ├── prom-matrix-histogram-no-labels.json │ │ │ ├── prom-matrix-histogram-partitioned-frame.jsonc │ │ │ ├── prom-matrix-histogram-partitioned.json │ │ │ ├── prom-matrix-with-nans-frame.jsonc │ │ │ ├── prom-matrix-with-nans.json │ │ │ ├── prom-matrix.json │ │ │ ├── prom-scalar-frame.jsonc │ │ │ ├── prom-scalar.json │ │ │ ├── prom-series-frame.jsonc │ │ │ ├── prom-series.json │ │ │ ├── prom-string-frame.jsonc │ │ │ ├── prom-string.json │ │ │ ├── prom-vector-frame.jsonc │ │ │ ├── prom-vector-histogram-no-labels-frame.jsonc │ │ │ ├── prom-vector-histogram-no-labels.json │ │ │ ├── prom-vector.json │ │ │ ├── prom-warnings-frame.jsonc │ │ │ └── prom-warnings.json │ ├── go.mod │ ├── go.sum │ ├── healthcheck.go │ ├── healthcheck_test.go │ ├── heuristics.go │ ├── heuristics_test.go │ ├── instrumentation │ │ ├── instrumentation.go │ │ └── instrumentation_test.go │ ├── intervalv2 │ │ ├── intervalv2.go │ │ └── intervalv2_test.go │ ├── library.go │ ├── library_test.go │ ├── middleware │ │ ├── custom_query_params.go │ │ ├── custom_query_params_test.go │ │ ├── force_http_get.go │ │ └── force_http_get_test.go │ ├── models │ │ ├── query.go │ │ ├── query.panel.example.json │ │ ├── query.panel.schema.json │ │ ├── query.request.example.json │ │ ├── query.request.schema.json │ │ ├── query.types.json │ │ ├── query_test.go │ │ ├── result.go │ │ ├── scope.go │ │ └── scope_test.go │ ├── querydata │ │ ├── exemplar │ │ │ ├── framer.go │ │ │ ├── labels.go │ │ │ ├── sampler.go │ │ │ ├── sampler_stddev.go │ │ │ ├── sampler_stddev_test.go │ │ │ ├── sampler_test.go │ │ │ └── testdata │ │ │ │ ├── noop_sampler.jsonc │ │ │ │ └── stddev_sampler.jsonc │ │ ├── framing_bench_test.go │ │ ├── framing_test.go │ │ ├── request.go │ │ ├── request_test.go │ │ ├── response.go │ │ └── response_test.go │ ├── resource │ │ └── resource.go │ ├── testdata │ │ ├── exemplar.query.json │ │ ├── exemplar.result.golden.jsonc │ │ ├── exemplar.result.json │ │ ├── range_auto.query.json │ │ ├── range_auto.result.golden.jsonc │ │ ├── range_auto.result.json │ │ ├── range_infinity.query.json │ │ ├── range_infinity.result.golden.jsonc │ │ ├── range_infinity.result.json │ │ ├── range_missing.query.json │ │ ├── range_missing.result.golden.jsonc │ │ ├── range_missing.result.json │ │ ├── range_nan.query.json │ │ ├── range_nan.result.golden.jsonc │ │ ├── range_nan.result.json │ │ ├── range_simple.query.json │ │ ├── range_simple.result.golden.jsonc │ │ └── range_simple.result.json │ └── utils │ │ └── utils.go ├── registry │ ├── apis │ │ ├── apis.go │ │ ├── dashboard │ │ │ ├── access │ │ │ │ ├── sql_dashboards.go │ │ │ │ ├── token.go │ │ │ │ └── types.go │ │ │ ├── authorizer.go │ │ │ ├── legacy_storage.go │ │ │ ├── register.go │ │ │ ├── storage.go │ │ │ ├── sub_access.go │ │ │ ├── sub_versions.go │ │ │ └── summary_storage.go │ │ ├── dashboardsnapshot │ │ │ ├── conversions.go │ │ │ ├── exporter.go │ │ │ ├── options_storage.go │ │ │ ├── register.go │ │ │ ├── sql_storage.go │ │ │ └── sub_body.go │ │ ├── datasource │ │ │ ├── README.md │ │ │ ├── authorizer.go │ │ │ ├── connections.go │ │ │ ├── middleware.go │ │ │ ├── plugincontext.go │ │ │ ├── querier.go │ │ │ ├── register.go │ │ │ ├── sub_health.go │ │ │ ├── sub_proxy.go │ │ │ ├── sub_query.go │ │ │ ├── sub_resource.go │ │ │ └── sub_resource_test.go │ │ ├── example │ │ │ ├── dummy_storage.go │ │ │ ├── register.go │ │ │ ├── storage.go │ │ │ └── subresource.go │ │ ├── featuretoggle │ │ │ ├── README.md │ │ │ ├── current.go │ │ │ ├── current_test.go │ │ │ ├── features.go │ │ │ ├── register.go │ │ │ └── toggles.go │ │ ├── folders │ │ │ ├── continue.go │ │ │ ├── continue_test.go │ │ │ ├── conversions.go │ │ │ ├── legacy_storage.go │ │ │ ├── register.go │ │ │ ├── storage.go │ │ │ ├── sub_access.go │ │ │ ├── sub_count.go │ │ │ └── sub_parents.go │ │ ├── peakq │ │ │ ├── register.go │ │ │ ├── render.go │ │ │ ├── render_examples.go │ │ │ ├── render_examples_test.go │ │ │ └── storage.go │ │ ├── playlist │ │ │ ├── conversions.go │ │ │ ├── conversions_test.go │ │ │ ├── legacy_storage.go │ │ │ ├── register.go │ │ │ └── storage.go │ │ ├── query │ │ │ ├── README.md │ │ │ ├── client.go │ │ │ ├── client │ │ │ │ ├── plugin.go │ │ │ │ └── testdata.go │ │ │ ├── errors.go │ │ │ ├── errors_test.go │ │ │ ├── metrics.go │ │ │ ├── parser.go │ │ │ ├── parser_test.go │ │ │ ├── plugins.go │ │ │ ├── query.go │ │ │ ├── queryschema │ │ │ │ ├── oas_helper.go │ │ │ │ └── query_type_storage.go │ │ │ ├── register.go │ │ │ └── testdata │ │ │ │ ├── cyclic-references.json │ │ │ │ ├── multiple-uids-same-plugin.json │ │ │ │ ├── self-reference.json │ │ │ │ └── with-expressions.json │ │ ├── scope │ │ │ ├── find.go │ │ │ ├── find_test.go │ │ │ ├── register.go │ │ │ └── storage.go │ │ ├── service │ │ │ ├── register.go │ │ │ └── storage.go │ │ └── wireset.go │ ├── backgroundsvcs │ │ └── background_services.go │ ├── registry.go │ ├── schemas │ │ ├── composable_kind.go │ │ └── core_kind.go │ └── usagestatssvcs │ │ └── usage_stats_providers_registry.go ├── ruleguard.rules.go ├── server │ ├── doc.go │ ├── instrumentation_service.go │ ├── instrumentation_service_test.go │ ├── module_runner.go │ ├── module_server.go │ ├── module_server_test.go │ ├── runner.go │ ├── server.go │ ├── server_test.go │ ├── service.go │ ├── test_env.go │ ├── wire.go │ └── wireexts_oss.go ├── services │ ├── accesscontrol │ │ ├── accesscontrol.go │ │ ├── accesscontrol_test.go │ │ ├── acimpl │ │ │ ├── accesscontrol.go │ │ │ ├── accesscontrol_test.go │ │ │ ├── service.go │ │ │ ├── service_bench_test.go │ │ │ └── service_test.go │ │ ├── actest │ │ │ ├── common.go │ │ │ ├── fake.go │ │ │ └── store_mock.go │ │ ├── api │ │ │ ├── api.go │ │ │ └── api_test.go │ │ ├── authorize_in_org_test.go │ │ ├── cacheutils.go │ │ ├── cacheutils_test.go │ │ ├── checker.go │ │ ├── checker_test.go │ │ ├── database │ │ │ ├── database.go │ │ │ ├── database_test.go │ │ │ ├── externalservices.go │ │ │ ├── externalservices_test.go │ │ │ └── policies.go │ │ ├── errors.go │ │ ├── evaluator.go │ │ ├── evaluator_test.go │ │ ├── filter.go │ │ ├── filter_bench_test.go │ │ ├── filter_test.go │ │ ├── metadata.go │ │ ├── metadata_bench_test.go │ │ ├── metadata_test.go │ │ ├── middleware.go │ │ ├── middleware_test.go │ │ ├── migrator │ │ │ ├── migrator.go │ │ │ ├── migrator_bench_test.go │ │ │ └── migrator_test.go │ │ ├── mock │ │ │ ├── mock.go │ │ │ └── service_mock.go │ │ ├── models.go │ │ ├── models_test.go │ │ ├── ossaccesscontrol │ │ │ └── permissions_services.go │ │ ├── pluginutils │ │ │ ├── utils.go │ │ │ └── utils_test.go │ │ ├── resolvers.go │ │ ├── resolvers_test.go │ │ ├── resourcepermissions │ │ │ ├── api.go │ │ │ ├── api_test.go │ │ │ ├── error.go │ │ │ ├── fake.go │ │ │ ├── hook.go │ │ │ ├── middleware.go │ │ │ ├── models.go │ │ │ ├── options.go │ │ │ ├── service.go │ │ │ ├── service_test.go │ │ │ ├── store.go │ │ │ ├── store_bench_test.go │ │ │ └── store_test.go │ │ ├── roles.go │ │ ├── roles_test.go │ │ ├── scope.go │ │ ├── scope_test.go │ │ └── ssoutils │ │ │ └── utils.go │ ├── annotations │ │ ├── accesscontrol │ │ │ ├── accesscontrol.go │ │ │ ├── accesscontrol_test.go │ │ │ └── models.go │ │ ├── annotations.go │ │ ├── annotations_repository_mock.go │ │ ├── annotationsimpl │ │ │ ├── annotations.go │ │ │ ├── annotations_test.go │ │ │ ├── cleanup.go │ │ │ ├── cleanup_test.go │ │ │ ├── composite_store.go │ │ │ ├── composite_store_test.go │ │ │ ├── loki │ │ │ │ ├── historian_store.go │ │ │ │ └── historian_store_test.go │ │ │ ├── store.go │ │ │ ├── time.go │ │ │ ├── xorm_store.go │ │ │ └── xorm_store_test.go │ │ ├── annotationstest │ │ │ ├── fake.go │ │ │ └── fake_cleanup.go │ │ ├── models.go │ │ └── testutil │ │ │ └── testutil.go │ ├── anonymous │ │ ├── anonimpl │ │ │ ├── anonstore │ │ │ │ ├── database.go │ │ │ │ ├── database_test.go │ │ │ │ └── fake.go │ │ │ ├── api │ │ │ │ └── api.go │ │ │ ├── client.go │ │ │ ├── client_test.go │ │ │ ├── impl.go │ │ │ └── impl_test.go │ │ ├── anontest │ │ │ └── fake.go │ │ ├── service.go │ │ └── sortopts │ │ │ └── sortopts.go │ ├── apikey │ │ ├── apikey.go │ │ ├── apikeyimpl │ │ │ ├── apikey.go │ │ │ ├── store.go │ │ │ ├── store_test.go │ │ │ ├── xorm_store.go │ │ │ └── xorm_store_test.go │ │ ├── apikeytest │ │ │ └── fake.go │ │ └── model.go │ ├── apiserver │ │ ├── README.md │ │ ├── aggregator │ │ │ ├── README.md │ │ │ ├── aggregator.go │ │ │ ├── availableController.go │ │ │ ├── config.go │ │ │ ├── examples │ │ │ │ ├── autoregister │ │ │ │ │ └── apiservices.yaml │ │ │ │ └── manual-test │ │ │ │ │ ├── apiservice.yaml │ │ │ │ │ └── externalname.yaml │ │ │ └── resolver.go │ │ ├── auth │ │ │ ├── authenticator │ │ │ │ ├── provider.go │ │ │ │ ├── signedinuser.go │ │ │ │ └── signedinuser_test.go │ │ │ └── authorizer │ │ │ │ ├── impersonation.go │ │ │ │ ├── impersonation_test.go │ │ │ │ ├── org_id.go │ │ │ │ ├── org_role.go │ │ │ │ ├── provider.go │ │ │ │ └── stack_id.go │ │ ├── config.go │ │ ├── endpoints │ │ │ └── request │ │ │ │ ├── namespace.go │ │ │ │ └── namespace_test.go │ │ ├── options │ │ │ ├── aggregator.go │ │ │ ├── extra.go │ │ │ ├── options.go │ │ │ └── storage.go │ │ ├── service.go │ │ ├── standalone │ │ │ ├── factory.go │ │ │ ├── options │ │ │ │ ├── logging.go │ │ │ │ ├── metrics.go │ │ │ │ ├── options.go │ │ │ │ └── tracing.go │ │ │ ├── runtime.go │ │ │ └── runtime_test.go │ │ ├── storage │ │ │ └── entity │ │ │ │ ├── restoptions.go │ │ │ │ ├── selector.go │ │ │ │ ├── storage.go │ │ │ │ ├── test │ │ │ │ ├── requestinfo.go │ │ │ │ └── watch_test.go │ │ │ │ ├── utils.go │ │ │ │ └── utils_test.go │ │ ├── utils │ │ │ ├── clientConfig.go │ │ │ ├── meta.go │ │ │ ├── meta_test.go │ │ │ ├── tableConverter.go │ │ │ ├── tableConverter_test.go │ │ │ └── uids.go │ │ └── wireset.go │ ├── auth │ │ ├── auth.go │ │ ├── authimpl │ │ │ ├── auth_token.go │ │ │ ├── auth_token_test.go │ │ │ ├── model.go │ │ │ ├── token_cleanup.go │ │ │ └── token_cleanup_test.go │ │ ├── authtest │ │ │ └── testing.go │ │ ├── id.go │ │ ├── identity │ │ │ ├── error.go │ │ │ ├── namespace.go │ │ │ └── requester.go │ │ ├── idimpl │ │ │ ├── metrics.go │ │ │ ├── service.go │ │ │ ├── service_test.go │ │ │ └── signer.go │ │ ├── idtest │ │ │ └── mock.go │ │ └── jwt │ │ │ ├── auth.go │ │ │ ├── auth_test.go │ │ │ ├── jwt.go │ │ │ ├── key_sets.go │ │ │ ├── key_sets_test.go │ │ │ ├── rsa_keys_test.go │ │ │ ├── signing_test.go │ │ │ └── validation.go │ ├── authn │ │ ├── authn.go │ │ ├── authnimpl │ │ │ ├── metrics.go │ │ │ ├── priority_queue.go │ │ │ ├── priority_queue_test.go │ │ │ ├── registration.go │ │ │ ├── service.go │ │ │ ├── service_test.go │ │ │ ├── sync │ │ │ │ ├── oauth_token_sync.go │ │ │ │ ├── oauth_token_sync_test.go │ │ │ │ ├── org_sync.go │ │ │ │ ├── org_sync_test.go │ │ │ │ ├── rbac_sync.go │ │ │ │ ├── rbac_sync_test.go │ │ │ │ ├── user_sync.go │ │ │ │ └── user_sync_test.go │ │ │ ├── usage_stats.go │ │ │ └── usage_stats_test.go │ │ ├── authntest │ │ │ ├── fake.go │ │ │ └── mock.go │ │ ├── clients │ │ │ ├── api_key.go │ │ │ ├── api_key_test.go │ │ │ ├── basic.go │ │ │ ├── basic_test.go │ │ │ ├── constants.go │ │ │ ├── ext_jwt.go │ │ │ ├── ext_jwt_test.go │ │ │ ├── form.go │ │ │ ├── form_test.go │ │ │ ├── grafana.go │ │ │ ├── grafana_test.go │ │ │ ├── identity.go │ │ │ ├── jwt.go │ │ │ ├── jwt_test.go │ │ │ ├── ldap.go │ │ │ ├── ldap_test.go │ │ │ ├── oauth.go │ │ │ ├── oauth_test.go │ │ │ ├── password.go │ │ │ ├── password_test.go │ │ │ ├── proxy.go │ │ │ ├── proxy_test.go │ │ │ ├── render.go │ │ │ ├── render_test.go │ │ │ ├── session.go │ │ │ ├── session_test.go │ │ │ └── utils.go │ │ ├── error.go │ │ ├── identity.go │ │ └── namespace.go │ ├── caching │ │ ├── fake_caching_service.go │ │ └── service.go │ ├── cleanup │ │ ├── cleanup.go │ │ └── cleanup_test.go │ ├── cloudmigration │ │ ├── api │ │ │ ├── api.go │ │ │ └── api_test.go │ │ ├── cloudmigration.go │ │ ├── cloudmigrationimpl │ │ │ ├── cloudmigration.go │ │ │ ├── cloudmigration_noop.go │ │ │ ├── cloudmigration_test.go │ │ │ ├── gcomstub.go │ │ │ ├── metric.go │ │ │ ├── store.go │ │ │ ├── xorm_store.go │ │ │ └── xorm_store_test.go │ │ ├── cmsclient │ │ │ ├── client.go │ │ │ ├── cms_client.go │ │ │ └── inmemory_client.go │ │ └── model.go │ ├── contexthandler │ │ ├── contexthandler.go │ │ ├── contexthandler_test.go │ │ ├── ctxkey │ │ │ └── key.go │ │ └── model │ │ │ ├── model.go │ │ │ └── model_test.go │ ├── correlations │ │ ├── accesscontrol.go │ │ ├── api.go │ │ ├── correlations.go │ │ ├── correlationstest │ │ │ └── fake.go │ │ ├── database.go │ │ ├── models.go │ │ └── models_test.go │ ├── dashboardimport │ │ ├── api │ │ │ ├── api.go │ │ │ └── api_test.go │ │ ├── dashboardimport.go │ │ ├── service │ │ │ ├── service.go │ │ │ ├── service_test.go │ │ │ └── testdata │ │ │ │ └── dashboard.json │ │ └── utils │ │ │ ├── dash_template_evaluator.go │ │ │ └── dash_template_evaluator_test.go │ ├── dashboards │ │ ├── accesscontrol.go │ │ ├── accesscontrol_test.go │ │ ├── dashboard.go │ │ ├── dashboard_provisioning_mock.go │ │ ├── dashboard_service_mock.go │ │ ├── dashboardaccess │ │ │ ├── dashboard_access.go │ │ │ └── dashboard_access_test.go │ │ ├── database │ │ │ ├── database.go │ │ │ ├── database_folder_test.go │ │ │ ├── database_provisioning_test.go │ │ │ ├── database_test.go │ │ │ └── migrations │ │ │ │ └── folder_uid_migrator.go │ │ ├── errors.go │ │ ├── models.go │ │ ├── models_test.go │ │ ├── service │ │ │ ├── dashboard_service.go │ │ │ ├── dashboard_service_integration_test.go │ │ │ ├── dashboard_service_test.go │ │ │ ├── metrics.go │ │ │ └── service.go │ │ └── store_mock.go │ ├── dashboardsnapshots │ │ ├── database │ │ │ ├── database.go │ │ │ └── database_test.go │ │ ├── errors.go │ │ ├── models.go │ │ ├── service.go │ │ ├── service │ │ │ ├── service.go │ │ │ └── service_test.go │ │ ├── service_mock.go │ │ └── store.go │ ├── dashboardversion │ │ ├── dashver.go │ │ ├── dashverimpl │ │ │ ├── dashver.go │ │ │ ├── dashver_test.go │ │ │ ├── store.go │ │ │ ├── store_test.go │ │ │ ├── xorm_store.go │ │ │ └── xorm_store_test.go │ │ ├── dashvertest │ │ │ └── fake.go │ │ └── model.go │ ├── datasourceproxy │ │ ├── datasourceproxy.go │ │ └── datasourceproxy_test.go │ ├── datasources │ │ ├── accesscontrol.go │ │ ├── datasources.go │ │ ├── errors.go │ │ ├── fakes │ │ │ ├── fake_cache_service.go │ │ │ └── fake_datasource_service.go │ │ ├── guardian │ │ │ ├── allow_guardian.go │ │ │ └── provider.go │ │ ├── models.go │ │ ├── models_test.go │ │ └── service │ │ │ ├── cache.go │ │ │ ├── datasource.go │ │ │ ├── datasource_test.go │ │ │ ├── legacy.go │ │ │ ├── store.go │ │ │ └── store_test.go │ ├── encryption │ │ ├── encryption.go │ │ ├── encryption_test.go │ │ ├── provider │ │ │ ├── cipher_aescfb.go │ │ │ ├── cipher_aescfb_test.go │ │ │ ├── decipher_aes.go │ │ │ ├── decipher_aes_test.go │ │ │ └── provider.go │ │ └── service │ │ │ ├── helpers.go │ │ │ ├── service.go │ │ │ └── service_test.go │ ├── extsvcauth │ │ ├── errors.go │ │ ├── models.go │ │ ├── registry │ │ │ ├── service.go │ │ │ └── service_test.go │ │ └── tests │ │ │ └── extsvcregmock.go │ ├── featuremgmt │ │ ├── codeowners.go │ │ ├── manager.go │ │ ├── manager_test.go │ │ ├── models.go │ │ ├── registry.go │ │ ├── service.go │ │ ├── service_test.go │ │ ├── strcase │ │ │ ├── camel.go │ │ │ └── snake.go │ │ ├── toggles_gen.csv │ │ ├── toggles_gen.go │ │ ├── toggles_gen.json │ │ ├── toggles_gen_test.go │ │ ├── usage_stats.go │ │ └── usage_stats_test.go │ ├── folder │ │ ├── folderimpl │ │ │ ├── dashboard_folder_store.go │ │ │ ├── dashboard_folder_store_test.go │ │ │ ├── folder.go │ │ │ ├── folder_test.go │ │ │ ├── metrics.go │ │ │ ├── sqlstore.go │ │ │ ├── sqlstore_test.go │ │ │ ├── store.go │ │ │ └── store_fake.go │ │ ├── foldertest │ │ │ ├── folder_store_mock.go │ │ │ └── foldertest.go │ │ ├── model.go │ │ ├── registry.go │ │ └── service.go │ ├── gcom │ │ └── gcom.go │ ├── grpcserver │ │ ├── README.md │ │ ├── context │ │ │ ├── context.go │ │ │ └── handler.go │ │ ├── health.go │ │ ├── interceptors │ │ │ ├── auth.go │ │ │ ├── auth_test.go │ │ │ ├── logging.go │ │ │ └── tracing.go │ │ ├── reflection.go │ │ └── service.go │ ├── guardian │ │ ├── accesscontrol_guardian.go │ │ ├── accesscontrol_guardian_test.go │ │ ├── guardian.go │ │ └── provider.go │ ├── hooks │ │ └── hooks.go │ ├── kmsproviders │ │ ├── defaultprovider │ │ │ └── grafana_provider.go │ │ ├── kmsproviders.go │ │ └── osskmsproviders │ │ │ └── osskmsproviders.go │ ├── ldap │ │ ├── api │ │ │ ├── dtos.go │ │ │ ├── errors.go │ │ │ ├── service.go │ │ │ ├── service_test.go │ │ │ └── support_bundle.go │ │ ├── helpers.go │ │ ├── ldap.go │ │ ├── ldap_groups.go │ │ ├── ldap_helpers_test.go │ │ ├── ldap_login_test.go │ │ ├── ldap_private_test.go │ │ ├── ldap_test.go │ │ ├── model.go │ │ ├── multildap │ │ │ ├── multidap_mock.go │ │ │ ├── multildap.go │ │ │ └── multildap_test.go │ │ ├── service │ │ │ ├── fake.go │ │ │ ├── helpers.go │ │ │ └── ldap.go │ │ ├── settings.go │ │ ├── settings_test.go │ │ ├── testdata │ │ │ └── ldap.toml │ │ └── testing.go │ ├── libraryelements │ │ ├── accesscontrol.go │ │ ├── api.go │ │ ├── database.go │ │ ├── guard.go │ │ ├── libraryelements.go │ │ ├── libraryelements_create_test.go │ │ ├── libraryelements_delete_test.go │ │ ├── libraryelements_get_all_test.go │ │ ├── libraryelements_get_test.go │ │ ├── libraryelements_patch_test.go │ │ ├── libraryelements_permissions_test.go │ │ ├── libraryelements_test.go │ │ ├── model │ │ │ └── model.go │ │ └── writers.go │ ├── librarypanels │ │ ├── librarypanels.go │ │ ├── librarypanels_test.go │ │ └── models.go │ ├── licensing │ │ ├── accesscontrol.go │ │ ├── licensingtest │ │ │ └── fake.go │ │ ├── models.go │ │ └── oss.go │ ├── live │ │ ├── convert │ │ │ └── convert.go │ │ ├── database │ │ │ ├── storage.go │ │ │ └── tests │ │ │ │ ├── setup.go │ │ │ │ └── storage_test.go │ │ ├── features │ │ │ ├── broadcast.go │ │ │ ├── broadcast_mock.go │ │ │ ├── broadcast_test.go │ │ │ ├── dashboard.go │ │ │ ├── plugin.go │ │ │ └── plugin_mock.go │ │ ├── live.go │ │ ├── live_test.go │ │ ├── livecontext │ │ │ └── context.go │ │ ├── liveplugin │ │ │ └── plugin.go │ │ ├── managedstream │ │ │ ├── cache.go │ │ │ ├── cache_memory.go │ │ │ ├── cache_memory_test.go │ │ │ ├── cache_redis.go │ │ │ ├── cache_redis_test.go │ │ │ ├── runner.go │ │ │ └── runner_test.go │ │ ├── model │ │ │ └── model.go │ │ ├── orgchannel │ │ │ ├── orgchannel.go │ │ │ └── orgchannel_test.go │ │ ├── pipeline │ │ │ ├── auth.go │ │ │ ├── compare.go │ │ │ ├── condition_type.go │ │ │ ├── config.go │ │ │ ├── converter_influx_auto.go │ │ │ ├── converter_json_auto.go │ │ │ ├── converter_json_auto_test.go │ │ │ ├── converter_json_frame.go │ │ │ ├── data_output_builtin.go │ │ │ ├── data_output_local_subscribers.go │ │ │ ├── data_output_loki.go │ │ │ ├── data_output_redirect.go │ │ │ ├── devdata.go │ │ │ ├── frame_condition_checker.go │ │ │ ├── frame_condition_checker_multiple.go │ │ │ ├── frame_condition_number_compare.go │ │ │ ├── frame_output_changelog.go │ │ │ ├── frame_output_changelog_test.go │ │ │ ├── frame_output_conditional.go │ │ │ ├── frame_output_local_subscribers.go │ │ │ ├── frame_output_loki.go │ │ │ ├── frame_output_managed_stream.go │ │ │ ├── frame_output_multiple.go │ │ │ ├── frame_output_redirect.go │ │ │ ├── frame_output_remote_write.go │ │ │ ├── frame_output_remote_write_test.go │ │ │ ├── frame_output_threshold.go │ │ │ ├── frame_output_threshold_mock.go │ │ │ ├── frame_output_threshold_test.go │ │ │ ├── frame_processor_drop_field.go │ │ │ ├── frame_processor_keep_field.go │ │ │ ├── frame_processor_multiple.go │ │ │ ├── frame_storage.go │ │ │ ├── json_to_frame.go │ │ │ ├── logger.go │ │ │ ├── models.go │ │ │ ├── pattern │ │ │ │ ├── pattern.go │ │ │ │ └── pattern_test.go │ │ │ ├── pipeline.go │ │ │ ├── pipeline_test.go │ │ │ ├── registry.go │ │ │ ├── rule_builder.go │ │ │ ├── rule_builder_storage.go │ │ │ ├── rule_cache_segmented.go │ │ │ ├── rule_cache_segmented_test.go │ │ │ ├── storage.go │ │ │ ├── storage_file.go │ │ │ ├── subscribe_builtin.go │ │ │ ├── subscribe_managed_stream.go │ │ │ ├── subscribe_multiple.go │ │ │ ├── testdata │ │ │ │ ├── json_auto.golden.jsonc │ │ │ │ ├── json_auto.json │ │ │ │ ├── json_exact.golden.jsonc │ │ │ │ └── json_exact.json │ │ │ └── tree │ │ │ │ ├── LICENSE │ │ │ │ ├── bytesconv.go │ │ │ │ ├── params.go │ │ │ │ ├── readme.md │ │ │ │ ├── tree.go │ │ │ │ └── tree_test.go │ │ ├── pushhttp │ │ │ └── push.go │ │ ├── pushurl │ │ │ ├── values.go │ │ │ └── values_test.go │ │ ├── pushws │ │ │ ├── push_pipeline.go │ │ │ ├── push_stream.go │ │ │ └── ws.go │ │ ├── remotewrite │ │ │ ├── convert.go │ │ │ ├── remotewrite.go │ │ │ └── remotewrite_test.go │ │ ├── runstream │ │ │ ├── manager.go │ │ │ ├── manager_test.go │ │ │ └── mock.go │ │ ├── survey │ │ │ └── survey.go │ │ └── telemetry │ │ │ ├── converter.go │ │ │ └── telegraf │ │ │ ├── convert.go │ │ │ ├── convert_test.go │ │ │ └── testdata │ │ │ ├── changing_types_NaN.golden.txt │ │ │ ├── changing_types_NaN.jsonc │ │ │ ├── changing_types_NaN.txt │ │ │ ├── golden_labels_column.json │ │ │ ├── golden_wide.json │ │ │ ├── incomplete_fields.txt │ │ │ ├── incomplete_fields_2.txt │ │ │ ├── incomplete_fields_full.txt │ │ │ ├── mixed_number_types.txt │ │ │ ├── part_metrics_different_labels_different_time.txt │ │ │ ├── same_metrics_different_labels_different_time.txt │ │ │ ├── same_metrics_different_labels_same_time.txt │ │ │ ├── same_metrics_same_labels_different_time.txt │ │ │ ├── single_metric.txt │ │ │ └── single_metric_different_field_order.txt │ ├── login │ │ ├── authinfo.go │ │ ├── authinfo_test.go │ │ ├── authinfoimpl │ │ │ ├── service.go │ │ │ ├── store.go │ │ │ ├── store_test.go │ │ │ └── userprotection.go │ │ ├── authinfotest │ │ │ └── fake.go │ │ ├── model.go │ │ └── userprotection.go │ ├── loginattempt │ │ ├── login_attempt.go │ │ ├── loginattemptimpl │ │ │ ├── login_attempt.go │ │ │ ├── login_attempt_test.go │ │ │ ├── models.go │ │ │ ├── store.go │ │ │ └── store_test.go │ │ └── loginattempttest │ │ │ ├── fake.go │ │ │ └── mock.go │ ├── navtree │ │ ├── models.go │ │ ├── models_test.go │ │ ├── navtree.go │ │ └── navtreeimpl │ │ │ ├── admin.go │ │ │ ├── applinks.go │ │ │ ├── applinks_test.go │ │ │ └── navtree.go │ ├── ngalert │ │ ├── CHANGELOG.md │ │ ├── README.md │ │ ├── accesscontrol.go │ │ ├── accesscontrol │ │ │ ├── accesscontrol.go │ │ │ ├── fakes │ │ │ │ └── rules.go │ │ │ ├── models.go │ │ │ ├── rules.go │ │ │ ├── rules_test.go │ │ │ ├── silences.go │ │ │ ├── silences_test.go │ │ │ └── testing.go │ │ ├── api │ │ │ ├── api.go │ │ │ ├── api_alertmanager.go │ │ │ ├── api_alertmanager_guards.go │ │ │ ├── api_alertmanager_guards_test.go │ │ │ ├── api_alertmanager_silences.go │ │ │ ├── api_alertmanager_silences_test.go │ │ │ ├── api_alertmanager_test.go │ │ │ ├── api_configuration.go │ │ │ ├── api_configuration_test.go │ │ │ ├── api_notifications.go │ │ │ ├── api_notifications_test.go │ │ │ ├── api_prometheus.go │ │ │ ├── api_prometheus_test.go │ │ │ ├── api_prometheus_test_fixtures.go │ │ │ ├── api_provisioning.go │ │ │ ├── api_provisioning_test.go │ │ │ ├── api_ruler.go │ │ │ ├── api_ruler_export.go │ │ │ ├── api_ruler_export_test.go │ │ │ ├── api_ruler_history.go │ │ │ ├── api_ruler_test.go │ │ │ ├── api_ruler_validation.go │ │ │ ├── api_ruler_validation_test.go │ │ │ ├── api_testing.go │ │ │ ├── api_testing_test.go │ │ │ ├── authorization.go │ │ │ ├── authorization_test.go │ │ │ ├── compat.go │ │ │ ├── compat_contact_points.go │ │ │ ├── compat_contact_points_test.go │ │ │ ├── compat_silences.go │ │ │ ├── compat_test.go │ │ │ ├── configuration.go │ │ │ ├── errors.go │ │ │ ├── forking_alertmanager.go │ │ │ ├── forking_prometheus.go │ │ │ ├── forking_ruler.go │ │ │ ├── generated_base_api_alertmanager.go │ │ │ ├── generated_base_api_configuration.go │ │ │ ├── generated_base_api_history.go │ │ │ ├── generated_base_api_notifications.go │ │ │ ├── generated_base_api_prometheus.go │ │ │ ├── generated_base_api_provisioning.go │ │ │ ├── generated_base_api_ruler.go │ │ │ ├── generated_base_api_testing.go │ │ │ ├── hcl │ │ │ │ ├── hcl.go │ │ │ │ └── hcl_test.go │ │ │ ├── hooks.go │ │ │ ├── hooks_test.go │ │ │ ├── lotex_am.go │ │ │ ├── lotex_prom.go │ │ │ ├── lotex_ruler.go │ │ │ ├── lotex_ruler_test.go │ │ │ ├── notifications.go │ │ │ ├── persist.go │ │ │ ├── promql_compat.go │ │ │ ├── promql_compat_test.go │ │ │ ├── provisioning.go │ │ │ ├── ruler_history.go │ │ │ ├── test-data │ │ │ │ ├── admin_config.http │ │ │ │ ├── alertmanager_default_mutetimings-export.hcl │ │ │ │ ├── alertmanager_default_mutetimings-export.json │ │ │ │ ├── alertmanager_default_mutetimings-export.yaml │ │ │ │ ├── am-alertmanager-recipient.http │ │ │ │ ├── am-grafana-recipient.http │ │ │ │ ├── am-unsupported-backends.http │ │ │ │ ├── post-rulegroup-101-export.hcl │ │ │ │ ├── post-rulegroup-101-export.json │ │ │ │ ├── post-rulegroup-101-export.yaml │ │ │ │ ├── post-rulegroup-101.json │ │ │ │ ├── post-rulegroup-42.json │ │ │ │ ├── post-silence-data.json │ │ │ │ ├── post-user-config.json │ │ │ │ ├── prom.http │ │ │ │ ├── ruler-cortex-recipient.http │ │ │ │ ├── ruler-grafana-recipient.http │ │ │ │ ├── ruler-loki-recipient.http │ │ │ │ ├── test-receiver.json │ │ │ │ ├── test-rule.json │ │ │ │ └── test.http │ │ │ ├── testing.go │ │ │ ├── testing_api.go │ │ │ ├── tooling │ │ │ │ ├── .gitignore │ │ │ │ ├── Makefile │ │ │ │ ├── README.md │ │ │ │ ├── api.json │ │ │ │ ├── cmd │ │ │ │ │ └── clean-swagger │ │ │ │ │ │ └── main.go │ │ │ │ ├── definitions │ │ │ │ │ ├── admin.go │ │ │ │ │ ├── alertmanager.go │ │ │ │ │ ├── alertmanager_test.go │ │ │ │ │ ├── alertmanager_test_artifact.json │ │ │ │ │ ├── alertmanager_test_artifact.yaml │ │ │ │ │ ├── alertmanager_validation.go │ │ │ │ │ ├── alertmanager_validation_test.go │ │ │ │ │ ├── api.go │ │ │ │ │ ├── contact_points.go │ │ │ │ │ ├── cortex-ruler.go │ │ │ │ │ ├── cortex-ruler_test.go │ │ │ │ │ ├── eval_condition.go │ │ │ │ │ ├── prom.go │ │ │ │ │ ├── prom_bench.sh │ │ │ │ │ ├── prom_bench_test.go │ │ │ │ │ ├── prom_test.go │ │ │ │ │ ├── provisioning.go │ │ │ │ │ ├── provisioning_alert_rules.go │ │ │ │ │ ├── provisioning_contactpoints.go │ │ │ │ │ ├── provisioning_mute_timings.go │ │ │ │ │ ├── provisioning_policies.go │ │ │ │ │ ├── provisioning_policies_test.go │ │ │ │ │ ├── provisioning_templates.go │ │ │ │ │ ├── receivers.go │ │ │ │ │ ├── ruler_state_history.go │ │ │ │ │ ├── shared.go │ │ │ │ │ ├── testing.go │ │ │ │ │ ├── testing_test.go │ │ │ │ │ └── time_intervals.go │ │ │ │ ├── index.html │ │ │ │ ├── post.json │ │ │ │ ├── spec.json │ │ │ │ └── swagger-codegen │ │ │ │ │ └── templates │ │ │ │ │ ├── controller-api.mustache │ │ │ │ │ └── partial_header.mustache │ │ │ ├── util.go │ │ │ └── util_test.go │ │ ├── backtesting │ │ │ ├── engine.go │ │ │ ├── engine_test.go │ │ │ ├── eval_data.go │ │ │ ├── eval_data_test.go │ │ │ ├── eval_query.go │ │ │ └── eval_query_test.go │ │ ├── client │ │ │ ├── client.go │ │ │ └── client_test.go │ │ ├── eval │ │ │ ├── context.go │ │ │ ├── eval.go │ │ │ ├── eval_bench_test.go │ │ │ ├── eval_mocks │ │ │ │ ├── ConditionEvaluator.go │ │ │ │ └── FakeFactory.go │ │ │ ├── eval_test.go │ │ │ ├── extract_md.go │ │ │ ├── extract_md_test.go │ │ │ └── testing.go │ │ ├── image │ │ │ ├── cache.go │ │ │ ├── cache_mock.go │ │ │ ├── cache_test.go │ │ │ ├── service.go │ │ │ ├── service_test.go │ │ │ ├── upload.go │ │ │ └── upload_test.go │ │ ├── limits.go │ │ ├── limits_test.go │ │ ├── metrics │ │ │ ├── alertmanager.go │ │ │ ├── api.go │ │ │ ├── historian.go │ │ │ ├── multi_org_alertmanager.go │ │ │ ├── ngalert.go │ │ │ ├── remote_alertmanager.go │ │ │ ├── scheduler.go │ │ │ ├── state.go │ │ │ └── util.go │ │ ├── models │ │ │ ├── admin_configuration.go │ │ │ ├── admin_configuration_test.go │ │ │ ├── alert_query.go │ │ │ ├── alert_query_test.go │ │ │ ├── alert_rule.go │ │ │ ├── alert_rule_test.go │ │ │ ├── alertmanager.go │ │ │ ├── constants.go │ │ │ ├── errors.go │ │ │ ├── history.go │ │ │ ├── image.go │ │ │ ├── image_test.go │ │ │ ├── instance.go │ │ │ ├── instance_labels.go │ │ │ ├── instance_test.go │ │ │ ├── notifications.go │ │ │ ├── notifications_test.go │ │ │ ├── provisioning.go │ │ │ ├── receivers.go │ │ │ ├── silence.go │ │ │ ├── silence_test.go │ │ │ ├── testing.go │ │ │ └── time.go │ │ ├── ngalert.go │ │ ├── ngalert_test.go │ │ ├── notifier │ │ │ ├── alertmanager.go │ │ │ ├── alertmanager_config.go │ │ │ ├── alertmanager_mock │ │ │ │ └── Alertmanager.go │ │ │ ├── alertmanager_test.go │ │ │ ├── alerts.go │ │ │ ├── autogen_alertmanager.go │ │ │ ├── autogen_alertmanager_test.go │ │ │ ├── channels_config │ │ │ │ ├── available_channels.go │ │ │ │ └── plugin.go │ │ │ ├── compat.go │ │ │ ├── compat_test.go │ │ │ ├── config.go │ │ │ ├── config_test.go │ │ │ ├── crypto.go │ │ │ ├── email_test.go │ │ │ ├── errors.go │ │ │ ├── file_store.go │ │ │ ├── file_store_test.go │ │ │ ├── images.go │ │ │ ├── images_test.go │ │ │ ├── log.go │ │ │ ├── multiorg_alertmanager.go │ │ │ ├── multiorg_alertmanager_remote_test.go │ │ │ ├── multiorg_alertmanager_test.go │ │ │ ├── receiver_svc.go │ │ │ ├── receiver_svc_test.go │ │ │ ├── redis_channel.go │ │ │ ├── redis_channel_test.go │ │ │ ├── redis_peer.go │ │ │ ├── redis_peer_test.go │ │ │ ├── sender.go │ │ │ ├── silence_svc.go │ │ │ ├── silences.go │ │ │ ├── status.go │ │ │ ├── templates.go │ │ │ ├── templates_test.go │ │ │ ├── testing.go │ │ │ ├── testreceivers.go │ │ │ ├── testreceivers_test.go │ │ │ └── validation.go │ │ ├── provisioning │ │ │ ├── accesscontrol.go │ │ │ ├── accesscontrol_test.go │ │ │ ├── alert_rules.go │ │ │ ├── alert_rules_test.go │ │ │ ├── compat.go │ │ │ ├── config.go │ │ │ ├── config_test.go │ │ │ ├── contactpoints.go │ │ │ ├── contactpoints_test.go │ │ │ ├── errors.go │ │ │ ├── mute_timings.go │ │ │ ├── mute_timings_test.go │ │ │ ├── notification_policies.go │ │ │ ├── notification_policies_test.go │ │ │ ├── persist.go │ │ │ ├── persist_mock.go │ │ │ ├── provenance.go │ │ │ ├── provisioning_store_mock.go │ │ │ ├── provisioning_test.go │ │ │ ├── quota_checker_mock.go │ │ │ ├── templates.go │ │ │ ├── templates_test.go │ │ │ └── testing.go │ │ ├── remote │ │ │ ├── alertmanager.go │ │ │ ├── alertmanager_test.go │ │ │ ├── client │ │ │ │ ├── alertmanager.go │ │ │ │ ├── alertmanager_configuration.go │ │ │ │ ├── alertmanager_state.go │ │ │ │ ├── mimir.go │ │ │ │ └── mimir_auth_round_tripper.go │ │ │ ├── forked_alertmanager_test.go │ │ │ ├── mock │ │ │ │ └── remoteAlertmanager.go │ │ │ ├── remote_primary_forked_alertmanager.go │ │ │ └── remote_secondary_forked_alertmanager.go │ │ ├── schedule │ │ │ ├── alert_rule.go │ │ │ ├── alert_rule_test.go │ │ │ ├── alerts_sender_mock.go │ │ │ ├── fetcher.go │ │ │ ├── jitter.go │ │ │ ├── jitter_test.go │ │ │ ├── loaded_metrics_reader.go │ │ │ ├── loaded_metrics_reader_test.go │ │ │ ├── metrics.go │ │ │ ├── metrics_test.go │ │ │ ├── recording_rule.go │ │ │ ├── recording_rule_test.go │ │ │ ├── registry.go │ │ │ ├── registry_bench_test.go │ │ │ ├── registry_test.go │ │ │ ├── schedule.go │ │ │ ├── schedule_unit_test.go │ │ │ └── testing.go │ │ ├── sender │ │ │ ├── notifier.go │ │ │ ├── notifier_ext.go │ │ │ ├── router.go │ │ │ ├── router_test.go │ │ │ ├── sender.go │ │ │ ├── sender_test.go │ │ │ └── testing.go │ │ ├── state │ │ │ ├── cache.go │ │ │ ├── cache_bench_test.go │ │ │ ├── cache_test.go │ │ │ ├── compat.go │ │ │ ├── compat_test.go │ │ │ ├── historian │ │ │ │ ├── annotation.go │ │ │ │ ├── annotation_store.go │ │ │ │ ├── annotation_test.go │ │ │ │ ├── backend.go │ │ │ │ ├── core.go │ │ │ │ ├── core_test.go │ │ │ │ ├── dashboard.go │ │ │ │ ├── dashboard_test.go │ │ │ │ ├── encode.go │ │ │ │ ├── loki.go │ │ │ │ ├── loki_http.go │ │ │ │ ├── loki_http_test.go │ │ │ │ ├── loki_test.go │ │ │ │ ├── model │ │ │ │ │ ├── rule.go │ │ │ │ │ └── rule_test.go │ │ │ │ ├── multiple.go │ │ │ │ ├── multiple_test.go │ │ │ │ ├── noop.go │ │ │ │ ├── query.go │ │ │ │ └── testing.go │ │ │ ├── image_mock.go │ │ │ ├── manager.go │ │ │ ├── manager_bench_test.go │ │ │ ├── manager_private_test.go │ │ │ ├── manager_test.go │ │ │ ├── persist.go │ │ │ ├── persister_async.go │ │ │ ├── persister_async_test.go │ │ │ ├── persister_noop.go │ │ │ ├── persister_sync.go │ │ │ ├── persister_sync_test.go │ │ │ ├── state.go │ │ │ ├── state_test.go │ │ │ ├── template │ │ │ │ ├── funcs.go │ │ │ │ ├── funcs_test.go │ │ │ │ ├── template.go │ │ │ │ └── template_test.go │ │ │ └── testing.go │ │ ├── store │ │ │ ├── admin_configuration.go │ │ │ ├── admin_configuration_store_mock.go │ │ │ ├── alert_rule.go │ │ │ ├── alert_rule_test.go │ │ │ ├── alertmanager.go │ │ │ ├── alertmanager_test.go │ │ │ ├── database.go │ │ │ ├── deltas.go │ │ │ ├── deltas_test.go │ │ │ ├── image.go │ │ │ ├── image_test.go │ │ │ ├── instance_database.go │ │ │ ├── instance_database_test.go │ │ │ ├── org.go │ │ │ ├── provisioning_store.go │ │ │ ├── provisioning_store_test.go │ │ │ ├── range_to_instant.go │ │ │ ├── range_to_instant_test.go │ │ │ ├── testing.go │ │ │ └── transactions.go │ │ ├── tests │ │ │ ├── fakes │ │ │ │ ├── config.go │ │ │ │ ├── kvstore.go │ │ │ │ ├── provisioning.go │ │ │ │ ├── receivers.go │ │ │ │ └── rules.go │ │ │ └── util.go │ │ └── testutil │ │ │ └── testutil.go │ ├── notifications │ │ ├── codes.go │ │ ├── codes_test.go │ │ ├── email.go │ │ ├── mailer.go │ │ ├── mock.go │ │ ├── models.go │ │ ├── notifications.go │ │ ├── notifications_test.go │ │ ├── send_email_integration_test.go │ │ ├── smtp.go │ │ ├── smtp_test.go │ │ ├── testing.go │ │ └── webhook.go │ ├── oauthtoken │ │ ├── oauth_token.go │ │ ├── oauth_token_test.go │ │ └── oauthtokentest │ │ │ ├── mock.go │ │ │ ├── oauthtokentest.go │ │ │ └── service_mock.go │ ├── org │ │ ├── model.go │ │ ├── org.go │ │ ├── orgimpl │ │ │ ├── org.go │ │ │ ├── org_test.go │ │ │ ├── store.go │ │ │ └── store_test.go │ │ └── orgtest │ │ │ ├── fake.go │ │ │ └── mock.go │ ├── playlist │ │ ├── model.go │ │ ├── playlist.go │ │ ├── playlistimpl │ │ │ ├── playlist.go │ │ │ ├── store.go │ │ │ ├── store_test.go │ │ │ ├── xorm_store.go │ │ │ └── xorm_store_test.go │ │ └── playlisttest │ │ │ └── fake.go │ ├── plugindashboards │ │ ├── plugindashboards.go │ │ └── service │ │ │ ├── dashboard_updater.go │ │ │ ├── dashboard_updater_test.go │ │ │ ├── service.go │ │ │ └── service_test.go │ ├── pluginsintegration │ │ ├── adapters │ │ │ └── adapters.go │ │ ├── angulardetectorsprovider │ │ │ ├── dynamic.go │ │ │ ├── dynamic_test.go │ │ │ ├── gcom.go │ │ │ └── gcom_test.go │ │ ├── angularinspector │ │ │ ├── angularinspector.go │ │ │ └── angularinspector_test.go │ │ ├── angularpatternsstore │ │ │ ├── store.go │ │ │ └── store_test.go │ │ ├── cachekvstore │ │ │ ├── cachekvstore.go │ │ │ ├── cachekvstore_test.go │ │ │ └── doc.go │ │ ├── clientmiddleware │ │ │ ├── base_middleware.go │ │ │ ├── caching_metrics.go │ │ │ ├── caching_middleware.go │ │ │ ├── caching_middleware_test.go │ │ │ ├── clear_auth_headers_middleware.go │ │ │ ├── clear_auth_headers_middleware_test.go │ │ │ ├── contextual_logger_middleware.go │ │ │ ├── cookies_middleware.go │ │ │ ├── cookies_middleware_test.go │ │ │ ├── forward_id_middleware.go │ │ │ ├── forward_id_middleware_test.go │ │ │ ├── grafana_request_id_header_middleware.go │ │ │ ├── grafana_request_id_header_middleware_test.go │ │ │ ├── httpclient_middleware.go │ │ │ ├── httpclient_middleware_test.go │ │ │ ├── logger_middleware.go │ │ │ ├── metrics_middleware.go │ │ │ ├── metrics_middleware_test.go │ │ │ ├── oauthtoken_middleware.go │ │ │ ├── oauthtoken_middleware_test.go │ │ │ ├── plugin_request_meta_middleware.go │ │ │ ├── plugin_request_meta_middleware_test.go │ │ │ ├── resource_response_middleware.go │ │ │ ├── resource_response_middleware_test.go │ │ │ ├── status_source_middleware.go │ │ │ ├── status_source_middleware_test.go │ │ │ ├── testing.go │ │ │ ├── tracing_header_middleware.go │ │ │ ├── tracing_header_middleware_test.go │ │ │ ├── tracing_middleware.go │ │ │ ├── tracing_middleware_test.go │ │ │ ├── user_header_middleware.go │ │ │ ├── user_header_middleware_test.go │ │ │ ├── utils.go │ │ │ └── utils_test.go │ │ ├── dashboards │ │ │ ├── filestore.go │ │ │ ├── filestore_test.go │ │ │ └── ifaces.go │ │ ├── doc.go │ │ ├── keyretriever │ │ │ ├── dynamic │ │ │ │ ├── dynamic_retriever.go │ │ │ │ └── dynamic_retriever_test.go │ │ │ ├── retriever.go │ │ │ └── retriever_test.go │ │ ├── keystore │ │ │ └── keystore.go │ │ ├── licensing │ │ │ └── licensing.go │ │ ├── loader │ │ │ ├── fakes.go │ │ │ ├── loader.go │ │ │ └── loader_test.go │ │ ├── pipeline │ │ │ ├── pipeline.go │ │ │ ├── steps.go │ │ │ └── steps_test.go │ │ ├── pluginaccesscontrol │ │ │ └── accesscontrol.go │ │ ├── pluginconfig │ │ │ ├── config.go │ │ │ ├── config_test.go │ │ │ ├── envvars.go │ │ │ ├── envvars_test.go │ │ │ ├── fakes.go │ │ │ ├── request.go │ │ │ ├── request_test.go │ │ │ ├── tracing.go │ │ │ └── tracing_test.go │ │ ├── plugincontext │ │ │ ├── base_plugincontext.go │ │ │ ├── plugincontext.go │ │ │ └── plugincontext_test.go │ │ ├── pluginerrs │ │ │ └── errors.go │ │ ├── pluginexternal │ │ │ ├── check.go │ │ │ └── check_test.go │ │ ├── plugins_integration_test.go │ │ ├── pluginsettings │ │ │ ├── fake.go │ │ │ ├── models.go │ │ │ ├── pluginsettings.go │ │ │ └── service │ │ │ │ ├── service.go │ │ │ │ └── service_test.go │ │ ├── pluginsintegration.go │ │ ├── pluginstore │ │ │ ├── fake.go │ │ │ ├── plugins.go │ │ │ ├── store.go │ │ │ └── store_test.go │ │ ├── renderer │ │ │ ├── renderer.go │ │ │ ├── renderer_test.go │ │ │ └── testdata │ │ │ │ └── plugins │ │ │ │ ├── app │ │ │ │ └── plugin.json │ │ │ │ ├── datasource │ │ │ │ └── plugin.json │ │ │ │ ├── renderer │ │ │ │ └── plugin.json │ │ │ │ └── secrets-manager │ │ │ │ └── plugin.json │ │ ├── serviceregistration │ │ │ └── serviceregistration.go │ │ └── test_helper.go │ ├── preference │ │ ├── model.go │ │ ├── pref.go │ │ ├── prefapi │ │ │ └── api.go │ │ ├── prefimpl │ │ │ ├── inmemory_test.go │ │ │ ├── pref.go │ │ │ ├── pref_test.go │ │ │ ├── store.go │ │ │ ├── store_test.go │ │ │ ├── xorm_store.go │ │ │ └── xorm_store_test.go │ │ ├── preftest │ │ │ └── fake.go │ │ └── themes.go │ ├── provisioning │ │ ├── alerting │ │ │ ├── config_reader.go │ │ │ ├── config_reader_test.go │ │ │ ├── contact_point_provisioner.go │ │ │ ├── contact_point_types.go │ │ │ ├── contact_point_types_test.go │ │ │ ├── mute_times_provisioner.go │ │ │ ├── mute_times_types.go │ │ │ ├── notification_policy_provisioner.go │ │ │ ├── notification_policy_types.go │ │ │ ├── notification_policy_types_test.go │ │ │ ├── provisioner.go │ │ │ ├── rules_provisioner.go │ │ │ ├── rules_types.go │ │ │ ├── rules_types_test.go │ │ │ ├── testdata │ │ │ │ ├── alert_rules │ │ │ │ │ ├── correct-properties-with-org │ │ │ │ │ │ └── rules.yml │ │ │ │ │ ├── correct-properties │ │ │ │ │ │ └── rules.yml │ │ │ │ │ ├── multiple-files │ │ │ │ │ │ ├── rules.yml │ │ │ │ │ │ └── rules2.yml │ │ │ │ │ └── multiple-rules │ │ │ │ │ │ └── rules.yml │ │ │ │ ├── common │ │ │ │ │ ├── broken-yaml │ │ │ │ │ │ └── rules.yml │ │ │ │ │ ├── empty-file │ │ │ │ │ │ └── rules.yml │ │ │ │ │ └── supported-filetypes │ │ │ │ │ │ ├── rules.json │ │ │ │ │ │ ├── rules.yaml │ │ │ │ │ │ └── rules.yml │ │ │ │ ├── contact_points │ │ │ │ │ ├── correct-properties-with-org │ │ │ │ │ │ └── contact_points.yml │ │ │ │ │ ├── correct-properties │ │ │ │ │ │ └── contact_points.yml │ │ │ │ │ ├── empty-uid │ │ │ │ │ │ └── contact_points.yml │ │ │ │ │ ├── missing-uid │ │ │ │ │ │ └── contact_points.yml │ │ │ │ │ ├── multiple-contact-points │ │ │ │ │ │ └── contact_points.yml │ │ │ │ │ └── whitespace-uid │ │ │ │ │ │ └── contact_points.yml │ │ │ │ ├── mute_times │ │ │ │ │ ├── correct-properties-with-org │ │ │ │ │ │ └── mute_times.yml │ │ │ │ │ ├── correct-properties │ │ │ │ │ │ └── mute_times.yml │ │ │ │ │ └── multiple-mute-times │ │ │ │ │ │ └── mute_times.yml │ │ │ │ ├── notificiation_policies │ │ │ │ │ ├── correct-properties-with-org │ │ │ │ │ │ └── policies.yml │ │ │ │ │ ├── correct-properties │ │ │ │ │ │ └── policies.yml │ │ │ │ │ └── multiple-policies │ │ │ │ │ │ └── policies.yml │ │ │ │ └── templates │ │ │ │ │ ├── correct-properties-with-org │ │ │ │ │ └── mute_times.yml │ │ │ │ │ ├── correct-properties │ │ │ │ │ └── mute_times.yml │ │ │ │ │ └── multiple-templates │ │ │ │ │ └── mute_times.yml │ │ │ ├── text_templates.go │ │ │ ├── text_templates_types.go │ │ │ └── types.go │ │ ├── dashboards │ │ │ ├── config_reader.go │ │ │ ├── config_reader_test.go │ │ │ ├── dashboard.go │ │ │ ├── dashboard_mock.go │ │ │ ├── file_reader.go │ │ │ ├── file_reader_symlink_test.go │ │ │ ├── file_reader_test.go │ │ │ ├── testdata │ │ │ │ ├── test-configs │ │ │ │ │ ├── applied-defaults │ │ │ │ │ │ └── dev-dashboards.yaml │ │ │ │ │ ├── broken-configs │ │ │ │ │ │ └── commented.yaml │ │ │ │ │ ├── dashboards-from-disk │ │ │ │ │ │ ├── dev-dashboards.yaml │ │ │ │ │ │ └── sample.yaml │ │ │ │ │ └── version-0 │ │ │ │ │ │ └── version-0.yaml │ │ │ │ └── test-dashboards │ │ │ │ │ ├── broken-dashboards │ │ │ │ │ ├── empty-json.json │ │ │ │ │ └── invalid.json │ │ │ │ │ ├── containing-id │ │ │ │ │ └── dashboard1.json │ │ │ │ │ ├── dashboard-with-uid │ │ │ │ │ └── dashboard1.json │ │ │ │ │ ├── folder-one │ │ │ │ │ ├── dashboard1.json │ │ │ │ │ └── dashboard2.json │ │ │ │ │ ├── folders-from-files-structure │ │ │ │ │ ├── folderOne │ │ │ │ │ │ └── dashboard1.json │ │ │ │ │ ├── folderTwo │ │ │ │ │ │ └── dashboard2.json │ │ │ │ │ └── root.json │ │ │ │ │ ├── one-dashboard │ │ │ │ │ └── dashboard1.json │ │ │ │ │ ├── symlink │ │ │ │ │ ├── two-dashboards-with-uid │ │ │ │ │ ├── dashboard1.json │ │ │ │ │ └── dashboard2.json │ │ │ │ │ └── unprovision │ │ │ │ │ └── dashboard1.json │ │ │ ├── types.go │ │ │ ├── validator.go │ │ │ └── validator_test.go │ │ ├── datasources │ │ │ ├── config_reader.go │ │ │ ├── config_reader_test.go │ │ │ ├── datasources.go │ │ │ ├── testdata │ │ │ │ ├── after-auto-deletion │ │ │ │ │ ├── provision1.yaml │ │ │ │ │ └── provision3.yaml │ │ │ │ ├── all-properties │ │ │ │ │ ├── all-properties.yaml │ │ │ │ │ ├── not.yaml.txt │ │ │ │ │ ├── sample.yaml │ │ │ │ │ └── second.yaml │ │ │ │ ├── appliedDefaults │ │ │ │ │ └── without-defaults.yaml │ │ │ │ ├── before-auto-deletion │ │ │ │ │ ├── provision1.yaml │ │ │ │ │ ├── provision2.yaml │ │ │ │ │ └── provision3.yaml │ │ │ │ ├── broken-yaml │ │ │ │ │ ├── broken.yaml │ │ │ │ │ └── commented.yaml │ │ │ │ ├── correlations-different-organizations │ │ │ │ │ ├── org-1.yaml │ │ │ │ │ ├── org-2.yaml │ │ │ │ │ └── org-3.yaml │ │ │ │ ├── delete-one │ │ │ │ │ └── one-datasource.yaml │ │ │ │ ├── double-default │ │ │ │ │ ├── default-1.yaml │ │ │ │ │ └── default-2.yaml │ │ │ │ ├── insert-two-delete-two │ │ │ │ │ ├── one-datasources.yaml │ │ │ │ │ └── two-datasources.yml │ │ │ │ ├── invalid-access │ │ │ │ │ └── invalid-access.yaml │ │ │ │ ├── multiple-org-default │ │ │ │ │ └── config.yaml │ │ │ │ ├── one-datasource-two-correlations │ │ │ │ │ └── one-datasource-two-correlations.yaml │ │ │ │ ├── recreate-one │ │ │ │ │ └── one-datasource.yaml │ │ │ │ ├── two-datasources │ │ │ │ │ └── two-datasources.yaml │ │ │ │ ├── version-0 │ │ │ │ │ └── version-0.yaml │ │ │ │ └── zero-datasources │ │ │ │ │ └── placeholder-for-git │ │ │ ├── types.go │ │ │ └── types_test.go │ │ ├── plugins │ │ │ ├── config_reader.go │ │ │ ├── config_reader_test.go │ │ │ ├── plugin_provisioner.go │ │ │ ├── plugin_provisioner_test.go │ │ │ ├── testdata │ │ │ │ └── test-configs │ │ │ │ │ ├── broken-yaml │ │ │ │ │ ├── broken.yaml │ │ │ │ │ └── not.yaml.text │ │ │ │ │ ├── correct-properties │ │ │ │ │ └── correct-properties.yaml │ │ │ │ │ ├── empty_folder │ │ │ │ │ └── .gitignore │ │ │ │ │ ├── incorrect-settings │ │ │ │ │ └── incorrect-settings.yaml │ │ │ │ │ └── unknown-app │ │ │ │ │ └── unknown-app.yaml │ │ │ └── types.go │ │ ├── provisioning.go │ │ ├── provisioning_mock.go │ │ ├── provisioning_test.go │ │ ├── utils │ │ │ ├── utils.go │ │ │ └── utils_test.go │ │ └── values │ │ │ ├── values.go │ │ │ └── values_test.go │ ├── publicdashboards │ │ ├── api │ │ │ ├── api.go │ │ │ ├── api_test.go │ │ │ ├── common_test.go │ │ │ ├── middleware.go │ │ │ ├── middleware_test.go │ │ │ ├── query.go │ │ │ └── query_test.go │ │ ├── commands │ │ │ └── generate_datasources │ │ │ │ ├── generate.go │ │ │ │ ├── main.go │ │ │ │ └── main_test.go │ │ ├── database │ │ │ ├── database.go │ │ │ └── database_test.go │ │ ├── internal │ │ │ └── test_helpers.go │ │ ├── metric │ │ │ ├── metric.go │ │ │ └── metrics.go │ │ ├── models │ │ │ ├── errors.go │ │ │ ├── metrics.go │ │ │ ├── models.go │ │ │ └── models_test.go │ │ ├── public_dashboard_middleware_mock.go │ │ ├── public_dashboard_service_mock.go │ │ ├── public_dashboard_service_wrapper_mock.go │ │ ├── public_dashboard_store_mock.go │ │ ├── publicdashboard.go │ │ ├── service │ │ │ ├── annotations.go │ │ │ ├── common_test.go │ │ │ ├── intervalv2 │ │ │ │ ├── intervalv2.go │ │ │ │ └── intervalv2_test.go │ │ │ ├── logging.go │ │ │ ├── query.go │ │ │ ├── query_test.go │ │ │ ├── service.go │ │ │ ├── service_test.go │ │ │ └── service_wapper.go │ │ └── validation │ │ │ ├── validation.go │ │ │ └── validation_test.go │ ├── query │ │ ├── errors.go │ │ ├── models.go │ │ ├── query.go │ │ ├── query_service_mock.go │ │ └── query_test.go │ ├── queryhistory │ │ ├── api.go │ │ ├── database.go │ │ ├── models.go │ │ ├── queryhistory.go │ │ ├── queryhistory_create_test.go │ │ ├── queryhistory_delete_stale_test.go │ │ ├── queryhistory_delete_test.go │ │ ├── queryhistory_enforce_limit_test.go │ │ ├── queryhistory_patch_test.go │ │ ├── queryhistory_search_test.go │ │ ├── queryhistory_star_test.go │ │ ├── queryhistory_test.go │ │ ├── queryhistory_unstar_test.go │ │ └── writers.go │ ├── quota │ │ ├── context.go │ │ ├── model.go │ │ ├── quota.go │ │ ├── quotaimpl │ │ │ ├── quota.go │ │ │ ├── quota_test.go │ │ │ ├── store.go │ │ │ └── store_test.go │ │ └── quotatest │ │ │ └── fake.go │ ├── rendering │ │ ├── auth.go │ │ ├── capabilities.go │ │ ├── capabilities_test.go │ │ ├── http_mode.go │ │ ├── interface.go │ │ ├── mock.go │ │ ├── plugin_mode.go │ │ ├── rendering.go │ │ ├── rendering_test.go │ │ └── svgSanitizer.go │ ├── screenshot │ │ ├── cache.go │ │ ├── cache_mock.go │ │ ├── cache_test.go │ │ ├── option.go │ │ ├── option_test.go │ │ ├── ratelimit.go │ │ ├── ratelimit_mock.go │ │ ├── ratelimit_test.go │ │ ├── screenshot.go │ │ ├── screenshot_mock.go │ │ └── screenshot_test.go │ ├── search │ │ ├── model │ │ │ └── model.go │ │ ├── service.go │ │ ├── service_test.go │ │ └── sorting.go │ ├── searchV2 │ │ ├── allowed_actions.go │ │ ├── allowed_actions_test.go │ │ ├── auth.go │ │ ├── bluge.go │ │ ├── extender.go │ │ ├── filter.go │ │ ├── http.go │ │ ├── index.go │ │ ├── index_test.go │ │ ├── ngram.go │ │ ├── ngram_test.go │ │ ├── object │ │ │ └── testdata │ │ │ │ ├── gdev-walk-graph-gradient-area-fills.json │ │ │ │ ├── gdev-walk-graph-shared-tooltips.json │ │ │ │ ├── gdev-walk-graph-time-regions.json │ │ │ │ ├── gdev-walk-graph_tests.json │ │ │ │ └── gdev-walk-graph_y_axis.json │ │ ├── search_service_mock.go │ │ ├── service.go │ │ ├── service_bench_test.go │ │ ├── stub.go │ │ ├── substring_query.go │ │ ├── testdata │ │ │ ├── allowed_actions_scope_all.golden.jsonc │ │ │ ├── allowed_actions_scope_uids.golden.jsonc │ │ │ ├── basic-filter.jsonc │ │ │ ├── basic-search.jsonc │ │ │ ├── dashboard-create.jsonc │ │ │ ├── dashboard-delete.jsonc │ │ │ ├── dashboard-update.jsonc │ │ │ ├── folders-dashboard-removed-on-folder-removed.jsonc │ │ │ ├── folders-indexed.jsonc │ │ │ ├── multiple-tokens-beginning-lower.jsonc │ │ │ ├── multiple-tokens-beginning.jsonc │ │ │ ├── multiple-tokens-middle-lower.jsonc │ │ │ ├── multiple-tokens-middle.jsonc │ │ │ ├── ngram-camel-case-split.jsonc │ │ │ ├── ngram-punctuation-split.jsonc │ │ │ ├── ngram-simple.jsonc │ │ │ ├── ordering-tests-1-[Prometheus_2.].jsonc │ │ │ ├── ordering-tests-2-[Prome].jsonc │ │ │ ├── ordering-tests-3-[Prometheus_stat].jsonc │ │ │ ├── ordering-tests-4-[Loki_2.].jsonc │ │ │ ├── ordering-tests-5-[Lok].jsonc │ │ │ ├── ordering-tests-6-[Loki_stats].jsonc │ │ │ ├── panels-panel-removed-on-dashboard-removed.jsonc │ │ │ ├── prefix-search-beginning-lower.jsonc │ │ │ ├── prefix-search-beginning.jsonc │ │ │ ├── prefix-search-middle-lower.jsonc │ │ │ ├── prefix-search-middle.jsonc │ │ │ ├── prefix-search-ngram-exceeded.jsonc │ │ │ ├── scattered-tokens-match-reversed.jsonc │ │ │ ├── scattered-tokens-match.jsonc │ │ │ ├── search_response_frame.json │ │ │ ├── sort-asc.jsonc │ │ │ └── sort-desc.jsonc │ │ ├── types.go │ │ ├── usage.go │ │ └── utils.go │ ├── searchusers │ │ ├── filters │ │ │ ├── filters.go │ │ │ └── last_active_30_days_filter.go │ │ ├── searchusers.go │ │ └── sortopts │ │ │ └── sortopts.go │ ├── secrets │ │ ├── database │ │ │ └── database.go │ │ ├── fakes │ │ │ ├── fake_service.go │ │ │ ├── fake_store.go │ │ │ └── mock_service.go │ │ ├── kvstore │ │ │ ├── cache.go │ │ │ ├── kvstore.go │ │ │ ├── migrations │ │ │ │ ├── datasource_mig.go │ │ │ │ ├── datasource_mig_test.go │ │ │ │ ├── from_plugin_mig.go │ │ │ │ ├── from_plugin_mig_test.go │ │ │ │ ├── migrator.go │ │ │ │ ├── to_plugin_mig.go │ │ │ │ └── to_plugin_mig_test.go │ │ │ ├── model.go │ │ │ ├── plugin.go │ │ │ ├── plugin_test.go │ │ │ ├── sql.go │ │ │ ├── sql_test.go │ │ │ └── test_helpers.go │ │ ├── manager │ │ │ ├── cache.go │ │ │ ├── helpers.go │ │ │ ├── manager.go │ │ │ ├── manager_test.go │ │ │ └── metrics.go │ │ ├── migrator │ │ │ ├── migrator.go │ │ │ ├── reencrypt.go │ │ │ └── rollback.go │ │ ├── secrets.go │ │ └── types.go │ ├── serviceaccounts │ │ ├── api │ │ │ ├── api.go │ │ │ ├── api_test.go │ │ │ ├── token.go │ │ │ └── token_test.go │ │ ├── database │ │ │ ├── stats.go │ │ │ ├── stats_test.go │ │ │ ├── store.go │ │ │ ├── store_test.go │ │ │ ├── token_store.go │ │ │ └── token_store_test.go │ │ ├── extsvcaccounts │ │ │ ├── metrics.go │ │ │ ├── models.go │ │ │ ├── service.go │ │ │ └── service_test.go │ │ ├── manager │ │ │ ├── roles.go │ │ │ ├── service.go │ │ │ ├── service_test.go │ │ │ ├── stats.go │ │ │ ├── stats_test.go │ │ │ └── store.go │ │ ├── models.go │ │ ├── proxy │ │ │ ├── service.go │ │ │ └── service_test.go │ │ ├── retriever │ │ │ └── retriever.go │ │ ├── secretscan │ │ │ ├── client.go │ │ │ ├── mock.go │ │ │ ├── service.go │ │ │ ├── service_test.go │ │ │ └── webhook.go │ │ ├── serviceaccounts.go │ │ └── tests │ │ │ ├── common.go │ │ │ ├── extsvcaccmock.go │ │ │ ├── fakes.go │ │ │ └── mocks.go │ ├── shorturls │ │ ├── models.go │ │ ├── shorturl.go │ │ └── shorturlimpl │ │ │ ├── shorturl.go │ │ │ ├── shorturl_test.go │ │ │ └── store.go │ ├── signingkeys │ │ ├── error.go │ │ ├── signingkeys.go │ │ ├── signingkeysimpl │ │ │ ├── service.go │ │ │ └── service_test.go │ │ ├── signingkeystest │ │ │ └── fake.go │ │ └── signingkeystore │ │ │ ├── fake.go │ │ │ ├── store.go │ │ │ └── store_test.go │ ├── sqlstore │ │ ├── bulk.go │ │ ├── bulk_test.go │ │ ├── database_config.go │ │ ├── database_config_test.go │ │ ├── database_wrapper.go │ │ ├── logger.go │ │ ├── migrations │ │ │ ├── accesscontrol │ │ │ │ ├── action_migrator.go │ │ │ │ ├── admin_only.go │ │ │ │ ├── alerting.go │ │ │ │ ├── dashboard_permissions.go │ │ │ │ ├── disabled_migration.go │ │ │ │ ├── errors.go │ │ │ │ ├── managed_permission_migrator.go │ │ │ │ ├── migrations.go │ │ │ │ ├── permission_migrator.go │ │ │ │ ├── scope_migrator.go │ │ │ │ ├── seed_assignment.go │ │ │ │ ├── team_membership.go │ │ │ │ ├── test │ │ │ │ │ ├── ac_test.go │ │ │ │ │ ├── action_migrator_test.go │ │ │ │ │ ├── dashbord_permission_migrator_test.go │ │ │ │ │ ├── managed_permission_migrator_test.go │ │ │ │ │ ├── scope_migrator_test.go │ │ │ │ │ └── seed_assign_mig_test.go │ │ │ │ └── util_test.go │ │ │ ├── alert_mig.go │ │ │ ├── annotation_mig.go │ │ │ ├── anonservice │ │ │ │ └── migrations.go │ │ │ ├── apikey_mig.go │ │ │ ├── cache_data_mig.go │ │ │ ├── cloud_migrations.go │ │ │ ├── common.go │ │ │ ├── correlations_mig.go │ │ │ ├── dashboard_acl.go │ │ │ ├── dashboard_mig.go │ │ │ ├── dashboard_public_mig.go │ │ │ ├── dashboard_snapshot_mig.go │ │ │ ├── dashboard_version_mig.go │ │ │ ├── datasource_mig.go │ │ │ ├── db_file_storage.go │ │ │ ├── entity_events_mig.go │ │ │ ├── external_alertmanagers.go │ │ │ ├── folder_mig.go │ │ │ ├── heartbeat_mig.go │ │ │ ├── kv_store_mig.go │ │ │ ├── libraryelements.go │ │ │ ├── login_attempt_mig.go │ │ │ ├── migrations.go │ │ │ ├── migrations_test.go │ │ │ ├── org_mig.go │ │ │ ├── playlist_mig.go │ │ │ ├── plugin_setting.go │ │ │ ├── preferences_mig.go │ │ │ ├── query_history_mig.go │ │ │ ├── query_history_star_mig.go │ │ │ ├── quota_mig.go │ │ │ ├── secrets_mig.go │ │ │ ├── serverlock_migrations.go │ │ │ ├── session_mig.go │ │ │ ├── short_url_mig.go │ │ │ ├── signingkeys │ │ │ │ └── migrations.go │ │ │ ├── ssosettings │ │ │ │ └── migrations.go │ │ │ ├── stats_mig.go │ │ │ ├── tag_mig.go │ │ │ ├── team_mig.go │ │ │ ├── temp_user.go │ │ │ ├── ualert │ │ │ │ ├── created_folders_mig.go │ │ │ │ ├── migration_service_migration.go │ │ │ │ ├── org_upgrade_state_mig.go │ │ │ │ ├── recording_rules_mig.go │ │ │ │ ├── rule_group_index_migration.go │ │ │ │ ├── rule_notification_settings_mig.go │ │ │ │ ├── tables.go │ │ │ │ └── ualert.go │ │ │ ├── user_auth_mig.go │ │ │ ├── user_auth_token_mig.go │ │ │ ├── user_mig.go │ │ │ └── usermig │ │ │ │ ├── service_account_multiple_org_login_migrator.go │ │ │ │ ├── test │ │ │ │ ├── service_account_test.go │ │ │ │ ├── user_lowercase_login_and_email_test.go │ │ │ │ └── user_test.go │ │ │ │ └── user_lowercase_login_and_email.go │ │ ├── migrator │ │ │ ├── column.go │ │ │ ├── conditions.go │ │ │ ├── dialect.go │ │ │ ├── dialect_test.go │ │ │ ├── migrations.go │ │ │ ├── migrator.go │ │ │ ├── mysql_dialect.go │ │ │ ├── postgres_dialect.go │ │ │ ├── sqlite_dialect.go │ │ │ ├── types.go │ │ │ └── upsert_test.go │ │ ├── permissions │ │ │ ├── dashboard.go │ │ │ ├── dashboard_filter_no_subquery.go │ │ │ ├── dashboard_test.go │ │ │ └── dashboards_bench_test.go │ │ ├── searchstore │ │ │ ├── builder.go │ │ │ ├── doc.go │ │ │ ├── filters.go │ │ │ ├── filters_test.go │ │ │ └── search_test.go │ │ ├── session.go │ │ ├── session │ │ │ └── session.go │ │ ├── session_test.go │ │ ├── sqlstore.go │ │ ├── sqlstore_metrics.go │ │ ├── sqlstore_metrics_test.go │ │ ├── sqlstore_test.go │ │ ├── sqlutil │ │ │ └── sqlutil.go │ │ ├── tls_mysql.go │ │ ├── transactions.go │ │ ├── transactions_test.go │ │ ├── user.go │ │ └── user_test.go │ ├── ssosettings │ │ ├── api │ │ │ ├── api.go │ │ │ └── api_test.go │ │ ├── database │ │ │ ├── database.go │ │ │ └── database_test.go │ │ ├── errors.go │ │ ├── models │ │ │ └── models.go │ │ ├── ssosettings.go │ │ ├── ssosettingsimpl │ │ │ ├── metrics.go │ │ │ ├── service.go │ │ │ ├── service_test.go │ │ │ ├── usage_stats.go │ │ │ └── usage_stats_test.go │ │ ├── ssosettingstests │ │ │ ├── fallback_strategy_fake.go │ │ │ ├── reloadable_mock.go │ │ │ ├── service_mock.go │ │ │ ├── store_fake.go │ │ │ └── store_mock.go │ │ ├── strategies │ │ │ ├── oauth_strategy.go │ │ │ ├── oauth_strategy_test.go │ │ │ ├── saml_strategy.go │ │ │ └── saml_strategy_test.go │ │ └── validation │ │ │ ├── oauth_validators.go │ │ │ ├── oauth_validators_test.go │ │ │ └── validator.go │ ├── star │ │ ├── api │ │ │ ├── api.go │ │ │ └── api_test.go │ │ ├── model.go │ │ ├── star.go │ │ ├── starimpl │ │ │ ├── star.go │ │ │ ├── store.go │ │ │ ├── store_test.go │ │ │ ├── xorm_store.go │ │ │ └── xorm_store_test.go │ │ └── startest │ │ │ └── fake.go │ ├── stats │ │ ├── models.go │ │ ├── stats.go │ │ ├── statsimpl │ │ │ ├── stats.go │ │ │ └── stats_test.go │ │ └── statstest │ │ │ └── stats.go │ ├── store │ │ ├── auth.go │ │ ├── config.go │ │ ├── entity │ │ │ ├── README.md │ │ │ ├── buf.gen.yaml │ │ │ ├── buf.yaml │ │ │ ├── client_wrapper.go │ │ │ ├── db │ │ │ │ ├── dbimpl │ │ │ │ │ ├── db.go │ │ │ │ │ ├── dbEngine.go │ │ │ │ │ ├── dbEngine_test.go │ │ │ │ │ ├── db_test.go │ │ │ │ │ └── dbimpl.go │ │ │ │ ├── migrations │ │ │ │ │ ├── entity_store_mig.go │ │ │ │ │ └── migrator.go │ │ │ │ └── service.go │ │ │ ├── dummy │ │ │ │ └── fake_store.go │ │ │ ├── entity.pb.go │ │ │ ├── entity.proto │ │ │ ├── entity_grpc.pb.go │ │ │ ├── grpc │ │ │ │ └── authenticator.go │ │ │ ├── health.go │ │ │ ├── health_test.go │ │ │ ├── key.go │ │ │ ├── models.go │ │ │ ├── server │ │ │ │ ├── config.go │ │ │ │ └── service.go │ │ │ ├── sqlstash │ │ │ │ ├── broadcaster.go │ │ │ │ ├── broadcaster_test.go │ │ │ │ ├── data │ │ │ │ │ ├── entity_delete.sql │ │ │ │ │ ├── entity_folder_insert.sql │ │ │ │ │ ├── entity_insert.sql │ │ │ │ │ ├── entity_labels_delete.sql │ │ │ │ │ ├── entity_labels_insert.sql │ │ │ │ │ ├── entity_list_folder_elements.sql │ │ │ │ │ ├── entity_read.sql │ │ │ │ │ ├── entity_ref_find.sql │ │ │ │ │ ├── entity_update.sql │ │ │ │ │ ├── kind_version_inc.sql │ │ │ │ │ ├── kind_version_insert.sql │ │ │ │ │ └── kind_version_lock.sql │ │ │ │ ├── folder_support.go │ │ │ │ ├── folder_support_test.go │ │ │ │ ├── metrics.go │ │ │ │ ├── queries.go │ │ │ │ ├── querybuilder.go │ │ │ │ ├── sql_storage_server.go │ │ │ │ ├── sql_storage_server_test.go │ │ │ │ ├── sqltemplate │ │ │ │ │ ├── args.go │ │ │ │ │ ├── args_test.go │ │ │ │ │ ├── dialect.go │ │ │ │ │ ├── dialect_mysql.go │ │ │ │ │ ├── dialect_postgresql.go │ │ │ │ │ ├── dialect_postgresql_test.go │ │ │ │ │ ├── dialect_sqlite.go │ │ │ │ │ ├── dialect_test.go │ │ │ │ │ ├── example_test.go │ │ │ │ │ ├── into.go │ │ │ │ │ ├── into_test.go │ │ │ │ │ ├── sqltemplate.go │ │ │ │ │ └── sqltemplate_test.go │ │ │ │ ├── testdata │ │ │ │ │ └── simple.jsonc │ │ │ │ └── utils.go │ │ │ └── tests │ │ │ │ ├── common_test.go │ │ │ │ ├── server_integration_test.go │ │ │ │ └── testdata │ │ │ │ ├── dashboard-with-tags-b-g.json │ │ │ │ └── dashboard-with-tags-r-g.json │ │ ├── entity_events.go │ │ ├── entity_events_mock.go │ │ ├── entity_events_test.go │ │ ├── file_guardian.go │ │ ├── http.go │ │ ├── kind │ │ │ └── dashboard │ │ │ │ ├── dashboard.go │ │ │ │ ├── dashboard_test.go │ │ │ │ ├── ds_lookup.go │ │ │ │ ├── reference.go │ │ │ │ ├── summary.go │ │ │ │ ├── summary_test.go │ │ │ │ ├── targets.go │ │ │ │ ├── testdata │ │ │ │ ├── all-selected-multi-datasource-variable-info.json │ │ │ │ ├── all-selected-multi-datasource-variable.json │ │ │ │ ├── all-selected-single-datasource-variable-info.json │ │ │ │ ├── all-selected-single-datasource-variable.json │ │ │ │ ├── check-string-datasource-id-info.json │ │ │ │ ├── check-string-datasource-id.json │ │ │ │ ├── datasource-variable-info.json │ │ │ │ ├── datasource-variable-no-curly-braces-info.json │ │ │ │ ├── datasource-variable-no-curly-braces.json │ │ │ │ ├── datasource-variable.json │ │ │ │ ├── default-datasource-variable-info.json │ │ │ │ ├── default-datasource-variable.json │ │ │ │ ├── devdash-all-panels-info.json │ │ │ │ ├── devdash-graph-shared-tooltips-info.json │ │ │ │ ├── empty-datasource-variable-info.json │ │ │ │ ├── empty-datasource-variable.json │ │ │ │ ├── gdev-walk-graph-gradient-area-fills.json │ │ │ │ ├── gdev-walk-graph-shared-tooltips.json │ │ │ │ ├── gdev-walk-graph-time-regions.json │ │ │ │ ├── gdev-walk-graph_tests.json │ │ │ │ ├── gdev-walk-graph_y_axis.json │ │ │ │ ├── mixed-datasource-with-variable-info.json │ │ │ │ ├── mixed-datasource-with-variable.json │ │ │ │ ├── panels-without-datasources-info.json │ │ │ │ ├── panels-without-datasources.json │ │ │ │ ├── repeated-datasource-variables-info.json │ │ │ │ ├── repeated-datasource-variables-with-default-info.json │ │ │ │ ├── repeated-datasource-variables-with-default.json │ │ │ │ ├── repeated-datasource-variables.json │ │ │ │ ├── special-datasource-types-info.json │ │ │ │ ├── special-datasource-types.json │ │ │ │ ├── string-datasource-variable-info.json │ │ │ │ ├── string-datasource-variable.json │ │ │ │ ├── with-library-panels-info.json │ │ │ │ └── with-library-panels.json │ │ │ │ └── types.go │ │ ├── resolver │ │ │ ├── ds_cache.go │ │ │ ├── service.go │ │ │ └── service_test.go │ │ ├── sanitize.go │ │ ├── sanitizer │ │ │ └── Provider.go │ │ ├── service.go │ │ ├── service_test.go │ │ ├── static_auth.go │ │ ├── storage_disk.go │ │ ├── storage_sql.go │ │ ├── storage_sql_test.go │ │ ├── system_users.go │ │ ├── system_users_mock.go │ │ ├── system_users_test.go │ │ ├── testdata │ │ │ ├── example_list_frame.json │ │ │ ├── example_root_level_list.json │ │ │ ├── image.jpg │ │ │ ├── image.svg │ │ │ ├── page.html │ │ │ ├── public_testdata.golden.jsonc │ │ │ └── public_testdata_js_libraries.golden.jsonc │ │ ├── tree.go │ │ ├── types.go │ │ ├── types_test.go │ │ ├── utils.go │ │ ├── utils_test.go │ │ └── validate.go │ ├── supportbundles │ │ ├── bundleregistry │ │ │ ├── service.go │ │ │ └── service_test.go │ │ ├── interface.go │ │ ├── supportbundlesimpl │ │ │ ├── api.go │ │ │ ├── collectors.go │ │ │ ├── db_collector.go │ │ │ ├── models.go │ │ │ ├── service.go │ │ │ ├── service_bundle.go │ │ │ ├── service_bundle_test.go │ │ │ └── store.go │ │ └── supportbundlestest │ │ │ └── fake.go │ ├── tag │ │ ├── model.go │ │ ├── model_test.go │ │ ├── tag.go │ │ └── tagimpl │ │ │ ├── store.go │ │ │ ├── store_test.go │ │ │ ├── tag.go │ │ │ ├── xorm_store.go │ │ │ └── xorm_store_test.go │ ├── team │ │ ├── model.go │ │ ├── sortopts │ │ │ ├── sortopts.go │ │ │ └── sortopts_test.go │ │ ├── team.go │ │ ├── teamapi │ │ │ ├── api.go │ │ │ ├── team.go │ │ │ ├── team_members.go │ │ │ ├── team_members_test.go │ │ │ └── team_test.go │ │ ├── teamimpl │ │ │ ├── store.go │ │ │ ├── store_test.go │ │ │ └── team.go │ │ └── teamtest │ │ │ └── team.go │ ├── temp_user │ │ ├── model.go │ │ ├── temp_user.go │ │ ├── tempuserimpl │ │ │ ├── store.go │ │ │ ├── store_test.go │ │ │ └── temp_user.go │ │ └── tempusertest │ │ │ └── fake.go │ ├── updatechecker │ │ ├── grafana.go │ │ ├── plugins.go │ │ ├── plugins_test.go │ │ └── updatechecker.go │ ├── user │ │ ├── error.go │ │ ├── identity.go │ │ ├── model.go │ │ ├── password.go │ │ ├── password_test.go │ │ ├── user.go │ │ ├── userimpl │ │ │ ├── store.go │ │ │ ├── store_test.go │ │ │ ├── time.go │ │ │ ├── user.go │ │ │ ├── user_test.go │ │ │ ├── verifier.go │ │ │ └── verifier_test.go │ │ └── usertest │ │ │ ├── fake.go │ │ │ └── mock.go │ └── validations │ │ ├── oss.go │ │ └── service.go ├── setting │ ├── date_formats.go │ ├── date_formats_test.go │ ├── dynamic_settings_test.go │ ├── expanders.go │ ├── expanders_test.go │ ├── provider.go │ ├── setting.go │ ├── setting_auth_proxy.go │ ├── setting_azure.go │ ├── setting_azure_test.go │ ├── setting_cloud_migration.go │ ├── setting_data_proxy.go │ ├── setting_feature_toggles.go │ ├── setting_feature_toggles_test.go │ ├── setting_featuremgmt.go │ ├── setting_grafana_javascript_agent.go │ ├── setting_jwt.go │ ├── setting_plugins.go │ ├── setting_plugins_test.go │ ├── setting_quota.go │ ├── setting_search.go │ ├── setting_secure_socks_proxy.go │ ├── setting_secure_socks_proxy_test.go │ ├── setting_session_test.go │ ├── setting_smtp.go │ ├── setting_smtp_test.go │ ├── setting_storage.go │ ├── setting_test.go │ ├── setting_unified_alerting.go │ ├── setting_unified_alerting_test.go │ └── testdata │ │ ├── invalid.ini │ │ ├── override.ini │ │ ├── override_windows.ini │ │ └── session.ini ├── tests │ ├── README.md │ ├── api │ │ ├── alerting │ │ │ ├── api_admin_configuration_test.go │ │ │ ├── api_alertmanager_configuration_test.go │ │ │ ├── api_alertmanager_silence_test.go │ │ │ ├── api_alertmanager_test.go │ │ │ ├── api_available_channel_test.go │ │ │ ├── api_backtesting_data.json │ │ │ ├── api_backtesting_test.go │ │ │ ├── api_notification_channel_test.go │ │ │ ├── api_notifications_time_interval_test.go │ │ │ ├── api_prometheus_test.go │ │ │ ├── api_provisioning_test.go │ │ │ ├── api_ruler_test.go │ │ │ ├── api_testing_test.go │ │ │ ├── test-data │ │ │ │ ├── hysteresis_rule.json │ │ │ │ ├── rule-notification-settings-1-post.json │ │ │ │ ├── rulegroup-1-export.json │ │ │ │ ├── rulegroup-1-get.json │ │ │ │ ├── rulegroup-1-post.json │ │ │ │ ├── rulegroup-2-export.json │ │ │ │ ├── rulegroup-2-get.json │ │ │ │ ├── rulegroup-2-post.json │ │ │ │ ├── rulegroup-3-export.json │ │ │ │ ├── rulegroup-3-get.json │ │ │ │ └── rulegroup-3-post.json │ │ │ └── testing.go │ │ ├── azuremonitor │ │ │ └── azuremonitor_test.go │ │ ├── correlations │ │ │ ├── common_test.go │ │ │ ├── correlations_create_test.go │ │ │ ├── correlations_delete_test.go │ │ │ ├── correlations_provisioning_api_test.go │ │ │ ├── correlations_read_test.go │ │ │ └── correlations_update_test.go │ │ ├── dashboards │ │ │ ├── api_dashboards_test.go │ │ │ └── home.json │ │ ├── elasticsearch │ │ │ └── elasticsearch_test.go │ │ ├── folders │ │ │ ├── api_folder_test.go │ │ │ └── api_folders_test.go │ │ ├── graphite │ │ │ └── graphite_test.go │ │ ├── influxdb │ │ │ └── influxdb_test.go │ │ ├── loki │ │ │ └── loki_test.go │ │ ├── metrics │ │ │ └── README.md │ │ ├── opentdsb │ │ │ └── opentdsb_test.go │ │ ├── plugins │ │ │ ├── api_plugins_test.go │ │ │ ├── backendplugin │ │ │ │ └── backendplugin_test.go │ │ │ └── data │ │ │ │ └── expectedListResp.json │ │ ├── prometheus │ │ │ └── prometheus_test.go │ │ └── stats │ │ │ └── admin_test.go │ ├── apis │ │ ├── README.md │ │ ├── dashboard │ │ │ ├── dashboards_test.go │ │ │ └── testdata │ │ │ │ ├── dashboard-generate.yaml │ │ │ │ ├── dashboard-test-apply.yaml │ │ │ │ ├── dashboard-test-create.yaml │ │ │ │ └── dashboard-test-replace.yaml │ │ ├── dashboardsnapshot │ │ │ └── snapshots_test.go │ │ ├── datasource │ │ │ └── testdata_test.go │ │ ├── example │ │ │ └── example_test.go │ │ ├── folder │ │ │ ├── folders_test.go │ │ │ └── testdata │ │ │ │ └── folder-generate.yaml │ │ ├── helper.go │ │ ├── playlist │ │ │ ├── playlist_test.go │ │ │ └── testdata │ │ │ │ ├── playlist-generate.yaml │ │ │ │ ├── playlist-test-apply.yaml │ │ │ │ ├── playlist-test-create.yaml │ │ │ │ └── playlist-test-replace.yaml │ │ ├── query │ │ │ └── query_test.go │ │ ├── scopes │ │ │ ├── scope_nodes_example_test.go │ │ │ ├── scopes_test.go │ │ │ └── testdata │ │ │ │ ├── example-scope-dashboard-binding-abc.yaml │ │ │ │ ├── example-scope-dashboard-binding-xyz.yaml │ │ │ │ ├── example-scope.yaml │ │ │ │ ├── example-scope2.yaml │ │ │ │ └── scopeNodesExample │ │ │ │ ├── scopeNodes.json │ │ │ │ └── scopes.json │ │ └── types.go │ ├── testinfra │ │ └── testinfra.go │ ├── testsuite │ │ └── testsuite.go │ ├── utils.go │ └── web │ │ └── index_view_test.go ├── tsdb │ ├── Magefile.go │ ├── azuremonitor │ │ ├── azmoncredentials │ │ │ ├── builder.go │ │ │ ├── builder_test.go │ │ │ └── default.go │ │ ├── azuremonitor-resource-handler.go │ │ ├── azuremonitor-resource-handler_test.go │ │ ├── azuremonitor.go │ │ ├── azuremonitor_test.go │ │ ├── httpclient.go │ │ ├── httpclient_test.go │ │ ├── kinds │ │ │ └── dataquery │ │ │ │ └── types_dataquery_gen.go │ │ ├── loganalytics │ │ │ ├── azure-log-analytics-datasource.go │ │ │ ├── azure-log-analytics-datasource_test.go │ │ │ ├── azure-response-table-frame.go │ │ │ ├── azure-response-table-frame_test.go │ │ │ ├── consts.go │ │ │ ├── traces.go │ │ │ ├── traces_test.go │ │ │ ├── types.go │ │ │ ├── utils.go │ │ │ └── utils_test.go │ │ ├── macros │ │ │ ├── macros.go │ │ │ └── macros_test.go │ │ ├── metrics │ │ │ ├── azuremonitor-datasource.go │ │ │ ├── azuremonitor-datasource_test.go │ │ │ ├── migrations.go │ │ │ ├── migrations_test.go │ │ │ ├── url-builder.go │ │ │ └── url-builder_test.go │ │ ├── resourcegraph │ │ │ ├── azure-resource-graph-datasource.go │ │ │ └── azure-resource-graph-datasource_test.go │ │ ├── routes.go │ │ ├── standalone │ │ │ ├── datasource.go │ │ │ └── main.go │ │ ├── testdata │ │ │ ├── applicationinsights │ │ │ │ ├── 1-application-insights-response-raw-query.json │ │ │ │ ├── 2-application-insights-response-raw-query-segmented.json │ │ │ │ ├── 4-application-insights-response-metrics-multi-segmented.json │ │ │ │ ├── 4-application-insights-response-metrics-no-segment.json │ │ │ │ ├── 4-application-insights-response-metrics-segmented.json │ │ │ │ ├── 5-application-insights-empty-response.json │ │ │ │ └── bigger.json │ │ │ ├── azuremonitor │ │ │ │ ├── 1-azure-monitor-response-avg.json │ │ │ │ ├── 1-azure-monitor-response-avg.json.average-aggregate-time-series-response.golden.jsonc │ │ │ │ ├── 10-azure-monitor-response-multi-with-dimensions.json │ │ │ │ ├── 10-azure-monitor-response-multi-with-dimensions.json.multiple-time-series-response-with-multiple-dimensions.golden.jsonc │ │ │ │ ├── 2-azure-monitor-response-total.json │ │ │ │ ├── 2-azure-monitor-response-total.json.total-aggregate-time-series-response.golden.jsonc │ │ │ │ ├── 2-azure-monitor-response-total.json.with-alias-patterns-in-the-query.golden.jsonc │ │ │ │ ├── 2-azure-monitor-response-total.json.with-legacy-azure-monitor-query-properties-and-with-a-resource-uri-it-should-use-the-resource-uri.golden.jsonc │ │ │ │ ├── 2-azure-monitor-response-total.json.with-legacy-azure-monitor-query-properties-and-without-a-resource-uri.golden.jsonc │ │ │ │ ├── 3-azure-monitor-response-maximum.json │ │ │ │ ├── 3-azure-monitor-response-maximum.json.maximum-aggregate-time-series-response.golden.jsonc │ │ │ │ ├── 4-azure-monitor-response-minimum.json │ │ │ │ ├── 4-azure-monitor-response-minimum.json.minimum-aggregate-time-series-response.golden.jsonc │ │ │ │ ├── 5-azure-monitor-response-count.json │ │ │ │ ├── 5-azure-monitor-response-count.json.count-aggregate-time-series-response.golden.jsonc │ │ │ │ ├── 6-azure-monitor-response-single-dimension.json │ │ │ │ ├── 6-azure-monitor-response-single-dimension.json.single-dimension-time-series-response.golden.jsonc │ │ │ │ ├── 6-azure-monitor-response-single-dimension.json.single-dimension-with-alias.golden.jsonc │ │ │ │ ├── 7-azure-monitor-response-multi-dimension.json │ │ │ │ ├── 7-azure-monitor-response-multi-dimension.json.multiple-dimension-time-series-response-with-label-alias.golden.jsonc │ │ │ │ ├── 8-azure-monitor-response-unspecified-unit.json │ │ │ │ ├── 8-azure-monitor-response-unspecified-unit.json.unspecified-unit-with-alias-should-not-panic.golden.jsonc │ │ │ │ ├── 9-azure-monitor-response-multi.json │ │ │ │ └── 9-azure-monitor-response-multi.json.multiple-time-series-response.golden.jsonc │ │ │ ├── loganalytics │ │ │ │ ├── 1-log-analytics-response-metrics-single-series.json │ │ │ │ ├── 1-log-analytics-response-metrics-single-series.json.golden.jsonc │ │ │ │ ├── 10-log-analytics-response-warning.json │ │ │ │ ├── 10-log-analytics-response-warning.json.golden.jsonc │ │ │ │ ├── 11-log-analytics-response-empty.json │ │ │ │ ├── 11-log-analytics-response-empty.json.golden.jsonc │ │ │ │ ├── 2-log-analytics-response-metrics-multiple-series.json │ │ │ │ ├── 3-log-analytics-response-metrics-no-metric-column.json │ │ │ │ ├── 4-log-analytics-response-metrics-no-time-column.json │ │ │ │ ├── 5-log-analytics-response-metrics-no-value-column.json │ │ │ │ ├── 6-log-analytics-response-table.json │ │ │ │ ├── 6-log-analytics-response-table.json.golden.jsonc │ │ │ │ ├── 7-log-analytics-all-types-table.json │ │ │ │ ├── 7-log-analytics-all-types-table.json.golden.jsonc │ │ │ │ ├── 8-log-analytics-response-nan-inf.json │ │ │ │ ├── 8-log-analytics-response-nan-inf.json.golden.jsonc │ │ │ │ ├── 9-log-analytics-response-error.json │ │ │ │ └── 9-log-analytics-response-error.json.golden.jsonc │ │ │ ├── traces │ │ │ │ ├── 1-traces-multiple-table.json │ │ │ │ ├── 1-traces-multiple-table.json.multi-trace-as-trace-format.golden.jsonc │ │ │ │ ├── 1-traces-multiple-table.json.multi-trace.golden.jsonc │ │ │ │ ├── 2-traces-single-table.json │ │ │ │ ├── 2-traces-single-table.json.single-trace-as-trace-format.golden.jsonc │ │ │ │ ├── 2-traces-single-table.json.single-trace.golden.jsonc │ │ │ │ ├── 3-traces-empty-dynamics.json │ │ │ │ └── 3-traces-empty-dynamics.json.single-trace-with-empty-serviceTags-and-tags.golden.jsonc │ │ │ └── utils.go │ │ ├── time │ │ │ ├── azuremonitor-time.go │ │ │ ├── time-grain.go │ │ │ └── time-grain_test.go │ │ └── types │ │ │ └── types.go │ ├── cloud-monitoring │ │ ├── annotation_query.go │ │ ├── annotation_query_test.go │ │ ├── cloudmonitoring.go │ │ ├── cloudmonitoring_test.go │ │ ├── converter │ │ │ └── converter.go │ │ ├── httpclient.go │ │ ├── kinds │ │ │ └── dataquery │ │ │ │ └── types_dataquery_gen.go │ │ ├── preprocessor.go │ │ ├── promql_query.go │ │ ├── promql_query_test.go │ │ ├── resource_handler.go │ │ ├── resource_handler_test.go │ │ ├── slo_query.go │ │ ├── slo_query_test.go │ │ ├── standalone │ │ │ ├── datasource.go │ │ │ └── main.go │ │ ├── test-data │ │ │ ├── 1-series-response-agg-one-metric.json │ │ │ ├── 10-series-response-mql-no-labels.json │ │ │ ├── 11-prom-response.json │ │ │ ├── 2-series-response-no-agg.json │ │ │ ├── 3-series-response-distribution-exponential.json │ │ │ ├── 4-series-response-distribution-explicit.json │ │ │ ├── 5-series-response-meta-data.json │ │ │ ├── 6-series-response-slo.json │ │ │ ├── 7-series-response-mql.json │ │ │ ├── 8-series-response-mql-multiple-point-descriptors.json │ │ │ ├── 9-series-response-distribution-without-points.json │ │ │ └── parse-response-is-returned.jsonc │ │ ├── time │ │ │ └── interval.go │ │ ├── time_series_filter.go │ │ ├── time_series_filter_test.go │ │ ├── time_series_query.go │ │ ├── time_series_query_test.go │ │ ├── types.go │ │ └── utils.go │ ├── cloudwatch │ │ ├── annotation_query.go │ │ ├── annotation_query_test.go │ │ ├── client_factory.go │ │ ├── clients │ │ │ ├── metrics.go │ │ │ └── metrics_test.go │ │ ├── cloudwatch.go │ │ ├── cloudwatch_integration_test.go │ │ ├── cloudwatch_test.go │ │ ├── constants │ │ │ └── metrics.go │ │ ├── features │ │ │ └── features.go │ │ ├── get_dimension_values_for_wildcards.go │ │ ├── get_dimension_values_for_wildcards_test.go │ │ ├── get_metric_data_executor.go │ │ ├── get_metric_data_executor_test.go │ │ ├── get_metric_query_batches.go │ │ ├── get_metric_query_batches_test.go │ │ ├── kinds │ │ │ └── dataquery │ │ │ │ └── types_dataquery_gen.go │ │ ├── log_actions.go │ │ ├── log_actions_test.go │ │ ├── log_query.go │ │ ├── log_query_test.go │ │ ├── log_sync_query.go │ │ ├── log_sync_query_test.go │ │ ├── metric_data_input_builder.go │ │ ├── metric_data_input_builder_test.go │ │ ├── metric_data_query_builder.go │ │ ├── metric_data_query_builder_test.go │ │ ├── metric_find_query.go │ │ ├── metric_find_query_test.go │ │ ├── mocks │ │ │ ├── accounts_service.go │ │ │ ├── cloudwatch_metric_api.go │ │ │ ├── list_metrics_service.go │ │ │ ├── logs.go │ │ │ ├── metrics_client.go │ │ │ ├── oam_client.go │ │ │ └── regions.go │ │ ├── models │ │ │ ├── api.go │ │ │ ├── cloudwatch_query.go │ │ │ ├── cloudwatch_query_test.go │ │ │ ├── errors.go │ │ │ ├── gmd_errors.go │ │ │ ├── http_error.go │ │ │ ├── logs_query.go │ │ │ ├── query_error.go │ │ │ ├── query_row_response.go │ │ │ ├── resources │ │ │ │ ├── dimension_keys_request.go │ │ │ │ ├── dimension_keys_request_test.go │ │ │ │ ├── dimension_values_request.go │ │ │ │ ├── dimension_values_request_test.go │ │ │ │ ├── log_group_fields_resource_request.go │ │ │ │ ├── log_group_fields_resource_request_test.go │ │ │ │ ├── log_groups_resource_request.go │ │ │ │ ├── metrics_resource_request.go │ │ │ │ ├── metrics_resource_request_test.go │ │ │ │ ├── resource_request.go │ │ │ │ ├── resource_request_test.go │ │ │ │ ├── types.go │ │ │ │ └── utils.go │ │ │ ├── settings.go │ │ │ ├── settings_test.go │ │ │ └── types.go │ │ ├── resource_handler.go │ │ ├── response_parser.go │ │ ├── response_parser_test.go │ │ ├── routes │ │ │ ├── accounts.go │ │ │ ├── accounts_test.go │ │ │ ├── dimension_keys.go │ │ │ ├── dimension_keys_test.go │ │ │ ├── dimension_values.go │ │ │ ├── dimension_values_test.go │ │ │ ├── external_id.go │ │ │ ├── external_id_test.go │ │ │ ├── http_helpers.go │ │ │ ├── log_group_fields.go │ │ │ ├── log_group_fields_test.go │ │ │ ├── log_groups.go │ │ │ ├── log_groups_test.go │ │ │ ├── metrics.go │ │ │ ├── metrics_test.go │ │ │ ├── middleware.go │ │ │ ├── middleware_test.go │ │ │ ├── namespaces.go │ │ │ ├── namespaces_test.go │ │ │ ├── regions.go │ │ │ └── regions_test.go │ │ ├── services │ │ │ ├── accounts.go │ │ │ ├── accounts_test.go │ │ │ ├── hardcoded_metrics.go │ │ │ ├── hardcoded_metrics_test.go │ │ │ ├── list_metrics.go │ │ │ ├── list_metrics_test.go │ │ │ ├── log_groups.go │ │ │ ├── log_groups_test.go │ │ │ ├── regions.go │ │ │ ├── regions_test.go │ │ │ └── utils.go │ │ ├── sort_frame.go │ │ ├── sort_frame_test.go │ │ ├── test_utils.go │ │ ├── testdata │ │ │ ├── multiple-outputs-query-a.json │ │ │ ├── multiple-outputs-query-b.json │ │ │ ├── multiple-outputs2.json │ │ │ ├── multiple-outputs3.json │ │ │ └── single-output-multiple-metric-data-results.json │ │ ├── time_series_query.go │ │ ├── time_series_query_test.go │ │ └── utils │ │ │ ├── metrics.go │ │ │ └── utils.go │ ├── elasticsearch │ │ ├── client │ │ │ ├── client.go │ │ │ ├── client_test.go │ │ │ ├── index_pattern.go │ │ │ ├── index_pattern_test.go │ │ │ ├── models.go │ │ │ ├── search_request.go │ │ │ └── search_request_test.go │ │ ├── data_query.go │ │ ├── data_query_test.go │ │ ├── elasticsearch.go │ │ ├── elasticsearch_test.go │ │ ├── error_handling_test.go │ │ ├── healthcheck.go │ │ ├── healthcheck_test.go │ │ ├── instrumentation │ │ │ └── instrumentation.go │ │ ├── kinds │ │ │ └── dataquery │ │ │ │ └── types_dataquery_gen.go │ │ ├── models.go │ │ ├── parse_query.go │ │ ├── parse_query_test.go │ │ ├── querydata_test.go │ │ ├── response_bench_test.go │ │ ├── response_parser.go │ │ ├── response_parser_test.go │ │ ├── snapshot_test.go │ │ ├── testdata │ │ │ └── trimedges_string.golden.jsonc │ │ ├── testdata_request │ │ │ ├── logs.queries.json │ │ │ ├── logs.request.line1.json │ │ │ ├── metric_complex.queries.json │ │ │ ├── metric_complex.request.line1.json │ │ │ ├── metric_multi.queries.json │ │ │ ├── metric_multi.request.line1.json │ │ │ ├── metric_multi.request.line2.json │ │ │ ├── metric_simple.queries.json │ │ │ ├── metric_simple.request.line1.json │ │ │ ├── raw_data.queries.json │ │ │ ├── raw_data.request.line1.json │ │ │ ├── raw_document.queries.json │ │ │ └── raw_document.request.line1.json │ │ └── testdata_response │ │ │ ├── logs.a.golden.jsonc │ │ │ ├── logs.queries.json │ │ │ ├── logs.response.json │ │ │ ├── metric_avg.a.golden.jsonc │ │ │ ├── metric_avg.queries.json │ │ │ ├── metric_avg.response.json │ │ │ ├── metric_complex.a.golden.jsonc │ │ │ ├── metric_complex.queries.json │ │ │ ├── metric_complex.response.json │ │ │ ├── metric_extended_stats.a.golden.jsonc │ │ │ ├── metric_extended_stats.queries.json │ │ │ ├── metric_extended_stats.response.json │ │ │ ├── metric_multi.a.golden.jsonc │ │ │ ├── metric_multi.b.golden.jsonc │ │ │ ├── metric_multi.queries.json │ │ │ ├── metric_multi.response.json │ │ │ ├── metric_percentiles.a.golden.jsonc │ │ │ ├── metric_percentiles.queries.json │ │ │ ├── metric_percentiles.response.json │ │ │ ├── metric_simple.a.golden.jsonc │ │ │ ├── metric_simple.queries.json │ │ │ ├── metric_simple.response.json │ │ │ ├── metric_top_metrics.a.golden.jsonc │ │ │ ├── metric_top_metrics.queries.json │ │ │ ├── metric_top_metrics.response.json │ │ │ ├── raw_data.a.golden.jsonc │ │ │ ├── raw_data.queries.json │ │ │ └── raw_data.response.json │ ├── grafana-postgresql-datasource │ │ ├── locker.go │ │ ├── locker_test.go │ │ ├── macros.go │ │ ├── macros_test.go │ │ ├── postgres.go │ │ ├── postgres_snapshot_test.go │ │ ├── postgres_test.go │ │ ├── proxy.go │ │ ├── proxy_test.go │ │ ├── sqleng │ │ │ ├── sql_engine.go │ │ │ └── sql_engine_test.go │ │ ├── testdata │ │ │ ├── table │ │ │ │ ├── multi_stat1.golden.jsonc │ │ │ │ ├── multi_stat1.sql │ │ │ │ ├── multi_stat2.golden.jsonc │ │ │ │ ├── multi_stat2.sql │ │ │ │ ├── no_rows.golden.jsonc │ │ │ │ ├── no_rows.sql │ │ │ │ ├── simple.golden.jsonc │ │ │ │ ├── simple.sql │ │ │ │ ├── time_group_compat_case1.golden.jsonc │ │ │ │ ├── time_group_compat_case1.sql │ │ │ │ ├── time_group_compat_case2.golden.jsonc │ │ │ │ ├── time_group_compat_case2.sql │ │ │ │ ├── timestamp_convert_bigint.golden.jsonc │ │ │ │ ├── timestamp_convert_bigint.sql │ │ │ │ ├── timestamp_convert_double.golden.jsonc │ │ │ │ ├── timestamp_convert_double.sql │ │ │ │ ├── timestamp_convert_integer.golden.jsonc │ │ │ │ ├── timestamp_convert_integer.sql │ │ │ │ ├── timestamp_convert_real.golden.jsonc │ │ │ │ ├── timestamp_convert_real.sql │ │ │ │ ├── types_char.golden.jsonc │ │ │ │ ├── types_char.sql │ │ │ │ ├── types_datetime.golden.jsonc │ │ │ │ ├── types_datetime.sql │ │ │ │ ├── types_numeric.golden.jsonc │ │ │ │ ├── types_numeric.sql │ │ │ │ ├── types_other.golden.jsonc │ │ │ │ └── types_other.sql │ │ │ └── time_series │ │ │ │ ├── 7x_compat_metric_label.golden.jsonc │ │ │ │ ├── 7x_compat_metric_label.sql │ │ │ │ ├── convert_to_float64.golden.jsonc │ │ │ │ ├── convert_to_float64.sql │ │ │ │ ├── convert_to_float64_not.golden.jsonc │ │ │ │ ├── convert_to_float64_not.sql │ │ │ │ ├── fill_null.golden.jsonc │ │ │ │ ├── fill_null.sql │ │ │ │ ├── fill_previous.golden.jsonc │ │ │ │ ├── fill_previous.sql │ │ │ │ ├── fill_value.golden.jsonc │ │ │ │ ├── fill_value.sql │ │ │ │ ├── fill_value_wide.golden.jsonc │ │ │ │ ├── fill_value_wide.sql │ │ │ │ ├── no_rows_long.golden.jsonc │ │ │ │ ├── no_rows_long.sql │ │ │ │ ├── no_rows_wide.golden.jsonc │ │ │ │ ├── no_rows_wide.sql │ │ │ │ ├── simple.golden.jsonc │ │ │ │ └── simple.sql │ │ ├── tlsmanager.go │ │ └── tlsmanager_test.go │ ├── grafana-pyroscope-datasource │ │ ├── instance.go │ │ ├── instance_test.go │ │ ├── kinds │ │ │ └── dataquery │ │ │ │ └── types_dataquery_gen.go │ │ ├── pyroscopeClient.go │ │ ├── pyroscopeClient_test.go │ │ ├── query.go │ │ ├── query_test.go │ │ ├── service.go │ │ ├── standalone │ │ │ ├── datasource.go │ │ │ └── main.go │ │ └── testdata │ │ │ └── profile_response.json │ ├── grafana-testdata-datasource │ │ ├── .gitignore │ │ ├── admission_handler.go │ │ ├── admission_handler_test.go │ │ ├── csv_data.go │ │ ├── csv_data_test.go │ │ ├── data │ │ │ ├── automobiles.csv │ │ │ ├── browser_marketshare.csv │ │ │ ├── flight_info_by_state.csv │ │ │ ├── gdp_per_capita.csv │ │ │ ├── js_libraries.csv │ │ │ ├── ohlc_dogecoin.csv │ │ │ ├── population_by_state.csv │ │ │ └── weight_height.csv │ │ ├── kinds │ │ │ ├── query.go │ │ │ ├── query.panel.example.json │ │ │ ├── query.panel.schema.json │ │ │ ├── query.request.example.json │ │ │ ├── query.request.schema.json │ │ │ ├── query.types.json │ │ │ └── query_test.go │ │ ├── resource_handler.go │ │ ├── scenarios.go │ │ ├── scenarios_test.go │ │ ├── sims │ │ │ ├── engine.go │ │ │ ├── engine_test.go │ │ │ ├── flight_path.go │ │ │ ├── flight_path_test.go │ │ │ ├── tank.go │ │ │ ├── testdata │ │ │ │ └── flight_path_query_A.jsonc │ │ │ ├── types.go │ │ │ ├── utils.go │ │ │ ├── utils_test.go │ │ │ └── waveform.go │ │ ├── standalone │ │ │ ├── datasource.go │ │ │ └── main.go │ │ ├── stream_handler.go │ │ ├── testdata.go │ │ ├── testdata │ │ │ ├── labels.csv │ │ │ ├── labels.golden.jsonc │ │ │ ├── mixed.csv │ │ │ ├── mixed.golden.jsonc │ │ │ ├── simple.csv │ │ │ ├── simple.golden.jsonc │ │ │ ├── usa-timeseries-wide.jsonc │ │ │ ├── usa-timeseries.jsonc │ │ │ ├── usa-values-as-fields.jsonc │ │ │ ├── usa-values-as-labeled-fields.jsonc │ │ │ └── usa-values-as-rows.jsonc │ │ ├── usa_stats.go │ │ ├── usa_stats_test.go │ │ └── utils.go │ ├── grafanads │ │ ├── grafana.go │ │ └── query.go │ ├── graphite │ │ ├── graphite.go │ │ ├── graphite_test.go │ │ └── types.go │ ├── influxdb │ │ ├── flux │ │ │ ├── builder.go │ │ │ ├── executor.go │ │ │ ├── executor_test.go │ │ │ ├── flux.go │ │ │ ├── macros.go │ │ │ ├── macros_test.go │ │ │ ├── query_models.go │ │ │ └── testdata │ │ │ │ ├── aggregate.csv │ │ │ │ ├── aggregate.golden.jsonc │ │ │ │ ├── boolean_data.csv │ │ │ │ ├── boolean_data.golden.jsonc │ │ │ │ ├── boolean_tag.csv │ │ │ │ ├── boolean_tag.golden.csv │ │ │ │ ├── boolean_tag.golden.jsonc │ │ │ │ ├── buckets.csv │ │ │ │ ├── buckets.golden.jsonc │ │ │ │ ├── grouping.csv │ │ │ │ ├── grouping.golden.jsonc │ │ │ │ ├── max_data_points_exceeded.csv │ │ │ │ ├── multiple.csv │ │ │ │ ├── multiple.golden.jsonc │ │ │ │ ├── multitime.csv │ │ │ │ ├── multitime.golden.jsonc │ │ │ │ ├── multivalue.csv │ │ │ │ ├── multivalue.golden.jsonc │ │ │ │ ├── non_standard_time_column.csv │ │ │ │ ├── non_standard_time_column.golden.jsonc │ │ │ │ ├── renamed.csv │ │ │ │ ├── renamed.golden.jsonc │ │ │ │ ├── simple.csv │ │ │ │ ├── simple.golden.jsonc │ │ │ │ ├── single.csv │ │ │ │ ├── single.golden.jsonc │ │ │ │ ├── table.csv │ │ │ │ ├── table.golden.jsonc │ │ │ │ ├── time_first.csv │ │ │ │ ├── time_first.golden.jsonc │ │ │ │ ├── without-time-column.csv │ │ │ │ └── without-time-column.golden.jsonc │ │ ├── fsql │ │ │ ├── arrow.go │ │ │ ├── arrow_test.go │ │ │ ├── client.go │ │ │ ├── fsql.go │ │ │ ├── fsql_test.go │ │ │ ├── macro.go │ │ │ ├── macro_test.go │ │ │ └── query_model.go │ │ ├── healthcheck.go │ │ ├── healthcheck_test.go │ │ ├── influxdb.go │ │ ├── influxql │ │ │ ├── buffered │ │ │ │ ├── response_parser.go │ │ │ │ └── response_parser_test.go │ │ │ ├── converter │ │ │ │ ├── converter.go │ │ │ │ └── converter_test.go │ │ │ ├── influxql.go │ │ │ ├── influxql_test.go │ │ │ ├── parser_bench_test.go │ │ │ ├── querydata │ │ │ │ ├── stream_parser.go │ │ │ │ └── stream_parser_test.go │ │ │ ├── testdata │ │ │ │ ├── all_values_are_null.json │ │ │ │ ├── all_values_are_null.table.golden.jsonc │ │ │ │ ├── all_values_are_null.time_series.golden.jsonc │ │ │ │ ├── cardinality.json │ │ │ │ ├── cardinality.table.golden.jsonc │ │ │ │ ├── cardinality.time_series.golden.jsonc │ │ │ │ ├── empty_response.json │ │ │ │ ├── empty_response.table.golden.jsonc │ │ │ │ ├── empty_response.time_series.golden.jsonc │ │ │ │ ├── error_on_top_level_response.json │ │ │ │ ├── error_response.json │ │ │ │ ├── influx_select_all_from_cpu.json │ │ │ │ ├── influx_select_all_from_cpu.table.golden.jsonc │ │ │ │ ├── influx_select_all_from_cpu.time_series.golden.jsonc │ │ │ │ ├── invalid_timestamp_format.json │ │ │ │ ├── invalid_value_format.json │ │ │ │ ├── invalid_value_format.table.golden.jsonc │ │ │ │ ├── invalid_value_format.time_series.golden.jsonc │ │ │ │ ├── many_columns.json │ │ │ │ ├── many_columns.table.golden.jsonc │ │ │ │ ├── many_columns.time_series.golden.jsonc │ │ │ │ ├── metric_find_queries.json │ │ │ │ ├── metric_find_queries.table.golden.jsonc │ │ │ │ ├── metric_find_queries.time_series.golden.jsonc │ │ │ │ ├── multiple_measurements.json │ │ │ │ ├── multiple_measurements.table.golden.jsonc │ │ │ │ ├── multiple_measurements.time_series.golden.jsonc │ │ │ │ ├── multiple_series_with_tags.json │ │ │ │ ├── multiple_series_with_tags.table.golden.jsonc │ │ │ │ ├── multiple_series_with_tags.time_series.golden.jsonc │ │ │ │ ├── multiple_series_with_tags_and_multiple_columns.json │ │ │ │ ├── multiple_series_with_tags_and_multiple_columns.table.golden.jsonc │ │ │ │ ├── multiple_series_with_tags_and_multiple_columns.time_series.golden.jsonc │ │ │ │ ├── one_measurement_with_two_columns.json │ │ │ │ ├── one_measurement_with_two_columns.table.golden.jsonc │ │ │ │ ├── one_measurement_with_two_columns.time_series.golden.jsonc │ │ │ │ ├── response.json │ │ │ │ ├── response.table.golden.jsonc │ │ │ │ ├── response.time_series.golden.jsonc │ │ │ │ ├── response_with_nil_bools_and_nil_strings.json │ │ │ │ ├── response_with_nil_bools_and_nil_strings.table.golden.jsonc │ │ │ │ ├── response_with_nil_bools_and_nil_strings.time_series.golden.jsonc │ │ │ │ ├── response_with_weird_tag.json │ │ │ │ ├── response_with_weird_tag.table.golden.jsonc │ │ │ │ ├── response_with_weird_tag.time_series.golden.jsonc │ │ │ │ ├── retention_policy.json │ │ │ │ ├── retention_policy.table.golden.jsonc │ │ │ │ ├── retention_policy.time_series.golden.jsonc │ │ │ │ ├── show_diagnostics.json │ │ │ │ ├── show_diagnostics.time_series.golden.jsonc │ │ │ │ ├── show_tag_values_response.json │ │ │ │ ├── show_tag_values_response.table.golden.jsonc │ │ │ │ ├── show_tag_values_response.time_series.golden.jsonc │ │ │ │ ├── simple_response.json │ │ │ │ ├── simple_response.table.golden.jsonc │ │ │ │ ├── simple_response.time_series.golden.jsonc │ │ │ │ ├── simple_response_with_diverse_data_types.json │ │ │ │ ├── simple_response_with_diverse_data_types.table.golden.jsonc │ │ │ │ ├── simple_response_with_diverse_data_types.time_series.golden.jsonc │ │ │ │ ├── some_values_are_null.json │ │ │ │ ├── some_values_are_null.table.golden.jsonc │ │ │ │ ├── some_values_are_null.time_series.golden.jsonc │ │ │ │ ├── string_column_with_null_value.json │ │ │ │ ├── string_column_with_null_value.table.golden.jsonc │ │ │ │ ├── string_column_with_null_value.time_series.golden.jsonc │ │ │ │ ├── string_column_with_null_value2.json │ │ │ │ ├── string_column_with_null_value2.table.golden.jsonc │ │ │ │ └── string_column_with_null_value2.time_series.golden.jsonc │ │ │ └── util │ │ │ │ ├── util.go │ │ │ │ └── util_test.go │ │ ├── mocks_test.go │ │ ├── models │ │ │ ├── datasource_info.go │ │ │ ├── model_parser.go │ │ │ ├── model_parser_test.go │ │ │ ├── models.go │ │ │ ├── query.go │ │ │ ├── query_part.go │ │ │ ├── query_part_test.go │ │ │ └── query_test.go │ │ └── settings.go │ ├── legacydata │ │ ├── contracts.go │ │ ├── conversions.go │ │ ├── dataframes.go │ │ ├── doc.go │ │ ├── interval │ │ │ ├── interval.go │ │ │ └── interval_test.go │ │ ├── service │ │ │ ├── service.go │ │ │ └── service_test.go │ │ ├── time_range.go │ │ └── time_range_test.go │ ├── loki │ │ ├── api.go │ │ ├── api_mock.go │ │ ├── api_test.go │ │ ├── frame.go │ │ ├── frame_test.go │ │ ├── framing_test.go │ │ ├── healthcheck.go │ │ ├── healthcheck_test.go │ │ ├── instrumentation │ │ │ └── instrumentation.go │ │ ├── kinds │ │ │ └── dataquery │ │ │ │ └── types_dataquery_gen.go │ │ ├── loki.go │ │ ├── loki_bench_test.go │ │ ├── parse_query.go │ │ ├── parse_query_test.go │ │ ├── step.go │ │ ├── step_test.go │ │ ├── streaming.go │ │ ├── testdata │ │ │ ├── empty.golden.jsonc │ │ │ ├── empty.json │ │ │ ├── matrix_gap.golden.jsonc │ │ │ ├── matrix_gap.json │ │ │ ├── matrix_inf.golden.jsonc │ │ │ ├── matrix_inf.json │ │ │ ├── matrix_name.golden.jsonc │ │ │ ├── matrix_name.json │ │ │ ├── matrix_nan.golden.jsonc │ │ │ ├── matrix_nan.json │ │ │ ├── matrix_simple.golden.jsonc │ │ │ ├── matrix_simple.json │ │ │ ├── matrix_small_step.golden.jsonc │ │ │ ├── matrix_small_step.json │ │ │ ├── matrix_with_stats.golden.jsonc │ │ │ ├── matrix_with_stats.json │ │ │ ├── streams_parse_errors.golden.jsonc │ │ │ ├── streams_parse_errors.json │ │ │ ├── streams_simple.golden.jsonc │ │ │ ├── streams_simple.json │ │ │ ├── streams_structured_metadata.golden.jsonc │ │ │ ├── streams_structured_metadata.json │ │ │ ├── streams_structured_metadata_2.golden.jsonc │ │ │ ├── streams_structured_metadata_2.json │ │ │ ├── vector_simple.golden.jsonc │ │ │ ├── vector_simple.json │ │ │ ├── vector_special_values.golden.jsonc │ │ │ └── vector_special_values.json │ │ ├── testdata_dataplane │ │ │ ├── empty.golden.jsonc │ │ │ ├── empty.json │ │ │ ├── matrix_gap.golden.jsonc │ │ │ ├── matrix_gap.json │ │ │ ├── matrix_inf.golden.jsonc │ │ │ ├── matrix_inf.json │ │ │ ├── matrix_name.golden.jsonc │ │ │ ├── matrix_name.json │ │ │ ├── matrix_nan.golden.jsonc │ │ │ ├── matrix_nan.json │ │ │ ├── matrix_simple.golden.jsonc │ │ │ ├── matrix_simple.json │ │ │ ├── matrix_small_step.golden.jsonc │ │ │ ├── matrix_small_step.json │ │ │ ├── matrix_with_stats.golden.jsonc │ │ │ ├── matrix_with_stats.json │ │ │ ├── streams_parse_errors.golden.jsonc │ │ │ ├── streams_parse_errors.json │ │ │ ├── streams_simple.golden.jsonc │ │ │ ├── streams_simple.json │ │ │ ├── streams_structured_metadata.golden.jsonc │ │ │ ├── streams_structured_metadata.json │ │ │ ├── streams_structured_metadata_2.golden.jsonc │ │ │ ├── streams_structured_metadata_2.json │ │ │ ├── vector_simple.golden.jsonc │ │ │ ├── vector_simple.json │ │ │ ├── vector_special_values.golden.jsonc │ │ │ └── vector_special_values.json │ │ ├── testdata_logs_dataplane │ │ │ ├── empty.golden.jsonc │ │ │ ├── empty.json │ │ │ ├── matrix_gap.golden.jsonc │ │ │ ├── matrix_gap.json │ │ │ ├── matrix_inf.golden.jsonc │ │ │ ├── matrix_inf.json │ │ │ ├── matrix_name.golden.jsonc │ │ │ ├── matrix_name.json │ │ │ ├── matrix_nan.golden.jsonc │ │ │ ├── matrix_nan.json │ │ │ ├── matrix_simple.golden.jsonc │ │ │ ├── matrix_simple.json │ │ │ ├── matrix_small_step.golden.jsonc │ │ │ ├── matrix_small_step.json │ │ │ ├── matrix_with_stats.golden.jsonc │ │ │ ├── matrix_with_stats.json │ │ │ ├── streams_parse_errors.golden.jsonc │ │ │ ├── streams_parse_errors.json │ │ │ ├── streams_simple.golden.jsonc │ │ │ ├── streams_simple.json │ │ │ ├── streams_structured_metadata.golden.jsonc │ │ │ ├── streams_structured_metadata.json │ │ │ ├── streams_structured_metadata_2.golden.jsonc │ │ │ ├── streams_structured_metadata_2.json │ │ │ ├── vector_simple.golden.jsonc │ │ │ ├── vector_simple.json │ │ │ ├── vector_special_values.golden.jsonc │ │ │ └── vector_special_values.json │ │ ├── testdata_metric_dataplane │ │ │ ├── empty.golden.jsonc │ │ │ ├── empty.json │ │ │ ├── matrix_gap.golden.jsonc │ │ │ ├── matrix_gap.json │ │ │ ├── matrix_inf.golden.jsonc │ │ │ ├── matrix_inf.json │ │ │ ├── matrix_name.golden.jsonc │ │ │ ├── matrix_name.json │ │ │ ├── matrix_nan.golden.jsonc │ │ │ ├── matrix_nan.json │ │ │ ├── matrix_simple.golden.jsonc │ │ │ ├── matrix_simple.json │ │ │ ├── matrix_small_step.golden.jsonc │ │ │ ├── matrix_small_step.json │ │ │ ├── matrix_with_stats.golden.jsonc │ │ │ ├── matrix_with_stats.json │ │ │ ├── streams_parse_errors.golden.jsonc │ │ │ ├── streams_parse_errors.json │ │ │ ├── streams_simple.golden.jsonc │ │ │ ├── streams_simple.json │ │ │ ├── streams_structured_metadata.golden.jsonc │ │ │ ├── streams_structured_metadata.json │ │ │ ├── streams_structured_metadata_2.golden.jsonc │ │ │ ├── streams_structured_metadata_2.json │ │ │ ├── vector_simple.golden.jsonc │ │ │ ├── vector_simple.json │ │ │ ├── vector_special_values.golden.jsonc │ │ │ └── vector_special_values.json │ │ └── types.go │ ├── mssql │ │ ├── kerberos │ │ │ └── kerberos.go │ │ ├── macros.go │ │ ├── macros_test.go │ │ ├── mssql.go │ │ ├── mssql_test.go │ │ ├── proxy.go │ │ ├── proxy_test.go │ │ ├── sqleng │ │ │ ├── sql_engine.go │ │ │ ├── sql_engine_test.go │ │ │ └── util │ │ │ │ └── util.go │ │ └── utils │ │ │ └── utils.go │ ├── mysql │ │ ├── macros.go │ │ ├── macros_test.go │ │ ├── mysql.go │ │ ├── mysql_service.go │ │ ├── mysql_snapshot_test.go │ │ ├── mysql_test.go │ │ ├── proxy.go │ │ ├── proxy_test.go │ │ ├── sqleng │ │ │ ├── sql_engine.go │ │ │ ├── sql_engine_test.go │ │ │ └── util │ │ │ │ └── util.go │ │ ├── standalone │ │ │ └── main.go │ │ └── testdata │ │ │ ├── table │ │ │ ├── no_rows.golden.jsonc │ │ │ ├── no_rows.sql │ │ │ ├── simple.golden.jsonc │ │ │ ├── simple.sql │ │ │ ├── timestamp_convert_bigint.golden.jsonc │ │ │ ├── timestamp_convert_bigint.sql │ │ │ ├── timestamp_convert_double.golden.jsonc │ │ │ ├── timestamp_convert_double.sql │ │ │ ├── timestamp_convert_float.golden.jsonc │ │ │ ├── timestamp_convert_float.sql │ │ │ ├── timestamp_convert_integer.golden.jsonc │ │ │ ├── timestamp_convert_integer.sql │ │ │ ├── types_char.golden.jsonc │ │ │ ├── types_char.sql │ │ │ ├── types_datetime.golden.jsonc │ │ │ ├── types_datetime.sql │ │ │ ├── types_numeric.golden.jsonc │ │ │ ├── types_numeric.sql │ │ │ ├── types_other.golden.jsonc │ │ │ └── types_other.sql │ │ │ └── time_series │ │ │ ├── 7x_compat_metric_label.golden.jsonc │ │ │ ├── 7x_compat_metric_label.sql │ │ │ ├── convert_to_float64.golden.jsonc │ │ │ ├── convert_to_float64.sql │ │ │ ├── convert_to_float64_not.golden.jsonc │ │ │ ├── convert_to_float64_not.sql │ │ │ ├── fill_null.golden.jsonc │ │ │ ├── fill_null.sql │ │ │ ├── fill_previous.golden.jsonc │ │ │ ├── fill_previous.sql │ │ │ ├── fill_value.golden.jsonc │ │ │ ├── fill_value.sql │ │ │ ├── fill_value_wide.golden.jsonc │ │ │ ├── fill_value_wide.sql │ │ │ ├── no_rows_long.golden.jsonc │ │ │ ├── no_rows_long.sql │ │ │ ├── no_rows_wide.golden.jsonc │ │ │ ├── no_rows_wide.sql │ │ │ ├── simple.golden.jsonc │ │ │ └── simple.sql │ ├── opentsdb │ │ ├── opentsdb.go │ │ ├── opentsdb_test.go │ │ └── types.go │ ├── parca │ │ ├── kinds │ │ │ └── dataquery │ │ │ │ └── types_dataquery_gen.go │ │ ├── plugin.go │ │ ├── plugin_test.go │ │ ├── query.go │ │ ├── query_test.go │ │ ├── resources.go │ │ ├── service.go │ │ └── standalone │ │ │ ├── datasource.go │ │ │ └── main.go │ ├── prometheus │ │ ├── azureauth │ │ │ ├── azure.go │ │ │ └── azure_test.go │ │ ├── prometheus.go │ │ └── prometheus_test.go │ └── tempo │ │ ├── grpc.go │ │ ├── kinds │ │ └── dataquery │ │ │ └── types_dataquery_gen.go │ │ ├── protospan_translation.go │ │ ├── search_stream.go │ │ ├── search_stream_test.go │ │ ├── standalone │ │ ├── datasource.go │ │ └── main.go │ │ ├── stream_handler.go │ │ ├── tempo.go │ │ ├── testData │ │ └── tempo_proto_response │ │ ├── trace.go │ │ ├── trace_test.go │ │ ├── trace_transform.go │ │ └── trace_transform_test.go ├── util │ ├── cmd │ │ └── cmd.go │ ├── cmputil │ │ ├── reporter.go │ │ └── reporter_test.go │ ├── contextutil.go │ ├── contextutil_test.go │ ├── encoding.go │ ├── encoding_test.go │ ├── encryption.go │ ├── encryption_test.go │ ├── errutil │ │ ├── doc.go │ │ ├── errhttp │ │ │ ├── writer.go │ │ │ └── writer_test.go │ │ ├── errors.go │ │ ├── errors_example_test.go │ │ ├── errors_test.go │ │ ├── log.go │ │ ├── source.go │ │ ├── status.go │ │ ├── template.go │ │ └── template_test.go │ ├── filepath.go │ ├── filepath_test.go │ ├── ip_address.go │ ├── ip_address_test.go │ ├── json.go │ ├── json_test.go │ ├── md5.go │ ├── md5_test.go │ ├── osutil │ │ ├── osutil.go │ │ └── osutil_test.go │ ├── pointer.go │ ├── proxyutil │ │ ├── proxyutil.go │ │ ├── proxyutil_test.go │ │ ├── reverse_proxy.go │ │ └── reverse_proxy_test.go │ ├── retryer │ │ ├── retryer.go │ │ └── retryer_test.go │ ├── reverse.go │ ├── reverse_test.go │ ├── ring │ │ ├── adaptive_chan.go │ │ ├── adaptive_chan_bench_test.go │ │ ├── adaptive_chan_test.go │ │ ├── ring.go │ │ └── ring_test.go │ ├── shortid_generator.go │ ├── shortid_generator_test.go │ ├── split_email.go │ ├── split_email_test.go │ ├── strings.go │ ├── strings_test.go │ ├── svg.go │ ├── ticker │ │ ├── metrics.go │ │ ├── ticker.go │ │ └── ticker_test.go │ ├── tls.go │ ├── tls_test.go │ ├── url.go │ ├── url_test.go │ ├── validation.go │ ├── validation_test.go │ └── xorm │ │ ├── LICENSE │ │ ├── convert.go │ │ ├── dialect_mysql.go │ │ ├── dialect_postgres.go │ │ ├── dialect_sqlite3.go │ │ ├── engine.go │ │ ├── engine_cond.go │ │ ├── engine_table.go │ │ ├── error.go │ │ ├── go.mod │ │ ├── go.sum │ │ ├── helpers.go │ │ ├── json.go │ │ ├── logger.go │ │ ├── processors.go │ │ ├── rows.go │ │ ├── session.go │ │ ├── session_cols.go │ │ ├── session_cond.go │ │ ├── session_context.go │ │ ├── session_convert.go │ │ ├── session_delete.go │ │ ├── session_exist.go │ │ ├── session_find.go │ │ ├── session_get.go │ │ ├── session_insert.go │ │ ├── session_iterate.go │ │ ├── session_query.go │ │ ├── session_raw.go │ │ ├── session_schema.go │ │ ├── session_stats.go │ │ ├── session_tx.go │ │ ├── session_update.go │ │ ├── statement.go │ │ ├── statement_args.go │ │ ├── statement_columnmap.go │ │ ├── statement_exprparam.go │ │ ├── statement_quote.go │ │ ├── syslogger.go │ │ ├── table_name.go │ │ ├── tag.go │ │ ├── xorm.go │ │ └── xorm_test.go └── web │ ├── binding.go │ ├── binding_test.go │ ├── context.go │ ├── context_test.go │ ├── macaron.go │ ├── macaron.s │ ├── render.go │ ├── response_writer.go │ ├── response_writer_test.go │ ├── router.go │ ├── tree.go │ ├── web.go │ └── webtest │ ├── middleware.go │ ├── webtest.go │ └── webtest_test.go ├── playwright.config.ts ├── plugins-bundled ├── .gitignore ├── README.md └── external.json ├── project.json ├── public ├── api-enterprise-spec.json ├── api-merged.json ├── app │ ├── AppWrapper.tsx │ ├── angular │ │ ├── AngularApp.ts │ │ ├── AngularLocationWrapper.test.ts │ │ ├── AngularLocationWrapper.ts │ │ ├── AngularRoot.tsx │ │ ├── GrafanaCtrl.ts │ │ ├── angular_wrappers.ts │ │ ├── array_join.ts │ │ ├── autofill_event_fix.ts │ │ ├── bridgeReactAngularRouting.ts │ │ ├── bsTooltip.ts │ │ ├── bsTypeahead.ts │ │ ├── components │ │ │ ├── HttpSettingsCtrl.ts │ │ │ ├── TlsAuthSettingsCtrl.ts │ │ │ ├── code_editor │ │ │ │ ├── brace.d.ts │ │ │ │ ├── code_editor.ts │ │ │ │ └── theme-grafana-dark.js │ │ │ ├── form_dropdown │ │ │ │ └── form_dropdown.ts │ │ │ ├── info_popover.ts │ │ │ ├── jsontree.ts │ │ │ ├── plugin_component.ts │ │ │ ├── query_part_editor.ts │ │ │ ├── scroll.ts │ │ │ ├── spectrum_picker.ts │ │ │ ├── sql_part │ │ │ │ ├── sql_part.ts │ │ │ │ └── sql_part_editor.ts │ │ │ └── switch.ts │ │ ├── core_module.ts │ │ ├── diff-view.ts │ │ ├── dropdown_typeahead.ts │ │ ├── filters │ │ │ └── filters.ts │ │ ├── give_focus.ts │ │ ├── index.ts │ │ ├── injectorMonkeyPatch.ts │ │ ├── jquery_extended.ts │ │ ├── lazyBootAngular.ts │ │ ├── loadAndInitAngularIfEnabled.ts │ │ ├── metric_segment.ts │ │ ├── misc.ts │ │ ├── ng_model_on_blur.ts │ │ ├── panel │ │ │ ├── AngularPanelReactWrapper.tsx │ │ │ ├── all.ts │ │ │ ├── metrics_panel_ctrl.ts │ │ │ ├── panel_ctrl.ts │ │ │ ├── panel_directive.ts │ │ │ ├── panel_editor_tab.ts │ │ │ ├── partials │ │ │ │ └── query_editor_row.html │ │ │ ├── query_ctrl.ts │ │ │ ├── query_editor_row.ts │ │ │ └── specs │ │ │ │ └── metrics_panel_ctrl.test.ts │ │ ├── partials.ts │ │ ├── partials │ │ │ ├── http_settings_next.html │ │ │ └── tls_auth_settings.html │ │ ├── promiseToDigest.test.ts │ │ ├── promiseToDigest.ts │ │ ├── react2angular.ts │ │ ├── rebuild_on_change.ts │ │ ├── registerComponents.ts │ │ ├── services │ │ │ ├── AngularLoader.ts │ │ │ ├── UtilSrv.ts │ │ │ ├── alert_srv.ts │ │ │ ├── annotations_srv.ts │ │ │ ├── dynamic_directive_srv.ts │ │ │ ├── nav_model_srv.ts │ │ │ ├── ng_react.ts │ │ │ ├── popover_srv.ts │ │ │ ├── segment_srv.ts │ │ │ └── timer.ts │ │ └── tags.ts │ ├── app.ts │ ├── core │ │ ├── TableModel.ts │ │ ├── actions │ │ │ ├── cleanUp.ts │ │ │ └── index.ts │ │ ├── app_events.ts │ │ ├── components │ │ │ ├── AccessControl │ │ │ │ ├── AddPermission.tsx │ │ │ │ ├── PermissionList.tsx │ │ │ │ ├── PermissionListItem.tsx │ │ │ │ ├── Permissions.tsx │ │ │ │ ├── index.ts │ │ │ │ └── types.ts │ │ │ ├── Animations │ │ │ │ ├── FadeIn.tsx │ │ │ │ └── SlideDown.tsx │ │ │ ├── AppChrome │ │ │ │ ├── AppChrome.test.tsx │ │ │ │ ├── AppChrome.tsx │ │ │ │ ├── AppChromeMenu.tsx │ │ │ │ ├── AppChromeService.test.tsx │ │ │ │ ├── AppChromeService.tsx │ │ │ │ ├── AppChromeUpdate.tsx │ │ │ │ ├── MegaMenu │ │ │ │ │ ├── FeatureHighlight.tsx │ │ │ │ │ ├── MegaMenu.test.tsx │ │ │ │ │ ├── MegaMenu.tsx │ │ │ │ │ ├── MegaMenuItem.tsx │ │ │ │ │ ├── MegaMenuItemText.tsx │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── NavToolbar │ │ │ │ │ ├── NavToolbar.tsx │ │ │ │ │ └── NavToolbarSeparator.tsx │ │ │ │ ├── News │ │ │ │ │ ├── NewsContainer.test.tsx │ │ │ │ │ ├── NewsContainer.tsx │ │ │ │ │ ├── NewsWrapper.tsx │ │ │ │ │ └── fixtures │ │ │ │ │ │ └── news.xml │ │ │ │ ├── OrganizationSwitcher │ │ │ │ │ ├── OrganizationPicker.tsx │ │ │ │ │ ├── OrganizationSelect.tsx │ │ │ │ │ ├── OrganizationSwitcher.test.tsx │ │ │ │ │ ├── OrganizationSwitcher.tsx │ │ │ │ │ └── types.ts │ │ │ │ ├── QuickAdd │ │ │ │ │ ├── QuickAdd.test.tsx │ │ │ │ │ ├── QuickAdd.tsx │ │ │ │ │ └── utils.ts │ │ │ │ ├── ReturnToPrevious │ │ │ │ │ ├── DismissableButton.tsx │ │ │ │ │ ├── ReturnToPrevious.test.tsx │ │ │ │ │ └── ReturnToPrevious.tsx │ │ │ │ ├── TopBar │ │ │ │ │ ├── SignInLink.tsx │ │ │ │ │ ├── TopNavBarMenu.tsx │ │ │ │ │ ├── TopSearchBar.tsx │ │ │ │ │ ├── TopSearchBarCommandPaletteTrigger.tsx │ │ │ │ │ ├── TopSearchBarSection.test.tsx │ │ │ │ │ └── TopSearchBarSection.tsx │ │ │ │ └── types.ts │ │ │ ├── AppNotifications │ │ │ │ ├── AppNotificationItem.tsx │ │ │ │ ├── AppNotificationList.tsx │ │ │ │ └── StoredNotificationItem.tsx │ │ │ ├── BouncingLoader │ │ │ │ └── BouncingLoader.tsx │ │ │ ├── Branding │ │ │ │ ├── Branding.tsx │ │ │ │ └── types.ts │ │ │ ├── Breadcrumbs │ │ │ │ ├── BreadcrumbItem.tsx │ │ │ │ ├── Breadcrumbs.test.tsx │ │ │ │ ├── Breadcrumbs.tsx │ │ │ │ ├── types.ts │ │ │ │ ├── utils.test.ts │ │ │ │ └── utils.ts │ │ │ ├── CardButton.tsx │ │ │ ├── CloseButton │ │ │ │ └── CloseButton.tsx │ │ │ ├── ColorScale │ │ │ │ └── ColorScale.tsx │ │ │ ├── DynamicImports │ │ │ │ └── SafeDynamicImport.tsx │ │ │ ├── EmptyListCTA │ │ │ │ ├── EmptyListCTA.test.tsx │ │ │ │ └── EmptyListCTA.tsx │ │ │ ├── FlaggedScroller.tsx │ │ │ ├── FolderFilter │ │ │ │ └── FolderFilter.tsx │ │ │ ├── Footer │ │ │ │ └── Footer.tsx │ │ │ ├── ForgottenPassword │ │ │ │ ├── ChangePassword.tsx │ │ │ │ ├── ChangePasswordPage.test.tsx │ │ │ │ ├── ChangePasswordPage.tsx │ │ │ │ ├── ForgottenPassword.tsx │ │ │ │ ├── SendResetMailPage.test.tsx │ │ │ │ └── SendResetMailPage.tsx │ │ │ ├── Form │ │ │ │ └── Form.tsx │ │ │ ├── FormPrompt │ │ │ │ └── FormPrompt.tsx │ │ │ ├── GraphNG │ │ │ │ ├── GraphNG.tsx │ │ │ │ ├── __snapshots__ │ │ │ │ │ └── utils.test.ts.snap │ │ │ │ ├── types.ts │ │ │ │ ├── utils.test.ts │ │ │ │ └── utils.ts │ │ │ ├── Indent │ │ │ │ └── Indent.tsx │ │ │ ├── Layers │ │ │ │ ├── AddLayerButton.test.tsx │ │ │ │ ├── AddLayerButton.tsx │ │ │ │ ├── LayerDragDropList.test.tsx │ │ │ │ ├── LayerDragDropList.tsx │ │ │ │ ├── LayerName.test.tsx │ │ │ │ ├── LayerName.tsx │ │ │ │ └── types.ts │ │ │ ├── LocalStorageValueProvider │ │ │ │ ├── LocalStorageValueProvider.tsx │ │ │ │ └── index.tsx │ │ │ ├── Login │ │ │ │ ├── LoginCtrl.tsx │ │ │ │ ├── LoginForm.tsx │ │ │ │ ├── LoginLayout.tsx │ │ │ │ ├── LoginPage.test.tsx │ │ │ │ ├── LoginPage.tsx │ │ │ │ ├── LoginServiceButtons.tsx │ │ │ │ ├── UserSignup.tsx │ │ │ │ └── types.ts │ │ │ ├── NavLandingPage │ │ │ │ ├── NavLandingPage.test.tsx │ │ │ │ ├── NavLandingPage.tsx │ │ │ │ ├── NavLandingPageCard.test.tsx │ │ │ │ └── NavLandingPageCard.tsx │ │ │ ├── NestedFolderPicker │ │ │ │ ├── NestedFolderList.tsx │ │ │ │ ├── NestedFolderPicker.test.tsx │ │ │ │ ├── NestedFolderPicker.tsx │ │ │ │ ├── Trigger.tsx │ │ │ │ ├── useFoldersQuery.ts │ │ │ │ └── useTreeInteractions.ts │ │ │ ├── OptionsUI │ │ │ │ ├── DashboardPicker.tsx │ │ │ │ ├── NumberInput.test.tsx │ │ │ │ ├── NumberInput.tsx │ │ │ │ ├── color.tsx │ │ │ │ ├── fieldColor.test.tsx │ │ │ │ ├── fieldColor.tsx │ │ │ │ ├── links.tsx │ │ │ │ ├── multiSelect.tsx │ │ │ │ ├── number.tsx │ │ │ │ ├── registry.tsx │ │ │ │ ├── select.tsx │ │ │ │ ├── slider.tsx │ │ │ │ ├── stats.tsx │ │ │ │ ├── string.tsx │ │ │ │ ├── strings.tsx │ │ │ │ └── units.tsx │ │ │ ├── Page │ │ │ │ ├── EditableTitle.test.tsx │ │ │ │ ├── EditableTitle.tsx │ │ │ │ ├── Page.test.tsx │ │ │ │ ├── Page.tsx │ │ │ │ ├── PageContents.tsx │ │ │ │ ├── PageHeader.tsx │ │ │ │ ├── PageTabs.test.tsx │ │ │ │ ├── PageTabs.tsx │ │ │ │ ├── PluginPage.tsx │ │ │ │ ├── types.ts │ │ │ │ ├── usePageNav.ts │ │ │ │ └── usePageTitle.ts │ │ │ ├── PageActionBar │ │ │ │ ├── PageActionBar.test.tsx │ │ │ │ └── PageActionBar.tsx │ │ │ ├── PageHeader │ │ │ │ ├── PageHeader.test.tsx │ │ │ │ ├── PageHeader.tsx │ │ │ │ └── PanelHeaderMenuItem.tsx │ │ │ ├── PageInfo │ │ │ │ ├── PageInfo.test.tsx │ │ │ │ └── PageInfo.tsx │ │ │ ├── PageLoader │ │ │ │ └── PageLoader.tsx │ │ │ ├── PageNotFound │ │ │ │ ├── EntityNotFound.tsx │ │ │ │ └── PageNotFound.tsx │ │ │ ├── PanelTypeFilter │ │ │ │ └── PanelTypeFilter.tsx │ │ │ ├── PasswordField │ │ │ │ ├── PasswordField.test.tsx │ │ │ │ └── PasswordField.tsx │ │ │ ├── PluginHelp │ │ │ │ └── PluginHelp.tsx │ │ │ ├── QueryOperationRow │ │ │ │ ├── OperationRowHelp.tsx │ │ │ │ ├── QueryOperationAction.test.tsx │ │ │ │ ├── QueryOperationAction.tsx │ │ │ │ ├── QueryOperationRow.test.tsx │ │ │ │ ├── QueryOperationRow.tsx │ │ │ │ ├── QueryOperationRowHeader.test.tsx │ │ │ │ └── QueryOperationRowHeader.tsx │ │ │ ├── RolePicker │ │ │ │ ├── BuiltinRoleSelector.tsx │ │ │ │ ├── RoleMenuGroupOption.tsx │ │ │ │ ├── RoleMenuGroupsSection.tsx │ │ │ │ ├── RoleMenuOption.tsx │ │ │ │ ├── RolePicker.tsx │ │ │ │ ├── RolePickerInput.tsx │ │ │ │ ├── RolePickerMenu.tsx │ │ │ │ ├── RolePickerSubMenu.tsx │ │ │ │ ├── TeamRolePicker.tsx │ │ │ │ ├── UserRolePicker.tsx │ │ │ │ ├── ValueContainer.tsx │ │ │ │ ├── api.ts │ │ │ │ ├── constants.ts │ │ │ │ ├── hooks.ts │ │ │ │ ├── styles.ts │ │ │ │ └── utils.ts │ │ │ ├── SVG │ │ │ │ ├── SanitizedSVG.test.tsx │ │ │ │ ├── SanitizedSVG.tsx │ │ │ │ └── utils.ts │ │ │ ├── Select │ │ │ │ ├── DashboardPicker.tsx │ │ │ │ ├── FolderPicker.tsx │ │ │ │ ├── MetricSelect.test.tsx │ │ │ │ ├── MetricSelect.tsx │ │ │ │ ├── OldFolderPicker.test.tsx │ │ │ │ ├── OldFolderPicker.tsx │ │ │ │ ├── OrgPicker.test.tsx │ │ │ │ ├── OrgPicker.tsx │ │ │ │ ├── ReadonlyFolderPicker │ │ │ │ │ ├── ReadonlyFolderPicker.test.tsx │ │ │ │ │ ├── ReadonlyFolderPicker.tsx │ │ │ │ │ ├── api.test.ts │ │ │ │ │ ├── api.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── ServiceAccountPicker.tsx │ │ │ │ ├── SortPicker.tsx │ │ │ │ ├── TeamPicker.test.tsx │ │ │ │ ├── TeamPicker.tsx │ │ │ │ ├── UserPicker.test.tsx │ │ │ │ └── UserPicker.tsx │ │ │ ├── SharedPreferences │ │ │ │ ├── SharedPreferences.test.tsx │ │ │ │ └── SharedPreferences.tsx │ │ │ ├── Signup │ │ │ │ ├── SignupPage.test.tsx │ │ │ │ ├── SignupPage.tsx │ │ │ │ ├── VerifyEmail.tsx │ │ │ │ ├── VerifyEmailPage.test.tsx │ │ │ │ └── VerifyEmailPage.tsx │ │ │ ├── SplitPaneWrapper │ │ │ │ └── SplitPaneWrapper.tsx │ │ │ ├── TagFilter │ │ │ │ ├── TagBadge.tsx │ │ │ │ ├── TagFilter.tsx │ │ │ │ └── TagOption.tsx │ │ │ ├── TimePicker │ │ │ │ ├── TimePickerWithHistory.test.tsx │ │ │ │ └── TimePickerWithHistory.tsx │ │ │ ├── TimeSeries │ │ │ │ ├── TimeSeries.tsx │ │ │ │ ├── utils.test.ts │ │ │ │ └── utils.ts │ │ │ ├── TimelineChart │ │ │ │ ├── TimelineChart.tsx │ │ │ │ ├── timeline.ts │ │ │ │ ├── utils.test.ts │ │ │ │ └── utils.ts │ │ │ ├── Upgrade │ │ │ │ ├── ProBadge.tsx │ │ │ │ └── UpgradeBox.tsx │ │ │ ├── ValidationLabels │ │ │ │ └── ValidationLabels.tsx │ │ │ ├── WithFeatureToggle.tsx │ │ │ └── help │ │ │ │ └── HelpModal.tsx │ │ ├── config.ts │ │ ├── constants.ts │ │ ├── context │ │ │ ├── GrafanaContext.ts │ │ │ ├── ModalsContextProvider.tsx │ │ │ └── ModalsProvider.ts │ │ ├── copy │ │ │ └── appNotification.ts │ │ ├── core.ts │ │ ├── history │ │ │ ├── RichHistoryLocalStorage.test.ts │ │ │ ├── RichHistoryLocalStorage.ts │ │ │ ├── RichHistoryRemoteStorage.test.ts │ │ │ ├── RichHistoryRemoteStorage.ts │ │ │ ├── RichHistoryStorage.ts │ │ │ ├── localStorageConverter.test.ts │ │ │ ├── localStorageConverter.ts │ │ │ ├── remoteStorageConverter.test.ts │ │ │ ├── remoteStorageConverter.ts │ │ │ ├── richHistoryLocalStorageUtils.test.ts │ │ │ ├── richHistoryLocalStorageUtils.ts │ │ │ └── richHistoryStorageProvider.ts │ │ ├── hooks │ │ │ ├── useBusEvent.ts │ │ │ ├── useCleanup.ts │ │ │ ├── useMediaQueryChange.ts │ │ │ ├── useNavModel.ts │ │ │ └── useQueryParams.ts │ │ ├── icons │ │ │ ├── cached.json │ │ │ ├── iconBundle.ts │ │ │ └── iconBundle.ts.template │ │ ├── internationalization │ │ │ ├── constants.test.ts │ │ │ ├── constants.ts │ │ │ ├── index.test.tsx │ │ │ ├── index.tsx │ │ │ └── loadTranslations.ts │ │ ├── lodash_extended.ts │ │ ├── log_events.ts │ │ ├── monacoEnv.ts │ │ ├── navigation │ │ │ ├── GrafanaRoute.test.tsx │ │ │ ├── GrafanaRoute.tsx │ │ │ ├── GrafanaRouteError.tsx │ │ │ ├── GrafanaRouteLoading.tsx │ │ │ ├── RouterDebugger.tsx │ │ │ ├── __mocks__ │ │ │ │ └── routeProps.ts │ │ │ ├── errorModels.ts │ │ │ ├── hooks.ts │ │ │ ├── kiosk.ts │ │ │ ├── patch │ │ │ │ ├── RouteParamsProvider.ts │ │ │ │ ├── RouteProvider.ts │ │ │ │ └── interceptLinkClicks.ts │ │ │ ├── testRoutes.tsx │ │ │ └── types.ts │ │ ├── profiler.ts │ │ ├── reducers │ │ │ ├── appNotification.test.ts │ │ │ ├── appNotification.ts │ │ │ ├── index.ts │ │ │ ├── navBarTree.ts │ │ │ ├── navModel.test.ts │ │ │ ├── navModel.ts │ │ │ ├── root.test.ts │ │ │ └── root.ts │ │ ├── selectors │ │ │ ├── navModel.test.ts │ │ │ └── navModel.ts │ │ ├── services │ │ │ ├── FetchQueue.test.ts │ │ │ ├── FetchQueue.ts │ │ │ ├── FetchQueueWorker.test.ts │ │ │ ├── FetchQueueWorker.ts │ │ │ ├── KeybindingSet.ts │ │ │ ├── NewFrontendAssetsChecker.test.ts │ │ │ ├── NewFrontendAssetsChecker.ts │ │ │ ├── PreferencesService.ts │ │ │ ├── ResponseQueue.test.ts │ │ │ ├── ResponseQueue.ts │ │ │ ├── StateManagerBase.ts │ │ │ ├── __mocks__ │ │ │ │ ├── backend_srv.ts │ │ │ │ └── search_srv.ts │ │ │ ├── backend_srv.ts │ │ │ ├── context_srv.ts │ │ │ ├── echo │ │ │ │ ├── Echo.ts │ │ │ │ ├── EchoSrv.ts │ │ │ │ ├── backends │ │ │ │ │ ├── PerformanceBackend.ts │ │ │ │ │ ├── analytics │ │ │ │ │ │ ├── ApplicationInsightsBackend.ts │ │ │ │ │ │ ├── GA4Backend.ts │ │ │ │ │ │ ├── GABackend.ts │ │ │ │ │ │ └── RudderstackBackend.ts │ │ │ │ │ └── grafana-javascript-agent │ │ │ │ │ │ ├── EchoSrvTransport.ts │ │ │ │ │ │ ├── GrafanaJavascriptAgentBackend.test.ts │ │ │ │ │ │ ├── GrafanaJavascriptAgentBackend.ts │ │ │ │ │ │ └── types.ts │ │ │ │ └── utils.ts │ │ │ ├── impression_srv.ts │ │ │ ├── keybindingSrv.ts │ │ │ └── theme.ts │ │ ├── specs │ │ │ ├── TableModel.test.ts │ │ │ ├── backend_srv.test.ts │ │ │ ├── factors.test.ts │ │ │ ├── flatten.test.ts │ │ │ ├── impression_srv.test.ts │ │ │ ├── rangeutil.test.ts │ │ │ ├── store.test.ts │ │ │ ├── ticks.test.ts │ │ │ └── time_series.test.ts │ │ ├── store.ts │ │ ├── time_series2.ts │ │ ├── trustedTypePolicies.ts │ │ └── utils │ │ │ ├── CancelablePromise.ts │ │ │ ├── ConfigProvider.tsx │ │ │ ├── CorsWorker.ts │ │ │ ├── accessControl.ts │ │ │ ├── applyStateChanges.ts │ │ │ ├── arrayMove.ts │ │ │ ├── auth.ts │ │ │ ├── browser.test.ts │ │ │ ├── browser.ts │ │ │ ├── colors.ts │ │ │ ├── connectWithReduxStore.tsx │ │ │ ├── dag.test.ts │ │ │ ├── dag.ts │ │ │ ├── deferred.ts │ │ │ ├── docsLinks.ts │ │ │ ├── errors.test.ts │ │ │ ├── errors.ts │ │ │ ├── explore.test.ts │ │ │ ├── explore.ts │ │ │ ├── factors.ts │ │ │ ├── fetch.test.ts │ │ │ ├── fetch.ts │ │ │ ├── flatten.ts │ │ │ ├── isShallowEqual.ts │ │ │ ├── kbn.test.ts │ │ │ ├── kbn.ts │ │ │ ├── metrics.ts │ │ │ ├── model_utils.ts │ │ │ ├── navBarItem-translations.ts │ │ │ ├── object.test.ts │ │ │ ├── object.ts │ │ │ ├── query.test.ts │ │ │ ├── query.ts │ │ │ ├── richHistory.test.ts │ │ │ ├── richHistory.ts │ │ │ ├── richHistoryTypes.ts │ │ │ ├── set.ts │ │ │ ├── sheet.test.ts │ │ │ ├── sheet.ts │ │ │ ├── shortLinks.test.ts │ │ │ ├── shortLinks.ts │ │ │ ├── ticks.ts │ │ │ ├── timePicker.test.ts │ │ │ ├── timePicker.ts │ │ │ ├── timeRegions.test.ts │ │ │ ├── timeRegions.ts │ │ │ ├── urlToken.ts │ │ │ └── version.ts │ ├── dev.ts │ ├── features │ │ ├── admin │ │ │ ├── AdminEditOrgPage.tsx │ │ │ ├── AdminFeatureTogglesAPI.test.ts │ │ │ ├── AdminFeatureTogglesAPI.ts │ │ │ ├── AdminFeatureTogglesPage.tsx │ │ │ ├── AdminFeatureTogglesTable.tsx │ │ │ ├── AdminListOrgsPage.tsx │ │ │ ├── AdminOrgsTable.tsx │ │ │ ├── AdminSettings.tsx │ │ │ ├── AdminSettingsTable.tsx │ │ │ ├── LicenseChrome.tsx │ │ │ ├── OrgRolePicker.tsx │ │ │ ├── ServerStats.test.tsx │ │ │ ├── ServerStats.tsx │ │ │ ├── ServerStatsCard.tsx │ │ │ ├── UpgradePage.tsx │ │ │ ├── UserAdminPage.tsx │ │ │ ├── UserCreatePage.tsx │ │ │ ├── UserLdapSyncInfo.tsx │ │ │ ├── UserListAdminPage.tsx │ │ │ ├── UserListAnonymousPage.tsx │ │ │ ├── UserListPage.test.tsx │ │ │ ├── UserListPage.tsx │ │ │ ├── UserListPublicDashboardPage │ │ │ │ ├── DashboardsListModalButton.tsx │ │ │ │ ├── DeleteUserModalButton.tsx │ │ │ │ └── UserListPublicDashboardPage.tsx │ │ │ ├── UserOrgs.tsx │ │ │ ├── UserPermissions.tsx │ │ │ ├── UserProfile.tsx │ │ │ ├── UserSessions.tsx │ │ │ ├── Users │ │ │ │ ├── AnonUsersTable.tsx │ │ │ │ ├── OrgUnits.tsx │ │ │ │ ├── OrgUsersTable.test.tsx │ │ │ │ ├── OrgUsersTable.tsx │ │ │ │ └── UsersTable.tsx │ │ │ ├── api.ts │ │ │ ├── ldap │ │ │ │ ├── LdapConnectionStatus.tsx │ │ │ │ ├── LdapPage.tsx │ │ │ │ ├── LdapSyncInfo.tsx │ │ │ │ ├── LdapUserGroups.tsx │ │ │ │ ├── LdapUserInfo.tsx │ │ │ │ ├── LdapUserMappingInfo.tsx │ │ │ │ ├── LdapUserPermissions.tsx │ │ │ │ └── LdapUserTeams.tsx │ │ │ ├── partials │ │ │ │ ├── admin_home.html │ │ │ │ ├── edit_org.html │ │ │ │ ├── stats.html │ │ │ │ └── styleguide.html │ │ │ ├── state │ │ │ │ ├── actions.ts │ │ │ │ ├── apis.tsx │ │ │ │ ├── reducers.test.ts │ │ │ │ └── reducers.ts │ │ │ └── utils.ts │ │ ├── alerting │ │ │ ├── routes.tsx │ │ │ ├── state │ │ │ │ ├── ThresholdMapper.test.ts │ │ │ │ ├── ThresholdMapper.ts │ │ │ │ ├── alertDef.ts │ │ │ │ ├── query_part.ts │ │ │ │ ├── reducers.test.ts │ │ │ │ ├── reducers.ts │ │ │ │ ├── selectors.test.ts │ │ │ │ └── selectors.ts │ │ │ └── unified │ │ │ │ ├── AlertGroups.test.tsx │ │ │ │ ├── AlertGroups.tsx │ │ │ │ ├── AlertWarning.tsx │ │ │ │ ├── AlertingNotEnabled.tsx │ │ │ │ ├── AlertsFolderView.test.tsx │ │ │ │ ├── AlertsFolderView.tsx │ │ │ │ ├── Analytics.test.ts │ │ │ │ ├── Analytics.ts │ │ │ │ ├── CloneRuleEditor.test.tsx │ │ │ │ ├── CloneRuleEditor.tsx │ │ │ │ ├── ExistingRuleEditor.tsx │ │ │ │ ├── GrafanaRuleQueryViewer.test.tsx │ │ │ │ ├── GrafanaRuleQueryViewer.tsx │ │ │ │ ├── MuteTimings.test.tsx │ │ │ │ ├── MuteTimings.tsx │ │ │ │ ├── NotificationPolicies.test.tsx │ │ │ │ ├── NotificationPolicies.tsx │ │ │ │ ├── PanelAlertTab.tsx │ │ │ │ ├── PanelAlertTabContent.test.tsx │ │ │ │ ├── PanelAlertTabContent.tsx │ │ │ │ ├── Receivers.tsx │ │ │ │ ├── RedirectToRuleViewer.test.tsx │ │ │ │ ├── RedirectToRuleViewer.tsx │ │ │ │ ├── RuleEditor.tsx │ │ │ │ ├── RuleEditorCloudOnlyAllowed.test.tsx │ │ │ │ ├── RuleEditorCloudRules.test.tsx │ │ │ │ ├── RuleEditorExisting.test.tsx │ │ │ │ ├── RuleEditorGrafanaRules.test.tsx │ │ │ │ ├── RuleEditorRecordingRule.test.tsx │ │ │ │ ├── RuleList.test.tsx │ │ │ │ ├── RuleList.tsx │ │ │ │ ├── RuleViewer.tsx │ │ │ │ ├── Settings.test.tsx │ │ │ │ ├── Settings.tsx │ │ │ │ ├── Silences.test.tsx │ │ │ │ ├── Silences.tsx │ │ │ │ ├── TESTING.md │ │ │ │ ├── TODO.md │ │ │ │ ├── Templates.tsx │ │ │ │ ├── __mocks__ │ │ │ │ ├── createRouteGroupsMatcherWorker.ts │ │ │ │ └── useRouteGroupsMatcher.ts │ │ │ │ ├── __snapshots__ │ │ │ │ ├── NotificationPolicies.test.tsx.snap │ │ │ │ └── PanelAlertTabContent.test.tsx.snap │ │ │ │ ├── api │ │ │ │ ├── alertRuleApi.ts │ │ │ │ ├── alertSilencesApi.ts │ │ │ │ ├── alertingApi.ts │ │ │ │ ├── alertmanager.ts │ │ │ │ ├── alertmanagerApi.ts │ │ │ │ ├── annotations.test.ts │ │ │ │ ├── annotations.ts │ │ │ │ ├── buildInfo.test.ts │ │ │ │ ├── buildInfo.ts │ │ │ │ ├── dashboardApi.ts │ │ │ │ ├── dataSourcesApi.ts │ │ │ │ ├── featureDiscoveryApi.ts │ │ │ │ ├── grafana.test.ts │ │ │ │ ├── grafana.ts │ │ │ │ ├── incidentsApi.ts │ │ │ │ ├── labelsApi.ts │ │ │ │ ├── onCallApi.ts │ │ │ │ ├── preview.ts │ │ │ │ ├── prometheus.test.ts │ │ │ │ ├── prometheus.ts │ │ │ │ ├── receiversApi.ts │ │ │ │ ├── ruler.test.ts │ │ │ │ ├── ruler.ts │ │ │ │ ├── stateHistoryApi.ts │ │ │ │ ├── templateApi.ts │ │ │ │ └── upgradeApi.ts │ │ │ │ ├── components │ │ │ │ ├── AlertLabel.tsx │ │ │ │ ├── AlertLabelDropdown.tsx │ │ │ │ ├── AlertLabels.test.tsx │ │ │ │ ├── AlertLabels.tsx │ │ │ │ ├── AlertManagerPicker.tsx │ │ │ │ ├── AlertStateDot.tsx │ │ │ │ ├── AlertingPageWrapper.tsx │ │ │ │ ├── AnnotationDetailsField.tsx │ │ │ │ ├── Authorize.tsx │ │ │ │ ├── CollapseToggle.test.tsx │ │ │ │ ├── CollapseToggle.tsx │ │ │ │ ├── ConditionalWrap.tsx │ │ │ │ ├── DetailsField.tsx │ │ │ │ ├── DynamicTable.tsx │ │ │ │ ├── DynamicTableWithGuidelines.tsx │ │ │ │ ├── EmptyArea.tsx │ │ │ │ ├── EmptyAreaWithCTA.tsx │ │ │ │ ├── Expression.tsx │ │ │ │ ├── GrafanaAlertmanagerDeliveryWarning.test.tsx │ │ │ │ ├── GrafanaAlertmanagerDeliveryWarning.tsx │ │ │ │ ├── HoverCard.tsx │ │ │ │ ├── InfoIcon.tsx │ │ │ │ ├── InfoPausedRule.tsx │ │ │ │ ├── InvalidIntervalWarning.tsx │ │ │ │ ├── Label.tsx │ │ │ │ ├── MenuItemPauseRule.tsx │ │ │ │ ├── MetaText.tsx │ │ │ │ ├── MoreButton.tsx │ │ │ │ ├── NoAlertManagerWarning.tsx │ │ │ │ ├── PluginBridge.mock.ts │ │ │ │ ├── PluginBridge.test.tsx │ │ │ │ ├── PluginBridge.tsx │ │ │ │ ├── Provisioning.tsx │ │ │ │ ├── RuleLocation.tsx │ │ │ │ ├── Spacer.tsx │ │ │ │ ├── StateColoredText.tsx │ │ │ │ ├── StateTag.tsx │ │ │ │ ├── Strong.tsx │ │ │ │ ├── Tokenize.tsx │ │ │ │ ├── Well.tsx │ │ │ │ ├── WithReturnButton.tsx │ │ │ │ ├── alert-groups │ │ │ │ │ ├── AlertDetails.tsx │ │ │ │ │ ├── AlertGroup.tsx │ │ │ │ │ ├── AlertGroupAlertsTable.tsx │ │ │ │ │ ├── AlertGroupFilter.tsx │ │ │ │ │ ├── AlertGroupHeader.tsx │ │ │ │ │ ├── AlertStateFilter.tsx │ │ │ │ │ ├── GroupBy.tsx │ │ │ │ │ ├── MatcherFilter.test.tsx │ │ │ │ │ └── MatcherFilter.tsx │ │ │ │ ├── bridges │ │ │ │ │ └── DeclareIncidentButton.tsx │ │ │ │ ├── contact-points │ │ │ │ │ ├── ContactPoints.test.tsx │ │ │ │ │ ├── ContactPoints.tsx │ │ │ │ │ ├── DuplicateMessageTemplate.tsx │ │ │ │ │ ├── EditContactPoint.tsx │ │ │ │ │ ├── EditMessageTemplate.tsx │ │ │ │ │ ├── NewContactPoint.test.tsx │ │ │ │ │ ├── NewContactPoint.tsx │ │ │ │ │ ├── NewMessageTemplate.tsx │ │ │ │ │ ├── NotificationTemplates.tsx │ │ │ │ │ ├── __mocks__ │ │ │ │ │ │ ├── alertmanager.config.mock.json │ │ │ │ │ │ ├── alertmanager.mimir.config.mock.json │ │ │ │ │ │ ├── alertmanager.vanilla.mock.json │ │ │ │ │ │ ├── grafanaManagedServer.ts │ │ │ │ │ │ ├── mimirFlavoredServer.ts │ │ │ │ │ │ ├── receivers.mock.json │ │ │ │ │ │ └── vanillaAlertmanagerServer.ts │ │ │ │ │ ├── __snapshots__ │ │ │ │ │ │ ├── NewContactPoint.test.tsx.snap │ │ │ │ │ │ └── useContactPoints.test.tsx.snap │ │ │ │ │ ├── components │ │ │ │ │ │ ├── ContactPointsFilter.tsx │ │ │ │ │ │ ├── GlobalConfig.tsx │ │ │ │ │ │ ├── GlobalConfigAlert.tsx │ │ │ │ │ │ ├── Modals.tsx │ │ │ │ │ │ └── UnusedBadge.tsx │ │ │ │ │ ├── templates │ │ │ │ │ │ └── EditorColumnHeader.tsx │ │ │ │ │ ├── useContactPoints.test.tsx │ │ │ │ │ ├── useContactPoints.tsx │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── export │ │ │ │ │ ├── FileExportPreview.tsx │ │ │ │ │ ├── GrafanaExportDrawer.tsx │ │ │ │ │ ├── GrafanaModifyExport.test.tsx │ │ │ │ │ ├── GrafanaModifyExport.tsx │ │ │ │ │ ├── GrafanaMuteTimingsExporter.tsx │ │ │ │ │ ├── GrafanaPoliciesExporter.tsx │ │ │ │ │ ├── GrafanaReceiverExporter.tsx │ │ │ │ │ ├── GrafanaReceiversExporter.tsx │ │ │ │ │ ├── GrafanaRuleExporter.tsx │ │ │ │ │ ├── GrafanaRuleFolderExporter.tsx │ │ │ │ │ ├── GrafanaRuleGroupExporter.tsx │ │ │ │ │ ├── GrafanaRulesExporter.tsx │ │ │ │ │ └── providers.ts │ │ │ │ ├── expressions │ │ │ │ │ ├── Expression.test.tsx │ │ │ │ │ ├── Expression.tsx │ │ │ │ │ ├── ExpressionStatusIndicator.test.tsx │ │ │ │ │ ├── ExpressionStatusIndicator.tsx │ │ │ │ │ ├── util.test.ts │ │ │ │ │ └── util.ts │ │ │ │ ├── extensions │ │ │ │ │ ├── AlertInstanceExtensionPoint.tsx │ │ │ │ │ └── AlertInstanceExtensionPointMenu.tsx │ │ │ │ ├── mute-timings │ │ │ │ │ ├── MuteTimingForm.tsx │ │ │ │ │ ├── MuteTimingTimeInterval.tsx │ │ │ │ │ ├── MuteTimingTimeRange.tsx │ │ │ │ │ ├── MuteTimingsTable.test.tsx │ │ │ │ │ ├── MuteTimingsTable.tsx │ │ │ │ │ ├── __snapshots__ │ │ │ │ │ │ └── util.test.tsx.snap │ │ │ │ │ ├── timezones.tsx │ │ │ │ │ ├── util.test.tsx │ │ │ │ │ └── util.tsx │ │ │ │ ├── notification-policies │ │ │ │ │ ├── AlertGroupsSummary.tsx │ │ │ │ │ ├── ContactPointSelector.tsx │ │ │ │ │ ├── EditDefaultPolicyForm.test.tsx │ │ │ │ │ ├── EditDefaultPolicyForm.tsx │ │ │ │ │ ├── EditNotificationPolicyForm.test.tsx │ │ │ │ │ ├── EditNotificationPolicyForm.tsx │ │ │ │ │ ├── Filters.tsx │ │ │ │ │ ├── Matchers.tsx │ │ │ │ │ ├── Modals.tsx │ │ │ │ │ ├── Policy.test.tsx │ │ │ │ │ ├── Policy.tsx │ │ │ │ │ ├── PromDurationDocs.tsx │ │ │ │ │ ├── PromDurationInput.tsx │ │ │ │ │ ├── formStyles.ts │ │ │ │ │ ├── routeTimingsFields.ts │ │ │ │ │ └── timingOptions.ts │ │ │ │ ├── panel-alerts-tab │ │ │ │ │ ├── NewRuleFromPanelButton.test.tsx │ │ │ │ │ └── NewRuleFromPanelButton.tsx │ │ │ │ ├── receivers │ │ │ │ │ ├── AlertInstanceModalSelector.tsx │ │ │ │ │ ├── DuplicateTemplateView.tsx │ │ │ │ │ ├── EditReceiverView.tsx │ │ │ │ │ ├── EditTemplateView.tsx │ │ │ │ │ ├── GlobalConfigForm.tsx │ │ │ │ │ ├── NewReceiverView.tsx │ │ │ │ │ ├── NewTemplateView.tsx │ │ │ │ │ ├── PayloadEditor.test.tsx │ │ │ │ │ ├── PayloadEditor.tsx │ │ │ │ │ ├── ReceiversSection.tsx │ │ │ │ │ ├── TemplateData.ts │ │ │ │ │ ├── TemplateDataDocs.tsx │ │ │ │ │ ├── TemplateEditor.tsx │ │ │ │ │ ├── TemplateForm.tsx │ │ │ │ │ ├── TemplatePreview.test.tsx │ │ │ │ │ ├── TemplatePreview.tsx │ │ │ │ │ ├── TemplatesTable.test.tsx │ │ │ │ │ ├── TemplatesTable.tsx │ │ │ │ │ ├── editor │ │ │ │ │ │ ├── alertManagerSuggestions.ts │ │ │ │ │ │ ├── autocomplete.ts │ │ │ │ │ │ ├── definition.ts │ │ │ │ │ │ ├── language.ts │ │ │ │ │ │ ├── register.ts │ │ │ │ │ │ ├── snippets.ts │ │ │ │ │ │ ├── suggestionDefinition.ts │ │ │ │ │ │ └── templateDataSuggestions.ts │ │ │ │ │ ├── form │ │ │ │ │ │ ├── ChannelOptions.tsx │ │ │ │ │ │ ├── ChannelSubForm.tsx │ │ │ │ │ │ ├── CloudCommonChannelSettings.tsx │ │ │ │ │ │ ├── CloudReceiverForm.tsx │ │ │ │ │ │ ├── CollapsibleSection.tsx │ │ │ │ │ │ ├── GenerateAlertDataModal.tsx │ │ │ │ │ │ ├── GrafanaCommonChannelSettings.tsx │ │ │ │ │ │ ├── GrafanaReceiverForm.test.tsx │ │ │ │ │ │ ├── GrafanaReceiverForm.tsx │ │ │ │ │ │ ├── ReceiverForm.tsx │ │ │ │ │ │ ├── TestContactPointModal.tsx │ │ │ │ │ │ ├── fields │ │ │ │ │ │ │ ├── DeletedSubform.tsx │ │ │ │ │ │ │ ├── KeyValueMapInput.tsx │ │ │ │ │ │ │ ├── OptionField.tsx │ │ │ │ │ │ │ ├── StringArrayInput.tsx │ │ │ │ │ │ │ ├── SubformArrayField.tsx │ │ │ │ │ │ │ ├── SubformField.tsx │ │ │ │ │ │ │ ├── TemplateContentAndPreview.tsx │ │ │ │ │ │ │ ├── TemplateSelector.test.tsx │ │ │ │ │ │ │ ├── TemplateSelector.tsx │ │ │ │ │ │ │ ├── __snapshots__ │ │ │ │ │ │ │ │ └── TemplateSelector.test.tsx.snap │ │ │ │ │ │ │ ├── styles.ts │ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ │ ├── notifiers.ts │ │ │ │ │ │ ├── util.test.ts │ │ │ │ │ │ └── util.ts │ │ │ │ │ ├── grafanaAppReceivers │ │ │ │ │ │ ├── ReceiverMetadataBadge.tsx │ │ │ │ │ │ ├── grafanaApp.ts │ │ │ │ │ │ ├── onCall │ │ │ │ │ │ │ ├── onCall.ts │ │ │ │ │ │ │ ├── useOnCallIntegration.test.ts │ │ │ │ │ │ │ └── useOnCallIntegration.ts │ │ │ │ │ │ ├── types.ts │ │ │ │ │ │ └── useReceiversMetadata.ts │ │ │ │ │ └── usePreviewTemplate.ts │ │ │ │ ├── rule-editor │ │ │ │ │ ├── AlertRuleNameInput.tsx │ │ │ │ │ ├── AnnotationHeaderField.tsx │ │ │ │ │ ├── AnnotationKeyInput.tsx │ │ │ │ │ ├── AnnotationsStep.test.tsx │ │ │ │ │ ├── AnnotationsStep.tsx │ │ │ │ │ ├── CloudAlertPreview.tsx │ │ │ │ │ ├── CloudEvaluationBehavior.tsx │ │ │ │ │ ├── CloudRulesSourcePicker.tsx │ │ │ │ │ ├── CustomAnnotationHeaderField.tsx │ │ │ │ │ ├── DashboardAnnotationField.tsx │ │ │ │ │ ├── DashboardPicker.test.tsx │ │ │ │ │ ├── DashboardPicker.tsx │ │ │ │ │ ├── EvaluationGroupQuickPick.test.tsx │ │ │ │ │ ├── EvaluationGroupQuickPick.tsx │ │ │ │ │ ├── ExpressionEditor.tsx │ │ │ │ │ ├── ExpressionsEditor.tsx │ │ │ │ │ ├── FolderAndGroup.tsx │ │ │ │ │ ├── GrafanaAlertStatePicker.tsx │ │ │ │ │ ├── GrafanaEvaluationBehavior.tsx │ │ │ │ │ ├── GrafanaRuleInspector.tsx │ │ │ │ │ ├── GroupAndNamespaceFields.tsx │ │ │ │ │ ├── NeedHelpInfo.tsx │ │ │ │ │ ├── NotificationsStep.tsx │ │ │ │ │ ├── PendingPeriodQuickPick.test.tsx │ │ │ │ │ ├── PendingPeriodQuickPick.tsx │ │ │ │ │ ├── PreviewRule.tsx │ │ │ │ │ ├── PreviewRuleResult.tsx │ │ │ │ │ ├── QueryEditor.tsx │ │ │ │ │ ├── QueryOptions.tsx │ │ │ │ │ ├── QueryRows.tsx │ │ │ │ │ ├── QueryWrapper.tsx │ │ │ │ │ ├── RecordingRuleEditor.tsx │ │ │ │ │ ├── RecordingRulesNameSpaceAndGroupStep.tsx │ │ │ │ │ ├── RuleEditorSection.tsx │ │ │ │ │ ├── RuleFolderPicker.tsx │ │ │ │ │ ├── RuleInspector.tsx │ │ │ │ │ ├── SelectWIthAdd.tsx │ │ │ │ │ ├── VizWrapper.tsx │ │ │ │ │ ├── __snapshots__ │ │ │ │ │ │ └── util.test.ts.snap │ │ │ │ │ ├── alert-rule-form │ │ │ │ │ │ ├── AlertRuleForm.tsx │ │ │ │ │ │ ├── ModifyExportRuleForm.tsx │ │ │ │ │ │ ├── getPayloadToExport.test.ts │ │ │ │ │ │ └── simplifiedRouting │ │ │ │ │ │ │ ├── AlertManagerRouting.tsx │ │ │ │ │ │ │ ├── SimplifiedRouting.tsx │ │ │ │ │ │ │ ├── SimplifiedRuleEditor.test.tsx │ │ │ │ │ │ │ ├── contactPoint │ │ │ │ │ │ │ ├── ContactPointDetails.tsx │ │ │ │ │ │ │ └── ContactPointSelector.tsx │ │ │ │ │ │ │ └── route-settings │ │ │ │ │ │ │ ├── MuteTimingFields.tsx │ │ │ │ │ │ │ ├── RouteSettings.tsx │ │ │ │ │ │ │ └── RouteTimings.tsx │ │ │ │ │ ├── dag.test.ts │ │ │ │ │ ├── dag.ts │ │ │ │ │ ├── labels │ │ │ │ │ │ ├── LabelsButtons.tsx │ │ │ │ │ │ ├── LabelsEditorModal.tsx │ │ │ │ │ │ ├── LabelsField.test.tsx │ │ │ │ │ │ ├── LabelsField.tsx │ │ │ │ │ │ └── LabelsFieldInForm.tsx │ │ │ │ │ ├── notificaton-preview │ │ │ │ │ │ ├── NotificationPolicyMatchers.tsx │ │ │ │ │ │ ├── NotificationPreview.test.tsx │ │ │ │ │ │ ├── NotificationPreview.tsx │ │ │ │ │ │ ├── NotificationPreviewByAlertManager.tsx │ │ │ │ │ │ ├── NotificationRoute.tsx │ │ │ │ │ │ ├── NotificationRouteDetailsModal.tsx │ │ │ │ │ │ ├── route.ts │ │ │ │ │ │ └── useAlertmanagerNotificationRoutingPreview.ts │ │ │ │ │ ├── preview.test.ts │ │ │ │ │ ├── preview.ts │ │ │ │ │ ├── query-and-alert-condition │ │ │ │ │ │ ├── CloudDataSourceSelector.tsx │ │ │ │ │ │ ├── QueryAndExpressionsStep.tsx │ │ │ │ │ │ ├── SmartAlertTypeDetector.tsx │ │ │ │ │ │ ├── __snapshots__ │ │ │ │ │ │ │ └── reducer.test.tsx.snap │ │ │ │ │ │ ├── descriptions.tsx │ │ │ │ │ │ ├── reducer.test.tsx │ │ │ │ │ │ ├── reducer.ts │ │ │ │ │ │ └── useAlertQueryRunner.tsx │ │ │ │ │ ├── rule-types │ │ │ │ │ │ ├── DisabledTooltip.tsx │ │ │ │ │ │ ├── GrafanaManagedAlert.tsx │ │ │ │ │ │ ├── MimirOrLokiAlert.tsx │ │ │ │ │ │ ├── MimirOrLokiRecordingRule.tsx │ │ │ │ │ │ ├── RuleType.tsx │ │ │ │ │ │ └── RuleTypePicker.tsx │ │ │ │ │ ├── useDashboardQuery.ts │ │ │ │ │ ├── util.test.ts │ │ │ │ │ └── util.ts │ │ │ │ ├── rule-list │ │ │ │ │ ├── AlertRuleListItem.tsx │ │ │ │ │ ├── EvaluationGroup.tsx │ │ │ │ │ ├── EvaluationGroupWithRules.tsx │ │ │ │ │ ├── Namespace.tsx │ │ │ │ │ ├── RuleList.v1.tsx │ │ │ │ │ ├── RuleList.v2.tsx │ │ │ │ │ ├── RuleListIcon.tsx │ │ │ │ │ ├── util.test.tsx │ │ │ │ │ └── util.ts │ │ │ │ ├── rule-viewer │ │ │ │ │ ├── AlertRuleMenu.tsx │ │ │ │ │ ├── DeleteModal.tsx │ │ │ │ │ ├── FederatedRuleWarning.tsx │ │ │ │ │ ├── PausedBadge.tsx │ │ │ │ │ ├── RuleContext.tsx │ │ │ │ │ ├── RuleViewer.test.tsx │ │ │ │ │ ├── RuleViewer.tsx │ │ │ │ │ ├── RuleViewerLayout.tsx │ │ │ │ │ ├── RuleViewerVisualization.tsx │ │ │ │ │ ├── StateBadges.tsx │ │ │ │ │ ├── __mocks__ │ │ │ │ │ │ └── server.ts │ │ │ │ │ └── tabs │ │ │ │ │ │ ├── Details.tsx │ │ │ │ │ │ ├── History.tsx │ │ │ │ │ │ ├── Instances.tsx │ │ │ │ │ │ ├── Query.tsx │ │ │ │ │ │ ├── Query │ │ │ │ │ │ ├── DataSourceModelPreview.tsx │ │ │ │ │ │ ├── LokiQueryPreview.tsx │ │ │ │ │ │ ├── PrometheusQueryPreview.tsx │ │ │ │ │ │ └── SQLQueryPreview.tsx │ │ │ │ │ │ └── Routing.tsx │ │ │ │ ├── rules │ │ │ │ │ ├── ActionButton.tsx │ │ │ │ │ ├── ActionIcon.tsx │ │ │ │ │ ├── AlertInstanceDetails.tsx │ │ │ │ │ ├── AlertInstanceStateFilter.tsx │ │ │ │ │ ├── AlertInstancesTable.tsx │ │ │ │ │ ├── AlertStateTag.tsx │ │ │ │ │ ├── CloneRule.tsx │ │ │ │ │ ├── CloudRules.tsx │ │ │ │ │ ├── EditRuleGroupModal.test.tsx │ │ │ │ │ ├── EditRuleGroupModal.tsx │ │ │ │ │ ├── GrafanaRules.tsx │ │ │ │ │ ├── MultipleDataSourcePicker.tsx │ │ │ │ │ ├── NoRulesCTA.tsx │ │ │ │ │ ├── ReorderRuleGroupModal.test.tsx │ │ │ │ │ ├── ReorderRuleGroupModal.tsx │ │ │ │ │ ├── RuleActionsButtons.test.tsx │ │ │ │ │ ├── RuleActionsButtons.tsx │ │ │ │ │ ├── RuleConfigStatus.tsx │ │ │ │ │ ├── RuleDetails.test.tsx │ │ │ │ │ ├── RuleDetails.tsx │ │ │ │ │ ├── RuleDetailsAnnotations.tsx │ │ │ │ │ ├── RuleDetailsButtons.tsx │ │ │ │ │ ├── RuleDetailsDataSources.tsx │ │ │ │ │ ├── RuleDetailsExpression.tsx │ │ │ │ │ ├── RuleDetailsFederatedSources.tsx │ │ │ │ │ ├── RuleDetailsMatchingInstances.test.tsx │ │ │ │ │ ├── RuleDetailsMatchingInstances.tsx │ │ │ │ │ ├── RuleHealth.tsx │ │ │ │ │ ├── RuleListErrors.tsx │ │ │ │ │ ├── RuleListGroupView.test.tsx │ │ │ │ │ ├── RuleListGroupView.tsx │ │ │ │ │ ├── RuleListStateSection.tsx │ │ │ │ │ ├── RuleListStateView.tsx │ │ │ │ │ ├── RuleState.tsx │ │ │ │ │ ├── RuleStats.tsx │ │ │ │ │ ├── RulesFilter.test.tsx │ │ │ │ │ ├── RulesFilter.tsx │ │ │ │ │ ├── RulesGroup.test.tsx │ │ │ │ │ ├── RulesGroup.tsx │ │ │ │ │ ├── RulesTable.test.tsx │ │ │ │ │ ├── RulesTable.tsx │ │ │ │ │ ├── __snapshots__ │ │ │ │ │ │ └── RuleActionsButtons.test.tsx.snap │ │ │ │ │ ├── state-history │ │ │ │ │ │ ├── LogRecordViewer.test.tsx │ │ │ │ │ │ ├── LogRecordViewer.tsx │ │ │ │ │ │ ├── LogTimelineViewer.tsx │ │ │ │ │ │ ├── LokiStateHistory.test.tsx │ │ │ │ │ │ ├── LokiStateHistory.tsx │ │ │ │ │ │ ├── StateHistory.test.tsx │ │ │ │ │ │ ├── StateHistory.tsx │ │ │ │ │ │ ├── __snapshots__ │ │ │ │ │ │ │ └── StateHistory.test.tsx.snap │ │ │ │ │ │ ├── common.test.ts │ │ │ │ │ │ ├── common.ts │ │ │ │ │ │ ├── useRuleHistoryRecords.test.tsx │ │ │ │ │ │ └── useRuleHistoryRecords.tsx │ │ │ │ │ └── useCombinedGroupNamespace.tsx │ │ │ │ ├── settings │ │ │ │ │ ├── AlertmanagerCard.test.tsx │ │ │ │ │ ├── AlertmanagerCard.tsx │ │ │ │ │ ├── AlertmanagerConfig.test.tsx │ │ │ │ │ ├── AlertmanagerConfig.tsx │ │ │ │ │ ├── ConfigurationDrawer.tsx │ │ │ │ │ ├── ExternalAlertmanagers.tsx │ │ │ │ │ ├── InternalAlertmanager.tsx │ │ │ │ │ ├── SettingsContext.tsx │ │ │ │ │ ├── VersionManager.tsx │ │ │ │ │ ├── __mocks__ │ │ │ │ │ │ ├── api │ │ │ │ │ │ │ ├── alertmanager │ │ │ │ │ │ │ │ ├── grafana │ │ │ │ │ │ │ │ │ └── config │ │ │ │ │ │ │ │ │ │ ├── api │ │ │ │ │ │ │ │ │ │ └── v1 │ │ │ │ │ │ │ │ │ │ │ └── alerts.json │ │ │ │ │ │ │ │ │ │ └── history.json │ │ │ │ │ │ │ │ └── vanilla prometheus │ │ │ │ │ │ │ │ │ └── api │ │ │ │ │ │ │ │ │ └── v2 │ │ │ │ │ │ │ │ │ └── status.json │ │ │ │ │ │ │ ├── datasources.json │ │ │ │ │ │ │ └── v1 │ │ │ │ │ │ │ │ └── ngalert │ │ │ │ │ │ │ │ ├── admin_config.json │ │ │ │ │ │ │ │ └── alertmanagers.json │ │ │ │ │ │ └── server.ts │ │ │ │ │ └── hooks.tsx │ │ │ │ └── silences │ │ │ │ │ ├── AmAlertStateTag.tsx │ │ │ │ │ ├── Matchers.tsx │ │ │ │ │ ├── MatchersField.tsx │ │ │ │ │ ├── NoSilencesCTA.tsx │ │ │ │ │ ├── SilenceDetails.tsx │ │ │ │ │ ├── SilenceGrafanaRuleDrawer.tsx │ │ │ │ │ ├── SilencePeriod.tsx │ │ │ │ │ ├── SilenceStateTag.tsx │ │ │ │ │ ├── SilencedAlertsTable.tsx │ │ │ │ │ ├── SilencedAlertsTableRow.tsx │ │ │ │ │ ├── SilencedInstancesPreview.tsx │ │ │ │ │ ├── SilencesEditor.tsx │ │ │ │ │ ├── SilencesFilter.tsx │ │ │ │ │ ├── SilencesTable.tsx │ │ │ │ │ └── utils.ts │ │ │ │ ├── createRouteGroupsMatcherWorker.ts │ │ │ │ ├── home │ │ │ │ ├── GettingStarted.tsx │ │ │ │ ├── Home.tsx │ │ │ │ ├── Insights.tsx │ │ │ │ └── PluginIntegrations.tsx │ │ │ │ ├── hooks │ │ │ │ ├── __snapshots__ │ │ │ │ │ └── useAbilities.test.tsx.snap │ │ │ │ ├── alert-details │ │ │ │ │ └── useRuleViewerPageTitle.tsx │ │ │ │ ├── useAbilities.test.tsx │ │ │ │ ├── useAbilities.ts │ │ │ │ ├── useAlertManagerSources.ts │ │ │ │ ├── useAlertQueriesStatus.ts │ │ │ │ ├── useAlertmanagerConfig.ts │ │ │ │ ├── useCombinedRule.ts │ │ │ │ ├── useCombinedRuleNamespaces.test.ts │ │ │ │ ├── useCombinedRuleNamespaces.ts │ │ │ │ ├── useControlledFieldArray.ts │ │ │ │ ├── useExternalAMSelector.test.tsx │ │ │ │ ├── useExternalAmSelector.ts │ │ │ │ ├── useFilteredAmGroups.ts │ │ │ │ ├── useFilteredRules.test.ts │ │ │ │ ├── useFilteredRules.ts │ │ │ │ ├── useFolder.ts │ │ │ │ ├── useGroupedAlerts.ts │ │ │ │ ├── useHasRuler.ts │ │ │ │ ├── useIsRuleEditable.test.tsx │ │ │ │ ├── useIsRuleEditable.ts │ │ │ │ ├── useManagedAlertStateHistory.ts │ │ │ │ ├── useMuteTimingOptions.ts │ │ │ │ ├── usePagination.test.tsx │ │ │ │ ├── usePagination.ts │ │ │ │ ├── usePanelCombinedRules.ts │ │ │ │ ├── usePluginBridge.ts │ │ │ │ ├── useRuleSourcesWithRuler.ts │ │ │ │ ├── useSilenceNavData.test.tsx │ │ │ │ ├── useSilenceNavData.ts │ │ │ │ ├── useStateHistoryModal.tsx │ │ │ │ ├── useURLSearchParams.ts │ │ │ │ ├── useUnifiedAlertingSelector.ts │ │ │ │ └── useVizHeight.ts │ │ │ │ ├── initAlerting.tsx │ │ │ │ ├── insights │ │ │ │ ├── DataSourcesInfo.tsx │ │ │ │ ├── RatingModal.tsx │ │ │ │ ├── SectionFooter.tsx │ │ │ │ ├── SectionSubheader.tsx │ │ │ │ ├── grafana │ │ │ │ │ ├── Active.tsx │ │ │ │ │ ├── AlertsByStateScene.tsx │ │ │ │ │ ├── EvalDurationScene.tsx │ │ │ │ │ ├── EvalSuccessVsFailuresScene.tsx │ │ │ │ │ ├── FiringAlertsPercentage.tsx │ │ │ │ │ ├── FiringAlertsRate.tsx │ │ │ │ │ ├── InstanceStatusScene.tsx │ │ │ │ │ ├── MissedIterationsScene.tsx │ │ │ │ │ ├── MostFiredInstancesTable.tsx │ │ │ │ │ ├── MostFiredRulesTable.tsx │ │ │ │ │ ├── MostFiringLabels.tsx │ │ │ │ │ ├── Paused.tsx │ │ │ │ │ ├── RulesByEvaluation.tsx │ │ │ │ │ ├── RulesByEvaluationPercentage.tsx │ │ │ │ │ └── alertmanager │ │ │ │ │ │ ├── AlertsByState.tsx │ │ │ │ │ │ ├── NotificationsScene.tsx │ │ │ │ │ │ └── SilencesByStateScene.tsx │ │ │ │ └── mimir │ │ │ │ │ ├── AlertsByState.tsx │ │ │ │ │ ├── InvalidConfig.tsx │ │ │ │ │ ├── Notifications.tsx │ │ │ │ │ ├── Silences.tsx │ │ │ │ │ ├── perGroup │ │ │ │ │ ├── RuleGroupEvaluationDurationIntervalRatioScene.tsx │ │ │ │ │ ├── RuleGroupEvaluationDurationScene.tsx │ │ │ │ │ ├── RuleGroupEvaluationsScene.tsx │ │ │ │ │ ├── RuleGroupIntervalScene.tsx │ │ │ │ │ └── RulesPerGroupScene.tsx │ │ │ │ │ └── rules │ │ │ │ │ ├── EvalSuccessVsFailuresScene.tsx │ │ │ │ │ ├── Firing.tsx │ │ │ │ │ ├── InstancesByState.tsx │ │ │ │ │ ├── InstancesPercentageByState.tsx │ │ │ │ │ ├── MissedIterationsScene.tsx │ │ │ │ │ ├── MostFiredRules.tsx │ │ │ │ │ └── Pending.tsx │ │ │ │ ├── integration │ │ │ │ ├── AlertRulesDrawer.tsx │ │ │ │ ├── AlertRulesDrawerContent.tsx │ │ │ │ └── AlertRulesToolbarButton.tsx │ │ │ │ ├── mockApi.ts │ │ │ │ ├── mockGrafanaNotifiers.ts │ │ │ │ ├── mocks.ts │ │ │ │ ├── mocks │ │ │ │ ├── alertRuleApi.ts │ │ │ │ ├── alertmanagerApi.ts │ │ │ │ ├── grafana-notifiers.ts │ │ │ │ ├── rulerApi.ts │ │ │ │ ├── server │ │ │ │ │ ├── all-handlers.ts │ │ │ │ │ ├── configure.ts │ │ │ │ │ ├── events.ts │ │ │ │ │ └── handlers │ │ │ │ │ │ ├── alertRules.ts │ │ │ │ │ │ ├── alertmanagers.ts │ │ │ │ │ │ ├── datasources.ts │ │ │ │ │ │ ├── eval.ts │ │ │ │ │ │ ├── folders.ts │ │ │ │ │ │ ├── plugins.ts │ │ │ │ │ │ └── silences.ts │ │ │ │ └── templatesApi.ts │ │ │ │ ├── plugins │ │ │ │ ├── PluginOriginBadge.tsx │ │ │ │ ├── useAlertingHomePageExtensions.ts │ │ │ │ └── useRulePluginLinkExtensions.ts │ │ │ │ ├── routeGroupsMatcher.ts │ │ │ │ ├── routeGroupsMatcher.worker.ts │ │ │ │ ├── search │ │ │ │ ├── README.md │ │ │ │ ├── rulesSearchParser.test.ts │ │ │ │ ├── rulesSearchParser.ts │ │ │ │ ├── search.grammar │ │ │ │ ├── search.js │ │ │ │ ├── search.terms.js │ │ │ │ └── searchParser.ts │ │ │ │ ├── state │ │ │ │ ├── AlertingQueryRunner.test.ts │ │ │ │ ├── AlertingQueryRunner.ts │ │ │ │ ├── AlertmanagerContext.test.tsx │ │ │ │ ├── AlertmanagerContext.tsx │ │ │ │ ├── actions.ts │ │ │ │ └── reducers.ts │ │ │ │ ├── styles │ │ │ │ ├── notifications.ts │ │ │ │ ├── pagination.ts │ │ │ │ └── table.ts │ │ │ │ ├── testSetup │ │ │ │ ├── datasources.ts │ │ │ │ ├── featureDiscovery.ts │ │ │ │ └── plugins.ts │ │ │ │ ├── types │ │ │ │ ├── amroutes.ts │ │ │ │ ├── contact-points.ts │ │ │ │ ├── mute-timing-form.ts │ │ │ │ ├── pluginBridges.ts │ │ │ │ ├── preview.ts │ │ │ │ ├── receiver-form.ts │ │ │ │ ├── rule-form.ts │ │ │ │ ├── silence-form.ts │ │ │ │ └── time.ts │ │ │ │ ├── useRouteGroupsMatcher.test.tsx │ │ │ │ ├── useRouteGroupsMatcher.ts │ │ │ │ └── utils │ │ │ │ ├── __snapshots__ │ │ │ │ ├── notification-policies.test.ts.snap │ │ │ │ ├── receiver-form.test.ts.snap │ │ │ │ ├── routeTree.test.ts.snap │ │ │ │ ├── rule-form.test.ts.snap │ │ │ │ └── rule-id.test.ts.snap │ │ │ │ ├── access-control.ts │ │ │ │ ├── accessControlHooks.ts │ │ │ │ ├── alertmanager.test.ts │ │ │ │ ├── alertmanager.ts │ │ │ │ ├── amroutes.test.ts │ │ │ │ ├── amroutes.ts │ │ │ │ ├── annotations.tsx │ │ │ │ ├── cloud-alertmanager-notifier-types.ts │ │ │ │ ├── config.test.ts │ │ │ │ ├── config.ts │ │ │ │ ├── constants.ts │ │ │ │ ├── dataSourceFromExpression.ts │ │ │ │ ├── datasource.test.ts │ │ │ │ ├── datasource.ts │ │ │ │ ├── duplicate.test.ts │ │ │ │ ├── duplicate.ts │ │ │ │ ├── dynamicTable.ts │ │ │ │ ├── getNumberEvaluationsToStartAlerting.test.ts │ │ │ │ ├── labels.ts │ │ │ │ ├── matchers.test.ts │ │ │ │ ├── matchers.ts │ │ │ │ ├── messageFromError.test.ts │ │ │ │ ├── misc.test.ts │ │ │ │ ├── misc.ts │ │ │ │ ├── mute-timings.ts │ │ │ │ ├── notification-policies.test.ts │ │ │ │ ├── notification-policies.ts │ │ │ │ ├── notifier-types.ts │ │ │ │ ├── query.test.ts │ │ │ │ ├── query.ts │ │ │ │ ├── receiver-form.test.ts │ │ │ │ ├── receiver-form.ts │ │ │ │ ├── receivers.ts │ │ │ │ ├── redux.ts │ │ │ │ ├── routeTree.test.ts │ │ │ │ ├── routeTree.ts │ │ │ │ ├── rule-form.test.ts │ │ │ │ ├── rule-form.ts │ │ │ │ ├── rule-id.test.ts │ │ │ │ ├── rule-id.ts │ │ │ │ ├── rulerClient.ts │ │ │ │ ├── rules.test.ts │ │ │ │ ├── rules.ts │ │ │ │ ├── search.ts │ │ │ │ ├── settings.ts │ │ │ │ ├── template-constants.ts │ │ │ │ ├── templates.test.ts │ │ │ │ ├── templates.ts │ │ │ │ ├── time.test.ts │ │ │ │ ├── time.ts │ │ │ │ ├── timeRange.test.ts │ │ │ │ ├── timeRange.ts │ │ │ │ └── url.ts │ │ ├── all.ts │ │ ├── annotations │ │ │ ├── api.ts │ │ │ ├── components │ │ │ │ ├── AnnotationResultMapper.tsx │ │ │ │ ├── StandardAnnotationQueryEditor.test.tsx │ │ │ │ └── StandardAnnotationQueryEditor.tsx │ │ │ ├── events_processing.test.ts │ │ │ ├── events_processing.ts │ │ │ ├── executeAnnotationQuery.test.ts │ │ │ ├── executeAnnotationQuery.ts │ │ │ ├── partials │ │ │ │ └── event_editor.html │ │ │ ├── standardAnnotationSupport.test.ts │ │ │ ├── standardAnnotationSupport.ts │ │ │ └── types.ts │ │ ├── api-keys │ │ │ ├── ApiKeysActionBar.tsx │ │ │ ├── ApiKeysPage.test.tsx │ │ │ ├── ApiKeysPage.tsx │ │ │ ├── ApiKeysTable.tsx │ │ │ ├── MigrateToServiceAccountsCard.tsx │ │ │ ├── __mocks__ │ │ │ │ └── apiKeysMock.ts │ │ │ └── state │ │ │ │ ├── actions.ts │ │ │ │ ├── reducers.test.ts │ │ │ │ ├── reducers.ts │ │ │ │ ├── selectors.test.ts │ │ │ │ └── selectors.ts │ │ ├── apiserver │ │ │ ├── client.ts │ │ │ ├── types.test.ts │ │ │ └── types.ts │ │ ├── auth-config │ │ │ ├── AuthDrawer.test.tsx │ │ │ ├── AuthDrawer.tsx │ │ │ ├── AuthProvidersListPage.tsx │ │ │ ├── ErrorContainer.tsx │ │ │ ├── FieldRenderer.tsx │ │ │ ├── ProviderConfigForm.test.tsx │ │ │ ├── ProviderConfigForm.tsx │ │ │ ├── ProviderConfigPage.tsx │ │ │ ├── components │ │ │ │ ├── ConfigureAuthCTA.tsx │ │ │ │ └── ProviderCard.tsx │ │ │ ├── constants.ts │ │ │ ├── fields.tsx │ │ │ ├── index.ts │ │ │ ├── state │ │ │ │ ├── actions.ts │ │ │ │ └── reducers.ts │ │ │ ├── types.ts │ │ │ └── utils │ │ │ │ ├── data.ts │ │ │ │ ├── guards.ts │ │ │ │ └── url.ts │ │ ├── browse-dashboards │ │ │ ├── BrowseDashboardsPage.test.tsx │ │ │ ├── BrowseDashboardsPage.tsx │ │ │ ├── BrowseFolderAlertingPage.test.tsx │ │ │ ├── BrowseFolderAlertingPage.tsx │ │ │ ├── BrowseFolderLibraryPanelsPage.test.tsx │ │ │ ├── BrowseFolderLibraryPanelsPage.tsx │ │ │ ├── api │ │ │ │ ├── browseDashboardsAPI.ts │ │ │ │ ├── services.test.ts │ │ │ │ └── services.ts │ │ │ ├── components │ │ │ │ ├── BrowseActions │ │ │ │ │ ├── BrowseActions.test.tsx │ │ │ │ │ ├── BrowseActions.tsx │ │ │ │ │ ├── DeleteModal.test.tsx │ │ │ │ │ ├── DeleteModal.tsx │ │ │ │ │ ├── DescendantCount.tsx │ │ │ │ │ ├── MoveModal.test.tsx │ │ │ │ │ ├── MoveModal.tsx │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── BrowseFilters.tsx │ │ │ │ ├── BrowseView.test.tsx │ │ │ │ ├── BrowseView.tsx │ │ │ │ ├── CheckboxCell.tsx │ │ │ │ ├── CheckboxHeaderCell.tsx │ │ │ │ ├── CreateNewButton.test.tsx │ │ │ │ ├── CreateNewButton.tsx │ │ │ │ ├── DashboardsTree.test.tsx │ │ │ │ ├── DashboardsTree.tsx │ │ │ │ ├── FolderActionsButton.test.tsx │ │ │ │ ├── FolderActionsButton.tsx │ │ │ │ ├── NameCell.tsx │ │ │ │ ├── NewFolderForm.tsx │ │ │ │ ├── SearchView.tsx │ │ │ │ ├── TagsCell.tsx │ │ │ │ ├── customFlexTableLayout.ts │ │ │ │ └── utils.ts │ │ │ ├── fixtures │ │ │ │ ├── alertRules.fixture.ts │ │ │ │ ├── dashboardsTreeItem.fixture.ts │ │ │ │ ├── folder.fixture.ts │ │ │ │ ├── libraryElements.fixture.ts │ │ │ │ └── state.fixtures.ts │ │ │ ├── permissions.ts │ │ │ ├── state │ │ │ │ ├── actions.ts │ │ │ │ ├── hooks.test.ts │ │ │ │ ├── hooks.ts │ │ │ │ ├── index.ts │ │ │ │ ├── reducers.test.ts │ │ │ │ ├── reducers.ts │ │ │ │ ├── slice.ts │ │ │ │ └── utils.ts │ │ │ └── types.ts │ │ ├── canvas │ │ │ ├── element.ts │ │ │ ├── elements │ │ │ │ ├── button.tsx │ │ │ │ ├── cloud.tsx │ │ │ │ ├── droneFront.tsx │ │ │ │ ├── droneSide.tsx │ │ │ │ ├── droneTop.tsx │ │ │ │ ├── ellipse.tsx │ │ │ │ ├── icon.tsx │ │ │ │ ├── metricValue.tsx │ │ │ │ ├── notFound.tsx │ │ │ │ ├── parallelogram.tsx │ │ │ │ ├── rectangle.tsx │ │ │ │ ├── server │ │ │ │ │ ├── server.tsx │ │ │ │ │ └── types │ │ │ │ │ │ ├── database.tsx │ │ │ │ │ │ ├── single.tsx │ │ │ │ │ │ ├── stack.tsx │ │ │ │ │ │ └── terminal.tsx │ │ │ │ ├── text.tsx │ │ │ │ ├── triangle.tsx │ │ │ │ └── windTurbine.tsx │ │ │ ├── frame.ts │ │ │ ├── index.ts │ │ │ ├── registry.ts │ │ │ ├── runtime │ │ │ │ ├── SceneTransformWrapper.tsx │ │ │ │ ├── ables.tsx │ │ │ │ ├── element.tsx │ │ │ │ ├── frame.tsx │ │ │ │ ├── root.tsx │ │ │ │ └── scene.tsx │ │ │ └── types.ts │ │ ├── commandPalette │ │ │ ├── CommandPalette.tsx │ │ │ ├── KBarResults.tsx │ │ │ ├── ResultItem.tsx │ │ │ ├── actions │ │ │ │ ├── dashboardActions.test.ts │ │ │ │ ├── dashboardActions.ts │ │ │ │ ├── staticActions.ts │ │ │ │ ├── useActions.ts │ │ │ │ └── useExtensionActions.ts │ │ │ ├── types.ts │ │ │ ├── useMatches.ts │ │ │ └── values.ts │ │ ├── connections │ │ │ ├── Connections.test.tsx │ │ │ ├── Connections.tsx │ │ │ ├── __mocks__ │ │ │ │ └── store.navIndex.mock.ts │ │ │ ├── components │ │ │ │ └── ConnectionsRedirectNotice │ │ │ │ │ ├── ConnectionsRedirectNotice.tsx │ │ │ │ │ └── index.ts │ │ │ ├── constants.ts │ │ │ ├── hooks │ │ │ │ └── useDataSourceSettingsNav.ts │ │ │ ├── pages │ │ │ │ ├── AddNewConnectionPage.tsx │ │ │ │ ├── DataSourceDashboardsPage.tsx │ │ │ │ ├── DataSourceDetailsPage.tsx │ │ │ │ ├── DataSourcesListPage.tsx │ │ │ │ ├── EditDataSourcePage.tsx │ │ │ │ ├── NewDataSourcePage.tsx │ │ │ │ └── index.tsx │ │ │ ├── routes.tsx │ │ │ └── tabs │ │ │ │ └── ConnectData │ │ │ │ ├── CardGrid │ │ │ │ ├── CardGrid.tsx │ │ │ │ └── index.tsx │ │ │ │ ├── CategoryHeader │ │ │ │ ├── CategoryHeader.tsx │ │ │ │ └── index.tsx │ │ │ │ ├── ConnectData.test.tsx │ │ │ │ ├── ConnectData.tsx │ │ │ │ ├── NoAccessModal │ │ │ │ ├── NoAccessModal.tsx │ │ │ │ └── index.tsx │ │ │ │ ├── Search │ │ │ │ ├── Search.tsx │ │ │ │ └── index.tsx │ │ │ │ └── index.tsx │ │ ├── correlations │ │ │ ├── CorrelationsFeatureToggle.tsx │ │ │ ├── CorrelationsPage.test.tsx │ │ │ ├── CorrelationsPage.tsx │ │ │ ├── Forms │ │ │ │ ├── AddCorrelationForm.tsx │ │ │ │ ├── ConfigureCorrelationBasicInfoForm.tsx │ │ │ │ ├── ConfigureCorrelationSourceForm.tsx │ │ │ │ ├── ConfigureCorrelationTargetForm.tsx │ │ │ │ ├── CorrelationFormNavigation.tsx │ │ │ │ ├── EditCorrelationForm.tsx │ │ │ │ ├── QueryEditorField.test.tsx │ │ │ │ ├── QueryEditorField.tsx │ │ │ │ ├── TransformationEditorRow.tsx │ │ │ │ ├── TransformationsEditor.tsx │ │ │ │ ├── correlationsFormContext.tsx │ │ │ │ ├── types.ts │ │ │ │ └── utils.ts │ │ │ ├── __mocks__ │ │ │ │ └── useCorrelations.mocks.ts │ │ │ ├── components │ │ │ │ ├── EmptyCorrelationsCTA.tsx │ │ │ │ └── Wizard │ │ │ │ │ ├── Wizard.test.tsx │ │ │ │ │ ├── Wizard.tsx │ │ │ │ │ ├── WizardContent.tsx │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── wizardContext.tsx │ │ │ ├── transformations.ts │ │ │ ├── types.ts │ │ │ ├── useCorrelations.ts │ │ │ ├── utils.test.ts │ │ │ └── utils.ts │ │ ├── dashboard-scene │ │ │ ├── embedding │ │ │ │ ├── EmbeddedDashboard.tsx │ │ │ │ ├── EmbeddedDashboardLazy.tsx │ │ │ │ └── EmbeddedDashboardTestPage.tsx │ │ │ ├── inspect │ │ │ │ ├── HelpWizard │ │ │ │ │ ├── HelpWizard.test.tsx │ │ │ │ │ ├── HelpWizard.tsx │ │ │ │ │ ├── SupportSnapshotService.test.ts │ │ │ │ │ ├── SupportSnapshotService.ts │ │ │ │ │ ├── randomizer.test.ts │ │ │ │ │ ├── randomizer.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── InspectDataTab.tsx │ │ │ │ ├── InspectJsonTab.test.tsx │ │ │ │ ├── InspectJsonTab.tsx │ │ │ │ ├── InspectMetaDataTab.tsx │ │ │ │ ├── InspectQueryTab.tsx │ │ │ │ ├── InspectStatsTab.tsx │ │ │ │ ├── PanelInspectDrawer.tsx │ │ │ │ └── types.ts │ │ │ ├── pages │ │ │ │ ├── DashboardScenePage.test.tsx │ │ │ │ ├── DashboardScenePage.tsx │ │ │ │ ├── DashboardScenePageStateManager.test.ts │ │ │ │ ├── DashboardScenePageStateManager.ts │ │ │ │ ├── PublicDashboardScenePage.test.tsx │ │ │ │ ├── PublicDashboardScenePage.tsx │ │ │ │ ├── utils.test.ts │ │ │ │ └── utils.ts │ │ │ ├── panel-edit │ │ │ │ ├── LibraryVizPanelInfo.tsx │ │ │ │ ├── PanelDataPane │ │ │ │ │ ├── EmptyTransformationsMessage.tsx │ │ │ │ │ ├── NewAlertRuleButton.tsx │ │ │ │ │ ├── PanelDataAlertingTab.test.tsx │ │ │ │ │ ├── PanelDataAlertingTab.tsx │ │ │ │ │ ├── PanelDataPane.tsx │ │ │ │ │ ├── PanelDataQueriesTab.test.tsx │ │ │ │ │ ├── PanelDataQueriesTab.tsx │ │ │ │ │ ├── PanelDataTransformationsTab.test.tsx │ │ │ │ │ ├── PanelDataTransformationsTab.tsx │ │ │ │ │ ├── TransformationsDrawer.tsx │ │ │ │ │ ├── __snapshots__ │ │ │ │ │ │ └── PanelDataAlertingTab.test.tsx.snap │ │ │ │ │ └── types.ts │ │ │ │ ├── PanelEditControls.tsx │ │ │ │ ├── PanelEditor.test.ts │ │ │ │ ├── PanelEditor.tsx │ │ │ │ ├── PanelEditorRenderer.tsx │ │ │ │ ├── PanelOptions.test.tsx │ │ │ │ ├── PanelOptions.tsx │ │ │ │ ├── PanelOptionsPane.tsx │ │ │ │ ├── PanelVizTypePicker.tsx │ │ │ │ ├── SaveLibraryVizPanelModal.tsx │ │ │ │ ├── ShareDataProvider.tsx │ │ │ │ ├── VizPanelManager.test.tsx │ │ │ │ ├── VizPanelManager.tsx │ │ │ │ ├── getPanelFrameOptions.tsx │ │ │ │ ├── splitter │ │ │ │ │ └── useSnappingSplitter.ts │ │ │ │ └── testfiles │ │ │ │ │ └── testDashboard.ts │ │ │ ├── saving │ │ │ │ ├── DashboardPrompt.test.tsx │ │ │ │ ├── DashboardPrompt.tsx │ │ │ │ ├── DashboardSceneChangeTracker.ts │ │ │ │ ├── DetectChangesWorker.ts │ │ │ │ ├── SaveDashboardAsForm.tsx │ │ │ │ ├── SaveDashboardDrawer.test.tsx │ │ │ │ ├── SaveDashboardDrawer.tsx │ │ │ │ ├── SaveDashboardForm.tsx │ │ │ │ ├── SaveProvisionedDashboardForm.tsx │ │ │ │ ├── __mocks__ │ │ │ │ │ └── createDetectChangesWorker.ts │ │ │ │ ├── createDetectChangesWorker.ts │ │ │ │ ├── getDashboardChanges.test.ts │ │ │ │ ├── getDashboardChanges.ts │ │ │ │ ├── getDashboardChangesFromScene.test.ts │ │ │ │ ├── getDashboardChangesFromScene.ts │ │ │ │ ├── shared.tsx │ │ │ │ └── useSaveDashboard.ts │ │ │ ├── scene │ │ │ │ ├── AddLibraryPanelDrawer.test.tsx │ │ │ │ ├── AddLibraryPanelDrawer.tsx │ │ │ │ ├── AlertStatesDataLayer.ts │ │ │ │ ├── DashboardAnnotationsDataLayer.test.ts │ │ │ │ ├── DashboardAnnotationsDataLayer.ts │ │ │ │ ├── DashboardControls.tsx │ │ │ │ ├── DashboardDataLayerSet.tsx │ │ │ │ ├── DashboardDatasourceBehaviour.test.tsx │ │ │ │ ├── DashboardDatasourceBehaviour.tsx │ │ │ │ ├── DashboardGridItem.test.tsx │ │ │ │ ├── DashboardGridItem.tsx │ │ │ │ ├── DashboardLinksControls.tsx │ │ │ │ ├── DashboardMacro.ts │ │ │ │ ├── DashboardScene.test.tsx │ │ │ │ ├── DashboardScene.tsx │ │ │ │ ├── DashboardSceneRenderer.tsx │ │ │ │ ├── DashboardSceneUrlSync.test.ts │ │ │ │ ├── DashboardSceneUrlSync.ts │ │ │ │ ├── GoToSnapshotOriginButton.test.tsx │ │ │ │ ├── GoToSnapshotOriginButton.tsx │ │ │ │ ├── LibraryVizPanel.test.ts │ │ │ │ ├── LibraryVizPanel.tsx │ │ │ │ ├── NavToolbarActions.test.tsx │ │ │ │ ├── NavToolbarActions.tsx │ │ │ │ ├── PanelLinks.tsx │ │ │ │ ├── PanelMenuBehavior.test.tsx │ │ │ │ ├── PanelMenuBehavior.tsx │ │ │ │ ├── PanelNotices.tsx │ │ │ │ ├── PanelTimeRange.test.tsx │ │ │ │ ├── PanelTimeRange.tsx │ │ │ │ ├── RowRepeaterBehavior.test.tsx │ │ │ │ ├── RowRepeaterBehavior.ts │ │ │ │ ├── ScopesDashboardsScene.tsx │ │ │ │ ├── ScopesFiltersScene.tsx │ │ │ │ ├── ScopesScene.test.tsx │ │ │ │ ├── ScopesScene.tsx │ │ │ │ ├── UnlinkLibraryPanelModal.tsx │ │ │ │ ├── UnlinkModal.tsx │ │ │ │ ├── ViewPanelScene.test.tsx │ │ │ │ ├── ViewPanelScene.tsx │ │ │ │ ├── keyboardShortcuts.ts │ │ │ │ ├── row-actions │ │ │ │ │ ├── RowActions.tsx │ │ │ │ │ ├── RowOptionsButton.tsx │ │ │ │ │ ├── RowOptionsForm.test.tsx │ │ │ │ │ ├── RowOptionsForm.tsx │ │ │ │ │ └── RowOptionsModal.tsx │ │ │ │ ├── setDashboardPanelContext.test.ts │ │ │ │ ├── setDashboardPanelContext.ts │ │ │ │ └── types.ts │ │ │ ├── serialization │ │ │ │ ├── __snapshots__ │ │ │ │ │ └── transformSceneToSaveModel.test.ts.snap │ │ │ │ ├── angularMigration.test.ts │ │ │ │ ├── angularMigration.ts │ │ │ │ ├── buildNewDashboardSaveModel.test.ts │ │ │ │ ├── buildNewDashboardSaveModel.ts │ │ │ │ ├── const.ts │ │ │ │ ├── dataLayersToAnnotations.ts │ │ │ │ ├── sceneVariablesSetToVariables.test.ts │ │ │ │ ├── sceneVariablesSetToVariables.ts │ │ │ │ ├── testfiles │ │ │ │ │ ├── dashboard_to_load1.json │ │ │ │ │ ├── repeating_rows_and_panels.json │ │ │ │ │ ├── snapshotable_dashboard.json │ │ │ │ │ └── snapshotable_with_rows.json │ │ │ │ ├── transformSaveModelToScene.test.ts │ │ │ │ ├── transformSaveModelToScene.ts │ │ │ │ ├── transformSceneToSaveModel.test.ts │ │ │ │ └── transformSceneToSaveModel.ts │ │ │ ├── settings │ │ │ │ ├── AnnotationsEditView.test.tsx │ │ │ │ ├── AnnotationsEditView.tsx │ │ │ │ ├── DashboardLinksEditView.test.tsx │ │ │ │ ├── DashboardLinksEditView.tsx │ │ │ │ ├── DeleteDashboardButton.tsx │ │ │ │ ├── EditListViewSceneUrlSync.ts │ │ │ │ ├── GeneralSettingsEditView.test.tsx │ │ │ │ ├── GeneralSettingsEditView.tsx │ │ │ │ ├── JsonModelEditView.tsx │ │ │ │ ├── PermissionsEditView.test.tsx │ │ │ │ ├── PermissionsEditView.tsx │ │ │ │ ├── VariablesEditView.test.tsx │ │ │ │ ├── VariablesEditView.tsx │ │ │ │ ├── VersionsEditView.test.tsx │ │ │ │ ├── VersionsEditView.tsx │ │ │ │ ├── annotations │ │ │ │ │ ├── AngularEditorLoader.tsx │ │ │ │ │ ├── AnnotationSettingsEdit.test.tsx │ │ │ │ │ ├── AnnotationSettingsEdit.tsx │ │ │ │ │ ├── AnnotationSettingsList.test.tsx │ │ │ │ │ ├── AnnotationSettingsList.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── links │ │ │ │ │ ├── DashboardLinkForm.tsx │ │ │ │ │ ├── DashboardLinkList.tsx │ │ │ │ │ └── utils.ts │ │ │ │ ├── utils.ts │ │ │ │ ├── variables │ │ │ │ │ ├── VariableEditorForm.tsx │ │ │ │ │ ├── VariableEditorList.tsx │ │ │ │ │ ├── VariableEditorListRow.tsx │ │ │ │ │ ├── components │ │ │ │ │ │ ├── AdHocVariableForm.test.tsx │ │ │ │ │ │ ├── AdHocVariableForm.tsx │ │ │ │ │ │ ├── ConstantVariableForm.tsx │ │ │ │ │ │ ├── CustomVariableForm.test.tsx │ │ │ │ │ │ ├── CustomVariableForm.tsx │ │ │ │ │ │ ├── DataSourceVariableForm.tsx │ │ │ │ │ │ ├── GroupByVariableForm.test.tsx │ │ │ │ │ │ ├── GroupByVariableForm.tsx │ │ │ │ │ │ ├── IntervalVariableForm.tsx │ │ │ │ │ │ ├── QueryEditor.tsx │ │ │ │ │ │ ├── QueryVariableForm.test.tsx │ │ │ │ │ │ ├── QueryVariableForm.tsx │ │ │ │ │ │ ├── SelectionOptionsForm.tsx │ │ │ │ │ │ ├── TextBoxVariableForm.test.tsx │ │ │ │ │ │ ├── TextBoxVariableForm.tsx │ │ │ │ │ │ ├── VariableCheckboxField.tsx │ │ │ │ │ │ ├── VariableHideSelect.tsx │ │ │ │ │ │ ├── VariableLegend.tsx │ │ │ │ │ │ ├── VariableSelectField.tsx │ │ │ │ │ │ ├── VariableTextAreaField.tsx │ │ │ │ │ │ ├── VariableTextField.tsx │ │ │ │ │ │ ├── VariableTypeSelect.tsx │ │ │ │ │ │ └── VariableValuesPreview.tsx │ │ │ │ │ ├── editors │ │ │ │ │ │ ├── AdHocFiltersVariableEditor.test.tsx │ │ │ │ │ │ ├── AdHocFiltersVariableEditor.tsx │ │ │ │ │ │ ├── ConstantVariableEditor.test.tsx │ │ │ │ │ │ ├── ConstantVariableEditor.tsx │ │ │ │ │ │ ├── CustomVariableEditor.test.tsx │ │ │ │ │ │ ├── CustomVariableEditor.tsx │ │ │ │ │ │ ├── DataSourceVariableEditor.test.tsx │ │ │ │ │ │ ├── DataSourceVariableEditor.tsx │ │ │ │ │ │ ├── GroupByVariableEditor.test.tsx │ │ │ │ │ │ ├── GroupByVariableEditor.tsx │ │ │ │ │ │ ├── IntervalVariableEditor.test.tsx │ │ │ │ │ │ ├── IntervalVariableEditor.tsx │ │ │ │ │ │ ├── QueryVariableEditor.test.tsx │ │ │ │ │ │ ├── QueryVariableEditor.tsx │ │ │ │ │ │ ├── TextBoxVariableEditor.test.tsx │ │ │ │ │ │ └── TextBoxVariableEditor.tsx │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ └── utils.ts │ │ │ │ └── version-history │ │ │ │ │ ├── DiffGroup.tsx │ │ │ │ │ ├── DiffTitle.tsx │ │ │ │ │ ├── DiffValues.tsx │ │ │ │ │ ├── DiffViewer.tsx │ │ │ │ │ ├── HistorySrv.test.ts │ │ │ │ │ ├── HistorySrv.ts │ │ │ │ │ ├── RevertDashboardModal.tsx │ │ │ │ │ ├── VersionHistoryButtons.tsx │ │ │ │ │ ├── VersionHistoryComparison.tsx │ │ │ │ │ ├── VersionHistoryHeader.tsx │ │ │ │ │ ├── VersionHistoryTable.tsx │ │ │ │ │ ├── __mocks__ │ │ │ │ │ └── dashboardHistoryMocks.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ └── utils.ts │ │ │ ├── sharing │ │ │ │ ├── ShareButton │ │ │ │ │ ├── ShareButton.test.tsx │ │ │ │ │ ├── ShareButton.tsx │ │ │ │ │ ├── ShareMenu.test.tsx │ │ │ │ │ └── ShareMenu.tsx │ │ │ │ ├── ShareExportTab.tsx │ │ │ │ ├── ShareLibraryPanelTab.tsx │ │ │ │ ├── ShareLinkTab.test.tsx │ │ │ │ ├── ShareLinkTab.tsx │ │ │ │ ├── ShareModal.tsx │ │ │ │ ├── SharePanelEmbedTab.tsx │ │ │ │ ├── ShareSnapshotTab.tsx │ │ │ │ ├── public-dashboards │ │ │ │ │ ├── ConfigPublicDashboard.tsx │ │ │ │ │ ├── ConfirmModal.tsx │ │ │ │ │ ├── CreatePublicDashboard.tsx │ │ │ │ │ ├── SharePublicDashboardTab.tsx │ │ │ │ │ ├── hooks.ts │ │ │ │ │ └── utils.ts │ │ │ │ └── types.ts │ │ │ ├── solo │ │ │ │ ├── SoloPanelPage.tsx │ │ │ │ └── useSoloPanel.ts │ │ │ └── utils │ │ │ │ ├── DashboardModelCompatibilityWrapper.test.ts │ │ │ │ ├── DashboardModelCompatibilityWrapper.ts │ │ │ │ ├── PanelModelCompatibilityWrapper.test.ts │ │ │ │ ├── PanelModelCompatibilityWrapper.ts │ │ │ │ ├── createPanelDataProvider.ts │ │ │ │ ├── dashboardSceneGraph.test.ts │ │ │ │ ├── dashboardSceneGraph.ts │ │ │ │ ├── dashboardSessionState.test.ts │ │ │ │ ├── dashboardSessionState.ts │ │ │ │ ├── djb2Hash.ts │ │ │ │ ├── getVariablesCompatibility.ts │ │ │ │ ├── interactions.ts │ │ │ │ ├── registerDynamicDashNavAction.ts │ │ │ │ ├── test-utils.ts │ │ │ │ ├── urlBuilders.test.ts │ │ │ │ ├── urlBuilders.ts │ │ │ │ └── utils.ts │ │ ├── dashboard │ │ │ ├── api │ │ │ │ └── publicDashboardApi.ts │ │ │ ├── components │ │ │ │ ├── AddLibraryPanelWidget │ │ │ │ │ ├── AddLibraryPanelWidget.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── AddPanelButton │ │ │ │ │ ├── AddPanelButton.test.tsx │ │ │ │ │ ├── AddPanelButton.tsx │ │ │ │ │ ├── AddPanelMenu.test.tsx │ │ │ │ │ └── AddPanelMenu.tsx │ │ │ │ ├── AddWidgetModal │ │ │ │ │ └── AddWidgetModal.tsx │ │ │ │ ├── AnnotationSettings │ │ │ │ │ ├── AnnotationSettingsEdit.tsx │ │ │ │ │ ├── AnnotationSettingsList.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── DashExportModal │ │ │ │ │ ├── DashboardExporter.test.ts │ │ │ │ │ ├── DashboardExporter.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── DashNav │ │ │ │ │ ├── DashNav.tsx │ │ │ │ │ ├── DashNavButton.tsx │ │ │ │ │ ├── DashNavTimeControls.test.tsx │ │ │ │ │ ├── DashNavTimeControls.tsx │ │ │ │ │ ├── ShareButton.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── DashboardLoading │ │ │ │ │ ├── DashboardFailed.tsx │ │ │ │ │ └── DashboardLoading.tsx │ │ │ │ ├── DashboardPermissions │ │ │ │ │ └── AccessControlDashboardPermissions.tsx │ │ │ │ ├── DashboardPrompt │ │ │ │ │ ├── DashboardPrompt.test.tsx │ │ │ │ │ └── DashboardPrompt.tsx │ │ │ │ ├── DashboardRow │ │ │ │ │ ├── DashboardRow.test.tsx │ │ │ │ │ ├── DashboardRow.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── DashboardSettings │ │ │ │ │ ├── AnnotationsSettings.test.tsx │ │ │ │ │ ├── AnnotationsSettings.tsx │ │ │ │ │ ├── AutoRefreshIntervals.test.tsx │ │ │ │ │ ├── AutoRefreshIntervals.tsx │ │ │ │ │ ├── DashboardSettings.tsx │ │ │ │ │ ├── GeneralSettings.test.tsx │ │ │ │ │ ├── GeneralSettings.tsx │ │ │ │ │ ├── JsonEditorSettings.tsx │ │ │ │ │ ├── LinksSettings.test.tsx │ │ │ │ │ ├── LinksSettings.tsx │ │ │ │ │ ├── ListNewButton.tsx │ │ │ │ │ ├── TimePickerSettings.tsx │ │ │ │ │ ├── VersionsSettings.test.tsx │ │ │ │ │ ├── VersionsSettings.tsx │ │ │ │ │ ├── __mocks__ │ │ │ │ │ │ └── versions.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── DeleteDashboard │ │ │ │ │ ├── DeleteDashboardButton.tsx │ │ │ │ │ └── DeleteDashboardModal.tsx │ │ │ │ ├── GenAI │ │ │ │ │ ├── GenAIButton.test.tsx │ │ │ │ │ ├── GenAIButton.tsx │ │ │ │ │ ├── GenAIDashDescriptionButton.tsx │ │ │ │ │ ├── GenAIDashTitleButton.tsx │ │ │ │ │ ├── GenAIDashboardChangesButton.tsx │ │ │ │ │ ├── GenAIHistory.tsx │ │ │ │ │ ├── GenAIPanelDescriptionButton.tsx │ │ │ │ │ ├── GenAIPanelTitleButton.tsx │ │ │ │ │ ├── GenerationHistoryCarousel.tsx │ │ │ │ │ ├── MinimalisticPagination.tsx │ │ │ │ │ ├── QuickFeedback.tsx │ │ │ │ │ ├── hooks.ts │ │ │ │ │ ├── jsonDiffText.test.ts │ │ │ │ │ ├── jsonDiffText.ts │ │ │ │ │ ├── tracking.ts │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── HelpWizard │ │ │ │ │ ├── HelpWizard.test.tsx │ │ │ │ │ ├── HelpWizard.tsx │ │ │ │ │ ├── SupportSnapshotService.test.ts │ │ │ │ │ ├── SupportSnapshotService.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── Inspector │ │ │ │ │ ├── InspectContent.tsx │ │ │ │ │ ├── PanelInspector.tsx │ │ │ │ │ └── hooks.ts │ │ │ │ ├── LinksSettings │ │ │ │ │ ├── LinkSettingsEdit.tsx │ │ │ │ │ ├── LinkSettingsList.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── PanelEditor │ │ │ │ │ ├── AngularPanelOptions.tsx │ │ │ │ │ ├── DynamicConfigValueEditor.tsx │ │ │ │ │ ├── OptionsPane.tsx │ │ │ │ │ ├── OptionsPaneCategory.tsx │ │ │ │ │ ├── OptionsPaneCategoryDescriptor.tsx │ │ │ │ │ ├── OptionsPaneItemDescriptor.tsx │ │ │ │ │ ├── OptionsPaneItemOverrides.tsx │ │ │ │ │ ├── OptionsPaneOptions.test.tsx │ │ │ │ │ ├── OptionsPaneOptions.tsx │ │ │ │ │ ├── OverrideCategoryTitle.tsx │ │ │ │ │ ├── PanelEditor.tsx │ │ │ │ │ ├── PanelEditorQueries.tsx │ │ │ │ │ ├── PanelEditorTableView.test.tsx │ │ │ │ │ ├── PanelEditorTableView.tsx │ │ │ │ │ ├── PanelEditorTabs.tsx │ │ │ │ │ ├── PanelHeaderCorner.test.tsx │ │ │ │ │ ├── PanelHeaderCorner.tsx │ │ │ │ │ ├── PanelNotSupported.test.tsx │ │ │ │ │ ├── PanelNotSupported.tsx │ │ │ │ │ ├── VisualizationButton.tsx │ │ │ │ │ ├── VisualizationSelectPane.tsx │ │ │ │ │ ├── getFieldOverrideElements.tsx │ │ │ │ │ ├── getLibraryPanelOptions.tsx │ │ │ │ │ ├── getPanelFrameOptions.tsx │ │ │ │ │ ├── getVisualizationOptions.test.ts │ │ │ │ │ ├── getVisualizationOptions.tsx │ │ │ │ │ ├── state │ │ │ │ │ │ ├── OptionSearchEngine.test.ts │ │ │ │ │ │ ├── OptionSearchEngine.ts │ │ │ │ │ │ ├── actions.test.ts │ │ │ │ │ │ ├── actions.ts │ │ │ │ │ │ ├── getOptionOverrides.ts │ │ │ │ │ │ ├── getRecentOptions.ts │ │ │ │ │ │ ├── reducers.ts │ │ │ │ │ │ ├── selectors.test.ts │ │ │ │ │ │ ├── selectors.ts │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ ├── usePanelLatestData.ts │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── PublicDashboard │ │ │ │ │ ├── PublicDashboardsFooter.tsx │ │ │ │ │ └── usePublicDashboardConfig.tsx │ │ │ │ ├── PublicDashboardNotAvailable │ │ │ │ │ └── PublicDashboardNotAvailable.tsx │ │ │ │ ├── RepeatRowSelect │ │ │ │ │ └── RepeatRowSelect.tsx │ │ │ │ ├── RowOptions │ │ │ │ │ ├── RowOptionsButton.tsx │ │ │ │ │ ├── RowOptionsForm.test.tsx │ │ │ │ │ ├── RowOptionsForm.tsx │ │ │ │ │ └── RowOptionsModal.tsx │ │ │ │ ├── SaveDashboard │ │ │ │ │ ├── DashboardValidation.tsx │ │ │ │ │ ├── SaveDashboardButton.tsx │ │ │ │ │ ├── SaveDashboardDiff.tsx │ │ │ │ │ ├── SaveDashboardDrawer.test.tsx │ │ │ │ │ ├── SaveDashboardDrawer.tsx │ │ │ │ │ ├── SaveDashboardErrorProxy.tsx │ │ │ │ │ ├── UnsavedChangesModal.tsx │ │ │ │ │ ├── forms │ │ │ │ │ │ ├── SaveDashboardAsForm.test.tsx │ │ │ │ │ │ ├── SaveDashboardAsForm.tsx │ │ │ │ │ │ ├── SaveDashboardForm.test.tsx │ │ │ │ │ │ ├── SaveDashboardForm.tsx │ │ │ │ │ │ └── SaveProvisionedDashboardForm.tsx │ │ │ │ │ ├── types.ts │ │ │ │ │ └── useDashboardSave.tsx │ │ │ │ ├── ShareModal │ │ │ │ │ ├── ShareEmbed.test.tsx │ │ │ │ │ ├── ShareEmbed.tsx │ │ │ │ │ ├── ShareExport.tsx │ │ │ │ │ ├── ShareLibraryPanel.tsx │ │ │ │ │ ├── ShareLink.test.tsx │ │ │ │ │ ├── ShareLink.tsx │ │ │ │ │ ├── ShareModal.tsx │ │ │ │ │ ├── SharePublicDashboard │ │ │ │ │ │ ├── ConfigPublicDashboard │ │ │ │ │ │ │ ├── ConfigPublicDashboard.tsx │ │ │ │ │ │ │ ├── Configuration.tsx │ │ │ │ │ │ │ ├── EmailSharingConfiguration.tsx │ │ │ │ │ │ │ ├── SettingsBar.tsx │ │ │ │ │ │ │ ├── SettingsBarHeader.tsx │ │ │ │ │ │ │ └── SettingsSummary.tsx │ │ │ │ │ │ ├── CreatePublicDashboard │ │ │ │ │ │ │ ├── AcknowledgeCheckboxes.tsx │ │ │ │ │ │ │ └── CreatePublicDashboard.tsx │ │ │ │ │ │ ├── ModalAlerts │ │ │ │ │ │ │ ├── NoUpsertPermissionsAlert.tsx │ │ │ │ │ │ │ ├── SaveDashboardChangesAlert.tsx │ │ │ │ │ │ │ ├── UnsupportedDataSourcesAlert.tsx │ │ │ │ │ │ │ └── UnsupportedTemplateVariablesAlert.tsx │ │ │ │ │ │ ├── SharePublicDashboard.test.tsx │ │ │ │ │ │ ├── SharePublicDashboard.tsx │ │ │ │ │ │ ├── SharePublicDashboardUtils.test.tsx │ │ │ │ │ │ ├── SharePublicDashboardUtils.ts │ │ │ │ │ │ ├── SupportedPubdashDatasources.ts │ │ │ │ │ │ ├── useGetUnsupportedDataSources.ts │ │ │ │ │ │ └── utilsTest.tsx │ │ │ │ │ ├── ShareSnapshot.tsx │ │ │ │ │ ├── ThemePicker.tsx │ │ │ │ │ ├── ViewJsonModal.tsx │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── SubMenu │ │ │ │ │ ├── AnnotationPicker.tsx │ │ │ │ │ ├── Annotations.tsx │ │ │ │ │ ├── DashboardLinks.tsx │ │ │ │ │ ├── DashboardLinksDashboard.test.tsx │ │ │ │ │ ├── DashboardLinksDashboard.tsx │ │ │ │ │ ├── SubMenu.tsx │ │ │ │ │ └── SubMenuItems.tsx │ │ │ │ ├── TransformationsEditor │ │ │ │ │ ├── TransformationEditor.tsx │ │ │ │ │ ├── TransformationEditorHelpDisplay.test.tsx │ │ │ │ │ ├── TransformationEditorHelpDisplay.tsx │ │ │ │ │ ├── TransformationFilter.tsx │ │ │ │ │ ├── TransformationOperationRow.tsx │ │ │ │ │ ├── TransformationOperationRows.tsx │ │ │ │ │ ├── TransformationPicker.tsx │ │ │ │ │ ├── TransformationPickerNg.tsx │ │ │ │ │ ├── TransformationsEditor.test.tsx │ │ │ │ │ ├── TransformationsEditor.tsx │ │ │ │ │ └── types.ts │ │ │ │ └── VersionHistory │ │ │ │ │ ├── RevertDashboardModal.tsx │ │ │ │ │ ├── VersionHistoryComparison.tsx │ │ │ │ │ ├── VersionHistoryTable.tsx │ │ │ │ │ └── useDashboardRestore.tsx │ │ │ ├── containers │ │ │ │ ├── DashboardPage.test.tsx │ │ │ │ ├── DashboardPage.tsx │ │ │ │ ├── DashboardPageProxy.test.tsx │ │ │ │ ├── DashboardPageProxy.tsx │ │ │ │ ├── NewDashboardWithDS.tsx │ │ │ │ ├── PublicDashboardPage.test.tsx │ │ │ │ ├── PublicDashboardPage.tsx │ │ │ │ ├── PublicDashboardPageProxy.test.tsx │ │ │ │ ├── PublicDashboardPageProxy.tsx │ │ │ │ ├── SoloPanelPage.test.tsx │ │ │ │ ├── SoloPanelPage.tsx │ │ │ │ └── types.ts │ │ │ ├── dashgrid │ │ │ │ ├── DashboardEmpty.test.tsx │ │ │ │ ├── DashboardEmpty.tsx │ │ │ │ ├── DashboardGrid.test.tsx │ │ │ │ ├── DashboardGrid.tsx │ │ │ │ ├── DashboardPanel.tsx │ │ │ │ ├── LazyLoader.tsx │ │ │ │ ├── PanelChromeAngular.tsx │ │ │ │ ├── PanelHeader │ │ │ │ │ ├── PanelHeaderMenu.tsx │ │ │ │ │ ├── PanelHeaderMenuProvider.tsx │ │ │ │ │ ├── PanelHeaderMenuWrapper.tsx │ │ │ │ │ ├── PanelHeaderNotice.tsx │ │ │ │ │ ├── PanelHeaderNotices.tsx │ │ │ │ │ ├── PanelHeaderTitleItems.test.tsx │ │ │ │ │ └── PanelHeaderTitleItems.tsx │ │ │ │ ├── PanelLinks.tsx │ │ │ │ ├── PanelLoadTimeMonitor.test.tsx │ │ │ │ ├── PanelLoadTimeMonitor.tsx │ │ │ │ ├── PanelStateWrapper.test.tsx │ │ │ │ ├── PanelStateWrapper.tsx │ │ │ │ ├── SeriesVisibilityConfigFactory.ts │ │ │ │ ├── liveTimer.ts │ │ │ │ ├── panelOptionsLogger.test.ts │ │ │ │ └── panelOptionsLogger.ts │ │ │ ├── index.ts │ │ │ ├── routes.ts │ │ │ ├── services │ │ │ │ ├── DashboardLoaderSrv.ts │ │ │ │ ├── DashboardSrv.ts │ │ │ │ ├── SnapshotSrv.ts │ │ │ │ ├── TimeSrv.test.ts │ │ │ │ └── TimeSrv.ts │ │ │ ├── state │ │ │ │ ├── DashboardMigrator.test.ts │ │ │ │ ├── DashboardMigrator.ts │ │ │ │ ├── DashboardModel.refresh.test.ts │ │ │ │ ├── DashboardModel.repeat.test.ts │ │ │ │ ├── DashboardModel.test.ts │ │ │ │ ├── DashboardModel.ts │ │ │ │ ├── PanelModel.test.ts │ │ │ │ ├── PanelModel.ts │ │ │ │ ├── TimeModel.ts │ │ │ │ ├── __fixtures__ │ │ │ │ │ └── dashboardFixtures.ts │ │ │ │ ├── actions.ts │ │ │ │ ├── analyticsProcessor.ts │ │ │ │ ├── getPanelPluginToMigrateTo.ts │ │ │ │ ├── index.ts │ │ │ │ ├── initDashboard.test.ts │ │ │ │ ├── initDashboard.ts │ │ │ │ ├── reducers.test.ts │ │ │ │ ├── reducers.ts │ │ │ │ ├── selectors.ts │ │ │ │ ├── utils.test.ts │ │ │ │ └── utils.ts │ │ │ └── utils │ │ │ │ ├── dashboard.test.ts │ │ │ │ ├── dashboard.ts │ │ │ │ ├── getPanelChromeProps.tsx │ │ │ │ ├── getPanelMenu.test.ts │ │ │ │ ├── getPanelMenu.ts │ │ │ │ ├── getRefreshFromUrl.test.ts │ │ │ │ ├── getRefreshFromUrl.ts │ │ │ │ ├── loadSnapshotData.ts │ │ │ │ ├── panel.test.ts │ │ │ │ ├── panel.ts │ │ │ │ ├── panelMerge.test.ts │ │ │ │ ├── panelMerge.ts │ │ │ │ ├── screen.ts │ │ │ │ ├── timeRange.ts │ │ │ │ ├── tracking.test.ts │ │ │ │ └── tracking.ts │ │ ├── dataframe-import │ │ │ ├── constants.ts │ │ │ ├── index.ts │ │ │ ├── types.ts │ │ │ ├── utils.test.ts │ │ │ └── utils.ts │ │ ├── datasources │ │ │ ├── __mocks__ │ │ │ │ ├── dataSourcesMocks.ts │ │ │ │ ├── index.ts │ │ │ │ └── store.navIndex.mock.ts │ │ │ ├── api.test.ts │ │ │ ├── api.ts │ │ │ ├── components │ │ │ │ ├── BasicSettings.test.tsx │ │ │ │ ├── BasicSettings.tsx │ │ │ │ ├── ButtonRow.test.tsx │ │ │ │ ├── ButtonRow.tsx │ │ │ │ ├── CloudInfoBox.tsx │ │ │ │ ├── DashboardsTable.test.tsx │ │ │ │ ├── DashboardsTable.tsx │ │ │ │ ├── DataSourceAddButton.tsx │ │ │ │ ├── DataSourceCategories.tsx │ │ │ │ ├── DataSourceDashboards.test.tsx │ │ │ │ ├── DataSourceDashboards.tsx │ │ │ │ ├── DataSourceLoadError.tsx │ │ │ │ ├── DataSourceMissingRightsMessage.tsx │ │ │ │ ├── DataSourcePluginConfigPage.tsx │ │ │ │ ├── DataSourcePluginSettings.tsx │ │ │ │ ├── DataSourcePluginState.tsx │ │ │ │ ├── DataSourceReadOnlyMessage.tsx │ │ │ │ ├── DataSourceTabPage.tsx │ │ │ │ ├── DataSourceTestingStatus.test.tsx │ │ │ │ ├── DataSourceTestingStatus.tsx │ │ │ │ ├── DataSourceTitle.tsx │ │ │ │ ├── DataSourceTypeCard.tsx │ │ │ │ ├── DataSourceTypeCardList.tsx │ │ │ │ ├── DataSourcesList.test.tsx │ │ │ │ ├── DataSourcesList.tsx │ │ │ │ ├── DataSourcesListCard.tsx │ │ │ │ ├── DataSourcesListHeader.tsx │ │ │ │ ├── EditDataSource.test.tsx │ │ │ │ ├── EditDataSource.tsx │ │ │ │ ├── EditDataSourceActions.tsx │ │ │ │ ├── NewDataSource.tsx │ │ │ │ ├── picker │ │ │ │ │ ├── AddNewDataSourceButton.tsx │ │ │ │ │ ├── BuiltInDataSourceList.tsx │ │ │ │ │ ├── DataSourceCard.tsx │ │ │ │ │ ├── DataSourceList.tsx │ │ │ │ │ ├── DataSourceLogo.tsx │ │ │ │ │ ├── DataSourceModal.test.tsx │ │ │ │ │ ├── DataSourceModal.tsx │ │ │ │ │ ├── DataSourcePicker.test.tsx │ │ │ │ │ ├── DataSourcePicker.tsx │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ └── utils.ts │ │ │ │ └── useDataSourceInfo.tsx │ │ │ ├── constants.ts │ │ │ ├── hooks.ts │ │ │ ├── state │ │ │ │ ├── actions.test.ts │ │ │ │ ├── actions.ts │ │ │ │ ├── buildCategories.test.ts │ │ │ │ ├── buildCategories.ts │ │ │ │ ├── contexts.ts │ │ │ │ ├── hooks.ts │ │ │ │ ├── index.ts │ │ │ │ ├── navModel.ts │ │ │ │ ├── reducers.test.ts │ │ │ │ ├── reducers.ts │ │ │ │ └── selectors.ts │ │ │ ├── tracking.ts │ │ │ ├── types.ts │ │ │ └── utils.ts │ │ ├── dimensions │ │ │ ├── color.ts │ │ │ ├── context.ts │ │ │ ├── editors │ │ │ │ ├── BackgroundSizeEditor.tsx │ │ │ │ ├── ColorDimensionEditor.tsx │ │ │ │ ├── FileUploader.tsx │ │ │ │ ├── FolderPickerTab.tsx │ │ │ │ ├── IconSelector.tsx │ │ │ │ ├── ResourceCards.tsx │ │ │ │ ├── ResourceDimensionEditor.tsx │ │ │ │ ├── ResourcePicker.tsx │ │ │ │ ├── ResourcePickerPopover.tsx │ │ │ │ ├── ScalarDimensionEditor.tsx │ │ │ │ ├── ScaleDimensionEditor.tsx │ │ │ │ ├── TextDimensionEditor.tsx │ │ │ │ ├── ThresholdsEditor │ │ │ │ │ ├── ThresholdsEditor.test.tsx │ │ │ │ │ ├── ThresholdsEditor.tsx │ │ │ │ │ └── thresholds.tsx │ │ │ │ ├── URLPickerTab.tsx │ │ │ │ ├── ValueMappingsEditor │ │ │ │ │ ├── ValueMappingEditRow.tsx │ │ │ │ │ ├── ValueMappingsEditor.test.tsx │ │ │ │ │ ├── ValueMappingsEditor.tsx │ │ │ │ │ ├── ValueMappingsEditorModal.test.tsx │ │ │ │ │ └── ValueMappingsEditorModal.tsx │ │ │ │ └── index.ts │ │ │ ├── index.ts │ │ │ ├── resource.test.ts │ │ │ ├── resource.ts │ │ │ ├── scalar.test.ts │ │ │ ├── scalar.ts │ │ │ ├── scale.test.ts │ │ │ ├── scale.ts │ │ │ ├── text.ts │ │ │ ├── types.ts │ │ │ └── utils.ts │ │ ├── explore │ │ │ ├── ContentOutline │ │ │ │ ├── ContentOutline.test.tsx │ │ │ │ ├── ContentOutline.tsx │ │ │ │ ├── ContentOutlineContext.tsx │ │ │ │ ├── ContentOutlineItem.tsx │ │ │ │ └── ContentOutlineItemButton.tsx │ │ │ ├── CorrelationEditorModeBar.tsx │ │ │ ├── CorrelationHelper.tsx │ │ │ ├── CorrelationTransformationAddModal.tsx │ │ │ ├── CorrelationUnsavedChangesModal.tsx │ │ │ ├── CustomContainer.tsx │ │ │ ├── ElapsedTime.tsx │ │ │ ├── ErrorContainer.test.tsx │ │ │ ├── ErrorContainer.tsx │ │ │ ├── Explore.test.tsx │ │ │ ├── Explore.tsx │ │ │ ├── ExploreActions.tsx │ │ │ ├── ExploreDrawer.tsx │ │ │ ├── ExplorePage.tsx │ │ │ ├── ExplorePaneContainer.tsx │ │ │ ├── ExploreQueryInspector.test.tsx │ │ │ ├── ExploreQueryInspector.tsx │ │ │ ├── ExploreRunQueryButton.test.tsx │ │ │ ├── ExploreRunQueryButton.tsx │ │ │ ├── ExploreTimeControls.tsx │ │ │ ├── ExploreToolbar.tsx │ │ │ ├── FeatureTogglePage.tsx │ │ │ ├── FlameGraph │ │ │ │ └── FlameGraphExploreContainer.tsx │ │ │ ├── Graph │ │ │ │ ├── ExploreGraph.tsx │ │ │ │ ├── ExploreGraphLabel.tsx │ │ │ │ ├── GraphContainer.tsx │ │ │ │ ├── exploreGraphStyleUtils.ts │ │ │ │ ├── useStructureRev.test.ts │ │ │ │ ├── useStructureRev.ts │ │ │ │ └── utils.ts │ │ │ ├── LiveTailButton.tsx │ │ │ ├── Logs │ │ │ │ ├── LiveLogs.test.tsx │ │ │ │ ├── LiveLogs.tsx │ │ │ │ ├── Logs.test.tsx │ │ │ │ ├── Logs.tsx │ │ │ │ ├── LogsColumnSearch.tsx │ │ │ │ ├── LogsContainer.tsx │ │ │ │ ├── LogsFeedback.tsx │ │ │ │ ├── LogsMetaRow.test.tsx │ │ │ │ ├── LogsMetaRow.tsx │ │ │ │ ├── LogsNavigation.test.tsx │ │ │ │ ├── LogsNavigation.tsx │ │ │ │ ├── LogsNavigationPages.test.tsx │ │ │ │ ├── LogsNavigationPages.tsx │ │ │ │ ├── LogsSamplePanel.test.tsx │ │ │ │ ├── LogsSamplePanel.tsx │ │ │ │ ├── LogsTable.test.tsx │ │ │ │ ├── LogsTable.tsx │ │ │ │ ├── LogsTableActiveFields.tsx │ │ │ │ ├── LogsTableAvailableFields.tsx │ │ │ │ ├── LogsTableEmptyFields.tsx │ │ │ │ ├── LogsTableMultiSelect.tsx │ │ │ │ ├── LogsTableNavField.tsx │ │ │ │ ├── LogsTableWrap.test.tsx │ │ │ │ ├── LogsTableWrap.tsx │ │ │ │ ├── LogsVolumePanel.test.tsx │ │ │ │ ├── LogsVolumePanel.tsx │ │ │ │ ├── LogsVolumePanelList.test.tsx │ │ │ │ ├── LogsVolumePanelList.tsx │ │ │ │ ├── PopoverMenu.test.tsx │ │ │ │ ├── PopoverMenu.tsx │ │ │ │ └── utils │ │ │ │ │ ├── LogsCrossFadeTransition.tsx │ │ │ │ │ ├── logs.ts │ │ │ │ │ ├── logsVolumeResponse.test.ts │ │ │ │ │ ├── logsVolumeResponse.ts │ │ │ │ │ ├── testMocks.test.ts │ │ │ │ │ └── uFuzzy.ts │ │ │ ├── MetaInfoText.test.tsx │ │ │ ├── MetaInfoText.tsx │ │ │ ├── NoData.tsx │ │ │ ├── NoDataSourceCallToAction.tsx │ │ │ ├── NodeGraph │ │ │ │ ├── NodeGraphContainer.test.tsx │ │ │ │ └── NodeGraphContainer.tsx │ │ │ ├── PrometheusListView │ │ │ │ ├── ItemLabels.tsx │ │ │ │ ├── ItemValues.test.tsx │ │ │ │ ├── ItemValues.tsx │ │ │ │ ├── RawListContainer.test.tsx │ │ │ │ ├── RawListContainer.tsx │ │ │ │ ├── RawListItem.test.tsx │ │ │ │ ├── RawListItem.tsx │ │ │ │ ├── RawListItemAttributes.test.tsx │ │ │ │ ├── RawListItemAttributes.tsx │ │ │ │ └── utils │ │ │ │ │ ├── getRawPrometheusListItemsFromDataFrame.test.ts │ │ │ │ │ └── getRawPrometheusListItemsFromDataFrame.ts │ │ │ ├── QueriesDrawer │ │ │ │ ├── QueriesDrawerContext.tsx │ │ │ │ ├── QueriesDrawerDropdown.tsx │ │ │ │ ├── mocks.tsx │ │ │ │ └── utils.ts │ │ │ ├── QueryLibrary │ │ │ │ ├── QueryLibrary.tsx │ │ │ │ ├── QueryTemplatesList.tsx │ │ │ │ ├── QueryTemplatesTable │ │ │ │ │ ├── ActionsCell.tsx │ │ │ │ │ ├── AddedByCell.tsx │ │ │ │ │ ├── DatasourceTypeCell.tsx │ │ │ │ │ ├── DateAddedCell.tsx │ │ │ │ │ ├── QueryDescriptionCell.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── styles.tsx │ │ │ │ │ └── types.ts │ │ │ │ └── utils │ │ │ │ │ └── useDatasource.tsx │ │ │ ├── QueryRows.test.tsx │ │ │ ├── QueryRows.tsx │ │ │ ├── RawPrometheus │ │ │ │ ├── RawPrometheusContainer.test.tsx │ │ │ │ └── RawPrometheusContainer.tsx │ │ │ ├── ResponseErrorContainer.test.tsx │ │ │ ├── ResponseErrorContainer.tsx │ │ │ ├── RichHistory │ │ │ │ ├── RichHistory.test.tsx │ │ │ │ ├── RichHistory.tsx │ │ │ │ ├── RichHistoryAddToLibrary.tsx │ │ │ │ ├── RichHistoryCard.test.tsx │ │ │ │ ├── RichHistoryCard.tsx │ │ │ │ ├── RichHistoryContainer.test.tsx │ │ │ │ ├── RichHistoryContainer.tsx │ │ │ │ ├── RichHistoryQueriesTab.test.tsx │ │ │ │ ├── RichHistoryQueriesTab.tsx │ │ │ │ ├── RichHistorySettingsTab.test.tsx │ │ │ │ ├── RichHistorySettingsTab.tsx │ │ │ │ ├── RichHistoryStarredTab.test.tsx │ │ │ │ └── RichHistoryStarredTab.tsx │ │ │ ├── SecondaryActions.test.tsx │ │ │ ├── SecondaryActions.tsx │ │ │ ├── ShortLinkButtonMenu.tsx │ │ │ ├── SupplementaryResultError.test.tsx │ │ │ ├── SupplementaryResultError.tsx │ │ │ ├── Table │ │ │ │ ├── TableContainer.test.tsx │ │ │ │ └── TableContainer.tsx │ │ │ ├── Time.tsx │ │ │ ├── TimeSyncButton.test.tsx │ │ │ ├── TimeSyncButton.tsx │ │ │ ├── TraceView │ │ │ │ ├── TraceView.test.tsx │ │ │ │ ├── TraceView.tsx │ │ │ │ ├── TraceViewContainer.test.tsx │ │ │ │ ├── TraceViewContainer.tsx │ │ │ │ ├── components │ │ │ │ │ ├── CriticalPath │ │ │ │ │ │ ├── index.test.ts │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ ├── testCases │ │ │ │ │ │ │ ├── test1.ts │ │ │ │ │ │ │ ├── test2.ts │ │ │ │ │ │ │ ├── test3.ts │ │ │ │ │ │ │ ├── test4.ts │ │ │ │ │ │ │ ├── test5.ts │ │ │ │ │ │ │ ├── test6.ts │ │ │ │ │ │ │ ├── test7.ts │ │ │ │ │ │ │ ├── test8.ts │ │ │ │ │ │ │ └── test9.ts │ │ │ │ │ │ └── utils │ │ │ │ │ │ │ ├── findLastFinishingChildSpan.test.ts │ │ │ │ │ │ │ ├── findLastFinishingChildSpan.tsx │ │ │ │ │ │ │ ├── getChildOfSpans.test.ts │ │ │ │ │ │ │ ├── getChildOfSpans.tsx │ │ │ │ │ │ │ ├── sanitizeOverFlowingChildren.test.ts │ │ │ │ │ │ │ └── sanitizeOverFlowingChildren.tsx │ │ │ │ │ ├── LICENSE_APACHE2 │ │ │ │ │ ├── ScrollManager.test.ts │ │ │ │ │ ├── ScrollManager.tsx │ │ │ │ │ ├── Theme.tsx │ │ │ │ │ ├── TracePageHeader │ │ │ │ │ │ ├── Actions │ │ │ │ │ │ │ ├── ActionButton.tsx │ │ │ │ │ │ │ └── TracePageActions.tsx │ │ │ │ │ │ ├── SearchBar │ │ │ │ │ │ │ ├── NextPrevResult.test.tsx │ │ │ │ │ │ │ ├── NextPrevResult.tsx │ │ │ │ │ │ │ ├── TracePageSearchBar.test.tsx │ │ │ │ │ │ │ └── TracePageSearchBar.tsx │ │ │ │ │ │ ├── SpanFilters │ │ │ │ │ │ │ ├── SpanFilters.test.tsx │ │ │ │ │ │ │ └── SpanFilters.tsx │ │ │ │ │ │ ├── SpanGraph │ │ │ │ │ │ │ ├── CanvasSpanGraph.test.tsx │ │ │ │ │ │ │ ├── CanvasSpanGraph.tsx │ │ │ │ │ │ │ ├── GraphTicks.test.tsx │ │ │ │ │ │ │ ├── GraphTicks.tsx │ │ │ │ │ │ │ ├── Scrubber.test.tsx │ │ │ │ │ │ │ ├── Scrubber.tsx │ │ │ │ │ │ │ ├── TickLabels.test.tsx │ │ │ │ │ │ │ ├── TickLabels.tsx │ │ │ │ │ │ │ ├── ViewingLayer.test.tsx │ │ │ │ │ │ │ ├── ViewingLayer.tsx │ │ │ │ │ │ │ ├── index.test.tsx │ │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ │ ├── render-into-canvas.test.ts │ │ │ │ │ │ │ └── render-into-canvas.tsx │ │ │ │ │ │ ├── TracePageHeader.test.tsx │ │ │ │ │ │ ├── TracePageHeader.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── TraceTimelineViewer │ │ │ │ │ │ ├── ListView │ │ │ │ │ │ │ ├── Positions.test.ts │ │ │ │ │ │ │ ├── Positions.tsx │ │ │ │ │ │ │ ├── index.test.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── SpanBar.test.tsx │ │ │ │ │ │ ├── SpanBar.tsx │ │ │ │ │ │ ├── SpanBarRow.test.tsx │ │ │ │ │ │ ├── SpanBarRow.tsx │ │ │ │ │ │ ├── SpanDetail │ │ │ │ │ │ │ ├── AccordianKeyValues.markers.tsx │ │ │ │ │ │ │ ├── AccordianKeyValues.test.tsx │ │ │ │ │ │ │ ├── AccordianKeyValues.tsx │ │ │ │ │ │ │ ├── AccordianLogs.test.tsx │ │ │ │ │ │ │ ├── AccordianLogs.tsx │ │ │ │ │ │ │ ├── AccordianReferences.test.tsx │ │ │ │ │ │ │ ├── AccordianReferences.tsx │ │ │ │ │ │ │ ├── AccordianText.test.tsx │ │ │ │ │ │ │ ├── AccordianText.tsx │ │ │ │ │ │ │ ├── DetailState.tsx │ │ │ │ │ │ │ ├── KeyValuesTable.test.tsx │ │ │ │ │ │ │ ├── KeyValuesTable.tsx │ │ │ │ │ │ │ ├── SpanFlameGraph.tsx │ │ │ │ │ │ │ ├── TextList.test.tsx │ │ │ │ │ │ │ ├── TextList.tsx │ │ │ │ │ │ │ ├── index.test.tsx │ │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ │ └── jsonMarkup.js │ │ │ │ │ │ ├── SpanDetailRow.test.tsx │ │ │ │ │ │ ├── SpanDetailRow.tsx │ │ │ │ │ │ ├── SpanLinks.tsx │ │ │ │ │ │ ├── SpanTreeOffset.test.tsx │ │ │ │ │ │ ├── SpanTreeOffset.tsx │ │ │ │ │ │ ├── Ticks.test.tsx │ │ │ │ │ │ ├── Ticks.tsx │ │ │ │ │ │ ├── TimelineHeaderRow │ │ │ │ │ │ │ ├── TimelineCollapser.test.tsx │ │ │ │ │ │ │ ├── TimelineCollapser.tsx │ │ │ │ │ │ │ ├── TimelineColumnResizer.test.tsx │ │ │ │ │ │ │ ├── TimelineColumnResizer.tsx │ │ │ │ │ │ │ ├── TimelineHeaderRow.test.tsx │ │ │ │ │ │ │ ├── TimelineHeaderRow.tsx │ │ │ │ │ │ │ ├── TimelineViewingLayer.test.tsx │ │ │ │ │ │ │ ├── TimelineViewingLayer.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── TimelineRow.tsx │ │ │ │ │ │ ├── VirtualizedTraceView.test.tsx │ │ │ │ │ │ ├── VirtualizedTraceView.tsx │ │ │ │ │ │ ├── index.test.tsx │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ ├── types.tsx │ │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ │ └── utils.tsx │ │ │ │ │ ├── Tween.test.ts │ │ │ │ │ ├── Tween.tsx │ │ │ │ │ ├── common │ │ │ │ │ │ ├── BreakableText.tsx │ │ │ │ │ │ ├── CopyIcon.test.tsx │ │ │ │ │ │ ├── CopyIcon.tsx │ │ │ │ │ │ ├── ExternalLinks.tsx │ │ │ │ │ │ ├── LabeledList.tsx │ │ │ │ │ │ ├── NewWindowIcon.tsx │ │ │ │ │ │ ├── Popover.tsx │ │ │ │ │ │ ├── SearchBarInput.test.tsx │ │ │ │ │ │ ├── SearchBarInput.tsx │ │ │ │ │ │ └── TraceName.tsx │ │ │ │ │ ├── constants │ │ │ │ │ │ ├── default-config.ts │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ ├── span.ts │ │ │ │ │ │ └── tag-keys.tsx │ │ │ │ │ ├── demo │ │ │ │ │ │ ├── .eslintrc │ │ │ │ │ │ └── trace-generators.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── keyboard-mappings.tsx │ │ │ │ │ ├── keyboard-shortcuts.tsx │ │ │ │ │ ├── model │ │ │ │ │ │ ├── ddg │ │ │ │ │ │ │ ├── PathElem.test.ts │ │ │ │ │ │ │ ├── PathElem.tsx │ │ │ │ │ │ │ ├── __snapshots__ │ │ │ │ │ │ │ │ └── PathElem.test.ts.snap │ │ │ │ │ │ │ ├── sample-paths.test.resources.ts │ │ │ │ │ │ │ └── types.tsx │ │ │ │ │ │ ├── find-trace-name.test.ts │ │ │ │ │ │ ├── link-patterns.test.ts │ │ │ │ │ │ ├── link-patterns.tsx │ │ │ │ │ │ ├── trace-viewer.test.ts │ │ │ │ │ │ ├── trace-viewer.ts │ │ │ │ │ │ ├── transform-trace-data.test.ts │ │ │ │ │ │ └── transform-trace-data.tsx │ │ │ │ │ ├── scroll-page.test.ts │ │ │ │ │ ├── scroll-page.tsx │ │ │ │ │ ├── selectors │ │ │ │ │ │ ├── span.test.ts │ │ │ │ │ │ ├── span.ts │ │ │ │ │ │ ├── trace.fixture.ts │ │ │ │ │ │ ├── trace.test.ts │ │ │ │ │ │ └── trace.ts │ │ │ │ │ ├── settings │ │ │ │ │ │ └── SpanBarSettings.tsx │ │ │ │ │ ├── types │ │ │ │ │ │ ├── TNil.tsx │ │ │ │ │ │ ├── TTraceTimeline.tsx │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ ├── links.ts │ │ │ │ │ │ └── trace.ts │ │ │ │ │ ├── url │ │ │ │ │ │ ├── ReferenceLink.test.tsx │ │ │ │ │ │ └── ReferenceLink.tsx │ │ │ │ │ └── utils │ │ │ │ │ │ ├── DraggableManager │ │ │ │ │ │ ├── DraggableManager.test.ts │ │ │ │ │ │ ├── DraggableManager.tsx │ │ │ │ │ │ ├── EUpdateTypes.tsx │ │ │ │ │ │ ├── README.md │ │ │ │ │ │ ├── demo │ │ │ │ │ │ │ ├── DividerDemo.css │ │ │ │ │ │ │ ├── DividerDemo.tsx │ │ │ │ │ │ │ ├── DraggableManagerDemo.css │ │ │ │ │ │ │ ├── DraggableManagerDemo.tsx │ │ │ │ │ │ │ ├── RegionDemo.css │ │ │ │ │ │ │ ├── RegionDemo.tsx │ │ │ │ │ │ │ ├── demo-ux.gif │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ └── types.tsx │ │ │ │ │ │ ├── TreeNode.test.ts │ │ │ │ │ │ ├── TreeNode.ts │ │ │ │ │ │ ├── color-generator.test.ts │ │ │ │ │ │ ├── color-generator.tsx │ │ │ │ │ │ ├── config │ │ │ │ │ │ └── get-config.tsx │ │ │ │ │ │ ├── date.test.ts │ │ │ │ │ │ ├── date.tsx │ │ │ │ │ │ ├── filter-spans.test.ts │ │ │ │ │ │ ├── filter-spans.tsx │ │ │ │ │ │ ├── number.tsx │ │ │ │ │ │ ├── sort.test.ts │ │ │ │ │ │ ├── sort.ts │ │ │ │ │ │ ├── span-ancestor-ids.test.ts │ │ │ │ │ │ ├── span-ancestor-ids.tsx │ │ │ │ │ │ └── test │ │ │ │ │ │ └── requestAnimationFrame.ts │ │ │ │ ├── createSpanLink.test.ts │ │ │ │ ├── createSpanLink.tsx │ │ │ │ ├── custom.d.ts │ │ │ │ ├── useChildrenState.test.ts │ │ │ │ ├── useChildrenState.ts │ │ │ │ ├── useDetailState.test.ts │ │ │ │ ├── useDetailState.ts │ │ │ │ ├── useHoverIndentGuide.test.ts │ │ │ │ ├── useHoverIndentGuide.ts │ │ │ │ ├── useSearch.test.ts │ │ │ │ ├── useSearch.ts │ │ │ │ ├── useViewRange.test.ts │ │ │ │ ├── useViewRange.ts │ │ │ │ └── utils │ │ │ │ │ ├── transform.test.ts │ │ │ │ │ └── transform.ts │ │ │ ├── __mocks__ │ │ │ │ ├── data.ts │ │ │ │ ├── makeLogs.ts │ │ │ │ └── mockData.ts │ │ │ ├── correlationEditLogic.test.ts │ │ │ ├── correlationEditLogic.ts │ │ │ ├── extensions │ │ │ │ ├── AddToDashboard │ │ │ │ │ ├── AddToDashboardForm.tsx │ │ │ │ │ ├── addToDashboard.test.ts │ │ │ │ │ ├── addToDashboard.ts │ │ │ │ │ ├── getAddToDashboardTitle.test.ts │ │ │ │ │ ├── getAddToDashboardTitle.ts │ │ │ │ │ ├── index.test.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── ConfirmNavigationModal.tsx │ │ │ │ ├── ToolbarExtensionPoint.test.tsx │ │ │ │ ├── ToolbarExtensionPoint.tsx │ │ │ │ ├── ToolbarExtensionPointMenu.tsx │ │ │ │ ├── getExploreExtensionConfigs.test.tsx │ │ │ │ └── getExploreExtensionConfigs.tsx │ │ │ ├── hooks │ │ │ │ ├── useExploreDataLinkPostProcessor.ts │ │ │ │ ├── useExplorePageTitle.test.tsx │ │ │ │ ├── useExplorePageTitle.ts │ │ │ │ ├── useKeyboardShortcuts.test.tsx │ │ │ │ ├── useKeyboardShortcuts.ts │ │ │ │ ├── useSplitSizeUpdater.test.tsx │ │ │ │ ├── useSplitSizeUpdater.ts │ │ │ │ ├── useStateSync │ │ │ │ │ ├── external.utils.ts │ │ │ │ │ ├── index.test.tsx │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── internal.utils.ts │ │ │ │ │ ├── migrators │ │ │ │ │ │ ├── types.ts │ │ │ │ │ │ ├── v0.test.ts │ │ │ │ │ │ ├── v0.ts │ │ │ │ │ │ ├── v1.test.ts │ │ │ │ │ │ └── v1.ts │ │ │ │ │ ├── parseURL.ts │ │ │ │ │ └── synchronizer │ │ │ │ │ │ ├── fromURL.ts │ │ │ │ │ │ ├── init.ts │ │ │ │ │ │ └── toURL.ts │ │ │ │ ├── useTimeSrvFix.test.tsx │ │ │ │ ├── useTimeSrvFix.ts │ │ │ │ └── utils.ts │ │ │ ├── spec │ │ │ │ ├── datasourceState.test.tsx │ │ │ │ ├── helper │ │ │ │ │ ├── assert.ts │ │ │ │ │ ├── interactions.ts │ │ │ │ │ ├── query.ts │ │ │ │ │ └── setup.tsx │ │ │ │ ├── interpolation.test.tsx │ │ │ │ ├── query.test.tsx │ │ │ │ ├── queryHistory.test.tsx │ │ │ │ ├── queryLibrary.test.tsx │ │ │ │ └── split.test.tsx │ │ │ ├── state │ │ │ │ ├── correlations.ts │ │ │ │ ├── datasource.test.ts │ │ │ │ ├── datasource.ts │ │ │ │ ├── explorePane.ts │ │ │ │ ├── helpers.ts │ │ │ │ ├── history.ts │ │ │ │ ├── main.test.ts │ │ │ │ ├── main.ts │ │ │ │ ├── query.test.ts │ │ │ │ ├── query.ts │ │ │ │ ├── selectors.test.ts │ │ │ │ ├── selectors.ts │ │ │ │ ├── time.test.ts │ │ │ │ ├── time.ts │ │ │ │ ├── utils.test.ts │ │ │ │ └── utils.ts │ │ │ ├── useLiveTailControls.ts │ │ │ └── utils │ │ │ │ ├── decorators.test.ts │ │ │ │ ├── decorators.ts │ │ │ │ ├── links.test.ts │ │ │ │ ├── links.ts │ │ │ │ ├── queries.ts │ │ │ │ ├── supplementaryQueries.test.ts │ │ │ │ ├── supplementaryQueries.ts │ │ │ │ └── supplementaryQueries_legacy.test.ts │ │ ├── expressions │ │ │ ├── ExpressionDatasource.test.ts │ │ │ ├── ExpressionDatasource.ts │ │ │ ├── ExpressionQueryEditor.tsx │ │ │ ├── components │ │ │ │ ├── ClassicConditions.tsx │ │ │ │ ├── Condition.tsx │ │ │ │ ├── Math.tsx │ │ │ │ ├── Reduce.tsx │ │ │ │ ├── Resample.tsx │ │ │ │ ├── SqlExpr.tsx │ │ │ │ ├── Threshold.tsx │ │ │ │ ├── __snapshots__ │ │ │ │ │ └── hysteresis.test.ts.snap │ │ │ │ ├── hysteresis.test.ts │ │ │ │ └── thresholdReducer.ts │ │ │ ├── guards.ts │ │ │ ├── types.ts │ │ │ └── utils │ │ │ │ └── expressionTypes.ts │ │ ├── folders │ │ │ └── state │ │ │ │ ├── actions.ts │ │ │ │ ├── navModel.ts │ │ │ │ ├── reducers.test.ts │ │ │ │ └── reducers.ts │ │ ├── geo │ │ │ ├── editor │ │ │ │ ├── GazetteerPathEditor.tsx │ │ │ │ ├── locationEditor.ts │ │ │ │ └── locationModeEditor.tsx │ │ │ ├── format │ │ │ │ ├── geohash.test.ts │ │ │ │ ├── geohash.ts │ │ │ │ ├── geojson.test.ts │ │ │ │ ├── geojson.ts │ │ │ │ └── utils.ts │ │ │ ├── gazetteer │ │ │ │ ├── gazetteer.test.ts │ │ │ │ ├── gazetteer.ts │ │ │ │ ├── worldmap.test.ts │ │ │ │ └── worldmap.ts │ │ │ └── utils │ │ │ │ ├── frameVectorSource.ts │ │ │ │ ├── location.test.ts │ │ │ │ └── location.ts │ │ ├── gops │ │ │ └── configuration-tracker │ │ │ │ ├── Analytics.ts │ │ │ │ ├── alerting │ │ │ │ ├── hooks.ts │ │ │ │ └── utils.ts │ │ │ │ ├── components │ │ │ │ ├── ConfigCard.tsx │ │ │ │ ├── ConfigureIRM.tsx │ │ │ │ ├── Essentials.test.tsx │ │ │ │ ├── Essentials.tsx │ │ │ │ └── ProgressBar.tsx │ │ │ │ ├── incidents │ │ │ │ └── hooks.ts │ │ │ │ ├── irmHooks.ts │ │ │ │ └── onCall │ │ │ │ └── hooks.ts │ │ ├── inspector │ │ │ ├── DetailText.tsx │ │ │ ├── InspectDataOptions.tsx │ │ │ ├── InspectDataTab.test.tsx │ │ │ ├── InspectDataTab.tsx │ │ │ ├── InspectErrorTab.test.tsx │ │ │ ├── InspectErrorTab.tsx │ │ │ ├── InspectJSONTab.tsx │ │ │ ├── InspectMetadataTab.tsx │ │ │ ├── InspectStatsTab.tsx │ │ │ ├── InspectStatsTable.tsx │ │ │ ├── InspectStatsTraceIdsTable.tsx │ │ │ ├── QueryInspector.tsx │ │ │ ├── styles.ts │ │ │ ├── types.ts │ │ │ └── utils │ │ │ │ ├── download.test.ts │ │ │ │ ├── download.ts │ │ │ │ └── utils.ts │ │ ├── invites │ │ │ ├── InviteeRow.tsx │ │ │ ├── InviteesTable.test.tsx │ │ │ ├── InviteesTable.tsx │ │ │ ├── SignupInvited.test.tsx │ │ │ ├── SignupInvited.tsx │ │ │ └── state │ │ │ │ ├── actions.ts │ │ │ │ ├── reducers.test.ts │ │ │ │ ├── reducers.ts │ │ │ │ └── selectors.ts │ │ ├── library-panels │ │ │ ├── LibraryPanelsPage.tsx │ │ │ ├── components │ │ │ │ ├── AddLibraryPanelModal │ │ │ │ │ └── AddLibraryPanelModal.tsx │ │ │ │ ├── ChangeLibraryPanelModal │ │ │ │ │ └── ChangeLibraryPanelModal.tsx │ │ │ │ ├── DeleteLibraryPanelModal │ │ │ │ │ ├── DeleteLibraryPanelModal.tsx │ │ │ │ │ ├── actions.ts │ │ │ │ │ ├── reducer.test.ts │ │ │ │ │ └── reducer.ts │ │ │ │ ├── LibraryPanelCard │ │ │ │ │ └── LibraryPanelCard.tsx │ │ │ │ ├── LibraryPanelInfo │ │ │ │ │ └── LibraryPanelInfo.tsx │ │ │ │ ├── LibraryPanelsSearch │ │ │ │ │ ├── LibraryPanelsSearch.test.tsx │ │ │ │ │ └── LibraryPanelsSearch.tsx │ │ │ │ ├── LibraryPanelsView │ │ │ │ │ ├── LibraryPanelsView.tsx │ │ │ │ │ ├── actions.ts │ │ │ │ │ ├── reducer.test.ts │ │ │ │ │ └── reducer.ts │ │ │ │ ├── OpenLibraryPanelModal │ │ │ │ │ └── OpenLibraryPanelModal.tsx │ │ │ │ ├── PanelLibraryOptionsGroup │ │ │ │ │ └── PanelLibraryOptionsGroup.tsx │ │ │ │ └── SaveLibraryPanelModal │ │ │ │ │ └── SaveLibraryPanelModal.tsx │ │ │ ├── guard.ts │ │ │ ├── state │ │ │ │ └── api.ts │ │ │ ├── styles.ts │ │ │ ├── types.ts │ │ │ ├── utils.ts │ │ │ └── utils │ │ │ │ └── usePanelSave.ts │ │ ├── live │ │ │ ├── LiveConnectionWarning.tsx │ │ │ ├── centrifuge │ │ │ │ ├── LiveDataStream.test.ts │ │ │ │ ├── LiveDataStream.ts │ │ │ │ ├── channel.ts │ │ │ │ ├── createCentrifugeServiceWorker.ts │ │ │ │ ├── remoteObservable.ts │ │ │ │ ├── service.ts │ │ │ │ ├── service.worker.ts │ │ │ │ ├── serviceWorkerProxy.ts │ │ │ │ └── transferHandlers.ts │ │ │ ├── dashboard │ │ │ │ ├── DashboardChangedModal.tsx │ │ │ │ ├── dashboardWatcher.ts │ │ │ │ └── types.ts │ │ │ ├── data │ │ │ │ ├── amendTimeSeries.ts │ │ │ │ └── utils.ts │ │ │ ├── index.ts │ │ │ ├── info.ts │ │ │ ├── live.test.ts │ │ │ └── live.ts │ │ ├── logs │ │ │ ├── UniqueKeyMaker.test.ts │ │ │ ├── UniqueKeyMaker.ts │ │ │ ├── components │ │ │ │ ├── InfiniteScroll.test.tsx │ │ │ │ ├── InfiniteScroll.tsx │ │ │ │ ├── LoadingIndicator.tsx │ │ │ │ ├── LogDetails.test.tsx │ │ │ │ ├── LogDetails.tsx │ │ │ │ ├── LogDetailsRow.test.tsx │ │ │ │ ├── LogDetailsRow.tsx │ │ │ │ ├── LogLabelStats.tsx │ │ │ │ ├── LogLabelStatsRow.tsx │ │ │ │ ├── LogLabels.test.tsx │ │ │ │ ├── LogLabels.tsx │ │ │ │ ├── LogMessageAnsi.test.tsx │ │ │ │ ├── LogMessageAnsi.tsx │ │ │ │ ├── LogRow.test.tsx │ │ │ │ ├── LogRow.tsx │ │ │ │ ├── LogRowMenuCell.tsx │ │ │ │ ├── LogRowMessage.test.tsx │ │ │ │ ├── LogRowMessage.tsx │ │ │ │ ├── LogRowMessageDisplayedFields.test.tsx │ │ │ │ ├── LogRowMessageDisplayedFields.tsx │ │ │ │ ├── LogRows.test.tsx │ │ │ │ ├── LogRows.tsx │ │ │ │ ├── __mocks__ │ │ │ │ │ └── logRow.ts │ │ │ │ ├── getLogRowStyles.ts │ │ │ │ ├── log-context │ │ │ │ │ ├── LogContextButtons.test.tsx │ │ │ │ │ ├── LogContextButtons.tsx │ │ │ │ │ ├── LogRowContextModal.test.tsx │ │ │ │ │ └── LogRowContextModal.tsx │ │ │ │ ├── logParser.test.ts │ │ │ │ └── logParser.ts │ │ │ ├── legacyLogsFrame.ts │ │ │ ├── logsFrame.test.ts │ │ │ ├── logsFrame.ts │ │ │ ├── logsModel.test.ts │ │ │ ├── logsModel.ts │ │ │ ├── logsModel_parse.test.ts │ │ │ ├── utils.test.ts │ │ │ └── utils.ts │ │ ├── manage-dashboards │ │ │ ├── DashboardImportPage.tsx │ │ │ ├── PublicDashboardListPage.tsx │ │ │ ├── SnapshotListPage.tsx │ │ │ ├── components │ │ │ │ ├── ImportDashboardForm.tsx │ │ │ │ ├── ImportDashboardLibraryPanelsList.tsx │ │ │ │ ├── ImportDashboardOverview.tsx │ │ │ │ ├── PublicDashboardListTable │ │ │ │ │ ├── DeletePublicDashboardButton.tsx │ │ │ │ │ ├── DeletePublicDashboardModal.tsx │ │ │ │ │ ├── PublicDashboardListTable.test.tsx │ │ │ │ │ └── PublicDashboardListTable.tsx │ │ │ │ ├── SnapshotListTable.test.tsx │ │ │ │ ├── SnapshotListTable.tsx │ │ │ │ ├── SnapshotListTableRow.test.tsx │ │ │ │ └── SnapshotListTableRow.tsx │ │ │ ├── services │ │ │ │ └── ValidationSrv.ts │ │ │ ├── state │ │ │ │ ├── actions.test.ts │ │ │ │ ├── actions.ts │ │ │ │ ├── reducers.test.ts │ │ │ │ └── reducers.ts │ │ │ ├── types.ts │ │ │ └── utils │ │ │ │ └── validation.ts │ │ ├── migrate-to-cloud │ │ │ ├── MigrateToCloud.tsx │ │ │ ├── api │ │ │ │ ├── baseAPI.ts │ │ │ │ ├── endpoints.gen.ts │ │ │ │ └── index.ts │ │ │ ├── cloud │ │ │ │ ├── InfoPane.tsx │ │ │ │ ├── MigrationTokenPane │ │ │ │ │ ├── DeleteMigrationTokenModal.tsx │ │ │ │ │ ├── MigrationTokenModal.tsx │ │ │ │ │ ├── MigrationTokenPane.tsx │ │ │ │ │ └── TokenStatus.tsx │ │ │ │ ├── Page.tsx │ │ │ │ └── TokenErrorAlert.tsx │ │ │ ├── fixtures │ │ │ │ ├── migrationItems.ts │ │ │ │ ├── mswAPI.ts │ │ │ │ ├── others.ts │ │ │ │ └── tokens.ts │ │ │ ├── onprem │ │ │ │ ├── DisconnectModal.tsx │ │ │ │ ├── EmptyState │ │ │ │ │ ├── CallToAction │ │ │ │ │ │ ├── CallToAction.test.tsx │ │ │ │ │ │ ├── CallToAction.tsx │ │ │ │ │ │ └── ConnectModal.tsx │ │ │ │ │ ├── EmptyState.tsx │ │ │ │ │ ├── InfoPaneLeft.tsx │ │ │ │ │ └── InfoPaneRight.tsx │ │ │ │ ├── MigrationInfo.tsx │ │ │ │ ├── NameCell.tsx │ │ │ │ ├── Page.tsx │ │ │ │ ├── ResourcesTable.test.tsx │ │ │ │ ├── ResourcesTable.tsx │ │ │ │ ├── StatusCell.tsx │ │ │ │ └── TypeCell.tsx │ │ │ └── shared │ │ │ │ └── InfoItem.tsx │ │ ├── notifications │ │ │ ├── NotificationsPage.tsx │ │ │ └── StoredNotifications.tsx │ │ ├── org │ │ │ ├── NewOrgPage.tsx │ │ │ ├── OrgDetailsPage.test.tsx │ │ │ ├── OrgDetailsPage.tsx │ │ │ ├── OrgProfile.test.tsx │ │ │ ├── OrgProfile.tsx │ │ │ ├── SelectOrgPage.tsx │ │ │ ├── UserInviteForm.tsx │ │ │ ├── UserInvitePage.tsx │ │ │ └── state │ │ │ │ ├── actions.test.ts │ │ │ │ ├── actions.ts │ │ │ │ ├── reducers.test.ts │ │ │ │ └── reducers.ts │ │ ├── panel │ │ │ ├── components │ │ │ │ ├── PanelDataErrorView.test.tsx │ │ │ │ ├── PanelDataErrorView.tsx │ │ │ │ ├── PanelPluginError.tsx │ │ │ │ ├── PanelRenderer.tsx │ │ │ │ └── VizTypePicker │ │ │ │ │ ├── PanelTypeCard.tsx │ │ │ │ │ ├── VisualizationSuggestionCard.tsx │ │ │ │ │ ├── VisualizationSuggestions.tsx │ │ │ │ │ ├── VizTypePicker.tsx │ │ │ │ │ ├── VizTypePickerPlugin.tsx │ │ │ │ │ └── types.ts │ │ │ ├── panellinks │ │ │ │ ├── linkSuppliers.test.ts │ │ │ │ ├── linkSuppliers.ts │ │ │ │ ├── link_srv.ts │ │ │ │ └── specs │ │ │ │ │ └── link_srv.test.ts │ │ │ └── state │ │ │ │ ├── actions.test.ts │ │ │ │ ├── actions.ts │ │ │ │ ├── getAllSuggestions.test.ts │ │ │ │ ├── getAllSuggestions.ts │ │ │ │ ├── reducers.ts │ │ │ │ ├── selectors.ts │ │ │ │ ├── util.ts │ │ │ │ └── utils.test.ts │ │ ├── playlist │ │ │ ├── PlaylistCard.tsx │ │ │ ├── PlaylistEditPage.test.tsx │ │ │ ├── PlaylistEditPage.tsx │ │ │ ├── PlaylistForm.test.tsx │ │ │ ├── PlaylistForm.tsx │ │ │ ├── PlaylistNewPage.test.tsx │ │ │ ├── PlaylistNewPage.tsx │ │ │ ├── PlaylistPage.test.tsx │ │ │ ├── PlaylistPage.tsx │ │ │ ├── PlaylistPageList.tsx │ │ │ ├── PlaylistSrv.test.ts │ │ │ ├── PlaylistSrv.ts │ │ │ ├── PlaylistStartPage.tsx │ │ │ ├── PlaylistTable.tsx │ │ │ ├── PlaylistTableRows.tsx │ │ │ ├── ShareModal.tsx │ │ │ ├── StartModal.tsx │ │ │ ├── api.ts │ │ │ ├── types.ts │ │ │ └── usePlaylistItems.tsx │ │ ├── plugins │ │ │ ├── admin │ │ │ │ ├── __mocks__ │ │ │ │ │ ├── catalogPlugin.mock.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── localPlugin.mock.ts │ │ │ │ │ ├── mockHelpers.ts │ │ │ │ │ └── remotePlugin.mock.ts │ │ │ │ ├── api.ts │ │ │ │ ├── components │ │ │ │ │ ├── AppConfigWrapper.tsx │ │ │ │ │ ├── Badges │ │ │ │ │ │ ├── PluginAngularBadge.tsx │ │ │ │ │ │ ├── PluginDeprecatedBadge.tsx │ │ │ │ │ │ ├── PluginDisabledBadge.tsx │ │ │ │ │ │ ├── PluginEnterpriseBadge.tsx │ │ │ │ │ │ ├── PluginInstallBadge.tsx │ │ │ │ │ │ ├── PluginUpdateAvailableBadge.tsx │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── sharedStyles.ts │ │ │ │ │ ├── GetStartedWithPlugin │ │ │ │ │ │ ├── GetStartedWithApp.tsx │ │ │ │ │ │ ├── GetStartedWithDataSource.test.tsx │ │ │ │ │ │ ├── GetStartedWithDataSource.tsx │ │ │ │ │ │ ├── GetStartedWithPlugin.tsx │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── HorizontalGroup.tsx │ │ │ │ │ ├── InstallControls │ │ │ │ │ │ ├── ExternallyManagedButton.test.tsx │ │ │ │ │ │ ├── ExternallyManagedButton.tsx │ │ │ │ │ │ ├── InstallControlsButton.test.tsx │ │ │ │ │ │ ├── InstallControlsButton.tsx │ │ │ │ │ │ ├── InstallControlsWarning.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── Loader.tsx │ │ │ │ │ ├── PluginActions.tsx │ │ │ │ │ ├── PluginDashboards.tsx │ │ │ │ │ ├── PluginDetailsBody.tsx │ │ │ │ │ ├── PluginDetailsDeprecatedWarning.tsx │ │ │ │ │ ├── PluginDetailsDisabledError.tsx │ │ │ │ │ ├── PluginDetailsHeaderDependencies.tsx │ │ │ │ │ ├── PluginDetailsHeaderSignature.tsx │ │ │ │ │ ├── PluginDetailsPage.tsx │ │ │ │ │ ├── PluginDetailsSignature.tsx │ │ │ │ │ ├── PluginList.test.tsx │ │ │ │ │ ├── PluginList.tsx │ │ │ │ │ ├── PluginListItem.test.tsx │ │ │ │ │ ├── PluginListItem.tsx │ │ │ │ │ ├── PluginListItemBadges.test.tsx │ │ │ │ │ ├── PluginListItemBadges.tsx │ │ │ │ │ ├── PluginLogo.tsx │ │ │ │ │ ├── PluginSignatureDetailsBadge.tsx │ │ │ │ │ ├── PluginSubtitle.tsx │ │ │ │ │ ├── PluginUsage.tsx │ │ │ │ │ ├── SearchField.tsx │ │ │ │ │ └── VersionList.tsx │ │ │ │ ├── constants.ts │ │ │ │ ├── helpers.test.ts │ │ │ │ ├── helpers.ts │ │ │ │ ├── hooks │ │ │ │ │ ├── useHistory.tsx │ │ │ │ │ ├── usePluginConfig.tsx │ │ │ │ │ ├── usePluginDetailsTabs.tsx │ │ │ │ │ ├── usePluginInfo.tsx │ │ │ │ │ └── usePluginPageExtensions.tsx │ │ │ │ ├── img │ │ │ │ │ └── logo.svg │ │ │ │ ├── pages │ │ │ │ │ ├── Browse.test.tsx │ │ │ │ │ ├── Browse.tsx │ │ │ │ │ ├── PluginDetails.test.tsx │ │ │ │ │ └── PluginDetails.tsx │ │ │ │ ├── permissions.ts │ │ │ │ ├── routes.tsx │ │ │ │ ├── state │ │ │ │ │ ├── actions.ts │ │ │ │ │ ├── hooks.ts │ │ │ │ │ ├── reducer.ts │ │ │ │ │ ├── selectors.test.ts │ │ │ │ │ └── selectors.ts │ │ │ │ ├── tracking.ts │ │ │ │ └── types.ts │ │ │ ├── all.ts │ │ │ ├── angularDeprecation │ │ │ │ ├── AngularDeprecationNotice.test.tsx │ │ │ │ ├── AngularDeprecationNotice.tsx │ │ │ │ ├── AngularDeprecationPluginNotice.test.tsx │ │ │ │ ├── AngularDeprecationPluginNotice.tsx │ │ │ │ ├── AngularMigrationNotice.test.tsx │ │ │ │ ├── AngularMigrationNotice.tsx │ │ │ │ └── utils.ts │ │ │ ├── built_in_plugins.ts │ │ │ ├── cdn │ │ │ │ ├── utils.test.ts │ │ │ │ └── utils.ts │ │ │ ├── components │ │ │ │ ├── AppRootPage.test.tsx │ │ │ │ ├── AppRootPage.tsx │ │ │ │ ├── PluginPageContext.tsx │ │ │ │ ├── PluginStateInfo.tsx │ │ │ │ └── PluginsErrorsInfo.tsx │ │ │ ├── datasource_srv.ts │ │ │ ├── extensions │ │ │ │ ├── getCoreExtensionConfigurations.ts │ │ │ │ ├── getPluginExtensions.test.tsx │ │ │ │ ├── getPluginExtensions.ts │ │ │ │ ├── reactivePluginExtensionRegistry.test.ts │ │ │ │ ├── reactivePluginExtensionRegistry.ts │ │ │ │ ├── types.ts │ │ │ │ ├── usePluginExtensions.test.tsx │ │ │ │ ├── usePluginExtensions.tsx │ │ │ │ ├── utils.test.tsx │ │ │ │ ├── utils.tsx │ │ │ │ ├── validators.test.tsx │ │ │ │ └── validators.ts │ │ │ ├── importPanelPlugin.ts │ │ │ ├── loader │ │ │ │ ├── cache.test.ts │ │ │ │ ├── cache.ts │ │ │ │ ├── constants.ts │ │ │ │ ├── packageMetrics.test.ts │ │ │ │ ├── packageMetrics.ts │ │ │ │ ├── pluginLoader.mock.ts │ │ │ │ ├── sharedDependencies.ts │ │ │ │ ├── systemjs.ts │ │ │ │ ├── systemjsHooks.test.ts │ │ │ │ ├── systemjsHooks.ts │ │ │ │ ├── types.ts │ │ │ │ ├── utils.test.ts │ │ │ │ └── utils.ts │ │ │ ├── pluginPreloader.ts │ │ │ ├── pluginSettings.test.ts │ │ │ ├── pluginSettings.ts │ │ │ ├── plugin_loader.ts │ │ │ ├── routes.tsx │ │ │ ├── sandbox │ │ │ │ ├── README.md │ │ │ │ ├── code_loader.ts │ │ │ │ ├── constants.ts │ │ │ │ ├── distortion_map.ts │ │ │ │ ├── document_sandbox.ts │ │ │ │ ├── plugin_dependencies.ts │ │ │ │ ├── sandbox_components.tsx │ │ │ │ ├── sandbox_plugin_loader.ts │ │ │ │ ├── types.ts │ │ │ │ └── utils.ts │ │ │ ├── tests │ │ │ │ ├── datasource_srv.test.ts │ │ │ │ └── plugin_loader.test.ts │ │ │ ├── utils.test.ts │ │ │ └── utils.ts │ │ ├── profile │ │ │ ├── ChangePasswordForm.tsx │ │ │ ├── ChangePasswordPage.test.tsx │ │ │ ├── ChangePasswordPage.tsx │ │ │ ├── FeatureTogglePage.tsx │ │ │ ├── UserOrganizations.tsx │ │ │ ├── UserProfileEditForm.tsx │ │ │ ├── UserProfileEditPage.test.tsx │ │ │ ├── UserProfileEditPage.tsx │ │ │ ├── UserSessions.tsx │ │ │ ├── UserTeams.tsx │ │ │ ├── api.ts │ │ │ ├── routes.tsx │ │ │ ├── state │ │ │ │ ├── actions.ts │ │ │ │ ├── reducers.test.ts │ │ │ │ ├── reducers.ts │ │ │ │ └── selectors.ts │ │ │ └── types.ts │ │ ├── query-library │ │ │ ├── api │ │ │ │ ├── factory.ts │ │ │ │ ├── mappers.ts │ │ │ │ ├── mocks.ts │ │ │ │ ├── query.ts │ │ │ │ ├── testdata │ │ │ │ │ └── testQueryList.ts │ │ │ │ └── types.ts │ │ │ ├── index.ts │ │ │ └── types.ts │ │ ├── query │ │ │ ├── components │ │ │ │ ├── QueryActionComponent.ts │ │ │ │ ├── QueryEditorRow.test.tsx │ │ │ │ ├── QueryEditorRow.tsx │ │ │ │ ├── QueryEditorRowHeader.test.tsx │ │ │ │ ├── QueryEditorRowHeader.tsx │ │ │ │ ├── QueryEditorRows.test.tsx │ │ │ │ ├── QueryEditorRows.tsx │ │ │ │ ├── QueryErrorAlert.tsx │ │ │ │ ├── QueryGroup.test.tsx │ │ │ │ ├── QueryGroup.tsx │ │ │ │ └── QueryGroupOptions.tsx │ │ │ ├── state │ │ │ │ ├── DashboardQueryRunner │ │ │ │ │ ├── AnnotationsQueryRunner.test.ts │ │ │ │ │ ├── AnnotationsQueryRunner.ts │ │ │ │ │ ├── AnnotationsWorker.test.ts │ │ │ │ │ ├── AnnotationsWorker.ts │ │ │ │ │ ├── DashboardQueryRunner.test.ts │ │ │ │ │ ├── DashboardQueryRunner.ts │ │ │ │ │ ├── LegacyAnnotationQueryRunner.test.ts │ │ │ │ │ ├── LegacyAnnotationQueryRunner.ts │ │ │ │ │ ├── PublicAnnotationsDataSource.test.ts │ │ │ │ │ ├── PublicAnnotationsDataSource.ts │ │ │ │ │ ├── SnapshotWorker.test.ts │ │ │ │ │ ├── SnapshotWorker.ts │ │ │ │ │ ├── UnifiedAlertStatesWorker.test.ts │ │ │ │ │ ├── UnifiedAlertStatesWorker.ts │ │ │ │ │ ├── testHelpers.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── PanelQueryRunner.test.ts │ │ │ │ ├── PanelQueryRunner.ts │ │ │ │ ├── QueryRunner.ts │ │ │ │ ├── __mocks__ │ │ │ │ │ └── mockDataSource.ts │ │ │ │ ├── mergePanelAndDashData.test.ts │ │ │ │ ├── mergePanelAndDashData.ts │ │ │ │ ├── processing │ │ │ │ │ ├── canceler.ts │ │ │ │ │ └── revision.ts │ │ │ │ ├── queryAnalytics.test.ts │ │ │ │ ├── queryAnalytics.ts │ │ │ │ ├── runRequest.test.ts │ │ │ │ ├── runRequest.ts │ │ │ │ ├── updateQueries.test.ts │ │ │ │ └── updateQueries.ts │ │ │ └── utils.ts │ │ ├── runtime │ │ │ └── init.ts │ │ ├── sandbox │ │ │ ├── BenchmarksPage.tsx │ │ │ └── TestStuffPage.tsx │ │ ├── search │ │ │ ├── constants.ts │ │ │ ├── hooks │ │ │ │ └── useSearchKeyboardSelection.ts │ │ │ ├── loaders.ts │ │ │ ├── page │ │ │ │ ├── components │ │ │ │ │ ├── ActionRow.tsx │ │ │ │ │ ├── ExplainScorePopup.tsx │ │ │ │ │ ├── SearchResultsTable.test.tsx │ │ │ │ │ ├── SearchResultsTable.tsx │ │ │ │ │ └── columns.tsx │ │ │ │ ├── reporting.ts │ │ │ │ ├── selection.test.ts │ │ │ │ └── selection.ts │ │ │ ├── service │ │ │ │ ├── bluge.ts │ │ │ │ ├── dummy.ts │ │ │ │ ├── folders.ts │ │ │ │ ├── frontend.test.ts │ │ │ │ ├── frontend.ts │ │ │ │ ├── index.ts │ │ │ │ ├── searcher.ts │ │ │ │ ├── sql.test.ts │ │ │ │ ├── sql.ts │ │ │ │ ├── types.ts │ │ │ │ └── utils.ts │ │ │ ├── state │ │ │ │ ├── SearchStateManager.test.ts │ │ │ │ └── SearchStateManager.ts │ │ │ ├── tempI18nPhrases.ts │ │ │ ├── types.ts │ │ │ ├── utils.test.ts │ │ │ └── utils.ts │ │ ├── serviceaccounts │ │ │ ├── ServiceAccountCreatePage.test.tsx │ │ │ ├── ServiceAccountCreatePage.tsx │ │ │ ├── ServiceAccountPage.test.tsx │ │ │ ├── ServiceAccountPage.tsx │ │ │ ├── ServiceAccountPermissions.tsx │ │ │ ├── ServiceAccountTable.tsx │ │ │ ├── ServiceAccountsListPage.test.tsx │ │ │ ├── ServiceAccountsListPage.tsx │ │ │ ├── components │ │ │ │ ├── CreateTokenModal.tsx │ │ │ │ ├── ServiceAccountProfile.tsx │ │ │ │ ├── ServiceAccountProfileRow.tsx │ │ │ │ ├── ServiceAccountRoleRow.tsx │ │ │ │ ├── ServiceAccountTokensTable.tsx │ │ │ │ └── ServiceAccountsListItem.tsx │ │ │ └── state │ │ │ │ ├── actions.ts │ │ │ │ ├── actionsServiceAccountPage.ts │ │ │ │ └── reducers.ts │ │ ├── storage │ │ │ ├── AddRootView.tsx │ │ │ ├── Breadcrumb.tsx │ │ │ ├── CreateNewFolderModal.tsx │ │ │ ├── FileView.tsx │ │ │ ├── FolderView.tsx │ │ │ ├── RootView.tsx │ │ │ ├── StorageFolderPage.tsx │ │ │ ├── StoragePage.tsx │ │ │ ├── UploadButton.tsx │ │ │ ├── storage.ts │ │ │ └── types.ts │ │ ├── support-bundles │ │ │ ├── SupportBundles.tsx │ │ │ ├── SupportBundlesCreate.tsx │ │ │ └── state │ │ │ │ ├── actions.ts │ │ │ │ └── reducers.ts │ │ ├── teams │ │ │ ├── CreateTeam.test.tsx │ │ │ ├── CreateTeam.tsx │ │ │ ├── TeamGroupSync.test.tsx │ │ │ ├── TeamGroupSync.tsx │ │ │ ├── TeamList.test.tsx │ │ │ ├── TeamList.tsx │ │ │ ├── TeamPages.test.tsx │ │ │ ├── TeamPages.tsx │ │ │ ├── TeamPermissions.tsx │ │ │ ├── TeamSettings.test.tsx │ │ │ ├── TeamSettings.tsx │ │ │ ├── __mocks__ │ │ │ │ ├── navModelMock.ts │ │ │ │ └── teamMocks.ts │ │ │ └── state │ │ │ │ ├── actions.ts │ │ │ │ ├── navModel.ts │ │ │ │ ├── reducers.test.ts │ │ │ │ ├── reducers.ts │ │ │ │ ├── selectors.test.ts │ │ │ │ └── selectors.ts │ │ ├── templating │ │ │ ├── LegacyVariableWrapper.ts │ │ │ ├── dataMacros.test.ts │ │ │ ├── dataMacros.ts │ │ │ ├── fieldAccessorCache.ts │ │ │ ├── formatVariableValue.test.ts │ │ │ ├── formatVariableValue.ts │ │ │ ├── macroRegistry.test.ts │ │ │ ├── macroRegistry.ts │ │ │ ├── templateProxies.test.ts │ │ │ ├── templateProxies.ts │ │ │ ├── template_srv.mock.ts │ │ │ ├── template_srv.test.ts │ │ │ ├── template_srv.ts │ │ │ └── types.ts │ │ ├── trails │ │ │ ├── ActionTabs │ │ │ │ ├── AddToFiltersGraphAction.tsx │ │ │ │ ├── BreakdownScene.tsx │ │ │ │ ├── ByFrameRepeater.tsx │ │ │ │ ├── LayoutSwitcher.tsx │ │ │ │ ├── LogsScene.tsx │ │ │ │ ├── MetricOverviewScene.tsx │ │ │ │ ├── RelatedMetricsScene.tsx │ │ │ │ ├── panelConfigs.ts │ │ │ │ ├── types.ts │ │ │ │ ├── utils.ts │ │ │ │ └── yAxisSyncBehavior.ts │ │ │ ├── AutomaticMetricQueries │ │ │ │ ├── AutoQueryEngine.test.ts │ │ │ │ ├── AutoQueryEngine.ts │ │ │ │ ├── AutoVizPanel.tsx │ │ │ │ ├── graph-builders │ │ │ │ │ ├── heatmap.ts │ │ │ │ │ ├── percentiles.ts │ │ │ │ │ ├── simple.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── query-generators │ │ │ │ │ ├── common │ │ │ │ │ │ ├── generator.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── queries.test.ts │ │ │ │ │ │ ├── queries.ts │ │ │ │ │ │ ├── rules.ts │ │ │ │ │ │ └── types.ts │ │ │ │ │ ├── histogram.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── summary.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── types.ts │ │ │ │ └── units.ts │ │ │ ├── BreakdownLabelSelector.tsx │ │ │ ├── DataTrail.test.tsx │ │ │ ├── DataTrail.tsx │ │ │ ├── DataTrailCard.tsx │ │ │ ├── DataTrailSettings.tsx │ │ │ ├── DataTrailsApp.tsx │ │ │ ├── DataTrailsHistory.tsx │ │ │ ├── DataTrailsHome.tsx │ │ │ ├── DataTrailsPage.tsx │ │ │ ├── Integrations │ │ │ │ ├── DataTrailEmbedded.tsx │ │ │ │ ├── SceneDrawer.tsx │ │ │ │ ├── dashboardIntegration.ts │ │ │ │ ├── getQueryMetrics.ts │ │ │ │ └── utils.ts │ │ │ ├── MetricCategory │ │ │ │ ├── MetricCategoryCascader.tsx │ │ │ │ └── useMetricCategories.ts │ │ │ ├── MetricGraphScene.tsx │ │ │ ├── MetricScene.tsx │ │ │ ├── MetricSelect │ │ │ │ ├── MetricSelectScene.tsx │ │ │ │ ├── SelectMetricAction.tsx │ │ │ │ ├── hideEmptyPreviews.ts │ │ │ │ ├── previewPanel.test.ts │ │ │ │ ├── previewPanel.ts │ │ │ │ └── relatedMetrics.ts │ │ │ ├── MetricsHeader.tsx │ │ │ ├── ShareTrailButton.tsx │ │ │ ├── StatusWrapper.tsx │ │ │ ├── TrailStore │ │ │ │ ├── TrailStore.test.ts │ │ │ │ ├── TrailStore.ts │ │ │ │ ├── useBookmarkState.ts │ │ │ │ └── utils.tsx │ │ │ ├── helpers │ │ │ │ └── MetricDatasourceHelper.ts │ │ │ ├── interactions.ts │ │ │ ├── shared.ts │ │ │ └── utils.ts │ │ ├── transformers │ │ │ ├── FilterByValueTransformer │ │ │ │ ├── FilterByValueFilterEditor.tsx │ │ │ │ ├── FilterByValueTransformerEditor.test.tsx │ │ │ │ ├── FilterByValueTransformerEditor.tsx │ │ │ │ └── ValueMatchers │ │ │ │ │ ├── BasicMatcherEditor.tsx │ │ │ │ │ ├── NoopMatcherEditor.tsx │ │ │ │ │ ├── RangeMatcherEditor.tsx │ │ │ │ │ ├── RegexMatcherEditor.tsx │ │ │ │ │ ├── types.ts │ │ │ │ │ ├── utils.ts │ │ │ │ │ └── valueMatchersUI.ts │ │ │ ├── calculateHeatmap │ │ │ │ ├── HeatmapTransformerEditor.tsx │ │ │ │ ├── editor │ │ │ │ │ ├── AxisEditor.tsx │ │ │ │ │ └── helper.ts │ │ │ │ ├── heatmap.test.ts │ │ │ │ ├── heatmap.ts │ │ │ │ └── utils.ts │ │ │ ├── configFromQuery │ │ │ │ ├── ConfigFromQueryTransformerEditor.test.tsx │ │ │ │ ├── ConfigFromQueryTransformerEditor.tsx │ │ │ │ ├── configFromQuery.test.ts │ │ │ │ └── configFromQuery.ts │ │ │ ├── docs │ │ │ │ ├── content.ts │ │ │ │ └── getTransformationContent.ts │ │ │ ├── editors │ │ │ │ ├── CalculateFieldTransformerEditor │ │ │ │ │ ├── BinaryOperationOptionsEditor.tsx │ │ │ │ │ ├── CalculateFieldTransformerEditor.tsx │ │ │ │ │ ├── CumulativeOptionsEditor.tsx │ │ │ │ │ ├── IndexOptionsEditor.tsx │ │ │ │ │ ├── ReduceRowOptionsEditor.tsx │ │ │ │ │ ├── UnaryOperationEditor.tsx │ │ │ │ │ ├── WindowOptionsEditor.tsx │ │ │ │ │ ├── constants.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── ConcatenateTransformerEditor.tsx │ │ │ │ ├── ConvertFieldTypeTransformerEditor.tsx │ │ │ │ ├── EnumMappingEditor.tsx │ │ │ │ ├── EnumMappingRow.tsx │ │ │ │ ├── FilterByNameTransformerEditor.tsx │ │ │ │ ├── FilterByRefIdTransformerEditor.tsx │ │ │ │ ├── FormatStringTransformerEditor.tsx │ │ │ │ ├── FormatTimeTransformerEditor.tsx │ │ │ │ ├── GroupByTransformerEditor.tsx │ │ │ │ ├── GroupToNestedTableTransformerEditor.tsx │ │ │ │ ├── GroupingToMatrixTransformerEditor.tsx │ │ │ │ ├── HistogramTransformerEditor.tsx │ │ │ │ ├── JoinByFieldTransformerEditor.tsx │ │ │ │ ├── LabelsToFieldsTransformerEditor.tsx │ │ │ │ ├── LimitTransformerEditor.tsx │ │ │ │ ├── MergeTransformerEditor.tsx │ │ │ │ ├── OrganizeFieldsTransformerEditor.tsx │ │ │ │ ├── ReduceTransformerEditor.tsx │ │ │ │ ├── RenameByRegexTransformer.tsx │ │ │ │ ├── SeriesToRowsTransformerEditor.tsx │ │ │ │ └── SortByTransformerEditor.tsx │ │ │ ├── extractFields │ │ │ │ ├── ExtractFieldsTransformerEditor.tsx │ │ │ │ ├── components │ │ │ │ │ └── JSONPathEditor.tsx │ │ │ │ ├── extractFields.test.ts │ │ │ │ ├── extractFields.ts │ │ │ │ ├── fieldExtractor.test.ts │ │ │ │ ├── fieldExtractors.ts │ │ │ │ └── types.ts │ │ │ ├── fieldToConfigMapping │ │ │ │ ├── FieldConfigMappingHandlerArgumentsEditor.test.tsx │ │ │ │ ├── FieldConfigMappingHandlerArgumentsEditor.tsx │ │ │ │ ├── FieldToConfigMappingEditor.test.tsx │ │ │ │ ├── FieldToConfigMappingEditor.tsx │ │ │ │ └── fieldToConfigMapping.ts │ │ │ ├── joinByLabels │ │ │ │ ├── JoinByLabelsTransformerEditor.tsx │ │ │ │ ├── joinByLabels.test.ts │ │ │ │ └── joinByLabels.ts │ │ │ ├── lookupGazetteer │ │ │ │ ├── FieldLookupTransformerEditor.tsx │ │ │ │ ├── fieldLookup.test.ts │ │ │ │ └── fieldLookup.ts │ │ │ ├── partitionByValues │ │ │ │ ├── PartitionByValuesEditor.tsx │ │ │ │ ├── partition.ts │ │ │ │ ├── partitionByValues.test.ts │ │ │ │ └── partitionByValues.ts │ │ │ ├── prepareTimeSeries │ │ │ │ ├── PrepareTimeSeriesEditor.tsx │ │ │ │ ├── __snapshots__ │ │ │ │ │ └── prepareTimeSeries.test.ts.snap │ │ │ │ ├── prepareTimeSeries.test.ts │ │ │ │ └── prepareTimeSeries.ts │ │ │ ├── regression │ │ │ │ ├── regression.test.ts │ │ │ │ ├── regression.ts │ │ │ │ ├── regressionEditor.test.tsx │ │ │ │ └── regressionEditor.tsx │ │ │ ├── rowsToFields │ │ │ │ ├── RowsToFieldsTransformerEditor.test.tsx │ │ │ │ ├── RowsToFieldsTransformerEditor.tsx │ │ │ │ ├── rowsToFields.test.ts │ │ │ │ └── rowsToFields.ts │ │ │ ├── spatial │ │ │ │ ├── SpatialTransformerEditor.tsx │ │ │ │ ├── models.gen.ts │ │ │ │ ├── optionsHelper.tsx │ │ │ │ ├── spatialTransformer.test.ts │ │ │ │ ├── spatialTransformer.ts │ │ │ │ └── utils.ts │ │ │ ├── standardTransformers.ts │ │ │ ├── suggestionsInput │ │ │ │ └── SuggestionsInput.tsx │ │ │ ├── timeSeriesTable │ │ │ │ ├── TimeSeriesTableTransformEditor.tsx │ │ │ │ ├── timeSeriesTableTransformer.test.ts │ │ │ │ └── timeSeriesTableTransformer.ts │ │ │ ├── utils.test.ts │ │ │ └── utils.ts │ │ ├── trash-section │ │ │ └── TrashPage.tsx │ │ ├── users │ │ │ ├── TokenRevokedModal.tsx │ │ │ ├── UsersActionBar.test.tsx │ │ │ ├── UsersActionBar.tsx │ │ │ ├── UsersListPage.test.tsx │ │ │ ├── UsersListPage.tsx │ │ │ ├── __mocks__ │ │ │ │ └── userMocks.ts │ │ │ └── state │ │ │ │ ├── actions.ts │ │ │ │ ├── reducers.test.ts │ │ │ │ ├── reducers.ts │ │ │ │ └── selectors.ts │ │ ├── variables │ │ │ ├── adapters.ts │ │ │ ├── adhoc │ │ │ │ ├── AdHocVariableEditor.tsx │ │ │ │ ├── actions.test.ts │ │ │ │ ├── actions.ts │ │ │ │ ├── adapter.ts │ │ │ │ ├── picker │ │ │ │ │ ├── AdHocFilter.test.tsx │ │ │ │ │ ├── AdHocFilter.tsx │ │ │ │ │ ├── AdHocFilterBuilder.tsx │ │ │ │ │ ├── AdHocFilterKey.tsx │ │ │ │ │ ├── AdHocFilterRenderer.tsx │ │ │ │ │ ├── AdHocFilterValue.tsx │ │ │ │ │ ├── AdHocPicker.tsx │ │ │ │ │ ├── ConditionSegment.tsx │ │ │ │ │ └── OperatorSegment.tsx │ │ │ │ ├── reducer.test.ts │ │ │ │ ├── reducer.ts │ │ │ │ ├── urlParser.test.ts │ │ │ │ └── urlParser.ts │ │ │ ├── constant │ │ │ │ ├── ConstantVariableEditor.tsx │ │ │ │ ├── actions.test.ts │ │ │ │ ├── actions.ts │ │ │ │ ├── adapter.ts │ │ │ │ ├── reducer.test.ts │ │ │ │ └── reducer.ts │ │ │ ├── constants.ts │ │ │ ├── custom │ │ │ │ ├── CustomVariableEditor.tsx │ │ │ │ ├── actions.test.ts │ │ │ │ ├── actions.ts │ │ │ │ ├── adapter.ts │ │ │ │ ├── reducer.test.ts │ │ │ │ └── reducer.ts │ │ │ ├── datasource │ │ │ │ ├── DataSourceVariableEditor.test.tsx │ │ │ │ ├── DataSourceVariableEditor.tsx │ │ │ │ ├── actions.test.ts │ │ │ │ ├── actions.ts │ │ │ │ ├── adapter.ts │ │ │ │ ├── reducer.test.ts │ │ │ │ └── reducer.ts │ │ │ ├── editor │ │ │ │ ├── ConfirmDeleteModal.tsx │ │ │ │ ├── LegacyVariableQueryEditor.tsx │ │ │ │ ├── SelectionOptionsEditor.tsx │ │ │ │ ├── VariableEditorContainer.tsx │ │ │ │ ├── VariableEditorEditor.tsx │ │ │ │ ├── VariableEditorList.tsx │ │ │ │ ├── VariableEditorListRow.tsx │ │ │ │ ├── VariableTypeSelect.tsx │ │ │ │ ├── actions.test.ts │ │ │ │ ├── actions.ts │ │ │ │ ├── getVariableQueryEditor.test.tsx │ │ │ │ ├── getVariableQueryEditor.tsx │ │ │ │ ├── reducer.test.ts │ │ │ │ ├── reducer.ts │ │ │ │ ├── selectors.test.ts │ │ │ │ ├── selectors.ts │ │ │ │ └── types.ts │ │ │ ├── getAllVariableValuesForUrl.test.ts │ │ │ ├── getAllVariableValuesForUrl.ts │ │ │ ├── guard.test.ts │ │ │ ├── guard.ts │ │ │ ├── inspect │ │ │ │ ├── NetworkGraph.tsx │ │ │ │ ├── NetworkGraphModal.tsx │ │ │ │ ├── VariableUsagesButton.tsx │ │ │ │ ├── VariablesDependenciesButton.tsx │ │ │ │ ├── VariablesUnknownButton.tsx │ │ │ │ ├── VariablesUnknownTable.test.tsx │ │ │ │ ├── VariablesUnknownTable.tsx │ │ │ │ ├── reducer.test.ts │ │ │ │ ├── reducer.ts │ │ │ │ ├── utils.test.ts │ │ │ │ └── utils.ts │ │ │ ├── interval │ │ │ │ ├── IntervalVariableEditor.tsx │ │ │ │ ├── actions.test.ts │ │ │ │ ├── actions.ts │ │ │ │ ├── adapter.ts │ │ │ │ ├── reducer.test.ts │ │ │ │ └── reducer.ts │ │ │ ├── pickers │ │ │ │ ├── OptionsPicker │ │ │ │ │ ├── OptionPicker.test.tsx │ │ │ │ │ ├── OptionsPicker.tsx │ │ │ │ │ ├── actions.test.ts │ │ │ │ │ ├── actions.ts │ │ │ │ │ ├── reducer.test.ts │ │ │ │ │ └── reducer.ts │ │ │ │ ├── PickerRenderer.tsx │ │ │ │ ├── index.ts │ │ │ │ ├── shared │ │ │ │ │ ├── VariableInput.tsx │ │ │ │ │ ├── VariableLink.tsx │ │ │ │ │ └── VariableOptions.tsx │ │ │ │ └── types.ts │ │ │ ├── query │ │ │ │ ├── QueryVariableEditor.test.tsx │ │ │ │ ├── QueryVariableEditor.tsx │ │ │ │ ├── QueryVariableRefreshSelect.tsx │ │ │ │ ├── QueryVariableSortSelect.tsx │ │ │ │ ├── VariableQueryRunner.test.ts │ │ │ │ ├── VariableQueryRunner.ts │ │ │ │ ├── actions.test.tsx │ │ │ │ ├── actions.ts │ │ │ │ ├── adapter.ts │ │ │ │ ├── operators.test.ts │ │ │ │ ├── operators.ts │ │ │ │ ├── queryRunners.test.ts │ │ │ │ ├── queryRunners.ts │ │ │ │ ├── reducer.test.ts │ │ │ │ ├── reducer.ts │ │ │ │ ├── variableQueryObserver.test.ts │ │ │ │ └── variableQueryObserver.ts │ │ │ ├── shared │ │ │ │ ├── formatVariable.ts │ │ │ │ ├── multiOptions.test.ts │ │ │ │ ├── multiOptions.ts │ │ │ │ └── testing │ │ │ │ │ ├── adHocVariableBuilder.ts │ │ │ │ │ ├── builders.ts │ │ │ │ │ ├── datasourceVariableBuilder.ts │ │ │ │ │ ├── helpers.ts │ │ │ │ │ ├── intervalVariableBuilder.ts │ │ │ │ │ ├── multiVariableBuilder.ts │ │ │ │ │ ├── optionsVariableBuilder.ts │ │ │ │ │ ├── queryVariableBuilder.ts │ │ │ │ │ ├── textboxVariableBuilder.ts │ │ │ │ │ └── variableBuilder.ts │ │ │ ├── state │ │ │ │ ├── __tests__ │ │ │ │ │ └── fixtures.ts │ │ │ │ ├── actions.test.ts │ │ │ │ ├── actions.ts │ │ │ │ ├── helpers.ts │ │ │ │ ├── initVariableTransaction.test.ts │ │ │ │ ├── keyedVariablesReducer.test.ts │ │ │ │ ├── keyedVariablesReducer.ts │ │ │ │ ├── migrateVariablesDatasourceNameToRef.test.ts │ │ │ │ ├── onTimeRangeUpdated.test.ts │ │ │ │ ├── processVariable.test.ts │ │ │ │ ├── reducers.test.ts │ │ │ │ ├── reducers.ts │ │ │ │ ├── selectors.ts │ │ │ │ ├── setOptionFromUrl.test.ts │ │ │ │ ├── sharedReducer.test.ts │ │ │ │ ├── sharedReducer.ts │ │ │ │ ├── templateVarsChangedInUrl.test.ts │ │ │ │ ├── transactionReducer.test.ts │ │ │ │ ├── transactionReducer.ts │ │ │ │ ├── types.ts │ │ │ │ ├── upgradeLegacyQueries.test.ts │ │ │ │ └── variablesReducer.ts │ │ │ ├── system │ │ │ │ └── adapter.ts │ │ │ ├── textbox │ │ │ │ ├── TextBoxVariableEditor.tsx │ │ │ │ ├── TextBoxVariablePicker.tsx │ │ │ │ ├── actions.test.ts │ │ │ │ ├── actions.ts │ │ │ │ ├── adapter.test.ts │ │ │ │ ├── adapter.ts │ │ │ │ ├── reducer.test.ts │ │ │ │ └── reducer.ts │ │ │ ├── types.ts │ │ │ ├── utils.test.ts │ │ │ └── utils.ts │ │ └── visualization │ │ │ └── data-hover │ │ │ ├── ComplexDataHoverView.tsx │ │ │ ├── DataHoverRow.tsx │ │ │ ├── DataHoverRows.tsx │ │ │ ├── DataHoverTabs.tsx │ │ │ ├── DataHoverView.test.tsx │ │ │ ├── DataHoverView.tsx │ │ │ └── ExemplarHoverView.tsx │ ├── index.ts │ ├── partials │ │ ├── confirm_modal.html │ │ ├── modal.html │ │ ├── reset_password.html │ │ └── signup_invited.html │ ├── plugins │ │ ├── datasource │ │ │ ├── alertmanager │ │ │ │ ├── ConfigEditor.tsx │ │ │ │ ├── DataSource.ts │ │ │ │ ├── consts.ts │ │ │ │ ├── img │ │ │ │ │ └── logo.svg │ │ │ │ ├── module.ts │ │ │ │ ├── plugin.json │ │ │ │ └── types.ts │ │ │ ├── azuremonitor │ │ │ │ ├── CHANGELOG.md │ │ │ │ ├── README.md │ │ │ │ ├── __mocks__ │ │ │ │ │ ├── argResourcePickerResponse.ts │ │ │ │ │ ├── datasource.ts │ │ │ │ │ ├── errors.ts │ │ │ │ │ ├── instanceSettings.ts │ │ │ │ │ ├── panelData.ts │ │ │ │ │ ├── query.ts │ │ │ │ │ ├── resourcePickerRows.ts │ │ │ │ │ ├── utils.ts │ │ │ │ │ └── variables.ts │ │ │ │ ├── azureMetadata │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── logsResourceTypes.ts │ │ │ │ │ └── resourceTypes.ts │ │ │ │ ├── azure_log_analytics │ │ │ │ │ ├── __mocks__ │ │ │ │ │ │ └── schema.ts │ │ │ │ │ ├── azure_log_analytics_datasource.test.ts │ │ │ │ │ ├── azure_log_analytics_datasource.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── azure_monitor │ │ │ │ │ ├── azure_monitor_datasource.test.ts │ │ │ │ │ ├── azure_monitor_datasource.ts │ │ │ │ │ ├── response_parser.ts │ │ │ │ │ ├── url_builder.test.ts │ │ │ │ │ └── url_builder.ts │ │ │ │ ├── azure_resource_graph │ │ │ │ │ ├── azure_resource_graph_datasource.test.ts │ │ │ │ │ └── azure_resource_graph_datasource.ts │ │ │ │ ├── components │ │ │ │ │ ├── ArgQueryEditor │ │ │ │ │ │ ├── ArgQueryEditor.test.tsx │ │ │ │ │ │ ├── ArgQueryEditor.tsx │ │ │ │ │ │ ├── QueryField.tsx │ │ │ │ │ │ ├── SubscriptionField.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── ConfigEditor │ │ │ │ │ │ ├── AppRegistrationCredentials.tsx │ │ │ │ │ │ ├── AzureCredentialsForm.test.tsx │ │ │ │ │ │ ├── AzureCredentialsForm.tsx │ │ │ │ │ │ ├── BasicLogsToggle.test.tsx │ │ │ │ │ │ ├── BasicLogsToggle.tsx │ │ │ │ │ │ ├── ConfigEditor.test.tsx │ │ │ │ │ │ ├── ConfigEditor.tsx │ │ │ │ │ │ ├── CurrentUserFallbackCredentials.test.tsx │ │ │ │ │ │ ├── CurrentUserFallbackCredentials.tsx │ │ │ │ │ │ ├── DefaultSubscription.test.tsx │ │ │ │ │ │ ├── DefaultSubscription.tsx │ │ │ │ │ │ └── MonitorConfig.tsx │ │ │ │ │ ├── LogsQueryEditor │ │ │ │ │ │ ├── AdvancedResourcePicker.test.tsx │ │ │ │ │ │ ├── AdvancedResourcePicker.tsx │ │ │ │ │ │ ├── AzureCheatSheet.tsx │ │ │ │ │ │ ├── AzureCheatSheetModal.tsx │ │ │ │ │ │ ├── LogsManagement.test.tsx │ │ │ │ │ │ ├── LogsManagement.tsx │ │ │ │ │ │ ├── LogsQueryEditor.test.tsx │ │ │ │ │ │ ├── LogsQueryEditor.tsx │ │ │ │ │ │ ├── QueryField.tsx │ │ │ │ │ │ ├── RawQuery.tsx │ │ │ │ │ │ ├── TimeManagement.test.tsx │ │ │ │ │ │ ├── TimeManagement.tsx │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ ├── setQueryValue.ts │ │ │ │ │ │ ├── syntax.ts │ │ │ │ │ │ ├── useMigrations.ts │ │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── MetricsQueryEditor │ │ │ │ │ │ ├── AdvancedResourcePicker.test.tsx │ │ │ │ │ │ ├── AdvancedResourcePicker.tsx │ │ │ │ │ │ ├── AggregationField.test.tsx │ │ │ │ │ │ ├── AggregationField.tsx │ │ │ │ │ │ ├── DimensionFields.test.tsx │ │ │ │ │ │ ├── DimensionFields.tsx │ │ │ │ │ │ ├── LegendFormatField.tsx │ │ │ │ │ │ ├── MetricNameField.test.tsx │ │ │ │ │ │ ├── MetricNameField.tsx │ │ │ │ │ │ ├── MetricNamespaceField.test.tsx │ │ │ │ │ │ ├── MetricNamespaceField.tsx │ │ │ │ │ │ ├── MetricsQueryEditor.test.tsx │ │ │ │ │ │ ├── MetricsQueryEditor.tsx │ │ │ │ │ │ ├── TimeGrainField.test.tsx │ │ │ │ │ │ ├── TimeGrainField.tsx │ │ │ │ │ │ ├── TopField.tsx │ │ │ │ │ │ ├── dataHooks.test.ts │ │ │ │ │ │ ├── dataHooks.ts │ │ │ │ │ │ ├── setQueryValue.test.ts │ │ │ │ │ │ └── setQueryValue.ts │ │ │ │ │ ├── QueryEditor │ │ │ │ │ │ ├── QueryEditor.test.tsx │ │ │ │ │ │ ├── QueryEditor.tsx │ │ │ │ │ │ ├── QueryHeader.tsx │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ └── usePreparedQuery.ts │ │ │ │ │ ├── ResourceField │ │ │ │ │ │ ├── ResourceField.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── ResourcePicker │ │ │ │ │ │ ├── AdvancedMulti.test.tsx │ │ │ │ │ │ ├── AdvancedMulti.tsx │ │ │ │ │ │ ├── EntryIcon.tsx │ │ │ │ │ │ ├── NestedEntry.test.tsx │ │ │ │ │ │ ├── NestedEntry.tsx │ │ │ │ │ │ ├── NestedRow.test.tsx │ │ │ │ │ │ ├── NestedRow.tsx │ │ │ │ │ │ ├── ResourcePicker.test.tsx │ │ │ │ │ │ ├── ResourcePicker.tsx │ │ │ │ │ │ ├── Search.tsx │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ ├── styles.ts │ │ │ │ │ │ ├── types.ts │ │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── TracesQueryEditor │ │ │ │ │ │ ├── Filter.tsx │ │ │ │ │ │ ├── Filters.test.tsx │ │ │ │ │ │ ├── Filters.tsx │ │ │ │ │ │ ├── TraceTypeField.test.tsx │ │ │ │ │ │ ├── TraceTypeField.tsx │ │ │ │ │ │ ├── TracesQueryEditor.test.tsx │ │ │ │ │ │ ├── TracesQueryEditor.tsx │ │ │ │ │ │ ├── consts.ts │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ └── setQueryValue.ts │ │ │ │ │ ├── VariableEditor │ │ │ │ │ │ ├── GrafanaTemplateVariableFn.tsx │ │ │ │ │ │ ├── VariableEditor.test.tsx │ │ │ │ │ │ └── VariableEditor.tsx │ │ │ │ │ └── shared │ │ │ │ │ │ ├── Field.tsx │ │ │ │ │ │ ├── FormatAsField.test.tsx │ │ │ │ │ │ └── FormatAsField.tsx │ │ │ │ ├── credentials.ts │ │ │ │ ├── dashboards │ │ │ │ │ ├── adx.json │ │ │ │ │ ├── appInsights.json │ │ │ │ │ ├── appInsightsFailureDependencies.json │ │ │ │ │ ├── appInsightsFailureExceptions.json │ │ │ │ │ ├── appInsightsFailureOperations.json │ │ │ │ │ ├── appInsightsGeoMap.json │ │ │ │ │ ├── appInsightsPerfDependencies.json │ │ │ │ │ ├── appInsightsPerfOperations.json │ │ │ │ │ ├── arg.json │ │ │ │ │ ├── containerInsightsSyslog.json │ │ │ │ │ ├── cosmosdb.json │ │ │ │ │ ├── infrastructureMonitoring.json │ │ │ │ │ ├── keyvault.json │ │ │ │ │ ├── networkInsightsDashboard.json │ │ │ │ │ ├── postgresFlexibleServer.json │ │ │ │ │ ├── sqldb.json │ │ │ │ │ ├── storage.json │ │ │ │ │ ├── v1Alerts.json │ │ │ │ │ ├── vMInsightsRG.json │ │ │ │ │ └── vMInsightsWorkspace.json │ │ │ │ ├── dataquery.cue │ │ │ │ ├── dataquery.gen.ts │ │ │ │ ├── datasource.test.ts │ │ │ │ ├── datasource.ts │ │ │ │ ├── e2e │ │ │ │ │ └── selectors.ts │ │ │ │ ├── grafanaTemplateVariableFns.ts │ │ │ │ ├── grafanaTemplateVariables.test.ts │ │ │ │ ├── img │ │ │ │ │ ├── azure_monitor_cpu.png │ │ │ │ │ ├── azure_monitor_network.png │ │ │ │ │ ├── config_1_select_type.png │ │ │ │ │ ├── config_2_azure_monitor_api_details.png │ │ │ │ │ ├── config_3_app_insights_api_details.png │ │ │ │ │ ├── config_4_save_and_test.png │ │ │ │ │ ├── contoso_loans_grafana_dashboard.png │ │ │ │ │ ├── grafana_cloud_install.png │ │ │ │ │ ├── grafana_cloud_login.png │ │ │ │ │ └── logo.jpg │ │ │ │ ├── module.test.ts │ │ │ │ ├── module.ts │ │ │ │ ├── package.json │ │ │ │ ├── plugin.json │ │ │ │ ├── query_help.md │ │ │ │ ├── resourcePicker │ │ │ │ │ ├── resourcePickerData.test.ts │ │ │ │ │ └── resourcePickerData.ts │ │ │ │ ├── time_grain_converter.test.ts │ │ │ │ ├── time_grain_converter.ts │ │ │ │ ├── tracking.ts │ │ │ │ ├── tsconfig.json │ │ │ │ ├── types │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── logAnalyticsMetadata.ts │ │ │ │ │ ├── query.ts │ │ │ │ │ ├── templateVariables.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── utils │ │ │ │ │ ├── common.test.ts │ │ │ │ │ ├── common.ts │ │ │ │ │ ├── messageFromError.test.ts │ │ │ │ │ ├── messageFromError.ts │ │ │ │ │ ├── migrateAnnotation.test.ts │ │ │ │ │ ├── migrateAnnotation.ts │ │ │ │ │ ├── migrateQuery.test.ts │ │ │ │ │ ├── migrateQuery.ts │ │ │ │ │ ├── testUtils.ts │ │ │ │ │ ├── useAsyncState.test.ts │ │ │ │ │ ├── useAsyncState.ts │ │ │ │ │ ├── useLastError.test.ts │ │ │ │ │ └── useLastError.ts │ │ │ │ ├── variables.test.ts │ │ │ │ ├── variables.ts │ │ │ │ └── webpack.config.ts │ │ │ ├── cloud-monitoring │ │ │ │ ├── .eslintignore │ │ │ │ ├── CHANGELOG.md │ │ │ │ ├── CloudMonitoringMetricFindQuery.ts │ │ │ │ ├── README.md │ │ │ │ ├── __mocks__ │ │ │ │ │ ├── cloudMonitoringDatasource.ts │ │ │ │ │ ├── cloudMonitoringInstanceSettings.ts │ │ │ │ │ ├── cloudMonitoringMetricDescriptor.ts │ │ │ │ │ └── cloudMonitoringQuery.ts │ │ │ │ ├── annotationSupport.test.ts │ │ │ │ ├── annotationSupport.ts │ │ │ │ ├── components │ │ │ │ │ ├── Aggregation.test.tsx │ │ │ │ │ ├── Aggregation.tsx │ │ │ │ │ ├── AliasBy.tsx │ │ │ │ │ ├── Alignment.test.tsx │ │ │ │ │ ├── Alignment.tsx │ │ │ │ │ ├── AlignmentFunction.tsx │ │ │ │ │ ├── AnnotationQueryEditor.test.tsx │ │ │ │ │ ├── AnnotationQueryEditor.tsx │ │ │ │ │ ├── AnnotationsHelp.tsx │ │ │ │ │ ├── CloudMonitoringCheatSheet.tsx │ │ │ │ │ ├── ConfigEditor │ │ │ │ │ │ └── ConfigEditor.tsx │ │ │ │ │ ├── Fields.tsx │ │ │ │ │ ├── GraphPeriod.test.tsx │ │ │ │ │ ├── GraphPeriod.tsx │ │ │ │ │ ├── GroupBy.test.tsx │ │ │ │ │ ├── GroupBy.tsx │ │ │ │ │ ├── LabelFilter.test.tsx │ │ │ │ │ ├── LabelFilter.tsx │ │ │ │ │ ├── LookbackPeriodSelect.tsx │ │ │ │ │ ├── MQLQueryEditor.tsx │ │ │ │ │ ├── MetricQueryEditor.test.tsx │ │ │ │ │ ├── MetricQueryEditor.tsx │ │ │ │ │ ├── PeriodSelect.tsx │ │ │ │ │ ├── Preprocessor.test.tsx │ │ │ │ │ ├── Preprocessor.tsx │ │ │ │ │ ├── Project.tsx │ │ │ │ │ ├── PromQLEditor.tsx │ │ │ │ │ ├── QueryEditor.test.tsx │ │ │ │ │ ├── QueryEditor.tsx │ │ │ │ │ ├── QueryHeader.test.tsx │ │ │ │ │ ├── QueryHeader.tsx │ │ │ │ │ ├── SLO.tsx │ │ │ │ │ ├── SLOQueryEditor.tsx │ │ │ │ │ ├── Selector.tsx │ │ │ │ │ ├── Service.tsx │ │ │ │ │ ├── VariableQueryEditor.test.tsx │ │ │ │ │ ├── VariableQueryEditor.tsx │ │ │ │ │ ├── VisualMetricQueryEditor.test.tsx │ │ │ │ │ ├── VisualMetricQueryEditor.tsx │ │ │ │ │ ├── __snapshots__ │ │ │ │ │ │ └── VariableQueryEditor.test.tsx.snap │ │ │ │ │ └── index.ts │ │ │ │ ├── constants.ts │ │ │ │ ├── dashboards │ │ │ │ │ ├── cloud-storage-monitoring.json │ │ │ │ │ ├── cloudfunctions-monitoring.json │ │ │ │ │ ├── cloudsql-monitoring.json │ │ │ │ │ ├── cloudsql-mysql-monitoring.json │ │ │ │ │ ├── cloudsql-postgre-monitoring.json │ │ │ │ │ ├── cloudtasks-monitoring.json │ │ │ │ │ ├── dataprocessing-monitoring.json │ │ │ │ │ ├── firewall-insight-monitoring.json │ │ │ │ │ ├── gce-network-monitoring.json │ │ │ │ │ ├── gce-vm-instance-monitoring.json │ │ │ │ │ ├── gke-prometheus-pod-node-monitoring.json │ │ │ │ │ ├── https-lb-backend-services-monitoring.json │ │ │ │ │ ├── https-loadbalancer-monitoring.json │ │ │ │ │ ├── micro-service-monitoring.json │ │ │ │ │ └── network-tcp-loadbalancer-monitoring.json │ │ │ │ ├── dataquery.cue │ │ │ │ ├── dataquery.gen.ts │ │ │ │ ├── datasource.test.ts │ │ │ │ ├── datasource.ts │ │ │ │ ├── e2e │ │ │ │ │ └── selectors.ts │ │ │ │ ├── functions.test.ts │ │ │ │ ├── functions.ts │ │ │ │ ├── img │ │ │ │ │ └── cloud_monitoring_logo.svg │ │ │ │ ├── module.ts │ │ │ │ ├── package.json │ │ │ │ ├── plugin.json │ │ │ │ ├── specs │ │ │ │ │ ├── datasource.test.ts │ │ │ │ │ └── testData.ts │ │ │ │ ├── tracking.ts │ │ │ │ ├── tsconfig.json │ │ │ │ ├── types │ │ │ │ │ ├── query.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── variables.ts │ │ │ │ └── webpack.config.ts │ │ │ ├── cloudwatch │ │ │ │ ├── README.md │ │ │ │ ├── __mocks__ │ │ │ │ │ ├── AnnotationQueryRunner.ts │ │ │ │ │ ├── CloudWatchDataSource.ts │ │ │ │ │ ├── CloudWatchVariables.ts │ │ │ │ │ ├── LogsQueryRunner.ts │ │ │ │ │ ├── MetricsQueryRunner.ts │ │ │ │ │ ├── Request.ts │ │ │ │ │ ├── ResourcesAPI.ts │ │ │ │ │ ├── cloudwatch-logs-test-data │ │ │ │ │ │ ├── commentOnlyQuery.ts │ │ │ │ │ │ ├── empty.ts │ │ │ │ │ │ ├── filterQuery.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── multiLineFullQuery.ts │ │ │ │ │ │ ├── newCommandQuery.ts │ │ │ │ │ │ ├── singleLineFullQuery.ts │ │ │ │ │ │ ├── sortQuery.ts │ │ │ │ │ │ └── whitespaceQuery.ts │ │ │ │ │ ├── cloudwatch-sql-test-data │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── multiLineFullQuery.ts │ │ │ │ │ │ ├── multiLineIncompleteQueryWithoutNamespace.ts │ │ │ │ │ │ ├── singleLineEmptyQuery.ts │ │ │ │ │ │ ├── singleLineFullQuery.ts │ │ │ │ │ │ └── singleLineTwoQueries.ts │ │ │ │ │ ├── dashboardOnLoadedEvent.ts │ │ │ │ │ ├── dynamic-label-test-data │ │ │ │ │ │ ├── afterLabelValue.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── insideLabelValue.ts │ │ │ │ │ ├── logsTestContext.ts │ │ │ │ │ ├── metric-math-test-data │ │ │ │ │ │ ├── afterFunctionQuery.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── secondArgAfterSearchQuery.ts │ │ │ │ │ │ ├── secondArgQuery.ts │ │ │ │ │ │ ├── singleLineEmptyQuery.ts │ │ │ │ │ │ ├── thirdArgAfterSearchQuery.ts │ │ │ │ │ │ └── withinStringQuery.ts │ │ │ │ │ ├── monarch │ │ │ │ │ │ ├── Monaco.ts │ │ │ │ │ │ └── TextModel.ts │ │ │ │ │ ├── queries.ts │ │ │ │ │ ├── sqlUtils.ts │ │ │ │ │ └── timeRange.ts │ │ │ │ ├── annotationSupport.test.ts │ │ │ │ ├── annotationSupport.ts │ │ │ │ ├── aws_url.test.ts │ │ │ │ ├── aws_url.ts │ │ │ │ ├── components │ │ │ │ │ ├── AnnotationQueryEditor │ │ │ │ │ │ ├── AnnotationQueryEditor.test.tsx │ │ │ │ │ │ └── AnnotationQueryEditor.tsx │ │ │ │ │ ├── CheatSheet │ │ │ │ │ │ └── LogsCheatSheet.tsx │ │ │ │ │ ├── ConfigEditor │ │ │ │ │ │ ├── ConfigEditor.test.tsx │ │ │ │ │ │ ├── ConfigEditor.tsx │ │ │ │ │ │ ├── SecureSocksProxySettingsNewStyling.tsx │ │ │ │ │ │ └── XrayLinkConfig.tsx │ │ │ │ │ ├── Errors │ │ │ │ │ │ └── ThrottlingErrorMessage.tsx │ │ │ │ │ ├── MetaInspector │ │ │ │ │ │ └── MetaInspector.tsx │ │ │ │ │ ├── QueryEditor │ │ │ │ │ │ ├── LogsQueryEditor │ │ │ │ │ │ │ ├── CloudWatchLink.test.tsx │ │ │ │ │ │ │ ├── CloudWatchLink.tsx │ │ │ │ │ │ │ ├── LogsQueryEditor.tsx │ │ │ │ │ │ │ └── LogsQueryField.tsx │ │ │ │ │ │ ├── MetricsQueryEditor │ │ │ │ │ │ │ ├── DynamicLabelsField.tsx │ │ │ │ │ │ │ ├── MathExpressionQueryField.tsx │ │ │ │ │ │ │ ├── MetricsQueryEditor.test.tsx │ │ │ │ │ │ │ ├── MetricsQueryEditor.tsx │ │ │ │ │ │ │ ├── SQLBuilderEditor │ │ │ │ │ │ │ │ ├── SQLBuilderEditor.test.tsx │ │ │ │ │ │ │ │ ├── SQLBuilderEditor.tsx │ │ │ │ │ │ │ │ ├── SQLBuilderSelectRow.test.tsx │ │ │ │ │ │ │ │ ├── SQLBuilderSelectRow.tsx │ │ │ │ │ │ │ │ ├── SQLFilter.tsx │ │ │ │ │ │ │ │ ├── SQLGroupBy.test.tsx │ │ │ │ │ │ │ │ ├── SQLGroupBy.tsx │ │ │ │ │ │ │ │ ├── SQLOrderByGroup.tsx │ │ │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ │ │ └── SQLCodeEditor.tsx │ │ │ │ │ │ ├── QueryEditor.test.tsx │ │ │ │ │ │ ├── QueryEditor.tsx │ │ │ │ │ │ ├── QueryHeader.test.tsx │ │ │ │ │ │ └── QueryHeader.tsx │ │ │ │ │ ├── VariableQueryEditor │ │ │ │ │ │ ├── MultiFilter.test.tsx │ │ │ │ │ │ ├── MultiFilter.tsx │ │ │ │ │ │ ├── MultiFilterItem.tsx │ │ │ │ │ │ ├── VariableQueryEditor.test.tsx │ │ │ │ │ │ ├── VariableQueryEditor.tsx │ │ │ │ │ │ ├── VariableQueryField.tsx │ │ │ │ │ │ └── VariableTextField.tsx │ │ │ │ │ ├── shared │ │ │ │ │ │ ├── Account.test.tsx │ │ │ │ │ │ ├── Account.tsx │ │ │ │ │ │ ├── Dimensions │ │ │ │ │ │ │ ├── Dimensions.test.tsx │ │ │ │ │ │ │ ├── Dimensions.tsx │ │ │ │ │ │ │ ├── FilterItem.test.tsx │ │ │ │ │ │ │ └── FilterItem.tsx │ │ │ │ │ │ ├── LogGroups │ │ │ │ │ │ │ ├── LegacyLogGroupNamesSelection.tsx │ │ │ │ │ │ │ ├── LegacyLogGroupSelector.tsx │ │ │ │ │ │ │ ├── LogGroupsField.test.tsx │ │ │ │ │ │ │ ├── LogGroupsField.tsx │ │ │ │ │ │ │ ├── LogGroupsSelector.test.tsx │ │ │ │ │ │ │ ├── LogGroupsSelector.tsx │ │ │ │ │ │ │ ├── Search.test.tsx │ │ │ │ │ │ │ ├── Search.tsx │ │ │ │ │ │ │ ├── SelectedLogGroups.test.tsx │ │ │ │ │ │ │ └── SelectedLogGroups.tsx │ │ │ │ │ │ └── MetricStatEditor │ │ │ │ │ │ │ ├── MetricStatEditor.test.tsx │ │ │ │ │ │ │ ├── MetricStatEditor.tsx │ │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── styles.ts │ │ │ │ ├── dashboards │ │ │ │ │ ├── EBS.json │ │ │ │ │ ├── Lambda.json │ │ │ │ │ ├── Logs.json │ │ │ │ │ ├── RDS.json │ │ │ │ │ └── ec2.json │ │ │ │ ├── dataquery.cue │ │ │ │ ├── dataquery.gen.ts │ │ │ │ ├── datasource.test.ts │ │ │ │ ├── datasource.ts │ │ │ │ ├── defaultQueries.ts │ │ │ │ ├── expressions.ts │ │ │ │ ├── guards.ts │ │ │ │ ├── hooks.test.ts │ │ │ │ ├── hooks.ts │ │ │ │ ├── img │ │ │ │ │ └── amazon-web-services.png │ │ │ │ ├── language │ │ │ │ │ ├── cloudwatch-logs │ │ │ │ │ │ ├── CloudWatchLogsLanguageProvider.test.ts │ │ │ │ │ │ ├── CloudWatchLogsLanguageProvider.ts │ │ │ │ │ │ └── syntax.ts │ │ │ │ │ ├── cloudwatch-sql │ │ │ │ │ │ ├── SQLGenerator.test.ts │ │ │ │ │ │ ├── SQLGenerator.ts │ │ │ │ │ │ ├── completion │ │ │ │ │ │ │ ├── CompletionItemProvider.ts │ │ │ │ │ │ │ ├── statementPosition.test.ts │ │ │ │ │ │ │ ├── statementPosition.ts │ │ │ │ │ │ │ ├── suggestionKind.ts │ │ │ │ │ │ │ ├── tokenUtils.test.ts │ │ │ │ │ │ │ ├── tokenUtils.ts │ │ │ │ │ │ │ └── types.ts │ │ │ │ │ │ ├── definition.ts │ │ │ │ │ │ └── language.ts │ │ │ │ │ ├── dynamic-labels │ │ │ │ │ │ ├── CompletionItemProvider.test.ts │ │ │ │ │ │ ├── CompletionItemProvider.ts │ │ │ │ │ │ ├── definition.ts │ │ │ │ │ │ └── language.ts │ │ │ │ │ ├── logs │ │ │ │ │ │ ├── completion │ │ │ │ │ │ │ ├── CompletionItemProvider.test.ts │ │ │ │ │ │ │ ├── CompletionItemProvider.ts │ │ │ │ │ │ │ ├── statementPosition.test.ts │ │ │ │ │ │ │ ├── statementPosition.ts │ │ │ │ │ │ │ ├── suggestionKinds.ts │ │ │ │ │ │ │ └── types.ts │ │ │ │ │ │ ├── definition.ts │ │ │ │ │ │ └── language.ts │ │ │ │ │ ├── metric-math │ │ │ │ │ │ ├── completion │ │ │ │ │ │ │ ├── CompletionItemProvider.test.ts │ │ │ │ │ │ │ ├── CompletionItemProvider.ts │ │ │ │ │ │ │ ├── statementPosition.test.ts │ │ │ │ │ │ │ ├── statementPosition.ts │ │ │ │ │ │ │ ├── suggestionKind.ts │ │ │ │ │ │ │ └── types.ts │ │ │ │ │ │ ├── definition.ts │ │ │ │ │ │ └── language.ts │ │ │ │ │ └── monarch │ │ │ │ │ │ ├── CompletionItemProvider.ts │ │ │ │ │ │ ├── LinkedToken.ts │ │ │ │ │ │ ├── commands.ts │ │ │ │ │ │ ├── linkedTokenBuilder.test.ts │ │ │ │ │ │ ├── linkedTokenBuilder.ts │ │ │ │ │ │ ├── register.ts │ │ │ │ │ │ └── types.ts │ │ │ │ ├── memoizedDebounce.ts │ │ │ │ ├── migrations │ │ │ │ │ ├── dashboardMigrations.test.ts │ │ │ │ │ ├── dashboardMigrations.ts │ │ │ │ │ ├── metricQueryMigrations.test.ts │ │ │ │ │ ├── metricQueryMigrations.ts │ │ │ │ │ ├── useMigratedMetricsQuery.test.ts │ │ │ │ │ ├── useMigratedMetricsQuery.ts │ │ │ │ │ ├── variableQueryMigrations.test.ts │ │ │ │ │ └── variableQueryMigrations.ts │ │ │ │ ├── module.tsx │ │ │ │ ├── plugin.json │ │ │ │ ├── query-runner │ │ │ │ │ ├── CloudWatchAnnotationQueryRunner.test.ts │ │ │ │ │ ├── CloudWatchAnnotationQueryRunner.ts │ │ │ │ │ ├── CloudWatchLogsQueryRunner.test.ts │ │ │ │ │ ├── CloudWatchLogsQueryRunner.ts │ │ │ │ │ ├── CloudWatchMetricsQueryRunner.test.ts │ │ │ │ │ ├── CloudWatchMetricsQueryRunner.ts │ │ │ │ │ └── CloudWatchRequest.ts │ │ │ │ ├── resources │ │ │ │ │ ├── ResourceAPI.test.ts │ │ │ │ │ ├── ResourcesAPI.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── standardStatistics.ts │ │ │ │ ├── tracking.test.ts │ │ │ │ ├── tracking.ts │ │ │ │ ├── types.ts │ │ │ │ ├── utils │ │ │ │ │ ├── datalinks.test.ts │ │ │ │ │ ├── datalinks.ts │ │ │ │ │ ├── logsRetry.test.ts │ │ │ │ │ ├── logsRetry.ts │ │ │ │ │ ├── query │ │ │ │ │ │ ├── getStatsGroups.test.ts │ │ │ │ │ │ └── getStatsGroups.ts │ │ │ │ │ ├── rxjs │ │ │ │ │ │ └── increasingInterval.ts │ │ │ │ │ ├── templateVariableUtils.test.ts │ │ │ │ │ ├── templateVariableUtils.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── variables.test.ts │ │ │ │ └── variables.ts │ │ │ ├── dashboard │ │ │ │ ├── DashboardQueryEditor.test.tsx │ │ │ │ ├── DashboardQueryEditor.tsx │ │ │ │ ├── README.md │ │ │ │ ├── datasource.test.ts │ │ │ │ ├── datasource.ts │ │ │ │ ├── img │ │ │ │ │ └── icn-reusequeries.svg │ │ │ │ ├── index.ts │ │ │ │ ├── module.ts │ │ │ │ ├── plugin.json │ │ │ │ ├── runSharedRequest.test.ts │ │ │ │ ├── runSharedRequest.ts │ │ │ │ └── types.ts │ │ │ ├── elasticsearch │ │ │ │ ├── ElasticResponse.test.ts │ │ │ │ ├── ElasticResponse.ts │ │ │ │ ├── IndexPattern.test.ts │ │ │ │ ├── IndexPattern.ts │ │ │ │ ├── LanguageProvider.test.ts │ │ │ │ ├── LanguageProvider.ts │ │ │ │ ├── LegacyQueryRunner.ts │ │ │ │ ├── QueryBuilder.test.ts │ │ │ │ ├── QueryBuilder.ts │ │ │ │ ├── README.md │ │ │ │ ├── components │ │ │ │ │ ├── AddRemove.test.tsx │ │ │ │ │ ├── AddRemove.tsx │ │ │ │ │ ├── MetricPicker.tsx │ │ │ │ │ ├── QueryEditor │ │ │ │ │ │ ├── AnnotationQueryEditor.tsx │ │ │ │ │ │ ├── BucketAggregationsEditor │ │ │ │ │ │ │ ├── BucketAggregationEditor.tsx │ │ │ │ │ │ │ ├── SettingsEditor │ │ │ │ │ │ │ │ ├── DateHistogramSettingsEditor.test.tsx │ │ │ │ │ │ │ │ ├── DateHistogramSettingsEditor.tsx │ │ │ │ │ │ │ │ ├── FiltersSettingsEditor │ │ │ │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ │ │ │ ├── state │ │ │ │ │ │ │ │ │ │ ├── actions.ts │ │ │ │ │ │ │ │ │ │ ├── reducer.test.ts │ │ │ │ │ │ │ │ │ │ └── reducer.ts │ │ │ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ │ │ │ ├── TermsSettingsEditor.test.tsx │ │ │ │ │ │ │ │ ├── TermsSettingsEditor.tsx │ │ │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ │ │ └── useDescription.ts │ │ │ │ │ │ │ ├── aggregations.ts │ │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ │ ├── state │ │ │ │ │ │ │ │ ├── actions.ts │ │ │ │ │ │ │ │ ├── reducer.test.ts │ │ │ │ │ │ │ │ └── reducer.ts │ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ │ ├── ElasticsearchQueryContext.test.tsx │ │ │ │ │ │ ├── ElasticsearchQueryContext.tsx │ │ │ │ │ │ ├── MetricAggregationsEditor │ │ │ │ │ │ │ ├── MetricEditor.test.tsx │ │ │ │ │ │ │ ├── MetricEditor.tsx │ │ │ │ │ │ │ ├── SettingsEditor │ │ │ │ │ │ │ │ ├── BucketScriptSettingsEditor │ │ │ │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ │ │ │ ├── state │ │ │ │ │ │ │ │ │ │ ├── actions.ts │ │ │ │ │ │ │ │ │ │ ├── reducer.test.ts │ │ │ │ │ │ │ │ │ │ └── reducer.ts │ │ │ │ │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ │ │ │ ├── MovingAverageSettingsEditor.tsx │ │ │ │ │ │ │ │ ├── SettingField.tsx │ │ │ │ │ │ │ │ ├── TopMetricsSettingsEditor.tsx │ │ │ │ │ │ │ │ ├── index.test.tsx │ │ │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ │ │ └── useDescription.ts │ │ │ │ │ │ │ ├── aggregations.ts │ │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ │ ├── state │ │ │ │ │ │ │ │ ├── actions.ts │ │ │ │ │ │ │ │ ├── reducer.test.ts │ │ │ │ │ │ │ │ └── reducer.ts │ │ │ │ │ │ │ ├── styles.ts │ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ │ ├── QueryEditorRow.tsx │ │ │ │ │ │ ├── QueryEditorSpecialMetricRow.tsx │ │ │ │ │ │ ├── QueryTypeSelector.tsx │ │ │ │ │ │ ├── SettingsEditorContainer.tsx │ │ │ │ │ │ ├── index.test.tsx │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ ├── state.test.ts │ │ │ │ │ │ ├── state.ts │ │ │ │ │ │ └── styles.ts │ │ │ │ │ ├── hooks │ │ │ │ │ │ ├── useCreatableSelectPersistedBehaviour.test.tsx │ │ │ │ │ │ └── useCreatableSelectPersistedBehaviour.ts │ │ │ │ │ ├── reducerTester.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── configuration │ │ │ │ │ ├── ConfigEditor.test.tsx │ │ │ │ │ ├── ConfigEditor.tsx │ │ │ │ │ ├── DataLink.tsx │ │ │ │ │ ├── DataLinks.test.tsx │ │ │ │ │ ├── DataLinks.tsx │ │ │ │ │ ├── ElasticDetails.test.tsx │ │ │ │ │ ├── ElasticDetails.tsx │ │ │ │ │ ├── LogsConfig.test.tsx │ │ │ │ │ ├── LogsConfig.tsx │ │ │ │ │ ├── __mocks__ │ │ │ │ │ │ └── configOptions.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── dataquery.cue │ │ │ │ ├── dataquery.gen.ts │ │ │ │ ├── datasource.test.ts │ │ │ │ ├── datasource.ts │ │ │ │ ├── guards.test.ts │ │ │ │ ├── guards.ts │ │ │ │ ├── hooks │ │ │ │ │ ├── useFields.test.tsx │ │ │ │ │ ├── useFields.ts │ │ │ │ │ ├── useNextId.test.tsx │ │ │ │ │ ├── useNextId.ts │ │ │ │ │ ├── useStatelessReducer.test.tsx │ │ │ │ │ └── useStatelessReducer.ts │ │ │ │ ├── img │ │ │ │ │ └── elasticsearch.svg │ │ │ │ ├── mocks.ts │ │ │ │ ├── modifyQuery.test.ts │ │ │ │ ├── modifyQuery.ts │ │ │ │ ├── module.test.ts │ │ │ │ ├── module.ts │ │ │ │ ├── plugin.json │ │ │ │ ├── queryDef.test.ts │ │ │ │ ├── queryDef.ts │ │ │ │ ├── query_help.md │ │ │ │ ├── test-helpers │ │ │ │ │ └── render.tsx │ │ │ │ ├── tracking.test.ts │ │ │ │ ├── tracking.ts │ │ │ │ ├── types.ts │ │ │ │ ├── utils.test.ts │ │ │ │ └── utils.ts │ │ │ ├── grafana-postgresql-datasource │ │ │ │ ├── CHANGELOG.md │ │ │ │ ├── CheatSheet.tsx │ │ │ │ ├── PostgresQueryEditor.tsx │ │ │ │ ├── PostgresQueryModel.ts │ │ │ │ ├── README.md │ │ │ │ ├── configuration │ │ │ │ │ ├── ConfigurationEditor.tsx │ │ │ │ │ └── useAutoDetectFeatures.ts │ │ │ │ ├── datasource.test.ts │ │ │ │ ├── datasource.ts │ │ │ │ ├── img │ │ │ │ │ └── postgresql_logo.svg │ │ │ │ ├── module.ts │ │ │ │ ├── package.json │ │ │ │ ├── plugin.json │ │ │ │ ├── postgresMetaQuery.test.ts │ │ │ │ ├── postgresMetaQuery.ts │ │ │ │ ├── sqlCompletionProvider.ts │ │ │ │ ├── sqlUtil.ts │ │ │ │ ├── tsconfig.json │ │ │ │ ├── types.ts │ │ │ │ └── webpack.config.ts │ │ │ ├── grafana-pyroscope-datasource │ │ │ │ ├── .eslintignore │ │ │ │ ├── CHANGELOG.md │ │ │ │ ├── ConfigEditor.tsx │ │ │ │ ├── QueryEditor │ │ │ │ │ ├── EditorField.tsx │ │ │ │ │ ├── EditorRow.tsx │ │ │ │ │ ├── EditorRows.tsx │ │ │ │ │ ├── LabelsEditor.tsx │ │ │ │ │ ├── ProfileTypesCascader.tsx │ │ │ │ │ ├── QueryEditor.test.tsx │ │ │ │ │ ├── QueryEditor.tsx │ │ │ │ │ ├── QueryLinkExtension.test.tsx │ │ │ │ │ ├── QueryLinkExtension.tsx │ │ │ │ │ ├── QueryOptionGroup.tsx │ │ │ │ │ ├── QueryOptions.tsx │ │ │ │ │ ├── Stack.tsx │ │ │ │ │ ├── autocomplete.test.ts │ │ │ │ │ └── autocomplete.ts │ │ │ │ ├── README.md │ │ │ │ ├── VariableQueryEditor.test.tsx │ │ │ │ ├── VariableQueryEditor.tsx │ │ │ │ ├── VariableSupport.test.ts │ │ │ │ ├── VariableSupport.ts │ │ │ │ ├── dataquery.cue │ │ │ │ ├── dataquery.gen.ts │ │ │ │ ├── datasource.test.ts │ │ │ │ ├── datasource.ts │ │ │ │ ├── img │ │ │ │ │ └── grafana_pyroscope_icon.svg │ │ │ │ ├── module.ts │ │ │ │ ├── package.json │ │ │ │ ├── plugin.json │ │ │ │ ├── pyroscopeql │ │ │ │ │ ├── index.ts │ │ │ │ │ └── pyroscopeql.ts │ │ │ │ ├── tsconfig.json │ │ │ │ ├── types.ts │ │ │ │ ├── utils.ts │ │ │ │ └── webpack.config.ts │ │ │ ├── grafana-testdata-datasource │ │ │ │ ├── .eslintignore │ │ │ │ ├── CHANGELOG.md │ │ │ │ ├── ConfigEditor.tsx │ │ │ │ ├── LogIpsum.ts │ │ │ │ ├── MetaDataInspector.tsx │ │ │ │ ├── QueryEditor.test.tsx │ │ │ │ ├── QueryEditor.tsx │ │ │ │ ├── README.md │ │ │ │ ├── TestInfoTab.tsx │ │ │ │ ├── __mocks__ │ │ │ │ │ └── scenarios.ts │ │ │ │ ├── components │ │ │ │ │ ├── CSVContentEditor.tsx │ │ │ │ │ ├── CSVFileEditor.tsx │ │ │ │ │ ├── CSVWaveEditor.tsx │ │ │ │ │ ├── ErrorEditor.tsx │ │ │ │ │ ├── GrafanaLiveEditor.tsx │ │ │ │ │ ├── NodeGraphEditor.tsx │ │ │ │ │ ├── PredictablePulseEditor.tsx │ │ │ │ │ ├── RandomWalkEditor.tsx │ │ │ │ │ ├── RawFrameEditor.tsx │ │ │ │ │ ├── SimulationQueryEditor.tsx │ │ │ │ │ ├── SimulationSchemaForm.tsx │ │ │ │ │ ├── StreamingClientEditor.tsx │ │ │ │ │ ├── USAQueryEditor.tsx │ │ │ │ │ └── index.ts │ │ │ │ ├── constants.ts │ │ │ │ ├── dashboards │ │ │ │ │ └── streaming.json │ │ │ │ ├── dataquery.ts │ │ │ │ ├── datasource.ts │ │ │ │ ├── img │ │ │ │ │ └── testdata.svg │ │ │ │ ├── metricTree.test.ts │ │ │ │ ├── metricTree.ts │ │ │ │ ├── module.tsx │ │ │ │ ├── nodeGraphUtils.ts │ │ │ │ ├── package.json │ │ │ │ ├── plugin.json │ │ │ │ ├── runStreams.ts │ │ │ │ ├── testData │ │ │ │ │ ├── flameGraphResponse.ts │ │ │ │ │ ├── serviceMapResponse.ts │ │ │ │ │ └── serviceMapResponseMedium.ts │ │ │ │ ├── tsconfig.json │ │ │ │ ├── variables.ts │ │ │ │ └── webpack.config.ts │ │ │ ├── grafana │ │ │ │ ├── README.md │ │ │ │ ├── components │ │ │ │ │ ├── AnnotationQueryEditor.test.tsx │ │ │ │ │ ├── AnnotationQueryEditor.tsx │ │ │ │ │ ├── QueryEditor.tsx │ │ │ │ │ ├── SearchEditor.tsx │ │ │ │ │ ├── TimePickerInput.tsx │ │ │ │ │ └── TimeRegionEditor.tsx │ │ │ │ ├── datasource.test.ts │ │ │ │ ├── datasource.ts │ │ │ │ ├── img │ │ │ │ │ └── icn-grafanadb.svg │ │ │ │ ├── module.ts │ │ │ │ ├── plugin.json │ │ │ │ ├── timeRegions.test.ts │ │ │ │ ├── timeRegions.ts │ │ │ │ ├── types.ts │ │ │ │ └── utils.ts │ │ │ ├── graphite │ │ │ │ ├── README.md │ │ │ │ ├── components │ │ │ │ │ ├── AddGraphiteFunction.tsx │ │ │ │ │ ├── AnnotationsEditor.tsx │ │ │ │ │ ├── FunctionEditor.test.tsx │ │ │ │ │ ├── FunctionEditor.tsx │ │ │ │ │ ├── FunctionEditorControls.tsx │ │ │ │ │ ├── FunctionParamEditor.tsx │ │ │ │ │ ├── FunctionsSection.tsx │ │ │ │ │ ├── GraphiteFunctionEditor.tsx │ │ │ │ │ ├── GraphiteQueryEditor.tsx │ │ │ │ │ ├── GraphiteTextEditor.tsx │ │ │ │ │ ├── GraphiteVariableEditor.tsx │ │ │ │ │ ├── MetricSegment.tsx │ │ │ │ │ ├── MetricTankMetaInspector.tsx │ │ │ │ │ ├── MetricsSection.tsx │ │ │ │ │ ├── PlayButton.tsx │ │ │ │ │ ├── SeriesSection.tsx │ │ │ │ │ ├── TagEditor.tsx │ │ │ │ │ ├── TagsSection.tsx │ │ │ │ │ ├── helpers.test.ts │ │ │ │ │ └── helpers.ts │ │ │ │ ├── configuration │ │ │ │ │ ├── ConfigEditor.tsx │ │ │ │ │ ├── MappingsConfiguration.tsx │ │ │ │ │ ├── MappingsHelp.tsx │ │ │ │ │ └── parseLokiLabelMappings.ts │ │ │ │ ├── dashboards │ │ │ │ │ ├── carbon_metrics.json │ │ │ │ │ └── metrictank.json │ │ │ │ ├── datasource.test.ts │ │ │ │ ├── datasource.ts │ │ │ │ ├── datasource_integration.test.ts │ │ │ │ ├── gfunc.test.ts │ │ │ │ ├── gfunc.ts │ │ │ │ ├── graphite_query.ts │ │ │ │ ├── img │ │ │ │ │ └── graphite_logo.png │ │ │ │ ├── lexer.ts │ │ │ │ ├── meta.test.ts │ │ │ │ ├── meta.ts │ │ │ │ ├── migrations.ts │ │ │ │ ├── module.ts │ │ │ │ ├── parser.ts │ │ │ │ ├── plugin.json │ │ │ │ ├── query_help.md │ │ │ │ ├── specs │ │ │ │ │ ├── gfunc.test.ts │ │ │ │ │ ├── graphite_query.test.ts │ │ │ │ │ ├── lexer.test.ts │ │ │ │ │ ├── parser.test.ts │ │ │ │ │ └── store.test.ts │ │ │ │ ├── state │ │ │ │ │ ├── actions.ts │ │ │ │ │ ├── context.tsx │ │ │ │ │ ├── helpers.ts │ │ │ │ │ ├── providers.ts │ │ │ │ │ └── store.ts │ │ │ │ ├── types.ts │ │ │ │ ├── utils.test.ts │ │ │ │ ├── utils.ts │ │ │ │ └── versions.ts │ │ │ ├── influxdb │ │ │ │ ├── README.md │ │ │ │ ├── __mocks__ │ │ │ │ │ ├── datasource.ts │ │ │ │ │ ├── query.ts │ │ │ │ │ ├── request.ts │ │ │ │ │ └── response.ts │ │ │ │ ├── components │ │ │ │ │ └── editor │ │ │ │ │ │ ├── annotation │ │ │ │ │ │ └── AnnotationEditor.tsx │ │ │ │ │ │ ├── config │ │ │ │ │ │ ├── ConfigEditor.test.tsx │ │ │ │ │ │ ├── ConfigEditor.tsx │ │ │ │ │ │ ├── InfluxFluxConfig.tsx │ │ │ │ │ │ ├── InfluxInfluxQLConfig.tsx │ │ │ │ │ │ ├── InfluxSQLConfig.tsx │ │ │ │ │ │ └── constants.ts │ │ │ │ │ │ ├── constants.ts │ │ │ │ │ │ ├── query │ │ │ │ │ │ ├── QueryEditor.tsx │ │ │ │ │ │ ├── flux │ │ │ │ │ │ │ └── FluxQueryEditor.tsx │ │ │ │ │ │ ├── fsql │ │ │ │ │ │ │ └── FSQLEditor.tsx │ │ │ │ │ │ └── influxql │ │ │ │ │ │ │ ├── InfluxCheatSheet.tsx │ │ │ │ │ │ │ ├── InfluxStartPage.tsx │ │ │ │ │ │ │ ├── QueryEditorModeSwitcher.tsx │ │ │ │ │ │ │ ├── code │ │ │ │ │ │ │ ├── RawInfluxQLEditor.test.tsx │ │ │ │ │ │ │ └── RawInfluxQLEditor.tsx │ │ │ │ │ │ │ ├── hooks │ │ │ │ │ │ │ ├── useShadowedState.test.ts │ │ │ │ │ │ │ └── useShadowedState.ts │ │ │ │ │ │ │ ├── utils │ │ │ │ │ │ │ ├── filterTags.ts │ │ │ │ │ │ │ ├── getTemplateVariableOptions.ts │ │ │ │ │ │ │ ├── partListUtils.tsx │ │ │ │ │ │ │ ├── tagUtils.test.ts │ │ │ │ │ │ │ ├── tagUtils.ts │ │ │ │ │ │ │ ├── toSelectableValue.ts │ │ │ │ │ │ │ ├── unwrap.ts │ │ │ │ │ │ │ ├── withTemplateVariableOptions.ts │ │ │ │ │ │ │ └── wrapper.ts │ │ │ │ │ │ │ └── visual │ │ │ │ │ │ │ ├── AddButton.tsx │ │ │ │ │ │ │ ├── FormatAsSection.tsx │ │ │ │ │ │ │ ├── FromSection.tsx │ │ │ │ │ │ │ ├── InputSection.tsx │ │ │ │ │ │ │ ├── OrderByTimeSection.tsx │ │ │ │ │ │ │ ├── PartListSection.tsx │ │ │ │ │ │ │ ├── Seg.tsx │ │ │ │ │ │ │ ├── TagsSection.test.tsx │ │ │ │ │ │ │ ├── TagsSection.tsx │ │ │ │ │ │ │ ├── VisualInfluxQLEditor.tags.test.tsx │ │ │ │ │ │ │ ├── VisualInfluxQLEditor.test.tsx │ │ │ │ │ │ │ ├── VisualInfluxQLEditor.tsx │ │ │ │ │ │ │ └── styles.ts │ │ │ │ │ │ └── variable │ │ │ │ │ │ └── VariableQueryEditor.tsx │ │ │ │ ├── constants.ts │ │ │ │ ├── datasource.test.ts │ │ │ │ ├── datasource.ts │ │ │ │ ├── datasource_sql.test.ts │ │ │ │ ├── fsql │ │ │ │ │ ├── datasource.flightsql.test.ts │ │ │ │ │ ├── datasource.flightsql.ts │ │ │ │ │ ├── fields.ts │ │ │ │ │ ├── flightsqlMetaQuery.ts │ │ │ │ │ ├── sqlCompletionProvider.ts │ │ │ │ │ ├── sqlUtil.test.ts │ │ │ │ │ ├── sqlUtil.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── img │ │ │ │ │ └── influxdb_logo.svg │ │ │ │ ├── influx_query_model.test.ts │ │ │ │ ├── influx_query_model.ts │ │ │ │ ├── influx_series.test.ts │ │ │ │ ├── influx_series.ts │ │ │ │ ├── influxql_metadata_query.test.ts │ │ │ │ ├── influxql_metadata_query.ts │ │ │ │ ├── influxql_query_builder.test.ts │ │ │ │ ├── influxql_query_builder.ts │ │ │ │ ├── migrations.ts │ │ │ │ ├── module.ts │ │ │ │ ├── plugin.json │ │ │ │ ├── queryUtils.test.ts │ │ │ │ ├── queryUtils.ts │ │ │ │ ├── query_help.md │ │ │ │ ├── query_part.test.ts │ │ │ │ ├── query_part.ts │ │ │ │ ├── response_parser.test.ts │ │ │ │ ├── response_parser.ts │ │ │ │ ├── types.ts │ │ │ │ └── variables.ts │ │ │ ├── jaeger │ │ │ │ ├── CHANGELOG.md │ │ │ │ ├── CheatSheet.tsx │ │ │ │ ├── README.md │ │ │ │ ├── _importedDependencies │ │ │ │ │ ├── README.md │ │ │ │ │ ├── model │ │ │ │ │ │ ├── trace-viewer.ts │ │ │ │ │ │ └── transform-trace-data.tsx │ │ │ │ │ ├── selectors │ │ │ │ │ │ └── trace.ts │ │ │ │ │ ├── types │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ └── trace.ts │ │ │ │ │ └── utils │ │ │ │ │ │ ├── TreeNode.ts │ │ │ │ │ │ └── config │ │ │ │ │ │ ├── default-config.ts │ │ │ │ │ │ └── get-config.tsx │ │ │ │ ├── components │ │ │ │ │ ├── QueryEditor.tsx │ │ │ │ │ ├── SearchForm.test.tsx │ │ │ │ │ └── SearchForm.tsx │ │ │ │ ├── configuration │ │ │ │ │ ├── ConfigEditor.tsx │ │ │ │ │ └── TraceIdTimeParams.tsx │ │ │ │ ├── datasource.test.ts │ │ │ │ ├── datasource.ts │ │ │ │ ├── dependencyGraphTransform.test.ts │ │ │ │ ├── dependencyGraphTransform.ts │ │ │ │ ├── graphTransform.test.ts │ │ │ │ ├── graphTransform.ts │ │ │ │ ├── helpers │ │ │ │ │ └── createFetchResponse.ts │ │ │ │ ├── img │ │ │ │ │ └── jaeger_logo.svg │ │ │ │ ├── mockJsonResponse.json │ │ │ │ ├── module.ts │ │ │ │ ├── package.json │ │ │ │ ├── plugin.json │ │ │ │ ├── responseTransform.test.ts │ │ │ │ ├── responseTransform.ts │ │ │ │ ├── testResponse.ts │ │ │ │ ├── tsconfig.json │ │ │ │ ├── types.ts │ │ │ │ ├── util.ts │ │ │ │ └── webpack.config.ts │ │ │ ├── loki │ │ │ │ ├── LanguageProvider.test.ts │ │ │ │ ├── LanguageProvider.ts │ │ │ │ ├── LiveStreams.test.ts │ │ │ │ ├── LiveStreams.ts │ │ │ │ ├── LogContextProvider.test.ts │ │ │ │ ├── LogContextProvider.ts │ │ │ │ ├── LokiVariableSupport.test.ts │ │ │ │ ├── LokiVariableSupport.ts │ │ │ │ ├── README.md │ │ │ │ ├── __mocks__ │ │ │ │ │ ├── datasource.ts │ │ │ │ │ ├── frames.ts │ │ │ │ │ └── metadataRequest.ts │ │ │ │ ├── backendResultTransformer.test.ts │ │ │ │ ├── backendResultTransformer.ts │ │ │ │ ├── components │ │ │ │ │ ├── AnnotationsQueryEditor.tsx │ │ │ │ │ ├── LokiCheatSheet.test.tsx │ │ │ │ │ ├── LokiCheatSheet.tsx │ │ │ │ │ ├── LokiContextUi.test.tsx │ │ │ │ │ ├── LokiContextUi.tsx │ │ │ │ │ ├── LokiLabelBrowser.test.tsx │ │ │ │ │ ├── LokiLabelBrowser.tsx │ │ │ │ │ ├── LokiOptionFields.test.tsx │ │ │ │ │ ├── LokiOptionFields.tsx │ │ │ │ │ ├── LokiQueryEditor.test.tsx │ │ │ │ │ ├── LokiQueryEditor.tsx │ │ │ │ │ ├── LokiQueryEditorByApp.test.tsx │ │ │ │ │ ├── LokiQueryEditorByApp.tsx │ │ │ │ │ ├── LokiQueryEditorForAlerting.tsx │ │ │ │ │ ├── LokiQueryField.test.tsx │ │ │ │ │ ├── LokiQueryField.tsx │ │ │ │ │ ├── VariableQueryEditor.test.tsx │ │ │ │ │ ├── VariableQueryEditor.tsx │ │ │ │ │ ├── monaco-query-field │ │ │ │ │ │ ├── MonacoFieldWrapper.test.tsx │ │ │ │ │ │ ├── MonacoQueryField.test.tsx │ │ │ │ │ │ ├── MonacoQueryField.tsx │ │ │ │ │ │ ├── MonacoQueryFieldLazy.tsx │ │ │ │ │ │ ├── MonacoQueryFieldProps.ts │ │ │ │ │ │ ├── MonacoQueryFieldWrapper.tsx │ │ │ │ │ │ ├── getOverrideServices.ts │ │ │ │ │ │ └── monaco-completion-provider │ │ │ │ │ │ │ ├── CompletionDataProvider.test.ts │ │ │ │ │ │ │ ├── CompletionDataProvider.ts │ │ │ │ │ │ │ ├── NeverCaseError.ts │ │ │ │ │ │ │ ├── completionUtils.ts │ │ │ │ │ │ │ ├── completions.test.ts │ │ │ │ │ │ │ ├── completions.ts │ │ │ │ │ │ │ ├── situation.test.ts │ │ │ │ │ │ │ ├── situation.ts │ │ │ │ │ │ │ ├── validation.test.ts │ │ │ │ │ │ │ └── validation.ts │ │ │ │ │ ├── stats.test.ts │ │ │ │ │ ├── stats.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── configuration │ │ │ │ │ ├── AlertingSettings.test.tsx │ │ │ │ │ ├── AlertingSettings.tsx │ │ │ │ │ ├── ConfigEditor.test.tsx │ │ │ │ │ ├── ConfigEditor.tsx │ │ │ │ │ ├── DebugSection.test.tsx │ │ │ │ │ ├── DebugSection.tsx │ │ │ │ │ ├── DerivedField.test.tsx │ │ │ │ │ ├── DerivedField.tsx │ │ │ │ │ ├── DerivedFields.test.tsx │ │ │ │ │ ├── DerivedFields.tsx │ │ │ │ │ └── QuerySettings.tsx │ │ │ │ ├── dataquery.cue │ │ │ │ ├── dataquery.gen.ts │ │ │ │ ├── datasource.test.ts │ │ │ │ ├── datasource.ts │ │ │ │ ├── docs │ │ │ │ │ └── app_plugin_developer_documentation.md │ │ │ │ ├── getDerivedFields.test.ts │ │ │ │ ├── getDerivedFields.ts │ │ │ │ ├── img │ │ │ │ │ ├── grafana_icon.svg │ │ │ │ │ └── loki_icon.svg │ │ │ │ ├── languageUtils.test.ts │ │ │ │ ├── languageUtils.ts │ │ │ │ ├── language_utils.test.ts │ │ │ │ ├── lineParser.test.ts │ │ │ │ ├── lineParser.ts │ │ │ │ ├── liveStreamsResultTransformer.test.ts │ │ │ │ ├── liveStreamsResultTransformer.ts │ │ │ │ ├── logsTimeSplitting.test.ts │ │ │ │ ├── logsTimeSplitting.ts │ │ │ │ ├── makeTableFrames.test.ts │ │ │ │ ├── makeTableFrames.ts │ │ │ │ ├── metricTimeSplitting.test.ts │ │ │ │ ├── metricTimeSplitting.ts │ │ │ │ ├── migrations │ │ │ │ │ ├── variableQueryMigrations.test.ts │ │ │ │ │ └── variableQueryMigrations.ts │ │ │ │ ├── modifyQuery.test.ts │ │ │ │ ├── modifyQuery.ts │ │ │ │ ├── module.test.ts │ │ │ │ ├── module.ts │ │ │ │ ├── plugin.json │ │ │ │ ├── queryHints.test.ts │ │ │ │ ├── queryHints.ts │ │ │ │ ├── querySplitting.test.ts │ │ │ │ ├── querySplitting.ts │ │ │ │ ├── queryUtils.test.ts │ │ │ │ ├── queryUtils.ts │ │ │ │ ├── querybuilder │ │ │ │ │ ├── LokiQueryModeller.test.ts │ │ │ │ │ ├── LokiQueryModeller.ts │ │ │ │ │ ├── binaryScalarOperations.ts │ │ │ │ │ ├── components │ │ │ │ │ │ ├── LabelBrowserModal.test.tsx │ │ │ │ │ │ ├── LabelBrowserModal.tsx │ │ │ │ │ │ ├── LabelParamEditor.test.tsx │ │ │ │ │ │ ├── LabelParamEditor.tsx │ │ │ │ │ │ ├── LokiQueryBuilder.test.tsx │ │ │ │ │ │ ├── LokiQueryBuilder.tsx │ │ │ │ │ │ ├── LokiQueryBuilderContainer.test.tsx │ │ │ │ │ │ ├── LokiQueryBuilderContainer.tsx │ │ │ │ │ │ ├── LokiQueryBuilderExplained.tsx │ │ │ │ │ │ ├── LokiQueryBuilderOptions.test.tsx │ │ │ │ │ │ ├── LokiQueryBuilderOptions.tsx │ │ │ │ │ │ ├── LokiQueryCodeEditor.test.tsx │ │ │ │ │ │ ├── LokiQueryCodeEditor.tsx │ │ │ │ │ │ ├── NestedQuery.test.tsx │ │ │ │ │ │ ├── NestedQuery.tsx │ │ │ │ │ │ ├── NestedQueryList.test.tsx │ │ │ │ │ │ ├── NestedQueryList.tsx │ │ │ │ │ │ ├── QueryPattern.tsx │ │ │ │ │ │ ├── QueryPatternsModal.test.tsx │ │ │ │ │ │ ├── QueryPatternsModal.tsx │ │ │ │ │ │ ├── QueryPreview.tsx │ │ │ │ │ │ ├── UnwrapParamEditor.test.tsx │ │ │ │ │ │ └── UnwrapParamEditor.tsx │ │ │ │ │ ├── operationUtils.test.ts │ │ │ │ │ ├── operationUtils.ts │ │ │ │ │ ├── operations.test.ts │ │ │ │ │ ├── operations.ts │ │ │ │ │ ├── parsing.test.ts │ │ │ │ │ ├── parsing.ts │ │ │ │ │ ├── parsingUtils.test.ts │ │ │ │ │ ├── parsingUtils.ts │ │ │ │ │ ├── state.test.ts │ │ │ │ │ ├── state.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── responseUtils.test.ts │ │ │ │ ├── responseUtils.ts │ │ │ │ ├── sortDataFrame.test.ts │ │ │ │ ├── sortDataFrame.ts │ │ │ │ ├── streaming.test.ts │ │ │ │ ├── streaming.ts │ │ │ │ ├── syntax.test.ts │ │ │ │ ├── syntax.ts │ │ │ │ ├── tracking.test.ts │ │ │ │ ├── tracking.ts │ │ │ │ └── types.ts │ │ │ ├── mixed │ │ │ │ ├── MixedDataSource.test.ts │ │ │ │ ├── MixedDataSource.ts │ │ │ │ ├── README.md │ │ │ │ ├── img │ │ │ │ │ └── icn-mixeddatasources.svg │ │ │ │ ├── module.ts │ │ │ │ └── plugin.json │ │ │ ├── mssql │ │ │ │ ├── CheatSheet.tsx │ │ │ │ ├── MSSqlMetaQuery.ts │ │ │ │ ├── MSSqlQueryModel.ts │ │ │ │ ├── README.md │ │ │ │ ├── azureauth │ │ │ │ │ ├── AzureAuth.test.ts │ │ │ │ │ ├── AzureAuth.testMocks.ts │ │ │ │ │ ├── AzureAuthSettings.tsx │ │ │ │ │ ├── AzureCredentials.ts │ │ │ │ │ ├── AzureCredentialsConfig.ts │ │ │ │ │ └── AzureCredentialsForm.tsx │ │ │ │ ├── configuration │ │ │ │ │ ├── ConfigurationEditor.tsx │ │ │ │ │ └── Kerberos.tsx │ │ │ │ ├── datasource.test.ts │ │ │ │ ├── datasource.ts │ │ │ │ ├── img │ │ │ │ │ └── sql_server_logo.svg │ │ │ │ ├── module.ts │ │ │ │ ├── plugin.json │ │ │ │ ├── sqlCompletionProvider.ts │ │ │ │ ├── sqlUtil.ts │ │ │ │ └── types.ts │ │ │ ├── mysql │ │ │ │ ├── CHANGELOG.md │ │ │ │ ├── CheatSheet.tsx │ │ │ │ ├── MySqlDatasource.ts │ │ │ │ ├── README.md │ │ │ │ ├── configuration │ │ │ │ │ └── ConfigurationEditor.tsx │ │ │ │ ├── fields.ts │ │ │ │ ├── img │ │ │ │ │ └── mysql_logo.svg │ │ │ │ ├── module.ts │ │ │ │ ├── mySqlMetaQuery.test.ts │ │ │ │ ├── mySqlMetaQuery.ts │ │ │ │ ├── package.json │ │ │ │ ├── plugin.json │ │ │ │ ├── specs │ │ │ │ │ └── datasource.test.ts │ │ │ │ ├── sqlCompletionProvider.ts │ │ │ │ ├── sqlUtil.test.ts │ │ │ │ ├── sqlUtil.ts │ │ │ │ ├── tsconfig.json │ │ │ │ ├── types.ts │ │ │ │ └── webpack.config.ts │ │ │ ├── opentsdb │ │ │ │ ├── README.md │ │ │ │ ├── components │ │ │ │ │ ├── AnnotationEditor.tsx │ │ │ │ │ ├── ConfigEditor.tsx │ │ │ │ │ ├── DownSample.test.tsx │ │ │ │ │ ├── DownSample.tsx │ │ │ │ │ ├── FilterSection.test.tsx │ │ │ │ │ ├── FilterSection.tsx │ │ │ │ │ ├── MetricSection.test.tsx │ │ │ │ │ ├── MetricSection.tsx │ │ │ │ │ ├── OpenTsdbDetails.tsx │ │ │ │ │ ├── OpenTsdbQueryEditor.test.tsx │ │ │ │ │ ├── OpenTsdbQueryEditor.tsx │ │ │ │ │ ├── RateSection.test.tsx │ │ │ │ │ ├── RateSection.tsx │ │ │ │ │ ├── TagSection.test.tsx │ │ │ │ │ ├── TagSection.tsx │ │ │ │ │ └── styles.ts │ │ │ │ ├── datasource.d.ts │ │ │ │ ├── datasource.ts │ │ │ │ ├── img │ │ │ │ │ └── opentsdb_logo.png │ │ │ │ ├── migrations.ts │ │ │ │ ├── module.ts │ │ │ │ ├── plugin.json │ │ │ │ ├── specs │ │ │ │ │ └── datasource.test.ts │ │ │ │ └── types.ts │ │ │ ├── parca │ │ │ │ ├── CHANGELOG.md │ │ │ │ ├── ConfigEditor.tsx │ │ │ │ ├── QueryEditor │ │ │ │ │ ├── EditorRow.tsx │ │ │ │ │ ├── EditorRows.tsx │ │ │ │ │ ├── LabelsEditor.tsx │ │ │ │ │ ├── QueryEditor.test.tsx │ │ │ │ │ ├── QueryEditor.tsx │ │ │ │ │ ├── QueryOptions.tsx │ │ │ │ │ ├── Stack.tsx │ │ │ │ │ ├── autocomplete.test.ts │ │ │ │ │ └── autocomplete.ts │ │ │ │ ├── README.md │ │ │ │ ├── dataquery.cue │ │ │ │ ├── dataquery.gen.ts │ │ │ │ ├── datasource.test.ts │ │ │ │ ├── datasource.ts │ │ │ │ ├── img │ │ │ │ │ └── logo-small.svg │ │ │ │ ├── lang │ │ │ │ │ ├── index.ts │ │ │ │ │ └── lang.ts │ │ │ │ ├── module.ts │ │ │ │ ├── package.json │ │ │ │ ├── plugin.json │ │ │ │ ├── tsconfig.json │ │ │ │ ├── types.ts │ │ │ │ └── webpack.config.ts │ │ │ ├── prometheus │ │ │ │ ├── README.md │ │ │ │ ├── configuration │ │ │ │ │ ├── AzureAuthSettings.tsx │ │ │ │ │ ├── AzureCredentials.ts │ │ │ │ │ ├── AzureCredentialsConfig.ts │ │ │ │ │ ├── AzureCredentialsForm.test.tsx │ │ │ │ │ ├── AzureCredentialsForm.tsx │ │ │ │ │ ├── ConfigEditorPackage.tsx │ │ │ │ │ └── DataSourceHttpSettingsOverhaulPackage.tsx │ │ │ │ ├── dashboards │ │ │ │ │ ├── grafana_stats.json │ │ │ │ │ ├── prometheus_2_stats.json │ │ │ │ │ └── prometheus_stats.json │ │ │ │ ├── img │ │ │ │ │ ├── cortex_logo.svg │ │ │ │ │ ├── mimir_logo.svg │ │ │ │ │ ├── prometheus_logo.svg │ │ │ │ │ └── thanos_logo.svg │ │ │ │ ├── module.test.ts │ │ │ │ ├── module.ts │ │ │ │ └── plugin.json │ │ │ ├── tempo │ │ │ │ ├── .eslintignore │ │ │ │ ├── CHANGELOG.md │ │ │ │ ├── CheatSheet.tsx │ │ │ │ ├── QueryField.tsx │ │ │ │ ├── README.md │ │ │ │ ├── SearchTraceQLEditor │ │ │ │ │ ├── DurationInput.tsx │ │ │ │ │ ├── GroupByField.test.tsx │ │ │ │ │ ├── GroupByField.tsx │ │ │ │ │ ├── InlineSearchField.tsx │ │ │ │ │ ├── SearchField.test.tsx │ │ │ │ │ ├── SearchField.tsx │ │ │ │ │ ├── TagsInput.test.tsx │ │ │ │ │ ├── TagsInput.tsx │ │ │ │ │ ├── TraceQLSearch.test.tsx │ │ │ │ │ ├── TraceQLSearch.tsx │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── ServiceGraphSection.tsx │ │ │ │ ├── VariableQueryEditor.test.tsx │ │ │ │ ├── VariableQueryEditor.tsx │ │ │ │ ├── _importedDependencies │ │ │ │ │ ├── README.md │ │ │ │ │ ├── components │ │ │ │ │ │ └── AdHocFilter │ │ │ │ │ │ │ ├── AdHocFilter.tsx │ │ │ │ │ │ │ ├── AdHocFilterBuilder.tsx │ │ │ │ │ │ │ ├── AdHocFilterKey.tsx │ │ │ │ │ │ │ ├── AdHocFilterRenderer.tsx │ │ │ │ │ │ │ ├── AdHocFilterValue.tsx │ │ │ │ │ │ │ ├── ConditionSegment.tsx │ │ │ │ │ │ │ ├── OperatorSegment.tsx │ │ │ │ │ │ │ └── types.ts │ │ │ │ │ ├── datasources │ │ │ │ │ │ ├── loki │ │ │ │ │ │ │ └── types.ts │ │ │ │ │ │ └── prometheus │ │ │ │ │ │ │ ├── QueryOptionGroup.tsx │ │ │ │ │ │ │ ├── RawQuery.tsx │ │ │ │ │ │ │ ├── dataquery.gen.ts │ │ │ │ │ │ │ ├── language_utils.ts │ │ │ │ │ │ │ └── types.ts │ │ │ │ │ └── test │ │ │ │ │ │ └── helpers │ │ │ │ │ │ ├── createFetchResponse.ts │ │ │ │ │ │ └── selectOptionInTest.ts │ │ │ │ ├── configuration │ │ │ │ │ ├── ConfigEditor.tsx │ │ │ │ │ ├── QuerySettings.tsx │ │ │ │ │ ├── SearchSettings.tsx │ │ │ │ │ ├── ServiceGraphSettings.tsx │ │ │ │ │ ├── TraceQLSearchSettings.tsx │ │ │ │ │ └── TraceQLSearchTags.tsx │ │ │ │ ├── dataquery.cue │ │ │ │ ├── dataquery.gen.ts │ │ │ │ ├── datasource.test.ts │ │ │ │ ├── datasource.ts │ │ │ │ ├── graphTransform.test.ts │ │ │ │ ├── graphTransform.ts │ │ │ │ ├── img │ │ │ │ │ └── tempo_logo.svg │ │ │ │ ├── language_provider.test.ts │ │ │ │ ├── language_provider.ts │ │ │ │ ├── metricsSummary.test.ts │ │ │ │ ├── metricsSummary.ts │ │ │ │ ├── mockJsonResponse.json │ │ │ │ ├── mockServiceGraph.json │ │ │ │ ├── mocks.ts │ │ │ │ ├── module.ts │ │ │ │ ├── package.json │ │ │ │ ├── plugin.json │ │ │ │ ├── resultTransformer.test.ts │ │ │ │ ├── resultTransformer.ts │ │ │ │ ├── streaming.ts │ │ │ │ ├── testResponse.ts │ │ │ │ ├── test_utils.ts │ │ │ │ ├── traceql │ │ │ │ │ ├── QueryEditor.tsx │ │ │ │ │ ├── TempoQueryBuilderOptions.tsx │ │ │ │ │ ├── TraceQLEditor.tsx │ │ │ │ │ ├── autocomplete.test.ts │ │ │ │ │ ├── autocomplete.ts │ │ │ │ │ ├── highlighting.test.ts │ │ │ │ │ ├── highlighting.ts │ │ │ │ │ ├── situation.test.ts │ │ │ │ │ ├── situation.ts │ │ │ │ │ └── traceql.ts │ │ │ │ ├── tracking.test.ts │ │ │ │ ├── tracking.ts │ │ │ │ ├── tsconfig.json │ │ │ │ ├── types.ts │ │ │ │ ├── utils.test.ts │ │ │ │ ├── utils.ts │ │ │ │ ├── variables.test.ts │ │ │ │ ├── variables.ts │ │ │ │ └── webpack.config.ts │ │ │ └── zipkin │ │ │ │ ├── CHANGELOG.md │ │ │ │ ├── ConfigEditor.tsx │ │ │ │ ├── QueryField.test.tsx │ │ │ │ ├── QueryField.tsx │ │ │ │ ├── README.md │ │ │ │ ├── constants.ts │ │ │ │ ├── datasource.test.ts │ │ │ │ ├── datasource.ts │ │ │ │ ├── img │ │ │ │ └── zipkin-logo.svg │ │ │ │ ├── mockJsonResponse.json │ │ │ │ ├── module.ts │ │ │ │ ├── package.json │ │ │ │ ├── plugin.json │ │ │ │ ├── tsconfig.json │ │ │ │ ├── types.ts │ │ │ │ ├── utils │ │ │ │ ├── graphTransform.test.ts │ │ │ │ ├── graphTransform.ts │ │ │ │ ├── testData.ts │ │ │ │ ├── testResponse.ts │ │ │ │ ├── transforms.test.ts │ │ │ │ └── transforms.ts │ │ │ │ └── webpack.config.ts │ │ ├── gen.go │ │ ├── panel │ │ │ ├── alertlist │ │ │ │ ├── AlertInstances.tsx │ │ │ │ ├── GroupByWithLoading.tsx │ │ │ │ ├── README.md │ │ │ │ ├── UnifiedAlertList.tsx │ │ │ │ ├── UnifiedalertList.test.tsx │ │ │ │ ├── img │ │ │ │ │ └── icn-singlestat-panel.svg │ │ │ │ ├── module.tsx │ │ │ │ ├── plugin.json │ │ │ │ ├── types.ts │ │ │ │ ├── unified-alerting │ │ │ │ │ ├── GroupedView.test.tsx │ │ │ │ │ ├── GroupedView.tsx │ │ │ │ │ └── UngroupedView.tsx │ │ │ │ ├── util.test.tsx │ │ │ │ └── util.ts │ │ │ ├── annolist │ │ │ │ ├── AnnoListPanel.test.tsx │ │ │ │ ├── AnnoListPanel.tsx │ │ │ │ ├── AnnotationListItem.tsx │ │ │ │ ├── README.md │ │ │ │ ├── img │ │ │ │ │ └── icn-annolist-panel.svg │ │ │ │ ├── module.tsx │ │ │ │ ├── panelcfg.cue │ │ │ │ ├── panelcfg.gen.ts │ │ │ │ └── plugin.json │ │ │ ├── barchart │ │ │ │ ├── BarChartLegend.tsx │ │ │ │ ├── BarChartPanel.tsx │ │ │ │ ├── README.md │ │ │ │ ├── TickSpacingEditor.tsx │ │ │ │ ├── __snapshots__ │ │ │ │ │ └── utils.test.ts.snap │ │ │ │ ├── bars.ts │ │ │ │ ├── distribute.ts │ │ │ │ ├── img │ │ │ │ │ └── barchart.svg │ │ │ │ ├── migrations.test.ts │ │ │ │ ├── migrations.ts │ │ │ │ ├── module.tsx │ │ │ │ ├── panelcfg.cue │ │ │ │ ├── panelcfg.gen.ts │ │ │ │ ├── plugin.json │ │ │ │ ├── quadtree.ts │ │ │ │ ├── suggestions.ts │ │ │ │ ├── types.ts │ │ │ │ ├── utils.test.ts │ │ │ │ └── utils.ts │ │ │ ├── bargauge │ │ │ │ ├── BarGaugeMigrations.test.ts │ │ │ │ ├── BarGaugeMigrations.ts │ │ │ │ ├── BarGaugePanel.test.tsx │ │ │ │ ├── BarGaugePanel.tsx │ │ │ │ ├── README.md │ │ │ │ ├── img │ │ │ │ │ └── icon_bar_gauge.svg │ │ │ │ ├── module.tsx │ │ │ │ ├── panelcfg.cue │ │ │ │ ├── panelcfg.gen.ts │ │ │ │ ├── plugin.json │ │ │ │ └── suggestions.ts │ │ │ ├── candlestick │ │ │ │ ├── CandlestickPanel.tsx │ │ │ │ ├── README.md │ │ │ │ ├── fields.test.ts │ │ │ │ ├── fields.ts │ │ │ │ ├── img │ │ │ │ │ └── candlestick.svg │ │ │ │ ├── module.tsx │ │ │ │ ├── panelcfg.cue │ │ │ │ ├── panelcfg.gen.ts │ │ │ │ ├── plugin.json │ │ │ │ ├── suggestions.ts │ │ │ │ ├── types.ts │ │ │ │ └── utils.ts │ │ │ ├── canvas │ │ │ │ ├── CanvasPanel.tsx │ │ │ │ ├── README.md │ │ │ │ ├── components │ │ │ │ │ ├── CanvasContextMenu.tsx │ │ │ │ │ ├── CanvasTooltip.tsx │ │ │ │ │ ├── SetBackground.tsx │ │ │ │ │ └── connections │ │ │ │ │ │ ├── ConnectionAnchors.tsx │ │ │ │ │ │ ├── ConnectionSVG.tsx │ │ │ │ │ │ └── Connections.tsx │ │ │ │ ├── editor │ │ │ │ │ ├── LineStyleEditor.tsx │ │ │ │ │ ├── connectionEditor.tsx │ │ │ │ │ ├── element │ │ │ │ │ │ ├── APIEditor.tsx │ │ │ │ │ │ ├── ButtonStyleEditor.tsx │ │ │ │ │ │ ├── ConstraintSelectionBox.tsx │ │ │ │ │ │ ├── ParamsEditor.tsx │ │ │ │ │ │ ├── PlacementEditor.tsx │ │ │ │ │ │ ├── QuickPositioning.tsx │ │ │ │ │ │ ├── elementEditor.tsx │ │ │ │ │ │ └── utils.ts │ │ │ │ │ ├── inline │ │ │ │ │ │ ├── InlineEdit.tsx │ │ │ │ │ │ ├── InlineEditBody.tsx │ │ │ │ │ │ └── TabsEditor.tsx │ │ │ │ │ ├── layer │ │ │ │ │ │ ├── TreeNavigationEditor.tsx │ │ │ │ │ │ ├── TreeNodeTitle.tsx │ │ │ │ │ │ ├── layerEditor.tsx │ │ │ │ │ │ └── tree.ts │ │ │ │ │ ├── options.ts │ │ │ │ │ └── panZoomHelp.tsx │ │ │ │ ├── globalStyles.ts │ │ │ │ ├── img │ │ │ │ │ └── icn-canvas.svg │ │ │ │ ├── migrations.ts │ │ │ │ ├── module.tsx │ │ │ │ ├── panelcfg.cue │ │ │ │ ├── panelcfg.gen.ts │ │ │ │ ├── plugin.json │ │ │ │ ├── types.ts │ │ │ │ └── utils.ts │ │ │ ├── dashlist │ │ │ │ ├── DashList.tsx │ │ │ │ ├── README.md │ │ │ │ ├── img │ │ │ │ │ └── icn-dashlist-panel.svg │ │ │ │ ├── migrations.test.ts │ │ │ │ ├── migrations.ts │ │ │ │ ├── module.tsx │ │ │ │ ├── panelcfg.cue │ │ │ │ ├── panelcfg.gen.ts │ │ │ │ ├── plugin.json │ │ │ │ └── styles.ts │ │ │ ├── datagrid │ │ │ │ ├── DataGridPanel.test.tsx │ │ │ │ ├── DataGridPanel.tsx │ │ │ │ ├── README.md │ │ │ │ ├── components │ │ │ │ │ ├── AddColumn.tsx │ │ │ │ │ ├── DatagridContextMenu.tsx │ │ │ │ │ ├── RenameColumnCell.tsx │ │ │ │ │ └── SimpleInput.tsx │ │ │ │ ├── featureFlagUtils.tsx │ │ │ │ ├── img │ │ │ │ │ └── icn-table-panel.svg │ │ │ │ ├── module.tsx │ │ │ │ ├── panelcfg.cue │ │ │ │ ├── panelcfg.gen.ts │ │ │ │ ├── plugin.json │ │ │ │ ├── state.ts │ │ │ │ ├── utils.test.ts │ │ │ │ └── utils.ts │ │ │ ├── debug │ │ │ │ ├── CursorView.tsx │ │ │ │ ├── DebugPanel.tsx │ │ │ │ ├── EventBusLogger.tsx │ │ │ │ ├── README.md │ │ │ │ ├── RenderInfoViewer.tsx │ │ │ │ ├── StateView.tsx │ │ │ │ ├── img │ │ │ │ │ └── icn-debug.svg │ │ │ │ ├── module.tsx │ │ │ │ ├── panelcfg.cue │ │ │ │ ├── panelcfg.gen.ts │ │ │ │ └── plugin.json │ │ │ ├── flamegraph │ │ │ │ ├── FlameGraphPanel.tsx │ │ │ │ ├── img │ │ │ │ │ └── icn-flamegraph.svg │ │ │ │ ├── module.tsx │ │ │ │ ├── plugin.json │ │ │ │ └── suggestions.ts │ │ │ ├── gauge │ │ │ │ ├── GaugeMigrations.test.ts │ │ │ │ ├── GaugeMigrations.ts │ │ │ │ ├── GaugePanel.tsx │ │ │ │ ├── __snapshots__ │ │ │ │ │ └── GaugeMigrations.test.ts.snap │ │ │ │ ├── img │ │ │ │ │ └── icon_gauge.svg │ │ │ │ ├── module.tsx │ │ │ │ ├── panelcfg.cue │ │ │ │ ├── panelcfg.gen.ts │ │ │ │ ├── plugin.json │ │ │ │ └── suggestions.ts │ │ │ ├── geomap │ │ │ │ ├── GeomapOverlay.tsx │ │ │ │ ├── GeomapPanel.tsx │ │ │ │ ├── GeomapTooltip.tsx │ │ │ │ ├── README.md │ │ │ │ ├── components │ │ │ │ │ ├── DebugOverlay.tsx │ │ │ │ │ ├── MarkersLegend.tsx │ │ │ │ │ ├── MeasureOverlay.tsx │ │ │ │ │ ├── MeasureVectorLayer.ts │ │ │ │ │ └── ObservablePropsWrapper.tsx │ │ │ │ ├── editor │ │ │ │ │ ├── CoordinatesMapViewEditor.tsx │ │ │ │ │ ├── FitMapViewEditor.tsx │ │ │ │ │ ├── FrameSelectionEditor.tsx │ │ │ │ │ ├── GeomapStyleRulesEditor.tsx │ │ │ │ │ ├── LayersEditor.tsx │ │ │ │ │ ├── MapViewEditor.tsx │ │ │ │ │ ├── StyleEditor.tsx │ │ │ │ │ ├── StyleRuleEditor.tsx │ │ │ │ │ └── layerEditor.tsx │ │ │ │ ├── event.ts │ │ │ │ ├── globalStyles.ts │ │ │ │ ├── img │ │ │ │ │ └── icn-geomap.svg │ │ │ │ ├── layers │ │ │ │ │ ├── basemaps │ │ │ │ │ │ ├── carto.ts │ │ │ │ │ │ ├── esri.ts │ │ │ │ │ │ ├── generic.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── osm.ts │ │ │ │ │ ├── data │ │ │ │ │ │ ├── dayNightLayer.tsx │ │ │ │ │ │ ├── geojsonDynamic.ts │ │ │ │ │ │ ├── geojsonLayer.ts │ │ │ │ │ │ ├── heatMap.tsx │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── lastPointTracker.ts │ │ │ │ │ │ ├── markersLayer.tsx │ │ │ │ │ │ ├── networkLayer.tsx │ │ │ │ │ │ ├── photosLayer.tsx │ │ │ │ │ │ └── routeLayer.tsx │ │ │ │ │ └── registry.ts │ │ │ │ ├── migrations.test.ts │ │ │ │ ├── migrations.ts │ │ │ │ ├── module.tsx │ │ │ │ ├── panelcfg.cue │ │ │ │ ├── panelcfg.gen.ts │ │ │ │ ├── plugin.json │ │ │ │ ├── style │ │ │ │ │ ├── markers.ts │ │ │ │ │ ├── types.ts │ │ │ │ │ ├── utils.test.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── types.ts │ │ │ │ ├── utils │ │ │ │ │ ├── actions.ts │ │ │ │ │ ├── checkFeatureMatchesStyleRule.test.ts │ │ │ │ │ ├── checkFeatureMatchesStyleRule.ts │ │ │ │ │ ├── getFeatures.test.ts │ │ │ │ │ ├── getFeatures.ts │ │ │ │ │ ├── getLayersExtent.ts │ │ │ │ │ ├── layers.ts │ │ │ │ │ ├── measure.test.ts │ │ │ │ │ ├── measure.ts │ │ │ │ │ ├── selection.ts │ │ │ │ │ ├── tooltip.ts │ │ │ │ │ ├── uiUtils.tsx │ │ │ │ │ └── utils.ts │ │ │ │ └── view.ts │ │ │ ├── gettingstarted │ │ │ │ ├── GettingStarted.tsx │ │ │ │ ├── README.md │ │ │ │ ├── components │ │ │ │ │ ├── DocsCard.tsx │ │ │ │ │ ├── Step.tsx │ │ │ │ │ ├── TutorialCard.tsx │ │ │ │ │ └── sharedStyles.ts │ │ │ │ ├── img │ │ │ │ │ └── icn-dashlist-panel.svg │ │ │ │ ├── module.ts │ │ │ │ ├── plugin.json │ │ │ │ ├── steps.ts │ │ │ │ └── types.ts │ │ │ ├── graph │ │ │ │ ├── GraphContextMenuCtrl.ts │ │ │ │ ├── GraphMigrations.test.ts │ │ │ │ ├── GraphMigrations.ts │ │ │ │ ├── Legend │ │ │ │ │ ├── Legend.tsx │ │ │ │ │ └── LegendSeriesItem.tsx │ │ │ │ ├── README.md │ │ │ │ ├── align_yaxes.ts │ │ │ │ ├── annotation_tooltip.ts │ │ │ │ ├── axes_editor.html │ │ │ │ ├── axes_editor.ts │ │ │ │ ├── data_processor.ts │ │ │ │ ├── event_editor.ts │ │ │ │ ├── event_manager.ts │ │ │ │ ├── graph.ts │ │ │ │ ├── graph_tooltip.d.ts │ │ │ │ ├── graph_tooltip.ts │ │ │ │ ├── histogram.ts │ │ │ │ ├── img │ │ │ │ │ └── icn-graph-panel.svg │ │ │ │ ├── jquery.flot.events.ts │ │ │ │ ├── module.ts │ │ │ │ ├── plugin.json │ │ │ │ ├── series_overrides_ctrl.ts │ │ │ │ ├── specs │ │ │ │ │ ├── __snapshots__ │ │ │ │ │ │ └── data_processor.test.ts.snap │ │ │ │ │ ├── align_yaxes.test.ts │ │ │ │ │ ├── data_processor.test.ts │ │ │ │ │ ├── graph.test.ts │ │ │ │ │ ├── graph_ctrl.test.ts │ │ │ │ │ ├── graph_tooltip.test.ts │ │ │ │ │ ├── histogram.test.ts │ │ │ │ │ ├── series_override_ctrl.test.ts │ │ │ │ │ ├── threshold_manager.test.ts │ │ │ │ │ └── time_region_manager.test.ts │ │ │ │ ├── tab_display.html │ │ │ │ ├── tab_legend.html │ │ │ │ ├── tab_series_overrides.html │ │ │ │ ├── tab_thresholds.html │ │ │ │ ├── tab_time_regions.html │ │ │ │ ├── template.ts │ │ │ │ ├── threshold_manager.ts │ │ │ │ ├── thresholds_form.html │ │ │ │ ├── thresholds_form.ts │ │ │ │ ├── time_region_manager.ts │ │ │ │ ├── time_regions_form.html │ │ │ │ ├── time_regions_form.ts │ │ │ │ ├── types.ts │ │ │ │ ├── utils.test.ts │ │ │ │ └── utils.ts │ │ │ ├── heatmap │ │ │ │ ├── ExemplarModalHeader.tsx │ │ │ │ ├── HeatmapPanel.tsx │ │ │ │ ├── HeatmapTooltip.tsx │ │ │ │ ├── README.md │ │ │ │ ├── fields.test.ts │ │ │ │ ├── fields.ts │ │ │ │ ├── img │ │ │ │ │ └── icn-heatmap-panel.svg │ │ │ │ ├── migrations.test.ts │ │ │ │ ├── migrations.ts │ │ │ │ ├── module.tsx │ │ │ │ ├── palettes.ts │ │ │ │ ├── panelcfg.cue │ │ │ │ ├── panelcfg.gen.ts │ │ │ │ ├── partials │ │ │ │ │ ├── axes_editor.html │ │ │ │ │ └── display_editor.html │ │ │ │ ├── plugin.json │ │ │ │ ├── renderHistogram.tsx │ │ │ │ ├── suggestions.ts │ │ │ │ ├── tooltip │ │ │ │ │ ├── tooltipUtils.test.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── types.ts │ │ │ │ ├── utils.test.ts │ │ │ │ └── utils.ts │ │ │ ├── histogram │ │ │ │ ├── Histogram.tsx │ │ │ │ ├── HistogramPanel.tsx │ │ │ │ ├── config.ts │ │ │ │ ├── img │ │ │ │ │ └── histogram.svg │ │ │ │ ├── migrations.test.ts │ │ │ │ ├── migrations.ts │ │ │ │ ├── module.tsx │ │ │ │ ├── panelcfg.cue │ │ │ │ ├── panelcfg.gen.ts │ │ │ │ ├── plugin.json │ │ │ │ └── utils.ts │ │ │ ├── live │ │ │ │ ├── LiveChannelEditor.tsx │ │ │ │ ├── LivePanel.tsx │ │ │ │ ├── LivePublish.tsx │ │ │ │ ├── img │ │ │ │ │ └── live.svg │ │ │ │ ├── module.tsx │ │ │ │ ├── plugin.json │ │ │ │ └── types.ts │ │ │ ├── logs │ │ │ │ ├── LogsPanel.test.tsx │ │ │ │ ├── LogsPanel.tsx │ │ │ │ ├── img │ │ │ │ │ └── icn-logs-panel.svg │ │ │ │ ├── module.tsx │ │ │ │ ├── panelcfg.cue │ │ │ │ ├── panelcfg.gen.ts │ │ │ │ ├── plugin.json │ │ │ │ ├── suggestions.ts │ │ │ │ ├── types.ts │ │ │ │ ├── useDatasourcesFromTargets.test.ts │ │ │ │ └── useDatasourcesFromTargets.ts │ │ │ ├── news │ │ │ │ ├── NewsPanel.tsx │ │ │ │ ├── README.md │ │ │ │ ├── atom.test.ts │ │ │ │ ├── atom.ts │ │ │ │ ├── component │ │ │ │ │ └── News.tsx │ │ │ │ ├── constants.ts │ │ │ │ ├── feed.ts │ │ │ │ ├── fixtures │ │ │ │ │ ├── atom.xml │ │ │ │ │ └── rss.xml │ │ │ │ ├── img │ │ │ │ │ └── news.svg │ │ │ │ ├── module.tsx │ │ │ │ ├── panelcfg.cue │ │ │ │ ├── panelcfg.gen.ts │ │ │ │ ├── plugin.json │ │ │ │ ├── rss.test.ts │ │ │ │ ├── rss.ts │ │ │ │ ├── types.ts │ │ │ │ ├── useNewsFeed.tsx │ │ │ │ ├── utils.test.ts │ │ │ │ └── utils.ts │ │ │ ├── nodeGraph │ │ │ │ ├── Edge.tsx │ │ │ │ ├── EdgeArrowMarker.tsx │ │ │ │ ├── EdgeLabel.tsx │ │ │ │ ├── Legend.test.tsx │ │ │ │ ├── Legend.tsx │ │ │ │ ├── Marker.tsx │ │ │ │ ├── Node.test.tsx │ │ │ │ ├── Node.tsx │ │ │ │ ├── NodeGraph.test.tsx │ │ │ │ ├── NodeGraph.tsx │ │ │ │ ├── NodeGraphPanel.tsx │ │ │ │ ├── README.md │ │ │ │ ├── ViewControls.tsx │ │ │ │ ├── createLayoutWorker.ts │ │ │ │ ├── editor │ │ │ │ │ └── ArcOptionsEditor.tsx │ │ │ │ ├── forceLayout.js │ │ │ │ ├── img │ │ │ │ │ └── icn-node-graph.svg │ │ │ │ ├── index.ts │ │ │ │ ├── layeredLayout.js │ │ │ │ ├── layeredLayout.test.ts │ │ │ │ ├── layeredLayout.worker.js │ │ │ │ ├── layout.test.ts │ │ │ │ ├── layout.ts │ │ │ │ ├── layout.worker.js │ │ │ │ ├── module.tsx │ │ │ │ ├── panelcfg.cue │ │ │ │ ├── panelcfg.gen.ts │ │ │ │ ├── plugin.json │ │ │ │ ├── suggestions.ts │ │ │ │ ├── types.ts │ │ │ │ ├── useCategorizeFrames.ts │ │ │ │ ├── useContextMenu.tsx │ │ │ │ ├── useFocusPositionOnLayout.ts │ │ │ │ ├── useHighlight.ts │ │ │ │ ├── useNodeLimit.ts │ │ │ │ ├── usePanning.ts │ │ │ │ ├── useZoom.ts │ │ │ │ ├── utils.test.ts │ │ │ │ └── utils.ts │ │ │ ├── piechart │ │ │ │ ├── PieChart.tsx │ │ │ │ ├── PieChartPanel.test.tsx │ │ │ │ ├── PieChartPanel.tsx │ │ │ │ ├── img │ │ │ │ │ └── icon_piechart.svg │ │ │ │ ├── migrations.test.ts │ │ │ │ ├── migrations.ts │ │ │ │ ├── module.tsx │ │ │ │ ├── panelcfg.cue │ │ │ │ ├── panelcfg.gen.ts │ │ │ │ ├── plugin.json │ │ │ │ ├── suggestions.ts │ │ │ │ └── utils.ts │ │ │ ├── stat │ │ │ │ ├── README.md │ │ │ │ ├── StatMigrations.test.ts │ │ │ │ ├── StatMigrations.ts │ │ │ │ ├── StatPanel.tsx │ │ │ │ ├── common.ts │ │ │ │ ├── img │ │ │ │ │ └── icn-singlestat-panel.svg │ │ │ │ ├── module.tsx │ │ │ │ ├── panelcfg.cue │ │ │ │ ├── panelcfg.gen.ts │ │ │ │ ├── plugin.json │ │ │ │ └── suggestions.ts │ │ │ ├── state-timeline │ │ │ │ ├── StateTimelinePanel.tsx │ │ │ │ ├── StateTimelineTooltip2.tsx │ │ │ │ ├── __snapshots__ │ │ │ │ │ └── migrations.test.ts.snap │ │ │ │ ├── img │ │ │ │ │ └── timeline.svg │ │ │ │ ├── migrations.test.ts │ │ │ │ ├── migrations.ts │ │ │ │ ├── module.tsx │ │ │ │ ├── panelcfg.cue │ │ │ │ ├── panelcfg.gen.ts │ │ │ │ ├── plugin.json │ │ │ │ └── suggestions.ts │ │ │ ├── status-history │ │ │ │ ├── StatusHistoryPanel.tsx │ │ │ │ ├── img │ │ │ │ │ └── status.svg │ │ │ │ ├── module.tsx │ │ │ │ ├── panelcfg.cue │ │ │ │ ├── panelcfg.gen.ts │ │ │ │ ├── plugin.json │ │ │ │ ├── suggestions.ts │ │ │ │ └── utils.ts │ │ │ ├── table-old │ │ │ │ ├── README.md │ │ │ │ ├── column_options.html │ │ │ │ ├── column_options.ts │ │ │ │ ├── editor.html │ │ │ │ ├── editor.ts │ │ │ │ ├── img │ │ │ │ │ └── icn-table-panel.svg │ │ │ │ ├── module.html │ │ │ │ ├── module.ts │ │ │ │ ├── plugin.json │ │ │ │ ├── renderer.ts │ │ │ │ ├── specs │ │ │ │ │ ├── renderer.test.ts │ │ │ │ │ └── transformers.test.ts │ │ │ │ ├── transformers.ts │ │ │ │ └── types.ts │ │ │ ├── table │ │ │ │ ├── PaginationEditor.tsx │ │ │ │ ├── README.md │ │ │ │ ├── TableCellOptionEditor.tsx │ │ │ │ ├── TablePanel.tsx │ │ │ │ ├── __snapshots__ │ │ │ │ │ └── migrations.test.ts.snap │ │ │ │ ├── cells │ │ │ │ │ ├── BarGaugeCellOptionsEditor.tsx │ │ │ │ │ ├── ColorBackgroundCellOptionsEditor.tsx │ │ │ │ │ └── SparklineCellOptionsEditor.tsx │ │ │ │ ├── img │ │ │ │ │ └── icn-table-panel.svg │ │ │ │ ├── migrations.test.ts │ │ │ │ ├── migrations.ts │ │ │ │ ├── module.tsx │ │ │ │ ├── panelcfg.cue │ │ │ │ ├── panelcfg.gen.ts │ │ │ │ ├── plugin.json │ │ │ │ └── suggestions.ts │ │ │ ├── text │ │ │ │ ├── README.md │ │ │ │ ├── TextPanel.test.tsx │ │ │ │ ├── TextPanel.tsx │ │ │ │ ├── TextPanelEditor.tsx │ │ │ │ ├── img │ │ │ │ │ └── icn-text-panel.svg │ │ │ │ ├── module.tsx │ │ │ │ ├── panelcfg.cue │ │ │ │ ├── panelcfg.gen.ts │ │ │ │ ├── plugin.json │ │ │ │ ├── textPanelMigrationHandler.test.ts │ │ │ │ └── textPanelMigrationHandler.ts │ │ │ ├── timeseries │ │ │ │ ├── InsertNullsEditor.tsx │ │ │ │ ├── LineStyleEditor.tsx │ │ │ │ ├── NullsThresholdInput.tsx │ │ │ │ ├── README.md │ │ │ │ ├── SpanNullsEditor.tsx │ │ │ │ ├── ThresholdsStyleEditor.tsx │ │ │ │ ├── TimeSeriesPanel.tsx │ │ │ │ ├── TimeSeriesTooltip.tsx │ │ │ │ ├── TimezonesEditor.tsx │ │ │ │ ├── __snapshots__ │ │ │ │ │ └── migrations.test.ts.snap │ │ │ │ ├── config.ts │ │ │ │ ├── img │ │ │ │ │ ├── icn-graph-panel.svg │ │ │ │ │ └── icn-timeseries-panel.svg │ │ │ │ ├── migrations.test.ts │ │ │ │ ├── migrations.ts │ │ │ │ ├── module.tsx │ │ │ │ ├── overrides │ │ │ │ │ ├── colorSeriesConfigFactory.test.ts │ │ │ │ │ └── colorSeriesConfigFactory.ts │ │ │ │ ├── panelcfg.cue │ │ │ │ ├── panelcfg.gen.ts │ │ │ │ ├── plugin.json │ │ │ │ ├── plugins │ │ │ │ │ ├── AnnotationsPlugin2.tsx │ │ │ │ │ ├── ExemplarMarker.tsx │ │ │ │ │ ├── ExemplarsPlugin.test.tsx │ │ │ │ │ ├── ExemplarsPlugin.tsx │ │ │ │ │ ├── OutsideRangePlugin.tsx │ │ │ │ │ ├── ThresholdControlsPlugin.tsx │ │ │ │ │ ├── ThresholdDragHandle.tsx │ │ │ │ │ └── annotations2 │ │ │ │ │ │ ├── AnnotationEditor2.tsx │ │ │ │ │ │ ├── AnnotationMarker2.tsx │ │ │ │ │ │ └── AnnotationTooltip2.tsx │ │ │ │ ├── suggestions.ts │ │ │ │ ├── utils.test.ts │ │ │ │ └── utils.ts │ │ │ ├── traces │ │ │ │ ├── README.md │ │ │ │ ├── TracesPanel.test.tsx │ │ │ │ ├── TracesPanel.tsx │ │ │ │ ├── img │ │ │ │ │ └── traces-panel.svg │ │ │ │ ├── module.tsx │ │ │ │ ├── plugin.json │ │ │ │ └── suggestions.ts │ │ │ ├── trend │ │ │ │ ├── TrendPanel.tsx │ │ │ │ ├── img │ │ │ │ │ └── trend.svg │ │ │ │ ├── module.tsx │ │ │ │ ├── panelcfg.cue │ │ │ │ ├── panelcfg.gen.ts │ │ │ │ ├── plugin.json │ │ │ │ └── suggestions.ts │ │ │ ├── welcome │ │ │ │ ├── README.md │ │ │ │ ├── Welcome.tsx │ │ │ │ ├── img │ │ │ │ │ ├── background_light.svg │ │ │ │ │ └── icn-dashlist-panel.svg │ │ │ │ ├── module.ts │ │ │ │ └── plugin.json │ │ │ └── xychart │ │ │ │ ├── AutoEditor.tsx │ │ │ │ ├── ManualEditor.tsx │ │ │ │ ├── README.md │ │ │ │ ├── ScatterSeriesEditor.tsx │ │ │ │ ├── SymbolEditor.tsx │ │ │ │ ├── XYChartPanel.tsx │ │ │ │ ├── XYChartTooltip.test.tsx │ │ │ │ ├── XYChartTooltip.tsx │ │ │ │ ├── config.ts │ │ │ │ ├── dims.ts │ │ │ │ ├── img │ │ │ │ └── icn-xychart.svg │ │ │ │ ├── module.tsx │ │ │ │ ├── panelcfg.cue │ │ │ │ ├── panelcfg.gen.ts │ │ │ │ ├── plugin.json │ │ │ │ ├── scatter.ts │ │ │ │ ├── types.ts │ │ │ │ ├── utils.ts │ │ │ │ └── v2 │ │ │ │ ├── README.md │ │ │ │ ├── SeriesEditor.tsx │ │ │ │ ├── XYChartPanel.tsx │ │ │ │ ├── XYChartTooltip.tsx │ │ │ │ ├── config.ts │ │ │ │ ├── migrations.test.ts │ │ │ │ ├── migrations.ts │ │ │ │ ├── module.tsx │ │ │ │ ├── panelcfg.cue │ │ │ │ ├── panelcfg.gen.ts │ │ │ │ ├── plugin.json │ │ │ │ ├── scatter.ts │ │ │ │ ├── types2.ts │ │ │ │ └── utils.ts │ │ └── sdk.ts │ ├── routes │ │ ├── routes.tsx │ │ ├── utils.test.ts │ │ └── utils.ts │ ├── store │ │ ├── configureStore.ts │ │ └── store.ts │ └── types │ │ ├── accessControl.ts │ │ ├── acl.ts │ │ ├── alerting.ts │ │ ├── apiKeys.ts │ │ ├── appEvent.ts │ │ ├── appNotifications.ts │ │ ├── config.ts │ │ ├── dashboard.ts │ │ ├── datasources.ts │ │ ├── events.ts │ │ ├── explore.ts │ │ ├── folders.ts │ │ ├── index.ts │ │ ├── jquery │ │ └── jquery.d.ts │ │ ├── ldap.ts │ │ ├── location.ts │ │ ├── organization.ts │ │ ├── plugins.ts │ │ ├── query.ts │ │ ├── serviceaccount.ts │ │ ├── settings.ts │ │ ├── store.ts │ │ ├── suggestions.ts │ │ ├── supportBundles.ts │ │ ├── svg.d.ts │ │ ├── teams.ts │ │ ├── templates.ts │ │ ├── unified-alerting-dto.test.ts │ │ ├── unified-alerting-dto.ts │ │ ├── unified-alerting.ts │ │ ├── user.ts │ │ └── window.d.ts ├── dashboards │ ├── default.json │ ├── home.json │ ├── scripted.js │ ├── scripted_async.js │ ├── scripted_templated.js │ └── template_vars.json ├── emails │ ├── README.md │ ├── alert_notification.html │ ├── alert_notification.txt │ ├── alert_notification_example.html │ ├── invited_to_org.html │ ├── invited_to_org.txt │ ├── new_user_invite.html │ ├── new_user_invite.txt │ ├── ng_alert_notification.html │ ├── ng_alert_notification.txt │ ├── reset_password.html │ ├── reset_password.txt │ ├── signup_started.html │ ├── signup_started.txt │ ├── verify_email.html │ ├── verify_email.txt │ ├── welcome_on_signup.html │ └── welcome_on_signup.txt ├── fonts │ ├── FontAwesome.otf │ ├── fontawesome-webfont.eot │ ├── fontawesome-webfont.svg │ ├── fontawesome-webfont.ttf │ ├── fontawesome-webfont.woff │ ├── fontawesome-webfont.woff2 │ ├── grafana-icons.eot │ ├── grafana-icons.svg │ ├── grafana-icons.ttf │ ├── grafana-icons.woff │ ├── inter │ │ ├── Inter-Medium.woff2 │ │ └── Inter-Regular.woff2 │ └── roboto │ │ └── L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSh0mQ.woff2 ├── gazetteer │ ├── airports.geojson │ ├── countries.json │ └── usa-states.json ├── img │ ├── alert_howto_new.png │ ├── alerting │ │ ├── at_a_glance_dark.svg │ │ ├── at_a_glance_light.svg │ │ ├── mimir_logo.svg │ │ ├── mimir_logo_recording.svg │ │ ├── oncall_logo.svg │ │ ├── welcome_cta_bg_dark.svg │ │ └── welcome_cta_bg_light.svg │ ├── angle_gradient_light_rev.png │ ├── angle_gradient_rev.png │ ├── apple-touch-icon.png │ ├── background_tease.jpg │ ├── bg │ │ ├── p0.png │ │ ├── p1.png │ │ ├── p2.png │ │ ├── p3.png │ │ ├── p4.png │ │ ├── p5.png │ │ └── p6.png │ ├── browserconfig.xml │ ├── check_radio_sheet.png │ ├── checkbox.png │ ├── checkbox_white.png │ ├── critical.svg │ ├── cubes.png │ ├── enterprise │ │ └── highlights │ │ │ ├── datasource-insights-dark.png │ │ │ ├── datasource-insights-light.png │ │ │ ├── ds-permissions-dark.png │ │ │ ├── ds-permissions-light.png │ │ │ ├── query-caching-dark.png │ │ │ ├── query-caching-light.png │ │ │ ├── recorded-queries-dark.png │ │ │ ├── recorded-queries-light.png │ │ │ ├── reporting-email.png │ │ │ ├── team-sync-dark.png │ │ │ ├── team-sync-light.png │ │ │ ├── usage-insights-dark.png │ │ │ └── usage-insights-light.png │ ├── envelope.png │ ├── fav32.png │ ├── g8_home_v2.svg │ ├── g8_login_dark.svg │ ├── g8_login_light.svg │ ├── getting_started_bg_dark.svg │ ├── getting_started_bg_light.svg │ ├── glyphicons-halflings-white.png │ ├── glyphicons-halflings.png │ ├── grab_dark.svg │ ├── grab_light.svg │ ├── grafana_com_auth_icon.svg │ ├── grafana_enterprise_typelogo.svg │ ├── grafana_icon.svg │ ├── grafana_mask_icon.svg │ ├── grafana_mask_icon_white.svg │ ├── grafana_net_logo.svg │ ├── grafana_text_logo-dark.svg │ ├── grafana_text_logo-light.svg │ ├── grafana_text_logo_dark.svg │ ├── grafana_text_logo_light.svg │ ├── grafana_typelogo.svg │ ├── grafanaconline.png │ ├── graph404.svg │ ├── grot-news.svg │ ├── heatmap_bg_test.svg │ ├── icn-app.svg │ ├── icn-dashboard-tiny.svg │ ├── icn-dashboard.svg │ ├── icn-datasource.svg │ ├── icn-panel.svg │ ├── icn-plugins-tiny.svg │ ├── icn-renderer.svg │ ├── icn-row.svg │ ├── icons │ │ ├── README.md │ │ ├── custom │ │ │ ├── gf-bar-alignment-after.svg │ │ │ ├── gf-bar-alignment-before.svg │ │ │ ├── gf-bar-alignment-center.svg │ │ │ ├── gf-glue.svg │ │ │ ├── gf-grid.svg │ │ │ ├── gf-interpolation-linear.svg │ │ │ ├── gf-interpolation-smooth.svg │ │ │ ├── gf-interpolation-step-after.svg │ │ │ ├── gf-interpolation-step-before.svg │ │ │ ├── gf-landscape.svg │ │ │ ├── gf-layout-simple.svg │ │ │ ├── gf-logs.svg │ │ │ ├── gf-ml.svg │ │ │ ├── gf-movepane-left.svg │ │ │ ├── gf-movepane-right.svg │ │ │ ├── gf-pin.svg │ │ │ ├── gf-portrait.svg │ │ │ ├── gf-prometheus.svg │ │ │ ├── gf-service-account.svg │ │ │ ├── gf-show-context.svg │ │ │ └── gf-traces.svg │ │ ├── iot │ │ │ ├── drone.svg │ │ │ ├── faucet.svg │ │ │ └── pump.svg │ │ ├── marker │ │ │ ├── circle.svg │ │ │ ├── cross.svg │ │ │ ├── plane.svg │ │ │ ├── square.svg │ │ │ ├── star.svg │ │ │ ├── triangle.svg │ │ │ └── x-mark.svg │ │ ├── mono │ │ │ ├── apps.svg │ │ │ ├── bell.svg │ │ │ ├── circle-mono.svg │ │ │ ├── circle.svg │ │ │ ├── cog.svg │ │ │ ├── favorite.svg │ │ │ ├── folder-plus.svg │ │ │ ├── folder.svg │ │ │ ├── grafana.svg │ │ │ ├── heart-break.svg │ │ │ ├── heart.svg │ │ │ ├── import.svg │ │ │ ├── library-panel.svg │ │ │ ├── panel-add.svg │ │ │ ├── plus-square.svg │ │ │ ├── shield.svg │ │ │ └── square-shape.svg │ │ ├── solid │ │ │ ├── LICENSE_APACHE2 │ │ │ ├── NOTICE.txt │ │ │ ├── airplay.svg │ │ │ ├── align-alt.svg │ │ │ ├── align-center-justify.svg │ │ │ ├── align-center.svg │ │ │ ├── align-justify.svg │ │ │ ├── align-left-justify.svg │ │ │ ├── align-left.svg │ │ │ ├── align-letter-right.svg │ │ │ ├── align-right-justify.svg │ │ │ ├── align-right.svg │ │ │ ├── analysis.svg │ │ │ ├── analytics.svg │ │ │ ├── anchor.svg │ │ │ ├── angle-double-down.svg │ │ │ ├── angle-double-left.svg │ │ │ ├── angle-double-right.svg │ │ │ ├── angle-double-up.svg │ │ │ ├── angle-down.svg │ │ │ ├── angle-left.svg │ │ │ ├── angle-right-b.svg │ │ │ ├── angle-right.svg │ │ │ ├── angle-up.svg │ │ │ ├── apps.svg │ │ │ ├── arrow-circle-down.svg │ │ │ ├── arrow-circle-left.svg │ │ │ ├── arrow-circle-right.svg │ │ │ ├── arrow-circle-up.svg │ │ │ ├── arrow-down-left.svg │ │ │ ├── arrow-down-right.svg │ │ │ ├── arrow-up-left.svg │ │ │ ├── arrow-up-right.svg │ │ │ ├── at.svg │ │ │ ├── bag.svg │ │ │ ├── bars.svg │ │ │ ├── battery-bolt.svg │ │ │ ├── battery-empty.svg │ │ │ ├── bookmark.svg │ │ │ ├── border-alt.svg │ │ │ ├── border-bottom.svg │ │ │ ├── border-clear.svg │ │ │ ├── border-horizontal.svg │ │ │ ├── border-inner.svg │ │ │ ├── border-left.svg │ │ │ ├── border-out.svg │ │ │ ├── border-right.svg │ │ │ ├── border-top.svg │ │ │ ├── border-vertical.svg │ │ │ ├── briefcase.svg │ │ │ ├── calender.svg │ │ │ ├── chart-pie.svg │ │ │ ├── chart.svg │ │ │ ├── check-circle.svg │ │ │ ├── check-square.svg │ │ │ ├── check.svg │ │ │ ├── circle-layer.svg │ │ │ ├── clinic-medical.svg │ │ │ ├── clock-eight.svg │ │ │ ├── clock-five.svg │ │ │ ├── clock-nine.svg │ │ │ ├── clock-seven.svg │ │ │ ├── clock-ten.svg │ │ │ ├── clock-three.svg │ │ │ ├── clock-two.svg │ │ │ ├── clock.svg │ │ │ ├── columns.svg │ │ │ ├── comment-dots.svg │ │ │ ├── compress.svg │ │ │ ├── corner-down-left.svg │ │ │ ├── corner-down-right.svg │ │ │ ├── corner-left-down.svg │ │ │ ├── corner-right-down.svg │ │ │ ├── corner-up-left.svg │ │ │ ├── corner-up-right.svg │ │ │ ├── coronavirus.svg │ │ │ ├── dialpad.svg │ │ │ ├── direction.svg │ │ │ ├── document-layout-center.svg │ │ │ ├── document-layout-left.svg │ │ │ ├── document-layout-right.svg │ │ │ ├── download-alt.svg │ │ │ ├── ellipsis-h.svg │ │ │ ├── ellipsis-v.svg │ │ │ ├── exclamation-circle.svg │ │ │ ├── exclamation-octagon.svg │ │ │ ├── exclamation-triangle.svg │ │ │ ├── favorite.svg │ │ │ ├── flip-h-alt.svg │ │ │ ├── flip-h.svg │ │ │ ├── flip-v-alt.svg │ │ │ ├── flip-v.svg │ │ │ ├── graph-bar.svg │ │ │ ├── grid.svg │ │ │ ├── grids.svg │ │ │ ├── grip-horizontal-line.svg │ │ │ ├── head-side-cough.svg │ │ │ ├── head-side-mask.svg │ │ │ ├── head-side.svg │ │ │ ├── history-alt.svg │ │ │ ├── history.svg │ │ │ ├── horizontal-align-left.svg │ │ │ ├── hospital-square-sign.svg │ │ │ ├── hospital-symbol.svg │ │ │ ├── hospital.svg │ │ │ ├── house-user.svg │ │ │ ├── image-v.svg │ │ │ ├── key-skeleton-alt.svg │ │ │ ├── key-skeleton.svg │ │ │ ├── keyhole-circle.svg │ │ │ ├── keyhole-square-full.svg │ │ │ ├── keyhole-square.svg │ │ │ ├── layer-group.svg │ │ │ ├── layers-alt.svg │ │ │ ├── left-indent-alt.svg │ │ │ ├── left-indent.svg │ │ │ ├── line-spacing.svg │ │ │ ├── link-h.svg │ │ │ ├── list-ui-alt.svg │ │ │ ├── list-ul.svg │ │ │ ├── lock-access.svg │ │ │ ├── lock-alt.svg │ │ │ ├── lock-open-alt.svg │ │ │ ├── lock.svg │ │ │ ├── microscope.svg │ │ │ ├── minus-square-full.svg │ │ │ ├── multiply.svg │ │ │ ├── object-group.svg │ │ │ ├── object-ungroup.svg │ │ │ ├── padlock.svg │ │ │ ├── paperclip.svg │ │ │ ├── paragraph.svg │ │ │ ├── pentagon.svg │ │ │ ├── polygon.svg │ │ │ ├── previous.svg │ │ │ ├── process.svg │ │ │ ├── record-audio.svg │ │ │ ├── redo.svg │ │ │ ├── refresh.svg │ │ │ ├── repeat.svg │ │ │ ├── right-indent-alt.svg │ │ │ ├── right-indent.svg │ │ │ ├── rocket.svg │ │ │ ├── ruler-combined.svg │ │ │ ├── ruler.svg │ │ │ ├── sanitizer-alt.svg │ │ │ ├── sanitizer.svg │ │ │ ├── scenery.svg │ │ │ ├── schedule.svg │ │ │ ├── shield-plus.svg │ │ │ ├── signal-alt-3.svg │ │ │ ├── signal-alt.svg │ │ │ ├── signout.svg │ │ │ ├── social-distancing.svg │ │ │ ├── sorting.svg │ │ │ ├── space-key.svg │ │ │ ├── square-full.svg │ │ │ ├── star-half-alt.svg │ │ │ ├── star.svg │ │ │ ├── step-forward.svg │ │ │ ├── stethoscope-alt.svg │ │ │ ├── stethoscope.svg │ │ │ ├── stopwatch.svg │ │ │ ├── store-slash.svg │ │ │ ├── subject.svg │ │ │ ├── sync-exclamation.svg │ │ │ ├── sync-slash.svg │ │ │ ├── table.svg │ │ │ ├── th-large.svg │ │ │ ├── times-circle.svg │ │ │ ├── toggle-off.svg │ │ │ ├── toggle-on.svg │ │ │ ├── toilet-paper.svg │ │ │ ├── triangle.svg │ │ │ ├── unlock-alt.svg │ │ │ ├── unlock.svg │ │ │ ├── upload-alt.svg │ │ │ ├── user-arrows.svg │ │ │ ├── user-md.svg │ │ │ ├── user-nurse.svg │ │ │ ├── vector-square-alt.svg │ │ │ ├── vector-square.svg │ │ │ ├── virus-slash.svg │ │ │ ├── web-grid-alt.svg │ │ │ ├── web-grid.svg │ │ │ ├── web-section-alt.svg │ │ │ ├── web-section.svg │ │ │ ├── window-grid.svg │ │ │ ├── window-maximize.svg │ │ │ ├── window-section.svg │ │ │ └── wrap-text.svg │ │ └── unicons │ │ │ ├── 0-plus.svg │ │ │ ├── 10-plus.svg │ │ │ ├── 12-plus.svg │ │ │ ├── 13-plus.svg │ │ │ ├── 16-plus.svg │ │ │ ├── 17-plus.svg │ │ │ ├── 18-plus.svg │ │ │ ├── 21-plus.svg │ │ │ ├── 3-plus.svg │ │ │ ├── 500px.svg │ │ │ ├── 6-plus.svg │ │ │ ├── LICENSE_APACHE2 │ │ │ ├── NOTICE.txt │ │ │ ├── abacus.svg │ │ │ ├── accessible-icon-alt.svg │ │ │ ├── add-user.svg │ │ │ ├── adjust-alt.svg │ │ │ ├── adjust-circle.svg │ │ │ ├── adjust-half.svg │ │ │ ├── adjust.svg │ │ │ ├── adobe-alt.svg │ │ │ ├── adobe.svg │ │ │ ├── ai.svg │ │ │ ├── airplay.svg │ │ │ ├── align-alt.svg │ │ │ ├── align-center-alt.svg │ │ │ ├── align-center-h.svg │ │ │ ├── align-center-justify.svg │ │ │ ├── align-center-v.svg │ │ │ ├── align-center.svg │ │ │ ├── align-justify.svg │ │ │ ├── align-left-justify.svg │ │ │ ├── align-left.svg │ │ │ ├── align-letter-right.svg │ │ │ ├── align-right-justify.svg │ │ │ ├── align-right.svg │ │ │ ├── align.svg │ │ │ ├── amazon.svg │ │ │ ├── ambulance.svg │ │ │ ├── analysis.svg │ │ │ ├── analytics.svg │ │ │ ├── anchor.svg │ │ │ ├── android-alt.svg │ │ │ ├── android-phone-slash.svg │ │ │ ├── android.svg │ │ │ ├── angle-double-down.svg │ │ │ ├── angle-double-left.svg │ │ │ ├── angle-double-right.svg │ │ │ ├── angle-double-up.svg │ │ │ ├── angle-down.svg │ │ │ ├── angle-left-b.svg │ │ │ ├── angle-left.svg │ │ │ ├── angle-right-b.svg │ │ │ ├── angle-right.svg │ │ │ ├── angle-up.svg │ │ │ ├── angry.svg │ │ │ ├── ankh.svg │ │ │ ├── annoyed-alt.svg │ │ │ ├── annoyed.svg │ │ │ ├── apple-alt.svg │ │ │ ├── apple.svg │ │ │ ├── application-observability.svg │ │ │ ├── apps.svg │ │ │ ├── archive-alt.svg │ │ │ ├── archive.svg │ │ │ ├── archway.svg │ │ │ ├── arrow-break.svg │ │ │ ├── arrow-circle-down.svg │ │ │ ├── arrow-circle-left.svg │ │ │ ├── arrow-circle-right.svg │ │ │ ├── arrow-circle-up.svg │ │ │ ├── arrow-compress-h.svg │ │ │ ├── arrow-down-left.svg │ │ │ ├── arrow-down-right.svg │ │ │ ├── arrow-down.svg │ │ │ ├── arrow-from-right.svg │ │ │ ├── arrow-from-top.svg │ │ │ ├── arrow-growth.svg │ │ │ ├── arrow-left.svg │ │ │ ├── arrow-random.svg │ │ │ ├── arrow-resize-diagonal.svg │ │ │ ├── arrow-right.svg │ │ │ ├── arrow-to-bottom.svg │ │ │ ├── arrow-to-right.svg │ │ │ ├── arrow-up-left.svg │ │ │ ├── arrow-up-right.svg │ │ │ ├── arrow-up.svg │ │ │ ├── arrow.svg │ │ │ ├── arrows-h-alt.svg │ │ │ ├── arrows-h.svg │ │ │ ├── arrows-left-down.svg │ │ │ ├── arrows-maximize.svg │ │ │ ├── arrows-merge.svg │ │ │ ├── arrows-resize-h.svg │ │ │ ├── arrows-resize-v.svg │ │ │ ├── arrows-resize.svg │ │ │ ├── arrows-right-down.svg │ │ │ ├── arrows-shrink-h.svg │ │ │ ├── arrows-shrink-v.svg │ │ │ ├── arrows-up-right.svg │ │ │ ├── arrows-v-alt.svg │ │ │ ├── arrows-v.svg │ │ │ ├── asserts.svg │ │ │ ├── assistive-listening-systems.svg │ │ │ ├── asterisk.svg │ │ │ ├── at.svg │ │ │ ├── atom.svg │ │ │ ├── attach.svg │ │ │ ├── auto-flash.svg │ │ │ ├── award-alt.svg │ │ │ ├── award.svg │ │ │ ├── baby-carriage.svg │ │ │ ├── backpack.svg │ │ │ ├── backspace.svg │ │ │ ├── backward.svg │ │ │ ├── bag-alt.svg │ │ │ ├── bag-slash.svg │ │ │ ├── bag.svg │ │ │ ├── balance-scale.svg │ │ │ ├── ban.svg │ │ │ ├── band-aid.svg │ │ │ ├── bars.svg │ │ │ ├── baseball-ball.svg │ │ │ ├── basketball-hoop.svg │ │ │ ├── basketball.svg │ │ │ ├── bath.svg │ │ │ ├── battery-bolt.svg │ │ │ ├── battery-empty.svg │ │ │ ├── bed-double.svg │ │ │ ├── bed.svg │ │ │ ├── behance-alt.svg │ │ │ ├── behance.svg │ │ │ ├── bell-school.svg │ │ │ ├── bell-slash.svg │ │ │ ├── bell.svg │ │ │ ├── bill.svg │ │ │ ├── bing.svg │ │ │ ├── bitcoin-alt.svg │ │ │ ├── bitcoin-circle.svg │ │ │ ├── bitcoin-sign.svg │ │ │ ├── bitcoin.svg │ │ │ ├── black-berry.svg │ │ │ ├── blogger-alt.svg │ │ │ ├── blogger.svg │ │ │ ├── bluetooth-b.svg │ │ │ ├── bold.svg │ │ │ ├── bolt-alt.svg │ │ │ ├── bolt-slash.svg │ │ │ ├── bolt.svg │ │ │ ├── book-alt.svg │ │ │ ├── book-medical.svg │ │ │ ├── book-open.svg │ │ │ ├── book-reader.svg │ │ │ ├── book.svg │ │ │ ├── bookmark-full.svg │ │ │ ├── bookmark.svg │ │ │ ├── books.svg │ │ │ ├── boombox.svg │ │ │ ├── border-alt.svg │ │ │ ├── border-bottom.svg │ │ │ ├── border-clear.svg │ │ │ ├── border-horizontal.svg │ │ │ ├── border-inner.svg │ │ │ ├── border-left.svg │ │ │ ├── border-out.svg │ │ │ ├── border-right.svg │ │ │ ├── border-top.svg │ │ │ ├── border-vertical.svg │ │ │ ├── bowling-ball.svg │ │ │ ├── box.svg │ │ │ ├── brackets-curly.svg │ │ │ ├── brain.svg │ │ │ ├── briefcase-alt.svg │ │ │ ├── briefcase.svg │ │ │ ├── bright.svg │ │ │ ├── brightness-empty.svg │ │ │ ├── brightness-half.svg │ │ │ ├── brightness-low.svg │ │ │ ├── brightness-minus.svg │ │ │ ├── brightness-plus.svg │ │ │ ├── brightness.svg │ │ │ ├── bring-bottom.svg │ │ │ ├── bring-front.svg │ │ │ ├── browser.svg │ │ │ ├── brush-alt.svg │ │ │ ├── bug.svg │ │ │ ├── building.svg │ │ │ ├── bullseye.svg │ │ │ ├── bus-alt.svg │ │ │ ├── bus-school.svg │ │ │ ├── bus.svg │ │ │ ├── calculator-alt.svg │ │ │ ├── calculator.svg │ │ │ ├── calendar-alt.svg │ │ │ ├── calendar-slash.svg │ │ │ ├── calender.svg │ │ │ ├── calling.svg │ │ │ ├── camera-change.svg │ │ │ ├── camera-plus.svg │ │ │ ├── camera-slash.svg │ │ │ ├── camera.svg │ │ │ ├── cancel.svg │ │ │ ├── capsule.svg │ │ │ ├── capture.svg │ │ │ ├── car-sideview.svg │ │ │ ├── car-slash.svg │ │ │ ├── car-wash.svg │ │ │ ├── car.svg │ │ │ ├── card-atm.svg │ │ │ ├── caret-right.svg │ │ │ ├── cell.svg │ │ │ ├── celsius.svg │ │ │ ├── channel-add.svg │ │ │ ├── channel.svg │ │ │ ├── chart-bar-alt.svg │ │ │ ├── chart-bar.svg │ │ │ ├── chart-down.svg │ │ │ ├── chart-growth-alt.svg │ │ │ ├── chart-growth.svg │ │ │ ├── chart-line.svg │ │ │ ├── chart-pie-alt.svg │ │ │ ├── chart-pie.svg │ │ │ ├── chart.svg │ │ │ ├── chat-bubble-user.svg │ │ │ ├── chat-info.svg │ │ │ ├── chat.svg │ │ │ ├── check-circle.svg │ │ │ ├── check-square.svg │ │ │ ├── check.svg │ │ │ ├── circle-layer.svg │ │ │ ├── circle.svg │ │ │ ├── circuit.svg │ │ │ ├── clapper-board.svg │ │ │ ├── clinic-medical.svg │ │ │ ├── clipboard-alt.svg │ │ │ ├── clipboard-blank.svg │ │ │ ├── clipboard-notes.svg │ │ │ ├── clipboard.svg │ │ │ ├── clock-eight.svg │ │ │ ├── clock-five.svg │ │ │ ├── clock-nine.svg │ │ │ ├── clock-seven.svg │ │ │ ├── clock-ten.svg │ │ │ ├── clock-three.svg │ │ │ ├── clock-two.svg │ │ │ ├── clock.svg │ │ │ ├── closed-captioning-slash.svg │ │ │ ├── closed-captioning.svg │ │ │ ├── cloud-block.svg │ │ │ ├── cloud-bookmark.svg │ │ │ ├── cloud-check.svg │ │ │ ├── cloud-computing.svg │ │ │ ├── cloud-data-connection.svg │ │ │ ├── cloud-database-tree.svg │ │ │ ├── cloud-download.svg │ │ │ ├── cloud-drizzle.svg │ │ │ ├── cloud-exclamation.svg │ │ │ ├── cloud-hail.svg │ │ │ ├── cloud-heart.svg │ │ │ ├── cloud-info.svg │ │ │ ├── cloud-lock.svg │ │ │ ├── cloud-meatball.svg │ │ │ ├── cloud-moon-hail.svg │ │ │ ├── cloud-moon-meatball.svg │ │ │ ├── cloud-moon-rain.svg │ │ │ ├── cloud-moon-showers.svg │ │ │ ├── cloud-moon.svg │ │ │ ├── cloud-question.svg │ │ │ ├── cloud-rain-sun.svg │ │ │ ├── cloud-rain.svg │ │ │ ├── cloud-redo.svg │ │ │ ├── cloud-share.svg │ │ │ ├── cloud-shield.svg │ │ │ ├── cloud-showers-alt.svg │ │ │ ├── cloud-showers-heavy.svg │ │ │ ├── cloud-showers.svg │ │ │ ├── cloud-slash.svg │ │ │ ├── cloud-sun-hail.svg │ │ │ ├── cloud-sun-meatball.svg │ │ │ ├── cloud-sun-rain-alt.svg │ │ │ ├── cloud-sun-rain.svg │ │ │ ├── cloud-sun-tear.svg │ │ │ ├── cloud-sun.svg │ │ │ ├── cloud-times.svg │ │ │ ├── cloud-unlock.svg │ │ │ ├── cloud-upload.svg │ │ │ ├── cloud-wifi.svg │ │ │ ├── cloud-wind.svg │ │ │ ├── cloud.svg │ │ │ ├── clouds.svg │ │ │ ├── club.svg │ │ │ ├── code-branch.svg │ │ │ ├── coffee.svg │ │ │ ├── cog.svg │ │ │ ├── coins.svg │ │ │ ├── columns.svg │ │ │ ├── comment-add.svg │ │ │ ├── comment-alt-block.svg │ │ │ ├── comment-alt-chart-lines.svg │ │ │ ├── comment-alt-check.svg │ │ │ ├── comment-alt-dots.svg │ │ │ ├── comment-alt-download.svg │ │ │ ├── comment-alt-edit.svg │ │ │ ├── comment-alt-exclamation.svg │ │ │ ├── comment-alt-heart.svg │ │ │ ├── comment-alt-image.svg │ │ │ ├── comment-alt-info.svg │ │ │ ├── comment-alt-lines.svg │ │ │ ├── comment-alt-lock.svg │ │ │ ├── comment-alt-medical.svg │ │ │ ├── comment-alt-message.svg │ │ │ ├── comment-alt-notes.svg │ │ │ ├── comment-alt-plus.svg │ │ │ ├── comment-alt-question.svg │ │ │ ├── comment-alt-redo.svg │ │ │ ├── comment-alt-search.svg │ │ │ ├── comment-alt-share.svg │ │ │ ├── comment-alt-shield.svg │ │ │ ├── comment-alt-slash.svg │ │ │ ├── comment-alt-upload.svg │ │ │ ├── comment-alt-verify.svg │ │ │ ├── comment-alt.svg │ │ │ ├── comment-block.svg │ │ │ ├── comment-chart-line.svg │ │ │ ├── comment-check.svg │ │ │ ├── comment-dots.svg │ │ │ ├── comment-download.svg │ │ │ ├── comment-edit.svg │ │ │ ├── comment-exclamation.svg │ │ │ ├── comment-heart.svg │ │ │ ├── comment-image.svg │ │ │ ├── comment-info-alt.svg │ │ │ ├── comment-info.svg │ │ │ ├── comment-lines.svg │ │ │ ├── comment-lock.svg │ │ │ ├── comment-medical.svg │ │ │ ├── comment-message.svg │ │ │ ├── comment-notes.svg │ │ │ ├── comment-plus.svg │ │ │ ├── comment-question.svg │ │ │ ├── comment-redo.svg │ │ │ ├── comment-search.svg │ │ │ ├── comment-share.svg │ │ │ ├── comment-shield.svg │ │ │ ├── comment-slash.svg │ │ │ ├── comment-upload.svg │ │ │ ├── comment-verify.svg │ │ │ ├── comment.svg │ │ │ ├── comments-alt.svg │ │ │ ├── comments.svg │ │ │ ├── compact-disc.svg │ │ │ ├── comparison.svg │ │ │ ├── compass.svg │ │ │ ├── compress-alt-left.svg │ │ │ ├── compress-alt.svg │ │ │ ├── compress-arrows.svg │ │ │ ├── compress-lines.svg │ │ │ ├── compress-point.svg │ │ │ ├── compress-v.svg │ │ │ ├── compress.svg │ │ │ ├── confused.svg │ │ │ ├── constructor.svg │ │ │ ├── copy-alt.svg │ │ │ ├── copy-landscape.svg │ │ │ ├── copy.svg │ │ │ ├── copyright.svg │ │ │ ├── corner-down-left.svg │ │ │ ├── corner-down-right-alt.svg │ │ │ ├── corner-down-right.svg │ │ │ ├── corner-left-down.svg │ │ │ ├── corner-right-down.svg │ │ │ ├── corner-up-left-alt.svg │ │ │ ├── corner-up-left.svg │ │ │ ├── corner-up-right-alt.svg │ │ │ ├── corner-up-right.svg │ │ │ ├── coronavirus.svg │ │ │ ├── create-dashboard.svg │ │ │ ├── creative-commons-pd.svg │ │ │ ├── credit-card-search.svg │ │ │ ├── credit-card.svg │ │ │ ├── crockery.svg │ │ │ ├── crop-alt-rotate-left.svg │ │ │ ├── crop-alt-rotate-right.svg │ │ │ ├── crop-alt.svg │ │ │ ├── crosshair-alt.svg │ │ │ ├── crosshair.svg │ │ │ ├── crosshairs.svg │ │ │ ├── css3-simple.svg │ │ │ ├── cube.svg │ │ │ ├── dashboard.svg │ │ │ ├── data-sharing.svg │ │ │ ├── database-alt.svg │ │ │ ├── database.svg │ │ │ ├── desert.svg │ │ │ ├── desktop-alt-slash.svg │ │ │ ├── desktop-alt.svg │ │ │ ├── desktop-cloud-alt.svg │ │ │ ├── desktop-slash.svg │ │ │ ├── desktop.svg │ │ │ ├── dialpad-alt.svg │ │ │ ├── dialpad.svg │ │ │ ├── diamond.svg │ │ │ ├── diary-alt.svg │ │ │ ├── diary.svg │ │ │ ├── dice-five.svg │ │ │ ├── dice-four.svg │ │ │ ├── dice-one.svg │ │ │ ├── dice-six.svg │ │ │ ├── dice-three.svg │ │ │ ├── dice-two.svg │ │ │ ├── direction.svg │ │ │ ├── directions.svg │ │ │ ├── discord.svg │ │ │ ├── dizzy-meh.svg │ │ │ ├── dna.svg │ │ │ ├── docker.svg │ │ │ ├── document-info.svg │ │ │ ├── document-layout-center.svg │ │ │ ├── document-layout-left.svg │ │ │ ├── document-layout-right.svg │ │ │ ├── dollar-alt.svg │ │ │ ├── dollar-sign-alt.svg │ │ │ ├── dollar-sign.svg │ │ │ ├── download-alt.svg │ │ │ ├── draggabledots.svg │ │ │ ├── dribbble.svg │ │ │ ├── drill.svg │ │ │ ├── dropbox.svg │ │ │ ├── dumbbell.svg │ │ │ ├── ear.svg │ │ │ ├── edit-alt.svg │ │ │ ├── edit.svg │ │ │ ├── elipsis-double-v-alt.svg │ │ │ ├── ellipsis-h.svg │ │ │ ├── ellipsis-v.svg │ │ │ ├── emoji.svg │ │ │ ├── english-to-chinese.svg │ │ │ ├── enter.svg │ │ │ ├── envelope-add.svg │ │ │ ├── envelope-alt.svg │ │ │ ├── envelope-block.svg │ │ │ ├── envelope-bookmark.svg │ │ │ ├── envelope-check.svg │ │ │ ├── envelope-download-alt.svg │ │ │ ├── envelope-download.svg │ │ │ ├── envelope-edit.svg │ │ │ ├── envelope-exclamation.svg │ │ │ ├── envelope-heart.svg │ │ │ ├── envelope-info.svg │ │ │ ├── envelope-lock.svg │ │ │ ├── envelope-minus.svg │ │ │ ├── envelope-open.svg │ │ │ ├── envelope-question.svg │ │ │ ├── envelope-receive.svg │ │ │ ├── envelope-redo.svg │ │ │ ├── envelope-search.svg │ │ │ ├── envelope-send.svg │ │ │ ├── envelope-share.svg │ │ │ ├── envelope-shield.svg │ │ │ ├── envelope-star.svg │ │ │ ├── envelope-times.svg │ │ │ ├── envelope-upload-alt.svg │ │ │ ├── envelope-upload.svg │ │ │ ├── envelope.svg │ │ │ ├── envelopes.svg │ │ │ ├── equal-circle.svg │ │ │ ├── estate.svg │ │ │ ├── euro-circle.svg │ │ │ ├── euro.svg │ │ │ ├── exchange-alt.svg │ │ │ ├── exchange.svg │ │ │ ├── exclamation-circle.svg │ │ │ ├── exclamation-octagon.svg │ │ │ ├── exclamation-triangle.svg │ │ │ ├── exclamation.svg │ │ │ ├── exclude.svg │ │ │ ├── exit.svg │ │ │ ├── expand-alt.svg │ │ │ ├── expand-arrows-alt.svg │ │ │ ├── expand-arrows.svg │ │ │ ├── expand-from-corner.svg │ │ │ ├── expand-left.svg │ │ │ ├── expand-right.svg │ │ │ ├── export.svg │ │ │ ├── exposure-alt.svg │ │ │ ├── exposure-increase.svg │ │ │ ├── external-link-alt.svg │ │ │ ├── eye-slash.svg │ │ │ ├── eye.svg │ │ │ ├── facebook-f.svg │ │ │ ├── facebook-messenger-alt.svg │ │ │ ├── facebook-messenger.svg │ │ │ ├── facebook.svg │ │ │ ├── fahrenheit.svg │ │ │ ├── fast-mail-alt.svg │ │ │ ├── fast-mail.svg │ │ │ ├── favorite.svg │ │ │ ├── feedback.svg │ │ │ ├── fidget-spinner.svg │ │ │ ├── file-alt.svg │ │ │ ├── file-blank.svg │ │ │ ├── file-block-alt.svg │ │ │ ├── file-bookmark-alt.svg │ │ │ ├── file-check-alt.svg │ │ │ ├── file-check.svg │ │ │ ├── file-contract-dollar.svg │ │ │ ├── file-contract.svg │ │ │ ├── file-copy-alt.svg │ │ │ ├── file-download-alt.svg │ │ │ ├── file-download.svg │ │ │ ├── file-edit-alt.svg │ │ │ ├── file-exclamation-alt.svg │ │ │ ├── file-exclamation.svg │ │ │ ├── file-export.svg │ │ │ ├── file-graph.svg │ │ │ ├── file-heart.svg │ │ │ ├── file-import.svg │ │ │ ├── file-info-alt.svg │ │ │ ├── file-landscape-alt.svg │ │ │ ├── file-landscape.svg │ │ │ ├── file-lanscape-slash.svg │ │ │ ├── file-lock-alt.svg │ │ │ ├── file-medical-alt.svg │ │ │ ├── file-medical.svg │ │ │ ├── file-minus-alt.svg │ │ │ ├── file-minus.svg │ │ │ ├── file-network.svg │ │ │ ├── file-plus-alt.svg │ │ │ ├── file-plus.svg │ │ │ ├── file-question-alt.svg │ │ │ ├── file-question.svg │ │ │ ├── file-redo-alt.svg │ │ │ ├── file-search-alt.svg │ │ │ ├── file-share-alt.svg │ │ │ ├── file-shield-alt.svg │ │ │ ├── file-slash.svg │ │ │ ├── file-times-alt.svg │ │ │ ├── file-times.svg │ │ │ ├── file-upload-alt.svg │ │ │ ├── file-upload.svg │ │ │ ├── file.svg │ │ │ ├── files-landscapes-alt.svg │ │ │ ├── files-landscapes.svg │ │ │ ├── film.svg │ │ │ ├── filter-slash.svg │ │ │ ├── filter.svg │ │ │ ├── fire.svg │ │ │ ├── flask-potion.svg │ │ │ ├── flask.svg │ │ │ ├── flip-h-alt.svg │ │ │ ├── flip-h.svg │ │ │ ├── flip-v-alt.svg │ │ │ ├── flip-v.svg │ │ │ ├── flip.svg │ │ │ ├── flower.svg │ │ │ ├── focus-add.svg │ │ │ ├── focus-target.svg │ │ │ ├── focus.svg │ │ │ ├── folder-check.svg │ │ │ ├── folder-download.svg │ │ │ ├── folder-exclamation.svg │ │ │ ├── folder-heart.svg │ │ │ ├── folder-info.svg │ │ │ ├── folder-lock.svg │ │ │ ├── folder-medical.svg │ │ │ ├── folder-minus.svg │ │ │ ├── folder-network.svg │ │ │ ├── folder-open.svg │ │ │ ├── folder-plus.svg │ │ │ ├── folder-question.svg │ │ │ ├── folder-slash.svg │ │ │ ├── folder-times.svg │ │ │ ├── folder-upload.svg │ │ │ ├── folder.svg │ │ │ ├── font.svg │ │ │ ├── football-american.svg │ │ │ ├── football-ball.svg │ │ │ ├── football.svg │ │ │ ├── forecastcloud-moon-tear.svg │ │ │ ├── forwaded-call.svg │ │ │ ├── forward.svg │ │ │ ├── frontend-observability.svg │ │ │ ├── frown.svg │ │ │ ├── game-structure.svg │ │ │ ├── gift.svg │ │ │ ├── github-alt.svg │ │ │ ├── github.svg │ │ │ ├── gitlab.svg │ │ │ ├── glass-martini-alt-slash.svg │ │ │ ├── glass-martini-alt.svg │ │ │ ├── glass-martini.svg │ │ │ ├── glass-tea.svg │ │ │ ├── glass.svg │ │ │ ├── globe.svg │ │ │ ├── gold.svg │ │ │ ├── golf-ball.svg │ │ │ ├── google-drive-alt.svg │ │ │ ├── google-drive.svg │ │ │ ├── google-hangouts-alt.svg │ │ │ ├── google-hangouts.svg │ │ │ ├── google-play.svg │ │ │ ├── google.svg │ │ │ ├── graduation-cap.svg │ │ │ ├── graph-bar.svg │ │ │ ├── grid.svg │ │ │ ├── grids.svg │ │ │ ├── grin-tongue-wink-alt.svg │ │ │ ├── grin-tongue-wink.svg │ │ │ ├── grin.svg │ │ │ ├── grip-horizontal-line.svg │ │ │ ├── hard-hat.svg │ │ │ ├── hdd.svg │ │ │ ├── head-side-cough.svg │ │ │ ├── head-side-mask.svg │ │ │ ├── head-side.svg │ │ │ ├── headphone-slash.svg │ │ │ ├── headphones-alt.svg │ │ │ ├── headphones.svg │ │ │ ├── heart-alt.svg │ │ │ ├── heart-break.svg │ │ │ ├── heart-medical.svg │ │ │ ├── heart-rate.svg │ │ │ ├── heart-sign.svg │ │ │ ├── heart.svg │ │ │ ├── heartbeat.svg │ │ │ ├── hindi-to-chinese.svg │ │ │ ├── hipchat.svg │ │ │ ├── history-alt.svg │ │ │ ├── history.svg │ │ │ ├── home-alt.svg │ │ │ ├── home.svg │ │ │ ├── horizontal-align-center.svg │ │ │ ├── horizontal-align-left.svg │ │ │ ├── horizontal-align-right.svg │ │ │ ├── horizontal-distribution-center.svg │ │ │ ├── horizontal-distribution-left.svg │ │ │ ├── horizontal-distribution-right.svg │ │ │ ├── hospital-square-sign.svg │ │ │ ├── hospital-symbol.svg │ │ │ ├── hospital.svg │ │ │ ├── hourglass.svg │ │ │ ├── house-user.svg │ │ │ ├── html3-alt.svg │ │ │ ├── html3.svg │ │ │ ├── html5-alt.svg │ │ │ ├── html5.svg │ │ │ ├── hunting.svg │ │ │ ├── icons.svg │ │ │ ├── illustration.svg │ │ │ ├── image-alt-slash.svg │ │ │ ├── image-block.svg │ │ │ ├── image-broken.svg │ │ │ ├── image-check.svg │ │ │ ├── image-download.svg │ │ │ ├── image-edit.svg │ │ │ ├── image-lock.svg │ │ │ ├── image-minus.svg │ │ │ ├── image-plus.svg │ │ │ ├── image-question.svg │ │ │ ├── image-redo.svg │ │ │ ├── image-resize-landscape.svg │ │ │ ├── image-resize-square.svg │ │ │ ├── image-search.svg │ │ │ ├── image-share.svg │ │ │ ├── image-shield.svg │ │ │ ├── image-slash.svg │ │ │ ├── image-times.svg │ │ │ ├── image-upload.svg │ │ │ ├── image-v.svg │ │ │ ├── image.svg │ │ │ ├── images.svg │ │ │ ├── import.svg │ │ │ ├── inbox.svg │ │ │ ├── incoming-call.svg │ │ │ ├── info-circle.svg │ │ │ ├── info.svg │ │ │ ├── instagram-alt.svg │ │ │ ├── instagram.svg │ │ │ ├── intercom-alt.svg │ │ │ ├── intercom.svg │ │ │ ├── invoice.svg │ │ │ ├── italic.svg │ │ │ ├── jackhammer.svg │ │ │ ├── java-script.svg │ │ │ ├── k6.svg │ │ │ ├── kayak.svg │ │ │ ├── key-skeleton-alt.svg │ │ │ ├── key-skeleton.svg │ │ │ ├── keyboard-alt.svg │ │ │ ├── keyboard-hide.svg │ │ │ ├── keyboard-show.svg │ │ │ ├── keyboard.svg │ │ │ ├── keyhole-circle.svg │ │ │ ├── keyhole-square-full.svg │ │ │ ├── keyhole-square.svg │ │ │ ├── kid.svg │ │ │ ├── kubernetes.svg │ │ │ ├── label-alt.svg │ │ │ ├── label.svg │ │ │ ├── lamp.svg │ │ │ ├── language.svg │ │ │ ├── laptop-cloud.svg │ │ │ ├── laptop-connection.svg │ │ │ ├── laptop.svg │ │ │ ├── laughing.svg │ │ │ ├── layer-group-slash.svg │ │ │ ├── layer-group.svg │ │ │ ├── layers-alt.svg │ │ │ ├── layers-slash.svg │ │ │ ├── layers.svg │ │ │ ├── left-arrow-from-left.svg │ │ │ ├── left-arrow-to-left.svg │ │ │ ├── left-indent-alt.svg │ │ │ ├── left-indent.svg │ │ │ ├── left-to-right-text-direction.svg │ │ │ ├── letter-chinese-a.svg │ │ │ ├── letter-english-a.svg │ │ │ ├── letter-hindi-a.svg │ │ │ ├── letter-japanese-a.svg │ │ │ ├── life-ring.svg │ │ │ ├── lightbulb-alt.svg │ │ │ ├── lightbulb.svg │ │ │ ├── line-alt.svg │ │ │ ├── line-spacing.svg │ │ │ ├── line.svg │ │ │ ├── link-add.svg │ │ │ ├── link-alt.svg │ │ │ ├── link-broken.svg │ │ │ ├── link-h.svg │ │ │ ├── link.svg │ │ │ ├── linkedin-alt.svg │ │ │ ├── linkedin.svg │ │ │ ├── linux.svg │ │ │ ├── lira-sign.svg │ │ │ ├── list-ol-alt.svg │ │ │ ├── list-ol.svg │ │ │ ├── list-ui-alt.svg │ │ │ ├── list-ul.svg │ │ │ ├── location-arrow-alt.svg │ │ │ ├── location-arrow.svg │ │ │ ├── location-pin-alt.svg │ │ │ ├── location-point.svg │ │ │ ├── lock-access.svg │ │ │ ├── lock-alt.svg │ │ │ ├── lock-open-alt.svg │ │ │ ├── lock-slash.svg │ │ │ ├── lock.svg │ │ │ ├── lottiefiles-alt.svg │ │ │ ├── lottiefiles.svg │ │ │ ├── luggage-cart.svg │ │ │ ├── mailbox-alt.svg │ │ │ ├── mailbox.svg │ │ │ ├── map-marker-alt.svg │ │ │ ├── map-marker-edit.svg │ │ │ ├── map-marker-info.svg │ │ │ ├── map-marker-minus.svg │ │ │ ├── map-marker-plus.svg │ │ │ ├── map-marker-question.svg │ │ │ ├── map-marker-shield.svg │ │ │ ├── map-marker-slash.svg │ │ │ ├── map-marker.svg │ │ │ ├── map-pin-alt.svg │ │ │ ├── map-pin.svg │ │ │ ├── map.svg │ │ │ ├── mars.svg │ │ │ ├── master-card.svg │ │ │ ├── maximize-left.svg │ │ │ ├── medal.svg │ │ │ ├── medical-drip.svg │ │ │ ├── medical-square-full.svg │ │ │ ├── medical-square.svg │ │ │ ├── medium-m.svg │ │ │ ├── medkit.svg │ │ │ ├── meeting-board.svg │ │ │ ├── megaphone.svg │ │ │ ├── meh-alt.svg │ │ │ ├── meh-closed-eye.svg │ │ │ ├── meh.svg │ │ │ ├── message.svg │ │ │ ├── metro.svg │ │ │ ├── microphone-slash.svg │ │ │ ├── microphone.svg │ │ │ ├── microscope.svg │ │ │ ├── microsoft.svg │ │ │ ├── minus-circle.svg │ │ │ ├── minus-path.svg │ │ │ ├── minus-square-full.svg │ │ │ ├── minus-square.svg │ │ │ ├── minus.svg │ │ │ ├── missed-call.svg │ │ │ ├── mobile-android-alt.svg │ │ │ ├── mobile-android.svg │ │ │ ├── mobile-vibrate.svg │ │ │ ├── modem.svg │ │ │ ├── money-bill-slash.svg │ │ │ ├── money-bill-stack.svg │ │ │ ├── money-bill.svg │ │ │ ├── money-insert.svg │ │ │ ├── money-stack.svg │ │ │ ├── money-withdraw.svg │ │ │ ├── money-withdrawal.svg │ │ │ ├── moneybag-alt.svg │ │ │ ├── moneybag.svg │ │ │ ├── monitor-heart-rate.svg │ │ │ ├── monitor.svg │ │ │ ├── moon-eclipse.svg │ │ │ ├── moon.svg │ │ │ ├── moonset.svg │ │ │ ├── mountains-sun.svg │ │ │ ├── mountains.svg │ │ │ ├── mouse-alt-2.svg │ │ │ ├── mouse-alt.svg │ │ │ ├── mouse.svg │ │ │ ├── multiply.svg │ │ │ ├── music-note.svg │ │ │ ├── music-tune-slash.svg │ │ │ ├── music.svg │ │ │ ├── n-a.svg │ │ │ ├── navigator.svg │ │ │ ├── nerd.svg │ │ │ ├── newspaper.svg │ │ │ ├── ninja.svg │ │ │ ├── no-entry.svg │ │ │ ├── notebooks.svg │ │ │ ├── notes.svg │ │ │ ├── object-group.svg │ │ │ ├── object-ungroup.svg │ │ │ ├── octagon.svg │ │ │ ├── okta.svg │ │ │ ├── opera-alt.svg │ │ │ ├── opera.svg │ │ │ ├── outgoing-call.svg │ │ │ ├── package.svg │ │ │ ├── padlock.svg │ │ │ ├── pagelines.svg │ │ │ ├── pagerduty.svg │ │ │ ├── paint-tool.svg │ │ │ ├── palette.svg │ │ │ ├── panel-add.svg │ │ │ ├── panorama-h-alt.svg │ │ │ ├── panorama-h.svg │ │ │ ├── panorama-v.svg │ │ │ ├── paperclip.svg │ │ │ ├── paragraph.svg │ │ │ ├── parcel.svg │ │ │ ├── parking-circle.svg │ │ │ ├── parking-square.svg │ │ │ ├── pathfinder-unite.svg │ │ │ ├── pathfinder.svg │ │ │ ├── pause-circle.svg │ │ │ ├── pause.svg │ │ │ ├── paypal.svg │ │ │ ├── pen.svg │ │ │ ├── pentagon.svg │ │ │ ├── percentage.svg │ │ │ ├── phone-alt.svg │ │ │ ├── phone-pause.svg │ │ │ ├── phone-slash.svg │ │ │ ├── phone-times.svg │ │ │ ├── phone-volume.svg │ │ │ ├── phone.svg │ │ │ ├── picture.svg │ │ │ ├── pizza-slice.svg │ │ │ ├── plane-arrival.svg │ │ │ ├── plane-departure.svg │ │ │ ├── plane-fly.svg │ │ │ ├── plane.svg │ │ │ ├── play-circle.svg │ │ │ ├── play.svg │ │ │ ├── plug.svg │ │ │ ├── plus-circle.svg │ │ │ ├── plus-square.svg │ │ │ ├── plus.svg │ │ │ ├── podium.svg │ │ │ ├── polygon.svg │ │ │ ├── post-stamp.svg │ │ │ ├── postcard.svg │ │ │ ├── pound-circle.svg │ │ │ ├── pound.svg │ │ │ ├── power.svg │ │ │ ├── prescription-bottle.svg │ │ │ ├── presentation-check.svg │ │ │ ├── presentation-edit.svg │ │ │ ├── presentation-line.svg │ │ │ ├── presentation-lines-alt.svg │ │ │ ├── presentation-minus.svg │ │ │ ├── presentation-play.svg │ │ │ ├── presentation-plus.svg │ │ │ ├── presentation-times.svg │ │ │ ├── presentation.svg │ │ │ ├── previous.svg │ │ │ ├── pricetag-alt.svg │ │ │ ├── print-slash.svg │ │ │ ├── print.svg │ │ │ ├── process.svg │ │ │ ├── processor.svg │ │ │ ├── programming-language.svg │ │ │ ├── pump.svg │ │ │ ├── puzzle-piece.svg │ │ │ ├── qrcode-scan.svg │ │ │ ├── question-circle.svg │ │ │ ├── question.svg │ │ │ ├── rainbow.svg │ │ │ ├── raindrops-alt.svg │ │ │ ├── raindrops.svg │ │ │ ├── react.svg │ │ │ ├── receipt-alt.svg │ │ │ ├── receipt.svg │ │ │ ├── record-audio.svg │ │ │ ├── reddit-alien-alt.svg │ │ │ ├── redo.svg │ │ │ ├── refresh.svg │ │ │ ├── registered.svg │ │ │ ├── repeat.svg │ │ │ ├── restaurant.svg │ │ │ ├── right-indent-alt.svg │ │ │ ├── right-to-left-text-direction.svg │ │ │ ├── robot.svg │ │ │ ├── rocket.svg │ │ │ ├── rope-way.svg │ │ │ ├── rotate-360.svg │ │ │ ├── rss-alt.svg │ │ │ ├── rss-interface.svg │ │ │ ├── rss.svg │ │ │ ├── ruler-combined.svg │ │ │ ├── ruler.svg │ │ │ ├── rupee-sign.svg │ │ │ ├── sad-cry.svg │ │ │ ├── sad-crying.svg │ │ │ ├── sad-dizzy.svg │ │ │ ├── sad-squint.svg │ │ │ ├── sad.svg │ │ │ ├── sanitizer-alt.svg │ │ │ ├── sanitizer.svg │ │ │ ├── save.svg │ │ │ ├── scaling-left.svg │ │ │ ├── scaling-right.svg │ │ │ ├── scenery.svg │ │ │ ├── schedule.svg │ │ │ ├── screw.svg │ │ │ ├── scroll-h.svg │ │ │ ├── scroll.svg │ │ │ ├── search-alt.svg │ │ │ ├── search-minus.svg │ │ │ ├── search-plus.svg │ │ │ ├── search.svg │ │ │ ├── selfie.svg │ │ │ ├── server-alt.svg │ │ │ ├── server-connection.svg │ │ │ ├── server-network-alt.svg │ │ │ ├── server-network.svg │ │ │ ├── server.svg │ │ │ ├── servers.svg │ │ │ ├── servicemark.svg │ │ │ ├── setting.svg │ │ │ ├── share-alt.svg │ │ │ ├── share.svg │ │ │ ├── shield-check.svg │ │ │ ├── shield-exclamation.svg │ │ │ ├── shield-plus.svg │ │ │ ├── shield-question.svg │ │ │ ├── shield-slash.svg │ │ │ ├── shield.svg │ │ │ ├── ship.svg │ │ │ ├── shop.svg │ │ │ ├── shopping-bag.svg │ │ │ ├── shopping-basket.svg │ │ │ ├── shopping-cart-alt.svg │ │ │ ├── shopping-cart.svg │ │ │ ├── shovel.svg │ │ │ ├── shrink.svg │ │ │ ├── shuffle.svg │ │ │ ├── shutter-alt.svg │ │ │ ├── shutter.svg │ │ │ ├── sick.svg │ │ │ ├── sigma.svg │ │ │ ├── sign-alt.svg │ │ │ ├── sign-in-alt.svg │ │ │ ├── sign-left.svg │ │ │ ├── sign-out-alt.svg │ │ │ ├── sign-right.svg │ │ │ ├── signal-alt-3.svg │ │ │ ├── signal-alt.svg │ │ │ ├── signal.svg │ │ │ ├── signin.svg │ │ │ ├── signout.svg │ │ │ ├── silence.svg │ │ │ ├── silent-squint.svg │ │ │ ├── sim-card.svg │ │ │ ├── sitemap.svg │ │ │ ├── skip-forward-alt.svg │ │ │ ├── skip-forward-circle.svg │ │ │ ├── skip-forward.svg │ │ │ ├── skype-alt.svg │ │ │ ├── skype.svg │ │ │ ├── slack-alt.svg │ │ │ ├── slack.svg │ │ │ ├── slider-h-range.svg │ │ │ ├── slider-h.svg │ │ │ ├── sliders-v-alt.svg │ │ │ ├── sliders-v.svg │ │ │ ├── smile-beam.svg │ │ │ ├── smile-dizzy.svg │ │ │ ├── smile-squint-wink-alt.svg │ │ │ ├── smile-squint-wink.svg │ │ │ ├── smile-wink-alt.svg │ │ │ ├── smile-wink.svg │ │ │ ├── smile.svg │ │ │ ├── snapchat-alt.svg │ │ │ ├── snapchat-ghost.svg │ │ │ ├── snapchat-square.svg │ │ │ ├── snow-flake.svg │ │ │ ├── snowflake-alt.svg │ │ │ ├── snowflake.svg │ │ │ ├── social-distancing.svg │ │ │ ├── sort-amount-down.svg │ │ │ ├── sort-amount-up.svg │ │ │ ├── sort.svg │ │ │ ├── sorting.svg │ │ │ ├── space-key.svg │ │ │ ├── spade.svg │ │ │ ├── sperms.svg │ │ │ ├── spin.svg │ │ │ ├── spinner.svg │ │ │ ├── square-full.svg │ │ │ ├── square-shape.svg │ │ │ ├── square.svg │ │ │ ├── squint.svg │ │ │ ├── star-half-alt.svg │ │ │ ├── star.svg │ │ │ ├── step-backward-alt.svg │ │ │ ├── step-backward-circle.svg │ │ │ ├── step-backward.svg │ │ │ ├── step-forward.svg │ │ │ ├── stethoscope-alt.svg │ │ │ ├── stethoscope.svg │ │ │ ├── stop-circle.svg │ │ │ ├── stopwatch-slash.svg │ │ │ ├── stopwatch.svg │ │ │ ├── store-alt.svg │ │ │ ├── store-slash.svg │ │ │ ├── store.svg │ │ │ ├── streering.svg │ │ │ ├── stretcher.svg │ │ │ ├── subject.svg │ │ │ ├── subway-alt.svg │ │ │ ├── subway.svg │ │ │ ├── suitcase-alt.svg │ │ │ ├── suitcase.svg │ │ │ ├── sun.svg │ │ │ ├── sunset.svg │ │ │ ├── surprise.svg │ │ │ ├── swatchbook.svg │ │ │ ├── swiggy.svg │ │ │ ├── swimmer.svg │ │ │ ├── sync-exclamation.svg │ │ │ ├── sync-slash.svg │ │ │ ├── sync.svg │ │ │ ├── syringe.svg │ │ │ ├── table-collapse-all.svg │ │ │ ├── table-expand-all.svg │ │ │ ├── table-tennis.svg │ │ │ ├── table.svg │ │ │ ├── tablet.svg │ │ │ ├── tablets.svg │ │ │ ├── tachometer-fast-alt.svg │ │ │ ├── tachometer-fast.svg │ │ │ ├── tag-alt.svg │ │ │ ├── tag.svg │ │ │ ├── tape.svg │ │ │ ├── taxi.svg │ │ │ ├── tear.svg │ │ │ ├── telegram-alt.svg │ │ │ ├── telegram.svg │ │ │ ├── telescope.svg │ │ │ ├── temperature-empty.svg │ │ │ ├── temperature-half.svg │ │ │ ├── temperature-minus.svg │ │ │ ├── temperature-plus.svg │ │ │ ├── temperature-quarter.svg │ │ │ ├── temperature-three-quarter.svg │ │ │ ├── temperature.svg │ │ │ ├── tennis-ball.svg │ │ │ ├── text-fields.svg │ │ │ ├── text-size.svg │ │ │ ├── text-strike-through.svg │ │ │ ├── text.svg │ │ │ ├── th-large.svg │ │ │ ├── th-slash.svg │ │ │ ├── th.svg │ │ │ ├── thermometer.svg │ │ │ ├── thumbs-down.svg │ │ │ ├── thumbs-up.svg │ │ │ ├── thunderstorm-moon.svg │ │ │ ├── thunderstorm-sun.svg │ │ │ ├── thunderstorm.svg │ │ │ ├── ticket.svg │ │ │ ├── times-circle.svg │ │ │ ├── times-square.svg │ │ │ ├── times.svg │ │ │ ├── toggle-off.svg │ │ │ ├── toggle-on.svg │ │ │ ├── toilet-paper.svg │ │ │ ├── top-arrow-from-top.svg │ │ │ ├── top-arrow-to-top.svg │ │ │ ├── tornado.svg │ │ │ ├── trademark-circle.svg │ │ │ ├── trademark.svg │ │ │ ├── traffic-barrier.svg │ │ │ ├── traffic-light.svg │ │ │ ├── transaction.svg │ │ │ ├── trash-alt.svg │ │ │ ├── trash.svg │ │ │ ├── trees.svg │ │ │ ├── triangle.svg │ │ │ ├── trophy.svg │ │ │ ├── trowel.svg │ │ │ ├── truck-loading.svg │ │ │ ├── truck.svg │ │ │ ├── tumblr-alt.svg │ │ │ ├── tumblr-square.svg │ │ │ ├── tumblr.svg │ │ │ ├── tv-retro-slash.svg │ │ │ ├── tv-retro.svg │ │ │ ├── twitter-alt.svg │ │ │ ├── twitter.svg │ │ │ ├── umbrella.svg │ │ │ ├── unamused.svg │ │ │ ├── unarchive.svg │ │ │ ├── underline.svg │ │ │ ├── university.svg │ │ │ ├── unlock-alt.svg │ │ │ ├── unlock.svg │ │ │ ├── upload-alt.svg │ │ │ ├── upload.svg │ │ │ ├── usd-circle.svg │ │ │ ├── usd-square.svg │ │ │ ├── user-arrows.svg │ │ │ ├── user-check.svg │ │ │ ├── user-circle.svg │ │ │ ├── user-exclamation.svg │ │ │ ├── user-location.svg │ │ │ ├── user-md.svg │ │ │ ├── user-minus.svg │ │ │ ├── user-nurse.svg │ │ │ ├── user-plus.svg │ │ │ ├── user-square.svg │ │ │ ├── user-times.svg │ │ │ ├── user.svg │ │ │ ├── users-alt.svg │ │ │ ├── utensils-alt.svg │ │ │ ├── utensils.svg │ │ │ ├── vector-square-alt.svg │ │ │ ├── vector-square.svg │ │ │ ├── venus.svg │ │ │ ├── vertical-align-bottom.svg │ │ │ ├── vertical-align-center.svg │ │ │ ├── vertical-align-top.svg │ │ │ ├── vertical-distribute-bottom.svg │ │ │ ├── vertical-distribution-center.svg │ │ │ ├── vertical-distribution-top.svg │ │ │ ├── video-question.svg │ │ │ ├── video-slash.svg │ │ │ ├── video.svg │ │ │ ├── virus-slash.svg │ │ │ ├── visual-studio.svg │ │ │ ├── vk-alt.svg │ │ │ ├── vk.svg │ │ │ ├── voicemail-rectangle.svg │ │ │ ├── voicemail.svg │ │ │ ├── volleyball.svg │ │ │ ├── volume-down.svg │ │ │ ├── volume-mute.svg │ │ │ ├── volume-off.svg │ │ │ ├── volume-up.svg │ │ │ ├── volume.svg │ │ │ ├── vuejs-alt.svg │ │ │ ├── vuejs.svg │ │ │ ├── wall.svg │ │ │ ├── wallet.svg │ │ │ ├── watch-alt.svg │ │ │ ├── watch.svg │ │ │ ├── water-drop-slash.svg │ │ │ ├── water-glass.svg │ │ │ ├── water.svg │ │ │ ├── web-grid-alt.svg │ │ │ ├── web-grid.svg │ │ │ ├── web-section-alt.svg │ │ │ ├── web-section.svg │ │ │ ├── webcam.svg │ │ │ ├── weight.svg │ │ │ ├── whatsapp-alt.svg │ │ │ ├── whatsapp.svg │ │ │ ├── wheel-barrow.svg │ │ │ ├── wheelchair-alt.svg │ │ │ ├── wheelchair.svg │ │ │ ├── wifi-router.svg │ │ │ ├── wifi-slash.svg │ │ │ ├── wifi.svg │ │ │ ├── wind-moon.svg │ │ │ ├── wind-sun.svg │ │ │ ├── wind.svg │ │ │ ├── window-grid.svg │ │ │ ├── window-maximize.svg │ │ │ ├── window-section.svg │ │ │ ├── window.svg │ │ │ ├── windows.svg │ │ │ ├── windsock.svg │ │ │ ├── windy.svg │ │ │ ├── wordpress-simple.svg │ │ │ ├── wordpress.svg │ │ │ ├── wrap-text.svg │ │ │ ├── wrench.svg │ │ │ ├── x-add.svg │ │ │ ├── x.svg │ │ │ ├── yen-circle.svg │ │ │ ├── yen.svg │ │ │ ├── yin-yang.svg │ │ │ └── youtube.svg │ ├── licensing │ │ ├── card-bg-dark.svg │ │ ├── card-bg-light.svg │ │ ├── checkmark.svg │ │ ├── customer_support.svg │ │ ├── handinhand_support.svg │ │ ├── header_dark.svg │ │ ├── header_light.svg │ │ ├── plugin_enterprise.svg │ │ └── sla.svg │ ├── light.png │ ├── load.gif │ ├── load_big.gif │ ├── loading-pulse.svg │ ├── login_background_dark.svg │ ├── login_background_light.svg │ ├── logo_transparent_200x.png │ ├── logo_transparent_200x75.png │ ├── logo_transparent_400x.png │ ├── microsoft_auth_icon.svg │ ├── mixed_styles.png │ ├── mstile-150x150.png │ ├── okta_logo_white.png │ ├── online.svg │ ├── page_header_line.png │ ├── panel-tabs │ │ ├── alert-selected.svg │ │ ├── alert.svg │ │ ├── general-selected.svg │ │ ├── general.svg │ │ ├── queries-selected.svg │ │ ├── queries.svg │ │ ├── visualization-selected.svg │ │ └── visualization.svg │ ├── plugin-default-logo_dark.svg │ ├── plugin-default-logo_light.svg │ ├── plugins │ │ ├── appdynamics.svg │ │ ├── azure-cosmosdb.svg │ │ ├── azure-devops.png │ │ ├── datadog.png │ │ ├── dynatrace.png │ │ ├── gitlab.svg │ │ ├── honeycomb.png │ │ ├── jira_logo.png │ │ ├── mongodb.svg │ │ ├── newrelic.svg │ │ ├── oracle.png │ │ ├── pagerduty.svg │ │ ├── salesforce.svg │ │ ├── sap_hana.png │ │ ├── servicenow.svg │ │ ├── signalfx-logo.svg │ │ ├── snowflake.svg │ │ ├── splunk_logo_128.png │ │ ├── sumo.svg │ │ └── wavefront.svg │ ├── rendering_error_dark.png │ ├── rendering_error_light.png │ ├── rendering_limit_dark.png │ ├── rendering_limit_light.png │ ├── rendering_plugin_not_installed.png │ ├── rendering_timeout_dark.png │ ├── rendering_timeout_light.png │ ├── transformations │ │ ├── dark │ │ │ ├── calculateField.svg │ │ │ ├── concatenate.svg │ │ │ ├── configFromData.svg │ │ │ ├── convertFieldType.svg │ │ │ ├── extractFields.svg │ │ │ ├── fieldLookup.svg │ │ │ ├── filterByRefId.svg │ │ │ ├── filterByValue.svg │ │ │ ├── filterFieldsByName.svg │ │ │ ├── formatString.svg │ │ │ ├── formatTime.svg │ │ │ ├── groupBy.svg │ │ │ ├── groupByCalculation.svg │ │ │ ├── groupToNestedTable.svg │ │ │ ├── groupingToMatrix.svg │ │ │ ├── heatmap.svg │ │ │ ├── histogram.svg │ │ │ ├── joinByField.svg │ │ │ ├── joinByLabels.svg │ │ │ ├── labelsToFields.svg │ │ │ ├── limit.svg │ │ │ ├── merge.svg │ │ │ ├── organize.svg │ │ │ ├── partitionByValues.svg │ │ │ ├── prepareTimeSeries.svg │ │ │ ├── reduce.svg │ │ │ ├── regression.svg │ │ │ ├── renameByRegex.svg │ │ │ ├── rowsToFields.svg │ │ │ ├── seriesToRows.svg │ │ │ ├── sortBy.svg │ │ │ ├── spatial.svg │ │ │ └── timeSeriesTable.svg │ │ ├── disabled │ │ │ ├── formatTime.svg │ │ │ ├── groupBy.svg │ │ │ ├── groupToNestedTable.svg │ │ │ ├── groupingToMatrix.svg │ │ │ ├── heatmap.svg │ │ │ ├── merge.svg │ │ │ ├── organize.svg │ │ │ └── timeSeriesTable.svg │ │ └── light │ │ │ ├── calculateField.svg │ │ │ ├── concatenate.svg │ │ │ ├── configFromData.svg │ │ │ ├── convertFieldType.svg │ │ │ ├── extractFields.svg │ │ │ ├── fieldLookup.svg │ │ │ ├── filterByRefId.svg │ │ │ ├── filterByValue.svg │ │ │ ├── filterFieldsByName.svg │ │ │ ├── formatString.svg │ │ │ ├── formatTime.svg │ │ │ ├── groupBy.svg │ │ │ ├── groupByCalculation.svg │ │ │ ├── groupToNestedTable.svg │ │ │ ├── groupingToMatrix.svg │ │ │ ├── heatmap.svg │ │ │ ├── histogram.svg │ │ │ ├── joinByField.svg │ │ │ ├── joinByLabels.svg │ │ │ ├── labelsToFields.svg │ │ │ ├── limit.svg │ │ │ ├── merge.svg │ │ │ ├── organize.svg │ │ │ ├── partitionByValues.svg │ │ │ ├── prepareTimeSeries.svg │ │ │ ├── reduce.svg │ │ │ ├── regression.svg │ │ │ ├── renameByRegex.svg │ │ │ ├── rowsToFields.svg │ │ │ ├── seriesToRows.svg │ │ │ ├── sortBy.svg │ │ │ ├── spatial.svg │ │ │ └── timeSeriesTable.svg │ ├── transparent.png │ ├── user_profile.png │ ├── warn-tiny.svg │ └── warn.svg ├── lib │ ├── .gitignore │ └── monaco-languages │ │ ├── index.ts │ │ └── kusto.ts ├── locales │ ├── de-DE │ │ └── grafana.json │ ├── en-US │ │ └── grafana.json │ ├── es-ES │ │ └── grafana.json │ ├── fr-FR │ │ └── grafana.json │ ├── i18next-parser-enterprise.config.cjs │ ├── i18next-parser.config.cjs │ ├── pseudo-LOCALE │ │ └── grafana.json │ ├── pseudo.mjs │ ├── pt-BR │ │ └── grafana.json │ └── zh-Hans │ │ └── grafana.json ├── maps │ ├── countries.geojson │ ├── example-with-style.geojson │ └── usa-states.geojson ├── openapi3.json ├── robots.txt ├── sass │ ├── _angular.scss │ ├── _grafana.scss │ ├── _variables.dark.generated.scss │ ├── _variables.generated.scss │ ├── _variables.light.generated.scss │ ├── base │ │ ├── _code.scss │ │ ├── _font_awesome.scss │ │ ├── _fonts.scss │ │ ├── _forms.scss │ │ ├── _grafana_icons.scss │ │ ├── _grid.scss │ │ ├── _normalize.scss │ │ ├── _reboot.scss │ │ ├── _type.scss │ │ └── font-awesome │ │ │ ├── _animated.scss │ │ │ ├── _bordered-pulled.scss │ │ │ ├── _core.scss │ │ │ ├── _fixed-width.scss │ │ │ ├── _icons.scss │ │ │ ├── _larger.scss │ │ │ ├── _list.scss │ │ │ ├── _mixins.scss │ │ │ ├── _path.scss │ │ │ ├── _rotated-flipped.scss │ │ │ ├── _screen-reader.scss │ │ │ ├── _stacked.scss │ │ │ └── _variables.scss │ ├── components │ │ ├── _add_data_source.scss │ │ ├── _alerts.scss │ │ ├── _buttons.scss │ │ ├── _dashboard_grid.scss │ │ ├── _drop.scss │ │ ├── _dropdown.scss │ │ ├── _filter-table.scss │ │ ├── _footer.scss │ │ ├── _gf-form.scss │ │ ├── _infobox.scss │ │ ├── _json_explorer.scss │ │ ├── _modals.scss │ │ ├── _page_header.scss │ │ ├── _panel_header.scss │ │ ├── _query_editor.scss │ │ ├── _query_part.scss │ │ ├── _row.scss │ │ ├── _scrollbar.scss │ │ ├── _slate_editor.scss │ │ ├── _submenu.scss │ │ ├── _switch.scss │ │ ├── _tabbed_view.scss │ │ ├── _tags.scss │ │ ├── _tagsinput.scss │ │ └── _typeahead.scss │ ├── fonts.scss │ ├── grafana.dark.scss │ ├── grafana.light.scss │ ├── icons.json │ ├── mixins │ │ ├── _animations.scss │ │ ├── _breakpoints.scss │ │ ├── _buttons.scss │ │ ├── _drop_element.scss │ │ ├── _forms.scss │ │ ├── _grid-framework.scss │ │ ├── _grid.scss │ │ ├── _hover.scss │ │ └── _mixins.scss │ ├── pages │ │ ├── _alerting.scss │ │ ├── _dashboard.scss │ │ ├── _explore.scss │ │ └── _history.scss │ └── utils │ │ ├── _spacings.scss │ │ ├── _utils.scss │ │ └── _widths.scss ├── test │ ├── .jshintrc │ ├── core │ │ ├── redux │ │ │ ├── mocks.ts │ │ │ ├── reducerTester.test.ts │ │ │ ├── reducerTester.ts │ │ │ └── reduxTester.ts │ │ ├── thunk │ │ │ └── thunkTester.ts │ │ └── utils │ │ │ ├── silenceConsoleOutput.ts │ │ │ └── version.test.ts │ ├── fixtures │ │ └── panelModel.fixture.ts │ ├── global-jquery-shim.ts │ ├── helpers │ │ ├── TestProvider.tsx │ │ ├── alertingRuleEditor.tsx │ │ ├── asserts.ts │ │ ├── convertToStoreState.ts │ │ ├── createFetchResponse.ts │ │ ├── fieldConfig.ts │ │ ├── getDashboardModel.ts │ │ ├── getQueryOptions.ts │ │ ├── getTemplateSrvDependencies.ts │ │ ├── initTemplateSrv.ts │ │ └── selectOptionInTest.ts │ ├── jest-resolver.js │ ├── jest-setup.ts │ ├── lib │ │ └── common.ts │ ├── log-reporter.js │ ├── matchers │ │ ├── index.ts │ │ ├── toEmitValues.test.ts │ │ ├── toEmitValues.ts │ │ ├── toEmitValuesWith.test.ts │ │ ├── toEmitValuesWith.ts │ │ ├── types.ts │ │ └── utils.ts │ ├── mocks │ │ ├── dashboard-mock.js │ │ ├── datasource_srv.ts │ │ ├── getGrafanaContextMock.ts │ │ ├── i18nMessages.ts │ │ ├── navModel.ts │ │ ├── nearMembraneDom.ts │ │ ├── query.ts │ │ ├── react-inlinesvg.tsx │ │ ├── style.ts │ │ ├── svg.ts │ │ ├── systemjsAMDExtra.ts │ │ └── workers.ts │ ├── setupTests.ts │ ├── specs │ │ └── helpers.ts │ └── test-utils.tsx ├── vendor │ ├── bootstrap │ │ └── bootstrap.js │ ├── css │ │ └── timepicker.css │ ├── flot │ │ ├── jquery.flot.crosshair.js │ │ ├── jquery.flot.dashes.js │ │ ├── jquery.flot.fillbelow.js │ │ ├── jquery.flot.fillbetween.js │ │ ├── jquery.flot.gauge.js │ │ ├── jquery.flot.js │ │ ├── jquery.flot.selection.js │ │ ├── jquery.flot.stack.js │ │ ├── jquery.flot.stackpercent.js │ │ └── jquery.flot.time.js │ ├── plugin-text │ │ └── text.js │ └── tagsinput │ │ └── bootstrap-tagsinput.js └── views │ ├── error.html │ ├── index.html │ └── swagger.html ├── scripts ├── benchmark-access-control.sh ├── build │ ├── build.sh │ ├── ci-deploy │ │ ├── Dockerfile │ │ └── build-deploy.sh │ ├── ci-e2e │ │ └── Dockerfile │ ├── ci-msi-build │ │ ├── Dockerfile │ │ ├── README.md │ │ ├── ci-msi-build-ee.sh │ │ ├── ci-msi-build-oss.sh │ │ ├── msigenerator │ │ │ ├── Makefile │ │ │ ├── cache │ │ │ │ └── nssm-2.24.zip │ │ │ ├── ci-wrapper.sh │ │ │ ├── docker-compose.yml │ │ │ ├── generator │ │ │ │ ├── build.py │ │ │ │ └── utils.py │ │ │ ├── light.exe.config │ │ │ ├── requirements.txt │ │ │ ├── resources │ │ │ │ ├── images │ │ │ │ │ ├── grafana_dialog_background.bmp │ │ │ │ │ ├── grafana_dialog_background.png │ │ │ │ │ ├── grafana_icon.ico │ │ │ │ │ ├── grafana_top_banner.bmp │ │ │ │ │ ├── grafana_top_banner.png │ │ │ │ │ └── grafana_top_banner_white.bmp │ │ │ │ └── license │ │ │ │ │ ├── EE_LICENSE.rtf │ │ │ │ │ ├── LICENSE.md │ │ │ │ │ └── LICENSE.rtf │ │ │ ├── templates │ │ │ │ ├── common │ │ │ │ │ ├── grafana-firewall.wxs.j2 │ │ │ │ │ ├── grafana-service.wxs.j2 │ │ │ │ │ └── product.wxs.j2 │ │ │ │ └── oracle │ │ │ │ │ └── oracle-environment.wxs.j2 │ │ │ └── wrapper.sh │ │ └── testbuild.sh │ ├── ci-windows-test │ │ └── Dockerfile │ ├── ci-wix │ │ ├── Dockerfile │ │ ├── Magefile.go │ │ └── README.md │ ├── gpg-test-vars.sh │ ├── old_appveyor.yml │ ├── prepare_signing_key.sh │ ├── publish.sh │ ├── release_publisher │ │ ├── externalrelease.go │ │ ├── main.go │ │ ├── publisher.go │ │ ├── publisher_test.go │ │ └── testdata │ │ │ ├── grafana-enterprise-5.4.0-123pre1.linux-amd64.tar.gz │ │ │ ├── grafana-enterprise-5.4.0-123pre1.linux-amd64.tar.gz.sha256 │ │ │ ├── grafana-enterprise-5.4.0-123pre1.windows-amd64.msi │ │ │ ├── grafana-enterprise-5.4.0-123pre1.windows-amd64.msi.sha256 │ │ │ ├── grafana-enterprise-5.4.0-123pre1.windows-amd64.zip │ │ │ ├── grafana-enterprise-5.4.0-123pre1.windows-amd64.zip.sha256 │ │ │ ├── grafana-enterprise-5.4.0-123pre1.x86_64.rpm │ │ │ ├── grafana-enterprise-5.4.0-123pre1.x86_64.rpm.sha256 │ │ │ ├── grafana-enterprise_5.4.0-123pre1_amd64.deb │ │ │ └── grafana-enterprise_5.4.0-123pre1_amd64.deb.sha256 │ ├── retrieve-npm-packages.sh │ ├── rpmmacros │ ├── sign_packages.sh │ ├── store-npm-packages.sh │ ├── update_repo │ │ ├── README.md │ │ ├── aptly.conf │ │ ├── init-deb-repo.sh │ │ ├── load-signing-key.sh │ │ ├── publish-deb.sh │ │ ├── publish-rpm.sh │ │ ├── sign-rpm-repo.sh │ │ ├── test-publish-deb-repo.sh │ │ ├── test-publish-rpm-repo.sh │ │ ├── test-update-deb-repo.sh │ │ ├── test-update-rpm-repo.sh │ │ ├── unlock-gpg-key.sh │ │ ├── update-deb.sh │ │ └── update-rpm.sh │ └── verify_signed_packages.sh ├── check-breaking-changes.sh ├── ci-frontend-metrics.sh ├── ci-job-failed.sh ├── ci-job-started.sh ├── ci-job-succeeded.sh ├── circle-test-backend.sh ├── circle-test-cache-servers.sh ├── circle-test-frontend.sh ├── circle-test-mysql.sh ├── circle-test-postgres.sh ├── clean-git-or-error.sh ├── cleanup-husky.sh ├── cli │ ├── bettererIssueTemplate.md │ ├── bettererResultsToJson.ts │ ├── generateBettererIssues.ts │ ├── generateSassVariableFiles.ts │ ├── reportBettererStats.ts │ ├── reportI18nStats.mjs │ └── tsconfig.json ├── codemods │ └── explicit-barrel-imports.cjs ├── docs │ └── generate-transformations.ts ├── drone │ ├── env-var-check.sh │ ├── events │ │ ├── cron.star │ │ ├── main.star │ │ ├── pr.star │ │ └── release.star │ ├── pipelines │ │ ├── aws_marketplace.star │ │ ├── benchmarks.star │ │ ├── build.star │ │ ├── ci_images.star │ │ ├── docs.star │ │ ├── github.star │ │ ├── integration_tests.star │ │ ├── lint_backend.star │ │ ├── lint_frontend.star │ │ ├── publish_images.star │ │ ├── shellcheck.star │ │ ├── swagger_gen.star │ │ ├── test_backend.star │ │ ├── test_frontend.star │ │ ├── trigger_downstream.star │ │ ├── verify_drone.star │ │ ├── verify_starlark.star │ │ ├── whats_new_checker.star │ │ └── windows.star │ ├── rgm.star │ ├── services │ │ └── services.star │ ├── steps │ │ ├── lib.star │ │ ├── lib_windows.star │ │ └── rgm.star │ ├── utils │ │ ├── images.star │ │ ├── utils.star │ │ └── windows_images.star │ ├── variables.star │ └── vault.star ├── generate-a11y-report.sh ├── generate-icon-bundle.js ├── generate-rtk-apis.ts ├── go │ └── bin │ │ └── revive ├── grafana-server │ ├── custom.ini │ ├── kill-server │ ├── start-server │ ├── variables │ └── wait-for-grafana ├── helpers │ └── exit-if-fail.sh ├── import_many_dashboards.sh ├── levitate-parse-json-report.js ├── list-release-artifacts.sh ├── mixin-check.sh ├── modowners │ ├── .gitignore │ ├── README.md │ ├── go.mod │ ├── go.sum │ ├── modowners.go │ └── modowners_test.go ├── openapi3 │ └── openapi3conv.go ├── prepare-packagejson.js ├── protobuf-check.sh ├── publish-npm-packages.sh ├── stripnulls.sh ├── tag_release.sh ├── tests │ └── generate-transformations.test.ts ├── trigger_docker_build.sh ├── trigger_grafana_packer.sh ├── trigger_windows_build.sh ├── validate-npm-packages.sh ├── verify-repo-update │ ├── Dockerfile.deb │ ├── Dockerfile.rpm │ ├── deb-ee-beta.list │ ├── deb-ee-stable.list │ ├── deb-oss-beta.list │ ├── deb-oss-stable.list │ ├── rpm-ee-beta.list │ ├── rpm-ee-stable.list │ ├── rpm-oss-beta.list │ ├── rpm-oss-stable.list │ └── verify-repos.sh └── webpack │ ├── dependencies.js │ ├── plugins │ └── CorsWorkerPlugin.js │ ├── postcss.config.js │ ├── sass.rule.js │ ├── webpack.common.js │ ├── webpack.dev.js │ ├── webpack.hot.js │ └── webpack.prod.js ├── stylelint.config.js ├── tools └── .gitkeep ├── tsconfig.json └── yarn.lock /.betterer.results: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.betterer.results -------------------------------------------------------------------------------- /.betterer.results.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.betterer.results.json -------------------------------------------------------------------------------- /.betterer.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.betterer.ts -------------------------------------------------------------------------------- /.bingo/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.bingo/.gitignore -------------------------------------------------------------------------------- /.bingo/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.bingo/README.md -------------------------------------------------------------------------------- /.bingo/Variables.mk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.bingo/Variables.mk -------------------------------------------------------------------------------- /.bingo/bra.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.bingo/bra.mod -------------------------------------------------------------------------------- /.bingo/bra.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.bingo/bra.sum -------------------------------------------------------------------------------- /.bingo/cue.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.bingo/cue.mod -------------------------------------------------------------------------------- /.bingo/cue.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.bingo/cue.sum -------------------------------------------------------------------------------- /.bingo/drone.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.bingo/drone.mod -------------------------------------------------------------------------------- /.bingo/drone.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.bingo/drone.sum -------------------------------------------------------------------------------- /.bingo/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.bingo/go.mod -------------------------------------------------------------------------------- /.bingo/golangci-lint.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.bingo/golangci-lint.mod -------------------------------------------------------------------------------- /.bingo/golangci-lint.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.bingo/golangci-lint.sum -------------------------------------------------------------------------------- /.bingo/jb.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.bingo/jb.mod -------------------------------------------------------------------------------- /.bingo/jb.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.bingo/jb.sum -------------------------------------------------------------------------------- /.bingo/lefthook.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.bingo/lefthook.mod -------------------------------------------------------------------------------- /.bingo/lefthook.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.bingo/lefthook.sum -------------------------------------------------------------------------------- /.bingo/swagger.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.bingo/swagger.mod -------------------------------------------------------------------------------- /.bingo/swagger.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.bingo/swagger.sum -------------------------------------------------------------------------------- /.bingo/variables.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.bingo/variables.env -------------------------------------------------------------------------------- /.bra.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.bra.toml -------------------------------------------------------------------------------- /.browserslistrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.browserslistrc -------------------------------------------------------------------------------- /.dockerignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.dockerignore -------------------------------------------------------------------------------- /.drone.star: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.drone.star -------------------------------------------------------------------------------- /.drone.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.drone.yml -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.editorconfig -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.eslintignore -------------------------------------------------------------------------------- /.eslintrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.eslintrc -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto eol=lf 2 | -------------------------------------------------------------------------------- /.github/CODEOWNERS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.github/CODEOWNERS -------------------------------------------------------------------------------- /.github/bot.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.github/bot.md -------------------------------------------------------------------------------- /.github/commands.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.github/commands.json -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.github/dependabot.yml -------------------------------------------------------------------------------- /.github/issue-opened.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.github/issue-opened.json -------------------------------------------------------------------------------- /.github/pr-checks.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.github/pr-checks.json -------------------------------------------------------------------------------- /.github/pr-commands.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.github/pr-commands.json -------------------------------------------------------------------------------- /.github/renovate.json5: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.github/renovate.json5 -------------------------------------------------------------------------------- /.github/teams.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.github/teams.yml -------------------------------------------------------------------------------- /.github/workflows/snyk.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.github/workflows/snyk.yml -------------------------------------------------------------------------------- /.github/workflows/stale.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.github/workflows/stale.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.gitignore -------------------------------------------------------------------------------- /.golangci.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.golangci.toml -------------------------------------------------------------------------------- /.husky/pre-commit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.husky/pre-commit -------------------------------------------------------------------------------- /.levignore.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.levignore.js -------------------------------------------------------------------------------- /.nvmrc: -------------------------------------------------------------------------------- 1 | v20.9.0 2 | -------------------------------------------------------------------------------- /.pa11yci-pr.conf.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.pa11yci-pr.conf.js -------------------------------------------------------------------------------- /.pa11yci.conf.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.pa11yci.conf.js -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.prettierignore -------------------------------------------------------------------------------- /.prettierrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.prettierrc.js -------------------------------------------------------------------------------- /.vim/coc-settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.vim/coc-settings.json -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.vscode/launch.json -------------------------------------------------------------------------------- /.yarnrc.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/.yarnrc.yml -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/CODE_OF_CONDUCT.md -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/Dockerfile -------------------------------------------------------------------------------- /GOVERNANCE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/GOVERNANCE.md -------------------------------------------------------------------------------- /HALL_OF_FAME.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/HALL_OF_FAME.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/LICENSE -------------------------------------------------------------------------------- /LICENSING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/LICENSING.md -------------------------------------------------------------------------------- /MAINTAINERS.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/MAINTAINERS.md -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/Makefile -------------------------------------------------------------------------------- /NOTICE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/NOTICE.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/README.md -------------------------------------------------------------------------------- /ROADMAP.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/ROADMAP.md -------------------------------------------------------------------------------- /SECURITY.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/SECURITY.md -------------------------------------------------------------------------------- /SUPPORT.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/SUPPORT.md -------------------------------------------------------------------------------- /WORKFLOW.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/WORKFLOW.md -------------------------------------------------------------------------------- /conf/defaults.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/conf/defaults.ini -------------------------------------------------------------------------------- /conf/ldap.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/conf/ldap.toml -------------------------------------------------------------------------------- /conf/ldap_multiple.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/conf/ldap_multiple.toml -------------------------------------------------------------------------------- /conf/sample.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/conf/sample.ini -------------------------------------------------------------------------------- /contribute/ISSUE_TRIAGE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/contribute/ISSUE_TRIAGE.md -------------------------------------------------------------------------------- /contribute/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/contribute/README.md -------------------------------------------------------------------------------- /contribute/backend/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/contribute/backend/README.md -------------------------------------------------------------------------------- /contribute/backend/errors.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/contribute/backend/errors.md -------------------------------------------------------------------------------- /contribute/drone-pipeline.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/contribute/drone-pipeline.md -------------------------------------------------------------------------------- /contribute/triage-issues.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/contribute/triage-issues.md -------------------------------------------------------------------------------- /crowdin.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/crowdin.yml -------------------------------------------------------------------------------- /cue.mod/module.cue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/cue.mod/module.cue -------------------------------------------------------------------------------- /cypress.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/cypress.config.js -------------------------------------------------------------------------------- /devenv/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/devenv/README.md -------------------------------------------------------------------------------- /devenv/alert_rules.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/devenv/alert_rules.yaml -------------------------------------------------------------------------------- /devenv/dashboards.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/devenv/dashboards.yaml -------------------------------------------------------------------------------- /devenv/datasources.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/devenv/datasources.yaml -------------------------------------------------------------------------------- /devenv/docker/blocks/auth/apache_proxy/ports.conf: -------------------------------------------------------------------------------- 1 | Listen 10081 -------------------------------------------------------------------------------- /devenv/docker/blocks/auth/apache_proxy_mac/ports.conf: -------------------------------------------------------------------------------- 1 | Listen 10081 -------------------------------------------------------------------------------- /devenv/docker/blocks/elastic/.env: -------------------------------------------------------------------------------- 1 | elastic_version=8.5.0 -------------------------------------------------------------------------------- /devenv/docker/blocks/elasticstack/.env: -------------------------------------------------------------------------------- 1 | elastic_version=8.5.0 -------------------------------------------------------------------------------- /devenv/docker/blocks/grafana/.env: -------------------------------------------------------------------------------- 1 | grafana_version=6.6.2 2 | -------------------------------------------------------------------------------- /devenv/docker/blocks/graphite09/files/my_htpasswd: -------------------------------------------------------------------------------- 1 | grafana:$apr1$4R/20xhC$8t37jPP5dbcLr48btdkU// 2 | -------------------------------------------------------------------------------- /devenv/docker/blocks/mysql/.env: -------------------------------------------------------------------------------- 1 | mysql_version=8.0.32 2 | -------------------------------------------------------------------------------- /devenv/docker/blocks/mysql_exporter/.env: -------------------------------------------------------------------------------- 1 | mysql_exporter_tag=v0.14.0 2 | -------------------------------------------------------------------------------- /devenv/docker/blocks/mysql_tests/.env: -------------------------------------------------------------------------------- 1 | mysql_version=8.0.32 2 | -------------------------------------------------------------------------------- /devenv/docker/blocks/postgres/.env: -------------------------------------------------------------------------------- 1 | postgres_version=11.20-alpine3.18 2 | -------------------------------------------------------------------------------- /devenv/docker/blocks/postgres_tests/.env: -------------------------------------------------------------------------------- 1 | postgres_version=11.20-alpine3.18 2 | -------------------------------------------------------------------------------- /devenv/docker/blocks/slow_proxy/.env: -------------------------------------------------------------------------------- 1 | ORIGIN_SERVER=http://host.docker.internal:9090/ 2 | SLEEP_DURATION=60s -------------------------------------------------------------------------------- /devenv/docker/compose_header.yml: -------------------------------------------------------------------------------- 1 | version: "3.4" 2 | services: 3 | -------------------------------------------------------------------------------- /devenv/docker/ha-test-unified-alerting/logs/webhook/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /devenv/jsonnet/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/devenv/jsonnet/Makefile -------------------------------------------------------------------------------- /devenv/jsonnet/gen.go: -------------------------------------------------------------------------------- 1 | package jsonnet 2 | 3 | //go:generate go run dev-dashboards.go 4 | -------------------------------------------------------------------------------- /devenv/jsonnet/main.libsonnet: -------------------------------------------------------------------------------- 1 | (import 'dev-dashboards.libsonnet') -------------------------------------------------------------------------------- /devenv/setup.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/devenv/setup.sh -------------------------------------------------------------------------------- /devenv/vscode/launch.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/devenv/vscode/launch.json -------------------------------------------------------------------------------- /docs/.codespellignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/docs/.codespellignore -------------------------------------------------------------------------------- /docs/.gitignore: -------------------------------------------------------------------------------- 1 | data/menu.yaml -------------------------------------------------------------------------------- /docs/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/docs/Makefile -------------------------------------------------------------------------------- /docs/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/docs/README.md -------------------------------------------------------------------------------- /docs/docs.mk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/docs/docs.mk -------------------------------------------------------------------------------- /docs/logo-horizontal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/docs/logo-horizontal.png -------------------------------------------------------------------------------- /docs/make-docs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/docs/make-docs -------------------------------------------------------------------------------- /docs/sources/_index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/docs/sources/_index.md -------------------------------------------------------------------------------- /docs/sources/cli.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/docs/sources/cli.md -------------------------------------------------------------------------------- /docs/sources/menu.yaml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/sources/shared/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/docs/sources/shared/index.md -------------------------------------------------------------------------------- /docs/sources/shared/test.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/docs/sources/shared/test.md -------------------------------------------------------------------------------- /docs/variables.mk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/docs/variables.mk -------------------------------------------------------------------------------- /e2e/cypress/plugins/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/e2e/cypress/plugins/index.js -------------------------------------------------------------------------------- /e2e/cypress/support/e2e.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/e2e/cypress/support/e2e.js -------------------------------------------------------------------------------- /e2e/log-reporter.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/e2e/log-reporter.js -------------------------------------------------------------------------------- /e2e/run-suite: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/e2e/run-suite -------------------------------------------------------------------------------- /e2e/scenes/utils/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/e2e/scenes/utils/index.ts -------------------------------------------------------------------------------- /e2e/start-and-run-suite: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/e2e/start-and-run-suite -------------------------------------------------------------------------------- /e2e/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/e2e/tsconfig.json -------------------------------------------------------------------------------- /e2e/utils/flows/addPanel.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/e2e/utils/flows/addPanel.ts -------------------------------------------------------------------------------- /e2e/utils/flows/editPanel.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/e2e/utils/flows/editPanel.ts -------------------------------------------------------------------------------- /e2e/utils/flows/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/e2e/utils/flows/index.ts -------------------------------------------------------------------------------- /e2e/utils/flows/login.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/e2e/utils/flows/login.ts -------------------------------------------------------------------------------- /e2e/utils/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/e2e/utils/index.ts -------------------------------------------------------------------------------- /e2e/utils/support/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/e2e/utils/support/index.ts -------------------------------------------------------------------------------- /e2e/utils/support/monaco.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/e2e/utils/support/monaco.ts -------------------------------------------------------------------------------- /e2e/utils/support/types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/e2e/utils/support/types.ts -------------------------------------------------------------------------------- /e2e/utils/support/url.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/e2e/utils/support/url.ts -------------------------------------------------------------------------------- /e2e/utils/typings/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/e2e/utils/typings/index.ts -------------------------------------------------------------------------------- /e2e/utils/typings/undo.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/e2e/utils/typings/undo.ts -------------------------------------------------------------------------------- /e2e/verify-release: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/e2e/verify-release -------------------------------------------------------------------------------- /emails/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/emails/Makefile -------------------------------------------------------------------------------- /emails/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/emails/README.md -------------------------------------------------------------------------------- /emails/grunt/aliases.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/emails/grunt/aliases.yaml -------------------------------------------------------------------------------- /emails/grunt/assemble.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/emails/grunt/assemble.js -------------------------------------------------------------------------------- /emails/grunt/copy.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/emails/grunt/copy.js -------------------------------------------------------------------------------- /emails/grunt/replace.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/emails/grunt/replace.js -------------------------------------------------------------------------------- /emails/gruntfile.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/emails/gruntfile.js -------------------------------------------------------------------------------- /emails/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/emails/package.json -------------------------------------------------------------------------------- /embed.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/embed.go -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/go.mod -------------------------------------------------------------------------------- /go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/go.sum -------------------------------------------------------------------------------- /go.work: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/go.work -------------------------------------------------------------------------------- /go.work.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/go.work.sum -------------------------------------------------------------------------------- /grafana-mixin/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/grafana-mixin/.gitignore -------------------------------------------------------------------------------- /grafana-mixin/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/grafana-mixin/Makefile -------------------------------------------------------------------------------- /grafana-mixin/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/grafana-mixin/README.md -------------------------------------------------------------------------------- /hack/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/hack/README.md -------------------------------------------------------------------------------- /hack/boilerplate.go.txt: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: AGPL-3.0-only 2 | 3 | -------------------------------------------------------------------------------- /hack/externalTools.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/hack/externalTools.go -------------------------------------------------------------------------------- /hack/make-aggregator-pki.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/hack/make-aggregator-pki.sh -------------------------------------------------------------------------------- /hack/openapi-codegen.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/hack/openapi-codegen.sh -------------------------------------------------------------------------------- /hack/update-codegen.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/hack/update-codegen.sh -------------------------------------------------------------------------------- /jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/jest.config.js -------------------------------------------------------------------------------- /kinds/gen.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/kinds/gen.go -------------------------------------------------------------------------------- /kinds/role/role_kind.cue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/kinds/role/role_kind.cue -------------------------------------------------------------------------------- /kinds/team/team_kind.cue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/kinds/team/team_kind.cue -------------------------------------------------------------------------------- /latest.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/latest.json -------------------------------------------------------------------------------- /lefthook.rc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/lefthook.rc -------------------------------------------------------------------------------- /lefthook.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/lefthook.yml -------------------------------------------------------------------------------- /lerna.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/lerna.json -------------------------------------------------------------------------------- /local/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /nx.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/nx.json -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/package.json -------------------------------------------------------------------------------- /packages/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/packages/README.md -------------------------------------------------------------------------------- /packages/grafana-data/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # (2019-07-08) 2 | 3 | First public release 4 | -------------------------------------------------------------------------------- /packages/grafana-data/src/monaco/index.ts: -------------------------------------------------------------------------------- 1 | export * from './languageRegistry'; 2 | -------------------------------------------------------------------------------- /packages/grafana-data/src/query/index.ts: -------------------------------------------------------------------------------- 1 | export * from './refId'; 2 | -------------------------------------------------------------------------------- /packages/grafana-data/src/utils/testdata/simple.csv: -------------------------------------------------------------------------------- 1 | a,b,c 2 | 10,20,30 3 | 40,50,60 4 | -------------------------------------------------------------------------------- /packages/grafana-data/src/valueFormats/index.ts: -------------------------------------------------------------------------------- 1 | export * from './valueFormats'; 2 | -------------------------------------------------------------------------------- /packages/grafana-e2e-selectors/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /packages/grafana-e2e-selectors/src/types/index.ts: -------------------------------------------------------------------------------- 1 | export * from './selectors'; 2 | -------------------------------------------------------------------------------- /packages/grafana-flamegraph/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # 10.2.0 (2023-09-06) 2 | 3 | First public release 4 | -------------------------------------------------------------------------------- /packages/grafana-icons/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /packages/grafana-plugin-configs/constants.ts: -------------------------------------------------------------------------------- 1 | export const DIST_DIR = 'dist'; 2 | -------------------------------------------------------------------------------- /packages/grafana-prometheus/src/querybuilder/components/promQail/index.ts: -------------------------------------------------------------------------------- 1 | export * from './PromQail'; 2 | -------------------------------------------------------------------------------- /packages/grafana-runtime/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # (2019-07-08) 2 | 3 | First public release 4 | -------------------------------------------------------------------------------- /packages/grafana-schema/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # (2021-10) 2 | 3 | First public release 4 | -------------------------------------------------------------------------------- /packages/grafana-sql/src/components/index.ts: -------------------------------------------------------------------------------- 1 | export * from './visual-query-builder'; 2 | -------------------------------------------------------------------------------- /packages/grafana-ui/src/types/select.ts: -------------------------------------------------------------------------------- 1 | export type { ActionMeta } from '../components/Select/types'; 2 | -------------------------------------------------------------------------------- /packaging/deb/control/prerm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/packaging/deb/control/prerm -------------------------------------------------------------------------------- /packaging/docker/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/packaging/docker/README.md -------------------------------------------------------------------------------- /packaging/docker/build.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/packaging/docker/build.sh -------------------------------------------------------------------------------- /packaging/docker/run.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/packaging/docker/run.sh -------------------------------------------------------------------------------- /packaging/mac/bin/grafana: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/packaging/mac/bin/grafana -------------------------------------------------------------------------------- /packaging/wrappers/grafana: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/packaging/wrappers/grafana -------------------------------------------------------------------------------- /pkg/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/README.md -------------------------------------------------------------------------------- /pkg/api/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/README.md -------------------------------------------------------------------------------- /pkg/api/accesscontrol.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/accesscontrol.go -------------------------------------------------------------------------------- /pkg/api/admin.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/admin.go -------------------------------------------------------------------------------- /pkg/api/admin_encryption.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/admin_encryption.go -------------------------------------------------------------------------------- /pkg/api/admin_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/admin_test.go -------------------------------------------------------------------------------- /pkg/api/admin_users.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/admin_users.go -------------------------------------------------------------------------------- /pkg/api/admin_users_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/admin_users_test.go -------------------------------------------------------------------------------- /pkg/api/alerting.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/alerting.go -------------------------------------------------------------------------------- /pkg/api/annotations.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/annotations.go -------------------------------------------------------------------------------- /pkg/api/annotations_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/annotations_test.go -------------------------------------------------------------------------------- /pkg/api/api.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/api.go -------------------------------------------------------------------------------- /pkg/api/api_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/api_test.go -------------------------------------------------------------------------------- /pkg/api/apierrors/folder.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/apierrors/folder.go -------------------------------------------------------------------------------- /pkg/api/apikey.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/apikey.go -------------------------------------------------------------------------------- /pkg/api/avatar/avatar.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/avatar/avatar.go -------------------------------------------------------------------------------- /pkg/api/basic_auth.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/basic_auth.go -------------------------------------------------------------------------------- /pkg/api/basic_auth_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/basic_auth_test.go -------------------------------------------------------------------------------- /pkg/api/common_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/common_test.go -------------------------------------------------------------------------------- /pkg/api/dashboard.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/dashboard.go -------------------------------------------------------------------------------- /pkg/api/dashboard_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/dashboard_test.go -------------------------------------------------------------------------------- /pkg/api/dataproxy.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/dataproxy.go -------------------------------------------------------------------------------- /pkg/api/datasources.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/datasources.go -------------------------------------------------------------------------------- /pkg/api/datasources_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/datasources_test.go -------------------------------------------------------------------------------- /pkg/api/ds_query.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/ds_query.go -------------------------------------------------------------------------------- /pkg/api/ds_query_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/ds_query_test.go -------------------------------------------------------------------------------- /pkg/api/dtos/acl.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/dtos/acl.go -------------------------------------------------------------------------------- /pkg/api/dtos/annotations.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/dtos/annotations.go -------------------------------------------------------------------------------- /pkg/api/dtos/apikey.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/dtos/apikey.go -------------------------------------------------------------------------------- /pkg/api/dtos/dashboard.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/dtos/dashboard.go -------------------------------------------------------------------------------- /pkg/api/dtos/datasource.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/dtos/datasource.go -------------------------------------------------------------------------------- /pkg/api/dtos/folder.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/dtos/folder.go -------------------------------------------------------------------------------- /pkg/api/dtos/index.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/dtos/index.go -------------------------------------------------------------------------------- /pkg/api/dtos/invite.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/dtos/invite.go -------------------------------------------------------------------------------- /pkg/api/dtos/live.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/dtos/live.go -------------------------------------------------------------------------------- /pkg/api/dtos/models.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/dtos/models.go -------------------------------------------------------------------------------- /pkg/api/dtos/models_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/dtos/models_test.go -------------------------------------------------------------------------------- /pkg/api/dtos/org.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/dtos/org.go -------------------------------------------------------------------------------- /pkg/api/dtos/playlist.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/dtos/playlist.go -------------------------------------------------------------------------------- /pkg/api/dtos/plugins.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/dtos/plugins.go -------------------------------------------------------------------------------- /pkg/api/dtos/prefs.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/dtos/prefs.go -------------------------------------------------------------------------------- /pkg/api/dtos/short_url.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/dtos/short_url.go -------------------------------------------------------------------------------- /pkg/api/dtos/user.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/dtos/user.go -------------------------------------------------------------------------------- /pkg/api/dtos/user_token.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/dtos/user_token.go -------------------------------------------------------------------------------- /pkg/api/fakes.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/fakes.go -------------------------------------------------------------------------------- /pkg/api/folder.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/folder.go -------------------------------------------------------------------------------- /pkg/api/folder_bench_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/folder_bench_test.go -------------------------------------------------------------------------------- /pkg/api/folder_permission.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/folder_permission.go -------------------------------------------------------------------------------- /pkg/api/folder_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/folder_test.go -------------------------------------------------------------------------------- /pkg/api/frontend_logging.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/frontend_logging.go -------------------------------------------------------------------------------- /pkg/api/frontend_metrics.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/frontend_metrics.go -------------------------------------------------------------------------------- /pkg/api/frontendsettings.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/frontendsettings.go -------------------------------------------------------------------------------- /pkg/api/grafana_com_proxy.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/grafana_com_proxy.go -------------------------------------------------------------------------------- /pkg/api/health.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/health.go -------------------------------------------------------------------------------- /pkg/api/health_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/health_test.go -------------------------------------------------------------------------------- /pkg/api/http_server.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/http_server.go -------------------------------------------------------------------------------- /pkg/api/http_server_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/http_server_test.go -------------------------------------------------------------------------------- /pkg/api/index.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/index.go -------------------------------------------------------------------------------- /pkg/api/login.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/login.go -------------------------------------------------------------------------------- /pkg/api/login_oauth.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/login_oauth.go -------------------------------------------------------------------------------- /pkg/api/login_oauth_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/login_oauth_test.go -------------------------------------------------------------------------------- /pkg/api/login_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/login_test.go -------------------------------------------------------------------------------- /pkg/api/org.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/org.go -------------------------------------------------------------------------------- /pkg/api/org_invite.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/org_invite.go -------------------------------------------------------------------------------- /pkg/api/org_invite_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/org_invite_test.go -------------------------------------------------------------------------------- /pkg/api/org_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/org_test.go -------------------------------------------------------------------------------- /pkg/api/org_users.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/org_users.go -------------------------------------------------------------------------------- /pkg/api/org_users_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/org_users_test.go -------------------------------------------------------------------------------- /pkg/api/password.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/password.go -------------------------------------------------------------------------------- /pkg/api/playlist.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/playlist.go -------------------------------------------------------------------------------- /pkg/api/plugin_checks.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/plugin_checks.go -------------------------------------------------------------------------------- /pkg/api/plugin_dashboards.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/plugin_dashboards.go -------------------------------------------------------------------------------- /pkg/api/plugin_metrics.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/plugin_metrics.go -------------------------------------------------------------------------------- /pkg/api/plugin_proxy.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/plugin_proxy.go -------------------------------------------------------------------------------- /pkg/api/plugin_proxy_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/plugin_proxy_test.go -------------------------------------------------------------------------------- /pkg/api/plugin_resource.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/plugin_resource.go -------------------------------------------------------------------------------- /pkg/api/pluginproxy/utils.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/pluginproxy/utils.go -------------------------------------------------------------------------------- /pkg/api/plugins.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/plugins.go -------------------------------------------------------------------------------- /pkg/api/plugins_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/plugins_test.go -------------------------------------------------------------------------------- /pkg/api/preferences.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/preferences.go -------------------------------------------------------------------------------- /pkg/api/preferences_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/preferences_test.go -------------------------------------------------------------------------------- /pkg/api/quota.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/quota.go -------------------------------------------------------------------------------- /pkg/api/quota_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/quota_test.go -------------------------------------------------------------------------------- /pkg/api/render.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/render.go -------------------------------------------------------------------------------- /pkg/api/response/response.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/response/response.go -------------------------------------------------------------------------------- /pkg/api/response/web_hack.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/response/web_hack.go -------------------------------------------------------------------------------- /pkg/api/routing/routing.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/routing/routing.go -------------------------------------------------------------------------------- /pkg/api/search.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/search.go -------------------------------------------------------------------------------- /pkg/api/short_url.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/short_url.go -------------------------------------------------------------------------------- /pkg/api/short_url_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/short_url_test.go -------------------------------------------------------------------------------- /pkg/api/signup.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/signup.go -------------------------------------------------------------------------------- /pkg/api/static/static.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/static/static.go -------------------------------------------------------------------------------- /pkg/api/swagger.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/swagger.go -------------------------------------------------------------------------------- /pkg/api/swagger_responses.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/swagger_responses.go -------------------------------------------------------------------------------- /pkg/api/swagger_tags.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/swagger_tags.json -------------------------------------------------------------------------------- /pkg/api/user.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/user.go -------------------------------------------------------------------------------- /pkg/api/user_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/user_test.go -------------------------------------------------------------------------------- /pkg/api/user_token.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/user_token.go -------------------------------------------------------------------------------- /pkg/api/user_token_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/user_token_test.go -------------------------------------------------------------------------------- /pkg/api/utils.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/api/utils.go -------------------------------------------------------------------------------- /pkg/apimachinery/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/apimachinery/go.mod -------------------------------------------------------------------------------- /pkg/apimachinery/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/apimachinery/go.sum -------------------------------------------------------------------------------- /pkg/apiserver/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/apiserver/go.mod -------------------------------------------------------------------------------- /pkg/apiserver/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/apiserver/go.sum -------------------------------------------------------------------------------- /pkg/build/action.go: -------------------------------------------------------------------------------- 1 | package build 2 | -------------------------------------------------------------------------------- /pkg/build/cmd.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/cmd.go -------------------------------------------------------------------------------- /pkg/build/cmd/builddocker.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/cmd/builddocker.go -------------------------------------------------------------------------------- /pkg/build/cmd/e2etests.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/cmd/e2etests.go -------------------------------------------------------------------------------- /pkg/build/cmd/fetchimages.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/cmd/fetchimages.go -------------------------------------------------------------------------------- /pkg/build/cmd/flags.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/cmd/flags.go -------------------------------------------------------------------------------- /pkg/build/cmd/grafanacom.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/cmd/grafanacom.go -------------------------------------------------------------------------------- /pkg/build/cmd/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/cmd/main.go -------------------------------------------------------------------------------- /pkg/build/cmd/npm.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/cmd/npm.go -------------------------------------------------------------------------------- /pkg/build/cmd/package.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/cmd/package.go -------------------------------------------------------------------------------- /pkg/build/cmd/publishaws.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/cmd/publishaws.go -------------------------------------------------------------------------------- /pkg/build/cmd/shellcheck.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/cmd/shellcheck.go -------------------------------------------------------------------------------- /pkg/build/cmd/uploadcdn.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/cmd/uploadcdn.go -------------------------------------------------------------------------------- /pkg/build/cmd/verifydrone.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/cmd/verifydrone.go -------------------------------------------------------------------------------- /pkg/build/config/config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/config/config.go -------------------------------------------------------------------------------- /pkg/build/config/edition.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/config/edition.go -------------------------------------------------------------------------------- /pkg/build/config/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "9.2.0-pre" 3 | } 4 | -------------------------------------------------------------------------------- /pkg/build/config/revision.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/config/revision.go -------------------------------------------------------------------------------- /pkg/build/config/variant.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/config/variant.go -------------------------------------------------------------------------------- /pkg/build/config/version.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/config/version.go -------------------------------------------------------------------------------- /pkg/build/config/versions.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/config/versions.go -------------------------------------------------------------------------------- /pkg/build/cryptoutil/md5.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/cryptoutil/md5.go -------------------------------------------------------------------------------- /pkg/build/docker/build.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/docker/build.go -------------------------------------------------------------------------------- /pkg/build/docker/init.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/docker/init.go -------------------------------------------------------------------------------- /pkg/build/docker/push.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/docker/push.go -------------------------------------------------------------------------------- /pkg/build/docs.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/docs.go -------------------------------------------------------------------------------- /pkg/build/droneutil/docs.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/droneutil/docs.go -------------------------------------------------------------------------------- /pkg/build/droneutil/event.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/droneutil/event.go -------------------------------------------------------------------------------- /pkg/build/env/fallback.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/env/fallback.go -------------------------------------------------------------------------------- /pkg/build/env/lookup.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/env/lookup.go -------------------------------------------------------------------------------- /pkg/build/env/lookup_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/env/lookup_test.go -------------------------------------------------------------------------------- /pkg/build/errutil/group.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/errutil/group.go -------------------------------------------------------------------------------- /pkg/build/exec.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/exec.go -------------------------------------------------------------------------------- /pkg/build/executil/exec.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/executil/exec.go -------------------------------------------------------------------------------- /pkg/build/frontend/build.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/frontend/build.go -------------------------------------------------------------------------------- /pkg/build/frontend/config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/frontend/config.go -------------------------------------------------------------------------------- /pkg/build/fs.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/fs.go -------------------------------------------------------------------------------- /pkg/build/fsutil/copyfile.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/fsutil/copyfile.go -------------------------------------------------------------------------------- /pkg/build/fsutil/exsits.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/fsutil/exsits.go -------------------------------------------------------------------------------- /pkg/build/gcloud/auth.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/gcloud/auth.go -------------------------------------------------------------------------------- /pkg/build/git.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/git.go -------------------------------------------------------------------------------- /pkg/build/git/git.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/git/git.go -------------------------------------------------------------------------------- /pkg/build/git/git_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/git/git_test.go -------------------------------------------------------------------------------- /pkg/build/golangutils/doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/golangutils/doc.go -------------------------------------------------------------------------------- /pkg/build/gpg/gpg.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/gpg/gpg.go -------------------------------------------------------------------------------- /pkg/build/gpg/import.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/gpg/import.go -------------------------------------------------------------------------------- /pkg/build/grafana/build.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/grafana/build.go -------------------------------------------------------------------------------- /pkg/build/grafana/variant.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/grafana/variant.go -------------------------------------------------------------------------------- /pkg/build/lerna/lerna.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/lerna/lerna.go -------------------------------------------------------------------------------- /pkg/build/metrics/publish.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/metrics/publish.go -------------------------------------------------------------------------------- /pkg/build/npm/npm.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/npm/npm.go -------------------------------------------------------------------------------- /pkg/build/opts.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/opts.go -------------------------------------------------------------------------------- /pkg/build/packaging/docs.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/packaging/docs.go -------------------------------------------------------------------------------- /pkg/build/plugins/build.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/plugins/build.go -------------------------------------------------------------------------------- /pkg/build/plugins/zip.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/plugins/zip.go -------------------------------------------------------------------------------- /pkg/build/syncutil/pool.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/syncutil/pool.go -------------------------------------------------------------------------------- /pkg/build/validation/docs.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/validation/docs.go -------------------------------------------------------------------------------- /pkg/build/version.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/version.go -------------------------------------------------------------------------------- /pkg/build/wire/AUTHORS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/wire/AUTHORS -------------------------------------------------------------------------------- /pkg/build/wire/CONTRIBUTORS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/wire/CONTRIBUTORS -------------------------------------------------------------------------------- /pkg/build/wire/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/wire/LICENSE -------------------------------------------------------------------------------- /pkg/build/wire/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/wire/README.md -------------------------------------------------------------------------------- /pkg/build/wire/cmd/wire/wire: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/wire/cmd/wire/wire -------------------------------------------------------------------------------- /pkg/build/wire/docs/faq.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/wire/docs/faq.md -------------------------------------------------------------------------------- /pkg/build/wire/docs/guide.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/wire/docs/guide.md -------------------------------------------------------------------------------- /pkg/build/wire/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/wire/go.mod -------------------------------------------------------------------------------- /pkg/build/wire/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/wire/go.sum -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/BindInjectorArg/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/BindInjectorArg/want/program_out.txt: -------------------------------------------------------------------------------- 1 | hello 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/BindInjectorArgPointer/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/BindInjectorArgPointer/want/program_out.txt: -------------------------------------------------------------------------------- 1 | hello 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/BindInterfaceWithValue/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/BindInterfaceWithValue/want/program_out.txt: -------------------------------------------------------------------------------- 1 | Hello, World! -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/BuildTagsAllPackages/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/BuildTagsAllPackages/want/program_out.txt: -------------------------------------------------------------------------------- 1 | Hello, World! 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/Chain/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/Chain/want/program_out.txt: -------------------------------------------------------------------------------- 1 | 42 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/Cleanup/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/Cleanup/want/program_out.txt: -------------------------------------------------------------------------------- 1 | 77 2 | 0 3 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/CopyOtherDecls/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/CopyOtherDecls/want/program_out.txt: -------------------------------------------------------------------------------- 1 | Hello, World! 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/Cycle/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/DocComment/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/DocComment/want/program_out.txt: -------------------------------------------------------------------------------- 1 | Hello, World 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/EmptyVar/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/ExampleWithMocks/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/ExportedValue/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/ExportedValue/want/program_out.txt: -------------------------------------------------------------------------------- 1 | Hello, World! 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/ExportedValueDifferentPackage/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/ExportedValueDifferentPackage/want/program_out.txt: -------------------------------------------------------------------------------- 1 | Hello, World! 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/FieldsOfCycle/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/FieldsOfImportedStruct/pkg: -------------------------------------------------------------------------------- 1 | example.com/main 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/FieldsOfImportedStruct/want/program_out.txt: -------------------------------------------------------------------------------- 1 | 1 2 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/FieldsOfStruct/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/FieldsOfStruct/want/program_out.txt: -------------------------------------------------------------------------------- 1 | Hello, World! 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/FieldsOfStructDoNotProvidePtrToField/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/FieldsOfStructPointer/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/FieldsOfValueStruct/pkg: -------------------------------------------------------------------------------- 1 | example.com/main 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/FieldsOfValueStruct/want/program_out.txt: -------------------------------------------------------------------------------- 1 | 1 2 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/FuncArgProvider/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/Header/header: -------------------------------------------------------------------------------- 1 | // This is a sample header file. 2 | // 3 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/Header/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/Header/want/program_out.txt: -------------------------------------------------------------------------------- 1 | 41 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/ImportedInterfaceBinding/pkg: -------------------------------------------------------------------------------- 1 | example.com/bar 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/ImportedInterfaceBinding/want/program_out.txt: -------------------------------------------------------------------------------- 1 | Hello, World! 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/InjectInput/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/InjectInput/want/program_out.txt: -------------------------------------------------------------------------------- 1 | 42 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/InjectInputConflict/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/InjectWithPanic/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/InjectWithPanic/want/program_out.txt: -------------------------------------------------------------------------------- 1 | Hello, World! 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/InjectorMissingCleanup/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/InjectorMissingError/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/InterfaceBinding/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/InterfaceBinding/want/program_out.txt: -------------------------------------------------------------------------------- 1 | Hello, World! 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/InterfaceBindingDoesntImplement/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/InterfaceBindingInvalidArg0/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/InterfaceBindingNotEnoughArgs/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/InterfaceBindingReuse/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/InterfaceBindingReuse/want/program_out.txt: -------------------------------------------------------------------------------- 1 | 1 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/InterfaceValue/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/InterfaceValue/want/program_out.txt: -------------------------------------------------------------------------------- 1 | hello world 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/InterfaceValueDoesntImplement/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/InterfaceValueInvalidArg0/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/InterfaceValueNotEnoughArgs/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/InvalidInjector/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/MultipleArgsSameType/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/MultipleBindings/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/MultipleMissingInputs/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/MultipleSimilarPackages/pkg: -------------------------------------------------------------------------------- 1 | example.com/main 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/MultipleSimilarPackages/want/program_out.txt: -------------------------------------------------------------------------------- 1 | 1 2 3 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/NamingWorstCase/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/NamingWorstCase/want/program_out.txt: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/NamingWorstCaseAllInOne/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/NamingWorstCaseAllInOne/want/program_out.txt: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/NiladicIdentity/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/NiladicIdentity/want/program_out.txt: -------------------------------------------------------------------------------- 1 | Hello, World! 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/NiladicValue/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/NiladicValue/want/program_out.txt: -------------------------------------------------------------------------------- 1 | Hello, World! 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/NoImplicitInterface/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/NoInjectParamNames/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/NoInjectParamNames/want/program_out.txt: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/NoopBuild/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/NoopBuild/want/program_out.txt: -------------------------------------------------------------------------------- 1 | Hello, World! 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/NoopBuild/want/wire_gen.go: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/PartialCleanup/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/PkgImport/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/PkgImport/want/program_out.txt: -------------------------------------------------------------------------------- 1 | 42 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/ProviderSetBindingMissingConcreteType/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/RelativePkg/pkg: -------------------------------------------------------------------------------- 1 | ./foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/RelativePkg/want/program_out.txt: -------------------------------------------------------------------------------- 1 | Hello, World! 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/ReservedKeywords/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/ReservedKeywords/want/program_out.txt: -------------------------------------------------------------------------------- 1 | 42 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/ReturnArgumentAsInterface/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/ReturnArgumentAsInterface/want/program_out.txt: -------------------------------------------------------------------------------- 1 | Hello, World! 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/ReturnError/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/ReturnError/want/program_out.txt: -------------------------------------------------------------------------------- 1 | 0 2 | true 3 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/Struct/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/Struct/want/program_out.txt: -------------------------------------------------------------------------------- 1 | 41 1 2 | 41 0 3 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/StructNotAStruct/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/StructPointer/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/StructPointer/want/program_out.txt: -------------------------------------------------------------------------------- 1 | 41 1 &{} 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/StructWithPreventTag/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/TwoDeps/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/TwoDeps/want/program_out.txt: -------------------------------------------------------------------------------- 1 | 42 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/UnexportedStruct/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/UnexportedValue/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/UnusedProviders/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/ValueChain/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/ValueChain/want/program_out.txt: -------------------------------------------------------------------------------- 1 | 42 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/ValueConversion/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/ValueConversion/want/program_out.txt: -------------------------------------------------------------------------------- 1 | Hello, World! 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/ValueFromFunctionScope/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/ValueIsInterfaceValue/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/ValueIsStruct/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/ValueIsStruct/want/program_out.txt: -------------------------------------------------------------------------------- 1 | 42 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/VarValue/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/VarValue/want/program_out.txt: -------------------------------------------------------------------------------- 1 | Package init 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/Varargs/pkg: -------------------------------------------------------------------------------- 1 | example.com/foo 2 | -------------------------------------------------------------------------------- /pkg/build/wire/internal/wire/testdata/Varargs/want/program_out.txt: -------------------------------------------------------------------------------- 1 | Hello, World! 2 | -------------------------------------------------------------------------------- /pkg/build/wire/wire.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/build/wire/wire.go -------------------------------------------------------------------------------- /pkg/bus/bus.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/bus/bus.go -------------------------------------------------------------------------------- /pkg/bus/bus_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/bus/bus_test.go -------------------------------------------------------------------------------- /pkg/cmd/grafana-cli/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/cmd/grafana-cli/main.go -------------------------------------------------------------------------------- /pkg/cmd/grafana/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/cmd/grafana/main.go -------------------------------------------------------------------------------- /pkg/cmd/grafana/main_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/cmd/grafana/main_test.go -------------------------------------------------------------------------------- /pkg/codegen/astmanip_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/codegen/astmanip_test.go -------------------------------------------------------------------------------- /pkg/codegen/generators.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/codegen/generators.go -------------------------------------------------------------------------------- /pkg/codegen/jenny_go_spec.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/codegen/jenny_go_spec.go -------------------------------------------------------------------------------- /pkg/codegen/tmpl.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/codegen/tmpl.go -------------------------------------------------------------------------------- /pkg/codegen/util_go.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/codegen/util_go.go -------------------------------------------------------------------------------- /pkg/codegen/util_ts.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/codegen/util_ts.go -------------------------------------------------------------------------------- /pkg/components/loki/README: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/components/loki/README -------------------------------------------------------------------------------- /pkg/components/null/float.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/components/null/float.go -------------------------------------------------------------------------------- /pkg/events/events.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/events/events.go -------------------------------------------------------------------------------- /pkg/expr/classic/classic.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/classic/classic.go -------------------------------------------------------------------------------- /pkg/expr/classic/reduce.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/classic/reduce.go -------------------------------------------------------------------------------- /pkg/expr/commands.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/commands.go -------------------------------------------------------------------------------- /pkg/expr/commands_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/commands_test.go -------------------------------------------------------------------------------- /pkg/expr/converter.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/converter.go -------------------------------------------------------------------------------- /pkg/expr/converter_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/converter_test.go -------------------------------------------------------------------------------- /pkg/expr/dataplane.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/dataplane.go -------------------------------------------------------------------------------- /pkg/expr/dataplane_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/dataplane_test.go -------------------------------------------------------------------------------- /pkg/expr/errors.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/errors.go -------------------------------------------------------------------------------- /pkg/expr/errors_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/errors_test.go -------------------------------------------------------------------------------- /pkg/expr/graph.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/graph.go -------------------------------------------------------------------------------- /pkg/expr/graph_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/graph_test.go -------------------------------------------------------------------------------- /pkg/expr/hysteresis.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/hysteresis.go -------------------------------------------------------------------------------- /pkg/expr/hysteresis_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/hysteresis_test.go -------------------------------------------------------------------------------- /pkg/expr/mathexp/exp.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/mathexp/exp.go -------------------------------------------------------------------------------- /pkg/expr/mathexp/exp_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/mathexp/exp_test.go -------------------------------------------------------------------------------- /pkg/expr/mathexp/funcs.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/mathexp/funcs.go -------------------------------------------------------------------------------- /pkg/expr/mathexp/reduce.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/mathexp/reduce.go -------------------------------------------------------------------------------- /pkg/expr/mathexp/resample.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/mathexp/resample.go -------------------------------------------------------------------------------- /pkg/expr/mathexp/testing.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/mathexp/testing.go -------------------------------------------------------------------------------- /pkg/expr/mathexp/types.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/mathexp/types.go -------------------------------------------------------------------------------- /pkg/expr/metrics.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/metrics.go -------------------------------------------------------------------------------- /pkg/expr/ml.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/ml.go -------------------------------------------------------------------------------- /pkg/expr/ml/model.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/ml/model.go -------------------------------------------------------------------------------- /pkg/expr/ml/node.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/ml/node.go -------------------------------------------------------------------------------- /pkg/expr/ml/node_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/ml/node_test.go -------------------------------------------------------------------------------- /pkg/expr/ml/outlier.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/ml/outlier.go -------------------------------------------------------------------------------- /pkg/expr/ml/outlier_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/ml/outlier_test.go -------------------------------------------------------------------------------- /pkg/expr/ml/testing.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/ml/testing.go -------------------------------------------------------------------------------- /pkg/expr/ml_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/ml_test.go -------------------------------------------------------------------------------- /pkg/expr/nodes.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/nodes.go -------------------------------------------------------------------------------- /pkg/expr/nodes_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/nodes_test.go -------------------------------------------------------------------------------- /pkg/expr/query.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/query.go -------------------------------------------------------------------------------- /pkg/expr/query.types.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/query.types.json -------------------------------------------------------------------------------- /pkg/expr/query_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/query_test.go -------------------------------------------------------------------------------- /pkg/expr/reader.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/reader.go -------------------------------------------------------------------------------- /pkg/expr/service.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/service.go -------------------------------------------------------------------------------- /pkg/expr/service_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/service_test.go -------------------------------------------------------------------------------- /pkg/expr/sql/parser.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/sql/parser.go -------------------------------------------------------------------------------- /pkg/expr/sql/parser_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/sql/parser_test.go -------------------------------------------------------------------------------- /pkg/expr/sql_command.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/sql_command.go -------------------------------------------------------------------------------- /pkg/expr/sql_command_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/sql_command_test.go -------------------------------------------------------------------------------- /pkg/expr/testing.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/testing.go -------------------------------------------------------------------------------- /pkg/expr/threshold.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/threshold.go -------------------------------------------------------------------------------- /pkg/expr/threshold_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/threshold_test.go -------------------------------------------------------------------------------- /pkg/expr/transform.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/expr/transform.go -------------------------------------------------------------------------------- /pkg/extensions/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/extensions/main.go -------------------------------------------------------------------------------- /pkg/infra/appcontext/user.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/infra/appcontext/user.go -------------------------------------------------------------------------------- /pkg/infra/db/db.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/infra/db/db.go -------------------------------------------------------------------------------- /pkg/infra/db/sqlbuilder.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/infra/db/sqlbuilder.go -------------------------------------------------------------------------------- /pkg/infra/filestorage/api.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/infra/filestorage/api.go -------------------------------------------------------------------------------- /pkg/infra/fs/copy.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/infra/fs/copy.go -------------------------------------------------------------------------------- /pkg/infra/fs/copy_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/infra/fs/copy_test.go -------------------------------------------------------------------------------- /pkg/infra/fs/exists.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/infra/fs/exists.go -------------------------------------------------------------------------------- /pkg/infra/fs/exists_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/infra/fs/exists_test.go -------------------------------------------------------------------------------- /pkg/infra/kvstore/kvstore.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/infra/kvstore/kvstore.go -------------------------------------------------------------------------------- /pkg/infra/kvstore/model.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/infra/kvstore/model.go -------------------------------------------------------------------------------- /pkg/infra/kvstore/sql.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/infra/kvstore/sql.go -------------------------------------------------------------------------------- /pkg/infra/log/file.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/infra/log/file.go -------------------------------------------------------------------------------- /pkg/infra/log/file_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/infra/log/file_test.go -------------------------------------------------------------------------------- /pkg/infra/log/handlers.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/infra/log/handlers.go -------------------------------------------------------------------------------- /pkg/infra/log/interface.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/infra/log/interface.go -------------------------------------------------------------------------------- /pkg/infra/log/log.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/infra/log/log.go -------------------------------------------------------------------------------- /pkg/infra/log/log_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/infra/log/log_test.go -------------------------------------------------------------------------------- /pkg/infra/log/syslog.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/infra/log/syslog.go -------------------------------------------------------------------------------- /pkg/infra/metrics/metrics.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/infra/metrics/metrics.go -------------------------------------------------------------------------------- /pkg/infra/metrics/service.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/infra/metrics/service.go -------------------------------------------------------------------------------- /pkg/infra/metrics/wireset.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/infra/metrics/wireset.go -------------------------------------------------------------------------------- /pkg/infra/network/address.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/infra/network/address.go -------------------------------------------------------------------------------- /pkg/infra/process/process.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/infra/process/process.go -------------------------------------------------------------------------------- /pkg/infra/slugify/slugify.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/infra/slugify/slugify.go -------------------------------------------------------------------------------- /pkg/infra/tracing/tracing.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/infra/tracing/tracing.go -------------------------------------------------------------------------------- /pkg/infra/usagestats/mock.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/infra/usagestats/mock.go -------------------------------------------------------------------------------- /pkg/kinds/general.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/kinds/general.go -------------------------------------------------------------------------------- /pkg/kinds/role/role_gen.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/kinds/role/role_gen.go -------------------------------------------------------------------------------- /pkg/kinds/team/team_gen.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/kinds/team/team_gen.go -------------------------------------------------------------------------------- /pkg/login/social/social.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/login/social/social.go -------------------------------------------------------------------------------- /pkg/middleware/auth.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/middleware/auth.go -------------------------------------------------------------------------------- /pkg/middleware/auth_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/middleware/auth_test.go -------------------------------------------------------------------------------- /pkg/middleware/csp.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/middleware/csp.go -------------------------------------------------------------------------------- /pkg/middleware/csrf/csrf.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/middleware/csrf/csrf.go -------------------------------------------------------------------------------- /pkg/middleware/gziper.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/middleware/gziper.go -------------------------------------------------------------------------------- /pkg/middleware/middleware.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/middleware/middleware.go -------------------------------------------------------------------------------- /pkg/middleware/quota.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/middleware/quota.go -------------------------------------------------------------------------------- /pkg/middleware/quota_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/middleware/quota_test.go -------------------------------------------------------------------------------- /pkg/middleware/recovery.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/middleware/recovery.go -------------------------------------------------------------------------------- /pkg/middleware/testing.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/middleware/testing.go -------------------------------------------------------------------------------- /pkg/models/theme.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/models/theme.go -------------------------------------------------------------------------------- /pkg/modules/dependencies.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/modules/dependencies.go -------------------------------------------------------------------------------- /pkg/modules/listener.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/modules/listener.go -------------------------------------------------------------------------------- /pkg/modules/modules.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/modules/modules.go -------------------------------------------------------------------------------- /pkg/modules/util.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/modules/util.go -------------------------------------------------------------------------------- /pkg/plugins/apiserver.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/plugins/apiserver.go -------------------------------------------------------------------------------- /pkg/plugins/auth/models.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/plugins/auth/models.go -------------------------------------------------------------------------------- /pkg/plugins/codegen/tmpl.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/plugins/codegen/tmpl.go -------------------------------------------------------------------------------- /pkg/plugins/config/config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/plugins/config/config.go -------------------------------------------------------------------------------- /pkg/plugins/errors.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/plugins/errors.go -------------------------------------------------------------------------------- /pkg/plugins/ifaces.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/plugins/ifaces.go -------------------------------------------------------------------------------- /pkg/plugins/localfiles.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/plugins/localfiles.go -------------------------------------------------------------------------------- /pkg/plugins/log/fake.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/plugins/log/fake.go -------------------------------------------------------------------------------- /pkg/plugins/log/ifaces.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/plugins/log/ifaces.go -------------------------------------------------------------------------------- /pkg/plugins/log/logger.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/plugins/log/logger.go -------------------------------------------------------------------------------- /pkg/plugins/manager/testdata/includes-symlinks/extra: -------------------------------------------------------------------------------- 1 | dashboards/extra -------------------------------------------------------------------------------- /pkg/plugins/manager/testdata/includes-symlinks/symlink_to_txt: -------------------------------------------------------------------------------- 1 | text.txt -------------------------------------------------------------------------------- /pkg/plugins/manager/testdata/invalid-v1-signature/plugin/MANIFEST.txt: -------------------------------------------------------------------------------- 1 | Invalid manifest 2 | -------------------------------------------------------------------------------- /pkg/plugins/manager/testdata/invalid-v2-extra-file/plugin/extraFile: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /pkg/plugins/manager/testdata/no-rootfile/dummy: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /pkg/plugins/manager/testdata/pluginRootWithDist/datasource/plugin.json: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /pkg/plugins/manager/testdata/pluginRootWithDist/dist/plugin.json: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /pkg/plugins/manager/testdata/pluginRootWithDist/panel/dist/plugin.json: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /pkg/plugins/manager/testdata/pluginRootWithDist/panel/src/plugin.json: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /pkg/plugins/manager/testdata/renderer-added-file/plugin/chrome-win/debug.log: -------------------------------------------------------------------------------- 1 | TEST LOG LINE 2 | -------------------------------------------------------------------------------- /pkg/plugins/manager/testdata/symbolic-plugin-dirs/plugin: -------------------------------------------------------------------------------- 1 | ../includes-symlinks -------------------------------------------------------------------------------- /pkg/plugins/models.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/plugins/models.go -------------------------------------------------------------------------------- /pkg/plugins/pfs/decl.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/plugins/pfs/decl.go -------------------------------------------------------------------------------- /pkg/plugins/pfs/doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/plugins/pfs/doc.go -------------------------------------------------------------------------------- /pkg/plugins/pfs/errors.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/plugins/pfs/errors.go -------------------------------------------------------------------------------- /pkg/plugins/pfs/pfs.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/plugins/pfs/pfs.go -------------------------------------------------------------------------------- /pkg/plugins/pfs/plugin.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/plugins/pfs/plugin.go -------------------------------------------------------------------------------- /pkg/plugins/plugins.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/plugins/plugins.go -------------------------------------------------------------------------------- /pkg/plugins/plugins_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/plugins/plugins_test.go -------------------------------------------------------------------------------- /pkg/plugins/repo/client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/plugins/repo/client.go -------------------------------------------------------------------------------- /pkg/plugins/repo/errors.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/plugins/repo/errors.go -------------------------------------------------------------------------------- /pkg/plugins/repo/ifaces.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/plugins/repo/ifaces.go -------------------------------------------------------------------------------- /pkg/plugins/repo/models.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/plugins/repo/models.go -------------------------------------------------------------------------------- /pkg/plugins/repo/service.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/plugins/repo/service.go -------------------------------------------------------------------------------- /pkg/plugins/repo/version.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/plugins/repo/version.go -------------------------------------------------------------------------------- /pkg/plugins/storage/fs.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/plugins/storage/fs.go -------------------------------------------------------------------------------- /pkg/plugins/test_utils.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/plugins/test_utils.go -------------------------------------------------------------------------------- /pkg/promlib/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/promlib/README.md -------------------------------------------------------------------------------- /pkg/promlib/client/client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/promlib/client/client.go -------------------------------------------------------------------------------- /pkg/promlib/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/promlib/go.mod -------------------------------------------------------------------------------- /pkg/promlib/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/promlib/go.sum -------------------------------------------------------------------------------- /pkg/promlib/healthcheck.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/promlib/healthcheck.go -------------------------------------------------------------------------------- /pkg/promlib/heuristics.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/promlib/heuristics.go -------------------------------------------------------------------------------- /pkg/promlib/library.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/promlib/library.go -------------------------------------------------------------------------------- /pkg/promlib/library_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/promlib/library_test.go -------------------------------------------------------------------------------- /pkg/promlib/models/query.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/promlib/models/query.go -------------------------------------------------------------------------------- /pkg/promlib/models/result.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/promlib/models/result.go -------------------------------------------------------------------------------- /pkg/promlib/models/scope.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/promlib/models/scope.go -------------------------------------------------------------------------------- /pkg/promlib/utils/utils.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/promlib/utils/utils.go -------------------------------------------------------------------------------- /pkg/registry/apis/apis.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/registry/apis/apis.go -------------------------------------------------------------------------------- /pkg/registry/apis/wireset.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/registry/apis/wireset.go -------------------------------------------------------------------------------- /pkg/registry/registry.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/registry/registry.go -------------------------------------------------------------------------------- /pkg/ruleguard.rules.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/ruleguard.rules.go -------------------------------------------------------------------------------- /pkg/server/doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/server/doc.go -------------------------------------------------------------------------------- /pkg/server/module_runner.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/server/module_runner.go -------------------------------------------------------------------------------- /pkg/server/module_server.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/server/module_server.go -------------------------------------------------------------------------------- /pkg/server/runner.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/server/runner.go -------------------------------------------------------------------------------- /pkg/server/server.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/server/server.go -------------------------------------------------------------------------------- /pkg/server/server_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/server/server_test.go -------------------------------------------------------------------------------- /pkg/server/service.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/server/service.go -------------------------------------------------------------------------------- /pkg/server/test_env.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/server/test_env.go -------------------------------------------------------------------------------- /pkg/server/wire.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/server/wire.go -------------------------------------------------------------------------------- /pkg/server/wireexts_oss.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/server/wireexts_oss.go -------------------------------------------------------------------------------- /pkg/services/apikey/model.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/apikey/model.go -------------------------------------------------------------------------------- /pkg/services/auth/auth.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/auth/auth.go -------------------------------------------------------------------------------- /pkg/services/auth/id.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/auth/id.go -------------------------------------------------------------------------------- /pkg/services/auth/jwt/jwt.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/auth/jwt/jwt.go -------------------------------------------------------------------------------- /pkg/services/authn/authn.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/authn/authn.go -------------------------------------------------------------------------------- /pkg/services/authn/error.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/authn/error.go -------------------------------------------------------------------------------- /pkg/services/folder/model.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/folder/model.go -------------------------------------------------------------------------------- /pkg/services/gcom/gcom.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/gcom/gcom.go -------------------------------------------------------------------------------- /pkg/services/hooks/hooks.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/hooks/hooks.go -------------------------------------------------------------------------------- /pkg/services/ldap/helpers.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/ldap/helpers.go -------------------------------------------------------------------------------- /pkg/services/ldap/ldap.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/ldap/ldap.go -------------------------------------------------------------------------------- /pkg/services/ldap/model.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/ldap/model.go -------------------------------------------------------------------------------- /pkg/services/ldap/testing.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/ldap/testing.go -------------------------------------------------------------------------------- /pkg/services/live/live.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/live/live.go -------------------------------------------------------------------------------- /pkg/services/login/model.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/login/model.go -------------------------------------------------------------------------------- /pkg/services/ngalert/api/tooling/.gitignore: -------------------------------------------------------------------------------- 1 | go/ 2 | spec-stable.json 3 | -------------------------------------------------------------------------------- /pkg/services/org/model.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/org/model.go -------------------------------------------------------------------------------- /pkg/services/org/org.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/org/org.go -------------------------------------------------------------------------------- /pkg/services/pluginsintegration/renderer/testdata/plugins/app/plugin.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "app" 3 | } 4 | -------------------------------------------------------------------------------- /pkg/services/provisioning/alerting/testdata/common/empty-file/rules.yml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /pkg/services/provisioning/dashboards/testdata/test-dashboards/broken-dashboards/empty-json.json: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /pkg/services/provisioning/dashboards/testdata/test-dashboards/symlink: -------------------------------------------------------------------------------- 1 | containing-id/ -------------------------------------------------------------------------------- /pkg/services/provisioning/datasources/testdata/all-properties/not.yaml.txt: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /pkg/services/provisioning/datasources/testdata/zero-datasources/placeholder-for-git: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /pkg/services/provisioning/utils/utils_test.go: -------------------------------------------------------------------------------- 1 | package utils 2 | -------------------------------------------------------------------------------- /pkg/services/query/errors.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/query/errors.go -------------------------------------------------------------------------------- /pkg/services/query/models.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/query/models.go -------------------------------------------------------------------------------- /pkg/services/query/query.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/query/query.go -------------------------------------------------------------------------------- /pkg/services/quota/model.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/quota/model.go -------------------------------------------------------------------------------- /pkg/services/quota/quota.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/quota/quota.go -------------------------------------------------------------------------------- /pkg/services/star/api/api.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/star/api/api.go -------------------------------------------------------------------------------- /pkg/services/star/model.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/star/model.go -------------------------------------------------------------------------------- /pkg/services/star/star.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/star/star.go -------------------------------------------------------------------------------- /pkg/services/stats/models.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/stats/models.go -------------------------------------------------------------------------------- /pkg/services/stats/stats.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/stats/stats.go -------------------------------------------------------------------------------- /pkg/services/store/auth.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/store/auth.go -------------------------------------------------------------------------------- /pkg/services/store/config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/store/config.go -------------------------------------------------------------------------------- /pkg/services/store/http.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/store/http.go -------------------------------------------------------------------------------- /pkg/services/store/tree.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/store/tree.go -------------------------------------------------------------------------------- /pkg/services/store/types.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/store/types.go -------------------------------------------------------------------------------- /pkg/services/store/utils.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/store/utils.go -------------------------------------------------------------------------------- /pkg/services/tag/model.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/tag/model.go -------------------------------------------------------------------------------- /pkg/services/tag/tag.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/tag/tag.go -------------------------------------------------------------------------------- /pkg/services/team/model.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/team/model.go -------------------------------------------------------------------------------- /pkg/services/team/team.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/team/team.go -------------------------------------------------------------------------------- /pkg/services/user/error.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/user/error.go -------------------------------------------------------------------------------- /pkg/services/user/model.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/user/model.go -------------------------------------------------------------------------------- /pkg/services/user/user.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/services/user/user.go -------------------------------------------------------------------------------- /pkg/setting/date_formats.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/setting/date_formats.go -------------------------------------------------------------------------------- /pkg/setting/expanders.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/setting/expanders.go -------------------------------------------------------------------------------- /pkg/setting/provider.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/setting/provider.go -------------------------------------------------------------------------------- /pkg/setting/setting.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/setting/setting.go -------------------------------------------------------------------------------- /pkg/setting/setting_azure.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/setting/setting_azure.go -------------------------------------------------------------------------------- /pkg/setting/setting_jwt.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/setting/setting_jwt.go -------------------------------------------------------------------------------- /pkg/setting/setting_quota.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/setting/setting_quota.go -------------------------------------------------------------------------------- /pkg/setting/setting_smtp.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/setting/setting_smtp.go -------------------------------------------------------------------------------- /pkg/setting/setting_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/setting/setting_test.go -------------------------------------------------------------------------------- /pkg/setting/testdata/override.ini: -------------------------------------------------------------------------------- 1 | [paths] 2 | data = /tmp/override 3 | 4 | -------------------------------------------------------------------------------- /pkg/setting/testdata/override_windows.ini: -------------------------------------------------------------------------------- 1 | [paths] 2 | data = c:\tmp\override 3 | 4 | -------------------------------------------------------------------------------- /pkg/setting/testdata/session.ini: -------------------------------------------------------------------------------- 1 | [session] 2 | provider = file 3 | -------------------------------------------------------------------------------- /pkg/tests/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tests/README.md -------------------------------------------------------------------------------- /pkg/tests/apis/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tests/apis/README.md -------------------------------------------------------------------------------- /pkg/tests/apis/helper.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tests/apis/helper.go -------------------------------------------------------------------------------- /pkg/tests/apis/types.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tests/apis/types.go -------------------------------------------------------------------------------- /pkg/tests/utils.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tests/utils.go -------------------------------------------------------------------------------- /pkg/tsdb/Magefile.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/Magefile.go -------------------------------------------------------------------------------- /pkg/tsdb/grafana-testdata-datasource/.gitignore: -------------------------------------------------------------------------------- 1 | dist/ -------------------------------------------------------------------------------- /pkg/tsdb/grafanads/query.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/grafanads/query.go -------------------------------------------------------------------------------- /pkg/tsdb/graphite/types.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/graphite/types.go -------------------------------------------------------------------------------- /pkg/tsdb/influxdb/influxql/testdata/empty_response.json: -------------------------------------------------------------------------------- 1 | {"results": [{"statement_id": 0}]} 2 | -------------------------------------------------------------------------------- /pkg/tsdb/legacydata/doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/legacydata/doc.go -------------------------------------------------------------------------------- /pkg/tsdb/loki/api.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/loki/api.go -------------------------------------------------------------------------------- /pkg/tsdb/loki/api_mock.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/loki/api_mock.go -------------------------------------------------------------------------------- /pkg/tsdb/loki/api_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/loki/api_test.go -------------------------------------------------------------------------------- /pkg/tsdb/loki/frame.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/loki/frame.go -------------------------------------------------------------------------------- /pkg/tsdb/loki/frame_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/loki/frame_test.go -------------------------------------------------------------------------------- /pkg/tsdb/loki/healthcheck.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/loki/healthcheck.go -------------------------------------------------------------------------------- /pkg/tsdb/loki/loki.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/loki/loki.go -------------------------------------------------------------------------------- /pkg/tsdb/loki/parse_query.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/loki/parse_query.go -------------------------------------------------------------------------------- /pkg/tsdb/loki/step.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/loki/step.go -------------------------------------------------------------------------------- /pkg/tsdb/loki/step_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/loki/step_test.go -------------------------------------------------------------------------------- /pkg/tsdb/loki/streaming.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/loki/streaming.go -------------------------------------------------------------------------------- /pkg/tsdb/loki/testdata/empty.json: -------------------------------------------------------------------------------- 1 | {} -------------------------------------------------------------------------------- /pkg/tsdb/loki/testdata_dataplane/empty.json: -------------------------------------------------------------------------------- 1 | {} -------------------------------------------------------------------------------- /pkg/tsdb/loki/testdata_logs_dataplane/empty.json: -------------------------------------------------------------------------------- 1 | {} -------------------------------------------------------------------------------- /pkg/tsdb/loki/testdata_metric_dataplane/empty.json: -------------------------------------------------------------------------------- 1 | {} -------------------------------------------------------------------------------- /pkg/tsdb/loki/types.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/loki/types.go -------------------------------------------------------------------------------- /pkg/tsdb/mssql/macros.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/mssql/macros.go -------------------------------------------------------------------------------- /pkg/tsdb/mssql/mssql.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/mssql/mssql.go -------------------------------------------------------------------------------- /pkg/tsdb/mssql/mssql_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/mssql/mssql_test.go -------------------------------------------------------------------------------- /pkg/tsdb/mssql/proxy.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/mssql/proxy.go -------------------------------------------------------------------------------- /pkg/tsdb/mssql/proxy_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/mssql/proxy_test.go -------------------------------------------------------------------------------- /pkg/tsdb/mssql/sqleng/util/util.go: -------------------------------------------------------------------------------- 1 | package util 2 | 3 | func Pointer[T any](v T) *T { return &v } 4 | -------------------------------------------------------------------------------- /pkg/tsdb/mysql/macros.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/mysql/macros.go -------------------------------------------------------------------------------- /pkg/tsdb/mysql/mysql.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/mysql/mysql.go -------------------------------------------------------------------------------- /pkg/tsdb/mysql/mysql_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/mysql/mysql_test.go -------------------------------------------------------------------------------- /pkg/tsdb/mysql/proxy.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/mysql/proxy.go -------------------------------------------------------------------------------- /pkg/tsdb/mysql/proxy_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/mysql/proxy_test.go -------------------------------------------------------------------------------- /pkg/tsdb/mysql/sqleng/util/util.go: -------------------------------------------------------------------------------- 1 | package util 2 | 3 | func Pointer[T any](v T) *T { return &v } 4 | -------------------------------------------------------------------------------- /pkg/tsdb/opentsdb/types.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/opentsdb/types.go -------------------------------------------------------------------------------- /pkg/tsdb/parca/plugin.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/parca/plugin.go -------------------------------------------------------------------------------- /pkg/tsdb/parca/query.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/parca/query.go -------------------------------------------------------------------------------- /pkg/tsdb/parca/query_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/parca/query_test.go -------------------------------------------------------------------------------- /pkg/tsdb/parca/resources.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/parca/resources.go -------------------------------------------------------------------------------- /pkg/tsdb/parca/service.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/parca/service.go -------------------------------------------------------------------------------- /pkg/tsdb/tempo/grpc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/tempo/grpc.go -------------------------------------------------------------------------------- /pkg/tsdb/tempo/tempo.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/tempo/tempo.go -------------------------------------------------------------------------------- /pkg/tsdb/tempo/trace.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/tempo/trace.go -------------------------------------------------------------------------------- /pkg/tsdb/tempo/trace_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/tsdb/tempo/trace_test.go -------------------------------------------------------------------------------- /pkg/util/cmd/cmd.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/cmd/cmd.go -------------------------------------------------------------------------------- /pkg/util/cmputil/reporter.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/cmputil/reporter.go -------------------------------------------------------------------------------- /pkg/util/contextutil.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/contextutil.go -------------------------------------------------------------------------------- /pkg/util/contextutil_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/contextutil_test.go -------------------------------------------------------------------------------- /pkg/util/encoding.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/encoding.go -------------------------------------------------------------------------------- /pkg/util/encoding_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/encoding_test.go -------------------------------------------------------------------------------- /pkg/util/encryption.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/encryption.go -------------------------------------------------------------------------------- /pkg/util/encryption_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/encryption_test.go -------------------------------------------------------------------------------- /pkg/util/errutil/doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/errutil/doc.go -------------------------------------------------------------------------------- /pkg/util/errutil/errors.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/errutil/errors.go -------------------------------------------------------------------------------- /pkg/util/errutil/log.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/errutil/log.go -------------------------------------------------------------------------------- /pkg/util/errutil/source.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/errutil/source.go -------------------------------------------------------------------------------- /pkg/util/errutil/status.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/errutil/status.go -------------------------------------------------------------------------------- /pkg/util/errutil/template.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/errutil/template.go -------------------------------------------------------------------------------- /pkg/util/filepath.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/filepath.go -------------------------------------------------------------------------------- /pkg/util/filepath_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/filepath_test.go -------------------------------------------------------------------------------- /pkg/util/ip_address.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/ip_address.go -------------------------------------------------------------------------------- /pkg/util/ip_address_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/ip_address_test.go -------------------------------------------------------------------------------- /pkg/util/json.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/json.go -------------------------------------------------------------------------------- /pkg/util/json_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/json_test.go -------------------------------------------------------------------------------- /pkg/util/md5.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/md5.go -------------------------------------------------------------------------------- /pkg/util/md5_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/md5_test.go -------------------------------------------------------------------------------- /pkg/util/osutil/osutil.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/osutil/osutil.go -------------------------------------------------------------------------------- /pkg/util/pointer.go: -------------------------------------------------------------------------------- 1 | package util 2 | 3 | func Pointer[T any](v T) *T { return &v } 4 | -------------------------------------------------------------------------------- /pkg/util/retryer/retryer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/retryer/retryer.go -------------------------------------------------------------------------------- /pkg/util/reverse.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/reverse.go -------------------------------------------------------------------------------- /pkg/util/reverse_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/reverse_test.go -------------------------------------------------------------------------------- /pkg/util/ring/ring.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/ring/ring.go -------------------------------------------------------------------------------- /pkg/util/ring/ring_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/ring/ring_test.go -------------------------------------------------------------------------------- /pkg/util/split_email.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/split_email.go -------------------------------------------------------------------------------- /pkg/util/split_email_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/split_email_test.go -------------------------------------------------------------------------------- /pkg/util/strings.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/strings.go -------------------------------------------------------------------------------- /pkg/util/strings_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/strings_test.go -------------------------------------------------------------------------------- /pkg/util/svg.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/svg.go -------------------------------------------------------------------------------- /pkg/util/ticker/metrics.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/ticker/metrics.go -------------------------------------------------------------------------------- /pkg/util/ticker/ticker.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/ticker/ticker.go -------------------------------------------------------------------------------- /pkg/util/tls.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/tls.go -------------------------------------------------------------------------------- /pkg/util/tls_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/tls_test.go -------------------------------------------------------------------------------- /pkg/util/url.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/url.go -------------------------------------------------------------------------------- /pkg/util/url_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/url_test.go -------------------------------------------------------------------------------- /pkg/util/validation.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/validation.go -------------------------------------------------------------------------------- /pkg/util/validation_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/validation_test.go -------------------------------------------------------------------------------- /pkg/util/xorm/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/xorm/LICENSE -------------------------------------------------------------------------------- /pkg/util/xorm/convert.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/xorm/convert.go -------------------------------------------------------------------------------- /pkg/util/xorm/engine.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/xorm/engine.go -------------------------------------------------------------------------------- /pkg/util/xorm/engine_cond.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/xorm/engine_cond.go -------------------------------------------------------------------------------- /pkg/util/xorm/error.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/xorm/error.go -------------------------------------------------------------------------------- /pkg/util/xorm/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/xorm/go.mod -------------------------------------------------------------------------------- /pkg/util/xorm/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/xorm/go.sum -------------------------------------------------------------------------------- /pkg/util/xorm/helpers.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/xorm/helpers.go -------------------------------------------------------------------------------- /pkg/util/xorm/json.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/xorm/json.go -------------------------------------------------------------------------------- /pkg/util/xorm/logger.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/xorm/logger.go -------------------------------------------------------------------------------- /pkg/util/xorm/processors.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/xorm/processors.go -------------------------------------------------------------------------------- /pkg/util/xorm/rows.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/xorm/rows.go -------------------------------------------------------------------------------- /pkg/util/xorm/session.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/xorm/session.go -------------------------------------------------------------------------------- /pkg/util/xorm/session_get.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/xorm/session_get.go -------------------------------------------------------------------------------- /pkg/util/xorm/tag.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/xorm/tag.go -------------------------------------------------------------------------------- /pkg/util/xorm/xorm.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/util/xorm/xorm.go -------------------------------------------------------------------------------- /pkg/web/binding.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/web/binding.go -------------------------------------------------------------------------------- /pkg/web/binding_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/web/binding_test.go -------------------------------------------------------------------------------- /pkg/web/context.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/web/context.go -------------------------------------------------------------------------------- /pkg/web/context_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/web/context_test.go -------------------------------------------------------------------------------- /pkg/web/macaron.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/web/macaron.go -------------------------------------------------------------------------------- /pkg/web/macaron.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/web/macaron.s -------------------------------------------------------------------------------- /pkg/web/render.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/web/render.go -------------------------------------------------------------------------------- /pkg/web/router.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/web/router.go -------------------------------------------------------------------------------- /pkg/web/tree.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/pkg/web/tree.go -------------------------------------------------------------------------------- /pkg/web/web.go: -------------------------------------------------------------------------------- 1 | package web 2 | 3 | type Mux = Macaron 4 | -------------------------------------------------------------------------------- /playwright.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/playwright.config.ts -------------------------------------------------------------------------------- /plugins-bundled/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/plugins-bundled/README.md -------------------------------------------------------------------------------- /plugins-bundled/external.json: -------------------------------------------------------------------------------- 1 | { 2 | "plugins": [] 3 | } 4 | -------------------------------------------------------------------------------- /project.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/project.json -------------------------------------------------------------------------------- /public/api-merged.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/api-merged.json -------------------------------------------------------------------------------- /public/app/AppWrapper.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/app/AppWrapper.tsx -------------------------------------------------------------------------------- /public/app/app.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/app/app.ts -------------------------------------------------------------------------------- /public/app/core/components/AccessControl/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Permissions'; 2 | -------------------------------------------------------------------------------- /public/app/core/config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/app/core/config.ts -------------------------------------------------------------------------------- /public/app/core/context/ModalsProvider.ts: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /public/app/core/core.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/app/core/core.ts -------------------------------------------------------------------------------- /public/app/core/store.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/app/core/store.ts -------------------------------------------------------------------------------- /public/app/dev.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/app/dev.ts -------------------------------------------------------------------------------- /public/app/features/alerting/unified/components/rule-editor/GrafanaRuleInspector.tsx: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /public/app/features/connections/tabs/ConnectData/CardGrid/index.tsx: -------------------------------------------------------------------------------- 1 | export * from './CardGrid'; 2 | -------------------------------------------------------------------------------- /public/app/features/connections/tabs/ConnectData/Search/index.tsx: -------------------------------------------------------------------------------- 1 | export * from './Search'; 2 | -------------------------------------------------------------------------------- /public/app/features/connections/tabs/ConnectData/index.tsx: -------------------------------------------------------------------------------- 1 | export * from './ConnectData'; 2 | -------------------------------------------------------------------------------- /public/app/features/plugins/all.ts: -------------------------------------------------------------------------------- 1 | import './datasource_srv'; 2 | -------------------------------------------------------------------------------- /public/app/features/plugins/sandbox/constants.ts: -------------------------------------------------------------------------------- 1 | export const forbiddenElements = ['iframe']; 2 | -------------------------------------------------------------------------------- /public/app/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/app/index.ts -------------------------------------------------------------------------------- /public/app/plugins/datasource/azuremonitor/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /public/app/plugins/datasource/cloud-monitoring/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /public/app/plugins/datasource/grafana-postgresql-datasource/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | -------------------------------------------------------------------------------- /public/app/plugins/datasource/grafana-pyroscope-datasource/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | -------------------------------------------------------------------------------- /public/app/plugins/datasource/grafana-testdata-datasource/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | -------------------------------------------------------------------------------- /public/app/plugins/datasource/jaeger/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | -------------------------------------------------------------------------------- /public/app/plugins/datasource/mysql/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | -------------------------------------------------------------------------------- /public/app/plugins/datasource/parca/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | -------------------------------------------------------------------------------- /public/app/plugins/datasource/tempo/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | -------------------------------------------------------------------------------- /public/app/plugins/datasource/zipkin/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | -------------------------------------------------------------------------------- /public/app/plugins/datasource/zipkin/constants.ts: -------------------------------------------------------------------------------- 1 | export const apiPrefix = '/api/v2'; 2 | -------------------------------------------------------------------------------- /public/app/plugins/gen.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/app/plugins/gen.go -------------------------------------------------------------------------------- /public/app/plugins/panel/logs/types.ts: -------------------------------------------------------------------------------- 1 | export { Options } from './panelcfg.gen'; 2 | -------------------------------------------------------------------------------- /public/app/plugins/sdk.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/app/plugins/sdk.ts -------------------------------------------------------------------------------- /public/app/store/store.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/app/store/store.ts -------------------------------------------------------------------------------- /public/app/types/acl.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/app/types/acl.ts -------------------------------------------------------------------------------- /public/app/types/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/app/types/index.ts -------------------------------------------------------------------------------- /public/app/types/ldap.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/app/types/ldap.ts -------------------------------------------------------------------------------- /public/app/types/query.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/app/types/query.ts -------------------------------------------------------------------------------- /public/app/types/store.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/app/types/store.ts -------------------------------------------------------------------------------- /public/app/types/svg.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/app/types/svg.d.ts -------------------------------------------------------------------------------- /public/app/types/teams.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/app/types/teams.ts -------------------------------------------------------------------------------- /public/app/types/user.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/app/types/user.ts -------------------------------------------------------------------------------- /public/emails/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/emails/README.md -------------------------------------------------------------------------------- /public/img/bg/p0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/img/bg/p0.png -------------------------------------------------------------------------------- /public/img/bg/p1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/img/bg/p1.png -------------------------------------------------------------------------------- /public/img/bg/p2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/img/bg/p2.png -------------------------------------------------------------------------------- /public/img/bg/p3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/img/bg/p3.png -------------------------------------------------------------------------------- /public/img/bg/p4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/img/bg/p4.png -------------------------------------------------------------------------------- /public/img/bg/p5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/img/bg/p5.png -------------------------------------------------------------------------------- /public/img/bg/p6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/img/bg/p6.png -------------------------------------------------------------------------------- /public/img/checkbox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/img/checkbox.png -------------------------------------------------------------------------------- /public/img/critical.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/img/critical.svg -------------------------------------------------------------------------------- /public/img/cubes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/img/cubes.png -------------------------------------------------------------------------------- /public/img/envelope.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/img/envelope.png -------------------------------------------------------------------------------- /public/img/fav32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/img/fav32.png -------------------------------------------------------------------------------- /public/img/g8_home_v2.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/img/g8_home_v2.svg -------------------------------------------------------------------------------- /public/img/grab_dark.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/img/grab_dark.svg -------------------------------------------------------------------------------- /public/img/grab_light.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/img/grab_light.svg -------------------------------------------------------------------------------- /public/img/graph404.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/img/graph404.svg -------------------------------------------------------------------------------- /public/img/grot-news.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/img/grot-news.svg -------------------------------------------------------------------------------- /public/img/icn-app.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/img/icn-app.svg -------------------------------------------------------------------------------- /public/img/icn-panel.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/img/icn-panel.svg -------------------------------------------------------------------------------- /public/img/icn-row.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/img/icn-row.svg -------------------------------------------------------------------------------- /public/img/light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/img/light.png -------------------------------------------------------------------------------- /public/img/load.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/img/load.gif -------------------------------------------------------------------------------- /public/img/load_big.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/img/load_big.gif -------------------------------------------------------------------------------- /public/img/online.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/img/online.svg -------------------------------------------------------------------------------- /public/img/warn-tiny.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/img/warn-tiny.svg -------------------------------------------------------------------------------- /public/img/warn.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/img/warn.svg -------------------------------------------------------------------------------- /public/lib/.gitignore: -------------------------------------------------------------------------------- 1 | monaco/ 2 | -------------------------------------------------------------------------------- /public/locales/pseudo.mjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/locales/pseudo.mjs -------------------------------------------------------------------------------- /public/openapi3.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/openapi3.json -------------------------------------------------------------------------------- /public/robots.txt: -------------------------------------------------------------------------------- 1 | User-agent: * 2 | Disallow: / 3 | -------------------------------------------------------------------------------- /public/sass/_angular.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/sass/_angular.scss -------------------------------------------------------------------------------- /public/sass/_grafana.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/sass/_grafana.scss -------------------------------------------------------------------------------- /public/sass/fonts.scss: -------------------------------------------------------------------------------- 1 | @import 'base/fonts'; 2 | -------------------------------------------------------------------------------- /public/sass/icons.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/sass/icons.json -------------------------------------------------------------------------------- /public/test/.jshintrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/test/.jshintrc -------------------------------------------------------------------------------- /public/test/helpers/fieldConfig.ts: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /public/test/jest-setup.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/test/jest-setup.ts -------------------------------------------------------------------------------- /public/test/lib/common.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/test/lib/common.ts -------------------------------------------------------------------------------- /public/test/mocks/svg.ts: -------------------------------------------------------------------------------- 1 | export const svg = 'svg'; 2 | -------------------------------------------------------------------------------- /public/test/setupTests.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/test/setupTests.ts -------------------------------------------------------------------------------- /public/views/error.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/views/error.html -------------------------------------------------------------------------------- /public/views/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/views/index.html -------------------------------------------------------------------------------- /public/views/swagger.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/public/views/swagger.html -------------------------------------------------------------------------------- /scripts/build/build.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/scripts/build/build.sh -------------------------------------------------------------------------------- /scripts/build/ci-msi-build/msigenerator/wrapper.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | cd /oss || exit 1 3 | make 4 | -------------------------------------------------------------------------------- /scripts/build/publish.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/scripts/build/publish.sh -------------------------------------------------------------------------------- /scripts/build/release_publisher/testdata/grafana-enterprise-5.4.0-123pre1.linux-amd64.tar.gz: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /scripts/build/release_publisher/testdata/grafana-enterprise-5.4.0-123pre1.windows-amd64.msi: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /scripts/build/release_publisher/testdata/grafana-enterprise-5.4.0-123pre1.windows-amd64.zip: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /scripts/build/release_publisher/testdata/grafana-enterprise-5.4.0-123pre1.x86_64.rpm: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /scripts/build/release_publisher/testdata/grafana-enterprise_5.4.0-123pre1_amd64.deb: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /scripts/build/rpmmacros: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/scripts/build/rpmmacros -------------------------------------------------------------------------------- /scripts/ci-job-failed.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/scripts/ci-job-failed.sh -------------------------------------------------------------------------------- /scripts/ci-job-started.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/scripts/ci-job-started.sh -------------------------------------------------------------------------------- /scripts/cleanup-husky.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/scripts/cleanup-husky.sh -------------------------------------------------------------------------------- /scripts/cli/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/scripts/cli/tsconfig.json -------------------------------------------------------------------------------- /scripts/drone/pipelines/aws_marketplace.star: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /scripts/drone/pipelines/github.star: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /scripts/drone/rgm.star: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/scripts/drone/rgm.star -------------------------------------------------------------------------------- /scripts/drone/vault.star: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/scripts/drone/vault.star -------------------------------------------------------------------------------- /scripts/go/bin/revive: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/scripts/go/bin/revive -------------------------------------------------------------------------------- /scripts/mixin-check.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/scripts/mixin-check.sh -------------------------------------------------------------------------------- /scripts/modowners/.gitignore: -------------------------------------------------------------------------------- 1 | modowners -------------------------------------------------------------------------------- /scripts/modowners/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/scripts/modowners/go.mod -------------------------------------------------------------------------------- /scripts/modowners/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/scripts/modowners/go.sum -------------------------------------------------------------------------------- /scripts/protobuf-check.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/scripts/protobuf-check.sh -------------------------------------------------------------------------------- /scripts/stripnulls.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/scripts/stripnulls.sh -------------------------------------------------------------------------------- /scripts/tag_release.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/scripts/tag_release.sh -------------------------------------------------------------------------------- /scripts/verify-repo-update/deb-oss-beta.list: -------------------------------------------------------------------------------- 1 | deb https://packages.grafana.com/oss/deb beta main 2 | -------------------------------------------------------------------------------- /scripts/verify-repo-update/deb-oss-stable.list: -------------------------------------------------------------------------------- 1 | deb https://packages.grafana.com/oss/deb stable main 2 | -------------------------------------------------------------------------------- /stylelint.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/stylelint.config.js -------------------------------------------------------------------------------- /tools/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/tsconfig.json -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zganz404/grafana/HEAD/yarn.lock --------------------------------------------------------------------------------