@7shifts/sous-chef 3.10.3 → 3.11.1

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
@@ -14,6 +14,7 @@ var dateFnsFormat = _interopDefault(require('date-fns/format'));
14
14
  var dateFnsParse = _interopDefault(require('date-fns/parse'));
15
15
  var startOfDay = _interopDefault(require('date-fns/startOfDay'));
16
16
  var lodashEs = require('lodash-es');
17
+ var parseTime = _interopDefault(require('time-autocomplete/src/core/AMPMParser'));
17
18
  var Select = require('react-select');
18
19
  var Select__default = _interopDefault(Select);
19
20
  var reactRouterDom = require('react-router-dom');
@@ -21,7 +22,6 @@ var AsyncSelect = _interopDefault(require('react-select/async'));
21
22
  var DayPickerInput = _interopDefault(require('react-day-picker/DayPickerInput'));
22
23
  var dateFns = require('date-fns');
23
24
  var eachDayOfInterval = _interopDefault(require('date-fns/eachDayOfInterval'));
24
- var parseTime = _interopDefault(require('time-autocomplete/src/core/AMPMParser'));
25
25
 
26
26
  function _extends() {
27
27
  _extends = Object.assign || function (target) {
@@ -4447,6 +4447,7 @@ var PaneOverlay = function PaneOverlay(_ref) {
4447
4447
  var _classNames;
4448
4448
 
4449
4449
  var width = _ref.width,
4450
+ maxHeight = _ref.maxHeight,
4450
4451
  alignment = _ref.alignment,
4451
4452
  onMouseEnter = _ref.onMouseEnter,
4452
4453
  onMouseLeave = _ref.onMouseLeave,
@@ -4467,7 +4468,7 @@ var PaneOverlay = function PaneOverlay(_ref) {
4467
4468
  }, []);
4468
4469
  useOnClickOutside([paneRef, triggerRef], clickOutsideCallback);
4469
4470
  React.useLayoutEffect(function () {
4470
- if (!(triggerRef !== null && triggerRef !== void 0 && triggerRef.current) || !(paneRef !== null && paneRef !== void 0 && paneRef.current)) {
4471
+ if (!triggerRef || !('current' in triggerRef) || !(triggerRef !== null && triggerRef !== void 0 && triggerRef.current) || !(paneRef !== null && paneRef !== void 0 && paneRef.current)) {
4471
4472
  return;
4472
4473
  }
4473
4474
 
@@ -4478,10 +4479,14 @@ var PaneOverlay = function PaneOverlay(_ref) {
4478
4479
  }, [triggerRef]);
4479
4480
  var handleEscapeKey = React.useCallback(onToggleDropdown, []);
4480
4481
  useKeyPress(['Escape'], handleEscapeKey);
4482
+ var overflow = maxHeight ? 'scroll' : undefined;
4481
4483
  return React__default.createElement("div", {
4482
4484
  className: classnames(styles$b['dropdown-pane'], (_classNames = {}, _classNames[styles$b['dropdown-pane--with-padding']] = true, _classNames)),
4483
4485
  style: _extends({}, position, {
4484
- width: width
4486
+ width: width,
4487
+ maxHeight: maxHeight,
4488
+ overflow: overflow,
4489
+ zIndex: Z_INDEX_LAYERS.MENU
4485
4490
  }),
4486
4491
  ref: paneRef,
4487
4492
  onMouseEnter: onMouseEnter,
@@ -4517,1151 +4522,1369 @@ var DROPDOWN_TRIGGER = {
4517
4522
  CLICK: 'click'
4518
4523
  };
4519
4524
 
4520
- var Dropdown = function Dropdown(_ref) {
4521
- var trigger = _ref.trigger,
4522
- _ref$triggersOn = _ref.triggersOn,
4523
- triggersOn = _ref$triggersOn === void 0 ? DROPDOWN_TRIGGER.CLICK : _ref$triggersOn,
4524
- _ref$alignment = _ref.alignment,
4525
- alignment = _ref$alignment === void 0 ? DROPDOWN_ALIGNEMNT.RIGHT : _ref$alignment,
4526
- width = _ref.width,
4527
- testId = _ref.testId,
4528
- children = _ref.children;
4529
-
4530
- var _useState = React.useState(false),
4531
- isOpen = _useState[0],
4532
- setIsOpen = _useState[1];
4533
-
4534
- var triggerRef = React.useRef(null);
4535
- var paneRef = React.useRef(null);
4536
- var isFocusingOverlay = React.useRef(false);
4537
-
4538
- var handleToggleDropdown = function handleToggleDropdown() {
4539
- return setIsOpen(!isOpen);
4540
- };
4541
-
4542
- var handleMouseClick = function handleMouseClick(e) {
4543
- handleToggleDropdown();
4544
- e.stopPropagation();
4545
-
4546
- if ('onClick' in trigger.props) {
4547
- trigger.props.onClick(e);
4548
- }
4549
- };
4525
+ var styles$d = {"overlay":"_2puqJ","overlay--after-open":"_1167h","overlay--before-close":"_t_t7L","content":"_wQQ_2","content--after-open":"_3jwux","content--before-close":"_2c2QP"};
4550
4526
 
4551
- var handleMouseEnter = function handleMouseEnter(e) {
4552
- if (triggersOn !== 'hover') {
4553
- return;
4554
- }
4527
+ var styles$e = {"header":"_36nxW","header__close-button":"_2zYre","sub-header":"_2XwRD"};
4555
4528
 
4556
- setIsOpen(true);
4529
+ var ModalHeader = function ModalHeader(_ref) {
4530
+ var header = _ref.header,
4531
+ subHeader = _ref.subHeader,
4532
+ onClose = _ref.onClose,
4533
+ loading = _ref.loading;
4557
4534
 
4558
- if ('onMouseEnter' in trigger.props) {
4559
- trigger.props.onMouseEnter(e);
4560
- }
4561
- };
4535
+ if (!header && !subHeader) {
4536
+ return onClose ? React__default.createElement("div", {
4537
+ className: styles$e['header__close-button']
4538
+ }, React__default.createElement(Button$1, {
4539
+ theme: "link-icon",
4540
+ onClick: onClose,
4541
+ disabled: loading
4542
+ }, React__default.createElement(IconTimes, null))) : null;
4543
+ }
4562
4544
 
4563
- var handleFocus = function handleFocus(e) {
4564
- if (triggersOn !== 'hover') {
4565
- return;
4566
- }
4545
+ return React__default.createElement(Stack, {
4546
+ space: 12,
4547
+ marginBottom: 24
4548
+ }, React__default.createElement(Inline, {
4549
+ flex: [1],
4550
+ alignItems: "center"
4551
+ }, React__default.createElement("span", {
4552
+ className: styles$e['header']
4553
+ }, header), onClose && React__default.createElement(Button$1, {
4554
+ theme: "link-icon",
4555
+ onClick: onClose,
4556
+ disabled: loading
4557
+ }, React__default.createElement(IconTimes, null))), subHeader && React__default.createElement("div", {
4558
+ className: styles$e['sub-header']
4559
+ }, subHeader));
4560
+ };
4567
4561
 
4568
- setIsOpen(true);
4562
+ var ModalContext = React.createContext({
4563
+ isModalMounted: false
4564
+ });
4565
+ var useModalContext = function useModalContext() {
4566
+ var context = React.useContext(ModalContext);
4567
+ return context || {};
4568
+ };
4569
4569
 
4570
- if ('onMouseEnter' in trigger.props) {
4571
- trigger.props.onMouseEnter(e);
4570
+ var Modal = function Modal(_ref) {
4571
+ var children = _ref.children,
4572
+ header = _ref.header,
4573
+ subHeader = _ref.subHeader,
4574
+ onClose = _ref.onClose,
4575
+ loading = _ref.loading,
4576
+ _ref$zIndex = _ref.zIndex,
4577
+ zIndex = _ref$zIndex === void 0 ? Z_INDEX_LAYERS.MODAL : _ref$zIndex,
4578
+ rootElementId = _ref.rootElementId,
4579
+ _ref$width = _ref.width,
4580
+ width = _ref$width === void 0 ? 500 : _ref$width,
4581
+ height = _ref.height,
4582
+ maxWidth = _ref.maxWidth,
4583
+ _ref$shouldReturnFocu = _ref.shouldReturnFocusAfterClose,
4584
+ shouldReturnFocusAfterClose = _ref$shouldReturnFocu === void 0 ? true : _ref$shouldReturnFocu,
4585
+ testId = _ref.testId;
4586
+ var style = {
4587
+ content: {
4588
+ width: width,
4589
+ height: height,
4590
+ maxWidth: maxWidth
4591
+ },
4592
+ overlay: {
4593
+ zIndex: zIndex
4572
4594
  }
4573
4595
  };
4574
-
4575
- var handleMouseLeave = function handleMouseLeave(e) {
4576
- if (triggersOn !== 'hover' || !paneRef.current) {
4577
- return;
4596
+ return React__default.createElement(ReactModal, {
4597
+ isOpen: true,
4598
+ testId: testId,
4599
+ shouldCloseOnEsc: true,
4600
+ shouldCloseOnOverlayClick: false,
4601
+ shouldReturnFocusAfterClose: shouldReturnFocusAfterClose,
4602
+ onRequestClose: onClose && !loading ? onClose : undefined,
4603
+ style: style,
4604
+ closeTimeoutMS: 200,
4605
+ contentLabel: "Modal",
4606
+ appElement: rootElementId && document.getElementById(rootElementId) || undefined,
4607
+ overlayClassName: {
4608
+ base: styles$d['overlay'],
4609
+ afterOpen: styles$d['overlay--after-open'],
4610
+ beforeClose: styles$d['overlay--before-close']
4611
+ },
4612
+ className: {
4613
+ base: styles$d['content'],
4614
+ afterOpen: styles$d['content--after-open'],
4615
+ beforeClose: styles$d['content--before-close']
4578
4616
  }
4579
-
4580
- var panePosition = paneRef.current.getBoundingClientRect();
4581
-
4582
- if (!isGoingTowardsPane(panePosition, e.clientY)) {
4583
- setIsOpen(false);
4584
-
4585
- if ('onMouseLeave' in trigger.props) {
4586
- trigger.props.onMouseLeave && trigger.props.onMouseLeave(e);
4587
- }
4617
+ }, React__default.createElement(ModalHeader, {
4618
+ header: header,
4619
+ subHeader: subHeader,
4620
+ onClose: onClose,
4621
+ loading: loading
4622
+ }), React__default.createElement(ModalContext.Provider, {
4623
+ value: {
4624
+ isModalMounted: true
4588
4625
  }
4589
- };
4626
+ }, children));
4627
+ };
4590
4628
 
4591
- var handlePaneMouseEnter = function handlePaneMouseEnter() {
4592
- isFocusingOverlay.current = true;
4593
- };
4629
+ Modal.setAppElement = function (rootElement) {
4630
+ ReactModal.setAppElement(rootElement);
4631
+ };
4594
4632
 
4595
- var handlePaneMouseLeave = function handlePaneMouseLeave() {
4596
- isFocusingOverlay.current = false;
4633
+ var THRESHOLD = 20;
4634
+ var useScrollShadow = function useScrollShadow() {
4635
+ var ref = React.useRef(null);
4597
4636
 
4598
- if (triggersOn === 'hover') {
4599
- setIsOpen(false);
4600
- }
4601
- };
4637
+ var _useState = React.useState(false),
4638
+ showScrollShadow = _useState[0],
4639
+ setShowScrollShadow = _useState[1];
4602
4640
 
4603
- var handleOnBlur = function handleOnBlur() {
4604
- if (!paneRef || !(paneRef !== null && paneRef !== void 0 && paneRef.current)) {
4641
+ React.useEffect(function () {
4642
+ if (!ref.current) {
4605
4643
  return;
4606
4644
  }
4607
4645
 
4608
- var focusableElements = getKeyboardFocusableElements(paneRef.current);
4646
+ var modalBody = ref.current;
4609
4647
 
4610
- if (focusableElements.length > 0) {
4611
- window.setTimeout(function () {
4612
- return focusableElements[0].focus();
4613
- }, 0);
4614
- } else if (!isFocusingOverlay.current) {
4615
- setIsOpen(false);
4648
+ if (modalBody.offsetHeight > THRESHOLD) {
4649
+ setShowScrollShadow(true);
4616
4650
  }
4651
+ }, []);
4652
+ return {
4653
+ ref: ref,
4654
+ showScrollShadow: showScrollShadow
4617
4655
  };
4618
-
4619
- var triggerProps = {
4620
- onClick: handleMouseClick,
4621
- onMouseEnter: handleMouseEnter,
4622
- onMouseLeave: handleMouseLeave,
4623
- onBlur: handleOnBlur,
4624
- onFocus: handleFocus,
4625
- ref: triggerRef
4626
- };
4627
- return React__default.createElement(DropdownContext.Provider, {
4628
- value: {
4629
- isOpen: isOpen,
4630
- onToggleDropdown: handleToggleDropdown,
4631
- triggerRef: triggerRef,
4632
- paneRef: paneRef
4633
- }
4634
- }, trigger.type === Button$1 ? React__default.cloneElement(trigger, _extends({}, trigger.props, triggerProps)) : React__default.createElement("button", Object.assign({}, triggerProps, {
4635
- className: styles$c['dropdown__trigger'],
4636
- onFocus: handleFocus
4637
- }), trigger), React__default.createElement(DropdownPane, {
4638
- width: width,
4639
- onMouseEnter: handlePaneMouseEnter,
4640
- onMouseLeave: handlePaneMouseLeave,
4641
- alignment: alignment,
4642
- testId: testId
4643
- }, children));
4644
4656
  };
4645
4657
 
4646
- var styles$d = {"dropdown-list":"_1v1df","dropdown-list__item--hover":"_eAjpa"};
4647
-
4648
- var findNextActiveIndex = function findNextActiveIndex(items, startAt) {
4649
- var startIndex = 0;
4658
+ var styles$f = {"modal-body":"_2J-ku","modal-body--with-scroll-shadow":"_2ErCP"};
4650
4659
 
4651
- if (startAt !== null && startAt + 1 <= items.length) {
4652
- startIndex = startAt + 1;
4653
- }
4660
+ var ModalBody = function ModalBody(_ref) {
4661
+ var _classNames;
4654
4662
 
4655
- var hasEnabledItems = items.slice(startIndex).some(function (item) {
4656
- return !item.disabled;
4657
- });
4663
+ var children = _ref.children,
4664
+ testId = _ref.testId;
4658
4665
 
4659
- if (hasEnabledItems) {
4660
- var _nextEnabledIndex = items.findIndex(function (item, index) {
4661
- if (index < startIndex) {
4662
- return false;
4663
- }
4666
+ var _useScrollShadow = useScrollShadow(),
4667
+ ref = _useScrollShadow.ref,
4668
+ showScrollShadow = _useScrollShadow.showScrollShadow;
4664
4669
 
4665
- return !item.disabled;
4666
- });
4670
+ return React__default.createElement("div", {
4671
+ className: classnames(styles$f['modal-body'], (_classNames = {}, _classNames[styles$f['modal-body--with-scroll-shadow']] = showScrollShadow, _classNames)),
4672
+ ref: ref,
4673
+ "data-testid": testId
4674
+ }, children);
4675
+ };
4667
4676
 
4668
- return _nextEnabledIndex;
4669
- }
4677
+ var styles$g = {"modal-footer":"_LKOr5","tertiary-container":"_Qktd-"};
4670
4678
 
4671
- var nextEnabledIndex = items.findIndex(function (item) {
4672
- return !item.disabled;
4673
- });
4674
- return nextEnabledIndex >= 0 ? nextEnabledIndex : null;
4675
- };
4676
- var findPreviousEnabledIndex = function findPreviousEnabledIndex(items, startAt) {
4677
- for (var i = startAt - 1; i >= 0; i--) {
4678
- if (!items[i].disabled) {
4679
- return i;
4680
- }
4679
+ var updateButtonProps = function updateButtonProps(button, newProps) {
4680
+ if (!button) {
4681
+ return null;
4681
4682
  }
4682
4683
 
4683
- for (var _i = items.length - 1; _i > startAt - 1; _i--) {
4684
- if (!items[_i].disabled) {
4685
- return _i;
4686
- }
4684
+ if (button.type !== Button$1) {
4685
+ return button;
4687
4686
  }
4688
4687
 
4689
- return null;
4688
+ return React__default.cloneElement(button, _extends({}, newProps));
4690
4689
  };
4691
4690
 
4692
- var useListKeyboardNavigation = function useListKeyboardNavigation(listItems, actions) {
4693
- var _useState = React.useState(null),
4694
- focusedItem = _useState[0],
4695
- setFocusedItem = _useState[1];
4696
-
4697
- var focusOnNextItem = function focusOnNextItem() {
4698
- setFocusedItem(findNextActiveIndex(listItems, focusedItem));
4699
- };
4691
+ var ModalFooter = function ModalFooter(_ref) {
4692
+ var children = _ref.children,
4693
+ actions = _ref.actions,
4694
+ testId = _ref.testId;
4700
4695
 
4701
- var focusOnPrevItem = function focusOnPrevItem() {
4702
- setFocusedItem(findPreviousEnabledIndex(listItems, focusedItem || 0));
4703
- };
4696
+ if (actions) {
4697
+ var _actions$primary, _actions$secondary, _actions$tertiary, _classnames;
4704
4698
 
4705
- var setFocusOnItem = function setFocusOnItem(index) {
4706
- if (listItems[index].disabled) {
4707
- return;
4708
- }
4709
-
4710
- setFocusedItem(index);
4711
- };
4699
+ var primaryButton = updateButtonProps(actions.primary, {
4700
+ theme: (actions === null || actions === void 0 ? void 0 : (_actions$primary = actions.primary) === null || _actions$primary === void 0 ? void 0 : _actions$primary.props.theme) || 'primary',
4701
+ size: BUTTON_SIZES.MIN_WIDTH_100
4702
+ });
4703
+ var secondaryButton = updateButtonProps(actions.secondary, {
4704
+ theme: (actions === null || actions === void 0 ? void 0 : (_actions$secondary = actions.secondary) === null || _actions$secondary === void 0 ? void 0 : _actions$secondary.props.theme) || 'default',
4705
+ size: BUTTON_SIZES.MIN_WIDTH_100
4706
+ });
4707
+ var tertiaryButton = updateButtonProps(actions.tertiary, {
4708
+ theme: (actions === null || actions === void 0 ? void 0 : (_actions$tertiary = actions.tertiary) === null || _actions$tertiary === void 0 ? void 0 : _actions$tertiary.props.theme) || 'link-primary',
4709
+ size: BUTTON_SIZES.MIN_WIDTH_100
4710
+ });
4711
+ return React__default.createElement(FooterContainer, {
4712
+ testId: testId
4713
+ }, React__default.createElement(Inline, {
4714
+ justifyContent: "space-between"
4715
+ }, React__default.createElement("div", {
4716
+ className: classnames((_classnames = {}, _classnames[styles$g['tertiary-container']] = tertiaryButton && tertiaryButton.props.theme.startsWith('link'), _classnames))
4717
+ }, tertiaryButton || React__default.createElement("div", null)), React__default.createElement(Inline, {
4718
+ space: 12
4719
+ }, secondaryButton, primaryButton)));
4720
+ }
4712
4721
 
4713
- var handleKeyPress = React.useCallback(function (event) {
4714
- if (event.key === 'ArrowDown') {
4715
- focusOnNextItem();
4716
- }
4722
+ return React__default.createElement(FooterContainer, null, children);
4723
+ };
4717
4724
 
4718
- if (event.key === 'ArrowUp') {
4719
- focusOnPrevItem();
4720
- }
4725
+ var FooterContainer = function FooterContainer(_ref2) {
4726
+ var children = _ref2.children,
4727
+ testId = _ref2.testId;
4728
+ var childrenItens = React__default.Children.toArray(children);
4729
+ var hasCustomAlignment = childrenItens.length === 1 && childrenItens[0].type === Inline;
4730
+ return React__default.createElement("div", {
4731
+ className: styles$g['modal-footer'],
4732
+ "data-testid": testId
4733
+ }, React__default.createElement(Inline, {
4734
+ justifyContent: "end",
4735
+ space: 12,
4736
+ flex: hasCustomAlignment ? [1] : undefined
4737
+ }, children));
4738
+ };
4721
4739
 
4722
- if (event.key === 'Enter' && focusedItem !== null) {
4723
- var _actions$onPressEnter;
4740
+ var styles$h = {"container":"_v1b-5","wrapper":"_3mrLu","interactionDisabled":"_1J9dh","DayPicker-Day":"_8FcQE","navBar":"_1SPuq","todayButton":"_24FJ6","navButtonInteractionDisabled":"_Oxdm9","navButtonPrev":"_20uqc","navButtonNext":"_3C53z","months":"_M_eHz","month":"_3RPpJ","caption":"_1FXNw","weekdays":"_3KcRU","weekdaysRow":"_1fO_e","weekday":"_c1Y-X","body":"_34mA1","week":"_1PmqZ","day":"_1AWH2","disabled":"_3vJkw","selected":"_1DR0N","outside":"_276GV","footer":"_2M5xr","today":"_3N6fj","overlayWrapper":"_3Zqgu","overlay":"_20Ncd","weekNumber":"_2hb-S"};
4724
4741
 
4725
- var onClick = listItems[focusedItem].onClick;
4726
- onClick(event);
4727
- actions && ((_actions$onPressEnter = actions.onPressEnter) === null || _actions$onPressEnter === void 0 ? void 0 : _actions$onPressEnter.call(actions));
4728
- }
4742
+ var styles$i = {"container":"_okDvi","wrapper":"_17XdD","interactionDisabled":"_1O7OT","DayPicker-Day":"_3noGA","navBar":"_1Hl3Q","todayButton":"_m0Vs9","navButtonInteractionDisabled":"_1ULWH","navButtonPrev":"_3gjq8","navButtonNext":"_1m-Kd","months":"_Fq6Xh","month":"_3i0Oo","caption":"_36X9Y","weekdays":"_1aWPn","weekdaysRow":"_3HXCK","weekday":"_t-ctd","body":"_XAbiR","week":"_3Nwep","day":"_3nNcG","disabled":"_1M4ZF","selected":"_2PEs8","outside":"_1PIJa","footer":"_2T_z1","today":"_1hVM6","overlayWrapper":"_1L-hI","overlay":"_dDPZb","weekNumber":"_1alhT"};
4729
4743
 
4730
- event.preventDefault();
4731
- }, [focusedItem]);
4732
- useKeyPress(['ArrowDown', 'ArrowUp', 'Enter'], handleKeyPress);
4733
- return {
4734
- focusedItem: focusedItem,
4735
- setFocusOnItem: setFocusOnItem
4736
- };
4737
- };
4744
+ function parseDate(str, format, locale) {
4745
+ var parsed = dateFnsParse(str, format, new Date(), {
4746
+ locale: locale
4747
+ });
4738
4748
 
4739
- var styles$e = {"dropdown-list-divider":"_3x1F6"};
4749
+ if (str.length === format.length && DayPicker.DateUtils.isDate(parsed)) {
4750
+ return parsed;
4751
+ }
4740
4752
 
4741
- var DropdownListDivider = function DropdownListDivider(_ref) {
4742
- var testId = _ref.testId;
4743
- return React__default.createElement("div", {
4744
- className: styles$e['dropdown-list-divider'],
4745
- "data-testid": testId
4753
+ return undefined;
4754
+ }
4755
+ function formatDate(date, format, locale) {
4756
+ return dateFnsFormat(date, format, {
4757
+ locale: locale
4746
4758
  });
4747
- };
4748
-
4749
- var styles$f = {"dropdown-list-item":"_B3_I5","dropdown-list-item--selected":"_1mr1h","dropdown-list-item__content":"_2b7Fg","dropdown-list-item--disabled":"_2l0Cb"};
4759
+ }
4760
+ function setToMidnight(date) {
4761
+ return date && startOfDay(date);
4762
+ }
4763
+ function getStartOfWeek(date, weekIndex) {
4764
+ var d = new Date(date);
4765
+ var firstDay = d.getDate() - d.getDay() + weekIndex;
4766
+ var firstDayAdjusted = firstDay > d.getDate() ? firstDay - 7 : firstDay;
4767
+ return new Date(d.setDate(firstDayAdjusted));
4768
+ }
4769
+ function getEndOfWeek(date, weekIndex) {
4770
+ var startOfWeek = getStartOfWeek(date, weekIndex);
4771
+ var endDay = startOfWeek.getDate() + 6;
4772
+ return new Date(startOfWeek.setDate(endDay));
4773
+ }
4774
+ function createWeekRange(date, weekStart) {
4775
+ return {
4776
+ start: getStartOfWeek(date, weekStart),
4777
+ end: getEndOfWeek(date, weekStart)
4778
+ };
4779
+ }
4780
+ var DAYS = [getLocalizedString('time.sunday'), getLocalizedString('time.monday'), getLocalizedString('time.tuesday'), getLocalizedString('time.wednesday'), getLocalizedString('time.thursday'), getLocalizedString('time.friday'), getLocalizedString('time.saturday')];
4781
+ var MONTH_NAMES = [getLocalizedString('time.january'), getLocalizedString('time.february'), getLocalizedString('time.march'), getLocalizedString('time.april'), getLocalizedString('time.may'), getLocalizedString('time.june'), getLocalizedString('time.july'), getLocalizedString('time.august'), getLocalizedString('time.september'), getLocalizedString('time.october'), getLocalizedString('time.november'), getLocalizedString('time.december')];
4750
4782
 
4751
- var TEXT_TYPES = {
4752
- CAPTION: 'caption',
4753
- BODY: 'body',
4754
- H1: 'h1',
4755
- H2: 'h2',
4756
- H3: 'h3',
4757
- H4: 'h4',
4758
- H5: 'h5',
4759
- INSIGHT: 'insight'
4760
- };
4761
- var FONT_EMPHASIS = {
4762
- BOLD: 'bold',
4763
- ITALIC: 'italic',
4764
- UNDERLINE: 'underline',
4765
- MONOSPACE: 'monospace'
4783
+ var CALENDAR_MODE = {
4784
+ DAY: 'day',
4785
+ WEEK: 'week'
4766
4786
  };
4767
- var ALIGNMENTS = {
4768
- LEFT: 'left',
4769
- RIGHT: 'right',
4770
- CENTER: 'center',
4771
- JUSTIFY: 'justify'
4787
+ var CALENDAR_PLACEMENT = {
4788
+ BOTTOM: 'bottom',
4789
+ TOP: 'top'
4772
4790
  };
4773
4791
 
4774
- var styles$g = {"text":"_3CIA3","text__body":"_1nnj8","text__caption":"_37K6o","text__insight":"_avqxy","text--bold":"_2TG6E","text--italic":"_2hlsn","text--underline":"_1Pjo6","text--monospace":"_eDdDI","text--align-left":"_2gNwS","text--align-right":"_ufv1W","text--align-center":"_2WMN6","text--align-justify":"_2iH-J"};
4792
+ var calculateCalendarPosition = function calculateCalendarPosition(placement, anchorPosition, calendarDimensions) {
4793
+ if (!calendarDimensions) {
4794
+ return {
4795
+ left: 0,
4796
+ top: 0
4797
+ };
4798
+ }
4775
4799
 
4776
- var _excluded$2g = ["children", "as", "emphasis", "alignment", "color", "testId"];
4800
+ var horizontalPosition = getHorizontalPosition(anchorPosition, calendarDimensions);
4801
+ var verticalPosition = getVerticalPosition(anchorPosition, placement, calendarDimensions);
4802
+ return _extends({}, horizontalPosition, verticalPosition);
4803
+ };
4777
4804
 
4778
- var Text = function Text(_ref) {
4779
- var _classnames;
4805
+ var getHorizontalPosition = function getHorizontalPosition(anchorPosition, calendarDimensions) {
4806
+ var innerWidth = window.innerWidth;
4807
+ var calendarRight = anchorPosition.left + calendarDimensions.width;
4780
4808
 
4781
- var children = _ref.children,
4782
- _ref$as = _ref.as,
4783
- as = _ref$as === void 0 ? TEXT_TYPES.BODY : _ref$as,
4784
- emphasis = _ref.emphasis,
4785
- alignment = _ref.alignment,
4786
- color = _ref.color,
4787
- testId = _ref.testId,
4788
- positionProps = _objectWithoutPropertiesLoose(_ref, _excluded$2g);
4809
+ if (innerWidth > calendarRight + BUFFER) {
4810
+ return {
4811
+ left: anchorPosition.left
4812
+ };
4813
+ }
4789
4814
 
4790
- var positionStyles = usePositionStyles(positionProps);
4791
- var elementProps = {
4792
- style: _extends({
4793
- color: color
4794
- }, positionStyles),
4795
- className: classnames(styles$g['text'], (_classnames = {}, _classnames[styles$g['text--bold']] = emphasis === null || emphasis === void 0 ? void 0 : emphasis.includes(FONT_EMPHASIS.BOLD), _classnames[styles$g['text--italic']] = emphasis === null || emphasis === void 0 ? void 0 : emphasis.includes(FONT_EMPHASIS.ITALIC), _classnames[styles$g['text--underline']] = emphasis === null || emphasis === void 0 ? void 0 : emphasis.includes(FONT_EMPHASIS.UNDERLINE), _classnames[styles$g['text--monospace']] = emphasis === null || emphasis === void 0 ? void 0 : emphasis.includes(FONT_EMPHASIS.MONOSPACE), _classnames[styles$g['text--align-left']] = alignment === ALIGNMENTS.LEFT, _classnames[styles$g['text--align-right']] = alignment === ALIGNMENTS.RIGHT, _classnames[styles$g['text--align-center']] = alignment === ALIGNMENTS.CENTER, _classnames[styles$g['text--align-justify']] = alignment === ALIGNMENTS.JUSTIFY, _classnames[styles$g['text__body']] = as === TEXT_TYPES.BODY, _classnames[styles$g['text__insight']] = as === TEXT_TYPES.INSIGHT, _classnames[styles$g['text__caption']] = as === TEXT_TYPES.CAPTION, _classnames)),
4796
- 'data-testid': testId
4815
+ return {
4816
+ left: anchorPosition.right - calendarDimensions.width
4797
4817
  };
4798
- var pTypes = [TEXT_TYPES.BODY, TEXT_TYPES.CAPTION, TEXT_TYPES.INSIGHT];
4799
- var element = pTypes.includes(as) ? 'p' : as;
4800
- return React__default.createElement(element, elementProps, children);
4801
4818
  };
4802
4819
 
4803
- var Bold = function Bold(_ref) {
4804
- var children = _ref.children;
4805
- return React__default.createElement("span", {
4806
- className: classnames(styles$g['text--bold'], styles$g['text'])
4807
- }, children);
4808
- };
4809
-
4810
- var Underline = function Underline(_ref) {
4811
- var children = _ref.children;
4812
- return React__default.createElement("span", {
4813
- className: classnames(styles$g['text--underline'], styles$g['text'])
4814
- }, children);
4815
- };
4820
+ var getVerticalPosition = function getVerticalPosition(anchorPosition, placement, calendarDimensions) {
4821
+ var calendarTopAboveTrigger = anchorPosition.top - calendarDimensions.height - PADDING;
4822
+ var calendarTopBelowTrigger = anchorPosition.bottom + PADDING;
4816
4823
 
4817
- var Italic = function Italic(_ref) {
4818
- var children = _ref.children;
4819
- return React__default.createElement("span", {
4820
- className: classnames(styles$g['text--italic'], styles$g['text'])
4821
- }, children);
4822
- };
4824
+ if (placement === CALENDAR_PLACEMENT.TOP) {
4825
+ if (calendarTopAboveTrigger < 0) {
4826
+ return {
4827
+ top: anchorPosition.bottom + PADDING
4828
+ };
4829
+ }
4823
4830
 
4824
- var WHITE = '#ffffff';
4825
- var EGGPLANT200 = '#d3dbf4';
4826
- var EGGPLANT300 = '#a7b7ea';
4827
- var EGGPLANT400 = '#6d87dd';
4828
- var EGGPLANT500 = '#6179c6';
4829
- var EGGPLANT600 = '#415184';
4830
- var RADISH400 = '#e76767';
4831
- var GREY100 = '#F3F3F3';
4832
- var GREY200 = '#D5D5D5';
4833
- var GREY300 = '#949494';
4834
- var GREY400 = '#767676';
4835
- var GREY500 = '#464646';
4831
+ return {
4832
+ top: calendarTopAboveTrigger + window.scrollY
4833
+ };
4834
+ } else {
4835
+ if (calendarTopBelowTrigger + calendarDimensions.height > window.innerHeight) {
4836
+ return {
4837
+ top: calendarTopAboveTrigger + window.scrollY
4838
+ };
4839
+ }
4836
4840
 
4837
- var DropdownListItem = function DropdownListItem(_ref) {
4838
- var _classNames;
4841
+ return {
4842
+ top: calendarTopBelowTrigger + window.scrollY
4843
+ };
4844
+ }
4845
+ };
4839
4846
 
4840
- var onClick = _ref.onClick,
4841
- prefix = _ref.prefix,
4842
- suffix = _ref.suffix,
4843
- caption = _ref.caption,
4847
+ var Calendar = function Calendar(_ref) {
4848
+ var _ref$mode = _ref.mode,
4849
+ mode = _ref$mode === void 0 ? CALENDAR_MODE.DAY : _ref$mode,
4850
+ _ref$position = _ref.position,
4851
+ position = _ref$position === void 0 ? CALENDAR_PLACEMENT.BOTTOM : _ref$position,
4852
+ _ref$weekStart = _ref.weekStart,
4853
+ weekStart = _ref$weekStart === void 0 ? 0 : _ref$weekStart,
4844
4854
  selected = _ref.selected,
4845
- disabled = _ref.disabled,
4846
- testId = _ref.testId,
4847
- children = _ref.children;
4855
+ onSelect = _ref.onSelect,
4856
+ onClickOutside = _ref.onClickOutside,
4857
+ disabledDays = _ref.disabledDays,
4858
+ anchorRef = _ref.anchorRef,
4859
+ testId = _ref.testId;
4848
4860
 
4849
- var _useDropdownContext = useDropdownContext(),
4850
- onToggleDropdown = _useDropdownContext.onToggleDropdown;
4861
+ var _useState = React.useState(null),
4862
+ calendarRef = _useState[0],
4863
+ setCalendarRef = _useState[1];
4851
4864
 
4852
- var handleClick = function handleClick(e) {
4853
- e.stopPropagation();
4865
+ var style = mode === CALENDAR_MODE.DAY ? styles$h : styles$i;
4866
+ var anchorNode = anchorRef.current;
4867
+ useOnClickOutside({
4868
+ current: calendarRef
4869
+ }, function (event) {
4870
+ var _anchorRef$current;
4854
4871
 
4855
- if (disabled) {
4856
- return;
4872
+ if (!((_anchorRef$current = anchorRef.current) !== null && _anchorRef$current !== void 0 && _anchorRef$current.contains(event === null || event === void 0 ? void 0 : event.srcElement))) {
4873
+ onClickOutside();
4857
4874
  }
4858
-
4859
- onToggleDropdown();
4860
- onClick(e);
4875
+ });
4876
+ var weekRange = selected ? createWeekRange(selected, weekStart) : undefined;
4877
+ var selectedRange = weekRange && {
4878
+ from: weekRange.start,
4879
+ to: weekRange.end
4861
4880
  };
4862
4881
 
4863
- var getCaptionColor = function getCaptionColor() {
4864
- if (selected) {
4865
- return EGGPLANT500;
4866
- }
4882
+ var handleSelect = function handleSelect(day) {
4883
+ var selectedDate = setToMidnight(day);
4867
4884
 
4868
- if (disabled) {
4869
- return GREY400;
4885
+ if (mode === CALENDAR_MODE.DAY) {
4886
+ onSelect(selectedDate);
4887
+ } else {
4888
+ var _weekRange = createWeekRange(selectedDate, weekStart);
4889
+
4890
+ onSelect(_weekRange.start);
4870
4891
  }
4871
4892
 
4872
- return undefined;
4893
+ setTimeout(function () {
4894
+ onClickOutside();
4895
+ }, 100);
4873
4896
  };
4874
4897
 
4875
- return React__default.createElement("li", {
4876
- className: classnames(styles$f['dropdown-list-item'], (_classNames = {}, _classNames[styles$f['dropdown-list-item--selected']] = selected, _classNames[styles$f['dropdown-list-item--disabled']] = disabled, _classNames)),
4877
- onClick: handleClick,
4878
- onKeyPress: handleClick,
4879
- role: "menuitem",
4898
+ if (!anchorNode) {
4899
+ return null;
4900
+ }
4901
+
4902
+ var anchorPosition = anchorNode.getBoundingClientRect();
4903
+ var calendarPosition = calculateCalendarPosition(position, anchorPosition, calendarRef === null || calendarRef === void 0 ? void 0 : calendarRef.getBoundingClientRect());
4904
+ return React__default.createElement(Portal, null, React__default.createElement("div", {
4905
+ className: style.overlayWrapper
4906
+ }, React__default.createElement("div", {
4907
+ className: style.overlay,
4908
+ ref: function ref(_ref2) {
4909
+ return setCalendarRef(_ref2);
4910
+ },
4911
+ style: _extends({}, calendarPosition, {
4912
+ zIndex: Z_INDEX_LAYERS.MODAL
4913
+ }),
4880
4914
  "data-testid": testId
4881
- }, prefix, React__default.createElement("div", {
4882
- className: styles$f['dropdown-list-item__content']
4883
- }, React__default.createElement(Stack, {
4884
- space: 4,
4885
- flex: [1]
4886
- }, children, caption && React__default.createElement(Text, {
4887
- as: "caption",
4888
- color: getCaptionColor()
4889
- }, caption))), suffix);
4915
+ }, React__default.createElement(DayPicker__default, {
4916
+ format: "MM/dd/yyyy",
4917
+ classNames: style,
4918
+ onDayClick: function onDayClick(day, activeModifiers) {
4919
+ var isDateDisabled = Object.keys(activeModifiers).find(function (modifier) {
4920
+ return modifier.includes('disabled');
4921
+ });
4922
+
4923
+ if (!Boolean(isDateDisabled)) {
4924
+ handleSelect(day);
4925
+ }
4926
+ },
4927
+ selectedDays: mode === CALENDAR_MODE.DAY ? selected : selectedRange,
4928
+ disabledDays: disabledDays,
4929
+ months: MONTH_NAMES,
4930
+ weekdaysLong: DAYS,
4931
+ initialMonth: selected,
4932
+ weekdaysShort: DAYS.map(function (day) {
4933
+ return day.substring(0, 2);
4934
+ }),
4935
+ showOutsideDays: mode === CALENDAR_MODE.WEEK,
4936
+ firstDayOfWeek: weekStart
4937
+ }))));
4890
4938
  };
4891
4939
 
4892
- var canInteractWithItem = function canInteractWithItem(child) {
4893
- var itemType = getItemType(child);
4940
+ var styles$j = {"dropdown-list":"_1v1df","dropdown-list__item--hover":"_eAjpa"};
4894
4941
 
4895
- if (itemType === 'DropdownListDivider') {
4896
- return false;
4942
+ var findNextActiveIndex = function findNextActiveIndex(items, startAt) {
4943
+ var startIndex = 0;
4944
+
4945
+ if (startAt !== null && startAt + 1 <= items.length) {
4946
+ startIndex = startAt + 1;
4897
4947
  }
4898
4948
 
4899
- return !child.props.disabled || false;
4900
- };
4949
+ var hasEnabledItems = items.slice(startIndex).some(function (item) {
4950
+ return !item.disabled;
4951
+ });
4901
4952
 
4902
- var getItemType = function getItemType(child) {
4903
- switch (child.type) {
4904
- case DropdownListDivider:
4905
- return 'DropdownListDivider';
4953
+ if (hasEnabledItems) {
4954
+ var _nextEnabledIndex = items.findIndex(function (item, index) {
4955
+ if (index < startIndex) {
4956
+ return false;
4957
+ }
4906
4958
 
4907
- case DropdownListItem:
4908
- return 'DropdownListItem';
4959
+ return !item.disabled;
4960
+ });
4909
4961
 
4910
- default:
4911
- throw new Error('DropdownList - dropdown items should be using DropdownListDivider or DropdownListItem components');
4962
+ return _nextEnabledIndex;
4912
4963
  }
4964
+
4965
+ var nextEnabledIndex = items.findIndex(function (item) {
4966
+ return !item.disabled;
4967
+ });
4968
+ return nextEnabledIndex >= 0 ? nextEnabledIndex : null;
4913
4969
  };
4970
+ var findPreviousEnabledIndex = function findPreviousEnabledIndex(items, startAt) {
4971
+ for (var i = startAt - 1; i >= 0; i--) {
4972
+ if (!items[i].disabled) {
4973
+ return i;
4974
+ }
4975
+ }
4914
4976
 
4915
- var DropdownList = function DropdownList(_ref) {
4916
- var testId = _ref.testId,
4917
- children = _ref.children;
4977
+ for (var _i = items.length - 1; _i > startAt - 1; _i--) {
4978
+ if (!items[_i].disabled) {
4979
+ return _i;
4980
+ }
4981
+ }
4918
4982
 
4919
- var _useDropdownContext = useDropdownContext(),
4920
- onToggleDropdown = _useDropdownContext.onToggleDropdown;
4983
+ return null;
4984
+ };
4921
4985
 
4922
- var items = React__default.Children.toArray(children).map(function (child) {
4923
- if (!React__default.isValidElement(child)) {
4924
- throw new Error('DropdownList - dropdown items should be using DropdownListDivider or DropdownListItem components');
4986
+ var useListKeyboardNavigation = function useListKeyboardNavigation(listItems, actions) {
4987
+ var _useState = React.useState(null),
4988
+ focusedItem = _useState[0],
4989
+ setFocusedItem = _useState[1];
4990
+
4991
+ var focusOnNextItem = function focusOnNextItem(callback) {
4992
+ var nextFocusItem = findNextActiveIndex(listItems, focusedItem);
4993
+ setFocusedItem(nextFocusItem);
4994
+ callback(nextFocusItem);
4995
+ };
4996
+
4997
+ var focusOnPrevItem = function focusOnPrevItem(callback) {
4998
+ var prevFocusItem = findPreviousEnabledIndex(listItems, focusedItem || 0);
4999
+ setFocusedItem(prevFocusItem);
5000
+ callback(prevFocusItem);
5001
+ };
5002
+
5003
+ var setFocusOnItem = function setFocusOnItem(index) {
5004
+ if (index < 0) {
5005
+ setFocusedItem(null);
5006
+ return;
4925
5007
  }
4926
5008
 
4927
- return {
4928
- disabled: !canInteractWithItem(child),
4929
- onClick: child.props.onClick
4930
- };
4931
- });
5009
+ if (listItems[index].disabled) {
5010
+ return;
5011
+ }
4932
5012
 
4933
- var _useListKeyboardNavig = useListKeyboardNavigation(items, {
4934
- onPressEnter: onToggleDropdown
4935
- }),
4936
- focusedItem = _useListKeyboardNavig.focusedItem,
4937
- setFocusOnItem = _useListKeyboardNavig.setFocusOnItem;
5013
+ setFocusedItem(index);
5014
+ };
4938
5015
 
4939
- return React__default.createElement("ul", {
4940
- className: styles$d['dropdown-list'],
4941
- "data-testid": testId
4942
- }, React__default.Children.map(children, function (child, index) {
4943
- var _classNames;
5016
+ var handleKeyPress = React.useCallback(function (event) {
5017
+ if (event.key === 'ArrowDown') {
5018
+ focusOnNextItem(function (focusItem) {
5019
+ var _actions$onNavigate;
4944
5020
 
4945
- return React__default.createElement("div", {
4946
- key: index,
4947
- className: classnames(styles$d['dropdown-list__item'], (_classNames = {}, _classNames[styles$d['dropdown-list__item--hover']] = focusedItem === index, _classNames)),
4948
- onMouseEnter: function onMouseEnter() {
4949
- return setFocusOnItem(index);
4950
- }
4951
- }, child);
4952
- }));
4953
- };
5021
+ return actions === null || actions === void 0 ? void 0 : (_actions$onNavigate = actions.onNavigate) === null || _actions$onNavigate === void 0 ? void 0 : _actions$onNavigate.call(actions, focusItem);
5022
+ });
5023
+ }
4954
5024
 
4955
- var KebabMenu = function KebabMenu(_ref) {
4956
- var actions = _ref.actions;
4957
- return React__default.createElement(Dropdown, {
4958
- trigger: React__default.createElement(Button$1, {
4959
- theme: "link-icon"
4960
- }, React__default.createElement(IconEllipsisV, null)),
4961
- alignment: "right"
4962
- }, React__default.createElement(DropdownList, null, actions.map(function (action) {
4963
- return React__default.createElement(DropdownListItem, {
4964
- onClick: action.onAction,
4965
- key: action.action
4966
- }, action.label);
4967
- })));
5025
+ if (event.key === 'ArrowUp') {
5026
+ focusOnPrevItem(function (focusItem) {
5027
+ var _actions$onNavigate2;
5028
+
5029
+ return actions === null || actions === void 0 ? void 0 : (_actions$onNavigate2 = actions.onNavigate) === null || _actions$onNavigate2 === void 0 ? void 0 : _actions$onNavigate2.call(actions, focusItem);
5030
+ });
5031
+ }
5032
+
5033
+ if (event.key === 'Enter' && focusedItem !== null) {
5034
+ var _actions$onPressEnter;
5035
+
5036
+ var onClick = listItems[focusedItem].onClick;
5037
+ onClick(event);
5038
+ actions && ((_actions$onPressEnter = actions.onPressEnter) === null || _actions$onPressEnter === void 0 ? void 0 : _actions$onPressEnter.call(actions));
5039
+ }
5040
+
5041
+ event.preventDefault();
5042
+ }, [focusedItem]);
5043
+ useKeyPress(['ArrowDown', 'ArrowUp', 'Enter'], handleKeyPress);
5044
+ return {
5045
+ focusedItem: focusedItem,
5046
+ setFocusOnItem: setFocusOnItem
5047
+ };
4968
5048
  };
4969
5049
 
4970
- var styles$h = {"data-table-cell":"_2Ybjx","data-table-cell--no-padding":"_5KXHH","data-table-cell--vertical-border":"_2-I0j","data-table-cell--invalid":"_D73Vx","data-table-cell__content":"_3A9-M","data-table-cell__content--right-align":"_17Km7","data-table-cell__content--with-error":"_2c6KQ","data-table-cell__error-icon":"_2hIl3","data-table-cell__error-icon--right-align":"_8Uhyd","data-table-cell__error-icon--left-align":"_3X51R"};
5050
+ var styles$k = {"dropdown-list-divider":"_3x1F6"};
4971
5051
 
4972
- var styles$i = {"overlay":"_2puqJ","overlay--after-open":"_1167h","overlay--before-close":"_t_t7L","content":"_wQQ_2","content--after-open":"_3jwux","content--before-close":"_2c2QP"};
5052
+ var DropdownListDivider = function DropdownListDivider(_ref) {
5053
+ var testId = _ref.testId;
5054
+ return React__default.createElement("div", {
5055
+ className: styles$k['dropdown-list-divider'],
5056
+ "data-testid": testId
5057
+ });
5058
+ };
4973
5059
 
4974
- var styles$j = {"header":"_36nxW","sub-header":"_2XwRD"};
5060
+ var styles$l = {"dropdown-list-item":"_B3_I5","dropdown-list-item--selected":"_1mr1h","dropdown-list-item__content":"_2b7Fg","dropdown-list-item--disabled":"_2l0Cb"};
4975
5061
 
4976
- var ModalHeader = function ModalHeader(_ref) {
4977
- var header = _ref.header,
4978
- subHeader = _ref.subHeader,
4979
- onClose = _ref.onClose,
4980
- loading = _ref.loading;
4981
- return React__default.createElement(Stack, {
4982
- space: 12
4983
- }, React__default.createElement(Inline, {
4984
- flex: [1],
4985
- alignItems: "center"
4986
- }, React__default.createElement("span", {
4987
- className: styles$j['header']
4988
- }, header), onClose && React__default.createElement(Button$1, {
4989
- theme: "link-icon",
4990
- onClick: onClose,
4991
- disabled: loading
4992
- }, React__default.createElement(IconTimes, null))), subHeader && React__default.createElement("div", {
4993
- className: styles$j['sub-header']
4994
- }, subHeader));
5062
+ var TEXT_TYPES = {
5063
+ CAPTION: 'caption',
5064
+ BODY: 'body',
5065
+ H1: 'h1',
5066
+ H2: 'h2',
5067
+ H3: 'h3',
5068
+ H4: 'h4',
5069
+ H5: 'h5',
5070
+ INSIGHT: 'insight'
5071
+ };
5072
+ var FONT_EMPHASIS = {
5073
+ BOLD: 'bold',
5074
+ ITALIC: 'italic',
5075
+ UNDERLINE: 'underline',
5076
+ MONOSPACE: 'monospace'
5077
+ };
5078
+ var ALIGNMENTS = {
5079
+ LEFT: 'left',
5080
+ RIGHT: 'right',
5081
+ CENTER: 'center',
5082
+ JUSTIFY: 'justify'
4995
5083
  };
4996
5084
 
4997
- var Modal = function Modal(_ref) {
4998
- var children = _ref.children,
4999
- header = _ref.header,
5000
- subHeader = _ref.subHeader,
5001
- onClose = _ref.onClose,
5002
- loading = _ref.loading,
5003
- _ref$zIndex = _ref.zIndex,
5004
- zIndex = _ref$zIndex === void 0 ? Z_INDEX_LAYERS.MODAL : _ref$zIndex,
5005
- rootElementId = _ref.rootElementId,
5006
- _ref$width = _ref.width,
5007
- width = _ref$width === void 0 ? 500 : _ref$width,
5008
- height = _ref.height,
5009
- maxWidth = _ref.maxWidth,
5010
- _ref$shouldReturnFocu = _ref.shouldReturnFocusAfterClose,
5011
- shouldReturnFocusAfterClose = _ref$shouldReturnFocu === void 0 ? true : _ref$shouldReturnFocu,
5012
- testId = _ref.testId;
5013
- var style = {
5014
- content: {
5015
- width: width,
5016
- height: height,
5017
- maxWidth: maxWidth
5018
- },
5019
- overlay: {
5020
- zIndex: zIndex
5021
- }
5085
+ var styles$m = {"text":"_3CIA3","text__body":"_1nnj8","text__caption":"_37K6o","text__insight":"_avqxy","text--bold":"_2TG6E","text--italic":"_2hlsn","text--underline":"_1Pjo6","text--monospace":"_eDdDI","text--align-left":"_2gNwS","text--align-right":"_ufv1W","text--align-center":"_2WMN6","text--align-justify":"_2iH-J"};
5086
+
5087
+ var _excluded$2g = ["children", "as", "emphasis", "alignment", "color", "testId"];
5088
+
5089
+ var Text = function Text(_ref) {
5090
+ var _classnames;
5091
+
5092
+ var children = _ref.children,
5093
+ _ref$as = _ref.as,
5094
+ as = _ref$as === void 0 ? TEXT_TYPES.BODY : _ref$as,
5095
+ emphasis = _ref.emphasis,
5096
+ alignment = _ref.alignment,
5097
+ color = _ref.color,
5098
+ testId = _ref.testId,
5099
+ positionProps = _objectWithoutPropertiesLoose(_ref, _excluded$2g);
5100
+
5101
+ var positionStyles = usePositionStyles(positionProps);
5102
+ var elementProps = {
5103
+ style: _extends({
5104
+ color: color
5105
+ }, positionStyles),
5106
+ className: classnames(styles$m['text'], (_classnames = {}, _classnames[styles$m['text--bold']] = emphasis === null || emphasis === void 0 ? void 0 : emphasis.includes(FONT_EMPHASIS.BOLD), _classnames[styles$m['text--italic']] = emphasis === null || emphasis === void 0 ? void 0 : emphasis.includes(FONT_EMPHASIS.ITALIC), _classnames[styles$m['text--underline']] = emphasis === null || emphasis === void 0 ? void 0 : emphasis.includes(FONT_EMPHASIS.UNDERLINE), _classnames[styles$m['text--monospace']] = emphasis === null || emphasis === void 0 ? void 0 : emphasis.includes(FONT_EMPHASIS.MONOSPACE), _classnames[styles$m['text--align-left']] = alignment === ALIGNMENTS.LEFT, _classnames[styles$m['text--align-right']] = alignment === ALIGNMENTS.RIGHT, _classnames[styles$m['text--align-center']] = alignment === ALIGNMENTS.CENTER, _classnames[styles$m['text--align-justify']] = alignment === ALIGNMENTS.JUSTIFY, _classnames[styles$m['text__body']] = as === TEXT_TYPES.BODY, _classnames[styles$m['text__insight']] = as === TEXT_TYPES.INSIGHT, _classnames[styles$m['text__caption']] = as === TEXT_TYPES.CAPTION, _classnames)),
5107
+ 'data-testid': testId
5022
5108
  };
5023
- return React__default.createElement(ReactModal, {
5024
- isOpen: true,
5025
- testId: testId,
5026
- shouldCloseOnEsc: true,
5027
- shouldCloseOnOverlayClick: false,
5028
- shouldReturnFocusAfterClose: shouldReturnFocusAfterClose,
5029
- onRequestClose: onClose && !loading ? onClose : undefined,
5030
- style: style,
5031
- closeTimeoutMS: 200,
5032
- contentLabel: "Modal",
5033
- appElement: rootElementId && document.getElementById(rootElementId) || undefined,
5034
- overlayClassName: {
5035
- base: styles$i['overlay'],
5036
- afterOpen: styles$i['overlay--after-open'],
5037
- beforeClose: styles$i['overlay--before-close']
5038
- },
5039
- className: {
5040
- base: styles$i['content'],
5041
- afterOpen: styles$i['content--after-open'],
5042
- beforeClose: styles$i['content--before-close']
5043
- }
5044
- }, React__default.createElement(ModalHeader, {
5045
- header: header,
5046
- subHeader: subHeader,
5047
- onClose: onClose,
5048
- loading: loading
5049
- }), children);
5109
+ var pTypes = [TEXT_TYPES.BODY, TEXT_TYPES.CAPTION, TEXT_TYPES.INSIGHT];
5110
+ var element = pTypes.includes(as) ? 'p' : as;
5111
+ return React__default.createElement(element, elementProps, children);
5050
5112
  };
5051
5113
 
5052
- Modal.setAppElement = function (rootElement) {
5053
- ReactModal.setAppElement(rootElement);
5114
+ var Bold = function Bold(_ref) {
5115
+ var children = _ref.children;
5116
+ return React__default.createElement("span", {
5117
+ className: classnames(styles$m['text--bold'], styles$m['text'])
5118
+ }, children);
5054
5119
  };
5055
5120
 
5056
- var THRESHOLD = 20;
5057
- var useScrollShadow = function useScrollShadow() {
5058
- var ref = React.useRef(null);
5121
+ var Underline = function Underline(_ref) {
5122
+ var children = _ref.children;
5123
+ return React__default.createElement("span", {
5124
+ className: classnames(styles$m['text--underline'], styles$m['text'])
5125
+ }, children);
5126
+ };
5059
5127
 
5060
- var _useState = React.useState(false),
5061
- showScrollShadow = _useState[0],
5062
- setShowScrollShadow = _useState[1];
5128
+ var Italic = function Italic(_ref) {
5129
+ var children = _ref.children;
5130
+ return React__default.createElement("span", {
5131
+ className: classnames(styles$m['text--italic'], styles$m['text'])
5132
+ }, children);
5133
+ };
5063
5134
 
5064
- React.useEffect(function () {
5065
- if (!ref.current) {
5066
- return;
5067
- }
5135
+ var WHITE = '#ffffff';
5136
+ var EGGPLANT200 = '#d3dbf4';
5137
+ var EGGPLANT300 = '#a7b7ea';
5138
+ var EGGPLANT400 = '#6d87dd';
5139
+ var EGGPLANT500 = '#6179c6';
5140
+ var EGGPLANT600 = '#415184';
5141
+ var RADISH400 = '#e76767';
5142
+ var GREY100 = '#F3F3F3';
5143
+ var GREY200 = '#D5D5D5';
5144
+ var GREY300 = '#949494';
5145
+ var GREY400 = '#767676';
5146
+ var GREY500 = '#464646';
5068
5147
 
5069
- var modalBody = ref.current;
5148
+ var DropdownListItem = function DropdownListItem(_ref) {
5149
+ var _classNames;
5070
5150
 
5071
- if (modalBody.offsetHeight > THRESHOLD) {
5072
- setShowScrollShadow(true);
5151
+ var onClick = _ref.onClick,
5152
+ prefix = _ref.prefix,
5153
+ suffix = _ref.suffix,
5154
+ caption = _ref.caption,
5155
+ selected = _ref.selected,
5156
+ disabled = _ref.disabled,
5157
+ testId = _ref.testId,
5158
+ children = _ref.children;
5159
+
5160
+ var _useDropdownContext = useDropdownContext(),
5161
+ onToggleDropdown = _useDropdownContext.onToggleDropdown;
5162
+
5163
+ var handleClick = function handleClick(e) {
5164
+ e.stopPropagation();
5165
+
5166
+ if (disabled) {
5167
+ return;
5073
5168
  }
5074
- }, []);
5075
- return {
5076
- ref: ref,
5077
- showScrollShadow: showScrollShadow
5078
- };
5079
- };
5080
5169
 
5081
- var styles$k = {"modal-body":"_2J-ku","modal-body--with-scroll-shadow":"_2ErCP"};
5170
+ onToggleDropdown();
5171
+ onClick(e);
5172
+ };
5082
5173
 
5083
- var ModalBody = function ModalBody(_ref) {
5084
- var _classNames;
5174
+ var getCaptionColor = function getCaptionColor() {
5175
+ if (selected) {
5176
+ return EGGPLANT500;
5177
+ }
5085
5178
 
5086
- var children = _ref.children,
5087
- testId = _ref.testId;
5179
+ if (disabled) {
5180
+ return GREY400;
5181
+ }
5088
5182
 
5089
- var _useScrollShadow = useScrollShadow(),
5090
- ref = _useScrollShadow.ref,
5091
- showScrollShadow = _useScrollShadow.showScrollShadow;
5183
+ return undefined;
5184
+ };
5092
5185
 
5093
- return React__default.createElement("div", {
5094
- className: classnames(styles$k['modal-body'], (_classNames = {}, _classNames[styles$k['modal-body--with-scroll-shadow']] = showScrollShadow, _classNames)),
5095
- ref: ref,
5186
+ return React__default.createElement("li", {
5187
+ className: classnames(styles$l['dropdown-list-item'], (_classNames = {}, _classNames[styles$l['dropdown-list-item--selected']] = selected, _classNames[styles$l['dropdown-list-item--disabled']] = disabled, _classNames)),
5188
+ onClick: handleClick,
5189
+ onKeyPress: handleClick,
5190
+ role: "menuitem",
5096
5191
  "data-testid": testId
5097
- }, children);
5192
+ }, prefix, React__default.createElement("div", {
5193
+ className: styles$l['dropdown-list-item__content']
5194
+ }, React__default.createElement(Stack, {
5195
+ space: 4,
5196
+ flex: [1]
5197
+ }, children, caption && React__default.createElement(Text, {
5198
+ as: "caption",
5199
+ color: getCaptionColor()
5200
+ }, caption))), suffix);
5098
5201
  };
5099
5202
 
5100
- var styles$l = {"modal-footer":"_LKOr5","tertiary-container":"_Qktd-"};
5101
-
5102
- var updateButtonProps = function updateButtonProps(button, newProps) {
5103
- if (!button) {
5104
- return null;
5105
- }
5203
+ var canInteractWithItem = function canInteractWithItem(child) {
5204
+ var itemType = getItemType(child);
5106
5205
 
5107
- if (button.type !== Button$1) {
5108
- return button;
5206
+ if (itemType === 'DropdownListDivider') {
5207
+ return false;
5109
5208
  }
5110
5209
 
5111
- return React__default.cloneElement(button, _extends({}, newProps));
5210
+ return !child.props.disabled || false;
5112
5211
  };
5113
5212
 
5114
- var ModalFooter = function ModalFooter(_ref) {
5115
- var children = _ref.children,
5116
- actions = _ref.actions,
5117
- testId = _ref.testId;
5213
+ var getItemType = function getItemType(child) {
5214
+ switch (child.type) {
5215
+ case DropdownListDivider:
5216
+ return 'DropdownListDivider';
5118
5217
 
5119
- if (actions) {
5120
- var _actions$primary, _actions$secondary, _actions$tertiary, _classnames;
5218
+ case DropdownListItem:
5219
+ return 'DropdownListItem';
5121
5220
 
5122
- var primaryButton = updateButtonProps(actions.primary, {
5123
- theme: (actions === null || actions === void 0 ? void 0 : (_actions$primary = actions.primary) === null || _actions$primary === void 0 ? void 0 : _actions$primary.props.theme) || 'primary',
5124
- size: BUTTON_SIZES.MIN_WIDTH_100
5125
- });
5126
- var secondaryButton = updateButtonProps(actions.secondary, {
5127
- theme: (actions === null || actions === void 0 ? void 0 : (_actions$secondary = actions.secondary) === null || _actions$secondary === void 0 ? void 0 : _actions$secondary.props.theme) || 'default',
5128
- size: BUTTON_SIZES.MIN_WIDTH_100
5129
- });
5130
- var tertiaryButton = updateButtonProps(actions.tertiary, {
5131
- theme: (actions === null || actions === void 0 ? void 0 : (_actions$tertiary = actions.tertiary) === null || _actions$tertiary === void 0 ? void 0 : _actions$tertiary.props.theme) || 'link-primary',
5132
- size: BUTTON_SIZES.MIN_WIDTH_100
5133
- });
5134
- return React__default.createElement(FooterContainer, {
5135
- testId: testId
5136
- }, React__default.createElement(Inline, {
5137
- justifyContent: "space-between"
5138
- }, React__default.createElement("div", {
5139
- className: classnames((_classnames = {}, _classnames[styles$l['tertiary-container']] = tertiaryButton && tertiaryButton.props.theme.startsWith('link'), _classnames))
5140
- }, tertiaryButton || React__default.createElement("div", null)), React__default.createElement(Inline, {
5141
- space: 12
5142
- }, secondaryButton, primaryButton)));
5221
+ default:
5222
+ throw new Error('DropdownList - dropdown items should be using DropdownListDivider or DropdownListItem components');
5143
5223
  }
5144
-
5145
- return React__default.createElement(FooterContainer, null, children);
5146
5224
  };
5147
5225
 
5148
- var FooterContainer = function FooterContainer(_ref2) {
5149
- var children = _ref2.children,
5150
- testId = _ref2.testId;
5151
- var childrenItens = React__default.Children.toArray(children);
5152
- var hasCustomAlignment = childrenItens.length === 1 && childrenItens[0].type === Inline;
5153
- return React__default.createElement("div", {
5154
- className: styles$l['modal-footer'],
5155
- "data-testid": testId
5156
- }, React__default.createElement(Inline, {
5157
- justifyContent: "end",
5158
- space: 12,
5159
- flex: hasCustomAlignment ? [1] : undefined
5160
- }, children));
5226
+ var calculateScrollYPosition = function calculateScrollYPosition(newFocusItem, lastFocusItem, paneScrollTop, maxPaneHeight, elementYPosition) {
5227
+ var directionCoeff = !lastFocusItem || newFocusItem > lastFocusItem ? -1 * maxPaneHeight : 0;
5228
+
5229
+ if (elementYPosition > paneScrollTop + maxPaneHeight || elementYPosition < paneScrollTop) {
5230
+ return elementYPosition + directionCoeff;
5231
+ }
5232
+
5233
+ return null;
5161
5234
  };
5162
5235
 
5163
- var styles$m = {"container":"_v1b-5","wrapper":"_3mrLu","interactionDisabled":"_1J9dh","DayPicker-Day":"_8FcQE","navBar":"_1SPuq","todayButton":"_24FJ6","navButtonInteractionDisabled":"_Oxdm9","navButtonPrev":"_20uqc","navButtonNext":"_3C53z","months":"_M_eHz","month":"_3RPpJ","caption":"_1FXNw","weekdays":"_3KcRU","weekdaysRow":"_1fO_e","weekday":"_c1Y-X","body":"_34mA1","week":"_1PmqZ","day":"_1AWH2","disabled":"_3vJkw","selected":"_1DR0N","outside":"_276GV","footer":"_2M5xr","today":"_3N6fj","overlayWrapper":"_3Zqgu","overlay":"_20Ncd","weekNumber":"_2hb-S"};
5236
+ var DropdownList = function DropdownList(_ref) {
5237
+ var testId = _ref.testId,
5238
+ children = _ref.children,
5239
+ highlightItemIndex = _ref.highlightItemIndex;
5164
5240
 
5165
- var styles$n = {"container":"_okDvi","wrapper":"_17XdD","interactionDisabled":"_1O7OT","DayPicker-Day":"_3noGA","navBar":"_1Hl3Q","todayButton":"_m0Vs9","navButtonInteractionDisabled":"_1ULWH","navButtonPrev":"_3gjq8","navButtonNext":"_1m-Kd","months":"_Fq6Xh","month":"_3i0Oo","caption":"_36X9Y","weekdays":"_1aWPn","weekdaysRow":"_3HXCK","weekday":"_t-ctd","body":"_XAbiR","week":"_3Nwep","day":"_3nNcG","disabled":"_1M4ZF","selected":"_2PEs8","outside":"_1PIJa","footer":"_2T_z1","today":"_1hVM6","overlayWrapper":"_1L-hI","overlay":"_dDPZb","weekNumber":"_1alhT"};
5241
+ var _useDropdownContext = useDropdownContext(),
5242
+ onToggleDropdown = _useDropdownContext.onToggleDropdown;
5166
5243
 
5167
- function parseDate(str, format, locale) {
5168
- var parsed = dateFnsParse(str, format, new Date(), {
5169
- locale: locale
5244
+ var items = React__default.Children.toArray(children).map(function (child) {
5245
+ if (!React__default.isValidElement(child)) {
5246
+ throw new Error('DropdownList - dropdown items should be using DropdownListDivider or DropdownListItem components');
5247
+ }
5248
+
5249
+ return {
5250
+ disabled: !canInteractWithItem(child),
5251
+ onClick: child.props.onClick
5252
+ };
5170
5253
  });
5254
+ var listRef = React.useRef(null);
5171
5255
 
5172
- if (str.length === format.length && DayPicker.DateUtils.isDate(parsed)) {
5173
- return parsed;
5174
- }
5256
+ var scrollToItem = function scrollToItem(newFocusItem) {
5257
+ if (listRef.current && newFocusItem !== null && listRef.current.parentNode) {
5258
+ var element = listRef.current.querySelector(":nth-child(" + (newFocusItem + 1) + ")");
5259
+ var parentList = listRef.current.parentNode;
5260
+ var scrollYPosition = calculateScrollYPosition(newFocusItem, focusedItem || 0, parentList.scrollTop, 354, element.offsetTop);
5175
5261
 
5176
- return undefined;
5177
- }
5178
- function formatDate(date, format, locale) {
5179
- return dateFnsFormat(date, format, {
5180
- locale: locale
5181
- });
5182
- }
5183
- function setToMidnight(date) {
5184
- return date && startOfDay(date);
5185
- }
5186
- function getStartOfWeek(date, weekIndex) {
5187
- var d = new Date(date);
5188
- var firstDay = d.getDate() - d.getDay() + weekIndex;
5189
- var firstDayAdjusted = firstDay > d.getDate() ? firstDay - 7 : firstDay;
5190
- return new Date(d.setDate(firstDayAdjusted));
5191
- }
5192
- function getEndOfWeek(date, weekIndex) {
5193
- var startOfWeek = getStartOfWeek(date, weekIndex);
5194
- var endDay = startOfWeek.getDate() + 6;
5195
- return new Date(startOfWeek.setDate(endDay));
5196
- }
5197
- function createWeekRange(date, weekStart) {
5198
- return {
5199
- start: getStartOfWeek(date, weekStart),
5200
- end: getEndOfWeek(date, weekStart)
5262
+ if (scrollYPosition !== null) {
5263
+ parentList.scrollTo(0, scrollYPosition);
5264
+ }
5265
+ }
5201
5266
  };
5202
- }
5203
- var DAYS = [getLocalizedString('time.sunday'), getLocalizedString('time.monday'), getLocalizedString('time.tuesday'), getLocalizedString('time.wednesday'), getLocalizedString('time.thursday'), getLocalizedString('time.friday'), getLocalizedString('time.saturday')];
5204
- var MONTH_NAMES = [getLocalizedString('time.january'), getLocalizedString('time.february'), getLocalizedString('time.march'), getLocalizedString('time.april'), getLocalizedString('time.may'), getLocalizedString('time.june'), getLocalizedString('time.july'), getLocalizedString('time.august'), getLocalizedString('time.september'), getLocalizedString('time.october'), getLocalizedString('time.november'), getLocalizedString('time.december')];
5205
5267
 
5206
- var CALENDAR_MODE = {
5207
- DAY: 'day',
5208
- WEEK: 'week'
5209
- };
5210
- var CALENDAR_PLACEMENT = {
5211
- BOTTOM: 'bottom',
5212
- TOP: 'top'
5268
+ var _useListKeyboardNavig = useListKeyboardNavigation(items, {
5269
+ onPressEnter: onToggleDropdown,
5270
+ onNavigate: scrollToItem
5271
+ }),
5272
+ focusedItem = _useListKeyboardNavig.focusedItem,
5273
+ setFocusOnItem = _useListKeyboardNavig.setFocusOnItem;
5274
+
5275
+ React.useEffect(function () {
5276
+ if (highlightItemIndex !== undefined) {
5277
+ setFocusOnItem(highlightItemIndex);
5278
+
5279
+ if (highlightItemIndex >= 0) {
5280
+ scrollToItem(highlightItemIndex);
5281
+ }
5282
+ }
5283
+ }, [highlightItemIndex]);
5284
+ return React__default.createElement("ul", {
5285
+ className: styles$j['dropdown-list'],
5286
+ "data-testid": testId,
5287
+ ref: listRef
5288
+ }, React__default.Children.map(children, function (child, index) {
5289
+ var _classNames;
5290
+
5291
+ return React__default.createElement("div", {
5292
+ key: index,
5293
+ className: classnames(styles$j['dropdown-list__item'], (_classNames = {}, _classNames[styles$j['dropdown-list__item--hover']] = focusedItem === index, _classNames)),
5294
+ onMouseEnter: function onMouseEnter() {
5295
+ return setFocusOnItem(index);
5296
+ }
5297
+ }, child);
5298
+ }));
5213
5299
  };
5214
5300
 
5215
- var calculateCalendarPosition = function calculateCalendarPosition(placement, anchorPosition, calendarDimensions) {
5216
- if (!calendarDimensions) {
5217
- return {
5218
- left: 0,
5219
- top: 0
5220
- };
5221
- }
5301
+ var styles$n = {"label":"_h724f","label--truncate":"_1VUoF"};
5222
5302
 
5223
- var horizontalPosition = getHorizontalPosition(anchorPosition, calendarDimensions);
5224
- var verticalPosition = getVerticalPosition(anchorPosition, placement, calendarDimensions);
5225
- return _extends({}, horizontalPosition, verticalPosition);
5303
+ var isEllipsisActive = function isEllipsisActive(e) {
5304
+ return e.offsetWidth < e.scrollWidth;
5226
5305
  };
5227
5306
 
5228
- var getHorizontalPosition = function getHorizontalPosition(anchorPosition, calendarDimensions) {
5229
- var innerWidth = window.innerWidth;
5230
- var calendarRight = anchorPosition.left + calendarDimensions.width;
5307
+ var useLabelTooltip = function useLabelTooltip(labelId, tooltipContent, truncate) {
5308
+ var _useState = React.useState(false),
5309
+ showTooltip = _useState[0],
5310
+ setShowTooltip = _useState[1];
5231
5311
 
5232
- if (innerWidth > calendarRight + BUFFER) {
5233
- return {
5234
- left: anchorPosition.left
5235
- };
5236
- }
5312
+ var shouldTruncate = typeof tooltipContent === 'string' && truncate;
5313
+ var labelElement = document.getElementById(labelId);
5314
+ var isHidden = labelElement && labelElement.offsetParent === null;
5315
+ var handleApplyTooltip = React.useCallback(function () {
5316
+ if (!shouldTruncate) {
5317
+ return;
5318
+ }
5319
+
5320
+ var labelElement = document.getElementById(labelId);
5321
+
5322
+ if (!labelElement) {
5323
+ return;
5324
+ }
5325
+
5326
+ var shouldShowTooltip = isEllipsisActive(labelElement);
5237
5327
 
5328
+ if (showTooltip !== shouldShowTooltip) {
5329
+ setShowTooltip(shouldShowTooltip);
5330
+ }
5331
+ }, [shouldTruncate, isHidden]);
5332
+ React.useEffect(function () {
5333
+ var onWindowResize = lodashEs.debounce(handleApplyTooltip, 300);
5334
+ window.addEventListener('resize', onWindowResize);
5335
+ return function () {
5336
+ return window.removeEventListener('resize', onWindowResize);
5337
+ };
5338
+ }, [handleApplyTooltip]);
5339
+ React.useLayoutEffect(handleApplyTooltip, [handleApplyTooltip]);
5238
5340
  return {
5239
- left: anchorPosition.right - calendarDimensions.width
5341
+ showTooltip: showTooltip,
5342
+ shouldTruncate: shouldTruncate
5240
5343
  };
5241
5344
  };
5242
5345
 
5243
- var getVerticalPosition = function getVerticalPosition(anchorPosition, placement, calendarDimensions) {
5244
- var calendarTopAboveTrigger = anchorPosition.top - calendarDimensions.height - PADDING;
5245
- var calendarTopBelowTrigger = anchorPosition.bottom + PADDING;
5346
+ var Label = function Label(_ref) {
5347
+ var _classNames;
5246
5348
 
5247
- if (placement === CALENDAR_PLACEMENT.TOP) {
5248
- if (calendarTopAboveTrigger < 0) {
5249
- return {
5250
- top: anchorPosition.bottom + PADDING
5251
- };
5252
- }
5349
+ var htmlFor = _ref.htmlFor,
5350
+ children = _ref.children,
5351
+ _ref$truncate = _ref.truncate,
5352
+ truncate = _ref$truncate === void 0 ? true : _ref$truncate;
5353
+ var labelId = "label-" + htmlFor;
5253
5354
 
5254
- return {
5255
- top: calendarTopAboveTrigger + window.scrollY
5256
- };
5257
- } else {
5258
- if (calendarTopBelowTrigger + calendarDimensions.height > window.innerHeight) {
5259
- return {
5260
- top: calendarTopAboveTrigger + window.scrollY
5261
- };
5262
- }
5355
+ var _useLabelTooltip = useLabelTooltip(labelId, children, truncate),
5356
+ showTooltip = _useLabelTooltip.showTooltip,
5357
+ shouldTruncate = _useLabelTooltip.shouldTruncate;
5263
5358
 
5264
- return {
5265
- top: calendarTopBelowTrigger + window.scrollY
5266
- };
5359
+ var LabelElement = React__default.createElement("label", {
5360
+ htmlFor: htmlFor,
5361
+ id: labelId,
5362
+ className: classnames(styles$n['label'], (_classNames = {}, _classNames[styles$n['label--truncate']] = shouldTruncate, _classNames))
5363
+ }, children);
5364
+
5365
+ if (showTooltip) {
5366
+ return React__default.createElement(Tooltip$1, {
5367
+ overlay: children,
5368
+ placement: "top"
5369
+ }, LabelElement);
5267
5370
  }
5371
+
5372
+ return LabelElement;
5268
5373
  };
5269
5374
 
5270
- var Calendar = function Calendar(_ref) {
5271
- var _ref$mode = _ref.mode,
5272
- mode = _ref$mode === void 0 ? CALENDAR_MODE.DAY : _ref$mode,
5273
- _ref$position = _ref.position,
5274
- position = _ref$position === void 0 ? CALENDAR_PLACEMENT.BOTTOM : _ref$position,
5275
- _ref$weekStart = _ref.weekStart,
5276
- weekStart = _ref$weekStart === void 0 ? 0 : _ref$weekStart,
5277
- selected = _ref.selected,
5278
- onSelect = _ref.onSelect,
5279
- onClickOutside = _ref.onClickOutside,
5280
- disabledDays = _ref.disabledDays,
5281
- anchorRef = _ref.anchorRef,
5282
- testId = _ref.testId;
5375
+ var styles$o = {"caption":"_1DWBq"};
5283
5376
 
5284
- var _useState = React.useState(null),
5285
- calendarRef = _useState[0],
5286
- setCalendarRef = _useState[1];
5377
+ var Caption = function Caption(_ref) {
5378
+ var fieldId = _ref.fieldId,
5379
+ children = _ref.children;
5380
+ return React__default.createElement("div", {
5381
+ id: fieldId && fieldId + "-describer",
5382
+ className: styles$o['caption']
5383
+ }, children);
5384
+ };
5287
5385
 
5288
- var style = mode === CALENDAR_MODE.DAY ? styles$m : styles$n;
5289
- var anchorNode = anchorRef.current;
5290
- useOnClickOutside({
5291
- current: calendarRef
5292
- }, function (event) {
5293
- var _anchorRef$current;
5386
+ var styles$p = {"error-message":"_nZ2MD"};
5294
5387
 
5295
- if (!((_anchorRef$current = anchorRef.current) !== null && _anchorRef$current !== void 0 && _anchorRef$current.contains(event === null || event === void 0 ? void 0 : event.srcElement))) {
5296
- onClickOutside();
5297
- }
5298
- });
5299
- var weekRange = selected ? createWeekRange(selected, weekStart) : undefined;
5300
- var selectedRange = weekRange && {
5301
- from: weekRange.start,
5302
- to: weekRange.end
5303
- };
5388
+ var ErrorMessage = function ErrorMessage(_ref) {
5389
+ var fieldId = _ref.fieldId,
5390
+ children = _ref.children,
5391
+ testId = _ref.testId;
5392
+ return React__default.createElement("div", {
5393
+ id: fieldId && fieldId + "-error-message",
5394
+ className: styles$p['error-message'],
5395
+ "data-testid": testId
5396
+ }, React__default.createElement(Inline, {
5397
+ space: 8,
5398
+ alignItems: "center"
5399
+ }, React__default.createElement(IconTimesOctagon, {
5400
+ color: RADISH400,
5401
+ size: "medium"
5402
+ }), children));
5403
+ };
5304
5404
 
5305
- var handleSelect = function handleSelect(day) {
5306
- var selectedDate = setToMidnight(day);
5405
+ var Field = function Field(_ref) {
5406
+ var id = _ref.id,
5407
+ label = _ref.label,
5408
+ caption = _ref.caption,
5409
+ error = _ref.error,
5410
+ children = _ref.children;
5411
+ var shouldRenderLabel = label || typeof label === 'string';
5412
+ return React__default.createElement(Stack, {
5413
+ space: 8,
5414
+ flexItems: true
5415
+ }, shouldRenderLabel && React__default.createElement(Label, {
5416
+ htmlFor: id
5417
+ }, label), children, caption && React__default.createElement(Caption, {
5418
+ fieldId: id
5419
+ }, caption), error && React__default.createElement(ErrorMessage, {
5420
+ fieldId: id
5421
+ }, error));
5422
+ };
5307
5423
 
5308
- if (mode === CALENDAR_MODE.DAY) {
5309
- onSelect(selectedDate);
5310
- } else {
5311
- var _weekRange = createWeekRange(selectedDate, weekStart);
5424
+ var Context$1 = React.createContext({});
5425
+ var useFormContext = function useFormContext() {
5426
+ var context = React.useContext(Context$1);
5427
+ return context || {};
5428
+ };
5312
5429
 
5313
- onSelect(_weekRange.start);
5314
- }
5430
+ var useFieldId = function useFieldId(_ref) {
5431
+ var name = _ref.name,
5432
+ inputId = _ref.id;
5433
+ var id = React.useMemo(function () {
5434
+ return inputId ? inputId : name + "-" + Math.random();
5435
+ }, [inputId, name]);
5436
+ return id;
5437
+ };
5315
5438
 
5316
- setTimeout(function () {
5317
- onClickOutside();
5318
- }, 100);
5319
- };
5439
+ var getFormikState = function getFormikState(name, formik) {
5440
+ if (formik === undefined) {
5441
+ return null;
5442
+ }
5320
5443
 
5321
- if (!anchorNode) {
5444
+ var formikPath = getFormikArrayPath(name);
5445
+
5446
+ if (formikPath.length === 0) {
5322
5447
  return null;
5323
5448
  }
5324
5449
 
5325
- var anchorPosition = anchorNode.getBoundingClientRect();
5326
- var calendarPosition = calculateCalendarPosition(position, anchorPosition, calendarRef === null || calendarRef === void 0 ? void 0 : calendarRef.getBoundingClientRect());
5327
- return React__default.createElement(Portal, null, React__default.createElement("div", {
5328
- className: style.overlayWrapper
5329
- }, React__default.createElement("div", {
5330
- className: style.overlay,
5331
- ref: function ref(_ref2) {
5332
- return setCalendarRef(_ref2);
5450
+ var formikLatestLevel = formikPath.reduce(function (acc, path) {
5451
+ var _acc$touched, _acc$error, _acc$value;
5452
+
5453
+ return {
5454
+ touched: (_acc$touched = acc.touched) === null || _acc$touched === void 0 ? void 0 : _acc$touched[path],
5455
+ error: (_acc$error = acc.error) === null || _acc$error === void 0 ? void 0 : _acc$error[path],
5456
+ value: (_acc$value = acc.value) === null || _acc$value === void 0 ? void 0 : _acc$value[path]
5457
+ };
5458
+ }, {
5459
+ touched: formik.touched,
5460
+ error: formik.errors,
5461
+ value: formik.values
5462
+ });
5463
+ return {
5464
+ error: formikLatestLevel.touched ? formikLatestLevel.error : undefined,
5465
+ value: formikLatestLevel.value
5466
+ };
5467
+ };
5468
+ var getFormikArrayPath = function getFormikArrayPath(name) {
5469
+ return name.split(/[^a-zA-Z0-9]/).filter(Boolean);
5470
+ };
5471
+
5472
+ var useFieldControllers = function useFieldControllers(_ref) {
5473
+ var name = _ref.name,
5474
+ inputId = _ref.id,
5475
+ value = _ref.value,
5476
+ _onChange = _ref.onChange,
5477
+ _onBlur = _ref.onBlur,
5478
+ _onFocus = _ref.onFocus,
5479
+ _onKeyDown = _ref.onKeyDown,
5480
+ error = _ref.error,
5481
+ _ref$type = _ref.type,
5482
+ type = _ref$type === void 0 ? 'text' : _ref$type;
5483
+
5484
+ var _useFormContext = useFormContext(),
5485
+ formik = _useFormContext.formik;
5486
+
5487
+ var id = useFieldId({
5488
+ name: name,
5489
+ id: inputId
5490
+ });
5491
+ var controllers = {
5492
+ id: id,
5493
+ error: error,
5494
+ value: value,
5495
+ onChange: function onChange(e) {
5496
+ return _onChange && _onChange(e.target.value);
5333
5497
  },
5334
- style: _extends({}, calendarPosition, {
5335
- zIndex: Z_INDEX_LAYERS.MODAL
5336
- }),
5337
- "data-testid": testId
5338
- }, React__default.createElement(DayPicker__default, {
5339
- format: "MM/dd/yyyy",
5340
- classNames: style,
5341
- onDayClick: function onDayClick(day, activeModifiers) {
5342
- var isDateDisabled = Object.keys(activeModifiers).find(function (modifier) {
5343
- return modifier.includes('disabled');
5344
- });
5498
+ onBlur: function onBlur(e) {
5499
+ return _onBlur && _onBlur(e.target.value);
5500
+ },
5501
+ onFocus: function onFocus(e) {
5502
+ return _onFocus && _onFocus(e.target.value);
5503
+ },
5504
+ onKeyDown: function onKeyDown(e) {
5505
+ return _onKeyDown && _onKeyDown(e.key);
5506
+ }
5507
+ };
5508
+ var formikState = getFormikState(name, formik);
5345
5509
 
5346
- if (!Boolean(isDateDisabled)) {
5347
- handleSelect(day);
5510
+ if (formik && formikState) {
5511
+ var currencyBlur = function currencyBlur() {
5512
+ if (type === 'currency') {
5513
+ formik.setFieldValue(name, Number(value).toFixed(2));
5348
5514
  }
5349
- },
5350
- selectedDays: mode === CALENDAR_MODE.DAY ? selected : selectedRange,
5351
- disabledDays: disabledDays,
5352
- months: MONTH_NAMES,
5353
- weekdaysLong: DAYS,
5354
- initialMonth: selected,
5355
- weekdaysShort: DAYS.map(function (day) {
5356
- return day.substring(0, 2);
5357
- }),
5358
- showOutsideDays: mode === CALENDAR_MODE.WEEK,
5359
- firstDayOfWeek: weekStart
5360
- }))));
5515
+ };
5516
+
5517
+ controllers = _extends({}, controllers, {
5518
+ error: error !== undefined ? controllers.error : formikState.error,
5519
+ value: value !== undefined ? controllers.value : formikState.value,
5520
+ onChange: _onChange ? controllers.onChange : function (e) {
5521
+ return formik.setFieldValue(name, e.target.value);
5522
+ },
5523
+ onBlur: _onBlur ? function (e) {
5524
+ _onBlur && _onBlur(e.target.value);
5525
+ formik.setFieldTouched(name);
5526
+ currencyBlur();
5527
+ } : function () {
5528
+ formik.setFieldTouched(name);
5529
+ currencyBlur();
5530
+ }
5531
+ });
5532
+ }
5533
+
5534
+ return controllers;
5361
5535
  };
5362
5536
 
5363
- var DataTableCellElement = function DataTableCellElement(_ref, ref) {
5364
- var _columns$columnIndex, _classnames, _classnames2, _classnames3;
5537
+ var textFieldStyles = {"text-field":"_20YOA","text-field--invalid":"_3kUSh","text-field--prefixed":"_3IU3Q","text-field--suffixed":"_QXJOD"};
5365
5538
 
5366
- var children = _ref.children,
5367
- columnIndex = _ref.columnIndex,
5368
- error = _ref.error,
5369
- _ref$delayOnCloseErro = _ref.delayOnCloseError,
5370
- delayOnCloseError = _ref$delayOnCloseErro === void 0 ? false : _ref$delayOnCloseErro,
5371
- _ref$noPadding = _ref.noPadding,
5372
- noPadding = _ref$noPadding === void 0 ? false : _ref$noPadding,
5373
- colSpan = _ref.colSpan;
5539
+ var useTextField = function useTextField(_ref) {
5540
+ var _classnames;
5374
5541
 
5375
- var _useDataTableContext = useDataTableContext(),
5376
- columns = _useDataTableContext.columns,
5377
- hasVerticalBorders = _useDataTableContext.hasVerticalBorders;
5542
+ var autoComplete = _ref.autoComplete,
5543
+ autoFocus = _ref.autoFocus,
5544
+ defaultValue = _ref.defaultValue,
5545
+ disabled = _ref.disabled,
5546
+ error = _ref.error,
5547
+ id = _ref.id,
5548
+ maxLength = _ref.maxLength,
5549
+ name = _ref.name,
5550
+ caption = _ref.caption,
5551
+ label = _ref.label,
5552
+ onBlur = _ref.onBlur,
5553
+ onChange = _ref.onChange,
5554
+ onFocus = _ref.onFocus,
5555
+ onKeyDown = _ref.onKeyDown,
5556
+ placeholder = _ref.placeholder,
5557
+ value = _ref.value,
5558
+ ref = _ref.ref,
5559
+ testId = _ref.testId;
5560
+ var controllers = useFieldControllers({
5561
+ error: error,
5562
+ id: id,
5563
+ name: name,
5564
+ onChange: onChange,
5565
+ onBlur: onBlur,
5566
+ onFocus: onFocus,
5567
+ onKeyDown: onKeyDown,
5568
+ value: value
5569
+ });
5570
+ var hasError = !!controllers.error;
5571
+ var inputProps = {
5572
+ 'aria-describedby': hasError ? controllers.id + "-error-message" : controllers.id + "-describer",
5573
+ 'aria-invalid': hasError,
5574
+ autoComplete: autoComplete,
5575
+ autoFocus: autoFocus,
5576
+ className: classnames(textFieldStyles['text-field'], (_classnames = {}, _classnames[textFieldStyles['text-field--invalid']] = hasError, _classnames)),
5577
+ 'data-testid': testId,
5578
+ disabled: disabled,
5579
+ defaultValue: defaultValue,
5580
+ id: controllers.id,
5581
+ maxLength: maxLength,
5582
+ name: name,
5583
+ onBlur: controllers.onBlur,
5584
+ onChange: controllers.onChange,
5585
+ onFocus: controllers.onFocus,
5586
+ onKeyDown: controllers.onKeyDown,
5587
+ placeholder: placeholder,
5588
+ ref: ref,
5589
+ size: 1,
5590
+ type: 'text',
5591
+ value: controllers.value
5592
+ };
5593
+ var fieldProps = {
5594
+ caption: caption,
5595
+ error: controllers.error,
5596
+ label: label,
5597
+ id: inputProps.id,
5598
+ name: name
5599
+ };
5600
+ return {
5601
+ inputProps: inputProps,
5602
+ fieldProps: fieldProps
5603
+ };
5604
+ };
5378
5605
 
5379
- var column = (_columns$columnIndex = columns === null || columns === void 0 ? void 0 : columns[columnIndex]) != null ? _columns$columnIndex : null;
5380
- var isRightAligned = column ? column.isRightAligned : false;
5381
- var hasError = !!error;
5382
- var errorMessage = error;
5383
- var icon = hasError && React__default.createElement("div", {
5384
- className: classnames(styles$h['data-table-cell__error-icon'], (_classnames = {}, _classnames[styles$h['data-table-cell__error-icon--right-align']] = isRightAligned, _classnames[styles$h['data-table-cell__error-icon--left-align']] = !isRightAligned, _classnames))
5385
- }, React__default.createElement(IconTimesOctagon, {
5386
- size: "medium",
5387
- color: RADISH400
5606
+ var TimeFieldInput = function TimeFieldInput(_ref) {
5607
+ var inputProps = _ref.inputProps,
5608
+ allOtherProps = _ref.allOtherProps;
5609
+ return React__default.createElement("input", Object.assign({}, inputProps, {
5610
+ onBlur: function onBlur(e) {
5611
+ e.target.value = parseTime(e.target.value, 'g:i A');
5612
+ inputProps.onChange(e);
5613
+ inputProps.onBlur(e);
5614
+ },
5615
+ onClick: allOtherProps.onClick,
5616
+ onMouseEnter: allOtherProps.onMouseEnter,
5617
+ onMouseLeave: allOtherProps.onMouseLeave,
5618
+ onInput: function onInput(e) {
5619
+ var target = e.target;
5620
+ allOtherProps.onInputChange(target.value);
5621
+ }
5388
5622
  }));
5389
- var TableCell = React__default.createElement("td", {
5390
- className: classnames((_classnames2 = {}, _classnames2[styles$h['data-table-cell--invalid']] = hasError, _classnames2[styles$h['data-table-cell--no-padding']] = noPadding, _classnames2[styles$h['data-table-cell--vertical-border']] = hasVerticalBorders, _classnames2), styles$h['data-table-cell']),
5391
- colSpan: colSpan,
5392
- ref: ref
5393
- }, React__default.createElement("div", {
5394
- className: classnames(styles$h['data-table-cell__content'], (_classnames3 = {}, _classnames3[styles$h['data-table-cell__content--with-error']] = hasError, _classnames3[styles$h['data-table-cell__content--right-align']] = isRightAligned, _classnames3))
5395
- }, isRightAligned && icon, children, !isRightAligned && icon));
5396
- return React__default.createElement(Tooltip$1, {
5397
- overlay: errorMessage,
5398
- delayOnClose: delayOnCloseError,
5399
- placement: "top",
5400
- theme: "white"
5401
- }, TableCell);
5402
5623
  };
5403
5624
 
5404
- var DataTableCell = React.forwardRef(DataTableCellElement);
5625
+ var _excluded$2h = ["placeholder", "autoComplete"];
5405
5626
 
5406
- var DataTableRowActions = function DataTableRowActions(_ref) {
5407
- var actions = _ref.actions,
5408
- columnIndex = _ref.columnIndex;
5409
- var kebabMenuItems = actions.filter(function (action) {
5410
- return action.showInKebab === undefined || action.showInKebab;
5411
- });
5412
- var sideActions = actions.filter(function (action) {
5413
- return action.showInKebab === false;
5414
- });
5415
- return React__default.createElement(DataTableCell, {
5416
- columnIndex: columnIndex
5417
- }, React__default.createElement("div", {
5418
- className: styles$a['actions'],
5419
- "data-testid": "data-table-dropdown-menu"
5420
- }, sideActions.length > 0 && sideActions.map(function (action) {
5421
- return React__default.createElement(Button$1, Object.assign({
5422
- key: action.action,
5423
- onClick: action.onAction,
5424
- theme: typeof action.label === 'string' ? 'default' : 'link-icon'
5425
- }, action.showInKebab === false ? action.buttonProps : {}), action.label);
5426
- }), kebabMenuItems.length > 0 && React__default.createElement(KebabMenu, {
5427
- actions: kebabMenuItems
5428
- })));
5429
- };
5627
+ var TimeFieldDropdownElement = function TimeFieldDropdownElement(_ref, ref) {
5628
+ var _ref$placeholder = _ref.placeholder,
5629
+ placeholder = _ref$placeholder === void 0 ? '9:00 AM' : _ref$placeholder,
5630
+ _ref$autoComplete = _ref.autoComplete,
5631
+ autoComplete = _ref$autoComplete === void 0 ? 'off' : _ref$autoComplete,
5632
+ allOtherProps = _objectWithoutPropertiesLoose(_ref, _excluded$2h);
5633
+
5634
+ var _useTextField = useTextField(_extends({}, allOtherProps, {
5635
+ placeholder: placeholder,
5636
+ autoComplete: autoComplete,
5637
+ ref: ref
5638
+ })),
5639
+ inputProps = _useTextField.inputProps,
5640
+ fieldProps = _useTextField.fieldProps;
5430
5641
 
5431
- var Context$1 = React.createContext({});
5432
- var useFormContext = function useFormContext() {
5433
- var context = React.useContext(Context$1);
5434
- return context || {};
5642
+ return React__default.createElement(Field, Object.assign({}, fieldProps), React__default.createElement(TimeFieldInput, {
5643
+ inputProps: inputProps,
5644
+ allOtherProps: allOtherProps
5645
+ }));
5435
5646
  };
5436
5647
 
5437
- var useFieldId = function useFieldId(_ref) {
5438
- var name = _ref.name,
5439
- inputId = _ref.id;
5440
- var id = React.useMemo(function () {
5441
- return inputId ? inputId : name + "-" + Math.random();
5442
- }, [inputId, name]);
5443
- return id;
5444
- };
5648
+ var TimeFieldDropdownTrigger = React.forwardRef(TimeFieldDropdownElement);
5445
5649
 
5446
- var getFormikState = function getFormikState(name, formik) {
5447
- if (formik === undefined) {
5448
- return null;
5449
- }
5650
+ var Dropdown = function Dropdown(_ref) {
5651
+ var trigger = _ref.trigger,
5652
+ _ref$triggersOn = _ref.triggersOn,
5653
+ triggersOn = _ref$triggersOn === void 0 ? DROPDOWN_TRIGGER.CLICK : _ref$triggersOn,
5654
+ _ref$alignment = _ref.alignment,
5655
+ alignment = _ref$alignment === void 0 ? DROPDOWN_ALIGNEMNT.RIGHT : _ref$alignment,
5656
+ width = _ref.width,
5657
+ maxHeight = _ref.maxHeight,
5658
+ testId = _ref.testId,
5659
+ children = _ref.children,
5660
+ triggerWidth = _ref.triggerWidth;
5450
5661
 
5451
- var formikPath = getFormikArrayPath(name);
5662
+ var _useState = React.useState(false),
5663
+ isOpen = _useState[0],
5664
+ setIsOpen = _useState[1];
5452
5665
 
5453
- if (formikPath.length === 0) {
5454
- return null;
5455
- }
5666
+ var triggerRef = React.useRef(null);
5667
+ var paneRef = React.useRef(null);
5668
+ var isFocusingOverlay = React.useRef(false);
5456
5669
 
5457
- var formikLatestLevel = formikPath.reduce(function (acc, path) {
5458
- var _acc$touched, _acc$error, _acc$value;
5670
+ var handleToggleDropdown = function handleToggleDropdown() {
5671
+ return setIsOpen(!isOpen);
5672
+ };
5459
5673
 
5460
- return {
5461
- touched: (_acc$touched = acc.touched) === null || _acc$touched === void 0 ? void 0 : _acc$touched[path],
5462
- error: (_acc$error = acc.error) === null || _acc$error === void 0 ? void 0 : _acc$error[path],
5463
- value: (_acc$value = acc.value) === null || _acc$value === void 0 ? void 0 : _acc$value[path]
5464
- };
5465
- }, {
5466
- touched: formik.touched,
5467
- error: formik.errors,
5468
- value: formik.values
5469
- });
5470
- return {
5471
- error: formikLatestLevel.touched ? formikLatestLevel.error : undefined,
5472
- value: formikLatestLevel.value
5674
+ var handleMouseClick = function handleMouseClick(e) {
5675
+ if (trigger.type === TimeFieldDropdownTrigger) {
5676
+ setIsOpen(true);
5677
+ } else {
5678
+ handleToggleDropdown();
5679
+ }
5680
+
5681
+ e.stopPropagation();
5682
+
5683
+ if ('onClick' in trigger.props) {
5684
+ trigger.props.onClick(e);
5685
+ }
5473
5686
  };
5474
- };
5475
- var getFormikArrayPath = function getFormikArrayPath(name) {
5476
- return name.split(/[^a-zA-Z0-9]/).filter(Boolean);
5477
- };
5478
5687
 
5479
- var useFieldControllers = function useFieldControllers(_ref) {
5480
- var name = _ref.name,
5481
- inputId = _ref.id,
5482
- value = _ref.value,
5483
- _onChange = _ref.onChange,
5484
- _onBlur = _ref.onBlur,
5485
- _onFocus = _ref.onFocus,
5486
- _onKeyDown = _ref.onKeyDown,
5487
- error = _ref.error,
5488
- _ref$type = _ref.type,
5489
- type = _ref$type === void 0 ? 'text' : _ref$type;
5688
+ var handleMouseEnter = function handleMouseEnter(e) {
5689
+ if (triggersOn !== 'hover') {
5690
+ return;
5691
+ }
5490
5692
 
5491
- var _useFormContext = useFormContext(),
5492
- formik = _useFormContext.formik;
5693
+ setIsOpen(true);
5493
5694
 
5494
- var id = useFieldId({
5495
- name: name,
5496
- id: inputId
5497
- });
5498
- var controllers = {
5499
- id: id,
5500
- error: error,
5501
- value: value,
5502
- onChange: function onChange(e) {
5503
- return _onChange && _onChange(e.target.value);
5504
- },
5505
- onBlur: function onBlur(e) {
5506
- return _onBlur && _onBlur(e.target.value);
5507
- },
5508
- onFocus: function onFocus(e) {
5509
- return _onFocus && _onFocus(e.target.value);
5510
- },
5511
- onKeyDown: function onKeyDown(e) {
5512
- return _onKeyDown && _onKeyDown(e.key);
5695
+ if ('onMouseEnter' in trigger.props) {
5696
+ trigger.props.onMouseEnter(e);
5513
5697
  }
5514
5698
  };
5515
- var formikState = getFormikState(name, formik);
5516
5699
 
5517
- if (formik && formikState) {
5518
- var currencyBlur = function currencyBlur() {
5519
- if (type === 'currency') {
5520
- formik.setFieldValue(name, Number(value).toFixed(2));
5700
+ var handleFocus = function handleFocus(e) {
5701
+ if (triggersOn !== 'hover') {
5702
+ if (trigger.type === TimeFieldDropdownTrigger && !isOpen) {
5703
+ setIsOpen(true);
5521
5704
  }
5522
- };
5523
5705
 
5524
- controllers = _extends({}, controllers, {
5525
- error: error !== undefined ? controllers.error : formikState.error,
5526
- value: value !== undefined ? controllers.value : formikState.value,
5527
- onChange: _onChange ? controllers.onChange : function (e) {
5528
- return formik.setFieldValue(name, e.target.value);
5529
- },
5530
- onBlur: _onBlur ? function (e) {
5531
- _onBlur && _onBlur(e.target.value);
5532
- formik.setFieldTouched(name);
5533
- currencyBlur();
5534
- } : function () {
5535
- formik.setFieldTouched(name);
5536
- currencyBlur();
5706
+ if ('onFocus' in trigger.props) {
5707
+ trigger.props.onFocus(e);
5537
5708
  }
5538
- });
5539
- }
5540
5709
 
5541
- return controllers;
5542
- };
5543
-
5544
- var styles$o = {"label":"_h724f","label--truncate":"_1VUoF"};
5710
+ return;
5711
+ }
5545
5712
 
5546
- var isEllipsisActive = function isEllipsisActive(e) {
5547
- return e.offsetWidth < e.scrollWidth;
5548
- };
5713
+ setIsOpen(true);
5549
5714
 
5550
- var useLabelTooltip = function useLabelTooltip(labelId, tooltipContent, truncate) {
5551
- var _useState = React.useState(false),
5552
- showTooltip = _useState[0],
5553
- setShowTooltip = _useState[1];
5715
+ if ('onFocus' in trigger.props) {
5716
+ trigger.props.onFocus(e);
5717
+ }
5718
+ };
5554
5719
 
5555
- var shouldTruncate = typeof tooltipContent === 'string' && truncate;
5556
- var labelElement = document.getElementById(labelId);
5557
- var isHidden = labelElement && labelElement.offsetParent === null;
5558
- var handleApplyTooltip = React.useCallback(function () {
5559
- if (!shouldTruncate) {
5720
+ var handleMouseLeave = function handleMouseLeave(e) {
5721
+ if (triggersOn !== 'hover' || !paneRef.current) {
5560
5722
  return;
5561
5723
  }
5562
5724
 
5563
- var labelElement = document.getElementById(labelId);
5725
+ var panePosition = paneRef.current.getBoundingClientRect();
5564
5726
 
5565
- if (!labelElement) {
5566
- return;
5727
+ if (!isGoingTowardsPane(panePosition, e.clientY)) {
5728
+ setIsOpen(false);
5729
+
5730
+ if ('onMouseLeave' in trigger.props) {
5731
+ trigger.props.onMouseLeave && trigger.props.onMouseLeave(e);
5732
+ }
5567
5733
  }
5734
+ };
5568
5735
 
5569
- var shouldShowTooltip = isEllipsisActive(labelElement);
5736
+ var handlePaneMouseEnter = function handlePaneMouseEnter() {
5737
+ isFocusingOverlay.current = true;
5738
+ };
5570
5739
 
5571
- if (showTooltip !== shouldShowTooltip) {
5572
- setShowTooltip(shouldShowTooltip);
5740
+ var handlePaneMouseLeave = function handlePaneMouseLeave() {
5741
+ isFocusingOverlay.current = false;
5742
+
5743
+ if (triggersOn === 'hover') {
5744
+ setIsOpen(false);
5573
5745
  }
5574
- }, [shouldTruncate, isHidden]);
5575
- React.useEffect(function () {
5576
- var onWindowResize = lodashEs.debounce(handleApplyTooltip, 300);
5577
- window.addEventListener('resize', onWindowResize);
5578
- return function () {
5579
- return window.removeEventListener('resize', onWindowResize);
5580
- };
5581
- }, [handleApplyTooltip]);
5582
- React.useLayoutEffect(handleApplyTooltip, [handleApplyTooltip]);
5583
- return {
5584
- showTooltip: showTooltip,
5585
- shouldTruncate: shouldTruncate
5586
5746
  };
5587
- };
5588
5747
 
5589
- var Label = function Label(_ref) {
5590
- var _classNames;
5748
+ var handleOnBlur = function handleOnBlur() {
5749
+ if (!paneRef || !(paneRef !== null && paneRef !== void 0 && paneRef.current)) {
5750
+ return;
5751
+ }
5591
5752
 
5592
- var htmlFor = _ref.htmlFor,
5593
- children = _ref.children,
5594
- _ref$truncate = _ref.truncate,
5595
- truncate = _ref$truncate === void 0 ? true : _ref$truncate;
5596
- var labelId = "label-" + htmlFor;
5753
+ var focusableElements = getKeyboardFocusableElements(paneRef.current);
5597
5754
 
5598
- var _useLabelTooltip = useLabelTooltip(labelId, children, truncate),
5599
- showTooltip = _useLabelTooltip.showTooltip,
5600
- shouldTruncate = _useLabelTooltip.shouldTruncate;
5755
+ if (focusableElements.length > 0) {
5756
+ window.setTimeout(function () {
5757
+ return focusableElements[0].focus();
5758
+ }, 0);
5759
+ } else if (!isFocusingOverlay.current) {
5760
+ setIsOpen(false);
5761
+ }
5762
+ };
5601
5763
 
5602
- var LabelElement = React__default.createElement("label", {
5603
- htmlFor: htmlFor,
5604
- id: labelId,
5605
- className: classnames(styles$o['label'], (_classNames = {}, _classNames[styles$o['label--truncate']] = shouldTruncate, _classNames))
5606
- }, children);
5764
+ var getRef = function getRef() {
5765
+ if ((trigger.type === Button$1 || trigger.type === TimeFieldDropdownTrigger) && trigger.ref) {
5766
+ return trigger.ref;
5767
+ }
5607
5768
 
5608
- if (showTooltip) {
5609
- return React__default.createElement(Tooltip$1, {
5610
- overlay: children,
5611
- placement: "top"
5612
- }, LabelElement);
5613
- }
5769
+ return triggerRef;
5770
+ };
5614
5771
 
5615
- return LabelElement;
5772
+ var updatedRef = getRef();
5773
+ var triggerProps = {
5774
+ onClick: handleMouseClick,
5775
+ onMouseEnter: handleMouseEnter,
5776
+ onMouseLeave: handleMouseLeave,
5777
+ onBlur: handleOnBlur,
5778
+ ref: updatedRef,
5779
+ style: {
5780
+ width: triggerWidth === 'full' ? '100%' : 'fit-content'
5781
+ },
5782
+ onFocus: handleFocus
5783
+ };
5784
+ return React__default.createElement(DropdownContext.Provider, {
5785
+ value: {
5786
+ isOpen: isOpen,
5787
+ onToggleDropdown: handleToggleDropdown,
5788
+ triggerRef: updatedRef,
5789
+ paneRef: paneRef
5790
+ }
5791
+ }, trigger.type === Button$1 || trigger.type === TimeFieldDropdownTrigger ? React__default.cloneElement(trigger, _extends({}, trigger.props, triggerProps)) : React__default.createElement("button", Object.assign({}, triggerProps, {
5792
+ className: styles$c['dropdown__trigger'],
5793
+ ref: updatedRef,
5794
+ onFocus: handleFocus
5795
+ }), trigger), React__default.createElement(DropdownPane, {
5796
+ width: width,
5797
+ maxHeight: maxHeight,
5798
+ onMouseEnter: handlePaneMouseEnter,
5799
+ onMouseLeave: handlePaneMouseLeave,
5800
+ alignment: alignment,
5801
+ testId: testId
5802
+ }, children));
5803
+ };
5804
+
5805
+ var KebabMenu = function KebabMenu(_ref) {
5806
+ var actions = _ref.actions;
5807
+ return React__default.createElement(Dropdown, {
5808
+ trigger: React__default.createElement(Button$1, {
5809
+ theme: "link-icon"
5810
+ }, React__default.createElement(IconEllipsisV, null)),
5811
+ alignment: "right"
5812
+ }, React__default.createElement(DropdownList, null, actions.map(function (action) {
5813
+ return React__default.createElement(DropdownListItem, {
5814
+ onClick: action.onAction,
5815
+ key: action.action
5816
+ }, action.label);
5817
+ })));
5616
5818
  };
5617
5819
 
5618
- var styles$p = {"caption":"_1DWBq"};
5820
+ var styles$q = {"data-table-cell":"_2Ybjx","data-table-cell--no-padding":"_5KXHH","data-table-cell--vertical-border":"_2-I0j","data-table-cell--invalid":"_D73Vx","data-table-cell__content":"_3A9-M","data-table-cell__content--right-align":"_17Km7","data-table-cell__content--with-error":"_2c6KQ","data-table-cell__error-icon":"_2hIl3","data-table-cell__error-icon--right-align":"_8Uhyd","data-table-cell__error-icon--left-align":"_3X51R"};
5619
5821
 
5620
- var Caption = function Caption(_ref) {
5621
- var fieldId = _ref.fieldId,
5622
- children = _ref.children;
5623
- return React__default.createElement("div", {
5624
- id: fieldId && fieldId + "-describer",
5625
- className: styles$p['caption']
5626
- }, children);
5627
- };
5822
+ var DataTableCellElement = function DataTableCellElement(_ref, ref) {
5823
+ var _columns$columnIndex, _classnames, _classnames2, _classnames3;
5628
5824
 
5629
- var styles$q = {"error-message":"_nZ2MD"};
5825
+ var children = _ref.children,
5826
+ columnIndex = _ref.columnIndex,
5827
+ error = _ref.error,
5828
+ _ref$delayOnCloseErro = _ref.delayOnCloseError,
5829
+ delayOnCloseError = _ref$delayOnCloseErro === void 0 ? false : _ref$delayOnCloseErro,
5830
+ _ref$noPadding = _ref.noPadding,
5831
+ noPadding = _ref$noPadding === void 0 ? false : _ref$noPadding,
5832
+ colSpan = _ref.colSpan;
5630
5833
 
5631
- var ErrorMessage = function ErrorMessage(_ref) {
5632
- var fieldId = _ref.fieldId,
5633
- children = _ref.children,
5634
- testId = _ref.testId;
5635
- return React__default.createElement("div", {
5636
- id: fieldId && fieldId + "-error-message",
5637
- className: styles$q['error-message'],
5638
- "data-testid": testId
5639
- }, React__default.createElement(Inline, {
5640
- space: 8,
5641
- alignItems: "center"
5834
+ var _useDataTableContext = useDataTableContext(),
5835
+ columns = _useDataTableContext.columns,
5836
+ hasVerticalBorders = _useDataTableContext.hasVerticalBorders;
5837
+
5838
+ var column = (_columns$columnIndex = columns === null || columns === void 0 ? void 0 : columns[columnIndex]) != null ? _columns$columnIndex : null;
5839
+ var isRightAligned = column ? column.isRightAligned : false;
5840
+ var hasError = !!error;
5841
+ var errorMessage = error;
5842
+ var icon = hasError && React__default.createElement("div", {
5843
+ className: classnames(styles$q['data-table-cell__error-icon'], (_classnames = {}, _classnames[styles$q['data-table-cell__error-icon--right-align']] = isRightAligned, _classnames[styles$q['data-table-cell__error-icon--left-align']] = !isRightAligned, _classnames))
5642
5844
  }, React__default.createElement(IconTimesOctagon, {
5643
- color: RADISH400,
5644
- size: "medium"
5645
- }), children));
5845
+ size: "medium",
5846
+ color: RADISH400
5847
+ }));
5848
+ var TableCell = React__default.createElement("td", {
5849
+ className: classnames((_classnames2 = {}, _classnames2[styles$q['data-table-cell--invalid']] = hasError, _classnames2[styles$q['data-table-cell--no-padding']] = noPadding, _classnames2[styles$q['data-table-cell--vertical-border']] = hasVerticalBorders, _classnames2), styles$q['data-table-cell']),
5850
+ colSpan: colSpan,
5851
+ ref: ref
5852
+ }, React__default.createElement("div", {
5853
+ className: classnames(styles$q['data-table-cell__content'], (_classnames3 = {}, _classnames3[styles$q['data-table-cell__content--with-error']] = hasError, _classnames3[styles$q['data-table-cell__content--right-align']] = isRightAligned, _classnames3))
5854
+ }, isRightAligned && icon, children, !isRightAligned && icon));
5855
+ return React__default.createElement(Tooltip$1, {
5856
+ overlay: errorMessage,
5857
+ delayOnClose: delayOnCloseError,
5858
+ placement: "top",
5859
+ theme: "white"
5860
+ }, TableCell);
5646
5861
  };
5647
5862
 
5648
- var Field = function Field(_ref) {
5649
- var id = _ref.id,
5650
- label = _ref.label,
5651
- caption = _ref.caption,
5652
- error = _ref.error,
5653
- children = _ref.children;
5654
- var shouldRenderLabel = label || typeof label === 'string';
5655
- return React__default.createElement(Stack, {
5656
- space: 8,
5657
- flexItems: true
5658
- }, shouldRenderLabel && React__default.createElement(Label, {
5659
- htmlFor: id
5660
- }, label), children, caption && React__default.createElement(Caption, {
5661
- fieldId: id
5662
- }, caption), error && React__default.createElement(ErrorMessage, {
5663
- fieldId: id
5664
- }, error));
5863
+ var DataTableCell = React.forwardRef(DataTableCellElement);
5864
+
5865
+ var DataTableRowActions = function DataTableRowActions(_ref) {
5866
+ var actions = _ref.actions,
5867
+ columnIndex = _ref.columnIndex;
5868
+ var kebabMenuItems = actions.filter(function (action) {
5869
+ return action.showInKebab === undefined || action.showInKebab;
5870
+ });
5871
+ var sideActions = actions.filter(function (action) {
5872
+ return action.showInKebab === false;
5873
+ });
5874
+ return React__default.createElement(DataTableCell, {
5875
+ columnIndex: columnIndex
5876
+ }, React__default.createElement("div", {
5877
+ className: styles$a['actions'],
5878
+ "data-testid": "data-table-dropdown-menu"
5879
+ }, sideActions.length > 0 && sideActions.map(function (action) {
5880
+ return React__default.createElement(Button$1, Object.assign({
5881
+ key: action.action,
5882
+ onClick: action.onAction,
5883
+ theme: typeof action.label === 'string' ? 'default' : 'link-icon'
5884
+ }, action.showInKebab === false ? action.buttonProps : {}), action.label);
5885
+ }), kebabMenuItems.length > 0 && React__default.createElement(KebabMenu, {
5886
+ actions: kebabMenuItems
5887
+ })));
5665
5888
  };
5666
5889
 
5667
5890
  var styles$r = {"affix-container":"_ybKOk","affix-container--prefixed":"_2COk3","affix-container--suffixed":"_1xXXN","prefix":"_eX5OL","suffix":"__YH01"};
@@ -5801,7 +6024,7 @@ var DataTableEditableCellElement = function DataTableEditableCellElement(_ref, r
5801
6024
 
5802
6025
  var DataTableEditableCell = React.forwardRef(DataTableEditableCellElement);
5803
6026
 
5804
- var _excluded$2h = ["children", "onClick", "isSelected", "actions", "hasDefaultPadding", "hasDefaultCell", "testId"];
6027
+ var _excluded$2i = ["children", "onClick", "isSelected", "actions", "hasDefaultPadding", "hasDefaultCell", "testId"];
5805
6028
 
5806
6029
  var DataTableRowComponent = function DataTableRowComponent(_ref, ref) {
5807
6030
  var _classnames;
@@ -5815,7 +6038,7 @@ var DataTableRowComponent = function DataTableRowComponent(_ref, ref) {
5815
6038
  _ref$hasDefaultCell = _ref.hasDefaultCell,
5816
6039
  hasDefaultCell = _ref$hasDefaultCell === void 0 ? true : _ref$hasDefaultCell,
5817
6040
  testId = _ref.testId,
5818
- nativeDivProps = _objectWithoutPropertiesLoose(_ref, _excluded$2h);
6041
+ nativeDivProps = _objectWithoutPropertiesLoose(_ref, _excluded$2i);
5819
6042
 
5820
6043
  var _useDataTableContext = useDataTableContext(),
5821
6044
  showActionMenu = _useDataTableContext.showActionMenu;
@@ -6223,13 +6446,13 @@ var isReactSelectElement = function isReactSelectElement(element) {
6223
6446
 
6224
6447
  var styles$w = {"custom-control":"_1cDCR"};
6225
6448
 
6226
- var _excluded$2i = ["children"];
6449
+ var _excluded$2j = ["children"];
6227
6450
 
6228
6451
  function CustomControl(_ref) {
6229
6452
  var _props$getValue;
6230
6453
 
6231
6454
  var children = _ref.children,
6232
- props = _objectWithoutPropertiesLoose(_ref, _excluded$2i);
6455
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$2j);
6233
6456
 
6234
6457
  var SelectedOptionPrefix = props.selectProps.componentsProps.SelectedOptionPrefix;
6235
6458
  var selectedOption = (_props$getValue = props.getValue()) === null || _props$getValue === void 0 ? void 0 : _props$getValue[0];
@@ -6247,11 +6470,11 @@ function CustomControl(_ref) {
6247
6470
  }, props)), children)) : children);
6248
6471
  }
6249
6472
 
6250
- var _excluded$2j = ["children"];
6473
+ var _excluded$2k = ["children"];
6251
6474
 
6252
6475
  function CustomOption(_ref) {
6253
6476
  var children = _ref.children,
6254
- props = _objectWithoutPropertiesLoose(_ref, _excluded$2j);
6477
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$2k);
6255
6478
 
6256
6479
  var UserCustomOption = props.selectProps.componentsProps.UserCustomOption;
6257
6480
  return React__default.createElement(Select.components.Option, Object.assign({}, props), React__default.createElement(UserCustomOption, Object.assign({}, props), children));
@@ -6404,13 +6627,11 @@ var CustomContainer = function CustomContainer(props) {
6404
6627
 
6405
6628
  var styles$x = {"custom-menu-text-field":"_2-zhH","custom-menu-hr":"_3sdnK","custom-menu-div":"_2F1jP"};
6406
6629
 
6407
- var styles$y = {"text-field":"_20YOA","text-field--invalid":"_3kUSh","text-field--prefixed":"_3IU3Q","text-field--suffixed":"_QXJOD"};
6408
-
6409
- var _excluded$2k = ["children"];
6630
+ var _excluded$2l = ["children"];
6410
6631
 
6411
6632
  function CustomMenu(_ref) {
6412
6633
  var children = _ref.children,
6413
- props = _objectWithoutPropertiesLoose(_ref, _excluded$2k);
6634
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$2l);
6414
6635
 
6415
6636
  var _props$selectProps$co = props.selectProps.componentsProps,
6416
6637
  creatableButton = _props$selectProps$co.creatableButton,
@@ -6421,6 +6642,10 @@ function CustomMenu(_ref) {
6421
6642
  showFooter = _useState[0],
6422
6643
  setShowFooter = _useState[1];
6423
6644
 
6645
+ var _useState2 = React.useState(''),
6646
+ inputDefaultValue = _useState2[0],
6647
+ setInputDefaultValue = _useState2[1];
6648
+
6424
6649
  var textFieldRef = React.useRef(null);
6425
6650
  var containerRef = React.useRef(null);
6426
6651
 
@@ -6431,7 +6656,11 @@ function CustomMenu(_ref) {
6431
6656
  return React__default.createElement(Button$1, {
6432
6657
  theme: "link-primary",
6433
6658
  onClick: function onClick() {
6434
- return setShowFooter(true);
6659
+ if (props.selectProps.inputValue) {
6660
+ setInputDefaultValue(props.selectProps.inputValue);
6661
+ }
6662
+
6663
+ setShowFooter(true);
6435
6664
  },
6436
6665
  size: "full-width"
6437
6666
  }, React__default.createElement(Inline, {
@@ -6453,6 +6682,8 @@ function CustomMenu(_ref) {
6453
6682
  if (textFieldRef.current && textFieldRef.current.value.trim() !== '') {
6454
6683
  onCreate(textFieldRef.current.value);
6455
6684
  textFieldRef.current.value = '';
6685
+ setShowFooter(false);
6686
+ setInputDefaultValue('');
6456
6687
  }
6457
6688
  };
6458
6689
 
@@ -6472,7 +6703,7 @@ function CustomMenu(_ref) {
6472
6703
  flex: [1],
6473
6704
  flexItems: true
6474
6705
  }, React__default.createElement("input", {
6475
- className: classnames(styles$y['text-field'], styles$x['custom-menu-text-field']),
6706
+ className: classnames(textFieldStyles['text-field'], styles$x['custom-menu-text-field']),
6476
6707
  autoCorrect: "off",
6477
6708
  autoComplete: "off",
6478
6709
  spellCheck: "false",
@@ -6502,7 +6733,8 @@ function CustomMenu(_ref) {
6502
6733
  },
6503
6734
  ref: textFieldRef,
6504
6735
  "data-testid": "select-create-option-input",
6505
- autoFocus: true
6736
+ autoFocus: true,
6737
+ defaultValue: inputDefaultValue
6506
6738
  }), React__default.createElement(Button$1, {
6507
6739
  onClick: onCreateButton,
6508
6740
  onKeyDown: function onKeyDown(e) {
@@ -6654,9 +6886,9 @@ var ToolbarSelect = function ToolbarSelect(_ref) {
6654
6886
  });
6655
6887
  };
6656
6888
 
6657
- var styles$z = {"date-filter":"_2X-yg","date-filter--wide":"_3O5Kh"};
6889
+ var styles$y = {"date-filter":"_2X-yg","date-filter--wide":"_3O5Kh"};
6658
6890
 
6659
- var styles$A = {"date-filter-display":"_23gnr","date-filter-display--non-interactive":"_Zv1Se","date-filter-display--wide":"_18V8V","date-filter-display__display-icon":"_2v9v_"};
6891
+ var styles$z = {"date-filter-display":"_23gnr","date-filter-display--non-interactive":"_Zv1Se","date-filter-display--wide":"_18V8V","date-filter-display__display-icon":"_2v9v_"};
6660
6892
 
6661
6893
  var DATE_FILTER_MODE = {
6662
6894
  DAY: 'day',
@@ -6698,12 +6930,10 @@ var DateFilterText = function DateFilterText(_ref) {
6698
6930
  var weekRange = createWeekRange(selectedDate, weekStart);
6699
6931
  return React__default.createElement(Inline, {
6700
6932
  space: 12
6701
- }, React__default.createElement("span", null, getDateString(weekRange.start, mode)), React__default.createElement("span", {
6702
- className: "date-filter__to_date_icon"
6703
- }, React__default.createElement(IconArrowRight, {
6933
+ }, React__default.createElement("span", null, getDateString(weekRange.start, mode)), React__default.createElement(IconArrowRight, {
6704
6934
  size: "small",
6705
6935
  color: GREY400
6706
- })), React__default.createElement("span", null, getDateString(weekRange.end, mode)));
6936
+ }), React__default.createElement("span", null, getDateString(weekRange.end, mode)));
6707
6937
 
6708
6938
  default:
6709
6939
  return React__default.createElement("span", null, getDateString(selectedDate, mode));
@@ -6718,14 +6948,14 @@ var DateFilterDisplay = function DateFilterDisplay(_ref) {
6718
6948
  weekStart = _ref.weekStart,
6719
6949
  onClick = _ref.onClick;
6720
6950
  return React__default.createElement("button", {
6721
- className: classnames(styles$A['date-filter-display'], (_classnames = {}, _classnames[styles$A['date-filter-display--wide']] = mode === DATE_FILTER_MODE.WEEK, _classnames[styles$A['date-filter-display--non-interactive']] = mode === DATE_FILTER_MODE.MONTH, _classnames)),
6951
+ className: classnames(styles$z['date-filter-display'], (_classnames = {}, _classnames[styles$z['date-filter-display--wide']] = mode === DATE_FILTER_MODE.WEEK, _classnames[styles$z['date-filter-display--non-interactive']] = mode === DATE_FILTER_MODE.MONTH, _classnames)),
6722
6952
  onClick: onClick,
6723
6953
  tabIndex: mode === DATE_FILTER_MODE.MONTH ? -1 : undefined
6724
6954
  }, React__default.createElement(Inline, {
6725
6955
  space: 12,
6726
6956
  alignItems: "center"
6727
6957
  }, React__default.createElement("div", {
6728
- className: classnames(styles$A['date-filter-display__display-icon'])
6958
+ className: classnames(styles$z['date-filter-display__display-icon'])
6729
6959
  }, React__default.createElement(IconCalendarAlt, {
6730
6960
  size: "flexible",
6731
6961
  color: GREY400
@@ -6736,7 +6966,7 @@ var DateFilterDisplay = function DateFilterDisplay(_ref) {
6736
6966
  })));
6737
6967
  };
6738
6968
 
6739
- var styles$B = {"date-stepper":"_s8MoI","date-stepper--backward":"_34Yoi","date-stepper--forward":"_BeWpb"};
6969
+ var styles$A = {"date-stepper":"_s8MoI","date-stepper--backward":"_34Yoi","date-stepper--forward":"_BeWpb"};
6740
6970
 
6741
6971
  var handleDateStepper = function handleDateStepper(date, mode, stepDirection, onChange) {
6742
6972
  var step = stepDirection === STEP_DIRECTION.FORWARD ? 1 : -1;
@@ -6771,7 +7001,7 @@ var DateFilterStepper = function DateFilterStepper(_ref) {
6771
7001
  onChange = _ref.onChange,
6772
7002
  date = _ref.date;
6773
7003
  return React__default.createElement("button", {
6774
- className: classnames(styles$B['date-stepper'], (_classnames = {}, _classnames[styles$B['date-stepper--backward']] = stepDirection === STEP_DIRECTION.BACKWARD, _classnames[styles$B['date-stepper--forward']] = stepDirection === STEP_DIRECTION.FORWARD, _classnames)),
7004
+ className: classnames(styles$A['date-stepper'], (_classnames = {}, _classnames[styles$A['date-stepper--backward']] = stepDirection === STEP_DIRECTION.BACKWARD, _classnames[styles$A['date-stepper--forward']] = stepDirection === STEP_DIRECTION.FORWARD, _classnames)),
6775
7005
  onClick: function onClick() {
6776
7006
  return handleDateStepper(date, mode, stepDirection, onChange);
6777
7007
  }
@@ -6807,7 +7037,7 @@ var DateFilter = function DateFilter(_ref) {
6807
7037
  return React__default.createElement("div", {
6808
7038
  "data-testid": testId,
6809
7039
  ref: calendarAnchorRef,
6810
- className: classnames(styles$z['date-filter'], (_classnames = {}, _classnames[styles$z['date-filter--wide']] = mode === DATE_FILTER_MODE.WEEK, _classnames))
7040
+ className: classnames(styles$y['date-filter'], (_classnames = {}, _classnames[styles$y['date-filter--wide']] = mode === DATE_FILTER_MODE.WEEK, _classnames))
6811
7041
  }, React__default.createElement(Inline, {
6812
7042
  space: 0
6813
7043
  }, React__default.createElement(DateFilterStepper, {
@@ -6848,7 +7078,7 @@ var DateFilter = function DateFilter(_ref) {
6848
7078
  }));
6849
7079
  };
6850
7080
 
6851
- var styles$C = {"segmented-control":"_J5ph7","segmented-control__button":"_2xgv4","segmented-control__button--selected":"_1vG3O","segmented-control__divider":"_1uKNF"};
7081
+ var styles$B = {"segmented-control":"_J5ph7","segmented-control__button":"_2xgv4","segmented-control__button--selected":"_1vG3O","segmented-control__divider":"_1uKNF"};
6852
7082
 
6853
7083
  var SegmentedControl = function SegmentedControl(_ref) {
6854
7084
  var options = _ref.options,
@@ -6865,7 +7095,7 @@ var SegmentedControl = function SegmentedControl(_ref) {
6865
7095
  };
6866
7096
 
6867
7097
  return React__default.createElement("div", {
6868
- className: styles$C['segmented-control'],
7098
+ className: styles$B['segmented-control'],
6869
7099
  "data-testid": testId
6870
7100
  }, options.map(function (option, i) {
6871
7101
  var _classnames;
@@ -6876,18 +7106,18 @@ var SegmentedControl = function SegmentedControl(_ref) {
6876
7106
  onClick: function onClick() {
6877
7107
  return onChange(option);
6878
7108
  },
6879
- className: classnames(styles$C['segmented-control__button'], (_classnames = {}, _classnames[styles$C['segmented-control__button--selected']] = isSelected(option), _classnames))
7109
+ className: classnames(styles$B['segmented-control__button'], (_classnames = {}, _classnames[styles$B['segmented-control__button--selected']] = isSelected(option), _classnames))
6880
7110
  }, option), !isLastElement(i) && React__default.createElement("div", {
6881
- className: classnames(styles$C['segmented-control__divider'])
7111
+ className: classnames(styles$B['segmented-control__divider'])
6882
7112
  }));
6883
7113
  }));
6884
7114
  };
6885
7115
 
6886
- var styles$D = {"form--standard-size":"_3CaV0"};
7116
+ var styles$C = {"form--standard-size":"_3CaV0"};
6887
7117
 
6888
- var styles$E = {"card":"_29ZIp","card__body":"_3Q8NT","card__body--interactive":"_2Fah6","card--focus":"_SGno0","card__body--focus":"_1zqRN","card__body--with-kebab":"_3Hwms","card__kebab":"_TmEUS"};
7118
+ var styles$D = {"card":"_29ZIp","card__body":"_3Q8NT","card__body--interactive":"_2Fah6","card--focus":"_SGno0","card__body--focus":"_1zqRN","card__body--with-kebab":"_3Hwms","card__kebab":"_TmEUS"};
6889
7119
 
6890
- var _excluded$2l = ["children", "onClick", "isSelected", "actions", "testId"];
7120
+ var _excluded$2m = ["children", "onClick", "isSelected", "actions", "testId"];
6891
7121
 
6892
7122
  var Card = function Card(_ref) {
6893
7123
  var _classnames, _classnames2;
@@ -6898,22 +7128,22 @@ var Card = function Card(_ref) {
6898
7128
  isSelected = _ref$isSelected === void 0 ? false : _ref$isSelected,
6899
7129
  actions = _ref.actions,
6900
7130
  testId = _ref.testId,
6901
- positionProps = _objectWithoutPropertiesLoose(_ref, _excluded$2l);
7131
+ positionProps = _objectWithoutPropertiesLoose(_ref, _excluded$2m);
6902
7132
 
6903
7133
  var positionStyles = usePositionStyles(positionProps);
6904
7134
  return React__default.createElement("div", {
6905
- className: classnames(styles$E['card']),
7135
+ className: classnames(styles$D['card']),
6906
7136
  style: positionStyles
6907
7137
  }, onClick ? React__default.createElement("button", {
6908
- className: classnames(styles$E['card__body'], styles$E['card__body--interactive'], (_classnames = {}, _classnames[styles$E['card__body--focus']] = isSelected, _classnames[styles$E['card__body--with-kebab']] = actions, _classnames)),
7138
+ className: classnames(styles$D['card__body'], styles$D['card__body--interactive'], (_classnames = {}, _classnames[styles$D['card__body--focus']] = isSelected, _classnames[styles$D['card__body--with-kebab']] = actions, _classnames)),
6909
7139
  "data-testid": testId,
6910
7140
  tabIndex: 0,
6911
7141
  onClick: onClick
6912
7142
  }, children) : React__default.createElement("div", {
6913
- className: classnames(styles$E['card__body'], (_classnames2 = {}, _classnames2[styles$E['card__body--focus']] = isSelected, _classnames2[styles$E['card__body--with-kebab']] = actions, _classnames2)),
7143
+ className: classnames(styles$D['card__body'], (_classnames2 = {}, _classnames2[styles$D['card__body--focus']] = isSelected, _classnames2[styles$D['card__body--with-kebab']] = actions, _classnames2)),
6914
7144
  "data-testid": testId
6915
7145
  }, children), actions && React__default.createElement("div", {
6916
- className: classnames(styles$E['card__kebab'])
7146
+ className: classnames(styles$D['card__kebab'])
6917
7147
  }, React__default.createElement(KebabMenu, {
6918
7148
  actions: actions
6919
7149
  })));
@@ -6927,7 +7157,7 @@ var Breadcrumbs = function Breadcrumbs(_ref) {
6927
7157
  }, children);
6928
7158
  };
6929
7159
 
6930
- var styles$F = {"breadcrumb-item":"_XFvYB"};
7160
+ var styles$E = {"breadcrumb-item":"_XFvYB"};
6931
7161
 
6932
7162
  var BreadcrumbItem = function BreadcrumbItem(_ref) {
6933
7163
  var href = _ref.href,
@@ -6940,24 +7170,24 @@ var BreadcrumbItem = function BreadcrumbItem(_ref) {
6940
7170
  }), children);
6941
7171
  return reloadDocument ? React__default.createElement("a", {
6942
7172
  href: href,
6943
- className: styles$F['breadcrumb-item'],
7173
+ className: styles$E['breadcrumb-item'],
6944
7174
  "data-testid": testId
6945
7175
  }, content) : React__default.createElement(reactRouterDom.Link, {
6946
7176
  to: href,
6947
- className: styles$F['breadcrumb-item'],
7177
+ className: styles$E['breadcrumb-item'],
6948
7178
  relative: "path",
6949
7179
  reloadDocument: reloadDocument,
6950
7180
  "data-testid": testId
6951
7181
  }, content);
6952
7182
  };
6953
7183
 
6954
- var styles$G = {"page-breadcrumbs":"_HAJCd"};
7184
+ var styles$F = {"page-breadcrumbs":"_HAJCd"};
6955
7185
 
6956
7186
  var PageBreadcrumbs = function PageBreadcrumbs(_ref) {
6957
7187
  var breadcrumbs = _ref.breadcrumbs;
6958
7188
  var items = getBreadbrumbItems(breadcrumbs);
6959
7189
  return React__default.createElement("div", {
6960
- className: styles$G['page-breadcrumbs']
7190
+ className: styles$F['page-breadcrumbs']
6961
7191
  }, React__default.createElement(Breadcrumbs, null, items));
6962
7192
  };
6963
7193
 
@@ -6982,7 +7212,7 @@ var getBreadbrumbItems = function getBreadbrumbItems(breadcrumbs) {
6982
7212
  }, breadcrumbs.label);
6983
7213
  };
6984
7214
 
6985
- var styles$H = {"page":"_FbhTM","page--fullwidth":"_3QyAE","page--restricted":"_17aOG"};
7215
+ var styles$G = {"page":"_FbhTM","page--fullwidth":"_3QyAE","page--restricted":"_17aOG"};
6986
7216
 
6987
7217
  var PAGE_SIZES = {
6988
7218
  FULL_WIDTH: 'fullwidth',
@@ -7005,7 +7235,7 @@ var Page = function Page(_ref) {
7005
7235
  var hasHeader = title || actions;
7006
7236
  var hasPageBlocks = hasHeader || banner || filterBar;
7007
7237
  return React__default.createElement("div", {
7008
- className: classnames(styles$H['page'], (_classNames = {}, _classNames[styles$H['page--restricted']] = size === PAGE_SIZES.RESTRICTED, _classNames[styles$H['page--fullwidth']] = size === PAGE_SIZES.FULL_WIDTH, _classNames)),
7238
+ className: classnames(styles$G['page'], (_classNames = {}, _classNames[styles$G['page--restricted']] = size === PAGE_SIZES.RESTRICTED, _classNames[styles$G['page--fullwidth']] = size === PAGE_SIZES.FULL_WIDTH, _classNames)),
7009
7239
  "data-testid": testId
7010
7240
  }, React__default.createElement(Stack, {
7011
7241
  space: 20
@@ -7025,7 +7255,7 @@ var Page = function Page(_ref) {
7025
7255
  }, title), actions), subtitle && React__default.createElement(Text, null, subtitle)), banner, filterBar)), children));
7026
7256
  };
7027
7257
 
7028
- var styles$I = {"form-section":"_7-5gD","form-section__title":"_a83vM","form-section__subtitle":"_1lKv8","form-section--no-margin":"_lZyFQ"};
7258
+ var styles$H = {"form-section":"_7-5gD","form-section__title":"_a83vM","form-section__subtitle":"_1lKv8","form-section--no-margin":"_lZyFQ"};
7029
7259
 
7030
7260
  var FormSection = function FormSection(_ref) {
7031
7261
  var _classnames;
@@ -7037,14 +7267,14 @@ var FormSection = function FormSection(_ref) {
7037
7267
  noMargin = _ref$noMargin === void 0 ? false : _ref$noMargin,
7038
7268
  testId = _ref.testId;
7039
7269
  return React__default.createElement("div", {
7040
- className: classnames(styles$I['form-section'], (_classnames = {}, _classnames[styles$I['form-section--no-margin']] = noMargin, _classnames)),
7270
+ className: classnames(styles$H['form-section'], (_classnames = {}, _classnames[styles$H['form-section--no-margin']] = noMargin, _classnames)),
7041
7271
  "data-testid": testId
7042
7272
  }, React__default.createElement(Stack, null, React__default.createElement(Stack, {
7043
7273
  space: 8
7044
7274
  }, title && React__default.createElement("h2", {
7045
- className: classnames(styles$I['form-section__title'])
7275
+ className: classnames(styles$H['form-section__title'])
7046
7276
  }, title), subtitle && React__default.createElement("h3", {
7047
- className: classnames(styles$I['form-section__subtitle'])
7277
+ className: classnames(styles$H['form-section__subtitle'])
7048
7278
  }, subtitle)), children));
7049
7279
  };
7050
7280
 
@@ -7062,7 +7292,7 @@ var updateButtonProps$1 = function updateButtonProps(child, newProps) {
7062
7292
  }, newProps, child.props));
7063
7293
  };
7064
7294
 
7065
- var styles$J = {"form-footer":"_3vVBF"};
7295
+ var styles$I = {"form-footer":"_3vVBF"};
7066
7296
 
7067
7297
  var FormFooterActions = function FormFooterActions(_ref) {
7068
7298
  var _actions$primary, _actions$secondary, _actions$tertiary;
@@ -7097,7 +7327,7 @@ var FormFooter = function FormFooter(_ref) {
7097
7327
  });
7098
7328
  var isInlineChildren = React__default.Children.count(children) === 1 && React__default.isValidElement(children) && children.type === Inline;
7099
7329
  return React__default.createElement("div", {
7100
- className: classnames(styles$J['form-footer']),
7330
+ className: classnames(styles$I['form-footer']),
7101
7331
  "data-testid": testId
7102
7332
  }, actions && React__default.createElement(FormFooterActions, {
7103
7333
  actions: actions
@@ -7139,12 +7369,12 @@ var Form = function Form(_ref) {
7139
7369
  }
7140
7370
  }, React__default.createElement("form", {
7141
7371
  onSubmit: onSubmit ? handleSubmit : formik === null || formik === void 0 ? void 0 : formik.handleSubmit,
7142
- className: classnames((_classnames = {}, _classnames[styles$D['form--standard-size']] = !wide, _classnames)),
7372
+ className: classnames((_classnames = {}, _classnames[styles$C['form--standard-size']] = !wide, _classnames)),
7143
7373
  "data-testid": testId
7144
7374
  }, stackContent ? React__default.createElement(Stack, null, formattedChildren) : formattedChildren));
7145
7375
  };
7146
7376
 
7147
- var styles$K = {"form-row":"_2i-Ll"};
7377
+ var styles$J = {"form-row":"_2i-Ll"};
7148
7378
 
7149
7379
  var SIZE_25_PERCENT = '25%';
7150
7380
  var SIZE_33_PERCENT = '33.333%';
@@ -7175,7 +7405,7 @@ var FormRow = function FormRow(_ref) {
7175
7405
  space: 20,
7176
7406
  testId: testId,
7177
7407
  alignItems: "stretch",
7178
- extraClass: styles$K['form-row']
7408
+ extraClass: styles$J['form-row']
7179
7409
  }, children, additionalColumns.map(function (_, index) {
7180
7410
  return React__default.createElement("span", {
7181
7411
  key: index,
@@ -7184,7 +7414,7 @@ var FormRow = function FormRow(_ref) {
7184
7414
  }));
7185
7415
  };
7186
7416
 
7187
- var styles$L = {"text-field":"_BkzdC","text-field--focus":"_Rop31","text-field--disabled":"_2x3Cm","text-field--invalid":"_3zOwV","text-field__toolbar":"_rQqnL"};
7417
+ var styles$K = {"text-field":"_BkzdC","text-field--focus":"_Rop31","text-field--disabled":"_2x3Cm","text-field--invalid":"_3zOwV","text-field__toolbar":"_rQqnL"};
7188
7418
 
7189
7419
  var useGrowTextAreaRef = function useGrowTextAreaRef(minHeight, maxHeight, autoGrow, forwardedRef) {
7190
7420
  var textareaRef = React.useRef(null);
@@ -7260,7 +7490,7 @@ var TextAreaField = function TextAreaField(_ref) {
7260
7490
  updateHeight = _useGrowTextAreaRef.updateHeight;
7261
7491
 
7262
7492
  return React__default.createElement(Field, Object.assign({}, fieldProps), React__default.createElement("div", {
7263
- className: classnames(styles$L['text-field'], (_classnames = {}, _classnames[styles$L['text-field--invalid']] = hasError, _classnames[styles$L['text-field--disabled']] = disabled, _classnames[styles$L['text-field--focus']] = hasFocus, _classnames)),
7493
+ className: classnames(styles$K['text-field'], (_classnames = {}, _classnames[styles$K['text-field--invalid']] = hasError, _classnames[styles$K['text-field--disabled']] = disabled, _classnames[styles$K['text-field--focus']] = hasFocus, _classnames)),
7264
7494
  ref: containerRef,
7265
7495
  onClick: function onClick(event) {
7266
7496
  if (event.target === (containerRef === null || containerRef === void 0 ? void 0 : containerRef.current)) {
@@ -7292,7 +7522,7 @@ var TextAreaField = function TextAreaField(_ref) {
7292
7522
  },
7293
7523
  ref: textAreaRef
7294
7524
  }), toolbar && React__default.createElement("div", {
7295
- className: styles$L['text-field__toolbar'],
7525
+ className: styles$K['text-field__toolbar'],
7296
7526
  id: controllers.id + "-toolbar",
7297
7527
  ref: toolbarRef,
7298
7528
  onClick: function onClick(event) {
@@ -7305,79 +7535,12 @@ var TextAreaField = function TextAreaField(_ref) {
7305
7535
  }, toolbar)));
7306
7536
  };
7307
7537
 
7308
- var useTextField = function useTextField(_ref) {
7309
- var _classnames;
7310
-
7311
- var autoComplete = _ref.autoComplete,
7312
- autoFocus = _ref.autoFocus,
7313
- defaultValue = _ref.defaultValue,
7314
- disabled = _ref.disabled,
7315
- error = _ref.error,
7316
- id = _ref.id,
7317
- maxLength = _ref.maxLength,
7318
- name = _ref.name,
7319
- caption = _ref.caption,
7320
- label = _ref.label,
7321
- onBlur = _ref.onBlur,
7322
- onChange = _ref.onChange,
7323
- onFocus = _ref.onFocus,
7324
- onKeyDown = _ref.onKeyDown,
7325
- placeholder = _ref.placeholder,
7326
- value = _ref.value,
7327
- ref = _ref.ref,
7328
- testId = _ref.testId;
7329
- var controllers = useFieldControllers({
7330
- error: error,
7331
- id: id,
7332
- name: name,
7333
- onChange: onChange,
7334
- onBlur: onBlur,
7335
- onFocus: onFocus,
7336
- onKeyDown: onKeyDown,
7337
- value: value
7338
- });
7339
- var hasError = !!controllers.error;
7340
- var inputProps = {
7341
- 'aria-describedby': hasError ? controllers.id + "-error-message" : controllers.id + "-describer",
7342
- 'aria-invalid': hasError,
7343
- autoComplete: autoComplete,
7344
- autoFocus: autoFocus,
7345
- className: classnames(styles$y['text-field'], (_classnames = {}, _classnames[styles$y['text-field--invalid']] = hasError, _classnames)),
7346
- 'data-testid': testId,
7347
- disabled: disabled,
7348
- defaultValue: defaultValue,
7349
- id: controllers.id,
7350
- maxLength: maxLength,
7351
- name: name,
7352
- onBlur: controllers.onBlur,
7353
- onChange: controllers.onChange,
7354
- onFocus: controllers.onFocus,
7355
- onKeyDown: controllers.onKeyDown,
7356
- placeholder: placeholder,
7357
- ref: ref,
7358
- size: 1,
7359
- type: 'text',
7360
- value: controllers.value
7361
- };
7362
- var fieldProps = {
7363
- caption: caption,
7364
- error: controllers.error,
7365
- label: label,
7366
- id: inputProps.id,
7367
- name: name
7368
- };
7369
- return {
7370
- inputProps: inputProps,
7371
- fieldProps: fieldProps
7372
- };
7373
- };
7374
-
7375
- var _excluded$2m = ["prefix", "suffix"];
7538
+ var _excluded$2n = ["prefix", "suffix"];
7376
7539
 
7377
7540
  var TextFieldElement = function TextFieldElement(_ref, ref) {
7378
7541
  var prefix = _ref.prefix,
7379
7542
  suffix = _ref.suffix,
7380
- props = _objectWithoutPropertiesLoose(_ref, _excluded$2m);
7543
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$2n);
7381
7544
 
7382
7545
  var _useTextField = useTextField(_extends({}, props, {
7383
7546
  ref: ref
@@ -7439,7 +7602,7 @@ var useCheckBoxFieldControllers = function useCheckBoxFieldControllers(_ref) {
7439
7602
  return controllers;
7440
7603
  };
7441
7604
 
7442
- var styles$M = {"check-box-field":"_2sg0c","check-box-field__caption":"_2LdrP","check-box-field__custom-input":"_2mA8e"};
7605
+ var styles$L = {"check-box-field":"_2sg0c","check-box-field__caption":"_2LdrP","check-box-field__custom-input":"_2mA8e"};
7443
7606
 
7444
7607
  var CheckboxField = function CheckboxField(_ref) {
7445
7608
  var name = _ref.name,
@@ -7469,7 +7632,7 @@ var CheckboxField = function CheckboxField(_ref) {
7469
7632
  flexItems: true,
7470
7633
  flex: ['0 0 auto']
7471
7634
  }, React__default.createElement("div", {
7472
- className: styles$M['check-box-field']
7635
+ className: styles$L['check-box-field']
7473
7636
  }, React__default.createElement("input", {
7474
7637
  name: name,
7475
7638
  id: controllers.id,
@@ -7482,12 +7645,12 @@ var CheckboxField = function CheckboxField(_ref) {
7482
7645
  onChange: controllers.onChange,
7483
7646
  onBlur: controllers.onBlur
7484
7647
  }), React__default.createElement("span", {
7485
- className: styles$M['check-box-field__custom-input']
7648
+ className: styles$L['check-box-field__custom-input']
7486
7649
  })), label && React__default.createElement(Label, {
7487
7650
  htmlFor: controllers.id,
7488
7651
  truncate: false
7489
7652
  }, label)), caption && React__default.createElement("div", {
7490
- className: styles$M['check-box-field__caption']
7653
+ className: styles$L['check-box-field__caption']
7491
7654
  }, React__default.createElement(Caption, {
7492
7655
  fieldId: controllers.id
7493
7656
  }, caption)), controllers.error && React__default.createElement(ErrorMessage, {
@@ -7495,7 +7658,7 @@ var CheckboxField = function CheckboxField(_ref) {
7495
7658
  }, controllers.error));
7496
7659
  };
7497
7660
 
7498
- var styles$N = {"pill-select-field":"_g6T-p","pill-select-field__custom-input":"_1i2AX"};
7661
+ var styles$M = {"pill-select-field":"_g6T-p","pill-select-field__custom-input":"_1i2AX"};
7499
7662
 
7500
7663
  var useMultiSelectFieldControllers = function useMultiSelectFieldControllers(_ref) {
7501
7664
  var name = _ref.name,
@@ -7587,7 +7750,7 @@ var PillSelectField = function PillSelectField(_ref) {
7587
7750
  var itemId = controllers.id + "-" + itemIdentifier;
7588
7751
  return React__default.createElement("div", {
7589
7752
  key: itemIdentifier,
7590
- className: styles$N['pill-select-field']
7753
+ className: styles$M['pill-select-field']
7591
7754
  }, React__default.createElement("input", {
7592
7755
  name: name + "-" + itemIdentifier,
7593
7756
  id: itemId,
@@ -7609,7 +7772,7 @@ var PillSelectField = function PillSelectField(_ref) {
7609
7772
  controllers.onChange(newValue);
7610
7773
  }
7611
7774
  }), React__default.createElement("span", {
7612
- className: styles$N['pill-select-field__custom-input']
7775
+ className: styles$M['pill-select-field__custom-input']
7613
7776
  }, option.label));
7614
7777
  })));
7615
7778
  };
@@ -7657,9 +7820,9 @@ var useRadioGroupFieldContext = function useRadioGroupFieldContext() {
7657
7820
  return context;
7658
7821
  };
7659
7822
 
7660
- var styles$O = {"label":"_1WGz2","label--truncate":"_mQ9Rd","radio-group-field__label":"_RXyG_"};
7823
+ var styles$N = {"label":"_1WGz2","label--truncate":"_mQ9Rd","radio-group-field__label":"_RXyG_"};
7661
7824
 
7662
- var styles$P = {"label":"_1Tw96","label--truncate":"_1o8rK","radio-group-box-option":"_2OGKE","radio-group-box-option__box":"_23M9k","radio-group-box-option__label":"_1r-Wg"};
7825
+ var styles$O = {"label":"_1Tw96","label--truncate":"_1o8rK","radio-group-box-option":"_2OGKE","radio-group-box-option__box":"_23M9k","radio-group-box-option__label":"_1r-Wg"};
7663
7826
 
7664
7827
  var RadioGroupBoxOption = function RadioGroupBoxOption(_ref) {
7665
7828
  var value = _ref.value,
@@ -7674,7 +7837,7 @@ var RadioGroupBoxOption = function RadioGroupBoxOption(_ref) {
7674
7837
  id: inputId
7675
7838
  });
7676
7839
  return React__default.createElement("label", {
7677
- className: styles$P['radio-group-box-option']
7840
+ className: styles$O['radio-group-box-option']
7678
7841
  }, React__default.createElement("input", {
7679
7842
  type: "radio",
7680
7843
  "data-testid": testId,
@@ -7685,7 +7848,7 @@ var RadioGroupBoxOption = function RadioGroupBoxOption(_ref) {
7685
7848
  checked: radioGroupContext.value !== undefined ? radioGroupContext.value === value : undefined,
7686
7849
  disabled: radioGroupContext.disabled
7687
7850
  }), React__default.createElement("div", {
7688
- className: styles$P['radio-group-box-option__box']
7851
+ className: styles$O['radio-group-box-option__box']
7689
7852
  }, React__default.createElement(Stack, {
7690
7853
  space: 16,
7691
7854
  alignItems: "center",
@@ -7694,13 +7857,13 @@ var RadioGroupBoxOption = function RadioGroupBoxOption(_ref) {
7694
7857
  space: 8,
7695
7858
  alignItems: "center"
7696
7859
  }, label && React__default.createElement("div", {
7697
- className: styles$P['radio-group-box-option__label']
7860
+ className: styles$O['radio-group-box-option__label']
7698
7861
  }, label), caption && React__default.createElement(Caption, {
7699
7862
  fieldId: id
7700
7863
  }, caption)))));
7701
7864
  };
7702
7865
 
7703
- var styles$Q = {"radio-group-option":"_1Clmp","radio-group-option__caption":"_3UmWA","radio-group-option__custom-input":"_1tMq-"};
7866
+ var styles$P = {"radio-group-option":"_1Clmp","radio-group-option__caption":"_3UmWA","radio-group-option__custom-input":"_1tMq-"};
7704
7867
 
7705
7868
  var RadioGroupOption = function RadioGroupOption(_ref) {
7706
7869
  var value = _ref.value,
@@ -7719,7 +7882,7 @@ var RadioGroupOption = function RadioGroupOption(_ref) {
7719
7882
  space: 8,
7720
7883
  alignItems: "center"
7721
7884
  }, React__default.createElement("div", {
7722
- className: styles$Q['radio-group-option']
7885
+ className: styles$P['radio-group-option']
7723
7886
  }, React__default.createElement("input", {
7724
7887
  type: "radio",
7725
7888
  "data-testid": testId,
@@ -7730,11 +7893,11 @@ var RadioGroupOption = function RadioGroupOption(_ref) {
7730
7893
  checked: radioGroupContext.value !== undefined ? radioGroupContext.value === value : undefined,
7731
7894
  disabled: radioGroupContext.disabled
7732
7895
  }), React__default.createElement("span", {
7733
- className: styles$Q['radio-group-option__custom-input']
7896
+ className: styles$P['radio-group-option__custom-input']
7734
7897
  })), label && React__default.createElement(Label, {
7735
7898
  htmlFor: id
7736
7899
  }, label)), caption && React__default.createElement("div", {
7737
- className: styles$Q['radio-group-option__caption']
7900
+ className: styles$P['radio-group-option__caption']
7738
7901
  }, React__default.createElement(Caption, {
7739
7902
  fieldId: id
7740
7903
  }, caption)));
@@ -7869,7 +8032,7 @@ var RadioGroupField = function RadioGroupField(_ref) {
7869
8032
  }, React__default.createElement(Stack, {
7870
8033
  space: 12
7871
8034
  }, label && React__default.createElement("div", {
7872
- className: styles$O['radio-group-field__label']
8035
+ className: styles$N['radio-group-field__label']
7873
8036
  }, label), React__default.createElement(Stack, {
7874
8037
  space: 8
7875
8038
  }, optionsType === OPTION_TYPES.RADIO ? React__default.createElement(RadioOptions, {
@@ -7882,9 +8045,9 @@ var RadioGroupField = function RadioGroupField(_ref) {
7882
8045
  }, children), controllers.error && React__default.createElement(ErrorMessage, null, controllers.error))));
7883
8046
  };
7884
8047
 
7885
- var styles$R = {"text-field":"_18Rzv","text-field--invalid":"_3eD7t","text-field--prefixed":"_2evrG","text-field--suffixed":"_-MgeO","password-container":"_-Rf3c","password-toggle":"_yinPY"};
8048
+ var styles$Q = {"text-field":"_18Rzv","text-field--invalid":"_3eD7t","text-field--prefixed":"_2evrG","text-field--suffixed":"_-MgeO","password-container":"_-Rf3c","password-toggle":"_yinPY"};
7886
8049
 
7887
- var styles$S = {"password-criteria":"_U0krC","password-criteria--invalid":"_2XIl4"};
8050
+ var styles$R = {"password-criteria":"_U0krC","password-criteria--invalid":"_2XIl4"};
7888
8051
 
7889
8052
  var PasswordCriteria = function PasswordCriteria(_ref) {
7890
8053
  var _classnames;
@@ -7892,7 +8055,7 @@ var PasswordCriteria = function PasswordCriteria(_ref) {
7892
8055
  var met = _ref.met,
7893
8056
  children = _ref.children;
7894
8057
  return React__default.createElement("span", {
7895
- className: classnames(styles$S['password-criteria'], (_classnames = {}, _classnames[styles$S['password-criteria--invalid']] = !met, _classnames))
8058
+ className: classnames(styles$R['password-criteria'], (_classnames = {}, _classnames[styles$R['password-criteria--invalid']] = !met, _classnames))
7896
8059
  }, React__default.createElement(Inline, {
7897
8060
  space: met ? 4 : 8
7898
8061
  }, met ? React__default.createElement(IconCheck, {
@@ -7977,11 +8140,11 @@ var PasswordField = function PasswordField(_ref) {
7977
8140
  error: controllers.error
7978
8141
  };
7979
8142
  return React__default.createElement(Field, Object.assign({}, fieldProps), React__default.createElement("div", {
7980
- className: styles$R['password-container']
8143
+ className: styles$Q['password-container']
7981
8144
  }, React__default.createElement("input", {
7982
8145
  name: name,
7983
8146
  id: controllers.id,
7984
- className: classnames(styles$R['text-field'], (_classnames = {}, _classnames[styles$R['text-field--invalid']] = hasError, _classnames)),
8147
+ className: classnames(styles$Q['text-field'], (_classnames = {}, _classnames[styles$Q['text-field--invalid']] = hasError, _classnames)),
7985
8148
  type: type,
7986
8149
  "data-testid": testId,
7987
8150
  "aria-describedby": hasError ? controllers.id + "-error-message" : controllers.id + "-describer",
@@ -7993,7 +8156,7 @@ var PasswordField = function PasswordField(_ref) {
7993
8156
  onChange: controllers.onChange,
7994
8157
  onBlur: controllers.onBlur
7995
8158
  }), React__default.createElement("div", {
7996
- className: styles$R['password-toggle'],
8159
+ className: styles$Q['password-toggle'],
7997
8160
  onClick: toggleType,
7998
8161
  onKeyPress: toggleType,
7999
8162
  "data-testid": testId && testId + "-toggle",
@@ -8084,15 +8247,15 @@ var MultiSelectField = function MultiSelectField(_ref) {
8084
8247
  }));
8085
8248
  };
8086
8249
 
8087
- var styles$T = {"custom-list":"_uC4zU"};
8250
+ var styles$S = {"custom-list":"_uC4zU"};
8088
8251
 
8089
- var _excluded$2n = ["children", "hasMoreOptions", "hasMoreOptionsFirstLoad"];
8252
+ var _excluded$2o = ["children", "hasMoreOptions", "hasMoreOptionsFirstLoad"];
8090
8253
 
8091
8254
  var CustomList = function CustomList(_ref) {
8092
8255
  var children = _ref.children,
8093
8256
  hasMoreOptions = _ref.hasMoreOptions,
8094
8257
  hasMoreOptionsFirstLoad = _ref.hasMoreOptionsFirstLoad,
8095
- props = _objectWithoutPropertiesLoose(_ref, _excluded$2n);
8258
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$2o);
8096
8259
 
8097
8260
  var showFooter = hasMoreOptions;
8098
8261
 
@@ -8103,15 +8266,15 @@ var CustomList = function CustomList(_ref) {
8103
8266
  return React__default.createElement(Select.components.MenuList, Object.assign({}, props), React__default.createElement(React.Fragment, null, children, showFooter && React__default.createElement(Inline, {
8104
8267
  justifyContent: "center"
8105
8268
  }, React__default.createElement("div", {
8106
- className: styles$T['custom-list']
8269
+ className: styles$S['custom-list']
8107
8270
  }, getLocalizedString('main.START_TYPING_TO_SEE_MORE_OPTIONS')))));
8108
8271
  };
8109
8272
 
8110
- var _excluded$2o = ["loadOptions"];
8273
+ var _excluded$2p = ["loadOptions"];
8111
8274
 
8112
8275
  var AsyncSelectField = function AsyncSelectField(_ref) {
8113
8276
  var loadOptions = _ref.loadOptions,
8114
- props = _objectWithoutPropertiesLoose(_ref, _excluded$2o);
8277
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$2p);
8115
8278
 
8116
8279
  var _useState = React.useState(false),
8117
8280
  hasMoreOptions = _useState[0],
@@ -8332,7 +8495,7 @@ var DateField = function DateField(_ref) {
8332
8495
  error: controllers.error
8333
8496
  };
8334
8497
  var dayPickerProps = {
8335
- classNames: styles$m,
8498
+ classNames: styles$h,
8336
8499
  disabledDays: function disabledDays(day) {
8337
8500
  return _disabledDays && _disabledDays(setToMidnight(day));
8338
8501
  },
@@ -8350,7 +8513,7 @@ var DateField = function DateField(_ref) {
8350
8513
  })
8351
8514
  }, React__default.createElement(DayPickerInput, {
8352
8515
  format: format,
8353
- classNames: styles$m,
8516
+ classNames: styles$h,
8354
8517
  formatDate: formatDate,
8355
8518
  parseDate: parseDate,
8356
8519
  placeholder: placeholder || format.toUpperCase(),
@@ -8459,7 +8622,7 @@ var getFormikError = function getFormikError(error) {
8459
8622
  return undefined;
8460
8623
  };
8461
8624
 
8462
- var styles$U = {"container":"_1Ini2","wrapper":"_21VnL","interactionDisabled":"_wJ6Cb","DayPicker-Day":"_1c48y","navBar":"_3KwsN","todayButton":"_10CBO","navButtonInteractionDisabled":"_dHL-D","navButtonPrev":"_6kNi3","navButtonNext":"_13W_e","months":"_1FeSY","month":"_wU6A4","caption":"_AMbAo","weekdays":"_1LEst","weekdaysRow":"_2XECo","weekday":"_1C5ry","body":"_11F-Y","week":"_3MAFk","day":"_mG73F","disabled":"_2pgnH","selected":"_MtLaz","outside":"_CRqyX","footer":"_2KG9-","today":"_2JA2y","overlayWrapper":"_1JWbc","overlay":"_2tL6g","weekNumber":"_3u72O","text-field":"_25rf7","date-range-field":"_3qVhi","text-field--invalid":"_2M9Ud","text-field--prefixed":"_3TUb2","text-field--suffixed":"_foqL0","date-range-field--invalid":"_3df9R","date-range-field--disabled":"_2Nkht"};
8625
+ var styles$T = {"container":"_1Ini2","wrapper":"_21VnL","interactionDisabled":"_wJ6Cb","DayPicker-Day":"_1c48y","navBar":"_3KwsN","todayButton":"_10CBO","navButtonInteractionDisabled":"_dHL-D","navButtonPrev":"_6kNi3","navButtonNext":"_13W_e","months":"_1FeSY","month":"_wU6A4","caption":"_AMbAo","weekdays":"_1LEst","weekdaysRow":"_2XECo","weekday":"_1C5ry","body":"_11F-Y","week":"_3MAFk","day":"_mG73F","disabled":"_2pgnH","selected":"_MtLaz","outside":"_CRqyX","footer":"_2KG9-","today":"_2JA2y","overlayWrapper":"_1JWbc","overlay":"_2tL6g","weekNumber":"_3u72O","text-field":"_25rf7","date-range-field":"_3qVhi","text-field--invalid":"_2M9Ud","text-field--prefixed":"_3TUb2","text-field--suffixed":"_foqL0","date-range-field--invalid":"_3df9R","date-range-field--disabled":"_2Nkht"};
8463
8626
 
8464
8627
  var FromDate = function FromDate(_ref) {
8465
8628
  var name = _ref.name,
@@ -8498,7 +8661,7 @@ var FromDate = function FromDate(_ref) {
8498
8661
  }
8499
8662
 
8500
8663
  var dayPickerProps = {
8501
- classNames: styles$U,
8664
+ classNames: styles$T,
8502
8665
  months: MONTH_NAMES,
8503
8666
  weekdaysLong: DAYS,
8504
8667
  weekdaysShort: DAYS.map(function (day) {
@@ -8525,7 +8688,7 @@ var FromDate = function FromDate(_ref) {
8525
8688
  };
8526
8689
  return React__default.createElement(DayPickerInput, {
8527
8690
  format: format,
8528
- classNames: styles$U,
8691
+ classNames: styles$T,
8529
8692
  selectedDay: start,
8530
8693
  value: start,
8531
8694
  formatDate: formatDate,
@@ -8599,7 +8762,7 @@ var ToDate = function ToDate(_ref, ref) {
8599
8762
  }
8600
8763
 
8601
8764
  var dayPickerProps = {
8602
- classNames: styles$U,
8765
+ classNames: styles$T,
8603
8766
  months: MONTH_NAMES,
8604
8767
  weekdaysLong: DAYS,
8605
8768
  weekdaysShort: DAYS.map(function (day) {
@@ -8618,7 +8781,7 @@ var ToDate = function ToDate(_ref, ref) {
8618
8781
  };
8619
8782
  return React__default.createElement(DayPickerInput, {
8620
8783
  format: format,
8621
- classNames: styles$U,
8784
+ classNames: styles$T,
8622
8785
  selectedDay: end,
8623
8786
  value: end,
8624
8787
  formatDate: formatDate,
@@ -8703,7 +8866,7 @@ var DateRangeField = function DateRangeField(_ref) {
8703
8866
  start = _controllers$value.start,
8704
8867
  end = _controllers$value.end;
8705
8868
  return React__default.createElement(Field, Object.assign({}, fieldProps), React__default.createElement("div", {
8706
- className: classnames(styles$U['date-range-field'], (_classnames = {}, _classnames[styles$U['date-range-field--invalid']] = hasError, _classnames[styles$U['date-range-field--disabled']] = disabled, _classnames)),
8869
+ className: classnames(styles$T['date-range-field'], (_classnames = {}, _classnames[styles$T['date-range-field--invalid']] = hasError, _classnames[styles$T['date-range-field--disabled']] = disabled, _classnames)),
8707
8870
  "data-testid": testId
8708
8871
  }, React__default.createElement(IconCalendarAlt, {
8709
8872
  size: "medium",
@@ -8830,7 +8993,7 @@ var WeekField = function WeekField(_ref) {
8830
8993
  };
8831
8994
 
8832
8995
  var dayPickerProps = {
8833
- classNames: styles$n,
8996
+ classNames: styles$i,
8834
8997
  disabledDays: function disabledDays(day) {
8835
8998
  return _disabledDays && _disabledDays(setToMidnight(day));
8836
8999
  },
@@ -8860,7 +9023,7 @@ var WeekField = function WeekField(_ref) {
8860
9023
  })
8861
9024
  }, React__default.createElement(DayPickerInput, {
8862
9025
  format: format,
8863
- classNames: styles$n,
9026
+ classNames: styles$i,
8864
9027
  formatDate: formatDate,
8865
9028
  parseDate: parseDate,
8866
9029
  placeholder: placeholder || format.toUpperCase(),
@@ -8899,42 +9062,149 @@ var WeekField = function WeekField(_ref) {
8899
9062
  })));
8900
9063
  };
8901
9064
 
8902
- var _excluded$2p = ["placeholder", "autoComplete"];
9065
+ var getTimeOptions = function getTimeOptions(interval, startTime) {
9066
+ if (startTime === void 0) {
9067
+ startTime = new Date('Janurary 1 2023 00:00:00');
9068
+ }
8903
9069
 
8904
- var TimeFieldElement = function TimeFieldElement(_ref, ref) {
8905
- var _ref$placeholder = _ref.placeholder,
8906
- placeholder = _ref$placeholder === void 0 ? '9am' : _ref$placeholder,
8907
- _ref$autoComplete = _ref.autoComplete,
8908
- autoComplete = _ref$autoComplete === void 0 ? 'off' : _ref$autoComplete,
8909
- allOtherProps = _objectWithoutPropertiesLoose(_ref, _excluded$2p);
9070
+ var optionsCount = 60 * 24 / interval;
9071
+ var timeOptions = [];
9072
+ var intervalCoeffecient = 1000 * 60 * interval;
9073
+ var rounded = new Date(Math.ceil(startTime.getTime() / intervalCoeffecient) * intervalCoeffecient);
8910
9074
 
8911
- var _useTextField = useTextField(_extends({}, allOtherProps, {
8912
- placeholder: placeholder,
8913
- autoComplete: autoComplete,
8914
- ref: ref
8915
- })),
8916
- inputProps = _useTextField.inputProps,
8917
- fieldProps = _useTextField.fieldProps;
9075
+ var formatHours = function formatHours(hours) {
9076
+ if (hours === 0) {
9077
+ return 12;
9078
+ } else if (hours > 12) {
9079
+ return hours - 12;
9080
+ } else {
9081
+ return hours;
9082
+ }
9083
+ };
8918
9084
 
8919
- return React__default.createElement(Field, Object.assign({}, fieldProps), React__default.createElement("input", Object.assign({}, inputProps, {
8920
- onBlur: function onBlur(e) {
8921
- e.target.value = parseTime(e.target.value, 'g:i A');
8922
- inputProps.onChange(e);
8923
- inputProps.onBlur(e);
9085
+ for (var i = 0; i < optionsCount; i++) {
9086
+ var newDate = new Date(rounded.getTime());
9087
+ newDate.setMinutes(rounded.getMinutes() + interval * i);
9088
+ var minutes = newDate.getMinutes();
9089
+ timeOptions.push(formatHours(newDate.getHours()) + ":" + (minutes === 0 ? '00' : minutes) + " " + (newDate.getHours() < 12 ? 'AM' : 'PM'));
9090
+ }
9091
+
9092
+ return timeOptions;
9093
+ };
9094
+
9095
+ var TimeFieldDropdown = function TimeFieldDropdown(_ref) {
9096
+ var trigger = _ref.trigger,
9097
+ interval = _ref.interval,
9098
+ startTime = _ref.startTime,
9099
+ onOptionClick = _ref.onOptionClick,
9100
+ inputValue = _ref.inputValue,
9101
+ width = _ref.width;
9102
+ var startTimeParsed;
9103
+
9104
+ if (startTime) {
9105
+ startTimeParsed = startTime === 'now' ? new Date() : new Date('Janurary 1 2023 ' + parseTime(startTime, 'g:i A'));
9106
+ }
9107
+
9108
+ var timeOptions = React.useMemo(function () {
9109
+ return getTimeOptions(interval, startTimeParsed);
9110
+ }, [interval, startTime]);
9111
+
9112
+ var _useState = React.useState(undefined),
9113
+ index = _useState[0],
9114
+ setIndex = _useState[1];
9115
+
9116
+ React.useEffect(function () {
9117
+ if (inputValue) {
9118
+ setIndex(timeOptions.findIndex(function (option) {
9119
+ return option.toLowerCase().startsWith(inputValue.toLowerCase());
9120
+ }));
8924
9121
  }
9122
+ }, [inputValue]);
9123
+ return React__default.createElement(Dropdown, {
9124
+ triggerWidth: "full",
9125
+ trigger: trigger,
9126
+ alignment: "left",
9127
+ width: width,
9128
+ maxHeight: 397
9129
+ }, React__default.createElement(DropdownList, {
9130
+ highlightItemIndex: index
9131
+ }, timeOptions.map(function (option) {
9132
+ return React__default.createElement(DropdownListItem, {
9133
+ key: option,
9134
+ onClick: function onClick() {
9135
+ onOptionClick(option);
9136
+ }
9137
+ }, option);
8925
9138
  })));
8926
9139
  };
8927
9140
 
9141
+ var _excluded$2q = ["interval", "startTime"];
9142
+
9143
+ var TimeFieldElement = function TimeFieldElement(_ref, forwardedRef) {
9144
+ var _ref$interval = _ref.interval,
9145
+ interval = _ref$interval === void 0 ? 15 : _ref$interval,
9146
+ startTime = _ref.startTime,
9147
+ allOtherProps = _objectWithoutPropertiesLoose(_ref, _excluded$2q);
9148
+
9149
+ var internalRef = React.useRef(null);
9150
+ var ref = forwardedRef || internalRef;
9151
+
9152
+ var _useState = React.useState(allOtherProps.defaultValue),
9153
+ inputValue = _useState[0],
9154
+ setInputValue = _useState[1];
9155
+
9156
+ var onOptionClick = function onOptionClick(option) {
9157
+ setInputValue(option);
9158
+ allOtherProps.onChange && allOtherProps.onChange(option);
9159
+ ref.current.value = option;
9160
+ ref.current.focus();
9161
+ ref.current.select();
9162
+ };
9163
+
9164
+ var _useState2 = React.useState(),
9165
+ width = _useState2[0],
9166
+ setWidth = _useState2[1];
9167
+
9168
+ React.useEffect(function () {
9169
+ updateDropdownWidth();
9170
+ window.addEventListener('resize', updateDropdownWidth);
9171
+ return function () {
9172
+ window.removeEventListener('resize', updateDropdownWidth);
9173
+ };
9174
+ }, []);
9175
+
9176
+ var updateDropdownWidth = function updateDropdownWidth() {
9177
+ setWidth(ref.current.offsetWidth);
9178
+ };
9179
+
9180
+ return React__default.createElement(TimeFieldDropdown, {
9181
+ interval: interval,
9182
+ trigger: React__default.createElement(TimeFieldDropdownTrigger, Object.assign({}, allOtherProps, {
9183
+ onClick: function onClick() {
9184
+ return ref.current.select();
9185
+ },
9186
+ ref: ref,
9187
+ onInputChange: function onInputChange(e) {
9188
+ return setInputValue(e);
9189
+ }
9190
+ })),
9191
+ startTime: startTime,
9192
+ onOptionClick: onOptionClick,
9193
+ inputValue: inputValue,
9194
+ width: width
9195
+ });
9196
+ };
9197
+
8928
9198
  var TimeField = React.forwardRef(TimeFieldElement);
8929
9199
 
8930
- var _excluded$2q = ["currencySymbol", "step"];
9200
+ var _excluded$2r = ["currencySymbol", "step"];
8931
9201
 
8932
9202
  var CurrencyFieldElement = function CurrencyFieldElement(_ref, ref) {
8933
9203
  var _ref$currencySymbol = _ref.currencySymbol,
8934
9204
  currencySymbol = _ref$currencySymbol === void 0 ? '$' : _ref$currencySymbol,
8935
9205
  _ref$step = _ref.step,
8936
9206
  step = _ref$step === void 0 ? 0.01 : _ref$step,
8937
- allOtherProps = _objectWithoutPropertiesLoose(_ref, _excluded$2q);
9207
+ allOtherProps = _objectWithoutPropertiesLoose(_ref, _excluded$2r);
8938
9208
 
8939
9209
  var _useTextField = useTextField(_extends({}, allOtherProps, {
8940
9210
  ref: ref
@@ -8973,7 +9243,7 @@ var CurrencyFieldElement = function CurrencyFieldElement(_ref, ref) {
8973
9243
 
8974
9244
  var CurrencyField = React.forwardRef(CurrencyFieldElement);
8975
9245
 
8976
- var _excluded$2r = ["max", "min", "precision", "stepSize"];
9246
+ var _excluded$2s = ["max", "min", "precision", "stepSize"];
8977
9247
 
8978
9248
  var PercentageElement = function PercentageElement(_ref, ref) {
8979
9249
  var _ref$max = _ref.max,
@@ -8984,7 +9254,7 @@ var PercentageElement = function PercentageElement(_ref, ref) {
8984
9254
  precision = _ref$precision === void 0 ? 0 : _ref$precision,
8985
9255
  _ref$stepSize = _ref.stepSize,
8986
9256
  stepSize = _ref$stepSize === void 0 ? 1 : _ref$stepSize,
8987
- allOtherProps = _objectWithoutPropertiesLoose(_ref, _excluded$2r);
9257
+ allOtherProps = _objectWithoutPropertiesLoose(_ref, _excluded$2s);
8988
9258
 
8989
9259
  var _useTextField = useTextField(_extends({}, allOtherProps, {
8990
9260
  ref: ref
@@ -9089,7 +9359,7 @@ var BUTTON_THEME = {
9089
9359
  UPSELL: 'upsell'
9090
9360
  };
9091
9361
 
9092
- var styles$V = {"banner":"_vgLin","banner__title":"_63TwY","banner__body":"_3n6S7","banner__body--multilineCTA":"_2pMYs","banner--info":"_ON6Eg","banner__icon":"_1-D-E","banner--success":"_1FFZh","banner--danger":"_2R34O","banner--warning":"_3Cfhe","banner--upsell":"_1SIOw","banner__close":"_3SNQ1","banner--single-line":"_3nLTI"};
9362
+ var styles$U = {"banner":"_vgLin","banner__title":"_63TwY","banner__body":"_3n6S7","banner__body--multilineCTA":"_2pMYs","banner--info":"_ON6Eg","banner__icon":"_1-D-E","banner--success":"_1FFZh","banner--danger":"_2R34O","banner--warning":"_3Cfhe","banner--upsell":"_1SIOw","banner__close":"_3SNQ1","banner--single-line":"_3nLTI"};
9093
9363
 
9094
9364
  var ButtonCTA = function ButtonCTA(_ref) {
9095
9365
  var button = _ref.button,
@@ -9112,7 +9382,7 @@ var ButtonCTA = function ButtonCTA(_ref) {
9112
9382
  }, button.props));
9113
9383
  };
9114
9384
 
9115
- var styles$W = {"banner__caption":"_1jqm8"};
9385
+ var styles$V = {"banner__caption":"_1jqm8"};
9116
9386
 
9117
9387
  var InlineBannerCTA = function InlineBannerCTA(_ref) {
9118
9388
  var primaryButton = _ref.primaryButton,
@@ -9143,7 +9413,7 @@ var InlineBannerCTA = function InlineBannerCTA(_ref) {
9143
9413
  bannerTheme: bannerTheme,
9144
9414
  primaryCTA: true
9145
9415
  })), caption && multiLine && React__default.createElement("div", {
9146
- className: styles$W['banner__caption']
9416
+ className: styles$V['banner__caption']
9147
9417
  }, caption));
9148
9418
  };
9149
9419
 
@@ -9168,7 +9438,7 @@ var InlineBannerIcon = function InlineBannerIcon(_ref) {
9168
9438
  }
9169
9439
  };
9170
9440
 
9171
- var _excluded$2s = ["children", "theme", "title", "onClose", "caption", "primaryButton", "secondaryButton", "testId"];
9441
+ var _excluded$2t = ["children", "theme", "title", "onClose", "caption", "primaryButton", "secondaryButton", "testId"];
9172
9442
 
9173
9443
  var InlineBanner = function InlineBanner(_ref) {
9174
9444
  var _classnames, _classnames2;
@@ -9182,7 +9452,7 @@ var InlineBanner = function InlineBanner(_ref) {
9182
9452
  primaryButton = _ref.primaryButton,
9183
9453
  secondaryButton = _ref.secondaryButton,
9184
9454
  testId = _ref.testId,
9185
- positionProps = _objectWithoutPropertiesLoose(_ref, _excluded$2s);
9455
+ positionProps = _objectWithoutPropertiesLoose(_ref, _excluded$2t);
9186
9456
 
9187
9457
  var positionStyles = usePositionStyles(positionProps);
9188
9458
  var multiLine = !!title;
@@ -9190,14 +9460,14 @@ var InlineBanner = function InlineBanner(_ref) {
9190
9460
  var Layout = multiLine ? Stack : Inline;
9191
9461
  return React__default.createElement("div", {
9192
9462
  "data-testid": testId,
9193
- className: classnames(styles$V['banner'], (_classnames = {}, _classnames[styles$V['banner--info']] = theme === BANNER_THEME.INFO, _classnames[styles$V['banner--warning']] = theme === BANNER_THEME.WARNING, _classnames[styles$V['banner--success']] = theme === BANNER_THEME.SUCCESS, _classnames[styles$V['banner--danger']] = theme === BANNER_THEME.DANGER, _classnames[styles$V['banner--upsell']] = theme === BANNER_THEME.UPSELL, _classnames[styles$V['banner--single-line']] = !multiLine, _classnames)),
9463
+ className: classnames(styles$U['banner'], (_classnames = {}, _classnames[styles$U['banner--info']] = theme === BANNER_THEME.INFO, _classnames[styles$U['banner--warning']] = theme === BANNER_THEME.WARNING, _classnames[styles$U['banner--success']] = theme === BANNER_THEME.SUCCESS, _classnames[styles$U['banner--danger']] = theme === BANNER_THEME.DANGER, _classnames[styles$U['banner--upsell']] = theme === BANNER_THEME.UPSELL, _classnames[styles$U['banner--single-line']] = !multiLine, _classnames)),
9194
9464
  style: positionStyles
9195
9465
  }, React__default.createElement(Inline, {
9196
9466
  alignItems: multiLine ? undefined : 'center',
9197
9467
  flex: ['0 1 auto', 1],
9198
9468
  space: 12
9199
9469
  }, React__default.createElement("div", {
9200
- className: styles$V['banner__icon']
9470
+ className: styles$U['banner__icon']
9201
9471
  }, React__default.createElement(InlineBannerIcon, {
9202
9472
  theme: theme
9203
9473
  })), React__default.createElement(Layout, {
@@ -9207,9 +9477,9 @@ var InlineBanner = function InlineBanner(_ref) {
9207
9477
  flex: ['min-content'],
9208
9478
  flexWrap: multiLine ? undefined : 'wrap'
9209
9479
  }, title && React__default.createElement("div", {
9210
- className: styles$V['banner__title']
9480
+ className: styles$U['banner__title']
9211
9481
  }, title), React__default.createElement("div", {
9212
- className: classnames(styles$V['banner__body'], (_classnames2 = {}, _classnames2[styles$V['banner__body--multilineCTA']] = primaryButton && multiLine, _classnames2))
9482
+ className: classnames(styles$U['banner__body'], (_classnames2 = {}, _classnames2[styles$U['banner__body--multilineCTA']] = primaryButton && multiLine, _classnames2))
9213
9483
  }, children), primaryButton && React__default.createElement(InlineBannerCTA, {
9214
9484
  primaryButton: primaryButton,
9215
9485
  secondaryButton: secondaryButton,
@@ -9217,7 +9487,7 @@ var InlineBanner = function InlineBanner(_ref) {
9217
9487
  multiLine: multiLine,
9218
9488
  bannerTheme: theme
9219
9489
  })), dismissable && React__default.createElement("div", {
9220
- className: styles$V['banner__close']
9490
+ className: styles$U['banner__close']
9221
9491
  }, React__default.createElement(Button$1, {
9222
9492
  theme: "link-icon",
9223
9493
  type: "button",
@@ -9231,7 +9501,7 @@ var PERSISTENT_BANNER_THEME = {
9231
9501
  DANGER: 'danger'
9232
9502
  };
9233
9503
 
9234
- var styles$X = {"persistent-banner":"_1KO1J","persistent-banner--info":"_2mTN3","persistent-banner--danger":"_1YuCF","persistent-banner--upsell":"_tlNFk"};
9504
+ var styles$W = {"persistent-banner":"_1KO1J","persistent-banner--info":"_2mTN3","persistent-banner--danger":"_1YuCF","persistent-banner--upsell":"_tlNFk"};
9235
9505
 
9236
9506
  var PersistentBanner = function PersistentBanner(_ref) {
9237
9507
  var _classNames;
@@ -9260,7 +9530,7 @@ var PersistentBanner = function PersistentBanner(_ref) {
9260
9530
  };
9261
9531
 
9262
9532
  return React__default.createElement("div", {
9263
- className: classnames(styles$X['persistent-banner'], (_classNames = {}, _classNames[styles$X['persistent-banner--info']] = theme === PERSISTENT_BANNER_THEME.INFO, _classNames[styles$X['persistent-banner--danger']] = theme === PERSISTENT_BANNER_THEME.DANGER, _classNames[styles$X['persistent-banner--upsell']] = theme === PERSISTENT_BANNER_THEME.UPSELL, _classNames)),
9533
+ className: classnames(styles$W['persistent-banner'], (_classNames = {}, _classNames[styles$W['persistent-banner--info']] = theme === PERSISTENT_BANNER_THEME.INFO, _classNames[styles$W['persistent-banner--danger']] = theme === PERSISTENT_BANNER_THEME.DANGER, _classNames[styles$W['persistent-banner--upsell']] = theme === PERSISTENT_BANNER_THEME.UPSELL, _classNames)),
9264
9534
  "data-testid": testId
9265
9535
  }, onDismiss ? React__default.createElement(Inline, {
9266
9536
  flex: [1],
@@ -9332,7 +9602,7 @@ var useProgress = function useProgress(progress, maxValue, getMetric) {
9332
9602
  };
9333
9603
  };
9334
9604
 
9335
- var styles$Y = {"circular-progress":"_1XR7V","circular-progress__label":"_1BygP","circular-progress__track":"_1Ak-z","circular-progress__indicator":"_22YIp"};
9605
+ var styles$X = {"circular-progress":"_1XR7V","circular-progress__label":"_1BygP","circular-progress__track":"_1Ak-z","circular-progress__indicator":"_22YIp"};
9336
9606
 
9337
9607
  var CircularProgress = function CircularProgress(_ref) {
9338
9608
  var progress = _ref.progress,
@@ -9347,7 +9617,7 @@ var CircularProgress = function CircularProgress(_ref) {
9347
9617
 
9348
9618
  var determinant = metric.percentage * 2.79;
9349
9619
  return React__default.createElement("div", Object.assign({}, elementProps, {
9350
- className: styles$Y['circular-progress'],
9620
+ className: styles$X['circular-progress'],
9351
9621
  "data-testid": testId
9352
9622
  }), React__default.createElement("svg", {
9353
9623
  viewBox: "0 0 100 100"
@@ -9356,21 +9626,21 @@ var CircularProgress = function CircularProgress(_ref) {
9356
9626
  cy: 50,
9357
9627
  r: 45,
9358
9628
  strokeWidth: "10px",
9359
- className: styles$Y['circular-progress__track']
9629
+ className: styles$X['circular-progress__track']
9360
9630
  }), React__default.createElement("circle", {
9361
9631
  cx: 50,
9362
9632
  cy: 50,
9363
9633
  r: 45,
9364
9634
  strokeWidth: "10px",
9365
- className: styles$Y['circular-progress__indicator'],
9635
+ className: styles$X['circular-progress__indicator'],
9366
9636
  strokeDashoffset: "66",
9367
9637
  strokeDasharray: determinant + " " + (279 - determinant)
9368
9638
  })), React__default.createElement("div", {
9369
- className: styles$Y['circular-progress__label']
9639
+ className: styles$X['circular-progress__label']
9370
9640
  }, children || metric.progress + "/" + metric.maxValue));
9371
9641
  };
9372
9642
 
9373
- var styles$Z = {"progress-bar":"_3nyZN","progress-bar__indicator":"_11TEp","progress-bar__steps":"_3XFTU"};
9643
+ var styles$Y = {"progress-bar":"_3nyZN","progress-bar__indicator":"_11TEp","progress-bar__steps":"_3XFTU"};
9374
9644
 
9375
9645
  var ProgressBar = function ProgressBar(_ref) {
9376
9646
  var progress = _ref.progress,
@@ -9385,15 +9655,15 @@ var ProgressBar = function ProgressBar(_ref) {
9385
9655
  metric = _useProgress.metric;
9386
9656
 
9387
9657
  return React__default.createElement(Stack, null, React__default.createElement("div", Object.assign({}, elementProps, {
9388
- className: styles$Z['progress-bar'],
9658
+ className: styles$Y['progress-bar'],
9389
9659
  "data-testid": testId
9390
9660
  }), React__default.createElement("div", {
9391
- className: styles$Z['progress-bar__indicator'],
9661
+ className: styles$Y['progress-bar__indicator'],
9392
9662
  style: {
9393
9663
  width: metric.percentage + "%"
9394
9664
  }
9395
9665
  })), steps && steps.length > 0 && React__default.createElement("div", {
9396
- className: styles$Z['progress-bar__steps']
9666
+ className: styles$Y['progress-bar__steps']
9397
9667
  }, steps.map(function (step) {
9398
9668
  return React__default.createElement("div", {
9399
9669
  key: step
@@ -9401,9 +9671,9 @@ var ProgressBar = function ProgressBar(_ref) {
9401
9671
  })));
9402
9672
  };
9403
9673
 
9404
- var styles$_ = {"badge":"_2f81N","badge--warning":"_2g1GI","badge--danger":"_2zLnM","badge--success":"_27QOo","badge--info":"_2gmsM"};
9674
+ var styles$Z = {"badge":"_2f81N","badge--warning":"_2g1GI","badge--danger":"_2zLnM","badge--success":"_27QOo","badge--info":"_2gmsM"};
9405
9675
 
9406
- var _excluded$2t = ["children", "theme", "title", "testId"];
9676
+ var _excluded$2u = ["children", "theme", "title", "testId"];
9407
9677
 
9408
9678
  var Badge = function Badge(_ref, forwardedRef) {
9409
9679
  var _classnames;
@@ -9412,7 +9682,7 @@ var Badge = function Badge(_ref, forwardedRef) {
9412
9682
  theme = _ref.theme,
9413
9683
  title = _ref.title,
9414
9684
  testId = _ref.testId,
9415
- otherProps = _objectWithoutPropertiesLoose(_ref, _excluded$2t);
9685
+ otherProps = _objectWithoutPropertiesLoose(_ref, _excluded$2u);
9416
9686
 
9417
9687
  var internalRef = React.useRef(null);
9418
9688
  var ref = forwardedRef || internalRef;
@@ -9425,7 +9695,7 @@ var Badge = function Badge(_ref, forwardedRef) {
9425
9695
  overlay: title,
9426
9696
  ref: ref
9427
9697
  }, React__default.createElement("div", Object.assign({
9428
- className: classnames(styles$_['badge'], (_classnames = {}, _classnames[styles$_['badge--success']] = theme === 'success', _classnames[styles$_['badge--danger']] = theme === 'danger', _classnames[styles$_['badge--info']] = theme === 'info', _classnames[styles$_['badge--warning']] = theme === 'warning', _classnames)),
9698
+ className: classnames(styles$Z['badge'], (_classnames = {}, _classnames[styles$Z['badge--success']] = theme === 'success', _classnames[styles$Z['badge--danger']] = theme === 'danger', _classnames[styles$Z['badge--info']] = theme === 'info', _classnames[styles$Z['badge--warning']] = theme === 'warning', _classnames)),
9429
9699
  ref: ref,
9430
9700
  "data-testid": testId
9431
9701
  }, otherProps), children));
@@ -9433,9 +9703,9 @@ var Badge = function Badge(_ref, forwardedRef) {
9433
9703
 
9434
9704
  var Badge$1 = React.forwardRef(Badge);
9435
9705
 
9436
- var styles$$ = {"avatar":"_2wJGB","avatar--small":"_3QTSo","avatar__badge":"_2Rl8S","avatar--medium":"_1zwj0","avatar--large":"_3-U6x","avatar--extra-large":"_3qn2q"};
9706
+ var styles$_ = {"avatar":"_2wJGB","avatar--small":"_3QTSo","avatar__badge":"_2Rl8S","avatar--medium":"_1zwj0","avatar--large":"_3-U6x","avatar--extra-large":"_3qn2q"};
9437
9707
 
9438
- var styles$10 = {"avatar-image":"_GKL9P"};
9708
+ var styles$$ = {"avatar-image":"_GKL9P"};
9439
9709
 
9440
9710
  var AvatarImage = function AvatarImage(_ref) {
9441
9711
  var url = _ref.url,
@@ -9460,7 +9730,7 @@ var AvatarImage = function AvatarImage(_ref) {
9460
9730
  }
9461
9731
 
9462
9732
  return React__default.createElement("div", {
9463
- className: styles$10['avatar-image']
9733
+ className: styles$$['avatar-image']
9464
9734
  }, React__default.createElement(IconUserSolid, {
9465
9735
  size: "flexible",
9466
9736
  color: color
@@ -9529,7 +9799,7 @@ var Avatar = function Avatar(_ref) {
9529
9799
 
9530
9800
  var backgroundColor = url ? GREY200 : color;
9531
9801
  return React__default.createElement("div", {
9532
- className: classnames(styles$$['avatar'], (_classnames = {}, _classnames[styles$$['avatar--small']] = size === 'small', _classnames[styles$$['avatar--medium']] = size === 'medium', _classnames[styles$$['avatar--large']] = size === 'large', _classnames[styles$$['avatar--extra-large']] = size === 'extra-large', _classnames)),
9802
+ className: classnames(styles$_['avatar'], (_classnames = {}, _classnames[styles$_['avatar--small']] = size === 'small', _classnames[styles$_['avatar--medium']] = size === 'medium', _classnames[styles$_['avatar--large']] = size === 'large', _classnames[styles$_['avatar--extra-large']] = size === 'extra-large', _classnames)),
9533
9803
  style: {
9534
9804
  backgroundColor: children || url && !showIconInsteadOfImage ? backgroundColor : defaultProfilePictureColors.backgroundColor
9535
9805
  },
@@ -9542,7 +9812,7 @@ var Avatar = function Avatar(_ref) {
9542
9812
  return setShowIconInsteadOfImage(true);
9543
9813
  }
9544
9814
  }), badge && size !== 'small' && React__default.createElement("div", {
9545
- className: styles$$['avatar__badge']
9815
+ className: styles$_['avatar__badge']
9546
9816
  }, badge));
9547
9817
  };
9548
9818
 
@@ -9555,7 +9825,7 @@ var CHIP_THEME = {
9555
9825
  DANGER: 'danger'
9556
9826
  };
9557
9827
 
9558
- var styles$11 = {"chip":"_1fIeV","chip--marketing":"_V4byU","chip--success":"_37gN9","chip--upsell":"_Tw7tp","chip--warning":"_t94VZ","chip--info":"_3SmeO","chip--danger":"_2eoX0"};
9828
+ var styles$10 = {"chip":"_1fIeV","chip--marketing":"_V4byU","chip--success":"_37gN9","chip--upsell":"_Tw7tp","chip--warning":"_t94VZ","chip--info":"_3SmeO","chip--danger":"_2eoX0"};
9559
9829
 
9560
9830
  var Chip = function Chip(_ref) {
9561
9831
  var _classnames;
@@ -9566,11 +9836,11 @@ var Chip = function Chip(_ref) {
9566
9836
  testId = _ref.testId;
9567
9837
  return React__default.createElement("div", {
9568
9838
  "data-testid": testId,
9569
- className: classnames(styles$11['chip'], (_classnames = {}, _classnames[styles$11['chip--marketing']] = theme === CHIP_THEME.MARKETING, _classnames[styles$11['chip--success']] = theme === CHIP_THEME.SUCCESS, _classnames[styles$11['chip--upsell']] = theme === CHIP_THEME.UPSELL, _classnames[styles$11['chip--warning']] = theme === CHIP_THEME.WARNING, _classnames[styles$11['chip--info']] = theme === CHIP_THEME.INFO, _classnames[styles$11['chip--danger']] = theme === CHIP_THEME.DANGER, _classnames))
9839
+ className: classnames(styles$10['chip'], (_classnames = {}, _classnames[styles$10['chip--marketing']] = theme === CHIP_THEME.MARKETING, _classnames[styles$10['chip--success']] = theme === CHIP_THEME.SUCCESS, _classnames[styles$10['chip--upsell']] = theme === CHIP_THEME.UPSELL, _classnames[styles$10['chip--warning']] = theme === CHIP_THEME.WARNING, _classnames[styles$10['chip--info']] = theme === CHIP_THEME.INFO, _classnames[styles$10['chip--danger']] = theme === CHIP_THEME.DANGER, _classnames))
9570
9840
  }, children);
9571
9841
  };
9572
9842
 
9573
- var styles$12 = {"pill":"_23q4Y","pill--default":"_niDEM","pill--success":"_IwDRB","pill--danger":"_MPji-","pill--warning":"_3S2m8","pill--info":"_2G3ML"};
9843
+ var styles$11 = {"pill":"_23q4Y","pill--default":"_niDEM","pill--success":"_IwDRB","pill--danger":"_MPji-","pill--warning":"_3S2m8","pill--info":"_2G3ML"};
9574
9844
 
9575
9845
  var PILL_THEME = {
9576
9846
  INFO: 'info',
@@ -9589,7 +9859,7 @@ var Pill = function Pill(_ref) {
9589
9859
  testId = _ref.testId;
9590
9860
  return React__default.createElement("div", {
9591
9861
  "data-testid": testId,
9592
- className: classnames(styles$12['pill'], (_classnames = {}, _classnames[styles$12['pill--default']] = theme === PILL_THEME.DEFAULT, _classnames[styles$12['pill--warning']] = theme === PILL_THEME.WARNING, _classnames[styles$12['pill--success']] = theme === PILL_THEME.SUCCESS, _classnames[styles$12['pill--danger']] = theme === PILL_THEME.DANGER, _classnames[styles$12['pill--info']] = theme === PILL_THEME.INFO, _classnames))
9862
+ className: classnames(styles$11['pill'], (_classnames = {}, _classnames[styles$11['pill--default']] = theme === PILL_THEME.DEFAULT, _classnames[styles$11['pill--warning']] = theme === PILL_THEME.WARNING, _classnames[styles$11['pill--success']] = theme === PILL_THEME.SUCCESS, _classnames[styles$11['pill--danger']] = theme === PILL_THEME.DANGER, _classnames[styles$11['pill--info']] = theme === PILL_THEME.INFO, _classnames))
9593
9863
  }, children);
9594
9864
  };
9595
9865
 
@@ -9599,14 +9869,16 @@ var EMPTY_STATE_SIZE = {
9599
9869
  LARGE: 'large'
9600
9870
  };
9601
9871
 
9602
- var styles$13 = {"empty-state-container-stack":"_2B8Vd","empty-state-container-stack__content":"_NBTDp","empty-state-container-stack__content--full-page":"_1UWbP","empty-state-container-stack__content--inline-horizontal":"_2BVOy","empty-state-container-stack__body":"_1LuiZ"};
9872
+ var styles$12 = {"empty-state-container-stack":"_2B8Vd","empty-state-container-stack__content":"_NBTDp","empty-state-container-stack__content--full-page":"_1UWbP","empty-state-container-stack__content--inline-horizontal":"_2BVOy","empty-state-container-stack__body":"_1LuiZ"};
9603
9873
 
9604
- var styles$14 = {"empty-state-container-cta":"_1Cx9N"};
9874
+ var styles$13 = {"empty-state-container-cta":"_1Cx9N","empty-state-container-cta--inside-modal":"_WbcaM"};
9605
9875
 
9606
9876
  var EmptyStateContainerCTA = function EmptyStateContainerCTA(_ref) {
9607
- var _actions$primary, _actions$secondary;
9877
+ var _actions$primary, _actions$secondary, _classNames;
9608
9878
 
9609
9879
  var isPaywall = _ref.isPaywall,
9880
+ _ref$isInsideModal = _ref.isInsideModal,
9881
+ isInsideModal = _ref$isInsideModal === void 0 ? false : _ref$isInsideModal,
9610
9882
  actions = _ref.actions;
9611
9883
  var primaryButton = updateButtonProps(actions.primary, {
9612
9884
  theme: actions !== null && actions !== void 0 && (_actions$primary = actions.primary) !== null && _actions$primary !== void 0 && _actions$primary.props.theme || isPaywall ? 'upsell' : 'primary',
@@ -9617,7 +9889,7 @@ var EmptyStateContainerCTA = function EmptyStateContainerCTA(_ref) {
9617
9889
  size: BUTTON_SIZES.MIN_WIDTH_100
9618
9890
  });
9619
9891
  return React__default.createElement("div", {
9620
- className: styles$14['empty-state-container-cta']
9892
+ className: classnames(styles$13['empty-state-container-cta'], (_classNames = {}, _classNames[styles$13['empty-state-container-cta--inside-modal']] = isInsideModal, _classNames))
9621
9893
  }, primaryButton, secondaryButton);
9622
9894
  };
9623
9895
 
@@ -9632,7 +9904,7 @@ var EmptyStateContainerStack = function EmptyStateContainerStack(_ref) {
9632
9904
  isPaywall = _ref$isPaywall === void 0 ? false : _ref$isPaywall,
9633
9905
  testId = _ref.testId;
9634
9906
  return React__default.createElement("div", {
9635
- className: styles$13['empty-state-container-stack'],
9907
+ className: styles$12['empty-state-container-stack'],
9636
9908
  "data-testid": testId
9637
9909
  }, React__default.createElement("img", {
9638
9910
  src: mediaUrl,
@@ -9648,7 +9920,7 @@ var EmptyStateContainerStack = function EmptyStateContainerStack(_ref) {
9648
9920
  emphasis: "bold",
9649
9921
  as: "body"
9650
9922
  }, title), React__default.createElement("div", {
9651
- className: styles$13['empty-state-container-stack__body']
9923
+ className: styles$12['empty-state-container-stack__body']
9652
9924
  }, children)), React__default.createElement(Stack, {
9653
9925
  space: 8,
9654
9926
  alignItems: "center"
@@ -9660,10 +9932,10 @@ var EmptyStateContainerStack = function EmptyStateContainerStack(_ref) {
9660
9932
  }, caption)));
9661
9933
  };
9662
9934
 
9663
- var styles$15 = {"empty-state-container-inline":"_eMr1V","empty-state-container-inline__content":"_2jreb","empty-state-container-inline__content--full-page":"_3RLfH","empty-state-container-inline__content--inline-horizontal":"_3BMpx","empty-state-container-inline__body":"_2J5vn"};
9935
+ var styles$14 = {"empty-state-container-inline":"_eMr1V","empty-state-container-inline--inside-modal":"_2sweG","empty-state-container-inline__content":"_2jreb","empty-state-container-inline__content--full-page":"_3RLfH","empty-state-container-inline__content--inline-horizontal":"_3BMpx","empty-state-container-inline__body":"_2J5vn","empty-state-container-inline__image":"_G2VtA"};
9664
9936
 
9665
9937
  var EmptyStateContainerInline = function EmptyStateContainerInline(_ref) {
9666
- var _classnames;
9938
+ var _classNames, _classnames;
9667
9939
 
9668
9940
  var header = _ref.header,
9669
9941
  title = _ref.title,
@@ -9676,11 +9948,15 @@ var EmptyStateContainerInline = function EmptyStateContainerInline(_ref) {
9676
9948
  _ref$isPaywall = _ref.isPaywall,
9677
9949
  isPaywall = _ref$isPaywall === void 0 ? false : _ref$isPaywall,
9678
9950
  testId = _ref.testId;
9951
+
9952
+ var _useModalContext = useModalContext(),
9953
+ isInsideModal = _useModalContext.isModalMounted;
9954
+
9679
9955
  return React__default.createElement("div", {
9680
- className: styles$15['empty-state-container-inline'],
9956
+ className: classnames(styles$14['empty-state-container-inline'], (_classNames = {}, _classNames[styles$14['empty-state-container-inline--inside-modal']] = isInsideModal, _classNames)),
9681
9957
  "data-testid": testId
9682
9958
  }, React__default.createElement("div", {
9683
- className: classnames(styles$15['empty-state-container-inline__content'], (_classnames = {}, _classnames[styles$15['empty-state-container__content--full-page']] = size === EMPTY_STATE_SIZE.LARGE, _classnames[styles$15['empty-state-container__content--inline-horizontal']] = size === EMPTY_STATE_SIZE.MEDIUM, _classnames))
9959
+ className: classnames(styles$14['empty-state-container-inline__content'], (_classnames = {}, _classnames[styles$14['empty-state-container__content--full-page']] = size === EMPTY_STATE_SIZE.LARGE, _classnames[styles$14['empty-state-container__content--inline-horizontal']] = size === EMPTY_STATE_SIZE.MEDIUM, _classnames))
9684
9960
  }, React__default.createElement(Stack, {
9685
9961
  space: 8
9686
9962
  }, header && React__default.createElement(Text, {
@@ -9689,19 +9965,23 @@ var EmptyStateContainerInline = function EmptyStateContainerInline(_ref) {
9689
9965
  }, header), React__default.createElement(Text, {
9690
9966
  as: "h1"
9691
9967
  }, title)), React__default.createElement("div", {
9692
- className: styles$15['empty-state-container-inline__body']
9968
+ className: styles$14['empty-state-container-inline__body']
9693
9969
  }, children), React__default.createElement(Stack, {
9694
- space: 8
9970
+ space: 8,
9971
+ marginTop: 12
9695
9972
  }, actions && React__default.createElement(EmptyStateContainerCTA, {
9696
9973
  actions: actions,
9697
- isPaywall: isPaywall
9974
+ isPaywall: isPaywall,
9975
+ isInsideModal: isInsideModal
9698
9976
  }), caption && React__default.createElement(Text, {
9699
9977
  as: "caption"
9700
- }, caption))), React__default.createElement("img", {
9978
+ }, caption))), React__default.createElement("div", {
9979
+ className: styles$14['empty-state-container-inline__image']
9980
+ }, React__default.createElement("img", {
9701
9981
  src: mediaUrl,
9702
9982
  alt: String(title),
9703
9983
  width: size === EMPTY_STATE_SIZE.LARGE ? '500px' : '333px'
9704
- }));
9984
+ })));
9705
9985
  };
9706
9986
 
9707
9987
  var EmptyStateContainer = function EmptyStateContainer(_ref) {