@wistia/ui 0.6.37 → 0.6.38-beta.6e33df45.29fe2a2
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 +195 -160
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.mts +7 -3
- package/dist/index.d.ts +7 -3
- package/dist/index.mjs +46 -12
- 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.6.
|
|
3
|
+
* @license @wistia/ui v0.6.38-beta.6e33df45.29fe2a2
|
|
4
4
|
*
|
|
5
5
|
* Copyright (c) 2024-2025, Wistia, Inc. and its affiliates.
|
|
6
6
|
*
|
|
@@ -131,6 +131,7 @@ __export(index_exports, {
|
|
|
131
131
|
useLocalStorage: () => useLocalStorage,
|
|
132
132
|
useLockBodyScroll: () => useLockBodyScroll,
|
|
133
133
|
useMq: () => useMq,
|
|
134
|
+
useOnClickOutside: () => useOnClickOutside,
|
|
134
135
|
useToast: () => useToast,
|
|
135
136
|
useWindowSize: () => useWindowSize
|
|
136
137
|
});
|
|
@@ -2208,11 +2209,40 @@ var useLockBodyScroll = (locked) => {
|
|
|
2208
2209
|
}, [locked]);
|
|
2209
2210
|
};
|
|
2210
2211
|
|
|
2212
|
+
// src/hooks/useOnClickOutside/useOnClickOutside.ts
|
|
2213
|
+
var import_react9 = require("react");
|
|
2214
|
+
var useOnClickOutside = (ref, handler, eventTypes = ["mousedown", "touchend"]) => {
|
|
2215
|
+
(0, import_react9.useEffect)(() => {
|
|
2216
|
+
const listener = (event) => {
|
|
2217
|
+
if (!ref.current || ref.current.contains(event.target)) {
|
|
2218
|
+
return;
|
|
2219
|
+
}
|
|
2220
|
+
handler(event);
|
|
2221
|
+
};
|
|
2222
|
+
if (Array.isArray(eventTypes)) {
|
|
2223
|
+
eventTypes.forEach((eventType) => {
|
|
2224
|
+
document.addEventListener(eventType, listener);
|
|
2225
|
+
});
|
|
2226
|
+
} else {
|
|
2227
|
+
document.addEventListener(eventTypes, listener);
|
|
2228
|
+
}
|
|
2229
|
+
return () => {
|
|
2230
|
+
if (Array.isArray(eventTypes)) {
|
|
2231
|
+
eventTypes.forEach((eventType) => {
|
|
2232
|
+
document.removeEventListener(eventType, listener);
|
|
2233
|
+
});
|
|
2234
|
+
} else {
|
|
2235
|
+
document.removeEventListener(eventTypes, listener);
|
|
2236
|
+
}
|
|
2237
|
+
};
|
|
2238
|
+
}, [ref, handler, eventTypes]);
|
|
2239
|
+
};
|
|
2240
|
+
|
|
2211
2241
|
// src/hooks/useMq/useMq.ts
|
|
2212
2242
|
var import_type_guards8 = require("@wistia/type-guards");
|
|
2213
2243
|
|
|
2214
2244
|
// src/hooks/useWindowSize/useWindowSize.ts
|
|
2215
|
-
var
|
|
2245
|
+
var import_react10 = require("react");
|
|
2216
2246
|
var import_throttle_debounce = require("throttle-debounce");
|
|
2217
2247
|
|
|
2218
2248
|
// src/private/helpers/isClient/isClient.ts
|
|
@@ -2220,11 +2250,11 @@ var isClient = () => typeof window !== "undefined" && typeof document !== "undef
|
|
|
2220
2250
|
|
|
2221
2251
|
// src/hooks/useWindowSize/useWindowSize.ts
|
|
2222
2252
|
var useWindowSize = (interval = 0) => {
|
|
2223
|
-
const [dimensions, setDimensions] = (0,
|
|
2253
|
+
const [dimensions, setDimensions] = (0, import_react10.useState)({
|
|
2224
2254
|
width: isClient() ? window.innerWidth : 0,
|
|
2225
2255
|
height: isClient() ? window.innerHeight : 0
|
|
2226
2256
|
});
|
|
2227
|
-
(0,
|
|
2257
|
+
(0, import_react10.useLayoutEffect)(() => {
|
|
2228
2258
|
const handleResize = (0, import_throttle_debounce.debounce)(
|
|
2229
2259
|
interval,
|
|
2230
2260
|
() => setDimensions({
|
|
@@ -2276,11 +2306,11 @@ var useActiveMq = () => {
|
|
|
2276
2306
|
};
|
|
2277
2307
|
|
|
2278
2308
|
// src/hooks/useToast/useToast.tsx
|
|
2279
|
-
var
|
|
2309
|
+
var import_react12 = require("react");
|
|
2280
2310
|
var import_sonner2 = require("sonner");
|
|
2281
2311
|
|
|
2282
2312
|
// src/private/components/Toast/Toast.tsx
|
|
2283
|
-
var
|
|
2313
|
+
var import_react11 = require("react");
|
|
2284
2314
|
var import_styled_components15 = __toESM(require("styled-components"));
|
|
2285
2315
|
var import_type_guards10 = require("@wistia/type-guards");
|
|
2286
2316
|
|
|
@@ -2510,8 +2540,8 @@ var StyledToast = import_styled_components15.default.div`
|
|
|
2510
2540
|
}
|
|
2511
2541
|
`;
|
|
2512
2542
|
var Action = ({ actionButton }) => {
|
|
2513
|
-
if ((0, import_type_guards10.isNotNil)(actionButton) && (0,
|
|
2514
|
-
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(ActionWrapper, { children: (0,
|
|
2543
|
+
if ((0, import_type_guards10.isNotNil)(actionButton) && (0, import_react11.isValidElement)(actionButton)) {
|
|
2544
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(ActionWrapper, { children: (0, import_react11.cloneElement)(actionButton, {
|
|
2515
2545
|
variant: "soft",
|
|
2516
2546
|
// force Button variant
|
|
2517
2547
|
size: "sm"
|
|
@@ -2547,7 +2577,7 @@ Toast.displayName = "Toast";
|
|
|
2547
2577
|
// src/hooks/useToast/useToast.tsx
|
|
2548
2578
|
var import_jsx_runtime6 = require("react/jsx-runtime");
|
|
2549
2579
|
var useToast = () => {
|
|
2550
|
-
return (0,
|
|
2580
|
+
return (0, import_react12.useCallback)(
|
|
2551
2581
|
({ message, action, colorScheme, icon, position = "bottom-left", duration = 3e3 }) => {
|
|
2552
2582
|
import_sonner2.toast.custom(
|
|
2553
2583
|
() => {
|
|
@@ -2569,11 +2599,11 @@ var useToast = () => {
|
|
|
2569
2599
|
};
|
|
2570
2600
|
|
|
2571
2601
|
// src/components/ActionButton/ActionButton.tsx
|
|
2572
|
-
var
|
|
2602
|
+
var import_react16 = require("react");
|
|
2573
2603
|
var import_styled_components21 = __toESM(require("styled-components"));
|
|
2574
2604
|
|
|
2575
2605
|
// src/components/Button/Button.tsx
|
|
2576
|
-
var
|
|
2606
|
+
var import_react15 = require("react");
|
|
2577
2607
|
var import_styled_components20 = __toESM(require("styled-components"));
|
|
2578
2608
|
var import_type_guards14 = require("@wistia/type-guards");
|
|
2579
2609
|
|
|
@@ -6635,13 +6665,13 @@ var iconMap = {
|
|
|
6635
6665
|
|
|
6636
6666
|
// src/private/hooks/useResponsiveProp/useResponsiveProp.ts
|
|
6637
6667
|
var import_type_guards11 = require("@wistia/type-guards");
|
|
6638
|
-
var
|
|
6668
|
+
var import_react13 = require("react");
|
|
6639
6669
|
var isResponsiveObject = (values) => {
|
|
6640
6670
|
return typeof values === "object" && values !== null && !Array.isArray(values) && "base" in values;
|
|
6641
6671
|
};
|
|
6642
6672
|
var useResponsiveProp = (values) => {
|
|
6643
6673
|
const activeMediaQueries = useActiveMq();
|
|
6644
|
-
return (0,
|
|
6674
|
+
return (0, import_react13.useMemo)(() => {
|
|
6645
6675
|
if ((0, import_type_guards11.isRecord)(values) && isResponsiveObject(values)) {
|
|
6646
6676
|
const mq2 = activeMediaQueries.find((key) => key in values);
|
|
6647
6677
|
return (0, import_type_guards11.isNotUndefined)(mq2) && (0, import_type_guards11.isNotUndefined)(values[mq2]) ? values[mq2] : values.base;
|
|
@@ -6708,7 +6738,7 @@ var Icon = ({
|
|
|
6708
6738
|
Icon.displayName = "Icon";
|
|
6709
6739
|
|
|
6710
6740
|
// src/components/Link/Link.tsx
|
|
6711
|
-
var
|
|
6741
|
+
var import_react14 = require("react");
|
|
6712
6742
|
var import_type_guards13 = require("@wistia/type-guards");
|
|
6713
6743
|
var import_styled_components19 = __toESM(require("styled-components"));
|
|
6714
6744
|
var import_react_router_dom = require("react-router-dom");
|
|
@@ -6748,7 +6778,7 @@ var StyledLink = import_styled_components19.default.a`
|
|
|
6748
6778
|
}
|
|
6749
6779
|
}
|
|
6750
6780
|
`;
|
|
6751
|
-
var Link = (0,
|
|
6781
|
+
var Link = (0, import_react14.forwardRef)(
|
|
6752
6782
|
({
|
|
6753
6783
|
beforeAction,
|
|
6754
6784
|
children,
|
|
@@ -6894,7 +6924,7 @@ var ButtonContent = ({
|
|
|
6894
6924
|
)
|
|
6895
6925
|
] });
|
|
6896
6926
|
};
|
|
6897
|
-
var Button = (0,
|
|
6927
|
+
var Button = (0, import_react15.forwardRef)(
|
|
6898
6928
|
({
|
|
6899
6929
|
children,
|
|
6900
6930
|
forceState,
|
|
@@ -7073,7 +7103,7 @@ var StyledLabel = import_styled_components21.default.span`
|
|
|
7073
7103
|
grid-row: 2;
|
|
7074
7104
|
text-align: left;
|
|
7075
7105
|
`;
|
|
7076
|
-
var ActionButton = (0,
|
|
7106
|
+
var ActionButton = (0, import_react16.forwardRef)(
|
|
7077
7107
|
({
|
|
7078
7108
|
icon,
|
|
7079
7109
|
colorScheme = "default",
|
|
@@ -7117,7 +7147,7 @@ var ActionButton = (0, import_react15.forwardRef)(
|
|
|
7117
7147
|
ActionButton.displayName = "ActionButton";
|
|
7118
7148
|
|
|
7119
7149
|
// src/components/Avatar/Avatar.tsx
|
|
7120
|
-
var
|
|
7150
|
+
var import_react17 = require("react");
|
|
7121
7151
|
var import_type_guards16 = require("@wistia/type-guards");
|
|
7122
7152
|
var import_styled_components23 = __toESM(require("styled-components"));
|
|
7123
7153
|
|
|
@@ -7249,8 +7279,8 @@ var Avatar = ({
|
|
|
7249
7279
|
onImageLoad,
|
|
7250
7280
|
...otherProps
|
|
7251
7281
|
}) => {
|
|
7252
|
-
const [imageLoadState, setImageLoadState] = (0,
|
|
7253
|
-
(0,
|
|
7282
|
+
const [imageLoadState, setImageLoadState] = (0, import_react17.useState)("loading");
|
|
7283
|
+
(0, import_react17.useEffect)(() => {
|
|
7254
7284
|
setImageLoadState("loading");
|
|
7255
7285
|
}, [imageUrl]);
|
|
7256
7286
|
const handleImageLoad = () => {
|
|
@@ -7262,7 +7292,7 @@ var Avatar = ({
|
|
|
7262
7292
|
onImageLoad?.({ state: "error", type: "initials" });
|
|
7263
7293
|
};
|
|
7264
7294
|
const avatarSize = heightAndWidth ?? avatarSizeMap[size];
|
|
7265
|
-
const avatarColor = (0,
|
|
7295
|
+
const avatarColor = (0, import_react17.useMemo)(() => chooseColorScheme(name), [name]);
|
|
7266
7296
|
const showInitials = (0, import_type_guards16.isNil)(imageUrl) || imageLoadState === "error";
|
|
7267
7297
|
return /* @__PURE__ */ (0, import_jsx_runtime196.jsx)(
|
|
7268
7298
|
AvatarWrapper,
|
|
@@ -7292,7 +7322,7 @@ var Avatar = ({
|
|
|
7292
7322
|
Avatar.displayName = "Avatar";
|
|
7293
7323
|
|
|
7294
7324
|
// src/components/Badge/Badge.tsx
|
|
7295
|
-
var
|
|
7325
|
+
var import_react18 = require("react");
|
|
7296
7326
|
var import_styled_components24 = __toESM(require("styled-components"));
|
|
7297
7327
|
var import_type_guards17 = require("@wistia/type-guards");
|
|
7298
7328
|
var import_jsx_runtime197 = require("react/jsx-runtime");
|
|
@@ -7316,7 +7346,7 @@ var StyledBadge = import_styled_components24.default.div`
|
|
|
7316
7346
|
width: 12px;
|
|
7317
7347
|
}
|
|
7318
7348
|
`;
|
|
7319
|
-
var Badge = (0,
|
|
7349
|
+
var Badge = (0, import_react18.forwardRef)(
|
|
7320
7350
|
({ colorScheme = "inherit", label, icon, ...otherProps }, ref) => {
|
|
7321
7351
|
const hasIcon = (0, import_type_guards17.isNotNil)(icon);
|
|
7322
7352
|
return /* @__PURE__ */ (0, import_jsx_runtime197.jsxs)(
|
|
@@ -7337,7 +7367,7 @@ var Badge = (0, import_react17.forwardRef)(
|
|
|
7337
7367
|
Badge.displayName = "Badge";
|
|
7338
7368
|
|
|
7339
7369
|
// src/components/Box/Box.tsx
|
|
7340
|
-
var
|
|
7370
|
+
var import_react19 = require("react");
|
|
7341
7371
|
var import_styled_components25 = __toESM(require("styled-components"));
|
|
7342
7372
|
var import_type_guards18 = require("@wistia/type-guards");
|
|
7343
7373
|
|
|
@@ -7446,13 +7476,13 @@ var StyledBoxComponent = import_styled_components25.default.div`
|
|
|
7446
7476
|
var wrapChildren = (children) => {
|
|
7447
7477
|
if ((0, import_type_guards18.isNotNil)(children)) {
|
|
7448
7478
|
if (typeof children === "object" && isDev) {
|
|
7449
|
-
return
|
|
7479
|
+
return import_react19.Children.map(children, (child) => {
|
|
7450
7480
|
if ((0, import_type_guards18.isNil)(child)) return null;
|
|
7451
7481
|
const elementParams = {};
|
|
7452
7482
|
if (child.type?.displayName === "Box" || child.type?.displayName === "Box_UI") {
|
|
7453
7483
|
elementParams.hasBoxParent = true;
|
|
7454
7484
|
}
|
|
7455
|
-
return (0,
|
|
7485
|
+
return (0, import_react19.cloneElement)(child, elementParams);
|
|
7456
7486
|
});
|
|
7457
7487
|
}
|
|
7458
7488
|
return children;
|
|
@@ -7460,7 +7490,7 @@ var wrapChildren = (children) => {
|
|
|
7460
7490
|
return null;
|
|
7461
7491
|
};
|
|
7462
7492
|
var DEFAULT_ELEMENT = "div";
|
|
7463
|
-
var BoxComponent = (0,
|
|
7493
|
+
var BoxComponent = (0, import_react19.forwardRef)(
|
|
7464
7494
|
({
|
|
7465
7495
|
alignContent = "stretch",
|
|
7466
7496
|
alignItems = "flex-start",
|
|
@@ -7537,7 +7567,7 @@ BoxComponent.displayName = "Box";
|
|
|
7537
7567
|
var Box = makePolymorphic(BoxComponent);
|
|
7538
7568
|
|
|
7539
7569
|
// src/components/Breadcrumbs/Breadcrumbs.tsx
|
|
7540
|
-
var
|
|
7570
|
+
var import_react20 = require("react");
|
|
7541
7571
|
var import_styled_components26 = __toESM(require("styled-components"));
|
|
7542
7572
|
var import_jsx_runtime199 = require("react/jsx-runtime");
|
|
7543
7573
|
var StyledBreadcrumbs = import_styled_components26.default.nav`
|
|
@@ -7553,7 +7583,7 @@ var StyledBreadcrumbs = import_styled_components26.default.nav`
|
|
|
7553
7583
|
var BUFFER_WIDTH = 10;
|
|
7554
7584
|
var Breadcrumbs = ({ children, ...props }) => {
|
|
7555
7585
|
const { isXsAndDown } = useMq();
|
|
7556
|
-
let crumbs =
|
|
7586
|
+
let crumbs = import_react20.Children.toArray(children);
|
|
7557
7587
|
if (isXsAndDown) {
|
|
7558
7588
|
crumbs = crumbs.slice(-1);
|
|
7559
7589
|
}
|
|
@@ -7740,7 +7770,7 @@ var Card = ({
|
|
|
7740
7770
|
Card.displayName = "Card";
|
|
7741
7771
|
|
|
7742
7772
|
// src/components/Center/Center.tsx
|
|
7743
|
-
var
|
|
7773
|
+
var import_react21 = require("react");
|
|
7744
7774
|
var import_styled_components30 = __toESM(require("styled-components"));
|
|
7745
7775
|
var import_jsx_runtime203 = require("react/jsx-runtime");
|
|
7746
7776
|
var StyledCenter = import_styled_components30.default.div`
|
|
@@ -7755,7 +7785,7 @@ var StyledCenter = import_styled_components30.default.div`
|
|
|
7755
7785
|
align-items: center;
|
|
7756
7786
|
`}
|
|
7757
7787
|
`;
|
|
7758
|
-
var Center = (0,
|
|
7788
|
+
var Center = (0, import_react21.forwardRef)(
|
|
7759
7789
|
({ maxWidth = "100%", gutterWidth = "space-00", intrinsic = false, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime203.jsx)(
|
|
7760
7790
|
StyledCenter,
|
|
7761
7791
|
{
|
|
@@ -7771,7 +7801,7 @@ var Center = (0, import_react20.forwardRef)(
|
|
|
7771
7801
|
Center.displayName = "Center";
|
|
7772
7802
|
|
|
7773
7803
|
// src/components/Checkbox/Checkbox.tsx
|
|
7774
|
-
var
|
|
7804
|
+
var import_react22 = require("react");
|
|
7775
7805
|
var import_styled_components34 = __toESM(require("styled-components"));
|
|
7776
7806
|
var import_type_guards23 = require("@wistia/type-guards");
|
|
7777
7807
|
|
|
@@ -7991,7 +8021,7 @@ var StyledHiddenCheckboxInput = import_styled_components34.default.input`
|
|
|
7991
8021
|
display: block;
|
|
7992
8022
|
}
|
|
7993
8023
|
`;
|
|
7994
|
-
var Checkbox = (0,
|
|
8024
|
+
var Checkbox = (0, import_react22.forwardRef)(
|
|
7995
8025
|
({
|
|
7996
8026
|
checked,
|
|
7997
8027
|
disabled = false,
|
|
@@ -8006,7 +8036,7 @@ var Checkbox = (0, import_react21.forwardRef)(
|
|
|
8006
8036
|
hideLabel = false,
|
|
8007
8037
|
...props
|
|
8008
8038
|
}, ref) => {
|
|
8009
|
-
const generatedId = (0,
|
|
8039
|
+
const generatedId = (0, import_react22.useId)();
|
|
8010
8040
|
const computedId = (0, import_type_guards23.isNonEmptyString)(id) ? id : `wistia-ui-checkbox-${generatedId}`;
|
|
8011
8041
|
return /* @__PURE__ */ (0, import_jsx_runtime207.jsxs)(StyledCheckboxWrapper, { disabled, children: [
|
|
8012
8042
|
/* @__PURE__ */ (0, import_jsx_runtime207.jsx)(
|
|
@@ -8049,9 +8079,9 @@ var Checkbox = (0, import_react21.forwardRef)(
|
|
|
8049
8079
|
Checkbox.displayName = "Checkbox";
|
|
8050
8080
|
|
|
8051
8081
|
// src/components/ClickRegion/ClickRegion.tsx
|
|
8052
|
-
var
|
|
8082
|
+
var import_react23 = require("react");
|
|
8053
8083
|
var ClickRegion = ({ children, targetRef }) => {
|
|
8054
|
-
(0,
|
|
8084
|
+
(0, import_react23.useEffect)(() => {
|
|
8055
8085
|
if (targetRef.current && targetRef.current.tagName === "A") {
|
|
8056
8086
|
targetRef.current.setAttribute("data-click-region-target-link", "");
|
|
8057
8087
|
} else if (targetRef.current && targetRef.current.tagName === "BUTTON") {
|
|
@@ -8059,7 +8089,7 @@ var ClickRegion = ({ children, targetRef }) => {
|
|
|
8059
8089
|
} else {
|
|
8060
8090
|
}
|
|
8061
8091
|
}, [targetRef]);
|
|
8062
|
-
const handleClick = (0,
|
|
8092
|
+
const handleClick = (0, import_react23.useCallback)(
|
|
8063
8093
|
(event) => {
|
|
8064
8094
|
const node = targetRef.current;
|
|
8065
8095
|
if (event.target instanceof HTMLAnchorElement && !event.target.hasAttribute("data-click-region-target-link") || event.target instanceof HTMLButtonElement && !event.target.hasAttribute("data-click-region-target-button")) {
|
|
@@ -8076,7 +8106,7 @@ var ClickRegion = ({ children, targetRef }) => {
|
|
|
8076
8106
|
},
|
|
8077
8107
|
[targetRef]
|
|
8078
8108
|
);
|
|
8079
|
-
return (0,
|
|
8109
|
+
return (0, import_react23.cloneElement)(import_react23.Children.only(children), {
|
|
8080
8110
|
"data-click-region": true,
|
|
8081
8111
|
onClick: handleClick
|
|
8082
8112
|
});
|
|
@@ -8109,11 +8139,11 @@ var Collapsible = ({
|
|
|
8109
8139
|
Collapsible.displayName = "Collapsible";
|
|
8110
8140
|
|
|
8111
8141
|
// src/components/Collapsible/CollapsibleTrigger.tsx
|
|
8112
|
-
var
|
|
8142
|
+
var import_react24 = require("react");
|
|
8113
8143
|
var import_react_collapsible2 = require("@radix-ui/react-collapsible");
|
|
8114
8144
|
var import_jsx_runtime209 = require("react/jsx-runtime");
|
|
8115
8145
|
var CollapsibleTrigger = ({ children }) => {
|
|
8116
|
-
|
|
8146
|
+
import_react24.Children.only(children);
|
|
8117
8147
|
return /* @__PURE__ */ (0, import_jsx_runtime209.jsx)(import_react_collapsible2.Trigger, { asChild: true, children });
|
|
8118
8148
|
};
|
|
8119
8149
|
|
|
@@ -8140,7 +8170,7 @@ var import_styled_components38 = __toESM(require("styled-components"));
|
|
|
8140
8170
|
var import_type_guards26 = require("@wistia/type-guards");
|
|
8141
8171
|
|
|
8142
8172
|
// src/components/Heading/Heading.tsx
|
|
8143
|
-
var
|
|
8173
|
+
var import_react25 = require("react");
|
|
8144
8174
|
var import_styled_components37 = __toESM(require("styled-components"));
|
|
8145
8175
|
var import_jsx_runtime211 = require("react/jsx-runtime");
|
|
8146
8176
|
var heroStyle = import_styled_components37.css`
|
|
@@ -8227,7 +8257,7 @@ var variantElementMap = {
|
|
|
8227
8257
|
heading5: "h5",
|
|
8228
8258
|
heading6: "h6"
|
|
8229
8259
|
};
|
|
8230
|
-
var HeadingComponent = (0,
|
|
8260
|
+
var HeadingComponent = (0, import_react25.forwardRef)(
|
|
8231
8261
|
({
|
|
8232
8262
|
align = "left",
|
|
8233
8263
|
colorScheme = "inherit",
|
|
@@ -8391,7 +8421,7 @@ DataCards.displayName = "DataCards";
|
|
|
8391
8421
|
var import_styled_components41 = __toESM(require("styled-components"));
|
|
8392
8422
|
|
|
8393
8423
|
// src/components/Text/Text.tsx
|
|
8394
|
-
var
|
|
8424
|
+
var import_react26 = require("react");
|
|
8395
8425
|
var import_styled_components40 = __toESM(require("styled-components"));
|
|
8396
8426
|
var import_jsx_runtime214 = require("react/jsx-runtime");
|
|
8397
8427
|
var bodyBoldStyles = import_styled_components40.css`
|
|
@@ -8557,7 +8587,7 @@ var StyledText = import_styled_components40.default.div`
|
|
|
8557
8587
|
}
|
|
8558
8588
|
`}
|
|
8559
8589
|
`;
|
|
8560
|
-
var TextComponent = (0,
|
|
8590
|
+
var TextComponent = (0, import_react26.forwardRef)(
|
|
8561
8591
|
({
|
|
8562
8592
|
align = "left",
|
|
8563
8593
|
colorScheme = "inherit",
|
|
@@ -8673,7 +8703,7 @@ Divider.displayName = "Divider";
|
|
|
8673
8703
|
|
|
8674
8704
|
// src/components/EditableHeading/EditableHeading.tsx
|
|
8675
8705
|
var import_styled_components45 = __toESM(require("styled-components"));
|
|
8676
|
-
var
|
|
8706
|
+
var import_react28 = require("react");
|
|
8677
8707
|
|
|
8678
8708
|
// src/components/Tooltip/Tooltip.tsx
|
|
8679
8709
|
var import_react_tooltip2 = require("@radix-ui/react-tooltip");
|
|
@@ -8782,7 +8812,7 @@ var Tooltip = ({
|
|
|
8782
8812
|
Tooltip.displayName = "Tooltip";
|
|
8783
8813
|
|
|
8784
8814
|
// src/components/Input/Input.tsx
|
|
8785
|
-
var
|
|
8815
|
+
var import_react27 = require("react");
|
|
8786
8816
|
var import_styled_components44 = __toESM(require("styled-components"));
|
|
8787
8817
|
var import_type_guards27 = require("@wistia/type-guards");
|
|
8788
8818
|
var import_jsx_runtime218 = require("react/jsx-runtime");
|
|
@@ -8871,7 +8901,7 @@ var StyledInputContainer = import_styled_components44.default.div`
|
|
|
8871
8901
|
padding-right: 32px;
|
|
8872
8902
|
}
|
|
8873
8903
|
`;
|
|
8874
|
-
var Input = (0,
|
|
8904
|
+
var Input = (0, import_react27.forwardRef)(
|
|
8875
8905
|
({
|
|
8876
8906
|
fullWidth = true,
|
|
8877
8907
|
monospace = false,
|
|
@@ -8881,7 +8911,7 @@ var Input = (0, import_react26.forwardRef)(
|
|
|
8881
8911
|
rightIcon,
|
|
8882
8912
|
...props
|
|
8883
8913
|
}, externalRef) => {
|
|
8884
|
-
const internalRef = (0,
|
|
8914
|
+
const internalRef = (0, import_react27.useRef)();
|
|
8885
8915
|
const ref = (
|
|
8886
8916
|
// eslint-disable-next-line react-compiler/react-compiler
|
|
8887
8917
|
(0, import_type_guards27.isNotNil)(externalRef) && (0, import_type_guards27.isRecord)(externalRef) && "current" in externalRef ? externalRef : internalRef
|
|
@@ -8891,14 +8921,14 @@ var Input = (0, import_react26.forwardRef)(
|
|
|
8891
8921
|
leftIconToDisplay = /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(Icon, { type: "search" });
|
|
8892
8922
|
}
|
|
8893
8923
|
if ((0, import_type_guards27.isNotNil)(leftIconToDisplay)) {
|
|
8894
|
-
leftIconToDisplay = (0,
|
|
8924
|
+
leftIconToDisplay = (0, import_react27.cloneElement)(leftIconToDisplay, {
|
|
8895
8925
|
size: "md",
|
|
8896
8926
|
className: "wui-input-left-icon"
|
|
8897
8927
|
});
|
|
8898
8928
|
}
|
|
8899
8929
|
let rightIconToDisplay = rightIcon;
|
|
8900
8930
|
if ((0, import_type_guards27.isNotNil)(rightIconToDisplay)) {
|
|
8901
|
-
rightIconToDisplay = (0,
|
|
8931
|
+
rightIconToDisplay = (0, import_react27.cloneElement)(rightIconToDisplay, {
|
|
8902
8932
|
size: "md",
|
|
8903
8933
|
className: "wui-input-right-icon"
|
|
8904
8934
|
});
|
|
@@ -8993,11 +9023,11 @@ var EditableHeading = ({
|
|
|
8993
9023
|
forceEditing = false,
|
|
8994
9024
|
editingDisabled = false
|
|
8995
9025
|
}) => {
|
|
8996
|
-
const [isEditing, setIsEditing] = (0,
|
|
8997
|
-
const [value, setValue] = (0,
|
|
8998
|
-
const [previousValue, setPreviousValue] = (0,
|
|
8999
|
-
const [headingHeight, setHeadingHeight] = (0,
|
|
9000
|
-
const headingRef = (0,
|
|
9026
|
+
const [isEditing, setIsEditing] = (0, import_react28.useState)(false);
|
|
9027
|
+
const [value, setValue] = (0, import_react28.useState)(children);
|
|
9028
|
+
const [previousValue, setPreviousValue] = (0, import_react28.useState)(children);
|
|
9029
|
+
const [headingHeight, setHeadingHeight] = (0, import_react28.useState)("60");
|
|
9030
|
+
const headingRef = (0, import_react28.useRef)(null);
|
|
9001
9031
|
const handleSetEditing = (editing) => {
|
|
9002
9032
|
if (editingDisabled) return;
|
|
9003
9033
|
if (editing && headingRef.current) {
|
|
@@ -9083,12 +9113,12 @@ var EditableHeading = ({
|
|
|
9083
9113
|
};
|
|
9084
9114
|
|
|
9085
9115
|
// src/components/Form/Form.tsx
|
|
9086
|
-
var
|
|
9116
|
+
var import_react30 = require("react");
|
|
9087
9117
|
var import_styled_components47 = __toESM(require("styled-components"));
|
|
9088
9118
|
var import_type_guards28 = require("@wistia/type-guards");
|
|
9089
9119
|
|
|
9090
9120
|
// src/components/Stack/Stack.tsx
|
|
9091
|
-
var
|
|
9121
|
+
var import_react29 = require("react");
|
|
9092
9122
|
var import_styled_components46 = __toESM(require("styled-components"));
|
|
9093
9123
|
var import_jsx_runtime220 = require("react/jsx-runtime");
|
|
9094
9124
|
var DEFAULT_ELEMENT4 = "div";
|
|
@@ -9098,7 +9128,7 @@ var StyledStack = import_styled_components46.default.div`
|
|
|
9098
9128
|
gap: ${({ $gap }) => `var(--wui-${$gap})`};
|
|
9099
9129
|
align-items: ${({ $alignItems }) => $alignItems};
|
|
9100
9130
|
`;
|
|
9101
|
-
var StackComponent = (0,
|
|
9131
|
+
var StackComponent = (0, import_react29.forwardRef)(
|
|
9102
9132
|
({ renderAs, direction = "vertical", gap = "space-02", alignItems = "stretch", ...props }, ref) => {
|
|
9103
9133
|
const responsiveGap = useResponsiveProp(gap);
|
|
9104
9134
|
const responsiveDirection = useResponsiveProp(direction);
|
|
@@ -9127,7 +9157,7 @@ var StyledForm = import_styled_components47.default.form`
|
|
|
9127
9157
|
max-width: ${({ $fullWidth }) => $fullWidth ? "auto" : "var(--form-default-width)"};
|
|
9128
9158
|
align-items: ${({ $fullWidth }) => $fullWidth ? "stretch" : "flex-start"};
|
|
9129
9159
|
`;
|
|
9130
|
-
var FormContext = (0,
|
|
9160
|
+
var FormContext = (0, import_react30.createContext)({
|
|
9131
9161
|
values: {},
|
|
9132
9162
|
errors: {},
|
|
9133
9163
|
hasSubmitted: false,
|
|
@@ -9143,11 +9173,11 @@ var FormComponent = ({
|
|
|
9143
9173
|
fullWidth = false,
|
|
9144
9174
|
...props
|
|
9145
9175
|
}, forwardedRef) => {
|
|
9146
|
-
const [errors, setErrors] = (0,
|
|
9147
|
-
const [hasSubmitted, setHasSubmitted] = (0,
|
|
9148
|
-
const innerRef = (0,
|
|
9176
|
+
const [errors, setErrors] = (0, import_react30.useState)({});
|
|
9177
|
+
const [hasSubmitted, setHasSubmitted] = (0, import_react30.useState)(false);
|
|
9178
|
+
const innerRef = (0, import_react30.useRef)();
|
|
9149
9179
|
const ref = forwardedRef ?? innerRef;
|
|
9150
|
-
const autoId = (0,
|
|
9180
|
+
const autoId = (0, import_react30.useId)();
|
|
9151
9181
|
const id = props.id ?? autoId;
|
|
9152
9182
|
const handleValidate = (nextFormData) => {
|
|
9153
9183
|
const nextData = Object.fromEntries(nextFormData.entries());
|
|
@@ -9189,7 +9219,7 @@ var FormComponent = ({
|
|
|
9189
9219
|
void action(null);
|
|
9190
9220
|
}
|
|
9191
9221
|
};
|
|
9192
|
-
const context = (0,
|
|
9222
|
+
const context = (0, import_react30.useMemo)(() => {
|
|
9193
9223
|
return {
|
|
9194
9224
|
values,
|
|
9195
9225
|
errors,
|
|
@@ -9218,15 +9248,15 @@ var FormComponent = ({
|
|
|
9218
9248
|
);
|
|
9219
9249
|
};
|
|
9220
9250
|
FormComponent.displayName = "Form";
|
|
9221
|
-
var Form = (0,
|
|
9251
|
+
var Form = (0, import_react30.forwardRef)(FormComponent);
|
|
9222
9252
|
|
|
9223
9253
|
// src/components/Form/useFormState.tsx
|
|
9224
|
-
var
|
|
9254
|
+
var import_react31 = require("react");
|
|
9225
9255
|
var useFormState = (action, initialData = {}) => {
|
|
9226
|
-
const [data, setData] = (0,
|
|
9227
|
-
const [isPending, setIsPending] = (0,
|
|
9228
|
-
const [error, setError] = (0,
|
|
9229
|
-
const formAction = (0,
|
|
9256
|
+
const [data, setData] = (0, import_react31.useState)(initialData);
|
|
9257
|
+
const [isPending, setIsPending] = (0, import_react31.useState)(false);
|
|
9258
|
+
const [error, setError] = (0, import_react31.useState)(null);
|
|
9259
|
+
const formAction = (0, import_react31.useCallback)(
|
|
9230
9260
|
async (nextFormData) => {
|
|
9231
9261
|
if (nextFormData === null) {
|
|
9232
9262
|
setData(initialData);
|
|
@@ -9257,15 +9287,15 @@ var useFormState = (action, initialData = {}) => {
|
|
|
9257
9287
|
};
|
|
9258
9288
|
|
|
9259
9289
|
// src/components/Form/FormErrorSummary.tsx
|
|
9260
|
-
var
|
|
9290
|
+
var import_react32 = require("react");
|
|
9261
9291
|
var import_type_guards29 = require("@wistia/type-guards");
|
|
9262
9292
|
var import_jsx_runtime222 = require("react/jsx-runtime");
|
|
9263
9293
|
var ErrorItem = ({ name, error, formId }) => {
|
|
9264
9294
|
return /* @__PURE__ */ (0, import_jsx_runtime222.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime222.jsx)(Link, { href: `#${formId}-${name}`, children: error }) }, name);
|
|
9265
9295
|
};
|
|
9266
9296
|
var FormErrorSummary = ({ description }) => {
|
|
9267
|
-
const ref = (0,
|
|
9268
|
-
const { formId, errors, hasSubmitted } = (0,
|
|
9297
|
+
const ref = (0, import_react32.useRef)(null);
|
|
9298
|
+
const { formId, errors, hasSubmitted } = (0, import_react32.useContext)(FormContext);
|
|
9269
9299
|
const isValid = Object.keys(errors).length === 0;
|
|
9270
9300
|
if (isValid || !hasSubmitted) {
|
|
9271
9301
|
return null;
|
|
@@ -9295,7 +9325,7 @@ var FormErrorSummary = ({ description }) => {
|
|
|
9295
9325
|
};
|
|
9296
9326
|
|
|
9297
9327
|
// src/components/FormField/FormField.tsx
|
|
9298
|
-
var
|
|
9328
|
+
var import_react35 = require("react");
|
|
9299
9329
|
var import_styled_components50 = __toESM(require("styled-components"));
|
|
9300
9330
|
var import_type_guards30 = require("@wistia/type-guards");
|
|
9301
9331
|
|
|
@@ -9360,11 +9390,11 @@ var Label = ({
|
|
|
9360
9390
|
Label.displayName = "Label";
|
|
9361
9391
|
|
|
9362
9392
|
// src/components/FormGroup/CheckboxGroup.tsx
|
|
9363
|
-
var
|
|
9393
|
+
var import_react34 = require("react");
|
|
9364
9394
|
|
|
9365
9395
|
// src/components/FormGroup/FormGroup.tsx
|
|
9366
9396
|
var import_styled_components49 = __toESM(require("styled-components"));
|
|
9367
|
-
var
|
|
9397
|
+
var import_react33 = require("react");
|
|
9368
9398
|
var import_jsx_runtime224 = require("react/jsx-runtime");
|
|
9369
9399
|
var StyledFieldset = import_styled_components49.default.fieldset`
|
|
9370
9400
|
border: 0;
|
|
@@ -9373,7 +9403,7 @@ var StyledLegend = import_styled_components49.default.legend`
|
|
|
9373
9403
|
margin-bottom: var(--space-01);
|
|
9374
9404
|
`;
|
|
9375
9405
|
var FormGroup = ({ children, label, ...props }) => {
|
|
9376
|
-
const ref = (0,
|
|
9406
|
+
const ref = (0, import_react33.useRef)();
|
|
9377
9407
|
return /* @__PURE__ */ (0, import_jsx_runtime224.jsxs)(
|
|
9378
9408
|
Stack,
|
|
9379
9409
|
{
|
|
@@ -9398,7 +9428,7 @@ FormGroup.displayName = "FormGroup";
|
|
|
9398
9428
|
|
|
9399
9429
|
// src/components/FormGroup/CheckboxGroup.tsx
|
|
9400
9430
|
var import_jsx_runtime225 = require("react/jsx-runtime");
|
|
9401
|
-
var CheckboxGroupContext = (0,
|
|
9431
|
+
var CheckboxGroupContext = (0, import_react34.createContext)(null);
|
|
9402
9432
|
var CheckboxGroup = ({
|
|
9403
9433
|
children,
|
|
9404
9434
|
name,
|
|
@@ -9406,7 +9436,7 @@ var CheckboxGroup = ({
|
|
|
9406
9436
|
value,
|
|
9407
9437
|
...props
|
|
9408
9438
|
}) => {
|
|
9409
|
-
const context = (0,
|
|
9439
|
+
const context = (0, import_react34.useMemo)(() => {
|
|
9410
9440
|
return {
|
|
9411
9441
|
name,
|
|
9412
9442
|
onChange
|
|
@@ -9491,8 +9521,8 @@ var FormField = ({
|
|
|
9491
9521
|
value,
|
|
9492
9522
|
...props
|
|
9493
9523
|
}) => {
|
|
9494
|
-
const formState = (0,
|
|
9495
|
-
const checkboxGroup = (0,
|
|
9524
|
+
const formState = (0, import_react35.useContext)(FormContext);
|
|
9525
|
+
const checkboxGroup = (0, import_react35.useContext)(CheckboxGroupContext);
|
|
9496
9526
|
const defaultValue = formState.values[name];
|
|
9497
9527
|
const isIntegratedLabel = children.type === Checkbox;
|
|
9498
9528
|
const computedId = id ?? `${formState.formId}-${name}`;
|
|
@@ -9530,7 +9560,7 @@ var FormField = ({
|
|
|
9530
9560
|
"aria-invalid": (0, import_type_guards30.isNotNil)(error)
|
|
9531
9561
|
};
|
|
9532
9562
|
}
|
|
9533
|
-
|
|
9563
|
+
import_react35.Children.only(children);
|
|
9534
9564
|
return /* @__PURE__ */ (0, import_jsx_runtime226.jsxs)(
|
|
9535
9565
|
StyledFormField,
|
|
9536
9566
|
{
|
|
@@ -9539,7 +9569,7 @@ var FormField = ({
|
|
|
9539
9569
|
children: [
|
|
9540
9570
|
!isIntegratedLabel && /* @__PURE__ */ (0, import_jsx_runtime226.jsx)(Label, { htmlFor: computedId, children: label }),
|
|
9541
9571
|
(0, import_type_guards30.isNotNil)(description) ? /* @__PURE__ */ (0, import_jsx_runtime226.jsx)(FormControlLabelDescription, { id: descriptionId, children: description }) : null,
|
|
9542
|
-
(0,
|
|
9572
|
+
(0, import_react35.cloneElement)(children, childProps),
|
|
9543
9573
|
(0, import_type_guards30.isNotNil)(computedError) ? /* @__PURE__ */ (0, import_jsx_runtime226.jsxs)(import_jsx_runtime226.Fragment, { children: [
|
|
9544
9574
|
/* @__PURE__ */ (0, import_jsx_runtime226.jsx)("div", {}),
|
|
9545
9575
|
/* @__PURE__ */ (0, import_jsx_runtime226.jsx)(
|
|
@@ -9557,9 +9587,9 @@ var FormField = ({
|
|
|
9557
9587
|
FormField.displayName = "FormField";
|
|
9558
9588
|
|
|
9559
9589
|
// src/components/FormGroup/RadioGroup.tsx
|
|
9560
|
-
var
|
|
9590
|
+
var import_react36 = require("react");
|
|
9561
9591
|
var import_jsx_runtime227 = require("react/jsx-runtime");
|
|
9562
|
-
var RadioGroupContext = (0,
|
|
9592
|
+
var RadioGroupContext = (0, import_react36.createContext)(null);
|
|
9563
9593
|
var RadioGroup = ({
|
|
9564
9594
|
children,
|
|
9565
9595
|
name,
|
|
@@ -9567,7 +9597,7 @@ var RadioGroup = ({
|
|
|
9567
9597
|
value,
|
|
9568
9598
|
...props
|
|
9569
9599
|
}) => {
|
|
9570
|
-
const context = (0,
|
|
9600
|
+
const context = (0, import_react36.useMemo)(() => {
|
|
9571
9601
|
return {
|
|
9572
9602
|
name,
|
|
9573
9603
|
onChange
|
|
@@ -9578,7 +9608,7 @@ var RadioGroup = ({
|
|
|
9578
9608
|
RadioGroup.displayName = "RadioGroup";
|
|
9579
9609
|
|
|
9580
9610
|
// src/components/IconButton/IconButton.tsx
|
|
9581
|
-
var
|
|
9611
|
+
var import_react37 = require("react");
|
|
9582
9612
|
var import_styled_components51 = __toESM(require("styled-components"));
|
|
9583
9613
|
var import_jsx_runtime228 = require("react/jsx-runtime");
|
|
9584
9614
|
var StyledButton2 = (0, import_styled_components51.default)(Button)`
|
|
@@ -9595,7 +9625,7 @@ var StyledButton2 = (0, import_styled_components51.default)(Button)`
|
|
|
9595
9625
|
align-items: center;
|
|
9596
9626
|
line-height: 1;
|
|
9597
9627
|
`;
|
|
9598
|
-
var IconButton = (0,
|
|
9628
|
+
var IconButton = (0, import_react37.forwardRef)(
|
|
9599
9629
|
({ children, label, size = "md", ...props }, ref) => {
|
|
9600
9630
|
const responsiveSize = useResponsiveProp(size);
|
|
9601
9631
|
return /* @__PURE__ */ (0, import_jsx_runtime228.jsx)(
|
|
@@ -9606,7 +9636,7 @@ var IconButton = (0, import_react36.forwardRef)(
|
|
|
9606
9636
|
"aria-label": label,
|
|
9607
9637
|
"data-wistia-ui-icon-button": true,
|
|
9608
9638
|
size: responsiveSize,
|
|
9609
|
-
children: (0,
|
|
9639
|
+
children: (0, import_react37.cloneElement)(import_react37.Children.only(children), {
|
|
9610
9640
|
size: responsiveSize
|
|
9611
9641
|
})
|
|
9612
9642
|
}
|
|
@@ -9668,12 +9698,12 @@ Image.displayName = "Image";
|
|
|
9668
9698
|
var import_styled_components53 = __toESM(require("styled-components"));
|
|
9669
9699
|
var import_react_dropdown_menu = require("@radix-ui/react-dropdown-menu");
|
|
9670
9700
|
var import_type_guards32 = require("@wistia/type-guards");
|
|
9671
|
-
var
|
|
9701
|
+
var import_react39 = require("react");
|
|
9672
9702
|
|
|
9673
9703
|
// src/components/Menu/MenuContext.tsx
|
|
9674
|
-
var
|
|
9675
|
-
var MenuContext = (0,
|
|
9676
|
-
var useMenuContext = () => (0,
|
|
9704
|
+
var import_react38 = require("react");
|
|
9705
|
+
var MenuContext = (0, import_react38.createContext)({ compact: false });
|
|
9706
|
+
var useMenuContext = () => (0, import_react38.useContext)(MenuContext);
|
|
9677
9707
|
|
|
9678
9708
|
// src/components/Menu/Menu.tsx
|
|
9679
9709
|
var import_jsx_runtime230 = require("react/jsx-runtime");
|
|
@@ -9777,7 +9807,7 @@ var Menu = ({
|
|
|
9777
9807
|
onInteractOutside,
|
|
9778
9808
|
...props
|
|
9779
9809
|
}) => {
|
|
9780
|
-
const contextValue = (0,
|
|
9810
|
+
const contextValue = (0, import_react39.useMemo)(() => ({ compact }), [compact]);
|
|
9781
9811
|
let controlProps = {
|
|
9782
9812
|
...(0, import_type_guards32.isNotNil)(onOpenChange) && (0, import_type_guards32.isNotNil)(isOpen) ? { open: isOpen, onOpenChange } : {}
|
|
9783
9813
|
};
|
|
@@ -9851,13 +9881,13 @@ var MenuLabel = ({ children, ...props }) => {
|
|
|
9851
9881
|
MenuLabel.displayName = "MenuLabel";
|
|
9852
9882
|
|
|
9853
9883
|
// src/components/Menu/SubMenu.tsx
|
|
9854
|
-
var
|
|
9884
|
+
var import_react41 = require("react");
|
|
9855
9885
|
var import_styled_components57 = __toESM(require("styled-components"));
|
|
9856
9886
|
var import_react_dropdown_menu3 = require("@radix-ui/react-dropdown-menu");
|
|
9857
9887
|
var import_type_guards34 = require("@wistia/type-guards");
|
|
9858
9888
|
|
|
9859
9889
|
// src/components/Menu/MenuItemButton.tsx
|
|
9860
|
-
var
|
|
9890
|
+
var import_react40 = require("react");
|
|
9861
9891
|
var import_styled_components55 = __toESM(require("styled-components"));
|
|
9862
9892
|
var import_type_guards33 = require("@wistia/type-guards");
|
|
9863
9893
|
var import_jsx_runtime232 = require("react/jsx-runtime");
|
|
@@ -9934,7 +9964,7 @@ var StyledBadgeContainer = import_styled_components55.default.div`
|
|
|
9934
9964
|
font-size: var(--wui-typography-label-4-size);
|
|
9935
9965
|
color: var(--wui-color-text-secondary);
|
|
9936
9966
|
`;
|
|
9937
|
-
var MenuItemButton = (0,
|
|
9967
|
+
var MenuItemButton = (0, import_react40.forwardRef)(({ children, appearance, command, icon, ...props }, ref) => {
|
|
9938
9968
|
let { colorScheme, badge } = props;
|
|
9939
9969
|
if (appearance === "dangerous") {
|
|
9940
9970
|
if ((0, import_type_guards33.isNotUndefined)(colorScheme)) {
|
|
@@ -10030,7 +10060,7 @@ var SubMenu = ({
|
|
|
10030
10060
|
...props
|
|
10031
10061
|
}) => {
|
|
10032
10062
|
const { isSmAndUp } = useMq();
|
|
10033
|
-
const [isExpanded, setIsExpanded] = (0,
|
|
10063
|
+
const [isExpanded, setIsExpanded] = (0, import_react41.useState)(false);
|
|
10034
10064
|
const { compact } = useMenuContext();
|
|
10035
10065
|
return isSmAndUp ? /* @__PURE__ */ (0, import_jsx_runtime234.jsxs)(import_react_dropdown_menu3.DropdownMenuSub, { onOpenChange, children: [
|
|
10036
10066
|
/* @__PURE__ */ (0, import_jsx_runtime234.jsxs)(SubMenuTrigger, { ...props, children: [
|
|
@@ -10059,10 +10089,10 @@ var SubMenu = ({
|
|
|
10059
10089
|
SubMenu.displayName = "SubMenu";
|
|
10060
10090
|
|
|
10061
10091
|
// src/components/Menu/MenuItem.tsx
|
|
10062
|
-
var
|
|
10092
|
+
var import_react42 = require("react");
|
|
10063
10093
|
var import_react_dropdown_menu4 = require("@radix-ui/react-dropdown-menu");
|
|
10064
10094
|
var import_jsx_runtime235 = require("react/jsx-runtime");
|
|
10065
|
-
var MenuItem = (0,
|
|
10095
|
+
var MenuItem = (0, import_react42.forwardRef)(
|
|
10066
10096
|
({ onSelect = () => null, ...props }, ref) => {
|
|
10067
10097
|
return /* @__PURE__ */ (0, import_jsx_runtime235.jsx)(
|
|
10068
10098
|
import_react_dropdown_menu4.DropdownMenuItem,
|
|
@@ -10212,7 +10242,7 @@ var CheckboxMenuItem = ({
|
|
|
10212
10242
|
CheckboxMenuItem.displayName = "CheckboxMenuItem";
|
|
10213
10243
|
|
|
10214
10244
|
// src/components/Modal/Modal.tsx
|
|
10215
|
-
var
|
|
10245
|
+
var import_react46 = require("react");
|
|
10216
10246
|
var import_styled_components62 = __toESM(require("styled-components"));
|
|
10217
10247
|
var import_react_dialog4 = require("@radix-ui/react-dialog");
|
|
10218
10248
|
var import_type_guards36 = require("@wistia/type-guards");
|
|
@@ -10272,19 +10302,19 @@ var ModalHeader = ({
|
|
|
10272
10302
|
};
|
|
10273
10303
|
|
|
10274
10304
|
// src/components/Modal/ModalContent.tsx
|
|
10275
|
-
var
|
|
10305
|
+
var import_react44 = require("react");
|
|
10276
10306
|
var import_styled_components60 = __toESM(require("styled-components"));
|
|
10277
10307
|
var import_react_dialog3 = require("@radix-ui/react-dialog");
|
|
10278
10308
|
|
|
10279
10309
|
// src/private/hooks/useFocusRestore/useFocusRestore.ts
|
|
10280
|
-
var
|
|
10310
|
+
var import_react43 = require("react");
|
|
10281
10311
|
var import_type_guards35 = require("@wistia/type-guards");
|
|
10282
10312
|
var useFocusRestore = () => {
|
|
10283
|
-
const previouslyFocusedRef = (0,
|
|
10284
|
-
(0,
|
|
10313
|
+
const previouslyFocusedRef = (0, import_react43.useRef)(null);
|
|
10314
|
+
(0, import_react43.useEffect)(() => {
|
|
10285
10315
|
previouslyFocusedRef.current = document.activeElement;
|
|
10286
10316
|
}, []);
|
|
10287
|
-
(0,
|
|
10317
|
+
(0, import_react43.useEffect)(() => {
|
|
10288
10318
|
return () => {
|
|
10289
10319
|
if ((0, import_type_guards35.isNotNil)(previouslyFocusedRef.current)) {
|
|
10290
10320
|
setTimeout(() => {
|
|
@@ -10338,7 +10368,7 @@ var StyledModalContent = (0, import_styled_components60.default)(import_react_di
|
|
|
10338
10368
|
}
|
|
10339
10369
|
}
|
|
10340
10370
|
`;
|
|
10341
|
-
var ModalContent = (0,
|
|
10371
|
+
var ModalContent = (0, import_react44.forwardRef)(
|
|
10342
10372
|
({ fullHeight, width, children, ...otherProps }, ref) => {
|
|
10343
10373
|
useFocusRestore();
|
|
10344
10374
|
return /* @__PURE__ */ (0, import_jsx_runtime241.jsx)(
|
|
@@ -10356,7 +10386,7 @@ var ModalContent = (0, import_react43.forwardRef)(
|
|
|
10356
10386
|
);
|
|
10357
10387
|
|
|
10358
10388
|
// src/private/components/Backdrop/Backdrop.tsx
|
|
10359
|
-
var
|
|
10389
|
+
var import_react45 = require("react");
|
|
10360
10390
|
var import_styled_components61 = __toESM(require("styled-components"));
|
|
10361
10391
|
var import_jsx_runtime242 = require("react/jsx-runtime");
|
|
10362
10392
|
var backdropAnimationDuration = 150;
|
|
@@ -10394,7 +10424,7 @@ var BackdropComponent = import_styled_components61.default.div`
|
|
|
10394
10424
|
}
|
|
10395
10425
|
}
|
|
10396
10426
|
`;
|
|
10397
|
-
var Backdrop = (0,
|
|
10427
|
+
var Backdrop = (0, import_react45.forwardRef)(
|
|
10398
10428
|
({ alignHorizontal = "center", alignVertical = "center", children, ...otherProps }, ref) => /* @__PURE__ */ (0, import_jsx_runtime242.jsx)(
|
|
10399
10429
|
BackdropComponent,
|
|
10400
10430
|
{
|
|
@@ -10416,7 +10446,7 @@ var ModalBody = import_styled_components62.default.div`
|
|
|
10416
10446
|
display: flex;
|
|
10417
10447
|
order: 2;
|
|
10418
10448
|
`;
|
|
10419
|
-
var Modal = (0,
|
|
10449
|
+
var Modal = (0, import_react46.forwardRef)(
|
|
10420
10450
|
({
|
|
10421
10451
|
children,
|
|
10422
10452
|
fullHeight = false,
|
|
@@ -10488,6 +10518,7 @@ var getControlProps = (isOpen, onOpenChange) => {
|
|
|
10488
10518
|
// src/components/Popover/Popover.tsx
|
|
10489
10519
|
var import_jsx_runtime244 = require("react/jsx-runtime");
|
|
10490
10520
|
var StyledContent2 = (0, import_styled_components63.default)(import_react_popover.Content)`
|
|
10521
|
+
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
10491
10522
|
${({ $unstyled }) => !$unstyled && import_styled_components63.css`
|
|
10492
10523
|
border-radius: var(--wui-border-radius-02);
|
|
10493
10524
|
padding: var(--wui-space-04);
|
|
@@ -10510,6 +10541,7 @@ var Popover = ({
|
|
|
10510
10541
|
hideCloseButton = false,
|
|
10511
10542
|
onOpenChange,
|
|
10512
10543
|
unstyled = false,
|
|
10544
|
+
colorScheme = "inherit",
|
|
10513
10545
|
...props
|
|
10514
10546
|
}) => {
|
|
10515
10547
|
return /* @__PURE__ */ (0, import_jsx_runtime244.jsxs)(import_react_popover.Root, { ...getControlProps(isOpen, onOpenChange), children: [
|
|
@@ -10517,6 +10549,7 @@ var Popover = ({
|
|
|
10517
10549
|
/* @__PURE__ */ (0, import_jsx_runtime244.jsx)(import_react_popover.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime244.jsxs)(
|
|
10518
10550
|
StyledContent2,
|
|
10519
10551
|
{
|
|
10552
|
+
$colorScheme: colorScheme,
|
|
10520
10553
|
sideOffset: 8,
|
|
10521
10554
|
...props,
|
|
10522
10555
|
$unstyled: unstyled,
|
|
@@ -10618,7 +10651,7 @@ var ProgressBar = ({
|
|
|
10618
10651
|
ProgressBar.displayName = "ProgressBar";
|
|
10619
10652
|
|
|
10620
10653
|
// src/components/Radio/Radio.tsx
|
|
10621
|
-
var
|
|
10654
|
+
var import_react47 = require("react");
|
|
10622
10655
|
var import_styled_components65 = __toESM(require("styled-components"));
|
|
10623
10656
|
var import_type_guards39 = require("@wistia/type-guards");
|
|
10624
10657
|
var import_jsx_runtime246 = require("react/jsx-runtime");
|
|
@@ -10721,7 +10754,7 @@ var StyledHiddenRadioInput = import_styled_components65.default.input`
|
|
|
10721
10754
|
display: block;
|
|
10722
10755
|
}
|
|
10723
10756
|
`;
|
|
10724
|
-
var Radio = (0,
|
|
10757
|
+
var Radio = (0, import_react47.forwardRef)(
|
|
10725
10758
|
({
|
|
10726
10759
|
checked,
|
|
10727
10760
|
disabled = false,
|
|
@@ -10736,7 +10769,7 @@ var Radio = (0, import_react46.forwardRef)(
|
|
|
10736
10769
|
hideLabel = false,
|
|
10737
10770
|
...props
|
|
10738
10771
|
}, ref) => {
|
|
10739
|
-
const generatedId = (0,
|
|
10772
|
+
const generatedId = (0, import_react47.useId)();
|
|
10740
10773
|
const computedId = (0, import_type_guards39.isNonEmptyString)(id) ? id : `wistia-ui-radio-${generatedId}`;
|
|
10741
10774
|
return /* @__PURE__ */ (0, import_jsx_runtime246.jsxs)(
|
|
10742
10775
|
StyledRadioWrapper,
|
|
@@ -10786,22 +10819,22 @@ var Radio = (0, import_react46.forwardRef)(
|
|
|
10786
10819
|
Radio.displayName = "Radio";
|
|
10787
10820
|
|
|
10788
10821
|
// src/components/SegmentedControl/SegmentedControl.tsx
|
|
10789
|
-
var
|
|
10822
|
+
var import_react51 = require("react");
|
|
10790
10823
|
var import_styled_components67 = __toESM(require("styled-components"));
|
|
10791
10824
|
var import_react_toggle_group = require("@radix-ui/react-toggle-group");
|
|
10792
10825
|
var import_type_guards40 = require("@wistia/type-guards");
|
|
10793
10826
|
|
|
10794
10827
|
// src/components/SegmentedControl/useSelectedItemMeasurements.tsx
|
|
10795
|
-
var
|
|
10828
|
+
var import_react48 = require("react");
|
|
10796
10829
|
var import_jsx_runtime247 = require("react/jsx-runtime");
|
|
10797
|
-
var SelectedItemMeasurementsContext = (0,
|
|
10830
|
+
var SelectedItemMeasurementsContext = (0, import_react48.createContext)(
|
|
10798
10831
|
null
|
|
10799
10832
|
);
|
|
10800
10833
|
var SelectedItemMeasurementsProvider = ({
|
|
10801
10834
|
children
|
|
10802
10835
|
}) => {
|
|
10803
|
-
const [selectedItemMeasurements, setSelectedItemMeasurements] = (0,
|
|
10804
|
-
const contextValue = (0,
|
|
10836
|
+
const [selectedItemMeasurements, setSelectedItemMeasurements] = (0, import_react48.useState)(null);
|
|
10837
|
+
const contextValue = (0, import_react48.useMemo)(
|
|
10805
10838
|
() => ({
|
|
10806
10839
|
setSelectedItemMeasurements,
|
|
10807
10840
|
selectedItemMeasurements
|
|
@@ -10811,7 +10844,7 @@ var SelectedItemMeasurementsProvider = ({
|
|
|
10811
10844
|
return /* @__PURE__ */ (0, import_jsx_runtime247.jsx)(SelectedItemMeasurementsContext.Provider, { value: contextValue, children });
|
|
10812
10845
|
};
|
|
10813
10846
|
var useSelectedItemMeasurements = () => {
|
|
10814
|
-
const context = (0,
|
|
10847
|
+
const context = (0, import_react48.useContext)(SelectedItemMeasurementsContext);
|
|
10815
10848
|
if (context === null) {
|
|
10816
10849
|
throw new Error(
|
|
10817
10850
|
"useSelectedItemMeasurements must be used within a SelectedItemMeasurementsProvider"
|
|
@@ -10821,15 +10854,15 @@ var useSelectedItemMeasurements = () => {
|
|
|
10821
10854
|
};
|
|
10822
10855
|
|
|
10823
10856
|
// src/components/SegmentedControl/SelectedItemIndicator.tsx
|
|
10824
|
-
var
|
|
10857
|
+
var import_react50 = require("react");
|
|
10825
10858
|
var import_styled_components66 = __toESM(require("styled-components"));
|
|
10826
10859
|
|
|
10827
10860
|
// src/components/SegmentedControl/useSegmentedControlValue.tsx
|
|
10828
|
-
var
|
|
10829
|
-
var SegmentedControlValueContext = (0,
|
|
10861
|
+
var import_react49 = require("react");
|
|
10862
|
+
var SegmentedControlValueContext = (0, import_react49.createContext)(null);
|
|
10830
10863
|
var SegmentedControlValueProvider = SegmentedControlValueContext.Provider;
|
|
10831
10864
|
var useSegmentedControlValue = () => {
|
|
10832
|
-
const context = (0,
|
|
10865
|
+
const context = (0, import_react49.useContext)(SegmentedControlValueContext);
|
|
10833
10866
|
if (context === null) {
|
|
10834
10867
|
throw new Error("useSegmentedControlValue must be used within a SegmentedControlValueProvider");
|
|
10835
10868
|
}
|
|
@@ -10853,7 +10886,7 @@ var SelectedItemIndicatorDiv = import_styled_components66.default.div`
|
|
|
10853
10886
|
var SelectedItemIndicator = () => {
|
|
10854
10887
|
const selectedValue = useSegmentedControlValue();
|
|
10855
10888
|
const { selectedItemMeasurements } = useSelectedItemMeasurements();
|
|
10856
|
-
const selectedItemIndicatorStyle = (0,
|
|
10889
|
+
const selectedItemIndicatorStyle = (0, import_react50.useMemo)(
|
|
10857
10890
|
() => selectedItemMeasurements != null ? {
|
|
10858
10891
|
height: `${selectedItemMeasurements.offsetHeight}px`,
|
|
10859
10892
|
transform: `translateX(${selectedItemMeasurements.offsetLeft}px)`,
|
|
@@ -10891,7 +10924,7 @@ var segmentedControlStyles = import_styled_components67.css`
|
|
|
10891
10924
|
var StyledSegmentedControl = (0, import_styled_components67.default)(import_react_toggle_group.Root)`
|
|
10892
10925
|
${segmentedControlStyles}
|
|
10893
10926
|
`;
|
|
10894
|
-
var SegmentedControl = (0,
|
|
10927
|
+
var SegmentedControl = (0, import_react51.forwardRef)(
|
|
10895
10928
|
({
|
|
10896
10929
|
children,
|
|
10897
10930
|
disabled = false,
|
|
@@ -10926,7 +10959,7 @@ var SegmentedControl = (0, import_react50.forwardRef)(
|
|
|
10926
10959
|
SegmentedControl.displayName = "SegmentedControl";
|
|
10927
10960
|
|
|
10928
10961
|
// src/components/SegmentedControl/SegmentedControlItem.tsx
|
|
10929
|
-
var
|
|
10962
|
+
var import_react52 = require("react");
|
|
10930
10963
|
var import_styled_components68 = __toESM(require("styled-components"));
|
|
10931
10964
|
var import_react_toggle_group2 = require("@radix-ui/react-toggle-group");
|
|
10932
10965
|
var import_type_guards41 = require("@wistia/type-guards");
|
|
@@ -10971,6 +11004,7 @@ var segmentedControlItemStyles = import_styled_components68.css`
|
|
|
10971
11004
|
&[data-state='active'] {
|
|
10972
11005
|
color: var(--wui-color-text-selected);
|
|
10973
11006
|
cursor: default;
|
|
11007
|
+
transition: none;
|
|
10974
11008
|
|
|
10975
11009
|
svg path {
|
|
10976
11010
|
fill: var(--wui-color-icon-selected);
|
|
@@ -10993,11 +11027,11 @@ var segmentedControlItemStyles = import_styled_components68.css`
|
|
|
10993
11027
|
var StyledSegmentedControlItem = (0, import_styled_components68.default)(import_react_toggle_group2.Item)`
|
|
10994
11028
|
${segmentedControlItemStyles}
|
|
10995
11029
|
`;
|
|
10996
|
-
var SegmentedControlItem = (0,
|
|
11030
|
+
var SegmentedControlItem = (0, import_react52.forwardRef)(
|
|
10997
11031
|
({ disabled, icon, label, "aria-label": ariaLabel, value }, forwardedRef) => {
|
|
10998
11032
|
const selectedValue = useSegmentedControlValue();
|
|
10999
11033
|
const { setSelectedItemMeasurements } = useSelectedItemMeasurements();
|
|
11000
|
-
const buttonRef = (0,
|
|
11034
|
+
const buttonRef = (0, import_react52.useRef)(null);
|
|
11001
11035
|
const combinedRef = mergeRefs([buttonRef, forwardedRef]);
|
|
11002
11036
|
const handleClick = (event) => {
|
|
11003
11037
|
const target = event.target;
|
|
@@ -11006,7 +11040,7 @@ var SegmentedControlItem = (0, import_react51.forwardRef)(
|
|
|
11006
11040
|
event.preventDefault();
|
|
11007
11041
|
}
|
|
11008
11042
|
};
|
|
11009
|
-
(0,
|
|
11043
|
+
(0, import_react52.useEffect)(() => {
|
|
11010
11044
|
const buttonElem = buttonRef.current;
|
|
11011
11045
|
if (!buttonElem) {
|
|
11012
11046
|
return void 0;
|
|
@@ -11052,7 +11086,7 @@ SegmentedControlItem.displayName = "SegmentedControlItem";
|
|
|
11052
11086
|
|
|
11053
11087
|
// src/components/Select/Select.tsx
|
|
11054
11088
|
var import_react_select = require("@radix-ui/react-select");
|
|
11055
|
-
var
|
|
11089
|
+
var import_react53 = require("react");
|
|
11056
11090
|
var import_styled_components69 = __toESM(require("styled-components"));
|
|
11057
11091
|
var import_jsx_runtime251 = require("react/jsx-runtime");
|
|
11058
11092
|
var StyledTrigger = (0, import_styled_components69.default)(import_react_select.Trigger)`
|
|
@@ -11121,7 +11155,7 @@ var StyledContent3 = (0, import_styled_components69.default)(import_react_select
|
|
|
11121
11155
|
max-height: var(--radix-select-content-available-height);
|
|
11122
11156
|
z-index: var(--wui-zindex-select);
|
|
11123
11157
|
`;
|
|
11124
|
-
var Select = (0,
|
|
11158
|
+
var Select = (0, import_react53.forwardRef)(
|
|
11125
11159
|
({
|
|
11126
11160
|
colorScheme = "inherit",
|
|
11127
11161
|
children,
|
|
@@ -11170,7 +11204,7 @@ Select.displayName = "Select";
|
|
|
11170
11204
|
|
|
11171
11205
|
// src/components/Select/SelectOption.tsx
|
|
11172
11206
|
var import_react_select2 = require("@radix-ui/react-select");
|
|
11173
|
-
var
|
|
11207
|
+
var import_react54 = require("react");
|
|
11174
11208
|
var import_styled_components70 = __toESM(require("styled-components"));
|
|
11175
11209
|
var import_jsx_runtime252 = require("react/jsx-runtime");
|
|
11176
11210
|
var StyledItem = (0, import_styled_components70.default)(import_react_select2.Item)`
|
|
@@ -11199,7 +11233,7 @@ var StyledItem = (0, import_styled_components70.default)(import_react_select2.It
|
|
|
11199
11233
|
var StyledIconContainer = import_styled_components70.default.span`
|
|
11200
11234
|
width: 12px;
|
|
11201
11235
|
`;
|
|
11202
|
-
var SelectOption = (0,
|
|
11236
|
+
var SelectOption = (0, import_react54.forwardRef)(
|
|
11203
11237
|
({ children, ...props }, forwardedRef) => {
|
|
11204
11238
|
return /* @__PURE__ */ (0, import_jsx_runtime252.jsxs)(
|
|
11205
11239
|
StyledItem,
|
|
@@ -11244,7 +11278,7 @@ var SelectOptionGroup = ({ children, label, ...props }) => {
|
|
|
11244
11278
|
};
|
|
11245
11279
|
|
|
11246
11280
|
// src/components/Switch/Switch.tsx
|
|
11247
|
-
var
|
|
11281
|
+
var import_react55 = require("react");
|
|
11248
11282
|
var import_styled_components72 = __toESM(require("styled-components"));
|
|
11249
11283
|
var import_type_guards42 = require("@wistia/type-guards");
|
|
11250
11284
|
var import_jsx_runtime254 = require("react/jsx-runtime");
|
|
@@ -11349,7 +11383,7 @@ var StyledHiddenSwitchInput = import_styled_components72.default.input`
|
|
|
11349
11383
|
}
|
|
11350
11384
|
}
|
|
11351
11385
|
`;
|
|
11352
|
-
var Switch = (0,
|
|
11386
|
+
var Switch = (0, import_react55.forwardRef)(
|
|
11353
11387
|
({
|
|
11354
11388
|
checked,
|
|
11355
11389
|
disabled = false,
|
|
@@ -11364,7 +11398,7 @@ var Switch = (0, import_react54.forwardRef)(
|
|
|
11364
11398
|
hideLabel = false,
|
|
11365
11399
|
...props
|
|
11366
11400
|
}, ref) => {
|
|
11367
|
-
const generatedId = (0,
|
|
11401
|
+
const generatedId = (0, import_react55.useId)();
|
|
11368
11402
|
const computedId = (0, import_type_guards42.isNonEmptyString)(id) ? id : `wistia-ui-switch-${generatedId}`;
|
|
11369
11403
|
return /* @__PURE__ */ (0, import_jsx_runtime254.jsxs)(StyledSwitchWrapper, { $disabled: disabled, children: [
|
|
11370
11404
|
/* @__PURE__ */ (0, import_jsx_runtime254.jsx)(
|
|
@@ -11446,8 +11480,8 @@ var Table = ({
|
|
|
11446
11480
|
var import_styled_components74 = __toESM(require("styled-components"));
|
|
11447
11481
|
|
|
11448
11482
|
// src/components/Table/TableSectionContext.ts
|
|
11449
|
-
var
|
|
11450
|
-
var TableSectionContext = (0,
|
|
11483
|
+
var import_react56 = require("react");
|
|
11484
|
+
var TableSectionContext = (0, import_react56.createContext)(null);
|
|
11451
11485
|
|
|
11452
11486
|
// src/components/Table/TableBody.tsx
|
|
11453
11487
|
var import_jsx_runtime256 = require("react/jsx-runtime");
|
|
@@ -11457,7 +11491,7 @@ var TableBody = ({ children, ...props }) => {
|
|
|
11457
11491
|
};
|
|
11458
11492
|
|
|
11459
11493
|
// src/components/Table/TableCell.tsx
|
|
11460
|
-
var
|
|
11494
|
+
var import_react57 = require("react");
|
|
11461
11495
|
var import_styled_components75 = __toESM(require("styled-components"));
|
|
11462
11496
|
var import_jsx_runtime257 = require("react/jsx-runtime");
|
|
11463
11497
|
var sharedStyles = import_styled_components75.css`
|
|
@@ -11478,7 +11512,7 @@ var StyledTd = import_styled_components75.default.td`
|
|
|
11478
11512
|
line-height: var(--wui-typography-body-2-line-height);
|
|
11479
11513
|
`;
|
|
11480
11514
|
var TableCell = ({ children, ...props }) => {
|
|
11481
|
-
const section = (0,
|
|
11515
|
+
const section = (0, import_react57.useContext)(TableSectionContext);
|
|
11482
11516
|
if (section === "head") {
|
|
11483
11517
|
return /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(StyledTh, { ...props, children });
|
|
11484
11518
|
}
|
|
@@ -11510,7 +11544,7 @@ var TableRow = ({ children, ...props }) => {
|
|
|
11510
11544
|
};
|
|
11511
11545
|
|
|
11512
11546
|
// src/components/Tabs/Tabs.tsx
|
|
11513
|
-
var
|
|
11547
|
+
var import_react62 = require("react");
|
|
11514
11548
|
var import_react_tabs4 = require("@radix-ui/react-tabs");
|
|
11515
11549
|
var import_type_guards44 = require("@wistia/type-guards");
|
|
11516
11550
|
var import_styled_components83 = __toESM(require("styled-components"));
|
|
@@ -11565,17 +11599,17 @@ var TabList = ({
|
|
|
11565
11599
|
TabList.displayName = "TabList";
|
|
11566
11600
|
|
|
11567
11601
|
// src/components/Tabs/TabItem.tsx
|
|
11568
|
-
var
|
|
11602
|
+
var import_react59 = require("react");
|
|
11569
11603
|
var import_styled_components81 = __toESM(require("styled-components"));
|
|
11570
11604
|
var import_react_tabs3 = require("@radix-ui/react-tabs");
|
|
11571
11605
|
var import_type_guards43 = require("@wistia/type-guards");
|
|
11572
11606
|
|
|
11573
11607
|
// src/components/Tabs/useTabsValue.tsx
|
|
11574
|
-
var
|
|
11575
|
-
var TabsValueContext = (0,
|
|
11608
|
+
var import_react58 = require("react");
|
|
11609
|
+
var TabsValueContext = (0, import_react58.createContext)(null);
|
|
11576
11610
|
var TabsValueProvider = TabsValueContext.Provider;
|
|
11577
11611
|
var useTabsValue = () => {
|
|
11578
|
-
const context = (0,
|
|
11612
|
+
const context = (0, import_react58.useContext)(TabsValueContext);
|
|
11579
11613
|
if (context === null) {
|
|
11580
11614
|
throw new Error("useTabsValue must be used within a TabsValueProvider");
|
|
11581
11615
|
}
|
|
@@ -11591,13 +11625,13 @@ var StyledTabItem = (0, import_styled_components81.default)(import_react_tabs3.T
|
|
|
11591
11625
|
outline: none;
|
|
11592
11626
|
}
|
|
11593
11627
|
`;
|
|
11594
|
-
var TabItem = (0,
|
|
11628
|
+
var TabItem = (0, import_react59.forwardRef)(
|
|
11595
11629
|
({ disabled = false, icon, label, "aria-label": ariaLabel, value }, forwardedRef) => {
|
|
11596
11630
|
const selectedValue = useTabsValue();
|
|
11597
11631
|
const { setSelectedItemMeasurements } = useSelectedItemMeasurements();
|
|
11598
|
-
const buttonRef = (0,
|
|
11632
|
+
const buttonRef = (0, import_react59.useRef)(null);
|
|
11599
11633
|
const combinedRef = mergeRefs([buttonRef, forwardedRef]);
|
|
11600
|
-
(0,
|
|
11634
|
+
(0, import_react59.useEffect)(() => {
|
|
11601
11635
|
const buttonElem = buttonRef.current;
|
|
11602
11636
|
if (!buttonElem) {
|
|
11603
11637
|
return void 0;
|
|
@@ -11641,16 +11675,16 @@ var TabItem = (0, import_react58.forwardRef)(
|
|
|
11641
11675
|
TabItem.displayName = "TabItem";
|
|
11642
11676
|
|
|
11643
11677
|
// src/components/Tabs/extractTabItems.ts
|
|
11644
|
-
var
|
|
11678
|
+
var import_react60 = require("react");
|
|
11645
11679
|
var extractTabItems = (children) => {
|
|
11646
11680
|
const tabItems = [];
|
|
11647
|
-
|
|
11648
|
-
if (!(0,
|
|
11681
|
+
import_react60.Children.forEach(children, (child) => {
|
|
11682
|
+
if (!(0, import_react60.isValidElement)(child)) {
|
|
11649
11683
|
return;
|
|
11650
11684
|
}
|
|
11651
11685
|
if (typeof child.type !== "string" && child.type.displayName === "Tab") {
|
|
11652
11686
|
tabItems.push(child);
|
|
11653
|
-
} else if (child.type ===
|
|
11687
|
+
} else if (child.type === import_react60.Fragment) {
|
|
11654
11688
|
const fragmentElement = child;
|
|
11655
11689
|
tabItems.push(...extractTabItems(fragmentElement.props.children));
|
|
11656
11690
|
} else if ((child.props.children ?? null) != null) {
|
|
@@ -11663,7 +11697,7 @@ var extractTabItems = (children) => {
|
|
|
11663
11697
|
};
|
|
11664
11698
|
|
|
11665
11699
|
// src/components/Tabs/SelectedItemIndicator.tsx
|
|
11666
|
-
var
|
|
11700
|
+
var import_react61 = require("react");
|
|
11667
11701
|
var import_styled_components82 = __toESM(require("styled-components"));
|
|
11668
11702
|
var import_jsx_runtime264 = require("react/jsx-runtime");
|
|
11669
11703
|
var TabsSelectedItemIndicatorDiv = (0, import_styled_components82.default)(SelectedItemIndicatorDiv)`
|
|
@@ -11674,7 +11708,7 @@ var TabsSelectedItemIndicatorDiv = (0, import_styled_components82.default)(Selec
|
|
|
11674
11708
|
var SelectedItemIndicator2 = () => {
|
|
11675
11709
|
const { selectedItemMeasurements } = useSelectedItemMeasurements();
|
|
11676
11710
|
const selectedValue = useTabsValue();
|
|
11677
|
-
const selectedItemIndicatorStyle = (0,
|
|
11711
|
+
const selectedItemIndicatorStyle = (0, import_react61.useMemo)(
|
|
11678
11712
|
() => selectedItemMeasurements != null ? {
|
|
11679
11713
|
height: `${selectedItemMeasurements.offsetHeight}px`,
|
|
11680
11714
|
transform: `translateX(${selectedItemMeasurements.offsetLeft}px)`,
|
|
@@ -11715,7 +11749,7 @@ var StyledTabsRoot = (0, import_styled_components83.default)(import_react_tabs4.
|
|
|
11715
11749
|
flex-direction: column;
|
|
11716
11750
|
height: ${({ $stickyHeaders }) => $stickyHeaders ? "100%" : "auto"};
|
|
11717
11751
|
`;
|
|
11718
|
-
var Tabs = (0,
|
|
11752
|
+
var Tabs = (0, import_react62.forwardRef)(
|
|
11719
11753
|
({
|
|
11720
11754
|
children,
|
|
11721
11755
|
fullWidth = true,
|
|
@@ -11727,7 +11761,7 @@ var Tabs = (0, import_react61.forwardRef)(
|
|
|
11727
11761
|
...otherProps
|
|
11728
11762
|
}, ref) => {
|
|
11729
11763
|
const tabItems = extractTabItems(children);
|
|
11730
|
-
const [internalSelectedValue, setInternalSelectedValue] = (0,
|
|
11764
|
+
const [internalSelectedValue, setInternalSelectedValue] = (0, import_react62.useState)(defaultSelectedValue);
|
|
11731
11765
|
const modeProps = defaultSelectedValue !== void 0 ? {
|
|
11732
11766
|
defaultValue: defaultSelectedValue,
|
|
11733
11767
|
onValueChange: setInternalSelectedValue
|
|
@@ -11813,15 +11847,15 @@ var Tabs = (0, import_react61.forwardRef)(
|
|
|
11813
11847
|
Tabs.displayName = "Tabs";
|
|
11814
11848
|
|
|
11815
11849
|
// src/components/Tabs/Tab.tsx
|
|
11816
|
-
var
|
|
11850
|
+
var import_react63 = require("react");
|
|
11817
11851
|
var import_jsx_runtime266 = require("react/jsx-runtime");
|
|
11818
|
-
var Tab = (0,
|
|
11852
|
+
var Tab = (0, import_react63.forwardRef)(({ children }, ref) => {
|
|
11819
11853
|
return /* @__PURE__ */ (0, import_jsx_runtime266.jsx)("div", { ref, children });
|
|
11820
11854
|
});
|
|
11821
11855
|
Tab.displayName = "Tab";
|
|
11822
11856
|
|
|
11823
11857
|
// src/components/Tag/Tag.tsx
|
|
11824
|
-
var
|
|
11858
|
+
var import_react64 = require("react");
|
|
11825
11859
|
var import_styled_components84 = __toESM(require("styled-components"));
|
|
11826
11860
|
var import_type_guards45 = require("@wistia/type-guards");
|
|
11827
11861
|
var import_jsx_runtime267 = require("react/jsx-runtime");
|
|
@@ -11938,7 +11972,7 @@ var RemoveButton = ({ onClickRemove, onClickRemoveLabel, colorScheme }) => {
|
|
|
11938
11972
|
)
|
|
11939
11973
|
] });
|
|
11940
11974
|
};
|
|
11941
|
-
var Tag = (0,
|
|
11975
|
+
var Tag = (0, import_react64.forwardRef)(
|
|
11942
11976
|
({
|
|
11943
11977
|
onClickRemove,
|
|
11944
11978
|
colorScheme = "inherit",
|
|
@@ -12201,6 +12235,7 @@ WistiaLogo.displayName = "WistiaLogo";
|
|
|
12201
12235
|
useLocalStorage,
|
|
12202
12236
|
useLockBodyScroll,
|
|
12203
12237
|
useMq,
|
|
12238
|
+
useOnClickOutside,
|
|
12204
12239
|
useToast,
|
|
12205
12240
|
useWindowSize
|
|
12206
12241
|
});
|