@lumx/react 4.16.1-alpha.2 → 4.17.0-next.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.d.ts +131 -6
- package/index.js +1402 -567
- package/index.js.map +1 -1
- package/package.json +3 -3
package/index.js
CHANGED
|
@@ -308,7 +308,7 @@ function modifier$1(baseName, modifiers) {
|
|
|
308
308
|
* block('button', { active: true, disabled: false }); // 'button button--active'
|
|
309
309
|
*/
|
|
310
310
|
|
|
311
|
-
function block$
|
|
311
|
+
function block$1c(baseName, modifiersOrAdditionalClasses, additionalClasses) {
|
|
312
312
|
let modifiers;
|
|
313
313
|
let classes;
|
|
314
314
|
if (typeof modifiersOrAdditionalClasses === 'string' || Array.isArray(modifiersOrAdditionalClasses)) {
|
|
@@ -343,7 +343,7 @@ const ACTION_ELEMENT = `${PREFIX}__action`;
|
|
|
343
343
|
const actionArea = Object.assign(/** Action area container class. Sets `position: relative`. */
|
|
344
344
|
() => PREFIX, {
|
|
345
345
|
/** Action element class. Adds a `::before` pseudo-element with `position: absolute; inset: 0` to expand the click area. */
|
|
346
|
-
action: modifiers => block$
|
|
346
|
+
action: modifiers => block$1c(ACTION_ELEMENT, modifiers)
|
|
347
347
|
});
|
|
348
348
|
|
|
349
349
|
/** Resolve color & color variant from a `ColorWithVariants` and optionally a `ColorVariant`. */
|
|
@@ -465,8 +465,8 @@ const visuallyHidden = () => VISUALLY_HIDDEN;
|
|
|
465
465
|
* element('my-button', 'icon', { active: true }); // 'my-button__icon my-button__icon--active'
|
|
466
466
|
*/
|
|
467
467
|
|
|
468
|
-
function element$
|
|
469
|
-
return block$
|
|
468
|
+
function element$T(baseClass, elem, modifiersOrAdditionalClasses, additionalClasses) {
|
|
469
|
+
return block$1c(`${baseClass}__${elem}`, modifiersOrAdditionalClasses, additionalClasses);
|
|
470
470
|
}
|
|
471
471
|
|
|
472
472
|
/**
|
|
@@ -474,10 +474,10 @@ function element$R(baseClass, elem, modifiersOrAdditionalClasses, additionalClas
|
|
|
474
474
|
*/
|
|
475
475
|
function bem(baseName) {
|
|
476
476
|
function blockFn(modifiersOrAdditionalClasses, additionalClasses) {
|
|
477
|
-
return block$
|
|
477
|
+
return block$1c(baseName, modifiersOrAdditionalClasses, additionalClasses);
|
|
478
478
|
}
|
|
479
479
|
function elementFn(elem, modifiersOrAdditionalClasses, additionalClasses) {
|
|
480
|
-
return element$
|
|
480
|
+
return element$T(baseName, elem, modifiersOrAdditionalClasses, additionalClasses);
|
|
481
481
|
}
|
|
482
482
|
return {
|
|
483
483
|
block: blockFn,
|
|
@@ -557,15 +557,15 @@ const CONFIG$1 = {
|
|
|
557
557
|
/**
|
|
558
558
|
* Component display name.
|
|
559
559
|
*/
|
|
560
|
-
const COMPONENT_NAME$
|
|
560
|
+
const COMPONENT_NAME$1F = 'AlertDialog';
|
|
561
561
|
|
|
562
562
|
/**
|
|
563
563
|
* Component default class name and class prefix.
|
|
564
564
|
*/
|
|
565
|
-
const CLASSNAME$
|
|
565
|
+
const CLASSNAME$1C = 'lumx-alert-dialog';
|
|
566
566
|
const {
|
|
567
|
-
block: block$
|
|
568
|
-
} = bem(CLASSNAME$
|
|
567
|
+
block: block$1b
|
|
568
|
+
} = bem(CLASSNAME$1C);
|
|
569
569
|
|
|
570
570
|
/**
|
|
571
571
|
* Component default props.
|
|
@@ -633,7 +633,7 @@ const AlertDialog$1 = props => {
|
|
|
633
633
|
'aria-describedby': descriptionId,
|
|
634
634
|
...dialogProps
|
|
635
635
|
},
|
|
636
|
-
className: classnames(className, block$
|
|
636
|
+
className: classnames(className, block$1b({
|
|
637
637
|
[`kind-${kind}`]: Boolean(kind)
|
|
638
638
|
})),
|
|
639
639
|
...forwardedProps,
|
|
@@ -731,8 +731,8 @@ const AlertDialog = forwardRef((props, ref) => {
|
|
|
731
731
|
...forwardedProps
|
|
732
732
|
});
|
|
733
733
|
});
|
|
734
|
-
AlertDialog.displayName = COMPONENT_NAME$
|
|
735
|
-
AlertDialog.className = CLASSNAME$
|
|
734
|
+
AlertDialog.displayName = COMPONENT_NAME$1F;
|
|
735
|
+
AlertDialog.className = CLASSNAME$1C;
|
|
736
736
|
AlertDialog.defaultProps = DEFAULT_PROPS$1h;
|
|
737
737
|
|
|
738
738
|
/**
|
|
@@ -825,12 +825,12 @@ function useDisableStateProps(props) {
|
|
|
825
825
|
/**
|
|
826
826
|
* Component display name.
|
|
827
827
|
*/
|
|
828
|
-
const COMPONENT_NAME$
|
|
828
|
+
const COMPONENT_NAME$1E = 'Autocomplete';
|
|
829
829
|
|
|
830
830
|
/**
|
|
831
831
|
* Component default class name and class prefix.
|
|
832
832
|
*/
|
|
833
|
-
const CLASSNAME$
|
|
833
|
+
const CLASSNAME$1B = 'lumx-autocomplete';
|
|
834
834
|
|
|
835
835
|
/**
|
|
836
836
|
* Component default props.
|
|
@@ -898,7 +898,7 @@ const Autocomplete = forwardRef((props, ref) => {
|
|
|
898
898
|
return /*#__PURE__*/jsxs("div", {
|
|
899
899
|
ref: ref,
|
|
900
900
|
...forwardedProps,
|
|
901
|
-
className: classNames.join(className, CLASSNAME$
|
|
901
|
+
className: classNames.join(className, CLASSNAME$1B),
|
|
902
902
|
children: [/*#__PURE__*/jsx(TextField, {
|
|
903
903
|
...textFieldProps,
|
|
904
904
|
chips: chips,
|
|
@@ -938,19 +938,19 @@ const Autocomplete = forwardRef((props, ref) => {
|
|
|
938
938
|
})]
|
|
939
939
|
});
|
|
940
940
|
});
|
|
941
|
-
Autocomplete.displayName = COMPONENT_NAME$
|
|
942
|
-
Autocomplete.className = CLASSNAME$
|
|
941
|
+
Autocomplete.displayName = COMPONENT_NAME$1E;
|
|
942
|
+
Autocomplete.className = CLASSNAME$1B;
|
|
943
943
|
Autocomplete.defaultProps = DEFAULT_PROPS$1g;
|
|
944
944
|
|
|
945
945
|
/**
|
|
946
946
|
* Component display name.
|
|
947
947
|
*/
|
|
948
|
-
const COMPONENT_NAME$
|
|
948
|
+
const COMPONENT_NAME$1D = 'AutocompleteMultiple';
|
|
949
949
|
|
|
950
950
|
/**
|
|
951
951
|
* Component default class name and class prefix.
|
|
952
952
|
*/
|
|
953
|
-
const CLASSNAME$
|
|
953
|
+
const CLASSNAME$1A = 'lumx-autocomplete-multiple';
|
|
954
954
|
|
|
955
955
|
/**
|
|
956
956
|
* Component default props.
|
|
@@ -1031,7 +1031,7 @@ const AutocompleteMultiple = forwardRef((props, ref) => {
|
|
|
1031
1031
|
ref: ref,
|
|
1032
1032
|
...forwardedProps,
|
|
1033
1033
|
anchorToInput: anchorToInput,
|
|
1034
|
-
className: classNames.join(className, CLASSNAME$
|
|
1034
|
+
className: classNames.join(className, CLASSNAME$1A),
|
|
1035
1035
|
name: name,
|
|
1036
1036
|
value: value,
|
|
1037
1037
|
onChange: onChange,
|
|
@@ -1064,23 +1064,23 @@ const AutocompleteMultiple = forwardRef((props, ref) => {
|
|
|
1064
1064
|
children: children
|
|
1065
1065
|
});
|
|
1066
1066
|
});
|
|
1067
|
-
AutocompleteMultiple.displayName = COMPONENT_NAME$
|
|
1068
|
-
AutocompleteMultiple.className = CLASSNAME$
|
|
1067
|
+
AutocompleteMultiple.displayName = COMPONENT_NAME$1D;
|
|
1068
|
+
AutocompleteMultiple.className = CLASSNAME$1A;
|
|
1069
1069
|
AutocompleteMultiple.defaultProps = DEFAULT_PROPS$1f;
|
|
1070
1070
|
|
|
1071
1071
|
/**
|
|
1072
1072
|
* Component display name.
|
|
1073
1073
|
*/
|
|
1074
|
-
const COMPONENT_NAME$
|
|
1074
|
+
const COMPONENT_NAME$1C = 'Avatar';
|
|
1075
1075
|
|
|
1076
1076
|
/**
|
|
1077
1077
|
* Component default class name and class prefix.
|
|
1078
1078
|
*/
|
|
1079
|
-
const CLASSNAME$
|
|
1079
|
+
const CLASSNAME$1z = 'lumx-avatar';
|
|
1080
1080
|
const {
|
|
1081
|
-
block: block$
|
|
1082
|
-
element: element$
|
|
1083
|
-
} = bem(CLASSNAME$
|
|
1081
|
+
block: block$1a,
|
|
1082
|
+
element: element$S
|
|
1083
|
+
} = bem(CLASSNAME$1z);
|
|
1084
1084
|
|
|
1085
1085
|
/**
|
|
1086
1086
|
* Component default props.
|
|
@@ -1110,15 +1110,15 @@ const Avatar$1 = props => {
|
|
|
1110
1110
|
return /*#__PURE__*/jsxs("div", {
|
|
1111
1111
|
ref: ref,
|
|
1112
1112
|
...forwardedProps,
|
|
1113
|
-
className: classnames(className, block$
|
|
1113
|
+
className: classnames(className, block$1a({
|
|
1114
1114
|
[`size-${size}`]: Boolean(size),
|
|
1115
1115
|
[`theme-${theme}`]: Boolean(theme)
|
|
1116
1116
|
})),
|
|
1117
1117
|
children: [image, actions && /*#__PURE__*/jsx("div", {
|
|
1118
|
-
className: element$
|
|
1118
|
+
className: element$S('actions'),
|
|
1119
1119
|
children: actions
|
|
1120
1120
|
}), badge && /*#__PURE__*/jsx("div", {
|
|
1121
|
-
className: element$
|
|
1121
|
+
className: element$S('badge'),
|
|
1122
1122
|
children: badge
|
|
1123
1123
|
})]
|
|
1124
1124
|
});
|
|
@@ -1159,7 +1159,7 @@ const Avatar = forwardRef((props, ref) => {
|
|
|
1159
1159
|
image: /*#__PURE__*/jsx(Thumbnail, {
|
|
1160
1160
|
linkProps: linkProps,
|
|
1161
1161
|
linkAs: linkAs,
|
|
1162
|
-
className: element$
|
|
1162
|
+
className: element$S('thumbnail'),
|
|
1163
1163
|
onClick: onClick,
|
|
1164
1164
|
onKeyPress: onKeyPress,
|
|
1165
1165
|
...thumbnailProps,
|
|
@@ -1171,22 +1171,22 @@ const Avatar = forwardRef((props, ref) => {
|
|
|
1171
1171
|
})
|
|
1172
1172
|
});
|
|
1173
1173
|
});
|
|
1174
|
-
Avatar.displayName = COMPONENT_NAME$
|
|
1175
|
-
Avatar.className = CLASSNAME$
|
|
1174
|
+
Avatar.displayName = COMPONENT_NAME$1C;
|
|
1175
|
+
Avatar.className = CLASSNAME$1z;
|
|
1176
1176
|
Avatar.defaultProps = DEFAULT_PROPS$1e;
|
|
1177
1177
|
|
|
1178
1178
|
/**
|
|
1179
1179
|
* Component display name.
|
|
1180
1180
|
*/
|
|
1181
|
-
const COMPONENT_NAME$
|
|
1181
|
+
const COMPONENT_NAME$1B = 'Badge';
|
|
1182
1182
|
|
|
1183
1183
|
/**
|
|
1184
1184
|
* Component default class name and class prefix.
|
|
1185
1185
|
*/
|
|
1186
|
-
const CLASSNAME$
|
|
1186
|
+
const CLASSNAME$1y = 'lumx-badge';
|
|
1187
1187
|
const {
|
|
1188
|
-
block: block$
|
|
1189
|
-
} = bem(CLASSNAME$
|
|
1188
|
+
block: block$19
|
|
1189
|
+
} = bem(CLASSNAME$1y);
|
|
1190
1190
|
|
|
1191
1191
|
/**
|
|
1192
1192
|
* Component default props.
|
|
@@ -1212,14 +1212,14 @@ const Badge$1 = props => {
|
|
|
1212
1212
|
return /*#__PURE__*/jsx("div", {
|
|
1213
1213
|
ref: ref,
|
|
1214
1214
|
...forwardedProps,
|
|
1215
|
-
className: classnames(className, block$
|
|
1215
|
+
className: classnames(className, block$19({
|
|
1216
1216
|
[`color-${color}`]: Boolean(color)
|
|
1217
1217
|
})),
|
|
1218
1218
|
children: children
|
|
1219
1219
|
});
|
|
1220
1220
|
};
|
|
1221
|
-
Badge$1.displayName = COMPONENT_NAME$
|
|
1222
|
-
Badge$1.className = CLASSNAME$
|
|
1221
|
+
Badge$1.displayName = COMPONENT_NAME$1B;
|
|
1222
|
+
Badge$1.className = CLASSNAME$1y;
|
|
1223
1223
|
Badge$1.defaultProps = DEFAULT_PROPS$1d;
|
|
1224
1224
|
|
|
1225
1225
|
/**
|
|
@@ -1243,12 +1243,12 @@ Badge.displayName = Badge$1.displayName;
|
|
|
1243
1243
|
Badge.className = Badge$1.className;
|
|
1244
1244
|
Badge.defaultProps = Badge$1.defaultProps;
|
|
1245
1245
|
|
|
1246
|
-
const COMPONENT_NAME$
|
|
1247
|
-
const CLASSNAME$
|
|
1246
|
+
const COMPONENT_NAME$1A = 'BadgeWrapper';
|
|
1247
|
+
const CLASSNAME$1x = 'lumx-badge-wrapper';
|
|
1248
1248
|
const {
|
|
1249
|
-
block: block$
|
|
1250
|
-
element: element$
|
|
1251
|
-
} = bem(CLASSNAME$
|
|
1249
|
+
block: block$18,
|
|
1250
|
+
element: element$R
|
|
1251
|
+
} = bem(CLASSNAME$1x);
|
|
1252
1252
|
const BadgeWrapper$1 = props => {
|
|
1253
1253
|
const {
|
|
1254
1254
|
badge,
|
|
@@ -1260,9 +1260,9 @@ const BadgeWrapper$1 = props => {
|
|
|
1260
1260
|
return /*#__PURE__*/jsxs("div", {
|
|
1261
1261
|
ref: ref,
|
|
1262
1262
|
...forwardedProps,
|
|
1263
|
-
className: classnames(className, block$
|
|
1263
|
+
className: classnames(className, block$18()),
|
|
1264
1264
|
children: [children, badge && /*#__PURE__*/jsx("div", {
|
|
1265
|
-
className: element$
|
|
1265
|
+
className: element$R('badge'),
|
|
1266
1266
|
children: badge
|
|
1267
1267
|
})]
|
|
1268
1268
|
});
|
|
@@ -1274,8 +1274,8 @@ const BadgeWrapper = forwardRef((props, ref) => {
|
|
|
1274
1274
|
ref
|
|
1275
1275
|
});
|
|
1276
1276
|
});
|
|
1277
|
-
BadgeWrapper.displayName = COMPONENT_NAME$
|
|
1278
|
-
BadgeWrapper.className = CLASSNAME$
|
|
1277
|
+
BadgeWrapper.displayName = COMPONENT_NAME$1A;
|
|
1278
|
+
BadgeWrapper.className = CLASSNAME$1x;
|
|
1279
1279
|
|
|
1280
1280
|
/**
|
|
1281
1281
|
* Render clickable element (link, button or custom element)
|
|
@@ -1325,7 +1325,7 @@ const RawClickable = props => {
|
|
|
1325
1325
|
/**
|
|
1326
1326
|
* Component display name.
|
|
1327
1327
|
*/
|
|
1328
|
-
const COMPONENT_NAME$
|
|
1328
|
+
const COMPONENT_NAME$1z = 'ButtonRoot';
|
|
1329
1329
|
const BUTTON_WRAPPER_CLASSNAME = `lumx-button-wrapper`;
|
|
1330
1330
|
const {
|
|
1331
1331
|
block: buttonWrapperBlock
|
|
@@ -1423,7 +1423,7 @@ const ButtonRoot = props => {
|
|
|
1423
1423
|
children
|
|
1424
1424
|
});
|
|
1425
1425
|
};
|
|
1426
|
-
ButtonRoot.displayName = COMPONENT_NAME$
|
|
1426
|
+
ButtonRoot.displayName = COMPONENT_NAME$1z;
|
|
1427
1427
|
ButtonRoot.defaultProps = {};
|
|
1428
1428
|
|
|
1429
1429
|
/**
|
|
@@ -1433,15 +1433,15 @@ ButtonRoot.defaultProps = {};
|
|
|
1433
1433
|
/**
|
|
1434
1434
|
* Component display name.
|
|
1435
1435
|
*/
|
|
1436
|
-
const COMPONENT_NAME$
|
|
1436
|
+
const COMPONENT_NAME$1y = 'Button';
|
|
1437
1437
|
|
|
1438
1438
|
/**
|
|
1439
1439
|
* Component default class name and class prefix.
|
|
1440
1440
|
*/
|
|
1441
|
-
const CLASSNAME$
|
|
1441
|
+
const CLASSNAME$1w = 'lumx-button';
|
|
1442
1442
|
const {
|
|
1443
1443
|
modifier
|
|
1444
|
-
} = bem(CLASSNAME$
|
|
1444
|
+
} = bem(CLASSNAME$1w);
|
|
1445
1445
|
|
|
1446
1446
|
/**
|
|
1447
1447
|
* Component default props.
|
|
@@ -1478,8 +1478,8 @@ const Button$1 = props => {
|
|
|
1478
1478
|
variant: 'button'
|
|
1479
1479
|
});
|
|
1480
1480
|
};
|
|
1481
|
-
Button$1.displayName = COMPONENT_NAME$
|
|
1482
|
-
Button$1.className = CLASSNAME$
|
|
1481
|
+
Button$1.displayName = COMPONENT_NAME$1y;
|
|
1482
|
+
Button$1.className = CLASSNAME$1w;
|
|
1483
1483
|
Button$1.defaultProps = DEFAULT_PROPS$1c;
|
|
1484
1484
|
|
|
1485
1485
|
/**
|
|
@@ -1553,21 +1553,21 @@ const Button = forwardRef((props, ref) => {
|
|
|
1553
1553
|
})
|
|
1554
1554
|
});
|
|
1555
1555
|
});
|
|
1556
|
-
Button.displayName = COMPONENT_NAME$
|
|
1557
|
-
Button.className = CLASSNAME$
|
|
1556
|
+
Button.displayName = COMPONENT_NAME$1y;
|
|
1557
|
+
Button.className = CLASSNAME$1w;
|
|
1558
1558
|
Button.defaultProps = DEFAULT_PROPS$1c;
|
|
1559
1559
|
|
|
1560
|
-
const COMPONENT_NAME$
|
|
1560
|
+
const COMPONENT_NAME$1x = 'Icon';
|
|
1561
1561
|
const IconClassName = 'lumx-icon';
|
|
1562
1562
|
|
|
1563
1563
|
/**
|
|
1564
1564
|
* Defines the props of the component.
|
|
1565
1565
|
*/
|
|
1566
1566
|
|
|
1567
|
-
const CLASSNAME$
|
|
1567
|
+
const CLASSNAME$1v = IconClassName;
|
|
1568
1568
|
const {
|
|
1569
|
-
block: block$
|
|
1570
|
-
} = bem(CLASSNAME$
|
|
1569
|
+
block: block$17
|
|
1570
|
+
} = bem(CLASSNAME$1v);
|
|
1571
1571
|
|
|
1572
1572
|
/**
|
|
1573
1573
|
* Component default props.
|
|
@@ -1621,7 +1621,7 @@ const Icon$1 = props => {
|
|
|
1621
1621
|
return /*#__PURE__*/jsx("i", {
|
|
1622
1622
|
ref: ref,
|
|
1623
1623
|
...forwardedProps,
|
|
1624
|
-
className: classnames(className, block$
|
|
1624
|
+
className: classnames(className, block$17({
|
|
1625
1625
|
[`color-${iconColor}`]: Boolean(iconColor),
|
|
1626
1626
|
[`color-variant-${iconColorVariant}`]: Boolean(iconColorVariant),
|
|
1627
1627
|
'has-shape': hasShape,
|
|
@@ -1650,19 +1650,19 @@ const Icon$1 = props => {
|
|
|
1650
1650
|
})
|
|
1651
1651
|
});
|
|
1652
1652
|
};
|
|
1653
|
-
Icon$1.displayName = COMPONENT_NAME$
|
|
1654
|
-
Icon$1.className = CLASSNAME$
|
|
1653
|
+
Icon$1.displayName = COMPONENT_NAME$1x;
|
|
1654
|
+
Icon$1.className = CLASSNAME$1v;
|
|
1655
1655
|
Icon$1.defaultProps = DEFAULT_PROPS$1b;
|
|
1656
1656
|
|
|
1657
1657
|
/**
|
|
1658
1658
|
* Component display name.
|
|
1659
1659
|
*/
|
|
1660
|
-
const COMPONENT_NAME$
|
|
1660
|
+
const COMPONENT_NAME$1w = 'IconButton';
|
|
1661
1661
|
|
|
1662
1662
|
/**
|
|
1663
1663
|
* Component default class name and class prefix.
|
|
1664
1664
|
*/
|
|
1665
|
-
const CLASSNAME$
|
|
1665
|
+
const CLASSNAME$1u = 'lumx-icon-button';
|
|
1666
1666
|
|
|
1667
1667
|
/**
|
|
1668
1668
|
* Component default props.
|
|
@@ -1703,8 +1703,8 @@ const IconButton$1 = props => {
|
|
|
1703
1703
|
children: defaultChildren
|
|
1704
1704
|
});
|
|
1705
1705
|
};
|
|
1706
|
-
IconButton$1.displayName = COMPONENT_NAME$
|
|
1707
|
-
IconButton$1.className = CLASSNAME$
|
|
1706
|
+
IconButton$1.displayName = COMPONENT_NAME$1w;
|
|
1707
|
+
IconButton$1.className = CLASSNAME$1u;
|
|
1708
1708
|
IconButton$1.defaultProps = DEFAULT_PROPS$1a;
|
|
1709
1709
|
|
|
1710
1710
|
/**
|
|
@@ -1748,19 +1748,19 @@ const IconButton = forwardRef((props, ref) => {
|
|
|
1748
1748
|
})
|
|
1749
1749
|
});
|
|
1750
1750
|
});
|
|
1751
|
-
IconButton.displayName = COMPONENT_NAME$
|
|
1752
|
-
IconButton.className = CLASSNAME$
|
|
1751
|
+
IconButton.displayName = COMPONENT_NAME$1w;
|
|
1752
|
+
IconButton.className = CLASSNAME$1u;
|
|
1753
1753
|
IconButton.defaultProps = DEFAULT_PROPS$1a;
|
|
1754
1754
|
|
|
1755
1755
|
/**
|
|
1756
1756
|
* Component display name.
|
|
1757
1757
|
*/
|
|
1758
|
-
const COMPONENT_NAME$
|
|
1758
|
+
const COMPONENT_NAME$1v = 'ButtonGroup';
|
|
1759
1759
|
|
|
1760
1760
|
/**
|
|
1761
1761
|
* Component default class name and class prefix.
|
|
1762
1762
|
*/
|
|
1763
|
-
const CLASSNAME$
|
|
1763
|
+
const CLASSNAME$1t = 'lumx-button-group';
|
|
1764
1764
|
|
|
1765
1765
|
/**
|
|
1766
1766
|
* Component default props.
|
|
@@ -1781,12 +1781,12 @@ const ButtonGroup$1 = props => {
|
|
|
1781
1781
|
} = props;
|
|
1782
1782
|
return /*#__PURE__*/jsx("div", {
|
|
1783
1783
|
...forwardedProps,
|
|
1784
|
-
className: classnames(className, CLASSNAME$
|
|
1784
|
+
className: classnames(className, CLASSNAME$1t),
|
|
1785
1785
|
children: children
|
|
1786
1786
|
});
|
|
1787
1787
|
};
|
|
1788
|
-
ButtonGroup$1.displayName = COMPONENT_NAME$
|
|
1789
|
-
ButtonGroup$1.className = CLASSNAME$
|
|
1788
|
+
ButtonGroup$1.displayName = COMPONENT_NAME$1v;
|
|
1789
|
+
ButtonGroup$1.className = CLASSNAME$1t;
|
|
1790
1790
|
ButtonGroup$1.defaultProps = DEFAULT_PROPS$19;
|
|
1791
1791
|
|
|
1792
1792
|
/**
|
|
@@ -1802,16 +1802,16 @@ const ButtonGroup = forwardRef((props, ref) => {
|
|
|
1802
1802
|
...props
|
|
1803
1803
|
});
|
|
1804
1804
|
});
|
|
1805
|
-
ButtonGroup.displayName = COMPONENT_NAME$
|
|
1806
|
-
ButtonGroup.className = CLASSNAME$
|
|
1805
|
+
ButtonGroup.displayName = COMPONENT_NAME$1v;
|
|
1806
|
+
ButtonGroup.className = CLASSNAME$1t;
|
|
1807
1807
|
ButtonGroup.defaultProps = DEFAULT_PROPS$19;
|
|
1808
1808
|
|
|
1809
|
-
const COMPONENT_NAME$
|
|
1809
|
+
const COMPONENT_NAME$1u = 'InputLabel';
|
|
1810
1810
|
const InputLabelClassName = 'lumx-input-label';
|
|
1811
|
-
const CLASSNAME$
|
|
1811
|
+
const CLASSNAME$1s = InputLabelClassName;
|
|
1812
1812
|
const {
|
|
1813
|
-
block: block$
|
|
1814
|
-
} = bem(CLASSNAME$
|
|
1813
|
+
block: block$16
|
|
1814
|
+
} = bem(CLASSNAME$1s);
|
|
1815
1815
|
const DEFAULT_PROPS$18 = {};
|
|
1816
1816
|
|
|
1817
1817
|
/**
|
|
@@ -1834,7 +1834,7 @@ function InputLabel$1(props) {
|
|
|
1834
1834
|
ref: ref,
|
|
1835
1835
|
...forwardedProps,
|
|
1836
1836
|
htmlFor: htmlFor,
|
|
1837
|
-
className: classnames(className, block$
|
|
1837
|
+
className: classnames(className, block$16({
|
|
1838
1838
|
'is-required': isRequired,
|
|
1839
1839
|
[`theme-${theme}`]: Boolean(theme),
|
|
1840
1840
|
'has-custom-typography': Boolean(typography$1)
|
|
@@ -1842,8 +1842,8 @@ function InputLabel$1(props) {
|
|
|
1842
1842
|
children: children
|
|
1843
1843
|
});
|
|
1844
1844
|
}
|
|
1845
|
-
InputLabel$1.displayName = COMPONENT_NAME$
|
|
1846
|
-
InputLabel$1.className = CLASSNAME$
|
|
1845
|
+
InputLabel$1.displayName = COMPONENT_NAME$1u;
|
|
1846
|
+
InputLabel$1.className = CLASSNAME$1s;
|
|
1847
1847
|
InputLabel$1.defaultProps = DEFAULT_PROPS$18;
|
|
1848
1848
|
|
|
1849
1849
|
const INPUT_HELPER_CONFIGURATION = {
|
|
@@ -1858,17 +1858,17 @@ const INPUT_HELPER_CONFIGURATION = {
|
|
|
1858
1858
|
}
|
|
1859
1859
|
};
|
|
1860
1860
|
|
|
1861
|
-
const COMPONENT_NAME$
|
|
1861
|
+
const COMPONENT_NAME$1t = 'InputHelper';
|
|
1862
1862
|
const InputHelperClassName = 'lumx-input-helper';
|
|
1863
1863
|
|
|
1864
1864
|
/**
|
|
1865
1865
|
* Defines the props of the component.
|
|
1866
1866
|
*/
|
|
1867
1867
|
|
|
1868
|
-
const CLASSNAME$
|
|
1868
|
+
const CLASSNAME$1r = InputHelperClassName;
|
|
1869
1869
|
const {
|
|
1870
|
-
block: block$
|
|
1871
|
-
} = bem(CLASSNAME$
|
|
1870
|
+
block: block$15
|
|
1871
|
+
} = bem(CLASSNAME$1r);
|
|
1872
1872
|
|
|
1873
1873
|
/**
|
|
1874
1874
|
* Component default props.
|
|
@@ -1895,15 +1895,15 @@ function InputHelper$1(props) {
|
|
|
1895
1895
|
return /*#__PURE__*/jsx("p", {
|
|
1896
1896
|
ref: ref,
|
|
1897
1897
|
...forwardedProps,
|
|
1898
|
-
className: classnames(className, block$
|
|
1898
|
+
className: classnames(className, block$15({
|
|
1899
1899
|
[`color-${color}`]: Boolean(color),
|
|
1900
1900
|
[`theme-${theme}`]: Boolean(theme)
|
|
1901
1901
|
})),
|
|
1902
1902
|
children: children
|
|
1903
1903
|
});
|
|
1904
1904
|
}
|
|
1905
|
-
InputHelper$1.displayName = COMPONENT_NAME$
|
|
1906
|
-
InputHelper$1.className = CLASSNAME$
|
|
1905
|
+
InputHelper$1.displayName = COMPONENT_NAME$1t;
|
|
1906
|
+
InputHelper$1.className = CLASSNAME$1r;
|
|
1907
1907
|
InputHelper$1.defaultProps = DEFAULT_PROPS$17;
|
|
1908
1908
|
|
|
1909
1909
|
const INTERMEDIATE_STATE = 'intermediate';
|
|
@@ -1915,16 +1915,16 @@ const INTERMEDIATE_STATE = 'intermediate';
|
|
|
1915
1915
|
/**
|
|
1916
1916
|
* Component display name.
|
|
1917
1917
|
*/
|
|
1918
|
-
const COMPONENT_NAME$
|
|
1918
|
+
const COMPONENT_NAME$1s = 'Checkbox';
|
|
1919
1919
|
|
|
1920
1920
|
/**
|
|
1921
1921
|
* Component default class name and class prefix.
|
|
1922
1922
|
*/
|
|
1923
|
-
const CLASSNAME$
|
|
1923
|
+
const CLASSNAME$1q = 'lumx-checkbox';
|
|
1924
1924
|
const {
|
|
1925
|
-
block: block$
|
|
1926
|
-
element: element$
|
|
1927
|
-
} = bem(CLASSNAME$
|
|
1925
|
+
block: block$14,
|
|
1926
|
+
element: element$Q
|
|
1927
|
+
} = bem(CLASSNAME$1q);
|
|
1928
1928
|
|
|
1929
1929
|
/**
|
|
1930
1930
|
* Checkbox component.
|
|
@@ -1960,7 +1960,7 @@ const Checkbox$1 = props => {
|
|
|
1960
1960
|
return /*#__PURE__*/jsxs("div", {
|
|
1961
1961
|
ref: ref,
|
|
1962
1962
|
...forwardedProps,
|
|
1963
|
-
className: classnames(className, block$
|
|
1963
|
+
className: classnames(className, block$14({
|
|
1964
1964
|
// Whether state is intermediate class name will "-checked"
|
|
1965
1965
|
'is-checked': intermediateState ? true : isChecked,
|
|
1966
1966
|
'is-disabled': isDisabled,
|
|
@@ -1968,12 +1968,12 @@ const Checkbox$1 = props => {
|
|
|
1968
1968
|
[`theme-${theme}`]: Boolean(theme)
|
|
1969
1969
|
})),
|
|
1970
1970
|
children: [/*#__PURE__*/jsxs("div", {
|
|
1971
|
-
className: element$
|
|
1971
|
+
className: element$Q('input-wrapper'),
|
|
1972
1972
|
children: [/*#__PURE__*/jsx("input", {
|
|
1973
1973
|
ref: inputRef,
|
|
1974
1974
|
type: "checkbox",
|
|
1975
1975
|
id: inputId,
|
|
1976
|
-
className: element$
|
|
1976
|
+
className: element$Q('input-native'),
|
|
1977
1977
|
name: name,
|
|
1978
1978
|
value: value,
|
|
1979
1979
|
checked: isChecked,
|
|
@@ -1985,26 +1985,26 @@ const Checkbox$1 = props => {
|
|
|
1985
1985
|
} : {}),
|
|
1986
1986
|
...inputProps
|
|
1987
1987
|
}), /*#__PURE__*/jsxs("div", {
|
|
1988
|
-
className: element$
|
|
1988
|
+
className: element$Q('input-placeholder'),
|
|
1989
1989
|
children: [/*#__PURE__*/jsx("div", {
|
|
1990
|
-
className: element$
|
|
1990
|
+
className: element$Q('input-background')
|
|
1991
1991
|
}), /*#__PURE__*/jsx("div", {
|
|
1992
|
-
className: element$
|
|
1992
|
+
className: element$Q('input-indicator'),
|
|
1993
1993
|
children: Icon$1({
|
|
1994
1994
|
icon: intermediateState ? mdiMinus : mdiCheck
|
|
1995
1995
|
})
|
|
1996
1996
|
})]
|
|
1997
1997
|
})]
|
|
1998
1998
|
}), /*#__PURE__*/jsxs("div", {
|
|
1999
|
-
className: element$
|
|
1999
|
+
className: element$Q('content'),
|
|
2000
2000
|
children: [label && InputLabel$1({
|
|
2001
2001
|
htmlFor: inputId,
|
|
2002
|
-
className: element$
|
|
2002
|
+
className: element$Q('label'),
|
|
2003
2003
|
theme,
|
|
2004
2004
|
children: label
|
|
2005
2005
|
}), helper && InputHelper$1({
|
|
2006
2006
|
id: `${inputId}-helper`,
|
|
2007
|
-
className: element$
|
|
2007
|
+
className: element$Q('helper'),
|
|
2008
2008
|
theme,
|
|
2009
2009
|
children: helper
|
|
2010
2010
|
})]
|
|
@@ -2079,8 +2079,8 @@ const Checkbox = forwardRef((props, ref) => {
|
|
|
2079
2079
|
inputId
|
|
2080
2080
|
});
|
|
2081
2081
|
});
|
|
2082
|
-
Checkbox.displayName = COMPONENT_NAME$
|
|
2083
|
-
Checkbox.className = CLASSNAME$
|
|
2082
|
+
Checkbox.displayName = COMPONENT_NAME$1s;
|
|
2083
|
+
Checkbox.className = CLASSNAME$1q;
|
|
2084
2084
|
Checkbox.defaultProps = DEFAULT_PROPS$16;
|
|
2085
2085
|
|
|
2086
2086
|
/**
|
|
@@ -2102,16 +2102,16 @@ function useStopPropagation(handler) {
|
|
|
2102
2102
|
/**
|
|
2103
2103
|
* Component display name.
|
|
2104
2104
|
*/
|
|
2105
|
-
const COMPONENT_NAME$
|
|
2105
|
+
const COMPONENT_NAME$1r = 'Chip';
|
|
2106
2106
|
|
|
2107
2107
|
/**
|
|
2108
2108
|
* Component default class name and class prefix.
|
|
2109
2109
|
*/
|
|
2110
|
-
const CLASSNAME$
|
|
2110
|
+
const CLASSNAME$1p = 'lumx-chip';
|
|
2111
2111
|
const {
|
|
2112
|
-
block: block$
|
|
2113
|
-
element: element$
|
|
2114
|
-
} = bem(CLASSNAME$
|
|
2112
|
+
block: block$13,
|
|
2113
|
+
element: element$P
|
|
2114
|
+
} = bem(CLASSNAME$1p);
|
|
2115
2115
|
|
|
2116
2116
|
/**
|
|
2117
2117
|
* Component default props.
|
|
@@ -2178,7 +2178,7 @@ const Chip$1 = props => {
|
|
|
2178
2178
|
...forwardedProps,
|
|
2179
2179
|
href: !disabledStateProps.disabled ? href : undefined,
|
|
2180
2180
|
ref: ref,
|
|
2181
|
-
className: classnames(className, block$
|
|
2181
|
+
className: classnames(className, block$13({
|
|
2182
2182
|
'is-clickable': isClickable,
|
|
2183
2183
|
[`color-${chipColor}`]: Boolean(chipColor),
|
|
2184
2184
|
'is-disabled': isAnyDisabled,
|
|
@@ -2195,19 +2195,19 @@ const Chip$1 = props => {
|
|
|
2195
2195
|
/*#__PURE__*/
|
|
2196
2196
|
// eslint-disable-next-line jsx-a11y/click-events-have-key-events,jsx-a11y/no-static-element-interactions
|
|
2197
2197
|
jsx("div", {
|
|
2198
|
-
className: element$
|
|
2198
|
+
className: element$P('before', {
|
|
2199
2199
|
'is-clickable': hasBeforeClick
|
|
2200
2200
|
}),
|
|
2201
2201
|
onClick: handleBeforeClick,
|
|
2202
2202
|
children: before
|
|
2203
2203
|
}), /*#__PURE__*/jsx("div", {
|
|
2204
|
-
className: element$
|
|
2204
|
+
className: element$P('label'),
|
|
2205
2205
|
children: children
|
|
2206
2206
|
}), after &&
|
|
2207
2207
|
/*#__PURE__*/
|
|
2208
2208
|
// eslint-disable-next-line jsx-a11y/click-events-have-key-events,jsx-a11y/no-static-element-interactions
|
|
2209
2209
|
jsx("div", {
|
|
2210
|
-
className: element$
|
|
2210
|
+
className: element$P('after', {
|
|
2211
2211
|
'is-clickable': hasAfterClick
|
|
2212
2212
|
}),
|
|
2213
2213
|
onClick: handleAfterClick,
|
|
@@ -2263,19 +2263,19 @@ const Chip = forwardRef((props, ref) => {
|
|
|
2263
2263
|
...forwardedProps
|
|
2264
2264
|
});
|
|
2265
2265
|
});
|
|
2266
|
-
Chip.displayName = COMPONENT_NAME$
|
|
2267
|
-
Chip.className = CLASSNAME$
|
|
2266
|
+
Chip.displayName = COMPONENT_NAME$1r;
|
|
2267
|
+
Chip.className = CLASSNAME$1p;
|
|
2268
2268
|
Chip.defaultProps = DEFAULT_PROPS$15;
|
|
2269
2269
|
|
|
2270
2270
|
/**
|
|
2271
2271
|
* Component display name.
|
|
2272
2272
|
*/
|
|
2273
|
-
const COMPONENT_NAME$
|
|
2273
|
+
const COMPONENT_NAME$1q = 'ChipGroup';
|
|
2274
2274
|
|
|
2275
2275
|
/**
|
|
2276
2276
|
* Component default class name and class prefix.
|
|
2277
2277
|
*/
|
|
2278
|
-
const CLASSNAME$
|
|
2278
|
+
const CLASSNAME$1o = 'lumx-chip-group';
|
|
2279
2279
|
|
|
2280
2280
|
/**
|
|
2281
2281
|
* Component default props.
|
|
@@ -2298,7 +2298,7 @@ const ChipGroup$1 = props => {
|
|
|
2298
2298
|
return /*#__PURE__*/jsx("div", {
|
|
2299
2299
|
ref: ref,
|
|
2300
2300
|
...forwardedProps,
|
|
2301
|
-
className: classnames(className, CLASSNAME$
|
|
2301
|
+
className: classnames(className, CLASSNAME$1o),
|
|
2302
2302
|
children: children
|
|
2303
2303
|
});
|
|
2304
2304
|
};
|
|
@@ -2376,8 +2376,8 @@ const InternalChipGroup = forwardRef((props, ref) => {
|
|
|
2376
2376
|
...forwardedProps
|
|
2377
2377
|
});
|
|
2378
2378
|
});
|
|
2379
|
-
InternalChipGroup.displayName = COMPONENT_NAME$
|
|
2380
|
-
InternalChipGroup.className = CLASSNAME$
|
|
2379
|
+
InternalChipGroup.displayName = COMPONENT_NAME$1q;
|
|
2380
|
+
InternalChipGroup.className = CLASSNAME$1o;
|
|
2381
2381
|
InternalChipGroup.defaultProps = DEFAULT_PROPS$14;
|
|
2382
2382
|
const ChipGroup = Object.assign(InternalChipGroup, {
|
|
2383
2383
|
useChipGroupNavigation
|
|
@@ -2386,16 +2386,16 @@ const ChipGroup = Object.assign(InternalChipGroup, {
|
|
|
2386
2386
|
/**
|
|
2387
2387
|
* Component display name.
|
|
2388
2388
|
*/
|
|
2389
|
-
const COMPONENT_NAME$
|
|
2389
|
+
const COMPONENT_NAME$1p = 'SelectionChipGroup';
|
|
2390
2390
|
|
|
2391
2391
|
/**
|
|
2392
2392
|
* Component default class name and class prefix.
|
|
2393
2393
|
*/
|
|
2394
|
-
const CLASSNAME$
|
|
2394
|
+
const CLASSNAME$1n = 'lumx-selection-chip-group';
|
|
2395
2395
|
const {
|
|
2396
|
-
block: block$
|
|
2397
|
-
element: element$
|
|
2398
|
-
} = bem(CLASSNAME$
|
|
2396
|
+
block: block$12,
|
|
2397
|
+
element: element$O
|
|
2398
|
+
} = bem(CLASSNAME$1n);
|
|
2399
2399
|
|
|
2400
2400
|
/**
|
|
2401
2401
|
* SelectionChipGroup component.
|
|
@@ -2433,7 +2433,7 @@ const SelectionChipGroup$1 = (props, {
|
|
|
2433
2433
|
"aria-label": label,
|
|
2434
2434
|
"aria-multiselectable": "true",
|
|
2435
2435
|
"aria-orientation": "horizontal",
|
|
2436
|
-
className: block$
|
|
2436
|
+
className: block$12([className]),
|
|
2437
2437
|
children: value.map(v => {
|
|
2438
2438
|
const name = getOptionName && getWithSelector(getOptionName, v) || getWithSelector(getOptionId, v);
|
|
2439
2439
|
const id = getWithSelector(getOptionId, v);
|
|
@@ -2452,7 +2452,7 @@ const SelectionChipGroup$1 = (props, {
|
|
|
2452
2452
|
after: /*#__PURE__*/jsx(Icon, {
|
|
2453
2453
|
icon: mdiClose
|
|
2454
2454
|
}),
|
|
2455
|
-
className: element$
|
|
2455
|
+
className: element$O('chip', [customProps.className]),
|
|
2456
2456
|
"data-option-id": id,
|
|
2457
2457
|
isClickable: true,
|
|
2458
2458
|
role: "option",
|
|
@@ -2491,10 +2491,10 @@ function createSelectorTreeWalker(container, selector) {
|
|
|
2491
2491
|
}
|
|
2492
2492
|
|
|
2493
2493
|
/** CSS selector for enabled chips (not aria-disabled). */
|
|
2494
|
-
const ENABLED_CHIP_SELECTOR = `.${CLASSNAME$
|
|
2494
|
+
const ENABLED_CHIP_SELECTOR = `.${CLASSNAME$1p}:not([aria-disabled="true"])`;
|
|
2495
2495
|
|
|
2496
2496
|
/** Find the closest chip element from an event target. */
|
|
2497
|
-
const getChip = target => target?.closest?.(`.${CLASSNAME$
|
|
2497
|
+
const getChip = target => target?.closest?.(`.${CLASSNAME$1p}`) || null;
|
|
2498
2498
|
|
|
2499
2499
|
/** Whether the chip is marked as disabled via aria-disabled. */
|
|
2500
2500
|
const isChipDisabled = chip => chip?.getAttribute('aria-disabled') === 'true';
|
|
@@ -2708,15 +2708,15 @@ function wrapChildrenIconWithSpaces(children) {
|
|
|
2708
2708
|
/**
|
|
2709
2709
|
* Component display name.
|
|
2710
2710
|
*/
|
|
2711
|
-
const COMPONENT_NAME$
|
|
2711
|
+
const COMPONENT_NAME$1o = 'Text';
|
|
2712
2712
|
|
|
2713
2713
|
/**
|
|
2714
2714
|
* Component default class name and class prefix.
|
|
2715
2715
|
*/
|
|
2716
|
-
const CLASSNAME$
|
|
2716
|
+
const CLASSNAME$1m = 'lumx-text';
|
|
2717
2717
|
const {
|
|
2718
|
-
block: block
|
|
2719
|
-
} = bem(CLASSNAME$
|
|
2718
|
+
block: block$11
|
|
2719
|
+
} = bem(CLASSNAME$1m);
|
|
2720
2720
|
|
|
2721
2721
|
/**
|
|
2722
2722
|
* Component default props.
|
|
@@ -2757,7 +2757,7 @@ const getTextProps = props => {
|
|
|
2757
2757
|
'--lumx-text-white-space': whiteSpace
|
|
2758
2758
|
};
|
|
2759
2759
|
return {
|
|
2760
|
-
className: classnames(className, block
|
|
2760
|
+
className: classnames(className, block$11({
|
|
2761
2761
|
'is-truncated': isTruncated && !isTruncatedMultiline,
|
|
2762
2762
|
'is-truncated-multiline': isTruncatedMultiline,
|
|
2763
2763
|
'no-wrap': noWrap
|
|
@@ -2806,8 +2806,8 @@ const Text = forwardRef((props, ref) => {
|
|
|
2806
2806
|
children: wrapChildrenIconWithSpaces(children)
|
|
2807
2807
|
});
|
|
2808
2808
|
});
|
|
2809
|
-
Text.displayName = COMPONENT_NAME$
|
|
2810
|
-
Text.className = CLASSNAME$
|
|
2809
|
+
Text.displayName = COMPONENT_NAME$1o;
|
|
2810
|
+
Text.className = CLASSNAME$1m;
|
|
2811
2811
|
Text.defaultProps = DEFAULT_PROPS$13;
|
|
2812
2812
|
|
|
2813
2813
|
/**
|
|
@@ -4900,16 +4900,16 @@ const DEFAULT_PROPS$12 = {
|
|
|
4900
4900
|
/**
|
|
4901
4901
|
* Component display name.
|
|
4902
4902
|
*/
|
|
4903
|
-
const COMPONENT_NAME$
|
|
4903
|
+
const COMPONENT_NAME$1n = 'Tooltip';
|
|
4904
4904
|
|
|
4905
4905
|
/**
|
|
4906
4906
|
* Component default class name and class prefix.
|
|
4907
4907
|
*/
|
|
4908
|
-
const CLASSNAME$
|
|
4908
|
+
const CLASSNAME$1l = 'lumx-tooltip';
|
|
4909
4909
|
const {
|
|
4910
|
-
block: block$
|
|
4911
|
-
element: element$
|
|
4912
|
-
} = bem(CLASSNAME$
|
|
4910
|
+
block: block$10,
|
|
4911
|
+
element: element$N
|
|
4912
|
+
} = bem(CLASSNAME$1l);
|
|
4913
4913
|
|
|
4914
4914
|
/**
|
|
4915
4915
|
* Props for the TooltipPopup rendering component.
|
|
@@ -4940,7 +4940,7 @@ const TooltipPopup = props => {
|
|
|
4940
4940
|
...forwardedProps,
|
|
4941
4941
|
id: id,
|
|
4942
4942
|
role: "tooltip",
|
|
4943
|
-
className: classnames(className, block$
|
|
4943
|
+
className: classnames(className, block$10({
|
|
4944
4944
|
[`position-${position}`]: Boolean(position)
|
|
4945
4945
|
}), isHidden && visuallyHidden()),
|
|
4946
4946
|
style: {
|
|
@@ -4949,17 +4949,17 @@ const TooltipPopup = props => {
|
|
|
4949
4949
|
},
|
|
4950
4950
|
"data-popper-placement": position,
|
|
4951
4951
|
children: [/*#__PURE__*/jsx("div", {
|
|
4952
|
-
className: element$
|
|
4952
|
+
className: element$N('arrow')
|
|
4953
4953
|
}), /*#__PURE__*/jsx("div", {
|
|
4954
|
-
className: element$
|
|
4954
|
+
className: element$N('inner'),
|
|
4955
4955
|
children: labelLines.map((line, index) => /*#__PURE__*/jsx("p", {
|
|
4956
4956
|
children: line
|
|
4957
4957
|
}, index))
|
|
4958
4958
|
})]
|
|
4959
4959
|
});
|
|
4960
4960
|
};
|
|
4961
|
-
TooltipPopup.displayName = COMPONENT_NAME$
|
|
4962
|
-
TooltipPopup.className = CLASSNAME$
|
|
4961
|
+
TooltipPopup.displayName = COMPONENT_NAME$1n;
|
|
4962
|
+
TooltipPopup.className = CLASSNAME$1l;
|
|
4963
4963
|
|
|
4964
4964
|
/**
|
|
4965
4965
|
* Add ref and ARIA attribute(s) in tooltip children or wrapped children.
|
|
@@ -5321,8 +5321,8 @@ const Tooltip = forwardRef((props, ref) => {
|
|
|
5321
5321
|
})]
|
|
5322
5322
|
});
|
|
5323
5323
|
});
|
|
5324
|
-
Tooltip.displayName = COMPONENT_NAME$
|
|
5325
|
-
Tooltip.className = CLASSNAME$
|
|
5324
|
+
Tooltip.displayName = COMPONENT_NAME$1n;
|
|
5325
|
+
Tooltip.className = CLASSNAME$1l;
|
|
5326
5326
|
Tooltip.defaultProps = DEFAULT_PROPS$12;
|
|
5327
5327
|
|
|
5328
5328
|
/** Create a pending navigation store; discards intent on abort. */
|
|
@@ -6192,8 +6192,8 @@ const SelectionChipGroup = ({
|
|
|
6192
6192
|
}, [container, inputRef, getOptionId]);
|
|
6193
6193
|
useRovingTabIndexContainer({
|
|
6194
6194
|
containerRef: container,
|
|
6195
|
-
itemSelector: `.${CLASSNAME$
|
|
6196
|
-
itemDisabledSelector: `.${CLASSNAME$
|
|
6195
|
+
itemSelector: `.${CLASSNAME$1p}`,
|
|
6196
|
+
itemDisabledSelector: `.${CLASSNAME$1p}[aria-disabled="true"]`
|
|
6197
6197
|
});
|
|
6198
6198
|
|
|
6199
6199
|
// Merge getChipProps and renderChip: getChipProps provides base props, renderChip overrides them,
|
|
@@ -6233,8 +6233,8 @@ const SelectionChipGroup = ({
|
|
|
6233
6233
|
Tooltip
|
|
6234
6234
|
});
|
|
6235
6235
|
};
|
|
6236
|
-
SelectionChipGroup.displayName = COMPONENT_NAME$
|
|
6237
|
-
SelectionChipGroup.className = CLASSNAME$
|
|
6236
|
+
SelectionChipGroup.displayName = COMPONENT_NAME$1p;
|
|
6237
|
+
SelectionChipGroup.className = CLASSNAME$1n;
|
|
6238
6238
|
|
|
6239
6239
|
/**
|
|
6240
6240
|
* Get the value for a combobox option element.
|
|
@@ -6377,7 +6377,7 @@ function setupListbox(handle, signal, notify, options) {
|
|
|
6377
6377
|
wrap: options?.wrapNavigation,
|
|
6378
6378
|
getActiveItem: () => {
|
|
6379
6379
|
const id = trigger.getAttribute('aria-activedescendant');
|
|
6380
|
-
return id
|
|
6380
|
+
return id && listbox.querySelector(`#${CSS.escape(id)}`) || null;
|
|
6381
6381
|
}
|
|
6382
6382
|
}, focusCallbacks, signal);
|
|
6383
6383
|
}
|
|
@@ -6399,11 +6399,6 @@ function setupListbox(handle, signal, notify, options) {
|
|
|
6399
6399
|
}
|
|
6400
6400
|
handle.select(cell);
|
|
6401
6401
|
trigger.focus();
|
|
6402
|
-
|
|
6403
|
-
// In multi-select mode, keep visual focus on the selected option
|
|
6404
|
-
if (!handle.isMultiSelect) {
|
|
6405
|
-
handle.setIsOpen(false);
|
|
6406
|
-
}
|
|
6407
6402
|
}, {
|
|
6408
6403
|
signal
|
|
6409
6404
|
});
|
|
@@ -6593,10 +6588,6 @@ function setupCombobox(callbacks, options, onTriggerAttach) {
|
|
|
6593
6588
|
if (!isOptionDisabled(activeItem)) {
|
|
6594
6589
|
activeItem.click();
|
|
6595
6590
|
}
|
|
6596
|
-
// Only close when not in multi select and not in action cell
|
|
6597
|
-
if (!handle.isMultiSelect && !isActionCell(activeItem)) {
|
|
6598
|
-
handle.setIsOpen(false);
|
|
6599
|
-
}
|
|
6600
6591
|
flag = true;
|
|
6601
6592
|
} else if (handle.isOpen && !handle.isMultiSelect) {
|
|
6602
6593
|
// Open with no active item (single select) => close the popup,
|
|
@@ -6751,6 +6742,15 @@ function setupCombobox(callbacks, options, onTriggerAttach) {
|
|
|
6751
6742
|
callbacks.onSelect?.({
|
|
6752
6743
|
value: option ? getOptionValue(option) : ''
|
|
6753
6744
|
});
|
|
6745
|
+
|
|
6746
|
+
// Close on selection (when not multiselectable)
|
|
6747
|
+
if (option && !handle.isMultiSelect) {
|
|
6748
|
+
handle.focusNav?.clear();
|
|
6749
|
+
// Defer the close to the next frame (to make sure all other click handler resolve).
|
|
6750
|
+
requestAnimationFrame(() => {
|
|
6751
|
+
handle.setIsOpen(false);
|
|
6752
|
+
});
|
|
6753
|
+
}
|
|
6754
6754
|
},
|
|
6755
6755
|
flushPendingNavigation() {
|
|
6756
6756
|
// Do navigations actions we could not do because the combobox items were not mounted yet
|
|
@@ -7020,7 +7020,12 @@ function createTypeahead(getWalker, getItemValue, signal) {
|
|
|
7020
7020
|
};
|
|
7021
7021
|
}
|
|
7022
7022
|
|
|
7023
|
-
/**
|
|
7023
|
+
/**
|
|
7024
|
+
* Is the key a single printable character (not Space, no modifier keys)?
|
|
7025
|
+
*
|
|
7026
|
+
* Used by typeahead-style keyboard handlers (menu, combobox) to detect when a
|
|
7027
|
+
* keypress should start/continue a type-to-search rather than trigger navigation.
|
|
7028
|
+
*/
|
|
7024
7029
|
function isPrintableKey({
|
|
7025
7030
|
key,
|
|
7026
7031
|
altKey,
|
|
@@ -7135,12 +7140,12 @@ function setupComboboxButton(button, callbacks) {
|
|
|
7135
7140
|
/**
|
|
7136
7141
|
* Component display name.
|
|
7137
7142
|
*/
|
|
7138
|
-
const COMPONENT_NAME$
|
|
7143
|
+
const COMPONENT_NAME$1m = 'ComboboxButton';
|
|
7139
7144
|
|
|
7140
7145
|
/**
|
|
7141
7146
|
* Component default class name and class prefix.
|
|
7142
7147
|
*/
|
|
7143
|
-
const CLASSNAME$
|
|
7148
|
+
const CLASSNAME$1k = 'lumx-combobox-button';
|
|
7144
7149
|
|
|
7145
7150
|
/**
|
|
7146
7151
|
* ComboboxButton core template.
|
|
@@ -7180,7 +7185,7 @@ const ComboboxButton$1 = (props, {
|
|
|
7180
7185
|
const componentProps = {
|
|
7181
7186
|
ref,
|
|
7182
7187
|
...forwardedProps,
|
|
7183
|
-
className: classnames(className, CLASSNAME$
|
|
7188
|
+
className: classnames(className, CLASSNAME$1k),
|
|
7184
7189
|
role: 'combobox',
|
|
7185
7190
|
'aria-controls': listboxId,
|
|
7186
7191
|
'aria-haspopup': 'listbox',
|
|
@@ -7320,8 +7325,8 @@ const ComboboxButton = Object.assign(forwardRefPolymorphic((props, ref) => {
|
|
|
7320
7325
|
Tooltip
|
|
7321
7326
|
});
|
|
7322
7327
|
}), {
|
|
7323
|
-
displayName: COMPONENT_NAME$
|
|
7324
|
-
className: CLASSNAME$
|
|
7328
|
+
displayName: COMPONENT_NAME$1m,
|
|
7329
|
+
className: CLASSNAME$1k
|
|
7325
7330
|
});
|
|
7326
7331
|
|
|
7327
7332
|
/** Options for configuring the input-mode combobox controller. */
|
|
@@ -7344,7 +7349,8 @@ function setupComboboxInput(input, options) {
|
|
|
7344
7349
|
let handle;
|
|
7345
7350
|
const {
|
|
7346
7351
|
filter = 'auto',
|
|
7347
|
-
onSelect: optionOnSelect
|
|
7352
|
+
onSelect: optionOnSelect,
|
|
7353
|
+
onInput: onInputCallback
|
|
7348
7354
|
} = options;
|
|
7349
7355
|
const openOnFocus = options.openOnFocus ?? filter === 'off';
|
|
7350
7356
|
const autoFilter = filter === 'auto';
|
|
@@ -7361,18 +7367,11 @@ function setupComboboxInput(input, options) {
|
|
|
7361
7367
|
|
|
7362
7368
|
/**
|
|
7363
7369
|
* Wraps the consumer's onSelect to perform input-mode side effects after selection:
|
|
7364
|
-
*
|
|
7370
|
+
* resets the filter and typing state.
|
|
7365
7371
|
*/
|
|
7366
7372
|
const onSelect = option => {
|
|
7367
7373
|
optionOnSelect?.(option);
|
|
7368
|
-
|
|
7369
|
-
// Clear the active item. In multi-select, keep visual focus so the
|
|
7370
|
-
// user can continue navigating after selection.
|
|
7371
|
-
if (!handle.isMultiSelect) {
|
|
7372
|
-
handle.focusNav?.clear();
|
|
7373
|
-
}
|
|
7374
7374
|
userHasTyped = false;
|
|
7375
|
-
handle.setIsOpen(true);
|
|
7376
7375
|
if (autoFilter) {
|
|
7377
7376
|
handle.setFilter('');
|
|
7378
7377
|
}
|
|
@@ -7392,6 +7391,9 @@ function setupComboboxInput(input, options) {
|
|
|
7392
7391
|
if (isDisabled()) return;
|
|
7393
7392
|
combobox.focusNav?.clear();
|
|
7394
7393
|
userHasTyped = true;
|
|
7394
|
+
|
|
7395
|
+
// Notify the framework wrapper of the new input value synchronously.
|
|
7396
|
+
onInputCallback?.(input.value);
|
|
7395
7397
|
combobox.setIsOpen(true);
|
|
7396
7398
|
if (autoFilter) {
|
|
7397
7399
|
combobox.setFilter(input.value);
|
|
@@ -7481,12 +7483,12 @@ function getDisabledState(context, props) {
|
|
|
7481
7483
|
/**
|
|
7482
7484
|
* Component display name.
|
|
7483
7485
|
*/
|
|
7484
|
-
const COMPONENT_NAME$
|
|
7486
|
+
const COMPONENT_NAME$1l = 'ComboboxInput';
|
|
7485
7487
|
|
|
7486
7488
|
/**
|
|
7487
7489
|
* Component default class name and class prefix.
|
|
7488
7490
|
*/
|
|
7489
|
-
const CLASSNAME$
|
|
7491
|
+
const CLASSNAME$1j = 'lumx-combobox-input';
|
|
7490
7492
|
|
|
7491
7493
|
/**
|
|
7492
7494
|
* ComboboxInput core template.
|
|
@@ -7549,22 +7551,22 @@ const ComboboxInput$1 = (props, {
|
|
|
7549
7551
|
/**
|
|
7550
7552
|
* Component display name.
|
|
7551
7553
|
*/
|
|
7552
|
-
const COMPONENT_NAME$
|
|
7554
|
+
const COMPONENT_NAME$1k = 'TextField';
|
|
7553
7555
|
|
|
7554
7556
|
/**
|
|
7555
7557
|
* Component default class name and class prefix.
|
|
7556
7558
|
*/
|
|
7557
|
-
const CLASSNAME$
|
|
7559
|
+
const CLASSNAME$1i = 'lumx-text-field';
|
|
7558
7560
|
|
|
7559
7561
|
/**
|
|
7560
7562
|
* Input native element class name.
|
|
7561
7563
|
*/
|
|
7562
|
-
const INPUT_NATIVE_CLASSNAME = `${CLASSNAME$
|
|
7564
|
+
const INPUT_NATIVE_CLASSNAME = `${CLASSNAME$1i}__input-native`;
|
|
7563
7565
|
|
|
7564
7566
|
const {
|
|
7565
|
-
block: block
|
|
7566
|
-
element: element$
|
|
7567
|
-
} = bem(CLASSNAME$
|
|
7567
|
+
block: block$$,
|
|
7568
|
+
element: element$M
|
|
7569
|
+
} = bem(CLASSNAME$1i);
|
|
7568
7570
|
|
|
7569
7571
|
/**
|
|
7570
7572
|
* Defines the props of the component.
|
|
@@ -7636,7 +7638,7 @@ const TextField$1 = props => {
|
|
|
7636
7638
|
const isNotEmpty = valueLength > 0;
|
|
7637
7639
|
return /*#__PURE__*/jsxs("div", {
|
|
7638
7640
|
ref: ref,
|
|
7639
|
-
className: classnames(className, block
|
|
7641
|
+
className: classnames(className, block$$({
|
|
7640
7642
|
'has-chips': Boolean(chips),
|
|
7641
7643
|
'has-error': !isValid && hasError,
|
|
7642
7644
|
'has-icon': Boolean(icon),
|
|
@@ -7652,17 +7654,17 @@ const TextField$1 = props => {
|
|
|
7652
7654
|
[`theme-${theme}`]: Boolean(theme)
|
|
7653
7655
|
})),
|
|
7654
7656
|
children: [(label || maxLength) && /*#__PURE__*/jsxs("div", {
|
|
7655
|
-
className: element$
|
|
7657
|
+
className: element$M('header'),
|
|
7656
7658
|
children: [label && InputLabel$1({
|
|
7657
7659
|
...labelProps,
|
|
7658
7660
|
id: labelId,
|
|
7659
7661
|
htmlFor: textFieldId,
|
|
7660
|
-
className: element$
|
|
7662
|
+
className: element$M('label'),
|
|
7661
7663
|
isRequired,
|
|
7662
7664
|
theme,
|
|
7663
7665
|
children: label
|
|
7664
7666
|
}), maxLength && /*#__PURE__*/jsxs("div", {
|
|
7665
|
-
className: element$
|
|
7667
|
+
className: element$M('char-counter'),
|
|
7666
7668
|
children: [/*#__PURE__*/jsx("span", {
|
|
7667
7669
|
children: maxLength - valueLength
|
|
7668
7670
|
}), maxLength - valueLength === 0 && Icon$1({
|
|
@@ -7671,45 +7673,45 @@ const TextField$1 = props => {
|
|
|
7671
7673
|
})]
|
|
7672
7674
|
})]
|
|
7673
7675
|
}), /*#__PURE__*/jsxs("div", {
|
|
7674
|
-
className: element$
|
|
7676
|
+
className: element$M('wrapper'),
|
|
7675
7677
|
ref: textFieldRef,
|
|
7676
7678
|
children: [icon && Icon$1({
|
|
7677
|
-
className: element$
|
|
7679
|
+
className: element$M('input-icon'),
|
|
7678
7680
|
color: theme === Theme.dark ? 'light' : undefined,
|
|
7679
7681
|
icon,
|
|
7680
7682
|
size: Size.xs
|
|
7681
7683
|
}), chips ? /*#__PURE__*/jsxs("div", {
|
|
7682
|
-
className: element$
|
|
7684
|
+
className: element$M('chips'),
|
|
7683
7685
|
children: [chips, input]
|
|
7684
7686
|
}) : /*#__PURE__*/jsx("div", {
|
|
7685
|
-
className: element$
|
|
7687
|
+
className: element$M('input-wrapper'),
|
|
7686
7688
|
children: input
|
|
7687
7689
|
}), (isValid || hasError) && Icon$1({
|
|
7688
|
-
className: element$
|
|
7690
|
+
className: element$M('input-validity'),
|
|
7689
7691
|
color: theme === Theme.dark ? 'light' : undefined,
|
|
7690
7692
|
icon: isValid ? mdiCheckCircle : mdiAlertCircle,
|
|
7691
7693
|
size: Size.xxs
|
|
7692
7694
|
}), clearButtonProps && isNotEmpty && !isAnyDisabled && /*#__PURE__*/jsx(IconButton, {
|
|
7693
7695
|
"aria-describedby": labelId,
|
|
7694
7696
|
...clearButtonProps,
|
|
7695
|
-
className: element$
|
|
7697
|
+
className: element$M('input-clear'),
|
|
7696
7698
|
icon: mdiCloseCircle,
|
|
7697
7699
|
emphasis: Emphasis.low,
|
|
7698
7700
|
size: Size.s,
|
|
7699
7701
|
theme: theme,
|
|
7700
7702
|
type: "button"
|
|
7701
7703
|
}), afterElement && /*#__PURE__*/jsx("div", {
|
|
7702
|
-
className: element$
|
|
7704
|
+
className: element$M('after-element'),
|
|
7703
7705
|
children: afterElement
|
|
7704
7706
|
})]
|
|
7705
7707
|
}), hasError && error && InputHelper$1({
|
|
7706
7708
|
children: error,
|
|
7707
|
-
className: element$
|
|
7709
|
+
className: element$M('helper'),
|
|
7708
7710
|
kind: Kind.error,
|
|
7709
7711
|
theme,
|
|
7710
7712
|
id: errorId
|
|
7711
7713
|
}), helper && InputHelper$1({
|
|
7712
|
-
className: element$
|
|
7714
|
+
className: element$M('helper'),
|
|
7713
7715
|
theme,
|
|
7714
7716
|
id: helperId,
|
|
7715
7717
|
children: helper
|
|
@@ -7718,7 +7720,7 @@ const TextField$1 = props => {
|
|
|
7718
7720
|
};
|
|
7719
7721
|
|
|
7720
7722
|
const {
|
|
7721
|
-
block: block$
|
|
7723
|
+
block: block$_
|
|
7722
7724
|
} = bem(INPUT_NATIVE_CLASSNAME);
|
|
7723
7725
|
|
|
7724
7726
|
/**
|
|
@@ -7761,7 +7763,7 @@ const RawInputText$1 = props => {
|
|
|
7761
7763
|
name: name,
|
|
7762
7764
|
type: type,
|
|
7763
7765
|
ref: ref,
|
|
7764
|
-
className: classnames(className, block$
|
|
7766
|
+
className: classnames(className, block$_({
|
|
7765
7767
|
[`theme-${theme}`]: Boolean(theme),
|
|
7766
7768
|
text: true
|
|
7767
7769
|
})),
|
|
@@ -7797,7 +7799,7 @@ const RawInputText = forwardRef((props, ref) => {
|
|
|
7797
7799
|
});
|
|
7798
7800
|
|
|
7799
7801
|
const {
|
|
7800
|
-
block: block$
|
|
7802
|
+
block: block$Z
|
|
7801
7803
|
} = bem(INPUT_NATIVE_CLASSNAME);
|
|
7802
7804
|
|
|
7803
7805
|
/**
|
|
@@ -7839,7 +7841,7 @@ const RawInputTextarea$1 = props => {
|
|
|
7839
7841
|
...forwardedProps,
|
|
7840
7842
|
name: name,
|
|
7841
7843
|
ref: ref,
|
|
7842
|
-
className: classnames(className, block$
|
|
7844
|
+
className: classnames(className, block$Z({
|
|
7843
7845
|
[`theme-${theme}`]: Boolean(theme),
|
|
7844
7846
|
textarea: true
|
|
7845
7847
|
})),
|
|
@@ -8085,8 +8087,8 @@ const TextField = forwardRef((props, ref) => {
|
|
|
8085
8087
|
} : undefined
|
|
8086
8088
|
});
|
|
8087
8089
|
});
|
|
8088
|
-
TextField.displayName = COMPONENT_NAME$
|
|
8089
|
-
TextField.className = CLASSNAME$
|
|
8090
|
+
TextField.displayName = COMPONENT_NAME$1k;
|
|
8091
|
+
TextField.className = CLASSNAME$1i;
|
|
8090
8092
|
TextField.defaultProps = DEFAULT_PROPS$_;
|
|
8091
8093
|
|
|
8092
8094
|
/**
|
|
@@ -8136,6 +8138,10 @@ const ComboboxInput = forwardRef((props, ref) => {
|
|
|
8136
8138
|
onChangeRef.current?.(option.value);
|
|
8137
8139
|
onSelectRef.current?.(option);
|
|
8138
8140
|
},
|
|
8141
|
+
onInput(value) {
|
|
8142
|
+
// Keep controlled value in sync.
|
|
8143
|
+
onChangeRef.current?.(value);
|
|
8144
|
+
},
|
|
8139
8145
|
filter,
|
|
8140
8146
|
openOnFocus
|
|
8141
8147
|
});
|
|
@@ -8164,21 +8170,21 @@ const ComboboxInput = forwardRef((props, ref) => {
|
|
|
8164
8170
|
IconButton
|
|
8165
8171
|
});
|
|
8166
8172
|
});
|
|
8167
|
-
ComboboxInput.displayName = COMPONENT_NAME$
|
|
8168
|
-
ComboboxInput.className = CLASSNAME$
|
|
8173
|
+
ComboboxInput.displayName = COMPONENT_NAME$1l;
|
|
8174
|
+
ComboboxInput.className = CLASSNAME$1j;
|
|
8169
8175
|
|
|
8170
8176
|
/**
|
|
8171
8177
|
* Component display name.
|
|
8172
8178
|
*/
|
|
8173
|
-
const COMPONENT_NAME$
|
|
8179
|
+
const COMPONENT_NAME$1j = 'List';
|
|
8174
8180
|
|
|
8175
8181
|
/**
|
|
8176
8182
|
* Component default class name and class prefix.
|
|
8177
8183
|
*/
|
|
8178
|
-
const CLASSNAME$
|
|
8184
|
+
const CLASSNAME$1h = 'lumx-list';
|
|
8179
8185
|
const {
|
|
8180
|
-
block: block$
|
|
8181
|
-
} = bem(CLASSNAME$
|
|
8186
|
+
block: block$Y
|
|
8187
|
+
} = bem(CLASSNAME$1h);
|
|
8182
8188
|
|
|
8183
8189
|
/**
|
|
8184
8190
|
* Component default props.
|
|
@@ -8201,15 +8207,15 @@ const List$1 = props => {
|
|
|
8201
8207
|
} = props;
|
|
8202
8208
|
return /*#__PURE__*/jsx("ul", {
|
|
8203
8209
|
...forwardedProps,
|
|
8204
|
-
className: classnames(className, block$
|
|
8210
|
+
className: classnames(className, block$Y({
|
|
8205
8211
|
[`item-padding-${itemPadding}`]: Boolean(itemPadding)
|
|
8206
8212
|
})),
|
|
8207
8213
|
ref: ref,
|
|
8208
8214
|
children: children
|
|
8209
8215
|
});
|
|
8210
8216
|
};
|
|
8211
|
-
List$1.displayName = COMPONENT_NAME$
|
|
8212
|
-
List$1.className = CLASSNAME$
|
|
8217
|
+
List$1.displayName = COMPONENT_NAME$1j;
|
|
8218
|
+
List$1.className = CLASSNAME$1h;
|
|
8213
8219
|
List$1.defaultProps = DEFAULT_PROPS$Z;
|
|
8214
8220
|
|
|
8215
8221
|
/**
|
|
@@ -8225,12 +8231,12 @@ List$1.defaultProps = DEFAULT_PROPS$Z;
|
|
|
8225
8231
|
/**
|
|
8226
8232
|
* Component display name.
|
|
8227
8233
|
*/
|
|
8228
|
-
const COMPONENT_NAME$
|
|
8234
|
+
const COMPONENT_NAME$1i = 'ComboboxList';
|
|
8229
8235
|
|
|
8230
8236
|
/**
|
|
8231
8237
|
* Component default class name and class prefix.
|
|
8232
8238
|
*/
|
|
8233
|
-
const CLASSNAME$
|
|
8239
|
+
const CLASSNAME$1g = 'lumx-combobox-list';
|
|
8234
8240
|
|
|
8235
8241
|
/**
|
|
8236
8242
|
* ComboboxList core template.
|
|
@@ -8252,7 +8258,7 @@ const ComboboxList$1 = props => {
|
|
|
8252
8258
|
} = props;
|
|
8253
8259
|
return List$1({
|
|
8254
8260
|
...forwardedProps,
|
|
8255
|
-
className: classnames(className, CLASSNAME$
|
|
8261
|
+
className: classnames(className, CLASSNAME$1g),
|
|
8256
8262
|
ref,
|
|
8257
8263
|
itemPadding: 'big',
|
|
8258
8264
|
id,
|
|
@@ -8342,22 +8348,22 @@ const ComboboxList = forwardRef((props, ref) => {
|
|
|
8342
8348
|
})
|
|
8343
8349
|
});
|
|
8344
8350
|
});
|
|
8345
|
-
ComboboxList.displayName = COMPONENT_NAME$
|
|
8346
|
-
ComboboxList.className = CLASSNAME$
|
|
8351
|
+
ComboboxList.displayName = COMPONENT_NAME$1i;
|
|
8352
|
+
ComboboxList.className = CLASSNAME$1g;
|
|
8347
8353
|
|
|
8348
8354
|
/**
|
|
8349
8355
|
* Component display name.
|
|
8350
8356
|
*/
|
|
8351
|
-
const COMPONENT_NAME$
|
|
8357
|
+
const COMPONENT_NAME$1h = 'ListItem';
|
|
8352
8358
|
|
|
8353
8359
|
/**
|
|
8354
8360
|
* Component default class name and class prefix.
|
|
8355
8361
|
*/
|
|
8356
|
-
const CLASSNAME$
|
|
8362
|
+
const CLASSNAME$1f = 'lumx-list-item';
|
|
8357
8363
|
const {
|
|
8358
|
-
block: block$
|
|
8359
|
-
element: element$
|
|
8360
|
-
} = bem(CLASSNAME$
|
|
8364
|
+
block: block$X,
|
|
8365
|
+
element: element$L
|
|
8366
|
+
} = bem(CLASSNAME$1f);
|
|
8361
8367
|
|
|
8362
8368
|
/**
|
|
8363
8369
|
* Component default props.
|
|
@@ -8394,7 +8400,7 @@ const ListItem$1 = props => {
|
|
|
8394
8400
|
return /*#__PURE__*/jsx("li", {
|
|
8395
8401
|
ref: ref,
|
|
8396
8402
|
...forwardedProps,
|
|
8397
|
-
className: classnames(className, block$
|
|
8403
|
+
className: classnames(className, block$X({
|
|
8398
8404
|
[`size-${size}`]: Boolean(size)
|
|
8399
8405
|
})),
|
|
8400
8406
|
children: RawClickable({
|
|
@@ -8402,7 +8408,7 @@ const ListItem$1 = props => {
|
|
|
8402
8408
|
isDisabled,
|
|
8403
8409
|
'aria-disabled': ariaDisabled,
|
|
8404
8410
|
...linkProps,
|
|
8405
|
-
className: element$
|
|
8411
|
+
className: element$L(clickable ? 'link' : 'wrapper', {
|
|
8406
8412
|
'is-highlighted': isHighlighted,
|
|
8407
8413
|
'is-selected': isSelected,
|
|
8408
8414
|
'is-disabled': isDisabled || ariaDisabled === 'true'
|
|
@@ -8411,21 +8417,21 @@ const ListItem$1 = props => {
|
|
|
8411
8417
|
ref: linkRef,
|
|
8412
8418
|
children: /*#__PURE__*/jsxs(Fragment, {
|
|
8413
8419
|
children: [before && /*#__PURE__*/jsx("div", {
|
|
8414
|
-
className: element$
|
|
8420
|
+
className: element$L('before'),
|
|
8415
8421
|
children: before
|
|
8416
8422
|
}), /*#__PURE__*/jsx("div", {
|
|
8417
|
-
className: element$
|
|
8423
|
+
className: element$L('content'),
|
|
8418
8424
|
children: children
|
|
8419
8425
|
}), after && /*#__PURE__*/jsx("div", {
|
|
8420
|
-
className: element$
|
|
8426
|
+
className: element$L('after'),
|
|
8421
8427
|
children: after
|
|
8422
8428
|
})]
|
|
8423
8429
|
})
|
|
8424
8430
|
})
|
|
8425
8431
|
});
|
|
8426
8432
|
};
|
|
8427
|
-
ListItem$1.displayName = COMPONENT_NAME$
|
|
8428
|
-
ListItem$1.className = CLASSNAME$
|
|
8433
|
+
ListItem$1.displayName = COMPONENT_NAME$1h;
|
|
8434
|
+
ListItem$1.className = CLASSNAME$1f;
|
|
8429
8435
|
ListItem$1.defaultProps = DEFAULT_PROPS$Y;
|
|
8430
8436
|
|
|
8431
8437
|
/**
|
|
@@ -8435,12 +8441,12 @@ ListItem$1.defaultProps = DEFAULT_PROPS$Y;
|
|
|
8435
8441
|
/**
|
|
8436
8442
|
* Component display name.
|
|
8437
8443
|
*/
|
|
8438
|
-
const COMPONENT_NAME$
|
|
8444
|
+
const COMPONENT_NAME$1g = 'ListItemAction';
|
|
8439
8445
|
|
|
8440
8446
|
/**
|
|
8441
8447
|
* Component classname (used by action area CSS pattern).
|
|
8442
8448
|
*/
|
|
8443
|
-
const CLASSNAME$
|
|
8449
|
+
const CLASSNAME$1e = 'lumx-action-area__action';
|
|
8444
8450
|
const DEFAULT_PROPS$X = {};
|
|
8445
8451
|
|
|
8446
8452
|
/**
|
|
@@ -8474,16 +8480,16 @@ const ListItemAction$1 = props => {
|
|
|
8474
8480
|
/**
|
|
8475
8481
|
* Component display name.
|
|
8476
8482
|
*/
|
|
8477
|
-
const COMPONENT_NAME$
|
|
8483
|
+
const COMPONENT_NAME$1f = 'ComboboxOption';
|
|
8478
8484
|
|
|
8479
8485
|
/**
|
|
8480
8486
|
* Component default class name and class prefix.
|
|
8481
8487
|
*/
|
|
8482
|
-
const CLASSNAME$
|
|
8488
|
+
const CLASSNAME$1d = 'lumx-combobox-option';
|
|
8483
8489
|
const {
|
|
8484
|
-
block: block$
|
|
8485
|
-
element: element$
|
|
8486
|
-
} = bem(CLASSNAME$
|
|
8490
|
+
block: block$W,
|
|
8491
|
+
element: element$K
|
|
8492
|
+
} = bem(CLASSNAME$1d);
|
|
8487
8493
|
|
|
8488
8494
|
/**
|
|
8489
8495
|
* ComboboxOption core template.
|
|
@@ -8527,7 +8533,7 @@ const ComboboxOption$1 = (props, {
|
|
|
8527
8533
|
as: 'button',
|
|
8528
8534
|
...actionProps,
|
|
8529
8535
|
id,
|
|
8530
|
-
className: element$
|
|
8536
|
+
className: element$K('action'),
|
|
8531
8537
|
handleClick,
|
|
8532
8538
|
'aria-selected': isSelected ? 'true' : 'false',
|
|
8533
8539
|
'data-value': value,
|
|
@@ -8545,7 +8551,7 @@ const ComboboxOption$1 = (props, {
|
|
|
8545
8551
|
size: 'tiny',
|
|
8546
8552
|
...forwardedProps,
|
|
8547
8553
|
hidden,
|
|
8548
|
-
className: !hidden ? classnames(className, block$
|
|
8554
|
+
className: !hidden ? classnames(className, block$W()) : undefined,
|
|
8549
8555
|
before,
|
|
8550
8556
|
after,
|
|
8551
8557
|
role: itemRole,
|
|
@@ -8553,7 +8559,7 @@ const ComboboxOption$1 = (props, {
|
|
|
8553
8559
|
children: [wrappedAction, description && /*#__PURE__*/jsx("p", {
|
|
8554
8560
|
id: descriptionId,
|
|
8555
8561
|
...getTextProps({
|
|
8556
|
-
className: element$
|
|
8562
|
+
className: element$K('description'),
|
|
8557
8563
|
typography: 'caption',
|
|
8558
8564
|
color: 'dark-L2'
|
|
8559
8565
|
}),
|
|
@@ -8667,8 +8673,8 @@ const ComboboxOption = forwardRef((props, ref) => {
|
|
|
8667
8673
|
Tooltip
|
|
8668
8674
|
});
|
|
8669
8675
|
});
|
|
8670
|
-
ComboboxOption.displayName = COMPONENT_NAME$
|
|
8671
|
-
ComboboxOption.className = CLASSNAME$
|
|
8676
|
+
ComboboxOption.displayName = COMPONENT_NAME$1f;
|
|
8677
|
+
ComboboxOption.className = CLASSNAME$1d;
|
|
8672
8678
|
|
|
8673
8679
|
/**
|
|
8674
8680
|
* Defines the props for the core ComboboxOptionAction template.
|
|
@@ -8677,12 +8683,12 @@ ComboboxOption.className = CLASSNAME$19;
|
|
|
8677
8683
|
/**
|
|
8678
8684
|
* Component display name.
|
|
8679
8685
|
*/
|
|
8680
|
-
const COMPONENT_NAME$
|
|
8686
|
+
const COMPONENT_NAME$1e = 'ComboboxOptionAction';
|
|
8681
8687
|
|
|
8682
8688
|
/**
|
|
8683
8689
|
* Component default class name and class prefix.
|
|
8684
8690
|
*/
|
|
8685
|
-
const CLASSNAME$
|
|
8691
|
+
const CLASSNAME$1c = 'lumx-combobox-option-action';
|
|
8686
8692
|
|
|
8687
8693
|
/**
|
|
8688
8694
|
* ComboboxOptionAction core template.
|
|
@@ -8705,7 +8711,7 @@ const ComboboxOptionAction$1 = props => {
|
|
|
8705
8711
|
as: Element,
|
|
8706
8712
|
...forwardedProps,
|
|
8707
8713
|
role: 'gridcell',
|
|
8708
|
-
className: classnames(className, CLASSNAME$
|
|
8714
|
+
className: classnames(className, CLASSNAME$1c),
|
|
8709
8715
|
handleClick,
|
|
8710
8716
|
children
|
|
8711
8717
|
});
|
|
@@ -8755,23 +8761,23 @@ const ComboboxOptionAction = Object.assign(forwardRefPolymorphic((props, ref) =>
|
|
|
8755
8761
|
children
|
|
8756
8762
|
});
|
|
8757
8763
|
}), {
|
|
8758
|
-
displayName: COMPONENT_NAME$
|
|
8759
|
-
className: CLASSNAME$
|
|
8764
|
+
displayName: COMPONENT_NAME$1e,
|
|
8765
|
+
className: CLASSNAME$1c
|
|
8760
8766
|
});
|
|
8761
8767
|
|
|
8762
8768
|
/**
|
|
8763
8769
|
* Component display name.
|
|
8764
8770
|
*/
|
|
8765
|
-
const COMPONENT_NAME$
|
|
8771
|
+
const COMPONENT_NAME$1d = 'ComboboxOptionMoreInfo';
|
|
8766
8772
|
|
|
8767
8773
|
/**
|
|
8768
8774
|
* Component default class name and class prefix.
|
|
8769
8775
|
*/
|
|
8770
|
-
const CLASSNAME$
|
|
8776
|
+
const CLASSNAME$1b = 'lumx-combobox-option-more-info';
|
|
8771
8777
|
const {
|
|
8772
|
-
block: block$
|
|
8773
|
-
element: element$
|
|
8774
|
-
} = bem(CLASSNAME$
|
|
8778
|
+
block: block$V,
|
|
8779
|
+
element: element$J
|
|
8780
|
+
} = bem(CLASSNAME$1b);
|
|
8775
8781
|
|
|
8776
8782
|
/**
|
|
8777
8783
|
* ComboboxOptionMoreInfo core template.
|
|
@@ -8805,7 +8811,7 @@ const ComboboxOptionMoreInfo$1 = (props, {
|
|
|
8805
8811
|
icon: mdiInformationOutline,
|
|
8806
8812
|
size: "s",
|
|
8807
8813
|
...buttonProps,
|
|
8808
|
-
className: block$
|
|
8814
|
+
className: block$V([className, buttonProps?.className]),
|
|
8809
8815
|
emphasis: "low",
|
|
8810
8816
|
onMouseEnter: onMouseEnter,
|
|
8811
8817
|
onMouseLeave: onMouseLeave
|
|
@@ -8816,7 +8822,7 @@ const ComboboxOptionMoreInfo$1 = (props, {
|
|
|
8816
8822
|
label: ""
|
|
8817
8823
|
}), /*#__PURE__*/jsx(Popover, {
|
|
8818
8824
|
id: popoverId,
|
|
8819
|
-
className: element$
|
|
8825
|
+
className: element$J('popover'),
|
|
8820
8826
|
anchorRef: ref,
|
|
8821
8827
|
isOpen: isOpen,
|
|
8822
8828
|
closeMode: "unmount",
|
|
@@ -9088,16 +9094,16 @@ const POPOVER_ZINDEX = 9999;
|
|
|
9088
9094
|
/**
|
|
9089
9095
|
* Component display name.
|
|
9090
9096
|
*/
|
|
9091
|
-
const COMPONENT_NAME$
|
|
9097
|
+
const COMPONENT_NAME$1c = 'Popover';
|
|
9092
9098
|
|
|
9093
9099
|
/**
|
|
9094
9100
|
* Component default class name and class prefix.
|
|
9095
9101
|
*/
|
|
9096
|
-
const CLASSNAME$
|
|
9102
|
+
const CLASSNAME$1a = 'lumx-popover';
|
|
9097
9103
|
const {
|
|
9098
|
-
block: block$
|
|
9099
|
-
element: element$
|
|
9100
|
-
} = bem(CLASSNAME$
|
|
9104
|
+
block: block$U,
|
|
9105
|
+
element: element$I
|
|
9106
|
+
} = bem(CLASSNAME$1a);
|
|
9101
9107
|
|
|
9102
9108
|
/**
|
|
9103
9109
|
* Component default props (used by framework wrappers).
|
|
@@ -9159,7 +9165,7 @@ const Popover$1 = (props, {
|
|
|
9159
9165
|
children: /*#__PURE__*/jsxs(Component, {
|
|
9160
9166
|
...forwardedProps,
|
|
9161
9167
|
ref: ref,
|
|
9162
|
-
className: classnames(className, block$
|
|
9168
|
+
className: classnames(className, block$U({
|
|
9163
9169
|
[`theme-${theme}`]: Boolean(theme),
|
|
9164
9170
|
[`elevation-${adjustedElevation}`]: Boolean(adjustedElevation),
|
|
9165
9171
|
[`position-${position}`]: Boolean(position),
|
|
@@ -9173,7 +9179,7 @@ const Popover$1 = (props, {
|
|
|
9173
9179
|
childrenRefs: clickAwayRefs,
|
|
9174
9180
|
children: [hasArrow && /*#__PURE__*/jsx("div", {
|
|
9175
9181
|
ref: arrowRef,
|
|
9176
|
-
className: element$
|
|
9182
|
+
className: element$I('arrow'),
|
|
9177
9183
|
style: isHidden ? undefined : arrowStyle,
|
|
9178
9184
|
children: /*#__PURE__*/jsx("svg", {
|
|
9179
9185
|
viewBox: "0 0 14 14",
|
|
@@ -9224,11 +9230,17 @@ function useRestoreFocusOnClose({
|
|
|
9224
9230
|
const prevIsOpenRef = React__default.useRef(isOpen);
|
|
9225
9231
|
const tryRestoreFocus = React__default.useCallback(() => {
|
|
9226
9232
|
if (!popoverElement || !focusAnchorOnClose) return;
|
|
9227
|
-
const
|
|
9233
|
+
const focusedAtClose = document.activeElement;
|
|
9234
|
+
const isFocusWithin = popoverElement.contains(focusedAtClose);
|
|
9228
9235
|
if (!isFocusWithin) return;
|
|
9229
9236
|
|
|
9230
|
-
//
|
|
9237
|
+
// Defer restore: browser may still move focus after close (e.g. click-away on mousedown).
|
|
9231
9238
|
setTimeout(() => {
|
|
9239
|
+
// Skip if focus moved to a real element (user intent). Restore if focus stayed
|
|
9240
|
+
// (closeMode="hide") or fell back to body (element removed on unmount).
|
|
9241
|
+
const active = document.activeElement;
|
|
9242
|
+
const focusMovedAway = active && active !== focusedAtClose && active !== document.body && active !== document.documentElement;
|
|
9243
|
+
if (focusMovedAway) return;
|
|
9232
9244
|
const anchor = anchorRef.current;
|
|
9233
9245
|
const elementToFocus =
|
|
9234
9246
|
// Provided parent element
|
|
@@ -9550,7 +9562,7 @@ const _InnerPopover = forwardRef((props, ref) => {
|
|
|
9550
9562
|
ThemeProvider
|
|
9551
9563
|
});
|
|
9552
9564
|
});
|
|
9553
|
-
_InnerPopover.displayName = COMPONENT_NAME$
|
|
9565
|
+
_InnerPopover.displayName = COMPONENT_NAME$1c;
|
|
9554
9566
|
|
|
9555
9567
|
/**
|
|
9556
9568
|
* Popover component.
|
|
@@ -9562,8 +9574,8 @@ _InnerPopover.displayName = COMPONENT_NAME$17;
|
|
|
9562
9574
|
const Popover = skipRender(
|
|
9563
9575
|
// Skip render in SSR
|
|
9564
9576
|
() => Boolean(DOCUMENT), _InnerPopover);
|
|
9565
|
-
Popover.displayName = COMPONENT_NAME$
|
|
9566
|
-
Popover.className = CLASSNAME$
|
|
9577
|
+
Popover.displayName = COMPONENT_NAME$1c;
|
|
9578
|
+
Popover.className = CLASSNAME$1a;
|
|
9567
9579
|
Popover.defaultProps = DEFAULT_PROPS$W;
|
|
9568
9580
|
|
|
9569
9581
|
/**
|
|
@@ -9626,22 +9638,22 @@ const ComboboxOptionMoreInfo = props => {
|
|
|
9626
9638
|
Popover
|
|
9627
9639
|
});
|
|
9628
9640
|
};
|
|
9629
|
-
ComboboxOptionMoreInfo.displayName = COMPONENT_NAME$
|
|
9630
|
-
ComboboxOptionMoreInfo.className = CLASSNAME$
|
|
9641
|
+
ComboboxOptionMoreInfo.displayName = COMPONENT_NAME$1d;
|
|
9642
|
+
ComboboxOptionMoreInfo.className = CLASSNAME$1b;
|
|
9631
9643
|
|
|
9632
9644
|
/**
|
|
9633
9645
|
* Component display name.
|
|
9634
9646
|
*/
|
|
9635
|
-
const COMPONENT_NAME$
|
|
9647
|
+
const COMPONENT_NAME$1b = 'SkeletonTypography';
|
|
9636
9648
|
|
|
9637
9649
|
/**
|
|
9638
9650
|
* Component default class name and class prefix.
|
|
9639
9651
|
*/
|
|
9640
|
-
const CLASSNAME$
|
|
9652
|
+
const CLASSNAME$19 = 'lumx-skeleton-typography';
|
|
9641
9653
|
const {
|
|
9642
|
-
block: block$
|
|
9643
|
-
element: element$
|
|
9644
|
-
} = bem(CLASSNAME$
|
|
9654
|
+
block: block$T,
|
|
9655
|
+
element: element$H
|
|
9656
|
+
} = bem(CLASSNAME$19);
|
|
9645
9657
|
|
|
9646
9658
|
/**
|
|
9647
9659
|
* SkeletonTypography component.
|
|
@@ -9662,7 +9674,7 @@ const SkeletonTypography$1 = props => {
|
|
|
9662
9674
|
return /*#__PURE__*/jsx("div", {
|
|
9663
9675
|
ref: ref,
|
|
9664
9676
|
...forwardedProps,
|
|
9665
|
-
className: classnames(className, block$
|
|
9677
|
+
className: classnames(className, block$T({
|
|
9666
9678
|
[`theme-${theme}`]: Boolean(theme),
|
|
9667
9679
|
[`typography-${typography}`]: Boolean(typography),
|
|
9668
9680
|
[`color-${color}`]: Boolean(color)
|
|
@@ -9672,7 +9684,7 @@ const SkeletonTypography$1 = props => {
|
|
|
9672
9684
|
width
|
|
9673
9685
|
},
|
|
9674
9686
|
children: /*#__PURE__*/jsx("div", {
|
|
9675
|
-
className: element$
|
|
9687
|
+
className: element$H('inner')
|
|
9676
9688
|
})
|
|
9677
9689
|
});
|
|
9678
9690
|
};
|
|
@@ -9680,12 +9692,12 @@ const SkeletonTypography$1 = props => {
|
|
|
9680
9692
|
/**
|
|
9681
9693
|
* Component display name.
|
|
9682
9694
|
*/
|
|
9683
|
-
const COMPONENT_NAME$
|
|
9695
|
+
const COMPONENT_NAME$1a = 'ComboboxOptionSkeleton';
|
|
9684
9696
|
|
|
9685
9697
|
/**
|
|
9686
9698
|
* Component default class name and class prefix.
|
|
9687
9699
|
*/
|
|
9688
|
-
const CLASSNAME$
|
|
9700
|
+
const CLASSNAME$18 = 'lumx-combobox-option-skeleton';
|
|
9689
9701
|
|
|
9690
9702
|
/**
|
|
9691
9703
|
* ComboboxOptionSkeleton core template.
|
|
@@ -9712,7 +9724,7 @@ const ComboboxOptionSkeleton$1 = props => {
|
|
|
9712
9724
|
size: 'tiny',
|
|
9713
9725
|
role: 'none',
|
|
9714
9726
|
...forwardedProps,
|
|
9715
|
-
className: classnames(className, CLASSNAME$
|
|
9727
|
+
className: classnames(className, CLASSNAME$18),
|
|
9716
9728
|
children: children || /*#__PURE__*/jsxs(Fragment, {
|
|
9717
9729
|
children: [/*#__PURE__*/jsx(SkeletonTypography$1, {
|
|
9718
9730
|
typography: "body1",
|
|
@@ -9765,19 +9777,19 @@ const ComboboxOptionSkeleton = props => {
|
|
|
9765
9777
|
...props
|
|
9766
9778
|
});
|
|
9767
9779
|
};
|
|
9768
|
-
ComboboxOptionSkeleton.displayName = COMPONENT_NAME$
|
|
9769
|
-
ComboboxOptionSkeleton.className = CLASSNAME$
|
|
9780
|
+
ComboboxOptionSkeleton.displayName = COMPONENT_NAME$1a;
|
|
9781
|
+
ComboboxOptionSkeleton.className = CLASSNAME$18;
|
|
9770
9782
|
|
|
9771
|
-
const COMPONENT_NAME$
|
|
9783
|
+
const COMPONENT_NAME$19 = 'ComboboxPopover';
|
|
9772
9784
|
|
|
9773
9785
|
/**
|
|
9774
9786
|
* Component default class name.
|
|
9775
9787
|
*/
|
|
9776
|
-
const CLASSNAME$
|
|
9788
|
+
const CLASSNAME$17 = 'lumx-combobox-popover';
|
|
9777
9789
|
const {
|
|
9778
|
-
block: block$
|
|
9779
|
-
element: element$
|
|
9780
|
-
} = bem(CLASSNAME$
|
|
9790
|
+
block: block$S,
|
|
9791
|
+
element: element$G
|
|
9792
|
+
} = bem(CLASSNAME$17);
|
|
9781
9793
|
|
|
9782
9794
|
/**
|
|
9783
9795
|
* Defines the props for the core ComboboxPopover template.
|
|
@@ -9818,7 +9830,7 @@ const ComboboxPopover$1 = (props, {
|
|
|
9818
9830
|
...forwardedProps,
|
|
9819
9831
|
placement: placement,
|
|
9820
9832
|
fitToAnchorWidth: fitToAnchorWidth,
|
|
9821
|
-
className: block$
|
|
9833
|
+
className: block$S([className]),
|
|
9822
9834
|
anchorRef: anchorRef,
|
|
9823
9835
|
isOpen: isOpen,
|
|
9824
9836
|
onClose: handleClose,
|
|
@@ -9827,7 +9839,7 @@ const ComboboxPopover$1 = (props, {
|
|
|
9827
9839
|
closeMode: "hide",
|
|
9828
9840
|
children: /*#__PURE__*/jsx(FlexBox, {
|
|
9829
9841
|
orientation: "vertical",
|
|
9830
|
-
className: element$
|
|
9842
|
+
className: element$G('scroll'),
|
|
9831
9843
|
children: children
|
|
9832
9844
|
})
|
|
9833
9845
|
});
|
|
@@ -9840,15 +9852,15 @@ const ComboboxPopover$1 = (props, {
|
|
|
9840
9852
|
/**
|
|
9841
9853
|
* Component display name.
|
|
9842
9854
|
*/
|
|
9843
|
-
const COMPONENT_NAME$
|
|
9855
|
+
const COMPONENT_NAME$18 = 'FlexBox';
|
|
9844
9856
|
|
|
9845
9857
|
/**
|
|
9846
9858
|
* Component default class name and class prefix.
|
|
9847
9859
|
*/
|
|
9848
|
-
const CLASSNAME$
|
|
9860
|
+
const CLASSNAME$16 = 'lumx-flex-box';
|
|
9849
9861
|
const {
|
|
9850
|
-
block: block$
|
|
9851
|
-
} = bem(CLASSNAME$
|
|
9862
|
+
block: block$R
|
|
9863
|
+
} = bem(CLASSNAME$16);
|
|
9852
9864
|
|
|
9853
9865
|
/**
|
|
9854
9866
|
* Get FlexBox component props (className computation).
|
|
@@ -9872,7 +9884,7 @@ function getFlexBoxProps(props) {
|
|
|
9872
9884
|
const adjustedOrientation = orientation ?? (wrap || hAlign || vAlign ? Orientation.horizontal : null);
|
|
9873
9885
|
return {
|
|
9874
9886
|
...forwardedProps,
|
|
9875
|
-
className: classnames(className, block$
|
|
9887
|
+
className: classnames(className, block$R({
|
|
9876
9888
|
[`orientation-${adjustedOrientation}`]: Boolean(adjustedOrientation),
|
|
9877
9889
|
[`v-align-${vAlign}`]: Boolean(vAlign),
|
|
9878
9890
|
[`h-align-${hAlign}`]: Boolean(hAlign),
|
|
@@ -9904,8 +9916,8 @@ const FlexBox = forwardRef((props, ref) => {
|
|
|
9904
9916
|
children: children
|
|
9905
9917
|
});
|
|
9906
9918
|
});
|
|
9907
|
-
FlexBox.displayName = COMPONENT_NAME$
|
|
9908
|
-
FlexBox.className = CLASSNAME$
|
|
9919
|
+
FlexBox.displayName = COMPONENT_NAME$18;
|
|
9920
|
+
FlexBox.className = CLASSNAME$16;
|
|
9909
9921
|
|
|
9910
9922
|
/**
|
|
9911
9923
|
* Props for Popover that can be passed to Combobox.Popover.
|
|
@@ -9943,8 +9955,8 @@ const ComboboxPopover = props => {
|
|
|
9943
9955
|
FlexBox
|
|
9944
9956
|
});
|
|
9945
9957
|
};
|
|
9946
|
-
ComboboxPopover.displayName = COMPONENT_NAME$
|
|
9947
|
-
ComboboxPopover.className = CLASSNAME$
|
|
9958
|
+
ComboboxPopover.displayName = COMPONENT_NAME$19;
|
|
9959
|
+
ComboboxPopover.className = CLASSNAME$17;
|
|
9948
9960
|
|
|
9949
9961
|
/**
|
|
9950
9962
|
* Combobox.Provider component.
|
|
@@ -9989,12 +10001,12 @@ ComboboxProvider.displayName = 'Combobox.Provider';
|
|
|
9989
10001
|
/**
|
|
9990
10002
|
* Component display name.
|
|
9991
10003
|
*/
|
|
9992
|
-
const COMPONENT_NAME$
|
|
10004
|
+
const COMPONENT_NAME$17 = 'ComboboxSection';
|
|
9993
10005
|
|
|
9994
10006
|
/**
|
|
9995
10007
|
* Component default class name and class prefix.
|
|
9996
10008
|
*/
|
|
9997
|
-
const CLASSNAME$
|
|
10009
|
+
const CLASSNAME$15 = 'lumx-combobox-section';
|
|
9998
10010
|
|
|
9999
10011
|
/**
|
|
10000
10012
|
* ComboboxSection core template.
|
|
@@ -10021,7 +10033,7 @@ const ComboboxSection$1 = (props, {
|
|
|
10021
10033
|
...forwardedProps,
|
|
10022
10034
|
hidden: hidden,
|
|
10023
10035
|
"aria-hidden": ariaHidden || undefined,
|
|
10024
|
-
className: !hidden ? classnames(className, CLASSNAME$
|
|
10036
|
+
className: !hidden ? classnames(className, CLASSNAME$15) : undefined,
|
|
10025
10037
|
role: !ariaHidden ? 'none' : undefined,
|
|
10026
10038
|
itemsWrapperProps: {
|
|
10027
10039
|
role: 'group'
|
|
@@ -10033,16 +10045,16 @@ const ComboboxSection$1 = (props, {
|
|
|
10033
10045
|
/**
|
|
10034
10046
|
* Component display name.
|
|
10035
10047
|
*/
|
|
10036
|
-
const COMPONENT_NAME$
|
|
10048
|
+
const COMPONENT_NAME$16 = 'ListSection';
|
|
10037
10049
|
|
|
10038
10050
|
/**
|
|
10039
10051
|
* Component default class name and class prefix.
|
|
10040
10052
|
*/
|
|
10041
|
-
const CLASSNAME$
|
|
10053
|
+
const CLASSNAME$14 = 'lumx-list-section';
|
|
10042
10054
|
const {
|
|
10043
|
-
block: block$
|
|
10044
|
-
element: element$
|
|
10045
|
-
} = bem(CLASSNAME$
|
|
10055
|
+
block: block$Q,
|
|
10056
|
+
element: element$F
|
|
10057
|
+
} = bem(CLASSNAME$14);
|
|
10046
10058
|
|
|
10047
10059
|
/**
|
|
10048
10060
|
* Component default props.
|
|
@@ -10072,25 +10084,25 @@ const ListSection$1 = props => {
|
|
|
10072
10084
|
return /*#__PURE__*/jsxs("li", {
|
|
10073
10085
|
ref: ref,
|
|
10074
10086
|
...forwardedProps,
|
|
10075
|
-
className: classnames(className, block$
|
|
10087
|
+
className: classnames(className, block$Q()),
|
|
10076
10088
|
children: [hasHeader && /*#__PURE__*/jsxs(Text, {
|
|
10077
10089
|
as: "p",
|
|
10078
10090
|
typography: "overline",
|
|
10079
|
-
className: element$
|
|
10091
|
+
className: element$F('title'),
|
|
10080
10092
|
id: labelId,
|
|
10081
10093
|
children: [icon && Icon$1({
|
|
10082
10094
|
icon
|
|
10083
10095
|
}), label]
|
|
10084
10096
|
}), /*#__PURE__*/jsx("ul", {
|
|
10085
10097
|
...itemsWrapperProps,
|
|
10086
|
-
className: element$
|
|
10098
|
+
className: element$F('items'),
|
|
10087
10099
|
"aria-labelledby": hasHeader ? labelId : undefined,
|
|
10088
10100
|
children: children
|
|
10089
10101
|
})]
|
|
10090
10102
|
});
|
|
10091
10103
|
};
|
|
10092
|
-
ListSection$1.displayName = COMPONENT_NAME$
|
|
10093
|
-
ListSection$1.className = CLASSNAME$
|
|
10104
|
+
ListSection$1.displayName = COMPONENT_NAME$16;
|
|
10105
|
+
ListSection$1.className = CLASSNAME$14;
|
|
10094
10106
|
ListSection$1.defaultProps = DEFAULT_PROPS$V;
|
|
10095
10107
|
|
|
10096
10108
|
/**
|
|
@@ -10113,8 +10125,8 @@ const ListSection = forwardRef((props, ref) => {
|
|
|
10113
10125
|
Text
|
|
10114
10126
|
});
|
|
10115
10127
|
});
|
|
10116
|
-
ListSection.displayName = COMPONENT_NAME$
|
|
10117
|
-
ListSection.className = CLASSNAME$
|
|
10128
|
+
ListSection.displayName = COMPONENT_NAME$16;
|
|
10129
|
+
ListSection.className = CLASSNAME$14;
|
|
10118
10130
|
ListSection.defaultProps = DEFAULT_PROPS$V;
|
|
10119
10131
|
|
|
10120
10132
|
/**
|
|
@@ -10163,21 +10175,21 @@ const ComboboxSection = forwardRef((props, ref) => {
|
|
|
10163
10175
|
ListSection
|
|
10164
10176
|
});
|
|
10165
10177
|
});
|
|
10166
|
-
ComboboxSection.displayName = COMPONENT_NAME$
|
|
10167
|
-
ComboboxSection.className = CLASSNAME$
|
|
10178
|
+
ComboboxSection.displayName = COMPONENT_NAME$17;
|
|
10179
|
+
ComboboxSection.className = CLASSNAME$15;
|
|
10168
10180
|
|
|
10169
10181
|
/**
|
|
10170
10182
|
* Component display name.
|
|
10171
10183
|
*/
|
|
10172
|
-
const COMPONENT_NAME$
|
|
10184
|
+
const COMPONENT_NAME$15 = 'ComboboxState';
|
|
10173
10185
|
|
|
10174
10186
|
/**
|
|
10175
10187
|
* Component default class name and class prefix.
|
|
10176
10188
|
*/
|
|
10177
|
-
const CLASSNAME
|
|
10189
|
+
const CLASSNAME$13 = 'lumx-combobox-state';
|
|
10178
10190
|
const {
|
|
10179
|
-
block: block$
|
|
10180
|
-
} = bem(CLASSNAME
|
|
10191
|
+
block: block$P
|
|
10192
|
+
} = bem(CLASSNAME$13);
|
|
10181
10193
|
|
|
10182
10194
|
/**
|
|
10183
10195
|
* Defines the props for the core ComboboxState template.
|
|
@@ -10238,7 +10250,7 @@ const ComboboxState$1 = (props, {
|
|
|
10238
10250
|
// the popover's closeMode="hide") and revealing it doesn't trigger announcements.
|
|
10239
10251
|
const renderContent = isOpen;
|
|
10240
10252
|
return /*#__PURE__*/jsxs(GenericBlock, {
|
|
10241
|
-
className: classnames(!show && visuallyHidden(), block$
|
|
10253
|
+
className: classnames(!show && visuallyHidden(), block$P(), padding('regular')),
|
|
10242
10254
|
orientation: "vertical",
|
|
10243
10255
|
...alignProps,
|
|
10244
10256
|
role: "status",
|
|
@@ -10350,16 +10362,16 @@ function partitionMulti(elements, predicates) {
|
|
|
10350
10362
|
/**
|
|
10351
10363
|
* Component display name.
|
|
10352
10364
|
*/
|
|
10353
|
-
const COMPONENT_NAME
|
|
10365
|
+
const COMPONENT_NAME$14 = 'GenericBlock';
|
|
10354
10366
|
|
|
10355
10367
|
/**
|
|
10356
10368
|
* Component default class name and class prefix.
|
|
10357
10369
|
*/
|
|
10358
|
-
const CLASSNAME$
|
|
10370
|
+
const CLASSNAME$12 = 'lumx-generic-block';
|
|
10359
10371
|
const {
|
|
10360
|
-
block: block$
|
|
10361
|
-
element: element$
|
|
10362
|
-
} = bem(CLASSNAME$
|
|
10372
|
+
block: block$O,
|
|
10373
|
+
element: element$E
|
|
10374
|
+
} = bem(CLASSNAME$12);
|
|
10363
10375
|
|
|
10364
10376
|
/**
|
|
10365
10377
|
* Component default props.
|
|
@@ -10398,23 +10410,23 @@ const GenericBlock$1 = props => {
|
|
|
10398
10410
|
} = props;
|
|
10399
10411
|
return /*#__PURE__*/jsxs(FlexBox, {
|
|
10400
10412
|
ref: ref,
|
|
10401
|
-
className: classnames(className, block$
|
|
10413
|
+
className: classnames(className, block$O()),
|
|
10402
10414
|
gap: gap,
|
|
10403
10415
|
orientation: orientation,
|
|
10404
10416
|
...forwardedProps,
|
|
10405
10417
|
children: [figure && /*#__PURE__*/jsx(FlexBox, {
|
|
10406
10418
|
...figureProps,
|
|
10407
|
-
className: classnames(figureProps?.className, element$
|
|
10419
|
+
className: classnames(figureProps?.className, element$E('figure')),
|
|
10408
10420
|
children: figure
|
|
10409
10421
|
}), content && /*#__PURE__*/jsx(FlexBox, {
|
|
10410
10422
|
orientation: Orientation.vertical,
|
|
10411
10423
|
fillSpace: true,
|
|
10412
10424
|
...contentProps,
|
|
10413
|
-
className: classnames(contentProps?.className, element$
|
|
10425
|
+
className: classnames(contentProps?.className, element$E('content')),
|
|
10414
10426
|
children: content
|
|
10415
10427
|
}), actions && /*#__PURE__*/jsx(FlexBox, {
|
|
10416
10428
|
...actionsProps,
|
|
10417
|
-
className: classnames(actionsProps?.className, element$
|
|
10429
|
+
className: classnames(actionsProps?.className, element$E('actions')),
|
|
10418
10430
|
children: actions
|
|
10419
10431
|
})]
|
|
10420
10432
|
});
|
|
@@ -10501,8 +10513,8 @@ const BaseGenericBlock = forwardRef((props, ref) => {
|
|
|
10501
10513
|
}) : undefined
|
|
10502
10514
|
});
|
|
10503
10515
|
});
|
|
10504
|
-
BaseGenericBlock.displayName = COMPONENT_NAME
|
|
10505
|
-
BaseGenericBlock.className = CLASSNAME$
|
|
10516
|
+
BaseGenericBlock.displayName = COMPONENT_NAME$14;
|
|
10517
|
+
BaseGenericBlock.className = CLASSNAME$12;
|
|
10506
10518
|
BaseGenericBlock.defaultProps = DEFAULT_PROPS$U;
|
|
10507
10519
|
const GenericBlock = Object.assign(BaseGenericBlock, {
|
|
10508
10520
|
Figure,
|
|
@@ -10581,18 +10593,18 @@ const ComboboxState = props => {
|
|
|
10581
10593
|
Text
|
|
10582
10594
|
});
|
|
10583
10595
|
};
|
|
10584
|
-
ComboboxState.displayName = COMPONENT_NAME$
|
|
10585
|
-
ComboboxState.className = CLASSNAME
|
|
10596
|
+
ComboboxState.displayName = COMPONENT_NAME$15;
|
|
10597
|
+
ComboboxState.className = CLASSNAME$13;
|
|
10586
10598
|
|
|
10587
10599
|
/**
|
|
10588
10600
|
* Component display name.
|
|
10589
10601
|
*/
|
|
10590
|
-
const COMPONENT_NAME$
|
|
10602
|
+
const COMPONENT_NAME$13 = 'ListDivider';
|
|
10591
10603
|
|
|
10592
10604
|
/**
|
|
10593
10605
|
* Component default class name and class prefix.
|
|
10594
10606
|
*/
|
|
10595
|
-
const CLASSNAME$
|
|
10607
|
+
const CLASSNAME$11 = 'lumx-list-divider';
|
|
10596
10608
|
|
|
10597
10609
|
/**
|
|
10598
10610
|
* Component default props.
|
|
@@ -10616,11 +10628,11 @@ const ListDivider$1 = props => {
|
|
|
10616
10628
|
ref: ref,
|
|
10617
10629
|
role: "none",
|
|
10618
10630
|
...forwardedProps,
|
|
10619
|
-
className: classnames(className, CLASSNAME$
|
|
10631
|
+
className: classnames(className, CLASSNAME$11)
|
|
10620
10632
|
});
|
|
10621
10633
|
};
|
|
10622
|
-
ListDivider$1.displayName = COMPONENT_NAME$
|
|
10623
|
-
ListDivider$1.className = CLASSNAME$
|
|
10634
|
+
ListDivider$1.displayName = COMPONENT_NAME$13;
|
|
10635
|
+
ListDivider$1.className = CLASSNAME$11;
|
|
10624
10636
|
ListDivider$1.defaultProps = DEFAULT_PROPS$T;
|
|
10625
10637
|
|
|
10626
10638
|
/**
|
|
@@ -10641,8 +10653,8 @@ const ListDivider = forwardRef((props, ref) => {
|
|
|
10641
10653
|
ref
|
|
10642
10654
|
});
|
|
10643
10655
|
});
|
|
10644
|
-
ListDivider.displayName = COMPONENT_NAME$
|
|
10645
|
-
ListDivider.className = CLASSNAME$
|
|
10656
|
+
ListDivider.displayName = COMPONENT_NAME$13;
|
|
10657
|
+
ListDivider.className = CLASSNAME$11;
|
|
10646
10658
|
ListDivider.defaultProps = DEFAULT_PROPS$T;
|
|
10647
10659
|
|
|
10648
10660
|
/**
|
|
@@ -10692,16 +10704,16 @@ const CommentBlockVariant = {
|
|
|
10692
10704
|
/**
|
|
10693
10705
|
* Component display name.
|
|
10694
10706
|
*/
|
|
10695
|
-
const COMPONENT_NAME$
|
|
10707
|
+
const COMPONENT_NAME$12 = 'CommentBlock';
|
|
10696
10708
|
|
|
10697
10709
|
/**
|
|
10698
10710
|
* Component default class name and class prefix.
|
|
10699
10711
|
*/
|
|
10700
|
-
const CLASSNAME$
|
|
10712
|
+
const CLASSNAME$10 = 'lumx-comment-block';
|
|
10701
10713
|
const {
|
|
10702
|
-
block: block$
|
|
10703
|
-
element: element$
|
|
10704
|
-
} = classNames.bem(CLASSNAME$
|
|
10714
|
+
block: block$N,
|
|
10715
|
+
element: element$D
|
|
10716
|
+
} = classNames.bem(CLASSNAME$10);
|
|
10705
10717
|
|
|
10706
10718
|
/**
|
|
10707
10719
|
* Component default props.
|
|
@@ -10742,7 +10754,7 @@ const CommentBlock = forwardRef((props, ref) => {
|
|
|
10742
10754
|
const hasChildren = Children.count(children) > 0;
|
|
10743
10755
|
return /*#__PURE__*/jsxs("div", {
|
|
10744
10756
|
ref: ref,
|
|
10745
|
-
className: classNames.join(className, block$
|
|
10757
|
+
className: classNames.join(className, block$N({
|
|
10746
10758
|
'has-children': hasChildren && isOpen,
|
|
10747
10759
|
'has-indented-children': hasChildren && variant === CommentBlockVariant.indented,
|
|
10748
10760
|
'has-linear-children': hasChildren && variant === CommentBlockVariant.linear,
|
|
@@ -10751,60 +10763,60 @@ const CommentBlock = forwardRef((props, ref) => {
|
|
|
10751
10763
|
})),
|
|
10752
10764
|
...forwardedProps,
|
|
10753
10765
|
children: [/*#__PURE__*/jsxs("div", {
|
|
10754
|
-
className: element$
|
|
10766
|
+
className: element$D('wrapper'),
|
|
10755
10767
|
children: [/*#__PURE__*/jsx("div", {
|
|
10756
|
-
className: element$
|
|
10768
|
+
className: element$D('avatar'),
|
|
10757
10769
|
children: /*#__PURE__*/jsx(Avatar, {
|
|
10758
10770
|
...avatarProps,
|
|
10759
10771
|
size: Size$1.m,
|
|
10760
10772
|
onClick: onClick
|
|
10761
10773
|
})
|
|
10762
10774
|
}), /*#__PURE__*/jsxs("div", {
|
|
10763
|
-
className: element$
|
|
10775
|
+
className: element$D('container'),
|
|
10764
10776
|
children: [/*#__PURE__*/jsxs("div", {
|
|
10765
|
-
className: element$
|
|
10777
|
+
className: element$D('content'),
|
|
10766
10778
|
children: [/*#__PURE__*/jsxs("div", {
|
|
10767
|
-
className: element$
|
|
10779
|
+
className: element$D('meta'),
|
|
10768
10780
|
children: [name &&
|
|
10769
10781
|
/*#__PURE__*/
|
|
10770
10782
|
// eslint-disable-next-line jsx-a11y/click-events-have-key-events,jsx-a11y/no-static-element-interactions
|
|
10771
10783
|
jsx("span", {
|
|
10772
|
-
className: element$
|
|
10784
|
+
className: element$D('name'),
|
|
10773
10785
|
onClick: onClick,
|
|
10774
10786
|
onMouseEnter: onMouseEnter,
|
|
10775
10787
|
onMouseLeave: onMouseLeave,
|
|
10776
10788
|
children: name
|
|
10777
10789
|
}), headerActions && /*#__PURE__*/jsx("span", {
|
|
10778
|
-
className: element$
|
|
10790
|
+
className: element$D('header-actions'),
|
|
10779
10791
|
children: headerActions
|
|
10780
10792
|
})]
|
|
10781
10793
|
}), /*#__PURE__*/jsx("div", {
|
|
10782
|
-
className: element$
|
|
10794
|
+
className: element$D('text'),
|
|
10783
10795
|
children: text
|
|
10784
10796
|
}), date && (fullDate ? /*#__PURE__*/jsx(Tooltip, {
|
|
10785
10797
|
label: fullDate,
|
|
10786
10798
|
placement: "top",
|
|
10787
10799
|
children: /*#__PURE__*/jsx("span", {
|
|
10788
|
-
className: element$
|
|
10800
|
+
className: element$D('date'),
|
|
10789
10801
|
children: date
|
|
10790
10802
|
})
|
|
10791
10803
|
}) : /*#__PURE__*/jsx("span", {
|
|
10792
|
-
className: element$
|
|
10804
|
+
className: element$D('date'),
|
|
10793
10805
|
children: date
|
|
10794
10806
|
}))]
|
|
10795
10807
|
}), hasActions && /*#__PURE__*/jsx("div", {
|
|
10796
|
-
className: element$
|
|
10808
|
+
className: element$D('actions'),
|
|
10797
10809
|
children: actions
|
|
10798
10810
|
})]
|
|
10799
10811
|
})]
|
|
10800
10812
|
}), hasChildren && isOpen && /*#__PURE__*/jsx("div", {
|
|
10801
|
-
className: element$
|
|
10813
|
+
className: element$D('children'),
|
|
10802
10814
|
children: children
|
|
10803
10815
|
})]
|
|
10804
10816
|
});
|
|
10805
10817
|
});
|
|
10806
|
-
CommentBlock.displayName = COMPONENT_NAME$
|
|
10807
|
-
CommentBlock.className = CLASSNAME$
|
|
10818
|
+
CommentBlock.displayName = COMPONENT_NAME$12;
|
|
10819
|
+
CommentBlock.className = CLASSNAME$10;
|
|
10808
10820
|
CommentBlock.defaultProps = DEFAULT_PROPS$S;
|
|
10809
10821
|
|
|
10810
10822
|
/**
|
|
@@ -10825,12 +10837,12 @@ const isDateValid = date => date instanceof Date && !Number.isNaN(date.getTime()
|
|
|
10825
10837
|
/**
|
|
10826
10838
|
* Component display name.
|
|
10827
10839
|
*/
|
|
10828
|
-
const COMPONENT_NAME$
|
|
10840
|
+
const COMPONENT_NAME$11 = 'DatePicker';
|
|
10829
10841
|
|
|
10830
10842
|
/**
|
|
10831
10843
|
* Component default class name and class prefix.
|
|
10832
10844
|
*/
|
|
10833
|
-
const CLASSNAME
|
|
10845
|
+
const CLASSNAME$$ = 'lumx-date-picker';
|
|
10834
10846
|
|
|
10835
10847
|
/** Get first day of week for locale from the browser API */
|
|
10836
10848
|
const getFromBrowser = locale => {
|
|
@@ -11052,8 +11064,8 @@ function formatDayNumber(locale, date) {
|
|
|
11052
11064
|
}
|
|
11053
11065
|
|
|
11054
11066
|
const {
|
|
11055
|
-
element: element$
|
|
11056
|
-
} = classNames.bem(CLASSNAME
|
|
11067
|
+
element: element$C
|
|
11068
|
+
} = classNames.bem(CLASSNAME$$);
|
|
11057
11069
|
|
|
11058
11070
|
/**
|
|
11059
11071
|
* Defines the props of the component.
|
|
@@ -11062,7 +11074,7 @@ const {
|
|
|
11062
11074
|
/**
|
|
11063
11075
|
* Component display name.
|
|
11064
11076
|
*/
|
|
11065
|
-
const COMPONENT_NAME$
|
|
11077
|
+
const COMPONENT_NAME$10 = 'DatePickerControlled';
|
|
11066
11078
|
|
|
11067
11079
|
/**
|
|
11068
11080
|
* DatePickerControlled component.
|
|
@@ -11147,10 +11159,10 @@ const DatePickerControlled = forwardRef((props, ref) => {
|
|
|
11147
11159
|
const yearLabel = getYearDisplayName(locale);
|
|
11148
11160
|
return /*#__PURE__*/jsxs("div", {
|
|
11149
11161
|
ref: ref,
|
|
11150
|
-
className: `${CLASSNAME
|
|
11162
|
+
className: `${CLASSNAME$$}`,
|
|
11151
11163
|
style: style,
|
|
11152
11164
|
children: [/*#__PURE__*/jsx(Toolbar, {
|
|
11153
|
-
className: element$
|
|
11165
|
+
className: element$C('toolbar'),
|
|
11154
11166
|
after: /*#__PURE__*/jsx(IconButton, {
|
|
11155
11167
|
...nextButtonProps,
|
|
11156
11168
|
emphasis: Emphasis$1.low,
|
|
@@ -11170,7 +11182,7 @@ const DatePickerControlled = forwardRef((props, ref) => {
|
|
|
11170
11182
|
dir: "auto",
|
|
11171
11183
|
children: monthYear
|
|
11172
11184
|
}), onMonthChange && /*#__PURE__*/jsx(FlexBox, {
|
|
11173
|
-
className: element$
|
|
11185
|
+
className: element$C('month'),
|
|
11174
11186
|
orientation: "horizontal",
|
|
11175
11187
|
hAlign: "center",
|
|
11176
11188
|
gap: "regular",
|
|
@@ -11185,7 +11197,7 @@ const DatePickerControlled = forwardRef((props, ref) => {
|
|
|
11185
11197
|
min: 0,
|
|
11186
11198
|
onBlur: updateYear,
|
|
11187
11199
|
onKeyPress: updateYearOnEnterPressed,
|
|
11188
|
-
className: element$
|
|
11200
|
+
className: element$C('year')
|
|
11189
11201
|
}, "year") : /*#__PURE__*/jsx(Text, {
|
|
11190
11202
|
as: "p",
|
|
11191
11203
|
children: part
|
|
@@ -11193,17 +11205,17 @@ const DatePickerControlled = forwardRef((props, ref) => {
|
|
|
11193
11205
|
})]
|
|
11194
11206
|
})
|
|
11195
11207
|
}), /*#__PURE__*/jsxs("div", {
|
|
11196
|
-
className: element$
|
|
11208
|
+
className: element$C('calendar'),
|
|
11197
11209
|
children: [/*#__PURE__*/jsx("div", {
|
|
11198
|
-
className: classNames.join(element$
|
|
11210
|
+
className: classNames.join(element$C('week-days'), element$C('days-wrapper')),
|
|
11199
11211
|
children: weekDays.map(({
|
|
11200
11212
|
letter,
|
|
11201
11213
|
number,
|
|
11202
11214
|
long
|
|
11203
11215
|
}) => /*#__PURE__*/jsxs("div", {
|
|
11204
|
-
className: element$
|
|
11216
|
+
className: element$C('day-wrapper'),
|
|
11205
11217
|
children: [/*#__PURE__*/jsx("span", {
|
|
11206
|
-
className: element$
|
|
11218
|
+
className: element$C('week-day'),
|
|
11207
11219
|
"aria-hidden": true,
|
|
11208
11220
|
children: letter.toLocaleUpperCase()
|
|
11209
11221
|
}), /*#__PURE__*/jsx("span", {
|
|
@@ -11212,7 +11224,7 @@ const DatePickerControlled = forwardRef((props, ref) => {
|
|
|
11212
11224
|
})]
|
|
11213
11225
|
}, number))
|
|
11214
11226
|
}), /*#__PURE__*/jsx("div", {
|
|
11215
|
-
className: classNames.join(element$
|
|
11227
|
+
className: classNames.join(element$C('month-days'), element$C('days-wrapper')),
|
|
11216
11228
|
children: weeks.flatMap((week, weekIndex) => {
|
|
11217
11229
|
return weekDays.map((weekDay, dayIndex) => {
|
|
11218
11230
|
const {
|
|
@@ -11223,10 +11235,10 @@ const DatePickerControlled = forwardRef((props, ref) => {
|
|
|
11223
11235
|
const isToday = !isOutOfRange && date && isSameDay(date, new Date());
|
|
11224
11236
|
const isSelected = date && value && isSameDay(value, date);
|
|
11225
11237
|
return /*#__PURE__*/jsx("div", {
|
|
11226
|
-
className: element$
|
|
11238
|
+
className: element$C('day-wrapper'),
|
|
11227
11239
|
children: date && /*#__PURE__*/jsxs(Button, {
|
|
11228
11240
|
ref: isSelected || !value && isToday ? todayOrSelectedDateRef : null,
|
|
11229
|
-
className: element$
|
|
11241
|
+
className: element$C('month-day', {
|
|
11230
11242
|
'is-today': isToday
|
|
11231
11243
|
}),
|
|
11232
11244
|
disabled: isOutOfRange,
|
|
@@ -11252,8 +11264,8 @@ const DatePickerControlled = forwardRef((props, ref) => {
|
|
|
11252
11264
|
})]
|
|
11253
11265
|
});
|
|
11254
11266
|
});
|
|
11255
|
-
DatePickerControlled.displayName = COMPONENT_NAME$
|
|
11256
|
-
DatePickerControlled.className = CLASSNAME
|
|
11267
|
+
DatePickerControlled.displayName = COMPONENT_NAME$10;
|
|
11268
|
+
DatePickerControlled.className = CLASSNAME$$;
|
|
11257
11269
|
|
|
11258
11270
|
/**
|
|
11259
11271
|
* DatePicker component.
|
|
@@ -11295,8 +11307,8 @@ const DatePicker = forwardRef((props, ref) => {
|
|
|
11295
11307
|
onMonthChange: setSelectedMonth
|
|
11296
11308
|
});
|
|
11297
11309
|
});
|
|
11298
|
-
DatePicker.displayName = COMPONENT_NAME$
|
|
11299
|
-
DatePicker.className = CLASSNAME
|
|
11310
|
+
DatePicker.displayName = COMPONENT_NAME$11;
|
|
11311
|
+
DatePicker.className = CLASSNAME$$;
|
|
11300
11312
|
|
|
11301
11313
|
const useBooleanState = defaultValue => {
|
|
11302
11314
|
const [booleanValue, setBoolean] = useState(defaultValue);
|
|
@@ -11309,7 +11321,7 @@ const useBooleanState = defaultValue => {
|
|
|
11309
11321
|
/**
|
|
11310
11322
|
* Component display name.
|
|
11311
11323
|
*/
|
|
11312
|
-
const COMPONENT_NAME
|
|
11324
|
+
const COMPONENT_NAME$$ = 'DatePickerField';
|
|
11313
11325
|
|
|
11314
11326
|
/**
|
|
11315
11327
|
* DatePickerField component.
|
|
@@ -11398,7 +11410,7 @@ const DatePickerField = forwardRef((props, ref) => {
|
|
|
11398
11410
|
}) : null]
|
|
11399
11411
|
});
|
|
11400
11412
|
});
|
|
11401
|
-
DatePickerField.displayName = COMPONENT_NAME
|
|
11413
|
+
DatePickerField.displayName = COMPONENT_NAME$$;
|
|
11402
11414
|
|
|
11403
11415
|
/**
|
|
11404
11416
|
* Convenient hook to create interaction observers.
|
|
@@ -11694,16 +11706,16 @@ const useTransitionVisibility = (ref, isComponentVisible, timeout, onVisibilityC
|
|
|
11694
11706
|
/**
|
|
11695
11707
|
* Component display name.
|
|
11696
11708
|
*/
|
|
11697
|
-
const COMPONENT_NAME$
|
|
11709
|
+
const COMPONENT_NAME$_ = 'Dialog';
|
|
11698
11710
|
|
|
11699
11711
|
/**
|
|
11700
11712
|
* Component default class name and class prefix.
|
|
11701
11713
|
*/
|
|
11702
|
-
const CLASSNAME$
|
|
11714
|
+
const CLASSNAME$_ = 'lumx-dialog';
|
|
11703
11715
|
const {
|
|
11704
|
-
block: block$
|
|
11705
|
-
element: element$
|
|
11706
|
-
} = bem(CLASSNAME$
|
|
11716
|
+
block: block$M,
|
|
11717
|
+
element: element$B
|
|
11718
|
+
} = bem(CLASSNAME$_);
|
|
11707
11719
|
|
|
11708
11720
|
/**
|
|
11709
11721
|
* Component default props.
|
|
@@ -11759,7 +11771,7 @@ const Dialog$1 = props => {
|
|
|
11759
11771
|
children: /*#__PURE__*/jsxs("div", {
|
|
11760
11772
|
ref: ref,
|
|
11761
11773
|
...forwardedProps,
|
|
11762
|
-
className: classnames(className, block$
|
|
11774
|
+
className: classnames(className, block$M({
|
|
11763
11775
|
'is-hidden': !isOpen,
|
|
11764
11776
|
'is-loading': isLoading,
|
|
11765
11777
|
'is-shown': isOpen || isVisible,
|
|
@@ -11769,13 +11781,13 @@ const Dialog$1 = props => {
|
|
|
11769
11781
|
zIndex
|
|
11770
11782
|
},
|
|
11771
11783
|
children: [/*#__PURE__*/jsx("div", {
|
|
11772
|
-
className: element$
|
|
11784
|
+
className: element$B('overlay')
|
|
11773
11785
|
}), /*#__PURE__*/jsx(HeadingLevelProvider, {
|
|
11774
11786
|
level: 2,
|
|
11775
11787
|
children: /*#__PURE__*/jsx(ThemeProvider, {
|
|
11776
11788
|
value: undefined,
|
|
11777
11789
|
children: /*#__PURE__*/jsx("div", {
|
|
11778
|
-
className: element$
|
|
11790
|
+
className: element$B('container'),
|
|
11779
11791
|
role: "dialog",
|
|
11780
11792
|
"aria-modal": "true",
|
|
11781
11793
|
...dialogProps,
|
|
@@ -11784,36 +11796,36 @@ const Dialog$1 = props => {
|
|
|
11784
11796
|
childrenRefs: clickAwayRefs,
|
|
11785
11797
|
parentRef: rootRef,
|
|
11786
11798
|
children: /*#__PURE__*/jsxs("section", {
|
|
11787
|
-
className: element$
|
|
11799
|
+
className: element$B('wrapper'),
|
|
11788
11800
|
ref: wrapperRef,
|
|
11789
11801
|
children: [(header || headerChildContent) && /*#__PURE__*/jsxs("header", {
|
|
11790
11802
|
...headerChildProps,
|
|
11791
|
-
className: classnames(element$
|
|
11803
|
+
className: classnames(element$B('header', {
|
|
11792
11804
|
'has-divider': Boolean(forceHeaderDivider || hasTopIntersection)
|
|
11793
11805
|
}), headerChildProps?.className),
|
|
11794
11806
|
children: [header, headerChildContent]
|
|
11795
11807
|
}), /*#__PURE__*/jsxs("div", {
|
|
11796
11808
|
ref: contentRef,
|
|
11797
|
-
className: element$
|
|
11809
|
+
className: element$B('content'),
|
|
11798
11810
|
children: [/*#__PURE__*/jsx("div", {
|
|
11799
|
-
className: element$
|
|
11811
|
+
className: element$B('sentinel', {
|
|
11800
11812
|
top: true
|
|
11801
11813
|
}),
|
|
11802
11814
|
ref: setSentinelTop
|
|
11803
11815
|
}), content, /*#__PURE__*/jsx("div", {
|
|
11804
|
-
className: element$
|
|
11816
|
+
className: element$B('sentinel', {
|
|
11805
11817
|
bottom: true
|
|
11806
11818
|
}),
|
|
11807
11819
|
ref: setSentinelBottom
|
|
11808
11820
|
})]
|
|
11809
11821
|
}), (footer || footerChildContent) && /*#__PURE__*/jsxs("footer", {
|
|
11810
11822
|
...footerChildProps,
|
|
11811
|
-
className: classnames(element$
|
|
11823
|
+
className: classnames(element$B('footer', {
|
|
11812
11824
|
'has-divider': Boolean(forceFooterDivider || hasBottomIntersection)
|
|
11813
11825
|
}), footerChildProps?.className),
|
|
11814
11826
|
children: [footer, footerChildContent]
|
|
11815
11827
|
}), isLoading && /*#__PURE__*/jsx("div", {
|
|
11816
|
-
className: element$
|
|
11828
|
+
className: element$B('progress-overlay'),
|
|
11817
11829
|
children: /*#__PURE__*/jsx(ProgressCircular, {})
|
|
11818
11830
|
})]
|
|
11819
11831
|
})
|
|
@@ -11976,22 +11988,22 @@ const Dialog = forwardRef((props, ref) => {
|
|
|
11976
11988
|
...forwardedProps
|
|
11977
11989
|
}) : null;
|
|
11978
11990
|
});
|
|
11979
|
-
Dialog.displayName = COMPONENT_NAME$
|
|
11980
|
-
Dialog.className = CLASSNAME$
|
|
11991
|
+
Dialog.displayName = COMPONENT_NAME$_;
|
|
11992
|
+
Dialog.className = CLASSNAME$_;
|
|
11981
11993
|
Dialog.defaultProps = DEFAULT_PROPS$Q;
|
|
11982
11994
|
|
|
11983
11995
|
/**
|
|
11984
11996
|
* Component display name.
|
|
11985
11997
|
*/
|
|
11986
|
-
const COMPONENT_NAME$
|
|
11998
|
+
const COMPONENT_NAME$Z = 'Divider';
|
|
11987
11999
|
|
|
11988
12000
|
/**
|
|
11989
12001
|
* Component default class name and class prefix.
|
|
11990
12002
|
*/
|
|
11991
|
-
const CLASSNAME$
|
|
12003
|
+
const CLASSNAME$Z = 'lumx-divider';
|
|
11992
12004
|
const {
|
|
11993
|
-
block: block$
|
|
11994
|
-
} = bem(CLASSNAME$
|
|
12005
|
+
block: block$L
|
|
12006
|
+
} = bem(CLASSNAME$Z);
|
|
11995
12007
|
|
|
11996
12008
|
/**
|
|
11997
12009
|
* Divider component.
|
|
@@ -12009,7 +12021,7 @@ const Divider$1 = props => {
|
|
|
12009
12021
|
return /*#__PURE__*/jsx("hr", {
|
|
12010
12022
|
ref: ref,
|
|
12011
12023
|
...forwardedProps,
|
|
12012
|
-
className: classnames(className, block$
|
|
12024
|
+
className: classnames(className, block$L({
|
|
12013
12025
|
[`theme-${theme}`]: Boolean(theme)
|
|
12014
12026
|
}))
|
|
12015
12027
|
});
|
|
@@ -12043,22 +12055,22 @@ const Divider = forwardRef((props, ref) => {
|
|
|
12043
12055
|
...otherProps
|
|
12044
12056
|
});
|
|
12045
12057
|
});
|
|
12046
|
-
Divider.displayName = COMPONENT_NAME$
|
|
12047
|
-
Divider.className = CLASSNAME$
|
|
12058
|
+
Divider.displayName = COMPONENT_NAME$Z;
|
|
12059
|
+
Divider.className = CLASSNAME$Z;
|
|
12048
12060
|
Divider.defaultProps = DEFAULT_PROPS$P;
|
|
12049
12061
|
|
|
12050
12062
|
/**
|
|
12051
12063
|
* Component display name.
|
|
12052
12064
|
*/
|
|
12053
|
-
const COMPONENT_NAME$
|
|
12065
|
+
const COMPONENT_NAME$Y = 'DragHandle';
|
|
12054
12066
|
|
|
12055
12067
|
/**
|
|
12056
12068
|
* Component default class name and class prefix.
|
|
12057
12069
|
*/
|
|
12058
|
-
const CLASSNAME$
|
|
12070
|
+
const CLASSNAME$Y = 'lumx-drag-handle';
|
|
12059
12071
|
const {
|
|
12060
|
-
block: block$
|
|
12061
|
-
} = bem(CLASSNAME$
|
|
12072
|
+
block: block$K
|
|
12073
|
+
} = bem(CLASSNAME$Y);
|
|
12062
12074
|
|
|
12063
12075
|
/**
|
|
12064
12076
|
* DragHandle component.
|
|
@@ -12076,7 +12088,7 @@ const DragHandle$1 = props => {
|
|
|
12076
12088
|
return /*#__PURE__*/jsx("div", {
|
|
12077
12089
|
ref: ref,
|
|
12078
12090
|
...forwardedProps,
|
|
12079
|
-
className: classnames(className, block$
|
|
12091
|
+
className: classnames(className, block$K({
|
|
12080
12092
|
[`theme-${theme}`]: Boolean(theme)
|
|
12081
12093
|
})),
|
|
12082
12094
|
children: Icon$1({
|
|
@@ -12115,8 +12127,8 @@ const DragHandle = forwardRef((props, ref) => {
|
|
|
12115
12127
|
...otherProps
|
|
12116
12128
|
});
|
|
12117
12129
|
});
|
|
12118
|
-
DragHandle.displayName = COMPONENT_NAME$
|
|
12119
|
-
DragHandle.className = CLASSNAME$
|
|
12130
|
+
DragHandle.displayName = COMPONENT_NAME$Y;
|
|
12131
|
+
DragHandle.className = CLASSNAME$Y;
|
|
12120
12132
|
DragHandle.defaultProps = DEFAULT_PROPS$O;
|
|
12121
12133
|
|
|
12122
12134
|
const INITIAL_INDEX = -1;
|
|
@@ -12311,8 +12323,8 @@ const InternalList = forwardRef((props, ref) => {
|
|
|
12311
12323
|
itemPadding: adjustedItemPadding
|
|
12312
12324
|
});
|
|
12313
12325
|
});
|
|
12314
|
-
InternalList.displayName = COMPONENT_NAME$
|
|
12315
|
-
InternalList.className = CLASSNAME$
|
|
12326
|
+
InternalList.displayName = COMPONENT_NAME$1j;
|
|
12327
|
+
InternalList.className = CLASSNAME$1h;
|
|
12316
12328
|
InternalList.defaultProps = DEFAULT_PROPS$Z;
|
|
12317
12329
|
const List = Object.assign(InternalList, {
|
|
12318
12330
|
useKeyboardListNavigation
|
|
@@ -12362,16 +12374,16 @@ const useInfiniteScroll = (ref, callback, callbackOnMount = false, scrollTrigger
|
|
|
12362
12374
|
/**
|
|
12363
12375
|
* Component display name.
|
|
12364
12376
|
*/
|
|
12365
|
-
const COMPONENT_NAME$
|
|
12377
|
+
const COMPONENT_NAME$X = 'Dropdown';
|
|
12366
12378
|
|
|
12367
12379
|
/**
|
|
12368
12380
|
* Component default class name and class prefix.
|
|
12369
12381
|
*/
|
|
12370
|
-
const CLASSNAME$
|
|
12382
|
+
const CLASSNAME$X = 'lumx-dropdown';
|
|
12371
12383
|
const {
|
|
12372
|
-
block: block$
|
|
12373
|
-
element: element$
|
|
12374
|
-
} = classNames.bem(CLASSNAME$
|
|
12384
|
+
block: block$J,
|
|
12385
|
+
element: element$A
|
|
12386
|
+
} = classNames.bem(CLASSNAME$X);
|
|
12375
12387
|
|
|
12376
12388
|
/**
|
|
12377
12389
|
* Component default props.
|
|
@@ -12435,7 +12447,7 @@ const Dropdown = forwardRef((props, ref) => {
|
|
|
12435
12447
|
...forwardedProps,
|
|
12436
12448
|
focusAnchorOnClose: focusAnchorOnClose,
|
|
12437
12449
|
anchorRef: anchorRef,
|
|
12438
|
-
className: classNames.join(className, block$
|
|
12450
|
+
className: classNames.join(className, block$J()),
|
|
12439
12451
|
elevation: 0,
|
|
12440
12452
|
closeOnClickAway: closeOnClickAway,
|
|
12441
12453
|
closeOnEscape: closeOnEscape,
|
|
@@ -12448,29 +12460,29 @@ const Dropdown = forwardRef((props, ref) => {
|
|
|
12448
12460
|
placement: placement,
|
|
12449
12461
|
zIndex: zIndex,
|
|
12450
12462
|
children: /*#__PURE__*/jsx("div", {
|
|
12451
|
-
className: element$
|
|
12463
|
+
className: element$A('menu'),
|
|
12452
12464
|
ref: innerRef,
|
|
12453
12465
|
children: popperElement
|
|
12454
12466
|
})
|
|
12455
12467
|
}) : null;
|
|
12456
12468
|
});
|
|
12457
|
-
Dropdown.displayName = COMPONENT_NAME$
|
|
12458
|
-
Dropdown.className = CLASSNAME$
|
|
12469
|
+
Dropdown.displayName = COMPONENT_NAME$X;
|
|
12470
|
+
Dropdown.className = CLASSNAME$X;
|
|
12459
12471
|
Dropdown.defaultProps = DEFAULT_PROPS$N;
|
|
12460
12472
|
|
|
12461
12473
|
/**
|
|
12462
12474
|
* Component display name.
|
|
12463
12475
|
*/
|
|
12464
|
-
const COMPONENT_NAME$
|
|
12476
|
+
const COMPONENT_NAME$W = 'ExpansionPanel';
|
|
12465
12477
|
|
|
12466
12478
|
/**
|
|
12467
12479
|
* Component default class name and class prefix.
|
|
12468
12480
|
*/
|
|
12469
|
-
const CLASSNAME$
|
|
12481
|
+
const CLASSNAME$W = 'lumx-expansion-panel';
|
|
12470
12482
|
const {
|
|
12471
|
-
block: block$
|
|
12472
|
-
element: element$
|
|
12473
|
-
} = bem(CLASSNAME$
|
|
12483
|
+
block: block$I,
|
|
12484
|
+
element: element$z
|
|
12485
|
+
} = bem(CLASSNAME$W);
|
|
12474
12486
|
|
|
12475
12487
|
/**
|
|
12476
12488
|
* Component default props.
|
|
@@ -12524,7 +12536,7 @@ const ExpansionPanel$1 = props => {
|
|
|
12524
12536
|
}
|
|
12525
12537
|
};
|
|
12526
12538
|
const color = theme === Theme.dark ? ColorPalette.light : ColorPalette.dark;
|
|
12527
|
-
const rootClassName = classnames(className, block$
|
|
12539
|
+
const rootClassName = classnames(className, block$I({
|
|
12528
12540
|
'has-background': hasBackground,
|
|
12529
12541
|
'has-header': Boolean(!isEmpty(headerProps.children)),
|
|
12530
12542
|
'has-header-divider': hasHeaderDivider,
|
|
@@ -12538,17 +12550,17 @@ const ExpansionPanel$1 = props => {
|
|
|
12538
12550
|
...forwardedProps,
|
|
12539
12551
|
className: rootClassName,
|
|
12540
12552
|
children: [/*#__PURE__*/jsxs("header", {
|
|
12541
|
-
className: element$
|
|
12553
|
+
className: element$z('header'),
|
|
12542
12554
|
onClick: toggleOpen,
|
|
12543
12555
|
children: [dragHandle && /*#__PURE__*/jsx("div", {
|
|
12544
|
-
className: element$
|
|
12556
|
+
className: element$z('header-drag'),
|
|
12545
12557
|
children: dragHandle
|
|
12546
12558
|
}), /*#__PURE__*/jsx("div", {
|
|
12547
12559
|
...headerProps,
|
|
12548
|
-
className: element$
|
|
12560
|
+
className: element$z('header-content'),
|
|
12549
12561
|
children: headerContent
|
|
12550
12562
|
}), /*#__PURE__*/jsx("div", {
|
|
12551
|
-
className: element$
|
|
12563
|
+
className: element$z('header-toggle'),
|
|
12552
12564
|
children: /*#__PURE__*/jsx(IconButton, {
|
|
12553
12565
|
...toggleButtonProps,
|
|
12554
12566
|
color: color,
|
|
@@ -12558,15 +12570,15 @@ const ExpansionPanel$1 = props => {
|
|
|
12558
12570
|
})
|
|
12559
12571
|
})]
|
|
12560
12572
|
}), /*#__PURE__*/jsx("div", {
|
|
12561
|
-
className: element$
|
|
12573
|
+
className: element$z('wrapper'),
|
|
12562
12574
|
ref: wrapperRef,
|
|
12563
12575
|
children: (isOpen || isChildrenVisible) && /*#__PURE__*/jsxs("div", {
|
|
12564
|
-
className: element$
|
|
12576
|
+
className: element$z('container'),
|
|
12565
12577
|
children: [/*#__PURE__*/jsx("div", {
|
|
12566
|
-
className: element$
|
|
12578
|
+
className: element$z('content'),
|
|
12567
12579
|
children: content
|
|
12568
12580
|
}), footer && /*#__PURE__*/jsx("div", {
|
|
12569
|
-
className: element$
|
|
12581
|
+
className: element$z('footer'),
|
|
12570
12582
|
children: footer
|
|
12571
12583
|
})]
|
|
12572
12584
|
})
|
|
@@ -12606,7 +12618,7 @@ const ExpansionPanel = forwardRef((props, ref) => {
|
|
|
12606
12618
|
// Either take the header in children or create one with the label.
|
|
12607
12619
|
const headerProps = /*#__PURE__*/React__default.isValidElement(header) ? header.props : {};
|
|
12608
12620
|
const headerContent = !isEmpty(headerProps.children) ? headerProps.children : /*#__PURE__*/jsx("span", {
|
|
12609
|
-
className: element$
|
|
12621
|
+
className: element$z('label'),
|
|
12610
12622
|
children: label
|
|
12611
12623
|
});
|
|
12612
12624
|
const wrapperRef = useRef(null);
|
|
@@ -12659,17 +12671,17 @@ const ExpansionPanel = forwardRef((props, ref) => {
|
|
|
12659
12671
|
...forwardedProps
|
|
12660
12672
|
});
|
|
12661
12673
|
});
|
|
12662
|
-
ExpansionPanel.displayName = COMPONENT_NAME$
|
|
12663
|
-
ExpansionPanel.className = CLASSNAME$
|
|
12674
|
+
ExpansionPanel.displayName = COMPONENT_NAME$W;
|
|
12675
|
+
ExpansionPanel.className = CLASSNAME$W;
|
|
12664
12676
|
ExpansionPanel.defaultProps = DEFAULT_PROPS$M;
|
|
12665
12677
|
|
|
12666
|
-
const COMPONENT_NAME$
|
|
12667
|
-
const CLASSNAME$
|
|
12678
|
+
const COMPONENT_NAME$V = 'Flag';
|
|
12679
|
+
const CLASSNAME$V = 'lumx-flag';
|
|
12668
12680
|
const DEFAULT_PROPS$L = {};
|
|
12669
12681
|
const {
|
|
12670
|
-
block: block$
|
|
12671
|
-
element: element$
|
|
12672
|
-
} = bem(CLASSNAME$
|
|
12682
|
+
block: block$H,
|
|
12683
|
+
element: element$y
|
|
12684
|
+
} = bem(CLASSNAME$V);
|
|
12673
12685
|
|
|
12674
12686
|
/**
|
|
12675
12687
|
* Flag component.
|
|
@@ -12692,19 +12704,19 @@ const Flag$1 = props => {
|
|
|
12692
12704
|
const isTruncated = !!truncate;
|
|
12693
12705
|
return /*#__PURE__*/jsxs("div", {
|
|
12694
12706
|
...forwardedProps,
|
|
12695
|
-
className: classnames(className, block$
|
|
12707
|
+
className: classnames(className, block$H({
|
|
12696
12708
|
[`color-${flagColor}`]: Boolean(flagColor),
|
|
12697
12709
|
'is-truncated': isTruncated
|
|
12698
12710
|
})),
|
|
12699
12711
|
children: [icon && Icon$1({
|
|
12700
12712
|
icon,
|
|
12701
12713
|
size: Size.xxs,
|
|
12702
|
-
className: element$
|
|
12714
|
+
className: element$y('icon')
|
|
12703
12715
|
}), /*#__PURE__*/jsx(Text, {
|
|
12704
12716
|
as: "span",
|
|
12705
12717
|
truncate: !!truncate,
|
|
12706
12718
|
typography: "overline",
|
|
12707
|
-
className: element$
|
|
12719
|
+
className: element$y('label'),
|
|
12708
12720
|
children: children
|
|
12709
12721
|
})]
|
|
12710
12722
|
});
|
|
@@ -12727,8 +12739,8 @@ const Flag = forwardRef((props, ref) => {
|
|
|
12727
12739
|
Text
|
|
12728
12740
|
});
|
|
12729
12741
|
});
|
|
12730
|
-
Flag.displayName = COMPONENT_NAME$
|
|
12731
|
-
Flag.className = CLASSNAME$
|
|
12742
|
+
Flag.displayName = COMPONENT_NAME$V;
|
|
12743
|
+
Flag.className = CLASSNAME$V;
|
|
12732
12744
|
Flag.defaultProps = DEFAULT_PROPS$L;
|
|
12733
12745
|
|
|
12734
12746
|
/** The maximum authorized heading level. */
|
|
@@ -12757,12 +12769,12 @@ const defaultContext = {
|
|
|
12757
12769
|
/**
|
|
12758
12770
|
* Component display name.
|
|
12759
12771
|
*/
|
|
12760
|
-
const COMPONENT_NAME$
|
|
12772
|
+
const COMPONENT_NAME$U = 'Heading';
|
|
12761
12773
|
|
|
12762
12774
|
/**
|
|
12763
12775
|
* Component default class name and class prefix.
|
|
12764
12776
|
*/
|
|
12765
|
-
const CLASSNAME$
|
|
12777
|
+
const CLASSNAME$U = 'lumx-heading';
|
|
12766
12778
|
|
|
12767
12779
|
/**
|
|
12768
12780
|
* Component default props.
|
|
@@ -12787,7 +12799,7 @@ const getHeadingProps = (props, contextHeadingElement) => {
|
|
|
12787
12799
|
return {
|
|
12788
12800
|
...otherProps,
|
|
12789
12801
|
as: computedHeadingElement,
|
|
12790
|
-
className: classnames(className, CLASSNAME$
|
|
12802
|
+
className: classnames(className, CLASSNAME$U),
|
|
12791
12803
|
typography: typography || DEFAULT_TYPOGRAPHY_BY_LEVEL[computedHeadingElement]
|
|
12792
12804
|
};
|
|
12793
12805
|
};
|
|
@@ -12825,8 +12837,8 @@ const Heading = forwardRef((props, ref) => {
|
|
|
12825
12837
|
children: children
|
|
12826
12838
|
});
|
|
12827
12839
|
});
|
|
12828
|
-
Heading.displayName = COMPONENT_NAME$
|
|
12829
|
-
Heading.className = CLASSNAME$
|
|
12840
|
+
Heading.displayName = COMPONENT_NAME$U;
|
|
12841
|
+
Heading.className = CLASSNAME$U;
|
|
12830
12842
|
Heading.defaultProps = DEFAULT_PROPS$K;
|
|
12831
12843
|
|
|
12832
12844
|
/**
|
|
@@ -12865,15 +12877,15 @@ const HeadingLevelProvider = ({
|
|
|
12865
12877
|
/**
|
|
12866
12878
|
* Component display name.
|
|
12867
12879
|
*/
|
|
12868
|
-
const COMPONENT_NAME$
|
|
12880
|
+
const COMPONENT_NAME$T = 'Grid';
|
|
12869
12881
|
|
|
12870
12882
|
/**
|
|
12871
12883
|
* Component default class name and class prefix.
|
|
12872
12884
|
*/
|
|
12873
|
-
const CLASSNAME$
|
|
12885
|
+
const CLASSNAME$T = 'lumx-grid';
|
|
12874
12886
|
const {
|
|
12875
|
-
block: block$
|
|
12876
|
-
} = classNames.bem(CLASSNAME$
|
|
12887
|
+
block: block$G
|
|
12888
|
+
} = classNames.bem(CLASSNAME$T);
|
|
12877
12889
|
|
|
12878
12890
|
/**
|
|
12879
12891
|
* Component default props.
|
|
@@ -12904,7 +12916,7 @@ const Grid = forwardRef((props, ref) => {
|
|
|
12904
12916
|
return /*#__PURE__*/jsx("div", {
|
|
12905
12917
|
ref: ref,
|
|
12906
12918
|
...forwardedProps,
|
|
12907
|
-
className: classNames.join(className, classNames.bem(`${CLASSNAME$
|
|
12919
|
+
className: classNames.join(className, classNames.bem(`${CLASSNAME$T}-container`).block(), block$G({
|
|
12908
12920
|
[`h-align-${hAlign}`]: Boolean(hAlign),
|
|
12909
12921
|
[`v-align-${vAlign}`]: Boolean(vAlign),
|
|
12910
12922
|
[`orientation-${orientation}`]: Boolean(orientation),
|
|
@@ -12914,22 +12926,22 @@ const Grid = forwardRef((props, ref) => {
|
|
|
12914
12926
|
children: children
|
|
12915
12927
|
});
|
|
12916
12928
|
});
|
|
12917
|
-
Grid.displayName = COMPONENT_NAME$
|
|
12918
|
-
Grid.className = CLASSNAME$
|
|
12929
|
+
Grid.displayName = COMPONENT_NAME$T;
|
|
12930
|
+
Grid.className = CLASSNAME$T;
|
|
12919
12931
|
Grid.defaultProps = DEFAULT_PROPS$J;
|
|
12920
12932
|
|
|
12921
12933
|
/**
|
|
12922
12934
|
* Component display name.
|
|
12923
12935
|
*/
|
|
12924
|
-
const COMPONENT_NAME$
|
|
12936
|
+
const COMPONENT_NAME$S = 'GridItem';
|
|
12925
12937
|
|
|
12926
12938
|
/**
|
|
12927
12939
|
* Component default class name and class prefix.
|
|
12928
12940
|
*/
|
|
12929
|
-
const CLASSNAME$
|
|
12941
|
+
const CLASSNAME$S = 'lumx-grid-item';
|
|
12930
12942
|
const {
|
|
12931
|
-
block: block$
|
|
12932
|
-
} = classNames.bem(CLASSNAME$
|
|
12943
|
+
block: block$F
|
|
12944
|
+
} = classNames.bem(CLASSNAME$S);
|
|
12933
12945
|
|
|
12934
12946
|
/**
|
|
12935
12947
|
* GridItem component.
|
|
@@ -12950,7 +12962,7 @@ const GridItem = forwardRef((props, ref) => {
|
|
|
12950
12962
|
return /*#__PURE__*/jsx("div", {
|
|
12951
12963
|
ref: ref,
|
|
12952
12964
|
...forwardedProps,
|
|
12953
|
-
className: classNames.join(className, block$
|
|
12965
|
+
className: classNames.join(className, block$F({
|
|
12954
12966
|
[`width-${width}`]: Boolean(width),
|
|
12955
12967
|
[`order-${order}`]: Boolean(order),
|
|
12956
12968
|
[`align-${align}`]: Boolean(align)
|
|
@@ -12958,18 +12970,18 @@ const GridItem = forwardRef((props, ref) => {
|
|
|
12958
12970
|
children: children
|
|
12959
12971
|
});
|
|
12960
12972
|
});
|
|
12961
|
-
GridItem.displayName = COMPONENT_NAME$
|
|
12962
|
-
GridItem.className = CLASSNAME$
|
|
12973
|
+
GridItem.displayName = COMPONENT_NAME$S;
|
|
12974
|
+
GridItem.className = CLASSNAME$S;
|
|
12963
12975
|
|
|
12964
12976
|
/**
|
|
12965
12977
|
* Component display name.
|
|
12966
12978
|
*/
|
|
12967
|
-
const COMPONENT_NAME$
|
|
12979
|
+
const COMPONENT_NAME$R = 'GridColumn';
|
|
12968
12980
|
|
|
12969
12981
|
/**
|
|
12970
12982
|
* Component default class name and class prefix.
|
|
12971
12983
|
*/
|
|
12972
|
-
const CLASSNAME$
|
|
12984
|
+
const CLASSNAME$R = 'lumx-grid-column';
|
|
12973
12985
|
|
|
12974
12986
|
/**
|
|
12975
12987
|
* Component default props.
|
|
@@ -12999,7 +13011,7 @@ const GridColumn$1 = props => {
|
|
|
12999
13011
|
return /*#__PURE__*/jsx(Component, {
|
|
13000
13012
|
...forwardedProps,
|
|
13001
13013
|
ref: ref,
|
|
13002
|
-
className: classnames(className, CLASSNAME$
|
|
13014
|
+
className: classnames(className, CLASSNAME$R),
|
|
13003
13015
|
style: {
|
|
13004
13016
|
...style,
|
|
13005
13017
|
['--lumx-grid-column-item-min-width']: isInteger(itemMinWidth) && `${itemMinWidth}px`,
|
|
@@ -13009,8 +13021,8 @@ const GridColumn$1 = props => {
|
|
|
13009
13021
|
children: children
|
|
13010
13022
|
});
|
|
13011
13023
|
};
|
|
13012
|
-
GridColumn$1.displayName = COMPONENT_NAME$
|
|
13013
|
-
GridColumn$1.className = CLASSNAME$
|
|
13024
|
+
GridColumn$1.displayName = COMPONENT_NAME$R;
|
|
13025
|
+
GridColumn$1.className = CLASSNAME$R;
|
|
13014
13026
|
GridColumn$1.defaultProps = DEFAULT_PROPS$I;
|
|
13015
13027
|
|
|
13016
13028
|
/**
|
|
@@ -13039,8 +13051,8 @@ const GridColumn = forwardRef((props, ref) => {
|
|
|
13039
13051
|
...props
|
|
13040
13052
|
});
|
|
13041
13053
|
});
|
|
13042
|
-
GridColumn.displayName = COMPONENT_NAME$
|
|
13043
|
-
GridColumn.className = CLASSNAME$
|
|
13054
|
+
GridColumn.displayName = COMPONENT_NAME$R;
|
|
13055
|
+
GridColumn.className = CLASSNAME$R;
|
|
13044
13056
|
GridColumn.defaultProps = DEFAULT_PROPS$H;
|
|
13045
13057
|
|
|
13046
13058
|
/**
|
|
@@ -13062,16 +13074,16 @@ const ImageBlockCaptionPosition = {
|
|
|
13062
13074
|
/**
|
|
13063
13075
|
* Component display name.
|
|
13064
13076
|
*/
|
|
13065
|
-
const COMPONENT_NAME$
|
|
13077
|
+
const COMPONENT_NAME$Q = 'ImageBlock';
|
|
13066
13078
|
|
|
13067
13079
|
/**
|
|
13068
13080
|
* Component default class name and class prefix.
|
|
13069
13081
|
*/
|
|
13070
|
-
const CLASSNAME$
|
|
13082
|
+
const CLASSNAME$Q = 'lumx-image-block';
|
|
13071
13083
|
const {
|
|
13072
|
-
block: block$
|
|
13073
|
-
element: element$
|
|
13074
|
-
} = bem(CLASSNAME$
|
|
13084
|
+
block: block$E,
|
|
13085
|
+
element: element$x
|
|
13086
|
+
} = bem(CLASSNAME$Q);
|
|
13075
13087
|
|
|
13076
13088
|
/**
|
|
13077
13089
|
* Component default props.
|
|
@@ -13114,7 +13126,7 @@ const ImageBlock$1 = props => {
|
|
|
13114
13126
|
return /*#__PURE__*/jsxs("figure", {
|
|
13115
13127
|
ref: ref,
|
|
13116
13128
|
...forwardedProps,
|
|
13117
|
-
className: classnames(className, block$
|
|
13129
|
+
className: classnames(className, block$E({
|
|
13118
13130
|
[`caption-position-${captionPosition}`]: Boolean(captionPosition),
|
|
13119
13131
|
[`align-${align}`]: Boolean(align),
|
|
13120
13132
|
[`size-${size}`]: Boolean(size),
|
|
@@ -13123,7 +13135,7 @@ const ImageBlock$1 = props => {
|
|
|
13123
13135
|
})),
|
|
13124
13136
|
children: [/*#__PURE__*/jsx(Thumbnail, {
|
|
13125
13137
|
...thumbnailProps,
|
|
13126
|
-
className: classnames(element$
|
|
13138
|
+
className: classnames(element$x('image'), thumbnailProps?.className),
|
|
13127
13139
|
fillHeight: fillHeight,
|
|
13128
13140
|
align: align,
|
|
13129
13141
|
image: image,
|
|
@@ -13132,7 +13144,7 @@ const ImageBlock$1 = props => {
|
|
|
13132
13144
|
alt: alt || title
|
|
13133
13145
|
}), /*#__PURE__*/jsx(ImageCaption, {
|
|
13134
13146
|
as: "figcaption",
|
|
13135
|
-
baseClassName: CLASSNAME$
|
|
13147
|
+
baseClassName: CLASSNAME$Q,
|
|
13136
13148
|
theme: theme,
|
|
13137
13149
|
title: title,
|
|
13138
13150
|
titleProps: titleProps,
|
|
@@ -13143,7 +13155,7 @@ const ImageBlock$1 = props => {
|
|
|
13143
13155
|
align: align,
|
|
13144
13156
|
truncate: captionPosition === 'over'
|
|
13145
13157
|
}), actions && /*#__PURE__*/jsx("div", {
|
|
13146
|
-
className: element$
|
|
13158
|
+
className: element$x('actions'),
|
|
13147
13159
|
children: actions
|
|
13148
13160
|
})]
|
|
13149
13161
|
});
|
|
@@ -13263,19 +13275,19 @@ const ImageBlock = forwardRef((props, ref) => {
|
|
|
13263
13275
|
ImageCaption
|
|
13264
13276
|
});
|
|
13265
13277
|
});
|
|
13266
|
-
ImageBlock.displayName = COMPONENT_NAME$
|
|
13267
|
-
ImageBlock.className = CLASSNAME$
|
|
13278
|
+
ImageBlock.displayName = COMPONENT_NAME$Q;
|
|
13279
|
+
ImageBlock.className = CLASSNAME$Q;
|
|
13268
13280
|
ImageBlock.defaultProps = DEFAULT_PROPS$G;
|
|
13269
13281
|
|
|
13270
13282
|
/**
|
|
13271
13283
|
* Component display name.
|
|
13272
13284
|
*/
|
|
13273
|
-
const COMPONENT_NAME$
|
|
13285
|
+
const COMPONENT_NAME$P = 'ImageLightbox';
|
|
13274
13286
|
|
|
13275
13287
|
/**
|
|
13276
13288
|
* Component default class name and class prefix.
|
|
13277
13289
|
*/
|
|
13278
|
-
const CLASSNAME$
|
|
13290
|
+
const CLASSNAME$P = 'lumx-image-lightbox';
|
|
13279
13291
|
|
|
13280
13292
|
/**
|
|
13281
13293
|
* Observe element size (only works if it's size depends on the window size).
|
|
@@ -13520,8 +13532,8 @@ function useAnimateScroll(scrollAreaRef) {
|
|
|
13520
13532
|
}
|
|
13521
13533
|
|
|
13522
13534
|
const {
|
|
13523
|
-
element: element$
|
|
13524
|
-
} = classNames.bem(CLASSNAME$
|
|
13535
|
+
element: element$w
|
|
13536
|
+
} = classNames.bem(CLASSNAME$P);
|
|
13525
13537
|
/** Internal image slide component for ImageLightbox */
|
|
13526
13538
|
const ImageSlide = /*#__PURE__*/React__default.memo(props => {
|
|
13527
13539
|
const {
|
|
@@ -13588,12 +13600,12 @@ const ImageSlide = /*#__PURE__*/React__default.memo(props => {
|
|
|
13588
13600
|
// Make it accessible to keyboard nav when the zone is scrollable
|
|
13589
13601
|
,
|
|
13590
13602
|
tabIndex: isScrollable ? 0 : undefined,
|
|
13591
|
-
className: element$
|
|
13603
|
+
className: element$w('image-slide'),
|
|
13592
13604
|
children: /*#__PURE__*/jsx(Thumbnail, {
|
|
13593
13605
|
imgRef: useMergeRefs(imgRef, propImgRef),
|
|
13594
13606
|
image: image,
|
|
13595
13607
|
alt: alt,
|
|
13596
|
-
className: element$
|
|
13608
|
+
className: element$w('thumbnail'),
|
|
13597
13609
|
imgProps: {
|
|
13598
13610
|
...imgProps,
|
|
13599
13611
|
style: {
|
|
@@ -13612,8 +13624,8 @@ const ImageSlide = /*#__PURE__*/React__default.memo(props => {
|
|
|
13612
13624
|
}, isEqual);
|
|
13613
13625
|
|
|
13614
13626
|
const {
|
|
13615
|
-
element: element$
|
|
13616
|
-
} = classNames.bem(CLASSNAME$
|
|
13627
|
+
element: element$v
|
|
13628
|
+
} = classNames.bem(CLASSNAME$P);
|
|
13617
13629
|
/** Internal image slideshow component for ImageLightbox */
|
|
13618
13630
|
const ImageSlideshow = ({
|
|
13619
13631
|
activeImageIndex,
|
|
@@ -13734,12 +13746,12 @@ const ImageSlideshow = ({
|
|
|
13734
13746
|
})
|
|
13735
13747
|
}), (metadata || slideShowControls || zoomControls) && /*#__PURE__*/jsxs(FlexBox, {
|
|
13736
13748
|
ref: footerRef,
|
|
13737
|
-
className: element$
|
|
13749
|
+
className: element$v('footer'),
|
|
13738
13750
|
orientation: "vertical",
|
|
13739
13751
|
vAlign: "center",
|
|
13740
13752
|
gap: "big",
|
|
13741
13753
|
children: [metadata, /*#__PURE__*/jsxs(FlexBox, {
|
|
13742
|
-
className: element$
|
|
13754
|
+
className: element$v('footer-actions'),
|
|
13743
13755
|
orientation: "horizontal",
|
|
13744
13756
|
gap: "regular",
|
|
13745
13757
|
children: [slideShowControls, zoomControls]
|
|
@@ -13853,7 +13865,7 @@ function useImageLightbox(props) {
|
|
|
13853
13865
|
viewTransitionName: {
|
|
13854
13866
|
source: currentImageRef,
|
|
13855
13867
|
target: triggerImageRefs[currentIndex],
|
|
13856
|
-
name: CLASSNAME$
|
|
13868
|
+
name: CLASSNAME$P
|
|
13857
13869
|
}
|
|
13858
13870
|
});
|
|
13859
13871
|
}
|
|
@@ -13905,7 +13917,7 @@ function useImageLightbox(props) {
|
|
|
13905
13917
|
viewTransitionName: {
|
|
13906
13918
|
source: triggerImage,
|
|
13907
13919
|
target: currentImageRef,
|
|
13908
|
-
name: CLASSNAME$
|
|
13920
|
+
name: CLASSNAME$P
|
|
13909
13921
|
}
|
|
13910
13922
|
});
|
|
13911
13923
|
}
|
|
@@ -13959,7 +13971,7 @@ const Inner = forwardRef((props, ref) => {
|
|
|
13959
13971
|
}, [onClose]);
|
|
13960
13972
|
return /*#__PURE__*/jsx(Lightbox, {
|
|
13961
13973
|
ref: ref,
|
|
13962
|
-
className: classNames.join(className, CLASSNAME$
|
|
13974
|
+
className: classNames.join(className, CLASSNAME$P),
|
|
13963
13975
|
parentElement: parentElement,
|
|
13964
13976
|
isOpen: isOpen,
|
|
13965
13977
|
onClose: onClose,
|
|
@@ -13988,8 +14000,8 @@ const Inner = forwardRef((props, ref) => {
|
|
|
13988
14000
|
})
|
|
13989
14001
|
});
|
|
13990
14002
|
});
|
|
13991
|
-
Inner.displayName = COMPONENT_NAME$
|
|
13992
|
-
Inner.className = CLASSNAME$
|
|
14003
|
+
Inner.displayName = COMPONENT_NAME$P;
|
|
14004
|
+
Inner.className = CLASSNAME$P;
|
|
13993
14005
|
|
|
13994
14006
|
/**
|
|
13995
14007
|
* ImageLightbox component.
|
|
@@ -14005,16 +14017,16 @@ const ImageLightbox = Object.assign(Inner, {
|
|
|
14005
14017
|
/**
|
|
14006
14018
|
* Component display name.
|
|
14007
14019
|
*/
|
|
14008
|
-
const COMPONENT_NAME$
|
|
14020
|
+
const COMPONENT_NAME$O = 'InlineList';
|
|
14009
14021
|
|
|
14010
14022
|
/**
|
|
14011
14023
|
* Component default class name and class prefix.
|
|
14012
14024
|
*/
|
|
14013
|
-
const CLASSNAME$
|
|
14025
|
+
const CLASSNAME$O = 'lumx-inline-list';
|
|
14014
14026
|
const {
|
|
14015
|
-
block: block$
|
|
14016
|
-
element: element$
|
|
14017
|
-
} = bem(CLASSNAME$
|
|
14027
|
+
block: block$D,
|
|
14028
|
+
element: element$u
|
|
14029
|
+
} = bem(CLASSNAME$O);
|
|
14018
14030
|
|
|
14019
14031
|
/**
|
|
14020
14032
|
* Component default props.
|
|
@@ -14044,7 +14056,7 @@ const InlineList$1 = props => {
|
|
|
14044
14056
|
jsx("ul", {
|
|
14045
14057
|
...forwardedProps,
|
|
14046
14058
|
ref: ref,
|
|
14047
|
-
className: classnames(className, block$
|
|
14059
|
+
className: classnames(className, block$D({
|
|
14048
14060
|
wrap: Boolean(wrap)
|
|
14049
14061
|
}), color && font(color, colorVariant), typography$1 && typography(typography$1))
|
|
14050
14062
|
// Lists with removed bullet style can lose their a11y list role on some browsers
|
|
@@ -14056,9 +14068,9 @@ const InlineList$1 = props => {
|
|
|
14056
14068
|
// eslint-disable-next-line jsx-a11y/no-redundant-roles
|
|
14057
14069
|
jsxs("li", {
|
|
14058
14070
|
role: "listitem",
|
|
14059
|
-
className: element$
|
|
14071
|
+
className: element$u('item'),
|
|
14060
14072
|
children: [index !== 0 && /*#__PURE__*/jsx("span", {
|
|
14061
|
-
className: element$
|
|
14073
|
+
className: element$u('item-separator'),
|
|
14062
14074
|
"aria-hidden": "true",
|
|
14063
14075
|
children: '\u00A0•\u00A0'
|
|
14064
14076
|
}), item]
|
|
@@ -14066,8 +14078,8 @@ const InlineList$1 = props => {
|
|
|
14066
14078
|
})
|
|
14067
14079
|
);
|
|
14068
14080
|
};
|
|
14069
|
-
InlineList$1.displayName = COMPONENT_NAME$
|
|
14070
|
-
InlineList$1.className = CLASSNAME$
|
|
14081
|
+
InlineList$1.displayName = COMPONENT_NAME$O;
|
|
14082
|
+
InlineList$1.className = CLASSNAME$O;
|
|
14071
14083
|
InlineList$1.defaultProps = DEFAULT_PROPS$F;
|
|
14072
14084
|
|
|
14073
14085
|
/**
|
|
@@ -14092,8 +14104,8 @@ const InlineList = forwardRef((props, ref) => {
|
|
|
14092
14104
|
items: Children.toArray(children)
|
|
14093
14105
|
});
|
|
14094
14106
|
});
|
|
14095
|
-
InlineList.displayName = COMPONENT_NAME$
|
|
14096
|
-
InlineList.className = CLASSNAME$
|
|
14107
|
+
InlineList.displayName = COMPONENT_NAME$O;
|
|
14108
|
+
InlineList.className = CLASSNAME$O;
|
|
14097
14109
|
InlineList.defaultProps = DEFAULT_PROPS$F;
|
|
14098
14110
|
|
|
14099
14111
|
/**
|
|
@@ -14137,16 +14149,16 @@ InputLabel.defaultProps = InputLabel$1.defaultProps;
|
|
|
14137
14149
|
/**
|
|
14138
14150
|
* Component display name.
|
|
14139
14151
|
*/
|
|
14140
|
-
const COMPONENT_NAME$
|
|
14152
|
+
const COMPONENT_NAME$N = 'Lightbox';
|
|
14141
14153
|
|
|
14142
14154
|
/**
|
|
14143
14155
|
* Component default class name and class prefix.
|
|
14144
14156
|
*/
|
|
14145
|
-
const CLASSNAME$
|
|
14157
|
+
const CLASSNAME$N = 'lumx-lightbox';
|
|
14146
14158
|
const {
|
|
14147
|
-
block: block$
|
|
14148
|
-
element: element$
|
|
14149
|
-
} = bem(CLASSNAME$
|
|
14159
|
+
block: block$C,
|
|
14160
|
+
element: element$t
|
|
14161
|
+
} = bem(CLASSNAME$N);
|
|
14150
14162
|
|
|
14151
14163
|
/**
|
|
14152
14164
|
* Lightbox component.
|
|
@@ -14193,7 +14205,7 @@ const Lightbox$1 = props => {
|
|
|
14193
14205
|
"aria-modal": "true",
|
|
14194
14206
|
role: "dialog",
|
|
14195
14207
|
tabIndex: -1,
|
|
14196
|
-
className: classnames(className, block$
|
|
14208
|
+
className: classnames(className, block$C({
|
|
14197
14209
|
'is-hidden': !isOpen,
|
|
14198
14210
|
'is-shown': isOpen || isVisible,
|
|
14199
14211
|
[`theme-${theme}`]: Boolean(theme)
|
|
@@ -14202,7 +14214,7 @@ const Lightbox$1 = props => {
|
|
|
14202
14214
|
zIndex
|
|
14203
14215
|
},
|
|
14204
14216
|
children: [closeButtonProps && /*#__PURE__*/jsx("div", {
|
|
14205
|
-
className: element$
|
|
14217
|
+
className: element$t('close'),
|
|
14206
14218
|
children: /*#__PURE__*/jsx(IconButton, {
|
|
14207
14219
|
...closeButtonProps,
|
|
14208
14220
|
ref: closeButtonRef,
|
|
@@ -14222,7 +14234,7 @@ const Lightbox$1 = props => {
|
|
|
14222
14234
|
childrenRefs: clickAwayRefs,
|
|
14223
14235
|
children: /*#__PURE__*/jsx("div", {
|
|
14224
14236
|
ref: childrenRef,
|
|
14225
|
-
className: element$
|
|
14237
|
+
className: element$t('wrapper'),
|
|
14226
14238
|
role: "presentation",
|
|
14227
14239
|
children: children
|
|
14228
14240
|
})
|
|
@@ -14330,8 +14342,8 @@ const Lightbox = forwardRef((props, ref) => {
|
|
|
14330
14342
|
...forwardedProps
|
|
14331
14343
|
});
|
|
14332
14344
|
});
|
|
14333
|
-
Lightbox.displayName = COMPONENT_NAME$
|
|
14334
|
-
Lightbox.className = CLASSNAME$
|
|
14345
|
+
Lightbox.displayName = COMPONENT_NAME$N;
|
|
14346
|
+
Lightbox.className = CLASSNAME$N;
|
|
14335
14347
|
|
|
14336
14348
|
/**
|
|
14337
14349
|
* Defines the props of the component.
|
|
@@ -14340,15 +14352,15 @@ Lightbox.className = CLASSNAME$J;
|
|
|
14340
14352
|
/**
|
|
14341
14353
|
* Component display name.
|
|
14342
14354
|
*/
|
|
14343
|
-
const COMPONENT_NAME$
|
|
14355
|
+
const COMPONENT_NAME$M = 'Link';
|
|
14344
14356
|
|
|
14345
14357
|
/**
|
|
14346
14358
|
* Component default class name and class prefix.
|
|
14347
14359
|
*/
|
|
14348
|
-
const CLASSNAME$
|
|
14360
|
+
const CLASSNAME$M = 'lumx-link';
|
|
14349
14361
|
const {
|
|
14350
|
-
block: block$
|
|
14351
|
-
} = bem(CLASSNAME$
|
|
14362
|
+
block: block$B
|
|
14363
|
+
} = bem(CLASSNAME$M);
|
|
14352
14364
|
|
|
14353
14365
|
/**
|
|
14354
14366
|
* Link component.
|
|
@@ -14377,7 +14389,7 @@ const Link$1 = props => {
|
|
|
14377
14389
|
...forwardedProps,
|
|
14378
14390
|
handleClick,
|
|
14379
14391
|
children,
|
|
14380
|
-
className: classnames(className, block$
|
|
14392
|
+
className: classnames(className, block$B({
|
|
14381
14393
|
[`color-${color}`]: Boolean(color),
|
|
14382
14394
|
[`color-variant-${colorVariant}`]: Boolean(colorVariant),
|
|
14383
14395
|
'has-typography': !!typography$1
|
|
@@ -14386,8 +14398,8 @@ const Link$1 = props => {
|
|
|
14386
14398
|
};
|
|
14387
14399
|
|
|
14388
14400
|
const {
|
|
14389
|
-
element: element$
|
|
14390
|
-
} = classNames.bem(CLASSNAME$
|
|
14401
|
+
element: element$s
|
|
14402
|
+
} = classNames.bem(CLASSNAME$M);
|
|
14391
14403
|
|
|
14392
14404
|
/**
|
|
14393
14405
|
* Defines the props of the component.
|
|
@@ -14422,33 +14434,33 @@ const Link = forwardRef((props, ref) => {
|
|
|
14422
14434
|
children: wrapChildrenIconWithSpaces(/*#__PURE__*/jsxs(Fragment, {
|
|
14423
14435
|
children: [leftIcon && /*#__PURE__*/jsx(Icon, {
|
|
14424
14436
|
icon: leftIcon,
|
|
14425
|
-
className: element$
|
|
14437
|
+
className: element$s('left-icon')
|
|
14426
14438
|
}), children && /*#__PURE__*/jsx("span", {
|
|
14427
|
-
className: element$
|
|
14439
|
+
className: element$s('content'),
|
|
14428
14440
|
children: children
|
|
14429
14441
|
}), rightIcon && /*#__PURE__*/jsx(Icon, {
|
|
14430
14442
|
icon: rightIcon,
|
|
14431
|
-
className: element$
|
|
14443
|
+
className: element$s('right-icon')
|
|
14432
14444
|
})]
|
|
14433
14445
|
}))
|
|
14434
14446
|
});
|
|
14435
14447
|
});
|
|
14436
|
-
Link.displayName = COMPONENT_NAME$
|
|
14437
|
-
Link.className = CLASSNAME$
|
|
14448
|
+
Link.displayName = COMPONENT_NAME$M;
|
|
14449
|
+
Link.className = CLASSNAME$M;
|
|
14438
14450
|
|
|
14439
14451
|
/**
|
|
14440
14452
|
* Component display name.
|
|
14441
14453
|
*/
|
|
14442
|
-
const COMPONENT_NAME$
|
|
14454
|
+
const COMPONENT_NAME$L = 'LinkPreview';
|
|
14443
14455
|
|
|
14444
14456
|
/**
|
|
14445
14457
|
* Component default class name and class prefix.
|
|
14446
14458
|
*/
|
|
14447
|
-
const CLASSNAME$
|
|
14459
|
+
const CLASSNAME$L = 'lumx-link-preview';
|
|
14448
14460
|
const {
|
|
14449
|
-
block: block$
|
|
14450
|
-
element: element$
|
|
14451
|
-
} = bem(CLASSNAME$
|
|
14461
|
+
block: block$A,
|
|
14462
|
+
element: element$r
|
|
14463
|
+
} = bem(CLASSNAME$L);
|
|
14452
14464
|
|
|
14453
14465
|
/**
|
|
14454
14466
|
* Component default props.
|
|
@@ -14487,14 +14499,14 @@ const LinkPreview$1 = props => {
|
|
|
14487
14499
|
return /*#__PURE__*/jsx("article", {
|
|
14488
14500
|
ref: ref,
|
|
14489
14501
|
...forwardedProps,
|
|
14490
|
-
className: classnames(className, block$
|
|
14502
|
+
className: classnames(className, block$A({
|
|
14491
14503
|
[`size-${adjustedSize}`]: Boolean(adjustedSize),
|
|
14492
14504
|
[`theme-${theme}`]: Boolean(theme)
|
|
14493
14505
|
})),
|
|
14494
14506
|
children: /*#__PURE__*/jsxs("div", {
|
|
14495
|
-
className: element$
|
|
14507
|
+
className: element$r('wrapper'),
|
|
14496
14508
|
children: [thumbnailProps && /*#__PURE__*/jsx("div", {
|
|
14497
|
-
className: element$
|
|
14509
|
+
className: element$r('thumbnail'),
|
|
14498
14510
|
children: /*#__PURE__*/jsx(Thumbnail, {
|
|
14499
14511
|
...thumbnailProps,
|
|
14500
14512
|
linkAs: linkAs,
|
|
@@ -14509,9 +14521,9 @@ const LinkPreview$1 = props => {
|
|
|
14509
14521
|
fillHeight: true
|
|
14510
14522
|
})
|
|
14511
14523
|
}), /*#__PURE__*/jsxs("div", {
|
|
14512
|
-
className: element$
|
|
14524
|
+
className: element$r('container'),
|
|
14513
14525
|
children: [title && /*#__PURE__*/jsx(TitleHeading, {
|
|
14514
|
-
className: element$
|
|
14526
|
+
className: element$r('title'),
|
|
14515
14527
|
children: /*#__PURE__*/jsx(Link, {
|
|
14516
14528
|
...linkProps,
|
|
14517
14529
|
linkAs: linkAs,
|
|
@@ -14522,14 +14534,14 @@ const LinkPreview$1 = props => {
|
|
|
14522
14534
|
children: title
|
|
14523
14535
|
})
|
|
14524
14536
|
}), description && /*#__PURE__*/jsx("p", {
|
|
14525
|
-
className: element$
|
|
14537
|
+
className: element$r('description'),
|
|
14526
14538
|
children: description
|
|
14527
14539
|
}), /*#__PURE__*/jsx("div", {
|
|
14528
|
-
className: element$
|
|
14540
|
+
className: element$r('link'),
|
|
14529
14541
|
children: /*#__PURE__*/jsx(Link, {
|
|
14530
14542
|
...linkProps,
|
|
14531
14543
|
linkAs: linkAs,
|
|
14532
|
-
className: classnames(element$
|
|
14544
|
+
className: classnames(element$r('link'), linkProps?.className),
|
|
14533
14545
|
target: "_blank",
|
|
14534
14546
|
href: link,
|
|
14535
14547
|
color: theme === Theme.light ? ColorPalette.primary : ColorPalette.light,
|
|
@@ -14574,8 +14586,8 @@ const LinkPreview = forwardRef((props, ref) => {
|
|
|
14574
14586
|
...forwardedProps
|
|
14575
14587
|
});
|
|
14576
14588
|
});
|
|
14577
|
-
LinkPreview.displayName = COMPONENT_NAME$
|
|
14578
|
-
LinkPreview.className = CLASSNAME$
|
|
14589
|
+
LinkPreview.displayName = COMPONENT_NAME$L;
|
|
14590
|
+
LinkPreview.className = CLASSNAME$L;
|
|
14579
14591
|
LinkPreview.defaultProps = DEFAULT_PROPS$E;
|
|
14580
14592
|
|
|
14581
14593
|
/**
|
|
@@ -14607,8 +14619,8 @@ const ListItemAction = Object.assign(forwardRefPolymorphic((props, ref) => {
|
|
|
14607
14619
|
children
|
|
14608
14620
|
});
|
|
14609
14621
|
}), {
|
|
14610
|
-
displayName: COMPONENT_NAME$
|
|
14611
|
-
className: CLASSNAME$
|
|
14622
|
+
displayName: COMPONENT_NAME$1g,
|
|
14623
|
+
className: CLASSNAME$1e,
|
|
14612
14624
|
defaultProps: DEFAULT_PROPS$X
|
|
14613
14625
|
});
|
|
14614
14626
|
|
|
@@ -14647,8 +14659,8 @@ const _ListItem = forwardRef((props, ref) => {
|
|
|
14647
14659
|
handleClick: onItemSelected || props.onClick ? handleClick : undefined
|
|
14648
14660
|
});
|
|
14649
14661
|
});
|
|
14650
|
-
_ListItem.displayName = COMPONENT_NAME$
|
|
14651
|
-
_ListItem.className = CLASSNAME$
|
|
14662
|
+
_ListItem.displayName = COMPONENT_NAME$1h;
|
|
14663
|
+
_ListItem.className = CLASSNAME$1f;
|
|
14652
14664
|
_ListItem.defaultProps = DEFAULT_PROPS$Y;
|
|
14653
14665
|
|
|
14654
14666
|
/**
|
|
@@ -14662,12 +14674,12 @@ const ListItem = Object.assign(_ListItem, {
|
|
|
14662
14674
|
/**
|
|
14663
14675
|
* Component display name.
|
|
14664
14676
|
*/
|
|
14665
|
-
const COMPONENT_NAME$
|
|
14677
|
+
const COMPONENT_NAME$K = 'ListSubheader';
|
|
14666
14678
|
|
|
14667
14679
|
/**
|
|
14668
14680
|
* Component default class name and class prefix.
|
|
14669
14681
|
*/
|
|
14670
|
-
const CLASSNAME$
|
|
14682
|
+
const CLASSNAME$K = 'lumx-list-subheader';
|
|
14671
14683
|
|
|
14672
14684
|
/**
|
|
14673
14685
|
* ListSubheader component.
|
|
@@ -14686,12 +14698,835 @@ const ListSubheader = forwardRef((props, ref) => {
|
|
|
14686
14698
|
return /*#__PURE__*/jsx("li", {
|
|
14687
14699
|
ref: ref,
|
|
14688
14700
|
...forwardedProps,
|
|
14689
|
-
className: classNames.join(className, CLASSNAME$
|
|
14701
|
+
className: classNames.join(className, CLASSNAME$K),
|
|
14690
14702
|
children: children
|
|
14691
14703
|
});
|
|
14692
14704
|
});
|
|
14693
|
-
ListSubheader.displayName = COMPONENT_NAME$
|
|
14694
|
-
ListSubheader.className = CLASSNAME$
|
|
14705
|
+
ListSubheader.displayName = COMPONENT_NAME$K;
|
|
14706
|
+
ListSubheader.className = CLASSNAME$K;
|
|
14707
|
+
|
|
14708
|
+
const COMPONENT_NAME$J = 'MenuButton';
|
|
14709
|
+
|
|
14710
|
+
/** Menu button core template (composition of menu provider, trigger, popover and list) */
|
|
14711
|
+
const MenuButton$1 = (props, {
|
|
14712
|
+
Menu
|
|
14713
|
+
}) => {
|
|
14714
|
+
const {
|
|
14715
|
+
label,
|
|
14716
|
+
children,
|
|
14717
|
+
triggerProps,
|
|
14718
|
+
popoverProps,
|
|
14719
|
+
onOpen
|
|
14720
|
+
} = props;
|
|
14721
|
+
return /*#__PURE__*/jsxs(Menu.Provider, {
|
|
14722
|
+
onOpen: onOpen,
|
|
14723
|
+
children: [/*#__PURE__*/jsx(Menu.Trigger, {
|
|
14724
|
+
...triggerProps,
|
|
14725
|
+
children: label
|
|
14726
|
+
}), /*#__PURE__*/jsx(Menu.Popover, {
|
|
14727
|
+
...popoverProps,
|
|
14728
|
+
children: /*#__PURE__*/jsx(Menu.List, {
|
|
14729
|
+
children: children
|
|
14730
|
+
})
|
|
14731
|
+
})]
|
|
14732
|
+
});
|
|
14733
|
+
};
|
|
14734
|
+
|
|
14735
|
+
/**
|
|
14736
|
+
* CSS selector for menu items (inner focusable element). Includes disabled items: per
|
|
14737
|
+
* WAI-ARIA APG they stay focusable so AT announces them; click is no-op'd via `aria-disabled`.
|
|
14738
|
+
*/
|
|
14739
|
+
const MENU_ITEM_SELECTOR = '[data-menu-item]';
|
|
14740
|
+
|
|
14741
|
+
/** Get an item's text label (trimmed `textContent`) for typeahead matching. */
|
|
14742
|
+
function getItemText(item) {
|
|
14743
|
+
return item.textContent?.trim() ?? '';
|
|
14744
|
+
}
|
|
14745
|
+
|
|
14746
|
+
/** Get all item elements within a menu container, in DOM order (includes disabled). */
|
|
14747
|
+
function getItems(menu) {
|
|
14748
|
+
return Array.from(menu.querySelectorAll(MENU_ITEM_SELECTOR));
|
|
14749
|
+
}
|
|
14750
|
+
|
|
14751
|
+
/**
|
|
14752
|
+
* Find and focus the next sequential focusable element after the given trigger
|
|
14753
|
+
* in document tab order. Used by Tab-at-last-item to move focus forward past
|
|
14754
|
+
* the (now-closed) menu.
|
|
14755
|
+
*/
|
|
14756
|
+
function moveFocusAfterTrigger(trigger) {
|
|
14757
|
+
const allFocusable = Array.from(document.querySelectorAll(TABBABLE_ELEMENTS_SELECTOR)).filter(el => !el.matches(DISABLED_SELECTOR) && el.tabIndex >= 0);
|
|
14758
|
+
const triggerIdx = allFocusable.indexOf(trigger);
|
|
14759
|
+
if (triggerIdx === -1) return;
|
|
14760
|
+
const next = allFocusable[triggerIdx + 1];
|
|
14761
|
+
next?.focus();
|
|
14762
|
+
}
|
|
14763
|
+
|
|
14764
|
+
/**
|
|
14765
|
+
* Set up a disclosure-pattern menu handle.
|
|
14766
|
+
*
|
|
14767
|
+
* The trigger is registered separately via {@link MenuHandle.registerTrigger}
|
|
14768
|
+
* once the trigger mounts. The menu container is registered separately via
|
|
14769
|
+
* {@link MenuHandle.registerMenu} once on mount — the popover uses
|
|
14770
|
+
* `closeMode="hide"` so the `<ul>` stays in the DOM at all times.
|
|
14771
|
+
*
|
|
14772
|
+
* IMPORTANT: this is the **disclosure widget** pattern, NOT WAI-ARIA's
|
|
14773
|
+
* `role="menu"`. Items are native `<button>` / `<a>` elements with `tabindex="0"`,
|
|
14774
|
+
* so screen readers announce them naturally and Tab navigates between them in
|
|
14775
|
+
* DOM order. There is no focus trap.
|
|
14776
|
+
*
|
|
14777
|
+
* @param options Options (menuId for `aria-controls`).
|
|
14778
|
+
* @returns A {@link MenuHandle} for interacting with the menu.
|
|
14779
|
+
*/
|
|
14780
|
+
function setupMenu(options = {}) {
|
|
14781
|
+
const {
|
|
14782
|
+
menuId
|
|
14783
|
+
} = options;
|
|
14784
|
+
let trigger = null;
|
|
14785
|
+
let menu = null;
|
|
14786
|
+
let isOpenState = false;
|
|
14787
|
+
|
|
14788
|
+
/** Handle-lifetime abort controller (typeahead, etc.). */
|
|
14789
|
+
const handleAbort = new AbortController();
|
|
14790
|
+
/** Per-registration controller for trigger listeners. */
|
|
14791
|
+
let triggerAbort = null;
|
|
14792
|
+
/** Per-registration controller for menu list listeners. */
|
|
14793
|
+
let menuAbort = null;
|
|
14794
|
+
/** List focus nav controller */
|
|
14795
|
+
let focusNav = null;
|
|
14796
|
+
/** Menu handle */
|
|
14797
|
+
let handle;
|
|
14798
|
+
|
|
14799
|
+
/**
|
|
14800
|
+
* Shared typeahead controller (handle lifetime). Shared between the trigger and the
|
|
14801
|
+
* menu list so a character typed on the closed trigger lands in the same buffer that
|
|
14802
|
+
* in-menu typing reads.
|
|
14803
|
+
*/
|
|
14804
|
+
const typeahead = createTypeahead(() => menu ? createSelectorTreeWalker(menu, MENU_ITEM_SELECTOR) : null, getItemText, handleAbort.signal);
|
|
14805
|
+
const subscribers = {
|
|
14806
|
+
open: new Set()
|
|
14807
|
+
};
|
|
14808
|
+
function notify(event, value) {
|
|
14809
|
+
subscribers[event].forEach(cb => cb(value));
|
|
14810
|
+
}
|
|
14811
|
+
|
|
14812
|
+
/** Open the menu (if not already open), then navigate */
|
|
14813
|
+
function openAndGoTo(resolve) {
|
|
14814
|
+
if (!isOpenState) handle.setOpen(true);
|
|
14815
|
+
focusNav?.goTo(resolve);
|
|
14816
|
+
}
|
|
14817
|
+
|
|
14818
|
+
/**
|
|
14819
|
+
* Accumulate a printable key into the shared typeahead buffer, then navigate to the
|
|
14820
|
+
* matching item using `goToItem` (immediate, for use inside the open menu).
|
|
14821
|
+
* Returns the matched item, or `null` when nothing matches.
|
|
14822
|
+
*/
|
|
14823
|
+
function handleTypeaheadInMenu(key, currentItem) {
|
|
14824
|
+
const match = typeahead.handle(key, currentItem);
|
|
14825
|
+
if (match) focusNav?.goTo(() => match);
|
|
14826
|
+
return match;
|
|
14827
|
+
}
|
|
14828
|
+
handle = {
|
|
14829
|
+
get trigger() {
|
|
14830
|
+
return trigger;
|
|
14831
|
+
},
|
|
14832
|
+
setOpen(open) {
|
|
14833
|
+
if (isOpenState === open) return;
|
|
14834
|
+
isOpenState = open;
|
|
14835
|
+
if (trigger) trigger.setAttribute('aria-expanded', String(open));
|
|
14836
|
+
notify('open', open);
|
|
14837
|
+
},
|
|
14838
|
+
registerTrigger(el) {
|
|
14839
|
+
if (trigger && trigger !== el) {
|
|
14840
|
+
triggerAbort?.abort();
|
|
14841
|
+
triggerAbort = null;
|
|
14842
|
+
}
|
|
14843
|
+
trigger = el;
|
|
14844
|
+
triggerAbort = new AbortController();
|
|
14845
|
+
const {
|
|
14846
|
+
signal
|
|
14847
|
+
} = triggerAbort;
|
|
14848
|
+
|
|
14849
|
+
// Set ARIA attributes.
|
|
14850
|
+
trigger.setAttribute('aria-haspopup', 'true');
|
|
14851
|
+
trigger.setAttribute('aria-expanded', String(isOpenState));
|
|
14852
|
+
if (menuId) trigger.setAttribute('aria-controls', menuId);
|
|
14853
|
+
|
|
14854
|
+
// Click toggles the menu. When opening via click, focus the first item.
|
|
14855
|
+
trigger.addEventListener('click', () => {
|
|
14856
|
+
if (!isOpenState) {
|
|
14857
|
+
openAndGoTo(n => n.getFirst());
|
|
14858
|
+
} else {
|
|
14859
|
+
handle.setOpen(false);
|
|
14860
|
+
}
|
|
14861
|
+
}, {
|
|
14862
|
+
signal
|
|
14863
|
+
});
|
|
14864
|
+
|
|
14865
|
+
// Native `<button>` fires `click` on Enter/Space; other elements (Chip, role="button",
|
|
14866
|
+
// href-less `<a>`, …) don't, so we fire it manually.
|
|
14867
|
+
const needsManualActivation = trigger.tagName !== 'BUTTON';
|
|
14868
|
+
trigger.addEventListener('keydown', event => {
|
|
14869
|
+
switch (event.key) {
|
|
14870
|
+
case 'ArrowDown':
|
|
14871
|
+
event.preventDefault();
|
|
14872
|
+
event.stopPropagation();
|
|
14873
|
+
openAndGoTo(n => n.getFirst());
|
|
14874
|
+
break;
|
|
14875
|
+
case 'ArrowUp':
|
|
14876
|
+
event.preventDefault();
|
|
14877
|
+
event.stopPropagation();
|
|
14878
|
+
openAndGoTo(n => n.getLast());
|
|
14879
|
+
break;
|
|
14880
|
+
case 'Enter':
|
|
14881
|
+
case ' ':
|
|
14882
|
+
// Native <button> already fires `click` on Enter/Space → skip to avoid double-toggle.
|
|
14883
|
+
if (!needsManualActivation) break;
|
|
14884
|
+
event.preventDefault();
|
|
14885
|
+
event.stopPropagation();
|
|
14886
|
+
el.click();
|
|
14887
|
+
break;
|
|
14888
|
+
default:
|
|
14889
|
+
// Printable char on closed trigger → open menu, focus matching item.
|
|
14890
|
+
// When open, the list-side handler owns typeahead (skip here to avoid
|
|
14891
|
+
// double-buffering the char).
|
|
14892
|
+
if (!isOpenState && isPrintableKey(event)) {
|
|
14893
|
+
event.preventDefault();
|
|
14894
|
+
event.stopPropagation();
|
|
14895
|
+
// Buffer the char; items don't exist yet, matches on flushPendingNavigation
|
|
14896
|
+
typeahead.handle(event.key, null);
|
|
14897
|
+
focusNav?.goTo(n => typeahead.rematch(n.activeItem) ?? n.getFirst());
|
|
14898
|
+
handle.setOpen(true);
|
|
14899
|
+
}
|
|
14900
|
+
break;
|
|
14901
|
+
}
|
|
14902
|
+
}, {
|
|
14903
|
+
signal
|
|
14904
|
+
});
|
|
14905
|
+
return () => {
|
|
14906
|
+
if (trigger === el) {
|
|
14907
|
+
triggerAbort?.abort();
|
|
14908
|
+
triggerAbort = null;
|
|
14909
|
+
trigger = null;
|
|
14910
|
+
}
|
|
14911
|
+
};
|
|
14912
|
+
},
|
|
14913
|
+
registerMenu(el) {
|
|
14914
|
+
if (menu && menu !== el) {
|
|
14915
|
+
menuAbort?.abort();
|
|
14916
|
+
menuAbort = null;
|
|
14917
|
+
}
|
|
14918
|
+
menu = el;
|
|
14919
|
+
menuAbort = new AbortController();
|
|
14920
|
+
const {
|
|
14921
|
+
signal
|
|
14922
|
+
} = menuAbort;
|
|
14923
|
+
|
|
14924
|
+
// ── Focus navigation ──────────────────────────────────
|
|
14925
|
+
focusNav = createListFocusNavigation({
|
|
14926
|
+
container: menu,
|
|
14927
|
+
itemSelector: MENU_ITEM_SELECTOR,
|
|
14928
|
+
wrap: true,
|
|
14929
|
+
getActiveItem: () => {
|
|
14930
|
+
const active = document.activeElement;
|
|
14931
|
+
if (!active || !el.contains(active)) return null;
|
|
14932
|
+
return active;
|
|
14933
|
+
}
|
|
14934
|
+
}, {
|
|
14935
|
+
onActivate: item => {
|
|
14936
|
+
item.focus({
|
|
14937
|
+
preventScroll: false
|
|
14938
|
+
});
|
|
14939
|
+
},
|
|
14940
|
+
onDeactivate: () => {
|
|
14941
|
+
// No-op — focus moves naturally via item.focus().
|
|
14942
|
+
},
|
|
14943
|
+
onClear: () => {
|
|
14944
|
+
// No-op.
|
|
14945
|
+
}
|
|
14946
|
+
}, signal);
|
|
14947
|
+
|
|
14948
|
+
// ── Keyboard handlers ─────────────────────────────────
|
|
14949
|
+
menu.addEventListener('keydown', event => {
|
|
14950
|
+
// Modifier+key combos other than Shift+Tab should pass through.
|
|
14951
|
+
if (event.altKey || event.ctrlKey || event.metaKey) return;
|
|
14952
|
+
switch (event.key) {
|
|
14953
|
+
case 'ArrowDown':
|
|
14954
|
+
event.preventDefault();
|
|
14955
|
+
event.stopPropagation();
|
|
14956
|
+
focusNav?.goDown();
|
|
14957
|
+
break;
|
|
14958
|
+
case 'ArrowUp':
|
|
14959
|
+
event.preventDefault();
|
|
14960
|
+
event.stopPropagation();
|
|
14961
|
+
focusNav?.goUp();
|
|
14962
|
+
break;
|
|
14963
|
+
case 'Home':
|
|
14964
|
+
event.preventDefault();
|
|
14965
|
+
event.stopPropagation();
|
|
14966
|
+
focusNav?.goTo(s => s.getFirst());
|
|
14967
|
+
break;
|
|
14968
|
+
case 'End':
|
|
14969
|
+
event.preventDefault();
|
|
14970
|
+
event.stopPropagation();
|
|
14971
|
+
focusNav?.goTo(s => s.getLast());
|
|
14972
|
+
break;
|
|
14973
|
+
case 'Escape':
|
|
14974
|
+
event.preventDefault();
|
|
14975
|
+
event.stopPropagation();
|
|
14976
|
+
// Focus trigger before closing: with closeMode="hide" items unmount,
|
|
14977
|
+
// which would otherwise leave focus on body.
|
|
14978
|
+
trigger?.focus();
|
|
14979
|
+
handle.setOpen(false);
|
|
14980
|
+
break;
|
|
14981
|
+
case 'Tab':
|
|
14982
|
+
{
|
|
14983
|
+
// Tab-at-edge: close menu and move focus manually. The popover stays
|
|
14984
|
+
// mounted (closeMode="hide") but items unmount on close, so the focused
|
|
14985
|
+
// item disappears before the browser resolves the next tab stop. Blur the
|
|
14986
|
+
// active item (so Popover skips focus-restore), close, then move focus
|
|
14987
|
+
// forward (Tab) or to the trigger (Shift+Tab).
|
|
14988
|
+
const items = getItems(el);
|
|
14989
|
+
if (items.length === 0) return;
|
|
14990
|
+
const idx = items.indexOf(document.activeElement);
|
|
14991
|
+
if (idx === -1) return;
|
|
14992
|
+
if (event.shiftKey && idx === 0) {
|
|
14993
|
+
event.preventDefault();
|
|
14994
|
+
// Focus trigger explicitly for deterministic timing.
|
|
14995
|
+
trigger?.focus();
|
|
14996
|
+
handle.setOpen(false);
|
|
14997
|
+
} else if (!event.shiftKey && idx === items.length - 1) {
|
|
14998
|
+
event.preventDefault();
|
|
14999
|
+
// Blur active item so focusAnchorOnClose won't kick in.
|
|
15000
|
+
document.activeElement?.blur();
|
|
15001
|
+
handle.setOpen(false);
|
|
15002
|
+
// After unmount, focus the next element after the trigger.
|
|
15003
|
+
setTimeout(() => {
|
|
15004
|
+
if (trigger) moveFocusAfterTrigger(trigger);
|
|
15005
|
+
}, 0);
|
|
15006
|
+
}
|
|
15007
|
+
break;
|
|
15008
|
+
}
|
|
15009
|
+
default:
|
|
15010
|
+
// Printable characters → typeahead among visible items, navigate immediately.
|
|
15011
|
+
if (isPrintableKey(event)) {
|
|
15012
|
+
const active = document.activeElement;
|
|
15013
|
+
const currentItem = active && el.contains(active) ? active : null;
|
|
15014
|
+
const match = handleTypeaheadInMenu(event.key, currentItem);
|
|
15015
|
+
if (match) {
|
|
15016
|
+
event.preventDefault();
|
|
15017
|
+
event.stopPropagation();
|
|
15018
|
+
}
|
|
15019
|
+
}
|
|
15020
|
+
break;
|
|
15021
|
+
}
|
|
15022
|
+
}, {
|
|
15023
|
+
signal
|
|
15024
|
+
});
|
|
15025
|
+
return () => {
|
|
15026
|
+
if (menu === el) {
|
|
15027
|
+
menuAbort?.abort();
|
|
15028
|
+
menuAbort = null;
|
|
15029
|
+
menu = null;
|
|
15030
|
+
}
|
|
15031
|
+
};
|
|
15032
|
+
},
|
|
15033
|
+
flushPendingNavigation() {
|
|
15034
|
+
focusNav?.flushPendingNavigation();
|
|
15035
|
+
},
|
|
15036
|
+
subscribe(event, listener) {
|
|
15037
|
+
subscribers[event].add(listener);
|
|
15038
|
+
return () => {
|
|
15039
|
+
subscribers[event].delete(listener);
|
|
15040
|
+
};
|
|
15041
|
+
},
|
|
15042
|
+
destroy() {
|
|
15043
|
+
handleAbort.abort();
|
|
15044
|
+
triggerAbort?.abort();
|
|
15045
|
+
menuAbort?.abort();
|
|
15046
|
+
triggerAbort = null;
|
|
15047
|
+
menuAbort = null;
|
|
15048
|
+
trigger = null;
|
|
15049
|
+
menu = null;
|
|
15050
|
+
isOpenState = false;
|
|
15051
|
+
for (const set of Object.values(subscribers)) {
|
|
15052
|
+
set.clear();
|
|
15053
|
+
}
|
|
15054
|
+
}
|
|
15055
|
+
};
|
|
15056
|
+
return handle;
|
|
15057
|
+
}
|
|
15058
|
+
|
|
15059
|
+
/** Context value shared between Menu sub-components. */
|
|
15060
|
+
|
|
15061
|
+
const MenuContext = /*#__PURE__*/createContext(undefined);
|
|
15062
|
+
|
|
15063
|
+
/** Use Menu context. @throws if used outside `Menu.Provider`. */
|
|
15064
|
+
function useMenuContext() {
|
|
15065
|
+
const context = useContext(MenuContext);
|
|
15066
|
+
if (!context) {
|
|
15067
|
+
throw new Error('Menu sub-components must be used within a Menu.Provider');
|
|
15068
|
+
}
|
|
15069
|
+
return context;
|
|
15070
|
+
}
|
|
15071
|
+
|
|
15072
|
+
/**
|
|
15073
|
+
* MenuProvider component.
|
|
15074
|
+
*
|
|
15075
|
+
* @param props Component props.
|
|
15076
|
+
* @return React element.
|
|
15077
|
+
*/
|
|
15078
|
+
function MenuProvider(props) {
|
|
15079
|
+
const {
|
|
15080
|
+
children,
|
|
15081
|
+
onOpen
|
|
15082
|
+
} = props;
|
|
15083
|
+
const menuId = useId();
|
|
15084
|
+
const triggerId = useId();
|
|
15085
|
+
const anchorRef = useRef(null);
|
|
15086
|
+
const handle = useMemo(() => setupMenu({
|
|
15087
|
+
menuId
|
|
15088
|
+
}), [menuId]);
|
|
15089
|
+
|
|
15090
|
+
// Forward 'open' events to the consumer callback via a ref to avoid stale closures.
|
|
15091
|
+
const onOpenRef = useRef(onOpen);
|
|
15092
|
+
onOpenRef.current = onOpen;
|
|
15093
|
+
useEffect(() => {
|
|
15094
|
+
const unsubscribe = handle.subscribe('open', isOpen => onOpenRef.current?.(isOpen));
|
|
15095
|
+
// Cleanup
|
|
15096
|
+
return () => {
|
|
15097
|
+
unsubscribe();
|
|
15098
|
+
handle.destroy();
|
|
15099
|
+
};
|
|
15100
|
+
}, [handle]);
|
|
15101
|
+
const contextValue = useMemo(() => ({
|
|
15102
|
+
handle,
|
|
15103
|
+
menuId,
|
|
15104
|
+
triggerId,
|
|
15105
|
+
anchorRef
|
|
15106
|
+
}), [handle, menuId, triggerId]);
|
|
15107
|
+
return /*#__PURE__*/jsx(MenuContext.Provider, {
|
|
15108
|
+
value: contextValue,
|
|
15109
|
+
children: children
|
|
15110
|
+
});
|
|
15111
|
+
}
|
|
15112
|
+
MenuProvider.displayName = 'Menu.Provider';
|
|
15113
|
+
|
|
15114
|
+
const COMPONENT_NAME$I = 'MenuTrigger';
|
|
15115
|
+
const CLASSNAME$J = 'lumx-menu-trigger';
|
|
15116
|
+
|
|
15117
|
+
/** MenuTrigger core template. Renders `Trigger` with disclosure ARIA attributes. */
|
|
15118
|
+
const MenuTrigger$1 = (props, {
|
|
15119
|
+
Trigger
|
|
15120
|
+
}) => {
|
|
15121
|
+
const {
|
|
15122
|
+
children,
|
|
15123
|
+
className,
|
|
15124
|
+
menuId,
|
|
15125
|
+
isOpen,
|
|
15126
|
+
ref,
|
|
15127
|
+
...forwardedProps
|
|
15128
|
+
} = props;
|
|
15129
|
+
return /*#__PURE__*/jsx(Trigger, {
|
|
15130
|
+
ref: ref,
|
|
15131
|
+
...forwardedProps,
|
|
15132
|
+
className: classnames(className, CLASSNAME$J),
|
|
15133
|
+
"aria-haspopup": "true",
|
|
15134
|
+
"aria-controls": menuId,
|
|
15135
|
+
"aria-expanded": isOpen ? 'true' : 'false',
|
|
15136
|
+
children: children
|
|
15137
|
+
});
|
|
15138
|
+
};
|
|
15139
|
+
|
|
15140
|
+
/**
|
|
15141
|
+
* Subscribe to a menu event via the handle's subscriber system.
|
|
15142
|
+
* Re-subscribes when the handle changes (e.g. trigger mount/unmount).
|
|
15143
|
+
*
|
|
15144
|
+
* @param event Event name to subscribe to.
|
|
15145
|
+
* @param initialValue Initial value used until the first event fires.
|
|
15146
|
+
* @returns The latest event payload (or `initialValue`).
|
|
15147
|
+
*/
|
|
15148
|
+
function useMenuEvent(event, initialValue) {
|
|
15149
|
+
const {
|
|
15150
|
+
handle
|
|
15151
|
+
} = useMenuContext();
|
|
15152
|
+
const [value, setValue] = useState(initialValue);
|
|
15153
|
+
useEffect(() => {
|
|
15154
|
+
return handle.subscribe(event, setValue);
|
|
15155
|
+
}, [handle, event]);
|
|
15156
|
+
return value;
|
|
15157
|
+
}
|
|
15158
|
+
|
|
15159
|
+
/**
|
|
15160
|
+
* Subscribe to the menu open state.
|
|
15161
|
+
*
|
|
15162
|
+
* @returns `[isOpen, setIsOpen]` — open state and a setter that proxies to `handle.setOpen`.
|
|
15163
|
+
*/
|
|
15164
|
+
function useMenuOpen() {
|
|
15165
|
+
const {
|
|
15166
|
+
handle
|
|
15167
|
+
} = useMenuContext();
|
|
15168
|
+
const isOpen = useMenuEvent('open', false);
|
|
15169
|
+
const setIsOpen = useCallback(open => handle.setOpen(open), [handle]);
|
|
15170
|
+
return [isOpen, setIsOpen];
|
|
15171
|
+
}
|
|
15172
|
+
|
|
15173
|
+
/** MenuTrigger props. Polymorphic */
|
|
15174
|
+
|
|
15175
|
+
/**
|
|
15176
|
+
* MenuTrigger component.
|
|
15177
|
+
*
|
|
15178
|
+
* @param props Component props.
|
|
15179
|
+
* @return React element.
|
|
15180
|
+
*/
|
|
15181
|
+
const MenuTrigger = Object.assign(forwardRefPolymorphic((props, ref) => {
|
|
15182
|
+
const {
|
|
15183
|
+
menuId,
|
|
15184
|
+
triggerId,
|
|
15185
|
+
anchorRef,
|
|
15186
|
+
handle
|
|
15187
|
+
} = useMenuContext();
|
|
15188
|
+
const [isOpen] = useMenuOpen();
|
|
15189
|
+
const {
|
|
15190
|
+
as,
|
|
15191
|
+
children,
|
|
15192
|
+
...triggerProps
|
|
15193
|
+
} = props;
|
|
15194
|
+
const TriggerComp = as ?? Button;
|
|
15195
|
+
const internalRef = useRef(null);
|
|
15196
|
+
const mergedRef = useMergeRefs(ref, internalRef, anchorRef);
|
|
15197
|
+
|
|
15198
|
+
// Register trigger with the handle on mount; clean up on unmount.
|
|
15199
|
+
useEffect(() => {
|
|
15200
|
+
const triggerEl = internalRef.current;
|
|
15201
|
+
if (!triggerEl) return undefined;
|
|
15202
|
+
return handle.registerTrigger(triggerEl);
|
|
15203
|
+
}, [handle]);
|
|
15204
|
+
return MenuTrigger$1({
|
|
15205
|
+
...triggerProps,
|
|
15206
|
+
id: triggerProps.id ?? triggerId,
|
|
15207
|
+
menuId,
|
|
15208
|
+
isOpen,
|
|
15209
|
+
ref: mergedRef,
|
|
15210
|
+
children
|
|
15211
|
+
}, {
|
|
15212
|
+
Trigger: TriggerComp
|
|
15213
|
+
});
|
|
15214
|
+
}), {
|
|
15215
|
+
displayName: COMPONENT_NAME$I,
|
|
15216
|
+
className: CLASSNAME$J
|
|
15217
|
+
});
|
|
15218
|
+
|
|
15219
|
+
const COMPONENT_NAME$H = 'MenuPopover';
|
|
15220
|
+
const CLASSNAME$I = 'lumx-menu-popover';
|
|
15221
|
+
const {
|
|
15222
|
+
block: block$z,
|
|
15223
|
+
element: element$q
|
|
15224
|
+
} = bem(CLASSNAME$I);
|
|
15225
|
+
|
|
15226
|
+
/** MenuPopover core template. Renders a `Popover` with menu-friendly defaults. */
|
|
15227
|
+
const MenuPopover$1 = (props, {
|
|
15228
|
+
Popover,
|
|
15229
|
+
FlexBox
|
|
15230
|
+
}) => {
|
|
15231
|
+
const {
|
|
15232
|
+
children,
|
|
15233
|
+
className,
|
|
15234
|
+
isOpen,
|
|
15235
|
+
placement = 'bottom-start',
|
|
15236
|
+
anchorRef,
|
|
15237
|
+
handleClose,
|
|
15238
|
+
closeOnClickAway = true,
|
|
15239
|
+
closeOnEscape = true,
|
|
15240
|
+
usePortal = false,
|
|
15241
|
+
focusAnchorOnClose = true,
|
|
15242
|
+
...forwardedProps
|
|
15243
|
+
} = props;
|
|
15244
|
+
return /*#__PURE__*/jsx(Popover, {
|
|
15245
|
+
...forwardedProps,
|
|
15246
|
+
placement: placement,
|
|
15247
|
+
anchorRef: anchorRef,
|
|
15248
|
+
isOpen: isOpen,
|
|
15249
|
+
onClose: handleClose,
|
|
15250
|
+
closeOnClickAway: closeOnClickAway,
|
|
15251
|
+
closeOnEscape: closeOnEscape,
|
|
15252
|
+
usePortal: usePortal,
|
|
15253
|
+
focusAnchorOnClose: focusAnchorOnClose,
|
|
15254
|
+
withFocusTrap: false,
|
|
15255
|
+
closeMode: "hide",
|
|
15256
|
+
fitToAnchorWidth: false,
|
|
15257
|
+
className: block$z([className]),
|
|
15258
|
+
children: /*#__PURE__*/jsx(FlexBox, {
|
|
15259
|
+
orientation: "vertical",
|
|
15260
|
+
className: element$q('scroll'),
|
|
15261
|
+
children: children
|
|
15262
|
+
})
|
|
15263
|
+
});
|
|
15264
|
+
};
|
|
15265
|
+
|
|
15266
|
+
/** Popover props forwarded to the inner Popover (minus managed props). */
|
|
15267
|
+
|
|
15268
|
+
/** MenusPopover props. */
|
|
15269
|
+
|
|
15270
|
+
/**
|
|
15271
|
+
* MenuPopover component.
|
|
15272
|
+
*
|
|
15273
|
+
* @param props Component props.
|
|
15274
|
+
* @return React element.
|
|
15275
|
+
*/
|
|
15276
|
+
const MenuPopover = props => {
|
|
15277
|
+
const {
|
|
15278
|
+
anchorRef
|
|
15279
|
+
} = useMenuContext();
|
|
15280
|
+
const [isOpen, setIsOpen] = useMenuOpen();
|
|
15281
|
+
const {
|
|
15282
|
+
children,
|
|
15283
|
+
...popoverProps
|
|
15284
|
+
} = props;
|
|
15285
|
+
return MenuPopover$1({
|
|
15286
|
+
...popoverProps,
|
|
15287
|
+
children,
|
|
15288
|
+
isOpen,
|
|
15289
|
+
anchorRef,
|
|
15290
|
+
handleClose: () => setIsOpen(false)
|
|
15291
|
+
}, {
|
|
15292
|
+
Popover,
|
|
15293
|
+
FlexBox
|
|
15294
|
+
});
|
|
15295
|
+
};
|
|
15296
|
+
MenuPopover.displayName = COMPONENT_NAME$H;
|
|
15297
|
+
MenuPopover.className = CLASSNAME$I;
|
|
15298
|
+
|
|
15299
|
+
/** Menu list props. */
|
|
15300
|
+
|
|
15301
|
+
const COMPONENT_NAME$G = 'Menu';
|
|
15302
|
+
const CLASSNAME$H = 'lumx-menu';
|
|
15303
|
+
|
|
15304
|
+
/** MenuList core template. Wraps `List` with menu-specific class and ARIA labelling. */
|
|
15305
|
+
const MenuList$1 = props => {
|
|
15306
|
+
const {
|
|
15307
|
+
'aria-labelledby': ariaLabelledby,
|
|
15308
|
+
children,
|
|
15309
|
+
className,
|
|
15310
|
+
id,
|
|
15311
|
+
ref,
|
|
15312
|
+
...rest
|
|
15313
|
+
} = props;
|
|
15314
|
+
return List$1({
|
|
15315
|
+
...rest,
|
|
15316
|
+
ref,
|
|
15317
|
+
id,
|
|
15318
|
+
className: classnames(className, CLASSNAME$H),
|
|
15319
|
+
itemPadding: 'big',
|
|
15320
|
+
'aria-labelledby': ariaLabelledby,
|
|
15321
|
+
children
|
|
15322
|
+
});
|
|
15323
|
+
};
|
|
15324
|
+
|
|
15325
|
+
/**
|
|
15326
|
+
* MenuList component.
|
|
15327
|
+
*
|
|
15328
|
+
* @param props Component props.
|
|
15329
|
+
* @return React element.
|
|
15330
|
+
*/
|
|
15331
|
+
const MenuList = forwardRef((props, ref) => {
|
|
15332
|
+
const {
|
|
15333
|
+
menuId,
|
|
15334
|
+
triggerId,
|
|
15335
|
+
handle
|
|
15336
|
+
} = useMenuContext();
|
|
15337
|
+
const internalRef = useRef(null);
|
|
15338
|
+
const mergedRef = useMergeRefs(ref, internalRef);
|
|
15339
|
+
const {
|
|
15340
|
+
children,
|
|
15341
|
+
...forwardedProps
|
|
15342
|
+
} = props;
|
|
15343
|
+
const [isOpen] = useMenuOpen();
|
|
15344
|
+
|
|
15345
|
+
// Register menu in context
|
|
15346
|
+
useLayoutEffect(() => {
|
|
15347
|
+
const menu = internalRef.current;
|
|
15348
|
+
if (!menu) return undefined;
|
|
15349
|
+
return handle.registerMenu(menu);
|
|
15350
|
+
}, [handle]);
|
|
15351
|
+
|
|
15352
|
+
// Flush pending navigation (that could not be done when the menu was closed)
|
|
15353
|
+
useLayoutEffect(() => {
|
|
15354
|
+
if (isOpen) handle.flushPendingNavigation();
|
|
15355
|
+
}, [handle, isOpen]);
|
|
15356
|
+
return MenuList$1({
|
|
15357
|
+
...forwardedProps,
|
|
15358
|
+
id: menuId,
|
|
15359
|
+
'aria-labelledby': triggerId,
|
|
15360
|
+
ref: mergedRef,
|
|
15361
|
+
children: isOpen ? children : null
|
|
15362
|
+
});
|
|
15363
|
+
});
|
|
15364
|
+
MenuList.displayName = COMPONENT_NAME$G;
|
|
15365
|
+
MenuList.className = CLASSNAME$H;
|
|
15366
|
+
|
|
15367
|
+
const Menu = {
|
|
15368
|
+
Provider: MenuProvider,
|
|
15369
|
+
Trigger: MenuTrigger,
|
|
15370
|
+
Popover: MenuPopover,
|
|
15371
|
+
List: MenuList
|
|
15372
|
+
};
|
|
15373
|
+
|
|
15374
|
+
/** Keys managed by MenuButton — omitted from the polymorphic trigger props. */
|
|
15375
|
+
|
|
15376
|
+
/** Polymorphic trigger props with index signature stripped and managed keys removed. */
|
|
15377
|
+
|
|
15378
|
+
/** Menu button props */
|
|
15379
|
+
|
|
15380
|
+
/**
|
|
15381
|
+
* MenuButton component.
|
|
15382
|
+
*
|
|
15383
|
+
* @param props Component props.
|
|
15384
|
+
* @return React element.
|
|
15385
|
+
*/
|
|
15386
|
+
const MenuButton = Object.assign(forwardRefPolymorphic((props, ref) => {
|
|
15387
|
+
const {
|
|
15388
|
+
label,
|
|
15389
|
+
children,
|
|
15390
|
+
popoverProps,
|
|
15391
|
+
onOpen,
|
|
15392
|
+
as,
|
|
15393
|
+
...triggerProps
|
|
15394
|
+
} = props;
|
|
15395
|
+
const isIconButton = as === IconButton;
|
|
15396
|
+
const triggerLabel = isIconButton ? undefined : label;
|
|
15397
|
+
const extraTriggerProps = isIconButton ? {
|
|
15398
|
+
label
|
|
15399
|
+
} : {};
|
|
15400
|
+
return MenuButton$1({
|
|
15401
|
+
label: triggerLabel,
|
|
15402
|
+
children,
|
|
15403
|
+
popoverProps,
|
|
15404
|
+
onOpen,
|
|
15405
|
+
triggerProps: {
|
|
15406
|
+
...triggerProps,
|
|
15407
|
+
...extraTriggerProps,
|
|
15408
|
+
as,
|
|
15409
|
+
ref
|
|
15410
|
+
}
|
|
15411
|
+
}, {
|
|
15412
|
+
Menu
|
|
15413
|
+
});
|
|
15414
|
+
}), {
|
|
15415
|
+
displayName: COMPONENT_NAME$J
|
|
15416
|
+
});
|
|
15417
|
+
|
|
15418
|
+
/** MenuItem props. */
|
|
15419
|
+
|
|
15420
|
+
/** Props overridden by framework wrappers. */
|
|
15421
|
+
|
|
15422
|
+
const COMPONENT_NAME$F = 'MenuItem';
|
|
15423
|
+
const CLASSNAME$G = 'lumx-menu-item';
|
|
15424
|
+
const {
|
|
15425
|
+
block: block$y,
|
|
15426
|
+
element: element$p
|
|
15427
|
+
} = bem(CLASSNAME$G);
|
|
15428
|
+
|
|
15429
|
+
/** MenuItem core template. Renders a `ListItem` with a `ListItemAction`. */
|
|
15430
|
+
const MenuItem$1 = props => {
|
|
15431
|
+
const {
|
|
15432
|
+
children,
|
|
15433
|
+
className,
|
|
15434
|
+
before,
|
|
15435
|
+
after,
|
|
15436
|
+
isDisabled,
|
|
15437
|
+
handleClick,
|
|
15438
|
+
actionProps,
|
|
15439
|
+
actionRef,
|
|
15440
|
+
ref,
|
|
15441
|
+
...rest
|
|
15442
|
+
} = props;
|
|
15443
|
+
const actionElement = ListItemAction$1({
|
|
15444
|
+
as: 'button',
|
|
15445
|
+
type: 'button',
|
|
15446
|
+
...actionProps,
|
|
15447
|
+
ref: actionRef,
|
|
15448
|
+
className: element$p('action'),
|
|
15449
|
+
handleClick,
|
|
15450
|
+
'data-menu-item': '',
|
|
15451
|
+
'aria-disabled': isDisabled ? 'true' : undefined,
|
|
15452
|
+
children
|
|
15453
|
+
});
|
|
15454
|
+
return ListItem$1({
|
|
15455
|
+
ref,
|
|
15456
|
+
size: 'tiny',
|
|
15457
|
+
...rest,
|
|
15458
|
+
className: classnames(className, block$y()),
|
|
15459
|
+
before,
|
|
15460
|
+
after,
|
|
15461
|
+
children: actionElement
|
|
15462
|
+
});
|
|
15463
|
+
};
|
|
15464
|
+
|
|
15465
|
+
/**
|
|
15466
|
+
* MenuItem component.
|
|
15467
|
+
*
|
|
15468
|
+
* @param props Component props.
|
|
15469
|
+
* @return React element.
|
|
15470
|
+
*/
|
|
15471
|
+
const MenuItem = forwardRef((props, ref) => {
|
|
15472
|
+
const {
|
|
15473
|
+
handle
|
|
15474
|
+
} = useMenuContext();
|
|
15475
|
+
const {
|
|
15476
|
+
children,
|
|
15477
|
+
icon,
|
|
15478
|
+
color,
|
|
15479
|
+
before,
|
|
15480
|
+
after,
|
|
15481
|
+
isDisabled,
|
|
15482
|
+
onClick,
|
|
15483
|
+
actionProps,
|
|
15484
|
+
...rest
|
|
15485
|
+
} = props;
|
|
15486
|
+
const internalRef = useRef(null);
|
|
15487
|
+
const actionRef = useRef(null);
|
|
15488
|
+
const mergedRef = useMergeRefs(ref, internalRef);
|
|
15489
|
+
const handleClick = event => {
|
|
15490
|
+
if (isDisabled) {
|
|
15491
|
+
event.preventDefault();
|
|
15492
|
+
return;
|
|
15493
|
+
}
|
|
15494
|
+
onClick?.(event);
|
|
15495
|
+
if (!event.defaultPrevented) {
|
|
15496
|
+
// Focus the trigger before closing so focus restoration works with
|
|
15497
|
+
// closeMode="hide" (items unmount on close, leaving focus on body).
|
|
15498
|
+
handle.trigger?.focus();
|
|
15499
|
+
handle.setOpen(false);
|
|
15500
|
+
}
|
|
15501
|
+
};
|
|
15502
|
+
|
|
15503
|
+
// Prepend the optional `icon` to the `before` slot — consumer-supplied `before`
|
|
15504
|
+
// (if any) is rendered after the icon to preserve composability.
|
|
15505
|
+
const mergedBefore = icon ? /*#__PURE__*/jsxs(Fragment, {
|
|
15506
|
+
children: [/*#__PURE__*/jsx(Icon, {
|
|
15507
|
+
icon: icon,
|
|
15508
|
+
size: "xs",
|
|
15509
|
+
color: color
|
|
15510
|
+
}), before]
|
|
15511
|
+
}) : before;
|
|
15512
|
+
return MenuItem$1({
|
|
15513
|
+
...rest,
|
|
15514
|
+
ref: mergedRef,
|
|
15515
|
+
actionRef,
|
|
15516
|
+
before: mergedBefore,
|
|
15517
|
+
after,
|
|
15518
|
+
children: /*#__PURE__*/jsx(Text, {
|
|
15519
|
+
as: "span",
|
|
15520
|
+
color: color,
|
|
15521
|
+
children: children
|
|
15522
|
+
}),
|
|
15523
|
+
isDisabled,
|
|
15524
|
+
actionProps,
|
|
15525
|
+
handleClick
|
|
15526
|
+
});
|
|
15527
|
+
});
|
|
15528
|
+
MenuItem.displayName = COMPONENT_NAME$F;
|
|
15529
|
+
MenuItem.className = CLASSNAME$G;
|
|
14695
15530
|
|
|
14696
15531
|
/**
|
|
14697
15532
|
* Component display name.
|
|
@@ -17937,9 +18772,9 @@ const SkeletonTypography = forwardRef((props, ref) => {
|
|
|
17937
18772
|
...forwardedProps
|
|
17938
18773
|
});
|
|
17939
18774
|
});
|
|
17940
|
-
SkeletonTypography.displayName = COMPONENT_NAME$
|
|
18775
|
+
SkeletonTypography.displayName = COMPONENT_NAME$1b;
|
|
17941
18776
|
SkeletonTypography.defaultProps = DEFAULT_PROPS$j;
|
|
17942
|
-
SkeletonTypography.className = CLASSNAME$
|
|
18777
|
+
SkeletonTypography.className = CLASSNAME$19;
|
|
17943
18778
|
|
|
17944
18779
|
/**
|
|
17945
18780
|
* Clamp value in range.
|
|
@@ -21479,5 +22314,5 @@ UserBlock.displayName = COMPONENT_NAME;
|
|
|
21479
22314
|
UserBlock.className = CLASSNAME;
|
|
21480
22315
|
UserBlock.defaultProps = DEFAULT_PROPS;
|
|
21481
22316
|
|
|
21482
|
-
export { AlertDialog, Autocomplete, AutocompleteMultiple, Avatar, Badge, BadgeWrapper, Button, ButtonGroup, CLASSNAME$
|
|
22317
|
+
export { AlertDialog, Autocomplete, AutocompleteMultiple, Avatar, Badge, BadgeWrapper, Button, ButtonGroup, CLASSNAME$1w as CLASSNAME, COMPONENT_NAME$1y as COMPONENT_NAME, Checkbox, Chip, ChipGroup, Combobox, CommentBlock, CommentBlockVariant, DEFAULT_PROPS$1c as DEFAULT_PROPS, DatePicker, DatePickerControlled, DatePickerField, Dialog, Divider, DragHandle, Dropdown, ExpansionPanel, Flag, FlexBox, GenericBlock, GenericBlockGapSize, Grid, GridColumn, GridItem, Heading, HeadingLevelProvider, Icon, IconButton, ImageBlock, ImageBlockCaptionPosition, ImageLightbox, InlineList, InputHelper, InputLabel, Lightbox, Link, LinkPreview, List, ListDivider, ListItem, ListSection, ListSubheader, MenuButton, ListDivider as MenuDivider, MenuItem, Message, Mosaic, Navigation, Notification, Placement, Popover, PopoverDialog, PostBlock, Progress, ProgressCircular, ProgressLinear, ProgressTracker, ProgressTrackerProvider, ProgressTrackerStep, ProgressTrackerStepPanel, ProgressVariant, RadioButton, RadioGroup, RawInputText, RawInputTextarea, Select, SelectButton, SelectMultiple, SelectMultipleField, SelectTextField, SelectVariant, SelectionChipGroup, SideNavigation, SideNavigationItem, SkeletonCircle, SkeletonRectangle, SkeletonRectangleVariant, SkeletonTypography, Slider, Slides, Slideshow, SlideshowControls, SlideshowItem, Switch, CLASSNAME$3 as TIME_PICKER_FIELD_CLASSNAME, COMPONENT_NAME$2 as TIME_PICKER_FIELD_COMPONENT_NAME, Tab, TabList, TabListLayout, TabPanel, TabProvider, Table, TableBody, TableCell, TableCellVariant, TableHeader, TableRow, Text, TextField, ThOrder, ThemeProvider, Thumbnail, ThumbnailAspectRatio, ThumbnailObjectFit, ThumbnailVariant, TimePickerField, Toolbar, Tooltip, Uploader, UploaderVariant, UserBlock, clamp, useFocusPointStyle, useHeadingLevel, useTheme };
|
|
21483
22318
|
//# sourceMappingURL=index.js.map
|