@innovaccer/design-system 2.36.2 → 2.37.0

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/dist/index.js CHANGED
@@ -1,8 +1,8 @@
1
1
 
2
2
  /**
3
- * Generated on: 1718291430401
3
+ * Generated on: 1719911531711
4
4
  * Package: @innovaccer/design-system
5
- * Version: v2.36.2
5
+ * Version: v2.37.0
6
6
  * License: MIT
7
7
  * Docs: https://mds.innovaccer.com
8
8
  */
@@ -548,16 +548,27 @@
548
548
  className = props.className,
549
549
  appearance = props.appearance,
550
550
  shape = props.shape,
551
+ disabled = props.disabled,
552
+ tooltipSuffix = props.tooltipSuffix,
553
+ tabIndex = props.tabIndex,
551
554
  _e = props.role,
552
555
  role = _e === void 0 ? 'presentation' : _e;
553
556
  var baseProps = extractBaseProps(props);
554
557
  var initials = children && typeof children === 'string' ? children.trim().slice(0, initialsLength) : "" + (firstName ? firstName.trim()[0] : '') + (lastName ? lastName.trim()[0] : '');
555
- var tooltip = children && typeof children === 'string' ? children : (firstName || '') + " " + (lastName || '') || '';
558
+
559
+ var getTooltipName = function getTooltipName() {
560
+ if (children && typeof children === 'string') {
561
+ return children + " " + (tooltipSuffix || '');
562
+ }
563
+
564
+ return (firstName || '') + " " + (lastName || '') + " " + (tooltipSuffix || '') || '';
565
+ };
566
+
556
567
  var AvatarAppearance = appearance || colors[(initials.charCodeAt(0) + (initials.charCodeAt(1) || 0)) % 8] || DefaultAppearance;
557
568
  var AvatarClassNames = classNames__default["default"]((_a = {
558
569
  Avatar: true
559
- }, _a['Avatar--square'] = shape === 'square', _a["Avatar--" + size] = shape !== 'square', _a["Avatar--" + AvatarAppearance] = AvatarAppearance, _a['Avatar--disabled'] = !initials || !withTooltip, _a), className);
560
- var AvatarWrapperClassNames = classNames__default["default"]((_b = {}, _b['Avatar--wrapper'] = shape === 'square', _b["Avatar--" + size] = shape === 'square', _b));
570
+ }, _a['Avatar--square'] = shape === 'square', _a["Avatar--" + size] = shape !== 'square', _a["Avatar--" + AvatarAppearance] = AvatarAppearance, _a['Avatar--noInitials'] = !initials || !withTooltip, _a['Avatar--disabled'] = disabled, _a['Avatar--default'] = !disabled, _a), className);
571
+ var AvatarWrapperClassNames = classNames__default["default"]((_b = {}, _b['Avatar-wrapper--square'] = shape === 'square', _b["Avatar--" + size] = shape === 'square', _b));
561
572
  var TextClassNames = classNames__default["default"]((_c = {}, _c["Avatar-content--" + size] = size, _c["Avatar-content--" + AvatarAppearance] = AvatarAppearance, _c));
562
573
  var IconClassNames = classNames__default["default"]((_d = {}, _d["Avatar-content--" + AvatarAppearance] = AvatarAppearance, _d));
563
574
  var sharedProp = {
@@ -578,7 +589,8 @@
578
589
  }, /*#__PURE__*/React__namespace.createElement("span", __assign$1({
579
590
  "data-test": "DesignSystem-Avatar"
580
591
  }, baseProps, {
581
- className: AvatarClassNames
592
+ className: AvatarClassNames,
593
+ tabIndex: tabIndex || disabled ? -1 : 0
582
594
  }), children)));
583
595
  }
584
596
 
@@ -589,7 +601,8 @@
589
601
  }, /*#__PURE__*/React__namespace.createElement("span", __assign$1({
590
602
  "data-test": "DesignSystem-Avatar"
591
603
  }, baseProps, {
592
- className: AvatarClassNames
604
+ className: AvatarClassNames,
605
+ tabIndex: tabIndex || disabled ? -1 : 0
593
606
  }), initials && /*#__PURE__*/React__namespace.createElement(Text, {
594
607
  weight: "medium",
595
608
  appearance: 'white',
@@ -606,7 +619,7 @@
606
619
  var renderTooltip = function renderTooltip() {
607
620
  if (withTooltip && initials) {
608
621
  return /*#__PURE__*/React__namespace.createElement(Tooltip, {
609
- tooltip: tooltip,
622
+ tooltip: getTooltipName(),
610
623
  position: tooltipPosition,
611
624
  triggerClass: 'flex-grow-0'
612
625
  }, renderAvatar());
@@ -637,11 +650,13 @@
637
650
  var ContentClass = classNames__default["default"]((_a = {}, _a["Avatar-content--secondary"] = true, _a["Avatar-content--tiny"] = size === 'tiny', _a));
638
651
  var AvatarVariantsClass = classNames__default["default"]((_b = {
639
652
  Avatar: true
640
- }, _b["Avatar--regular"] = size === 'regular', _b["Avatar--tiny"] = size === 'tiny', _b["Avatar--secondary"] = true, _b['Avatar--disabled'] = true, _b['cursor-pointer'] = on === 'click', _b));
653
+ }, _b["Avatar--regular"] = size === 'regular', _b["Avatar--tiny"] = size === 'tiny', _b["Avatar--secondary"] = true, _b['cursor-default'] = true, _b['cursor-pointer'] = on === 'click', _b));
641
654
  return /*#__PURE__*/React__namespace.createElement("div", {
642
655
  "data-test": "DesignSystem-AvatarGroup--TriggerAvatar",
643
656
  className: "AvatarCount-wrapper",
644
- style: avatarStyle
657
+ style: avatarStyle,
658
+ tabIndex: 0,
659
+ role: "button"
645
660
  }, /*#__PURE__*/React__namespace.createElement("span", {
646
661
  "data-test": "DesignSystem-AvatarGroup--TriggerAvatarVariants",
647
662
  className: AvatarVariantsClass
@@ -664,7 +679,9 @@
664
679
  firstName = item.firstName,
665
680
  lastName = item.lastName,
666
681
  icon = item.icon,
667
- image = item.image;
682
+ image = item.image,
683
+ disabled = item.disabled,
684
+ tooltipSuffix = item.tooltipSuffix;
668
685
  return /*#__PURE__*/React__namespace.createElement("div", {
669
686
  "data-test": "DesignSystem-AvatarGroup--Avatar",
670
687
  className: GroupClass,
@@ -676,7 +693,9 @@
676
693
  firstName: firstName,
677
694
  lastName: lastName,
678
695
  withTooltip: true,
679
- tooltipPosition: tooltipPosition
696
+ disabled: disabled,
697
+ tooltipPosition: tooltipPosition,
698
+ tooltipSuffix: tooltipSuffix
680
699
  }, image || icon));
681
700
  });
682
701
  return avatars;
@@ -705,8 +724,10 @@
705
724
  var _b = item.firstName,
706
725
  firstName = _b === void 0 ? '' : _b,
707
726
  _c = item.lastName,
708
- lastName = _c === void 0 ? '' : _c;
709
- var name = firstName + " " + lastName;
727
+ lastName = _c === void 0 ? '' : _c,
728
+ _d = item.tooltipSuffix,
729
+ tooltipSuffix = _d === void 0 ? '' : _d;
730
+ var name = firstName + " " + lastName + " " + tooltipSuffix;
710
731
  var AvatarTextClass = classNames__default["default"]((_a = {}, _a["mb-4"] = ind < hiddenAvatarList.length - 1, _a));
711
732
  return /*#__PURE__*/React__namespace.createElement(Text, {
712
733
  key: ind,
@@ -2694,10 +2715,10 @@
2694
2715
  var iconAppearance = function iconAppearance(align) {
2695
2716
  var _a;
2696
2717
 
2697
- return classNames__default["default"]((_a = {}, _a['disabled'] = disabled && !selected, _a['primary_dark'] = !disabled && selected, _a['primary_lighter'] = disabled && selected, _a['subtle'] = !disabled && !selected && align === 'right', _a['inverse'] = !disabled && !selected && align === 'left', _a));
2718
+ return classNames__default["default"]((_a = {}, _a['primary_dark'] = selected, _a['subtle'] = !selected && align === 'right', _a['inverse'] = !selected && align === 'left', _a));
2698
2719
  };
2699
2720
 
2700
- var textColor = classNames__default["default"]((_a = {}, _a['primary-lighter'] = disabled && selected, _a['inverse-lightest'] = disabled && !selected, _a['primary-dark'] = selected, _a['inverse'] = !disabled && !selected, _a));
2721
+ var textColor = classNames__default["default"]((_a = {}, _a['primary-dark'] = selected, _a['inverse'] = !disabled && !selected, _a));
2701
2722
 
2702
2723
  var renderLabel = function renderLabel() {
2703
2724
  if (typeof label === 'string') {
@@ -8660,7 +8681,9 @@
8660
8681
  var options = on === 'hover' ? {
8661
8682
  ref: ref,
8662
8683
  onMouseEnter: this.handleMouseEnter,
8663
- onMouseLeave: this.handleMouseLeave
8684
+ onMouseLeave: this.handleMouseLeave,
8685
+ onFocus: this.handleMouseEnter,
8686
+ onBlur: this.handleMouseLeave
8664
8687
  } : {
8665
8688
  ref: ref,
8666
8689
  onClick: function onClick(ev) {
@@ -17268,10 +17291,16 @@
17268
17291
  onClick = props.onClick,
17269
17292
  rest = __rest(props, ["children", "disabled", "className", "zIndex", "onClick"]);
17270
17293
 
17271
- var classes = classNames__default["default"]((_a = {}, _a['ActionCard'] = true, _a['ActionCard--disabled'] = disabled, _a), className);
17294
+ var classes = classNames__default["default"]((_a = {}, _a['ActionCard'] = true, _a['ActionCard--default'] = !disabled, _a['ActionCard--disabled'] = disabled, _a), className);
17272
17295
 
17273
17296
  var onKeyDownHandler = function onKeyDownHandler(event) {
17274
- if (event.key === 'Enter' && onClick) {
17297
+ if (event.key === 'Enter' && onClick && !disabled) {
17298
+ onClick(event);
17299
+ }
17300
+ };
17301
+
17302
+ var onClickHandler = function onClickHandler(event) {
17303
+ if (!disabled && onClick) {
17275
17304
  onClick(event);
17276
17305
  }
17277
17306
  };
@@ -17281,7 +17310,7 @@
17281
17310
  role: "link",
17282
17311
  "data-test": "DesignSystem-ActionCard",
17283
17312
  className: classes,
17284
- onClick: onClick,
17313
+ onClick: onClickHandler,
17285
17314
  onKeyDown: onKeyDownHandler
17286
17315
  }, rest), disabled && /*#__PURE__*/React__namespace.createElement("div", {
17287
17316
  style: {
@@ -17378,14 +17407,16 @@
17378
17407
  className = props.className,
17379
17408
  rest = __rest(props, ["children", "onClick", "disabled", "id", "cardValue", "overlayZIndex", "selected", "className"]);
17380
17409
 
17381
- var classes = classNames__default["default"]((_a = {}, _a['Selection-card'] = true, _a['Selection-card--selected'] = selected, _a['Selection-card--disabled'] = disabled && !selected, _a['Selection-card--selected-disabled'] = disabled && selected, _a), className);
17410
+ var classes = classNames__default["default"]((_a = {}, _a['Selection-card'] = true, _a['Selection-card--default'] = !disabled, _a['Selection-card--selected'] = selected && !disabled, _a['Selection-card--disabled'] = disabled, _a['Selection-card--default-disabled'] = disabled && !selected, _a['Selection-card--selected-disabled'] = disabled && selected, _a), className);
17382
17411
 
17383
17412
  var onClickHandler = function onClickHandler(event) {
17384
- onClick && onClick(event, id, cardValue);
17413
+ if (!disabled && onClick) {
17414
+ onClick(event, id, cardValue);
17415
+ }
17385
17416
  };
17386
17417
 
17387
17418
  var onKeyDownHandler = function onKeyDownHandler(event) {
17388
- if (event.key === 'Enter') {
17419
+ if (event.key === 'Enter' && !disabled) {
17389
17420
  onClickHandler(event);
17390
17421
  }
17391
17422
  };
@@ -17393,7 +17424,7 @@
17393
17424
  return /*#__PURE__*/React__namespace.createElement("div", __assign$1({
17394
17425
  role: "checkbox",
17395
17426
  "aria-checked": selected,
17396
- tabIndex: 0,
17427
+ tabIndex: disabled ? -1 : 0,
17397
17428
  onKeyDown: onKeyDownHandler,
17398
17429
  onClick: function onClick(event) {
17399
17430
  return onClickHandler(event);
@@ -18499,15 +18530,20 @@
18499
18530
  TextField.displayName = 'TextField';
18500
18531
 
18501
18532
  var SelectionAvatar = function SelectionAvatar(props) {
18533
+ var _a;
18534
+
18502
18535
  var icon = props.icon,
18503
18536
  image = props.image,
18504
- rest = __rest(props, ["icon", "image"]);
18537
+ disabled = props.disabled,
18538
+ rest = __rest(props, ["icon", "image", "disabled"]);
18505
18539
 
18540
+ var avatarClassName = classNames__default["default"]((_a = {}, _a['cursor-pointer'] = !disabled, _a));
18506
18541
  return /*#__PURE__*/React__namespace.createElement(Avatar, __assign$1({
18507
18542
  role: "checkbox"
18508
18543
  }, rest, {
18544
+ disabled: disabled,
18509
18545
  withTooltip: true,
18510
- className: "cursor-pointer"
18546
+ className: avatarClassName
18511
18547
  }), image || icon);
18512
18548
  };
18513
18549
 
@@ -18525,6 +18561,10 @@
18525
18561
  onSelect = contextProp.onSelect;
18526
18562
 
18527
18563
  var onClickHandler = function onClickHandler(item) {
18564
+ if (item.disabled) {
18565
+ return;
18566
+ }
18567
+
18528
18568
  var list = selectedItems;
18529
18569
 
18530
18570
  if (selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.includes(item)) {
@@ -18540,6 +18580,10 @@
18540
18580
  };
18541
18581
 
18542
18582
  var handleKeyDown = function handleKeyDown(event, item) {
18583
+ if (item.disabled) {
18584
+ return;
18585
+ }
18586
+
18543
18587
  switch (event.key) {
18544
18588
  case 'Enter':
18545
18589
  onClickHandler(item);
@@ -18554,8 +18598,10 @@
18554
18598
  firstName = avatarItem.firstName,
18555
18599
  lastName = avatarItem.lastName,
18556
18600
  icon = avatarItem.icon,
18557
- image = avatarItem.image;
18558
- var GroupClass = classNames__default["default"]((_a = {}, _a["SelectionAvatarGroup-item"] = true, _a["SelectionAvatarGroup-item--selected"] = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.includes(avatarItem), _a));
18601
+ image = avatarItem.image,
18602
+ disabled = avatarItem.disabled,
18603
+ tooltipSuffix = avatarItem.tooltipSuffix;
18604
+ var GroupClass = classNames__default["default"]((_a = {}, _a["SelectionAvatarGroup-item"] = true, _a["SelectionAvatarGroup-item--active"] = !disabled, _a["SelectionAvatarGroup-item--selected"] = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.includes(avatarItem), _a));
18559
18605
 
18560
18606
  if (avatarRenderer) {
18561
18607
  return avatarRenderer(avatarItem);
@@ -18565,7 +18611,7 @@
18565
18611
  key: index,
18566
18612
  className: "SelectionAvatarGroup-wrapper"
18567
18613
  }, /*#__PURE__*/React__namespace.createElement("div", {
18568
- tabIndex: 0,
18614
+ tabIndex: -1,
18569
18615
  role: "checkbox",
18570
18616
  style: avatarStyle,
18571
18617
  className: GroupClass,
@@ -18585,7 +18631,9 @@
18585
18631
  withTooltip: true,
18586
18632
  tooltipPosition: tooltipPosition,
18587
18633
  icon: icon,
18588
- image: image
18634
+ image: image,
18635
+ disabled: disabled,
18636
+ tooltipSuffix: tooltipSuffix
18589
18637
  })));
18590
18638
  }));
18591
18639
  };
@@ -18654,7 +18702,7 @@
18654
18702
  selectedItemCount = _b[0],
18655
18703
  setSelectedItemCount = _b[1];
18656
18704
 
18657
- var wrapperClassName = classNames__default["default"]((_a = {}, _a['SelectionAvatarCount-wrapper'] = true, _a['SelectionAvatarCount--selected'] = selectedItemCount > 0, _a));
18705
+ var wrapperClassName = classNames__default["default"]((_a = {}, _a['SelectionAvatarCount-wrapper'] = true, _a["SelectionAvatarGroup-item"] = true, _a['SelectionAvatarCount--selected'] = selectedItemCount > 0, _a));
18658
18706
  React__namespace.useEffect(function () {
18659
18707
  var selectedList = hiddenAvatarList.filter(function (data1) {
18660
18708
  return selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.some(function (data2) {
@@ -18677,6 +18725,7 @@
18677
18725
  "aria-controls": popoverId,
18678
18726
  ref: triggerRef
18679
18727
  }, /*#__PURE__*/React__namespace.createElement(Avatar, {
18728
+ tabIndex: -1,
18680
18729
  size: size,
18681
18730
  appearance: "secondary",
18682
18731
  className: "SelectionAvatarCount cursor-pointer"
@@ -18802,7 +18851,8 @@
18802
18851
  var AvatarSelectionOption = function AvatarSelectionOption(props) {
18803
18852
  var children = props.children,
18804
18853
  value = props.value,
18805
- rest = __rest(props, ["children", "value"]);
18854
+ disabled = props.disabled,
18855
+ rest = __rest(props, ["children", "value", "disabled"]);
18806
18856
 
18807
18857
  var contextProp = React__namespace.useContext(AvatarSelectionContext);
18808
18858
  var setSelectedItems = contextProp.setSelectedItems,
@@ -18819,6 +18869,11 @@
18819
18869
 
18820
18870
  var onSelectHandler = function onSelectHandler(event, avatarData) {
18821
18871
  event.preventDefault();
18872
+
18873
+ if (disabled) {
18874
+ return;
18875
+ }
18876
+
18822
18877
  var list = selectedItems ? __spreadArrays(selectedItems) : [];
18823
18878
 
18824
18879
  if (selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.includes(avatarData)) {
@@ -18847,6 +18902,7 @@
18847
18902
  },
18848
18903
  selected: selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.includes(value),
18849
18904
  "data-test": "DesignSystem-AvatarSelection--Option",
18905
+ disabled: disabled,
18850
18906
  tabIndex: -1
18851
18907
  }, rest), children);
18852
18908
  };
@@ -18887,8 +18943,10 @@
18887
18943
  var _b = avatarData.firstName,
18888
18944
  firstName = _b === void 0 ? '' : _b,
18889
18945
  _c = avatarData.lastName,
18890
- lastName = _c === void 0 ? '' : _c;
18891
- var name = firstName + " " + lastName;
18946
+ lastName = _c === void 0 ? '' : _c,
18947
+ disabled = avatarData.disabled,
18948
+ tooltipSuffix = avatarData.tooltipSuffix;
18949
+ var name = (firstName || '') + " " + (lastName || '') + " " + (tooltipSuffix || '') || '';
18892
18950
  return /*#__PURE__*/React__namespace.createElement(Tooltip, {
18893
18951
  showOnTruncation: true,
18894
18952
  tooltip: name,
@@ -18896,6 +18954,7 @@
18896
18954
  open: showTooltip
18897
18955
  }, /*#__PURE__*/React__namespace.createElement(AvatarSelectionOption, {
18898
18956
  value: avatarData,
18957
+ disabled: disabled,
18899
18958
  onFocus: function onFocus() {
18900
18959
  setShowTooltip(true);
18901
18960
  },
@@ -19951,8 +20010,10 @@
19951
20010
  return newList;
19952
20011
  };
19953
20012
  var computeValue = function computeValue(multiSelect, selectValue, setLabel) {
20013
+ var _a;
20014
+
19954
20015
  if (!multiSelect) {
19955
- return (selectValue === null || selectValue === void 0 ? void 0 : selectValue.label.trim()) || '';
20016
+ return ((_a = selectValue === null || selectValue === void 0 ? void 0 : selectValue.label) === null || _a === void 0 ? void 0 : _a.trim()) || '';
19956
20017
  }
19957
20018
 
19958
20019
  var label = setLabel === null || setLabel === void 0 ? void 0 : setLabel(selectValue.length);
@@ -20096,12 +20157,14 @@
20096
20157
  };
20097
20158
 
20098
20159
  var SelectOption = function SelectOption(props) {
20160
+ var _a, _b;
20161
+
20099
20162
  var children = props.children,
20100
20163
  option = props.option,
20101
20164
  checkedState = props.checkedState,
20102
20165
  onClick = props.onClick,
20103
- _a = props.withCheckbox,
20104
- withCheckbox = _a === void 0 ? true : _a,
20166
+ _c = props.withCheckbox,
20167
+ withCheckbox = _c === void 0 ? true : _c,
20105
20168
  disabled = props.disabled,
20106
20169
  rest = __rest(props, ["children", "option", "checkedState", "onClick", "withCheckbox", "disabled"]);
20107
20170
 
@@ -20136,6 +20199,8 @@
20136
20199
 
20137
20200
  var checked = checkedState === 'checked' || elementExist(option, selectValue) !== -1;
20138
20201
  var indeterminate = checkedState === 'indeterminate';
20202
+ var optionItemClass = classNames__default["default"]((_a = {}, _a['Select-option'] = true, _a));
20203
+ var textClass = classNames__default["default"]((_b = {}, _b['Select-option--text'] = true, _b['pt-2'] = multiSelect, _b));
20139
20204
 
20140
20205
  var onKeyDownHandler = function onKeyDownHandler(event) {
20141
20206
  handleKeyDown$2(event, focusedOption, setFocusedOption, setHighlightFirstItem, setHighlightLastItem, listRef, withSearch, setOpenPopover, triggerRef);
@@ -20154,14 +20219,14 @@
20154
20219
  disabled: disabled,
20155
20220
  "data-test": "DesignSystem-Select-Option"
20156
20221
  }, rest), /*#__PURE__*/React__namespace.createElement("div", {
20157
- className: "d-flex align-items-center w-100"
20222
+ className: optionItemClass
20158
20223
  }, multiSelect && withCheckbox && /*#__PURE__*/React__namespace.createElement(Checkbox, {
20159
20224
  tabIndex: -1,
20160
20225
  "aria-checked": indeterminate ? 'mixed' : checked,
20161
20226
  checked: checked,
20162
20227
  indeterminate: indeterminate
20163
20228
  }), /*#__PURE__*/React__namespace.createElement("div", {
20164
- className: multiSelect ? 'Select-trigger-text pt-2' : 'Select-trigger-text'
20229
+ className: textClass
20165
20230
  }, children)));
20166
20231
  };
20167
20232
  SelectOption.defaultProps = {
@@ -20193,12 +20258,16 @@
20193
20258
  setOpenPopover = contextProp.setOpenPopover,
20194
20259
  setHighlightFirstItem = contextProp.setHighlightFirstItem,
20195
20260
  setHighlightLastItem = contextProp.setHighlightLastItem,
20196
- triggerRef = contextProp.triggerRef;
20261
+ triggerRef = contextProp.triggerRef,
20262
+ width = contextProp.width;
20197
20263
  var buttonDisabled = disabled ? 'disabled' : 'default';
20198
20264
  var trimmedPlaceholder = placeholder === null || placeholder === void 0 ? void 0 : placeholder.trim();
20199
20265
  var displayValue = computeValue(multiSelect, selectValue, setLabel);
20200
20266
  var value = isOptionSelected && displayValue.length > 0 ? displayValue : trimmedPlaceholder;
20201
20267
  var iconName = openPopover ? 'keyboard_arrow_up' : 'keyboard_arrow_down';
20268
+ var triggerStyle = {
20269
+ width: width
20270
+ };
20202
20271
 
20203
20272
  var onClearHandler = function onClearHandler(event) {
20204
20273
  event.stopPropagation();
@@ -20215,7 +20284,7 @@
20215
20284
  };
20216
20285
 
20217
20286
  var buttonClass = classNames__default["default"]((_a = {}, _a['Button'] = true, _a['Select-trigger'] = true, _a["Select-trigger--" + triggerSize] = triggerSize, _a['Select-trigger--placeholder'] = !isOptionSelected, _a['Select-trigger--icon'] = icon, _a['Select-trigger--open'] = openPopover, _a));
20218
- var textClass = classNames__default["default"]((_b = {}, _b['Text'] = true, _b['Text--regular'] = true, _b['Select-trigger-text'] = true, _b));
20287
+ var textClass = classNames__default["default"]((_b = {}, _b['Text'] = true, _b['Text--regular'] = true, _b['Select-trigger--text'] = true, _b));
20219
20288
  return /*#__PURE__*/React__namespace.createElement(Tooltip, {
20220
20289
  showOnTruncation: true,
20221
20290
  showTooltip: !openPopover,
@@ -20232,6 +20301,7 @@
20232
20301
  className: buttonClass,
20233
20302
  disabled: disabled,
20234
20303
  tabIndex: 0,
20304
+ style: triggerStyle,
20235
20305
  "aria-haspopup": "listbox",
20236
20306
  "aria-expanded": openPopover,
20237
20307
  "aria-label": "trigger",
@@ -20374,7 +20444,9 @@
20374
20444
  multiSelect = _a === void 0 ? false : _a,
20375
20445
  onOutsideClick = props.onOutsideClick,
20376
20446
  triggerOptions = props.triggerOptions,
20377
- popoverWidth = props.popoverWidth;
20447
+ popoverWidth = props.popoverWidth,
20448
+ trigger = props.trigger,
20449
+ onToggle = props.onToggle;
20378
20450
 
20379
20451
  var _b = React__namespace.useState(false),
20380
20452
  openPopover = _b[0],
@@ -20415,16 +20487,29 @@
20415
20487
  popoverStyle = _j[0],
20416
20488
  setPopoverStyle = _j[1];
20417
20489
 
20418
- var triggerStyle = {
20419
- width: width
20420
- };
20421
20490
  var baseProps = extractBaseProps(props);
20491
+
20492
+ var getTriggerElement = function getTriggerElement() {
20493
+ if (trigger) {
20494
+ return /*#__PURE__*/React__namespace.cloneElement(trigger, {
20495
+ ref: triggerRef
20496
+ });
20497
+ }
20498
+
20499
+ return /*#__PURE__*/React__namespace.createElement(SelectTrigger, __assign$1({
20500
+ "aria-controls": "select-listbox"
20501
+ }, triggerOptions));
20502
+ };
20503
+
20422
20504
  React__namespace.useEffect(function () {
20423
- var _a, _b;
20505
+ var _a;
20506
+
20507
+ var MIN_WIDTH = 176;
20508
+ var triggerWidth = (_a = triggerRef.current) === null || _a === void 0 ? void 0 : _a.clientWidth;
20424
20509
 
20425
- if (!popoverWidth && ((_a = triggerRef.current) === null || _a === void 0 ? void 0 : _a.clientWidth)) {
20510
+ if (!popoverWidth && triggerWidth) {
20426
20511
  setPopoverStyle(__assign$1(__assign$1({}, popoverStyle), {
20427
- width: (_b = triggerRef.current) === null || _b === void 0 ? void 0 : _b.clientWidth
20512
+ width: trigger ? Math.max(triggerWidth || 0, MIN_WIDTH) : triggerWidth
20428
20513
  }));
20429
20514
  }
20430
20515
  }, []);
@@ -20479,11 +20564,15 @@
20479
20564
  }, [value]);
20480
20565
 
20481
20566
  var onToggleHandler = function onToggleHandler(open) {
20567
+ if (onToggle) {
20568
+ onToggle(open);
20569
+ }
20570
+
20482
20571
  if (triggerOptions && triggerOptions.disabled) {
20483
20572
  setOpenPopover(false);
20484
20573
  } else {
20485
- setHighlightFirstItem(open);
20486
20574
  setOpenPopover(open);
20575
+ setHighlightFirstItem(open);
20487
20576
  }
20488
20577
  };
20489
20578
 
@@ -20522,19 +20611,17 @@
20522
20611
  }, /*#__PURE__*/React__namespace.createElement("div", __assign$1({
20523
20612
  "data-test": "DesignSystem-Select",
20524
20613
  "aria-haspopup": "listbox",
20525
- "aria-expanded": openPopover,
20526
- style: triggerStyle
20614
+ "aria-expanded": openPopover
20527
20615
  }, baseProps), /*#__PURE__*/React__namespace.createElement(Popover$1, {
20528
20616
  open: openPopover,
20529
20617
  onToggle: onToggleHandler,
20530
20618
  className: "mt-3",
20531
20619
  triggerClass: "d-block",
20620
+ position: "bottom-start",
20532
20621
  customStyle: popoverStyle,
20533
20622
  boundaryElement: boundaryElement,
20534
20623
  appendToBody: appendToBody,
20535
- trigger: /*#__PURE__*/React__namespace.createElement(SelectTrigger, __assign$1({
20536
- "aria-controls": "select-listbox"
20537
- }, triggerOptions))
20624
+ trigger: getTriggerElement()
20538
20625
  }, /*#__PURE__*/React__namespace.createElement(OutsideClick, {
20539
20626
  onOutsideClick: onOutsideClickHandler
20540
20627
  }, /*#__PURE__*/React__namespace.createElement("div", {
@@ -25411,7 +25498,7 @@
25411
25498
  AIResponse.ActionBar = ChatActionBar;
25412
25499
  AIResponse.Body = ChatBody;
25413
25500
 
25414
- var version = "2.36.2";
25501
+ var version = "2.37.0";
25415
25502
 
25416
25503
  exports.AIButton = AIButton;
25417
25504
  exports.AIChip = AIChip;