@wistia/ui 0.4.2-beta.b0f2a31f.4eb4d62 → 0.4.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +94 -106
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.mts +2 -11
- package/dist/index.d.ts +2 -11
- package/dist/index.mjs +17 -28
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
|
|
2
2
|
/*
|
|
3
|
-
* @license @wistia/ui v0.4.2
|
|
3
|
+
* @license @wistia/ui v0.4.2
|
|
4
4
|
*
|
|
5
5
|
* Copyright (c) 2024-2025, Wistia, Inc. and its affiliates.
|
|
6
6
|
*
|
|
@@ -90,7 +90,6 @@ __export(index_exports, {
|
|
|
90
90
|
mq: () => mq,
|
|
91
91
|
useActiveMq: () => useActiveMq,
|
|
92
92
|
useAriaLive: () => useAriaLive,
|
|
93
|
-
useBoolean: () => useBoolean,
|
|
94
93
|
useFormState: () => useFormState,
|
|
95
94
|
useMq: () => useMq,
|
|
96
95
|
useToast: () => useToast,
|
|
@@ -1557,21 +1556,11 @@ var mq = {
|
|
|
1557
1556
|
xlAndDown
|
|
1558
1557
|
};
|
|
1559
1558
|
|
|
1560
|
-
// src/hooks/useBoolean/useBoolean.ts
|
|
1561
|
-
var import_react3 = require("react");
|
|
1562
|
-
var useBoolean = (initialValue = false) => {
|
|
1563
|
-
const [value, setValue] = (0, import_react3.useState)(initialValue);
|
|
1564
|
-
const toggle = (0, import_react3.useCallback)(() => setValue((val) => !val), []);
|
|
1565
|
-
const setTrue = (0, import_react3.useCallback)(() => setValue(true), []);
|
|
1566
|
-
const setFalse = (0, import_react3.useCallback)(() => setValue(false), []);
|
|
1567
|
-
return [value, toggle, setTrue, setFalse, setValue];
|
|
1568
|
-
};
|
|
1569
|
-
|
|
1570
1559
|
// src/hooks/useMq/useMq.ts
|
|
1571
1560
|
var import_type_guards3 = require("@wistia/type-guards");
|
|
1572
1561
|
|
|
1573
1562
|
// src/hooks/useWindowSize/useWindowSize.ts
|
|
1574
|
-
var
|
|
1563
|
+
var import_react3 = require("react");
|
|
1575
1564
|
var import_throttle_debounce = require("throttle-debounce");
|
|
1576
1565
|
|
|
1577
1566
|
// src/private/helpers/isClient/isClient.ts
|
|
@@ -1579,11 +1568,11 @@ var isClient = () => typeof window !== "undefined" && typeof document !== "undef
|
|
|
1579
1568
|
|
|
1580
1569
|
// src/hooks/useWindowSize/useWindowSize.ts
|
|
1581
1570
|
var useWindowSize = (interval = 0) => {
|
|
1582
|
-
const [dimensions, setDimensions] = (0,
|
|
1571
|
+
const [dimensions, setDimensions] = (0, import_react3.useState)({
|
|
1583
1572
|
width: isClient() ? window.innerWidth : 0,
|
|
1584
1573
|
height: isClient() ? window.innerHeight : 0
|
|
1585
1574
|
});
|
|
1586
|
-
(0,
|
|
1575
|
+
(0, import_react3.useLayoutEffect)(() => {
|
|
1587
1576
|
const handleResize = (0, import_throttle_debounce.debounce)(
|
|
1588
1577
|
interval,
|
|
1589
1578
|
() => setDimensions({
|
|
@@ -1635,11 +1624,11 @@ var useActiveMq = () => {
|
|
|
1635
1624
|
};
|
|
1636
1625
|
|
|
1637
1626
|
// src/hooks/useToast/useToast.tsx
|
|
1638
|
-
var
|
|
1627
|
+
var import_react5 = require("react");
|
|
1639
1628
|
var import_sonner2 = require("sonner");
|
|
1640
1629
|
|
|
1641
1630
|
// src/private/components/Toast/Toast.tsx
|
|
1642
|
-
var
|
|
1631
|
+
var import_react4 = require("react");
|
|
1643
1632
|
var import_styled_components13 = __toESM(require("styled-components"));
|
|
1644
1633
|
var import_type_guards5 = require("@wistia/type-guards");
|
|
1645
1634
|
|
|
@@ -1860,8 +1849,8 @@ var StyledToast = import_styled_components13.default.div`
|
|
|
1860
1849
|
}
|
|
1861
1850
|
`;
|
|
1862
1851
|
var Action = ({ actionButton }) => {
|
|
1863
|
-
if ((0, import_type_guards5.isNotNil)(actionButton) && (0,
|
|
1864
|
-
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(ActionWrapper, { children: (0,
|
|
1852
|
+
if ((0, import_type_guards5.isNotNil)(actionButton) && (0, import_react4.isValidElement)(actionButton)) {
|
|
1853
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(ActionWrapper, { children: (0, import_react4.cloneElement)(actionButton, {
|
|
1865
1854
|
variant: "soft",
|
|
1866
1855
|
// force Button variant
|
|
1867
1856
|
size: "sm"
|
|
@@ -1897,7 +1886,7 @@ Toast.displayName = "Toast";
|
|
|
1897
1886
|
// src/hooks/useToast/useToast.tsx
|
|
1898
1887
|
var import_jsx_runtime6 = require("react/jsx-runtime");
|
|
1899
1888
|
var useToast = () => {
|
|
1900
|
-
return (0,
|
|
1889
|
+
return (0, import_react5.useCallback)(
|
|
1901
1890
|
({ message, action, colorScheme, icon, position = "bottom-left", duration = 3e3 }) => {
|
|
1902
1891
|
import_sonner2.toast.custom(
|
|
1903
1892
|
() => {
|
|
@@ -1919,10 +1908,10 @@ var useToast = () => {
|
|
|
1919
1908
|
};
|
|
1920
1909
|
|
|
1921
1910
|
// src/hooks/useAriaLive/useAriaLive.tsx
|
|
1922
|
-
var
|
|
1911
|
+
var import_react6 = require("react");
|
|
1923
1912
|
var import_type_guards6 = require("@wistia/type-guards");
|
|
1924
1913
|
var useAriaLive = () => {
|
|
1925
|
-
const context = (0,
|
|
1914
|
+
const context = (0, import_react6.useContext)(AriaLiveContext);
|
|
1926
1915
|
if ((0, import_type_guards6.isNil)(context)) {
|
|
1927
1916
|
throw new Error("useAriaLive must be used within an AriaLiveProvider");
|
|
1928
1917
|
}
|
|
@@ -1930,11 +1919,11 @@ var useAriaLive = () => {
|
|
|
1930
1919
|
};
|
|
1931
1920
|
|
|
1932
1921
|
// src/components/ActionButton/ActionButton.tsx
|
|
1933
|
-
var
|
|
1922
|
+
var import_react10 = require("react");
|
|
1934
1923
|
var import_styled_components19 = __toESM(require("styled-components"));
|
|
1935
1924
|
|
|
1936
1925
|
// src/components/Button/Button.tsx
|
|
1937
|
-
var
|
|
1926
|
+
var import_react9 = require("react");
|
|
1938
1927
|
var import_styled_components18 = __toESM(require("styled-components"));
|
|
1939
1928
|
var import_type_guards10 = require("@wistia/type-guards");
|
|
1940
1929
|
|
|
@@ -5301,13 +5290,13 @@ var iconMap = {
|
|
|
5301
5290
|
|
|
5302
5291
|
// src/private/hooks/useResponsiveProp/useResponsiveProp.ts
|
|
5303
5292
|
var import_type_guards7 = require("@wistia/type-guards");
|
|
5304
|
-
var
|
|
5293
|
+
var import_react7 = require("react");
|
|
5305
5294
|
var isResponsiveObject = (values) => {
|
|
5306
5295
|
return typeof values === "object" && values !== null && !Array.isArray(values) && "base" in values;
|
|
5307
5296
|
};
|
|
5308
5297
|
var useResponsiveProp = (values) => {
|
|
5309
5298
|
const activeMediaQueries = useActiveMq();
|
|
5310
|
-
return (0,
|
|
5299
|
+
return (0, import_react7.useMemo)(() => {
|
|
5311
5300
|
if ((0, import_type_guards7.isRecord)(values) && isResponsiveObject(values)) {
|
|
5312
5301
|
const mq2 = activeMediaQueries.find((key) => key in values);
|
|
5313
5302
|
return (0, import_type_guards7.isNotUndefined)(mq2) && (0, import_type_guards7.isNotUndefined)(values[mq2]) ? values[mq2] : values.base;
|
|
@@ -5374,7 +5363,7 @@ var Icon = ({
|
|
|
5374
5363
|
Icon.displayName = "Icon";
|
|
5375
5364
|
|
|
5376
5365
|
// src/components/Link/Link.tsx
|
|
5377
|
-
var
|
|
5366
|
+
var import_react8 = require("react");
|
|
5378
5367
|
var import_type_guards9 = require("@wistia/type-guards");
|
|
5379
5368
|
var import_styled_components17 = __toESM(require("styled-components"));
|
|
5380
5369
|
var import_react_router_dom = require("react-router-dom");
|
|
@@ -5402,7 +5391,7 @@ var StyledLink = import_styled_components17.default.a`
|
|
|
5402
5391
|
color: var(--wui-color-text-link);
|
|
5403
5392
|
text-decoration: ${({ $underline }) => $underline ? "underline" : "none"};
|
|
5404
5393
|
`;
|
|
5405
|
-
var Link = (0,
|
|
5394
|
+
var Link = (0, import_react8.forwardRef)(
|
|
5406
5395
|
({
|
|
5407
5396
|
beforeAction,
|
|
5408
5397
|
children,
|
|
@@ -5538,7 +5527,7 @@ var ButtonContent = ({
|
|
|
5538
5527
|
)
|
|
5539
5528
|
] });
|
|
5540
5529
|
};
|
|
5541
|
-
var Button = (0,
|
|
5530
|
+
var Button = (0, import_react9.forwardRef)(
|
|
5542
5531
|
({
|
|
5543
5532
|
children,
|
|
5544
5533
|
forceState,
|
|
@@ -5711,7 +5700,7 @@ var StyledLabel = import_styled_components19.default.span`
|
|
|
5711
5700
|
grid-row: 2;
|
|
5712
5701
|
text-align: left;
|
|
5713
5702
|
`;
|
|
5714
|
-
var ActionButton = (0,
|
|
5703
|
+
var ActionButton = (0, import_react10.forwardRef)(
|
|
5715
5704
|
({
|
|
5716
5705
|
icon,
|
|
5717
5706
|
colorScheme = "default",
|
|
@@ -5755,7 +5744,7 @@ var ActionButton = (0, import_react11.forwardRef)(
|
|
|
5755
5744
|
ActionButton.displayName = "ActionButton";
|
|
5756
5745
|
|
|
5757
5746
|
// src/components/Avatar/Avatar.tsx
|
|
5758
|
-
var
|
|
5747
|
+
var import_react11 = require("react");
|
|
5759
5748
|
var import_type_guards12 = require("@wistia/type-guards");
|
|
5760
5749
|
var import_styled_components21 = __toESM(require("styled-components"));
|
|
5761
5750
|
|
|
@@ -5886,7 +5875,7 @@ var Avatar = ({
|
|
|
5886
5875
|
onImageLoad,
|
|
5887
5876
|
...otherProps
|
|
5888
5877
|
}) => {
|
|
5889
|
-
const [imageLoadState, setImageLoadState] = (0,
|
|
5878
|
+
const [imageLoadState, setImageLoadState] = (0, import_react11.useState)(null);
|
|
5890
5879
|
const handleImageLoad = () => {
|
|
5891
5880
|
setImageLoadState("loaded");
|
|
5892
5881
|
onImageLoad?.("image");
|
|
@@ -5896,7 +5885,7 @@ var Avatar = ({
|
|
|
5896
5885
|
onImageLoad?.("initials");
|
|
5897
5886
|
};
|
|
5898
5887
|
const avatarSize = heightAndWidth ?? avatarSizeMap[size];
|
|
5899
|
-
const avatarColor = (0,
|
|
5888
|
+
const avatarColor = (0, import_react11.useMemo)(() => chooseColorScheme(name), [name]);
|
|
5900
5889
|
const showInitials = (0, import_type_guards12.isNil)(imageUrl) || imageLoadState === "error";
|
|
5901
5890
|
return /* @__PURE__ */ (0, import_jsx_runtime165.jsx)(
|
|
5902
5891
|
AvatarWrapper,
|
|
@@ -5926,7 +5915,7 @@ var Avatar = ({
|
|
|
5926
5915
|
Avatar.displayName = "Avatar";
|
|
5927
5916
|
|
|
5928
5917
|
// src/components/Badge/Badge.tsx
|
|
5929
|
-
var
|
|
5918
|
+
var import_react12 = require("react");
|
|
5930
5919
|
var import_styled_components22 = __toESM(require("styled-components"));
|
|
5931
5920
|
var import_type_guards13 = require("@wistia/type-guards");
|
|
5932
5921
|
var import_jsx_runtime166 = require("react/jsx-runtime");
|
|
@@ -5950,7 +5939,7 @@ var StyledBadge = import_styled_components22.default.div`
|
|
|
5950
5939
|
width: 12px;
|
|
5951
5940
|
}
|
|
5952
5941
|
`;
|
|
5953
|
-
var Badge = (0,
|
|
5942
|
+
var Badge = (0, import_react12.forwardRef)(
|
|
5954
5943
|
({ colorScheme = "inherit", label, icon, ...otherProps }, ref) => {
|
|
5955
5944
|
const hasIcon = (0, import_type_guards13.isNotNil)(icon);
|
|
5956
5945
|
return /* @__PURE__ */ (0, import_jsx_runtime166.jsxs)(
|
|
@@ -5971,7 +5960,7 @@ var Badge = (0, import_react13.forwardRef)(
|
|
|
5971
5960
|
Badge.displayName = "Badge";
|
|
5972
5961
|
|
|
5973
5962
|
// src/components/Box/Box.tsx
|
|
5974
|
-
var
|
|
5963
|
+
var import_react13 = require("react");
|
|
5975
5964
|
var import_styled_components23 = __toESM(require("styled-components"));
|
|
5976
5965
|
var import_type_guards14 = require("@wistia/type-guards");
|
|
5977
5966
|
var import_jsx_runtime167 = require("react/jsx-runtime");
|
|
@@ -6038,13 +6027,13 @@ var BoxComponent = import_styled_components23.default.div`
|
|
|
6038
6027
|
var wrapChildren = (children) => {
|
|
6039
6028
|
if ((0, import_type_guards14.isNotNil)(children)) {
|
|
6040
6029
|
if (typeof children === "object" && isDev) {
|
|
6041
|
-
return
|
|
6030
|
+
return import_react13.Children.map(children, (child) => {
|
|
6042
6031
|
if ((0, import_type_guards14.isNil)(child)) return null;
|
|
6043
6032
|
const elementParams = {};
|
|
6044
6033
|
if (child.type?.displayName === "Box" || child.type?.displayName === "Box_UI") {
|
|
6045
6034
|
elementParams.hasBoxParent = true;
|
|
6046
6035
|
}
|
|
6047
|
-
return (0,
|
|
6036
|
+
return (0, import_react13.cloneElement)(child, elementParams);
|
|
6048
6037
|
});
|
|
6049
6038
|
}
|
|
6050
6039
|
return children;
|
|
@@ -6205,7 +6194,7 @@ var Card = ({
|
|
|
6205
6194
|
Card.displayName = "Card";
|
|
6206
6195
|
|
|
6207
6196
|
// src/components/Checkbox/Checkbox.tsx
|
|
6208
|
-
var
|
|
6197
|
+
var import_react15 = require("react");
|
|
6209
6198
|
var import_react_checkbox = require("@radix-ui/react-checkbox");
|
|
6210
6199
|
var import_styled_components29 = __toESM(require("styled-components"));
|
|
6211
6200
|
var import_type_guards17 = require("@wistia/type-guards");
|
|
@@ -6214,7 +6203,7 @@ var import_type_guards17 = require("@wistia/type-guards");
|
|
|
6214
6203
|
var import_styled_components27 = __toESM(require("styled-components"));
|
|
6215
6204
|
|
|
6216
6205
|
// src/components/Heading/Heading.tsx
|
|
6217
|
-
var
|
|
6206
|
+
var import_react14 = require("react");
|
|
6218
6207
|
var import_styled_components26 = __toESM(require("styled-components"));
|
|
6219
6208
|
|
|
6220
6209
|
// src/private/helpers/makePolymorphic/makePolymorphic.tsx
|
|
@@ -6308,7 +6297,7 @@ var variantElementMap = {
|
|
|
6308
6297
|
heading5: "h5",
|
|
6309
6298
|
heading6: "h6"
|
|
6310
6299
|
};
|
|
6311
|
-
var HeadingComponent = (0,
|
|
6300
|
+
var HeadingComponent = (0, import_react14.forwardRef)(
|
|
6312
6301
|
({
|
|
6313
6302
|
align = "left",
|
|
6314
6303
|
colorScheme = "inherit",
|
|
@@ -6489,7 +6478,7 @@ var StyledLabelWrapper = import_styled_components29.default.div`
|
|
|
6489
6478
|
flex-direction: column;
|
|
6490
6479
|
margin-left: var(--wui-space-02);
|
|
6491
6480
|
`;
|
|
6492
|
-
var Checkbox = (0,
|
|
6481
|
+
var Checkbox = (0, import_react15.forwardRef)(
|
|
6493
6482
|
({
|
|
6494
6483
|
checked,
|
|
6495
6484
|
disabled = false,
|
|
@@ -6503,7 +6492,7 @@ var Checkbox = (0, import_react16.forwardRef)(
|
|
|
6503
6492
|
value = "false",
|
|
6504
6493
|
...otherProps
|
|
6505
6494
|
}, ref) => {
|
|
6506
|
-
const generatedId = (0,
|
|
6495
|
+
const generatedId = (0, import_react15.useId)();
|
|
6507
6496
|
const computedId = (0, import_type_guards17.isNonEmptyString)(id) ? id : `wistia-ui-checkbox-group-${generatedId}`;
|
|
6508
6497
|
return /* @__PURE__ */ (0, import_jsx_runtime173.jsxs)(StyledCheckboxWrapper, { children: [
|
|
6509
6498
|
/* @__PURE__ */ (0, import_jsx_runtime173.jsx)(
|
|
@@ -6595,12 +6584,12 @@ var Divider = ({
|
|
|
6595
6584
|
Divider.displayName = "Divider";
|
|
6596
6585
|
|
|
6597
6586
|
// src/components/Form/Form.tsx
|
|
6598
|
-
var
|
|
6587
|
+
var import_react17 = require("react");
|
|
6599
6588
|
var import_styled_components32 = __toESM(require("styled-components"));
|
|
6600
6589
|
var import_type_guards18 = require("@wistia/type-guards");
|
|
6601
6590
|
|
|
6602
6591
|
// src/components/Stack/Stack.tsx
|
|
6603
|
-
var
|
|
6592
|
+
var import_react16 = require("react");
|
|
6604
6593
|
var import_styled_components31 = __toESM(require("styled-components"));
|
|
6605
6594
|
var import_jsx_runtime175 = require("react/jsx-runtime");
|
|
6606
6595
|
var DEFAULT_ELEMENT2 = "div";
|
|
@@ -6609,7 +6598,7 @@ var StyledStack = import_styled_components31.default.div`
|
|
|
6609
6598
|
flex-direction: ${({ $direction }) => $direction === "horizontal" ? "row" : "column"};
|
|
6610
6599
|
gap: ${({ $gap }) => `var(--wui-${$gap})`};
|
|
6611
6600
|
`;
|
|
6612
|
-
var StackComponent = (0,
|
|
6601
|
+
var StackComponent = (0, import_react16.forwardRef)(
|
|
6613
6602
|
({ renderAs, direction = "vertical", gap = "space-02", ...props }, ref) => {
|
|
6614
6603
|
const responsiveGap = useResponsiveProp(gap);
|
|
6615
6604
|
const responsiveDirection = useResponsiveProp(direction);
|
|
@@ -6636,18 +6625,18 @@ var StyledForm = import_styled_components32.default.form`
|
|
|
6636
6625
|
max-width: ${({ $fullWidth }) => $fullWidth ? "auto" : "var(--form-default-width)"};
|
|
6637
6626
|
align-items: ${({ $fullWidth }) => $fullWidth ? "stretch" : "flex-start"};
|
|
6638
6627
|
`;
|
|
6639
|
-
var FormContext = (0,
|
|
6628
|
+
var FormContext = (0, import_react17.createContext)({
|
|
6640
6629
|
values: {},
|
|
6641
6630
|
errors: {},
|
|
6642
6631
|
hasSubmitted: false,
|
|
6643
6632
|
formId: ""
|
|
6644
6633
|
});
|
|
6645
6634
|
var FormComponent = ({ children, action, values = {}, validate, fullWidth = false, ...props }, forwardedRef) => {
|
|
6646
|
-
const [errors, setErrors] = (0,
|
|
6647
|
-
const [hasSubmitted, setHasSubmitted] = (0,
|
|
6648
|
-
const innerRef = (0,
|
|
6635
|
+
const [errors, setErrors] = (0, import_react17.useState)({});
|
|
6636
|
+
const [hasSubmitted, setHasSubmitted] = (0, import_react17.useState)(false);
|
|
6637
|
+
const innerRef = (0, import_react17.useRef)();
|
|
6649
6638
|
const ref = forwardedRef ?? innerRef;
|
|
6650
|
-
const autoId = (0,
|
|
6639
|
+
const autoId = (0, import_react17.useId)();
|
|
6651
6640
|
const id = props.id ?? autoId;
|
|
6652
6641
|
const handleValidate = (nextFormData) => {
|
|
6653
6642
|
const nextData = Object.fromEntries(nextFormData.entries());
|
|
@@ -6689,7 +6678,7 @@ var FormComponent = ({ children, action, values = {}, validate, fullWidth = fals
|
|
|
6689
6678
|
void action(null);
|
|
6690
6679
|
}
|
|
6691
6680
|
};
|
|
6692
|
-
const context = (0,
|
|
6681
|
+
const context = (0, import_react17.useMemo)(() => {
|
|
6693
6682
|
return {
|
|
6694
6683
|
values,
|
|
6695
6684
|
errors,
|
|
@@ -6717,15 +6706,15 @@ var FormComponent = ({ children, action, values = {}, validate, fullWidth = fals
|
|
|
6717
6706
|
);
|
|
6718
6707
|
};
|
|
6719
6708
|
FormComponent.displayName = "Form";
|
|
6720
|
-
var Form = (0,
|
|
6709
|
+
var Form = (0, import_react17.forwardRef)(FormComponent);
|
|
6721
6710
|
|
|
6722
6711
|
// src/components/Form/useFormState.tsx
|
|
6723
|
-
var
|
|
6712
|
+
var import_react18 = require("react");
|
|
6724
6713
|
var useFormState = (action, initialData = {}) => {
|
|
6725
|
-
const [data, setData] = (0,
|
|
6726
|
-
const [isPending, setIsPending] = (0,
|
|
6727
|
-
const [error, setError] = (0,
|
|
6728
|
-
const formAction = (0,
|
|
6714
|
+
const [data, setData] = (0, import_react18.useState)(initialData);
|
|
6715
|
+
const [isPending, setIsPending] = (0, import_react18.useState)(false);
|
|
6716
|
+
const [error, setError] = (0, import_react18.useState)(null);
|
|
6717
|
+
const formAction = (0, import_react18.useCallback)(
|
|
6729
6718
|
async (nextFormData) => {
|
|
6730
6719
|
if (nextFormData === null) {
|
|
6731
6720
|
setData(initialData);
|
|
@@ -6756,15 +6745,15 @@ var useFormState = (action, initialData = {}) => {
|
|
|
6756
6745
|
};
|
|
6757
6746
|
|
|
6758
6747
|
// src/components/Form/FormErrorSummary.tsx
|
|
6759
|
-
var
|
|
6748
|
+
var import_react19 = require("react");
|
|
6760
6749
|
var import_type_guards19 = require("@wistia/type-guards");
|
|
6761
6750
|
var import_jsx_runtime177 = require("react/jsx-runtime");
|
|
6762
6751
|
var ErrorItem = ({ name, error, formId }) => {
|
|
6763
6752
|
return /* @__PURE__ */ (0, import_jsx_runtime177.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime177.jsx)(Link, { href: `${formId}-${name}`, children: error }) }, name);
|
|
6764
6753
|
};
|
|
6765
6754
|
var FormErrorSummary = ({ description }) => {
|
|
6766
|
-
const ref = (0,
|
|
6767
|
-
const { formId, errors, hasSubmitted } = (0,
|
|
6755
|
+
const ref = (0, import_react19.useRef)(null);
|
|
6756
|
+
const { formId, errors, hasSubmitted } = (0, import_react19.useContext)(FormContext);
|
|
6768
6757
|
const isValid = Object.keys(errors).length === 0;
|
|
6769
6758
|
if (isValid || !hasSubmitted) {
|
|
6770
6759
|
return null;
|
|
@@ -6794,12 +6783,12 @@ var FormErrorSummary = ({ description }) => {
|
|
|
6794
6783
|
};
|
|
6795
6784
|
|
|
6796
6785
|
// src/components/FormField/FormField.tsx
|
|
6797
|
-
var
|
|
6786
|
+
var import_react23 = require("react");
|
|
6798
6787
|
var import_styled_components35 = __toESM(require("styled-components"));
|
|
6799
6788
|
var import_type_guards20 = require("@wistia/type-guards");
|
|
6800
6789
|
|
|
6801
6790
|
// src/components/Text/Text.tsx
|
|
6802
|
-
var
|
|
6791
|
+
var import_react20 = require("react");
|
|
6803
6792
|
var import_styled_components33 = __toESM(require("styled-components"));
|
|
6804
6793
|
var import_jsx_runtime178 = require("react/jsx-runtime");
|
|
6805
6794
|
var bodyBoldStyles = import_styled_components33.css`
|
|
@@ -6941,7 +6930,7 @@ var StyledText = import_styled_components33.default.div`
|
|
|
6941
6930
|
`}
|
|
6942
6931
|
`;
|
|
6943
6932
|
var DEFAULT_ELEMENT3 = "div";
|
|
6944
|
-
var TextComponent = (0,
|
|
6933
|
+
var TextComponent = (0, import_react20.forwardRef)(
|
|
6945
6934
|
({
|
|
6946
6935
|
align = "left",
|
|
6947
6936
|
colorScheme = "inherit",
|
|
@@ -6976,11 +6965,11 @@ TextComponent.displayName = "Text";
|
|
|
6976
6965
|
var Text = makePolymorphic(TextComponent);
|
|
6977
6966
|
|
|
6978
6967
|
// src/components/FormGroup/CheckboxGroup.tsx
|
|
6979
|
-
var
|
|
6968
|
+
var import_react22 = require("react");
|
|
6980
6969
|
|
|
6981
6970
|
// src/components/FormGroup/FormGroup.tsx
|
|
6982
6971
|
var import_styled_components34 = __toESM(require("styled-components"));
|
|
6983
|
-
var
|
|
6972
|
+
var import_react21 = require("react");
|
|
6984
6973
|
var import_jsx_runtime179 = require("react/jsx-runtime");
|
|
6985
6974
|
var StyledFieldset = import_styled_components34.default.fieldset`
|
|
6986
6975
|
border: 0;
|
|
@@ -6989,7 +6978,7 @@ var StyledLegend = import_styled_components34.default.legend`
|
|
|
6989
6978
|
margin-bottom: var(--space-01);
|
|
6990
6979
|
`;
|
|
6991
6980
|
var FormGroup = ({ children, label, ...props }) => {
|
|
6992
|
-
const ref = (0,
|
|
6981
|
+
const ref = (0, import_react21.useRef)();
|
|
6993
6982
|
return /* @__PURE__ */ (0, import_jsx_runtime179.jsxs)(
|
|
6994
6983
|
Stack,
|
|
6995
6984
|
{
|
|
@@ -7014,7 +7003,7 @@ FormGroup.displayName = "FormGroup";
|
|
|
7014
7003
|
|
|
7015
7004
|
// src/components/FormGroup/CheckboxGroup.tsx
|
|
7016
7005
|
var import_jsx_runtime180 = require("react/jsx-runtime");
|
|
7017
|
-
var CheckboxGroupContext = (0,
|
|
7006
|
+
var CheckboxGroupContext = (0, import_react22.createContext)(null);
|
|
7018
7007
|
var CheckboxGroup = ({
|
|
7019
7008
|
children,
|
|
7020
7009
|
name,
|
|
@@ -7022,7 +7011,7 @@ var CheckboxGroup = ({
|
|
|
7022
7011
|
value,
|
|
7023
7012
|
...props
|
|
7024
7013
|
}) => {
|
|
7025
|
-
const context = (0,
|
|
7014
|
+
const context = (0, import_react22.useMemo)(() => {
|
|
7026
7015
|
return {
|
|
7027
7016
|
name,
|
|
7028
7017
|
onChange
|
|
@@ -7082,8 +7071,8 @@ var FormField = ({
|
|
|
7082
7071
|
value,
|
|
7083
7072
|
...props
|
|
7084
7073
|
}) => {
|
|
7085
|
-
const formState = (0,
|
|
7086
|
-
const checkboxGroup = (0,
|
|
7074
|
+
const formState = (0, import_react23.useContext)(FormContext);
|
|
7075
|
+
const checkboxGroup = (0, import_react23.useContext)(CheckboxGroupContext);
|
|
7087
7076
|
const id = props.id ?? `${formState.formId}-${name}`;
|
|
7088
7077
|
const isInlineLabel = children.type === Checkbox;
|
|
7089
7078
|
const computedError = error ?? formState.errors[name];
|
|
@@ -7118,10 +7107,10 @@ var FormField = ({
|
|
|
7118
7107
|
"aria-describedby": (0, import_type_guards20.isNotNil)(error) ? `${id}-error` : void 0
|
|
7119
7108
|
};
|
|
7120
7109
|
}
|
|
7121
|
-
|
|
7110
|
+
import_react23.Children.only(children);
|
|
7122
7111
|
return /* @__PURE__ */ (0, import_jsx_runtime181.jsxs)(StyledFormField, { ...props, children: [
|
|
7123
7112
|
!isInlineLabel && /* @__PURE__ */ (0, import_jsx_runtime181.jsx)(Label, { htmlFor: id, children: label }),
|
|
7124
|
-
(0,
|
|
7113
|
+
(0, import_react23.cloneElement)(children, childProps),
|
|
7125
7114
|
(0, import_type_guards20.isNotNil)(computedError) ? /* @__PURE__ */ (0, import_jsx_runtime181.jsx)(
|
|
7126
7115
|
ErrorMessages,
|
|
7127
7116
|
{
|
|
@@ -7134,9 +7123,9 @@ var FormField = ({
|
|
|
7134
7123
|
FormField.displayName = "FormField";
|
|
7135
7124
|
|
|
7136
7125
|
// src/components/FormGroup/RadioGroup.tsx
|
|
7137
|
-
var
|
|
7126
|
+
var import_react24 = require("react");
|
|
7138
7127
|
var import_jsx_runtime182 = require("react/jsx-runtime");
|
|
7139
|
-
var RadioGroupContext = (0,
|
|
7128
|
+
var RadioGroupContext = (0, import_react24.createContext)(null);
|
|
7140
7129
|
var RadioGroup = ({
|
|
7141
7130
|
children,
|
|
7142
7131
|
name,
|
|
@@ -7144,7 +7133,7 @@ var RadioGroup = ({
|
|
|
7144
7133
|
value,
|
|
7145
7134
|
...props
|
|
7146
7135
|
}) => {
|
|
7147
|
-
const context = (0,
|
|
7136
|
+
const context = (0, import_react24.useMemo)(() => {
|
|
7148
7137
|
return {
|
|
7149
7138
|
name,
|
|
7150
7139
|
onChange
|
|
@@ -7155,7 +7144,7 @@ var RadioGroup = ({
|
|
|
7155
7144
|
RadioGroup.displayName = "RadioGroup";
|
|
7156
7145
|
|
|
7157
7146
|
// src/components/IconButton/IconButton.tsx
|
|
7158
|
-
var
|
|
7147
|
+
var import_react25 = require("react");
|
|
7159
7148
|
var import_styled_components36 = __toESM(require("styled-components"));
|
|
7160
7149
|
var import_jsx_runtime183 = require("react/jsx-runtime");
|
|
7161
7150
|
var StyledButton2 = (0, import_styled_components36.default)(Button)`
|
|
@@ -7172,7 +7161,7 @@ var StyledButton2 = (0, import_styled_components36.default)(Button)`
|
|
|
7172
7161
|
align-items: center;
|
|
7173
7162
|
line-height: 1;
|
|
7174
7163
|
`;
|
|
7175
|
-
var IconButton = (0,
|
|
7164
|
+
var IconButton = (0, import_react25.forwardRef)(
|
|
7176
7165
|
({ children, label, size = "md", ...props }, ref) => {
|
|
7177
7166
|
const responsiveSize = useResponsiveProp(size);
|
|
7178
7167
|
return /* @__PURE__ */ (0, import_jsx_runtime183.jsx)(
|
|
@@ -7183,7 +7172,7 @@ var IconButton = (0, import_react26.forwardRef)(
|
|
|
7183
7172
|
"aria-label": label,
|
|
7184
7173
|
"data-wistia-ui-icon-button": true,
|
|
7185
7174
|
size: responsiveSize,
|
|
7186
|
-
children: (0,
|
|
7175
|
+
children: (0, import_react25.cloneElement)(import_react25.Children.only(children), {
|
|
7187
7176
|
size: responsiveSize
|
|
7188
7177
|
})
|
|
7189
7178
|
}
|
|
@@ -7193,7 +7182,7 @@ var IconButton = (0, import_react26.forwardRef)(
|
|
|
7193
7182
|
IconButton.displayName = "IconButton";
|
|
7194
7183
|
|
|
7195
7184
|
// src/components/Input/Input.tsx
|
|
7196
|
-
var
|
|
7185
|
+
var import_react26 = require("react");
|
|
7197
7186
|
var import_styled_components37 = __toESM(require("styled-components"));
|
|
7198
7187
|
var import_type_guards21 = require("@wistia/type-guards");
|
|
7199
7188
|
var import_jsx_runtime184 = require("react/jsx-runtime");
|
|
@@ -7285,7 +7274,7 @@ var StyledInputContainer = import_styled_components37.default.div`
|
|
|
7285
7274
|
var isValidRef = (ref) => {
|
|
7286
7275
|
return typeof ref === "object" && ref !== null && "current" in ref && (0, import_type_guards21.isNotNil)(ref.current);
|
|
7287
7276
|
};
|
|
7288
|
-
var Input = (0,
|
|
7277
|
+
var Input = (0, import_react26.forwardRef)(
|
|
7289
7278
|
({
|
|
7290
7279
|
fullWidth = false,
|
|
7291
7280
|
monospace = false,
|
|
@@ -7295,21 +7284,21 @@ var Input = (0, import_react27.forwardRef)(
|
|
|
7295
7284
|
rightIcon,
|
|
7296
7285
|
...props
|
|
7297
7286
|
}, externalRef) => {
|
|
7298
|
-
const internalRef = (0,
|
|
7287
|
+
const internalRef = (0, import_react26.useRef)();
|
|
7299
7288
|
const ref = isValidRef(externalRef) ? externalRef : internalRef;
|
|
7300
7289
|
let leftIconToDisplay = leftIcon;
|
|
7301
7290
|
if ((0, import_type_guards21.isNil)(leftIcon) && type === "search") {
|
|
7302
7291
|
leftIconToDisplay = /* @__PURE__ */ (0, import_jsx_runtime184.jsx)(Icon, { type: "search" });
|
|
7303
7292
|
}
|
|
7304
7293
|
if ((0, import_type_guards21.isNotNil)(leftIconToDisplay)) {
|
|
7305
|
-
leftIconToDisplay = (0,
|
|
7294
|
+
leftIconToDisplay = (0, import_react26.cloneElement)(leftIconToDisplay, {
|
|
7306
7295
|
size: "md",
|
|
7307
7296
|
className: "wui-input-left-icon"
|
|
7308
7297
|
});
|
|
7309
7298
|
}
|
|
7310
7299
|
let rightIconToDisplay = rightIcon;
|
|
7311
7300
|
if ((0, import_type_guards21.isNotNil)(rightIconToDisplay)) {
|
|
7312
|
-
rightIconToDisplay = (0,
|
|
7301
|
+
rightIconToDisplay = (0, import_react26.cloneElement)(rightIconToDisplay, {
|
|
7313
7302
|
size: "md",
|
|
7314
7303
|
className: "wui-input-right-icon"
|
|
7315
7304
|
});
|
|
@@ -7529,13 +7518,13 @@ var MenuLabel = ({ children, ...props }) => {
|
|
|
7529
7518
|
MenuLabel.displayName = "MenuLabel";
|
|
7530
7519
|
|
|
7531
7520
|
// src/components/Menu/SubMenu.tsx
|
|
7532
|
-
var
|
|
7521
|
+
var import_react28 = require("react");
|
|
7533
7522
|
var import_styled_components42 = __toESM(require("styled-components"));
|
|
7534
7523
|
var import_react_dropdown_menu3 = require("@radix-ui/react-dropdown-menu");
|
|
7535
7524
|
var import_type_guards24 = require("@wistia/type-guards");
|
|
7536
7525
|
|
|
7537
7526
|
// src/components/Menu/MenuItemButton.tsx
|
|
7538
|
-
var
|
|
7527
|
+
var import_react27 = require("react");
|
|
7539
7528
|
var import_styled_components40 = __toESM(require("styled-components"));
|
|
7540
7529
|
var import_type_guards23 = require("@wistia/type-guards");
|
|
7541
7530
|
var import_jsx_runtime187 = require("react/jsx-runtime");
|
|
@@ -7607,7 +7596,7 @@ var StyledBadgeContainer = import_styled_components40.default.div`
|
|
|
7607
7596
|
font-size: var(--wui-typography-label-4-size);
|
|
7608
7597
|
color: var(--wui-color-text-secondary);
|
|
7609
7598
|
`;
|
|
7610
|
-
var MenuItemButton = (0,
|
|
7599
|
+
var MenuItemButton = (0, import_react27.forwardRef)(({ children, appearance, command, icon, ...props }, ref) => {
|
|
7611
7600
|
let { colorScheme, badge } = props;
|
|
7612
7601
|
if (appearance === "dangerous") {
|
|
7613
7602
|
if ((0, import_type_guards23.isNotUndefined)(colorScheme)) {
|
|
@@ -7703,7 +7692,7 @@ var SubMenu = ({
|
|
|
7703
7692
|
...props
|
|
7704
7693
|
}) => {
|
|
7705
7694
|
const { isSmAndUp } = useMq();
|
|
7706
|
-
const [isExpanded, setIsExpanded] = (0,
|
|
7695
|
+
const [isExpanded, setIsExpanded] = (0, import_react28.useState)(false);
|
|
7707
7696
|
return isSmAndUp ? /* @__PURE__ */ (0, import_jsx_runtime189.jsxs)(import_react_dropdown_menu3.DropdownMenuSub, { onOpenChange, children: [
|
|
7708
7697
|
/* @__PURE__ */ (0, import_jsx_runtime189.jsxs)(SubMenuTrigger, { ...props, children: [
|
|
7709
7698
|
/* @__PURE__ */ (0, import_jsx_runtime189.jsx)(MenuItemLabel, { children: label }),
|
|
@@ -7731,10 +7720,10 @@ var SubMenu = ({
|
|
|
7731
7720
|
SubMenu.displayName = "SubMenu";
|
|
7732
7721
|
|
|
7733
7722
|
// src/components/Menu/MenuItem.tsx
|
|
7734
|
-
var
|
|
7723
|
+
var import_react29 = require("react");
|
|
7735
7724
|
var import_react_dropdown_menu4 = require("@radix-ui/react-dropdown-menu");
|
|
7736
7725
|
var import_jsx_runtime190 = require("react/jsx-runtime");
|
|
7737
|
-
var MenuItem = (0,
|
|
7726
|
+
var MenuItem = (0, import_react29.forwardRef)(
|
|
7738
7727
|
({ onSelect = () => null, ...props }, ref) => {
|
|
7739
7728
|
return /* @__PURE__ */ (0, import_jsx_runtime190.jsx)(
|
|
7740
7729
|
import_react_dropdown_menu4.DropdownMenuItem,
|
|
@@ -7884,7 +7873,7 @@ var CheckboxMenuItem = ({
|
|
|
7884
7873
|
CheckboxMenuItem.displayName = "CheckboxMenuItem";
|
|
7885
7874
|
|
|
7886
7875
|
// src/components/Modal/Modal.tsx
|
|
7887
|
-
var
|
|
7876
|
+
var import_react33 = require("react");
|
|
7888
7877
|
var import_styled_components48 = __toESM(require("styled-components"));
|
|
7889
7878
|
var import_react_dialog4 = require("@radix-ui/react-dialog");
|
|
7890
7879
|
var import_type_guards27 = require("@wistia/type-guards");
|
|
@@ -7967,19 +7956,19 @@ var ModalHeader = ({
|
|
|
7967
7956
|
};
|
|
7968
7957
|
|
|
7969
7958
|
// src/components/Modal/ModalContent.tsx
|
|
7970
|
-
var
|
|
7959
|
+
var import_react31 = require("react");
|
|
7971
7960
|
var import_styled_components46 = __toESM(require("styled-components"));
|
|
7972
7961
|
var import_react_dialog3 = require("@radix-ui/react-dialog");
|
|
7973
7962
|
|
|
7974
7963
|
// src/private/hooks/useFocusRestore/useFocusRestore.ts
|
|
7975
|
-
var
|
|
7964
|
+
var import_react30 = require("react");
|
|
7976
7965
|
var import_type_guards26 = require("@wistia/type-guards");
|
|
7977
7966
|
var useFocusRestore = () => {
|
|
7978
|
-
const previouslyFocusedRef = (0,
|
|
7979
|
-
(0,
|
|
7967
|
+
const previouslyFocusedRef = (0, import_react30.useRef)(null);
|
|
7968
|
+
(0, import_react30.useEffect)(() => {
|
|
7980
7969
|
previouslyFocusedRef.current = document.activeElement;
|
|
7981
7970
|
}, []);
|
|
7982
|
-
(0,
|
|
7971
|
+
(0, import_react30.useEffect)(() => {
|
|
7983
7972
|
return () => {
|
|
7984
7973
|
if ((0, import_type_guards26.isNotNil)(previouslyFocusedRef.current)) {
|
|
7985
7974
|
setTimeout(() => {
|
|
@@ -8032,7 +8021,7 @@ var StyledModalContent = (0, import_styled_components46.default)(import_react_di
|
|
|
8032
8021
|
}
|
|
8033
8022
|
}
|
|
8034
8023
|
`;
|
|
8035
|
-
var ModalContent = (0,
|
|
8024
|
+
var ModalContent = (0, import_react31.forwardRef)(
|
|
8036
8025
|
({ fullHeight, width, children, ...otherProps }, ref) => {
|
|
8037
8026
|
useFocusRestore();
|
|
8038
8027
|
return /* @__PURE__ */ (0, import_jsx_runtime197.jsx)(
|
|
@@ -8049,7 +8038,7 @@ var ModalContent = (0, import_react32.forwardRef)(
|
|
|
8049
8038
|
);
|
|
8050
8039
|
|
|
8051
8040
|
// src/private/components/Backdrop/Backdrop.tsx
|
|
8052
|
-
var
|
|
8041
|
+
var import_react32 = require("react");
|
|
8053
8042
|
var import_styled_components47 = __toESM(require("styled-components"));
|
|
8054
8043
|
var import_jsx_runtime198 = require("react/jsx-runtime");
|
|
8055
8044
|
var backdropAnimationDuration = 150;
|
|
@@ -8087,7 +8076,7 @@ var BackdropComponent = import_styled_components47.default.div`
|
|
|
8087
8076
|
}
|
|
8088
8077
|
}
|
|
8089
8078
|
`;
|
|
8090
|
-
var Backdrop = (0,
|
|
8079
|
+
var Backdrop = (0, import_react32.forwardRef)(
|
|
8091
8080
|
({ alignHorizontal = "center", alignVertical = "center", children, ...otherProps }, ref) => /* @__PURE__ */ (0, import_jsx_runtime198.jsx)(
|
|
8092
8081
|
BackdropComponent,
|
|
8093
8082
|
{
|
|
@@ -8108,7 +8097,7 @@ var ModalBody = import_styled_components48.default.div`
|
|
|
8108
8097
|
display: flex;
|
|
8109
8098
|
order: 2;
|
|
8110
8099
|
`;
|
|
8111
|
-
var Modal = (0,
|
|
8100
|
+
var Modal = (0, import_react33.forwardRef)(
|
|
8112
8101
|
({
|
|
8113
8102
|
children,
|
|
8114
8103
|
fullHeight = false,
|
|
@@ -8169,7 +8158,7 @@ var Modal = (0, import_react34.forwardRef)(
|
|
|
8169
8158
|
Modal.displayName = "Modal";
|
|
8170
8159
|
|
|
8171
8160
|
// src/components/Radio/Radio.tsx
|
|
8172
|
-
var
|
|
8161
|
+
var import_react34 = require("react");
|
|
8173
8162
|
var import_styled_components49 = __toESM(require("styled-components"));
|
|
8174
8163
|
var import_type_guards28 = require("@wistia/type-guards");
|
|
8175
8164
|
var import_jsx_runtime200 = require("react/jsx-runtime");
|
|
@@ -8243,7 +8232,7 @@ var StyledRadioWrapper = import_styled_components49.default.div`
|
|
|
8243
8232
|
|
|
8244
8233
|
${({ disabled }) => disabled && disabledStyle2};
|
|
8245
8234
|
`;
|
|
8246
|
-
var Radio = (0,
|
|
8235
|
+
var Radio = (0, import_react34.forwardRef)(
|
|
8247
8236
|
({
|
|
8248
8237
|
checked,
|
|
8249
8238
|
disabled = false,
|
|
@@ -8256,7 +8245,7 @@ var Radio = (0, import_react35.forwardRef)(
|
|
|
8256
8245
|
value = "false",
|
|
8257
8246
|
...otherProps
|
|
8258
8247
|
}, ref) => {
|
|
8259
|
-
const generatedId = (0,
|
|
8248
|
+
const generatedId = (0, import_react34.useId)();
|
|
8260
8249
|
const computedId = (0, import_type_guards28.isNonEmptyString)(id) ? id : `ui-radio-${generatedId}`;
|
|
8261
8250
|
return /* @__PURE__ */ (0, import_jsx_runtime200.jsxs)(
|
|
8262
8251
|
StyledRadioWrapper,
|
|
@@ -8299,7 +8288,7 @@ var Radio = (0, import_react35.forwardRef)(
|
|
|
8299
8288
|
Radio.displayName = "Radio";
|
|
8300
8289
|
|
|
8301
8290
|
// src/components/Tag/Tag.tsx
|
|
8302
|
-
var
|
|
8291
|
+
var import_react35 = require("react");
|
|
8303
8292
|
var import_styled_components50 = __toESM(require("styled-components"));
|
|
8304
8293
|
var import_type_guards29 = require("@wistia/type-guards");
|
|
8305
8294
|
var import_jsx_runtime201 = require("react/jsx-runtime");
|
|
@@ -8405,7 +8394,7 @@ var RemoveButton = ({ onClickRemove, onClickRemoveLabel, colorScheme }) => {
|
|
|
8405
8394
|
)
|
|
8406
8395
|
] });
|
|
8407
8396
|
};
|
|
8408
|
-
var Tag = (0,
|
|
8397
|
+
var Tag = (0, import_react35.forwardRef)(
|
|
8409
8398
|
({ onClickRemove, colorScheme = "inherit", href, label, onClickRemoveLabel, ...otherProps }, ref) => {
|
|
8410
8399
|
const labelProps = (0, import_type_guards29.isNotNil)(href) && (0, import_type_guards29.isNonEmptyString)(href) ? { href, as: "a" } : { as: "span" };
|
|
8411
8400
|
return /* @__PURE__ */ (0, import_jsx_runtime201.jsxs)(
|
|
@@ -8748,7 +8737,6 @@ var Breadcrumb = ({ icon, href, children }) => {
|
|
|
8748
8737
|
mq,
|
|
8749
8738
|
useActiveMq,
|
|
8750
8739
|
useAriaLive,
|
|
8751
|
-
useBoolean,
|
|
8752
8740
|
useFormState,
|
|
8753
8741
|
useMq,
|
|
8754
8742
|
useToast,
|