@wistia/ui 0.4.5 → 0.4.6-beta.12aa477c.cc6313b
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 +129 -119
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.mts +7 -6
- package/dist/index.d.ts +7 -6
- package/dist/index.mjs +106 -96
- package/dist/index.mjs.map +1 -1
- package/package.json +4 -2
package/dist/index.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
|
|
2
2
|
/*
|
|
3
|
-
* @license @wistia/ui v0.4.
|
|
3
|
+
* @license @wistia/ui v0.4.6-beta.12aa477c.cc6313b
|
|
4
4
|
*
|
|
5
5
|
* Copyright (c) 2024-2025, Wistia, Inc. and its affiliates.
|
|
6
6
|
*
|
|
@@ -1640,6 +1640,14 @@ var import_react6 = require("react");
|
|
|
1640
1640
|
|
|
1641
1641
|
// src/private/hooks/useEvent/useEvent.ts
|
|
1642
1642
|
var import_react5 = require("react");
|
|
1643
|
+
|
|
1644
|
+
// src/private/helpers/isObjectRef/isObjectRef.ts
|
|
1645
|
+
var import_type_guards4 = require("@wistia/type-guards");
|
|
1646
|
+
var isObjectRef = (value) => {
|
|
1647
|
+
return (0, import_type_guards4.isNotNil)(value) && (0, import_type_guards4.isRecord)(value) && "current" in value;
|
|
1648
|
+
};
|
|
1649
|
+
|
|
1650
|
+
// src/private/hooks/useEvent/useEvent.ts
|
|
1643
1651
|
var isEventTargetSupported = (eventTarget) => (
|
|
1644
1652
|
// @ts-expect-error the compiler thinks that addEventListener may not exist on eventTarget, but we still need to check it.
|
|
1645
1653
|
// eslint-disable-next-line @typescript-eslint/strict-boolean-expressions
|
|
@@ -1655,7 +1663,8 @@ var useEvent = (eventName, eventHandler, eventTarget = window, eventOptions = {}
|
|
|
1655
1663
|
savedEventOptions.current = eventOptions;
|
|
1656
1664
|
}, [eventOptions]);
|
|
1657
1665
|
(0, import_react5.useEffect)(() => {
|
|
1658
|
-
|
|
1666
|
+
const target = isObjectRef(eventTarget) ? eventTarget.current : eventTarget;
|
|
1667
|
+
if (!eventName || !isEventTargetSupported(target)) {
|
|
1659
1668
|
return;
|
|
1660
1669
|
}
|
|
1661
1670
|
const eventListener = (event) => {
|
|
@@ -1665,48 +1674,45 @@ var useEvent = (eventName, eventHandler, eventTarget = window, eventOptions = {}
|
|
|
1665
1674
|
return () => {
|
|
1666
1675
|
};
|
|
1667
1676
|
};
|
|
1668
|
-
|
|
1677
|
+
target.addEventListener(eventName, eventListener, savedEventOptions.current);
|
|
1669
1678
|
return () => {
|
|
1670
|
-
|
|
1679
|
+
target.removeEventListener(eventName, eventListener, savedEventOptions.current);
|
|
1671
1680
|
};
|
|
1672
1681
|
}, [eventName, eventTarget, savedEventOptions]);
|
|
1673
1682
|
};
|
|
1674
1683
|
|
|
1675
1684
|
// src/hooks/useKey/useKey.ts
|
|
1676
|
-
var
|
|
1677
|
-
|
|
1678
|
-
|
|
1679
|
-
}
|
|
1680
|
-
if (typeof keyFilter === "string") {
|
|
1681
|
-
return (event) => event.key === keyFilter;
|
|
1682
|
-
}
|
|
1683
|
-
if (keyFilter !== null && keyFilter !== void 0 && !!keyFilter) {
|
|
1684
|
-
return () => true;
|
|
1685
|
-
}
|
|
1686
|
-
return () => false;
|
|
1687
|
-
};
|
|
1688
|
-
var useKey = (key, eventHandler, options = {}, dependencies = [key]) => {
|
|
1689
|
-
const { eventName = "keydown", eventTarget, eventOptions } = options;
|
|
1690
|
-
const memoizedEventHandler = (0, import_react6.useMemo)(() => {
|
|
1691
|
-
const predicate = createKeyPredicate(key);
|
|
1692
|
-
return (handlerEvent) => {
|
|
1685
|
+
var useKey = (key, eventHandler, { eventName = "keydown", eventTarget, eventOptions } = {}) => {
|
|
1686
|
+
const memoizedEventHandler = (0, import_react6.useCallback)(
|
|
1687
|
+
(handlerEvent) => {
|
|
1693
1688
|
if (["INPUT", "TEXTAREA", "SELECT"].includes(document.activeElement?.nodeName ?? "") || document.activeElement?.isContentEditable) {
|
|
1694
1689
|
return;
|
|
1695
1690
|
}
|
|
1696
|
-
|
|
1697
|
-
|
|
1691
|
+
let matchesKey = false;
|
|
1692
|
+
if (typeof key === "function") {
|
|
1693
|
+
matchesKey = key(handlerEvent);
|
|
1694
|
+
} else if (typeof key === "string") {
|
|
1695
|
+
matchesKey = handlerEvent.key === key;
|
|
1696
|
+
} else if (key) {
|
|
1697
|
+
matchesKey = true;
|
|
1698
|
+
} else {
|
|
1699
|
+
matchesKey = false;
|
|
1698
1700
|
}
|
|
1699
|
-
|
|
1700
|
-
|
|
1701
|
+
if (matchesKey) {
|
|
1702
|
+
eventHandler(handlerEvent);
|
|
1703
|
+
}
|
|
1704
|
+
},
|
|
1705
|
+
[key, eventHandler]
|
|
1706
|
+
);
|
|
1701
1707
|
useEvent(eventName, memoizedEventHandler, eventTarget, eventOptions);
|
|
1702
1708
|
};
|
|
1703
1709
|
|
|
1704
1710
|
// src/hooks/useAriaLive/useAriaLive.tsx
|
|
1705
1711
|
var import_react7 = require("react");
|
|
1706
|
-
var
|
|
1712
|
+
var import_type_guards5 = require("@wistia/type-guards");
|
|
1707
1713
|
var useAriaLive = () => {
|
|
1708
1714
|
const context = (0, import_react7.useContext)(AriaLiveContext);
|
|
1709
|
-
if ((0,
|
|
1715
|
+
if ((0, import_type_guards5.isNil)(context)) {
|
|
1710
1716
|
throw new Error("useAriaLive must be used within an AriaLiveProvider");
|
|
1711
1717
|
}
|
|
1712
1718
|
return context;
|
|
@@ -1719,10 +1725,10 @@ var import_sonner2 = require("sonner");
|
|
|
1719
1725
|
// src/private/components/Toast/Toast.tsx
|
|
1720
1726
|
var import_react8 = require("react");
|
|
1721
1727
|
var import_styled_components13 = __toESM(require("styled-components"));
|
|
1722
|
-
var
|
|
1728
|
+
var import_type_guards7 = require("@wistia/type-guards");
|
|
1723
1729
|
|
|
1724
1730
|
// src/components/Ellipsis/Ellipsis.tsx
|
|
1725
|
-
var
|
|
1731
|
+
var import_type_guards6 = require("@wistia/type-guards");
|
|
1726
1732
|
var import_styled_components11 = __toESM(require("styled-components"));
|
|
1727
1733
|
var import_jsx_runtime4 = require("react/jsx-runtime");
|
|
1728
1734
|
var ellipsisStyle = import_styled_components11.css`
|
|
@@ -1754,7 +1760,7 @@ var ellipsisFlexParentStyle = import_styled_components11.css`
|
|
|
1754
1760
|
var EllipsisComponent = import_styled_components11.default.div`
|
|
1755
1761
|
${ellipsisStyle};
|
|
1756
1762
|
${({ $lines }) => {
|
|
1757
|
-
if ((0,
|
|
1763
|
+
if ((0, import_type_guards6.isNotNil)($lines)) {
|
|
1758
1764
|
return import_styled_components11.css`
|
|
1759
1765
|
-webkit-box-orient: vertical;
|
|
1760
1766
|
-webkit-line-clamp: ${$lines};
|
|
@@ -1938,7 +1944,7 @@ var StyledToast = import_styled_components13.default.div`
|
|
|
1938
1944
|
}
|
|
1939
1945
|
`;
|
|
1940
1946
|
var Action = ({ actionButton }) => {
|
|
1941
|
-
if ((0,
|
|
1947
|
+
if ((0, import_type_guards7.isNotNil)(actionButton) && (0, import_react8.isValidElement)(actionButton)) {
|
|
1942
1948
|
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(ActionWrapper, { children: (0, import_react8.cloneElement)(actionButton, {
|
|
1943
1949
|
variant: "soft",
|
|
1944
1950
|
// force Button variant
|
|
@@ -1962,7 +1968,7 @@ var Toast = ({
|
|
|
1962
1968
|
$colorScheme: colorScheme,
|
|
1963
1969
|
children: [
|
|
1964
1970
|
/* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(MessageWrapper, { children: [
|
|
1965
|
-
(0,
|
|
1971
|
+
(0, import_type_guards7.isNotNil)(icon) ? icon : null,
|
|
1966
1972
|
/* @__PURE__ */ (0, import_jsx_runtime5.jsx)(Message, { lines: 3, children: message })
|
|
1967
1973
|
] }),
|
|
1968
1974
|
/* @__PURE__ */ (0, import_jsx_runtime5.jsx)(Action, { actionButton: action })
|
|
@@ -2003,7 +2009,7 @@ var import_styled_components19 = __toESM(require("styled-components"));
|
|
|
2003
2009
|
// src/components/Button/Button.tsx
|
|
2004
2010
|
var import_react12 = require("react");
|
|
2005
2011
|
var import_styled_components18 = __toESM(require("styled-components"));
|
|
2006
|
-
var
|
|
2012
|
+
var import_type_guards11 = require("@wistia/type-guards");
|
|
2007
2013
|
|
|
2008
2014
|
// src/css/buttonResetCss.tsx
|
|
2009
2015
|
var import_styled_components14 = require("styled-components");
|
|
@@ -2206,7 +2212,7 @@ var buttonSizeStyles = {
|
|
|
2206
2212
|
};
|
|
2207
2213
|
|
|
2208
2214
|
// src/components/Icon/Icon.tsx
|
|
2209
|
-
var
|
|
2215
|
+
var import_type_guards9 = require("@wistia/type-guards");
|
|
2210
2216
|
var import_styled_components16 = __toESM(require("styled-components"));
|
|
2211
2217
|
|
|
2212
2218
|
// src/components/Icon/icons/AbTestIcon.tsx
|
|
@@ -5367,7 +5373,7 @@ var iconMap = {
|
|
|
5367
5373
|
};
|
|
5368
5374
|
|
|
5369
5375
|
// src/private/hooks/useResponsiveProp/useResponsiveProp.ts
|
|
5370
|
-
var
|
|
5376
|
+
var import_type_guards8 = require("@wistia/type-guards");
|
|
5371
5377
|
var import_react10 = require("react");
|
|
5372
5378
|
var isResponsiveObject = (values) => {
|
|
5373
5379
|
return typeof values === "object" && values !== null && !Array.isArray(values) && "base" in values;
|
|
@@ -5375,9 +5381,9 @@ var isResponsiveObject = (values) => {
|
|
|
5375
5381
|
var useResponsiveProp = (values) => {
|
|
5376
5382
|
const activeMediaQueries = useActiveMq();
|
|
5377
5383
|
return (0, import_react10.useMemo)(() => {
|
|
5378
|
-
if ((0,
|
|
5384
|
+
if ((0, import_type_guards8.isRecord)(values) && isResponsiveObject(values)) {
|
|
5379
5385
|
const mq2 = activeMediaQueries.find((key) => key in values);
|
|
5380
|
-
return (0,
|
|
5386
|
+
return (0, import_type_guards8.isNotUndefined)(mq2) && (0, import_type_guards8.isNotUndefined)(values[mq2]) ? values[mq2] : values.base;
|
|
5381
5387
|
}
|
|
5382
5388
|
return values;
|
|
5383
5389
|
}, [activeMediaQueries, values]);
|
|
@@ -5404,13 +5410,13 @@ var Icon = ({
|
|
|
5404
5410
|
...otherProps
|
|
5405
5411
|
}) => {
|
|
5406
5412
|
const responsiveSize = useResponsiveProp(size);
|
|
5407
|
-
if ((0,
|
|
5413
|
+
if ((0, import_type_guards9.isNil)(type)) {
|
|
5408
5414
|
throw new Error("An Icon component requires a `type` prop to be provided");
|
|
5409
5415
|
}
|
|
5410
|
-
if ((0,
|
|
5416
|
+
if ((0, import_type_guards9.isNil)(iconMap[type])) {
|
|
5411
5417
|
throw new Error(`Type "${type}" does not exist, please update type prop in Icon component.`);
|
|
5412
5418
|
}
|
|
5413
|
-
if ((0,
|
|
5419
|
+
if ((0, import_type_guards9.isNil)(iconSizeMap[responsiveSize])) {
|
|
5414
5420
|
throw new Error(
|
|
5415
5421
|
`Size "${responsiveSize}" does not exist, please update size prop in Icon component.`
|
|
5416
5422
|
);
|
|
@@ -5442,12 +5448,12 @@ Icon.displayName = "Icon";
|
|
|
5442
5448
|
|
|
5443
5449
|
// src/components/Link/Link.tsx
|
|
5444
5450
|
var import_react11 = require("react");
|
|
5445
|
-
var
|
|
5451
|
+
var import_type_guards10 = require("@wistia/type-guards");
|
|
5446
5452
|
var import_styled_components17 = __toESM(require("styled-components"));
|
|
5447
5453
|
var import_react_router_dom = require("react-router-dom");
|
|
5448
5454
|
var import_jsx_runtime161 = require("react/jsx-runtime");
|
|
5449
5455
|
var generateHref = (href, type, disabled) => {
|
|
5450
|
-
if (disabled || (0,
|
|
5456
|
+
if (disabled || (0, import_type_guards10.isNil)(href)) {
|
|
5451
5457
|
return void 0;
|
|
5452
5458
|
}
|
|
5453
5459
|
let to = href;
|
|
@@ -5459,10 +5465,10 @@ var generateHref = (href, type, disabled) => {
|
|
|
5459
5465
|
}
|
|
5460
5466
|
return to;
|
|
5461
5467
|
};
|
|
5462
|
-
var isButton = (props) => (0,
|
|
5463
|
-
var isLink = (props) => (0,
|
|
5468
|
+
var isButton = (props) => (0, import_type_guards10.isUndefined)(props.href);
|
|
5469
|
+
var isLink = (props) => (0, import_type_guards10.isNotUndefined)(props.href);
|
|
5464
5470
|
var StyledLink = import_styled_components17.default.a`
|
|
5465
|
-
${({ href }) => (0,
|
|
5471
|
+
${({ href }) => (0, import_type_guards10.isNil)(href) && buttonResetCss};
|
|
5466
5472
|
${({ $colorScheme }) => getColorScheme($colorScheme)}
|
|
5467
5473
|
cursor: pointer;
|
|
5468
5474
|
font-family: var(--wui-typography-family-default);
|
|
@@ -5493,7 +5499,7 @@ var Link = (0, import_react11.forwardRef)(
|
|
|
5493
5499
|
} finally {
|
|
5494
5500
|
if (routingCallback !== null) {
|
|
5495
5501
|
routingCallback();
|
|
5496
|
-
} else if ((0,
|
|
5502
|
+
} else if ((0, import_type_guards10.isNotNil)(to)) {
|
|
5497
5503
|
window.location.assign(to);
|
|
5498
5504
|
} else {
|
|
5499
5505
|
}
|
|
@@ -5552,7 +5558,7 @@ Link.displayName = "Link";
|
|
|
5552
5558
|
|
|
5553
5559
|
// src/components/Button/Button.tsx
|
|
5554
5560
|
var import_jsx_runtime162 = require("react/jsx-runtime");
|
|
5555
|
-
var isLink2 = (props) => (0,
|
|
5561
|
+
var isLink2 = (props) => (0, import_type_guards11.isNotUndefined)(props.href);
|
|
5556
5562
|
var StyledButton = import_styled_components18.default.button`
|
|
5557
5563
|
${buttonResetCss}
|
|
5558
5564
|
${({ $colorScheme }) => getColorScheme($colorScheme)}
|
|
@@ -5593,8 +5599,8 @@ var ButtonContent = ({
|
|
|
5593
5599
|
/* @__PURE__ */ (0, import_jsx_runtime162.jsxs)(
|
|
5594
5600
|
StyledButtonContent,
|
|
5595
5601
|
{
|
|
5596
|
-
$hasLeftIcon: (0,
|
|
5597
|
-
$hasRightIcon: (0,
|
|
5602
|
+
$hasLeftIcon: (0, import_type_guards11.isNotNil)(leftIcon),
|
|
5603
|
+
$hasRightIcon: (0, import_type_guards11.isNotNil)(rightIcon),
|
|
5598
5604
|
$isLoading: isLoading,
|
|
5599
5605
|
children: [
|
|
5600
5606
|
leftIcon ?? null,
|
|
@@ -5662,7 +5668,7 @@ var Button = (0, import_react12.forwardRef)(
|
|
|
5662
5668
|
event.preventDefault();
|
|
5663
5669
|
return;
|
|
5664
5670
|
}
|
|
5665
|
-
if ((0,
|
|
5671
|
+
if ((0, import_type_guards11.isNotNil)(onClick)) {
|
|
5666
5672
|
onClick(event);
|
|
5667
5673
|
}
|
|
5668
5674
|
};
|
|
@@ -5823,7 +5829,7 @@ ActionButton.displayName = "ActionButton";
|
|
|
5823
5829
|
|
|
5824
5830
|
// src/components/Avatar/Avatar.tsx
|
|
5825
5831
|
var import_react14 = require("react");
|
|
5826
|
-
var
|
|
5832
|
+
var import_type_guards13 = require("@wistia/type-guards");
|
|
5827
5833
|
var import_styled_components21 = __toESM(require("styled-components"));
|
|
5828
5834
|
|
|
5829
5835
|
// src/components/ColorSchemeWrapper/ColorSchemeWrapper.tsx
|
|
@@ -5866,13 +5872,13 @@ var ColorSchemeWrapper = ({
|
|
|
5866
5872
|
ColorSchemeWrapper.displayName = "ColorSchemeWrapper";
|
|
5867
5873
|
|
|
5868
5874
|
// src/components/Avatar/formatNameForDisplay.tsx
|
|
5869
|
-
var
|
|
5875
|
+
var import_type_guards12 = require("@wistia/type-guards");
|
|
5870
5876
|
var containsEmojiCharacter = (char) => {
|
|
5871
5877
|
const emojiRegex = /<a?:.+?:\d{18}>|\p{Extended_Pictographic}/gu;
|
|
5872
5878
|
return emojiRegex.test(char);
|
|
5873
5879
|
};
|
|
5874
5880
|
var formatNameForDisplay = (name) => {
|
|
5875
|
-
if ((0,
|
|
5881
|
+
if ((0, import_type_guards12.isNil)(name) || !(0, import_type_guards12.isString)(name) || (0, import_type_guards12.isEmptyString)(name) || containsEmojiCharacter(name)) {
|
|
5876
5882
|
return "U";
|
|
5877
5883
|
}
|
|
5878
5884
|
const firstChar = name.trim().substring(0, 1);
|
|
@@ -5934,7 +5940,7 @@ var AvatarWrapper = import_styled_components21.default.div`
|
|
|
5934
5940
|
max-height: ${({ $maxHeight }) => $maxHeight}px;
|
|
5935
5941
|
`;
|
|
5936
5942
|
var chooseColorScheme = (name) => {
|
|
5937
|
-
if ((0,
|
|
5943
|
+
if ((0, import_type_guards13.isNil)(name) || name === "Anonymous") {
|
|
5938
5944
|
return "default";
|
|
5939
5945
|
}
|
|
5940
5946
|
const filteredColors = colorSchemeOptions.filter(
|
|
@@ -5954,6 +5960,9 @@ var Avatar = ({
|
|
|
5954
5960
|
...otherProps
|
|
5955
5961
|
}) => {
|
|
5956
5962
|
const [imageLoadState, setImageLoadState] = (0, import_react14.useState)(null);
|
|
5963
|
+
(0, import_react14.useEffect)(() => {
|
|
5964
|
+
setImageLoadState(null);
|
|
5965
|
+
}, [imageUrl]);
|
|
5957
5966
|
const handleImageLoad = () => {
|
|
5958
5967
|
setImageLoadState("loaded");
|
|
5959
5968
|
onImageLoad?.("image");
|
|
@@ -5964,7 +5973,7 @@ var Avatar = ({
|
|
|
5964
5973
|
};
|
|
5965
5974
|
const avatarSize = heightAndWidth ?? avatarSizeMap[size];
|
|
5966
5975
|
const avatarColor = (0, import_react14.useMemo)(() => chooseColorScheme(name), [name]);
|
|
5967
|
-
const showInitials = (0,
|
|
5976
|
+
const showInitials = (0, import_type_guards13.isNil)(imageUrl) || imageLoadState === "error";
|
|
5968
5977
|
return /* @__PURE__ */ (0, import_jsx_runtime165.jsx)(
|
|
5969
5978
|
AvatarWrapper,
|
|
5970
5979
|
{
|
|
@@ -5995,7 +6004,7 @@ Avatar.displayName = "Avatar";
|
|
|
5995
6004
|
// src/components/Badge/Badge.tsx
|
|
5996
6005
|
var import_react15 = require("react");
|
|
5997
6006
|
var import_styled_components22 = __toESM(require("styled-components"));
|
|
5998
|
-
var
|
|
6007
|
+
var import_type_guards14 = require("@wistia/type-guards");
|
|
5999
6008
|
var import_jsx_runtime166 = require("react/jsx-runtime");
|
|
6000
6009
|
var StyledBadge = import_styled_components22.default.div`
|
|
6001
6010
|
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
@@ -6019,7 +6028,7 @@ var StyledBadge = import_styled_components22.default.div`
|
|
|
6019
6028
|
`;
|
|
6020
6029
|
var Badge = (0, import_react15.forwardRef)(
|
|
6021
6030
|
({ colorScheme = "inherit", label, icon, ...otherProps }, ref) => {
|
|
6022
|
-
const hasIcon = (0,
|
|
6031
|
+
const hasIcon = (0, import_type_guards14.isNotNil)(icon);
|
|
6023
6032
|
return /* @__PURE__ */ (0, import_jsx_runtime166.jsxs)(
|
|
6024
6033
|
StyledBadge,
|
|
6025
6034
|
{
|
|
@@ -6040,12 +6049,12 @@ Badge.displayName = "Badge";
|
|
|
6040
6049
|
// src/components/Box/Box.tsx
|
|
6041
6050
|
var import_react16 = require("react");
|
|
6042
6051
|
var import_styled_components23 = __toESM(require("styled-components"));
|
|
6043
|
-
var
|
|
6052
|
+
var import_type_guards15 = require("@wistia/type-guards");
|
|
6044
6053
|
var import_jsx_runtime167 = require("react/jsx-runtime");
|
|
6045
6054
|
var isDev = process.env["NODE_ENV"] === "development" || process.env["NODE_ENV"] === "test";
|
|
6046
6055
|
var getGapStyle = (gap) => {
|
|
6047
|
-
if ((0,
|
|
6048
|
-
if ((0,
|
|
6056
|
+
if ((0, import_type_guards15.isNotNil)(gap)) {
|
|
6057
|
+
if ((0, import_type_guards15.isRecord)(gap)) {
|
|
6049
6058
|
return Object.entries(gap).map(([key, value]) => {
|
|
6050
6059
|
return `${key}-gap: var(--wui-${value})};`;
|
|
6051
6060
|
}).join("");
|
|
@@ -6088,25 +6097,25 @@ var BoxComponent = import_styled_components23.default.div`
|
|
|
6088
6097
|
align-content: ${({ $alignContent }) => $alignContent};
|
|
6089
6098
|
align-items: ${({ $alignItems }) => $alignItems};
|
|
6090
6099
|
align-self: ${({ $alignSelf }) => $alignSelf ?? null};
|
|
6091
|
-
display: ${({ $inline }) => (0,
|
|
6092
|
-
flex-basis: ${({ $basis }) => (0,
|
|
6100
|
+
display: ${({ $inline }) => (0, import_type_guards15.isNotNil)($inline) && $inline ? "inline-flex" : "flex"};
|
|
6101
|
+
flex-basis: ${({ $basis }) => (0, import_type_guards15.isNotNil)($basis) ? $basis : null};
|
|
6093
6102
|
flex-direction: ${({ $flexDirection }) => $flexDirection};
|
|
6094
6103
|
${({ $fillBox: fill }) => getFillStyle(fill)};
|
|
6095
6104
|
${({ $fillViewport }) => getFillViewportStyle($fillViewport)};
|
|
6096
6105
|
|
|
6097
6106
|
/* Box children styles */
|
|
6098
|
-
flex-grow: ${({ $grow }) => (0,
|
|
6099
|
-
flex-shrink: ${({ $shrink }) => (0,
|
|
6107
|
+
flex-grow: ${({ $grow }) => (0, import_type_guards15.isNotNil)($grow) ? $grow : null};
|
|
6108
|
+
flex-shrink: ${({ $shrink }) => (0, import_type_guards15.isNotNil)($shrink) ? $shrink : null};
|
|
6100
6109
|
flex-wrap: ${({ $wrapItems }) => $wrapItems ? "wrap" : "nowrap"};
|
|
6101
6110
|
${({ $gap }) => getGapStyle($gap)};
|
|
6102
6111
|
justify-content: ${({ $justifyContent }) => $justifyContent};
|
|
6103
|
-
order: ${({ $order }) => (0,
|
|
6112
|
+
order: ${({ $order }) => (0, import_type_guards15.isNotNil)($order) ? $order : null};
|
|
6104
6113
|
`;
|
|
6105
6114
|
var wrapChildren = (children) => {
|
|
6106
|
-
if ((0,
|
|
6115
|
+
if ((0, import_type_guards15.isNotNil)(children)) {
|
|
6107
6116
|
if (typeof children === "object" && isDev) {
|
|
6108
6117
|
return import_react16.Children.map(children, (child) => {
|
|
6109
|
-
if ((0,
|
|
6118
|
+
if ((0, import_type_guards15.isNil)(child)) return null;
|
|
6110
6119
|
const elementParams = {};
|
|
6111
6120
|
if (child.type?.displayName === "Box" || child.type?.displayName === "Box_UI") {
|
|
6112
6121
|
elementParams.hasBoxParent = true;
|
|
@@ -6189,11 +6198,12 @@ Breadcrumbs.displayName = "Breadcrumbs";
|
|
|
6189
6198
|
|
|
6190
6199
|
// src/components/Breadcrumbs/Breadcrumb.tsx
|
|
6191
6200
|
var import_jsx_runtime169 = require("react/jsx-runtime");
|
|
6192
|
-
var Breadcrumb = ({ icon, href, children }) => {
|
|
6201
|
+
var Breadcrumb = ({ icon, href, children, ...props }) => {
|
|
6193
6202
|
return /* @__PURE__ */ (0, import_jsx_runtime169.jsxs)(import_jsx_runtime169.Fragment, { children: [
|
|
6194
6203
|
/* @__PURE__ */ (0, import_jsx_runtime169.jsx)(
|
|
6195
6204
|
Button,
|
|
6196
6205
|
{
|
|
6206
|
+
...props,
|
|
6197
6207
|
href,
|
|
6198
6208
|
leftIcon: icon,
|
|
6199
6209
|
variant: "ghost",
|
|
@@ -6212,7 +6222,7 @@ var Breadcrumb = ({ icon, href, children }) => {
|
|
|
6212
6222
|
|
|
6213
6223
|
// src/components/ButtonGroup/ButtonGroup.tsx
|
|
6214
6224
|
var import_styled_components25 = __toESM(require("styled-components"));
|
|
6215
|
-
var
|
|
6225
|
+
var import_type_guards16 = require("@wistia/type-guards");
|
|
6216
6226
|
var import_jsx_runtime170 = require("react/jsx-runtime");
|
|
6217
6227
|
var getAlignment = (align) => {
|
|
6218
6228
|
if (align === "center") {
|
|
@@ -6252,7 +6262,7 @@ var ButtonGroup = ({
|
|
|
6252
6262
|
fullWidth = false,
|
|
6253
6263
|
...otherProps
|
|
6254
6264
|
}) => {
|
|
6255
|
-
if ((0,
|
|
6265
|
+
if ((0, import_type_guards16.isNil)(children)) {
|
|
6256
6266
|
return null;
|
|
6257
6267
|
}
|
|
6258
6268
|
return /* @__PURE__ */ (0, import_jsx_runtime170.jsx)(
|
|
@@ -6322,7 +6332,7 @@ Card.displayName = "Card";
|
|
|
6322
6332
|
var import_react18 = require("react");
|
|
6323
6333
|
var import_react_checkbox = require("@radix-ui/react-checkbox");
|
|
6324
6334
|
var import_styled_components30 = __toESM(require("styled-components"));
|
|
6325
|
-
var
|
|
6335
|
+
var import_type_guards18 = require("@wistia/type-guards");
|
|
6326
6336
|
|
|
6327
6337
|
// src/components/Label/Label.tsx
|
|
6328
6338
|
var import_styled_components28 = __toESM(require("styled-components"));
|
|
@@ -6509,7 +6519,7 @@ Label.displayName = "Label";
|
|
|
6509
6519
|
|
|
6510
6520
|
// src/components/Label/LabelDescription.tsx
|
|
6511
6521
|
var import_styled_components29 = __toESM(require("styled-components"));
|
|
6512
|
-
var
|
|
6522
|
+
var import_type_guards17 = require("@wistia/type-guards");
|
|
6513
6523
|
var import_jsx_runtime174 = require("react/jsx-runtime");
|
|
6514
6524
|
var StyledLabelDescription = import_styled_components29.default.div`
|
|
6515
6525
|
color: var(--wui-color-text-secondary);
|
|
@@ -6521,7 +6531,7 @@ var LabelDescription = ({
|
|
|
6521
6531
|
children,
|
|
6522
6532
|
...props
|
|
6523
6533
|
}) => {
|
|
6524
|
-
if ((0,
|
|
6534
|
+
if ((0, import_type_guards17.isNil)(children)) {
|
|
6525
6535
|
return null;
|
|
6526
6536
|
}
|
|
6527
6537
|
return /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(StyledLabelDescription, { ...props, children });
|
|
@@ -6618,7 +6628,7 @@ var Checkbox = (0, import_react18.forwardRef)(
|
|
|
6618
6628
|
...otherProps
|
|
6619
6629
|
}, ref) => {
|
|
6620
6630
|
const generatedId = (0, import_react18.useId)();
|
|
6621
|
-
const computedId = (0,
|
|
6631
|
+
const computedId = (0, import_type_guards18.isNonEmptyString)(id) ? id : `wistia-ui-checkbox-group-${generatedId}`;
|
|
6622
6632
|
return /* @__PURE__ */ (0, import_jsx_runtime175.jsxs)(StyledCheckboxWrapper, { children: [
|
|
6623
6633
|
/* @__PURE__ */ (0, import_jsx_runtime175.jsx)(
|
|
6624
6634
|
StyledCheckboxRoot,
|
|
@@ -6711,7 +6721,7 @@ Divider.displayName = "Divider";
|
|
|
6711
6721
|
// src/components/Form/Form.tsx
|
|
6712
6722
|
var import_react20 = require("react");
|
|
6713
6723
|
var import_styled_components33 = __toESM(require("styled-components"));
|
|
6714
|
-
var
|
|
6724
|
+
var import_type_guards19 = require("@wistia/type-guards");
|
|
6715
6725
|
|
|
6716
6726
|
// src/components/Stack/Stack.tsx
|
|
6717
6727
|
var import_react19 = require("react");
|
|
@@ -6765,7 +6775,7 @@ var FormComponent = ({ children, action, values = {}, validate, fullWidth = fals
|
|
|
6765
6775
|
const id = props.id ?? autoId;
|
|
6766
6776
|
const handleValidate = (nextFormData) => {
|
|
6767
6777
|
const nextData = Object.fromEntries(nextFormData.entries());
|
|
6768
|
-
if ((0,
|
|
6778
|
+
if ((0, import_type_guards19.isUndefined)(validate)) {
|
|
6769
6779
|
return {};
|
|
6770
6780
|
}
|
|
6771
6781
|
return validate(nextData);
|
|
@@ -6775,7 +6785,7 @@ var FormComponent = ({ children, action, values = {}, validate, fullWidth = fals
|
|
|
6775
6785
|
props.onBlur(event);
|
|
6776
6786
|
}
|
|
6777
6787
|
const formData = new FormData(event.currentTarget);
|
|
6778
|
-
if ((0,
|
|
6788
|
+
if ((0, import_type_guards19.isNotUndefined)(validate)) {
|
|
6779
6789
|
handleValidate(formData);
|
|
6780
6790
|
}
|
|
6781
6791
|
};
|
|
@@ -6871,7 +6881,7 @@ var useFormState = (action, initialData = {}) => {
|
|
|
6871
6881
|
|
|
6872
6882
|
// src/components/Form/FormErrorSummary.tsx
|
|
6873
6883
|
var import_react22 = require("react");
|
|
6874
|
-
var
|
|
6884
|
+
var import_type_guards20 = require("@wistia/type-guards");
|
|
6875
6885
|
var import_jsx_runtime179 = require("react/jsx-runtime");
|
|
6876
6886
|
var ErrorItem = ({ name, error, formId }) => {
|
|
6877
6887
|
return /* @__PURE__ */ (0, import_jsx_runtime179.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime179.jsx)(Link, { href: `${formId}-${name}`, children: error }) }, name);
|
|
@@ -6885,8 +6895,8 @@ var FormErrorSummary = ({ description }) => {
|
|
|
6885
6895
|
}
|
|
6886
6896
|
return /* @__PURE__ */ (0, import_jsx_runtime179.jsxs)("div", { ref, children: [
|
|
6887
6897
|
/* @__PURE__ */ (0, import_jsx_runtime179.jsx)("p", { children: description }),
|
|
6888
|
-
/* @__PURE__ */ (0, import_jsx_runtime179.jsx)("ul", { children: Object.entries(errors).filter(([, error]) => (0,
|
|
6889
|
-
([name, error]) => (0,
|
|
6898
|
+
/* @__PURE__ */ (0, import_jsx_runtime179.jsx)("ul", { children: Object.entries(errors).filter(([, error]) => (0, import_type_guards20.isNotUndefined)(error)).map(
|
|
6899
|
+
([name, error]) => (0, import_type_guards20.isArray)(error) ? error.map((err) => /* @__PURE__ */ (0, import_jsx_runtime179.jsx)(
|
|
6890
6900
|
ErrorItem,
|
|
6891
6901
|
{
|
|
6892
6902
|
error: err,
|
|
@@ -6910,7 +6920,7 @@ var FormErrorSummary = ({ description }) => {
|
|
|
6910
6920
|
// src/components/FormField/FormField.tsx
|
|
6911
6921
|
var import_react26 = require("react");
|
|
6912
6922
|
var import_styled_components36 = __toESM(require("styled-components"));
|
|
6913
|
-
var
|
|
6923
|
+
var import_type_guards21 = require("@wistia/type-guards");
|
|
6914
6924
|
|
|
6915
6925
|
// src/components/Text/Text.tsx
|
|
6916
6926
|
var import_react23 = require("react");
|
|
@@ -7165,7 +7175,7 @@ var StyledErrorList = import_styled_components36.default.ul`
|
|
|
7165
7175
|
gap: var(--wui-space-01);
|
|
7166
7176
|
`;
|
|
7167
7177
|
var ErrorMessages = ({ errors, id }) => {
|
|
7168
|
-
const isMultipleErrors = (0,
|
|
7178
|
+
const isMultipleErrors = (0, import_type_guards21.isArray)(errors);
|
|
7169
7179
|
return isMultipleErrors ? /* @__PURE__ */ (0, import_jsx_runtime183.jsx)(StyledErrorList, { children: errors.map((error, index) => /* @__PURE__ */ (0, import_jsx_runtime183.jsx)(
|
|
7170
7180
|
Text,
|
|
7171
7181
|
{
|
|
@@ -7208,19 +7218,19 @@ var FormField = ({
|
|
|
7208
7218
|
label: isInlineLabel ? label : void 0,
|
|
7209
7219
|
...props
|
|
7210
7220
|
};
|
|
7211
|
-
if ((0,
|
|
7221
|
+
if ((0, import_type_guards21.isUndefined)(value) && (0, import_type_guards21.isNotUndefined)(defaultValue)) {
|
|
7212
7222
|
childProps = {
|
|
7213
7223
|
...childProps,
|
|
7214
7224
|
defaultValue
|
|
7215
7225
|
};
|
|
7216
7226
|
}
|
|
7217
|
-
if ((0,
|
|
7218
|
-
const computedName = (0,
|
|
7227
|
+
if ((0, import_type_guards21.isNotNil)(checkboxGroup)) {
|
|
7228
|
+
const computedName = (0, import_type_guards21.isNotNil)(checkboxGroup.name) ? `${checkboxGroup.name}[${name}]` : name;
|
|
7219
7229
|
const handleChange = (event) => {
|
|
7220
|
-
if ((0,
|
|
7230
|
+
if ((0, import_type_guards21.isNotUndefined)(props.onChange)) {
|
|
7221
7231
|
props.onChange(event);
|
|
7222
7232
|
}
|
|
7223
|
-
if ((0,
|
|
7233
|
+
if ((0, import_type_guards21.isNotUndefined)(checkboxGroup.onChange)) {
|
|
7224
7234
|
checkboxGroup.onChange(event);
|
|
7225
7235
|
}
|
|
7226
7236
|
};
|
|
@@ -7228,15 +7238,15 @@ var FormField = ({
|
|
|
7228
7238
|
...childProps,
|
|
7229
7239
|
name: computedName,
|
|
7230
7240
|
onChange: handleChange,
|
|
7231
|
-
"aria-invalid": (0,
|
|
7232
|
-
"aria-describedby": (0,
|
|
7241
|
+
"aria-invalid": (0, import_type_guards21.isNotNil)(error),
|
|
7242
|
+
"aria-describedby": (0, import_type_guards21.isNotNil)(error) ? `${id}-error` : void 0
|
|
7233
7243
|
};
|
|
7234
7244
|
}
|
|
7235
7245
|
import_react26.Children.only(children);
|
|
7236
7246
|
return /* @__PURE__ */ (0, import_jsx_runtime183.jsxs)(StyledFormField, { ...props, children: [
|
|
7237
7247
|
!isInlineLabel && /* @__PURE__ */ (0, import_jsx_runtime183.jsx)(Label, { htmlFor: id, children: label }),
|
|
7238
7248
|
(0, import_react26.cloneElement)(children, childProps),
|
|
7239
|
-
(0,
|
|
7249
|
+
(0, import_type_guards21.isNotNil)(computedError) ? /* @__PURE__ */ (0, import_jsx_runtime183.jsx)(
|
|
7240
7250
|
ErrorMessages,
|
|
7241
7251
|
{
|
|
7242
7252
|
errors: computedError,
|
|
@@ -7309,7 +7319,7 @@ IconButton.displayName = "IconButton";
|
|
|
7309
7319
|
// src/components/Input/Input.tsx
|
|
7310
7320
|
var import_react29 = require("react");
|
|
7311
7321
|
var import_styled_components38 = __toESM(require("styled-components"));
|
|
7312
|
-
var
|
|
7322
|
+
var import_type_guards22 = require("@wistia/type-guards");
|
|
7313
7323
|
var import_jsx_runtime186 = require("react/jsx-runtime");
|
|
7314
7324
|
var inputStyles = import_styled_components38.css`
|
|
7315
7325
|
--wui-input-color-bg: var(--wui-color-bg-surface);
|
|
@@ -7397,7 +7407,7 @@ var StyledInputContainer = import_styled_components38.default.div`
|
|
|
7397
7407
|
}
|
|
7398
7408
|
`;
|
|
7399
7409
|
var isValidRef = (ref) => {
|
|
7400
|
-
return typeof ref === "object" && ref !== null && "current" in ref && (0,
|
|
7410
|
+
return typeof ref === "object" && ref !== null && "current" in ref && (0, import_type_guards22.isNotNil)(ref.current);
|
|
7401
7411
|
};
|
|
7402
7412
|
var Input = (0, import_react29.forwardRef)(
|
|
7403
7413
|
({
|
|
@@ -7412,24 +7422,24 @@ var Input = (0, import_react29.forwardRef)(
|
|
|
7412
7422
|
const internalRef = (0, import_react29.useRef)();
|
|
7413
7423
|
const ref = isValidRef(externalRef) ? externalRef : internalRef;
|
|
7414
7424
|
let leftIconToDisplay = leftIcon;
|
|
7415
|
-
if ((0,
|
|
7425
|
+
if ((0, import_type_guards22.isNil)(leftIcon) && type === "search") {
|
|
7416
7426
|
leftIconToDisplay = /* @__PURE__ */ (0, import_jsx_runtime186.jsx)(Icon, { type: "search" });
|
|
7417
7427
|
}
|
|
7418
|
-
if ((0,
|
|
7428
|
+
if ((0, import_type_guards22.isNotNil)(leftIconToDisplay)) {
|
|
7419
7429
|
leftIconToDisplay = (0, import_react29.cloneElement)(leftIconToDisplay, {
|
|
7420
7430
|
size: "md",
|
|
7421
7431
|
className: "wui-input-left-icon"
|
|
7422
7432
|
});
|
|
7423
7433
|
}
|
|
7424
7434
|
let rightIconToDisplay = rightIcon;
|
|
7425
|
-
if ((0,
|
|
7435
|
+
if ((0, import_type_guards22.isNotNil)(rightIconToDisplay)) {
|
|
7426
7436
|
rightIconToDisplay = (0, import_react29.cloneElement)(rightIconToDisplay, {
|
|
7427
7437
|
size: "md",
|
|
7428
7438
|
className: "wui-input-right-icon"
|
|
7429
7439
|
});
|
|
7430
7440
|
}
|
|
7431
7441
|
const handleFocus = (event) => {
|
|
7432
|
-
if ((0,
|
|
7442
|
+
if ((0, import_type_guards22.isNotNil)(props.onFocus)) {
|
|
7433
7443
|
props.onFocus(event);
|
|
7434
7444
|
}
|
|
7435
7445
|
if (autoSelect && ref && "current" in ref) {
|
|
@@ -7472,7 +7482,7 @@ Input.displayName = "Input";
|
|
|
7472
7482
|
// src/components/Menu/Menu.tsx
|
|
7473
7483
|
var import_styled_components39 = __toESM(require("styled-components"));
|
|
7474
7484
|
var import_react_dropdown_menu = require("@radix-ui/react-dropdown-menu");
|
|
7475
|
-
var
|
|
7485
|
+
var import_type_guards23 = require("@wistia/type-guards");
|
|
7476
7486
|
var import_jsx_runtime187 = require("react/jsx-runtime");
|
|
7477
7487
|
var open = import_styled_components39.keyframes`
|
|
7478
7488
|
from {
|
|
@@ -7573,7 +7583,7 @@ var Menu = ({
|
|
|
7573
7583
|
...props
|
|
7574
7584
|
}) => {
|
|
7575
7585
|
let controlProps = {
|
|
7576
|
-
...(0,
|
|
7586
|
+
...(0, import_type_guards23.isNotNil)(onOpenChange) && (0, import_type_guards23.isNotNil)(isOpen) ? { open: isOpen, onOpenChange } : {}
|
|
7577
7587
|
};
|
|
7578
7588
|
if (disabled) {
|
|
7579
7589
|
controlProps = {
|
|
@@ -7587,7 +7597,7 @@ var Menu = ({
|
|
|
7587
7597
|
modal: false,
|
|
7588
7598
|
...controlProps,
|
|
7589
7599
|
children: [
|
|
7590
|
-
/* @__PURE__ */ (0, import_jsx_runtime187.jsx)(import_react_dropdown_menu.DropdownMenuTrigger, { asChild: true, children: (0,
|
|
7600
|
+
/* @__PURE__ */ (0, import_jsx_runtime187.jsx)(import_react_dropdown_menu.DropdownMenuTrigger, { asChild: true, children: (0, import_type_guards23.isNotUndefined)(trigger) ? trigger : /* @__PURE__ */ (0, import_jsx_runtime187.jsx)(
|
|
7591
7601
|
Button,
|
|
7592
7602
|
{
|
|
7593
7603
|
"aria-expanded": isOpen,
|
|
@@ -7648,12 +7658,12 @@ MenuLabel.displayName = "MenuLabel";
|
|
|
7648
7658
|
var import_react31 = require("react");
|
|
7649
7659
|
var import_styled_components43 = __toESM(require("styled-components"));
|
|
7650
7660
|
var import_react_dropdown_menu3 = require("@radix-ui/react-dropdown-menu");
|
|
7651
|
-
var
|
|
7661
|
+
var import_type_guards25 = require("@wistia/type-guards");
|
|
7652
7662
|
|
|
7653
7663
|
// src/components/Menu/MenuItemButton.tsx
|
|
7654
7664
|
var import_react30 = require("react");
|
|
7655
7665
|
var import_styled_components41 = __toESM(require("styled-components"));
|
|
7656
|
-
var
|
|
7666
|
+
var import_type_guards24 = require("@wistia/type-guards");
|
|
7657
7667
|
var import_jsx_runtime189 = require("react/jsx-runtime");
|
|
7658
7668
|
var StyledButton3 = (0, import_styled_components41.default)(Button)`
|
|
7659
7669
|
${({ colorScheme }) => getColorScheme(colorScheme)};
|
|
@@ -7726,7 +7736,7 @@ var StyledBadgeContainer = import_styled_components41.default.div`
|
|
|
7726
7736
|
var MenuItemButton = (0, import_react30.forwardRef)(({ children, appearance, command, icon, ...props }, ref) => {
|
|
7727
7737
|
let { colorScheme, badge } = props;
|
|
7728
7738
|
if (appearance === "dangerous") {
|
|
7729
|
-
if ((0,
|
|
7739
|
+
if ((0, import_type_guards24.isNotUndefined)(colorScheme)) {
|
|
7730
7740
|
console.warn("colorScheme prop is ignored when appearance is dangerous");
|
|
7731
7741
|
}
|
|
7732
7742
|
colorScheme = "error";
|
|
@@ -7756,7 +7766,7 @@ var MenuItemButton = (0, import_react30.forwardRef)(({ children, appearance, com
|
|
|
7756
7766
|
children: [
|
|
7757
7767
|
props.leftIcon ? /* @__PURE__ */ (0, import_jsx_runtime189.jsx)(StyledLeftIconContainer, { children: props.leftIcon }) : null,
|
|
7758
7768
|
/* @__PURE__ */ (0, import_jsx_runtime189.jsx)(StyledLabelAndDescriptionContainer, { children }),
|
|
7759
|
-
(0,
|
|
7769
|
+
(0, import_type_guards24.isNotNil)(badge) || (0, import_type_guards24.isNotNil)(command) ? /* @__PURE__ */ (0, import_jsx_runtime189.jsx)(StyledBadgeContainer, { children: badge ?? command }) : null,
|
|
7760
7770
|
props.rightIcon ? /* @__PURE__ */ (0, import_jsx_runtime189.jsx)(StyledRightIconContainer, { children: props.rightIcon }) : null
|
|
7761
7771
|
]
|
|
7762
7772
|
}
|
|
@@ -7823,7 +7833,7 @@ var SubMenu = ({
|
|
|
7823
7833
|
return isSmAndUp ? /* @__PURE__ */ (0, import_jsx_runtime191.jsxs)(import_react_dropdown_menu3.DropdownMenuSub, { onOpenChange, children: [
|
|
7824
7834
|
/* @__PURE__ */ (0, import_jsx_runtime191.jsxs)(SubMenuTrigger, { ...props, children: [
|
|
7825
7835
|
/* @__PURE__ */ (0, import_jsx_runtime191.jsx)(MenuItemLabel, { children: label }),
|
|
7826
|
-
(0,
|
|
7836
|
+
(0, import_type_guards25.isNotNil)(description) ? /* @__PURE__ */ (0, import_jsx_runtime191.jsx)(MenuItemDescription, { children: description }) : null
|
|
7827
7837
|
] }),
|
|
7828
7838
|
/* @__PURE__ */ (0, import_jsx_runtime191.jsx)(import_react_dropdown_menu3.DropdownMenuPortal, { children: /* @__PURE__ */ (0, import_jsx_runtime191.jsx)(SubMenuContent, { children }) })
|
|
7829
7839
|
] }) : /* @__PURE__ */ (0, import_jsx_runtime191.jsxs)(import_react_dropdown_menu3.DropdownMenuGroup, { children: [
|
|
@@ -8003,7 +8013,7 @@ CheckboxMenuItem.displayName = "CheckboxMenuItem";
|
|
|
8003
8013
|
var import_react36 = require("react");
|
|
8004
8014
|
var import_styled_components49 = __toESM(require("styled-components"));
|
|
8005
8015
|
var import_react_dialog4 = require("@radix-ui/react-dialog");
|
|
8006
|
-
var
|
|
8016
|
+
var import_type_guards28 = require("@wistia/type-guards");
|
|
8007
8017
|
|
|
8008
8018
|
// src/components/Modal/ModalHeader.tsx
|
|
8009
8019
|
var import_styled_components46 = __toESM(require("styled-components"));
|
|
@@ -8030,7 +8040,7 @@ var ModalCloseButton = () => {
|
|
|
8030
8040
|
|
|
8031
8041
|
// src/components/ScreenReaderOnly/ScreenReaderOnly.tsx
|
|
8032
8042
|
var import_styled_components45 = __toESM(require("styled-components"));
|
|
8033
|
-
var
|
|
8043
|
+
var import_type_guards26 = require("@wistia/type-guards");
|
|
8034
8044
|
var import_jsx_runtime197 = require("react/jsx-runtime");
|
|
8035
8045
|
var VisuallyHidden = import_styled_components45.default.div({ ...visuallyHiddenStyle });
|
|
8036
8046
|
var VisuallyHiddenButFocusable = import_styled_components45.default.div({
|
|
@@ -8042,7 +8052,7 @@ var ScreenReaderOnly = ({
|
|
|
8042
8052
|
focusable = false,
|
|
8043
8053
|
...otherProps
|
|
8044
8054
|
}) => {
|
|
8045
|
-
const accessibleText = (0,
|
|
8055
|
+
const accessibleText = (0, import_type_guards26.isNotNil)(text) ? text : children;
|
|
8046
8056
|
if (focusable) {
|
|
8047
8057
|
return /* @__PURE__ */ (0, import_jsx_runtime197.jsx)(VisuallyHiddenButFocusable, { ...otherProps, children: accessibleText });
|
|
8048
8058
|
}
|
|
@@ -8089,7 +8099,7 @@ var import_react_dialog3 = require("@radix-ui/react-dialog");
|
|
|
8089
8099
|
|
|
8090
8100
|
// src/private/hooks/useFocusRestore/useFocusRestore.ts
|
|
8091
8101
|
var import_react33 = require("react");
|
|
8092
|
-
var
|
|
8102
|
+
var import_type_guards27 = require("@wistia/type-guards");
|
|
8093
8103
|
var useFocusRestore = () => {
|
|
8094
8104
|
const previouslyFocusedRef = (0, import_react33.useRef)(null);
|
|
8095
8105
|
(0, import_react33.useEffect)(() => {
|
|
@@ -8097,7 +8107,7 @@ var useFocusRestore = () => {
|
|
|
8097
8107
|
}, []);
|
|
8098
8108
|
(0, import_react33.useEffect)(() => {
|
|
8099
8109
|
return () => {
|
|
8100
|
-
if ((0,
|
|
8110
|
+
if ((0, import_type_guards27.isNotNil)(previouslyFocusedRef.current)) {
|
|
8101
8111
|
setTimeout(() => {
|
|
8102
8112
|
previouslyFocusedRef.current?.focus();
|
|
8103
8113
|
}, 0);
|
|
@@ -8241,7 +8251,7 @@ var Modal = (0, import_react36.forwardRef)(
|
|
|
8241
8251
|
import_react_dialog4.Root,
|
|
8242
8252
|
{
|
|
8243
8253
|
onOpenChange: (open2) => {
|
|
8244
|
-
if (!open2 && (0,
|
|
8254
|
+
if (!open2 && (0, import_type_guards28.isNotNil)(onRequestClose)) {
|
|
8245
8255
|
onRequestClose();
|
|
8246
8256
|
}
|
|
8247
8257
|
},
|
|
@@ -8255,7 +8265,7 @@ var Modal = (0, import_react36.forwardRef)(
|
|
|
8255
8265
|
"aria-describedby": void 0,
|
|
8256
8266
|
fullHeight,
|
|
8257
8267
|
onOpenAutoFocus: (event) => {
|
|
8258
|
-
if ((0,
|
|
8268
|
+
if ((0, import_type_guards28.isNotNil)(initialFocusRef) && initialFocusRef.current) {
|
|
8259
8269
|
event.preventDefault();
|
|
8260
8270
|
requestAnimationFrame(() => {
|
|
8261
8271
|
initialFocusRef.current?.focus();
|
|
@@ -8287,7 +8297,7 @@ Modal.displayName = "Modal";
|
|
|
8287
8297
|
// src/components/Radio/Radio.tsx
|
|
8288
8298
|
var import_react37 = require("react");
|
|
8289
8299
|
var import_styled_components50 = __toESM(require("styled-components"));
|
|
8290
|
-
var
|
|
8300
|
+
var import_type_guards29 = require("@wistia/type-guards");
|
|
8291
8301
|
var import_jsx_runtime202 = require("react/jsx-runtime");
|
|
8292
8302
|
var StyledLabelWrapper2 = import_styled_components50.default.div`
|
|
8293
8303
|
display: flex;
|
|
@@ -8373,7 +8383,7 @@ var Radio = (0, import_react37.forwardRef)(
|
|
|
8373
8383
|
...otherProps
|
|
8374
8384
|
}, ref) => {
|
|
8375
8385
|
const generatedId = (0, import_react37.useId)();
|
|
8376
|
-
const computedId = (0,
|
|
8386
|
+
const computedId = (0, import_type_guards29.isNonEmptyString)(id) ? id : `ui-radio-${generatedId}`;
|
|
8377
8387
|
return /* @__PURE__ */ (0, import_jsx_runtime202.jsxs)(
|
|
8378
8388
|
StyledRadioWrapper,
|
|
8379
8389
|
{
|
|
@@ -8417,7 +8427,7 @@ Radio.displayName = "Radio";
|
|
|
8417
8427
|
// src/components/Tag/Tag.tsx
|
|
8418
8428
|
var import_react38 = require("react");
|
|
8419
8429
|
var import_styled_components51 = __toESM(require("styled-components"));
|
|
8420
|
-
var
|
|
8430
|
+
var import_type_guards30 = require("@wistia/type-guards");
|
|
8421
8431
|
var import_jsx_runtime203 = require("react/jsx-runtime");
|
|
8422
8432
|
var TagLabel = import_styled_components51.default.a`
|
|
8423
8433
|
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
@@ -8491,10 +8501,10 @@ var StyledTag = import_styled_components51.default.div`
|
|
|
8491
8501
|
overflow: hidden;
|
|
8492
8502
|
`;
|
|
8493
8503
|
var RemoveButton = ({ onClickRemove, onClickRemoveLabel, colorScheme }) => {
|
|
8494
|
-
if ((0,
|
|
8504
|
+
if ((0, import_type_guards30.isNil)(onClickRemove)) {
|
|
8495
8505
|
return null;
|
|
8496
8506
|
}
|
|
8497
|
-
if ((0,
|
|
8507
|
+
if ((0, import_type_guards30.isNil)(onClickRemoveLabel)) {
|
|
8498
8508
|
throw new Error(
|
|
8499
8509
|
"for accessibility, onClickRemoveLabel must be provided if onClickRemove is provided"
|
|
8500
8510
|
);
|
|
@@ -8523,7 +8533,7 @@ var RemoveButton = ({ onClickRemove, onClickRemoveLabel, colorScheme }) => {
|
|
|
8523
8533
|
};
|
|
8524
8534
|
var Tag = (0, import_react38.forwardRef)(
|
|
8525
8535
|
({ onClickRemove, colorScheme = "inherit", href, label, onClickRemoveLabel, ...otherProps }, ref) => {
|
|
8526
|
-
const labelProps = (0,
|
|
8536
|
+
const labelProps = (0, import_type_guards30.isNotNil)(href) && (0, import_type_guards30.isNonEmptyString)(href) ? { href, as: "a" } : { as: "span" };
|
|
8527
8537
|
return /* @__PURE__ */ (0, import_jsx_runtime203.jsxs)(
|
|
8528
8538
|
StyledTag,
|
|
8529
8539
|
{
|
|
@@ -8661,7 +8671,7 @@ Tooltip.displayName = "Tooltip";
|
|
|
8661
8671
|
|
|
8662
8672
|
// src/components/WistiaLogo/WistiaLogo.tsx
|
|
8663
8673
|
var import_styled_components53 = __toESM(require("styled-components"));
|
|
8664
|
-
var
|
|
8674
|
+
var import_type_guards31 = require("@wistia/type-guards");
|
|
8665
8675
|
var import_jsx_runtime205 = require("react/jsx-runtime");
|
|
8666
8676
|
var renderBrandmark = (brandmarkColor, iconOnly) => {
|
|
8667
8677
|
if (iconOnly) {
|
|
@@ -8755,7 +8765,7 @@ var WistiaLogo = ({
|
|
|
8755
8765
|
...otherProps,
|
|
8756
8766
|
children: [
|
|
8757
8767
|
/* @__PURE__ */ (0, import_jsx_runtime205.jsx)("title", { children: title }),
|
|
8758
|
-
(0,
|
|
8768
|
+
(0, import_type_guards31.isNotNil)(description) ? /* @__PURE__ */ (0, import_jsx_runtime205.jsx)("desc", { children: description }) : null,
|
|
8759
8769
|
renderBrandmark(brandmarkColor, iconOnly),
|
|
8760
8770
|
renderLogotype(logotypeColor, iconOnly)
|
|
8761
8771
|
]
|