@gooddata/sdk-ui-dashboard 11.52.0 → 11.53.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (114) hide show
  1. package/NOTICE +59 -9
  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/index.d.ts +3 -4
  6. package/esm/index.d.ts.map +1 -1
  7. package/esm/index.js +3 -4
  8. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/resolveDashboardConfig.d.ts.map +1 -1
  9. package/esm/model/commandHandlers/dashboard/initializeDashboardHandler/resolveDashboardConfig.js +2 -0
  10. package/esm/model/store/config/configSelectors.d.ts +12 -0
  11. package/esm/model/store/config/configSelectors.d.ts.map +1 -1
  12. package/esm/model/store/config/configSelectors.js +16 -0
  13. package/esm/model/store/drill/drillReducers.d.ts.map +1 -1
  14. package/esm/model/store/drill/drillReducers.js +2 -1
  15. package/esm/model/types/commonTypes.d.ts +21 -0
  16. package/esm/model/types/commonTypes.d.ts.map +1 -1
  17. package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialog.d.ts +1 -1
  18. package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialog.d.ts.map +1 -1
  19. package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialog.js +4 -3
  20. package/esm/presentation/automations/alerting/state/AlertingDialogStateProvider.d.ts +1 -5
  21. package/esm/presentation/automations/alerting/state/AlertingDialogStateProvider.d.ts.map +1 -1
  22. package/esm/presentation/automations/alerting/state/AlertingDialogStateProvider.js +1 -5
  23. package/esm/presentation/automations/alerting/state/useAlertFormState.js +2 -2
  24. package/esm/presentation/automations/alerting/types.d.ts +1 -15
  25. package/esm/presentation/automations/alerting/types.d.ts.map +1 -1
  26. package/esm/presentation/automations/contexts/AlertingDialogContext.d.ts +0 -26
  27. package/esm/presentation/automations/contexts/AlertingDialogContext.d.ts.map +1 -1
  28. package/esm/presentation/automations/contexts/AlertingDialogContext.js +0 -26
  29. package/esm/presentation/automations/contexts/ScheduledEmailDialogContext.d.ts +0 -9
  30. package/esm/presentation/automations/contexts/ScheduledEmailDialogContext.d.ts.map +1 -1
  31. package/esm/presentation/automations/contexts/ScheduledEmailDialogContext.js +0 -9
  32. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.d.ts +1 -1
  33. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.d.ts.map +1 -1
  34. package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.js +4 -3
  35. package/esm/presentation/automations/scheduledEmail/types.d.ts +1 -15
  36. package/esm/presentation/automations/scheduledEmail/types.d.ts.map +1 -1
  37. package/esm/presentation/automations/shared/filters/conversions.d.ts +6 -6
  38. package/esm/presentation/automations/shared/filters/conversions.d.ts.map +1 -1
  39. package/esm/presentation/automations/shared/filters/conversions.js +48 -30
  40. package/esm/presentation/automations/shared/filters/index.d.ts +1 -1
  41. package/esm/presentation/automations/shared/filters/index.d.ts.map +1 -1
  42. package/esm/presentation/automations/shared/filters/index.js +1 -1
  43. package/esm/presentation/dashboard/DashboardHeader/DashboardHeader.d.ts +1 -1
  44. package/esm/presentation/dashboard/DashboardHeader/DashboardHeader.d.ts.map +1 -1
  45. package/esm/presentation/dashboard/DashboardHeader/DashboardHeader.js +10 -0
  46. package/esm/presentation/dashboard/DashboardSidebar/CreationPanel.d.ts.map +1 -1
  47. package/esm/presentation/dashboard/DashboardSidebar/CreationPanel.js +5 -2
  48. package/esm/presentation/dashboard/DashboardSidebar/DraggableInsightList/DraggableInsightList.d.ts +2 -1
  49. package/esm/presentation/dashboard/DashboardSidebar/DraggableInsightList/DraggableInsightList.d.ts.map +1 -1
  50. package/esm/presentation/dashboard/DashboardSidebar/DraggableInsightList/DraggableInsightList.js +2 -2
  51. package/esm/presentation/dashboard/DashboardSidebar/DraggableInsightList/DraggableInsightListCore.d.ts +1 -1
  52. package/esm/presentation/dashboard/DashboardSidebar/DraggableInsightList/DraggableInsightListCore.d.ts.map +1 -1
  53. package/esm/presentation/dashboard/DashboardSidebar/DraggableInsightList/DraggableInsightListCore.js +3 -3
  54. package/esm/presentation/dashboard/DashboardSidebar/DraggableInsightList/DraggableInsightListItemWrapper.d.ts +2 -1
  55. package/esm/presentation/dashboard/DashboardSidebar/DraggableInsightList/DraggableInsightListItemWrapper.d.ts.map +1 -1
  56. package/esm/presentation/dashboard/DashboardSidebar/DraggableInsightList/DraggableInsightListItemWrapper.js +3 -2
  57. package/esm/presentation/dashboard/components/DashboardInner.d.ts.map +1 -1
  58. package/esm/presentation/dashboard/components/DashboardInner.js +9 -5
  59. package/esm/presentation/dashboard/components/DashboardSkeleton.d.ts +5 -0
  60. package/esm/presentation/dashboard/components/DashboardSkeleton.d.ts.map +1 -0
  61. package/esm/presentation/dashboard/components/DashboardSkeleton.js +30 -0
  62. package/esm/presentation/dragAndDrop/WrapInsightListItemWithDrag.d.ts +1 -1
  63. package/esm/presentation/dragAndDrop/WrapInsightListItemWithDrag.d.ts.map +1 -1
  64. package/esm/presentation/dragAndDrop/WrapInsightListItemWithDrag.js +3 -3
  65. package/esm/presentation/dragAndDrop/draggableWidget/DraggableInsightListItem.d.ts +1 -0
  66. package/esm/presentation/dragAndDrop/draggableWidget/DraggableInsightListItem.d.ts.map +1 -1
  67. package/esm/presentation/dragAndDrop/draggableWidget/DraggableInsightListItem.js +2 -2
  68. package/esm/presentation/dragAndDrop/types.d.ts +2 -0
  69. package/esm/presentation/dragAndDrop/types.d.ts.map +1 -1
  70. package/esm/presentation/filterBar/filterBar/DefaultFilterBarContainer.d.ts.map +1 -1
  71. package/esm/presentation/filterBar/filterBar/DefaultFilterBarContainer.js +7 -1
  72. package/esm/presentation/insightList/types.d.ts +1 -0
  73. package/esm/presentation/insightList/types.d.ts.map +1 -1
  74. package/esm/presentation/topBar/buttonBar/button/cancelButton/DefaultCancelButton.d.ts +1 -1
  75. package/esm/presentation/topBar/buttonBar/button/cancelButton/DefaultCancelButton.d.ts.map +1 -1
  76. package/esm/presentation/topBar/buttonBar/button/cancelButton/DefaultCancelButton.js +3 -2
  77. package/esm/presentation/topBar/buttonBar/button/cancelButton/types.d.ts +1 -0
  78. package/esm/presentation/topBar/buttonBar/button/cancelButton/types.d.ts.map +1 -1
  79. package/esm/presentation/topBar/buttonBar/button/cancelButton/types.js +1 -1
  80. package/esm/presentation/topBar/buttonBar/button/editButton/DefaultEditButton.d.ts.map +1 -1
  81. package/esm/presentation/topBar/buttonBar/button/editButton/DefaultEditButton.js +3 -2
  82. package/esm/presentation/topBar/buttonBar/button/saveAsButton/DefaultSaveAsNewButton.d.ts +1 -1
  83. package/esm/presentation/topBar/buttonBar/button/saveAsButton/DefaultSaveAsNewButton.d.ts.map +1 -1
  84. package/esm/presentation/topBar/buttonBar/button/saveAsButton/DefaultSaveAsNewButton.js +5 -2
  85. package/esm/presentation/topBar/buttonBar/button/saveAsButton/types.d.ts +1 -0
  86. package/esm/presentation/topBar/buttonBar/button/saveAsButton/types.d.ts.map +1 -1
  87. package/esm/presentation/topBar/buttonBar/button/saveAsButton/types.js +1 -1
  88. package/esm/presentation/topBar/buttonBar/button/saveButton/DefaultSaveButton.d.ts.map +1 -1
  89. package/esm/presentation/topBar/buttonBar/button/saveButton/DefaultSaveButton.js +3 -1
  90. package/esm/presentation/topBar/buttonBar/button/settingButton/DefaultSettingButton.d.ts.map +1 -1
  91. package/esm/presentation/topBar/buttonBar/button/settingButton/DefaultSettingButton.js +3 -1
  92. package/esm/presentation/topBar/buttonBar/button/shareButton/DefaultShareButton.d.ts +1 -1
  93. package/esm/presentation/topBar/buttonBar/button/shareButton/DefaultShareButton.d.ts.map +1 -1
  94. package/esm/presentation/topBar/buttonBar/button/shareButton/DefaultShareButton.js +5 -2
  95. package/esm/presentation/topBar/buttonBar/button/shareButton/types.d.ts +1 -0
  96. package/esm/presentation/topBar/buttonBar/button/shareButton/types.d.ts.map +1 -1
  97. package/esm/presentation/topBar/buttonBar/button/shareButton/types.js +1 -0
  98. package/esm/presentation/topBar/menuButton/DefaultMenuButton.d.ts +1 -1
  99. package/esm/presentation/topBar/menuButton/DefaultMenuButton.d.ts.map +1 -1
  100. package/esm/presentation/topBar/menuButton/DefaultMenuButton.js +7 -2
  101. package/esm/presentation/topBar/menuButton/types.d.ts +4 -0
  102. package/esm/presentation/topBar/menuButton/types.d.ts.map +1 -1
  103. package/esm/presentation/widget/common/configuration/DateDatasetDropdown.d.ts.map +1 -1
  104. package/esm/presentation/widget/common/configuration/DateDatasetDropdown.js +93 -27
  105. package/esm/presentation/widget/common/configuration/utils.d.ts +3 -0
  106. package/esm/presentation/widget/common/configuration/utils.d.ts.map +1 -1
  107. package/esm/presentation/widget/common/configuration/utils.js +14 -2
  108. package/esm/sdk-ui-dashboard.d.ts +49 -96
  109. package/package.json +21 -21
  110. package/styles/css/dashboard.css +118 -0
  111. package/styles/css/dashboard.css.map +1 -1
  112. package/styles/css/main.css +118 -44
  113. package/styles/css/main.css.map +1 -1
  114. package/styles/scss/dashboard.scss +96 -0
@@ -1 +1 @@
1
- {"version":3,"file":"CreationPanel.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dashboard/DashboardSidebar/CreationPanel.tsx"],"names":[],"mappings":"AAaA,OAAO,EACH,KAAK,2BAA2B,EAChC,KAAK,iCAAiC,EACtC,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,uCAAuC,EAC/C,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACH,KAAK,qCAAqC,EAC1C,KAAK,qCAAqC,EAC7C,MAAM,4BAA4B,CAAC;AAIpC,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,2CA8DvD"}
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,EACH,KAAK,qCAAqC,EAC1C,KAAK,qCAAqC,EAC7C,MAAM,4BAA4B,CAAC;AAIpC,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,2CAkEvD"}
@@ -7,12 +7,14 @@ import { FormattedMessage } from "react-intl";
7
7
  import { Typography } from "@gooddata/sdk-ui-kit";
8
8
  import { useDashboardSelector } from "../../../model/react/DashboardStoreProvider.js";
9
9
  import { selectSupportsRichTextWidgets } from "../../../model/store/backendCapabilities/backendCapabilitiesSelectors.js";
10
+ import { selectIsAiGenerating } from "../../../model/store/config/configSelectors.js";
10
11
  import { selectIsNewDashboard } from "../../../model/store/meta/metaSelectors.js";
11
12
  import { DraggableInsightList } from "./DraggableInsightList/DraggableInsightList.js";
12
13
  export function CreationPanel(props) {
13
14
  const { className, WrapCreatePanelItemWithDragComponent, WrapInsightListItemWithDragComponent } = props;
14
15
  const supportsRichText = useDashboardSelector(selectSupportsRichTextWidgets);
15
16
  const isNewDashboard = useDashboardSelector(selectIsNewDashboard);
17
+ const isAiGenerating = useDashboardSelector(selectIsAiGenerating);
16
18
  const AttributeFilterComponentSet = props.AttributeFilterComponentSet;
17
19
  const InsightWidgetComponentSet = props.InsightWidgetComponentSet;
18
20
  const RichTextWidgetComponentSet = props.RichTextWidgetComponentSet;
@@ -27,7 +29,7 @@ export function CreationPanel(props) {
27
29
  supportsRichText && RichTextWidgetComponentSet.creating,
28
30
  ]);
29
31
  return sortBy(items, (item) => item.priority ?? 0).map(({ CreatePanelListItemComponent, type }) => {
30
- return (_jsx(CreatePanelListItemComponent, { WrapCreatePanelItemWithDragComponent: WrapCreatePanelItemWithDragComponent }, type));
32
+ return (_jsx(CreatePanelListItemComponent, { WrapCreatePanelItemWithDragComponent: WrapCreatePanelItemWithDragComponent, disabled: isAiGenerating }, type));
31
33
  });
32
34
  }, [
33
35
  AttributeFilterComponentSet,
@@ -37,12 +39,13 @@ export function CreationPanel(props) {
37
39
  DashboardLayoutWidgetComponentSet,
38
40
  supportsRichText,
39
41
  WrapCreatePanelItemWithDragComponent,
42
+ isAiGenerating,
40
43
  ]);
41
44
  return (_jsx("div", { className: cx("configuration-panel creation-panel", className), children: _jsxs("div", { className: "configuration-panel-content", children: [
42
45
  _jsx(Typography, { tagName: "h2", className: "flex-panel-item-nostretch", children: _jsx(FormattedMessage, { id: "visualizationsList.dragToAdd" }) }), _jsxs("div", { className: "configuration-category drag-to-add", children: [
43
46
  _jsx(Typography, { tagName: "h3", children: _jsx(FormattedMessage, { id: "addPanel.newItem" }) }), _jsx("div", { className: "add-item-panel", children: addItemPanelItems })
44
47
  ] }), _jsxs("div", { className: "configuration-category configuration-category-vis drag-to-add flex-panel-item-stretch", children: [
45
- _jsx(Typography, { tagName: "h3", children: _jsx(FormattedMessage, { id: "visualizationsList.savedVisualizations" }) }), _jsx(DraggableInsightList, { WrapInsightListItemWithDragComponent: WrapInsightListItemWithDragComponent, recalculateSizeReference: className, searchAutofocus: !isNewDashboard })
48
+ _jsx(Typography, { tagName: "h3", children: _jsx(FormattedMessage, { id: "visualizationsList.savedVisualizations" }) }), _jsx(DraggableInsightList, { WrapInsightListItemWithDragComponent: WrapInsightListItemWithDragComponent, recalculateSizeReference: className, searchAutofocus: !isNewDashboard, disabled: isAiGenerating })
46
49
  ] })
47
50
  ] }) }));
48
51
  }
@@ -3,7 +3,8 @@ interface IDraggableInsightListProps {
3
3
  WrapInsightListItemWithDragComponent?: IWrapInsightListItemWithDragComponent;
4
4
  recalculateSizeReference?: string;
5
5
  searchAutofocus?: boolean;
6
+ disabled?: boolean;
6
7
  }
7
- export declare function DraggableInsightList({ recalculateSizeReference, searchAutofocus, WrapInsightListItemWithDragComponent }: IDraggableInsightListProps): import("react/jsx-runtime").JSX.Element;
8
+ export declare function DraggableInsightList({ recalculateSizeReference, searchAutofocus, WrapInsightListItemWithDragComponent, disabled }: IDraggableInsightListProps): import("react/jsx-runtime").JSX.Element;
8
9
  export {};
9
10
  //# sourceMappingURL=DraggableInsightList.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DraggableInsightList.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/dashboard/DashboardSidebar/DraggableInsightList/DraggableInsightList.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,qCAAqC,EAAE,MAAM,+BAA+B,CAAC;AAI3F,UAAU,0BAA0B;IAChC,oCAAoC,CAAC,EAAE,qCAAqC,CAAC;IAC7E,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,eAAe,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,wBAAgB,oBAAoB,CAAC,EACjC,wBAAwB,EACxB,eAAe,EACf,oCAAoC,EACvC,EAAE,0BAA0B,2CAsB5B"}
1
+ {"version":3,"file":"DraggableInsightList.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/dashboard/DashboardSidebar/DraggableInsightList/DraggableInsightList.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,qCAAqC,EAAE,MAAM,+BAA+B,CAAC;AAI3F,UAAU,0BAA0B;IAChC,oCAAoC,CAAC,EAAE,qCAAqC,CAAC;IAC7E,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,wBAAgB,oBAAoB,CAAC,EACjC,wBAAwB,EACxB,eAAe,EACf,oCAAoC,EACpC,QAAQ,EACX,EAAE,0BAA0B,2CAuB5B"}
@@ -3,10 +3,10 @@ import { jsx as _jsx } from "react/jsx-runtime";
3
3
  import { useEffect, useRef } from "react";
4
4
  import { FlexDimensions } from "@gooddata/sdk-ui-kit";
5
5
  import { DraggableInsightListCore } from "./DraggableInsightListCore.js";
6
- export function DraggableInsightList({ recalculateSizeReference, searchAutofocus, WrapInsightListItemWithDragComponent, }) {
6
+ export function DraggableInsightList({ recalculateSizeReference, searchAutofocus, WrapInsightListItemWithDragComponent, disabled, }) {
7
7
  const flexRef = useRef(null);
8
8
  useEffect(() => {
9
9
  flexRef.current?.updateSize();
10
10
  }, [recalculateSizeReference]);
11
- return (_jsx("div", { className: "gd-visualizations-list gd-flex-item-stretch gd-flex-row-container", children: _jsx(FlexDimensions, { ref: flexRef, measureHeight: true, measureWidth: true, className: "visualizations-flex-dimensions", children: _jsx(DraggableInsightListCore, { WrapInsightListItemWithDragComponent: WrapInsightListItemWithDragComponent, searchAutofocus: searchAutofocus }) }) }));
11
+ return (_jsx("div", { className: "gd-visualizations-list gd-flex-item-stretch gd-flex-row-container", children: _jsx(FlexDimensions, { ref: flexRef, measureHeight: true, measureWidth: true, className: "visualizations-flex-dimensions", children: _jsx(DraggableInsightListCore, { WrapInsightListItemWithDragComponent: WrapInsightListItemWithDragComponent, searchAutofocus: searchAutofocus, disabled: disabled }) }) }));
12
12
  }
@@ -1,3 +1,3 @@
1
1
  import { type IInsightListProps } from "../../../insightList/types.js";
2
- export declare function DraggableInsightListCore({ WrapInsightListItemWithDragComponent, ...remainingProps }: IInsightListProps): import("react/jsx-runtime").JSX.Element;
2
+ export declare function DraggableInsightListCore({ WrapInsightListItemWithDragComponent, disabled, ...remainingProps }: IInsightListProps): import("react/jsx-runtime").JSX.Element;
3
3
  //# sourceMappingURL=DraggableInsightListCore.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DraggableInsightListCore.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/dashboard/DashboardSidebar/DraggableInsightList/DraggableInsightListCore.tsx"],"names":[],"mappings":"AAsBA,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAIvE,wBAAgB,wBAAwB,CAAC,EACrC,oCAAoC,EACpC,GAAG,cAAc,EACpB,EAAE,iBAAiB,2CAsDnB"}
1
+ {"version":3,"file":"DraggableInsightListCore.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/dashboard/DashboardSidebar/DraggableInsightList/DraggableInsightListCore.tsx"],"names":[],"mappings":"AAsBA,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAIvE,wBAAgB,wBAAwB,CAAC,EACrC,oCAAoC,EACpC,QAAQ,EACR,GAAG,cAAc,EACpB,EAAE,iBAAiB,2CAwDnB"}
@@ -10,11 +10,11 @@ import { useDashboardComponentsContext } from "../../../dashboardContexts/Dashbo
10
10
  import { InsightList } from "../../../insightList/InsightList.js";
11
11
  import { InsightListDivider } from "../../../insightList/InsightListDivider.js";
12
12
  import { DraggableInsightListItemWrapper } from "./DraggableInsightListItemWrapper.js";
13
- export function DraggableInsightListCore({ WrapInsightListItemWithDragComponent, ...remainingProps }) {
13
+ export function DraggableInsightListCore({ WrapInsightListItemWithDragComponent, disabled, ...remainingProps }) {
14
14
  const userInteraction = useDashboardUserInteraction();
15
15
  const settings = useDashboardSelector(selectSettings);
16
16
  const { LoadingComponent } = useDashboardComponentsContext();
17
- return (_jsx(InsightList, { ...remainingProps, renderItem: ({ item: insight, width, isFirst, isLast }) => {
17
+ return (_jsx(InsightList, { ...remainingProps, disabled: disabled, renderItem: ({ item: insight, width, isFirst, isLast }) => {
18
18
  if (!insight) {
19
19
  return _jsx(InsightListItem, { isLoading: true });
20
20
  }
@@ -34,6 +34,6 @@ export function DraggableInsightListCore({ WrapInsightListItemWithDragComponent,
34
34
  };
35
35
  return (_jsx(DraggableInsightListItemWrapper, { WrapInsightListItemWithDragComponent: WrapInsightListItemWithDragComponent, title: insightTitle(insight), description: description, showDescriptionPanel: true, type: visualizationType, width: width, className: classNames, updated: insightUpdated(insight) ?? insightCreated(insight), isLocked: insightIsLocked(insight), insight: insight, onDescriptionPanelOpen: () => {
36
36
  userInteraction.descriptionTooltipOpened(eventPayload);
37
- }, metadataTimeZone: settings?.metadataTimeZone, useReferences: true, LoadingComponent: LoadingComponent }));
37
+ }, metadataTimeZone: settings?.metadataTimeZone, useReferences: true, LoadingComponent: LoadingComponent, disabled: disabled }));
38
38
  } }));
39
39
  }
@@ -5,8 +5,9 @@ interface IDraggableInsightListItemWrapperProps extends IInsightListItemProps {
5
5
  WrapInsightListItemWithDragComponent?: IWrapInsightListItemWithDragComponent;
6
6
  className?: string;
7
7
  insight: IInsight;
8
+ disabled?: boolean;
8
9
  }
9
10
  export declare function DraggableInsightListItemBody(props: CustomDashboardInsightListItemComponentProps): import("react/jsx-runtime").JSX.Element;
10
- export declare function DraggableInsightListItemWrapper({ WrapInsightListItemWithDragComponent, className, isLocked, title, description, showDescriptionPanel, type, updated, insight, onDescriptionPanelOpen, metadataTimeZone, useReferences, LoadingComponent, filters, width }: IDraggableInsightListItemWrapperProps): import("react/jsx-runtime").JSX.Element;
11
+ export declare function DraggableInsightListItemWrapper({ WrapInsightListItemWithDragComponent, className, isLocked, title, description, showDescriptionPanel, type, updated, insight, onDescriptionPanelOpen, metadataTimeZone, useReferences, LoadingComponent, filters, width, disabled }: IDraggableInsightListItemWrapperProps): import("react/jsx-runtime").JSX.Element;
11
12
  export {};
12
13
  //# sourceMappingURL=DraggableInsightListItemWrapper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DraggableInsightListItemWrapper.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/dashboard/DashboardSidebar/DraggableInsightList/DraggableInsightListItemWrapper.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,KAAK,qBAAqB,EAAmB,MAAM,sBAAsB,CAAC;AAGnF,OAAO,EACH,KAAK,4CAA4C,EACjD,KAAK,qCAAqC,EAC7C,MAAM,+BAA+B,CAAC;AAEvC,UAAU,qCAAsC,SAAQ,qBAAqB;IACzE,oCAAoC,CAAC,EAAE,qCAAqC,CAAC;IAC7E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,QAAQ,CAAC;CACrB;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,4CAA4C,2CAO/F;AAED,wBAAgB,+BAA+B,CAAC,EAC5C,oCAAoC,EACpC,SAAS,EACT,QAAQ,EACR,KAAK,EACL,WAAW,EACX,oBAAoB,EACpB,IAAI,EACJ,OAAO,EACP,OAAO,EACP,sBAAsB,EACtB,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,OAAO,EACP,KAAK,EACR,EAAE,qCAAqC,2CAuBvC"}
1
+ {"version":3,"file":"DraggableInsightListItemWrapper.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/dashboard/DashboardSidebar/DraggableInsightList/DraggableInsightListItemWrapper.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,KAAK,qBAAqB,EAAmB,MAAM,sBAAsB,CAAC;AAGnF,OAAO,EACH,KAAK,4CAA4C,EACjD,KAAK,qCAAqC,EAC7C,MAAM,+BAA+B,CAAC;AAEvC,UAAU,qCAAsC,SAAQ,qBAAqB;IACzE,oCAAoC,CAAC,EAAE,qCAAqC,CAAC;IAC7E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,QAAQ,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,4CAA4C,2CAO/F;AAED,wBAAgB,+BAA+B,CAAC,EAC5C,oCAAoC,EACpC,SAAS,EACT,QAAQ,EACR,KAAK,EACL,WAAW,EACX,oBAAoB,EACpB,IAAI,EACJ,OAAO,EACP,OAAO,EACP,sBAAsB,EACtB,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,OAAO,EACP,KAAK,EACL,QAAQ,EACX,EAAE,qCAAqC,2CAyBvC"}
@@ -5,7 +5,7 @@ export function DraggableInsightListItemBody(props) {
5
5
  const { className } = props;
6
6
  return (_jsx("div", { className: className, children: _jsx(InsightListItem, { ...props }) }));
7
7
  }
8
- export function DraggableInsightListItemWrapper({ WrapInsightListItemWithDragComponent, className, isLocked, title, description, showDescriptionPanel, type, updated, insight, onDescriptionPanelOpen, metadataTimeZone, useReferences, LoadingComponent, filters, width, }) {
8
+ export function DraggableInsightListItemWrapper({ WrapInsightListItemWithDragComponent, className, isLocked, title, description, showDescriptionPanel, type, updated, insight, onDescriptionPanelOpen, metadataTimeZone, useReferences, LoadingComponent, filters, width, disabled, }) {
9
9
  return (_jsx(DraggableInsightListItem, { WrapInsightListItemWithDragComponent: WrapInsightListItemWithDragComponent, ListItemComponent: DraggableInsightListItemBody, listItemComponentProps: {
10
10
  className,
11
11
  isLocked,
@@ -20,5 +20,6 @@ export function DraggableInsightListItemWrapper({ WrapInsightListItemWithDragCom
20
20
  LoadingComponent,
21
21
  filters,
22
22
  width,
23
- }, insight: insight }));
23
+ disabled,
24
+ }, insight: insight, disabled: disabled }));
24
25
  }
@@ -1 +1 @@
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;AAOnD,wBAAgB,cAAc,CAAC,KAAK,EAAE,eAAe,2CA4GpD"}
1
+ {"version":3,"file":"DashboardInner.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dashboard/components/DashboardInner.tsx"],"names":[],"mappings":"AA4CA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAQnD,wBAAgB,cAAc,CAAC,KAAK,EAAE,eAAe,2CAwHpD"}
@@ -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) 2022-2026 GoodData Corporation
3
3
  import { useEffect, useRef } from "react";
4
4
  import cx from "classnames";
@@ -7,7 +7,7 @@ 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 { selectLocale, selectSettings } from "../../../model/store/config/configSelectors.js";
10
+ import { selectIsAiGenerating, selectLocale, selectSettings, } from "../../../model/store/config/configSelectors.js";
11
11
  import { selectIsInEditMode } from "../../../model/store/renderMode/renderModeSelectors.js";
12
12
  import { selectDashboardDensity } from "../../../model/store/ui/uiSelectors.js";
13
13
  import { DASHBOARD_HEADER_OVERLAYS_Z_INDEX, DASHBOARD_TOASTS_OVERLAY_Z_INDEX, } from "../../constants/zIndex.js";
@@ -25,6 +25,7 @@ import { DashboardSidebar } from "../DashboardSidebar/DashboardSidebar.js";
25
25
  import { RenderModeAwareDashboardSidebar } from "../DashboardSidebar/RenderModeAwareDashboardSidebar.js";
26
26
  import { ResizableSidebarProvider, useResizableSidebarState, } from "../DashboardSidebar/SidebarResizeContext.js";
27
27
  import { DashboardScreenSizeProvider } from "./DashboardScreenSizeContext.js";
28
+ import { DashboardSkeleton } from "./DashboardSkeleton.js";
28
29
  const overlayController = OverlayController.getInstance(DASHBOARD_HEADER_OVERLAYS_Z_INDEX);
29
30
  const toastsOverlayController = OverlayController.getInstance(DASHBOARD_TOASTS_OVERLAY_Z_INDEX);
30
31
  export function DashboardInner(props) {
@@ -34,6 +35,7 @@ export function DashboardInner(props) {
34
35
  const accessibleDashboardsLoaded = useDashboardSelector(selectAccessibleDashboardsLoaded);
35
36
  const density = useDashboardSelector(selectDashboardDensity);
36
37
  const settings = useDashboardSelector(selectSettings);
38
+ const isAiGenerating = useDashboardSelector(selectIsAiGenerating);
37
39
  const enableEnhancedInsightPicker = settings?.enableEnhancedInsightPicker ?? false;
38
40
  const headerRef = useRef(null);
39
41
  const layoutRef = useRef(null);
@@ -75,11 +77,13 @@ export function DashboardInner(props) {
75
77
  }), children: [
76
78
  _jsx(DragLayerComponent, {}), _jsxs("div", { className: cx("gd-dashboards-root gd-flex-container", {
77
79
  "gd-dashboards-root--floating-toolbar": enableEnhancedInsightPicker,
80
+ "sdk-dashboard-generating": isAiGenerating,
78
81
  }), style: dashboardsRootStyle, children: [
79
82
  _jsx(DashboardSidebar, { DefaultSidebar: RenderModeAwareDashboardSidebar, DeleteDropZoneComponent: DeleteDropZone, WrapCreatePanelItemWithDragComponent: WrapCreatePanelItemWithDrag, WrapInsightListItemWithDragComponent: WrapInsightListItemWithDrag }), _jsxs("main", { className: dashboardContentClassNames, ...mainContentNavigationProps, children: [
80
- _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("div", { className: "gd-flex-item-stretch dash-section dash-section-kpis", ref: layoutRef, children: [
81
- _jsx(DashboardScreenSizeProvider, { children: _jsx(DashboardContent, { ...props }) }), enableEnhancedInsightPicker ? _jsx(FilterDeleteOverlay, {}) : null] }), _jsx("div", { className: "gd-dash-bottom-position-pixel", ref: bottomRef })
82
- ] })
83
+ _jsx("div", { className: "gd-dash-header-wrapper gd-dash-header-wrapper-sdk-8-12", ref: headerRef, children: _jsx(OverlayControllerProvider, { overlayController: overlayController, children: _jsx(DashboardHeader, {}) }) }), isAiGenerating ? (_jsx("div", { className: "gd-flex-item-stretch dash-section dash-section-kpis", children: _jsx(DashboardScreenSizeProvider, { children: _jsx(DashboardSkeleton, {}) }) })) : (_jsxs(_Fragment, { children: [
84
+ _jsxs("div", { className: "gd-flex-item-stretch dash-section dash-section-kpis", ref: layoutRef, children: [
85
+ _jsx(DashboardScreenSizeProvider, { children: _jsx(DashboardContent, { ...props }) }), enableEnhancedInsightPicker ? _jsx(FilterDeleteOverlay, {}) : null] }), _jsx("div", { className: "gd-dash-bottom-position-pixel", ref: bottomRef })
86
+ ] }))] })
83
87
  ] }), _jsx(Toolbar, {})
84
88
  ] }) })
85
89
  ] }) }));
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @internal
3
+ */
4
+ export declare function DashboardSkeleton(): import("react/jsx-runtime").JSX.Element;
5
+ //# sourceMappingURL=DashboardSkeleton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DashboardSkeleton.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dashboard/components/DashboardSkeleton.tsx"],"names":[],"mappings":"AAkCA;;GAEG;AACH,wBAAgB,iBAAiB,4CA4ChC"}
@@ -0,0 +1,30 @@
1
+ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import Skeleton from "react-loading-skeleton";
3
+ import { useScreenSize } from "./DashboardScreenSizeContext.js";
4
+ function DashboardSkeletonWrapper({ children }) {
5
+ return _jsx("div", { className: "gd-skeleton-wrapper", children: children });
6
+ }
7
+ function DashboardSkeletonFilter({ index }) {
8
+ return (_jsxs("div", { className: "gd-skeleton-filter", children: [
9
+ _jsx(Skeleton, { className: "gd-react-loading-skeleton", width: index % 2 === 0 ? 40 : 80, height: 14 }), _jsx(Skeleton, { className: "gd-react-loading-skeleton", width: index % 2 === 0 ? 80 : 40, height: 14 })
10
+ ] }));
11
+ }
12
+ function DashboardSkeletonFilterBar() {
13
+ return (_jsxs("div", { className: "gd-skeleton-filter-bar", children: [
14
+ _jsx(DashboardSkeletonFilter, { index: 0 }, 0), _jsx(DashboardSkeletonFilter, { index: 1 }, 1), _jsx(DashboardSkeletonFilter, { index: 2 }, 2)
15
+ ] }));
16
+ }
17
+ /**
18
+ * @internal
19
+ */
20
+ export function DashboardSkeleton() {
21
+ const screenSize = useScreenSize();
22
+ const isSmall = screenSize === "xs" || screenSize === "sm";
23
+ return (_jsx("div", { className: "sdk-dashboard-skeleton", children: _jsxs(DashboardSkeletonWrapper, { children: [
24
+ _jsx(DashboardSkeletonFilterBar, {}), _jsx("div", { className: "gd-skeleton-content", children: isSmall ? (_jsxs(_Fragment, { children: [
25
+ _jsx(Skeleton, { containerClassName: "skeleton-flex", className: "gd-react-loading-skeleton", width: "100%", height: 220 }), _jsx(Skeleton, { containerClassName: "skeleton-flex", className: "gd-react-loading-skeleton", width: "100%", height: 220 })
26
+ ] })) : (_jsxs(_Fragment, { children: [
27
+ _jsx(Skeleton, { containerClassName: "skeleton-flex", className: "gd-react-loading-skeleton", width: "100%", height: 440 }), _jsx(Skeleton, { containerClassName: "skeleton-flex", className: "gd-react-loading-skeleton", width: "100%", height: 440 })
28
+ ] })) })
29
+ ] }) }));
30
+ }
@@ -2,5 +2,5 @@ import { type IWrapInsightListItemWithDragProps } from "./types.js";
2
2
  /**
3
3
  * @internal
4
4
  */
5
- export declare function WrapInsightListItemWithDrag({ children, insight, onDragStart }: IWrapInsightListItemWithDragProps): import("react/jsx-runtime").JSX.Element;
5
+ export declare function WrapInsightListItemWithDrag({ children, insight, disabled, onDragStart }: IWrapInsightListItemWithDragProps): import("react/jsx-runtime").JSX.Element;
6
6
  //# sourceMappingURL=WrapInsightListItemWithDrag.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WrapInsightListItemWithDrag.d.ts","sourceRoot":"","sources":["../../../src/presentation/dragAndDrop/WrapInsightListItemWithDrag.tsx"],"names":[],"mappings":"AAcA,OAAO,EAAE,KAAK,iCAAiC,EAAE,MAAM,YAAY,CAAC;AAGpE;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,EACxC,QAAQ,EACR,OAAO,EACP,WAAW,EACd,EAAE,iCAAiC,2CAmCnC"}
1
+ {"version":3,"file":"WrapInsightListItemWithDrag.d.ts","sourceRoot":"","sources":["../../../src/presentation/dragAndDrop/WrapInsightListItemWithDrag.tsx"],"names":[],"mappings":"AAcA,OAAO,EAAE,KAAK,iCAAiC,EAAE,MAAM,YAAY,CAAC;AAGpE;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,EACxC,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,WAAW,EACd,EAAE,iCAAiC,2CAmCnC"}
@@ -10,7 +10,7 @@ import { useDashboardDrag } from "./useDashboardDrag.js";
10
10
  /**
11
11
  * @internal
12
12
  */
13
- export function WrapInsightListItemWithDrag({ children, insight, onDragStart, }) {
13
+ export function WrapInsightListItemWithDrag({ children, insight, disabled, onDragStart, }) {
14
14
  const isInEditMode = useDashboardSelector(selectIsInEditMode);
15
15
  const settings = useDashboardSelector(selectSettings);
16
16
  const handleDragEnd = useWidgetDragEndHandler();
@@ -26,10 +26,10 @@ export function WrapInsightListItemWithDrag({ children, insight, onDragStart, })
26
26
  },
27
27
  };
28
28
  },
29
- canDrag: isInEditMode,
29
+ canDrag: isInEditMode && !disabled,
30
30
  hideDefaultPreview: false,
31
31
  dragEnd: handleDragEnd,
32
32
  dragStart: onDragStart,
33
- }, [isInEditMode, insight, handleDragEnd]);
33
+ }, [isInEditMode, insight, handleDragEnd, disabled]);
34
34
  return (_jsx("div", { className: classNames({ "is-dragging": isDragging }), ref: dragRef, children: children }));
35
35
  }
@@ -8,6 +8,7 @@ export interface IDraggableInsightListItemProps {
8
8
  ListItemComponent: CustomDashboardInsightListItemComponent;
9
9
  listItemComponentProps: CustomDashboardInsightListItemComponentProps;
10
10
  insight: IInsight;
11
+ disabled?: boolean;
11
12
  }
12
13
  /**
13
14
  * @internal
@@ -1 +1 @@
1
- {"version":3,"file":"DraggableInsightListItem.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dragAndDrop/draggableWidget/DraggableInsightListItem.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAGpD,OAAO,EACH,KAAK,uCAAuC,EAC5C,KAAK,4CAA4C,EACjD,KAAK,qCAAqC,EAC7C,MAAM,aAAa,CAAC;AAErB;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC3C,oCAAoC,CAAC,EAAE,qCAAqC,CAAC;IAC7E,iBAAiB,EAAE,uCAAuC,CAAC;IAC3D,sBAAsB,EAAE,4CAA4C,CAAC;IACrE,OAAO,EAAE,QAAQ,CAAC;CACrB;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,8BAA8B,2CAW7E"}
1
+ {"version":3,"file":"DraggableInsightListItem.d.ts","sourceRoot":"","sources":["../../../../src/presentation/dragAndDrop/draggableWidget/DraggableInsightListItem.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAGpD,OAAO,EACH,KAAK,uCAAuC,EAC5C,KAAK,4CAA4C,EACjD,KAAK,qCAAqC,EAC7C,MAAM,aAAa,CAAC;AAErB;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC3C,oCAAoC,CAAC,EAAE,qCAAqC,CAAC;IAC7E,iBAAiB,EAAE,uCAAuC,CAAC;IAC3D,sBAAsB,EAAE,4CAA4C,CAAC;IACrE,OAAO,EAAE,QAAQ,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,8BAA8B,2CAe7E"}
@@ -4,8 +4,8 @@ import { useWidgetSelection } from "../../../model/react/useWidgetSelection.js";
4
4
  * @internal
5
5
  */
6
6
  export function DraggableInsightListItem(props) {
7
- const { ListItemComponent, listItemComponentProps, insight } = props;
7
+ const { ListItemComponent, listItemComponentProps, insight, disabled } = props;
8
8
  const WrapInsightListItemWithDragComponent = props.WrapInsightListItemWithDragComponent;
9
9
  const { deselectWidgets } = useWidgetSelection();
10
- return (_jsx(WrapInsightListItemWithDragComponent, { insight: insight, onDragStart: () => deselectWidgets(), children: _jsx(ListItemComponent, { ...listItemComponentProps }) }));
10
+ return (_jsx(WrapInsightListItemWithDragComponent, { insight: insight, disabled: disabled, onDragStart: () => deselectWidgets(), children: _jsx(ListItemComponent, { ...listItemComponentProps }) }));
11
11
  }
@@ -329,6 +329,7 @@ export type CustomDashboardInsightListItemComponentProps = {
329
329
  useReferences?: boolean;
330
330
  LoadingComponent?: ComponentType;
331
331
  width?: number;
332
+ disabled?: boolean;
332
333
  };
333
334
  /**
334
335
  * @internal
@@ -366,6 +367,7 @@ export type IWrapCreatePanelItemWithDragComponent = ComponentType<IWrapCreatePan
366
367
  export interface IWrapInsightListItemWithDragProps {
367
368
  children: ReactElement;
368
369
  insight: IInsight;
370
+ disabled?: boolean;
369
371
  onDragStart?: (item: DraggableItem) => void;
370
372
  }
371
373
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/presentation/dragAndDrop/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/presentation/dragAndDrop/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultFilterBarContainer.d.ts","sourceRoot":"","sources":["../../../../src/presentation/filterBar/filterBar/DefaultFilterBarContainer.tsx"],"names":[],"mappings":"AAEA,OAAO,EAEH,KAAK,SAAS,EAOjB,MAAM,OAAO,CAAC;AAgcf;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,CAAC,EAAE,SAAS,CAAA;CAAE,2CAQ/E"}
1
+ {"version":3,"file":"DefaultFilterBarContainer.d.ts","sourceRoot":"","sources":["../../../../src/presentation/filterBar/filterBar/DefaultFilterBarContainer.tsx"],"names":[],"mappings":"AAEA,OAAO,EAGH,KAAK,SAAS,EAOjB,MAAM,OAAO,CAAC;AA0cf;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,CAAC,EAAE,SAAS,CAAA;CAAE,2CAQ/E"}
@@ -58,7 +58,13 @@ function DefaultFilterBarContainerCore({ children }) {
58
58
  setExpandedAutomatically(true);
59
59
  }
60
60
  }, [hasMultipleRows, isFilterBarExpanded, setFilterBarExpanded]);
61
- const onContainerBlur = useCallback(() => {
61
+ const onContainerBlur = useCallback((event) => {
62
+ // React bubbles blur from every child. Moving keyboard focus between
63
+ // chips collapse/expand the filter bar
64
+ const { relatedTarget } = event;
65
+ if (relatedTarget instanceof Node && event.currentTarget.contains(relatedTarget)) {
66
+ return;
67
+ }
62
68
  if (isFocusVisible() && expandedAutomatically) {
63
69
  setFilterBarExpanded(false);
64
70
  setExpandedAutomatically(false);
@@ -15,5 +15,6 @@ export interface IInsightListProps {
15
15
  }>) => ReactElement;
16
16
  selectedRef?: ObjRef;
17
17
  onSelect?: (insight: IInsight) => void;
18
+ disabled?: boolean;
18
19
  }
19
20
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/presentation/insightList/types.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAE1C,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAEjE,OAAO,EAAE,KAAK,qCAAqC,EAAE,MAAM,yBAAyB,CAAC;AAErF;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAC9B,oCAAoC,CAAC,EAAE,qCAAqC,CAAC;IAC7E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,CAAC,QAAQ,GAAG;QAAE,OAAO,EAAE,IAAI,CAAA;KAAE,CAAC,KAAK,YAAY,CAAC;IACzF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,QAAQ,KAAK,IAAI,CAAC;CAC1C"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/presentation/insightList/types.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAE1C,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAEjE,OAAO,EAAE,KAAK,qCAAqC,EAAE,MAAM,yBAAyB,CAAC;AAErF;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAC9B,oCAAoC,CAAC,EAAE,qCAAqC,CAAC;IAC7E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,CAAC,QAAQ,GAAG;QAAE,OAAO,EAAE,IAAI,CAAA;KAAE,CAAC,KAAK,YAAY,CAAC;IACzF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,QAAQ,KAAK,IAAI,CAAC;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB"}
@@ -6,5 +6,5 @@ export declare function useCancelButtonProps(): ICancelButtonProps;
6
6
  /**
7
7
  * @internal
8
8
  */
9
- export declare function DefaultCancelButton({ isVisible, onCancelClick }: ICancelButtonProps): import("react/jsx-runtime").JSX.Element | null;
9
+ export declare function DefaultCancelButton({ isVisible, isEnabled, onCancelClick }: ICancelButtonProps): import("react/jsx-runtime").JSX.Element | null;
10
10
  //# sourceMappingURL=DefaultCancelButton.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultCancelButton.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/topBar/buttonBar/button/cancelButton/DefaultCancelButton.tsx"],"names":[],"mappings":"AAkBA,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAErD;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,kBAAkB,CAmBzD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,EAAE,kBAAkB,kDAcnF"}
1
+ {"version":3,"file":"DefaultCancelButton.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/topBar/buttonBar/button/cancelButton/DefaultCancelButton.tsx"],"names":[],"mappings":"AAkBA,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAErD;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,kBAAkB,CAoBzD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,SAAS,EAAE,SAAgB,EAAE,aAAa,EAAE,EAAE,kBAAkB,kDAerG"}
@@ -27,16 +27,17 @@ export function useCancelButtonProps() {
27
27
  }, [dispatch, isDirty]);
28
28
  return {
29
29
  isVisible: isEditing && !isSaving,
30
+ isEnabled: !isSaving,
30
31
  onCancelClick,
31
32
  };
32
33
  }
33
34
  /**
34
35
  * @internal
35
36
  */
36
- export function DefaultCancelButton({ isVisible, onCancelClick }) {
37
+ export function DefaultCancelButton({ isVisible, isEnabled = true, onCancelClick }) {
37
38
  const intl = useIntl();
38
39
  if (!isVisible) {
39
40
  return null;
40
41
  }
41
- return (_jsx(Button, { className: "gd-button-secondary cancel-button s-cancel_button", value: intl.formatMessage({ id: "cancel" }), onClick: onCancelClick }));
42
+ return (_jsx(Button, { className: "gd-button-secondary cancel-button s-cancel_button", value: intl.formatMessage({ id: "cancel" }), onClick: onCancelClick, disabled: !isEnabled }));
42
43
  }
@@ -4,6 +4,7 @@ import { type ComponentType } from "react";
4
4
  */
5
5
  export interface ICancelButtonProps {
6
6
  isVisible: boolean;
7
+ isEnabled?: boolean;
7
8
  onCancelClick: () => void;
8
9
  }
9
10
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/topBar/buttonBar/button/cancelButton/types.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAC/B,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,MAAM,IAAI,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG,aAAa,CAAC,kBAAkB,CAAC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/topBar/buttonBar/button/cancelButton/types.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAC/B,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,MAAM,IAAI,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG,aAAa,CAAC,kBAAkB,CAAC,CAAC"}
@@ -1,2 +1,2 @@
1
- // (C) 2022-2023 GoodData Corporation
1
+ // (C) 2022-2026 GoodData Corporation
2
2
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultEditButton.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/topBar/buttonBar/button/editButton/DefaultEditButton.tsx"],"names":[],"mappings":"AAwBA,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,gBAAgB,CAyBrD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,EAAE,gBAAgB,kDA4BrG"}
1
+ {"version":3,"file":"DefaultEditButton.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/topBar/buttonBar/button/editButton/DefaultEditButton.tsx"],"names":[],"mappings":"AAwBA,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,gBAAgB,CA0BrD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,EAAE,gBAAgB,kDA4BrG"}
@@ -7,7 +7,7 @@ import { Button, UiTooltip, useMediaQuery } from "@gooddata/sdk-ui-kit";
7
7
  import { switchToEditRenderMode } from "../../../../../model/commands/renderMode.js";
8
8
  import { useDashboardDispatch, useDashboardSelector, } from "../../../../../model/react/DashboardStoreProvider.js";
9
9
  import { selectCatalogIsLoaded } from "../../../../../model/store/catalog/catalogSelectors.js";
10
- import { selectSettings } from "../../../../../model/store/config/configSelectors.js";
10
+ import { selectIsAiGenerating, selectSettings } from "../../../../../model/store/config/configSelectors.js";
11
11
  import { selectIsDashboardLoading } from "../../../../../model/store/loading/loadingSelectors.js";
12
12
  import { selectIsInEditMode } from "../../../../../model/store/renderMode/renderModeSelectors.js";
13
13
  import { selectCanEnterEditMode } from "../../../../../model/store/topBar/topBarSelectors.js";
@@ -19,6 +19,7 @@ export function useEditButtonProps() {
19
19
  const settings = useDashboardSelector(selectSettings);
20
20
  const enableEnhancedInsightPicker = settings?.enableEnhancedInsightPicker ?? false;
21
21
  const minWidthForEditing = useMediaQuery(enableEnhancedInsightPicker ? ">=lg" : ">=xl");
22
+ const isAiGenerating = useDashboardSelector(selectIsAiGenerating);
22
23
  const intl = useIntl();
23
24
  const canEnterEdit = useDashboardSelector(selectCanEnterEditMode);
24
25
  const isDashboardLoading = useDashboardSelector(selectIsDashboardLoading);
@@ -32,7 +33,7 @@ export function useEditButtonProps() {
32
33
  : intl.formatMessage({ id: "controlButtons.edit.tooltip" });
33
34
  return {
34
35
  isVisible: minWidthForEditing && !isEditing && canEnterEdit,
35
- isEnabled: !isDashboardLoading && isCatalogLoaded && !isExecutionTimestampMode,
36
+ isEnabled: !isDashboardLoading && isCatalogLoaded && !isExecutionTimestampMode && !isAiGenerating,
36
37
  onEditClick,
37
38
  tooltipText,
38
39
  };
@@ -6,5 +6,5 @@ export declare function useSaveAsNewButtonProps(): ISaveAsNewButtonProps;
6
6
  /**
7
7
  * @internal
8
8
  */
9
- export declare function DefaultSaveAsNewButton({ isVisible, onSaveAsNewClick }: ISaveAsNewButtonProps): import("react/jsx-runtime").JSX.Element | null;
9
+ export declare function DefaultSaveAsNewButton({ isVisible, isEnabled, onSaveAsNewClick }: ISaveAsNewButtonProps): import("react/jsx-runtime").JSX.Element | null;
10
10
  //# sourceMappingURL=DefaultSaveAsNewButton.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultSaveAsNewButton.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/topBar/buttonBar/button/saveAsButton/DefaultSaveAsNewButton.tsx"],"names":[],"mappings":"AAiBA,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAExD;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,qBAAqB,CAY/D;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE,EAAE,qBAAqB,kDAqB5F"}
1
+ {"version":3,"file":"DefaultSaveAsNewButton.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/topBar/buttonBar/button/saveAsButton/DefaultSaveAsNewButton.tsx"],"names":[],"mappings":"AAkBA,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAExD;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,qBAAqB,CAc/D;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,gBAAgB,EAAE,EAAE,qBAAqB,kDAsBvG"}
@@ -5,6 +5,7 @@ import cx from "classnames";
5
5
  import { useIntl } from "react-intl";
6
6
  import { Button } from "@gooddata/sdk-ui-kit";
7
7
  import { useDashboardDispatch, useDashboardSelector, } from "../../../../../model/react/DashboardStoreProvider.js";
8
+ import { selectIsAiGenerating } from "../../../../../model/store/config/configSelectors.js";
8
9
  import { selectIsSaveAsNewButtonVisible } from "../../../../../model/store/topBar/topBarSelectors.js";
9
10
  import { uiActions } from "../../../../../model/store/ui/index.js";
10
11
  import { selectDashboardDensity } from "../../../../../model/store/ui/uiSelectors.js";
@@ -14,18 +15,20 @@ import { selectDashboardDensity } from "../../../../../model/store/ui/uiSelector
14
15
  export function useSaveAsNewButtonProps() {
15
16
  const dashboardDispatch = useDashboardDispatch();
16
17
  const isVisible = useDashboardSelector(selectIsSaveAsNewButtonVisible);
18
+ const isAiGenerating = useDashboardSelector(selectIsAiGenerating);
17
19
  const onSaveAsNewClick = useCallback(() => {
18
20
  dashboardDispatch(uiActions.openSaveAsDialog());
19
21
  }, [dashboardDispatch]);
20
22
  return {
21
23
  isVisible,
24
+ isEnabled: !isAiGenerating,
22
25
  onSaveAsNewClick,
23
26
  };
24
27
  }
25
28
  /**
26
29
  * @internal
27
30
  */
28
- export function DefaultSaveAsNewButton({ isVisible, onSaveAsNewClick }) {
31
+ export function DefaultSaveAsNewButton({ isVisible, isEnabled, onSaveAsNewClick }) {
29
32
  const intl = useIntl();
30
33
  const density = useDashboardSelector(selectDashboardDensity);
31
34
  if (!isVisible) {
@@ -33,7 +36,7 @@ export function DefaultSaveAsNewButton({ isVisible, onSaveAsNewClick }) {
33
36
  }
34
37
  return (_jsx(Button, { className: cx("gd-button-secondary s-save_as_new_button", {
35
38
  "gd-button-small": density === "compact",
36
- }), value: intl.formatMessage({ id: "save.as.new" }), onClick: onSaveAsNewClick, accessibilityConfig: {
39
+ }), value: intl.formatMessage({ id: "save.as.new" }), onClick: onSaveAsNewClick, disabled: !isEnabled, accessibilityConfig: {
37
40
  popupType: "dialog",
38
41
  popupId: "save-as-new-dialog",
39
42
  } }));
@@ -4,6 +4,7 @@ import { type ComponentType } from "react";
4
4
  */
5
5
  export interface ISaveAsNewButtonProps {
6
6
  isVisible: boolean;
7
+ isEnabled: boolean;
7
8
  onSaveAsNewClick: () => void;
8
9
  }
9
10
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/topBar/buttonBar/button/saveAsButton/types.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,qBAAqB;IAClC,SAAS,EAAE,OAAO,CAAC;IACnB,gBAAgB,EAAE,MAAM,IAAI,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,MAAM,8BAA8B,GAAG,aAAa,CAAC,qBAAqB,CAAC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/topBar/buttonBar/button/saveAsButton/types.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,qBAAqB;IAClC,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,gBAAgB,EAAE,MAAM,IAAI,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,MAAM,8BAA8B,GAAG,aAAa,CAAC,qBAAqB,CAAC,CAAC"}
@@ -1,2 +1,2 @@
1
- // (C) 2022-2023 GoodData Corporation
1
+ // (C) 2022-2026 GoodData Corporation
2
2
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultSaveButton.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/topBar/buttonBar/button/saveButton/DefaultSaveButton.tsx"],"names":[],"mappings":"AAwBA,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,gBAAgB,CAoDrD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,EAC9B,SAAS,EACT,SAAS,EACT,QAAQ,EACR,WAAW,EACX,WAAW,EACd,EAAE,gBAAgB,kDAoClB"}
1
+ {"version":3,"file":"DefaultSaveButton.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/topBar/buttonBar/button/saveButton/DefaultSaveButton.tsx"],"names":[],"mappings":"AAyBA,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,gBAAgB,CAqDrD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,EAC9B,SAAS,EACT,SAAS,EACT,QAAQ,EACR,WAAW,EACX,WAAW,EACd,EAAE,gBAAgB,kDAoClB"}