@gooddata/sdk-ui-dashboard 11.9.0 → 11.10.0-alpha.1

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 (285) hide show
  1. package/esm/__version.d.ts +1 -1
  2. package/esm/__version.d.ts.map +1 -1
  3. package/esm/__version.js +1 -1
  4. package/esm/__version.js.map +1 -1
  5. package/esm/model/commandHandlers/common/validateDrillToCustomUrlParams.d.ts.map +1 -1
  6. package/esm/model/commandHandlers/common/validateDrillToCustomUrlParams.js +3 -2
  7. package/esm/model/commandHandlers/common/validateDrillToCustomUrlParams.js.map +1 -1
  8. package/esm/model/commandHandlers/dashboard/changeAttributeFilterDisplayAsLabelHandler.d.ts.map +1 -1
  9. package/esm/model/commandHandlers/dashboard/changeAttributeFilterDisplayAsLabelHandler.js +4 -3
  10. package/esm/model/commandHandlers/dashboard/changeAttributeFilterDisplayAsLabelHandler.js.map +1 -1
  11. package/esm/model/commandHandlers/dashboard/changeAttributeFilterLimitingItemsHandler.js +3 -3
  12. package/esm/model/commandHandlers/dashboard/changeAttributeFilterLimitingItemsHandler.js.map +1 -1
  13. package/esm/model/commandHandlers/dashboard/changeAttributeFilterModeHandler.d.ts.map +1 -1
  14. package/esm/model/commandHandlers/dashboard/changeAttributeFilterModeHandler.js +4 -3
  15. package/esm/model/commandHandlers/dashboard/changeAttributeFilterModeHandler.js.map +1 -1
  16. package/esm/model/commandHandlers/dashboard/changeDateFilterTitleHandler.d.ts.map +1 -1
  17. package/esm/model/commandHandlers/dashboard/changeDateFilterTitleHandler.js +7 -7
  18. package/esm/model/commandHandlers/dashboard/changeDateFilterTitleHandler.js.map +1 -1
  19. package/esm/model/commandHandlers/dashboard/changeDateFilterWithDimensionModeHandler.d.ts.map +1 -1
  20. package/esm/model/commandHandlers/dashboard/changeDateFilterWithDimensionModeHandler.js +5 -4
  21. package/esm/model/commandHandlers/dashboard/changeDateFilterWithDimensionModeHandler.js.map +1 -1
  22. package/esm/model/commandHandlers/dashboard/common/stateInitializers.d.ts +2 -2
  23. package/esm/model/commandHandlers/dashboard/common/stateInitializers.d.ts.map +1 -1
  24. package/esm/model/commandHandlers/dashboard/common/stateInitializers.js +234 -106
  25. package/esm/model/commandHandlers/dashboard/common/stateInitializers.js.map +1 -1
  26. package/esm/model/commandHandlers/dashboard/dateFilterConfigHandler.d.ts.map +1 -1
  27. package/esm/model/commandHandlers/dashboard/dateFilterConfigHandler.js +2 -2
  28. package/esm/model/commandHandlers/dashboard/dateFilterConfigHandler.js.map +1 -1
  29. package/esm/model/commandHandlers/dashboard/exportDashboardToPdfHandler.d.ts.map +1 -1
  30. package/esm/model/commandHandlers/dashboard/exportDashboardToPdfHandler.js +2 -1
  31. package/esm/model/commandHandlers/dashboard/exportDashboardToPdfHandler.js.map +1 -1
  32. package/esm/model/commandHandlers/dashboard/exportDashboardToPdfPresentationHandler.d.ts.map +1 -1
  33. package/esm/model/commandHandlers/dashboard/exportDashboardToPdfPresentationHandler.js +2 -1
  34. package/esm/model/commandHandlers/dashboard/exportDashboardToPdfPresentationHandler.js.map +1 -1
  35. package/esm/model/commandHandlers/dashboard/exportDashboardToPptPresentationHandler.d.ts.map +1 -1
  36. package/esm/model/commandHandlers/dashboard/exportDashboardToPptPresentationHandler.js +2 -1
  37. package/esm/model/commandHandlers/dashboard/exportDashboardToPptPresentationHandler.js.map +1 -1
  38. package/esm/model/commandHandlers/dashboard/exportToTabularHandler.js +1 -1
  39. package/esm/model/commandHandlers/dashboard/exportToTabularHandler.js.map +1 -1
  40. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/index.d.ts +1 -1
  41. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/index.d.ts.map +1 -1
  42. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/index.js +47 -20
  43. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/index.js.map +1 -1
  44. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/onDateFilterConfigValidationError.d.ts +1 -1
  45. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/onDateFilterConfigValidationError.d.ts.map +1 -1
  46. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/onDateFilterConfigValidationError.js +2 -2
  47. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/onDateFilterConfigValidationError.js.map +1 -1
  48. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/preloadAttributeFiltersData.d.ts.map +1 -1
  49. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/preloadAttributeFiltersData.js +10 -5
  50. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/preloadAttributeFiltersData.js.map +1 -1
  51. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/resolveDashboardConfig.js +2 -2
  52. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/resolveDashboardConfig.js.map +1 -1
  53. package/esm/model/commandHandlers/dashboard/resetDashboardHandler.d.ts.map +1 -1
  54. package/esm/model/commandHandlers/dashboard/resetDashboardHandler.js +62 -22
  55. package/esm/model/commandHandlers/dashboard/resetDashboardHandler.js.map +1 -1
  56. package/esm/model/commandHandlers/dashboard/saveAsDashboardHandler.js +6 -6
  57. package/esm/model/commandHandlers/dashboard/saveAsDashboardHandler.js.map +1 -1
  58. package/esm/model/commandHandlers/dashboard/saveDashboardHandler.d.ts.map +1 -1
  59. package/esm/model/commandHandlers/dashboard/saveDashboardHandler.js +39 -14
  60. package/esm/model/commandHandlers/dashboard/saveDashboardHandler.js.map +1 -1
  61. package/esm/model/commandHandlers/drill/crossFilteringHandler.js +2 -2
  62. package/esm/model/commandHandlers/drill/crossFilteringHandler.js.map +1 -1
  63. package/esm/model/commandHandlers/drill/drillToDashboardHandler.js +2 -2
  64. package/esm/model/commandHandlers/drill/drillToDashboardHandler.js.map +1 -1
  65. package/esm/model/commandHandlers/drill/resolveDrillToCustomUrl.d.ts.map +1 -1
  66. package/esm/model/commandHandlers/drill/resolveDrillToCustomUrl.js +2 -2
  67. package/esm/model/commandHandlers/drill/resolveDrillToCustomUrl.js.map +1 -1
  68. package/esm/model/commandHandlers/filterContext/attributeFilter/addAttributeFilterHandler.d.ts.map +1 -1
  69. package/esm/model/commandHandlers/filterContext/attributeFilter/addAttributeFilterHandler.js +6 -7
  70. package/esm/model/commandHandlers/filterContext/attributeFilter/addAttributeFilterHandler.js.map +1 -1
  71. package/esm/model/commandHandlers/filterContext/attributeFilter/changeAttributeDisplayFormHandler.js +4 -4
  72. package/esm/model/commandHandlers/filterContext/attributeFilter/changeAttributeDisplayFormHandler.js.map +1 -1
  73. package/esm/model/commandHandlers/filterContext/attributeFilter/changeAttributeFilterSelectionHandler.d.ts.map +1 -1
  74. package/esm/model/commandHandlers/filterContext/attributeFilter/changeAttributeFilterSelectionHandler.js +5 -4
  75. package/esm/model/commandHandlers/filterContext/attributeFilter/changeAttributeFilterSelectionHandler.js.map +1 -1
  76. package/esm/model/commandHandlers/filterContext/attributeFilter/changeAttributeSelectionModeHandler.d.ts.map +1 -1
  77. package/esm/model/commandHandlers/filterContext/attributeFilter/changeAttributeSelectionModeHandler.js +4 -3
  78. package/esm/model/commandHandlers/filterContext/attributeFilter/changeAttributeSelectionModeHandler.js.map +1 -1
  79. package/esm/model/commandHandlers/filterContext/attributeFilter/changeAttributeTitleHandler.d.ts.map +1 -1
  80. package/esm/model/commandHandlers/filterContext/attributeFilter/changeAttributeTitleHandler.js +4 -3
  81. package/esm/model/commandHandlers/filterContext/attributeFilter/changeAttributeTitleHandler.js.map +1 -1
  82. package/esm/model/commandHandlers/filterContext/attributeFilter/moveAttributeFilterHandler.d.ts.map +1 -1
  83. package/esm/model/commandHandlers/filterContext/attributeFilter/moveAttributeFilterHandler.js +4 -3
  84. package/esm/model/commandHandlers/filterContext/attributeFilter/moveAttributeFilterHandler.js.map +1 -1
  85. package/esm/model/commandHandlers/filterContext/attributeFilter/removeAttributeFiltersHandler.d.ts.map +1 -1
  86. package/esm/model/commandHandlers/filterContext/attributeFilter/removeAttributeFiltersHandler.js +6 -7
  87. package/esm/model/commandHandlers/filterContext/attributeFilter/removeAttributeFiltersHandler.js.map +1 -1
  88. package/esm/model/commandHandlers/filterContext/attributeFilter/setAttributeFilterDependentDateFilterHandler.d.ts.map +1 -1
  89. package/esm/model/commandHandlers/filterContext/attributeFilter/setAttributeFilterDependentDateFilterHandler.js +4 -3
  90. package/esm/model/commandHandlers/filterContext/attributeFilter/setAttributeFilterDependentDateFilterHandler.js.map +1 -1
  91. package/esm/model/commandHandlers/filterContext/attributeFilter/setAttributeFilterParentHandler.d.ts.map +1 -1
  92. package/esm/model/commandHandlers/filterContext/attributeFilter/setAttributeFilterParentHandler.js +4 -3
  93. package/esm/model/commandHandlers/filterContext/attributeFilter/setAttributeFilterParentHandler.js.map +1 -1
  94. package/esm/model/commandHandlers/filterContext/changeFilterContextSelectionHandler.d.ts.map +1 -1
  95. package/esm/model/commandHandlers/filterContext/changeFilterContextSelectionHandler.js +13 -14
  96. package/esm/model/commandHandlers/filterContext/changeFilterContextSelectionHandler.js.map +1 -1
  97. package/esm/model/commandHandlers/filterContext/common.d.ts +3 -3
  98. package/esm/model/commandHandlers/filterContext/common.d.ts.map +1 -1
  99. package/esm/model/commandHandlers/filterContext/common.js +6 -6
  100. package/esm/model/commandHandlers/filterContext/common.js.map +1 -1
  101. package/esm/model/commandHandlers/filterContext/dateFilter/addDateFilterHandler.js +3 -3
  102. package/esm/model/commandHandlers/filterContext/dateFilter/addDateFilterHandler.js.map +1 -1
  103. package/esm/model/commandHandlers/filterContext/dateFilter/changeDateFilterSelectionHandler.d.ts.map +1 -1
  104. package/esm/model/commandHandlers/filterContext/dateFilter/changeDateFilterSelectionHandler.js +3 -3
  105. package/esm/model/commandHandlers/filterContext/dateFilter/changeDateFilterSelectionHandler.js.map +1 -1
  106. package/esm/model/commandHandlers/filterContext/dateFilter/moveDateFilterHandler.d.ts.map +1 -1
  107. package/esm/model/commandHandlers/filterContext/dateFilter/moveDateFilterHandler.js +4 -3
  108. package/esm/model/commandHandlers/filterContext/dateFilter/moveDateFilterHandler.js.map +1 -1
  109. package/esm/model/commandHandlers/filterContext/dateFilter/removeDateFiltersHandler.d.ts.map +1 -1
  110. package/esm/model/commandHandlers/filterContext/dateFilter/removeDateFiltersHandler.js +5 -6
  111. package/esm/model/commandHandlers/filterContext/dateFilter/removeDateFiltersHandler.js.map +1 -1
  112. package/esm/model/commandHandlers/filterContext/filterViewHandler.js +4 -4
  113. package/esm/model/commandHandlers/filterContext/filterViewHandler.js.map +1 -1
  114. package/esm/model/commandHandlers/layout/validation/itemValidation.js +2 -2
  115. package/esm/model/commandHandlers/layout/validation/itemValidation.js.map +1 -1
  116. package/esm/model/commandHandlers/scheduledEmail/initializeAutomationsHandler.d.ts.map +1 -1
  117. package/esm/model/commandHandlers/scheduledEmail/initializeAutomationsHandler.js +1 -1
  118. package/esm/model/commandHandlers/scheduledEmail/initializeAutomationsHandler.js.map +1 -1
  119. package/esm/model/commandHandlers/tabs/createDashboardTabHandler.d.ts.map +1 -1
  120. package/esm/model/commandHandlers/tabs/createDashboardTabHandler.js +26 -4
  121. package/esm/model/commandHandlers/tabs/createDashboardTabHandler.js.map +1 -1
  122. package/esm/model/commandHandlers/tabs/switchDashboardTabHandler.d.ts.map +1 -1
  123. package/esm/model/commandHandlers/tabs/switchDashboardTabHandler.js +1 -93
  124. package/esm/model/commandHandlers/tabs/switchDashboardTabHandler.js.map +1 -1
  125. package/esm/model/commandHandlers/widgets/common/filterOperations.js +2 -2
  126. package/esm/model/commandHandlers/widgets/common/filterOperations.js.map +1 -1
  127. package/esm/model/commandHandlers/widgets/exportImageInsightWidgetHandler.d.ts.map +1 -1
  128. package/esm/model/commandHandlers/widgets/exportImageInsightWidgetHandler.js +2 -1
  129. package/esm/model/commandHandlers/widgets/exportImageInsightWidgetHandler.js.map +1 -1
  130. package/esm/model/commandHandlers/widgets/exportRawInsightWidgetHandler.d.ts.map +1 -1
  131. package/esm/model/commandHandlers/widgets/exportRawInsightWidgetHandler.js +2 -1
  132. package/esm/model/commandHandlers/widgets/exportRawInsightWidgetHandler.js.map +1 -1
  133. package/esm/model/commandHandlers/widgets/exportSlidesInsightWidgetHandler.d.ts.map +1 -1
  134. package/esm/model/commandHandlers/widgets/exportSlidesInsightWidgetHandler.js +2 -1
  135. package/esm/model/commandHandlers/widgets/exportSlidesInsightWidgetHandler.js.map +1 -1
  136. package/esm/model/commandHandlers/widgets/validation/filterValidation.js +2 -2
  137. package/esm/model/commandHandlers/widgets/validation/filterValidation.js.map +1 -1
  138. package/esm/model/queryServices/queryWidgetFilters.d.ts.map +1 -1
  139. package/esm/model/queryServices/queryWidgetFilters.js +1 -1
  140. package/esm/model/queryServices/queryWidgetFilters.js.map +1 -1
  141. package/esm/model/store/dashboardStore.d.ts.map +1 -1
  142. package/esm/model/store/dashboardStore.js +0 -8
  143. package/esm/model/store/dashboardStore.js.map +1 -1
  144. package/esm/model/store/index.d.ts +12 -10
  145. package/esm/model/store/index.d.ts.map +1 -1
  146. package/esm/model/store/index.js +6 -5
  147. package/esm/model/store/index.js.map +1 -1
  148. package/esm/model/store/keyDriverAnalysis/const.d.ts +14 -0
  149. package/esm/model/store/keyDriverAnalysis/const.d.ts.map +1 -0
  150. package/esm/model/store/keyDriverAnalysis/const.js +32 -0
  151. package/esm/model/store/keyDriverAnalysis/const.js.map +1 -0
  152. package/esm/model/store/layout/layoutSelectors.d.ts.map +1 -1
  153. package/esm/model/store/layout/layoutSelectors.js +1 -1
  154. package/esm/model/store/layout/layoutSelectors.js.map +1 -1
  155. package/esm/model/store/meta/metaSelectors.d.ts +76 -20
  156. package/esm/model/store/meta/metaSelectors.d.ts.map +1 -1
  157. package/esm/model/store/meta/metaSelectors.js +234 -140
  158. package/esm/model/store/meta/metaSelectors.js.map +1 -1
  159. package/esm/model/store/{attributeFilterConfigs → tabs/attributeFilterConfigs}/attributeFilterConfigsReducers.d.ts +7 -6
  160. package/esm/model/store/tabs/attributeFilterConfigs/attributeFilterConfigsReducers.d.ts.map +1 -0
  161. package/esm/model/store/tabs/attributeFilterConfigs/attributeFilterConfigsReducers.js +83 -0
  162. package/esm/model/store/tabs/attributeFilterConfigs/attributeFilterConfigsReducers.js.map +1 -0
  163. package/esm/model/store/{attributeFilterConfigs → tabs/attributeFilterConfigs}/attributeFilterConfigsSelectors.d.ts +7 -1
  164. package/esm/model/store/tabs/attributeFilterConfigs/attributeFilterConfigsSelectors.d.ts.map +1 -0
  165. package/esm/model/store/{attributeFilterConfigs → tabs/attributeFilterConfigs}/attributeFilterConfigsSelectors.js +24 -4
  166. package/esm/model/store/tabs/attributeFilterConfigs/attributeFilterConfigsSelectors.js.map +1 -0
  167. package/esm/model/store/{attributeFilterConfigs/attributeFilterConfigsState.d.ts → tabs/attributeFilterConfigs/attrtibuteFilterConfigsState.d.ts} +1 -1
  168. package/esm/model/store/tabs/attributeFilterConfigs/attrtibuteFilterConfigsState.d.ts.map +1 -0
  169. package/esm/model/store/tabs/attributeFilterConfigs/attrtibuteFilterConfigsState.js +5 -0
  170. package/esm/model/store/tabs/attributeFilterConfigs/attrtibuteFilterConfigsState.js.map +1 -0
  171. package/esm/model/store/{dateFilterConfig → tabs/dateFilterConfig}/dateFilterConfigReducers.d.ts +3 -3
  172. package/esm/model/store/tabs/dateFilterConfig/dateFilterConfigReducers.d.ts.map +1 -0
  173. package/esm/model/store/tabs/dateFilterConfig/dateFilterConfigReducers.js +117 -0
  174. package/esm/model/store/tabs/dateFilterConfig/dateFilterConfigReducers.js.map +1 -0
  175. package/esm/model/store/{dateFilterConfig → tabs/dateFilterConfig}/dateFilterConfigSelectors.d.ts +8 -2
  176. package/esm/model/store/tabs/dateFilterConfig/dateFilterConfigSelectors.d.ts.map +1 -0
  177. package/esm/model/store/{dateFilterConfig → tabs/dateFilterConfig}/dateFilterConfigSelectors.js +36 -13
  178. package/esm/model/store/tabs/dateFilterConfig/dateFilterConfigSelectors.js.map +1 -0
  179. package/esm/model/store/{dateFilterConfig → tabs/dateFilterConfig}/dateFilterConfigState.d.ts +1 -1
  180. package/esm/model/store/tabs/dateFilterConfig/dateFilterConfigState.d.ts.map +1 -0
  181. package/esm/model/store/tabs/dateFilterConfig/dateFilterConfigState.js.map +1 -0
  182. package/esm/model/store/{dateFilterConfigs → tabs/dateFilterConfigs}/dateFilterConfigsReducers.d.ts +7 -7
  183. package/esm/model/store/tabs/dateFilterConfigs/dateFilterConfigsReducers.d.ts.map +1 -0
  184. package/esm/model/store/tabs/dateFilterConfigs/dateFilterConfigsReducers.js +105 -0
  185. package/esm/model/store/tabs/dateFilterConfigs/dateFilterConfigsReducers.js.map +1 -0
  186. package/esm/model/store/{dateFilterConfigs → tabs/dateFilterConfigs}/dateFilterConfigsSelectors.d.ts +7 -1
  187. package/esm/model/store/tabs/dateFilterConfigs/dateFilterConfigsSelectors.d.ts.map +1 -0
  188. package/esm/model/store/{dateFilterConfigs → tabs/dateFilterConfigs}/dateFilterConfigsSelectors.js +24 -4
  189. package/esm/model/store/tabs/dateFilterConfigs/dateFilterConfigsSelectors.js.map +1 -0
  190. package/esm/model/store/tabs/dateFilterConfigs/dateFilterConfigsState.d.ts.map +1 -0
  191. package/esm/model/store/tabs/dateFilterConfigs/dateFilterConfigsState.js +5 -0
  192. package/esm/model/store/tabs/dateFilterConfigs/dateFilterConfigsState.js.map +1 -0
  193. package/esm/model/store/{filterContext → tabs/filterContext}/filterContextReducers.d.ts +54 -3
  194. package/esm/model/store/tabs/filterContext/filterContextReducers.d.ts.map +1 -0
  195. package/esm/model/store/{filterContext → tabs/filterContext}/filterContextReducers.js +237 -92
  196. package/esm/model/store/tabs/filterContext/filterContextReducers.js.map +1 -0
  197. package/esm/model/store/{filterContext → tabs/filterContext}/filterContextSelectors.d.ts +182 -2
  198. package/esm/model/store/tabs/filterContext/filterContextSelectors.d.ts.map +1 -0
  199. package/esm/model/store/{filterContext → tabs/filterContext}/filterContextSelectors.js +55 -8
  200. package/esm/model/store/tabs/filterContext/filterContextSelectors.js.map +1 -0
  201. package/esm/model/store/tabs/filterContext/filterContextState.d.ts.map +1 -0
  202. package/esm/model/store/tabs/filterContext/filterContextState.js.map +1 -0
  203. package/esm/model/store/tabs/filterContext/filterContextUtils.d.ts +35 -0
  204. package/esm/model/store/tabs/filterContext/filterContextUtils.d.ts.map +1 -0
  205. package/esm/model/store/{filterContext → tabs/filterContext}/filterContextUtils.js +55 -0
  206. package/esm/model/store/tabs/filterContext/filterContextUtils.js.map +1 -0
  207. package/esm/model/store/tabs/index.d.ts +175 -12
  208. package/esm/model/store/tabs/index.d.ts.map +1 -1
  209. package/esm/model/store/tabs/index.js +15 -3
  210. package/esm/model/store/tabs/index.js.map +1 -1
  211. package/esm/model/store/tabs/tabsReducers.d.ts +22 -6
  212. package/esm/model/store/tabs/tabsReducers.d.ts.map +1 -1
  213. package/esm/model/store/tabs/tabsReducers.js +37 -3
  214. package/esm/model/store/tabs/tabsReducers.js.map +1 -1
  215. package/esm/model/store/tabs/tabsSelectors.d.ts +31 -6
  216. package/esm/model/store/tabs/tabsSelectors.d.ts.map +1 -1
  217. package/esm/model/store/tabs/tabsSelectors.js +6 -0
  218. package/esm/model/store/tabs/tabsSelectors.js.map +1 -1
  219. package/esm/model/store/tabs/tabsState.d.ts +30 -3
  220. package/esm/model/store/tabs/tabsState.d.ts.map +1 -1
  221. package/esm/model/store/tabs/tabsState.js +13 -0
  222. package/esm/model/store/tabs/tabsState.js.map +1 -1
  223. package/esm/model/store/types.d.ts +0 -11
  224. package/esm/model/store/types.d.ts.map +1 -1
  225. package/esm/model/store/widgetDrills/widgetDrillSelectors.d.ts.map +1 -1
  226. package/esm/model/store/widgetDrills/widgetDrillSelectors.js +3 -11
  227. package/esm/model/store/widgetDrills/widgetDrillSelectors.js.map +1 -1
  228. package/esm/presentation/drill/utils/kdaUtils.d.ts.map +1 -1
  229. package/esm/presentation/drill/utils/kdaUtils.js +7 -1
  230. package/esm/presentation/drill/utils/kdaUtils.js.map +1 -1
  231. package/esm/sdk-ui-dashboard.d.ts +365 -22
  232. package/package.json +18 -18
  233. package/styles/css/main.css +5 -5
  234. package/esm/model/store/attributeFilterConfigs/attributeFilterConfigsReducers.d.ts.map +0 -1
  235. package/esm/model/store/attributeFilterConfigs/attributeFilterConfigsReducers.js +0 -43
  236. package/esm/model/store/attributeFilterConfigs/attributeFilterConfigsReducers.js.map +0 -1
  237. package/esm/model/store/attributeFilterConfigs/attributeFilterConfigsSelectors.d.ts.map +0 -1
  238. package/esm/model/store/attributeFilterConfigs/attributeFilterConfigsSelectors.js.map +0 -1
  239. package/esm/model/store/attributeFilterConfigs/attributeFilterConfigsState.d.ts.map +0 -1
  240. package/esm/model/store/attributeFilterConfigs/attributeFilterConfigsState.js +0 -4
  241. package/esm/model/store/attributeFilterConfigs/attributeFilterConfigsState.js.map +0 -1
  242. package/esm/model/store/attributeFilterConfigs/index.d.ts +0 -10
  243. package/esm/model/store/attributeFilterConfigs/index.d.ts.map +0 -1
  244. package/esm/model/store/attributeFilterConfigs/index.js +0 -13
  245. package/esm/model/store/attributeFilterConfigs/index.js.map +0 -1
  246. package/esm/model/store/dateFilterConfig/dateFilterConfigReducers.d.ts.map +0 -1
  247. package/esm/model/store/dateFilterConfig/dateFilterConfigReducers.js +0 -55
  248. package/esm/model/store/dateFilterConfig/dateFilterConfigReducers.js.map +0 -1
  249. package/esm/model/store/dateFilterConfig/dateFilterConfigSelectors.d.ts.map +0 -1
  250. package/esm/model/store/dateFilterConfig/dateFilterConfigSelectors.js.map +0 -1
  251. package/esm/model/store/dateFilterConfig/dateFilterConfigState.d.ts.map +0 -1
  252. package/esm/model/store/dateFilterConfig/dateFilterConfigState.js.map +0 -1
  253. package/esm/model/store/dateFilterConfig/index.d.ts +0 -16
  254. package/esm/model/store/dateFilterConfig/index.d.ts.map +0 -1
  255. package/esm/model/store/dateFilterConfig/index.js +0 -13
  256. package/esm/model/store/dateFilterConfig/index.js.map +0 -1
  257. package/esm/model/store/dateFilterConfigs/dateFilterConfigsReducers.d.ts.map +0 -1
  258. package/esm/model/store/dateFilterConfigs/dateFilterConfigsReducers.js +0 -63
  259. package/esm/model/store/dateFilterConfigs/dateFilterConfigsReducers.js.map +0 -1
  260. package/esm/model/store/dateFilterConfigs/dateFilterConfigsSelectors.d.ts.map +0 -1
  261. package/esm/model/store/dateFilterConfigs/dateFilterConfigsSelectors.js.map +0 -1
  262. package/esm/model/store/dateFilterConfigs/dateFilterConfigsState.d.ts.map +0 -1
  263. package/esm/model/store/dateFilterConfigs/dateFilterConfigsState.js +0 -4
  264. package/esm/model/store/dateFilterConfigs/dateFilterConfigsState.js.map +0 -1
  265. package/esm/model/store/dateFilterConfigs/index.d.ts +0 -10
  266. package/esm/model/store/dateFilterConfigs/index.d.ts.map +0 -1
  267. package/esm/model/store/dateFilterConfigs/index.js +0 -13
  268. package/esm/model/store/dateFilterConfigs/index.js.map +0 -1
  269. package/esm/model/store/filterContext/filterContextReducers.d.ts.map +0 -1
  270. package/esm/model/store/filterContext/filterContextReducers.js.map +0 -1
  271. package/esm/model/store/filterContext/filterContextSelectors.d.ts.map +0 -1
  272. package/esm/model/store/filterContext/filterContextSelectors.js.map +0 -1
  273. package/esm/model/store/filterContext/filterContextState.d.ts.map +0 -1
  274. package/esm/model/store/filterContext/filterContextState.js.map +0 -1
  275. package/esm/model/store/filterContext/filterContextUtils.d.ts +0 -14
  276. package/esm/model/store/filterContext/filterContextUtils.d.ts.map +0 -1
  277. package/esm/model/store/filterContext/filterContextUtils.js.map +0 -1
  278. package/esm/model/store/filterContext/index.d.ts +0 -36
  279. package/esm/model/store/filterContext/index.d.ts.map +0 -1
  280. package/esm/model/store/filterContext/index.js +0 -13
  281. package/esm/model/store/filterContext/index.js.map +0 -1
  282. /package/esm/model/store/{dateFilterConfig → tabs/dateFilterConfig}/dateFilterConfigState.js +0 -0
  283. /package/esm/model/store/{dateFilterConfigs → tabs/dateFilterConfigs}/dateFilterConfigsState.d.ts +0 -0
  284. /package/esm/model/store/{filterContext → tabs/filterContext}/filterContextState.d.ts +0 -0
  285. /package/esm/model/store/{filterContext → tabs/filterContext}/filterContextState.js +0 -0
@@ -1,7 +1,186 @@
1
1
  import { IAttributeWithReferences } from "@gooddata/sdk-backend-spi";
2
2
  import { FilterContextItem, IAttributeDisplayFormMetadataObject, IDashboardAttributeFilter, IDashboardDateFilter, IDashboardObjectIdentity, IFilterContextDefinition, ObjRef } from "@gooddata/sdk-model";
3
- import { ObjRefMap } from "../../../_staging/metadata/objRefMap.js";
4
- import { DashboardSelector, DashboardState } from "../types.js";
3
+ import { ObjRefMap } from "../../../../_staging/metadata/objRefMap.js";
4
+ import { DashboardSelector, DashboardState } from "../../types.js";
5
+ import { type FilterContextState } from "./filterContextState.js";
6
+ /**
7
+ * Returns filter context state for each tab keyed by identifier.
8
+ *
9
+ * @internal
10
+ */
11
+ export declare const selectFilterContextStatesByTab: ((state: DashboardState) => Record<string, FilterContextState>) & {
12
+ clearCache: () => void;
13
+ resultsCount: () => number;
14
+ resetResultsCount: () => void;
15
+ } & {
16
+ resultFunc: (resultFuncArgs_0: import("../tabsState.js").TabState[]) => Record<string, FilterContextState>;
17
+ memoizedResultFunc: ((resultFuncArgs_0: import("../tabsState.js").TabState[]) => Record<string, FilterContextState>) & {
18
+ clearCache: () => void;
19
+ resultsCount: () => number;
20
+ resetResultsCount: () => void;
21
+ };
22
+ lastResult: () => Record<string, FilterContextState>;
23
+ dependencies: [((state: DashboardState) => import("../tabsState.js").TabState[]) & {
24
+ clearCache: () => void;
25
+ resultsCount: () => number;
26
+ resetResultsCount: () => void;
27
+ } & {
28
+ resultFunc: (resultFuncArgs_0: import("../tabsState.js").TabState[] | undefined) => import("../tabsState.js").TabState[];
29
+ memoizedResultFunc: ((resultFuncArgs_0: import("../tabsState.js").TabState[] | undefined) => import("../tabsState.js").TabState[]) & {
30
+ clearCache: () => void;
31
+ resultsCount: () => number;
32
+ resetResultsCount: () => void;
33
+ };
34
+ lastResult: () => import("../tabsState.js").TabState[];
35
+ dependencies: [DashboardSelector<import("../tabsState.js").TabState[] | undefined>];
36
+ recomputations: () => number;
37
+ resetRecomputations: () => void;
38
+ dependencyRecomputations: () => number;
39
+ resetDependencyRecomputations: () => void;
40
+ } & {
41
+ argsMemoize: typeof import("@reduxjs/toolkit").weakMapMemoize;
42
+ memoize: typeof import("@reduxjs/toolkit").weakMapMemoize;
43
+ }];
44
+ recomputations: () => number;
45
+ resetRecomputations: () => void;
46
+ dependencyRecomputations: () => number;
47
+ resetDependencyRecomputations: () => void;
48
+ } & {
49
+ argsMemoize: typeof import("@reduxjs/toolkit").weakMapMemoize;
50
+ memoize: typeof import("@reduxjs/toolkit").weakMapMemoize;
51
+ };
52
+ /**
53
+ * Returns applied filter context definitions for each tab keyed by identifier.
54
+ *
55
+ * @internal
56
+ */
57
+ export declare const selectFilterContextDefinitionsByTab: ((state: DashboardState) => Record<string, IFilterContextDefinition | undefined>) & {
58
+ clearCache: () => void;
59
+ resultsCount: () => number;
60
+ resetResultsCount: () => void;
61
+ } & {
62
+ resultFunc: (resultFuncArgs_0: Record<string, FilterContextState>) => Record<string, IFilterContextDefinition | undefined>;
63
+ memoizedResultFunc: ((resultFuncArgs_0: Record<string, FilterContextState>) => Record<string, IFilterContextDefinition | undefined>) & {
64
+ clearCache: () => void;
65
+ resultsCount: () => number;
66
+ resetResultsCount: () => void;
67
+ };
68
+ lastResult: () => Record<string, IFilterContextDefinition | undefined>;
69
+ dependencies: [((state: DashboardState) => Record<string, FilterContextState>) & {
70
+ clearCache: () => void;
71
+ resultsCount: () => number;
72
+ resetResultsCount: () => void;
73
+ } & {
74
+ resultFunc: (resultFuncArgs_0: import("../tabsState.js").TabState[]) => Record<string, FilterContextState>;
75
+ memoizedResultFunc: ((resultFuncArgs_0: import("../tabsState.js").TabState[]) => Record<string, FilterContextState>) & {
76
+ clearCache: () => void;
77
+ resultsCount: () => number;
78
+ resetResultsCount: () => void;
79
+ };
80
+ lastResult: () => Record<string, FilterContextState>;
81
+ dependencies: [((state: DashboardState) => import("../tabsState.js").TabState[]) & {
82
+ clearCache: () => void;
83
+ resultsCount: () => number;
84
+ resetResultsCount: () => void;
85
+ } & {
86
+ resultFunc: (resultFuncArgs_0: import("../tabsState.js").TabState[] | undefined) => import("../tabsState.js").TabState[];
87
+ memoizedResultFunc: ((resultFuncArgs_0: import("../tabsState.js").TabState[] | undefined) => import("../tabsState.js").TabState[]) & {
88
+ clearCache: () => void;
89
+ resultsCount: () => number;
90
+ resetResultsCount: () => void;
91
+ };
92
+ lastResult: () => import("../tabsState.js").TabState[];
93
+ dependencies: [DashboardSelector<import("../tabsState.js").TabState[] | undefined>];
94
+ recomputations: () => number;
95
+ resetRecomputations: () => void;
96
+ dependencyRecomputations: () => number;
97
+ resetDependencyRecomputations: () => void;
98
+ } & {
99
+ argsMemoize: typeof import("@reduxjs/toolkit").weakMapMemoize;
100
+ memoize: typeof import("@reduxjs/toolkit").weakMapMemoize;
101
+ }];
102
+ recomputations: () => number;
103
+ resetRecomputations: () => void;
104
+ dependencyRecomputations: () => number;
105
+ resetDependencyRecomputations: () => void;
106
+ } & {
107
+ argsMemoize: typeof import("@reduxjs/toolkit").weakMapMemoize;
108
+ memoize: typeof import("@reduxjs/toolkit").weakMapMemoize;
109
+ }];
110
+ recomputations: () => number;
111
+ resetRecomputations: () => void;
112
+ dependencyRecomputations: () => number;
113
+ resetDependencyRecomputations: () => void;
114
+ } & {
115
+ argsMemoize: typeof import("@reduxjs/toolkit").weakMapMemoize;
116
+ memoize: typeof import("@reduxjs/toolkit").weakMapMemoize;
117
+ };
118
+ /**
119
+ * Returns original (persisted) filter context definitions for each tab keyed by identifier.
120
+ *
121
+ * @internal
122
+ */
123
+ export declare const selectOriginalFilterContextDefinitionsByTab: ((state: DashboardState) => Record<string, IFilterContextDefinition | undefined>) & {
124
+ clearCache: () => void;
125
+ resultsCount: () => number;
126
+ resetResultsCount: () => void;
127
+ } & {
128
+ resultFunc: (resultFuncArgs_0: Record<string, FilterContextState>) => Record<string, IFilterContextDefinition | undefined>;
129
+ memoizedResultFunc: ((resultFuncArgs_0: Record<string, FilterContextState>) => Record<string, IFilterContextDefinition | undefined>) & {
130
+ clearCache: () => void;
131
+ resultsCount: () => number;
132
+ resetResultsCount: () => void;
133
+ };
134
+ lastResult: () => Record<string, IFilterContextDefinition | undefined>;
135
+ dependencies: [((state: DashboardState) => Record<string, FilterContextState>) & {
136
+ clearCache: () => void;
137
+ resultsCount: () => number;
138
+ resetResultsCount: () => void;
139
+ } & {
140
+ resultFunc: (resultFuncArgs_0: import("../tabsState.js").TabState[]) => Record<string, FilterContextState>;
141
+ memoizedResultFunc: ((resultFuncArgs_0: import("../tabsState.js").TabState[]) => Record<string, FilterContextState>) & {
142
+ clearCache: () => void;
143
+ resultsCount: () => number;
144
+ resetResultsCount: () => void;
145
+ };
146
+ lastResult: () => Record<string, FilterContextState>;
147
+ dependencies: [((state: DashboardState) => import("../tabsState.js").TabState[]) & {
148
+ clearCache: () => void;
149
+ resultsCount: () => number;
150
+ resetResultsCount: () => void;
151
+ } & {
152
+ resultFunc: (resultFuncArgs_0: import("../tabsState.js").TabState[] | undefined) => import("../tabsState.js").TabState[];
153
+ memoizedResultFunc: ((resultFuncArgs_0: import("../tabsState.js").TabState[] | undefined) => import("../tabsState.js").TabState[]) & {
154
+ clearCache: () => void;
155
+ resultsCount: () => number;
156
+ resetResultsCount: () => void;
157
+ };
158
+ lastResult: () => import("../tabsState.js").TabState[];
159
+ dependencies: [DashboardSelector<import("../tabsState.js").TabState[] | undefined>];
160
+ recomputations: () => number;
161
+ resetRecomputations: () => void;
162
+ dependencyRecomputations: () => number;
163
+ resetDependencyRecomputations: () => void;
164
+ } & {
165
+ argsMemoize: typeof import("@reduxjs/toolkit").weakMapMemoize;
166
+ memoize: typeof import("@reduxjs/toolkit").weakMapMemoize;
167
+ }];
168
+ recomputations: () => number;
169
+ resetRecomputations: () => void;
170
+ dependencyRecomputations: () => number;
171
+ resetDependencyRecomputations: () => void;
172
+ } & {
173
+ argsMemoize: typeof import("@reduxjs/toolkit").weakMapMemoize;
174
+ memoize: typeof import("@reduxjs/toolkit").weakMapMemoize;
175
+ }];
176
+ recomputations: () => number;
177
+ resetRecomputations: () => void;
178
+ dependencyRecomputations: () => number;
179
+ resetDependencyRecomputations: () => void;
180
+ } & {
181
+ argsMemoize: typeof import("@reduxjs/toolkit").weakMapMemoize;
182
+ memoize: typeof import("@reduxjs/toolkit").weakMapMemoize;
183
+ };
5
184
  /**
6
185
  * This selector returns array of filter localIds that have invalid selections.
7
186
  *
@@ -320,6 +499,7 @@ export declare const selectCanAddMoreFilters: DashboardSelector<boolean>;
320
499
  export declare const selectIsAttributeFilterDependentByLocalIdentifier: (attributeFilterLocalIdentifier: string) => DashboardSelector<boolean>;
321
500
  /**
322
501
  * Select preloaded attribute metadata objects with references for attribute filters.
502
+ * Returns merged attributes from all filters across all tabs.
323
503
  *
324
504
  * @internal
325
505
  */
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterContextSelectors.d.ts","sourceRoot":"","sources":["../../../../../src/model/store/tabs/filterContext/filterContextSelectors.ts"],"names":[],"mappings":"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"}
@@ -4,12 +4,58 @@ import { compact, isEmpty, isEqual, keyBy, sortBy } from "lodash-es";
4
4
  import { invariant } from "ts-invariant";
5
5
  import { areObjRefsEqual, getAttributeElementsItems, idRef, isDashboardAttributeFilter, isDashboardCommonDateFilter, isDashboardDateFilterWithDimension, isObjRef, uriRef, } from "@gooddata/sdk-model";
6
6
  import { applyFilterContext, getFilterIdentifier } from "./filterContextUtils.js";
7
- import { newDisplayFormMap } from "../../../_staging/metadata/objRefMap.js";
8
- import { createMemoizedSelector } from "../_infra/selectors.js";
9
- import { selectSupportsCircularDependencyInFilters } from "../backendCapabilities/backendCapabilitiesSelectors.js";
10
- import { selectEnableImmediateAttributeFilterDisplayAsLabelMigration } from "../config/configSelectors.js";
11
- import { selectCrossFilteringFiltersLocalIdentifiers } from "../drill/drillSelectors.js";
12
- const selectSelf = createSelector((state) => state, (state) => state.filterContext);
7
+ import { newDisplayFormMap } from "../../../../_staging/metadata/objRefMap.js";
8
+ import { createMemoizedSelector } from "../../_infra/selectors.js";
9
+ import { selectSupportsCircularDependencyInFilters } from "../../backendCapabilities/backendCapabilitiesSelectors.js";
10
+ import { selectEnableImmediateAttributeFilterDisplayAsLabelMigration } from "../../config/configSelectors.js";
11
+ import { selectCrossFilteringFiltersLocalIdentifiers } from "../../drill/drillSelectors.js";
12
+ import { DEFAULT_TAB_ID, selectActiveTabId, selectTabs, selectTabsState } from "../index.js";
13
+ import { filterContextInitialState } from "./filterContextState.js";
14
+ const selectSelf = createSelector(selectTabs, selectActiveTabId, (tabs, activeTabId) => {
15
+ if (!tabs || !activeTabId) {
16
+ return filterContextInitialState;
17
+ }
18
+ const activeTab = tabs.find((tab) => tab.identifier === activeTabId);
19
+ return activeTab?.filterContext ?? filterContextInitialState;
20
+ });
21
+ const selectTabsArray = createSelector(selectTabs, (tabs) => tabs ?? []);
22
+ /**
23
+ * Returns filter context state for each tab keyed by identifier.
24
+ *
25
+ * @internal
26
+ */
27
+ export const selectFilterContextStatesByTab = createSelector(selectTabsArray, (tabs) => {
28
+ if (!tabs.length) {
29
+ return {};
30
+ }
31
+ return tabs.reduce((acc, tab) => {
32
+ const identifier = tab.identifier ?? DEFAULT_TAB_ID;
33
+ acc[identifier] = tab.filterContext ?? filterContextInitialState;
34
+ return acc;
35
+ }, {});
36
+ });
37
+ /**
38
+ * Returns applied filter context definitions for each tab keyed by identifier.
39
+ *
40
+ * @internal
41
+ */
42
+ export const selectFilterContextDefinitionsByTab = createSelector(selectFilterContextStatesByTab, (statesByTab) => {
43
+ return Object.entries(statesByTab).reduce((acc, [identifier, state]) => {
44
+ acc[identifier] = state.filterContextDefinition;
45
+ return acc;
46
+ }, {});
47
+ });
48
+ /**
49
+ * Returns original (persisted) filter context definitions for each tab keyed by identifier.
50
+ *
51
+ * @internal
52
+ */
53
+ export const selectOriginalFilterContextDefinitionsByTab = createSelector(selectFilterContextStatesByTab, (statesByTab) => {
54
+ return Object.entries(statesByTab).reduce((acc, [identifier, state]) => {
55
+ acc[identifier] = state.originalFilterContextDefinition;
56
+ return acc;
57
+ }, {});
58
+ });
13
59
  /**
14
60
  * This selector returns array of filter localIds that have invalid selections.
15
61
  *
@@ -426,11 +472,12 @@ export const selectIsAttributeFilterDependentByLocalIdentifier = createMemoizedS
426
472
  }));
427
473
  /**
428
474
  * Select preloaded attribute metadata objects with references for attribute filters.
475
+ * Returns merged attributes from all filters across all tabs.
429
476
  *
430
477
  * @internal
431
478
  */
432
- export const selectPreloadedAttributesWithReferences = createSelector(selectSelf, (state) => {
433
- return state.attributesWithReferences;
479
+ export const selectPreloadedAttributesWithReferences = createSelector(selectTabsState, (tabsState) => {
480
+ return tabsState.attributesWithReferences;
434
481
  });
435
482
  /**
436
483
  * This selector returns an array of attribute names related to filters with invalid selection.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterContextSelectors.js","sourceRoot":"","sources":["../../../../../src/model/store/tabs/filterContext/filterContextSelectors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterContextState.d.ts","sourceRoot":"","sources":["../../../../../src/model/store/tabs/filterContext/filterContextState.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EACH,iBAAiB,EACjB,mCAAmC,EACnC,yBAAyB,EACzB,oBAAoB,EACpB,wBAAwB,EACxB,wBAAwB,EAC3B,MAAM,qBAAqB,CAAC;AAE7B;;;;GAIG;AACH,MAAM,MAAM,+BAA+B,GAAG;IAC1C,eAAe,EAAE,OAAO,CAAC,yBAAyB,CAAC,iBAAiB,CAAC,CAAC,CAAC;CAC1E,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,wBAAwB,GAAG,+BAA+B,GAAG,oBAAoB,CAAC;AAE9F;;;;GAIG;AACH,MAAM,WAAW,+BAA+B;IAC5C;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,wBAAwB,EAAE,CAAC;CAChD;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAC/B;;;;OAIG;IACH,2BAA2B,EAAE,MAAM,EAAE,CAAC;IAEtC;;;;OAIG;IACH,uBAAuB,CAAC,EAAE,wBAAwB,CAAC;IAEnD;;;;;;;;;;;;;;OAcG;IACH,8BAA8B,CAAC,EAAE,+BAA+B,CAAC;IAEjE;;;OAGG;IACH,+BAA+B,CAAC,EAAE,wBAAwB,CAAC;IAE3D;;;;;;;;;;;;;;;OAeG;IACH,qBAAqB,CAAC,EAAE,wBAAwB,CAAC;IAEjD;;;OAGG;IACH,2BAA2B,CAAC,EAAE,mCAAmC,EAAE,CAAC;IAEpE;;;OAGG;IACH,wBAAwB,CAAC,EAAE,wBAAwB,EAAE,CAAC;IAEtD;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,iBAAiB,EAAE,CAAC;CAChD;AAED,eAAO,MAAM,yBAAyB,EAAE,kBAQvC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterContextState.js","sourceRoot":"","sources":["../../../../../src/model/store/tabs/filterContext/filterContextState.ts"],"names":[],"mappings":"AAAA,qCAAqC;AAuHrC,MAAM,CAAC,MAAM,yBAAyB,GAAuB;IACzD,2BAA2B,EAAE,EAAE;IAC/B,uBAAuB,EAAE,SAAS;IAClC,8BAA8B,EAAE,SAAS;IACzC,qBAAqB,EAAE,SAAS;IAChC,2BAA2B,EAAE,SAAS;IACtC,wBAAwB,EAAE,SAAS;IACnC,sBAAsB,EAAE,SAAS;CACpC,CAAC"}
@@ -0,0 +1,35 @@
1
+ import { FilterContextItem, IAttributeDisplayFormMetadataObject, IDashboardObjectIdentity, IFilterContextDefinition } from "@gooddata/sdk-model";
2
+ import type { FilterContextState, IWorkingFilterContextDefinition } from "./filterContextState.js";
3
+ /**
4
+ * Deeply merges partial working filter context into filter context definition.
5
+ * @returns full working filter context.
6
+ *
7
+ * @internal
8
+ */
9
+ export declare function applyFilterContext(filterContext: IFilterContextDefinition, workingFilterContext: IWorkingFilterContextDefinition | undefined, enableImmediateAttributeFilterDisplayAsLabelMigration?: boolean): IFilterContextDefinition;
10
+ /**
11
+ * Initializes filter context definition by ensuring filters have local identifiers
12
+ * and are in proper order (common date filter first).
13
+ *
14
+ * @param filterContextDefinition - The filter context definition to initialize
15
+ * @returns Initialized filter context definition with local identifiers and proper ordering
16
+ * @internal
17
+ */
18
+ export declare function initializeFilterContextDefinition(filterContextDefinition: IFilterContextDefinition): IFilterContextDefinition;
19
+ /**
20
+ * Creates a complete initialized FilterContextState from raw data.
21
+ * Applies all initialization logic including local identifiers and filter ordering.
22
+ *
23
+ * @param filterContextDefinition - The filter context definition
24
+ * @param originalFilterContextDefinition - Optional original definition for reset functionality
25
+ * @param attributeFilterDisplayForms - Display forms for attribute filters
26
+ * @param filterContextIdentity - Optional identity for persisted filter contexts
27
+ * @returns Fully initialized FilterContextState
28
+ * @internal
29
+ */
30
+ export declare function initializeFilterContext(filterContextDefinition: IFilterContextDefinition, originalFilterContextDefinition?: IFilterContextDefinition, attributeFilterDisplayForms?: IAttributeDisplayFormMetadataObject[], filterContextIdentity?: IDashboardObjectIdentity): FilterContextState;
31
+ /**
32
+ * @internal
33
+ */
34
+ export declare function getFilterIdentifier(filter: FilterContextItem): string;
35
+ //# sourceMappingURL=filterContextUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterContextUtils.d.ts","sourceRoot":"","sources":["../../../../../src/model/store/tabs/filterContext/filterContextUtils.ts"],"names":[],"mappings":"AAIA,OAAO,EACH,iBAAiB,EACjB,mCAAmC,EAGnC,wBAAwB,EACxB,wBAAwB,EAO3B,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAE,kBAAkB,EAAE,+BAA+B,EAAE,MAAM,yBAAyB,CAAC;AAGnG;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAC9B,aAAa,EAAE,wBAAwB,EACvC,oBAAoB,EAAE,+BAA+B,GAAG,SAAS,EACjE,qDAAqD,CAAC,EAAE,OAAO,GAChE,wBAAwB,CAoF1B;AAED;;;;;;;GAOG;AACH,wBAAgB,iCAAiC,CAC7C,uBAAuB,EAAE,wBAAwB,GAClD,wBAAwB,CA0B1B;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,uBAAuB,CACnC,uBAAuB,EAAE,wBAAwB,EACjD,+BAA+B,CAAC,EAAE,wBAAwB,EAC1D,2BAA2B,CAAC,EAAE,mCAAmC,EAAE,EACnE,qBAAqB,CAAC,EAAE,wBAAwB,GACjD,kBAAkB,CAYpB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAiBrE"}
@@ -1,5 +1,7 @@
1
1
  // (C) 2021-2025 GoodData Corporation
2
+ import { partition } from "lodash-es";
2
3
  import { areObjRefsEqual, isAllTimeDashboardDateFilter, isDashboardAttributeFilter, isDashboardCommonDateFilter, isDashboardDateFilter, objRefToString, } from "@gooddata/sdk-model";
4
+ import { generateFilterLocalIdentifier } from "../../_infra/generators.js";
3
5
  /**
4
6
  * Deeply merges partial working filter context into filter context definition.
5
7
  * @returns full working filter context.
@@ -74,6 +76,59 @@ export function applyFilterContext(filterContext, workingFilterContext, enableIm
74
76
  filters: [workingCommonDateFilter, ...filters],
75
77
  };
76
78
  }
79
+ /**
80
+ * Initializes filter context definition by ensuring filters have local identifiers
81
+ * and are in proper order (common date filter first).
82
+ *
83
+ * @param filterContextDefinition - The filter context definition to initialize
84
+ * @returns Initialized filter context definition with local identifiers and proper ordering
85
+ * @internal
86
+ */
87
+ export function initializeFilterContextDefinition(filterContextDefinition) {
88
+ // Make sure attribute filters always have localId
89
+ const filtersWithLocalId = filterContextDefinition.filters?.map((filter, i) => isDashboardAttributeFilter(filter)
90
+ ? {
91
+ attributeFilter: {
92
+ ...filter.attributeFilter,
93
+ localIdentifier: filter.attributeFilter.localIdentifier ??
94
+ generateFilterLocalIdentifier(filter.attributeFilter.displayForm, i),
95
+ },
96
+ }
97
+ : filter);
98
+ // Make sure that common date filter is always first if present
99
+ // (when DateFilter is set to all time it's missing in filterContextDefinition and originalFilterContextDefinition)
100
+ // We have to keep order of rest of array (attributeFilters and date filters with dimension)
101
+ // it represents order of filters in filter bar
102
+ const [commonDateFilter, otherFilters] = partition(filtersWithLocalId, isDashboardCommonDateFilter);
103
+ const filters = [...commonDateFilter, ...otherFilters];
104
+ return {
105
+ ...filterContextDefinition,
106
+ filters,
107
+ };
108
+ }
109
+ /**
110
+ * Creates a complete initialized FilterContextState from raw data.
111
+ * Applies all initialization logic including local identifiers and filter ordering.
112
+ *
113
+ * @param filterContextDefinition - The filter context definition
114
+ * @param originalFilterContextDefinition - Optional original definition for reset functionality
115
+ * @param attributeFilterDisplayForms - Display forms for attribute filters
116
+ * @param filterContextIdentity - Optional identity for persisted filter contexts
117
+ * @returns Fully initialized FilterContextState
118
+ * @internal
119
+ */
120
+ export function initializeFilterContext(filterContextDefinition, originalFilterContextDefinition, attributeFilterDisplayForms, filterContextIdentity) {
121
+ const initialized = initializeFilterContextDefinition(filterContextDefinition);
122
+ return {
123
+ filtersWithInvalidSelection: [],
124
+ filterContextDefinition: initialized,
125
+ workingFilterContextDefinition: { filters: [] },
126
+ originalFilterContextDefinition,
127
+ filterContextIdentity,
128
+ attributeFilterDisplayForms: attributeFilterDisplayForms ?? [],
129
+ defaultFilterOverrides: [],
130
+ };
131
+ }
77
132
  /**
78
133
  * @internal
79
134
  */
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterContextUtils.js","sourceRoot":"","sources":["../../../../../src/model/store/tabs/filterContext/filterContextUtils.ts"],"names":[],"mappings":"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"}