Commit Graph
100 Commits
Author SHA1 Message Date
Ashley Harrison ebe13a53f7 Browse Dashboards: Split new browse UI from nested folders backend (#74435)
* create new feature toggle + start to put stuff behind it

* block move, tidy up interfaces

* fix new/folder actions buttons

* show warning when deleting library panels/alert rules + run i18n:extract

* pseudo

* update unit tests

* pass alert in description
2023-09-07 11:41:00 +01:00
e2724f39d9 Time Range: Using relative time takes timezone into account (#74013)
* account for timezone when using relative times
Co-authored-by: eledobleefe <laura.fernandez@grafana.com>
Co-authored-by: Joao Silva <joao.silva@grafana.com>
Co-authored-by: L-M-K-B <48948963+L-M-K-B@users.noreply.github.com>
Co-authored-by: joshhunt <josh@trtr.co>
Co-authored-by: tskarhed <1438972+tskarhed@users.noreply.github.com>

* keep as it was originally for now

* add e2e test for relative time zone overrides

* empty commit to add coauthors

Co-authored-by: eledobleefe <laura.fernandez@grafana.com>
Co-authored-by: Joao Silva <joao.silva@grafana.com>
Co-authored-by: L-M-K-B <48948963+L-M-K-B@users.noreply.github.com>
Co-authored-by: joshhunt <josh@trtr.co>
Co-authored-by: tskarhed <1438972+tskarhed@users.noreply.github.com>

* fix types

* switch to using table panel in e2e test

* use regex for partial text match

* actually go to the dashboard...

* use include.text

* check for visibility first

* try waiting on backend request to complete

* CI driven development is fun

* make sure we're waiting for both data query calls

* open dashboard instead

* kick drone

* Revert "open dashboard instead"

This reverts commit bab9c77c4d.

* check timezone second

* refactor to avoid detached elements

---------

Co-authored-by: eledobleefe <laura.fernandez@grafana.com>
Co-authored-by: Joao Silva <joao.silva@grafana.com>
Co-authored-by: L-M-K-B <48948963+L-M-K-B@users.noreply.github.com>
Co-authored-by: joshhunt <josh@trtr.co>
Co-authored-by: tskarhed <1438972+tskarhed@users.noreply.github.com>
2023-09-04 10:38:35 +01:00
Ashley Harrison 0853819ff7 Chore: friday typings 5 (#73844)
* fix some event.target as stuff

* segment async story

* segmentinput story

* SegmentSelect

* fixing some tests

* more test fixes

* undo change to SilencesFilter
2023-08-29 09:14:15 +01:00
45ff0b5cf6 DatePicker: Fix calendar not showing correct selected range when changing time zones (#73273)
* user essentials mob! 🔱

* user essentials mob! 🔱

lastFile:packages/grafana-ui/src/components/DateTimePickers/TimeRangePicker/CalendarBody.tsx

* user essentials mob! 🔱

lastFile:packages/grafana-ui/src/components/DateTimePickers/TimeRangePicker/CalendarBody.tsx

* user essentials mob! 🔱

* user essentials mob! 🔱

lastFile:e2e/dashboards-suite/dashboard-timepicker.spec.ts

* user essentials mob! 🔱

lastFile:e2e/dashboards-suite/dashboard-timepicker.spec.ts

* user essentials mob! 🔱

* user essentials mob! 🔱

* restore custom.ini

* run betterer + prettier

---------

Co-authored-by: joshhunt <josh@trtr.co>
Co-authored-by: Roxana Turc <anamaria-roxana.turc@grafana.com>
Co-authored-by: Tobias Skarhed <tobias.skarhed@gmail.com>
Co-authored-by: eledobleefe <laura.fernandez@grafana.com>
2023-08-23 12:57:32 +00:00
Ashley Harrison 02f2ff1870 Chore: some more type fixes (#73606)
* some type fixes

* some select/table fixes

* some uplot type improvements

* couple more
2023-08-23 10:11:59 +01:00
Ashley Harrison 1f49d480a8 Drawer: Clicking a Select arrow within a Drawer no longer causes it to close (#73557)
ensure drawer doesn't close when clicking dropdown arrow
2023-08-22 16:11:18 +01:00
Ashley Harrison 57d8997b86 CodeEditor: Correctly fires onChange handler (#73030)
move onChange outside onEditorDidMount condition
2023-08-15 09:19:14 +01:00
Ashley Harrison 963fffeef1 Chore: fix some more types (#72726)
fix some more types
2023-08-14 16:04:04 +01:00
Ashley Harrison 0ffdcbbe52 Chore: improve typings (#72679)
improve typings
2023-08-07 09:32:13 +01:00
Ashley Harrison dbef9899ac Nested folders: Clear selection state in tree view when indeterminate (#72595)
* clear selection state when indeterminate

* ensure search state is properly cleared when toggling the indeterminate checkbox

* select everything in view
2023-08-02 11:37:19 +01:00
Ashley HarrisonandRoxana Turc 6194d8fd8b Nested folders: Add e2e test for new browse page (#72590)
* scaffold nested folder structure

* update structure slightly

* update comments

* Added basic scafold for Cypress test

* fix selector name, add table body selector, improve expand aria label

* skip test for now

* undo changes to cypress custom.ini

---------

Co-authored-by: Roxana Turc <anamaria-roxana.turc@grafana.com>
2023-08-02 11:28:13 +01:00
Ashley Harrison e0587dfb30 Chore: Replace deprecated usage of shape.borderRadius() (#72672)
* properly mark borderRadius() as deprecated, replace borderRadius() with default

* undo a couple of changes

* use radius.pill in FilterPill
2023-08-01 14:46:07 +01:00
Ashley Harrison a0b0d704d9 Chore: type fixes (#72604)
* fixing some types

* some more type fixes

* undo rootReducer type change

* update betterer
2023-08-01 12:56:21 +01:00
Ashley Harrison 70cbda951f Chore: revert swc upgrade since it breaks CI metrics emit (#72598)
revert swc upgrade since it breaks CI metrics emit
2023-07-31 15:35:48 +03:00
Ashley Harrison ae4810f854 Chore: Emit theme token usage metrics (#72500)
* create rule to find instances of theme variables

* emit theme token usage metrics

* move awking into script

* make sure theme usage is covering ts and tsx files, remove commented lines
2023-07-28 17:08:02 +03:00
Ashley Harrison 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
Ashley Harrison 60058cb3da Button: Fix global button styles! (#72391)
uncomment button focus styles!
2023-07-26 18:46:16 +03:00
Ashley Harrisonandjoshhunt 2374458e94 Nested folders: use FolderPicker in dashboard settings (#72192)
* Use new NestedFolderPicker in SaveDashboardAsForm

* use FolderPicker wrapper in dashboard settings

* fix e2e test

* actually pass the deprecated props to the component

* just pass value

---------

Co-authored-by: joshhunt <josh@trtr.co>
2023-07-24 14:27:47 +01:00
Ashley Harrison 56ae5abf08 Chore: remove comment that doesn't apply anymore (#72186)
remove comment that doesn't apply anymore
2023-07-24 10:13:21 +00:00
Ashley Harrison f078a0bb40 NestedFolderPicker: Allow for excluding certain uids (#72019)
* exclude some uids from nested folder picker so you can't move a folder to itself

* rename excludedUids to excludeUIDs
2023-07-21 13:10:23 +01:00
Ashley Harrison 8f464ac66e NestedFolderPicker: Correctly handle pagination (#72030)
correctly handle pagination in the folder picker when there is more than 1 page of dashboards
2023-07-21 13:08:19 +01:00
Ashley Harrison 01369e6aff Chore: fix .eslintignore to only ignore folder paths at the root (#72032)
fix eslintignore to only ignore folder paths at the root
2023-07-21 09:17:42 +01:00
Ashley Harrison b164fa37e6 NestedFolderPicker: Implement keyboard handling (#71842)
* first attempt at keyboard handling

* rename some things, handle escape

* better

* almost working

* cleaner

* remove aria-label

* add some extra unit tests

* remove onMouseUp

* fix typo

* use a switch instead of if/else

* ensure lsit items are prefixed with an id unique to the picker

* extract keyboard interactions out into custom hook

* wrap handleCloseOverlay in useCallback

* use redux state instead of filtering items
2023-07-19 15:32:55 +01:00
Ashley Harrison 626ac67dd7 Chore: Convert @grafana/ui to use emotion object syntax (#71374)
* convert a bunch of grafana/ui to use emotion's object notation

* convert some more grafana-ui emotion styles

* more conversion

* more conversion

* finish conversion

* fix unit tests

* fix focus styles

* remove semicolon from infobox story
2023-07-17 16:12:09 +01:00
Ashley Harrisonandrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com> 9852b24d61 Chore: Upgrade prettier to v3 (#71764)
* Update dependency prettier to v3 (#71586)

* Update dependency prettier to v3

* run prettier

* ignore prettier update in legacy select scss

* update command line arg

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>

* unplug prettier

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-07-17 15:58:22 +01:00
Ashley Harrison 5ca382c88a Revert "Update dependency prettier to v3 (#71586)" (#71755)
This reverts commit 2e8cd1c021.
2023-07-17 14:46:15 +01:00
Ashley Harrison 24bcf9b3fd Chore: Fix pseudo i18n generation script to work with Prettier 3 (#71734)
prettier.format is now a promise -> await it!
2023-07-17 14:00:20 +03:00
Ashley Harrisonandjoshhunt 1caf3298ea Nested folders: Empty state for nested folder picker (#71464)
* add empty state to nestedfolderpicker, add translations

* run i18n:extract

* rename i18n key

---------

Co-authored-by: joshhunt <josh@trtr.co>
2023-07-14 11:58:43 +01:00
Ashley Harrison ad3d7d5e94 NestedFolderPicker: Truncate overflowing text, fix selected state (#71444)
* truncate overflowing text, fix selected state

* ensure search state is always clean when opening the overlay
2023-07-12 14:55:27 +01:00
Ashley Harrison cc0c85a62e Revert "Update dependency @swc/helpers to v0.5.1 (#71331)" (#71432)
This reverts commit d0bbb69e14.
2023-07-12 13:32:54 +03:00
Ashley Harrison 580345306b Nested folders: Only show edit title button if user has permissions (#71426)
only show edit title button if user has permissions
2023-07-12 11:07:16 +01:00
Ashley HarrisonandTobias Skarhed 29ed310af9 Nested folder picker: Move options into overlay (#71042)
* move options into overlay

* add some unit tests

* Update public/app/features/browse-dashboards/components/BrowseActions/MoveModal.tsx

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

* minor refactoring based on review comments

* just pass in uid

---------

Co-authored-by: Tobias Skarhed <1438972+tskarhed@users.noreply.github.com>
2023-07-12 10:37:08 +01:00
2650aa5600 Internationalization: Correctly generate plural forms (#71341)
* user essentials mob! 🔱

lastFile:public/locales/pseudo-LOCALE/grafana.json

* user essentials mob! 🔱

* user essentials mob! 🔱

lastFile:contribute/internationalization.md

* user essentials mob! 🔱

lastFile:contribute/internationalization.md

* move pseudo generation to precommit hook if en-US file is modified

Co-authored-by: L-M-K-B <48948963+L-M-K-B@users.noreply.github.com>
Co-authored-by: tskarhed <1438972+tskarhed@users.noreply.github.com>

* fix unit tests

---------

Co-authored-by: Joao Silva <joao.silva@grafana.com>
Co-authored-by: joshhunt <josh@trtr.co>
Co-authored-by: Roxana Turc <anamaria-roxana.turc@grafana.com>
Co-authored-by: eledobleefe <laura.fernandez@grafana.com>
Co-authored-by: L-M-K-B <48948963+L-M-K-B@users.noreply.github.com>
Co-authored-by: tskarhed <1438972+tskarhed@users.noreply.github.com>
2023-07-11 16:37:01 +01:00
Ashley Harrison ab09c9efc7 TimePicker: Fix issue with previous fiscal quarter not parsing correctly (#71083)
* fix issue with previous fiscal quarter not parsing correctly

* add comment
2023-07-05 17:02:28 +01:00
Ashley Harrison 0e4743b852 NestedFolderPicker: Expand/collapse keyboard handling (#70949)
* better keyboard handling in NestedFolderList

* add check for foldersAreOpenable
2023-07-04 12:55:25 +01:00
Ashley Harrison 7a2a5dde8b Chore: Enable remaining jsx-a11y rules (#70990)
enabling remaining a11y rules + ignore existing violations
2023-06-30 16:58:16 +01:00
Ashley Harrison ebd6aa5034 Permissions: Fix incorrect navId in permissions page (#70906)
fix navId in permissions page
2023-06-29 16:35:41 +01:00
Ashley Harrison cc794b884e ConfirmButton: Attach onClick to custom child button to better support a11y (#70504)
* change ConfirmButton to accept a function as a child so it can pass onClick to a custom child button

* spread button props instead

* update documentation

* remove duplicate line

* spread ref instead of className

* use cloneElement instead
2023-06-29 13:56:28 +01:00
Ashley Harrison 9ee2cc742a Chore: Use theme.shape.radius.circle everywhere (#70896)
* use theme.shape.radius.circle everywhere

* add useTheme2 import
2023-06-29 13:56:05 +01:00
Ashley Harrison 703bf4afcc Nested folders: Unify visual styles between tree + search view (#70814)
* unify search table styles with browse

* add a skeleton state when switching to search view

* show all column headers

* use isItemLoaded

* extract number of placeholder rows into variable + add comment

* fix all selection toggle behaviour

* tidy up

* fix unit test
2023-06-29 10:31:22 +01:00
Ashley Harrison beb166f1d2 Checkbox: Fix alignment in Safari (#70673) 2023-06-27 16:10:56 +01:00
Ashley Harrison 135ef088ed Nested folders: Paginate child folder items (#70730)
* make handleLoadMore aware of child folders

* combine PAGE_SIZE and ROOT_PAGE_SIZE
2023-06-27 11:38:33 +01:00
Ashley Harrison 8ea74333f1 Nested folders: Replace explicit type column with icon in browse view (#70666)
* remove type column and add icon instead

* extract translations
2023-06-26 11:58:26 +01:00
Ashley Harrison ff429c9af5 Navigation: Fix toolbar actions flickering on mobile (#70524)
* fix flickering overflow

* set everything to hidden by default

* extend intersectionobserver mock
2023-06-23 08:50:51 +01:00
Ashley Harrison d00f455f2d Chore: add esbuild target for theme generation (#70511)
add esbuild target for theme generation
2023-06-22 13:25:27 +01:00
Ashley Harrison eacb5bee7e Nested folders: Consolidate mutations in RTK query (#70249)
* this is an ok intermediate point

* delete some unused actions + fix tag invalidation on folder save

* remove prefetching for now (it creates a permanent subscription?!)

* leave paginated fetch out of rtk query for now

* ensure we're invalidating the cache correctly

* fix dashboard saving

* simplify

* recursively invalidate children on rename

* tidy up

* don't need to invalidate tags on delete

* don't need to invalidate on new either

* make new refreshParents action

* pageheader spacing

* invalidate getFolder on move

* bit of rearrangement
2023-06-22 09:44:19 +01:00
Ashley Harrison 1441c90178 Accessibility: use Collapse in QueryOptionGroup (#70446)
* use collapse in QueryOptionGroup

* fix unit tests

* fix tests after merging main

* adjust padding to match
2023-06-22 09:31:55 +01:00
Ashley Harrison d65c9396f3 Chore: Remove DashboardSearchModal/SearchWrapper since they're no longer used (#70374)
remove DashboardSearchModal/SearchWrapper since they're no longer used
2023-06-21 09:51:28 +01:00
Ashley Harrison 0325fdecb8 Chore: Fix main build (#70424)
add check for empty object
2023-06-21 11:33:09 +03:00
Ashley Harrison 13e3308959 Chore: some type fixes (#69860)
* some type fixes

* restore empty object

* undo 1 fix for now

* commit betterer update

* explicitly type slug and uid as string | undefined
2023-06-20 17:13:49 +01:00
Ashley Harrison db44ba305e Command palette: Include help links (#70234)
enrich help node with frontend links
2023-06-19 13:29:26 +01:00
Ashley Harrison b1d997d1e8 Navigation: Add navigation customization options to config documentation (#70072)
update config documentation to mention navigation customization options
2023-06-15 16:17:48 +01:00
Ashley Harrison 193247bc73 Revert "Update dependency @swc/helpers to v0.5.1 (#69766)" (#70069)
This reverts commit 3e5e178ede.
2023-06-14 15:30:03 +01:00
61dbad6905 CodeEditor: Ensure suggestions only apply to the instance of the editor that registered them (#69995)
* user essentials mob! 🔱

lastFile:packages/grafana-ui/src/components/Monaco/CodeEditor.internal.story.tsx

* user essentials mob! 🔱

lastFile:packages/grafana-ui/src/components/Monaco/suggestions.ts

* user essentials mob! 🔱

lastFile:packages/grafana-ui/src/components/Monaco/CodeEditor.internal.story.tsx

* user essentials mob! 🔱

lastFile:packages/grafana-ui/src/components/Monaco/suggestions.ts

* remove duplicate editor from story

* remove suggestions from story

---------

Co-authored-by: Laura Benz <laura.benz@grafana.com>
Co-authored-by: Tobias Skarhed <tobias.skarhed@gmail.com>
2023-06-14 13:51:03 +01:00
Ashley Harrison 266751b96d NestedFolders: stay in the modal whilst actions complete (#69730)
* stay in the modal whilst actions complete

* don't return anything here to fix types

* ensure we're always resetting button state
2023-06-12 16:53:17 +01:00
Ashley Harrison 9799a28fad Nested folders: add analytics tracking for some features (#69901)
* add analytics for folder creation

* add interaction tracking for move/delete

* add tracking for item clicked in the new browse view

* review comments

* emit counts instead
2023-06-12 16:52:08 +01:00
Ashley Harrison 9eb8ec9fa9 Command Palette: Links opened in a new tab now route correctly when Grafana is served under a subpath (#69845)
don't strip base from url since we're not using locationSrv.push anymore
2023-06-12 15:58:38 +01:00
Ashley Harrison d29124214a NestedFolders: Ensure New dashboard page has the correct breadcrumb hierarchy (#69758)
ensure new dashboard page has the correct breadcrumb hierarchy
2023-06-09 16:22:57 +01:00
Ashley Harrison ca8d0ef041 NestedFolders: Move New folder into a drawer (#69706)
* make New folder a drawer

* use sentence case

* extract strings and update tests

* use sm drawer
2023-06-09 16:00:16 +01:00
Ashley Harrison 0e28d6143b Nested folders: Improve loading states (#69556)
* loading states!

* fix uncontrolled checkbox

* cleaner css

* improve flickering title

* make sure @grafana/ui has the same version of react-loading-skeleton

* fix unit test + add tooltip text

* better way of restoring focus

* only restore focus when loading

* missing !

* use aria-label instead of tooltip
2023-06-07 11:21:44 +01:00
Ashley Harrison 48e328c1dd Login: Show additional information when prompting to change password (#69537)
* add some information to the password change screen

* update threshold cause pa11y is stupid

* override the loginlayout title if changing password

* remove top padding from inner box
2023-06-06 11:24:46 +01:00
Ashley Harrison d1a32d4baa Chore: update user-essentials to frontend-platform (#69533)
user-essentials -> frontend-platform
2023-06-05 12:24:17 +01:00
Ashley Harrison 5a98348faf Chore: remove i18n toggle (#69389)
* remove i18n toggle

* remove beta badge on language picker

* remove toggle from go code

* Revert "remove beta badge on language picker"

This reverts commit 3b76300aa7.
2023-06-02 09:24:40 +01:00
Ashley Harrison 778963849e News: Expose config option to disable News feed (#69365)
* customize news feed

* remove url customisation
2023-06-01 13:35:05 +01:00
Ashley Harrison 9968a7324d Nested folders: add skeleton scaffolding (#69310)
add skeleton scaffolding
2023-06-01 11:06:28 +01:00
Ashley Harrison 10adebd7b3 Page: Add inline rename functionality (#68828)
* initial attempt at inline rename

* handle version correctly

* refactor

* minor tweaks

* add unit tests

* prettier...

* add to other tabs, remove settings tab when feature toggle is enabled

* fix truncation

* allow title to span full width of page

* fix h1 styling when no renderTitle/onEditTitle is present

* better layout

* use input from grafana/ui, fix imports

* fix unit test

* better error handling

* don't use autosavefield

* undo changes to AutoSaveField

* remove timeout

* remove maxWidth now we're not using AutoSaveField

* rename isEditInProgress to isLoading

* sync localValue with value

* better responsive css
2023-05-31 17:03:54 +01:00
Ashley Harrison fd7f2d4a5e ConfirmModal: Ignore case for confirmation text (#69000)
* ignore case for confirmation text, add a couple of unit tests

* just have 1 test

* fix related unit tests
2023-05-31 16:20:36 +01:00
Ashley Harrison d2814df8b6 Browse: fix spacing on old browse checkboxes (#69155)
fix styling on old browse checkboxes
2023-05-26 15:38:07 +02:00
Ashley Harrison c55c091145 Query Editor: Ensure dropdown menus position correctly (#69062)
prevent showing menu until options have loaded
2023-05-26 09:30:46 +01:00
Ashley Harrison a018fa5cfb Nested folders: More browse unit tests (#68994)
* improved BrowseDashboardsPage unit tests

* better

* add unit tests for FolderActionsButton
2023-05-25 11:26:39 +01:00
Ashley Harrison 6613610f07 Nested folders: update delete modal title to just be "Delete" (#68999)
update delete modal title to just be "Delete"
2023-05-25 11:07:02 +01:00
Ashley Harrison f91c1b9897 Nested folders: use an info banner instead of a warning in the move modal (#68997)
use an info banner instead of a warning
2023-05-24 16:24:45 +01:00
Ashley Harrison 09a0c1e1bb Checkbox: Fix extraneous right hand margin when no label is present (#68885)
* remove explicit grid columns, let it automatically work it out

* restore position: relative;
2023-05-24 10:52:21 +01:00
Ashley Harrison a8f91f115c Nested folders: Add folder actions to other tabs (#68673)
* add folder actions to other tabs

* fix copy pasta

* add unit tests

* don't need tree here

* fixes some copy pasta

* move into separate fixtures file
2023-05-24 10:41:03 +01:00
2ceed6a169 Preferences: Can reset timezone preference back to default correctly (#68881)
* user essentials mob! 🔱

lastFile:public/app/core/components/SharedPreferences/SharedPreferences.tsx

* invert menuShouldPortal logic on TimeZonePicker and fix unit test

Co-authored-by: eledobleefe <laura.fernandez@grafana.com>
Co-authored-by: Joao Silva <joao.silva@grafana.com>
Co-authored-by: L-M-K-B <48948963+L-M-K-B@users.noreply.github.com>
Co-authored-by: joshhunt <josh@trtr.co>

---------

Co-authored-by: eledobleefe <laura.fernandez@grafana.com>
Co-authored-by: Joao Silva <joao.silva@grafana.com>
Co-authored-by: L-M-K-B <48948963+L-M-K-B@users.noreply.github.com>
Co-authored-by: joshhunt <josh@trtr.co>
2023-05-24 09:28:14 +01:00
Ashley Harrison 2cbd7f1be6 OpenTSDB: use an effect to get aggregators and filters (#68785)
* only update state if it's different

* use an effect
2023-05-22 15:43:22 +01:00
Ashley Harrison 0b6c5722a5 Graph: Fix bug with showing/hiding the legend (#68774)
* don't unmount the root when hiding the legend

* update comment
2023-05-22 14:57:56 +01:00
Ashley Harrison e8ca3c0409 Chore: More typescript improvements 💪 (#68699)
* fix some anys

* some canvas/geomap improvements

* some more panel type fixes

* just omit the type in TagOption
2023-05-22 11:53:58 +01:00
Ashley Harrison 0a44793390 Nested folders: only stop recursing up the tree if we hit a folder (#68676)
only stop recursing up the tree if we hit a folder
2023-05-18 17:01:59 +01:00
Ashley Harrison e27e71ee59 Nested folders: move permissions to a drawer (#68476)
* move permissions to a drawer when nested folders is enabled

* only show count when resource is folder

* Extract descendant count out into its own component

* remove label
2023-05-17 16:15:36 +01:00
Ashley Harrison bbb6795757 NestedFolders: make sure DashboardPage code is feature toggled correctly (#68602)
make sure DashboardPage code is feature toggled correctly
2023-05-17 10:16:37 +01:00
Ashley Harrison 82114cb316 NestedFolders: Show Dashboard and Folder full breadcrumb hierarchy (#68308)
* update FolderDTO to match backend struct

* hacky way to get folder page breadcrumbs working

* hacky way to get dashboard nested breadcrumbs working

* undo route changes, get url from folder

* fix breadcrumbs in dashboard settings

* add parent pages to navIndex

* adjust getRootSectionForNode to just return the parent of a leaf node

* undo changes to generated files

* undo changes to toggles_gen.go

* feature toggle dashboardInit code

* remove unnecessary code in home dashboard

* build navModel directly, don't use getNavModel

* don't need fallback here

* remove getLoadingNav since it's not used anymore

* don't need to hide tabs from breadcrumbs anymore

* use id to find dashboards tab
2023-05-16 13:54:44 +01:00
Ashley Harrison 5d91ace745 ToolbarButtonRow: prevent closure of overflow menu when interacting with portal elements (#68319)
* don't close the overflow menu when interacting with something in a portal

* keep overflow ref logic
2023-05-15 13:48:19 +01:00
Ashley Harrison 7e3c68d3c1 Nested folders: Clear selection state when navigating to a different folder (#68438)
* clear selection state when navigating to a different folder

* consolidate useEffects
2023-05-15 13:26:55 +01:00
Ashley Harrison b5f56537c9 Accessibility: Prevent TimePickerContent overflowing page height (#68356)
* add max-height to TimePickerContent/Calendar

* undo change to TimePickerCalendar
2023-05-15 10:07:19 +01:00
Ashley Harrison 07c725800b Chore: some minor type fixes (#68402)
* some minor type fixes

* undo card change
2023-05-15 09:15:26 +01:00
Ashley Harrison 446885bd1a Command Palette: Prevent stale search results from overwriting newer results (#68377)
* only update the state if this is the most recent request

* fix empty state as well

* improve perf of recent dashboards
2023-05-12 16:23:20 +01:00
Ashley Harrison 4f987a4a5d Navigation: Add keyboard shortcut to navigate directly to Dashboards (#68350)
* add go to dashboards keybinding

* add shortcut to keybindings modal
2023-05-12 13:25:54 +01:00
Ashley Harrison 135b0a25aa Nested folders: Redo search query when actions complete (#68102)
redo search query if searching when actions complete
2023-05-10 11:13:27 +01:00
Ashley Harrison 765da9c841 Nested folders: remove behaviour where selecting all children selects parent (#68084)
remove behaviour where selecting all children selects parent
2023-05-10 10:51:57 +01:00
Ashley Harrison 8e752439c6 Graph: Fix legend overlapping graph area (#67912)
use render callback instead of requestIdleTimeout
2023-05-09 15:26:17 +01:00
Ashley HarrisonandJoao Silva a7cbb72664 Accessibility: Add Skip to content link (#68065)
* user essentials mob! 🔱

lastFile:public/app/core/components/AppChrome/AppChrome.tsx

* user essentials mob! 🔱

lastFile:public/app/core/components/AppChrome/AppChrome.test.tsx

* only show skiplink when page has app chrome

---------

Co-authored-by: Joao Silva <joao.silva@grafana.com>
2023-05-09 15:22:23 +01:00
Ashley Harrison 37378c4dd8 Navigation: more nav interface cleanup (#67708)
more nav interface cleanup
2023-05-04 14:17:44 +01:00
Ashley Harrisonandjoshhunt 5d5a54979c Nested folders: hook up getAffectedItems to the backend count route (#67677)
* hook up getAffectedItems to the backend count route

* mock out backendSrv in unit tests

* Don't delete alert rules while API doesn't return counts

* Show alert rule counts when API returns them

* use components for modal styles

* Revert "use components for modal styles"

This reverts commit 80ac1152f8.

---------

Co-authored-by: joshhunt <josh@trtr.co>
2023-05-02 21:20:30 +00:00
Ashley Harrison 02086e843f Nested folders: hook up move/delete logic properly (#67648)
* clear selection post move/delete

* move actions out of rtk-query

* move findItems, create selectors, refetch children when moving/deleting

* cleaner syntax

* remove unnecessary function, just put logic in the selector

* handle moving/deleting from the root

* slightly cleaner

* handle when rootItems are undefined

* handle 'general' in the fetchChildren reducer

* only refresh at the end

* don't need thunk api
2023-05-02 17:22:51 +01:00
Ashley Harrison 4b241311b3 Nested folders: very naive implementations of move/delete (#67309)
* implement naive delete

* implement naive move

* use params object instead of appending to url
2023-04-27 15:10:34 +01:00
Ashley Harrison 258f11f08d Nested folders: deduplicate selection of children (#67229)
* scaffold out dedupe logic, use mock api to get descendant info

* rename methods

* use for..of

* some renaming for clarity
2023-04-26 11:20:10 +01:00
Ashley Harrison e6e741546f Nested folders: Create basic Move/Delete modals (#67140)
* add modal scaffolding

* add some unit tests

* remove dummy api, add some TODO comments

* small test refactor

* another small test refactor

* fix unit tests due to aria-label/data-testid change
2023-04-25 17:08:40 +01:00
Ashley Harrison dcf53dbb3b ConfirmModal: make button styling consistent (#67142)
* stop using fill="outline" for confirm modal dismiss button

* kick drone
2023-04-24 17:53:28 +01:00
Ashley Harrison 4e492ae725 Navigation: Unify Page component (#66951)
* remove old page component

* add test to check initDashboard is only called once (prevent variables loading twice)

* add help node

* update unit tests

* remove last mentions of topnav

* fix unit tests

* remove unused props from ButtonRow interface

* remove prop from test
2023-04-24 16:41:32 +01:00