* 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
* Move useUniqueId to a general place
* Use new built-in useId hook
* Rename query builder and metadata query
* Move and rename the query builder tests
* Refactor query_builder and metadata_query
* Fix test
* Fix test
* Restructure folders
* update texts
* Update the mock
* Fix test
* update imports
* update imports again
Remove unused properties:
* `FieldColorModeId.PaletteSaturated`: It doesn't exist and it is not a valid palette.
* `VariableModel.rootStateKey`: It is not persisted in the DB, so it shouldn't be in the schema. It is a property only used in the frontend to store the Redux store key.
* `VariableModel.error`: It is not persisted in the DB, so it shouldn't be in the schema. It is a property only used in the frontend to store fetching errors.
* `Panel.thresholds`: old property only existing in previous versions of the dashboard schema.
* `Panel.timeRegions`: old property only existing in previous versions of the dashboard schema.
* Move useUniqueId to a general place
* Use new built-in useId hook
* Rename query builder and metadata query
* Move and rename the query builder tests
* Refactor query_builder and metadata_query
* Fix test
* Fix test
* 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
* Add i18n verification step
* Add check for extracted translations
* Run extract
* Add newline for pseudo
* Format JSON output with prettier
* Print file diff
* Actually run make drone
* Only deo git diff on locales
* Update error message
* Verify that step fails on dynamic phrases
* Verify that it passes when fixed
* Verify that dynamic phrase fails, for real this time
* Extract error messages
* Change echo
* Fix string format
* Try double escaping
* Escape for Drone substitution
* Update character escape
* Remove dynamic phrase
* Verify multiple keys
* Remove double keys
* Readd en locale because of reasons
* Undo changes
* Format lint_frontend.star
* Update error message
* Update .drone.yml
* Add quotes for echo
* Verify fail to extract
* Fix diff stat command
* Reset footer changes
* Move useUniqueId to a general place
* Use new built-in useId hook
* Rename query builder and metadata query
* Move and rename the query builder tests
* Pull out datasource specific implementation into calling context to make query cache generic
---------
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
* wip for pagination
* kind of doing pagination, but only for the root folder
* wip
* wip
* refactor paginated fetchChildren
* make sure dashboards are loaded if a folder contains only dashboards
* rename lastKindHasMoreItems
* load additional root pages
* undo accidental commit
* return promise from loadMoreChildren, and prevent loading additional page while a request is already in flight
* rename browseDashboards/fetchChildren action so it's more clear
* starting to revalidate children after an action
* unset general uid
* comment
* clean up
* fix tests omg
* cleanup
* fix items not loading after invalidating loaded cache
* comment
* fix lints
* Let alert rule service implement registry service
* Add count method to RuleStore interface
* Add implementation for deletion of alert rules
* Rename uid to folderUID in registry methods
* Check forceDeleteRule value for registry deletion
* Register alerting store with folder service
* Move folder test functions to separate package
* Add testing for alert rule counting, deletion
* Remove redundant count method
* Fix deleteChildrenInFolder signature
* Update pkg/services/ngalert/store/alert_rule.go
Co-authored-by: Sofia Papagiannaki <1632407+papagian@users.noreply.github.com>
* Add tests for nested folder deletion
* Refactor TestIntegrationNestedFolderService
* Add rules store as parameter for alertng provider
---------
Co-authored-by: Sofia Papagiannaki <1632407+papagian@users.noreply.github.com>
* Query utils: add function to identify distinct queries
* Chore: return false when the expected node is found
* Query splitting: exclude distinct queries from splitting
* Group queries excluded from splitting
* feat(plugins): remove global limit on extensions per placement
* feat: add a way to limit extension per plugin at the getter
* test(plugins): fix failing getPluginExtensions test
* refactor(panelmenu): put back limit of 2 extensions per plugin
* tests: add a test for checking all extensions are returned by default
---------
Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
* feat: add a new UI extension type: component
* fix: remove reference to not existing type
* chore: update betterer results
* review: use a single type notation in import
* review: stop exporting `PluginExtensionBase`
* refactor: make extension config types more explicit
By using some repetition now these types are much easier to oversee.
* feat: add a new extension point to the datasources config
* fix: export tcontext type from grafana-data
* chore: update betterer results
* chore: fix tests
* feat: extend the context shared with extensions
* feat: stop omitting jsonData props & update context type
* tests: update tests
* 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.