@wistia/ui 0.9.7 → 0.10.0-beta.3fa0dc4a.2707a8b
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 +344 -338
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.mts +77 -64
- package/dist/index.d.ts +77 -64
- package/dist/index.mjs +304 -301
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -1
package/dist/index.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
|
|
2
2
|
/*
|
|
3
|
-
* @license @wistia/ui v0.
|
|
3
|
+
* @license @wistia/ui v0.10.0-beta.3fa0dc4a.2707a8b
|
|
4
4
|
*
|
|
5
5
|
* Copyright (c) 2024-2025, Wistia, Inc. and its affiliates.
|
|
6
6
|
*
|
|
@@ -100,10 +100,10 @@ __export(index_exports, {
|
|
|
100
100
|
Select: () => Select,
|
|
101
101
|
SelectOption: () => SelectOption,
|
|
102
102
|
SelectOptionGroup: () => SelectOptionGroup,
|
|
103
|
+
Slider: () => Slider,
|
|
103
104
|
Stack: () => Stack,
|
|
104
105
|
SubMenu: () => SubMenu,
|
|
105
106
|
Switch: () => Switch,
|
|
106
|
-
Tab: () => Tab,
|
|
107
107
|
Table: () => Table,
|
|
108
108
|
TableBody: () => TableBody,
|
|
109
109
|
TableCell: () => TableCell,
|
|
@@ -111,6 +111,9 @@ __export(index_exports, {
|
|
|
111
111
|
TableHead: () => TableHead,
|
|
112
112
|
TableRow: () => TableRow,
|
|
113
113
|
Tabs: () => Tabs,
|
|
114
|
+
TabsContent: () => TabsContent,
|
|
115
|
+
TabsList: () => TabsList,
|
|
116
|
+
TabsTrigger: () => TabsTrigger,
|
|
114
117
|
Tag: () => Tag,
|
|
115
118
|
Text: () => Text,
|
|
116
119
|
Thumbnail: () => Thumbnail,
|
|
@@ -11895,7 +11898,7 @@ var segmentedControlItemStyles = import_styled_components73.css`
|
|
|
11895
11898
|
outline: 2px solid var(--wui-color-focus-ring);
|
|
11896
11899
|
}
|
|
11897
11900
|
|
|
11898
|
-
&:hover:not([data-state='on'], [data-state='active']) {
|
|
11901
|
+
&:hover:not([data-state='on'], [data-state='active'], [aria-selected='true']) {
|
|
11899
11902
|
background-color: var(--wui-color-bg-surface-secondary-hover);
|
|
11900
11903
|
}
|
|
11901
11904
|
|
|
@@ -12454,64 +12457,8 @@ var TableRow = ({ children, ...props }) => {
|
|
|
12454
12457
|
};
|
|
12455
12458
|
|
|
12456
12459
|
// src/components/Tabs/Tabs.tsx
|
|
12457
|
-
var import_react69 = require("react");
|
|
12458
|
-
var import_react_tabs4 = require("@radix-ui/react-tabs");
|
|
12459
|
-
var import_type_guards51 = require("@wistia/type-guards");
|
|
12460
|
-
var import_styled_components88 = __toESM(require("styled-components"));
|
|
12461
|
-
|
|
12462
|
-
// src/components/Tabs/TabPanel.tsx
|
|
12463
|
-
var import_styled_components84 = __toESM(require("styled-components"));
|
|
12464
12460
|
var import_react_tabs = require("@radix-ui/react-tabs");
|
|
12465
|
-
var import_jsx_runtime266 = require("react/jsx-runtime");
|
|
12466
|
-
var StyledTabPanel = (0, import_styled_components84.default)(import_react_tabs.Content)`
|
|
12467
|
-
display: flex;
|
|
12468
|
-
flex-direction: column;
|
|
12469
|
-
`;
|
|
12470
|
-
var TabPanel = ({ children, value, ...props }) => {
|
|
12471
|
-
return /* @__PURE__ */ (0, import_jsx_runtime266.jsx)(
|
|
12472
|
-
StyledTabPanel,
|
|
12473
|
-
{
|
|
12474
|
-
value,
|
|
12475
|
-
...props,
|
|
12476
|
-
children
|
|
12477
|
-
}
|
|
12478
|
-
);
|
|
12479
|
-
};
|
|
12480
|
-
TabPanel.displayName = "TabPanel";
|
|
12481
|
-
|
|
12482
|
-
// src/components/Tabs/TabList.tsx
|
|
12483
|
-
var import_styled_components85 = __toESM(require("styled-components"));
|
|
12484
|
-
var import_react_tabs2 = require("@radix-ui/react-tabs");
|
|
12485
|
-
var import_jsx_runtime267 = require("react/jsx-runtime");
|
|
12486
|
-
var StyledTabList = (0, import_styled_components85.default)(import_react_tabs2.List)`
|
|
12487
|
-
${segmentedControlStyles}
|
|
12488
|
-
|
|
12489
|
-
margin-bottom: var(--wui-space-04);
|
|
12490
|
-
width: ${({ $fullWidth }) => $fullWidth ? "100%" : "auto"};
|
|
12491
|
-
align-self: ${({ $fullWidth }) => $fullWidth ? "auto" : "flex-start"};
|
|
12492
|
-
`;
|
|
12493
|
-
var TabList = ({
|
|
12494
|
-
children,
|
|
12495
|
-
fullWidth,
|
|
12496
|
-
ariaLabel,
|
|
12497
|
-
...props
|
|
12498
|
-
}) => {
|
|
12499
|
-
return /* @__PURE__ */ (0, import_jsx_runtime267.jsx)(
|
|
12500
|
-
StyledTabList,
|
|
12501
|
-
{
|
|
12502
|
-
$fullWidth: fullWidth,
|
|
12503
|
-
"aria-label": ariaLabel,
|
|
12504
|
-
...props,
|
|
12505
|
-
children
|
|
12506
|
-
}
|
|
12507
|
-
);
|
|
12508
|
-
};
|
|
12509
|
-
TabList.displayName = "TabList";
|
|
12510
|
-
|
|
12511
|
-
// src/components/Tabs/TabItem.tsx
|
|
12512
12461
|
var import_react67 = require("react");
|
|
12513
|
-
var import_styled_components86 = __toESM(require("styled-components"));
|
|
12514
|
-
var import_react_tabs3 = require("@radix-ui/react-tabs");
|
|
12515
12462
|
var import_type_guards50 = require("@wistia/type-guards");
|
|
12516
12463
|
|
|
12517
12464
|
// src/components/Tabs/useTabsValue.tsx
|
|
@@ -12526,22 +12473,114 @@ var useTabsValue = () => {
|
|
|
12526
12473
|
return context;
|
|
12527
12474
|
};
|
|
12528
12475
|
|
|
12529
|
-
// src/components/Tabs/
|
|
12476
|
+
// src/components/Tabs/Tabs.tsx
|
|
12477
|
+
var import_jsx_runtime266 = require("react/jsx-runtime");
|
|
12478
|
+
var Tabs = ({
|
|
12479
|
+
children,
|
|
12480
|
+
value: valueProp,
|
|
12481
|
+
onValueChange: onValueChangeProp,
|
|
12482
|
+
defaultValue,
|
|
12483
|
+
...props
|
|
12484
|
+
}) => {
|
|
12485
|
+
const [value, setValue] = (0, import_react67.useState)(valueProp ?? defaultValue);
|
|
12486
|
+
const onValueChange = (0, import_react67.useCallback)(
|
|
12487
|
+
(newValue) => {
|
|
12488
|
+
setValue(newValue);
|
|
12489
|
+
if (onValueChangeProp) {
|
|
12490
|
+
onValueChangeProp(newValue);
|
|
12491
|
+
}
|
|
12492
|
+
},
|
|
12493
|
+
[onValueChangeProp]
|
|
12494
|
+
);
|
|
12495
|
+
const rootProps = {
|
|
12496
|
+
...props,
|
|
12497
|
+
onValueChange
|
|
12498
|
+
};
|
|
12499
|
+
if ((0, import_type_guards50.isNotNil)(value)) {
|
|
12500
|
+
rootProps.value = value;
|
|
12501
|
+
}
|
|
12502
|
+
if ((0, import_type_guards50.isNotNil)(defaultValue)) {
|
|
12503
|
+
rootProps.defaultValue = defaultValue;
|
|
12504
|
+
}
|
|
12505
|
+
return /* @__PURE__ */ (0, import_jsx_runtime266.jsx)(import_react_tabs.Root, { ...rootProps, children: /* @__PURE__ */ (0, import_jsx_runtime266.jsx)(TabsValueProvider, { value: value ?? defaultValue, children: /* @__PURE__ */ (0, import_jsx_runtime266.jsx)(SelectedItemStyleProvider, { children }) }) });
|
|
12506
|
+
};
|
|
12507
|
+
Tabs.displayName = "Tabs";
|
|
12508
|
+
|
|
12509
|
+
// src/components/Tabs/TabsContent.tsx
|
|
12510
|
+
var import_react_tabs2 = require("@radix-ui/react-tabs");
|
|
12511
|
+
var import_jsx_runtime267 = require("react/jsx-runtime");
|
|
12512
|
+
var TabsContent = ({ children, value }) => {
|
|
12513
|
+
return /* @__PURE__ */ (0, import_jsx_runtime267.jsx)(import_react_tabs2.Content, { value, children });
|
|
12514
|
+
};
|
|
12515
|
+
TabsContent.displayName = "TabsContent";
|
|
12516
|
+
|
|
12517
|
+
// src/components/Tabs/TabsList.tsx
|
|
12518
|
+
var import_react_tabs3 = require("@radix-ui/react-tabs");
|
|
12519
|
+
var import_styled_components85 = __toESM(require("styled-components"));
|
|
12520
|
+
|
|
12521
|
+
// src/components/Tabs/TabsSelectedItemIndicatorDiv.tsx
|
|
12522
|
+
var import_styled_components84 = __toESM(require("styled-components"));
|
|
12523
|
+
var TabsSelectedItemIndicatorDiv = (0, import_styled_components84.default)(SelectedItemIndicatorDiv)`
|
|
12524
|
+
&:has(~ button[role='tab']:focus-visible) {
|
|
12525
|
+
outline: 2px solid var(--wui-color-focus-ring);
|
|
12526
|
+
}
|
|
12527
|
+
`;
|
|
12528
|
+
|
|
12529
|
+
// src/components/Tabs/SelectedTabIndicator.tsx
|
|
12530
12530
|
var import_jsx_runtime268 = require("react/jsx-runtime");
|
|
12531
|
-
var
|
|
12531
|
+
var SelectedTabIndicator = () => {
|
|
12532
|
+
const { selectedItemIndicatorStyle } = useSelectedItemStyle();
|
|
12533
|
+
const selectedValue = useTabsValue();
|
|
12534
|
+
if (selectedValue == null) {
|
|
12535
|
+
return null;
|
|
12536
|
+
}
|
|
12537
|
+
return /* @__PURE__ */ (0, import_jsx_runtime268.jsx)(TabsSelectedItemIndicatorDiv, { style: selectedItemIndicatorStyle });
|
|
12538
|
+
};
|
|
12539
|
+
|
|
12540
|
+
// src/components/Tabs/TabsList.tsx
|
|
12541
|
+
var import_jsx_runtime269 = require("react/jsx-runtime");
|
|
12542
|
+
var StyledRadixTabsList = (0, import_styled_components85.default)(import_react_tabs3.List)`
|
|
12543
|
+
${segmentedControlStyles}
|
|
12544
|
+
`;
|
|
12545
|
+
var TabsList = ({ children, fullWidth = true, ...props }) => {
|
|
12546
|
+
return /* @__PURE__ */ (0, import_jsx_runtime269.jsxs)(
|
|
12547
|
+
StyledRadixTabsList,
|
|
12548
|
+
{
|
|
12549
|
+
$fullWidth: fullWidth,
|
|
12550
|
+
"aria-label": props["aria-label"],
|
|
12551
|
+
children: [
|
|
12552
|
+
/* @__PURE__ */ (0, import_jsx_runtime269.jsx)(SelectedTabIndicator, {}),
|
|
12553
|
+
children
|
|
12554
|
+
]
|
|
12555
|
+
}
|
|
12556
|
+
);
|
|
12557
|
+
};
|
|
12558
|
+
TabsList.displayName = "TabsList";
|
|
12559
|
+
|
|
12560
|
+
// src/components/Tabs/TabsTrigger.tsx
|
|
12561
|
+
var import_react68 = require("react");
|
|
12562
|
+
var import_type_guards51 = require("@wistia/type-guards");
|
|
12563
|
+
|
|
12564
|
+
// src/components/Tabs/StyledRadixTabsTrigger.tsx
|
|
12565
|
+
var import_styled_components86 = __toESM(require("styled-components"));
|
|
12566
|
+
var import_react_tabs4 = require("@radix-ui/react-tabs");
|
|
12567
|
+
var StyledRadixTabsTrigger = (0, import_styled_components86.default)(import_react_tabs4.Trigger)`
|
|
12532
12568
|
${segmentedControlItemStyles}
|
|
12533
12569
|
|
|
12534
12570
|
&:focus-visible {
|
|
12535
12571
|
outline: none;
|
|
12536
12572
|
}
|
|
12537
12573
|
`;
|
|
12538
|
-
|
|
12539
|
-
|
|
12574
|
+
|
|
12575
|
+
// src/components/Tabs/TabsTrigger.tsx
|
|
12576
|
+
var import_jsx_runtime270 = require("react/jsx-runtime");
|
|
12577
|
+
var TabsTrigger = (0, import_react68.forwardRef)(
|
|
12578
|
+
({ disabled = false, icon, label, "aria-label": ariaLabel, value, ...otherProps }, forwardedRef) => {
|
|
12540
12579
|
const selectedValue = useTabsValue();
|
|
12541
12580
|
const { setSelectedItemMeasurements } = useSelectedItemStyle();
|
|
12542
|
-
const buttonRef = (0,
|
|
12581
|
+
const buttonRef = (0, import_react68.useRef)(null);
|
|
12543
12582
|
const combinedRef = mergeRefs([buttonRef, forwardedRef]);
|
|
12544
|
-
(0,
|
|
12583
|
+
(0, import_react68.useEffect)(() => {
|
|
12545
12584
|
const buttonElem = buttonRef.current;
|
|
12546
12585
|
if (!buttonElem) {
|
|
12547
12586
|
return void 0;
|
|
@@ -12566,12 +12605,13 @@ var TabItem = (0, import_react67.forwardRef)(
|
|
|
12566
12605
|
resizeObserver.disconnect();
|
|
12567
12606
|
};
|
|
12568
12607
|
}, [selectedValue, setSelectedItemMeasurements, value]);
|
|
12569
|
-
return /* @__PURE__ */ (0,
|
|
12570
|
-
|
|
12608
|
+
return /* @__PURE__ */ (0, import_jsx_runtime270.jsxs)(
|
|
12609
|
+
StyledRadixTabsTrigger,
|
|
12571
12610
|
{
|
|
12611
|
+
...otherProps,
|
|
12572
12612
|
ref: combinedRef,
|
|
12573
|
-
$hasLabel: (0,
|
|
12574
|
-
"aria-label": (0,
|
|
12613
|
+
$hasLabel: (0, import_type_guards51.isNotNil)(label),
|
|
12614
|
+
"aria-label": (0, import_type_guards51.isNotNil)(label) ? void 0 : ariaLabel,
|
|
12575
12615
|
disabled,
|
|
12576
12616
|
value,
|
|
12577
12617
|
children: [
|
|
@@ -12582,176 +12622,14 @@ var TabItem = (0, import_react67.forwardRef)(
|
|
|
12582
12622
|
);
|
|
12583
12623
|
}
|
|
12584
12624
|
);
|
|
12585
|
-
|
|
12586
|
-
|
|
12587
|
-
// src/components/Tabs/extractTabItems.ts
|
|
12588
|
-
var import_react68 = require("react");
|
|
12589
|
-
var extractTabItems = (children) => {
|
|
12590
|
-
const tabItems = [];
|
|
12591
|
-
import_react68.Children.forEach(children, (child) => {
|
|
12592
|
-
if (!(0, import_react68.isValidElement)(child)) {
|
|
12593
|
-
return;
|
|
12594
|
-
}
|
|
12595
|
-
if (typeof child.type !== "string" && child.type.displayName === "Tab") {
|
|
12596
|
-
tabItems.push(child);
|
|
12597
|
-
} else if (child.type === import_react68.Fragment) {
|
|
12598
|
-
const fragmentElement = child;
|
|
12599
|
-
tabItems.push(...extractTabItems(fragmentElement.props.children));
|
|
12600
|
-
} else if ((child.props.children ?? null) != null) {
|
|
12601
|
-
const childChildren = child.props.children;
|
|
12602
|
-
tabItems.push(...extractTabItems(childChildren));
|
|
12603
|
-
} else {
|
|
12604
|
-
}
|
|
12605
|
-
});
|
|
12606
|
-
return tabItems;
|
|
12607
|
-
};
|
|
12608
|
-
|
|
12609
|
-
// src/components/Tabs/SelectedItemIndicator.tsx
|
|
12610
|
-
var import_styled_components87 = __toESM(require("styled-components"));
|
|
12611
|
-
var import_jsx_runtime269 = require("react/jsx-runtime");
|
|
12612
|
-
var TabsSelectedItemIndicatorDiv = (0, import_styled_components87.default)(SelectedItemIndicatorDiv)`
|
|
12613
|
-
&:has(~ ${StyledTabItem}:focus-visible) {
|
|
12614
|
-
outline: 2px solid var(--wui-color-focus-ring);
|
|
12615
|
-
}
|
|
12616
|
-
`;
|
|
12617
|
-
var SelectedItemIndicator2 = () => {
|
|
12618
|
-
const { selectedItemIndicatorStyle } = useSelectedItemStyle();
|
|
12619
|
-
const selectedValue = useTabsValue();
|
|
12620
|
-
if (selectedValue == null) {
|
|
12621
|
-
return null;
|
|
12622
|
-
}
|
|
12623
|
-
return /* @__PURE__ */ (0, import_jsx_runtime269.jsx)(TabsSelectedItemIndicatorDiv, { style: selectedItemIndicatorStyle });
|
|
12624
|
-
};
|
|
12625
|
-
|
|
12626
|
-
// src/components/Tabs/Tabs.tsx
|
|
12627
|
-
var import_jsx_runtime270 = require("react/jsx-runtime");
|
|
12628
|
-
var TabsContainer = import_styled_components88.default.div`
|
|
12629
|
-
display: flex;
|
|
12630
|
-
flex-direction: column;
|
|
12631
|
-
height: ${({ $stickyHeaders }) => $stickyHeaders ? "100%" : "auto"};
|
|
12632
|
-
overflow: ${({ $stickyHeaders }) => $stickyHeaders ? "hidden" : "visible"};
|
|
12633
|
-
`;
|
|
12634
|
-
var StickyTabContent = import_styled_components88.default.div`
|
|
12635
|
-
flex: ${({ $stickyHeaders }) => $stickyHeaders ? "1" : "initial"};
|
|
12636
|
-
overflow-y: ${({ $stickyHeaders }) => $stickyHeaders ? "auto" : "visible"};
|
|
12637
|
-
overflow-x: ${({ $stickyHeaders }) => $stickyHeaders ? "hidden" : "visible"};
|
|
12638
|
-
`;
|
|
12639
|
-
var StyledTabsRoot = (0, import_styled_components88.default)(import_react_tabs4.Root)`
|
|
12640
|
-
display: flex;
|
|
12641
|
-
flex-direction: column;
|
|
12642
|
-
height: ${({ $stickyHeaders }) => $stickyHeaders ? "100%" : "auto"};
|
|
12643
|
-
`;
|
|
12644
|
-
var Tabs = (0, import_react69.forwardRef)(
|
|
12645
|
-
({
|
|
12646
|
-
children,
|
|
12647
|
-
fullWidth = true,
|
|
12648
|
-
"aria-label": ariaLabel,
|
|
12649
|
-
defaultSelectedValue,
|
|
12650
|
-
selectedValue,
|
|
12651
|
-
onSelectedValueChange,
|
|
12652
|
-
stickyHeaders = true,
|
|
12653
|
-
...props
|
|
12654
|
-
}, ref) => {
|
|
12655
|
-
const tabItems = extractTabItems(children);
|
|
12656
|
-
const [internalSelectedValue, setInternalSelectedValue] = (0, import_react69.useState)(defaultSelectedValue);
|
|
12657
|
-
const modeProps = defaultSelectedValue !== void 0 ? {
|
|
12658
|
-
defaultValue: defaultSelectedValue,
|
|
12659
|
-
onValueChange: setInternalSelectedValue
|
|
12660
|
-
} : { value: selectedValue, onValueChange: onSelectedValueChange };
|
|
12661
|
-
const currentValue = defaultSelectedValue !== void 0 ? internalSelectedValue : selectedValue;
|
|
12662
|
-
return /* @__PURE__ */ (0, import_jsx_runtime270.jsx)(TabsContainer, { $stickyHeaders: stickyHeaders, children: /* @__PURE__ */ (0, import_jsx_runtime270.jsx)(
|
|
12663
|
-
StyledTabsRoot,
|
|
12664
|
-
{
|
|
12665
|
-
ref,
|
|
12666
|
-
$stickyHeaders: stickyHeaders,
|
|
12667
|
-
activationMode: "automatic",
|
|
12668
|
-
...props,
|
|
12669
|
-
...modeProps,
|
|
12670
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime270.jsx)(TabsValueProvider, { value: currentValue, children: /* @__PURE__ */ (0, import_jsx_runtime270.jsxs)(SelectedItemStyleProvider, { children: [
|
|
12671
|
-
/* @__PURE__ */ (0, import_jsx_runtime270.jsxs)(
|
|
12672
|
-
TabList,
|
|
12673
|
-
{
|
|
12674
|
-
ariaLabel,
|
|
12675
|
-
fullWidth,
|
|
12676
|
-
children: [
|
|
12677
|
-
/* @__PURE__ */ (0, import_jsx_runtime270.jsx)(SelectedItemIndicator2, {}),
|
|
12678
|
-
tabItems.map((tab) => {
|
|
12679
|
-
const {
|
|
12680
|
-
value,
|
|
12681
|
-
disabled = false,
|
|
12682
|
-
icon,
|
|
12683
|
-
label,
|
|
12684
|
-
"aria-label": ariaLabelForTab
|
|
12685
|
-
} = tab.props;
|
|
12686
|
-
if ((0, import_type_guards51.isNil)(icon)) {
|
|
12687
|
-
return /* @__PURE__ */ (0, import_jsx_runtime270.jsx)(
|
|
12688
|
-
TabItem,
|
|
12689
|
-
{
|
|
12690
|
-
disabled,
|
|
12691
|
-
label,
|
|
12692
|
-
value
|
|
12693
|
-
},
|
|
12694
|
-
value
|
|
12695
|
-
);
|
|
12696
|
-
}
|
|
12697
|
-
if ((0, import_type_guards51.isNotNil)(label)) {
|
|
12698
|
-
return /* @__PURE__ */ (0, import_jsx_runtime270.jsx)(
|
|
12699
|
-
TabItem,
|
|
12700
|
-
{
|
|
12701
|
-
disabled,
|
|
12702
|
-
icon,
|
|
12703
|
-
label,
|
|
12704
|
-
value
|
|
12705
|
-
},
|
|
12706
|
-
value
|
|
12707
|
-
);
|
|
12708
|
-
}
|
|
12709
|
-
if ((0, import_type_guards51.isNotNil)(ariaLabelForTab)) {
|
|
12710
|
-
return /* @__PURE__ */ (0, import_jsx_runtime270.jsx)(
|
|
12711
|
-
TabItem,
|
|
12712
|
-
{
|
|
12713
|
-
"aria-label": ariaLabelForTab,
|
|
12714
|
-
disabled,
|
|
12715
|
-
icon,
|
|
12716
|
-
value
|
|
12717
|
-
},
|
|
12718
|
-
value
|
|
12719
|
-
);
|
|
12720
|
-
}
|
|
12721
|
-
throw new Error("A `Tab` with an icon must have either label or aria-label");
|
|
12722
|
-
})
|
|
12723
|
-
]
|
|
12724
|
-
}
|
|
12725
|
-
),
|
|
12726
|
-
/* @__PURE__ */ (0, import_jsx_runtime270.jsx)(StickyTabContent, { $stickyHeaders: stickyHeaders, children: tabItems.map((tab) => /* @__PURE__ */ (0, import_jsx_runtime270.jsx)(
|
|
12727
|
-
TabPanel,
|
|
12728
|
-
{
|
|
12729
|
-
value: tab.props.value,
|
|
12730
|
-
children: tab.props.children
|
|
12731
|
-
},
|
|
12732
|
-
tab.props.value
|
|
12733
|
-
)) })
|
|
12734
|
-
] }) })
|
|
12735
|
-
}
|
|
12736
|
-
) });
|
|
12737
|
-
}
|
|
12738
|
-
);
|
|
12739
|
-
Tabs.displayName = "Tabs";
|
|
12740
|
-
|
|
12741
|
-
// src/components/Tabs/Tab.tsx
|
|
12742
|
-
var import_react70 = require("react");
|
|
12743
|
-
var import_jsx_runtime271 = require("react/jsx-runtime");
|
|
12744
|
-
var Tab = (0, import_react70.forwardRef)(({ children }, ref) => {
|
|
12745
|
-
return /* @__PURE__ */ (0, import_jsx_runtime271.jsx)("div", { ref, children });
|
|
12746
|
-
});
|
|
12747
|
-
Tab.displayName = "Tab";
|
|
12625
|
+
TabsTrigger.displayName = "TabsTrigger";
|
|
12748
12626
|
|
|
12749
12627
|
// src/components/Tag/Tag.tsx
|
|
12750
|
-
var
|
|
12751
|
-
var
|
|
12628
|
+
var import_react69 = require("react");
|
|
12629
|
+
var import_styled_components87 = __toESM(require("styled-components"));
|
|
12752
12630
|
var import_type_guards52 = require("@wistia/type-guards");
|
|
12753
|
-
var
|
|
12754
|
-
var TagLabel =
|
|
12631
|
+
var import_jsx_runtime271 = require("react/jsx-runtime");
|
|
12632
|
+
var TagLabel = import_styled_components87.default.a`
|
|
12755
12633
|
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
12756
12634
|
font-size: var(--wui-typography-label-4-size);
|
|
12757
12635
|
font-weight: var(--wui-typography-label-4-weight);
|
|
@@ -12786,14 +12664,14 @@ var TagLabel = import_styled_components89.default.a`
|
|
|
12786
12664
|
box-shadow: inset 0 0 0 2px var(--wui-color-border-secondary);
|
|
12787
12665
|
}
|
|
12788
12666
|
`;
|
|
12789
|
-
var TagDivider =
|
|
12667
|
+
var TagDivider = import_styled_components87.default.div`
|
|
12790
12668
|
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
12791
12669
|
border-left: 1px solid var(--wui-color-border);
|
|
12792
12670
|
display: flex;
|
|
12793
12671
|
height: 14px;
|
|
12794
12672
|
width: 1px;
|
|
12795
12673
|
`;
|
|
12796
|
-
var StyledRemoveButton =
|
|
12674
|
+
var StyledRemoveButton = import_styled_components87.default.button`
|
|
12797
12675
|
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
12798
12676
|
all: unset;
|
|
12799
12677
|
cursor: pointer;
|
|
@@ -12821,7 +12699,7 @@ var StyledRemoveButton = import_styled_components89.default.button`
|
|
|
12821
12699
|
box-shadow: inset 0 0 0 2px var(--wui-color-border-secondary);
|
|
12822
12700
|
}
|
|
12823
12701
|
`;
|
|
12824
|
-
var StyledTag =
|
|
12702
|
+
var StyledTag = import_styled_components87.default.div`
|
|
12825
12703
|
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
12826
12704
|
align-items: center;
|
|
12827
12705
|
background-color: var(--wui-color-bg-surface-secondary);
|
|
@@ -12842,40 +12720,40 @@ var RemoveButton = ({ onClickRemove, onClickRemoveLabel, colorScheme }) => {
|
|
|
12842
12720
|
"for accessibility, onClickRemoveLabel must be provided if onClickRemove is provided"
|
|
12843
12721
|
);
|
|
12844
12722
|
}
|
|
12845
|
-
return /* @__PURE__ */ (0,
|
|
12846
|
-
/* @__PURE__ */ (0,
|
|
12847
|
-
/* @__PURE__ */ (0,
|
|
12723
|
+
return /* @__PURE__ */ (0, import_jsx_runtime271.jsxs)(import_jsx_runtime271.Fragment, { children: [
|
|
12724
|
+
/* @__PURE__ */ (0, import_jsx_runtime271.jsx)(TagDivider, { $colorScheme: colorScheme }),
|
|
12725
|
+
/* @__PURE__ */ (0, import_jsx_runtime271.jsxs)(
|
|
12848
12726
|
StyledRemoveButton,
|
|
12849
12727
|
{
|
|
12850
12728
|
$colorScheme: colorScheme,
|
|
12851
12729
|
onClick: onClickRemove,
|
|
12852
12730
|
type: "button",
|
|
12853
12731
|
children: [
|
|
12854
|
-
/* @__PURE__ */ (0,
|
|
12732
|
+
/* @__PURE__ */ (0, import_jsx_runtime271.jsx)(
|
|
12855
12733
|
Icon,
|
|
12856
12734
|
{
|
|
12857
12735
|
size: "sm",
|
|
12858
12736
|
type: "close"
|
|
12859
12737
|
}
|
|
12860
12738
|
),
|
|
12861
|
-
/* @__PURE__ */ (0,
|
|
12739
|
+
/* @__PURE__ */ (0, import_jsx_runtime271.jsx)(ScreenReaderOnly, { children: onClickRemoveLabel })
|
|
12862
12740
|
]
|
|
12863
12741
|
}
|
|
12864
12742
|
)
|
|
12865
12743
|
] });
|
|
12866
12744
|
};
|
|
12867
|
-
var Tag = (0,
|
|
12745
|
+
var Tag = (0, import_react69.forwardRef)(
|
|
12868
12746
|
({ onClickRemove, colorScheme = "inherit", href, icon, label, onClickRemoveLabel, ...props }, ref) => {
|
|
12869
12747
|
const hasIcon = (0, import_type_guards52.isNotNil)(icon);
|
|
12870
12748
|
const labelProps = (0, import_type_guards52.isNotNil)(href) && (0, import_type_guards52.isNonEmptyString)(href) ? { href, as: "a" } : { as: "span" };
|
|
12871
|
-
return /* @__PURE__ */ (0,
|
|
12749
|
+
return /* @__PURE__ */ (0, import_jsx_runtime271.jsxs)(
|
|
12872
12750
|
StyledTag,
|
|
12873
12751
|
{
|
|
12874
12752
|
ref,
|
|
12875
12753
|
$colorScheme: colorScheme,
|
|
12876
12754
|
...props,
|
|
12877
12755
|
children: [
|
|
12878
|
-
/* @__PURE__ */ (0,
|
|
12756
|
+
/* @__PURE__ */ (0, import_jsx_runtime271.jsxs)(
|
|
12879
12757
|
TagLabel,
|
|
12880
12758
|
{
|
|
12881
12759
|
...labelProps,
|
|
@@ -12886,7 +12764,7 @@ var Tag = (0, import_react71.forwardRef)(
|
|
|
12886
12764
|
]
|
|
12887
12765
|
}
|
|
12888
12766
|
),
|
|
12889
|
-
/* @__PURE__ */ (0,
|
|
12767
|
+
/* @__PURE__ */ (0, import_jsx_runtime271.jsx)(
|
|
12890
12768
|
RemoveButton,
|
|
12891
12769
|
{
|
|
12892
12770
|
colorScheme,
|
|
@@ -12902,10 +12780,10 @@ var Tag = (0, import_react71.forwardRef)(
|
|
|
12902
12780
|
Tag.displayName = "Tag";
|
|
12903
12781
|
|
|
12904
12782
|
// src/components/Thumbnail/ThumbnailBadge.tsx
|
|
12905
|
-
var
|
|
12783
|
+
var import_styled_components88 = __toESM(require("styled-components"));
|
|
12906
12784
|
var import_type_guards53 = require("@wistia/type-guards");
|
|
12907
|
-
var
|
|
12908
|
-
var StyledThumbnailBadge =
|
|
12785
|
+
var import_jsx_runtime272 = require("react/jsx-runtime");
|
|
12786
|
+
var StyledThumbnailBadge = import_styled_components88.default.div`
|
|
12909
12787
|
align-items: center;
|
|
12910
12788
|
background-color: rgb(0 0 0 / 50%);
|
|
12911
12789
|
border-radius: var(--wui-border-radius-01);
|
|
@@ -12930,23 +12808,23 @@ var StyledThumbnailBadge = import_styled_components90.default.div`
|
|
|
12930
12808
|
}
|
|
12931
12809
|
`;
|
|
12932
12810
|
var ThumbnailBadge = ({ icon, label, ...props }) => {
|
|
12933
|
-
return /* @__PURE__ */ (0,
|
|
12811
|
+
return /* @__PURE__ */ (0, import_jsx_runtime272.jsxs)(StyledThumbnailBadge, { ...props, children: [
|
|
12934
12812
|
(0, import_type_guards53.isNotNil)(icon) && icon,
|
|
12935
|
-
/* @__PURE__ */ (0,
|
|
12813
|
+
/* @__PURE__ */ (0, import_jsx_runtime272.jsx)("span", { children: label })
|
|
12936
12814
|
] });
|
|
12937
12815
|
};
|
|
12938
12816
|
ThumbnailBadge.displayName = "ThumbnailBadge";
|
|
12939
12817
|
|
|
12940
12818
|
// src/components/Thumbnail/Thumbnail.tsx
|
|
12941
|
-
var
|
|
12942
|
-
var
|
|
12819
|
+
var import_react70 = require("react");
|
|
12820
|
+
var import_styled_components91 = __toESM(require("styled-components"));
|
|
12943
12821
|
var import_type_guards56 = require("@wistia/type-guards");
|
|
12944
12822
|
|
|
12945
12823
|
// src/private/helpers/getBackgroundGradient/getBackgroundGradient.ts
|
|
12946
12824
|
var import_type_guards54 = require("@wistia/type-guards");
|
|
12947
|
-
var
|
|
12825
|
+
var import_styled_components89 = require("styled-components");
|
|
12948
12826
|
var gradients = {
|
|
12949
|
-
defaultDarkOne:
|
|
12827
|
+
defaultDarkOne: import_styled_components89.css`
|
|
12950
12828
|
background-color: #222d66;
|
|
12951
12829
|
background-image:
|
|
12952
12830
|
radial-gradient(farthest-corner at top right, #222d66, transparent 70%),
|
|
@@ -12954,7 +12832,7 @@ var gradients = {
|
|
|
12954
12832
|
radial-gradient(farthest-corner at bottom left, #6b84ff, transparent 57%),
|
|
12955
12833
|
radial-gradient(farthest-corner at top left, #2949e5, transparent 68%);
|
|
12956
12834
|
`,
|
|
12957
|
-
defaultDarkTwo:
|
|
12835
|
+
defaultDarkTwo: import_styled_components89.css`
|
|
12958
12836
|
background-color: #222d66;
|
|
12959
12837
|
background-image:
|
|
12960
12838
|
radial-gradient(farthest-corner at top left, #6b84ff, transparent 100%),
|
|
@@ -12962,7 +12840,7 @@ var gradients = {
|
|
|
12962
12840
|
radial-gradient(farthest-corner at bottom right, #2949e5, transparent 50%),
|
|
12963
12841
|
radial-gradient(farthest-corner at top right, #2949e5, transparent 70%);
|
|
12964
12842
|
`,
|
|
12965
|
-
defaultLightOne:
|
|
12843
|
+
defaultLightOne: import_styled_components89.css`
|
|
12966
12844
|
background-color: #ccd5ff;
|
|
12967
12845
|
background-image:
|
|
12968
12846
|
radial-gradient(farthest-corner at bottom right, #ccd5ff, transparent 55%),
|
|
@@ -12970,13 +12848,13 @@ var gradients = {
|
|
|
12970
12848
|
radial-gradient(farthest-corner at top right, #6b84ff, transparent 50%),
|
|
12971
12849
|
radial-gradient(farthest-corner at bottom left, #f7f8ff, transparent 50%);
|
|
12972
12850
|
`,
|
|
12973
|
-
defaultLightTwo:
|
|
12851
|
+
defaultLightTwo: import_styled_components89.css`
|
|
12974
12852
|
background-color: #ccd5ff;
|
|
12975
12853
|
background-image:
|
|
12976
12854
|
radial-gradient(ellipse at top, #ccd5ff, transparent),
|
|
12977
12855
|
radial-gradient(ellipse at bottom, #6b84ff, transparent);
|
|
12978
12856
|
`,
|
|
12979
|
-
defaultMidOne:
|
|
12857
|
+
defaultMidOne: import_styled_components89.css`
|
|
12980
12858
|
background-color: #6b84ff;
|
|
12981
12859
|
background-image:
|
|
12982
12860
|
radial-gradient(farthest-corner at top right, #2949e5, transparent 70%),
|
|
@@ -12984,13 +12862,13 @@ var gradients = {
|
|
|
12984
12862
|
radial-gradient(farthest-corner at top left, #6b84ff, transparent 80%),
|
|
12985
12863
|
radial-gradient(farthest-corner at bottom left, #222d66, transparent 57%);
|
|
12986
12864
|
`,
|
|
12987
|
-
defaultMidTwo:
|
|
12865
|
+
defaultMidTwo: import_styled_components89.css`
|
|
12988
12866
|
background-color: #6b84ff;
|
|
12989
12867
|
background-image:
|
|
12990
12868
|
radial-gradient(ellipse at top, #2949e5, transparent),
|
|
12991
12869
|
radial-gradient(ellipse at bottom, #ccd5ff, transparent);
|
|
12992
12870
|
`,
|
|
12993
|
-
green:
|
|
12871
|
+
green: import_styled_components89.css`
|
|
12994
12872
|
background-color: #fafffa;
|
|
12995
12873
|
background-image:
|
|
12996
12874
|
radial-gradient(farthest-corner at bottom left, #b0e5a5, transparent 50%),
|
|
@@ -12998,7 +12876,7 @@ var gradients = {
|
|
|
12998
12876
|
radial-gradient(farthest-corner at top left, #44b62d, transparent 65%),
|
|
12999
12877
|
radial-gradient(farthest-corner at bottom right, #44b62d, transparent 55%);
|
|
13000
12878
|
`,
|
|
13001
|
-
greenWithPop:
|
|
12879
|
+
greenWithPop: import_styled_components89.css`
|
|
13002
12880
|
background-color: #fafffa;
|
|
13003
12881
|
background-image:
|
|
13004
12882
|
radial-gradient(farthest-corner at bottom left, #b0e5a5, transparent 50%),
|
|
@@ -13006,7 +12884,7 @@ var gradients = {
|
|
|
13006
12884
|
radial-gradient(farthest-corner at top left, #44b62d, transparent 65%),
|
|
13007
12885
|
radial-gradient(farthest-corner at bottom right, #44b62d, transparent 55%);
|
|
13008
12886
|
`,
|
|
13009
|
-
pink:
|
|
12887
|
+
pink: import_styled_components89.css`
|
|
13010
12888
|
background-color: #fffff0;
|
|
13011
12889
|
background-image:
|
|
13012
12890
|
radial-gradient(farthest-corner at bottom left, #ffc7e8, transparent 50%),
|
|
@@ -13014,7 +12892,7 @@ var gradients = {
|
|
|
13014
12892
|
radial-gradient(farthest-corner at top left, #ff40b3, transparent 65%),
|
|
13015
12893
|
radial-gradient(farthest-corner at bottom right, #ff40b3, transparent 55%);
|
|
13016
12894
|
`,
|
|
13017
|
-
pinkWithPop:
|
|
12895
|
+
pinkWithPop: import_styled_components89.css`
|
|
13018
12896
|
background-color: #fffff0;
|
|
13019
12897
|
background-image:
|
|
13020
12898
|
radial-gradient(farthest-corner at top right, #e0128e, transparent 70%),
|
|
@@ -13022,7 +12900,7 @@ var gradients = {
|
|
|
13022
12900
|
radial-gradient(farthest-corner at bottom right, #ff40b3, transparent 55%),
|
|
13023
12901
|
radial-gradient(farthest-corner at bottom left, #2949e5, transparent 50%);
|
|
13024
12902
|
`,
|
|
13025
|
-
playfulGradientOne:
|
|
12903
|
+
playfulGradientOne: import_styled_components89.css`
|
|
13026
12904
|
background-color: #f7f8ff;
|
|
13027
12905
|
background-image:
|
|
13028
12906
|
radial-gradient(farthest-corner at top left, #d65cff, transparent 68%),
|
|
@@ -13030,7 +12908,7 @@ var gradients = {
|
|
|
13030
12908
|
radial-gradient(farthest-corner at bottom left, #ffc7e8, transparent 57%),
|
|
13031
12909
|
radial-gradient(farthest-corner at top right, #ffcaba, transparent 70%);
|
|
13032
12910
|
`,
|
|
13033
|
-
playfulGradientTwo:
|
|
12911
|
+
playfulGradientTwo: import_styled_components89.css`
|
|
13034
12912
|
background-color: #f7f8ff;
|
|
13035
12913
|
background-image:
|
|
13036
12914
|
radial-gradient(farthest-corner at top left, #44b62d, transparent 68%),
|
|
@@ -13038,13 +12916,13 @@ var gradients = {
|
|
|
13038
12916
|
radial-gradient(farthest-corner at bottom left, #ccd5ff, transparent 57%),
|
|
13039
12917
|
radial-gradient(farthest-corner at top right, #2949e5, transparent 70%);
|
|
13040
12918
|
`,
|
|
13041
|
-
purple:
|
|
12919
|
+
purple: import_styled_components89.css`
|
|
13042
12920
|
background-color: #f2caff;
|
|
13043
12921
|
background-image:
|
|
13044
12922
|
radial-gradient(ellipse at 0% 100%, #f9e5ff, transparent 50%),
|
|
13045
12923
|
radial-gradient(ellipse at 100% 0%, #e093fa, transparent 70%);
|
|
13046
12924
|
`,
|
|
13047
|
-
purpleWithPop:
|
|
12925
|
+
purpleWithPop: import_styled_components89.css`
|
|
13048
12926
|
background-color: #f2caff;
|
|
13049
12927
|
background-image:
|
|
13050
12928
|
radial-gradient(farthest-corner at bottom left, #f2caff, transparent 50%),
|
|
@@ -13052,7 +12930,7 @@ var gradients = {
|
|
|
13052
12930
|
radial-gradient(farthest-corner at bottom right, #d65cff, transparent 55%),
|
|
13053
12931
|
radial-gradient(farthest-corner at top right, #2949e5, transparent 70%);
|
|
13054
12932
|
`,
|
|
13055
|
-
yellow:
|
|
12933
|
+
yellow: import_styled_components89.css`
|
|
13056
12934
|
background-color: #fffff0;
|
|
13057
12935
|
background-image:
|
|
13058
12936
|
radial-gradient(farthest-corner at bottom left, #eff18d, transparent 50%),
|
|
@@ -13060,7 +12938,7 @@ var gradients = {
|
|
|
13060
12938
|
radial-gradient(farthest-corner at top left, #e8ec1e, transparent 65%),
|
|
13061
12939
|
radial-gradient(farthest-corner at bottom right, #e8ec1e, transparent 55%);
|
|
13062
12940
|
`,
|
|
13063
|
-
yellowWithPop:
|
|
12941
|
+
yellowWithPop: import_styled_components89.css`
|
|
13064
12942
|
background-color: #fffff0;
|
|
13065
12943
|
background-image:
|
|
13066
12944
|
radial-gradient(farthest-corner at bottom left, #eff18d, transparent 50%),
|
|
@@ -13075,10 +12953,10 @@ var getBackgroundGradient = (gradientName = void 0) => {
|
|
|
13075
12953
|
};
|
|
13076
12954
|
|
|
13077
12955
|
// src/components/Thumbnail/ThumbnailStoryboardViewer.tsx
|
|
13078
|
-
var
|
|
12956
|
+
var import_styled_components90 = __toESM(require("styled-components"));
|
|
13079
12957
|
var import_type_guards55 = require("@wistia/type-guards");
|
|
13080
|
-
var
|
|
13081
|
-
var ScrubLine =
|
|
12958
|
+
var import_jsx_runtime273 = require("react/jsx-runtime");
|
|
12959
|
+
var ScrubLine = import_styled_components90.default.div`
|
|
13082
12960
|
position: absolute;
|
|
13083
12961
|
top: 0;
|
|
13084
12962
|
height: 100%;
|
|
@@ -13180,14 +13058,14 @@ var ThumbnailStoryboardViewer = ({
|
|
|
13180
13058
|
backgroundPosition,
|
|
13181
13059
|
backgroundSize
|
|
13182
13060
|
};
|
|
13183
|
-
return /* @__PURE__ */ (0,
|
|
13061
|
+
return /* @__PURE__ */ (0, import_jsx_runtime273.jsxs)(
|
|
13184
13062
|
"div",
|
|
13185
13063
|
{
|
|
13186
13064
|
...props,
|
|
13187
13065
|
style: viewerStyles,
|
|
13188
13066
|
children: [
|
|
13189
|
-
/* @__PURE__ */ (0,
|
|
13190
|
-
showScrubLine ? /* @__PURE__ */ (0,
|
|
13067
|
+
/* @__PURE__ */ (0, import_jsx_runtime273.jsx)("div", { style: storyboardStyles }),
|
|
13068
|
+
showScrubLine ? /* @__PURE__ */ (0, import_jsx_runtime273.jsx)(
|
|
13191
13069
|
ScrubLine,
|
|
13192
13070
|
{
|
|
13193
13071
|
style: {
|
|
@@ -13201,20 +13079,20 @@ var ThumbnailStoryboardViewer = ({
|
|
|
13201
13079
|
};
|
|
13202
13080
|
|
|
13203
13081
|
// src/components/Thumbnail/Thumbnail.tsx
|
|
13204
|
-
var
|
|
13205
|
-
var WideThumbnailImage =
|
|
13082
|
+
var import_jsx_runtime274 = require("react/jsx-runtime");
|
|
13083
|
+
var WideThumbnailImage = import_styled_components91.default.img`
|
|
13206
13084
|
height: 100%;
|
|
13207
13085
|
object-fit: cover;
|
|
13208
13086
|
width: 100%;
|
|
13209
13087
|
`;
|
|
13210
|
-
var SquareThumbnailImage =
|
|
13088
|
+
var SquareThumbnailImage = import_styled_components91.default.img`
|
|
13211
13089
|
backdrop-filter: blur(8px);
|
|
13212
13090
|
object-fit: contain;
|
|
13213
13091
|
width: 100%;
|
|
13214
13092
|
`;
|
|
13215
13093
|
var ThumbnailImage = ({ thumbnailImageType, thumbnailUrl }) => {
|
|
13216
13094
|
if (thumbnailImageType === "wide") {
|
|
13217
|
-
return /* @__PURE__ */ (0,
|
|
13095
|
+
return /* @__PURE__ */ (0, import_jsx_runtime274.jsx)(
|
|
13218
13096
|
WideThumbnailImage,
|
|
13219
13097
|
{
|
|
13220
13098
|
alt: "",
|
|
@@ -13223,7 +13101,7 @@ var ThumbnailImage = ({ thumbnailImageType, thumbnailUrl }) => {
|
|
|
13223
13101
|
}
|
|
13224
13102
|
);
|
|
13225
13103
|
}
|
|
13226
|
-
return /* @__PURE__ */ (0,
|
|
13104
|
+
return /* @__PURE__ */ (0, import_jsx_runtime274.jsx)(
|
|
13227
13105
|
SquareThumbnailImage,
|
|
13228
13106
|
{
|
|
13229
13107
|
alt: "",
|
|
@@ -13232,7 +13110,7 @@ var ThumbnailImage = ({ thumbnailImageType, thumbnailUrl }) => {
|
|
|
13232
13110
|
}
|
|
13233
13111
|
);
|
|
13234
13112
|
};
|
|
13235
|
-
var StyledThumbnail =
|
|
13113
|
+
var StyledThumbnail = import_styled_components91.default.div`
|
|
13236
13114
|
background-image: ${({ $backgroundUrl }) => (0, import_type_guards56.isNotNil)($backgroundUrl) ? `url('${$backgroundUrl}')` : void 0};
|
|
13237
13115
|
${({ $backgroundUrl, $gradientBackground }) => (
|
|
13238
13116
|
// if we don't have $backgroundUrl show a gradient
|
|
@@ -13261,7 +13139,7 @@ var getRelativeMousePosition = (elem, mouseEvent) => {
|
|
|
13261
13139
|
left: relativeLeft
|
|
13262
13140
|
};
|
|
13263
13141
|
};
|
|
13264
|
-
var Thumbnail = (0,
|
|
13142
|
+
var Thumbnail = (0, import_react70.forwardRef)(
|
|
13265
13143
|
({
|
|
13266
13144
|
gradientBackground = "defaultMidOne",
|
|
13267
13145
|
thumbnailImageType = "square",
|
|
@@ -13272,17 +13150,17 @@ var Thumbnail = (0, import_react72.forwardRef)(
|
|
|
13272
13150
|
height,
|
|
13273
13151
|
...props
|
|
13274
13152
|
}, ref) => {
|
|
13275
|
-
const [percent, setPercent] = (0,
|
|
13276
|
-
const [isMouseOver, setIsMouseOver] = (0,
|
|
13277
|
-
const [isStoryboardReady, setIsStoryboardReady] = (0,
|
|
13278
|
-
const storyboardElementRef = (0,
|
|
13279
|
-
const [cursorPosition, setCursorPosition] = (0,
|
|
13280
|
-
const backgroundUrl = (0,
|
|
13153
|
+
const [percent, setPercent] = (0, import_react70.useState)(0);
|
|
13154
|
+
const [isMouseOver, setIsMouseOver] = (0, import_react70.useState)(false);
|
|
13155
|
+
const [isStoryboardReady, setIsStoryboardReady] = (0, import_react70.useState)(false);
|
|
13156
|
+
const storyboardElementRef = (0, import_react70.useRef)(null);
|
|
13157
|
+
const [cursorPosition, setCursorPosition] = (0, import_react70.useState)(null);
|
|
13158
|
+
const backgroundUrl = (0, import_react70.useMemo)(
|
|
13281
13159
|
() => thumbnailImageType === "square" && (0, import_type_guards56.isNotNil)(thumbnailUrl) ? thumbnailUrl : void 0,
|
|
13282
13160
|
[thumbnailImageType, thumbnailUrl]
|
|
13283
13161
|
);
|
|
13284
13162
|
const isScrubbable = (0, import_type_guards56.isNotNil)(storyboard);
|
|
13285
|
-
const trackStoryboardLoadStatus = (0,
|
|
13163
|
+
const trackStoryboardLoadStatus = (0, import_react70.useCallback)(() => {
|
|
13286
13164
|
if (storyboardElementRef.current || !storyboard) {
|
|
13287
13165
|
return storyboardElementRef.current;
|
|
13288
13166
|
}
|
|
@@ -13292,7 +13170,7 @@ var Thumbnail = (0, import_react72.forwardRef)(
|
|
|
13292
13170
|
storyboardElementRef.current = asset;
|
|
13293
13171
|
return storyboardElementRef.current;
|
|
13294
13172
|
}, [storyboard]);
|
|
13295
|
-
const handleMouseMove = (0,
|
|
13173
|
+
const handleMouseMove = (0, import_react70.useCallback)(
|
|
13296
13174
|
(mouseEvent) => {
|
|
13297
13175
|
if (!isScrubbable) return;
|
|
13298
13176
|
const elem = mouseEvent.currentTarget;
|
|
@@ -13305,15 +13183,15 @@ var Thumbnail = (0, import_react72.forwardRef)(
|
|
|
13305
13183
|
},
|
|
13306
13184
|
[isScrubbable, trackStoryboardLoadStatus]
|
|
13307
13185
|
);
|
|
13308
|
-
const handleMouseOut = (0,
|
|
13186
|
+
const handleMouseOut = (0, import_react70.useCallback)(() => {
|
|
13309
13187
|
if (!isScrubbable) return;
|
|
13310
13188
|
setIsMouseOver(false);
|
|
13311
13189
|
setCursorPosition(null);
|
|
13312
13190
|
}, [isScrubbable]);
|
|
13313
|
-
const shouldRenderStoryboard = (0,
|
|
13191
|
+
const shouldRenderStoryboard = (0, import_react70.useMemo)(() => {
|
|
13314
13192
|
return Boolean(isScrubbable && isMouseOver && isStoryboardReady);
|
|
13315
13193
|
}, [isScrubbable, isMouseOver, isStoryboardReady]);
|
|
13316
|
-
const renderStoryboard = (0,
|
|
13194
|
+
const renderStoryboard = (0, import_react70.useCallback)(() => {
|
|
13317
13195
|
if (!storyboard || (0, import_type_guards56.isUndefined)(height) || (0, import_type_guards56.isEmptyString)(height)) return null;
|
|
13318
13196
|
const {
|
|
13319
13197
|
url,
|
|
@@ -13326,7 +13204,7 @@ var Thumbnail = (0, import_react72.forwardRef)(
|
|
|
13326
13204
|
} = storyboard;
|
|
13327
13205
|
const targetWidth = (0, import_type_guards56.isString)(width) ? parseInt(width, 10) : Number(width);
|
|
13328
13206
|
const effectiveCursorPosition = isStoryboardReady ? cursorPosition : null;
|
|
13329
|
-
return /* @__PURE__ */ (0,
|
|
13207
|
+
return /* @__PURE__ */ (0, import_jsx_runtime274.jsx)(
|
|
13330
13208
|
ThumbnailStoryboardViewer,
|
|
13331
13209
|
{
|
|
13332
13210
|
cursorPosition: effectiveCursorPosition,
|
|
@@ -13346,7 +13224,7 @@ var Thumbnail = (0, import_react72.forwardRef)(
|
|
|
13346
13224
|
if (shouldRenderStoryboard) {
|
|
13347
13225
|
thumbnailContent = renderStoryboard();
|
|
13348
13226
|
} else if ((0, import_type_guards56.isNotNil)(thumbnailUrl)) {
|
|
13349
|
-
thumbnailContent = /* @__PURE__ */ (0,
|
|
13227
|
+
thumbnailContent = /* @__PURE__ */ (0, import_jsx_runtime274.jsx)(
|
|
13350
13228
|
ThumbnailImage,
|
|
13351
13229
|
{
|
|
13352
13230
|
thumbnailImageType,
|
|
@@ -13356,7 +13234,7 @@ var Thumbnail = (0, import_react72.forwardRef)(
|
|
|
13356
13234
|
} else {
|
|
13357
13235
|
thumbnailContent = null;
|
|
13358
13236
|
}
|
|
13359
|
-
return /* @__PURE__ */ (0,
|
|
13237
|
+
return /* @__PURE__ */ (0, import_jsx_runtime274.jsxs)(
|
|
13360
13238
|
StyledThumbnail,
|
|
13361
13239
|
{
|
|
13362
13240
|
ref,
|
|
@@ -13380,14 +13258,14 @@ var Thumbnail = (0, import_react72.forwardRef)(
|
|
|
13380
13258
|
Thumbnail.displayName = "Thumbnail";
|
|
13381
13259
|
|
|
13382
13260
|
// src/components/ThumbnailCollage/ThumbnailCollage.tsx
|
|
13383
|
-
var
|
|
13384
|
-
var
|
|
13261
|
+
var import_react71 = __toESM(require("react"));
|
|
13262
|
+
var import_styled_components92 = __toESM(require("styled-components"));
|
|
13385
13263
|
var import_type_guards57 = require("@wistia/type-guards");
|
|
13386
|
-
var
|
|
13264
|
+
var import_jsx_runtime275 = (
|
|
13387
13265
|
// ThumbnailCollage will fallback to a Thumbnail with a gradient background if no children are provided
|
|
13388
13266
|
require("react/jsx-runtime")
|
|
13389
13267
|
);
|
|
13390
|
-
var StyledThumbnailCollage =
|
|
13268
|
+
var StyledThumbnailCollage = import_styled_components92.default.div`
|
|
13391
13269
|
display: grid;
|
|
13392
13270
|
gap: var(--wui-space-01);
|
|
13393
13271
|
width: 100%;
|
|
@@ -13460,15 +13338,15 @@ var ThumbnailCollage = ({
|
|
|
13460
13338
|
gradientBackground = "defaultMidOne",
|
|
13461
13339
|
...props
|
|
13462
13340
|
}) => {
|
|
13463
|
-
const thumbnailArray =
|
|
13341
|
+
const thumbnailArray = import_react71.default.Children.toArray(children);
|
|
13464
13342
|
const truncatedThumbnails = thumbnailArray.slice(0, 3);
|
|
13465
13343
|
const thumbnails = (0, import_type_guards57.isNonEmptyArray)(thumbnailArray) ? truncatedThumbnails.map((child) => {
|
|
13466
|
-
return
|
|
13344
|
+
return import_react71.default.cloneElement(child, {
|
|
13467
13345
|
...child.props,
|
|
13468
13346
|
children: void 0
|
|
13469
13347
|
});
|
|
13470
13348
|
}) : [
|
|
13471
|
-
/* @__PURE__ */ (0,
|
|
13349
|
+
/* @__PURE__ */ (0, import_jsx_runtime275.jsx)(
|
|
13472
13350
|
Thumbnail,
|
|
13473
13351
|
{
|
|
13474
13352
|
gradientBackground,
|
|
@@ -13477,7 +13355,7 @@ var ThumbnailCollage = ({
|
|
|
13477
13355
|
"fallback"
|
|
13478
13356
|
)
|
|
13479
13357
|
];
|
|
13480
|
-
return /* @__PURE__ */ (0,
|
|
13358
|
+
return /* @__PURE__ */ (0, import_jsx_runtime275.jsx)(
|
|
13481
13359
|
StyledThumbnailCollage,
|
|
13482
13360
|
{
|
|
13483
13361
|
$gradientBackground: gradientBackground,
|
|
@@ -13489,26 +13367,26 @@ var ThumbnailCollage = ({
|
|
|
13489
13367
|
};
|
|
13490
13368
|
|
|
13491
13369
|
// src/components/WistiaLogo/WistiaLogo.tsx
|
|
13492
|
-
var
|
|
13370
|
+
var import_styled_components93 = __toESM(require("styled-components"));
|
|
13493
13371
|
var import_type_guards58 = require("@wistia/type-guards");
|
|
13494
|
-
var
|
|
13372
|
+
var import_jsx_runtime276 = require("react/jsx-runtime");
|
|
13495
13373
|
var renderBrandmark = (brandmarkColor, iconOnly) => {
|
|
13496
13374
|
if (iconOnly) {
|
|
13497
|
-
return /* @__PURE__ */ (0,
|
|
13375
|
+
return /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(
|
|
13498
13376
|
"g",
|
|
13499
13377
|
{
|
|
13500
13378
|
"data-testid": "ui-wistia-logo-brandmark",
|
|
13501
13379
|
fill: brandmarkColor,
|
|
13502
|
-
children: /* @__PURE__ */ (0,
|
|
13380
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime276.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" })
|
|
13503
13381
|
}
|
|
13504
13382
|
);
|
|
13505
13383
|
}
|
|
13506
|
-
return /* @__PURE__ */ (0,
|
|
13384
|
+
return /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(
|
|
13507
13385
|
"g",
|
|
13508
13386
|
{
|
|
13509
13387
|
"data-testid": "ui-wistia-logo-brandmark",
|
|
13510
13388
|
fill: brandmarkColor,
|
|
13511
|
-
children: /* @__PURE__ */ (0,
|
|
13389
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime276.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" })
|
|
13512
13390
|
}
|
|
13513
13391
|
);
|
|
13514
13392
|
};
|
|
@@ -13516,12 +13394,12 @@ var renderLogotype = (logotypeColor, iconOnly) => {
|
|
|
13516
13394
|
if (iconOnly) {
|
|
13517
13395
|
return null;
|
|
13518
13396
|
}
|
|
13519
|
-
return /* @__PURE__ */ (0,
|
|
13397
|
+
return /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(
|
|
13520
13398
|
"g",
|
|
13521
13399
|
{
|
|
13522
13400
|
"data-testid": "ui-wistia-logo-logotype",
|
|
13523
13401
|
fill: logotypeColor,
|
|
13524
|
-
children: /* @__PURE__ */ (0,
|
|
13402
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime276.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" })
|
|
13525
13403
|
}
|
|
13526
13404
|
);
|
|
13527
13405
|
};
|
|
@@ -13531,7 +13409,7 @@ var computedViewBox = (iconOnly) => {
|
|
|
13531
13409
|
}
|
|
13532
13410
|
return "0 0 144 31.47";
|
|
13533
13411
|
};
|
|
13534
|
-
var WistiaLogoComponent =
|
|
13412
|
+
var WistiaLogoComponent = import_styled_components93.default.svg`
|
|
13535
13413
|
height: ${({ height }) => `${height}px`};
|
|
13536
13414
|
|
|
13537
13415
|
/* ensure it will always fit on mobile */
|
|
@@ -13547,12 +13425,12 @@ var WistiaLogoComponent = import_styled_components95.default.svg`
|
|
|
13547
13425
|
${({ $opticallyCentered, $iconOnly }) => {
|
|
13548
13426
|
if ($opticallyCentered) {
|
|
13549
13427
|
if ($iconOnly) {
|
|
13550
|
-
return
|
|
13428
|
+
return import_styled_components93.css`
|
|
13551
13429
|
aspect-ratio: 1;
|
|
13552
13430
|
padding: 11.85% 3.12% 13.91%;
|
|
13553
13431
|
`;
|
|
13554
13432
|
}
|
|
13555
|
-
return
|
|
13433
|
+
return import_styled_components93.css`
|
|
13556
13434
|
aspect-ratio: 127 / 32;
|
|
13557
13435
|
`;
|
|
13558
13436
|
}
|
|
@@ -13589,7 +13467,7 @@ var WistiaLogo = ({
|
|
|
13589
13467
|
};
|
|
13590
13468
|
const brandmarkColor = VARIANT_COLORS[variant].brandmark;
|
|
13591
13469
|
const logotypeColor = VARIANT_COLORS[variant].logotype;
|
|
13592
|
-
const Logo = /* @__PURE__ */ (0,
|
|
13470
|
+
const Logo = /* @__PURE__ */ (0, import_jsx_runtime276.jsxs)(
|
|
13593
13471
|
WistiaLogoComponent,
|
|
13594
13472
|
{
|
|
13595
13473
|
$hoverColor: hoverColor,
|
|
@@ -13602,39 +13480,39 @@ var WistiaLogo = ({
|
|
|
13602
13480
|
xmlns: "http://www.w3.org/2000/svg",
|
|
13603
13481
|
...props,
|
|
13604
13482
|
children: [
|
|
13605
|
-
/* @__PURE__ */ (0,
|
|
13606
|
-
(0, import_type_guards58.isNotNil)(description) ? /* @__PURE__ */ (0,
|
|
13483
|
+
/* @__PURE__ */ (0, import_jsx_runtime276.jsx)("title", { children: title }),
|
|
13484
|
+
(0, import_type_guards58.isNotNil)(description) ? /* @__PURE__ */ (0, import_jsx_runtime276.jsx)("desc", { children: description }) : null,
|
|
13607
13485
|
renderBrandmark(brandmarkColor, iconOnly),
|
|
13608
13486
|
renderLogotype(logotypeColor, iconOnly)
|
|
13609
13487
|
]
|
|
13610
13488
|
}
|
|
13611
13489
|
);
|
|
13612
|
-
return href !== void 0 ? /* @__PURE__ */ (0,
|
|
13490
|
+
return href !== void 0 ? /* @__PURE__ */ (0, import_jsx_runtime276.jsx)("a", { href, children: Logo }) : Logo;
|
|
13613
13491
|
};
|
|
13614
13492
|
WistiaLogo.displayName = "WistiaLogo";
|
|
13615
13493
|
|
|
13616
13494
|
// src/components/List/List.tsx
|
|
13617
13495
|
var import_type_guards60 = require("@wistia/type-guards");
|
|
13618
|
-
var
|
|
13496
|
+
var import_styled_components95 = __toESM(require("styled-components"));
|
|
13619
13497
|
|
|
13620
13498
|
// src/components/List/ListItem.tsx
|
|
13621
|
-
var
|
|
13499
|
+
var import_styled_components94 = __toESM(require("styled-components"));
|
|
13622
13500
|
var import_type_guards59 = require("@wistia/type-guards");
|
|
13623
|
-
var
|
|
13624
|
-
var ListItemComponent =
|
|
13501
|
+
var import_jsx_runtime277 = require("react/jsx-runtime");
|
|
13502
|
+
var ListItemComponent = import_styled_components94.default.li`
|
|
13625
13503
|
margin-bottom: var(--wui-space-02);
|
|
13626
13504
|
`;
|
|
13627
13505
|
var ListItem = ({ children }) => {
|
|
13628
13506
|
if ((0, import_type_guards59.isNil)(children)) {
|
|
13629
13507
|
return null;
|
|
13630
13508
|
}
|
|
13631
|
-
return /* @__PURE__ */ (0,
|
|
13509
|
+
return /* @__PURE__ */ (0, import_jsx_runtime277.jsx)(ListItemComponent, { children });
|
|
13632
13510
|
};
|
|
13633
13511
|
ListItem.displayName = "ListItem";
|
|
13634
13512
|
|
|
13635
13513
|
// src/components/List/List.tsx
|
|
13636
|
-
var
|
|
13637
|
-
var spacesStyle =
|
|
13514
|
+
var import_jsx_runtime278 = require("react/jsx-runtime");
|
|
13515
|
+
var spacesStyle = import_styled_components95.css`
|
|
13638
13516
|
overflow: hidden;
|
|
13639
13517
|
padding-left: 0;
|
|
13640
13518
|
vertical-align: bottom;
|
|
@@ -13656,7 +13534,7 @@ var spacesStyle = import_styled_components97.css`
|
|
|
13656
13534
|
}
|
|
13657
13535
|
}
|
|
13658
13536
|
`;
|
|
13659
|
-
var commasStyle =
|
|
13537
|
+
var commasStyle = import_styled_components95.css`
|
|
13660
13538
|
${spacesStyle};
|
|
13661
13539
|
|
|
13662
13540
|
li {
|
|
@@ -13666,7 +13544,7 @@ var commasStyle = import_styled_components97.css`
|
|
|
13666
13544
|
}
|
|
13667
13545
|
}
|
|
13668
13546
|
`;
|
|
13669
|
-
var slashesStyle =
|
|
13547
|
+
var slashesStyle = import_styled_components95.css`
|
|
13670
13548
|
${spacesStyle};
|
|
13671
13549
|
|
|
13672
13550
|
li {
|
|
@@ -13677,7 +13555,7 @@ var slashesStyle = import_styled_components97.css`
|
|
|
13677
13555
|
}
|
|
13678
13556
|
}
|
|
13679
13557
|
`;
|
|
13680
|
-
var breadcrumbsStyle =
|
|
13558
|
+
var breadcrumbsStyle = import_styled_components95.css`
|
|
13681
13559
|
${spacesStyle};
|
|
13682
13560
|
|
|
13683
13561
|
li {
|
|
@@ -13688,11 +13566,11 @@ var breadcrumbsStyle = import_styled_components97.css`
|
|
|
13688
13566
|
}
|
|
13689
13567
|
}
|
|
13690
13568
|
`;
|
|
13691
|
-
var unbulletedStyle =
|
|
13569
|
+
var unbulletedStyle = import_styled_components95.css`
|
|
13692
13570
|
list-style: none;
|
|
13693
13571
|
padding-left: 0;
|
|
13694
13572
|
`;
|
|
13695
|
-
var ListComponent =
|
|
13573
|
+
var ListComponent = import_styled_components95.default.ul`
|
|
13696
13574
|
list-style-position: outside;
|
|
13697
13575
|
margin: 0 0 var(--wui-space-01);
|
|
13698
13576
|
padding: 0 0 0 var(--wui-space-04);
|
|
@@ -13719,7 +13597,7 @@ var ListComponent = import_styled_components97.default.ul`
|
|
|
13719
13597
|
`;
|
|
13720
13598
|
var renderListComponent = (listItems, variant, { ...otherProps }) => {
|
|
13721
13599
|
const elementType = variant === "ordered" ? "ol" : "ul";
|
|
13722
|
-
return /* @__PURE__ */ (0,
|
|
13600
|
+
return /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
|
|
13723
13601
|
ListComponent,
|
|
13724
13602
|
{
|
|
13725
13603
|
as: elementType,
|
|
@@ -13736,7 +13614,7 @@ var renderListFromArray = (listItems, variant, otherProps) => {
|
|
|
13736
13614
|
const nextItem = listItems[i + 1];
|
|
13737
13615
|
const key = `item-${itemCount += 1}`;
|
|
13738
13616
|
if (Array.isArray(nextItem)) {
|
|
13739
|
-
return /* @__PURE__ */ (0,
|
|
13617
|
+
return /* @__PURE__ */ (0, import_jsx_runtime278.jsxs)(ListItem, { children: [
|
|
13740
13618
|
item,
|
|
13741
13619
|
renderListFromArray(nextItem, variant, otherProps)
|
|
13742
13620
|
] }, key);
|
|
@@ -13744,7 +13622,7 @@ var renderListFromArray = (listItems, variant, otherProps) => {
|
|
|
13744
13622
|
if (Array.isArray(item)) {
|
|
13745
13623
|
return null;
|
|
13746
13624
|
}
|
|
13747
|
-
return /* @__PURE__ */ (0,
|
|
13625
|
+
return /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(ListItem, { children: item }, key);
|
|
13748
13626
|
});
|
|
13749
13627
|
return renderListComponent(items, variant, otherProps);
|
|
13750
13628
|
};
|
|
@@ -13770,6 +13648,131 @@ var List = ({
|
|
|
13770
13648
|
return null;
|
|
13771
13649
|
};
|
|
13772
13650
|
List.displayName = "List";
|
|
13651
|
+
|
|
13652
|
+
// src/components/Slider/Slider.tsx
|
|
13653
|
+
var RadixSlider = __toESM(require("@radix-ui/react-slider"));
|
|
13654
|
+
var import_styled_components96 = __toESM(require("styled-components"));
|
|
13655
|
+
var import_type_guards61 = require("@wistia/type-guards");
|
|
13656
|
+
var import_jsx_runtime279 = require("react/jsx-runtime");
|
|
13657
|
+
var TRACK_SIZE = "4px";
|
|
13658
|
+
var DisabledSliderStyles = import_styled_components96.css`
|
|
13659
|
+
opacity: 0.5;
|
|
13660
|
+
|
|
13661
|
+
& * {
|
|
13662
|
+
pointer-events: none;
|
|
13663
|
+
}
|
|
13664
|
+
`;
|
|
13665
|
+
var SliderContainer = import_styled_components96.default.div`
|
|
13666
|
+
padding: 10px 0;
|
|
13667
|
+
width: 100%;
|
|
13668
|
+
${({ disabled }) => disabled ? DisabledSliderStyles : null}
|
|
13669
|
+
`;
|
|
13670
|
+
var StyledRoot2 = (0, import_styled_components96.default)(RadixSlider.Root)`
|
|
13671
|
+
position: relative;
|
|
13672
|
+
display: flex;
|
|
13673
|
+
align-items: center;
|
|
13674
|
+
user-select: none;
|
|
13675
|
+
touch-action: none;
|
|
13676
|
+
width: 100%;
|
|
13677
|
+
height: 20px;
|
|
13678
|
+
`;
|
|
13679
|
+
var StyledTrack = (0, import_styled_components96.default)(RadixSlider.Track)`
|
|
13680
|
+
background-color: var(--vhs-color-grey-400, #cccccc);
|
|
13681
|
+
position: relative;
|
|
13682
|
+
flex-grow: 1;
|
|
13683
|
+
border-radius: 9999px;
|
|
13684
|
+
height: ${TRACK_SIZE};
|
|
13685
|
+
`;
|
|
13686
|
+
var StyledRange = (0, import_styled_components96.default)(RadixSlider.Range)`
|
|
13687
|
+
position: absolute;
|
|
13688
|
+
background-color: var(--vhs-color-brand-blue-500, #0055ff);
|
|
13689
|
+
border-radius: 9999px;
|
|
13690
|
+
height: 100%;
|
|
13691
|
+
`;
|
|
13692
|
+
var StyledThumb = (0, import_styled_components96.default)(RadixSlider.Thumb)`
|
|
13693
|
+
display: block;
|
|
13694
|
+
width: 16px;
|
|
13695
|
+
height: 16px;
|
|
13696
|
+
background-color: white;
|
|
13697
|
+
border: 2px solid var(--vhs-color-brand-blue-500, #0055ff);
|
|
13698
|
+
border-radius: 50%;
|
|
13699
|
+
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
|
|
13700
|
+
cursor: grab;
|
|
13701
|
+
|
|
13702
|
+
&:hover {
|
|
13703
|
+
transform: scale(1.1);
|
|
13704
|
+
}
|
|
13705
|
+
|
|
13706
|
+
&:focus {
|
|
13707
|
+
outline: none;
|
|
13708
|
+
box-shadow: 0 0 0 2px rgba(0, 85, 255, 0.35);
|
|
13709
|
+
}
|
|
13710
|
+
`;
|
|
13711
|
+
var Slider = ({
|
|
13712
|
+
ariaLabel,
|
|
13713
|
+
ariaLabelledby,
|
|
13714
|
+
disabled = false,
|
|
13715
|
+
initialValue = [50],
|
|
13716
|
+
max = 100,
|
|
13717
|
+
min = 0,
|
|
13718
|
+
onChange,
|
|
13719
|
+
step = 1,
|
|
13720
|
+
value,
|
|
13721
|
+
"data-testid": passedDataTestId,
|
|
13722
|
+
...rest
|
|
13723
|
+
}) => {
|
|
13724
|
+
if (!((0, import_type_guards61.isNonEmptyString)(ariaLabel) || (0, import_type_guards61.isNonEmptyString)(ariaLabelledby))) {
|
|
13725
|
+
console.warn(
|
|
13726
|
+
"UI Slider: Sliders should have an accessible name. Add a label using the ariaLabel or ariaLabelledby prop."
|
|
13727
|
+
);
|
|
13728
|
+
}
|
|
13729
|
+
const dataTestId = (0, import_type_guards61.isNotNil)(passedDataTestId) ? passedDataTestId : "ui-slider";
|
|
13730
|
+
const values = value || initialValue;
|
|
13731
|
+
const handleValueChange = (newValue) => {
|
|
13732
|
+
if (onChange) {
|
|
13733
|
+
onChange(newValue);
|
|
13734
|
+
}
|
|
13735
|
+
};
|
|
13736
|
+
const renderThumbs = () => {
|
|
13737
|
+
return values.map((_, index) => /* @__PURE__ */ (0, import_jsx_runtime279.jsx)(
|
|
13738
|
+
StyledThumb,
|
|
13739
|
+
{
|
|
13740
|
+
"data-testid": `${dataTestId}-thumb-${index}`
|
|
13741
|
+
},
|
|
13742
|
+
index
|
|
13743
|
+
));
|
|
13744
|
+
};
|
|
13745
|
+
const renderRoot = () => {
|
|
13746
|
+
const rootProps = {
|
|
13747
|
+
"aria-label": ariaLabel,
|
|
13748
|
+
"aria-labelledby": ariaLabelledby,
|
|
13749
|
+
defaultValue: initialValue,
|
|
13750
|
+
disabled,
|
|
13751
|
+
max,
|
|
13752
|
+
min,
|
|
13753
|
+
onValueChange: handleValueChange,
|
|
13754
|
+
step,
|
|
13755
|
+
...value ? { value } : {}
|
|
13756
|
+
// Only add value prop if it exists
|
|
13757
|
+
};
|
|
13758
|
+
return /* @__PURE__ */ (0, import_jsx_runtime279.jsxs)(StyledRoot2, { ...rootProps, children: [
|
|
13759
|
+
/* @__PURE__ */ (0, import_jsx_runtime279.jsx)(StyledTrack, { "data-testid": `${dataTestId}-track`, children: /* @__PURE__ */ (0, import_jsx_runtime279.jsx)(StyledRange, { "data-testid": `${dataTestId}-range` }) }),
|
|
13760
|
+
renderThumbs()
|
|
13761
|
+
] });
|
|
13762
|
+
};
|
|
13763
|
+
const otherProps = { ...rest };
|
|
13764
|
+
delete otherProps.initialValue;
|
|
13765
|
+
return /* @__PURE__ */ (0, import_jsx_runtime279.jsx)(
|
|
13766
|
+
SliderContainer,
|
|
13767
|
+
{
|
|
13768
|
+
...otherProps,
|
|
13769
|
+
"data-testid": dataTestId,
|
|
13770
|
+
disabled,
|
|
13771
|
+
children: renderRoot()
|
|
13772
|
+
}
|
|
13773
|
+
);
|
|
13774
|
+
};
|
|
13775
|
+
Slider.displayName = "Slider";
|
|
13773
13776
|
// Annotate the CommonJS export names for ESM import in node:
|
|
13774
13777
|
0 && (module.exports = {
|
|
13775
13778
|
ActionButton,
|
|
@@ -13833,10 +13836,10 @@ List.displayName = "List";
|
|
|
13833
13836
|
Select,
|
|
13834
13837
|
SelectOption,
|
|
13835
13838
|
SelectOptionGroup,
|
|
13839
|
+
Slider,
|
|
13836
13840
|
Stack,
|
|
13837
13841
|
SubMenu,
|
|
13838
13842
|
Switch,
|
|
13839
|
-
Tab,
|
|
13840
13843
|
Table,
|
|
13841
13844
|
TableBody,
|
|
13842
13845
|
TableCell,
|
|
@@ -13844,6 +13847,9 @@ List.displayName = "List";
|
|
|
13844
13847
|
TableHead,
|
|
13845
13848
|
TableRow,
|
|
13846
13849
|
Tabs,
|
|
13850
|
+
TabsContent,
|
|
13851
|
+
TabsList,
|
|
13852
|
+
TabsTrigger,
|
|
13847
13853
|
Tag,
|
|
13848
13854
|
Text,
|
|
13849
13855
|
Thumbnail,
|