* Use suggested value for uid
* update the snapshot
* use __expr__
* replace all -100 with __expr__
* update snapshot
* more changes
* revert redundant change
* Use expr.DatasourceUID where it's possible
* generate files
* SQL: toRawSQL required and escape table
* Fix autocomplete for MySQL
* Change the way we escape for builder
* Rework escape ident to be smart instead
* Fix A11y for alias
* Add first e2e test
* Add test for code editor
* Add doc
* Review comments
* Move functions to sqlUtil
* Use dbName in jsonData instead of database
* Use dbName in instead of database
* Remove database fields and define dbName instead
* Fix tests
* set database field as empty string
* Tempo data query wip
* Replace TempoQuery with new type from schema
* Added some documentation for each DataQuery field
* Change limit type from number to int64
* Use TempoDataQuery instead of local model in the backend
* Update report.json
* all panel icons are 16x16 in size; allow ToolbarButton to have its icon size set from outside;
* use TitleItem for streaming too, so that the style of focus-visible is the same
* allow menu icon to be visible when panel is focused
* remove some styling of title icons in panel header
* panel alert notices are too big
* PanelHeaderNotice: Fix styling issue with background and hover when
feature toggle is not enable
---------
Co-authored-by: Alexandra Vargas <alexa1866@gmail.com>
* feat: add condition
* refactor: clea up
* refactor: remove changes and add my solution as comment
* feat: add test
* refactor: test preparation
* refactor: finish test prep and remove planned changed from addQueryRow()
* refactor: finish first test
* refactor: add required props after removing any (not complete)
* refactor: replace props and clean up
* refactor: add another test
* refactor: extend tests with datasourceInstance
* refactor: add test for mixed ds enabled
* refactor: remove typescript errors
* feat: add first attempt of a test for generateEmptyQuery()
* feat: setup first test for generateEmptyQuery()
* refactor: remove typescript errors
* feat: add another test for generateEmptyQuery()
* refactor: add some assertions
* refactor: restructure tests
* refactor: remove doubled code
* refactor: remove typescript errors
* refactor: remove mocking mistake and add test
* refactor: remove mocking mistakes
* refactor: repair mock for feature toggle
* refactor: clean up
* refactor: changes from code review
* add .TemplateData property to data in order to populate template <title> tags with the compiled subject value
* update all templates
* re-enable integration test and update implementation to check changes
* chore: fmt
* add HiddenSubject template func and update text templates
* slight performance improvement, only execute subject template once
* update template I missed
---------
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
* Allow pausing alerts from provisioning
* Update swagger
* Add IsPaused to provision export endpoints
* Add pause field in sample.yml
* Add exception for reset state in first loop iteration of scheduler if rule is paused
* Update provision definition and swagger docs
* Fix provisioning export tests
* Suggestion: Simplify if condition
* Add more context to a comment
* 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
* add feature tracking to LokiContextUi
* only depend on `row.uid`
Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
---------
Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
* Add export button for exporting all alert rules in alert list view
* Add RBAC for export button
* Use provisioningPermissions.read in getRulesAccess method instead of directly using AccessControlAction.AlertingProvisioningRead
* feat: make api request to /loki/api/v1/index/stats
* fix: add /index/stats to callResource valid urls
* feat: make call to getQueryStats when the query changes
* feat: render user tooltip displaying the estimated value for processed data
* fix: add new props to component tests
* test: add tests for query size estimation
* fix: disable error message on request failure
* refactor: add suggestions from code review
* refactor: only pass required query string
This adds provisioning endpoints for downloading alert rules and alert rule groups in a
format that is compatible with file provisioning. Each endpoint supports both json and
yaml response types via Accept header as well as a query parameter
download=true/false that will set Content-Disposition to recommend initiating a download
or inline display.
This also makes some package changes to keep structs with potential to drift closer
together. Eventually, other alerting file structs should also move into this new file
package, but the rest require some refactoring that is out of scope for this PR.