@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 CHANGED
@@ -1,6 +1,6 @@
1
1
 
2
2
  /*
3
- * @license @wistia/ui v0.9.7
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/TabItem.tsx
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 StyledTabItem = (0, import_styled_components86.default)(import_react_tabs3.Trigger)`
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
- var TabItem = (0, import_react67.forwardRef)(
12539
- ({ disabled = false, icon, label, "aria-label": ariaLabel, value }, forwardedRef) => {
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, import_react67.useRef)(null);
12581
+ const buttonRef = (0, import_react68.useRef)(null);
12543
12582
  const combinedRef = mergeRefs([buttonRef, forwardedRef]);
12544
- (0, import_react67.useEffect)(() => {
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, import_jsx_runtime268.jsxs)(
12570
- StyledTabItem,
12608
+ return /* @__PURE__ */ (0, import_jsx_runtime270.jsxs)(
12609
+ StyledRadixTabsTrigger,
12571
12610
  {
12611
+ ...otherProps,
12572
12612
  ref: combinedRef,
12573
- $hasLabel: (0, import_type_guards50.isNotNil)(label),
12574
- "aria-label": (0, import_type_guards50.isNotNil)(label) ? void 0 : ariaLabel,
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
- TabItem.displayName = "TabItem";
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 import_react71 = require("react");
12751
- var import_styled_components89 = __toESM(require("styled-components"));
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 import_jsx_runtime272 = require("react/jsx-runtime");
12754
- var TagLabel = import_styled_components89.default.a`
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 = import_styled_components89.default.div`
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 = import_styled_components89.default.button`
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 = import_styled_components89.default.div`
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, import_jsx_runtime272.jsxs)(import_jsx_runtime272.Fragment, { children: [
12846
- /* @__PURE__ */ (0, import_jsx_runtime272.jsx)(TagDivider, { $colorScheme: colorScheme }),
12847
- /* @__PURE__ */ (0, import_jsx_runtime272.jsxs)(
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, import_jsx_runtime272.jsx)(
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, import_jsx_runtime272.jsx)(ScreenReaderOnly, { children: onClickRemoveLabel })
12739
+ /* @__PURE__ */ (0, import_jsx_runtime271.jsx)(ScreenReaderOnly, { children: onClickRemoveLabel })
12862
12740
  ]
12863
12741
  }
12864
12742
  )
12865
12743
  ] });
12866
12744
  };
12867
- var Tag = (0, import_react71.forwardRef)(
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, import_jsx_runtime272.jsxs)(
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, import_jsx_runtime272.jsxs)(
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, import_jsx_runtime272.jsx)(
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 import_styled_components90 = __toESM(require("styled-components"));
12783
+ var import_styled_components88 = __toESM(require("styled-components"));
12906
12784
  var import_type_guards53 = require("@wistia/type-guards");
12907
- var import_jsx_runtime273 = require("react/jsx-runtime");
12908
- var StyledThumbnailBadge = import_styled_components90.default.div`
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, import_jsx_runtime273.jsxs)(StyledThumbnailBadge, { ...props, children: [
12811
+ return /* @__PURE__ */ (0, import_jsx_runtime272.jsxs)(StyledThumbnailBadge, { ...props, children: [
12934
12812
  (0, import_type_guards53.isNotNil)(icon) && icon,
12935
- /* @__PURE__ */ (0, import_jsx_runtime273.jsx)("span", { children: label })
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 import_react72 = require("react");
12942
- var import_styled_components93 = __toESM(require("styled-components"));
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 import_styled_components91 = require("styled-components");
12825
+ var import_styled_components89 = require("styled-components");
12948
12826
  var gradients = {
12949
- defaultDarkOne: import_styled_components91.css`
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: import_styled_components91.css`
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: import_styled_components91.css`
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: import_styled_components91.css`
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: import_styled_components91.css`
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: import_styled_components91.css`
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: import_styled_components91.css`
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: import_styled_components91.css`
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: import_styled_components91.css`
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: import_styled_components91.css`
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: import_styled_components91.css`
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: import_styled_components91.css`
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: import_styled_components91.css`
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: import_styled_components91.css`
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: import_styled_components91.css`
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: import_styled_components91.css`
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 import_styled_components92 = __toESM(require("styled-components"));
12956
+ var import_styled_components90 = __toESM(require("styled-components"));
13079
12957
  var import_type_guards55 = require("@wistia/type-guards");
13080
- var import_jsx_runtime274 = require("react/jsx-runtime");
13081
- var ScrubLine = import_styled_components92.default.div`
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, import_jsx_runtime274.jsxs)(
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, import_jsx_runtime274.jsx)("div", { style: storyboardStyles }),
13190
- showScrubLine ? /* @__PURE__ */ (0, import_jsx_runtime274.jsx)(
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 import_jsx_runtime275 = require("react/jsx-runtime");
13205
- var WideThumbnailImage = import_styled_components93.default.img`
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 = import_styled_components93.default.img`
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, import_jsx_runtime275.jsx)(
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, import_jsx_runtime275.jsx)(
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 = import_styled_components93.default.div`
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, import_react72.forwardRef)(
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, import_react72.useState)(0);
13276
- const [isMouseOver, setIsMouseOver] = (0, import_react72.useState)(false);
13277
- const [isStoryboardReady, setIsStoryboardReady] = (0, import_react72.useState)(false);
13278
- const storyboardElementRef = (0, import_react72.useRef)(null);
13279
- const [cursorPosition, setCursorPosition] = (0, import_react72.useState)(null);
13280
- const backgroundUrl = (0, import_react72.useMemo)(
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, import_react72.useCallback)(() => {
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, import_react72.useCallback)(
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, import_react72.useCallback)(() => {
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, import_react72.useMemo)(() => {
13191
+ const shouldRenderStoryboard = (0, import_react70.useMemo)(() => {
13314
13192
  return Boolean(isScrubbable && isMouseOver && isStoryboardReady);
13315
13193
  }, [isScrubbable, isMouseOver, isStoryboardReady]);
13316
- const renderStoryboard = (0, import_react72.useCallback)(() => {
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, import_jsx_runtime275.jsx)(
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, import_jsx_runtime275.jsx)(
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, import_jsx_runtime275.jsxs)(
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 import_react73 = __toESM(require("react"));
13384
- var import_styled_components94 = __toESM(require("styled-components"));
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 import_jsx_runtime276 = (
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 = import_styled_components94.default.div`
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 = import_react73.default.Children.toArray(children);
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 import_react73.default.cloneElement(child, {
13344
+ return import_react71.default.cloneElement(child, {
13467
13345
  ...child.props,
13468
13346
  children: void 0
13469
13347
  });
13470
13348
  }) : [
13471
- /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(
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, import_jsx_runtime276.jsx)(
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 import_styled_components95 = __toESM(require("styled-components"));
13370
+ var import_styled_components93 = __toESM(require("styled-components"));
13493
13371
  var import_type_guards58 = require("@wistia/type-guards");
13494
- var import_jsx_runtime277 = require("react/jsx-runtime");
13372
+ var import_jsx_runtime276 = require("react/jsx-runtime");
13495
13373
  var renderBrandmark = (brandmarkColor, iconOnly) => {
13496
13374
  if (iconOnly) {
13497
- return /* @__PURE__ */ (0, import_jsx_runtime277.jsx)(
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, import_jsx_runtime277.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" })
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, import_jsx_runtime277.jsx)(
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, import_jsx_runtime277.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" })
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, import_jsx_runtime277.jsx)(
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, import_jsx_runtime277.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" })
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 = import_styled_components95.default.svg`
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 import_styled_components95.css`
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 import_styled_components95.css`
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, import_jsx_runtime277.jsxs)(
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, import_jsx_runtime277.jsx)("title", { children: title }),
13606
- (0, import_type_guards58.isNotNil)(description) ? /* @__PURE__ */ (0, import_jsx_runtime277.jsx)("desc", { children: description }) : null,
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, import_jsx_runtime277.jsx)("a", { href, children: Logo }) : Logo;
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 import_styled_components97 = __toESM(require("styled-components"));
13496
+ var import_styled_components95 = __toESM(require("styled-components"));
13619
13497
 
13620
13498
  // src/components/List/ListItem.tsx
13621
- var import_styled_components96 = __toESM(require("styled-components"));
13499
+ var import_styled_components94 = __toESM(require("styled-components"));
13622
13500
  var import_type_guards59 = require("@wistia/type-guards");
13623
- var import_jsx_runtime278 = require("react/jsx-runtime");
13624
- var ListItemComponent = import_styled_components96.default.li`
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, import_jsx_runtime278.jsx)(ListItemComponent, { children });
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 import_jsx_runtime279 = require("react/jsx-runtime");
13637
- var spacesStyle = import_styled_components97.css`
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 = import_styled_components97.css`
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 = import_styled_components97.css`
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 = import_styled_components97.css`
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 = import_styled_components97.css`
13569
+ var unbulletedStyle = import_styled_components95.css`
13692
13570
  list-style: none;
13693
13571
  padding-left: 0;
13694
13572
  `;
13695
- var ListComponent = import_styled_components97.default.ul`
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, import_jsx_runtime279.jsx)(
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, import_jsx_runtime279.jsxs)(ListItem, { children: [
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, import_jsx_runtime279.jsx)(ListItem, { children: item }, key);
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,