@solostylist/ui-kit 2.0.6 → 2.0.8

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.
Files changed (102) hide show
  1. package/dist/components-DWGB2MCO.js +148 -0
  2. package/dist/{gradients-DSnBONEQ.js → gradients-CUC4WH9i.js} +1 -1
  3. package/dist/main.js +1 -1
  4. package/dist/palettes/index.js +1 -1
  5. package/dist/{palettes-CJLuEy1m.js → palettes-B1trNROL.js} +2 -2
  6. package/dist/s-brand-logo/index.js +1 -1
  7. package/dist/s-brand-logo/s-brand-logo.js +1 -1
  8. package/dist/s-chat-message/s-chat-message.js +1 -1
  9. package/dist/s-comment-message/s-comment-message.js +1 -1
  10. package/dist/s-file-dropzone/s-file-dropzone.js +1 -1
  11. package/dist/s-image-viewer/image-viewer-thumbnail-dock.js +1 -1
  12. package/dist/s-product-gallery/index.d.ts +1 -1
  13. package/dist/s-product-gallery/s-product-gallery.d.ts +28 -11
  14. package/dist/s-product-gallery/s-product-gallery.js +302 -246
  15. package/dist/s-review/s-review.js +1 -1
  16. package/dist/s-segmented-control/s-segmented-control.js +3 -3
  17. package/dist/s-stripe/stripe-input.js +1 -1
  18. package/dist/s-theme-demo/theme-demo-color-ramps-section.js +1 -1
  19. package/dist/s-theme-provider/s-theme-provider.js +10 -10
  20. package/dist/theme/component-augmentation.d.ts +1 -1
  21. package/dist/theme/components/accordion-details.d.ts +2 -8
  22. package/dist/theme/components/accordion-summary.d.ts +2 -1036
  23. package/dist/theme/components/accordion.d.ts +2 -43
  24. package/dist/theme/components/alert.d.ts +2 -4160
  25. package/dist/theme/components/app-bar.d.ts +2 -24
  26. package/dist/theme/components/autocomplete.d.ts +2 -78
  27. package/dist/theme/components/avatar.d.ts +2 -19
  28. package/dist/theme/components/avatar.js +20 -6
  29. package/dist/theme/components/backdrop.d.ts +2 -12
  30. package/dist/theme/components/button-base.d.ts +2 -7
  31. package/dist/theme/components/button.d.ts +2 -1117
  32. package/dist/theme/components/card-actions.d.ts +2 -7
  33. package/dist/theme/components/card-content.d.ts +2 -7
  34. package/dist/theme/components/card-header.d.ts +2 -7
  35. package/dist/theme/components/card.d.ts +2 -2046
  36. package/dist/theme/components/card.js +1 -1
  37. package/dist/theme/components/checkbox.d.ts +2 -1038
  38. package/dist/theme/components/checkbox.js +1 -1
  39. package/dist/theme/components/chip.d.ts +2 -2
  40. package/dist/theme/components/components.d.ts +68 -0
  41. package/dist/theme/components/components.js +2 -73
  42. package/dist/theme/components/container.d.ts +2 -5
  43. package/dist/theme/components/css-baseline.d.ts +2 -9
  44. package/dist/theme/components/date-calendar.d.ts +2 -13
  45. package/dist/theme/components/day-calendar.d.ts +2 -25
  46. package/dist/theme/components/dialog-actions.d.ts +2 -12
  47. package/dist/theme/components/dialog-content.d.ts +2 -13
  48. package/dist/theme/components/dialog-title.d.ts +2 -21
  49. package/dist/theme/components/dialog.d.ts +2 -25
  50. package/dist/theme/components/drawer.d.ts +2 -13
  51. package/dist/theme/components/form-control.d.ts +2 -7
  52. package/dist/theme/components/form-label.d.ts +2 -20
  53. package/dist/theme/components/icon-button.d.ts +2 -1100
  54. package/dist/theme/components/icon.d.ts +2 -17
  55. package/dist/theme/components/input-adornment.d.ts +2 -19
  56. package/dist/theme/components/input-base.d.ts +2 -18
  57. package/dist/theme/components/linear-progress.d.ts +2 -1023
  58. package/dist/theme/components/link.d.ts +2 -42
  59. package/dist/theme/components/list-item-button.d.ts +2 -120
  60. package/dist/theme/components/list-item-icon.d.ts +2 -7
  61. package/dist/theme/components/list-item-text.d.ts +2 -22
  62. package/dist/theme/components/list-item.d.ts +2 -129
  63. package/dist/theme/components/list-subheader.d.ts +2 -20
  64. package/dist/theme/components/list.d.ts +2 -10
  65. package/dist/theme/components/menu-item.d.ts +2 -8
  66. package/dist/theme/components/menu.d.ts +2 -20
  67. package/dist/theme/components/month-calendar.d.ts +2 -1088
  68. package/dist/theme/components/multi-section-digital-clock-section.d.ts +2 -2
  69. package/dist/theme/components/outlined-input.d.ts +2 -113
  70. package/dist/theme/components/pagination-item.d.ts +2 -1085
  71. package/dist/theme/components/pagination.d.ts +2 -14
  72. package/dist/theme/components/paper.d.ts +2 -5
  73. package/dist/theme/components/picker-day.d.ts +2 -1055
  74. package/dist/theme/components/pickers-arrow-switcher.d.ts +2 -12
  75. package/dist/theme/components/pickers-calendar-header.d.ts +2 -83
  76. package/dist/theme/components/popover.d.ts +2 -18
  77. package/dist/theme/components/rating.d.ts +2 -19
  78. package/dist/theme/components/select.d.ts +2 -31
  79. package/dist/theme/components/skeleton.d.ts +2 -2
  80. package/dist/theme/components/slider.d.ts +2 -0
  81. package/dist/theme/components/slot.d.ts +7 -0
  82. package/dist/theme/components/slot.js +0 -0
  83. package/dist/theme/components/step-connector.d.ts +2 -12
  84. package/dist/theme/components/step-icon.d.ts +2 -1034
  85. package/dist/theme/components/step-label.d.ts +2 -1025
  86. package/dist/theme/components/svg-icon.d.ts +2 -31
  87. package/dist/theme/components/switch.d.ts +2 -1027
  88. package/dist/theme/components/tab.d.ts +2 -30
  89. package/dist/theme/components/table-cell.d.ts +2 -12
  90. package/dist/theme/components/table-pagination.d.ts +2 -14
  91. package/dist/theme/components/tabs.d.ts +2 -36
  92. package/dist/theme/components/toggle-button-group.d.ts +2 -12
  93. package/dist/theme/components/toggle-button.d.ts +2 -1148
  94. package/dist/theme/components/tooltip.d.ts +2 -3
  95. package/dist/theme/components/year-calendar.d.ts +2 -1090
  96. package/dist/theme/theme-primitives.d.ts +2 -0
  97. package/dist/theme/theme-primitives.js +1 -1
  98. package/dist/{theme-primitives-CRfnMsNy.js → theme-primitives-DXekeATD.js} +29 -26
  99. package/package.json +4 -2
  100. /package/dist/{colors-CNjL5fhq.js → colors-DscJqo7m.js} +0 -0
  101. /package/dist/{s-brand-logo-CErW9Slg.js → s-brand-logo-Gi1MKnv9.js} +0 -0
  102. /package/dist/{utils-CMeAWSRO.js → utils-CXRJYVCd.js} +0 -0
@@ -0,0 +1,148 @@
1
+ import { MuiYearCalendar as e } from "./theme/components/year-calendar.js";
2
+ import { MuiTooltip as t } from "./theme/components/tooltip.js";
3
+ import { MuiToggleButton as n } from "./theme/components/toggle-button.js";
4
+ import { MuiToggleButtonGroup as r } from "./theme/components/toggle-button-group.js";
5
+ import { MuiTabs as i } from "./theme/components/tabs.js";
6
+ import { MuiTablePagination as ee } from "./theme/components/table-pagination.js";
7
+ import { MuiTableCell as a } from "./theme/components/table-cell.js";
8
+ import { MuiTab as o } from "./theme/components/tab.js";
9
+ import { MuiSwitch as s } from "./theme/components/switch.js";
10
+ import { MuiSvgIcon as c } from "./theme/components/svg-icon.js";
11
+ import { MuiStepLabel as l } from "./theme/components/step-label.js";
12
+ import { MuiStepIcon as u } from "./theme/components/step-icon.js";
13
+ import { MuiStepConnector as d } from "./theme/components/step-connector.js";
14
+ import { MuiSlider as f } from "./theme/components/slider.js";
15
+ import { MuiSkeleton as p } from "./theme/components/skeleton.js";
16
+ import { MuiSelect as m } from "./theme/components/select.js";
17
+ import { MuiRating as h } from "./theme/components/rating.js";
18
+ import { MuiPopover as g } from "./theme/components/popover.js";
19
+ import { MuiPickersCalendarHeader as _ } from "./theme/components/pickers-calendar-header.js";
20
+ import { MuiPickersArrowSwitcher as v } from "./theme/components/pickers-arrow-switcher.js";
21
+ import { MuiPickerDay as y } from "./theme/components/picker-day.js";
22
+ import { MuiPaper as b } from "./theme/components/paper.js";
23
+ import { MuiPagination as x } from "./theme/components/pagination.js";
24
+ import { MuiPaginationItem as S } from "./theme/components/pagination-item.js";
25
+ import { MuiOutlinedInput as C } from "./theme/components/outlined-input.js";
26
+ import { MuiMultiSectionDigitalClockSection as w } from "./theme/components/multi-section-digital-clock-section.js";
27
+ import { MuiMonthCalendar as T } from "./theme/components/month-calendar.js";
28
+ import { MuiMenu as E } from "./theme/components/menu.js";
29
+ import { MuiMenuItem as D } from "./theme/components/menu-item.js";
30
+ import { MuiList as O } from "./theme/components/list.js";
31
+ import { MuiListSubheader as k } from "./theme/components/list-subheader.js";
32
+ import { MuiListItemButton as A } from "./theme/components/list-item-button.js";
33
+ import { MuiListItem as j } from "./theme/components/list-item.js";
34
+ import { MuiListItemText as M } from "./theme/components/list-item-text.js";
35
+ import { MuiListItemIcon as N } from "./theme/components/list-item-icon.js";
36
+ import { MuiLink as P } from "./theme/components/link.js";
37
+ import { MuiLinearProgress as F } from "./theme/components/linear-progress.js";
38
+ import { MuiInputBase as I } from "./theme/components/input-base.js";
39
+ import { MuiInputAdornment as L } from "./theme/components/input-adornment.js";
40
+ import { MuiIcon as R } from "./theme/components/icon.js";
41
+ import { MuiIconButton as z } from "./theme/components/icon-button.js";
42
+ import { MuiFormLabel as B } from "./theme/components/form-label.js";
43
+ import { MuiFormControl as te } from "./theme/components/form-control.js";
44
+ import { MuiDrawer as V } from "./theme/components/drawer.js";
45
+ import { MuiDialog as H } from "./theme/components/dialog.js";
46
+ import { MuiDialogTitle as U } from "./theme/components/dialog-title.js";
47
+ import { MuiDialogContent as W } from "./theme/components/dialog-content.js";
48
+ import { MuiDialogActions as G } from "./theme/components/dialog-actions.js";
49
+ import { MuiDayCalendar as K } from "./theme/components/day-calendar.js";
50
+ import { MuiDateCalendar as q } from "./theme/components/date-calendar.js";
51
+ import { MuiCssBaseline as J } from "./theme/components/css-baseline.js";
52
+ import { MuiContainer as Y } from "./theme/components/container.js";
53
+ import { MuiAccordion as X } from "./theme/components/accordion.js";
54
+ import { MuiAccordionDetails as Z } from "./theme/components/accordion-details.js";
55
+ import { MuiAccordionSummary as Q } from "./theme/components/accordion-summary.js";
56
+ import { MuiAlert as ne } from "./theme/components/alert.js";
57
+ import { MuiAppBar as re } from "./theme/components/app-bar.js";
58
+ import { MuiAutocomplete as ie } from "./theme/components/autocomplete.js";
59
+ import { MuiAvatar as ae } from "./theme/components/avatar.js";
60
+ import { MuiBackdrop as oe } from "./theme/components/backdrop.js";
61
+ import { MuiButton as se } from "./theme/components/button.js";
62
+ import { MuiButtonBase as ce } from "./theme/components/button-base.js";
63
+ import { MuiCard as le } from "./theme/components/card.js";
64
+ import { MuiCardActions as ue } from "./theme/components/card-actions.js";
65
+ import { MuiCardContent as de } from "./theme/components/card-content.js";
66
+ import { MuiCardHeader as fe } from "./theme/components/card-header.js";
67
+ import { MuiCheckbox as pe } from "./theme/components/checkbox.js";
68
+ import { MuiChip as me } from "./theme/components/chip.js";
69
+ //#region \0rolldown/runtime.js
70
+ var $ = Object.defineProperty, he = /* @__PURE__ */ ((e, t) => {
71
+ let n = {};
72
+ for (var r in e) $(n, r, {
73
+ get: e[r],
74
+ enumerable: !0
75
+ });
76
+ return t || $(n, Symbol.toStringTag, { value: "Module" }), n;
77
+ })({
78
+ MuiAccordion: () => X,
79
+ MuiAccordionDetails: () => Z,
80
+ MuiAccordionSummary: () => Q,
81
+ MuiAlert: () => ne,
82
+ MuiAppBar: () => re,
83
+ MuiAutocomplete: () => ie,
84
+ MuiAvatar: () => ae,
85
+ MuiBackdrop: () => oe,
86
+ MuiButton: () => se,
87
+ MuiButtonBase: () => ce,
88
+ MuiCard: () => le,
89
+ MuiCardActions: () => ue,
90
+ MuiCardContent: () => de,
91
+ MuiCardHeader: () => fe,
92
+ MuiCheckbox: () => pe,
93
+ MuiChip: () => me,
94
+ MuiContainer: () => Y,
95
+ MuiCssBaseline: () => J,
96
+ MuiDateCalendar: () => q,
97
+ MuiDayCalendar: () => K,
98
+ MuiDialog: () => H,
99
+ MuiDialogActions: () => G,
100
+ MuiDialogContent: () => W,
101
+ MuiDialogTitle: () => U,
102
+ MuiDrawer: () => V,
103
+ MuiFormControl: () => te,
104
+ MuiFormLabel: () => B,
105
+ MuiIcon: () => R,
106
+ MuiIconButton: () => z,
107
+ MuiInputAdornment: () => L,
108
+ MuiInputBase: () => I,
109
+ MuiLinearProgress: () => F,
110
+ MuiLink: () => P,
111
+ MuiList: () => O,
112
+ MuiListItem: () => j,
113
+ MuiListItemButton: () => A,
114
+ MuiListItemIcon: () => N,
115
+ MuiListItemText: () => M,
116
+ MuiListSubheader: () => k,
117
+ MuiMenu: () => E,
118
+ MuiMenuItem: () => D,
119
+ MuiMonthCalendar: () => T,
120
+ MuiMultiSectionDigitalClockSection: () => w,
121
+ MuiOutlinedInput: () => C,
122
+ MuiPagination: () => x,
123
+ MuiPaginationItem: () => S,
124
+ MuiPaper: () => b,
125
+ MuiPickerDay: () => y,
126
+ MuiPickersArrowSwitcher: () => v,
127
+ MuiPickersCalendarHeader: () => _,
128
+ MuiPopover: () => g,
129
+ MuiRating: () => h,
130
+ MuiSelect: () => m,
131
+ MuiSkeleton: () => p,
132
+ MuiSlider: () => f,
133
+ MuiStepConnector: () => d,
134
+ MuiStepIcon: () => u,
135
+ MuiStepLabel: () => l,
136
+ MuiSvgIcon: () => c,
137
+ MuiSwitch: () => s,
138
+ MuiTab: () => o,
139
+ MuiTableCell: () => a,
140
+ MuiTablePagination: () => ee,
141
+ MuiTabs: () => i,
142
+ MuiToggleButton: () => n,
143
+ MuiToggleButtonGroup: () => r,
144
+ MuiTooltip: () => t,
145
+ MuiYearCalendar: () => e
146
+ });
147
+ //#endregion
148
+ export { he as t };
@@ -1,4 +1,4 @@
1
- import { n as e, o as t, r as n, s as r } from "./colors-CNjL5fhq.js";
1
+ import { n as e, o as t, r as n, s as r } from "./colors-DscJqo7m.js";
2
2
  //#region ../core/dist/alpha.js
3
3
  var i = {
4
4
  0: "rgba(0,0,0,0)",
package/dist/main.js CHANGED
@@ -1,2 +1,2 @@
1
- import { n as e, r as t, t as n } from "./palettes-CJLuEy1m.js";
1
+ import { n as e, r as t, t as n } from "./palettes-B1trNROL.js";
2
2
  export { e as PALETTE_OPTIONS, t as VARIANTS, n as paletteThemeOptions };
@@ -1,2 +1,2 @@
1
- import { n as e, r as t, t as n } from "../palettes-CJLuEy1m.js";
1
+ import { n as e, r as t, t as n } from "../palettes-B1trNROL.js";
2
2
  export { e as PALETTE_OPTIONS, t as VARIANTS, n as paletteThemeOptions };
@@ -1,5 +1,5 @@
1
- import { g as e, h as t } from "./colors-CNjL5fhq.js";
2
- import { t as n } from "./gradients-DSnBONEQ.js";
1
+ import { g as e, h as t } from "./colors-DscJqo7m.js";
2
+ import { t as n } from "./gradients-CUC4WH9i.js";
3
3
  import { alpha as r } from "@mui/material/styles";
4
4
  //#region ../core/dist/palettes/aurora.js
5
5
  var i = {
@@ -1,2 +1,2 @@
1
- import { t as e } from "../s-brand-logo-CErW9Slg.js";
1
+ import { t as e } from "../s-brand-logo-Gi1MKnv9.js";
2
2
  export { e as SBrandLogo, e as default };
@@ -1,2 +1,2 @@
1
- import { t as e } from "../s-brand-logo-CErW9Slg.js";
1
+ import { t as e } from "../s-brand-logo-Gi1MKnv9.js";
2
2
  export { e as SBrandLogo, e as default };
@@ -1,4 +1,4 @@
1
- import { n as e, r as t } from "../utils-CMeAWSRO.js";
1
+ import { n as e, r as t } from "../utils-CXRJYVCd.js";
2
2
  import { toSxArray as n } from "../utils/sx.js";
3
3
  import { SLazyImage as r } from "../s-lazy-image/s-lazy-image.js";
4
4
  import { SIconButton as i } from "../s-icon-button/s-icon-button.js";
@@ -1,4 +1,4 @@
1
- import { i as e } from "../utils-CMeAWSRO.js";
1
+ import { i as e } from "../utils-CXRJYVCd.js";
2
2
  import { toSxArray as t } from "../utils/sx.js";
3
3
  import { SSkeleton as n } from "../s-skeleton/s-skeleton.js";
4
4
  import { SAvatar as r } from "../s-avatar/s-avatar.js";
@@ -1,4 +1,4 @@
1
- import { t as e } from "../utils-CMeAWSRO.js";
1
+ import { t as e } from "../utils-CXRJYVCd.js";
2
2
  import { toSxArray as t } from "../utils/sx.js";
3
3
  import { SForm as n } from "../s-form/s-form.js";
4
4
  import { SFileIcon as ee } from "../s-file-icon/s-file-icon.js";
@@ -1,4 +1,4 @@
1
- import { r as e } from "../theme-primitives-CRfnMsNy.js";
1
+ import { r as e } from "../theme-primitives-DXekeATD.js";
2
2
  import { DefaultMediaItem as t } from "./default-media-item.js";
3
3
  import "react";
4
4
  import { jsx as n } from "react/jsx-runtime";
@@ -1,3 +1,3 @@
1
1
  export { default, default as SProductGallery } from './s-product-gallery';
2
- export type { SProductGalleryCarouselSlotProps, SProductGalleryImageItem, SProductGalleryItem, SProductGalleryOwnerState, SProductGalleryProps, SProductGallerySlotProps, SProductGallerySlots, SProductGalleryThumbnailOwnerState, SProductGalleryVideoItem, } from './s-product-gallery';
2
+ export type { SProductGalleryImageItem, SProductGalleryItem, SProductGalleryOwnerState, SProductGalleryProps, SProductGallerySlotProps, SProductGallerySlots, SProductGalleryThumbnailOwnerState, SProductGalleryThumbnailsPosition, SProductGalleryVariant, SProductGalleryVideoItem, } from './s-product-gallery';
3
3
  export type {} from '../theme/component-augmentation';
@@ -1,5 +1,5 @@
1
1
  import { BoxProps, ButtonBaseProps } from '@mui/material';
2
- import { SCarouselProps } from '../s-carousel';
2
+ import { SIconButtonProps } from '../s-icon-button';
3
3
  import { SLazyImageProps } from '../s-lazy-image';
4
4
  import { OwnerStateSlotProps } from '../utils/slots';
5
5
  import * as React from 'react';
@@ -35,6 +35,10 @@ export type SProductGalleryVideoItem = SProductGalleryVideoItemBase & ({
35
35
  });
36
36
  /** A single image or video in the product gallery. */
37
37
  export type SProductGalleryItem = SProductGalleryImageItem | SProductGalleryVideoItem;
38
+ /** Visual density preset for the product gallery. */
39
+ export type SProductGalleryVariant = 'standard' | 'compact';
40
+ /** Placement of the thumbnail rail relative to the stage. */
41
+ export type SProductGalleryThumbnailsPosition = 'bottom' | 'start' | 'end';
38
42
  /** Props for <SProductGallery>. */
39
43
  export interface SProductGalleryProps extends Omit<BoxProps, 'children' | 'component' | 'defaultValue' | 'onChange'> {
40
44
  /**
@@ -44,6 +48,8 @@ export interface SProductGalleryProps extends Omit<BoxProps, 'children' | 'compo
44
48
  aspectRatio?: number | string;
45
49
  /** Initially selected item id, for uncontrolled usage. Defaults to the first item. */
46
50
  defaultValue?: string;
51
+ /** Accessible text shown when there are no items to display. */
52
+ emptyText?: string;
47
53
  /** Returns the accessible name for a thumbnail button. */
48
54
  getThumbnailAriaLabel?: (item: SProductGalleryItem, index: number, total: number) => string;
49
55
  /** Media shown in the stage and the thumbnail rail. */
@@ -56,10 +62,12 @@ export interface SProductGalleryProps extends Omit<BoxProps, 'children' | 'compo
56
62
  slotProps?: SProductGallerySlotProps;
57
63
  /** Accessible name for the thumbnail rail. */
58
64
  thumbnailsLabel?: string;
59
- /** Thumbnails visible at once on wide viewports. Halves below the `sm` breakpoint. */
60
- thumbnailsToShow?: number;
65
+ /** Placement of the thumbnail rail. When set to 'start' or 'end', collapses to bottom on mobile. */
66
+ thumbnailsPosition?: SProductGalleryThumbnailsPosition;
61
67
  /** Selected item id, for controlled usage. */
62
68
  value?: string;
69
+ /** Visual preset for density. */
70
+ variant?: SProductGalleryVariant;
63
71
  }
64
72
  export interface SProductGalleryOwnerState extends SProductGalleryProps {
65
73
  /** Resolved fixed stage aspect ratio. */
@@ -68,9 +76,11 @@ export interface SProductGalleryOwnerState extends SProductGalleryProps {
68
76
  activeItem: SProductGalleryItem | null;
69
77
  /** Index of the active item, or `-1` when there is nothing to show. */
70
78
  activeIndex: number;
79
+ emptyText: string;
71
80
  thumbnailsLabel: string;
72
- thumbnailsToShow: number;
81
+ thumbnailsPosition: SProductGalleryThumbnailsPosition;
73
82
  value: string;
83
+ variant: SProductGalleryVariant;
74
84
  }
75
85
  /** Owner state handed to the `thumbnail` slot. */
76
86
  export interface SProductGalleryThumbnailOwnerState extends SProductGalleryOwnerState {
@@ -79,12 +89,12 @@ export interface SProductGalleryThumbnailOwnerState extends SProductGalleryOwner
79
89
  selected: boolean;
80
90
  }
81
91
  export interface SProductGallerySlots {
82
- /** The embla-backed thumbnail carousel. */
83
- carousel?: React.ElementType;
84
- /** Shared media wrapper inside the stage. */
85
- media?: React.ElementType;
92
+ /** Placeholder surface when items list is empty. */
93
+ empty?: React.ElementType;
86
94
  /** Stage image renderer. */
87
95
  image?: React.ElementType;
96
+ /** Shared media wrapper inside the stage. */
97
+ media?: React.ElementType;
88
98
  root?: React.ElementType;
89
99
  /** Aspect-ratio box holding the active media. */
90
100
  stage?: React.ElementType;
@@ -94,18 +104,25 @@ export interface SProductGallerySlots {
94
104
  thumbnails?: React.ElementType;
95
105
  /** Stage video renderer. */
96
106
  video?: React.ElementType;
107
+ /** Wrapper around video element and play button. */
108
+ videoFrame?: React.ElementType;
109
+ /** Overlay play/pause indicator badge on video thumbnails. */
110
+ videoIndicator?: React.ElementType;
111
+ /** Center play button for stage video. */
112
+ videoPlayButton?: React.ElementType;
97
113
  }
98
- export type SProductGalleryCarouselSlotProps = Omit<SCarouselProps, 'apiRef' | 'autoplay' | 'autoplaySpeed' | 'centerMode' | 'centerPadding' | 'children' | 'infinite' | 'responsive' | 'slidesToShow' | 'spaceBetween'>;
99
114
  export interface SProductGallerySlotProps {
100
- carousel?: OwnerStateSlotProps<SProductGalleryCarouselSlotProps, SProductGalleryOwnerState>;
115
+ empty?: OwnerStateSlotProps<Omit<BoxProps, 'children'>, SProductGalleryOwnerState>;
101
116
  image?: OwnerStateSlotProps<Omit<SLazyImageProps, 'alt' | 'src'>, SProductGalleryOwnerState>;
102
117
  media?: OwnerStateSlotProps<Omit<BoxProps, 'children'>, SProductGalleryOwnerState>;
103
118
  root?: OwnerStateSlotProps<Omit<BoxProps, 'children' | 'component'>, SProductGalleryOwnerState>;
104
119
  stage?: OwnerStateSlotProps<Omit<BoxProps, 'children'>, SProductGalleryOwnerState>;
105
120
  thumbnail?: OwnerStateSlotProps<Omit<ButtonBaseProps, 'children'>, SProductGalleryThumbnailOwnerState>;
106
121
  thumbnails?: OwnerStateSlotProps<Omit<BoxProps, 'children'>, SProductGalleryOwnerState>;
107
- /** Native video props. `children` can provide caption or subtitle `<track>` elements. */
108
122
  video?: OwnerStateSlotProps<Omit<React.ComponentPropsWithRef<'video'>, 'poster' | 'src'>, SProductGalleryOwnerState>;
123
+ videoFrame?: OwnerStateSlotProps<Omit<BoxProps, 'children'>, SProductGalleryOwnerState>;
124
+ videoIndicator?: OwnerStateSlotProps<Omit<BoxProps, 'children'>, SProductGalleryOwnerState>;
125
+ videoPlayButton?: OwnerStateSlotProps<Omit<SIconButtonProps, 'children'>, SProductGalleryOwnerState>;
109
126
  }
110
127
  /**
111
128
  * Product media viewer: one stage plus a scrollable thumbnail rail, with both