87 Commits

Author SHA1 Message Date
20c700dd52 Chore: reduces barrel files part II (#107688)
* Chore: reduce barrel files

* chore: fixes unit test

* Chore: reduces barrel files part II

* chore: fix import sorting
2025-07-09 06:15:33 +02:00
68cbd23916 Chore: reduces barrel files (#107512)
* Chore: reduce barrel files

* chore: fixes unit test

* chore: fix broken path
2025-07-07 09:23:27 +02:00
bfd33467fb Tests: removes jest duplicate manual mock warning (#107459)
* Tests: removes jest duplicate manual mock warning

* Trigger build

* Trigger build
2025-07-02 09:25:25 +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
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
b052b28a88 Internationalisation: Enable i18n eslint rules (#104277)
* enable i18n rules by default

* commit translation changes
2025-04-22 13:56:25 +01: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
19e77db4e7 Advisor: Avoid redirect if app is not installed (#103988) 2025-04-15 11:21:41 +02:00
048d164a3c Advisor: Add redirection notice in data sources and plugins pages (#103894) 2025-04-14 15:40:16 +02:00
a420e2f8f2 Internationalisation: More markup (#103634)
* some manual markup

* more markup

* update count names
2025-04-09 11:31:48 +01: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
f9471ac10b Alerting: Recover deleted alert rules (#101869)
* add column guid to alert rule table and rule_guid to rule version table

+ populate the new field with UUID

* update storage and domain models

* patch GUID

* ignore GUID in fingerprint tests

* get alert rule versions by GUID

* update rule delete to reset uid in history instead of deleting rows

* add test

* Update delete rule to require UserUID, remove all versions and create "delete" version

that holds information about who and when deleted the rule

* update usages of the delete method

* add list deleted rules to store

* list api to support deleted query parameter

* add list deleted rules to store

^ Conflicts:
^	pkg/services/ngalert/store/alert_rule_test.go

* list api to support deleted query parameter

* Restore deleted rules

* fix recovering manually recording rules

* update role control for the trash route

* add alertingRuleRecoverDeleted feature toggle enabled by default

* fix access control for trash menu item in the navtree

* Add alertingRuleRecoverDeleted feature toggle,
add Delete permanently alert rule menu option

* hide remove permanently functionality in the UI until we have the api available for it

* discard wrong changes after merging

* Reverted changes in pkg/apis/dashboard_manifest.go after fixing conflicts

* Reverted changes in go.work.sum after fixing conflicts

* Reverted changes in pkg/apis/dashboard_manifest.go after fixing conflicts

* Reverted changes in pkg/services/ngalert/models/alert_rule.go after fixing conflicts

* Reverted changes in pkg/apis/dashboard_manifest.go after fixing conflicts

* restore delete permanently and add the queryparam for it

* update snapshots

* fix translations

* protect trash route by the feature toggles

* use the new rulerRuleType for checks

* revert ability to delete permanently and alert rule from the ui

* remove unnecessary update after reverting

* fix ff

* add tracking

* use recently deleted instead of trash

* create isRecoverDeletedRulesEnabled for checking ffs

* address pr feedback 1

* include alert rule uid in getRowId

* use RulerGrafanaRulesConfigDTO for deleted rules response

* use isLoading in the AlertingPageWrapper

* fix wrong check for recording rules type

* add test for restoring manually through the alert rule form

* add test for restoring deleted rule

* use importAlertingComponent

* udpate mock

* address pr feedback

* update translations

* address feedback

* address feedback 2

* address feedback 3

* address feedback 4

* move transformation of the response to the endpoint

* fix typo

* refactor grafanaRuleDtoToFormValues

* update translations

* use guid for identifying rows

* prettier

* use ONLY the guid for identifying rows

* Add provides/invalidates tags for deleted rules

---------

Co-authored-by: Yuri Tseretyan <yuriy.tseretyan@grafana.com>
Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>
2025-03-27 16:39:26 +02:00
0bedd57812 Chore: Auto mark up some more areas for translations (#102479)
* markup api-keys

* markup auth-config

* auto markup connections

* markup explore

* translation extractions

* fix unit tests
2025-03-24 11:41:45 +00:00
de0682521d Feat: OSS connections page state filter and update all added (#100688)
* feat: OSS connections page state filter and update all added

* fix: use combobox instead of select

* fix: show no updates available text

* ref: extract update all button to a component
2025-02-21 10:16:45 -05:00
2f965a07ab Ref: datasource picker rudderstack events (#95074)
* ref: ds picker events added

* ref: track opendropdown only on click

* ref: update/update all payload added to the event

* ref: configure more ds button event path to from path

* ref: result count fix, enable/disable track

* ref: debounce search tracks

* ref: track connections_plugin_card_clicked

* ref: call tracking from the child comp with result count

* ref: change event names, add creator_team and schema version
2024-10-24 12:03:17 -04:00
b23b6d228a Chore: Convert styles to use emotion object syntax (#94989)
* convert to use emotion object syntax

* missed one

* review comments

* set back to 0 and disable lint rule
2024-10-23 15:25:28 +01:00
ccedc41c57 Routing: Remove Switch from Grafana routes (#94795)
* Routing: Use Routes instead of Switch

* Update routeProps

* Update GrafanaRoute.test

* Update DashboardScenePage.tsx

* Update DashboardPageProxy.test.tsx

* Remove exact paths

* Update parent routes

* Move route wrapper

* Update type

* Fix plugin paths

* Switch to the location hook
2024-10-17 18:11:31 +03:00
e5795c7b6d Routing: Update connections to react router 6 (#94461)
* Update routes

* Update test

* Remove the useDataSourcesRoutes hook

* Remove DataSourcesRoutesContext

* Fix imports

* Fix more imports

* Add default

* Betterer
2024-10-15 16:10:31 +03:00
f55f7f2634 Routing: Replace Redirect component with Navigate (#94072)
* Routing: Replace Redirect with Navigate

* Use replace state

* Update routes.tsx

* Fix test
2024-10-02 09:44:18 +03:00
a54308138f Navigation: Remove bodyScrolling toggle and make it default (#93652)
* remove bodyScrolling toggle and make it default

* fix e2e tests
2024-09-24 13:23:18 +01:00
ba9f1da28e Data sources: Hide the datasource redirection banner for users who can't interact with data sources (#92886)
* hide the datasource redirection banner for users who can't list data sources

* readding explore evaluation

* add a test
2024-09-09 14:50:09 +03:00
782b725d87 Plugins Catalog: Display Request data source and view roadmap links (#91175)
* Add roadmap links to connection tab

* move to its own component

* add roadmaplinks to the catalog browse page

* use trans for text

* Change TextLink to accept ReactNode

* use Space component

* Add translations
2024-07-31 13:12:16 +02:00
219f4776a2 run prettier 2024-07-23 14:45:54 +01:00
334657e1cb Navigation: Move scroll behaviour to body (#89921)
* initial attempt at body scrolling

* fix login layout

* minor fixes

* "fix" some fixed position stuff

* remember scroll position in dashboard page

* fix unit tests

* expose chrome header height in runtime and fix connections sticky header

* fix panel edit in scenes

* fix unit tests

* make useChromeHeaderHeight backwards compatible, fix plugin details double scrollbar

* fix sticky behaviour in explore metrics

* handle when undefined

* deprecate scrollRef/scrollTop

* fix extra overflow on firefox
2024-07-17 13:48:47 +01:00
d7c844b5b6 Alerting UX: copy changes in Groups view (#90173)
* UI and help copy changes in Alerting Groups view

* Alerting Groups view: change subtitle

* Rename Alerting page title: `Groups` to `Active notifications`

* Update pseudo-local

* update betterer

* Extract translation through `make i18n-extract`
2024-07-11 13:33:41 +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
e75fbe10ca Alerting: Central alert history (part1) (#88593)
* WIP

* Add barchart panel with scenes

* Fix timerange in barchart panel

* Refactor: component names

* Remove not used css styles and rename panel title

* Remove unnecessary HistoryEventsListObject class and update text in labels filter

* add padding top for filter

* Add translations

* update limit labels constant

* Update showing state reason

* Fix scene object

* Address review comments

* Update icons

* use endpoints instead of the autogenerated hook

* Address review comments

* Add tooltip for alert name

* use private polling interval

* fix autogenerated translations

* Address pr rewview comments

* Address review comments

* Update text in placeholder

* Rename variable and remove spaces in Trans children
2024-06-17 14:54:15 +02:00
5e25afe6e9 Alerting: New settings page (#84501) 2024-05-03 17:42:42 +02:00
7ad2ec9665 EmptyState: use not-found empty state variant everywhere in core (#85007)
* use EmptyState component everywhere in core

* remove GrotNotFound core component

* update unit tests

* search -> not-found

* fix 3 more
2024-03-27 12:15:12 +00:00
1162c28a55 Connections: hook up search to url params to match cloud behaviour (#80166)
hook up connections search to url params to match cloud behaviour
2024-01-10 09:57:17 +00:00
2402ad67af Chore: Update "Observability" nav group subtitle (#78579)
Update observability nav group subtitle
2023-11-23 13:53:40 +02:00
d641f9153e Grafana/ui: Move Grid out of unstable (#78220)
* Grafana/ui: move Grid out of unstable

* Update docs
2023-11-16 07:23:22 +02:00
4fbd9a55b2 Remove feature toggle data source page header (#77751)
* remove feature toggle:dataSourcePageHeader

* remove feature flag: dataSourcePageHeader

* remove unused prop:alertingSupported
2023-11-06 15:21:15 -05:00
0abfc3b6be Alerting: Update 'Create alert' to 'New alert rule' in the panel and docs (#76950)
* Update 'Create alert' to 'New alert rule' in the panel and docs

* Fix test
2023-11-02 17:33:53 +01:00
163b0d182b Connections: Make the "Add new Connection" page work without internet access (#75272)
* fix: make the "Add new Connection" page work without internet access

* feat: update error message

* fix: update the API url in the error log
2023-09-27 15:04:23 +02:00
611df82259 Grafana UI: create Grid component in the unstable package (#75299) 2023-09-26 14:02:50 +02:00
99be6fb747 Connections: Display the type of the datasource (#74808)
fix: display the name of the datasource plugin
2023-09-13 13:29:11 +02:00
88cdc38afa Connections: Redirect from outdated URLs (#73278)
Connections: redirect from outdated URLs
2023-08-21 15:58:02 +02:00
6bc7c70c02 Datasources: Cleanup unused code from datasources (#73360)
* remove unused datasource pages

* move useDataSourceSettingsNav from datasources to connections

without any modification in the code yet

The reason for this is that its only usage is in this file, so we are
going to merge it with the other useDataSourceSettingsNav hook in the
next commit.

* merge two useDataSourceSettingsNav's

and rename consts and remove duplicated calls

* simplify useDataSourceSettingsNav
2023-08-17 14:37:39 +02:00
1646b901af EditDatasource: Fix navtree when dataSourcePageHeader is on (#72827)
use useDataSourceSettingsNav from connections in DataSourceTabPage
2023-08-08 07:53:32 +02:00
290fc3aadf Admin: Add redirect notice for datasources to admin landing page (#72736)
* update copy of ConnectionsRedirectNotice

The Connections page is not that new anymore

* extend NavLandingPage with optional header

* show ConnectionsRedirectNotice on Admin landing page

* make ConnectionsRedirectNotice dismissable

* make ConnectionsRedirectNotice informational
2023-08-04 07:45:09 +02:00
7406c4ff51 Data sources: Dashboards page now loads correctly from direct url (#72264)
* ensure DataSourceDashboardsPage initialises data source settings

* fix unit test

* apply suggestions from review
2023-07-28 09:37:56 +01:00
7a97bf7f15 Data Sources: Remove Admin/Data sources page in favour of Connections/Data sources (#72102)
* don't show Admin/Data sources page in navtree

* redirect from admin/datasources to connections/datasources

* update link of DS plugins to connections/datasources

* redirect edit page from datasources to connections

* redirect to new datasource page under connections

* redirect to datasouce dashboard page under connections

* fix navId on datasource dashboards page

* fix datasource dashboard page's nav

* Revert "update link of DS plugins to connections/datasources"

This reverts commit 0ebcb09b038b9db14f16bd0066c26869e57ff253.
2023-07-26 12:23:05 +02:00
b08271da32 Connections: Stop using dataConnectionsConsole feature toggle (#72111)
* remove dataConnectionsConsole feature toggle

* fix imports

* reintroduce dataConnectionsConsole

To prevent breaking change
2023-07-24 10:54:52 +02:00
9945c02405 Connections console: Add Angular badge for Angular plugins (#70789)
* Angular deprecation: Add Angular badge in plugin catalog page

* Angular deprecation: Add alert in plugin details page

* Angular deprecation: Disable install button if for Angular plugins

* removed extra console.log

* Add tests for Angular badge

* Add tests for PluginDetailsAngularDeprecation

* Add tests for InstallControlsButton

* Add tests for ExternallyManagedButton

* Table tests

* Catalog: Update angular deprecation message

* PR review feedback

* Update tests

* Update copy for angular tooltip and alert

* Update tests

* Fix test warnings

* Fix angularDetected not being set for remote catalog plugins

* Dynamic alert text based on grafana config

* Connections: Add Angular badge to Angular plugins

* Add test for connections console angular badge

* Fix tests

* Fix tests

* Moved tests

* PR review: Use ternary operator instead of &&

* Fixes to how to use Card component

* comment out desc

* Do not use deprecated theme.v1 and theme.typography.size

* pr review feedback

---------

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2023-07-11 10:12:09 +02:00
af9b071a78 I18n: Mark up strings on Navigation - Connections section (#70914) 2023-06-30 11:27:19 +01:00
7f84e83ffe Datasource: datasource config page header redesign (#66999)
* Wip

* remove name input from page body

* render title & subTitle in datasource page in connections and remove unused prop - uid

* styling on actions button group

* remove unused props in edit datasource page

* set gap as 8px between buttons

* move editable datasourcename to the header

* add subTitle component

* remove useRef and use autoFocus prop

* pass false to isDefault  when dataSource is undefined

* change button text

* remove suffix icon

* remove unused import - Icon

* consolidate duplicate useDataSourceSettingsNav into datasrouces hook

* move dataSource context to useDataSourceSettingsNav

* remove Explore button in the footer

* remove unused props

* fix failing test on button group

* fix typo on file naming

* remove disabled prop

* fix param

* add test

* add test files

* disable editing title in readOnly provision datasource

* update name should save dataSource

* prevent swith toggle change from label clicking and change margin

* update tooltip message

* use datasource update on header instead of state update

* remvoe subTitle component and move subTitle component next to page Info component

* Added title

* remove subTitle in buildNavModel

* replace Button with Badge

* make datasourceheader as a component

* horizontal gap of 24px between pageInfo and actions components

* align page Info value items

* accept react node as page info label and add tooltip to Default item

* update navId for edit datasource page in connections

* update unit testing for Title

* fix gen_que

* betterer

* prettier fix

* fix e2e test

* add data-testid to nameEditIcon selector

* fix tooltip text

* fix navId for connections datasources edit page

* fix e2e selector: change autoSizeInput to Input

* adding ellipsis to EditDataSourceTitle

* override grafana-ui titleContainer h1 styles

* UI cleanup and apply readOnly to default datasource switch

* add period

* datasource name validation

* title and page info alignment

* add feature toggle - dataSourcePageHeader

* restore basicSettings component and apply feature toggle

* go lint

* Revert "title and page info alignment"

This reverts commit 681ac51f11cdd2d564408a087c3a07cd58a4f3e1.

* remove editable fields from page Header - name, default datasource switch

* fix go test: toggle generator

* remove test id

* remove alerting badge in BasicSettings component

* Revert "remove alerting badge in BasicSettings component"

This reverts commit fb33ff9028819406d9339bce53a29d1f6a05a88a.

* feature toggle on alerting badge

* rename component & filename

* move DataSourceInfo type

* change button to link in test

---------

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
Co-authored-by: Miguel Palau Zarza <mpalauzarza@gmail.com>
2023-05-23 09:18:00 -04:00
ef8f336706 chore: update connections message (#68526) 2023-05-16 15:12:58 +01:00
21459c7c97 Connections: Show core datasource plugins as well (#67815)
fix: add a new hook & selector that can show core plugins by default
2023-05-05 09:38:18 +02:00