@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.
- package/CHANGELOG.md +12 -0
- package/dist/buttons.d.mts +26 -5
- package/dist/buttons.d.ts +26 -5
- package/dist/buttons.js +581 -345
- package/dist/buttons.js.map +1 -1
- package/dist/buttons.mjs +573 -345
- package/dist/buttons.mjs.map +1 -1
- package/dist/core.js +52 -13
- package/dist/core.js.map +1 -1
- package/dist/core.mjs +52 -13
- package/dist/core.mjs.map +1 -1
- package/dist/feedback.js +52 -13
- package/dist/feedback.js.map +1 -1
- package/dist/feedback.mjs +52 -13
- package/dist/feedback.mjs.map +1 -1
- package/dist/forms.js +4 -1
- package/dist/forms.js.map +1 -1
- package/dist/forms.mjs +4 -1
- package/dist/forms.mjs.map +1 -1
- package/dist/{icon-button-sSt6PPLg.d.mts → icon-button-CSsDmuQC.d.mts} +13 -0
- package/dist/{icon-button-sSt6PPLg.d.ts → icon-button-CSsDmuQC.d.ts} +13 -0
- package/dist/index.d.mts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +1483 -1027
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1342 -887
- package/dist/index.mjs.map +1 -1
- package/dist/layout.js +15 -7
- package/dist/layout.js.map +1 -1
- package/dist/layout.mjs +15 -7
- package/dist/layout.mjs.map +1 -1
- package/dist/navigation.d.mts +7 -1
- package/dist/navigation.d.ts +7 -1
- package/dist/navigation.js +281 -38
- package/dist/navigation.js.map +1 -1
- package/dist/navigation.mjs +281 -38
- package/dist/navigation.mjs.map +1 -1
- package/dist/overlays.js +52 -13
- package/dist/overlays.js.map +1 -1
- package/dist/overlays.mjs +52 -13
- package/dist/overlays.mjs.map +1 -1
- package/dist/pickers.js +177 -111
- package/dist/pickers.js.map +1 -1
- package/dist/pickers.mjs +177 -111
- package/dist/pickers.mjs.map +1 -1
- package/dist/{split-button-trailing-uncheckable-BcPD_7uK.d.ts → split-button-trailing-uncheckable-C-qQlyZx.d.ts} +74 -19
- package/dist/{split-button-trailing-uncheckable-DtFJkTFr.d.mts → split-button-trailing-uncheckable-DHJqNeq_.d.mts} +74 -19
- 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.
|
|
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
|
|
1501
|
-
xs: "h-8
|
|
1502
|
-
sm: "h-10
|
|
1503
|
-
md: "h-14
|
|
1504
|
-
lg: "h-24
|
|
1505
|
-
xl: "h-[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
|
-
|
|
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), {
|
|
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-
|
|
1894
|
-
/* @__PURE__ */ jsx("div", { className: "mb-2 leading-tight text-
|
|
1895
|
-
displayMode === "picker" && /* @__PURE__ */ jsxs("div", { className: "
|
|
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: "
|
|
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: "
|
|
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: "
|
|
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: "
|
|
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: "
|
|
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: "
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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 = (
|
|
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((
|
|
4141
|
-
const clamped = clamp(
|
|
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((
|
|
4156
|
-
setMinuteInputState(
|
|
4157
|
-
if (isValidMinuteInput(
|
|
4158
|
-
setMinuteState(
|
|
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) => {
|