@wistia/ui 0.18.18-beta.fba14250.ac46dfb → 0.19.0-beta.e04d42c5.ec25c59

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.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
 
2
2
  /*
3
- * @license @wistia/ui v0.18.18-beta.fba14250.ac46dfb
3
+ * @license @wistia/ui v0.19.0-beta.e04d42c5.ec25c59
4
4
  *
5
5
  * Copyright (c) 2024-2025, Wistia, Inc. and its affiliates.
6
6
  *
@@ -14100,7 +14100,7 @@ var DataCardInner = ({
14100
14100
  StyledLabel3,
14101
14101
  {
14102
14102
  "data-wui-data-card-skeleton": isLoading,
14103
- renderAs: "span",
14103
+ renderAs: "dt",
14104
14104
  variant: "heading6",
14105
14105
  children: label
14106
14106
  }
@@ -14109,7 +14109,7 @@ var DataCardInner = ({
14109
14109
  StyledValue,
14110
14110
  {
14111
14111
  "data-wui-data-card-skeleton": isLoading,
14112
- renderAs: "span",
14112
+ renderAs: "dd",
14113
14113
  variant: "heading3",
14114
14114
  children: value
14115
14115
  }
@@ -14162,42 +14162,29 @@ import { styled as styled59 } from "styled-components";
14162
14162
  import { jsx as jsx279 } from "react/jsx-runtime";
14163
14163
  var StyledDataCards = styled59(Box)`
14164
14164
  ${({ $colorScheme }) => getColorScheme($colorScheme)};
14165
- --wui-data-cards-column-count: ${({ $columns }) => $columns === "auto" ? void 0 : $columns};
14166
- --wui-data-cards-total-column-gap-width: calc(var(--wui-data-cards-column-count) - 1) *
14167
- var(--wui-space-02);
14168
- --wui-data-cards-column-width: calc(
14169
- (100% - var(--wui-data-cards-total-column-gap-width)) / var(--wui-data-cards-column-count)
14170
- );
14171
14165
 
14172
14166
  > * {
14173
- min-width: ${({ $cardMinWidth }) => $cardMinWidth};
14174
- flex-basis: var(--wui-data-cards-column-width, 0);
14167
+ min-width: 120px;
14175
14168
  max-width: ${({ $cardMaxWidth }) => $cardMaxWidth};
14176
14169
  }
14177
14170
  `;
14178
14171
  var DataCards = ({
14179
14172
  children,
14180
- cardMinWidth = "120px",
14181
14173
  cardMaxWidth = "none",
14182
14174
  colorScheme = "inherit",
14183
- columns = "auto",
14184
14175
  ...props
14185
14176
  }) => {
14186
- const responsiveCardMinWidth = useResponsiveProp(cardMinWidth);
14187
- const responsiveCardMaxWidth = useResponsiveProp(cardMaxWidth);
14188
- const responsiveColumns = useResponsiveProp(columns);
14189
14177
  return /* @__PURE__ */ jsx279(
14190
14178
  StyledDataCards,
14191
14179
  {
14192
14180
  ...props,
14193
- $cardMaxWidth: responsiveCardMaxWidth,
14194
- $cardMinWidth: responsiveCardMinWidth,
14181
+ $cardMaxWidth: cardMaxWidth,
14195
14182
  $colorScheme: colorScheme,
14196
- $columns: responsiveColumns,
14197
14183
  alignItems: "stretch",
14198
14184
  direction: "row",
14199
14185
  fill: "horizontal",
14200
14186
  gap: "space-02",
14187
+ renderAs: "dl",
14201
14188
  wrapItems: true,
14202
14189
  children
14203
14190
  }
@@ -15088,11 +15075,23 @@ var FormErrorSummary = ({ description }) => {
15088
15075
 
15089
15076
  // src/components/FormField/FormField.tsx
15090
15077
  import { Children as Children10, cloneElement as cloneElement8, useContext as useContext13 } from "react";
15091
- import { styled as styled68 } from "styled-components";
15078
+ import { styled as styled68, css as css36 } from "styled-components";
15092
15079
  import { isArray as isArray4, isNotNil as isNotNil28, isNotUndefined as isNotUndefined12, isUndefined as isUndefined4 } from "@wistia/type-guards";
15093
- import { Fragment as Fragment9, jsx as jsx293, jsxs as jsxs47 } from "react/jsx-runtime";
15080
+ import { jsx as jsx293, jsxs as jsxs47 } from "react/jsx-runtime";
15081
+ var inlineErrorStyles = css36`
15082
+ grid-template-rows: 1fr auto;
15083
+ grid-template-areas: 'label-description input' '. error';
15084
+ `;
15085
+ var inlineBaseGridAreaStyles = css36`
15086
+ grid-template-rows: 1fr;
15087
+ grid-template-areas: 'label-description input';
15088
+ `;
15089
+ var blockGridErrorStyles = css36`
15090
+ grid-template-rows: auto 1fr auto;
15091
+ grid-template-areas: 'label-description' 'input' 'error';
15092
+ `;
15094
15093
  var StyledFormField = styled68.div`
15095
- --form-field-spacing: var(--wui-space-01);
15094
+ --form-field-spacing: var(--wui-space-02);
15096
15095
  --form-field-spacing-inline: var(--wui-space-02);
15097
15096
  --form-field-error-color: var(--wui-color-text-secondary-error);
15098
15097
 
@@ -15106,21 +15105,28 @@ var StyledFormField = styled68.div`
15106
15105
  &[data-label-position='inline-compact'] {
15107
15106
  gap: var(--form-field-spacing-inline);
15108
15107
  grid-template-columns: auto 1fr;
15109
- grid-template-rows: 1fr auto;
15108
+ ${inlineBaseGridAreaStyles}
15109
+ ${({ $hasError }) => $hasError && inlineErrorStyles}
15110
15110
  }
15111
15111
 
15112
15112
  &[data-label-position='inline'] {
15113
15113
  gap: var(--form-field-spacing-inline);
15114
15114
  grid-template-columns: minmax(auto, 1fr) 1fr;
15115
- grid-template-rows: 1fr auto;
15115
+ ${inlineBaseGridAreaStyles}
15116
+ ${({ $hasError }) => $hasError && inlineErrorStyles}
15116
15117
  }
15117
15118
 
15118
15119
  &[data-label-position='block'] {
15119
15120
  gap: var(--form-field-spacing);
15120
15121
  grid-template-columns: 1fr;
15121
- grid-template-rows: 1fr;
15122
+ grid-template-rows: auto 1fr;
15123
+ grid-template-areas: 'label-description' 'input';
15124
+ ${({ $hasError }) => $hasError && blockGridErrorStyles}
15122
15125
  }
15123
15126
  `;
15127
+ var ErrorText = styled68(Text)`
15128
+ grid-area: error;
15129
+ `;
15124
15130
  var StyledErrorList = styled68.ul`
15125
15131
  margin: 0;
15126
15132
  padding: 0;
@@ -15128,13 +15134,14 @@ var StyledErrorList = styled68.ul`
15128
15134
  display: flex;
15129
15135
  flex-direction: column;
15130
15136
  gap: var(--wui-space-01);
15137
+ grid-area: error;
15131
15138
  `;
15132
15139
  var ErrorMessages = ({ errors, id }) => {
15133
15140
  const isErrorArray = isArray4(errors);
15134
15141
  const isMultipleErrors = isErrorArray && errors.length > 1;
15135
15142
  if (!isErrorArray) {
15136
15143
  return /* @__PURE__ */ jsx293(
15137
- Text,
15144
+ ErrorText,
15138
15145
  {
15139
15146
  colorScheme: "error",
15140
15147
  id,
@@ -15147,7 +15154,7 @@ var ErrorMessages = ({ errors, id }) => {
15147
15154
  }
15148
15155
  if (!isMultipleErrors) {
15149
15156
  return /* @__PURE__ */ jsx293(
15150
- Text,
15157
+ ErrorText,
15151
15158
  {
15152
15159
  colorScheme: "error",
15153
15160
  id,
@@ -15192,12 +15199,16 @@ var FormField = ({
15192
15199
  const descriptionId = `${computedId}-description`;
15193
15200
  const errorId = `${computedId}-error`;
15194
15201
  const ariaDescribedby = [descriptionId, errorId].filter(Boolean).join(" ") || void 0;
15202
+ const hasDescription = isNotNil28(description);
15203
+ const hasError = isNotNil28(computedError);
15204
+ const shouldRenderLabelDescriptionWrapper = !isIntegratedLabel || hasDescription;
15195
15205
  let childProps = {
15196
15206
  name,
15197
15207
  id: computedId,
15198
15208
  label: isIntegratedLabel ? label : void 0,
15199
15209
  "aria-describedby": ariaDescribedby,
15200
- "aria-invalid": isNotNil28(computedError),
15210
+ "aria-invalid": hasError,
15211
+ style: { gridArea: "input" },
15201
15212
  ...props
15202
15213
  };
15203
15214
  if (isUndefined4(value) && isNotUndefined12(defaultValue)) {
@@ -15227,28 +15238,38 @@ var FormField = ({
15227
15238
  StyledFormField,
15228
15239
  {
15229
15240
  ...props,
15241
+ $hasError: hasError,
15230
15242
  "data-label-position": labelPosition ?? formState.labelPosition,
15231
15243
  children: [
15232
- !isIntegratedLabel && /* @__PURE__ */ jsx293(
15233
- Label,
15244
+ shouldRenderLabelDescriptionWrapper ? /* @__PURE__ */ jsxs47(
15245
+ Stack,
15234
15246
  {
15235
- htmlFor: computedId,
15236
- required,
15237
- children: label
15247
+ direction: "vertical",
15248
+ gap: "space-01",
15249
+ style: {
15250
+ gridArea: "label-description"
15251
+ },
15252
+ children: [
15253
+ !isIntegratedLabel && /* @__PURE__ */ jsx293(
15254
+ Label,
15255
+ {
15256
+ htmlFor: computedId,
15257
+ required,
15258
+ children: label
15259
+ }
15260
+ ),
15261
+ hasDescription ? /* @__PURE__ */ jsx293(FormControlLabelDescription, { id: descriptionId, children: description }) : null
15262
+ ]
15238
15263
  }
15239
- ),
15240
- isNotNil28(description) ? /* @__PURE__ */ jsx293(FormControlLabelDescription, { id: descriptionId, children: description }) : null,
15264
+ ) : null,
15241
15265
  cloneElement8(children, childProps),
15242
- isNotNil28(computedError) ? /* @__PURE__ */ jsxs47(Fragment9, { children: [
15243
- /* @__PURE__ */ jsx293("div", {}),
15244
- /* @__PURE__ */ jsx293(
15245
- ErrorMessages,
15246
- {
15247
- errors: computedError,
15248
- id: errorId
15249
- }
15250
- )
15251
- ] }) : null
15266
+ hasError ? /* @__PURE__ */ jsx293(
15267
+ ErrorMessages,
15268
+ {
15269
+ errors: computedError,
15270
+ id: errorId
15271
+ }
15272
+ ) : null
15252
15273
  ]
15253
15274
  }
15254
15275
  );
@@ -15284,24 +15305,24 @@ RadioGroup.displayName = "RadioGroup_UI";
15284
15305
 
15285
15306
  // src/components/Grid/Grid.tsx
15286
15307
  import { forwardRef as forwardRef22 } from "react";
15287
- import { styled as styled69, css as css36 } from "styled-components";
15308
+ import { styled as styled69, css as css37 } from "styled-components";
15288
15309
  import { isRecord as isRecord5 } from "@wistia/type-guards";
15289
15310
  import { jsx as jsx295 } from "react/jsx-runtime";
15290
15311
  var DEFAULT_ELEMENT5 = "div";
15291
15312
  var getGridTemplateColumns = (maxColumns, minChildWidth, expandItems) => {
15292
15313
  if (minChildWidth === "auto" && maxColumns === "auto") {
15293
- return css36`
15314
+ return css37`
15294
15315
  grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
15295
15316
  `;
15296
15317
  }
15297
15318
  const gridMode = expandItems ? "auto-fit" : "auto-fill";
15298
15319
  const minChildWidthValue = minChildWidth === "auto" ? 0 : minChildWidth;
15299
15320
  if (maxColumns === "auto") {
15300
- return css36`
15321
+ return css37`
15301
15322
  grid-template-columns: repeat(${gridMode}, minmax(${minChildWidthValue}px, 1fr));
15302
15323
  `;
15303
15324
  }
15304
- return css36`
15325
+ return css37`
15305
15326
  /* Adapted from https://9elements.com/blog/building-a-rock-solid-auto-grid/ */
15306
15327
  --wui-grid-total-column-gap-width: calc(${maxColumns - 1} * var(--wui-grid-column-gap));
15307
15328
  --wui-grid-max-column-width: calc(
@@ -15585,7 +15606,7 @@ KeyboardShortcut.displayName = "KeyboardShortcut_UI";
15585
15606
 
15586
15607
  // src/components/List/List.tsx
15587
15608
  import { isNotNil as isNotNil30 } from "@wistia/type-guards";
15588
- import { styled as styled74, css as css37 } from "styled-components";
15609
+ import { styled as styled74, css as css38 } from "styled-components";
15589
15610
 
15590
15611
  // src/components/List/ListItem.tsx
15591
15612
  import { styled as styled73 } from "styled-components";
@@ -15604,7 +15625,7 @@ ListItem.displayName = "ListItem_UI";
15604
15625
 
15605
15626
  // src/components/List/List.tsx
15606
15627
  import { jsx as jsx300, jsxs as jsxs49 } from "react/jsx-runtime";
15607
- var spacesStyle = css37`
15628
+ var spacesStyle = css38`
15608
15629
  overflow: hidden;
15609
15630
  padding-left: 0;
15610
15631
  vertical-align: bottom;
@@ -15626,7 +15647,7 @@ var spacesStyle = css37`
15626
15647
  }
15627
15648
  }
15628
15649
  `;
15629
- var commasStyle = css37`
15650
+ var commasStyle = css38`
15630
15651
  ${spacesStyle};
15631
15652
 
15632
15653
  li {
@@ -15636,7 +15657,7 @@ var commasStyle = css37`
15636
15657
  }
15637
15658
  }
15638
15659
  `;
15639
- var slashesStyle = css37`
15660
+ var slashesStyle = css38`
15640
15661
  ${spacesStyle};
15641
15662
 
15642
15663
  li {
@@ -15647,7 +15668,7 @@ var slashesStyle = css37`
15647
15668
  }
15648
15669
  }
15649
15670
  `;
15650
- var breadcrumbsStyle = css37`
15671
+ var breadcrumbsStyle = css38`
15651
15672
  ${spacesStyle};
15652
15673
 
15653
15674
  li {
@@ -15658,7 +15679,7 @@ var breadcrumbsStyle = css37`
15658
15679
  }
15659
15680
  }
15660
15681
  `;
15661
- var unbulletedStyle = css37`
15682
+ var unbulletedStyle = css38`
15662
15683
  list-style: none;
15663
15684
  padding-left: 0;
15664
15685
  `;
@@ -15840,7 +15861,7 @@ var ModalHeader = ({
15840
15861
 
15841
15862
  // src/components/Modal/ModalContent.tsx
15842
15863
  import { forwardRef as forwardRef25 } from "react";
15843
- import { styled as styled78, css as css38, keyframes as keyframes5 } from "styled-components";
15864
+ import { styled as styled78, css as css39, keyframes as keyframes5 } from "styled-components";
15844
15865
  import { Content as DialogContent } from "@radix-ui/react-dialog";
15845
15866
 
15846
15867
  // src/private/hooks/useFocusRestore/useFocusRestore.ts
@@ -15886,7 +15907,7 @@ var modalExit = keyframes5`
15886
15907
  transform: translateX(-50%) translateY(calc(var(--wui-modal-translate-y) + 24px));
15887
15908
  }
15888
15909
  `;
15889
- var centeredModalStyles = css38`
15910
+ var centeredModalStyles = css39`
15890
15911
  --wui-modal-screen-offset: var(--wui-space-05);
15891
15912
  --wui-modal-translate-y: -50%;
15892
15913
 
@@ -15902,7 +15923,7 @@ var centeredModalStyles = css38`
15902
15923
  animation: ${modalExit} var(--wui-motion-duration-03) var(--wui-motion-ease-out);
15903
15924
  }
15904
15925
  `;
15905
- var fixedTopModalStyles = css38`
15926
+ var fixedTopModalStyles = css39`
15906
15927
  --wui-modal-screen-offset-top: 15vh;
15907
15928
  --wui-modal-screen-offset-bottom: 5vh;
15908
15929
  --wui-modal-translate-y: 0%;
@@ -15943,7 +15964,7 @@ var slideOutRight = keyframes5`
15943
15964
  transform: translateX(100%);
15944
15965
  }
15945
15966
  `;
15946
- var rightSidePanelModalStyles = css38`
15967
+ var rightSidePanelModalStyles = css39`
15947
15968
  --wui-modal-screen-offset: var(--wui-space-05);
15948
15969
 
15949
15970
  height: calc(100vh - var(--wui-modal-screen-offset) * 2);
@@ -16141,7 +16162,7 @@ ModalCallout.displayName = "ModalCallout_UI";
16141
16162
 
16142
16163
  // src/components/Popover/Popover.tsx
16143
16164
  import { Root as Root2, Trigger as Trigger2, Portal, Content as Content2, Close } from "@radix-ui/react-popover";
16144
- import { styled as styled82, css as css40 } from "styled-components";
16165
+ import { styled as styled82, css as css41 } from "styled-components";
16145
16166
 
16146
16167
  // src/private/helpers/getControls/getControlProps.tsx
16147
16168
  import { isNotNil as isNotNil33 } from "@wistia/type-guards";
@@ -16151,7 +16172,7 @@ var getControlProps = (isOpen, onOpenChange) => {
16151
16172
 
16152
16173
  // src/components/Popover/PopoverArrow.tsx
16153
16174
  import { PopoverArrow as RadixPopoverArrow } from "@radix-ui/react-popover";
16154
- import { styled as styled81, css as css39, keyframes as keyframes7 } from "styled-components";
16175
+ import { styled as styled81, css as css40, keyframes as keyframes7 } from "styled-components";
16155
16176
  import { jsx as jsx307, jsxs as jsxs53 } from "react/jsx-runtime";
16156
16177
  var StyledPath = styled81.path`
16157
16178
  fill: var(--wui-color-border-secondary);
@@ -16185,7 +16206,7 @@ var StyledCircle = styled81.circle`
16185
16206
  }
16186
16207
 
16187
16208
  @media (prefers-reduced-motion: no-preference) {
16188
- ${({ $isAnimated }) => $isAnimated && css39`
16209
+ ${({ $isAnimated }) => $isAnimated && css40`
16189
16210
  animation-name: ${circleAnimation};
16190
16211
  `}
16191
16212
  }
@@ -16234,7 +16255,7 @@ import { jsx as jsx308, jsxs as jsxs54 } from "react/jsx-runtime";
16234
16255
  var StyledContent2 = styled82(Content2)`
16235
16256
  z-index: var(--wui-zindex-popover);
16236
16257
  ${({ $colorScheme }) => getColorScheme($colorScheme)};
16237
- ${({ $unstyled }) => !$unstyled && css40`
16258
+ ${({ $unstyled }) => !$unstyled && css41`
16238
16259
  border-radius: var(--wui-border-radius-02);
16239
16260
  padding: var(--wui-space-04);
16240
16261
  max-width: var(--wui-popover-max-width, 320px);
@@ -16384,17 +16405,17 @@ ProgressBar.displayName = "ProgressBar_UI";
16384
16405
  // src/components/Radio/Radio.tsx
16385
16406
  import { isNonEmptyString as isNonEmptyString7, isNotUndefined as isNotUndefined13 } from "@wistia/type-guards";
16386
16407
  import { forwardRef as forwardRef27, useId as useId5 } from "react";
16387
- import { styled as styled84, css as css41 } from "styled-components";
16408
+ import { styled as styled84, css as css42 } from "styled-components";
16388
16409
  import { jsx as jsx310, jsxs as jsxs56 } from "react/jsx-runtime";
16389
- var sizeSmall2 = css41`
16410
+ var sizeSmall2 = css42`
16390
16411
  --wui-radio-size: 14px;
16391
16412
  --wui-radio-icon-size: 7px;
16392
16413
  `;
16393
- var sizeMedium2 = css41`
16414
+ var sizeMedium2 = css42`
16394
16415
  --wui-radio-size: 16px;
16395
16416
  --wui-radio-icon-size: 8px;
16396
16417
  `;
16397
- var sizeLarge2 = css41`
16418
+ var sizeLarge2 = css42`
16398
16419
  --wui-radio-size: 20px;
16399
16420
  --wui-radio-icon-size: 10px;
16400
16421
  `;
@@ -16535,17 +16556,17 @@ import { forwardRef as forwardRef29 } from "react";
16535
16556
 
16536
16557
  // src/components/RadioCard/RadioCardRoot.tsx
16537
16558
  import { forwardRef as forwardRef28, useId as useId6 } from "react";
16538
- import { styled as styled85, css as css42 } from "styled-components";
16559
+ import { styled as styled85, css as css43 } from "styled-components";
16539
16560
  import { isNonEmptyString as isNonEmptyString8, isNotUndefined as isNotUndefined14 } from "@wistia/type-guards";
16540
16561
  import { jsx as jsx311, jsxs as jsxs57 } from "react/jsx-runtime";
16541
- var checkedStyles = css42`
16562
+ var checkedStyles = css43`
16542
16563
  --wui-radio-card-border-color: var(--wui-color-focus-ring);
16543
16564
  --wui-color-icon: var(--wui-color-icon-selected);
16544
16565
  --wui-radio-card-background-color: var(--wui-color-bg-surface-info);
16545
16566
  --wui-color-text: var(--wui-color-text-info);
16546
16567
  --wui-color-text-secondary: var(--wui-color-text-info);
16547
16568
  `;
16548
- var disabledStyles = css42`
16569
+ var disabledStyles = css43`
16549
16570
  --wui-radio-card-border-color: var(--wui-color-border-disabled);
16550
16571
  --wui-radio-card-background-color: var(--wui-color-bg-surface-disabled);
16551
16572
  --wui-radio-card-cursor: not-allowed;
@@ -16553,10 +16574,10 @@ var disabledStyles = css42`
16553
16574
  --wui-color-text: var(--wui-color-text-disabled);
16554
16575
  --wui-color-text-secondary: var(--wui-color-text-disabled);
16555
16576
  `;
16556
- var focusStyles = css42`
16577
+ var focusStyles = css43`
16557
16578
  outline: 2px solid var(--wui-color-focus-ring);
16558
16579
  `;
16559
- var imageCoverStyles = css42`
16580
+ var imageCoverStyles = css43`
16560
16581
  --wui-radio-card-image-inset: 0px;
16561
16582
  --wui-radio-card-border-width: 0px;
16562
16583
  --wui-inset-shadow-width: 1px;
@@ -16962,7 +16983,7 @@ ScrollArea.displayName = "ScrollArea_UI";
16962
16983
 
16963
16984
  // src/components/SegmentedControl/SegmentedControl.tsx
16964
16985
  import { forwardRef as forwardRef32 } from "react";
16965
- import { styled as styled91, css as css44 } from "styled-components";
16986
+ import { styled as styled91, css as css45 } from "styled-components";
16966
16987
  import { Root as ToggleGroupRoot2 } from "@radix-ui/react-toggle-group";
16967
16988
  import { isNil as isNil18 } from "@wistia/type-guards";
16968
16989
 
@@ -17000,7 +17021,7 @@ var useSelectedItemStyle = () => {
17000
17021
  };
17001
17022
 
17002
17023
  // src/components/SegmentedControl/SelectedItemIndicator.tsx
17003
- import { styled as styled90, css as css43 } from "styled-components";
17024
+ import { styled as styled90, css as css44 } from "styled-components";
17004
17025
  import { isUndefined as isUndefined5 } from "@wistia/type-guards";
17005
17026
 
17006
17027
  // src/components/SegmentedControl/useSegmentedControlValue.tsx
@@ -17017,7 +17038,7 @@ var useSegmentedControlValue = () => {
17017
17038
 
17018
17039
  // src/components/SegmentedControl/SelectedItemIndicator.tsx
17019
17040
  import { jsx as jsx317 } from "react/jsx-runtime";
17020
- var selectedItemIndicatorStyles = css43`
17041
+ var selectedItemIndicatorStyles = css44`
17021
17042
  background-color: var(--wui-color-bg-fill-white);
17022
17043
  border-radius: var(--wui-border-radius-rounded);
17023
17044
  box-shadow: var(--wui-elevation-01);
@@ -17049,7 +17070,7 @@ var SelectedItemIndicator = () => {
17049
17070
 
17050
17071
  // src/components/SegmentedControl/SegmentedControl.tsx
17051
17072
  import { jsx as jsx318, jsxs as jsxs60 } from "react/jsx-runtime";
17052
- var segmentedControlStyles = css44`
17073
+ var segmentedControlStyles = css45`
17053
17074
  display: inline-flex;
17054
17075
  background-color: var(--wui-color-bg-surface-secondary);
17055
17076
  border-radius: var(--wui-border-radius-rounded);
@@ -17099,11 +17120,11 @@ SegmentedControl.displayName = "SegmentedControl_UI";
17099
17120
 
17100
17121
  // src/components/SegmentedControl/SegmentedControlItem.tsx
17101
17122
  import { forwardRef as forwardRef33, useEffect as useEffect21, useRef as useRef22 } from "react";
17102
- import { styled as styled92, css as css45 } from "styled-components";
17123
+ import { styled as styled92, css as css46 } from "styled-components";
17103
17124
  import { Item as ToggleGroupItem2 } from "@radix-ui/react-toggle-group";
17104
17125
  import { isNotNil as isNotNil36 } from "@wistia/type-guards";
17105
17126
  import { jsxs as jsxs61 } from "react/jsx-runtime";
17106
- var segmentedControlItemStyles = css45`
17127
+ var segmentedControlItemStyles = css46`
17107
17128
  all: unset; /* ToggleGroupItem is a button element */
17108
17129
  align-items: center;
17109
17130
  border-radius: var(--wui-border-radius-rounded);
@@ -17244,7 +17265,7 @@ import {
17244
17265
  ScrollDownButton
17245
17266
  } from "@radix-ui/react-select";
17246
17267
  import { forwardRef as forwardRef34 } from "react";
17247
- import { styled as styled93, css as css46 } from "styled-components";
17268
+ import { styled as styled93, css as css47 } from "styled-components";
17248
17269
  import { jsx as jsx319, jsxs as jsxs62 } from "react/jsx-runtime";
17249
17270
  var StyledTrigger2 = styled93(Trigger3)`
17250
17271
  ${({ $colorScheme }) => getColorScheme($colorScheme)};
@@ -17315,7 +17336,7 @@ var StyledContent3 = styled93(Content3)`
17315
17336
  margin: var(--wui-space-02) 0;
17316
17337
  }
17317
17338
  `;
17318
- var scrollButtonStyles = css46`
17339
+ var scrollButtonStyles = css47`
17319
17340
  align-items: center;
17320
17341
  display: flex;
17321
17342
  justify-content: center;
@@ -17601,25 +17622,25 @@ var Slider = ({
17601
17622
  Slider.displayName = "Slider_UI";
17602
17623
 
17603
17624
  // src/components/Table/Table.tsx
17604
- import { styled as styled97, css as css47 } from "styled-components";
17625
+ import { styled as styled97, css as css48 } from "styled-components";
17605
17626
  import { jsx as jsx323 } from "react/jsx-runtime";
17606
17627
  var StyledTable = styled97.table`
17607
17628
  width: 100%;
17608
17629
  border-collapse: collapse;
17609
17630
 
17610
- ${({ $divided }) => $divided && css47`
17631
+ ${({ $divided }) => $divided && css48`
17611
17632
  tr {
17612
17633
  border-bottom: 1px solid var(--wui-color-border);
17613
17634
  }
17614
17635
  `}
17615
17636
 
17616
- ${({ $striped }) => $striped && css47`
17637
+ ${({ $striped }) => $striped && css48`
17617
17638
  tbody tr:nth-child(even) {
17618
17639
  background-color: var(--wui-color-bg-surface-secondary);
17619
17640
  }
17620
17641
  `}
17621
17642
 
17622
- ${({ $visuallyHiddenHeader }) => $visuallyHiddenHeader && css47`
17643
+ ${({ $visuallyHiddenHeader }) => $visuallyHiddenHeader && css48`
17623
17644
  thead {
17624
17645
  ${visuallyHiddenStyle}
17625
17646
  }
@@ -17662,9 +17683,9 @@ var TableBody = ({ children, ...props }) => {
17662
17683
 
17663
17684
  // src/components/Table/TableCell.tsx
17664
17685
  import { useContext as useContext17 } from "react";
17665
- import { styled as styled99, css as css48 } from "styled-components";
17686
+ import { styled as styled99, css as css49 } from "styled-components";
17666
17687
  import { jsx as jsx325 } from "react/jsx-runtime";
17667
- var sharedStyles = css48`
17688
+ var sharedStyles = css49`
17668
17689
  color: var(--wui-color-text);
17669
17690
  padding: var(--wui-space-02);
17670
17691
  text-align: left;
@@ -17947,9 +17968,9 @@ import {
17947
17968
 
17948
17969
  // src/private/helpers/getBackgroundGradient/getBackgroundGradient.ts
17949
17970
  import { isNotNil as isNotNil41 } from "@wistia/type-guards";
17950
- import { css as css49 } from "styled-components";
17971
+ import { css as css50 } from "styled-components";
17951
17972
  var gradients = {
17952
- defaultDarkOne: css49`
17973
+ defaultDarkOne: css50`
17953
17974
  background-color: #222d66;
17954
17975
  background-image:
17955
17976
  radial-gradient(farthest-corner at top right, #222d66, transparent 70%),
@@ -17957,7 +17978,7 @@ var gradients = {
17957
17978
  radial-gradient(farthest-corner at bottom left, #6b84ff, transparent 57%),
17958
17979
  radial-gradient(farthest-corner at top left, #2949e5, transparent 68%);
17959
17980
  `,
17960
- defaultDarkTwo: css49`
17981
+ defaultDarkTwo: css50`
17961
17982
  background-color: #222d66;
17962
17983
  background-image:
17963
17984
  radial-gradient(farthest-corner at top left, #6b84ff, transparent 100%),
@@ -17965,7 +17986,7 @@ var gradients = {
17965
17986
  radial-gradient(farthest-corner at bottom right, #2949e5, transparent 50%),
17966
17987
  radial-gradient(farthest-corner at top right, #2949e5, transparent 70%);
17967
17988
  `,
17968
- defaultLightOne: css49`
17989
+ defaultLightOne: css50`
17969
17990
  background-color: #ccd5ff;
17970
17991
  background-image:
17971
17992
  radial-gradient(farthest-corner at bottom right, #ccd5ff, transparent 55%),
@@ -17973,13 +17994,13 @@ var gradients = {
17973
17994
  radial-gradient(farthest-corner at top right, #6b84ff, transparent 50%),
17974
17995
  radial-gradient(farthest-corner at bottom left, #f7f8ff, transparent 50%);
17975
17996
  `,
17976
- defaultLightTwo: css49`
17997
+ defaultLightTwo: css50`
17977
17998
  background-color: #ccd5ff;
17978
17999
  background-image:
17979
18000
  radial-gradient(ellipse at top, #ccd5ff, transparent),
17980
18001
  radial-gradient(ellipse at bottom, #6b84ff, transparent);
17981
18002
  `,
17982
- defaultMidOne: css49`
18003
+ defaultMidOne: css50`
17983
18004
  background-color: #6b84ff;
17984
18005
  background-image:
17985
18006
  radial-gradient(farthest-corner at top right, #2949e5, transparent 70%),
@@ -17987,13 +18008,13 @@ var gradients = {
17987
18008
  radial-gradient(farthest-corner at top left, #6b84ff, transparent 80%),
17988
18009
  radial-gradient(farthest-corner at bottom left, #222d66, transparent 57%);
17989
18010
  `,
17990
- defaultMidTwo: css49`
18011
+ defaultMidTwo: css50`
17991
18012
  background-color: #6b84ff;
17992
18013
  background-image:
17993
18014
  radial-gradient(ellipse at top, #2949e5, transparent),
17994
18015
  radial-gradient(ellipse at bottom, #ccd5ff, transparent);
17995
18016
  `,
17996
- green: css49`
18017
+ green: css50`
17997
18018
  background-color: #fafffa;
17998
18019
  background-image:
17999
18020
  radial-gradient(farthest-corner at bottom left, #b0e5a5, transparent 50%),
@@ -18001,7 +18022,7 @@ var gradients = {
18001
18022
  radial-gradient(farthest-corner at top left, #44b62d, transparent 65%),
18002
18023
  radial-gradient(farthest-corner at bottom right, #44b62d, transparent 55%);
18003
18024
  `,
18004
- greenWithPop: css49`
18025
+ greenWithPop: css50`
18005
18026
  background-color: #fafffa;
18006
18027
  background-image:
18007
18028
  radial-gradient(farthest-corner at bottom left, #b0e5a5, transparent 50%),
@@ -18009,7 +18030,7 @@ var gradients = {
18009
18030
  radial-gradient(farthest-corner at top left, #44b62d, transparent 65%),
18010
18031
  radial-gradient(farthest-corner at bottom right, #44b62d, transparent 55%);
18011
18032
  `,
18012
- pink: css49`
18033
+ pink: css50`
18013
18034
  background-color: #fffff0;
18014
18035
  background-image:
18015
18036
  radial-gradient(farthest-corner at bottom left, #ffc7e8, transparent 50%),
@@ -18017,7 +18038,7 @@ var gradients = {
18017
18038
  radial-gradient(farthest-corner at top left, #ff40b3, transparent 65%),
18018
18039
  radial-gradient(farthest-corner at bottom right, #ff40b3, transparent 55%);
18019
18040
  `,
18020
- pinkWithPop: css49`
18041
+ pinkWithPop: css50`
18021
18042
  background-color: #fffff0;
18022
18043
  background-image:
18023
18044
  radial-gradient(farthest-corner at top right, #e0128e, transparent 70%),
@@ -18025,7 +18046,7 @@ var gradients = {
18025
18046
  radial-gradient(farthest-corner at bottom right, #ff40b3, transparent 55%),
18026
18047
  radial-gradient(farthest-corner at bottom left, #2949e5, transparent 50%);
18027
18048
  `,
18028
- playfulGradientOne: css49`
18049
+ playfulGradientOne: css50`
18029
18050
  background-color: #f7f8ff;
18030
18051
  background-image:
18031
18052
  radial-gradient(farthest-corner at top left, #d65cff, transparent 68%),
@@ -18033,7 +18054,7 @@ var gradients = {
18033
18054
  radial-gradient(farthest-corner at bottom left, #ffc7e8, transparent 57%),
18034
18055
  radial-gradient(farthest-corner at top right, #ffcaba, transparent 70%);
18035
18056
  `,
18036
- playfulGradientTwo: css49`
18057
+ playfulGradientTwo: css50`
18037
18058
  background-color: #f7f8ff;
18038
18059
  background-image:
18039
18060
  radial-gradient(farthest-corner at top left, #44b62d, transparent 68%),
@@ -18041,13 +18062,13 @@ var gradients = {
18041
18062
  radial-gradient(farthest-corner at bottom left, #ccd5ff, transparent 57%),
18042
18063
  radial-gradient(farthest-corner at top right, #2949e5, transparent 70%);
18043
18064
  `,
18044
- purple: css49`
18065
+ purple: css50`
18045
18066
  background-color: #f2caff;
18046
18067
  background-image:
18047
18068
  radial-gradient(ellipse at 0% 100%, #f9e5ff, transparent 50%),
18048
18069
  radial-gradient(ellipse at 100% 0%, #e093fa, transparent 70%);
18049
18070
  `,
18050
- purpleWithPop: css49`
18071
+ purpleWithPop: css50`
18051
18072
  background-color: #f2caff;
18052
18073
  background-image:
18053
18074
  radial-gradient(farthest-corner at bottom left, #f2caff, transparent 50%),
@@ -18055,7 +18076,7 @@ var gradients = {
18055
18076
  radial-gradient(farthest-corner at bottom right, #d65cff, transparent 55%),
18056
18077
  radial-gradient(farthest-corner at top right, #2949e5, transparent 70%);
18057
18078
  `,
18058
- yellow: css49`
18079
+ yellow: css50`
18059
18080
  background-color: #fffff0;
18060
18081
  background-image:
18061
18082
  radial-gradient(farthest-corner at bottom left, #eff18d, transparent 50%),
@@ -18063,7 +18084,7 @@ var gradients = {
18063
18084
  radial-gradient(farthest-corner at top left, #e8ec1e, transparent 65%),
18064
18085
  radial-gradient(farthest-corner at bottom right, #e8ec1e, transparent 55%);
18065
18086
  `,
18066
- yellowWithPop: css49`
18087
+ yellowWithPop: css50`
18067
18088
  background-color: #fffff0;
18068
18089
  background-image:
18069
18090
  radial-gradient(farthest-corner at bottom left, #eff18d, transparent 50%),
@@ -18435,8 +18456,8 @@ var Thumbnail = forwardRef37(
18435
18456
  Thumbnail.displayName = "Thumbnail_UI";
18436
18457
 
18437
18458
  // src/components/ThumbnailCollage/ThumbnailCollage.tsx
18438
- import { cloneElement as cloneElement9, Children as Children11 } from "react";
18439
- import { styled as styled109 } from "styled-components";
18459
+ import React from "react";
18460
+ import { css as css51, styled as styled109 } from "styled-components";
18440
18461
  import { isNonEmptyArray } from "@wistia/type-guards";
18441
18462
  import { jsx as jsx336 } from "react/jsx-runtime";
18442
18463
  var ThumbnailCollageContainer = styled109.div`
@@ -18446,12 +18467,20 @@ var ThumbnailCollageContainer = styled109.div`
18446
18467
  display: flex;
18447
18468
  `;
18448
18469
  var StyledThumbnailCollage = styled109.div`
18470
+ --wui-thumbnail-collage-spacing: var(--wui-space-01);
18471
+ border-radius: clamp(var(--wui-border-radius-01), 8cqh, var(--wui-border-radius-05));
18449
18472
  display: grid;
18450
- gap: var(--wui-space-01);
18473
+ gap: var(--wui-thumbnail-collage-spacing);
18451
18474
  width: 100%;
18452
18475
  grid-template-columns: 3fr 2fr;
18453
18476
  grid-template-rows: 1fr 1fr;
18454
18477
 
18478
+ ${({ $hasBackground }) => $hasBackground && css51`
18479
+ background-color: var(--wui-color-bg-surface-secondary);
18480
+ border: 1px solid rgba(0, 0, 0, 0.05);
18481
+ padding: var(--wui-thumbnail-collage-spacing);
18482
+ `}
18483
+
18455
18484
  &:has(:nth-child(1)) {
18456
18485
  grid-template-areas:
18457
18486
  'a a'
@@ -18488,16 +18517,21 @@ var StyledThumbnailCollage = styled109.div`
18488
18517
  height: 100%;
18489
18518
  width: 100%;
18490
18519
  }
18520
+
18521
+ @container (min-width: 200px) {
18522
+ --wui-thumbnail-collage-spacing: var(--wui-space-02);
18523
+ }
18491
18524
  `;
18492
18525
  var ThumbnailCollage = ({
18493
18526
  children = [],
18494
18527
  gradientBackground = "defaultMidOne",
18528
+ hasBackground = false,
18495
18529
  ...props
18496
18530
  }) => {
18497
- const thumbnailArray = Children11.toArray(children);
18531
+ const thumbnailArray = React.Children.toArray(children);
18498
18532
  const truncatedThumbnails = thumbnailArray.slice(0, 3);
18499
18533
  const thumbnails = isNonEmptyArray(thumbnailArray) ? truncatedThumbnails.map((child) => {
18500
- return cloneElement9(child, {
18534
+ return React.cloneElement(child, {
18501
18535
  ...child.props,
18502
18536
  children: void 0
18503
18537
  });
@@ -18516,6 +18550,7 @@ var ThumbnailCollage = ({
18516
18550
  StyledThumbnailCollage,
18517
18551
  {
18518
18552
  $gradientBackground: gradientBackground,
18553
+ $hasBackground: hasBackground,
18519
18554
  "data-wui-thumbnail-collage": true,
18520
18555
  ...props,
18521
18556
  children: thumbnails
@@ -18524,7 +18559,7 @@ var ThumbnailCollage = ({
18524
18559
  };
18525
18560
 
18526
18561
  // src/components/WistiaLogo/WistiaLogo.tsx
18527
- import { styled as styled110, css as css50 } from "styled-components";
18562
+ import { styled as styled110, css as css52 } from "styled-components";
18528
18563
  import { isNotNil as isNotNil44 } from "@wistia/type-guards";
18529
18564
  import { jsx as jsx337, jsxs as jsxs71 } from "react/jsx-runtime";
18530
18565
  var renderBrandmark = (brandmarkColor, iconOnly) => {
@@ -18582,12 +18617,12 @@ var WistiaLogoComponent = styled110.svg`
18582
18617
  ${({ $opticallyCentered, $iconOnly }) => {
18583
18618
  if ($opticallyCentered) {
18584
18619
  if ($iconOnly) {
18585
- return css50`
18620
+ return css52`
18586
18621
  aspect-ratio: 1;
18587
18622
  padding: 11.85% 3.12% 13.91%;
18588
18623
  `;
18589
18624
  }
18590
- return css50`
18625
+ return css52`
18591
18626
  aspect-ratio: 127 / 32;
18592
18627
  `;
18593
18628
  }
@@ -18651,7 +18686,7 @@ WistiaLogo.displayName = "WistiaLogo_UI";
18651
18686
  // src/components/SplitButton/SplitButton.tsx
18652
18687
  import { styled as styled111 } from "styled-components";
18653
18688
  import { isNotNil as isNotNil45 } from "@wistia/type-guards";
18654
- import { cloneElement as cloneElement10 } from "react";
18689
+ import { cloneElement as cloneElement9 } from "react";
18655
18690
  import { jsx as jsx338, jsxs as jsxs72 } from "react/jsx-runtime";
18656
18691
  var StyledSplitButton = styled111.span`
18657
18692
  ${({ $colorScheme }) => getColorScheme($colorScheme)};
@@ -18716,7 +18751,7 @@ var SplitButton = ({
18716
18751
  children: menuItems
18717
18752
  }
18718
18753
  ),
18719
- isNotNil45(secondaryAction) && cloneElement10(secondaryAction, { disabled, size, unstyled, variant, colorScheme })
18754
+ isNotNil45(secondaryAction) && cloneElement9(secondaryAction, { disabled, size, unstyled, variant, colorScheme })
18720
18755
  ] });
18721
18756
  };
18722
18757
  SplitButton.displayName = "SplitButton_UI";