Commit Graph

3367 Commits

Author SHA1 Message Date
Jack Westbrook
3a7623753b
Build: Replace babel-loader with esbuild-loader (#57837)
* build(webpack): replace babel-loader with esbuild-loader

* build(webpack): add esbuild minifier to production builds

* Wip

* Removed ngInject and replaced with manual inject params

* chore: bump esbuild to 0.15.13

* Fixed angular issues

* build(frontend): update esbuild to 0.16.16

* chore(webpack): support browserslist for esbuild

* build(esbuild): unify versions of esbuild to 0.16.17 and esbuild-loader to 2.21.0

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2023-01-23 12:15:05 +01:00
Alexa V
db51e963de
PanelChrome: Allow panel to be dragged if set as draggable from the outside (#61698) 2023-01-23 10:38:38 +00:00
Matias Chomicki
87f8e7e223
Query Builder: Fix max width of input component to prevent overflows (#61798)
* fix(auto-size-input): return maxWidth when realWidth exceeds limit

* fix(query-builder): sex madWidth for simple editor component

* fix(auto-size-input): add unit test
2023-01-20 15:25:01 +00:00
Torkel Ödegaard
9b82e65b7a
TablePanel: Refactor to functional component and move add ad hoc filter action to PanelContext (#61360)
* FieldOptions: Add filterable as registry added field item

* Refactor to functional component, move ad hoc filter to PanelStateWrapper

* review tweaks
2023-01-19 14:03:13 +01:00
Ivan Ortega Alba
29f8722c91
PanelChrome: Allow hovering on description when status error is visible (#61757) 2023-01-19 14:01:36 +01:00
Alexa V
134ca6bb8f
[Panel] Extract styling duplication in new TitleItem component (#61625) 2023-01-19 11:03:56 +00:00
Hamas Shafiq
7f4b2fcb9c
Chore: Convert VirtualizedTraceView.test.tsx to RTL (#61589)
* Chore: Convert VirtualizedTraceView.test.tsx to RTL

* Don't need to change shared component

Co-authored-by: André Pereira <adrapereira@gmail.com>
2023-01-18 18:13:26 +00:00
Levente Balogh
29119a7d08
UI/Alert: Infer the role property based on the severity (#61242)
* feat(UI/Alert): add two new optional properties: 'ariaLabel' and 'role'

* docs(UI/Alert): add some docs to the props

* feat: infer the role based on the severity

* fix: stop overriding props

* fix: fix a test depending on the wrong alert role
2023-01-18 10:16:41 +01:00
Torkel Ödegaard
8620909006
Table: Fixes broken link styles after recent cell options PR (#61582)
* Table: Fixes broken link styles after recent cell options PR

* Share migration and fix bar gauge as well

* Remove unused import

* Review fixes

* Fixed test

Co-authored-by: Kyle Cunningham <kyle@codeincarnate.com>
2023-01-17 17:08:23 +01:00
Oscar Kilhed
004705a10b
Table Panel: Fix image of image cell overflowing table cell when a data link is added. (#59392)
* TablePanel: fix image of image cell overflowing table cell when a data link is added

* Fix image cell and gauge panel in respective places instead
2023-01-17 14:05:58 +01:00
Torkel Ödegaard
c1d3b59643
PanelChrome: Simplify props and code a bit (#61595)
* PanelChrome: Simplify props and code a bit

* Don't set a default empty array for leftItems so we can know user has set it

* fix 'this' is undefined

* add storybook examples of statusMessage; remove SB examples of loadingState === Error; simplify loadingState checks in PanelChrome;

Co-authored-by: polinaboneva <polina.boneva@grafana.com>
2023-01-17 09:52:14 +01:00
Alexa V
0eeeeef08b
PanelChrome: Refactor and refine items next to title (#60514)
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
Co-authored-by: Polina Boneva <13227501+polibb@users.noreply.github.com>
Co-authored-by: polinaboneva <polina.boneva@grafana.com>
2023-01-16 15:56:39 +00:00
Victor Marin
43ca4e0bc7
Fix Barchart legend aligning right when orientation is horizontal (#61451) 2023-01-16 12:09:20 +02:00
renovate[bot]
be04096366
Update dependency core-js to v3.27.1 (#61342)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-01-13 12:03:24 +01:00
Torkel Ödegaard
a5eb858d53
PanelChrome: Slight design improvements to menu button (#61399)
* PanelChrome: Slight design improvements to menu button

* Switch to narrow ToolbarButton

* Updated test

* removed unused import
2023-01-13 10:35:02 +01:00
Kyle Cunningham
80e7f54166
Table Panel: Refactor Cell Options to Allow for Options per Cell Type (#59363)
* Update table data structure schema.

* Update table panel configuration options for new structure

* Fix TS errors from refactor

* Separate background and gauge display modes

* Remove the now used Bar Gauge display from the mud

* Fix types up

* Reorganize data structures

* Fix type issues.

* Start stubbing necessary code.

* Continue implementing option refactor

* Change category for cell type selection.

* Consolidate cell options

* Fix various typing issues

* Clean up dead code

* Stub handling display mode changes

* Make subOption editor dynamic

* Setup interface for sub-option editor props

* Remove unused imports

* Remove console.log call

* Persist display mode changes, stub sub options change, update comments.

* Make sure updates from cells are persisted

* Persist sub-option changes

* Update BarGaugeCell to take into account new settings.

* Add deprecated field back

* Remove unecessary options in configuration

* Update default cell to accept new settings

* Make sure color text display works

* Add deprecated property notice

* Use constant as opposed to string

* Make sure we name globally namespaced things uniquely

* Update to use unique name

* Use union type with discriminator.

* Simplify types and operation

* Update type definitons

* Update types

* Update property names in cells

* Remove React.FC usage

* Update option editor signature

* Update options structure

* Change variable name

* Fix "Color Text" display

* Remove debug statement

* Make sure we remain backwards compatible with display mode.

* Add migration for configuration.

* Export BarGaugeDisplayMode from grafana-ui

* Update import

* Fix bar gauge and dashboard migrator tests

* Fix potential undefined references causing test failures

* Fix another potential reference error in DefaultCell

* Try to fix breaking change detection.

* Cache setting changes

* Make sure we return with onChange invocation

* Fixed migrating overrides

* Fix a number of review comments

* Simplify option editors

* Fix unused imports

* Fill out comments for types

* Actually use defaultPanelConfig for editor default

* Move TableCellEditorProps alongside TableCellOptionEditor

* Update docs for table panel

* Also make sure we remove TableCellEditorProps from model file

* Stub migration tests

* Add tests for default config migration

* Add basic overrides test

* Flesh out tests a bit more

* Add inspect to same category as cell editor

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2023-01-12 18:42:57 +07:00
Sonia Aguilar
f2d4e24710
Alerting: improve FolderPicker and Evaluation Group Select for Huge lists (#61221)
* Add AsyncVirtualizedSelect component in grafana-ui

* Slice FolderPicker results to 1k and virtualize list using AsyncVirtualizedSelect

* Group list in alert form: Use AsyncSelect and slice results to 1000

* Virtualize and slice always in FolderPicker: set default sliceResults value and let consumers change this value

* Always slice results in FolderPicker

* Limit folder results setting the limit in the api call instead slicing in the FE

* Remove warning about the limit in the Select label
2023-01-12 11:45:03 +01:00
Polina Boneva
84eb275c8d
PanelChrome: Menu is wrapped in a render prop for full outside control (#60537)
* setup menu as a render prop sent down from PanelStateWrapper to PanelChrome

* let the Dropdown take care of opening the menu in PanelChrome

* menu and leftItems are on the right side of the header together

* add storybook examples with menu

* menu does not need to be a callback because it's opened in a Dropdown anyway

* pass down to getPanelMenu whether or not data is streaming atm

* stop loading data as well as streaming from menu

* override menu's style where needed

* reduce snapshot matching in tests
2023-01-12 11:10:09 +02:00
Levente Balogh
8b290bba55
Connections: Update redirect alert message (#61152)
* fix(Alert): don't add padding to content when there is no title

* Feat(Connections): update the style and wording of the redirect alert

* fix(UI/Alert): more resilient check for has title
2023-01-11 11:41:19 +01:00
juanicabanas
2505f112f5
PublicDashboards: A unique page for public dashboards (#60744)
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2023-01-10 14:50:37 -03:00
Ludovic Viaud
220ee3d1d4
Prometheus: Disabled inputs when settings are read-only (#60354) 2023-01-10 16:13:42 +01:00
Andre Pereira
bda13a1b5d
Explore: Expand table height to show sub-tables (#60359)
* Expand table height to show sub-tables when there isn't enough space

* Fix after merge
2023-01-10 11:58:49 +00:00
Ashley Harrison
4e00fbbd7f
Navigation: Allow overriding icons in nav settings (#61160)
expose k6 icon, allow overriding icon in nav settings, override connections + k6
2023-01-10 10:29:07 +00:00
Torkel Ödegaard
a277d504a2
Table: Improve data link text style (#60811)
Table: Change data link text style
2023-01-10 07:48:53 +01:00
Leon Sorokin
a1609230f8
TimeSeries: Fix y-axis Yes/No and On/Off boolean units (#61207) 2023-01-09 23:04:50 -07:00
ismail simsek
6a68fbb495
Influxdb: Improve filtering (#60994)
* Add createOptionPosition props to SelectBase

* Show create option in the beginning of the list

* Show only matched template variables

* Fix the test

* Remove redundant check
2023-01-09 11:37:25 +01:00
Giordano Ricci
fafae26068
GrafanaUI: Fix vercal slider handle positioning (#61088) 2023-01-06 14:24:35 +00:00
Levente Balogh
fc0e3d6c14
Connections: use the "adjust-circle" icon as a logo (#61046)
* feat: add a new icon called 'adjust-circle'

* feat(Connetions): use the `adjust-circle` logo
2023-01-06 07:31:49 +01:00
Giordano Ricci
dfed7e59a5
Explore: move items out of topnav & use canvas variant for toolbar buttons (#60630)
* Explore: remove topnav

* PageToolbar: fix left items margin when no title or page icon is set

* add missing key prop & fix tests

* use canvas variant in live logs

* avoid rendering empty space

* fix test

* avoid disabling split resize button when live tailing

* minor touchups

* Update packages/grafana-ui/src/components/PageLayout/PageToolbar.tsx

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

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2023-01-05 22:26:58 +00:00
Ryan McKinley
48fbe51d37
Chore: Avoid FC in canvas elements and dimension editors (#61014) 2023-01-05 09:55:55 -08:00
Ashley Harrison
a9e39a108c
RelativeTimeRangePicker: correctly trap focus in overlay (#60984)
* correctly trap focus in relativetimerangepicker overlay

* add underlay

Co-authored-by: Michael Mandrus <michael.mandrus@grafana.com>
2023-01-05 11:35:47 +00:00
Polina Boneva
3f1908464d
PanelChrome: Implement Panel header with error, loading, and streaming data status (#60147)
* dashboards squad mob! 🔱

lastFile:packages/grafana-ui/src/components/LoadingBar/LoadingBar.tsx

* dashboards squad mob! 🔱

* dashboards squad mob! 🔱

lastFile:packages/grafana-ui/src/components/LoadingBar/LoadingBar.tsx

* user essentials mob! 🔱

* create grafana/ui LoadingBar and set it up in Storybook

* Remove test changes on PanelChrome

* Fix mdx page reference

* dashboards squad mob! 🔱

lastFile:public/api-merged.json

* dashboards squad mob! 🔱

* dashboards squad mob! 🔱

* dashboards squad mob! 🔱

* dashboards squad mob! 🔱

lastFile:public/app/features/dashboard/dashgrid/PanelHeader/PanelHeaderState.tsx

* Implemented basic draft of panel header states. Using ToolbarButton instead of IconButton.

* use 'warning' styled Button in ToolbarButton

* make LoadingBar a simple JSX Element; do not use containerWidth; have a wrapper around the loading bar itself;

* fix wrapper around LoadingBar: willChange css prop makes performance of rerendering better

* States: Render general panel query error states and render notices next
to the title

* add streaming to PanelChrome if data is streaming instead of loading

* PanelHeaderState with its own state 'mode'

* clean up useEffect

* notices have their own square space in the size of the panel header

* clean up

* minor fixes

* moving the LoadingBar to core

* LoadingBar is not in grafana/ui

* always have a place for the loading bar in the PanelChrome, otherwise it moves everything when appearing;

remove titleItemsNodes for now - in later development

make no changes to Notice component, not part of this PR

* Revert "moving the LoadingBar to core"

This reverts commit 11f0f4ff2f.

* do not use internal comment as it doesn't do anything

* integrate LoadingBar in PanelChrome from grafana/ui directly

* fix deprecated leftItems comment

* Modify annimation to 1 second

* remove comments

* remove streaming stopped UI because we cannot know when the streaming has stopped

* skip unnecessary test for now

* no point in removing hoverHeader now, even though it's not yet implemented

* small fixes

* error state of the data in a panel is positioned in PanelChrome itself, not in PanelHeaderState

* Fixed loading state jitter

* remove warning state as we have none of it

* streaming cannot be stopped from the icon

* explicit content container width and height

* explicit content container width and height

* edit deprecated comment

* fix LoadingBar to be relative to width of panel; remove explicit width and height on content strict

* no warning state of the data

* status of the panel data given directly to PanelChrome, not a node

* clean up

* clean up console log

Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>

* panel title design fits typography h6 styles; render error status only if error or error message are passed to PanelChrome

* add storybook examples; prepare PanelChrome for hoverHeader because this will be a breaking change and it will affect how the storybook example shows up

* show storybook example for streaming panel with title because that's the condition for having a header

* override margin-bottom: 0.45em of h6

Co-authored-by: Alexandra Vargas <alexa1866@gmail.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
2023-01-05 11:48:11 +02:00
Josh Hunt
a26d4c90b2
I18N: Fail i18n:extract on warnings + update strings (#60949)
* I18N: Fail i18n:extract on warnings

* I18N: Fix onboarding page title

* extract all strings

* move t reassign outside of function
2023-01-04 15:28:07 +00:00
Joao Silva
220175cab9
A11y: Improve accessibility of ColorPickerInput (#60923) 2023-01-04 13:19:41 +01:00
Torkel Ödegaard
497ce81867
Table: Refactoring state handling for expanded rows (#60791)
* Table: Refactoring state handling for expanded rows

* Simplify row expander

* remove console.log

* review fixes

* Simplify hook name

* fixed test
2022-12-28 19:37:17 +01:00
Dominik Prokop
9b7418ec17
Revert "Chore: Update typescript to 4.9.3 (#60538)" (#60774)
This reverts commit 51f5334748.
2022-12-27 06:30:52 -08:00
Victor Marin
9bd6e471e4
BarChart: Clear tooltip when cursor exits bar (#60617) 2022-12-23 13:00:52 -06:00
Ashley Harrison
a16ca209fb
Segment: Individual segments are now keyboard accessible (#60555)
use <button> for keyboard accessibility
2022-12-21 17:26:18 +00:00
Gilles De Mey
16c6f223ba
TimeSeriesPanel: Allow threshold indicators without change handler (#60575) 2022-12-21 16:18:35 +01:00
Ashley Harrison
44232569a8
ToolbarButtonRow: Overflow button now toggles visibility correctly (#60635)
* only close the overlay if we're interacting with something other than the overflow button/the overlay itself

* use a ref instead of a test id
2022-12-21 15:01:39 +00:00
Kristina
0adb00b692
Explore: Use new icons for split pane resizing (#60391)
* Add icons, use them for split pane resizing

* Change icons

* Apply scale to child div

* Use fancier logic for displaying icon

* Remove color fill on icon

* Change icons, remove scale

* Change icons and logic
2022-12-21 07:07:05 -06:00
Ashley Harrison
78e12b140e
TimePicker accessibility: remove stopPropagation from everywhere (#60404)
* remove stopPropagation from everywhere

* improve keyboard a11y in DateTimePicker
2022-12-21 13:04:47 +00:00
Josh Hunt
51f5334748
Chore: Update typescript to 4.9.3 (#60538)
* Update typescript to 4.9.3

* Update from typescript changes
2022-12-21 10:25:29 +00:00
Ashley Harrison
ba6d2f2a82
Chore: improve some more types (#60476)
* improve some more types

* fixes

Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2022-12-20 13:07:57 +00:00
Ashley Harrison
9b21375d78
Chore: remove @storybook/addon-knobs package (#60524)
remove @storybook/addon-knobs package
2022-12-19 15:35:32 +00:00
renovate[bot]
4f7920da06
Update dependency @testing-library/dom to v8.19.0 (#51151)
* Update dependency @testing-library/dom to v8.19.0

* refresh lockfile

* fix unit tests

* Revert "fix unit tests"

This reverts commit eb40f3207a.

* Revert "refresh lockfile"

This reverts commit c0cd5822da.

* ensure a consistent version of @testing-library/dom

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
2022-12-19 14:44:46 +00:00
Gilles De Mey
68b044fb7c
RelativeTimeRangePicker: Don't respond to submit event when nested in a form element (#60495) 2022-12-19 13:08:33 +01:00
renovate[bot]
1b860a4074
Update dependency rc-cascader to v3.8.0 (#60489)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-12-19 10:09:57 +00:00
Jack Westbrook
f3f9697914
Storybook: Bump dark-mode addon to 2.0.4 and remove patch (#60384)
chore(storybook): bump dark-mode addon to 2.0.4 and remove patch
2022-12-19 10:43:21 +01:00
Ashley Harrison
3c399ed943
Accessibility: Render gauge as a button when onClick is provided (#60396)
render gauge as a button when onClick is provided
2022-12-19 09:40:45 +00:00