@geneui/components 3.0.0-next-2fa65ce-08062026 → 3.0.0-next-fa6959e-02072026

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 (59) hide show
  1. package/Accordion.js +3 -3
  2. package/ActionableList.js +225 -67
  3. package/{ActionableListNodeWrapper-42ea60cf.js → ActionableListNodeWrapper-0a3308ca.js} +1 -1
  4. package/Banner.js +3 -3
  5. package/Breadcrumb.js +4 -4
  6. package/{ButtonGroup-f8e59eb9.js → ButtonGroup-ba146dcb.js} +1 -1
  7. package/ButtonGroup.js +3 -3
  8. package/ColorPicker.js +3 -3
  9. package/DataCard.js +3 -3
  10. package/DataCardList.js +3 -3
  11. package/DataTable.js +3 -3
  12. package/Drawer.js +3 -3
  13. package/Dropdown.js +3 -3
  14. package/Empty.js +3 -3
  15. package/GlobalHeader.js +4 -4
  16. package/Image.js +3 -3
  17. package/ImagePreview.helpers-6bd10e1c.js +212 -0
  18. package/ImagePreview.js +423 -0
  19. package/InteractiveCard.js +1 -1
  20. package/List.js +3 -3
  21. package/Menu.js +3 -3
  22. package/Modal.js +3 -3
  23. package/Navigation.js +3 -3
  24. package/Notification.js +3 -3
  25. package/OTPField.js +3 -3
  26. package/PageHeader.js +4 -4
  27. package/Pagination.js +3 -3
  28. package/Popover.js +3 -3
  29. package/PopoverConfirm.js +3 -3
  30. package/{Products-d6d5921f.js → Products-51b56aec.js} +2 -2
  31. package/Products.js +4 -4
  32. package/Profile.js +3 -3
  33. package/SegmentedControl.js +34 -94
  34. package/SplitButton.js +3 -3
  35. package/Switch.js +2 -2
  36. package/TransferList-55c2e836.js +4 -0
  37. package/TransferList.js +396 -0
  38. package/components/molecules/ActionableList/ActionableList.d.ts +1 -1
  39. package/components/molecules/ActionableList/ActionableList.helpers.d.ts +8 -1
  40. package/components/molecules/ActionableList/ActionableList.types.d.ts +55 -2
  41. package/components/molecules/ActionableList/ActionableListItem/ActionableListItem.d.ts +8 -0
  42. package/components/molecules/ActionableList/index.d.ts +1 -1
  43. package/components/molecules/ImagePreview/Controllers/Controllers.d.ts +54 -0
  44. package/components/molecules/ImagePreview/ImagePreview.d.ts +75 -0
  45. package/components/molecules/ImagePreview/ImagePreview.helpers.d.ts +13 -0
  46. package/components/molecules/ImagePreview/Magnifier/Magnifier.d.ts +45 -0
  47. package/components/molecules/ImagePreview/Magnifier/Magnifier.helpers.d.ts +27 -0
  48. package/components/molecules/ImagePreview/index.d.ts +1 -0
  49. package/components/molecules/Switch/Switch.d.ts +4 -0
  50. package/components/organisms/TransferList/TransferList.d.ts +8 -0
  51. package/components/organisms/TransferList/TransferList.helpers.d.ts +25 -0
  52. package/components/organisms/TransferList/TransferList.types.d.ts +62 -0
  53. package/components/organisms/TransferList/index.d.ts +2 -0
  54. package/{index-a46fb8ec.js → index-0446a4e6.js} +2 -2
  55. package/{index-3dc2323a.js → index-7aa2d261.js} +2 -2
  56. package/index.d.ts +2 -0
  57. package/index.js +11 -7
  58. package/package.json +1 -1
  59. package/{tslib.es6-f211516f.js → tslib.es6-4a42b189.js} +11 -1
package/Accordion.js CHANGED
@@ -1,4 +1,4 @@
1
- import { _ as __rest } from './tslib.es6-f211516f.js';
1
+ import { a as __rest } from './tslib.es6-4a42b189.js';
2
2
  import React__default, { useContext, useState, useRef, useMemo } from 'react';
3
3
  import { c as classNames } from './index-ce02421b.js';
4
4
  import { n as nanoid } from './index-15303b91.js';
@@ -7,7 +7,7 @@ import { a as SvgChevronLeft, S as SvgChevronRight } from './ChevronRight-af87e2
7
7
  import Button from './Button.js';
8
8
  import { S as Scrollbar } from './index-4388be47.js';
9
9
  import Text from './Text.js';
10
- import { B as ButtonGroup } from './index-a46fb8ec.js';
10
+ import { B as ButtonGroup } from './index-0446a4e6.js';
11
11
  import Tooltip from './Tooltip.js';
12
12
  import { u as useEllipsisDetection } from './useEllipsisDetection-c5f9b175.js';
13
13
  import { a as AccordionContext } from './Accordion-3e20a13f.js';
@@ -18,7 +18,7 @@ import './style-inject.es-746bb8ed.js';
18
18
  import 'prop-types';
19
19
  import 'react-dom';
20
20
  import './useDebounceCallback-999deae7.js';
21
- import './ButtonGroup-f8e59eb9.js';
21
+ import './ButtonGroup-ba146dcb.js';
22
22
  import './index-7d785c81.js';
23
23
  import './X-20da3b4a.js';
24
24
  import './index-5becfc74.js';
package/ActionableList.js CHANGED
@@ -1,5 +1,5 @@
1
- import React__default, { useContext, useState, useRef, useEffect, useMemo, useCallback } from 'react';
2
- import { _ as _slicedToArray, d as dist, a as _toConsumableArray, g as getBindingsForBrokenDrags, m as monitorForElements, c as combine, b as dropTargetForElements, e as draggable, f as disableNativeDragPreview } from './ActionableListNodeWrapper-42ea60cf.js';
1
+ import React__default, { useContext, useState, useRef, useEffect, useLayoutEffect, useMemo, useCallback } from 'react';
2
+ import { _ as _slicedToArray, d as dist, a as _toConsumableArray, g as getBindingsForBrokenDrags, m as monitorForElements, c as combine, b as dropTargetForElements, e as draggable, f as disableNativeDragPreview } from './ActionableListNodeWrapper-0a3308ca.js';
3
3
  import { c as classNames } from './index-ce02421b.js';
4
4
  import { S as SvgMagnifier } from './Magnifier-8df67f2d.js';
5
5
  import Divider from './Divider.js';
@@ -7,18 +7,18 @@ import Loader from './Loader.js';
7
7
  import { S as Scrollbar } from './index-4388be47.js';
8
8
  import Text from './Text.js';
9
9
  import Checkbox from './Checkbox.js';
10
- import { E as Empty } from './index-a46fb8ec.js';
10
+ import { E as Empty } from './index-0446a4e6.js';
11
11
  import TextField from './TextField.js';
12
+ import Tooltip from './Tooltip.js';
12
13
  import { u as useDebouncedCallback } from './useDebounceCallback-999deae7.js';
14
+ import { u as useEllipsisDetection } from './useEllipsisDetection-c5f9b175.js';
13
15
  import { S as SvgChevronDown } from './ChevronDown-ee53f094.js';
14
- import { S as SvgChevronRight } from './ChevronRight-af87e2a4.js';
16
+ import { a as SvgChevronLeft, S as SvgChevronRight } from './ChevronRight-af87e2a4.js';
15
17
  import { _ as _objectWithoutProperties, a as _extends } from './ActivityRecent-b88e2ba8.js';
16
18
  import Button from './Button.js';
17
19
  import Info from './Info.js';
18
20
  import { createPortal } from 'react-dom';
19
21
  import { a as GeneUIDesignSystemContext } from './index-9a69bcc6.js';
20
- import Tooltip from './Tooltip.js';
21
- import { u as useEllipsisDetection } from './useEllipsisDetection-c5f9b175.js';
22
22
  import './style-inject.es-746bb8ed.js';
23
23
  import 'prop-types';
24
24
  import './index-15303b91.js';
@@ -33,8 +33,8 @@ import './index-7d785c81.js';
33
33
  import './useWindowSize-6faa0d0f.js';
34
34
  import './useDeviceInfo-8340f573.js';
35
35
  import './Checkbox-11eae830.js';
36
- import './ButtonGroup-f8e59eb9.js';
37
- import './tslib.es6-f211516f.js';
36
+ import './ButtonGroup-ba146dcb.js';
37
+ import './tslib.es6-4a42b189.js';
38
38
  import './X-20da3b4a.js';
39
39
  import './index-5becfc74.js';
40
40
  import './regex-d4e84e78.js';
@@ -125,6 +125,7 @@ const isAnySelectionInSubtree = (item) => {
125
125
  return children.some((child) => isAnySelectionInSubtree(child));
126
126
  };
127
127
  const nextLevel = (level) => Math.min(level + 1, ACTIONABLE_LIST_MAX_NESTED_LEVEL);
128
+ const isGroupItem = (item) => Array.isArray(item.children);
128
129
  const mergeItemsFromProps = (incoming, previous) => {
129
130
  const prevById = new Map();
130
131
  const index = (nodes) => {
@@ -146,15 +147,30 @@ const mergeItemsFromProps = (incoming, previous) => {
146
147
  else if (prev !== undefined && typeof prev.checked === "boolean") {
147
148
  checked = prev.checked;
148
149
  }
149
- return Object.assign(Object.assign({}, node), { checked, children: ((_a = node.children) === null || _a === void 0 ? void 0 : _a.length) ? merge(node.children) : undefined });
150
+ return Object.assign(Object.assign({}, node), { checked, children: isGroupItem(node) ? merge((_a = node.children) !== null && _a !== void 0 ? _a : []) : undefined });
150
151
  });
151
152
  return merge(incoming);
152
153
  };
153
154
  const countAllItems = (items) => items.reduce((acc, item) => acc + 1 + countAllItems(item.children || []), 0);
155
+ /** Counts leaf nodes only — parent rows with children are grouping headers, not items. */
156
+ const countLeafItems = (items) => items.reduce((acc, item) => {
157
+ var _a;
158
+ if (isGroupItem(item))
159
+ return acc + countLeafItems((_a = item.children) !== null && _a !== void 0 ? _a : []);
160
+ return acc + 1;
161
+ }, 0);
154
162
  const countCheckedItems = (items) => items.reduce((acc, item) => {
155
163
  var _a;
156
- const childCount = ((_a = item.children) === null || _a === void 0 ? void 0 : _a.length) ? countCheckedItems(item.children) : 0;
157
- return acc + (item.checked ? 1 : 0) + childCount;
164
+ if (isGroupItem(item))
165
+ return acc + countCheckedItems((_a = item.children) !== null && _a !== void 0 ? _a : []);
166
+ return acc + (item.checked ? 1 : 0);
167
+ }, 0);
168
+ /** Counts checked leaves in `items` whose ids are in `scopeLeafIds`. */
169
+ const countCheckedLeavesInScope = (items, scopeLeafIds) => items.reduce((acc, item) => {
170
+ var _a;
171
+ if (isGroupItem(item))
172
+ return acc + countCheckedLeavesInScope((_a = item.children) !== null && _a !== void 0 ? _a : [], scopeLeafIds);
173
+ return acc + (item.checked && scopeLeafIds.has(item.id) ? 1 : 0);
158
174
  }, 0);
159
175
  const findItemById = (nodes, targetId) => {
160
176
  const direct = nodes.find((node) => node.id === targetId);
@@ -182,34 +198,46 @@ const applyCheckedToBranch = (item, checked) => {
182
198
  var _a;
183
199
  return (Object.assign(Object.assign({}, item), { checked, children: (_a = item.children) === null || _a === void 0 ? void 0 : _a.map((child) => applyCheckedToBranch(child, checked)) }));
184
200
  };
201
+ const collectLeafIds = (items) => items.flatMap((item) => { var _a; return (isGroupItem(item) ? collectLeafIds((_a = item.children) !== null && _a !== void 0 ? _a : []) : [item.id]); });
202
+ const applyCheckedToLeavesById = (items, leafIds, checked) => items.map((item) => {
203
+ var _a;
204
+ if (isGroupItem(item)) {
205
+ return Object.assign(Object.assign({}, item), { children: applyCheckedToLeavesById((_a = item.children) !== null && _a !== void 0 ? _a : [], leafIds, checked) });
206
+ }
207
+ return leafIds.has(item.id) ? Object.assign(Object.assign({}, item), { checked }) : item;
208
+ });
185
209
  const filterTree = (items, query) => {
186
210
  const q = query.trim().toLowerCase();
187
211
  if (!q)
188
212
  return items;
189
213
  return items.reduce((acc, item) => {
190
- const filteredChildren = filterTree(item.children || [], q);
214
+ var _a;
215
+ const filteredChildren = isGroupItem(item) ? filterTree((_a = item.children) !== null && _a !== void 0 ? _a : [], q) : [];
191
216
  if (item.title.toLowerCase().includes(q) || filteredChildren.length > 0) {
192
- acc.push(Object.assign(Object.assign({}, item), { children: filteredChildren }));
217
+ acc.push(Object.assign(Object.assign({}, item), { children: isGroupItem(item) ? filteredChildren : undefined }));
193
218
  }
194
219
  return acc;
195
220
  }, []);
196
221
  };
197
- const reorderSiblingsById = (items, sourceId, targetId) => {
222
+ const reorderSiblingsById = (items, sourceId, targetId, edge) => {
198
223
  const si = items.findIndex((n) => n.id === sourceId);
199
224
  const ti = items.findIndex((n) => n.id === targetId);
200
225
  if (si < 0 || ti < 0 || si === ti)
201
226
  return items;
202
- return reorder({ list: items, startIndex: si, finishIndex: ti });
227
+ let finishIndex = edge === "top" ? ti : ti + 1;
228
+ if (si < finishIndex)
229
+ finishIndex -= 1;
230
+ return reorder({ list: items, startIndex: si, finishIndex });
203
231
  };
204
- const reorderInTree = (items, sourceId, targetId) => {
205
- const siblingResult = reorderSiblingsById(items, sourceId, targetId);
232
+ const reorderInTree = (items, sourceId, targetId, edge = "bottom") => {
233
+ const siblingResult = reorderSiblingsById(items, sourceId, targetId, edge);
206
234
  if (siblingResult !== items)
207
235
  return siblingResult;
208
236
  return items.map((item) => {
209
237
  var _a;
210
238
  if (!((_a = item.children) === null || _a === void 0 ? void 0 : _a.length))
211
239
  return item;
212
- return Object.assign(Object.assign({}, item), { children: reorderInTree(item.children, sourceId, targetId) });
240
+ return Object.assign(Object.assign({}, item), { children: reorderInTree(item.children, sourceId, targetId, edge) });
213
241
  });
214
242
  };
215
243
  const getExpandedIdsFromItems = (items, ids = new Set()) => {
@@ -405,7 +433,7 @@ const CustomDragLayer = () => {
405
433
  React__default.createElement(ClonedNodeRenderer, { node: dragState.previewNode })), providerCurrent);
406
434
  };
407
435
 
408
- const ActionableListItem = ({ id, title, level, infoText, isExpandable = false, isExpanded = false, withCheckbox = false, checkboxChecked, checkboxIndeterminate, selectedCount = 0, totalCount = 0, descendantsSelectedCount = 0, descendantsTotalCount = 0, selectedLabel = "Selected", parentId = "root", isDraggable = false, dropGapEdge = null, expandAriaLabel = "Toggle nested items", onToggleExpand, onToggleCheck, onDragTargetChange, className }) => {
436
+ const ActionableListItem = ({ id, title, level, infoText, isExpandable = false, isExpandDisabled = false, isExpanded = false, withCheckbox = false, checkboxChecked, checkboxIndeterminate, selectedCount = 0, totalCount = 0, descendantsSelectedCount = 0, descendantsTotalCount = 0, selectedLabel = "Selected", parentId = "root", dragListId, isDraggable = false, dropGapEdge = null, expandAriaLabel = "Toggle nested items", onToggleExpand, onToggleCheck, onDragTargetChange, className }) => {
409
437
  const rowRef = useRef(null);
410
438
  const dragHandleRef = useRef(null);
411
439
  const titleTextRef = useRef(null);
@@ -414,6 +442,8 @@ const ActionableListItem = ({ id, title, level, infoText, isExpandable = false,
414
442
  const isTruncated = useEllipsisDetection(titleTextRef);
415
443
  const isSelectedLabelTruncated = useEllipsisDetection(selectedLabelRef);
416
444
  const [isDragging, setIsDragging] = useState(false);
445
+ const isRTLMode = typeof document !== "undefined" && document.dir === "rtl";
446
+ const collapsedExpandIcon = isRTLMode ? SvgChevronLeft : SvgChevronRight;
417
447
  onDragTargetChangeRef.current = onDragTargetChange;
418
448
  const computeEdge = (clientY) => {
419
449
  const rowEl = rowRef.current;
@@ -446,12 +476,7 @@ const ActionableListItem = ({ id, title, level, infoText, isExpandable = false,
446
476
  width: `${rect.width}px`,
447
477
  height: `${rect.height}px`
448
478
  });
449
- return {
450
- sourceId: id,
451
- parentId,
452
- previewNode: clone,
453
- initialRect: rect
454
- };
479
+ return Object.assign(Object.assign({ sourceId: id, parentId }, (dragListId ? { dragListId } : {})), { previewNode: clone, initialRect: rect });
455
480
  },
456
481
  onGenerateDragPreview: ({ nativeSetDragImage }) => {
457
482
  disableNativeDragPreview({ nativeSetDragImage });
@@ -466,8 +491,15 @@ const ActionableListItem = ({ id, title, level, infoText, isExpandable = false,
466
491
  }
467
492
  }), dropTargetForElements({
468
493
  element: rowEl,
469
- getData: () => ({ targetId: id, parentId }),
470
- canDrop: ({ source }) => source.data.parentId === parentId,
494
+ getData: () => (Object.assign({ targetId: id, parentId }, (dragListId ? { targetListId: dragListId } : {}))),
495
+ canDrop: ({ source }) => {
496
+ const sourceListId = source.data.dragListId;
497
+ const sourceParentId = source.data.parentId;
498
+ if (dragListId && sourceListId && sourceListId !== dragListId) {
499
+ return parentId === "root";
500
+ }
501
+ return sourceParentId === parentId;
502
+ },
471
503
  onDragEnter: ({ location }) => {
472
504
  var _a;
473
505
  (_a = onDragTargetChangeRef.current) === null || _a === void 0 ? void 0 : _a.call(onDragTargetChangeRef, computeEdge(location.current.input.clientY));
@@ -477,7 +509,7 @@ const ActionableListItem = ({ id, title, level, infoText, isExpandable = false,
477
509
  (_a = onDragTargetChangeRef.current) === null || _a === void 0 ? void 0 : _a.call(onDragTargetChangeRef, computeEdge(location.current.input.clientY));
478
510
  }
479
511
  }));
480
- }, [isDraggable, id, parentId]);
512
+ }, [isDraggable, id, parentId, dragListId]);
481
513
  return (React__default.createElement("div", { ref: rowRef, className: classNames("actionableListItem", className, {
482
514
  actionableListItem_nested: level > 1,
483
515
  actionableListItem_draggable: isDraggable,
@@ -486,7 +518,7 @@ const ActionableListItem = ({ id, title, level, infoText, isExpandable = false,
486
518
  actionableListItem_dropGapBottom: dropGapEdge === "bottom"
487
519
  }) },
488
520
  React__default.createElement(CustomDragLayer, null),
489
- isExpandable && (React__default.createElement(Button, { size: "smallNudge", appearance: "secondary", layout: "text", Icon: isExpanded ? SvgChevronDown : SvgChevronRight, onClick: onToggleExpand, "aria-label": expandAriaLabel, className: "actionableListItem__toggle" })),
521
+ isExpandable && (React__default.createElement(Button, { size: "smallNudge", appearance: "secondary", layout: "text", Icon: isExpanded ? SvgChevronDown : collapsedExpandIcon, onClick: onToggleExpand, disabled: isExpandDisabled, "aria-label": expandAriaLabel, className: "actionableListItem__toggle" })),
490
522
  withCheckbox && (React__default.createElement(Checkbox, { checked: resolvedCheckboxChecked, indeterminate: resolvedCheckboxIndeterminate, onChange: (event) => onToggleCheck === null || onToggleCheck === void 0 ? void 0 : onToggleCheck(event.target.checked), className: "actionableListItem__checkbox" })),
491
523
  React__default.createElement(Tooltip, { text: title, isVisible: isTruncated },
492
524
  React__default.createElement(Text, { ref: titleTextRef, as: "span", variant: "bodyMediumMedium", className: "actionableListItem__title ellipsis-text" }, title)),
@@ -505,45 +537,72 @@ const ActionableListNodeWrapper = ({ level, children }) => {
505
537
  return React__default.createElement("div", { className: `actionableList__wrapper actionableList__wrapper_level_${level}` }, children);
506
538
  };
507
539
 
508
- const RenderNode = ({ item, level, parentId, withCheckbox, isDraggable, expandedIds, texts, dropGap, isSearchActive, onToggleExpand, onToggleCheck, onDragTargetChange }) => {
509
- var _a, _b, _c, _d, _e, _f;
510
- const childCount = ((_a = item.children) === null || _a === void 0 ? void 0 : _a.length) || 0;
511
- const canExpand = childCount > 0 && level < ACTIONABLE_LIST_MAX_NESTED_LEVEL;
540
+ const isDroppedOnOtherList = (location, listId) => location.current.dropTargets.some(({ data: { targetListId, isPanelDropTarget } }) => {
541
+ return typeof targetListId === "string" && targetListId !== listId && !isPanelDropTarget;
542
+ });
543
+ const RenderNode = ({ item, level, parentId, withCheckbox, isDraggable, dragListId, expandedIds, texts, dropGap, isSearchActive, onToggleExpand, onToggleCheck, onDragTargetChange }) => {
544
+ var _a, _b, _c, _d, _e, _f, _g;
545
+ const isGroup = isGroupItem(item);
546
+ const childCount = (_b = (_a = item.children) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0;
547
+ const canExpand = isGroup && childCount > 0 && level < ACTIONABLE_LIST_MAX_NESTED_LEVEL;
512
548
  const isExpanded = canExpand ? isSearchActive || expandedIds.has(item.id) : false;
513
549
  const branchFullySelected = isSubtreeFullySelected(item);
514
550
  const branchIndeterminate = !branchFullySelected && isAnySelectionInSubtree(item);
515
- const directChildTotal = (_c = (_b = item.children) === null || _b === void 0 ? void 0 : _b.length) !== null && _c !== void 0 ? _c : 0;
516
- const directChildFullySelected = (_e = (_d = item.children) === null || _d === void 0 ? void 0 : _d.filter((child) => isSubtreeFullySelected(child)).length) !== null && _e !== void 0 ? _e : 0;
551
+ const directChildTotal = (_d = (_c = item.children) === null || _c === void 0 ? void 0 : _c.length) !== null && _d !== void 0 ? _d : 0;
552
+ const directChildFullySelected = (_f = (_e = item.children) === null || _e === void 0 ? void 0 : _e.filter((child) => isSubtreeFullySelected(child)).length) !== null && _f !== void 0 ? _f : 0;
517
553
  const childLevel = nextLevel(level);
518
554
  const dropGapEdge = (dropGap === null || dropGap === void 0 ? void 0 : dropGap.targetId) === item.id ? dropGap.edge : null;
519
555
  return (React__default.createElement(React__default.Fragment, null,
520
- React__default.createElement(ActionableListItem, Object.assign({ id: item.id, title: item.title, level: level, parentId: parentId, infoText: item.infoText, isExpandable: canExpand, isExpanded: isExpanded, withCheckbox: withCheckbox }, (withCheckbox
556
+ React__default.createElement(ActionableListItem, Object.assign({ id: item.id, title: item.title, level: level, parentId: parentId, infoText: item.infoText, isExpandable: isGroup && level < ACTIONABLE_LIST_MAX_NESTED_LEVEL, isExpandDisabled: isGroup && childCount === 0, isExpanded: isExpanded, withCheckbox: withCheckbox }, (withCheckbox
521
557
  ? {
522
558
  checkboxChecked: branchFullySelected,
523
559
  checkboxIndeterminate: branchIndeterminate,
524
560
  descendantsSelectedCount: directChildFullySelected,
525
561
  descendantsTotalCount: directChildTotal
526
562
  }
527
- : {}), { selectedLabel: texts.selectedItemsLabel, isDraggable: isDraggable, dropGapEdge: dropGapEdge, expandAriaLabel: texts.expandButtonAriaLabel, onToggleExpand: () => onToggleExpand(item.id), onToggleCheck: (checked) => onToggleCheck(item.id, checked), onDragTargetChange: (edge) => onDragTargetChange(item.id, edge) })),
563
+ : {}), { selectedLabel: texts.selectedItemsLabel, isDraggable: isDraggable, dragListId: dragListId, dropGapEdge: dropGapEdge, expandAriaLabel: texts.expandButtonAriaLabel, onToggleExpand: () => onToggleExpand(item.id), onToggleCheck: (checked) => onToggleCheck(item.id, checked), onDragTargetChange: (edge) => onDragTargetChange(item.id, edge) })),
528
564
  canExpand && isExpanded && (React__default.createElement("div", { className: "actionableList__children" },
529
- React__default.createElement(ActionableListNodeWrapper, { level: childLevel }, (_f = item.children) === null || _f === void 0 ? void 0 : _f.map((child) => (React__default.createElement(RenderNode, { key: child.id, item: child, level: childLevel, parentId: item.id, withCheckbox: withCheckbox, isDraggable: isDraggable, expandedIds: expandedIds, texts: texts, dropGap: dropGap, isSearchActive: isSearchActive, onToggleExpand: onToggleExpand, onToggleCheck: onToggleCheck, onDragTargetChange: onDragTargetChange }))))))));
565
+ React__default.createElement(ActionableListNodeWrapper, { level: childLevel }, (_g = item.children) === null || _g === void 0 ? void 0 : _g.map((child) => (React__default.createElement(RenderNode, { key: child.id, item: child, level: childLevel, parentId: item.id, withCheckbox: withCheckbox, isDraggable: isDraggable, dragListId: dragListId, expandedIds: expandedIds, texts: texts, dropGap: dropGap, isSearchActive: isSearchActive, onToggleExpand: onToggleExpand, onToggleCheck: onToggleCheck, onDragTargetChange: onDragTargetChange }))))))));
530
566
  };
531
567
  /**
532
568
  * Actionable List component provides users with a highly interactive, multi-functional list of items, organized in a hierarchical structure that supports up to five levels of nested items.
533
569
  */
534
- const ActionableList = ({ className, items = [], withCheckbox = false, draggable: isDraggable = false, loading = false, defaultExpandAll = false, texts, onItemsChange, onItemCheck, onSelectAllChange, onSearch }) => {
570
+ const ActionableList = ({ className, items = [], withCheckbox = false, draggable: isDraggable = false, dragListId, loading = false, defaultExpandAll = false, texts, onItemsChange, onItemCheck, onSelectAllChange, managedSelection = false, onCrossListDrop, delegateCrossListDrop = false, dropGapOutletRef, onSearch }) => {
571
+ var _a;
535
572
  const mergedTexts = Object.assign(Object.assign({}, ACTIONABLE_LIST_DEFAULT_TEXTS), texts);
536
573
  const wasExpansionToggledRef = useRef(false);
574
+ const bulkSelectedLabelRef = useRef(null);
575
+ const filteredItemsLabelRef = useRef(null);
576
+ const totalItemsLabelRef = useRef(null);
577
+ const isBulkSelectedLabelTruncated = useEllipsisDetection(bulkSelectedLabelRef, [
578
+ mergedTexts.bulkSelectedItemsLabel
579
+ ]);
580
+ const isFilteredItemsLabelTruncated = useEllipsisDetection(filteredItemsLabelRef, [mergedTexts.filteredItemsLabel]);
581
+ const isTotalItemsLabelTruncated = useEllipsisDetection(totalItemsLabelRef, [mergedTexts.totalItemsLabel]);
537
582
  const [localItems, setLocalItems] = useState(() => mergeItemsFromProps(items, []));
583
+ const workingItems = managedSelection ? items : localItems;
538
584
  const [searchValue, setSearchValue] = useState("");
539
585
  const [expandedIds, setExpandedIds] = useState(() => defaultExpandAll ? getExpandedIdsFromItems(items) : new Set());
540
586
  const [dropGap, setDropGap] = useState(null);
587
+ const [isEmptyDropActive, setIsEmptyDropActive] = useState(false);
588
+ const emptyDropRef = useRef(null);
589
+ const listEndDropRef = useRef(null);
541
590
  const handleDropReorderRef = useRef(() => { });
591
+ const onCrossListDropRef = useRef(onCrossListDrop);
542
592
  const dropGapRef = useRef(dropGap);
543
593
  dropGapRef.current = dropGap;
594
+ onCrossListDropRef.current = onCrossListDrop;
544
595
  useEffect(() => {
596
+ if (!dropGapOutletRef)
597
+ return;
598
+ // eslint-disable-next-line no-param-reassign -- mirror drop gap for parent-coordinated cross-list DnD
599
+ dropGapOutletRef.current = dropGap;
600
+ }, [dropGap, dropGapOutletRef]);
601
+ useLayoutEffect(() => {
602
+ if (managedSelection)
603
+ return;
545
604
  setLocalItems((prev) => mergeItemsFromProps(items, prev));
546
- }, [items]);
605
+ }, [items, managedSelection]);
547
606
  useEffect(() => {
548
607
  if (wasExpansionToggledRef.current)
549
608
  return;
@@ -553,16 +612,41 @@ const ActionableList = ({ className, items = [], withCheckbox = false, draggable
553
612
  if (!isDraggable)
554
613
  return () => undefined;
555
614
  return monitorForElements({
556
- onDrop: ({ source }) => {
615
+ onDrop: ({ source, location }) => {
557
616
  const gap = dropGapRef.current;
558
- setDropGap(null);
559
617
  const { sourceId } = source.data;
560
- if (typeof sourceId === "string" && gap && sourceId !== gap.targetId) {
561
- handleDropReorderRef.current(sourceId, gap.targetId);
618
+ const sourceListId = source.data.dragListId;
619
+ const isCrossList = Boolean(dragListId && typeof sourceListId === "string" && sourceListId !== dragListId);
620
+ if (isCrossList && delegateCrossListDrop) {
621
+ requestAnimationFrame(() => setDropGap(null));
622
+ return;
562
623
  }
624
+ setDropGap(null);
625
+ if (typeof sourceId !== "string" || !gap || sourceId === gap.targetId)
626
+ return;
627
+ if (isCrossList) {
628
+ if (!dragListId ||
629
+ !location.current.dropTargets.some(({ data }) => data.targetListId === dragListId) ||
630
+ !onCrossListDropRef.current) {
631
+ return;
632
+ }
633
+ onCrossListDropRef.current({
634
+ sourceListId: sourceListId,
635
+ targetListId: dragListId,
636
+ sourceId,
637
+ targetId: gap.targetId,
638
+ edge: gap.edge
639
+ });
640
+ return;
641
+ }
642
+ if (dragListId && typeof sourceListId === "string" && sourceListId === dragListId) {
643
+ if (isDroppedOnOtherList(location, dragListId))
644
+ return;
645
+ }
646
+ handleDropReorderRef.current(sourceId, gap.targetId, gap.edge);
563
647
  }
564
648
  });
565
- }, [isDraggable]);
649
+ }, [isDraggable, dragListId, delegateCrossListDrop]);
566
650
  const { debouncedCallback, clearDebounce } = useDebouncedCallback((value) => {
567
651
  if (typeof value !== "string")
568
652
  return;
@@ -573,12 +657,17 @@ const ActionableList = ({ className, items = [], withCheckbox = false, draggable
573
657
  setSearchValue(value);
574
658
  debouncedCallback(value);
575
659
  };
576
- const filteredItems = useMemo(() => filterTree(localItems, searchValue), [localItems, searchValue]);
577
- const totalItemsCount = useMemo(() => countAllItems(localItems), [localItems]);
578
- const filteredItemsCount = useMemo(() => countAllItems(filteredItems), [filteredItems]);
579
- const selectedItemsCount = useMemo(() => countCheckedItems(localItems), [localItems]);
580
- const selectAllChecked = totalItemsCount > 0 && localItems.every((item) => isSubtreeFullySelected(item));
581
- const selectAllIndeterminate = !selectAllChecked && localItems.some((item) => isAnySelectionInSubtree(item));
660
+ const filteredItems = useMemo(() => filterTree(workingItems, searchValue), [workingItems, searchValue]);
661
+ const isSearchActive = searchValue.trim().length > 0;
662
+ const filteredLeafIds = useMemo(() => new Set(collectLeafIds(filteredItems)), [filteredItems]);
663
+ const totalItemsCount = useMemo(() => countLeafItems(workingItems), [workingItems]);
664
+ const filteredItemsCount = useMemo(() => countLeafItems(filteredItems), [filteredItems]);
665
+ const selectedItemsCount = useMemo(() => countCheckedItems(workingItems), [workingItems]);
666
+ const selectedFilteredLeafCount = useMemo(() => countCheckedLeavesInScope(workingItems, filteredLeafIds), [workingItems, filteredLeafIds]);
667
+ const selectAllScopeLeafCount = isSearchActive ? filteredItemsCount : totalItemsCount;
668
+ const selectedScopeLeafCount = isSearchActive ? selectedFilteredLeafCount : selectedItemsCount;
669
+ const selectAllChecked = selectAllScopeLeafCount > 0 && selectedScopeLeafCount === selectAllScopeLeafCount;
670
+ const selectAllIndeterminate = selectedScopeLeafCount > 0 && selectedScopeLeafCount < selectAllScopeLeafCount;
582
671
  const handleToggleExpand = (id) => {
583
672
  wasExpansionToggledRef.current = true;
584
673
  setExpandedIds((prev) => {
@@ -595,24 +684,30 @@ const ActionableList = ({ className, items = [], withCheckbox = false, draggable
595
684
  onItemsChange === null || onItemsChange === void 0 ? void 0 : onItemsChange(nextItems);
596
685
  };
597
686
  const handleToggleCheck = (id, checked) => {
598
- const nextItems = updateItemById(localItems, id, (item) => applyCheckedToBranch(item, checked));
599
- syncItems(nextItems);
687
+ const nextItems = updateItemById(workingItems, id, (item) => applyCheckedToBranch(item, checked));
688
+ if (!managedSelection) {
689
+ syncItems(nextItems);
690
+ }
600
691
  const toggled = findItemById(nextItems, id);
601
692
  if (toggled !== undefined) {
602
693
  onItemCheck === null || onItemCheck === void 0 ? void 0 : onItemCheck(toggled, checked, nextItems);
603
694
  }
604
695
  };
605
696
  const handleSelectAll = (checked) => {
606
- if (totalItemsCount === 0)
697
+ if (selectAllScopeLeafCount === 0)
607
698
  return;
608
- const nextItems = localItems.map((item) => applyCheckedToBranch(item, checked));
609
- syncItems(nextItems);
610
- onSelectAllChange === null || onSelectAllChange === void 0 ? void 0 : onSelectAllChange(checked, nextItems);
699
+ const scopeLeafIds = collectLeafIds(isSearchActive ? filteredItems : workingItems);
700
+ const targetLeafIds = new Set(scopeLeafIds);
701
+ const nextItems = applyCheckedToLeavesById(workingItems, targetLeafIds, checked);
702
+ onSelectAllChange === null || onSelectAllChange === void 0 ? void 0 : onSelectAllChange(checked, nextItems, scopeLeafIds);
703
+ if (!managedSelection) {
704
+ syncItems(nextItems);
705
+ }
611
706
  };
612
- const handleDropReorder = (sourceId, targetId) => {
707
+ const handleDropReorder = (sourceId, targetId, edge) => {
613
708
  if (sourceId === targetId)
614
709
  return;
615
- syncItems(reorderInTree(localItems, sourceId, targetId));
710
+ syncItems(reorderInTree(workingItems, sourceId, targetId, edge));
616
711
  };
617
712
  handleDropReorderRef.current = handleDropReorder;
618
713
  const handleDragTargetChange = useCallback((targetId, edge) => {
@@ -622,31 +717,94 @@ const ActionableList = ({ className, items = [], withCheckbox = false, draggable
622
717
  return { targetId, edge };
623
718
  });
624
719
  }, []);
625
- const hasData = totalItemsCount > 0;
626
- const hasSearchResults = filteredItemsCount > 0;
720
+ const hasData = useMemo(() => countAllItems(workingItems) > 0, [workingItems]);
721
+ const hasSearchResults = useMemo(() => countAllItems(filteredItems) > 0, [filteredItems]);
722
+ const showEmptyDropZone = isDraggable && Boolean(dragListId) && Boolean(onCrossListDrop || delegateCrossListDrop) && !loading && !hasData;
723
+ useEffect(() => {
724
+ const element = emptyDropRef.current;
725
+ if (!element || !showEmptyDropZone)
726
+ return () => undefined;
727
+ return dropTargetForElements({
728
+ element,
729
+ getData: () => (Object.assign({ isEmptyListTarget: true }, (dragListId ? { targetListId: dragListId } : {}))),
730
+ canDrop: ({ source }) => {
731
+ const sourceListId = source.data.dragListId;
732
+ return typeof sourceListId === "string" && sourceListId !== dragListId;
733
+ },
734
+ onDragEnter: () => setIsEmptyDropActive(true),
735
+ onDragLeave: () => setIsEmptyDropActive(false),
736
+ onDrop: ({ source }) => {
737
+ setIsEmptyDropActive(false);
738
+ if (delegateCrossListDrop)
739
+ return;
740
+ const { sourceId } = source.data;
741
+ const sourceListId = source.data.dragListId;
742
+ if (typeof sourceId !== "string" ||
743
+ typeof sourceListId !== "string" ||
744
+ !dragListId ||
745
+ !onCrossListDropRef.current) {
746
+ return;
747
+ }
748
+ onCrossListDropRef.current({
749
+ sourceListId,
750
+ targetListId: dragListId,
751
+ sourceId,
752
+ isEmptyTarget: true
753
+ });
754
+ }
755
+ });
756
+ }, [showEmptyDropZone, dragListId, delegateCrossListDrop]);
757
+ const lastRootItemId = (_a = filteredItems[filteredItems.length - 1]) === null || _a === void 0 ? void 0 : _a.id;
758
+ useEffect(() => {
759
+ const element = listEndDropRef.current;
760
+ if (!element || !isDraggable || !hasSearchResults || !lastRootItemId)
761
+ return () => undefined;
762
+ const targetId = lastRootItemId;
763
+ return dropTargetForElements({
764
+ element,
765
+ getData: () => (Object.assign({ targetId, edge: "bottom" }, (dragListId ? { targetListId: dragListId } : {}))),
766
+ canDrop: ({ source }) => {
767
+ const sourceListId = source.data.dragListId;
768
+ const sourceParentId = source.data.parentId;
769
+ if (dragListId && typeof sourceListId === "string" && sourceListId !== dragListId) {
770
+ return sourceParentId === "root";
771
+ }
772
+ return sourceParentId === "root";
773
+ },
774
+ onDragEnter: () => handleDragTargetChange(targetId, "bottom"),
775
+ onDrag: () => handleDragTargetChange(targetId, "bottom")
776
+ });
777
+ }, [isDraggable, hasSearchResults, lastRootItemId, dragListId, handleDragTargetChange]);
627
778
  return (React__default.createElement("div", { className: classNames("actionableList", className, { actionableList_hasDropGap: dropGap !== null }) },
628
779
  React__default.createElement("div", { className: "actionableList__headerWrapper" },
629
780
  React__default.createElement(TextField, { label: mergedTexts.searchLabel, placeholder: mergedTexts.searchPlaceholder, value: searchValue, onChange: (event) => handleSearchChange(event.target.value), IconBefore: SvgMagnifier, disabled: loading, className: "actionableList__search", clearable: true, onClear: () => handleSearchChange("") }),
630
781
  !loading && (React__default.createElement("div", { className: "actionableList__statsRow" },
631
782
  withCheckbox && (React__default.createElement("div", { className: "actionableList__bulkSelection" },
632
- React__default.createElement(Checkbox, { checked: selectAllChecked, indeterminate: selectAllIndeterminate, disabled: totalItemsCount === 0, onChange: (event) => handleSelectAll(event.target.checked), className: "actionableList__selectAll" }),
633
- React__default.createElement(Text, { as: "span", variant: "bodyMediumMedium", className: "actionableList__bulkSelectedLabel" }, mergedTexts.bulkSelectedItemsLabel),
783
+ React__default.createElement(Checkbox, { checked: selectAllChecked, indeterminate: selectAllIndeterminate, disabled: selectAllScopeLeafCount === 0, onChange: (event) => handleSelectAll(event.target.checked), className: "actionableList__selectAll" }),
784
+ React__default.createElement("div", { className: "actionableList__bulkSelectedLabelWrapper" },
785
+ React__default.createElement(Tooltip, { text: mergedTexts.bulkSelectedItemsLabel, isVisible: isBulkSelectedLabelTruncated },
786
+ React__default.createElement(Text, { ref: bulkSelectedLabelRef, as: "span", variant: "bodyMediumMedium", className: "actionableList__bulkSelectedLabel ellipsis-text" }, mergedTexts.bulkSelectedItemsLabel))),
634
787
  React__default.createElement(Text, { as: "span", variant: "bodyMediumMedium", className: "actionableList__bulkSelectedCount" }, selectedItemsCount))),
635
788
  React__default.createElement("div", { className: "actionableList__stats" },
636
- React__default.createElement(Text, { as: "span", variant: "bodyMediumMedium", className: "actionableList__statsLabel" }, mergedTexts.filteredItemsLabel),
789
+ React__default.createElement(Tooltip, { text: mergedTexts.filteredItemsLabel, isVisible: isFilteredItemsLabelTruncated },
790
+ React__default.createElement(Text, { ref: filteredItemsLabelRef, as: "span", variant: "bodyMediumMedium", className: "actionableList__statsLabel ellipsis-text" }, mergedTexts.filteredItemsLabel)),
637
791
  React__default.createElement(Text, { as: "span", variant: "bodyMediumMedium", className: "actionableList__statsCount" }, filteredItemsCount),
638
792
  React__default.createElement(Divider, { direction: "vertical", className: "actionableList__statsDivider" }),
639
- React__default.createElement(Text, { as: "span", variant: "bodyMediumMedium", className: "actionableList__statsLabel" }, mergedTexts.totalItemsLabel),
793
+ React__default.createElement(Tooltip, { text: mergedTexts.totalItemsLabel, isVisible: isTotalItemsLabelTruncated },
794
+ React__default.createElement(Text, { ref: totalItemsLabelRef, as: "span", variant: "bodyMediumMedium", className: "actionableList__statsLabel ellipsis-text" }, mergedTexts.totalItemsLabel)),
640
795
  React__default.createElement(Text, { as: "span", variant: "bodyMediumMedium", className: "actionableList__statsCount" }, totalItemsCount))))),
641
796
  loading && (React__default.createElement("div", { className: "actionableList__state actionableList__state_loading" },
642
797
  React__default.createElement(Loader, { text: mergedTexts.loadingTitle, size: "xLarge", textPosition: "below" }))),
643
798
  React__default.createElement(Scrollbar, null, !loading && (React__default.createElement(React__default.Fragment, null,
644
- !hasData && (React__default.createElement("div", { className: "actionableList__state" },
799
+ !hasData && (React__default.createElement("div", { ref: showEmptyDropZone ? emptyDropRef : undefined, className: classNames("actionableList__state", {
800
+ actionableList__state_dropTarget: isEmptyDropActive
801
+ }) },
645
802
  React__default.createElement(Empty, { size: "small", appearance: "noData", title: mergedTexts.noDataTitle, description: mergedTexts.noDataDescription, className: "actionableList__empty" }))),
646
803
  hasData && !hasSearchResults && (React__default.createElement("div", { className: "actionableList__state" },
647
804
  React__default.createElement(Empty, { size: "small", appearance: "noResult", title: mergedTexts.noResultsTitle, description: mergedTexts.noResultsDescription, className: "actionableList__empty" }))),
648
805
  hasData && hasSearchResults && (React__default.createElement("div", { className: "actionableList__list" },
649
- React__default.createElement(ActionableListNodeWrapper, { level: 1 }, filteredItems.map((item) => (React__default.createElement(RenderNode, { key: item.id, item: item, level: 1, parentId: "root", withCheckbox: withCheckbox, isDraggable: isDraggable, expandedIds: expandedIds, texts: mergedTexts, dropGap: dropGap, isSearchActive: searchValue.trim().length > 0, onToggleExpand: handleToggleExpand, onToggleCheck: handleToggleCheck, onDragTargetChange: handleDragTargetChange })))))))))));
806
+ React__default.createElement(ActionableListNodeWrapper, { level: 1 }, filteredItems.map((item) => (React__default.createElement(RenderNode, { key: item.id, item: item, level: 1, parentId: "root", withCheckbox: withCheckbox, isDraggable: isDraggable, dragListId: dragListId, expandedIds: expandedIds, texts: mergedTexts, dropGap: dropGap, isSearchActive: searchValue.trim().length > 0, onToggleExpand: handleToggleExpand, onToggleCheck: handleToggleCheck, onDragTargetChange: handleDragTargetChange })))),
807
+ isDraggable && (React__default.createElement("div", { ref: listEndDropRef, className: "actionableList__listEndDrop", "aria-hidden": true })))))))));
650
808
  };
651
809
 
652
810
  export { ActionableList as default };
@@ -2105,7 +2105,7 @@ function draggable(args) {
2105
2105
 
2106
2106
  /** Arguments given to all monitor feedback functions (eg `canMonitor()`) for a `monitorForElements` */
2107
2107
 
2108
- var css_248z$2 = ".actionableList{display:flex;flex-direction:column;height:100%;width:100%}.actionableList__headerWrapper{display:flex;flex-direction:column;gap:var(--guit-ref-spacing-medium)}.actionableList__search{width:100%}.actionableList__statsRow{align-items:center;display:flex;flex-wrap:wrap;gap:var(--guit-ref-spacing-medium);justify-content:space-between;width:100%}.actionableList__bulkSelection{align-items:center;display:flex;gap:var(--guit-ref-spacing-2xsmall);min-width:0}.actionableList__checkbox{align-items:center;display:flex;flex-shrink:0;height:var(--guit-sem-dimension-height-small);justify-content:center;width:var(--guit-sem-dimension-width-small)}.actionableList__bulkSelectedLabel{color:var(--guit-sem-color-foreground-neutral-1)}.actionableList__bulkSelectedCount{color:var(--guit-sem-color-foreground-neutral-2)}.actionableList__stats{-webkit-margin-start:auto;align-items:center;display:flex;flex-shrink:0;gap:var(--guit-ref-spacing-2xsmall);justify-content:flex-end;margin-inline-start:auto}.actionableList__statsLabel{color:var(--guit-sem-color-foreground-neutral-1)}.actionableList__statsCount{color:var(--guit-sem-color-foreground-neutral-2)}.actionableList__statsDivider{min-height:1.6rem}.actionableList__list{width:100%}.actionableList__children{overflow:hidden;position:relative;width:100%}.actionableList__state{align-items:center;display:flex;justify-content:center;min-height:22.6rem;width:100%}.actionableList__empty{width:100%}";
2108
+ var css_248z$2 = ".actionableList{display:flex;flex-direction:column;height:100%;width:100%}.actionableList__headerWrapper{display:flex;flex-direction:column;gap:var(--guit-ref-spacing-medium)}.actionableList__search{width:100%}.actionableList__statsRow{align-items:center;display:flex;flex-wrap:nowrap;gap:var(--guit-ref-spacing-medium);justify-content:space-between;width:100%}.actionableList__bulkSelection{align-items:center;display:flex;flex-shrink:1;gap:var(--guit-ref-spacing-2xsmall);min-width:0}.actionableList__selectAll{flex-shrink:0}.actionableList__bulkSelectedLabelWrapper{flex:1 1 auto;min-width:0;overflow:hidden}.actionableList__checkbox{align-items:center;display:flex;flex-shrink:0;height:var(--guit-sem-dimension-height-small);justify-content:center;width:var(--guit-sem-dimension-width-small)}.actionableList__bulkSelectedLabel{color:var(--guit-sem-color-foreground-neutral-1);display:block;min-width:0}.actionableList__bulkSelectedCount{color:var(--guit-sem-color-foreground-neutral-2);flex-shrink:0}.actionableList__stats{-webkit-margin-start:auto;align-items:center;display:flex;flex-shrink:1;gap:var(--guit-ref-spacing-2xsmall);justify-content:flex-end;margin-inline-start:auto;min-width:0}.actionableList__statsLabel{color:var(--guit-sem-color-foreground-neutral-1);display:block;min-width:0}.actionableList__statsCount{color:var(--guit-sem-color-foreground-neutral-2);flex-shrink:0}.actionableList__statsDivider{flex-shrink:0;min-height:1.6rem}.actionableList__list{display:flex;flex-direction:column;min-height:100%;width:100%}.actionableList__listEndDrop{flex:1 1 auto;height:100%;width:100%}.actionableList__children{overflow:hidden;position:relative;width:100%}.actionableList__state{align-items:center;display:flex;justify-content:center;min-height:22.6rem;width:100%}.actionableList__state_dropTarget{background-color:var(--guit-sem-color-background-brand-1-subtle);border-radius:var(--guit-ref-radius-xsmall);outline:var(--guit-ref-border-width-thin) var(--guit-ref-border-style-solid) var(--guit-sem-color-border-brand-1);outline-offset:calc(var(--guit-ref-border-width-thin)*-1)}.actionableList__empty{width:100%}";
2109
2109
  styleInject(css_248z$2);
2110
2110
 
2111
2111
  // In order to disable the native drag preview you can
package/Banner.js CHANGED
@@ -5,13 +5,13 @@ import { S as SvgInfo } from './Info-0f0741e0.js';
5
5
  import { S as SvgX } from './X-20da3b4a.js';
6
6
  import Button from './Button.js';
7
7
  import Text from './Text.js';
8
- import { B as ButtonGroup } from './index-a46fb8ec.js';
8
+ import { B as ButtonGroup } from './index-0446a4e6.js';
9
9
  import { a as GeneUIDesignSystemContext } from './index-9a69bcc6.js';
10
10
  import './Banner-09cf6dea.js';
11
11
  import './Loader.js';
12
12
  import './style-inject.es-746bb8ed.js';
13
- import './ButtonGroup-f8e59eb9.js';
14
- import './tslib.es6-f211516f.js';
13
+ import './ButtonGroup-ba146dcb.js';
14
+ import './tslib.es6-4a42b189.js';
15
15
  import './index-7d785c81.js';
16
16
  import 'react-dom';
17
17
  import './index-5becfc74.js';
package/Breadcrumb.js CHANGED
@@ -1,10 +1,10 @@
1
- export { B as default } from './index-3dc2323a.js';
1
+ export { B as default } from './index-7aa2d261.js';
2
2
  import 'react';
3
3
  import './index-ce02421b.js';
4
4
  import './ActivityRecent-b88e2ba8.js';
5
- import './index-a46fb8ec.js';
6
- import './ButtonGroup-f8e59eb9.js';
7
- import './tslib.es6-f211516f.js';
5
+ import './index-0446a4e6.js';
6
+ import './ButtonGroup-ba146dcb.js';
7
+ import './tslib.es6-4a42b189.js';
8
8
  import './Loader.js';
9
9
  import './style-inject.es-746bb8ed.js';
10
10
  import './index-7d785c81.js';
@@ -1,4 +1,4 @@
1
- import { _ as __rest } from './tslib.es6-f211516f.js';
1
+ import { a as __rest } from './tslib.es6-4a42b189.js';
2
2
  import React__default, { forwardRef, useState, useContext, useRef, useImperativeHandle, useEffect, useLayoutEffect, createContext, useCallback, useMemo, Children, cloneElement } from 'react';
3
3
  import { c as classNames } from './index-ce02421b.js';
4
4
  import Loader from './Loader.js';
package/ButtonGroup.js CHANGED
@@ -1,6 +1,6 @@
1
- export { B as default } from './index-a46fb8ec.js';
2
- import './ButtonGroup-f8e59eb9.js';
3
- import './tslib.es6-f211516f.js';
1
+ export { B as default } from './index-0446a4e6.js';
2
+ import './ButtonGroup-ba146dcb.js';
3
+ import './tslib.es6-4a42b189.js';
4
4
  import 'react';
5
5
  import './index-ce02421b.js';
6
6
  import './Loader.js';
package/ColorPicker.js CHANGED
@@ -2,8 +2,8 @@ import React__default, { useState, useEffect, useRef, useCallback, useContext, u
2
2
  import { c as classNames } from './index-ce02421b.js';
3
3
  import { _ as _objectWithoutProperties, a as _extends } from './ActivityRecent-b88e2ba8.js';
4
4
  import Label from './Label.js';
5
- import { P as Popover, a as PopoverBody } from './ButtonGroup-f8e59eb9.js';
6
- import './tslib.es6-f211516f.js';
5
+ import { P as Popover, a as PopoverBody } from './ButtonGroup-ba146dcb.js';
6
+ import './tslib.es6-4a42b189.js';
7
7
  import './Button.js';
8
8
  import './index-7d785c81.js';
9
9
  import './Loader.js';
@@ -31,7 +31,7 @@ import './index-5becfc74.js';
31
31
  import 'prop-types';
32
32
  import './CaretDownFilled-924e7189.js';
33
33
  import './Magnifier-8df67f2d.js';
34
- import './index-a46fb8ec.js';
34
+ import './index-0446a4e6.js';
35
35
  import './index-15303b91.js';
36
36
  import './CheckMark-34798545.js';
37
37
  import './ChevronRight-af87e2a4.js';