@gooddata/sdk-ui-ext 11.43.0-alpha.2 → 11.43.0-alpha.4

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 (171) hide show
  1. package/NOTICE +4826 -13873
  2. package/esm/index.d.ts +2 -2
  3. package/esm/index.d.ts.map +1 -1
  4. package/esm/index.js +1 -1
  5. package/esm/internal/components/configurationControls/ConfigSection.d.ts +2 -1
  6. package/esm/internal/components/configurationControls/ConfigSection.d.ts.map +1 -1
  7. package/esm/internal/components/configurationControls/ConfigSection.js +7 -3
  8. package/esm/internal/components/configurationControls/colors/colorDropdown/ColorDropdown.d.ts +4 -0
  9. package/esm/internal/components/configurationControls/colors/colorDropdown/ColorDropdown.d.ts.map +1 -1
  10. package/esm/internal/components/configurationControls/colors/colorDropdown/ColorDropdown.js +13 -2
  11. package/esm/internal/components/configurationControls/colors/colorDropdown/ColorPalette.d.ts +5 -0
  12. package/esm/internal/components/configurationControls/colors/colorDropdown/ColorPalette.d.ts.map +1 -1
  13. package/esm/internal/components/configurationControls/colors/colorDropdown/ColorPalette.js +5 -3
  14. package/esm/internal/components/configurationControls/conditionalFormatting/ConditionalFormattingDialog.d.ts +13 -0
  15. package/esm/internal/components/configurationControls/conditionalFormatting/ConditionalFormattingDialog.d.ts.map +1 -0
  16. package/esm/internal/components/configurationControls/conditionalFormatting/ConditionalFormattingDialog.js +158 -0
  17. package/esm/internal/components/configurationControls/conditionalFormatting/ConditionalFormattingSection.d.ts +12 -0
  18. package/esm/internal/components/configurationControls/conditionalFormatting/ConditionalFormattingSection.d.ts.map +1 -0
  19. package/esm/internal/components/configurationControls/conditionalFormatting/ConditionalFormattingSection.js +54 -0
  20. package/esm/internal/components/configurationControls/conditionalFormatting/conditionalFormattingColors.d.ts +14 -0
  21. package/esm/internal/components/configurationControls/conditionalFormatting/conditionalFormattingColors.d.ts.map +1 -0
  22. package/esm/internal/components/configurationControls/conditionalFormatting/conditionalFormattingColors.js +32 -0
  23. package/esm/internal/components/configurationControls/conditionalFormatting/conditionalFormattingModel.d.ts +28 -0
  24. package/esm/internal/components/configurationControls/conditionalFormatting/conditionalFormattingModel.d.ts.map +1 -0
  25. package/esm/internal/components/configurationControls/conditionalFormatting/conditionalFormattingModel.js +149 -0
  26. package/esm/internal/components/configurationPanels/ConfigurationPanelContent.d.ts +1 -0
  27. package/esm/internal/components/configurationPanels/ConfigurationPanelContent.d.ts.map +1 -1
  28. package/esm/internal/components/configurationPanels/PivotTableConfigurationPanel.d.ts +1 -0
  29. package/esm/internal/components/configurationPanels/PivotTableConfigurationPanel.d.ts.map +1 -1
  30. package/esm/internal/components/configurationPanels/PivotTableConfigurationPanel.js +9 -1
  31. package/esm/internal/components/dialogs/userManagementDialogs/AddWorkspaceToSubjects.d.ts +0 -1
  32. package/esm/internal/components/dialogs/userManagementDialogs/AddWorkspaceToSubjects.d.ts.map +1 -1
  33. package/esm/internal/components/dialogs/userManagementDialogs/AddWorkspaceToSubjects.js +3 -3
  34. package/esm/internal/components/dialogs/userManagementDialogs/UserEditDialog.d.ts +0 -1
  35. package/esm/internal/components/dialogs/userManagementDialogs/UserEditDialog.d.ts.map +1 -1
  36. package/esm/internal/components/dialogs/userManagementDialogs/UserEditDialog.js +2 -2
  37. package/esm/internal/components/dialogs/userManagementDialogs/UserGroupEditDialog.d.ts +0 -1
  38. package/esm/internal/components/dialogs/userManagementDialogs/UserGroupEditDialog.d.ts.map +1 -1
  39. package/esm/internal/components/dialogs/userManagementDialogs/UserGroupEditDialog.js +3 -3
  40. package/esm/internal/components/dialogs/userManagementDialogs/Workspace/AddWorkspace.d.ts +1 -2
  41. package/esm/internal/components/dialogs/userManagementDialogs/Workspace/AddWorkspace.d.ts.map +1 -1
  42. package/esm/internal/components/dialogs/userManagementDialogs/Workspace/AddWorkspace.js +2 -2
  43. package/esm/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/GranularPermissions.d.ts +1 -2
  44. package/esm/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/GranularPermissions.d.ts.map +1 -1
  45. package/esm/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/GranularPermissions.js +3 -3
  46. package/esm/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/PermissionsDropdown.d.ts +0 -1
  47. package/esm/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/PermissionsDropdown.d.ts.map +1 -1
  48. package/esm/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/PermissionsDropdown.js +3 -5
  49. package/esm/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/WorkspaceItem.d.ts +1 -2
  50. package/esm/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/WorkspaceItem.d.ts.map +1 -1
  51. package/esm/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/WorkspaceItem.js +2 -2
  52. package/esm/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceList.d.ts +0 -1
  53. package/esm/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceList.d.ts.map +1 -1
  54. package/esm/internal/components/pluggableVisualizations/pivotTableNext/PluggablePivotTableNext.d.ts +3 -0
  55. package/esm/internal/components/pluggableVisualizations/pivotTableNext/PluggablePivotTableNext.d.ts.map +1 -1
  56. package/esm/internal/components/pluggableVisualizations/pivotTableNext/PluggablePivotTableNext.js +33 -5
  57. package/esm/internal/constants/supportedProperties.d.ts.map +1 -1
  58. package/esm/internal/constants/supportedProperties.js +1 -0
  59. package/esm/internal/translations/de-DE.localization-bundle.d.ts +11 -0
  60. package/esm/internal/translations/de-DE.localization-bundle.d.ts.map +1 -1
  61. package/esm/internal/translations/de-DE.localization-bundle.js +12 -1
  62. package/esm/internal/translations/en-AU.localization-bundle.d.ts +11 -0
  63. package/esm/internal/translations/en-AU.localization-bundle.d.ts.map +1 -1
  64. package/esm/internal/translations/en-AU.localization-bundle.js +12 -1
  65. package/esm/internal/translations/en-GB.localization-bundle.d.ts +11 -0
  66. package/esm/internal/translations/en-GB.localization-bundle.d.ts.map +1 -1
  67. package/esm/internal/translations/en-GB.localization-bundle.js +12 -1
  68. package/esm/internal/translations/en-US.localization-bundle.d.ts +168 -0
  69. package/esm/internal/translations/en-US.localization-bundle.d.ts.map +1 -1
  70. package/esm/internal/translations/en-US.localization-bundle.js +168 -0
  71. package/esm/internal/translations/es-419.localization-bundle.d.ts +11 -0
  72. package/esm/internal/translations/es-419.localization-bundle.d.ts.map +1 -1
  73. package/esm/internal/translations/es-419.localization-bundle.js +12 -1
  74. package/esm/internal/translations/es-ES.localization-bundle.d.ts +11 -0
  75. package/esm/internal/translations/es-ES.localization-bundle.d.ts.map +1 -1
  76. package/esm/internal/translations/es-ES.localization-bundle.js +12 -1
  77. package/esm/internal/translations/fi-FI.localization-bundle.d.ts +11 -0
  78. package/esm/internal/translations/fi-FI.localization-bundle.d.ts.map +1 -1
  79. package/esm/internal/translations/fi-FI.localization-bundle.js +12 -1
  80. package/esm/internal/translations/fr-CA.localization-bundle.d.ts +11 -0
  81. package/esm/internal/translations/fr-CA.localization-bundle.d.ts.map +1 -1
  82. package/esm/internal/translations/fr-CA.localization-bundle.js +12 -1
  83. package/esm/internal/translations/fr-FR.localization-bundle.d.ts +11 -0
  84. package/esm/internal/translations/fr-FR.localization-bundle.d.ts.map +1 -1
  85. package/esm/internal/translations/fr-FR.localization-bundle.js +12 -1
  86. package/esm/internal/translations/id-ID.localization-bundle.d.ts +11 -0
  87. package/esm/internal/translations/id-ID.localization-bundle.d.ts.map +1 -1
  88. package/esm/internal/translations/id-ID.localization-bundle.js +12 -1
  89. package/esm/internal/translations/it-IT.localization-bundle.d.ts +11 -0
  90. package/esm/internal/translations/it-IT.localization-bundle.d.ts.map +1 -1
  91. package/esm/internal/translations/it-IT.localization-bundle.js +12 -1
  92. package/esm/internal/translations/ja-JP.localization-bundle.d.ts +11 -0
  93. package/esm/internal/translations/ja-JP.localization-bundle.d.ts.map +1 -1
  94. package/esm/internal/translations/ja-JP.localization-bundle.js +12 -1
  95. package/esm/internal/translations/ko-KR.localization-bundle.d.ts +11 -0
  96. package/esm/internal/translations/ko-KR.localization-bundle.d.ts.map +1 -1
  97. package/esm/internal/translations/ko-KR.localization-bundle.js +12 -1
  98. package/esm/internal/translations/nl-NL.localization-bundle.d.ts +11 -0
  99. package/esm/internal/translations/nl-NL.localization-bundle.d.ts.map +1 -1
  100. package/esm/internal/translations/nl-NL.localization-bundle.js +12 -1
  101. package/esm/internal/translations/pl-PL.localization-bundle.d.ts +11 -0
  102. package/esm/internal/translations/pl-PL.localization-bundle.d.ts.map +1 -1
  103. package/esm/internal/translations/pl-PL.localization-bundle.js +12 -1
  104. package/esm/internal/translations/pt-BR.localization-bundle.d.ts +11 -0
  105. package/esm/internal/translations/pt-BR.localization-bundle.d.ts.map +1 -1
  106. package/esm/internal/translations/pt-BR.localization-bundle.js +12 -1
  107. package/esm/internal/translations/pt-PT.localization-bundle.d.ts +11 -0
  108. package/esm/internal/translations/pt-PT.localization-bundle.d.ts.map +1 -1
  109. package/esm/internal/translations/pt-PT.localization-bundle.js +12 -1
  110. package/esm/internal/translations/ru-RU.localization-bundle.d.ts +11 -0
  111. package/esm/internal/translations/ru-RU.localization-bundle.d.ts.map +1 -1
  112. package/esm/internal/translations/ru-RU.localization-bundle.js +12 -1
  113. package/esm/internal/translations/sl-SI.localization-bundle.d.ts +11 -0
  114. package/esm/internal/translations/sl-SI.localization-bundle.d.ts.map +1 -1
  115. package/esm/internal/translations/sl-SI.localization-bundle.js +12 -1
  116. package/esm/internal/translations/th-TH.localization-bundle.d.ts +11 -0
  117. package/esm/internal/translations/th-TH.localization-bundle.d.ts.map +1 -1
  118. package/esm/internal/translations/th-TH.localization-bundle.js +12 -1
  119. package/esm/internal/translations/tr-TR.localization-bundle.d.ts +11 -0
  120. package/esm/internal/translations/tr-TR.localization-bundle.d.ts.map +1 -1
  121. package/esm/internal/translations/tr-TR.localization-bundle.js +12 -1
  122. package/esm/internal/translations/uk-UA.localization-bundle.d.ts +11 -0
  123. package/esm/internal/translations/uk-UA.localization-bundle.d.ts.map +1 -1
  124. package/esm/internal/translations/uk-UA.localization-bundle.js +12 -1
  125. package/esm/internal/translations/vi-VN.localization-bundle.d.ts +11 -0
  126. package/esm/internal/translations/vi-VN.localization-bundle.d.ts.map +1 -1
  127. package/esm/internal/translations/vi-VN.localization-bundle.js +12 -1
  128. package/esm/internal/translations/zh-HK.localization-bundle.d.ts +11 -0
  129. package/esm/internal/translations/zh-HK.localization-bundle.d.ts.map +1 -1
  130. package/esm/internal/translations/zh-HK.localization-bundle.js +12 -1
  131. package/esm/internal/translations/zh-Hans.localization-bundle.d.ts +11 -0
  132. package/esm/internal/translations/zh-Hans.localization-bundle.d.ts.map +1 -1
  133. package/esm/internal/translations/zh-Hans.localization-bundle.js +12 -1
  134. package/esm/internal/translations/zh-Hant.localization-bundle.d.ts +11 -0
  135. package/esm/internal/translations/zh-Hant.localization-bundle.d.ts.map +1 -1
  136. package/esm/internal/translations/zh-Hant.localization-bundle.js +12 -1
  137. package/esm/internal/utils/propertiesHelper.d.ts +2 -1
  138. package/esm/internal/utils/propertiesHelper.d.ts.map +1 -1
  139. package/esm/internal/utils/propertiesHelper.js +3 -0
  140. package/esm/locales.d.ts +79 -0
  141. package/esm/locales.d.ts.map +1 -1
  142. package/esm/locales.js +46 -0
  143. package/esm/sdk-ui-ext.d.ts +24 -10
  144. package/esm/share/ObjectShareDialog.js +2 -2
  145. package/esm/share/objectShareController.helpers.d.ts +0 -26
  146. package/esm/share/objectShareController.helpers.d.ts.map +1 -1
  147. package/esm/share/objectShareController.helpers.js +2 -38
  148. package/esm/share/objectShareController.types.d.ts +39 -0
  149. package/esm/share/objectShareController.types.d.ts.map +1 -1
  150. package/esm/share/useAccessList.d.ts +31 -18
  151. package/esm/share/useAccessList.d.ts.map +1 -1
  152. package/esm/share/useAccessList.js +85 -133
  153. package/esm/share/useLabelScope.d.ts +6 -8
  154. package/esm/share/useLabelScope.d.ts.map +1 -1
  155. package/esm/share/useLabelScope.js +34 -28
  156. package/esm/share/useObjectShareController.d.ts +19 -16
  157. package/esm/share/useObjectShareController.d.ts.map +1 -1
  158. package/esm/share/useObjectShareController.js +212 -119
  159. package/package.json +21 -21
  160. package/styles/css/main.css +238 -0
  161. package/styles/css/main.css.map +1 -1
  162. package/styles/internal/css/conditional_formatting.css +239 -0
  163. package/styles/internal/css/conditional_formatting.css.map +1 -0
  164. package/styles/internal/css/config_panel.css +5 -0
  165. package/styles/internal/css/config_panel.css.map +1 -1
  166. package/styles/internal/scss/conditional_formatting.scss +269 -0
  167. package/styles/internal/scss/config_panel.scss +11 -0
  168. package/styles/scss/main.scss +1 -0
  169. package/esm/share/useObjectShare.d.ts +0 -50
  170. package/esm/share/useObjectShare.d.ts.map +0 -1
  171. package/esm/share/useObjectShare.js +0 -17
@@ -0,0 +1,149 @@
1
+ // (C) 2026 GoodData Corporation
2
+ import { v4 as uuid } from "uuid";
3
+ import { attributeAlias, attributeLocalId, bucketAttributes, insightBucket, insightMeasures, measureAlias, measureLocalId, measureTitle, } from "@gooddata/sdk-model";
4
+ import { BucketNames } from "@gooddata/sdk-ui";
5
+ import { CF_DEFAULT_COLOR } from "./conditionalFormattingColors.js";
6
+ const targetToValue = (target) => target.kind === "measure"
7
+ ? `measure:${target.measureIdentifier}`
8
+ : `attribute:${target.attributeIdentifier}`;
9
+ /**
10
+ * Builds a `localIdentifier -> display title` map from the executed data view. Attribute titles live
11
+ * only on the result headers (not on the insight/buckets), so this is the only reliable source for
12
+ * human attribute names; measures also resolve to their final header name here.
13
+ */
14
+ export function buildTitlesByLocalId(dataView) {
15
+ const titles = {};
16
+ for (const measure of dataView.meta().measureDescriptors()) {
17
+ titles[measure.measureHeaderItem.localIdentifier] = measure.measureHeaderItem.name;
18
+ }
19
+ for (const attribute of dataView.meta().attributeDescriptors()) {
20
+ titles[attribute.attributeHeader.localIdentifier] = attribute.attributeHeader.formOf.name;
21
+ }
22
+ return titles;
23
+ }
24
+ export function buildTargetOptions(insight,
25
+ // Resolved data-view titles keyed by localIdentifier; preferred over the insight's own (often
26
+ // absent) titles/aliases. Empty until the first data view arrives.
27
+ titles = {}) {
28
+ const measures = insightMeasures(insight).map((measure) => {
29
+ const localId = measureLocalId(measure);
30
+ const target = { kind: "measure", measureIdentifier: localId };
31
+ return {
32
+ value: targetToValue(target),
33
+ title: titles[localId] ?? measureTitle(measure) ?? measureAlias(measure) ?? localId,
34
+ target,
35
+ };
36
+ });
37
+ // Only ROW attributes are offerable: a rule formats a row/cell by the row's value, and a row
38
+ // attribute has a per-row element. Column attributes define columns (no per-row value), so they
39
+ // can't be honored here — we don't list what we can't apply. (Column highlighting would be its
40
+ // own feature.) Falls back to none when the rows bucket is absent.
41
+ const rowsBucket = insightBucket(insight, BucketNames.ATTRIBUTE);
42
+ const rowAttributes = rowsBucket ? bucketAttributes(rowsBucket) : [];
43
+ const attributes = rowAttributes.map((attribute) => {
44
+ const localId = attributeLocalId(attribute);
45
+ const target = { kind: "attribute", attributeIdentifier: localId };
46
+ return {
47
+ value: targetToValue(target),
48
+ title: titles[localId] ?? attributeAlias(attribute) ?? localId,
49
+ target,
50
+ };
51
+ });
52
+ return [...measures, ...attributes];
53
+ }
54
+ export const findTargetOption = (options, target) => options.find((option) => option.value === targetToValue(target));
55
+ export const targetLocalId = (target) => target.kind === "measure" ? target.measureIdentifier : target.attributeIdentifier;
56
+ // --- Operators -------------------------------------------------------------------------------
57
+ const NO_VALUE_OPERATORS = new Set([
58
+ "ALL",
59
+ "IS_EMPTY",
60
+ "IS_NOT_EMPTY",
61
+ ]);
62
+ const RANGE_OPERATORS = new Set(["BETWEEN", "NOT_BETWEEN"]);
63
+ const MEASURE_OPERATORS = [
64
+ "ALL",
65
+ "EQUAL_TO",
66
+ "NOT_EQUAL_TO",
67
+ "GREATER_THAN",
68
+ "GREATER_THAN_OR_EQUAL_TO",
69
+ "LESS_THAN",
70
+ "LESS_THAN_OR_EQUAL_TO",
71
+ "BETWEEN",
72
+ "NOT_BETWEEN",
73
+ "IS_EMPTY",
74
+ "IS_NOT_EMPTY",
75
+ ];
76
+ const ATTRIBUTE_OPERATORS = [
77
+ "ALL",
78
+ "EQUAL_TO",
79
+ "NOT_EQUAL_TO",
80
+ "CONTAINS",
81
+ "NOT_CONTAINS",
82
+ "STARTS_WITH",
83
+ "NOT_STARTS_WITH",
84
+ "ENDS_WITH",
85
+ "NOT_ENDS_WITH",
86
+ "IS_EMPTY",
87
+ "IS_NOT_EMPTY",
88
+ ];
89
+ export const operatorsForKind = (kind) => (kind === "measure" ? MEASURE_OPERATORS : ATTRIBUTE_OPERATORS);
90
+ // Shared operator glyphs from sdk-ui-kit (same icons the measure-value-filter uses). Numeric/common
91
+ // operators have icons; text and empty operators render label-only (matching the attribute filter).
92
+ const OPERATOR_ICON_NAMES = {
93
+ ALL: "all",
94
+ GREATER_THAN: "greater-than",
95
+ GREATER_THAN_OR_EQUAL_TO: "greater-than-equal-to",
96
+ LESS_THAN: "less-than",
97
+ LESS_THAN_OR_EQUAL_TO: "less-than-equal-to",
98
+ EQUAL_TO: "equal-to",
99
+ NOT_EQUAL_TO: "not-equal-to",
100
+ BETWEEN: "between",
101
+ NOT_BETWEEN: "not-between",
102
+ };
103
+ export const operatorIcon = (operator) => {
104
+ const name = OPERATOR_ICON_NAMES[operator];
105
+ return name ? `gd-icon-${name}` : undefined;
106
+ };
107
+ // Type icon distinguishing attribute (ABC) from measure (metric) targets — same icons AD uses
108
+ // elsewhere for catalog/bucket items.
109
+ export const targetIcon = (kind) => kind === "attribute" ? "gd-icon-attribute" : "gd-icon-metric";
110
+ export const operatorArity = (operator) => {
111
+ if (NO_VALUE_OPERATORS.has(operator)) {
112
+ return "none";
113
+ }
114
+ return RANGE_OPERATORS.has(operator) ? "range" : "single";
115
+ };
116
+ // --- Factories -------------------------------------------------------------------------------
117
+ export const newCondition = () => ({
118
+ id: uuid(),
119
+ operator: "ALL",
120
+ value: { kind: "none" },
121
+ // Default: colored text on a transparent background (no fill).
122
+ format: { color: CF_DEFAULT_COLOR, scope: "cell" },
123
+ });
124
+ export const newRule = (target) => ({
125
+ id: uuid(),
126
+ target,
127
+ conditions: [newCondition()],
128
+ });
129
+ // --- Validation ------------------------------------------------------------------------------
130
+ const isConditionComplete = (condition, kind) => {
131
+ const { value } = condition;
132
+ switch (operatorArity(condition.operator)) {
133
+ case "none":
134
+ return true;
135
+ case "range":
136
+ return value.kind === "literalRange" && Number.isFinite(value.from) && Number.isFinite(value.to);
137
+ case "single":
138
+ if (value.kind !== "literal") {
139
+ return false;
140
+ }
141
+ // Guard the empty string first: `Number("") === 0` (not NaN), which would otherwise let an
142
+ // empty measure threshold pass as a valid 0.
143
+ return (String(value.value).trim() !== "" &&
144
+ (kind === "attribute" || !Number.isNaN(Number(value.value))));
145
+ }
146
+ };
147
+ /** A rule is saveable when every condition has the operand its operator requires. */
148
+ export const isRuleComplete = (rule) => rule.conditions.length > 0 &&
149
+ rule.conditions.every((condition) => isConditionComplete(condition, rule.target.kind));
@@ -15,6 +15,7 @@ export interface IConfigurationPanelContentProps<PanelConfig = any> {
15
15
  isError?: boolean;
16
16
  isLoading?: boolean;
17
17
  insight?: IInsightDefinition;
18
+ titlesByLocalId?: Record<string, string>;
18
19
  featureFlags?: ISettings;
19
20
  permissions?: IWorkspacePermissions;
20
21
  axis?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigurationPanelContent.d.ts","sourceRoot":"","sources":["../../../../src/internal/components/configurationPanels/ConfigurationPanelContent.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEtD,OAAO,EACH,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,KAAK,qBAAqB,EAG7B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,KAAK,SAAS,EAAiB,MAAM,kBAAkB,CAAC;AAEjE,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EACH,KAAK,4BAA4B,EACjC,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,wBAAwB,EAChC,MAAM,mCAAmC,CAAC;AAoB3C,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,MAAM,WAAW,+BAA+B,CAAC,WAAW,GAAG,GAAG;IAC9D,UAAU,CAAC,EAAE,wBAAwB,CAAC;IACtC,UAAU,CAAC,EAAE,WAAW,CAAC;IACzB,cAAc,CAAC,EAAE,eAAe,CAAC;IACjC,cAAc,CAAC,EAAE,GAAG,CAAC;IACrB,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,WAAW,CAAC,EAAE,qBAAqB,CAAC;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,CAAC;IAC3B,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,2BAA2B,CAAC,EAAE,4BAA4B,CAAC;IAC3D;;;;;;OAMG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACnC;AAED,8BAAsB,yBAAyB,CAC3C,CAAC,SAAS,+BAA+B,GAAG,+BAA+B,CAC7E,SAAQ,aAAa,CAAC,CAAC,CAAC;IACtB,OAAc,YAAY,EAAE,+BAA+B,CAgBzD;IAEF,SAAS,CAAC,uBAAuB,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAExD,YAAY,KAAK,EAAE,CAAC,EAGnB;IAEe,MAAM,4CAQrB;IAED,SAAS,CAAC,QAAQ,CAAC,wBAAwB,IAAI,SAAS,CAAC;IAEzD;;;OAGG;IACH,SAAS,CAAC,iBAAiB,CAAC,YAAY,CAAC,EAAE,WAAW,GAAG,OAAO,CAG/D;IAED,SAAS,CAAC,kBAAkB,IAAI,SAAS,CAsBxC;IAED,SAAS,CAAC,mBAAmB,IAAI,SAAS,CAYzC;IAED,SAAS,CAAC,yBAAyB,IAAI,SAAS,CA0C/C;IAED,SAAS,CAAC,qBAAqB,IAAI,SAAS,CAsB3C;IAED,SAAS,CAAC,sBAAsB,IAAI,SAAS,CAqC5C;IAED,SAAS,CAAC,0BAA0B,IAAI,SAAS,CAehD;IAED,SAAS,CAAC,qBAAqB,IAAI,SAAS,CAU3C;CACJ"}
1
+ {"version":3,"file":"ConfigurationPanelContent.d.ts","sourceRoot":"","sources":["../../../../src/internal/components/configurationPanels/ConfigurationPanelContent.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEtD,OAAO,EACH,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,KAAK,qBAAqB,EAG7B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,KAAK,SAAS,EAAiB,MAAM,kBAAkB,CAAC;AAEjE,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EACH,KAAK,4BAA4B,EACjC,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,wBAAwB,EAChC,MAAM,mCAAmC,CAAC;AAoB3C,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,MAAM,WAAW,+BAA+B,CAAC,WAAW,GAAG,GAAG;IAC9D,UAAU,CAAC,EAAE,wBAAwB,CAAC;IACtC,UAAU,CAAC,EAAE,WAAW,CAAC;IACzB,cAAc,CAAC,EAAE,eAAe,CAAC;IACjC,cAAc,CAAC,EAAE,GAAG,CAAC;IACrB,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,WAAW,CAAC,EAAE,qBAAqB,CAAC;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,CAAC;IAC3B,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,2BAA2B,CAAC,EAAE,4BAA4B,CAAC;IAC3D;;;;;;OAMG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACnC;AAED,8BAAsB,yBAAyB,CAC3C,CAAC,SAAS,+BAA+B,GAAG,+BAA+B,CAC7E,SAAQ,aAAa,CAAC,CAAC,CAAC;IACtB,OAAc,YAAY,EAAE,+BAA+B,CAgBzD;IAEF,SAAS,CAAC,uBAAuB,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAExD,YAAY,KAAK,EAAE,CAAC,EAGnB;IAEe,MAAM,4CAQrB;IAED,SAAS,CAAC,QAAQ,CAAC,wBAAwB,IAAI,SAAS,CAAC;IAEzD;;;OAGG;IACH,SAAS,CAAC,iBAAiB,CAAC,YAAY,CAAC,EAAE,WAAW,GAAG,OAAO,CAG/D;IAED,SAAS,CAAC,kBAAkB,IAAI,SAAS,CAsBxC;IAED,SAAS,CAAC,mBAAmB,IAAI,SAAS,CAYzC;IAED,SAAS,CAAC,yBAAyB,IAAI,SAAS,CA0C/C;IAED,SAAS,CAAC,qBAAqB,IAAI,SAAS,CAsB3C;IAED,SAAS,CAAC,sBAAsB,IAAI,SAAS,CAqC5C;IAED,SAAS,CAAC,0BAA0B,IAAI,SAAS,CAehD;IAED,SAAS,CAAC,qBAAqB,IAAI,SAAS,CAU3C;CACJ"}
@@ -8,6 +8,7 @@ export declare class PivotTableConfigurationPanel extends ConfigurationPanelCont
8
8
  private isPositionControlDisabled;
9
9
  private isColumnHeadersPositionControlDisabled;
10
10
  private renderCanvasSection;
11
+ private renderConditionalFormattingSection;
11
12
  private renderPagingSection;
12
13
  }
13
14
  //# sourceMappingURL=PivotTableConfigurationPanel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PivotTableConfigurationPanel.d.ts","sourceRoot":"","sources":["../../../../src/internal/components/configurationPanels/PivotTableConfigurationPanel.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAwBvC,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,qBAAa,4BAA6B,SAAQ,yBAAyB;IACvE,UAAmB,iBAAiB,CAAC,WAAW,CAAC,EAAE,WAAW,GAAG,OAAO,CAgBvE;IAED,SAAS,CAAC,wBAAwB,IAAI,SAAS,CAqB9C;IAED,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,yBAAyB;IAYjC,OAAO,CAAC,sCAAsC;IAU9C,OAAO,CAAC,mBAAmB;IAqD3B,OAAO,CAAC,mBAAmB;CAY9B"}
1
+ {"version":3,"file":"PivotTableConfigurationPanel.d.ts","sourceRoot":"","sources":["../../../../src/internal/components/configurationPanels/PivotTableConfigurationPanel.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAyBvC,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,qBAAa,4BAA6B,SAAQ,yBAAyB;IACvE,UAAmB,iBAAiB,CAAC,WAAW,CAAC,EAAE,WAAW,GAAG,OAAO,CAgBvE;IAED,SAAS,CAAC,wBAAwB,IAAI,SAAS,CAyB9C;IAED,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,yBAAyB;IAYjC,OAAO,CAAC,sCAAsC;IAU9C,OAAO,CAAC,mBAAmB;IAqD3B,OAAO,CAAC,kCAAkC;IAe1C,OAAO,CAAC,mBAAmB;CAY9B"}
@@ -8,6 +8,7 @@ import { BUBBLE_ARROW_OFFSET_X, BUBBLE_ARROW_OFFSET_Y, HIDE_DELAY_DEFAULT, SHOW_
8
8
  import { isSetColumnHeadersPositionToLeftAllowed } from "../../utils/controlsHelper.js";
9
9
  import { CellsControl } from "../configurationControls/CellsControl.js";
10
10
  import { ColumnHeadersPositionControl } from "../configurationControls/ColumnHeadersPositionControl.js";
11
+ import { ConditionalFormattingSection } from "../configurationControls/conditionalFormatting/ConditionalFormattingSection.js";
11
12
  import { ConfigDummySection } from "../configurationControls/ConfigDummySection.js";
12
13
  import { ConfigSection } from "../configurationControls/ConfigSection.js";
13
14
  import { GrandTotalsControl } from "../configurationControls/GrandTotalsControl.js";
@@ -32,8 +33,11 @@ export class PivotTableConfigurationPanel extends ConfigurationPanelContent {
32
33
  const { featureFlags } = this.props;
33
34
  const enableNewPivotTable = featureFlags?.enableNewPivotTable ?? true;
34
35
  const enablePivotTablePagination = featureFlags?.enablePivotTablePagination ?? true;
36
+ const enableConditionalFormatting = featureFlags?.enableConditionalFormatting ?? false;
35
37
  return (_jsxs(BubbleHoverTrigger, { showDelay: SHOW_DELAY_DEFAULT, hideDelay: HIDE_DELAY_DEFAULT, children: [
36
- _jsxs("div", { children: [this.renderInteractionsSection(), enableNewPivotTable && enablePivotTablePagination ? this.renderPagingSection() : null, this.renderCanvasSection()] }), _jsx(Bubble, { className: this.getBubbleClassNames(), arrowOffsets: { "tc bc": [BUBBLE_ARROW_OFFSET_X, BUBBLE_ARROW_OFFSET_Y] }, alignPoints: [{ align: "tc bc" }], children: _jsx(FormattedMessage, { id: "properties.config.not_applicable" }) })
38
+ _jsxs("div", { children: [this.renderInteractionsSection(), enableNewPivotTable && enablePivotTablePagination ? this.renderPagingSection() : null, this.renderCanvasSection(), enableNewPivotTable && enableConditionalFormatting
39
+ ? this.renderConditionalFormattingSection()
40
+ : null] }), _jsx(Bubble, { className: this.getBubbleClassNames(), arrowOffsets: { "tc bc": [BUBBLE_ARROW_OFFSET_X, BUBBLE_ARROW_OFFSET_Y] }, alignPoints: [{ align: "tc bc" }], children: _jsx(FormattedMessage, { id: "properties.config.not_applicable" }) })
37
41
  ] }));
38
42
  }
39
43
  getBubbleClassNames() {
@@ -69,6 +73,10 @@ export class PivotTableConfigurationPanel extends ConfigurationPanelContent {
69
73
  ] })) : null] }));
70
74
  return panelConfig.supportsAttributeHierarchies ? (_jsx(ConfigSection, { id: "canvas_section", className: "gd-table-canvas-section", title: messages["canvasTitle"].id, propertiesMeta: propertiesMeta, pushData: pushData, children: canvasSection })) : (canvasSection);
71
75
  }
76
+ renderConditionalFormattingSection() {
77
+ const { properties, propertiesMeta, insight, titlesByLocalId, pushData, isLoading } = this.props;
78
+ return (_jsx(ConditionalFormattingSection, { properties: properties, propertiesMeta: propertiesMeta, insight: insight, titlesByLocalId: titlesByLocalId, pushData: pushData, isLoading: isLoading }));
79
+ }
72
80
  renderPagingSection() {
73
81
  const { properties, pushData, isLoading, propertiesMeta } = this.props;
74
82
  return (_jsx(PagingSection, { properties: properties, propertiesMeta: propertiesMeta, pushData: pushData, isDisabled: isLoading }));
@@ -9,7 +9,6 @@ export interface IAddWorkspaceToSubjectsProps extends IWithTelemetryProps {
9
9
  organizationId: string;
10
10
  onSuccess: () => void;
11
11
  onClose: () => void;
12
- areFilterViewsEnabled?: boolean;
13
12
  }
14
13
  /**
15
14
  * @internal
@@ -1 +1 @@
1
- {"version":3,"file":"AddWorkspaceToSubjects.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/dialogs/userManagementDialogs/AddWorkspaceToSubjects.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,mBAAmB,EAAiB,MAAM,uBAAuB,CAAC;AAChF,OAAO,EAA0B,KAAK,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAMrF;;GAEG;AACH,MAAM,WAAW,4BAA6B,SAAQ,mBAAmB;IACrE,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,WAAW,EAAE,0BAA0B,CAAC;IACxC,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACnC;AAkCD;;GAEG;AACH,eAAO,MAAM,sBAAsB;;;CAAiD,CAAC"}
1
+ {"version":3,"file":"AddWorkspaceToSubjects.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/dialogs/userManagementDialogs/AddWorkspaceToSubjects.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,mBAAmB,EAAiB,MAAM,uBAAuB,CAAC;AAChF,OAAO,EAA0B,KAAK,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAMrF;;GAEG;AACH,MAAM,WAAW,4BAA6B,SAAQ,mBAAmB;IACrE,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,WAAW,EAAE,0BAA0B,CAAC;IACxC,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,IAAI,CAAC;CACvB;AAgCD;;GAEG;AACH,eAAO,MAAM,sBAAsB;;;CAAiD,CAAC"}
@@ -1,13 +1,13 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- // (C) 2023-2025 GoodData Corporation
2
+ // (C) 2023-2026 GoodData Corporation
3
3
  import { Overlay } from "@gooddata/sdk-ui-kit";
4
4
  import { OrganizationIdProvider } from "./OrganizationIdContext.js";
5
5
  import { withTelemetry } from "./TelemetryContext.js";
6
6
  import { AddWorkspace } from "./Workspace/AddWorkspace.js";
7
7
  const alignPoints = [{ align: "cc cc" }];
8
8
  const noGrantedWorkspaces = [];
9
- function AddWorkspaceToSubjectsComponent({ ids, subjectType, organizationId, onSuccess, onClose, areFilterViewsEnabled = false, }) {
10
- return (_jsx(OrganizationIdProvider, { organizationId: organizationId, children: _jsx(Overlay, { alignPoints: alignPoints, isModal: true, positionType: "fixed", className: "gd-user-management-dialog", resizeObserverThreshold: 0.2, children: _jsx(AddWorkspace, { ids: ids, subjectType: subjectType, grantedWorkspaces: noGrantedWorkspaces, enableBackButton: false, onSubmit: onSuccess, onCancel: onClose, onClose: onClose, areFilterViewsEnabled: areFilterViewsEnabled }) }) }));
9
+ function AddWorkspaceToSubjectsComponent({ ids, subjectType, organizationId, onSuccess, onClose, }) {
10
+ return (_jsx(OrganizationIdProvider, { organizationId: organizationId, children: _jsx(Overlay, { alignPoints: alignPoints, isModal: true, positionType: "fixed", className: "gd-user-management-dialog", resizeObserverThreshold: 0.2, children: _jsx(AddWorkspace, { ids: ids, subjectType: subjectType, grantedWorkspaces: noGrantedWorkspaces, enableBackButton: false, onSubmit: onSuccess, onCancel: onClose, onClose: onClose }) }) }));
11
11
  }
12
12
  /**
13
13
  * @internal
@@ -13,7 +13,6 @@ export interface IUserEditDialogProps extends IWithTelemetryProps {
13
13
  onSuccess: () => void;
14
14
  onClose: () => void;
15
15
  renderDataSourceIcon?: (dataSource: IGrantedDataSource) => ReactElement;
16
- areFilterViewsEnabled?: boolean;
17
16
  isSystemAccountFilteringEnabled?: boolean;
18
17
  selectedTab?: UserTabId;
19
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"UserEditDialog.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/dialogs/userManagementDialogs/UserEditDialog.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAqB,MAAM,OAAO,CAAC;AA0B7D,OAAO,EAAE,KAAK,mBAAmB,EAAiB,MAAM,uBAAuB,CAAC;AAChF,OAAO,EACH,KAAK,kBAAkB,EAEvB,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACjB,MAAM,YAAY,CAAC;AAUpB;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,mBAAmB;IAC7D,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,oBAAoB,CAAC,EAAE,CAAC,UAAU,EAAE,kBAAkB,KAAK,YAAY,CAAC;IACxE,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,+BAA+B,CAAC,EAAE,OAAO,CAAC;IAC1C,WAAW,CAAC,EAAE,SAAS,CAAC;CAC3B;AA8QD;;GAEG;AACH,eAAO,MAAM,cAAc;;;CAAyC,CAAC"}
1
+ {"version":3,"file":"UserEditDialog.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/dialogs/userManagementDialogs/UserEditDialog.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAqB,MAAM,OAAO,CAAC;AA0B7D,OAAO,EAAE,KAAK,mBAAmB,EAAiB,MAAM,uBAAuB,CAAC;AAChF,OAAO,EACH,KAAK,kBAAkB,EAEvB,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACjB,MAAM,YAAY,CAAC;AAUpB;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,mBAAmB;IAC7D,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,oBAAoB,CAAC,EAAE,CAAC,UAAU,EAAE,kBAAkB,KAAK,YAAY,CAAC;IACxE,+BAA+B,CAAC,EAAE,OAAO,CAAC;IAC1C,WAAW,CAAC,EAAE,SAAS,CAAC;CAC3B;AA2QD;;GAEG;AACH,eAAO,MAAM,cAAc;;;CAAyC,CAAC"}
@@ -23,7 +23,7 @@ import { ViewDialog } from "./ViewDialog.js";
23
23
  import { AddWorkspace } from "./Workspace/AddWorkspace.js";
24
24
  import { WorkspaceList } from "./Workspace/WorkspaceList.js";
25
25
  const alignPoints = [{ align: "cc cc" }];
26
- function UserEditDialogComponent({ userId, organizationId, isAdmin, onSuccess, onClose, initialView = "VIEW", changeUserMembership = false, renderDataSourceIcon, areFilterViewsEnabled = false, isSystemAccountFilteringEnabled = false, selectedTab = undefined, }) {
26
+ function UserEditDialogComponent({ userId, organizationId, isAdmin, onSuccess, onClose, initialView = "VIEW", changeUserMembership = false, renderDataSourceIcon, isSystemAccountFilteringEnabled = false, selectedTab = undefined, }) {
27
27
  const intl = useIntl();
28
28
  const { dialogMode, setDialogMode } = useUserDialogMode(initialView);
29
29
  const { user, isCurrentlyAdmin, onUserDetailsChanged, setIsAdmin, error, isLoading: userIsLoading, } = useUser(userId, organizationId, isAdmin, onSuccess);
@@ -82,7 +82,7 @@ function UserEditDialogComponent({ userId, organizationId, isAdmin, onSuccess, o
82
82
  _jsx(LoadingComponent, { className: "gd-user-management-dialog-loading" }), _jsx(ErrorDialog, { dialogTitle: "", onClose: onClose })
83
83
  ] })) : error ? (_jsx(ErrorDialog, { onClose: onClose, dialogTitle: intl.formatMessage(messages.userLoadingErrorTitle), children: _jsx(Message, { type: "error", className: "gd-user-management-dialog-error", children: intl.formatMessage(isUnexpectedResponseError(error) && error.httpStatus === 404
84
84
  ? messages.userLoadingErrorNotExist
85
- : messages.userLoadingErrorUnknown) }) })) : (_jsxs(_Fragment, { children: [dialogMode === "VIEW" && (_jsxs(ViewDialog, { dialogTitle: extractUserName(user), isAdmin: isCurrentlyAdmin, isDeleteLinkEnabled: !isBootstrapUser(user), deleteLinkDisabledTooltipTextId: messages.deleteUserDisabledTooltip.id, deleteLinkText: intl.formatMessage(messages.deleteUserLink), onOpenDeleteDialog: onOpenDeleteDialog, onClose: onClose, onEdit: () => setDialogMode(editButtonMode), editButtonText: editButtonText, editButtonIconClassName: editButtonIconClassName, children: [isCurrentlyAdmin ? (_jsx("div", { className: "gd-message information gd-user-management-admin-alert s-admin-message", children: _jsx("div", { className: "gd-message-text", children: intl.formatMessage(messages.adminAlert) }) })) : null, _jsx(Tabs, { selectedTabId: selectedTabId.id, onTabSelect: setSelectedTabId, tabs: tabs, className: "gd-user-management-dialog-tabs s-user-management-tabs" }), selectedTabId.id === userDialogTabsMessages.workspaces.id && (_jsx(WorkspaceList, { workspaces: grantedWorkspaces, subjectType: "user", mode: "VIEW", onDelete: removeGrantedWorkspace, onChange: updateGrantedWorkspace, areFilterViewsEnabled: areFilterViewsEnabled, onClick: handleWorkspaceEdit })), selectedTabId.id === userDialogTabsMessages.userGroups.id && (_jsx(UserGroupsList, { userGroups: grantedUserGroups, mode: "VIEW", onDelete: removeGrantedUserGroup, isBootstrapUser: isBootstrapUser(user), bootstrapUserGroupId: bootstrapUserGroupId })), selectedTabId.id === userDialogTabsMessages.details.id && (_jsx(UserDetailsView, { user: user, isAdmin: isCurrentlyAdmin, isBootstrapUser: isBootstrapUser(user), mode: "VIEW", isSystemAccountFilteringEnabled: isSystemAccountFilteringEnabled })), selectedTabId.id === userDialogTabsMessages.dataSources.id && (_jsx(DataSourceList, { dataSources: grantedDataSources, subjectType: "user", mode: "VIEW", onDelete: removeGrantedDataSource, onChange: updateGrantedDataSource, renderDataSourceIcon: renderDataSourceIcon }))] })), dialogMode === "WORKSPACE" && (_jsx(AddWorkspace, { ids: [userId], subjectType: "user", grantedWorkspaces: grantedWorkspaces, enableBackButton: !isOpenedInEditMode, onSubmit: handleWorkspaceChanged, onCancel: isOpenedInEditMode ? onClose : handleWorkspaceCancel, onClose: onClose, areFilterViewsEnabled: areFilterViewsEnabled, editWorkspace: workspaceToEdit })), dialogMode === "USER_GROUPS" && (_jsx(AddUserGroup, { userIds: [userId], grantedUserGroups: grantedUserGroups, enableBackButton: !isOpenedInEditMode, onSubmit: onUserGroupsChanged, onCancel: isOpenedInEditMode ? onClose : () => setDialogMode("VIEW"), onClose: onClose })), dialogMode === "DATA_SOURCES" && (_jsx(AddDataSource, { ids: [userId], subjectType: "user", grantedDataSources: grantedDataSources, enableBackButton: !isOpenedInEditMode, onSubmit: onDataSourcesChanged, onCancel: isOpenedInEditMode ? onClose : () => setDialogMode("VIEW"), onClose: onClose, renderDataSourceIcon: renderDataSourceIcon })), dialogMode === "DETAIL" && (_jsx(EditUserDetails, { user: user, isAdmin: isCurrentlyAdmin, isBootstrapUser: isBootstrapUser(user), enableBackButton: !isOpenedInEditMode, changeUserMembership: changeUserMembership, isSystemAccountFilteringEnabled: isSystemAccountFilteringEnabled, onSubmit: onUserDetailsChanged, onCancel: isOpenedInEditMode ? onClose : () => setDialogMode("VIEW"), onClose: onClose, removeAdminGroup: removeAdminGroup }))] })) }) })
85
+ : messages.userLoadingErrorUnknown) }) })) : (_jsxs(_Fragment, { children: [dialogMode === "VIEW" && (_jsxs(ViewDialog, { dialogTitle: extractUserName(user), isAdmin: isCurrentlyAdmin, isDeleteLinkEnabled: !isBootstrapUser(user), deleteLinkDisabledTooltipTextId: messages.deleteUserDisabledTooltip.id, deleteLinkText: intl.formatMessage(messages.deleteUserLink), onOpenDeleteDialog: onOpenDeleteDialog, onClose: onClose, onEdit: () => setDialogMode(editButtonMode), editButtonText: editButtonText, editButtonIconClassName: editButtonIconClassName, children: [isCurrentlyAdmin ? (_jsx("div", { className: "gd-message information gd-user-management-admin-alert s-admin-message", children: _jsx("div", { className: "gd-message-text", children: intl.formatMessage(messages.adminAlert) }) })) : null, _jsx(Tabs, { selectedTabId: selectedTabId.id, onTabSelect: setSelectedTabId, tabs: tabs, className: "gd-user-management-dialog-tabs s-user-management-tabs" }), selectedTabId.id === userDialogTabsMessages.workspaces.id && (_jsx(WorkspaceList, { workspaces: grantedWorkspaces, subjectType: "user", mode: "VIEW", onDelete: removeGrantedWorkspace, onChange: updateGrantedWorkspace, onClick: handleWorkspaceEdit })), selectedTabId.id === userDialogTabsMessages.userGroups.id && (_jsx(UserGroupsList, { userGroups: grantedUserGroups, mode: "VIEW", onDelete: removeGrantedUserGroup, isBootstrapUser: isBootstrapUser(user), bootstrapUserGroupId: bootstrapUserGroupId })), selectedTabId.id === userDialogTabsMessages.details.id && (_jsx(UserDetailsView, { user: user, isAdmin: isCurrentlyAdmin, isBootstrapUser: isBootstrapUser(user), mode: "VIEW", isSystemAccountFilteringEnabled: isSystemAccountFilteringEnabled })), selectedTabId.id === userDialogTabsMessages.dataSources.id && (_jsx(DataSourceList, { dataSources: grantedDataSources, subjectType: "user", mode: "VIEW", onDelete: removeGrantedDataSource, onChange: updateGrantedDataSource, renderDataSourceIcon: renderDataSourceIcon }))] })), dialogMode === "WORKSPACE" && (_jsx(AddWorkspace, { ids: [userId], subjectType: "user", grantedWorkspaces: grantedWorkspaces, enableBackButton: !isOpenedInEditMode, onSubmit: handleWorkspaceChanged, onCancel: isOpenedInEditMode ? onClose : handleWorkspaceCancel, onClose: onClose, editWorkspace: workspaceToEdit })), dialogMode === "USER_GROUPS" && (_jsx(AddUserGroup, { userIds: [userId], grantedUserGroups: grantedUserGroups, enableBackButton: !isOpenedInEditMode, onSubmit: onUserGroupsChanged, onCancel: isOpenedInEditMode ? onClose : () => setDialogMode("VIEW"), onClose: onClose })), dialogMode === "DATA_SOURCES" && (_jsx(AddDataSource, { ids: [userId], subjectType: "user", grantedDataSources: grantedDataSources, enableBackButton: !isOpenedInEditMode, onSubmit: onDataSourcesChanged, onCancel: isOpenedInEditMode ? onClose : () => setDialogMode("VIEW"), onClose: onClose, renderDataSourceIcon: renderDataSourceIcon })), dialogMode === "DETAIL" && (_jsx(EditUserDetails, { user: user, isAdmin: isCurrentlyAdmin, isBootstrapUser: isBootstrapUser(user), enableBackButton: !isOpenedInEditMode, changeUserMembership: changeUserMembership, isSystemAccountFilteringEnabled: isSystemAccountFilteringEnabled, onSubmit: onUserDetailsChanged, onCancel: isOpenedInEditMode ? onClose : () => setDialogMode("VIEW"), onClose: onClose, removeAdminGroup: removeAdminGroup }))] })) }) })
86
86
  ] }));
87
87
  }
88
88
  /**
@@ -12,7 +12,6 @@ export interface IUserGroupEditDialogProps extends IWithTelemetryProps {
12
12
  onSuccess: () => void;
13
13
  onClose: () => void;
14
14
  renderDataSourceIcon?: (dataSource: IGrantedDataSource) => ReactElement;
15
- areFilterViewsEnabled?: boolean;
16
15
  }
17
16
  /**
18
17
  * @internal
@@ -1 +1 @@
1
- {"version":3,"file":"UserGroupEditDialog.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/dialogs/userManagementDialogs/UserGroupEditDialog.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAqB,MAAM,OAAO,CAAC;AA0B7D,OAAO,EAAE,KAAK,mBAAmB,EAAiB,MAAM,uBAAuB,CAAC;AAChF,OAAO,EAAE,KAAK,kBAAkB,EAA0B,KAAK,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAU3G;;GAEG;AACH,MAAM,WAAW,yBAA0B,SAAQ,mBAAmB;IAClE,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,uBAAuB,CAAC;IACtC,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,oBAAoB,CAAC,EAAE,CAAC,UAAU,EAAE,kBAAkB,KAAK,YAAY,CAAC;IACxE,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACnC;AA2QD;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;CAA8C,CAAC"}
1
+ {"version":3,"file":"UserGroupEditDialog.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/dialogs/userManagementDialogs/UserGroupEditDialog.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAqB,MAAM,OAAO,CAAC;AA0B7D,OAAO,EAAE,KAAK,mBAAmB,EAAiB,MAAM,uBAAuB,CAAC;AAChF,OAAO,EAAE,KAAK,kBAAkB,EAA0B,KAAK,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAU3G;;GAEG;AACH,MAAM,WAAW,yBAA0B,SAAQ,mBAAmB;IAClE,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,uBAAuB,CAAC;IACtC,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,oBAAoB,CAAC,EAAE,CAAC,UAAU,EAAE,kBAAkB,KAAK,YAAY,CAAC;CAC3E;AAwQD;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;CAA8C,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- // (C) 2023-2025 GoodData Corporation
2
+ // (C) 2023-2026 GoodData Corporation
3
3
  import { useMemo, useState } from "react";
4
4
  import { useIntl } from "react-intl";
5
5
  import { isUnexpectedResponseError } from "@gooddata/sdk-backend-spi";
@@ -23,7 +23,7 @@ import { ViewDialog } from "./ViewDialog.js";
23
23
  import { AddWorkspace } from "./Workspace/AddWorkspace.js";
24
24
  import { WorkspaceList } from "./Workspace/WorkspaceList.js";
25
25
  const alignPoints = [{ align: "cc cc" }];
26
- function UserGroupEditDialogComponent({ userGroupId, organizationId, isAdmin, onSuccess, onClose, initialView = "VIEW", renderDataSourceIcon, areFilterViewsEnabled = false, }) {
26
+ function UserGroupEditDialogComponent({ userGroupId, organizationId, isAdmin, onSuccess, onClose, initialView = "VIEW", renderDataSourceIcon, }) {
27
27
  const intl = useIntl();
28
28
  const { dialogMode, setDialogMode } = useUserGroupDialogMode(initialView);
29
29
  const { userGroup, onUserGroupDetailsChanged, error, isLoading: userGroupIsLoading, } = useUserGroup(userGroupId, organizationId, onSuccess);
@@ -84,7 +84,7 @@ function UserGroupEditDialogComponent({ userGroupId, organizationId, isAdmin, on
84
84
  ? messages.userGroupLoadingErrorNotExist
85
85
  : messages.userGroupLoadingErrorUnknown) }) })) : (_jsxs(_Fragment, { children: [dialogMode === "VIEW" && (_jsxs(ViewDialog, { dialogTitle: extractUserGroupName(userGroup), isAdmin: isAdmin, isDeleteLinkEnabled: !isBootstrapUserGroup(userGroup) && grantedUsers?.length === 0, deleteLinkDisabledTooltipTextId: isBootstrapUserGroup(userGroup)
86
86
  ? messages.deleteAdminUserGroupTooltip.id
87
- : messages.deleteNonEmptyUserGroupTooltip.id, deleteLinkText: intl.formatMessage(messages.deleteUserGroupLink), onOpenDeleteDialog: onOpenDeleteDialog, onClose: onClose, onEdit: () => setDialogMode(editButtonMode), editButtonText: editButtonText, editButtonIconClassName: editButtonIconClassName, children: [isAdmin ? (_jsx("div", { className: "gd-message information gd-user-management-admin-alert s-admin-message", children: _jsx("div", { className: "gd-message-text", children: intl.formatMessage(messages.adminGroupAlert) }) })) : null, _jsx(Tabs, { selectedTabId: selectedTabId.id, onTabSelect: setSelectedTabId, tabs: tabs, className: "gd-user-management-dialog-tabs s-user-management-tabs" }), selectedTabId.id === userGroupDialogTabsMessages.workspaces.id && (_jsx(WorkspaceList, { workspaces: grantedWorkspaces, subjectType: "userGroup", mode: "VIEW", onDelete: removeGrantedWorkspace, onChange: updateGrantedWorkspace, areFilterViewsEnabled: areFilterViewsEnabled, onClick: handleWorkspaceEdit })), selectedTabId.id === userGroupDialogTabsMessages.dataSources.id && (_jsx(DataSourceList, { dataSources: grantedDataSources, subjectType: "userGroup", mode: "VIEW", onDelete: removeGrantedDataSource, onChange: updateGrantedDataSource, renderDataSourceIcon: renderDataSourceIcon })), selectedTabId.id === userGroupDialogTabsMessages.users.id && (_jsx(UsersList, { users: grantedUsers, mode: "VIEW", onDelete: removeGrantedUsers, isBootstrapUserGroup: isBootstrapUserGroup(userGroup), bootstrapUserId: bootstrapUserId })), selectedTabId.id === userGroupDialogTabsMessages.details.id && (_jsx(UserGroupDetailsView, { userGroup: userGroup, mode: "VIEW" }))] })), dialogMode === "WORKSPACE" && (_jsx(AddWorkspace, { ids: [userGroupId], subjectType: "userGroup", grantedWorkspaces: grantedWorkspaces, enableBackButton: !isOpenedInEditMode, onSubmit: handleWorkspaceChanged, onCancel: isOpenedInEditMode ? onClose : handleWorkspaceCancel, onClose: onClose, areFilterViewsEnabled: areFilterViewsEnabled, editWorkspace: workspaceToEdit })), dialogMode === "USERS" && (_jsx(AddUser, { userGroupIds: [userGroupId], grantedUsers: grantedUsers, enableBackButton: !isOpenedInEditMode, onSubmit: onUsersChanged, onCancel: isOpenedInEditMode ? onClose : () => setDialogMode("VIEW"), onClose: onClose })), dialogMode === "DATA_SOURCES" && (_jsx(AddDataSource, { ids: [userGroupId], subjectType: "userGroup", grantedDataSources: grantedDataSources, enableBackButton: !isOpenedInEditMode, onSubmit: onDataSourcesChanged, onCancel: isOpenedInEditMode ? onClose : () => setDialogMode("VIEW"), onClose: onClose, renderDataSourceIcon: renderDataSourceIcon })), dialogMode === "DETAIL" && (_jsx(EditUserGroupDetails, { userGroup: userGroup, enableBackButton: !isOpenedInEditMode, onSubmit: onUserGroupDetailsChanged, onCancel: isOpenedInEditMode ? onClose : () => setDialogMode("VIEW"), onClose: onClose }))] })) }) })
87
+ : messages.deleteNonEmptyUserGroupTooltip.id, deleteLinkText: intl.formatMessage(messages.deleteUserGroupLink), onOpenDeleteDialog: onOpenDeleteDialog, onClose: onClose, onEdit: () => setDialogMode(editButtonMode), editButtonText: editButtonText, editButtonIconClassName: editButtonIconClassName, children: [isAdmin ? (_jsx("div", { className: "gd-message information gd-user-management-admin-alert s-admin-message", children: _jsx("div", { className: "gd-message-text", children: intl.formatMessage(messages.adminGroupAlert) }) })) : null, _jsx(Tabs, { selectedTabId: selectedTabId.id, onTabSelect: setSelectedTabId, tabs: tabs, className: "gd-user-management-dialog-tabs s-user-management-tabs" }), selectedTabId.id === userGroupDialogTabsMessages.workspaces.id && (_jsx(WorkspaceList, { workspaces: grantedWorkspaces, subjectType: "userGroup", mode: "VIEW", onDelete: removeGrantedWorkspace, onChange: updateGrantedWorkspace, onClick: handleWorkspaceEdit })), selectedTabId.id === userGroupDialogTabsMessages.dataSources.id && (_jsx(DataSourceList, { dataSources: grantedDataSources, subjectType: "userGroup", mode: "VIEW", onDelete: removeGrantedDataSource, onChange: updateGrantedDataSource, renderDataSourceIcon: renderDataSourceIcon })), selectedTabId.id === userGroupDialogTabsMessages.users.id && (_jsx(UsersList, { users: grantedUsers, mode: "VIEW", onDelete: removeGrantedUsers, isBootstrapUserGroup: isBootstrapUserGroup(userGroup), bootstrapUserId: bootstrapUserId })), selectedTabId.id === userGroupDialogTabsMessages.details.id && (_jsx(UserGroupDetailsView, { userGroup: userGroup, mode: "VIEW" }))] })), dialogMode === "WORKSPACE" && (_jsx(AddWorkspace, { ids: [userGroupId], subjectType: "userGroup", grantedWorkspaces: grantedWorkspaces, enableBackButton: !isOpenedInEditMode, onSubmit: handleWorkspaceChanged, onCancel: isOpenedInEditMode ? onClose : handleWorkspaceCancel, onClose: onClose, editWorkspace: workspaceToEdit })), dialogMode === "USERS" && (_jsx(AddUser, { userGroupIds: [userGroupId], grantedUsers: grantedUsers, enableBackButton: !isOpenedInEditMode, onSubmit: onUsersChanged, onCancel: isOpenedInEditMode ? onClose : () => setDialogMode("VIEW"), onClose: onClose })), dialogMode === "DATA_SOURCES" && (_jsx(AddDataSource, { ids: [userGroupId], subjectType: "userGroup", grantedDataSources: grantedDataSources, enableBackButton: !isOpenedInEditMode, onSubmit: onDataSourcesChanged, onCancel: isOpenedInEditMode ? onClose : () => setDialogMode("VIEW"), onClose: onClose, renderDataSourceIcon: renderDataSourceIcon })), dialogMode === "DETAIL" && (_jsx(EditUserGroupDetails, { userGroup: userGroup, enableBackButton: !isOpenedInEditMode, onSubmit: onUserGroupDetailsChanged, onCancel: isOpenedInEditMode ? onClose : () => setDialogMode("VIEW"), onClose: onClose }))] })) }) })
88
88
  ] }));
89
89
  }
90
90
  /**
@@ -7,8 +7,7 @@ export interface IAddWorkspaceProps {
7
7
  onSubmit: (workspaces: IGrantedWorkspace[]) => void;
8
8
  onCancel: () => void;
9
9
  onClose: () => void;
10
- areFilterViewsEnabled: boolean;
11
10
  editWorkspace?: IGrantedWorkspace;
12
11
  }
13
- export declare function AddWorkspace({ ids, subjectType, grantedWorkspaces, enableBackButton, onSubmit, onCancel, onClose, areFilterViewsEnabled, editWorkspace }: IAddWorkspaceProps): import("react/jsx-runtime").JSX.Element;
12
+ export declare function AddWorkspace({ ids, subjectType, grantedWorkspaces, enableBackButton, onSubmit, onCancel, onClose, editWorkspace }: IAddWorkspaceProps): import("react/jsx-runtime").JSX.Element;
14
13
  //# sourceMappingURL=AddWorkspace.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AddWorkspace.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/components/dialogs/userManagementDialogs/Workspace/AddWorkspace.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAUtF,MAAM,WAAW,kBAAkB;IAC/B,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,WAAW,EAAE,0BAA0B,CAAC;IACxC,iBAAiB,EAAE,iBAAiB,EAAE,GAAG,SAAS,CAAC;IACnD,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,EAAE,CAAC,UAAU,EAAE,iBAAiB,EAAE,KAAK,IAAI,CAAC;IACpD,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,aAAa,CAAC,EAAE,iBAAiB,CAAC;CACrC;AAED,wBAAgB,YAAY,CAAC,EACzB,GAAG,EACH,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,qBAAqB,EACrB,aAAa,EAChB,EAAE,kBAAkB,2CAoEpB"}
1
+ {"version":3,"file":"AddWorkspace.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/components/dialogs/userManagementDialogs/Workspace/AddWorkspace.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAUtF,MAAM,WAAW,kBAAkB;IAC/B,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,WAAW,EAAE,0BAA0B,CAAC;IACxC,iBAAiB,EAAE,iBAAiB,EAAE,GAAG,SAAS,CAAC;IACnD,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,EAAE,CAAC,UAAU,EAAE,iBAAiB,EAAE,KAAK,IAAI,CAAC;IACpD,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,aAAa,CAAC,EAAE,iBAAiB,CAAC;CACrC;AAED,wBAAgB,YAAY,CAAC,EACzB,GAAG,EACH,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,aAAa,EAChB,EAAE,kBAAkB,2CAmEpB"}
@@ -8,7 +8,7 @@ import { AddSingleWorkspaceSelect } from "./AddSingleWorkspaceSelect.js";
8
8
  import { useAddWorkspace } from "./useAddWorkspace.js";
9
9
  import { GranularPermissions } from "./WorkspaceItem/GranularPermissions.js";
10
10
  import { areRedundantPermissionsPresent, areWorkspacePermissionsEqual, } from "./WorkspaceItem/granularPermissionUtils.js";
11
- export function AddWorkspace({ ids, subjectType, grantedWorkspaces, enableBackButton, onSubmit, onCancel, onClose, areFilterViewsEnabled, editWorkspace, }) {
11
+ export function AddWorkspace({ ids, subjectType, grantedWorkspaces, enableBackButton, onSubmit, onCancel, onClose, editWorkspace, }) {
12
12
  const intl = useIntl();
13
13
  const { addedWorkspaces, isProcessing, onAdd, onChange, onOverwriteSelect } = useAddWorkspace(ids, subjectType, onSubmit, onCancel, editWorkspace);
14
14
  const isGranularPermissionsChanged = useMemo(() => {
@@ -26,6 +26,6 @@ export function AddWorkspace({ ids, subjectType, grantedWorkspaces, enableBackBu
26
26
  }), href: "https://www.gooddata.com/docs/cloud/manage-organization/manage-permissions/set-permissions-for-workspace/", iconClass: "gd-icon-circle-question" }) }));
27
27
  }, [intl]);
28
28
  return (_jsxs(ConfirmDialogBase, { className: "gd-share-dialog gd-share-dialog-add-workspace s-user-management-add-workspace", displayCloseButton: true, isPositive: true, isSubmitDisabled: addedWorkspaces.length === 0 || isProcessing || !isGranularPermissionsChanged, showProgressIndicator: isProcessing, headline: intl.formatMessage(editWorkspace ? messages.editWorkspaceDialogTitle : messages.addWorkspaceDialogTitle), cancelButtonText: intl.formatMessage(messages.addWorkspaceDialogCloseButton), submitButtonText: intl.formatMessage(messages.addWorkspaceDialogSaveButton), onCancel: onCancel, onSubmit: onAdd, onClose: onClose, headerLeftButtonRenderer: enableBackButton ? backButtonRenderer : undefined, footerLeftRenderer: leftFooterRenderer, children: [
29
- _jsx(AddSingleWorkspaceSelect, { addedWorkspace: addedWorkspaces[0], grantedWorkspaces: grantedWorkspaces, onSelectWorkspace: onOverwriteSelect, mode: editWorkspace ? "VIEW" : "EDIT" }), _jsx(GranularPermissions, { workspace: addedWorkspaces[0], onChange: onChange, areFilterViewsEnabled: areFilterViewsEnabled, showRedundancyWarningMessage: showRedundancyWarningMessage })
29
+ _jsx(AddSingleWorkspaceSelect, { addedWorkspace: addedWorkspaces[0], grantedWorkspaces: grantedWorkspaces, onSelectWorkspace: onOverwriteSelect, mode: editWorkspace ? "VIEW" : "EDIT" }), _jsx(GranularPermissions, { workspace: addedWorkspaces[0], onChange: onChange, showRedundancyWarningMessage: showRedundancyWarningMessage })
30
30
  ] }));
31
31
  }
@@ -2,9 +2,8 @@ import { type IGrantedWorkspace } from "../../types.js";
2
2
  interface IGranularPermissionsProps {
3
3
  workspace: IGrantedWorkspace | undefined;
4
4
  onChange: (workspace: IGrantedWorkspace) => void;
5
- areFilterViewsEnabled: boolean;
6
5
  showRedundancyWarningMessage: boolean;
7
6
  }
8
- export declare function GranularPermissions({ workspace, areFilterViewsEnabled, onChange, showRedundancyWarningMessage }: IGranularPermissionsProps): import("react/jsx-runtime").JSX.Element;
7
+ export declare function GranularPermissions({ workspace, onChange, showRedundancyWarningMessage }: IGranularPermissionsProps): import("react/jsx-runtime").JSX.Element;
9
8
  export {};
10
9
  //# sourceMappingURL=GranularPermissions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GranularPermissions.d.ts","sourceRoot":"","sources":["../../../../../../../src/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/GranularPermissions.tsx"],"names":[],"mappings":"AAQA,OAAO,EACH,KAAK,iBAAiB,EAIzB,MAAM,gBAAgB,CAAC;AAyBxB,UAAU,yBAAyB;IAC/B,SAAS,EAAE,iBAAiB,GAAG,SAAS,CAAC;IACzC,QAAQ,EAAE,CAAC,SAAS,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACjD,qBAAqB,EAAE,OAAO,CAAC;IAC/B,4BAA4B,EAAE,OAAO,CAAC;CACzC;AAED,wBAAgB,mBAAmB,CAAC,EAChC,SAAS,EACT,qBAAqB,EACrB,QAAQ,EACR,4BAA4B,EAC/B,EAAE,yBAAyB,2CA4I3B"}
1
+ {"version":3,"file":"GranularPermissions.d.ts","sourceRoot":"","sources":["../../../../../../../src/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/GranularPermissions.tsx"],"names":[],"mappings":"AAQA,OAAO,EACH,KAAK,iBAAiB,EAIzB,MAAM,gBAAgB,CAAC;AAyBxB,UAAU,yBAAyB;IAC/B,SAAS,EAAE,iBAAiB,GAAG,SAAS,CAAC;IACzC,QAAQ,EAAE,CAAC,SAAS,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACjD,4BAA4B,EAAE,OAAO,CAAC;CACzC;AAED,wBAAgB,mBAAmB,CAAC,EAChC,SAAS,EACT,QAAQ,EACR,4BAA4B,EAC/B,EAAE,yBAAyB,2CAyI3B"}
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  // (C) 2024-2026 GoodData Corporation
3
- import { useCallback, useMemo } from "react";
3
+ import { useCallback } from "react";
4
4
  import { FormattedMessage, useIntl } from "react-intl";
5
5
  import { DialogListHeader, Message } from "@gooddata/sdk-ui-kit";
6
6
  import { AdditionalAccessPermissionItem, WorkspaceAccessPermissionItem } from "./GranularPermissionsItems.js";
@@ -15,12 +15,12 @@ const granularPermissions = [
15
15
  { id: "EXPORT_TABULAR", enabled: true, group: true },
16
16
  { id: "CREATE_FILTER_VIEW", enabled: true },
17
17
  ];
18
- export function GranularPermissions({ workspace, areFilterViewsEnabled, onChange, showRedundancyWarningMessage, }) {
18
+ export function GranularPermissions({ workspace, onChange, showRedundancyWarningMessage, }) {
19
19
  const intl = useIntl();
20
20
  const { permissions: selectedPermissions = [], isHierarchical = false } = workspace ?? {};
21
21
  const selectedWorkspacePermission = getWorkspacePermission(selectedPermissions);
22
22
  const selectedGranularPermissions = getGranularPermissions(selectedPermissions);
23
- const granularItems = useMemo(() => granularPermissions.filter((item) => areFilterViewsEnabled || item.id !== "CREATE_FILTER_VIEW"), [areFilterViewsEnabled]);
23
+ const granularItems = granularPermissions;
24
24
  const handleChange = useCallback((permissions, isHierarchical) => {
25
25
  const sanitizedPermissions = removeRedundantPermissions(permissions);
26
26
  onChange({ ...workspace, permissions: sanitizedPermissions, isHierarchical });
@@ -8,7 +8,6 @@ interface IGranularPermissionsDropdownProps {
8
8
  onChange: (workspace: IGrantedWorkspace) => void;
9
9
  onDelete: (workspace: IGrantedWorkspace) => void;
10
10
  className: string;
11
- areFilterViewsEnabled: boolean;
12
11
  }
13
12
  export declare const PermissionsDropdown: import("react").ForwardRefExoticComponent<IGranularPermissionsDropdownProps & import("@gooddata/sdk-ui-kit").IWithBubbleProps & import("react").RefAttributes<any>>;
14
13
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"PermissionsDropdown.d.ts","sourceRoot":"","sources":["../../../../../../../src/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/PermissionsDropdown.tsx"],"names":[],"mappings":"AAWA,OAAO,EACH,KAAK,iBAAiB,EAGtB,KAAK,0BAA0B,EAClC,MAAM,gBAAgB,CAAC;AAoCxB,UAAU,iCAAiC;IACvC,SAAS,EAAE,iBAAiB,CAAC;IAC7B,WAAW,EAAE,0BAA0B,CAAC;IACxC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,cAAc,EAAE,OAAO,CAAC;IACxB,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,QAAQ,EAAE,CAAC,SAAS,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACjD,QAAQ,EAAE,CAAC,SAAS,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACjD,SAAS,EAAE,MAAM,CAAC;IAClB,qBAAqB,EAAE,OAAO,CAAC;CAClC;AA8ID,eAAO,MAAM,mBAAmB,qKAAuB,CAAC"}
1
+ {"version":3,"file":"PermissionsDropdown.d.ts","sourceRoot":"","sources":["../../../../../../../src/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/PermissionsDropdown.tsx"],"names":[],"mappings":"AAWA,OAAO,EACH,KAAK,iBAAiB,EAGtB,KAAK,0BAA0B,EAClC,MAAM,gBAAgB,CAAC;AAoCxB,UAAU,iCAAiC;IACvC,SAAS,EAAE,iBAAiB,CAAC;IAC7B,WAAW,EAAE,0BAA0B,CAAC;IACxC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,cAAc,EAAE,OAAO,CAAC;IACxB,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,QAAQ,EAAE,CAAC,SAAS,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACjD,QAAQ,EAAE,CAAC,SAAS,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACjD,SAAS,EAAE,MAAM,CAAC;CACrB;AAmID,eAAO,MAAM,mBAAmB,qKAAuB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  // (C) 2023-2026 GoodData Corporation
3
- import { useCallback, useMemo, useState } from "react";
3
+ import { useCallback, useState } from "react";
4
4
  import cx from "classnames";
5
5
  import { useIntl } from "react-intl";
6
6
  import { withBubble } from "@gooddata/sdk-ui-kit";
@@ -77,7 +77,7 @@ const trackPermissionChange = (trackEvent, subjectType, permission) => {
77
77
  break;
78
78
  }
79
79
  };
80
- function Dropdown({ workspace, subjectType, isDropdownDisabled, isDropdownOpen, toggleDropdown, onChange, onDelete, className, areFilterViewsEnabled, }) {
80
+ function Dropdown({ workspace, subjectType, isDropdownDisabled, isDropdownOpen, toggleDropdown, onChange, onDelete, className, }) {
81
81
  const intl = useIntl();
82
82
  const [selectedPermission, setSelectedPermission] = useState(workspace.permissions[0]);
83
83
  const trackEvent = useTelemetry();
@@ -95,8 +95,6 @@ function Dropdown({ workspace, subjectType, isDropdownDisabled, isDropdownOpen,
95
95
  }
96
96
  }, [isDropdownDisabled, toggleDropdown]);
97
97
  const buttonValue = intl.formatMessage(getPermissionTitle(selectedPermission));
98
- const enabledItems = useMemo(() => items.filter((item) => areFilterViewsEnabled ||
99
- (item.id !== "VIEW_AND_SAVE_VIEWS" && item.id !== "VIEW_AND_EXPORT_AND_SAVE_VIEWS")), [areFilterViewsEnabled]);
100
98
  return (_jsxs("div", { className: className, children: [
101
99
  _jsx("div", { className: cx("s-user-management-permission-button", "gd-granular-permission-button", "dropdown-button", `gd-granular-permission-button-${simplifyText(workspace.id)}`, {
102
100
  "is-active": isDropdownOpen,
@@ -104,7 +102,7 @@ function Dropdown({ workspace, subjectType, isDropdownDisabled, isDropdownOpen,
104
102
  "gd-icon-navigatedown": !isDropdownDisabled && !isDropdownOpen,
105
103
  disabled: isDropdownDisabled,
106
104
  "gd-icon-right": !isDropdownDisabled,
107
- }), onClick: handleClick, "aria-label": "Share dialog granular permissions button", children: _jsx("div", { className: "s-user-management-button-title gd-granular-permission-button-title", children: buttonValue }) }), _jsx(PermissionsDropdownList, { selectedPermission: selectedPermission, items: enabledItems, subjectType: subjectType, onSelect: handleOnSelect, onDelete: handleOnDelete, toggleDropdown: toggleDropdown, isShowDropdown: isDropdownOpen, alignTo: `.gd-granular-permission-button-${simplifyText(workspace.id)}` })
105
+ }), onClick: handleClick, "aria-label": "Share dialog granular permissions button", children: _jsx("div", { className: "s-user-management-button-title gd-granular-permission-button-title", children: buttonValue }) }), _jsx(PermissionsDropdownList, { selectedPermission: selectedPermission, items: items, subjectType: subjectType, onSelect: handleOnSelect, onDelete: handleOnDelete, toggleDropdown: toggleDropdown, isShowDropdown: isDropdownOpen, alignTo: `.gd-granular-permission-button-${simplifyText(workspace.id)}` })
108
106
  ] }));
109
107
  }
110
108
  export const PermissionsDropdown = withBubble(Dropdown);
@@ -4,8 +4,7 @@ interface IGranularGranteeUserGroupItemProps {
4
4
  subjectType: WorkspacePermissionSubject;
5
5
  onChange: (grantee: IGrantedWorkspace) => void;
6
6
  onDelete: (grantee: IGrantedWorkspace) => void;
7
- areFilterViewsEnabled: boolean;
8
7
  }
9
- export declare function WorkspaceItem({ workspace, subjectType, onChange, onDelete, areFilterViewsEnabled }: IGranularGranteeUserGroupItemProps): import("react/jsx-runtime").JSX.Element;
8
+ export declare function WorkspaceItem({ workspace, subjectType, onChange, onDelete }: IGranularGranteeUserGroupItemProps): import("react/jsx-runtime").JSX.Element;
10
9
  export {};
11
10
  //# sourceMappingURL=WorkspaceItem.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WorkspaceItem.d.ts","sourceRoot":"","sources":["../../../../../../../src/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/WorkspaceItem.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAOzF,UAAU,kCAAkC;IACxC,SAAS,EAAE,iBAAiB,CAAC;IAC7B,WAAW,EAAE,0BAA0B,CAAC;IACxC,QAAQ,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC/C,QAAQ,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC/C,qBAAqB,EAAE,OAAO,CAAC;CAClC;AAED,wBAAgB,aAAa,CAAC,EAC1B,SAAS,EACT,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,qBAAqB,EACxB,EAAE,kCAAkC,2CAmCpC"}
1
+ {"version":3,"file":"WorkspaceItem.d.ts","sourceRoot":"","sources":["../../../../../../../src/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceItem/WorkspaceItem.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAOzF,UAAU,kCAAkC;IACxC,SAAS,EAAE,iBAAiB,CAAC;IAC7B,WAAW,EAAE,0BAA0B,CAAC;IACxC,QAAQ,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC/C,QAAQ,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,IAAI,CAAC;CAClD;AAED,wBAAgB,aAAa,CAAC,EAC1B,SAAS,EACT,WAAW,EACX,QAAQ,EACR,QAAQ,EACX,EAAE,kCAAkC,2CAkCpC"}
@@ -5,13 +5,13 @@ import { HierarchicalPermissionsDropdown } from "./HierarchicalPermissionsDropdo
5
5
  import { PermissionsDropdown } from "./PermissionsDropdown.js";
6
6
  import { usePermissionsDropdownState } from "./usePermissionsDropdownState.js";
7
7
  import { WorkspaceIcon } from "./WorkspaceIcon.js";
8
- export function WorkspaceItem({ workspace, subjectType, onChange, onDelete, areFilterViewsEnabled, }) {
8
+ export function WorkspaceItem({ workspace, subjectType, onChange, onDelete, }) {
9
9
  const { isDropdownOpen, toggleDropdown } = usePermissionsDropdownState();
10
10
  const { isDropdownOpen: isHierarchicalDropdownOpen, toggleDropdown: toggleHierarchicalDropdown } = usePermissionsDropdownState();
11
11
  const itemClassName = cx("s-user-management-workspace-item", "gd-share-dialog-grantee-item", {
12
12
  "is-active": isDropdownOpen,
13
13
  });
14
14
  return (_jsxs("div", { className: itemClassName, children: [
15
- _jsx(HierarchicalPermissionsDropdown, { workspace: workspace, subjectType: subjectType, isDropdownOpen: isHierarchicalDropdownOpen, toggleDropdown: toggleHierarchicalDropdown, onChange: onChange, className: "gd-grantee-granular-permission" }), _jsx(PermissionsDropdown, { workspace: workspace, subjectType: subjectType, isDropdownOpen: isDropdownOpen, toggleDropdown: toggleDropdown, onChange: onChange, onDelete: onDelete, className: "gd-grantee-granular-permission", areFilterViewsEnabled: areFilterViewsEnabled }), _jsx("div", { className: "gd-grantee-content", children: _jsx("div", { className: "gd-grantee-content-label", children: workspace.title }) }), _jsx(WorkspaceIcon, {})
15
+ _jsx(HierarchicalPermissionsDropdown, { workspace: workspace, subjectType: subjectType, isDropdownOpen: isHierarchicalDropdownOpen, toggleDropdown: toggleHierarchicalDropdown, onChange: onChange, className: "gd-grantee-granular-permission" }), _jsx(PermissionsDropdown, { workspace: workspace, subjectType: subjectType, isDropdownOpen: isDropdownOpen, toggleDropdown: toggleDropdown, onChange: onChange, onDelete: onDelete, className: "gd-grantee-granular-permission" }), _jsx("div", { className: "gd-grantee-content", children: _jsx("div", { className: "gd-grantee-content-label", children: workspace.title }) }), _jsx(WorkspaceIcon, {})
16
16
  ] }));
17
17
  }
@@ -6,7 +6,6 @@ export interface IWorkspaceListProps {
6
6
  onDelete: (workspace: IGrantedWorkspace) => void;
7
7
  onChange?: (workspace: IGrantedWorkspace) => void;
8
8
  onClick?: (workspace: IGrantedWorkspace) => void;
9
- areFilterViewsEnabled: boolean;
10
9
  }
11
10
  export declare function WorkspaceList({ workspaces, subjectType, mode, onDelete, onClick }: IWorkspaceListProps): import("react/jsx-runtime").JSX.Element;
12
11
  //# sourceMappingURL=WorkspaceList.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WorkspaceList.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceList.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,QAAQ,EAAE,KAAK,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAMrG,MAAM,WAAW,mBAAmB;IAChC,UAAU,EAAE,iBAAiB,EAAE,GAAG,SAAS,CAAC;IAC5C,WAAW,EAAE,0BAA0B,CAAC;IACxC,IAAI,EAAE,QAAQ,CAAC;IACf,QAAQ,EAAE,CAAC,SAAS,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACjD,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAClD,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACjD,qBAAqB,EAAE,OAAO,CAAC;CAClC;AAED,wBAAgB,aAAa,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,mBAAmB,2CAuBtG"}
1
+ {"version":3,"file":"WorkspaceList.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/components/dialogs/userManagementDialogs/Workspace/WorkspaceList.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,QAAQ,EAAE,KAAK,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAMrG,MAAM,WAAW,mBAAmB;IAChC,UAAU,EAAE,iBAAiB,EAAE,GAAG,SAAS,CAAC;IAC5C,WAAW,EAAE,0BAA0B,CAAC;IACxC,IAAI,EAAE,QAAQ,CAAC;IACf,QAAQ,EAAE,CAAC,SAAS,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACjD,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAClD,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,iBAAiB,KAAK,IAAI,CAAC;CACpD;AAED,wBAAgB,aAAa,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,mBAAmB,2CAuBtG"}
@@ -17,6 +17,7 @@ export declare class PluggablePivotTableNext extends AbstractPluggableVisualizat
17
17
  private readonly settings;
18
18
  private backendCapabilities;
19
19
  private environment;
20
+ private titlesByLocalId;
20
21
  constructor(props: IVisConstruct);
21
22
  unmount(): void;
22
23
  getExtendedReferencePoint(referencePoint: IReferencePoint, previousReferencePoint?: IReferencePoint): Promise<IExtendedReferencePoint>;
@@ -24,6 +25,8 @@ export declare class PluggablePivotTableNext extends AbstractPluggableVisualizat
24
25
  private getSanitizedConfig;
25
26
  getExecution(options: IVisProps, insight: IInsightDefinition, executionFactory: IExecutionFactory): import("@gooddata/sdk-backend-spi").IPreparedExecution;
26
27
  protected initializeProperties(visualizationProperties: IVisualizationProperties): void;
28
+ private handleDataView;
29
+ private handleLoadingChanged;
27
30
  private createCorePivotTableProps;
28
31
  protected updateInstanceProperties(options: IVisProps, insight: IInsightDefinition, insightPropertiesMeta: any): void;
29
32
  protected checkBeforeRender(insight: IInsightDefinition): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"PluggablePivotTableNext.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/pluggableVisualizations/pivotTableNext/PluggablePivotTableNext.tsx"],"names":[],"mappings":"AAIA,OAAO,EAA6B,KAAK,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9F,OAAO,EACH,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,kBAAkB,EACvB,KAAK,SAAS,EAWjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAe,KAAK,wBAAwB,EAAsB,MAAM,kBAAkB,CAAC;AAMlG,OAAO,EAGH,KAAK,oBAAoB,EAC5B,MAAM,6BAA6B,CAAC;AAKrC,OAAO,EAEH,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,SAAS,EACd,KAAK,wBAAwB,EAGhC,MAAM,sCAAsC,CAAC;AA6B9C,OAAO,EAAE,8BAA8B,EAAE,MAAM,sCAAsC,CAAC;AAiBtF,wBAAgB,0BAA0B,CACtC,MAAM,EAAE,UAAU,EAClB,WAAW,EAAE,wBAAwB,EACrC,QAAQ,EAAE,SAAS,GACpB,oBAAoB,CAqBtB;AAED;;;;;GAKG;AACH,qBAAa,uBAAwB,SAAQ,8BAA8B;IACvE,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAY;IACrC,OAAO,CAAC,mBAAmB,CAAuB;IAClD,OAAO,CAAC,WAAW,CAAuC;IAE1D,YAAY,KAAK,EAAE,aAAa,EAa/B;IAEM,OAAO,IAAI,IAAI,CAErB;IAEM,yBAAyB,CAC5B,cAAc,EAAE,eAAe,EAC/B,sBAAsB,CAAC,EAAE,eAAe,GACzC,OAAO,CAAC,uBAAuB,CAAC,CA8GlC;IAEe,8BAA8B,CAC1C,mBAAmB,EAAE,QAAQ,EAC7B,gBAAgB,EAAE,iBAAiB,EACnC,0BAA0B,EAAE,OAAO,GACpC,QAAQ,CAWV;IAED,OAAO,CAAC,kBAAkB;IAInB,YAAY,CACf,OAAO,EAAE,SAAS,EAClB,OAAO,EAAE,kBAAkB,EAC3B,gBAAgB,EAAE,iBAAiB,0DActC;IAED,SAAS,CAAC,oBAAoB,CAAC,uBAAuB,EAAE,wBAAwB,GAAG,IAAI,CActF;IAED,OAAO,CAAC,yBAAyB,CAe/B;IAEF,UAAmB,wBAAwB,CACvC,OAAO,EAAE,SAAS,EAClB,OAAO,EAAE,kBAAkB,EAC3B,qBAAqB,EAAE,GAAG,GAC3B,IAAI,CASN;IAED,UAAmB,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAOzE;IAED,SAAS,CAAC,mBAAmB,CACzB,OAAO,EAAE,SAAS,EAClB,OAAO,EAAE,kBAAkB,EAC3B,gBAAgB,EAAE,iBAAiB,GACpC,IAAI,CA2EN;IAED,SAAS,CAAC,wBAAwB,CAAC,OAAO,EAAE,kBAAkB,EAAE,OAAO,EAAE,SAAS,GAAG,IAAI,CAwBxF;IAED,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,kBAAkB,EAAE,yBAAyB,CAAC,EAAE,GAAG,GAAG,UAAU,EAAE,CAElG;IAED,OAAO,CAAC,wBAAwB;IAYhC,OAAO,CAAC,oBAAoB;IA8B5B,OAAO,CAAC,eAAe;IAavB,OAAO,CAAC,cAAc;CAmCzB"}
1
+ {"version":3,"file":"PluggablePivotTableNext.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/pluggableVisualizations/pivotTableNext/PluggablePivotTableNext.tsx"],"names":[],"mappings":"AAIA,OAAO,EAA6B,KAAK,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9F,OAAO,EACH,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,kBAAkB,EACvB,KAAK,SAAS,EAWjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAIH,KAAK,wBAAwB,EAEhC,MAAM,kBAAkB,CAAC;AAM1B,OAAO,EAIH,KAAK,oBAAoB,EAC5B,MAAM,6BAA6B,CAAC;AAKrC,OAAO,EAEH,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,SAAS,EACd,KAAK,wBAAwB,EAGhC,MAAM,sCAAsC,CAAC;AA+B9C,OAAO,EAAE,8BAA8B,EAAE,MAAM,sCAAsC,CAAC;AAiBtF,wBAAgB,0BAA0B,CACtC,MAAM,EAAE,UAAU,EAClB,WAAW,EAAE,wBAAwB,EACrC,QAAQ,EAAE,SAAS,GACpB,oBAAoB,CAqBtB;AAED;;;;;GAKG;AACH,qBAAa,uBAAwB,SAAQ,8BAA8B;IACvE,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAY;IACrC,OAAO,CAAC,mBAAmB,CAAuB;IAClD,OAAO,CAAC,WAAW,CAAuC;IAG1D,OAAO,CAAC,eAAe,CAA8B;IAErD,YAAY,KAAK,EAAE,aAAa,EAa/B;IAEM,OAAO,IAAI,IAAI,CAErB;IAEM,yBAAyB,CAC5B,cAAc,EAAE,eAAe,EAC/B,sBAAsB,CAAC,EAAE,eAAe,GACzC,OAAO,CAAC,uBAAuB,CAAC,CA8GlC;IAEe,8BAA8B,CAC1C,mBAAmB,EAAE,QAAQ,EAC7B,gBAAgB,EAAE,iBAAiB,EACnC,0BAA0B,EAAE,OAAO,GACpC,QAAQ,CAWV;IAED,OAAO,CAAC,kBAAkB;IAInB,YAAY,CACf,OAAO,EAAE,SAAS,EAClB,OAAO,EAAE,kBAAkB,EAC3B,gBAAgB,EAAE,iBAAiB,0DActC;IAED,SAAS,CAAC,oBAAoB,CAAC,uBAAuB,EAAE,wBAAwB,GAAG,IAAI,CActF;IAKD,OAAO,CAAC,cAAc,CAIpB;IAIF,OAAO,CAAC,oBAAoB,CAK1B;IAEF,OAAO,CAAC,yBAAyB,CAe/B;IAEF,UAAmB,wBAAwB,CACvC,OAAO,EAAE,SAAS,EAClB,OAAO,EAAE,kBAAkB,EAC3B,qBAAqB,EAAE,GAAG,GAC3B,IAAI,CASN;IAED,UAAmB,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAOzE;IAED,SAAS,CAAC,mBAAmB,CACzB,OAAO,EAAE,SAAS,EAClB,OAAO,EAAE,kBAAkB,EAC3B,gBAAgB,EAAE,iBAAiB,GACpC,IAAI,CAmFN;IAED,SAAS,CAAC,wBAAwB,CAAC,OAAO,EAAE,kBAAkB,EAAE,OAAO,EAAE,SAAS,GAAG,IAAI,CAyBxF;IAED,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,kBAAkB,EAAE,yBAAyB,CAAC,EAAE,GAAG,GAAG,UAAU,EAAE,CAElG;IAED,OAAO,CAAC,wBAAwB;IAYhC,OAAO,CAAC,oBAAoB;IA8B5B,OAAO,CAAC,eAAe;IAavB,OAAO,CAAC,cAAc;CAmCzB"}