@simplybusiness/mobius 10.4.3 → 10.4.4
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/CHANGELOG.md +10 -0
- package/dist/cjs/components/AddressLookup/AddressLookup.js +39 -36
- package/dist/cjs/components/AddressLookup/AddressLookup.js.map +3 -3
- package/dist/cjs/components/AddressLookup/index.js +39 -36
- package/dist/cjs/components/AddressLookup/index.js.map +3 -3
- package/dist/cjs/components/Breadcrumbs/Breadcrumbs.js +3 -7
- package/dist/cjs/components/Breadcrumbs/Breadcrumbs.js.map +2 -2
- package/dist/cjs/components/Breadcrumbs/index.js +3 -7
- package/dist/cjs/components/Breadcrumbs/index.js.map +2 -2
- package/dist/cjs/components/Combobox/Combobox.js +35 -32
- package/dist/cjs/components/Combobox/Combobox.js.map +3 -3
- package/dist/cjs/components/Combobox/index.js +35 -32
- package/dist/cjs/components/Combobox/index.js.map +3 -3
- package/dist/cjs/components/DateField/DateField.js +11 -8
- package/dist/cjs/components/DateField/DateField.js.map +3 -3
- package/dist/cjs/components/DateField/index.js +11 -8
- package/dist/cjs/components/DateField/index.js.map +3 -3
- package/dist/cjs/components/DropdownMenu/Item.js +3 -6
- package/dist/cjs/components/DropdownMenu/Item.js.map +2 -2
- package/dist/cjs/components/DropdownMenu/index.js +3 -6
- package/dist/cjs/components/DropdownMenu/index.js.map +2 -2
- package/dist/cjs/components/MaskedField/MaskedField.js +11 -8
- package/dist/cjs/components/MaskedField/MaskedField.js.map +3 -3
- package/dist/cjs/components/MaskedField/index.js +13 -10
- package/dist/cjs/components/MaskedField/index.js.map +3 -3
- package/dist/cjs/components/NumberField/NumberField.js +10 -7
- package/dist/cjs/components/NumberField/NumberField.js.map +3 -3
- package/dist/cjs/components/NumberField/index.js +10 -7
- package/dist/cjs/components/NumberField/index.js.map +3 -3
- package/dist/cjs/components/PasswordField/PasswordField.js +9 -6
- package/dist/cjs/components/PasswordField/PasswordField.js.map +3 -3
- package/dist/cjs/components/PasswordField/index.js +9 -6
- package/dist/cjs/components/PasswordField/index.js.map +3 -3
- package/dist/cjs/components/TextField/TextField.js +6 -3
- package/dist/cjs/components/TextField/TextField.js.map +3 -3
- package/dist/cjs/components/TextField/adornmentWithClassName.js +3 -2
- package/dist/cjs/components/TextField/adornmentWithClassName.js.map +2 -2
- package/dist/cjs/components/TextField/index.js +6 -3
- package/dist/cjs/components/TextField/index.js.map +3 -3
- package/dist/cjs/components/index.js +198 -202
- package/dist/cjs/components/index.js.map +3 -3
- package/dist/cjs/index.js +198 -202
- package/dist/cjs/index.js.map +3 -3
- package/dist/cjs/meta.json +178 -93
- package/dist/esm/{chunk-XNEQHHNV.js → chunk-5QMKPWB4.js} +2 -2
- package/dist/esm/{chunk-IQKS662C.js → chunk-6RDK3FM2.js} +5 -3
- package/dist/esm/chunk-6RDK3FM2.js.map +7 -0
- package/dist/esm/{chunk-4HI2AOBC.js → chunk-6TSYA7CJ.js} +4 -7
- package/dist/esm/{chunk-4HI2AOBC.js.map → chunk-6TSYA7CJ.js.map} +2 -2
- package/dist/esm/{chunk-IM3I5CZL.js → chunk-I6CFRGID.js} +4 -3
- package/dist/esm/{chunk-IM3I5CZL.js.map → chunk-I6CFRGID.js.map} +2 -2
- package/dist/esm/{chunk-OEDU5ZEA.js → chunk-KUH5AB5T.js} +2 -2
- package/dist/esm/{chunk-JFDDW3IV.js → chunk-P7TPNRU4.js} +4 -8
- package/dist/esm/{chunk-JFDDW3IV.js.map → chunk-P7TPNRU4.js.map} +2 -2
- package/dist/esm/{chunk-LGZWQZLS.js → chunk-QNOBB5HT.js} +2 -2
- package/dist/esm/{chunk-GV36OVX7.js → chunk-R67C5QTH.js} +2 -2
- package/dist/esm/{chunk-S4CU4XRB.js → chunk-VGFVSRWH.js} +2 -2
- package/dist/esm/{chunk-X4CMSAET.js → chunk-WSQWMVA2.js} +2 -2
- package/dist/esm/{chunk-NEFRXIFY.js → chunk-XEP6X7JU.js} +2 -2
- package/dist/esm/chunk-XEP6X7JU.js.map +7 -0
- package/dist/esm/components/AddressLookup/AddressLookup.js +4 -4
- package/dist/esm/components/AddressLookup/index.js +4 -4
- package/dist/esm/components/Breadcrumbs/Breadcrumbs.js +1 -1
- package/dist/esm/components/Breadcrumbs/index.js +1 -1
- package/dist/esm/components/Combobox/Combobox.js +3 -3
- package/dist/esm/components/Combobox/index.js +3 -3
- package/dist/esm/components/DateField/DateField.js +3 -3
- package/dist/esm/components/DateField/index.js +3 -3
- package/dist/esm/components/DropdownMenu/Item.js +1 -1
- package/dist/esm/components/DropdownMenu/index.js +2 -2
- package/dist/esm/components/MaskedField/MaskedField.js +2 -2
- package/dist/esm/components/MaskedField/index.js +3 -3
- package/dist/esm/components/NumberField/NumberField.js +3 -3
- package/dist/esm/components/NumberField/index.js +3 -3
- package/dist/esm/components/PasswordField/PasswordField.js +3 -3
- package/dist/esm/components/PasswordField/index.js +3 -3
- package/dist/esm/components/TextField/TextField.js +2 -2
- package/dist/esm/components/TextField/adornmentWithClassName.js +1 -1
- package/dist/esm/components/TextField/index.js +2 -2
- package/dist/esm/components/index.js +11 -11
- package/dist/esm/index.js +11 -11
- package/dist/esm/meta.json +127 -117
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/types/components/Accordion/Accordion.d.ts +4 -4
- package/dist/types/components/Accordion/AccordionList.d.ts +4 -4
- package/dist/types/components/AddressLookup/AddressLookup.d.ts +4 -4
- package/dist/types/components/AddressLookup/LoqateAddressLookupService.d.ts +1 -1
- package/dist/types/components/Alert/Alert.d.ts +4 -4
- package/dist/types/components/Box/Box.d.ts +4 -4
- package/dist/types/components/Breadcrumbs/BreadcrumbItem.d.ts +4 -4
- package/dist/types/components/Breadcrumbs/Breadcrumbs.d.ts +4 -4
- package/dist/types/components/Button/Button.d.ts +4 -4
- package/dist/types/components/Checkbox/Checkbox.d.ts +4 -4
- package/dist/types/components/Checkbox/CheckboxGroup.d.ts +4 -4
- package/dist/types/components/Combobox/Combobox.d.ts +2 -5
- package/dist/types/components/Combobox/useComboboxOptions.d.ts +1 -1
- package/dist/types/components/Container/Container.d.ts +4 -4
- package/dist/types/components/DateField/DateField.d.ts +4 -4
- package/dist/types/components/Divider/Divider.d.ts +4 -4
- package/dist/types/components/Drawer/Content.d.ts +4 -4
- package/dist/types/components/Drawer/Drawer.d.ts +4 -4
- package/dist/types/components/Drawer/Header.d.ts +4 -4
- package/dist/types/components/DropdownMenu/DropdownMenu.d.ts +4 -4
- package/dist/types/components/DropdownMenu/Item.d.ts +4 -4
- package/dist/types/components/ErrorMessage/ErrorMessage.d.ts +4 -4
- package/dist/types/components/ExpandableText/ExpandableText.d.ts +4 -4
- package/dist/types/components/Fieldset/Fieldset.d.ts +4 -4
- package/dist/types/components/Flex/Flex.d.ts +4 -4
- package/dist/types/components/Grid/Grid.d.ts +4 -4
- package/dist/types/components/Grid/Item.d.ts +4 -4
- package/dist/types/components/Image/Image.d.ts +4 -4
- package/dist/types/components/Label/Label.d.ts +4 -4
- package/dist/types/components/Link/Link.d.ts +4 -4
- package/dist/types/components/List/List.d.ts +4 -4
- package/dist/types/components/List/ListItem.d.ts +4 -4
- package/dist/types/components/LoadingIndicator/LoadingIndicator.d.ts +4 -4
- package/dist/types/components/Logo/Logo.d.ts +4 -4
- package/dist/types/components/MaskedField/MaskedField.d.ts +4 -4
- package/dist/types/components/Modal/Content.d.ts +4 -4
- package/dist/types/components/Modal/Header.d.ts +4 -4
- package/dist/types/components/Modal/Modal.d.ts +4 -4
- package/dist/types/components/NumberField/NumberField.d.ts +4 -4
- package/dist/types/components/Option/Option.d.ts +4 -4
- package/dist/types/components/PasswordField/PasswordField.d.ts +4 -4
- package/dist/types/components/Progress/Progress.d.ts +4 -4
- package/dist/types/components/Radio/Radio.d.ts +4 -4
- package/dist/types/components/Radio/RadioGroup.d.ts +4 -4
- package/dist/types/components/SVG/SVG.d.ts +4 -4
- package/dist/types/components/Segment/Segment.d.ts +4 -4
- package/dist/types/components/Segment/SegmentGroup.d.ts +4 -4
- package/dist/types/components/Select/Select.d.ts +4 -4
- package/dist/types/components/Stack/Stack.d.ts +4 -4
- package/dist/types/components/Switch/Switch.d.ts +4 -4
- package/dist/types/components/Table/Body.d.ts +4 -4
- package/dist/types/components/Table/Cell.d.ts +4 -4
- package/dist/types/components/Table/Foot.d.ts +4 -4
- package/dist/types/components/Table/Head.d.ts +4 -4
- package/dist/types/components/Table/HeaderCell.d.ts +4 -4
- package/dist/types/components/Table/Row.d.ts +4 -4
- package/dist/types/components/Table/Table.d.ts +4 -4
- package/dist/types/components/Text/Text.d.ts +4 -4
- package/dist/types/components/TextArea/TextArea.d.ts +4 -4
- package/dist/types/components/TextAreaInput/TextAreaInput.d.ts +4 -4
- package/dist/types/components/TextField/TextField.d.ts +1 -4
- package/dist/types/components/TextField/adornmentWithClassName.d.ts +3 -1
- package/dist/types/components/TextOrHTML/TextOrHTML.d.ts +4 -4
- package/dist/types/components/Title/Title.d.ts +4 -4
- package/dist/types/components/Toast/ToastOptionsDoc.d.ts +4 -8
- package/dist/types/components/Toast/Toaster.d.ts +4 -4
- package/dist/types/hooks/useButton/useButton.d.ts +5 -5
- package/dist/types/hooks/useLabel/useLabel.d.ts +1 -1
- package/package.json +11 -10
- package/src/components/Box/Box.test.tsx +1 -2
- package/src/components/Breadcrumbs/Breadcrumbs.tsx +3 -7
- package/src/components/Button/Button.stories.tsx +1 -1
- package/src/components/Combobox/Combobox.tsx +2 -4
- package/src/components/DropdownMenu/DropdownMenu.stories.tsx +1 -1
- package/src/components/DropdownMenu/Item.tsx +3 -6
- package/src/components/Grid/Grid.stories.tsx +1 -1
- package/src/components/TextField/TextField.tsx +3 -1
- package/src/components/TextField/adornmentWithClassName.ts +4 -3
- package/src/hooks/useBreakpoint/useBreakpoint.test.tsx +4 -4
- package/src/styles.d.ts +2 -0
- package/dist/esm/chunk-IQKS662C.js.map +0 -7
- package/dist/esm/chunk-NEFRXIFY.js.map +0 -7
- /package/dist/esm/{chunk-XNEQHHNV.js.map → chunk-5QMKPWB4.js.map} +0 -0
- /package/dist/esm/{chunk-OEDU5ZEA.js.map → chunk-KUH5AB5T.js.map} +0 -0
- /package/dist/esm/{chunk-LGZWQZLS.js.map → chunk-QNOBB5HT.js.map} +0 -0
- /package/dist/esm/{chunk-GV36OVX7.js.map → chunk-R67C5QTH.js.map} +0 -0
- /package/dist/esm/{chunk-S4CU4XRB.js.map → chunk-VGFVSRWH.js.map} +0 -0
- /package/dist/esm/{chunk-X4CMSAET.js.map → chunk-WSQWMVA2.js.map} +0 -0
|
@@ -945,9 +945,10 @@ var init_adornmentWithClassName = __esm({
|
|
|
945
945
|
import_react10 = require("react");
|
|
946
946
|
adornmentWithClassName = (component, validationClasses, className) => {
|
|
947
947
|
if (!component) return null;
|
|
948
|
-
|
|
948
|
+
const typedComponent = component;
|
|
949
|
+
return (0, import_react10.cloneElement)(typedComponent, {
|
|
949
950
|
className: (0, import_dedupe12.default)(
|
|
950
|
-
|
|
951
|
+
typedComponent.props.className,
|
|
951
952
|
validationClasses,
|
|
952
953
|
className
|
|
953
954
|
)
|
|
@@ -957,12 +958,13 @@ var init_adornmentWithClassName = __esm({
|
|
|
957
958
|
});
|
|
958
959
|
|
|
959
960
|
// src/components/TextField/TextField.tsx
|
|
960
|
-
var import_dedupe13, import_TextField, import_jsx_runtime12, TextField;
|
|
961
|
+
var import_dedupe13, import_react11, import_TextField, import_jsx_runtime12, TextFieldInner, TextField;
|
|
961
962
|
var init_TextField = __esm({
|
|
962
963
|
"src/components/TextField/TextField.tsx"() {
|
|
963
964
|
"use strict";
|
|
964
965
|
"use client";
|
|
965
966
|
import_dedupe13 = __toESM(require("classnames/dedupe"));
|
|
967
|
+
import_react11 = require("react");
|
|
966
968
|
init_hooks();
|
|
967
969
|
init_ErrorMessage2();
|
|
968
970
|
init_Label2();
|
|
@@ -970,7 +972,7 @@ var init_TextField = __esm({
|
|
|
970
972
|
init_adornmentWithClassName();
|
|
971
973
|
import_TextField = require("@simplybusiness/mobius/src/components/TextField/TextField.css");
|
|
972
974
|
import_jsx_runtime12 = require("react/jsx-runtime");
|
|
973
|
-
|
|
975
|
+
TextFieldInner = ({ ref, ...props }) => {
|
|
974
976
|
const {
|
|
975
977
|
isDisabled,
|
|
976
978
|
type = "text",
|
|
@@ -1064,6 +1066,7 @@ var init_TextField = __esm({
|
|
|
1064
1066
|
/* @__PURE__ */ (0, import_jsx_runtime12.jsx)(ErrorMessage, { ...errorMessageProps, errorMessage })
|
|
1065
1067
|
] });
|
|
1066
1068
|
};
|
|
1069
|
+
TextField = (0, import_react11.memo)(TextFieldInner);
|
|
1067
1070
|
TextField.displayName = "TextField";
|
|
1068
1071
|
}
|
|
1069
1072
|
});
|
|
@@ -1081,17 +1084,17 @@ var MaskedField_exports = {};
|
|
|
1081
1084
|
__export(MaskedField_exports, {
|
|
1082
1085
|
MaskedField: () => MaskedField
|
|
1083
1086
|
});
|
|
1084
|
-
var
|
|
1087
|
+
var import_react51, import_react_imask, import_jsx_runtime76, useAcceptHandler, useCombinedRef, useBlurHandler, ControlledMaskedField, UncontrolledMaskedField, MaskedField;
|
|
1085
1088
|
var init_MaskedField = __esm({
|
|
1086
1089
|
"src/components/MaskedField/MaskedField.tsx"() {
|
|
1087
1090
|
"use strict";
|
|
1088
1091
|
"use client";
|
|
1089
|
-
|
|
1092
|
+
import_react51 = require("react");
|
|
1090
1093
|
import_react_imask = require("react-imask");
|
|
1091
1094
|
init_TextField2();
|
|
1092
1095
|
import_jsx_runtime76 = require("react/jsx-runtime");
|
|
1093
1096
|
useAcceptHandler = (onChange, useMaskedValue, name) => {
|
|
1094
|
-
return (0,
|
|
1097
|
+
return (0, import_react51.useCallback)(
|
|
1095
1098
|
(maskedValue, maskInstance) => {
|
|
1096
1099
|
if (!onChange) {
|
|
1097
1100
|
return;
|
|
@@ -1107,7 +1110,7 @@ var init_MaskedField = __esm({
|
|
|
1107
1110
|
);
|
|
1108
1111
|
};
|
|
1109
1112
|
useCombinedRef = (imaskRef, forwardedRef) => {
|
|
1110
|
-
return (0,
|
|
1113
|
+
return (0, import_react51.useCallback)(
|
|
1111
1114
|
(element) => {
|
|
1112
1115
|
imaskRef.current = element;
|
|
1113
1116
|
if (typeof forwardedRef === "function") {
|
|
@@ -1120,7 +1123,7 @@ var init_MaskedField = __esm({
|
|
|
1120
1123
|
);
|
|
1121
1124
|
};
|
|
1122
1125
|
useBlurHandler = (onBlur, maskRef, useMaskedValue, name) => {
|
|
1123
|
-
return (0,
|
|
1126
|
+
return (0, import_react51.useCallback)(
|
|
1124
1127
|
(event) => {
|
|
1125
1128
|
if (!onBlur || !maskRef.current) {
|
|
1126
1129
|
return;
|
|
@@ -1150,7 +1153,7 @@ var init_MaskedField = __esm({
|
|
|
1150
1153
|
const { ref: imaskRef, maskRef, setValue } = (0, import_react_imask.useIMask)(mask, { onAccept });
|
|
1151
1154
|
const combinedRef = useCombinedRef(imaskRef, forwardedRef);
|
|
1152
1155
|
const handleBlur = useBlurHandler(onBlur, maskRef, useMaskedValue, name);
|
|
1153
|
-
(0,
|
|
1156
|
+
(0, import_react51.useEffect)(() => {
|
|
1154
1157
|
if (!maskRef.current) {
|
|
1155
1158
|
return;
|
|
1156
1159
|
}
|
|
@@ -1662,12 +1665,12 @@ AccordionList.displayName = "AccordionList";
|
|
|
1662
1665
|
|
|
1663
1666
|
// src/components/AddressLookup/AddressLookup.tsx
|
|
1664
1667
|
var import_icons3 = require("@simplybusiness/icons");
|
|
1665
|
-
var
|
|
1668
|
+
var import_react16 = require("react");
|
|
1666
1669
|
|
|
1667
1670
|
// src/components/Combobox/Combobox.tsx
|
|
1668
1671
|
var import_mobius_hooks5 = require("@simplybusiness/mobius-hooks");
|
|
1669
1672
|
var import_dedupe16 = __toESM(require("classnames/dedupe"));
|
|
1670
|
-
var
|
|
1673
|
+
var import_react15 = require("react");
|
|
1671
1674
|
init_hooks();
|
|
1672
1675
|
init_TextField2();
|
|
1673
1676
|
|
|
@@ -1706,7 +1709,7 @@ function VisuallyHidden(props) {
|
|
|
1706
1709
|
var import_dedupe15 = __toESM(require("classnames/dedupe"));
|
|
1707
1710
|
|
|
1708
1711
|
// src/components/Combobox/Option.tsx
|
|
1709
|
-
var
|
|
1712
|
+
var import_react12 = require("react");
|
|
1710
1713
|
var import_dedupe14 = __toESM(require("classnames/dedupe"));
|
|
1711
1714
|
|
|
1712
1715
|
// src/components/Combobox/utils.tsx
|
|
@@ -1741,13 +1744,13 @@ var Option = ({
|
|
|
1741
1744
|
optionTestIdPrefix,
|
|
1742
1745
|
id
|
|
1743
1746
|
}) => {
|
|
1744
|
-
const optionRef = (0,
|
|
1747
|
+
const optionRef = (0, import_react12.useRef)(null);
|
|
1745
1748
|
const optionValue = getOptionValue(option) || "";
|
|
1746
1749
|
const testId = buildOptionTestId(
|
|
1747
1750
|
optionTestIdPrefix || "combobox-option",
|
|
1748
1751
|
optionValue
|
|
1749
1752
|
);
|
|
1750
|
-
(0,
|
|
1753
|
+
(0, import_react12.useEffect)(() => {
|
|
1751
1754
|
if (isHighlighted && optionRef.current && optionRef.current.scrollIntoView) {
|
|
1752
1755
|
optionRef.current.scrollIntoView({ block: "nearest" });
|
|
1753
1756
|
}
|
|
@@ -1851,12 +1854,12 @@ var Listbox = ({
|
|
|
1851
1854
|
};
|
|
1852
1855
|
|
|
1853
1856
|
// src/components/Combobox/useComboboxHighlight.tsx
|
|
1854
|
-
var
|
|
1857
|
+
var import_react13 = require("react");
|
|
1855
1858
|
function useComboboxHighlight(options) {
|
|
1856
|
-
const [highlightedIndex, setHighlightedIndex] = (0,
|
|
1859
|
+
const [highlightedIndex, setHighlightedIndex] = (0, import_react13.useState)(
|
|
1857
1860
|
options && options.length ? 0 : -1
|
|
1858
1861
|
);
|
|
1859
|
-
const [highlightedGroupIndex, setHighlightedGroupIndex] = (0,
|
|
1862
|
+
const [highlightedGroupIndex, setHighlightedGroupIndex] = (0, import_react13.useState)(0);
|
|
1860
1863
|
function highlightNextOption() {
|
|
1861
1864
|
const isGroup = isOptionGroup(options);
|
|
1862
1865
|
if (!options) {
|
|
@@ -1935,7 +1938,7 @@ function useComboboxHighlight(options) {
|
|
|
1935
1938
|
|
|
1936
1939
|
// src/components/Combobox/useComboboxOptions.ts
|
|
1937
1940
|
var import_mobius_hooks4 = require("@simplybusiness/mobius-hooks");
|
|
1938
|
-
var
|
|
1941
|
+
var import_react14 = require("react");
|
|
1939
1942
|
function useComboboxOptions({
|
|
1940
1943
|
options,
|
|
1941
1944
|
asyncOptions,
|
|
@@ -1945,19 +1948,19 @@ function useComboboxOptions({
|
|
|
1945
1948
|
skipNextDebounceRef,
|
|
1946
1949
|
onSearched
|
|
1947
1950
|
}) {
|
|
1948
|
-
const [filteredOptions, setFilteredOptions] = (0,
|
|
1951
|
+
const [filteredOptions, setFilteredOptions] = (0, import_react14.useState)(void 0);
|
|
1949
1952
|
const debouncedInputValue = (0, import_mobius_hooks4.useDebouncedValue)(
|
|
1950
1953
|
inputValue,
|
|
1951
1954
|
// Don't debounce synchronous options
|
|
1952
1955
|
options ? 0 : delay
|
|
1953
1956
|
);
|
|
1954
|
-
const [isLoading, setIsLoading] = (0,
|
|
1955
|
-
const [error3, setError] = (0,
|
|
1956
|
-
const asyncOptionsRef = (0,
|
|
1957
|
+
const [isLoading, setIsLoading] = (0, import_react14.useState)(false);
|
|
1958
|
+
const [error3, setError] = (0, import_react14.useState)(null);
|
|
1959
|
+
const asyncOptionsRef = (0, import_react14.useRef)(asyncOptions);
|
|
1957
1960
|
asyncOptionsRef.current = asyncOptions;
|
|
1958
|
-
const onSearchedRef = (0,
|
|
1961
|
+
const onSearchedRef = (0, import_react14.useRef)(onSearched);
|
|
1959
1962
|
onSearchedRef.current = onSearched;
|
|
1960
|
-
(0,
|
|
1963
|
+
(0, import_react14.useEffect)(() => {
|
|
1961
1964
|
const controller = new AbortController();
|
|
1962
1965
|
const { signal } = controller;
|
|
1963
1966
|
const fetchOptions = async () => {
|
|
@@ -2044,11 +2047,11 @@ var ComboboxInner = ({
|
|
|
2044
2047
|
errorMessage,
|
|
2045
2048
|
...otherProps
|
|
2046
2049
|
} = props;
|
|
2047
|
-
const skipNextDebounceRef = (0,
|
|
2048
|
-
const fallbackRef = (0,
|
|
2049
|
-
const [inputValue, setInputValue] = (0,
|
|
2050
|
-
const [isOpen, setIsOpen] = (0,
|
|
2051
|
-
const [isChanging, setIsChanging] = (0,
|
|
2050
|
+
const skipNextDebounceRef = (0, import_react15.useRef)(false);
|
|
2051
|
+
const fallbackRef = (0, import_react15.useRef)(null);
|
|
2052
|
+
const [inputValue, setInputValue] = (0, import_react15.useState)(defaultValue || "");
|
|
2053
|
+
const [isOpen, setIsOpen] = (0, import_react15.useState)(false);
|
|
2054
|
+
const [isChanging, setIsChanging] = (0, import_react15.useState)(false);
|
|
2052
2055
|
const { filteredOptions, updateFilteredOptions, isLoading, error: error3 } = useComboboxOptions({
|
|
2053
2056
|
options,
|
|
2054
2057
|
asyncOptions,
|
|
@@ -2057,7 +2060,7 @@ var ComboboxInner = ({
|
|
|
2057
2060
|
minSearchLength,
|
|
2058
2061
|
skipNextDebounceRef
|
|
2059
2062
|
});
|
|
2060
|
-
const [validationError, setValidationError] = (0,
|
|
2063
|
+
const [validationError, setValidationError] = (0, import_react15.useState)(
|
|
2061
2064
|
error3?.message || errorMessage
|
|
2062
2065
|
);
|
|
2063
2066
|
const {
|
|
@@ -2070,14 +2073,14 @@ var ComboboxInner = ({
|
|
|
2070
2073
|
clearHighlight
|
|
2071
2074
|
} = useComboboxHighlight(filteredOptions);
|
|
2072
2075
|
const inputRef = ref || fallbackRef;
|
|
2073
|
-
const listboxId = (0,
|
|
2074
|
-
const statusId = (0,
|
|
2075
|
-
const blurTimeoutRef = (0,
|
|
2076
|
-
const userInteractedRef = (0,
|
|
2077
|
-
const justSelectedRef = (0,
|
|
2076
|
+
const listboxId = (0, import_react15.useId)();
|
|
2077
|
+
const statusId = (0, import_react15.useId)();
|
|
2078
|
+
const blurTimeoutRef = (0, import_react15.useRef)(null);
|
|
2079
|
+
const userInteractedRef = (0, import_react15.useRef)(false);
|
|
2080
|
+
const justSelectedRef = (0, import_react15.useRef)(false);
|
|
2078
2081
|
const { down } = useBreakpoint();
|
|
2079
2082
|
const isMobile = down("md");
|
|
2080
|
-
(0,
|
|
2083
|
+
(0, import_react15.useEffect)(() => {
|
|
2081
2084
|
setValidationError(error3?.message || errorMessage);
|
|
2082
2085
|
}, [error3, errorMessage]);
|
|
2083
2086
|
const getEmptyValue = () => {
|
|
@@ -2106,7 +2109,7 @@ var ComboboxInner = ({
|
|
|
2106
2109
|
justSelectedRef.current = false;
|
|
2107
2110
|
}
|
|
2108
2111
|
};
|
|
2109
|
-
(0,
|
|
2112
|
+
(0, import_react15.useEffect)(() => {
|
|
2110
2113
|
if (!inputRef || typeof inputRef === "function") return;
|
|
2111
2114
|
const inputElement = inputRef.current;
|
|
2112
2115
|
if (!inputElement) return;
|
|
@@ -2259,12 +2262,12 @@ var ComboboxInner = ({
|
|
|
2259
2262
|
default:
|
|
2260
2263
|
}
|
|
2261
2264
|
};
|
|
2262
|
-
(0,
|
|
2265
|
+
(0, import_react15.useEffect)(() => {
|
|
2263
2266
|
if (value) {
|
|
2264
2267
|
setInputValue(value);
|
|
2265
2268
|
}
|
|
2266
2269
|
}, [value]);
|
|
2267
|
-
(0,
|
|
2270
|
+
(0, import_react15.useEffect)(() => {
|
|
2268
2271
|
if (asyncOptions && isChanging) {
|
|
2269
2272
|
setIsOpen(!!filteredOptions && filteredOptions.length > 0);
|
|
2270
2273
|
}
|
|
@@ -2378,15 +2381,15 @@ var AddressLookup = ({
|
|
|
2378
2381
|
errorMessage,
|
|
2379
2382
|
...otherProps
|
|
2380
2383
|
}) => {
|
|
2381
|
-
const [error3, _setError] = (0,
|
|
2382
|
-
const setError = (0,
|
|
2384
|
+
const [error3, _setError] = (0, import_react16.useState)(null);
|
|
2385
|
+
const setError = (0, import_react16.useCallback)(
|
|
2383
2386
|
(newError) => {
|
|
2384
2387
|
if (newError != null) onError?.(newError);
|
|
2385
2388
|
_setError(newError);
|
|
2386
2389
|
},
|
|
2387
2390
|
[onError]
|
|
2388
2391
|
);
|
|
2389
|
-
const asyncOptions = (0,
|
|
2392
|
+
const asyncOptions = (0, import_react16.useCallback)(
|
|
2390
2393
|
async (searchTerm) => {
|
|
2391
2394
|
try {
|
|
2392
2395
|
const response = await addressLookupService.search(searchTerm);
|
|
@@ -2633,7 +2636,7 @@ var Box = ({ ref, ...props }) => {
|
|
|
2633
2636
|
Box.displayName = "Box";
|
|
2634
2637
|
|
|
2635
2638
|
// src/components/Breadcrumbs/Breadcrumbs.tsx
|
|
2636
|
-
var
|
|
2639
|
+
var import_react17 = require("react");
|
|
2637
2640
|
var import_dedupe19 = __toESM(require("classnames/dedupe"));
|
|
2638
2641
|
var import_Breadcrumbs = require("@simplybusiness/mobius/src/components/Breadcrumbs/Breadcrumbs.css");
|
|
2639
2642
|
var import_jsx_runtime20 = require("react/jsx-runtime");
|
|
@@ -2641,26 +2644,22 @@ var Breadcrumbs = ({ ref, ...props }) => {
|
|
|
2641
2644
|
const { "aria-label": ariaLabel = "Breadcrumbs" } = props;
|
|
2642
2645
|
const { navProps } = { navProps: { "aria-label": ariaLabel } };
|
|
2643
2646
|
const { children, ...otherProps } = props;
|
|
2644
|
-
const childArray =
|
|
2647
|
+
const childArray = import_react17.Children.toArray(children);
|
|
2645
2648
|
const classes = (0, import_dedupe19.default)(
|
|
2646
2649
|
"mobius",
|
|
2647
2650
|
"mobius-breadcrumb",
|
|
2648
2651
|
otherProps.className
|
|
2649
2652
|
);
|
|
2650
2653
|
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("nav", { ref, ...otherProps, ...navProps, className: classes, children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("ul", { children: childArray.map(
|
|
2651
|
-
(child, i) => (0,
|
|
2652
|
-
|
|
2653
|
-
|
|
2654
|
-
key: i,
|
|
2655
|
-
isCurrent: i === childArray.length - 1
|
|
2656
|
-
}
|
|
2657
|
-
)
|
|
2654
|
+
(child, i) => (0, import_react17.cloneElement)(child, {
|
|
2655
|
+
isCurrent: i === childArray.length - 1
|
|
2656
|
+
})
|
|
2658
2657
|
) }) });
|
|
2659
2658
|
};
|
|
2660
2659
|
Breadcrumbs.displayName = "Breadcrumbs";
|
|
2661
2660
|
|
|
2662
2661
|
// src/components/Breadcrumbs/BreadcrumbItem.tsx
|
|
2663
|
-
var
|
|
2662
|
+
var import_react18 = require("react");
|
|
2664
2663
|
var import_dedupe20 = __toESM(require("classnames/dedupe"));
|
|
2665
2664
|
var import_jsx_runtime21 = require("react/jsx-runtime");
|
|
2666
2665
|
var BreadcrumbItem = ({ ref, ...props }) => {
|
|
@@ -2684,9 +2683,9 @@ var BreadcrumbItem = ({ ref, ...props }) => {
|
|
|
2684
2683
|
"mobius-breadcrumb__item",
|
|
2685
2684
|
props.className
|
|
2686
2685
|
);
|
|
2687
|
-
const child = typeof children === "string" ? /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("span", { ...itemProps, children }) :
|
|
2686
|
+
const child = typeof children === "string" ? /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("span", { ...itemProps, children }) : import_react18.Children.only(children);
|
|
2688
2687
|
return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)("li", { className: classes, children: [
|
|
2689
|
-
(0,
|
|
2688
|
+
(0, import_react18.cloneElement)(child, {
|
|
2690
2689
|
...child.props,
|
|
2691
2690
|
...itemProps,
|
|
2692
2691
|
ref
|
|
@@ -2761,7 +2760,7 @@ var Button = ({ ref, ...props }) => {
|
|
|
2761
2760
|
Button.displayName = "Button";
|
|
2762
2761
|
|
|
2763
2762
|
// src/components/Checkbox/Checkbox.tsx
|
|
2764
|
-
var
|
|
2763
|
+
var import_react19 = require("react");
|
|
2765
2764
|
var import_dedupe22 = __toESM(require("classnames/dedupe"));
|
|
2766
2765
|
var import_icons7 = require("@simplybusiness/icons");
|
|
2767
2766
|
init_ErrorMessage2();
|
|
@@ -2790,12 +2789,12 @@ var Checkbox = ({ ref, ...props }) => {
|
|
|
2790
2789
|
["aria-describedby"]: ariaDescribedBy,
|
|
2791
2790
|
...rest
|
|
2792
2791
|
} = props;
|
|
2793
|
-
const [checked, setChecked] = (0,
|
|
2794
|
-
const fallbackRef = (0,
|
|
2792
|
+
const [checked, setChecked] = (0, import_react19.useState)(defaultSelected);
|
|
2793
|
+
const fallbackRef = (0, import_react19.useRef)(null);
|
|
2795
2794
|
const refObj = ref || fallbackRef;
|
|
2796
|
-
const inputId = (0,
|
|
2795
|
+
const inputId = (0, import_react19.useId)();
|
|
2797
2796
|
const isControlled = typeof selected === "boolean";
|
|
2798
|
-
(0,
|
|
2797
|
+
(0, import_react19.useEffect)(() => {
|
|
2799
2798
|
if (isControlled) {
|
|
2800
2799
|
setChecked(selected);
|
|
2801
2800
|
}
|
|
@@ -2819,13 +2818,13 @@ var Checkbox = ({ ref, ...props }) => {
|
|
|
2819
2818
|
const labelClasses = (0, import_dedupe22.default)("mobius-checkbox__label", sharedClasses);
|
|
2820
2819
|
const inputClasses = (0, import_dedupe22.default)("mobius-checkbox__input", sharedClasses);
|
|
2821
2820
|
const iconClasses = (0, import_dedupe22.default)("mobius-checkbox__icon", sharedClasses);
|
|
2822
|
-
const errorMessageId = (0,
|
|
2821
|
+
const errorMessageId = (0, import_react19.useId)();
|
|
2823
2822
|
const shouldErrorMessageShow = errorMessage ? errorMessageId : void 0;
|
|
2824
2823
|
const describedBy = spaceDelimitedList([
|
|
2825
2824
|
shouldErrorMessageShow,
|
|
2826
2825
|
ariaDescribedBy
|
|
2827
2826
|
]);
|
|
2828
|
-
const labelId = (0,
|
|
2827
|
+
const labelId = (0, import_react19.useId)();
|
|
2829
2828
|
const handleChange = (event) => {
|
|
2830
2829
|
setChecked(!checked);
|
|
2831
2830
|
if (onChange) {
|
|
@@ -2872,7 +2871,7 @@ Checkbox.displayName = "Checkbox";
|
|
|
2872
2871
|
|
|
2873
2872
|
// src/components/Checkbox/CheckboxGroup.tsx
|
|
2874
2873
|
var import_dedupe23 = __toESM(require("classnames/dedupe"));
|
|
2875
|
-
var
|
|
2874
|
+
var import_react20 = require("react");
|
|
2876
2875
|
init_hooks();
|
|
2877
2876
|
init_spaceDelimitedList();
|
|
2878
2877
|
init_ErrorMessage2();
|
|
@@ -2896,10 +2895,10 @@ var CheckboxGroup = ({ ref, ...props }) => {
|
|
|
2896
2895
|
lastItemDisables = false,
|
|
2897
2896
|
...rest
|
|
2898
2897
|
} = props;
|
|
2899
|
-
const [selected, setSelected] = (0,
|
|
2900
|
-
const isInitializedRef = (0,
|
|
2901
|
-
const prevDefaultValueRef = (0,
|
|
2902
|
-
(0,
|
|
2898
|
+
const [selected, setSelected] = (0, import_react20.useState)(defaultValue);
|
|
2899
|
+
const isInitializedRef = (0, import_react20.useRef)(false);
|
|
2900
|
+
const prevDefaultValueRef = (0, import_react20.useRef)(defaultValue);
|
|
2901
|
+
(0, import_react20.useEffect)(() => {
|
|
2903
2902
|
const hasChanged = defaultValue.length !== prevDefaultValueRef.current.length || defaultValue.some(
|
|
2904
2903
|
(val, index) => val !== prevDefaultValueRef.current[index]
|
|
2905
2904
|
);
|
|
@@ -2927,13 +2926,13 @@ var CheckboxGroup = ({ ref, ...props }) => {
|
|
|
2927
2926
|
},
|
|
2928
2927
|
validationClasses
|
|
2929
2928
|
);
|
|
2930
|
-
const errorMessageId = (0,
|
|
2929
|
+
const errorMessageId = (0, import_react20.useId)();
|
|
2931
2930
|
const shouldErrorMessageShow = errorMessage ? errorMessageId : void 0;
|
|
2932
2931
|
const describedBy = spaceDelimitedList([
|
|
2933
2932
|
shouldErrorMessageShow,
|
|
2934
2933
|
props["aria-describedby"]
|
|
2935
2934
|
]);
|
|
2936
|
-
const labelId = (0,
|
|
2935
|
+
const labelId = (0, import_react20.useId)();
|
|
2937
2936
|
const handleChange = (event, isLastItem = false) => {
|
|
2938
2937
|
const {
|
|
2939
2938
|
target: { value, checked }
|
|
@@ -2951,9 +2950,9 @@ var CheckboxGroup = ({ ref, ...props }) => {
|
|
|
2951
2950
|
setSelected(newValue);
|
|
2952
2951
|
onChange?.(newValue);
|
|
2953
2952
|
};
|
|
2954
|
-
const childrenArray =
|
|
2953
|
+
const childrenArray = import_react20.Children.toArray(children);
|
|
2955
2954
|
const lastCheckbox = childrenArray.filter(
|
|
2956
|
-
(child) => (0,
|
|
2955
|
+
(child) => (0, import_react20.isValidElement)(child) && child.type === Checkbox
|
|
2957
2956
|
).pop();
|
|
2958
2957
|
const lastCheckboxIsChecked = lastCheckbox && selected.includes(lastCheckbox.props.value);
|
|
2959
2958
|
return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
|
|
@@ -2965,16 +2964,16 @@ var CheckboxGroup = ({ ref, ...props }) => {
|
|
|
2965
2964
|
className: checkboxGroupClasses,
|
|
2966
2965
|
role: "group",
|
|
2967
2966
|
style: {
|
|
2968
|
-
"--checkbox-items-per-row": itemsPerRow ||
|
|
2967
|
+
"--checkbox-items-per-row": itemsPerRow || import_react20.Children.count(children)
|
|
2969
2968
|
},
|
|
2970
2969
|
children: [
|
|
2971
2970
|
label && /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Label, { elementType: "span", id: labelId, className: labelClasses, children: label }),
|
|
2972
2971
|
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: "mobius-checkbox-group__wrapper", children: childrenArray.map((child) => {
|
|
2973
|
-
if ((0,
|
|
2972
|
+
if ((0, import_react20.isValidElement)(child)) {
|
|
2974
2973
|
const isLastItem = child === lastCheckbox;
|
|
2975
2974
|
const isChildDisabled = isDisabled || lastItemDisables && lastCheckboxIsChecked && !isLastItem;
|
|
2976
2975
|
const childProps = child.props;
|
|
2977
|
-
return (0,
|
|
2976
|
+
return (0, import_react20.cloneElement)(
|
|
2978
2977
|
child,
|
|
2979
2978
|
{
|
|
2980
2979
|
isDisabled: isChildDisabled,
|
|
@@ -3016,7 +3015,7 @@ Container.displayName = "Container";
|
|
|
3016
3015
|
|
|
3017
3016
|
// src/components/DateField/DateField.tsx
|
|
3018
3017
|
var import_dedupe25 = __toESM(require("classnames/dedupe"));
|
|
3019
|
-
var
|
|
3018
|
+
var import_react21 = require("react");
|
|
3020
3019
|
init_mergeRefs();
|
|
3021
3020
|
init_TextField2();
|
|
3022
3021
|
|
|
@@ -3066,9 +3065,9 @@ var DateField = ({ ref, ...props }) => {
|
|
|
3066
3065
|
value,
|
|
3067
3066
|
...otherProps
|
|
3068
3067
|
} = props;
|
|
3069
|
-
const [error3, setError] = (0,
|
|
3070
|
-
const [isInvalid, setIsInvalid] = (0,
|
|
3071
|
-
const localRef = (0,
|
|
3068
|
+
const [error3, setError] = (0, import_react21.useState)(errorMessage);
|
|
3069
|
+
const [isInvalid, setIsInvalid] = (0, import_react21.useState)(void 0);
|
|
3070
|
+
const localRef = (0, import_react21.useRef)(null);
|
|
3072
3071
|
const classes = (0, import_dedupe25.default)("mobius-date-field", className);
|
|
3073
3072
|
const formattedMin = min ? convertToDateFormat(min, format) : void 0;
|
|
3074
3073
|
const formattedMax = max ? convertToDateFormat(max, format) : void 0;
|
|
@@ -3082,7 +3081,7 @@ var DateField = ({ ref, ...props }) => {
|
|
|
3082
3081
|
setError(props.errorMessage);
|
|
3083
3082
|
setIsInvalid(false);
|
|
3084
3083
|
};
|
|
3085
|
-
(0,
|
|
3084
|
+
(0, import_react21.useEffect)(() => {
|
|
3086
3085
|
if (!isValidDate(min, format)) {
|
|
3087
3086
|
setInvalidState(`Invalid min date: ${min}`);
|
|
3088
3087
|
return;
|
|
@@ -3141,13 +3140,13 @@ Content.displayName = "Content";
|
|
|
3141
3140
|
|
|
3142
3141
|
// src/components/Drawer/Drawer.tsx
|
|
3143
3142
|
var import_dedupe26 = __toESM(require("classnames/dedupe"));
|
|
3144
|
-
var
|
|
3143
|
+
var import_react23 = require("react");
|
|
3145
3144
|
init_hooks();
|
|
3146
3145
|
init_utils();
|
|
3147
3146
|
|
|
3148
3147
|
// src/components/Drawer/DrawerContext.tsx
|
|
3149
|
-
var
|
|
3150
|
-
var DrawerContext = (0,
|
|
3148
|
+
var import_react22 = require("react");
|
|
3149
|
+
var DrawerContext = (0, import_react22.createContext)({
|
|
3151
3150
|
onClose: () => {
|
|
3152
3151
|
},
|
|
3153
3152
|
closeLabel: void 0,
|
|
@@ -3169,8 +3168,8 @@ var Drawer = ({ ref, ...props }) => {
|
|
|
3169
3168
|
onClose,
|
|
3170
3169
|
children
|
|
3171
3170
|
} = props;
|
|
3172
|
-
const dialogRef = (0,
|
|
3173
|
-
const [shouldTransition, setShouldTransition] = (0,
|
|
3171
|
+
const dialogRef = (0, import_react23.useRef)(null);
|
|
3172
|
+
const [shouldTransition, setShouldTransition] = (0, import_react23.useState)(false);
|
|
3174
3173
|
const { close } = useDialog({
|
|
3175
3174
|
ref: dialogRef,
|
|
3176
3175
|
isOpen,
|
|
@@ -3181,8 +3180,8 @@ var Drawer = ({ ref, ...props }) => {
|
|
|
3181
3180
|
CSSVariable: TRANSITION_CSS_VARIABLE
|
|
3182
3181
|
}
|
|
3183
3182
|
});
|
|
3184
|
-
const hiddenId = `dialog-screen-reader-announce-${(0,
|
|
3185
|
-
const headerId = `dialog-header-${(0,
|
|
3183
|
+
const hiddenId = `dialog-screen-reader-announce-${(0, import_react23.useId)()}`;
|
|
3184
|
+
const headerId = `dialog-header-${(0, import_react23.useId)()}`;
|
|
3186
3185
|
const dialogClasses = (0, import_dedupe26.default)(
|
|
3187
3186
|
"mobius",
|
|
3188
3187
|
"mobius-drawer",
|
|
@@ -3192,10 +3191,10 @@ var Drawer = ({ ref, ...props }) => {
|
|
|
3192
3191
|
"--should-transition": shouldTransition
|
|
3193
3192
|
}
|
|
3194
3193
|
);
|
|
3195
|
-
(0,
|
|
3194
|
+
(0, import_react23.useEffect)(() => {
|
|
3196
3195
|
setShouldTransition(supportsDialog());
|
|
3197
3196
|
}, []);
|
|
3198
|
-
const contextValue = (0,
|
|
3197
|
+
const contextValue = (0, import_react23.useMemo)(
|
|
3199
3198
|
() => ({
|
|
3200
3199
|
onClose: close,
|
|
3201
3200
|
closeLabel,
|
|
@@ -3206,7 +3205,7 @@ var Drawer = ({ ref, ...props }) => {
|
|
|
3206
3205
|
return /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(
|
|
3207
3206
|
"dialog",
|
|
3208
3207
|
{
|
|
3209
|
-
id: (0,
|
|
3208
|
+
id: (0, import_react23.useId)(),
|
|
3210
3209
|
ref: mergeRefs([dialogRef, ref]),
|
|
3211
3210
|
onCancel: close,
|
|
3212
3211
|
className: dialogClasses,
|
|
@@ -3222,9 +3221,9 @@ var Drawer = ({ ref, ...props }) => {
|
|
|
3222
3221
|
Drawer.displayName = "Drawer";
|
|
3223
3222
|
|
|
3224
3223
|
// src/components/Drawer/useDrawer.ts
|
|
3225
|
-
var
|
|
3224
|
+
var import_react24 = require("react");
|
|
3226
3225
|
var useDrawer = () => {
|
|
3227
|
-
const { onClose, closeLabel, headerId } = (0,
|
|
3226
|
+
const { onClose, closeLabel, headerId } = (0, import_react24.useContext)(DrawerContext);
|
|
3228
3227
|
return { onClose, closeLabel, headerId };
|
|
3229
3228
|
};
|
|
3230
3229
|
|
|
@@ -3263,7 +3262,7 @@ var Drawer2 = Object.assign(Drawer, {
|
|
|
3263
3262
|
Drawer2.displayName = "Drawer";
|
|
3264
3263
|
|
|
3265
3264
|
// src/components/DropdownMenu/DropdownMenu.tsx
|
|
3266
|
-
var
|
|
3265
|
+
var import_react25 = require("react");
|
|
3267
3266
|
var import_react_accessible_dropdown_menu_hook = __toESM(require("react-accessible-dropdown-menu-hook"));
|
|
3268
3267
|
var import_dedupe27 = __toESM(require("classnames/dedupe"));
|
|
3269
3268
|
var import_DropdownMenu = require("@simplybusiness/mobius/src/components/DropdownMenu/DropdownMenu.css");
|
|
@@ -3276,8 +3275,8 @@ var DropdownMenu = ({ ref, ...props }) => {
|
|
|
3276
3275
|
children,
|
|
3277
3276
|
...otherProps
|
|
3278
3277
|
} = props;
|
|
3279
|
-
const [activeId, setActiveId] = (0,
|
|
3280
|
-
const numberOfItems =
|
|
3278
|
+
const [activeId, setActiveId] = (0, import_react25.useState)(null);
|
|
3279
|
+
const numberOfItems = import_react25.Children.count(children);
|
|
3281
3280
|
const {
|
|
3282
3281
|
buttonProps,
|
|
3283
3282
|
itemProps,
|
|
@@ -3301,15 +3300,15 @@ var DropdownMenu = ({ ref, ...props }) => {
|
|
|
3301
3300
|
}
|
|
3302
3301
|
};
|
|
3303
3302
|
return /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(Element, { ref, ...otherProps, className: classes, children: [
|
|
3304
|
-
trigger ? (0,
|
|
3303
|
+
trigger ? (0, import_react25.cloneElement)(trigger, {
|
|
3305
3304
|
className: triggerClasses,
|
|
3306
3305
|
open,
|
|
3307
3306
|
label,
|
|
3308
3307
|
...buttonProps
|
|
3309
3308
|
}) : /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(Button, { className: triggerClasses, ...buttonProps, children: label }),
|
|
3310
|
-
/* @__PURE__ */ (0, import_jsx_runtime32.jsx)("ul", { className: listClasses, role: "menu", children:
|
|
3311
|
-
if ((0,
|
|
3312
|
-
return (0,
|
|
3309
|
+
/* @__PURE__ */ (0, import_jsx_runtime32.jsx)("ul", { className: listClasses, role: "menu", children: import_react25.Children.map(children, (child, index) => {
|
|
3310
|
+
if ((0, import_react25.isValidElement)(child)) {
|
|
3311
|
+
return (0, import_react25.cloneElement)(child, {
|
|
3313
3312
|
onClick: () => handleChildClick(child.props, index),
|
|
3314
3313
|
active: index === activeId,
|
|
3315
3314
|
...itemProps[index]
|
|
@@ -3322,7 +3321,7 @@ var DropdownMenu = ({ ref, ...props }) => {
|
|
|
3322
3321
|
DropdownMenu.displayName = "DropdownMenu";
|
|
3323
3322
|
|
|
3324
3323
|
// src/components/DropdownMenu/Item.tsx
|
|
3325
|
-
var
|
|
3324
|
+
var import_react26 = require("react");
|
|
3326
3325
|
var import_dedupe28 = __toESM(require("classnames/dedupe"));
|
|
3327
3326
|
var import_jsx_runtime33 = require("react/jsx-runtime");
|
|
3328
3327
|
var Item = ({ ref, ...props }) => {
|
|
@@ -3339,18 +3338,15 @@ var Item = ({ ref, ...props }) => {
|
|
|
3339
3338
|
{ "--is-active": active },
|
|
3340
3339
|
otherProps.className
|
|
3341
3340
|
);
|
|
3342
|
-
return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Element, { ref, onClick, ...otherProps, children:
|
|
3343
|
-
if ((0,
|
|
3341
|
+
return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Element, { ref, onClick, ...otherProps, children: import_react26.Children.map(children, (child) => {
|
|
3342
|
+
if ((0, import_react26.isValidElement)(child)) {
|
|
3344
3343
|
const childClasses = (0, import_dedupe28.default)(
|
|
3345
3344
|
child.props.className,
|
|
3346
3345
|
classes
|
|
3347
3346
|
);
|
|
3348
|
-
return (0,
|
|
3349
|
-
|
|
3350
|
-
|
|
3351
|
-
className: childClasses
|
|
3352
|
-
}
|
|
3353
|
-
);
|
|
3347
|
+
return (0, import_react26.cloneElement)(child, {
|
|
3348
|
+
className: childClasses
|
|
3349
|
+
});
|
|
3354
3350
|
}
|
|
3355
3351
|
return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("span", { className: classes, children: child });
|
|
3356
3352
|
}) });
|
|
@@ -3371,7 +3367,7 @@ init_ErrorMessage2();
|
|
|
3371
3367
|
|
|
3372
3368
|
// src/components/Fieldset/Fieldset.tsx
|
|
3373
3369
|
var import_dedupe29 = __toESM(require("classnames/dedupe"));
|
|
3374
|
-
var
|
|
3370
|
+
var import_react27 = require("react");
|
|
3375
3371
|
var import_Fieldset = require("@simplybusiness/mobius/src/components/Fieldset/Fieldset.css");
|
|
3376
3372
|
var import_jsx_runtime34 = require("react/jsx-runtime");
|
|
3377
3373
|
var useFieldset = (props) => {
|
|
@@ -3380,7 +3376,7 @@ var useFieldset = (props) => {
|
|
|
3380
3376
|
let containerProps = {
|
|
3381
3377
|
role: "group"
|
|
3382
3378
|
};
|
|
3383
|
-
const legendId = (0,
|
|
3379
|
+
const legendId = (0, import_react27.useId)();
|
|
3384
3380
|
if (legend) {
|
|
3385
3381
|
legendProps = {
|
|
3386
3382
|
...legendProps,
|
|
@@ -3407,7 +3403,7 @@ var Fieldset = ({ ref: _ref, ...props }) => {
|
|
|
3407
3403
|
const classes = (0, import_dedupe29.default)("mobius", "mobius-fieldset", props.className);
|
|
3408
3404
|
legendProps.className = "mobius-fieldset__legend";
|
|
3409
3405
|
return /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(Flex, { ...containerProps, ...otherProps, className: classes, children: [
|
|
3410
|
-
legend && (0,
|
|
3406
|
+
legend && (0, import_react27.cloneElement)(legendComponent, { ...legendProps }, [legend]),
|
|
3411
3407
|
children
|
|
3412
3408
|
] });
|
|
3413
3409
|
};
|
|
@@ -3450,7 +3446,7 @@ var Grid = ({ ref, ...props }) => {
|
|
|
3450
3446
|
Grid.displayName = "Grid";
|
|
3451
3447
|
|
|
3452
3448
|
// src/components/Grid/Item.tsx
|
|
3453
|
-
var
|
|
3449
|
+
var import_react28 = require("react");
|
|
3454
3450
|
var import_dedupe31 = __toESM(require("classnames/dedupe"));
|
|
3455
3451
|
init_hooks();
|
|
3456
3452
|
var import_jsx_runtime36 = require("react/jsx-runtime");
|
|
@@ -3488,9 +3484,9 @@ var GridItem = ({ ref, ...props }) => {
|
|
|
3488
3484
|
xl,
|
|
3489
3485
|
xxl
|
|
3490
3486
|
});
|
|
3491
|
-
const [responsiveSpan, setResponsiveSpan] = (0,
|
|
3487
|
+
const [responsiveSpan, setResponsiveSpan] = (0, import_react28.useState)();
|
|
3492
3488
|
const classes = (0, import_dedupe31.default)("mobius", "mobius-grid__item", className);
|
|
3493
|
-
(0,
|
|
3489
|
+
(0, import_react28.useEffect)(() => {
|
|
3494
3490
|
setResponsiveSpan(breakpointMap[breakpointSize]);
|
|
3495
3491
|
}, [breakpointSize, breakpointMap]);
|
|
3496
3492
|
const styles = {
|
|
@@ -3586,7 +3582,7 @@ function LinkButton({
|
|
|
3586
3582
|
}
|
|
3587
3583
|
|
|
3588
3584
|
// src/components/List/List.tsx
|
|
3589
|
-
var
|
|
3585
|
+
var import_react29 = require("react");
|
|
3590
3586
|
var import_dedupe35 = __toESM(require("classnames/dedupe"));
|
|
3591
3587
|
var import_List = require("@simplybusiness/mobius/src/components/List/List.css");
|
|
3592
3588
|
var import_jsx_runtime40 = require("react/jsx-runtime");
|
|
@@ -3613,9 +3609,9 @@ var List = ({ ref, ...props }) => {
|
|
|
3613
3609
|
ref,
|
|
3614
3610
|
...mappedProps,
|
|
3615
3611
|
className: classes,
|
|
3616
|
-
children:
|
|
3617
|
-
if ((0,
|
|
3618
|
-
return (0,
|
|
3612
|
+
children: import_react29.Children.map(children, (child) => {
|
|
3613
|
+
if ((0, import_react29.isValidElement)(child)) {
|
|
3614
|
+
return (0, import_react29.cloneElement)(child, {
|
|
3619
3615
|
parentIcon: icon
|
|
3620
3616
|
});
|
|
3621
3617
|
}
|
|
@@ -3734,16 +3730,16 @@ var Content2 = ({ ref, children, ...otherProps }) => /* @__PURE__ */ (0, import_
|
|
|
3734
3730
|
Content2.displayName = "Content";
|
|
3735
3731
|
|
|
3736
3732
|
// src/components/Modal/Header.tsx
|
|
3737
|
-
var
|
|
3733
|
+
var import_react32 = require("react");
|
|
3738
3734
|
var import_icons10 = require("@simplybusiness/icons");
|
|
3739
3735
|
init_Icon2();
|
|
3740
3736
|
|
|
3741
3737
|
// src/components/Modal/useModal.ts
|
|
3742
|
-
var
|
|
3738
|
+
var import_react31 = require("react");
|
|
3743
3739
|
|
|
3744
3740
|
// src/components/Modal/ModalContext.tsx
|
|
3745
|
-
var
|
|
3746
|
-
var ModalContext = (0,
|
|
3741
|
+
var import_react30 = require("react");
|
|
3742
|
+
var ModalContext = (0, import_react30.createContext)({
|
|
3747
3743
|
onClose: () => {
|
|
3748
3744
|
},
|
|
3749
3745
|
closeLabel: void 0,
|
|
@@ -3754,7 +3750,7 @@ var ModalContext = (0, import_react29.createContext)({
|
|
|
3754
3750
|
|
|
3755
3751
|
// src/components/Modal/useModal.ts
|
|
3756
3752
|
var useModal = () => {
|
|
3757
|
-
const { onClose, closeLabel, titleId, setTitleId } = (0,
|
|
3753
|
+
const { onClose, closeLabel, titleId, setTitleId } = (0, import_react31.useContext)(ModalContext);
|
|
3758
3754
|
return { onClose, closeLabel, titleId, setTitleId };
|
|
3759
3755
|
};
|
|
3760
3756
|
|
|
@@ -3762,8 +3758,8 @@ var useModal = () => {
|
|
|
3762
3758
|
var import_jsx_runtime45 = require("react/jsx-runtime");
|
|
3763
3759
|
var Header2 = ({ ref, children, ...otherProps }) => {
|
|
3764
3760
|
const { onClose, closeLabel, setTitleId } = useModal();
|
|
3765
|
-
const titleId = (0,
|
|
3766
|
-
(0,
|
|
3761
|
+
const titleId = (0, import_react32.useId)();
|
|
3762
|
+
(0, import_react32.useEffect)(() => {
|
|
3767
3763
|
setTitleId(titleId);
|
|
3768
3764
|
}, [titleId, setTitleId]);
|
|
3769
3765
|
return /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
|
|
@@ -3797,7 +3793,7 @@ Header2.displayName = "Header";
|
|
|
3797
3793
|
|
|
3798
3794
|
// src/components/Modal/Modal.tsx
|
|
3799
3795
|
var import_dedupe39 = __toESM(require("classnames/dedupe"));
|
|
3800
|
-
var
|
|
3796
|
+
var import_react33 = require("react");
|
|
3801
3797
|
init_hooks();
|
|
3802
3798
|
init_utils();
|
|
3803
3799
|
init_polyfill_tests();
|
|
@@ -3817,11 +3813,11 @@ var Modal = ({ ref, ...props }) => {
|
|
|
3817
3813
|
animation,
|
|
3818
3814
|
...rest
|
|
3819
3815
|
} = props;
|
|
3820
|
-
const [shouldTransition, setShouldTransition] = (0,
|
|
3821
|
-
(0,
|
|
3816
|
+
const [shouldTransition, setShouldTransition] = (0, import_react33.useState)(false);
|
|
3817
|
+
(0, import_react33.useEffect)(() => {
|
|
3822
3818
|
setShouldTransition(supportsDialog());
|
|
3823
3819
|
}, []);
|
|
3824
|
-
const dialogRef = (0,
|
|
3820
|
+
const dialogRef = (0, import_react33.useRef)(null);
|
|
3825
3821
|
const { close } = useDialog({
|
|
3826
3822
|
ref: dialogRef,
|
|
3827
3823
|
isOpen,
|
|
@@ -3845,11 +3841,11 @@ var Modal = ({ ref, ...props }) => {
|
|
|
3845
3841
|
},
|
|
3846
3842
|
className
|
|
3847
3843
|
);
|
|
3848
|
-
const [titleId, setTitleId] = (0,
|
|
3849
|
-
const handleSetTitleId = (0,
|
|
3844
|
+
const [titleId, setTitleId] = (0, import_react33.useState)(void 0);
|
|
3845
|
+
const handleSetTitleId = (0, import_react33.useCallback)((id) => {
|
|
3850
3846
|
setTitleId(id);
|
|
3851
3847
|
}, []);
|
|
3852
|
-
const contextValue = (0,
|
|
3848
|
+
const contextValue = (0, import_react33.useMemo)(
|
|
3853
3849
|
() => ({
|
|
3854
3850
|
onClose: close,
|
|
3855
3851
|
closeLabel,
|
|
@@ -3886,7 +3882,7 @@ Modal2.displayName = "Modal";
|
|
|
3886
3882
|
|
|
3887
3883
|
// src/components/NumberField/NumberField.tsx
|
|
3888
3884
|
var import_dedupe40 = __toESM(require("classnames/dedupe"));
|
|
3889
|
-
var
|
|
3885
|
+
var import_react34 = require("react");
|
|
3890
3886
|
init_TextField2();
|
|
3891
3887
|
var import_NumberField = require("@simplybusiness/mobius/src/components/NumberField/NumberField.css");
|
|
3892
3888
|
var import_jsx_runtime47 = require("react/jsx-runtime");
|
|
@@ -3905,9 +3901,9 @@ var NumberField = ({ ref, ...props }) => {
|
|
|
3905
3901
|
onBlur: customOnBlur,
|
|
3906
3902
|
...rest
|
|
3907
3903
|
} = otherProps;
|
|
3908
|
-
const focusedInputRef = (0,
|
|
3909
|
-
const wheelHandler = (0,
|
|
3910
|
-
(0,
|
|
3904
|
+
const focusedInputRef = (0, import_react34.useRef)(null);
|
|
3905
|
+
const wheelHandler = (0, import_react34.useCallback)((ev) => ev.preventDefault(), []);
|
|
3906
|
+
(0, import_react34.useEffect)(() => {
|
|
3911
3907
|
return () => {
|
|
3912
3908
|
focusedInputRef.current?.removeEventListener("wheel", wheelHandler);
|
|
3913
3909
|
focusedInputRef.current = null;
|
|
@@ -3988,7 +3984,7 @@ Option2.displayName = "Option";
|
|
|
3988
3984
|
|
|
3989
3985
|
// src/components/PasswordField/PasswordField.tsx
|
|
3990
3986
|
var import_dedupe41 = __toESM(require("classnames/dedupe"));
|
|
3991
|
-
var
|
|
3987
|
+
var import_react35 = require("react");
|
|
3992
3988
|
init_mergeRefs();
|
|
3993
3989
|
init_TextField2();
|
|
3994
3990
|
|
|
@@ -4023,10 +4019,10 @@ var PasswordField = ({
|
|
|
4023
4019
|
autoComplete = "current-password",
|
|
4024
4020
|
...props
|
|
4025
4021
|
}) => {
|
|
4026
|
-
const [show, setShow] = (0,
|
|
4022
|
+
const [show, setShow] = (0, import_react35.useState)(false);
|
|
4027
4023
|
const type = show ? "text" : "password";
|
|
4028
4024
|
const classes = (0, import_dedupe41.default)("mobius-password-field", className);
|
|
4029
|
-
const localRef = (0,
|
|
4025
|
+
const localRef = (0, import_react35.useRef)(null);
|
|
4030
4026
|
const handleShowHideButtonClick = () => {
|
|
4031
4027
|
const selectionStart = localRef.current?.selectionStart;
|
|
4032
4028
|
const selectionEnd = localRef.current?.selectionEnd;
|
|
@@ -4055,7 +4051,7 @@ PasswordField.displayName = "PasswordField";
|
|
|
4055
4051
|
// src/components/Popover/Popover.tsx
|
|
4056
4052
|
var import_icons12 = require("@simplybusiness/icons");
|
|
4057
4053
|
var import_dedupe42 = __toESM(require("classnames/dedupe"));
|
|
4058
|
-
var
|
|
4054
|
+
var import_react39 = require("react");
|
|
4059
4055
|
var import_react_dom = require("react-dom");
|
|
4060
4056
|
var import_mobius_hooks6 = require("@simplybusiness/mobius-hooks");
|
|
4061
4057
|
init_Icon2();
|
|
@@ -4080,14 +4076,14 @@ var Arrow = ({ ref, width = 20, className, style }) => {
|
|
|
4080
4076
|
};
|
|
4081
4077
|
|
|
4082
4078
|
// src/components/Popover/useAutoUpdate.ts
|
|
4083
|
-
var
|
|
4079
|
+
var import_react36 = require("react");
|
|
4084
4080
|
var useAutoUpdate = ({
|
|
4085
4081
|
referenceRef,
|
|
4086
4082
|
floatingRef,
|
|
4087
4083
|
onUpdate,
|
|
4088
4084
|
enabled
|
|
4089
4085
|
}) => {
|
|
4090
|
-
(0,
|
|
4086
|
+
(0, import_react36.useEffect)(() => {
|
|
4091
4087
|
if (!enabled) return;
|
|
4092
4088
|
const reference = referenceRef.current;
|
|
4093
4089
|
const floating = floatingRef.current;
|
|
@@ -4109,7 +4105,7 @@ var useAutoUpdate = ({
|
|
|
4109
4105
|
};
|
|
4110
4106
|
|
|
4111
4107
|
// src/components/Popover/useFloatingPosition.ts
|
|
4112
|
-
var
|
|
4108
|
+
var import_react37 = require("react");
|
|
4113
4109
|
var ABSOLUTE_FLOATING_STYLES = {
|
|
4114
4110
|
position: "absolute",
|
|
4115
4111
|
top: 0,
|
|
@@ -4139,7 +4135,7 @@ var useFloatingPosition = ({
|
|
|
4139
4135
|
arrowWidth,
|
|
4140
4136
|
useFixedStrategy
|
|
4141
4137
|
}) => {
|
|
4142
|
-
const update = (0,
|
|
4138
|
+
const update = (0, import_react37.useCallback)(() => {
|
|
4143
4139
|
const reference = referenceRef.current;
|
|
4144
4140
|
const floating = floatingRef.current;
|
|
4145
4141
|
if (!reference || !floating) return;
|
|
@@ -4201,7 +4197,7 @@ var useFloatingPosition = ({
|
|
|
4201
4197
|
arrowWidth,
|
|
4202
4198
|
useFixedStrategy
|
|
4203
4199
|
]);
|
|
4204
|
-
(0,
|
|
4200
|
+
(0, import_react37.useLayoutEffect)(() => {
|
|
4205
4201
|
if (!isOpen) return;
|
|
4206
4202
|
update();
|
|
4207
4203
|
}, [isOpen, update]);
|
|
@@ -4213,14 +4209,14 @@ var useFloatingPosition = ({
|
|
|
4213
4209
|
};
|
|
4214
4210
|
|
|
4215
4211
|
// src/components/Popover/useOutsidePress.ts
|
|
4216
|
-
var
|
|
4212
|
+
var import_react38 = require("react");
|
|
4217
4213
|
var useOutsidePress = ({
|
|
4218
4214
|
referenceRef,
|
|
4219
4215
|
floatingRef,
|
|
4220
4216
|
enabled,
|
|
4221
4217
|
onOutsidePress
|
|
4222
4218
|
}) => {
|
|
4223
|
-
(0,
|
|
4219
|
+
(0, import_react38.useEffect)(() => {
|
|
4224
4220
|
if (!enabled) return;
|
|
4225
4221
|
const handler = (event) => {
|
|
4226
4222
|
const target = event.target;
|
|
@@ -4241,11 +4237,11 @@ var OFFSET_FROM_CONTENT_DEFAULT = 10;
|
|
|
4241
4237
|
var ARROW_WIDTH = 20;
|
|
4242
4238
|
var Popover = (props) => {
|
|
4243
4239
|
const { trigger, children, onOpen, onClose, className } = props;
|
|
4244
|
-
const referenceRef = (0,
|
|
4245
|
-
const floatingRef = (0,
|
|
4246
|
-
const arrowRef = (0,
|
|
4247
|
-
const [isOpen, setIsOpen] = (0,
|
|
4248
|
-
const [portalTarget, setPortalTarget] = (0,
|
|
4240
|
+
const referenceRef = (0, import_react39.useRef)(null);
|
|
4241
|
+
const floatingRef = (0, import_react39.useRef)(null);
|
|
4242
|
+
const arrowRef = (0, import_react39.useRef)(null);
|
|
4243
|
+
const [isOpen, setIsOpen] = (0, import_react39.useState)(false);
|
|
4244
|
+
const [portalTarget, setPortalTarget] = (0, import_react39.useState)(null);
|
|
4249
4245
|
const isInsideDialog = portalTarget !== null && portalTarget.tagName === "DIALOG";
|
|
4250
4246
|
const { initialFloatingStyles, initialArrowStyles, update } = useFloatingPosition({
|
|
4251
4247
|
referenceRef,
|
|
@@ -4276,7 +4272,7 @@ var Popover = (props) => {
|
|
|
4276
4272
|
"mobius-popover__container",
|
|
4277
4273
|
className
|
|
4278
4274
|
);
|
|
4279
|
-
(0,
|
|
4275
|
+
(0, import_react39.useEffect)(() => {
|
|
4280
4276
|
const el = floatingRef.current;
|
|
4281
4277
|
if (!el) return;
|
|
4282
4278
|
const preventLabelActivation = (e) => {
|
|
@@ -4299,10 +4295,10 @@ var Popover = (props) => {
|
|
|
4299
4295
|
setIsOpen(true);
|
|
4300
4296
|
onOpen?.();
|
|
4301
4297
|
};
|
|
4302
|
-
const setReferenceRef = (0,
|
|
4298
|
+
const setReferenceRef = (0, import_react39.useCallback)((node) => {
|
|
4303
4299
|
referenceRef.current = node;
|
|
4304
4300
|
}, []);
|
|
4305
|
-
const triggerComponent = (0,
|
|
4301
|
+
const triggerComponent = (0, import_react39.cloneElement)(trigger, {
|
|
4306
4302
|
ref: setReferenceRef,
|
|
4307
4303
|
className: (0, import_dedupe42.default)(
|
|
4308
4304
|
trigger.props.className,
|
|
@@ -4366,7 +4362,7 @@ var Popover = (props) => {
|
|
|
4366
4362
|
|
|
4367
4363
|
// src/components/Progress/Progress.tsx
|
|
4368
4364
|
var import_dedupe43 = __toESM(require("classnames/dedupe"));
|
|
4369
|
-
var
|
|
4365
|
+
var import_react40 = require("react");
|
|
4370
4366
|
init_Label2();
|
|
4371
4367
|
var import_Progress = require("@simplybusiness/mobius/src/components/Progress/Progress.css");
|
|
4372
4368
|
var import_jsx_runtime53 = require("react/jsx-runtime");
|
|
@@ -4413,8 +4409,8 @@ var DEFAULT_VALUE = 0;
|
|
|
4413
4409
|
var DEFAULT_MIN_VALUE = 0;
|
|
4414
4410
|
var DEFAULT_MAX_VALUE = 100;
|
|
4415
4411
|
var Progress = ({ ref, ...props }) => {
|
|
4416
|
-
const progressId = (0,
|
|
4417
|
-
const progressLabelId = (0,
|
|
4412
|
+
const progressId = (0, import_react40.useId)();
|
|
4413
|
+
const progressLabelId = (0, import_react40.useId)();
|
|
4418
4414
|
const {
|
|
4419
4415
|
id,
|
|
4420
4416
|
label,
|
|
@@ -4470,7 +4466,7 @@ Progress.displayName = "Progress";
|
|
|
4470
4466
|
|
|
4471
4467
|
// src/components/Radio/Radio.tsx
|
|
4472
4468
|
var import_dedupe44 = __toESM(require("classnames/dedupe"));
|
|
4473
|
-
var
|
|
4469
|
+
var import_react41 = require("react");
|
|
4474
4470
|
init_ErrorMessage2();
|
|
4475
4471
|
init_Label2();
|
|
4476
4472
|
var import_Radio = require("@simplybusiness/mobius/src/components/Radio/Radio.css");
|
|
@@ -4498,19 +4494,19 @@ var Radio = ({ ref, ...props }) => {
|
|
|
4498
4494
|
const isMultiline = label && children;
|
|
4499
4495
|
const isControlled = selected !== void 0;
|
|
4500
4496
|
const isChecked = isControlled ? selected === value : defaultChecked;
|
|
4501
|
-
const contentRef = (0,
|
|
4502
|
-
const prevOverflowRef = (0,
|
|
4497
|
+
const contentRef = (0, import_react41.useRef)(null);
|
|
4498
|
+
const prevOverflowRef = (0, import_react41.useRef)({
|
|
4503
4499
|
vertical: false,
|
|
4504
4500
|
horizontal: false
|
|
4505
4501
|
});
|
|
4506
|
-
const hasIconFirst = (0,
|
|
4507
|
-
if (!children ||
|
|
4508
|
-
const firstChild =
|
|
4509
|
-
if (!(0,
|
|
4502
|
+
const hasIconFirst = (0, import_react41.useMemo)(() => {
|
|
4503
|
+
if (!children || import_react41.Children.count(children) === 0) return false;
|
|
4504
|
+
const firstChild = import_react41.Children.toArray(children)[0];
|
|
4505
|
+
if (!(0, import_react41.isValidElement)(firstChild)) return false;
|
|
4510
4506
|
const props2 = firstChild.props;
|
|
4511
4507
|
return "icon" in props2 && props2.icon !== void 0;
|
|
4512
4508
|
}, [children]);
|
|
4513
|
-
(0,
|
|
4509
|
+
(0, import_react41.useLayoutEffect)(() => {
|
|
4514
4510
|
if (!contentRef.current || !onOverflow) return;
|
|
4515
4511
|
if (orientation === "vertical") {
|
|
4516
4512
|
return;
|
|
@@ -4590,7 +4586,7 @@ Radio.displayName = "Radio";
|
|
|
4590
4586
|
|
|
4591
4587
|
// src/components/Radio/RadioGroup.tsx
|
|
4592
4588
|
var import_dedupe45 = __toESM(require("classnames/dedupe"));
|
|
4593
|
-
var
|
|
4589
|
+
var import_react42 = require("react");
|
|
4594
4590
|
init_hooks();
|
|
4595
4591
|
init_spaceDelimitedList();
|
|
4596
4592
|
init_ErrorMessage2();
|
|
@@ -4624,15 +4620,15 @@ var RadioGroup = ({ ref, ...props }) => {
|
|
|
4624
4620
|
...rest
|
|
4625
4621
|
} = props;
|
|
4626
4622
|
const defaultSelected = getDefaultVal(children, value || defaultValue);
|
|
4627
|
-
const [selected, setSelected] = (0,
|
|
4628
|
-
const overflowsRef = (0,
|
|
4629
|
-
const [hasOverflow, setHasOverflow] = (0,
|
|
4630
|
-
(0,
|
|
4623
|
+
const [selected, setSelected] = (0, import_react42.useState)(defaultSelected);
|
|
4624
|
+
const overflowsRef = (0, import_react42.useRef)({});
|
|
4625
|
+
const [hasOverflow, setHasOverflow] = (0, import_react42.useState)(false);
|
|
4626
|
+
(0, import_react42.useEffect)(() => {
|
|
4631
4627
|
if (value !== void 0) {
|
|
4632
4628
|
setSelected(value);
|
|
4633
4629
|
}
|
|
4634
4630
|
}, [value]);
|
|
4635
|
-
const handleOverflow = (0,
|
|
4631
|
+
const handleOverflow = (0, import_react42.useCallback)(
|
|
4636
4632
|
(radioValue, overflow) => {
|
|
4637
4633
|
overflowsRef.current = {
|
|
4638
4634
|
...overflowsRef.current,
|
|
@@ -4666,15 +4662,15 @@ var RadioGroup = ({ ref, ...props }) => {
|
|
|
4666
4662
|
[`--is-${effectiveOrientation}`]: true
|
|
4667
4663
|
});
|
|
4668
4664
|
const labelClasses = (0, import_dedupe45.default)(radioClasses, validationClasses);
|
|
4669
|
-
const errorMessageId = (0,
|
|
4670
|
-
const defaultNameAttrId = (0,
|
|
4665
|
+
const errorMessageId = (0, import_react42.useId)();
|
|
4666
|
+
const defaultNameAttrId = (0, import_react42.useId)();
|
|
4671
4667
|
const nameAttribute = name || defaultNameAttrId;
|
|
4672
4668
|
const shouldErrorMessageShow = errorMessage ? errorMessageId : void 0;
|
|
4673
4669
|
const describedBy = spaceDelimitedList([
|
|
4674
4670
|
shouldErrorMessageShow,
|
|
4675
4671
|
props["aria-describedby"]
|
|
4676
4672
|
]);
|
|
4677
|
-
const labelId = (0,
|
|
4673
|
+
const labelId = (0, import_react42.useId)();
|
|
4678
4674
|
return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
|
|
4679
4675
|
"div",
|
|
4680
4676
|
{
|
|
@@ -4693,10 +4689,10 @@ var RadioGroup = ({ ref, ...props }) => {
|
|
|
4693
4689
|
role: "radiogroup",
|
|
4694
4690
|
children: /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)(Stack, { gap: "xs", children: [
|
|
4695
4691
|
label && /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(Label, { htmlFor: name, id: labelId, className: labelClasses, children: label }),
|
|
4696
|
-
/* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: radioWrapperClasses, children:
|
|
4697
|
-
if ((0,
|
|
4692
|
+
/* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: radioWrapperClasses, children: import_react42.Children.map(children, (child) => {
|
|
4693
|
+
if ((0, import_react42.isValidElement)(child)) {
|
|
4698
4694
|
const childValue = child.props.value;
|
|
4699
|
-
return (0,
|
|
4695
|
+
return (0, import_react42.cloneElement)(
|
|
4700
4696
|
child,
|
|
4701
4697
|
{
|
|
4702
4698
|
orientation: effectiveOrientation,
|
|
@@ -4761,7 +4757,7 @@ Segment.displayName = "Segment";
|
|
|
4761
4757
|
// src/components/Select/Select.tsx
|
|
4762
4758
|
var import_icons13 = require("@simplybusiness/icons");
|
|
4763
4759
|
var import_dedupe48 = __toESM(require("classnames/dedupe"));
|
|
4764
|
-
var
|
|
4760
|
+
var import_react43 = require("react");
|
|
4765
4761
|
init_hooks();
|
|
4766
4762
|
init_useLabel2();
|
|
4767
4763
|
init_spaceDelimitedList();
|
|
@@ -4808,7 +4804,7 @@ var Select = ({ ref, ...props }) => {
|
|
|
4808
4804
|
otherProps.className
|
|
4809
4805
|
);
|
|
4810
4806
|
const iconClasses = (0, import_dedupe48.default)("mobius-select__icon", sharedClasses);
|
|
4811
|
-
const errorMessageId = (0,
|
|
4807
|
+
const errorMessageId = (0, import_react43.useId)();
|
|
4812
4808
|
const shouldErrorMessageShow = errorMessage ? errorMessageId : void 0;
|
|
4813
4809
|
const describedBy = spaceDelimitedList([
|
|
4814
4810
|
shouldErrorMessageShow,
|
|
@@ -4847,12 +4843,12 @@ Select.displayName = "Select";
|
|
|
4847
4843
|
|
|
4848
4844
|
// src/components/Slider/Slider.tsx
|
|
4849
4845
|
var import_dedupe49 = __toESM(require("classnames/dedupe"));
|
|
4850
|
-
var
|
|
4846
|
+
var import_react45 = require("react");
|
|
4851
4847
|
init_hooks();
|
|
4852
4848
|
init_Label2();
|
|
4853
4849
|
|
|
4854
4850
|
// src/components/Slider/helpers.ts
|
|
4855
|
-
var
|
|
4851
|
+
var import_react44 = require("react");
|
|
4856
4852
|
function numberFormatter(value, formatOptions, locale = navigator.languages?.[0] || "en-GB") {
|
|
4857
4853
|
if (!formatOptions) {
|
|
4858
4854
|
return value?.toString() || "";
|
|
@@ -4883,11 +4879,11 @@ var Slider = (props) => {
|
|
|
4883
4879
|
formatOptions,
|
|
4884
4880
|
isDisabled = false
|
|
4885
4881
|
} = props;
|
|
4886
|
-
const trackRef = (0,
|
|
4887
|
-
const [currentValue, setCurrentValue] = (0,
|
|
4882
|
+
const trackRef = (0, import_react45.useRef)(null);
|
|
4883
|
+
const [currentValue, setCurrentValue] = (0, import_react45.useState)(
|
|
4888
4884
|
value || defaultValue || 0
|
|
4889
4885
|
);
|
|
4890
|
-
const [isDragging, setIsDraggging] = (0,
|
|
4886
|
+
const [isDragging, setIsDraggging] = (0, import_react45.useState)(false);
|
|
4891
4887
|
const { labelProps, fieldProps } = useLabel({
|
|
4892
4888
|
id,
|
|
4893
4889
|
label,
|
|
@@ -4952,13 +4948,13 @@ var Slider = (props) => {
|
|
|
4952
4948
|
init_Stack2();
|
|
4953
4949
|
|
|
4954
4950
|
// src/components/SVG/SVG.tsx
|
|
4955
|
-
var
|
|
4951
|
+
var import_react46 = require("react");
|
|
4956
4952
|
var import_dedupe50 = __toESM(require("classnames/dedupe"));
|
|
4957
4953
|
var import_jsx_runtime60 = require("react/jsx-runtime");
|
|
4958
4954
|
var SVG = ({ ref, ...props }) => {
|
|
4959
4955
|
const { children, className, ...otherProps } = props;
|
|
4960
4956
|
const classes = (0, import_dedupe50.default)("mobius", "mobius-svg", className);
|
|
4961
|
-
const svgNode =
|
|
4957
|
+
const svgNode = import_react46.Children.only(children);
|
|
4962
4958
|
const { children: svgChildren, viewBox, xmlns } = svgNode.props;
|
|
4963
4959
|
return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
|
|
4964
4960
|
"svg",
|
|
@@ -4975,7 +4971,7 @@ var SVG = ({ ref, ...props }) => {
|
|
|
4975
4971
|
SVG.displayName = "SVG";
|
|
4976
4972
|
|
|
4977
4973
|
// src/components/Switch/Switch.tsx
|
|
4978
|
-
var
|
|
4974
|
+
var import_react47 = require("react");
|
|
4979
4975
|
var import_dedupe51 = __toESM(require("classnames/dedupe"));
|
|
4980
4976
|
var import_Switch = require("@simplybusiness/mobius/src/components/Switch/Switch.css");
|
|
4981
4977
|
var import_jsx_runtime61 = require("react/jsx-runtime");
|
|
@@ -4987,8 +4983,8 @@ var Switch = ({ ref, ...props }) => {
|
|
|
4987
4983
|
isDisabled = false,
|
|
4988
4984
|
...otherProps
|
|
4989
4985
|
} = props;
|
|
4990
|
-
const [enabled, setEnabled] = (0,
|
|
4991
|
-
(0,
|
|
4986
|
+
const [enabled, setEnabled] = (0, import_react47.useState)(checked);
|
|
4987
|
+
(0, import_react47.useEffect)(() => {
|
|
4992
4988
|
setEnabled(checked);
|
|
4993
4989
|
}, [checked]);
|
|
4994
4990
|
const classes = (0, import_dedupe51.default)(
|
|
@@ -5322,7 +5318,7 @@ var toast = {
|
|
|
5322
5318
|
};
|
|
5323
5319
|
|
|
5324
5320
|
// src/components/Toast/Toaster.tsx
|
|
5325
|
-
var
|
|
5321
|
+
var import_react48 = require("react");
|
|
5326
5322
|
var import_sonner2 = require("sonner");
|
|
5327
5323
|
var import_jsx_runtime73 = require("react/jsx-runtime");
|
|
5328
5324
|
var Toaster = ({
|
|
@@ -5333,7 +5329,7 @@ var Toaster = ({
|
|
|
5333
5329
|
visibleToasts = 3,
|
|
5334
5330
|
gap = 8
|
|
5335
5331
|
}) => {
|
|
5336
|
-
(0,
|
|
5332
|
+
(0, import_react48.useEffect)(() => {
|
|
5337
5333
|
toastState.showCloseButton = closeButton;
|
|
5338
5334
|
}, [closeButton]);
|
|
5339
5335
|
return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
@@ -5352,7 +5348,7 @@ Toaster.displayName = "Toaster";
|
|
|
5352
5348
|
|
|
5353
5349
|
// src/components/Trust/Trust.tsx
|
|
5354
5350
|
var import_dedupe63 = __toESM(require("classnames/dedupe"));
|
|
5355
|
-
var
|
|
5351
|
+
var import_react49 = require("react");
|
|
5356
5352
|
init_utils();
|
|
5357
5353
|
|
|
5358
5354
|
// src/components/Trust/constants.ts
|
|
@@ -5429,8 +5425,8 @@ var Trust = ({ ref, ...props }) => {
|
|
|
5429
5425
|
stars,
|
|
5430
5426
|
className
|
|
5431
5427
|
} = props;
|
|
5432
|
-
const [isMounted, setIsMounted] = (0,
|
|
5433
|
-
const trustRef = (0,
|
|
5428
|
+
const [isMounted, setIsMounted] = (0, import_react49.useState)(false);
|
|
5429
|
+
const trustRef = (0, import_react49.useRef)(null);
|
|
5434
5430
|
const {
|
|
5435
5431
|
templateId,
|
|
5436
5432
|
className: variantClassName,
|
|
@@ -5457,13 +5453,13 @@ var Trust = ({ ref, ...props }) => {
|
|
|
5457
5453
|
},
|
|
5458
5454
|
className
|
|
5459
5455
|
);
|
|
5460
|
-
(0,
|
|
5456
|
+
(0, import_react49.useEffect)(() => {
|
|
5461
5457
|
const hasTrustpilotLoaded = trustRef.current && window?.Trustpilot && window?.Trustpilot.loadFromElement;
|
|
5462
5458
|
if (isMounted && hasTrustpilotLoaded) {
|
|
5463
5459
|
window.Trustpilot.loadFromElement(trustRef.current, true);
|
|
5464
5460
|
}
|
|
5465
5461
|
}, [isMounted]);
|
|
5466
|
-
(0,
|
|
5462
|
+
(0, import_react49.useEffect)(() => {
|
|
5467
5463
|
setIsMounted(true);
|
|
5468
5464
|
}, []);
|
|
5469
5465
|
if (!isMounted) return /* @__PURE__ */ (0, import_jsx_runtime74.jsx)("div", { style: styles });
|
|
@@ -5490,7 +5486,7 @@ var Trust = ({ ref, ...props }) => {
|
|
|
5490
5486
|
|
|
5491
5487
|
// src/components/ExpandableText/ExpandableText.tsx
|
|
5492
5488
|
var import_dedupe64 = __toESM(require("classnames/dedupe"));
|
|
5493
|
-
var
|
|
5489
|
+
var import_react50 = require("react");
|
|
5494
5490
|
init_hooks();
|
|
5495
5491
|
init_TextOrHTML2();
|
|
5496
5492
|
var import_ExpandableText = require("@simplybusiness/mobius/src/components/ExpandableText/ExpandableText.css");
|
|
@@ -5508,14 +5504,14 @@ var ExpandableText = ({ ref, ...props }) => {
|
|
|
5508
5504
|
onToggle,
|
|
5509
5505
|
...otherProps
|
|
5510
5506
|
} = props;
|
|
5511
|
-
const [isExpanded, setIsExpanded] = (0,
|
|
5512
|
-
const [isCollapsed, setIsCollapsed] = (0,
|
|
5513
|
-
const textRef = (0,
|
|
5507
|
+
const [isExpanded, setIsExpanded] = (0, import_react50.useState)(false);
|
|
5508
|
+
const [isCollapsed, setIsCollapsed] = (0, import_react50.useState)(false);
|
|
5509
|
+
const textRef = (0, import_react50.useRef)(null);
|
|
5514
5510
|
const { down } = useBreakpoint();
|
|
5515
|
-
const baseId = (0,
|
|
5511
|
+
const baseId = (0, import_react50.useId)();
|
|
5516
5512
|
const expandButtonId = `expandable-text-expand-${baseId}`;
|
|
5517
5513
|
const shouldCollapse = breakpoint ? down(breakpoint) : true;
|
|
5518
|
-
(0,
|
|
5514
|
+
(0, import_react50.useEffect)(() => {
|
|
5519
5515
|
if (!shouldCollapse || !textRef.current) {
|
|
5520
5516
|
setIsCollapsed(false);
|
|
5521
5517
|
return;
|