@wistia/ui 0.26.5-beta.dc708dcd.1bbd3a2 → 0.26.6-beta.07d5e63e.7bb2fc5

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.js CHANGED
@@ -1,6 +1,6 @@
1
1
 
2
2
  /*
3
- * @license @wistia/ui v0.26.5-beta.dc708dcd.1bbd3a2
3
+ * @license @wistia/ui v0.26.6-beta.07d5e63e.7bb2fc5
4
4
  *
5
5
  * Copyright (c) 2024-2026, Wistia, Inc. and its affiliates.
6
6
  *
@@ -10,7 +10,7 @@
10
10
  import { Tooltip as Tooltip$1 } from "@base-ui/react/tooltip";
11
11
  import { Children, cloneElement, createContext, forwardRef, isValidElement, useCallback, useContext, useEffect, useId, useImperativeHandle, useLayoutEffect, useMemo, useRef, useState, useTransition } from "react";
12
12
  import { createGlobalStyle, css, keyframes, styled } from "styled-components";
13
- import { isArray, isBoolean, isEmptyString, isFunction, isNil, isNonEmptyArray, isNonEmptyString, isNotNil, isNotUndefined, isNumber, isRecord, isString, isUndefined } from "@wistia/type-guards";
13
+ import { isArray, isBoolean, isDate, isEmptyString, isFunction, isNil, isNonEmptyArray, isNonEmptyString, isNotNil, isNotUndefined, isNumber, isRecord, isString, isUndefined } from "@wistia/type-guards";
14
14
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
15
15
  import { Toaster, toast } from "sonner";
16
16
  import { isValid } from "date-fns/isValid";
@@ -519,13 +519,6 @@ const buildTimeDuration = (numberOfMilliseconds) => {
519
519
  };
520
520
  };
521
521
  //#endregion
522
- //#region src/helpers/dateTime/isDate.ts
523
- /**
524
- * @param {*} date - possible date value - unknown type
525
- * @returns {boolean} - whether it is a date object
526
- */
527
- const isDate = (date) => date instanceof Date;
528
- //#endregion
529
522
  //#region src/helpers/dateTime/isInvalidDate.ts
530
523
  /**
531
524
  * @param {*} date - a Date object - could be unknown though
@@ -5596,7 +5589,7 @@ const StyledLink = styled.a`
5596
5589
  * This means in addition to its own props, `Link` can use props from `react-router`'s `Link` component. View their documentation [here](https://reactrouter.com/en/main/components/link).
5597
5590
  * The one prop we ignore from react-router is `to`. We use `href` instead and map it under the hood.
5598
5591
  */
5599
- const Link = forwardRef(({ beforeAction, children, type, disabled = false, colorScheme = "inherit", underline = "none", inheritColor = false, leftIcon, rightIcon, "aria-disabled": ariaDisabled, role, ...props }, ref) => {
5592
+ const Link = ({ beforeAction, children, type, disabled = false, colorScheme = "inherit", underline = "none", inheritColor = false, leftIcon, rightIcon, "aria-disabled": ariaDisabled, role, ref, ...props }) => {
5600
5593
  const inRouterContext = useInRouterContext();
5601
5594
  const to = generateHref(props.href, type, disabled);
5602
5595
  const shouldUseReactRouterLink = inRouterContext && type !== "external" && !to?.startsWith("http");
@@ -5659,8 +5652,7 @@ const Link = forwardRef(({ beforeAction, children, type, disabled = false, color
5659
5652
  });
5660
5653
  }
5661
5654
  return null;
5662
- });
5663
- Link.displayName = "Link_UI";
5655
+ };
5664
5656
  //#endregion
5665
5657
  //#region src/components/Button/Button.tsx
5666
5658
  const isLink = (props) => isNotUndefined(props.href);
@@ -5713,7 +5705,7 @@ const ButtonContent = ({ isLoading = false, leftIcon, rightIcon, children, fullW
5713
5705
  * action, or performing a delete operation. It replaces the HTML `<button>` element,
5714
5706
  * unless an `href` attribute is passed, in which it will render an `<a>` element.
5715
5707
  */
5716
- const Button = forwardRef(({ children, forceState, className, leftIcon, rightIcon, colorScheme = "inherit", disabled = false, isLoading = false, unstyled = false, onClick, fullWidth = false, size = "md", variant = "solid", ...props }, ref) => {
5708
+ const Button = ({ children, forceState, className, leftIcon, rightIcon, colorScheme = "inherit", disabled = false, isLoading = false, unstyled = false, onClick, fullWidth = false, size = "md", variant = "solid", ref, ...props }) => {
5717
5709
  const responsiveFullWidth = useResponsiveProp(fullWidth);
5718
5710
  const responsiveSize = useResponsiveProp(size);
5719
5711
  const isAriaDisabled = () => isLoading || disabled;
@@ -5763,8 +5755,7 @@ const Button = forwardRef(({ children, forceState, className, leftIcon, rightIco
5763
5755
  children
5764
5756
  })
5765
5757
  });
5766
- });
5767
- Button.displayName = "Button_UI";
5758
+ };
5768
5759
  //#endregion
5769
5760
  //#region src/components/ActionButton/ActionButton.tsx
5770
5761
  const StyledActionButton = styled(Button)`
@@ -5876,7 +5867,7 @@ const StyledLabel$3 = styled.span`
5876
5867
  /**
5877
5868
  * Action Button component is used as one of a group of main actions on the page. It composes [Button](/components/Button).
5878
5869
  */
5879
- const ActionButton = forwardRef(({ icon, colorScheme = "standard", disabled = false, forceState, hoverColorScheme, variant = "default", children, ...props }, ref) => {
5870
+ const ActionButton = ({ icon, colorScheme = "standard", disabled = false, forceState, hoverColorScheme, variant = "default", children, ref, ...props }) => {
5880
5871
  const resolvedHoverColorScheme = hoverColorScheme ?? (variant === "gated" ? "purple" : "inherit");
5881
5872
  const secondaryIconMap = {
5882
5873
  default: "arrow-right",
@@ -5907,8 +5898,7 @@ const ActionButton = forwardRef(({ icon, colorScheme = "standard", disabled = fa
5907
5898
  })
5908
5899
  ]
5909
5900
  });
5910
- });
5911
- ActionButton.displayName = "ActionButton_UI";
5901
+ };
5912
5902
  //#endregion
5913
5903
  //#region src/components/Avatar/formatNameForDisplay.tsx
5914
5904
  const containsEmojiCharacter = (char) => {
@@ -6139,7 +6129,7 @@ const StyledBadge = styled.div`
6139
6129
  /**
6140
6130
  * A `Badge` is a compact label, with optional icon, to convey status or context.
6141
6131
  */
6142
- const Badge = forwardRef(({ colorScheme = "inherit", label, icon, variant = "default", ...props }, ref) => {
6132
+ const Badge = ({ colorScheme = "inherit", label, icon, variant = "default", ref, ...props }) => {
6143
6133
  const hasIcon = isNotNil(icon);
6144
6134
  return /* @__PURE__ */ jsxs(StyledBadge, {
6145
6135
  ref,
@@ -6149,12 +6139,11 @@ const Badge = forwardRef(({ colorScheme = "inherit", label, icon, variant = "def
6149
6139
  $variant: variant,
6150
6140
  children: [hasIcon ? icon : null, isNotNil(label) ? /* @__PURE__ */ jsx("span", { children: label }) : null]
6151
6141
  });
6152
- });
6153
- Badge.displayName = "Badge_UI";
6142
+ };
6154
6143
  //#endregion
6155
6144
  //#region src/private/helpers/makePolymorphic/makePolymorphic.tsx
6156
6145
  /**
6157
- * makePolymorphic takes a component (typically a forwardRef component) and returns a new version
6146
+ * makePolymorphic takes a component and returns a new version
6158
6147
  * that supports polymorphism via a `renderAs` prop. The returned component's types automatically
6159
6148
  * merge the intrinsic props of the rendered element with the custom props of the original
6160
6149
  * component, while including support for children and refs.
@@ -6236,7 +6225,7 @@ const StyledBoxComponent = styled.div`
6236
6225
  order: ${({ $order }) => isNotNil($order) ? $order : null};
6237
6226
  `;
6238
6227
  const DEFAULT_ELEMENT$4 = "div";
6239
- const BoxComponent = forwardRef(({ alignContent = "stretch", alignItems = "flex-start", alignSelf, basis, children, direction = "row", fill = false, fillViewport = false, gap, grow, height, inline = false, justifyContent = "flex-start", order, renderAs, shrink, width, wrapItems = false, flexMode, ...props }, ref) => {
6228
+ const BoxComponent = ({ ref, alignContent = "stretch", alignItems = "flex-start", alignSelf, basis, children, direction = "row", fill = false, fillViewport = false, gap, grow, height, inline = false, justifyContent = "flex-start", order, renderAs, shrink, width, wrapItems = false, flexMode, ...props }) => {
6240
6229
  const responsiveAlignContent = useResponsiveProp(alignContent);
6241
6230
  const responsiveAlignItems = useResponsiveProp(alignItems);
6242
6231
  const responsiveAlignSelf = useResponsiveProp(alignSelf);
@@ -6283,8 +6272,7 @@ const BoxComponent = forwardRef(({ alignContent = "stretch", alignItems = "flex-
6283
6272
  ...props,
6284
6273
  children
6285
6274
  });
6286
- });
6287
- BoxComponent.displayName = "Box_UI";
6275
+ };
6288
6276
  /**
6289
6277
  * Box is a layout container using [CSS Flexbox](https://developer.mozilla.org/en-US/docs/Learn/CSS/CSS_layout/Flexbox).
6290
6278
  */
@@ -6403,7 +6391,7 @@ const variantElementMap$1 = {
6403
6391
  heading5: "h5",
6404
6392
  heading6: "h6"
6405
6393
  };
6406
- const HeadingComponent = forwardRef(({ align = "left", children, colorScheme = "inherit", disabled = false, inline = false, maxChars, preventUserSelect = false, prominence = "primary", maxLines, variant = "heading1", renderAs, ...props }, ref) => {
6394
+ const HeadingComponent = ({ ref, align = "left", children, colorScheme = "inherit", disabled = false, inline = false, maxChars, preventUserSelect = false, prominence = "primary", maxLines, variant = "heading1", renderAs, ...props }) => {
6407
6395
  const processedChildren = applyMaxCharsToChildren(children, maxChars);
6408
6396
  return /* @__PURE__ */ jsx(StyledHeading$1, {
6409
6397
  ref,
@@ -6419,8 +6407,7 @@ const HeadingComponent = forwardRef(({ align = "left", children, colorScheme = "
6419
6407
  ...props,
6420
6408
  children: processedChildren
6421
6409
  });
6422
- });
6423
- HeadingComponent.displayName = "Heading_UI";
6410
+ };
6424
6411
  /**
6425
6412
  * Displaying heading text, both visually and semantically
6426
6413
  */
@@ -6594,7 +6581,7 @@ const StyledText = styled.div`
6594
6581
  }
6595
6582
  `}
6596
6583
  `;
6597
- const TextComponent = forwardRef(({ align = "left", children, colorScheme = "inherit", disabled = false, inline = false, maxChars, preventUserSelect = false, prominence = "primary", maxLines, variant = "body2", renderAs, ...props }, ref) => {
6584
+ const TextComponent = ({ ref, align = "left", children, colorScheme = "inherit", disabled = false, inline = false, maxChars, preventUserSelect = false, prominence = "primary", maxLines, variant = "body2", renderAs, ...props }) => {
6598
6585
  const processedChildren = applyMaxCharsToChildren(children, maxChars);
6599
6586
  return /* @__PURE__ */ jsx(StyledText, {
6600
6587
  ref,
@@ -6610,8 +6597,7 @@ const TextComponent = forwardRef(({ align = "left", children, colorScheme = "inh
6610
6597
  ...props,
6611
6598
  children: processedChildren
6612
6599
  });
6613
- });
6614
- TextComponent.displayName = "Text_UI";
6600
+ };
6615
6601
  /**
6616
6602
  * Used for rending paragraphs and inline text.
6617
6603
  */
@@ -6696,7 +6682,7 @@ const StyledButton$1 = styled(Button)`
6696
6682
  * IconButton behaves like a [Button](/components/Button),
6697
6683
  * but only accepts an [Icon](/components/Icon) as a child.
6698
6684
  */
6699
- const IconButton = forwardRef(({ children, label, size = "md", ...props }, ref) => {
6685
+ const IconButton = ({ children, label, size = "md", ref, ...props }) => {
6700
6686
  const responsiveSize = useResponsiveProp(size);
6701
6687
  return /* @__PURE__ */ jsx(StyledButton$1, {
6702
6688
  ...props,
@@ -6706,8 +6692,7 @@ const IconButton = forwardRef(({ children, label, size = "md", ...props }, ref)
6706
6692
  size: responsiveSize,
6707
6693
  children: cloneElement(Children.only(children), { size: responsiveSize })
6708
6694
  });
6709
- });
6710
- IconButton.displayName = "IconButton_UI";
6695
+ };
6711
6696
  //#endregion
6712
6697
  //#region src/components/Banner/Banner.tsx
6713
6698
  const StyledBanner = styled.div`
@@ -6933,15 +6918,14 @@ const StyledCenter = styled.div`
6933
6918
  * Center component provides various ways to center content horizontally within a container.
6934
6919
  * It supports max-width constraints, text alignment, gutters, and intrinsic content centering.
6935
6920
  */
6936
- const Center = forwardRef(({ maxWidth = "100%", gutterWidth = "space-00", intrinsic = false, children, ...props }, ref) => /* @__PURE__ */ jsx(StyledCenter, {
6921
+ const Center = ({ maxWidth = "100%", gutterWidth = "space-00", intrinsic = false, children, ref, ...props }) => /* @__PURE__ */ jsx(StyledCenter, {
6937
6922
  ref,
6938
6923
  $gutterWidth: gutterWidth,
6939
6924
  $intrinsic: intrinsic,
6940
6925
  $maxWidth: maxWidth,
6941
6926
  ...props,
6942
6927
  children
6943
- }));
6944
- Center.displayName = "Center_UI";
6928
+ });
6945
6929
  //#endregion
6946
6930
  //#region src/components/ScreenReaderOnly/ScreenReaderOnly.tsx
6947
6931
  const VisuallyHidden = styled.div({ ...visuallyHiddenStyle });
@@ -7038,7 +7022,7 @@ const StyledStack = styled.div`
7038
7022
  ${({ $paddingX }) => $paddingX && `padding-left: var(--wui-${$paddingX}); padding-right: var(--wui-${$paddingX});`}
7039
7023
  ${({ $paddingY }) => $paddingY && `padding-top: var(--wui-${$paddingY}); padding-bottom: var(--wui-${$paddingY});`}
7040
7024
  `;
7041
- const StackComponent = forwardRef(({ renderAs, direction = "vertical", gap = "space-02", alignItems = "stretch", padding, ...props }, ref) => {
7025
+ const StackComponent = ({ ref, renderAs, direction = "vertical", gap = "space-02", alignItems = "stretch", padding, ...props }) => {
7042
7026
  const responsiveGap = useResponsiveProp(gap);
7043
7027
  const responsiveDirection = useResponsiveProp(direction);
7044
7028
  return /* @__PURE__ */ jsx(StyledStack, {
@@ -7051,8 +7035,7 @@ const StackComponent = forwardRef(({ renderAs, direction = "vertical", gap = "sp
7051
7035
  as: renderAs ?? DEFAULT_ELEMENT$1,
7052
7036
  ...props
7053
7037
  });
7054
- });
7055
- StackComponent.displayName = "Stack_UI";
7038
+ };
7056
7039
  /**
7057
7040
  * Used to layout its children in a vertical or horizontal stack. The gap between each item in the stack can be customized.
7058
7041
  * This allows for layouting children in a consistent way without needing to manually add margins or padding.
@@ -7128,7 +7111,7 @@ const FormContext = createContext({
7128
7111
  * For creating forms. It provides a context for the form fields to access the form state and validation.
7129
7112
  * It also provides a way to handle form submission and validation. It is built around [React 19's form APIs](https://react.dev/reference/react-dom/components/form).
7130
7113
  */
7131
- const Form = forwardRef(({ children, action, values = {}, labelPosition = "block", validate, fullWidth = false, ...props }, forwardedRef) => {
7114
+ const Form = ({ children, action, values = {}, labelPosition = "block", validate, fullWidth = false, ref: forwardedRef, ...props }) => {
7132
7115
  const [errors, setErrors] = useState({});
7133
7116
  const [hasSubmitted, setHasSubmitted] = useState(false);
7134
7117
  const innerRef = useRef(null);
@@ -7192,7 +7175,7 @@ const Form = forwardRef(({ children, action, values = {}, labelPosition = "block
7192
7175
  children
7193
7176
  })
7194
7177
  });
7195
- });
7178
+ };
7196
7179
  //#endregion
7197
7180
  //#region src/components/FormGroup/CheckboxGroup.tsx
7198
7181
  const CheckboxGroupContext = createContext(null);
@@ -7326,7 +7309,7 @@ const StyledHiddenCheckboxInput = styled.input`
7326
7309
  ${visuallyHiddenStyle}
7327
7310
  position: relative;
7328
7311
  `;
7329
- const Checkbox = forwardRef(({ checked, disabled = false, id, label, description, name, onChange, size = "md", value, required = false, hideLabel = false, ...props }, ref) => {
7312
+ const Checkbox = ({ checked, disabled = false, id, label, description, name, onChange, size = "md", value, required = false, hideLabel = false, ref, ...props }) => {
7330
7313
  const generatedId = useId();
7331
7314
  const computedId = isNonEmptyString(id) ? id : `wistia-ui-checkbox-${generatedId}`;
7332
7315
  const checkboxGroupContext = useCheckboxGroup();
@@ -7364,8 +7347,7 @@ const Checkbox = forwardRef(({ checked, disabled = false, id, label, description
7364
7347
  label
7365
7348
  })]
7366
7349
  });
7367
- });
7368
- Checkbox.displayName = "Checkbox_UI";
7350
+ };
7369
7351
  //#endregion
7370
7352
  //#region src/components/ClickRegion/ClickRegion.tsx
7371
7353
  const isClickableElement = (element) => {
@@ -8507,14 +8489,13 @@ const DefaultTriggerContent = () => {
8507
8489
  * it renders a swatch and hex label for the current color; pass custom children
8508
8490
  * to replace that content.
8509
8491
  */
8510
- const ColorPickerTrigger = forwardRef(({ children, ...props }, forwardedRef) => {
8492
+ const ColorPickerTrigger = ({ children, ref, ...props }) => {
8511
8493
  return /* @__PURE__ */ jsx(StyledPopoverTrigger, {
8512
- ref: forwardedRef,
8494
+ ref,
8513
8495
  ...props,
8514
8496
  children: children ?? /* @__PURE__ */ jsx(DefaultTriggerContent, {})
8515
8497
  });
8516
- });
8517
- ColorPickerTrigger.displayName = "ColorPickerTrigger_UI";
8498
+ };
8518
8499
  //#endregion
8519
8500
  //#region src/components/ColorPicker/ContrastIndicator.tsx
8520
8501
  const Container$3 = styled.div`
@@ -8630,7 +8611,7 @@ const StyledSwitchThumb = styled.div`
8630
8611
  const StyledHiddenSwitchInput = styled.input`
8631
8612
  ${visuallyHiddenStyle}
8632
8613
  `;
8633
- const Switch = forwardRef(({ align = "left", checked, disabled = false, id, label, description, name, onChange, size = "md", value, required = false, hideLabel = false, ...props }, ref) => {
8614
+ const Switch = ({ align = "left", checked, disabled = false, id, label, description, name, onChange, size = "md", value, required = false, hideLabel = false, ref, ...props }) => {
8634
8615
  const generatedId = useId();
8635
8616
  const computedId = isNonEmptyString(id) ? id : `wistia-ui-switch-${generatedId}`;
8636
8617
  return /* @__PURE__ */ jsxs(StyledSwitchWrapper, {
@@ -8662,8 +8643,7 @@ const Switch = forwardRef(({ align = "left", checked, disabled = false, id, labe
8662
8643
  label
8663
8644
  })]
8664
8645
  });
8665
- });
8666
- Switch.displayName = "Switch_UI";
8646
+ };
8667
8647
  //#endregion
8668
8648
  //#region src/components/ColorPicker/ContrastEnforcerSwitch.tsx
8669
8649
  /**
@@ -8909,7 +8889,7 @@ const StyledInputContainer = styled.div`
8909
8889
  /**
8910
8890
  * Capture user input with a text field. Should be used within a [Form](/components/Form) and [FormField](/components/FormField).
8911
8891
  */
8912
- const Input = forwardRef(({ fullWidth = true, fullHeight = false, monospace = false, type = "text", autoSelect = false, leftIcon, rightIcon, ...props }, externalRef) => {
8892
+ const Input = ({ fullWidth = true, fullHeight = false, monospace = false, type = "text", autoSelect = false, leftIcon, rightIcon, ref: externalRef, ...props }) => {
8913
8893
  const internalRef = useRef(null);
8914
8894
  const ref = isNotNil(externalRef) && isRecord(externalRef) && "current" in externalRef ? externalRef : internalRef;
8915
8895
  let leftIconToDisplay = leftIcon;
@@ -8950,8 +8930,7 @@ const Input = forwardRef(({ fullWidth = true, fullHeight = false, monospace = fa
8950
8930
  rightIconToDisplay ?? null
8951
8931
  ]
8952
8932
  });
8953
- });
8954
- Input.displayName = "Input_UI";
8933
+ };
8955
8934
  //#endregion
8956
8935
  //#region src/components/ColorPicker/HexColorInput.tsx
8957
8936
  const SIX_DIGIT_HEX_CODE_LENGTH = 7;
@@ -9598,7 +9577,7 @@ const RemoveButton = ({ onClickRemove, onClickRemoveLabel, colorScheme }) => {
9598
9577
  /**
9599
9578
  * A `Tag` is an optionally linked label, with an optional action button, to categorize content.
9600
9579
  */
9601
- const Tag = forwardRef(({ onClickRemove, colorScheme = "inherit", href, icon, label, onClickRemoveLabel, ...props }, ref) => {
9580
+ const Tag = ({ onClickRemove, colorScheme = "inherit", href, icon, label, onClickRemoveLabel, ref, ...props }) => {
9602
9581
  const hasIcon = isNotNil(icon);
9603
9582
  const labelProps = isNotNil(href) && isNonEmptyString(href) ? {
9604
9583
  href,
@@ -9618,8 +9597,7 @@ const Tag = forwardRef(({ onClickRemove, colorScheme = "inherit", href, icon, la
9618
9597
  onClickRemoveLabel
9619
9598
  })]
9620
9599
  });
9621
- });
9622
- Tag.displayName = "Tag_UI";
9600
+ };
9623
9601
  //#endregion
9624
9602
  //#region src/private/helpers/getTypographicStyles/getTypographicStyles.ts
9625
9603
  const typographicVariantStyleMap = {
@@ -9955,7 +9933,7 @@ const MenuPopup = styled(Menu$1.Popup)`
9955
9933
  /**
9956
9934
  * Displays a menu to the users with a set of actions.
9957
9935
  */
9958
- const Menu = forwardRef(({ align = "start", children, disabled = false, compact = false, trigger, label, isOpen, side = "bottom", triggerProps = {}, onOpenChange, ...props }, ref) => {
9936
+ const Menu = ({ align = "start", children, disabled = false, compact = false, trigger, label, isOpen, side = "bottom", triggerProps = {}, onOpenChange, ref, ...props }) => {
9959
9937
  const contextValue = useMemo(() => ({ compact }), [compact]);
9960
9938
  const handleOpenChange = useCallback((nextOpen, eventDetails) => {
9961
9939
  if (nextOpen !== isOpen) {
@@ -9997,8 +9975,7 @@ const Menu = forwardRef(({ align = "start", children, disabled = false, compact
9997
9975
  }) })]
9998
9976
  })
9999
9977
  });
10000
- });
10001
- Menu.displayName = "Menu_UI";
9978
+ };
10002
9979
  //#endregion
10003
9980
  //#region src/components/ContextMenu/ContextMenu.tsx
10004
9981
  const ContextMenuPopup = styled(Menu$1.Popup)`
@@ -10725,7 +10702,7 @@ const StyledEditableTextDisplay = styled.div`
10725
10702
  }
10726
10703
  }
10727
10704
  `;
10728
- const EditableTextDisplayComponent = forwardRef(({ asTrigger, renderAs, ...props }, ref) => {
10705
+ const EditableTextDisplayComponent = ({ ref, asTrigger, renderAs, ...props }) => {
10729
10706
  const context = useContext(EditableTextContext);
10730
10707
  if (!context) throw new Error("EditableTextDisplay must be used within an EditableTextRoot context");
10731
10708
  const { value, typographicVariant, setIsEditing, placeholder, maxLines, isEditing, minLines } = context;
@@ -10767,8 +10744,7 @@ const EditableTextDisplayComponent = forwardRef(({ asTrigger, renderAs, ...props
10767
10744
  ...props,
10768
10745
  children: displayText
10769
10746
  });
10770
- });
10771
- EditableTextDisplayComponent.displayName = "EditableTextDisplay_UI";
10747
+ };
10772
10748
  const EditableTextDisplay = makePolymorphic(EditableTextDisplayComponent);
10773
10749
  //#endregion
10774
10750
  //#region src/components/EditableText/EditableTextInput.tsx
@@ -11464,7 +11440,7 @@ const StyledGrid = styled.div`
11464
11440
  * A flexible grid component that can either create a fixed number of columns
11465
11441
  * or an auto-filling grid based on the minimum child width.
11466
11442
  */
11467
- const GridComponent = forwardRef(({ children, columns = "auto", minChildWidth = "auto", gap = "space-02", expandItems = false, renderAs, ...props }, ref) => {
11443
+ const GridComponent = ({ ref, children, columns = "auto", minChildWidth = "auto", gap = "space-02", expandItems = false, renderAs, ...props }) => {
11468
11444
  const responsiveGap = useResponsiveProp(gap);
11469
11445
  const { column, row } = isRecord(responsiveGap) ? responsiveGap : {
11470
11446
  column: responsiveGap,
@@ -11481,8 +11457,7 @@ const GridComponent = forwardRef(({ children, columns = "auto", minChildWidth =
11481
11457
  ...props,
11482
11458
  children
11483
11459
  });
11484
- });
11485
- GridComponent.displayName = "Grid_UI";
11460
+ };
11486
11461
  const Grid = makePolymorphic(GridComponent);
11487
11462
  //#endregion
11488
11463
  //#region src/components/PreviewCard/PreviewCard.tsx
@@ -11582,7 +11557,7 @@ const COPY_SUCCESS_DURATION = 2e3;
11582
11557
  /**
11583
11558
  * Provides a readonly input that copies the text to the clipboard when clicked.
11584
11559
  */
11585
- const InputClickToCopy = forwardRef(({ value, onCopy, disabled = false, ...props }, ref) => {
11560
+ const InputClickToCopy = ({ value, onCopy, disabled = false, ref, ...props }) => {
11586
11561
  const [isCopied, setIsCopied] = useState(false);
11587
11562
  useEffect(() => {
11588
11563
  if (isCopied) {
@@ -11621,8 +11596,7 @@ const InputClickToCopy = forwardRef(({ value, onCopy, disabled = false, ...props
11621
11596
  }),
11622
11597
  value
11623
11598
  });
11624
- });
11625
- InputClickToCopy.displayName = "InputClickToCopy_UI";
11599
+ };
11626
11600
  //#endregion
11627
11601
  //#region src/components/InputDuration/constants.ts
11628
11602
  const SECONDS_PER_MINUTE = 60;
@@ -12291,7 +12265,7 @@ const getInputWidth = (inputValue) => {
12291
12265
  /**
12292
12266
  * InputDuration lets users edit a duration value using a keyboard-friendly time input.
12293
12267
  */
12294
- const InputDuration = forwardRef(({ decimalUnitLength = 2, disabled = false, fullWidth = false, maxSeconds = MAX_TIME, minSeconds = 0, onChangeValueInSeconds, valueInSeconds, onFocus, style, ...props }, externalRef) => {
12268
+ const InputDuration = ({ decimalUnitLength = 2, disabled = false, fullWidth = false, maxSeconds = MAX_TIME, minSeconds = 0, onChangeValueInSeconds, valueInSeconds, onFocus, style, ref: externalRef, ...props }) => {
12295
12269
  const { inputRef, inputValue, onFocus: onInputFocus, onInputSelect, onKeyDown, onKeyUp } = useInputDuration({
12296
12270
  decimalUnitLength,
12297
12271
  maxSeconds,
@@ -12326,8 +12300,7 @@ const InputDuration = forwardRef(({ decimalUnitLength = 2, disabled = false, ful
12326
12300
  type: "text",
12327
12301
  value: inputValue
12328
12302
  });
12329
- });
12330
- InputDuration.displayName = "InputDuration_UI";
12303
+ };
12331
12304
  //#endregion
12332
12305
  //#region src/components/InputPassword/InputPassword.tsx
12333
12306
  const StyledIconButton = styled(IconButton)`
@@ -12341,7 +12314,7 @@ const StyledIconButton = styled(IconButton)`
12341
12314
  /**
12342
12315
  * A password input component with a toggle button to show or hide the password text.
12343
12316
  */
12344
- const InputPassword = forwardRef(({ onVisibilityToggle, disabled = false, ...props }, ref) => {
12317
+ const InputPassword = ({ onVisibilityToggle, disabled = false, ref, ...props }) => {
12345
12318
  const [isVisible, setIsVisible] = useState(false);
12346
12319
  const handleClick = () => {
12347
12320
  const newVisibility = !isVisible;
@@ -12362,8 +12335,7 @@ const InputPassword = forwardRef(({ onVisibilityToggle, disabled = false, ...pro
12362
12335
  }),
12363
12336
  type: isVisible ? "text" : "password"
12364
12337
  });
12365
- });
12366
- InputPassword.displayName = "InputPassword_UI";
12338
+ };
12367
12339
  //#endregion
12368
12340
  //#region src/components/KeyboardShortcut/isKeyboardKey.ts
12369
12341
  const KEYBOARD_KEY_MAP = {
@@ -12875,7 +12847,7 @@ const StyledBadgeContainer = styled.div`
12875
12847
  font-size: var(--wui-typography-label-4-size);
12876
12848
  color: var(--wui-color-text-secondary);
12877
12849
  `;
12878
- const MenuItemButton = forwardRef(({ children, appearance, command, icon, ...props }, ref) => {
12850
+ const MenuItemButton = ({ children, appearance, command, icon, ref, ...props }) => {
12879
12851
  let { colorScheme, badge } = props;
12880
12852
  if (appearance === "dangerous") {
12881
12853
  if (isNotUndefined(colorScheme)) console.warn("colorScheme prop is ignored when appearance is dangerous");
@@ -12903,8 +12875,7 @@ const MenuItemButton = forwardRef(({ children, appearance, command, icon, ...pro
12903
12875
  isNotNil(props.rightIcon) ? /* @__PURE__ */ jsx(StyledRightIconContainer, { children: props.rightIcon }) : null
12904
12876
  ]
12905
12877
  });
12906
- });
12907
- MenuItemButton.displayName = "MenuItemButton_UI";
12878
+ };
12908
12879
  //#endregion
12909
12880
  //#region src/components/Menu/MenuItemLabel.tsx
12910
12881
  const StyledMenuItemLabel = styled.span`
@@ -12983,7 +12954,7 @@ const SubMenu = ({ label, description, children, onOpenChange = () => null, ...p
12983
12954
  SubMenu.displayName = "SubMenu_UI";
12984
12955
  //#endregion
12985
12956
  //#region src/components/Menu/MenuItem.tsx
12986
- const MenuItem = forwardRef(({ onSelect = () => null, closeOnClick = true, ...props }, ref) => {
12957
+ const MenuItem = ({ onSelect = () => null, closeOnClick = true, ref, ...props }) => {
12987
12958
  return /* @__PURE__ */ jsx(Menu$1.Item, {
12988
12959
  closeOnClick,
12989
12960
  nativeButton: isNil(props.href),
@@ -12994,8 +12965,7 @@ const MenuItem = forwardRef(({ onSelect = () => null, closeOnClick = true, ...pr
12994
12965
  leftIcon: props.icon
12995
12966
  })
12996
12967
  });
12997
- });
12998
- MenuItem.displayName = "MenuItem_UI";
12968
+ };
12999
12969
  //#endregion
13000
12970
  //#region src/components/Menu/MenuRadioGroup.tsx
13001
12971
  const MenuRadioGroup = ({ children, ...props }) => {
@@ -13075,7 +13045,7 @@ CheckboxMenuItem.displayName = "CheckboxMenuItem_UI";
13075
13045
  //#endregion
13076
13046
  //#region src/components/Menu/FilterMenu.tsx
13077
13047
  const FilterMenuItem = CheckboxMenuItem;
13078
- const FilterMenu = forwardRef(({ value, onChange, searchValue, onSearchValueChange, children, ...props }, ref) => {
13048
+ const FilterMenu = ({ value, onChange, searchValue, onSearchValueChange, children, ref, ...props }) => {
13079
13049
  return /* @__PURE__ */ jsxs(Menu, {
13080
13050
  ...props,
13081
13051
  ref,
@@ -13146,8 +13116,7 @@ const FilterMenu = forwardRef(({ value, onChange, searchValue, onSearchValueChan
13146
13116
  })
13147
13117
  ]
13148
13118
  });
13149
- });
13150
- FilterMenu.displayName = "FilterMenu_UI";
13119
+ };
13151
13120
  //#endregion
13152
13121
  //#region src/components/Meter/Meter.tsx
13153
13122
  const MeterWrapper = styled.div`
@@ -13250,11 +13219,12 @@ const Meter = ({ segments, label, labelMeta, description, hideKey = false, max =
13250
13219
  const segmentsWithOffsets = segments.reduce((acc, segment) => {
13251
13220
  const offset = acc.reduce((sum, prev) => sum + prev.widthPercent, 0);
13252
13221
  const widthPercent = segment.value / max * 100;
13253
- return [...acc, {
13222
+ acc.push({
13254
13223
  ...segment,
13255
13224
  offset,
13256
13225
  widthPercent
13257
- }];
13226
+ });
13227
+ return acc;
13258
13228
  }, []);
13259
13229
  const keySegments = segmentsWithOffsets.filter((segment) => isNotNil(segment.label));
13260
13230
  const totalValue = segments.reduce((sum, segment) => sum + segment.value, 0);
@@ -13477,7 +13447,7 @@ const StyledModalContent = styled(Dialog.Popup)`
13477
13447
  ${({ $positionVariant }) => positionStyleMap[$positionVariant]}
13478
13448
  }
13479
13449
  `;
13480
- const ModalContent = forwardRef(({ width, positionVariant, initialFocusRef, children, ...props }, ref) => {
13450
+ const ModalContent = ({ width, positionVariant, initialFocusRef, children, ref, ...props }) => {
13481
13451
  return /* @__PURE__ */ jsx(StyledModalContent, {
13482
13452
  ref,
13483
13453
  $positionVariant: positionVariant,
@@ -13486,8 +13456,7 @@ const ModalContent = forwardRef(({ width, positionVariant, initialFocusRef, chil
13486
13456
  ...props,
13487
13457
  children
13488
13458
  });
13489
- });
13490
- ModalContent.displayName = "ModalContent_UI";
13459
+ };
13491
13460
  //#endregion
13492
13461
  //#region src/components/Modal/ModalOverlay.tsx
13493
13462
  const backdropShow = keyframes`
@@ -13542,7 +13511,7 @@ const ModalFooter = styled.footer`
13542
13511
  * A Modal is a focused UI element that appears atop the main interface, requiring
13543
13512
  * user interaction or dismissal before returning to the underlying content.
13544
13513
  */
13545
- const Modal = forwardRef(({ children, footer, hideCloseButton = false, hideTitle = false, initialFocusRef, isOpen, onRequestClose, positionVariant = "centered", title, width = DEFAULT_MODAL_WIDTH, ...props }, ref) => {
13514
+ const Modal = ({ children, footer, hideCloseButton = false, hideTitle = false, initialFocusRef, isOpen, onRequestClose, positionVariant = "centered", title, width = DEFAULT_MODAL_WIDTH, ref, ...props }) => {
13546
13515
  return /* @__PURE__ */ jsx(Dialog.Root, {
13547
13516
  onOpenChange: (open) => {
13548
13517
  if (!open && isNotNil(onRequestClose)) onRequestClose();
@@ -13566,8 +13535,7 @@ const Modal = forwardRef(({ children, footer, hideCloseButton = false, hideTitle
13566
13535
  ]
13567
13536
  })] })
13568
13537
  });
13569
- });
13570
- Modal.displayName = "Modal_UI";
13538
+ };
13571
13539
  //#endregion
13572
13540
  //#region src/components/Modal/ModalCallouts.tsx
13573
13541
  const ModalCallouts = ({ children }) => {
@@ -13804,11 +13772,10 @@ PopoverAnchor.displayName = "PopoverAnchor_UI";
13804
13772
  * pass `render` to merge the close behavior onto a single child element. For
13805
13773
  * a pre-styled icon close button, use `PopoverCloseButton`.
13806
13774
  */
13807
- const PopoverClose = forwardRef((props, forwardedRef) => /* @__PURE__ */ jsx(Popover$1.Close, {
13808
- ref: forwardedRef,
13775
+ const PopoverClose = ({ ref, ...props }) => /* @__PURE__ */ jsx(Popover$1.Close, {
13776
+ ref,
13809
13777
  ...props
13810
- }));
13811
- PopoverClose.displayName = "PopoverClose_UI";
13778
+ });
13812
13779
  //#endregion
13813
13780
  //#region src/components/Popover/PopoverCloseButton.tsx
13814
13781
  /**
@@ -13850,7 +13817,7 @@ const DEFAULT_MAX_HEIGHT = "auto";
13850
13817
  * The styled popover surface. Place inside a `PopoverRoot` (typically wrapped
13851
13818
  * in a `PopoverPortal`). Wraps a `Positioner` and `Popup` internally.
13852
13819
  */
13853
- const PopoverContent = forwardRef(({ colorScheme = "inherit", unstyled = false, maxWidth = DEFAULT_MAX_WIDTH, maxHeight = DEFAULT_MAX_HEIGHT, sideOffset = DEFAULT_SIDE_OFFSET, side, align, style, role = "dialog", children, ...props }, forwardedRef) => {
13820
+ const PopoverContent = ({ colorScheme = "inherit", unstyled = false, maxWidth = DEFAULT_MAX_WIDTH, maxHeight = DEFAULT_MAX_HEIGHT, sideOffset = DEFAULT_SIDE_OFFSET, side, align, style, role = "dialog", children, ref, ...props }) => {
13854
13821
  const sharedAnchorRef = usePopoverAnchor();
13855
13822
  const hasAnchor = sharedAnchorRef?.current != null;
13856
13823
  const mergedStyle = {
@@ -13870,7 +13837,7 @@ const PopoverContent = forwardRef(({ colorScheme = "inherit", unstyled = false,
13870
13837
  style: { zIndex: "var(--wui-zindex-popover)" },
13871
13838
  ...hasAnchor ? { anchor: sharedAnchorRef } : {},
13872
13839
  children: /* @__PURE__ */ jsx(StyledPopup$1, {
13873
- ref: forwardedRef,
13840
+ ref,
13874
13841
  $colorScheme: colorScheme,
13875
13842
  $unstyled: unstyled,
13876
13843
  role,
@@ -13879,8 +13846,7 @@ const PopoverContent = forwardRef(({ colorScheme = "inherit", unstyled = false,
13879
13846
  children
13880
13847
  })
13881
13848
  });
13882
- });
13883
- PopoverContent.displayName = "PopoverContent_UI";
13849
+ };
13884
13850
  //#endregion
13885
13851
  //#region src/components/Popover/PopoverPortal.tsx
13886
13852
  /**
@@ -13915,12 +13881,11 @@ PopoverRoot.displayName = "PopoverRoot_UI";
13915
13881
  * `<button>` wrapping its children; pass `render` to merge the trigger
13916
13882
  * behavior onto a single child element (e.g. a `Button` or `IconButton`).
13917
13883
  */
13918
- const PopoverTrigger = forwardRef(({ nativeButton = true, ...props }, forwardedRef) => /* @__PURE__ */ jsx(Popover$1.Trigger, {
13919
- ref: forwardedRef,
13884
+ const PopoverTrigger = ({ nativeButton = true, ref, ...props }) => /* @__PURE__ */ jsx(Popover$1.Trigger, {
13885
+ ref,
13920
13886
  nativeButton,
13921
13887
  ...props
13922
- }));
13923
- PopoverTrigger.displayName = "PopoverTrigger_UI";
13888
+ });
13924
13889
  //#endregion
13925
13890
  //#region src/components/ProgressBar/ProgressBar.tsx
13926
13891
  const ProgressBarWrapper = styled.div`
@@ -14062,7 +14027,7 @@ const StyledRadioInput = styled.div`
14062
14027
  const StyledHiddenRadioInput = styled.input`
14063
14028
  ${visuallyHiddenStyle}
14064
14029
  `;
14065
- const Radio = forwardRef(({ checked, disabled = false, id, label, description, name, onChange, size = "md", value = "false", required = false, hideLabel = false, ...props }, ref) => {
14030
+ const Radio = ({ checked, disabled = false, id, label, description, name, onChange, size = "md", value = "false", required = false, hideLabel = false, ref, ...props }) => {
14066
14031
  const generatedId = useId();
14067
14032
  const computedId = isNonEmptyString(id) ? id : `wistia-ui-radio-${generatedId}`;
14068
14033
  const radioGroupContext = useRadioGroup();
@@ -14096,8 +14061,7 @@ const Radio = forwardRef(({ checked, disabled = false, id, label, description, n
14096
14061
  label
14097
14062
  })]
14098
14063
  });
14099
- });
14100
- Radio.displayName = "Radio_UI";
14064
+ };
14101
14065
  //#endregion
14102
14066
  //#region src/components/RadioCard/RadioCardRoot.tsx
14103
14067
  const checkedStyles = css`
@@ -14206,7 +14170,7 @@ const StyledCard = styled.label`
14206
14170
  const StyledHiddenInput = styled.input`
14207
14171
  ${visuallyHiddenStyle}
14208
14172
  `;
14209
- const RadioCardRoot = forwardRef(({ children, disabled = false, id, isGated = false, name, onChange, value, aspectRatio = "initial", padding = "space-04", checked, ...props }, ref) => {
14173
+ const RadioCardRoot = ({ children, disabled = false, id, isGated = false, name, onChange, value, aspectRatio = "initial", padding = "space-04", checked, ref, ...props }) => {
14210
14174
  const generatedId = useId();
14211
14175
  const computedId = isNonEmptyString(id) ? id : `wistia-ui-radio-${generatedId}`;
14212
14176
  const radioGroupContext = useRadioGroup();
@@ -14233,8 +14197,7 @@ const RadioCardRoot = forwardRef(({ children, disabled = false, id, isGated = fa
14233
14197
  value
14234
14198
  }), children]
14235
14199
  });
14236
- });
14237
- RadioCardRoot.displayName = "RadioCardRoot_UI";
14200
+ };
14238
14201
  //#endregion
14239
14202
  //#region src/components/RadioCard/RadioCardIndicator.tsx
14240
14203
  const RadioCardIndicator = styled.div`
@@ -14347,7 +14310,7 @@ const RadioCardChildrenContainer = styled.div`
14347
14310
  `;
14348
14311
  //#endregion
14349
14312
  //#region src/components/RadioCard/RadioCard.tsx
14350
- const RadioCard = forwardRef(({ icon, label, description, showIndicator, isGated, children, ...rootProps }, ref) => {
14313
+ const RadioCard = ({ icon, label, description, showIndicator, isGated, children, ref, ...rootProps }) => {
14351
14314
  return /* @__PURE__ */ jsx(RadioCardRoot, {
14352
14315
  ref,
14353
14316
  isGated,
@@ -14364,11 +14327,10 @@ const RadioCard = forwardRef(({ icon, label, description, showIndicator, isGated
14364
14327
  showIndicator
14365
14328
  })
14366
14329
  });
14367
- });
14368
- RadioCard.displayName = "RadioCard_UI";
14330
+ };
14369
14331
  //#endregion
14370
14332
  //#region src/components/RadioCard/RadioCardImage.tsx
14371
- const RadioCardImage = forwardRef(({ label, imageSrc, aspectRatio, padding = "space-04", ...rootProps }, ref) => {
14333
+ const RadioCardImage = ({ label, imageSrc, aspectRatio, padding = "space-04", ref, ...rootProps }) => {
14372
14334
  return /* @__PURE__ */ jsx(RadioCardRoot, {
14373
14335
  ref,
14374
14336
  ...rootProps,
@@ -14382,8 +14344,7 @@ const RadioCardImage = forwardRef(({ label, imageSrc, aspectRatio, padding = "sp
14382
14344
  src: imageSrc
14383
14345
  })
14384
14346
  });
14385
- });
14386
- RadioCardImage.displayName = "RadioCardImage_UI";
14347
+ };
14387
14348
  //#endregion
14388
14349
  //#region src/components/ScrollArea/ScrollArea.tsx
14389
14350
  const SHADOW_SIZE_PX = 8;
@@ -14436,7 +14397,7 @@ const ShadowAtRight = styled(Shadow)`
14436
14397
  * ScrollArea is a simple scrollable container with shadow effects to indicate
14437
14398
  * scrollability.
14438
14399
  */
14439
- const ScrollArea = forwardRef(({ children, onScroll, style, locked = false, ...props }, forwardedRef) => {
14400
+ const ScrollArea = ({ children, onScroll, style, locked = false, ref: forwardedRef, ...props }) => {
14440
14401
  const scrollContainerRefInternal = useRef(null);
14441
14402
  const [shadowState, setShadowState] = useState({
14442
14403
  canScrollUp: false,
@@ -14479,8 +14440,7 @@ const ScrollArea = forwardRef(({ children, onScroll, style, locked = false, ...p
14479
14440
  })
14480
14441
  ]
14481
14442
  });
14482
- });
14483
- ScrollArea.displayName = "ScrollArea_UI";
14443
+ };
14484
14444
  //#endregion
14485
14445
  //#region src/components/SegmentedControl/useSelectedItemStyle.tsx
14486
14446
  const SelectedItemStyleContext = createContext(null);
@@ -14656,7 +14616,7 @@ const segmentedControlItemStyles = css`
14656
14616
  const StyledSegmentedControlItem = styled(Toggle)`
14657
14617
  ${segmentedControlItemStyles}
14658
14618
  `;
14659
- const SegmentedControlItem = forwardRef(({ disabled, icon, label, "aria-label": ariaLabel, value, ...otherProps }, forwardedRef) => {
14619
+ const SegmentedControlItem = ({ disabled, icon, label, "aria-label": ariaLabel, value, ref: forwardedRef, ...otherProps }) => {
14660
14620
  const selectedValue = useSegmentedControlValue();
14661
14621
  const { setSelectedItemMeasurements } = useSelectedItemStyle();
14662
14622
  const buttonRef = useRef(null);
@@ -14699,8 +14659,7 @@ const SegmentedControlItem = forwardRef(({ disabled, icon, label, "aria-label":
14699
14659
  value,
14700
14660
  children: [icon, label]
14701
14661
  });
14702
- });
14703
- SegmentedControlItem.displayName = "SegmentedControlItem_UI";
14662
+ };
14704
14663
  //#endregion
14705
14664
  //#region src/components/Select/Select.tsx
14706
14665
  const StyledTrigger = styled(Select$1.Trigger)`
@@ -14841,7 +14800,7 @@ const collectItemLabels = (children) => Children.toArray(children).flatMap((chil
14841
14800
  /**
14842
14801
  * Display a list of options and choose one of them. Replacement for the native Select HTML element.
14843
14802
  */
14844
- const Select = forwardRef(({ colorScheme = "inherit", children, onOpenChange = () => null, onChange = () => null, placeholder = "Select...", fullWidth = false, forceOpen = false, showScrollArrows = false, disabled, name, value, "aria-invalid": ariaInvalid, ...props }, forwardedRef) => {
14803
+ const Select = ({ colorScheme = "inherit", children, onOpenChange = () => null, onChange = () => null, placeholder = "Select...", fullWidth = false, forceOpen = false, showScrollArrows = false, disabled, name, value, "aria-invalid": ariaInvalid, ref: forwardedRef, ...props }) => {
14845
14804
  const responsiveFullWidth = useResponsiveProp(fullWidth);
14846
14805
  const rootProps = {
14847
14806
  disabled,
@@ -14882,8 +14841,7 @@ const Select = forwardRef(({ colorScheme = "inherit", children, onOpenChange = (
14882
14841
  ] })
14883
14842
  }) })]
14884
14843
  });
14885
- });
14886
- Select.displayName = "Select_UI";
14844
+ };
14887
14845
  //#endregion
14888
14846
  //#region src/components/Select/SelectOption.tsx
14889
14847
  const StyledItem = styled(Select$1.Item)`
@@ -14912,7 +14870,7 @@ const StyledItem = styled(Select$1.Item)`
14912
14870
  background-color: transparent;
14913
14871
  }
14914
14872
  `;
14915
- const SelectOption = forwardRef(({ children, selectedDisplayValue, checkmarkVerticalAlign = "center", textValue, ...props }, forwardedRef) => {
14873
+ const SelectOption = ({ children, selectedDisplayValue, checkmarkVerticalAlign = "center", textValue, ref: forwardedRef, ...props }) => {
14916
14874
  const label = typeof children === "string" ? children : textValue;
14917
14875
  return /* @__PURE__ */ jsxs(StyledItem, {
14918
14876
  ...props,
@@ -14927,8 +14885,7 @@ const SelectOption = forwardRef(({ children, selectedDisplayValue, checkmarkVert
14927
14885
  type: "checkmark"
14928
14886
  }) })]
14929
14887
  });
14930
- });
14931
- SelectOption.displayName = "SelectOption_UI";
14888
+ };
14932
14889
  //#endregion
14933
14890
  //#region src/components/Select/SelectOptionGroup.tsx
14934
14891
  const StyledLabel = styled(Select$1.GroupLabel)`
@@ -14974,14 +14931,13 @@ const StyledSidebar = styled.nav`
14974
14931
  overflow: hidden;
14975
14932
  border-right: 1px solid var(--wui-color-border);
14976
14933
  `;
14977
- const Sidebar = forwardRef(({ children, ...props }, ref) => {
14934
+ const Sidebar = ({ children, ref, ...props }) => {
14978
14935
  return /* @__PURE__ */ jsx(StyledSidebar, {
14979
14936
  ref,
14980
14937
  ...props,
14981
14938
  children
14982
14939
  });
14983
- });
14984
- Sidebar.displayName = "Sidebar_UI";
14940
+ };
14985
14941
  //#endregion
14986
14942
  //#region src/components/Sidebar/SidebarHeader.tsx
14987
14943
  const StyledSidebarHeader = styled.div`
@@ -15121,7 +15077,7 @@ const StyledSidebarButton = styled(Button)`
15121
15077
  ${pressedButtonVariant};
15122
15078
  }
15123
15079
  `;
15124
- const SidebarButton = forwardRef(({ selected = false, ...props }, ref) => {
15080
+ const SidebarButton = ({ selected = false, ref, ...props }) => {
15125
15081
  return /* @__PURE__ */ jsx(StyledSidebarButton, {
15126
15082
  ref,
15127
15083
  "aria-current": selected ? "page" : void 0,
@@ -15129,14 +15085,13 @@ const SidebarButton = forwardRef(({ selected = false, ...props }, ref) => {
15129
15085
  "data-wui-sidebar-button": true,
15130
15086
  ...props
15131
15087
  });
15132
- });
15133
- SidebarButton.displayName = "SidebarButton_UI";
15088
+ };
15134
15089
  //#endregion
15135
15090
  //#region src/components/Sidebar/SidebarSearchInput.tsx
15136
15091
  const StyledSidebarSearchInputContainer = styled.div`
15137
15092
  padding-inline: var(--wui-space-01);
15138
15093
  `;
15139
- const SidebarSearchInput = forwardRef(({ id, label = "Search navigation", ...props }, ref) => {
15094
+ const SidebarSearchInput = ({ id, label = "Search navigation", ref, ...props }) => {
15140
15095
  const generatedId = useId();
15141
15096
  const inputId = id ?? generatedId;
15142
15097
  return /* @__PURE__ */ jsxs(StyledSidebarSearchInputContainer, { children: [/* @__PURE__ */ jsx(Label, {
@@ -15149,8 +15104,7 @@ const SidebarSearchInput = forwardRef(({ id, label = "Search navigation", ...pro
15149
15104
  type: "search",
15150
15105
  ...props
15151
15106
  })] });
15152
- });
15153
- SidebarSearchInput.displayName = "SidebarSearchInput_UI";
15107
+ };
15154
15108
  //#endregion
15155
15109
  //#region src/components/Slider/Slider.tsx
15156
15110
  const SliderContainer = styled.div`
@@ -15519,11 +15473,11 @@ const StyledTabsTrigger = styled(Tabs$1.Tab)`
15519
15473
  `;
15520
15474
  //#endregion
15521
15475
  //#region src/components/Tabs/TabsTrigger.tsx
15522
- const TabsTrigger = forwardRef(({ disabled = false, icon, label, "aria-label": ariaLabel, value, ...otherProps }, forwardedRef) => {
15476
+ const TabsTrigger = ({ disabled = false, icon, label, "aria-label": ariaLabel, value, ref, ...otherProps }) => {
15523
15477
  const selectedValue = useTabsValue();
15524
15478
  const { setSelectedItemMeasurements } = useSelectedItemStyle();
15525
15479
  const buttonRef = useRef(null);
15526
- const combinedRef = mergeRefs([buttonRef, forwardedRef]);
15480
+ const combinedRef = mergeRefs([buttonRef, ref]);
15527
15481
  useEffect(() => {
15528
15482
  const buttonElem = buttonRef.current;
15529
15483
  if (!buttonElem) return;
@@ -15558,8 +15512,7 @@ const TabsTrigger = forwardRef(({ disabled = false, icon, label, "aria-label": a
15558
15512
  value,
15559
15513
  children: [icon, label]
15560
15514
  });
15561
- });
15562
- TabsTrigger.displayName = "TabsTrigger_UI";
15515
+ };
15563
15516
  //#endregion
15564
15517
  //#region src/components/Thumbnail/ThumbnailBadge.tsx
15565
15518
  const StyledThumbnailBadge = styled.div`
@@ -15758,7 +15711,7 @@ const hasValidThumbnailUrl = (thumbnailUrl) => {
15758
15711
  /**
15759
15712
  * A `Thumbnail` is a small, reduced-size version of an image or video used as a preview or representative image.
15760
15713
  */
15761
- const Thumbnail = forwardRef(({ gradientBackground = "defaultMidOne", thumbnailImageType = "wide", thumbnailUrl, width = "100%", children, storyboard, height, aspectRatio = "wide", ...props }, ref) => {
15714
+ const Thumbnail = ({ gradientBackground = "defaultMidOne", thumbnailImageType = "wide", thumbnailUrl, width = "100%", children, storyboard, height, aspectRatio = "wide", ref, ...props }) => {
15762
15715
  const [percent, setPercent] = useState(0);
15763
15716
  const [isMouseOver, setIsMouseOver] = useState(false);
15764
15717
  const [isStoryboardReady, setIsStoryboardReady] = useState(false);
@@ -15831,8 +15784,7 @@ const Thumbnail = forwardRef(({ gradientBackground = "defaultMidOne", thumbnailI
15831
15784
  children: [isNotNil(children) ? children : null, thumbnailContent]
15832
15785
  })
15833
15786
  });
15834
- });
15835
- Thumbnail.displayName = "Thumbnail_UI";
15787
+ };
15836
15788
  //#endregion
15837
15789
  //#region src/components/ThumbnailCollage/ThumbnailCollage.tsx
15838
15790
  const ThumbnailCollageContainer = styled.div`