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