447 Commits

Author SHA1 Message Date
4738957360 Querying: Pass dashboard and panel title as headers (#107032)
* WIP dashboard titile

* Add tests

* Fix tests

* Fix tests

* Remove redundant imports
2025-06-25 13:51:23 +02:00
38fc06a6ff Internationalisation: Mark up panel edit options (#107051)
* markup timeseries panel edit

* mark up matchers ui

* mark up bar chart

* mark up stat panel

* mark up gauge

* mark up bar gauge

* mark up table component

* mark up pie chart

* mark up state timeline

* mark up heatmap

* mark up status history

* mark up histogram

* mark up text panel

* mark up alert list

* mark up dashboard list

* mark up news panel

* mark up annolist

* mark up logs panel

* mark up node-graph

* mark up traces

* mark up trend

* mark up xychart

* fix build
2025-06-24 12:55:55 +01:00
2b8c74de2e i18n: removes useTranslate hook (#106556)
* i18n: removes useTranslate hook

* chore: fix duplicate imports

* chore: fix import sorting and hook dependencies
2025-06-12 11:03:52 +02:00
c30765bbea Dashboards: A11y improvements for edit experience (#106321)
* Dashboards: A11y improvements for edit experience

* Pass descriptor to render function
2025-06-05 16:15:31 +02:00
edf5f9fc7c Dashboards: Improve a11y for dashboard title/description inputs (#106294) 2025-06-04 10:58:11 +01:00
7bfa78c6e6 I18n: Update eslint rule to catch some untranslated object properties (#105072) 2025-05-28 21:14:43 +01:00
119d5897ea i18n: imports use @grafana/i18n (#105177)
* i18n: everything should target @grafana/i18n

* wip

* chore: updates after PR feedback

* Trigger build

* Trigger build

* Trigger build

* chore: skip flaky tests

* chore: skip flaky tests

* chore: skip flaky tests

* chore: skip flaky tests

* chore: skip flaky tests

* chore: skip flaky tests

* chore: revert all flaky tests

* chore: some incorrect usages of useTranslate
2025-05-15 09:17:14 +02:00
b2a6174b2c Dashboard edit pane interval variable (#105202)
* add interval variable
* remove label from query variable button
2025-05-12 08:45:24 -04:00
61cd19c540 Chore: More internationalisation markup (#104051)
* More markup

* fix some ternaries

* more alerting markup

* fix unit tests
2025-04-16 09:25:18 +01:00
a2b06e2ec9 Internationalisation: More markup (#103970)
* more markup!

* fix tests

* use times symbol
2025-04-15 10:05:03 +01:00
c83c486c9b Internationalisation: Lint rule improvement (#103788)
* improve autofix so it can fix foo={"bar"}

* apply fixes

* fix type checks + betterer

* tweak to make types happy
2025-04-10 16:22:52 +01:00
46bf9e6551 Dashboard: Group layout and Grid layout categories and simplified radio toggle design (#103433)
* Group layout and more

* Change word

* Update

* changed names and added new translation keys

* Update

* Update

* revert color change

* update
2025-04-07 14:30:09 +02:00
f96e4e9ad2 Frontend: Remove Angular (#99760)
* chore(angularsupport): delete feature toggle to disable angular

* feat(angular-support): remove config.angularSupportEnabled

* chore(jest): remove angular from setup file

* chore(angular): delete angular deprecation ui components

* refactor(angular): move migration featureflags into migration notice

* chore(dashboard): remove angular deprecation notices

* chore(annotations): remove angular editor loader

* feat(appwrapper): no more angular app loading

* feat(pluginscatalog): clean up angular plugin warnings and logic

* chore(angular): delete angular app and associated files

* feat(plugins): delete old angular graph plugin

* feat(plugins): delete old angular table panel

* feat(frontend): remove unused appEvent type

* feat(dashboards): clean up angular from panel options and menu

* feat(plugins): remove graph and table-old from built in plugins and delete sdk

* feat(frontend): remove angular related imports in routes and explore graph

* feat(theme): remove angular panel styles from global styles

* chore(i18n): run make i18n-extract

* test(api_plugins_test): refresh snapshot due to deleting old graph and table plugins

* chore(angulardeprecation): delete angular migration notice components and usage

* test(frontend): clean up tests that assert rendering angular deprecation notices

* chore(backend): remove autoMigrateOldPanels feature flag

* chore(config): remove angularSupportEnabled from config preventing loading angular plugins

* chore(graphpanel): remove autoMigrateGraphPanel from feature toggles

* chore(tablepanel): delete autoMigrateTablePanel feature flag

* chore(piechart): delete autoMigratePiechartPanel feature flag

* chore(worldmappanel): remove autoMigrateWorldmapPanel feature toggle

* chore(statpanel): remove autoMigrateStatPanel feature flag

* feat(dashboards): remove automigrate feature flags and always auto migrate angular panels

* test(pluginsintegration): fix failing loader test

* test(frontend): wip: fix failures and skip erroring migration tests

* chore(codeowners): remove deleted angular related files and directories

* test(graphite): remove angular mock from test file

* test(dashboards): skip failing exporter test, remove angularSupportEnabled flags

* test(dashbaord): skip another failing panel menu test

* Tests: fixes pkg/services/pluginsintegration/loader/loader_test.go (#100505)

* Tests: fixes pkg/services/pluginsintegration/plugins_integration_test.go

* Trigger Build

* chore(dashboards): remove angularComponent from getPanelMenu, update test

* feat(dashboards): remove all usage of AngularComponent and getAngularLoader

* chore(betterer): refresh results file

* feat(plugins): remove PluginAngularBadge component and usage

* feat(datasource_srv): remove usage of getLegacyAngularInjector

* feat(queryeditor): delete AngularQueryComponentScope type

* Chore: removes Angular from plugin_loader

* Chore: remove angular from getPlugin

* Chore: fix i18n

* Trigger Build

* Chore: remove more Angular from importPanelPlugin

* Chore: remove search options warning

* Chore: remove and deprecate Angular related

* chore(angular): remove angular dependencies from core and runtime

* chore(runtime): delete angular injector

* chore(data): delete angular scope from event bus

* chore(plugin-catalog): remove code pushing app plugins angular config page

* chore(yarn): refresh lock file

* chore(frontend): remove ng-loader from webpack configs, remove systemjs cjs plugin

* chore(navigation): remove tether-drop cleanup from GrafanaRouter, delete dependency

* chore(runtime): delete AngularLoader

* chore(betterer): refresh results file

* chore(betterer): fix out of sync results file

* feat(query): fix type and import errors in QueryEditorRow

* test(dashboards): delete skipped angular related tests

* Tests: add back tests and fix betterer

* Tests: fix broken test

* Trigger build

* chore(i18n): remove angular deprecation related strings

* test: clean up connections and plugins catalog tests

* chore(betterer): update results file

---------

Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
2025-04-04 11:31:35 +02:00
4fffc3adaf OpionsPane: Minor padding fix (#103337) 2025-04-03 12:45:40 +03:00
0fbb51ab08 Internationalisation: More automatic markup (#103260)
* easy markup

* final tweaks, betterer + translations

* fix unit test
2025-04-03 09:26:24 +01:00
031a047565 OptionCategory: Use text.secondary for closed categories (#102925)
* OptionCategory: Design update

* Update
2025-03-27 15:41:16 +01:00
648e68387e Dashboard: Edit pane UI updates (#102663)
* First pass

* Update

* Outline tweaks

* Update

* Updates

* Minor fixes

* fix

* Fixes

* Fixes

* Collapse add element pane when selecting
2025-03-26 12:26:55 +01:00
1ca9910736 Grafana Data: Use package.json exports for internal code (#102696)
* refactor(frontend): rename all @grafana/data/src imports to @grafana/data

* feat(grafana-data): introduce internal entrypoint for sharing code only with grafana

* feat(grafana-data): add test entrypoint for data test utils usage in core

* refactor(frontend): update import paths to use grafana/data exports entrypoints

* docs(grafana-data): update comment in internal/index.ts

* refactor(frontend): prefer public namespaced exports over re-exporting via internal

* chore(frontend): fix a couple more weird paths that typescript complains about
2025-03-25 10:48:36 +01:00
5cd8547131 Revert "Grafana Data: Use package.json exports for internal code (#102286)
Revert "Grafana Data: Use package.json exports for internal code (#102036)"

This reverts commit 91116de790c6c59248abd262721c40f169be6661.
2025-03-17 12:26:59 +00:00
91116de790 Grafana Data: Use package.json exports for internal code (#102036)
* refactor(frontend): rename all @grafana/data/src imports to @grafana/data

* feat(grafana-data): introduce internal entrypoint for sharing code only with grafana

* feat(grafana-data): add test entrypoint for data test utils usage in core

* refactor(frontend): update import paths to use grafana/data exports entrypoints

* docs(grafana-data): update comment in internal/index.ts

* refactor(frontend): prefer public namespaced exports over re-exporting via internal
2025-03-17 11:27:17 +01:00
270700c890 Dashboards: Remove panel edit override broken styles (#102054)
remove panel edit override styles causing issues
2025-03-13 09:48:40 +02:00
c9f563e576 Grafana UI: Use package.json exports for internal code (#101815)
* feat(grafana-ui): introduce development exports to prevent importing from grafana/ui/src

* refactor(theme-generation): move theme templates into scripts so themes continue to build

* refactor(frontend): replace  grafana/ui paths that use nested src with /internal or /unstable

* chore(betterer): update better results file

* feat(grafana-ui): support enterprise, remove Text component from internal

* docs(packages): update readme with exporting code conventions
2025-03-12 14:14:32 +01:00
e7e0b689c2 Dashboard: Edit pane header design and refactorings (#101851)
* Edit pane header

* Update

* Update

* Progress

* Progress

* Update

* Delete

* Delete icon button

* Update

* Fix

* remove need for arrow functions

* Update

* update

* Update

* Update

* Update
2025-03-10 15:03:54 +01:00
d3b550c230 Dashboards: Redesign edit pane of dashboard and viz panels (#101437)
* adjust options pane category component and shared logic

* redesign dashboard edit pane

* clean up

* redesign viz panel edit panes

* address comments

* updated i18n

* clean up

* address comments
2025-03-03 10:49:32 +00:00
a01ab790c0 Panel Edit: Add Annotations data (#101149)
* Add annotations data to panel editor

* Add tests for getVisualizationOptions2

* Add annotation check to test
2025-02-24 11:52:12 -06:00
33b48f7c6e PanelPlugin: Allow inverting hideFromDefaults (#100473) 2025-02-12 04:46:00 -06:00
ab74852fc9 PanelEdit: Align chevron direction (#100386)
Adjusted the collapsable section chevron
+ point down when closed
+ point up when expanded
2025-02-11 13:16:19 -05:00
71b8f487e0 Dashboards: Rows layout & editing (#96895)
* Dashboard: Panel edit and support for more layout items

* It's working

* Fix discard issue

* remove unused file

* Update

* Editing for responsive grid items now work

* Update

* Update

* Update

* WIP rows

* progres

* Progress

* Progress

* Focus selection works

* Update

* Update

* Progress

* Update

* Editing rows work

* Row editing works

* fix delete

* Update

* Row options fix

* Fix selecting rows

* Update

* update

* Update

* Update

* Remove cog icon button

* add import to toolbar

* Update

* Update
2024-12-10 07:21:30 +01:00
1fc9b4bfc1 Chore: Remove dashboard state barrel file (#97562)
* refactor(dashboard-state): delete dashboard/state barrel file and update imports

* chore(betterer): update results
2024-12-06 16:01:51 +01:00
bd07c6cf35 PanelEditor: Tweak category design (#96760)
* PanelEditor: Tweak category design

* Update

* remove unused import

* Switch angle dirctions

* Fix test
2024-11-20 19:37:51 +01:00
b0fe898fa1 Dashboard: Panel edit and support for different layout items (#96203)
* Dashboard: Panel edit and support for more layout items

* It's working

* Fix discard issue

* remove unused file

* Update

* Editing for responsive grid items now work

* Update

* Update

* Review fix
2024-11-20 14:09:56 +01:00
192423956b GrafanaUI: Mark ScrollContainer as stable and deprecate CustomScrollbar (#96331)
* deprecate CustomScrollbar, promote ScrollContainer

* add documentation start

* use the properly exported ScrollContainer

* Update packages/grafana-ui/src/components/ScrollContainer/ScrollContainer.mdx

Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>

---------

Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>
2024-11-14 12:06:21 +00:00
ee7f521c08 ScrollContainer: Use ScrollContainer in some dashboard components (#95668)
* use ScrollContainer in some dashboard components

* remove unnecessary wrapper

* remove unnecessary minHeight
2024-11-11 09:50:35 +00:00
db5f893ea6 Chore: Remove code related to viz/widget split feature (#95614) 2024-10-30 16:12:03 +00:00
180e82992b Routing: Clean up tests (#95018)
* Update ShareDrawer.test

* Update OptionsPaneOptions.test

* Update GenAIButton.test

* Update RouterDebugger

* Update ScopesDashboardsTreeDashboardItem.tsx

* Update ConfigEditor.tsx

* Update MuteTimings.test

* Update NewReceiverView.test
2024-10-21 13:42:30 +03:00
4d08f44667 SingleTopNav: Revert to using AppChromeUpdate so banners are correct (#94540)
* revert to using AppChromeUpdate

* fix dashboard settings in old arch

* remove empty interface

* fix AlertRuleForm
2024-10-11 15:07:01 +01:00
938bc9c2cc DashboardScene: Update matcher options immutably (#93960) 2024-10-04 17:39:35 +02:00
40ad52fdbc SingleTopNav: Handle for non-scenes dashboards (#94198)
handle singleTopNav for non-scenes dashboards
2024-10-04 15:11:32 +01:00
038d9cabde PanelEdit: Edit the source panel, refactor out VizPanelManager, simplify (#93045)
* Options pane, data pane queries tab and transformations tab working

* Update

* Discard works

* Panel inspect working

* Table viw works

* Repeat options

* Began fixing tests

* More tests fixed

* Progress on tests

* no errors

* init full width when enabling repeat

* Began moving VizPanelManager tests to where the code was moved

* Unlink libray panel code and unit test

* Fixes and unit tests for change tracking and resetting original state and dirty flag when saving

* migrating and improving unit tests

* Done with VizPanelManager tests refactoring

* Update

* Update

* remove console.log

* Removed unnesssary behavior and fixed test

* Update

* Fix unrelated test

* conditional options fix

* remove

* Fixing issue with editing repeated panels and scoping variable to first value

* Minor fix

* Fix discard query runner changes

* Review comment changes

* fix discard issue with new panels

* Add loading state to panel edit

* Fix test

* Update

* fix test

* fix lint

* lint

* Fix

* Fix overrides editing  mutating fieldConfig

---------

Co-authored-by: alexandra vargas <alexa1866@gmail.com>
2024-09-24 17:13:32 +02:00
161d452841 Chore: Type improvements (#93267)
* some type fixes + ignore graveyard folder

* few more fixes

* remove comment

* ignore global styles

* few more type fixes
2024-09-13 09:50:55 +01:00
4a4e3a4063 DashboardScenes: Use behavior for library panels (#90886)
* wip - refactor using libPanelBehavior

* wip

* wip

* wip

* migrate test

* wip

* nearly all tests done, except one commented which breaks

* migrate last test

* revert defaults.ini

* fix tests

* tests + fixes

* fix

* fix bug -- adding lib panel through CTA in empty dashboard didn't enter edit mode

* show unsaved lib panel changes modal

* fix height problems

* fix

* LibPanelBehavior: Fixes view panel and edit panel full page reload issues (alt fix)  (#92850)

* LibPanelsBehavior: Fixes view panel

* Sort of working except panel edit

* Got panel edit working

* LibraryPanelsBehavior: Simpler fix

* Cleanup

* Remove more stuff

* Update tests

* fix tests

* Work around timing issues

* remove log

* fix repeated panels not showing due to gridItem height not being set + translations

* remove log that affects tests

---------

Co-authored-by: Victor Marin <victor.marin@grafana.com>

* fix translations

* Fix save issue

---------

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2024-09-05 18:08:25 +03:00
0af4a20b58 Routing: Import useLocation from compat package (#92071)
* Routing: Import useLocation from compat package

* Add ComparRouter

* Add CompatRouter

* Fix tests

* Add CompatRouter to TestProvider

* Use findBy

* Remove AppChromeService

* Remove historyOptions

* Routing: Fix alerting/test utils issues from react compat router usage (#92127)

* Use render from test-utils

* Use compat router

* Convert more tests

---------

Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>
2024-08-23 09:54:13 +03:00
2b7338f8b6 Add optional APIVersion to DatasourceRef (#90076) 2024-07-08 13:12:56 +02:00
47f8717149 React: Use new JSX transform (#88802)
* update eslint, tsconfig + esbuild to handle new jsx transform

* remove thing that breaks the new jsx transform

* remove react imports

* adjust grafana-icons build

* is this the correct syntax?

* try this

* well this was much easier than expected...

* change grafana-plugin-configs webpack config

* fixes

* fix lockfile

* fix 2 more violations

* use path.resolve instead of require.resolve

* remove react import

* fix react imports

* more fixes

* remove React import

* remove import React from docs

* remove another react import
2024-06-25 12:43:47 +01:00
be65aaf5dc Chore: Clean up some more old SCSS (#89404)
* remove/migrate normalize.scss

* fix typo

* migrate _add_data_source styles

* migrate panel-header styles

* migrate slate styles to emotion globals

* put back a couple of classes used by external plugins
2024-06-21 10:03:57 +01:00
683390a4ec PanelHeaderCorner: Remove font-awesome icons (#87303)
* PanelHeaderCorner: Remove font-awesome

* Fix mode styles

* Remove unused styles

* Cleanup

* Simplify styles

* Fixes

* Remove unused variable
2024-05-03 20:05:03 +03:00
1d6d5cc2cd Chore: improve typings (#87306)
* some fixes

* some more fixes

* some canvas fixes

* use removeProperty instead

* few more

* fixy fix

* undo changes to ticks for now
2024-05-03 17:21:37 +01:00
0f98bd3b7b Chore: Rewrite dashboard component css using object styles (#86930) 2024-04-25 20:18:02 +01:00
5dd8353ab1 Dashboards: Migrate from aria-label e2e selectors to data-testid (#78536)
* Dashboards: Migrate from aria-label e2e selectors to data-testid

* more changes

* addPanelwidget

* Test: Update .betterer.results

* refactor: fix e2e tests

* refactor: fix failing test

* refactor: update plugin-e2e after adding selector changes to the packege

---------

Co-authored-by: Laura Benz <48948963+L-M-K-B@users.noreply.github.com>
Co-authored-by: Laura Benz <laura.benz@grafana.com>
2024-04-24 15:16:19 +02:00
9a2969fb4f RBAC: hide save button for users who can't save dashboard (#85758)
hide save button for users who can't save dashboard
2024-04-09 17:09:41 +01:00