@gooddata/sdk-ui-kit 11.43.0-alpha.0 → 11.43.0-alpha.2
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/@ui/@types/icon.d.ts +1 -1
- package/esm/@ui/@types/icon.d.ts.map +1 -1
- package/esm/@ui/UiGeneralAccessRadio/UiGeneralAccessRadio.d.ts +3 -1
- package/esm/@ui/UiGeneralAccessRadio/UiGeneralAccessRadio.d.ts.map +1 -1
- package/esm/@ui/UiGeneralAccessRadio/UiGeneralAccessRadio.js +2 -2
- package/esm/@ui/UiGranteeAsyncPicker/UiGranteeAsyncPicker.d.ts.map +1 -1
- package/esm/@ui/UiGranteeAsyncPicker/UiGranteeAsyncPicker.js +7 -4
- package/esm/@ui/UiGranteeRow/UiGranteeRow.d.ts +3 -1
- package/esm/@ui/UiGranteeRow/UiGranteeRow.d.ts.map +1 -1
- package/esm/@ui/UiGranteeRow/UiGranteeRow.js +2 -2
- package/esm/@ui/UiGranteeRowControls/UiGranteeRowControls.d.ts +15 -15
- package/esm/@ui/UiGranteeRowControls/UiGranteeRowControls.d.ts.map +1 -1
- package/esm/@ui/UiGranteeRowControls/UiGranteeRowControls.js +20 -18
- package/esm/@ui/UiIcon/icons.d.ts.map +1 -1
- package/esm/@ui/UiIcon/icons.js +1 -0
- package/esm/@ui/UiLabelsChecklist/UiLabelsChecklist.d.ts +44 -0
- package/esm/@ui/UiLabelsChecklist/UiLabelsChecklist.d.ts.map +1 -0
- package/esm/@ui/UiLabelsChecklist/UiLabelsChecklist.js +58 -0
- package/esm/@ui/UiLabelsList/UiLabelsList.d.ts +6 -1
- package/esm/@ui/UiLabelsList/UiLabelsList.d.ts.map +1 -1
- package/esm/@ui/UiLabelsList/UiLabelsList.js +2 -3
- package/esm/@ui/UiMoreOptionsMenu/UiMoreOptionsMenu.d.ts +23 -0
- package/esm/@ui/UiMoreOptionsMenu/UiMoreOptionsMenu.d.ts.map +1 -0
- package/esm/@ui/UiMoreOptionsMenu/UiMoreOptionsMenu.js +83 -0
- package/esm/@ui/UiObjectShareDialog/UiObjectShareDialogCard.d.ts +14 -1
- package/esm/@ui/UiObjectShareDialog/UiObjectShareDialogCard.d.ts.map +1 -1
- package/esm/@ui/UiObjectShareDialog/UiObjectShareDialogCard.js +5 -3
- package/esm/@ui/UiPermissionMenu/UiPermissionMenu.d.ts +4 -15
- package/esm/@ui/UiPermissionMenu/UiPermissionMenu.d.ts.map +1 -1
- package/esm/@ui/UiPermissionMenu/UiPermissionMenu.js +11 -23
- package/esm/@ui/UiPopover/UiPopover.d.ts +29 -1
- package/esm/@ui/UiPopover/UiPopover.d.ts.map +1 -1
- package/esm/@ui/UiPopover/UiPopover.js +4 -4
- package/esm/@ui/UiTag/UiTag.d.ts +1 -0
- package/esm/@ui/UiTag/UiTag.d.ts.map +1 -1
- package/esm/@ui/UiTag/UiTag.js +10 -4
- package/esm/@ui/UiTags/UiTag.d.ts +0 -2
- package/esm/@ui/UiTags/UiTag.d.ts.map +1 -1
- package/esm/@ui/UiTags/UiTag.js +14 -9
- package/esm/@ui/UiTags/UiTags.d.ts.map +1 -1
- package/esm/@ui/UiTags/UiTags.js +38 -24
- package/esm/@ui/UiTags/interactions.d.ts +4 -9
- package/esm/@ui/UiTags/interactions.d.ts.map +1 -1
- package/esm/@ui/UiTags/interactions.js +58 -228
- package/esm/@ui/UiTooltip/UiTooltip.d.ts +1 -1
- package/esm/@ui/UiTooltip/UiTooltip.d.ts.map +1 -1
- package/esm/@ui/UiTooltip/UiTooltip.js +17 -9
- package/esm/@ui/UiTooltip/types.d.ts +10 -1
- package/esm/@ui/UiTooltip/types.d.ts.map +1 -1
- package/esm/Button/Button.d.ts.map +1 -1
- package/esm/Button/Button.js +2 -2
- package/esm/Datepicker/Datepicker.d.ts.map +1 -1
- package/esm/Datepicker/Datepicker.js +1 -1
- package/esm/Icon/icons/InsightIcons/Radar.d.ts.map +1 -1
- package/esm/Icon/icons/InsightIcons/Radar.js +3 -1
- package/esm/List/MenuList.d.ts +2 -1
- package/esm/List/MenuList.d.ts.map +1 -1
- package/esm/List/MenuList.js +2 -2
- package/esm/index.d.ts +2 -1
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +2 -1
- package/esm/locales.d.ts +11 -4
- package/esm/locales.d.ts.map +1 -1
- package/esm/locales.js +5 -4
- package/esm/sdk-ui-kit.d.ts +139 -85
- package/esm/tsdoc-metadata.json +1 -1
- package/package.json +11 -11
- package/src/@ui/UiGranteeAsyncPicker/UiGranteeAsyncPicker.scss +12 -0
- package/src/@ui/UiGranteeRow/UiGranteeRow.scss +5 -0
- package/src/@ui/UiGranteeRowControls/UiGranteeRowControls.scss +7 -0
- package/src/@ui/UiLabelsChecklist/UiLabelsChecklist.scss +31 -0
- package/src/@ui/UiLabelsList/UiLabelsList.scss +3 -0
- package/src/@ui/UiModalDialog/UiModalDialog.scss +11 -1
- package/src/@ui/UiMoreOptionsMenu/UiMoreOptionsMenu.scss +10 -0
- package/src/@ui/UiObjectShareDialog/UiObjectShareDialog.scss +7 -0
- package/src/@ui/UiPermissionMenu/UiPermissionMenu.scss +0 -7
- package/src/@ui/UiPopover/UiPopover.scss +7 -0
- package/src/@ui/UiTabs/UiTabs.scss +0 -1
- package/src/@ui/UiTag/UiTag.scss +4 -0
- package/src/@ui/UiTags/UiTags.scss +5 -1
- package/src/@ui/index.scss +2 -1
- package/styles/css/main.css +66 -21
- package/styles/css/main.css.map +1 -1
- package/styles/images/visualization-types/radar-active.svg +10 -6
- package/styles/images/visualization-types/radar.svg +16 -5
- package/esm/@ui/UiLabelsPicker/UiLabelsPicker.d.ts +0 -64
- package/esm/@ui/UiLabelsPicker/UiLabelsPicker.d.ts.map +0 -1
- package/esm/@ui/UiLabelsPicker/UiLabelsPicker.js +0 -89
- package/src/@ui/UiLabelsPicker/UiLabelsPicker.scss +0 -29
|
@@ -1,33 +1,47 @@
|
|
|
1
1
|
// (C) 2025-2026 GoodData Corporation
|
|
2
|
-
import { useCallback,
|
|
3
|
-
import {
|
|
4
|
-
|
|
2
|
+
import { useCallback, useLayoutEffect, useRef, useState } from "react";
|
|
3
|
+
import { programaticFocusManagement } from "../UiFocusManager/utils.js";
|
|
4
|
+
const TAG_SELECTOR = ".gd-ui-kit-tags__tag";
|
|
5
|
+
function getTagElements(container) {
|
|
6
|
+
if (!container) {
|
|
7
|
+
return [];
|
|
8
|
+
}
|
|
9
|
+
return Array.from(container.querySelectorAll(TAG_SELECTOR));
|
|
10
|
+
}
|
|
11
|
+
function findTagIndex(container, tagId) {
|
|
12
|
+
return getTagElements(container).findIndex((element) => element.dataset["tagId"] === tagId);
|
|
13
|
+
}
|
|
14
|
+
export function useTagsInteractions(tagsContainerRef, tooltipTagsContainerRef, showedTags, hiddenTags, onTagAdd, onTagRemove, onTagClick) {
|
|
5
15
|
const [tag, setTag] = useState("");
|
|
6
|
-
const
|
|
7
|
-
const [hiddenFocusedIndex, setHiddenFocusedIndex] = useState(0);
|
|
8
|
-
const rootItems = useMemo(() => {
|
|
9
|
-
return [...showedTags, ...(hiddenTags.length > 0 ? [hiddenTags] : [])];
|
|
10
|
-
}, [showedTags, hiddenTags]);
|
|
16
|
+
const pendingTagFocus = useRef(null);
|
|
11
17
|
const interactionState = useRef({
|
|
12
18
|
moreOpen: false,
|
|
13
19
|
addOpen: false,
|
|
14
|
-
tags: {},
|
|
15
|
-
more: null,
|
|
16
20
|
add: null,
|
|
17
21
|
close: null,
|
|
18
22
|
save: null,
|
|
19
23
|
input: null,
|
|
20
24
|
});
|
|
25
|
+
const focusTagByIndex = (tagElements, index) => {
|
|
26
|
+
if (tagElements.length === 0) {
|
|
27
|
+
interactionState.current.add?.focus();
|
|
28
|
+
return false;
|
|
29
|
+
}
|
|
30
|
+
const focusIndex = Math.min(Math.max(index, 0), tagElements.length - 1);
|
|
31
|
+
const tagWrapper = tagElements[focusIndex];
|
|
32
|
+
if (!tagWrapper) {
|
|
33
|
+
return false;
|
|
34
|
+
}
|
|
35
|
+
const innerTag = tagWrapper.querySelector(".gd-ui-kit-tag");
|
|
36
|
+
programaticFocusManagement(innerTag ?? tagWrapper);
|
|
37
|
+
return true;
|
|
38
|
+
};
|
|
21
39
|
const onMoreOpen = useCallback(() => {
|
|
22
40
|
interactionState.current.moreOpen = true;
|
|
23
|
-
|
|
24
|
-
setHiddenFocusedIndex(0);
|
|
25
|
-
}, [rootItems]);
|
|
41
|
+
}, []);
|
|
26
42
|
const onMoreClose = useCallback(() => {
|
|
27
43
|
interactionState.current.moreOpen = false;
|
|
28
|
-
|
|
29
|
-
setHiddenFocusedIndex(0);
|
|
30
|
-
}, [rootItems]);
|
|
44
|
+
}, []);
|
|
31
45
|
const onAddOpen = useCallback(() => {
|
|
32
46
|
interactionState.current.addOpen = true;
|
|
33
47
|
}, []);
|
|
@@ -41,182 +55,37 @@ export function useTagsInteractions(rootRef, hiddenTagsRef, showedTags, hiddenTa
|
|
|
41
55
|
onTagAdd?.({ id: tag, label: tag });
|
|
42
56
|
setTag("");
|
|
43
57
|
}, [tag, onTagAdd]);
|
|
44
|
-
const onTagRemoveHandler = useCallback((
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
if (
|
|
48
|
-
|
|
58
|
+
const onTagRemoveHandler = useCallback((removedTag) => {
|
|
59
|
+
let area = "root";
|
|
60
|
+
let deletedIndex = findTagIndex(tooltipTagsContainerRef.current, removedTag.id);
|
|
61
|
+
if (deletedIndex === -1) {
|
|
62
|
+
deletedIndex = findTagIndex(tagsContainerRef.current, removedTag.id);
|
|
49
63
|
}
|
|
50
|
-
|
|
51
|
-
|
|
64
|
+
else {
|
|
65
|
+
area = "dialog";
|
|
52
66
|
}
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
const onTagClickHandler = useCallback((tag) => {
|
|
56
|
-
const showedTag = showedTags.findIndex((t) => t === tag);
|
|
57
|
-
if (showedTag !== -1) {
|
|
58
|
-
setShowedFocusedIndex(showedTag);
|
|
67
|
+
if (deletedIndex !== -1) {
|
|
68
|
+
pendingTagFocus.current = { area, deletedIndex };
|
|
59
69
|
}
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
70
|
+
onTagRemove?.(removedTag);
|
|
71
|
+
}, [onTagRemove, tagsContainerRef, tooltipTagsContainerRef]);
|
|
72
|
+
const onTagClickHandler = useCallback((clickedTag) => {
|
|
73
|
+
onTagClick?.(clickedTag);
|
|
74
|
+
}, [onTagClick]);
|
|
75
|
+
useLayoutEffect(() => {
|
|
76
|
+
if (!pendingTagFocus.current) {
|
|
77
|
+
return;
|
|
63
78
|
}
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
if (interactionState.current.moreOpen) {
|
|
75
|
-
hiddenTagsRef.current?.focus();
|
|
76
|
-
if (hiddenFocusedIndex === 0) {
|
|
77
|
-
setHiddenFocusedIndex(hiddenTags.length - 1);
|
|
78
|
-
}
|
|
79
|
-
else {
|
|
80
|
-
setHiddenFocusedIndex(Math.min(hiddenFocusedIndex - 1, hiddenTags.length - 1));
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
else {
|
|
84
|
-
rootRef.current?.focus();
|
|
85
|
-
if (showedFocusedIndex === 0) {
|
|
86
|
-
setShowedFocusedIndex(rootItems.length - 1);
|
|
87
|
-
}
|
|
88
|
-
else {
|
|
89
|
-
setShowedFocusedIndex(Math.min(showedFocusedIndex - 1, showedTags.length - 1));
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
},
|
|
93
|
-
onFocusNext: (event) => {
|
|
94
|
-
if (interactionState.current.addOpen) {
|
|
95
|
-
return;
|
|
96
|
-
}
|
|
97
|
-
if (event.target === interactionState.current.add) {
|
|
98
|
-
return;
|
|
99
|
-
}
|
|
100
|
-
if (interactionState.current.moreOpen) {
|
|
101
|
-
hiddenTagsRef.current?.focus();
|
|
102
|
-
if (hiddenTags.length - 1 <= hiddenFocusedIndex) {
|
|
103
|
-
setHiddenFocusedIndex(0);
|
|
104
|
-
}
|
|
105
|
-
else {
|
|
106
|
-
setHiddenFocusedIndex(hiddenFocusedIndex + 1);
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
else {
|
|
110
|
-
rootRef.current?.focus();
|
|
111
|
-
if (rootItems.length - 1 <= showedFocusedIndex) {
|
|
112
|
-
setShowedFocusedIndex(0);
|
|
113
|
-
}
|
|
114
|
-
else {
|
|
115
|
-
setShowedFocusedIndex(showedFocusedIndex + 1);
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
},
|
|
119
|
-
onFocusFirst: (event) => {
|
|
120
|
-
if (interactionState.current.addOpen) {
|
|
121
|
-
return;
|
|
122
|
-
}
|
|
123
|
-
if (event.target === interactionState.current.add) {
|
|
124
|
-
return;
|
|
125
|
-
}
|
|
126
|
-
if (interactionState.current.moreOpen) {
|
|
127
|
-
hiddenTagsRef.current?.focus();
|
|
128
|
-
setHiddenFocusedIndex(0);
|
|
129
|
-
}
|
|
130
|
-
else {
|
|
131
|
-
rootRef.current?.focus();
|
|
132
|
-
setShowedFocusedIndex(0);
|
|
133
|
-
}
|
|
134
|
-
},
|
|
135
|
-
onFocusLast: (event) => {
|
|
136
|
-
if (interactionState.current.addOpen) {
|
|
137
|
-
return;
|
|
138
|
-
}
|
|
139
|
-
if (event.target === interactionState.current.add) {
|
|
140
|
-
return;
|
|
141
|
-
}
|
|
142
|
-
if (interactionState.current.moreOpen) {
|
|
143
|
-
hiddenTagsRef.current?.focus();
|
|
144
|
-
setHiddenFocusedIndex(hiddenTags.length - 1);
|
|
145
|
-
}
|
|
146
|
-
else {
|
|
147
|
-
rootRef.current?.focus();
|
|
148
|
-
setShowedFocusedIndex(rootItems.length - 1);
|
|
149
|
-
}
|
|
150
|
-
},
|
|
151
|
-
onSelect: (event) => {
|
|
152
|
-
const { button, input } = loadActiveElement(interactionState, event.target);
|
|
153
|
-
if (button) {
|
|
154
|
-
button.click();
|
|
155
|
-
event.preventDefault();
|
|
156
|
-
event.stopPropagation();
|
|
157
|
-
return;
|
|
158
|
-
}
|
|
159
|
-
// Do not handle any select if add is open
|
|
160
|
-
if (input) {
|
|
161
|
-
event.stopPropagation();
|
|
162
|
-
return;
|
|
163
|
-
}
|
|
164
|
-
// Tags
|
|
165
|
-
if (interactionState.current.moreOpen) {
|
|
166
|
-
const item = loadActiveTag(interactionState, hiddenTags, hiddenFocusedIndex, false);
|
|
167
|
-
if (item) {
|
|
168
|
-
item.click();
|
|
169
|
-
event.preventDefault();
|
|
170
|
-
event.stopPropagation();
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
else {
|
|
174
|
-
const item = loadActiveTag(interactionState, showedTags, showedFocusedIndex, true);
|
|
175
|
-
if (item) {
|
|
176
|
-
item.click();
|
|
177
|
-
event.preventDefault();
|
|
178
|
-
event.stopPropagation();
|
|
179
|
-
}
|
|
180
|
-
}
|
|
181
|
-
},
|
|
182
|
-
onUnhandledKeyDown: (event) => {
|
|
183
|
-
//Delete
|
|
184
|
-
if (event.key === "Backspace" || event.key === "Delete") {
|
|
185
|
-
const { button, input } = loadActiveElement(interactionState, event.target);
|
|
186
|
-
if (button || input) {
|
|
187
|
-
return;
|
|
188
|
-
}
|
|
189
|
-
if (interactionState.current.moreOpen) {
|
|
190
|
-
const item = loadActiveTag(interactionState, hiddenTags, hiddenFocusedIndex, false);
|
|
191
|
-
if (item) {
|
|
192
|
-
onTagRemoveHandler(hiddenTags[hiddenFocusedIndex]);
|
|
193
|
-
event.preventDefault();
|
|
194
|
-
event.stopPropagation();
|
|
195
|
-
}
|
|
196
|
-
}
|
|
197
|
-
else {
|
|
198
|
-
const item = loadActiveTag(interactionState, showedTags, showedFocusedIndex, false);
|
|
199
|
-
if (item) {
|
|
200
|
-
onTagRemoveHandler(showedTags[showedFocusedIndex]);
|
|
201
|
-
event.preventDefault();
|
|
202
|
-
event.stopPropagation();
|
|
203
|
-
}
|
|
204
|
-
}
|
|
205
|
-
}
|
|
206
|
-
},
|
|
207
|
-
}, {
|
|
208
|
-
shouldPreventDefault: false,
|
|
209
|
-
shouldStopPropagation: false,
|
|
210
|
-
}), [
|
|
211
|
-
hiddenTagsRef,
|
|
212
|
-
hiddenFocusedIndex,
|
|
213
|
-
hiddenTags,
|
|
214
|
-
rootRef,
|
|
215
|
-
showedFocusedIndex,
|
|
216
|
-
rootItems.length,
|
|
217
|
-
showedTags,
|
|
218
|
-
onTagRemoveHandler,
|
|
219
|
-
]);
|
|
79
|
+
const { area, deletedIndex } = pendingTagFocus.current;
|
|
80
|
+
pendingTagFocus.current = null;
|
|
81
|
+
const primaryContainer = area === "dialog" ? tooltipTagsContainerRef.current : tagsContainerRef.current;
|
|
82
|
+
const primaryTagElements = getTagElements(primaryContainer);
|
|
83
|
+
if (focusTagByIndex(primaryTagElements, deletedIndex)) {
|
|
84
|
+
return;
|
|
85
|
+
}
|
|
86
|
+
const showedTagElements = getTagElements(tagsContainerRef.current);
|
|
87
|
+
focusTagByIndex(showedTagElements, showedTagElements.length - 1);
|
|
88
|
+
}, [showedTags, hiddenTags, tagsContainerRef, tooltipTagsContainerRef]);
|
|
220
89
|
return {
|
|
221
90
|
tag,
|
|
222
91
|
setTag,
|
|
@@ -224,48 +93,9 @@ export function useTagsInteractions(rootRef, hiddenTagsRef, showedTags, hiddenTa
|
|
|
224
93
|
onAddClose,
|
|
225
94
|
onMoreOpen,
|
|
226
95
|
onMoreClose,
|
|
227
|
-
handleKeyDown,
|
|
228
|
-
interactionState,
|
|
229
|
-
showedFocusedIndex,
|
|
230
|
-
hiddenFocusedIndex,
|
|
231
96
|
onTagAddHandler,
|
|
232
97
|
onTagRemoveHandler,
|
|
233
98
|
onTagClickHandler,
|
|
99
|
+
interactionState,
|
|
234
100
|
};
|
|
235
101
|
}
|
|
236
|
-
function loadActiveTag(interactionState, tags, index, allowMore) {
|
|
237
|
-
// More
|
|
238
|
-
if (index === tags.length) {
|
|
239
|
-
if (!allowMore) {
|
|
240
|
-
return null;
|
|
241
|
-
}
|
|
242
|
-
const more = interactionState.current.more;
|
|
243
|
-
if (more) {
|
|
244
|
-
return more;
|
|
245
|
-
}
|
|
246
|
-
return null;
|
|
247
|
-
}
|
|
248
|
-
// Tag
|
|
249
|
-
const tag = tags[index];
|
|
250
|
-
const item = interactionState.current.tags[tag?.id];
|
|
251
|
-
if (item) {
|
|
252
|
-
return item;
|
|
253
|
-
}
|
|
254
|
-
return null;
|
|
255
|
-
}
|
|
256
|
-
function loadActiveElement(interactionState, target) {
|
|
257
|
-
const buttons = [
|
|
258
|
-
interactionState.current.add,
|
|
259
|
-
interactionState.current.close,
|
|
260
|
-
interactionState.current.save,
|
|
261
|
-
];
|
|
262
|
-
const button = buttons.find((b) => b === target);
|
|
263
|
-
if (button) {
|
|
264
|
-
return { button };
|
|
265
|
-
}
|
|
266
|
-
// Do not handle any select if add is open
|
|
267
|
-
if (target === interactionState.current.input) {
|
|
268
|
-
return { input: interactionState.current.input };
|
|
269
|
-
}
|
|
270
|
-
return {};
|
|
271
|
-
}
|
|
@@ -2,5 +2,5 @@ import { type IUiTooltipProps } from "./types.js";
|
|
|
2
2
|
/**
|
|
3
3
|
* @internal
|
|
4
4
|
*/
|
|
5
|
-
export declare function UiTooltip({ id, anchor, content, behaviour, arrowPlacement, triggerBy, hoverOpenDelay, hoverCloseDelay, showArrow, width, offset: offsetProp, optimalPlacement, accessibilityConfig, variant, disabled, isOpen: isOpenProp, onOpen, onClose, anchorWrapperStyles }: IUiTooltipProps): import("react/jsx-runtime").JSX.Element;
|
|
5
|
+
export declare function UiTooltip({ id, anchor, content, behaviour, arrowPlacement, triggerBy, hoverOpenDelay, hoverCloseDelay, showArrow, width, offset: offsetProp, optimalPlacement, accessibilityConfig, variant, disabled, isOpen: isOpenProp, onOpen, onClose, onOpenChange, anchorWrapperStyles }: IUiTooltipProps): import("react/jsx-runtime").JSX.Element;
|
|
6
6
|
//# sourceMappingURL=UiTooltip.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UiTooltip.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiTooltip/UiTooltip.tsx"],"names":[],"mappings":"AA2BA,OAAO,EAAmB,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC;AAWnE;;GAEG;AACH,wBAAgB,SAAS,CAAC,EACtB,EAAE,EACF,MAAM,EACN,OAAO,EACP,SAAqB,EACrB,cAAsB,EACtB,SAAc,EACd,cAA2B,EAC3B,eAA4B,EAC5B,SAAgB,EAChB,KAAK,EACL,MAAM,EAAE,UAAU,EAClB,gBAAwB,EACxB,mBAAmB,EACnB,OAAmB,EACnB,QAAQ,EACR,MAAM,EAAE,UAAU,EAClB,MAAM,EACN,OAAO,EACP,mBAAmB,EACtB,EAAE,eAAe,
|
|
1
|
+
{"version":3,"file":"UiTooltip.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiTooltip/UiTooltip.tsx"],"names":[],"mappings":"AA2BA,OAAO,EAAmB,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC;AAWnE;;GAEG;AACH,wBAAgB,SAAS,CAAC,EACtB,EAAE,EACF,MAAM,EACN,OAAO,EACP,SAAqB,EACrB,cAAsB,EACtB,SAAc,EACd,cAA2B,EAC3B,eAA4B,EAC5B,SAAgB,EAChB,KAAK,EACL,MAAM,EAAE,UAAU,EAClB,gBAAwB,EACxB,mBAAmB,EACnB,OAAmB,EACnB,QAAQ,EACR,MAAM,EAAE,UAAU,EAClB,MAAM,EACN,OAAO,EACP,YAAY,EACZ,mBAAmB,EACtB,EAAE,eAAe,2CA0LjB"}
|
|
@@ -12,26 +12,29 @@ const { b, e } = bem("gd-ui-kit-tooltip");
|
|
|
12
12
|
/**
|
|
13
13
|
* @internal
|
|
14
14
|
*/
|
|
15
|
-
export function UiTooltip({ id, anchor, content, behaviour = "tooltip", arrowPlacement = "top", triggerBy = [], hoverOpenDelay = SHOW_DELAY, hoverCloseDelay = HIDE_DELAY, showArrow = true, width, offset: offsetProp, optimalPlacement = false, accessibilityConfig, variant = "default", disabled, isOpen: isOpenProp, onOpen, onClose, anchorWrapperStyles, }) {
|
|
15
|
+
export function UiTooltip({ id, anchor, content, behaviour = "tooltip", arrowPlacement = "top", triggerBy = [], hoverOpenDelay = SHOW_DELAY, hoverCloseDelay = HIDE_DELAY, showArrow = true, width, offset: offsetProp, optimalPlacement = false, accessibilityConfig, variant = "default", disabled, isOpen: isOpenProp, onOpen, onClose, onOpenChange, anchorWrapperStyles, }) {
|
|
16
16
|
const [isOpenInternal, setIsOpen] = useState(false);
|
|
17
|
-
const
|
|
17
|
+
const isControlled = isOpenProp !== undefined;
|
|
18
|
+
const isOpen = !disabled && (isControlled ? isOpenProp : isOpenInternal || triggerBy.length === 0);
|
|
18
19
|
const arrowRef = useRef(null);
|
|
19
20
|
const themeFromContext = useTheme();
|
|
20
21
|
const isScopeThemed = useIsScopeThemed();
|
|
21
22
|
const theme = isScopeThemed ? themeFromContext : undefined;
|
|
22
23
|
const handleOpenChange = useCallback((open) => {
|
|
23
24
|
setIsOpen(open);
|
|
25
|
+
onOpenChange?.(open);
|
|
24
26
|
if (open) {
|
|
25
27
|
onOpen?.();
|
|
26
28
|
}
|
|
27
29
|
else {
|
|
28
30
|
onClose?.();
|
|
29
31
|
}
|
|
30
|
-
}, [onClose, onOpen]);
|
|
32
|
+
}, [onClose, onOpen, onOpenChange]);
|
|
31
33
|
const handleClose = useCallback(() => {
|
|
32
34
|
setIsOpen(false);
|
|
35
|
+
onOpenChange?.(false);
|
|
33
36
|
onClose?.();
|
|
34
|
-
}, [onClose]);
|
|
37
|
+
}, [onClose, onOpenChange]);
|
|
35
38
|
// Custom shift middleware for tooltip arrow positioning
|
|
36
39
|
const customShiftMiddleware = useMemo(() => ({
|
|
37
40
|
name: "customShift",
|
|
@@ -77,9 +80,13 @@ export function UiTooltip({ id, anchor, content, behaviour = "tooltip", arrowPla
|
|
|
77
80
|
setFloatingDimensions({ width: 0, height: 0 });
|
|
78
81
|
}
|
|
79
82
|
}, [isOpen, refs.floating]);
|
|
80
|
-
// Trigger events using floating-ui interactions (handles hover, focus, click)
|
|
83
|
+
// Trigger events using floating-ui interactions (handles hover, focus, click).
|
|
84
|
+
// When controlled the open state is owned by the parent, so the anchor's own
|
|
85
|
+
// triggers are suppressed — otherwise an anchor that is shared with another
|
|
86
|
+
// popover (e.g. the labels picker reusing the permission-menu button) would
|
|
87
|
+
// toggle both.
|
|
81
88
|
const hover = useHover(context, {
|
|
82
|
-
enabled: triggerBy.includes("hover"),
|
|
89
|
+
enabled: !isControlled && triggerBy.includes("hover"),
|
|
83
90
|
move: false,
|
|
84
91
|
handleClose: safePolygon({ requireIntent: true }),
|
|
85
92
|
delay: {
|
|
@@ -88,17 +95,18 @@ export function UiTooltip({ id, anchor, content, behaviour = "tooltip", arrowPla
|
|
|
88
95
|
},
|
|
89
96
|
});
|
|
90
97
|
const focus = useFocus(context, {
|
|
91
|
-
enabled: triggerBy.includes("focus"),
|
|
98
|
+
enabled: !isControlled && triggerBy.includes("focus"),
|
|
92
99
|
});
|
|
93
100
|
const click = useClick(context, {
|
|
94
|
-
enabled: triggerBy.includes("click"),
|
|
101
|
+
enabled: !isControlled && triggerBy.includes("click"),
|
|
95
102
|
});
|
|
96
103
|
// Read the anchor lazily — floating-ui's `refs.reference` is a mutable
|
|
97
104
|
// ref that only has a current value once the reference element mounts,
|
|
98
105
|
// which is independent of our render cycle.
|
|
99
106
|
const setFloatingWithAnchorRegistry = useRegisterFloatingAnchor(refs.setFloating, () => refs.reference.current instanceof Element ? refs.reference.current : null);
|
|
107
|
+
// Dismiss stays enabled even when controlled so outside-click / Escape can
|
|
108
|
+
// request a close; the request is surfaced through handleOpenChange → onOpenChange.
|
|
100
109
|
const dismiss = useDismiss(context, {
|
|
101
|
-
enabled: isOpenProp === undefined,
|
|
102
110
|
outsidePress: (event) => !isClickInsideOwnSubtree(event.target, refs.floating.current),
|
|
103
111
|
});
|
|
104
112
|
const { getReferenceProps, getFloatingProps } = useInteractions([dismiss, hover, focus, click]);
|
|
@@ -55,9 +55,18 @@ export interface IUiTooltipProps {
|
|
|
55
55
|
*/
|
|
56
56
|
onClose?: () => void;
|
|
57
57
|
/**
|
|
58
|
-
* Controls the open state of the tooltip, overrides the triggerBy prop if set
|
|
58
|
+
* Controls the open state of the tooltip, overrides the triggerBy prop if set.
|
|
59
|
+
* In controlled mode the anchor's own hover/focus/click triggers are
|
|
60
|
+
* suppressed — open state is driven solely by this prop — but outside-click
|
|
61
|
+
* and Escape still request a close via `onOpenChange`.
|
|
59
62
|
*/
|
|
60
63
|
isOpen?: boolean;
|
|
64
|
+
/**
|
|
65
|
+
* Fires whenever an interaction requests an open-state change (anchor
|
|
66
|
+
* triggers when uncontrolled, outside-click / Escape always). Pair with
|
|
67
|
+
* `isOpen` to drive the tooltip from the parent.
|
|
68
|
+
*/
|
|
69
|
+
onOpenChange?: (open: boolean) => void;
|
|
61
70
|
/**
|
|
62
71
|
* Custom styles for the anchor wrapper element
|
|
63
72
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiTooltip/types.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAE3D,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAE/E;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAC3B,KAAK,GACL,WAAW,GACX,SAAS,GACT,QAAQ,GACR,cAAc,GACd,YAAY,GACZ,MAAM,GACN,YAAY,GACZ,UAAU,GACV,OAAO,GACP,aAAa,GACb,WAAW,CAAC;AAElB;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B,yBAAyB;IACzB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,uGAAuG;IACvG,cAAc,CAAC,EAAE,qBAAqB,CAAC;IAEvC,6DAA6D;IAC7D,MAAM,EAAE,SAAS,CAAC;IAElB,gDAAgD;IAChD,OAAO,EAAE,SAAS,GAAG,CAAC,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,IAAI,CAAC;QAAC,IAAI,EAAE,eAAe,GAAG,MAAM,CAAA;KAAE,KAAK,SAAS,CAAC,CAAC;IAEpG,2DAA2D;IAC3D,SAAS,CAAC,EAAE,KAAK,CAAC,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC,CAAC;IAE/C,4DAA4D;IAC5D,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,kEAAkE;IAClE,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,wCAAwC;IACxC,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,kIAAkI;IAClI,KAAK,CAAC,EAAE,MAAM,GAAG,gBAAgB,CAAC;IAElC,qFAAqF;IACrF,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,+FAA+F;IAC/F,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,sDAAsD;IACtD,mBAAmB,CAAC,EAAE,wBAAwB,CAAC;IAC/C;;;OAGG;IACH,OAAO,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC;IACvC;;OAEG;IACH,SAAS,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAElC,wEAAwE;IACxE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IAErB
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiTooltip/types.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAE3D,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAE/E;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAC3B,KAAK,GACL,WAAW,GACX,SAAS,GACT,QAAQ,GACR,cAAc,GACd,YAAY,GACZ,MAAM,GACN,YAAY,GACZ,UAAU,GACV,OAAO,GACP,aAAa,GACb,WAAW,CAAC;AAElB;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B,yBAAyB;IACzB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,uGAAuG;IACvG,cAAc,CAAC,EAAE,qBAAqB,CAAC;IAEvC,6DAA6D;IAC7D,MAAM,EAAE,SAAS,CAAC;IAElB,gDAAgD;IAChD,OAAO,EAAE,SAAS,GAAG,CAAC,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,IAAI,CAAC;QAAC,IAAI,EAAE,eAAe,GAAG,MAAM,CAAA;KAAE,KAAK,SAAS,CAAC,CAAC;IAEpG,2DAA2D;IAC3D,SAAS,CAAC,EAAE,KAAK,CAAC,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC,CAAC;IAE/C,4DAA4D;IAC5D,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,kEAAkE;IAClE,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,wCAAwC;IACxC,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,kIAAkI;IAClI,KAAK,CAAC,EAAE,MAAM,GAAG,gBAAgB,CAAC;IAElC,qFAAqF;IACrF,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,+FAA+F;IAC/F,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,sDAAsD;IACtD,mBAAmB,CAAC,EAAE,wBAAwB,CAAC;IAC/C;;;OAGG;IACH,OAAO,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC;IACvC;;OAEG;IACH,SAAS,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAElC,wEAAwE;IACxE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IAErB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;;;OAIG;IACH,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAEvC;;OAEG;IACH,mBAAmB,CAAC,EAAE,aAAa,CAAC;CACvC;AAED,MAAM,MAAM,UAAU,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3D,MAAM,MAAM,cAAc,GAAG;IAAE,CAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../src/Button/Button.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAiBjD;;GAEG;AACH,eAAO,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../src/Button/Button.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAiBjD;;GAEG;AACH,eAAO,MAAM,MAAM,sGAwHjB,CAAC"}
|
package/esm/Button/Button.js
CHANGED
|
@@ -20,7 +20,7 @@ function Icon({ icon }) {
|
|
|
20
20
|
* @internal
|
|
21
21
|
*/
|
|
22
22
|
export const Button = forwardRef(function Button({ className, describedByFromValidation: isDescribedByFromValidation = false, disabled = false, onClick = () => { }, tabIndex = 0, tagName = "button", type = "button", id, title, iconLeft, iconRight, accessibilityConfig, dataId, dataTestId, intent, size, variant, value, children, }, ref) {
|
|
23
|
-
const { isExpanded, popupId, ariaLabel, ariaLabelledBy, ariaDescribedBy: ariaDescribedByFromConfig, popupType, ariaHaspopup, role = "button", ariaControls, ariaExpanded, } = accessibilityConfig ?? {};
|
|
23
|
+
const { isExpanded, popupId, ariaLabel, ariaLabelledBy, ariaDescribedBy: ariaDescribedByFromConfig, popupType, ariaHaspopup, role = "button", ariaControls, ariaExpanded, ariaPressed, } = accessibilityConfig ?? {};
|
|
24
24
|
const ariaDropdownProps = {
|
|
25
25
|
...(popupId && isExpanded ? { "aria-controls": popupId } : {}),
|
|
26
26
|
...(ariaHaspopup ? { "aria-haspopup": ariaHaspopup } : {}),
|
|
@@ -63,7 +63,7 @@ export const Button = forwardRef(function Button({ className, describedByFromVal
|
|
|
63
63
|
]);
|
|
64
64
|
}, [className, disabled, effectiveValue, intent, size, variant]);
|
|
65
65
|
const TagName = tagName;
|
|
66
|
-
return (_jsxs(TagName, { id: id, "data-id": dataId, "data-testid": testId, ref: ref, title: title, className: classNames, type: type, onClick: handleClick, "aria-disabled": disabled, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, "aria-describedby": ariaDescribedBy, ...ariaDropdownAttributesFromConfig, ...(tagName === "button" ? {} : { tabIndex }), ...(tagName !== "button" || role !== "button" ? { role } : {}), children: [
|
|
66
|
+
return (_jsxs(TagName, { id: id, "data-id": dataId, "data-testid": testId, ref: ref, title: title, className: classNames, type: type, onClick: handleClick, "aria-disabled": disabled, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, "aria-describedby": ariaDescribedBy, "aria-pressed": ariaPressed, ...ariaDropdownAttributesFromConfig, ...(tagName === "button" ? {} : { tabIndex }), ...(tagName !== "button" || role !== "button" ? { role } : {}), children: [
|
|
67
67
|
_jsx(Icon, { icon: iconLeft }), effectiveValue ? _jsx("span", { className: "gd-button-text", children: effectiveValue }) : null, _jsx(Icon, { icon: iconRight })
|
|
68
68
|
] }));
|
|
69
69
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Datepicker.d.ts","sourceRoot":"","sources":["../../src/Datepicker/Datepicker.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Datepicker.d.ts","sourceRoot":"","sources":["../../src/Datepicker/Datepicker.tsx"],"names":[],"mappings":"AAEA,OAAO,EAGH,aAAa,EACb,KAAK,aAAa,IAAI,kBAAkB,EAExC,KAAK,SAAS,EAGjB,MAAM,OAAO,CAAC;AA+Bf,OAAO,EAAE,KAAK,qBAAqB,EAAc,MAAM,YAAY,CAAC;AAGpE,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAIrD,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AAC5E,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAO7D;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAChC,mBAAmB,CAAC,EAAE,wBAAwB,CAAC;IAC/C,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,CAAC,YAAY,EAAE,IAAI,KAAK,IAAI,CAAC;IACxC,MAAM,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,WAAW,EAAE,CAAC;IAC5B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,kBAAkB,CAAC,EAAE,CAAC,CAAC,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;CAC1E;AAED,MAAM,MAAM,eAAe,GAAG,mBAAmB,GAAG,qBAAqB,CAAC;AAE1E,UAAU,gBAAgB;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,IAAI,GAAG,SAAS,CAAC;IAC/B,SAAS,EAAE,IAAI,GAAG,SAAS,CAAC;IAC5B,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACtB;AAuCD,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAuB3E;AAaD,qBAAa,iBAAkB,SAAQ,aAAa,CAAC,eAAe,EAAE,gBAAgB,CAAC;IACnF,OAAO,CAAC,OAAO,CAA4B;IAC3C,OAAO,CAAC,sBAAsB,CAA+B;IAC7D,OAAO,CAAC,QAAQ,CAAiC;IAEjD,OAAO,CAAC,YAAY,CAAU;IAE9B,OAAc,YAAY;;;;;;;;;;;;;;;MAaxB;IACF,YAAY,KAAK,EAAE,eAAe,EAuBjC;IAEe,iBAAiB,IAAI,IAAI,CAOxC;IAEe,gCAAgC,CAAC,SAAS,EAAE,eAAe,GAAG,IAAI,CAYjF;IAEe,oBAAoB,IAAI,IAAI,CAG3C;IAED,OAAO,CAAC,kBAAkB;IAWV,kBAAkB,CAAC,UAAU,EAAE,eAAe,EAAE,SAAS,EAAE,gBAAgB,GAAG,IAAI,CAIjG;IAED,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,mBAAmB;IAU3B,OAAO,CAAC,wBAAwB;IAWhC,aAAa,gDAA+C;IAE5D,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,kBAAkB;IA2C1B,OAAO,CAAC,gBAAgB;IA8BxB,OAAO,CAAC,kBAAkB;IAK1B,OAAO,CAAC,oBAAoB,CAG1B;IAEF,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,eAAe;IA0BvB,OAAO,CAAC,SAAS;IASjB,OAAO,CAAC,kBAAkB;IAYV,MAAM,IAAI,SAAS,CAwDlC;CACJ;AAID;;GAEG;AACH,qBAAa,UAAW,SAAQ,aAAa,CAAC,mBAAmB,CAAC;IAC9C,MAAM,4CAMrB;CACJ"}
|
|
@@ -282,7 +282,7 @@ export class WrappedDatePicker extends PureComponent {
|
|
|
282
282
|
root: this.getOverlayWrapperClasses(),
|
|
283
283
|
};
|
|
284
284
|
return (_jsxs("div", { "data-testid": "datepicker", className: this.getComponentClasses(), ref: this.setComponentRef, onClick: this.handleWrapperClick, children: [
|
|
285
|
-
_jsx("input", {
|
|
285
|
+
_jsx("input", { autoComplete: "off", "aria-labelledby": accessibilityConfig?.ariaLabelledBy, "aria-label": accessibilityConfig?.ariaLabel ||
|
|
286
286
|
intl.formatMessage({ id: "datePicker.accessibility.label" }), "aria-describedby": accessibilityConfig?.ariaDescribedBy, onKeyDown: this.onKeyDown, tabIndex: tabIndex, onClick: () => this.setState({ isOpen: true }), ref: this.inputRef, value: inputValue, className: this.getInputClasses(), placeholder: placeholder, onChange: this.handleInputChanged, onBlur: this.handleInputBlur }), isOpen ? (_jsx("div", { id: `datepicker-popup-${this.datePickerId}`, role: "dialog", ref: this.datePickerContainerRef, children: _jsx(DayPicker, { classNames: classNamesProps, locale: convertLocale(intl.locale), showOutsideDays: true, mode: "single", selected: selectedDate, month: monthDate, onMonthChange: this.handleMonthChanged, weekStartsOn: convertWeekStart(this.props.weekStart ?? "Sunday"), onDayClick: this.handleCustomDayClick }) })) : null, _jsx("span", { className: "gd-datepicker-icon gd-icon-calendar" })
|
|
287
287
|
] }));
|
|
288
288
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Radar.d.ts","sourceRoot":"","sources":["../../../../src/Icon/icons/InsightIcons/Radar.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAGnD;;GAEG;AACH,wBAAgB,KAAK,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"Radar.d.ts","sourceRoot":"","sources":["../../../../src/Icon/icons/InsightIcons/Radar.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAGnD;;GAEG;AACH,wBAAgB,KAAK,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,UAAU,2CA8DhF"}
|
|
@@ -5,6 +5,8 @@ import { combineIconClasses } from "../../utils.js";
|
|
|
5
5
|
*/
|
|
6
6
|
export function Radar({ className, width, height, color, ariaHidden }) {
|
|
7
7
|
return (_jsxs("svg", { width: width ?? 32, height: height ?? 30, className: combineIconClasses(className), viewBox: "0 0 32 30", fill: "none", xmlns: "http://www.w3.org/2000/svg", "aria-hidden": ariaHidden, children: [
|
|
8
|
-
|
|
8
|
+
_jsxs("g", { clipPath: "url(#clip0_8094_5335)", children: [
|
|
9
|
+
_jsx("path", { d: "M24.4203 13.5509L18.8012 20.1236L10.9219 23.2587L9.32422 14.1222L16.0015 9.3075L24.4203 13.5509Z", fill: color ?? "#B0BECA", fillOpacity: "0.3" }), _jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M27.4131 12.5663L23.0537 25.9823H8.94629L4.58691 12.5663L16 4.27429L27.4131 12.5663ZM13.0889 21.1288L10.2861 24.9823H21.7139L18.9111 21.1288H13.0889ZM21.5137 15.0106L19.7178 20.537L22.5195 24.3895L26.043 13.5419L21.5137 15.0106ZM9.47949 24.3885L12.2803 20.536L10.4893 15.0214L5.96094 13.5604L9.47949 24.3885ZM13.8154 20.1288H18.1846L16 17.1249L13.8154 20.1288ZM16.8096 16.538L18.9912 19.538L20.3379 15.3925L16.8096 16.538ZM13.0078 19.537L15.1895 16.538L11.6631 15.4003L13.0078 19.537ZM16.5 15.5878L20.0342 14.4403L16.5 11.8729V15.5878ZM11.959 14.4442L15.5 15.5868V11.8719L11.959 14.4442ZM6.23926 12.5995L10.7822 14.0643L15.5 10.6366V5.87195L6.23926 12.5995ZM16.5 10.6366L21.21 14.0594L25.7441 12.5887L16.5 5.87195V10.6366Z", fill: color ?? "#B0BECA", fillOpacity: "0.3" }), _jsx("path", { d: "M9.32617 24.4735C9.87846 24.4735 10.3262 24.9212 10.3262 25.4735C10.3262 26.0258 9.87846 26.4735 9.32617 26.4735C8.77389 26.4735 8.32617 26.0258 8.32617 25.4735C8.32617 24.9212 8.77389 24.4735 9.32617 24.4735Z", fill: color ?? "#B0BECA" }), _jsx("path", { d: "M22.6904 24.4735C23.2427 24.4735 23.6904 24.9212 23.6904 25.4735C23.6904 26.0258 23.2427 26.4735 22.6904 26.4735C22.1381 26.4735 21.6904 26.0258 21.6904 25.4735C21.6904 24.9212 22.1381 24.4735 22.6904 24.4735Z", fill: color ?? "#B0BECA" }), _jsx("path", { d: "M16 15.2743C16.5523 15.2743 17 15.722 17 16.2743C17 16.8266 16.5523 17.2743 16 17.2743C15.4477 17.2743 15 16.8266 15 16.2743C15 15.722 15.4477 15.2743 16 15.2743Z", fill: color ?? "#B0BECA" }), _jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M25.2148 13.3905L19.1006 20.5419L18.9863 20.5868L10.5352 23.9501L8.83203 14.2069L8.77734 13.8983L9.03223 13.7157L15.9551 8.72351L25.2148 13.3905ZM9.87012 14.3436L11.3076 22.5653L18.501 19.703L23.626 13.7089L16.0469 9.88855L9.87012 14.3436Z", fill: color ?? "#B0BECA" }), _jsx("path", { d: "M5.17969 11.7743C5.73197 11.7743 6.17969 12.222 6.17969 12.7743C6.17969 13.3266 5.73197 13.7743 5.17969 13.7743C4.6274 13.7743 4.17969 13.3266 4.17969 12.7743C4.17969 12.222 4.6274 11.7743 5.17969 11.7743Z", fill: color ?? "#B0BECA" }), _jsx("path", { d: "M26.8203 11.7743C27.3726 11.7743 27.8203 12.222 27.8203 12.7743C27.8203 13.3266 27.3726 13.7743 26.8203 13.7743C26.268 13.7743 25.8203 13.3266 25.8203 12.7743C25.8203 12.222 26.268 11.7743 26.8203 11.7743Z", fill: color ?? "#B0BECA" }), _jsx("path", { d: "M16 3.91492C16.5523 3.91492 17 4.36263 17 4.91492C17 5.4672 16.5523 5.91492 16 5.91492C15.4477 5.91492 15 5.4672 15 4.91492C15 4.36263 15.4477 3.91492 16 3.91492Z", fill: color ?? "#B0BECA" })
|
|
10
|
+
] }), _jsx("defs", { children: _jsx("clipPath", { id: "clip0_8094_5335", children: _jsx("rect", { width: "24", height: "24", fill: "white", transform: "translate(4 3)" }) }) })
|
|
9
11
|
] }));
|
|
10
12
|
}
|
package/esm/List/MenuList.d.ts
CHANGED
|
@@ -39,10 +39,11 @@ export interface IItemProps {
|
|
|
39
39
|
children: ReactNode;
|
|
40
40
|
className?: string;
|
|
41
41
|
style?: CSSProperties;
|
|
42
|
+
testId?: string;
|
|
42
43
|
onClick?: (e: MouseEvent<HTMLDivElement>) => void;
|
|
43
44
|
}
|
|
44
45
|
/**
|
|
45
46
|
* @internal
|
|
46
47
|
*/
|
|
47
|
-
export declare function Item({ checked, subMenu, disabled, className, children, style, onClick }: IItemProps): import("react/jsx-runtime").JSX.Element;
|
|
48
|
+
export declare function Item({ checked, subMenu, disabled, className, children, style, testId, onClick }: IItemProps): import("react/jsx-runtime").JSX.Element;
|
|
48
49
|
//# sourceMappingURL=MenuList.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuList.d.ts","sourceRoot":"","sources":["../../src/List/MenuList.tsx"],"names":[],"mappings":"AAEA,OAAO,EACH,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,SAAS,EACjB,MAAM,OAAO,CAAC;AAIf,OAAO,EAAE,KAAK,iCAAiC,EAAE,MAAM,6BAA6B,CAAC;AAErF;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAC/B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,mBAAmB,CAAC,EAAE,iCAAiC,CAAC;IACxD,UAAU,CAAC,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;CACjD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,EACzB,iBAAyB,EACzB,SAAS,EACT,QAAQ,EACR,KAAK,EACL,UAAU,EACb,EAAE,kBAAkB,2CAgBpB;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,CAAC,cAAc,CAAC,2CAE9D;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IACzB,QAAQ,EAAE,SAAS,CAAC;CACvB;AACD;;GAEG;AACH,wBAAgB,MAAM,CAAC,EAAE,QAAQ,EAAE,GAAG,SAAS,EAAE,EAAE,YAAY,2CAM9D;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC;CACrD;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,EACjB,OAAe,EACf,OAAe,EACf,QAAgB,EAChB,SAAS,EACT,QAAQ,EACR,KAAK,EACL,OAAO,EACV,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"MenuList.d.ts","sourceRoot":"","sources":["../../src/List/MenuList.tsx"],"names":[],"mappings":"AAEA,OAAO,EACH,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,SAAS,EACjB,MAAM,OAAO,CAAC;AAIf,OAAO,EAAE,KAAK,iCAAiC,EAAE,MAAM,6BAA6B,CAAC;AAErF;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAC/B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,mBAAmB,CAAC,EAAE,iCAAiC,CAAC;IACxD,UAAU,CAAC,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;CACjD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,EACzB,iBAAyB,EACzB,SAAS,EACT,QAAQ,EACR,KAAK,EACL,UAAU,EACb,EAAE,kBAAkB,2CAgBpB;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,CAAC,cAAc,CAAC,2CAE9D;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IACzB,QAAQ,EAAE,SAAS,CAAC;CACvB;AACD;;GAEG;AACH,wBAAgB,MAAM,CAAC,EAAE,QAAQ,EAAE,GAAG,SAAS,EAAE,EAAE,YAAY,2CAM9D;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC;CACrD;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,EACjB,OAAe,EACf,OAAe,EACf,QAAgB,EAChB,SAAS,EACT,QAAQ,EACR,KAAK,EACL,MAAM,EACN,OAAO,EACV,EAAE,UAAU,2CAoBZ"}
|
package/esm/List/MenuList.js
CHANGED
|
@@ -24,12 +24,12 @@ export function Header({ children, ...restProps }) {
|
|
|
24
24
|
/**
|
|
25
25
|
* @internal
|
|
26
26
|
*/
|
|
27
|
-
export function Item({ checked = false, subMenu = false, disabled = false, className, children, style, onClick, }) {
|
|
27
|
+
export function Item({ checked = false, subMenu = false, disabled = false, className, children, style, testId, onClick, }) {
|
|
28
28
|
return (_jsx("div", { className: classnames({
|
|
29
29
|
"gd-list-item": true,
|
|
30
30
|
"gd-menu-item": true,
|
|
31
31
|
"is-checked": checked,
|
|
32
32
|
"is-submenu": subMenu,
|
|
33
33
|
"is-disabled": disabled,
|
|
34
|
-
}, className), style: style, onClick: onClick, children: children }));
|
|
34
|
+
}, className), "data-testid": testId, style: style, onClick: onClick, children: children }));
|
|
35
35
|
}
|
package/esm/index.d.ts
CHANGED
|
@@ -474,8 +474,9 @@ export { UiGeneralAccessRadio, type IUiGeneralAccessRadioProps, type GeneralAcce
|
|
|
474
474
|
export { UiLabelRow, type IUiLabelRowProps, type LabelRowKind } from "./@ui/UiLabelRow/UiLabelRow.js";
|
|
475
475
|
export { UiLabelChecklistRow, type IUiLabelChecklistRowProps, } from "./@ui/UiLabelChecklistRow/UiLabelChecklistRow.js";
|
|
476
476
|
export { UiLabelsList, type IUiLabelsListProps, type IUiLabelsListItem, } from "./@ui/UiLabelsList/UiLabelsList.js";
|
|
477
|
-
export {
|
|
477
|
+
export { UiLabelsChecklist, isLabelsChecklistItemChecked, type IUiLabelsChecklistProps, type IUiLabelsChecklistItem, } from "./@ui/UiLabelsChecklist/UiLabelsChecklist.js";
|
|
478
478
|
export { UiPermissionMenu, type IUiPermissionMenuProps, type PermissionMenuLevel, } from "./@ui/UiPermissionMenu/UiPermissionMenu.js";
|
|
479
|
+
export { UiMoreOptionsMenu, type IUiMoreOptionsMenuProps, } from "./@ui/UiMoreOptionsMenu/UiMoreOptionsMenu.js";
|
|
479
480
|
export { UiGranteeRowControls, type IUiGranteeRowControlsProps, } from "./@ui/UiGranteeRowControls/UiGranteeRowControls.js";
|
|
480
481
|
export { UiToastProvider, useUiToast } from "./@ui/UiToast/UiToastProvider.js";
|
|
481
482
|
export { UiToastItem, UiToastsContainer, type IUiToastItemProps, type IUiToastsContainerProps, } from "./@ui/UiToast/UiToastsContainer.js";
|