@gooddata/sdk-ui-dashboard 11.60.0-alpha.2 → 11.60.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 (174) hide show
  1. package/esm/__version.d.ts +1 -1
  2. package/esm/__version.js +1 -1
  3. package/esm/internal.d.ts +3 -0
  4. package/esm/internal.d.ts.map +1 -1
  5. package/esm/internal.js +3 -0
  6. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/index.d.ts +1 -1
  7. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/index.d.ts.map +1 -1
  8. package/esm/model/commandHandlers/scheduledEmail/initializeAutomationsHandler.d.ts.map +1 -1
  9. package/esm/model/commandHandlers/scheduledEmail/initializeAutomationsHandler.js +11 -3
  10. package/esm/model/commandHandlers/scheduledEmail/loadAutomations.d.ts +8 -1
  11. package/esm/model/commandHandlers/scheduledEmail/loadAutomations.d.ts.map +1 -1
  12. package/esm/model/commandHandlers/scheduledEmail/loadAutomations.js +3 -2
  13. package/esm/model/commandHandlers/scheduledEmail/refreshAutomationsHandlers.d.ts.map +1 -1
  14. package/esm/model/commandHandlers/scheduledEmail/refreshAutomationsHandlers.js +9 -2
  15. package/esm/model/store/dashboardStore.d.ts +2 -2
  16. package/esm/model/store/unavailableObjects/index.d.ts +1 -1
  17. package/esm/model/store/unavailableObjects/unavailableObjectsEntityAdapter.d.ts +1 -2
  18. package/esm/model/store/unavailableObjects/unavailableObjectsEntityAdapter.d.ts.map +1 -1
  19. package/esm/model/store/widgetDrills/drillRestrictionSelectors.d.ts +3 -3
  20. package/esm/model/store/widgetDrills/drillRestrictionSelectors.d.ts.map +1 -1
  21. package/esm/model/store/widgetDrills/widgetDrillSelectors.d.ts +36 -2
  22. package/esm/model/store/widgetDrills/widgetDrillSelectors.d.ts.map +1 -1
  23. package/esm/model/store/widgetDrills/widgetDrillSelectors.js +46 -6
  24. package/esm/presentation/automations/shared/automationFilters/useAutomationFilters.d.ts.map +1 -1
  25. package/esm/presentation/automations/shared/automationFilters/useAutomationFilters.js +4 -8
  26. package/esm/presentation/automations/shared/automationFilters/utils.d.ts +1 -1
  27. package/esm/presentation/automations/shared/automationFilters/utils.d.ts.map +1 -1
  28. package/esm/presentation/automations/shared/automationFilters/utils.js +6 -1
  29. package/esm/presentation/dashboard/DashboardSidebar/CreationPanel.d.ts.map +1 -1
  30. package/esm/presentation/dashboard/DashboardSidebar/CreationPanel.js +9 -6
  31. package/esm/presentation/dashboard/DashboardSidebar/DashboardSidebarChrome.d.ts +31 -0
  32. package/esm/presentation/dashboard/DashboardSidebar/DashboardSidebarChrome.d.ts.map +1 -0
  33. package/esm/presentation/dashboard/DashboardSidebar/DashboardSidebarChrome.js +26 -0
  34. package/esm/presentation/dashboard/DashboardSidebar/SidebarCollapseToggle.d.ts +3 -2
  35. package/esm/presentation/dashboard/DashboardSidebar/SidebarCollapseToggle.d.ts.map +1 -1
  36. package/esm/presentation/dashboard/DashboardSidebar/SidebarCollapseToggle.js +4 -7
  37. package/esm/presentation/dashboard/DashboardSidebar/SidebarConfigurationPanel.d.ts.map +1 -1
  38. package/esm/presentation/dashboard/DashboardSidebar/SidebarConfigurationPanel.js +5 -13
  39. package/esm/presentation/dashboard/DashboardSidebar/SidebarExpandTrigger.d.ts +7 -0
  40. package/esm/presentation/dashboard/DashboardSidebar/SidebarExpandTrigger.d.ts.map +1 -0
  41. package/esm/presentation/dashboard/DashboardSidebar/SidebarExpandTrigger.js +15 -0
  42. package/esm/presentation/dashboard/DashboardSidebar/SidebarHeaderToggle.d.ts +12 -0
  43. package/esm/presentation/dashboard/DashboardSidebar/SidebarHeaderToggle.d.ts.map +1 -0
  44. package/esm/presentation/dashboard/DashboardSidebar/SidebarHeaderToggle.js +21 -0
  45. package/esm/presentation/dashboard/DashboardSidebar/useResizableSidebarState.d.ts +21 -0
  46. package/esm/presentation/dashboard/DashboardSidebar/useResizableSidebarState.d.ts.map +1 -0
  47. package/esm/presentation/dashboard/DashboardSidebar/useResizableSidebarState.js +75 -0
  48. package/esm/presentation/dashboard/components/DashboardInner.d.ts.map +1 -1
  49. package/esm/presentation/dashboard/components/DashboardInner.js +4 -4
  50. package/esm/presentation/drill/DrillSelect/DrillSelectDropdown.d.ts +1 -1
  51. package/esm/presentation/drill/DrillSelect/DrillSelectDropdown.d.ts.map +1 -1
  52. package/esm/presentation/drill/DrillSelect/DrillSelectDropdown.js +36 -29
  53. package/esm/presentation/drill/DrillSelect/WithDrillSelect.d.ts.map +1 -1
  54. package/esm/presentation/drill/DrillSelect/WithDrillSelect.js +34 -7
  55. package/esm/presentation/drill/DrillSelect/types.d.ts +15 -2
  56. package/esm/presentation/drill/DrillSelect/types.d.ts.map +1 -1
  57. package/esm/presentation/drill/DrillSelect/types.js +3 -0
  58. package/esm/presentation/drill/hooks/useDrillSelectDropdownMenuItems.d.ts +0 -1
  59. package/esm/presentation/drill/hooks/useDrillSelectDropdownMenuItems.d.ts.map +1 -1
  60. package/esm/presentation/drill/hooks/useDrillSelectDropdownMenuItems.js +28 -22
  61. package/esm/presentation/export/useExportData.d.ts +5 -0
  62. package/esm/presentation/export/useExportData.d.ts.map +1 -1
  63. package/esm/presentation/export/useExportData.js +8 -0
  64. package/esm/presentation/filterBar/attributeFilter/AttributeFilterParentFilteringContext.d.ts +9 -0
  65. package/esm/presentation/filterBar/attributeFilter/AttributeFilterParentFilteringContext.d.ts.map +1 -1
  66. package/esm/presentation/filterBar/attributeFilter/AttributeFilterParentFilteringContext.js +3 -0
  67. package/esm/presentation/filterBar/attributeFilter/dashboardDropdownBody/configuration/AttributeFilterConfiguration.d.ts.map +1 -1
  68. package/esm/presentation/filterBar/attributeFilter/dashboardDropdownBody/configuration/AttributeFilterConfiguration.js +3 -7
  69. package/esm/presentation/flexibleLayout/dragAndDrop/DragLayer.d.ts.map +1 -1
  70. package/esm/presentation/flexibleLayout/dragAndDrop/DragLayer.js +2 -1
  71. package/esm/presentation/localization/bundles/de-DE.localization-bundle.d.ts +4 -1
  72. package/esm/presentation/localization/bundles/de-DE.localization-bundle.d.ts.map +1 -1
  73. package/esm/presentation/localization/bundles/de-DE.localization-bundle.js +4 -1
  74. package/esm/presentation/localization/bundles/en-AU.localization-bundle.d.ts +4 -1
  75. package/esm/presentation/localization/bundles/en-AU.localization-bundle.d.ts.map +1 -1
  76. package/esm/presentation/localization/bundles/en-AU.localization-bundle.js +4 -1
  77. package/esm/presentation/localization/bundles/en-GB.localization-bundle.d.ts +4 -1
  78. package/esm/presentation/localization/bundles/en-GB.localization-bundle.d.ts.map +1 -1
  79. package/esm/presentation/localization/bundles/en-GB.localization-bundle.js +4 -1
  80. package/esm/presentation/localization/bundles/en-US.localization-bundle.d.ts +6 -2
  81. package/esm/presentation/localization/bundles/en-US.localization-bundle.d.ts.map +1 -1
  82. package/esm/presentation/localization/bundles/en-US.localization-bundle.js +8 -4
  83. package/esm/presentation/localization/bundles/es-419.localization-bundle.d.ts +4 -1
  84. package/esm/presentation/localization/bundles/es-419.localization-bundle.d.ts.map +1 -1
  85. package/esm/presentation/localization/bundles/es-419.localization-bundle.js +4 -1
  86. package/esm/presentation/localization/bundles/es-ES.localization-bundle.d.ts +4 -1
  87. package/esm/presentation/localization/bundles/es-ES.localization-bundle.d.ts.map +1 -1
  88. package/esm/presentation/localization/bundles/es-ES.localization-bundle.js +4 -1
  89. package/esm/presentation/localization/bundles/fi-FI.localization-bundle.d.ts +4 -1
  90. package/esm/presentation/localization/bundles/fi-FI.localization-bundle.d.ts.map +1 -1
  91. package/esm/presentation/localization/bundles/fi-FI.localization-bundle.js +4 -1
  92. package/esm/presentation/localization/bundles/fr-CA.localization-bundle.d.ts +4 -1
  93. package/esm/presentation/localization/bundles/fr-CA.localization-bundle.d.ts.map +1 -1
  94. package/esm/presentation/localization/bundles/fr-CA.localization-bundle.js +4 -1
  95. package/esm/presentation/localization/bundles/fr-FR.localization-bundle.d.ts +4 -1
  96. package/esm/presentation/localization/bundles/fr-FR.localization-bundle.d.ts.map +1 -1
  97. package/esm/presentation/localization/bundles/fr-FR.localization-bundle.js +4 -1
  98. package/esm/presentation/localization/bundles/id-ID.localization-bundle.d.ts +4 -1
  99. package/esm/presentation/localization/bundles/id-ID.localization-bundle.d.ts.map +1 -1
  100. package/esm/presentation/localization/bundles/id-ID.localization-bundle.js +4 -1
  101. package/esm/presentation/localization/bundles/it-IT.localization-bundle.d.ts +4 -1
  102. package/esm/presentation/localization/bundles/it-IT.localization-bundle.d.ts.map +1 -1
  103. package/esm/presentation/localization/bundles/it-IT.localization-bundle.js +4 -1
  104. package/esm/presentation/localization/bundles/ja-JP.localization-bundle.d.ts +4 -1
  105. package/esm/presentation/localization/bundles/ja-JP.localization-bundle.d.ts.map +1 -1
  106. package/esm/presentation/localization/bundles/ja-JP.localization-bundle.js +4 -1
  107. package/esm/presentation/localization/bundles/ko-KR.localization-bundle.d.ts +4 -1
  108. package/esm/presentation/localization/bundles/ko-KR.localization-bundle.d.ts.map +1 -1
  109. package/esm/presentation/localization/bundles/ko-KR.localization-bundle.js +4 -1
  110. package/esm/presentation/localization/bundles/nl-NL.localization-bundle.d.ts +4 -1
  111. package/esm/presentation/localization/bundles/nl-NL.localization-bundle.d.ts.map +1 -1
  112. package/esm/presentation/localization/bundles/nl-NL.localization-bundle.js +4 -1
  113. package/esm/presentation/localization/bundles/pl-PL.localization-bundle.d.ts +4 -1
  114. package/esm/presentation/localization/bundles/pl-PL.localization-bundle.d.ts.map +1 -1
  115. package/esm/presentation/localization/bundles/pl-PL.localization-bundle.js +4 -1
  116. package/esm/presentation/localization/bundles/pt-BR.localization-bundle.d.ts +4 -1
  117. package/esm/presentation/localization/bundles/pt-BR.localization-bundle.d.ts.map +1 -1
  118. package/esm/presentation/localization/bundles/pt-BR.localization-bundle.js +4 -1
  119. package/esm/presentation/localization/bundles/pt-PT.localization-bundle.d.ts +4 -1
  120. package/esm/presentation/localization/bundles/pt-PT.localization-bundle.d.ts.map +1 -1
  121. package/esm/presentation/localization/bundles/pt-PT.localization-bundle.js +4 -1
  122. package/esm/presentation/localization/bundles/ru-RU.localization-bundle.d.ts +4 -1
  123. package/esm/presentation/localization/bundles/ru-RU.localization-bundle.d.ts.map +1 -1
  124. package/esm/presentation/localization/bundles/ru-RU.localization-bundle.js +4 -1
  125. package/esm/presentation/localization/bundles/sl-SI.localization-bundle.d.ts +4 -1
  126. package/esm/presentation/localization/bundles/sl-SI.localization-bundle.d.ts.map +1 -1
  127. package/esm/presentation/localization/bundles/sl-SI.localization-bundle.js +4 -1
  128. package/esm/presentation/localization/bundles/th-TH.localization-bundle.d.ts +4 -1
  129. package/esm/presentation/localization/bundles/th-TH.localization-bundle.d.ts.map +1 -1
  130. package/esm/presentation/localization/bundles/th-TH.localization-bundle.js +4 -1
  131. package/esm/presentation/localization/bundles/tr-TR.localization-bundle.d.ts +4 -1
  132. package/esm/presentation/localization/bundles/tr-TR.localization-bundle.d.ts.map +1 -1
  133. package/esm/presentation/localization/bundles/tr-TR.localization-bundle.js +4 -1
  134. package/esm/presentation/localization/bundles/uk-UA.localization-bundle.d.ts +4 -1
  135. package/esm/presentation/localization/bundles/uk-UA.localization-bundle.d.ts.map +1 -1
  136. package/esm/presentation/localization/bundles/uk-UA.localization-bundle.js +4 -1
  137. package/esm/presentation/localization/bundles/vi-VN.localization-bundle.d.ts +4 -1
  138. package/esm/presentation/localization/bundles/vi-VN.localization-bundle.d.ts.map +1 -1
  139. package/esm/presentation/localization/bundles/vi-VN.localization-bundle.js +4 -1
  140. package/esm/presentation/localization/bundles/zh-HK.localization-bundle.d.ts +4 -1
  141. package/esm/presentation/localization/bundles/zh-HK.localization-bundle.d.ts.map +1 -1
  142. package/esm/presentation/localization/bundles/zh-HK.localization-bundle.js +7 -4
  143. package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.d.ts +4 -1
  144. package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.d.ts.map +1 -1
  145. package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.js +4 -1
  146. package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.d.ts +4 -1
  147. package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.d.ts.map +1 -1
  148. package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.js +4 -1
  149. package/esm/presentation/topBar/topBar/DefaultTopBar.d.ts.map +1 -1
  150. package/esm/presentation/topBar/topBar/DefaultTopBar.js +2 -1
  151. package/esm/presentation/widget/common/RestrictedPlaceholder.d.ts.map +1 -1
  152. package/esm/presentation/widget/common/RestrictedPlaceholder.js +2 -1
  153. package/esm/presentation/widget/common/useResolveRestrictedRender.d.ts +8 -0
  154. package/esm/presentation/widget/common/useResolveRestrictedRender.d.ts.map +1 -0
  155. package/esm/presentation/widget/common/useResolveRestrictedRender.js +19 -0
  156. package/esm/presentation/widget/insight/ViewModeDashboardInsight/InsightDrillDialog/useDrillDialogInsightDrills.d.ts.map +1 -1
  157. package/esm/presentation/widget/insight/ViewModeDashboardInsight/InsightDrillDialog/useDrillDialogInsightDrills.js +1 -1
  158. package/esm/presentation/widget/visualizationSwitcher/ViewModeDashboardVisualizationSwitcherRestricted.d.ts.map +1 -1
  159. package/esm/presentation/widget/visualizationSwitcher/ViewModeDashboardVisualizationSwitcherRestricted.js +5 -1
  160. package/esm/presentation/widget/widget/InsightWidget/DashboardWidgetInsightGuard.d.ts.map +1 -1
  161. package/esm/presentation/widget/widget/InsightWidget/DashboardWidgetInsightGuard.js +2 -0
  162. package/esm/sdk-ui-dashboard.d.ts +1 -1
  163. package/package.json +21 -21
  164. package/styles/css/main.css +78 -131
  165. package/styles/css/main.css.map +1 -1
  166. package/styles/css/sidebar.css +52 -121
  167. package/styles/css/sidebar.css.map +1 -1
  168. package/styles/scss/sidebar.scss +89 -152
  169. package/esm/presentation/dashboard/DashboardSidebar/SidebarResizeChrome.d.ts +0 -23
  170. package/esm/presentation/dashboard/DashboardSidebar/SidebarResizeChrome.d.ts.map +0 -1
  171. package/esm/presentation/dashboard/DashboardSidebar/SidebarResizeChrome.js +0 -95
  172. package/esm/presentation/dashboard/DashboardSidebar/SidebarResizeContext.d.ts +0 -42
  173. package/esm/presentation/dashboard/DashboardSidebar/SidebarResizeContext.d.ts.map +0 -1
  174. package/esm/presentation/dashboard/DashboardSidebar/SidebarResizeContext.js +0 -136
@@ -1,4 +1,4 @@
1
- export declare const LIB_VERSION = "11.60.0-alpha.2";
1
+ export declare const LIB_VERSION = "11.60.0-alpha.4";
2
2
  export declare const LIB_DESCRIPTION = "GoodData SDK - Dashboard Component";
3
3
  export declare const LIB_NAME = "@gooddata/sdk-ui-dashboard";
4
4
  //# sourceMappingURL=__version.d.ts.map
package/esm/__version.js CHANGED
@@ -1,5 +1,5 @@
1
1
  // (C) 2021 GoodData Corporation
2
2
  // DO NOT CHANGE THIS FILE, IT IS RE-GENERATED ON EVERY BUILD
3
- export const LIB_VERSION = "11.60.0-alpha.2";
3
+ export const LIB_VERSION = "11.60.0-alpha.4";
4
4
  export const LIB_DESCRIPTION = "GoodData SDK - Dashboard Component";
5
5
  export const LIB_NAME = "@gooddata/sdk-ui-dashboard";
package/esm/internal.d.ts CHANGED
@@ -56,4 +56,7 @@ export { type IKdaProps, KdaProvider } from "./kdaDialog/providers/Kda.js";
56
56
  export { KdaDialog } from "./kdaDialog/dialog/KdaDialog.js";
57
57
  export { KdaDialogController } from "./kdaDialog/dialog/KdaDialogController.js";
58
58
  export { type IIntlWrapperProps, IntlWrapper } from "./presentation/localization/IntlWrapper.js";
59
+ export { type IDashboardSidebarChromeProps, DashboardSidebarChrome, } from "./presentation/dashboard/DashboardSidebar/DashboardSidebarChrome.js";
60
+ export { SidebarCollapseToggle } from "./presentation/dashboard/DashboardSidebar/SidebarCollapseToggle.js";
61
+ export { SidebarHeaderToggle } from "./presentation/dashboard/DashboardSidebar/SidebarHeaderToggle.js";
59
62
  //# sourceMappingURL=internal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"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"}
package/esm/internal.js CHANGED
@@ -53,3 +53,6 @@ export { KdaProvider } from "./kdaDialog/providers/Kda.js";
53
53
  export { KdaDialog } from "./kdaDialog/dialog/KdaDialog.js";
54
54
  export { KdaDialogController } from "./kdaDialog/dialog/KdaDialogController.js";
55
55
  export { IntlWrapper } from "./presentation/localization/IntlWrapper.js";
56
+ export { DashboardSidebarChrome, } from "./presentation/dashboard/DashboardSidebar/DashboardSidebarChrome.js";
57
+ export { SidebarCollapseToggle } from "./presentation/dashboard/DashboardSidebar/SidebarCollapseToggle.js";
58
+ export { SidebarHeaderToggle } from "./presentation/dashboard/DashboardSidebar/SidebarHeaderToggle.js";
@@ -10,7 +10,7 @@ export declare function requestCatalog(ctx: DashboardContext, cmd: InitializeDas
10
10
  export declare function preloadAttributeFiltersData(ctx: DashboardContext, dashboard: IDashboard): Generator<import("redux-saga/effects").CallEffect<import("@gooddata/sdk-backend-spi").IAttributeWithReferences[]> | import("redux-saga/effects").PutEffect<{
11
11
  payload: import("@gooddata/sdk-backend-spi").IAttributeWithReferences[];
12
12
  type: "tabs/setPreloadedAttributesWithReferences";
13
- }> | import("redux-saga/effects").SelectEffect, void, import("@gooddata/sdk-backend-spi").IUnavailableDashboardReference[] & import("@gooddata/sdk-backend-spi").IAttributeWithReferences[]>;
13
+ }> | import("redux-saga/effects").SelectEffect, void, import("@gooddata/sdk-model").IUnavailableReference[] & import("@gooddata/sdk-backend-spi").IAttributeWithReferences[]>;
14
14
  export declare function requestDashboardsList(ctx: DashboardContext): Generator<import("redux-saga/effects").CallEffect<import("@gooddata/sdk-model").IListedDashboard[]> | import("redux-saga/effects").PutEffect<BatchAction>, void, import("@gooddata/sdk-model").IListedDashboard[]>;
15
15
  export declare function initializeDashboardHandler(ctx: DashboardContext, cmd: InitializeDashboard): SagaIterator;
16
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/model/commandHandlers/dashboard/initializeDashboardHandler/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,WAAW,EAAgB,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAI/C,OAAO,EACH,KAAK,UAAU,EAIf,KAAK,sBAAsB,EAW9B,MAAM,qBAAqB,CAAC;AAO7B,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAyB1E,OAAO,EACH,KAAK,gBAAgB,EAGxB,MAAM,+BAA+B,CAAC;AAmfvC,wBAAiB,cAAc,CAAC,GAAG,EAAE,gBAAgB,EAAE,GAAG,EAAE,mBAAmB;;;uIAyB9E;AAkCD,wBAAiB,2BAA2B,CAAC,GAAG,EAAE,gBAAgB,EAAE,SAAS,EAAE,UAAU;;;6LAOxF;AAED,wBAAiB,qBAAqB,CAAC,GAAG,EAAE,gBAAgB,sNAW3D;AAoCD,wBAAiB,0BAA0B,CAAC,GAAG,EAAE,gBAAgB,EAAE,GAAG,EAAE,mBAAmB,GAAG,YAAY,CAoCzG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/model/commandHandlers/dashboard/initializeDashboardHandler/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,WAAW,EAAgB,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAI/C,OAAO,EACH,KAAK,UAAU,EAIf,KAAK,sBAAsB,EAW9B,MAAM,qBAAqB,CAAC;AAO7B,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAyB1E,OAAO,EACH,KAAK,gBAAgB,EAGxB,MAAM,+BAA+B,CAAC;AAmfvC,wBAAiB,cAAc,CAAC,GAAG,EAAE,gBAAgB,EAAE,GAAG,EAAE,mBAAmB;;;uIAyB9E;AAkCD,wBAAiB,2BAA2B,CAAC,GAAG,EAAE,gBAAgB,EAAE,SAAS,EAAE,UAAU;;;8KAOxF;AAED,wBAAiB,qBAAqB,CAAC,GAAG,EAAE,gBAAgB,sNAW3D;AAoCD,wBAAiB,0BAA0B,CAAC,GAAG,EAAE,gBAAgB,EAAE,GAAG,EAAE,mBAAmB,GAAG,YAAY,CAoCzG"}
@@ -1 +1 @@
1
- {"version":3,"file":"initializeAutomationsHandler.d.ts","sourceRoot":"","sources":["../../../../src/model/commandHandlers/scheduledEmail/initializeAutomationsHandler.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAgD/C,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAuC/E,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAWnE,wBAAiB,4BAA4B,CACzC,GAAG,EAAE,gBAAgB,EACrB,IAAI,EAAE,sBAAsB,GAC7B,YAAY,CA0Sd"}
1
+ {"version":3,"file":"initializeAutomationsHandler.d.ts","sourceRoot":"","sources":["../../../../src/model/commandHandlers/scheduledEmail/initializeAutomationsHandler.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAiD/C,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAwC/E,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAWnE,wBAAiB,4BAA4B,CACzC,GAAG,EAAE,gBAAgB,EACrB,IAAI,EAAE,sBAAsB,GAC7B,YAAY,CA4Sd"}
@@ -5,6 +5,7 @@ import { all, call, put, select } from "redux-saga/effects";
5
5
  import { generateDateFilterLocalIdentifier } from "@gooddata/sdk-backend-base";
6
6
  import { dashboardFilterLocalIdentifier, filterLocalIdentifier, filterObjRef, idRef, insightFilters, isAbsoluteDateFilter, isAttributeFilter, isDashboardAttributeFilter, isDashboardAttributeFilterItem, isDashboardCommonDateFilter, isDashboardDateFilter, isDateFilter, isExportDefinitionDashboardRequestPayload, isExportDefinitionVisualizationObjectRequestPayload, isFilterContextItem, isInsightWidget, isMeasureValueFilter, isRankingFilter, isRelativeDateFilter, isSingleSelectionFilter, } from "@gooddata/sdk-model";
7
7
  import { convertError } from "@gooddata/sdk-ui";
8
+ import { isAutomationRestricted } from "@gooddata/sdk-ui-ext";
8
9
  import { getAutomationAlertParameters, getAutomationExportParametersByTab, } from "../../../_staging/automation/index.js";
9
10
  import { dashboardFilterToFilterContextItem } from "../../../_staging/dashboard/dashboardFilterContext.js";
10
11
  import { isDashboardFilter } from "../../../types.js";
@@ -15,7 +16,7 @@ import { dispatchDashboardEvent } from "../../store/_infra/eventDispatcher.js";
15
16
  import { selectAutomationsIsInitialized, selectAutomationsIsLoading, } from "../../store/automations/automationsSelectors.js";
16
17
  import { automationsActions } from "../../store/automations/index.js";
17
18
  import { selectCatalogParameters, selectCatalogParametersIsLoaded, } from "../../store/catalog/catalogSelectors.js";
18
- import { selectEnableNotificationChannelIdentifiers, selectEnableParameters, selectEnableStringParameters, selectExternalRecipient, selectFocusObject, selectIsExport, selectIsReadOnly, selectOpenAutomationOnLoad, } from "../../store/config/configSelectors.js";
19
+ import { selectEnableDashboardPartialRendering, selectEnableNotificationChannelIdentifiers, selectEnableParameters, selectEnableStringParameters, selectExternalRecipient, selectFocusObject, selectIsExport, selectIsReadOnly, selectOpenAutomationOnLoad, } from "../../store/config/configSelectors.js";
19
20
  import { selectInsightByWidgetRef } from "../../store/insights/insightsSelectors.js";
20
21
  import { selectDashboardId } from "../../store/meta/metaSelectors.js";
21
22
  import { notificationChannelsActions } from "../../store/notificationChannels/index.js";
@@ -47,6 +48,7 @@ export function* initializeAutomationsHandler(ctx, _cmd) {
47
48
  const { automationId } = yield select(selectFocusObject);
48
49
  const externalRecipient = yield select(selectExternalRecipient);
49
50
  const openAutomationOnLoad = yield select(selectOpenAutomationOnLoad);
51
+ const isPartialRenderingEnabled = yield select(selectEnableDashboardPartialRendering);
50
52
  if (!dashboardId ||
51
53
  !user ||
52
54
  automationsInitialized ||
@@ -59,7 +61,13 @@ export function* initializeAutomationsHandler(ctx, _cmd) {
59
61
  yield put(automationsActions.setAutomationsLoading(true));
60
62
  try {
61
63
  const [automations, allAutomationsCount, notificationChannels] = yield all([
62
- call(loadDashboardUserAutomations, ctx, dashboardId, user.login, !canManageAutomations, externalRecipient),
64
+ call(loadDashboardUserAutomations, ctx, {
65
+ dashboardId,
66
+ userId: user.login,
67
+ filterByUser: !canManageAutomations,
68
+ externalRecipient,
69
+ includeUnavailableReferences: isPartialRenderingEnabled,
70
+ }),
63
71
  call(loadWorkspaceAutomationsCount, ctx),
64
72
  call(loadNotificationChannels, ctx, enableNotificationChannelIdentifiers),
65
73
  ]);
@@ -178,7 +186,7 @@ export function* initializeAutomationsHandler(ctx, _cmd) {
178
186
  for (const change of parameterChanges) {
179
187
  yield call(changeParameterValuesHandler, ctx, changeParameterValues(change));
180
188
  }
181
- if (targetAutomation && openAutomationOnLoad) {
189
+ if (targetAutomation && openAutomationOnLoad && !isAutomationRestricted(targetAutomation)) {
182
190
  const widgetRef = targetWidget && idRef(targetWidget);
183
191
  if (targetAutomation.alert) {
184
192
  yield put(uiActions.openAlertingDialog({
@@ -1,5 +1,12 @@
1
1
  import { type IAutomationMetadataObject } from "@gooddata/sdk-model";
2
2
  import { type DashboardContext } from "../../types/commonTypes.js";
3
3
  export declare function loadWorkspaceAutomationsCount({ backend, workspace, }: DashboardContext): Promise<number>;
4
- export declare function loadDashboardUserAutomations(ctx: DashboardContext, dashboardId: string, userId: string, filterByUser: boolean, externalRecipient: string | undefined): Promise<IAutomationMetadataObject[]>;
4
+ export interface ILoadDashboardUserAutomationsOptions {
5
+ dashboardId: string;
6
+ userId: string;
7
+ filterByUser: boolean;
8
+ externalRecipient: string | undefined;
9
+ includeUnavailableReferences: boolean;
10
+ }
11
+ export declare function loadDashboardUserAutomations(ctx: DashboardContext, { dashboardId, userId, filterByUser, externalRecipient, includeUnavailableReferences, }: ILoadDashboardUserAutomationsOptions): Promise<IAutomationMetadataObject[]>;
5
12
  //# sourceMappingURL=loadAutomations.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"loadAutomations.d.ts","sourceRoot":"","sources":["../../../../src/model/commandHandlers/scheduledEmail/loadAutomations.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAErE,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,wBAAsB,6BAA6B,CAAC,EAChD,OAAO,EACP,SAAS,GACZ,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAIpC;AAED,wBAAgB,4BAA4B,CACxC,GAAG,EAAE,gBAAgB,EACrB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,OAAO,EACrB,iBAAiB,EAAE,MAAM,GAAG,SAAS,GACtC,OAAO,CAAC,yBAAyB,EAAE,CAAC,CAkBtC"}
1
+ {"version":3,"file":"loadAutomations.d.ts","sourceRoot":"","sources":["../../../../src/model/commandHandlers/scheduledEmail/loadAutomations.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAErE,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,wBAAsB,6BAA6B,CAAC,EAChD,OAAO,EACP,SAAS,GACZ,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAIpC;AAED,MAAM,WAAW,oCAAoC;IACjD,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,OAAO,CAAC;IACtB,iBAAiB,EAAE,MAAM,GAAG,SAAS,CAAC;IACtC,4BAA4B,EAAE,OAAO,CAAC;CACzC;AAED,wBAAgB,4BAA4B,CACxC,GAAG,EAAE,gBAAgB,EACrB,EACI,WAAW,EACX,MAAM,EACN,YAAY,EACZ,iBAAiB,EACjB,4BAA4B,GAC/B,EAAE,oCAAoC,GACxC,OAAO,CAAC,yBAAyB,EAAE,CAAC,CAkBtC"}
@@ -1,13 +1,14 @@
1
+ // (C) 2021-2026 GoodData Corporation
1
2
  export async function loadWorkspaceAutomationsCount({ backend, workspace, }) {
2
3
  const result = await backend.workspace(workspace).automations().getAutomationsQuery().withSize(1).query();
3
4
  return result.totalCount ?? 0;
4
5
  }
5
- export function loadDashboardUserAutomations(ctx, dashboardId, userId, filterByUser, externalRecipient) {
6
+ export function loadDashboardUserAutomations(ctx, { dashboardId, userId, filterByUser, externalRecipient, includeUnavailableReferences, }) {
6
7
  const { backend, workspace } = ctx;
7
8
  let dashboardQuery = backend
8
9
  .workspace(workspace)
9
10
  .automations()
10
- .getAutomationsQuery()
11
+ .getAutomationsQuery({ includeUnavailableReferences })
11
12
  .withSorting(["title,asc", "createdAt,asc"])
12
13
  .withDashboard(dashboardId);
13
14
  // External recipients from context are prioritized to signed-in user
@@ -1 +1 @@
1
- {"version":3,"file":"refreshAutomationsHandlers.d.ts","sourceRoot":"","sources":["../../../../src/model/commandHandlers/scheduledEmail/refreshAutomationsHandlers.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAK/C,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAO5E,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAKnE,wBAAiB,0BAA0B,CAAC,GAAG,EAAE,gBAAgB,EAAE,GAAG,EAAE,mBAAmB,GAAG,YAAY,CAgDzG"}
1
+ {"version":3,"file":"refreshAutomationsHandlers.d.ts","sourceRoot":"","sources":["../../../../src/model/commandHandlers/scheduledEmail/refreshAutomationsHandlers.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAK/C,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAW5E,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAKnE,wBAAiB,0BAA0B,CAAC,GAAG,EAAE,gBAAgB,EAAE,GAAG,EAAE,mBAAmB,GAAG,YAAY,CAkDzG"}
@@ -4,7 +4,7 @@ import { all, call, put, select } from "redux-saga/effects";
4
4
  import { convertError } from "@gooddata/sdk-ui";
5
5
  import { automationsRefreshed } from "../../events/scheduledEmail.js";
6
6
  import { automationsActions } from "../../store/automations/index.js";
7
- import { selectExternalRecipient, selectIsReadOnly } from "../../store/config/configSelectors.js";
7
+ import { selectEnableDashboardPartialRendering, selectExternalRecipient, selectIsReadOnly, } from "../../store/config/configSelectors.js";
8
8
  import { selectDashboardId } from "../../store/meta/metaSelectors.js";
9
9
  import { selectCanManageWorkspace } from "../../store/permissions/permissionsSelectors.js";
10
10
  import { selectCurrentUser } from "../../store/user/userSelectors.js";
@@ -15,13 +15,20 @@ export function* refreshAutomationsHandlers(ctx, cmd) {
15
15
  const canManageAutomations = yield select(selectCanManageWorkspace);
16
16
  const isReadOnly = yield select(selectIsReadOnly);
17
17
  const externalRecipient = yield select(selectExternalRecipient);
18
+ const isPartialRenderingEnabled = yield select(selectEnableDashboardPartialRendering);
18
19
  if (!dashboardId || !user || isReadOnly) {
19
20
  return;
20
21
  }
21
22
  yield put(automationsActions.setAutomationsLoading(true));
22
23
  try {
23
24
  const [automations, allAutomationsCount] = yield all([
24
- call(loadDashboardUserAutomations, ctx, dashboardId, user.login, !canManageAutomations, externalRecipient),
25
+ call(loadDashboardUserAutomations, ctx, {
26
+ dashboardId,
27
+ userId: user.login,
28
+ filterByUser: !canManageAutomations,
29
+ externalRecipient,
30
+ includeUnavailableReferences: isPartialRenderingEnabled,
31
+ }),
25
32
  call(loadWorkspaceAutomationsCount, ctx),
26
33
  ]);
27
34
  yield put(batchActions([
@@ -121,7 +121,7 @@ export declare function createDashboardRootReducer({ queryCache, }?: {
121
121
  listedDashboards: import("@reduxjs/toolkit").EntityState<import("@gooddata/sdk-model").IListedDashboard, import("@reduxjs/toolkit").EntityId> & object;
122
122
  accessibleDashboards: import("./accessibleDashboards/index.js").IAccessibleDashboardsState;
123
123
  inaccessibleDashboards: import("@reduxjs/toolkit").EntityState<import("../types/inaccessibleDashboardTypes.js").IInaccessibleDashboard, import("@reduxjs/toolkit").EntityId> & object;
124
- unavailableObjects: import("@reduxjs/toolkit").EntityState<import("@gooddata/sdk-backend-spi").IUnavailableDashboardReference, import("@reduxjs/toolkit").EntityId> & object;
124
+ unavailableObjects: import("@reduxjs/toolkit").EntityState<import("@gooddata/sdk-model").IUnavailableReference, import("@reduxjs/toolkit").EntityId> & object;
125
125
  executionResults: import("@reduxjs/toolkit").EntityState<import("./executionResults/types.js").IExecutionResultEnvelope, import("@reduxjs/toolkit").EntityId> & object;
126
126
  renderMode: import("./renderMode/renderModeState.js").IRenderModeState;
127
127
  ui: import("./ui/uiState.js").IUiState;
@@ -150,7 +150,7 @@ export declare function createDashboardRootReducer({ queryCache, }?: {
150
150
  listedDashboards: (import("@reduxjs/toolkit").EntityState<import("@gooddata/sdk-model").IListedDashboard, import("@reduxjs/toolkit").EntityId> & object) | undefined;
151
151
  accessibleDashboards: import("./accessibleDashboards/index.js").IAccessibleDashboardsState | undefined;
152
152
  inaccessibleDashboards: (import("@reduxjs/toolkit").EntityState<import("../types/inaccessibleDashboardTypes.js").IInaccessibleDashboard, import("@reduxjs/toolkit").EntityId> & object) | undefined;
153
- unavailableObjects: (import("@reduxjs/toolkit").EntityState<import("@gooddata/sdk-backend-spi").IUnavailableDashboardReference, import("@reduxjs/toolkit").EntityId> & object) | undefined;
153
+ unavailableObjects: (import("@reduxjs/toolkit").EntityState<import("@gooddata/sdk-model").IUnavailableReference, import("@reduxjs/toolkit").EntityId> & object) | undefined;
154
154
  executionResults: (import("@reduxjs/toolkit").EntityState<import("./executionResults/types.js").IExecutionResultEnvelope, import("@reduxjs/toolkit").EntityId> & object) | undefined;
155
155
  renderMode: import("./renderMode/renderModeState.js").IRenderModeState | undefined;
156
156
  ui: import("./ui/uiState.js").IUiState | undefined;
@@ -3,6 +3,6 @@ import { unavailableObjectsEntityAdapter } from "./unavailableObjectsEntityAdapt
3
3
  export type UnavailableObjectsState = ReturnType<typeof unavailableObjectsEntityAdapter.getInitialState>;
4
4
  export declare const unavailableObjectsSliceReducer: Reducer<UnavailableObjectsState>;
5
5
  export declare const unavailableObjectsActions: {
6
- setUnavailableObjects: import("@reduxjs/toolkit").ActionCreatorWithPayload<readonly import("@gooddata/sdk-backend-spi").IUnavailableDashboardReference[] | Record<import("@reduxjs/toolkit").EntityId, import("@gooddata/sdk-backend-spi").IUnavailableDashboardReference>, "unavailableObjects/setUnavailableObjects">;
6
+ setUnavailableObjects: import("@reduxjs/toolkit").ActionCreatorWithPayload<readonly import("@gooddata/sdk-model").IUnavailableReference[] | Record<import("@reduxjs/toolkit").EntityId, import("@gooddata/sdk-model").IUnavailableReference>, "unavailableObjects/setUnavailableObjects">;
7
7
  };
8
8
  //# sourceMappingURL=index.d.ts.map
@@ -1,9 +1,8 @@
1
1
  import { type EntityId } from "@reduxjs/toolkit";
2
- import type { IUnavailableDashboardReference } from "@gooddata/sdk-backend-spi";
3
2
  import { type ObjRef, type ObjectType } from "@gooddata/sdk-model";
4
3
  /**
5
4
  * Objects of different types may share an identifier, so entries are keyed by type as well.
6
5
  */
7
6
  export declare function unavailableObjectKey(type: ObjectType, ref: ObjRef): string;
8
- export declare const unavailableObjectsEntityAdapter: import("@reduxjs/toolkit").EntityAdapter<IUnavailableDashboardReference, EntityId>;
7
+ export declare const unavailableObjectsEntityAdapter: import("@reduxjs/toolkit").EntityAdapter<import("@gooddata/sdk-model").IUnavailableReference, EntityId>;
9
8
  //# sourceMappingURL=unavailableObjectsEntityAdapter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"unavailableObjectsEntityAdapter.d.ts","sourceRoot":"","sources":["../../../../src/model/store/unavailableObjects/unavailableObjectsEntityAdapter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,QAAQ,EAAuB,MAAM,kBAAkB,CAAC;AAEtE,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,2BAA2B,CAAC;AAChF,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,UAAU,EAAkB,MAAM,qBAAqB,CAAC;AAEnF;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAE1E;AAED,eAAO,MAAM,+BAA+B,oFAE1C,CAAC"}
1
+ {"version":3,"file":"unavailableObjectsEntityAdapter.d.ts","sourceRoot":"","sources":["../../../../src/model/store/unavailableObjects/unavailableObjectsEntityAdapter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,QAAQ,EAAuB,MAAM,kBAAkB,CAAC;AAGtE,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,UAAU,EAAkB,MAAM,qBAAqB,CAAC;AAEnF;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAE1E;AAED,eAAO,MAAM,+BAA+B,yGAE1C,CAAC"}
@@ -4,14 +4,14 @@ export declare const selectIsDrillRestricted: ((state: import("../types.js").Das
4
4
  resultsCount: () => number;
5
5
  resetResultsCount: () => void;
6
6
  } & {
7
- resultFunc: (resultFuncArgs_0: import("@gooddata/sdk-backend-spi").IUnavailableDashboardReference[]) => (drill: DashboardDrillDefinition) => boolean;
8
- memoizedResultFunc: ((resultFuncArgs_0: import("@gooddata/sdk-backend-spi").IUnavailableDashboardReference[]) => (drill: DashboardDrillDefinition) => boolean) & {
7
+ resultFunc: (resultFuncArgs_0: import("@gooddata/sdk-model").IUnavailableReference[]) => (drill: DashboardDrillDefinition) => boolean;
8
+ memoizedResultFunc: ((resultFuncArgs_0: import("@gooddata/sdk-model").IUnavailableReference[]) => (drill: DashboardDrillDefinition) => boolean) & {
9
9
  clearCache: () => void;
10
10
  resultsCount: () => number;
11
11
  resetResultsCount: () => void;
12
12
  };
13
13
  lastResult: () => (drill: DashboardDrillDefinition) => boolean;
14
- dependencies: [import("../types.js").DashboardSelector<import("@gooddata/sdk-backend-spi").IUnavailableDashboardReference[]>];
14
+ dependencies: [import("../types.js").DashboardSelector<import("@gooddata/sdk-model").IUnavailableReference[]>];
15
15
  recomputations: () => number;
16
16
  resetRecomputations: () => void;
17
17
  dependencyRecomputations: () => number;
@@ -1 +1 @@
1
- {"version":3,"file":"drillRestrictionSelectors.d.ts","sourceRoot":"","sources":["../../../../src/model/store/widgetDrills/drillRestrictionSelectors.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAKlE,eAAO,MAAM,uBAAuB,4DAGpB,wBAAwB,KAAG,OAAO;;;;;oHAAlC,wBAAwB,KAAG,OAAO;;;;;;8BAAlC,wBAAwB,KAAG,OAAO;;;;;;;;;CAEjD,CAAC"}
1
+ {"version":3,"file":"drillRestrictionSelectors.d.ts","sourceRoot":"","sources":["../../../../src/model/store/widgetDrills/drillRestrictionSelectors.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAKlE,eAAO,MAAM,uBAAuB,4DAGpB,wBAAwB,KAAG,OAAO;;;;;qGAAlC,wBAAwB,KAAG,OAAO;;;;;;8BAAlC,wBAAwB,KAAG,OAAO;;;;;;;;;CAEjD,CAAC"}
@@ -1,5 +1,6 @@
1
- import { type IDrillDownReference, type ObjRef } from "@gooddata/sdk-model";
1
+ import { type IAttributeDescriptor, type ICatalogAttribute, type ICatalogDateAttribute, type IDrillDownReference, type ObjRef } from "@gooddata/sdk-model";
2
2
  import { type ExplicitDrill, type IAvailableDrillTargets, type IHeaderPredicate } from "@gooddata/sdk-ui";
3
+ import { type ObjRefMap } from "../../../_staging/metadata/objRefMap.js";
3
4
  import { type DashboardDrillDefinition, type IDrillToUrlAttributeDefinition, type IGlobalDrillDownAttributeHierarchyDefinition } from "../../../types.js";
4
5
  import { type DashboardSelector } from "../types.js";
5
6
  /**
@@ -13,6 +14,39 @@ export interface IImplicitDrillWithPredicates {
13
14
  * @internal
14
15
  */
15
16
  export declare const selectImplicitDrillsDownByWidgetRef: (ref: ObjRef) => DashboardSelector<IImplicitDrillWithPredicates[]>;
17
+ /**
18
+ * A drill down through a hierarchy the user cannot read. Only the hierarchy and the clicked
19
+ * attribute are known, so it is listed as restricted and cannot be opened.
20
+ *
21
+ * @internal
22
+ */
23
+ export interface IRestrictedDrillDown {
24
+ hierarchyRef: ObjRef;
25
+ originLocalIdentifier: string;
26
+ }
27
+ /**
28
+ * When restricted drill downs are listed: only with partial rendering on, and only where drilling
29
+ * down is possible at all.
30
+ *
31
+ * @internal
32
+ */
33
+ export interface IRestrictedDrillDownConditions {
34
+ supportsAttributeHierarchies?: boolean;
35
+ enablePartialRendering: boolean;
36
+ disableDrillDown?: boolean;
37
+ }
38
+ /**
39
+ * The restricted drill downs of the given drill attributes: one for every restricted hierarchy an
40
+ * attribute belongs to, unless the widget ignores that hierarchy for it. The same rule serves the
41
+ * dashboard, the drill dialog and the drill menu.
42
+ *
43
+ * @internal
44
+ */
45
+ export declare function getRestrictedDrillDowns(attributes: IAttributeDescriptor[], catalogAttributes: ObjRefMap<ICatalogAttribute | ICatalogDateAttribute>, ignoredHierarchies: IDrillDownReference[], { supportsAttributeHierarchies, enablePartialRendering, disableDrillDown, }: IRestrictedDrillDownConditions): IRestrictedDrillDown[];
46
+ /**
47
+ * @internal
48
+ */
49
+ export declare const selectRestrictedDrillDownsByWidgetRef: (ref: ObjRef) => DashboardSelector<IRestrictedDrillDown[]>;
16
50
  /**
17
51
  * @internal
18
52
  */
@@ -48,5 +82,5 @@ export declare const selectImplicitDrillsByAvailableDrillTargets: (availableDril
48
82
  /**
49
83
  * @internal
50
84
  */
51
- export declare const selectDrillableItemsByAvailableDrillTargets: (availableDrillTargets: IAvailableDrillTargets | undefined, ignoredDrillDownHierarchies: IDrillDownReference[] | undefined, disableDrillIntoURL: boolean | undefined) => DashboardSelector<IHeaderPredicate[]>;
85
+ export declare const selectDrillableItemsByAvailableDrillTargets: (availableDrillTargets: IAvailableDrillTargets | undefined, ignoredDrillDownHierarchies: IDrillDownReference[] | undefined, disableDrillIntoURL: boolean | undefined, disableDrillDown?: boolean) => DashboardSelector<IHeaderPredicate[]>;
52
86
  //# sourceMappingURL=widgetDrillSelectors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"widgetDrillSelectors.d.ts","sourceRoot":"","sources":["../../../../src/model/store/widgetDrills/widgetDrillSelectors.ts"],"names":[],"mappings":"AAMA,OAAO,EASH,KAAK,mBAAmB,EAGxB,KAAK,MAAM,EAad,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACH,KAAK,aAAa,EAGlB,KAAK,sBAAsB,EAC3B,KAAK,gBAAgB,EACxB,MAAM,kBAAkB,CAAC;AAI1B,OAAO,EACH,KAAK,wBAAwB,EAC7B,KAAK,8BAA8B,EACnC,KAAK,4CAA4C,EACpD,MAAM,mBAAmB,CAAC;AA0C3B,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAIrD;;GAEG;AACH,MAAM,WAAW,4BAA4B;IACzC,eAAe,EAAE,wBAAwB,CAAC;IAC1C,UAAU,EAAE,gBAAgB,EAAE,CAAC;CAClC;AA2TD;;GAEG;AACH,eAAO,MAAM,mCAAmC,EAAE,CAC9C,GAAG,EAAE,MAAM,KACV,iBAAiB,CAAC,4BAA4B,EAAE,CAuCpD,CAAC;AA+JF;;GAEG;AACH,eAAO,MAAM,mDAAmD,EAAE,CAC9D,GAAG,EAAE,MAAM,KACV,iBAAiB,CAAC,4CAA4C,EAAE,CA6BpE,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qCAAqC,EAAE,CAChD,GAAG,EAAE,MAAM,KACV,iBAAiB,CAAC,8BAA8B,EAAE,CA2DtD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oCAAoC,EAAE,CAC/C,GAAG,EAAE,MAAM,KACV,iBAAiB,CAAC,4BAA4B,EAAE,CAcpD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iCAAiC,EAAE,CAC5C,GAAG,EAAE,MAAM,KACV,iBAAiB,CAAC,4BAA4B,EAAE,CAgDpD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,sCAAsC,EAAE,CACjD,GAAG,EAAE,MAAM,KACV,iBAAiB,CAAC,4BAA4B,EAAE,CAiDpD,CAAC;AAgCF;;GAEG;AACH,eAAO,MAAM,4CAA4C,EAAE,CACvD,GAAG,EAAE,MAAM,KACV,iBAAiB,CAAC,4BAA4B,EAAE,CAuCpD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,+BAA+B,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,iBAAiB,CAAC,aAAa,EAAE,CAkC3F,CAAC;AAMN;;GAEG;AACH,eAAO,MAAM,2CAA2C,EAAE,CACtD,qBAAqB,EAAE,sBAAsB,GAAG,SAAS,EACzD,2BAA2B,EAAE,mBAAmB,EAAE,GAAG,SAAS,EAC9D,mBAAmB,EAAE,OAAO,GAAG,SAAS,KACvC,iBAAiB,CAAC,4BAA4B,EAAE,CA4CpD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,2CAA2C,EAAE,CACtD,qBAAqB,EAAE,sBAAsB,GAAG,SAAS,EACzD,2BAA2B,EAAE,mBAAmB,EAAE,GAAG,SAAS,EAC9D,mBAAmB,EAAE,OAAO,GAAG,SAAS,KACvC,iBAAiB,CAAC,gBAAgB,EAAE,CAgBxC,CAAC"}
1
+ {"version":3,"file":"widgetDrillSelectors.d.ts","sourceRoot":"","sources":["../../../../src/model/store/widgetDrills/widgetDrillSelectors.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  import { createSelector } from "@reduxjs/toolkit";
3
3
  import { compact } from "lodash-es";
4
4
  import { UnexpectedError } from "@gooddata/sdk-backend-spi";
5
- import { areObjRefsEqual, getHierarchyAttributes, getHierarchyRef, isCatalogAttribute, isDrillFromAttribute, isDrillFromMeasure, isIdentifierRef, isLocalIdRef, isUriRef, localIdRef, objRefToString, } from "@gooddata/sdk-model";
5
+ import { areObjRefsEqual, getHierarchyAttributes, getHierarchyRef, isAttributeHierarchyReference, isCatalogAttribute, isDrillFromAttribute, isDrillFromMeasure, isIdentifierRef, isLocalIdRef, isUriRef, localIdRef, objRefToString, } from "@gooddata/sdk-model";
6
6
  import { HeaderPredicates, } from "@gooddata/sdk-ui";
7
7
  import { isInsightKeyDriverAnalysisEnabled } from "@gooddata/sdk-ui-ext";
8
8
  import { existBlacklistHierarchyPredicate } from "../../utils/attributeHierarchyUtils.js";
@@ -10,7 +10,7 @@ import { createMemoizedSelector } from "../_infra/selectors.js";
10
10
  import { selectAccessibleDashboardsLoaded, selectAccessibleDashboardsMap, } from "../accessibleDashboards/accessibleDashboardsSelectors.js";
11
11
  import { selectBackendCapabilities, selectSupportsAttributeHierarchies, selectSupportsCrossFiltering, } from "../backendCapabilities/backendCapabilitiesSelectors.js";
12
12
  import { selectAllCatalogAttributesMap, selectAllCatalogDisplayFormsMap, selectAttributesWithDisplayFormLink, selectAttributesWithHierarchyDescendants, selectCatalogDateAttributes, selectCatalogIsLoaded, selectDrillableAttributeHierarchies, } from "../catalog/catalogSelectors.js";
13
- import { selectDisableDefaultDrills, selectEnableDrillToUrlByDefault, selectEnableKda, selectEnableSecondGranularities, selectIsDisabledCrossFiltering, selectIsDisabledKda, selectIsEmbedded, } from "../config/configSelectors.js";
13
+ import { selectDisableDefaultDrills, selectEnableDashboardPartialRendering, selectEnableDrillToUrlByDefault, selectEnableKda, selectEnableSecondGranularities, selectIsDisabledCrossFiltering, selectIsDisabledKda, selectIsEmbedded, } from "../config/configSelectors.js";
14
14
  import { selectDrillableItems } from "../drill/drillSelectors.js";
15
15
  import { selectDrillTargetsByWidgetRef } from "../drillTargets/drillTargetsSelectors.js";
16
16
  import { selectInsightByWidgetRef, selectInsightsMap } from "../insights/insightsSelectors.js";
@@ -213,6 +213,41 @@ export const selectImplicitDrillsDownByWidgetRef = createMemoizedSelector((ref)
213
213
  }
214
214
  return [];
215
215
  }));
216
+ /**
217
+ * The restricted drill downs of the given drill attributes: one for every restricted hierarchy an
218
+ * attribute belongs to, unless the widget ignores that hierarchy for it. The same rule serves the
219
+ * dashboard, the drill dialog and the drill menu.
220
+ *
221
+ * @internal
222
+ */
223
+ export function getRestrictedDrillDowns(attributes, catalogAttributes, ignoredHierarchies, { supportsAttributeHierarchies, enablePartialRendering, disableDrillDown, }) {
224
+ if (!supportsAttributeHierarchies || !enablePartialRendering || disableDrillDown) {
225
+ return [];
226
+ }
227
+ return attributes.flatMap(({ attributeHeader }) => {
228
+ const attributeRef = attributeHeader.formOf.ref;
229
+ const catalogAttribute = catalogAttributes.get(attributeRef);
230
+ const unavailable = isCatalogAttribute(catalogAttribute) ? (catalogAttribute.unavailable ?? []) : [];
231
+ return unavailable
232
+ .filter(({ ref, type }) => type === "attributeHierarchy" &&
233
+ !ignoredHierarchies.some((reference) => isAttributeHierarchyReference(reference) &&
234
+ areObjRefsEqual(reference.attributeHierarchy, ref) &&
235
+ areObjRefsEqual(reference.attribute, attributeRef)))
236
+ .map(({ ref }) => ({
237
+ hierarchyRef: ref,
238
+ originLocalIdentifier: attributeHeader.localIdentifier,
239
+ }));
240
+ });
241
+ }
242
+ const restrictedDrillDownPredicates = (restrictedDrillDowns) => restrictedDrillDowns.map(({ originLocalIdentifier }) => HeaderPredicates.localIdentifierMatch(originLocalIdentifier));
243
+ /**
244
+ * @internal
245
+ */
246
+ export const selectRestrictedDrillDownsByWidgetRef = createMemoizedSelector((ref) => createSelector(selectDrillTargetsByWidgetRef(ref), selectAllCatalogAttributesMap, selectIgnoredDrillDownHierarchiesByWidgetRef(ref), selectSupportsAttributeHierarchies, selectEnableDashboardPartialRendering, selectInsightByWidgetRef(ref), (availableDrillTargets, catalogAttributes, ignoredHierarchies = [], supportsAttributeHierarchies, enablePartialRendering, widgetInsight) => getRestrictedDrillDowns((availableDrillTargets?.availableDrillTargets?.attributes ?? []).map(({ attribute }) => attribute), catalogAttributes, ignoredHierarchies, {
247
+ supportsAttributeHierarchies,
248
+ enablePartialRendering,
249
+ disableDrillDown: widgetInsight?.insight?.properties?.["controls"]?.disableDrillDown,
250
+ })));
216
251
  const selectCrossFilteringByWidgetRef = createMemoizedSelector((ref) => createSelector(selectSupportsCrossFiltering, selectDrillTargetsByWidgetRef(ref), selectDisableDashboardCrossFiltering, selectIsDisabledCrossFiltering, selectDrillableItems, (isCrossFilteringSupported, availableDrillTargets, disableCrossFiltering, disableCrossFilteringByConfig, drillableItems) => {
217
252
  if (!isCrossFilteringSupported ||
218
253
  disableCrossFiltering ||
@@ -415,6 +450,7 @@ const selectImplicitDrillToUrlPredicates = createMemoizedSelector((ref) => creat
415
450
  const selectImplicitDrillDownPredicates = createMemoizedSelector((ref) => createSelector(selectImplicitDrillsDownByWidgetRef(ref), (drillDownDrills) => {
416
451
  return drillDownDrills.flatMap((drill) => drill.predicates);
417
452
  }));
453
+ const selectRestrictedDrillDownPredicates = createMemoizedSelector((ref) => createSelector(selectRestrictedDrillDownsByWidgetRef(ref), restrictedDrillDownPredicates));
418
454
  const selectConfiguredDrillPredicates = createMemoizedSelector((ref) => createSelector(selectValidConfiguredDrillsByWidgetRef(ref), (configuredDrills = []) => {
419
455
  return configuredDrills.flatMap((drill) => drill.predicates);
420
456
  }));
@@ -445,10 +481,10 @@ export const selectConfiguredAndImplicitDrillsByWidgetRef = createMemoizedSelect
445
481
  /**
446
482
  * @internal
447
483
  */
448
- export const selectDrillableItemsByWidgetRef = createMemoizedSelector((ref) => createSelector(selectDisableDefaultDrills, selectDrillableItems, selectConfiguredDrillPredicates(ref), selectImplicitDrillDownPredicates(ref), selectImplicitDrillToUrlPredicates(ref), selectCrossFilteringPredicates(ref), selectKeyDriverAnalysisPredicates(ref), (disableDefaultDrills, drillableItems, configuredDrills, implicitDrillDownDrills, implicitDrillToUrlDrills, crossFilteringDrills, keyDriverAnalysisDrills) => {
484
+ export const selectDrillableItemsByWidgetRef = createMemoizedSelector((ref) => createSelector(selectDisableDefaultDrills, selectDrillableItems, selectConfiguredDrillPredicates(ref), selectImplicitDrillDownPredicates(ref), selectRestrictedDrillDownPredicates(ref), selectImplicitDrillToUrlPredicates(ref), selectCrossFilteringPredicates(ref), selectKeyDriverAnalysisPredicates(ref), (disableDefaultDrills, drillableItems, configuredDrills, implicitDrillDownDrills, restrictedDrillDownDrills, implicitDrillToUrlDrills, crossFilteringDrills, keyDriverAnalysisDrills) => {
449
485
  const resolvedDrillableItems = [...drillableItems];
450
486
  if (!disableDefaultDrills) {
451
- resolvedDrillableItems.push(...configuredDrills, ...implicitDrillDownDrills, ...implicitDrillToUrlDrills, ...crossFilteringDrills, ...keyDriverAnalysisDrills);
487
+ resolvedDrillableItems.push(...configuredDrills, ...implicitDrillDownDrills, ...restrictedDrillDownDrills, ...implicitDrillToUrlDrills, ...crossFilteringDrills, ...keyDriverAnalysisDrills);
452
488
  }
453
489
  return resolvedDrillableItems;
454
490
  }));
@@ -470,8 +506,12 @@ export const selectImplicitDrillsByAvailableDrillTargets = createMemoizedSelecto
470
506
  /**
471
507
  * @internal
472
508
  */
473
- export const selectDrillableItemsByAvailableDrillTargets = createMemoizedSelector((availableDrillTargets, ignoredDrillDownHierarchies, disableDrillIntoURL) => createSelector(selectImplicitDrillsByAvailableDrillTargets(availableDrillTargets, ignoredDrillDownHierarchies, disableDrillIntoURL), (implicitDrillDowns) => {
474
- return implicitDrillDowns.flatMap((implicitDrill) => implicitDrill.predicates);
509
+ export const selectDrillableItemsByAvailableDrillTargets = createMemoizedSelector((availableDrillTargets, ignoredDrillDownHierarchies, disableDrillIntoURL, disableDrillDown) => createSelector(selectImplicitDrillsByAvailableDrillTargets(availableDrillTargets, ignoredDrillDownHierarchies, disableDrillIntoURL), selectAllCatalogAttributesMap, selectSupportsAttributeHierarchies, selectEnableDashboardPartialRendering, (implicitDrillDowns, catalogAttributes, supportsAttributeHierarchies, enablePartialRendering) => {
510
+ const restrictedDrillDowns = getRestrictedDrillDowns((availableDrillTargets?.attributes ?? []).map(({ attribute }) => attribute), catalogAttributes, ignoredDrillDownHierarchies ?? [], { supportsAttributeHierarchies, enablePartialRendering, disableDrillDown });
511
+ return [
512
+ ...implicitDrillDowns.flatMap((implicitDrill) => implicitDrill.predicates),
513
+ ...restrictedDrillDownPredicates(restrictedDrillDowns),
514
+ ];
475
515
  }));
476
516
  function getMetricDisabled(insight, localIdentifier) {
477
517
  return (insight?.insight.properties?.["controls"]?.["disableKeyDriveAnalysisOn"]?.[localIdentifier] ?? false);
@@ -1 +1 @@
1
- {"version":3,"file":"useAutomationFilters.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/automations/shared/automationFilters/useAutomationFilters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useAutomationFilters.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/automations/shared/automationFilters/useAutomationFilters.ts"],"names":[],"mappings":"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"}
@@ -5,16 +5,12 @@ import { useIntl } from "react-intl";
5
5
  import { useAutomationsContext } from "../../contexts/AutomationsContext.js";
6
6
  import { applyFilterChange, getCatalogAttributesByFilters, getCatalogDateDatasetsByFilters, getCatalogMeasuresByFilters, getFilterTitle, getNonHiddenFilters, getNonSelectedFilters, removeFilterFrom, resolveFilterToAdd, resolveTabFilterToAdd, } from "./utils.js";
7
7
  /**
8
- * Computes the filters the bar renders: restricted ones split off to be reported as a count, hidden
9
- * ones removed from the rest. Restricted filters stay in the selection, so they are still saved.
10
- *
11
- * @remarks
12
- * Restricted filters are taken out before the hidden check, so one the author hid after the automation
13
- * stored it is still counted and removable rather than kept invisibly.
8
+ * Computes the filters the bar renders: hidden ones removed, then restricted ones split off to be
9
+ * reported as a count. Restricted filters stay in the selection, so they are still saved.
14
10
  */
15
11
  function computeVisibleFilters(selectedFilters, context) {
16
- const [restrictedFilters, readableFilters] = partition(selectedFilters, context.isFilterRestricted);
17
- const visibleFilters = getNonHiddenFilters(readableFilters, context.attributeConfigs, context.dateConfigs, context.isCommonDateFilterHidden, context.disableDateFilters);
12
+ const nonHiddenFilters = getNonHiddenFilters(selectedFilters, context.attributeConfigs, context.dateConfigs, context.mvfConfigs, context.isCommonDateFilterHidden, context.disableDateFilters);
13
+ const [restrictedFilters, visibleFilters] = partition(nonHiddenFilters, context.isFilterRestricted);
18
14
  return { visibleFilters, restrictedFilters };
19
15
  }
20
16
  /**
@@ -30,7 +30,7 @@ export declare const getCatalogAttributesByFilters: (filters: FilterContextItem[
30
30
  export declare const getCatalogMeasuresByFilters: (filters: FilterContextItem[], measures: ICatalogMeasure[], mvfConfigs: IDashboardMeasureValueFilterConfig[]) => ICatalogMeasure[];
31
31
  export declare const getCatalogDateDatasetsByFilters: (filters: FilterContextItem[], dateDataset: ICatalogDateDataset[], dateConfigs: IDashboardDateFilterConfigItem[]) => ICatalogDateDataset[];
32
32
  export declare const getFilterByCatalogItemRef: (ref: ObjRef, filters: FilterContextItem[]) => FilterContextItem | undefined;
33
- export declare const getNonHiddenFilters: (filters: FilterContextItem[] | undefined, attributeConfigs: IDashboardAttributeFilterConfig[], dateConfigs: IDashboardDateFilterConfigItem[], isCommonDateFilterHidden: boolean, disableDateFilters: boolean) => FilterContextItem[];
33
+ export declare const getNonHiddenFilters: (filters: FilterContextItem[] | undefined, attributeConfigs: IDashboardAttributeFilterConfig[], dateConfigs: IDashboardDateFilterConfigItem[], mvfConfigs: IDashboardMeasureValueFilterConfig[], isCommonDateFilterHidden: boolean, disableDateFilters: boolean) => FilterContextItem[];
34
34
  export declare const getFilterByLocalIdentifier: (localIdentifier: string | undefined, filters: FilterContextItem[]) => FilterContextItem | undefined;
35
35
  /**
36
36
  * Analytical Designer is storing all-time date filters inconsistently,
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/automations/shared/automationFilters/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/automations/shared/automationFilters/utils.ts"],"names":[],"mappings":"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"}
@@ -137,7 +137,7 @@ export const getFilterByCatalogItemRef = (ref, filters) => {
137
137
  return false;
138
138
  });
139
139
  };
140
- export const getNonHiddenFilters = (filters, attributeConfigs, dateConfigs, isCommonDateFilterHidden, disableDateFilters) => {
140
+ export const getNonHiddenFilters = (filters, attributeConfigs, dateConfigs, mvfConfigs, isCommonDateFilterHidden, disableDateFilters) => {
141
141
  return (filters ?? []).filter((filter) => {
142
142
  if (isDashboardAttributeFilterItem(filter)) {
143
143
  const localIdentifier = dashboardAttributeFilterItemLocalIdentifier(filter);
@@ -151,6 +151,11 @@ export const getNonHiddenFilters = (filters, attributeConfigs, dateConfigs, isCo
151
151
  const config = dateConfigs.find((date) => areObjRefsEqual(date.dateDataSet, filter.dateFilter.dataSet));
152
152
  return config?.config.mode !== "hidden" && !disableDateFilters;
153
153
  }
154
+ else if (isDashboardMeasureValueFilter(filter)) {
155
+ const localIdentifier = filter.dashboardMeasureValueFilter.localIdentifier;
156
+ const config = mvfConfigs.find((mvf) => mvf.localIdentifier === localIdentifier);
157
+ return config?.mode !== "hidden";
158
+ }
154
159
  else {
155
160
  // New filter types (arbitrary, match) - show by default
156
161
  return true;
@@ -1 +1 @@
1
- {"version":3,"file":"CreationPanel.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dashboard/DashboardSidebar/CreationPanel.tsx"],"names":[],"mappings":"AAcA,OAAO,EACH,KAAK,2BAA2B,EAChC,KAAK,iCAAiC,EACtC,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,uCAAuC,EAC/C,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAEH,KAAK,qCAAqC,EAC1C,KAAK,qCAAqC,EAC7C,MAAM,4BAA4B,CAAC;AAcpC,UAAU,mBAAmB;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oCAAoC,CAAC,EAAE,qCAAqC,CAAC;IAC7E,oCAAoC,CAAC,EAAE,qCAAqC,CAAC;IAC7E,2BAA2B,CAAC,EAAE,2BAA2B,CAAC;IAC1D,yBAAyB,CAAC,EAAE,yBAAyB,CAAC;IACtD,0BAA0B,CAAC,EAAE,0BAA0B,CAAC;IACxD,uCAAuC,CAAC,EAAE,uCAAuC,CAAC;IAClF,iCAAiC,CAAC,EAAE,iCAAiC,CAAC;CACzE;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,mBAAmB,2CA+HvD"}
1
+ {"version":3,"file":"CreationPanel.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dashboard/DashboardSidebar/CreationPanel.tsx"],"names":[],"mappings":"AAcA,OAAO,EACH,KAAK,2BAA2B,EAChC,KAAK,iCAAiC,EACtC,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,uCAAuC,EAC/C,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAEH,KAAK,qCAAqC,EAC1C,KAAK,qCAAqC,EAC7C,MAAM,4BAA4B,CAAC;AAepC,UAAU,mBAAmB;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oCAAoC,CAAC,EAAE,qCAAqC,CAAC;IAC7E,oCAAoC,CAAC,EAAE,qCAAqC,CAAC;IAC7E,2BAA2B,CAAC,EAAE,2BAA2B,CAAC;IAC1D,yBAAyB,CAAC,EAAE,yBAAyB,CAAC;IACtD,0BAA0B,CAAC,EAAE,0BAA0B,CAAC;IACxD,uCAAuC,CAAC,EAAE,uCAAuC,CAAC;IAClF,iCAAiC,CAAC,EAAE,iCAAiC,CAAC;CACzE;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,mBAAmB,2CAiIvD"}
@@ -11,7 +11,8 @@ import { selectIsAiGenerating } from "../../../model/store/config/configSelector
11
11
  import { selectIsNewDashboard } from "../../../model/store/meta/metaSelectors.js";
12
12
  import { DraggableInsightList } from "./DraggableInsightList/DraggableInsightList.js";
13
13
  import { SidebarCollapseToggle } from "./SidebarCollapseToggle.js";
14
- import { useResizableSidebar } from "./SidebarResizeContext.js";
14
+ import { useResizableSidebar } from "./useResizableSidebarState.js";
15
+ // Names of the palette items while the collapsed icon rail shows them without their labels.
15
16
  const RAIL_TOOLTIPS = {
16
17
  "insight-placeholder": _jsx(FormattedMessage, { id: "sidebar.rail.visualization" }),
17
18
  "attributeFilter-placeholder": _jsx(FormattedMessage, { id: "addPanel.filter" }),
@@ -25,7 +26,9 @@ export function CreationPanel(props) {
25
26
  const supportsRichText = useDashboardSelector(selectSupportsRichTextWidgets);
26
27
  const isNewDashboard = useDashboardSelector(selectIsNewDashboard);
27
28
  const isAiGenerating = useDashboardSelector(selectIsAiGenerating);
28
- const { canCollapse, isCollapsed, setCollapsed } = useResizableSidebar();
29
+ const { canCollapse, isCollapsed, setCollapsed, hasRail: keepsRail } = useResizableSidebar();
30
+ const hasRail = canCollapse && keepsRail;
31
+ const isRailCollapsed = hasRail && isCollapsed;
29
32
  const [focusSearch, setFocusSearch] = useState(undefined);
30
33
  const AttributeFilterComponentSet = props.AttributeFilterComponentSet;
31
34
  const InsightWidgetComponentSet = props.InsightWidgetComponentSet;
@@ -43,7 +46,7 @@ export function CreationPanel(props) {
43
46
  return sortBy(items, (item) => item.priority ?? 0).map(({ CreatePanelListItemComponent, type }) => {
44
47
  const listItem = (_jsx(CreatePanelListItemComponent, { WrapCreatePanelItemWithDragComponent: WrapCreatePanelItemWithDragComponent, disabled: isAiGenerating }));
45
48
  const tooltip = RAIL_TOOLTIPS[type];
46
- if (!isCollapsed || !tooltip) {
49
+ if (!isRailCollapsed || !tooltip) {
47
50
  return _jsx(Fragment, { children: listItem }, type);
48
51
  }
49
52
  return (_jsx(UiTooltip, { anchor: listItem, content: tooltip, arrowPlacement: "left", triggerBy: ["hover"], optimalPlacement: true, accessibilityHidden: true }, type));
@@ -57,12 +60,12 @@ export function CreationPanel(props) {
57
60
  supportsRichText,
58
61
  WrapCreatePanelItemWithDragComponent,
59
62
  isAiGenerating,
60
- isCollapsed,
63
+ isRailCollapsed,
61
64
  ]);
62
- return (_jsx("div", { className: cx("configuration-panel creation-panel", className), children: _jsxs("div", { className: "configuration-panel-content", children: [_jsxs("div", { className: "gd-creation-panel-header flex-panel-item-nostretch", children: [_jsx(Typography, { tagName: "h2", children: _jsx(FormattedMessage, { id: "visualizationsList.dragToAdd" }) }), canCollapse ? (_jsx(SidebarCollapseToggle, { isCollapsed: isCollapsed, onToggle: () => {
65
+ return (_jsx("div", { className: cx("configuration-panel creation-panel", className), children: _jsxs("div", { className: "configuration-panel-content", children: [_jsxs("div", { className: "gd-creation-panel-header flex-panel-item-nostretch", children: [canCollapse ? (_jsx(SidebarCollapseToggle, { isCollapsed: isCollapsed, onToggle: () => {
63
66
  setFocusSearch(false);
64
67
  setCollapsed(!isCollapsed);
65
- } })) : null] }), _jsx("div", { className: "configuration-category drag-to-add", role: "group", "aria-label": intl.formatMessage({ id: "addPanel.newItem" }), children: _jsx("div", { className: "add-item-panel", children: addItemPanelItems }) }), _jsxs("div", { className: "configuration-category configuration-category-vis drag-to-add flex-panel-item-stretch", role: "group", "aria-label": intl.formatMessage({ id: "visualizationsList.savedVisualizations" }), children: [canCollapse ? (_jsx("div", { className: "gd-sidebar-rail-search", children: _jsx(UiTooltip, { content: intl.formatMessage({ id: "sidebar.search" }), arrowPlacement: "left", triggerBy: ["hover", "focus"], optimalPlacement: true, accessibilityHidden: true, closeOnAnchorClick: true, anchor: _jsx(UiIconButton, { icon: "search", label: intl.formatMessage({ id: "sidebar.search" }), size: "medium", variant: "tertiary", dataTestId: "s-dashboard-sidebar-rail-search", accessibilityConfig: {
68
+ } })) : null, _jsx(Typography, { tagName: "h2", children: _jsx(FormattedMessage, { id: "visualizationsList.dragToAdd" }) })] }), _jsx("div", { className: "configuration-category drag-to-add", role: "group", "aria-label": intl.formatMessage({ id: "addPanel.newItem" }), children: _jsx("div", { className: "add-item-panel", children: addItemPanelItems }) }), _jsxs("div", { className: "configuration-category configuration-category-vis drag-to-add flex-panel-item-stretch", role: "group", "aria-label": intl.formatMessage({ id: "visualizationsList.savedVisualizations" }), children: [hasRail ? (_jsx("div", { className: "gd-sidebar-rail-search", children: _jsx(UiTooltip, { content: intl.formatMessage({ id: "sidebar.search" }), arrowPlacement: "left", triggerBy: ["hover", "focus"], optimalPlacement: true, accessibilityHidden: true, closeOnAnchorClick: true, anchor: _jsx(UiIconButton, { icon: "search", label: intl.formatMessage({ id: "sidebar.search" }), size: "medium", variant: "tertiary", dataTestId: "s-dashboard-sidebar-rail-search", accessibilityConfig: {
66
69
  ariaLabel: intl.formatMessage({ id: "sidebar.search" }),
67
70
  }, onClick: () => {
68
71
  setFocusSearch(true);