@wistia/ui 0.10.12 → 0.10.13-beta.0a25b192.7adcc4f
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 +73 -51
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +73 -51
- 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.10.
|
|
3
|
+
* @license @wistia/ui v0.10.13-beta.0a25b192.7adcc4f
|
|
4
4
|
*
|
|
5
5
|
* Copyright (c) 2024-2025, Wistia, Inc. and its affiliates.
|
|
6
6
|
*
|
|
@@ -12626,7 +12626,7 @@ Radio.displayName = "Radio";
|
|
|
12626
12626
|
var import_react63 = require("react");
|
|
12627
12627
|
var import_styled_components78 = __toESM(require("styled-components"));
|
|
12628
12628
|
var import_react_toggle_group = require("@radix-ui/react-toggle-group");
|
|
12629
|
-
var
|
|
12629
|
+
var import_type_guards52 = require("@wistia/type-guards");
|
|
12630
12630
|
|
|
12631
12631
|
// src/components/SegmentedControl/useSelectedItemStyle.tsx
|
|
12632
12632
|
var import_react61 = require("react");
|
|
@@ -12641,9 +12641,7 @@ var SelectedItemStyleProvider = ({
|
|
|
12641
12641
|
height: `${selectedItemMeasurements.offsetHeight}px`,
|
|
12642
12642
|
transform: `translateX(${selectedItemMeasurements.offsetLeft}px) translateY(-50%)`,
|
|
12643
12643
|
width: `${selectedItemMeasurements.offsetWidth}px`
|
|
12644
|
-
} :
|
|
12645
|
-
transform: "translateY(-50%)"
|
|
12646
|
-
},
|
|
12644
|
+
} : void 0,
|
|
12647
12645
|
[selectedItemMeasurements]
|
|
12648
12646
|
);
|
|
12649
12647
|
const contextValue = (0, import_react61.useMemo)(
|
|
@@ -12665,6 +12663,7 @@ var useSelectedItemStyle = () => {
|
|
|
12665
12663
|
|
|
12666
12664
|
// src/components/SegmentedControl/SelectedItemIndicator.tsx
|
|
12667
12665
|
var import_styled_components77 = __toESM(require("styled-components"));
|
|
12666
|
+
var import_type_guards51 = require("@wistia/type-guards");
|
|
12668
12667
|
|
|
12669
12668
|
// src/components/SegmentedControl/useSegmentedControlValue.tsx
|
|
12670
12669
|
var import_react62 = require("react");
|
|
@@ -12680,13 +12679,16 @@ var useSegmentedControlValue = () => {
|
|
|
12680
12679
|
|
|
12681
12680
|
// src/components/SegmentedControl/SelectedItemIndicator.tsx
|
|
12682
12681
|
var import_jsx_runtime259 = require("react/jsx-runtime");
|
|
12683
|
-
var
|
|
12682
|
+
var selectedItemIndicatorStyles = import_styled_components77.css`
|
|
12684
12683
|
background-color: var(--wui-color-bg-fill-white);
|
|
12685
12684
|
border-radius: var(--wui-border-radius-rounded);
|
|
12685
|
+
box-shadow: var(--wui-elevation-01);
|
|
12686
|
+
`;
|
|
12687
|
+
var SelectedItemIndicatorDiv = import_styled_components77.default.div`
|
|
12688
|
+
${selectedItemIndicatorStyles}
|
|
12686
12689
|
left: 0;
|
|
12687
12690
|
position: absolute;
|
|
12688
12691
|
top: 50%;
|
|
12689
|
-
box-shadow: var(--wui-elevation-01);
|
|
12690
12692
|
transition:
|
|
12691
12693
|
transform var(--wui-motion-duration-02) var(--wui-motion-ease-out),
|
|
12692
12694
|
width var(--wui-motion-duration-02) var(--wui-motion-ease-out);
|
|
@@ -12695,10 +12697,16 @@ var SelectedItemIndicatorDiv = import_styled_components77.default.div`
|
|
|
12695
12697
|
var SelectedItemIndicator = () => {
|
|
12696
12698
|
const selectedValue = useSegmentedControlValue();
|
|
12697
12699
|
const { selectedItemIndicatorStyle } = useSelectedItemStyle();
|
|
12698
|
-
if (!selectedValue) {
|
|
12700
|
+
if (!selectedValue || (0, import_type_guards51.isUndefined)(selectedItemIndicatorStyle)) {
|
|
12699
12701
|
return null;
|
|
12700
12702
|
}
|
|
12701
|
-
return /* @__PURE__ */ (0, import_jsx_runtime259.jsx)(
|
|
12703
|
+
return /* @__PURE__ */ (0, import_jsx_runtime259.jsx)(
|
|
12704
|
+
SelectedItemIndicatorDiv,
|
|
12705
|
+
{
|
|
12706
|
+
"data-wui-selected-item-indicator": true,
|
|
12707
|
+
style: selectedItemIndicatorStyle
|
|
12708
|
+
}
|
|
12709
|
+
);
|
|
12702
12710
|
};
|
|
12703
12711
|
|
|
12704
12712
|
// src/components/SegmentedControl/SegmentedControl.tsx
|
|
@@ -12726,7 +12734,7 @@ var SegmentedControl = (0, import_react63.forwardRef)(
|
|
|
12726
12734
|
onSelectedValueChange,
|
|
12727
12735
|
...props
|
|
12728
12736
|
}, ref) => {
|
|
12729
|
-
if ((0,
|
|
12737
|
+
if ((0, import_type_guards52.isNil)(children)) {
|
|
12730
12738
|
return null;
|
|
12731
12739
|
}
|
|
12732
12740
|
return /* @__PURE__ */ (0, import_jsx_runtime260.jsx)(
|
|
@@ -12742,8 +12750,8 @@ var SegmentedControl = (0, import_react63.forwardRef)(
|
|
|
12742
12750
|
value: selectedValue,
|
|
12743
12751
|
...props,
|
|
12744
12752
|
children: /* @__PURE__ */ (0, import_jsx_runtime260.jsx)(SegmentedControlValueProvider, { value: selectedValue, children: /* @__PURE__ */ (0, import_jsx_runtime260.jsxs)(SelectedItemStyleProvider, { children: [
|
|
12745
|
-
|
|
12746
|
-
|
|
12753
|
+
children,
|
|
12754
|
+
/* @__PURE__ */ (0, import_jsx_runtime260.jsx)(SelectedItemIndicator, {})
|
|
12747
12755
|
] }) })
|
|
12748
12756
|
}
|
|
12749
12757
|
);
|
|
@@ -12755,7 +12763,7 @@ SegmentedControl.displayName = "SegmentedControl";
|
|
|
12755
12763
|
var import_react64 = require("react");
|
|
12756
12764
|
var import_styled_components79 = __toESM(require("styled-components"));
|
|
12757
12765
|
var import_react_toggle_group2 = require("@radix-ui/react-toggle-group");
|
|
12758
|
-
var
|
|
12766
|
+
var import_type_guards53 = require("@wistia/type-guards");
|
|
12759
12767
|
var import_jsx_runtime261 = require("react/jsx-runtime");
|
|
12760
12768
|
var segmentedControlItemStyles = import_styled_components79.css`
|
|
12761
12769
|
all: unset; /* ToggleGroupItem is a button element */
|
|
@@ -12804,6 +12812,11 @@ var segmentedControlItemStyles = import_styled_components79.css`
|
|
|
12804
12812
|
svg path {
|
|
12805
12813
|
fill: var(--wui-color-icon-selected);
|
|
12806
12814
|
}
|
|
12815
|
+
|
|
12816
|
+
/* This mkaes sure that the active styles appear on the initial value when the component renders */
|
|
12817
|
+
&:not(:has(~ [data-wui-selected-item-indicator])) {
|
|
12818
|
+
${selectedItemIndicatorStyles}
|
|
12819
|
+
}
|
|
12807
12820
|
}
|
|
12808
12821
|
|
|
12809
12822
|
&[data-disabled] {
|
|
@@ -12865,8 +12878,8 @@ var SegmentedControlItem = (0, import_react64.forwardRef)(
|
|
|
12865
12878
|
{
|
|
12866
12879
|
ref: combinedRef,
|
|
12867
12880
|
...otherProps,
|
|
12868
|
-
$hasLabel: (0,
|
|
12869
|
-
"aria-label": (0,
|
|
12881
|
+
$hasLabel: (0, import_type_guards53.isNotNil)(label),
|
|
12882
|
+
"aria-label": (0, import_type_guards53.isNotNil)(label) ? void 0 : ariaLabel,
|
|
12870
12883
|
disabled,
|
|
12871
12884
|
onClick: handleClick,
|
|
12872
12885
|
value,
|
|
@@ -12998,7 +13011,7 @@ Select.displayName = "Select";
|
|
|
12998
13011
|
var import_react_select2 = require("@radix-ui/react-select");
|
|
12999
13012
|
var import_react66 = require("react");
|
|
13000
13013
|
var import_styled_components81 = __toESM(require("styled-components"));
|
|
13001
|
-
var
|
|
13014
|
+
var import_type_guards54 = require("@wistia/type-guards");
|
|
13002
13015
|
var import_jsx_runtime263 = require("react/jsx-runtime");
|
|
13003
13016
|
var StyledItem = (0, import_styled_components81.default)(import_react_select2.Item)`
|
|
13004
13017
|
${variantStyleMap2.body3};
|
|
@@ -13042,7 +13055,7 @@ var SelectOption = (0, import_react66.forwardRef)(
|
|
|
13042
13055
|
type: "checkmark"
|
|
13043
13056
|
}
|
|
13044
13057
|
) }) }),
|
|
13045
|
-
(0,
|
|
13058
|
+
(0, import_type_guards54.isNotNil)(selectedDisplayValue) ? /* @__PURE__ */ (0, import_jsx_runtime263.jsxs)("div", { children: [
|
|
13046
13059
|
children,
|
|
13047
13060
|
/* @__PURE__ */ (0, import_jsx_runtime263.jsx)("div", { style: { display: "none" }, children: /* @__PURE__ */ (0, import_jsx_runtime263.jsx)(import_react_select2.ItemText, { children: selectedDisplayValue }) })
|
|
13048
13061
|
] }) : /* @__PURE__ */ (0, import_jsx_runtime263.jsx)(import_react_select2.ItemText, { children })
|
|
@@ -13077,7 +13090,7 @@ var SelectOptionGroup = ({ children, label, ...props }) => {
|
|
|
13077
13090
|
// src/components/Slider/Slider.tsx
|
|
13078
13091
|
var import_react_slider = require("@radix-ui/react-slider");
|
|
13079
13092
|
var import_styled_components83 = __toESM(require("styled-components"));
|
|
13080
|
-
var
|
|
13093
|
+
var import_type_guards55 = require("@wistia/type-guards");
|
|
13081
13094
|
var import_jsx_runtime265 = require("react/jsx-runtime");
|
|
13082
13095
|
var SliderContainer = import_styled_components83.default.div`
|
|
13083
13096
|
--wui-slider-track-color: var(--wui-gray-6);
|
|
@@ -13156,7 +13169,7 @@ var Slider = ({
|
|
|
13156
13169
|
"data-testid": dataTestId = "ui-slider",
|
|
13157
13170
|
...otherProps
|
|
13158
13171
|
}) => {
|
|
13159
|
-
if (!((0,
|
|
13172
|
+
if (!((0, import_type_guards55.isNonEmptyString)(ariaLabel) || (0, import_type_guards55.isNonEmptyString)(ariaLabelledby))) {
|
|
13160
13173
|
throw new Error(
|
|
13161
13174
|
"UI Slider: Sliders should have an accessible name. Add a label using the aria-label or aria-labelledby prop."
|
|
13162
13175
|
);
|
|
@@ -13204,7 +13217,7 @@ Slider.displayName = "Slider";
|
|
|
13204
13217
|
// src/components/Switch/Switch.tsx
|
|
13205
13218
|
var import_react67 = require("react");
|
|
13206
13219
|
var import_styled_components84 = __toESM(require("styled-components"));
|
|
13207
|
-
var
|
|
13220
|
+
var import_type_guards56 = require("@wistia/type-guards");
|
|
13208
13221
|
var import_jsx_runtime266 = require("react/jsx-runtime");
|
|
13209
13222
|
var sizeSmall3 = import_styled_components84.css`
|
|
13210
13223
|
--wui-size-small-width: 24px;
|
|
@@ -13323,7 +13336,7 @@ var Switch = (0, import_react67.forwardRef)(
|
|
|
13323
13336
|
...props
|
|
13324
13337
|
}, ref) => {
|
|
13325
13338
|
const generatedId = (0, import_react67.useId)();
|
|
13326
|
-
const computedId = (0,
|
|
13339
|
+
const computedId = (0, import_type_guards56.isNonEmptyString)(id) ? id : `wistia-ui-switch-${generatedId}`;
|
|
13327
13340
|
return /* @__PURE__ */ (0, import_jsx_runtime266.jsxs)(StyledSwitchWrapper, { $disabled: disabled, children: [
|
|
13328
13341
|
/* @__PURE__ */ (0, import_jsx_runtime266.jsx)(
|
|
13329
13342
|
StyledHiddenSwitchInput,
|
|
@@ -13478,7 +13491,7 @@ var TableRow = ({ children, ...props }) => {
|
|
|
13478
13491
|
// src/components/Tabs/Tabs.tsx
|
|
13479
13492
|
var import_react_tabs = require("@radix-ui/react-tabs");
|
|
13480
13493
|
var import_react71 = require("react");
|
|
13481
|
-
var
|
|
13494
|
+
var import_type_guards57 = require("@wistia/type-guards");
|
|
13482
13495
|
|
|
13483
13496
|
// src/components/Tabs/useTabsValue.tsx
|
|
13484
13497
|
var import_react70 = require("react");
|
|
@@ -13515,10 +13528,10 @@ var Tabs = ({
|
|
|
13515
13528
|
...props,
|
|
13516
13529
|
onValueChange
|
|
13517
13530
|
};
|
|
13518
|
-
if ((0,
|
|
13531
|
+
if ((0, import_type_guards57.isNotNil)(value)) {
|
|
13519
13532
|
rootProps.value = value;
|
|
13520
13533
|
}
|
|
13521
|
-
if ((0,
|
|
13534
|
+
if ((0, import_type_guards57.isNotNil)(defaultValue)) {
|
|
13522
13535
|
rootProps.defaultValue = defaultValue;
|
|
13523
13536
|
}
|
|
13524
13537
|
return /* @__PURE__ */ (0, import_jsx_runtime273.jsx)(import_react_tabs.Root, { ...rootProps, children: /* @__PURE__ */ (0, import_jsx_runtime273.jsx)(TabsValueProvider, { value: value ?? defaultValue, children: /* @__PURE__ */ (0, import_jsx_runtime273.jsx)(SelectedItemStyleProvider, { children }) }) });
|
|
@@ -13537,6 +13550,9 @@ TabsContent.displayName = "TabsContent";
|
|
|
13537
13550
|
var import_react_tabs3 = require("@radix-ui/react-tabs");
|
|
13538
13551
|
var import_styled_components92 = __toESM(require("styled-components"));
|
|
13539
13552
|
|
|
13553
|
+
// src/components/Tabs/SelectedTabIndicator.tsx
|
|
13554
|
+
var import_type_guards58 = require("@wistia/type-guards");
|
|
13555
|
+
|
|
13540
13556
|
// src/components/Tabs/TabsSelectedItemIndicatorDiv.tsx
|
|
13541
13557
|
var import_styled_components91 = __toESM(require("styled-components"));
|
|
13542
13558
|
var TabsSelectedItemIndicatorDiv = (0, import_styled_components91.default)(SelectedItemIndicatorDiv)`
|
|
@@ -13550,10 +13566,16 @@ var import_jsx_runtime275 = require("react/jsx-runtime");
|
|
|
13550
13566
|
var SelectedTabIndicator = () => {
|
|
13551
13567
|
const { selectedItemIndicatorStyle } = useSelectedItemStyle();
|
|
13552
13568
|
const selectedValue = useTabsValue();
|
|
13553
|
-
if (selectedValue == null) {
|
|
13569
|
+
if (selectedValue == null || (0, import_type_guards58.isUndefined)(selectedItemIndicatorStyle)) {
|
|
13554
13570
|
return null;
|
|
13555
13571
|
}
|
|
13556
|
-
return /* @__PURE__ */ (0, import_jsx_runtime275.jsx)(
|
|
13572
|
+
return /* @__PURE__ */ (0, import_jsx_runtime275.jsx)(
|
|
13573
|
+
TabsSelectedItemIndicatorDiv,
|
|
13574
|
+
{
|
|
13575
|
+
"data-wui-selected-item-indicator": true,
|
|
13576
|
+
style: selectedItemIndicatorStyle
|
|
13577
|
+
}
|
|
13578
|
+
);
|
|
13557
13579
|
};
|
|
13558
13580
|
|
|
13559
13581
|
// src/components/Tabs/TabsList.tsx
|
|
@@ -13568,8 +13590,8 @@ var TabsList = ({ children, fullWidth = true, ...props }) => {
|
|
|
13568
13590
|
$fullWidth: fullWidth,
|
|
13569
13591
|
"aria-label": props["aria-label"],
|
|
13570
13592
|
children: [
|
|
13571
|
-
|
|
13572
|
-
|
|
13593
|
+
children,
|
|
13594
|
+
/* @__PURE__ */ (0, import_jsx_runtime276.jsx)(SelectedTabIndicator, {})
|
|
13573
13595
|
]
|
|
13574
13596
|
}
|
|
13575
13597
|
);
|
|
@@ -13578,7 +13600,7 @@ TabsList.displayName = "TabsList";
|
|
|
13578
13600
|
|
|
13579
13601
|
// src/components/Tabs/TabsTrigger.tsx
|
|
13580
13602
|
var import_react72 = require("react");
|
|
13581
|
-
var
|
|
13603
|
+
var import_type_guards59 = require("@wistia/type-guards");
|
|
13582
13604
|
|
|
13583
13605
|
// src/components/Tabs/StyledRadixTabsTrigger.tsx
|
|
13584
13606
|
var import_styled_components93 = __toESM(require("styled-components"));
|
|
@@ -13629,8 +13651,8 @@ var TabsTrigger = (0, import_react72.forwardRef)(
|
|
|
13629
13651
|
{
|
|
13630
13652
|
...otherProps,
|
|
13631
13653
|
ref: combinedRef,
|
|
13632
|
-
$hasLabel: (0,
|
|
13633
|
-
"aria-label": (0,
|
|
13654
|
+
$hasLabel: (0, import_type_guards59.isNotNil)(label),
|
|
13655
|
+
"aria-label": (0, import_type_guards59.isNotNil)(label) ? void 0 : ariaLabel,
|
|
13634
13656
|
disabled,
|
|
13635
13657
|
value,
|
|
13636
13658
|
children: [
|
|
@@ -13645,7 +13667,7 @@ TabsTrigger.displayName = "TabsTrigger";
|
|
|
13645
13667
|
|
|
13646
13668
|
// src/components/Thumbnail/ThumbnailBadge.tsx
|
|
13647
13669
|
var import_styled_components94 = __toESM(require("styled-components"));
|
|
13648
|
-
var
|
|
13670
|
+
var import_type_guards60 = require("@wistia/type-guards");
|
|
13649
13671
|
var import_jsx_runtime278 = require("react/jsx-runtime");
|
|
13650
13672
|
var StyledThumbnailBadge = import_styled_components94.default.div`
|
|
13651
13673
|
align-items: center;
|
|
@@ -13673,7 +13695,7 @@ var StyledThumbnailBadge = import_styled_components94.default.div`
|
|
|
13673
13695
|
`;
|
|
13674
13696
|
var ThumbnailBadge = ({ icon, label, ...props }) => {
|
|
13675
13697
|
return /* @__PURE__ */ (0, import_jsx_runtime278.jsxs)(StyledThumbnailBadge, { ...props, children: [
|
|
13676
|
-
(0,
|
|
13698
|
+
(0, import_type_guards60.isNotNil)(icon) && icon,
|
|
13677
13699
|
/* @__PURE__ */ (0, import_jsx_runtime278.jsx)("span", { children: label })
|
|
13678
13700
|
] });
|
|
13679
13701
|
};
|
|
@@ -13682,10 +13704,10 @@ ThumbnailBadge.displayName = "ThumbnailBadge";
|
|
|
13682
13704
|
// src/components/Thumbnail/Thumbnail.tsx
|
|
13683
13705
|
var import_react73 = require("react");
|
|
13684
13706
|
var import_styled_components97 = __toESM(require("styled-components"));
|
|
13685
|
-
var
|
|
13707
|
+
var import_type_guards63 = require("@wistia/type-guards");
|
|
13686
13708
|
|
|
13687
13709
|
// src/private/helpers/getBackgroundGradient/getBackgroundGradient.ts
|
|
13688
|
-
var
|
|
13710
|
+
var import_type_guards61 = require("@wistia/type-guards");
|
|
13689
13711
|
var import_styled_components95 = require("styled-components");
|
|
13690
13712
|
var gradients = {
|
|
13691
13713
|
defaultDarkOne: import_styled_components95.css`
|
|
@@ -13813,12 +13835,12 @@ var gradients = {
|
|
|
13813
13835
|
};
|
|
13814
13836
|
var gradientMap = Object.keys(gradients);
|
|
13815
13837
|
var getBackgroundGradient = (gradientName = void 0) => {
|
|
13816
|
-
return (0,
|
|
13838
|
+
return (0, import_type_guards61.isNotNil)(gradientName) ? gradients[gradientName] : gradients.defaultDarkOne;
|
|
13817
13839
|
};
|
|
13818
13840
|
|
|
13819
13841
|
// src/components/Thumbnail/ThumbnailStoryboardViewer.tsx
|
|
13820
13842
|
var import_styled_components96 = __toESM(require("styled-components"));
|
|
13821
|
-
var
|
|
13843
|
+
var import_type_guards62 = require("@wistia/type-guards");
|
|
13822
13844
|
var import_jsx_runtime279 = require("react/jsx-runtime");
|
|
13823
13845
|
var ScrubLine = import_styled_components96.default.div`
|
|
13824
13846
|
position: absolute;
|
|
@@ -13904,8 +13926,8 @@ var ThumbnailStoryboardViewer = ({
|
|
|
13904
13926
|
);
|
|
13905
13927
|
const backgroundSize = `${scaledStoryboardWidth}px ${scaledStoryboardHeight}px`;
|
|
13906
13928
|
const backgroundImage = `url(${storyboardUrl})`;
|
|
13907
|
-
const showScrubLine = (0,
|
|
13908
|
-
const scrubLinePosition = (0,
|
|
13929
|
+
const showScrubLine = (0, import_type_guards62.isNotNil)(cursorPosition);
|
|
13930
|
+
const scrubLinePosition = (0, import_type_guards62.isNotNil)(cursorPosition) ? `${cursorPosition - 1}px` : "0";
|
|
13909
13931
|
const viewerStyles = {
|
|
13910
13932
|
position: "relative",
|
|
13911
13933
|
overflow: "hidden",
|
|
@@ -13975,10 +13997,10 @@ var ThumbnailImage = ({ thumbnailImageType, thumbnailUrl }) => {
|
|
|
13975
13997
|
);
|
|
13976
13998
|
};
|
|
13977
13999
|
var StyledThumbnail = import_styled_components97.default.div`
|
|
13978
|
-
background-image: ${({ $backgroundUrl }) => (0,
|
|
14000
|
+
background-image: ${({ $backgroundUrl }) => (0, import_type_guards63.isNotNil)($backgroundUrl) ? `url('${$backgroundUrl}')` : void 0};
|
|
13979
14001
|
${({ $backgroundUrl, $gradientBackground }) => (
|
|
13980
14002
|
// if we don't have $backgroundUrl show a gradient
|
|
13981
|
-
(0,
|
|
14003
|
+
(0, import_type_guards63.isNil)($backgroundUrl) ? getBackgroundGradient($gradientBackground) : void 0
|
|
13982
14004
|
)};
|
|
13983
14005
|
background-position: center center;
|
|
13984
14006
|
background-size: cover;
|
|
@@ -14020,10 +14042,10 @@ var Thumbnail = (0, import_react73.forwardRef)(
|
|
|
14020
14042
|
const storyboardElementRef = (0, import_react73.useRef)(null);
|
|
14021
14043
|
const [cursorPosition, setCursorPosition] = (0, import_react73.useState)(null);
|
|
14022
14044
|
const backgroundUrl = (0, import_react73.useMemo)(
|
|
14023
|
-
() => thumbnailImageType === "square" && (0,
|
|
14045
|
+
() => thumbnailImageType === "square" && (0, import_type_guards63.isNotNil)(thumbnailUrl) ? thumbnailUrl : void 0,
|
|
14024
14046
|
[thumbnailImageType, thumbnailUrl]
|
|
14025
14047
|
);
|
|
14026
|
-
const isScrubbable = (0,
|
|
14048
|
+
const isScrubbable = (0, import_type_guards63.isNotNil)(storyboard);
|
|
14027
14049
|
const trackStoryboardLoadStatus = (0, import_react73.useCallback)(() => {
|
|
14028
14050
|
if (storyboardElementRef.current || !storyboard) {
|
|
14029
14051
|
return storyboardElementRef.current;
|
|
@@ -14056,7 +14078,7 @@ var Thumbnail = (0, import_react73.forwardRef)(
|
|
|
14056
14078
|
return Boolean(isScrubbable && isMouseOver && isStoryboardReady);
|
|
14057
14079
|
}, [isScrubbable, isMouseOver, isStoryboardReady]);
|
|
14058
14080
|
const renderStoryboard = (0, import_react73.useCallback)(() => {
|
|
14059
|
-
if (!storyboard || (0,
|
|
14081
|
+
if (!storyboard || (0, import_type_guards63.isUndefined)(height) || (0, import_type_guards63.isEmptyString)(height)) return null;
|
|
14060
14082
|
const {
|
|
14061
14083
|
url,
|
|
14062
14084
|
width: sbWidth,
|
|
@@ -14066,7 +14088,7 @@ var Thumbnail = (0, import_react73.forwardRef)(
|
|
|
14066
14088
|
frameCount,
|
|
14067
14089
|
aspectRatio
|
|
14068
14090
|
} = storyboard;
|
|
14069
|
-
const targetWidth = (0,
|
|
14091
|
+
const targetWidth = (0, import_type_guards63.isString)(width) ? parseInt(width, 10) : Number(width);
|
|
14070
14092
|
const effectiveCursorPosition = isStoryboardReady ? cursorPosition : null;
|
|
14071
14093
|
return /* @__PURE__ */ (0, import_jsx_runtime280.jsx)(
|
|
14072
14094
|
ThumbnailStoryboardViewer,
|
|
@@ -14087,7 +14109,7 @@ var Thumbnail = (0, import_react73.forwardRef)(
|
|
|
14087
14109
|
let thumbnailContent = null;
|
|
14088
14110
|
if (shouldRenderStoryboard) {
|
|
14089
14111
|
thumbnailContent = renderStoryboard();
|
|
14090
|
-
} else if ((0,
|
|
14112
|
+
} else if ((0, import_type_guards63.isNotNil)(thumbnailUrl)) {
|
|
14091
14113
|
thumbnailContent = /* @__PURE__ */ (0, import_jsx_runtime280.jsx)(
|
|
14092
14114
|
ThumbnailImage,
|
|
14093
14115
|
{
|
|
@@ -14112,7 +14134,7 @@ var Thumbnail = (0, import_react73.forwardRef)(
|
|
|
14112
14134
|
onMouseOut: handleMouseOut,
|
|
14113
14135
|
role: "presentation",
|
|
14114
14136
|
children: [
|
|
14115
|
-
(0,
|
|
14137
|
+
(0, import_type_guards63.isNotNil)(children) ? children : null,
|
|
14116
14138
|
thumbnailContent
|
|
14117
14139
|
]
|
|
14118
14140
|
}
|
|
@@ -14124,7 +14146,7 @@ Thumbnail.displayName = "Thumbnail";
|
|
|
14124
14146
|
// src/components/ThumbnailCollage/ThumbnailCollage.tsx
|
|
14125
14147
|
var import_react74 = __toESM(require("react"));
|
|
14126
14148
|
var import_styled_components98 = __toESM(require("styled-components"));
|
|
14127
|
-
var
|
|
14149
|
+
var import_type_guards64 = require("@wistia/type-guards");
|
|
14128
14150
|
var import_jsx_runtime281 = (
|
|
14129
14151
|
// ThumbnailCollage will fallback to a Thumbnail with a gradient background if no children are provided
|
|
14130
14152
|
require("react/jsx-runtime")
|
|
@@ -14204,7 +14226,7 @@ var ThumbnailCollage = ({
|
|
|
14204
14226
|
}) => {
|
|
14205
14227
|
const thumbnailArray = import_react74.default.Children.toArray(children);
|
|
14206
14228
|
const truncatedThumbnails = thumbnailArray.slice(0, 3);
|
|
14207
|
-
const thumbnails = (0,
|
|
14229
|
+
const thumbnails = (0, import_type_guards64.isNonEmptyArray)(thumbnailArray) ? truncatedThumbnails.map((child) => {
|
|
14208
14230
|
return import_react74.default.cloneElement(child, {
|
|
14209
14231
|
...child.props,
|
|
14210
14232
|
children: void 0
|
|
@@ -14232,7 +14254,7 @@ var ThumbnailCollage = ({
|
|
|
14232
14254
|
|
|
14233
14255
|
// src/components/WistiaLogo/WistiaLogo.tsx
|
|
14234
14256
|
var import_styled_components99 = __toESM(require("styled-components"));
|
|
14235
|
-
var
|
|
14257
|
+
var import_type_guards65 = require("@wistia/type-guards");
|
|
14236
14258
|
var import_jsx_runtime282 = require("react/jsx-runtime");
|
|
14237
14259
|
var renderBrandmark = (brandmarkColor, iconOnly) => {
|
|
14238
14260
|
if (iconOnly) {
|
|
@@ -14345,7 +14367,7 @@ var WistiaLogo = ({
|
|
|
14345
14367
|
...props,
|
|
14346
14368
|
children: [
|
|
14347
14369
|
/* @__PURE__ */ (0, import_jsx_runtime282.jsx)("title", { children: title }),
|
|
14348
|
-
(0,
|
|
14370
|
+
(0, import_type_guards65.isNotNil)(description) ? /* @__PURE__ */ (0, import_jsx_runtime282.jsx)("desc", { children: description }) : null,
|
|
14349
14371
|
renderBrandmark(brandmarkColor, iconOnly),
|
|
14350
14372
|
renderLogotype(logotypeColor, iconOnly)
|
|
14351
14373
|
]
|