@charcoal-ui/react 2.3.0 → 2.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/DropdownSelector/Divider.d.ts +4 -0
- package/dist/components/DropdownSelector/Divider.d.ts.map +1 -0
- package/dist/components/DropdownSelector/DropdownPopover.d.ts +13 -0
- package/dist/components/DropdownSelector/DropdownPopover.d.ts.map +1 -0
- package/dist/components/DropdownSelector/ListBoxSection.d.ts +7 -0
- package/dist/components/DropdownSelector/ListBoxSection.d.ts.map +1 -0
- package/dist/components/DropdownSelector/Listbox.d.ts +1 -1
- package/dist/components/DropdownSelector/Listbox.d.ts.map +1 -1
- package/dist/components/DropdownSelector/Option.d.ts +11 -0
- package/dist/components/DropdownSelector/Option.d.ts.map +1 -0
- package/dist/components/DropdownSelector/index.d.ts.map +1 -1
- package/dist/components/DropdownSelector/index.story.d.ts +3 -0
- package/dist/components/DropdownSelector/index.story.d.ts.map +1 -1
- package/dist/{index.cjs → index.cjs.js} +250 -184
- package/dist/index.cjs.js.map +1 -0
- package/dist/{index.js → index.esm.js} +203 -137
- package/dist/index.esm.js.map +1 -0
- package/dist/styled.d.ts +75 -73
- package/dist/styled.d.ts.map +1 -1
- package/package.json +24 -24
- package/src/components/DropdownSelector/Divider.tsx +13 -0
- package/src/components/DropdownSelector/DropdownPopover.tsx +72 -0
- package/src/components/DropdownSelector/ListBoxSection.tsx +60 -0
- package/src/components/DropdownSelector/Listbox.tsx +14 -75
- package/src/components/DropdownSelector/Option.tsx +66 -0
- package/src/components/DropdownSelector/index.story.tsx +118 -45
- package/src/components/DropdownSelector/index.tsx +8 -11
- package/src/components/TagItem/index.tsx +5 -3
- package/dist/components/DropdownSelector/Popover.d.ts +0 -10
- package/dist/components/DropdownSelector/Popover.d.ts.map +0 -1
- package/dist/index.cjs.map +0 -1
- package/dist/index.js.map +0 -1
- package/src/components/DropdownSelector/Popover.tsx +0 -46
|
@@ -57,7 +57,7 @@ __export(src_exports, {
|
|
|
57
57
|
module.exports = __toCommonJS(src_exports);
|
|
58
58
|
|
|
59
59
|
// src/core/ComponentAbstraction.tsx
|
|
60
|
-
var import_react = __toESM(require("react")
|
|
60
|
+
var import_react = __toESM(require("react"));
|
|
61
61
|
var DefaultLink = import_react.default.forwardRef(
|
|
62
62
|
function DefaultLink2({ to, children, ...rest }, ref) {
|
|
63
63
|
return /* @__PURE__ */ import_react.default.createElement("a", { href: to, ref, ...rest }, children);
|
|
@@ -87,7 +87,7 @@ var import_ssr = require("@react-aria/ssr");
|
|
|
87
87
|
var import_overlays = require("@react-aria/overlays");
|
|
88
88
|
|
|
89
89
|
// src/core/CharcoalProvider.tsx
|
|
90
|
-
var import_react2 = __toESM(require("react")
|
|
90
|
+
var import_react2 = __toESM(require("react"));
|
|
91
91
|
var import_styled_components = require("styled-components");
|
|
92
92
|
var import_styled = require("@charcoal-ui/styled");
|
|
93
93
|
function CharcoalProvider({
|
|
@@ -101,8 +101,8 @@ function CharcoalProvider({
|
|
|
101
101
|
}
|
|
102
102
|
|
|
103
103
|
// src/components/Button/index.tsx
|
|
104
|
-
var import_react4 = __toESM(require("react")
|
|
105
|
-
var import_styled_components4 = require("styled-components");
|
|
104
|
+
var import_react4 = __toESM(require("react"));
|
|
105
|
+
var import_styled_components4 = __toESM(require("styled-components"));
|
|
106
106
|
|
|
107
107
|
// src/_lib/index.ts
|
|
108
108
|
function unreachable(value) {
|
|
@@ -112,13 +112,13 @@ function unreachable(value) {
|
|
|
112
112
|
}
|
|
113
113
|
|
|
114
114
|
// src/styled.ts
|
|
115
|
-
var import_styled_components2 = require("styled-components");
|
|
115
|
+
var import_styled_components2 = __toESM(require("styled-components"));
|
|
116
116
|
var import_styled2 = require("@charcoal-ui/styled");
|
|
117
117
|
var theme = (0, import_styled2.createTheme)(import_styled_components2.default);
|
|
118
118
|
|
|
119
119
|
// src/components/Clickable/index.tsx
|
|
120
|
-
var import_react3 = __toESM(require("react")
|
|
121
|
-
var import_styled_components3 = require("styled-components");
|
|
120
|
+
var import_react3 = __toESM(require("react"));
|
|
121
|
+
var import_styled_components3 = __toESM(require("styled-components"));
|
|
122
122
|
var import_utils = require("@charcoal-ui/utils");
|
|
123
123
|
var Clickable = import_react3.default.forwardRef(
|
|
124
124
|
function Clickable2(props, ref) {
|
|
@@ -288,8 +288,8 @@ function sizeToProps(size) {
|
|
|
288
288
|
}
|
|
289
289
|
|
|
290
290
|
// src/components/IconButton/index.tsx
|
|
291
|
-
var import_react5 = __toESM(require("react")
|
|
292
|
-
var import_styled_components5 = require("styled-components");
|
|
291
|
+
var import_react5 = __toESM(require("react"));
|
|
292
|
+
var import_styled_components5 = __toESM(require("styled-components"));
|
|
293
293
|
var IconButton = import_react5.default.forwardRef(
|
|
294
294
|
function IconButtonInner({ variant = "Default", size = "M", icon, ...rest }, ref) {
|
|
295
295
|
validateIconSize(size, icon);
|
|
@@ -372,9 +372,9 @@ function validateIconSize(size, icon) {
|
|
|
372
372
|
}
|
|
373
373
|
|
|
374
374
|
// src/components/Radio/index.tsx
|
|
375
|
-
var import_react6 = __toESM(require("react")
|
|
376
|
-
var import_styled_components6 = require("styled-components");
|
|
377
|
-
var import_warning = __toESM(require("warning")
|
|
375
|
+
var import_react6 = __toESM(require("react"));
|
|
376
|
+
var import_styled_components6 = __toESM(require("styled-components"));
|
|
377
|
+
var import_warning = __toESM(require("warning"));
|
|
378
378
|
var import_utils2 = require("@charcoal-ui/utils");
|
|
379
379
|
function Radio({
|
|
380
380
|
value,
|
|
@@ -530,9 +530,9 @@ function RadioGroup({
|
|
|
530
530
|
}
|
|
531
531
|
|
|
532
532
|
// src/components/MultiSelect/index.tsx
|
|
533
|
-
var import_react8 = __toESM(require("react")
|
|
534
|
-
var import_styled_components7 = require("styled-components");
|
|
535
|
-
var import_warning2 = __toESM(require("warning")
|
|
533
|
+
var import_react8 = __toESM(require("react"));
|
|
534
|
+
var import_styled_components7 = __toESM(require("styled-components"));
|
|
535
|
+
var import_warning2 = __toESM(require("warning"));
|
|
536
536
|
var import_utils3 = require("@charcoal-ui/utils");
|
|
537
537
|
|
|
538
538
|
// src/components/MultiSelect/context.ts
|
|
@@ -720,9 +720,9 @@ function MultiSelectGroup({
|
|
|
720
720
|
|
|
721
721
|
// src/components/Switch/index.tsx
|
|
722
722
|
var import_switch = require("@react-aria/switch");
|
|
723
|
-
var import_react9 = __toESM(require("react")
|
|
723
|
+
var import_react9 = __toESM(require("react"));
|
|
724
724
|
var import_react_stately = require("react-stately");
|
|
725
|
-
var import_styled_components8 = require("styled-components");
|
|
725
|
+
var import_styled_components8 = __toESM(require("styled-components"));
|
|
726
726
|
var import_utils4 = require("@charcoal-ui/utils");
|
|
727
727
|
function SwitchCheckbox(props) {
|
|
728
728
|
const { disabled, className } = props;
|
|
@@ -808,12 +808,12 @@ var SwitchInput = import_styled_components8.default.input.attrs({
|
|
|
808
808
|
// src/components/TextField/index.tsx
|
|
809
809
|
var import_textfield = require("@react-aria/textfield");
|
|
810
810
|
var import_visually_hidden = require("@react-aria/visually-hidden");
|
|
811
|
-
var import_react11 = __toESM(require("react")
|
|
812
|
-
var import_styled_components10 = require("styled-components");
|
|
811
|
+
var import_react11 = __toESM(require("react"));
|
|
812
|
+
var import_styled_components10 = __toESM(require("styled-components"));
|
|
813
813
|
|
|
814
814
|
// src/components/FieldLabel/index.tsx
|
|
815
|
-
var import_react10 = __toESM(require("react")
|
|
816
|
-
var import_styled_components9 = require("styled-components");
|
|
815
|
+
var import_react10 = __toESM(require("react"));
|
|
816
|
+
var import_styled_components9 = __toESM(require("styled-components"));
|
|
817
817
|
var import_styled8 = require("@charcoal-ui/styled");
|
|
818
818
|
var FieldLabel = import_react10.default.forwardRef(
|
|
819
819
|
function FieldLabel2({
|
|
@@ -1222,7 +1222,7 @@ var AssistiveText = import_styled_components10.default.p`
|
|
|
1222
1222
|
`;
|
|
1223
1223
|
|
|
1224
1224
|
// src/components/Icon/index.tsx
|
|
1225
|
-
var import_react12 = __toESM(require("react")
|
|
1225
|
+
var import_react12 = __toESM(require("react"));
|
|
1226
1226
|
var import_icons = require("@charcoal-ui/icons");
|
|
1227
1227
|
var Icon = import_react12.default.forwardRef(function IconInner({ name, scale, unsafeNonGuidelineScale, className, ...rest }, ref) {
|
|
1228
1228
|
return /* @__PURE__ */ import_react12.default.createElement(
|
|
@@ -1240,9 +1240,9 @@ var Icon = import_react12.default.forwardRef(function IconInner({ name, scale, u
|
|
|
1240
1240
|
var Icon_default = Icon;
|
|
1241
1241
|
|
|
1242
1242
|
// src/components/Modal/index.tsx
|
|
1243
|
-
var import_react13 = __toESM(require("react")
|
|
1243
|
+
var import_react13 = __toESM(require("react"));
|
|
1244
1244
|
var import_overlays2 = require("@react-aria/overlays");
|
|
1245
|
-
var import_styled_components11 = require("styled-components");
|
|
1245
|
+
var import_styled_components11 = __toESM(require("styled-components"));
|
|
1246
1246
|
var import_focus = require("@react-aria/focus");
|
|
1247
1247
|
var import_dialog = require("@react-aria/dialog");
|
|
1248
1248
|
|
|
@@ -1410,8 +1410,8 @@ var ModalHeading = import_styled_components11.default.h3`
|
|
|
1410
1410
|
`;
|
|
1411
1411
|
|
|
1412
1412
|
// src/components/Modal/ModalPlumbing.tsx
|
|
1413
|
-
var import_react14 = __toESM(require("react")
|
|
1414
|
-
var import_styled_components12 = require("styled-components");
|
|
1413
|
+
var import_react14 = __toESM(require("react"));
|
|
1414
|
+
var import_styled_components12 = __toESM(require("styled-components"));
|
|
1415
1415
|
var import_utils6 = require("@charcoal-ui/utils");
|
|
1416
1416
|
function ModalHeader() {
|
|
1417
1417
|
return /* @__PURE__ */ import_react14.default.createElement(ModalHeaderRoot, null, /* @__PURE__ */ import_react14.default.createElement(StyledModalTitle, null));
|
|
@@ -1447,8 +1447,8 @@ var ModalButtons = import_styled_components12.default.div`
|
|
|
1447
1447
|
`;
|
|
1448
1448
|
|
|
1449
1449
|
// src/components/LoadingSpinner/index.tsx
|
|
1450
|
-
var import_react15 = __toESM(require("react")
|
|
1451
|
-
var import_styled_components13 = require("styled-components");
|
|
1450
|
+
var import_react15 = __toESM(require("react"));
|
|
1451
|
+
var import_styled_components13 = __toESM(require("styled-components"));
|
|
1452
1452
|
function LoadingSpinner({
|
|
1453
1453
|
size = 48,
|
|
1454
1454
|
padding = 16,
|
|
@@ -1508,70 +1508,38 @@ var LoadingSpinnerIcon = import_react15.default.forwardRef(function LoadingSpinn
|
|
|
1508
1508
|
});
|
|
1509
1509
|
|
|
1510
1510
|
// src/components/DropdownSelector/index.tsx
|
|
1511
|
-
var
|
|
1512
|
-
var
|
|
1511
|
+
var import_react20 = __toESM(require("react"));
|
|
1512
|
+
var import_styled_components19 = __toESM(require("styled-components"));
|
|
1513
1513
|
var import_react_stately2 = require("react-stately");
|
|
1514
|
-
var
|
|
1514
|
+
var import_utils9 = require("@charcoal-ui/utils");
|
|
1515
1515
|
var import_visually_hidden2 = require("@react-aria/visually-hidden");
|
|
1516
1516
|
var import_select = require("@react-aria/select");
|
|
1517
1517
|
var import_button = require("@react-aria/button");
|
|
1518
1518
|
|
|
1519
1519
|
// src/components/DropdownSelector/Listbox.tsx
|
|
1520
|
-
var
|
|
1521
|
-
var
|
|
1520
|
+
var import_react18 = __toESM(require("react"));
|
|
1521
|
+
var import_styled_components17 = __toESM(require("styled-components"));
|
|
1522
|
+
var import_listbox3 = require("@react-aria/listbox");
|
|
1523
|
+
|
|
1524
|
+
// src/components/DropdownSelector/ListBoxSection.tsx
|
|
1525
|
+
var import_listbox2 = require("@react-aria/listbox");
|
|
1526
|
+
var import_separator = require("@react-aria/separator");
|
|
1527
|
+
var import_react17 = __toESM(require("react"));
|
|
1528
|
+
var import_styled_components16 = __toESM(require("styled-components"));
|
|
1529
|
+
|
|
1530
|
+
// src/components/DropdownSelector/Option.tsx
|
|
1531
|
+
var import_react16 = __toESM(require("react"));
|
|
1532
|
+
var import_styled_components14 = __toESM(require("styled-components"));
|
|
1522
1533
|
var import_listbox = require("@react-aria/listbox");
|
|
1523
1534
|
var import_utils7 = require("@react-aria/utils");
|
|
1524
1535
|
var import_focus2 = require("@react-aria/focus");
|
|
1525
1536
|
var import_utils8 = require("@charcoal-ui/utils");
|
|
1526
|
-
|
|
1527
|
-
state,
|
|
1528
|
-
mode = "default",
|
|
1529
|
-
...props
|
|
1530
|
-
}) => {
|
|
1531
|
-
const ref = (0, import_react16.useRef)(null);
|
|
1532
|
-
const { listBoxProps } = (0, import_listbox.useListBox)(props, state, ref);
|
|
1533
|
-
const collection = (0, import_react16.useMemo)(
|
|
1534
|
-
() => [...state.collection].map((node, index, self) => ({
|
|
1535
|
-
node,
|
|
1536
|
-
first: index === 0,
|
|
1537
|
-
last: index === self.length - 1
|
|
1538
|
-
})),
|
|
1539
|
-
[state.collection]
|
|
1540
|
-
);
|
|
1541
|
-
return /* @__PURE__ */ import_react16.default.createElement(ListboxRoot, { ref, ...listBoxProps }, collection.map(({ node, last }) => /* @__PURE__ */ import_react16.default.createElement(import_react16.Fragment, { key: node.key }, /* @__PURE__ */ import_react16.default.createElement(Option, { item: node, state, mode }), !last && mode === "separator" && /* @__PURE__ */ import_react16.default.createElement(Divider, null))));
|
|
1542
|
-
};
|
|
1543
|
-
var Listbox_default = (0, import_react16.memo)(Listbox);
|
|
1544
|
-
var ListboxRoot = import_styled_components14.default.ul`
|
|
1545
|
-
padding-left: 0;
|
|
1546
|
-
margin: 0;
|
|
1547
|
-
box-sizing: border-box;
|
|
1548
|
-
list-style: none;
|
|
1549
|
-
|
|
1550
|
-
${theme((o) => [
|
|
1551
|
-
o.bg.background1,
|
|
1552
|
-
o.border.default,
|
|
1553
|
-
o.borderRadius(8),
|
|
1554
|
-
o.outline.default.focus
|
|
1555
|
-
])}
|
|
1556
|
-
`;
|
|
1557
|
-
var Divider = import_styled_components14.default.div.attrs({ role: "separator" })`
|
|
1558
|
-
display: flex;
|
|
1559
|
-
${theme((o) => [o.padding.horizontal(8)])}
|
|
1560
|
-
|
|
1561
|
-
&:before {
|
|
1562
|
-
content: '';
|
|
1563
|
-
display: block;
|
|
1564
|
-
width: 100%;
|
|
1565
|
-
height: 1px;
|
|
1566
|
-
background: #00000014;
|
|
1567
|
-
}
|
|
1568
|
-
`;
|
|
1569
|
-
var Option = ({ item, state, mode }) => {
|
|
1537
|
+
function Option({ item, state, mode }) {
|
|
1570
1538
|
const ref = (0, import_react16.useRef)(null);
|
|
1571
1539
|
const { optionProps, isSelected } = (0, import_listbox.useOption)(item, state, ref);
|
|
1572
1540
|
const { focusProps } = (0, import_focus2.useFocusRing)();
|
|
1573
1541
|
return /* @__PURE__ */ import_react16.default.createElement(OptionRoot, { ...(0, import_utils7.mergeProps)(optionProps, focusProps), ref, mode }, /* @__PURE__ */ import_react16.default.createElement(OptionCheckIcon, { name: "16/Check", isSelected }), /* @__PURE__ */ import_react16.default.createElement(OptionText, null, item.rendered));
|
|
1574
|
-
}
|
|
1542
|
+
}
|
|
1575
1543
|
var OptionRoot = import_styled_components14.default.li`
|
|
1576
1544
|
display: flex;
|
|
1577
1545
|
align-items: center;
|
|
@@ -1602,28 +1570,124 @@ var OptionText = import_styled_components14.default.span`
|
|
|
1602
1570
|
${theme((o) => [o.typography(14), o.font.text2])}
|
|
1603
1571
|
`;
|
|
1604
1572
|
|
|
1605
|
-
// src/components/DropdownSelector/
|
|
1606
|
-
var
|
|
1607
|
-
var
|
|
1608
|
-
|
|
1609
|
-
|
|
1610
|
-
|
|
1611
|
-
|
|
1612
|
-
|
|
1613
|
-
|
|
1614
|
-
|
|
1615
|
-
|
|
1616
|
-
|
|
1617
|
-
|
|
1618
|
-
|
|
1619
|
-
|
|
1620
|
-
|
|
1621
|
-
|
|
1622
|
-
|
|
1573
|
+
// src/components/DropdownSelector/Divider.tsx
|
|
1574
|
+
var import_styled_components15 = __toESM(require("styled-components"));
|
|
1575
|
+
var Divider = import_styled_components15.default.div.attrs({ role: "separator" })`
|
|
1576
|
+
display: flex;
|
|
1577
|
+
|
|
1578
|
+
&:before {
|
|
1579
|
+
content: '';
|
|
1580
|
+
display: block;
|
|
1581
|
+
width: 100%;
|
|
1582
|
+
height: 1px;
|
|
1583
|
+
background: #00000014;
|
|
1584
|
+
}
|
|
1585
|
+
`;
|
|
1586
|
+
|
|
1587
|
+
// src/components/DropdownSelector/ListBoxSection.tsx
|
|
1588
|
+
function ListBoxSection(props) {
|
|
1589
|
+
const { state } = props;
|
|
1590
|
+
const { itemProps, headingProps, groupProps } = (0, import_listbox2.useListBoxSection)({
|
|
1591
|
+
heading: props.section.rendered,
|
|
1592
|
+
"aria-label": props.section["aria-label"]
|
|
1593
|
+
});
|
|
1594
|
+
const { separatorProps } = (0, import_separator.useSeparator)({
|
|
1595
|
+
elementType: "li"
|
|
1596
|
+
});
|
|
1597
|
+
return /* @__PURE__ */ import_react17.default.createElement(import_react17.default.Fragment, null, props.section.key !== props.state.collection.getFirstKey() && /* @__PURE__ */ import_react17.default.createElement(Divider, { ...separatorProps, role: "separator" }), /* @__PURE__ */ import_react17.default.createElement(StyledLi, { ...itemProps }, props.section.rendered != null && /* @__PURE__ */ import_react17.default.createElement(SectionSpan, { ...headingProps }, props.section.rendered), /* @__PURE__ */ import_react17.default.createElement(StyledUl, { ...groupProps }, [...props.section.childNodes].map((node) => /* @__PURE__ */ import_react17.default.createElement(Option, { key: node.key, item: node, state })))));
|
|
1598
|
+
}
|
|
1599
|
+
var SectionSpan = import_styled_components16.default.span`
|
|
1600
|
+
${theme((o) => [
|
|
1601
|
+
o.font.text3,
|
|
1602
|
+
o.typography(12).bold,
|
|
1603
|
+
o.margin.bottom(8).left(16).top(16)
|
|
1604
|
+
])}
|
|
1605
|
+
`;
|
|
1606
|
+
var StyledUl = import_styled_components16.default.ul`
|
|
1607
|
+
padding-left: 0;
|
|
1608
|
+
margin: 0;
|
|
1609
|
+
box-sizing: border-box;
|
|
1610
|
+
list-style: none;
|
|
1611
|
+
overflow: hidden;
|
|
1612
|
+
`;
|
|
1613
|
+
var StyledLi = import_styled_components16.default.li``;
|
|
1614
|
+
|
|
1615
|
+
// src/components/DropdownSelector/Listbox.tsx
|
|
1616
|
+
var Listbox = ({
|
|
1617
|
+
state,
|
|
1618
|
+
mode = "default",
|
|
1619
|
+
...props
|
|
1620
|
+
}) => {
|
|
1621
|
+
const ref = (0, import_react18.useRef)(null);
|
|
1622
|
+
const { listBoxProps } = (0, import_listbox3.useListBox)(props, state, ref);
|
|
1623
|
+
const collection = (0, import_react18.useMemo)(
|
|
1624
|
+
() => [...state.collection].map((node, index, self) => ({
|
|
1625
|
+
node,
|
|
1626
|
+
first: index === 0,
|
|
1627
|
+
last: index === self.length - 1
|
|
1628
|
+
})),
|
|
1629
|
+
[state.collection]
|
|
1623
1630
|
);
|
|
1624
|
-
return /* @__PURE__ */
|
|
1631
|
+
return /* @__PURE__ */ import_react18.default.createElement(ListboxRoot, { ref, ...listBoxProps }, collection.map(({ node, last }) => /* @__PURE__ */ import_react18.default.createElement(import_react18.Fragment, { key: node.key }, node.type === "section" ? /* @__PURE__ */ import_react18.default.createElement(ListBoxSection, { section: node, state }) : /* @__PURE__ */ import_react18.default.createElement(Option, { item: node, state, mode }), !last && mode === "separator" && /* @__PURE__ */ import_react18.default.createElement(Divider, null))));
|
|
1625
1632
|
};
|
|
1626
|
-
var
|
|
1633
|
+
var Listbox_default = (0, import_react18.memo)(Listbox);
|
|
1634
|
+
var ListboxRoot = import_styled_components17.default.ul`
|
|
1635
|
+
padding-left: 0;
|
|
1636
|
+
margin: 0;
|
|
1637
|
+
box-sizing: border-box;
|
|
1638
|
+
list-style: none;
|
|
1639
|
+
overflow: auto;
|
|
1640
|
+
max-height: inherit;
|
|
1641
|
+
|
|
1642
|
+
${theme((o) => [
|
|
1643
|
+
o.bg.background1,
|
|
1644
|
+
o.border.default,
|
|
1645
|
+
o.borderRadius(8),
|
|
1646
|
+
o.padding.vertical(8),
|
|
1647
|
+
o.outline.default.focus
|
|
1648
|
+
])}
|
|
1649
|
+
`;
|
|
1650
|
+
|
|
1651
|
+
// src/components/DropdownSelector/DropdownPopover.tsx
|
|
1652
|
+
var import_react19 = __toESM(require("react"));
|
|
1653
|
+
var import_overlays3 = require("@react-aria/overlays");
|
|
1654
|
+
var import_styled_components18 = __toESM(require("styled-components"));
|
|
1655
|
+
var DropdownPopoverDiv = import_styled_components18.default.div`
|
|
1656
|
+
width: 100%;
|
|
1657
|
+
${theme((o) => o.margin.top(4).bottom(4))}
|
|
1658
|
+
`;
|
|
1659
|
+
function DropdownPopover({ children, state, ...props }) {
|
|
1660
|
+
const ref = (0, import_react19.useRef)(null);
|
|
1661
|
+
const { popoverProps, underlayProps } = (0, import_overlays3.usePopover)(
|
|
1662
|
+
{
|
|
1663
|
+
...props,
|
|
1664
|
+
popoverRef: ref,
|
|
1665
|
+
containerPadding: 0
|
|
1666
|
+
},
|
|
1667
|
+
state
|
|
1668
|
+
);
|
|
1669
|
+
(0, import_react19.useEffect)(() => {
|
|
1670
|
+
if (ref.current && props.triggerRef.current) {
|
|
1671
|
+
ref.current.style.width = `${props.triggerRef.current.clientWidth}px`;
|
|
1672
|
+
}
|
|
1673
|
+
}, [props.triggerRef]);
|
|
1674
|
+
(0, import_react19.useEffect)(() => {
|
|
1675
|
+
if (state.isOpen && props.value !== void 0) {
|
|
1676
|
+
window.requestAnimationFrame(() => {
|
|
1677
|
+
if (props.value === void 0)
|
|
1678
|
+
return;
|
|
1679
|
+
const windowScrollY = window.scrollY;
|
|
1680
|
+
const windowScrollX = window.scrollX;
|
|
1681
|
+
const selectedElement = document.querySelector(
|
|
1682
|
+
`[data-key="${props.value.toString()}"]`
|
|
1683
|
+
);
|
|
1684
|
+
selectedElement?.scrollIntoView({ block: "center" });
|
|
1685
|
+
window.scrollTo(windowScrollX, windowScrollY);
|
|
1686
|
+
});
|
|
1687
|
+
}
|
|
1688
|
+
}, [props.value, state.isOpen]);
|
|
1689
|
+
return /* @__PURE__ */ import_react19.default.createElement(import_overlays3.Overlay, { portalContainer: document.body }, /* @__PURE__ */ import_react19.default.createElement("div", { ...underlayProps, style: { position: "fixed", inset: 0 } }), /* @__PURE__ */ import_react19.default.createElement(DropdownPopoverDiv, { ...popoverProps, ref }, /* @__PURE__ */ import_react19.default.createElement(import_overlays3.DismissButton, { onDismiss: () => state.close() }), children, /* @__PURE__ */ import_react19.default.createElement(import_overlays3.DismissButton, { onDismiss: () => state.close() })));
|
|
1690
|
+
}
|
|
1627
1691
|
|
|
1628
1692
|
// src/components/DropdownSelector/index.tsx
|
|
1629
1693
|
var DropdownSelector = ({
|
|
@@ -1642,8 +1706,8 @@ var DropdownSelector = ({
|
|
|
1642
1706
|
...props
|
|
1643
1707
|
}) => {
|
|
1644
1708
|
const { visuallyHiddenProps } = (0, import_visually_hidden2.useVisuallyHidden)();
|
|
1645
|
-
const triggerRef = (0,
|
|
1646
|
-
const selectProps = (0,
|
|
1709
|
+
const triggerRef = (0, import_react20.useRef)(null);
|
|
1710
|
+
const selectProps = (0, import_react20.useMemo)(
|
|
1647
1711
|
() => ({
|
|
1648
1712
|
...props,
|
|
1649
1713
|
label,
|
|
@@ -1669,7 +1733,7 @@ var DropdownSelector = ({
|
|
|
1669
1733
|
} = (0, import_select.useSelect)(selectProps, state, triggerRef);
|
|
1670
1734
|
const { buttonProps } = (0, import_button.useButton)(triggerProps, triggerRef);
|
|
1671
1735
|
const hasAssertiveText = assertiveText !== void 0 && assertiveText.length > 0;
|
|
1672
|
-
return /* @__PURE__ */
|
|
1736
|
+
return /* @__PURE__ */ import_react20.default.createElement(DropdownSelectorRoot, { "aria-disabled": disabled, className }, /* @__PURE__ */ import_react20.default.createElement(
|
|
1673
1737
|
DropdownFieldLabel,
|
|
1674
1738
|
{
|
|
1675
1739
|
label,
|
|
@@ -1679,7 +1743,7 @@ var DropdownSelector = ({
|
|
|
1679
1743
|
...labelProps,
|
|
1680
1744
|
...!showLabel ? visuallyHiddenProps : {}
|
|
1681
1745
|
}
|
|
1682
|
-
), /* @__PURE__ */
|
|
1746
|
+
), /* @__PURE__ */ import_react20.default.createElement(
|
|
1683
1747
|
import_select.HiddenSelect,
|
|
1684
1748
|
{
|
|
1685
1749
|
state,
|
|
@@ -1689,7 +1753,15 @@ var DropdownSelector = ({
|
|
|
1689
1753
|
isDisabled: disabled,
|
|
1690
1754
|
autoComplete
|
|
1691
1755
|
}
|
|
1692
|
-
), /* @__PURE__ */
|
|
1756
|
+
), /* @__PURE__ */ import_react20.default.createElement(DropdownButtonWrapper, null, /* @__PURE__ */ import_react20.default.createElement(DropdownButton, { ...buttonProps, ref: triggerRef, invalid }, /* @__PURE__ */ import_react20.default.createElement(DropdownButtonText, { ...valueProps }, state.selectedItem ? state.selectedItem.rendered : props.placeholder), /* @__PURE__ */ import_react20.default.createElement(DropdownButtonIcon, { name: "16/Menu" })), state.isOpen && /* @__PURE__ */ import_react20.default.createElement(
|
|
1757
|
+
DropdownPopover,
|
|
1758
|
+
{
|
|
1759
|
+
state,
|
|
1760
|
+
triggerRef,
|
|
1761
|
+
value: props.value ?? props.defaultValue
|
|
1762
|
+
},
|
|
1763
|
+
/* @__PURE__ */ import_react20.default.createElement(Listbox_default, { ...menuProps, state, mode })
|
|
1764
|
+
)), hasAssertiveText && /* @__PURE__ */ import_react20.default.createElement(
|
|
1693
1765
|
AssertiveText,
|
|
1694
1766
|
{
|
|
1695
1767
|
invalid,
|
|
@@ -1700,34 +1772,35 @@ var DropdownSelector = ({
|
|
|
1700
1772
|
};
|
|
1701
1773
|
var DropdownSelector_default = DropdownSelector;
|
|
1702
1774
|
var DropdownSelectorItem = import_react_stately2.Item;
|
|
1703
|
-
var DropdownSelectorRoot =
|
|
1775
|
+
var DropdownSelectorRoot = import_styled_components19.default.div`
|
|
1704
1776
|
position: relative;
|
|
1705
1777
|
display: inline-block;
|
|
1778
|
+
width: 100%;
|
|
1706
1779
|
|
|
1707
|
-
${
|
|
1780
|
+
${import_utils9.disabledSelector} {
|
|
1708
1781
|
cursor: default;
|
|
1709
1782
|
${theme((o) => o.disabled)}
|
|
1710
1783
|
}
|
|
1711
1784
|
`;
|
|
1712
|
-
var DropdownFieldLabel = (0,
|
|
1785
|
+
var DropdownFieldLabel = (0, import_styled_components19.default)(FieldLabel_default)`
|
|
1713
1786
|
width: 100%;
|
|
1714
1787
|
|
|
1715
1788
|
${theme((o) => o.margin.bottom(8))}
|
|
1716
1789
|
`;
|
|
1717
|
-
var DropdownButtonWrapper =
|
|
1790
|
+
var DropdownButtonWrapper = import_styled_components19.default.div`
|
|
1718
1791
|
position: relative;
|
|
1719
1792
|
`;
|
|
1720
|
-
var DropdownButton =
|
|
1793
|
+
var DropdownButton = import_styled_components19.default.button`
|
|
1721
1794
|
display: flex;
|
|
1722
1795
|
justify-content: space-between;
|
|
1723
1796
|
align-items: center;
|
|
1724
1797
|
|
|
1725
1798
|
height: 40px;
|
|
1726
|
-
width:
|
|
1799
|
+
width: 100%;
|
|
1727
1800
|
box-sizing: border-box;
|
|
1728
1801
|
cursor: pointer;
|
|
1729
1802
|
|
|
1730
|
-
${
|
|
1803
|
+
${import_utils9.disabledSelector} {
|
|
1731
1804
|
cursor: default;
|
|
1732
1805
|
}
|
|
1733
1806
|
|
|
@@ -1740,56 +1813,49 @@ var DropdownButton = import_styled_components15.default.button`
|
|
|
1740
1813
|
invalid && o.outline.assertive
|
|
1741
1814
|
])}
|
|
1742
1815
|
`;
|
|
1743
|
-
var DropdownButtonText =
|
|
1816
|
+
var DropdownButtonText = import_styled_components19.default.span`
|
|
1744
1817
|
text-align: left;
|
|
1745
1818
|
|
|
1746
1819
|
${theme((o) => [o.typography(14), o.font.text2])}
|
|
1747
1820
|
`;
|
|
1748
|
-
var DropdownButtonIcon = (0,
|
|
1821
|
+
var DropdownButtonIcon = (0, import_styled_components19.default)(Icon_default)`
|
|
1749
1822
|
${theme((o) => [o.font.text2])}
|
|
1750
1823
|
`;
|
|
1751
|
-
var AssertiveText =
|
|
1824
|
+
var AssertiveText = import_styled_components19.default.div`
|
|
1752
1825
|
${({ invalid }) => theme((o) => [
|
|
1753
1826
|
o.typography(14),
|
|
1754
1827
|
o.margin.top(8),
|
|
1755
1828
|
invalid ? o.font.assertive : o.font.text2
|
|
1756
1829
|
])}
|
|
1757
1830
|
`;
|
|
1758
|
-
var DropdownPopover = (0, import_styled_components15.default)(Popover_default)`
|
|
1759
|
-
position: absolute;
|
|
1760
|
-
width: 100%;
|
|
1761
|
-
|
|
1762
|
-
top: 100%;
|
|
1763
|
-
margin-top: 2px;
|
|
1764
|
-
`;
|
|
1765
1831
|
|
|
1766
1832
|
// src/components/SegmentedControl/index.tsx
|
|
1767
|
-
var
|
|
1833
|
+
var import_react22 = __toESM(require("react"));
|
|
1768
1834
|
var import_react_stately3 = require("react-stately");
|
|
1769
1835
|
var import_radio = require("@react-aria/radio");
|
|
1770
|
-
var
|
|
1771
|
-
var
|
|
1836
|
+
var import_styled_components20 = __toESM(require("styled-components"));
|
|
1837
|
+
var import_utils10 = require("@charcoal-ui/utils");
|
|
1772
1838
|
|
|
1773
1839
|
// src/components/SegmentedControl/RadioGroupContext.tsx
|
|
1774
|
-
var
|
|
1775
|
-
var RadioContext = (0,
|
|
1840
|
+
var import_react21 = __toESM(require("react"));
|
|
1841
|
+
var RadioContext = (0, import_react21.createContext)(null);
|
|
1776
1842
|
var RadioProvider = ({
|
|
1777
1843
|
value,
|
|
1778
1844
|
children
|
|
1779
1845
|
}) => {
|
|
1780
|
-
return /* @__PURE__ */
|
|
1846
|
+
return /* @__PURE__ */ import_react21.default.createElement(RadioContext.Provider, { value }, children);
|
|
1781
1847
|
};
|
|
1782
1848
|
var useRadioContext = () => {
|
|
1783
|
-
const state = (0,
|
|
1849
|
+
const state = (0, import_react21.useContext)(RadioContext);
|
|
1784
1850
|
if (state === null)
|
|
1785
1851
|
throw new Error("`<RadioProvider>` is not likely mounted.");
|
|
1786
1852
|
return state;
|
|
1787
1853
|
};
|
|
1788
1854
|
|
|
1789
1855
|
// src/components/SegmentedControl/index.tsx
|
|
1790
|
-
var SegmentedControl = (0,
|
|
1856
|
+
var SegmentedControl = (0, import_react22.forwardRef)(
|
|
1791
1857
|
function SegmentedControlInner(props, ref) {
|
|
1792
|
-
const ariaRadioGroupProps = (0,
|
|
1858
|
+
const ariaRadioGroupProps = (0, import_react22.useMemo)(
|
|
1793
1859
|
() => ({
|
|
1794
1860
|
...props,
|
|
1795
1861
|
isDisabled: props.disabled,
|
|
@@ -1800,12 +1866,12 @@ var SegmentedControl = (0, import_react20.forwardRef)(
|
|
|
1800
1866
|
);
|
|
1801
1867
|
const state = (0, import_react_stately3.useRadioGroupState)(ariaRadioGroupProps);
|
|
1802
1868
|
const { radioGroupProps } = (0, import_radio.useRadioGroup)(ariaRadioGroupProps, state);
|
|
1803
|
-
const segmentedControlItems = (0,
|
|
1869
|
+
const segmentedControlItems = (0, import_react22.useMemo)(() => {
|
|
1804
1870
|
return props.data.map(
|
|
1805
1871
|
(d) => typeof d === "string" ? { value: d, label: d } : d
|
|
1806
1872
|
);
|
|
1807
1873
|
}, [props.data]);
|
|
1808
|
-
return /* @__PURE__ */
|
|
1874
|
+
return /* @__PURE__ */ import_react22.default.createElement(SegmentedControlRoot, { ref, ...radioGroupProps }, /* @__PURE__ */ import_react22.default.createElement(RadioProvider, { value: state }, segmentedControlItems.map((item) => /* @__PURE__ */ import_react22.default.createElement(
|
|
1809
1875
|
Segmented,
|
|
1810
1876
|
{
|
|
1811
1877
|
key: item.value,
|
|
@@ -1816,11 +1882,11 @@ var SegmentedControl = (0, import_react20.forwardRef)(
|
|
|
1816
1882
|
))));
|
|
1817
1883
|
}
|
|
1818
1884
|
);
|
|
1819
|
-
var SegmentedControl_default = (0,
|
|
1885
|
+
var SegmentedControl_default = (0, import_react22.memo)(SegmentedControl);
|
|
1820
1886
|
var Segmented = ({ children, ...props }) => {
|
|
1821
1887
|
const state = useRadioContext();
|
|
1822
|
-
const ref = (0,
|
|
1823
|
-
const ariaRadioProps = (0,
|
|
1888
|
+
const ref = (0, import_react22.useRef)(null);
|
|
1889
|
+
const ariaRadioProps = (0, import_react22.useMemo)(
|
|
1824
1890
|
() => ({ ...props, isDisabled: props.disabled }),
|
|
1825
1891
|
[props]
|
|
1826
1892
|
);
|
|
@@ -1829,30 +1895,30 @@ var Segmented = ({ children, ...props }) => {
|
|
|
1829
1895
|
state,
|
|
1830
1896
|
ref
|
|
1831
1897
|
);
|
|
1832
|
-
return /* @__PURE__ */
|
|
1898
|
+
return /* @__PURE__ */ import_react22.default.createElement(
|
|
1833
1899
|
SegmentedRoot,
|
|
1834
1900
|
{
|
|
1835
1901
|
"aria-disabled": isDisabled || state.isReadOnly,
|
|
1836
1902
|
checked: isSelected
|
|
1837
1903
|
},
|
|
1838
|
-
/* @__PURE__ */
|
|
1839
|
-
/* @__PURE__ */
|
|
1904
|
+
/* @__PURE__ */ import_react22.default.createElement(SegmentedInput, { ...inputProps, ref }),
|
|
1905
|
+
/* @__PURE__ */ import_react22.default.createElement(RadioLabel2, null, /* @__PURE__ */ import_react22.default.createElement(SegmentedLabelInner, null, children))
|
|
1840
1906
|
);
|
|
1841
1907
|
};
|
|
1842
|
-
var SegmentedControlRoot =
|
|
1908
|
+
var SegmentedControlRoot = import_styled_components20.default.div`
|
|
1843
1909
|
display: inline-flex;
|
|
1844
1910
|
align-items: center;
|
|
1845
1911
|
|
|
1846
1912
|
${theme((o) => [o.bg.surface3, o.borderRadius(16)])}
|
|
1847
1913
|
`;
|
|
1848
|
-
var SegmentedRoot =
|
|
1914
|
+
var SegmentedRoot = import_styled_components20.default.label`
|
|
1849
1915
|
position: relative;
|
|
1850
1916
|
display: flex;
|
|
1851
1917
|
align-items: center;
|
|
1852
1918
|
cursor: pointer;
|
|
1853
1919
|
height: 32px;
|
|
1854
1920
|
|
|
1855
|
-
${
|
|
1921
|
+
${import_utils10.disabledSelector} {
|
|
1856
1922
|
cursor: default;
|
|
1857
1923
|
}
|
|
1858
1924
|
|
|
@@ -1864,7 +1930,7 @@ var SegmentedRoot = import_styled_components16.default.label`
|
|
|
1864
1930
|
checked === true ? o.font.text5 : o.font.text2
|
|
1865
1931
|
])}
|
|
1866
1932
|
`;
|
|
1867
|
-
var SegmentedInput =
|
|
1933
|
+
var SegmentedInput = import_styled_components20.default.input`
|
|
1868
1934
|
position: absolute;
|
|
1869
1935
|
|
|
1870
1936
|
height: 0px;
|
|
@@ -1878,26 +1944,26 @@ var SegmentedInput = import_styled_components16.default.input`
|
|
|
1878
1944
|
white-space: nowrap;
|
|
1879
1945
|
opacity: 0;
|
|
1880
1946
|
`;
|
|
1881
|
-
var RadioLabel2 =
|
|
1947
|
+
var RadioLabel2 = import_styled_components20.default.div`
|
|
1882
1948
|
background: transparent;
|
|
1883
1949
|
display: flex;
|
|
1884
1950
|
align-items: center;
|
|
1885
1951
|
height: 22px;
|
|
1886
1952
|
`;
|
|
1887
|
-
var SegmentedLabelInner =
|
|
1953
|
+
var SegmentedLabelInner = import_styled_components20.default.div`
|
|
1888
1954
|
${theme((o) => [o.typography(14)])}
|
|
1889
1955
|
`;
|
|
1890
1956
|
|
|
1891
1957
|
// src/components/Checkbox/index.tsx
|
|
1892
|
-
var
|
|
1893
|
-
var
|
|
1958
|
+
var import_react23 = __toESM(require("react"));
|
|
1959
|
+
var import_styled_components21 = __toESM(require("styled-components"));
|
|
1894
1960
|
var import_checkbox = require("@react-aria/checkbox");
|
|
1895
|
-
var
|
|
1961
|
+
var import_utils11 = require("@react-aria/utils");
|
|
1896
1962
|
var import_react_stately4 = require("react-stately");
|
|
1897
|
-
var
|
|
1898
|
-
var Checkbox = (0,
|
|
1963
|
+
var import_utils12 = require("@charcoal-ui/utils");
|
|
1964
|
+
var Checkbox = (0, import_react23.forwardRef)(
|
|
1899
1965
|
function CheckboxInner(props, ref) {
|
|
1900
|
-
const ariaCheckboxProps = (0,
|
|
1966
|
+
const ariaCheckboxProps = (0, import_react23.useMemo)(
|
|
1901
1967
|
() => ({
|
|
1902
1968
|
...props,
|
|
1903
1969
|
isSelected: props.checked,
|
|
@@ -1908,32 +1974,32 @@ var Checkbox = (0, import_react21.forwardRef)(
|
|
|
1908
1974
|
[props]
|
|
1909
1975
|
);
|
|
1910
1976
|
const state = (0, import_react_stately4.useToggleState)(ariaCheckboxProps);
|
|
1911
|
-
const objectRef = (0,
|
|
1977
|
+
const objectRef = (0, import_utils11.useObjectRef)(ref);
|
|
1912
1978
|
const { inputProps } = (0, import_checkbox.useCheckbox)(ariaCheckboxProps, state, objectRef);
|
|
1913
1979
|
const isDisabled = (props.disabled ?? false) || (props.readonly ?? false);
|
|
1914
|
-
return /* @__PURE__ */
|
|
1980
|
+
return /* @__PURE__ */ import_react23.default.createElement(InputRoot, { "aria-disabled": isDisabled }, /* @__PURE__ */ import_react23.default.createElement(CheckboxRoot, null, /* @__PURE__ */ import_react23.default.createElement(CheckboxInput, { type: "checkbox", ...inputProps }), /* @__PURE__ */ import_react23.default.createElement(CheckboxInputOverlay, { "aria-hidden": true, checked: inputProps.checked }, /* @__PURE__ */ import_react23.default.createElement(Icon_default, { name: "24/Check", unsafeNonGuidelineScale: 2 / 3 }))), "children" in props && /* @__PURE__ */ import_react23.default.createElement(InputLabel, null, props.children));
|
|
1915
1981
|
}
|
|
1916
1982
|
);
|
|
1917
|
-
var Checkbox_default = (0,
|
|
1918
|
-
var hiddenCss =
|
|
1983
|
+
var Checkbox_default = (0, import_react23.memo)(Checkbox);
|
|
1984
|
+
var hiddenCss = import_styled_components21.css`
|
|
1919
1985
|
visibility: hidden;
|
|
1920
1986
|
`;
|
|
1921
|
-
var InputRoot =
|
|
1987
|
+
var InputRoot = import_styled_components21.default.label`
|
|
1922
1988
|
position: relative;
|
|
1923
1989
|
display: flex;
|
|
1924
1990
|
|
|
1925
1991
|
cursor: pointer;
|
|
1926
|
-
${
|
|
1992
|
+
${import_utils12.disabledSelector} {
|
|
1927
1993
|
cursor: default;
|
|
1928
1994
|
}
|
|
1929
1995
|
|
|
1930
|
-
gap: ${({ theme: theme4 }) => (0,
|
|
1996
|
+
gap: ${({ theme: theme4 }) => (0, import_utils12.px)(theme4.spacing[4])};
|
|
1931
1997
|
${theme((o) => [o.disabled])}
|
|
1932
1998
|
`;
|
|
1933
|
-
var CheckboxRoot =
|
|
1999
|
+
var CheckboxRoot = import_styled_components21.default.div`
|
|
1934
2000
|
position: relative;
|
|
1935
2001
|
`;
|
|
1936
|
-
var CheckboxInput =
|
|
2002
|
+
var CheckboxInput = import_styled_components21.default.input`
|
|
1937
2003
|
&[type='checkbox'] {
|
|
1938
2004
|
appearance: none;
|
|
1939
2005
|
display: block;
|
|
@@ -1953,7 +2019,7 @@ var CheckboxInput = import_styled_components17.default.input`
|
|
|
1953
2019
|
${theme((o) => [o.outline.default.focus, o.borderRadius(4)])}
|
|
1954
2020
|
}
|
|
1955
2021
|
`;
|
|
1956
|
-
var CheckboxInputOverlay =
|
|
2022
|
+
var CheckboxInputOverlay = import_styled_components21.default.div`
|
|
1957
2023
|
position: absolute;
|
|
1958
2024
|
top: -2px;
|
|
1959
2025
|
left: -2px;
|
|
@@ -1966,7 +2032,7 @@ var CheckboxInputOverlay = import_styled_components17.default.div`
|
|
|
1966
2032
|
|
|
1967
2033
|
${({ checked }) => checked !== true && hiddenCss};
|
|
1968
2034
|
`;
|
|
1969
|
-
var InputLabel =
|
|
2035
|
+
var InputLabel = import_styled_components21.default.div`
|
|
1970
2036
|
${theme((o) => [o.font.text2])}
|
|
1971
2037
|
|
|
1972
2038
|
font-size: 14px;
|
|
@@ -1975,16 +2041,16 @@ var InputLabel = import_styled_components17.default.div`
|
|
|
1975
2041
|
`;
|
|
1976
2042
|
|
|
1977
2043
|
// src/components/TagItem/index.tsx
|
|
1978
|
-
var
|
|
1979
|
-
var
|
|
1980
|
-
var
|
|
1981
|
-
var
|
|
2044
|
+
var import_react24 = __toESM(require("react"));
|
|
2045
|
+
var import_utils13 = require("@react-aria/utils");
|
|
2046
|
+
var import_styled_components22 = __toESM(require("styled-components"));
|
|
2047
|
+
var import_utils14 = require("@charcoal-ui/utils");
|
|
1982
2048
|
var import_button2 = require("@react-aria/button");
|
|
1983
2049
|
var sizeMap = {
|
|
1984
2050
|
S: 32,
|
|
1985
2051
|
M: 40
|
|
1986
2052
|
};
|
|
1987
|
-
var TagItem = (0,
|
|
2053
|
+
var TagItem = (0, import_react24.forwardRef)(
|
|
1988
2054
|
function TagItemInner({
|
|
1989
2055
|
label,
|
|
1990
2056
|
translatedLabel,
|
|
@@ -1995,8 +2061,8 @@ var TagItem = (0, import_react22.forwardRef)(
|
|
|
1995
2061
|
status = "default",
|
|
1996
2062
|
...props
|
|
1997
2063
|
}, _ref) {
|
|
1998
|
-
const ref = (0,
|
|
1999
|
-
const ariaButtonProps = (0,
|
|
2064
|
+
const ref = (0, import_utils13.useObjectRef)(_ref);
|
|
2065
|
+
const ariaButtonProps = (0, import_react24.useMemo)(
|
|
2000
2066
|
() => ({
|
|
2001
2067
|
elementType: "a",
|
|
2002
2068
|
isDisabled: disabled,
|
|
@@ -2006,7 +2072,7 @@ var TagItem = (0, import_react22.forwardRef)(
|
|
|
2006
2072
|
);
|
|
2007
2073
|
const { buttonProps } = (0, import_button2.useButton)(ariaButtonProps, ref);
|
|
2008
2074
|
const hasTranslatedLabel = translatedLabel !== void 0 && translatedLabel.length > 0;
|
|
2009
|
-
return /* @__PURE__ */
|
|
2075
|
+
return /* @__PURE__ */ import_react24.default.createElement(
|
|
2010
2076
|
TagItemRoot,
|
|
2011
2077
|
{
|
|
2012
2078
|
ref,
|
|
@@ -2014,13 +2080,13 @@ var TagItem = (0, import_react22.forwardRef)(
|
|
|
2014
2080
|
status,
|
|
2015
2081
|
...buttonProps
|
|
2016
2082
|
},
|
|
2017
|
-
/* @__PURE__ */
|
|
2018
|
-
/* @__PURE__ */
|
|
2083
|
+
/* @__PURE__ */ import_react24.default.createElement(Background, { bgColor, bgImage, status }),
|
|
2084
|
+
/* @__PURE__ */ import_react24.default.createElement(Inner, null, /* @__PURE__ */ import_react24.default.createElement(LabelWrapper, { isTranslate: hasTranslatedLabel }, hasTranslatedLabel && /* @__PURE__ */ import_react24.default.createElement(TranslatedLabel, null, /* @__PURE__ */ import_react24.default.createElement(Label3, null, translatedLabel)), /* @__PURE__ */ import_react24.default.createElement(Label3, null, label)), status === "active" && /* @__PURE__ */ import_react24.default.createElement(Icon_default, { name: "16/Remove" }))
|
|
2019
2085
|
);
|
|
2020
2086
|
}
|
|
2021
2087
|
);
|
|
2022
|
-
var TagItem_default = (0,
|
|
2023
|
-
var TagItemRoot =
|
|
2088
|
+
var TagItem_default = (0, import_react24.memo)(TagItem);
|
|
2089
|
+
var TagItemRoot = import_styled_components22.default.a`
|
|
2024
2090
|
isolation: isolate;
|
|
2025
2091
|
position: relative;
|
|
2026
2092
|
height: ${({ size }) => sizeMap[size]}px;
|
|
@@ -2036,17 +2102,16 @@ var TagItemRoot = import_styled_components18.default.a`
|
|
|
2036
2102
|
o.borderRadius(4),
|
|
2037
2103
|
status !== "active" && size === "M" && o.padding.horizontal(24),
|
|
2038
2104
|
status !== "active" && size === "S" && o.padding.horizontal(16),
|
|
2039
|
-
status === "inactive" && o.bg.surface3,
|
|
2040
2105
|
status === "inactive" ? o.font.text2 : o.font.text5,
|
|
2041
2106
|
...status === "active" ? [o.padding.left(16), o.padding.right(8)] : []
|
|
2042
2107
|
])}
|
|
2043
2108
|
|
|
2044
|
-
${
|
|
2109
|
+
${import_utils14.disabledSelector} {
|
|
2045
2110
|
${theme((o) => [o.disabled])}
|
|
2046
2111
|
cursor: default;
|
|
2047
2112
|
}
|
|
2048
2113
|
`;
|
|
2049
|
-
var Background =
|
|
2114
|
+
var Background = import_styled_components22.default.div`
|
|
2050
2115
|
position: absolute;
|
|
2051
2116
|
z-index: 1;
|
|
2052
2117
|
top: 0;
|
|
@@ -2055,8 +2120,9 @@ var Background = import_styled_components18.default.div`
|
|
|
2055
2120
|
height: 100%;
|
|
2056
2121
|
|
|
2057
2122
|
background-color: ${({ bgColor }) => bgColor};
|
|
2123
|
+
${({ status }) => status === "inactive" && theme((o) => o.bg.surface3)}
|
|
2058
2124
|
|
|
2059
|
-
${({ bgImage }) => bgImage !== void 0 &&
|
|
2125
|
+
${({ bgImage }) => bgImage !== void 0 && import_styled_components22.css`
|
|
2060
2126
|
${theme((o) => [o.bg.surface4])}
|
|
2061
2127
|
&::before {
|
|
2062
2128
|
content: '';
|
|
@@ -2072,25 +2138,25 @@ var Background = import_styled_components18.default.div`
|
|
|
2072
2138
|
}
|
|
2073
2139
|
`}
|
|
2074
2140
|
`;
|
|
2075
|
-
var Inner =
|
|
2141
|
+
var Inner = import_styled_components22.default.div`
|
|
2076
2142
|
display: inline-flex;
|
|
2077
|
-
gap: ${({ theme: theme4 }) => (0,
|
|
2143
|
+
gap: ${({ theme: theme4 }) => (0, import_utils14.px)(theme4.spacing[8])};
|
|
2078
2144
|
align-items: center;
|
|
2079
2145
|
z-index: 2;
|
|
2080
2146
|
`;
|
|
2081
|
-
var labelCSS =
|
|
2147
|
+
var labelCSS = import_styled_components22.css`
|
|
2082
2148
|
${theme((o) => [o.typography(14).bold])}
|
|
2083
2149
|
`;
|
|
2084
|
-
var translateLabelCSS =
|
|
2150
|
+
var translateLabelCSS = import_styled_components22.css`
|
|
2085
2151
|
display: flex;
|
|
2086
2152
|
align-items: center;
|
|
2087
2153
|
flex-direction: column;
|
|
2088
2154
|
font-size: 10px;
|
|
2089
2155
|
`;
|
|
2090
|
-
var LabelWrapper =
|
|
2156
|
+
var LabelWrapper = import_styled_components22.default.div`
|
|
2091
2157
|
${({ isTranslate }) => isTranslate ?? false ? translateLabelCSS : labelCSS}
|
|
2092
2158
|
`;
|
|
2093
|
-
var Label3 =
|
|
2159
|
+
var Label3 = import_styled_components22.default.span`
|
|
2094
2160
|
max-width: 152px;
|
|
2095
2161
|
overflow: hidden;
|
|
2096
2162
|
text-overflow: ellipsis;
|
|
@@ -2099,7 +2165,7 @@ var Label3 = import_styled_components18.default.span`
|
|
|
2099
2165
|
color: inherit;
|
|
2100
2166
|
line-height: inherit;
|
|
2101
2167
|
`;
|
|
2102
|
-
var TranslatedLabel =
|
|
2168
|
+
var TranslatedLabel = import_styled_components22.default.div`
|
|
2103
2169
|
${theme((o) => [o.typography(12).bold])}
|
|
2104
2170
|
`;
|
|
2105
2171
|
// Annotate the CommonJS export names for ESM import in node:
|
|
@@ -2132,4 +2198,4 @@ var TranslatedLabel = import_styled_components18.default.div`
|
|
|
2132
2198
|
TextField,
|
|
2133
2199
|
useComponentAbstraction
|
|
2134
2200
|
});
|
|
2135
|
-
//# sourceMappingURL=index.cjs.map
|
|
2201
|
+
//# sourceMappingURL=index.cjs.js.map
|