grafana/pkg/api/dtos
Alexander Zobnin 959ebf82da
Folders: Show dashboards and folders with directly assigned permissions in "Shared" folder (#78465)
* Folders: Show folders user has access to at the root level

* Refactor

* Refactor

* Hide parent folders user has no access to

* Skip expensive computation if possible

* Fix tests

* Fix potential nil access

* Fix duplicated folders

* Fix linter error

* Fix querying folders if no managed permissions set

* Update benchmark

* Add special shared with me folder and fetch available non-root folders on demand

* Fix parents query

* Improve db query for folders

* Reset benchmark changes

* Fix permissions for shared with me folder

* Simplify dedup

* Add option to include shared folder permission to user's permissions

* Fix nil UID

* Remove duplicated folders from shared list

* Folders: Fix fetching empty folder

* Nested folders: Show dashboards with directly assigned permissions

* Fix slow dashboards fetch

* Refactor

* Fix cycle dependencies

* Move shared folder to models

* Fix shared folder links

* Refactor

* Use feature flag for permissions

* Use feature flag

* Review comments

* Expose shared folder UID through frontend settings

* Add frontend type for sharedWithMeFolderUID option

* Refactor: apply review suggestions

* Fix parent uid for shared folder

* Fix listing shared dashboards for users with access to all folders

* Prevent creating folder with "shared" UID

* Add tests for shared folders

* Add test for shared dashboards

* Fix linter

* Add metrics for shared with me folder

* Add metrics for shared with me dashboards

* Fix tests

* Tests: add metrics as a dependency

* Fix access control metadata for shared with me folder

* Use constant for shared with me

* Optimize parent folders access check, fetch all folders in one query.

* Use labels for metrics
2023-12-05 16:13:31 +01:00
..
acl.go Authz: Remove use of SignedInUser copy for permission evaluation (#78448) 2023-11-22 14:20:22 +01:00
alerting_test.go Fix misspell issues 2018-09-21 11:54:36 +02:00
alerting.go Chore: use any rather than interface{} (#74066) 2023-08-30 18:46:47 +03:00
annotations.go Chore: use any rather than interface{} (#74066) 2023-08-30 18:46:47 +03:00
apikey.go API keys: Add last_used_at and docs changes for migration (#64293) 2023-03-09 14:16:42 +00:00
dashboard.go Chore: Deprecate FolderId in DashboardMeta (#77626) 2023-11-06 11:31:44 -05:00
datasource.go backend/datasources: move datasources models into the datasources service package (#51267) 2022-06-27 12:23:15 -04:00
folder.go Chore: Deprecate Id from Folder in DTOs (#77943) 2023-11-15 10:29:49 -05:00
frontend_settings.go Folders: Show dashboards and folders with directly assigned permissions in "Shared" folder (#78465) 2023-12-05 16:13:31 +01:00
index.go Frontend: Foundations for multi tenant frontend (#78815) 2023-12-05 08:34:22 +01:00
invite.go Move SignedInUser to user service and RoleType and Roles to org (#53445) 2022-08-10 11:56:48 +02:00
live.go Live: http publish, refactor live interfaces (#32317) 2021-03-30 13:23:29 +03:00
models_test.go Chore: use any rather than interface{} (#74066) 2023-08-30 18:46:47 +03:00
models.go Chore: Port user services to identity.Requester (#73851) 2023-08-28 10:42:24 +02:00
org.go feat(organization): added update org address to http api and to org details settings view, closes #2672 2015-09-08 14:22:44 +02:00
playlist.go Added playlist controls to new react DashNav 2019-02-04 21:08:30 +01:00
plugins.go Chore: use any rather than interface{} (#74066) 2023-08-30 18:46:47 +03:00
prefs.go Cookies: Provide a mechanism for per user control over cookies (#61566) 2023-02-21 11:19:07 +01:00
short_url.go Dashboard: Allow shortlink generation (#27409) 2020-10-14 12:48:48 +02:00
user_token.go Feature: Parse user agent string in user auth token api response (#16… (#17504) 2019-06-11 14:12:52 +02:00
user.go Chore: Remove unused Go code (#28852) 2020-11-17 11:51:31 +01:00