1293 Commits

Author SHA1 Message Date
Haris Rozajac
9ad6653871 Dashboard Schema V2: Improve diffing (#100022)
* improve diffing

* define dash spec props a-z

* Fix

* sort deep initialSaveModel

* update tests

* Fix test, description, and query ds issues

* Fix seralizer test

* response transformers

* skip panelMerge tests
2025-02-13 07:20:17 -07:00
Yulia Shanyrova
6db155649c Plugins: Custom links for plugin details page (#97186)
* Custom links with repository link, licence link, docs link and raise an issue link

* run translation command

* delete console log

* delete console log

* fix frontend tests

* change UI with a new design

* remove license, documentation, repository url calculation logic from grafana

* remove unsused function from helpers

* change repo icons and raise an issue icon

* fix the build

* remove logic for raiseAnIssueUrl

* fix the build

* fix lint

* Delete Links title in the box of links

---------

Co-authored-by: Timur Olzhabayev <timur.olzhabayev@grafana.com>
2025-02-13 11:31:57 +01:00
Dominik Süß
8a8e47fcea PluginExtensions: Added support for sharing functions (#98888)
* feat: add generic plugin extension functions

* updated betterer.

* Fixed type issues after sync with main.

* Remved extensions from datasource and panel.

* Added validation for extension function registry.

* Added tests and validation logic for function extensions registry.

* removed prop already existing on base.

* fixed lint error.

---------

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2025-02-13 10:18:55 +01:00
Sergej-Vlasov
d1dee968c3 Schema V2: Adjust quick_ranges in time settings and remove time_options (#100135)
* adjut quickRanges type in v2

* clean up unused time_options property

* remove deprecated time_options property on time picker

* add schema migration for time_options

* adjust test
2025-02-12 19:23:09 +00:00
Sergej-Vlasov
bbe21bb1d2 Bump Scenes to 5.42.0 (#100205)
* update scenes and weekStart prop type

* update test

* adjust weekStart type in schemaV2

* clean up weekStart error message

* clean up weekStart in test data
2025-02-11 13:20:47 +00:00
Torkel Ödegaard
9bdacf3833 DesignSystem: Menu and popover styling update to use new elevated background token (#100255)
* DesignSystem: Menu and popover styling tweak proposal

* Fix submenu

* Themes: Add elevated prop

* Update themes

* update

* Fixed tests

* Update

* fix markdown lint

* Update packages/grafana-data/src/themes/createColors.ts

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>

* Update contribute/style-guides/themes.md

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>

* Update

* Update

---------

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2025-02-11 12:27:04 +01:00
Adela Almasan
f5c049012b Chore: Data links and Actions components refactor (#100097)
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
2025-02-07 20:03:05 -06:00
Andrej Ocenas
4b9fee61a8 QueryLibrary: Move to enterprise (#100133) 2025-02-07 11:09:51 +01:00
Bogdan Matei
c4d0114376 Dashboards: Use i18n for texts in dynamic dashboards (#100108) 2025-02-05 13:14:03 +02:00
Bogdan Matei
f51571db5d Dashboards: Refactor types for dynamic dashboards (#100064) 2025-02-05 11:08:41 +02:00
Matias Chomicki
ff926c5ac5 Logs Panel: Base elements for the new visualization (#99084)
* Create base components

* Create measurement service

* Add container for list

* Use measurement to render virtualized log lines

* Match rendered styles in 2d context for measuring

* Improve virtualization initialization and handle resize

* Introduce log line processing

* Virtualization: fix measurement of lines with line endings

* Virtualization: include scrollbar width in calculation

* Remove logs

* Virtualization: optimize text measurement

* Add support for forceEscape

* Log line: properly style wrapped/unwrapped lines

* Virtualization: handle possible overflows

* Improve overflow handling

* LogList: remove scroll position ref

* Remove logs

* Remove log

* Add top/bottom navigation buttons

* Add timestamp to pre-processing

* Add showtime support

* Fix imports

* Chore: simplify dedup

* Show level

* Refactor measurement and measure level and timestamp

* Virtualization: skip unnecessary measurements

* Improve measurements to minimize overflow chance

* Introduce logline colors

* Update palette

* Remove pretiffying

* Add comment

* Remove unused variable

* Add color for info level

* Fix dependencies

* Refactor overflow to account for smaller estimations

* Debounce resizing

* Fix imports

* Further optimize height calculation

* Remove outline

* Unused import

* Use less under/overflow method

* Respond to height changes

* Refactor size adjustment to account for layout changes

* Add Logs Panel support

* Add margin bottom to log lines

* Remove unused option

* LogList: container div should never be null

Bad API design

* Log List: make app not undefined and update containerElement usages

* New Logs Panel: Create as new visualization (#99427)

* Logs Panel: clean up old panel

* Logs Panel New: create as new visualization

* Plugin: mark as alpha

* Logs panel new: hold container in a state variable

* Logs panel: fix no data state

* Create newLogsPanel feature flag

* Logs: use new feature flag

* Prettier

* Add new panel to code owners

* Logs Navigation: add translations

* Address betterer issues

* Fix import

* Extract translations

* Update virtualization.ts

* Virtualization: add DOM fallback for text measurement

* Run gen-cue

* plugins_integration_test: add logs-new to expected plugins
2025-02-04 18:40:17 +01:00
Tom Ratcliffe
bb15f24dcd Alerting: Update design of rule details tab and add updated by (#99895) 2025-02-04 16:56:17 +02:00
Laura Fernández
74e3beabd0 MultiCombobox: add CustomValue as an option (#99815) 2025-02-03 11:41:54 +01:00
Bogdan Matei
61f5f215ee Dashboards: Implement rows repeat in rows layout (#99300) 2025-02-03 11:46:47 +02:00
Ashley Harrison
9693212475 API client generation: Create new IAM api client and use in query library (#99888)
* create new generated iam api client and use in query library

* update betterer

* use new createBaseQuery method

* update CODEOWNERS

* fix unit tests

* use shared type

* update comment

* fix test
2025-01-31 17:12:55 +00:00
Joey
64e9c38b66 Tempo: Show consistently named links for external reference types (#99008)
* Show consistently named links for external reference types

* Update betterer
2025-01-30 15:14:38 +00:00
Andrej Ocenas
86a68627dd QueryLibrary: Make query library available outside of Explore (#99319) 2025-01-30 14:53:01 +01:00
Carl Bergquist
a92c8145f1 TopNav: Move news into profile menu (#99535)
* remove news icon from topnav

Signed-off-by: bergquist <carl.bergquist@gmail.com>

* TopNav: Move rss feed and kiosk action into profile menu

* Update language keys

* Update

* review fixes

* Update

* Update

---------

Signed-off-by: bergquist <carl.bergquist@gmail.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2025-01-30 14:43:26 +01:00
Ivana Huckova
058d3946b7 Zipkin: Remove frontend query running code (#99557)
* Zipkin: Remove frontend query running code

* Fix lint
2025-01-28 15:11:10 +01:00
Konrad Lalik
0bf31c14a7 Alerting: Improve default form values handling (#97564)
This PR refactors how rule form state is managed and relies less on prop drilling and removes dependency on redux store.
2025-01-28 15:49:47 +02:00
Tom Ratcliffe
3ed138543d Chore: Fix translation imports from @grafana/ui (#99614) 2025-01-28 08:36:31 +00:00
Dominik Prokop
ae62b3817b Dashboards: Change the way dashboard not found error is handled (#98950)
* Get rid of _dashboardLoadFailed

* Get rid of dashboardNotFound meta

* Update public dashboards tests

* Fix DashboardPage tests

* DashboardPageProxy tests

* DashboardScenePageStateManager test fix

* Beterer

* Fix merge

* Nits

* Fix test

* remove debugger

* Update get folder to throw

* translate error title

* Update public/app/features/apiserver/types.ts

Co-authored-by: Ivan Ortega Alba <ivanortegaalba@gmail.com>

* Update public/app/features/dashboard/services/DashboardLoaderSrv.ts

Co-authored-by: Ivan Ortega Alba <ivanortegaalba@gmail.com>

* Update public/app/features/dashboard/services/DashboardLoaderSrv.ts

Co-authored-by: Ivan Ortega Alba <ivanortegaalba@gmail.com>

* Update public/app/features/dashboard/services/DashboardLoaderSrv.ts

Co-authored-by: Haris Rozajac <58232930+harisrozajac@users.noreply.github.com>

* Betterer

* Update test cases

* More test updates

* More translations

---------

Co-authored-by: Ivan Ortega Alba <ivanortegaalba@gmail.com>
Co-authored-by: Haris Rozajac <58232930+harisrozajac@users.noreply.github.com>
2025-01-27 15:54:10 +01:00
Alexa V
8f3fd8f91d Schema v2: Write Path Implement saveDashboard in v2 client API (#98263)
Create new function for save dashboards written in schema v2 and using the v2 api from k8s
2025-01-27 14:14:19 +01:00
Dominik Prokop
8e078315f0 Schema v2: Reason about new dashboard based on UID (#98879)
* Schema v2: Reason about new dashboard based on UID

* Fix test

* Alerting: respect isNew dashboard for legacy and new arch

* Translate untranslated strings

* Unify is new checks

* PanelInspectDrawer update

* typo fix

* on close test for panel inspect drawer

* Update public/app/features/alerting/unified/PanelAlertTabContent.tsx
2025-01-27 11:18:06 +01:00
Haris Rozajac
1c8a7d8872 Dashboard Schema V2: Remove type assertions and anys from schemav2 code (#99222)
* Remove type assertions and anys from schemav2 code

* Handle type conversion

* fix test

* Filter undefined
2025-01-22 09:45:49 -07:00
Haris Rozajac
a0e7569e4f Dashboard Schema V2: ResponseTransformers: Transform layout, panels, annotations and variables when ensuring v1 (#99050)
* wip

* Fix annotationV1

* variables

* tests

* Fix query variable

* Don't need extra chaining arg in maxPerRow

* Logic for libary panels; tests for variables and library panels

* lint
2025-01-22 08:56:20 -07:00
Leon Sorokin
1c858caec3 Transformations: Use FrameMultiSelectionEditor in Filter data by refId (#97212)
Co-authored-by: Sergej-Vlasov <sergej.s.vlasov@gmail.com>
2025-01-21 13:36:34 -06:00
ismail simsek
12ae2a520c Explore Metrics: Remove overview tab in metric select view (#97118)
* introduce the exploreMetricsRemoveOverviewTab feature toggle

* handle actionView equal to overview in url

* set description in selected metric scene

* fix import

* ExploreMetrics: Disable the Overview tab by default (#98988)

feat: disable overview tab by default

* fix: remove unnecessary feature toggle

* chore: remove overview

* make i18n-extract

---------

Co-authored-by: Nick Richmond <5732000+NWRichmond@users.noreply.github.com>
Co-authored-by: Nick Richmond <nick.richmond@grafana.com>
2025-01-21 16:51:02 +01:00
Joao Silva
b3b044b54b MultiCombobox: Add "All" option (#98377)
* MultiCombobox: Add All option

* Translate

* Add prop to show All option

* Change variable name

* betterer update

* Extract variable

* Update packages/grafana-ui/src/components/Combobox/MultiCombobox.tsx

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

* Return All item

* Update checkboxes

* Add filtering functionality

* Handle deduplication when selecting already selected items

* Performance improvements when selecting and modifying all items

* Handle bug with isOpen for tests to pass

* Small fixes

* Add filtered phrase

* Address PR feedback

* Reset okg/services from main

* Reset from main

* Restore main

* Add counter to filtered all

* Fix OptionListItem

* Hide all when there are no results

* Refactor to use useMemo instead

* Fix comments

* Remove useEffect

---------

Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>
Co-authored-by: Tobias Skarhed <tobias.skarhed@gmail.com>
2025-01-20 12:32:09 +02:00
Jack Westbrook
dea2e41e9f Grafana UI: Use Eslint no-restricted-imports in tests and stories (#99191)
* style(eslint): remove ignore from grafana/ui-overrides

* style(grafana-ui): update imports for tests

* style(grafana-ui): update imports for stories

* chore(betterer): update results file

* Fix useTheme import

* Change deprecated Horizontal/Vertical group usages

---------

Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>
2025-01-20 09:44:19 +01:00
Ashley Harrison
cff07c9fb6 Chore: Replace rc-time-picker with rc-picker (#99022)
* replace rc-time-picker with rc-picker

* remove unnecessary stack

* remove TimePickerInput

* make props stricter

* fix type assertions

* remove outdated comment

* fix types

* fix clear icon

* fix styling

* fix z-index and 6 tests

* fix remaining unit tests

* betterer results

* styling tweaks

* don't show/hide scrollbars on hover
2025-01-16 15:58:02 +00:00
Ihor Yeromin
019ee9c2d4 Table: Fix inspect drawer disappears unexpectedly (#99025)
fix(table): inspect drawer disappears unexpectedly
2025-01-16 15:58:56 +01:00
ismail simsek
31deddafb6 Prometheus: Support utf8 labels and metrics on visual query builder (#98274)
* utf8 metrics for prometheus devenv

* introduce utf8 support

* completions and suggestions

* don't wrap the utf8 label in quotes

* linting

* support utf8 labels and metrics on visual query builder

* lint

* update raw view for utf8 metric syntax

* betterer

* support series endpoint

* support series endpoint

* betterer
2025-01-16 16:24:56 +02:00
Brendan O'Handley
76a7987427 Explore metrics: Support native histograms (#98894)
* identify native histograms by classic histograms

* use trail to expose ds helper

* identify native histograms for preview panel

* refactor ds helper to initialize all native histograms

* remove await

* add info message for native histograms

* hide button on show examples

* show nh in metric scene by passing check for nh and storing in url for url loads, bookmarks and recent explorations

* add badge for native histograms

* click native histogram examples in info message to see them

* add link for learn more

* close banner on select when selecting native histogram in info banner

* show message for newly selected data sources

* capitalize Native Histogram badge

* prettier

* fix badge ui width

* add padding for badge

* add images, styling and tests for native histogram banner

* move images to img folder

* fix store tests

* run i18n

* fix betterer

* fix betterer with translations

* cannot translate interpolated metric in button text

* Fix import

* do  not indent the > See examples section

* trans component interferes with text with special chars

* update sm text with 4px padding and 16px spacing between images

* do not show banner after closing then changing data sources

* prettier

* Update public/app/features/trails/helpers/MetricDatasourceHelper.ts

Co-authored-by: Nick Richmond <5732000+NWRichmond@users.noreply.github.com>

* Update public/app/features/trails/banners/NativeHistogramBanner.tsx

Co-authored-by: Nick Richmond <5732000+NWRichmond@users.noreply.github.com>

* Update public/app/features/trails/banners/NativeHistogramBanner.tsx

Co-authored-by: Nick Richmond <5732000+NWRichmond@users.noreply.github.com>

* update comments

* remove unnecessary code check

* add rudderstack types

* add close example functionality

* prettier

* add t() for betterer

* prettier

* fix betterer and trans issues

* fix test

---------

Co-authored-by: Nick Richmond <5732000+NWRichmond@users.noreply.github.com>
2025-01-16 03:36:10 +02:00
Josh Hunt
e3e580edfa Chore: Prevent direct path imports from workspace grafana packages (#98940)
* restrict imports from @grafana/ui/src paths

* prevent path imports from all grafana packages

* just run on ui, runtime, data packages

* update
2025-01-15 15:47:44 +02:00
Konrad Lalik
5aeaccadff Alerting: Add read-only GMA rules to the new list view (#98116)
* Reuse prom groups generator between GMA, external DS and list view

* Improve generators, add initial support for GMA in grouped view components

* Improve handling of GMA rules

* Split componentes into files

* Improve error handling, simplify groups grouping

* Extract grafana rules component

* Reset yarn.lock

* Reset yarn.lock 2

* Update filters, adjust file names, add folder display name to GMA rules

* Re-enable filtering for cloud rules

* Rename AlertRuleLoader

* Add missing translations, fix lint errors

* Remove unused imports, update translations

* Fix responses in BE tests

* Update backend tests

* Update integration test

* Tidy up group page size constants

* Add error throwing to getGroups endpoint to prevent grafana usage

* Refactor FilterView to remove exhaustive check

* Refactor common props for grafana rule rendering

* Unify identifiers' discriminators, add comments, minor refactor

* Update translations

* Remove unnecessary prev page condition, add a few explanations

---------

Co-authored-by: fayzal-g <fayzal.ghantiwala@grafana.com>
Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>
2025-01-15 11:36:32 +01:00
Nathan Marrs
009d7f42b3 Feature Toggles: Add two test feature toggles to test potential AB test setup (#98844)
* add two dummy feature toggles to use for testing potential AB testing setup

* update betterer

* update auto generated files

* fix camelcase test case
2025-01-13 13:13:13 -08:00
Tom Ratcliffe
1ba9a27f70 Chore: Update no-untranslated-strings to check tooltip and template literals (#98281) 2025-01-10 16:26:03 +00:00
Tom Ratcliffe
3fa0834c49 Chore: Remove unneeded betterer package & results that have been fixed (#98280) 2025-01-10 14:44:37 +00:00
Andre Pereira
ce1ae404db Trace View: Set span filters as panel options (#98328)
* Set span filters through panel options WIP

* Replace vars, tags editor, service and span name are now selects

* Fix undefined access

* Fix sync between panel options and span filters component

* Refactor tags input and use it in the plugin options

* Fix options to panel communication

* Rename Tags file. Fix tag values loading in dropdown

* Fix clear tags

* useMount instead of useEffect

* Replace HorizontalGroup with Stack

* Update betterer results

---------

Co-authored-by: Joey Tawadrous <joey.tawadrous@grafana.com>
2025-01-09 17:47:07 +00:00
Tom Ratcliffe
42894ba840 Alerting: Use common i18n phrases for cancel and save (#98600) 2025-01-09 10:02:15 +00:00
Matias Chomicki
44e65c5bc9 Logs: Added support to disable and re-enable the popover menu (#98254)
* PopoverMenu: add disable menu item

* PopoverMenu: disable and reenable with shift

* Style confirmation dialog

* Update unit tests and add tracking

* PopoverMenu: i18n

* Translations

* Update tracking property

* Use alt+select to re-enable

* Update betterer
2025-01-07 17:17:06 +02:00
Tom Ratcliffe
df80bdeb14 Chore: Sort eslint betterer results by name (#98208) 2025-01-07 14:56:12 +00:00
Dominik Prokop
e974cb87d8 Schema v2: Read API integration (#97953)
* Introduce DashboardScenePageStateManagerLike interface

* Implement dash loader for handling v2 api

* Transformation improvements

* Update response transformer test

* v2 schema: Remove defaultOptionEnabled from ds variable schema

* v2 schema: Make annotations filter optional

* WIP render dashboard from v2 schema

* Force dashbaord scene for v2 api

* V2 schema -> scene meta transformation

* v2 api: Handle home dashboard

* Use correct api client in DashboardScenePage

* Correctly use v2 dashboard scene serializer

* Remove unnecesary type assertions

* Handle v2 dashboard not found

* Fix type

* Fix test

* Some more tests fix

* snapshot

* Add dashboard id annotation

* Nits

* Nits

* Rename v2 api

* Update public/app/features/dashboard-scene/serialization/transformSaveModelSchemaV2ToScene.ts

Co-authored-by: Ivan Ortega Alba <ivanortegaalba@gmail.com>

* add getDashboardsApiVersion test for forcing scenes through URL

* add links to ResponseTransformers

* Update public/app/features/dashboard/api/ResponseTransformers.test.ts

Co-authored-by: Ivan Ortega Alba <ivanortegaalba@gmail.com>

* Nit rename test case

* Add tests for DashboardScenePageStateManagerV2

* Update test

* Typecheck

* Add console error for debugging

* Fix typo

---------

Co-authored-by: Ivan Ortega Alba <ivanortegaalba@gmail.com>
Co-authored-by: Haris Rozajac <haris.rozajac12@gmail.com>
2025-01-02 12:23:58 +01:00
Haris Rozajac
a110917577 Dashboard SchemaV2: V2 -> Scene -> V2 integration test (#98146)
* Tests for layout, transformations; displayMode

* wip

* fix annotations

* fix panel query and transformation topic

* fix dash id, default options, fieldConfig

* Complete integration test

* fix annotation query

* Fix test

* Clarify

* Have default value of builtIn

* update import path
2024-12-31 11:43:04 -07:00
Pepe Cano
287f3a75eb Alerting: add help tooltip for the Preview silences UI (#98028)
* Alerting UI: add tooltip for the Preview silences UI

* fix typo

* Update translations for silences preview

---------

Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>
2024-12-24 15:23:29 +01:00
Ivan Ortega Alba
a06779614e Implement detect changes tracking to V2 Schema (#98153)
Co-authored-by: Haris Rozajac <haris.rozajac12@gmail.com>
2024-12-19 13:00:59 +02:00
Jack Westbrook
b88ce9df38 Chore: Remove Dashboard datasource barrel file (#98040)
* chore(dsahboard-datasource): delete barrel file

* refactor(dashboards): update paths for dashboard ds imports

* chore(betterer): update file

* style(dashboard-datasource): fix linting errors
2024-12-18 13:18:55 +01:00
Tom Ratcliffe
6df7d1fbc0 Alerting: Split out components for notification policies (#97191) 2024-12-18 12:16:46 +00:00
Dominik Prokop
070f0e4457 Dashboard API versions handling (#96666)
* structure apic

* API versioning proposal

* Make api service independent from version

* Update v2

* Fix public dashboards page test

* Uncomment reload dashboard feature code

* Revert

* Betterer

* Fix imports

* useV2DashboardsAPI feature toggle

* POC/v2 schema: Add v1<-> v2 transformers (#97058)

* Make dshboard access interface more precise

* Add first pass for schema v1<->v2 transformers

* Update response transformer test

* Import fixes

* Manage dashboards validation: Handle v2 schema

* Handle new dashboard with v2

* Fix tests

* Move dashboard is folder error handling to legacy API implementation

* Add tests for dashboard api client

* betterer

* Use dashboard DTO when capturing dashbaord impression

* prettier

* Dashboard API: resolve folder metadata

* Add tests for resolving folder metadata

* Fix DashboardPicker

* Renames and nits

* POC Alternative Suggestion for  Dashboard API versions handling (#97789)

* Add transitional_dashboard_api, reset components that are not ready for v2 schema, and start working on migrating
DashboardPicker to use v2 schema

* reset DashboardScenePageStateManager

* Improve logic in transitional api, also remove isDashboardResource checks from components

* REmove transitional_dashboard_api and apply PR feedback

* Apply PR feedback, use 'v2' as a parameter and remove unnecesary if

* Fix tests

* Adding missing comments from original PR and also changing order to improve diffing in github :)

* update betterer

* fix prettier

* Add tests for DashboardPicker

* Do not use unified alerting mocks

* Fix unused type in dashboard test

* Improve comments in DahboardPicker

* Update folder validation fn

* Validation update

* Update legacy api test

* Lint

---------

Co-authored-by: alexandra vargas <alexa1866@gmail.com>
Co-authored-by: Alexa V <239999+axelavargas@users.noreply.github.com>
Co-authored-by: Ivan Ortega <ivanortegaalba@gmail.com>
2024-12-17 22:17:09 +01:00