Commit Graph

3077 Commits

Author SHA1 Message Date
Torkel Ödegaard
566556fea2
QueryEditors: Restore query editor margin to what old value (#44384) 2022-01-25 09:19:39 +01:00
Alex Khomenko
aead2e9157
Navigation: allow adding extra content (#44048)
* Add PRO badge

* Allow adding extra content

* Add extra content for the new navbar

* Use highlight text instead of extra content

* Trigger extra events

* Remove ExtraContent

* Update public/app/core/components/NavBar/NavFeatureHighlight.tsx

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

* Remove redundant i

* Add UpgradeBox

* Move highlight to menu trigger

* Clear navbar next

* Cleanup

* Fix UpgradeBox styles

* Add arrow icon

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-01-25 10:04:44 +02:00
Ryan McKinley
c0fc60dfef
Table: default display for geometry fields (#44347) 2022-01-24 16:10:36 -08:00
Ryan McKinley
b88811e2af
DataFrame: deprecate/remove field.parse(any) (#44299) 2022-01-24 16:27:35 +00:00
Erin Noe-Payne
ac945fb6e1
Tempo / Trace Viewer: Implement deep linking to spans 2022-01-24 08:49:35 -07:00
Agnès Toulet
65bdb3a899
FeatureFlags: Revert managing feature flags outside of settings.Cfg (#44382)
* Revert "FeatureToggles: register all enterprise feature toggles (#44336)"

This reverts commit f53b3fb007.

* Revert "FeatureFlags: manage feature flags outside of settings.Cfg (#43692)"

This reverts commit f94c0decbd.
2022-01-24 16:08:05 +01:00
Nathan Marrs
76827c2069
Refactor: move threshold editor out of grafana-ui (#44300) 2022-01-21 16:17:33 -08:00
Ryan McKinley
082b1b4db7
Geomap: add spatial transformers (alpha) (#44020) 2022-01-21 14:27:26 -08:00
Nathan Marrs
c6e853a13c
Refactor: Move Value Mappings to Grafana public instead of Grafana UI (#44237) 2022-01-20 20:36:34 -08:00
Ryan McKinley
f94c0decbd
FeatureFlags: manage feature flags outside of settings.Cfg (#43692) 2022-01-20 13:42:05 -08:00
Kyle Cunningham
febc24522d
Accessibility Fixes for Several SQL Based Datasource Config Pages (#43982)
* Add label elements for select boxes: MSSQL config

* Add Permission level label

* Add aria-label for password field

* Fixes for Postgres a11y page

* Fix whitespace error

* Swap aria-labelby for "for"

* Prefer "for" over aria-labeledby
2022-01-19 15:53:54 -06:00
Josh Hunt
9f97f05fcc
DashboardSettings: Prevent Dashboard permissions from linking to folder permissions when user does not have sufficient permissions (#44212)
* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* user essentials mob! 🔱

* add tests

* fix up

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: Alexandra Vargas <alexa1866@gmail.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@gmail.com>
2022-01-19 16:27:33 +01:00
Alexander Zobnin
dc913f2311
Access control: fetch role options only if user has permissions (#44201)
* Access control: fetch role options only if user has permissions

* Fix org/users page
2022-01-19 16:15:52 +03:00
Gabriel MABILLE
fc405ea9da
AccessControl: Make Permissions component customizable (#43992)
* Setting default values for props

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>

* Using table instead

Co-authored-by: Kalle Persson <kalle.persson@grafana.com>
2022-01-19 12:19:46 +01:00
Gabriel MABILLE
ba839d1f7c
AccessControl: Refactor addAccessControlQueryParam (#44191)
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2022-01-19 11:27:45 +01:00
Agnès Toulet
99cdb56f72
Analytics: add experimentview events (#44120)
* Analytics: add experimentview event

* remove ref to feature-highlights

* Experimentview -> ExperimentView
2022-01-19 11:07:18 +01:00
Karl Persson
acb791bdd6
Disable select when permissions is not managed or if user does not have (#44144)
* Disable select when permissions is not managed
2022-01-18 12:45:14 +01:00
Josh Hunt
36983d8d3b
Chore: Mark up User Profile page for translation (#43874)
* Mark up User profile page for translation

* Extract new messages

* updated selectors

* update selectors

* wip TestProvider

* update tests

* fix field labels

* extract new messages

* don't store date objects in redux state

* don't store date objects in redux state
2022-01-17 16:58:49 +00:00
Alexander Zobnin
867ca5b59e
Access control: Team role picker (#43418)
* Refactor: move fetching from role picker to parent component

* Make built in role props optional

* Initial team role picker

* Add role picker to the teams list

* Optimize fetching roles

* Add pagination for the teams page

* Fix tests

* Hide roles if access control not enabled

* Fix test snapshots

* Refactor: use useAsync() hook

* Refactor: simplify input component

* Move api calls to separate file

* Refactor: use useAsync() hook for user role picker

* Tweak role picker input width

* Fix pagination

* Update test snapshots

* Use loading state from useAsync() hook

* Fix roles label if no roles assigned
2022-01-17 18:04:54 +03:00
Gilles De Mey
bd9df4f829
Alerting: show deleted datasource (#43891) 2022-01-17 14:30:00 +01:00
Hugo Häggmark
4b4afc7b2c
Chore: reduces circular dependencies for variables/utils.ts (#44087)
* Chore: move constants to own file

* Chore: moves safe* functions to grafana/data

* Chore: moves safe* functions to grafana/data

* Chore: adds VariableQueryEditorProps and deprecates VariableQueryProps

* Chore: remove getDefaultVariableAdapters function

* Chore: moves transaction status to types

* Chore: fix tests that do not initialise TemplateSrv

* Chore: change space when stringifying

* Chore: revert safe* func move

* Chore: remove circular dependency in Explore utils
2022-01-17 12:48:26 +01:00
Ryan McKinley
fd8baf5f7d
Gazetteer: reactor so the source is a DataFrame (#43783) 2022-01-13 17:15:31 -08:00
Giordano Ricci
afd110309c
Elasticsearch: fix a11y issues in datasource settings (#43706) 2022-01-12 09:19:10 +00:00
Ryan McKinley
7e5e3f9dc0
FeatureToggles: typed as optional booleans (#43925) 2022-01-11 16:18:54 -08:00
Dan Cech
34f757ba5a
switch to using featureEnabled for enterprise features (#41559)
* switch to using featureEnabled for enterprise features
2022-01-07 15:11:23 -05:00
David
a08e0581de
Hotkeys: Make time range permanent (#43802)
Typing `t a` in Explore or Dashboards will turn a relative time like "Last 1 hour"
into an absolute range to make the URL permanent, so that when sharing it others
will see the same data.

- registered `t a` in key service
- new `AbsoluteTimeEvent` dispatch via global event bus
- dashboard times handled in TimeSrv
- Explore times handled in Explore.tsx and Explore's time reducer

I could not find an easy way to combine time handling for Exlore and Dashboard in one place.
2022-01-07 16:51:29 +01:00
kay delaney
36e4a871f2
UI/ClipboardButton: Remove ClipboardJS in favor of native Clipboard API (#42996)
* UI/ClipboardButton: Remove ClipboardJS in favor of native Clipboard API
Closes #42365

* Add backwards compatibility
2022-01-07 13:41:09 +00:00
kay delaney
890c43adf1
UI/Card: Refactor Card component for improved accessibility (#41890)
* UI/Card: Improve accessibility of Card component

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2022-01-06 15:48:12 +00:00
Ashley Harrison
c87b048af8
Login: Prevent page overflowing on mobile (#43739) 2022-01-06 10:34:13 +00:00
Eric Leijonmarck
0aa905bb1f
Serviceaccounts: feat - tabview for serviceaccounts (#43573) 2022-01-05 15:32:38 +01:00
Piotr Jamróz
1695468de1
Loki: Improve log volume error handling (#42534)
* Reduce verbosity of the error message when log volume query fails

* Fix unit tests
2022-01-03 10:21:11 +01:00
Ashley Harrison
39f787cbef
Navigation: Remove some redundant css and tidy up reverse logic (#43403)
* Remove some redundant css and tidy up reverse logic

* Fix alignment of subtitle

* Remove navbar-dropdown class
2021-12-21 16:15:03 +00:00
renovate[bot]
159fb4cebb
Update dependency eslint-plugin-react to v7.27.1 (#43207)
* Update dependency eslint-plugin-react to v7.27.1

* Fix up code to work with new version of eslint-plugin-react

* kick drone

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2021-12-21 11:11:27 +00:00
Ashley Harrison
c7f76df61e
Use outline -2px to guarantee visibility of outline (#43400) 2021-12-21 10:52:26 +00:00
Ashley Harrison
57c3549b07
Implement left arrow to focus parent, fix list style on firefox (#43345)
* Implement left arrow to close menu for now, fix list style on firefox

* Implement onLeft

* Fix outline of first item in navbar

* Fix focus styles appearing when using mouse

* add unit test
2021-12-20 17:41:14 +01:00
Ashley Harrison
6f8e651cdb
Move the background style to the parent component (#43359) 2021-12-20 16:00:29 +00:00
Karl Persson
c3ca2d214d
Access control: Refactor managed permission system to create api and frontend components (#42540)
* Refactor resource permissions
* Add frondend components for resource permissions

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
2021-12-20 09:52:24 +01:00
Connor Lindsey
70c0a9d117
A11y: Fix Fastpass issues for tracing query editors and config pages (#42759)
* Add aria-labels to Jaeger config page

* Fix fastpass issues for Tempo config page

* Fix fastpass issues for other tracing query types like search
2021-12-17 11:49:21 -07:00
Ben Sully
13d9fddd3e
Transformations: Add 'JSON' field type to ConvertFieldTypeTransformer (#42624)
* Add 'JSON' field type to ConvertFieldTypeTransformer

I've been playing around with #41994 and found that it requires fields
to contain array values, which can't be sent from a backend plugin. This
PR adds the ability for the ConvertFieldTypeTransformer to parse
JSON values and store the result in the transformed field.
The main use case for this right now is so that a field
containing a JSONified array can be transformed into a field
containing an actual array, which can in
turn be used for the table charts in #41994.

Supersedes #42521.

* Add second option to complex field conversion to increase flexibility

This avoids falsely equating 'JSON' with FieldType.other, and instead
allows multiple parsers to be used if the 'Complex' type is selected.

Currently only JSON parsing is implemented, but others could be
supported easily in future.

* Revert "Add second option to complex field conversion to increase flexibility"

This reverts commit 6314ce35eb.

* Improve test for object parsing of complex field transformer

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-12-16 11:18:11 +01:00
Josh Hunt
4f6d08f14b
I18N: Add Lingui core translation framework. (#41827)
* I18N: Add Core Lingui framework for translating the UI

* Make FieldSet accept ReactNode for the label, so it can be translated

* Translate a phrase in the User profile edit form

* Translate phrase

* run lingui compile before webpack builds

* init i18n more lazily

* i1n:compile in drone lint step

* wip for getting tests to work

* Use mock lingui/macros because its too hard to use the real macros in Jest...

* mock messages for tests

* use specific lingui version

* add comment for test helper

* we actually don't need the i18n setup in tests because we mock out <Trans />

* update package.json

* remove unneded imports

* revert back babel core version

* Create a I18nProvider wrapper
2021-12-15 17:00:37 +01:00
Gabriel MABILLE
c7cabdfd6f
AccessControl: Add accesscontrol metadata to datasources DTOs (#42675)
* AccessControl: Provide scope to frontend

* Covering datasources with accesscontrol metadata

* Write benchmark tests for GetResourcesMetadata

* Add accesscontrol util and interface

* Add the hasPermissionInMetadata function in the frontend access control code

* Use IsDisabled rather that performing a feature toggle check

Co-authored-by: Karl Persson <kalle.persson@grafana.com>
2021-12-15 12:08:15 +01:00
Torkel Ödegaard
8ca36b76cf
Select: Fix issue with placeholder and auto width (#42851)
* Select: Fix issue with placeholder and auto width

* Fixed lint issue
2021-12-08 14:05:13 +01:00
Hugo Häggmark
a0333c1545
Navigation: fix navigation when appSubUrl is configured (#42863)
* Navigation: fix navigation when appSubUrl is configured

* Update public/app/core/components/NavBar/NavBarItem.tsx

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>

* Chore: changes after PR comments

Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
2021-12-08 10:42:08 +01:00
Nathan Marrs
2af5ad4764
Canvas: use name as UID (#42696) 2021-12-06 21:04:58 -08:00
Erin Noe-Payne
4d5e39abff
Analytics: Add user id tracking to google analytics (#42763) 2021-12-06 16:34:19 +01:00
William Assis
eab0ba8716
Analytics: RudderStack custom URLs to fetch SDK and Config (#41988)
* Add config options to provide custom URL to fetch Rudderstack SDK and Config

* Add new entries to defaults.ini

* Update docs
2021-12-06 09:42:29 -05:00
Maria Alexandra
e468fcf518
Navigation: Implement Keyboard Navigation (#41618)
* Navigation: Start creating new NavBarMenu component

* Navigation: Apply new NavBarMenu to NavBarNext

* Navigation: Remove everything to do with .sidemenu-open--xs

* Navigation: Ensure search is passed to NavBarMenu

* Navigation: Standardise NavBarMenuItem

* This extra check isn't needed anymore

* Navigation: Refactor <li> out of NavBarMenu

* Navigation: Combine NavBarMenuItem with DropdownChild

* use spread syntax since performance shouldn't be a concern for such small arrays

* Improve active item logic

* Ensure unique keys

* Remove this duplicate code

* Add unit tests for getActiveItem

* Add tests for NavBarMenu

* Rename mobileMenuOpen -> menuOpen in NavBarNext (since it can be used for mobile menu or megamenu)

* just use index to key the items

* Use exact versions of @react-aria packages

* Navigation: Make the dropdown header a NavBarMenuItem

* Navigation: Stop using dropdown-menu for styles

* Navigation: Add react-aria relevant packages

* Navigation: Refactor NavBarDropdown to support react aria

* Navigation: apply keyboard navigation to NavBar component

* Navigation: UseHover hook for triggering submenu on navbar

* Navigation: rename testMenu component to NavBarItemButton

* WIP

* some hacks

* Refactor: clean up keybinding events

* Navigation:  render subtitle on item menu and disable it

* Navigation: Adds react-aria types (#42113)

* Refactor: refactor out to NavBarItemWithoutMenu

* Refactor: cleaning up stuff

* Refactor: comment out unused code

* Chore: Removes section and uses items only

* Chore: fix NavBarNext

* Chore: adds tests

* Refactor: minimize props api

* Refactor: various refactors

* Refactor: rename enableAllItems

* Refactor: remove unused code

* Refactor: fix clicking on menuitems

* Refactor: use recommended onAction instead

* Navigation: Fix a11y issues on NavBar

* Navigation: Fix a11y navBar Next

* Navigation: Remove unnecessary label prop, use link.text instead

* Apply suggestions from code review

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>

* Apply unit tests suggestions from code review

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>

* Update react-aria/menu package to latest version and apply PR suggestion

Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2021-12-06 06:58:17 +01:00
Ashley Harrison
cc9151d382
Dependencies: Jest 27 (#42681)
* Update jest monorepo

* Update version of marked so it doesn't throw an error, set testEnvironment

* Fix some unit tests

* Remove all these tests that aren't actually working...

* use spyOn instead of mocking the whole module

* Fix linting

Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-12-03 17:09:25 +00:00
Nathan Marrs
e07abd76c0
Canvas: refactor layer editor (#42562)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2021-12-02 15:54:45 -08:00
Dominik Prokop
fa930e7dbd
KeybindingSrv: Prevent dashboard save modal when dashboard cannot be saved (#42505) 2021-12-01 13:47:47 +01:00