@gooddata/sdk-ui-dashboard 11.65.0-alpha.0 → 11.65.0-alpha.10

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 (430) hide show
  1. package/NOTICE +72077 -4
  2. package/esm/__version.d.ts +1 -1
  3. package/esm/__version.d.ts.map +1 -1
  4. package/esm/__version.js +1 -1
  5. package/esm/assets/type-csv-formatted.svg +1 -1
  6. package/esm/assets/type-csv-raw.svg +1 -1
  7. package/esm/index.d.ts +7 -4
  8. package/esm/index.d.ts.map +1 -1
  9. package/esm/index.js +3 -2
  10. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/resolveDashboardConfig.d.ts.map +1 -1
  11. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/resolveDashboardConfig.js +1 -3
  12. package/esm/model/commandHandlers/filterContext/attributeFilter/changeAttributeDisplayFormHandler.d.ts.map +1 -1
  13. package/esm/model/commandHandlers/filterContext/attributeFilter/changeAttributeDisplayFormHandler.js +8 -7
  14. package/esm/model/commandHandlers/filterContext/attributeFilter/changeAttributeFilterSelectionHandler.d.ts.map +1 -1
  15. package/esm/model/commandHandlers/filterContext/attributeFilter/changeAttributeFilterSelectionHandler.js +19 -28
  16. package/esm/model/commandHandlers/filterContext/attributeFilter/removeAttributeFiltersHandler.d.ts.map +1 -1
  17. package/esm/model/commandHandlers/filterContext/attributeFilter/removeAttributeFiltersHandler.js +4 -5
  18. package/esm/model/commandHandlers/filterContext/attributeFilter/replaceAttributeFilterItemSelectionHandler.d.ts.map +1 -1
  19. package/esm/model/commandHandlers/filterContext/attributeFilter/replaceAttributeFilterItemSelectionHandler.js +14 -15
  20. package/esm/model/commandHandlers/filterContext/attributeFilter/resolveDisplayFormMetadata.d.ts +4 -1
  21. package/esm/model/commandHandlers/filterContext/attributeFilter/resolveDisplayFormMetadata.d.ts.map +1 -1
  22. package/esm/model/commandHandlers/filterContext/attributeFilter/resolveDisplayFormMetadata.js +11 -2
  23. package/esm/model/commandHandlers/filterContext/changeFilterContextSelectionHandler.d.ts.map +1 -1
  24. package/esm/model/commandHandlers/filterContext/changeFilterContextSelectionHandler.js +23 -45
  25. package/esm/model/commandHandlers/filterContext/common.d.ts +6 -5
  26. package/esm/model/commandHandlers/filterContext/common.d.ts.map +1 -1
  27. package/esm/model/commandHandlers/filterContext/common.js +12 -18
  28. package/esm/model/commandHandlers/filterContext/dateFilter/changeDateFilterSelectionHandler.d.ts.map +1 -1
  29. package/esm/model/commandHandlers/filterContext/dateFilter/changeDateFilterSelectionHandler.js +30 -36
  30. package/esm/model/commandHandlers/filterContext/measureValueFilter/changeMeasureValueFilterConditionHandler.d.ts.map +1 -1
  31. package/esm/model/commandHandlers/filterContext/measureValueFilter/changeMeasureValueFilterConditionHandler.js +11 -17
  32. package/esm/model/commandHandlers/filterContext/measureValueFilter/changeMeasureValueFilterDimensionalityHandler.d.ts.map +1 -1
  33. package/esm/model/commandHandlers/filterContext/measureValueFilter/changeMeasureValueFilterDimensionalityHandler.js +7 -10
  34. package/esm/model/commandHandlers/filterContext/tabSync/expandActionsForTabSync.d.ts +15 -0
  35. package/esm/model/commandHandlers/filterContext/tabSync/expandActionsForTabSync.d.ts.map +1 -0
  36. package/esm/model/commandHandlers/filterContext/tabSync/expandActionsForTabSync.js +88 -0
  37. package/esm/model/commandHandlers/filterContext/tabSync/tabSyncRules.d.ts +11 -0
  38. package/esm/model/commandHandlers/filterContext/tabSync/tabSyncRules.d.ts.map +1 -0
  39. package/esm/model/commandHandlers/filterContext/tabSync/tabSyncRules.js +335 -0
  40. package/esm/model/commandHandlers/filterContext/tabSync/tabSyncSaga.d.ts +52 -0
  41. package/esm/model/commandHandlers/filterContext/tabSync/tabSyncSaga.d.ts.map +1 -0
  42. package/esm/model/commandHandlers/filterContext/tabSync/tabSyncSaga.js +60 -0
  43. package/esm/model/commandHandlers/filterContext/tabSync/tabSyncScope.d.ts +69 -0
  44. package/esm/model/commandHandlers/filterContext/tabSync/tabSyncScope.d.ts.map +1 -0
  45. package/esm/model/commandHandlers/filterContext/tabSync/tabSyncScope.js +2 -0
  46. package/esm/model/commandHandlers/parameters/changeParameterValuesHandler.d.ts +2 -1
  47. package/esm/model/commandHandlers/parameters/changeParameterValuesHandler.d.ts.map +1 -1
  48. package/esm/model/commandHandlers/parameters/changeParameterValuesHandler.js +41 -10
  49. package/esm/model/commands/parameters.d.ts +11 -1
  50. package/esm/model/commands/parameters.d.ts.map +1 -1
  51. package/esm/model/commands/parameters.js +2 -1
  52. package/esm/model/events/base.d.ts +1 -1
  53. package/esm/model/events/base.d.ts.map +1 -1
  54. package/esm/model/events/index.d.ts +2 -1
  55. package/esm/model/events/index.d.ts.map +1 -1
  56. package/esm/model/events/insightEditor.d.ts +128 -0
  57. package/esm/model/events/insightEditor.d.ts.map +1 -0
  58. package/esm/model/events/insightEditor.js +74 -0
  59. package/esm/model/queryServices/queryAttributeElements.js +1 -0
  60. package/esm/model/react/useInitializeDashboardStore.d.ts.map +1 -1
  61. package/esm/model/react/useInitializeDashboardStore.js +4 -9
  62. package/esm/model/store/config/configReducers.d.ts +4 -8
  63. package/esm/model/store/config/configReducers.d.ts.map +1 -1
  64. package/esm/model/store/config/configReducers.js +6 -12
  65. package/esm/model/store/config/configSelectors.d.ts +24 -0
  66. package/esm/model/store/config/configSelectors.d.ts.map +1 -1
  67. package/esm/model/store/config/configSelectors.js +30 -4
  68. package/esm/model/store/config/index.d.ts +2 -3
  69. package/esm/model/store/config/index.d.ts.map +1 -1
  70. package/esm/model/store/tabs/attributeFilterConfigs/attributeFilterConfigsReducers.d.ts +75 -5
  71. package/esm/model/store/tabs/attributeFilterConfigs/attributeFilterConfigsReducers.d.ts.map +1 -1
  72. package/esm/model/store/tabs/attributeFilterConfigs/attributeFilterConfigsReducers.js +35 -60
  73. package/esm/model/store/tabs/dateFilterConfigs/dateFilterConfigsReducers.js +1 -1
  74. package/esm/model/store/tabs/filterContext/filterContextReducers.d.ts +139 -31
  75. package/esm/model/store/tabs/filterContext/filterContextReducers.d.ts.map +1 -1
  76. package/esm/model/store/tabs/filterContext/filterContextReducers.js +314 -529
  77. package/esm/model/store/tabs/filterContext/filterSync.d.ts +35 -13
  78. package/esm/model/store/tabs/filterContext/filterSync.d.ts.map +1 -1
  79. package/esm/model/store/tabs/filterContext/filterSync.js +79 -58
  80. package/esm/model/store/tabs/index.d.ts +10 -12
  81. package/esm/model/store/tabs/index.d.ts.map +1 -1
  82. package/esm/model/store/tabs/layout/layoutReducers.d.ts +1 -0
  83. package/esm/model/store/tabs/layout/layoutReducers.d.ts.map +1 -1
  84. package/esm/model/store/tabs/measureValueFilterConfigs/measureValueFilterConfigsReducers.d.ts.map +1 -1
  85. package/esm/model/store/tabs/parameters/parametersReducers.d.ts +0 -5
  86. package/esm/model/store/tabs/parameters/parametersReducers.d.ts.map +1 -1
  87. package/esm/model/store/tabs/parameters/parametersReducers.js +8 -7
  88. package/esm/model/store/tabs/parameters/parametersSelectors.d.ts +7 -0
  89. package/esm/model/store/tabs/parameters/parametersSelectors.d.ts.map +1 -1
  90. package/esm/model/store/tabs/parameters/parametersSelectors.js +16 -0
  91. package/esm/model/store/tabs/tabsReducers.d.ts +8 -4
  92. package/esm/model/store/tabs/tabsReducers.d.ts.map +1 -1
  93. package/esm/model/store/tabs/tabsReducers.js +15 -18
  94. package/esm/model/store/tabs/tabsState.d.ts +0 -10
  95. package/esm/model/store/tabs/tabsState.d.ts.map +1 -1
  96. package/esm/model/store/tabs/tabsState.js +0 -20
  97. package/esm/model/store/ui/index.d.ts +2 -0
  98. package/esm/model/store/ui/index.d.ts.map +1 -1
  99. package/esm/model/store/ui/uiReducers.d.ts +6 -0
  100. package/esm/model/store/ui/uiReducers.d.ts.map +1 -1
  101. package/esm/model/store/ui/uiReducers.js +8 -0
  102. package/esm/model/store/ui/uiSelectors.d.ts +7 -0
  103. package/esm/model/store/ui/uiSelectors.d.ts.map +1 -1
  104. package/esm/model/store/ui/uiSelectors.js +6 -0
  105. package/esm/model/store/ui/uiState.d.ts +5 -0
  106. package/esm/model/store/ui/uiState.d.ts.map +1 -1
  107. package/esm/model/store/ui/uiState.js +1 -0
  108. package/esm/model/types/attributeFilterTypes.d.ts +5 -0
  109. package/esm/model/types/attributeFilterTypes.d.ts.map +1 -1
  110. package/esm/model/types/attributeFilterTypes.js +1 -1
  111. package/esm/model/types/commonTypes.d.ts +38 -22
  112. package/esm/model/types/commonTypes.d.ts.map +1 -1
  113. package/esm/model/types/insightEditorTypes.d.ts +43 -0
  114. package/esm/model/types/insightEditorTypes.d.ts.map +1 -0
  115. package/esm/model/types/insightEditorTypes.js +2 -0
  116. package/esm/model/utils/attributeFilterMatching.d.ts +10 -0
  117. package/esm/model/utils/attributeFilterMatching.d.ts.map +1 -1
  118. package/esm/model/utils/attributeFilterMatching.js +14 -3
  119. package/esm/model/utils/attributeFilterSelectionTypeCompatibility.d.ts +8 -0
  120. package/esm/model/utils/attributeFilterSelectionTypeCompatibility.d.ts.map +1 -1
  121. package/esm/model/utils/attributeFilterSelectionTypeCompatibility.js +14 -4
  122. package/esm/presentation/automations/alerting/hooks/useAttributeValuesFromExecResults.d.ts +33 -2
  123. package/esm/presentation/automations/alerting/hooks/useAttributeValuesFromExecResults.d.ts.map +1 -1
  124. package/esm/presentation/automations/alerting/hooks/useAttributeValuesFromExecResults.js +29 -13
  125. package/esm/presentation/automations/alerting/state/useAlertSupportedMetrics.d.ts.map +1 -1
  126. package/esm/presentation/automations/alerting/state/useAlertSupportedMetrics.js +3 -2
  127. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/DashboardAttachments.d.ts.map +1 -1
  128. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/DashboardAttachments.js +3 -3
  129. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/WidgetAttachments.d.ts.map +1 -1
  130. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/WidgetAttachments.js +5 -4
  131. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/LiveRegionLastSelectContainer.d.ts +9 -0
  132. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/LiveRegionLastSelectContainer.d.ts.map +1 -0
  133. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/LiveRegionLastSelectContainer.js +12 -0
  134. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelect.d.ts.map +1 -1
  135. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelect.js +3 -3
  136. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelectRenderer.d.ts.map +1 -1
  137. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelectRenderer.js +14 -7
  138. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelectionDescription.d.ts +12 -0
  139. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelectionDescription.d.ts.map +1 -0
  140. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/RecipientsSelect/RecipientsSelectionDescription.js +30 -0
  141. package/esm/presentation/automations/scheduledEmail/utils/users.d.ts +1 -0
  142. package/esm/presentation/automations/scheduledEmail/utils/users.d.ts.map +1 -1
  143. package/esm/presentation/automations/scheduledEmail/utils/users.js +3 -0
  144. package/esm/presentation/automations/shared/automationFilters/utils.d.ts +4 -0
  145. package/esm/presentation/automations/shared/automationFilters/utils.d.ts.map +1 -1
  146. package/esm/presentation/automations/shared/automationFilters/utils.js +12 -5
  147. package/esm/presentation/dashboard/DashboardHeader/DashboardHeader.d.ts +1 -1
  148. package/esm/presentation/dashboard/DashboardHeader/DashboardHeader.d.ts.map +1 -1
  149. package/esm/presentation/dashboard/DashboardHeader/DashboardHeader.js +2 -11
  150. package/esm/presentation/dashboard/DashboardSidebar/CreationPanel.d.ts.map +1 -1
  151. package/esm/presentation/dashboard/DashboardSidebar/CreationPanel.js +10 -1
  152. package/esm/presentation/dashboard/DefaultDashboardContent/DashboardContentLoader.d.ts +5 -0
  153. package/esm/presentation/dashboard/DefaultDashboardContent/DashboardContentLoader.d.ts.map +1 -0
  154. package/esm/presentation/dashboard/DefaultDashboardContent/DashboardContentLoader.js +27 -0
  155. package/esm/presentation/dashboard/DefaultDashboardContent/DefaultDashboardMainContent.d.ts.map +1 -1
  156. package/esm/presentation/dashboard/DefaultDashboardContent/DefaultDashboardMainContent.js +7 -2
  157. package/esm/presentation/dashboard/components/DashboardAiComposingOverlay.d.ts +4 -0
  158. package/esm/presentation/dashboard/components/DashboardAiComposingOverlay.d.ts.map +1 -0
  159. package/esm/presentation/dashboard/components/DashboardAiComposingOverlay.js +151 -0
  160. package/esm/presentation/dashboard/components/DashboardInner.d.ts.map +1 -1
  161. package/esm/presentation/dashboard/components/DashboardInner.js +17 -14
  162. package/esm/presentation/dashboard/components/DashboardInteractionComposing.d.ts +8 -0
  163. package/esm/presentation/dashboard/components/DashboardInteractionComposing.d.ts.map +1 -0
  164. package/esm/presentation/dashboard/components/DashboardInteractionComposing.js +23 -0
  165. package/esm/presentation/dashboard/components/DashboardInteractionLock.d.ts +8 -0
  166. package/esm/presentation/dashboard/components/DashboardInteractionLock.d.ts.map +1 -0
  167. package/esm/presentation/dashboard/components/DashboardInteractionLock.js +29 -0
  168. package/esm/presentation/dashboard/components/DashboardScreenSizeContext.d.ts.map +1 -1
  169. package/esm/presentation/dashboard/components/DashboardScreenSizeContext.js +10 -7
  170. package/esm/presentation/dashboard/components/ToastMessages.d.ts.map +1 -1
  171. package/esm/presentation/dashboard/components/ToastMessages.js +6 -3
  172. package/esm/presentation/dashboard/components/useEditModeLayoutNoteMessages.d.ts +6 -0
  173. package/esm/presentation/dashboard/components/useEditModeLayoutNoteMessages.d.ts.map +1 -0
  174. package/esm/presentation/dashboard/components/useEditModeLayoutNoteMessages.js +48 -0
  175. package/esm/presentation/dashboard/hooks/useDashboard.d.ts.map +1 -1
  176. package/esm/presentation/dashboard/hooks/useDashboard.js +3 -2
  177. package/esm/presentation/dashboard/types.d.ts +5 -0
  178. package/esm/presentation/dashboard/types.d.ts.map +1 -1
  179. package/esm/presentation/dragAndDrop/draggableWidget/AddDashboardLayoutWidgetButton.d.ts.map +1 -1
  180. package/esm/presentation/dragAndDrop/draggableWidget/AddDashboardLayoutWidgetButton.js +2 -4
  181. package/esm/presentation/dragAndDrop/draggableWidget/AddRichTextWidgetButton.d.ts.map +1 -1
  182. package/esm/presentation/dragAndDrop/draggableWidget/AddRichTextWidgetButton.js +3 -3
  183. package/esm/presentation/dragAndDrop/draggableWidget/AddVisualizationSwitcherWidgetButton.d.ts.map +1 -1
  184. package/esm/presentation/dragAndDrop/draggableWidget/AddVisualizationSwitcherWidgetButton.js +2 -4
  185. package/esm/presentation/drill/utils/drillDownUtils.d.ts.map +1 -1
  186. package/esm/presentation/drill/utils/drillDownUtils.js +3 -2
  187. package/esm/presentation/export/hooks/useDashboardRelatedFilters.d.ts +8 -1
  188. package/esm/presentation/export/hooks/useDashboardRelatedFilters.d.ts.map +1 -1
  189. package/esm/presentation/export/hooks/useDashboardRelatedFilters.js +21 -5
  190. package/esm/presentation/filterBar/attributeFilter/DefaultDashboardAttributeFilter.d.ts.map +1 -1
  191. package/esm/presentation/filterBar/attributeFilter/DefaultDashboardAttributeFilter.js +3 -2
  192. package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/AddAttributeFilterPlaceholder.d.ts.map +1 -1
  193. package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/AddAttributeFilterPlaceholder.js +3 -2
  194. package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/attributeListItemTooltip/AttributeListItemTooltip.d.ts.map +1 -1
  195. package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/attributeListItemTooltip/AttributeListItemTooltip.js +4 -1
  196. package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/attributeListItemTooltip/AttributeListItemTooltipContent.d.ts +6 -2
  197. package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/attributeListItemTooltip/AttributeListItemTooltipContent.d.ts.map +1 -1
  198. package/esm/presentation/filterBar/attributeFilter/addAttributeFilter/attributeListItemTooltip/AttributeListItemTooltipContent.js +8 -4
  199. package/esm/presentation/filterBar/filterBar/filterViews/FilterViewDeleteConfirm.d.ts +2 -1
  200. package/esm/presentation/filterBar/filterBar/filterViews/FilterViewDeleteConfirm.d.ts.map +1 -1
  201. package/esm/presentation/filterBar/filterBar/filterViews/FilterViewDeleteConfirm.js +2 -2
  202. package/esm/presentation/filterBar/filterBar/filterViews/FilterViewsList.d.ts.map +1 -1
  203. package/esm/presentation/filterBar/filterBar/filterViews/FilterViewsList.js +11 -5
  204. package/esm/presentation/filterBar/filterBar/hooks/useResetFiltersButton.d.ts.map +1 -1
  205. package/esm/presentation/filterBar/filterBar/hooks/useResetFiltersButton.js +4 -1
  206. package/esm/presentation/insightEditor/InsightEditorContent.d.ts +26 -0
  207. package/esm/presentation/insightEditor/InsightEditorContent.d.ts.map +1 -0
  208. package/esm/presentation/insightEditor/InsightEditorContent.js +158 -0
  209. package/esm/presentation/insightEditor/InsightEditorCreatePanelItem.d.ts +7 -0
  210. package/esm/presentation/insightEditor/InsightEditorCreatePanelItem.d.ts.map +1 -0
  211. package/esm/presentation/insightEditor/InsightEditorCreatePanelItem.js +25 -0
  212. package/esm/presentation/insightEditor/InsightEditorOverlay.d.ts +6 -0
  213. package/esm/presentation/insightEditor/InsightEditorOverlay.d.ts.map +1 -0
  214. package/esm/presentation/insightEditor/InsightEditorOverlay.js +110 -0
  215. package/esm/presentation/insightEditor/InsightEditorPermissionsContext.d.ts +10 -0
  216. package/esm/presentation/insightEditor/InsightEditorPermissionsContext.d.ts.map +1 -0
  217. package/esm/presentation/insightEditor/InsightEditorPermissionsContext.js +18 -0
  218. package/esm/presentation/insightEditor/InsightEditorPlaceholder.d.ts +7 -0
  219. package/esm/presentation/insightEditor/InsightEditorPlaceholder.d.ts.map +1 -0
  220. package/esm/presentation/insightEditor/InsightEditorPlaceholder.js +15 -0
  221. package/esm/presentation/insightEditor/filterContext/attributeFilters.d.ts +4 -0
  222. package/esm/presentation/insightEditor/filterContext/attributeFilters.d.ts.map +1 -0
  223. package/esm/presentation/insightEditor/filterContext/attributeFilters.js +115 -0
  224. package/esm/presentation/insightEditor/filterContext/dateFilters.d.ts +5 -0
  225. package/esm/presentation/insightEditor/filterContext/dateFilters.d.ts.map +1 -0
  226. package/esm/presentation/insightEditor/filterContext/dateFilters.js +117 -0
  227. package/esm/presentation/insightEditor/filterContext/filterIntersection.d.ts +7 -0
  228. package/esm/presentation/insightEditor/filterContext/filterIntersection.d.ts.map +1 -0
  229. package/esm/presentation/insightEditor/filterContext/filterIntersection.js +149 -0
  230. package/esm/presentation/insightEditor/filterContext/insightFilterContext.d.ts +26 -0
  231. package/esm/presentation/insightEditor/filterContext/insightFilterContext.d.ts.map +1 -0
  232. package/esm/presentation/insightEditor/filterContext/insightFilterContext.js +72 -0
  233. package/esm/presentation/insightEditor/filterContext/measureValueFilters.d.ts +20 -0
  234. package/esm/presentation/insightEditor/filterContext/measureValueFilters.d.ts.map +1 -0
  235. package/esm/presentation/insightEditor/filterContext/measureValueFilters.js +76 -0
  236. package/esm/presentation/insightEditor/filterContext/objQualifiers.d.ts +11 -0
  237. package/esm/presentation/insightEditor/filterContext/objQualifiers.d.ts.map +1 -0
  238. package/esm/presentation/insightEditor/filterContext/objQualifiers.js +18 -0
  239. package/esm/presentation/insightEditor/insightEditorEscapeGuard.d.ts +18 -0
  240. package/esm/presentation/insightEditor/insightEditorEscapeGuard.d.ts.map +1 -0
  241. package/esm/presentation/insightEditor/insightEditorEscapeGuard.js +24 -0
  242. package/esm/presentation/insightEditor/insightEditorRoute.d.ts +34 -0
  243. package/esm/presentation/insightEditor/insightEditorRoute.d.ts.map +1 -0
  244. package/esm/presentation/insightEditor/insightEditorRoute.js +48 -0
  245. package/esm/presentation/insightEditor/types.d.ts +7 -0
  246. package/esm/presentation/insightEditor/types.d.ts.map +1 -0
  247. package/esm/presentation/insightEditor/types.js +2 -0
  248. package/esm/presentation/insightEditor/useCanCreateInsightInEditor.d.ts +5 -0
  249. package/esm/presentation/insightEditor/useCanCreateInsightInEditor.d.ts.map +1 -0
  250. package/esm/presentation/insightEditor/useCanCreateInsightInEditor.js +14 -0
  251. package/esm/presentation/insightEditor/useExploreFilterTransfer.d.ts +21 -0
  252. package/esm/presentation/insightEditor/useExploreFilterTransfer.d.ts.map +1 -0
  253. package/esm/presentation/insightEditor/useExploreFilterTransfer.js +193 -0
  254. package/esm/presentation/insightEditor/useInsightEditPermissions.d.ts +17 -0
  255. package/esm/presentation/insightEditor/useInsightEditPermissions.d.ts.map +1 -0
  256. package/esm/presentation/insightEditor/useInsightEditPermissions.js +42 -0
  257. package/esm/presentation/insightEditor/useInsightEditorMenuItems.d.ts +23 -0
  258. package/esm/presentation/insightEditor/useInsightEditorMenuItems.d.ts.map +1 -0
  259. package/esm/presentation/insightEditor/useInsightEditorMenuItems.js +126 -0
  260. package/esm/presentation/insightEditor/useInsightEditorSession.d.ts +19 -0
  261. package/esm/presentation/insightEditor/useInsightEditorSession.d.ts.map +1 -0
  262. package/esm/presentation/insightEditor/useInsightEditorSession.js +141 -0
  263. package/esm/presentation/insightList/InsightList.d.ts.map +1 -1
  264. package/esm/presentation/insightList/InsightList.js +10 -5
  265. package/esm/presentation/localization/bundles/de-DE.localization-bundle.d.ts +6 -0
  266. package/esm/presentation/localization/bundles/de-DE.localization-bundle.d.ts.map +1 -1
  267. package/esm/presentation/localization/bundles/de-DE.localization-bundle.js +48 -42
  268. package/esm/presentation/localization/bundles/en-AU.localization-bundle.d.ts +6 -0
  269. package/esm/presentation/localization/bundles/en-AU.localization-bundle.d.ts.map +1 -1
  270. package/esm/presentation/localization/bundles/en-AU.localization-bundle.js +6 -0
  271. package/esm/presentation/localization/bundles/en-GB.localization-bundle.d.ts +6 -0
  272. package/esm/presentation/localization/bundles/en-GB.localization-bundle.d.ts.map +1 -1
  273. package/esm/presentation/localization/bundles/en-GB.localization-bundle.js +11 -5
  274. package/esm/presentation/localization/bundles/en-US.localization-bundle.d.ts +64 -0
  275. package/esm/presentation/localization/bundles/en-US.localization-bundle.d.ts.map +1 -1
  276. package/esm/presentation/localization/bundles/en-US.localization-bundle.js +64 -0
  277. package/esm/presentation/localization/bundles/es-419.localization-bundle.d.ts +6 -0
  278. package/esm/presentation/localization/bundles/es-419.localization-bundle.d.ts.map +1 -1
  279. package/esm/presentation/localization/bundles/es-419.localization-bundle.js +6 -0
  280. package/esm/presentation/localization/bundles/es-ES.localization-bundle.d.ts +6 -0
  281. package/esm/presentation/localization/bundles/es-ES.localization-bundle.d.ts.map +1 -1
  282. package/esm/presentation/localization/bundles/es-ES.localization-bundle.js +6 -0
  283. package/esm/presentation/localization/bundles/fi-FI.localization-bundle.d.ts +6 -0
  284. package/esm/presentation/localization/bundles/fi-FI.localization-bundle.d.ts.map +1 -1
  285. package/esm/presentation/localization/bundles/fi-FI.localization-bundle.js +6 -0
  286. package/esm/presentation/localization/bundles/fr-CA.localization-bundle.d.ts +6 -0
  287. package/esm/presentation/localization/bundles/fr-CA.localization-bundle.d.ts.map +1 -1
  288. package/esm/presentation/localization/bundles/fr-CA.localization-bundle.js +6 -0
  289. package/esm/presentation/localization/bundles/fr-FR.localization-bundle.d.ts +6 -0
  290. package/esm/presentation/localization/bundles/fr-FR.localization-bundle.d.ts.map +1 -1
  291. package/esm/presentation/localization/bundles/fr-FR.localization-bundle.js +187 -181
  292. package/esm/presentation/localization/bundles/id-ID.localization-bundle.d.ts +6 -0
  293. package/esm/presentation/localization/bundles/id-ID.localization-bundle.d.ts.map +1 -1
  294. package/esm/presentation/localization/bundles/id-ID.localization-bundle.js +6 -0
  295. package/esm/presentation/localization/bundles/it-IT.localization-bundle.d.ts +6 -0
  296. package/esm/presentation/localization/bundles/it-IT.localization-bundle.d.ts.map +1 -1
  297. package/esm/presentation/localization/bundles/it-IT.localization-bundle.js +6 -0
  298. package/esm/presentation/localization/bundles/ja-JP.localization-bundle.d.ts +6 -0
  299. package/esm/presentation/localization/bundles/ja-JP.localization-bundle.d.ts.map +1 -1
  300. package/esm/presentation/localization/bundles/ja-JP.localization-bundle.js +6 -0
  301. package/esm/presentation/localization/bundles/ko-KR.localization-bundle.d.ts +6 -0
  302. package/esm/presentation/localization/bundles/ko-KR.localization-bundle.d.ts.map +1 -1
  303. package/esm/presentation/localization/bundles/ko-KR.localization-bundle.js +6 -0
  304. package/esm/presentation/localization/bundles/nl-NL.localization-bundle.d.ts +6 -0
  305. package/esm/presentation/localization/bundles/nl-NL.localization-bundle.d.ts.map +1 -1
  306. package/esm/presentation/localization/bundles/nl-NL.localization-bundle.js +6 -0
  307. package/esm/presentation/localization/bundles/pl-PL.localization-bundle.d.ts +6 -0
  308. package/esm/presentation/localization/bundles/pl-PL.localization-bundle.d.ts.map +1 -1
  309. package/esm/presentation/localization/bundles/pl-PL.localization-bundle.js +6 -0
  310. package/esm/presentation/localization/bundles/pt-BR.localization-bundle.d.ts +6 -0
  311. package/esm/presentation/localization/bundles/pt-BR.localization-bundle.d.ts.map +1 -1
  312. package/esm/presentation/localization/bundles/pt-BR.localization-bundle.js +6 -0
  313. package/esm/presentation/localization/bundles/pt-PT.localization-bundle.d.ts +6 -0
  314. package/esm/presentation/localization/bundles/pt-PT.localization-bundle.d.ts.map +1 -1
  315. package/esm/presentation/localization/bundles/pt-PT.localization-bundle.js +6 -0
  316. package/esm/presentation/localization/bundles/ru-RU.localization-bundle.d.ts +6 -0
  317. package/esm/presentation/localization/bundles/ru-RU.localization-bundle.d.ts.map +1 -1
  318. package/esm/presentation/localization/bundles/ru-RU.localization-bundle.js +6 -0
  319. package/esm/presentation/localization/bundles/sl-SI.localization-bundle.d.ts +6 -0
  320. package/esm/presentation/localization/bundles/sl-SI.localization-bundle.d.ts.map +1 -1
  321. package/esm/presentation/localization/bundles/sl-SI.localization-bundle.js +6 -0
  322. package/esm/presentation/localization/bundles/th-TH.localization-bundle.d.ts +6 -0
  323. package/esm/presentation/localization/bundles/th-TH.localization-bundle.d.ts.map +1 -1
  324. package/esm/presentation/localization/bundles/th-TH.localization-bundle.js +6 -0
  325. package/esm/presentation/localization/bundles/tr-TR.localization-bundle.d.ts +6 -0
  326. package/esm/presentation/localization/bundles/tr-TR.localization-bundle.d.ts.map +1 -1
  327. package/esm/presentation/localization/bundles/tr-TR.localization-bundle.js +6 -0
  328. package/esm/presentation/localization/bundles/uk-UA.localization-bundle.d.ts +6 -0
  329. package/esm/presentation/localization/bundles/uk-UA.localization-bundle.d.ts.map +1 -1
  330. package/esm/presentation/localization/bundles/uk-UA.localization-bundle.js +6 -0
  331. package/esm/presentation/localization/bundles/vi-VN.localization-bundle.d.ts +6 -0
  332. package/esm/presentation/localization/bundles/vi-VN.localization-bundle.d.ts.map +1 -1
  333. package/esm/presentation/localization/bundles/vi-VN.localization-bundle.js +6 -0
  334. package/esm/presentation/localization/bundles/zh-HK.localization-bundle.d.ts +6 -0
  335. package/esm/presentation/localization/bundles/zh-HK.localization-bundle.d.ts.map +1 -1
  336. package/esm/presentation/localization/bundles/zh-HK.localization-bundle.js +6 -0
  337. package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.d.ts +6 -0
  338. package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.d.ts.map +1 -1
  339. package/esm/presentation/localization/bundles/zh-Hans.localization-bundle.js +6 -0
  340. package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.d.ts +6 -0
  341. package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.d.ts.map +1 -1
  342. package/esm/presentation/localization/bundles/zh-Hant.localization-bundle.js +7 -1
  343. package/esm/presentation/topBar/buttonBar/button/editButton/DefaultEditButton.d.ts.map +1 -1
  344. package/esm/presentation/topBar/buttonBar/button/editButton/DefaultEditButton.js +2 -4
  345. package/esm/presentation/topBar/buttonBar/button/saveAsButton/DefaultSaveAsNewButton.d.ts.map +1 -1
  346. package/esm/presentation/topBar/buttonBar/button/saveAsButton/DefaultSaveAsNewButton.js +3 -2
  347. package/esm/presentation/topBar/buttonBar/button/saveButton/DefaultSaveButton.d.ts.map +1 -1
  348. package/esm/presentation/topBar/buttonBar/button/saveButton/DefaultSaveButton.js +3 -2
  349. package/esm/presentation/topBar/buttonBar/button/settingButton/DefaultSettingButton.d.ts.map +1 -1
  350. package/esm/presentation/topBar/buttonBar/button/settingButton/DefaultSettingButton.js +3 -2
  351. package/esm/presentation/topBar/buttonBar/button/shareButton/DefaultShareButton.d.ts.map +1 -1
  352. package/esm/presentation/topBar/buttonBar/button/shareButton/DefaultShareButton.js +3 -2
  353. package/esm/presentation/topBar/title/EditableTitle.d.ts.map +1 -1
  354. package/esm/presentation/topBar/title/EditableTitle.js +6 -0
  355. package/esm/presentation/widget/insight/DefaultDashboardInsightComponentSetFactory.d.ts +1 -1
  356. package/esm/presentation/widget/insight/DefaultDashboardInsightComponentSetFactory.d.ts.map +1 -1
  357. package/esm/presentation/widget/insight/DefaultDashboardInsightComponentSetFactory.js +13 -1
  358. package/esm/presentation/widget/insightMenu/DefaultDashboardInsightMenu/DashboardInsightMenu/index.d.ts.map +1 -1
  359. package/esm/presentation/widget/insightMenu/DefaultDashboardInsightMenu/DashboardInsightMenu/index.js +10 -1
  360. package/esm/presentation/widget/richText/EditModeDashboardRichText.js +1 -1
  361. package/esm/presentation/widget/visualizationSwitcher/EditModeDashboardVisualizationSwitcher.js +1 -1
  362. package/esm/presentation/widget/visualizationSwitcher/configuration/ToolbarTop.js +2 -2
  363. package/esm/presentation/widget/widget/InsightWidget/useEditableInsightMenu.d.ts.map +1 -1
  364. package/esm/presentation/widget/widget/InsightWidget/useEditableInsightMenu.js +5 -1
  365. package/esm/presentation/widget/widget/InsightWidget/useInsightMenu.d.ts.map +1 -1
  366. package/esm/presentation/widget/widget/InsightWidget/useInsightMenu.js +4 -1
  367. package/esm/sdk-ui-dashboard.d.ts +528 -68
  368. package/package.json +23 -21
  369. package/styles/css/alerting.css +1 -1
  370. package/styles/css/alerting.css.map +1 -1
  371. package/styles/css/attributeFilterConfig.css +3 -3
  372. package/styles/css/automationFilters.css +1 -1
  373. package/styles/css/configurationPanel.css +2 -2
  374. package/styles/css/configurationPanel.css.map +1 -1
  375. package/styles/css/dashboard.css +149 -86
  376. package/styles/css/dashboard.css.map +1 -1
  377. package/styles/css/dashboardContentLoader.css +45 -0
  378. package/styles/css/dashboardContentLoader.css.map +1 -0
  379. package/styles/css/dashboardNestedLayoutToolbar.css.map +1 -1
  380. package/styles/css/dashboardNestedLayoutWidget.css +1 -1
  381. package/styles/css/dashboardSettingsDialog.css +1 -1
  382. package/styles/css/dragAndDrop.css +0 -8
  383. package/styles/css/dragAndDrop.css.map +1 -1
  384. package/styles/css/drillConfigPanel.css +7 -7
  385. package/styles/css/drillConfigPanel.css.map +1 -1
  386. package/styles/css/filterBar.css +4 -4
  387. package/styles/css/filterBar.css.map +1 -1
  388. package/styles/css/grouped-navigation.css +2 -2
  389. package/styles/css/grouped-navigation.css.map +1 -1
  390. package/styles/css/icons.css.map +1 -1
  391. package/styles/css/insightConfiguration.css +1 -1
  392. package/styles/css/insightConfiguration.css.map +1 -1
  393. package/styles/css/insightEditor.css +46 -0
  394. package/styles/css/insightEditor.css.map +1 -0
  395. package/styles/css/kpi.css +2 -2
  396. package/styles/css/kpi.css.map +1 -1
  397. package/styles/css/kpi_alert_dialog.css +2 -2
  398. package/styles/css/layout.css +5 -5
  399. package/styles/css/layout.css.map +1 -1
  400. package/styles/css/main.css +343 -218
  401. package/styles/css/main.css.map +1 -1
  402. package/styles/css/notifications_channels_dialog.css +2 -2
  403. package/styles/css/notifications_channels_dialog.css.map +1 -1
  404. package/styles/css/resizing.css.map +1 -1
  405. package/styles/css/richTextWidget.css.map +1 -1
  406. package/styles/css/saveAsDialog.css.map +1 -1
  407. package/styles/css/sidebar.css +35 -10
  408. package/styles/css/sidebar.css.map +1 -1
  409. package/styles/css/topBar.css.map +1 -1
  410. package/styles/css/visualization.css.map +1 -1
  411. package/styles/css/visualizationSwitcherHeader.css.map +1 -1
  412. package/styles/css/visualizationSwitcherToolbar.css +1 -1
  413. package/styles/css/visualizationSwitcherToolbar.css.map +1 -1
  414. package/styles/css/visualizationSwitcherWidget.css +1 -1
  415. package/styles/css/visualizationSwitcherWidget.css.map +1 -1
  416. package/styles/scss/_variables.scss +3 -2
  417. package/styles/scss/_zIndexes.scss +4 -0
  418. package/styles/scss/attributeFilterConfig.scss +1 -1
  419. package/styles/scss/configurationPanel.scss +1 -1
  420. package/styles/scss/dashboard.scss +113 -94
  421. package/styles/scss/dashboardContentLoader.scss +45 -0
  422. package/styles/scss/dragAndDrop.scss +2 -9
  423. package/styles/scss/drillConfigPanel.scss +3 -3
  424. package/styles/scss/insightEditor.scss +53 -0
  425. package/styles/scss/layout.scss +1 -1
  426. package/styles/scss/main.scss +1 -0
  427. package/styles/scss/sidebar.scss +47 -12
  428. package/esm/presentation/dashboard/components/DashboardSkeleton.d.ts +0 -5
  429. package/esm/presentation/dashboard/components/DashboardSkeleton.d.ts.map +0 -1
  430. package/esm/presentation/dashboard/components/DashboardSkeleton.js +0 -20
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultDashboardMainContent.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dashboard/DefaultDashboardContent/DefaultDashboardMainContent.tsx"],"names":[],"mappings":"AAgBA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,CAAC,EAAE,eAAe,2CAuD7D"}
1
+ {"version":3,"file":"DefaultDashboardMainContent.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dashboard/DefaultDashboardContent/DefaultDashboardMainContent.tsx"],"names":[],"mappings":"AAkBA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAInD;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,CAAC,EAAE,eAAe,2CA+D7D"}
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  // (C) 2023-2026 GoodData Corporation
3
3
  import { useEffect } from "react";
4
4
  import cx from "classnames";
@@ -6,12 +6,15 @@ import { changeFilterContextSelection } from "../../../model/commands/filters.js
6
6
  import { useDashboardSelector } from "../../../model/react/DashboardStoreProvider.js";
7
7
  import { useDispatchDashboardCommand } from "../../../model/react/useDispatchDashboardCommand.js";
8
8
  import { useWidgetSelection } from "../../../model/react/useWidgetSelection.js";
9
+ import { selectIsAiLoading } from "../../../model/store/config/configSelectors.js";
10
+ import { selectIsNewDashboard } from "../../../model/store/meta/metaSelectors.js";
9
11
  import { selectRenderMode } from "../../../model/store/renderMode/renderModeSelectors.js";
10
12
  import { useDashboardDrop } from "../../dragAndDrop/useDashboardDrop.js";
11
13
  import { ExportThemeProvider } from "../../export/ExportThemeProvider.js";
12
14
  import { useWidgetDragHoverHandlers as useFlexibleWidgetDragHoverHandlers } from "../../flexibleLayout/dragAndDrop/draggableWidget/useWidgetDragHoverHandlers.js";
13
15
  import { DashboardLayout } from "../../widget/dashboardLayout/DashboardLayout.js";
14
16
  import { DateFilterConfigWarnings } from "../components/DateFilterConfigWarnings.js";
17
+ import { DashboardContentLoader } from "./DashboardContentLoader.js";
15
18
  /**
16
19
  * @internal
17
20
  */
@@ -19,6 +22,8 @@ export function DefaultDashboardMainContent(_) {
19
22
  const onFiltersChange = useDispatchDashboardCommand(changeFilterContextSelection);
20
23
  const { deselectWidgets } = useWidgetSelection();
21
24
  const renderMode = useDashboardSelector(selectRenderMode);
25
+ const isAiLoading = useDashboardSelector(selectIsAiLoading);
26
+ const isNewDashboard = useDashboardSelector(selectIsNewDashboard);
22
27
  const { handleDragHoverEnd } = useFlexibleWidgetDragHoverHandlers();
23
28
  const [{ isOver }, dropRef] = useDashboardDrop([
24
29
  "insight",
@@ -40,7 +45,7 @@ export function DefaultDashboardMainContent(_) {
40
45
  }, [handleDragHoverEnd, isOver]);
41
46
  const classNames = cx("gd-flex-container", "root-flex-maincontent", "gd-grid-layout", "gd-auto-resized-dashboard-descriptions");
42
47
  const renderContent = () => {
43
- return (_jsxs("div", { className: classNames, ref: dropRef, onClick: deselectWidgets, children: [_jsx(DateFilterConfigWarnings, {}), _jsx(DashboardLayout, { onFiltersChange: onFiltersChange })] }));
48
+ return (_jsx("div", { className: classNames, ref: dropRef, onClick: deselectWidgets, children: isNewDashboard && isAiLoading ? (_jsx(DashboardContentLoader, {})) : (_jsxs(_Fragment, { children: [_jsx(DateFilterConfigWarnings, {}), _jsx(DashboardLayout, { onFiltersChange: onFiltersChange })] })) }));
44
49
  };
45
50
  if (renderMode === "export") {
46
51
  return _jsx(ExportThemeProvider, { children: renderContent() });
@@ -0,0 +1,4 @@
1
+ export declare function DashboardAiComposingOverlay({ isWaiting }: {
2
+ isWaiting: boolean;
3
+ }): import("react/jsx-runtime").JSX.Element;
4
+ //# sourceMappingURL=DashboardAiComposingOverlay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DashboardAiComposingOverlay.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dashboard/components/DashboardAiComposingOverlay.tsx"],"names":[],"mappings":"AAmBA,wBAAgB,2BAA2B,CAAC,EAAE,SAAS,EAAE,EAAE;IAAE,SAAS,EAAE,OAAO,CAAA;CAAE,2CAuKhF"}
@@ -0,0 +1,151 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ // (C) 2026 GoodData Corporation
3
+ import { useLayoutEffect, useRef } from "react";
4
+ const speed = 1 / 3.6;
5
+ const springAt = 0.05;
6
+ const stiffness = 7;
7
+ const damping = 0.55;
8
+ export function DashboardAiComposingOverlay({ isWaiting }) {
9
+ const overlayRef = useRef(null);
10
+ const stateRef = useRef(null);
11
+ useLayoutEffect(() => {
12
+ const overlay = overlayRef.current;
13
+ if (!overlay) {
14
+ return;
15
+ }
16
+ const rects = Array.from(overlay.querySelectorAll("rect"));
17
+ const reducedMotion = window.matchMedia("(prefers-reduced-motion: reduce)");
18
+ let state = stateRef.current;
19
+ let width = 0;
20
+ let perimeter = 0;
21
+ let previousTime;
22
+ let frame;
23
+ const segment = (rect, start, length) => {
24
+ rect.style.strokeDasharray = `${length} ${Math.max(0, perimeter - length)}`;
25
+ rect.style.strokeDashoffset = String(-(((start % perimeter) + perimeter) % perimeter));
26
+ };
27
+ const animate = (time) => {
28
+ frame = undefined;
29
+ if (!state || !perimeter) {
30
+ return;
31
+ }
32
+ const dt = Math.min(0.05, (time - (previousTime ?? time)) / 1000);
33
+ previousTime = time;
34
+ const top = width / 2 / perimeter;
35
+ const runningLength = Math.min(600, perimeter * 0.25);
36
+ const waitingLength = Math.min(120, runningLength);
37
+ let settled = false;
38
+ if (isWaiting && state.mode === "run") {
39
+ state.mode = "cruise";
40
+ state.lap = Math.ceil(state.center + springAt - top);
41
+ }
42
+ else if (!isWaiting && state.mode !== "run") {
43
+ state.mode = "run";
44
+ state.speed = 0;
45
+ }
46
+ if (reducedMotion.matches) {
47
+ state.center = top;
48
+ state.length = isWaiting ? waitingLength : runningLength;
49
+ state.head = isWaiting ? 0 : 1;
50
+ state.lap = 0;
51
+ state.velocity = 0;
52
+ state.speed = 0;
53
+ state.mode = isWaiting ? "spring" : "run";
54
+ settled = true;
55
+ }
56
+ else if (state.mode === "cruise") {
57
+ state.center += speed * dt;
58
+ if (state.lap + top - state.center <= springAt) {
59
+ state.mode = "spring";
60
+ state.velocity = speed;
61
+ }
62
+ }
63
+ else if (state.mode === "spring") {
64
+ // Keep the spring target aligned with the top center while the dashboard resizes.
65
+ const target = state.lap + top;
66
+ const steps = Math.max(1, Math.ceil(dt * 240));
67
+ const step = dt / steps;
68
+ for (let i = 0; i < steps; i++) {
69
+ const acceleration = -stiffness * stiffness * (state.center - target) -
70
+ 2 * damping * stiffness * state.velocity;
71
+ state.velocity += acceleration * step;
72
+ state.center += state.velocity * step;
73
+ }
74
+ const easing = 1 - Math.exp(-dt * 3.2);
75
+ state.length += (waitingLength - state.length) * easing;
76
+ state.head += -state.head * easing;
77
+ settled =
78
+ Math.abs(state.center - target) < 0.00001 &&
79
+ Math.abs(state.velocity) < 0.00001 &&
80
+ Math.abs(state.length - waitingLength) < 0.01 &&
81
+ state.head < 0.0001;
82
+ if (settled) {
83
+ state.center = target;
84
+ state.length = waitingLength;
85
+ state.head = 0;
86
+ }
87
+ }
88
+ else {
89
+ state.speed = Math.min(1, state.speed + dt / 0.9);
90
+ state.center += speed * dt * state.speed * state.speed;
91
+ const easing = 1 - Math.exp(-dt * 2.5);
92
+ state.length += (runningLength - state.length) * easing;
93
+ state.head += (1 - state.head) * easing;
94
+ }
95
+ const start = state.center * perimeter - state.length / 2;
96
+ const coreLength = state.length * 0.55;
97
+ const coreStart = start + (state.length - coreLength) * (0.5 + 0.5 * state.head);
98
+ const [bloom, glow, tail, core] = rects;
99
+ segment(tail, start, state.length);
100
+ for (const rect of [bloom, glow, core]) {
101
+ segment(rect, coreStart, coreLength);
102
+ }
103
+ if (!settled) {
104
+ frame = requestAnimationFrame(animate);
105
+ }
106
+ };
107
+ const refresh = () => {
108
+ if (frame !== undefined) {
109
+ cancelAnimationFrame(frame);
110
+ }
111
+ previousTime = undefined;
112
+ animate(performance.now());
113
+ };
114
+ const fit = () => {
115
+ width = Math.max(0, overlay.clientWidth - 2);
116
+ const height = Math.max(0, overlay.clientHeight - 2);
117
+ perimeter = width && height ? 2 * (width + height) : 0;
118
+ for (const rect of rects) {
119
+ rect.setAttribute("width", String(width));
120
+ rect.setAttribute("height", String(height));
121
+ }
122
+ if (!state && perimeter) {
123
+ state = {
124
+ center: isWaiting ? width / 2 / perimeter : 0.62,
125
+ length: isWaiting ? Math.min(120, perimeter * 0.25) : Math.min(600, perimeter * 0.25),
126
+ head: isWaiting ? 0 : 1,
127
+ speed: 1,
128
+ mode: isWaiting ? "spring" : "run",
129
+ lap: 0,
130
+ velocity: 0,
131
+ };
132
+ stateRef.current = state;
133
+ }
134
+ refresh();
135
+ };
136
+ const observer = typeof ResizeObserver === "undefined" ? undefined : new ResizeObserver(fit);
137
+ observer?.observe(overlay);
138
+ window.addEventListener("resize", fit);
139
+ reducedMotion.addEventListener("change", refresh);
140
+ fit();
141
+ return () => {
142
+ if (frame !== undefined) {
143
+ cancelAnimationFrame(frame);
144
+ }
145
+ observer?.disconnect();
146
+ window.removeEventListener("resize", fit);
147
+ reducedMotion.removeEventListener("change", refresh);
148
+ };
149
+ }, [isWaiting]);
150
+ return (_jsx("div", { "data-testid": "gd-dashboard-ai-composing-overlay", className: "gd-dashboard-ai-composing-overlay", ref: overlayRef, "aria-hidden": "true", children: ["bloom", "glow", "tail", "core"].map((layer) => (_jsx("svg", { className: `gd-dashboard-ai-composing-overlay__${layer}`, focusable: "false", children: _jsx("rect", { x: "1", y: "1", width: "0", height: "0" }) }, layer))) }));
151
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"DashboardInner.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dashboard/components/DashboardInner.tsx"],"names":[],"mappings":"AA0CA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAQnD,wBAAgB,cAAc,CAAC,KAAK,EAAE,eAAe,2CAyHpD"}
1
+ {"version":3,"file":"DashboardInner.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dashboard/components/DashboardInner.tsx"],"names":[],"mappings":"AAwCA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AASnD,wBAAgB,cAAc,CAAC,KAAK,EAAE,eAAe,2CAuHpD"}
@@ -1,4 +1,4 @@
1
- import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  // (C) 2022-2026 GoodData Corporation
3
3
  import { useEffect, useRef } from "react";
4
4
  import cx from "classnames";
@@ -7,9 +7,9 @@ import { useDashboardSelector } from "../../../model/react/DashboardStoreProvide
7
7
  import { useDashboardAutomations } from "../../../model/react/useDashboardAutomations/useDashboardAutomations.js";
8
8
  import { selectAccessibleDashboardsLoaded } from "../../../model/store/accessibleDashboards/accessibleDashboardsSelectors.js";
9
9
  import { selectCatalogIsLoaded } from "../../../model/store/catalog/catalogSelectors.js";
10
- import { selectIsAiLoading, selectLocale, selectSettings, } from "../../../model/store/config/configSelectors.js";
10
+ import { selectLocale, selectSettings } from "../../../model/store/config/configSelectors.js";
11
11
  import { selectIsInEditMode } from "../../../model/store/renderMode/renderModeSelectors.js";
12
- import { selectDashboardDensity } from "../../../model/store/ui/uiSelectors.js";
12
+ import { selectDashboardDensity, selectInsightEditorTarget } from "../../../model/store/ui/uiSelectors.js";
13
13
  import { DASHBOARD_HEADER_OVERLAYS_Z_INDEX, DASHBOARD_TOASTS_OVERLAY_Z_INDEX, } from "../../constants/zIndex.js";
14
14
  import { DeleteDropZone } from "../../dragAndDrop/DeleteDropZone.js";
15
15
  import { FilterDeleteOverlay } from "../../dragAndDrop/FilterDeleteOverlay.js";
@@ -17,6 +17,8 @@ import { useDashboardDragScroll } from "../../dragAndDrop/useDashboardDragScroll
17
17
  import { WrapCreatePanelItemWithDrag } from "../../dragAndDrop/WrapCreatePanelItemWithDrag.js";
18
18
  import { WrapInsightListItemWithDrag } from "../../dragAndDrop/WrapInsightListItemWithDrag.js";
19
19
  import { DragLayerComponent as FlexibleDragLayerComponent } from "../../flexibleLayout/dragAndDrop/DragLayer.js";
20
+ import { InsightEditorOverlay } from "../../insightEditor/InsightEditorOverlay.js";
21
+ import { InsightEditorPermissionsProvider } from "../../insightEditor/InsightEditorPermissionsContext.js";
20
22
  import { IntlWrapper } from "../../localization/IntlWrapper.js";
21
23
  import { Toolbar } from "../../toolbar/Toolbar.js";
22
24
  import { DashboardContent } from "../DashboardContent.js";
@@ -24,8 +26,9 @@ import { DashboardHeader } from "../DashboardHeader/DashboardHeader.js";
24
26
  import { DashboardSidebar } from "../DashboardSidebar/DashboardSidebar.js";
25
27
  import { RenderModeAwareDashboardSidebar } from "../DashboardSidebar/RenderModeAwareDashboardSidebar.js";
26
28
  import { useResizableSidebarState } from "../DashboardSidebar/useResizableSidebarState.js";
29
+ import { DashboardInteractionComposing } from "./DashboardInteractionComposing.js";
30
+ import { DashboardInteractionLock } from "./DashboardInteractionLock.js";
27
31
  import { DashboardScreenSizeProvider } from "./DashboardScreenSizeContext.js";
28
- import { DashboardSkeleton } from "./DashboardSkeleton.js";
29
32
  const overlayController = OverlayController.getInstance(DASHBOARD_HEADER_OVERLAYS_Z_INDEX);
30
33
  const toastsOverlayController = OverlayController.getInstance(DASHBOARD_TOASTS_OVERLAY_Z_INDEX);
31
34
  export function DashboardInner(props) {
@@ -34,8 +37,8 @@ export function DashboardInner(props) {
34
37
  const isCatalogLoaded = useDashboardSelector(selectCatalogIsLoaded);
35
38
  const accessibleDashboardsLoaded = useDashboardSelector(selectAccessibleDashboardsLoaded);
36
39
  const density = useDashboardSelector(selectDashboardDensity);
40
+ const isInsightEditorOpen = !!useDashboardSelector(selectInsightEditorTarget);
37
41
  const settings = useDashboardSelector(selectSettings);
38
- const isAiLoading = useDashboardSelector(selectIsAiLoading);
39
42
  const enableEnhancedInsightPicker = settings?.enableEnhancedInsightPicker ?? false;
40
43
  const headerRef = useRef(null);
41
44
  const layoutRef = useRef(null);
@@ -68,13 +71,13 @@ export function DashboardInner(props) {
68
71
  "--gd-dashboard-sidebar-width": `${resizableSidebar.width}px`,
69
72
  }
70
73
  : undefined;
71
- return (_jsx(IntlWrapper, { locale: locale, children: _jsxs(ToastsCenterContextProvider, { skipAutomaticMessageRendering: true, children: [_jsx(OverlayControllerProvider, { overlayController: toastsOverlayController, children: _jsx(ToastsCenter, {}) }), _jsx(UiResizableSidebarProvider, { value: resizableSidebar, children: _jsxs("div", { className: cx("component-root", {
72
- "sdk-edit-mode-on": isEditMode,
73
- "sdk-view-mode-on": !isEditMode,
74
- "catalog-is-loaded": isCatalogLoaded,
75
- "accessible-dashboards-loaded": accessibleDashboardsLoaded,
76
- }), children: [_jsx(DragLayerComponent, {}), _jsxs("div", { className: cx("gd-dashboards-root gd-flex-container", {
77
- "gd-dashboards-root--floating-toolbar": enableEnhancedInsightPicker,
78
- "sdk-dashboard-generating": isAiLoading,
79
- }), style: dashboardsRootStyle, children: [_jsx(DashboardSidebar, { DefaultSidebar: RenderModeAwareDashboardSidebar, DeleteDropZoneComponent: DeleteDropZone, WrapCreatePanelItemWithDragComponent: WrapCreatePanelItemWithDrag, WrapInsightListItemWithDragComponent: WrapInsightListItemWithDrag }), _jsxs("main", { className: dashboardContentClassNames, ...mainContentNavigationProps, children: [_jsx("div", { className: "gd-dash-header-wrapper gd-dash-header-wrapper-sdk-8-12", ref: headerRef, children: _jsx(OverlayControllerProvider, { overlayController: overlayController, children: _jsx(DashboardHeader, {}) }) }), isAiLoading ? (_jsx("div", { className: "gd-flex-item-stretch dash-section dash-section-kpis", children: _jsx(DashboardScreenSizeProvider, { children: _jsx(DashboardSkeleton, {}) }) })) : (_jsxs(_Fragment, { children: [_jsxs("div", { className: "gd-flex-item-stretch dash-section dash-section-kpis", ref: layoutRef, children: [_jsx(DashboardScreenSizeProvider, { children: _jsx(DashboardContent, { ...props }) }), enableEnhancedInsightPicker ? _jsx(FilterDeleteOverlay, {}) : null] }), _jsx("div", { className: "gd-dash-bottom-position-pixel", ref: bottomRef })] }))] })] }), _jsx(Toolbar, {})] }) })] }) }));
74
+ return (_jsx(IntlWrapper, { locale: locale, children: _jsxs(ToastsCenterContextProvider, { skipAutomaticMessageRendering: true, children: [_jsx(OverlayControllerProvider, { overlayController: toastsOverlayController, children: _jsx(ToastsCenter, {}) }), _jsx(InsightEditorOverlay, {}), _jsx(InsightEditorPermissionsProvider, { children: _jsx(UiResizableSidebarProvider, { value: resizableSidebar, children: _jsxs("div", { className: cx("component-root", {
75
+ "sdk-edit-mode-on": isEditMode,
76
+ "sdk-view-mode-on": !isEditMode,
77
+ "catalog-is-loaded": isCatalogLoaded,
78
+ "accessible-dashboards-loaded": accessibleDashboardsLoaded,
79
+ "is-insight-editor-open": isInsightEditorOpen,
80
+ }), children: [_jsx(DragLayerComponent, {}), _jsxs("div", { className: cx("gd-dashboards-root gd-flex-container", {
81
+ "gd-dashboards-root--floating-toolbar": enableEnhancedInsightPicker,
82
+ }), style: dashboardsRootStyle, children: [_jsx(DashboardSidebar, { DefaultSidebar: RenderModeAwareDashboardSidebar, DeleteDropZoneComponent: DeleteDropZone, WrapCreatePanelItemWithDragComponent: WrapCreatePanelItemWithDrag, WrapInsightListItemWithDragComponent: WrapInsightListItemWithDrag }), _jsx("main", { className: dashboardContentClassNames, ...mainContentNavigationProps, children: _jsxs(DashboardInteractionComposing, { onReplyInChat: props.onReplyInChat, children: [_jsx("div", { className: "gd-dash-header-wrapper gd-dash-header-wrapper-sdk-8-12", ref: headerRef, children: _jsx(OverlayControllerProvider, { overlayController: overlayController, children: _jsx(DashboardHeader, {}) }) }), _jsxs(DashboardInteractionLock, { children: [_jsxs("div", { className: "gd-flex-item-stretch dash-section dash-section-kpis", ref: layoutRef, children: [_jsx(DashboardScreenSizeProvider, { children: _jsx(DashboardContent, { ...props }) }), enableEnhancedInsightPicker ? _jsx(FilterDeleteOverlay, {}) : null] }), _jsx("div", { className: "gd-dash-bottom-position-pixel", ref: bottomRef })] })] }) })] }), _jsx(Toolbar, {})] }) }) })] }) }));
80
83
  }
@@ -0,0 +1,8 @@
1
+ import { type ReactNode } from "react";
2
+ interface IDashboardInteractionComposingProps {
3
+ children: ReactNode;
4
+ onReplyInChat?: () => void;
5
+ }
6
+ export declare function DashboardInteractionComposing({ children, onReplyInChat, }: IDashboardInteractionComposingProps): import("react/jsx-runtime").JSX.Element;
7
+ export {};
8
+ //# sourceMappingURL=DashboardInteractionComposing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DashboardInteractionComposing.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dashboard/components/DashboardInteractionComposing.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAqBvC,UAAU,mCAAmC;IACzC,QAAQ,EAAE,SAAS,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;CAC9B;AAED,wBAAgB,6BAA6B,CAAC,EAC1C,QAAQ,EACR,aAAa,GAChB,EAAE,mCAAmC,2CA8CrC"}
@@ -0,0 +1,23 @@
1
+ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import cx from "classnames";
3
+ import { FormattedMessage, defineMessages, useIntl } from "react-intl";
4
+ import { UiButton } from "@gooddata/sdk-ui-kit";
5
+ import { useDashboardSelector } from "../../../model/react/DashboardStoreProvider.js";
6
+ import { selectAiReasoningTitle, selectIsAiBuilding, selectIsAiGenerating, selectIsAiWaiting, } from "../../../model/store/config/configSelectors.js";
7
+ import { DashboardAiComposingOverlay } from "./DashboardAiComposingOverlay.js";
8
+ const messages = defineMessages({
9
+ replyNow: { id: "dashboard.ai.composing.replyNow", defaultMessage: "Reply now" },
10
+ });
11
+ export function DashboardInteractionComposing({ children, onReplyInChat, }) {
12
+ const intl = useIntl();
13
+ const isAiGenerating = useDashboardSelector(selectIsAiGenerating);
14
+ const isAiBuilding = useDashboardSelector(selectIsAiBuilding);
15
+ const isAiWaiting = useDashboardSelector(selectIsAiWaiting);
16
+ const aiReasoningTitle = useDashboardSelector(selectAiReasoningTitle);
17
+ const isAiActive = isAiBuilding || isAiWaiting || isAiGenerating;
18
+ const showReasoningTitle = (isAiGenerating || isAiBuilding) && !!aiReasoningTitle;
19
+ const showStatus = isAiWaiting || showReasoningTitle;
20
+ return (_jsxs(_Fragment, { children: [children, isAiActive ? (_jsx("div", { children: _jsx(DashboardAiComposingOverlay, { isWaiting: isAiWaiting }) })) : null, _jsxs("div", { className: cx("gd-dashboard-interaction-composing__status", {
21
+ hidden: !showStatus,
22
+ }), "aria-hidden": !showStatus, children: [_jsx("div", { className: "gd-dashboard-interaction-composing__message", role: showStatus ? "status" : undefined, "aria-hidden": !showStatus, children: isAiWaiting || !showReasoningTitle ? (_jsx(FormattedMessage, { id: "dashboard.ai.composing.waiting" })) : (aiReasoningTitle) }), isAiWaiting && onReplyInChat ? (_jsx(UiButton, { variant: "tertiary", label: intl.formatMessage(messages.replyNow), onClick: onReplyInChat })) : null] })] }));
23
+ }
@@ -0,0 +1,8 @@
1
+ import { type ReactNode } from "react";
2
+ interface IDashboardInteractionLockProps {
3
+ className?: string;
4
+ children: ReactNode;
5
+ }
6
+ export declare function DashboardInteractionLock({ className, children }: IDashboardInteractionLockProps): import("react/jsx-runtime").JSX.Element;
7
+ export {};
8
+ //# sourceMappingURL=DashboardInteractionLock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DashboardInteractionLock.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dashboard/components/DashboardInteractionLock.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAA2B,MAAM,OAAO,CAAC;AAOhE,UAAU,8BAA8B;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,SAAS,CAAC;CACvB;AAED,wBAAgB,wBAAwB,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,8BAA8B,2CAiC/F"}
@@ -0,0 +1,29 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ // (C) 2026 GoodData Corporation
3
+ import { useLayoutEffect, useRef } from "react";
4
+ import cx from "classnames";
5
+ import { useDashboardSelector } from "../../../model/react/DashboardStoreProvider.js";
6
+ import { selectIsAiLoading } from "../../../model/store/config/configSelectors.js";
7
+ export function DashboardInteractionLock({ className, children }) {
8
+ const contentRef = useRef(null);
9
+ const isAiLoading = useDashboardSelector(selectIsAiLoading);
10
+ useLayoutEffect(() => {
11
+ const content = contentRef.current;
12
+ if (!content) {
13
+ return;
14
+ }
15
+ const activeElement = content.ownerDocument.activeElement;
16
+ if (isAiLoading) {
17
+ content.setAttribute("inert", "");
18
+ if (activeElement instanceof HTMLElement && content.contains(activeElement)) {
19
+ activeElement.blur();
20
+ }
21
+ }
22
+ else {
23
+ content.removeAttribute("inert");
24
+ }
25
+ }, [isAiLoading]);
26
+ return (_jsxs("div", { className: cx(className, {
27
+ "gd-dashboard-interaction-lock--active": isAiLoading,
28
+ }), children: [_jsx("div", { className: "gd-dashboard-interaction-lock__content", ref: contentRef, children: children }), isAiLoading ? _jsx("div", { className: "gd-dashboard-ai-building-overlay", "aria-hidden": "true" }) : null] }));
29
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"DashboardScreenSizeContext.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dashboard/components/DashboardScreenSizeContext.tsx"],"names":[],"mappings":"AAEA,OAAO,EAEH,KAAK,SAAS,EAMjB,MAAM,OAAO,CAAC;AAIf,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AA8CtD,MAAM,WAAW,0BAA0B;IACvC,QAAQ,EAAE,SAAS,CAAC;CACvB;AAKD,wBAAgB,2BAA2B,CAAC,EAAE,QAAQ,EAAE,EAAE,0BAA0B,2CA2BnF;AAED;;GAEG;AACH,eAAO,MAAM,aAAa,QAAO,UAGhC,CAAC"}
1
+ {"version":3,"file":"DashboardScreenSizeContext.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dashboard/components/DashboardScreenSizeContext.tsx"],"names":[],"mappings":"AAEA,OAAO,EAEH,KAAK,SAAS,EAMjB,MAAM,OAAO,CAAC;AAIf,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAiDtD,MAAM,WAAW,0BAA0B;IACvC,QAAQ,EAAE,SAAS,CAAC;CACvB;AAKD,wBAAgB,2BAA2B,CAAC,EAAE,QAAQ,EAAE,EAAE,0BAA0B,2CA4BnF;AAED;;GAEG;AACH,eAAO,MAAM,aAAa,QAAO,UAGhC,CAAC"}
@@ -3,9 +3,10 @@ import { jsx as _jsx } from "react/jsx-runtime";
3
3
  import { createContext, useContext, useEffect, useState, } from "react";
4
4
  import { setScreenSize as setScreenSizeAction } from "../../../model/commands/layout.js";
5
5
  import { useDashboardDispatch, useDashboardSelector } from "../../../model/react/DashboardStoreProvider.js";
6
+ import { selectIsInEditMode } from "../../../model/store/renderMode/renderModeSelectors.js";
6
7
  import { selectScreen } from "../../../model/store/tabs/layout/layoutSelectors.js";
7
8
  import { DASHBOARD_LAYOUT_BREAK_POINTS } from "../../constants/layout.js";
8
- const getCurrentScreenSize = () => {
9
+ const getCurrentScreenSize = (isEditMode) => {
9
10
  let viewportWidth = 0;
10
11
  if (window?.innerWidth) {
11
12
  viewportWidth = window.innerWidth;
@@ -16,7 +17,8 @@ const getCurrentScreenSize = () => {
16
17
  if (viewportWidth >= DASHBOARD_LAYOUT_BREAK_POINTS[3]) {
17
18
  return "xl";
18
19
  }
19
- if (viewportWidth >= DASHBOARD_LAYOUT_BREAK_POINTS[2]) {
20
+ // Only xl sizes are saved, so edit mode keeps the desktop grid instead of reflowing it.
21
+ if (isEditMode || viewportWidth >= DASHBOARD_LAYOUT_BREAK_POINTS[2]) {
20
22
  return "lg";
21
23
  }
22
24
  if (viewportWidth >= DASHBOARD_LAYOUT_BREAK_POINTS[1]) {
@@ -27,8 +29,8 @@ const getCurrentScreenSize = () => {
27
29
  }
28
30
  return "xs";
29
31
  };
30
- function setNewSize(prevSize, setScreenSize, dispatch) {
31
- const newSize = getCurrentScreenSize();
32
+ function setNewSize(prevSize, isEditMode, setScreenSize, dispatch) {
33
+ const newSize = getCurrentScreenSize(isEditMode);
32
34
  if (newSize && newSize !== prevSize) {
33
35
  // prevent unnecessary re-renders
34
36
  setScreenSize(newSize);
@@ -41,18 +43,19 @@ export function DashboardScreenSizeProvider({ children }) {
41
43
  const [screenSize, setScreenSize] = useState();
42
44
  const dispatch = useDashboardDispatch();
43
45
  const appStateScreenSize = useDashboardSelector(selectScreen);
46
+ const isEditMode = useDashboardSelector(selectIsInEditMode);
44
47
  useEffect(() => {
45
48
  // set initial screen size to app state for usage in sagas
46
- setNewSize(screenSize, setScreenSize, dispatch);
49
+ setNewSize(screenSize, isEditMode, setScreenSize, dispatch);
47
50
  // register event listener for window resize
48
51
  const handleWindowResized = () => {
49
- setNewSize(screenSize, setScreenSize, dispatch);
52
+ setNewSize(screenSize, isEditMode, setScreenSize, dispatch);
50
53
  };
51
54
  window.addEventListener("resize", handleWindowResized, false);
52
55
  return () => {
53
56
  window.removeEventListener("resize", handleWindowResized, false);
54
57
  };
55
- }, [screenSize, dispatch]);
58
+ }, [screenSize, isEditMode, dispatch]);
56
59
  return (_jsx("div", { className: "s-screen-size-container", children: _jsx(DashboardScreenSizeContext.Provider, { value: screenSize, children: appStateScreenSize ? children : null }) }));
57
60
  }
58
61
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"ToastMessages.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dashboard/components/ToastMessages.tsx"],"names":[],"mappings":"AAYA;;GAEG;AACH,wBAAgB,aAAa,4CAwB5B"}
1
+ {"version":3,"file":"ToastMessages.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dashboard/components/ToastMessages.tsx"],"names":[],"mappings":"AAaA;;GAEG;AACH,wBAAgB,aAAa,4CA2B5B"}
@@ -5,6 +5,7 @@ import { NonContextToastsInterop } from "@gooddata/sdk-ui-kit";
5
5
  import { useParameterToastMessages } from "../../filterBar/parameterFilter/useParameterToastMessages.js";
6
6
  import { useCrossFilteringMessages } from "./useCrossFilteringMessages.js";
7
7
  import { useDrillValidationMessages } from "./useDrillValidationMessages.js";
8
+ import { useEditModeLayoutNoteMessages } from "./useEditModeLayoutNoteMessages.js";
8
9
  import { useFilterContextValidationMessages } from "./useFilterContextValidationMessages.js";
9
10
  /**
10
11
  * @internal
@@ -12,14 +13,16 @@ import { useFilterContextValidationMessages } from "./useFilterContextValidation
12
13
  export function ToastMessages() {
13
14
  const { messages: drillValidationMessages, removeMessage: removeDrillValidationMessage } = useDrillValidationMessages();
14
15
  const { messages: filterContextValidationMessages, removeMessage: removeFilterContextValidationMessage } = useFilterContextValidationMessages();
16
+ const { messages: editModeLayoutNoteMessages, removeMessage: removeEditModeLayoutNoteMessage } = useEditModeLayoutNoteMessages();
15
17
  useCrossFilteringMessages();
16
18
  useParameterToastMessages();
17
- const messages = useMemo(() => [...drillValidationMessages, ...filterContextValidationMessages], [drillValidationMessages, filterContextValidationMessages]);
19
+ const messages = useMemo(() => [...drillValidationMessages, ...filterContextValidationMessages, ...editModeLayoutNoteMessages], [drillValidationMessages, filterContextValidationMessages, editModeLayoutNoteMessages]);
18
20
  const removeMessage = useCallback(
19
- // try removing the id from both collections
21
+ // try removing the id from all collections
20
22
  (id) => {
21
23
  removeDrillValidationMessage(id);
22
24
  removeFilterContextValidationMessage(id);
23
- }, [removeDrillValidationMessage, removeFilterContextValidationMessage]);
25
+ removeEditModeLayoutNoteMessage(id);
26
+ }, [removeDrillValidationMessage, removeFilterContextValidationMessage, removeEditModeLayoutNoteMessage]);
24
27
  return _jsx(NonContextToastsInterop, { messages: messages, onDismissMessage: removeMessage });
25
28
  }
@@ -0,0 +1,6 @@
1
+ import { type IMessage } from "@gooddata/sdk-ui-kit";
2
+ export declare function useEditModeLayoutNoteMessages(): {
3
+ messages: IMessage[];
4
+ removeMessage: (id: string) => void;
5
+ };
6
+ //# sourceMappingURL=useEditModeLayoutNoteMessages.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useEditModeLayoutNoteMessages.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dashboard/components/useEditModeLayoutNoteMessages.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,QAAQ,EAAiB,MAAM,sBAAsB,CAAC;AAkBpE,wBAAgB,6BAA6B;;wBA0BhC,MAAM;EAalB"}
@@ -0,0 +1,48 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ // (C) 2026 GoodData Corporation
3
+ import { useCallback, useMemo, useState } from "react";
4
+ import { defineMessages, useIntl } from "react-intl";
5
+ import { useMediaQuery } from "@gooddata/sdk-ui-kit";
6
+ import { useDashboardSelector } from "../../../model/react/DashboardStoreProvider.js";
7
+ import { selectIsInEditMode } from "../../../model/store/renderMode/renderModeSelectors.js";
8
+ const localizationMessages = defineMessages({
9
+ editModeLayoutNote: { id: "messages.dashboard.editModeDesktopLayout.note" },
10
+ });
11
+ const replacements = {
12
+ b: (chunks) => _jsx("b", { children: chunks }),
13
+ };
14
+ const EDIT_MODE_LAYOUT_NOTE_MESSAGE_ID = "edit_mode_desktop_layout_note";
15
+ // Dismissal lasts until the page reloads and is deliberately never persisted.
16
+ let isDismissedInSession = false;
17
+ export function useEditModeLayoutNoteMessages() {
18
+ const intl = useIntl();
19
+ const isEditMode = useDashboardSelector(selectIsInEditMode);
20
+ const isNarrowerThanEditModeMinWidth = useMediaQuery("<=lg");
21
+ const [isDismissed, setIsDismissed] = useState(isDismissedInSession);
22
+ const isVisible = isEditMode && isNarrowerThanEditModeMinWidth && !isDismissed;
23
+ const messages = useMemo(() => {
24
+ if (!isVisible) {
25
+ return [];
26
+ }
27
+ return [
28
+ {
29
+ id: EDIT_MODE_LAYOUT_NOTE_MESSAGE_ID,
30
+ type: "progress",
31
+ node: intl.formatMessage(localizationMessages.editModeLayoutNote, replacements),
32
+ createdAt: new Date().getTime(),
33
+ duration: Infinity,
34
+ },
35
+ ];
36
+ }, [isVisible, intl]);
37
+ // The toasts interop also reports removals caused by the note no longer applying; only a visible note can be dismissed.
38
+ const removeMessage = useCallback((id) => {
39
+ if (id === EDIT_MODE_LAYOUT_NOTE_MESSAGE_ID && isVisible) {
40
+ isDismissedInSession = true;
41
+ setIsDismissed(true);
42
+ }
43
+ }, [isVisible]);
44
+ return {
45
+ messages,
46
+ removeMessage,
47
+ };
48
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"useDashboard.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dashboard/hooks/useDashboard.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,MAAM,EAAS,MAAM,qBAAqB,CAAC;AAI7E,OAAO,EACH,KAAK,2BAA2B,EAChC,KAAK,iCAAiC,EACtC,KAAK,sBAAsB,EAC3B,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,uCAAuC,EAC/C,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACH,KAAK,gCAAgC,EACrC,KAAK,iCAAiC,EACtC,KAAK,gCAAgC,EACrC,KAAK,2BAA2B,EAChC,KAAK,0CAA0C,EAC/C,KAAK,4BAA4B,EACjC,KAAK,4BAA4B,EACjC,KAAK,wBAAwB,EAC7B,KAAK,kCAAkC,EACvC,KAAK,4BAA4B,EACjC,KAAK,iCAAiC,EACtC,KAAK,mCAAmC,EACxC,KAAK,6CAA6C,EAClD,KAAK,sCAAsC,EAC3C,KAAK,yBAAyB,EAC9B,KAAK,6BAA6B,EAClC,KAAK,kCAAkC,EACvC,KAAK,kCAAkC,EACvC,KAAK,sCAAsC,EAC3C,KAAK,6CAA6C,EAClD,KAAK,uBAAuB,EAC/B,MAAM,kCAAkC,CAAC;AA4B1C,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,UAAU,mBAAmB;IACzB,OAAO,EAAE,kBAAkB,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAAC;IACnD,gBAAgB,EAAE,OAAO,CAAC;IAC1B,uBAAuB,EAAE,gCAAgC,CAAC;IAC1D,mBAAmB,EAAE,4BAA4B,CAAC;IAClD,kBAAkB,EAAE,2BAA2B,CAAC;IAChD,0BAA0B,EAAE,mCAAmC,CAAC;IAChE,cAAc,EAAE,uBAAuB,CAAC;IACxC,eAAe,EAAE,wBAAwB,CAAC;IAC1C,mBAAmB,EAAE,4BAA4B,CAAC;IAClD,yBAAyB,EAAE,kCAAkC,CAAC;IAC9D,mBAAmB,EAAE,4BAA4B,CAAC;IAClD,oBAAoB,EAAE,6BAA6B,CAAC;IACpD,wBAAwB,EAAE,iCAAiC,CAAC;IAC5D,yBAAyB,EAAE,kCAAkC,CAAC;IAC9D,wBAAwB,EAAE,iCAAiC,CAAC;IAC5D,yBAAyB,EAAE,yBAAyB,CAAC;IACrD,2BAA2B,EAAE,2BAA2B,CAAC;IACzD,sBAAsB,EAAE,sBAAsB,CAAC;IAC/C,gBAAgB,EAAE,yBAAyB,CAAC;IAC5C,6BAA6B,EAAE,sCAAsC,CAAC;IACtE,oCAAoC,EAAE,6CAA6C,CAAC;IACpF,0BAA0B,EAAE,0BAA0B,CAAC;IACvD,6BAA6B,EAAE,sCAAsC,CAAC;IACtE,uCAAuC,EAAE,uCAAuC,CAAC;IACjF,6CAA6C,EAAE,6CAA6C,CAAC;IAC7F,uBAAuB,EAAE,gCAAgC,CAAC;IAC1D,iCAAiC,EAAE,iCAAiC,CAAC;IACrE,kCAAkC,EAAE,kCAAkC,CAAC;IACvE,iCAAiC,EAAE,0CAA0C,CAAC;CACjF;AAED,eAAO,MAAM,YAAY,UAAW,eAAe,KAAG,mBA6QrD,CAAC"}
1
+ {"version":3,"file":"useDashboard.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dashboard/hooks/useDashboard.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,MAAM,EAAS,MAAM,qBAAqB,CAAC;AAI7E,OAAO,EACH,KAAK,2BAA2B,EAChC,KAAK,iCAAiC,EACtC,KAAK,sBAAsB,EAC3B,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,uCAAuC,EAC/C,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACH,KAAK,gCAAgC,EACrC,KAAK,iCAAiC,EACtC,KAAK,gCAAgC,EACrC,KAAK,2BAA2B,EAChC,KAAK,0CAA0C,EAC/C,KAAK,4BAA4B,EACjC,KAAK,4BAA4B,EACjC,KAAK,wBAAwB,EAC7B,KAAK,kCAAkC,EACvC,KAAK,4BAA4B,EACjC,KAAK,iCAAiC,EACtC,KAAK,mCAAmC,EACxC,KAAK,6CAA6C,EAClD,KAAK,sCAAsC,EAC3C,KAAK,yBAAyB,EAC9B,KAAK,6BAA6B,EAClC,KAAK,kCAAkC,EACvC,KAAK,kCAAkC,EACvC,KAAK,sCAAsC,EAC3C,KAAK,6CAA6C,EAClD,KAAK,uBAAuB,EAC/B,MAAM,kCAAkC,CAAC;AA4B1C,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,UAAU,mBAAmB;IACzB,OAAO,EAAE,kBAAkB,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAAC;IACnD,gBAAgB,EAAE,OAAO,CAAC;IAC1B,uBAAuB,EAAE,gCAAgC,CAAC;IAC1D,mBAAmB,EAAE,4BAA4B,CAAC;IAClD,kBAAkB,EAAE,2BAA2B,CAAC;IAChD,0BAA0B,EAAE,mCAAmC,CAAC;IAChE,cAAc,EAAE,uBAAuB,CAAC;IACxC,eAAe,EAAE,wBAAwB,CAAC;IAC1C,mBAAmB,EAAE,4BAA4B,CAAC;IAClD,yBAAyB,EAAE,kCAAkC,CAAC;IAC9D,mBAAmB,EAAE,4BAA4B,CAAC;IAClD,oBAAoB,EAAE,6BAA6B,CAAC;IACpD,wBAAwB,EAAE,iCAAiC,CAAC;IAC5D,yBAAyB,EAAE,kCAAkC,CAAC;IAC9D,wBAAwB,EAAE,iCAAiC,CAAC;IAC5D,yBAAyB,EAAE,yBAAyB,CAAC;IACrD,2BAA2B,EAAE,2BAA2B,CAAC;IACzD,sBAAsB,EAAE,sBAAsB,CAAC;IAC/C,gBAAgB,EAAE,yBAAyB,CAAC;IAC5C,6BAA6B,EAAE,sCAAsC,CAAC;IACtE,oCAAoC,EAAE,6CAA6C,CAAC;IACpF,0BAA0B,EAAE,0BAA0B,CAAC;IACvD,6BAA6B,EAAE,sCAAsC,CAAC;IACtE,uCAAuC,EAAE,uCAAuC,CAAC;IACjF,6CAA6C,EAAE,6CAA6C,CAAC;IAC7F,uBAAuB,EAAE,gCAAgC,CAAC;IAC1D,iCAAiC,EAAE,iCAAiC,CAAC;IACrE,kCAAkC,EAAE,kCAAkC,CAAC;IACvE,iCAAiC,EAAE,0CAA0C,CAAC;CACjF;AAED,eAAO,MAAM,YAAY,UAAW,eAAe,KAAG,mBAiRrD,CAAC"}
@@ -87,12 +87,13 @@ export const useDashboard = (props) => {
87
87
  const dashboardOrRef = useMemo(() => {
88
88
  return typeof dashboard === "string" ? idRef(dashboard) : dashboard;
89
89
  }, [dashboard]);
90
+ const enableInsightEditing = !!props.config?.enableInsightEditing;
90
91
  const insightWidgetComponentSet = useMemo(() => {
91
- const defaultComponentSet = DefaultDashboardInsightComponentSetFactory(insightProvider);
92
+ const defaultComponentSet = DefaultDashboardInsightComponentSetFactory(insightProvider, enableInsightEditing);
92
93
  return InsightComponentSetProvider
93
94
  ? InsightComponentSetProvider(defaultComponentSet)
94
95
  : defaultComponentSet;
95
- }, [InsightComponentSetProvider, insightProvider]);
96
+ }, [InsightComponentSetProvider, insightProvider, enableInsightEditing]);
96
97
  const attributeFilterComponentSet = useMemo(() => {
97
98
  return DefaultDashboardAttributeFilterComponentSetFactory(attributeFilterProvider);
98
99
  }, [attributeFilterProvider]);
@@ -794,6 +794,11 @@ export interface IDashboardExtensionProps extends IDashboardEventing, IDashboard
794
794
  */
795
795
  export interface IDashboardProps extends IDashboardBaseProps, IDashboardExtensionProps {
796
796
  children?: ReactElement | ((dashboard: any) => ReactElement);
797
+ /**
798
+ * Open the assistant on the active conversation when it is waiting for a user response.
799
+ * @internal
800
+ */
801
+ onReplyInChat?: () => void;
797
802
  /**
798
803
  * Override the persisted dashboard. This is mainly useful for internal use cases.
799
804
  * @internal
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/presentation/dashboard/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/presentation/dashboard/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"AddDashboardLayoutWidgetButton.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dragAndDrop/draggableWidget/AddDashboardLayoutWidgetButton.tsx"],"names":[],"mappings":"AAwBA,wBAAgB,8BAA8B,4CAiD7C"}
1
+ {"version":3,"file":"AddDashboardLayoutWidgetButton.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dragAndDrop/draggableWidget/AddDashboardLayoutWidgetButton.tsx"],"names":[],"mappings":"AAuBA,wBAAgB,8BAA8B,4CAkD7C"}