@mdigital_ui/ui 0.2.5 → 0.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/accordion/index.js +3 -3
- package/dist/badge/index.js +3 -3
- package/dist/breadcrumbs/index.js +5 -5
- package/dist/button/index.js +4 -4
- package/dist/button-group/index.js +2 -2
- package/dist/card/index.js +2 -2
- package/dist/carousel/index.js +2 -1
- package/dist/cascader/index.js +2 -2
- package/dist/chart/index.js +2 -2
- package/dist/checkbox/index.js +3 -3
- package/dist/checkbox-group/index.js +2 -2
- package/dist/chunk-22FIGRGO.js +312 -0
- package/dist/chunk-22FIGRGO.js.map +1 -0
- package/dist/{chunk-GEWR5ROK.js → chunk-23BPDLT4.js} +9 -16
- package/dist/chunk-23BPDLT4.js.map +1 -0
- package/dist/{chunk-YNNAOXU5.js → chunk-2OGZENFC.js} +3 -4
- package/dist/chunk-2OGZENFC.js.map +1 -0
- package/dist/{chunk-SOV4PE3P.js → chunk-35K7N4JT.js} +11 -4
- package/dist/chunk-35K7N4JT.js.map +1 -0
- package/dist/chunk-3QKPSJTV.js +120 -0
- package/dist/chunk-3QKPSJTV.js.map +1 -0
- package/dist/chunk-3WVJE5MF.js +735 -0
- package/dist/chunk-3WVJE5MF.js.map +1 -0
- package/dist/chunk-555KXZRK.js +73 -0
- package/dist/chunk-555KXZRK.js.map +1 -0
- package/dist/{chunk-FYHQDFKE.js → chunk-6IPISGTP.js} +31 -9
- package/dist/chunk-6IPISGTP.js.map +1 -0
- package/dist/chunk-6MYKJE6A.js +312 -0
- package/dist/chunk-6MYKJE6A.js.map +1 -0
- package/dist/{chunk-6V5I5HJ2.js → chunk-6PFBSVLK.js} +4 -4
- package/dist/{chunk-6V5I5HJ2.js.map → chunk-6PFBSVLK.js.map} +1 -1
- package/dist/{chunk-267WNY3E.js → chunk-77YTCM7G.js} +53 -60
- package/dist/chunk-77YTCM7G.js.map +1 -0
- package/dist/{chunk-XMAH5PDW.js → chunk-7BUNJYZO.js} +11 -10
- package/dist/chunk-7BUNJYZO.js.map +1 -0
- package/dist/chunk-7ODPSHIQ.js +78 -0
- package/dist/chunk-7ODPSHIQ.js.map +1 -0
- package/dist/{chunk-ZNJ7M5QK.js → chunk-7TN4PGYF.js} +29 -22
- package/dist/chunk-7TN4PGYF.js.map +1 -0
- package/dist/{chunk-RPAQAZTI.js → chunk-7YPX6NJK.js} +3 -3
- package/dist/{chunk-RPAQAZTI.js.map → chunk-7YPX6NJK.js.map} +1 -1
- package/dist/{chunk-LEKLQR4I.js → chunk-ARK3EROZ.js} +55 -38
- package/dist/chunk-ARK3EROZ.js.map +1 -0
- package/dist/chunk-AVPPV5OM.js +203 -0
- package/dist/chunk-AVPPV5OM.js.map +1 -0
- package/dist/{chunk-NNSS366W.js → chunk-BYWYC7RC.js} +38 -5
- package/dist/chunk-BYWYC7RC.js.map +1 -0
- package/dist/{chunk-R225A5II.js → chunk-C2MZL644.js} +3 -3
- package/dist/{chunk-R225A5II.js.map → chunk-C2MZL644.js.map} +1 -1
- package/dist/{chunk-7PKVBUGL.js → chunk-CPPFXCNB.js} +3 -3
- package/dist/{chunk-7PKVBUGL.js.map → chunk-CPPFXCNB.js.map} +1 -1
- package/dist/chunk-DP6AWUH5.js +93 -0
- package/dist/chunk-DP6AWUH5.js.map +1 -0
- package/dist/{chunk-D3JWPGCA.js → chunk-DV5J5NLI.js} +6 -55
- package/dist/chunk-DV5J5NLI.js.map +1 -0
- package/dist/chunk-EFMKUCGX.js +104 -0
- package/dist/chunk-EFMKUCGX.js.map +1 -0
- package/dist/chunk-GFQXGLFD.js +256 -0
- package/dist/chunk-GFQXGLFD.js.map +1 -0
- package/dist/{chunk-SK5ECBBK.js → chunk-GGREAJO5.js} +8 -4
- package/dist/chunk-GGREAJO5.js.map +1 -0
- package/dist/{chunk-S5XJXU52.js → chunk-GH3CNX5N.js} +3 -3
- package/dist/{chunk-S5XJXU52.js.map → chunk-GH3CNX5N.js.map} +1 -1
- package/dist/{chunk-FCMVKFVV.js → chunk-HBEJ4S2Y.js} +11 -11
- package/dist/chunk-HBEJ4S2Y.js.map +1 -0
- package/dist/{chunk-SAVE5ACL.js → chunk-HWSLJGT7.js} +3 -3
- package/dist/{chunk-SAVE5ACL.js.map → chunk-HWSLJGT7.js.map} +1 -1
- package/dist/{chunk-BNILRB4T.js → chunk-IHKPZOE5.js} +10 -7
- package/dist/chunk-IHKPZOE5.js.map +1 -0
- package/dist/{chunk-I5ANSIDK.js → chunk-INH7KYCK.js} +17 -17
- package/dist/chunk-INH7KYCK.js.map +1 -0
- package/dist/{chunk-Y5A26EGR.js → chunk-IRNJZ754.js} +9 -9
- package/dist/{chunk-Y5A26EGR.js.map → chunk-IRNJZ754.js.map} +1 -1
- package/dist/{chunk-MLDX3Z67.js → chunk-IUUEYOMN.js} +3 -3
- package/dist/{chunk-MLDX3Z67.js.map → chunk-IUUEYOMN.js.map} +1 -1
- package/dist/chunk-JFGLDCAK.js +225 -0
- package/dist/chunk-JFGLDCAK.js.map +1 -0
- package/dist/{chunk-C7SXY3ZV.js → chunk-JGQOEAWL.js} +3 -3
- package/dist/{chunk-C7SXY3ZV.js.map → chunk-JGQOEAWL.js.map} +1 -1
- package/dist/{chunk-75XESYGN.js → chunk-L6EVOPWH.js} +5 -13
- package/dist/chunk-L6EVOPWH.js.map +1 -0
- package/dist/{chunk-XMKNYG7I.js → chunk-LSQLUYTD.js} +35 -24
- package/dist/chunk-LSQLUYTD.js.map +1 -0
- package/dist/{chunk-QPJL66S7.js → chunk-MDY3HCRC.js} +80 -41
- package/dist/chunk-MDY3HCRC.js.map +1 -0
- package/dist/chunk-MLNIKNLI.js +150 -0
- package/dist/chunk-MLNIKNLI.js.map +1 -0
- package/dist/{chunk-J3G5WWGR.js → chunk-NQB4V5P7.js} +6 -14
- package/dist/chunk-NQB4V5P7.js.map +1 -0
- package/dist/chunk-NZA526GC.js +106 -0
- package/dist/chunk-NZA526GC.js.map +1 -0
- package/dist/{chunk-FGWSUPVW.js → chunk-O2VJ6KP4.js} +8 -3
- package/dist/chunk-O2VJ6KP4.js.map +1 -0
- package/dist/{chunk-OALOWWO7.js → chunk-PQZB43VJ.js} +32 -36
- package/dist/chunk-PQZB43VJ.js.map +1 -0
- package/dist/{chunk-UAMFKX6L.js → chunk-QVCGNOBE.js} +34 -20
- package/dist/chunk-QVCGNOBE.js.map +1 -0
- package/dist/{chunk-ASW7TEAN.js → chunk-R2FZO7AM.js} +14 -14
- package/dist/chunk-R2FZO7AM.js.map +1 -0
- package/dist/{chunk-HUVXKOJC.js → chunk-SGMIDNPI.js} +13 -9
- package/dist/chunk-SGMIDNPI.js.map +1 -0
- package/dist/{chunk-DOKTHDG3.js → chunk-SMVVCZNM.js} +3 -3
- package/dist/{chunk-DOKTHDG3.js.map → chunk-SMVVCZNM.js.map} +1 -1
- package/dist/{chunk-FPOXTCYV.js → chunk-SOIF4SHB.js} +8 -8
- package/dist/chunk-SOIF4SHB.js.map +1 -0
- package/dist/{chunk-RMGIO27V.js → chunk-SYDNDYZJ.js} +20 -4
- package/dist/chunk-SYDNDYZJ.js.map +1 -0
- package/dist/chunk-TG2AECIN.js +446 -0
- package/dist/chunk-TG2AECIN.js.map +1 -0
- package/dist/{chunk-JLTDJ3VZ.js → chunk-TIMRHEKH.js} +4 -4
- package/dist/{chunk-JLTDJ3VZ.js.map → chunk-TIMRHEKH.js.map} +1 -1
- package/dist/chunk-TUTOU4X6.js +574 -0
- package/dist/chunk-TUTOU4X6.js.map +1 -0
- package/dist/chunk-TWZ5LXLL.js +254 -0
- package/dist/chunk-TWZ5LXLL.js.map +1 -0
- package/dist/{chunk-DPOSWW22.js → chunk-XG3KLPPS.js} +5 -3
- package/dist/chunk-XG3KLPPS.js.map +1 -0
- package/dist/{chunk-BP434VYV.js → chunk-Y2CXG3PT.js} +12 -12
- package/dist/chunk-Y2CXG3PT.js.map +1 -0
- package/dist/{chunk-ROR4E6IE.js → chunk-YII4K64U.js} +5 -5
- package/dist/{chunk-ROR4E6IE.js.map → chunk-YII4K64U.js.map} +1 -1
- package/dist/clipboard/index.js +2 -2
- package/dist/collapse/index.js +2 -2
- package/dist/command/index.js +3 -3
- package/dist/date-picker/index.js +4 -3
- package/dist/descriptions/index.js +2 -2
- package/dist/drawer/index.js +2 -2
- package/dist/dropdown/index.js +4 -3
- package/dist/empty/index.js +2 -2
- package/dist/fetching-overlay/index.js +4 -3
- package/dist/grid/index.js +2 -2
- package/dist/image/index.js +2 -2
- package/dist/index.d.ts +1358 -156
- package/dist/index.js +762 -65
- package/dist/index.js.map +1 -1
- package/dist/input/index.js +4 -3
- package/dist/input-group/index.js +2 -2
- package/dist/input-otp/index.js +2 -2
- package/dist/input-password/index.js +5 -4
- package/dist/kbd/index.js +3 -2
- package/dist/modal/index.js +2 -2
- package/dist/multi-select/index.js +4 -3
- package/dist/notification/index.js +3 -2
- package/dist/pagination/index.js +2 -2
- package/dist/popover/index.js +3 -2
- package/dist/progress/index.js +2 -2
- package/dist/radio/index.js +3 -2
- package/dist/radio-group/index.js +2 -2
- package/dist/rating/index.js +2 -2
- package/dist/ribbon/index.js +2 -2
- package/dist/select/index.js +5 -4
- package/dist/skeleton/index.js +3 -2
- package/dist/slider/index.js +2 -2
- package/dist/spinner/index.js +3 -2
- package/dist/stepper/index.js +2 -2
- package/dist/styles/base.css +2033 -1313
- package/dist/styles/global.css +1242 -459
- package/dist/switch/index.js +3 -2
- package/dist/table/index.js +10 -10
- package/dist/tabs/index.js +3 -3
- package/dist/textarea/index.js +2 -2
- package/dist/toggle/index.js +2 -2
- package/dist/toggle-group/index.js +2 -2
- package/dist/tooltip/index.js +3 -2
- package/dist/transfer/index.js +4 -4
- package/dist/tree/index.js +2 -2
- package/dist/tree-select/index.js +5 -4
- package/dist/upload/index.js +2 -2
- package/package.json +3 -1
- package/dist/chunk-267WNY3E.js.map +0 -1
- package/dist/chunk-2EKAF6EJ.js +0 -128
- package/dist/chunk-2EKAF6EJ.js.map +0 -1
- package/dist/chunk-3PFA3YG6.js +0 -228
- package/dist/chunk-3PFA3YG6.js.map +0 -1
- package/dist/chunk-56IXGP5C.js +0 -56
- package/dist/chunk-56IXGP5C.js.map +0 -1
- package/dist/chunk-5UEWVFF6.js +0 -212
- package/dist/chunk-5UEWVFF6.js.map +0 -1
- package/dist/chunk-75XESYGN.js.map +0 -1
- package/dist/chunk-ASW7TEAN.js.map +0 -1
- package/dist/chunk-AWPKZYHT.js +0 -152
- package/dist/chunk-AWPKZYHT.js.map +0 -1
- package/dist/chunk-BFO3ARVJ.js +0 -104
- package/dist/chunk-BFO3ARVJ.js.map +0 -1
- package/dist/chunk-BNILRB4T.js.map +0 -1
- package/dist/chunk-BP434VYV.js.map +0 -1
- package/dist/chunk-C3MX5EXL.js +0 -95
- package/dist/chunk-C3MX5EXL.js.map +0 -1
- package/dist/chunk-D3JWPGCA.js.map +0 -1
- package/dist/chunk-DPOSWW22.js.map +0 -1
- package/dist/chunk-FCMVKFVV.js.map +0 -1
- package/dist/chunk-FGWSUPVW.js.map +0 -1
- package/dist/chunk-FPOXTCYV.js.map +0 -1
- package/dist/chunk-FYHQDFKE.js.map +0 -1
- package/dist/chunk-G6TAVRTJ.js +0 -640
- package/dist/chunk-G6TAVRTJ.js.map +0 -1
- package/dist/chunk-GEWR5ROK.js.map +0 -1
- package/dist/chunk-HUVXKOJC.js.map +0 -1
- package/dist/chunk-I5ANSIDK.js.map +0 -1
- package/dist/chunk-J3G5WWGR.js.map +0 -1
- package/dist/chunk-KBCBVH7B.js +0 -51
- package/dist/chunk-KBCBVH7B.js.map +0 -1
- package/dist/chunk-KNQ7UQ2W.js +0 -143
- package/dist/chunk-KNQ7UQ2W.js.map +0 -1
- package/dist/chunk-KTAIRCOL.js +0 -100
- package/dist/chunk-KTAIRCOL.js.map +0 -1
- package/dist/chunk-LEKLQR4I.js.map +0 -1
- package/dist/chunk-NNSS366W.js.map +0 -1
- package/dist/chunk-OALOWWO7.js.map +0 -1
- package/dist/chunk-OOS3B7YZ.js +0 -94
- package/dist/chunk-OOS3B7YZ.js.map +0 -1
- package/dist/chunk-OQANRZPV.js +0 -197
- package/dist/chunk-OQANRZPV.js.map +0 -1
- package/dist/chunk-OW5A5IIF.js +0 -175
- package/dist/chunk-OW5A5IIF.js.map +0 -1
- package/dist/chunk-QPJL66S7.js.map +0 -1
- package/dist/chunk-RMGIO27V.js.map +0 -1
- package/dist/chunk-SK5ECBBK.js.map +0 -1
- package/dist/chunk-SOV4PE3P.js.map +0 -1
- package/dist/chunk-UAMFKX6L.js.map +0 -1
- package/dist/chunk-XMAH5PDW.js.map +0 -1
- package/dist/chunk-XMKNYG7I.js.map +0 -1
- package/dist/chunk-YNNAOXU5.js.map +0 -1
- package/dist/chunk-YZ6V6BQ7.js +0 -134
- package/dist/chunk-YZ6V6BQ7.js.map +0 -1
- package/dist/chunk-YZVSDRJD.js +0 -253
- package/dist/chunk-YZVSDRJD.js.map +0 -1
- package/dist/chunk-ZNJ7M5QK.js.map +0 -1
|
@@ -1,30 +1,30 @@
|
|
|
1
|
-
import { spinner_default } from './chunk-
|
|
2
|
-
import { getValidationStatus, cn, iconSizes, statusMessageVariants } from './chunk-
|
|
1
|
+
import { spinner_default } from './chunk-NQB4V5P7.js';
|
|
2
|
+
import { getValidationStatus, cn, iconSizes, statusMessageVariants } from './chunk-2OGZENFC.js';
|
|
3
3
|
import { cva } from 'class-variance-authority';
|
|
4
4
|
import { X } from 'lucide-react';
|
|
5
|
-
import React from 'react';
|
|
6
|
-
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
5
|
+
import React, { useId } from 'react';
|
|
6
|
+
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
7
7
|
|
|
8
8
|
var inputVariants = cva(
|
|
9
|
-
"w-full placeholder:text-text-
|
|
9
|
+
"w-full placeholder:text-text-secondary/50 rounded-md disabled:opacity-50 disabled:cursor-not-allowed read-only:bg-surface read-only:cursor-default outline-none text-text-primary transition-colors",
|
|
10
10
|
{
|
|
11
11
|
variants: {
|
|
12
12
|
variant: {
|
|
13
|
-
outline: "bg-background border border-border",
|
|
14
|
-
filled: "bg-surface border border-transparent"
|
|
13
|
+
outline: "bg-background border border-border focus:border-primary",
|
|
14
|
+
filled: "bg-surface border border-transparent focus:border-primary"
|
|
15
15
|
},
|
|
16
16
|
status: {
|
|
17
17
|
default: "",
|
|
18
|
-
error: "
|
|
19
|
-
warning: "
|
|
20
|
-
info: "
|
|
21
|
-
success: "
|
|
18
|
+
error: "border-error focus:border-error",
|
|
19
|
+
warning: "border-warning focus:border-warning",
|
|
20
|
+
info: "border-info focus:border-info",
|
|
21
|
+
success: "border-success focus:border-success"
|
|
22
22
|
},
|
|
23
23
|
size: {
|
|
24
|
-
xs: "h-
|
|
25
|
-
sm: "h-
|
|
26
|
-
md: "h-
|
|
27
|
-
lg: "h-
|
|
24
|
+
xs: "h-(--input-height-xs) px-(--input-padding-x-xs) text-xs",
|
|
25
|
+
sm: "h-(--input-height-sm) px-(--input-padding-x-sm) text-sm",
|
|
26
|
+
md: "h-(--input-height-md) px-(--input-padding-x-md) text-base",
|
|
27
|
+
lg: "h-(--input-height-lg) px-(--input-padding-x-lg) text-lg"
|
|
28
28
|
},
|
|
29
29
|
fullWidth: {
|
|
30
30
|
true: "w-full",
|
|
@@ -67,6 +67,9 @@ var Input = React.memo(
|
|
|
67
67
|
}) => {
|
|
68
68
|
const [internalValue, setInternalValue] = React.useState("");
|
|
69
69
|
const currentValue = value !== void 0 ? value : internalValue;
|
|
70
|
+
const uniqueId = useId();
|
|
71
|
+
const helperId = `input-helper-${uniqueId}`;
|
|
72
|
+
const loadingId = `input-loading-${uniqueId}`;
|
|
70
73
|
const { status, message: helperMessage } = getValidationStatus({
|
|
71
74
|
error,
|
|
72
75
|
warning,
|
|
@@ -87,6 +90,10 @@ var Input = React.memo(
|
|
|
87
90
|
}, [value, onClear]);
|
|
88
91
|
const showClear = clearable && currentValue && !props.disabled && !props.readOnly;
|
|
89
92
|
const hasRightIcon = rightIcon || showClear || loading;
|
|
93
|
+
const ariaDescribedBy = [
|
|
94
|
+
helperMessage ? helperId : null,
|
|
95
|
+
loading ? loadingId : null
|
|
96
|
+
].filter(Boolean).join(" ") || void 0;
|
|
90
97
|
const inputElement = /* @__PURE__ */ jsxs(
|
|
91
98
|
"div",
|
|
92
99
|
{
|
|
@@ -96,7 +103,7 @@ var Input = React.memo(
|
|
|
96
103
|
loading && "opacity-50 cursor-not-allowed"
|
|
97
104
|
),
|
|
98
105
|
children: [
|
|
99
|
-
leftIcon && /* @__PURE__ */ jsx("div", { className: "absolute left-3 flex items-center h-full top-0 text-text-secondary", children: leftIcon }),
|
|
106
|
+
leftIcon && /* @__PURE__ */ jsx("div", { className: "absolute left-3 flex items-center h-full top-0 text-text-secondary", "aria-hidden": "true", children: leftIcon }),
|
|
100
107
|
/* @__PURE__ */ jsx(
|
|
101
108
|
"input",
|
|
102
109
|
{
|
|
@@ -111,7 +118,8 @@ var Input = React.memo(
|
|
|
111
118
|
onChange: handleChange,
|
|
112
119
|
maxLength,
|
|
113
120
|
"aria-invalid": status === "error",
|
|
114
|
-
"aria-
|
|
121
|
+
"aria-busy": loading,
|
|
122
|
+
"aria-describedby": ariaDescribedBy,
|
|
115
123
|
...props
|
|
116
124
|
}
|
|
117
125
|
),
|
|
@@ -121,12 +129,15 @@ var Input = React.memo(
|
|
|
121
129
|
{
|
|
122
130
|
type: "button",
|
|
123
131
|
onClick: handleClear,
|
|
124
|
-
className: "flex items-center h-full top-0 text-text-
|
|
132
|
+
className: "flex items-center h-full top-0 text-text-secondary hover:text-text-primary",
|
|
125
133
|
"aria-label": "Clear input",
|
|
126
|
-
children: /* @__PURE__ */ jsx(X, { className: iconSizes[size] })
|
|
134
|
+
children: /* @__PURE__ */ jsx(X, { className: iconSizes[size], "aria-hidden": "true" })
|
|
127
135
|
}
|
|
128
136
|
),
|
|
129
|
-
loading ? /* @__PURE__ */
|
|
137
|
+
loading ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
138
|
+
/* @__PURE__ */ jsx(spinner_default, { "aria-hidden": "true" }),
|
|
139
|
+
/* @__PURE__ */ jsx("span", { id: loadingId, className: "sr-only", children: "Loading" })
|
|
140
|
+
] }) : rightIcon && /* @__PURE__ */ jsx("span", { "aria-hidden": "true", children: rightIcon })
|
|
130
141
|
] })
|
|
131
142
|
]
|
|
132
143
|
}
|
|
@@ -148,7 +159,7 @@ var Input = React.memo(
|
|
|
148
159
|
helperMessage && messagePosition === "top" && /* @__PURE__ */ jsx(
|
|
149
160
|
"p",
|
|
150
161
|
{
|
|
151
|
-
id:
|
|
162
|
+
id: helperId,
|
|
152
163
|
className: statusMessageVariants({ status }),
|
|
153
164
|
children: helperMessage
|
|
154
165
|
}
|
|
@@ -163,7 +174,7 @@ var Input = React.memo(
|
|
|
163
174
|
helperMessage && messagePosition === "bottom" && /* @__PURE__ */ jsx(
|
|
164
175
|
"p",
|
|
165
176
|
{
|
|
166
|
-
id:
|
|
177
|
+
id: helperId,
|
|
167
178
|
className: cn(statusMessageVariants({ status }), "mt-0.5"),
|
|
168
179
|
children: helperMessage
|
|
169
180
|
}
|
|
@@ -177,5 +188,5 @@ Input.displayName = "Input";
|
|
|
177
188
|
var input_default = Input;
|
|
178
189
|
|
|
179
190
|
export { input_default };
|
|
180
|
-
//# sourceMappingURL=chunk-
|
|
181
|
-
//# sourceMappingURL=chunk-
|
|
191
|
+
//# sourceMappingURL=chunk-LSQLUYTD.js.map
|
|
192
|
+
//# sourceMappingURL=chunk-LSQLUYTD.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/input/index.tsx"],"names":[],"mappings":"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","file":"chunk-LSQLUYTD.js","sourcesContent":["import { cva } from 'class-variance-authority'\nimport { X } from 'lucide-react'\nimport React, { useId } from 'react'\n\nimport Spinner from '../spinner'\n\nimport {\n cn,\n getValidationStatus,\n iconSizes,\n statusMessageVariants,\n} from '../utils'\nimport type { InputProps } from './types'\n\nconst inputVariants = cva(\n 'w-full placeholder:text-text-secondary/50 rounded-md disabled:opacity-50 disabled:cursor-not-allowed read-only:bg-surface read-only:cursor-default outline-none text-text-primary transition-colors',\n {\n variants: {\n variant: {\n outline: 'bg-background border border-border focus:border-primary',\n filled: 'bg-surface border border-transparent focus:border-primary',\n },\n status: {\n default: '',\n error: 'border-error focus:border-error',\n warning: 'border-warning focus:border-warning',\n info: 'border-info focus:border-info',\n success: 'border-success focus:border-success',\n },\n size: {\n xs: 'h-(--input-height-xs) px-(--input-padding-x-xs) text-xs',\n sm: 'h-(--input-height-sm) px-(--input-padding-x-sm) text-sm',\n md: 'h-(--input-height-md) px-(--input-padding-x-md) text-base',\n lg: 'h-(--input-height-lg) px-(--input-padding-x-lg) text-lg',\n },\n fullWidth: {\n true: 'w-full',\n false: 'max-w-full',\n },\n },\n defaultVariants: {\n variant: 'outline',\n status: 'default',\n size: 'md',\n fullWidth: true,\n },\n },\n)\n\nconst Input = React.memo<InputProps>(\n ({\n variant = 'outline',\n size = 'md',\n label,\n error,\n warning,\n info,\n success,\n helperText,\n messagePosition = 'bottom',\n leftIcon,\n rightIcon,\n clearable = false,\n onClear,\n loading = false,\n maxLength,\n showCount = false,\n fullWidth = true,\n className,\n wrapperClassName,\n value,\n onChange,\n ref,\n ...props\n }) => {\n const [internalValue, setInternalValue] = React.useState('')\n const currentValue = value !== undefined ? value : internalValue\n\n // Generate unique IDs for accessibility\n const uniqueId = useId()\n const helperId = `input-helper-${uniqueId}`\n const loadingId = `input-loading-${uniqueId}`\n\n // Use shared validation status utility\n const { status, message: helperMessage } = getValidationStatus({\n error,\n warning,\n info,\n success,\n helperText,\n })\n\n const handleChange = React.useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n if (value === undefined) setInternalValue(e.target.value)\n onChange?.(e)\n },\n [value, onChange],\n )\n\n const handleClear = React.useCallback(() => {\n if (value === undefined) setInternalValue('')\n onClear?.()\n }, [value, onClear])\n\n const showClear =\n clearable && currentValue && !props.disabled && !props.readOnly\n const hasRightIcon = rightIcon || showClear || loading\n\n // Build aria-describedby value\n const ariaDescribedBy = [\n helperMessage ? helperId : null,\n loading ? loadingId : null,\n ]\n .filter(Boolean)\n .join(' ') || undefined\n\n const inputElement = (\n <div\n className={cn(\n 'relative w-full',\n wrapperClassName,\n loading && 'opacity-50 cursor-not-allowed',\n )}\n >\n {leftIcon && (\n <div className=\"absolute left-3 flex items-center h-full top-0 text-text-secondary\" aria-hidden=\"true\">\n {leftIcon}\n </div>\n )}\n <input\n ref={ref}\n className={cn(\n inputVariants({ variant, status, size, fullWidth }),\n !!leftIcon && 'pl-10',\n !!hasRightIcon && 'pr-8',\n className,\n )}\n value={currentValue}\n onChange={handleChange}\n maxLength={maxLength}\n aria-invalid={status === 'error'}\n aria-busy={loading}\n aria-describedby={ariaDescribedBy}\n {...props}\n />\n <div className=\"absolute right-3 flex gap-2 items-center h-full top-0 text-text-secondary\">\n {showClear && !loading && (\n <button\n type=\"button\"\n onClick={handleClear}\n className=\"flex items-center h-full top-0 text-text-secondary hover:text-text-primary\"\n aria-label=\"Clear input\"\n >\n <X className={iconSizes[size]} aria-hidden=\"true\" />\n </button>\n )}\n {loading ? (\n <>\n <Spinner aria-hidden=\"true\" />\n <span id={loadingId} className=\"sr-only\">Loading</span>\n </>\n ) : (\n rightIcon && <span aria-hidden=\"true\">{rightIcon}</span>\n )}\n </div>\n </div>\n )\n\n if (!label && !helperMessage && !showCount) return inputElement\n\n return (\n <div\n className={cn(\n 'w-full flex flex-col relative',\n !fullWidth && 'inline-block',\n )}\n >\n <div className=\"flex gap-2 items-center relative mb-0.5\">\n {label && (\n <p className=\"text-sm font-medium text-text-secondary\">\n {label}\n {props.required && <span className=\"text-error ml-1\">*</span>}\n </p>\n )}\n {helperMessage && messagePosition === 'top' && (\n <p\n id={helperId}\n className={statusMessageVariants({ status })}\n >\n {helperMessage}\n </p>\n )}\n {showCount && maxLength && (\n <span className=\"text-xs text-text-secondary absolute right-0\">\n {String(currentValue).length}/{maxLength}\n </span>\n )}\n </div>\n {inputElement}\n {helperMessage && messagePosition === 'bottom' && (\n <p\n id={helperId}\n className={cn(statusMessageVariants({ status }), 'mt-0.5')}\n >\n {helperMessage}\n </p>\n )}\n </div>\n )\n },\n)\n\nInput.displayName = 'Input'\n\nexport type * from './types'\nexport default Input\n"]}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import { Popover, PopoverTrigger, PopoverContent } from './chunk-
|
|
2
|
-
import { cn, iconSizes } from './chunk-
|
|
1
|
+
import { Popover, PopoverTrigger, PopoverContent } from './chunk-EFMKUCGX.js';
|
|
2
|
+
import { cn, iconSizes } from './chunk-2OGZENFC.js';
|
|
3
3
|
import React from 'react';
|
|
4
4
|
import ReactDatePicker from 'react-datepicker';
|
|
5
|
+
import 'react-datepicker/dist/react-datepicker.css';
|
|
5
6
|
import { Calendar, X, Clock, ChevronsLeft, ChevronsRight, ChevronLeft, ChevronRight } from 'lucide-react';
|
|
6
7
|
import { cva } from 'class-variance-authority';
|
|
7
8
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
8
9
|
|
|
9
10
|
var pickerInputVariants = cva(
|
|
10
|
-
"w-full focus:border-primary placeholder:text-text-
|
|
11
|
+
"w-full focus:border-primary placeholder:text-text-secondary/50 disabled:opacity-50 disabled:cursor-not-allowed outline-none text-text-primary transition-colors",
|
|
11
12
|
{
|
|
12
13
|
variants: {
|
|
13
14
|
variant: {
|
|
@@ -22,10 +23,10 @@ var pickerInputVariants = cva(
|
|
|
22
23
|
success: "border-success"
|
|
23
24
|
},
|
|
24
25
|
size: {
|
|
25
|
-
xs: "h-
|
|
26
|
-
sm: "h-
|
|
27
|
-
md: "h-
|
|
28
|
-
lg: "h-
|
|
26
|
+
xs: "h-(--input-height-xs) px-(--input-padding-x-xs) text-xs",
|
|
27
|
+
sm: "h-(--input-height-sm) px-3 text-sm",
|
|
28
|
+
md: "h-(--input-height-md) px-4 text-base",
|
|
29
|
+
lg: "h-(--input-height-lg) px-5 text-lg"
|
|
29
30
|
},
|
|
30
31
|
fullWidth: {
|
|
31
32
|
true: "w-full",
|
|
@@ -51,10 +52,44 @@ var datePickerStyles = `
|
|
|
51
52
|
[&_.react-datepicker__header]:!p-0
|
|
52
53
|
[&_.react-datepicker__month-container]:!flex
|
|
53
54
|
[&_.react-datepicker__month-container]:!flex-col
|
|
55
|
+
[&_.react-datepicker__month]:!m-0
|
|
56
|
+
[&_.react-datepicker__month]:!p-4
|
|
57
|
+
[&_.react-datepicker__week]:!grid
|
|
58
|
+
[&_.react-datepicker__week]:!grid-cols-7
|
|
59
|
+
[&_.react-datepicker__week]:!gap-1
|
|
60
|
+
[&_.react-datepicker__day-names]:!grid
|
|
61
|
+
[&_.react-datepicker__day-names]:!grid-cols-7
|
|
62
|
+
[&_.react-datepicker__day-names]:!gap-1
|
|
63
|
+
[&_.react-datepicker__day-names]:!px-4
|
|
64
|
+
[&_.react-datepicker__day-names]:!pt-4
|
|
65
|
+
[&_.react-datepicker__day-names]:!pb-2
|
|
66
|
+
[&_.react-datepicker__day-name]:!text-text-secondary
|
|
67
|
+
[&_.react-datepicker__day-name]:!text-sm
|
|
68
|
+
[&_.react-datepicker__day-name]:!font-medium
|
|
69
|
+
[&_.react-datepicker__day-name]:!text-center
|
|
70
|
+
[&_.react-datepicker__day-name]:!w-auto
|
|
71
|
+
[&_.react-datepicker__day-name]:!m-0
|
|
72
|
+
[&_.react-datepicker__day]:!w-10
|
|
73
|
+
[&_.react-datepicker__day]:!h-10
|
|
74
|
+
[&_.react-datepicker__day]:!leading-10
|
|
75
|
+
[&_.react-datepicker__day]:!text-center
|
|
76
|
+
[&_.react-datepicker__day]:!rounded-md
|
|
77
|
+
[&_.react-datepicker__day]:!text-text-primary
|
|
78
|
+
[&_.react-datepicker__day]:!text-sm
|
|
79
|
+
[&_.react-datepicker__day]:!m-0
|
|
80
|
+
[&_.react-datepicker__day]:!cursor-pointer
|
|
81
|
+
[&_.react-datepicker__day]:!transition-colors
|
|
54
82
|
[&_.react-datepicker__day--selected]:!bg-primary
|
|
83
|
+
[&_.react-datepicker__day--selected]:!text-white
|
|
55
84
|
[&_.react-datepicker__day--keyboard-selected]:!bg-primary/50
|
|
56
85
|
[&_.react-datepicker__day]:hover:!bg-surface
|
|
57
|
-
[&_.react-datepicker__day
|
|
86
|
+
[&_.react-datepicker__day--disabled]:!cursor-not-allowed
|
|
87
|
+
[&_.react-datepicker__day--disabled]:!opacity-40
|
|
88
|
+
[&_.react-datepicker__day--disabled]:hover:!bg-transparent
|
|
89
|
+
[&_.react-datepicker__day--outside-month]:!text-text-secondary
|
|
90
|
+
[&_.react-datepicker__day--today]:!font-semibold
|
|
91
|
+
[&_.react-datepicker__day--today]:!border
|
|
92
|
+
[&_.react-datepicker__day--today]:!border-primary
|
|
58
93
|
[&_.react-datepicker__current-month]:!hidden
|
|
59
94
|
[&_.react-datepicker__navigation]:!hidden
|
|
60
95
|
[&_.react-datepicker__time-container]:!border-border
|
|
@@ -64,6 +99,10 @@ var datePickerStyles = `
|
|
|
64
99
|
[&_.react-datepicker__time-list]:!bg-background
|
|
65
100
|
[&_.react-datepicker__day--in-selecting-range]:!bg-primary/30
|
|
66
101
|
[&_.react-datepicker__day--in-range]:!bg-primary/10
|
|
102
|
+
[&_.react-datepicker__day--range-start]:!bg-primary
|
|
103
|
+
[&_.react-datepicker__day--range-start]:!text-white
|
|
104
|
+
[&_.react-datepicker__day--range-end]:!bg-primary
|
|
105
|
+
[&_.react-datepicker__day--range-end]:!text-white
|
|
67
106
|
`;
|
|
68
107
|
var YearSelector = ({
|
|
69
108
|
date,
|
|
@@ -80,7 +119,7 @@ var YearSelector = ({
|
|
|
80
119
|
{
|
|
81
120
|
type: "button",
|
|
82
121
|
onClick: () => onDecadeChange(currentYear - 10),
|
|
83
|
-
className: "p-1 rounded hover:bg-
|
|
122
|
+
className: "p-1 rounded hover:bg-surface text-text-primary transition-colors",
|
|
84
123
|
"aria-label": "Previous decade",
|
|
85
124
|
children: /* @__PURE__ */ jsx(ChevronsLeft, { className: iconSizes.sm })
|
|
86
125
|
}
|
|
@@ -95,7 +134,7 @@ var YearSelector = ({
|
|
|
95
134
|
{
|
|
96
135
|
type: "button",
|
|
97
136
|
onClick: () => onDecadeChange(currentYear + 10),
|
|
98
|
-
className: "p-1 rounded hover:bg-
|
|
137
|
+
className: "p-1 rounded hover:bg-surface text-text-primary transition-colors",
|
|
99
138
|
"aria-label": "Next decade",
|
|
100
139
|
children: /* @__PURE__ */ jsx(ChevronsRight, { className: iconSizes.sm })
|
|
101
140
|
}
|
|
@@ -108,7 +147,7 @@ var YearSelector = ({
|
|
|
108
147
|
onClick: () => onYearSelect(year),
|
|
109
148
|
className: cn(
|
|
110
149
|
"px-4 py-2 rounded text-sm font-medium transition-colors",
|
|
111
|
-
year === currentYear ? "bg-primary text-white" : year < startYear || year > startYear + 9 ? "text-text-
|
|
150
|
+
year === currentYear ? "bg-primary text-white" : year < startYear || year > startYear + 9 ? "text-text-secondary opacity-50" : "text-text-primary hover:bg-surface"
|
|
112
151
|
),
|
|
113
152
|
children: year
|
|
114
153
|
},
|
|
@@ -145,7 +184,7 @@ var MonthSelector = ({
|
|
|
145
184
|
{
|
|
146
185
|
type: "button",
|
|
147
186
|
onClick: () => onYearChange(currentYear - 1),
|
|
148
|
-
className: "p-1 rounded hover:bg-
|
|
187
|
+
className: "p-1 rounded hover:bg-surface text-text-primary transition-colors",
|
|
149
188
|
"aria-label": "Previous year",
|
|
150
189
|
children: /* @__PURE__ */ jsx(ChevronsLeft, { className: iconSizes.sm })
|
|
151
190
|
}
|
|
@@ -164,7 +203,7 @@ var MonthSelector = ({
|
|
|
164
203
|
{
|
|
165
204
|
type: "button",
|
|
166
205
|
onClick: () => onYearChange(currentYear + 1),
|
|
167
|
-
className: "p-1 rounded hover:bg-
|
|
206
|
+
className: "p-1 rounded hover:bg-surface text-text-primary transition-colors",
|
|
168
207
|
"aria-label": "Next year",
|
|
169
208
|
children: /* @__PURE__ */ jsx(ChevronsRight, { className: iconSizes.sm })
|
|
170
209
|
}
|
|
@@ -209,7 +248,7 @@ var CustomCalendarHeader = ({
|
|
|
209
248
|
type: "button",
|
|
210
249
|
onClick: decreaseYear,
|
|
211
250
|
disabled: prevYearButtonDisabled || showMonthSelector,
|
|
212
|
-
className: "p-1 rounded hover:bg-
|
|
251
|
+
className: "p-1 rounded hover:bg-surface text-text-primary disabled:opacity-30 disabled:cursor-not-allowed transition-colors",
|
|
213
252
|
"aria-label": "Previous year",
|
|
214
253
|
children: /* @__PURE__ */ jsx(ChevronsLeft, { className: iconSizes.sm })
|
|
215
254
|
}
|
|
@@ -220,7 +259,7 @@ var CustomCalendarHeader = ({
|
|
|
220
259
|
type: "button",
|
|
221
260
|
onClick: decreaseMonth,
|
|
222
261
|
disabled: prevMonthButtonDisabled || showMonthSelector,
|
|
223
|
-
className: "p-1 rounded hover:bg-
|
|
262
|
+
className: "p-1 rounded hover:bg-surface text-text-primary disabled:opacity-30 disabled:cursor-not-allowed transition-colors",
|
|
224
263
|
"aria-label": "Previous month",
|
|
225
264
|
children: /* @__PURE__ */ jsx(ChevronLeft, { className: iconSizes.sm })
|
|
226
265
|
}
|
|
@@ -253,7 +292,7 @@ var CustomCalendarHeader = ({
|
|
|
253
292
|
type: "button",
|
|
254
293
|
onClick: increaseMonth,
|
|
255
294
|
disabled: nextMonthButtonDisabled || showMonthSelector,
|
|
256
|
-
className: "p-1 rounded hover:bg-
|
|
295
|
+
className: "p-1 rounded hover:bg-surface text-text-primary disabled:opacity-30 disabled:cursor-not-allowed transition-colors",
|
|
257
296
|
"aria-label": "Next month",
|
|
258
297
|
children: /* @__PURE__ */ jsx(ChevronRight, { className: iconSizes.sm })
|
|
259
298
|
}
|
|
@@ -264,7 +303,7 @@ var CustomCalendarHeader = ({
|
|
|
264
303
|
type: "button",
|
|
265
304
|
onClick: increaseYear,
|
|
266
305
|
disabled: nextYearButtonDisabled || showMonthSelector,
|
|
267
|
-
className: "p-1 rounded hover:bg-
|
|
306
|
+
className: "p-1 rounded hover:bg-surface text-text-primary disabled:opacity-30 disabled:cursor-not-allowed transition-colors",
|
|
268
307
|
"aria-label": "Next year",
|
|
269
308
|
children: /* @__PURE__ */ jsx(ChevronsRight, { className: iconSizes.sm })
|
|
270
309
|
}
|
|
@@ -305,7 +344,7 @@ var PickerWrapper = ({
|
|
|
305
344
|
),
|
|
306
345
|
children: [
|
|
307
346
|
/* @__PURE__ */ jsxs("div", { className: "flex gap-2 items-center relative mb-0.5", children: [
|
|
308
|
-
label && /* @__PURE__ */ jsxs("p", { className: "text-sm font-medium text-text-
|
|
347
|
+
label && /* @__PURE__ */ jsxs("p", { className: "text-sm font-medium text-text-secondary", children: [
|
|
309
348
|
label,
|
|
310
349
|
required && /* @__PURE__ */ jsx("span", { className: "text-error ml-1", children: "*" })
|
|
311
350
|
] }),
|
|
@@ -319,7 +358,7 @@ var PickerWrapper = ({
|
|
|
319
358
|
status === "warning" && "text-warning",
|
|
320
359
|
status === "info" && "text-info",
|
|
321
360
|
status === "success" && "text-success",
|
|
322
|
-
status === "default" && "text-text-
|
|
361
|
+
status === "default" && "text-text-secondary"
|
|
323
362
|
),
|
|
324
363
|
children: helperMessage
|
|
325
364
|
}
|
|
@@ -336,7 +375,7 @@ var PickerWrapper = ({
|
|
|
336
375
|
status === "warning" && "text-warning",
|
|
337
376
|
status === "info" && "text-info",
|
|
338
377
|
status === "success" && "text-success",
|
|
339
|
-
status === "default" && "text-text-
|
|
378
|
+
status === "default" && "text-text-secondary"
|
|
340
379
|
),
|
|
341
380
|
children: helperMessage
|
|
342
381
|
}
|
|
@@ -465,8 +504,8 @@ var DatePickerComponent = React.memo(
|
|
|
465
504
|
),
|
|
466
505
|
children: confirmed || preview ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
467
506
|
confirmed && /* @__PURE__ */ jsx("span", { children: confirmed }),
|
|
468
|
-
preview && /* @__PURE__ */ jsx("span", { className: "text-text-
|
|
469
|
-
] }) : /* @__PURE__ */ jsx("span", { className: "text-text-
|
|
507
|
+
preview && /* @__PURE__ */ jsx("span", { className: "text-text-secondary", children: preview })
|
|
508
|
+
] }) : /* @__PURE__ */ jsx("span", { className: "text-text-secondary", children: placeholder })
|
|
470
509
|
}
|
|
471
510
|
);
|
|
472
511
|
return /* @__PURE__ */ jsx(
|
|
@@ -482,7 +521,7 @@ var DatePickerComponent = React.memo(
|
|
|
482
521
|
required,
|
|
483
522
|
fullWidth,
|
|
484
523
|
children: /* @__PURE__ */ jsxs("div", { className: "relative w-full", children: [
|
|
485
|
-
/* @__PURE__ */ jsx("div", { className: "absolute left-3 flex items-center h-full top-0 text-text-
|
|
524
|
+
/* @__PURE__ */ jsx("div", { className: "absolute left-3 flex items-center h-full top-0 text-text-secondary pointer-events-none z-10", children: /* @__PURE__ */ jsx(Calendar, { className: iconSizes[size] }) }),
|
|
486
525
|
/* @__PURE__ */ jsxs(
|
|
487
526
|
Popover,
|
|
488
527
|
{
|
|
@@ -546,7 +585,7 @@ var DatePickerComponent = React.memo(
|
|
|
546
585
|
{
|
|
547
586
|
type: "button",
|
|
548
587
|
onClick: handleClear,
|
|
549
|
-
className: "absolute right-3 flex items-center h-full top-0 text-text-
|
|
588
|
+
className: "absolute right-3 flex items-center h-full top-0 text-text-secondary hover:text-text-primary z-10",
|
|
550
589
|
"aria-label": "Clear date",
|
|
551
590
|
children: /* @__PURE__ */ jsx(X, { className: iconSizes[size] })
|
|
552
591
|
}
|
|
@@ -701,8 +740,8 @@ var RangePickerComponent = React.memo(
|
|
|
701
740
|
),
|
|
702
741
|
children: rangeConfirmed || rangePreview ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
703
742
|
rangeConfirmed && /* @__PURE__ */ jsx("span", { children: rangeConfirmed }),
|
|
704
|
-
rangePreview && /* @__PURE__ */ jsx("span", { className: "text-text-
|
|
705
|
-
] }) : /* @__PURE__ */ jsx("span", { className: "text-text-
|
|
743
|
+
rangePreview && /* @__PURE__ */ jsx("span", { className: "text-text-secondary", children: rangePreview })
|
|
744
|
+
] }) : /* @__PURE__ */ jsx("span", { className: "text-text-secondary", children: placeholder })
|
|
706
745
|
}
|
|
707
746
|
);
|
|
708
747
|
return /* @__PURE__ */ jsx(
|
|
@@ -718,7 +757,7 @@ var RangePickerComponent = React.memo(
|
|
|
718
757
|
required,
|
|
719
758
|
fullWidth,
|
|
720
759
|
children: /* @__PURE__ */ jsxs("div", { className: "relative w-full", children: [
|
|
721
|
-
/* @__PURE__ */ jsx("div", { className: "absolute left-3 flex items-center h-full top-0 text-text-
|
|
760
|
+
/* @__PURE__ */ jsx("div", { className: "absolute left-3 flex items-center h-full top-0 text-text-secondary pointer-events-none z-10", children: /* @__PURE__ */ jsx(Calendar, { className: iconSizes[size] }) }),
|
|
722
761
|
/* @__PURE__ */ jsxs(
|
|
723
762
|
Popover,
|
|
724
763
|
{
|
|
@@ -785,7 +824,7 @@ var RangePickerComponent = React.memo(
|
|
|
785
824
|
{
|
|
786
825
|
type: "button",
|
|
787
826
|
onClick: handleClear,
|
|
788
|
-
className: "absolute right-3 flex items-center h-full top-0 text-text-
|
|
827
|
+
className: "absolute right-3 flex items-center h-full top-0 text-text-secondary hover:text-text-primary z-10",
|
|
789
828
|
"aria-label": "Clear date range",
|
|
790
829
|
children: /* @__PURE__ */ jsx(X, { className: iconSizes[size] })
|
|
791
830
|
}
|
|
@@ -809,7 +848,7 @@ var TimeColumn = React.memo(({ items, selected, onSelect, onHover, onLeave }) =>
|
|
|
809
848
|
onMouseEnter: () => onHover?.(item),
|
|
810
849
|
className: cn(
|
|
811
850
|
"px-4 py-2 text-sm font-medium transition-colors text-center min-h-[40px] flex items-center justify-center",
|
|
812
|
-
item === selected ? "bg-surface text-text-primary font-semibold" : "text-text-
|
|
851
|
+
item === selected ? "bg-surface text-text-primary font-semibold" : "text-text-secondary hover:bg-surface/50"
|
|
813
852
|
),
|
|
814
853
|
children: typeof item === "number" ? String(item).padStart(2, "0") : item
|
|
815
854
|
},
|
|
@@ -896,8 +935,8 @@ var TimeColumnPicker = ({
|
|
|
896
935
|
{
|
|
897
936
|
items: hours,
|
|
898
937
|
selected: selectedHour,
|
|
899
|
-
onSelect: setSelectedHour,
|
|
900
|
-
onHover: setHoverHour,
|
|
938
|
+
onSelect: (item) => setSelectedHour(item),
|
|
939
|
+
onHover: (item) => setHoverHour(item),
|
|
901
940
|
onLeave: () => setHoverHour(null)
|
|
902
941
|
}
|
|
903
942
|
),
|
|
@@ -906,8 +945,8 @@ var TimeColumnPicker = ({
|
|
|
906
945
|
{
|
|
907
946
|
items: minutes,
|
|
908
947
|
selected: selectedMinute,
|
|
909
|
-
onSelect: setSelectedMinute,
|
|
910
|
-
onHover: setHoverMinute,
|
|
948
|
+
onSelect: (item) => setSelectedMinute(item),
|
|
949
|
+
onHover: (item) => setHoverMinute(item),
|
|
911
950
|
onLeave: () => setHoverMinute(null)
|
|
912
951
|
}
|
|
913
952
|
),
|
|
@@ -916,8 +955,8 @@ var TimeColumnPicker = ({
|
|
|
916
955
|
{
|
|
917
956
|
items: periods,
|
|
918
957
|
selected: selectedPeriod,
|
|
919
|
-
onSelect: setSelectedPeriod,
|
|
920
|
-
onHover: setHoverPeriod,
|
|
958
|
+
onSelect: (item) => setSelectedPeriod(item),
|
|
959
|
+
onHover: (item) => setHoverPeriod(item),
|
|
921
960
|
onLeave: () => setHoverPeriod(null)
|
|
922
961
|
}
|
|
923
962
|
)
|
|
@@ -1024,8 +1063,8 @@ var TimePickerComponent = React.memo(
|
|
|
1024
1063
|
),
|
|
1025
1064
|
children: timeConfirmed || timePreview ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
1026
1065
|
timeConfirmed && /* @__PURE__ */ jsx("span", { children: timeConfirmed }),
|
|
1027
|
-
timePreview && /* @__PURE__ */ jsx("span", { className: "text-text-
|
|
1028
|
-
] }) : /* @__PURE__ */ jsx("span", { className: "text-text-
|
|
1066
|
+
timePreview && /* @__PURE__ */ jsx("span", { className: "text-text-secondary", children: timePreview })
|
|
1067
|
+
] }) : /* @__PURE__ */ jsx("span", { className: "text-text-secondary", children: placeholder })
|
|
1029
1068
|
}
|
|
1030
1069
|
);
|
|
1031
1070
|
return /* @__PURE__ */ jsx(
|
|
@@ -1041,7 +1080,7 @@ var TimePickerComponent = React.memo(
|
|
|
1041
1080
|
required,
|
|
1042
1081
|
fullWidth,
|
|
1043
1082
|
children: /* @__PURE__ */ jsxs("div", { className: "relative w-full", children: [
|
|
1044
|
-
/* @__PURE__ */ jsx("div", { className: "absolute left-3 flex items-center h-full top-0 text-text-
|
|
1083
|
+
/* @__PURE__ */ jsx("div", { className: "absolute left-3 flex items-center h-full top-0 text-text-secondary pointer-events-none z-10", children: /* @__PURE__ */ jsx(Clock, { className: iconSizes[size] }) }),
|
|
1045
1084
|
/* @__PURE__ */ jsxs(
|
|
1046
1085
|
Popover,
|
|
1047
1086
|
{
|
|
@@ -1080,7 +1119,7 @@ var TimePickerComponent = React.memo(
|
|
|
1080
1119
|
{
|
|
1081
1120
|
type: "button",
|
|
1082
1121
|
onClick: handleClear,
|
|
1083
|
-
className: "absolute right-3 flex items-center h-full top-0 text-text-
|
|
1122
|
+
className: "absolute right-3 flex items-center h-full top-0 text-text-secondary hover:text-text-primary z-10",
|
|
1084
1123
|
"aria-label": "Clear time",
|
|
1085
1124
|
children: /* @__PURE__ */ jsx(X, { className: iconSizes[size] })
|
|
1086
1125
|
}
|
|
@@ -1097,5 +1136,5 @@ var DatePicker = Object.assign(DatePickerComponent, {
|
|
|
1097
1136
|
});
|
|
1098
1137
|
|
|
1099
1138
|
export { DatePicker, RangePickerComponent, TimePickerComponent };
|
|
1100
|
-
//# sourceMappingURL=chunk-
|
|
1101
|
-
//# sourceMappingURL=chunk-
|
|
1139
|
+
//# sourceMappingURL=chunk-MDY3HCRC.js.map
|
|
1140
|
+
//# sourceMappingURL=chunk-MDY3HCRC.js.map
|