@wistia/ui 0.9.1-beta.2eb92e45.4aa68a8 → 0.9.1-beta.6bb01d7e.ea7fbf5
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 +207 -254
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.mts +5 -2
- package/dist/index.d.ts +5 -2
- package/dist/index.mjs +126 -173
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
|
|
2
2
|
/*
|
|
3
|
-
* @license @wistia/ui v0.9.1-beta.
|
|
3
|
+
* @license @wistia/ui v0.9.1-beta.6bb01d7e.ea7fbf5
|
|
4
4
|
*
|
|
5
5
|
* Copyright (c) 2024-2025, Wistia, Inc. and its affiliates.
|
|
6
6
|
*
|
|
@@ -7417,7 +7417,7 @@ var StyledSecondaryIcon = import_styled_components22.default.div`
|
|
|
7417
7417
|
width: 100%;
|
|
7418
7418
|
display: flex;
|
|
7419
7419
|
justify-content: flex-end;
|
|
7420
|
-
transition: all var(--wui-motion-duration-02) var(--wui-motion-ease-
|
|
7420
|
+
transition: all var(--wui-motion-duration-02) var(--wui-motion-ease-in);
|
|
7421
7421
|
|
|
7422
7422
|
${({ $hideUntilHover }) => $hideUntilHover && import_styled_components22.css`
|
|
7423
7423
|
will-change: transform;
|
|
@@ -8587,7 +8587,6 @@ var CollapsibleContent = ({ clamp, children }) => {
|
|
|
8587
8587
|
};
|
|
8588
8588
|
|
|
8589
8589
|
// src/components/DataCards/DataCard.tsx
|
|
8590
|
-
var import_react33 = require("react");
|
|
8591
8590
|
var import_styled_components40 = __toESM(require("styled-components"));
|
|
8592
8591
|
var import_type_guards29 = require("@wistia/type-guards");
|
|
8593
8592
|
|
|
@@ -8732,45 +8731,6 @@ var StyledDataCard = import_styled_components40.default.div`
|
|
|
8732
8731
|
flex: 1;
|
|
8733
8732
|
border-radius: var(--wui-border-radius-02);
|
|
8734
8733
|
position: relative;
|
|
8735
|
-
transition: background var(--wui-motion-duration-01) var(--wui-motion-ease);
|
|
8736
|
-
|
|
8737
|
-
&[data-click-region] {
|
|
8738
|
-
[data-wui-data-card-hover-icon] {
|
|
8739
|
-
outline: 1px solid red;
|
|
8740
|
-
opacity: 0;
|
|
8741
|
-
transform: translateX(-16px);
|
|
8742
|
-
transition: all var(--wui-motion-duration-02) var(--wui-motion-ease-out);
|
|
8743
|
-
}
|
|
8744
|
-
&:not([disabled]) {
|
|
8745
|
-
cursor: pointer;
|
|
8746
|
-
|
|
8747
|
-
&:hover,
|
|
8748
|
-
&:has([data-click-region-target-button]:focus-visible),
|
|
8749
|
-
&:has([data-click-region-target-link]:focus-visible) {
|
|
8750
|
-
background: var(--wui-color-bg-surface-secondary-hover);
|
|
8751
|
-
|
|
8752
|
-
[data-wui-data-card-hover-icon] {
|
|
8753
|
-
opacity: 1;
|
|
8754
|
-
transform: translateX(0);
|
|
8755
|
-
}
|
|
8756
|
-
}
|
|
8757
|
-
|
|
8758
|
-
&:has([data-click-region-target-button]:active),
|
|
8759
|
-
&:has([data-click-region-target-link]:active) {
|
|
8760
|
-
background: var(--wui-color-bg-surface-secondary-active);
|
|
8761
|
-
}
|
|
8762
|
-
|
|
8763
|
-
&:has([data-click-region-target-button]:focus-visible),
|
|
8764
|
-
&:has([data-click-region-target-link]:focus-visible) {
|
|
8765
|
-
outline: 2px solid var(--wui-color-focus-ring);
|
|
8766
|
-
outline-offset: 2px;
|
|
8767
|
-
}
|
|
8768
|
-
}
|
|
8769
|
-
|
|
8770
|
-
&[disabled] {
|
|
8771
|
-
pointer-events: none;
|
|
8772
|
-
}
|
|
8773
|
-
}
|
|
8774
8734
|
`;
|
|
8775
8735
|
var shimmer = import_styled_components40.keyframes`
|
|
8776
8736
|
0% {
|
|
@@ -8816,7 +8776,7 @@ var StyledDataCardTrendContainer = import_styled_components40.default.div`
|
|
|
8816
8776
|
bottom: var(--wui-space-01);
|
|
8817
8777
|
right: var(--wui-space-01);
|
|
8818
8778
|
`;
|
|
8819
|
-
var
|
|
8779
|
+
var DataCard = ({
|
|
8820
8780
|
label,
|
|
8821
8781
|
value,
|
|
8822
8782
|
upperRightSlot,
|
|
@@ -8851,38 +8811,6 @@ var DataCardInner = ({
|
|
|
8851
8811
|
]
|
|
8852
8812
|
}
|
|
8853
8813
|
);
|
|
8854
|
-
var DataCardArrowIcon = /* @__PURE__ */ (0, import_jsx_runtime213.jsx)(
|
|
8855
|
-
Icon,
|
|
8856
|
-
{
|
|
8857
|
-
"data-wui-data-card-hover-icon": true,
|
|
8858
|
-
type: "arrow-right"
|
|
8859
|
-
}
|
|
8860
|
-
);
|
|
8861
|
-
var DataCard = (props) => {
|
|
8862
|
-
const ref = (0, import_react33.useRef)(null);
|
|
8863
|
-
if ((0, import_type_guards29.isNotNil)(props.href) || (0, import_type_guards29.isNotNil)(props.onClick)) {
|
|
8864
|
-
return /* @__PURE__ */ (0, import_jsx_runtime213.jsx)(ClickRegion, { targetRef: ref, children: /* @__PURE__ */ (0, import_jsx_runtime213.jsx)(
|
|
8865
|
-
DataCardInner,
|
|
8866
|
-
{
|
|
8867
|
-
upperRightSlot: props.upperRightSlot ?? DataCardArrowIcon,
|
|
8868
|
-
...props,
|
|
8869
|
-
label: /* @__PURE__ */ (0, import_jsx_runtime213.jsx)(
|
|
8870
|
-
Button,
|
|
8871
|
-
{
|
|
8872
|
-
ref,
|
|
8873
|
-
...(0, import_type_guards29.isNotNil)(props.beforeAction) ? { beforeAction: props.beforeAction } : {},
|
|
8874
|
-
disabled: props.disabled ?? false,
|
|
8875
|
-
href: props.href,
|
|
8876
|
-
onClick: props.onClick,
|
|
8877
|
-
unstyled: true,
|
|
8878
|
-
children: props.label
|
|
8879
|
-
}
|
|
8880
|
-
)
|
|
8881
|
-
}
|
|
8882
|
-
) });
|
|
8883
|
-
}
|
|
8884
|
-
return /* @__PURE__ */ (0, import_jsx_runtime213.jsx)(DataCardInner, { ...props });
|
|
8885
|
-
};
|
|
8886
8814
|
DataCard.displayName = "DataCard";
|
|
8887
8815
|
|
|
8888
8816
|
// src/components/DataCards/DataCards.tsx
|
|
@@ -8923,7 +8851,7 @@ DataCards.displayName = "DataCards";
|
|
|
8923
8851
|
var import_styled_components43 = __toESM(require("styled-components"));
|
|
8924
8852
|
|
|
8925
8853
|
// src/components/Text/Text.tsx
|
|
8926
|
-
var
|
|
8854
|
+
var import_react33 = require("react");
|
|
8927
8855
|
var import_styled_components42 = __toESM(require("styled-components"));
|
|
8928
8856
|
var import_type_guards30 = require("@wistia/type-guards");
|
|
8929
8857
|
var import_jsx_runtime215 = require("react/jsx-runtime");
|
|
@@ -9098,7 +9026,7 @@ var StyledText = import_styled_components42.default.div`
|
|
|
9098
9026
|
}
|
|
9099
9027
|
`}
|
|
9100
9028
|
`;
|
|
9101
|
-
var TextComponent = (0,
|
|
9029
|
+
var TextComponent = (0, import_react33.forwardRef)(
|
|
9102
9030
|
({
|
|
9103
9031
|
align = "left",
|
|
9104
9032
|
colorScheme = "inherit",
|
|
@@ -9211,7 +9139,7 @@ Divider.displayName = "Divider";
|
|
|
9211
9139
|
|
|
9212
9140
|
// src/components/EditableHeading/EditableHeading.tsx
|
|
9213
9141
|
var import_styled_components48 = __toESM(require("styled-components"));
|
|
9214
|
-
var
|
|
9142
|
+
var import_react35 = require("react");
|
|
9215
9143
|
|
|
9216
9144
|
// src/components/Tooltip/Tooltip.tsx
|
|
9217
9145
|
var import_react_tooltip2 = require("@radix-ui/react-tooltip");
|
|
@@ -9363,7 +9291,7 @@ var Tooltip = ({
|
|
|
9363
9291
|
Tooltip.displayName = "Tooltip";
|
|
9364
9292
|
|
|
9365
9293
|
// src/components/Input/Input.tsx
|
|
9366
|
-
var
|
|
9294
|
+
var import_react34 = require("react");
|
|
9367
9295
|
var import_styled_components47 = __toESM(require("styled-components"));
|
|
9368
9296
|
var import_type_guards31 = require("@wistia/type-guards");
|
|
9369
9297
|
|
|
@@ -9498,7 +9426,7 @@ var StyledInputContainer = import_styled_components47.default.div`
|
|
|
9498
9426
|
padding-right: 32px;
|
|
9499
9427
|
}
|
|
9500
9428
|
`;
|
|
9501
|
-
var Input = (0,
|
|
9429
|
+
var Input = (0, import_react34.forwardRef)(
|
|
9502
9430
|
({
|
|
9503
9431
|
fullWidth = true,
|
|
9504
9432
|
monospace = false,
|
|
@@ -9508,7 +9436,7 @@ var Input = (0, import_react35.forwardRef)(
|
|
|
9508
9436
|
rightIcon,
|
|
9509
9437
|
...props
|
|
9510
9438
|
}, externalRef) => {
|
|
9511
|
-
const internalRef = (0,
|
|
9439
|
+
const internalRef = (0, import_react34.useRef)();
|
|
9512
9440
|
const ref = (
|
|
9513
9441
|
// eslint-disable-next-line react-compiler/react-compiler
|
|
9514
9442
|
(0, import_type_guards31.isNotNil)(externalRef) && (0, import_type_guards31.isRecord)(externalRef) && "current" in externalRef ? externalRef : internalRef
|
|
@@ -9518,14 +9446,14 @@ var Input = (0, import_react35.forwardRef)(
|
|
|
9518
9446
|
leftIconToDisplay = /* @__PURE__ */ (0, import_jsx_runtime219.jsx)(Icon, { type: "search" });
|
|
9519
9447
|
}
|
|
9520
9448
|
if ((0, import_type_guards31.isNotNil)(leftIconToDisplay)) {
|
|
9521
|
-
leftIconToDisplay = (0,
|
|
9449
|
+
leftIconToDisplay = (0, import_react34.cloneElement)(leftIconToDisplay, {
|
|
9522
9450
|
size: "md",
|
|
9523
9451
|
className: "wui-input-left-icon"
|
|
9524
9452
|
});
|
|
9525
9453
|
}
|
|
9526
9454
|
let rightIconToDisplay = rightIcon;
|
|
9527
9455
|
if ((0, import_type_guards31.isNotNil)(rightIconToDisplay)) {
|
|
9528
|
-
rightIconToDisplay = (0,
|
|
9456
|
+
rightIconToDisplay = (0, import_react34.cloneElement)(rightIconToDisplay, {
|
|
9529
9457
|
size: "md",
|
|
9530
9458
|
className: "wui-input-right-icon"
|
|
9531
9459
|
});
|
|
@@ -9617,11 +9545,11 @@ var EditableHeading = ({
|
|
|
9617
9545
|
__forceEditing = false,
|
|
9618
9546
|
editingDisabled = false
|
|
9619
9547
|
}) => {
|
|
9620
|
-
const [isEditing, setIsEditing] = (0,
|
|
9621
|
-
const [value, setValue] = (0,
|
|
9622
|
-
const [previousValue, setPreviousValue] = (0,
|
|
9623
|
-
const [headingHeight, setHeadingHeight] = (0,
|
|
9624
|
-
const headingRef = (0,
|
|
9548
|
+
const [isEditing, setIsEditing] = (0, import_react35.useState)(false);
|
|
9549
|
+
const [value, setValue] = (0, import_react35.useState)(children);
|
|
9550
|
+
const [previousValue, setPreviousValue] = (0, import_react35.useState)(children);
|
|
9551
|
+
const [headingHeight, setHeadingHeight] = (0, import_react35.useState)("60");
|
|
9552
|
+
const headingRef = (0, import_react35.useRef)(null);
|
|
9625
9553
|
const handleSetEditing = (editing) => {
|
|
9626
9554
|
if (editingDisabled) return;
|
|
9627
9555
|
if (editing && headingRef.current) {
|
|
@@ -9700,12 +9628,12 @@ var EditableHeading = ({
|
|
|
9700
9628
|
};
|
|
9701
9629
|
|
|
9702
9630
|
// src/components/Form/Form.tsx
|
|
9703
|
-
var
|
|
9631
|
+
var import_react37 = require("react");
|
|
9704
9632
|
var import_styled_components50 = __toESM(require("styled-components"));
|
|
9705
9633
|
var import_type_guards32 = require("@wistia/type-guards");
|
|
9706
9634
|
|
|
9707
9635
|
// src/components/Stack/Stack.tsx
|
|
9708
|
-
var
|
|
9636
|
+
var import_react36 = require("react");
|
|
9709
9637
|
var import_styled_components49 = __toESM(require("styled-components"));
|
|
9710
9638
|
var import_jsx_runtime221 = require("react/jsx-runtime");
|
|
9711
9639
|
var DEFAULT_ELEMENT4 = "div";
|
|
@@ -9715,7 +9643,7 @@ var StyledStack = import_styled_components49.default.div`
|
|
|
9715
9643
|
gap: ${({ $gap }) => `var(--wui-${$gap})`};
|
|
9716
9644
|
align-items: ${({ $alignItems }) => $alignItems};
|
|
9717
9645
|
`;
|
|
9718
|
-
var StackComponent = (0,
|
|
9646
|
+
var StackComponent = (0, import_react36.forwardRef)(
|
|
9719
9647
|
({ renderAs, direction = "vertical", gap = "space-02", alignItems = "stretch", ...props }, ref) => {
|
|
9720
9648
|
const responsiveGap = useResponsiveProp(gap);
|
|
9721
9649
|
const responsiveDirection = useResponsiveProp(direction);
|
|
@@ -9744,7 +9672,7 @@ var StyledForm = import_styled_components50.default.form`
|
|
|
9744
9672
|
max-width: ${({ $fullWidth }) => $fullWidth ? "auto" : "var(--form-default-width)"};
|
|
9745
9673
|
align-items: ${({ $fullWidth }) => $fullWidth ? "stretch" : "flex-start"};
|
|
9746
9674
|
`;
|
|
9747
|
-
var FormContext = (0,
|
|
9675
|
+
var FormContext = (0, import_react37.createContext)({
|
|
9748
9676
|
values: {},
|
|
9749
9677
|
errors: {},
|
|
9750
9678
|
hasSubmitted: false,
|
|
@@ -9760,11 +9688,11 @@ var FormComponent = ({
|
|
|
9760
9688
|
fullWidth = false,
|
|
9761
9689
|
...props
|
|
9762
9690
|
}, forwardedRef) => {
|
|
9763
|
-
const [errors, setErrors] = (0,
|
|
9764
|
-
const [hasSubmitted, setHasSubmitted] = (0,
|
|
9765
|
-
const innerRef = (0,
|
|
9691
|
+
const [errors, setErrors] = (0, import_react37.useState)({});
|
|
9692
|
+
const [hasSubmitted, setHasSubmitted] = (0, import_react37.useState)(false);
|
|
9693
|
+
const innerRef = (0, import_react37.useRef)();
|
|
9766
9694
|
const ref = forwardedRef ?? innerRef;
|
|
9767
|
-
const autoId = (0,
|
|
9695
|
+
const autoId = (0, import_react37.useId)();
|
|
9768
9696
|
const id = props.id ?? autoId;
|
|
9769
9697
|
const handleValidate = (nextFormData) => {
|
|
9770
9698
|
const nextData = Object.fromEntries(nextFormData.entries());
|
|
@@ -9806,7 +9734,7 @@ var FormComponent = ({
|
|
|
9806
9734
|
void action(null);
|
|
9807
9735
|
}
|
|
9808
9736
|
};
|
|
9809
|
-
const context = (0,
|
|
9737
|
+
const context = (0, import_react37.useMemo)(() => {
|
|
9810
9738
|
return {
|
|
9811
9739
|
values,
|
|
9812
9740
|
errors,
|
|
@@ -9835,15 +9763,15 @@ var FormComponent = ({
|
|
|
9835
9763
|
);
|
|
9836
9764
|
};
|
|
9837
9765
|
FormComponent.displayName = "Form";
|
|
9838
|
-
var Form = (0,
|
|
9766
|
+
var Form = (0, import_react37.forwardRef)(FormComponent);
|
|
9839
9767
|
|
|
9840
9768
|
// src/components/Form/useFormState.tsx
|
|
9841
|
-
var
|
|
9769
|
+
var import_react38 = require("react");
|
|
9842
9770
|
var useFormState = (action, initialData = {}) => {
|
|
9843
|
-
const [data, setData] = (0,
|
|
9844
|
-
const [isPending, setIsPending] = (0,
|
|
9845
|
-
const [error, setError] = (0,
|
|
9846
|
-
const formAction = (0,
|
|
9771
|
+
const [data, setData] = (0, import_react38.useState)(initialData);
|
|
9772
|
+
const [isPending, setIsPending] = (0, import_react38.useState)(false);
|
|
9773
|
+
const [error, setError] = (0, import_react38.useState)(null);
|
|
9774
|
+
const formAction = (0, import_react38.useCallback)(
|
|
9847
9775
|
async (nextFormData) => {
|
|
9848
9776
|
if (nextFormData === null) {
|
|
9849
9777
|
setData(initialData);
|
|
@@ -9874,15 +9802,15 @@ var useFormState = (action, initialData = {}) => {
|
|
|
9874
9802
|
};
|
|
9875
9803
|
|
|
9876
9804
|
// src/components/Form/FormErrorSummary.tsx
|
|
9877
|
-
var
|
|
9805
|
+
var import_react39 = require("react");
|
|
9878
9806
|
var import_type_guards33 = require("@wistia/type-guards");
|
|
9879
9807
|
var import_jsx_runtime223 = require("react/jsx-runtime");
|
|
9880
9808
|
var ErrorItem = ({ name, error, formId }) => {
|
|
9881
9809
|
return /* @__PURE__ */ (0, import_jsx_runtime223.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime223.jsx)(Link, { href: `#${formId}-${name}`, children: error }) }, name);
|
|
9882
9810
|
};
|
|
9883
9811
|
var FormErrorSummary = ({ description }) => {
|
|
9884
|
-
const ref = (0,
|
|
9885
|
-
const { formId, errors, hasSubmitted } = (0,
|
|
9812
|
+
const ref = (0, import_react39.useRef)(null);
|
|
9813
|
+
const { formId, errors, hasSubmitted } = (0, import_react39.useContext)(FormContext);
|
|
9886
9814
|
const isValid = Object.keys(errors).length === 0;
|
|
9887
9815
|
if (isValid || !hasSubmitted) {
|
|
9888
9816
|
return null;
|
|
@@ -9912,7 +9840,7 @@ var FormErrorSummary = ({ description }) => {
|
|
|
9912
9840
|
};
|
|
9913
9841
|
|
|
9914
9842
|
// src/components/FormField/FormField.tsx
|
|
9915
|
-
var
|
|
9843
|
+
var import_react42 = require("react");
|
|
9916
9844
|
var import_styled_components53 = __toESM(require("styled-components"));
|
|
9917
9845
|
var import_type_guards34 = require("@wistia/type-guards");
|
|
9918
9846
|
|
|
@@ -9977,11 +9905,11 @@ var Label = ({
|
|
|
9977
9905
|
Label.displayName = "Label";
|
|
9978
9906
|
|
|
9979
9907
|
// src/components/FormGroup/CheckboxGroup.tsx
|
|
9980
|
-
var
|
|
9908
|
+
var import_react41 = require("react");
|
|
9981
9909
|
|
|
9982
9910
|
// src/components/FormGroup/FormGroup.tsx
|
|
9983
9911
|
var import_styled_components52 = __toESM(require("styled-components"));
|
|
9984
|
-
var
|
|
9912
|
+
var import_react40 = require("react");
|
|
9985
9913
|
var import_jsx_runtime225 = require("react/jsx-runtime");
|
|
9986
9914
|
var StyledFieldset = import_styled_components52.default.fieldset`
|
|
9987
9915
|
border: 0;
|
|
@@ -9990,7 +9918,7 @@ var StyledLegend = import_styled_components52.default.legend`
|
|
|
9990
9918
|
margin-bottom: var(--space-01);
|
|
9991
9919
|
`;
|
|
9992
9920
|
var FormGroup = ({ children, label, ...props }) => {
|
|
9993
|
-
const ref = (0,
|
|
9921
|
+
const ref = (0, import_react40.useRef)();
|
|
9994
9922
|
return /* @__PURE__ */ (0, import_jsx_runtime225.jsxs)(
|
|
9995
9923
|
Stack,
|
|
9996
9924
|
{
|
|
@@ -10015,7 +9943,7 @@ FormGroup.displayName = "FormGroup";
|
|
|
10015
9943
|
|
|
10016
9944
|
// src/components/FormGroup/CheckboxGroup.tsx
|
|
10017
9945
|
var import_jsx_runtime226 = require("react/jsx-runtime");
|
|
10018
|
-
var CheckboxGroupContext = (0,
|
|
9946
|
+
var CheckboxGroupContext = (0, import_react41.createContext)(null);
|
|
10019
9947
|
var CheckboxGroup = ({
|
|
10020
9948
|
children,
|
|
10021
9949
|
name,
|
|
@@ -10023,7 +9951,7 @@ var CheckboxGroup = ({
|
|
|
10023
9951
|
value,
|
|
10024
9952
|
...props
|
|
10025
9953
|
}) => {
|
|
10026
|
-
const context = (0,
|
|
9954
|
+
const context = (0, import_react41.useMemo)(() => {
|
|
10027
9955
|
return {
|
|
10028
9956
|
name,
|
|
10029
9957
|
onChange
|
|
@@ -10108,8 +10036,8 @@ var FormField = ({
|
|
|
10108
10036
|
value,
|
|
10109
10037
|
...props
|
|
10110
10038
|
}) => {
|
|
10111
|
-
const formState = (0,
|
|
10112
|
-
const checkboxGroup = (0,
|
|
10039
|
+
const formState = (0, import_react42.useContext)(FormContext);
|
|
10040
|
+
const checkboxGroup = (0, import_react42.useContext)(CheckboxGroupContext);
|
|
10113
10041
|
const defaultValue = formState.values[name];
|
|
10114
10042
|
const isIntegratedLabel = children.type === Checkbox;
|
|
10115
10043
|
const computedId = id ?? `${formState.formId}-${name}`;
|
|
@@ -10147,7 +10075,7 @@ var FormField = ({
|
|
|
10147
10075
|
"aria-invalid": (0, import_type_guards34.isNotNil)(error)
|
|
10148
10076
|
};
|
|
10149
10077
|
}
|
|
10150
|
-
|
|
10078
|
+
import_react42.Children.only(children);
|
|
10151
10079
|
return /* @__PURE__ */ (0, import_jsx_runtime227.jsxs)(
|
|
10152
10080
|
StyledFormField,
|
|
10153
10081
|
{
|
|
@@ -10156,7 +10084,7 @@ var FormField = ({
|
|
|
10156
10084
|
children: [
|
|
10157
10085
|
!isIntegratedLabel && /* @__PURE__ */ (0, import_jsx_runtime227.jsx)(Label, { htmlFor: computedId, children: label }),
|
|
10158
10086
|
(0, import_type_guards34.isNotNil)(description) ? /* @__PURE__ */ (0, import_jsx_runtime227.jsx)(FormControlLabelDescription, { id: descriptionId, children: description }) : null,
|
|
10159
|
-
(0,
|
|
10087
|
+
(0, import_react42.cloneElement)(children, childProps),
|
|
10160
10088
|
(0, import_type_guards34.isNotNil)(computedError) ? /* @__PURE__ */ (0, import_jsx_runtime227.jsxs)(import_jsx_runtime227.Fragment, { children: [
|
|
10161
10089
|
/* @__PURE__ */ (0, import_jsx_runtime227.jsx)("div", {}),
|
|
10162
10090
|
/* @__PURE__ */ (0, import_jsx_runtime227.jsx)(
|
|
@@ -10174,9 +10102,9 @@ var FormField = ({
|
|
|
10174
10102
|
FormField.displayName = "FormField";
|
|
10175
10103
|
|
|
10176
10104
|
// src/components/FormGroup/RadioGroup.tsx
|
|
10177
|
-
var
|
|
10105
|
+
var import_react43 = require("react");
|
|
10178
10106
|
var import_jsx_runtime228 = require("react/jsx-runtime");
|
|
10179
|
-
var RadioGroupContext = (0,
|
|
10107
|
+
var RadioGroupContext = (0, import_react43.createContext)(null);
|
|
10180
10108
|
var RadioGroup = ({
|
|
10181
10109
|
children,
|
|
10182
10110
|
name,
|
|
@@ -10184,7 +10112,7 @@ var RadioGroup = ({
|
|
|
10184
10112
|
value,
|
|
10185
10113
|
...props
|
|
10186
10114
|
}) => {
|
|
10187
|
-
const context = (0,
|
|
10115
|
+
const context = (0, import_react43.useMemo)(() => {
|
|
10188
10116
|
return {
|
|
10189
10117
|
name,
|
|
10190
10118
|
onChange
|
|
@@ -10195,7 +10123,7 @@ var RadioGroup = ({
|
|
|
10195
10123
|
RadioGroup.displayName = "RadioGroup";
|
|
10196
10124
|
|
|
10197
10125
|
// src/components/IconButton/IconButton.tsx
|
|
10198
|
-
var
|
|
10126
|
+
var import_react44 = require("react");
|
|
10199
10127
|
var import_styled_components54 = __toESM(require("styled-components"));
|
|
10200
10128
|
var import_jsx_runtime229 = require("react/jsx-runtime");
|
|
10201
10129
|
var StyledButton2 = (0, import_styled_components54.default)(Button)`
|
|
@@ -10212,7 +10140,7 @@ var StyledButton2 = (0, import_styled_components54.default)(Button)`
|
|
|
10212
10140
|
align-items: center;
|
|
10213
10141
|
line-height: 1;
|
|
10214
10142
|
`;
|
|
10215
|
-
var IconButton = (0,
|
|
10143
|
+
var IconButton = (0, import_react44.forwardRef)(
|
|
10216
10144
|
({ children, label, size = "md", ...props }, ref) => {
|
|
10217
10145
|
const responsiveSize = useResponsiveProp(size);
|
|
10218
10146
|
return /* @__PURE__ */ (0, import_jsx_runtime229.jsx)(
|
|
@@ -10223,7 +10151,7 @@ var IconButton = (0, import_react45.forwardRef)(
|
|
|
10223
10151
|
"aria-label": label,
|
|
10224
10152
|
"data-wistia-ui-icon-button": true,
|
|
10225
10153
|
size: responsiveSize,
|
|
10226
|
-
children: (0,
|
|
10154
|
+
children: (0, import_react44.cloneElement)(import_react44.Children.only(children), {
|
|
10227
10155
|
size: responsiveSize
|
|
10228
10156
|
})
|
|
10229
10157
|
}
|
|
@@ -10234,7 +10162,7 @@ IconButton.displayName = "IconButton";
|
|
|
10234
10162
|
|
|
10235
10163
|
// src/components/InputClickToCopy/InputClickToCopy.tsx
|
|
10236
10164
|
var import_styled_components55 = __toESM(require("styled-components"));
|
|
10237
|
-
var
|
|
10165
|
+
var import_react45 = require("react");
|
|
10238
10166
|
var import_type_guards35 = require("@wistia/type-guards");
|
|
10239
10167
|
var import_jsx_runtime230 = require("react/jsx-runtime");
|
|
10240
10168
|
var StyledInput2 = (0, import_styled_components55.default)(Input)`
|
|
@@ -10247,10 +10175,10 @@ var StyledInput2 = (0, import_styled_components55.default)(Input)`
|
|
|
10247
10175
|
}
|
|
10248
10176
|
`;
|
|
10249
10177
|
var COPY_SUCCESS_DURATION = 2e3;
|
|
10250
|
-
var InputClickToCopy = (0,
|
|
10178
|
+
var InputClickToCopy = (0, import_react45.forwardRef)(
|
|
10251
10179
|
({ value, onCopy, ...props }, ref) => {
|
|
10252
|
-
const [isCopied, setIsCopied] = (0,
|
|
10253
|
-
(0,
|
|
10180
|
+
const [isCopied, setIsCopied] = (0, import_react45.useState)(false);
|
|
10181
|
+
(0, import_react45.useEffect)(() => {
|
|
10254
10182
|
if (isCopied) {
|
|
10255
10183
|
const timeout = setTimeout(() => {
|
|
10256
10184
|
setIsCopied(false);
|
|
@@ -10409,12 +10337,12 @@ KeyboardShortcut.displayName = "KeyboardShortcut";
|
|
|
10409
10337
|
var import_styled_components57 = __toESM(require("styled-components"));
|
|
10410
10338
|
var import_react_dropdown_menu = require("@radix-ui/react-dropdown-menu");
|
|
10411
10339
|
var import_type_guards37 = require("@wistia/type-guards");
|
|
10412
|
-
var
|
|
10340
|
+
var import_react47 = require("react");
|
|
10413
10341
|
|
|
10414
10342
|
// src/components/Menu/MenuContext.tsx
|
|
10415
|
-
var
|
|
10416
|
-
var MenuContext = (0,
|
|
10417
|
-
var useMenuContext = () => (0,
|
|
10343
|
+
var import_react46 = require("react");
|
|
10344
|
+
var MenuContext = (0, import_react46.createContext)({ compact: false });
|
|
10345
|
+
var useMenuContext = () => (0, import_react46.useContext)(MenuContext);
|
|
10418
10346
|
|
|
10419
10347
|
// src/components/Menu/Menu.tsx
|
|
10420
10348
|
var import_jsx_runtime232 = require("react/jsx-runtime");
|
|
@@ -10518,7 +10446,7 @@ var Menu = ({
|
|
|
10518
10446
|
onInteractOutside,
|
|
10519
10447
|
...props
|
|
10520
10448
|
}) => {
|
|
10521
|
-
const contextValue = (0,
|
|
10449
|
+
const contextValue = (0, import_react47.useMemo)(() => ({ compact }), [compact]);
|
|
10522
10450
|
let controlProps = {
|
|
10523
10451
|
...(0, import_type_guards37.isNotNil)(onOpenChange) && (0, import_type_guards37.isNotNil)(isOpen) ? { open: isOpen, onOpenChange } : {}
|
|
10524
10452
|
};
|
|
@@ -10593,13 +10521,13 @@ var MenuLabel = ({ children, ...props }) => {
|
|
|
10593
10521
|
MenuLabel.displayName = "MenuLabel";
|
|
10594
10522
|
|
|
10595
10523
|
// src/components/Menu/SubMenu.tsx
|
|
10596
|
-
var
|
|
10524
|
+
var import_react49 = require("react");
|
|
10597
10525
|
var import_styled_components61 = __toESM(require("styled-components"));
|
|
10598
10526
|
var import_react_dropdown_menu3 = require("@radix-ui/react-dropdown-menu");
|
|
10599
10527
|
var import_type_guards39 = require("@wistia/type-guards");
|
|
10600
10528
|
|
|
10601
10529
|
// src/components/Menu/MenuItemButton.tsx
|
|
10602
|
-
var
|
|
10530
|
+
var import_react48 = require("react");
|
|
10603
10531
|
var import_styled_components59 = __toESM(require("styled-components"));
|
|
10604
10532
|
var import_type_guards38 = require("@wistia/type-guards");
|
|
10605
10533
|
var import_jsx_runtime234 = require("react/jsx-runtime");
|
|
@@ -10676,7 +10604,7 @@ var StyledBadgeContainer = import_styled_components59.default.div`
|
|
|
10676
10604
|
font-size: var(--wui-typography-label-4-size);
|
|
10677
10605
|
color: var(--wui-color-text-secondary);
|
|
10678
10606
|
`;
|
|
10679
|
-
var MenuItemButton = (0,
|
|
10607
|
+
var MenuItemButton = (0, import_react48.forwardRef)(({ children, appearance, command, icon, ...props }, ref) => {
|
|
10680
10608
|
let { colorScheme, badge } = props;
|
|
10681
10609
|
if (appearance === "dangerous") {
|
|
10682
10610
|
if ((0, import_type_guards38.isNotUndefined)(colorScheme)) {
|
|
@@ -10776,7 +10704,7 @@ var SubMenu = ({
|
|
|
10776
10704
|
...props
|
|
10777
10705
|
}) => {
|
|
10778
10706
|
const { isSmAndUp } = useMq();
|
|
10779
|
-
const [isExpanded, setIsExpanded] = (0,
|
|
10707
|
+
const [isExpanded, setIsExpanded] = (0, import_react49.useState)(false);
|
|
10780
10708
|
const { compact } = useMenuContext();
|
|
10781
10709
|
return isSmAndUp ? /* @__PURE__ */ (0, import_jsx_runtime236.jsxs)(import_react_dropdown_menu3.DropdownMenuSub, { onOpenChange, children: [
|
|
10782
10710
|
/* @__PURE__ */ (0, import_jsx_runtime236.jsxs)(SubMenuTrigger, { ...props, children: [
|
|
@@ -10805,10 +10733,10 @@ var SubMenu = ({
|
|
|
10805
10733
|
SubMenu.displayName = "SubMenu";
|
|
10806
10734
|
|
|
10807
10735
|
// src/components/Menu/MenuItem.tsx
|
|
10808
|
-
var
|
|
10736
|
+
var import_react50 = require("react");
|
|
10809
10737
|
var import_react_dropdown_menu4 = require("@radix-ui/react-dropdown-menu");
|
|
10810
10738
|
var import_jsx_runtime237 = require("react/jsx-runtime");
|
|
10811
|
-
var MenuItem = (0,
|
|
10739
|
+
var MenuItem = (0, import_react50.forwardRef)(
|
|
10812
10740
|
({ onSelect = () => null, ...props }, ref) => {
|
|
10813
10741
|
return /* @__PURE__ */ (0, import_jsx_runtime237.jsx)(
|
|
10814
10742
|
import_react_dropdown_menu4.DropdownMenuItem,
|
|
@@ -10957,7 +10885,7 @@ var CheckboxMenuItem = ({
|
|
|
10957
10885
|
CheckboxMenuItem.displayName = "CheckboxMenuItem";
|
|
10958
10886
|
|
|
10959
10887
|
// src/components/Modal/Modal.tsx
|
|
10960
|
-
var
|
|
10888
|
+
var import_react54 = require("react");
|
|
10961
10889
|
var import_styled_components66 = __toESM(require("styled-components"));
|
|
10962
10890
|
var import_react_dialog4 = require("@radix-ui/react-dialog");
|
|
10963
10891
|
var import_type_guards42 = require("@wistia/type-guards");
|
|
@@ -11017,19 +10945,19 @@ var ModalHeader = ({
|
|
|
11017
10945
|
};
|
|
11018
10946
|
|
|
11019
10947
|
// src/components/Modal/ModalContent.tsx
|
|
11020
|
-
var
|
|
10948
|
+
var import_react52 = require("react");
|
|
11021
10949
|
var import_styled_components64 = __toESM(require("styled-components"));
|
|
11022
10950
|
var import_react_dialog3 = require("@radix-ui/react-dialog");
|
|
11023
10951
|
|
|
11024
10952
|
// src/private/hooks/useFocusRestore/useFocusRestore.ts
|
|
11025
|
-
var
|
|
10953
|
+
var import_react51 = require("react");
|
|
11026
10954
|
var import_type_guards41 = require("@wistia/type-guards");
|
|
11027
10955
|
var useFocusRestore = () => {
|
|
11028
|
-
const previouslyFocusedRef = (0,
|
|
11029
|
-
(0,
|
|
10956
|
+
const previouslyFocusedRef = (0, import_react51.useRef)(null);
|
|
10957
|
+
(0, import_react51.useEffect)(() => {
|
|
11030
10958
|
previouslyFocusedRef.current = document.activeElement;
|
|
11031
10959
|
}, []);
|
|
11032
|
-
(0,
|
|
10960
|
+
(0, import_react51.useEffect)(() => {
|
|
11033
10961
|
return () => {
|
|
11034
10962
|
if ((0, import_type_guards41.isNotNil)(previouslyFocusedRef.current)) {
|
|
11035
10963
|
setTimeout(() => {
|
|
@@ -11120,7 +11048,7 @@ var StyledModalContent = (0, import_styled_components64.default)(import_react_di
|
|
|
11120
11048
|
}
|
|
11121
11049
|
}
|
|
11122
11050
|
`;
|
|
11123
|
-
var ModalContent = (0,
|
|
11051
|
+
var ModalContent = (0, import_react52.forwardRef)(
|
|
11124
11052
|
({ fullHeight, width, alignHorizontal, alignVertical, children, ...props }, ref) => {
|
|
11125
11053
|
useFocusRestore();
|
|
11126
11054
|
return /* @__PURE__ */ (0, import_jsx_runtime243.jsx)(
|
|
@@ -11140,7 +11068,7 @@ var ModalContent = (0, import_react53.forwardRef)(
|
|
|
11140
11068
|
);
|
|
11141
11069
|
|
|
11142
11070
|
// src/private/components/Backdrop/Backdrop.tsx
|
|
11143
|
-
var
|
|
11071
|
+
var import_react53 = require("react");
|
|
11144
11072
|
var import_styled_components65 = __toESM(require("styled-components"));
|
|
11145
11073
|
var import_jsx_runtime244 = require("react/jsx-runtime");
|
|
11146
11074
|
var alignVerticalMap = {
|
|
@@ -11180,7 +11108,7 @@ var BackdropComponent = import_styled_components65.default.div`
|
|
|
11180
11108
|
}
|
|
11181
11109
|
}
|
|
11182
11110
|
`;
|
|
11183
|
-
var Backdrop = (0,
|
|
11111
|
+
var Backdrop = (0, import_react53.forwardRef)(
|
|
11184
11112
|
({ alignHorizontal = "center", alignVertical = "center", children, ...otherProps }, ref) => /* @__PURE__ */ (0, import_jsx_runtime244.jsx)(
|
|
11185
11113
|
BackdropComponent,
|
|
11186
11114
|
{
|
|
@@ -11203,7 +11131,7 @@ var ModalBody = import_styled_components66.default.div`
|
|
|
11203
11131
|
flex: 1 0 0;
|
|
11204
11132
|
order: 2;
|
|
11205
11133
|
`;
|
|
11206
|
-
var Modal = (0,
|
|
11134
|
+
var Modal = (0, import_react54.forwardRef)(
|
|
11207
11135
|
({
|
|
11208
11136
|
children,
|
|
11209
11137
|
fullHeight = false,
|
|
@@ -11505,7 +11433,7 @@ var ProgressBar = ({
|
|
|
11505
11433
|
ProgressBar.displayName = "ProgressBar";
|
|
11506
11434
|
|
|
11507
11435
|
// src/components/Radio/Radio.tsx
|
|
11508
|
-
var
|
|
11436
|
+
var import_react55 = require("react");
|
|
11509
11437
|
var import_styled_components70 = __toESM(require("styled-components"));
|
|
11510
11438
|
var import_type_guards45 = require("@wistia/type-guards");
|
|
11511
11439
|
var import_jsx_runtime249 = require("react/jsx-runtime");
|
|
@@ -11608,7 +11536,7 @@ var StyledHiddenRadioInput = import_styled_components70.default.input`
|
|
|
11608
11536
|
display: block;
|
|
11609
11537
|
}
|
|
11610
11538
|
`;
|
|
11611
|
-
var Radio = (0,
|
|
11539
|
+
var Radio = (0, import_react55.forwardRef)(
|
|
11612
11540
|
({
|
|
11613
11541
|
checked,
|
|
11614
11542
|
disabled = false,
|
|
@@ -11623,7 +11551,7 @@ var Radio = (0, import_react56.forwardRef)(
|
|
|
11623
11551
|
hideLabel = false,
|
|
11624
11552
|
...props
|
|
11625
11553
|
}, ref) => {
|
|
11626
|
-
const generatedId = (0,
|
|
11554
|
+
const generatedId = (0, import_react55.useId)();
|
|
11627
11555
|
const computedId = (0, import_type_guards45.isNonEmptyString)(id) ? id : `wistia-ui-radio-${generatedId}`;
|
|
11628
11556
|
return /* @__PURE__ */ (0, import_jsx_runtime249.jsxs)(
|
|
11629
11557
|
StyledRadioWrapper,
|
|
@@ -11673,20 +11601,20 @@ var Radio = (0, import_react56.forwardRef)(
|
|
|
11673
11601
|
Radio.displayName = "Radio";
|
|
11674
11602
|
|
|
11675
11603
|
// src/components/SegmentedControl/SegmentedControl.tsx
|
|
11676
|
-
var
|
|
11604
|
+
var import_react58 = require("react");
|
|
11677
11605
|
var import_styled_components72 = __toESM(require("styled-components"));
|
|
11678
11606
|
var import_react_toggle_group = require("@radix-ui/react-toggle-group");
|
|
11679
11607
|
var import_type_guards46 = require("@wistia/type-guards");
|
|
11680
11608
|
|
|
11681
11609
|
// src/components/SegmentedControl/useSelectedItemStyle.tsx
|
|
11682
|
-
var
|
|
11610
|
+
var import_react56 = require("react");
|
|
11683
11611
|
var import_jsx_runtime250 = require("react/jsx-runtime");
|
|
11684
|
-
var SelectedItemStyleContext = (0,
|
|
11612
|
+
var SelectedItemStyleContext = (0, import_react56.createContext)(null);
|
|
11685
11613
|
var SelectedItemStyleProvider = ({
|
|
11686
11614
|
children
|
|
11687
11615
|
}) => {
|
|
11688
|
-
const [selectedItemMeasurements, setSelectedItemMeasurements] = (0,
|
|
11689
|
-
const selectedItemIndicatorStyle = (0,
|
|
11616
|
+
const [selectedItemMeasurements, setSelectedItemMeasurements] = (0, import_react56.useState)(null);
|
|
11617
|
+
const selectedItemIndicatorStyle = (0, import_react56.useMemo)(
|
|
11690
11618
|
() => selectedItemMeasurements != null ? {
|
|
11691
11619
|
height: `${selectedItemMeasurements.offsetHeight}px`,
|
|
11692
11620
|
transform: `translateX(${selectedItemMeasurements.offsetLeft}px) translateY(-50%)`,
|
|
@@ -11696,7 +11624,7 @@ var SelectedItemStyleProvider = ({
|
|
|
11696
11624
|
},
|
|
11697
11625
|
[selectedItemMeasurements]
|
|
11698
11626
|
);
|
|
11699
|
-
const contextValue = (0,
|
|
11627
|
+
const contextValue = (0, import_react56.useMemo)(
|
|
11700
11628
|
() => ({
|
|
11701
11629
|
setSelectedItemMeasurements,
|
|
11702
11630
|
selectedItemIndicatorStyle
|
|
@@ -11706,7 +11634,7 @@ var SelectedItemStyleProvider = ({
|
|
|
11706
11634
|
return /* @__PURE__ */ (0, import_jsx_runtime250.jsx)(SelectedItemStyleContext.Provider, { value: contextValue, children });
|
|
11707
11635
|
};
|
|
11708
11636
|
var useSelectedItemStyle = () => {
|
|
11709
|
-
const context = (0,
|
|
11637
|
+
const context = (0, import_react56.useContext)(SelectedItemStyleContext);
|
|
11710
11638
|
if (context === null) {
|
|
11711
11639
|
throw new Error("useSelectedItemStyle must be used within a SelectedItemStyleProvider");
|
|
11712
11640
|
}
|
|
@@ -11717,11 +11645,11 @@ var useSelectedItemStyle = () => {
|
|
|
11717
11645
|
var import_styled_components71 = __toESM(require("styled-components"));
|
|
11718
11646
|
|
|
11719
11647
|
// src/components/SegmentedControl/useSegmentedControlValue.tsx
|
|
11720
|
-
var
|
|
11721
|
-
var SegmentedControlValueContext = (0,
|
|
11648
|
+
var import_react57 = require("react");
|
|
11649
|
+
var SegmentedControlValueContext = (0, import_react57.createContext)(null);
|
|
11722
11650
|
var SegmentedControlValueProvider = SegmentedControlValueContext.Provider;
|
|
11723
11651
|
var useSegmentedControlValue = () => {
|
|
11724
|
-
const context = (0,
|
|
11652
|
+
const context = (0, import_react57.useContext)(SegmentedControlValueContext);
|
|
11725
11653
|
if (context === null) {
|
|
11726
11654
|
throw new Error("useSegmentedControlValue must be used within a SegmentedControlValueProvider");
|
|
11727
11655
|
}
|
|
@@ -11767,7 +11695,7 @@ var segmentedControlStyles = import_styled_components72.css`
|
|
|
11767
11695
|
var StyledSegmentedControl = (0, import_styled_components72.default)(import_react_toggle_group.Root)`
|
|
11768
11696
|
${segmentedControlStyles}
|
|
11769
11697
|
`;
|
|
11770
|
-
var SegmentedControl = (0,
|
|
11698
|
+
var SegmentedControl = (0, import_react58.forwardRef)(
|
|
11771
11699
|
({
|
|
11772
11700
|
children,
|
|
11773
11701
|
disabled = false,
|
|
@@ -11802,7 +11730,7 @@ var SegmentedControl = (0, import_react59.forwardRef)(
|
|
|
11802
11730
|
SegmentedControl.displayName = "SegmentedControl";
|
|
11803
11731
|
|
|
11804
11732
|
// src/components/SegmentedControl/SegmentedControlItem.tsx
|
|
11805
|
-
var
|
|
11733
|
+
var import_react59 = require("react");
|
|
11806
11734
|
var import_styled_components73 = __toESM(require("styled-components"));
|
|
11807
11735
|
var import_react_toggle_group2 = require("@radix-ui/react-toggle-group");
|
|
11808
11736
|
var import_type_guards47 = require("@wistia/type-guards");
|
|
@@ -11870,11 +11798,11 @@ var segmentedControlItemStyles = import_styled_components73.css`
|
|
|
11870
11798
|
var StyledSegmentedControlItem = (0, import_styled_components73.default)(import_react_toggle_group2.Item)`
|
|
11871
11799
|
${segmentedControlItemStyles}
|
|
11872
11800
|
`;
|
|
11873
|
-
var SegmentedControlItem = (0,
|
|
11801
|
+
var SegmentedControlItem = (0, import_react59.forwardRef)(
|
|
11874
11802
|
({ disabled, icon, label, "aria-label": ariaLabel, value }, forwardedRef) => {
|
|
11875
11803
|
const selectedValue = useSegmentedControlValue();
|
|
11876
11804
|
const { setSelectedItemMeasurements } = useSelectedItemStyle();
|
|
11877
|
-
const buttonRef = (0,
|
|
11805
|
+
const buttonRef = (0, import_react59.useRef)(null);
|
|
11878
11806
|
const combinedRef = mergeRefs([buttonRef, forwardedRef]);
|
|
11879
11807
|
const handleClick = (event) => {
|
|
11880
11808
|
const target = event.target;
|
|
@@ -11883,7 +11811,7 @@ var SegmentedControlItem = (0, import_react60.forwardRef)(
|
|
|
11883
11811
|
event.preventDefault();
|
|
11884
11812
|
}
|
|
11885
11813
|
};
|
|
11886
|
-
(0,
|
|
11814
|
+
(0, import_react59.useEffect)(() => {
|
|
11887
11815
|
const buttonElem = buttonRef.current;
|
|
11888
11816
|
if (!buttonElem) {
|
|
11889
11817
|
return void 0;
|
|
@@ -11929,7 +11857,7 @@ SegmentedControlItem.displayName = "SegmentedControlItem";
|
|
|
11929
11857
|
|
|
11930
11858
|
// src/components/Select/Select.tsx
|
|
11931
11859
|
var import_react_select = require("@radix-ui/react-select");
|
|
11932
|
-
var
|
|
11860
|
+
var import_react60 = require("react");
|
|
11933
11861
|
var import_styled_components74 = __toESM(require("styled-components"));
|
|
11934
11862
|
var import_jsx_runtime254 = require("react/jsx-runtime");
|
|
11935
11863
|
var StyledTrigger = (0, import_styled_components74.default)(import_react_select.Trigger)`
|
|
@@ -11994,7 +11922,7 @@ var StyledContent3 = (0, import_styled_components74.default)(import_react_select
|
|
|
11994
11922
|
max-height: var(--radix-select-content-available-height);
|
|
11995
11923
|
z-index: var(--wui-zindex-select);
|
|
11996
11924
|
`;
|
|
11997
|
-
var Select = (0,
|
|
11925
|
+
var Select = (0, import_react60.forwardRef)(
|
|
11998
11926
|
({
|
|
11999
11927
|
colorScheme = "inherit",
|
|
12000
11928
|
children,
|
|
@@ -12043,7 +11971,7 @@ Select.displayName = "Select";
|
|
|
12043
11971
|
|
|
12044
11972
|
// src/components/Select/SelectOption.tsx
|
|
12045
11973
|
var import_react_select2 = require("@radix-ui/react-select");
|
|
12046
|
-
var
|
|
11974
|
+
var import_react61 = require("react");
|
|
12047
11975
|
var import_styled_components75 = __toESM(require("styled-components"));
|
|
12048
11976
|
var import_type_guards48 = require("@wistia/type-guards");
|
|
12049
11977
|
var import_jsx_runtime255 = require("react/jsx-runtime");
|
|
@@ -12074,7 +12002,7 @@ var StyledItem = (0, import_styled_components75.default)(import_react_select2.It
|
|
|
12074
12002
|
var StyledIconContainer = import_styled_components75.default.span`
|
|
12075
12003
|
width: 12px;
|
|
12076
12004
|
`;
|
|
12077
|
-
var SelectOption = (0,
|
|
12005
|
+
var SelectOption = (0, import_react61.forwardRef)(
|
|
12078
12006
|
({ children, selectedDisplayValue, ...props }, forwardedRef) => {
|
|
12079
12007
|
return /* @__PURE__ */ (0, import_jsx_runtime255.jsxs)(
|
|
12080
12008
|
StyledItem,
|
|
@@ -12122,7 +12050,7 @@ var SelectOptionGroup = ({ children, label, ...props }) => {
|
|
|
12122
12050
|
};
|
|
12123
12051
|
|
|
12124
12052
|
// src/components/Switch/Switch.tsx
|
|
12125
|
-
var
|
|
12053
|
+
var import_react62 = require("react");
|
|
12126
12054
|
var import_styled_components77 = __toESM(require("styled-components"));
|
|
12127
12055
|
var import_type_guards49 = require("@wistia/type-guards");
|
|
12128
12056
|
var import_jsx_runtime257 = require("react/jsx-runtime");
|
|
@@ -12227,7 +12155,7 @@ var StyledHiddenSwitchInput = import_styled_components77.default.input`
|
|
|
12227
12155
|
}
|
|
12228
12156
|
}
|
|
12229
12157
|
`;
|
|
12230
|
-
var Switch = (0,
|
|
12158
|
+
var Switch = (0, import_react62.forwardRef)(
|
|
12231
12159
|
({
|
|
12232
12160
|
checked,
|
|
12233
12161
|
disabled = false,
|
|
@@ -12242,7 +12170,7 @@ var Switch = (0, import_react63.forwardRef)(
|
|
|
12242
12170
|
hideLabel = false,
|
|
12243
12171
|
...props
|
|
12244
12172
|
}, ref) => {
|
|
12245
|
-
const generatedId = (0,
|
|
12173
|
+
const generatedId = (0, import_react62.useId)();
|
|
12246
12174
|
const computedId = (0, import_type_guards49.isNonEmptyString)(id) ? id : `wistia-ui-switch-${generatedId}`;
|
|
12247
12175
|
return /* @__PURE__ */ (0, import_jsx_runtime257.jsxs)(StyledSwitchWrapper, { $disabled: disabled, children: [
|
|
12248
12176
|
/* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
|
|
@@ -12332,8 +12260,8 @@ var Table = ({
|
|
|
12332
12260
|
var import_styled_components79 = __toESM(require("styled-components"));
|
|
12333
12261
|
|
|
12334
12262
|
// src/components/Table/TableSectionContext.ts
|
|
12335
|
-
var
|
|
12336
|
-
var TableSectionContext = (0,
|
|
12263
|
+
var import_react63 = require("react");
|
|
12264
|
+
var TableSectionContext = (0, import_react63.createContext)(null);
|
|
12337
12265
|
|
|
12338
12266
|
// src/components/Table/TableBody.tsx
|
|
12339
12267
|
var import_jsx_runtime259 = require("react/jsx-runtime");
|
|
@@ -12343,7 +12271,7 @@ var TableBody = ({ children, ...props }) => {
|
|
|
12343
12271
|
};
|
|
12344
12272
|
|
|
12345
12273
|
// src/components/Table/TableCell.tsx
|
|
12346
|
-
var
|
|
12274
|
+
var import_react64 = require("react");
|
|
12347
12275
|
var import_styled_components80 = __toESM(require("styled-components"));
|
|
12348
12276
|
var import_jsx_runtime260 = require("react/jsx-runtime");
|
|
12349
12277
|
var sharedStyles = import_styled_components80.css`
|
|
@@ -12364,7 +12292,7 @@ var StyledTd = import_styled_components80.default.td`
|
|
|
12364
12292
|
line-height: var(--wui-typography-body-2-line-height);
|
|
12365
12293
|
`;
|
|
12366
12294
|
var TableCell = ({ children, ...props }) => {
|
|
12367
|
-
const section = (0,
|
|
12295
|
+
const section = (0, import_react64.useContext)(TableSectionContext);
|
|
12368
12296
|
if (section === "head") {
|
|
12369
12297
|
return /* @__PURE__ */ (0, import_jsx_runtime260.jsx)(StyledTh, { ...props, children });
|
|
12370
12298
|
}
|
|
@@ -12396,7 +12324,7 @@ var TableRow = ({ children, ...props }) => {
|
|
|
12396
12324
|
};
|
|
12397
12325
|
|
|
12398
12326
|
// src/components/Tabs/Tabs.tsx
|
|
12399
|
-
var
|
|
12327
|
+
var import_react68 = require("react");
|
|
12400
12328
|
var import_react_tabs4 = require("@radix-ui/react-tabs");
|
|
12401
12329
|
var import_type_guards51 = require("@wistia/type-guards");
|
|
12402
12330
|
var import_styled_components88 = __toESM(require("styled-components"));
|
|
@@ -12451,17 +12379,17 @@ var TabList = ({
|
|
|
12451
12379
|
TabList.displayName = "TabList";
|
|
12452
12380
|
|
|
12453
12381
|
// src/components/Tabs/TabItem.tsx
|
|
12454
|
-
var
|
|
12382
|
+
var import_react66 = require("react");
|
|
12455
12383
|
var import_styled_components86 = __toESM(require("styled-components"));
|
|
12456
12384
|
var import_react_tabs3 = require("@radix-ui/react-tabs");
|
|
12457
12385
|
var import_type_guards50 = require("@wistia/type-guards");
|
|
12458
12386
|
|
|
12459
12387
|
// src/components/Tabs/useTabsValue.tsx
|
|
12460
|
-
var
|
|
12461
|
-
var TabsValueContext = (0,
|
|
12388
|
+
var import_react65 = require("react");
|
|
12389
|
+
var TabsValueContext = (0, import_react65.createContext)(null);
|
|
12462
12390
|
var TabsValueProvider = TabsValueContext.Provider;
|
|
12463
12391
|
var useTabsValue = () => {
|
|
12464
|
-
const context = (0,
|
|
12392
|
+
const context = (0, import_react65.useContext)(TabsValueContext);
|
|
12465
12393
|
if (context === null) {
|
|
12466
12394
|
throw new Error("useTabsValue must be used within a TabsValueProvider");
|
|
12467
12395
|
}
|
|
@@ -12477,13 +12405,13 @@ var StyledTabItem = (0, import_styled_components86.default)(import_react_tabs3.T
|
|
|
12477
12405
|
outline: none;
|
|
12478
12406
|
}
|
|
12479
12407
|
`;
|
|
12480
|
-
var TabItem = (0,
|
|
12408
|
+
var TabItem = (0, import_react66.forwardRef)(
|
|
12481
12409
|
({ disabled = false, icon, label, "aria-label": ariaLabel, value }, forwardedRef) => {
|
|
12482
12410
|
const selectedValue = useTabsValue();
|
|
12483
12411
|
const { setSelectedItemMeasurements } = useSelectedItemStyle();
|
|
12484
|
-
const buttonRef = (0,
|
|
12412
|
+
const buttonRef = (0, import_react66.useRef)(null);
|
|
12485
12413
|
const combinedRef = mergeRefs([buttonRef, forwardedRef]);
|
|
12486
|
-
(0,
|
|
12414
|
+
(0, import_react66.useEffect)(() => {
|
|
12487
12415
|
const buttonElem = buttonRef.current;
|
|
12488
12416
|
if (!buttonElem) {
|
|
12489
12417
|
return void 0;
|
|
@@ -12527,16 +12455,16 @@ var TabItem = (0, import_react67.forwardRef)(
|
|
|
12527
12455
|
TabItem.displayName = "TabItem";
|
|
12528
12456
|
|
|
12529
12457
|
// src/components/Tabs/extractTabItems.ts
|
|
12530
|
-
var
|
|
12458
|
+
var import_react67 = require("react");
|
|
12531
12459
|
var extractTabItems = (children) => {
|
|
12532
12460
|
const tabItems = [];
|
|
12533
|
-
|
|
12534
|
-
if (!(0,
|
|
12461
|
+
import_react67.Children.forEach(children, (child) => {
|
|
12462
|
+
if (!(0, import_react67.isValidElement)(child)) {
|
|
12535
12463
|
return;
|
|
12536
12464
|
}
|
|
12537
12465
|
if (typeof child.type !== "string" && child.type.displayName === "Tab") {
|
|
12538
12466
|
tabItems.push(child);
|
|
12539
|
-
} else if (child.type ===
|
|
12467
|
+
} else if (child.type === import_react67.Fragment) {
|
|
12540
12468
|
const fragmentElement = child;
|
|
12541
12469
|
tabItems.push(...extractTabItems(fragmentElement.props.children));
|
|
12542
12470
|
} else if ((child.props.children ?? null) != null) {
|
|
@@ -12583,7 +12511,7 @@ var StyledTabsRoot = (0, import_styled_components88.default)(import_react_tabs4.
|
|
|
12583
12511
|
flex-direction: column;
|
|
12584
12512
|
height: ${({ $stickyHeaders }) => $stickyHeaders ? "100%" : "auto"};
|
|
12585
12513
|
`;
|
|
12586
|
-
var Tabs = (0,
|
|
12514
|
+
var Tabs = (0, import_react68.forwardRef)(
|
|
12587
12515
|
({
|
|
12588
12516
|
children,
|
|
12589
12517
|
fullWidth = true,
|
|
@@ -12595,7 +12523,7 @@ var Tabs = (0, import_react69.forwardRef)(
|
|
|
12595
12523
|
...props
|
|
12596
12524
|
}, ref) => {
|
|
12597
12525
|
const tabItems = extractTabItems(children);
|
|
12598
|
-
const [internalSelectedValue, setInternalSelectedValue] = (0,
|
|
12526
|
+
const [internalSelectedValue, setInternalSelectedValue] = (0, import_react68.useState)(defaultSelectedValue);
|
|
12599
12527
|
const modeProps = defaultSelectedValue !== void 0 ? {
|
|
12600
12528
|
defaultValue: defaultSelectedValue,
|
|
12601
12529
|
onValueChange: setInternalSelectedValue
|
|
@@ -12681,15 +12609,15 @@ var Tabs = (0, import_react69.forwardRef)(
|
|
|
12681
12609
|
Tabs.displayName = "Tabs";
|
|
12682
12610
|
|
|
12683
12611
|
// src/components/Tabs/Tab.tsx
|
|
12684
|
-
var
|
|
12612
|
+
var import_react69 = require("react");
|
|
12685
12613
|
var import_jsx_runtime269 = require("react/jsx-runtime");
|
|
12686
|
-
var Tab = (0,
|
|
12614
|
+
var Tab = (0, import_react69.forwardRef)(({ children }, ref) => {
|
|
12687
12615
|
return /* @__PURE__ */ (0, import_jsx_runtime269.jsx)("div", { ref, children });
|
|
12688
12616
|
});
|
|
12689
12617
|
Tab.displayName = "Tab";
|
|
12690
12618
|
|
|
12691
12619
|
// src/components/Tag/Tag.tsx
|
|
12692
|
-
var
|
|
12620
|
+
var import_react70 = require("react");
|
|
12693
12621
|
var import_styled_components89 = __toESM(require("styled-components"));
|
|
12694
12622
|
var import_type_guards52 = require("@wistia/type-guards");
|
|
12695
12623
|
var import_jsx_runtime270 = require("react/jsx-runtime");
|
|
@@ -12806,7 +12734,7 @@ var RemoveButton = ({ onClickRemove, onClickRemoveLabel, colorScheme }) => {
|
|
|
12806
12734
|
)
|
|
12807
12735
|
] });
|
|
12808
12736
|
};
|
|
12809
|
-
var Tag = (0,
|
|
12737
|
+
var Tag = (0, import_react70.forwardRef)(
|
|
12810
12738
|
({ onClickRemove, colorScheme = "inherit", href, icon, label, onClickRemoveLabel, ...props }, ref) => {
|
|
12811
12739
|
const hasIcon = (0, import_type_guards52.isNotNil)(icon);
|
|
12812
12740
|
const labelProps = (0, import_type_guards52.isNotNil)(href) && (0, import_type_guards52.isNonEmptyString)(href) ? { href, as: "a" } : { as: "span" };
|
|
@@ -12880,9 +12808,9 @@ var ThumbnailBadge = ({ icon, label, ...props }) => {
|
|
|
12880
12808
|
ThumbnailBadge.displayName = "ThumbnailBadge";
|
|
12881
12809
|
|
|
12882
12810
|
// src/components/Thumbnail/Thumbnail.tsx
|
|
12883
|
-
var
|
|
12884
|
-
var
|
|
12885
|
-
var
|
|
12811
|
+
var import_react71 = require("react");
|
|
12812
|
+
var import_styled_components93 = __toESM(require("styled-components"));
|
|
12813
|
+
var import_type_guards56 = require("@wistia/type-guards");
|
|
12886
12814
|
|
|
12887
12815
|
// src/private/helpers/getBackgroundGradient/getBackgroundGradient.ts
|
|
12888
12816
|
var import_type_guards54 = require("@wistia/type-guards");
|
|
@@ -13017,7 +12945,17 @@ var getBackgroundGradient = (gradientName = void 0) => {
|
|
|
13017
12945
|
};
|
|
13018
12946
|
|
|
13019
12947
|
// src/components/Thumbnail/ThumbnailStoryboardViewer.tsx
|
|
12948
|
+
var import_styled_components92 = __toESM(require("styled-components"));
|
|
12949
|
+
var import_type_guards55 = require("@wistia/type-guards");
|
|
13020
12950
|
var import_jsx_runtime272 = require("react/jsx-runtime");
|
|
12951
|
+
var ScrubLine = import_styled_components92.default.div`
|
|
12952
|
+
position: absolute;
|
|
12953
|
+
top: 0;
|
|
12954
|
+
height: 100%;
|
|
12955
|
+
width: 2px;
|
|
12956
|
+
background-color: var(--wui-color-bg-surface-selected-active);
|
|
12957
|
+
z-index: 1;
|
|
12958
|
+
`;
|
|
13021
12959
|
var getScaledDimensions = (originalAspectRatio, targetAspectRatio, viewerWidth, viewerHeight) => {
|
|
13022
12960
|
let scaledHeight = viewerHeight;
|
|
13023
12961
|
let scaledWidth = viewerWidth;
|
|
@@ -13057,7 +12995,7 @@ var ThumbnailStoryboardViewer = ({
|
|
|
13057
12995
|
targetAspectRatio,
|
|
13058
12996
|
scaleFactor = 1,
|
|
13059
12997
|
framesPerRow = 10,
|
|
13060
|
-
|
|
12998
|
+
cursorPosition,
|
|
13061
12999
|
...props
|
|
13062
13000
|
}) => {
|
|
13063
13001
|
const originalAspectRatio = frameWidth / frameHeight;
|
|
@@ -13093,7 +13031,9 @@ var ThumbnailStoryboardViewer = ({
|
|
|
13093
13031
|
storyboardHeight * scaleFactorFromAspectRatioFit * scaleFactor
|
|
13094
13032
|
);
|
|
13095
13033
|
const backgroundSize = `${scaledStoryboardWidth}px ${scaledStoryboardHeight}px`;
|
|
13096
|
-
const backgroundImage =
|
|
13034
|
+
const backgroundImage = `url(${storyboardUrl})`;
|
|
13035
|
+
const showScrubLine = (0, import_type_guards55.isNotNil)(cursorPosition);
|
|
13036
|
+
const scrubLinePosition = (0, import_type_guards55.isNotNil)(cursorPosition) ? `${cursorPosition - 1}px` : "0";
|
|
13097
13037
|
const viewerStyles = {
|
|
13098
13038
|
position: "relative",
|
|
13099
13039
|
overflow: "hidden",
|
|
@@ -13110,24 +13050,34 @@ var ThumbnailStoryboardViewer = ({
|
|
|
13110
13050
|
backgroundPosition,
|
|
13111
13051
|
backgroundSize
|
|
13112
13052
|
};
|
|
13113
|
-
return /* @__PURE__ */ (0, import_jsx_runtime272.
|
|
13053
|
+
return /* @__PURE__ */ (0, import_jsx_runtime272.jsxs)(
|
|
13114
13054
|
"div",
|
|
13115
13055
|
{
|
|
13116
13056
|
...props,
|
|
13117
13057
|
style: viewerStyles,
|
|
13118
|
-
children:
|
|
13058
|
+
children: [
|
|
13059
|
+
/* @__PURE__ */ (0, import_jsx_runtime272.jsx)("div", { style: storyboardStyles }),
|
|
13060
|
+
showScrubLine ? /* @__PURE__ */ (0, import_jsx_runtime272.jsx)(
|
|
13061
|
+
ScrubLine,
|
|
13062
|
+
{
|
|
13063
|
+
style: {
|
|
13064
|
+
left: scrubLinePosition
|
|
13065
|
+
}
|
|
13066
|
+
}
|
|
13067
|
+
) : null
|
|
13068
|
+
]
|
|
13119
13069
|
}
|
|
13120
13070
|
);
|
|
13121
13071
|
};
|
|
13122
13072
|
|
|
13123
13073
|
// src/components/Thumbnail/Thumbnail.tsx
|
|
13124
13074
|
var import_jsx_runtime273 = require("react/jsx-runtime");
|
|
13125
|
-
var WideThumbnailImage =
|
|
13075
|
+
var WideThumbnailImage = import_styled_components93.default.img`
|
|
13126
13076
|
height: 100%;
|
|
13127
13077
|
object-fit: cover;
|
|
13128
13078
|
width: 100%;
|
|
13129
13079
|
`;
|
|
13130
|
-
var SquareThumbnailImage =
|
|
13080
|
+
var SquareThumbnailImage = import_styled_components93.default.img`
|
|
13131
13081
|
backdrop-filter: blur(8px);
|
|
13132
13082
|
object-fit: contain;
|
|
13133
13083
|
width: 100%;
|
|
@@ -13138,7 +13088,6 @@ var ThumbnailImage = ({ thumbnailImageType, thumbnailUrl }) => {
|
|
|
13138
13088
|
WideThumbnailImage,
|
|
13139
13089
|
{
|
|
13140
13090
|
alt: "",
|
|
13141
|
-
role: "img",
|
|
13142
13091
|
src: thumbnailUrl
|
|
13143
13092
|
}
|
|
13144
13093
|
);
|
|
@@ -13147,16 +13096,15 @@ var ThumbnailImage = ({ thumbnailImageType, thumbnailUrl }) => {
|
|
|
13147
13096
|
SquareThumbnailImage,
|
|
13148
13097
|
{
|
|
13149
13098
|
alt: "",
|
|
13150
|
-
role: "img",
|
|
13151
13099
|
src: thumbnailUrl
|
|
13152
13100
|
}
|
|
13153
13101
|
);
|
|
13154
13102
|
};
|
|
13155
|
-
var StyledThumbnail =
|
|
13156
|
-
background-image: ${({ $backgroundUrl }) => (0,
|
|
13103
|
+
var StyledThumbnail = import_styled_components93.default.div`
|
|
13104
|
+
background-image: ${({ $backgroundUrl }) => (0, import_type_guards56.isNotNil)($backgroundUrl) ? `url('${$backgroundUrl}')` : void 0};
|
|
13157
13105
|
${({ $backgroundUrl, $gradientBackground }) => (
|
|
13158
13106
|
// if we don't have $backgroundUrl show a gradient
|
|
13159
|
-
(0,
|
|
13107
|
+
(0, import_type_guards56.isNil)($backgroundUrl) ? getBackgroundGradient($gradientBackground) : void 0
|
|
13160
13108
|
)};
|
|
13161
13109
|
background-position: center center;
|
|
13162
13110
|
background-size: cover;
|
|
@@ -13165,7 +13113,7 @@ var StyledThumbnail = import_styled_components92.default.div`
|
|
|
13165
13113
|
overflow: hidden;
|
|
13166
13114
|
position: relative;
|
|
13167
13115
|
width: ${({ $width }) => $width};
|
|
13168
|
-
${({ $isScrubbable }) => $isScrubbable && "cursor:
|
|
13116
|
+
${({ $isScrubbable }) => $isScrubbable && "cursor: pointer;"}
|
|
13169
13117
|
|
|
13170
13118
|
&,
|
|
13171
13119
|
img {
|
|
@@ -13181,7 +13129,7 @@ var getRelativeMousePosition = (elem, mouseEvent) => {
|
|
|
13181
13129
|
left: relativeLeft
|
|
13182
13130
|
};
|
|
13183
13131
|
};
|
|
13184
|
-
var Thumbnail = (0,
|
|
13132
|
+
var Thumbnail = (0, import_react71.forwardRef)(
|
|
13185
13133
|
({
|
|
13186
13134
|
gradientBackground = "defaultMidOne",
|
|
13187
13135
|
thumbnailImageType = "square",
|
|
@@ -13192,16 +13140,17 @@ var Thumbnail = (0, import_react72.forwardRef)(
|
|
|
13192
13140
|
height,
|
|
13193
13141
|
...props
|
|
13194
13142
|
}, ref) => {
|
|
13195
|
-
const [percent, setPercent] = (0,
|
|
13196
|
-
const [isMouseOver, setIsMouseOver] = (0,
|
|
13197
|
-
const [isStoryboardReady, setIsStoryboardReady] = (0,
|
|
13198
|
-
const storyboardElementRef = (0,
|
|
13199
|
-
const
|
|
13200
|
-
|
|
13143
|
+
const [percent, setPercent] = (0, import_react71.useState)(0);
|
|
13144
|
+
const [isMouseOver, setIsMouseOver] = (0, import_react71.useState)(false);
|
|
13145
|
+
const [isStoryboardReady, setIsStoryboardReady] = (0, import_react71.useState)(false);
|
|
13146
|
+
const storyboardElementRef = (0, import_react71.useRef)(null);
|
|
13147
|
+
const [cursorPosition, setCursorPosition] = (0, import_react71.useState)(null);
|
|
13148
|
+
const backgroundUrl = (0, import_react71.useMemo)(
|
|
13149
|
+
() => thumbnailImageType === "square" && (0, import_type_guards56.isNotNil)(thumbnailUrl) ? thumbnailUrl : void 0,
|
|
13201
13150
|
[thumbnailImageType, thumbnailUrl]
|
|
13202
13151
|
);
|
|
13203
|
-
const isScrubbable = (0,
|
|
13204
|
-
const trackStoryboardLoadStatus = (0,
|
|
13152
|
+
const isScrubbable = (0, import_type_guards56.isNotNil)(storyboard);
|
|
13153
|
+
const trackStoryboardLoadStatus = (0, import_react71.useCallback)(() => {
|
|
13205
13154
|
if (storyboardElementRef.current || !storyboard) {
|
|
13206
13155
|
return storyboardElementRef.current;
|
|
13207
13156
|
}
|
|
@@ -13211,7 +13160,7 @@ var Thumbnail = (0, import_react72.forwardRef)(
|
|
|
13211
13160
|
storyboardElementRef.current = asset;
|
|
13212
13161
|
return storyboardElementRef.current;
|
|
13213
13162
|
}, [storyboard]);
|
|
13214
|
-
const handleMouseMove = (0,
|
|
13163
|
+
const handleMouseMove = (0, import_react71.useCallback)(
|
|
13215
13164
|
(mouseEvent) => {
|
|
13216
13165
|
if (!isScrubbable) return;
|
|
13217
13166
|
const elem = mouseEvent.currentTarget;
|
|
@@ -13219,19 +13168,21 @@ var Thumbnail = (0, import_react72.forwardRef)(
|
|
|
13219
13168
|
const newPercent = relMousePos.left / elem.clientWidth;
|
|
13220
13169
|
trackStoryboardLoadStatus();
|
|
13221
13170
|
setPercent(newPercent);
|
|
13171
|
+
setCursorPosition(relMousePos.left);
|
|
13222
13172
|
setIsMouseOver(true);
|
|
13223
13173
|
},
|
|
13224
13174
|
[isScrubbable, trackStoryboardLoadStatus]
|
|
13225
13175
|
);
|
|
13226
|
-
const handleMouseOut = (0,
|
|
13176
|
+
const handleMouseOut = (0, import_react71.useCallback)(() => {
|
|
13227
13177
|
if (!isScrubbable) return;
|
|
13228
13178
|
setIsMouseOver(false);
|
|
13179
|
+
setCursorPosition(null);
|
|
13229
13180
|
}, [isScrubbable]);
|
|
13230
|
-
const shouldRenderStoryboard = (0,
|
|
13181
|
+
const shouldRenderStoryboard = (0, import_react71.useMemo)(() => {
|
|
13231
13182
|
return Boolean(isScrubbable && isMouseOver && isStoryboardReady);
|
|
13232
13183
|
}, [isScrubbable, isMouseOver, isStoryboardReady]);
|
|
13233
|
-
const renderStoryboard = (0,
|
|
13234
|
-
if (!storyboard || (0,
|
|
13184
|
+
const renderStoryboard = (0, import_react71.useCallback)(() => {
|
|
13185
|
+
if (!storyboard || (0, import_type_guards56.isUndefined)(height) || (0, import_type_guards56.isEmptyString)(height)) return null;
|
|
13235
13186
|
const {
|
|
13236
13187
|
url,
|
|
13237
13188
|
width: sbWidth,
|
|
@@ -13241,10 +13192,12 @@ var Thumbnail = (0, import_react72.forwardRef)(
|
|
|
13241
13192
|
frameCount,
|
|
13242
13193
|
aspectRatio
|
|
13243
13194
|
} = storyboard;
|
|
13244
|
-
const targetWidth = (0,
|
|
13195
|
+
const targetWidth = (0, import_type_guards56.isString)(width) ? parseInt(width, 10) : Number(width);
|
|
13196
|
+
const effectiveCursorPosition = isStoryboardReady ? cursorPosition : null;
|
|
13245
13197
|
return /* @__PURE__ */ (0, import_jsx_runtime273.jsx)(
|
|
13246
13198
|
ThumbnailStoryboardViewer,
|
|
13247
13199
|
{
|
|
13200
|
+
cursorPosition: effectiveCursorPosition,
|
|
13248
13201
|
frameCount,
|
|
13249
13202
|
frameHeight,
|
|
13250
13203
|
frameWidth,
|
|
@@ -13256,11 +13209,11 @@ var Thumbnail = (0, import_react72.forwardRef)(
|
|
|
13256
13209
|
targetWidth
|
|
13257
13210
|
}
|
|
13258
13211
|
);
|
|
13259
|
-
}, [storyboard, percent, width, height]);
|
|
13212
|
+
}, [storyboard, percent, width, height, cursorPosition, isStoryboardReady]);
|
|
13260
13213
|
let thumbnailContent = null;
|
|
13261
13214
|
if (shouldRenderStoryboard) {
|
|
13262
13215
|
thumbnailContent = renderStoryboard();
|
|
13263
|
-
} else if ((0,
|
|
13216
|
+
} else if ((0, import_type_guards56.isNotNil)(thumbnailUrl)) {
|
|
13264
13217
|
thumbnailContent = /* @__PURE__ */ (0, import_jsx_runtime273.jsx)(
|
|
13265
13218
|
ThumbnailImage,
|
|
13266
13219
|
{
|
|
@@ -13285,7 +13238,7 @@ var Thumbnail = (0, import_react72.forwardRef)(
|
|
|
13285
13238
|
onMouseOut: handleMouseOut,
|
|
13286
13239
|
role: "presentation",
|
|
13287
13240
|
children: [
|
|
13288
|
-
(0,
|
|
13241
|
+
(0, import_type_guards56.isNotNil)(children) ? children : null,
|
|
13289
13242
|
thumbnailContent
|
|
13290
13243
|
]
|
|
13291
13244
|
}
|
|
@@ -13295,14 +13248,14 @@ var Thumbnail = (0, import_react72.forwardRef)(
|
|
|
13295
13248
|
Thumbnail.displayName = "Thumbnail";
|
|
13296
13249
|
|
|
13297
13250
|
// src/components/ThumbnailCollage/ThumbnailCollage.tsx
|
|
13298
|
-
var
|
|
13299
|
-
var
|
|
13300
|
-
var
|
|
13251
|
+
var import_react72 = __toESM(require("react"));
|
|
13252
|
+
var import_styled_components94 = __toESM(require("styled-components"));
|
|
13253
|
+
var import_type_guards57 = require("@wistia/type-guards");
|
|
13301
13254
|
var import_jsx_runtime274 = (
|
|
13302
13255
|
// ThumbnailCollage will fallback to a Thumbnail with a gradient background if no children are provided
|
|
13303
13256
|
require("react/jsx-runtime")
|
|
13304
13257
|
);
|
|
13305
|
-
var StyledThumbnailCollage =
|
|
13258
|
+
var StyledThumbnailCollage = import_styled_components94.default.div`
|
|
13306
13259
|
display: grid;
|
|
13307
13260
|
gap: var(--wui-space-01);
|
|
13308
13261
|
width: 100%;
|
|
@@ -13375,10 +13328,10 @@ var ThumbnailCollage = ({
|
|
|
13375
13328
|
gradientBackground = "defaultMidOne",
|
|
13376
13329
|
...props
|
|
13377
13330
|
}) => {
|
|
13378
|
-
const thumbnailArray =
|
|
13331
|
+
const thumbnailArray = import_react72.default.Children.toArray(children);
|
|
13379
13332
|
const truncatedThumbnails = thumbnailArray.slice(0, 3);
|
|
13380
|
-
const thumbnails = (0,
|
|
13381
|
-
return
|
|
13333
|
+
const thumbnails = (0, import_type_guards57.isNonEmptyArray)(thumbnailArray) ? truncatedThumbnails.map((child) => {
|
|
13334
|
+
return import_react72.default.cloneElement(child, {
|
|
13382
13335
|
...child.props,
|
|
13383
13336
|
children: void 0
|
|
13384
13337
|
});
|
|
@@ -13404,8 +13357,8 @@ var ThumbnailCollage = ({
|
|
|
13404
13357
|
};
|
|
13405
13358
|
|
|
13406
13359
|
// src/components/WistiaLogo/WistiaLogo.tsx
|
|
13407
|
-
var
|
|
13408
|
-
var
|
|
13360
|
+
var import_styled_components95 = __toESM(require("styled-components"));
|
|
13361
|
+
var import_type_guards58 = require("@wistia/type-guards");
|
|
13409
13362
|
var import_jsx_runtime275 = require("react/jsx-runtime");
|
|
13410
13363
|
var renderBrandmark = (brandmarkColor, iconOnly) => {
|
|
13411
13364
|
if (iconOnly) {
|
|
@@ -13446,7 +13399,7 @@ var computedViewBox = (iconOnly) => {
|
|
|
13446
13399
|
}
|
|
13447
13400
|
return "0 0 144 31.47";
|
|
13448
13401
|
};
|
|
13449
|
-
var WistiaLogoComponent =
|
|
13402
|
+
var WistiaLogoComponent = import_styled_components95.default.svg`
|
|
13450
13403
|
height: ${({ height }) => `${height}px`};
|
|
13451
13404
|
|
|
13452
13405
|
/* ensure it will always fit on mobile */
|
|
@@ -13462,12 +13415,12 @@ var WistiaLogoComponent = import_styled_components94.default.svg`
|
|
|
13462
13415
|
${({ $opticallyCentered, $iconOnly }) => {
|
|
13463
13416
|
if ($opticallyCentered) {
|
|
13464
13417
|
if ($iconOnly) {
|
|
13465
|
-
return
|
|
13418
|
+
return import_styled_components95.css`
|
|
13466
13419
|
aspect-ratio: 1;
|
|
13467
13420
|
padding: 11.85% 3.12% 13.91%;
|
|
13468
13421
|
`;
|
|
13469
13422
|
}
|
|
13470
|
-
return
|
|
13423
|
+
return import_styled_components95.css`
|
|
13471
13424
|
aspect-ratio: 127 / 32;
|
|
13472
13425
|
`;
|
|
13473
13426
|
}
|
|
@@ -13518,7 +13471,7 @@ var WistiaLogo = ({
|
|
|
13518
13471
|
...props,
|
|
13519
13472
|
children: [
|
|
13520
13473
|
/* @__PURE__ */ (0, import_jsx_runtime275.jsx)("title", { children: title }),
|
|
13521
|
-
(0,
|
|
13474
|
+
(0, import_type_guards58.isNotNil)(description) ? /* @__PURE__ */ (0, import_jsx_runtime275.jsx)("desc", { children: description }) : null,
|
|
13522
13475
|
renderBrandmark(brandmarkColor, iconOnly),
|
|
13523
13476
|
renderLogotype(logotypeColor, iconOnly)
|
|
13524
13477
|
]
|
|
@@ -13529,18 +13482,18 @@ var WistiaLogo = ({
|
|
|
13529
13482
|
WistiaLogo.displayName = "WistiaLogo";
|
|
13530
13483
|
|
|
13531
13484
|
// src/components/List/List.tsx
|
|
13532
|
-
var
|
|
13533
|
-
var
|
|
13485
|
+
var import_type_guards60 = require("@wistia/type-guards");
|
|
13486
|
+
var import_styled_components97 = __toESM(require("styled-components"));
|
|
13534
13487
|
|
|
13535
13488
|
// src/components/List/ListItem.tsx
|
|
13536
|
-
var
|
|
13537
|
-
var
|
|
13489
|
+
var import_styled_components96 = __toESM(require("styled-components"));
|
|
13490
|
+
var import_type_guards59 = require("@wistia/type-guards");
|
|
13538
13491
|
var import_jsx_runtime276 = require("react/jsx-runtime");
|
|
13539
|
-
var ListItemComponent =
|
|
13492
|
+
var ListItemComponent = import_styled_components96.default.li`
|
|
13540
13493
|
margin-bottom: var(--wui-space-02);
|
|
13541
13494
|
`;
|
|
13542
13495
|
var ListItem = ({ children }) => {
|
|
13543
|
-
if ((0,
|
|
13496
|
+
if ((0, import_type_guards59.isNil)(children)) {
|
|
13544
13497
|
return null;
|
|
13545
13498
|
}
|
|
13546
13499
|
return /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(ListItemComponent, { children });
|
|
@@ -13549,7 +13502,7 @@ ListItem.displayName = "ListItem";
|
|
|
13549
13502
|
|
|
13550
13503
|
// src/components/List/List.tsx
|
|
13551
13504
|
var import_jsx_runtime277 = require("react/jsx-runtime");
|
|
13552
|
-
var spacesStyle =
|
|
13505
|
+
var spacesStyle = import_styled_components97.css`
|
|
13553
13506
|
overflow: hidden;
|
|
13554
13507
|
padding-left: 0;
|
|
13555
13508
|
vertical-align: bottom;
|
|
@@ -13571,7 +13524,7 @@ var spacesStyle = import_styled_components96.css`
|
|
|
13571
13524
|
}
|
|
13572
13525
|
}
|
|
13573
13526
|
`;
|
|
13574
|
-
var commasStyle =
|
|
13527
|
+
var commasStyle = import_styled_components97.css`
|
|
13575
13528
|
${spacesStyle};
|
|
13576
13529
|
|
|
13577
13530
|
li {
|
|
@@ -13581,7 +13534,7 @@ var commasStyle = import_styled_components96.css`
|
|
|
13581
13534
|
}
|
|
13582
13535
|
}
|
|
13583
13536
|
`;
|
|
13584
|
-
var slashesStyle =
|
|
13537
|
+
var slashesStyle = import_styled_components97.css`
|
|
13585
13538
|
${spacesStyle};
|
|
13586
13539
|
|
|
13587
13540
|
li {
|
|
@@ -13592,7 +13545,7 @@ var slashesStyle = import_styled_components96.css`
|
|
|
13592
13545
|
}
|
|
13593
13546
|
}
|
|
13594
13547
|
`;
|
|
13595
|
-
var breadcrumbsStyle =
|
|
13548
|
+
var breadcrumbsStyle = import_styled_components97.css`
|
|
13596
13549
|
${spacesStyle};
|
|
13597
13550
|
|
|
13598
13551
|
li {
|
|
@@ -13603,11 +13556,11 @@ var breadcrumbsStyle = import_styled_components96.css`
|
|
|
13603
13556
|
}
|
|
13604
13557
|
}
|
|
13605
13558
|
`;
|
|
13606
|
-
var unbulletedStyle =
|
|
13559
|
+
var unbulletedStyle = import_styled_components97.css`
|
|
13607
13560
|
list-style: none;
|
|
13608
13561
|
padding-left: 0;
|
|
13609
13562
|
`;
|
|
13610
|
-
var ListComponent =
|
|
13563
|
+
var ListComponent = import_styled_components97.default.ul`
|
|
13611
13564
|
list-style-position: outside;
|
|
13612
13565
|
margin: 0 0 var(--wui-space-01);
|
|
13613
13566
|
padding: 0 0 0 var(--wui-space-04);
|
|
@@ -13670,13 +13623,13 @@ var List = ({
|
|
|
13670
13623
|
...otherProps
|
|
13671
13624
|
}) => {
|
|
13672
13625
|
const listVariant = variant ?? "bullets";
|
|
13673
|
-
if ((0,
|
|
13626
|
+
if ((0, import_type_guards60.isNotNil)(children)) {
|
|
13674
13627
|
if (Array.isArray(children) && !children.length) {
|
|
13675
13628
|
return null;
|
|
13676
13629
|
}
|
|
13677
13630
|
return renderListComponent(children, listVariant, otherProps);
|
|
13678
13631
|
}
|
|
13679
|
-
if ((0,
|
|
13632
|
+
if ((0, import_type_guards60.isNotNil)(items)) {
|
|
13680
13633
|
if (!items.length) {
|
|
13681
13634
|
return null;
|
|
13682
13635
|
}
|