Commit Graph

1565 Commits

Author SHA1 Message Date
Matias Chomicki
1cfb21a74c
Logs: improve deduplication supporting code and fix duplicated frames (#88716)
* Logs: change refId approach to deduplicate infinite scrolling rows

* Chore: update tests

* chore: add comment

* Prettier
2024-06-04 19:09:33 +03:00
Piotr Jamróz
ce23a455c3
Explore: Show a modal to edit query template before saving it (#88211)
* Create a mock modal

* Add basic form handling

* Update tests

* Extract translations

* Disable auto-star switch

* Keep disabled input uncontrolled
2024-05-31 11:55:01 +02:00
Sven Grossmann
f81e8e04aa
LogsTable: Fix default sort by time (#88398) 2024-05-29 16:46:26 +02:00
Ashley Harrison
b4e49e3114
Select: Ensure screenreader correctly narrates options (#88118)
* replace select aria-label with data-testid

* update in copy pasted places as well

* update plugin-e2e to 1.2.2
2024-05-28 14:51:47 +01:00
Ashley Harrison
f1dbe39533
Chore: Improve typings (#88282)
* remove some type assertions

* some more type assertion fixes

* nicer

* shortcircuit while loop when hitting something that isn't an HTMLElement
2024-05-28 13:20:57 +01:00
Fabrizio
e7f05f4ff2
Tempo: Support standard span convention (#88268) 2024-05-27 10:10:04 +02:00
Piotr Jamróz
84ef99c1dc
Explore: Add a query template to query library from query history (#88047)
* Add basic button for adding a query template

* Add hook to create a template

* Handle notifications

* Add tags to invalidate cache

* Generate translations

* Updates types

* Add tests

* Simplify code

* Add a better default title
2024-05-23 11:38:17 +03:00
Piotr Jamróz
03650f76f1
Explore: Convert kebab-case styles to camel-case (#88048) 2024-05-21 09:38:05 +00:00
Kristina
c8d237dd56
Explore / Query Library: Enable run button (#87882)
* Enable run button

* First pass of shared component, tests half-implemented

* cleanup
2024-05-20 08:05:59 -05:00
Piotr Jamróz
fd218edca4
Explore: List query templates (#86897)
* Create basic feature toggle

* Rename context to reflect it contains query history and query library

* Update icons and variants

* Rename hooks

* Update tests

* Fix mock

* Add tracking

* Turn button into a toggle

* Make dropdown active as well

This is required to have better UI and an indication of selected state in split view

* Update Query Library icon

This is to make it consistent with the toolbar button

* Hide query history button when query library is available

This is to avoid confusing UX with 2 button triggering the drawer but with slightly different behavior

* Make the drawer bigger for query library

To avoid confusion for current users and test it internally a bit more it's behind a feature toggle. Bigger drawer may obstruct the view and add more friction in the UX.

* Fix tests

The test was failing because queryLibraryAvailable was set to true for tests. This change makes it more explicit what use case is being tested

* Remove active state underline from the dropdown

* Add basic types and api methods

This is just moved from the app. To be cleaned up and refactored later.

* Move API utils from Query Library app to Grafana packages

* Move API utils from Query Library app to Grafana packages

* Move API utils from Query Library app to Grafana packages

* Add basic table for query templates

* Add sorting

* Style cells

* Style table cells

* Allow closing Query Library drawer from the toolbar

* Remove Private Query toggle

It will be moved to the kebab

* Add empty state

* Remove variables detection for now

Just to simplify the PR, it's not needed for Explore yet.

* Simplify getting useDatasource.tsx

* Rename cell

* Move QueryTemplatesTable to a separate folder

* Use RTK Query to get list of query templates

* Clean up query templates table

* Simplify useDatasource hook

* Add a test

* Retrigger the build

* Remove unused code

* Small clean up

* Update import

* Add reduxjs/toolkit as a peer dependecy

* Revert "Add reduxjs/toolkit as a peer dependecy"

This reverts commit aa9da6e442.

* Update import

* Add reduxjs/toolkit as a peer dependecy

* Revert "Add reduxjs/toolkit as a peer dependecy"

This reverts commit 2e68a62ab6.

* Add @reduxjs/toolkit as peer dependency

* Add @reduxjs/toolkit as peer dependecy

* Move reactjs/toolkit to dev dependecies

* Minor clean up and use react-redux as a peer dependency

* Move query library code to core features

* Update code owners

* Update export

* Update exports

* Use Redux store instead of APIProvider

* Await for query templates to show during the test

* Add more explicit docs that the feature is experimental

---------

Co-authored-by: Kristina Durivage <kristina.durivage@grafana.com>
2024-05-14 10:05:39 +02:00
Christian Briones
867d36fe59
Explore: lookup datasource by name when present in legacy URLs (#85222)
* [explore] lookup datasource by name when present in legacy compact URLs

* update unit test

* prettier fix

---------

Co-authored-by: Kristina Durivage <kristina.durivage@grafana.com>
2024-05-10 06:48:42 -05:00
kay delaney
cbe868b118
Chore: Use getNextRefId instead of deprecated getNextRefIdChar (#87460) 2024-05-10 12:00:17 +01:00
Haris Rozajac
b383cafd35
Explore: Logs in content outline (#86431)
* wip filtering

* Remove corresponding children from parentlessItem ref on register

* wip filtering

* Remove corresponding children from parentlessItem ref on register

* Highlighting filters

* OMG

* Handle updating highlight field inside context

* Toggling legend from the content outline

* Support multiple selects for log filters in content outline

* Remove commented out code

* Fix an issue with loki datasource; use same datastructure for logsVolume in Logs and LogVolume panel

* Fix registering logic

* cleanup

* Don't register outline items when having multiple log volume levels

* Remove checking mergeSingleChild logic because in context because ContentOutline does it

* Fix logic so it works for elasticsearch

* Better logic

* Add log color and sort

* Show items at full opacity

* Remove commented sort

* Do not highlight if all are selected, and highlight = 100% opacity, active = 30%

* dont auto collapse after filter unselect

* Remove console logs

* No partial opacity, add height for consistent display

---------

Co-authored-by: Piotr Jamroz <pm.jamroz@gmail.com>
Co-authored-by: Kristina Durivage <kristina.durivage@grafana.com>
2024-05-08 07:58:37 -05:00
Ashley Harrison
37ef6df3b2
Chore: replace calls to defaultProps (#87310)
* replace calls to defaultProps

* make linksGetter optional
2024-05-07 10:07:16 +01:00
Kristina
8173bd89bf
Explore: Only let nodeGraph frames process through nodeGraph visualization (#87198)
* Only let nodeGraph frames process through nodeGraph

* add metadata to test frames to be processed

* Revert "add metadata to test frames to be processed"

This reverts commit fc366a0ab4.

* Revert "Only let nodeGraph frames process through nodeGraph"

This reverts commit b8be50e219.

* Only send node graph frames to node graph logic

* remove unnecessary logic
2024-05-06 07:13:09 -05:00
Galen Kistler
840aeddbd1
Logs: Explore panel default visualization feature flag (#87189)
* add logsExploreTableDefaultVisualization feature flag

* use feature flag in calculating initial visualization type

* add feature flag to tracking
2024-05-02 10:28:15 -05:00
Krishna Dhakal
deb6d27406
Core: Replace deprecated jest matcher toBeCalledWith (#86635)
* Replace depredated matcher from jest

* perform rechecks

---------

Co-authored-by: joshhunt <josh@trtr.co>
2024-05-01 15:33:26 +01:00
Joey
5cee521dc9
Tempo: Use ellipsis when trace view header url is too long (#86417)
* Limit url length

* Update styles to use objects

* Update width

* Add url to tooltip
2024-05-01 09:20:37 +01:00
Haris Rozajac
b52e349639
Explore and Correlations: Replace deprecated layout components (#86967)
Replace deprecated layout components
2024-04-29 13:50:03 +01:00
Piotr Jamróz
5830d6761d
ifrost/fix-link (#86965)
* Fix link label

* Switch to lowercase
2024-04-29 14:33:00 +02:00
Ashley Harrison
c151a97110
Chore: Enable no-unreduced-motion and fix errors (#86572)
* enable `no-unreduced-motion` in betterer

* move all animation calls inside handleReducedMotion

* fix violations + enable rule

* update rule README

* remove unnecessary transition from <Collapse>

* remove handleReducedMotion utility and add handleMotion to theme

* update to use new theme value

* handle Dropdown and IconButton

* handle AppChromeMenu and update lint message

* keep rotation at a reduced speed

* handle DashboardLoading
2024-04-29 13:12:36 +01:00
Kristina
e6f51536bf
Explore: Add tests around query history errors (#86810)
* WIP build tests

* Fix one test :D

* Unskip, remove console logging, fix limit test

* Add back whitespace
2024-04-26 08:09:31 -05:00
Piotr Jamróz
f6e472f879
Explore: Show a drawer with tabs for the library and query history (#86279)
* Create basic feature toggle

* Rename context to reflect it contains query history and query library

* Update icons and variants

* Rename hooks

* Update tests

* Fix mock

* Add tracking

* Turn button into a toggle

* Make dropdown active as well

This is required to have better UI and an indication of selected state in split view

* Update Query Library icon

This is to make it consistent with the toolbar button

* Hide query history button when query library is available

This is to avoid confusing UX with 2 button triggering the drawer but with slightly different behavior

* Make the drawer bigger for query library

To avoid confusion for current users and test it internally a bit more it's behind a feature toggle. Bigger drawer may obstruct the view and add more friction in the UX.

* Fix tests

The test was failing because queryLibraryAvailable was set to true for tests. This change makes it more explicit what use case is being tested

* Remove active state underline from the dropdown

* Allow closing Query Library drawer from the toolbar

* Simplify dropdown design
2024-04-24 10:32:11 +02:00
Marcus Andersson
804c726413
PluginExtensions: Make the extensions registry reactive (#83085)
* feat: add a reactive extension registry

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>

* feat: add hooks to work with the reactive registry

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>

* feat: start using the reactive registry

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>

* feat: update the "command palette" extension point to use the hook

* feat: update the "alerting" extension point to use the hooks

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>

* feat: update the "explore" extension point to use the hooks

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>

* feat: update the "datasources config" extension point to use the hooks

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>

* feat: update the "panel menu" extension point to use the hooks

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>

* feat: update the "pyroscope datasource" extension point to use the hooks

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>

* feat: update the "user profile page" extension point to use the hooks

* chore: update betterer

* fix: update the hooks to not re-render unnecessarily

* chore: remove the old `createPluginExtensionRegistry` impementation

* chore: add "TODO" for `PanelMenuBehaviour` extension point

* feat: update the return value of the hooks to contain a `{ isLoading }` param

* tests: add more tests for the usePluginExtensions() hook

* fix: exclude the cloud-home-app from being non-awaited

* refactor: use uuidv4() for random ID generation (for the registry object)

* fix: linting issue

* feat: use the hooks for the new alerting extension point

* feat: use `useMemo()` for `AlertInstanceAction` extension point context

---------

Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
2024-04-24 09:33:16 +02:00
Haris Rozajac
a10dcf9661
Explore (bugfix): Expanded section state (#86594)
Fix
2024-04-22 12:47:05 +02:00
Matias Chomicki
99f34cb1ed
Common labels/displayed fields: Show label names with values (#86345)
* LogLabels: create specialized component for arrays of labels

* Logs: sort displayed fields when assigning to state

* LogsMetaRow: fix types and use specialized components

* LogLabels: show label and value

* LogsPanel: update common labels

* LogsMetaRow: use LogsLabelsList

* Update unit tests

* Formatting

* Update betterer

* Prettier

* Logs panel: update test

* LogLabels: add actual tooltip

* Logs: remove sorting of displayed fields
2024-04-18 16:25:58 +02:00
Tom Ratcliffe
a5c75c5ffb Remove explicit imports of whatwg-fetch from individual test files 2024-04-18 12:23:38 +01:00
Kristina Durivage
4e0e12bb07 add cleanup 2024-04-18 09:04:53 +01:00
Kristina Durivage
bf897c1255 Add clarifying comments/docs 2024-04-18 09:04:53 +01:00
Tom Ratcliffe
2ab13071fb Add whatwg-fetch and fixes to dashboard tests that break when polyfill is added 2024-04-18 09:04:53 +01:00
Kristina
15ff166fb6
Explore: Mock useExplorePageTitle in every integration test (#86462)
Mock useExplorePageTitle in every integration test
2024-04-17 14:01:09 -05:00
Kristina
2338cad563
Explore: Work on unskipping test (#86370)
* test unskip

* Mock getDataSourceSrv seperately

* mock the hook instead

* Remove TODO
2024-04-17 08:17:51 -05:00
TechVest
1ffe858e06
chore: remove repetitive words (#86412)
Signed-off-by: TechVest <techdashen@qq.com>
2024-04-17 13:08:00 +01:00
Piotr Jamróz
ccd660d559
Explore: Skip flaky test (#86289)
Skip flakey test
2024-04-16 12:42:22 +00:00
Brendan O'Handley
f85470d652
Prometheus: Use the frontend package in Prometheus and remove feature toggle (#86080)
* add history links for monaco completion provider folder

* add history links for monaco query field folder

* add history links for components folder

* add history links for configuration folder

* add history links for dashboard json folder

* add history links for gcopypaste folder

* add history link for variableMigration

* add history link for querybuilder/components/metrics-modal folder

* add history link for querybuilder/components/promqail folder

* add history links for querybuilder/components folder

* add history links for querybuilder/hooks folder

* add history links for querybuilder/shared folder

* add history links for querybuilder folder

* add history links for querycache folder

* add history links for src folder

* use frontend package and custom auth in module.ts

* remove files and fix import issues

* remove usePrometheusFrontendPackage

* remove extra files

* update betterer

* remove extra files after rebase

* fix betterer for rebase

* fix e2e flakiness
2024-04-15 16:45:23 -05:00
Kristina
0034e9f044
Explore: Change service in hook, un-skip test (#85894)
Use different service, un-skip test
2024-04-15 08:11:21 -05:00
Kristina
ad3abfc695
Explore: Query history does not save filtered queries (#85825)
* Bring in datasource filterQuery in, to not save filtered queries to history

* Add test
2024-04-15 08:07:02 -05:00
Kristina
60edd988ac
Explore: Skip flaky test (#85878)
Skip flaky test
2024-04-10 16:05:07 +02:00
Ashley Harrison
3c69de6be5
Chore: removing some type assertions (#85839)
* fix some type assertions in loops

* some more cleanup

* some alerting fixes

* put comments in correct place to ignore rule

* couple more

* undo SilencesFilter changes
2024-04-10 14:54:31 +01:00
Kristina
98c575d28f
Explore: Query history should gracefully handle undefined exploreId on run button (#85821)
* Gracefully handle undefined exploreId on run button

* Add test
2024-04-10 07:21:29 -06:00
Tobias Skarhed
c7e4baff75
Explore: Add h1 for screen readers (#85794)
* Add h1 in Explore for screen readers

* Add i18n

* Move to ExplorePage
2024-04-09 18:15:44 +02:00
Kristina
5305316f5a
Explore: Move Query History to be screen wide (#84321)
* WIP

* Use splitpanewrapper for drawer

* Get rich history pulling from multiple datasources

* highlight pane

* Fix datasource data handling

* create ds/explore map, move around ds lookup

* Handle no filters

* Fix tests and some errors

* Fix context menu issue

* (Poorly) enable scrolling, fix onClose to function

* Remove highlighting, use legacy key, fix casing

* fix filtering to handle non-simple data

* Fix linter, add translations

* Fixing tests~~

* Move to explore drawer and fix some more tests

* Kinda fix drawer stuff?

* Fix remaining card tests

* Fix test

* Fix tests

* Partially fix starred tab tests

* Fix integration tests

* Fix remaining tests 🤞

* Add a test and a clarifying comment behind a couple hooks

* Remove unused code

* Fix button styling and fix animation (but break width)

* Make Drawer using parent width (100%)

* Fix tests and some small catches

* Add tests for selectExploreDSMaps selector

---------

Co-authored-by: Piotr Jamroz <pm.jamroz@gmail.com>
2024-04-09 07:36:46 -05:00
Dominik Prokop
32b6ef9d15
Feature toggle to add filter and group by variables to all new dashboards by default (#85531)
* Add feature toggle

* Add filters and group by variables by default to all new dashboards

* Nits

* Tests

* Rename feature toggle to newDashboardWithFiltersAndGroupBy
2024-04-04 13:25:21 +02:00
Giordano Ricci
ff39067605
Explore: Make Explore breadcrumb clickable (#85437)
* Explore: make Explore breadcrumb a link to an empty Explore page

* update tests
2024-04-03 09:24:04 +01:00
Haris Rozajac
f8275b52aa
Explore: Add padding to query content in query inspector (#85309)
Add padding
2024-03-31 17:41:44 -06:00
Haris Rozajac
649c456eab
Explore: Nested Content Outline (#80688)
* indentation levels

* Highlight parent section when child is selected

* Fix context, add rotation to toggle button

* Merge single child logic; fix styling

* Fix collapsed logic, make elipsis work, reorganize for better readability;

* Add connector

* Tooltip placement

* Update tests so they test components the same way users would interact with them

* Clean up indendation levels

* Support collapsing logic for multiple section; highlight all items in a section of an active child - parent is active only when section is collapsed and child inside of it is active

* Simplify making ellipsis work

* Show tooltip if the text overflows in expanded mode

* The whole button container should have same background when section is expanded in mini view

* Fix a bug where root items were not being sorted by document position

* Update query order when query rows are changed through dragging and dropping

* Fix the issue where chaning the title of a query row would remove the query
2024-03-28 09:06:52 -06:00
Piotr Jamróz
0c4e0d0f70
Explore: Reorganize useStateSync code (#84281)
* Reorganize the code

* Simplify syncToURL

* Introduce InitState type
2024-03-14 13:27:18 +02:00
Matias Chomicki
a89f1c2200
Popover Menu: fix issue hiding menu behind scrollable container (#84311)
* PopoverMenu: change position to fixed

* PopoverMenu: close on empty selectionchange

* Popover Menu: do not let menu overflow the window dimensions

* Prettier
2024-03-13 13:41:18 +02:00
Domas
9b2058f814
TracesPanel: Expose focusedSpanLink and createFocusSpanLink as options (#84060)
expose focus span link via traces panel options
2024-03-13 09:23:51 +02:00
Matias Chomicki
fb172b1b33
Explore logs: remove exploreScrollableLogsContainer and track scroll to top (#84291)
* exploreScrollableLogsContainer: remove

* LogsNavigation: track scroll to top clicks

* Add missing dependency to the effect
2024-03-12 15:53:13 +01:00