@gooddata/sdk-ui-ext 11.52.0-alpha.5 → 11.52.0-alpha.7
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/dataLoaders/InsightDataLoader.d.ts +6 -0
- package/esm/dataLoaders/InsightDataLoader.d.ts.map +1 -1
- package/esm/dataLoaders/InsightDataLoader.js +4 -1
- package/esm/dataLoaders/index.d.ts +13 -0
- package/esm/dataLoaders/index.d.ts.map +1 -1
- package/esm/dataLoaders/index.js +14 -0
- package/esm/index.d.ts +1 -1
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +1 -1
- package/esm/insightView/InsightRenderer.d.ts +3 -6
- package/esm/insightView/InsightRenderer.d.ts.map +1 -1
- package/esm/insightView/InsightRenderer.js +165 -142
- package/esm/internal/components/configurationControls/conditionalFormatting/CfDateValueDropdown.d.ts +3 -4
- package/esm/internal/components/configurationControls/conditionalFormatting/CfDateValueDropdown.d.ts.map +1 -1
- package/esm/internal/components/configurationControls/conditionalFormatting/CfDateValueDropdown.js +9 -7
- package/esm/internal/components/configurationControls/conditionalFormatting/ConditionEditor.d.ts.map +1 -1
- package/esm/internal/components/configurationControls/conditionalFormatting/ConditionEditor.js +57 -37
- package/esm/internal/components/configurationControls/conditionalFormatting/cfFieldProps.d.ts +12 -0
- package/esm/internal/components/configurationControls/conditionalFormatting/cfFieldProps.d.ts.map +1 -0
- package/esm/internal/components/configurationControls/conditionalFormatting/cfFieldProps.js +2 -0
- package/esm/internal/components/configurationControls/conditionalFormatting/conditionalFormattingModel.d.ts +10 -10
- package/esm/internal/components/configurationControls/conditionalFormatting/conditionalFormattingModel.d.ts.map +1 -1
- package/esm/internal/components/configurationControls/conditionalFormatting/conditionalFormattingModel.js +11 -11
- package/esm/internal/components/configurationPanels/PivotTableConfigurationPanel.d.ts.map +1 -1
- package/esm/internal/components/configurationPanels/PivotTableConfigurationPanel.js +2 -1
- package/esm/internal/components/pluggableVisualizations/mekko/PluggableMekko.d.ts +6 -1
- package/esm/internal/components/pluggableVisualizations/mekko/PluggableMekko.d.ts.map +1 -1
- package/esm/internal/components/pluggableVisualizations/mekko/PluggableMekko.js +39 -5
- package/esm/internal/components/pluggableVisualizations/pivotTable/PluggablePivotTable.d.ts.map +1 -1
- package/esm/internal/components/pluggableVisualizations/pivotTable/PluggablePivotTable.js +0 -1
- package/esm/internal/components/pluggableVisualizations/pivotTableNext/PivotTableNextDescriptor.d.ts.map +1 -1
- package/esm/internal/components/pluggableVisualizations/pivotTableNext/PivotTableNextDescriptor.js +2 -9
- package/esm/internal/components/pluggableVisualizations/pivotTableNext/PluggablePivotTableNext.d.ts.map +1 -1
- package/esm/internal/components/pluggableVisualizations/pivotTableNext/PluggablePivotTableNext.js +2 -2
- package/esm/internal/components/pluggableVisualizations/pivotTableNext/pivotTableNextConfigFromInsight.d.ts +8 -3
- package/esm/internal/components/pluggableVisualizations/pivotTableNext/pivotTableNextConfigFromInsight.d.ts.map +1 -1
- package/esm/internal/components/pluggableVisualizations/pivotTableNext/pivotTableNextConfigFromInsight.js +41 -37
- package/esm/internal/translations/en-US.localization-bundle.d.ts +12 -0
- package/esm/internal/translations/en-US.localization-bundle.d.ts.map +1 -1
- package/esm/internal/translations/en-US.localization-bundle.js +12 -0
- package/esm/internal/utils/bucketHelper.d.ts.map +1 -1
- package/esm/internal/utils/bucketHelper.js +7 -14
- package/esm/internal/utils/embeddingCodeGenerator/insightToPropsConverter/convertor.d.ts +2 -2
- package/esm/internal/utils/embeddingCodeGenerator/insightToPropsConverter/convertor.d.ts.map +1 -1
- package/esm/internal/utils/embeddingCodeGenerator/insightToPropsConverter/convertor.js +4 -2
- package/esm/internal/utils/propertiesHelper.d.ts +5 -0
- package/esm/internal/utils/propertiesHelper.d.ts.map +1 -1
- package/esm/internal/utils/propertiesHelper.js +7 -0
- package/esm/locales.d.ts +6 -0
- package/esm/locales.d.ts.map +1 -1
- package/esm/locales.js +2 -0
- package/esm/notificationsPanel/Notification/Notification.d.ts.map +1 -1
- package/esm/notificationsPanel/Notification/Notification.js +6 -3
- package/esm/notificationsPanel/NotificationFiltersDetail/NotificationFiltersDetail.d.ts +3 -3
- package/esm/notificationsPanel/NotificationFiltersDetail/NotificationFiltersDetail.d.ts.map +1 -1
- package/esm/notificationsPanel/NotificationFiltersDetail/NotificationFiltersDetail.js +4 -4
- package/esm/notificationsPanel/NotificationFiltersDetail/NotificationFiltersDetailDialog.d.ts +9 -3
- package/esm/notificationsPanel/NotificationFiltersDetail/NotificationFiltersDetailDialog.d.ts.map +1 -1
- package/esm/notificationsPanel/NotificationFiltersDetail/NotificationFiltersDetailDialog.js +4 -4
- package/esm/sdk-ui-ext.d.ts +13 -0
- package/esm/share/ObjectShareDialog.js +22 -6
- package/esm/share/messages.d.ts +7 -0
- package/esm/share/messages.d.ts.map +1 -1
- package/esm/share/messages.js +5 -0
- package/esm/share/objectShareController.helpers.d.ts +117 -17
- package/esm/share/objectShareController.helpers.d.ts.map +1 -1
- package/esm/share/objectShareController.helpers.js +181 -44
- package/esm/share/objectShareController.types.d.ts +34 -10
- package/esm/share/objectShareController.types.d.ts.map +1 -1
- package/esm/share/useAccessList.d.ts +6 -0
- package/esm/share/useAccessList.d.ts.map +1 -1
- package/esm/share/useAccessList.js +26 -6
- package/esm/share/useLabelScope.d.ts +46 -1
- package/esm/share/useLabelScope.d.ts.map +1 -1
- package/esm/share/useLabelScope.js +98 -6
- package/esm/share/useObjectShareController.d.ts.map +1 -1
- package/esm/share/useObjectShareController.js +213 -45
- package/esm/share/useObjectShareDialog.d.ts +7 -0
- package/esm/share/useObjectShareDialog.d.ts.map +1 -1
- package/esm/share/useObjectShareDialog.js +22 -2
- package/package.json +21 -21
|
@@ -1,57 +1,61 @@
|
|
|
1
1
|
// (C) 2025-2026 GoodData Corporation
|
|
2
|
-
import { isEmpty } from "lodash-es";
|
|
3
2
|
import { insightProperties, insightVisualizationUrl, } from "@gooddata/sdk-model";
|
|
4
|
-
import { getPaginationFromProperties, getTextWrappingFromProperties, } from "../../../utils/propertiesHelper.js";
|
|
3
|
+
import { getConditionalFormattingFromProperties, getPaginationFromProperties, getTextWrappingFromProperties, isConditionalFormattingEnabled, } from "../../../utils/propertiesHelper.js";
|
|
4
|
+
import { removeUseless } from "../../../utils/removeUseless.js";
|
|
5
5
|
import { createPivotTableNextConfig } from "../pivotTableNext/PluggablePivotTableNext.js";
|
|
6
6
|
const AG_GRID_TOKEN_PLACEHOLDER = {
|
|
7
7
|
agGridToken: "<fill your AG Grid Enterprise license token here>",
|
|
8
8
|
};
|
|
9
|
+
function pivotTableNextConfigMeta(name) {
|
|
10
|
+
return {
|
|
11
|
+
typeImport: {
|
|
12
|
+
importType: "named",
|
|
13
|
+
name,
|
|
14
|
+
package: "@gooddata/sdk-ui-pivot/next",
|
|
15
|
+
},
|
|
16
|
+
cardinality: "scalar",
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Only a config that actually carries conditional formatting references the `@alpha` extended
|
|
21
|
+
* type; every other snippet stays on the `@public` {@link PivotTableNextConfig}.
|
|
22
|
+
*/
|
|
23
|
+
export function pivotTableNextConfigPropMeta(config) {
|
|
24
|
+
const hasConditionalFormatting = typeof config === "object" && config !== null && "conditionalFormatting" in config;
|
|
25
|
+
return pivotTableNextConfigMeta(hasConditionalFormatting ? "PivotTableNextConfigWithConditionalFormatting" : "PivotTableNextConfig");
|
|
26
|
+
}
|
|
9
27
|
export function isPivotTableNext(insightDefinition, settings) {
|
|
10
28
|
const uri = insightVisualizationUrl(insightDefinition);
|
|
11
29
|
return !!settings?.enableNewPivotTable && uri === "local:table";
|
|
12
30
|
}
|
|
13
31
|
export function pivotTableNextConfigFromInsight(insight, ctx) {
|
|
14
32
|
const baseConfig = ctx?.settings && ctx.backend
|
|
15
|
-
? createPivotTableNextConfig({ separators: ctx
|
|
33
|
+
? createPivotTableNextConfig({ separators: ctx.settings.separators }, "none", ctx.settings)
|
|
16
34
|
: {};
|
|
17
|
-
const
|
|
18
|
-
const
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
...separatorsProp,
|
|
36
|
-
...metricsPositionProp,
|
|
37
|
-
...columnHeadersPositionProp,
|
|
38
|
-
...grandTotalsPositionProp,
|
|
39
|
-
...paginationProp,
|
|
40
|
-
columnSizing,
|
|
41
|
-
textWrapping,
|
|
35
|
+
const properties = insightProperties(insight);
|
|
36
|
+
const controls = properties?.["controls"];
|
|
37
|
+
return removeUseless({
|
|
38
|
+
menu: baseConfig.menu,
|
|
39
|
+
separators: baseConfig.separators,
|
|
40
|
+
measureGroupDimension: controls?.measureGroupDimension,
|
|
41
|
+
columnHeadersPosition: controls?.columnHeadersPosition,
|
|
42
|
+
grandTotalsPosition: controls?.grandTotalsPosition,
|
|
43
|
+
pagination: getPaginationFromProperties(properties),
|
|
44
|
+
textWrapping: getTextWrappingFromProperties(properties),
|
|
45
|
+
conditionalFormatting: isConditionalFormattingEnabled(ctx?.settings)
|
|
46
|
+
? getConditionalFormattingFromProperties(properties)
|
|
47
|
+
: undefined,
|
|
48
|
+
columnSizing: {
|
|
49
|
+
columnWidths: controls?.columnWidths,
|
|
50
|
+
defaultWidth: "autoresizeAll",
|
|
51
|
+
growToFit: true,
|
|
52
|
+
},
|
|
42
53
|
...AG_GRID_TOKEN_PLACEHOLDER,
|
|
43
|
-
};
|
|
54
|
+
});
|
|
44
55
|
}
|
|
45
56
|
export function pivotTableNextConfigForInsightViewComponent() {
|
|
46
57
|
return {
|
|
47
58
|
value: AG_GRID_TOKEN_PLACEHOLDER,
|
|
48
|
-
meta:
|
|
49
|
-
cardinality: "scalar",
|
|
50
|
-
typeImport: {
|
|
51
|
-
importType: "named",
|
|
52
|
-
name: "PivotTableNextConfig",
|
|
53
|
-
package: "@gooddata/sdk-ui-pivot/next",
|
|
54
|
-
},
|
|
55
|
-
},
|
|
59
|
+
meta: pivotTableNextConfigMeta("PivotTableNextConfig"),
|
|
56
60
|
};
|
|
57
61
|
}
|
|
@@ -2515,6 +2515,10 @@ export declare const en_US: {
|
|
|
2515
2515
|
text: string;
|
|
2516
2516
|
crowdinContext: string;
|
|
2517
2517
|
};
|
|
2518
|
+
"objectShare.granteeRemove.inherited": {
|
|
2519
|
+
text: string;
|
|
2520
|
+
crowdinContext: string;
|
|
2521
|
+
};
|
|
2518
2522
|
"objectShare.grantee.you": {
|
|
2519
2523
|
text: string;
|
|
2520
2524
|
crowdinContext: string;
|
|
@@ -2659,10 +2663,18 @@ export declare const en_US: {
|
|
|
2659
2663
|
text: string;
|
|
2660
2664
|
crowdinContext: string;
|
|
2661
2665
|
};
|
|
2666
|
+
"properties.conditionalFormatting.dialog.error.wrapper": {
|
|
2667
|
+
text: string;
|
|
2668
|
+
crowdinContext: string;
|
|
2669
|
+
};
|
|
2662
2670
|
"properties.conditionalFormatting.dialog.error.rangeOrder": {
|
|
2663
2671
|
text: string;
|
|
2664
2672
|
crowdinContext: string;
|
|
2665
2673
|
};
|
|
2674
|
+
"properties.conditionalFormatting.dialog.error.valueEmpty": {
|
|
2675
|
+
text: string;
|
|
2676
|
+
crowdinContext: string;
|
|
2677
|
+
};
|
|
2666
2678
|
"properties.conditionalFormatting.dialog.selectPeriod": {
|
|
2667
2679
|
text: string;
|
|
2668
2680
|
crowdinContext: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"en-US.localization-bundle.d.ts","sourceRoot":"","sources":["../../../src/internal/translations/en-US.localization-bundle.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,KAAK
|
|
1
|
+
{"version":3,"file":"en-US.localization-bundle.d.ts","sourceRoot":"","sources":["../../../src/internal/translations/en-US.localization-bundle.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6tFjB,CAAC"}
|
|
@@ -2517,6 +2517,10 @@ export const en_US = {
|
|
|
2517
2517
|
"text": "This permission is granted from a parent workspace and cannot be lowered here.",
|
|
2518
2518
|
"crowdinContext": "Tooltip on permission options in the all-workspace-members permission menu that are disabled because a parent workspace already grants a higher workspace-wide level, so picking a lower level here could not take effect."
|
|
2519
2519
|
},
|
|
2520
|
+
"objectShare.granteeRemove.inherited": {
|
|
2521
|
+
"text": "This access is inherited from a group or a parent workspace and cannot be removed here.",
|
|
2522
|
+
"crowdinContext": "Tooltip on the disabled Remove access action in a grantee row's permission menu, shown when the grantee has no permission granted in this workspace, so there is nothing here to remove."
|
|
2523
|
+
},
|
|
2520
2524
|
"objectShare.grantee.you": {
|
|
2521
2525
|
"text": "{name} (you)",
|
|
2522
2526
|
"crowdinContext": "Display name of the signed-in user's own row in the share dialog grantee list. {name} is the user's full name."
|
|
@@ -2661,10 +2665,18 @@ export const en_US = {
|
|
|
2661
2665
|
"text": "Save",
|
|
2662
2666
|
"crowdinContext": "Button that saves the conditional-formatting rule being edited."
|
|
2663
2667
|
},
|
|
2668
|
+
"properties.conditionalFormatting.dialog.error.wrapper": {
|
|
2669
|
+
"text": "Error: {message}",
|
|
2670
|
+
"crowdinContext": "Wraps every inline validation error in the conditional-formatting rule dialog; {message} is the error itself, e.g. “Value cannot be empty”. Reorder the label and adjust its punctuation and spacing as the language requires."
|
|
2671
|
+
},
|
|
2664
2672
|
"properties.conditionalFormatting.dialog.error.rangeOrder": {
|
|
2665
2673
|
"text": "“From” must be less than or equal to “To”.",
|
|
2666
2674
|
"crowdinContext": "Inline validation error shown when the lower bound of a between/not-between condition is greater than the upper bound."
|
|
2667
2675
|
},
|
|
2676
|
+
"properties.conditionalFormatting.dialog.error.valueEmpty": {
|
|
2677
|
+
"text": "Value cannot be empty.",
|
|
2678
|
+
"crowdinContext": "Inline validation error shown when a condition whose operator needs a value is left without one (the input was visited and left blank, or the date period was never picked)."
|
|
2679
|
+
},
|
|
2668
2680
|
"properties.conditionalFormatting.dialog.selectPeriod": {
|
|
2669
2681
|
"text": "Select period",
|
|
2670
2682
|
"crowdinContext": "Placeholder of the date-period picker before a period is chosen in a date condition."
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bucketHelper.d.ts","sourceRoot":"","sources":["../../../src/internal/utils/bucketHelper.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EACH,KAAK,OAAO,EACZ,KAAK,kBAAkB,EACvB,KAAK,QAAQ,EACb,KAAK,MAAM,EAad,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAEH,KAAK,sBAAsB,EAG9B,MAAM,kBAAkB,CAAC;AAK1B,OAAO,EAEH,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,YAAY,EAEjB,KAAK,WAAW,EAChB,KAAK,uBAAuB,EAC5B,KAAK,QAAQ,EACb,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,wBAAwB,EAChC,MAAM,gCAAgC,CAAC;AAIxC,wBAAgB,YAAY,CAAC,MAAM,EAAE,aAAa,GAAG,SAAS,GAAG,MAAM,IAAI,WAAW,CAErF;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,IAAI,kBAAkB,CAE5F;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,aAAa,GAAG,SAAS,GAAG,MAAM,IAAI,gBAAgB,CAO/F;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,aAAa,GAAG,SAAS,GAAG,MAAM,IAAI,mBAAmB,CAWrG;AAED,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAKzE;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,aAAa,GAAG,SAAS,GAAG,MAAM,IAAI,cAAc,CAU3F;AAkKD,wBAAgB,eAAe,CAC3B,iBAAiB,EAAE,uBAAuB,EAC1C,iBAAiB,EAAE,IAAI,CAAC,uBAAuB,EAAE,SAAS,CAAC,GAC5D,uBAAuB,
|
|
1
|
+
{"version":3,"file":"bucketHelper.d.ts","sourceRoot":"","sources":["../../../src/internal/utils/bucketHelper.ts"],"names":[],"mappings":"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"}
|
|
@@ -196,20 +196,13 @@ export function sanitizeFilters(newReferencePoint, oldReferencePoint) {
|
|
|
196
196
|
}
|
|
197
197
|
else if (isRankingFilter(filter)) {
|
|
198
198
|
// A ranking filter referencing a catalog measure by ObjRef need not have that measure in the
|
|
199
|
-
// buckets
|
|
200
|
-
//
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
// attribute (ObjRef) is independent of the buckets, so a filter that ranks out of one survives
|
|
207
|
-
// even without any attribute bucket items.
|
|
208
|
-
const hasCatalogAttributes = filter.attributes?.some((attribute) => typeof attribute !== "string");
|
|
209
|
-
if (attributeBucketItems.length === 0 && !hasCatalogAttributes) {
|
|
210
|
-
return false;
|
|
211
|
-
}
|
|
212
|
-
const hasValidMeasure = measureBucketItems.some((measureBucketItem) => measureBucketItem.localIdentifier === filter.measure);
|
|
199
|
+
// buckets - mirrors measure value filters. A filter referencing a bucket measure by local
|
|
200
|
+
// identifier requires that measure to be present in the buckets. Either way, if the filter
|
|
201
|
+
// ranks "out of" a bucket attribute (referenced by local identifier), that attribute must
|
|
202
|
+
// still be present in the buckets - a plain Top/Bottom N with no attributes is valid even
|
|
203
|
+
// without any attribute bucket items.
|
|
204
|
+
const hasValidMeasure = isCatalogRankingFilter(filter) ||
|
|
205
|
+
measureBucketItems.some((measureBucketItem) => measureBucketItem.localIdentifier === filter.measure);
|
|
213
206
|
const hasValidAttributes = !filter.attributes ||
|
|
214
207
|
filter.attributes.every((attribute) =>
|
|
215
208
|
// Catalog attributes are referenced by ObjRef and are independent of the buckets;
|
|
@@ -6,13 +6,13 @@ import { type InsightToPropsConverter, type PropMeta } from "../types.js";
|
|
|
6
6
|
*/
|
|
7
7
|
export interface IInsightToPropConversion<TProps extends object, TPropKey extends keyof TProps, TReturnType = TProps[TPropKey]> {
|
|
8
8
|
propName: TPropKey;
|
|
9
|
-
propType: PropMeta;
|
|
9
|
+
propType: PropMeta | ((value: unknown) => PropMeta);
|
|
10
10
|
itemAccessor: (insight: IInsightDefinition, ctx: IEmbeddingCodeContext | undefined) => TReturnType;
|
|
11
11
|
}
|
|
12
12
|
/**
|
|
13
13
|
* Conversion based on the whole {@link @gooddata/sdk-model#IInsightDefinition}.
|
|
14
14
|
*/
|
|
15
|
-
export declare function insightConversion<TProps extends object, TPropKey extends keyof TProps, TReturnType = TProps[TPropKey]>(propName: TPropKey, propType: PropMeta, insightItemAccessor: (insight: IInsightDefinition, ctx: IEmbeddingCodeContext | undefined) => TReturnType): IInsightToPropConversion<TProps, TPropKey, TReturnType>;
|
|
15
|
+
export declare function insightConversion<TProps extends object, TPropKey extends keyof TProps, TReturnType = TProps[TPropKey]>(propName: TPropKey, propType: PropMeta | ((value: unknown) => PropMeta), insightItemAccessor: (insight: IInsightDefinition, ctx: IEmbeddingCodeContext | undefined) => TReturnType): IInsightToPropConversion<TProps, TPropKey, TReturnType>;
|
|
16
16
|
/**
|
|
17
17
|
* Conversion based on a single bucket.
|
|
18
18
|
*/
|
package/esm/internal/utils/embeddingCodeGenerator/insightToPropsConverter/convertor.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"convertor.d.ts","sourceRoot":"","sources":["../../../../../src/internal/utils/embeddingCodeGenerator/insightToPropsConverter/convertor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,kBAAkB,EAAiB,MAAM,qBAAqB,CAAC;AAE3F,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,gDAAgD,CAAC;AAC5F,OAAO,EACH,KAAK,uBAAuB,EAC5B,KAAK,QAAQ,EAGhB,MAAM,aAAa,CAAC;AAErB;;GAEG;AACH,MAAM,WAAW,wBAAwB,CACrC,MAAM,SAAS,MAAM,EACrB,QAAQ,SAAS,MAAM,MAAM,EAC7B,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC;IAE9B,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"convertor.d.ts","sourceRoot":"","sources":["../../../../../src/internal/utils/embeddingCodeGenerator/insightToPropsConverter/convertor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,kBAAkB,EAAiB,MAAM,qBAAqB,CAAC;AAE3F,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,gDAAgD,CAAC;AAC5F,OAAO,EACH,KAAK,uBAAuB,EAC5B,KAAK,QAAQ,EAGhB,MAAM,aAAa,CAAC;AAErB;;GAEG;AACH,MAAM,WAAW,wBAAwB,CACrC,MAAM,SAAS,MAAM,EACrB,QAAQ,SAAS,MAAM,MAAM,EAC7B,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC;IAE9B,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,EAAE,QAAQ,GAAG,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,QAAQ,CAAC,CAAC;IACpD,YAAY,EAAE,CAAC,OAAO,EAAE,kBAAkB,EAAE,GAAG,EAAE,qBAAqB,GAAG,SAAS,KAAK,WAAW,CAAC;CACtG;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC7B,MAAM,SAAS,MAAM,EACrB,QAAQ,SAAS,MAAM,MAAM,EAC7B,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,EAE9B,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,GAAG,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,QAAQ,CAAC,EACnD,mBAAmB,EAAE,CAAC,OAAO,EAAE,kBAAkB,EAAE,GAAG,EAAE,qBAAqB,GAAG,SAAS,KAAK,WAAW,GAC1G,wBAAwB,CAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,CAAC,CAMzD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC5B,MAAM,SAAS,MAAM,EACrB,QAAQ,SAAS,MAAM,MAAM,EAC7B,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,EAE9B,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,MAAM,EAClB,kBAAkB,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,WAAW,GACrD,wBAAwB,CAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,GAAG,SAAS,CAAC,CASrE;AAED,MAAM,MAAM,cAAc,CAAC,MAAM,SAAS,MAAM,IAAI;KAC/C,CAAC,IAAI,MAAM,MAAM,GAAG,wBAAwB,CAAC,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;CAClF,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,SAAS,MAAM,EAC5D,cAAc,EAAE,cAAc,CAAC,MAAM,CAAC,GACvC,uBAAuB,CAAC,MAAM,CAAC,CAkBjC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// (C) 2022-
|
|
1
|
+
// (C) 2022-2026 GoodData Corporation
|
|
2
2
|
import { insightBucket } from "@gooddata/sdk-model";
|
|
3
3
|
/**
|
|
4
4
|
* Conversion based on the whole {@link @gooddata/sdk-model#IInsightDefinition}.
|
|
@@ -41,7 +41,9 @@ export function getInsightToPropsConverter(conversionSpec) {
|
|
|
41
41
|
if (propValue) {
|
|
42
42
|
acc[propName] = {
|
|
43
43
|
value: propValue,
|
|
44
|
-
meta: conversion.propType
|
|
44
|
+
meta: typeof conversion.propType === "function"
|
|
45
|
+
? conversion.propType(propValue)
|
|
46
|
+
: conversion.propType,
|
|
45
47
|
};
|
|
46
48
|
}
|
|
47
49
|
return acc;
|
|
@@ -22,6 +22,11 @@ export declare function getTextWrappingFromProperties(visualizationProperties: I
|
|
|
22
22
|
export declare function getGrandTotalsPositionFromProperties(visualizationProperties: IVisualizationProperties): GrandTotalsPosition | undefined;
|
|
23
23
|
export declare function getPaginationFromProperties(visualizationProperties: IVisualizationProperties): IPagination | undefined;
|
|
24
24
|
export declare function getConditionalFormattingFromProperties(visualizationProperties: IVisualizationProperties): PivotTableNextConditionalFormattingConfig["conditionalFormatting"] | undefined;
|
|
25
|
+
/**
|
|
26
|
+
* Every conditional formatting gate (runtime render, embed code, configuration panel) must go
|
|
27
|
+
* through this predicate so the enablement rule cannot drift between call sites.
|
|
28
|
+
*/
|
|
29
|
+
export declare function isConditionalFormattingEnabled(settings: ISettings | undefined): boolean;
|
|
25
30
|
export declare function getPageSizeFromProperties(visualizationProperties: IVisualizationProperties): number | undefined;
|
|
26
31
|
export declare function getMeasureGroupDimensionFromProperties(visualizationProperties: IVisualizationProperties): MeasureGroupDimension;
|
|
27
32
|
export declare function getColumnHeadersPositionFromProperties(visualizationProperties: IVisualizationProperties): ColumnHeadersPosition;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"propertiesHelper.d.ts","sourceRoot":"","sources":["../../../src/internal/utils/propertiesHelper.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"propertiesHelper.d.ts","sourceRoot":"","sources":["../../../src/internal/utils/propertiesHelper.ts"],"names":[],"mappings":"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"}
|
|
@@ -190,6 +190,13 @@ export function getPaginationFromProperties(visualizationProperties) {
|
|
|
190
190
|
export function getConditionalFormattingFromProperties(visualizationProperties) {
|
|
191
191
|
return visualizationProperties?.controls?.["conditionalFormatting"];
|
|
192
192
|
}
|
|
193
|
+
/**
|
|
194
|
+
* Every conditional formatting gate (runtime render, embed code, configuration panel) must go
|
|
195
|
+
* through this predicate so the enablement rule cannot drift between call sites.
|
|
196
|
+
*/
|
|
197
|
+
export function isConditionalFormattingEnabled(settings) {
|
|
198
|
+
return settings?.enableConditionalFormatting ?? false;
|
|
199
|
+
}
|
|
193
200
|
export function getPageSizeFromProperties(visualizationProperties) {
|
|
194
201
|
const pageSize = visualizationProperties?.controls?.["pageSize"];
|
|
195
202
|
return typeof pageSize === "number" ? pageSize : undefined;
|
package/esm/locales.d.ts
CHANGED
|
@@ -1072,9 +1072,15 @@ export declare const conditionalFormattingMessages: {
|
|
|
1072
1072
|
dialogSave: {
|
|
1073
1073
|
id: string;
|
|
1074
1074
|
};
|
|
1075
|
+
dialogErrorWrapper: {
|
|
1076
|
+
id: string;
|
|
1077
|
+
};
|
|
1075
1078
|
dialogErrorRangeOrder: {
|
|
1076
1079
|
id: string;
|
|
1077
1080
|
};
|
|
1081
|
+
dialogErrorValueEmpty: {
|
|
1082
|
+
id: string;
|
|
1083
|
+
};
|
|
1078
1084
|
dialogSelectPeriod: {
|
|
1079
1085
|
id: string;
|
|
1080
1086
|
};
|
package/esm/locales.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"locales.d.ts","sourceRoot":"","sources":["../src/locales.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,iBAAiB,EAAkB,MAAM,YAAY,CAAC;AAEpE,OAAO,EAAE,KAAK,6BAA6B,EAAE,MAAM,6BAA6B,CAAC;AAGjF,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CA2EnD,CAAC;AAEH,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAsBtD,CAAC;AAEH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuQnB,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmH7B,CAAC;AAEH,eAAO,MAAM,6BAA6B
|
|
1
|
+
{"version":3,"file":"locales.d.ts","sourceRoot":"","sources":["../src/locales.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,iBAAiB,EAAkB,MAAM,YAAY,CAAC;AAEpE,OAAO,EAAE,KAAK,6BAA6B,EAAE,MAAM,6BAA6B,CAAC;AAGjF,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CA2EnD,CAAC;AAEH,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAsBtD,CAAC;AAEH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuQnB,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmH7B,CAAC;AAEH,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiCxC,CAAC;AAEH,eAAO,MAAM,qCAAqC,EAAE,MAAM,CAAC,6BAA6B,EAAE,iBAAiB,CAmBrG,CAAC;AAEP,wGAAsG;AACtG,eAAO,MAAM,yCAAyC,EAAE,OAAO,CAC3D,MAAM,CAAC,6BAA6B,EAAE,iBAAiB,CAAC,CAS1D,CAAC"}
|
package/esm/locales.js
CHANGED
|
@@ -508,7 +508,9 @@ export const conditionalFormattingMessages = defineMessages({
|
|
|
508
508
|
dialogUnitPercent: { id: "properties.conditionalFormatting.dialog.unitPercent" },
|
|
509
509
|
dialogCancel: { id: "properties.conditionalFormatting.dialog.cancel" },
|
|
510
510
|
dialogSave: { id: "properties.conditionalFormatting.dialog.save" },
|
|
511
|
+
dialogErrorWrapper: { id: "properties.conditionalFormatting.dialog.error.wrapper" },
|
|
511
512
|
dialogErrorRangeOrder: { id: "properties.conditionalFormatting.dialog.error.rangeOrder" },
|
|
513
|
+
dialogErrorValueEmpty: { id: "properties.conditionalFormatting.dialog.error.valueEmpty" },
|
|
512
514
|
dialogSelectPeriod: { id: "properties.conditionalFormatting.dialog.selectPeriod" },
|
|
513
515
|
dialogErrorDateUnresolvable: { id: "properties.conditionalFormatting.dialog.error.dateUnresolvable" },
|
|
514
516
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Notification.d.ts","sourceRoot":"","sources":["../../../src/notificationsPanel/Notification/Notification.tsx"],"names":[],"mappings":"AAOA,OAAO,EAEH,KAAK,kBAAkB,EAGvB,KAAK,qBAAqB,EAC7B,MAAM,qBAAqB,CAAC;AAoB7B;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAChC,YAAY,EAAE,kBAAkB,GAAG,qBAAqB,CAAC;IACzD,sBAAsB,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,mBAAmB,CAAC,EAAE,CAAC,YAAY,EAAE,kBAAkB,GAAG,qBAAqB,KAAK,IAAI,CAAC;IACzF,uBAAuB,EAAE,MAAM,IAAI,CAAC;CACvC;AA4BD;;GAEG;AACH,wBAAgB,YAAY,CAAC,EACzB,YAAY,EACZ,sBAAsB,EACtB,mBAAmB,EACnB,uBAAuB,EAC1B,EAAE,mBAAmB,
|
|
1
|
+
{"version":3,"file":"Notification.d.ts","sourceRoot":"","sources":["../../../src/notificationsPanel/Notification/Notification.tsx"],"names":[],"mappings":"AAOA,OAAO,EAEH,KAAK,kBAAkB,EAGvB,KAAK,qBAAqB,EAC7B,MAAM,qBAAqB,CAAC;AAoB7B;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAChC,YAAY,EAAE,kBAAkB,GAAG,qBAAqB,CAAC;IACzD,sBAAsB,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,mBAAmB,CAAC,EAAE,CAAC,YAAY,EAAE,kBAAkB,GAAG,qBAAqB,KAAK,IAAI,CAAC;IACzF,uBAAuB,EAAE,MAAM,IAAI,CAAC;CACvC;AA4BD;;GAEG;AACH,wBAAgB,YAAY,CAAC,EACzB,YAAY,EACZ,sBAAsB,EACtB,mBAAmB,EACnB,uBAAuB,EAC1B,EAAE,mBAAmB,2CA8HrB"}
|
|
@@ -32,8 +32,11 @@ export function Notification({ notification, markNotificationAsRead, onNotificat
|
|
|
32
32
|
const intl = useIntl();
|
|
33
33
|
const { addWarning } = useToastMessage();
|
|
34
34
|
const notificationTitle = getNotificationTitle(notification);
|
|
35
|
-
const
|
|
36
|
-
|
|
35
|
+
const filterItems = [
|
|
36
|
+
...(notification.details.data.filters ?? []).map(({ title, filter }) => ({ title, value: filter })),
|
|
37
|
+
...(notification.details.data.parameters ?? []),
|
|
38
|
+
];
|
|
39
|
+
const hasFiltersOrParameters = filterItems.length > 0;
|
|
37
40
|
const isAlertNotification = notification.notificationType === "alertNotification";
|
|
38
41
|
const isScheduleNotification = notification.notificationType === "scheduleNotification";
|
|
39
42
|
const isSliced = isAlertNotification && !!notification.details.data.alert.attribute;
|
|
@@ -51,7 +54,7 @@ export function Notification({ notification, markNotificationAsRead, onNotificat
|
|
|
51
54
|
const isExpired = fileExpiresAt != null && new Date(fileExpiresAt) < new Date();
|
|
52
55
|
const { isError, errorTitle, errorMessage, traceId } = getNotificationErrorInfo(notification, exports);
|
|
53
56
|
const actions = compact([
|
|
54
|
-
|
|
57
|
+
hasFiltersOrParameters && isAlertNotification && _jsx(NotificationFiltersDetail, { items: filterItems }),
|
|
55
58
|
hasTriggers && isSliced && _jsx(NotificationTriggerDetail, { notification: notification }),
|
|
56
59
|
hasExports && _jsx(FileLink, { notification: notification }),
|
|
57
60
|
hasExports && fileExpiresAt && _jsx(FileExpiration, { fileExpiresAt: fileExpiresAt, isExpired: isExpired }),
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type AlertItem } from "./NotificationFiltersDetailDialog.js";
|
|
2
2
|
/**
|
|
3
3
|
* @internal
|
|
4
4
|
*/
|
|
5
5
|
export interface INotificationFiltersDetailProps {
|
|
6
|
-
|
|
6
|
+
items: AlertItem[];
|
|
7
7
|
}
|
|
8
8
|
/**
|
|
9
9
|
* @internal
|
|
10
10
|
*/
|
|
11
|
-
export declare function NotificationFiltersDetail({
|
|
11
|
+
export declare function NotificationFiltersDetail({ items }: INotificationFiltersDetailProps): import("react/jsx-runtime").JSX.Element;
|
|
12
12
|
//# sourceMappingURL=NotificationFiltersDetail.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NotificationFiltersDetail.d.ts","sourceRoot":"","sources":["../../../src/notificationsPanel/NotificationFiltersDetail/NotificationFiltersDetail.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"NotificationFiltersDetail.d.ts","sourceRoot":"","sources":["../../../src/notificationsPanel/NotificationFiltersDetail/NotificationFiltersDetail.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,SAAS,EAAmC,MAAM,sCAAsC,CAAC;AAUvG;;GAEG;AACH,MAAM,WAAW,+BAA+B;IAC5C,KAAK,EAAE,SAAS,EAAE,CAAC;CACtB;AAQD;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,EAAE,KAAK,EAAE,EAAE,+BAA+B,2CAyCnF"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
// (C) 2024-
|
|
2
|
+
// (C) 2024-2026 GoodData Corporation
|
|
3
3
|
import { useRef, useState } from "react";
|
|
4
4
|
import { defineMessages, useIntl } from "react-intl";
|
|
5
5
|
import { Overlay, UiButton, alignConfigToAlignPoint } from "@gooddata/sdk-ui-kit";
|
|
@@ -19,16 +19,16 @@ const messages = defineMessages({
|
|
|
19
19
|
/**
|
|
20
20
|
* @internal
|
|
21
21
|
*/
|
|
22
|
-
export function NotificationFiltersDetail({
|
|
22
|
+
export function NotificationFiltersDetail({ items }) {
|
|
23
23
|
const [isFiltersDialogOpen, setIsFiltersDialogOpen] = useState(false);
|
|
24
24
|
const intl = useIntl();
|
|
25
25
|
const ref = useRef(null);
|
|
26
26
|
const closeFiltersDialog = () => setIsFiltersDialogOpen(false);
|
|
27
27
|
const toggleFiltersDialog = () => setIsFiltersDialogOpen((x) => !x);
|
|
28
|
-
return (_jsxs(_Fragment, { children: [
|
|
28
|
+
return (_jsxs(_Fragment, { children: [items.length > 0 ? (_jsx(UiButton, { ref: ref, onClick: (e) => {
|
|
29
29
|
e.stopPropagation();
|
|
30
30
|
toggleFiltersDialog();
|
|
31
31
|
}, onKeyDown: (e) => {
|
|
32
32
|
e.stopPropagation();
|
|
33
|
-
}, variant: "tertiary", size: "small", label: intl.formatMessage(messages.buttonLabel, { count:
|
|
33
|
+
}, variant: "tertiary", size: "small", label: intl.formatMessage(messages.buttonLabel, { count: items.length }) })) : null, isFiltersDialogOpen ? (_jsx(Overlay, { isModal: false, alignTo: ref.current, alignPoints: ALIGN_POINTS, closeOnEscape: true, closeOnOutsideClick: true, closeOnParentScroll: true, closeOnMouseDrag: false, onClose: closeFiltersDialog, children: _jsx(NotificationFiltersDetailDialog, { items: items, onClose: closeFiltersDialog }) })) : null] }));
|
|
34
34
|
}
|
package/esm/notificationsPanel/NotificationFiltersDetail/NotificationFiltersDetailDialog.d.ts
CHANGED
|
@@ -1,13 +1,19 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* @internal
|
|
3
|
+
*/
|
|
4
|
+
export type AlertItem = {
|
|
5
|
+
title?: string;
|
|
6
|
+
value: string;
|
|
7
|
+
};
|
|
2
8
|
/**
|
|
3
9
|
* @internal
|
|
4
10
|
*/
|
|
5
11
|
export interface INotificationFiltersDetailDialogProps {
|
|
6
|
-
|
|
12
|
+
items: AlertItem[];
|
|
7
13
|
onClose: () => void;
|
|
8
14
|
}
|
|
9
15
|
/**
|
|
10
16
|
* @internal
|
|
11
17
|
*/
|
|
12
|
-
export declare function NotificationFiltersDetailDialog({
|
|
18
|
+
export declare function NotificationFiltersDetailDialog({ items, onClose }: INotificationFiltersDetailDialogProps): import("react/jsx-runtime").JSX.Element;
|
|
13
19
|
//# sourceMappingURL=NotificationFiltersDetailDialog.d.ts.map
|
package/esm/notificationsPanel/NotificationFiltersDetail/NotificationFiltersDetailDialog.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NotificationFiltersDetailDialog.d.ts","sourceRoot":"","sources":["../../../src/notificationsPanel/NotificationFiltersDetail/NotificationFiltersDetailDialog.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"NotificationFiltersDetailDialog.d.ts","sourceRoot":"","sources":["../../../src/notificationsPanel/NotificationFiltersDetail/NotificationFiltersDetailDialog.tsx"],"names":[],"mappings":"AAeA;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,qCAAqC;IAClD,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,OAAO,EAAE,MAAM,IAAI,CAAC;CACvB;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,qCAAqC,2CAmBxG"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
// (C) 2024-
|
|
2
|
+
// (C) 2024-2026 GoodData Corporation
|
|
3
3
|
import { defineMessages, useIntl } from "react-intl";
|
|
4
4
|
import { bem } from "../bem.js";
|
|
5
5
|
import { DetailsDialog } from "../components/DetailsDialog.js";
|
|
@@ -12,9 +12,9 @@ const messages = defineMessages({
|
|
|
12
12
|
/**
|
|
13
13
|
* @internal
|
|
14
14
|
*/
|
|
15
|
-
export function NotificationFiltersDetailDialog({
|
|
15
|
+
export function NotificationFiltersDetailDialog({ items, onClose }) {
|
|
16
16
|
const intl = useIntl();
|
|
17
|
-
return (_jsx(DetailsDialog, { title: `${intl.formatMessage(messages.title)} (${
|
|
18
|
-
_jsx("div", { className: e("label"), children: title }), _jsx("div", { className: e("values"), children:
|
|
17
|
+
return (_jsx(DetailsDialog, { title: `${intl.formatMessage(messages.title)} (${items.length})`, content: _jsx("div", { className: b(), children: items.map(({ title, value }, idx) => (_jsxs("div", { className: e("item"), children: [
|
|
18
|
+
_jsx("div", { className: e("label"), children: title }), _jsx("div", { className: e("values"), children: value })
|
|
19
19
|
] }, idx))) }), onClose: onClose }));
|
|
20
20
|
}
|
package/esm/sdk-ui-ext.d.ts
CHANGED
|
@@ -231,6 +231,19 @@ export declare type AutomationsType = Extract<AutomationType, "alert" | "schedul
|
|
|
231
231
|
|
|
232
232
|
export { ChartInlineVisualizationType }
|
|
233
233
|
|
|
234
|
+
/**
|
|
235
|
+
* Clears the cached definition of a single insight used by the InsightView components.
|
|
236
|
+
*
|
|
237
|
+
* @remarks
|
|
238
|
+
* Use this after an insight has been edited, so that the next render fetches the new
|
|
239
|
+
* definition. To clear every cache at once, use {@link clearInsightViewCaches}.
|
|
240
|
+
*
|
|
241
|
+
* @param workspace - the workspace the insight belongs to
|
|
242
|
+
* @param ref - the ref of the insight whose cached definition should be dropped
|
|
243
|
+
* @public
|
|
244
|
+
*/
|
|
245
|
+
export declare function clearInsightViewCacheForInsight(workspace: string, ref: ObjRef): void;
|
|
246
|
+
|
|
234
247
|
/**
|
|
235
248
|
* Clears all the caches used by the InsightView components.
|
|
236
249
|
*
|
|
@@ -40,7 +40,7 @@ export function ObjectShareDialog(props) {
|
|
|
40
40
|
/** The dialog session — mounted only while open, so its state cannot outlive a close. */
|
|
41
41
|
function ObjectShareDialogSession({ target, objectTitle, onClose, onSummaryChange, labels, labelsLoading, labelsError, }) {
|
|
42
42
|
const intl = useIntl();
|
|
43
|
-
const { state, actions, isShareViewOpen, isAddGranteeOpen, isGeneralAccessConfirmOpen, isSelfRestrictConfirmOpen, isMutable, isLoading, workspaceDisabledLevels, rowDisabledLevels, onClose: closeDialog, onRowPermissionChange, onRowRemove, onSelfRestrictCancel, onSelfRestrictConfirm, } = useObjectShareDialog({
|
|
43
|
+
const { state, actions, isShareViewOpen, isAddGranteeOpen, isGeneralAccessConfirmOpen, isSelfRestrictConfirmOpen, isMutable, isLoading, workspaceDisabledLevels, rowDisabledLevels, isRowRemoveDisabled, rowRemoveDisabledTooltip, onClose: closeDialog, onRowPermissionChange, onRowRemove, onSelfRestrictCancel, onSelfRestrictConfirm, } = useObjectShareDialog({
|
|
44
44
|
target,
|
|
45
45
|
onClose,
|
|
46
46
|
onSummaryChange,
|
|
@@ -55,10 +55,23 @@ function ObjectShareDialogSession({ target, objectTitle, onClose, onSummaryChang
|
|
|
55
55
|
kind: l.isPrimary ? "primary" : undefined,
|
|
56
56
|
locked: l.isPrimary,
|
|
57
57
|
}));
|
|
58
|
+
// Per row: a label the grantee only inherits is locked too. It is in their scope
|
|
59
|
+
// (so it shows checked, as the granting workspace shows it) but this workspace
|
|
60
|
+
// holds no grant on it to revoke — the same rule that disables Remove access for a
|
|
61
|
+
// grantee whose object access is inherited-only.
|
|
62
|
+
const rowLabelItems = (granteeId) => {
|
|
63
|
+
const inherited = state.inheritedLabelIdsByGrantee[granteeId];
|
|
64
|
+
if (!inherited?.length) {
|
|
65
|
+
return labelItems;
|
|
66
|
+
}
|
|
67
|
+
return labelItems.map((item) => item.locked || !inherited.includes(item.id) ? item : { ...item, locked: true });
|
|
68
|
+
};
|
|
58
69
|
const toGranteeRow = (g) => {
|
|
59
70
|
const display = granteeDisplayPair(g);
|
|
60
|
-
//
|
|
61
|
-
//
|
|
71
|
+
// Row policy — levels the caller may not pick (their own sole grant, or a
|
|
72
|
+
// level an inherited grant already exceeds) and whether there is a grant in
|
|
73
|
+
// this workspace to remove — is decided in the hook, with the matching
|
|
74
|
+
// tooltips; this only renders it.
|
|
62
75
|
const disabledLevels = rowDisabledLevels(g);
|
|
63
76
|
return {
|
|
64
77
|
id: g.id,
|
|
@@ -68,9 +81,9 @@ function ObjectShareDialogSession({ target, objectTitle, onClose, onSummaryChang
|
|
|
68
81
|
: display.name,
|
|
69
82
|
email: display.email,
|
|
70
83
|
isPending: g.pending !== undefined,
|
|
71
|
-
controls: (_jsx(UiGranteeRowControls, { labels:
|
|
84
|
+
controls: (_jsx(UiGranteeRowControls, { labels: rowLabelItems(g.id), selectedLabelIds: state.selectedLabelIdsByGrantee[g.id] ?? state.labels.map((l) => l.id), permissionLevel: g.level, effectivePermission: g.effectivePermission, disabledLevels: disabledLevels, disabledTooltip: disabledLevels
|
|
72
85
|
? intl.formatMessage(objectShareMessages.selfRestrictWarning)
|
|
73
|
-
: undefined,
|
|
86
|
+
: undefined, isRemoveDisabled: isRowRemoveDisabled(g), removeDisabledTooltip: rowRemoveDisabledTooltip,
|
|
74
87
|
// Disabled while the row's own write is saving, while mutations are
|
|
75
88
|
// gated (unresolved label scope would orphan real per-label grants),
|
|
76
89
|
// and while a sole row's self identity is unknown.
|
|
@@ -125,7 +138,10 @@ function ObjectShareDialogSession({ target, objectTitle, onClose, onSummaryChang
|
|
|
125
138
|
// On a failed load the empty grantee list + RESTRICTED radio are a
|
|
126
139
|
// placeholder, not the real policy — show why instead of letting it
|
|
127
140
|
// read as "no one has access".
|
|
128
|
-
error: state.status === "error" ? intl.formatMessage(objectShareMessages.loadError) : undefined }), _jsx(UiAddGranteeDialog, { isOpen: isAddGranteeOpen, objectTitle: objectTitle, loadOptions: actions.loadOptions, selectedGrantees: state.pendingGrantees, onSelectedGranteesChange: actions.setPendingGrantees,
|
|
141
|
+
error: state.status === "error" ? intl.formatMessage(objectShareMessages.loadError) : undefined }), _jsx(UiAddGranteeDialog, { isOpen: isAddGranteeOpen, objectTitle: objectTitle, loadOptions: actions.loadOptions, selectedGrantees: state.pendingGrantees, onSelectedGranteesChange: actions.setPendingGrantees,
|
|
142
|
+
// Same checklist the grantee rows use, so a label scope can be narrowed
|
|
143
|
+
// while adding instead of only after the grant landed.
|
|
144
|
+
labels: labelItems, onBack: actions.closeAddGrantee, onClose: closeDialog, onCancel: actions.closeAddGrantee, onShare: () => {
|
|
129
145
|
void actions.confirmAddGrantees();
|
|
130
146
|
} }), _jsx(UiConfirmDialog, { isOpen: isGeneralAccessConfirmOpen, title: intl.formatMessage(state.pendingGeneralAccess === "RESTRICTED"
|
|
131
147
|
? objectShareMessages.confirmRestrictTitle
|
package/esm/share/messages.d.ts
CHANGED
|
@@ -40,6 +40,13 @@ export declare const objectShareMessages: {
|
|
|
40
40
|
workspaceLevelInherited: {
|
|
41
41
|
id: string;
|
|
42
42
|
};
|
|
43
|
+
/**
|
|
44
|
+
* Disabled-action tooltip on a grantee row's Remove access, for a grantee whose
|
|
45
|
+
* access is inherited only — there is no grant in this workspace to revoke.
|
|
46
|
+
*/
|
|
47
|
+
granteeRemoveInherited: {
|
|
48
|
+
id: string;
|
|
49
|
+
};
|
|
43
50
|
granteeYou: {
|
|
44
51
|
id: string;
|
|
45
52
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/share/messages.ts"],"names":[],"mappings":"AAIA;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;IAO5B;;;;OAIG;;;;IAEH;;;OAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAWL,CAAC"}
|
|
1
|
+
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/share/messages.ts"],"names":[],"mappings":"AAIA;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;IAO5B;;;;OAIG;;;;IAEH;;;OAGG;;;;IAEH;;;OAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAWL,CAAC"}
|