Dashboards: Add restricted extension point for empty state (#111788)
* Dashboards: Add restricted extension point for empty state * FeatureToggles: Regenerate files with new toggle * Dashboards: Pass default empty UI as component, not children * Dashboards: Expose hooks for empty state methods to extensions * Dashboards: Move empty state button hooks to dedicated file * Dashboards: Render loader while empty state plugin components loading * Dashboards: Pass empty state default UI as method * Dashboards: De-duplicate hook usages in empty state * Dashboards: De-duplicate read-only repo check in empty state
This commit is contained in:
@@ -1891,6 +1891,16 @@ var (
|
||||
FrontendOnly: true,
|
||||
Expression: "false", // extensions will be disabled by default
|
||||
},
|
||||
{
|
||||
Name: "enableDashboardEmptyExtensions",
|
||||
Description: "Set this to true to enable all dashboard empty state extensions registered by plugins.",
|
||||
Stage: FeatureStageExperimental,
|
||||
Owner: grafanaDashboardsSquad,
|
||||
HideFromAdminPage: true,
|
||||
HideFromDocs: true,
|
||||
FrontendOnly: true,
|
||||
Expression: "false", // extensions will be disabled by default
|
||||
},
|
||||
{
|
||||
Name: "foldersAppPlatformAPI",
|
||||
Description: "Enables use of app platform API for folders",
|
||||
|
||||
@@ -244,6 +244,7 @@ preferLibraryPanelTitle,privatePreview,@grafana/dashboards-squad,false,false,fal
|
||||
tabularNumbers,GA,@grafana/grafana-frontend-platform,false,false,false
|
||||
newInfluxDSConfigPageDesign,privatePreview,@grafana/partner-datasources,false,false,false
|
||||
enableAppChromeExtensions,experimental,@grafana/plugins-platform-backend,false,false,true
|
||||
enableDashboardEmptyExtensions,experimental,@grafana/dashboards-squad,false,false,true
|
||||
foldersAppPlatformAPI,experimental,@grafana/grafana-search-navigate-organise,false,false,true
|
||||
enablePluginImporter,experimental,@grafana/plugins-platform-backend,false,false,true
|
||||
otelLogsFormatting,experimental,@grafana/observability-logs,false,false,true
|
||||
|
||||
|
@@ -986,6 +986,10 @@ const (
|
||||
// Set this to true to enable all app chrome extensions registered by plugins.
|
||||
FlagEnableAppChromeExtensions = "enableAppChromeExtensions"
|
||||
|
||||
// FlagEnableDashboardEmptyExtensions
|
||||
// Set this to true to enable all dashboard empty state extensions registered by plugins.
|
||||
FlagEnableDashboardEmptyExtensions = "enableDashboardEmptyExtensions"
|
||||
|
||||
// FlagFoldersAppPlatformAPI
|
||||
// Enables use of app platform API for folders
|
||||
FlagFoldersAppPlatformAPI = "foldersAppPlatformAPI"
|
||||
|
||||
@@ -1383,6 +1383,22 @@
|
||||
"expression": "false"
|
||||
}
|
||||
},
|
||||
{
|
||||
"metadata": {
|
||||
"name": "enableDashboardEmptyExtensions",
|
||||
"resourceVersion": "1759194774156",
|
||||
"creationTimestamp": "2025-09-30T01:12:54Z"
|
||||
},
|
||||
"spec": {
|
||||
"description": "Set this to true to enable all dashboard empty state extensions registered by plugins.",
|
||||
"stage": "experimental",
|
||||
"codeowner": "@grafana/dashboards-squad",
|
||||
"frontend": true,
|
||||
"hideFromAdminPage": true,
|
||||
"hideFromDocs": true,
|
||||
"expression": "false"
|
||||
}
|
||||
},
|
||||
{
|
||||
"metadata": {
|
||||
"name": "enableDatagridEditing",
|
||||
|
||||
Reference in New Issue
Block a user