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