@gooddata/sdk-ui-dashboard 11.57.0-alpha.1 → 11.57.0-alpha.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (237) hide show
  1. package/NOTICE +5 -5
  2. package/esm/__version.d.ts +1 -1
  3. package/esm/__version.js +1 -1
  4. package/esm/_staging/dateFilterConfig/dateFilterConfigConverters.js +1 -1
  5. package/esm/_staging/dateFilterConfig/dateFilterOptionMapping.js +1 -1
  6. package/esm/_staging/dateFilterConfig/defaultConfig.js +1 -1
  7. package/esm/_staging/metadata/objRefMap.js +1 -1
  8. package/esm/index.d.ts +1 -1
  9. package/esm/index.d.ts.map +1 -1
  10. package/esm/index.js +1 -1
  11. package/esm/internal.js +1 -1
  12. package/esm/model/commandHandlers/common/validateDrillToCustomUrlParams.d.ts.map +1 -1
  13. package/esm/model/commandHandlers/common/validateDrillToCustomUrlParams.js +6 -5
  14. package/esm/model/commandHandlers/dashboard/saveDashboardHandler.d.ts +1 -1
  15. package/esm/model/commandHandlers/dashboard/saveDashboardHandler.d.ts.map +1 -1
  16. package/esm/model/commandHandlers/dashboard/saveDashboardHandler.js +64 -4
  17. package/esm/model/commandHandlers/drill/resolveDrillToCustomUrl.d.ts +2 -3
  18. package/esm/model/commandHandlers/drill/resolveDrillToCustomUrl.d.ts.map +1 -1
  19. package/esm/model/commandHandlers/drill/resolveDrillToCustomUrl.js +23 -17
  20. package/esm/model/commandHandlers/filterContext/attributeFilter/removeAttributeFiltersHandler.d.ts.map +1 -1
  21. package/esm/model/commandHandlers/filterContext/attributeFilter/removeAttributeFiltersHandler.js +2 -1
  22. package/esm/model/commandHandlers/filterContext/removeRestrictedFiltersHandler.d.ts +9 -0
  23. package/esm/model/commandHandlers/filterContext/removeRestrictedFiltersHandler.d.ts.map +1 -0
  24. package/esm/model/commandHandlers/filterContext/removeRestrictedFiltersHandler.js +39 -0
  25. package/esm/model/commandHandlers/index.d.ts.map +1 -1
  26. package/esm/model/commandHandlers/index.js +2 -0
  27. package/esm/model/commandHandlers/widgets/validation/insightDrillDefinitionUtils.d.ts.map +1 -1
  28. package/esm/model/commandHandlers/widgets/validation/insightDrillDefinitionUtils.js +5 -9
  29. package/esm/model/commands/base.d.ts +1 -1
  30. package/esm/model/commands/base.d.ts.map +1 -1
  31. package/esm/model/commands/filters.d.ts +20 -0
  32. package/esm/model/commands/filters.d.ts.map +1 -1
  33. package/esm/model/commands/filters.js +13 -0
  34. package/esm/model/commands/index.d.ts +2 -2
  35. package/esm/model/commands/index.d.ts.map +1 -1
  36. package/esm/model/store/filtering/dashboardFilterSelectors.d.ts +6 -0
  37. package/esm/model/store/filtering/dashboardFilterSelectors.d.ts.map +1 -1
  38. package/esm/model/store/filtering/dashboardFilterSelectors.js +11 -6
  39. package/esm/model/store/insights/insightsSelectors.d.ts +18 -0
  40. package/esm/model/store/insights/insightsSelectors.d.ts.map +1 -1
  41. package/esm/model/store/insights/insightsSelectors.js +51 -2
  42. package/esm/model/store/tabs/index.d.ts +12 -0
  43. package/esm/model/store/tabs/index.d.ts.map +1 -1
  44. package/esm/model/store/tabs/layout/layoutReducers.d.ts +36 -30
  45. package/esm/model/store/tabs/layout/layoutReducers.d.ts.map +1 -1
  46. package/esm/model/store/tabs/layout/layoutReducers.js +19 -0
  47. package/esm/model/store/tabs/layout/layoutSelectors.d.ts +17 -0
  48. package/esm/model/store/tabs/layout/layoutSelectors.d.ts.map +1 -1
  49. package/esm/model/store/tabs/layout/layoutSelectors.js +30 -1
  50. package/esm/model/store/ui/index.d.ts +3 -0
  51. package/esm/model/store/ui/index.d.ts.map +1 -1
  52. package/esm/model/store/ui/uiReducers.d.ts +3 -0
  53. package/esm/model/store/ui/uiReducers.d.ts.map +1 -1
  54. package/esm/model/store/ui/uiReducers.js +13 -0
  55. package/esm/model/store/ui/uiSelectors.d.ts +8 -0
  56. package/esm/model/store/ui/uiSelectors.d.ts.map +1 -1
  57. package/esm/model/store/ui/uiSelectors.js +8 -0
  58. package/esm/model/store/ui/uiState.d.ts +4 -0
  59. package/esm/model/store/ui/uiState.d.ts.map +1 -1
  60. package/esm/model/store/ui/uiState.js +4 -0
  61. package/esm/plugins/customizationApis/customizationLogging.js +2 -2
  62. package/esm/plugins/engine.js +1 -1
  63. package/esm/presentation/automations/alerting/blocks/AlertingDialogFieldLabelWithTooltip.d.ts.map +1 -1
  64. package/esm/presentation/automations/alerting/blocks/AlertingDialogFieldLabelWithTooltip.js +1 -1
  65. package/esm/presentation/automations/alerting/types.d.ts +23 -0
  66. package/esm/presentation/automations/alerting/types.d.ts.map +1 -1
  67. package/esm/presentation/automations/alerting/types.js +7 -0
  68. package/esm/presentation/automations/contexts/AlertingDialogContext.d.ts +13 -0
  69. package/esm/presentation/automations/contexts/AlertingDialogContext.d.ts.map +1 -1
  70. package/esm/presentation/automations/contexts/AlertingManagementDialogContext.d.ts +25 -0
  71. package/esm/presentation/automations/contexts/AlertingManagementDialogContext.d.ts.map +1 -1
  72. package/esm/presentation/automations/contexts/AutomationsContext.d.ts +71 -0
  73. package/esm/presentation/automations/contexts/AutomationsContext.d.ts.map +1 -1
  74. package/esm/presentation/automations/contexts/ScheduledEmailDialogContext.d.ts +9 -0
  75. package/esm/presentation/automations/contexts/ScheduledEmailDialogContext.d.ts.map +1 -1
  76. package/esm/presentation/automations/contexts/ScheduledEmailManagementDialogContext.d.ts +3 -2
  77. package/esm/presentation/automations/contexts/ScheduledEmailManagementDialogContext.d.ts.map +1 -1
  78. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailManagementDialog/DefaultScheduledEmailManagementDialog.d.ts +3 -0
  79. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailManagementDialog/DefaultScheduledEmailManagementDialog.d.ts.map +1 -1
  80. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailManagementDialog/DefaultScheduledEmailManagementDialog.js +3 -0
  81. package/esm/presentation/automations/scheduledEmail/types.d.ts +15 -0
  82. package/esm/presentation/automations/scheduledEmail/types.d.ts.map +1 -1
  83. package/esm/presentation/automations/shared/automationFilters/components/AutomationFiltersSelect.d.ts.map +1 -1
  84. package/esm/presentation/automations/shared/automationFilters/components/AutomationFiltersSelect.js +1 -1
  85. package/esm/presentation/automations/shared/dateFilterConfig/dateFilterConfigConverters.js +1 -1
  86. package/esm/presentation/automations/shared/dateFilterConfig/dateFilterOptionMapping.js +1 -1
  87. package/esm/presentation/automations/shared/dateFilterConfig/defaultConfig.js +1 -1
  88. package/esm/presentation/automations/shared/filters/index.js +1 -1
  89. package/esm/presentation/dashboard/DashboardHeader/DashboardHeader.d.ts.map +1 -1
  90. package/esm/presentation/dashboard/DashboardHeader/DashboardHeader.js +5 -1
  91. package/esm/presentation/dashboardSettingsDialog/DefaultDashboardSettingsDialog.d.ts.map +1 -1
  92. package/esm/presentation/dashboardSettingsDialog/DefaultDashboardSettingsDialog.js +4 -3
  93. package/esm/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditor.d.ts.map +1 -1
  94. package/esm/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditor.js +16 -23
  95. package/esm/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditorParametersSections/DashboardParametersSection.d.ts.map +1 -1
  96. package/esm/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditorParametersSections/DashboardParametersSection.js +3 -2
  97. package/esm/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditorParametersSections/DisplayFormParam.d.ts.map +1 -1
  98. package/esm/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditorParametersSections/DisplayFormParam.js +2 -1
  99. package/esm/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditorParametersSections/InsightParametersSection.d.ts.map +1 -1
  100. package/esm/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditorParametersSections/InsightParametersSection.js +2 -1
  101. package/esm/presentation/drill/utils/drillToCustomUrlUtils.d.ts.map +1 -1
  102. package/esm/presentation/drill/utils/drillToCustomUrlUtils.js +5 -3
  103. package/esm/presentation/filterBar/filterBar/DefaultFilterBar.d.ts.map +1 -1
  104. package/esm/presentation/filterBar/filterBar/DefaultFilterBar.js +5 -2
  105. package/esm/presentation/filterBar/filterBar/RestrictedFiltersPlaceholder.d.ts +3 -1
  106. package/esm/presentation/filterBar/filterBar/RestrictedFiltersPlaceholder.d.ts.map +1 -1
  107. package/esm/presentation/filterBar/filterBar/RestrictedFiltersPlaceholder.js +35 -4
  108. package/esm/presentation/insightNotSavedDialog/InsightNotSavedDialog.d.ts +5 -0
  109. package/esm/presentation/insightNotSavedDialog/InsightNotSavedDialog.d.ts.map +1 -0
  110. package/esm/presentation/insightNotSavedDialog/InsightNotSavedDialog.js +29 -0
  111. package/esm/presentation/localization/bundles/de-DE.localization-bundle.d.ts +15 -0
  112. package/esm/presentation/localization/bundles/de-DE.localization-bundle.d.ts.map +1 -1
  113. package/esm/presentation/localization/bundles/de-DE.localization-bundle.js +15 -0
  114. package/esm/presentation/localization/bundles/en-AU.localization-bundle.d.ts +15 -0
  115. package/esm/presentation/localization/bundles/en-AU.localization-bundle.d.ts.map +1 -1
  116. package/esm/presentation/localization/bundles/en-AU.localization-bundle.js +15 -0
  117. package/esm/presentation/localization/bundles/en-GB.localization-bundle.d.ts +15 -0
  118. package/esm/presentation/localization/bundles/en-GB.localization-bundle.d.ts.map +1 -1
  119. package/esm/presentation/localization/bundles/en-GB.localization-bundle.js +15 -0
  120. package/esm/presentation/localization/bundles/en-US.localization-bundle.d.ts +32 -0
  121. package/esm/presentation/localization/bundles/en-US.localization-bundle.d.ts.map +1 -1
  122. package/esm/presentation/localization/bundles/en-US.localization-bundle.js +34 -2
  123. package/esm/presentation/localization/bundles/es-419.localization-bundle.d.ts +15 -0
  124. package/esm/presentation/localization/bundles/es-419.localization-bundle.d.ts.map +1 -1
  125. package/esm/presentation/localization/bundles/es-419.localization-bundle.js +15 -0
  126. package/esm/presentation/localization/bundles/es-ES.localization-bundle.d.ts +15 -0
  127. package/esm/presentation/localization/bundles/es-ES.localization-bundle.d.ts.map +1 -1
  128. package/esm/presentation/localization/bundles/es-ES.localization-bundle.js +15 -0
  129. package/esm/presentation/localization/bundles/fi-FI.localization-bundle.d.ts +15 -0
  130. package/esm/presentation/localization/bundles/fi-FI.localization-bundle.d.ts.map +1 -1
  131. package/esm/presentation/localization/bundles/fi-FI.localization-bundle.js +15 -0
  132. package/esm/presentation/localization/bundles/fr-CA.localization-bundle.d.ts +15 -0
  133. package/esm/presentation/localization/bundles/fr-CA.localization-bundle.d.ts.map +1 -1
  134. package/esm/presentation/localization/bundles/fr-CA.localization-bundle.js +15 -0
  135. package/esm/presentation/localization/bundles/fr-FR.localization-bundle.d.ts +15 -0
  136. package/esm/presentation/localization/bundles/fr-FR.localization-bundle.d.ts.map +1 -1
  137. package/esm/presentation/localization/bundles/fr-FR.localization-bundle.js +15 -0
  138. package/esm/presentation/localization/bundles/id-ID.localization-bundle.d.ts +15 -0
  139. package/esm/presentation/localization/bundles/id-ID.localization-bundle.d.ts.map +1 -1
  140. package/esm/presentation/localization/bundles/id-ID.localization-bundle.js +15 -0
  141. package/esm/presentation/localization/bundles/it-IT.localization-bundle.d.ts +15 -0
  142. package/esm/presentation/localization/bundles/it-IT.localization-bundle.d.ts.map +1 -1
  143. package/esm/presentation/localization/bundles/it-IT.localization-bundle.js +15 -0
  144. package/esm/presentation/localization/bundles/ja-JP.localization-bundle.d.ts +15 -0
  145. package/esm/presentation/localization/bundles/ja-JP.localization-bundle.d.ts.map +1 -1
  146. package/esm/presentation/localization/bundles/ja-JP.localization-bundle.js +15 -0
  147. package/esm/presentation/localization/bundles/ko-KR.localization-bundle.d.ts +15 -0
  148. package/esm/presentation/localization/bundles/ko-KR.localization-bundle.d.ts.map +1 -1
  149. package/esm/presentation/localization/bundles/ko-KR.localization-bundle.js +15 -0
  150. package/esm/presentation/localization/bundles/nl-NL.localization-bundle.d.ts +15 -0
  151. package/esm/presentation/localization/bundles/nl-NL.localization-bundle.d.ts.map +1 -1
  152. package/esm/presentation/localization/bundles/nl-NL.localization-bundle.js +15 -0
  153. package/esm/presentation/localization/bundles/pl-PL.localization-bundle.d.ts +15 -0
  154. package/esm/presentation/localization/bundles/pl-PL.localization-bundle.d.ts.map +1 -1
  155. package/esm/presentation/localization/bundles/pl-PL.localization-bundle.js +15 -0
  156. package/esm/presentation/localization/bundles/pt-BR.localization-bundle.d.ts +15 -0
  157. package/esm/presentation/localization/bundles/pt-BR.localization-bundle.d.ts.map +1 -1
  158. package/esm/presentation/localization/bundles/pt-BR.localization-bundle.js +15 -0
  159. package/esm/presentation/localization/bundles/pt-PT.localization-bundle.d.ts +15 -0
  160. package/esm/presentation/localization/bundles/pt-PT.localization-bundle.d.ts.map +1 -1
  161. package/esm/presentation/localization/bundles/pt-PT.localization-bundle.js +15 -0
  162. package/esm/presentation/localization/bundles/ru-RU.localization-bundle.d.ts +15 -0
  163. package/esm/presentation/localization/bundles/ru-RU.localization-bundle.d.ts.map +1 -1
  164. package/esm/presentation/localization/bundles/ru-RU.localization-bundle.js +18 -3
  165. package/esm/presentation/localization/bundles/sl-SI.localization-bundle.d.ts +15 -0
  166. package/esm/presentation/localization/bundles/sl-SI.localization-bundle.d.ts.map +1 -1
  167. package/esm/presentation/localization/bundles/sl-SI.localization-bundle.js +15 -0
  168. package/esm/presentation/localization/bundles/th-TH.localization-bundle.d.ts +15 -0
  169. package/esm/presentation/localization/bundles/th-TH.localization-bundle.d.ts.map +1 -1
  170. package/esm/presentation/localization/bundles/th-TH.localization-bundle.js +15 -0
  171. package/esm/presentation/localization/bundles/tr-TR.localization-bundle.d.ts +15 -0
  172. package/esm/presentation/localization/bundles/tr-TR.localization-bundle.d.ts.map +1 -1
  173. package/esm/presentation/localization/bundles/tr-TR.localization-bundle.js +15 -0
  174. package/esm/presentation/localization/bundles/uk-UA.localization-bundle.d.ts +15 -0
  175. package/esm/presentation/localization/bundles/uk-UA.localization-bundle.d.ts.map +1 -1
  176. package/esm/presentation/localization/bundles/uk-UA.localization-bundle.js +15 -0
  177. package/esm/presentation/localization/bundles/vi-VN.localization-bundle.d.ts +15 -0
  178. package/esm/presentation/localization/bundles/vi-VN.localization-bundle.d.ts.map +1 -1
  179. package/esm/presentation/localization/bundles/vi-VN.localization-bundle.js +15 -0
  180. package/esm/presentation/localization/bundles/zh-HK.localization-bundle.d.ts +15 -0
  181. package/esm/presentation/localization/bundles/zh-HK.localization-bundle.d.ts.map +1 -1
  182. package/esm/presentation/localization/bundles/zh-HK.localization-bundle.js +108 -93
  183. package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.d.ts +15 -0
  184. package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.d.ts.map +1 -1
  185. package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.js +15 -0
  186. package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.d.ts +15 -0
  187. package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.d.ts.map +1 -1
  188. package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.js +15 -0
  189. package/esm/presentation/topBar/buttonBar/button/settingButton/DefaultSettingButton.d.ts.map +1 -1
  190. package/esm/presentation/topBar/buttonBar/button/settingButton/DefaultSettingButton.js +1 -1
  191. package/esm/presentation/widget/insight/configuration/DrillTargets/useInvalidAttributeDisplayFormIdentifier.d.ts.map +1 -1
  192. package/esm/presentation/widget/insight/configuration/DrillTargets/useInvalidAttributeDisplayFormIdentifier.js +7 -6
  193. package/esm/presentation/widget/insight/configuration/DrillTargets/useInvalidFilteringParametersIdentifiers.d.ts.map +1 -1
  194. package/esm/presentation/widget/insight/configuration/DrillTargets/useInvalidFilteringParametersIdentifiers.js +16 -12
  195. package/esm/presentation/widget/insightMenu/DefaultDashboardInsightMenu/DashboardInsightMenu/CustomUiMenuComponents.d.ts +5 -0
  196. package/esm/presentation/widget/insightMenu/DefaultDashboardInsightMenu/DashboardInsightMenu/CustomUiMenuComponents.d.ts.map +1 -1
  197. package/esm/presentation/widget/insightMenu/DefaultDashboardInsightMenu/DashboardInsightMenu/CustomUiMenuComponents.js +12 -0
  198. package/esm/presentation/widget/insightMenu/DefaultDashboardInsightMenu/DashboardInsightMenu/DashboardInsightMenuContainer.d.ts +2 -0
  199. package/esm/presentation/widget/insightMenu/DefaultDashboardInsightMenu/DashboardInsightMenu/DashboardInsightMenuContainer.d.ts.map +1 -1
  200. package/esm/presentation/widget/insightMenu/DefaultDashboardInsightMenu/DashboardInsightMenu/DashboardInsightMenuContainer.js +1 -1
  201. package/esm/presentation/widget/insightMenu/DefaultDashboardInsightMenu/DashboardInsightMenu/index.d.ts +6 -1
  202. package/esm/presentation/widget/insightMenu/DefaultDashboardInsightMenu/DashboardInsightMenu/index.d.ts.map +1 -1
  203. package/esm/presentation/widget/insightMenu/DefaultDashboardInsightMenu/DashboardInsightMenu/index.js +11 -6
  204. package/esm/presentation/widget/widget/InsightWidget/DashboardWidgetInsightGuard.d.ts +6 -0
  205. package/esm/presentation/widget/widget/InsightWidget/DashboardWidgetInsightGuard.d.ts.map +1 -1
  206. package/esm/presentation/widget/widget/InsightWidget/DashboardWidgetInsightGuard.js +4 -4
  207. package/esm/presentation/widget/widget/InsightWidget/EditableDashboardInsightWidget.d.ts.map +1 -1
  208. package/esm/presentation/widget/widget/InsightWidget/EditableDashboardInsightWidget.js +2 -1
  209. package/esm/presentation/widget/widget/InsightWidget/EditableRestrictedInsightWidget.d.ts +13 -0
  210. package/esm/presentation/widget/widget/InsightWidget/EditableRestrictedInsightWidget.d.ts.map +1 -0
  211. package/esm/presentation/widget/widget/InsightWidget/EditableRestrictedInsightWidget.js +32 -0
  212. package/esm/presentation/widgetDeleteDialog/DefaultWidgetDeleteDialog.d.ts +1 -1
  213. package/esm/presentation/widgetDeleteDialog/DefaultWidgetDeleteDialog.d.ts.map +1 -1
  214. package/esm/presentation/widgetDeleteDialog/DefaultWidgetDeleteDialog.js +8 -2
  215. package/esm/presentation/widgetDeleteDialog/types.d.ts +5 -0
  216. package/esm/presentation/widgetDeleteDialog/types.d.ts.map +1 -1
  217. package/esm/sdk-ui-dashboard.d.ts +207 -4
  218. package/package.json +25 -24
  219. package/styles/css/alerting.css +2 -2
  220. package/styles/css/attributeFilterConfig.css +1 -1
  221. package/styles/css/dashboard.css +2 -2
  222. package/styles/css/dashboardNestedLayoutWidget.css +1 -1
  223. package/styles/css/dragAndDrop.css +2 -2
  224. package/styles/css/drillConfigPanel.css +4 -4
  225. package/styles/css/filterBar.css +15 -6
  226. package/styles/css/filterBar.css.map +1 -1
  227. package/styles/css/icons.css +2 -2
  228. package/styles/css/insightsNotSavedDialog.css +26 -0
  229. package/styles/css/insightsNotSavedDialog.css.map +1 -0
  230. package/styles/css/main.css +206 -173
  231. package/styles/css/main.css.map +1 -1
  232. package/styles/css/notifications_channels_dialog.css +2 -2
  233. package/styles/css/resizing.css +4 -4
  234. package/styles/css/visualizationSwitcherToolbar.css +4 -4
  235. package/styles/scss/filterBar.scss +14 -5
  236. package/styles/scss/insightsNotSavedDialog.scss +26 -0
  237. package/styles/scss/main.scss +1 -0
@@ -1,4 +1,4 @@
1
1
  // (C) 2021-2026 GoodData Corporation
2
- /* oxlint-disable no-barrel-files/no-barrel-files */
2
+ // oxlint-disable no-barrel-files/no-barrel-files
3
3
  // Moved to sdk-ui-filters (shared with the CF date picker); re-exported for existing import sites.
4
4
  export { findDateFilterOptionByValue, flattenDateFilterOptions, matchDateFilterToDateFilterOption, matchDateFilterToDateFilterOptionWithPreference, } from "@gooddata/sdk-ui-filters";
@@ -1,4 +1,4 @@
1
1
  // (C) 2021-2026 GoodData Corporation
2
- /* oxlint-disable no-barrel-files/no-barrel-files */
2
+ // oxlint-disable no-barrel-files/no-barrel-files
3
3
  // Was a byte-identical copy; re-export the _staging canonical instead.
4
4
  export { DEFAULT_DATE_FILTER_PRESET, DEFAULT_FISCAL_DATE_FILTER_PRESET, defaultDateFilterConfig, } from "../../../../_staging/dateFilterConfig/defaultConfig.js";
@@ -1,3 +1,3 @@
1
1
  // (C) 2026 GoodData Corporation
2
- /* oxlint-disable no-barrel-files/no-barrel-files */
2
+ // oxlint-disable no-barrel-files/no-barrel-files
3
3
  export { getVisibleFiltersByFilters, getVisibleFiltersByFiltersByTab, getAppliedWidgetFilters, getAppliedDashboardFilters, dashboardFilterToFilterContextItem, resolveFilterDimensionalityLocalRefs, isNoopAllTimeDateFilterFixed, } from "./conversions.js";
@@ -1 +1 @@
1
- {"version":3,"file":"DashboardHeader.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dashboard/DashboardHeader/DashboardHeader.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AA4E1C,wBAAgB,oBAAoB,mDAOnC;AAID,wBAAgB,eAAe,IAAI,YAAY,CA0B9C"}
1
+ {"version":3,"file":"DashboardHeader.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dashboard/DashboardHeader/DashboardHeader.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAiF1C,wBAAgB,oBAAoB,mDAOnC;AAID,wBAAgB,eAAe,IAAI,YAAY,CA2B9C"}
@@ -12,6 +12,7 @@ import { ExportTemplateDialogProvider } from "../../dialogs/ExportTemplateDialog
12
12
  import { ExportXlsxDialogProvider } from "../../dialogs/ExportXlsxDialogProvider.js";
13
13
  import { useFilterBarProps } from "../../filterBar/filterBar/DefaultFilterBar.js";
14
14
  import { FilterBar } from "../../filterBar/filterBar/FilterBar.js";
15
+ import { InsightNotSavedDialog } from "../../insightNotSavedDialog/InsightNotSavedDialog.js";
15
16
  import { useKpiDeleteDialogProps } from "../../kpiDeleteDialog/DefaultKpiDeleteDialog.js";
16
17
  import { KpiDeleteDialog } from "../../kpiDeleteDialog/KpiDeleteDialog.js";
17
18
  import { useSaveAsDialogProps } from "../../saveAs/DefaultSaveAsDialog/index.js";
@@ -45,6 +46,9 @@ function SaveAsDialogWrapper() {
45
46
  const saveAsDialogProps = useSaveAsDialogProps();
46
47
  return _jsx(SaveAsDialog, { ...saveAsDialogProps });
47
48
  }
49
+ function InsightNotSavedDialogWrapper() {
50
+ return _jsx(InsightNotSavedDialog, {});
51
+ }
48
52
  function TopBarWrapper() {
49
53
  const topBarProps = useTopBarProps();
50
54
  return _jsx(TopBar, { ...topBarProps });
@@ -72,5 +76,5 @@ export function DashboardTabsWrapper() {
72
76
  // split the header parts of the dashboard so that changes to their state
73
77
  // (e.g. opening email dialog) do not re-render the dashboard body
74
78
  export function DashboardHeader() {
75
- return (_jsxs(_Fragment, { children: [_jsx(ToastMessages, {}), _jsx(ExportXlsxDialogProvider, {}), _jsx(ExportCsvDialogProvider, {}), _jsx(ExportTabularPdfDialogProvider, {}), _jsx(ExportTemplateDialogProvider, {}), _jsx(ScheduledEmailAutomationsProvider, { children: _jsx(ScheduledEmailConnector, {}) }), _jsx(AlertingDialogProvider, {}), _jsx(ShareDialogDashboardHeader, {}), _jsx(SettingsDialogProvider, {}), _jsx(DensityDialogProvider, {}), _jsx(TimezoneDialogProvider, {}), _jsx(DeleteDialogWrapper, {}), _jsx(WidgetDeleteDialogWrapper, {}), _jsx(KpiDeleteDialogWrapper, {}), _jsx(SaveAsDialogWrapper, {}), _jsx(TopBarWrapper, {}), _jsx(DashboardTabsWrapper, {}), _jsx(FilterBarWrapper, {}), _jsx(CancelEditDialogWrapper, {})] }));
79
+ return (_jsxs(_Fragment, { children: [_jsx(ToastMessages, {}), _jsx(ExportXlsxDialogProvider, {}), _jsx(ExportCsvDialogProvider, {}), _jsx(ExportTabularPdfDialogProvider, {}), _jsx(ExportTemplateDialogProvider, {}), _jsx(ScheduledEmailAutomationsProvider, { children: _jsx(ScheduledEmailConnector, {}) }), _jsx(AlertingDialogProvider, {}), _jsx(ShareDialogDashboardHeader, {}), _jsx(SettingsDialogProvider, {}), _jsx(DensityDialogProvider, {}), _jsx(TimezoneDialogProvider, {}), _jsx(DeleteDialogWrapper, {}), _jsx(WidgetDeleteDialogWrapper, {}), _jsx(KpiDeleteDialogWrapper, {}), _jsx(SaveAsDialogWrapper, {}), _jsx(InsightNotSavedDialogWrapper, {}), _jsx(TopBarWrapper, {}), _jsx(DashboardTabsWrapper, {}), _jsx(FilterBarWrapper, {}), _jsx(CancelEditDialogWrapper, {})] }));
76
80
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultDashboardSettingsDialog.d.ts","sourceRoot":"","sources":["../../../src/presentation/dashboardSettingsDialog/DefaultDashboardSettingsDialog.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAoD,MAAM,OAAO,CAAC;AA2C5F,OAAO,EAAE,KAAK,6BAA6B,EAAE,MAAM,YAAY,CAAC;AAGhE;;GAEG;AACH,wBAAgB,8BAA8B,CAAC,EAC3C,SAAS,EACT,OAAO,EACP,QAAQ,GACX,EAAE,6BAA6B,GAAG,YAAY,GAAG,IAAI,CAiRrD"}
1
+ {"version":3,"file":"DefaultDashboardSettingsDialog.d.ts","sourceRoot":"","sources":["../../../src/presentation/dashboardSettingsDialog/DefaultDashboardSettingsDialog.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAoD,MAAM,OAAO,CAAC;AA2C5F,OAAO,EAAE,KAAK,6BAA6B,EAAE,MAAM,YAAY,CAAC;AAMhE;;GAEG;AACH,wBAAgB,8BAA8B,CAAC,EAC3C,SAAS,EACT,OAAO,EACP,QAAQ,GACX,EAAE,6BAA6B,GAAG,YAAY,GAAG,IAAI,CAgSrD"}
@@ -11,6 +11,7 @@ import { selectDateFormat, selectEnableDashboardPersistentFiltersAcrossTabs, sel
11
11
  import { selectCrossFilteringEnabledAndSupported } from "../../model/store/topBar/topBarSelectors.js";
12
12
  import { TimezoneOption } from "./TimezoneOption.js";
13
13
  import { useDialogData } from "./useDialogData.js";
14
+ const DASHBOARD_TIMEZONE_DOC_LINK = "https://www.gooddata.ai/docs/cloud/customize-appearance/manage-timezones/#change-the-time-zone-on-a-dashboard";
14
15
  /**
15
16
  * @alpha
16
17
  */
@@ -104,9 +105,9 @@ export function DefaultDashboardSettingsDialog({ isVisible, onApply, onCancel /*
104
105
  strong: (chunks) => _jsx("strong", { children: chunks }),
105
106
  } })) })] }), settings.enableTimezoneChange ? (_jsxs("div", { className: "gd-dashboard-settings-dialog-section s-dashboard-settings-timezone", children: [_jsx(DialogListHeader, { title: intl.formatMessage({ id: "settingsDashboardDialog.section.timezone" }), className: "gd-dashboard-settings-filters" }), _jsx(TimezoneOption, { label: intl.formatMessage({
106
107
  id: "settingsDashboardDialog.section.timezone.defaultTimezone",
107
- }), tooltip: intl.formatMessage({
108
- id: "settingsDashboardDialog.section.timezone.defaultTimezone.tooltip",
109
- }), timezoneConfig: currentData.timezoneConfig, onChange: (timezoneId) => {
108
+ }), tooltip: _jsx(FormattedMessage, { id: "settingsDashboardDialog.section.timezone.defaultTimezone.tooltip", values: {
109
+ a: (chunks) => isWhiteLabeled ? null : (_jsx("a", { href: DASHBOARD_TIMEZONE_DOC_LINK, rel: "noopener noreferrer", target: "_blank", className: "s-timezone-docs-link", children: chunks })),
110
+ } }), timezoneConfig: currentData.timezoneConfig, onChange: (timezoneId) => {
110
111
  setCurrentData({
111
112
  ...currentData,
112
113
  timezoneConfig: normalizeDashboardTimezoneConfig({
@@ -1 +1 @@
1
- {"version":3,"file":"CustomUrlEditor.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditor.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAoB,KAAK,SAAS,EAAW,MAAM,YAAY,CAAC;AAEvE,OAAO,EAMH,KAAK,MAAM,EAad,MAAM,qBAAqB,CAAC;AA4B7B,OAAO,EAAE,KAAK,cAAc,EAA4B,MAAM,gBAAgB,CAAC;AAG/E,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAE5D,MAAM,WAAW,cAAc;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,uBAAuB,CAAC,EAAE,eAAe,EAAE,CAAC;IAC5C,IAAI,EAAE,SAAS,CAAC;CACnB;AAsCD,wBAAgB,QAAQ,CAAC,EACrB,QAAQ,EACR,QAAQ,EACR,eAAe,EACf,IAAI,EACJ,uBAAuB,GAC1B,EAAE,cAAc,kDAoBhB;AAyHD,UAAU,eAAe;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACjB;AAmLD,MAAM,WAAW,qBAAqB;IAClC,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,qBAAqB,CAAC,EAAE,yBAAyB,EAAE,CAAC;IACpD,4BAA4B,CAAC,EAAE,OAAO,CAAC;IACvC,sCAAsC,EAAE,MAAM,EAAE,CAAC;IACjD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,uBAAuB,EAAE,OAAO,CAAC;IACjC,4BAA4B,EAAE,OAAO,CAAC;IACtC,uBAAuB,EAAE,OAAO,CAAC;IACjC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,SAAS,EAAE,MAAM,CAAC;CACrB;AAmHD,wBAAgB,eAAe,CAAC,KAAK,EAAE,qBAAqB,2CAkB3D"}
1
+ {"version":3,"file":"CustomUrlEditor.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditor.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAoB,KAAK,SAAS,EAAW,MAAM,YAAY,CAAC;AAEvE,OAAO,EAKH,KAAK,MAAM,EAYd,MAAM,qBAAqB,CAAC;AAkC7B,OAAO,EAAE,KAAK,cAAc,EAA4B,MAAM,gBAAgB,CAAC;AAG/E,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAE5D,MAAM,WAAW,cAAc;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,uBAAuB,CAAC,EAAE,eAAe,EAAE,CAAC;IAC5C,IAAI,EAAE,SAAS,CAAC;CACnB;AAsCD,wBAAgB,QAAQ,CAAC,EACrB,QAAQ,EACR,QAAQ,EACR,eAAe,EACf,IAAI,EACJ,uBAAuB,GAC1B,EAAE,cAAc,kDAoBhB;AAsHD,UAAU,eAAe;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACjB;AAmLD,MAAM,WAAW,qBAAqB;IAClC,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,qBAAqB,CAAC,EAAE,yBAAyB,EAAE,CAAC;IACpD,4BAA4B,CAAC,EAAE,OAAO,CAAC;IACvC,sCAAsC,EAAE,MAAM,EAAE,CAAC;IACjD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,uBAAuB,EAAE,OAAO,CAAC;IACjC,4BAA4B,EAAE,OAAO,CAAC;IACtC,uBAAuB,EAAE,OAAO,CAAC;IACjC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,SAAS,EAAE,MAAM,CAAC;CACrB;AAmHD,wBAAgB,eAAe,CAAC,KAAK,EAAE,qBAAqB,2CAkB3D"}
@@ -3,9 +3,10 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { useCallback, useMemo, useState } from "react";
4
4
  import { HighlightStyle, StreamLanguage, syntaxHighlighting } from "@codemirror/language";
5
5
  import { Tag } from "@lezer/highlight";
6
- import { compact, uniqBy } from "lodash-es";
6
+ import { compact, escapeRegExp, uniqBy } from "lodash-es";
7
7
  import { FormattedMessage, useIntl } from "react-intl";
8
- import { dashboardAttributeFilterItemToAttributeFilter, filterObjRef, idRef, insightFilters as insightDefinitionFilters, isArbitraryAttributeFilter, isAttributeFilter, isMatchAttributeFilter, isMeasureValueFilter, isNegativeAttributeFilter, isPositiveAttributeFilter, objRefToString, serializeObjRef, } from "@gooddata/sdk-model";
8
+ import { dashboardAttributeFilterItemToAttributeFilter, filterObjRef, insightFilters as insightDefinitionFilters, isArbitraryAttributeFilter, isAttributeFilter, isMatchAttributeFilter, isMeasureValueFilter, isNegativeAttributeFilter, isPositiveAttributeFilter, objRefToString, serializeObjRef, } from "@gooddata/sdk-model";
9
+ import { attributeIdentifierToPlaceholder, dashboardAttributeFilterToPlaceholder, displayFormPlaceholderRef, insightAttributeFilterToPlaceholder, } from "@gooddata/sdk-model/internal";
9
10
  import { ConfirmDialogBase, FullScreenOverlay, Overlay, OverlayController, OverlayControllerProvider, SyntaxHighlightingInput, useMediaQuery, } from "@gooddata/sdk-ui-kit";
10
11
  import { useDashboardSelector } from "../../../../model/react/DashboardStoreProvider.js";
11
12
  import { selectAllCatalogDisplayFormsMap, selectAllCatalogMeasuresMap, } from "../../../../model/store/catalog/catalogSelectors.js";
@@ -69,7 +70,7 @@ const buildValidDisplayFormsFormattingRule = (attributeDisplayForms) => {
69
70
  return undefined;
70
71
  }
71
72
  const validAttributePlaceholders = attributeDisplayForms
72
- .map(({ displayForm }) => `{attribute_title\\(${displayForm.id}\\)}`)
73
+ .map(({ displayForm }) => escapeRegExp(attributeIdentifierToPlaceholder(displayFormPlaceholderRef(displayForm))))
73
74
  .join("|");
74
75
  return { regex: new RegExp(`^${validAttributePlaceholders}`), token: customTags.attribute.toString() };
75
76
  };
@@ -78,12 +79,10 @@ const buildValidInsightFiltersFormattingRule = (attributeFilters) => {
78
79
  return undefined;
79
80
  }
80
81
  const validInsightAttributeFilterPlaceholders = attributeFilters
81
- .map((filter) => {
82
- // these filters always come from useSanitizedInsightFilters, which rewrites the display form
83
- // ref to idRef(displayForm.id, "displayForm") or drops the filter -> never a uri ref here
84
- const { identifier } = filterObjRef(filter);
85
- return `{attribute_filter_selection\\(${identifier}\\)}`;
86
- })
82
+ .map((filter) =>
83
+ // these filters always come from useSanitizedInsightFilters, which rewrites the display
84
+ // form ref to the canonical placeholder ref or drops the filter -> never a uri ref here
85
+ escapeRegExp(insightAttributeFilterToPlaceholder(filterObjRef(filter))))
87
86
  .join("|");
88
87
  return {
89
88
  regex: new RegExp(`^${validInsightAttributeFilterPlaceholders}`),
@@ -94,17 +93,11 @@ const buildValidDashboardFiltersFormattingRule = (attributeFilters, attributeFil
94
93
  if (attributeFilters.length === 0) {
95
94
  return undefined;
96
95
  }
97
- const filterPlaceholders = attributeFilters.map((filter) => {
98
- const ref = filterObjRef(filter);
99
- const id = objRefToString(ref);
100
- return `{dash_attribute_filter_selection\\(${id}\\)}`;
101
- });
96
+ const filterPlaceholders = attributeFilters.map((filter) => escapeRegExp(dashboardAttributeFilterToPlaceholder(filterObjRef(filter))));
102
97
  const configPlaceholders = attributeFilterConfigs
103
- .filter((config) => !!config.displayAsLabel)
104
- .map((config) => {
105
- const id = !!config.displayAsLabel && objRefToString(config.displayAsLabel);
106
- return `{dash_attribute_filter_selection\\(${id}\\)}`;
107
- });
98
+ .map((config) => config.displayAsLabel)
99
+ .filter((displayAsLabel) => !!displayAsLabel)
100
+ .map((displayAsLabel) => escapeRegExp(dashboardAttributeFilterToPlaceholder(displayAsLabel)));
108
101
  const validDashboardAttributeFilterPlaceholders = [...filterPlaceholders, ...configPlaceholders].join("|");
109
102
  return {
110
103
  regex: new RegExp(`^${validDashboardAttributeFilterPlaceholders}`),
@@ -319,7 +312,7 @@ function useSanitizeAttributeFilter() {
319
312
  ...filter,
320
313
  negativeAttributeFilter: {
321
314
  ...filter.negativeAttributeFilter,
322
- displayForm: idRef(displayForm.id, "displayForm"),
315
+ displayForm: displayFormPlaceholderRef(displayForm),
323
316
  },
324
317
  };
325
318
  }
@@ -328,7 +321,7 @@ function useSanitizeAttributeFilter() {
328
321
  ...filter,
329
322
  positiveAttributeFilter: {
330
323
  ...filter.positiveAttributeFilter,
331
- displayForm: idRef(displayForm.id, "displayForm"),
324
+ displayForm: displayFormPlaceholderRef(displayForm),
332
325
  },
333
326
  };
334
327
  }
@@ -337,7 +330,7 @@ function useSanitizeAttributeFilter() {
337
330
  ...filter,
338
331
  arbitraryAttributeFilter: {
339
332
  ...filter.arbitraryAttributeFilter,
340
- label: idRef(displayForm.id, "displayForm"),
333
+ label: displayFormPlaceholderRef(displayForm),
341
334
  },
342
335
  };
343
336
  }
@@ -346,7 +339,7 @@ function useSanitizeAttributeFilter() {
346
339
  ...filter,
347
340
  matchAttributeFilter: {
348
341
  ...filter.matchAttributeFilter,
349
- label: idRef(displayForm.id, "displayForm"),
342
+ label: displayFormPlaceholderRef(displayForm),
350
343
  },
351
344
  };
352
345
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DashboardParametersSection.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditorParametersSections/DashboardParametersSection.tsx"],"names":[],"mappings":"AAMA,OAAO,EACH,KAAK,gBAAgB,EACrB,KAAK,+BAA+B,EACpC,KAAK,4BAA4B,EAIpC,MAAM,qBAAqB,CAAC;AAS7B,OAAO,EAAE,KAAK,mCAAmC,EAAE,MAAM,aAAa,CAAC;AAKvE,MAAM,WAAW,gCAAiC,SAAQ,mCAAmC;IACzF,gBAAgB,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACtC,4BAA4B,CAAC,EAAE,4BAA4B,EAAE,CAAC;IAC9D,sBAAsB,CAAC,EAAE,+BAA+B,EAAE,CAAC;CAC9D;AAED,wBAAgB,0BAA0B,CAAC,EACvC,gBAAgB,EAChB,4BAA4B,EAC5B,sBAAsB,EACtB,IAAI,EACJ,KAAK,GACR,EAAE,gCAAgC,kDAkFlC"}
1
+ {"version":3,"file":"DashboardParametersSection.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditorParametersSections/DashboardParametersSection.tsx"],"names":[],"mappings":"AAMA,OAAO,EACH,KAAK,gBAAgB,EACrB,KAAK,+BAA+B,EACpC,KAAK,4BAA4B,EAIpC,MAAM,qBAAqB,CAAC;AAU7B,OAAO,EAAE,KAAK,mCAAmC,EAAE,MAAM,aAAa,CAAC;AAKvE,MAAM,WAAW,gCAAiC,SAAQ,mCAAmC;IACzF,gBAAgB,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACtC,4BAA4B,CAAC,EAAE,4BAA4B,EAAE,CAAC;IAC9D,sBAAsB,CAAC,EAAE,+BAA+B,EAAE,CAAC;CAC9D;AAED,wBAAgB,0BAA0B,CAAC,EACvC,gBAAgB,EAChB,4BAA4B,EAC5B,sBAAsB,EACtB,IAAI,EACJ,KAAK,GACR,EAAE,gCAAgC,kDAkFlC"}
@@ -3,6 +3,7 @@ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-run
3
3
  import { Fragment } from "react";
4
4
  import { FormattedMessage } from "react-intl";
5
5
  import { filterLocalIdentifier, filterObjRef, objRefToString, } from "@gooddata/sdk-model";
6
+ import { dashboardAttributeFilterToPlaceholder } from "@gooddata/sdk-model/internal";
6
7
  import { MeasureValueFilterDetailsBubble } from "@gooddata/sdk-ui-filters/internal";
7
8
  import { useDashboardSelector } from "../../../../../model/react/DashboardStoreProvider.js";
8
9
  import { selectAllCatalogDisplayFormsMap, selectAllCatalogMeasuresMap, } from "../../../../../model/store/catalog/catalogSelectors.js";
@@ -24,9 +25,9 @@ export function DashboardParametersSection({ dashboardFilters, dashboardMeasureV
24
25
  const filterSecondaryIdentifier = secondaryDf?.id;
25
26
  const areDfsDifferent = filterIdentifier !== filterSecondaryIdentifier;
26
27
  return (_jsxs(Fragment, { children: [df ? (_jsx(DisplayFormParam, { item: df, iconClassName: "gd-icon-filter", onAdd: () => {
27
- onAdd(`{dash_attribute_filter_selection(${filterIdentifier})}`);
28
+ onAdd(dashboardAttributeFilterToPlaceholder(df.ref));
28
29
  }, isFilter: true })) : null, secondaryDf && areDfsDifferent ? (_jsx(DisplayFormParam, { item: secondaryDf, iconClassName: "gd-icon-filter", onAdd: () => {
29
- onAdd(`{dash_attribute_filter_selection(${filterSecondaryIdentifier})}`);
30
+ onAdd(dashboardAttributeFilterToPlaceholder(secondaryDf.ref));
30
31
  }, isFilter: true })) : null] }, index));
31
32
  }), dashboardMeasureValueFilters?.map((filter) => {
32
33
  const { measure, localIdentifier, title } = filter.dashboardMeasureValueFilter;
@@ -1 +1 @@
1
- {"version":3,"file":"DisplayFormParam.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditorParametersSections/DisplayFormParam.tsx"],"names":[],"mappings":"AAIA,OAAO,EAEH,KAAK,mCAAmC,EAE3C,MAAM,qBAAqB,CAAC;AAU7B,UAAU,OAAO;IACb,IAAI,EAAE,mCAAmC,CAAC;IAC1C,KAAK,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,wBAAgB,gBAAgB,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,EAAE,OAAO,2CAiCjF"}
1
+ {"version":3,"file":"DisplayFormParam.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditorParametersSections/DisplayFormParam.tsx"],"names":[],"mappings":"AAIA,OAAO,EAEH,KAAK,mCAAmC,EAE3C,MAAM,qBAAqB,CAAC;AAW7B,UAAU,OAAO;IACb,IAAI,EAAE,mCAAmC,CAAC;IAC1C,KAAK,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,wBAAgB,gBAAgB,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,EAAE,OAAO,2CAiCjF"}
@@ -2,6 +2,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  // (C) 2020-2026 GoodData Corporation
3
3
  import { useIntl } from "react-intl";
4
4
  import { dashboardAttributeFilterItemTitle, } from "@gooddata/sdk-model";
5
+ import { attributeIdentifierToPlaceholder, displayFormPlaceholderRef } from "@gooddata/sdk-model/internal";
5
6
  import { useWorkspaceStrict } from "@gooddata/sdk-ui";
6
7
  import { useDashboardSelector } from "../../../../../model/react/DashboardStoreProvider.js";
7
8
  import { selectAllCatalogAttributesMap } from "../../../../../model/store/catalog/catalogSelectors.js";
@@ -17,7 +18,7 @@ export function DisplayFormParam({ item, onAdd, iconClassName, isFilter }) {
17
18
  const defaultTitle = y?.attribute.title || "";
18
19
  const filterTitle = dashboardFilter ? dashboardAttributeFilterItemTitle(dashboardFilter) : undefined;
19
20
  return (_jsx(Parameter, { name: isFilter ? (filterTitle ?? defaultTitle) : defaultTitle, description: item.title, detailContent: _jsx(AttributeDisplayFormParameterDetail, { title: y?.attribute.title || "", label: item.title, type: item.displayFormType, projectId: projectId, displayFormRef: item.ref, showValues // TODO
20
- : true }), iconClassName: iconClassName ?? getDisplayFormIcon(item.displayFormType), onAdd: () => onAdd(`{attribute_title(${item.id})}`), intl: intl }, item.id));
21
+ : true }), iconClassName: iconClassName ?? getDisplayFormIcon(item.displayFormType), onAdd: () => onAdd(attributeIdentifierToPlaceholder(displayFormPlaceholderRef(item))), intl: intl }, item.id));
21
22
  }
22
23
  const getDisplayFormIcon = (type) => {
23
24
  switch (type) {
@@ -1 +1 @@
1
- {"version":3,"file":"InsightParametersSection.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditorParametersSections/InsightParametersSection.tsx"],"names":[],"mappings":"AAIA,OAAO,EACH,KAAK,gBAAgB,EAErB,KAAK,mBAAmB,EACxB,KAAK,MAAM,EAWd,MAAM,qBAAqB,CAAC;AAU7B,OAAO,EAAE,KAAK,yBAAyB,EAAE,KAAK,mCAAmC,EAAE,MAAM,aAAa,CAAC;AAKvG,MAAM,WAAW,8BAA+B,SAAQ,mCAAmC;IACvF,qBAAqB,CAAC,EAAE,yBAAyB,EAAE,CAAC;IACpD,4BAA4B,EAAE,OAAO,CAAC;IACtC,cAAc,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACpC,0BAA0B,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACnD,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,wBAAwB,CAAC,EACrC,qBAAqB,EACrB,4BAA4B,EAC5B,cAAc,EACd,0BAA0B,EAC1B,SAAS,EACT,IAAI,EACJ,KAAK,GACR,EAAE,8BAA8B,2CAmFhC"}
1
+ {"version":3,"file":"InsightParametersSection.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditorParametersSections/InsightParametersSection.tsx"],"names":[],"mappings":"AAIA,OAAO,EACH,KAAK,gBAAgB,EAErB,KAAK,mBAAmB,EACxB,KAAK,MAAM,EAWd,MAAM,qBAAqB,CAAC;AAW7B,OAAO,EAAE,KAAK,yBAAyB,EAAE,KAAK,mCAAmC,EAAE,MAAM,aAAa,CAAC;AAKvG,MAAM,WAAW,8BAA+B,SAAQ,mCAAmC;IACvF,qBAAqB,CAAC,EAAE,yBAAyB,EAAE,CAAC;IACpD,4BAA4B,EAAE,OAAO,CAAC;IACtC,cAAc,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACpC,0BAA0B,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACnD,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,wBAAwB,CAAC,EACrC,qBAAqB,EACrB,4BAA4B,EAC5B,cAAc,EACd,0BAA0B,EAC1B,SAAS,EACT,IAAI,EACJ,KAAK,GACR,EAAE,8BAA8B,2CAmFhC"}
@@ -2,6 +2,7 @@ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-run
2
2
  // (C) 2020-2026 GoodData Corporation
3
3
  import { FormattedMessage } from "react-intl";
4
4
  import { areObjRefsEqual, filterObjRef, insightMeasures, isLocalIdRef, measureAlias, measureItem, measureLocalId, measureTitle, objRefToString, } from "@gooddata/sdk-model";
5
+ import { insightAttributeFilterToPlaceholder } from "@gooddata/sdk-model/internal";
5
6
  import { MeasureValueFilterDetailsBubble } from "@gooddata/sdk-ui-filters/internal";
6
7
  import { useDashboardSelector } from "../../../../../model/react/DashboardStoreProvider.js";
7
8
  import { selectAllCatalogDisplayFormsMap, selectAllCatalogMeasuresMap, } from "../../../../../model/store/catalog/catalogSelectors.js";
@@ -20,7 +21,7 @@ export function InsightParametersSection({ attributeDisplayForms, loadingAttribu
20
21
  (insightMeasureValueFilters && insightMeasureValueFilters.length > 0) ? (_jsxs(_Fragment, { children: [_jsx(DropdownSectionHeader, { children: _jsx(FormattedMessage, { id: "configurationPanel.drillIntoUrl.editor.insightParametersSectionLabel" }) }), loadingAttributeDisplayForms ? (_jsx("div", { className: "gd-drill-to-url-section-loading s-drill-to-custom-url-attr-section-loading", children: _jsx("div", { className: "gd-spinner small" }) })) : (attributeDisplayForms?.map((item) => (_jsx(DisplayFormParam, { item: item.displayForm, onAdd: onAdd }, item.displayForm.id)))), insightFilters?.map((filter, index) => {
21
22
  const displayFormRef = filterObjRef(filter);
22
23
  const df = catalogDisplayForms.get(displayFormRef);
23
- return (df && (_jsx(DisplayFormParam, { item: df, onAdd: () => onAdd(`{attribute_filter_selection(${df.id})}`), iconClassName: "gd-icon-filter", isFilter: true }, index)));
24
+ return (df && (_jsx(DisplayFormParam, { item: df, onAdd: () => onAdd(insightAttributeFilterToPlaceholder(df.ref)), iconClassName: "gd-icon-filter", isFilter: true }, index)));
24
25
  }), insightMeasureValueFilters?.map((filter) => {
25
26
  const { measure, localIdentifier } = filter.measureValueFilter;
26
27
  const insightMeasure = getInsightMeasure(measure, measures);
@@ -1 +1 @@
1
- {"version":3,"file":"drillToCustomUrlUtils.d.ts","sourceRoot":"","sources":["../../../../src/presentation/drill/utils/drillToCustomUrlUtils.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,KAAK,mCAAmC,EACxC,KAAK,iBAAiB,EAEzB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,KAAK,WAAW,EAAoC,MAAM,kBAAkB,CAAC;AAEtF;;;;;GAKG;AACH,wBAAgB,oCAAoC,CAChD,eAAe,EAAE,iBAAiB,EAClC,UAAU,EAAE,WAAW,EACvB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,mCAAmC,CAAC,GACrE,MAAM,EAAE,CAoCV"}
1
+ {"version":3,"file":"drillToCustomUrlUtils.d.ts","sourceRoot":"","sources":["../../../../src/presentation/drill/utils/drillToCustomUrlUtils.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,KAAK,mCAAmC,EACxC,KAAK,iBAAiB,EAEzB,MAAM,qBAAqB,CAAC;AAK7B,OAAO,EAAE,KAAK,WAAW,EAAoC,MAAM,kBAAkB,CAAC;AAEtF;;;;;GAKG;AACH,wBAAgB,oCAAoC,CAChD,eAAe,EAAE,iBAAiB,EAClC,UAAU,EAAE,WAAW,EACvB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,mCAAmC,CAAC,GACrE,MAAM,EAAE,CAsCV"}
@@ -1,6 +1,6 @@
1
1
  // (C) 2026 GoodData Corporation
2
2
  import { areObjRefsEqual, } from "@gooddata/sdk-model";
3
- import { getAttributeIdentifiersPlaceholdersFromUrl } from "@gooddata/sdk-model/internal";
3
+ import { displayFormPlaceholderRef, getAttributeIdentifiersPlaceholdersFromUrl, } from "@gooddata/sdk-model/internal";
4
4
  import { isDrillIntersectionAttributeItem } from "@gooddata/sdk-ui";
5
5
  /**
6
6
  * Used to determine if drill to URL actions should be disabled
@@ -23,8 +23,10 @@ export function getDrillToCustomUrlMissingAttributes(drillDefinition, drillEvent
23
23
  const missingAttributeTitles = [];
24
24
  for (const placeholder of attributePlaceholders) {
25
25
  const displayForm = displayFormsMap[placeholder.identifier];
26
- // Configuration error handled elsewhere
27
- if (!displayForm) {
26
+ // Configuration error handled elsewhere. The map is keyed by bare identifier, which a computed
27
+ // attribute can share with a label, so the kind of object is checked too rather than reporting
28
+ // whichever of the two happens to be in the map.
29
+ if (!displayForm || !areObjRefsEqual(displayFormPlaceholderRef(displayForm), placeholder.ref)) {
28
30
  continue;
29
31
  }
30
32
  // Check if the attribute (that this display form belongs to) is in the intersection
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultFilterBar.d.ts","sourceRoot":"","sources":["../../../../src/presentation/filterBar/filterBar/DefaultFilterBar.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAe,MAAM,OAAO,CAAC;AAgFvD,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC;AAGlD;;GAEG;AACH,eAAO,MAAM,iBAAiB,QAAO,eA4OpC,CAAC;AAEF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,eAAe,GAAG,YAAY,CAsIrE"}
1
+ {"version":3,"file":"DefaultFilterBar.d.ts","sourceRoot":"","sources":["../../../../src/presentation/filterBar/filterBar/DefaultFilterBar.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAe,MAAM,OAAO,CAAC;AAkFvD,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC;AAGlD;;GAEG;AACH,eAAO,MAAM,iBAAiB,QAAO,eA4OpC,CAAC;AAEF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,eAAe,GAAG,YAAY,CA8IrE"}
@@ -6,8 +6,9 @@ import { generateDateFilterLocalIdentifier } from "@gooddata/sdk-backend-base";
6
6
  import { DashboardDateFilterConfigModeValues, DashboardParameterModeValues, areObjRefsEqual, dashboardAttributeFilterItemDisplayForm, dashboardAttributeFilterItemLocalIdentifier, dashboardFilterLocalIdentifier, isAllTimeDashboardDateFilter, isDashboardAttributeFilter, isDashboardAttributeFilterItem, isDashboardDateFilter, isDashboardMeasureValueFilter, objRefToString, } from "@gooddata/sdk-model";
7
7
  import { convertDashboardAttributeFilterElementsValuesToUris } from "../../../_staging/dashboard/legacyFilterConvertors.js";
8
8
  import { setDashboardAttributeFilterConfigDisplayAsLabel } from "../../../model/commands/dashboard.js";
9
- import { changeAttributeFilterSelection, changeDateFilterSelection, changeMeasureValueFilterCondition, changeMigratedAttributeFilterSelection, changeWorkingAttributeFilterSelection, changeWorkingMeasureValueFilterCondition, clearDateFilterSelection, replaceAttributeFilterItemSelection, replaceWorkingAttributeFilterItemSelection, setAttributeFilterDisplayForm, } from "../../../model/commands/filters.js";
9
+ import { changeAttributeFilterSelection, changeDateFilterSelection, changeMeasureValueFilterCondition, changeMigratedAttributeFilterSelection, changeWorkingAttributeFilterSelection, changeWorkingMeasureValueFilterCondition, clearDateFilterSelection, removeRestrictedFilters, replaceAttributeFilterItemSelection, replaceWorkingAttributeFilterItemSelection, setAttributeFilterDisplayForm, } from "../../../model/commands/filters.js";
10
10
  import { useDashboardDispatch, useDashboardSelector } from "../../../model/react/DashboardStoreProvider.js";
11
+ import { useDispatchDashboardCommand } from "../../../model/react/useDispatchDashboardCommand.js";
11
12
  import { selectSupportsElementUris } from "../../../model/store/backendCapabilities/backendCapabilitiesSelectors.js";
12
13
  import { selectEnableDashboardFilterGroups, selectEnableMeasureValueFilterKD, selectEnableParameters, selectIsApplyFiltersAllAtOnceEnabledAndSet, selectIsExport, } from "../../../model/store/config/configSelectors.js";
13
14
  import { selectRestrictedDashboardFilterCount } from "../../../model/store/filtering/dashboardFilterSelectors.js";
@@ -161,6 +162,8 @@ export function DefaultFilterBar(props) {
161
162
  const isExport = useDashboardSelector(selectIsExport);
162
163
  const { DashboardDateFilterComponentProvider, RestrictedFiltersPlaceholderComponentProvider } = useDashboardComponentsContext();
163
164
  const restrictedFilterCount = useDashboardSelector(selectRestrictedDashboardFilterCount);
165
+ const dispatchRemoveRestrictedFilters = useDispatchDashboardCommand(removeRestrictedFilters);
166
+ const removeRestrictedFiltersFromDashboard = useCallback(() => dispatchRemoveRestrictedFilters(), [dispatchRemoveRestrictedFilters]);
164
167
  const canAddMoreFilters = useDashboardSelector(selectCanAddMoreFilters);
165
168
  const haveAllFiltersHidden = areAllFiltersHidden(draggableFiltersWithPlaceholder, commonDateFilterMode, attributeFiltersModeMap, dateFiltersModeMap, measureValueFiltersModeMap);
166
169
  const isApplyAllAtOnceEnabledAndSet = useDashboardSelector(selectIsApplyFiltersAllAtOnceEnabledAndSet);
@@ -179,7 +182,7 @@ export function DefaultFilterBar(props) {
179
182
  };
180
183
  const CustomCommonDateFilterComponent = DashboardDateFilterComponentProvider(commonDateFilter);
181
184
  const CustomRestrictedFiltersPlaceholderComponent = RestrictedFiltersPlaceholderComponentProvider();
182
- return (_jsxs(DefaultFilterBarContainer, { children: [restrictedFilterCount > 0 ? (_jsx(CustomRestrictedFiltersPlaceholderComponent, { count: restrictedFilterCount })) : null, _jsx("div", { className: classNames("dash-filters-date", {
185
+ return (_jsxs(DefaultFilterBarContainer, { children: [restrictedFilterCount > 0 ? (_jsx(CustomRestrictedFiltersPlaceholderComponent, { count: restrictedFilterCount, onRemove: isInEditMode ? removeRestrictedFiltersFromDashboard : undefined })) : null, _jsx("div", { className: classNames("dash-filters-date", {
183
186
  "dash-filter-is-edit-mode": isInEditMode,
184
187
  }), children: commonDateFilterMode === DashboardDateFilterConfigModeValues.HIDDEN ? (_jsx(HiddenDashboardDateFilter, {})) : (_jsxs(_Fragment, { children: [_jsx(CustomCommonDateFilterComponent, { filter: commonDateFilter, workingFilter: isApplyAllAtOnceEnabledAndSet ? commonWorkingDateFilter : undefined, onFilterChanged: onDateFilterChanged, config: commonDateFilterComponentConfig, readonly: commonDateFilterMode === DashboardDateFilterConfigModeValues.READONLY }), _jsx(DraggableFilterDropZoneHint, { placement: "outside", hintPosition: "next", targetIndex: 0, onAddAttributePlaceholder: addDraggableFilterPlaceholder, acceptPlaceholder: canAddMoreFilters })] })) }), groupedFilterItems.map((filterItem) => (_jsx(DefaultFilterBarItem, { ...props, item: filterItem, autoOpenFilter: autoOpenFilter, addDraggableFilterPlaceholder: addDraggableFilterPlaceholder, closeAttributeSelection: closeAttributeSelection, selectDraggableFilter: selectDraggableFilter, onCloseAttributeFilter: onCloseAttributeFilter }, filterItem.filterIndex))), enableParameters
185
188
  ? dashboardParameters.map((parameter) => (_jsx(DashboardParameterFilter, { parameter: parameter }, objRefToString(parameter.ref))))
@@ -6,9 +6,11 @@
6
6
  export interface IRestrictedFiltersPlaceholderProps {
7
7
  /** How many filters were left out of the dashboard. */
8
8
  count: number;
9
+ /** Removes the filters from the dashboard for good; absent unless the dashboard is being edited. */
10
+ onRemove?: () => void;
9
11
  }
10
12
  /**
11
13
  * Reports filters left out because the current user may not read the objects they filter by.
12
14
  */
13
- export declare function RestrictedFiltersPlaceholder({ count }: IRestrictedFiltersPlaceholderProps): import("react/jsx-runtime").JSX.Element;
15
+ export declare function RestrictedFiltersPlaceholder({ count, onRemove }: IRestrictedFiltersPlaceholderProps): import("react/jsx-runtime").JSX.Element;
14
16
  //# sourceMappingURL=RestrictedFiltersPlaceholder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RestrictedFiltersPlaceholder.d.ts","sourceRoot":"","sources":["../../../../src/presentation/filterBar/filterBar/RestrictedFiltersPlaceholder.tsx"],"names":[],"mappings":"AAMA;;;;GAIG;AACH,MAAM,WAAW,kCAAkC;IAC/C,uDAAuD;IACvD,KAAK,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,EAAE,KAAK,EAAE,EAAE,kCAAkC,2CAwBzF"}
1
+ {"version":3,"file":"RestrictedFiltersPlaceholder.d.ts","sourceRoot":"","sources":["../../../../src/presentation/filterBar/filterBar/RestrictedFiltersPlaceholder.tsx"],"names":[],"mappings":"AAQA;;;;GAIG;AACH,MAAM,WAAW,kCAAkC;IAC/C,uDAAuD;IACvD,KAAK,EAAE,MAAM,CAAC;IAEd,oGAAoG;IACpG,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CACzB;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,kCAAkC,2CA0GnG"}
@@ -1,11 +1,42 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  // (C) 2026 GoodData Corporation
3
+ import { useRef, useState } from "react";
3
4
  import { FormattedMessage, useIntl } from "react-intl";
4
- import { UiTooltip } from "@gooddata/sdk-ui-kit";
5
+ import { UiButton, UiFocusManager, UiTooltip, getFocusableElements } from "@gooddata/sdk-ui-kit";
5
6
  /**
6
7
  * Reports filters left out because the current user may not read the objects they filter by.
7
8
  */
8
- export function RestrictedFiltersPlaceholder({ count }) {
9
+ export function RestrictedFiltersPlaceholder({ count, onRemove }) {
9
10
  const intl = useIntl();
10
- return (_jsx("span", { className: "dash-filters-restricted", children: _jsx(UiTooltip, { triggerBy: ["hover", "focus"], content: intl.formatMessage({ id: "filterBar.restrictedFilters.reason" }, { count }), anchor: _jsxs("span", { className: "dash-filters-restricted-notice", tabIndex: 0, "data-testid": "restricted-filters", children: [_jsx("span", { className: "gd-icon-lock" }), _jsx(FormattedMessage, { id: "filterBar.restrictedFilters", values: { count } })] }) }) }));
11
+ const wrapperRef = useRef(null);
12
+ // hovering must not steal the focus, so only a deliberate open moves it into the tooltip
13
+ const [isOpenedForAction, setIsOpenedForAction] = useState(false);
14
+ const openForAction = () => setIsOpenedForAction(true);
15
+ const withFocusInside = (content, onClose) => isOpenedForAction ? (_jsx(UiFocusManager, { enableAutofocus: true, enableReturnFocusOnUnmount: true, tabOutHandler: () => {
16
+ setIsOpenedForAction(false);
17
+ onClose();
18
+ }, children: content })) : (content);
19
+ // the notice goes away with the filters it reports, so the focus has to move out of it first
20
+ const focusNextControl = () => {
21
+ const wrapper = wrapperRef.current;
22
+ const { focusableElements } = getFocusableElements(wrapper?.parentElement);
23
+ focusableElements.find((element) => !wrapper?.contains(element))?.focus();
24
+ };
25
+ const noticeText = intl.formatMessage({ id: "filterBar.restrictedFilters" }, { count });
26
+ const notice = (_jsxs(_Fragment, { children: [_jsx("span", { className: "gd-icon-lock" }), noticeText] }));
27
+ return (_jsx("span", { className: "dash-filters-restricted", ref: wrapperRef, children: _jsx(UiTooltip, { anchorWrapperStyles: { display: "flex", flex: 1 }, accessibilityConfig: isOpenedForAction ? { role: "dialog", ariaLabel: noticeText } : undefined, triggerBy: onRemove ? ["hover", "focus", "click"] : ["hover", "focus"], onOpenChange: (open) => {
28
+ if (!open) {
29
+ setIsOpenedForAction(false);
30
+ }
31
+ }, content: ({ onClose, type }) => {
32
+ const reason = (_jsx(FormattedMessage, { id: "filterBar.restrictedFilters.reason", values: { count } }));
33
+ if (type === "screen-reader") {
34
+ return reason;
35
+ }
36
+ return withFocusInside(_jsxs("div", { className: "dash-filters-restricted-tooltip", children: [reason, onRemove ? (_jsx(UiButton, { variant: "tooltip", size: "small", label: intl.formatMessage({ id: "filterBar.restrictedFilters.remove" }), onClick: () => {
37
+ focusNextControl();
38
+ onClose();
39
+ onRemove();
40
+ } })) : null] }), onClose);
41
+ }, anchor: onRemove ? (_jsx("button", { type: "button", className: "dash-filters-restricted-notice dash-filters-restricted-notice--actionable", "data-testid": "restricted-filters", "aria-haspopup": "dialog", onClick: openForAction, children: notice })) : (_jsx("span", { className: "dash-filters-restricted-notice", tabIndex: 0, "data-testid": "restricted-filters", children: notice })) }) }));
11
42
  }
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @internal
3
+ */
4
+ export declare function InsightNotSavedDialog(): import("react/jsx-runtime").JSX.Element | null;
5
+ //# sourceMappingURL=InsightNotSavedDialog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InsightNotSavedDialog.d.ts","sourceRoot":"","sources":["../../../src/presentation/insightNotSavedDialog/InsightNotSavedDialog.tsx"],"names":[],"mappings":"AAaA;;GAEG;AACH,wBAAgB,qBAAqB,mDAuDpC"}
@@ -0,0 +1,29 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ // (C) 2026 GoodData Corporation
3
+ import { useCallback, useState } from "react";
4
+ import { useIntl } from "react-intl";
5
+ import { ConfirmDialog, Typography, UiButton, UiIcon } from "@gooddata/sdk-ui-kit";
6
+ import { useDashboardDispatch, useDashboardSelector } from "../../model/react/DashboardStoreProvider.js";
7
+ import { selectDraftInsightsUsedOnDashboard } from "../../model/store/insights/insightsSelectors.js";
8
+ import { uiActions } from "../../model/store/ui/index.js";
9
+ import { selectIsInsightNotSavedDialogOpen } from "../../model/store/ui/uiSelectors.js";
10
+ /**
11
+ * @internal
12
+ */
13
+ export function InsightNotSavedDialog() {
14
+ const intl = useIntl();
15
+ const dispatch = useDashboardDispatch();
16
+ const [showVisualisationsList, setShowVisualisationsList] = useState(true);
17
+ const isInsightNotSavedDialogOpen = useDashboardSelector(selectIsInsightNotSavedDialogOpen);
18
+ const submitDialog = useCallback(() => {
19
+ dispatch(uiActions.confirmInsightNotSavedDialogSubmit());
20
+ }, [dispatch]);
21
+ const closeDialog = useCallback(() => dispatch(uiActions.closeInsightNotSavedDialog()), [dispatch]);
22
+ const unsavedInsights = useDashboardSelector(selectDraftInsightsUsedOnDashboard);
23
+ if (!isInsightNotSavedDialogOpen) {
24
+ return null;
25
+ }
26
+ return (_jsx(ConfirmDialog, { isPositive: true, dataTestId: "s-insight-not-saved-dialog", headline: intl.formatMessage({ id: "insightNotSavedDialog.headline" }), submitButtonText: intl.formatMessage({ id: "insightNotSavedDialog.saveAll" }), cancelButtonText: intl.formatMessage({ id: "insightNotSavedDialog.close" }), onCancel: closeDialog, onSubmit: submitDialog, children: _jsxs("div", { className: "gdc-insight-not-saved-dialog", children: [_jsx(Typography, { tagName: "p", children: intl.formatMessage({ id: "insightNotSavedDialog.message" }) }), _jsx(UiButton, { iconBeforeSize: 12, variant: "dropdownInline", label: intl.formatMessage({ id: "insightNotSavedDialog.visualisations" }, {
27
+ count: unsavedInsights.length,
28
+ }), iconBefore: showVisualisationsList ? "navigateDown" : "navigateRight", onClick: () => setShowVisualisationsList(!showVisualisationsList) }), showVisualisationsList ? (_jsx("ul", { children: unsavedInsights.map((insight) => (_jsxs("li", { children: [_jsx(UiIcon, { type: "visualization", size: 18 }), " ", insight.insight.title] }, insight.insight.identifier))) })) : null] }) }));
29
+ }
@@ -1,7 +1,13 @@
1
1
  export declare const de_DE: {
2
+ "dashboard.contractExpired.trial.title": string;
3
+ "dashboard.contractExpired.trial.description": string;
4
+ "dashboard.contractExpired.nonTrial.title": string;
5
+ "dashboard.contractExpired.nonTrial.description": string;
6
+ "dashboard.contractExpired.buttonTitle": string;
2
7
  loading: string;
3
8
  untitled: string;
4
9
  empty_value: string;
10
+ deleted_value: string;
5
11
  "gs.list.cancel": string;
6
12
  "gs.list.apply": string;
7
13
  "gs.list.only": string;
@@ -23,6 +29,9 @@ export declare const de_DE: {
23
29
  "messages.drill.InteractionConfiguredSuccess": string;
24
30
  "messages.drill.InteractionUpdatedSuccess": string;
25
31
  "filterBar.label": string;
32
+ "filterBar.restrictedFilters.remove": string;
33
+ "filterBar.restrictedFilters.reason": string;
34
+ "filterBar.restrictedFilters": string;
26
35
  "filterBar.showAll": string;
27
36
  "filterBar.showLess": string;
28
37
  "filterBar.filterListAutoExpanded": string;
@@ -137,6 +146,7 @@ export declare const de_DE: {
137
146
  "deleteDashboardDialog.schedules": string;
138
147
  "deleteWidgetDialog.headline": string;
139
148
  "deleteWidgetDialog.objectsMessage": string;
149
+ "deleteWidgetDialog.objectsMessage.restricted": string;
140
150
  "deleteWidgetDialog.alerts": string;
141
151
  "deleteWidgetDialog.schedules": string;
142
152
  "create.dashboard": string;
@@ -416,6 +426,7 @@ export declare const de_DE: {
416
426
  "attributesDropdown.noConnectionMessage": string;
417
427
  "attributesDropdown.details.dataset": string;
418
428
  "attributesDropdown.details.values": string;
429
+ "attributesDropdown.details.definedAs": string;
419
430
  "attributesDropdown.details.shortening_decoration": string;
420
431
  "layout.header.characters.left": string;
421
432
  "layout.header.add.title.placeholder": string;
@@ -483,6 +494,7 @@ export declare const de_DE: {
483
494
  "configurationPanel.vizCantBeFilteredByAttribute": string;
484
495
  "configurationPanel.kpiCantBeFilteredByAttribute": string;
485
496
  "configurationPanel.vizCantBeFilteredByDate": string;
497
+ "configurationPanel.dateDatasetsLoadFailed": string;
486
498
  "configurationPanel.vizCantBeFilteredByMeasureValueFilter": string;
487
499
  "configurationPanel.mvfBlockedByRankingFilter": string;
488
500
  "configurationPanel.mvfMissingMeasure": string;
@@ -502,6 +514,7 @@ export declare const de_DE: {
502
514
  "configurationPanel.drillConfig.drillIntoInsight": string;
503
515
  "configurationPanel.drillConfig.drillDown": string;
504
516
  "configurationPanel.drillConfig.disableDrillDownTooltip": string;
517
+ "configurationPanel.drillConfig.computedAttributeDrillDownTooltip": string;
505
518
  "configurationPanel.drillConfig.drillIntoUrl": string;
506
519
  "configurationPanel.drillConfig.drillIntoUrl.invalidCustomUrl": string;
507
520
  "configurationPanel.drillConfig.select": string;
@@ -629,6 +642,7 @@ export declare const de_DE: {
629
642
  "richText.deleteDialog.header": string;
630
643
  "richText.deleteDialog.message": string;
631
644
  "richText.emptyContent": string;
645
+ "visualizationSwitcher.restrictedEntry": string;
632
646
  "visualizationSwitcher.emptyContent": string;
633
647
  "visualizationSwitcherToolbar.visualizationsList.header": string;
634
648
  "visualizationSwitcherToolbar.visualizationsList.tooltip": string;
@@ -809,6 +823,7 @@ export declare const de_DE: {
809
823
  "granularity.hour": string;
810
824
  "granularity.minute": string;
811
825
  "widget.options.menu.export": string;
826
+ "insightMenu.restrictedWidget.options": string;
812
827
  "menu.close": string;
813
828
  "controlButtons.asTable": string;
814
829
  "controlButtons.asOriginal": string;
@@ -1 +1 @@
1
- {"version":3,"file":"de-DE.localization-bundle.d.ts","sourceRoot":"","sources":["../../../../src/presentation/localization/bundles/de-DE.localization-bundle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"de-DE.localization-bundle.d.ts","sourceRoot":"","sources":["../../../../src/presentation/localization/bundles/de-DE.localization-bundle.ts"],"names":[],"mappings":"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"}