@gooddata/sdk-ui-dashboard 10.33.0-alpha.40 → 10.33.0-alpha.42

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 (84) hide show
  1. package/esm/__version.d.ts +1 -1
  2. package/esm/__version.js +1 -1
  3. package/esm/model/store/config/configSelectors.d.ts +6 -0
  4. package/esm/model/store/config/configSelectors.d.ts.map +1 -1
  5. package/esm/model/store/config/configSelectors.js +8 -0
  6. package/esm/model/store/config/configSelectors.js.map +1 -1
  7. package/esm/model/store/index.d.ts +1 -1
  8. package/esm/model/store/index.d.ts.map +1 -1
  9. package/esm/model/store/index.js +1 -1
  10. package/esm/model/store/index.js.map +1 -1
  11. package/esm/presentation/localization/bundles/en-US.json +70 -0
  12. package/esm/presentation/localization/bundles/en-US.localization-bundle.d.ts +70 -0
  13. package/esm/presentation/localization/bundles/en-US.localization-bundle.d.ts.map +1 -1
  14. package/esm/presentation/localization/bundles/en-US.localization-bundle.js +70 -0
  15. package/esm/presentation/localization/bundles/en-US.localization-bundle.js.map +1 -1
  16. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.d.ts.map +1 -1
  17. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.js +12 -5
  18. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.js.map +1 -1
  19. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentsList.d.ts +10 -0
  20. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentsList.d.ts.map +1 -0
  21. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentsList.js +64 -0
  22. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentsList.js.map +1 -0
  23. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentsSelect.d.ts +20 -0
  24. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentsSelect.d.ts.map +1 -0
  25. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentsSelect.js +82 -0
  26. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentsSelect.js.map +1 -0
  27. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/DashboardAttachments.d.ts +6 -11
  28. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/DashboardAttachments.d.ts.map +1 -1
  29. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/DashboardAttachments.js +31 -37
  30. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/DashboardAttachments.js.map +1 -1
  31. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/WidgetAttachments.d.ts +6 -16
  32. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/WidgetAttachments.d.ts.map +1 -1
  33. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/WidgetAttachments.js +30 -27
  34. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/WidgetAttachments.js.map +1 -1
  35. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/AttachmentFilters.d.ts.map +1 -0
  36. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/AttachmentFilters.js.map +1 -0
  37. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/AttachmentFiltersList.d.ts.map +1 -0
  38. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/{Attachments → AttachmentsOld}/AttachmentFiltersList.js +1 -1
  39. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/AttachmentFiltersList.js.map +1 -0
  40. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/{Attachments → AttachmentsOld}/AttachmentItems.d.ts +2 -2
  41. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/AttachmentItems.d.ts.map +1 -0
  42. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/AttachmentItems.js.map +1 -0
  43. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/AttachmentsWrapper.d.ts +5 -0
  44. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/AttachmentsWrapper.d.ts.map +1 -0
  45. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/AttachmentsWrapper.js +10 -0
  46. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/AttachmentsWrapper.js.map +1 -0
  47. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/DashboardAttachments.d.ts +17 -0
  48. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/DashboardAttachments.d.ts.map +1 -0
  49. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/DashboardAttachments.js +47 -0
  50. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/DashboardAttachments.js.map +1 -0
  51. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/WidgetAttachments.d.ts +20 -0
  52. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/WidgetAttachments.d.ts.map +1 -0
  53. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/WidgetAttachments.js +33 -0
  54. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/WidgetAttachments.js.map +1 -0
  55. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useEditScheduledEmail.d.ts +10 -5
  56. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useEditScheduledEmail.d.ts.map +1 -1
  57. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useEditScheduledEmail.js +76 -19
  58. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/hooks/useEditScheduledEmail.js.map +1 -1
  59. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/types.d.ts +2 -2
  60. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/types.d.ts.map +1 -1
  61. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/types.js +1 -1
  62. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/types.js.map +1 -1
  63. package/esm/sdk-ui-dashboard.d.ts +7 -0
  64. package/package.json +15 -15
  65. package/styles/css/dashboard.css +87 -1
  66. package/styles/css/dashboard.css.map +1 -1
  67. package/styles/css/icons.css +17 -9
  68. package/styles/css/icons.css.map +1 -1
  69. package/styles/css/main.css +104 -10
  70. package/styles/css/main.css.map +1 -1
  71. package/styles/css/notifications_channels_dialog.css +87 -1
  72. package/styles/css/notifications_channels_dialog.css.map +1 -1
  73. package/styles/scss/icons.scss +71 -73
  74. package/styles/scss/notifications_channels_dialog.scss +88 -0
  75. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentFilters.d.ts.map +0 -1
  76. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentFilters.js.map +0 -1
  77. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentFiltersList.d.ts.map +0 -1
  78. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentFiltersList.js.map +0 -1
  79. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentItems.d.ts.map +0 -1
  80. package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentItems.js.map +0 -1
  81. /package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/{Attachments → AttachmentsOld}/AttachmentFilters.d.ts +0 -0
  82. /package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/{Attachments → AttachmentsOld}/AttachmentFilters.js +0 -0
  83. /package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/{Attachments → AttachmentsOld}/AttachmentFiltersList.d.ts +0 -0
  84. /package/esm/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/{Attachments → AttachmentsOld}/AttachmentItems.js +0 -0
@@ -0,0 +1,82 @@
1
+ // (C) 2024-2025 GoodData Corporation
2
+ import React, { useState } from "react";
3
+ import { Button, ContentDivider, Dropdown, isEscapeKey, Message, UiIconButton, } from "@gooddata/sdk-ui-kit";
4
+ import { FormattedMessage, useIntl } from "react-intl";
5
+ export const widgetAttachmentLabels = {
6
+ PNG: React.createElement(FormattedMessage, { id: "scheduledEmail.attachmentFormat.widget.png" }),
7
+ PPTX: React.createElement(FormattedMessage, { id: "scheduledEmail.attachmentFormat.widget.pptx" }),
8
+ PDF: React.createElement(FormattedMessage, { id: "scheduledEmail.attachmentFormat.widget.pdf" }),
9
+ XLSX: React.createElement(FormattedMessage, { id: "scheduledEmail.attachmentFormat.widget.formattedXLSX" }),
10
+ CSV: React.createElement(FormattedMessage, { id: "scheduledEmail.attachmentFormat.widget.formattedCSV" }),
11
+ CSV_RAW: React.createElement(FormattedMessage, { id: "scheduledEmail.attachmentFormat.widget.rawCSV" }),
12
+ HTML: "",
13
+ };
14
+ export const dashboardAttachmentLabels = {
15
+ PPTX: React.createElement(FormattedMessage, { id: "scheduledEmail.attachmentFormat.dashboard.pptx" }),
16
+ PDF: React.createElement(FormattedMessage, { id: "scheduledEmail.attachmentFormat.dashboard.pdf" }),
17
+ XLSX: React.createElement(FormattedMessage, { id: "scheduledEmail.attachmentFormat.dashboard.formattedXLSX" }),
18
+ PDF_SLIDES: React.createElement(FormattedMessage, { id: "scheduledEmail.attachmentFormat.dashboard.pdfSlides" }),
19
+ };
20
+ export const attachmentIcons = {
21
+ PNG: "gd-icon-type-image",
22
+ PPTX: "gd-icon-type-slides",
23
+ PDF: "gd-icon-type-pdf",
24
+ XLSX: "gd-icon-type-sheet",
25
+ CSV: "gd-icon-type-csv-formatted",
26
+ CSV_RAW: "gd-icon-type-csv-raw",
27
+ PDF_SLIDES: "gd-icon-type-pdf",
28
+ HTML: "",
29
+ };
30
+ const DROPDOWN_ALIGN_POINTS = [
31
+ {
32
+ align: "bc tc",
33
+ offset: { x: 0, y: 0 },
34
+ },
35
+ {
36
+ align: "tc bc",
37
+ offset: { x: 0, y: 0 },
38
+ },
39
+ ];
40
+ export function AttachmentsSelect({ attachments: initialAttachments, closeOnParentScroll, overlayPositionType, onChange, mode, }) {
41
+ const [attachments, setAttachments] = useState(initialAttachments);
42
+ const intl = useIntl();
43
+ const handleFormatChange = (format) => {
44
+ setAttachments(attachments.map((item) => (item.type === format ? { ...item, selected: !item.selected } : item)));
45
+ };
46
+ const isSomeSelected = attachments.some((item) => item.selected);
47
+ return (React.createElement(React.Fragment, null,
48
+ React.createElement(Dropdown, { closeOnParentScroll: closeOnParentScroll, overlayPositionType: overlayPositionType, alignPoints: DROPDOWN_ALIGN_POINTS, autofocusOnOpen: true, renderButton: ({ toggleDropdown, buttonRef }) => (React.createElement(UiIconButton, { icon: "plus", label: intl.formatMessage({
49
+ id: "dialogs.automation.filters.add",
50
+ }), onClick: toggleDropdown, variant: "popout", ref: buttonRef })), renderBody: ({ closeDropdown }) => (React.createElement("div", { className: "gd-attachment-settings-dropdown", onKeyDown: (e) => {
51
+ if (isEscapeKey(e)) {
52
+ e.stopPropagation();
53
+ closeDropdown();
54
+ }
55
+ } },
56
+ React.createElement("div", { className: "gd-list-title" },
57
+ React.createElement(FormattedMessage, { id: "dialogs.schedule.management.attachments.title" }),
58
+ React.createElement("div", { className: "gd-close-button" },
59
+ React.createElement(Button, { className: "gd-button-link gd-button-icon-only gd-icon-cross s-dialog-close-button", value: "", onClick: closeDropdown, accessibilityConfig: {
60
+ ariaLabel: intl.formatMessage({ id: "close" }),
61
+ } }))),
62
+ React.createElement("div", { className: "gd-attachment-types-content" },
63
+ attachments.map((item) => (React.createElement("div", { className: "gd-attachment-type-item", key: item.type },
64
+ React.createElement("label", { className: "input-checkbox-label" },
65
+ React.createElement("input", { type: "checkbox", className: "input-checkbox", checked: item.selected, onChange: () => handleFormatChange(item.type) }),
66
+ React.createElement("span", { className: "input-label-text" },
67
+ React.createElement("span", { className: `gd-attachment-type-label ${attachmentIcons[item.type]}` }, mode === "widget"
68
+ ? widgetAttachmentLabels[item.type]
69
+ : dashboardAttachmentLabels[item.type])))))),
70
+ !isSomeSelected && (React.createElement(Message, { type: "warning" },
71
+ React.createElement(FormattedMessage, { id: "scheduledEmail.attachments.warning.noAttachmentsSelected", values: {
72
+ strong: (chunks) => React.createElement("strong", null, chunks),
73
+ } })))),
74
+ React.createElement(ContentDivider, { className: "gd-divider-without-margin" }),
75
+ React.createElement("div", { className: "gd-attachment-settings-dropdown-footer" },
76
+ React.createElement(Button, { value: intl.formatMessage({ id: "cancel" }), className: "gd-button-secondary", onClick: closeDropdown }),
77
+ React.createElement(Button, { value: intl.formatMessage({ id: "save" }), className: "gd-button-action", onClick: () => {
78
+ onChange(attachments);
79
+ closeDropdown();
80
+ }, disabled: !isSomeSelected })))) })));
81
+ }
82
+ //# sourceMappingURL=AttachmentsSelect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AttachmentsSelect.js","sourceRoot":"","sources":["../../../../../../src/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/AttachmentsSelect.tsx"],"names":[],"mappings":"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"}
@@ -1,17 +1,12 @@
1
1
  import React from "react";
2
- import { FilterContextItem, IAutomationMetadataObject } from "@gooddata/sdk-model";
3
- import { OverlayPositionType } from "@gooddata/sdk-ui-kit";
4
- import { IAttachmentFilterInfo } from "../../hooks/useFiltersForDashboardScheduledExportInfo.js";
2
+ import { DashboardAttachmentType, FilterContextItem, IExportDefinitionVisualizationObjectSettings } from "@gooddata/sdk-model";
5
3
  export interface IDashboardAttachmentsProps {
6
- scheduledExportToEdit?: IAutomationMetadataObject;
7
- dashboardSelected: boolean;
8
- areDashboardFiltersChanged: boolean;
4
+ selectedAttachments: DashboardAttachmentType[];
9
5
  dashboardFilters?: FilterContextItem[];
10
6
  isCrossFiltering: boolean;
11
- filtersToDisplayInfo: IAttachmentFilterInfo[];
12
- onDashboardAttachmentsSelectionChange: (dashboardSelected: boolean, filters?: FilterContextItem[]) => void;
13
- enableAutomationFilterContext?: boolean;
14
- overlayPositionType?: OverlayPositionType;
7
+ onDashboardAttachmentsChange: (formats: DashboardAttachmentType[], filters?: FilterContextItem[]) => void;
8
+ xlsxSettings: IExportDefinitionVisualizationObjectSettings;
9
+ onXlsxSettingsChange: (settings: IExportDefinitionVisualizationObjectSettings) => void;
15
10
  }
16
- export declare const DashboardAttachments: (props: IDashboardAttachmentsProps) => React.JSX.Element;
11
+ export declare const DashboardAttachments: ({ dashboardFilters, isCrossFiltering, onDashboardAttachmentsChange, selectedAttachments, xlsxSettings, onXlsxSettingsChange, }: IDashboardAttachmentsProps) => React.JSX.Element;
17
12
  //# sourceMappingURL=DashboardAttachments.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DashboardAttachments.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/DashboardAttachments.tsx"],"names":[],"mappings":"AACA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAEnD,OAAO,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AACnF,OAAO,EAAW,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAIpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0DAA0D,CAAC;AAGjG,MAAM,WAAW,0BAA0B;IACvC,qBAAqB,CAAC,EAAE,yBAAyB,CAAC;IAClD,iBAAiB,EAAE,OAAO,CAAC;IAC3B,0BAA0B,EAAE,OAAO,CAAC;IACpC,gBAAgB,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACvC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,oBAAoB,EAAE,qBAAqB,EAAE,CAAC;IAC9C,qCAAqC,EAAE,CACnC,iBAAiB,EAAE,OAAO,EAC1B,OAAO,CAAC,EAAE,iBAAiB,EAAE,KAC5B,IAAI,CAAC;IACV,6BAA6B,CAAC,EAAE,OAAO,CAAC;IACxC,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;CAC7C;AAED,eAAO,MAAM,oBAAoB,UAAW,0BAA0B,sBAmFrE,CAAC"}
1
+ {"version":3,"file":"DashboardAttachments.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/DashboardAttachments.tsx"],"names":[],"mappings":"AACA,OAAO,KAA4B,MAAM,OAAO,CAAC;AACjD,OAAO,EACH,uBAAuB,EACvB,iBAAiB,EACjB,4CAA4C,EAC/C,MAAM,qBAAqB,CAAC;AAS7B,MAAM,WAAW,0BAA0B;IACvC,mBAAmB,EAAE,uBAAuB,EAAE,CAAC;IAC/C,gBAAgB,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACvC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,4BAA4B,EAAE,CAAC,OAAO,EAAE,uBAAuB,EAAE,EAAE,OAAO,CAAC,EAAE,iBAAiB,EAAE,KAAK,IAAI,CAAC;IAC1G,YAAY,EAAE,4CAA4C,CAAC;IAC3D,oBAAoB,EAAE,CAAC,QAAQ,EAAE,4CAA4C,KAAK,IAAI,CAAC;CAC1F;AAED,eAAO,MAAM,oBAAoB,mIAO9B,0BAA0B,sBA2D5B,CAAC"}
@@ -1,45 +1,39 @@
1
1
  // (C) 2019-2025 GoodData Corporation
2
- import React, { useState } from "react";
2
+ import React, { useRef } from "react";
3
+ import { AttachmentsWrapper } from "./AttachmentsWrapper.js";
4
+ import { AttachmentsSelect } from "./AttachmentsSelect.js";
5
+ import { AttachmentsList } from "./AttachmentsList.js";
3
6
  import { FormattedMessage } from "react-intl";
4
7
  import { Message } from "@gooddata/sdk-ui-kit";
5
- import { AttachmentFilters } from "./AttachmentFilters.js";
6
- import { getAutomationDashboardFilters } from "../../../../../_staging/automation/index.js";
7
- import { AttachmentDashboard } from "./AttachmentItems.js";
8
- import { AttachmentsWrapper } from "./AttachmentsWrapper.js";
9
- export const DashboardAttachments = (props) => {
10
- const { dashboardSelected, scheduledExportToEdit, areDashboardFiltersChanged, dashboardFilters, isCrossFiltering, filtersToDisplayInfo, onDashboardAttachmentsSelectionChange, enableAutomationFilterContext, overlayPositionType, } = props;
11
- /**
12
- * When editing a schedule, we need to get the filters from the export definition and we don't care
13
- * about the actual filters on the dashboard.
14
- */
15
- const savedFilters = getAutomationDashboardFilters(scheduledExportToEdit);
16
- const isEditing = !!scheduledExportToEdit;
17
- const [attachmentFilterType, setAttachmentFilterType] = useState(
18
- /**
19
- * We use "edited" by default when creating a new schedule or editing
20
- * an existing schedule with filters.
21
- * "default" is used when editing without filters.
22
- */
23
- !isEditing || savedFilters ? "edited" : "default");
24
- const showAttachmentFilters = enableAutomationFilterContext
25
- ? false
26
- : isEditing
27
- ? attachmentFilterType !== "default"
28
- : areDashboardFiltersChanged && dashboardSelected;
29
- const includeFilters = attachmentFilterType === "edited" && areDashboardFiltersChanged;
30
- const handleAttachmentFilterTypeChange = (type) => {
31
- const includeFilters = type === "edited" && areDashboardFiltersChanged;
32
- setAttachmentFilterType(type);
33
- onDashboardAttachmentsSelectionChange(dashboardSelected, includeFilters ? dashboardFilters : undefined);
8
+ const SUPPORTED_DASHBOARD_ATTACHMENTS = ["PDF", "PDF_SLIDES", "PPTX", "XLSX"];
9
+ export const DashboardAttachments = ({ dashboardFilters, isCrossFiltering, onDashboardAttachmentsChange, selectedAttachments, xlsxSettings, onXlsxSettingsChange, }) => {
10
+ const attachmentListRef = useRef(null);
11
+ const handleDashboardAttachmentSelectionSave = (formats) => {
12
+ onDashboardAttachmentsChange(formats, dashboardFilters);
13
+ };
14
+ const handleDelete = (attachment) => {
15
+ const newAttachments = selectedAttachments.filter((att) => att !== attachment);
16
+ onDashboardAttachmentsChange(newAttachments, dashboardFilters);
34
17
  };
35
- const handleDashboardAttachmentSelectionChange = () => {
36
- onDashboardAttachmentsSelectionChange(!dashboardSelected, includeFilters ? dashboardFilters : undefined);
18
+ const handleChange = (attachments) => {
19
+ const formats = attachments
20
+ .filter((attachment) => attachment.selected && SUPPORTED_DASHBOARD_ATTACHMENTS.includes(attachment.type))
21
+ .map((attachment) => attachment.type);
22
+ handleDashboardAttachmentSelectionSave(formats);
23
+ if (attachmentListRef.current) {
24
+ setTimeout(() => {
25
+ attachmentListRef.current?.scrollIntoView({ behavior: "smooth", block: "nearest" });
26
+ }, 100);
27
+ }
37
28
  };
38
- return (React.createElement(AttachmentsWrapper, null,
39
- React.createElement("div", { className: "gd-attachment-list" },
40
- React.createElement(AttachmentDashboard, { disabled: true, pdfSelected: dashboardSelected, onSelectionChange: handleDashboardAttachmentSelectionChange }),
41
- React.createElement(AttachmentFilters, { filterType: attachmentFilterType, onChange: handleAttachmentFilterTypeChange, hidden: !showAttachmentFilters, disabled: isEditing, filters: filtersToDisplayInfo, overlayPositionType: overlayPositionType }),
42
- isCrossFiltering && dashboardSelected ? (React.createElement(Message, { type: "progress", className: "gd-attachment-list-message" },
29
+ return (React.createElement(AttachmentsWrapper, { key: selectedAttachments.join() },
30
+ React.createElement("div", { className: "gd-attachment-list", ref: attachmentListRef },
31
+ React.createElement(AttachmentsList, { attachments: selectedAttachments, onDelete: handleDelete, xlsxSettings: xlsxSettings, onXlsxSettingsChange: onXlsxSettingsChange, mode: "dashboard" }),
32
+ React.createElement(AttachmentsSelect, { key: selectedAttachments.join(), attachments: SUPPORTED_DASHBOARD_ATTACHMENTS.map((format) => ({
33
+ type: format,
34
+ selected: selectedAttachments.includes(format),
35
+ })), onChange: handleChange, mode: "dashboard" }),
36
+ isCrossFiltering && selectedAttachments.length > 0 ? (React.createElement(Message, { type: "progress", className: "gd-attachment-list-message" },
43
37
  React.createElement(FormattedMessage, { id: "dialogs.schedule.management.attachments.message", values: {
44
38
  strong: (chunks) => React.createElement("strong", null, chunks),
45
39
  } }))) : null)));
@@ -1 +1 @@
1
- {"version":3,"file":"DashboardAttachments.js","sourceRoot":"","sources":["../../../../../../src/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/DashboardAttachments.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,EAAE,EAAa,QAAQ,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,OAAO,EAAE,OAAO,EAAuB,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAwB,MAAM,wBAAwB,CAAC;AACjF,OAAO,EAAE,6BAA6B,EAAE,MAAM,6CAA6C,CAAC;AAC5F,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAiB7D,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,KAAiC,EAAE,EAAE;IACtE,MAAM,EACF,iBAAiB,EACjB,qBAAqB,EACrB,0BAA0B,EAC1B,gBAAgB,EAChB,gBAAgB,EAChB,oBAAoB,EACpB,qCAAqC,EACrC,6BAA6B,EAC7B,mBAAmB,GACtB,GAAG,KAAK,CAAC;IAEV;;;OAGG;IACH,MAAM,YAAY,GAAG,6BAA6B,CAAC,qBAAqB,CAAC,CAAC;IAE1E,MAAM,SAAS,GAAG,CAAC,CAAC,qBAAqB,CAAC;IAE1C,MAAM,CAAC,oBAAoB,EAAE,uBAAuB,CAAC,GAAG,QAAQ;IAC5D;;;;OAIG;IACH,CAAC,SAAS,IAAI,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CACpD,CAAC;IAEF,MAAM,qBAAqB,GAAG,6BAA6B;QACvD,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,oBAAoB,KAAK,SAAS;YACpC,CAAC,CAAC,0BAA0B,IAAI,iBAAiB,CAAC;IAEtD,MAAM,cAAc,GAAG,oBAAoB,KAAK,QAAQ,IAAI,0BAA0B,CAAC;IAEvF,MAAM,gCAAgC,GAAG,CAAC,IAA0B,EAAE,EAAE;QACpE,MAAM,cAAc,GAAG,IAAI,KAAK,QAAQ,IAAI,0BAA0B,CAAC;QACvE,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAC9B,qCAAqC,CACjC,iBAAiB,EACjB,cAAc,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAChD,CAAC;IACN,CAAC,CAAC;IAEF,MAAM,wCAAwC,GAAG,GAAG,EAAE;QAClD,qCAAqC,CACjC,CAAC,iBAAiB,EAClB,cAAc,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAChD,CAAC;IACN,CAAC,CAAC;IAEF,OAAO,CACH,oBAAC,kBAAkB;QACf,6BAAK,SAAS,EAAC,oBAAoB;YAC/B,oBAAC,mBAAmB,IAChB,QAAQ,QACR,WAAW,EAAE,iBAAiB,EAC9B,iBAAiB,EAAE,wCAAwC,GAC7D;YACF,oBAAC,iBAAiB,IACd,UAAU,EAAE,oBAAoB,EAChC,QAAQ,EAAE,gCAAgC,EAC1C,MAAM,EAAE,CAAC,qBAAqB,EAC9B,QAAQ,EAAE,SAAS,EACnB,OAAO,EAAE,oBAAoB,EAC7B,mBAAmB,EAAE,mBAAmB,GAC1C;YACD,gBAAgB,IAAI,iBAAiB,CAAC,CAAC,CAAC,CACrC,oBAAC,OAAO,IAAC,IAAI,EAAC,UAAU,EAAC,SAAS,EAAC,4BAA4B;gBAC3D,oBAAC,gBAAgB,IACb,EAAE,EAAC,iDAAiD,EACpD,MAAM,EAAE;wBACJ,MAAM,EAAE,CAAC,MAAiB,EAAE,EAAE,CAAC,oCAAS,MAAM,CAAU;qBAC3D,GACH,CACI,CACb,CAAC,CAAC,CAAC,IAAI,CACN,CACW,CACxB,CAAC;AACN,CAAC,CAAC"}
1
+ {"version":3,"file":"DashboardAttachments.js","sourceRoot":"","sources":["../../../../../../src/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/DashboardAttachments.tsx"],"names":[],"mappings":"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"}
@@ -1,20 +1,10 @@
1
1
  import React from "react";
2
- import { IAutomationMetadataObject, IExportDefinitionVisualizationObjectSettings, IFilter } from "@gooddata/sdk-model";
3
- import { OverlayPositionType } from "@gooddata/sdk-ui-kit";
4
- import { WidgetAttachmentType } from "../../types.js";
2
+ import { IExportDefinitionVisualizationObjectSettings, WidgetAttachmentType } from "@gooddata/sdk-model";
5
3
  export interface IWidgetAttachmentsProps {
6
- widgetFilters?: IFilter[];
7
- areDashboardFiltersChanged: boolean;
8
- isCrossFiltering: boolean;
9
- scheduledExportToEdit?: IAutomationMetadataObject;
10
- csvSelected: boolean;
11
- xlsxSelected: boolean;
12
- settings: IExportDefinitionVisualizationObjectSettings;
13
- onWidgetAttachmentsSelectionChange: (selected: boolean, format: WidgetAttachmentType, filters?: IFilter[]) => void;
14
- onWidgetAttachmentsSettingsChange: (obj: IExportDefinitionVisualizationObjectSettings) => void;
15
- enableAutomationFilterContext?: boolean;
16
- closeOnParentScroll?: boolean;
17
- overlayPositionType?: OverlayPositionType;
4
+ selectedAttachments: WidgetAttachmentType[];
5
+ onWidgetAttachmentsChange: (formats: WidgetAttachmentType[]) => void;
6
+ xlsxSettings: IExportDefinitionVisualizationObjectSettings;
7
+ onXlsxSettingsChange: (settings: IExportDefinitionVisualizationObjectSettings) => void;
18
8
  }
19
- export declare const WidgetAttachments: (props: IWidgetAttachmentsProps) => React.JSX.Element;
9
+ export declare const WidgetAttachments: ({ selectedAttachments, onWidgetAttachmentsChange, xlsxSettings, onXlsxSettingsChange, }: IWidgetAttachmentsProps) => React.JSX.Element;
20
10
  //# sourceMappingURL=WidgetAttachments.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WidgetAttachments.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/WidgetAttachments.tsx"],"names":[],"mappings":"AACA,OAAO,KAAoB,MAAM,OAAO,CAAC;AAEzC,OAAO,EACH,yBAAyB,EACzB,4CAA4C,EAC5C,OAAO,EACV,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAW,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAEpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAGtD,MAAM,WAAW,uBAAuB;IACpC,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC;IAC1B,0BAA0B,EAAE,OAAO,CAAC;IACpC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,qBAAqB,CAAC,EAAE,yBAAyB,CAAC;IAClD,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,4CAA4C,CAAC;IACvD,kCAAkC,EAAE,CAChC,QAAQ,EAAE,OAAO,EACjB,MAAM,EAAE,oBAAoB,EAC5B,OAAO,CAAC,EAAE,OAAO,EAAE,KAClB,IAAI,CAAC;IACV,iCAAiC,EAAE,CAAC,GAAG,EAAE,4CAA4C,KAAK,IAAI,CAAC;IAC/F,6BAA6B,CAAC,EAAE,OAAO,CAAC;IACxC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;CAC7C;AAED,eAAO,MAAM,iBAAiB,UAAW,uBAAuB,sBA4D/D,CAAC"}
1
+ {"version":3,"file":"WidgetAttachments.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/WidgetAttachments.tsx"],"names":[],"mappings":"AACA,OAAO,KAAiB,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,4CAA4C,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAOzG,MAAM,WAAW,uBAAuB;IACpC,mBAAmB,EAAE,oBAAoB,EAAE,CAAC;IAC5C,yBAAyB,EAAE,CAAC,OAAO,EAAE,oBAAoB,EAAE,KAAK,IAAI,CAAC;IACrE,YAAY,EAAE,4CAA4C,CAAC;IAC3D,oBAAoB,EAAE,CAAC,QAAQ,EAAE,4CAA4C,KAAK,IAAI,CAAC;CAC1F;AAED,eAAO,MAAM,iBAAiB,4FAK3B,uBAAuB,sBAkDzB,CAAC"}
@@ -1,33 +1,36 @@
1
1
  // (C) 2019-2025 GoodData Corporation
2
- import React from "react";
3
- import { FormattedMessage } from "react-intl";
4
- import { Message } from "@gooddata/sdk-ui-kit";
5
- import { AttachmentWidgets } from "./AttachmentItems.js";
2
+ import React, { useRef } from "react";
6
3
  import { AttachmentsWrapper } from "./AttachmentsWrapper.js";
7
- export const WidgetAttachments = (props) => {
8
- const { widgetFilters, areDashboardFiltersChanged, isCrossFiltering, csvSelected, xlsxSelected, settings, scheduledExportToEdit, onWidgetAttachmentsSelectionChange, onWidgetAttachmentsSettingsChange, enableAutomationFilterContext, closeOnParentScroll, overlayPositionType, } = props;
9
- const renderFiltersMessage = !enableAutomationFilterContext;
10
- const isEditing = !!scheduledExportToEdit;
11
- const handleWidgetAttachmentSelectionChange = (format) => {
12
- if (format === "CSV") {
13
- onWidgetAttachmentsSelectionChange(!csvSelected, format, widgetFilters);
14
- }
15
- else {
16
- onWidgetAttachmentsSelectionChange(!xlsxSelected, format, widgetFilters);
4
+ import { AttachmentsSelect } from "./AttachmentsSelect.js";
5
+ import { AttachmentsList } from "./AttachmentsList.js";
6
+ const SUPPORTED_WIDGET_ATTACHMENTS = ["PNG", "PPTX", "PDF", "XLSX", "CSV"];
7
+ export const WidgetAttachments = ({ selectedAttachments, onWidgetAttachmentsChange, xlsxSettings, onXlsxSettingsChange, }) => {
8
+ const attachmentListRef = useRef(null);
9
+ const handleWidgetAttachmentSelectionSave = (formats) => {
10
+ onWidgetAttachmentsChange(formats);
11
+ };
12
+ const handleDelete = (attachment) => {
13
+ const newAttachments = selectedAttachments.filter((att) => att !== attachment);
14
+ onWidgetAttachmentsChange(newAttachments);
15
+ };
16
+ const handleChange = (attachments) => {
17
+ const formats = attachments
18
+ .filter((attachment) => attachment.selected && SUPPORTED_WIDGET_ATTACHMENTS.includes(attachment.type))
19
+ .map((attachment) => attachment.type);
20
+ handleWidgetAttachmentSelectionSave(formats);
21
+ // Scroll the attachment list into view after change
22
+ if (attachmentListRef.current) {
23
+ setTimeout(() => {
24
+ attachmentListRef.current?.scrollIntoView({ behavior: "smooth", block: "nearest" });
25
+ }, 100);
17
26
  }
18
27
  };
19
- return (React.createElement(AttachmentsWrapper, null,
20
- React.createElement("div", { className: "gd-attachment-list" },
21
- React.createElement(AttachmentWidgets, { csvSelected: csvSelected, xlsxSelected: xlsxSelected, settings: settings, onSelectionChange: handleWidgetAttachmentSelectionChange, onSettingsChange: onWidgetAttachmentsSettingsChange, closeOnParentScroll: closeOnParentScroll, overlayPositionType: overlayPositionType }),
22
- renderFiltersMessage &&
23
- (isEditing || areDashboardFiltersChanged) &&
24
- (csvSelected || xlsxSelected) ? (React.createElement("div", { className: "s-scheduled-email-attachments-filters-message" },
25
- React.createElement(FormattedMessage, { id: "dialogs.schedule.management.attachments.filters.using" }),
26
- " ",
27
- React.createElement(FormattedMessage, { id: "dialogs.schedule.management.attachments.filters.edited" }))) : null,
28
- isCrossFiltering ? (React.createElement(Message, { type: "progress", className: "gd-attachment-list-message" },
29
- React.createElement(FormattedMessage, { id: "dialogs.schedule.management.attachments.message", values: {
30
- strong: (chunks) => React.createElement("strong", null, chunks),
31
- } }))) : null)));
28
+ return (React.createElement(AttachmentsWrapper, { key: selectedAttachments.join() },
29
+ React.createElement("div", { className: "gd-attachment-list", ref: attachmentListRef },
30
+ React.createElement(AttachmentsList, { attachments: selectedAttachments, onDelete: handleDelete, xlsxSettings: xlsxSettings, onXlsxSettingsChange: onXlsxSettingsChange, mode: "widget" }),
31
+ React.createElement(AttachmentsSelect, { key: selectedAttachments.join(), attachments: SUPPORTED_WIDGET_ATTACHMENTS.map((format) => ({
32
+ type: format,
33
+ selected: selectedAttachments.includes(format),
34
+ })), onChange: handleChange, mode: "widget" }))));
32
35
  };
33
36
  //# sourceMappingURL=WidgetAttachments.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"WidgetAttachments.js","sourceRoot":"","sources":["../../../../../../src/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/WidgetAttachments.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAoB,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAM9C,OAAO,EAAE,OAAO,EAAuB,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAqB7D,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAA8B,EAAE,EAAE;IAChE,MAAM,EACF,aAAa,EACb,0BAA0B,EAC1B,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,qBAAqB,EACrB,kCAAkC,EAClC,iCAAiC,EACjC,6BAA6B,EAC7B,mBAAmB,EACnB,mBAAmB,GACtB,GAAG,KAAK,CAAC;IAEV,MAAM,oBAAoB,GAAG,CAAC,6BAA6B,CAAC;IAC5D,MAAM,SAAS,GAAG,CAAC,CAAC,qBAAqB,CAAC;IAE1C,MAAM,qCAAqC,GAAG,CAAC,MAA4B,EAAE,EAAE;QAC3E,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YACnB,kCAAkC,CAAC,CAAC,WAAW,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;QAC5E,CAAC;aAAM,CAAC;YACJ,kCAAkC,CAAC,CAAC,YAAY,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;QAC7E,CAAC;IACL,CAAC,CAAC;IAEF,OAAO,CACH,oBAAC,kBAAkB;QACf,6BAAK,SAAS,EAAC,oBAAoB;YAC/B,oBAAC,iBAAiB,IACd,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,QAAQ,EAAE,QAAQ,EAClB,iBAAiB,EAAE,qCAAqC,EACxD,gBAAgB,EAAE,iCAAiC,EACnD,mBAAmB,EAAE,mBAAmB,EACxC,mBAAmB,EAAE,mBAAmB,GAC1C;YACD,oBAAoB;gBACrB,CAAC,SAAS,IAAI,0BAA0B,CAAC;gBACzC,CAAC,WAAW,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC,CAC5B,6BAAK,SAAS,EAAC,+CAA+C;gBAC1D,oBAAC,gBAAgB,IAAC,EAAE,EAAC,uDAAuD,GAAG;gBAAC,GAAG;gBACnF,oBAAC,gBAAgB,IAAC,EAAE,EAAC,wDAAwD,GAAG,CAC9E,CACT,CAAC,CAAC,CAAC,IAAI;YACP,gBAAgB,CAAC,CAAC,CAAC,CAChB,oBAAC,OAAO,IAAC,IAAI,EAAC,UAAU,EAAC,SAAS,EAAC,4BAA4B;gBAC3D,oBAAC,gBAAgB,IACb,EAAE,EAAC,iDAAiD,EACpD,MAAM,EAAE;wBACJ,MAAM,EAAE,CAAC,MAAiB,EAAE,EAAE,CAAC,oCAAS,MAAM,CAAU;qBAC3D,GACH,CACI,CACb,CAAC,CAAC,CAAC,IAAI,CACN,CACW,CACxB,CAAC;AACN,CAAC,CAAC"}
1
+ {"version":3,"file":"WidgetAttachments.js","sourceRoot":"","sources":["../../../../../../src/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/Attachments/WidgetAttachments.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAEtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,MAAM,4BAA4B,GAA2B,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;AASnG,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,EAC9B,mBAAmB,EACnB,yBAAyB,EACzB,YAAY,EACZ,oBAAoB,GACE,EAAE,EAAE;IAC1B,MAAM,iBAAiB,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAEvD,MAAM,mCAAmC,GAAG,CAAC,OAA+B,EAAE,EAAE;QAC5E,yBAAyB,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,CAAC,UAAgC,EAAE,EAAE;QACtD,MAAM,cAAc,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,UAAU,CAAC,CAAC;QAC/E,yBAAyB,CAAC,cAAc,CAAC,CAAC;IAC9C,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,CAAC,WAAgE,EAAE,EAAE;QACtF,MAAM,OAAO,GAAG,WAAW;aACtB,MAAM,CACH,CAAC,UAAU,EAAgE,EAAE,CACzE,UAAU,CAAC,QAAQ,IAAI,4BAA4B,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CACpF;aACA,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC1C,mCAAmC,CAAC,OAAO,CAAC,CAAC;QAC7C,oDAAoD;QACpD,IAAI,iBAAiB,CAAC,OAAO,EAAE,CAAC;YAC5B,UAAU,CAAC,GAAG,EAAE;gBACZ,iBAAiB,CAAC,OAAO,EAAE,cAAc,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;YACxF,CAAC,EAAE,GAAG,CAAC,CAAC;QACZ,CAAC;IACL,CAAC,CAAC;IAEF,OAAO,CACH,oBAAC,kBAAkB,IAAC,GAAG,EAAE,mBAAmB,CAAC,IAAI,EAAE;QAC/C,6BAAK,SAAS,EAAC,oBAAoB,EAAC,GAAG,EAAE,iBAAiB;YACtD,oBAAC,eAAe,IACZ,WAAW,EAAE,mBAAmB,EAChC,QAAQ,EAAE,YAAY,EACtB,YAAY,EAAE,YAAY,EAC1B,oBAAoB,EAAE,oBAAoB,EAC1C,IAAI,EAAC,QAAQ,GACf;YACF,oBAAC,iBAAiB,IACd,GAAG,EAAE,mBAAmB,CAAC,IAAI,EAAE,EAC/B,WAAW,EAAE,4BAA4B,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;oBACvD,IAAI,EAAE,MAAM;oBACZ,QAAQ,EAAE,mBAAmB,CAAC,QAAQ,CAAC,MAAM,CAAC;iBACjD,CAAC,CAAC,EACH,QAAQ,EAAE,YAAY,EACtB,IAAI,EAAC,QAAQ,GACf,CACA,CACW,CACxB,CAAC;AACN,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AttachmentFilters.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/AttachmentFilters.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAmB,MAAM,OAAO,CAAC;AACxC,OAAO,EAOH,mBAAmB,EACtB,MAAM,sBAAsB,CAAC;AAI9B,OAAO,EAAE,qBAAqB,EAAE,MAAM,0DAA0D,CAAC;AAajG,UAAU,uBAAuB;IAC7B,UAAU,EAAE,oBAAoB,CAAC;IACjC,QAAQ,EAAE,CAAC,IAAI,EAAE,oBAAoB,KAAK,IAAI,CAAC;IAC/C;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,OAAO,CAAC,EAAE,qBAAqB,EAAE,CAAC;IAClC;;OAEG;IACH,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;CAC7C;AAED;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG,QAAQ,GAAG,SAAS,CAAC;AAOxD,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAqG/D,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AttachmentFilters.js","sourceRoot":"","sources":["../../../../../../src/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/AttachmentFilters.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AttachmentFiltersList.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/AttachmentFiltersList.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,qBAAqB,EAAE,MAAM,0DAA0D,CAAC;AAEjG,UAAU,2BAA2B;IACjC,OAAO,CAAC,EAAE,qBAAqB,EAAE,CAAC;CACrC;AAED,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC,2BAA2B,CAYvE,CAAC"}
@@ -1,4 +1,4 @@
1
- // (C) 2024 GoodData Corporation
1
+ // (C) 2024-2025 GoodData Corporation
2
2
  import React from "react";
3
3
  export const AttachmentFiltersList = ({ filters }) => {
4
4
  if (!filters) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AttachmentFiltersList.js","sourceRoot":"","sources":["../../../../../../src/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/AttachmentFiltersList.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AAErC,OAAO,KAAK,MAAM,OAAO,CAAC;AAO1B,MAAM,CAAC,MAAM,qBAAqB,GAA0C,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;IACxF,IAAI,CAAC,OAAO,EAAE,CAAC;QACX,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,OAAO,CACH,6BAAK,SAAS,EAAC,4BAA4B,IACtC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CACrB,oBAAC,cAAc,IAAC,GAAG,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,GAAI,CACrF,CAAC,CACA,CACT,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,cAAc,GAAkD,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC1F,OAAO,CACH,6BAAK,SAAS,EAAC,iCAAiC;QAC5C,6BAAK,SAAS,EAAC,uCAAuC,EAAC,KAAK,EAAE,QAAQ,IACjE,KAAK,CACJ;QACN,6BAAK,SAAS,EAAC,0CAA0C,EAAC,KAAK,EAAE,QAAQ,IACpE,QAAQ,CACP,CACJ,CACT,CAAC;AACN,CAAC,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import React from "react";
2
2
  import { OverlayPositionType } from "@gooddata/sdk-ui-kit";
3
- import { WidgetAttachmentType } from "../../types.js";
3
+ import { OldWidgetAttachmentType } from "../../types.js";
4
4
  import { IExportDefinitionVisualizationObjectSettings } from "@gooddata/sdk-model";
5
5
  export declare const AttachmentDashboard: React.FC<{
6
6
  pdfSelected: boolean;
@@ -11,7 +11,7 @@ export declare const AttachmentWidgets: React.FC<{
11
11
  csvSelected: boolean;
12
12
  xlsxSelected: boolean;
13
13
  settings: IExportDefinitionVisualizationObjectSettings;
14
- onSelectionChange: (format: WidgetAttachmentType) => void;
14
+ onSelectionChange: (format: OldWidgetAttachmentType) => void;
15
15
  onSettingsChange: (obj: IExportDefinitionVisualizationObjectSettings) => void;
16
16
  closeOnParentScroll?: boolean;
17
17
  overlayPositionType?: OverlayPositionType;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AttachmentItems.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/AttachmentItems.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAgC,MAAM,OAAO,CAAC;AAErD,OAAO,EAOH,mBAAmB,EACtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAqB,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAE5E,OAAO,EAAE,4CAA4C,EAAE,MAAM,qBAAqB,CAAC;AAsDnF,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC;IACvC,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,MAAM,IAAI,CAAC;CACjC,CAMA,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC;IACrC,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,4CAA4C,CAAC;IACvD,iBAAiB,EAAE,CAAC,MAAM,EAAE,uBAAuB,KAAK,IAAI,CAAC;IAC7D,gBAAgB,EAAE,CAAC,GAAG,EAAE,4CAA4C,KAAK,IAAI,CAAC;IAC9E,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;CAC7C,CA4GA,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AttachmentItems.js","sourceRoot":"","sources":["../../../../../../src/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/AttachmentItems.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import React from "react";
2
+ export declare const AttachmentsWrapper: React.FC<{
3
+ children: React.ReactNode;
4
+ }>;
5
+ //# sourceMappingURL=AttachmentsWrapper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AttachmentsWrapper.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/AttachmentsWrapper.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC;IACtC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC7B,CASA,CAAC"}
@@ -0,0 +1,10 @@
1
+ // (C) 2025 GoodData Corporation
2
+ import React from "react";
3
+ import { FormattedMessage } from "react-intl";
4
+ export const AttachmentsWrapper = ({ children }) => {
5
+ return (React.createElement("fieldset", { className: "gd-input-component gd-notifications-channels-attachments s-notifications-channels-attachments" },
6
+ React.createElement("legend", { className: "gd-label" },
7
+ React.createElement(FormattedMessage, { id: "dialogs.schedule.email.attachments.label" })),
8
+ children));
9
+ };
10
+ //# sourceMappingURL=AttachmentsWrapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AttachmentsWrapper.js","sourceRoot":"","sources":["../../../../../../src/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/AttachmentsWrapper.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,CAAC,MAAM,kBAAkB,GAE1B,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;IAClB,OAAO,CACH,kCAAU,SAAS,EAAC,+FAA+F;QAC/G,gCAAQ,SAAS,EAAC,UAAU;YACxB,oBAAC,gBAAgB,IAAC,EAAE,EAAC,0CAA0C,GAAG,CAC7D;QACR,QAAQ,CACF,CACd,CAAC;AACN,CAAC,CAAC"}
@@ -0,0 +1,17 @@
1
+ import React from "react";
2
+ import { FilterContextItem, IAutomationMetadataObject } from "@gooddata/sdk-model";
3
+ import { OverlayPositionType } from "@gooddata/sdk-ui-kit";
4
+ import { IAttachmentFilterInfo } from "../../hooks/useFiltersForDashboardScheduledExportInfo.js";
5
+ export interface IDashboardAttachmentsProps {
6
+ scheduledExportToEdit?: IAutomationMetadataObject;
7
+ dashboardSelected: boolean;
8
+ areDashboardFiltersChanged: boolean;
9
+ dashboardFilters?: FilterContextItem[];
10
+ isCrossFiltering: boolean;
11
+ filtersToDisplayInfo: IAttachmentFilterInfo[];
12
+ onDashboardAttachmentsSelectionChange: (dashboardSelected: boolean, filters?: FilterContextItem[]) => void;
13
+ enableAutomationFilterContext?: boolean;
14
+ overlayPositionType?: OverlayPositionType;
15
+ }
16
+ export declare const DashboardAttachments: (props: IDashboardAttachmentsProps) => React.JSX.Element;
17
+ //# sourceMappingURL=DashboardAttachments.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DashboardAttachments.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/DashboardAttachments.tsx"],"names":[],"mappings":"AACA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAEnD,OAAO,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AACnF,OAAO,EAAW,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAIpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0DAA0D,CAAC;AAGjG,MAAM,WAAW,0BAA0B;IACvC,qBAAqB,CAAC,EAAE,yBAAyB,CAAC;IAClD,iBAAiB,EAAE,OAAO,CAAC;IAC3B,0BAA0B,EAAE,OAAO,CAAC;IACpC,gBAAgB,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACvC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,oBAAoB,EAAE,qBAAqB,EAAE,CAAC;IAC9C,qCAAqC,EAAE,CACnC,iBAAiB,EAAE,OAAO,EAC1B,OAAO,CAAC,EAAE,iBAAiB,EAAE,KAC5B,IAAI,CAAC;IACV,6BAA6B,CAAC,EAAE,OAAO,CAAC;IACxC,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;CAC7C;AAED,eAAO,MAAM,oBAAoB,UAAW,0BAA0B,sBAmFrE,CAAC"}
@@ -0,0 +1,47 @@
1
+ // (C) 2019-2025 GoodData Corporation
2
+ import React, { useState } from "react";
3
+ import { FormattedMessage } from "react-intl";
4
+ import { Message } from "@gooddata/sdk-ui-kit";
5
+ import { AttachmentFilters } from "./AttachmentFilters.js";
6
+ import { getAutomationDashboardFilters } from "../../../../../_staging/automation/index.js";
7
+ import { AttachmentDashboard } from "./AttachmentItems.js";
8
+ import { AttachmentsWrapper } from "./AttachmentsWrapper.js";
9
+ export const DashboardAttachments = (props) => {
10
+ const { dashboardSelected, scheduledExportToEdit, areDashboardFiltersChanged, dashboardFilters, isCrossFiltering, filtersToDisplayInfo, onDashboardAttachmentsSelectionChange, enableAutomationFilterContext, overlayPositionType, } = props;
11
+ /**
12
+ * When editing a schedule, we need to get the filters from the export definition and we don't care
13
+ * about the actual filters on the dashboard.
14
+ */
15
+ const savedFilters = getAutomationDashboardFilters(scheduledExportToEdit);
16
+ const isEditing = !!scheduledExportToEdit;
17
+ const [attachmentFilterType, setAttachmentFilterType] = useState(
18
+ /**
19
+ * We use "edited" by default when creating a new schedule or editing
20
+ * an existing schedule with filters.
21
+ * "default" is used when editing without filters.
22
+ */
23
+ !isEditing || savedFilters ? "edited" : "default");
24
+ const showAttachmentFilters = enableAutomationFilterContext
25
+ ? false
26
+ : isEditing
27
+ ? attachmentFilterType !== "default"
28
+ : areDashboardFiltersChanged && dashboardSelected;
29
+ const includeFilters = attachmentFilterType === "edited" && areDashboardFiltersChanged;
30
+ const handleAttachmentFilterTypeChange = (type) => {
31
+ const includeFilters = type === "edited" && areDashboardFiltersChanged;
32
+ setAttachmentFilterType(type);
33
+ onDashboardAttachmentsSelectionChange(dashboardSelected, includeFilters ? dashboardFilters : undefined);
34
+ };
35
+ const handleDashboardAttachmentSelectionChange = () => {
36
+ onDashboardAttachmentsSelectionChange(!dashboardSelected, includeFilters ? dashboardFilters : undefined);
37
+ };
38
+ return (React.createElement(AttachmentsWrapper, null,
39
+ React.createElement("div", { className: "gd-attachment-list-old" },
40
+ React.createElement(AttachmentDashboard, { disabled: true, pdfSelected: dashboardSelected, onSelectionChange: handleDashboardAttachmentSelectionChange }),
41
+ React.createElement(AttachmentFilters, { filterType: attachmentFilterType, onChange: handleAttachmentFilterTypeChange, hidden: !showAttachmentFilters, disabled: isEditing, filters: filtersToDisplayInfo, overlayPositionType: overlayPositionType }),
42
+ isCrossFiltering && dashboardSelected ? (React.createElement(Message, { type: "progress", className: "gd-attachment-list-message" },
43
+ React.createElement(FormattedMessage, { id: "dialogs.schedule.management.attachments.message", values: {
44
+ strong: (chunks) => React.createElement("strong", null, chunks),
45
+ } }))) : null)));
46
+ };
47
+ //# sourceMappingURL=DashboardAttachments.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DashboardAttachments.js","sourceRoot":"","sources":["../../../../../../src/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/DashboardAttachments.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,EAAE,EAAa,QAAQ,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,OAAO,EAAE,OAAO,EAAuB,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAwB,MAAM,wBAAwB,CAAC;AACjF,OAAO,EAAE,6BAA6B,EAAE,MAAM,6CAA6C,CAAC;AAC5F,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAiB7D,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,KAAiC,EAAE,EAAE;IACtE,MAAM,EACF,iBAAiB,EACjB,qBAAqB,EACrB,0BAA0B,EAC1B,gBAAgB,EAChB,gBAAgB,EAChB,oBAAoB,EACpB,qCAAqC,EACrC,6BAA6B,EAC7B,mBAAmB,GACtB,GAAG,KAAK,CAAC;IAEV;;;OAGG;IACH,MAAM,YAAY,GAAG,6BAA6B,CAAC,qBAAqB,CAAC,CAAC;IAE1E,MAAM,SAAS,GAAG,CAAC,CAAC,qBAAqB,CAAC;IAE1C,MAAM,CAAC,oBAAoB,EAAE,uBAAuB,CAAC,GAAG,QAAQ;IAC5D;;;;OAIG;IACH,CAAC,SAAS,IAAI,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CACpD,CAAC;IAEF,MAAM,qBAAqB,GAAG,6BAA6B;QACvD,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,oBAAoB,KAAK,SAAS;YACpC,CAAC,CAAC,0BAA0B,IAAI,iBAAiB,CAAC;IAEtD,MAAM,cAAc,GAAG,oBAAoB,KAAK,QAAQ,IAAI,0BAA0B,CAAC;IAEvF,MAAM,gCAAgC,GAAG,CAAC,IAA0B,EAAE,EAAE;QACpE,MAAM,cAAc,GAAG,IAAI,KAAK,QAAQ,IAAI,0BAA0B,CAAC;QACvE,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAC9B,qCAAqC,CACjC,iBAAiB,EACjB,cAAc,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAChD,CAAC;IACN,CAAC,CAAC;IAEF,MAAM,wCAAwC,GAAG,GAAG,EAAE;QAClD,qCAAqC,CACjC,CAAC,iBAAiB,EAClB,cAAc,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAChD,CAAC;IACN,CAAC,CAAC;IAEF,OAAO,CACH,oBAAC,kBAAkB;QACf,6BAAK,SAAS,EAAC,wBAAwB;YACnC,oBAAC,mBAAmB,IAChB,QAAQ,QACR,WAAW,EAAE,iBAAiB,EAC9B,iBAAiB,EAAE,wCAAwC,GAC7D;YACF,oBAAC,iBAAiB,IACd,UAAU,EAAE,oBAAoB,EAChC,QAAQ,EAAE,gCAAgC,EAC1C,MAAM,EAAE,CAAC,qBAAqB,EAC9B,QAAQ,EAAE,SAAS,EACnB,OAAO,EAAE,oBAAoB,EAC7B,mBAAmB,EAAE,mBAAmB,GAC1C;YACD,gBAAgB,IAAI,iBAAiB,CAAC,CAAC,CAAC,CACrC,oBAAC,OAAO,IAAC,IAAI,EAAC,UAAU,EAAC,SAAS,EAAC,4BAA4B;gBAC3D,oBAAC,gBAAgB,IACb,EAAE,EAAC,iDAAiD,EACpD,MAAM,EAAE;wBACJ,MAAM,EAAE,CAAC,MAAiB,EAAE,EAAE,CAAC,oCAAS,MAAM,CAAU;qBAC3D,GACH,CACI,CACb,CAAC,CAAC,CAAC,IAAI,CACN,CACW,CACxB,CAAC;AACN,CAAC,CAAC"}
@@ -0,0 +1,20 @@
1
+ import React from "react";
2
+ import { IAutomationMetadataObject, IExportDefinitionVisualizationObjectSettings, IFilter } from "@gooddata/sdk-model";
3
+ import { OverlayPositionType } from "@gooddata/sdk-ui-kit";
4
+ import { OldWidgetAttachmentType } from "../../types.js";
5
+ export interface IWidgetAttachmentsProps {
6
+ widgetFilters?: IFilter[];
7
+ areDashboardFiltersChanged: boolean;
8
+ isCrossFiltering: boolean;
9
+ scheduledExportToEdit?: IAutomationMetadataObject;
10
+ csvSelected: boolean;
11
+ xlsxSelected: boolean;
12
+ settings: IExportDefinitionVisualizationObjectSettings;
13
+ onWidgetAttachmentsSelectionChange: (selected: boolean, format: OldWidgetAttachmentType, filters?: IFilter[]) => void;
14
+ onAttachmentsSettingsChange: (obj: IExportDefinitionVisualizationObjectSettings) => void;
15
+ enableAutomationFilterContext?: boolean;
16
+ closeOnParentScroll?: boolean;
17
+ overlayPositionType?: OverlayPositionType;
18
+ }
19
+ export declare const WidgetAttachments: (props: IWidgetAttachmentsProps) => React.JSX.Element;
20
+ //# sourceMappingURL=WidgetAttachments.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WidgetAttachments.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/scheduledEmail/DefaultScheduledEmailDialog/components/AttachmentsOld/WidgetAttachments.tsx"],"names":[],"mappings":"AACA,OAAO,KAAoB,MAAM,OAAO,CAAC;AAEzC,OAAO,EACH,yBAAyB,EACzB,4CAA4C,EAC5C,OAAO,EACV,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAW,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAEpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAGzD,MAAM,WAAW,uBAAuB;IACpC,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC;IAC1B,0BAA0B,EAAE,OAAO,CAAC;IACpC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,qBAAqB,CAAC,EAAE,yBAAyB,CAAC;IAClD,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,4CAA4C,CAAC;IACvD,kCAAkC,EAAE,CAChC,QAAQ,EAAE,OAAO,EACjB,MAAM,EAAE,uBAAuB,EAC/B,OAAO,CAAC,EAAE,OAAO,EAAE,KAClB,IAAI,CAAC;IACV,2BAA2B,EAAE,CAAC,GAAG,EAAE,4CAA4C,KAAK,IAAI,CAAC;IACzF,6BAA6B,CAAC,EAAE,OAAO,CAAC;IACxC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;CAC7C;AAED,eAAO,MAAM,iBAAiB,UAAW,uBAAuB,sBA4D/D,CAAC"}
@@ -0,0 +1,33 @@
1
+ // (C) 2019-2025 GoodData Corporation
2
+ import React from "react";
3
+ import { FormattedMessage } from "react-intl";
4
+ import { Message } from "@gooddata/sdk-ui-kit";
5
+ import { AttachmentWidgets } from "./AttachmentItems.js";
6
+ import { AttachmentsWrapper } from "./AttachmentsWrapper.js";
7
+ export const WidgetAttachments = (props) => {
8
+ const { widgetFilters, areDashboardFiltersChanged, isCrossFiltering, csvSelected, xlsxSelected, settings, scheduledExportToEdit, onWidgetAttachmentsSelectionChange, onAttachmentsSettingsChange, enableAutomationFilterContext, closeOnParentScroll, overlayPositionType, } = props;
9
+ const renderFiltersMessage = !enableAutomationFilterContext;
10
+ const isEditing = !!scheduledExportToEdit;
11
+ const handleWidgetAttachmentSelectionChange = (format) => {
12
+ if (format === "CSV") {
13
+ onWidgetAttachmentsSelectionChange(!csvSelected, format, widgetFilters);
14
+ }
15
+ else {
16
+ onWidgetAttachmentsSelectionChange(!xlsxSelected, format, widgetFilters);
17
+ }
18
+ };
19
+ return (React.createElement(AttachmentsWrapper, null,
20
+ React.createElement("div", { className: "gd-attachment-list-old" },
21
+ React.createElement(AttachmentWidgets, { csvSelected: csvSelected, xlsxSelected: xlsxSelected, settings: settings, onSelectionChange: handleWidgetAttachmentSelectionChange, onSettingsChange: onAttachmentsSettingsChange, closeOnParentScroll: closeOnParentScroll, overlayPositionType: overlayPositionType }),
22
+ renderFiltersMessage &&
23
+ (isEditing || areDashboardFiltersChanged) &&
24
+ (csvSelected || xlsxSelected) ? (React.createElement("div", { className: "s-scheduled-email-attachments-filters-message" },
25
+ React.createElement(FormattedMessage, { id: "dialogs.schedule.management.attachments.filters.using" }),
26
+ " ",
27
+ React.createElement(FormattedMessage, { id: "dialogs.schedule.management.attachments.filters.edited" }))) : null,
28
+ isCrossFiltering ? (React.createElement(Message, { type: "progress", className: "gd-attachment-list-message" },
29
+ React.createElement(FormattedMessage, { id: "dialogs.schedule.management.attachments.message", values: {
30
+ strong: (chunks) => React.createElement("strong", null, chunks),
31
+ } }))) : null)));
32
+ };
33
+ //# sourceMappingURL=WidgetAttachments.js.map