Commit Graph
100 Commits
Author SHA1 Message Date
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
Ashley Harrison 1cad819670 Nested folders: Add dummy Move/Delete actions (#67051)
* slight refactor, show actions on selection

* add unit tests

* refactor logic into custom selector + hook
2023-04-21 15:18:40 +01:00
Ashley Harrison 1f193f1bad Navigation IA: Update Monitoring to Observability (#66963)
* update monitoring -> observability

* update backend test
2023-04-21 08:39:49 +01:00
Ashley HarrisonandIsabel 1917857186 docs: add migration guide and notes for upcoming react 18 upgrade (#66656)
* add information to what's new about upcoming react 18 upgrade

* update structure

* Apply suggestions from code review

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>

* add docs to plugin migration guide

* add link to forum discussion

* apply suggestions from review

---------

Co-authored-by: Isabel <76437239+imatwawana@users.noreply.github.com>
2023-04-20 13:23:04 +01:00
Ashley Harrison 9ff221098d Navigation: refactor RemoveEmptySection... logic into main navtree code (#66878)
refactor RemoveEmptySection logic into main navtree code
2023-04-20 11:10:12 +01:00
Ashley Harrison 772ddbc3c0 Navigation: Vertically align section nav icon at the top when the text wraps (#66860)
* vertically align section nav icon at the top

* use theme for img width
2023-04-19 17:27:34 +03:00
Ashley Harrison c0799345dd Chore: fix unit tests on main (#66780)
adds help node to test data as it should always be there
2023-04-18 18:29:25 +03:00
Ashley HarrisonandTorkel Ödegaard 0741f47876 Navigation: Move SectionNav to AppChrome (#64391)
* move section nav to app chrome

* unit tests

* Move SectionNav to AppChrome folder

* fix duplicate variable rendering

---------

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2023-04-18 14:58:00 +01:00
Ashley Harrison ab08b4f7f2 Chore: Clean up NavModel interface (#66548)
* clean up navmodel interface

* remove concept of sections from NavModel interface

* clean up applinks
2023-04-17 16:01:32 +01:00
Ashley Harrison 850f2baaf3 Chore: remove localStorage mock which doesn't work in node v18.16.0 (#66671)
remove localStorage mock which doesn't work in node v18.16.0
2023-04-17 14:40:32 +01:00
Ashley Harrison 3b3bd03f8a Chore: upgrade our version of rc-cascader (#66668)
upgrade our version of rc-cascader
2023-04-17 13:45:18 +01:00
Ashley Harrison 90f0b1c6e2 Navigation: Redirect to root page when switching organization (#66655)
* just redirect to root when switching org

* remove old orgswitcher modal
2023-04-17 11:42:21 +01:00
Ashley Harrison ee166205cd Navigation: move connections in IA (#66559)
move connections in IA
2023-04-14 11:46:18 +01:00
Ashley Harrison 4abe0249ba Chore: Clean up old navigation (#66287)
* remove code outside of the topnav feature flag

* delete NavBar folder

* remove topnav toggle from backend

* restructure AppChrome folder

* fix utils mock

* fix applinks tests

* remove tests since they're covered in e2e

* fix 1 of the approotpage tests

* Fix another dashboardpage test

* remove reverse portalling + test for plugins using deprecated onNavChanged method

* kick drone

* handle correlations
2023-04-14 09:43:11 +01:00
Ashley Harrison fda38de293 Library panels: Ensure pagination controls are always correctly displayed (#65283)
correctly count library panels in the general folder
2023-04-11 14:16:20 +01:00
Ashley Harrison 0aa301e251 Navigation: Scrolled hamburger menu links now navigate correctly in Safari (#66261)
overlayProps/dialogProps need to go inside FocusScope
2023-04-11 13:05:08 +01:00
1261345b81 Chore: Upgrade to react 18 (#64428)
* update react 18 related deps

* fix some types

* make sure we're on react-router-dom >= 5.3.3

* Use new root API

* Remove StrictMode for now - react 18 double rendering causes issues

* fix + ignore some @grafana/ui types

* fix some more types

* use renderHook from @testing-library/react in almost all cases

* fix storybook types

* rewrite useDashboardSave to not use useEffect

* make props optional

* only render if props are provided

* add correct type for useCallback

* make resourcepicker tests more robust

* fix ModalManager rendering

* fix some more unit tests

* store the click coordinates in a ref as setState is NOT synchronous

* fix remaining e2e tests

* rewrite dashboardpage tests to avoid act warnings

* undo lint ignores

* fix ExpanderCell types

* set SymbolCell type correctly

* fix QueryAndExpressionsStep

* looks like the types were actually wrong instead :D

* undo this for now...

* remove spinner waits

* more robust tests

* rewrite errorboundary test to not explicitly count the number of renders

* make urlParam expect async

* increase timeout in waitFor

* revert ExplorePage test changes

* Update public/app/features/dashboard/containers/DashboardPage.test.tsx

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

* Update public/app/features/dashboard/containers/PublicDashboardPage.test.tsx

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

* Update public/app/features/dashboard/containers/PublicDashboardPage.test.tsx

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

* Update public/app/features/dashboard/containers/PublicDashboardPage.test.tsx

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

* skip fakeTimer test, ignore table types for now + other review comments

* update package peerDeps

* small tweak to resourcepicker test

* update lockfile...

* increase timeout in sharepublicdashboard tests

* ensure ExplorePaneContainer passes correct queries to initializeExplore

* fix LokiContextUI test

* fix unit tests

* make importDashboard flow more consistent

* wait for dashboard name before continuing

* more test fixes

* readd dashboard name to variable e2e tests

* wait for switches to be enabled before clicking

* fix modal rendering

* don't use @testing-library/dom directly

* quick fix for rendering of panels in firefox

* make PromQueryField test more robust

* don't wait for chartData - in react 18 this can happen before the wait code even gets executed

---------

Co-authored-by: kay delaney <kay@grafana.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2023-04-11 10:51:54 +01:00
Ashley Harrison 2e2c989530 Dashboard: rewrite useDashboardSave to not use useEffect (#65602)
rewrite useDashboardSave to not use useEffect
2023-04-11 09:10:32 +01:00
Ashley Harrison 1d0e74f998 PanelHeaderMenuTrigger: Store clickCoordinates in a ref instead of state (#65601)
rewrite panelheadermenutrigger to use ref instead of state
2023-04-11 09:08:46 +01:00
Ashley Harrison 6f7363af3a Dropdown: Stop Dropdown accepting a function as children (#65467)
remove dropdown accepting function children
2023-04-04 14:40:44 +01:00
Ashley Harrison e39c3b76dd Navigation: Rename Alerts & incidents to Alerts & IRM (#65635)
update Alerts & incidents to Alerts & IRM
2023-03-31 09:40:06 +01:00
Ashley Harrison a123e0a97c e2e tests: Add selector to close dashboard settings and use it in e2e tests (#65625)
* add selector to close dashboard settings and use it in e2e tests

* check visibility of add panel button

* check visibility of add new panel button before clicking
2023-03-31 09:32:44 +01:00
Ashley Harrison ff96cd1342 Chore: add selector for items in the megamenu (#65633)
add selector for items in the megamenu
2023-03-30 16:57:08 +01:00
Ashley Harrison 98e66654d6 Chore: Some type fixes needed for react 18 (#65600)
some type fixes needed for react 18
2023-03-30 13:40:18 +01:00
Ashley Harrison a6b2bc3997 Navigation: Enable new navigation by default (#65335)
* enable topnav by default

* rename dashboard-search to dashboard-browse

* wait for time to be set in e2e test before attempting to click button

* update toggle description
2023-03-30 10:42:43 +01:00
Ashley Harrison 9e68fc6e60 Navigation: Add Import dashboard to quick actions (#65528)
* add import dashboard to quick actions

* move logic into same if block
2023-03-30 10:34:16 +01:00
Ashley Harrison 5d60dd08d0 Chore: Ignore the angular dir from betterer (#65531)
ignore the angular dir from betterer
2023-03-29 16:02:53 +01:00
Ashley Harrison a37a80bc56 Chore: update codeowners with new team name (#65385)
update codeowners with new team name
2023-03-27 19:35:23 +03:00
Ashley Harrison f948482386 Navigation: Sanitize homeUrl (#65293)
sanitize homeUrl
2023-03-27 15:27:52 +01:00
Ashley Harrison 9ca01cc070 Notifications: Enable display of trace ID by default (#64884)
enable tracing by default
2023-03-21 09:35:21 +00:00
Ashley Harrison f4c62a5c5d Navigation: handle case when there is no alerting node at all (#64941)
* handle case when there is no alerting node at all

* update backend tests
2023-03-17 11:08:36 +00:00
Ashley Harrison 54dd8943ca Navigation: Correctly create Alerts and incidents section when using legacy alerting (#64924)
check for legacy alerting node as well
2023-03-16 17:55:23 +00:00
Ashley Harrison b19f7bb653 Chore: update more unit tests to work with react 18 (#64812)
update more unit tests to work with react 18
2023-03-16 10:00:39 +00:00
Ashley Harrison 7fd7c6ed78 Chore: Better typings in @grafana/ui needed for react 18 (#64828)
* type changes needed for react 18

* pass empty props as generic

* move eslint ignore to correct line
2023-03-16 09:42:51 +00:00
Ashley Harrison e0e6165f70 Chore: adjust more unit tests to work with react 18 (#64759)
adjust unit tests to work with react 18
2023-03-15 10:12:13 +00:00
Ashley Harrison 85e5326040 Chore: Adjust unit tests so they work with react 18 (#64698)
tweak unit tests so they work with react 18
2023-03-14 17:24:04 +00:00
Ashley Harrison 53186c14a4 Chore: Improve some types (#64675)
* some type fixes

* few more

* more type fixes

* fix the majority of (window as any) calls

* don't make new variable for event

* few more

* MOAR
2023-03-14 09:51:44 +00:00
Ashley Harrison caf98101e7 Navigation: Remove duplicate header on user invite page (#64677)
remove duplicated header in old navigation
2023-03-13 11:45:07 +00:00
Ashley Harrison 3a1862f37f TimeSeries: fix time comparer not comparing date strings properly (#64622)
* fix time comparer not comparing times properly

* move isDateTime last as it's probably the most expensive check
2023-03-13 09:31:27 +00:00
Ashley Harrison c955c20670 Chore: assign ownership of tracing feature flag to user essentials (#64598)
assign ownership of tracing feature flag to user essentials
2023-03-10 07:15:41 -05:00
Ashley Harrison 3336327306 Navigation: Fix Home logo always going to /login (#62658)
* only redirect to /login when anonymous access is disabled

* only search for dashboards when not logged in if anon access is enabled

* fix go logic

* add unit tests
2023-03-09 16:42:45 +00:00
Ashley Harrison 11bc66a0e8 Chore: use React.PropsWithChildren to explicitly define the children prop (#64433)
* use React.PropsWithChildren to explicitly define the children prop

* fix ThemeDemo as well

* provide empty generics
2023-03-08 16:12:54 +00:00
Ashley Harrison 986a1c2a1b Chore: group uLibrary updates in renovate, revert uplot update for now (#64386)
* group uLibrary updates in renovate, revert uplot update for now

* fix json
2023-03-08 11:48:51 +00:00
Ashley Harrison 0c0d63b830 Build: enable caching in eslint plugin (#64325)
enable caching in eslint plugin
2023-03-07 14:53:50 +00:00
Ashley Harrison 5b8c2f494d Chore: convert VariableOptions to use emotion instead of scss (#64135)
convert VariableOptions to use emotion instead of scss
2023-03-07 11:13:57 +00:00
Ashley Harrison d61bcdf4ca Chore: Pass signed user_hash to Intercom via Rudderstack (#63921)
* move analytics identifiers to backend

* implement hash function

* grab secret from env

* expose and retrieve intercom secret from config

* concat email with appUrl to ensure uniqueness

* revert to just using email

* Revert "revert to just using email"

This reverts commit 8f10f9b1bc.

* add docstring
2023-03-03 14:39:53 +00:00
Ashley Harrison 4f01d55a3c Profile: Fix session table overflowing page layout in mobile (#63858)
handle table overflowing in mobile layout
2023-03-01 17:08:04 +00:00
Ashley Harrison a534119c44 Command Palette: Sign out link now works correctly (#63742)
* pass target to command palette urls so sign out link works correctly

* improve types
2023-03-01 15:59:32 +00:00
Ashley Harrison 8e9ccfc66e Navigation: Fix broken layout at 544px (#63793)
* ensure media queries transition properly

* fix unit tests
2023-03-01 15:31:32 +00:00
Ashley Harrison 27635e6f7b Command Palette: Display dashboard location (#63807)
* show folder for dashboard, adjust how ancestors are displayed, clamp to single line

* fix keys

* better responsiveness

* use subtitle consistently

* use span instead of div
2023-03-01 09:46:46 +00:00
Ashley Harrison 19d1a46f30 A11y: remove onClick from collapsed text (#62495)
remove onClick from collapsedText
2023-02-24 10:36:04 +00:00
Ashley Harrison a48793b542 Accessibility: Make row actions keyboard accessible (#63367)
make row actions keyboard accessible
2023-02-23 15:20:59 +00:00
Ashley Harrison f6e92da402 Navigation: Add plugin upgrade guide to docs (#63449)
* initial attempt at plugin upgrade guide

* fix link

* small tweaks based on feedback

* add basic skeleton for tabs documentation
2023-02-23 10:12:35 +00:00
Ashley Harrison 4a2695349d Chore: more ts test fixes (#63438)
* replace anys in tests

* more test fixes

* clean up any's in tests
2023-02-23 10:07:44 +00:00
Ashley Harrison bcaf4dc0b1 TimeRangeInput: Fix positioning of dropdown menu (#63472)
fix TimeRangeInput positioning
2023-02-23 09:53:32 +00:00
Ashley Harrison f8d89eff56 Chore: fix type errors in tests (#63270)
* fix any's in tests

* fix more any's in tests

* more test type fixes

* fixing any's in tests part 3

* more test type fixes

* fixing test any's p5

* some tidy up

* fix template_srv
2023-02-14 16:46:42 +01:00
Ashley Harrison 36c090416a Command palette: Enable folder searching (#62663)
search folders as well as dashboards in the command palette
2023-02-09 16:31:05 +00:00
Ashley Harrison 2a34293689 Chore: more type fixes (#62952)
* fix some more any/type assertions

* more any/type assertion fixes

* implement review comments
2023-02-09 09:03:13 +00:00
Ashley Harrison fc2f7f90f8 Navigation: add a link to starred dashboards in the megamenu (#62685)
add a link to starred dashboards in the megamenu
2023-02-08 15:18:13 +00:00
Ashley Harrison 4181acec72 A11y: ignore rule since there's a button handling keyboard interaction (#62856)
ignore a11y rule since there's a button handling keyboard interaction
2023-02-08 14:29:30 +00:00
Ashley Harrison 6a720f96f7 A11y: ignore rule since keyboard interaction is already handled (#62850)
* Revert "Accessibility: Remove unnecessary onClick from title element (#59696)"

This reverts commit f19b07c0bc.

* ignore eslint rule
2023-02-08 14:17:15 +00:00
Ashley Harrison 3a8f2bb726 Chore: ignore a11y rule since there's a button handling keyboard interaction (#62853)
ignore a11y rules since there's a button handling keyboard interaction anyway
2023-02-07 09:25:25 +00:00
Ashley Harrison c819e95687 Navigation: move Connections plugin to be just after apps (#62801)
move connections plugin to be just after apps
2023-02-03 13:48:06 +00:00
Ashley Harrison 5795553353 Navigation: Fix command palette toggle removal (#62809)
command palette is always here
2023-02-02 16:32:34 +00:00
Ashley Harrison 5e7e026c0c Navigation: Remove commandPalette feature toggle (#62698)
* remove command palette feature toggle

* undo irrelevant AppChrome changes

* update toggle description
2023-02-02 14:44:21 +00:00
Ashley Harrison 0a780d978e Navigation: wrap dashboard settings actions in ToolbarButtonRow for responsiveness (#62475)
wrap dashboard actions in toolbarbuttonrow for responsiveness
2023-02-01 15:08:09 +00:00
Ashley Harrison 8d7e7693f2 Command palette: section styling tweaks (#62671)
section styling tweaks
2023-02-01 13:04:38 +00:00
Ashley Harrison b6aedaa57d Chore: improve some types (#62363)
* improve some types

* more tidy up

* better error message handling + update tests

* undo store changes
2023-02-01 10:50:34 +00:00
Ashley Harrison 029253d5f6 Navigation: add event tracking for dashboard save as events (#62568)
* add event tracking for dashboard save as events

* emit a grafana_dashboard_copied event instead
2023-01-31 13:54:24 +00:00
Ashley Harrison 77a186879d Navigation: add event tracking for navigation elements (#62563)
add user tracking for navigation elements
2023-01-31 13:03:31 +00:00
Ashley Harrison fd2641a542 Navigation: Sign in button now works correctly when served under a sub path (#62504)
make sure getUrlForPartial always includes the basePath + unit tests
2023-01-31 09:27:40 +00:00
Ashley Harrison 14dd1be244 Chore: update copy-webpack-plugin and remove from renovate ignore list (#62459)
update copy-webpack-plugin and remove from renovate ignore list
2023-01-30 16:01:44 +00:00
Ashley Harrison f19b07c0bc Accessibility: Remove unnecessary onClick from title element (#59696)
* remove unnecessary onClick from title element

* associate icon label with title + fix unit tests

* remove cursor: pointer;

* remove link color from title as it's no longer clickable

* remove useless aria-label

* stop incorrectly marking title as a ReactNode - it's just a string
2023-01-30 13:32:16 +00:00
Ashley Harrison d9d103a2bf Chore: remove node-fetch from dep + ignore list (#62455)
remove node-fetch from dep + ignore list
2023-01-30 11:47:32 +00:00
Ashley Harrison 1ef7cfda3f Navigation: more command palette tweaks (#62286)
* update placeholder text, only create search keybindings if topNavCommandPalette is disabled

* make search input wider
2023-01-27 16:21:48 +00:00
Ashley Harrison a344c88a01 Chore: don't create the npm-artifacts dir since yarn packages:pack does this… (#62246)
* don't create the npm-artifacts dir since yarn packages:pack does this already

* fix an any to trigger a canary build
2023-01-26 16:41:08 +00:00
Ashley Harrison f7d92ab841 Navigation: only show the img for a section root if both img and icon are present (#62127)
only show an img for a section root if both img and icon are present
2023-01-26 12:07:43 +00:00
Ashley Harrisonandjoshhunt a77c342764 Navigation: Add keyboard shortcut to search input (#62116)
* Show shortcut

* add icon to search bar, make same changes in search modal

* rename to modKey

Co-authored-by: joshhunt <josh@trtr.co>
2023-01-26 12:07:32 +00:00
Ashley Harrison 64352e8d08 Chore: Move to node 18 again (#62079)
move to node 18 again
2023-01-26 10:19:39 +00:00
Ashley Harrison a3b396854a Navigation: Command palette topnav tweaks (#61991)
stylings tweaks to command palette
2023-01-26 10:03:16 +00:00
Ashley Harrison e6e560e3ed Dropdown: Make escape close a dropdown (#62098)
* make escape close a dropdown

* make tab close the dropdown
2023-01-26 09:23:53 +00:00
Ashley Harrison 92a750a732 Chore: convert last test to RTL and remove Enzyme references (#61918)
convert last test to RTL and remove enzyme references
2023-01-24 09:20:47 +00:00
Ashley Harrison 6b53f927b2 Navigation: truncate landing page descriptions to 3 lines (#61925)
* truncate landing page descriptions to 3 lines

* use correct css prop names
2023-01-23 17:07:36 +00:00
Ashley Harrison 253f9657cb Navigation: Change collapse icon + behaviour (#61496)
* adjust positioning and switch icon

* hide collapse button unless collapsed/focused

* use Button instead of IconButton
2023-01-23 09:30:28 +00:00
Ashley Harrison a26bae45e1 Navigation: clean up colors in section nav (#61240)
* clean up colors in section nav

* just underline on hover/focus
2023-01-23 09:26:26 +00:00
Ashley Harrison da969e7d48 Command Palette: don't register dashboards as actions in the command palette (#61271)
* don't register dashboards as actions in the command palette

* create ActionImpls in RenderResults, memoize some array creation

* extract dashboard results out into separate hook

* remove unnecessary memoization from useActions

* move useDashboardResults into dashboardActions
2023-01-13 11:41:23 +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
Ashley HarrisonandMichael Mandrus 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
Ashley Harrison ebb34560a4 Navigation: use "Home" instead of "Grafana" as the default Breadcrumb text (#60973)
* use Home instead of Grafana as the default Breadcrumb text

* use translated text
2023-01-04 15:02:30 +00:00
Ashley Harrison 7005b7bf8a Navigation: Update e2e tests to work with topnav (#60910)
* turn on topnav toggle in e2e tests

* fix variable e2e tests

* fix remaining tests + remove some hardcoded waits

* speculative fixes

* wait for error to disappear

* use new selector, turn toggle back off
2023-01-04 14:59:53 +00:00
Ashley Harrison 8149efc729 Chore: group visx updates together (#60895)
group visx updates together
2023-01-04 14:32:57 +00: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
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
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
Ashley Harrison 793a3f8d32 Accessibility: clean up VisualizationSuggestions (#60557)
clean up VisualizationSuggestions
2022-12-21 10:40:25 +00:00
Ashley HarrisonandZoltán Bedi 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