* remove Plugins and CloudIntegrations tab and add ConnectData tab
* ConnectData: add Search component and use it
* ConnectData: add DataSourcePluginList component
* add CardGrid component
* add CategoryHeader component
* ConnectData: restructure content
DataSourcePluginList is removed, because its responsibilities are
actually the same as ConnectData's responsibilities.
NoResults was added as a reusable component, and was moved out of
CardGrid, since there could be more CardGrid on one page, but only one
NoResults.
* fix spacer
* use LoadingPlaceholder
* CardGrid: add margin
* generalize CardGridProps
* move isLoading and error into CardGrid
We'd like CardGrid to be reusable, even multiple times within a page.
In this case, it's better UX if we show the loading or error states per
card grid, not for the whole page.
* ConnectData: fix NoResults condition
* fix and add meaningful tests
* fix indentation
* move isLoading and error back to ConnectData
* make `url` required for CardGrid items
* Flamegraph dash scrolling
* Separate scroll for top table and for flame graph
* Custom scroll behavior for explore vs vs dash etc and sticky flame graph header
* Final UI tweaks
* Update tests
* Dashboard: Alerts user to incorrect tag format for JSON import
Fixes#54285: Malformed tags cause hidden title and settings page crash
* Update public/app/features/manage-dashboards/utils/validation.ts
Co-authored-by: Polina Boneva <13227501+polibb@users.noreply.github.com>
* Included Suggestions
- Removed Comments
- Updated Code Block accordingly
- Updated Tests to camelCase over snake_case
* Updates per comments
- Re-wrapped function in try{}, catch{} as I appear to have overlooked including it in the initial refactor
- Re-worded errors to align with initial error
- Added a test case for invalid json
* Update validation.ts
Updated errors to read correctly to the root cause.
Updated dashboard variable as const.
* Update actions.test.ts
Fix tests according to error output rewording
* Update validation.ts
- Included test for an empty string of non-array
* Update actions.test.ts
-- Commented incorrect commit for validation.ts, update:
- Refactored code to better align and separate from generic JSON package tests followed by our manual checks of (1) Is array, and (2) if array, is of strings
- Test cases now include a check for non-array empty string in the tag property
Co-authored-by: Polina Boneva <13227501+polibb@users.noreply.github.com>
* report interaction on context open
* report interaction on context close_esc
* replace deprecated feature (KeyboardEvent.keyCode)
* update to report interaction on toggle context
* remove redundant if statement
* Fix: Add relativeTimeRange from dataSource when using Resample expression
* Add test for relativeTimeRange when updating resample expression
* update time range for expressions when data sources are updated
* Get data source recursively from expression up to the last query that this tree is referencing to
* Remove unnecessary produce from immer, and check if there is a cycle in the queries structure
* add api route for validating a dashboard json
* add feature flag for showDashboardValidationWarnings
* tidy up
* comments and messages
* swagger specs
* fix typo
* more swagger
* tests!
* tidy test a little bit
* no more ioutil
* api will return different status code depending on validation error
* clean up
* handle 4xx errors
* remove console.log
* fix backend tests
* tidy up
* Swagger: Exclude alpha endpoints
Co-authored-by: Sofia Papagiannaki <1632407+papagian@users.noreply.github.com>
* Refactor fetch for reveivers for using RTKQuery
* Simplify receiversApi contactPointsState endpoint
* Fix tests and create useGetContactPointsState hook for using receiversApi.useContactPointsStateQuery
This PR adds an audit table for public dashboards allowing a user to view all public dashboards on an instance of grafana. The public dashboards team is working on a proposal for adding RBAC support to the audit table for 9.3
Co-authored-by: juanicabanas <juan.cabanas@grafana.com>
* Add feature tracking for ad-hoc statistics in log rows
* Make row prop mandatory in LogDetailsRow.tsx
* Remove optional chaining
* fix: failing test by mocking reportInteraction