@gooddata/sdk-ui-dashboard 11.58.0-alpha.2 → 11.58.0-alpha.4

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 (274) hide show
  1. package/NOTICE +8 -8
  2. package/esm/__version.d.ts +1 -1
  3. package/esm/__version.js +1 -1
  4. package/esm/index.d.ts +5 -5
  5. package/esm/index.d.ts.map +1 -1
  6. package/esm/index.js +3 -3
  7. package/esm/internal.d.ts +1 -0
  8. package/esm/internal.d.ts.map +1 -1
  9. package/esm/internal.js +1 -0
  10. package/esm/model/DashboardTester.d.ts.map +1 -1
  11. package/esm/model/DashboardTester.js +7 -1
  12. package/esm/model/commandHandlers/common/validateDrillToCustomUrlParams.d.ts.map +1 -1
  13. package/esm/model/commandHandlers/common/validateDrillToCustomUrlParams.js +6 -1
  14. package/esm/model/commandHandlers/common/validateDrills.d.ts.map +1 -1
  15. package/esm/model/commandHandlers/common/validateDrills.js +12 -3
  16. package/esm/model/commandHandlers/dashboard/dashboardDrillReferences.d.ts +4 -0
  17. package/esm/model/commandHandlers/dashboard/dashboardDrillReferences.d.ts.map +1 -0
  18. package/esm/model/commandHandlers/dashboard/dashboardDrillReferences.js +53 -0
  19. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/index.d.ts.map +1 -1
  20. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/index.js +13 -6
  21. package/esm/model/commandHandlers/dashboard/saveAsDashboardHandler.d.ts.map +1 -1
  22. package/esm/model/commandHandlers/dashboard/saveAsDashboardHandler.js +4 -1
  23. package/esm/model/commandHandlers/dashboard/saveDashboardHandler.d.ts.map +1 -1
  24. package/esm/model/commandHandlers/dashboard/saveDashboardHandler.js +30 -6
  25. package/esm/model/commandHandlers/drill/drillToAttributeUrlHandler.d.ts.map +1 -1
  26. package/esm/model/commandHandlers/drill/drillToAttributeUrlHandler.js +2 -0
  27. package/esm/model/commandHandlers/drill/drillToCustomUrlHandler.d.ts.map +1 -1
  28. package/esm/model/commandHandlers/drill/drillToCustomUrlHandler.js +2 -0
  29. package/esm/model/commandHandlers/drill/drillToDashboardHandler.d.ts.map +1 -1
  30. package/esm/model/commandHandlers/drill/drillToDashboardHandler.js +2 -0
  31. package/esm/model/commandHandlers/drill/drillToInsightHandler.d.ts.map +1 -1
  32. package/esm/model/commandHandlers/drill/drillToInsightHandler.js +3 -1
  33. package/esm/model/commandHandlers/drill/resolveDrillToCustomUrl.d.ts.map +1 -1
  34. package/esm/model/commandHandlers/drill/resolveDrillToCustomUrl.js +30 -29
  35. package/esm/model/commandHandlers/drill/validateDrillAccess.d.ts +6 -0
  36. package/esm/model/commandHandlers/drill/validateDrillAccess.d.ts.map +1 -0
  37. package/esm/model/commandHandlers/drill/validateDrillAccess.js +10 -0
  38. package/esm/model/commandHandlers/parameters/filterParameterDependenciesWorker.d.ts +45 -0
  39. package/esm/model/commandHandlers/parameters/filterParameterDependenciesWorker.d.ts.map +1 -0
  40. package/esm/model/commandHandlers/parameters/filterParameterDependenciesWorker.js +99 -0
  41. package/esm/model/commandHandlers/parameters/insightParameterDependenciesWorker.d.ts +11 -0
  42. package/esm/model/commandHandlers/parameters/insightParameterDependenciesWorker.d.ts.map +1 -0
  43. package/esm/model/commandHandlers/parameters/insightParameterDependenciesWorker.js +71 -0
  44. package/esm/model/commandHandlers/parameters/loadFilterParameterDependencies.d.ts +22 -0
  45. package/esm/model/commandHandlers/parameters/loadFilterParameterDependencies.d.ts.map +1 -0
  46. package/esm/model/commandHandlers/parameters/loadFilterParameterDependencies.js +39 -0
  47. package/esm/model/commandHandlers/parameters/loadInsightParameterDependencies.d.ts +21 -0
  48. package/esm/model/commandHandlers/parameters/loadInsightParameterDependencies.d.ts.map +1 -0
  49. package/esm/model/commandHandlers/parameters/loadInsightParameterDependencies.js +86 -0
  50. package/esm/model/react/useInitializeDashboardStore.d.ts.map +1 -1
  51. package/esm/model/react/useInitializeDashboardStore.js +4 -0
  52. package/esm/model/react/useWidgetExecConfig.d.ts +4 -4
  53. package/esm/model/react/useWidgetExecConfig.d.ts.map +1 -1
  54. package/esm/model/react/useWidgetExecConfig.js +2 -2
  55. package/esm/model/store/catalog/catalogReducers.d.ts +16 -4
  56. package/esm/model/store/catalog/catalogReducers.d.ts.map +1 -1
  57. package/esm/model/store/catalog/catalogReducers.js +15 -3
  58. package/esm/model/store/catalog/catalogSelectors.d.ts +47 -7
  59. package/esm/model/store/catalog/catalogSelectors.d.ts.map +1 -1
  60. package/esm/model/store/catalog/catalogSelectors.js +33 -7
  61. package/esm/model/store/catalog/catalogState.d.ts +30 -9
  62. package/esm/model/store/catalog/catalogState.d.ts.map +1 -1
  63. package/esm/model/store/catalog/catalogState.js +2 -1
  64. package/esm/model/store/catalog/index.d.ts +4 -1
  65. package/esm/model/store/catalog/index.d.ts.map +1 -1
  66. package/esm/model/store/filtering/dashboardFilterSelectors.d.ts +8 -2
  67. package/esm/model/store/filtering/dashboardFilterSelectors.d.ts.map +1 -1
  68. package/esm/model/store/filtering/dashboardFilterSelectors.js +41 -25
  69. package/esm/model/store/filtering/types.d.ts +5 -0
  70. package/esm/model/store/filtering/types.d.ts.map +1 -1
  71. package/esm/model/store/tabs/layout/layoutSelectors.d.ts.map +1 -1
  72. package/esm/model/store/tabs/layout/layoutSelectors.js +2 -1
  73. package/esm/model/store/tabs/parameters/parametersHelpers.d.ts +42 -8
  74. package/esm/model/store/tabs/parameters/parametersHelpers.d.ts.map +1 -1
  75. package/esm/model/store/tabs/parameters/parametersHelpers.js +88 -19
  76. package/esm/model/store/tabs/parameters/parametersSelectors.d.ts +13 -6
  77. package/esm/model/store/tabs/parameters/parametersSelectors.d.ts.map +1 -1
  78. package/esm/model/store/tabs/parameters/parametersSelectors.js +24 -13
  79. package/esm/model/store/ui/index.d.ts +1 -0
  80. package/esm/model/store/ui/index.d.ts.map +1 -1
  81. package/esm/model/store/ui/uiReducers.d.ts +5 -1
  82. package/esm/model/store/ui/uiReducers.d.ts.map +1 -1
  83. package/esm/model/store/ui/uiReducers.js +8 -4
  84. package/esm/model/store/ui/uiSelectors.d.ts +5 -1
  85. package/esm/model/store/ui/uiSelectors.d.ts.map +1 -1
  86. package/esm/model/store/ui/uiSelectors.js +4 -0
  87. package/esm/model/store/ui/uiState.d.ts +2 -1
  88. package/esm/model/store/ui/uiState.d.ts.map +1 -1
  89. package/esm/model/store/ui/uiState.js +1 -0
  90. package/esm/model/store/widgetDrills/drillRestrictionSelectors.d.ts +23 -0
  91. package/esm/model/store/widgetDrills/drillRestrictionSelectors.d.ts.map +1 -0
  92. package/esm/model/store/widgetDrills/drillRestrictionSelectors.js +5 -0
  93. package/esm/model/store/widgetDrills/drillRestrictionUtils.d.ts +5 -0
  94. package/esm/model/store/widgetDrills/drillRestrictionUtils.d.ts.map +1 -0
  95. package/esm/model/store/widgetDrills/drillRestrictionUtils.js +27 -0
  96. package/esm/model/store/widgetDrills/widgetDrillSelectors.d.ts.map +1 -1
  97. package/esm/model/store/widgetDrills/widgetDrillSelectors.js +9 -5
  98. package/esm/presentation/automations/alerting/state/AlertingDialogStateProvider.js +1 -0
  99. package/esm/presentation/automations/alerting/state/useAlertDraftFilterWrites.d.ts +4 -2
  100. package/esm/presentation/automations/alerting/state/useAlertDraftFilterWrites.d.ts.map +1 -1
  101. package/esm/presentation/automations/alerting/state/useAlertDraftFilterWrites.js +12 -3
  102. package/esm/presentation/automations/alerting/utils/items.js +8 -14
  103. package/esm/presentation/automations/connectors/hooks/useBuildAutomationsContext.d.ts.map +1 -1
  104. package/esm/presentation/automations/connectors/hooks/useBuildAutomationsContext.js +8 -2
  105. package/esm/presentation/automations/contexts/AutomationsContext.d.ts +4 -2
  106. package/esm/presentation/automations/contexts/AutomationsContext.d.ts.map +1 -1
  107. package/esm/presentation/automations/scheduledEmail/hooks/useExportTimezones.js +1 -1
  108. package/esm/presentation/automations/scheduledEmail/state/ScheduledEmailDialogStateProvider.js +1 -0
  109. package/esm/presentation/automations/scheduledEmail/state/useScheduledEmailDraftFilterWrites.d.ts +4 -2
  110. package/esm/presentation/automations/scheduledEmail/state/useScheduledEmailDraftFilterWrites.d.ts.map +1 -1
  111. package/esm/presentation/automations/scheduledEmail/state/useScheduledEmailDraftFilterWrites.js +25 -6
  112. package/esm/presentation/automations/shared/automationFilters/components/AutomationAttributeFilter.d.ts.map +1 -1
  113. package/esm/presentation/automations/shared/automationFilters/components/AutomationAttributeFilter.js +16 -2
  114. package/esm/presentation/automations/shared/automationFilters/components/AutomationFiltersSelect.d.ts.map +1 -1
  115. package/esm/presentation/automations/shared/automationFilters/components/AutomationFiltersSelect.js +16 -11
  116. package/esm/presentation/automations/shared/automationFilters/components/AutomationRestrictedFilters.d.ts +9 -0
  117. package/esm/presentation/automations/shared/automationFilters/components/AutomationRestrictedFilters.d.ts.map +1 -0
  118. package/esm/presentation/automations/shared/automationFilters/components/AutomationRestrictedFilters.js +22 -0
  119. package/esm/presentation/automations/shared/automationFilters/hooks/useDefaultSelectedFiltersForExistingAutomation.d.ts +2 -2
  120. package/esm/presentation/automations/shared/automationFilters/hooks/useDefaultSelectedFiltersForExistingAutomation.d.ts.map +1 -1
  121. package/esm/presentation/automations/shared/automationFilters/hooks/useDefaultSelectedFiltersForExistingAutomation.js +17 -5
  122. package/esm/presentation/automations/shared/automationFilters/useAutomationFilters.d.ts +8 -0
  123. package/esm/presentation/automations/shared/automationFilters/useAutomationFilters.d.ts.map +1 -1
  124. package/esm/presentation/automations/shared/automationFilters/useAutomationFilters.js +54 -10
  125. package/esm/presentation/automations/shared/automationFilters/useAutomationFiltersSelect.d.ts.map +1 -1
  126. package/esm/presentation/automations/shared/automationFilters/useAutomationFiltersSelect.js +3 -2
  127. package/esm/presentation/automations/shared/filters/conversions.d.ts +10 -2
  128. package/esm/presentation/automations/shared/filters/conversions.d.ts.map +1 -1
  129. package/esm/presentation/automations/shared/filters/conversions.js +15 -6
  130. package/esm/presentation/dashboardSettingsDialog/DefaultDashboardSettingsDialog.d.ts.map +1 -1
  131. package/esm/presentation/dashboardSettingsDialog/DefaultDashboardSettingsDialog.js +3 -4
  132. package/esm/presentation/dashboardSettingsDialog/TimezoneOption.d.ts.map +1 -1
  133. package/esm/presentation/dashboardSettingsDialog/TimezoneOption.js +20 -7
  134. package/esm/presentation/dialogs/ExportCsvDialog.d.ts.map +1 -1
  135. package/esm/presentation/dialogs/ExportCsvDialog.js +2 -1
  136. package/esm/presentation/drill/DrillConfigPanel/DrillToUrl/CustomUrlEditorParametersSections/IdentifierParametersSection.js +1 -1
  137. package/esm/presentation/drill/DrillSelect/DrillSelectDropdown.d.ts +2 -1
  138. package/esm/presentation/drill/DrillSelect/DrillSelectDropdown.d.ts.map +1 -1
  139. package/esm/presentation/drill/DrillSelect/DrillSelectDropdown.js +19 -1
  140. package/esm/presentation/drill/DrillSelect/WithDrillSelect.d.ts.map +1 -1
  141. package/esm/presentation/drill/DrillSelect/WithDrillSelect.js +12 -4
  142. package/esm/presentation/drill/DrillSelect/types.d.ts +1 -0
  143. package/esm/presentation/drill/DrillSelect/types.d.ts.map +1 -1
  144. package/esm/presentation/drill/hooks/useDrillSelectDropdownMenuItems.d.ts.map +1 -1
  145. package/esm/presentation/drill/hooks/useDrillSelectDropdownMenuItems.js +4 -2
  146. package/esm/presentation/insightNotSavedDialog/InsightNotSavedDialog.d.ts.map +1 -1
  147. package/esm/presentation/insightNotSavedDialog/InsightNotSavedDialog.js +4 -5
  148. package/esm/presentation/localization/bundles/de-DE.localization-bundle.d.ts +3 -0
  149. package/esm/presentation/localization/bundles/de-DE.localization-bundle.d.ts.map +1 -1
  150. package/esm/presentation/localization/bundles/de-DE.localization-bundle.js +5 -2
  151. package/esm/presentation/localization/bundles/en-AU.localization-bundle.d.ts +3 -0
  152. package/esm/presentation/localization/bundles/en-AU.localization-bundle.d.ts.map +1 -1
  153. package/esm/presentation/localization/bundles/en-AU.localization-bundle.js +5 -2
  154. package/esm/presentation/localization/bundles/en-GB.localization-bundle.d.ts +3 -0
  155. package/esm/presentation/localization/bundles/en-GB.localization-bundle.d.ts.map +1 -1
  156. package/esm/presentation/localization/bundles/en-GB.localization-bundle.js +5 -2
  157. package/esm/presentation/localization/bundles/en-US.localization-bundle.d.ts +21 -1
  158. package/esm/presentation/localization/bundles/en-US.localization-bundle.d.ts.map +1 -1
  159. package/esm/presentation/localization/bundles/en-US.localization-bundle.js +27 -7
  160. package/esm/presentation/localization/bundles/es-419.localization-bundle.d.ts +3 -0
  161. package/esm/presentation/localization/bundles/es-419.localization-bundle.d.ts.map +1 -1
  162. package/esm/presentation/localization/bundles/es-419.localization-bundle.js +5 -2
  163. package/esm/presentation/localization/bundles/es-ES.localization-bundle.d.ts +3 -0
  164. package/esm/presentation/localization/bundles/es-ES.localization-bundle.d.ts.map +1 -1
  165. package/esm/presentation/localization/bundles/es-ES.localization-bundle.js +5 -2
  166. package/esm/presentation/localization/bundles/fi-FI.localization-bundle.d.ts +3 -0
  167. package/esm/presentation/localization/bundles/fi-FI.localization-bundle.d.ts.map +1 -1
  168. package/esm/presentation/localization/bundles/fi-FI.localization-bundle.js +5 -2
  169. package/esm/presentation/localization/bundles/fr-CA.localization-bundle.d.ts +3 -0
  170. package/esm/presentation/localization/bundles/fr-CA.localization-bundle.d.ts.map +1 -1
  171. package/esm/presentation/localization/bundles/fr-CA.localization-bundle.js +5 -2
  172. package/esm/presentation/localization/bundles/fr-FR.localization-bundle.d.ts +3 -0
  173. package/esm/presentation/localization/bundles/fr-FR.localization-bundle.d.ts.map +1 -1
  174. package/esm/presentation/localization/bundles/fr-FR.localization-bundle.js +5 -2
  175. package/esm/presentation/localization/bundles/id-ID.localization-bundle.d.ts +3 -0
  176. package/esm/presentation/localization/bundles/id-ID.localization-bundle.d.ts.map +1 -1
  177. package/esm/presentation/localization/bundles/id-ID.localization-bundle.js +5 -2
  178. package/esm/presentation/localization/bundles/it-IT.localization-bundle.d.ts +3 -0
  179. package/esm/presentation/localization/bundles/it-IT.localization-bundle.d.ts.map +1 -1
  180. package/esm/presentation/localization/bundles/it-IT.localization-bundle.js +5 -2
  181. package/esm/presentation/localization/bundles/ja-JP.localization-bundle.d.ts +3 -0
  182. package/esm/presentation/localization/bundles/ja-JP.localization-bundle.d.ts.map +1 -1
  183. package/esm/presentation/localization/bundles/ja-JP.localization-bundle.js +5 -2
  184. package/esm/presentation/localization/bundles/ko-KR.localization-bundle.d.ts +3 -0
  185. package/esm/presentation/localization/bundles/ko-KR.localization-bundle.d.ts.map +1 -1
  186. package/esm/presentation/localization/bundles/ko-KR.localization-bundle.js +5 -2
  187. package/esm/presentation/localization/bundles/nl-NL.localization-bundle.d.ts +3 -0
  188. package/esm/presentation/localization/bundles/nl-NL.localization-bundle.d.ts.map +1 -1
  189. package/esm/presentation/localization/bundles/nl-NL.localization-bundle.js +5 -2
  190. package/esm/presentation/localization/bundles/pl-PL.localization-bundle.d.ts +3 -0
  191. package/esm/presentation/localization/bundles/pl-PL.localization-bundle.d.ts.map +1 -1
  192. package/esm/presentation/localization/bundles/pl-PL.localization-bundle.js +5 -2
  193. package/esm/presentation/localization/bundles/pt-BR.localization-bundle.d.ts +3 -0
  194. package/esm/presentation/localization/bundles/pt-BR.localization-bundle.d.ts.map +1 -1
  195. package/esm/presentation/localization/bundles/pt-BR.localization-bundle.js +5 -2
  196. package/esm/presentation/localization/bundles/pt-PT.localization-bundle.d.ts +3 -0
  197. package/esm/presentation/localization/bundles/pt-PT.localization-bundle.d.ts.map +1 -1
  198. package/esm/presentation/localization/bundles/pt-PT.localization-bundle.js +5 -2
  199. package/esm/presentation/localization/bundles/ru-RU.localization-bundle.d.ts +3 -0
  200. package/esm/presentation/localization/bundles/ru-RU.localization-bundle.d.ts.map +1 -1
  201. package/esm/presentation/localization/bundles/ru-RU.localization-bundle.js +5 -2
  202. package/esm/presentation/localization/bundles/sl-SI.localization-bundle.d.ts +3 -0
  203. package/esm/presentation/localization/bundles/sl-SI.localization-bundle.d.ts.map +1 -1
  204. package/esm/presentation/localization/bundles/sl-SI.localization-bundle.js +5 -2
  205. package/esm/presentation/localization/bundles/th-TH.localization-bundle.d.ts +3 -0
  206. package/esm/presentation/localization/bundles/th-TH.localization-bundle.d.ts.map +1 -1
  207. package/esm/presentation/localization/bundles/th-TH.localization-bundle.js +5 -2
  208. package/esm/presentation/localization/bundles/tr-TR.localization-bundle.d.ts +3 -0
  209. package/esm/presentation/localization/bundles/tr-TR.localization-bundle.d.ts.map +1 -1
  210. package/esm/presentation/localization/bundles/tr-TR.localization-bundle.js +5 -2
  211. package/esm/presentation/localization/bundles/uk-UA.localization-bundle.d.ts +3 -0
  212. package/esm/presentation/localization/bundles/uk-UA.localization-bundle.d.ts.map +1 -1
  213. package/esm/presentation/localization/bundles/uk-UA.localization-bundle.js +5 -2
  214. package/esm/presentation/localization/bundles/vi-VN.localization-bundle.d.ts +3 -0
  215. package/esm/presentation/localization/bundles/vi-VN.localization-bundle.d.ts.map +1 -1
  216. package/esm/presentation/localization/bundles/vi-VN.localization-bundle.js +5 -2
  217. package/esm/presentation/localization/bundles/zh-HK.localization-bundle.d.ts +3 -0
  218. package/esm/presentation/localization/bundles/zh-HK.localization-bundle.d.ts.map +1 -1
  219. package/esm/presentation/localization/bundles/zh-HK.localization-bundle.js +5 -2
  220. package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.d.ts +3 -0
  221. package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.d.ts.map +1 -1
  222. package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.js +5 -2
  223. package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.d.ts +3 -0
  224. package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.d.ts.map +1 -1
  225. package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.js +5 -2
  226. package/esm/presentation/widget/common/RestrictedPlaceholder.d.ts +4 -8
  227. package/esm/presentation/widget/common/RestrictedPlaceholder.d.ts.map +1 -1
  228. package/esm/presentation/widget/common/RestrictedPlaceholder.js +16 -23
  229. package/esm/presentation/widget/insight/DefaultInsightBody/DefaultInsightBody.d.ts.map +1 -1
  230. package/esm/presentation/widget/insight/DefaultInsightBody/DefaultInsightBody.js +2 -4
  231. package/esm/presentation/widget/insight/LayeredTableView.d.ts +1 -1
  232. package/esm/presentation/widget/insight/LayeredTableView.d.ts.map +1 -1
  233. package/esm/presentation/widget/insight/ViewModeDashboardInsight/InsightDrillDialog/DrillDialogInsight.d.ts.map +1 -1
  234. package/esm/presentation/widget/insight/ViewModeDashboardInsight/InsightDrillDialog/DrillDialogInsight.js +2 -3
  235. package/esm/presentation/widget/insight/ViewModeDashboardInsight/InsightDrillDialog/InsightDrillDialog.d.ts.map +1 -1
  236. package/esm/presentation/widget/insight/ViewModeDashboardInsight/InsightDrillDialog/InsightDrillDialog.js +1 -1
  237. package/esm/presentation/widget/insight/types.d.ts +1 -1
  238. package/esm/presentation/widget/insight/types.d.ts.map +1 -1
  239. package/esm/presentation/widget/richText/RestrictedReferencesDialog.d.ts.map +1 -1
  240. package/esm/presentation/widget/richText/RestrictedReferencesDialog.js +5 -6
  241. package/esm/presentation/widget/visualizationSwitcher/ViewModeDashboardVisualizationSwitcher.js +1 -1
  242. package/esm/presentation/widget/visualizationSwitcher/configuration/VisualizationsList/VisualizationListItem.d.ts.map +1 -1
  243. package/esm/presentation/widget/visualizationSwitcher/configuration/VisualizationsList/VisualizationListItem.js +1 -4
  244. package/esm/presentation/widget/widget/InsightWidget/DefaultDashboardInsightWidget.js +2 -3
  245. package/esm/sdk-ui-dashboard.d.ts +88 -61
  246. package/package.json +21 -21
  247. package/styles/css/dashboard.css +1 -7
  248. package/styles/css/dashboard.css.map +1 -1
  249. package/styles/css/dashboardSettingsDialog.css +4 -0
  250. package/styles/css/dashboardSettingsDialog.css.map +1 -1
  251. package/styles/css/export.css +0 -6
  252. package/styles/css/export.css.map +1 -1
  253. package/styles/css/main.css +13 -20
  254. package/styles/css/main.css.map +1 -1
  255. package/styles/css/notifications_channels_dialog.css +1 -7
  256. package/styles/css/notifications_channels_dialog.css.map +1 -1
  257. package/styles/css/richTextWidget.css +4 -0
  258. package/styles/css/richTextWidget.css.map +1 -1
  259. package/styles/scss/dashboardSettingsDialog.scss +5 -0
  260. package/styles/scss/export.scss +0 -9
  261. package/styles/scss/notifications_channels_dialog.scss +1 -10
  262. package/styles/scss/richTextWidget.scss +5 -1
  263. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/loadMeasureParameterDependencies.d.ts +0 -13
  264. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/loadMeasureParameterDependencies.d.ts.map +0 -1
  265. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/loadMeasureParameterDependencies.js +0 -98
  266. package/esm/model/types/drillTypes.d.ts +0 -13
  267. package/esm/model/types/drillTypes.d.ts.map +0 -1
  268. package/esm/model/types/drillTypes.js +0 -14
  269. package/esm/presentation/widget/insight/geoDefaultDisplayFormRefs.d.ts +0 -5
  270. package/esm/presentation/widget/insight/geoDefaultDisplayFormRefs.d.ts.map +0 -1
  271. package/esm/presentation/widget/insight/geoDefaultDisplayFormRefs.js +0 -28
  272. package/esm/presentation/widget/insight/insightToTable.d.ts +0 -74
  273. package/esm/presentation/widget/insight/insightToTable.d.ts.map +0 -1
  274. package/esm/presentation/widget/insight/insightToTable.js +0 -482
@@ -8,5 +8,6 @@ export const catalogInitialState = {
8
8
  computedAttributes: undefined,
9
9
  dateHierarchyTemplates: undefined,
10
10
  parameters: { status: "uninitialized", parameters: [] },
11
- measureParameters: { status: "uninitialized", byMetric: {} },
11
+ insightParameters: { status: "uninitialized", byInsight: {} },
12
+ filterParameters: { status: "uninitialized", byRef: {} },
12
13
  };
@@ -11,6 +11,9 @@ export declare const catalogActions: {
11
11
  updateAttributeHierarchy: import("@reduxjs/toolkit").ActionCreatorWithPayload<import("@gooddata/sdk-model").ICatalogAttributeHierarchy, "catalog/updateAttributeHierarchy">;
12
12
  deleteAttributeHierarchy: import("@reduxjs/toolkit").ActionCreatorWithPayload<import("@gooddata/sdk-model").ICatalogAttributeHierarchy, "catalog/deleteAttributeHierarchy">;
13
13
  setCatalogParameters: import("@reduxjs/toolkit").ActionCreatorWithPayload<import("./catalogState.js").ICatalogParametersState, "catalog/setCatalogParameters">;
14
- setCatalogMeasureParameters: import("@reduxjs/toolkit").ActionCreatorWithPayload<import("./catalogState.js").ICatalogMeasureParametersState, "catalog/setCatalogMeasureParameters">;
14
+ setCatalogInsightParameters: import("@reduxjs/toolkit").ActionCreatorWithPayload<import("./catalogState.js").ICatalogInsightParametersState, "catalog/setCatalogInsightParameters">;
15
+ mergeCatalogInsightParameters: import("@reduxjs/toolkit").ActionCreatorWithPayload<Record<string, import("@gooddata/sdk-model").IdentifierRef[]>, "catalog/mergeCatalogInsightParameters">;
16
+ setCatalogFilterParameters: import("@reduxjs/toolkit").ActionCreatorWithPayload<import("./catalogState.js").ICatalogFilterParametersState, "catalog/setCatalogFilterParameters">;
17
+ mergeCatalogFilterParameters: import("@reduxjs/toolkit").ActionCreatorWithPayload<Record<string, import("@gooddata/sdk-model").IdentifierRef[]>, "catalog/mergeCatalogFilterParameters">;
15
18
  };
16
19
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/model/store/catalog/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,OAAO,EAAe,MAAM,kBAAkB,CAAC;AAG7D,OAAO,EAAE,KAAK,YAAY,EAAuB,MAAM,mBAAmB,CAAC;AAQ3E,eAAO,MAAM,mBAAmB,EAAE,OAAO,CAAC,YAAY,CAAwB,CAAC;AAG/E;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;CAA8B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/model/store/catalog/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,OAAO,EAAe,MAAM,kBAAkB,CAAC;AAG7D,OAAO,EAAE,KAAK,YAAY,EAAuB,MAAM,mBAAmB,CAAC;AAQ3E,eAAO,MAAM,mBAAmB,EAAE,OAAO,CAAC,YAAY,CAAwB,CAAC;AAG/E;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;CAA8B,CAAC"}
@@ -42,9 +42,16 @@ export declare const selectRestrictedDashboardFilterLocalIdentifiersForTab: (tab
42
42
  */
43
43
  export declare const selectExecutableDashboardFiltersByTab: DashboardSelector<Record<string, FilterContextItem[]>>;
44
44
  /**
45
+ * Dashboard filters safe to execute with: the ones the current user may not read are left out.
46
+ *
45
47
  * @alpha
46
48
  */
47
- export declare const selectDashboardFiltersWithoutCrossFiltering: DashboardSelector<FilterContextItem[]>;
49
+ export declare const selectExecutableDashboardFiltersWithoutCrossFiltering: DashboardSelector<FilterContextItem[]>;
50
+ /**
51
+ * Same as {@link selectExecutableDashboardFiltersWithoutCrossFiltering}, but keeping the filters the
52
+ * current user may not read, which an automation stores like any other.
53
+ */
54
+ export declare const selectAllDashboardFiltersWithoutCrossFiltering: DashboardSelector<FilterContextItem[]>;
48
55
  /**
49
56
  * @alpha
50
57
  */
@@ -65,7 +72,6 @@ export declare const selectAutomationDefaultSelectedFilters: DashboardSelector<F
65
72
  * @alpha
66
73
  */
67
74
  export declare const selectAutomationCommonDateFilterId: DashboardSelector<string | undefined>;
68
- export declare function removeEmptyDashboardFilters(filters?: FilterContextItem[]): FilterContextItem[];
69
75
  export declare const isFilterContextItemHidden: (filter: FilterContextItem, filterConfigurations: {
70
76
  commonDateFilterConfig?: IDashboardDateFilterConfig;
71
77
  dateFilterWithDimensionConfigs: IDashboardDateFilterConfigItem[];
@@ -1 +1 @@
1
- {"version":3,"file":"dashboardFilterSelectors.d.ts","sourceRoot":"","sources":["../../../../src/model/store/filtering/dashboardFilterSelectors.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,KAAK,iBAAiB,EACtB,KAAK,+BAA+B,EACpC,KAAK,0BAA0B,EAC/B,KAAK,8BAA8B,EAYtC,MAAM,qBAAqB,CAAC;AAuB7B,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAIrD,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAOxD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,iBAAiB,EAAE,GAAG,WAAW,CAAC,MAAM,CAAC,CAMxF;AASD;;;;GAIG;AACH,eAAO,MAAM,+CAA+C,EAAE,iBAAiB,CAAC,WAAW,CAAC,MAAM,CAAC,CACvB,CAAC;AAE7E;;;GAGG;AACH,eAAO,MAAM,wCAAwC,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,CA0BvF,CAAC;AAEN;;;;GAIG;AACH,eAAO,MAAM,oCAAoC,EAAE,iBAAiB,CAAC,MAAM,CAG1E,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,gCAAgC,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,CAKnF,CAAC;AAYF;;;GAGG;AACH,eAAO,MAAM,mCAAmC,EAAE,iBAAiB,CAAC,OAAO,CAI1E,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,qDAAqD,EAAE,CAChE,kBAAkB,EAAE,MAAM,KACzB,iBAAiB,CAAC,WAAW,CAAC,MAAM,CAAC,CAIzC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,qCAAqC,EAAE,iBAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,EAAE,CAAC,CAQpG,CAAC;AAEN;;GAEG;AACH,eAAO,MAAM,2CAA2C,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,CAW1F,CAAC;AAEN;;GAEG;AACH,eAAO,MAAM,4BAA4B,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,CAmB/E,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,4BAA4B,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,CAmB/E,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,yCAAyC,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,CAwBxF,CAAC;AAEN;;GAEG;AACH,eAAO,MAAM,sCAAsC,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,CAKzF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kCAAkC,EAAE,iBAAiB,CAAC,MAAM,GAAG,SAAS,CAMpF,CAAC;AA0BF,wBAAgB,2BAA2B,CAAC,OAAO,GAAE,iBAAiB,EAAO,uBAW5E;AAmBD,eAAO,MAAM,yBAAyB,WAC1B,iBAAiB,wBACH;IAClB,sBAAsB,CAAC,EAAE,0BAA0B,CAAC;IACpD,8BAA8B,EAAE,8BAA8B,EAAE,CAAC;IACjE,sBAAsB,EAAE,+BAA+B,EAAE,CAAC;CAC7D,KACF,OAyBF,CAAC;AAEF,eAAO,MAAM,yBAAyB,WAC1B,iBAAiB,wBACH;IAClB,sBAAsB,CAAC,EAAE,0BAA0B,CAAC;IACpD,8BAA8B,EAAE,8BAA8B,EAAE,CAAC;IACjE,sBAAsB,EAAE,+BAA+B,EAAE,CAAC;CAC7D,KACF,OAyBF,CAAC;AAMF;;;;;;GAMG;AACH,eAAO,MAAM,4BAA4B,EAAE,iBAAiB,CAAC,qBAAqB,EAAE,CA2EnF,CAAC"}
1
+ {"version":3,"file":"dashboardFilterSelectors.d.ts","sourceRoot":"","sources":["../../../../src/model/store/filtering/dashboardFilterSelectors.ts"],"names":[],"mappings":"AAMA,OAAO,EACH,KAAK,iBAAiB,EACtB,KAAK,+BAA+B,EACpC,KAAK,0BAA0B,EAC/B,KAAK,8BAA8B,EAYtC,MAAM,qBAAqB,CAAC;AAuB7B,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAIrD,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAOxD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,iBAAiB,EAAE,GAAG,WAAW,CAAC,MAAM,CAAC,CAMxF;AASD;;;;GAIG;AACH,eAAO,MAAM,+CAA+C,EAAE,iBAAiB,CAAC,WAAW,CAAC,MAAM,CAAC,CACvB,CAAC;AAE7E;;;GAGG;AACH,eAAO,MAAM,wCAAwC,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,CA0BvF,CAAC;AAEN;;;;GAIG;AACH,eAAO,MAAM,oCAAoC,EAAE,iBAAiB,CAAC,MAAM,CAG1E,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,gCAAgC,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,CAKnF,CAAC;AAYF;;;GAGG;AACH,eAAO,MAAM,mCAAmC,EAAE,iBAAiB,CAAC,OAAO,CAI1E,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,qDAAqD,EAAE,CAChE,kBAAkB,EAAE,MAAM,KACzB,iBAAiB,CAAC,WAAW,CAAC,MAAM,CAAC,CAIzC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,qCAAqC,EAAE,iBAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,EAAE,CAAC,CAQpG,CAAC;AAaN;;;;GAIG;AACH,eAAO,MAAM,qDAAqD,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,CAKpG,CAAC;AAEN;;;GAGG;AACH,eAAO,MAAM,8CAA8C,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,CAK7F,CAAC;AAEN;;GAEG;AACH,eAAO,MAAM,4BAA4B,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,CAmB/E,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,4BAA4B,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,CAmB/E,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,yCAAyC,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,CAwBxF,CAAC;AAEN;;GAEG;AACH,eAAO,MAAM,sCAAsC,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,CAIzF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kCAAkC,EAAE,iBAAiB,CAAC,MAAM,GAAG,SAAS,CAMpF,CAAC;AAoEF,eAAO,MAAM,yBAAyB,WAC1B,iBAAiB,wBACH;IAClB,sBAAsB,CAAC,EAAE,0BAA0B,CAAC;IACpD,8BAA8B,EAAE,8BAA8B,EAAE,CAAC;IACjE,sBAAsB,EAAE,+BAA+B,EAAE,CAAC;CAC7D,KACF,OAyBF,CAAC;AAEF,eAAO,MAAM,yBAAyB,WAC1B,iBAAiB,wBACH;IAClB,sBAAsB,CAAC,EAAE,0BAA0B,CAAC;IACpD,8BAA8B,EAAE,8BAA8B,EAAE,CAAC;IACjE,sBAAsB,EAAE,+BAA+B,EAAE,CAAC;CAC7D,KACF,OAyBF,CAAC;AAMF;;;;;;GAMG;AACH,eAAO,MAAM,4BAA4B,EAAE,iBAAiB,CAAC,qBAAqB,EAAE,CAwFnF,CAAC"}
@@ -73,19 +73,27 @@ export const selectExecutableDashboardFiltersByTab = createSelector(selectFilter
73
73
  tabId,
74
74
  filters.filter((filter) => !isDashboardFilterRestricted(filter, unavailableObjects)),
75
75
  ])));
76
- /**
77
- * @alpha
78
- */
79
- export const selectDashboardFiltersWithoutCrossFiltering = createSelector(selectExecutableDashboardFilters, selectCrossFilteringItems, (dashboardFilters, crossFilteringItems) => {
76
+ function withCommonDateFilterAndWithoutCrossFiltering(dashboardFilters, crossFilteringItems) {
80
77
  const dashboardFiltersWithCommonDateFilter = dashboardFilters.some(isDashboardCommonDateFilter)
81
78
  ? dashboardFilters
82
79
  : [commonDateFilter, ...dashboardFilters];
83
80
  return removeCrossFilteringFilters(dashboardFiltersWithCommonDateFilter, crossFilteringItems);
84
- });
81
+ }
85
82
  /**
83
+ * Dashboard filters safe to execute with: the ones the current user may not read are left out.
84
+ *
86
85
  * @alpha
87
86
  */
88
- export const selectDashboardHiddenFilters = createSelector(selectDashboardFiltersWithoutCrossFiltering, selectDateFilterConfigOverrides, selectDateFilterConfigsOverrides, selectAttributeFilterConfigsOverrides, (dashboardFiltersWithoutCrossFiltering, commonDateFilterConfig, dateFilterWithDimensionConfigs, attributeFilterConfigs) => {
87
+ export const selectExecutableDashboardFiltersWithoutCrossFiltering = createSelector(selectExecutableDashboardFilters, selectCrossFilteringItems, withCommonDateFilterAndWithoutCrossFiltering);
88
+ /**
89
+ * Same as {@link selectExecutableDashboardFiltersWithoutCrossFiltering}, but keeping the filters the
90
+ * current user may not read, which an automation stores like any other.
91
+ */
92
+ export const selectAllDashboardFiltersWithoutCrossFiltering = createSelector(selectFilterContextFilters, selectCrossFilteringItems, withCommonDateFilterAndWithoutCrossFiltering);
93
+ /**
94
+ * @alpha
95
+ */
96
+ export const selectDashboardHiddenFilters = createSelector(selectExecutableDashboardFiltersWithoutCrossFiltering, selectDateFilterConfigOverrides, selectDateFilterConfigsOverrides, selectAttributeFilterConfigsOverrides, (dashboardFiltersWithoutCrossFiltering, commonDateFilterConfig, dateFilterWithDimensionConfigs, attributeFilterConfigs) => {
89
97
  return dashboardFiltersWithoutCrossFiltering.filter((filter) => isFilterContextItemHidden(filter, {
90
98
  commonDateFilterConfig,
91
99
  dateFilterWithDimensionConfigs,
@@ -95,7 +103,7 @@ export const selectDashboardHiddenFilters = createSelector(selectDashboardFilter
95
103
  /**
96
104
  * @alpha
97
105
  */
98
- export const selectDashboardLockedFilters = createSelector(selectDashboardFiltersWithoutCrossFiltering, selectDateFilterConfigOverrides, selectDateFilterConfigsOverrides, selectAttributeFilterConfigsOverrides, (dashboardFiltersWithoutCrossFiltering, commonDateFilterConfig, dateFilterWithDimensionConfigs, attributeFilterConfigs) => {
106
+ export const selectDashboardLockedFilters = createSelector(selectExecutableDashboardFiltersWithoutCrossFiltering, selectDateFilterConfigOverrides, selectDateFilterConfigsOverrides, selectAttributeFilterConfigsOverrides, (dashboardFiltersWithoutCrossFiltering, commonDateFilterConfig, dateFilterWithDimensionConfigs, attributeFilterConfigs) => {
99
107
  return dashboardFiltersWithoutCrossFiltering.filter((filter) => isFilterContextItemLocked(filter, {
100
108
  commonDateFilterConfig,
101
109
  dateFilterWithDimensionConfigs,
@@ -105,7 +113,7 @@ export const selectDashboardLockedFilters = createSelector(selectDashboardFilter
105
113
  /**
106
114
  * @alpha
107
115
  */
108
- export const selectAutomationAvailableDashboardFilters = createSelector(selectDashboardFiltersWithoutCrossFiltering, selectDateFilterConfigOverrides, selectDateFilterConfigsOverrides, selectAttributeFilterConfigsOverrides, (dashboardFiltersWithoutCrossFiltering, commonDateFilterConfig, dateFilterWithDimensionConfigs, attributeFilterConfigs) => {
116
+ export const selectAutomationAvailableDashboardFilters = createSelector(selectAllDashboardFiltersWithoutCrossFiltering, selectDateFilterConfigOverrides, selectDateFilterConfigsOverrides, selectAttributeFilterConfigsOverrides, (dashboardFiltersWithoutCrossFiltering, commonDateFilterConfig, dateFilterWithDimensionConfigs, attributeFilterConfigs) => {
109
117
  const withCommonDateFilter = dashboardFiltersWithoutCrossFiltering.some(isDashboardCommonDateFilter)
110
118
  ? dashboardFiltersWithoutCrossFiltering
111
119
  : [commonDateFilter, ...dashboardFiltersWithoutCrossFiltering];
@@ -118,9 +126,7 @@ export const selectAutomationAvailableDashboardFilters = createSelector(selectDa
118
126
  /**
119
127
  * @alpha
120
128
  */
121
- export const selectAutomationDefaultSelectedFilters = createSelector(selectAutomationAvailableDashboardFilters, (availableDashboardFilters) => {
122
- return removeEmptyDashboardFilters(availableDashboardFilters);
123
- });
129
+ export const selectAutomationDefaultSelectedFilters = createSelector(selectAutomationAvailableDashboardFilters, selectUnavailableObjects, automationDefaultSelectedFilters);
124
130
  /**
125
131
  * @alpha
126
132
  */
@@ -143,16 +149,21 @@ const removeCrossFilteringFilters = (filters, crossFilteringItems) => {
143
149
  return true;
144
150
  });
145
151
  };
146
- export function removeEmptyDashboardFilters(filters = []) {
147
- return filters.filter((filter) => {
148
- if (isDashboardAttributeFilterItem(filter)) {
149
- return !isAllValuesDashboardAttributeFilter(filter);
150
- }
151
- if (isDashboardMeasureValueFilter(filter)) {
152
- return !isAllDashboardMeasureValueFilter(filter);
153
- }
154
- return true;
155
- });
152
+ function isEmptyDashboardFilter(filter) {
153
+ if (isDashboardAttributeFilterItem(filter)) {
154
+ return isAllValuesDashboardAttributeFilter(filter);
155
+ }
156
+ if (isDashboardMeasureValueFilter(filter)) {
157
+ return isAllDashboardMeasureValueFilter(filter);
158
+ }
159
+ return false;
160
+ }
161
+ /**
162
+ * Preselects the filters a new automation starts with. A restricted filter is left out, because the
163
+ * user cannot review what it filters by.
164
+ */
165
+ function automationDefaultSelectedFilters(filters, unavailableObjects) {
166
+ return filters.filter((filter) => !isEmptyDashboardFilter(filter) && !isDashboardFilterRestricted(filter, unavailableObjects));
156
167
  }
157
168
  function removeHiddenFilters(filters, filterConfigurations) {
158
169
  return filters.filter((filter) => {
@@ -205,7 +216,7 @@ export const isFilterContextItemLocked = (filter, filterConfigurations) => {
205
216
  *
206
217
  * @alpha
207
218
  */
208
- export const selectAutomationFiltersByTab = createSelector(selectTabs, selectExecutableDashboardFiltersByTab, selectDateFilterConfigOverridesByTab, selectDateFilterConfigsOverridesByTab, selectAttributeFilterConfigsOverridesByTab, selectCrossFilteringItemsByTab, (tabs, filtersByTab, dateFilterConfigByTab, dateFilterConfigsByTab, attributeFilterConfigsByTab, crossFilteringItemsByTab) => {
219
+ export const selectAutomationFiltersByTab = createSelector(selectTabs, selectFiltersByTab, selectUnavailableObjects, selectDateFilterConfigOverridesByTab, selectDateFilterConfigsOverridesByTab, selectAttributeFilterConfigsOverridesByTab, selectCrossFilteringItemsByTab, (tabs, filtersByTab, unavailableObjects, dateFilterConfigByTab, dateFilterConfigsByTab, attributeFilterConfigsByTab, crossFilteringItemsByTab) => {
209
220
  if (!tabs || tabs.length === 0) {
210
221
  return [];
211
222
  }
@@ -232,16 +243,21 @@ export const selectAutomationFiltersByTab = createSelector(selectTabs, selectExe
232
243
  };
233
244
  // Get available filters (hidden removed)
234
245
  const availableFilters = removeHiddenFilters(filtersWithCommonDate, filterConfigurations);
246
+ // A restricted filter cannot gate the user's automation, because they can neither see
247
+ // nor change it.
248
+ const unrestrictedFilters = filtersWithCommonDate.filter((filter) => !isDashboardFilterRestricted(filter, unavailableObjects));
249
+ const selectableFilters = removeHiddenFilters(unrestrictedFilters, filterConfigurations);
235
250
  // Get locked filters
236
- const lockedFilters = filtersWithCommonDate.filter((filter) => isFilterContextItemLocked(filter, filterConfigurations));
251
+ const lockedFilters = unrestrictedFilters.filter((filter) => isFilterContextItemLocked(filter, filterConfigurations));
237
252
  // Get hidden filters
238
- const hiddenFilters = filtersWithCommonDate.filter((filter) => isFilterContextItemHidden(filter, filterConfigurations));
253
+ const hiddenFilters = unrestrictedFilters.filter((filter) => isFilterContextItemHidden(filter, filterConfigurations));
239
254
  // Get default selected filters (noop "All" filters removed — attribute and MVF)
240
- const defaultSelectedFilters = removeEmptyDashboardFilters(availableFilters);
255
+ const defaultSelectedFilters = automationDefaultSelectedFilters(availableFilters, unavailableObjects);
241
256
  return {
242
257
  tabId,
243
258
  tabTitle,
244
259
  availableFilters,
260
+ selectableFilters,
245
261
  defaultSelectedFilters,
246
262
  lockedFilters,
247
263
  hiddenFilters,
@@ -16,6 +16,11 @@ export interface IAutomationFiltersTab {
16
16
  * Automation-available filters for the tab (hidden filters removed).
17
17
  */
18
18
  availableFilters: FilterContextItem[];
19
+ /**
20
+ * Filters the add-filter dropdown may offer: {@link IAutomationFiltersTab.availableFilters} minus
21
+ * the ones the user is forbidden to read.
22
+ */
23
+ selectableFilters: FilterContextItem[];
19
24
  /**
20
25
  * Default selected filters for the tab
21
26
  * (no-op filters removed: "all values" attribute filters and "all" measure value filters).
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/model/store/filtering/types.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE7D;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IAClC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,gBAAgB,EAAE,iBAAiB,EAAE,CAAC;IACtC;;;OAGG;IACH,sBAAsB,EAAE,iBAAiB,EAAE,CAAC;IAC5C;;OAEG;IACH,aAAa,EAAE,iBAAiB,EAAE,CAAC;IACnC;;OAEG;IACH,aAAa,EAAE,iBAAiB,EAAE,CAAC;CACtC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/model/store/filtering/types.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE7D;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IAClC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,gBAAgB,EAAE,iBAAiB,EAAE,CAAC;IACtC;;;OAGG;IACH,iBAAiB,EAAE,iBAAiB,EAAE,CAAC;IACvC;;;OAGG;IACH,sBAAsB,EAAE,iBAAiB,EAAE,CAAC;IAC5C;;OAEG;IACH,aAAa,EAAE,iBAAiB,EAAE,CAAC;IACnC;;OAEG;IACH,aAAa,EAAE,iBAAiB,EAAE,CAAC;CACtC"}
@@ -1 +1 @@
1
- {"version":3,"file":"layoutSelectors.d.ts","sourceRoot":"","sources":["../../../../../src/model/store/tabs/layout/layoutSelectors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"layoutSelectors.d.ts","sourceRoot":"","sources":["../../../../../src/model/store/tabs/layout/layoutSelectors.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ import { areObjRefsEqual, dashboardAttributeFilterItemLocalIdentifier, filterCon
6
6
  import { newMapForObjectWithIdentity } from "../../../../_staging/metadata/objRefMap.js";
7
7
  import { isInsightPlaceholderWidget, isKpiPlaceholderWidget, isPlaceholderWidget, } from "../../../../widgets/placeholders/types.js";
8
8
  import { isCustomWidget, isExtendedDashboardLayoutWidget, } from "../../../types/layoutTypes.js";
9
+ import { removeIgnoredWidgetFilters } from "../../../utils/widgetFilters.js";
9
10
  import { createMemoizedSelector } from "../../_infra/selectors.js";
10
11
  import { createUndoableCommandsMapping } from "../../_infra/undoEnhancer.js";
11
12
  import { selectCrossFilteringFiltersLocalIdentifiers, selectCrossFilteringFiltersLocalIdentifiersByWidgetRef, selectCrossFilteringItemsByTab, } from "../../drill/drillSelectors.js";
@@ -345,7 +346,7 @@ export const selectAllFiltersForWidgetByRefAcrossTabs = createMemoizedSelector((
345
346
  ? (widget.ignoreCrossFiltering ?? false)
346
347
  : false;
347
348
  const allCrossFilteringLocalIdentifiers = crossFilteringItems.flatMap((item) => item.filterLocalIdentifiers);
348
- return calculateWidgetFilters(widget, dashboardFilters, crossFilteringFiltersLocalIdentifiers, shouldIgnoreCrossFiltering, allCrossFilteringLocalIdentifiers);
349
+ return calculateWidgetFilters(widget, removeIgnoredWidgetFilters(dashboardFilters, widget), crossFilteringFiltersLocalIdentifiers, shouldIgnoreCrossFiltering, allCrossFilteringLocalIdentifiers);
349
350
  });
350
351
  });
351
352
  const selectAllWidgets = createSelector(selectWidgetsMap, (widgetMap) => {
@@ -1,4 +1,4 @@
1
- import { type IDashboardExportParameter, type IDashboardParameter, type IDashboardTab, type IInsightDefinition, type IInsightParameterValue, type IParameterDefinition, type IParameterMetadataObject, type IdentifierRef, type ObjRef, type ParameterValue } from "@gooddata/sdk-model";
1
+ import { type FilterContextItem, type IDashboardExportParameter, type IDashboardFilterReference, type IDashboardParameter, type IDashboardTab, type IInsight, type IInsightDefinition, type IInsightParameterValue, type IParameterDefinition, type IParameterMetadataObject, type IdentifierRef, type ObjRef, type ParameterValue } from "@gooddata/sdk-model";
2
2
  import { type ITabState } from "../tabsState.js";
3
3
  import { type IDashboardParameterEntry } from "./parametersState.js";
4
4
  /**
@@ -6,12 +6,44 @@ import { type IDashboardParameterEntry } from "./parametersState.js";
6
6
  */
7
7
  export declare const EMPTY_EXPORT_PARAMETERS_BY_TAB: Record<string, IDashboardExportParameter[]>;
8
8
  /**
9
- * Walks the insight's metric buckets and returns the parameter refs they reference,
10
- * deduped by ref string. The order matches the first occurrence in the measure traversal.
9
+ * Concatenates parameter ref lists, keeping the first occurrence of each ref (by `serializeObjRef`).
11
10
  *
12
11
  * @internal
13
12
  */
14
- export declare function collectReferencedParameterRefs(insight: IInsightDefinition, measureParameters: Record<string, IdentifierRef[]>): IdentifierRef[];
13
+ export declare function unionParameterRefs(...lists: ReadonlyArray<ReadonlyArray<IdentifierRef>>): IdentifierRef[];
14
+ /**
15
+ * The objects a dashboard filter reads through which it can depend on a parameter, as roots for the
16
+ * references service: a computed attribute an attribute filter filters on, and a measure value filter's
17
+ * metric plus any computed attribute in its dimensionality. A plain attribute or label has no expression,
18
+ * so it cannot depend on a parameter and is not a root. Date filters never are.
19
+ *
20
+ * @internal
21
+ */
22
+ export declare function filterParameterRoots(filter: FilterContextItem): IdentifierRef[];
23
+ /**
24
+ * {@link filterParameterRoots} over many filters, deduped by ref.
25
+ *
26
+ * @internal
27
+ */
28
+ export declare function collectFilterParameterRoots(filters: ReadonlyArray<FilterContextItem>): IdentifierRef[];
29
+ /**
30
+ * Whether the widget's `ignoreDashboardFilters` excludes the given dashboard filter from its execution.
31
+ *
32
+ * @remarks
33
+ * Attribute filters are matched by display form. An ignore may instead name the filter's `displayAsLabel`;
34
+ * that is irrelevant here because only computed-attribute filters produce parameter roots and a computed
35
+ * attribute has exactly one (fabricated) display form, so it cannot be shown under another label.
36
+ *
37
+ * @internal
38
+ */
39
+ export declare function isDashboardFilterIgnoredByWidget(ignoreDashboardFilters: ReadonlyArray<IDashboardFilterReference>, filter: FilterContextItem): boolean;
40
+ /**
41
+ * The parameter refs a widget depends on through the dashboard filters of its tab that it does not
42
+ * ignore, resolved against the filter → parameter dependency map (`catalog.filterParameters.byRef`).
43
+ *
44
+ * @internal
45
+ */
46
+ export declare function collectWidgetFilterParameterRefs(ignoreDashboardFilters: ReadonlyArray<IDashboardFilterReference>, tab: ITabState, filterParameters: Record<string, IdentifierRef[]>): IdentifierRef[];
15
47
  /**
16
48
  * Effective execution parameters, limited to `referencedRefs`. Precedence per ref: the dashboard
17
49
  * `runtimeOverride`, else the insight's own parameter value, else nothing (backend uses the workspace
@@ -24,17 +56,19 @@ export declare function collectReferencedParameterRefs(insight: IInsightDefiniti
24
56
  export declare function resolveEffectiveParameterValuesForRefs(entries: IDashboardParameterEntry[], referencedRefs: IdentifierRef[], insightParameterValues: IInsightParameterValue[], workspaceParameterByRef: Map<string, IParameterMetadataObject>): IInsightParameterValue[];
25
57
  interface IParameterResolutionContext {
26
58
  entries: IDashboardParameterEntry[];
27
- measureParameters: Record<string, IdentifierRef[]>;
59
+ insightParameters: Record<string, IdentifierRef[]>;
60
+ filterParameterRefs: IdentifierRef[];
28
61
  workspaceParameterByRef: Map<string, IParameterMetadataObject>;
29
62
  isStringEnabled: boolean;
30
63
  }
31
64
  /**
32
- * Effective execution parameters for `insight` given a widget's parameter context: resolves the refs
33
- * the insight references, then applies {@link resolveEffectiveParameterValuesForRefs}.
65
+ * Effective execution parameters for `insight` given a widget's parameter context: looks up the refs
66
+ * the insight depends on, adds those the widget's dashboard filters depend on, then applies
67
+ * {@link resolveEffectiveParameterValuesForRefs}.
34
68
  *
35
69
  * @internal
36
70
  */
37
- export declare function resolveEffectiveParameterValuesForInsight(context: IParameterResolutionContext | undefined, insight: IInsightDefinition): IInsightParameterValue[];
71
+ export declare function resolveEffectiveParameterValuesForInsight(context: IParameterResolutionContext | undefined, insight: IInsight): IInsightParameterValue[];
38
72
  /**
39
73
  * The value hydration seeds into `runtimeOverride`: the dashboard parameter's `value`, else the
40
74
  * workspace default when the workspace parameter is of the matching type, else `undefined`.
@@ -1 +1 @@
1
- {"version":3,"file":"parametersHelpers.d.ts","sourceRoot":"","sources":["../../../../../src/model/store/tabs/parameters/parametersHelpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parametersHelpers.d.ts","sourceRoot":"","sources":["../../../../../src/model/store/tabs/parameters/parametersHelpers.ts"],"names":[],"mappings":"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"}
@@ -1,38 +1,106 @@
1
1
  // (C) 2026 GoodData Corporation
2
- import { DashboardParameterModeValues, insightMeasures, insightParameters, isMeasureDefinition, isValidParameterValue, objRefToString, sanitizeParameterValue, } from "@gooddata/sdk-model";
2
+ import { DashboardParameterModeValues, areObjRefsEqual, dashboardAttributeFilterItemDisplayForm, insightParameters, insightRef, isComputedAttributeRef, isDashboardAttributeFilterItem, isDashboardAttributeFilterReference, isDashboardMeasureValueFilter, isDashboardMeasureValueFilterReference, isIdentifierRef, isValidParameterValue, objRefToString, sanitizeParameterValue, serializeObjRef, } from "@gooddata/sdk-model";
3
3
  import { parametersInitialState, pickTabParametersSource, } from "./parametersState.js";
4
4
  const EMPTY_PARAMETERS = [];
5
5
  const EMPTY_PARAMETER_VALUES = [];
6
+ const EMPTY_REFS = [];
6
7
  /**
7
8
  * @internal
8
9
  */
9
10
  export const EMPTY_EXPORT_PARAMETERS_BY_TAB = {};
10
11
  /**
11
- * Walks the insight's metric buckets and returns the parameter refs they reference,
12
- * deduped by ref string. The order matches the first occurrence in the measure traversal.
12
+ * Concatenates parameter ref lists, keeping the first occurrence of each ref (by `serializeObjRef`).
13
13
  *
14
14
  * @internal
15
15
  */
16
- export function collectReferencedParameterRefs(insight, measureParameters) {
16
+ export function unionParameterRefs(...lists) {
17
17
  const seen = new Set();
18
18
  const result = [];
19
- for (const measure of insightMeasures(insight)) {
20
- const def = measure.measure.definition;
21
- if (!isMeasureDefinition(def)) {
22
- continue;
23
- }
24
- const refs = measureParameters[objRefToString(def.measureDefinition.item)] ?? [];
25
- for (const ref of refs) {
26
- const key = objRefToString(ref);
27
- if (seen.has(key)) {
28
- continue;
19
+ for (const list of lists) {
20
+ for (const ref of list) {
21
+ const key = serializeObjRef(ref);
22
+ if (!seen.has(key)) {
23
+ seen.add(key);
24
+ result.push(ref);
29
25
  }
30
- seen.add(key);
31
- result.push(ref);
32
26
  }
33
27
  }
34
28
  return result;
35
29
  }
30
+ /**
31
+ * The objects a dashboard filter reads through which it can depend on a parameter, as roots for the
32
+ * references service: a computed attribute an attribute filter filters on, and a measure value filter's
33
+ * metric plus any computed attribute in its dimensionality. A plain attribute or label has no expression,
34
+ * so it cannot depend on a parameter and is not a root. Date filters never are.
35
+ *
36
+ * @internal
37
+ */
38
+ export function filterParameterRoots(filter) {
39
+ if (isDashboardAttributeFilterItem(filter)) {
40
+ const displayForm = dashboardAttributeFilterItemDisplayForm(filter);
41
+ return isComputedAttributeRef(displayForm) && isIdentifierRef(displayForm)
42
+ ? [displayForm]
43
+ : EMPTY_REFS;
44
+ }
45
+ if (isDashboardMeasureValueFilter(filter)) {
46
+ const { measure, dimensionality = [] } = filter.dashboardMeasureValueFilter;
47
+ return [
48
+ ...(isIdentifierRef(measure) ? [measureRoot(measure)] : []),
49
+ ...dimensionality.filter(isComputedAttributeRef).filter(isIdentifierRef),
50
+ ];
51
+ }
52
+ return EMPTY_REFS;
53
+ }
54
+ /**
55
+ * A measure value filter stores its metric as a plain {@link ObjRef} that usually carries no `type`. The
56
+ * dependency graph resolves an untyped root as an insight, so the metric type is made explicit here; the
57
+ * same normalized ref is the key both when the map is loaded and when a widget reads it.
58
+ */
59
+ function measureRoot(measure) {
60
+ return measure.type ? measure : { ...measure, type: "measure" };
61
+ }
62
+ /**
63
+ * {@link filterParameterRoots} over many filters, deduped by ref.
64
+ *
65
+ * @internal
66
+ */
67
+ export function collectFilterParameterRoots(filters) {
68
+ return unionParameterRefs(...filters.map(filterParameterRoots));
69
+ }
70
+ /**
71
+ * Whether the widget's `ignoreDashboardFilters` excludes the given dashboard filter from its execution.
72
+ *
73
+ * @remarks
74
+ * Attribute filters are matched by display form. An ignore may instead name the filter's `displayAsLabel`;
75
+ * that is irrelevant here because only computed-attribute filters produce parameter roots and a computed
76
+ * attribute has exactly one (fabricated) display form, so it cannot be shown under another label.
77
+ *
78
+ * @internal
79
+ */
80
+ export function isDashboardFilterIgnoredByWidget(ignoreDashboardFilters, filter) {
81
+ if (isDashboardAttributeFilterItem(filter)) {
82
+ const displayForm = dashboardAttributeFilterItemDisplayForm(filter);
83
+ return ignoreDashboardFilters.some((ignored) => isDashboardAttributeFilterReference(ignored) &&
84
+ areObjRefsEqual(ignored.displayForm, displayForm));
85
+ }
86
+ if (isDashboardMeasureValueFilter(filter)) {
87
+ const { measure } = filter.dashboardMeasureValueFilter;
88
+ return ignoreDashboardFilters.some((ignored) => isDashboardMeasureValueFilterReference(ignored) && areObjRefsEqual(ignored.measure, measure));
89
+ }
90
+ return false;
91
+ }
92
+ /**
93
+ * The parameter refs a widget depends on through the dashboard filters of its tab that it does not
94
+ * ignore, resolved against the filter → parameter dependency map (`catalog.filterParameters.byRef`).
95
+ *
96
+ * @internal
97
+ */
98
+ export function collectWidgetFilterParameterRefs(ignoreDashboardFilters, tab, filterParameters) {
99
+ const filters = tab.filterContext?.filterContextDefinition?.filters ?? [];
100
+ const roots = collectFilterParameterRoots(filters.filter((filter) => !isDashboardFilterIgnoredByWidget(ignoreDashboardFilters, filter)));
101
+ const result = unionParameterRefs(...roots.map((root) => filterParameters[serializeObjRef(root)] ?? EMPTY_REFS));
102
+ return result.length === 0 ? EMPTY_REFS : result;
103
+ }
36
104
  /**
37
105
  * Effective execution parameters, limited to `referencedRefs`. Precedence per ref: the dashboard
38
106
  * `runtimeOverride`, else the insight's own parameter value, else nothing (backend uses the workspace
@@ -75,8 +143,9 @@ export function resolveEffectiveParameterValuesForRefs(entries, referencedRefs,
75
143
  return result.length === 0 ? EMPTY_PARAMETER_VALUES : result;
76
144
  }
77
145
  /**
78
- * Effective execution parameters for `insight` given a widget's parameter context: resolves the refs
79
- * the insight references, then applies {@link resolveEffectiveParameterValuesForRefs}.
146
+ * Effective execution parameters for `insight` given a widget's parameter context: looks up the refs
147
+ * the insight depends on, adds those the widget's dashboard filters depend on, then applies
148
+ * {@link resolveEffectiveParameterValuesForRefs}.
80
149
  *
81
150
  * @internal
82
151
  */
@@ -84,7 +153,7 @@ export function resolveEffectiveParameterValuesForInsight(context, insight) {
84
153
  if (!context) {
85
154
  return EMPTY_PARAMETER_VALUES;
86
155
  }
87
- const referencedRefs = collectReferencedParameterRefs(insight, context.measureParameters);
156
+ const referencedRefs = unionParameterRefs(context.insightParameters[serializeObjRef(insightRef(insight))] ?? EMPTY_REFS, context.filterParameterRefs);
88
157
  return resolveEffectiveParameterValuesForRefs(context.entries, referencedRefs, ungatedInsightParameterValues(insight, context.isStringEnabled), context.workspaceParameterByRef);
89
158
  }
90
159
  /**
@@ -152,13 +152,20 @@ export declare const selectParameterReconciliations: DashboardSelector<IParamete
152
152
  export declare const selectParameterReconciliationByRef: (ref: ObjRef) => DashboardSelector<ParameterReconciliation | undefined>;
153
153
  interface IWidgetParameterContext {
154
154
  entries: IDashboardParameterEntry[];
155
- measureParameters: Record<string, IdentifierRef[]>;
155
+ insightParameters: Record<string, IdentifierRef[]>;
156
+ filterParameterRefs: IdentifierRef[];
156
157
  workspaceParameterByRef: Map<string, IParameterMetadataObject>;
157
158
  widgetInsightRef: ObjRef;
158
159
  isStringEnabled: boolean;
159
160
  }
160
161
  /**
161
- * Owning-tab parameter entries and the metric → parameter map for a widget, keyed by ref.
162
+ * Owning-tab parameter entries, the insight → parameter map and the widget's dashboard-filter
163
+ * parameter refs for a widget, keyed by ref.
164
+ *
165
+ * @remarks
166
+ * The filter half degrades to "no filter dependencies" while its map is not loaded (or failed to load),
167
+ * so a dashboard whose filter dependency request failed still injects the parameters its insights
168
+ * depend on.
162
169
  *
163
170
  * @internal
164
171
  */
@@ -167,14 +174,14 @@ export declare const selectWidgetParameterContext: (ref: ObjRef | undefined) =>
167
174
  * Returns the parameter values to inject into the widget's `IExecutionConfig.parameterValues`.
168
175
  *
169
176
  * @remarks
170
- * For each parameter referenced by the widget's metrics (via the dashboard-wide MAQL
171
- * metric → parameter dependency map), the value is resolved in this order:
177
+ * For each parameter the widget's insight depends on (via the dashboard-wide
178
+ * insight → parameter dependency map), the value is resolved in this order:
172
179
  *
173
180
  * 1. dashboard chip on the widget's tab with `runtimeOverride !== undefined`,
174
181
  * 2. else `insight.parameters` entry for that ref (AD-authored per-insight override),
175
182
  * 3. else nothing (backend uses workspace default).
176
183
  *
177
- * Parameters not referenced by the widget's metrics are excluded so that adding/removing
184
+ * Parameters the widget's insight does not depend on are excluded so that adding/removing
178
185
  * unrelated parameters does not invalidate the widget's `defFingerprint`. Returns `[]` when
179
186
  * `enableParameters` is off or while the dependency map has not been loaded.
180
187
  *
@@ -183,7 +190,7 @@ export declare const selectWidgetParameterContext: (ref: ObjRef | undefined) =>
183
190
  export declare const selectEffectiveParameterValuesForWidget: (ref: ObjRef | undefined) => DashboardSelector<IInsightParameterValue[]>;
184
191
  /**
185
192
  * The insight half of {@link selectEffectiveParameterValuesForWidget}: insight-authored values for
186
- * the metric-referenced refs, flag-gated and ref-filtered, with no dashboard chip overrides.
193
+ * the refs the insight depends on, flag-gated and ref-filtered, with no dashboard chip overrides.
187
194
  *
188
195
  * @remarks
189
196
  * Raw CSV export inlines a resolved AFM, so it must carry parameters explicitly rather than letting
@@ -1 +1 @@
1
- {"version":3,"file":"parametersSelectors.d.ts","sourceRoot":"","sources":["../../../../../src/model/store/tabs/parameters/parametersSelectors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parametersSelectors.d.ts","sourceRoot":"","sources":["../../../../../src/model/store/tabs/parameters/parametersSelectors.ts"],"names":[],"mappings":"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"}