@7shifts/sous-chef 4.9.0 → 4.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.css +58 -2
- package/dist/index.css.map +1 -1
- package/dist/index.js +271 -78
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +317 -141
- package/dist/index.modern.js.map +1 -1
- package/dist/overlay/DropdownListDivider/DropdownListDivider.d.ts +3 -1
- package/dist/overlay/DropdownListDividerLine/DropdownListDividerLine.d.ts +6 -0
- package/dist/overlay/DropdownListDividerLine/index.d.ts +1 -0
- package/dist/overlay/HintModal/HintModal.d.ts +2 -1
- package/dist/overlay/Modal/Modal.d.ts +8 -1
- package/dist/overlay/Modal/ModalContext.d.ts +1 -0
- package/dist/overlay/Modal/useDraggableModal.d.ts +38 -0
- package/dist/overlay/Modal/useModalPosition.d.ts +10 -0
- package/dist/overlay/index.d.ts +2 -0
- package/llms-instructions/guidelines/HintModal.guidelines.md +1 -0
- package/package.json +8 -7
package/dist/index.js
CHANGED
|
@@ -6,6 +6,7 @@ var lodashEs = require('lodash-es');
|
|
|
6
6
|
var parseTime = require('time-autocomplete/src/core/AMPMParser');
|
|
7
7
|
var reactRouterDom = require('react-router-dom');
|
|
8
8
|
var ReactModal = require('react-modal');
|
|
9
|
+
var DraggableLib = require('react-draggable');
|
|
9
10
|
var reactDayPicker = require('react-day-picker');
|
|
10
11
|
var dateFnsFormat = require('date-fns/format');
|
|
11
12
|
var dateFnsParse = require('date-fns/parse');
|
|
@@ -47,6 +48,7 @@ var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
|
|
|
47
48
|
var ReactDOM__default = /*#__PURE__*/_interopDefaultLegacy(ReactDOM);
|
|
48
49
|
var parseTime__default = /*#__PURE__*/_interopDefaultLegacy(parseTime);
|
|
49
50
|
var ReactModal__default = /*#__PURE__*/_interopDefaultLegacy(ReactModal);
|
|
51
|
+
var DraggableLib__default = /*#__PURE__*/_interopDefaultLegacy(DraggableLib);
|
|
50
52
|
var dateFnsFormat__default = /*#__PURE__*/_interopDefaultLegacy(dateFnsFormat);
|
|
51
53
|
var dateFnsParse__default = /*#__PURE__*/_interopDefaultLegacy(dateFnsParse);
|
|
52
54
|
var startOfDay__default = /*#__PURE__*/_interopDefaultLegacy(startOfDay);
|
|
@@ -308,7 +310,7 @@ function _objectWithoutPropertiesLoose(r, e) {
|
|
|
308
310
|
return t;
|
|
309
311
|
}
|
|
310
312
|
|
|
311
|
-
var styles$
|
|
313
|
+
var styles$1K = {"flex":"_GFHBy","flex__item":"_TOxU5","flex__item--flexible":"_oppLW","align-center":"_bC2qU","align-end":"_9qCMz","align-start":"_06gN4","justify-center":"_9gxO4","justify-end":"_33FAJ","justify-space-between":"_lg-h2","justify-start":"_xjZcn","inline-flex":"_3yyLA"};
|
|
312
314
|
|
|
313
315
|
var usePositionStyles = function usePositionStyles(_ref) {
|
|
314
316
|
var m = _ref.m,
|
|
@@ -427,7 +429,7 @@ var Flex = function Flex(_ref) {
|
|
|
427
429
|
var _getDataProps = getDataProps(otherProps),
|
|
428
430
|
dataProps = _getDataProps.dataProps;
|
|
429
431
|
var positionStyles = usePositionStyles(positionProps);
|
|
430
|
-
var className = classnames__default["default"](styles$
|
|
432
|
+
var className = classnames__default["default"](styles$1K['flex'], extraClass, (_classNames = {}, _classNames[styles$1K['align-start']] = alignItems === 'flex-start', _classNames[styles$1K['align-end']] = alignItems === 'flex-end', _classNames[styles$1K['align-center']] = alignItems === 'center', _classNames[styles$1K['justify-start']] = justifyContent === 'start', _classNames[styles$1K['justify-end']] = justifyContent === 'end', _classNames[styles$1K['justify-center']] = justifyContent === 'center', _classNames[styles$1K['justify-space-between']] = justifyContent === 'space-between', _classNames[styles$1K['inline-flex']] = inlineFlex, _classNames));
|
|
431
433
|
var items = React__default["default"].Children.toArray(children).filter(Boolean);
|
|
432
434
|
var gap = typeof space === 'object' ? space.row + "px " + space.column + "px" : space;
|
|
433
435
|
return React__default["default"].createElement("div", _extends({
|
|
@@ -443,7 +445,7 @@ var Flex = function Flex(_ref) {
|
|
|
443
445
|
var _classNames2;
|
|
444
446
|
return React__default["default"].createElement("div", {
|
|
445
447
|
key: i,
|
|
446
|
-
className: classnames__default["default"](styles$
|
|
448
|
+
className: classnames__default["default"](styles$1K['flex__item'], (_classNames2 = {}, _classNames2[styles$1K['flex__item--flexible']] = flexItems, _classNames2)),
|
|
447
449
|
style: {
|
|
448
450
|
flex: flex ? flex[i] || '0 1 auto' : '0 1 auto'
|
|
449
451
|
}
|
|
@@ -465,7 +467,7 @@ var Stack = function Stack(_ref) {
|
|
|
465
467
|
}));
|
|
466
468
|
};
|
|
467
469
|
|
|
468
|
-
var styles$
|
|
470
|
+
var styles$1J = {"caption":"_tMhXr","label":"_NfOw5","label--truncate":"_M3aFK","toggle":"_QDQZ1","toggle__label":"_52dky","toggle__caption":"_A-tgL","toggle__switch":"_kBjjH"};
|
|
469
471
|
|
|
470
472
|
var _excluded$eo = ["checked", "label", "caption", "onChange", "disabled", "id", "testId"];
|
|
471
473
|
/**
|
|
@@ -488,7 +490,7 @@ var Toggle = function Toggle(_ref) {
|
|
|
488
490
|
return React__default["default"].createElement(Stack, {
|
|
489
491
|
space: 8
|
|
490
492
|
}, React__default["default"].createElement("label", _extends({}, dataProps, {
|
|
491
|
-
className: styles$
|
|
493
|
+
className: styles$1J['toggle']
|
|
492
494
|
}), React__default["default"].createElement("input", {
|
|
493
495
|
type: "checkbox",
|
|
494
496
|
checked: checked,
|
|
@@ -497,11 +499,11 @@ var Toggle = function Toggle(_ref) {
|
|
|
497
499
|
id: id,
|
|
498
500
|
"data-testid": testId
|
|
499
501
|
}), React__default["default"].createElement("span", {
|
|
500
|
-
className: styles$
|
|
502
|
+
className: styles$1J['toggle__switch']
|
|
501
503
|
}), label && React__default["default"].createElement("span", {
|
|
502
|
-
className: styles$
|
|
504
|
+
className: styles$1J['toggle__label']
|
|
503
505
|
}, label)), caption && React__default["default"].createElement("span", {
|
|
504
|
-
className: styles$
|
|
506
|
+
className: styles$1J['toggle__caption']
|
|
505
507
|
}, caption));
|
|
506
508
|
};
|
|
507
509
|
|
|
@@ -521,7 +523,7 @@ var SPINNER_THEMES = {
|
|
|
521
523
|
PRIDE: 'pride'
|
|
522
524
|
};
|
|
523
525
|
|
|
524
|
-
var styles$
|
|
526
|
+
var styles$1I = {"spinner":"_memxT","rotator":"_QieGp","spinner--block":"_VoFzz","path":"_KSRP9","dash":"_RyBY2","path--mint":"_-sIZJ","path--disabled":"_3fox0","path--contrast":"_VteKz","path--pride":"_7rzsv"};
|
|
525
527
|
|
|
526
528
|
var Spinner = function Spinner(_ref) {
|
|
527
529
|
var _classnames;
|
|
@@ -534,9 +536,9 @@ var Spinner = function Spinner(_ref) {
|
|
|
534
536
|
_ref$testId = _ref.testId,
|
|
535
537
|
testId = _ref$testId === void 0 ? 'spinner' : _ref$testId;
|
|
536
538
|
return React__default["default"].createElement("div", {
|
|
537
|
-
className: classnames__default["default"]((_classnames = {}, _classnames[styles$
|
|
539
|
+
className: classnames__default["default"]((_classnames = {}, _classnames[styles$1I['spinner--block']] = block, _classnames))
|
|
538
540
|
}, React__default["default"].createElement("svg", {
|
|
539
|
-
className: styles$
|
|
541
|
+
className: styles$1I['spinner'],
|
|
540
542
|
xmlns: "http://www.w3.org/2000/svg",
|
|
541
543
|
width: size,
|
|
542
544
|
height: size,
|
|
@@ -611,7 +613,7 @@ var Spinner = function Spinner(_ref) {
|
|
|
611
613
|
offset: "1",
|
|
612
614
|
stopColor: "#760088"
|
|
613
615
|
}))), React__default["default"].createElement("circle", {
|
|
614
|
-
className: classnames__default["default"](styles$
|
|
616
|
+
className: classnames__default["default"](styles$1I['path'], styles$1I["path--" + theme]),
|
|
615
617
|
fill: "none",
|
|
616
618
|
strokeWidth: "6",
|
|
617
619
|
strokeLinecap: "round",
|
|
@@ -621,9 +623,9 @@ var Spinner = function Spinner(_ref) {
|
|
|
621
623
|
})));
|
|
622
624
|
};
|
|
623
625
|
|
|
624
|
-
var styles$
|
|
626
|
+
var styles$1H = {"tooltip":"_Ydu2O"};
|
|
625
627
|
|
|
626
|
-
var styles$
|
|
628
|
+
var styles$1G = {"tooltip-overlay":"_7fQon","tooltip-overlay--visible":"_a-BND","tooltip-overlay--black-theme":"_UUdng","tooltip-overlay--white-theme":"_brSNX","tooltip-overlay__header":"_uP8x7","tooltip-overlay-arrow":"_MjV6R","tooltip-overlay-arrow--top":"_TQqwB","tooltip-overlay-arrow--bottom":"_pgdKl","tooltip-overlay-arrow--visible":"_Zob-W","tooltip-overlay-arrow--black-theme":"_FXaBf","tooltip-overlay-arrow--white-theme":"_FyPu8"};
|
|
627
629
|
|
|
628
630
|
var TOOLTIP_THEME = {
|
|
629
631
|
BLACK: 'black',
|
|
@@ -822,15 +824,15 @@ var TooltipOverlay = function TooltipOverlay(_ref) {
|
|
|
822
824
|
maxHeight: maxHeight,
|
|
823
825
|
zIndex: getZIndex('tooltip')
|
|
824
826
|
}),
|
|
825
|
-
className: classnames__default["default"](styles$
|
|
827
|
+
className: classnames__default["default"](styles$1G['tooltip-overlay'], extraClass, (_classnames = {}, _classnames[styles$1G['tooltip-overlay--visible']] = isVisible, _classnames[styles$1G['tooltip-overlay--black-theme']] = theme === TOOLTIP_THEME.BLACK, _classnames[styles$1G['tooltip-overlay--white-theme']] = theme === TOOLTIP_THEME.WHITE, _classnames)),
|
|
826
828
|
onMouseEnter: onFocusIn,
|
|
827
829
|
onMouseLeave: onFocusOut
|
|
828
830
|
}, React__default["default"].createElement(Stack, {
|
|
829
831
|
space: 8
|
|
830
832
|
}, header && React__default["default"].createElement("div", {
|
|
831
|
-
className: styles$
|
|
833
|
+
className: styles$1G['tooltip-overlay__header']
|
|
832
834
|
}, header), children)), React__default["default"].createElement("div", {
|
|
833
|
-
className: classnames__default["default"](styles$
|
|
835
|
+
className: classnames__default["default"](styles$1G['tooltip-overlay-arrow'], extraClass, (_classnames2 = {}, _classnames2[styles$1G['tooltip-overlay-arrow--visible']] = isVisible, _classnames2[styles$1G['tooltip-overlay-arrow--top']] = position.actualPlacement.placement === TOOLTIP_PLACEMENT.TOP, _classnames2[styles$1G['tooltip-overlay-arrow--bottom']] = position.actualPlacement.placement === TOOLTIP_PLACEMENT.BOTTOM, _classnames2[styles$1G['tooltip-overlay-arrow--black-theme']] = theme === TOOLTIP_THEME.BLACK, _classnames2[styles$1G['tooltip-overlay-arrow--white-theme']] = theme === TOOLTIP_THEME.WHITE, _classnames2)),
|
|
834
836
|
style: _extends({}, position.arrow, {
|
|
835
837
|
zIndex: getZIndex('tooltip')
|
|
836
838
|
}),
|
|
@@ -948,7 +950,7 @@ var TooltipElement = function TooltipElement(_ref, forwardedRef) {
|
|
|
948
950
|
}), overlayElement);
|
|
949
951
|
}
|
|
950
952
|
return React__default["default"].createElement("div", _extends({
|
|
951
|
-
className: classnames__default["default"](styles$
|
|
953
|
+
className: classnames__default["default"](styles$1H['tooltip'])
|
|
952
954
|
}, commonProps, {
|
|
953
955
|
ref: containerRef
|
|
954
956
|
}), children, overlayElement);
|
|
@@ -961,7 +963,7 @@ var isTooltipCompatible = function isTooltipCompatible(element) {
|
|
|
961
963
|
return React__default["default"].isValidElement(element) && typeof element.type === 'string';
|
|
962
964
|
};
|
|
963
965
|
|
|
964
|
-
var styles$
|
|
966
|
+
var styles$1F = {"button":"_pgOR3","button--loading":"_2yB9-","button__spinner":"_ppC-S","button--size-min-width-100":"_GtXOQ","button--size-full-width":"_Y-OxO","button--icon-only":"_3EfuT","button--default":"_ICNz7","button--primary":"_XwJWT","button--danger":"_gr3Dh","button--upsell":"_ME8te","button--marketing":"_mI-Dx","button--hollow":"_orywo","button--hollow-contrast":"_obtsl","button--link-contrast":"_00jK4","button--link-primary":"_JPwJ7","button--link-danger":"_9TprN","button--link-upsell":"_tktX-","button--link-toolbar":"_r3SQl","button--link-icon":"_oFBLN","disabled-button-wrapper":"_yTBTz"};
|
|
965
967
|
|
|
966
968
|
var BUTTON_SIZES = {
|
|
967
969
|
FULL_WIDTH: 'full-width',
|
|
@@ -1056,7 +1058,7 @@ var ButtonComponent = function ButtonComponent(_ref, ref) {
|
|
|
1056
1058
|
onBlur: onBlur,
|
|
1057
1059
|
onFocus: onFocus,
|
|
1058
1060
|
onKeyDown: onKeyDown,
|
|
1059
|
-
className: classnames__default["default"](styles$
|
|
1061
|
+
className: classnames__default["default"](styles$1F['button'], (_classnames = {}, _classnames[styles$1F['button--default']] = theme === BUTTON_THEMES.DEFAULT, _classnames[styles$1F['button--primary']] = theme === BUTTON_THEMES.PRIMARY, _classnames[styles$1F['button--danger']] = theme === BUTTON_THEMES.DANGER, _classnames[styles$1F['button--upsell']] = theme === BUTTON_THEMES.UPSELL, _classnames[styles$1F['button--marketing']] = theme === BUTTON_THEMES.MARKETING, _classnames[styles$1F['button--hollow']] = theme === BUTTON_THEMES.HOLLOW, _classnames[styles$1F['button--hollow-contrast']] = theme === BUTTON_THEMES.HOLLOW_CONTRAST, _classnames[styles$1F['button--link-primary']] = theme === BUTTON_THEMES.LINK_PRIMARY, _classnames[styles$1F['button--link-danger']] = theme === BUTTON_THEMES.LINK_DANGER, _classnames[styles$1F['button--link-upsell']] = theme === BUTTON_THEMES.LINK_UPSELL, _classnames[styles$1F['button--link-toolbar']] = theme === BUTTON_THEMES.LINK_TOOLBAR, _classnames[styles$1F['button--link-contrast']] = theme === BUTTON_THEMES.LINK_CONTRAST, _classnames[styles$1F['button--link-icon']] = theme === BUTTON_THEMES.LINK_ICON, _classnames[styles$1F['button--loading']] = loading, _classnames[styles$1F['button--icon-only']] = isIconOnly, _classnames[styles$1F['button--size-min-width-100']] = size === BUTTON_SIZES.MIN_WIDTH_100, _classnames[styles$1F['button--size-full-width']] = size === BUTTON_SIZES.FULL_WIDTH, _classnames)),
|
|
1060
1062
|
type: type,
|
|
1061
1063
|
disabled: disabled || loading,
|
|
1062
1064
|
href: href,
|
|
@@ -1069,7 +1071,7 @@ var ButtonComponent = function ButtonComponent(_ref, ref) {
|
|
|
1069
1071
|
space: 8,
|
|
1070
1072
|
alignItems: "center"
|
|
1071
1073
|
}, children), loading && React__default["default"].createElement("div", {
|
|
1072
|
-
className: styles$
|
|
1074
|
+
className: styles$1F['button__spinner']
|
|
1073
1075
|
}, React__default["default"].createElement(Spinner, {
|
|
1074
1076
|
theme: contrastSpinner.includes(theme) ? SPINNER_THEMES.CONTRAST : SPINNER_THEMES.DISABLED
|
|
1075
1077
|
})));
|
|
@@ -1079,7 +1081,7 @@ var ButtonComponent = function ButtonComponent(_ref, ref) {
|
|
|
1079
1081
|
overlay: title,
|
|
1080
1082
|
ref: ref
|
|
1081
1083
|
}, title && disabled ? React__default["default"].createElement("div", {
|
|
1082
|
-
className: styles$
|
|
1084
|
+
className: styles$1F['disabled-button-wrapper']
|
|
1083
1085
|
}, ButtonElementResult) : ButtonElementResult)
|
|
1084
1086
|
);
|
|
1085
1087
|
};
|
|
@@ -10316,9 +10318,9 @@ var IconGreatMonochromatic = React.forwardRef(function (_ref, ref) {
|
|
|
10316
10318
|
});
|
|
10317
10319
|
IconGreatMonochromatic.displayName = 'IconGreatMonochromatic';
|
|
10318
10320
|
|
|
10319
|
-
var styles$
|
|
10321
|
+
var styles$1E = {"pagination-controls":"_S1co-"};
|
|
10320
10322
|
|
|
10321
|
-
var styles$
|
|
10323
|
+
var styles$1D = {"keyboard-key":"_sgd9a","keyboard-key--light":"_8zg4j","keyboard-key__character":"_GAIig"};
|
|
10322
10324
|
|
|
10323
10325
|
var KeyboardKey = function KeyboardKey(_ref) {
|
|
10324
10326
|
var _classNames;
|
|
@@ -10326,9 +10328,9 @@ var KeyboardKey = function KeyboardKey(_ref) {
|
|
|
10326
10328
|
_ref$theme = _ref.theme,
|
|
10327
10329
|
theme = _ref$theme === void 0 ? 'dark' : _ref$theme;
|
|
10328
10330
|
return React__default["default"].createElement("span", {
|
|
10329
|
-
className: classnames__default["default"](styles$
|
|
10331
|
+
className: classnames__default["default"](styles$1D['keyboard-key'], (_classNames = {}, _classNames[styles$1D['keyboard-key--light']] = theme === 'light', _classNames))
|
|
10330
10332
|
}, React__default["default"].createElement("span", {
|
|
10331
|
-
className: styles$
|
|
10333
|
+
className: styles$1D['keyboard-key__character']
|
|
10332
10334
|
}, children));
|
|
10333
10335
|
};
|
|
10334
10336
|
|
|
@@ -10545,7 +10547,7 @@ var PaginationControls = function PaginationControls(_ref) {
|
|
|
10545
10547
|
}
|
|
10546
10548
|
});
|
|
10547
10549
|
return React__default["default"].createElement("div", _extends({}, dataProps, {
|
|
10548
|
-
className: styles$
|
|
10550
|
+
className: styles$1E['pagination-controls'],
|
|
10549
10551
|
"data-testid": testId
|
|
10550
10552
|
}), React__default["default"].createElement(Button, {
|
|
10551
10553
|
disabled: !hasPrevious,
|
|
@@ -10575,7 +10577,7 @@ var LINK_TARGET = {
|
|
|
10575
10577
|
BLANK: '_blank'
|
|
10576
10578
|
};
|
|
10577
10579
|
|
|
10578
|
-
var styles$
|
|
10580
|
+
var styles$1C = {"link":"_EiQ4c","link--contrast":"_weJDR"};
|
|
10579
10581
|
|
|
10580
10582
|
var _excluded$bq = ["href", "target", "theme", "onClick", "children"];
|
|
10581
10583
|
var Link = function Link(_ref) {
|
|
@@ -10592,7 +10594,7 @@ var Link = function Link(_ref) {
|
|
|
10592
10594
|
dataProps = _getDataProps.dataProps;
|
|
10593
10595
|
var ref = React__default["default"].useRef(null);
|
|
10594
10596
|
return React__default["default"].createElement("a", _extends({}, dataProps, {
|
|
10595
|
-
className: classnames__default["default"](styles$
|
|
10597
|
+
className: classnames__default["default"](styles$1C['link'], (_classNames = {}, _classNames[styles$1C['link--primary']] = theme === LINK_THEME.PRIMARY, _classNames[styles$1C['link--contrast']] = theme === LINK_THEME.CONTRAST, _classNames)),
|
|
10596
10598
|
href: href,
|
|
10597
10599
|
target: target,
|
|
10598
10600
|
onClick: onClick,
|
|
@@ -10615,7 +10617,7 @@ var useDropdownContext = function useDropdownContext() {
|
|
|
10615
10617
|
return React__default["default"].useContext(DropdownContext);
|
|
10616
10618
|
};
|
|
10617
10619
|
|
|
10618
|
-
var styles$
|
|
10620
|
+
var styles$1B = {"dropdown-pane":"_sp-pT"};
|
|
10619
10621
|
|
|
10620
10622
|
var DROPDOWN_PANE_PADDING = 14;
|
|
10621
10623
|
var calculateOverlayPosition$1 = function calculateOverlayPosition(triggerPosition, triggerOffsetHeight, panePosition, alignment) {
|
|
@@ -10753,7 +10755,7 @@ var PaneOverlay = function PaneOverlay(_ref) {
|
|
|
10753
10755
|
useKeyPress(['Escape'], onToggleDropdown);
|
|
10754
10756
|
var overflow = maxHeight ? 'auto' : undefined;
|
|
10755
10757
|
return React__default["default"].createElement("div", {
|
|
10756
|
-
className: classnames__default["default"](styles$
|
|
10758
|
+
className: classnames__default["default"](styles$1B['dropdown-pane'], (_classNames = {}, _classNames[styles$1B['dropdown-pane--with-padding']] = true, _classNames['dropdown-pane--custom-width'] = width !== undefined, _classNames)),
|
|
10757
10759
|
style: _extends({}, position, {
|
|
10758
10760
|
width: width,
|
|
10759
10761
|
maxHeight: maxHeight,
|
|
@@ -10782,7 +10784,7 @@ var getKeyboardFocusableElements = function getKeyboardFocusableElements(element
|
|
|
10782
10784
|
});
|
|
10783
10785
|
};
|
|
10784
10786
|
|
|
10785
|
-
var styles$
|
|
10787
|
+
var styles$1A = {"dropdown__trigger":"_AktVc"};
|
|
10786
10788
|
|
|
10787
10789
|
var DROPDOWN_ALIGNEMNT = {
|
|
10788
10790
|
LEFT: 'left',
|
|
@@ -10793,7 +10795,7 @@ var DROPDOWN_TRIGGER = {
|
|
|
10793
10795
|
CLICK: 'click'
|
|
10794
10796
|
};
|
|
10795
10797
|
|
|
10796
|
-
var styles$
|
|
10798
|
+
var styles$1z = {"label":"_zv4ua","label--truncate":"_FPyID"};
|
|
10797
10799
|
|
|
10798
10800
|
var isEllipsisActive = function isEllipsisActive(e) {
|
|
10799
10801
|
return e.offsetWidth < e.scrollWidth;
|
|
@@ -10846,7 +10848,7 @@ var Label = function Label(_ref) {
|
|
|
10846
10848
|
var LabelElement = React__default["default"].createElement("label", {
|
|
10847
10849
|
htmlFor: htmlFor,
|
|
10848
10850
|
id: labelId,
|
|
10849
|
-
className: classnames__default["default"](styles$
|
|
10851
|
+
className: classnames__default["default"](styles$1z['label'], (_classNames = {}, _classNames[styles$1z['label--truncate']] = shouldTruncate, _classNames))
|
|
10850
10852
|
}, children);
|
|
10851
10853
|
if (showTooltip) {
|
|
10852
10854
|
return React__default["default"].createElement(Tooltip, {
|
|
@@ -10857,18 +10859,18 @@ var Label = function Label(_ref) {
|
|
|
10857
10859
|
return LabelElement;
|
|
10858
10860
|
};
|
|
10859
10861
|
|
|
10860
|
-
var styles$
|
|
10862
|
+
var styles$1y = {"caption":"_Qrxg5"};
|
|
10861
10863
|
|
|
10862
10864
|
var Caption = function Caption(_ref) {
|
|
10863
10865
|
var fieldId = _ref.fieldId,
|
|
10864
10866
|
children = _ref.children;
|
|
10865
10867
|
return React__default["default"].createElement("div", {
|
|
10866
10868
|
id: fieldId && fieldId + "-describer",
|
|
10867
|
-
className: styles$
|
|
10869
|
+
className: styles$1y['caption']
|
|
10868
10870
|
}, children);
|
|
10869
10871
|
};
|
|
10870
10872
|
|
|
10871
|
-
var styles$
|
|
10873
|
+
var styles$1x = {"error-message":"_eS4YO"};
|
|
10872
10874
|
|
|
10873
10875
|
var ErrorMessage = function ErrorMessage(_ref) {
|
|
10874
10876
|
var fieldId = _ref.fieldId,
|
|
@@ -10876,7 +10878,7 @@ var ErrorMessage = function ErrorMessage(_ref) {
|
|
|
10876
10878
|
testId = _ref.testId;
|
|
10877
10879
|
return React__default["default"].createElement("div", {
|
|
10878
10880
|
id: fieldId && fieldId + "-error-message",
|
|
10879
|
-
className: styles$
|
|
10881
|
+
className: styles$1x['error-message'],
|
|
10880
10882
|
"data-testid": testId
|
|
10881
10883
|
}, React__default["default"].createElement(Inline, {
|
|
10882
10884
|
space: 8,
|
|
@@ -10915,7 +10917,7 @@ var ALIGNMENTS = {
|
|
|
10915
10917
|
JUSTIFY: 'justify'
|
|
10916
10918
|
};
|
|
10917
10919
|
|
|
10918
|
-
var styles$
|
|
10920
|
+
var styles$1w = {"text":"_6SgoN","text--bold":"_i2LHD","text__body":"_SF95f","text__caption":"_HHohB","text__insight":"_xdhK0","text__span":"_yZbuO","text__paragraph":"_T91Eo","text__tagline":"_uetB-","text--italic":"_NgSTT","text--underline":"_ouqVK","text--dotted-underline":"_zZ55-","text--monospace":"_Vi-V1","text--line-through":"_psV6T","text--align-left":"_tfSIf","text--align-right":"_AK1Nr","text--align-center":"_N-tR4","text--align-justify":"_LkMr0"};
|
|
10919
10921
|
|
|
10920
10922
|
var _excluded$bp = ["children", "as", "emphasis", "alignment", "color", "testId", "textWrap"];
|
|
10921
10923
|
var TextComponent = function TextComponent(_ref, ref) {
|
|
@@ -10941,7 +10943,7 @@ var TextComponent = function TextComponent(_ref, ref) {
|
|
|
10941
10943
|
color: getColor(color),
|
|
10942
10944
|
textWrap: textWrap
|
|
10943
10945
|
}, positionStyles),
|
|
10944
|
-
className: classnames__default["default"](styles$
|
|
10946
|
+
className: classnames__default["default"](styles$1w['text'], (_classnames = {}, _classnames[styles$1w['text--bold']] = emphasis == null ? void 0 : emphasis.includes(FONT_EMPHASIS.BOLD), _classnames[styles$1w['text--italic']] = emphasis == null ? void 0 : emphasis.includes(FONT_EMPHASIS.ITALIC), _classnames[styles$1w['text--underline']] = emphasis == null ? void 0 : emphasis.includes(FONT_EMPHASIS.UNDERLINE), _classnames[styles$1w['text--dotted-underline']] = emphasis == null ? void 0 : emphasis.includes(FONT_EMPHASIS.DOTTED_UNDERLINE), _classnames[styles$1w['text--monospace']] = emphasis == null ? void 0 : emphasis.includes(FONT_EMPHASIS.MONOSPACE), _classnames[styles$1w['text--line-through']] = emphasis == null ? void 0 : emphasis.includes(FONT_EMPHASIS.STRIKETHROUGH), _classnames[styles$1w['text--align-left']] = alignment === ALIGNMENTS.LEFT, _classnames[styles$1w['text--align-right']] = alignment === ALIGNMENTS.RIGHT, _classnames[styles$1w['text--align-center']] = alignment === ALIGNMENTS.CENTER, _classnames[styles$1w['text--align-justify']] = alignment === ALIGNMENTS.JUSTIFY, _classnames[styles$1w['text__body']] = as === TEXT_TYPES.BODY, _classnames[styles$1w['text__insight']] = as === TEXT_TYPES.INSIGHT, _classnames[styles$1w['text__caption']] = as === TEXT_TYPES.CAPTION, _classnames[styles$1w['text__span']] = as === TEXT_TYPES.SPAN, _classnames[styles$1w['text__paragraph']] = as === TEXT_TYPES.PARAGRAPH, _classnames[styles$1w['text__tagline']] = as === TEXT_TYPES.TAGLINE, _classnames)),
|
|
10945
10947
|
'data-testid': testId
|
|
10946
10948
|
}, dataProps, other, {
|
|
10947
10949
|
ref: ref
|
|
@@ -10956,21 +10958,21 @@ var Text = React.forwardRef(TextComponent);
|
|
|
10956
10958
|
var Bold = function Bold(_ref) {
|
|
10957
10959
|
var children = _ref.children;
|
|
10958
10960
|
return React__default["default"].createElement("span", {
|
|
10959
|
-
className: classnames__default["default"](styles$
|
|
10961
|
+
className: classnames__default["default"](styles$1w['text--bold'], styles$1w['text'])
|
|
10960
10962
|
}, children);
|
|
10961
10963
|
};
|
|
10962
10964
|
|
|
10963
10965
|
var Underline = function Underline(_ref) {
|
|
10964
10966
|
var children = _ref.children;
|
|
10965
10967
|
return React__default["default"].createElement("span", {
|
|
10966
|
-
className: classnames__default["default"](styles$
|
|
10968
|
+
className: classnames__default["default"](styles$1w['text--underline'], styles$1w['text'])
|
|
10967
10969
|
}, children);
|
|
10968
10970
|
};
|
|
10969
10971
|
|
|
10970
10972
|
var Italic = function Italic(_ref) {
|
|
10971
10973
|
var children = _ref.children;
|
|
10972
10974
|
return React__default["default"].createElement("span", {
|
|
10973
|
-
className: classnames__default["default"](styles$
|
|
10975
|
+
className: classnames__default["default"](styles$1w['text--italic'], styles$1w['text'])
|
|
10974
10976
|
}, children);
|
|
10975
10977
|
};
|
|
10976
10978
|
|
|
@@ -11119,7 +11121,7 @@ var useFieldControllers = function useFieldControllers(_ref) {
|
|
|
11119
11121
|
return controllers;
|
|
11120
11122
|
};
|
|
11121
11123
|
|
|
11122
|
-
var styles$
|
|
11124
|
+
var styles$1v = {"text-field":"_G6LsE","text-field--invalid":"_2ZYtt","text-field--prefixed":"_rWp7H","text-field--suffixed":"_Xq8xX"};
|
|
11123
11125
|
|
|
11124
11126
|
var _excluded$bn = ["autoComplete", "autoFocus", "defaultValue", "disabled", "error", "id", "maxLength", "name", "caption", "label", "onBlur", "onChange", "onFocus", "onKeyDown", "placeholder", "value", "ref", "testId"];
|
|
11125
11127
|
var useTextField = function useTextField(_ref) {
|
|
@@ -11159,7 +11161,7 @@ var useTextField = function useTextField(_ref) {
|
|
|
11159
11161
|
'aria-invalid': hasError,
|
|
11160
11162
|
autoComplete: autoComplete,
|
|
11161
11163
|
autoFocus: autoFocus,
|
|
11162
|
-
className: classnames__default["default"](styles$
|
|
11164
|
+
className: classnames__default["default"](styles$1v['text-field'], (_classnames = {}, _classnames[styles$1v['text-field--invalid']] = hasError, _classnames)),
|
|
11163
11165
|
'data-testid': testId,
|
|
11164
11166
|
disabled: disabled,
|
|
11165
11167
|
defaultValue: defaultValue,
|
|
@@ -11189,7 +11191,7 @@ var useTextField = function useTextField(_ref) {
|
|
|
11189
11191
|
};
|
|
11190
11192
|
};
|
|
11191
11193
|
|
|
11192
|
-
var styles$
|
|
11194
|
+
var styles$1u = {"affix-container":"_F8QOB","prefix":"_yPPIy","suffix":"_Y3yFd","affix-container--prefixed":"_vU4SU","affix-container--suffixed":"_4rDXi"};
|
|
11193
11195
|
|
|
11194
11196
|
var AffixContainer = function AffixContainer(_ref) {
|
|
11195
11197
|
var _classnames;
|
|
@@ -11224,16 +11226,16 @@ var AffixContainer = function AffixContainer(_ref) {
|
|
|
11224
11226
|
if (!hasPrefix && !hasSuffix) {
|
|
11225
11227
|
return children;
|
|
11226
11228
|
}
|
|
11227
|
-
var classes = classnames__default["default"](styles$
|
|
11229
|
+
var classes = classnames__default["default"](styles$1u['affix-container'], (_classnames = {}, _classnames[styles$1u['affix-container--prefixed']] = hasPrefix, _classnames[styles$1u['affix-container--suffixed']] = hasSuffix, _classnames));
|
|
11228
11230
|
return React__default["default"].createElement("div", {
|
|
11229
11231
|
className: classes,
|
|
11230
11232
|
ref: container,
|
|
11231
11233
|
"data-testid": testId
|
|
11232
11234
|
}, hasPrefix && React__default["default"].createElement("div", {
|
|
11233
|
-
className: styles$
|
|
11235
|
+
className: styles$1u['prefix'],
|
|
11234
11236
|
ref: prefixElement
|
|
11235
11237
|
}, prefix), children, hasSuffix && React__default["default"].createElement("div", {
|
|
11236
|
-
className: styles$
|
|
11238
|
+
className: styles$1u['suffix'],
|
|
11237
11239
|
ref: suffixElement
|
|
11238
11240
|
}, suffix));
|
|
11239
11241
|
};
|
|
@@ -11447,7 +11449,7 @@ var Dropdown = function Dropdown(_ref) {
|
|
|
11447
11449
|
paneRef: paneRef
|
|
11448
11450
|
}
|
|
11449
11451
|
}, triggerIsKnownButton ? React__default["default"].cloneElement(trigger, _extends({}, trigger.props, triggerProps)) : React__default["default"].createElement("button", _extends({}, triggerProps, {
|
|
11450
|
-
className: styles$
|
|
11452
|
+
className: styles$1A['dropdown__trigger'],
|
|
11451
11453
|
ref: updatedRef,
|
|
11452
11454
|
onFocus: handleFocus
|
|
11453
11455
|
}), trigger), React__default["default"].createElement(DropdownPane, {
|
|
@@ -11461,7 +11463,7 @@ var Dropdown = function Dropdown(_ref) {
|
|
|
11461
11463
|
}, children));
|
|
11462
11464
|
};
|
|
11463
11465
|
|
|
11464
|
-
var styles$
|
|
11466
|
+
var styles$1t = {"dropdown-list":"_91hvH","dropdown-list__item":"_NrB4V","dropdown-list__item--hover":"_aMs9c"};
|
|
11465
11467
|
|
|
11466
11468
|
var findNextActiveIndex = function findNextActiveIndex(items, startAt) {
|
|
11467
11469
|
var startIndex = 0;
|
|
@@ -11626,16 +11628,33 @@ var updateIconSize = function updateIconSize(child) {
|
|
|
11626
11628
|
}));
|
|
11627
11629
|
};
|
|
11628
11630
|
|
|
11629
|
-
var styles$
|
|
11631
|
+
var styles$1s = {"dropdown-list-divider":"_ISJ4M"};
|
|
11630
11632
|
|
|
11631
|
-
var
|
|
11633
|
+
var styles$1r = {"dropdown-list-divider-line":"_GlMQ1"};
|
|
11634
|
+
|
|
11635
|
+
var DropdownListDividerLine = function DropdownListDividerLine(_ref) {
|
|
11632
11636
|
var testId = _ref.testId;
|
|
11633
11637
|
return React__default["default"].createElement("div", {
|
|
11634
|
-
className: styles$1r['dropdown-list-divider'],
|
|
11638
|
+
className: styles$1r['dropdown-list-divider-line'],
|
|
11635
11639
|
"data-testid": testId
|
|
11636
11640
|
});
|
|
11637
11641
|
};
|
|
11638
11642
|
|
|
11643
|
+
var DropdownListDivider = function DropdownListDivider(_ref) {
|
|
11644
|
+
var testId = _ref.testId,
|
|
11645
|
+
children = _ref.children,
|
|
11646
|
+
line = _ref.line;
|
|
11647
|
+
if (!children) {
|
|
11648
|
+
return React__default["default"].createElement(DropdownListDividerLine, {
|
|
11649
|
+
testId: testId
|
|
11650
|
+
});
|
|
11651
|
+
}
|
|
11652
|
+
return React__default["default"].createElement(React.Fragment, null, (line === 'top' || line === 'both') && React__default["default"].createElement(DropdownListDividerLine, null), React__default["default"].createElement("div", {
|
|
11653
|
+
className: classnames__default["default"](styles$1s['dropdown-list-divider']),
|
|
11654
|
+
"data-testid": testId
|
|
11655
|
+
}, children), (line === 'bottom' || line === 'both') && React__default["default"].createElement(DropdownListDividerLine, null));
|
|
11656
|
+
};
|
|
11657
|
+
|
|
11639
11658
|
var styles$1q = {"dropdown-list-item":"_W12mF","dropdown-list-item--selected":"_Zu9cD","dropdown-list-item__content":"_xS6fS","dropdown-list-item__caption":"_7EI7m","dropdown-list-item--disabled":"_0OB5b","dropdown-list-item__prefix":"_dpo67","dropdown-list-item__suffix":"_ObP6B","dropdown-list-item__container":"_IBrNj","dropdown-list-item__link":"_vC0uY","dropdown-list-item__suffix-spot":"_UA23u","dropdown-list-item__suffix-button":"_rvaeI"};
|
|
11640
11659
|
|
|
11641
11660
|
var styles$1p = {"dropdown-submenu":"_X4fIx"};
|
|
@@ -12046,7 +12065,7 @@ var DropdownList = function DropdownList(_ref) {
|
|
|
12046
12065
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
12047
12066
|
}, [highlightItemIndex]);
|
|
12048
12067
|
return React__default["default"].createElement("ul", {
|
|
12049
|
-
className: styles$
|
|
12068
|
+
className: styles$1t['dropdown-list'],
|
|
12050
12069
|
"data-testid": testId,
|
|
12051
12070
|
ref: listRef
|
|
12052
12071
|
}, React__default["default"].Children.toArray(children).filter(Boolean).map(function (child, index) {
|
|
@@ -12058,7 +12077,7 @@ var DropdownList = function DropdownList(_ref) {
|
|
|
12058
12077
|
var divider = (_items$index2 = items[index]) == null ? void 0 : _items$index2.divider;
|
|
12059
12078
|
return React__default["default"].createElement("li", {
|
|
12060
12079
|
key: index,
|
|
12061
|
-
className: classnames__default["default"](styles$
|
|
12080
|
+
className: classnames__default["default"](styles$1t['dropdown-list__item'], (_classNames = {}, _classNames[styles$1t['dropdown-list__item--hover']] = focusedItem === index && isInteractive, _classNames)),
|
|
12062
12081
|
onMouseEnter: divider ? undefined : function () {
|
|
12063
12082
|
return setFocusOnItem(index);
|
|
12064
12083
|
},
|
|
@@ -12306,7 +12325,7 @@ var styles$1i = {"menu-item":"_SebbU","menu-item--active":"_CDEVl","menu-item--w
|
|
|
12306
12325
|
|
|
12307
12326
|
var styles$1h = {"badge":"_RXV4h","badge--warning":"_2An1I","badge--danger":"_-Bw8L","badge--success":"_RxlMz","badge--info":"_dzCH-","badge--numeric":"_Ix9tP"};
|
|
12308
12327
|
|
|
12309
|
-
var styles$1g = {"overlay":"_0yTe8","overlay--after-open":"_yJBtA","overlay--before-close":"_iWogn","content":"_ntozd","content--after-open":"_EQjDq","content--before-close":"_ZTY3B"};
|
|
12328
|
+
var styles$1g = {"overlay":"_0yTe8","overlay--after-open":"_yJBtA","overlay--before-close":"_iWogn","content":"_ntozd","content--after-open":"_EQjDq","content--before-close":"_ZTY3B","overlay--draggable":"_6SSP8","content--draggable":"_5rHXj","draggable-inner":"_cq2CU"};
|
|
12310
12329
|
|
|
12311
12330
|
var styles$1f = {"header":"_tgpG9","header__close-button":"_b1dgU","sub-header":"_c2nm4"};
|
|
12312
12331
|
|
|
@@ -12344,14 +12363,108 @@ var ModalHeader = function ModalHeader(_ref) {
|
|
|
12344
12363
|
};
|
|
12345
12364
|
|
|
12346
12365
|
var ModalContext = React.createContext({
|
|
12347
|
-
isModalMounted: false
|
|
12366
|
+
isModalMounted: false,
|
|
12367
|
+
draggable: false
|
|
12348
12368
|
});
|
|
12349
12369
|
var useModalContext = function useModalContext() {
|
|
12350
12370
|
var context = React.useContext(ModalContext);
|
|
12351
12371
|
return context || {};
|
|
12352
12372
|
};
|
|
12353
12373
|
|
|
12354
|
-
var
|
|
12374
|
+
var DEFAULT_WIDTH = 566;
|
|
12375
|
+
var DEFAULT_HEIGHT = 266;
|
|
12376
|
+
/**
|
|
12377
|
+
* Encapsulates the ref, initial positioning, and viewport-aware bounds for a
|
|
12378
|
+
* draggable modal. Pass the returned values to <Draggable> and the ReactModal
|
|
12379
|
+
* style.content object.
|
|
12380
|
+
*
|
|
12381
|
+
* Bounds are expressed as pixel offsets from the element's rendered position
|
|
12382
|
+
* (react-draggable v4.7+ no longer accepts "window" as a string shorthand).
|
|
12383
|
+
*
|
|
12384
|
+
* Initial bounds are estimated from the numeric width/height props (falling
|
|
12385
|
+
* back to the CSS min-width/min-height defaults). After mount, the element is
|
|
12386
|
+
* measured and bounds are corrected to the actual rendered dimensions so the
|
|
12387
|
+
* modal cannot be dragged outside the viewport even when width/height are CSS
|
|
12388
|
+
* strings or the content exceeds the fallback height.
|
|
12389
|
+
*/
|
|
12390
|
+
function useDraggableModal(_ref) {
|
|
12391
|
+
var _initialPosition$top, _initialPosition$left;
|
|
12392
|
+
var width = _ref.width,
|
|
12393
|
+
height = _ref.height,
|
|
12394
|
+
initialPosition = _ref.initialPosition;
|
|
12395
|
+
var nodeRef = React.useRef(null);
|
|
12396
|
+
var resolvedWidth = typeof width === 'number' ? width : DEFAULT_WIDTH;
|
|
12397
|
+
var resolvedHeight = typeof height === 'number' ? height : DEFAULT_HEIGHT;
|
|
12398
|
+
// Initialise from resolved props; corrected after mount with real pixel dimensions.
|
|
12399
|
+
var _useState = React.useState(resolvedWidth),
|
|
12400
|
+
measuredWidth = _useState[0],
|
|
12401
|
+
setMeasuredWidth = _useState[1];
|
|
12402
|
+
var _useState2 = React.useState(resolvedHeight),
|
|
12403
|
+
measuredHeight = _useState2[0],
|
|
12404
|
+
setMeasuredHeight = _useState2[1];
|
|
12405
|
+
// Track the DOM node via state so the measurement effect can depend on it.
|
|
12406
|
+
// A plain useEffect([], []) misses two cases: (a) the node mounting later
|
|
12407
|
+
// because `draggable` was false on first render, and (b) the element
|
|
12408
|
+
// resizing after mount due to dynamic content.
|
|
12409
|
+
var _useState3 = React.useState(null),
|
|
12410
|
+
node = _useState3[0],
|
|
12411
|
+
setNode = _useState3[1];
|
|
12412
|
+
// callbackRef: pass as the inner div's `ref`. It keeps nodeRef.current in
|
|
12413
|
+
// sync for react-draggable and triggers the measurement effect whenever the
|
|
12414
|
+
// element mounts or unmounts.
|
|
12415
|
+
var callbackRef = React.useCallback(function (el) {
|
|
12416
|
+
nodeRef.current = el;
|
|
12417
|
+
setNode(el);
|
|
12418
|
+
}, []);
|
|
12419
|
+
React.useEffect(function () {
|
|
12420
|
+
if (!node) return;
|
|
12421
|
+
var measure = function measure() {
|
|
12422
|
+
var w = node.offsetWidth;
|
|
12423
|
+
var h = node.offsetHeight;
|
|
12424
|
+
// offsetWidth/offsetHeight are 0 in SSR/jsdom — keep fallback values.
|
|
12425
|
+
if (w === 0) return;
|
|
12426
|
+
setMeasuredWidth(w);
|
|
12427
|
+
setMeasuredHeight(h);
|
|
12428
|
+
};
|
|
12429
|
+
measure(); // initial measurement when node first becomes available
|
|
12430
|
+
// ResizeObserver keeps bounds accurate as content grows or shrinks.
|
|
12431
|
+
if (typeof ResizeObserver === 'undefined') return;
|
|
12432
|
+
var observer = new ResizeObserver(measure);
|
|
12433
|
+
observer.observe(node);
|
|
12434
|
+
return function () {
|
|
12435
|
+
return observer.disconnect();
|
|
12436
|
+
};
|
|
12437
|
+
}, [node]);
|
|
12438
|
+
var top = (_initialPosition$top = initialPosition == null ? void 0 : initialPosition.top) != null ? _initialPosition$top : typeof window !== 'undefined' ? Math.round(window.innerHeight * 0.25) : 0;
|
|
12439
|
+
var left = (_initialPosition$left = initialPosition == null ? void 0 : initialPosition.left) != null ? _initialPosition$left : typeof window !== 'undefined' ? Math.round((window.innerWidth - resolvedWidth) / 2) : 0;
|
|
12440
|
+
var bounds = typeof window !== 'undefined' ? {
|
|
12441
|
+
left: -left,
|
|
12442
|
+
top: -top,
|
|
12443
|
+
right: window.innerWidth - left - measuredWidth,
|
|
12444
|
+
bottom: window.innerHeight - top - measuredHeight
|
|
12445
|
+
} : {
|
|
12446
|
+
left: 0,
|
|
12447
|
+
top: 0,
|
|
12448
|
+
right: 9999,
|
|
12449
|
+
bottom: 9999
|
|
12450
|
+
};
|
|
12451
|
+
return {
|
|
12452
|
+
nodeRef: nodeRef,
|
|
12453
|
+
callbackRef: callbackRef,
|
|
12454
|
+
contentPosition: {
|
|
12455
|
+
top: top,
|
|
12456
|
+
left: left
|
|
12457
|
+
},
|
|
12458
|
+
bounds: bounds
|
|
12459
|
+
};
|
|
12460
|
+
}
|
|
12461
|
+
|
|
12462
|
+
var _excluded$bk = ["children", "header", "subHeader", "onClose", "loading", "zIndex", "rootElementId", "width", "height", "maxWidth", "shouldReturnFocusAfterClose", "testId", "draggable", "initialPosition"];
|
|
12463
|
+
// react-draggable declares `props: DraggableProps` on the class instance, overriding
|
|
12464
|
+
// the `React.Component<Partial<DraggableProps>>` generic. This cast restores the
|
|
12465
|
+
// intended partial-props behaviour for JSX usage.
|
|
12466
|
+
var Draggable = DraggableLib__default["default"];
|
|
12467
|
+
var DRAG_HANDLE_CLASS = 'modal-drag-handle';
|
|
12355
12468
|
/**
|
|
12356
12469
|
* Modal is a focused overlay that interrupts the current experience and demands the user's attention. It blocks all interaction with the rest of the page until the user responds — making it best suited for decisions, confirmations, and self-contained flows where that level of focus is warranted.
|
|
12357
12470
|
*/
|
|
@@ -12371,22 +12484,60 @@ var Modal = function Modal(_ref) {
|
|
|
12371
12484
|
_ref$shouldReturnFocu = _ref.shouldReturnFocusAfterClose,
|
|
12372
12485
|
shouldReturnFocusAfterClose = _ref$shouldReturnFocu === void 0 ? true : _ref$shouldReturnFocu,
|
|
12373
12486
|
testId = _ref.testId,
|
|
12487
|
+
_ref$draggable = _ref.draggable,
|
|
12488
|
+
draggable = _ref$draggable === void 0 ? false : _ref$draggable,
|
|
12489
|
+
initialPosition = _ref.initialPosition,
|
|
12374
12490
|
otherProps = _objectWithoutPropertiesLoose(_ref, _excluded$bk);
|
|
12491
|
+
var _useDraggableModal = useDraggableModal({
|
|
12492
|
+
width: width,
|
|
12493
|
+
height: height,
|
|
12494
|
+
initialPosition: initialPosition
|
|
12495
|
+
}),
|
|
12496
|
+
draggableNodeRef = _useDraggableModal.nodeRef,
|
|
12497
|
+
draggableCallbackRef = _useDraggableModal.callbackRef,
|
|
12498
|
+
contentPosition = _useDraggableModal.contentPosition,
|
|
12499
|
+
draggableBounds = _useDraggableModal.bounds;
|
|
12375
12500
|
var style = {
|
|
12376
|
-
content
|
|
12501
|
+
// When draggable, top/left position the fixed content div directly so
|
|
12502
|
+
// react-draggable can measure the element's real viewport position for bounds.
|
|
12503
|
+
content: draggable ? _extends({}, contentPosition, {
|
|
12504
|
+
width: width,
|
|
12505
|
+
height: height,
|
|
12506
|
+
maxWidth: maxWidth
|
|
12507
|
+
}) : {
|
|
12377
12508
|
width: width,
|
|
12378
12509
|
height: height,
|
|
12379
12510
|
maxWidth: maxWidth
|
|
12380
12511
|
},
|
|
12381
|
-
overlay: {
|
|
12512
|
+
overlay: _extends({
|
|
12382
12513
|
zIndex: getZIndex(zIndex)
|
|
12383
|
-
}
|
|
12514
|
+
}, draggable && {
|
|
12515
|
+
pointerEvents: 'none'
|
|
12516
|
+
})
|
|
12384
12517
|
};
|
|
12385
12518
|
// The `ReactModal` library already adds the `data-*` preffix, so I need to remove it from the `getDataProps`
|
|
12386
12519
|
var _getDataProps = getDataProps(otherProps, {
|
|
12387
12520
|
removeDataPrefix: true
|
|
12388
12521
|
}),
|
|
12389
12522
|
dataProps = _getDataProps.dataProps;
|
|
12523
|
+
var modalContent = React__default["default"].createElement(React.Fragment, null, draggable ? React__default["default"].createElement("div", {
|
|
12524
|
+
className: DRAG_HANDLE_CLASS
|
|
12525
|
+
}, React__default["default"].createElement(ModalHeader, {
|
|
12526
|
+
header: header,
|
|
12527
|
+
subHeader: subHeader,
|
|
12528
|
+
onClose: onClose,
|
|
12529
|
+
loading: loading
|
|
12530
|
+
})) : React__default["default"].createElement(ModalHeader, {
|
|
12531
|
+
header: header,
|
|
12532
|
+
subHeader: subHeader,
|
|
12533
|
+
onClose: onClose,
|
|
12534
|
+
loading: loading
|
|
12535
|
+
}), React__default["default"].createElement(ModalContext.Provider, {
|
|
12536
|
+
value: {
|
|
12537
|
+
isModalMounted: true,
|
|
12538
|
+
draggable: draggable
|
|
12539
|
+
}
|
|
12540
|
+
}, children));
|
|
12390
12541
|
return React__default["default"].createElement(ReactModal__default["default"], {
|
|
12391
12542
|
isOpen: true,
|
|
12392
12543
|
testId: testId,
|
|
@@ -12399,26 +12550,29 @@ var Modal = function Modal(_ref) {
|
|
|
12399
12550
|
contentLabel: "Modal",
|
|
12400
12551
|
appElement: rootElementId && document.getElementById(rootElementId) || undefined,
|
|
12401
12552
|
overlayClassName: {
|
|
12402
|
-
base: styles$1g['overlay'],
|
|
12553
|
+
base: classnames__default["default"](styles$1g['overlay'], draggable && styles$1g['overlay--draggable']),
|
|
12403
12554
|
afterOpen: styles$1g['overlay--after-open'],
|
|
12404
12555
|
beforeClose: styles$1g['overlay--before-close']
|
|
12405
12556
|
},
|
|
12406
12557
|
className: {
|
|
12407
|
-
base: styles$1g['content'],
|
|
12558
|
+
base: classnames__default["default"](styles$1g['content'], draggable && styles$1g['content--draggable']),
|
|
12408
12559
|
afterOpen: styles$1g['content--after-open'],
|
|
12409
12560
|
beforeClose: styles$1g['content--before-close']
|
|
12410
12561
|
},
|
|
12411
12562
|
data: dataProps
|
|
12412
|
-
}, React__default["default"].createElement(
|
|
12413
|
-
|
|
12414
|
-
|
|
12415
|
-
|
|
12416
|
-
|
|
12417
|
-
|
|
12418
|
-
|
|
12419
|
-
|
|
12563
|
+
}, draggable ? React__default["default"].createElement(Draggable, {
|
|
12564
|
+
nodeRef: draggableNodeRef,
|
|
12565
|
+
handle: "." + DRAG_HANDLE_CLASS,
|
|
12566
|
+
bounds: draggableBounds
|
|
12567
|
+
}, React__default["default"].createElement("div", {
|
|
12568
|
+
ref: draggableCallbackRef,
|
|
12569
|
+
className: styles$1g['draggable-inner'],
|
|
12570
|
+
style: {
|
|
12571
|
+
width: width,
|
|
12572
|
+
height: height,
|
|
12573
|
+
maxWidth: maxWidth
|
|
12420
12574
|
}
|
|
12421
|
-
},
|
|
12575
|
+
}, modalContent)) : modalContent);
|
|
12422
12576
|
};
|
|
12423
12577
|
// The user can set the main app root id so when the modal is open it only allows iteracting with the modal when pressing tab
|
|
12424
12578
|
Modal.setAppElement = function (rootElement) {
|
|
@@ -13227,7 +13381,7 @@ var useLocalStorage = function useLocalStorage(key, initialValue) {
|
|
|
13227
13381
|
|
|
13228
13382
|
var styles$18 = {"hint-modal":"_NwD6V","hint-modal--after-open":"_4ofZb","hint-modal--before-close":"_hGoMD","hint-modal__overlay":"_iK5zl","hint-modal__image":"_V9hLa","hint-modal__body":"_oOqUg","hint-modal__close-button":"_5zcBK"};
|
|
13229
13383
|
|
|
13230
|
-
var _excluded$bi = ["header", "children", "mediaUrl", "onClose", "modalId", "primaryButton", "secondaryButton", "testId", "onSetDoNotShowAgainStatus"];
|
|
13384
|
+
var _excluded$bi = ["header", "children", "mediaUrl", "onClose", "modalId", "primaryButton", "secondaryButton", "testId", "onSetDoNotShowAgainStatus", "hideDoNotShowAgainCheckbox"];
|
|
13231
13385
|
/**
|
|
13232
13386
|
* Hint Modal is a lightweight modal used to surface tips, guidance, or onboarding callouts to users the first time they encounter a feature or page. Unlike a regular Modal, it is not triggered by a user action — it appears automatically when the user navigates somewhere that warrants a guided introduction. It includes a "Don't show this again" option so users can dismiss it permanently once they've absorbed the information.
|
|
13233
13387
|
*/
|
|
@@ -13241,6 +13395,8 @@ var HintModal = function HintModal(_ref) {
|
|
|
13241
13395
|
secondaryButton = _ref.secondaryButton,
|
|
13242
13396
|
testId = _ref.testId,
|
|
13243
13397
|
onSetDoNotShowAgainStatus = _ref.onSetDoNotShowAgainStatus,
|
|
13398
|
+
_ref$hideDoNotShowAga = _ref.hideDoNotShowAgainCheckbox,
|
|
13399
|
+
hideDoNotShowAgainCheckbox = _ref$hideDoNotShowAga === void 0 ? false : _ref$hideDoNotShowAga,
|
|
13244
13400
|
positionProps = _objectWithoutPropertiesLoose(_ref, _excluded$bi);
|
|
13245
13401
|
var __ = useTranslation('HintModal');
|
|
13246
13402
|
var _useState = React.useState(false),
|
|
@@ -13250,6 +13406,11 @@ var HintModal = function HintModal(_ref) {
|
|
|
13250
13406
|
persistedDoNotShow = _useLocalStorage[0],
|
|
13251
13407
|
setPersistedDoNotShow = _useLocalStorage[1];
|
|
13252
13408
|
var persistDoNotShowAgain = function persistDoNotShowAgain(value) {
|
|
13409
|
+
// Without the checkbox the user was never offered the choice, so there
|
|
13410
|
+
// is no preference to store or report.
|
|
13411
|
+
if (hideDoNotShowAgainCheckbox) {
|
|
13412
|
+
return;
|
|
13413
|
+
}
|
|
13253
13414
|
setPersistedDoNotShow(value);
|
|
13254
13415
|
if (onSetDoNotShowAgainStatus) {
|
|
13255
13416
|
onSetDoNotShowAgainStatus(value);
|
|
@@ -13317,7 +13478,7 @@ var HintModal = function HintModal(_ref) {
|
|
|
13317
13478
|
as: "h3"
|
|
13318
13479
|
}, header), React__default["default"].createElement(Text, null, children)), React__default["default"].createElement(Stack, {
|
|
13319
13480
|
space: 32
|
|
13320
|
-
}, React__default["default"].createElement(CheckboxField, {
|
|
13481
|
+
}, !hideDoNotShowAgainCheckbox && React__default["default"].createElement(CheckboxField, {
|
|
13321
13482
|
name: "hint-modal-do-not-show-checkbox",
|
|
13322
13483
|
checked: doNotShowAgain,
|
|
13323
13484
|
label: __('dontShowAgainLabel'),
|
|
@@ -13342,6 +13503,37 @@ var Popover = function Popover(props) {
|
|
|
13342
13503
|
return React__default["default"].createElement(Dropdown, _extends({}, props));
|
|
13343
13504
|
};
|
|
13344
13505
|
|
|
13506
|
+
/**
|
|
13507
|
+
* Returns the current modal position and an updater that centers the modal on
|
|
13508
|
+
* the provided mouse event's coordinates, clamped to a 20px viewport margin.
|
|
13509
|
+
* Useful when opening a draggable Modal relative to a user click.
|
|
13510
|
+
*/
|
|
13511
|
+
var useModalPosition = function useModalPosition(modalWidth, modalHeight) {
|
|
13512
|
+
if (modalWidth === void 0) {
|
|
13513
|
+
modalWidth = 566;
|
|
13514
|
+
}
|
|
13515
|
+
if (modalHeight === void 0) {
|
|
13516
|
+
modalHeight = 360;
|
|
13517
|
+
}
|
|
13518
|
+
var _useState = React.useState(undefined),
|
|
13519
|
+
position = _useState[0],
|
|
13520
|
+
setPosition = _useState[1];
|
|
13521
|
+
var updatePosition = React.useCallback(function (event) {
|
|
13522
|
+
var MARGIN = 20;
|
|
13523
|
+
var windowWidth = window.innerWidth;
|
|
13524
|
+
var windowHeight = window.innerHeight;
|
|
13525
|
+
var left = event.clientX - modalWidth / 2;
|
|
13526
|
+
var top = event.clientY - modalHeight / 2;
|
|
13527
|
+
if (left + modalWidth > windowWidth) left = Math.max(MARGIN, windowWidth - modalWidth - MARGIN);else if (left < 0) left = MARGIN;
|
|
13528
|
+
if (top + modalHeight > windowHeight) top = Math.max(MARGIN, windowHeight - modalHeight - MARGIN);else if (top < 0) top = MARGIN;
|
|
13529
|
+
setPosition({
|
|
13530
|
+
top: top,
|
|
13531
|
+
left: left
|
|
13532
|
+
});
|
|
13533
|
+
}, [modalWidth, modalHeight]);
|
|
13534
|
+
return [position, updatePosition];
|
|
13535
|
+
};
|
|
13536
|
+
|
|
13345
13537
|
var _excluded$bh = ["children", "theme", "title", "testId"];
|
|
13346
13538
|
var BadgeElement = function BadgeElement(_ref, forwardedRef) {
|
|
13347
13539
|
var _classnames;
|
|
@@ -14171,7 +14363,7 @@ var PersistentBanner = function PersistentBanner(_ref) {
|
|
|
14171
14363
|
flex: [1],
|
|
14172
14364
|
alignItems: "center"
|
|
14173
14365
|
}, React__default["default"].createElement(BannerContent, null), React__default["default"].createElement(Button, {
|
|
14174
|
-
theme:
|
|
14366
|
+
theme: "link-contrast",
|
|
14175
14367
|
onClick: onDismiss
|
|
14176
14368
|
}, React__default["default"].createElement(IconTimes, null))) : React__default["default"].createElement(BannerContent, null));
|
|
14177
14369
|
};
|
|
@@ -15653,7 +15845,7 @@ var CreateInputForm = function CreateInputForm(_ref) {
|
|
|
15653
15845
|
flex: [1],
|
|
15654
15846
|
flexItems: true
|
|
15655
15847
|
}, React__default["default"].createElement("input", {
|
|
15656
|
-
className: classnames__default["default"](styles$
|
|
15848
|
+
className: classnames__default["default"](styles$1v['text-field'], inputClassName),
|
|
15657
15849
|
autoCorrect: "off",
|
|
15658
15850
|
autoComplete: "off",
|
|
15659
15851
|
spellCheck: "false",
|
|
@@ -18872,7 +19064,7 @@ var usePhoneField = function usePhoneField(_ref) {
|
|
|
18872
19064
|
'aria-describedby': hasError ? controllers.id + "-error-message" : controllers.id + "-describer",
|
|
18873
19065
|
'aria-invalid': hasError,
|
|
18874
19066
|
autoFocus: autoFocus,
|
|
18875
|
-
className: classnames__default["default"](styles$
|
|
19067
|
+
className: classnames__default["default"](styles$1v['text-field'], (_classnames = {}, _classnames[styles$1v['text-field--invalid']] = hasError, _classnames)),
|
|
18876
19068
|
'data-testid': testId,
|
|
18877
19069
|
disabled: disabled,
|
|
18878
19070
|
id: controllers.id,
|
|
@@ -65519,4 +65711,5 @@ exports.lastOfMonth = lastOfMonth;
|
|
|
65519
65711
|
exports.nthWeekdayOfMonth = nthWeekdayOfMonth;
|
|
65520
65712
|
exports.toast = toast;
|
|
65521
65713
|
exports.useDataTableContext = useDataTableContext;
|
|
65714
|
+
exports.useModalPosition = useModalPosition;
|
|
65522
65715
|
//# sourceMappingURL=index.js.map
|