2504 Commits

Author SHA1 Message Date
ee6cbd0efc BarChart/StateTimeline: Use noValue setting for error message when data is empty (#107147)
* fix: use fieldConfig.defaults.noValue in barchart and statetimeline

* change name of test

* remove todo comment

* lean on PanelDataErrorView in the case where no fields are present

* update StateTimeline and StatusHistory to use PanelDataErrorView

* fix test

* self-review cleanup
2025-06-27 08:28:13 -05:00
f1a22a8ea9 Enterprise: Links that inform about enterprise auth options (#106627)
* Enterprise: Links that inform about enterprise auth options

* Update

* fix¨

* Update links

* brand color badge

* update language

* Update

* Update
2025-06-27 11:40:03 +02:00
d3bd3175af ProvisionedFolder: Delete folder drawer (#107089)
* ProvisionedFolder: delete flow set up

---------

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2025-06-25 11:13:42 -04:00
dcfb079856 StateTimeline: Display false and empty string values (#107059)
* Support boolean false value mappings

* Support empty string value mapping
2025-06-24 12:07:13 -04:00
10b6dd97f8 Allow the docs plugin to use the sidebar (#106905) 2025-06-24 15:10:28 +01: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
5d3a1f07c8 Theme: Make viz colors configurable by the theme input (#106974)
* make viz colors configurable when creating the theme

* fix bug with palette not showing last color

* attempt to constrain the types better

* better generics

* remove reverseMap

* ensure there's an empty options default
2025-06-20 16:13:24 +01:00
7070da073e Drawer: Include divider and close button when passing a custom title element (#106896)
* make drawer title behaviour more consistent

* fix linting errors
2025-06-18 12:52:32 +01:00
e49c73533b I18n: Allow pseudo-locale to be enabled in production builds (#106738)
* I18n: Allow pseudo-locale to be enabled in production builds

* fix tests now that pseudo is around

* remove psuedo locale from i18n package

* load en-us from plugin resources for pseudo

* fix tests + remove 'hidden' option

---------

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2025-06-17 10:55:15 +01:00
09e8484bac i18n: rename locale to regionalFormat (#106585)
* locale -> regionalFormat, mirroring #102233

* set up regionalFormat to replace locale entirely

* replace locale with regionalFormat

* update reportInteraction arguments
2025-06-16 21:53:55 +02:00
1e41c07920 StateTimeline: Support NaN and null value mappings (#105638)
* fix(#92944): add StateTimeline Null+NaN handling

* chore: remove console.warns from debugging

* test: initialize a couple of simple tests

* test: more tests for hasMappedNaN and hasMappedNull

* chore: revert some of the let-const syntax cleanup for a later PR

* chore: rename should draw method

* chore: fix comment typo

* refactor(timeline-chart-utils): un-nest hasSpecialMappedValue() helper

* test(timeline-chart-utils): unit test hasSpecialMappedValue() helper

* chore: fix code comment typos in changed files

* refactor(timeline-chart): reduce helper DRY-ness for better performance

* fix(timeline-chart): check Y value for truthiness, not if it is finite

* test(state-timeline): additional gdev test panels with null + NN values

* fix(timeline-chart): allow Y value of zero in checks

---------

Co-authored-by: Jesse David Peterson <jesdavpet@users.noreply.github.com>
Co-authored-by: Adela Almasan <adela.almasan@grafana.com>
2025-06-12 15:13:25 -04:00
3c6da3f241 i18n: removes useTranslate from ESLint rules (#106597)
* i18n: removes useTranslate from eslint rules

* chore: remove some more useTranslate
2025-06-12 13:30:54 +02: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
44e7be134d TimeSeries: Fix rendering of sparse points with null gaps at outer edges (#106507) 2025-06-11 15:43:54 -05:00
66f79e53e5 Dashboards: Pass id prop to Switch component for bool inputs (#106438) 2025-06-11 12:45:14 +01:00
cbb828202a FolderPicker: Remove old folder picker (#105374)
* Remove newFolderPicker toggle

* Remove usage of the old folder picker

* fix some tests

* remove old test
2025-06-10 16:01:48 +02:00
40164cb09e Authorization: Fix/provisioned permission display (#106179)
* add isProvisioned flag to permission DTO

* handle provisioned permissions explicitly

* lint

* swagger

* simplify logic to always show non-managed permissions first; remove unnecessary isProvisioned

* fix docs

* oops

* actually just generate the docs
2025-06-03 11:21:42 -05:00
abb885c585 I18n: Move eslint rule to package (#105860) 2025-05-29 16:11:59 +02:00
64f321e430 Shortcuts: Update panel shortcuts modal (#106161) 2025-05-28 12:39:41 -03:00
98d1821948 Extension sidebar: Fix incorrect rendering of menu buttons (#106145)
* fix(ui): use component render instead of usecallback to render button

* add and fix component tests
2025-05-28 16:39:23 +02:00
8b6103fc67 TimePickerWithHistory: Improve type handling when reading history from localStorage (#105859)
* TimePickerWithHistory: Improve migrateHistory type safety handling and validation
2025-05-27 14:00:47 -04:00
c7cd06d5f5 i18n: exports TFunction from @grafana/i18n package (#105921) 2025-05-23 10:34:35 +02:00
43e2bf5e38 NestedFolderPicker: Fix scroll jumps back to top (#105567)
refactor selector to output a stable value
2025-05-21 11:02:42 -04:00
546f0c2675 Chore: Remove extraThemes feature toggle (#105623)
remove extraThemes feature toggle
2025-05-20 09:18:08 +01:00
98c9bc5028 Preferences: Disable the save button whilst saving preferences (#105605)
* disable the save button whilst saving preferences

* use .finally to always reset state of submit button

* fix unit tests
2025-05-19 12:42:44 +01:00
808b371225 Themes: Prevent duplicated API call in drawer (#105602)
refactor to separate component, stop propagating radio button event + unit test
2025-05-19 12:42:36 +01:00
6343a9caf8 Extension Sidebar: Set max width to 2/3 of page width (#105497) 2025-05-16 08:31:20 +02: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
46f437db06 Extension Sidebar: Change aiassistant-app to assistant-app (#105239) 2025-05-12 14:23:32 +03:00
8f17f607fa FEMT: Add no-restricted-img-srcs rule (#105006) 2025-05-12 10:34:17 +01:00
8a2af6166c i18n: adds @grafana/i18n package (#104603)
* i18n: adds grafana/i18n

* Trigger build

* chore: fix frontend lint

* chore: refactor

* chore: refactor

* chore: expose getI18nInstance in shared deps

* chore: refactors away second init

* Trigger build

* chore: updates after PR feedback

* chore: sync with enterprise

* chore: adds shouldUnescape

* Trigger build

* chore: makes functions internal

* Trigger build

* chore: fix for Pseudo locale

* chore: bumps package version

* chore: fix the version of i18n package
2025-05-09 05:45:20 +02:00
6f3200d4f0 Re-enable jsx-a11y recommended rules (#104637)
* Re-enable `jsx-a11y` recommended rules

* apply rule in correct place, couple of fixes

* fix up some a11y issues

* add ignore for keyboard a11y for now

* readd testid

* close carousel on backdrop click

* use type="button"

---------

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2025-05-07 15:43:48 +01:00
9c5e34f513 Authorization: Fix filtered role display (#104953)
* handle null or empty group and displayName properties on roles

* fix display name bug for fixed roles with a period
2025-05-07 16:35:50 +03:00
b78044511f Extension Sidebar: Prevent plugin errors from breaking Grafana (#104983)
feat(extensionsidebar): add an errorboundary to prevent crashing entire app if plugin goes pop
2025-05-06 15:45:44 +02:00
2f41c7c289 Extension Sidebar: Fix not opening the stored component (#104649)
* Extension Sidebar: Fix not opening the stored component

* empty
2025-05-06 00:25:02 +03:00
1c5545da04 Internationalisation: Check and mark up tooltip content prop (#104536)
* make lint rule check for "content"

* undo unnecessary translation
2025-04-30 14:40:15 +01:00
3732ec74e7 Scopes: Highlight current active item/dashboard (#104403)
* Highlight current active item

* Add error boundary for scopes selector

* Expand containing folder of active item

* Add tests
2025-04-30 12:25:12 +02:00
b6b493c851 Extension Sidebar: Add feature tracking for opened/closed extensions (#104209)
Extension Sidebar: Add feature tracking to track opened/closed extensions
2025-04-25 15:05:55 +01:00
20b50e5f16 Grafana UI: Make DashboardPicker focusable (#104242) 2025-04-24 11:27:04 -03:00
c20cd9874c Extension Sidebar: Enable conditional rendering of component (#104177)
* Extension Sidebar: Add `links` extension point to conditional render component

* Extension Sidebar: Add tests

* Extension Sidebar: Fix tests
2025-04-23 16:25:50 +02:00
cd8556026e Chore: Fix re-exported skipToken from dashboards API (#104387) 2025-04-23 12:38:10 +01:00
ea450a92f9 Extension Sidebar: Close sidebar with toolbar button (#104208)
* Extension Sidebar: Improve closing behavior

* Extension Sidebar: Fix title
2025-04-19 22:38:58 +02: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
84ffe27f71 Invite User: Add invite user button in quick add dropdown menu (#104004) 2025-04-14 20:08:49 -07:00
722cd25da1 Extension Sidebar: Add openExtensionSidebar helper to plugin extensions (#103962)
* Extension Sidebar: add `openExtensionSidebar` helper

* Extension Sidebar: Change var to `props`

* Extension Sidebar: Fix comment

* Extension Sidebar: Destructure `props`

* Extension Sidebar: Remove `@alpha` and rename `context` to `props` as `any`

* Extension Sidebar: Improve docs

* Extension Sidebar: Rename `openExtensionSidebar` to `openSidebar`

* Extension Sidebar: Use `Record<string, unknown>` as type

* Extension Sidebar: Use `Record<string, unknown>` as type

* Extension Sidebar: Add tests for event based opening

* Extension Sidebar: Lint

* Extension Sidebar: Fix toolbar button tests
2025-04-14 14:59:35 +02:00
5661cf244a Invite User: Add invite user button in mega menu and command palette (#103934) 2025-04-11 19:00:06 -03:00
e7b32d6229 Extension Sidebar Button: Prevent button to have stretched background (#103882) 2025-04-11 14:18:46 +01:00
1e669cbb45 AppChrome: Sidebar extensions button update (#103791)
* AppChrome: Sidebar app icon button update

* Update

* remove unused files

* Update public/app/core/components/AppChrome/ExtensionSidebar/ExtensionToolbarItem.tsx

Co-authored-by: Sven Grossmann <sven.grossmann@grafana.com>

* update

---------

Co-authored-by: Sven Grossmann <sven.grossmann@grafana.com>
2025-04-11 09:25:09 +02:00
45a55234e1 Library panels: Fix search query (#103812) 2025-04-10 18:52:16 +01:00
c4a0eb396b Extension Sidebar: Make sidebar's width resizeable (#103526)
* Extension Sidebar: Make sidebar's width resizeable

* Extension Sidebar: Fix css

* Extension Sidebar: Remove `!important`

* Extension Sidebar: Add new drag handle classes without drag-pill

* Extension Sidebar: Use `top`/`bottom` and move scrollbar
2025-04-10 13:46:13 +02:00