@wistia/ui 0.12.1 → 0.13.0-beta.23444d6e.019a906
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 +787 -367
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.mts +257 -59
- package/dist/index.d.ts +257 -59
- package/dist/index.mjs +701 -284
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
package/dist/index.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
|
|
2
2
|
/*
|
|
3
|
-
* @license @wistia/ui v0.
|
|
3
|
+
* @license @wistia/ui v0.13.0-beta.23444d6e.019a906
|
|
4
4
|
*
|
|
5
5
|
* Copyright (c) 2024-2025, Wistia, Inc. and its affiliates.
|
|
6
6
|
*
|
|
@@ -61,6 +61,7 @@ __export(index_exports, {
|
|
|
61
61
|
ColorSchemeWrapper: () => ColorSchemeWrapper,
|
|
62
62
|
Combobox: () => Combobox2,
|
|
63
63
|
ComboboxOption: () => ComboboxOption,
|
|
64
|
+
ContextMenu: () => ContextMenu,
|
|
64
65
|
DataCard: () => DataCard,
|
|
65
66
|
DataCardTrend: () => DataCardTrend,
|
|
66
67
|
DataCards: () => DataCards,
|
|
@@ -100,6 +101,8 @@ __export(index_exports, {
|
|
|
100
101
|
Popover: () => Popover2,
|
|
101
102
|
ProgressBar: () => ProgressBar,
|
|
102
103
|
Radio: () => Radio,
|
|
104
|
+
RadioCard: () => RadioCard,
|
|
105
|
+
RadioCardImage: () => RadioCardImage,
|
|
103
106
|
RadioGroup: () => RadioGroup,
|
|
104
107
|
RadioMenuItem: () => RadioMenuItem,
|
|
105
108
|
ScreenReaderOnly: () => ScreenReaderOnly,
|
|
@@ -8934,7 +8937,7 @@ Center.displayName = "Center";
|
|
|
8934
8937
|
// src/components/Checkbox/Checkbox.tsx
|
|
8935
8938
|
var import_react38 = require("react");
|
|
8936
8939
|
var import_styled_components43 = __toESM(require("styled-components"));
|
|
8937
|
-
var
|
|
8940
|
+
var import_type_guards31 = require("@wistia/type-guards");
|
|
8938
8941
|
|
|
8939
8942
|
// src/private/components/FormControlLabel/FormControlLabel.tsx
|
|
8940
8943
|
var import_styled_components39 = __toESM(require("styled-components"));
|
|
@@ -9058,11 +9061,12 @@ FormControlLabel.displayName = "FormControlLabel";
|
|
|
9058
9061
|
|
|
9059
9062
|
// src/components/FormGroup/CheckboxGroup.tsx
|
|
9060
9063
|
var import_react37 = require("react");
|
|
9061
|
-
var
|
|
9064
|
+
var import_type_guards30 = require("@wistia/type-guards");
|
|
9062
9065
|
|
|
9063
9066
|
// src/components/FormGroup/FormGroup.tsx
|
|
9064
9067
|
var import_styled_components41 = __toESM(require("styled-components"));
|
|
9065
9068
|
var import_react35 = require("react");
|
|
9069
|
+
var import_type_guards28 = require("@wistia/type-guards");
|
|
9066
9070
|
|
|
9067
9071
|
// src/components/Stack/Stack.tsx
|
|
9068
9072
|
var import_react34 = require("react");
|
|
@@ -9100,12 +9104,31 @@ var Stack = makePolymorphic(StackComponent);
|
|
|
9100
9104
|
var import_jsx_runtime217 = require("react/jsx-runtime");
|
|
9101
9105
|
var StyledFieldset = import_styled_components41.default.fieldset`
|
|
9102
9106
|
border: 0;
|
|
9107
|
+
|
|
9108
|
+
/* * {
|
|
9109
|
+
outline: 1px solid red;
|
|
9110
|
+
} */
|
|
9103
9111
|
`;
|
|
9104
9112
|
var StyledLegend = import_styled_components41.default.legend`
|
|
9105
|
-
|
|
9113
|
+
padding-inline: 0;
|
|
9114
|
+
display: flex;
|
|
9115
|
+
flex-direction: column;
|
|
9116
|
+
gap: var(--wui-space-01);
|
|
9117
|
+
margin-bottom: var(--wui-space-02);
|
|
9118
|
+
|
|
9119
|
+
&:has([data-wui-form-group-description]) {
|
|
9120
|
+
margin-bottom: var(--wui-space-01);
|
|
9121
|
+
}
|
|
9106
9122
|
`;
|
|
9107
|
-
var FormGroup = ({
|
|
9123
|
+
var FormGroup = ({
|
|
9124
|
+
children,
|
|
9125
|
+
label,
|
|
9126
|
+
description,
|
|
9127
|
+
...props
|
|
9128
|
+
}) => {
|
|
9108
9129
|
const ref = (0, import_react35.useRef)(null);
|
|
9130
|
+
const hasLabel = (0, import_type_guards28.isNotNil)(label) && (0, import_type_guards28.isNonEmptyString)(label);
|
|
9131
|
+
const hasDescription = (0, import_type_guards28.isNotNil)(description) && (0, import_type_guards28.isNonEmptyString)(description);
|
|
9109
9132
|
return /* @__PURE__ */ (0, import_jsx_runtime217.jsxs)(
|
|
9110
9133
|
Stack,
|
|
9111
9134
|
{
|
|
@@ -9113,14 +9136,26 @@ var FormGroup = ({ children, label, ...props }) => {
|
|
|
9113
9136
|
ref,
|
|
9114
9137
|
renderAs: StyledFieldset,
|
|
9115
9138
|
children: [
|
|
9116
|
-
/* @__PURE__ */ (0, import_jsx_runtime217.
|
|
9139
|
+
hasLabel || hasDescription ? /* @__PURE__ */ (0, import_jsx_runtime217.jsxs)(
|
|
9117
9140
|
Heading,
|
|
9118
9141
|
{
|
|
9119
9142
|
renderAs: StyledLegend,
|
|
9120
9143
|
variant: "heading5",
|
|
9121
|
-
children:
|
|
9144
|
+
children: [
|
|
9145
|
+
hasLabel ? label : null,
|
|
9146
|
+
hasDescription ? /* @__PURE__ */ (0, import_jsx_runtime217.jsx)(
|
|
9147
|
+
Text,
|
|
9148
|
+
{
|
|
9149
|
+
"data-wui-form-group-description": true,
|
|
9150
|
+
prominence: "secondary",
|
|
9151
|
+
renderAs: "span",
|
|
9152
|
+
variant: "body4",
|
|
9153
|
+
children: description
|
|
9154
|
+
}
|
|
9155
|
+
) : null
|
|
9156
|
+
]
|
|
9122
9157
|
}
|
|
9123
|
-
),
|
|
9158
|
+
) : null,
|
|
9124
9159
|
children
|
|
9125
9160
|
]
|
|
9126
9161
|
}
|
|
@@ -9131,7 +9166,7 @@ FormGroup.displayName = "FormGroup";
|
|
|
9131
9166
|
// src/components/Form/Form.tsx
|
|
9132
9167
|
var import_react36 = require("react");
|
|
9133
9168
|
var import_styled_components42 = __toESM(require("styled-components"));
|
|
9134
|
-
var
|
|
9169
|
+
var import_type_guards29 = require("@wistia/type-guards");
|
|
9135
9170
|
|
|
9136
9171
|
// src/components/Form/serializeFormData.tsx
|
|
9137
9172
|
var ARRAY_SUFFIX = "[]";
|
|
@@ -9180,7 +9215,7 @@ var Form = (0, import_react36.forwardRef)(
|
|
|
9180
9215
|
const id = props.id ?? autoId;
|
|
9181
9216
|
const handleValidate = (nextFormData) => {
|
|
9182
9217
|
const nextData = serializeFormData(nextFormData);
|
|
9183
|
-
if ((0,
|
|
9218
|
+
if ((0, import_type_guards29.isUndefined)(validate)) {
|
|
9184
9219
|
return {};
|
|
9185
9220
|
}
|
|
9186
9221
|
return validate(nextData);
|
|
@@ -9190,7 +9225,7 @@ var Form = (0, import_react36.forwardRef)(
|
|
|
9190
9225
|
props.onBlur(event);
|
|
9191
9226
|
}
|
|
9192
9227
|
const formData = new FormData(event.currentTarget);
|
|
9193
|
-
if ((0,
|
|
9228
|
+
if ((0, import_type_guards29.isNotUndefined)(validate)) {
|
|
9194
9229
|
handleValidate(formData);
|
|
9195
9230
|
}
|
|
9196
9231
|
};
|
|
@@ -9263,7 +9298,7 @@ var CheckboxGroup = ({
|
|
|
9263
9298
|
...props
|
|
9264
9299
|
}) => {
|
|
9265
9300
|
const formState = (0, import_react37.useContext)(FormContext);
|
|
9266
|
-
const derivedValue = (0,
|
|
9301
|
+
const derivedValue = (0, import_type_guards30.isArray)(formState.values[name]) ? formState.values[name] : value;
|
|
9267
9302
|
const context = (0, import_react37.useMemo)(() => {
|
|
9268
9303
|
return {
|
|
9269
9304
|
name: `${name}[]`,
|
|
@@ -9391,21 +9426,21 @@ var Checkbox = (0, import_react38.forwardRef)(
|
|
|
9391
9426
|
...props
|
|
9392
9427
|
}, ref) => {
|
|
9393
9428
|
const generatedId = (0, import_react38.useId)();
|
|
9394
|
-
const computedId = (0,
|
|
9429
|
+
const computedId = (0, import_type_guards31.isNonEmptyString)(id) ? id : `wistia-ui-checkbox-${generatedId}`;
|
|
9395
9430
|
const checkboxGroupContext = useCheckboxGroup();
|
|
9396
9431
|
const contextName = checkboxGroupContext?.name;
|
|
9397
9432
|
const contextOnChange = checkboxGroupContext?.onChange;
|
|
9398
9433
|
const contextValue = checkboxGroupContext?.value;
|
|
9399
9434
|
const checkboxName = name ?? contextName;
|
|
9400
9435
|
const handleOnChange = onChange ?? contextOnChange;
|
|
9401
|
-
const defaultChecked = (0,
|
|
9436
|
+
const defaultChecked = (0, import_type_guards31.isNotUndefined)(value) && contextValue ? contextValue.includes(value) : void 0;
|
|
9402
9437
|
return /* @__PURE__ */ (0, import_jsx_runtime220.jsxs)(StyledCheckboxWrapper, { disabled, children: [
|
|
9403
9438
|
/* @__PURE__ */ (0, import_jsx_runtime220.jsx)(
|
|
9404
9439
|
StyledHiddenCheckboxInput,
|
|
9405
9440
|
{
|
|
9406
9441
|
...props,
|
|
9407
9442
|
ref,
|
|
9408
|
-
...(0,
|
|
9443
|
+
...(0, import_type_guards31.isNotUndefined)(defaultChecked) ? { defaultChecked } : { checked },
|
|
9409
9444
|
disabled,
|
|
9410
9445
|
id: computedId,
|
|
9411
9446
|
name: checkboxName,
|
|
@@ -9484,7 +9519,7 @@ ClickRegion.displayName = "ClickRegion";
|
|
|
9484
9519
|
|
|
9485
9520
|
// src/components/Collapsible/Collapsible.tsx
|
|
9486
9521
|
var import_react_collapsible = require("@radix-ui/react-collapsible");
|
|
9487
|
-
var
|
|
9522
|
+
var import_type_guards32 = require("@wistia/type-guards");
|
|
9488
9523
|
var import_styled_components44 = __toESM(require("styled-components"));
|
|
9489
9524
|
var import_jsx_runtime221 = require("react/jsx-runtime");
|
|
9490
9525
|
var StyledRoot = (0, import_styled_components44.default)(import_react_collapsible.Root)`
|
|
@@ -9501,7 +9536,7 @@ var Collapsible = ({
|
|
|
9501
9536
|
onOpenChange
|
|
9502
9537
|
}) => {
|
|
9503
9538
|
const controlProps = {
|
|
9504
|
-
...(0,
|
|
9539
|
+
...(0, import_type_guards32.isNotNil)(onOpenChange) && (0, import_type_guards32.isNotNil)(isOpen) ? { open: isOpen, onOpenChange } : {}
|
|
9505
9540
|
};
|
|
9506
9541
|
return /* @__PURE__ */ (0, import_jsx_runtime221.jsx)(StyledRoot, { ...controlProps, children });
|
|
9507
9542
|
};
|
|
@@ -9563,13 +9598,13 @@ CollapsibleTriggerIcon.displayName = "CollapsibleTriggerIcon";
|
|
|
9563
9598
|
// src/components/Collapsible/CollapsibleContent.tsx
|
|
9564
9599
|
var import_styled_components46 = __toESM(require("styled-components"));
|
|
9565
9600
|
var import_react_collapsible3 = require("@radix-ui/react-collapsible");
|
|
9566
|
-
var
|
|
9601
|
+
var import_type_guards33 = require("@wistia/type-guards");
|
|
9567
9602
|
var import_jsx_runtime224 = require("react/jsx-runtime");
|
|
9568
9603
|
var ClampedContent = import_styled_components46.default.div`
|
|
9569
9604
|
--wui-collapsible-content-clamp-lines: ${({ $clamp }) => $clamp};
|
|
9570
9605
|
`;
|
|
9571
9606
|
var CollapsibleContent = ({ clamp, children }) => {
|
|
9572
|
-
if ((0,
|
|
9607
|
+
if ((0, import_type_guards33.isNotUndefined)(clamp)) {
|
|
9573
9608
|
return /* @__PURE__ */ (0, import_jsx_runtime224.jsx)(
|
|
9574
9609
|
ClampedContent,
|
|
9575
9610
|
{
|
|
@@ -9594,7 +9629,7 @@ var import_styled_components49 = __toESM(require("styled-components"));
|
|
|
9594
9629
|
// src/components/Tag/Tag.tsx
|
|
9595
9630
|
var import_react41 = require("react");
|
|
9596
9631
|
var import_styled_components47 = __toESM(require("styled-components"));
|
|
9597
|
-
var
|
|
9632
|
+
var import_type_guards34 = require("@wistia/type-guards");
|
|
9598
9633
|
var import_jsx_runtime225 = require("react/jsx-runtime");
|
|
9599
9634
|
var TagLabel = import_styled_components47.default.a`
|
|
9600
9635
|
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
@@ -9679,10 +9714,10 @@ var StyledTag = import_styled_components47.default.div`
|
|
|
9679
9714
|
}
|
|
9680
9715
|
`;
|
|
9681
9716
|
var RemoveButton = ({ onClickRemove, onClickRemoveLabel, colorScheme }) => {
|
|
9682
|
-
if ((0,
|
|
9717
|
+
if ((0, import_type_guards34.isNil)(onClickRemove)) {
|
|
9683
9718
|
return null;
|
|
9684
9719
|
}
|
|
9685
|
-
if ((0,
|
|
9720
|
+
if ((0, import_type_guards34.isNil)(onClickRemoveLabel)) {
|
|
9686
9721
|
throw new Error(
|
|
9687
9722
|
"for accessibility, onClickRemoveLabel must be provided if onClickRemove is provided"
|
|
9688
9723
|
);
|
|
@@ -9711,8 +9746,8 @@ var RemoveButton = ({ onClickRemove, onClickRemoveLabel, colorScheme }) => {
|
|
|
9711
9746
|
};
|
|
9712
9747
|
var Tag = (0, import_react41.forwardRef)(
|
|
9713
9748
|
({ onClickRemove, colorScheme = "inherit", href, icon, label, onClickRemoveLabel, ...props }, ref) => {
|
|
9714
|
-
const hasIcon = (0,
|
|
9715
|
-
const labelProps = (0,
|
|
9749
|
+
const hasIcon = (0, import_type_guards34.isNotNil)(icon);
|
|
9750
|
+
const labelProps = (0, import_type_guards34.isNotNil)(href) && (0, import_type_guards34.isNonEmptyString)(href) ? { href, as: "a" } : { as: "span" };
|
|
9716
9751
|
return /* @__PURE__ */ (0, import_jsx_runtime225.jsxs)(
|
|
9717
9752
|
StyledTag,
|
|
9718
9753
|
{
|
|
@@ -10022,7 +10057,7 @@ var Combobox2 = ({
|
|
|
10022
10057
|
// src/components/DataCards/DataCard.tsx
|
|
10023
10058
|
var import_react43 = require("react");
|
|
10024
10059
|
var import_styled_components50 = __toESM(require("styled-components"));
|
|
10025
|
-
var
|
|
10060
|
+
var import_type_guards35 = require("@wistia/type-guards");
|
|
10026
10061
|
var import_jsx_runtime227 = require("react/jsx-runtime");
|
|
10027
10062
|
var StyledDataCard = import_styled_components50.default.div`
|
|
10028
10063
|
display: grid;
|
|
@@ -10153,8 +10188,8 @@ var DataCardInner = ({
|
|
|
10153
10188
|
children: isLoading ? /* @__PURE__ */ (0, import_jsx_runtime227.jsx)(StyledLoadingValue, {}) : value
|
|
10154
10189
|
}
|
|
10155
10190
|
),
|
|
10156
|
-
(0,
|
|
10157
|
-
(0,
|
|
10191
|
+
(0, import_type_guards35.isNotNull)(upperRightSlot) && !isLoading && /* @__PURE__ */ (0, import_jsx_runtime227.jsx)(StyledSlot, { children: upperRightSlot }),
|
|
10192
|
+
(0, import_type_guards35.isNotNull)(trend) && !isLoading && /* @__PURE__ */ (0, import_jsx_runtime227.jsx)(StyledDataCardTrendContainer, { children: trend })
|
|
10158
10193
|
]
|
|
10159
10194
|
}
|
|
10160
10195
|
);
|
|
@@ -10167,7 +10202,7 @@ var DataCardArrowIcon = /* @__PURE__ */ (0, import_jsx_runtime227.jsx)(
|
|
|
10167
10202
|
);
|
|
10168
10203
|
var DataCard = (props) => {
|
|
10169
10204
|
const ref = (0, import_react43.useRef)(null);
|
|
10170
|
-
if ((0,
|
|
10205
|
+
if ((0, import_type_guards35.isNotNil)(props.href) || (0, import_type_guards35.isNotNil)(props.onClick)) {
|
|
10171
10206
|
return /* @__PURE__ */ (0, import_jsx_runtime227.jsx)(ClickRegion, { targetRef: ref, children: /* @__PURE__ */ (0, import_jsx_runtime227.jsx)(
|
|
10172
10207
|
DataCardInner,
|
|
10173
10208
|
{
|
|
@@ -10177,7 +10212,7 @@ var DataCard = (props) => {
|
|
|
10177
10212
|
Button,
|
|
10178
10213
|
{
|
|
10179
10214
|
ref,
|
|
10180
|
-
...(0,
|
|
10215
|
+
...(0, import_type_guards35.isNotNil)(props.beforeAction) ? { beforeAction: props.beforeAction } : {},
|
|
10181
10216
|
disabled: props.disabled ?? false,
|
|
10182
10217
|
href: props.href,
|
|
10183
10218
|
onClick: props.onClick,
|
|
@@ -10460,7 +10495,7 @@ Tooltip.displayName = "Tooltip";
|
|
|
10460
10495
|
// src/components/Input/Input.tsx
|
|
10461
10496
|
var import_react44 = require("react");
|
|
10462
10497
|
var import_styled_components55 = __toESM(require("styled-components"));
|
|
10463
|
-
var
|
|
10498
|
+
var import_type_guards36 = require("@wistia/type-guards");
|
|
10464
10499
|
var import_jsx_runtime232 = require("react/jsx-runtime");
|
|
10465
10500
|
var inputStyles = import_styled_components55.css`
|
|
10466
10501
|
${inputCss}
|
|
@@ -10577,27 +10612,27 @@ var Input = (0, import_react44.forwardRef)(
|
|
|
10577
10612
|
const internalRef = (0, import_react44.useRef)();
|
|
10578
10613
|
const ref = (
|
|
10579
10614
|
// eslint-disable-next-line react-compiler/react-compiler
|
|
10580
|
-
(0,
|
|
10615
|
+
(0, import_type_guards36.isNotNil)(externalRef) && (0, import_type_guards36.isRecord)(externalRef) && "current" in externalRef ? externalRef : internalRef
|
|
10581
10616
|
);
|
|
10582
10617
|
let leftIconToDisplay = leftIcon;
|
|
10583
|
-
if ((0,
|
|
10618
|
+
if ((0, import_type_guards36.isNil)(leftIcon) && type === "search") {
|
|
10584
10619
|
leftIconToDisplay = /* @__PURE__ */ (0, import_jsx_runtime232.jsx)(Icon, { type: "search" });
|
|
10585
10620
|
}
|
|
10586
|
-
if ((0,
|
|
10621
|
+
if ((0, import_type_guards36.isNotNil)(leftIconToDisplay)) {
|
|
10587
10622
|
leftIconToDisplay = (0, import_react44.cloneElement)(leftIconToDisplay, {
|
|
10588
10623
|
size: "md",
|
|
10589
10624
|
className: "wui-input-left-icon"
|
|
10590
10625
|
});
|
|
10591
10626
|
}
|
|
10592
10627
|
let rightIconToDisplay = rightIcon;
|
|
10593
|
-
if ((0,
|
|
10628
|
+
if ((0, import_type_guards36.isNotNil)(rightIconToDisplay)) {
|
|
10594
10629
|
rightIconToDisplay = (0, import_react44.cloneElement)(rightIconToDisplay, {
|
|
10595
10630
|
size: "md",
|
|
10596
10631
|
className: "wui-input-right-icon"
|
|
10597
10632
|
});
|
|
10598
10633
|
}
|
|
10599
10634
|
const handleFocus2 = (event) => {
|
|
10600
|
-
if ((0,
|
|
10635
|
+
if ((0, import_type_guards36.isNotNil)(props.onFocus)) {
|
|
10601
10636
|
props.onFocus(event);
|
|
10602
10637
|
}
|
|
10603
10638
|
if (autoSelect && isValidRef(ref) && "current" in ref) {
|
|
@@ -10645,11 +10680,13 @@ var StyledInput = (0, import_styled_components56.default)(Input)`
|
|
|
10645
10680
|
}
|
|
10646
10681
|
|
|
10647
10682
|
&& {
|
|
10648
|
-
|
|
10649
|
-
|
|
10650
|
-
--wui-input-
|
|
10683
|
+
${({ $variant }) => variantStyleMap[$variant]}
|
|
10684
|
+
/* The input font styles (edit mode) needs the same font styles as Heading */
|
|
10685
|
+
--wui-input-font-size: var(--font-size);
|
|
10686
|
+
--wui-input-font-weight: var(--font-weight);
|
|
10687
|
+
--wui-input-line-height: var(--line-height);
|
|
10651
10688
|
|
|
10652
|
-
font-family: var(--
|
|
10689
|
+
font-family: var(--font-family);
|
|
10653
10690
|
width: 100%;
|
|
10654
10691
|
padding: var(--wui-space-02);
|
|
10655
10692
|
border: none;
|
|
@@ -10681,6 +10718,7 @@ var EditableHeading = ({
|
|
|
10681
10718
|
onEditingChange,
|
|
10682
10719
|
tooltipText = "Click to edit title",
|
|
10683
10720
|
ariaLabel = "Edit title",
|
|
10721
|
+
variant = "heading1",
|
|
10684
10722
|
__forceEditing = false,
|
|
10685
10723
|
editingDisabled = false
|
|
10686
10724
|
}) => {
|
|
@@ -10727,7 +10765,7 @@ var EditableHeading = ({
|
|
|
10727
10765
|
ref: headingRef,
|
|
10728
10766
|
$editingDisabled: editingDisabled,
|
|
10729
10767
|
onClick: () => handleSetEditing(true),
|
|
10730
|
-
variant
|
|
10768
|
+
variant,
|
|
10731
10769
|
children: value
|
|
10732
10770
|
}
|
|
10733
10771
|
);
|
|
@@ -10739,6 +10777,7 @@ var EditableHeading = ({
|
|
|
10739
10777
|
StyledInput,
|
|
10740
10778
|
{
|
|
10741
10779
|
$height: headingHeight,
|
|
10780
|
+
$variant: variant,
|
|
10742
10781
|
autoFocus: true,
|
|
10743
10782
|
fullWidth: true,
|
|
10744
10783
|
onBlur: handleFinishEditing,
|
|
@@ -10804,7 +10843,7 @@ var useFormState = (action, initialData = {}) => {
|
|
|
10804
10843
|
|
|
10805
10844
|
// src/components/Form/FormErrorSummary.tsx
|
|
10806
10845
|
var import_react47 = require("react");
|
|
10807
|
-
var
|
|
10846
|
+
var import_type_guards37 = require("@wistia/type-guards");
|
|
10808
10847
|
var import_jsx_runtime234 = require("react/jsx-runtime");
|
|
10809
10848
|
var ErrorItem = ({ name, error, formId }) => {
|
|
10810
10849
|
return /* @__PURE__ */ (0, import_jsx_runtime234.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime234.jsx)(Link, { href: `#${formId}-${name}`, children: error }) }, name);
|
|
@@ -10818,8 +10857,8 @@ var FormErrorSummary = ({ description }) => {
|
|
|
10818
10857
|
}
|
|
10819
10858
|
return /* @__PURE__ */ (0, import_jsx_runtime234.jsxs)("div", { ref, children: [
|
|
10820
10859
|
/* @__PURE__ */ (0, import_jsx_runtime234.jsx)("p", { children: description }),
|
|
10821
|
-
/* @__PURE__ */ (0, import_jsx_runtime234.jsx)("ul", { children: Object.entries(errors).filter(([, error]) => (0,
|
|
10822
|
-
([name, error]) => (0,
|
|
10860
|
+
/* @__PURE__ */ (0, import_jsx_runtime234.jsx)("ul", { children: Object.entries(errors).filter(([, error]) => (0, import_type_guards37.isNotUndefined)(error)).map(
|
|
10861
|
+
([name, error]) => (0, import_type_guards37.isArray)(error) ? error.map((err) => /* @__PURE__ */ (0, import_jsx_runtime234.jsx)(
|
|
10823
10862
|
ErrorItem,
|
|
10824
10863
|
{
|
|
10825
10864
|
error: err,
|
|
@@ -10843,7 +10882,7 @@ var FormErrorSummary = ({ description }) => {
|
|
|
10843
10882
|
// src/components/FormField/FormField.tsx
|
|
10844
10883
|
var import_react48 = require("react");
|
|
10845
10884
|
var import_styled_components58 = __toESM(require("styled-components"));
|
|
10846
|
-
var
|
|
10885
|
+
var import_type_guards38 = require("@wistia/type-guards");
|
|
10847
10886
|
|
|
10848
10887
|
// src/components/Label/Label.tsx
|
|
10849
10888
|
var import_styled_components57 = __toESM(require("styled-components"));
|
|
@@ -10946,7 +10985,7 @@ var StyledErrorList = import_styled_components58.default.ul`
|
|
|
10946
10985
|
gap: var(--wui-space-01);
|
|
10947
10986
|
`;
|
|
10948
10987
|
var ErrorMessages = ({ errors, id }) => {
|
|
10949
|
-
const isErrorArray = (0,
|
|
10988
|
+
const isErrorArray = (0, import_type_guards38.isArray)(errors);
|
|
10950
10989
|
const isMultipleErrors = isErrorArray && errors.length > 1;
|
|
10951
10990
|
if (!isErrorArray) {
|
|
10952
10991
|
return /* @__PURE__ */ (0, import_jsx_runtime236.jsx)(
|
|
@@ -11014,19 +11053,19 @@ var FormField = ({
|
|
|
11014
11053
|
"aria-describedby": ariaDescribedby,
|
|
11015
11054
|
...props
|
|
11016
11055
|
};
|
|
11017
|
-
if ((0,
|
|
11056
|
+
if ((0, import_type_guards38.isUndefined)(value) && (0, import_type_guards38.isNotUndefined)(defaultValue)) {
|
|
11018
11057
|
childProps = {
|
|
11019
11058
|
...childProps,
|
|
11020
11059
|
defaultValue
|
|
11021
11060
|
};
|
|
11022
11061
|
}
|
|
11023
|
-
if ((0,
|
|
11024
|
-
const computedName = (0,
|
|
11062
|
+
if ((0, import_type_guards38.isNotNil)(checkboxGroup)) {
|
|
11063
|
+
const computedName = (0, import_type_guards38.isNotNil)(checkboxGroup.name) ? `${checkboxGroup.name}[${name}]` : name;
|
|
11025
11064
|
const handleChange = (event) => {
|
|
11026
|
-
if ((0,
|
|
11065
|
+
if ((0, import_type_guards38.isNotUndefined)(props.onChange)) {
|
|
11027
11066
|
props.onChange(event);
|
|
11028
11067
|
}
|
|
11029
|
-
if ((0,
|
|
11068
|
+
if ((0, import_type_guards38.isNotUndefined)(checkboxGroup.onChange)) {
|
|
11030
11069
|
checkboxGroup.onChange(event);
|
|
11031
11070
|
}
|
|
11032
11071
|
};
|
|
@@ -11034,7 +11073,7 @@ var FormField = ({
|
|
|
11034
11073
|
...childProps,
|
|
11035
11074
|
name: computedName,
|
|
11036
11075
|
onChange: handleChange,
|
|
11037
|
-
"aria-invalid": (0,
|
|
11076
|
+
"aria-invalid": (0, import_type_guards38.isNotNil)(error)
|
|
11038
11077
|
};
|
|
11039
11078
|
}
|
|
11040
11079
|
import_react48.Children.only(children);
|
|
@@ -11045,9 +11084,9 @@ var FormField = ({
|
|
|
11045
11084
|
"data-label-position": labelPosition ?? formState.labelPosition,
|
|
11046
11085
|
children: [
|
|
11047
11086
|
!isIntegratedLabel && /* @__PURE__ */ (0, import_jsx_runtime236.jsx)(Label, { htmlFor: computedId, children: label }),
|
|
11048
|
-
(0,
|
|
11087
|
+
(0, import_type_guards38.isNotNil)(description) ? /* @__PURE__ */ (0, import_jsx_runtime236.jsx)(FormControlLabelDescription, { id: descriptionId, children: description }) : null,
|
|
11049
11088
|
(0, import_react48.cloneElement)(children, childProps),
|
|
11050
|
-
(0,
|
|
11089
|
+
(0, import_type_guards38.isNotNil)(computedError) ? /* @__PURE__ */ (0, import_jsx_runtime236.jsxs)(import_jsx_runtime236.Fragment, { children: [
|
|
11051
11090
|
/* @__PURE__ */ (0, import_jsx_runtime236.jsx)("div", {}),
|
|
11052
11091
|
/* @__PURE__ */ (0, import_jsx_runtime236.jsx)(
|
|
11053
11092
|
ErrorMessages,
|
|
@@ -11093,7 +11132,7 @@ RadioGroup.displayName = "RadioGroup";
|
|
|
11093
11132
|
// src/components/Grid/Grid.tsx
|
|
11094
11133
|
var import_react50 = require("react");
|
|
11095
11134
|
var import_styled_components59 = __toESM(require("styled-components"));
|
|
11096
|
-
var
|
|
11135
|
+
var import_type_guards39 = require("@wistia/type-guards");
|
|
11097
11136
|
var import_jsx_runtime238 = require("react/jsx-runtime");
|
|
11098
11137
|
var DEFAULT_ELEMENT5 = "div";
|
|
11099
11138
|
var StyledGrid = import_styled_components59.default.div`
|
|
@@ -11138,9 +11177,9 @@ var StyledGrid = import_styled_components59.default.div`
|
|
|
11138
11177
|
}}
|
|
11139
11178
|
`;
|
|
11140
11179
|
var GridComponent = (0, import_react50.forwardRef)(
|
|
11141
|
-
({ children, columns = "auto", minChildWidth = "auto", gap = "space-
|
|
11180
|
+
({ children, columns = "auto", minChildWidth = "auto", gap = "space-02", renderAs, ...props }, ref) => {
|
|
11142
11181
|
const responsiveGap = useResponsiveProp(gap);
|
|
11143
|
-
const { column, row } = (0,
|
|
11182
|
+
const { column, row } = (0, import_type_guards39.isRecord)(responsiveGap) ? responsiveGap : { column: responsiveGap, row: responsiveGap };
|
|
11144
11183
|
const responsiveColumns = useResponsiveProp(columns);
|
|
11145
11184
|
const responsiveMinChildWidth = useResponsiveProp(minChildWidth);
|
|
11146
11185
|
return /* @__PURE__ */ (0, import_jsx_runtime238.jsx)(
|
|
@@ -11164,7 +11203,7 @@ var Grid = makePolymorphic(GridComponent);
|
|
|
11164
11203
|
// src/components/InputClickToCopy/InputClickToCopy.tsx
|
|
11165
11204
|
var import_styled_components60 = __toESM(require("styled-components"));
|
|
11166
11205
|
var import_react51 = require("react");
|
|
11167
|
-
var
|
|
11206
|
+
var import_type_guards40 = require("@wistia/type-guards");
|
|
11168
11207
|
var import_jsx_runtime239 = require("react/jsx-runtime");
|
|
11169
11208
|
var StyledInput2 = (0, import_styled_components60.default)(Input)`
|
|
11170
11209
|
&:not([aria-disabled='true']) {
|
|
@@ -11192,12 +11231,12 @@ var InputClickToCopy = (0, import_react51.forwardRef)(
|
|
|
11192
11231
|
}, [isCopied]);
|
|
11193
11232
|
const handleClick = (event) => {
|
|
11194
11233
|
event.preventDefault();
|
|
11195
|
-
if ((0,
|
|
11234
|
+
if ((0, import_type_guards40.isFunction)(props.onClick)) {
|
|
11196
11235
|
props.onClick(event);
|
|
11197
11236
|
}
|
|
11198
11237
|
void copyToClipboard(value).then(() => {
|
|
11199
11238
|
setIsCopied(true);
|
|
11200
|
-
if ((0,
|
|
11239
|
+
if ((0, import_type_guards40.isFunction)(onCopy)) {
|
|
11201
11240
|
onCopy(value);
|
|
11202
11241
|
}
|
|
11203
11242
|
return value;
|
|
@@ -11227,7 +11266,7 @@ InputClickToCopy.displayName = "InputClickToCopy";
|
|
|
11227
11266
|
|
|
11228
11267
|
// src/components/KeyboardShortcut/KeyboardShortcut.tsx
|
|
11229
11268
|
var import_styled_components61 = __toESM(require("styled-components"));
|
|
11230
|
-
var
|
|
11269
|
+
var import_type_guards41 = require("@wistia/type-guards");
|
|
11231
11270
|
var import_jsx_runtime240 = require("react/jsx-runtime");
|
|
11232
11271
|
var StyledKeyboardShortcut = import_styled_components61.default.div`
|
|
11233
11272
|
align-items: center;
|
|
@@ -11321,7 +11360,7 @@ var KeyboardShortcut = ({
|
|
|
11321
11360
|
$fullWidth: fullWidth,
|
|
11322
11361
|
...otherProps,
|
|
11323
11362
|
children: [
|
|
11324
|
-
(0,
|
|
11363
|
+
(0, import_type_guards41.isNotNil)(label) && /* @__PURE__ */ (0, import_jsx_runtime240.jsx)(Label2, { children: label }),
|
|
11325
11364
|
/* @__PURE__ */ (0, import_jsx_runtime240.jsx)(KeysContainer, { children: (Array.isArray(keyboardKeys) ? keyboardKeys : [keyboardKeys]).map((keyboardKey, index) => /* @__PURE__ */ (0, import_jsx_runtime240.jsx)(
|
|
11326
11365
|
StyledKey,
|
|
11327
11366
|
{
|
|
@@ -11335,18 +11374,18 @@ var KeyboardShortcut = ({
|
|
|
11335
11374
|
KeyboardShortcut.displayName = "KeyboardShortcut";
|
|
11336
11375
|
|
|
11337
11376
|
// src/components/List/List.tsx
|
|
11338
|
-
var
|
|
11377
|
+
var import_type_guards43 = require("@wistia/type-guards");
|
|
11339
11378
|
var import_styled_components63 = __toESM(require("styled-components"));
|
|
11340
11379
|
|
|
11341
11380
|
// src/components/List/ListItem.tsx
|
|
11342
11381
|
var import_styled_components62 = __toESM(require("styled-components"));
|
|
11343
|
-
var
|
|
11382
|
+
var import_type_guards42 = require("@wistia/type-guards");
|
|
11344
11383
|
var import_jsx_runtime241 = require("react/jsx-runtime");
|
|
11345
11384
|
var ListItemComponent = import_styled_components62.default.li`
|
|
11346
11385
|
margin-bottom: var(--wui-space-02);
|
|
11347
11386
|
`;
|
|
11348
11387
|
var ListItem = ({ children }) => {
|
|
11349
|
-
if ((0,
|
|
11388
|
+
if ((0, import_type_guards42.isNil)(children)) {
|
|
11350
11389
|
return null;
|
|
11351
11390
|
}
|
|
11352
11391
|
return /* @__PURE__ */ (0, import_jsx_runtime241.jsx)(ListItemComponent, { children });
|
|
@@ -11476,13 +11515,13 @@ var List = ({
|
|
|
11476
11515
|
...otherProps
|
|
11477
11516
|
}) => {
|
|
11478
11517
|
const listVariant = variant ?? "bullets";
|
|
11479
|
-
if ((0,
|
|
11518
|
+
if ((0, import_type_guards43.isNotNil)(children)) {
|
|
11480
11519
|
if (Array.isArray(children) && !children.length) {
|
|
11481
11520
|
return null;
|
|
11482
11521
|
}
|
|
11483
11522
|
return renderListComponent(children, listVariant, otherProps);
|
|
11484
11523
|
}
|
|
11485
|
-
if ((0,
|
|
11524
|
+
if ((0, import_type_guards43.isNotNil)(items)) {
|
|
11486
11525
|
if (!items.length) {
|
|
11487
11526
|
return null;
|
|
11488
11527
|
}
|
|
@@ -11496,7 +11535,7 @@ List.displayName = "List";
|
|
|
11496
11535
|
var import_react53 = require("react");
|
|
11497
11536
|
var import_styled_components64 = __toESM(require("styled-components"));
|
|
11498
11537
|
var import_react_dropdown_menu = require("@radix-ui/react-dropdown-menu");
|
|
11499
|
-
var
|
|
11538
|
+
var import_type_guards44 = require("@wistia/type-guards");
|
|
11500
11539
|
|
|
11501
11540
|
// src/components/Menu/MenuContext.tsx
|
|
11502
11541
|
var import_react52 = require("react");
|
|
@@ -11609,7 +11648,7 @@ var Menu = (0, import_react53.forwardRef)(
|
|
|
11609
11648
|
}, ref) => {
|
|
11610
11649
|
const contextValue = (0, import_react53.useMemo)(() => ({ compact }), [compact]);
|
|
11611
11650
|
let controlProps = {
|
|
11612
|
-
...(0,
|
|
11651
|
+
...(0, import_type_guards44.isNotNil)(onOpenChange) && (0, import_type_guards44.isNotNil)(isOpen) ? { open: isOpen, onOpenChange } : {}
|
|
11613
11652
|
};
|
|
11614
11653
|
if (disabled) {
|
|
11615
11654
|
controlProps = {
|
|
@@ -11623,7 +11662,7 @@ var Menu = (0, import_react53.forwardRef)(
|
|
|
11623
11662
|
modal: false,
|
|
11624
11663
|
...controlProps,
|
|
11625
11664
|
children: [
|
|
11626
|
-
/* @__PURE__ */ (0, import_jsx_runtime243.jsx)(import_react_dropdown_menu.DropdownMenuTrigger, { asChild: true, children: (0,
|
|
11665
|
+
/* @__PURE__ */ (0, import_jsx_runtime243.jsx)(import_react_dropdown_menu.DropdownMenuTrigger, { asChild: true, children: (0, import_type_guards44.isNotUndefined)(trigger) ? trigger : /* @__PURE__ */ (0, import_jsx_runtime243.jsx)(
|
|
11627
11666
|
Button,
|
|
11628
11667
|
{
|
|
11629
11668
|
ref,
|
|
@@ -11642,10 +11681,11 @@ var Menu = (0, import_react53.forwardRef)(
|
|
|
11642
11681
|
$compact: compact,
|
|
11643
11682
|
align,
|
|
11644
11683
|
collisionPadding: 8,
|
|
11645
|
-
sideOffset: 6,
|
|
11646
11684
|
onFocusOutside: (event) => {
|
|
11647
11685
|
event.preventDefault();
|
|
11648
11686
|
},
|
|
11687
|
+
side: "bottom",
|
|
11688
|
+
sideOffset: 6,
|
|
11649
11689
|
children
|
|
11650
11690
|
}
|
|
11651
11691
|
) })
|
|
@@ -11688,12 +11728,12 @@ MenuLabel.displayName = "MenuLabel";
|
|
|
11688
11728
|
var import_react55 = require("react");
|
|
11689
11729
|
var import_styled_components68 = __toESM(require("styled-components"));
|
|
11690
11730
|
var import_react_dropdown_menu3 = require("@radix-ui/react-dropdown-menu");
|
|
11691
|
-
var
|
|
11731
|
+
var import_type_guards46 = require("@wistia/type-guards");
|
|
11692
11732
|
|
|
11693
11733
|
// src/components/Menu/MenuItemButton.tsx
|
|
11694
11734
|
var import_react54 = require("react");
|
|
11695
11735
|
var import_styled_components66 = __toESM(require("styled-components"));
|
|
11696
|
-
var
|
|
11736
|
+
var import_type_guards45 = require("@wistia/type-guards");
|
|
11697
11737
|
var import_jsx_runtime245 = require("react/jsx-runtime");
|
|
11698
11738
|
var StyledButton3 = (0, import_styled_components66.default)(Button)`
|
|
11699
11739
|
${({ colorScheme }) => getColorScheme(colorScheme)};
|
|
@@ -11771,7 +11811,7 @@ var StyledBadgeContainer = import_styled_components66.default.div`
|
|
|
11771
11811
|
var MenuItemButton = (0, import_react54.forwardRef)(({ children, appearance, command, icon, ...props }, ref) => {
|
|
11772
11812
|
let { colorScheme, badge } = props;
|
|
11773
11813
|
if (appearance === "dangerous") {
|
|
11774
|
-
if ((0,
|
|
11814
|
+
if ((0, import_type_guards45.isNotUndefined)(colorScheme)) {
|
|
11775
11815
|
console.warn("colorScheme prop is ignored when appearance is dangerous");
|
|
11776
11816
|
}
|
|
11777
11817
|
colorScheme = "error";
|
|
@@ -11801,7 +11841,7 @@ var MenuItemButton = (0, import_react54.forwardRef)(({ children, appearance, com
|
|
|
11801
11841
|
children: [
|
|
11802
11842
|
props.leftIcon ? /* @__PURE__ */ (0, import_jsx_runtime245.jsx)(StyledLeftIconContainer, { children: props.leftIcon }) : null,
|
|
11803
11843
|
/* @__PURE__ */ (0, import_jsx_runtime245.jsx)(StyledLabelAndDescriptionContainer, { children }),
|
|
11804
|
-
(0,
|
|
11844
|
+
(0, import_type_guards45.isNotNil)(badge) || (0, import_type_guards45.isNotNil)(command) ? /* @__PURE__ */ (0, import_jsx_runtime245.jsx)(StyledBadgeContainer, { children: badge ?? command }) : null,
|
|
11805
11845
|
props.rightIcon ? /* @__PURE__ */ (0, import_jsx_runtime245.jsx)(StyledRightIconContainer, { children: props.rightIcon }) : null
|
|
11806
11846
|
]
|
|
11807
11847
|
}
|
|
@@ -11873,7 +11913,7 @@ var SubMenu = ({
|
|
|
11873
11913
|
return isSmAndUp ? /* @__PURE__ */ (0, import_jsx_runtime247.jsxs)(import_react_dropdown_menu3.DropdownMenuSub, { onOpenChange, children: [
|
|
11874
11914
|
/* @__PURE__ */ (0, import_jsx_runtime247.jsxs)(SubMenuTrigger, { ...props, children: [
|
|
11875
11915
|
/* @__PURE__ */ (0, import_jsx_runtime247.jsx)(MenuItemLabel, { children: label }),
|
|
11876
|
-
(0,
|
|
11916
|
+
(0, import_type_guards46.isNotNil)(description) ? /* @__PURE__ */ (0, import_jsx_runtime247.jsx)(MenuItemDescription, { children: description }) : null
|
|
11877
11917
|
] }),
|
|
11878
11918
|
/* @__PURE__ */ (0, import_jsx_runtime247.jsx)(import_react_dropdown_menu3.DropdownMenuPortal, { children: /* @__PURE__ */ (0, import_jsx_runtime247.jsx)(SubMenuContent, { $compact: compact, children }) })
|
|
11879
11919
|
] }) : /* @__PURE__ */ (0, import_jsx_runtime247.jsxs)(import_react_dropdown_menu3.DropdownMenuGroup, { children: [
|
|
@@ -11965,7 +12005,7 @@ RadioMenuItem.displayName = "RadioMenuItem";
|
|
|
11965
12005
|
|
|
11966
12006
|
// src/components/Menu/CheckboxMenuItem.tsx
|
|
11967
12007
|
var import_react_dropdown_menu7 = require("@radix-ui/react-dropdown-menu");
|
|
11968
|
-
var
|
|
12008
|
+
var import_type_guards47 = require("@wistia/type-guards");
|
|
11969
12009
|
var import_jsx_runtime251 = require("react/jsx-runtime");
|
|
11970
12010
|
var CheckboxIndicator = ({ checked, ...props }) => {
|
|
11971
12011
|
return checked ? /* @__PURE__ */ (0, import_jsx_runtime251.jsxs)(
|
|
@@ -12039,8 +12079,8 @@ var CheckboxMenuItem = ({
|
|
|
12039
12079
|
MenuItemButton,
|
|
12040
12080
|
{
|
|
12041
12081
|
...props,
|
|
12042
|
-
leftIcon: (0,
|
|
12043
|
-
rightIcon: (0,
|
|
12082
|
+
leftIcon: (0, import_type_guards47.isNotNil)(props.icon) ? props.icon : /* @__PURE__ */ (0, import_jsx_runtime251.jsx)(CheckboxIndicator, { checked }),
|
|
12083
|
+
rightIcon: (0, import_type_guards47.isNotNil)(props.icon) ? /* @__PURE__ */ (0, import_jsx_runtime251.jsx)(import_react_dropdown_menu7.DropdownMenuItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime251.jsx)(Icon, { type: "checkmark" }) }) : void 0
|
|
12044
12084
|
}
|
|
12045
12085
|
)
|
|
12046
12086
|
}
|
|
@@ -12154,7 +12194,7 @@ FilterMenu.displayName = "FilterMenu";
|
|
|
12154
12194
|
var import_react60 = require("react");
|
|
12155
12195
|
var import_styled_components73 = __toESM(require("styled-components"));
|
|
12156
12196
|
var import_react_dialog5 = require("@radix-ui/react-dialog");
|
|
12157
|
-
var
|
|
12197
|
+
var import_type_guards49 = require("@wistia/type-guards");
|
|
12158
12198
|
|
|
12159
12199
|
// src/components/Modal/ModalHeader.tsx
|
|
12160
12200
|
var import_styled_components70 = __toESM(require("styled-components"));
|
|
@@ -12217,7 +12257,7 @@ var import_react_dialog3 = require("@radix-ui/react-dialog");
|
|
|
12217
12257
|
|
|
12218
12258
|
// src/private/hooks/useFocusRestore/useFocusRestore.ts
|
|
12219
12259
|
var import_react58 = require("react");
|
|
12220
|
-
var
|
|
12260
|
+
var import_type_guards48 = require("@wistia/type-guards");
|
|
12221
12261
|
var useFocusRestore = () => {
|
|
12222
12262
|
const previouslyFocusedRef = (0, import_react58.useRef)(null);
|
|
12223
12263
|
(0, import_react58.useEffect)(() => {
|
|
@@ -12225,7 +12265,7 @@ var useFocusRestore = () => {
|
|
|
12225
12265
|
}, []);
|
|
12226
12266
|
(0, import_react58.useEffect)(() => {
|
|
12227
12267
|
return () => {
|
|
12228
|
-
if ((0,
|
|
12268
|
+
if ((0, import_type_guards48.isNotNil)(previouslyFocusedRef.current)) {
|
|
12229
12269
|
setTimeout(() => {
|
|
12230
12270
|
previouslyFocusedRef.current?.focus();
|
|
12231
12271
|
}, 0);
|
|
@@ -12437,7 +12477,7 @@ var Modal = (0, import_react60.forwardRef)(
|
|
|
12437
12477
|
import_react_dialog5.Root,
|
|
12438
12478
|
{
|
|
12439
12479
|
onOpenChange: (open2) => {
|
|
12440
|
-
if (!open2 && (0,
|
|
12480
|
+
if (!open2 && (0, import_type_guards49.isNotNil)(onRequestClose)) {
|
|
12441
12481
|
onRequestClose();
|
|
12442
12482
|
}
|
|
12443
12483
|
},
|
|
@@ -12449,7 +12489,7 @@ var Modal = (0, import_react60.forwardRef)(
|
|
|
12449
12489
|
{
|
|
12450
12490
|
ref,
|
|
12451
12491
|
onOpenAutoFocus: (event) => {
|
|
12452
|
-
if ((0,
|
|
12492
|
+
if ((0, import_type_guards49.isNotNil)(initialFocusRef) && initialFocusRef.current) {
|
|
12453
12493
|
event.preventDefault();
|
|
12454
12494
|
requestAnimationFrame(() => {
|
|
12455
12495
|
initialFocusRef.current?.focus();
|
|
@@ -12484,9 +12524,9 @@ var import_react_popover2 = require("@radix-ui/react-popover");
|
|
|
12484
12524
|
var import_styled_components75 = __toESM(require("styled-components"));
|
|
12485
12525
|
|
|
12486
12526
|
// src/private/helpers/getControls/getControlProps.tsx
|
|
12487
|
-
var
|
|
12527
|
+
var import_type_guards50 = require("@wistia/type-guards");
|
|
12488
12528
|
var getControlProps = (isOpen, onOpenChange) => {
|
|
12489
|
-
return (0,
|
|
12529
|
+
return (0, import_type_guards50.isNotNil)(onOpenChange) && (0, import_type_guards50.isNotNil)(isOpen) ? { open: isOpen, onOpenChange } : {};
|
|
12490
12530
|
};
|
|
12491
12531
|
|
|
12492
12532
|
// src/components/Popover/PopoverArrow.tsx
|
|
@@ -12641,7 +12681,7 @@ Popover2.displayName = "Popover";
|
|
|
12641
12681
|
// src/components/ProgressBar/ProgressBar.tsx
|
|
12642
12682
|
var import_styled_components76 = __toESM(require("styled-components"));
|
|
12643
12683
|
var import_react_progress = require("@radix-ui/react-progress");
|
|
12644
|
-
var
|
|
12684
|
+
var import_type_guards51 = require("@wistia/type-guards");
|
|
12645
12685
|
var import_jsx_runtime259 = require("react/jsx-runtime");
|
|
12646
12686
|
var ProgressBarWrapper = import_styled_components76.default.div`
|
|
12647
12687
|
--progress-bar-height: 8px;
|
|
@@ -12696,7 +12736,7 @@ var ProgressBar = ({
|
|
|
12696
12736
|
...props
|
|
12697
12737
|
}) => {
|
|
12698
12738
|
return /* @__PURE__ */ (0, import_jsx_runtime259.jsxs)(ProgressBarWrapper, { children: [
|
|
12699
|
-
(0,
|
|
12739
|
+
(0, import_type_guards51.isNotNil)(labelLeft) ? /* @__PURE__ */ (0, import_jsx_runtime259.jsx)(ProgressBarLabel, { children: labelLeft }) : null,
|
|
12700
12740
|
/* @__PURE__ */ (0, import_jsx_runtime259.jsx)(
|
|
12701
12741
|
StyledProgressBar,
|
|
12702
12742
|
{
|
|
@@ -12712,7 +12752,7 @@ var ProgressBar = ({
|
|
|
12712
12752
|
)
|
|
12713
12753
|
}
|
|
12714
12754
|
),
|
|
12715
|
-
(0,
|
|
12755
|
+
(0, import_type_guards51.isNotNil)(labelRight) ? /* @__PURE__ */ (0, import_jsx_runtime259.jsx)(ProgressBarLabel, { children: labelRight }) : null
|
|
12716
12756
|
] });
|
|
12717
12757
|
};
|
|
12718
12758
|
ProgressBar.displayName = "ProgressBar";
|
|
@@ -12720,7 +12760,7 @@ ProgressBar.displayName = "ProgressBar";
|
|
|
12720
12760
|
// src/components/Radio/Radio.tsx
|
|
12721
12761
|
var import_react61 = require("react");
|
|
12722
12762
|
var import_styled_components77 = __toESM(require("styled-components"));
|
|
12723
|
-
var
|
|
12763
|
+
var import_type_guards52 = require("@wistia/type-guards");
|
|
12724
12764
|
var import_jsx_runtime260 = require("react/jsx-runtime");
|
|
12725
12765
|
var RadioIcon = () => /* @__PURE__ */ (0, import_jsx_runtime260.jsx)(
|
|
12726
12766
|
"svg",
|
|
@@ -12837,14 +12877,14 @@ var Radio = (0, import_react61.forwardRef)(
|
|
|
12837
12877
|
...props
|
|
12838
12878
|
}, ref) => {
|
|
12839
12879
|
const generatedId = (0, import_react61.useId)();
|
|
12840
|
-
const computedId = (0,
|
|
12880
|
+
const computedId = (0, import_type_guards52.isNonEmptyString)(id) ? id : `wistia-ui-radio-${generatedId}`;
|
|
12841
12881
|
const radioGroupContext = useRadioGroup();
|
|
12842
12882
|
const contextName = radioGroupContext?.name;
|
|
12843
12883
|
const contextOnChange = radioGroupContext?.onChange;
|
|
12844
12884
|
const contextValue = radioGroupContext?.value;
|
|
12845
12885
|
const radioName = name ?? contextName;
|
|
12846
12886
|
const handleOnChange = onChange ?? contextOnChange;
|
|
12847
|
-
const defaultChecked = (0,
|
|
12887
|
+
const defaultChecked = (0, import_type_guards52.isNotUndefined)(value) && (0, import_type_guards52.isNotUndefined)(contextValue) ? contextValue.includes(value) : void 0;
|
|
12848
12888
|
return /* @__PURE__ */ (0, import_jsx_runtime260.jsxs)(
|
|
12849
12889
|
StyledRadioWrapper,
|
|
12850
12890
|
{
|
|
@@ -12863,7 +12903,7 @@ var Radio = (0, import_react61.forwardRef)(
|
|
|
12863
12903
|
required,
|
|
12864
12904
|
type: "radio",
|
|
12865
12905
|
value,
|
|
12866
|
-
...(0,
|
|
12906
|
+
...(0, import_type_guards52.isNotUndefined)(defaultChecked) ? { defaultChecked } : { checked }
|
|
12867
12907
|
}
|
|
12868
12908
|
),
|
|
12869
12909
|
/* @__PURE__ */ (0, import_jsx_runtime260.jsx)(
|
|
@@ -12892,21 +12932,339 @@ var Radio = (0, import_react61.forwardRef)(
|
|
|
12892
12932
|
);
|
|
12893
12933
|
Radio.displayName = "Radio";
|
|
12894
12934
|
|
|
12895
|
-
// src/components/
|
|
12896
|
-
var
|
|
12935
|
+
// src/components/RadioCard/RadioCard.tsx
|
|
12936
|
+
var import_react63 = require("react");
|
|
12937
|
+
|
|
12938
|
+
// src/components/RadioCard/RadioCardRoot.tsx
|
|
12939
|
+
var import_react62 = require("react");
|
|
12940
|
+
var import_styled_components78 = __toESM(require("styled-components"));
|
|
12941
|
+
var import_type_guards53 = require("@wistia/type-guards");
|
|
12942
|
+
var import_jsx_runtime261 = require("react/jsx-runtime");
|
|
12943
|
+
var checkedStyles = import_styled_components78.css`
|
|
12944
|
+
--wui-radio-card-border-color: var(--wui-color-focus-ring);
|
|
12945
|
+
--wui-color-icon: var(--wui-color-icon-selected);
|
|
12946
|
+
--wui-radio-card-background-color: var(--wui-color-bg-surface-info);
|
|
12947
|
+
--wui-color-text: var(--wui-color-text-info);
|
|
12948
|
+
--wui-color-text-secondary: var(--wui-color-text-info);
|
|
12949
|
+
`;
|
|
12950
|
+
var disabledStyles = import_styled_components78.css`
|
|
12951
|
+
--wui-radio-card-border-color: var(--wui-color-border-disabled);
|
|
12952
|
+
--wui-radio-card-background-color: var(--wui-color-bg-surface-disabled);
|
|
12953
|
+
--wui-radio-card-cursor: not-allowed;
|
|
12954
|
+
--wui-color-icon: var(--wui-color-icon-disabled);
|
|
12955
|
+
--wui-color-text: var(--wui-color-text-disabled);
|
|
12956
|
+
--wui-color-text-secondary: var(--wui-color-text-disabled);
|
|
12957
|
+
`;
|
|
12958
|
+
var focusStyles = import_styled_components78.css`
|
|
12959
|
+
outline: 2px solid var(--wui-color-focus-ring);
|
|
12960
|
+
`;
|
|
12961
|
+
var imageCoverStyles = import_styled_components78.css`
|
|
12962
|
+
--wui-radio-card-image-inset: 0px;
|
|
12963
|
+
--wui-radio-card-border-width: 0px;
|
|
12964
|
+
--wui-inset-shadow-width: 1px;
|
|
12965
|
+
--wui-radio-card-border-color: rgb(0 0 0 / 25%);
|
|
12966
|
+
|
|
12967
|
+
overflow: hidden;
|
|
12968
|
+
|
|
12969
|
+
&:has(input:checked) {
|
|
12970
|
+
--wui-radio-card-border-color: var(--wui-color-focus-ring);
|
|
12971
|
+
--wui-radio-card-image-inset: 2px;
|
|
12972
|
+
--wui-inset-shadow-width: 2px;
|
|
12973
|
+
}
|
|
12974
|
+
|
|
12975
|
+
&:hover:not(:has(input:disabled, input:checked)) {
|
|
12976
|
+
--wui-radio-card-border-color: rgb(0 0 0 / 50%);
|
|
12977
|
+
}
|
|
12978
|
+
|
|
12979
|
+
&::after {
|
|
12980
|
+
content: '';
|
|
12981
|
+
position: absolute;
|
|
12982
|
+
top: 0;
|
|
12983
|
+
width: 100%;
|
|
12984
|
+
height: 100%;
|
|
12985
|
+
border-radius: var(--wui-radio-card-border-radius);
|
|
12986
|
+
box-shadow:
|
|
12987
|
+
inset 0 0 0 var(--wui-inset-shadow-width) var(--wui-radio-card-border-color),
|
|
12988
|
+
inset 0 0 0 calc(var(--wui-radio-card-image-inset) * 2) var(--wui-radio-card-background-color);
|
|
12989
|
+
transition: all var(--wui-motion-duration-02) var(--wui-motion-ease);
|
|
12990
|
+
}
|
|
12991
|
+
`;
|
|
12992
|
+
var StyledCard2 = import_styled_components78.default.label`
|
|
12993
|
+
--wui-radio-card-border-color: var(--wui-color-border-secondary);
|
|
12994
|
+
--wui-radio-card-background-color: var(--wui-color-bg-surface);
|
|
12995
|
+
--wui-radio-card-cursor: pointer;
|
|
12996
|
+
--wui-radio-card-border-width: 1px;
|
|
12997
|
+
--wui-radio-card-border-radius: var(--wui-border-radius-02);
|
|
12998
|
+
|
|
12999
|
+
position: relative;
|
|
13000
|
+
display: flex;
|
|
13001
|
+
padding: ${({ $padding }) => `var(--wui-${$padding})`};
|
|
13002
|
+
aspect-ratio: ${({ $aspectRatio }) => $aspectRatio};
|
|
13003
|
+
border: var(--wui-radio-card-border-width) solid var(--wui-radio-card-border-color);
|
|
13004
|
+
border-radius: var(--wui-radio-card-border-radius);
|
|
13005
|
+
background-color: var(--wui-radio-card-background-color);
|
|
13006
|
+
cursor: var(--wui-radio-card-cursor);
|
|
13007
|
+
transition: all var(--wui-motion-duration-03) var(--wui-motion-ease);
|
|
13008
|
+
|
|
13009
|
+
svg {
|
|
13010
|
+
transition: all var(--wui-motion-duration-03) var(--wui-motion-ease);
|
|
13011
|
+
}
|
|
13012
|
+
|
|
13013
|
+
&:hover {
|
|
13014
|
+
--wui-radio-card-border-color: var(--wui-color-border-secondary-hover);
|
|
13015
|
+
}
|
|
13016
|
+
|
|
13017
|
+
&:active {
|
|
13018
|
+
--wui-radio-card-border-color: var(--wui-color-border-secondary-active);
|
|
13019
|
+
}
|
|
13020
|
+
|
|
13021
|
+
&:has(input:checked) {
|
|
13022
|
+
${checkedStyles}
|
|
13023
|
+
}
|
|
13024
|
+
|
|
13025
|
+
&:has(input:disabled) {
|
|
13026
|
+
${disabledStyles}
|
|
13027
|
+
}
|
|
13028
|
+
|
|
13029
|
+
&:has(input:focus-visible) {
|
|
13030
|
+
${focusStyles}
|
|
13031
|
+
}
|
|
13032
|
+
|
|
13033
|
+
&:has([data-wui-radio-card-image]) {
|
|
13034
|
+
&:has(input:disabled) {
|
|
13035
|
+
[data-wui-radio-card-image] {
|
|
13036
|
+
filter: grayscale(100%);
|
|
13037
|
+
}
|
|
13038
|
+
}
|
|
13039
|
+
|
|
13040
|
+
&:has([data-wui-radio-card-image='cover']) {
|
|
13041
|
+
${imageCoverStyles}
|
|
13042
|
+
}
|
|
13043
|
+
}
|
|
13044
|
+
`;
|
|
13045
|
+
var StyledHiddenInput = import_styled_components78.default.input`
|
|
13046
|
+
${visuallyHiddenStyle}
|
|
13047
|
+
`;
|
|
13048
|
+
var RadioCardRoot = (0, import_react62.forwardRef)(
|
|
13049
|
+
({
|
|
13050
|
+
children,
|
|
13051
|
+
disabled = false,
|
|
13052
|
+
id,
|
|
13053
|
+
name,
|
|
13054
|
+
onChange,
|
|
13055
|
+
value,
|
|
13056
|
+
aspectRatio = "initial",
|
|
13057
|
+
padding = "space-04",
|
|
13058
|
+
checked,
|
|
13059
|
+
...props
|
|
13060
|
+
}, ref) => {
|
|
13061
|
+
const generatedId = (0, import_react62.useId)();
|
|
13062
|
+
const computedId = (0, import_type_guards53.isNonEmptyString)(id) ? id : `wistia-ui-radio-${generatedId}`;
|
|
13063
|
+
const radioGroupContext = useRadioGroup();
|
|
13064
|
+
const contextName = radioGroupContext?.name;
|
|
13065
|
+
const contextOnChange = radioGroupContext?.onChange;
|
|
13066
|
+
const contextValue = radioGroupContext?.value;
|
|
13067
|
+
const radioName = name ?? contextName;
|
|
13068
|
+
const handleOnChange = onChange ?? contextOnChange;
|
|
13069
|
+
const defaultChecked = (0, import_type_guards53.isNotUndefined)(value) && (0, import_type_guards53.isNotUndefined)(contextValue) ? contextValue.includes(value) : void 0;
|
|
13070
|
+
return /* @__PURE__ */ (0, import_jsx_runtime261.jsxs)(
|
|
13071
|
+
StyledCard2,
|
|
13072
|
+
{
|
|
13073
|
+
$aspectRatio: aspectRatio,
|
|
13074
|
+
$padding: padding,
|
|
13075
|
+
htmlFor: computedId,
|
|
13076
|
+
children: [
|
|
13077
|
+
/* @__PURE__ */ (0, import_jsx_runtime261.jsx)(
|
|
13078
|
+
StyledHiddenInput,
|
|
13079
|
+
{
|
|
13080
|
+
...props,
|
|
13081
|
+
ref,
|
|
13082
|
+
disabled,
|
|
13083
|
+
id: computedId,
|
|
13084
|
+
name: radioName,
|
|
13085
|
+
onChange: handleOnChange,
|
|
13086
|
+
type: "radio",
|
|
13087
|
+
value,
|
|
13088
|
+
...(0, import_type_guards53.isNotUndefined)(defaultChecked) ? { defaultChecked } : { checked }
|
|
13089
|
+
}
|
|
13090
|
+
),
|
|
13091
|
+
children
|
|
13092
|
+
]
|
|
13093
|
+
}
|
|
13094
|
+
);
|
|
13095
|
+
}
|
|
13096
|
+
);
|
|
13097
|
+
RadioCardRoot.displayName = "RadioCardRoot";
|
|
13098
|
+
|
|
13099
|
+
// src/components/RadioCard/RadioCardDefaultLayout.tsx
|
|
13100
|
+
var import_styled_components80 = __toESM(require("styled-components"));
|
|
13101
|
+
var import_type_guards54 = require("@wistia/type-guards");
|
|
13102
|
+
|
|
13103
|
+
// src/components/RadioCard/RadioCardIndicator.tsx
|
|
12897
13104
|
var import_styled_components79 = __toESM(require("styled-components"));
|
|
13105
|
+
var RadioCardIndicator = import_styled_components79.default.div`
|
|
13106
|
+
--wui-radio-card-indicator-size: 14px;
|
|
13107
|
+
--wui-radio-card-indicator-background-color: var(--wui-color-bg-surface);
|
|
13108
|
+
--wui-radio-card-indicator-fill-color: var(--wui-color-bg-fill);
|
|
13109
|
+
|
|
13110
|
+
/* TODO: figure out radio / checkbox / switch colors */
|
|
13111
|
+
--wui-radio-card-indicator-border-color: var(--wui-color-border-secondary-active);
|
|
13112
|
+
|
|
13113
|
+
width: var(--wui-radio-card-indicator-size);
|
|
13114
|
+
height: var(--wui-radio-card-indicator-size);
|
|
13115
|
+
min-width: var(--wui-radio-card-indicator-size);
|
|
13116
|
+
min-height: var(--wui-radio-card-indicator-size);
|
|
13117
|
+
background-color: var(--wui-radio-card-indicator-background-color);
|
|
13118
|
+
box-shadow: inset 0 0 0 1px var(--wui-radio-card-indicator-border-color);
|
|
13119
|
+
border-radius: 100%;
|
|
13120
|
+
position: relative;
|
|
13121
|
+
cursor: pointer;
|
|
13122
|
+
transition: border-color var(--wui-motion-duration-03) var(--wui-motion-ease);
|
|
13123
|
+
|
|
13124
|
+
&::after {
|
|
13125
|
+
content: '';
|
|
13126
|
+
position: absolute;
|
|
13127
|
+
top: 50%;
|
|
13128
|
+
left: 50%;
|
|
13129
|
+
width: 0;
|
|
13130
|
+
height: 0;
|
|
13131
|
+
background-color: var(--wui-radio-card-indicator-fill-color);
|
|
13132
|
+
border-radius: 100%;
|
|
13133
|
+
transform: translate(-50%, -50%);
|
|
13134
|
+
}
|
|
13135
|
+
|
|
13136
|
+
${StyledCard2}:has(input:checked) & {
|
|
13137
|
+
--wui-radio-card-indicator-border-color: var(--wui-color-focus-ring);
|
|
13138
|
+
--wui-radio-card-indicator-fill-color: var(--wui-color-focus-ring);
|
|
13139
|
+
|
|
13140
|
+
&::after {
|
|
13141
|
+
width: calc(var(--wui-radio-card-indicator-size) / 2);
|
|
13142
|
+
height: calc(var(--wui-radio-card-indicator-size) / 2);
|
|
13143
|
+
}
|
|
13144
|
+
}
|
|
13145
|
+
|
|
13146
|
+
${StyledCard2}:has(input:disabled) & {
|
|
13147
|
+
--wui-radio-card-indicator-border-color: var(--wui-color-border-secondary);
|
|
13148
|
+
--wui-radio-card-indicator-background-color: var(--wui-color-bg-surface-disabled);
|
|
13149
|
+
}
|
|
13150
|
+
`;
|
|
13151
|
+
RadioCardIndicator.displayName = "RadioCardIndicator";
|
|
13152
|
+
|
|
13153
|
+
// src/components/RadioCard/RadioCardDefaultLayout.tsx
|
|
13154
|
+
var import_jsx_runtime262 = require("react/jsx-runtime");
|
|
13155
|
+
var StyledCardContent = import_styled_components80.default.div`
|
|
13156
|
+
display: grid;
|
|
13157
|
+
grid-auto-flow: column;
|
|
13158
|
+
gap: var(--wui-space-02);
|
|
13159
|
+
`;
|
|
13160
|
+
var StyledCardIcon = import_styled_components80.default.div`
|
|
13161
|
+
display: contents;
|
|
13162
|
+
`;
|
|
13163
|
+
var StyledIndicatorContainer = import_styled_components80.default.div`
|
|
13164
|
+
height: ${({ $hasIcon }) => $hasIcon ? "24px" : "16px"};
|
|
13165
|
+
display: flex;
|
|
13166
|
+
align-items: center;
|
|
13167
|
+
`;
|
|
13168
|
+
var RadioCardDefaultLayout = ({
|
|
13169
|
+
icon,
|
|
13170
|
+
label,
|
|
13171
|
+
description,
|
|
13172
|
+
showIndicator = true
|
|
13173
|
+
}) => {
|
|
13174
|
+
return /* @__PURE__ */ (0, import_jsx_runtime262.jsxs)(StyledCardContent, { children: [
|
|
13175
|
+
showIndicator ? /* @__PURE__ */ (0, import_jsx_runtime262.jsx)(StyledIndicatorContainer, { $hasIcon: (0, import_type_guards54.isNotNil)(icon), children: /* @__PURE__ */ (0, import_jsx_runtime262.jsx)(RadioCardIndicator, { "data-testid": "wui-radio-card-indicator" }) }) : null,
|
|
13176
|
+
/* @__PURE__ */ (0, import_jsx_runtime262.jsxs)(Stack, { gap: "space-02", children: [
|
|
13177
|
+
(0, import_type_guards54.isNotNil)(icon) && /* @__PURE__ */ (0, import_jsx_runtime262.jsx)(StyledCardIcon, { "data-wui-radio-card-icon": true, children: icon }),
|
|
13178
|
+
/* @__PURE__ */ (0, import_jsx_runtime262.jsxs)(
|
|
13179
|
+
Stack,
|
|
13180
|
+
{
|
|
13181
|
+
gap: "space-01",
|
|
13182
|
+
style: (0, import_type_guards54.isNotNil)(icon) ? { paddingLeft: 2 } : void 0,
|
|
13183
|
+
children: [
|
|
13184
|
+
/* @__PURE__ */ (0, import_jsx_runtime262.jsx)(Text, { variant: "label3", children: /* @__PURE__ */ (0, import_jsx_runtime262.jsx)("strong", { children: label }) }),
|
|
13185
|
+
(0, import_type_guards54.isNotNil)(description) && /* @__PURE__ */ (0, import_jsx_runtime262.jsx)(
|
|
13186
|
+
Text,
|
|
13187
|
+
{
|
|
13188
|
+
prominence: "secondary",
|
|
13189
|
+
variant: "body3",
|
|
13190
|
+
children: description
|
|
13191
|
+
}
|
|
13192
|
+
)
|
|
13193
|
+
]
|
|
13194
|
+
}
|
|
13195
|
+
)
|
|
13196
|
+
] })
|
|
13197
|
+
] });
|
|
13198
|
+
};
|
|
13199
|
+
RadioCardDefaultLayout.displayName = "RadioCardDefaultLayout";
|
|
13200
|
+
|
|
13201
|
+
// src/components/RadioCard/RadioCard.tsx
|
|
13202
|
+
var import_jsx_runtime263 = require("react/jsx-runtime");
|
|
13203
|
+
var RadioCard = (0, import_react63.forwardRef)(
|
|
13204
|
+
({ icon, label, description, showIndicator, ...rootProps }, ref) => {
|
|
13205
|
+
return /* @__PURE__ */ (0, import_jsx_runtime263.jsx)(
|
|
13206
|
+
RadioCardRoot,
|
|
13207
|
+
{
|
|
13208
|
+
ref,
|
|
13209
|
+
...rootProps,
|
|
13210
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime263.jsx)(
|
|
13211
|
+
RadioCardDefaultLayout,
|
|
13212
|
+
{
|
|
13213
|
+
description,
|
|
13214
|
+
icon,
|
|
13215
|
+
label,
|
|
13216
|
+
showIndicator
|
|
13217
|
+
}
|
|
13218
|
+
)
|
|
13219
|
+
}
|
|
13220
|
+
);
|
|
13221
|
+
}
|
|
13222
|
+
);
|
|
13223
|
+
RadioCard.displayName = "RadioCard";
|
|
13224
|
+
|
|
13225
|
+
// src/components/RadioCard/RadioCardImage.tsx
|
|
13226
|
+
var import_react64 = require("react");
|
|
13227
|
+
var import_jsx_runtime264 = require("react/jsx-runtime");
|
|
13228
|
+
var RadioCardImage = (0, import_react64.forwardRef)(
|
|
13229
|
+
({ label, imageSrc, aspectRatio, padding = "space-04", ...rootProps }, ref) => {
|
|
13230
|
+
return /* @__PURE__ */ (0, import_jsx_runtime264.jsx)(
|
|
13231
|
+
RadioCardRoot,
|
|
13232
|
+
{
|
|
13233
|
+
ref,
|
|
13234
|
+
...rootProps,
|
|
13235
|
+
aspectRatio,
|
|
13236
|
+
padding,
|
|
13237
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime264.jsx)(
|
|
13238
|
+
Image,
|
|
13239
|
+
{
|
|
13240
|
+
alt: label,
|
|
13241
|
+
"data-wui-radio-card-image": padding === "space-00" ? "cover" : "contain",
|
|
13242
|
+
fill: true,
|
|
13243
|
+
fit: padding === "space-00" ? "cover" : "contain",
|
|
13244
|
+
src: imageSrc
|
|
13245
|
+
}
|
|
13246
|
+
)
|
|
13247
|
+
}
|
|
13248
|
+
);
|
|
13249
|
+
}
|
|
13250
|
+
);
|
|
13251
|
+
RadioCardImage.displayName = "RadioCardImage";
|
|
13252
|
+
|
|
13253
|
+
// src/components/SegmentedControl/SegmentedControl.tsx
|
|
13254
|
+
var import_react67 = require("react");
|
|
13255
|
+
var import_styled_components82 = __toESM(require("styled-components"));
|
|
12898
13256
|
var import_react_toggle_group = require("@radix-ui/react-toggle-group");
|
|
12899
|
-
var
|
|
13257
|
+
var import_type_guards56 = require("@wistia/type-guards");
|
|
12900
13258
|
|
|
12901
13259
|
// src/components/SegmentedControl/useSelectedItemStyle.tsx
|
|
12902
|
-
var
|
|
12903
|
-
var
|
|
12904
|
-
var SelectedItemStyleContext = (0,
|
|
13260
|
+
var import_react65 = require("react");
|
|
13261
|
+
var import_jsx_runtime265 = require("react/jsx-runtime");
|
|
13262
|
+
var SelectedItemStyleContext = (0, import_react65.createContext)(null);
|
|
12905
13263
|
var SelectedItemStyleProvider = ({
|
|
12906
13264
|
children
|
|
12907
13265
|
}) => {
|
|
12908
|
-
const [selectedItemMeasurements, setSelectedItemMeasurements] = (0,
|
|
12909
|
-
const selectedItemIndicatorStyle = (0,
|
|
13266
|
+
const [selectedItemMeasurements, setSelectedItemMeasurements] = (0, import_react65.useState)(null);
|
|
13267
|
+
const selectedItemIndicatorStyle = (0, import_react65.useMemo)(
|
|
12910
13268
|
() => selectedItemMeasurements != null ? {
|
|
12911
13269
|
height: `${selectedItemMeasurements.offsetHeight}px`,
|
|
12912
13270
|
transform: `translateX(${selectedItemMeasurements.offsetLeft}px) translateY(-50%)`,
|
|
@@ -12914,17 +13272,17 @@ var SelectedItemStyleProvider = ({
|
|
|
12914
13272
|
} : void 0,
|
|
12915
13273
|
[selectedItemMeasurements]
|
|
12916
13274
|
);
|
|
12917
|
-
const contextValue = (0,
|
|
13275
|
+
const contextValue = (0, import_react65.useMemo)(
|
|
12918
13276
|
() => ({
|
|
12919
13277
|
setSelectedItemMeasurements,
|
|
12920
13278
|
selectedItemIndicatorStyle
|
|
12921
13279
|
}),
|
|
12922
13280
|
[selectedItemIndicatorStyle]
|
|
12923
13281
|
);
|
|
12924
|
-
return /* @__PURE__ */ (0,
|
|
13282
|
+
return /* @__PURE__ */ (0, import_jsx_runtime265.jsx)(SelectedItemStyleContext.Provider, { value: contextValue, children });
|
|
12925
13283
|
};
|
|
12926
13284
|
var useSelectedItemStyle = () => {
|
|
12927
|
-
const context = (0,
|
|
13285
|
+
const context = (0, import_react65.useContext)(SelectedItemStyleContext);
|
|
12928
13286
|
if (context === null) {
|
|
12929
13287
|
throw new Error("useSelectedItemStyle must be used within a SelectedItemStyleProvider");
|
|
12930
13288
|
}
|
|
@@ -12932,15 +13290,15 @@ var useSelectedItemStyle = () => {
|
|
|
12932
13290
|
};
|
|
12933
13291
|
|
|
12934
13292
|
// src/components/SegmentedControl/SelectedItemIndicator.tsx
|
|
12935
|
-
var
|
|
12936
|
-
var
|
|
13293
|
+
var import_styled_components81 = __toESM(require("styled-components"));
|
|
13294
|
+
var import_type_guards55 = require("@wistia/type-guards");
|
|
12937
13295
|
|
|
12938
13296
|
// src/components/SegmentedControl/useSegmentedControlValue.tsx
|
|
12939
|
-
var
|
|
12940
|
-
var SegmentedControlValueContext = (0,
|
|
13297
|
+
var import_react66 = require("react");
|
|
13298
|
+
var SegmentedControlValueContext = (0, import_react66.createContext)(null);
|
|
12941
13299
|
var SegmentedControlValueProvider = SegmentedControlValueContext.Provider;
|
|
12942
13300
|
var useSegmentedControlValue = () => {
|
|
12943
|
-
const context = (0,
|
|
13301
|
+
const context = (0, import_react66.useContext)(SegmentedControlValueContext);
|
|
12944
13302
|
if (context === null) {
|
|
12945
13303
|
throw new Error("useSegmentedControlValue must be used within a SegmentedControlValueProvider");
|
|
12946
13304
|
}
|
|
@@ -12948,13 +13306,13 @@ var useSegmentedControlValue = () => {
|
|
|
12948
13306
|
};
|
|
12949
13307
|
|
|
12950
13308
|
// src/components/SegmentedControl/SelectedItemIndicator.tsx
|
|
12951
|
-
var
|
|
12952
|
-
var selectedItemIndicatorStyles =
|
|
13309
|
+
var import_jsx_runtime266 = require("react/jsx-runtime");
|
|
13310
|
+
var selectedItemIndicatorStyles = import_styled_components81.css`
|
|
12953
13311
|
background-color: var(--wui-color-bg-fill-white);
|
|
12954
13312
|
border-radius: var(--wui-border-radius-rounded);
|
|
12955
13313
|
box-shadow: var(--wui-elevation-01);
|
|
12956
13314
|
`;
|
|
12957
|
-
var SelectedItemIndicatorDiv =
|
|
13315
|
+
var SelectedItemIndicatorDiv = import_styled_components81.default.div`
|
|
12958
13316
|
${selectedItemIndicatorStyles}
|
|
12959
13317
|
left: 0;
|
|
12960
13318
|
position: absolute;
|
|
@@ -12967,10 +13325,10 @@ var SelectedItemIndicatorDiv = import_styled_components78.default.div`
|
|
|
12967
13325
|
var SelectedItemIndicator = () => {
|
|
12968
13326
|
const selectedValue = useSegmentedControlValue();
|
|
12969
13327
|
const { selectedItemIndicatorStyle } = useSelectedItemStyle();
|
|
12970
|
-
if (!selectedValue || (0,
|
|
13328
|
+
if (!selectedValue || (0, import_type_guards55.isUndefined)(selectedItemIndicatorStyle)) {
|
|
12971
13329
|
return null;
|
|
12972
13330
|
}
|
|
12973
|
-
return /* @__PURE__ */ (0,
|
|
13331
|
+
return /* @__PURE__ */ (0, import_jsx_runtime266.jsx)(
|
|
12974
13332
|
SelectedItemIndicatorDiv,
|
|
12975
13333
|
{
|
|
12976
13334
|
"data-wui-selected-item-indicator": true,
|
|
@@ -12980,8 +13338,8 @@ var SelectedItemIndicator = () => {
|
|
|
12980
13338
|
};
|
|
12981
13339
|
|
|
12982
13340
|
// src/components/SegmentedControl/SegmentedControl.tsx
|
|
12983
|
-
var
|
|
12984
|
-
var segmentedControlStyles =
|
|
13341
|
+
var import_jsx_runtime267 = require("react/jsx-runtime");
|
|
13342
|
+
var segmentedControlStyles = import_styled_components82.css`
|
|
12985
13343
|
display: inline-flex;
|
|
12986
13344
|
background-color: var(--wui-color-bg-surface-secondary);
|
|
12987
13345
|
border-radius: var(--wui-border-radius-rounded);
|
|
@@ -12992,10 +13350,10 @@ var segmentedControlStyles = import_styled_components79.css`
|
|
|
12992
13350
|
position: relative;
|
|
12993
13351
|
width: ${({ $fullWidth }) => $fullWidth ? "100%" : "auto"};
|
|
12994
13352
|
`;
|
|
12995
|
-
var StyledSegmentedControl = (0,
|
|
13353
|
+
var StyledSegmentedControl = (0, import_styled_components82.default)(import_react_toggle_group.Root)`
|
|
12996
13354
|
${segmentedControlStyles}
|
|
12997
13355
|
`;
|
|
12998
|
-
var SegmentedControl = (0,
|
|
13356
|
+
var SegmentedControl = (0, import_react67.forwardRef)(
|
|
12999
13357
|
({
|
|
13000
13358
|
children,
|
|
13001
13359
|
disabled = false,
|
|
@@ -13004,10 +13362,10 @@ var SegmentedControl = (0, import_react64.forwardRef)(
|
|
|
13004
13362
|
onSelectedValueChange,
|
|
13005
13363
|
...props
|
|
13006
13364
|
}, ref) => {
|
|
13007
|
-
if ((0,
|
|
13365
|
+
if ((0, import_type_guards56.isNil)(children)) {
|
|
13008
13366
|
return null;
|
|
13009
13367
|
}
|
|
13010
|
-
return /* @__PURE__ */ (0,
|
|
13368
|
+
return /* @__PURE__ */ (0, import_jsx_runtime267.jsx)(
|
|
13011
13369
|
StyledSegmentedControl,
|
|
13012
13370
|
{
|
|
13013
13371
|
ref,
|
|
@@ -13019,9 +13377,9 @@ var SegmentedControl = (0, import_react64.forwardRef)(
|
|
|
13019
13377
|
type: "single",
|
|
13020
13378
|
value: selectedValue,
|
|
13021
13379
|
...props,
|
|
13022
|
-
children: /* @__PURE__ */ (0,
|
|
13380
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime267.jsx)(SegmentedControlValueProvider, { value: selectedValue, children: /* @__PURE__ */ (0, import_jsx_runtime267.jsxs)(SelectedItemStyleProvider, { children: [
|
|
13023
13381
|
children,
|
|
13024
|
-
/* @__PURE__ */ (0,
|
|
13382
|
+
/* @__PURE__ */ (0, import_jsx_runtime267.jsx)(SelectedItemIndicator, {})
|
|
13025
13383
|
] }) })
|
|
13026
13384
|
}
|
|
13027
13385
|
);
|
|
@@ -13030,12 +13388,12 @@ var SegmentedControl = (0, import_react64.forwardRef)(
|
|
|
13030
13388
|
SegmentedControl.displayName = "SegmentedControl";
|
|
13031
13389
|
|
|
13032
13390
|
// src/components/SegmentedControl/SegmentedControlItem.tsx
|
|
13033
|
-
var
|
|
13034
|
-
var
|
|
13391
|
+
var import_react68 = require("react");
|
|
13392
|
+
var import_styled_components83 = __toESM(require("styled-components"));
|
|
13035
13393
|
var import_react_toggle_group2 = require("@radix-ui/react-toggle-group");
|
|
13036
|
-
var
|
|
13037
|
-
var
|
|
13038
|
-
var segmentedControlItemStyles =
|
|
13394
|
+
var import_type_guards57 = require("@wistia/type-guards");
|
|
13395
|
+
var import_jsx_runtime268 = require("react/jsx-runtime");
|
|
13396
|
+
var segmentedControlItemStyles = import_styled_components83.css`
|
|
13039
13397
|
all: unset; /* ToggleGroupItem is a button element */
|
|
13040
13398
|
align-items: center;
|
|
13041
13399
|
border-radius: var(--wui-border-radius-rounded);
|
|
@@ -13102,14 +13460,14 @@ var segmentedControlItemStyles = import_styled_components80.css`
|
|
|
13102
13460
|
}
|
|
13103
13461
|
}
|
|
13104
13462
|
`;
|
|
13105
|
-
var StyledSegmentedControlItem = (0,
|
|
13463
|
+
var StyledSegmentedControlItem = (0, import_styled_components83.default)(import_react_toggle_group2.Item)`
|
|
13106
13464
|
${segmentedControlItemStyles}
|
|
13107
13465
|
`;
|
|
13108
|
-
var SegmentedControlItem = (0,
|
|
13466
|
+
var SegmentedControlItem = (0, import_react68.forwardRef)(
|
|
13109
13467
|
({ disabled, icon, label, "aria-label": ariaLabel, value, ...otherProps }, forwardedRef) => {
|
|
13110
13468
|
const selectedValue = useSegmentedControlValue();
|
|
13111
13469
|
const { setSelectedItemMeasurements } = useSelectedItemStyle();
|
|
13112
|
-
const buttonRef = (0,
|
|
13470
|
+
const buttonRef = (0, import_react68.useRef)(null);
|
|
13113
13471
|
const combinedRef = mergeRefs([buttonRef, forwardedRef]);
|
|
13114
13472
|
const handleClick = (event) => {
|
|
13115
13473
|
const target = event.target;
|
|
@@ -13118,7 +13476,7 @@ var SegmentedControlItem = (0, import_react65.forwardRef)(
|
|
|
13118
13476
|
event.preventDefault();
|
|
13119
13477
|
}
|
|
13120
13478
|
};
|
|
13121
|
-
(0,
|
|
13479
|
+
(0, import_react68.useEffect)(() => {
|
|
13122
13480
|
const buttonElem = buttonRef.current;
|
|
13123
13481
|
if (!buttonElem) {
|
|
13124
13482
|
return void 0;
|
|
@@ -13143,13 +13501,13 @@ var SegmentedControlItem = (0, import_react65.forwardRef)(
|
|
|
13143
13501
|
resizeObserver.disconnect();
|
|
13144
13502
|
};
|
|
13145
13503
|
}, [selectedValue, setSelectedItemMeasurements, value]);
|
|
13146
|
-
return /* @__PURE__ */ (0,
|
|
13504
|
+
return /* @__PURE__ */ (0, import_jsx_runtime268.jsxs)(
|
|
13147
13505
|
StyledSegmentedControlItem,
|
|
13148
13506
|
{
|
|
13149
13507
|
ref: combinedRef,
|
|
13150
13508
|
...otherProps,
|
|
13151
|
-
$hasLabel: (0,
|
|
13152
|
-
"aria-label": (0,
|
|
13509
|
+
$hasLabel: (0, import_type_guards57.isNotNil)(label),
|
|
13510
|
+
"aria-label": (0, import_type_guards57.isNotNil)(label) ? void 0 : ariaLabel,
|
|
13153
13511
|
disabled,
|
|
13154
13512
|
onClick: handleClick,
|
|
13155
13513
|
value,
|
|
@@ -13165,10 +13523,10 @@ SegmentedControlItem.displayName = "SegmentedControlItem";
|
|
|
13165
13523
|
|
|
13166
13524
|
// src/components/Select/Select.tsx
|
|
13167
13525
|
var import_react_select = require("@radix-ui/react-select");
|
|
13168
|
-
var
|
|
13169
|
-
var
|
|
13170
|
-
var
|
|
13171
|
-
var StyledTrigger2 = (0,
|
|
13526
|
+
var import_react69 = require("react");
|
|
13527
|
+
var import_styled_components84 = __toESM(require("styled-components"));
|
|
13528
|
+
var import_jsx_runtime269 = require("react/jsx-runtime");
|
|
13529
|
+
var StyledTrigger2 = (0, import_styled_components84.default)(import_react_select.Trigger)`
|
|
13172
13530
|
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
13173
13531
|
${inputCss};
|
|
13174
13532
|
padding: var(--wui-input-vertical-padding) var(--wui-input-horizontal-padding);
|
|
@@ -13212,7 +13570,7 @@ var StyledTrigger2 = (0, import_styled_components81.default)(import_react_select
|
|
|
13212
13570
|
color: var(--wui-input-placeholder);
|
|
13213
13571
|
}
|
|
13214
13572
|
`;
|
|
13215
|
-
var StyledContent3 = (0,
|
|
13573
|
+
var StyledContent3 = (0, import_styled_components84.default)(import_react_select.Content)`
|
|
13216
13574
|
--wui-select-content-border: var(--wui-color-border);
|
|
13217
13575
|
--wui-select-content-bg: var(--wui-color-bg-surface);
|
|
13218
13576
|
--wui-select-content-border-radius: var(--wui-border-radius-02);
|
|
@@ -13230,7 +13588,7 @@ var StyledContent3 = (0, import_styled_components81.default)(import_react_select
|
|
|
13230
13588
|
max-height: var(--radix-select-content-available-height);
|
|
13231
13589
|
z-index: var(--wui-zindex-select);
|
|
13232
13590
|
`;
|
|
13233
|
-
var Select = (0,
|
|
13591
|
+
var Select = (0, import_react69.forwardRef)(
|
|
13234
13592
|
({
|
|
13235
13593
|
colorScheme = "inherit",
|
|
13236
13594
|
children,
|
|
@@ -13240,13 +13598,13 @@ var Select = (0, import_react66.forwardRef)(
|
|
|
13240
13598
|
...props
|
|
13241
13599
|
}, forwardedRef) => {
|
|
13242
13600
|
const responsiveFullWidth = useResponsiveProp(fullWidth);
|
|
13243
|
-
return /* @__PURE__ */ (0,
|
|
13601
|
+
return /* @__PURE__ */ (0, import_jsx_runtime269.jsxs)(
|
|
13244
13602
|
import_react_select.Root,
|
|
13245
13603
|
{
|
|
13246
13604
|
...props,
|
|
13247
13605
|
onValueChange: onChange,
|
|
13248
13606
|
children: [
|
|
13249
|
-
/* @__PURE__ */ (0,
|
|
13607
|
+
/* @__PURE__ */ (0, import_jsx_runtime269.jsxs)(
|
|
13250
13608
|
StyledTrigger2,
|
|
13251
13609
|
{
|
|
13252
13610
|
ref: forwardedRef,
|
|
@@ -13254,8 +13612,8 @@ var Select = (0, import_react66.forwardRef)(
|
|
|
13254
13612
|
$fullWidth: responsiveFullWidth,
|
|
13255
13613
|
...props,
|
|
13256
13614
|
children: [
|
|
13257
|
-
/* @__PURE__ */ (0,
|
|
13258
|
-
/* @__PURE__ */ (0,
|
|
13615
|
+
/* @__PURE__ */ (0, import_jsx_runtime269.jsx)(import_react_select.Value, { placeholder }),
|
|
13616
|
+
/* @__PURE__ */ (0, import_jsx_runtime269.jsx)(
|
|
13259
13617
|
Icon,
|
|
13260
13618
|
{
|
|
13261
13619
|
size: "md",
|
|
@@ -13265,10 +13623,10 @@ var Select = (0, import_react66.forwardRef)(
|
|
|
13265
13623
|
]
|
|
13266
13624
|
}
|
|
13267
13625
|
),
|
|
13268
|
-
/* @__PURE__ */ (0,
|
|
13269
|
-
/* @__PURE__ */ (0,
|
|
13270
|
-
/* @__PURE__ */ (0,
|
|
13271
|
-
/* @__PURE__ */ (0,
|
|
13626
|
+
/* @__PURE__ */ (0, import_jsx_runtime269.jsx)(import_react_select.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime269.jsxs)(StyledContent3, { position: "popper", children: [
|
|
13627
|
+
/* @__PURE__ */ (0, import_jsx_runtime269.jsx)(import_react_select.ScrollUpButton, { children: /* @__PURE__ */ (0, import_jsx_runtime269.jsx)(Icon, { type: "caret-up" }) }),
|
|
13628
|
+
/* @__PURE__ */ (0, import_jsx_runtime269.jsx)(import_react_select.Viewport, { children }),
|
|
13629
|
+
/* @__PURE__ */ (0, import_jsx_runtime269.jsx)(import_react_select.ScrollDownButton, { children: /* @__PURE__ */ (0, import_jsx_runtime269.jsx)(Icon, { type: "caret-down" }) })
|
|
13272
13630
|
] }) })
|
|
13273
13631
|
]
|
|
13274
13632
|
}
|
|
@@ -13279,11 +13637,11 @@ Select.displayName = "Select";
|
|
|
13279
13637
|
|
|
13280
13638
|
// src/components/Select/SelectOption.tsx
|
|
13281
13639
|
var import_react_select2 = require("@radix-ui/react-select");
|
|
13282
|
-
var
|
|
13283
|
-
var
|
|
13284
|
-
var
|
|
13285
|
-
var
|
|
13286
|
-
var StyledItem = (0,
|
|
13640
|
+
var import_react70 = require("react");
|
|
13641
|
+
var import_styled_components85 = __toESM(require("styled-components"));
|
|
13642
|
+
var import_type_guards58 = require("@wistia/type-guards");
|
|
13643
|
+
var import_jsx_runtime270 = require("react/jsx-runtime");
|
|
13644
|
+
var StyledItem = (0, import_styled_components85.default)(import_react_select2.Item)`
|
|
13287
13645
|
${variantStyleMap2.body3};
|
|
13288
13646
|
display: flex;
|
|
13289
13647
|
padding: var(--wui-select-option-padding);
|
|
@@ -13307,28 +13665,28 @@ var StyledItem = (0, import_styled_components82.default)(import_react_select2.It
|
|
|
13307
13665
|
background-color: transparent;
|
|
13308
13666
|
}
|
|
13309
13667
|
`;
|
|
13310
|
-
var StyledIconContainer =
|
|
13668
|
+
var StyledIconContainer = import_styled_components85.default.span`
|
|
13311
13669
|
width: 12px;
|
|
13312
13670
|
`;
|
|
13313
|
-
var SelectOption = (0,
|
|
13671
|
+
var SelectOption = (0, import_react70.forwardRef)(
|
|
13314
13672
|
({ children, selectedDisplayValue, ...props }, forwardedRef) => {
|
|
13315
|
-
return /* @__PURE__ */ (0,
|
|
13673
|
+
return /* @__PURE__ */ (0, import_jsx_runtime270.jsxs)(
|
|
13316
13674
|
StyledItem,
|
|
13317
13675
|
{
|
|
13318
13676
|
...props,
|
|
13319
13677
|
ref: forwardedRef,
|
|
13320
13678
|
children: [
|
|
13321
|
-
/* @__PURE__ */ (0,
|
|
13679
|
+
/* @__PURE__ */ (0, import_jsx_runtime270.jsx)(StyledIconContainer, { "data-indicator": true, children: /* @__PURE__ */ (0, import_jsx_runtime270.jsx)(import_react_select2.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime270.jsx)(
|
|
13322
13680
|
Icon,
|
|
13323
13681
|
{
|
|
13324
13682
|
size: "sm",
|
|
13325
13683
|
type: "checkmark"
|
|
13326
13684
|
}
|
|
13327
13685
|
) }) }),
|
|
13328
|
-
(0,
|
|
13686
|
+
(0, import_type_guards58.isNotNil)(selectedDisplayValue) ? /* @__PURE__ */ (0, import_jsx_runtime270.jsxs)("div", { children: [
|
|
13329
13687
|
children,
|
|
13330
|
-
/* @__PURE__ */ (0,
|
|
13331
|
-
] }) : /* @__PURE__ */ (0,
|
|
13688
|
+
/* @__PURE__ */ (0, import_jsx_runtime270.jsx)("div", { style: { display: "none" }, children: /* @__PURE__ */ (0, import_jsx_runtime270.jsx)(import_react_select2.ItemText, { children: selectedDisplayValue }) })
|
|
13689
|
+
] }) : /* @__PURE__ */ (0, import_jsx_runtime270.jsx)(import_react_select2.ItemText, { children })
|
|
13332
13690
|
]
|
|
13333
13691
|
}
|
|
13334
13692
|
);
|
|
@@ -13338,14 +13696,14 @@ SelectOption.displayName = "SelectOption";
|
|
|
13338
13696
|
|
|
13339
13697
|
// src/components/Select/SelectOptionGroup.tsx
|
|
13340
13698
|
var import_react_select3 = require("@radix-ui/react-select");
|
|
13341
|
-
var
|
|
13342
|
-
var
|
|
13343
|
-
var StyledLabel4 = (0,
|
|
13699
|
+
var import_styled_components86 = __toESM(require("styled-components"));
|
|
13700
|
+
var import_jsx_runtime271 = require("react/jsx-runtime");
|
|
13701
|
+
var StyledLabel4 = (0, import_styled_components86.default)(import_react_select3.Label)`
|
|
13344
13702
|
padding: var(--wui-select-option-padding);
|
|
13345
13703
|
`;
|
|
13346
13704
|
var SelectOptionGroup = ({ children, label, ...props }) => {
|
|
13347
|
-
return /* @__PURE__ */ (0,
|
|
13348
|
-
/* @__PURE__ */ (0,
|
|
13705
|
+
return /* @__PURE__ */ (0, import_jsx_runtime271.jsxs)(import_react_select3.Group, { ...props, children: [
|
|
13706
|
+
/* @__PURE__ */ (0, import_jsx_runtime271.jsx)(StyledLabel4, { children: /* @__PURE__ */ (0, import_jsx_runtime271.jsx)(
|
|
13349
13707
|
Text,
|
|
13350
13708
|
{
|
|
13351
13709
|
prominence: "secondary",
|
|
@@ -13359,10 +13717,10 @@ var SelectOptionGroup = ({ children, label, ...props }) => {
|
|
|
13359
13717
|
|
|
13360
13718
|
// src/components/Slider/Slider.tsx
|
|
13361
13719
|
var import_react_slider = require("@radix-ui/react-slider");
|
|
13362
|
-
var
|
|
13363
|
-
var
|
|
13364
|
-
var
|
|
13365
|
-
var SliderContainer =
|
|
13720
|
+
var import_styled_components87 = __toESM(require("styled-components"));
|
|
13721
|
+
var import_type_guards59 = require("@wistia/type-guards");
|
|
13722
|
+
var import_jsx_runtime272 = require("react/jsx-runtime");
|
|
13723
|
+
var SliderContainer = import_styled_components87.default.div`
|
|
13366
13724
|
--wui-slider-track-color: var(--wui-gray-6);
|
|
13367
13725
|
--wui-slider-track-border-radius: var(--wui-border-radius-rounded);
|
|
13368
13726
|
--wui-slider-range-color: var(--wui-color-bg-fill);
|
|
@@ -13378,7 +13736,7 @@ var SliderContainer = import_styled_components84.default.div`
|
|
|
13378
13736
|
pointer-events: none;
|
|
13379
13737
|
}
|
|
13380
13738
|
`;
|
|
13381
|
-
var StyledSliderRoot = (0,
|
|
13739
|
+
var StyledSliderRoot = (0, import_styled_components87.default)(import_react_slider.Root)`
|
|
13382
13740
|
position: relative;
|
|
13383
13741
|
display: flex;
|
|
13384
13742
|
align-items: center;
|
|
@@ -13386,20 +13744,20 @@ var StyledSliderRoot = (0, import_styled_components84.default)(import_react_slid
|
|
|
13386
13744
|
touch-action: none;
|
|
13387
13745
|
width: 100%;
|
|
13388
13746
|
`;
|
|
13389
|
-
var StyledSliderTrack = (0,
|
|
13747
|
+
var StyledSliderTrack = (0, import_styled_components87.default)(import_react_slider.Track)`
|
|
13390
13748
|
background-color: var(--wui-slider-track-color);
|
|
13391
13749
|
border-radius: var(--wui-slider-track-border-radius);
|
|
13392
13750
|
flex-grow: 1;
|
|
13393
13751
|
height: 6px;
|
|
13394
13752
|
position: relative;
|
|
13395
13753
|
`;
|
|
13396
|
-
var StyledSliderRange = (0,
|
|
13754
|
+
var StyledSliderRange = (0, import_styled_components87.default)(import_react_slider.Range)`
|
|
13397
13755
|
background-color: var(--wui-slider-range-color);
|
|
13398
13756
|
border-radius: var(--wui-slider-track-border-radius);
|
|
13399
13757
|
height: 100%;
|
|
13400
13758
|
position: absolute;
|
|
13401
13759
|
`;
|
|
13402
|
-
var StyledSliderThumb = (0,
|
|
13760
|
+
var StyledSliderThumb = (0, import_styled_components87.default)(import_react_slider.Thumb)`
|
|
13403
13761
|
background-color: var(--wui-slider-thumb-color);
|
|
13404
13762
|
border-radius: var(--wui-border-radius-rounded);
|
|
13405
13763
|
cursor: grab;
|
|
@@ -13439,7 +13797,7 @@ var Slider = ({
|
|
|
13439
13797
|
"data-testid": dataTestId = "ui-slider",
|
|
13440
13798
|
...otherProps
|
|
13441
13799
|
}) => {
|
|
13442
|
-
if (!((0,
|
|
13800
|
+
if (!((0, import_type_guards59.isNonEmptyString)(ariaLabel) || (0, import_type_guards59.isNonEmptyString)(ariaLabelledby))) {
|
|
13443
13801
|
throw new Error(
|
|
13444
13802
|
"UI Slider: Sliders should have an accessible name. Add a label using the aria-label or aria-labelledby prop."
|
|
13445
13803
|
);
|
|
@@ -13450,12 +13808,12 @@ var Slider = ({
|
|
|
13450
13808
|
onChange(newValue);
|
|
13451
13809
|
}
|
|
13452
13810
|
};
|
|
13453
|
-
return /* @__PURE__ */ (0,
|
|
13811
|
+
return /* @__PURE__ */ (0, import_jsx_runtime272.jsx)(
|
|
13454
13812
|
SliderContainer,
|
|
13455
13813
|
{
|
|
13456
13814
|
...otherProps,
|
|
13457
13815
|
"data-testid": dataTestId,
|
|
13458
|
-
children: /* @__PURE__ */ (0,
|
|
13816
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime272.jsxs)(
|
|
13459
13817
|
StyledSliderRoot,
|
|
13460
13818
|
{
|
|
13461
13819
|
"aria-label": ariaLabel,
|
|
@@ -13468,8 +13826,8 @@ var Slider = ({
|
|
|
13468
13826
|
step,
|
|
13469
13827
|
...value ? { value } : {},
|
|
13470
13828
|
children: [
|
|
13471
|
-
/* @__PURE__ */ (0,
|
|
13472
|
-
values.map((_, index) => /* @__PURE__ */ (0,
|
|
13829
|
+
/* @__PURE__ */ (0, import_jsx_runtime272.jsx)(StyledSliderTrack, { "data-testid": `${dataTestId}-track`, children: /* @__PURE__ */ (0, import_jsx_runtime272.jsx)(StyledSliderRange, { "data-testid": `${dataTestId}-range` }) }),
|
|
13830
|
+
values.map((_, index) => /* @__PURE__ */ (0, import_jsx_runtime272.jsx)(
|
|
13473
13831
|
StyledSliderThumb,
|
|
13474
13832
|
{
|
|
13475
13833
|
"data-testid": `${dataTestId}-thumb-${index}`
|
|
@@ -13485,11 +13843,11 @@ var Slider = ({
|
|
|
13485
13843
|
Slider.displayName = "Slider";
|
|
13486
13844
|
|
|
13487
13845
|
// src/components/Switch/Switch.tsx
|
|
13488
|
-
var
|
|
13489
|
-
var
|
|
13490
|
-
var
|
|
13491
|
-
var
|
|
13492
|
-
var sizeSmall3 =
|
|
13846
|
+
var import_react71 = require("react");
|
|
13847
|
+
var import_styled_components88 = __toESM(require("styled-components"));
|
|
13848
|
+
var import_type_guards60 = require("@wistia/type-guards");
|
|
13849
|
+
var import_jsx_runtime273 = require("react/jsx-runtime");
|
|
13850
|
+
var sizeSmall3 = import_styled_components88.css`
|
|
13493
13851
|
--wui-size-small-width: 24px;
|
|
13494
13852
|
--wui-size-small-height: 14px;
|
|
13495
13853
|
|
|
@@ -13504,7 +13862,7 @@ var sizeSmall3 = import_styled_components85.css`
|
|
|
13504
13862
|
height: calc(var(--wui-size-small-width) / 2);
|
|
13505
13863
|
}
|
|
13506
13864
|
`;
|
|
13507
|
-
var sizeMedium3 =
|
|
13865
|
+
var sizeMedium3 = import_styled_components88.css`
|
|
13508
13866
|
--wui-size-medium-width: 32px;
|
|
13509
13867
|
--wui-size-medium-height: 18px;
|
|
13510
13868
|
|
|
@@ -13519,7 +13877,7 @@ var sizeMedium3 = import_styled_components85.css`
|
|
|
13519
13877
|
height: calc(var(--wui-size-medium-width) / 2);
|
|
13520
13878
|
}
|
|
13521
13879
|
`;
|
|
13522
|
-
var sizeLarge3 =
|
|
13880
|
+
var sizeLarge3 = import_styled_components88.css`
|
|
13523
13881
|
--wui-size-large-width: 40px;
|
|
13524
13882
|
--wui-size-large-height: 22px;
|
|
13525
13883
|
|
|
@@ -13539,14 +13897,14 @@ var getSizeCss3 = (size) => {
|
|
|
13539
13897
|
if (size === "lg") return sizeLarge3;
|
|
13540
13898
|
return sizeMedium3;
|
|
13541
13899
|
};
|
|
13542
|
-
var StyledSwitchWrapper =
|
|
13900
|
+
var StyledSwitchWrapper = import_styled_components88.default.div`
|
|
13543
13901
|
display: flex;
|
|
13544
13902
|
margin: 0;
|
|
13545
13903
|
|
|
13546
13904
|
/* TODO this solves a problem but potentially causes and a11y issue */
|
|
13547
13905
|
user-select: none;
|
|
13548
13906
|
`;
|
|
13549
|
-
var StyledSwitchInput =
|
|
13907
|
+
var StyledSwitchInput = import_styled_components88.default.div`
|
|
13550
13908
|
${({ $size }) => getSizeCss3($size)}
|
|
13551
13909
|
line-height: 0;
|
|
13552
13910
|
margin: 0;
|
|
@@ -13574,7 +13932,7 @@ var StyledSwitchInput = import_styled_components85.default.div`
|
|
|
13574
13932
|
transition: all 0.2s ease-in-out;
|
|
13575
13933
|
}
|
|
13576
13934
|
`;
|
|
13577
|
-
var StyledHiddenSwitchInput =
|
|
13935
|
+
var StyledHiddenSwitchInput = import_styled_components88.default.input`
|
|
13578
13936
|
${visuallyHiddenStyle}
|
|
13579
13937
|
|
|
13580
13938
|
/* toggles display of faux-input background-color and toggle position */
|
|
@@ -13590,7 +13948,7 @@ var StyledHiddenSwitchInput = import_styled_components85.default.input`
|
|
|
13590
13948
|
}
|
|
13591
13949
|
}
|
|
13592
13950
|
`;
|
|
13593
|
-
var Switch = (0,
|
|
13951
|
+
var Switch = (0, import_react71.forwardRef)(
|
|
13594
13952
|
({
|
|
13595
13953
|
align = "left",
|
|
13596
13954
|
checked,
|
|
@@ -13606,10 +13964,10 @@ var Switch = (0, import_react68.forwardRef)(
|
|
|
13606
13964
|
hideLabel = false,
|
|
13607
13965
|
...props
|
|
13608
13966
|
}, ref) => {
|
|
13609
|
-
const generatedId = (0,
|
|
13610
|
-
const computedId = (0,
|
|
13611
|
-
return /* @__PURE__ */ (0,
|
|
13612
|
-
/* @__PURE__ */ (0,
|
|
13967
|
+
const generatedId = (0, import_react71.useId)();
|
|
13968
|
+
const computedId = (0, import_type_guards60.isNonEmptyString)(id) ? id : `wistia-ui-switch-${generatedId}`;
|
|
13969
|
+
return /* @__PURE__ */ (0, import_jsx_runtime273.jsxs)(StyledSwitchWrapper, { $disabled: disabled, children: [
|
|
13970
|
+
/* @__PURE__ */ (0, import_jsx_runtime273.jsx)(
|
|
13613
13971
|
StyledHiddenSwitchInput,
|
|
13614
13972
|
{
|
|
13615
13973
|
...props,
|
|
@@ -13624,11 +13982,11 @@ var Switch = (0, import_react68.forwardRef)(
|
|
|
13624
13982
|
value
|
|
13625
13983
|
}
|
|
13626
13984
|
),
|
|
13627
|
-
/* @__PURE__ */ (0,
|
|
13985
|
+
/* @__PURE__ */ (0, import_jsx_runtime273.jsx)(
|
|
13628
13986
|
FormControlLabel,
|
|
13629
13987
|
{
|
|
13630
13988
|
align,
|
|
13631
|
-
controlSlot: /* @__PURE__ */ (0,
|
|
13989
|
+
controlSlot: /* @__PURE__ */ (0, import_jsx_runtime273.jsx)(
|
|
13632
13990
|
StyledSwitchInput,
|
|
13633
13991
|
{
|
|
13634
13992
|
$disabled: disabled,
|
|
@@ -13650,25 +14008,25 @@ var Switch = (0, import_react68.forwardRef)(
|
|
|
13650
14008
|
Switch.displayName = "Switch";
|
|
13651
14009
|
|
|
13652
14010
|
// src/components/Table/Table.tsx
|
|
13653
|
-
var
|
|
13654
|
-
var
|
|
13655
|
-
var StyledTable =
|
|
14011
|
+
var import_styled_components89 = __toESM(require("styled-components"));
|
|
14012
|
+
var import_jsx_runtime274 = require("react/jsx-runtime");
|
|
14013
|
+
var StyledTable = import_styled_components89.default.table`
|
|
13656
14014
|
width: 100%;
|
|
13657
14015
|
border-collapse: collapse;
|
|
13658
14016
|
|
|
13659
|
-
${({ $divided }) => $divided &&
|
|
14017
|
+
${({ $divided }) => $divided && import_styled_components89.css`
|
|
13660
14018
|
tr {
|
|
13661
14019
|
border-bottom: 1px solid var(--wui-color-border);
|
|
13662
14020
|
}
|
|
13663
14021
|
`}
|
|
13664
14022
|
|
|
13665
|
-
${({ $striped }) => $striped &&
|
|
14023
|
+
${({ $striped }) => $striped && import_styled_components89.css`
|
|
13666
14024
|
tbody tr:nth-child(even) {
|
|
13667
14025
|
background-color: var(--wui-color-bg-surface-secondary);
|
|
13668
14026
|
}
|
|
13669
14027
|
`}
|
|
13670
14028
|
|
|
13671
|
-
${({ $visuallyHiddenHeader }) => $visuallyHiddenHeader &&
|
|
14029
|
+
${({ $visuallyHiddenHeader }) => $visuallyHiddenHeader && import_styled_components89.css`
|
|
13672
14030
|
thead {
|
|
13673
14031
|
${visuallyHiddenStyle}
|
|
13674
14032
|
}
|
|
@@ -13681,7 +14039,7 @@ var Table = ({
|
|
|
13681
14039
|
visuallyHiddenHeader = false,
|
|
13682
14040
|
...props
|
|
13683
14041
|
}) => {
|
|
13684
|
-
return /* @__PURE__ */ (0,
|
|
14042
|
+
return /* @__PURE__ */ (0, import_jsx_runtime274.jsx)(
|
|
13685
14043
|
StyledTable,
|
|
13686
14044
|
{
|
|
13687
14045
|
$divided: divided,
|
|
@@ -13694,83 +14052,83 @@ var Table = ({
|
|
|
13694
14052
|
};
|
|
13695
14053
|
|
|
13696
14054
|
// src/components/Table/TableBody.tsx
|
|
13697
|
-
var
|
|
14055
|
+
var import_styled_components90 = __toESM(require("styled-components"));
|
|
13698
14056
|
|
|
13699
14057
|
// src/components/Table/TableSectionContext.ts
|
|
13700
|
-
var
|
|
13701
|
-
var TableSectionContext = (0,
|
|
14058
|
+
var import_react72 = require("react");
|
|
14059
|
+
var TableSectionContext = (0, import_react72.createContext)(null);
|
|
13702
14060
|
|
|
13703
14061
|
// src/components/Table/TableBody.tsx
|
|
13704
|
-
var
|
|
13705
|
-
var StyledTableBody =
|
|
14062
|
+
var import_jsx_runtime275 = require("react/jsx-runtime");
|
|
14063
|
+
var StyledTableBody = import_styled_components90.default.tbody``;
|
|
13706
14064
|
var TableBody = ({ children, ...props }) => {
|
|
13707
|
-
return /* @__PURE__ */ (0,
|
|
14065
|
+
return /* @__PURE__ */ (0, import_jsx_runtime275.jsx)(TableSectionContext.Provider, { value: "body", children: /* @__PURE__ */ (0, import_jsx_runtime275.jsx)(StyledTableBody, { ...props, children }) });
|
|
13708
14066
|
};
|
|
13709
14067
|
|
|
13710
14068
|
// src/components/Table/TableCell.tsx
|
|
13711
|
-
var
|
|
13712
|
-
var
|
|
13713
|
-
var
|
|
13714
|
-
var sharedStyles =
|
|
14069
|
+
var import_react73 = require("react");
|
|
14070
|
+
var import_styled_components91 = __toESM(require("styled-components"));
|
|
14071
|
+
var import_jsx_runtime276 = require("react/jsx-runtime");
|
|
14072
|
+
var sharedStyles = import_styled_components91.css`
|
|
13715
14073
|
color: var(--wui-color-text);
|
|
13716
14074
|
padding: var(--wui-space-02);
|
|
13717
14075
|
text-align: left;
|
|
13718
14076
|
`;
|
|
13719
|
-
var StyledTh =
|
|
14077
|
+
var StyledTh = import_styled_components91.default.th`
|
|
13720
14078
|
${sharedStyles}
|
|
13721
14079
|
font-size: var(--wui-typography-body-4-size);
|
|
13722
14080
|
font-weight: var(--wui-typography-weight-label-bold);
|
|
13723
14081
|
line-height: var(--wui-typography-body-4-line-height);
|
|
13724
14082
|
`;
|
|
13725
|
-
var StyledTd =
|
|
14083
|
+
var StyledTd = import_styled_components91.default.td`
|
|
13726
14084
|
${sharedStyles}
|
|
13727
14085
|
font-size: var(--wui-typography-body-2-size);
|
|
13728
14086
|
font-weight: var(--wui-typography-body-2-weight);
|
|
13729
14087
|
line-height: var(--wui-typography-body-2-line-height);
|
|
13730
14088
|
`;
|
|
13731
14089
|
var TableCell = ({ children, ...props }) => {
|
|
13732
|
-
const section = (0,
|
|
14090
|
+
const section = (0, import_react73.useContext)(TableSectionContext);
|
|
13733
14091
|
if (section === "head") {
|
|
13734
|
-
return /* @__PURE__ */ (0,
|
|
14092
|
+
return /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(StyledTh, { ...props, children });
|
|
13735
14093
|
}
|
|
13736
|
-
return /* @__PURE__ */ (0,
|
|
14094
|
+
return /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(StyledTd, { ...props, children });
|
|
13737
14095
|
};
|
|
13738
14096
|
|
|
13739
14097
|
// src/components/Table/TableFoot.tsx
|
|
13740
|
-
var
|
|
13741
|
-
var
|
|
13742
|
-
var StyledTableFoot =
|
|
14098
|
+
var import_styled_components92 = __toESM(require("styled-components"));
|
|
14099
|
+
var import_jsx_runtime277 = require("react/jsx-runtime");
|
|
14100
|
+
var StyledTableFoot = import_styled_components92.default.tfoot``;
|
|
13743
14101
|
var TableFoot = ({ children, ...props }) => {
|
|
13744
|
-
return /* @__PURE__ */ (0,
|
|
14102
|
+
return /* @__PURE__ */ (0, import_jsx_runtime277.jsx)(TableSectionContext.Provider, { value: "footer", children: /* @__PURE__ */ (0, import_jsx_runtime277.jsx)(StyledTableFoot, { ...props, children }) });
|
|
13745
14103
|
};
|
|
13746
14104
|
|
|
13747
14105
|
// src/components/Table/TableHead.tsx
|
|
13748
|
-
var
|
|
13749
|
-
var
|
|
13750
|
-
var StyledThead =
|
|
14106
|
+
var import_styled_components93 = __toESM(require("styled-components"));
|
|
14107
|
+
var import_jsx_runtime278 = require("react/jsx-runtime");
|
|
14108
|
+
var StyledThead = import_styled_components93.default.thead``;
|
|
13751
14109
|
var TableHead = ({ children, ...props }) => {
|
|
13752
|
-
return /* @__PURE__ */ (0,
|
|
14110
|
+
return /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(TableSectionContext.Provider, { value: "head", children: /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(StyledThead, { ...props, children }) });
|
|
13753
14111
|
};
|
|
13754
14112
|
|
|
13755
14113
|
// src/components/Table/TableRow.tsx
|
|
13756
|
-
var
|
|
13757
|
-
var
|
|
13758
|
-
var StyledTableRow =
|
|
14114
|
+
var import_styled_components94 = __toESM(require("styled-components"));
|
|
14115
|
+
var import_jsx_runtime279 = require("react/jsx-runtime");
|
|
14116
|
+
var StyledTableRow = import_styled_components94.default.tr``;
|
|
13759
14117
|
var TableRow = ({ children, ...props }) => {
|
|
13760
|
-
return /* @__PURE__ */ (0,
|
|
14118
|
+
return /* @__PURE__ */ (0, import_jsx_runtime279.jsx)(StyledTableRow, { ...props, children });
|
|
13761
14119
|
};
|
|
13762
14120
|
|
|
13763
14121
|
// src/components/Tabs/Tabs.tsx
|
|
13764
14122
|
var import_react_tabs = require("@radix-ui/react-tabs");
|
|
13765
|
-
var
|
|
13766
|
-
var
|
|
14123
|
+
var import_react75 = require("react");
|
|
14124
|
+
var import_type_guards61 = require("@wistia/type-guards");
|
|
13767
14125
|
|
|
13768
14126
|
// src/components/Tabs/useTabsValue.tsx
|
|
13769
|
-
var
|
|
13770
|
-
var TabsValueContext = (0,
|
|
14127
|
+
var import_react74 = require("react");
|
|
14128
|
+
var TabsValueContext = (0, import_react74.createContext)(null);
|
|
13771
14129
|
var TabsValueProvider = TabsValueContext.Provider;
|
|
13772
14130
|
var useTabsValue = () => {
|
|
13773
|
-
const context = (0,
|
|
14131
|
+
const context = (0, import_react74.useContext)(TabsValueContext);
|
|
13774
14132
|
if (context === null) {
|
|
13775
14133
|
throw new Error("useTabsValue must be used within a TabsValueProvider");
|
|
13776
14134
|
}
|
|
@@ -13778,7 +14136,7 @@ var useTabsValue = () => {
|
|
|
13778
14136
|
};
|
|
13779
14137
|
|
|
13780
14138
|
// src/components/Tabs/Tabs.tsx
|
|
13781
|
-
var
|
|
14139
|
+
var import_jsx_runtime280 = require("react/jsx-runtime");
|
|
13782
14140
|
var Tabs = ({
|
|
13783
14141
|
children,
|
|
13784
14142
|
value: valueProp,
|
|
@@ -13786,8 +14144,8 @@ var Tabs = ({
|
|
|
13786
14144
|
defaultValue,
|
|
13787
14145
|
...props
|
|
13788
14146
|
}) => {
|
|
13789
|
-
const [value, setValue] = (0,
|
|
13790
|
-
const onValueChange = (0,
|
|
14147
|
+
const [value, setValue] = (0, import_react75.useState)(valueProp ?? defaultValue);
|
|
14148
|
+
const onValueChange = (0, import_react75.useCallback)(
|
|
13791
14149
|
(newValue) => {
|
|
13792
14150
|
setValue(newValue);
|
|
13793
14151
|
if (onValueChangeProp) {
|
|
@@ -13800,48 +14158,48 @@ var Tabs = ({
|
|
|
13800
14158
|
...props,
|
|
13801
14159
|
onValueChange
|
|
13802
14160
|
};
|
|
13803
|
-
if ((0,
|
|
14161
|
+
if ((0, import_type_guards61.isNotNil)(value)) {
|
|
13804
14162
|
rootProps.value = value;
|
|
13805
14163
|
}
|
|
13806
|
-
if ((0,
|
|
14164
|
+
if ((0, import_type_guards61.isNotNil)(defaultValue)) {
|
|
13807
14165
|
rootProps.defaultValue = defaultValue;
|
|
13808
14166
|
}
|
|
13809
|
-
return /* @__PURE__ */ (0,
|
|
14167
|
+
return /* @__PURE__ */ (0, import_jsx_runtime280.jsx)(import_react_tabs.Root, { ...rootProps, children: /* @__PURE__ */ (0, import_jsx_runtime280.jsx)(TabsValueProvider, { value: value ?? defaultValue, children: /* @__PURE__ */ (0, import_jsx_runtime280.jsx)(SelectedItemStyleProvider, { children }) }) });
|
|
13810
14168
|
};
|
|
13811
14169
|
Tabs.displayName = "Tabs";
|
|
13812
14170
|
|
|
13813
14171
|
// src/components/Tabs/TabsContent.tsx
|
|
13814
14172
|
var import_react_tabs2 = require("@radix-ui/react-tabs");
|
|
13815
|
-
var
|
|
14173
|
+
var import_jsx_runtime281 = require("react/jsx-runtime");
|
|
13816
14174
|
var TabsContent = ({ children, value }) => {
|
|
13817
|
-
return /* @__PURE__ */ (0,
|
|
14175
|
+
return /* @__PURE__ */ (0, import_jsx_runtime281.jsx)(import_react_tabs2.Content, { value, children });
|
|
13818
14176
|
};
|
|
13819
14177
|
TabsContent.displayName = "TabsContent";
|
|
13820
14178
|
|
|
13821
14179
|
// src/components/Tabs/TabsList.tsx
|
|
13822
14180
|
var import_react_tabs3 = require("@radix-ui/react-tabs");
|
|
13823
|
-
var
|
|
14181
|
+
var import_styled_components96 = __toESM(require("styled-components"));
|
|
13824
14182
|
|
|
13825
14183
|
// src/components/Tabs/SelectedTabIndicator.tsx
|
|
13826
|
-
var
|
|
14184
|
+
var import_type_guards62 = require("@wistia/type-guards");
|
|
13827
14185
|
|
|
13828
14186
|
// src/components/Tabs/TabsSelectedItemIndicatorDiv.tsx
|
|
13829
|
-
var
|
|
13830
|
-
var TabsSelectedItemIndicatorDiv = (0,
|
|
14187
|
+
var import_styled_components95 = __toESM(require("styled-components"));
|
|
14188
|
+
var TabsSelectedItemIndicatorDiv = (0, import_styled_components95.default)(SelectedItemIndicatorDiv)`
|
|
13831
14189
|
&:has(~ button[role='tab']:focus-visible) {
|
|
13832
14190
|
outline: 2px solid var(--wui-color-focus-ring);
|
|
13833
14191
|
}
|
|
13834
14192
|
`;
|
|
13835
14193
|
|
|
13836
14194
|
// src/components/Tabs/SelectedTabIndicator.tsx
|
|
13837
|
-
var
|
|
14195
|
+
var import_jsx_runtime282 = require("react/jsx-runtime");
|
|
13838
14196
|
var SelectedTabIndicator = () => {
|
|
13839
14197
|
const { selectedItemIndicatorStyle } = useSelectedItemStyle();
|
|
13840
14198
|
const selectedValue = useTabsValue();
|
|
13841
|
-
if (selectedValue == null || (0,
|
|
14199
|
+
if (selectedValue == null || (0, import_type_guards62.isUndefined)(selectedItemIndicatorStyle)) {
|
|
13842
14200
|
return null;
|
|
13843
14201
|
}
|
|
13844
|
-
return /* @__PURE__ */ (0,
|
|
14202
|
+
return /* @__PURE__ */ (0, import_jsx_runtime282.jsx)(
|
|
13845
14203
|
TabsSelectedItemIndicatorDiv,
|
|
13846
14204
|
{
|
|
13847
14205
|
"data-wui-selected-item-indicator": true,
|
|
@@ -13851,19 +14209,19 @@ var SelectedTabIndicator = () => {
|
|
|
13851
14209
|
};
|
|
13852
14210
|
|
|
13853
14211
|
// src/components/Tabs/TabsList.tsx
|
|
13854
|
-
var
|
|
13855
|
-
var StyledRadixTabsList = (0,
|
|
14212
|
+
var import_jsx_runtime283 = require("react/jsx-runtime");
|
|
14213
|
+
var StyledRadixTabsList = (0, import_styled_components96.default)(import_react_tabs3.List)`
|
|
13856
14214
|
${segmentedControlStyles}
|
|
13857
14215
|
`;
|
|
13858
14216
|
var TabsList = ({ children, fullWidth = true, ...props }) => {
|
|
13859
|
-
return /* @__PURE__ */ (0,
|
|
14217
|
+
return /* @__PURE__ */ (0, import_jsx_runtime283.jsxs)(
|
|
13860
14218
|
StyledRadixTabsList,
|
|
13861
14219
|
{
|
|
13862
14220
|
$fullWidth: fullWidth,
|
|
13863
14221
|
"aria-label": props["aria-label"],
|
|
13864
14222
|
children: [
|
|
13865
14223
|
children,
|
|
13866
|
-
/* @__PURE__ */ (0,
|
|
14224
|
+
/* @__PURE__ */ (0, import_jsx_runtime283.jsx)(SelectedTabIndicator, {})
|
|
13867
14225
|
]
|
|
13868
14226
|
}
|
|
13869
14227
|
);
|
|
@@ -13871,13 +14229,13 @@ var TabsList = ({ children, fullWidth = true, ...props }) => {
|
|
|
13871
14229
|
TabsList.displayName = "TabsList";
|
|
13872
14230
|
|
|
13873
14231
|
// src/components/Tabs/TabsTrigger.tsx
|
|
13874
|
-
var
|
|
13875
|
-
var
|
|
14232
|
+
var import_react76 = require("react");
|
|
14233
|
+
var import_type_guards63 = require("@wistia/type-guards");
|
|
13876
14234
|
|
|
13877
14235
|
// src/components/Tabs/StyledRadixTabsTrigger.tsx
|
|
13878
|
-
var
|
|
14236
|
+
var import_styled_components97 = __toESM(require("styled-components"));
|
|
13879
14237
|
var import_react_tabs4 = require("@radix-ui/react-tabs");
|
|
13880
|
-
var StyledRadixTabsTrigger = (0,
|
|
14238
|
+
var StyledRadixTabsTrigger = (0, import_styled_components97.default)(import_react_tabs4.Trigger)`
|
|
13881
14239
|
${segmentedControlItemStyles}
|
|
13882
14240
|
|
|
13883
14241
|
&:focus-visible {
|
|
@@ -13886,14 +14244,14 @@ var StyledRadixTabsTrigger = (0, import_styled_components94.default)(import_reac
|
|
|
13886
14244
|
`;
|
|
13887
14245
|
|
|
13888
14246
|
// src/components/Tabs/TabsTrigger.tsx
|
|
13889
|
-
var
|
|
13890
|
-
var TabsTrigger = (0,
|
|
14247
|
+
var import_jsx_runtime284 = require("react/jsx-runtime");
|
|
14248
|
+
var TabsTrigger = (0, import_react76.forwardRef)(
|
|
13891
14249
|
({ disabled = false, icon, label, "aria-label": ariaLabel, value, ...otherProps }, forwardedRef) => {
|
|
13892
14250
|
const selectedValue = useTabsValue();
|
|
13893
14251
|
const { setSelectedItemMeasurements } = useSelectedItemStyle();
|
|
13894
|
-
const buttonRef = (0,
|
|
14252
|
+
const buttonRef = (0, import_react76.useRef)(null);
|
|
13895
14253
|
const combinedRef = mergeRefs([buttonRef, forwardedRef]);
|
|
13896
|
-
(0,
|
|
14254
|
+
(0, import_react76.useEffect)(() => {
|
|
13897
14255
|
const buttonElem = buttonRef.current;
|
|
13898
14256
|
if (!buttonElem) {
|
|
13899
14257
|
return void 0;
|
|
@@ -13918,13 +14276,13 @@ var TabsTrigger = (0, import_react73.forwardRef)(
|
|
|
13918
14276
|
resizeObserver.disconnect();
|
|
13919
14277
|
};
|
|
13920
14278
|
}, [selectedValue, setSelectedItemMeasurements, value]);
|
|
13921
|
-
return /* @__PURE__ */ (0,
|
|
14279
|
+
return /* @__PURE__ */ (0, import_jsx_runtime284.jsxs)(
|
|
13922
14280
|
StyledRadixTabsTrigger,
|
|
13923
14281
|
{
|
|
13924
14282
|
...otherProps,
|
|
13925
14283
|
ref: combinedRef,
|
|
13926
|
-
$hasLabel: (0,
|
|
13927
|
-
"aria-label": (0,
|
|
14284
|
+
$hasLabel: (0, import_type_guards63.isNotNil)(label),
|
|
14285
|
+
"aria-label": (0, import_type_guards63.isNotNil)(label) ? void 0 : ariaLabel,
|
|
13928
14286
|
disabled,
|
|
13929
14287
|
value,
|
|
13930
14288
|
children: [
|
|
@@ -13938,10 +14296,10 @@ var TabsTrigger = (0, import_react73.forwardRef)(
|
|
|
13938
14296
|
TabsTrigger.displayName = "TabsTrigger";
|
|
13939
14297
|
|
|
13940
14298
|
// src/components/Thumbnail/ThumbnailBadge.tsx
|
|
13941
|
-
var
|
|
13942
|
-
var
|
|
13943
|
-
var
|
|
13944
|
-
var StyledThumbnailBadge =
|
|
14299
|
+
var import_styled_components98 = __toESM(require("styled-components"));
|
|
14300
|
+
var import_type_guards64 = require("@wistia/type-guards");
|
|
14301
|
+
var import_jsx_runtime285 = require("react/jsx-runtime");
|
|
14302
|
+
var StyledThumbnailBadge = import_styled_components98.default.div`
|
|
13945
14303
|
align-items: center;
|
|
13946
14304
|
background-color: rgb(0 0 0 / 50%);
|
|
13947
14305
|
border-radius: var(--wui-border-radius-01);
|
|
@@ -13966,23 +14324,23 @@ var StyledThumbnailBadge = import_styled_components95.default.div`
|
|
|
13966
14324
|
}
|
|
13967
14325
|
`;
|
|
13968
14326
|
var ThumbnailBadge = ({ icon, label, ...props }) => {
|
|
13969
|
-
return /* @__PURE__ */ (0,
|
|
13970
|
-
(0,
|
|
13971
|
-
/* @__PURE__ */ (0,
|
|
14327
|
+
return /* @__PURE__ */ (0, import_jsx_runtime285.jsxs)(StyledThumbnailBadge, { ...props, children: [
|
|
14328
|
+
(0, import_type_guards64.isNotNil)(icon) && icon,
|
|
14329
|
+
/* @__PURE__ */ (0, import_jsx_runtime285.jsx)("span", { children: label })
|
|
13972
14330
|
] });
|
|
13973
14331
|
};
|
|
13974
14332
|
ThumbnailBadge.displayName = "ThumbnailBadge";
|
|
13975
14333
|
|
|
13976
14334
|
// src/components/Thumbnail/Thumbnail.tsx
|
|
13977
|
-
var
|
|
13978
|
-
var
|
|
13979
|
-
var
|
|
14335
|
+
var import_react77 = require("react");
|
|
14336
|
+
var import_styled_components101 = __toESM(require("styled-components"));
|
|
14337
|
+
var import_type_guards67 = require("@wistia/type-guards");
|
|
13980
14338
|
|
|
13981
14339
|
// src/private/helpers/getBackgroundGradient/getBackgroundGradient.ts
|
|
13982
|
-
var
|
|
13983
|
-
var
|
|
14340
|
+
var import_type_guards65 = require("@wistia/type-guards");
|
|
14341
|
+
var import_styled_components99 = require("styled-components");
|
|
13984
14342
|
var gradients = {
|
|
13985
|
-
defaultDarkOne:
|
|
14343
|
+
defaultDarkOne: import_styled_components99.css`
|
|
13986
14344
|
background-color: #222d66;
|
|
13987
14345
|
background-image:
|
|
13988
14346
|
radial-gradient(farthest-corner at top right, #222d66, transparent 70%),
|
|
@@ -13990,7 +14348,7 @@ var gradients = {
|
|
|
13990
14348
|
radial-gradient(farthest-corner at bottom left, #6b84ff, transparent 57%),
|
|
13991
14349
|
radial-gradient(farthest-corner at top left, #2949e5, transparent 68%);
|
|
13992
14350
|
`,
|
|
13993
|
-
defaultDarkTwo:
|
|
14351
|
+
defaultDarkTwo: import_styled_components99.css`
|
|
13994
14352
|
background-color: #222d66;
|
|
13995
14353
|
background-image:
|
|
13996
14354
|
radial-gradient(farthest-corner at top left, #6b84ff, transparent 100%),
|
|
@@ -13998,7 +14356,7 @@ var gradients = {
|
|
|
13998
14356
|
radial-gradient(farthest-corner at bottom right, #2949e5, transparent 50%),
|
|
13999
14357
|
radial-gradient(farthest-corner at top right, #2949e5, transparent 70%);
|
|
14000
14358
|
`,
|
|
14001
|
-
defaultLightOne:
|
|
14359
|
+
defaultLightOne: import_styled_components99.css`
|
|
14002
14360
|
background-color: #ccd5ff;
|
|
14003
14361
|
background-image:
|
|
14004
14362
|
radial-gradient(farthest-corner at bottom right, #ccd5ff, transparent 55%),
|
|
@@ -14006,13 +14364,13 @@ var gradients = {
|
|
|
14006
14364
|
radial-gradient(farthest-corner at top right, #6b84ff, transparent 50%),
|
|
14007
14365
|
radial-gradient(farthest-corner at bottom left, #f7f8ff, transparent 50%);
|
|
14008
14366
|
`,
|
|
14009
|
-
defaultLightTwo:
|
|
14367
|
+
defaultLightTwo: import_styled_components99.css`
|
|
14010
14368
|
background-color: #ccd5ff;
|
|
14011
14369
|
background-image:
|
|
14012
14370
|
radial-gradient(ellipse at top, #ccd5ff, transparent),
|
|
14013
14371
|
radial-gradient(ellipse at bottom, #6b84ff, transparent);
|
|
14014
14372
|
`,
|
|
14015
|
-
defaultMidOne:
|
|
14373
|
+
defaultMidOne: import_styled_components99.css`
|
|
14016
14374
|
background-color: #6b84ff;
|
|
14017
14375
|
background-image:
|
|
14018
14376
|
radial-gradient(farthest-corner at top right, #2949e5, transparent 70%),
|
|
@@ -14020,13 +14378,13 @@ var gradients = {
|
|
|
14020
14378
|
radial-gradient(farthest-corner at top left, #6b84ff, transparent 80%),
|
|
14021
14379
|
radial-gradient(farthest-corner at bottom left, #222d66, transparent 57%);
|
|
14022
14380
|
`,
|
|
14023
|
-
defaultMidTwo:
|
|
14381
|
+
defaultMidTwo: import_styled_components99.css`
|
|
14024
14382
|
background-color: #6b84ff;
|
|
14025
14383
|
background-image:
|
|
14026
14384
|
radial-gradient(ellipse at top, #2949e5, transparent),
|
|
14027
14385
|
radial-gradient(ellipse at bottom, #ccd5ff, transparent);
|
|
14028
14386
|
`,
|
|
14029
|
-
green:
|
|
14387
|
+
green: import_styled_components99.css`
|
|
14030
14388
|
background-color: #fafffa;
|
|
14031
14389
|
background-image:
|
|
14032
14390
|
radial-gradient(farthest-corner at bottom left, #b0e5a5, transparent 50%),
|
|
@@ -14034,7 +14392,7 @@ var gradients = {
|
|
|
14034
14392
|
radial-gradient(farthest-corner at top left, #44b62d, transparent 65%),
|
|
14035
14393
|
radial-gradient(farthest-corner at bottom right, #44b62d, transparent 55%);
|
|
14036
14394
|
`,
|
|
14037
|
-
greenWithPop:
|
|
14395
|
+
greenWithPop: import_styled_components99.css`
|
|
14038
14396
|
background-color: #fafffa;
|
|
14039
14397
|
background-image:
|
|
14040
14398
|
radial-gradient(farthest-corner at bottom left, #b0e5a5, transparent 50%),
|
|
@@ -14042,7 +14400,7 @@ var gradients = {
|
|
|
14042
14400
|
radial-gradient(farthest-corner at top left, #44b62d, transparent 65%),
|
|
14043
14401
|
radial-gradient(farthest-corner at bottom right, #44b62d, transparent 55%);
|
|
14044
14402
|
`,
|
|
14045
|
-
pink:
|
|
14403
|
+
pink: import_styled_components99.css`
|
|
14046
14404
|
background-color: #fffff0;
|
|
14047
14405
|
background-image:
|
|
14048
14406
|
radial-gradient(farthest-corner at bottom left, #ffc7e8, transparent 50%),
|
|
@@ -14050,7 +14408,7 @@ var gradients = {
|
|
|
14050
14408
|
radial-gradient(farthest-corner at top left, #ff40b3, transparent 65%),
|
|
14051
14409
|
radial-gradient(farthest-corner at bottom right, #ff40b3, transparent 55%);
|
|
14052
14410
|
`,
|
|
14053
|
-
pinkWithPop:
|
|
14411
|
+
pinkWithPop: import_styled_components99.css`
|
|
14054
14412
|
background-color: #fffff0;
|
|
14055
14413
|
background-image:
|
|
14056
14414
|
radial-gradient(farthest-corner at top right, #e0128e, transparent 70%),
|
|
@@ -14058,7 +14416,7 @@ var gradients = {
|
|
|
14058
14416
|
radial-gradient(farthest-corner at bottom right, #ff40b3, transparent 55%),
|
|
14059
14417
|
radial-gradient(farthest-corner at bottom left, #2949e5, transparent 50%);
|
|
14060
14418
|
`,
|
|
14061
|
-
playfulGradientOne:
|
|
14419
|
+
playfulGradientOne: import_styled_components99.css`
|
|
14062
14420
|
background-color: #f7f8ff;
|
|
14063
14421
|
background-image:
|
|
14064
14422
|
radial-gradient(farthest-corner at top left, #d65cff, transparent 68%),
|
|
@@ -14066,7 +14424,7 @@ var gradients = {
|
|
|
14066
14424
|
radial-gradient(farthest-corner at bottom left, #ffc7e8, transparent 57%),
|
|
14067
14425
|
radial-gradient(farthest-corner at top right, #ffcaba, transparent 70%);
|
|
14068
14426
|
`,
|
|
14069
|
-
playfulGradientTwo:
|
|
14427
|
+
playfulGradientTwo: import_styled_components99.css`
|
|
14070
14428
|
background-color: #f7f8ff;
|
|
14071
14429
|
background-image:
|
|
14072
14430
|
radial-gradient(farthest-corner at top left, #44b62d, transparent 68%),
|
|
@@ -14074,13 +14432,13 @@ var gradients = {
|
|
|
14074
14432
|
radial-gradient(farthest-corner at bottom left, #ccd5ff, transparent 57%),
|
|
14075
14433
|
radial-gradient(farthest-corner at top right, #2949e5, transparent 70%);
|
|
14076
14434
|
`,
|
|
14077
|
-
purple:
|
|
14435
|
+
purple: import_styled_components99.css`
|
|
14078
14436
|
background-color: #f2caff;
|
|
14079
14437
|
background-image:
|
|
14080
14438
|
radial-gradient(ellipse at 0% 100%, #f9e5ff, transparent 50%),
|
|
14081
14439
|
radial-gradient(ellipse at 100% 0%, #e093fa, transparent 70%);
|
|
14082
14440
|
`,
|
|
14083
|
-
purpleWithPop:
|
|
14441
|
+
purpleWithPop: import_styled_components99.css`
|
|
14084
14442
|
background-color: #f2caff;
|
|
14085
14443
|
background-image:
|
|
14086
14444
|
radial-gradient(farthest-corner at bottom left, #f2caff, transparent 50%),
|
|
@@ -14088,7 +14446,7 @@ var gradients = {
|
|
|
14088
14446
|
radial-gradient(farthest-corner at bottom right, #d65cff, transparent 55%),
|
|
14089
14447
|
radial-gradient(farthest-corner at top right, #2949e5, transparent 70%);
|
|
14090
14448
|
`,
|
|
14091
|
-
yellow:
|
|
14449
|
+
yellow: import_styled_components99.css`
|
|
14092
14450
|
background-color: #fffff0;
|
|
14093
14451
|
background-image:
|
|
14094
14452
|
radial-gradient(farthest-corner at bottom left, #eff18d, transparent 50%),
|
|
@@ -14096,7 +14454,7 @@ var gradients = {
|
|
|
14096
14454
|
radial-gradient(farthest-corner at top left, #e8ec1e, transparent 65%),
|
|
14097
14455
|
radial-gradient(farthest-corner at bottom right, #e8ec1e, transparent 55%);
|
|
14098
14456
|
`,
|
|
14099
|
-
yellowWithPop:
|
|
14457
|
+
yellowWithPop: import_styled_components99.css`
|
|
14100
14458
|
background-color: #fffff0;
|
|
14101
14459
|
background-image:
|
|
14102
14460
|
radial-gradient(farthest-corner at bottom left, #eff18d, transparent 50%),
|
|
@@ -14107,14 +14465,14 @@ var gradients = {
|
|
|
14107
14465
|
};
|
|
14108
14466
|
var gradientMap = Object.keys(gradients);
|
|
14109
14467
|
var getBackgroundGradient = (gradientName = void 0) => {
|
|
14110
|
-
return (0,
|
|
14468
|
+
return (0, import_type_guards65.isNotNil)(gradientName) ? gradients[gradientName] : gradients.defaultDarkOne;
|
|
14111
14469
|
};
|
|
14112
14470
|
|
|
14113
14471
|
// src/components/Thumbnail/ThumbnailStoryboardViewer.tsx
|
|
14114
|
-
var
|
|
14115
|
-
var
|
|
14116
|
-
var
|
|
14117
|
-
var ScrubLine =
|
|
14472
|
+
var import_styled_components100 = __toESM(require("styled-components"));
|
|
14473
|
+
var import_type_guards66 = require("@wistia/type-guards");
|
|
14474
|
+
var import_jsx_runtime286 = require("react/jsx-runtime");
|
|
14475
|
+
var ScrubLine = import_styled_components100.default.div`
|
|
14118
14476
|
position: absolute;
|
|
14119
14477
|
top: 0;
|
|
14120
14478
|
height: 100%;
|
|
@@ -14198,8 +14556,8 @@ var ThumbnailStoryboardViewer = ({
|
|
|
14198
14556
|
);
|
|
14199
14557
|
const backgroundSize = `${scaledStoryboardWidth}px ${scaledStoryboardHeight}px`;
|
|
14200
14558
|
const backgroundImage = `url(${storyboardUrl})`;
|
|
14201
|
-
const showScrubLine = (0,
|
|
14202
|
-
const scrubLinePosition = (0,
|
|
14559
|
+
const showScrubLine = (0, import_type_guards66.isNotNil)(cursorPosition);
|
|
14560
|
+
const scrubLinePosition = (0, import_type_guards66.isNotNil)(cursorPosition) ? `${cursorPosition - 1}px` : "0";
|
|
14203
14561
|
const viewerStyles = {
|
|
14204
14562
|
position: "relative",
|
|
14205
14563
|
overflow: "hidden",
|
|
@@ -14217,14 +14575,14 @@ var ThumbnailStoryboardViewer = ({
|
|
|
14217
14575
|
backgroundPosition,
|
|
14218
14576
|
backgroundSize
|
|
14219
14577
|
};
|
|
14220
|
-
return /* @__PURE__ */ (0,
|
|
14578
|
+
return /* @__PURE__ */ (0, import_jsx_runtime286.jsxs)(
|
|
14221
14579
|
"div",
|
|
14222
14580
|
{
|
|
14223
14581
|
...props,
|
|
14224
14582
|
style: viewerStyles,
|
|
14225
14583
|
children: [
|
|
14226
|
-
/* @__PURE__ */ (0,
|
|
14227
|
-
showScrubLine ? /* @__PURE__ */ (0,
|
|
14584
|
+
/* @__PURE__ */ (0, import_jsx_runtime286.jsx)("div", { style: storyboardStyles }),
|
|
14585
|
+
showScrubLine ? /* @__PURE__ */ (0, import_jsx_runtime286.jsx)(
|
|
14228
14586
|
ScrubLine,
|
|
14229
14587
|
{
|
|
14230
14588
|
style: {
|
|
@@ -14238,20 +14596,20 @@ var ThumbnailStoryboardViewer = ({
|
|
|
14238
14596
|
};
|
|
14239
14597
|
|
|
14240
14598
|
// src/components/Thumbnail/Thumbnail.tsx
|
|
14241
|
-
var
|
|
14242
|
-
var WideThumbnailImage =
|
|
14599
|
+
var import_jsx_runtime287 = require("react/jsx-runtime");
|
|
14600
|
+
var WideThumbnailImage = import_styled_components101.default.img`
|
|
14243
14601
|
height: 100%;
|
|
14244
14602
|
object-fit: cover;
|
|
14245
14603
|
width: 100%;
|
|
14246
14604
|
`;
|
|
14247
|
-
var SquareThumbnailImage =
|
|
14605
|
+
var SquareThumbnailImage = import_styled_components101.default.img`
|
|
14248
14606
|
backdrop-filter: blur(8px);
|
|
14249
14607
|
object-fit: contain;
|
|
14250
14608
|
width: 100%;
|
|
14251
14609
|
`;
|
|
14252
14610
|
var ThumbnailImage = ({ thumbnailImageType, thumbnailUrl }) => {
|
|
14253
14611
|
if (thumbnailImageType === "wide") {
|
|
14254
|
-
return /* @__PURE__ */ (0,
|
|
14612
|
+
return /* @__PURE__ */ (0, import_jsx_runtime287.jsx)(
|
|
14255
14613
|
WideThumbnailImage,
|
|
14256
14614
|
{
|
|
14257
14615
|
alt: "",
|
|
@@ -14260,7 +14618,7 @@ var ThumbnailImage = ({ thumbnailImageType, thumbnailUrl }) => {
|
|
|
14260
14618
|
}
|
|
14261
14619
|
);
|
|
14262
14620
|
}
|
|
14263
|
-
return /* @__PURE__ */ (0,
|
|
14621
|
+
return /* @__PURE__ */ (0, import_jsx_runtime287.jsx)(
|
|
14264
14622
|
SquareThumbnailImage,
|
|
14265
14623
|
{
|
|
14266
14624
|
alt: "",
|
|
@@ -14269,11 +14627,11 @@ var ThumbnailImage = ({ thumbnailImageType, thumbnailUrl }) => {
|
|
|
14269
14627
|
}
|
|
14270
14628
|
);
|
|
14271
14629
|
};
|
|
14272
|
-
var StyledThumbnail =
|
|
14273
|
-
background-image: ${({ $backgroundUrl }) => (0,
|
|
14630
|
+
var StyledThumbnail = import_styled_components101.default.div`
|
|
14631
|
+
background-image: ${({ $backgroundUrl }) => (0, import_type_guards67.isNotNil)($backgroundUrl) ? `url('${$backgroundUrl}')` : void 0};
|
|
14274
14632
|
${({ $backgroundUrl, $gradientBackground }) => (
|
|
14275
14633
|
// if we don't have $backgroundUrl show a gradient
|
|
14276
|
-
(0,
|
|
14634
|
+
(0, import_type_guards67.isNil)($backgroundUrl) ? getBackgroundGradient($gradientBackground) : void 0
|
|
14277
14635
|
)};
|
|
14278
14636
|
background-position: center center;
|
|
14279
14637
|
background-size: cover;
|
|
@@ -14298,7 +14656,7 @@ var getRelativeMousePosition = (elem, mouseEvent) => {
|
|
|
14298
14656
|
left: relativeLeft
|
|
14299
14657
|
};
|
|
14300
14658
|
};
|
|
14301
|
-
var Thumbnail = (0,
|
|
14659
|
+
var Thumbnail = (0, import_react77.forwardRef)(
|
|
14302
14660
|
({
|
|
14303
14661
|
gradientBackground = "defaultMidOne",
|
|
14304
14662
|
thumbnailImageType = "wide",
|
|
@@ -14309,17 +14667,17 @@ var Thumbnail = (0, import_react74.forwardRef)(
|
|
|
14309
14667
|
height,
|
|
14310
14668
|
...props
|
|
14311
14669
|
}, ref) => {
|
|
14312
|
-
const [percent, setPercent] = (0,
|
|
14313
|
-
const [isMouseOver, setIsMouseOver] = (0,
|
|
14314
|
-
const [isStoryboardReady, setIsStoryboardReady] = (0,
|
|
14315
|
-
const storyboardElementRef = (0,
|
|
14316
|
-
const [cursorPosition, setCursorPosition] = (0,
|
|
14317
|
-
const backgroundUrl = (0,
|
|
14318
|
-
() => thumbnailImageType === "square" && (0,
|
|
14670
|
+
const [percent, setPercent] = (0, import_react77.useState)(0);
|
|
14671
|
+
const [isMouseOver, setIsMouseOver] = (0, import_react77.useState)(false);
|
|
14672
|
+
const [isStoryboardReady, setIsStoryboardReady] = (0, import_react77.useState)(false);
|
|
14673
|
+
const storyboardElementRef = (0, import_react77.useRef)(null);
|
|
14674
|
+
const [cursorPosition, setCursorPosition] = (0, import_react77.useState)(null);
|
|
14675
|
+
const backgroundUrl = (0, import_react77.useMemo)(
|
|
14676
|
+
() => thumbnailImageType === "square" && (0, import_type_guards67.isNotNil)(thumbnailUrl) ? thumbnailUrl : void 0,
|
|
14319
14677
|
[thumbnailImageType, thumbnailUrl]
|
|
14320
14678
|
);
|
|
14321
|
-
const isScrubbable = (0,
|
|
14322
|
-
const trackStoryboardLoadStatus = (0,
|
|
14679
|
+
const isScrubbable = (0, import_type_guards67.isNotNil)(storyboard);
|
|
14680
|
+
const trackStoryboardLoadStatus = (0, import_react77.useCallback)(() => {
|
|
14323
14681
|
if (storyboardElementRef.current || !storyboard) {
|
|
14324
14682
|
return storyboardElementRef.current;
|
|
14325
14683
|
}
|
|
@@ -14329,7 +14687,7 @@ var Thumbnail = (0, import_react74.forwardRef)(
|
|
|
14329
14687
|
storyboardElementRef.current = asset;
|
|
14330
14688
|
return storyboardElementRef.current;
|
|
14331
14689
|
}, [storyboard]);
|
|
14332
|
-
const handleMouseMove = (0,
|
|
14690
|
+
const handleMouseMove = (0, import_react77.useCallback)(
|
|
14333
14691
|
(mouseEvent) => {
|
|
14334
14692
|
if (!isScrubbable) return;
|
|
14335
14693
|
const elem = mouseEvent.currentTarget;
|
|
@@ -14342,16 +14700,16 @@ var Thumbnail = (0, import_react74.forwardRef)(
|
|
|
14342
14700
|
},
|
|
14343
14701
|
[isScrubbable, trackStoryboardLoadStatus]
|
|
14344
14702
|
);
|
|
14345
|
-
const handleMouseOut = (0,
|
|
14703
|
+
const handleMouseOut = (0, import_react77.useCallback)(() => {
|
|
14346
14704
|
if (!isScrubbable) return;
|
|
14347
14705
|
setIsMouseOver(false);
|
|
14348
14706
|
setCursorPosition(null);
|
|
14349
14707
|
}, [isScrubbable]);
|
|
14350
|
-
const shouldRenderStoryboard = (0,
|
|
14708
|
+
const shouldRenderStoryboard = (0, import_react77.useMemo)(() => {
|
|
14351
14709
|
return Boolean(isScrubbable && isMouseOver && isStoryboardReady);
|
|
14352
14710
|
}, [isScrubbable, isMouseOver, isStoryboardReady]);
|
|
14353
|
-
const renderStoryboard = (0,
|
|
14354
|
-
if (!storyboard || (0,
|
|
14711
|
+
const renderStoryboard = (0, import_react77.useCallback)(() => {
|
|
14712
|
+
if (!storyboard || (0, import_type_guards67.isUndefined)(height) || (0, import_type_guards67.isEmptyString)(height)) return null;
|
|
14355
14713
|
const {
|
|
14356
14714
|
url,
|
|
14357
14715
|
width: sbWidth,
|
|
@@ -14361,9 +14719,9 @@ var Thumbnail = (0, import_react74.forwardRef)(
|
|
|
14361
14719
|
frameCount,
|
|
14362
14720
|
aspectRatio
|
|
14363
14721
|
} = storyboard;
|
|
14364
|
-
const targetWidth = (0,
|
|
14722
|
+
const targetWidth = (0, import_type_guards67.isString)(width) ? parseInt(width, 10) : Number(width);
|
|
14365
14723
|
const effectiveCursorPosition = isStoryboardReady ? cursorPosition : null;
|
|
14366
|
-
return /* @__PURE__ */ (0,
|
|
14724
|
+
return /* @__PURE__ */ (0, import_jsx_runtime287.jsx)(
|
|
14367
14725
|
ThumbnailStoryboardViewer,
|
|
14368
14726
|
{
|
|
14369
14727
|
cursorPosition: effectiveCursorPosition,
|
|
@@ -14382,8 +14740,8 @@ var Thumbnail = (0, import_react74.forwardRef)(
|
|
|
14382
14740
|
let thumbnailContent = null;
|
|
14383
14741
|
if (shouldRenderStoryboard) {
|
|
14384
14742
|
thumbnailContent = renderStoryboard();
|
|
14385
|
-
} else if ((0,
|
|
14386
|
-
thumbnailContent = /* @__PURE__ */ (0,
|
|
14743
|
+
} else if ((0, import_type_guards67.isNotNil)(thumbnailUrl)) {
|
|
14744
|
+
thumbnailContent = /* @__PURE__ */ (0, import_jsx_runtime287.jsx)(
|
|
14387
14745
|
ThumbnailImage,
|
|
14388
14746
|
{
|
|
14389
14747
|
thumbnailImageType,
|
|
@@ -14393,7 +14751,7 @@ var Thumbnail = (0, import_react74.forwardRef)(
|
|
|
14393
14751
|
} else {
|
|
14394
14752
|
thumbnailContent = null;
|
|
14395
14753
|
}
|
|
14396
|
-
return /* @__PURE__ */ (0,
|
|
14754
|
+
return /* @__PURE__ */ (0, import_jsx_runtime287.jsxs)(
|
|
14397
14755
|
StyledThumbnail,
|
|
14398
14756
|
{
|
|
14399
14757
|
ref,
|
|
@@ -14407,7 +14765,7 @@ var Thumbnail = (0, import_react74.forwardRef)(
|
|
|
14407
14765
|
onMouseOut: handleMouseOut,
|
|
14408
14766
|
role: "presentation",
|
|
14409
14767
|
children: [
|
|
14410
|
-
(0,
|
|
14768
|
+
(0, import_type_guards67.isNotNil)(children) ? children : null,
|
|
14411
14769
|
thumbnailContent
|
|
14412
14770
|
]
|
|
14413
14771
|
}
|
|
@@ -14417,14 +14775,14 @@ var Thumbnail = (0, import_react74.forwardRef)(
|
|
|
14417
14775
|
Thumbnail.displayName = "Thumbnail";
|
|
14418
14776
|
|
|
14419
14777
|
// src/components/ThumbnailCollage/ThumbnailCollage.tsx
|
|
14420
|
-
var
|
|
14421
|
-
var
|
|
14422
|
-
var
|
|
14423
|
-
var
|
|
14778
|
+
var import_react78 = __toESM(require("react"));
|
|
14779
|
+
var import_styled_components102 = __toESM(require("styled-components"));
|
|
14780
|
+
var import_type_guards68 = require("@wistia/type-guards");
|
|
14781
|
+
var import_jsx_runtime288 = (
|
|
14424
14782
|
// ThumbnailCollage will fallback to a Thumbnail with a gradient background if no children are provided
|
|
14425
14783
|
require("react/jsx-runtime")
|
|
14426
14784
|
);
|
|
14427
|
-
var StyledThumbnailCollage =
|
|
14785
|
+
var StyledThumbnailCollage = import_styled_components102.default.div`
|
|
14428
14786
|
display: grid;
|
|
14429
14787
|
gap: var(--wui-space-01);
|
|
14430
14788
|
width: 100%;
|
|
@@ -14497,15 +14855,15 @@ var ThumbnailCollage = ({
|
|
|
14497
14855
|
gradientBackground = "defaultMidOne",
|
|
14498
14856
|
...props
|
|
14499
14857
|
}) => {
|
|
14500
|
-
const thumbnailArray =
|
|
14858
|
+
const thumbnailArray = import_react78.default.Children.toArray(children);
|
|
14501
14859
|
const truncatedThumbnails = thumbnailArray.slice(0, 3);
|
|
14502
|
-
const thumbnails = (0,
|
|
14503
|
-
return
|
|
14860
|
+
const thumbnails = (0, import_type_guards68.isNonEmptyArray)(thumbnailArray) ? truncatedThumbnails.map((child) => {
|
|
14861
|
+
return import_react78.default.cloneElement(child, {
|
|
14504
14862
|
...child.props,
|
|
14505
14863
|
children: void 0
|
|
14506
14864
|
});
|
|
14507
14865
|
}) : [
|
|
14508
|
-
/* @__PURE__ */ (0,
|
|
14866
|
+
/* @__PURE__ */ (0, import_jsx_runtime288.jsx)(
|
|
14509
14867
|
Thumbnail,
|
|
14510
14868
|
{
|
|
14511
14869
|
gradientBackground,
|
|
@@ -14514,7 +14872,7 @@ var ThumbnailCollage = ({
|
|
|
14514
14872
|
"fallback"
|
|
14515
14873
|
)
|
|
14516
14874
|
];
|
|
14517
|
-
return /* @__PURE__ */ (0,
|
|
14875
|
+
return /* @__PURE__ */ (0, import_jsx_runtime288.jsx)(
|
|
14518
14876
|
StyledThumbnailCollage,
|
|
14519
14877
|
{
|
|
14520
14878
|
$gradientBackground: gradientBackground,
|
|
@@ -14526,26 +14884,26 @@ var ThumbnailCollage = ({
|
|
|
14526
14884
|
};
|
|
14527
14885
|
|
|
14528
14886
|
// src/components/WistiaLogo/WistiaLogo.tsx
|
|
14529
|
-
var
|
|
14530
|
-
var
|
|
14531
|
-
var
|
|
14887
|
+
var import_styled_components103 = __toESM(require("styled-components"));
|
|
14888
|
+
var import_type_guards69 = require("@wistia/type-guards");
|
|
14889
|
+
var import_jsx_runtime289 = require("react/jsx-runtime");
|
|
14532
14890
|
var renderBrandmark = (brandmarkColor, iconOnly) => {
|
|
14533
14891
|
if (iconOnly) {
|
|
14534
|
-
return /* @__PURE__ */ (0,
|
|
14892
|
+
return /* @__PURE__ */ (0, import_jsx_runtime289.jsx)(
|
|
14535
14893
|
"g",
|
|
14536
14894
|
{
|
|
14537
14895
|
"data-testid": "ui-wistia-logo-brandmark",
|
|
14538
14896
|
fill: brandmarkColor,
|
|
14539
|
-
children: /* @__PURE__ */ (0,
|
|
14897
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime289.jsx)("path", { d: "M16.09 17.1h-5.2c-1.58 0-3.08.68-4.11 1.87L.21 26.53c4.78.25 9.78.25 13.3.25 18.31 0 20.89-11.27 20.89-16.55-1.59 1.93-6.06 6.87-18.32 6.87ZM32.14 0c-.08.92-.59 4.69-11.31 4.69-8.72 0-12.24 0-20.83-.17l6.44 7.4a6.657 6.657 0 0 0 4.96 2.3c2.13.03 5.05.06 5.53.06 11.01 0 17.19-5.05 17.19-9.89 0-2.01-.67-3.44-1.97-4.4Z" })
|
|
14540
14898
|
}
|
|
14541
14899
|
);
|
|
14542
14900
|
}
|
|
14543
|
-
return /* @__PURE__ */ (0,
|
|
14901
|
+
return /* @__PURE__ */ (0, import_jsx_runtime289.jsx)(
|
|
14544
14902
|
"g",
|
|
14545
14903
|
{
|
|
14546
14904
|
"data-testid": "ui-wistia-logo-brandmark",
|
|
14547
14905
|
fill: brandmarkColor,
|
|
14548
|
-
children: /* @__PURE__ */ (0,
|
|
14906
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime289.jsx)("path", { d: "M16.09 21.37h-5.2c-1.58 0-3.08.68-4.11 1.87L.21 30.8c4.78.25 9.78.25 13.3.25 18.31 0 20.89-11.27 20.89-16.55-1.59 1.93-6.06 6.87-18.32 6.87Zm16.05-17.1c-.08.92-.59 4.69-11.31 4.69-8.72 0-12.24 0-20.83-.17l6.44 7.4a6.657 6.657 0 0 0 4.96 2.3c2.13.03 5.05.06 5.53.06 11.01 0 17.19-5.05 17.19-9.89 0-2.01-.67-3.44-1.97-4.4Z" })
|
|
14549
14907
|
}
|
|
14550
14908
|
);
|
|
14551
14909
|
};
|
|
@@ -14553,12 +14911,12 @@ var renderLogotype = (logotypeColor, iconOnly) => {
|
|
|
14553
14911
|
if (iconOnly) {
|
|
14554
14912
|
return null;
|
|
14555
14913
|
}
|
|
14556
|
-
return /* @__PURE__ */ (0,
|
|
14914
|
+
return /* @__PURE__ */ (0, import_jsx_runtime289.jsx)(
|
|
14557
14915
|
"g",
|
|
14558
14916
|
{
|
|
14559
14917
|
"data-testid": "ui-wistia-logo-logotype",
|
|
14560
14918
|
fill: logotypeColor,
|
|
14561
|
-
children: /* @__PURE__ */ (0,
|
|
14919
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime289.jsx)("path", { d: "M70.16 8.66v15.18c0 1.68-.35 3.09-1.05 4.23a6.612 6.612 0 0 1-2.85 2.54c-1.19.55-2.52.82-4.01.82s-2.8-.28-4.01-.85a6.655 6.655 0 0 1-3.11-2.96c-.08.15-.16.29-.24.42a6.552 6.552 0 0 1-2.87 2.54c-1.2.56-2.54.85-4.01.85s-2.8-.27-3.94-.82a6.214 6.214 0 0 1-2.71-2.52c-.67-1.14-1.01-2.56-1.02-4.25l-.22-15.18h7.34V22.3c0 .82.19 1.37.56 1.67.39.28.85.42 1.38.42s1.02-.15 1.45-.45c.43-.3.65-.85.65-1.65V8.65h7.3v13.64c0 .8.22 1.35.65 1.65.43.3.91.45 1.45.45s.99-.14 1.36-.42c.39-.3.58-.85.58-1.67V8.66h7.34Zm2.45 0v22.26h7.34V8.66h-7.34Zm5.67-1.87c.61-.3 1.08-.71 1.42-1.25.36-.55.53-1.19.53-1.94s-.18-1.34-.53-1.89A3.43 3.43 0 0 0 78.28.44c-.59-.3-1.25-.45-1.98-.45s-1.42.15-2.02.45c-.59.3-1.07.72-1.42 1.27-.36.55-.53 1.18-.53 1.89 0 1.1.38 1.97 1.13 2.63.76.65 1.71.98 2.85.98.73 0 1.39-.14 1.98-.42Zm8.86 1.96c-1.42.4-2.6 1.11-3.54 2.14-.93 1.02-1.4 2.4-1.4 4.12 0 1.11.17 2.09.51 2.94.36.85.82 1.62 1.38 2.34.22.28.55.65.98 1.11.37.4.64.72.8.96.18.24.27.47.27.69 0 .5-.4.87-1.2 1.09-.8.21-1.62.31-2.47.31-.1-.01-.22-.02-.33-.02l1.02 6.94c.42.07.92.11 1.51.11 1.9 0 3.6-.28 5.1-.85 1.5-.56 2.68-1.42 3.54-2.56.88-1.14 1.31-2.55 1.31-4.23 0-.68-.07-1.31-.22-1.87-.13-.58-.32-1.09-.56-1.54a6.64 6.64 0 0 0-.8-1.27c-.3-.37-.74-.82-1.34-1.36-.39-.33-.67-.59-.85-.8-.18-.22-.27-.45-.27-.67 0-.46.26-.79.78-.98.53-.19 1.17-.29 1.91-.29.25 0 .51.01.78.04l-.71-6.88a10.4 10.4 0 0 0-1.56-.11c-1.66 0-3.21.21-4.65.62Zm19.54 15.71c-.99 0-1.71-.23-2.14-.69-.42-.47-.62-1.18-.62-2.11v-6.57h4.21V8.66h-4.21V3.38l-7.34 1.85V24.1c0 2.45.47 4.29 1.4 5.52.95 1.22 2.45 1.83 4.49 1.83.95 0 1.86-.07 2.74-.22.88-.13 1.62-.34 2.25-.62l1.38-6.3c-.55.1-1.27.16-2.16.16Zm4.13-15.8v22.26h7.34V8.66h-7.34Zm5.67-1.87c.61-.3 1.08-.71 1.42-1.25.36-.55.53-1.19.53-1.94s-.18-1.34-.53-1.89a3.43 3.43 0 0 0-1.42-1.27c-.59-.3-1.25-.45-1.98-.45s-1.42.15-2.02.45c-.59.3-1.07.72-1.42 1.27-.36.55-.53 1.18-.53 1.89 0 1.1.38 1.97 1.14 2.63.76.65 1.71.98 2.85.98.73 0 1.39-.14 1.98-.42Zm27.51 1.87v22.26h-7.34v-2.28c-.41.43-.85.83-1.34 1.19-1.44 1.07-3.12 1.6-5.05 1.6s-3.61-.52-5.1-1.56c-1.48-1.05-2.63-2.47-3.45-4.25-.82-1.78-1.22-3.73-1.22-5.85s.41-4.07 1.22-5.83c.82-1.78 1.97-3.19 3.45-4.23 1.48-1.05 3.18-1.58 5.1-1.58s3.61.53 5.05 1.6c.48.36.93.75 1.34 1.19V8.66h7.34Zm-7.1 11.11c0-.8-.19-1.53-.56-2.18-.37-.67-.88-1.19-1.54-1.58-.64-.39-1.34-.58-2.09-.58s-1.45.19-2.09.58c-.64.39-1.15.91-1.54 1.58-.37.67-.56 1.39-.56 2.18s.19 1.51.56 2.18c.39.67.9 1.19 1.54 1.58.64.39 1.34.58 2.09.58s1.45-.19 2.09-.58c.65-.39 1.16-.91 1.54-1.56.37-.67.56-1.4.56-2.2Z" })
|
|
14562
14920
|
}
|
|
14563
14921
|
);
|
|
14564
14922
|
};
|
|
@@ -14568,7 +14926,7 @@ var computedViewBox = (iconOnly) => {
|
|
|
14568
14926
|
}
|
|
14569
14927
|
return "0 0 144 31.47";
|
|
14570
14928
|
};
|
|
14571
|
-
var WistiaLogoComponent =
|
|
14929
|
+
var WistiaLogoComponent = import_styled_components103.default.svg`
|
|
14572
14930
|
height: ${({ height }) => `${height}px`};
|
|
14573
14931
|
|
|
14574
14932
|
/* ensure it will always fit on mobile */
|
|
@@ -14584,12 +14942,12 @@ var WistiaLogoComponent = import_styled_components100.default.svg`
|
|
|
14584
14942
|
${({ $opticallyCentered, $iconOnly }) => {
|
|
14585
14943
|
if ($opticallyCentered) {
|
|
14586
14944
|
if ($iconOnly) {
|
|
14587
|
-
return
|
|
14945
|
+
return import_styled_components103.css`
|
|
14588
14946
|
aspect-ratio: 1;
|
|
14589
14947
|
padding: 11.85% 3.12% 13.91%;
|
|
14590
14948
|
`;
|
|
14591
14949
|
}
|
|
14592
|
-
return
|
|
14950
|
+
return import_styled_components103.css`
|
|
14593
14951
|
aspect-ratio: 127 / 32;
|
|
14594
14952
|
`;
|
|
14595
14953
|
}
|
|
@@ -14626,7 +14984,7 @@ var WistiaLogo = ({
|
|
|
14626
14984
|
};
|
|
14627
14985
|
const brandmarkColor = VARIANT_COLORS[variant].brandmark;
|
|
14628
14986
|
const logotypeColor = VARIANT_COLORS[variant].logotype;
|
|
14629
|
-
const Logo = /* @__PURE__ */ (0,
|
|
14987
|
+
const Logo = /* @__PURE__ */ (0, import_jsx_runtime289.jsxs)(
|
|
14630
14988
|
WistiaLogoComponent,
|
|
14631
14989
|
{
|
|
14632
14990
|
$hoverColor: hoverColor,
|
|
@@ -14639,23 +14997,23 @@ var WistiaLogo = ({
|
|
|
14639
14997
|
xmlns: "http://www.w3.org/2000/svg",
|
|
14640
14998
|
...props,
|
|
14641
14999
|
children: [
|
|
14642
|
-
/* @__PURE__ */ (0,
|
|
14643
|
-
(0,
|
|
15000
|
+
/* @__PURE__ */ (0, import_jsx_runtime289.jsx)("title", { children: title }),
|
|
15001
|
+
(0, import_type_guards69.isNotNil)(description) ? /* @__PURE__ */ (0, import_jsx_runtime289.jsx)("desc", { children: description }) : null,
|
|
14644
15002
|
renderBrandmark(brandmarkColor, iconOnly),
|
|
14645
15003
|
renderLogotype(logotypeColor, iconOnly)
|
|
14646
15004
|
]
|
|
14647
15005
|
}
|
|
14648
15006
|
);
|
|
14649
|
-
return href !== void 0 ? /* @__PURE__ */ (0,
|
|
15007
|
+
return href !== void 0 ? /* @__PURE__ */ (0, import_jsx_runtime289.jsx)("a", { href, children: Logo }) : Logo;
|
|
14650
15008
|
};
|
|
14651
15009
|
WistiaLogo.displayName = "WistiaLogo";
|
|
14652
15010
|
|
|
14653
15011
|
// src/components/InputPassword/InputPassword.tsx
|
|
14654
|
-
var
|
|
14655
|
-
var
|
|
14656
|
-
var
|
|
14657
|
-
var
|
|
14658
|
-
var StyledIconButton = (0,
|
|
15012
|
+
var import_styled_components104 = __toESM(require("styled-components"));
|
|
15013
|
+
var import_react79 = require("react");
|
|
15014
|
+
var import_type_guards70 = require("@wistia/type-guards");
|
|
15015
|
+
var import_jsx_runtime290 = require("react/jsx-runtime");
|
|
15016
|
+
var StyledIconButton = (0, import_styled_components104.default)(IconButton)`
|
|
14659
15017
|
/* override size for icon button since prop gets changed by Input */
|
|
14660
15018
|
height: var(--icon-button-size-sm);
|
|
14661
15019
|
width: var(--icon-button-size-sm);
|
|
@@ -14663,23 +15021,23 @@ var StyledIconButton = (0, import_styled_components101.default)(IconButton)`
|
|
|
14663
15021
|
/* override input padding variable since it is used for Input Icon positioning */
|
|
14664
15022
|
--wui-input-horizontal-padding: 4px;
|
|
14665
15023
|
`;
|
|
14666
|
-
var InputPassword = (0,
|
|
15024
|
+
var InputPassword = (0, import_react79.forwardRef)(
|
|
14667
15025
|
({ onVisibilityToggle, disabled = false, ...props }, ref) => {
|
|
14668
|
-
const [isVisible, setIsVisible] = (0,
|
|
15026
|
+
const [isVisible, setIsVisible] = (0, import_react79.useState)(false);
|
|
14669
15027
|
const handleClick = () => {
|
|
14670
15028
|
const newVisibility = !isVisible;
|
|
14671
15029
|
setIsVisible(newVisibility);
|
|
14672
|
-
if ((0,
|
|
15030
|
+
if ((0, import_type_guards70.isFunction)(onVisibilityToggle)) {
|
|
14673
15031
|
onVisibilityToggle(newVisibility);
|
|
14674
15032
|
}
|
|
14675
15033
|
};
|
|
14676
|
-
return /* @__PURE__ */ (0,
|
|
15034
|
+
return /* @__PURE__ */ (0, import_jsx_runtime290.jsx)(
|
|
14677
15035
|
Input,
|
|
14678
15036
|
{
|
|
14679
15037
|
...props,
|
|
14680
15038
|
ref,
|
|
14681
15039
|
disabled,
|
|
14682
|
-
rightIcon: /* @__PURE__ */ (0,
|
|
15040
|
+
rightIcon: /* @__PURE__ */ (0, import_jsx_runtime290.jsx)(
|
|
14683
15041
|
StyledIconButton,
|
|
14684
15042
|
{
|
|
14685
15043
|
disabled,
|
|
@@ -14687,7 +15045,7 @@ var InputPassword = (0, import_react76.forwardRef)(
|
|
|
14687
15045
|
onClick: handleClick,
|
|
14688
15046
|
tabIndex: disabled ? -1 : 0,
|
|
14689
15047
|
variant: "ghost",
|
|
14690
|
-
children: /* @__PURE__ */ (0,
|
|
15048
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime290.jsx)(Icon, { type: isVisible ? "preview" : "hide" })
|
|
14691
15049
|
}
|
|
14692
15050
|
),
|
|
14693
15051
|
type: isVisible ? "text" : "password"
|
|
@@ -14696,6 +15054,65 @@ var InputPassword = (0, import_react76.forwardRef)(
|
|
|
14696
15054
|
}
|
|
14697
15055
|
);
|
|
14698
15056
|
InputPassword.displayName = "InputPassword";
|
|
15057
|
+
|
|
15058
|
+
// src/components/ContextMenu/ContextMenu.tsx
|
|
15059
|
+
var import_react80 = require("react");
|
|
15060
|
+
var import_type_guards71 = require("@wistia/type-guards");
|
|
15061
|
+
var import_jsx_runtime291 = require("react/jsx-runtime");
|
|
15062
|
+
var ContextMenu = ({
|
|
15063
|
+
position,
|
|
15064
|
+
triggerRef,
|
|
15065
|
+
children,
|
|
15066
|
+
onRequestClose = () => null
|
|
15067
|
+
}) => {
|
|
15068
|
+
const [isRightClicked, setIsRightClicked] = (0, import_react80.useState)(false);
|
|
15069
|
+
const [menuPosition, setMenuPosition] = (0, import_react80.useState)(position ?? { x: 0, y: 0 });
|
|
15070
|
+
(0, import_react80.useEffect)(() => {
|
|
15071
|
+
if ((0, import_type_guards71.isNil)(position)) {
|
|
15072
|
+
const onContextMenu = (event) => {
|
|
15073
|
+
event.preventDefault();
|
|
15074
|
+
setMenuPosition({ x: event.clientX, y: event.clientY });
|
|
15075
|
+
setIsRightClicked(true);
|
|
15076
|
+
};
|
|
15077
|
+
const triggerEl = triggerRef?.current;
|
|
15078
|
+
triggerEl?.addEventListener("contextmenu", onContextMenu);
|
|
15079
|
+
return () => {
|
|
15080
|
+
triggerEl?.removeEventListener("contextmenu", onContextMenu);
|
|
15081
|
+
};
|
|
15082
|
+
}
|
|
15083
|
+
return () => null;
|
|
15084
|
+
}, [position, triggerRef]);
|
|
15085
|
+
const isOpen = (0, import_type_guards71.isNotNil)(position) || isRightClicked;
|
|
15086
|
+
return isOpen ? /* @__PURE__ */ (0, import_jsx_runtime291.jsx)(
|
|
15087
|
+
Menu,
|
|
15088
|
+
{
|
|
15089
|
+
avoidCollisions: false,
|
|
15090
|
+
isOpen,
|
|
15091
|
+
onOpenChange: (next) => {
|
|
15092
|
+
setIsRightClicked(next);
|
|
15093
|
+
if (!next) {
|
|
15094
|
+
onRequestClose();
|
|
15095
|
+
}
|
|
15096
|
+
},
|
|
15097
|
+
trigger: /* @__PURE__ */ (0, import_jsx_runtime291.jsx)(
|
|
15098
|
+
"button",
|
|
15099
|
+
{
|
|
15100
|
+
"aria-label": "context menu",
|
|
15101
|
+
style: {
|
|
15102
|
+
width: "1px",
|
|
15103
|
+
height: "1px",
|
|
15104
|
+
all: "unset",
|
|
15105
|
+
position: "fixed",
|
|
15106
|
+
top: menuPosition.y,
|
|
15107
|
+
left: menuPosition.x
|
|
15108
|
+
},
|
|
15109
|
+
type: "button"
|
|
15110
|
+
}
|
|
15111
|
+
),
|
|
15112
|
+
children
|
|
15113
|
+
}
|
|
15114
|
+
) : null;
|
|
15115
|
+
};
|
|
14699
15116
|
// Annotate the CommonJS export names for ESM import in node:
|
|
14700
15117
|
0 && (module.exports = {
|
|
14701
15118
|
ActionButton,
|
|
@@ -14720,6 +15137,7 @@ InputPassword.displayName = "InputPassword";
|
|
|
14720
15137
|
ColorSchemeWrapper,
|
|
14721
15138
|
Combobox,
|
|
14722
15139
|
ComboboxOption,
|
|
15140
|
+
ContextMenu,
|
|
14723
15141
|
DataCard,
|
|
14724
15142
|
DataCardTrend,
|
|
14725
15143
|
DataCards,
|
|
@@ -14759,6 +15177,8 @@ InputPassword.displayName = "InputPassword";
|
|
|
14759
15177
|
Popover,
|
|
14760
15178
|
ProgressBar,
|
|
14761
15179
|
Radio,
|
|
15180
|
+
RadioCard,
|
|
15181
|
+
RadioCardImage,
|
|
14762
15182
|
RadioGroup,
|
|
14763
15183
|
RadioMenuItem,
|
|
14764
15184
|
ScreenReaderOnly,
|