@bug-on/m3-expressive 1.2.1 → 1.2.3

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 (48) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/buttons.d.mts +26 -5
  3. package/dist/buttons.d.ts +26 -5
  4. package/dist/buttons.js +581 -345
  5. package/dist/buttons.js.map +1 -1
  6. package/dist/buttons.mjs +573 -345
  7. package/dist/buttons.mjs.map +1 -1
  8. package/dist/core.js +52 -13
  9. package/dist/core.js.map +1 -1
  10. package/dist/core.mjs +52 -13
  11. package/dist/core.mjs.map +1 -1
  12. package/dist/feedback.js +52 -13
  13. package/dist/feedback.js.map +1 -1
  14. package/dist/feedback.mjs +52 -13
  15. package/dist/feedback.mjs.map +1 -1
  16. package/dist/forms.js +4 -1
  17. package/dist/forms.js.map +1 -1
  18. package/dist/forms.mjs +4 -1
  19. package/dist/forms.mjs.map +1 -1
  20. package/dist/{icon-button-sSt6PPLg.d.mts → icon-button-CSsDmuQC.d.mts} +13 -0
  21. package/dist/{icon-button-sSt6PPLg.d.ts → icon-button-CSsDmuQC.d.ts} +13 -0
  22. package/dist/index.d.mts +2 -2
  23. package/dist/index.d.ts +2 -2
  24. package/dist/index.js +1483 -1027
  25. package/dist/index.js.map +1 -1
  26. package/dist/index.mjs +1342 -887
  27. package/dist/index.mjs.map +1 -1
  28. package/dist/layout.js +15 -7
  29. package/dist/layout.js.map +1 -1
  30. package/dist/layout.mjs +15 -7
  31. package/dist/layout.mjs.map +1 -1
  32. package/dist/navigation.d.mts +7 -1
  33. package/dist/navigation.d.ts +7 -1
  34. package/dist/navigation.js +281 -38
  35. package/dist/navigation.js.map +1 -1
  36. package/dist/navigation.mjs +281 -38
  37. package/dist/navigation.mjs.map +1 -1
  38. package/dist/overlays.js +52 -13
  39. package/dist/overlays.js.map +1 -1
  40. package/dist/overlays.mjs +52 -13
  41. package/dist/overlays.mjs.map +1 -1
  42. package/dist/pickers.js +177 -111
  43. package/dist/pickers.js.map +1 -1
  44. package/dist/pickers.mjs +177 -111
  45. package/dist/pickers.mjs.map +1 -1
  46. package/dist/{split-button-trailing-uncheckable-BcPD_7uK.d.ts → split-button-trailing-uncheckable-C-qQlyZx.d.ts} +74 -19
  47. package/dist/{split-button-trailing-uncheckable-DtFJkTFr.d.mts → split-button-trailing-uncheckable-DHJqNeq_.d.mts} +74 -19
  48. package/package.json +3 -3
package/dist/pickers.mjs CHANGED
@@ -44,6 +44,97 @@ function cn(...inputs) {
44
44
  return twMerge(clsx(inputs));
45
45
  }
46
46
 
47
+ // src/ui/shared/motion-tokens.ts
48
+ var FAST_SPATIAL_SPRING = {
49
+ type: "spring",
50
+ stiffness: 800,
51
+ damping: 33.94
52
+ };
53
+ var DEFAULT_SPATIAL_SPRING = {
54
+ type: "spring",
55
+ stiffness: 380,
56
+ damping: 31.19
57
+ };
58
+ var FAST_EFFECTS_SPRING = {
59
+ type: "spring",
60
+ stiffness: 3800,
61
+ damping: 123.29
62
+ };
63
+ var DEFAULT_EFFECTS_SPRING = {
64
+ type: "spring",
65
+ stiffness: 1600,
66
+ damping: 80
67
+ };
68
+
69
+ // src/ui/date-time-pickers/shared/animation-tokens.ts
70
+ var PICKER_OVERLAY_ANIM = {
71
+ initial: { opacity: 0 },
72
+ animate: {
73
+ opacity: 1,
74
+ transition: { duration: 0.2, ease: [0, 0, 0, 1] }
75
+ },
76
+ exit: {
77
+ opacity: 0,
78
+ transition: { duration: 0.15, ease: [0.3, 0, 1, 1] }
79
+ }
80
+ };
81
+ var PICKER_CONTENT_ANIM = {
82
+ initial: { opacity: 0, scale: 0.85, y: 16 },
83
+ animate: {
84
+ opacity: 1,
85
+ scale: 1,
86
+ y: 0,
87
+ transition: DEFAULT_SPATIAL_SPRING
88
+ },
89
+ exit: {
90
+ opacity: 0,
91
+ scale: 0.95,
92
+ y: 8,
93
+ transition: { duration: 0.15, ease: [0.3, 0, 1, 1] }
94
+ }
95
+ };
96
+ var CALENDAR_SLIDE_VARIANTS = {
97
+ enterFromRight: {
98
+ x: "100%",
99
+ opacity: 0
100
+ },
101
+ enterFromLeft: {
102
+ x: "-100%",
103
+ opacity: 0
104
+ },
105
+ center: {
106
+ x: 0,
107
+ opacity: 1,
108
+ transition: FAST_SPATIAL_SPRING
109
+ },
110
+ exitToLeft: {
111
+ x: "-100%",
112
+ opacity: 0,
113
+ transition: { duration: 0.15, ease: [0.3, 0, 1, 1] }
114
+ },
115
+ exitToRight: {
116
+ x: "100%",
117
+ opacity: 0,
118
+ transition: { duration: 0.15, ease: [0.3, 0, 1, 1] }
119
+ }
120
+ };
121
+ var PICKER_SELECTOR_ANIM = {
122
+ initial: { opacity: 0, scale: 0.95, y: -6 },
123
+ animate: {
124
+ opacity: 1,
125
+ scale: 1,
126
+ y: 0,
127
+ transition: DEFAULT_SPATIAL_SPRING
128
+ },
129
+ exit: {
130
+ opacity: 0,
131
+ scale: 0.95,
132
+ y: 6,
133
+ transition: { duration: 0.1, ease: "easeIn" }
134
+ }
135
+ };
136
+ var DAY_CELL_STATE_TRANSITION = FAST_EFFECTS_SPRING;
137
+
47
138
  // src/ui/date-time-pickers/shared/calendar-model.ts
48
139
  var startOfDayUTC = (ms) => {
49
140
  const d = new Date(ms);
@@ -235,82 +326,6 @@ var DatePickerInput = ({
235
326
  ] }) }) });
236
327
  };
237
328
  DatePickerInput.displayName = "DatePickerInput";
238
-
239
- // src/ui/shared/motion-tokens.ts
240
- var FAST_SPATIAL_SPRING = {
241
- type: "spring",
242
- stiffness: 800,
243
- damping: 33.94
244
- };
245
- var DEFAULT_SPATIAL_SPRING = {
246
- type: "spring",
247
- stiffness: 380,
248
- damping: 31.19
249
- };
250
- var FAST_EFFECTS_SPRING = {
251
- type: "spring",
252
- stiffness: 3800,
253
- damping: 123.29
254
- };
255
- var DEFAULT_EFFECTS_SPRING = {
256
- type: "spring",
257
- stiffness: 1600,
258
- damping: 80
259
- };
260
-
261
- // src/ui/date-time-pickers/shared/animation-tokens.ts
262
- var PICKER_OVERLAY_ANIM = {
263
- initial: { opacity: 0 },
264
- animate: {
265
- opacity: 1,
266
- transition: { duration: 0.2, ease: [0, 0, 0, 1] }
267
- },
268
- exit: {
269
- opacity: 0,
270
- transition: { duration: 0.15, ease: [0.3, 0, 1, 1] }
271
- }
272
- };
273
- var PICKER_CONTENT_ANIM = {
274
- initial: { opacity: 0, scale: 0.85, y: 16 },
275
- animate: {
276
- opacity: 1,
277
- scale: 1,
278
- y: 0,
279
- transition: DEFAULT_SPATIAL_SPRING
280
- },
281
- exit: {
282
- opacity: 0,
283
- scale: 0.95,
284
- y: 8,
285
- transition: { duration: 0.15, ease: [0.3, 0, 1, 1] }
286
- }
287
- };
288
- var CALENDAR_SLIDE_VARIANTS = {
289
- enterFromRight: {
290
- x: "100%",
291
- opacity: 0
292
- },
293
- enterFromLeft: {
294
- x: "-100%",
295
- opacity: 0
296
- },
297
- center: {
298
- x: 0,
299
- opacity: 1,
300
- transition: FAST_SPATIAL_SPRING
301
- },
302
- exitToLeft: {
303
- x: "-100%",
304
- opacity: 0,
305
- transition: { duration: 0.15, ease: [0.3, 0, 1, 1] }
306
- },
307
- exitToRight: {
308
- x: "100%",
309
- opacity: 0,
310
- transition: { duration: 0.15, ease: [0.3, 0, 1, 1] }
311
- }
312
- };
313
- var DAY_CELL_STATE_TRANSITION = FAST_EFFECTS_SPRING;
314
329
  var DayCell = ({
315
330
  day,
316
331
  selectedMs,
@@ -1466,7 +1481,10 @@ function useRippleState(options = {}) {
1466
1481
  const rect = e.currentTarget.getBoundingClientRect();
1467
1482
  const x = e.clientX - rect.left;
1468
1483
  const y = e.clientY - rect.top;
1469
- const rippleSize = Math.hypot(rect.width, rect.height) * 2;
1484
+ const rippleSize = Math.max(
1485
+ Math.hypot(rect.width, rect.height) * 2.5,
1486
+ 320
1487
+ );
1470
1488
  setRipples((prev) => [
1471
1489
  ...prev,
1472
1490
  { id: Date.now(), x, y, size: rippleSize }
@@ -1497,12 +1515,39 @@ function TouchTarget() {
1497
1515
  }
1498
1516
  );
1499
1517
  }
1500
- var SIZE_STYLES = {
1501
- xs: "h-8 w-8",
1502
- sm: "h-10 w-10",
1503
- md: "h-14 w-14",
1504
- lg: "h-24 w-24",
1505
- xl: "h-[8.5rem] w-[8.5rem]"
1518
+ var SIZE_HEIGHT_STYLES = {
1519
+ xs: "h-8",
1520
+ sm: "h-10",
1521
+ md: "h-14",
1522
+ lg: "h-24",
1523
+ xl: "h-[8.5rem]"
1524
+ };
1525
+ var WIDTH_SIZE_STYLES = {
1526
+ xs: {
1527
+ default: "w-8",
1528
+ narrow: "w-8",
1529
+ wide: "w-12"
1530
+ },
1531
+ sm: {
1532
+ default: "w-10",
1533
+ narrow: "w-12",
1534
+ wide: "w-[3.25rem]"
1535
+ },
1536
+ md: {
1537
+ default: "w-14",
1538
+ narrow: "w-12",
1539
+ wide: "w-[4.5rem]"
1540
+ },
1541
+ lg: {
1542
+ default: "w-24",
1543
+ narrow: "w-16",
1544
+ wide: "w-32"
1545
+ },
1546
+ xl: {
1547
+ default: "w-[8.5rem]",
1548
+ narrow: "w-[6.5rem]",
1549
+ wide: "w-[11.5rem]"
1550
+ }
1506
1551
  };
1507
1552
  var SIZE_ICON = {
1508
1553
  xs: { cls: "size-5", px: 20 },
@@ -1603,8 +1648,10 @@ var IconButtonComponent = React13.forwardRef(
1603
1648
  variant = "default",
1604
1649
  colorStyle = "standard",
1605
1650
  size = "sm",
1651
+ widthVariant = "default",
1606
1652
  shape = "round",
1607
1653
  selected,
1654
+ selectedIcon,
1608
1655
  loading = false,
1609
1656
  loadingVariant = "loading-indicator",
1610
1657
  iconSize,
@@ -1619,8 +1666,10 @@ var IconButtonComponent = React13.forwardRef(
1619
1666
  "variant",
1620
1667
  "colorStyle",
1621
1668
  "size",
1669
+ "widthVariant",
1622
1670
  "shape",
1623
1671
  "selected",
1672
+ "selectedIcon",
1624
1673
  "loading",
1625
1674
  "loadingVariant",
1626
1675
  "iconSize",
@@ -1630,7 +1679,7 @@ var IconButtonComponent = React13.forwardRef(
1630
1679
  "onKeyDown",
1631
1680
  "aria-label"
1632
1681
  ]);
1633
- var _a2, _b2;
1682
+ var _a2, _b2, _c, _d, _e;
1634
1683
  const isToggle = variant === "toggle";
1635
1684
  const isSelected = isToggle && !!selected;
1636
1685
  const resolvedColorClass = React13.useMemo(
@@ -1661,6 +1710,8 @@ var IconButtonComponent = React13.forwardRef(
1661
1710
  const defaultIconPx = sizeIcon.px;
1662
1711
  const iconPx = iconSize != null ? iconSize : defaultIconPx;
1663
1712
  const isCustomSize = iconSize != null && iconSize !== "inherit";
1713
+ const heightClass = (_c = SIZE_HEIGHT_STYLES[size]) != null ? _c : SIZE_HEIGHT_STYLES.sm;
1714
+ const widthClass = (_e = ((_d = WIDTH_SIZE_STYLES[size]) != null ? _d : WIDTH_SIZE_STYLES.sm)[widthVariant]) != null ? _e : WIDTH_SIZE_STYLES.sm.default;
1664
1715
  const needsTouchTarget = size === "xs" || size === "sm";
1665
1716
  const { ripples, onPointerDown, removeRipple } = useRippleState({
1666
1717
  disabled: loading
@@ -1723,7 +1774,7 @@ var IconButtonComponent = React13.forwardRef(
1723
1774
  transition: SPRING_TRANSITION,
1724
1775
  "aria-hidden": "true",
1725
1776
  className: cn(
1726
- "flex items-center justify-center shrink-0 [&_svg]:w-full [&_svg]:h-full [&_.md-icon]:text-[length:inherit]!",
1777
+ "flex items-center justify-center shrink-0 [&_svg]:w-full [&_svg]:h-full [&_.md-icon]:text-[length:inherit]",
1727
1778
  iconSize != null ? void 0 : iconClass
1728
1779
  ),
1729
1780
  style: {
@@ -1731,9 +1782,9 @@ var IconButtonComponent = React13.forwardRef(
1731
1782
  width: isCustomSize ? `${iconSize}px` : void 0,
1732
1783
  height: isCustomSize ? `${iconSize}px` : void 0
1733
1784
  },
1734
- children: asChild ? React13.Children.only(children).props.children : children
1785
+ children: isSelected && selectedIcon ? selectedIcon : asChild ? React13.Children.only(children).props.children : children
1735
1786
  }),
1736
- "content"
1787
+ isSelected && selectedIcon ? "selected-content" : "content"
1737
1788
  ) })
1738
1789
  ] });
1739
1790
  const containerClassName = cn(
@@ -1742,7 +1793,8 @@ var IconButtonComponent = React13.forwardRef(
1742
1793
  outlineWidthClass,
1743
1794
  disabledBgClass,
1744
1795
  "overflow-hidden",
1745
- SIZE_STYLES[size],
1796
+ heightClass,
1797
+ widthClass,
1746
1798
  loading && "pointer-events-none opacity-75 cursor-not-allowed",
1747
1799
  className
1748
1800
  );
@@ -1759,7 +1811,9 @@ var IconButtonComponent = React13.forwardRef(
1759
1811
  onClick: handleClick,
1760
1812
  onPointerDown,
1761
1813
  onKeyDown: handleKeyDown,
1762
- style: __spreadProps(__spreadValues({}, style), { borderRadius: `${animateRadius}px` }),
1814
+ style: __spreadProps(__spreadValues({}, style), {
1815
+ borderRadius: `${animateRadius}px`
1816
+ }),
1763
1817
  className: containerClassName
1764
1818
  }, restProps), {
1765
1819
  children: React13.cloneElement(child, { children: innerContent })
@@ -1890,16 +1944,16 @@ var CalendarHeader = ({
1890
1944
  }).format(date);
1891
1945
  const yearLabel = String(date.getUTCFullYear());
1892
1946
  return /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-1 px-6 pb-4 pt-5", children: [
1893
- /* @__PURE__ */ jsx("div", { className: "text-[length:var(--md-typescale-label-large-size,14px)] font-[number:var(--md-typescale-label-large-weight,500)] text-m3-on-surface-variant", children: title }),
1894
- /* @__PURE__ */ jsx("div", { className: "mb-2 leading-tight text-[length:var(--md-typescale-headline-large-size,32px)] font-[number:var(--md-typescale-headline-large-weight,400)] text-m3-on-surface-variant", children: headline }),
1895
- displayMode === "picker" && /* @__PURE__ */ jsxs("div", { className: "-mx-2 flex min-h-10 items-center gap-0.5", children: [
1947
+ /* @__PURE__ */ jsx("div", { className: "text-(length:--md-typescale-label-large-size,14px) font-(--md-typescale-label-large-weight,500) text-m3-on-surface-variant", children: title }),
1948
+ /* @__PURE__ */ jsx("div", { className: "mb-2 leading-tight text-(length:--md-typescale-headline-large-size,32px) font-(--md-typescale-headline-large-weight,400) text-m3-on-surface-variant", children: headline }),
1949
+ displayMode === "picker" && /* @__PURE__ */ jsxs("div", { className: "flex min-h-10 items-center gap-0.5", children: [
1896
1950
  activeSelector === null && /* @__PURE__ */ jsx(
1897
1951
  IconButton,
1898
1952
  {
1899
1953
  onClick: onPrev,
1900
1954
  "aria-label": "Previous month",
1901
1955
  disabled: !canNavigatePrev,
1902
- size: "sm",
1956
+ size: "xs",
1903
1957
  children: /* @__PURE__ */ jsx(Icon, { name: "chevron_left" })
1904
1958
  }
1905
1959
  ),
@@ -1921,7 +1975,7 @@ var CalendarHeader = ({
1921
1975
  {
1922
1976
  name: "arrow_drop_down",
1923
1977
  className: cn(
1924
- "text-[20px]",
1978
+ "text-[20px] transition-transform duration-200",
1925
1979
  activeSelector === "month" && "rotate-180"
1926
1980
  )
1927
1981
  }
@@ -1935,7 +1989,7 @@ var CalendarHeader = ({
1935
1989
  onClick: onNext,
1936
1990
  "aria-label": "Next month",
1937
1991
  disabled: !canNavigateNext,
1938
- size: "sm",
1992
+ size: "xs",
1939
1993
  children: /* @__PURE__ */ jsx(Icon, { name: "chevron_right" })
1940
1994
  }
1941
1995
  ),
@@ -1946,7 +2000,7 @@ var CalendarHeader = ({
1946
2000
  onClick: onPreviousYear,
1947
2001
  "aria-label": "Previous year",
1948
2002
  disabled: !canNavigatePreviousYear,
1949
- size: "sm",
2003
+ size: "xs",
1950
2004
  children: /* @__PURE__ */ jsx(Icon, { name: "chevron_left" })
1951
2005
  }
1952
2006
  ),
@@ -1968,7 +2022,7 @@ var CalendarHeader = ({
1968
2022
  {
1969
2023
  name: "arrow_drop_down",
1970
2024
  className: cn(
1971
- "text-[20px]",
2025
+ "text-[20px] transition-transform duration-200",
1972
2026
  activeSelector === "year" && "rotate-180"
1973
2027
  )
1974
2028
  }
@@ -1982,7 +2036,7 @@ var CalendarHeader = ({
1982
2036
  onClick: onNextYear,
1983
2037
  "aria-label": "Next year",
1984
2038
  disabled: !canNavigateNextYear,
1985
- size: "sm",
2039
+ size: "xs",
1986
2040
  children: /* @__PURE__ */ jsx(Icon, { name: "chevron_right" })
1987
2041
  }
1988
2042
  ),
@@ -1991,7 +2045,7 @@ var CalendarHeader = ({
1991
2045
  {
1992
2046
  onClick: onToggleMode,
1993
2047
  "aria-label": "Switch to text input",
1994
- size: "sm",
2048
+ size: "xs",
1995
2049
  children: /* @__PURE__ */ jsx(Icon, { name: "keyboard" })
1996
2050
  }
1997
2051
  )
@@ -2002,7 +2056,7 @@ var CalendarHeader = ({
2002
2056
  {
2003
2057
  onClick: onToggleMode,
2004
2058
  "aria-label": "Switch to calendar",
2005
- size: "sm",
2059
+ size: "xs",
2006
2060
  className: "self-end",
2007
2061
  children: /* @__PURE__ */ jsx(Icon, { name: "calendar_month" })
2008
2062
  }
@@ -2265,9 +2319,12 @@ var DatePicker = ({
2265
2319
  "input-mode"
2266
2320
  )
2267
2321
  ) : activeSelector === "month" ? /* @__PURE__ */ jsx(
2268
- "div",
2322
+ m.div,
2269
2323
  {
2270
2324
  id: "date-picker-selection",
2325
+ initial: PICKER_SELECTOR_ANIM.initial,
2326
+ animate: PICKER_SELECTOR_ANIM.animate,
2327
+ exit: PICKER_SELECTOR_ANIM.exit,
2271
2328
  className: "absolute inset-0",
2272
2329
  children: /* @__PURE__ */ jsx(
2273
2330
  MonthPickerList,
@@ -2280,9 +2337,12 @@ var DatePicker = ({
2280
2337
  },
2281
2338
  "month-list"
2282
2339
  ) : activeSelector === "year" ? /* @__PURE__ */ jsx(
2283
- "div",
2340
+ m.div,
2284
2341
  {
2285
2342
  id: "date-picker-selection",
2343
+ initial: PICKER_SELECTOR_ANIM.initial,
2344
+ animate: PICKER_SELECTOR_ANIM.animate,
2345
+ exit: PICKER_SELECTOR_ANIM.exit,
2286
2346
  className: "absolute inset-0",
2287
2347
  children: /* @__PURE__ */ jsx(
2288
2348
  YearPickerList,
@@ -2915,9 +2975,12 @@ var DateRangePicker = ({
2915
2975
  className: "relative flex-1 overflow-hidden",
2916
2976
  style: { minHeight: "296px" },
2917
2977
  children: /* @__PURE__ */ jsx(AnimatePresence, { mode: "wait", children: activeSelector === "month" ? /* @__PURE__ */ jsx(
2918
- "div",
2978
+ m.div,
2919
2979
  {
2920
2980
  id: "date-picker-selection",
2981
+ initial: PICKER_SELECTOR_ANIM.initial,
2982
+ animate: PICKER_SELECTOR_ANIM.animate,
2983
+ exit: PICKER_SELECTOR_ANIM.exit,
2921
2984
  className: "absolute inset-0",
2922
2985
  children: /* @__PURE__ */ jsx(
2923
2986
  MonthPickerList,
@@ -2930,9 +2993,12 @@ var DateRangePicker = ({
2930
2993
  },
2931
2994
  "month-list"
2932
2995
  ) : activeSelector === "year" ? /* @__PURE__ */ jsx(
2933
- "div",
2996
+ m.div,
2934
2997
  {
2935
2998
  id: "date-picker-selection",
2999
+ initial: PICKER_SELECTOR_ANIM.initial,
3000
+ animate: PICKER_SELECTOR_ANIM.animate,
3001
+ exit: PICKER_SELECTOR_ANIM.exit,
2936
3002
  className: "absolute inset-0",
2937
3003
  children: /* @__PURE__ */ jsx(
2938
3004
  YearPickerList,
@@ -4101,7 +4167,7 @@ var TimePickerDialog = ({
4101
4167
  TimePickerDialog.displayName = "TimePickerDialog";
4102
4168
  var clamp = (value, min, max) => Math.max(min, Math.min(max, value));
4103
4169
  var isValidHourInput = (h, is24hour) => is24hour ? h >= 0 && h <= 23 : h >= 1 && h <= 12;
4104
- var isValidMinuteInput = (m11) => m11 >= 0 && m11 <= 59;
4170
+ var isValidMinuteInput = (m13) => m13 >= 0 && m13 <= 59;
4105
4171
  var to24Hour = (hour12, isPm) => {
4106
4172
  if (isPm) {
4107
4173
  return hour12 === 12 ? 12 : hour12 + 12;
@@ -4137,8 +4203,8 @@ var useTimePickerState = (options) => {
4137
4203
  },
4138
4204
  [is24hour]
4139
4205
  );
4140
- const setMinute = useCallback((m11) => {
4141
- const clamped = clamp(m11, 0, 59);
4206
+ const setMinute = useCallback((m13) => {
4207
+ const clamped = clamp(m13, 0, 59);
4142
4208
  setMinuteState(clamped);
4143
4209
  setMinuteInputState(clamped);
4144
4210
  }, []);
@@ -4152,10 +4218,10 @@ var useTimePickerState = (options) => {
4152
4218
  },
4153
4219
  [is24hour, isPm]
4154
4220
  );
4155
- const setMinuteInput = useCallback((m11) => {
4156
- setMinuteInputState(m11);
4157
- if (isValidMinuteInput(m11)) {
4158
- setMinuteState(m11);
4221
+ const setMinuteInput = useCallback((m13) => {
4222
+ setMinuteInputState(m13);
4223
+ if (isValidMinuteInput(m13)) {
4224
+ setMinuteState(m13);
4159
4225
  }
4160
4226
  }, []);
4161
4227
  const setSelection = useCallback((mode) => {