@gooddata/sdk-ui-dashboard 11.53.0-alpha.3 → 11.53.0-alpha.5
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.
- package/esm/__version.d.ts +1 -1
- package/esm/__version.js +1 -1
- package/esm/index.d.ts +6 -5
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +2 -2
- package/esm/presentation/automations/alerting/AlertingDialog.d.ts +2 -1
- package/esm/presentation/automations/alerting/AlertingDialog.d.ts.map +1 -1
- package/esm/presentation/automations/alerting/AlertingDialog.js +4 -3
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/AlertingDialogFilters.d.ts +8 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/AlertingDialogFilters.d.ts.map +1 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/AlertingDialogFilters.js +13 -0
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialog.d.ts.map +1 -1
- package/esm/presentation/automations/alerting/DefaultAlertingDialog/DefaultAlertingDialog.js +14 -3
- package/esm/presentation/automations/alerting/types.d.ts +71 -8
- package/esm/presentation/automations/alerting/types.d.ts.map +1 -1
- package/esm/presentation/automations/contexts/AlertingDialogContext.d.ts +9 -0
- package/esm/presentation/automations/contexts/AlertingDialogContext.d.ts.map +1 -1
- package/esm/presentation/automations/contexts/AlertingDialogContext.js +9 -0
- package/esm/presentation/automations/contexts/ScheduledEmailDialogContext.d.ts +10 -0
- package/esm/presentation/automations/contexts/ScheduledEmailDialogContext.d.ts.map +1 -1
- package/esm/presentation/automations/contexts/ScheduledEmailDialogContext.js +10 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.d.ts +2 -1
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.d.ts.map +1 -1
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/DefaultScheduledEmailDialog.js +27 -3
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/ScheduledEmailDialogFilters.d.ts +7 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/ScheduledEmailDialogFilters.d.ts.map +1 -0
- package/esm/presentation/automations/scheduledEmail/DefaultScheduledEmailDialog/components/ScheduledEmailDialogFilters.js +11 -0
- package/esm/presentation/automations/scheduledEmail/ScheduledEmailDialog.d.ts +3 -1
- package/esm/presentation/automations/scheduledEmail/ScheduledEmailDialog.d.ts.map +1 -1
- package/esm/presentation/automations/scheduledEmail/ScheduledEmailDialog.js +5 -3
- package/esm/presentation/automations/scheduledEmail/types.d.ts +141 -11
- package/esm/presentation/automations/scheduledEmail/types.d.ts.map +1 -1
- package/esm/presentation/automations/shared/automationFilters/automationParameters.d.ts +17 -1
- package/esm/presentation/automations/shared/automationFilters/automationParameters.d.ts.map +1 -1
- package/esm/presentation/automations/shared/automationFilters/useAutomationFilters.d.ts.map +1 -1
- package/esm/presentation/automations/shared/automationFilters/useAutomationFilters.js +7 -51
- package/esm/presentation/automations/shared/automationFilters/utils.d.ts +21 -0
- package/esm/presentation/automations/shared/automationFilters/utils.d.ts.map +1 -1
- package/esm/presentation/automations/shared/automationFilters/utils.js +57 -0
- package/esm/presentation/automations/shared/slots/types.d.ts +42 -0
- package/esm/presentation/automations/shared/slots/types.d.ts.map +1 -1
- package/esm/presentation/dashboard/components/DashboardRenderer.d.ts.map +1 -1
- package/esm/presentation/dashboard/components/DashboardRenderer.js +4 -1
- package/esm/presentation/dashboard/types.d.ts +20 -2
- package/esm/presentation/dashboard/types.d.ts.map +1 -1
- package/esm/presentation/dashboardContexts/DashboardComponentsContext.d.ts +4 -2
- package/esm/presentation/dashboardContexts/DashboardComponentsContext.d.ts.map +1 -1
- package/esm/presentation/dashboardContexts/DashboardComponentsContext.js +2 -0
- package/esm/presentation/dashboardContexts/DefaultDialogContextDecorator.d.ts +10 -0
- package/esm/presentation/dashboardContexts/DefaultDialogContextDecorator.d.ts.map +1 -0
- package/esm/presentation/dashboardContexts/DefaultDialogContextDecorator.js +9 -0
- package/esm/presentation/dashboardSettingsDialog/DefaultDashboardSettingsDialog.d.ts.map +1 -1
- package/esm/presentation/dashboardSettingsDialog/DefaultDashboardSettingsDialog.js +4 -4
- package/esm/sdk-ui-dashboard.d.ts +332 -17
- package/package.json +21 -21
|
@@ -26,6 +26,7 @@ import { DashboardAttributeFilterSelectionMode } from '@gooddata/sdk-model';
|
|
|
26
26
|
import { DashboardAttributeFilterSelectionType } from '@gooddata/sdk-model';
|
|
27
27
|
import { DashboardDateFilterConfigMode } from '@gooddata/sdk-model';
|
|
28
28
|
import { DashboardFiltersApplyMode } from '@gooddata/sdk-model';
|
|
29
|
+
import { DashboardParameterMode } from '@gooddata/sdk-model';
|
|
29
30
|
import { DashboardSummaryWorkflowStatus } from '@gooddata/sdk-backend-spi';
|
|
30
31
|
import { DashboardTextAttributeFilter } from '@gooddata/sdk-model';
|
|
31
32
|
import { DataViewFacade } from '@gooddata/sdk-ui';
|
|
@@ -167,6 +168,7 @@ import { INotificationChannelMetadataObjectBase } from '@gooddata/sdk-model';
|
|
|
167
168
|
import { InsightDisplayFormUsage } from '@gooddata/sdk-model';
|
|
168
169
|
import { InsightDrillDefinition } from '@gooddata/sdk-model';
|
|
169
170
|
import { IntlShape } from 'react-intl';
|
|
171
|
+
import { IParameterDefinition } from '@gooddata/sdk-model';
|
|
170
172
|
import { IParameterMetadataObject } from '@gooddata/sdk-model';
|
|
171
173
|
import { IPositiveAttributeFilter } from '@gooddata/sdk-model';
|
|
172
174
|
import { IPushData } from '@gooddata/sdk-ui';
|
|
@@ -214,6 +216,7 @@ import { ParameterValue } from '@gooddata/sdk-model';
|
|
|
214
216
|
import { Patch } from 'immer';
|
|
215
217
|
import { PayloadAction } from '@reduxjs/toolkit';
|
|
216
218
|
import { PlatformEdition } from '@gooddata/sdk-model';
|
|
219
|
+
import { Provider } from 'react';
|
|
217
220
|
import { ReactElement } from 'react';
|
|
218
221
|
import { ReactNode } from 'react';
|
|
219
222
|
import { ReactReduxContextValue } from 'react-redux';
|
|
@@ -509,12 +512,24 @@ export declare function addVisualizationToSwitcherWidgetContent(ref: ObjRef, vis
|
|
|
509
512
|
|
|
510
513
|
/**
|
|
511
514
|
* Resolves the dialog component from DashboardComponentsContext and mounts it under the
|
|
512
|
-
* alerting dialog's state contexts
|
|
515
|
+
* alerting dialog's state contexts, inside the resolved context decorator — so a decorated
|
|
516
|
+
* dialog context is what both the state seeding and the dialog (default or replacement) read.
|
|
513
517
|
*
|
|
514
518
|
* @internal
|
|
515
519
|
*/
|
|
516
520
|
export declare function AlertingDialog(props: IAlertingDialogProps): ReactElement;
|
|
517
521
|
|
|
522
|
+
/**
|
|
523
|
+
* Provides the alerting create/edit dialog context.
|
|
524
|
+
*
|
|
525
|
+
* The dashboard's connector mounts the original value. Exported so a context-decorator
|
|
526
|
+
* component (`CustomAlertingDialogContextDecoratorComponent`) can re-provide a decorated value
|
|
527
|
+
* read from `useAlertingDialogContext()`; it is not a way to run the dialog outside a dashboard.
|
|
528
|
+
*
|
|
529
|
+
* @alpha
|
|
530
|
+
*/
|
|
531
|
+
export declare const AlertingDialogContextProvider: Provider<IAlertingDialogContextValue | undefined>;
|
|
532
|
+
|
|
518
533
|
/**
|
|
519
534
|
* The exact props the default dialog renders its header with, including the dialog's
|
|
520
535
|
* initial-focus ref.
|
|
@@ -1780,6 +1795,36 @@ export declare function crossFiltering(insight: IInsight, drillDefinition: ICros
|
|
|
1780
1795
|
*/
|
|
1781
1796
|
export declare type CustomAlertingDialogComponent = ComponentType<IAlertingDialogProps>;
|
|
1782
1797
|
|
|
1798
|
+
/**
|
|
1799
|
+
* Decorates the data the alerting create/edit dialog reads.
|
|
1800
|
+
*
|
|
1801
|
+
* The dashboard mounts this component between the connector-provided dialog context and the
|
|
1802
|
+
* dialog's state model, so the value it re-provides is what both the default dialog and the
|
|
1803
|
+
* state seeding read — a wholesale `AlertingDialogComponent` replacement sees it too. Read the
|
|
1804
|
+
* current value with `useAlertingDialogContext()`, decorate the members to adjust, and
|
|
1805
|
+
* re-provide via `AlertingDialogContextProvider`:
|
|
1806
|
+
*
|
|
1807
|
+
* @example
|
|
1808
|
+
* ```tsx
|
|
1809
|
+
* function InsightDecorator({ children }: { children?: ReactNode }) {
|
|
1810
|
+
* const ctx = useAlertingDialogContext();
|
|
1811
|
+
* const insight = useMyDecoratedInsight(ctx.insight);
|
|
1812
|
+
* const decorated = useMemo(() => ({ ...ctx, insight }), [ctx, insight]);
|
|
1813
|
+
* return <AlertingDialogContextProvider value={decorated}>{children}</AlertingDialogContextProvider>;
|
|
1814
|
+
* }
|
|
1815
|
+
* // <Dashboard AlertingDialogContextDecoratorComponent={InsightDecorator} />
|
|
1816
|
+
* ```
|
|
1817
|
+
*
|
|
1818
|
+
* Pass `isLoading` through untouched: the dialog's state model defers seeding until it is
|
|
1819
|
+
* false, and a decorator that overrides it corrupts the draft seed. Define the decorator
|
|
1820
|
+
* outside render, or the dialog remounts (and reseeds) on every parent render.
|
|
1821
|
+
*
|
|
1822
|
+
* @alpha
|
|
1823
|
+
*/
|
|
1824
|
+
export declare type CustomAlertingDialogContextDecoratorComponent = ComponentType<{
|
|
1825
|
+
children?: ReactNode;
|
|
1826
|
+
}>;
|
|
1827
|
+
|
|
1783
1828
|
/**
|
|
1784
1829
|
* @alpha
|
|
1785
1830
|
*/
|
|
@@ -1989,6 +2034,41 @@ export declare type CustomSaveButtonComponent = ComponentType<ISaveButtonProps>;
|
|
|
1989
2034
|
*/
|
|
1990
2035
|
export declare type CustomScheduledEmailDialogComponent = ComponentType<IScheduledEmailDialogProps>;
|
|
1991
2036
|
|
|
2037
|
+
/**
|
|
2038
|
+
* Decorates the data the scheduled-email create/edit dialog reads.
|
|
2039
|
+
*
|
|
2040
|
+
* The dashboard mounts this component between the connector-provided dialog context and the
|
|
2041
|
+
* dialog's state model, so the value it re-provides is what both the default dialog and the
|
|
2042
|
+
* state seeding read — a wholesale `ScheduledEmailDialogComponent` replacement sees it too.
|
|
2043
|
+
* Read the current value with `useScheduledEmailDialogContext()`, decorate the members to
|
|
2044
|
+
* adjust, and re-provide via `ScheduledEmailDialogContextProvider`:
|
|
2045
|
+
*
|
|
2046
|
+
* @example
|
|
2047
|
+
* ```tsx
|
|
2048
|
+
* function ChannelsDecorator({ children }: { children?: ReactNode }) {
|
|
2049
|
+
* const ctx = useScheduledEmailDialogContext();
|
|
2050
|
+
* const notificationChannels = useMyFilteredChannels(ctx.notificationChannels);
|
|
2051
|
+
* const decorated = useMemo(() => ({ ...ctx, notificationChannels }), [ctx, notificationChannels]);
|
|
2052
|
+
* return (
|
|
2053
|
+
* <ScheduledEmailDialogContextProvider value={decorated}>
|
|
2054
|
+
* {children}
|
|
2055
|
+
* </ScheduledEmailDialogContextProvider>
|
|
2056
|
+
* );
|
|
2057
|
+
* }
|
|
2058
|
+
* // <Dashboard ScheduledEmailDialogContextDecoratorComponent={ChannelsDecorator} />
|
|
2059
|
+
* ```
|
|
2060
|
+
*
|
|
2061
|
+
* Pass `isLoading` through untouched. On scheduled email the loading state is on the ordinary
|
|
2062
|
+
* path — a widget export renders while its filters load — so a decorator that overrides it
|
|
2063
|
+
* corrupts the draft seed on every such open, not in an edge case. Define the decorator outside
|
|
2064
|
+
* render, or the dialog remounts (and reseeds) on every parent render.
|
|
2065
|
+
*
|
|
2066
|
+
* @alpha
|
|
2067
|
+
*/
|
|
2068
|
+
export declare type CustomScheduledEmailDialogContextDecoratorComponent = ComponentType<{
|
|
2069
|
+
children?: ReactNode;
|
|
2070
|
+
}>;
|
|
2071
|
+
|
|
1992
2072
|
/**
|
|
1993
2073
|
* @alpha
|
|
1994
2074
|
*/
|
|
@@ -4123,7 +4203,8 @@ export declare function DefaultSaveButton({ isVisible, isEnabled, isSaving, butt
|
|
|
4123
4203
|
* outside those providers throws at runtime.
|
|
4124
4204
|
*
|
|
4125
4205
|
* Slots render only in the fully rendered dialog: not while the dialog context reports loading,
|
|
4126
|
-
* and not while the stale-filters confirmation step is shown.
|
|
4206
|
+
* and not while the stale-filters confirmation step is shown. The Filters slot additionally
|
|
4207
|
+
* renders only while the Filters tab is selected — see {@link IScheduledEmailDialogSlots.Filters}.
|
|
4127
4208
|
*
|
|
4128
4209
|
* @alpha
|
|
4129
4210
|
*/
|
|
@@ -5762,6 +5843,20 @@ export declare interface IAlertingDialogContextValue {
|
|
|
5762
5843
|
isLoading: boolean;
|
|
5763
5844
|
}
|
|
5764
5845
|
|
|
5846
|
+
/**
|
|
5847
|
+
* Props of the default alerting dialog's filters region (the filter and parameter chips above
|
|
5848
|
+
* the form).
|
|
5849
|
+
*
|
|
5850
|
+
* @alpha
|
|
5851
|
+
*/
|
|
5852
|
+
export declare interface IAlertingDialogFiltersProps extends IAutomationDialogFiltersProps {
|
|
5853
|
+
/**
|
|
5854
|
+
* Disables the date filter chips. The default dialog disables them while the alert uses
|
|
5855
|
+
* anomaly detection.
|
|
5856
|
+
*/
|
|
5857
|
+
disableDateFilters: boolean;
|
|
5858
|
+
}
|
|
5859
|
+
|
|
5765
5860
|
/**
|
|
5766
5861
|
* Props of the default alerting dialog's header region (the title input row).
|
|
5767
5862
|
*
|
|
@@ -5781,14 +5876,17 @@ export declare interface IAlertingDialogProps {
|
|
|
5781
5876
|
/**
|
|
5782
5877
|
* In case, we are not creating new alert, but editing existing one, this is the active alert to be edited.
|
|
5783
5878
|
*
|
|
5784
|
-
* @deprecated
|
|
5879
|
+
* @deprecated has no effect since 11.51 — the dialog reads `alertToEdit` from
|
|
5880
|
+
* `useAlertingDialogContext()`. To adjust what it reads, use the
|
|
5881
|
+
* `AlertingDialogContextDecoratorComponent` dashboard prop. Prop will be removed.
|
|
5785
5882
|
*/
|
|
5786
5883
|
alertToEdit?: IAutomationMetadataObject;
|
|
5787
5884
|
/**
|
|
5788
5885
|
* Notification channels in organization
|
|
5789
5886
|
*
|
|
5790
|
-
* @deprecated
|
|
5791
|
-
*
|
|
5887
|
+
* @deprecated has no effect since 11.51 — the dialog reads `notificationChannels` from
|
|
5888
|
+
* `useAlertingDialogContext()`. To adjust what it reads, use the
|
|
5889
|
+
* `AlertingDialogContextDecoratorComponent` dashboard prop. Prop will be removed.
|
|
5792
5890
|
*/
|
|
5793
5891
|
notificationChannels?: INotificationChannelIdentifier[] | INotificationChannelMetadataObject[];
|
|
5794
5892
|
/**
|
|
@@ -5799,7 +5897,9 @@ export declare interface IAlertingDialogProps {
|
|
|
5799
5897
|
* supports insight widgets; custom widgets and nested layouts are not valid
|
|
5800
5898
|
* alert targets and were silently discarded at the connector boundary anyway.
|
|
5801
5899
|
*
|
|
5802
|
-
* @deprecated
|
|
5900
|
+
* @deprecated has no effect since 11.51 — the dialog reads `widget` from
|
|
5901
|
+
* `useAlertingDialogContext()`. To adjust what it reads, use the
|
|
5902
|
+
* `AlertingDialogContextDecoratorComponent` dashboard prop. Prop will be removed.
|
|
5803
5903
|
*/
|
|
5804
5904
|
widget?: IWidget;
|
|
5805
5905
|
/**
|
|
@@ -5807,13 +5907,17 @@ export declare interface IAlertingDialogProps {
|
|
|
5807
5907
|
*
|
|
5808
5908
|
* Note: this is available only when alerting for widget, not dashboard.
|
|
5809
5909
|
*
|
|
5810
|
-
* @deprecated
|
|
5910
|
+
* @deprecated has no effect since 11.51 — the dialog reads `insight` from
|
|
5911
|
+
* `useAlertingDialogContext()`. To adjust what it reads, use the
|
|
5912
|
+
* `AlertingDialogContextDecoratorComponent` dashboard prop (e.g. so an alert follows a
|
|
5913
|
+
* widget's date-granularity selection). Prop will be removed.
|
|
5811
5914
|
*/
|
|
5812
5915
|
insight?: IInsight;
|
|
5813
5916
|
/**
|
|
5814
5917
|
* Is alert dialog loading initial data, before it can be rendered?
|
|
5815
5918
|
*
|
|
5816
|
-
* @deprecated
|
|
5919
|
+
* @deprecated has no effect since 11.51 — the dialog reads `isLoading` from
|
|
5920
|
+
* `useAlertingDialogContext()`. Prop will be removed.
|
|
5817
5921
|
*/
|
|
5818
5922
|
isLoading?: boolean;
|
|
5819
5923
|
/**
|
|
@@ -5857,6 +5961,18 @@ export declare interface IAlertingDialogSlots {
|
|
|
5857
5961
|
* identity — see {@link ISlotProps}.
|
|
5858
5962
|
*/
|
|
5859
5963
|
Header?: ComponentType<ISlotProps<AlertingDialogHeaderDefaultProps>>;
|
|
5964
|
+
/**
|
|
5965
|
+
* Wraps or replaces the dialog's filters region (the filter and parameter chips). Must have
|
|
5966
|
+
* a stable reference identity — see {@link ISlotProps}.
|
|
5967
|
+
*
|
|
5968
|
+
* Renders only in the fully rendered dialog: not while the dialog context reports loading,
|
|
5969
|
+
* and not while the stale-filters confirmation step is shown.
|
|
5970
|
+
*
|
|
5971
|
+
* A replacement takes over computing the next filters array: `defaultProps.onFiltersChange`
|
|
5972
|
+
* expects the complete selection, so change/remove/add gestures must submit the whole
|
|
5973
|
+
* updated array, not a delta.
|
|
5974
|
+
*/
|
|
5975
|
+
Filters?: ComponentType<ISlotProps<IAlertingDialogFiltersProps>>;
|
|
5860
5976
|
}
|
|
5861
5977
|
|
|
5862
5978
|
/**
|
|
@@ -6097,6 +6213,47 @@ export declare interface IAttributesDropdownProps extends IDashboardAttributeFil
|
|
|
6097
6213
|
onParameterSelect?: (ref: IdentifierRef) => void;
|
|
6098
6214
|
}
|
|
6099
6215
|
|
|
6216
|
+
/**
|
|
6217
|
+
* Members shared by both automation dialogs' filters regions.
|
|
6218
|
+
*
|
|
6219
|
+
* @alpha
|
|
6220
|
+
*/
|
|
6221
|
+
export declare interface IAutomationDialogFiltersProps {
|
|
6222
|
+
/**
|
|
6223
|
+
* All filters the automation could select from.
|
|
6224
|
+
*/
|
|
6225
|
+
availableFilters: FilterContextItem[] | undefined;
|
|
6226
|
+
/**
|
|
6227
|
+
* The automation's current filter selection.
|
|
6228
|
+
*/
|
|
6229
|
+
selectedFilters: FilterContextItem[];
|
|
6230
|
+
/**
|
|
6231
|
+
* Replaces the selection with the complete updated array. The dialog state applies it
|
|
6232
|
+
* wholesale — change/remove/add gestures must submit the whole array, not a delta.
|
|
6233
|
+
*/
|
|
6234
|
+
onFiltersChange: (filters: FilterContextItem[]) => void;
|
|
6235
|
+
/**
|
|
6236
|
+
* Parameter chips to render. Empty or undefined while the `enableParameters` feature is off.
|
|
6237
|
+
*/
|
|
6238
|
+
parameters?: IAutomationParameter[];
|
|
6239
|
+
/**
|
|
6240
|
+
* Workspace parameters addable via the "+" menu.
|
|
6241
|
+
*/
|
|
6242
|
+
availableParameters?: IAutomationParameter[];
|
|
6243
|
+
/**
|
|
6244
|
+
* Called when a parameter is added from the "+" menu.
|
|
6245
|
+
*/
|
|
6246
|
+
onParameterAdd: (ref: IdentifierRef) => void;
|
|
6247
|
+
/**
|
|
6248
|
+
* Called when a parameter chip's value is edited.
|
|
6249
|
+
*/
|
|
6250
|
+
onParameterChange: (ref: IdentifierRef, value: ParameterValue) => void;
|
|
6251
|
+
/**
|
|
6252
|
+
* Called when a parameter chip is removed.
|
|
6253
|
+
*/
|
|
6254
|
+
onParameterDelete: (ref: IdentifierRef) => void;
|
|
6255
|
+
}
|
|
6256
|
+
|
|
6100
6257
|
/**
|
|
6101
6258
|
* Members shared by both automation dialogs' header regions.
|
|
6102
6259
|
*
|
|
@@ -6161,6 +6318,37 @@ export declare interface IAutomationFiltersTab {
|
|
|
6161
6318
|
hiddenFilters: FilterContextItem[];
|
|
6162
6319
|
}
|
|
6163
6320
|
|
|
6321
|
+
/**
|
|
6322
|
+
* A workspace parameter resolved for display and editing inside an automation (alert/schedule)
|
|
6323
|
+
* dialog. The `value` is the current effective value the headless run will capture; `definition`
|
|
6324
|
+
* picks which control renders.
|
|
6325
|
+
*
|
|
6326
|
+
* @alpha
|
|
6327
|
+
*/
|
|
6328
|
+
export declare interface IAutomationParameter {
|
|
6329
|
+
/**
|
|
6330
|
+
* Reference to the workspace parameter this row represents.
|
|
6331
|
+
*/
|
|
6332
|
+
ref: IdentifierRef;
|
|
6333
|
+
/**
|
|
6334
|
+
* Title shown on the parameter chip: the dashboard-level label when the dashboard defines one,
|
|
6335
|
+
* otherwise the workspace parameter's title, otherwise the identifier.
|
|
6336
|
+
*/
|
|
6337
|
+
title: string;
|
|
6338
|
+
/**
|
|
6339
|
+
* The current effective value — the value a headless run of the automation will capture.
|
|
6340
|
+
*/
|
|
6341
|
+
value: ParameterValue;
|
|
6342
|
+
/**
|
|
6343
|
+
* Dashboard-level mode of the parameter, controlling whether its chip is editable in the dialog.
|
|
6344
|
+
*/
|
|
6345
|
+
mode: DashboardParameterMode;
|
|
6346
|
+
/**
|
|
6347
|
+
* Resolved definition of the parameter; determines which editing control the chip renders.
|
|
6348
|
+
*/
|
|
6349
|
+
definition: IParameterDefinition;
|
|
6350
|
+
}
|
|
6351
|
+
|
|
6164
6352
|
/**
|
|
6165
6353
|
* Main context shared across all automation dialogs.
|
|
6166
6354
|
* Only fields actively consumed by migrated leaves are listed here — add fields as each leaf migrates.
|
|
@@ -8219,6 +8407,15 @@ export declare interface IDashboardCustomComponentProps {
|
|
|
8219
8407
|
* @alpha
|
|
8220
8408
|
*/
|
|
8221
8409
|
ScheduledEmailDialogComponent?: CustomScheduledEmailDialogComponent;
|
|
8410
|
+
/**
|
|
8411
|
+
* Specify component to decorate the data the scheduled email dialog reads.
|
|
8412
|
+
*
|
|
8413
|
+
* Rendered between the dialog's data context and its state model; see
|
|
8414
|
+
* `CustomScheduledEmailDialogContextDecoratorComponent` for the contract and an example.
|
|
8415
|
+
*
|
|
8416
|
+
* @alpha
|
|
8417
|
+
*/
|
|
8418
|
+
ScheduledEmailDialogContextDecoratorComponent?: CustomScheduledEmailDialogContextDecoratorComponent;
|
|
8222
8419
|
/**
|
|
8223
8420
|
* Specify component to use for rendering the scheduled email management dialog.
|
|
8224
8421
|
*
|
|
@@ -8237,6 +8434,15 @@ export declare interface IDashboardCustomComponentProps {
|
|
|
8237
8434
|
* @alpha
|
|
8238
8435
|
*/
|
|
8239
8436
|
AlertingDialogComponent?: CustomAlertingDialogComponent;
|
|
8437
|
+
/**
|
|
8438
|
+
* Specify component to decorate the data the alerting dialog reads.
|
|
8439
|
+
*
|
|
8440
|
+
* Rendered between the dialog's data context and its state model; see
|
|
8441
|
+
* `CustomAlertingDialogContextDecoratorComponent` for the contract and an example.
|
|
8442
|
+
*
|
|
8443
|
+
* @alpha
|
|
8444
|
+
*/
|
|
8445
|
+
AlertingDialogContextDecoratorComponent?: CustomAlertingDialogContextDecoratorComponent;
|
|
8240
8446
|
/**
|
|
8241
8447
|
* Specify component to use for rendering the share dialog.
|
|
8242
8448
|
*
|
|
@@ -12913,7 +13119,9 @@ export declare interface IDefaultDashboardToolbarGroupProps {
|
|
|
12913
13119
|
* @remarks
|
|
12914
13120
|
* Extends the shared {@link IScheduledEmailDialogProps} with customization only the default implementation
|
|
12915
13121
|
* supports. Slots render only in the fully rendered dialog: not while the dialog context reports
|
|
12916
|
-
* loading, and not while the stale-filters confirmation step is shown.
|
|
13122
|
+
* loading, and not while the stale-filters confirmation step is shown. The Filters slot
|
|
13123
|
+
* additionally renders only while the Filters tab is selected — see
|
|
13124
|
+
* {@link IScheduledEmailDialogSlots.Filters}.
|
|
12917
13125
|
*
|
|
12918
13126
|
* @alpha
|
|
12919
13127
|
*/
|
|
@@ -17212,6 +17420,74 @@ export declare interface IScheduledEmailDialogContextValue {
|
|
|
17212
17420
|
isLoading: boolean;
|
|
17213
17421
|
}
|
|
17214
17422
|
|
|
17423
|
+
/**
|
|
17424
|
+
* Props of the default scheduled email dialog's filters region (the Filters tab content).
|
|
17425
|
+
*
|
|
17426
|
+
* @remarks
|
|
17427
|
+
* The region is bimodal: whenever `filtersByTab` is present with more than one tab, the by-tab
|
|
17428
|
+
* members (`filtersByTab` and the `*ByTab` parameter family) drive rendering and the flat
|
|
17429
|
+
* handlers are unused; otherwise the flat members drive it and the by-tab members are unused.
|
|
17430
|
+
* `defaultProps` always carries both families so a wrap stays faithful in either mode.
|
|
17431
|
+
*
|
|
17432
|
+
* @alpha
|
|
17433
|
+
*/
|
|
17434
|
+
export declare interface IScheduledEmailDialogFiltersProps extends IAutomationDialogFiltersProps {
|
|
17435
|
+
/**
|
|
17436
|
+
* Whether the schedule stores its own filters instead of using the latest saved dashboard
|
|
17437
|
+
* filters.
|
|
17438
|
+
*/
|
|
17439
|
+
storeFilters: boolean;
|
|
17440
|
+
/**
|
|
17441
|
+
* Toggles filter (and parameter) persistence. The current filters must be passed back —
|
|
17442
|
+
* flat mode as `(value, selectedFilters, undefined)`, by-tab mode as
|
|
17443
|
+
* `(value, undefined, editedFiltersByTab)`; calling it with the value alone leaves the
|
|
17444
|
+
* draft's export definitions out of sync with the toggle.
|
|
17445
|
+
*/
|
|
17446
|
+
onStoreFiltersChange: (value: boolean, filters?: FilterContextItem[], filtersByTab?: Record<string, FilterContextItem[]>) => void;
|
|
17447
|
+
/**
|
|
17448
|
+
* Whether the schedule targets the whole dashboard (shows the store-filters checkbox)
|
|
17449
|
+
* rather than a single widget.
|
|
17450
|
+
*/
|
|
17451
|
+
isDashboardAutomation: boolean;
|
|
17452
|
+
/**
|
|
17453
|
+
* Filters structured per dashboard tab; when present with more than one tab, the region
|
|
17454
|
+
* renders in by-tab mode.
|
|
17455
|
+
*/
|
|
17456
|
+
filtersByTab?: IAutomationFiltersTab[];
|
|
17457
|
+
/**
|
|
17458
|
+
* Edited filter selection per tab.
|
|
17459
|
+
*/
|
|
17460
|
+
editedFiltersByTab?: Record<string, FilterContextItem[]>;
|
|
17461
|
+
/**
|
|
17462
|
+
* Replaces a tab's filter selection with the complete updated record.
|
|
17463
|
+
*/
|
|
17464
|
+
onFiltersByTabChange?: (filtersByTab: Record<string, FilterContextItem[]>) => void;
|
|
17465
|
+
/**
|
|
17466
|
+
* Parameter chips per tab (by-tab mode).
|
|
17467
|
+
*/
|
|
17468
|
+
parametersByTab?: Record<string, IAutomationParameter[]>;
|
|
17469
|
+
/**
|
|
17470
|
+
* Addable workspace parameters per tab (by-tab mode).
|
|
17471
|
+
*/
|
|
17472
|
+
availableParametersByTab?: Record<string, IAutomationParameter[]>;
|
|
17473
|
+
/**
|
|
17474
|
+
* Called when a parameter is added in a tab section (by-tab mode).
|
|
17475
|
+
*/
|
|
17476
|
+
onParameterAddByTab?: (tabId: string, ref: IdentifierRef) => void;
|
|
17477
|
+
/**
|
|
17478
|
+
* Called when a parameter chip's value is edited in a tab section (by-tab mode).
|
|
17479
|
+
*/
|
|
17480
|
+
onParameterChangeByTab?: (tabId: string, ref: IdentifierRef, value: ParameterValue) => void;
|
|
17481
|
+
/**
|
|
17482
|
+
* Called when a parameter chip is removed in a tab section (by-tab mode).
|
|
17483
|
+
*/
|
|
17484
|
+
onParameterDeleteByTab?: (tabId: string, ref: IdentifierRef) => void;
|
|
17485
|
+
/**
|
|
17486
|
+
* Whether workspace parameters are enabled; adjusts the store-filters tooltip copy.
|
|
17487
|
+
*/
|
|
17488
|
+
parametersEnabled?: boolean;
|
|
17489
|
+
}
|
|
17490
|
+
|
|
17215
17491
|
/**
|
|
17216
17492
|
* Props of the default scheduled email dialog's header region (the title input row).
|
|
17217
17493
|
*
|
|
@@ -17235,14 +17511,17 @@ export declare interface IScheduledEmailDialogProps {
|
|
|
17235
17511
|
/**
|
|
17236
17512
|
* In case, we are not creating new schedule, but editing existing one, this is the active schedule to be edited.
|
|
17237
17513
|
*
|
|
17238
|
-
* @deprecated
|
|
17514
|
+
* @deprecated has no effect since 11.51 — the dialog reads `scheduledExportToEdit` from
|
|
17515
|
+
* `useScheduledEmailDialogContext()`. To adjust what it reads, use the
|
|
17516
|
+
* `ScheduledEmailDialogContextDecoratorComponent` dashboard prop. Prop will be removed.
|
|
17239
17517
|
*/
|
|
17240
17518
|
scheduledExportToEdit?: IAutomationMetadataObject;
|
|
17241
17519
|
/**
|
|
17242
17520
|
* Notification channels in organization
|
|
17243
17521
|
*
|
|
17244
|
-
* @deprecated
|
|
17245
|
-
*
|
|
17522
|
+
* @deprecated has no effect since 11.51 — the dialog reads `notificationChannels` from
|
|
17523
|
+
* `useScheduledEmailDialogContext()`. To adjust what it reads, use the
|
|
17524
|
+
* `ScheduledEmailDialogContextDecoratorComponent` dashboard prop. Prop will be removed.
|
|
17246
17525
|
*/
|
|
17247
17526
|
notificationChannels?: INotificationChannelIdentifier[] | INotificationChannelMetadataObject[];
|
|
17248
17527
|
/**
|
|
@@ -17253,7 +17532,9 @@ export declare interface IScheduledEmailDialogProps {
|
|
|
17253
17532
|
* supports insight widgets; custom widgets and nested layouts are not valid
|
|
17254
17533
|
* export targets and were silently discarded at the connector boundary anyway.
|
|
17255
17534
|
*
|
|
17256
|
-
* @deprecated
|
|
17535
|
+
* @deprecated has no effect since 11.51 — the dialog reads `widget` from
|
|
17536
|
+
* `useScheduledEmailDialogContext()`. To adjust what it reads, use the
|
|
17537
|
+
* `ScheduledEmailDialogContextDecoratorComponent` dashboard prop. Prop will be removed.
|
|
17257
17538
|
*/
|
|
17258
17539
|
widget?: IWidget;
|
|
17259
17540
|
/**
|
|
@@ -17261,7 +17542,9 @@ export declare interface IScheduledEmailDialogProps {
|
|
|
17261
17542
|
*
|
|
17262
17543
|
* Note: this is available only when scheduling export for widget, not dashboard.
|
|
17263
17544
|
*
|
|
17264
|
-
* @deprecated
|
|
17545
|
+
* @deprecated has no effect since 11.51 — the dialog reads `insight` from
|
|
17546
|
+
* `useScheduledEmailDialogContext()`. To adjust what it reads, use the
|
|
17547
|
+
* `ScheduledEmailDialogContextDecoratorComponent` dashboard prop. Prop will be removed.
|
|
17265
17548
|
*/
|
|
17266
17549
|
insight?: IInsight;
|
|
17267
17550
|
/**
|
|
@@ -17276,7 +17559,9 @@ export declare interface IScheduledEmailDialogProps {
|
|
|
17276
17559
|
*
|
|
17277
17560
|
* - If we are editing an existing scheduled export, this will contain its filters, as changing saved filters is currently not allowed.
|
|
17278
17561
|
*
|
|
17279
|
-
* @deprecated
|
|
17562
|
+
* @deprecated has no effect since 11.51 — the dialog reads `dashboardFilters` from
|
|
17563
|
+
* `useScheduledEmailDialogContext()`. To adjust what it reads, use the
|
|
17564
|
+
* `ScheduledEmailDialogContextDecoratorComponent` dashboard prop. Prop will be removed.
|
|
17280
17565
|
*/
|
|
17281
17566
|
dashboardFilters?: FilterContextItem[];
|
|
17282
17567
|
/**
|
|
@@ -17297,7 +17582,8 @@ export declare interface IScheduledEmailDialogProps {
|
|
|
17297
17582
|
/**
|
|
17298
17583
|
* Is scheduled email dialog loading initial data, before it can be rendered?
|
|
17299
17584
|
*
|
|
17300
|
-
* @deprecated
|
|
17585
|
+
* @deprecated has no effect since 11.51 — the dialog reads `isLoading` from
|
|
17586
|
+
* `useScheduledEmailDialogContext()`. Prop will be removed.
|
|
17301
17587
|
*/
|
|
17302
17588
|
isLoading?: boolean;
|
|
17303
17589
|
/**
|
|
@@ -17353,6 +17639,21 @@ export declare interface IScheduledEmailDialogSlots {
|
|
|
17353
17639
|
* identity — see {@link ISlotProps}.
|
|
17354
17640
|
*/
|
|
17355
17641
|
Header?: ComponentType<ISlotProps<ScheduledEmailDialogHeaderDefaultProps>>;
|
|
17642
|
+
/**
|
|
17643
|
+
* Wraps or replaces the Filters tab content (the filter and parameter chips). Must have a
|
|
17644
|
+
* stable reference identity — see {@link ISlotProps}.
|
|
17645
|
+
*
|
|
17646
|
+
* Renders only in the fully rendered dialog **and only while the Filters tab is selected**:
|
|
17647
|
+
* not while the dialog context reports loading, not while the stale-filters confirmation
|
|
17648
|
+
* step is shown, and not on the General tab. The dialog opens on the General tab, so the
|
|
17649
|
+
* slot is not mounted initially, and it unmounts — losing any local state — on every switch
|
|
17650
|
+
* away from the Filters tab.
|
|
17651
|
+
*
|
|
17652
|
+
* A replacement takes over computing the next filters array: `onFiltersChange` /
|
|
17653
|
+
* `onFiltersByTabChange` expect the complete selection, and `onStoreFiltersChange` must be
|
|
17654
|
+
* passed the current filters — see {@link IScheduledEmailDialogFiltersProps}.
|
|
17655
|
+
*/
|
|
17656
|
+
Filters?: ComponentType<ISlotProps<IScheduledEmailDialogFiltersProps>>;
|
|
17356
17657
|
}
|
|
17357
17658
|
|
|
17358
17659
|
/**
|
|
@@ -23147,12 +23448,26 @@ export declare type SavingState = {
|
|
|
23147
23448
|
|
|
23148
23449
|
/**
|
|
23149
23450
|
* Resolves the dialog component from DashboardComponentsContext and mounts it under the
|
|
23150
|
-
* scheduled-export dialog's state contexts
|
|
23451
|
+
* scheduled-export dialog's state contexts, inside the resolved context decorator — so a
|
|
23452
|
+
* decorated dialog context is what both the state seeding and the dialog (default or
|
|
23453
|
+
* replacement) read.
|
|
23151
23454
|
*
|
|
23152
23455
|
* @internal
|
|
23153
23456
|
*/
|
|
23154
23457
|
export declare function ScheduledEmailDialog(props: IScheduledEmailDialogProps): ReactElement;
|
|
23155
23458
|
|
|
23459
|
+
/**
|
|
23460
|
+
* Provides the scheduled-email create/edit dialog context.
|
|
23461
|
+
*
|
|
23462
|
+
* The dashboard's connector mounts the original value. Exported so a context-decorator
|
|
23463
|
+
* component (`CustomScheduledEmailDialogContextDecoratorComponent`) can re-provide a decorated
|
|
23464
|
+
* value read from `useScheduledEmailDialogContext()`; it is not a way to run the dialog outside
|
|
23465
|
+
* a dashboard.
|
|
23466
|
+
*
|
|
23467
|
+
* @alpha
|
|
23468
|
+
*/
|
|
23469
|
+
export declare const ScheduledEmailDialogContextProvider: Provider<IScheduledEmailDialogContextValue | undefined>;
|
|
23470
|
+
|
|
23156
23471
|
/**
|
|
23157
23472
|
* The exact props the default dialog renders its header with, including the dialog's
|
|
23158
23473
|
* initial-focus ref.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gooddata/sdk-ui-dashboard",
|
|
3
|
-
"version": "11.53.0-alpha.
|
|
3
|
+
"version": "11.53.0-alpha.5",
|
|
4
4
|
"description": "GoodData SDK - Dashboard Component",
|
|
5
5
|
"license": "LicenseRef-LICENSE",
|
|
6
6
|
"author": "GoodData Corporation",
|
|
@@ -60,20 +60,20 @@
|
|
|
60
60
|
"ts-invariant": "0.10.3",
|
|
61
61
|
"tslib": "2.8.1",
|
|
62
62
|
"uuid": "11.1.1",
|
|
63
|
-
"@gooddata/sdk-backend-
|
|
64
|
-
"@gooddata/sdk-model": "11.53.0-alpha.
|
|
65
|
-
"@gooddata/sdk-
|
|
66
|
-
"@gooddata/sdk-ui": "11.53.0-alpha.
|
|
67
|
-
"@gooddata/sdk-ui-
|
|
68
|
-
"@gooddata/sdk-
|
|
69
|
-
"@gooddata/sdk-ui-filters": "11.53.0-alpha.
|
|
70
|
-
"@gooddata/sdk-ui-
|
|
71
|
-
"@gooddata/sdk-ui-
|
|
72
|
-
"@gooddata/sdk-ui-
|
|
73
|
-
"@gooddata/sdk-ui-
|
|
74
|
-
"@gooddata/sdk-ui-
|
|
75
|
-
"@gooddata/
|
|
76
|
-
"@gooddata/
|
|
63
|
+
"@gooddata/sdk-backend-base": "11.53.0-alpha.5",
|
|
64
|
+
"@gooddata/sdk-model": "11.53.0-alpha.5",
|
|
65
|
+
"@gooddata/sdk-backend-spi": "11.53.0-alpha.5",
|
|
66
|
+
"@gooddata/sdk-ui": "11.53.0-alpha.5",
|
|
67
|
+
"@gooddata/sdk-ui-charts": "11.53.0-alpha.5",
|
|
68
|
+
"@gooddata/sdk-ui-ext": "11.53.0-alpha.5",
|
|
69
|
+
"@gooddata/sdk-ui-filters": "11.53.0-alpha.5",
|
|
70
|
+
"@gooddata/sdk-ui-kit": "11.53.0-alpha.5",
|
|
71
|
+
"@gooddata/sdk-ui-geo": "11.53.0-alpha.5",
|
|
72
|
+
"@gooddata/sdk-ui-semantic-search": "11.53.0-alpha.5",
|
|
73
|
+
"@gooddata/sdk-ui-pivot": "11.53.0-alpha.5",
|
|
74
|
+
"@gooddata/sdk-ui-theme-provider": "11.53.0-alpha.5",
|
|
75
|
+
"@gooddata/util": "11.53.0-alpha.5",
|
|
76
|
+
"@gooddata/sdk-ui-vis-commons": "11.53.0-alpha.5"
|
|
77
77
|
},
|
|
78
78
|
"devDependencies": {
|
|
79
79
|
"@microsoft/api-documenter": "^7.17.0",
|
|
@@ -119,12 +119,12 @@
|
|
|
119
119
|
"typescript": "5.9.3",
|
|
120
120
|
"vitest": "4.1.8",
|
|
121
121
|
"vitest-dom": "0.1.1",
|
|
122
|
-
"@gooddata/eslint-config": "11.53.0-alpha.
|
|
123
|
-
"@gooddata/oxlint-config": "11.53.0-alpha.
|
|
124
|
-
"@gooddata/i18n-toolkit": "11.53.0-alpha.
|
|
125
|
-
"@gooddata/reference-workspace": "11.53.0-alpha.
|
|
126
|
-
"@gooddata/sdk-backend-mockingbird": "11.53.0-alpha.
|
|
127
|
-
"@gooddata/stylelint-config": "11.53.0-alpha.
|
|
122
|
+
"@gooddata/eslint-config": "11.53.0-alpha.5",
|
|
123
|
+
"@gooddata/oxlint-config": "11.53.0-alpha.5",
|
|
124
|
+
"@gooddata/i18n-toolkit": "11.53.0-alpha.5",
|
|
125
|
+
"@gooddata/reference-workspace": "11.53.0-alpha.5",
|
|
126
|
+
"@gooddata/sdk-backend-mockingbird": "11.53.0-alpha.5",
|
|
127
|
+
"@gooddata/stylelint-config": "11.53.0-alpha.5"
|
|
128
128
|
},
|
|
129
129
|
"peerDependencies": {
|
|
130
130
|
"react": "^18.0.0 || ^19.0.0",
|