@thewhatmatters/wmds 0.4.31 → 0.4.33

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 (220) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/bin/wmds-check.mjs +38 -0
  3. package/dist/colors.css +2 -1
  4. package/dist/components/atoms/Checkbox/Checkbox.d.ts.map +1 -1
  5. package/dist/components/atoms/Checkbox/Checkbox.js +73 -72
  6. package/dist/components/atoms/Input/Input.d.ts.map +1 -1
  7. package/dist/components/atoms/Input/Input.js +44 -49
  8. package/dist/components/atoms/Input/inputShellStyles.js +2 -2
  9. package/dist/components/atoms/Radio/Radio.d.ts.map +1 -1
  10. package/dist/components/atoms/Radio/Radio.js +61 -60
  11. package/dist/components/atoms/Switch/Switch.d.ts.map +1 -1
  12. package/dist/components/atoms/Switch/Switch.js +31 -30
  13. package/dist/components/atoms/TextArea/TextArea.d.ts.map +1 -1
  14. package/dist/components/atoms/TextArea/TextArea.js +56 -55
  15. package/dist/components/atoms/TextArea/textareaShellStyles.js +2 -2
  16. package/dist/components/atoms/inputShared/InputStatusBanner.d.ts +5 -0
  17. package/dist/components/atoms/inputShared/InputStatusBanner.d.ts.map +1 -1
  18. package/dist/components/atoms/inputShared/InputStatusBanner.js +15 -4
  19. package/dist/components/molecules/Card/Card.d.ts +10 -1
  20. package/dist/components/molecules/Card/Card.d.ts.map +1 -1
  21. package/dist/components/molecules/Card/Card.js +56 -43
  22. package/dist/components/molecules/CheckboxGroup/CheckboxGroup.d.ts.map +1 -1
  23. package/dist/components/molecules/CheckboxGroup/CheckboxGroup.js +53 -53
  24. package/dist/components/molecules/CopyField/copyFieldStyles.d.ts.map +1 -1
  25. package/dist/components/molecules/CopyField/copyFieldStyles.js +1 -1
  26. package/dist/components/molecules/ErrorSummary/ErrorSummary.d.ts +32 -0
  27. package/dist/components/molecules/ErrorSummary/ErrorSummary.d.ts.map +1 -0
  28. package/dist/components/molecules/ErrorSummary/ErrorSummary.js +37 -0
  29. package/dist/components/molecules/ErrorSummary/errorSummaryStyles.d.ts +12 -0
  30. package/dist/components/molecules/ErrorSummary/errorSummaryStyles.d.ts.map +1 -0
  31. package/dist/components/molecules/ErrorSummary/errorSummaryStyles.js +5 -0
  32. package/dist/components/molecules/IntakeForm/IntakeForm.d.ts.map +1 -1
  33. package/dist/components/molecules/IntakeForm/IntakeForm.js +4 -6
  34. package/dist/components/molecules/PromptBar/promptBarStyles.d.ts +3 -2
  35. package/dist/components/molecules/PromptBar/promptBarStyles.d.ts.map +1 -1
  36. package/dist/components/molecules/PromptBar/promptBarStyles.js +2 -2
  37. package/dist/components/molecules/RadioGroup/RadioGroup.d.ts.map +1 -1
  38. package/dist/components/molecules/RadioGroup/RadioGroup.js +53 -53
  39. package/dist/components/molecules/Search/Search.d.ts +5 -0
  40. package/dist/components/molecules/Search/Search.d.ts.map +1 -1
  41. package/dist/components/molecules/Search/Search.js +14 -13
  42. package/dist/components/molecules/Search/searchStyles.d.ts +2 -1
  43. package/dist/components/molecules/Search/searchStyles.d.ts.map +1 -1
  44. package/dist/components/molecules/Search/searchStyles.js +4 -4
  45. package/dist/components/organisms/Carousel/Carousel.d.ts +21 -1
  46. package/dist/components/organisms/Carousel/Carousel.d.ts.map +1 -1
  47. package/dist/components/organisms/Carousel/Carousel.js +319 -190
  48. package/dist/components/organisms/Carousel/carouselStyles.d.ts +9 -0
  49. package/dist/components/organisms/Carousel/carouselStyles.d.ts.map +1 -1
  50. package/dist/components/organisms/Carousel/carouselStyles.js +12 -3
  51. package/dist/index.d.ts +2 -1
  52. package/dist/index.d.ts.map +1 -1
  53. package/dist/index.js +99 -97
  54. package/dist/lib/compositionAudit.d.ts.map +1 -1
  55. package/dist/stateColors.css +2 -1
  56. package/dist/styles.css +1 -1
  57. package/docs/components.md +2 -1
  58. package/docs/exports.json +14 -1
  59. package/docs/patterns/components-accordion--flush.tsx +1 -1
  60. package/docs/patterns/components-appshell--portal-dashboard-pattern.tsx +1 -1
  61. package/docs/patterns/components-avatar--dropdown-row.tsx +1 -1
  62. package/docs/patterns/components-badge--outline-tags.tsx +1 -1
  63. package/docs/patterns/components-badge--status-pill.tsx +1 -1
  64. package/docs/patterns/components-badge--with-avatar.tsx +1 -1
  65. package/docs/patterns/components-band--page-in-bands.tsx +1 -1
  66. package/docs/patterns/components-breadcrumb--editorial.tsx +1 -1
  67. package/docs/patterns/components-breadcrumb--long-path.tsx +1 -1
  68. package/docs/patterns/components-breadcrumb--path.tsx +1 -1
  69. package/docs/patterns/components-breadcrumb--router-links.tsx +1 -1
  70. package/docs/patterns/components-button-button--copy-button.tsx +1 -1
  71. package/docs/patterns/components-button-button--destructive-action.tsx +1 -1
  72. package/docs/patterns/components-button-button--external-link.tsx +1 -1
  73. package/docs/patterns/components-button-button--ghost-action.tsx +1 -1
  74. package/docs/patterns/components-button-button--inverse-action.tsx +1 -1
  75. package/docs/patterns/components-button-button--link-render.tsx +1 -1
  76. package/docs/patterns/components-button-button--multi-state-badge.tsx +1 -1
  77. package/docs/patterns/components-button-button--outline-mono.tsx +1 -1
  78. package/docs/patterns/components-button-button--primary-action.tsx +1 -1
  79. package/docs/patterns/components-button-button--row-hug.tsx +1 -1
  80. package/docs/patterns/components-button-button--row-layout.tsx +1 -1
  81. package/docs/patterns/components-button-button--secondary-action.tsx +1 -1
  82. package/docs/patterns/components-button-button--suggestion-pills.tsx +1 -1
  83. package/docs/patterns/components-button-button--with-count.tsx +1 -1
  84. package/docs/patterns/components-button-button--with-icon.tsx +1 -1
  85. package/docs/patterns/components-button-floatingactionbutton--vertical-actions.tsx +1 -1
  86. package/docs/patterns/components-calembed--pattern-skip-in-footer.tsx +1 -1
  87. package/docs/patterns/components-card-card--body-slot-occupancy-history.tsx +1 -1
  88. package/docs/patterns/components-card-card--headerless-media.tsx +1 -1
  89. package/docs/patterns/components-card-card--outlined-layout.tsx +1 -1
  90. package/docs/patterns/components-card-card--pinned-height.tsx +1 -1
  91. package/docs/patterns/components-card-card--terminal-frame.tsx +1 -1
  92. package/docs/patterns/components-card-selectablecard--selectable-cards-pattern.tsx +1 -1
  93. package/docs/patterns/components-carousel--image-carousel.tsx +1 -1
  94. package/docs/patterns/components-chart--audience-activity-heatmap.tsx +1 -1
  95. package/docs/patterns/components-chart--cartesian-no-data-gaps.tsx +1 -1
  96. package/docs/patterns/components-chart--occupancy-history-in-card.tsx +1 -1
  97. package/docs/patterns/components-chart--occupancy-in-card.tsx +1 -1
  98. package/docs/patterns/components-chart--post-reach-distribution.tsx +1 -1
  99. package/docs/patterns/components-chart--ranked-audience-breakdown.tsx +1 -1
  100. package/docs/patterns/components-chart--revenue-by-line.tsx +1 -1
  101. package/docs/patterns/components-chart--segmented-ring-pattern.tsx +1 -1
  102. package/docs/patterns/components-chart--unit-grid-composition.tsx +1 -1
  103. package/docs/patterns/components-chatdock--pattern-chat-dock.tsx +1 -1
  104. package/docs/patterns/components-chatdock--pattern-start-project-gate.tsx +1 -1
  105. package/docs/patterns/components-chatqa--pattern-qa-with-reply.tsx +1 -1
  106. package/docs/patterns/components-checkbox-checkbox--default.tsx +1 -1
  107. package/docs/patterns/components-checkbox-checkbox--with-count.tsx +1 -1
  108. package/docs/patterns/components-checkbox-checkbox--with-description.tsx +1 -1
  109. package/docs/patterns/components-checkbox-checkboxgroup--default.tsx +1 -1
  110. package/docs/patterns/components-checkbox-checkboxgroup--option-counts.tsx +1 -1
  111. package/docs/patterns/components-copyfield--clipboard-blocked.tsx +1 -1
  112. package/docs/patterns/components-copyfield--copied.tsx +1 -1
  113. package/docs/patterns/components-copyfield--copy-key.tsx +1 -1
  114. package/docs/patterns/components-copyfield--on-navy.tsx +1 -1
  115. package/docs/patterns/components-descriptionlist--details.tsx +1 -1
  116. package/docs/patterns/components-descriptionlist--post-metadata.tsx +1 -1
  117. package/docs/patterns/components-dialog--alert-dialog-destructive.tsx +1 -1
  118. package/docs/patterns/components-dialog--alert-dialog-typed-confirmation.tsx +1 -1
  119. package/docs/patterns/components-dialog--default-dialog.tsx +1 -1
  120. package/docs/patterns/components-dialog--form-dialog.tsx +3 -3
  121. package/docs/patterns/components-displaycontrols--page-utilities.tsx +1 -1
  122. package/docs/patterns/components-displaycontrols--theme-switch.tsx +1 -1
  123. package/docs/patterns/components-errorsummary--contact-form.tsx +35 -0
  124. package/docs/patterns/components-field--horizontal-input.tsx +2 -2
  125. package/docs/patterns/components-field--horizontal-text-area.tsx +2 -2
  126. package/docs/patterns/components-field--multi-control.tsx +2 -2
  127. package/docs/patterns/components-filterpanel--panel.tsx +1 -1
  128. package/docs/patterns/components-footerreveal--marketing-hero-pattern.tsx +1 -1
  129. package/docs/patterns/components-footerreveal--marketing-hero-ruled-pattern.tsx +1 -1
  130. package/docs/patterns/components-footerreveal--marketing-hero-with-gallery-intro.tsx +1 -1
  131. package/docs/patterns/components-footerreveal--marketing-page-pattern.tsx +1 -1
  132. package/docs/patterns/components-footerreveal--ruled-grid-footer-pattern.tsx +1 -1
  133. package/docs/patterns/components-footerreveal--sequenced-marketing-hero.tsx +1 -1
  134. package/docs/patterns/components-herointro--two-line-intro.tsx +1 -1
  135. package/docs/patterns/components-herointro--with-actions.tsx +1 -1
  136. package/docs/patterns/components-herotilestack--marketing-hero-pattern.tsx +1 -1
  137. package/docs/patterns/components-herotilestack--marketing-hero-text-sequence.tsx +1 -1
  138. package/docs/patterns/components-herotilestack--marketing-hero-with-gallery-intro.tsx +1 -1
  139. package/docs/patterns/components-indexlist--post-index.tsx +1 -1
  140. package/docs/patterns/components-intakeconfirmation--booked-pattern.tsx +1 -1
  141. package/docs/patterns/components-intakeconfirmation--emailed-pattern.tsx +1 -1
  142. package/docs/patterns/components-intakeform--about-you-pattern.tsx +1 -1
  143. package/docs/patterns/components-intakeform--short-form-pattern.tsx +1 -1
  144. package/docs/patterns/components-intakemodal--intake-modal-pattern.tsx +1 -1
  145. package/docs/patterns/components-kbd--command-row.tsx +1 -1
  146. package/docs/patterns/components-kbd--numbered-choices.tsx +1 -1
  147. package/docs/patterns/components-kbd--shortcut.tsx +1 -1
  148. package/docs/patterns/components-linktile--resource-tile.tsx +1 -1
  149. package/docs/patterns/components-linktile--router-link.tsx +1 -1
  150. package/docs/patterns/components-logview--detail-pane.tsx +1 -1
  151. package/docs/patterns/components-logview--log-viewer.tsx +1 -1
  152. package/docs/patterns/components-moremenu--action-menu.tsx +1 -1
  153. package/docs/patterns/components-moremenu--in-card-header.tsx +1 -1
  154. package/docs/patterns/components-navlist--app-sidebar.tsx +1 -1
  155. package/docs/patterns/components-navlist--side-nav-settings.tsx +1 -1
  156. package/docs/patterns/components-pageheader--app-header-pattern.tsx +1 -1
  157. package/docs/patterns/components-pageheader--page-section-header.tsx +1 -1
  158. package/docs/patterns/components-pageheader--toolbar-header.tsx +1 -1
  159. package/docs/patterns/components-panel--end-detail-rail.tsx +1 -1
  160. package/docs/patterns/components-pillgroup--pill-group-pattern.tsx +1 -1
  161. package/docs/patterns/components-promptbar--pattern-prompt-bar.tsx +1 -1
  162. package/docs/patterns/components-prose--article-body.tsx +1 -1
  163. package/docs/patterns/components-radio-radiogroup--default.tsx +1 -1
  164. package/docs/patterns/components-scrollhorizontal--project-gallery-pattern.tsx +1 -1
  165. package/docs/patterns/components-scrollhorizontal--with-intro.tsx +1 -1
  166. package/docs/patterns/components-sectioncaption--column-caption.tsx +1 -1
  167. package/docs/patterns/components-sectioncaption--with-action.tsx +1 -1
  168. package/docs/patterns/components-sheet--bottom-sheet.tsx +3 -3
  169. package/docs/patterns/components-sheet--end-sheet.tsx +1 -1
  170. package/docs/patterns/components-sheet--side-sheet-header-actions.tsx +1 -1
  171. package/docs/patterns/components-sheet--side-sheet-url-deep-link.tsx +1 -1
  172. package/docs/patterns/components-sheet--side-sheet.tsx +1 -1
  173. package/docs/patterns/components-sitenav--brand-and-cta.tsx +1 -1
  174. package/docs/patterns/components-sitenav--centered-links.tsx +1 -1
  175. package/docs/patterns/components-sitenav--compact.tsx +1 -1
  176. package/docs/patterns/components-sitenav--marketing-header.tsx +1 -1
  177. package/docs/patterns/components-sitenav--mega-menu.tsx +1 -1
  178. package/docs/patterns/components-stat--hero-stat.tsx +1 -1
  179. package/docs/patterns/components-stat--insights-row.tsx +1 -1
  180. package/docs/patterns/components-stepprogress--step-progress-pattern.tsx +1 -1
  181. package/docs/patterns/components-switch--default.tsx +1 -1
  182. package/docs/patterns/components-switch--settings-row.tsx +1 -1
  183. package/docs/patterns/components-tab--settings-pages.tsx +1 -1
  184. package/docs/patterns/components-table--approvals-with-sheet.tsx +1 -1
  185. package/docs/patterns/components-table--approvals.tsx +1 -1
  186. package/docs/patterns/components-table--basic.tsx +1 -1
  187. package/docs/patterns/components-taskrows--action-details.tsx +1 -1
  188. package/docs/patterns/components-taskrows--capsules.tsx +1 -1
  189. package/docs/patterns/components-taskrows--card-with-status-rows.tsx +1 -1
  190. package/docs/patterns/components-taskrows--controlled-expand.tsx +1 -1
  191. package/docs/patterns/components-taskrows--custom-slots.tsx +1 -1
  192. package/docs/patterns/components-taskrows--needs-you-table.tsx +1 -1
  193. package/docs/patterns/components-taskrows--status-list.tsx +1 -1
  194. package/docs/patterns/components-taskrows--tag-chips.tsx +1 -1
  195. package/docs/patterns/components-textarea--save-status.tsx +1 -1
  196. package/docs/patterns/components-textlink--external-destination.tsx +1 -1
  197. package/docs/patterns/components-textlink--inline-prose.tsx +1 -1
  198. package/docs/patterns/components-textlink--quiet-title.tsx +1 -1
  199. package/docs/patterns/components-textlink--supporting-copy.tsx +1 -1
  200. package/docs/patterns/components-textsequence--default.tsx +1 -1
  201. package/docs/patterns/components-textsequence--reduced-motion.tsx +1 -1
  202. package/docs/patterns/components-textsequence--shapes.tsx +1 -1
  203. package/docs/patterns/components-tilegrid--masonry.tsx +1 -1
  204. package/docs/patterns/components-toast--stacked-notifications.tsx +1 -1
  205. package/docs/patterns/components-tooltip--controlled.tsx +1 -1
  206. package/docs/patterns/components-tooltip--disabled-control.tsx +1 -1
  207. package/docs/patterns/components-tooltip--icon-action.tsx +1 -1
  208. package/docs/patterns/components-tooltip--keyboard-shortcut.tsx +1 -1
  209. package/docs/patterns/components-tooltip--placement.tsx +1 -1
  210. package/docs/patterns/foundations-scroll-fade--horizontal-rail.tsx +1 -1
  211. package/docs/patterns/foundations-scroll-fade--overflowing-list.tsx +1 -1
  212. package/docs/patterns/guides-chart-explorations--comparison-gallery.tsx +1 -1
  213. package/docs/patterns/guides-filter-panel--filtered-grid.tsx +1 -1
  214. package/docs/patterns/guides-filter-panel--filtered-index.tsx +1 -1
  215. package/docs/patterns/guides-overlay-flows--notification-preferences.tsx +3 -3
  216. package/docs/patterns/guides-post-page--post-page.tsx +1 -1
  217. package/docs/patterns/guides-profile-typography--editorial-profile.tsx +1 -1
  218. package/docs/patterns/guides-resource-detail--detail.tsx +1 -1
  219. package/docs/patterns/index.json +9 -1
  220. package/package.json +1 -1
@@ -1,29 +1,31 @@
1
1
  "use client";
2
2
  import { cn as e } from "../../../lib/cn.js";
3
3
  import { motionTransitionProp as t } from "../../../lib/motion.js";
4
- import { carouselActiveIndex as n, carouselClamp as r, carouselMaxScroll as i, carouselNearestSnap as a, carouselOverflows as o, carouselOverscrollOffset as s, carouselProgress as c, carouselProgressAtPointer as l, carouselSnapPoints as u, carouselStep as d, carouselThumbShare as f } from "./carouselMath.js";
5
- import { carouselBreakpoints as p, carouselCounterClasses as m, carouselDefaultItemWidth as h, carouselExtentClasses as ee, carouselFrameClasses as te, carouselItemClasses as ne, carouselProgressClasses as re, carouselProgressPlacementClasses as ie, carouselProgressPlacements as ae, carouselProgressThumbClasses as oe, carouselProgressTrackClasses as se, carouselRootClasses as ce, carouselTrackClasses as le, carouselViewportClasses as ue } from "./carouselStyles.js";
6
- import { Children as de, createContext as g, isValidElement as fe, useCallback as _, useContext as v, useEffect as y, useLayoutEffect as pe, useMemo as me, useRef as b, useState as he } from "react";
7
- import { jsx as x, jsxs as ge } from "react/jsx-runtime";
8
- import { animate as _e, motion as ve, useMotionValue as ye, useMotionValueEvent as be, useReducedMotion as xe, useTransform as Se } from "motion/react";
4
+ import { IconButton as n } from "../../atoms/IconButton/IconButton.js";
5
+ import { carouselActiveIndex as r, carouselClamp as i, carouselMaxScroll as a, carouselNearestSnap as o, carouselOverflows as s, carouselOverscrollOffset as c, carouselProgress as l, carouselProgressAtPointer as u, carouselSnapPoints as ee, carouselStep as d, carouselThumbShare as te } from "./carouselMath.js";
6
+ import { carouselBreakpoints as f, carouselControlsClasses as ne, carouselCounterClasses as p, carouselCursorClasses as m, carouselDefaultItemWidth as re, carouselExtentClasses as ie, carouselFrameClasses as ae, carouselItemClasses as oe, carouselProgressClasses as se, carouselProgressInControlsClasses as ce, carouselProgressPlacementClasses as le, carouselProgressPlacements as ue, carouselProgressThumbClasses as de, carouselProgressTrackClasses as fe, carouselRootClasses as pe, carouselTrackClasses as me, carouselViewportClasses as he } from "./carouselStyles.js";
7
+ import { Children as ge, createContext as h, isValidElement as _e, useCallback as g, useContext as ve, useEffect as _, useLayoutEffect as ye, useMemo as be, useRef as v, useState as xe } from "react";
8
+ import { Pause as Se, Play as Ce } from "lucide-react";
9
+ import { jsx as y, jsxs as b } from "react/jsx-runtime";
10
+ import { animate as we, motion as Te, useMotionValue as x, useMotionValueEvent as Ee, useReducedMotionConfig as De, useSpring as Oe, useTransform as ke } from "motion/react";
9
11
  //#region src/components/organisms/Carousel/Carousel.tsx
10
- var S = g(null), Ce = {
12
+ var S = h(null), Ae = {
11
13
  item: (e, t) => `${e} of ${t}`,
12
14
  counter: (e, t) => `${e} of ${t}`
13
- }, we = 120, Te = 10;
14
- function Ee(e, t) {
15
+ }, je = 120, Me = 10;
16
+ function Ne(e, t) {
15
17
  try {
16
18
  e.setPointerCapture(t);
17
19
  } catch {}
18
20
  }
19
- function De(e) {
21
+ function Pe(e) {
20
22
  if (typeof e == "number") return {
21
23
  base: e,
22
24
  sm: e,
23
25
  md: e,
24
26
  lg: e
25
27
  };
26
- let t = e.base ?? h.base, n = e.sm ?? t, r = e.md ?? n;
28
+ let t = e.base ?? re.base, n = e.sm ?? t, r = e.md ?? n;
27
29
  return {
28
30
  base: t,
29
31
  sm: n,
@@ -31,135 +33,226 @@ function De(e) {
31
33
  lg: e.lg ?? r
32
34
  };
33
35
  }
34
- function Oe(e, t, n) {
36
+ function Fe(e, t, n) {
35
37
  n ? e.style.removeProperty(t) : e.style.setProperty(t, "0px");
36
38
  }
37
- function C({ "aria-label": p, "aria-labelledby": ne, itemWidth: ae = h, snap: g = !0, bleed: v = !1, fade: me = !0, progress: S = "center", counter: C = !1, onIndexChange: w, activeIndex: T, labels: E, children: Ae, className: je }) {
38
- let D = xe() ?? !1, O = b(null), k = b(null), A = b(null), j = b(null), Me = b(null), M = b({
39
+ function Ie({ "aria-label": f, "aria-labelledby": oe, itemWidth: ue = re, snap: h = !0, bleed: ve = !1, fade: be = !0, progress: S = "center", counter: Ie = !1, onIndexChange: ze, activeIndex: C, labels: Be, autoplay: Ve = !1, loop: w = !1, cursor: T, children: He, className: Ue }) {
40
+ let E = De() ?? !1, D = v(null), O = v(null), k = v(null), A = v(null), We = v(null), j = v({
39
41
  max: 0,
40
42
  points: [0],
41
43
  offsets: [],
42
- direction: 1
43
- }), N = b(null), P = b(null), F = b(null), I = b(null), L = b(!1), [R, Ne] = he(null), [Pe, Fe] = he(0), z = b(void 0), Ie = b(0), B = b(void 0), Le = b(0), Re = b(w), ze = b(() => {}), V = ye(0), H = ye(0), Be = Se(H, (e) => -M.current.direction * s(e)), U = _(() => Math.abs(k.current?.scrollLeft ?? 0), []), W = _(() => {
44
- let e = O.current, t = k.current;
44
+ direction: 1,
45
+ loopWidth: 0
46
+ }), M = v(null), N = v(null), P = v(null), F = v(null), I = v(!1), [L, Ge] = xe(null), [Ke, qe] = xe(0), Je = v(void 0), Ye = v(0), Xe = v(void 0), Ze = v(0), Qe = v(ze), $e = v(() => {}), R = Ve === !1 ? 0 : typeof Ve == "object" ? Ve.speed ?? Le : Le, [et, tt] = xe(!1), z = v({
47
+ hover: !1,
48
+ focus: !1,
49
+ offscreen: !1
50
+ }), B = v(null), nt = v({
51
+ position: 0,
52
+ time: 0,
53
+ reset: void 0
54
+ }), rt = x(0), it = Oe(rt, {
55
+ stiffness: 170,
56
+ damping: 26,
57
+ mass: 1
58
+ });
59
+ Ee(it, "change", (e) => {
60
+ D.current?.style.setProperty("--carousel-velocity", (Math.abs(e) < .001 ? 0 : e).toFixed(3));
61
+ });
62
+ let V = x(0), H = x(0), at = ke(H, (e) => -j.current.direction * c(e)), U = g(() => Math.abs(O.current?.scrollLeft ?? 0), []), W = g(() => {
63
+ let e = D.current, t = O.current;
45
64
  if (!e || !t) return;
46
- let { max: r } = M.current, i = Math.abs(t.scrollLeft);
47
- e.style.setProperty("--carousel-progress", String(c(i, r))), Oe(t, "--scroll-fade-s", i > 1), Oe(t, "--scroll-fade-e", i < r - 1), window.clearTimeout(z.current), z.current = window.setTimeout(() => {
48
- let e = n(M.current.offsets, Math.abs(t.scrollLeft), M.current.max);
49
- Fe(e), e !== Ie.current && (Ie.current = e, Re.current?.(e, Le.current));
50
- }, we);
51
- }, []), Ve = _((e) => {
52
- let t = k.current;
53
- t && (t.scrollLeft = M.current.direction * e, W());
65
+ let { max: n } = j.current, i = Math.abs(t.scrollLeft);
66
+ e.style.setProperty("--carousel-progress", String(l(i, n))), Fe(t, "--scroll-fade-s", i > 1), Fe(t, "--scroll-fade-e", i < n - 1), window.clearTimeout(Je.current), Je.current = window.setTimeout(() => {
67
+ let e = r(j.current.offsets, Math.abs(t.scrollLeft), j.current.max);
68
+ qe(e), e !== Ye.current && (Ye.current = e, Qe.current?.(e, Ze.current));
69
+ }, je);
70
+ }, []), G = g((e) => {
71
+ let t = O.current;
72
+ t && (t.scrollLeft = j.current.direction * e, W());
54
73
  }, [W]);
55
- be(V, "change", (e) => {
56
- let t = r(e, 0, M.current.max);
57
- Ve(t), H.set(D ? 0 : e - t);
74
+ Ee(V, "change", (e) => {
75
+ let t = i(e, 0, j.current.max);
76
+ G(t), H.set(E ? 0 : e - t);
58
77
  });
59
- function G(e) {
60
- let t = k.current;
78
+ function K(e) {
79
+ let t = O.current;
61
80
  t && (e ? t.dataset.moving = "" : delete t.dataset.moving);
62
81
  }
63
- function K() {
64
- N.current?.stop(), N.current = null, P.current = null;
65
- }
66
82
  function q() {
67
- N.current = null, P.current = null, G(!1);
83
+ M.current?.stop(), M.current = null, N.current = null;
68
84
  }
69
- function He() {
70
- N.current != null && (K(), V.jump(U()), G(!1));
85
+ function ot() {
86
+ M.current = null, N.current = null, K(!1);
87
+ }
88
+ function st() {
89
+ M.current != null && (q(), V.jump(U()), K(!1));
71
90
  }
72
91
  function J(e, n = !0) {
73
- let i = r(e, 0, M.current.max);
74
- if (K(), V.jump(U()), D || !n) {
75
- G(!1), V.jump(i);
92
+ let r = i(e, 0, j.current.max);
93
+ if (q(), V.jump(U()), E || !n) {
94
+ K(!1), V.jump(r);
76
95
  return;
77
96
  }
78
- P.current = i, G(!0), N.current = _e(V, i, {
97
+ N.current = r, K(!0), M.current = we(V, r, {
79
98
  ...t("medium"),
80
- onComplete: q
99
+ onComplete: ot
81
100
  });
82
101
  }
83
- y(() => {
84
- Re.current = w, ze.current = J;
102
+ _(() => {
103
+ Qe.current = ze, $e.current = J;
85
104
  });
86
- function Ue(e) {
87
- let { max: t, points: n } = M.current, i = (e) => a(n, r(e, 0, t));
88
- if (K(), D) {
89
- J(g ? i(V.get()) : V.get(), !1);
105
+ function ct(e) {
106
+ let { max: t, points: n } = j.current, r = (e) => o(n, i(e, 0, t));
107
+ if (q(), E) {
108
+ J(h ? r(V.get()) : V.get(), !1);
90
109
  return;
91
110
  }
92
- let o = V.get(), s = g ? i(o) : r(o, 0, t);
93
- if (e === 0 && s === o) {
94
- q();
111
+ let a = V.get(), s = h ? r(a) : i(a, 0, t);
112
+ if (e === 0 && s === a) {
113
+ ot();
95
114
  return;
96
115
  }
97
- G(!0), N.current = _e(V, s === o ? o + Math.sign(e) : s, {
116
+ K(!0), M.current = we(V, s === a ? a + Math.sign(e) : s, {
98
117
  type: "inertia",
99
118
  velocity: e,
100
119
  min: 0,
101
120
  max: t,
102
- modifyTarget: g ? i : void 0,
103
- onComplete: q
121
+ modifyTarget: h ? r : void 0,
122
+ onComplete: ot
104
123
  });
105
124
  }
106
- let Y = _(() => {
107
- let e = O.current, t = k.current, n = A.current;
125
+ let Y = g(() => {
126
+ let e = D.current, t = O.current, n = k.current;
108
127
  if (!e || !t || !n || H.get() !== 0) return;
109
- if (v) {
128
+ if (ve) {
110
129
  let t = e.getBoundingClientRect(), n = Math.max(0, Math.floor(t.left)), r = Math.max(0, Math.floor(document.documentElement.clientWidth - t.right));
111
130
  e.style.setProperty("--carousel-bleed-left", `${n}px`), e.style.setProperty("--carousel-bleed-right", `${r}px`);
112
131
  } else e.style.removeProperty("--carousel-bleed-left"), e.style.removeProperty("--carousel-bleed-right");
113
- let r = getComputedStyle(t).direction === "rtl" ? -1 : 1, a = t.clientWidth, s = t.scrollWidth, c = i(a, s), l = Array.from(n.querySelectorAll(":scope > [data-carousel-item]")), d = l[0]?.getBoundingClientRect(), p = d == null ? [] : l.map((e) => {
132
+ let r = getComputedStyle(t).direction === "rtl" ? -1 : 1, i = t.clientWidth, o = t.scrollWidth, c = a(i, o), l = Array.from(n.querySelectorAll(":scope > [data-carousel-item]:not([data-carousel-clone])")), u = n.querySelector(":scope > [data-carousel-clone]"), d = l[0]?.getBoundingClientRect(), f = d == null ? [] : l.map((e) => {
114
133
  let t = e.getBoundingClientRect();
115
134
  return r === 1 ? t.left - d.left : d.right - t.right;
116
- });
117
- M.current = {
135
+ }), ne = u == null || d == null ? 0 : r === 1 ? u.getBoundingClientRect().left - d.left : d.right - u.getBoundingClientRect().right;
136
+ j.current = {
118
137
  max: c,
119
138
  direction: r,
120
- points: u(p, c),
121
- offsets: p
139
+ points: ee(f, c),
140
+ offsets: f,
141
+ loopWidth: ne
122
142
  };
123
- let m = j.current;
124
- m && e.style.setProperty("--carousel-thumb", String(f(a, s, m.clientWidth))), W();
125
- let h = o(a, s);
126
- Ne((e) => e === h ? e : h);
143
+ let p = A.current;
144
+ p && e.style.setProperty("--carousel-thumb", String(te(i, o, p.clientWidth))), W();
145
+ let m = s(i, o);
146
+ Ge((e) => e === m ? e : m);
127
147
  }, [
128
- v,
148
+ ve,
129
149
  H,
130
150
  W
131
151
  ]);
132
- pe(() => {
152
+ ye(() => {
133
153
  if (Y(), window.addEventListener("resize", Y), typeof ResizeObserver > "u") return () => window.removeEventListener("resize", Y);
134
154
  let e = new ResizeObserver(Y);
135
155
  for (let t of [
156
+ D.current,
136
157
  O.current,
137
158
  k.current,
138
- A.current,
139
- j.current
159
+ A.current
140
160
  ]) t && e.observe(t);
141
161
  return () => {
142
162
  e.disconnect(), window.removeEventListener("resize", Y);
143
163
  };
144
- }, [Y, S]), y(() => () => {
145
- N.current?.stop(), window.clearTimeout(z.current);
146
- }, []), y(() => {
147
- if (T == null || R == null || T === B.current) return;
148
- let { offsets: e, max: t } = M.current;
149
- if (e.length === 0) return;
150
- let n = B.current === void 0;
151
- B.current = T;
152
- let i = e[r(Math.round(T), 0, e.length - 1)];
153
- ze.current(g ? a(M.current.points, i) : r(i, 0, t), !n);
164
+ }, [Y, S]), _(() => () => {
165
+ M.current?.stop(), window.clearTimeout(Je.current);
166
+ }, []);
167
+ let lt = R > 0 && !E && !et && L === !0;
168
+ _(() => {
169
+ let e = D.current, t = O.current;
170
+ if (!lt || !e || !t) return;
171
+ let n = 0, r = performance.now(), i = 1, a = U(), o = typeof IntersectionObserver > "u" ? null : new IntersectionObserver(([e]) => {
172
+ z.current.offscreen = !(e?.isIntersecting ?? !0);
173
+ });
174
+ o?.observe(e), K(!0);
175
+ let s = (e) => {
176
+ let t = Math.min(.05, (e - r) / 1e3);
177
+ r = e;
178
+ let { hover: o, focus: c, offscreen: l } = z.current;
179
+ if (o || c || l || document.hidden || P.current != null || F.current != null || M.current != null) a = U();
180
+ else {
181
+ let { max: e } = j.current;
182
+ Math.abs(U() - a) > 2 && (a = U()), a += i * R * t;
183
+ let { loopWidth: n } = j.current;
184
+ w && n > 0 ? a >= n && (a -= n) : a >= e ? (a = e, i = -1) : a <= 0 && (a = 0, i = 1), K(!0), G(a);
185
+ }
186
+ n = requestAnimationFrame(s);
187
+ };
188
+ return n = requestAnimationFrame(s), () => {
189
+ cancelAnimationFrame(n), o?.disconnect(), K(!1);
190
+ };
154
191
  }, [
155
- T,
192
+ lt,
156
193
  R,
157
- g
194
+ w,
195
+ U,
196
+ G
197
+ ]);
198
+ function ut() {
199
+ if (!D.current || E) return;
200
+ let e = performance.now(), t = U(), n = nt.current, r = e - n.time;
201
+ r > 0 && r < 200 && Math.abs(t - n.position) < 400 && rt.set(i((t - n.position) / r / 1.5, -1, 1)), n.position = t, n.time = e, window.clearTimeout(n.reset), n.reset = window.setTimeout(() => rt.set(0), 120);
202
+ }
203
+ function dt() {
204
+ ut();
205
+ let { loopWidth: e } = j.current;
206
+ if (w && e > 0 && P.current == null && F.current == null && M.current == null) {
207
+ let t = U();
208
+ if (t >= e) {
209
+ G(t - e);
210
+ return;
211
+ }
212
+ }
213
+ W();
214
+ }
215
+ function ft(e) {
216
+ e.pointerType === "mouse" && (z.current.hover = !0);
217
+ }
218
+ function pt() {
219
+ z.current.hover = !1;
220
+ let e = B.current;
221
+ e && delete e.dataset.shown;
222
+ }
223
+ function mt() {
224
+ z.current.focus = !0;
225
+ }
226
+ function ht(e) {
227
+ e.currentTarget.contains(e.relatedTarget) || (z.current.focus = !1);
228
+ }
229
+ function gt(e) {
230
+ let t = B.current, n = D.current;
231
+ if (!t || !n || e.pointerType !== "mouse" || !window.matchMedia("(hover: hover) and (pointer: fine)").matches) return;
232
+ let r = n.getBoundingClientRect();
233
+ t.style.transform = `translate3d(${e.clientX - r.left}px, ${e.clientY - r.top}px, 0) translate(-50%, -50%)`, t.dataset.shown = "", P.current?.active ? t.dataset.dragging = "" : delete t.dataset.dragging;
234
+ }
235
+ function _t() {
236
+ let e = B.current;
237
+ e && delete e.dataset.shown;
238
+ }
239
+ _(() => {
240
+ if (C == null || L == null || C === Xe.current) return;
241
+ let { offsets: e, max: t } = j.current;
242
+ if (e.length === 0) return;
243
+ let n = Xe.current === void 0;
244
+ Xe.current = C;
245
+ let r = e[i(Math.round(C), 0, e.length - 1)];
246
+ $e.current(h ? o(j.current.points, r) : i(r, 0, t), !n);
247
+ }, [
248
+ C,
249
+ L,
250
+ h
158
251
  ]);
159
- function We(e) {
160
- if (e.pointerType !== "mouse" || e.button !== 0 || M.current.max <= 0) return;
161
- let t = N.current != null;
162
- K(), V.jump(U()), F.current = {
252
+ function vt(e) {
253
+ if (e.pointerType !== "mouse" || e.button !== 0 || j.current.max <= 0) return;
254
+ let t = M.current != null;
255
+ q(), V.jump(U()), P.current = {
163
256
  pointerId: e.pointerId,
164
257
  startX: e.clientX,
165
258
  startPosition: U(),
@@ -167,38 +260,38 @@ function C({ "aria-label": p, "aria-labelledby": ne, itemWidth: ae = h, snap: g
167
260
  interrupted: t
168
261
  };
169
262
  }
170
- function Ge(e) {
171
- let t = F.current;
263
+ function yt(e) {
264
+ let t = P.current;
172
265
  if (!(!t || t.pointerId !== e.pointerId)) {
173
266
  if (e.buttons === 0) {
174
- X(e);
267
+ bt(e);
175
268
  return;
176
269
  }
177
270
  if (!t.active) {
178
271
  if (Math.abs(e.clientX - t.startX) < 4) return;
179
- t.active = !0, t.startX = e.clientX, Ee(e.currentTarget, e.pointerId), e.currentTarget.dataset.dragging = "", G(!0);
272
+ t.active = !0, t.startX = e.clientX, Ne(e.currentTarget, e.pointerId), e.currentTarget.dataset.dragging = "", window.getSelection()?.removeAllRanges(), K(!0);
180
273
  }
181
- V.set(t.startPosition - M.current.direction * (e.clientX - t.startX));
274
+ V.set(t.startPosition - j.current.direction * (e.clientX - t.startX));
182
275
  }
183
276
  }
184
- function X(e) {
185
- let t = F.current;
277
+ function bt(e) {
278
+ let t = P.current;
186
279
  if (!t || t.pointerId !== e.pointerId) return;
187
- if (F.current = null, !t.active) {
188
- t.interrupted && Ue(0);
280
+ if (P.current = null, !t.active) {
281
+ t.interrupted && ct(0);
189
282
  return;
190
283
  }
191
284
  let n = e.currentTarget;
192
- n.hasPointerCapture(e.pointerId) && n.releasePointerCapture(e.pointerId), delete n.dataset.dragging, L.current = !0, window.setTimeout(() => {
193
- L.current = !1;
194
- }, 0), Ue(e.type === "pointercancel" ? 0 : V.getVelocity());
285
+ n.hasPointerCapture(e.pointerId) && n.releasePointerCapture(e.pointerId), delete n.dataset.dragging, I.current = !0, window.setTimeout(() => {
286
+ I.current = !1;
287
+ }, 0), ct(e.type === "pointercancel" ? 0 : V.getVelocity());
195
288
  }
196
- function Ke(e) {
197
- L.current && (L.current = !1, e.preventDefault(), e.stopPropagation());
289
+ function xt(e) {
290
+ I.current && (I.current = !1, e.preventDefault(), e.stopPropagation());
198
291
  }
199
- function qe(e) {
292
+ function St(e) {
200
293
  if (e.target !== e.currentTarget || e.altKey || e.ctrlKey || e.metaKey) return;
201
- let { max: t, points: n, direction: r } = M.current, i = P.current ?? U(), a;
294
+ let { max: t, points: n, direction: r } = j.current, i = N.current ?? U(), a;
202
295
  switch (e.key) {
203
296
  case "ArrowRight":
204
297
  a = d(n, i, r);
@@ -216,133 +309,169 @@ function C({ "aria-label": p, "aria-labelledby": ne, itemWidth: ae = h, snap: g
216
309
  }
217
310
  e.preventDefault(), J(a);
218
311
  }
219
- function Je(e) {
220
- let t = j.current, n = Me.current, { max: r, points: i, direction: o } = M.current;
312
+ function Ct(e) {
313
+ let t = A.current, n = We.current, { max: r, points: i, direction: a } = j.current;
221
314
  if (!t || !n || r <= 0 || e.button !== 0) return;
222
315
  e.preventDefault();
223
- let s = t.getBoundingClientRect(), u = n.getBoundingClientRect();
224
- if (e.clientX >= u.left - Te && e.clientX <= u.right + Te) {
225
- K(), V.jump(U()), G(!0), Ee(e.currentTarget, e.pointerId), e.currentTarget.dataset.scrubbing = "", I.current = {
316
+ let s = t.getBoundingClientRect(), c = n.getBoundingClientRect();
317
+ if (e.clientX >= c.left - Me && e.clientX <= c.right + Me) {
318
+ q(), V.jump(U()), K(!0), Ne(e.currentTarget, e.pointerId), e.currentTarget.dataset.scrubbing = "", F.current = {
226
319
  pointerId: e.pointerId,
227
320
  startX: e.clientX,
228
- startProgress: c(U(), r),
229
- travel: s.width - u.width
321
+ startProgress: l(U(), r),
322
+ travel: s.width - c.width
230
323
  };
231
324
  return;
232
325
  }
233
- let d = o === 1 ? e.clientX - s.left : s.right - e.clientX, f = l(d, s.width, u.width) * r;
234
- J(g ? a(i, f) : f);
326
+ let ee = a === 1 ? e.clientX - s.left : s.right - e.clientX, d = u(ee, s.width, c.width) * r;
327
+ J(h ? o(i, d) : d);
235
328
  }
236
- function Ye(e) {
237
- let t = I.current;
329
+ function wt(e) {
330
+ let t = F.current;
238
331
  if (!t || t.pointerId !== e.pointerId || t.travel <= 0) return;
239
- let { max: n, direction: i } = M.current, a = i * (e.clientX - t.startX) / t.travel;
240
- V.set(r(t.startProgress + a, 0, 1) * n);
332
+ let { max: n, direction: r } = j.current, a = r * (e.clientX - t.startX) / t.travel;
333
+ V.set(i(t.startProgress + a, 0, 1) * n);
241
334
  }
242
- function Xe(e) {
243
- let t = I.current;
335
+ function Tt(e) {
336
+ let t = F.current;
244
337
  if (!t || t.pointerId !== e.pointerId) return;
245
- I.current = null;
338
+ F.current = null;
246
339
  let n = e.currentTarget;
247
- n.hasPointerCapture(e.pointerId) && n.releasePointerCapture(e.pointerId), delete n.dataset.scrubbing, g ? J(a(M.current.points, U())) : G(!1);
340
+ n.hasPointerCapture(e.pointerId) && n.releasePointerCapture(e.pointerId), delete n.dataset.scrubbing, h ? J(o(j.current.points, U())) : K(!1);
248
341
  }
249
- let Z = De(ae), Ze = {
250
- "--carousel-item": String(Z.base),
251
- "--carousel-item-sm": String(Z.sm),
252
- "--carousel-item-md": String(Z.md),
253
- "--carousel-item-lg": String(Z.lg)
254
- }, Qe = E?.item ?? Ce.item, Q = de.toArray(Ae);
255
- Le.current = Q.length;
256
- let $e = (E?.counter ?? Ce.counter)(Math.min(Pe, Math.max(Q.length - 1, 0)) + 1, Q.length), $ = R == null ? void 0 : String(R);
257
- return /* @__PURE__ */ ge("div", {
258
- ref: O,
259
- className: e(ce, je),
260
- style: Ze,
342
+ let X = Pe(ue), Et = {
343
+ "--carousel-item": String(X.base),
344
+ "--carousel-item-sm": String(X.sm),
345
+ "--carousel-item-md": String(X.md),
346
+ "--carousel-item-lg": String(X.lg)
347
+ }, Dt = Be?.item ?? Ae.item, Z = ge.toArray(He);
348
+ Ze.current = Z.length;
349
+ let Ot = (Be?.counter ?? Ae.counter)(Math.min(Ke, Math.max(Z.length - 1, 0)) + 1, Z.length), kt = L == null ? void 0 : String(L), Q = R > 0 && !E && L === !0, $ = w ? "none" : S, At = Ie && !w;
350
+ return /* @__PURE__ */ b("div", {
351
+ ref: D,
352
+ className: e(pe, T != null && "relative", Ue),
353
+ style: Et,
261
354
  "data-carousel": "",
355
+ "data-autoplay": R > 0 ? "" : void 0,
356
+ onPointerEnter: ft,
357
+ onPointerLeave: pt,
358
+ onFocus: mt,
359
+ onBlur: ht,
262
360
  children: [
263
- /* @__PURE__ */ x("div", {
264
- className: te,
265
- children: /* @__PURE__ */ x("div", {
266
- ref: k,
361
+ /* @__PURE__ */ y("div", {
362
+ className: ae,
363
+ children: /* @__PURE__ */ y("div", {
364
+ ref: O,
267
365
  role: "region",
268
- "aria-label": p,
269
- "aria-labelledby": ne,
270
- tabIndex: R === !1 ? void 0 : 0,
366
+ "aria-label": f,
367
+ "aria-labelledby": oe,
368
+ tabIndex: L === !1 ? void 0 : 0,
271
369
  "data-carousel-viewport": "",
272
- "data-overflowing": $,
273
- className: e(ue, g && "snap-x snap-mandatory data-[moving]:snap-none", me && "scroll-fade-x"),
370
+ "data-overflowing": kt,
371
+ className: e(he, h && "snap-x snap-mandatory data-[moving]:snap-none", be && "scroll-fade-x"),
274
372
  style: { "--scroll-fade-s": "0px" },
275
- onScroll: W,
276
- onKeyDown: qe,
277
- onPointerDown: We,
278
- onPointerMove: Ge,
279
- onPointerUp: X,
280
- onPointerCancel: X,
281
- onClickCapture: Ke,
373
+ onScroll: dt,
374
+ onKeyDown: St,
375
+ onPointerDown: vt,
376
+ onPointerMove: (e) => {
377
+ yt(e), T != null && gt(e);
378
+ },
379
+ onPointerLeave: T == null ? void 0 : _t,
380
+ onPointerUp: bt,
381
+ onPointerCancel: bt,
382
+ onClickCapture: xt,
282
383
  onDragStart: (e) => e.preventDefault(),
283
- onWheel: He,
284
- onTouchStart: He,
285
- children: /* @__PURE__ */ x("div", {
286
- className: ee,
287
- children: /* @__PURE__ */ x(ve.div, {
288
- ref: A,
289
- className: le,
290
- style: { x: Be },
291
- children: Q.map((e, t) => /* @__PURE__ */ x(ke, {
292
- label: Qe(t + 1, Q.length),
384
+ onWheel: st,
385
+ onTouchStart: st,
386
+ children: /* @__PURE__ */ y("div", {
387
+ className: ie,
388
+ children: /* @__PURE__ */ b(Te.div, {
389
+ ref: k,
390
+ className: me,
391
+ style: { x: at },
392
+ children: [Z.map((e, t) => /* @__PURE__ */ y(Re, {
393
+ label: Dt(t + 1, Z.length),
394
+ children: e
395
+ }, _e(e) && e.key != null ? e.key : t)), w ? Z.map((e, t) => /* @__PURE__ */ y(Re, {
396
+ label: Dt(t + 1, Z.length),
397
+ clone: !0,
293
398
  children: e
294
- }, fe(e) && e.key != null ? e.key : t))
399
+ }, `loop-${t}`)) : null]
295
400
  })
296
401
  })
297
402
  })
298
403
  }),
299
- S === "none" ? null : /* @__PURE__ */ x("div", {
300
- "aria-hidden": "true",
301
- "data-carousel-progress": "",
302
- "data-overflowing": $,
303
- className: e(re, ie[S]),
304
- onPointerDown: Je,
305
- onPointerMove: Ye,
306
- onPointerUp: Xe,
307
- onPointerCancel: Xe,
308
- children: /* @__PURE__ */ x("div", {
309
- ref: j,
310
- className: se,
311
- children: /* @__PURE__ */ x("div", {
312
- ref: Me,
313
- className: oe,
314
- "data-carousel-progress-thumb": ""
404
+ $ !== "none" || Q ? /* @__PURE__ */ b("div", {
405
+ className: Q ? ne[$] : "contents",
406
+ children: [$ === "none" ? null : /* @__PURE__ */ y("div", {
407
+ "aria-hidden": "true",
408
+ "data-carousel-progress": "",
409
+ "data-overflowing": kt,
410
+ className: e(se, Q ? ce[$] : le[$]),
411
+ onPointerDown: Ct,
412
+ onPointerMove: wt,
413
+ onPointerUp: Tt,
414
+ onPointerCancel: Tt,
415
+ children: /* @__PURE__ */ y("div", {
416
+ ref: A,
417
+ className: fe,
418
+ children: /* @__PURE__ */ y("div", {
419
+ ref: We,
420
+ className: de,
421
+ "data-carousel-progress-thumb": ""
422
+ })
315
423
  })
316
- })
424
+ }), Q ? /* @__PURE__ */ y(n, {
425
+ role: "ghost",
426
+ size: "sm",
427
+ "aria-label": et ? "Play" : "Pause",
428
+ icon: y(et ? Ce : Se, { strokeWidth: 2 }),
429
+ onClick: () => tt((e) => !e),
430
+ "data-carousel-drift-control": ""
431
+ }) : null]
432
+ }) : null,
433
+ T == null ? null : /* @__PURE__ */ y("div", {
434
+ ref: B,
435
+ "aria-hidden": "true",
436
+ className: m,
437
+ "data-carousel-cursor": "",
438
+ children: T
317
439
  }),
318
- C ? /* @__PURE__ */ x("p", {
440
+ At ? /* @__PURE__ */ y("p", {
319
441
  "aria-live": "polite",
320
442
  "aria-atomic": "true",
321
443
  "data-carousel-counter": "",
322
- "data-overflowing": $,
323
- className: m,
324
- children: $e
444
+ "data-overflowing": kt,
445
+ className: p,
446
+ children: Ot
325
447
  }) : null
326
448
  ]
327
449
  });
328
450
  }
329
- function ke({ label: e, children: t }) {
330
- let n = me(() => ({ label: e }), [e]);
331
- return /* @__PURE__ */ x(S.Provider, {
332
- value: n,
333
- children: t
451
+ var Le = 24;
452
+ function Re({ label: e, clone: t = !1, children: n }) {
453
+ let r = be(() => ({
454
+ label: e,
455
+ clone: t
456
+ }), [e, t]);
457
+ return /* @__PURE__ */ y(S.Provider, {
458
+ value: r,
459
+ children: n
334
460
  });
335
461
  }
336
- function w({ children: t, className: n }) {
337
- let r = v(S);
338
- return /* @__PURE__ */ x("div", {
339
- role: "group",
340
- "aria-label": r?.label,
462
+ function ze({ children: t, className: n }) {
463
+ let r = ve(S);
464
+ return /* @__PURE__ */ y("div", {
465
+ role: r?.clone ? void 0 : "group",
466
+ "aria-label": r?.clone ? void 0 : r?.label,
467
+ "aria-hidden": r?.clone ? !0 : void 0,
468
+ inert: r?.clone ? !0 : void 0,
341
469
  "data-carousel-item": "",
342
- className: e(ne, n),
470
+ "data-carousel-clone": r?.clone ? "" : void 0,
471
+ className: e(oe, n),
343
472
  children: t
344
473
  });
345
474
  }
346
- var T = Object.assign(C, { Item: w });
475
+ var C = Object.assign(Ie, { Item: ze });
347
476
  //#endregion
348
- export { T as Carousel, p as carouselBreakpoints, h as carouselDefaultItemWidth, ae as carouselProgressPlacements };
477
+ export { C as Carousel, f as carouselBreakpoints, re as carouselDefaultItemWidth, ue as carouselProgressPlacements };