@deepnoid/ui 0.1.115 → 0.1.116
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/.turbo/turbo-build.log +199 -194
- package/dist/chunk-2Q25LXZT.mjs +316 -0
- package/dist/{chunk-UNYKQTEP.mjs → chunk-3ZH6PWFC.mjs} +2 -2
- package/dist/chunk-4DESGO3D.mjs +54 -0
- package/dist/{chunk-BKYNB52Z.mjs → chunk-676Y7NKV.mjs} +1 -1
- package/dist/{chunk-AHBBUMPX.mjs → chunk-6VNOOJDQ.mjs} +2 -2
- package/dist/{chunk-NEBMBSKV.mjs → chunk-CUCLHYCE.mjs} +3 -3
- package/dist/{chunk-L3WKBOWY.mjs → chunk-ER3SUAE2.mjs} +1 -1
- package/dist/{chunk-AX3FVJMY.mjs → chunk-F7PC2JAF.mjs} +1 -1
- package/dist/{chunk-CEMBGO4V.mjs → chunk-HD2PTCE6.mjs} +2 -2
- package/dist/{chunk-FU4CDBVG.mjs → chunk-HLYTCS7L.mjs} +1 -1
- package/dist/{chunk-DDJ2EU3P.mjs → chunk-LCWEO4U6.mjs} +40 -14
- package/dist/{chunk-WKMBRUGX.mjs → chunk-LZRBMVT7.mjs} +1 -1
- package/dist/{chunk-MTQGHQ7Z.mjs → chunk-MG5E5YZ7.mjs} +1 -1
- package/dist/{chunk-BFZ6OTVA.mjs → chunk-PHWTRXOL.mjs} +2 -2
- package/dist/{chunk-5AEN7QTL.mjs → chunk-PMSUPDDW.mjs} +1 -1
- package/dist/{chunk-QREBEXKF.mjs → chunk-RSD67ORA.mjs} +1 -1
- package/dist/{chunk-TMHYS2DC.mjs → chunk-TO6OPRBH.mjs} +1 -1
- package/dist/{chunk-EDAREIAN.mjs → chunk-TRNL3IXF.mjs} +1 -1
- package/dist/{chunk-MLD6EZAE.mjs → chunk-UPPNTDNG.mjs} +1 -1
- package/dist/{chunk-7YCUFFKZ.mjs → chunk-VPGJ4HZ7.mjs} +1 -1
- package/dist/components/avatar/avatar.js +40 -14
- package/dist/components/avatar/avatar.mjs +2 -2
- package/dist/components/avatar/index.js +40 -14
- package/dist/components/avatar/index.mjs +2 -2
- package/dist/components/breadcrumb/breadcrumb.js +40 -14
- package/dist/components/breadcrumb/breadcrumb.mjs +5 -5
- package/dist/components/breadcrumb/index.js +40 -14
- package/dist/components/breadcrumb/index.mjs +5 -5
- package/dist/components/button/button.js +40 -14
- package/dist/components/button/button.mjs +3 -3
- package/dist/components/button/icon-button.js +40 -14
- package/dist/components/button/icon-button.mjs +3 -3
- package/dist/components/button/index.js +40 -14
- package/dist/components/button/index.mjs +4 -4
- package/dist/components/chip/chip.js +40 -14
- package/dist/components/chip/chip.mjs +3 -3
- package/dist/components/chip/index.js +40 -14
- package/dist/components/chip/index.mjs +3 -3
- package/dist/components/fileUpload/fileUpload.js +40 -14
- package/dist/components/fileUpload/fileUpload.mjs +6 -6
- package/dist/components/fileUpload/index.js +40 -14
- package/dist/components/fileUpload/index.mjs +6 -6
- package/dist/components/icon/Icon.d.mts +8 -4
- package/dist/components/icon/Icon.d.ts +8 -4
- package/dist/components/icon/Icon.js +40 -14
- package/dist/components/icon/Icon.mjs +2 -2
- package/dist/components/icon/index.js +40 -14
- package/dist/components/icon/index.mjs +2 -2
- package/dist/components/icon/template.d.mts +2 -1
- package/dist/components/icon/template.d.ts +2 -1
- package/dist/components/icon/template.js +40 -14
- package/dist/components/icon/template.mjs +1 -1
- package/dist/components/input/index.js +40 -14
- package/dist/components/input/index.mjs +3 -3
- package/dist/components/input/input.js +40 -14
- package/dist/components/input/input.mjs +3 -3
- package/dist/components/list/index.js +40 -14
- package/dist/components/list/index.mjs +4 -4
- package/dist/components/list/listItem.js +40 -14
- package/dist/components/list/listItem.mjs +4 -4
- package/dist/components/modal/index.js +40 -14
- package/dist/components/modal/index.mjs +5 -5
- package/dist/components/modal/modal.js +40 -14
- package/dist/components/modal/modal.mjs +5 -5
- package/dist/components/pagination/index.js +40 -14
- package/dist/components/pagination/index.mjs +4 -4
- package/dist/components/pagination/pagination.js +40 -14
- package/dist/components/pagination/pagination.mjs +4 -4
- package/dist/components/picker/datePicker.d.mts +54 -171
- package/dist/components/picker/datePicker.d.ts +54 -171
- package/dist/components/picker/datePicker.js +1753 -399
- package/dist/components/picker/datePicker.mjs +14 -3
- package/dist/components/picker/day.d.mts +94 -0
- package/dist/components/picker/day.d.ts +94 -0
- package/dist/components/picker/day.js +414 -0
- package/dist/components/picker/day.mjs +12 -0
- package/dist/components/picker/index.d.mts +1 -0
- package/dist/components/picker/index.d.ts +1 -0
- package/dist/components/picker/index.js +2341 -983
- package/dist/components/picker/index.mjs +20 -6
- package/dist/components/picker/timePicker.js +40 -14
- package/dist/components/picker/timePicker.mjs +4 -4
- package/dist/components/select/index.js +40 -14
- package/dist/components/select/index.mjs +3 -3
- package/dist/components/select/select.js +40 -14
- package/dist/components/select/select.mjs +3 -3
- package/dist/components/table/index.js +40 -14
- package/dist/components/table/index.mjs +8 -8
- package/dist/components/table/table-body.js +40 -14
- package/dist/components/table/table-body.mjs +5 -5
- package/dist/components/table/table-head.js +40 -14
- package/dist/components/table/table-head.mjs +5 -5
- package/dist/components/table/table.js +40 -14
- package/dist/components/table/table.mjs +5 -5
- package/dist/components/toast/index.js +40 -14
- package/dist/components/toast/index.mjs +4 -4
- package/dist/components/toast/toast.js +40 -14
- package/dist/components/toast/toast.mjs +3 -3
- package/dist/components/toast/use-toast.js +40 -14
- package/dist/components/toast/use-toast.mjs +4 -4
- package/dist/components/tree/index.js +40 -14
- package/dist/components/tree/index.mjs +3 -3
- package/dist/components/tree/tree.js +40 -14
- package/dist/components/tree/tree.mjs +3 -3
- package/dist/index.d.mts +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +412 -454
- package/dist/index.mjs +42 -38
- package/package.json +1 -1
- package/dist/chunk-2VQM2ZBF.mjs +0 -408
- /package/dist/{chunk-ZG4WRZOU.mjs → chunk-4VWG4726.mjs} +0 -0
package/dist/index.js
CHANGED
|
@@ -115,6 +115,7 @@ __export(index_exports, {
|
|
|
115
115
|
Chip: () => chip_default,
|
|
116
116
|
CircularProgress: () => circularProgress_default,
|
|
117
117
|
DatePicker: () => datePicker_default,
|
|
118
|
+
Day: () => day_default,
|
|
118
119
|
DefinitionTable: () => definition_table_default,
|
|
119
120
|
Drawer: () => drawer_default,
|
|
120
121
|
FileUpload: () => fileUpload_default,
|
|
@@ -1149,20 +1150,6 @@ var template = {
|
|
|
1149
1150
|
}
|
|
1150
1151
|
);
|
|
1151
1152
|
},
|
|
1152
|
-
right: ({ className }) => {
|
|
1153
|
-
return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
1154
|
-
"svg",
|
|
1155
|
-
{
|
|
1156
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
1157
|
-
width: "18",
|
|
1158
|
-
height: "18",
|
|
1159
|
-
viewBox: "0 0 18 18",
|
|
1160
|
-
fill: "none",
|
|
1161
|
-
className,
|
|
1162
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("path", { d: "M6.5 4L11.5 9L6.5 14", stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round" })
|
|
1163
|
-
}
|
|
1164
|
-
);
|
|
1165
|
-
},
|
|
1166
1153
|
avatar: ({ className }) => {
|
|
1167
1154
|
return /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(
|
|
1168
1155
|
"svg",
|
|
@@ -2344,6 +2331,46 @@ var template = {
|
|
|
2344
2331
|
}
|
|
2345
2332
|
);
|
|
2346
2333
|
},
|
|
2334
|
+
left: ({ className }) => {
|
|
2335
|
+
return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
2336
|
+
"svg",
|
|
2337
|
+
{
|
|
2338
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
2339
|
+
width: "22",
|
|
2340
|
+
height: "22",
|
|
2341
|
+
viewBox: "0 0 22 22",
|
|
2342
|
+
fill: "none",
|
|
2343
|
+
className,
|
|
2344
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
2345
|
+
"path",
|
|
2346
|
+
{
|
|
2347
|
+
d: "M14.4955 7.21404C14.4957 7.26442 14.4957 7.26442 14.4959 7.31582C14.4962 7.40882 14.4962 7.50182 14.496 7.59482C14.496 7.69521 14.4962 7.79559 14.4965 7.89598C14.4969 8.09257 14.497 8.28915 14.4969 8.48574C14.4968 8.64555 14.4969 8.80536 14.497 8.96516C14.4971 8.98791 14.4971 9.01066 14.4971 9.0341C14.4971 9.08032 14.4972 9.12653 14.4972 9.17275C14.4976 9.60613 14.4975 10.0395 14.4973 10.4729C14.4971 10.8692 14.4975 11.2656 14.4981 11.6619C14.4988 12.069 14.499 12.4761 14.4989 12.8832C14.4989 13.1117 14.4989 13.3402 14.4994 13.5687C14.4998 13.7633 14.4998 13.9578 14.4994 14.1524C14.4992 14.2516 14.4992 14.3508 14.4996 14.45C14.4999 14.5577 14.4997 14.6653 14.4993 14.7729C14.4995 14.8042 14.4997 14.8354 14.5 14.8676C14.4981 15.094 14.4635 15.2952 14.2769 15.4694C14.0633 15.6269 13.8501 15.6664 13.574 15.6667C13.3359 15.6312 13.1607 15.5177 12.9847 15.381C12.9446 15.3506 12.9044 15.3202 12.8642 15.2898C12.8338 15.2666 12.8338 15.2666 12.8028 15.2429C12.7059 15.1692 12.6076 15.0969 12.5094 15.0246C12.4807 15.0034 12.4807 15.0034 12.4515 14.9819C12.3238 14.8875 12.1955 14.7936 12.0669 14.7C11.8604 14.5497 11.6552 14.3982 11.4501 14.2465C11.3539 14.1754 11.2577 14.1043 11.1615 14.0332C11.1231 14.0048 11.0847 13.9765 11.0462 13.9481C11.0177 13.927 11.0177 13.927 10.9886 13.9055C10.1627 13.2955 9.33686 12.6854 8.51098 12.0753C8.49194 12.0613 8.47291 12.0472 8.45329 12.0328C8.41508 12.0045 8.37691 11.9762 8.33878 11.9479C8.23994 11.8746 8.14044 11.8021 8.03961 11.7309C7.56492 11.3929 7.56492 11.3929 7.50676 11.139C7.48169 10.8947 7.5218 10.7077 7.70431 10.5165C7.82684 10.4027 7.96443 10.3072 8.1052 10.2107C8.19396 10.1488 8.27857 10.0845 8.36282 10.0181C8.5044 9.90695 8.65122 9.80273 8.80011 9.69893C8.88704 9.63693 8.97086 9.57289 9.05425 9.50739C9.19583 9.3962 9.34265 9.29198 9.49154 9.18818C9.57847 9.12618 9.6623 9.06214 9.74569 8.99664C9.88726 8.88544 10.0341 8.78123 10.183 8.67742C10.2699 8.61542 10.3537 8.55139 10.4371 8.48589C10.5787 8.37469 10.7255 8.27048 10.8744 8.16667C10.9613 8.10467 11.0452 8.04064 11.1286 7.97514C11.2379 7.88937 11.3491 7.80701 11.464 7.72686C11.676 7.57888 11.881 7.42428 12.0868 7.26992C12.2036 7.18255 12.321 7.09588 12.4386 7.00934C12.5366 6.93723 12.6341 6.8648 12.7311 6.7917C13.3456 6.32986 13.3456 6.32986 13.7814 6.33404C13.9843 6.35117 14.1418 6.41415 14.2854 6.53943C14.4816 6.75169 14.4966 6.95069 14.4955 7.21404Z",
|
|
2348
|
+
fill: "currentColor"
|
|
2349
|
+
}
|
|
2350
|
+
)
|
|
2351
|
+
}
|
|
2352
|
+
);
|
|
2353
|
+
},
|
|
2354
|
+
right: ({ className }) => {
|
|
2355
|
+
return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
2356
|
+
"svg",
|
|
2357
|
+
{
|
|
2358
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
2359
|
+
width: "22",
|
|
2360
|
+
height: "22",
|
|
2361
|
+
viewBox: "0 0 22 22",
|
|
2362
|
+
fill: "none",
|
|
2363
|
+
className,
|
|
2364
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
2365
|
+
"path",
|
|
2366
|
+
{
|
|
2367
|
+
d: "M7.50447 7.21404C7.50428 7.26442 7.50428 7.26442 7.50409 7.31582C7.50381 7.40882 7.50383 7.50182 7.50397 7.59482C7.50405 7.69521 7.50375 7.79559 7.5035 7.89598C7.50308 8.09257 7.50303 8.28915 7.5031 8.48574C7.50316 8.64555 7.5031 8.80536 7.50296 8.96516C7.50294 8.98791 7.50292 9.01066 7.5029 9.0341C7.50286 9.08032 7.50282 9.12653 7.50278 9.17275C7.50243 9.60613 7.5025 10.0395 7.5027 10.4729C7.50287 10.8692 7.5025 11.2656 7.50187 11.6619C7.50123 12.069 7.50096 12.4761 7.50109 12.8832C7.50115 13.1117 7.50107 13.3402 7.5006 13.5687C7.50021 13.7633 7.50016 13.9578 7.50056 14.1524C7.50076 14.2516 7.50079 14.3508 7.5004 14.45C7.50005 14.5577 7.50032 14.6653 7.50074 14.7729C7.50049 14.8042 7.50025 14.8354 7.5 14.8676C7.50185 15.094 7.53645 15.2952 7.72309 15.4694C7.93671 15.6269 8.14985 15.6664 8.42597 15.6667C8.66414 15.6312 8.8393 15.5177 9.01528 15.381C9.05544 15.3506 9.09561 15.3202 9.13579 15.2898C9.16617 15.2666 9.16617 15.2666 9.19716 15.2429C9.29408 15.1692 9.39237 15.0969 9.49064 15.0246C9.51926 15.0034 9.51926 15.0034 9.54847 14.9819C9.67623 14.8875 9.80451 14.7936 9.93307 14.7C10.1396 14.5497 10.3448 14.3982 10.5499 14.2465C10.6461 14.1754 10.7423 14.1043 10.8385 14.0332C10.8769 14.0048 10.9153 13.9765 10.9538 13.9481C10.9823 13.927 10.9823 13.927 11.0114 13.9055C11.8373 13.2955 12.6631 12.6854 13.489 12.0753C13.5081 12.0613 13.5271 12.0472 13.5467 12.0328C13.5849 12.0045 13.6231 11.9762 13.6612 11.9479C13.7601 11.8746 13.8596 11.8021 13.9604 11.7309C14.4351 11.3929 14.4351 11.3929 14.4932 11.139C14.5183 10.8947 14.4782 10.7077 14.2957 10.5165C14.1732 10.4027 14.0356 10.3072 13.8948 10.2107C13.806 10.1488 13.7214 10.0845 13.6372 10.0181C13.4956 9.90695 13.3488 9.80273 13.1999 9.69893C13.113 9.63693 13.0291 9.57289 12.9457 9.50739C12.8042 9.3962 12.6573 9.29198 12.5085 9.18818C12.4215 9.12618 12.3377 9.06214 12.2543 8.99664C12.1127 8.88544 11.9659 8.78123 11.817 8.67742C11.7301 8.61542 11.6463 8.55139 11.5629 8.48589C11.4213 8.37469 11.2745 8.27048 11.1256 8.16667C11.0387 8.10467 10.9548 8.04064 10.8714 7.97514C10.7621 7.88937 10.6509 7.80701 10.536 7.72686C10.324 7.57888 10.119 7.42428 9.9132 7.26992C9.79643 7.18255 9.67897 7.09588 9.56138 7.00934C9.46343 6.93723 9.36586 6.8648 9.26891 6.7917C8.65441 6.32986 8.65441 6.32986 8.21864 6.33404C8.01565 6.35117 7.85817 6.41415 7.7146 6.53943C7.51841 6.75169 7.50343 6.95069 7.50447 7.21404Z",
|
|
2368
|
+
fill: "currentColor"
|
|
2369
|
+
}
|
|
2370
|
+
)
|
|
2371
|
+
}
|
|
2372
|
+
);
|
|
2373
|
+
},
|
|
2347
2374
|
// ----------------------------------- old ---------------------------------
|
|
2348
2375
|
// ** Status **
|
|
2349
2376
|
check: ({ className, fill }) => {
|
|
@@ -10845,8 +10872,50 @@ var ToastProvider = ({
|
|
|
10845
10872
|
] });
|
|
10846
10873
|
};
|
|
10847
10874
|
|
|
10875
|
+
// src/components/picker/day.tsx
|
|
10876
|
+
var import_react31 = require("react");
|
|
10877
|
+
var import_jsx_runtime35 = require("react/jsx-runtime");
|
|
10878
|
+
var Day = (0, import_react31.forwardRef)((originalProps, ref) => {
|
|
10879
|
+
const [props, variantProps] = mapPropsVariants(originalProps, dayStyle.variantKeys);
|
|
10880
|
+
const { classNames, children, ...divProps } = props;
|
|
10881
|
+
const slots = (0, import_react31.useMemo)(() => dayStyle({ ...variantProps }), [variantProps]);
|
|
10882
|
+
return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { ref, className: slots.base({ class: classNames == null ? void 0 : classNames.base }), ...divProps, children });
|
|
10883
|
+
});
|
|
10884
|
+
Day.displayName = "Day";
|
|
10885
|
+
var day_default = Day;
|
|
10886
|
+
var dayStyle = tv({
|
|
10887
|
+
slots: {
|
|
10888
|
+
base: [
|
|
10889
|
+
"w-[40px]",
|
|
10890
|
+
"h-[40px]",
|
|
10891
|
+
"flex",
|
|
10892
|
+
"justify-center",
|
|
10893
|
+
"items-center",
|
|
10894
|
+
"font-bold",
|
|
10895
|
+
"text-sm",
|
|
10896
|
+
"text-neutral-strong",
|
|
10897
|
+
"rounded-xl",
|
|
10898
|
+
"cursor-pointer"
|
|
10899
|
+
]
|
|
10900
|
+
},
|
|
10901
|
+
variants: {
|
|
10902
|
+
variant: {
|
|
10903
|
+
default: { base: ["hover:bg-trans-soft"] },
|
|
10904
|
+
hover: { base: ["bg-trans-soft"] },
|
|
10905
|
+
selected: { base: ["bg-primary-main", "text-common-white"] },
|
|
10906
|
+
disabled: { base: ["pointer-events-none", "bg-common-transparent", "text-neutral-light"] },
|
|
10907
|
+
period: { base: ["bg-primary-soft", "rounded-none"] },
|
|
10908
|
+
today: { base: ["shadow-[inset_0_0_0_2px_var(--dn-primary-light)]", "hover:bg-trans-soft"] },
|
|
10909
|
+
text: { base: ["text-md"] }
|
|
10910
|
+
}
|
|
10911
|
+
},
|
|
10912
|
+
defaultVariants: {
|
|
10913
|
+
variant: "default"
|
|
10914
|
+
}
|
|
10915
|
+
});
|
|
10916
|
+
|
|
10848
10917
|
// src/components/picker/datePicker.tsx
|
|
10849
|
-
var
|
|
10918
|
+
var import_react32 = require("react");
|
|
10850
10919
|
var import_react_dom5 = require("react-dom");
|
|
10851
10920
|
|
|
10852
10921
|
// src/components/picker/utils.ts
|
|
@@ -10862,31 +10931,41 @@ var formatStringToDate = (date) => {
|
|
|
10862
10931
|
};
|
|
10863
10932
|
|
|
10864
10933
|
// src/components/picker/datePicker.tsx
|
|
10865
|
-
var
|
|
10866
|
-
var DatePicker = (0,
|
|
10934
|
+
var import_jsx_runtime36 = require("react/jsx-runtime");
|
|
10935
|
+
var DatePicker = (0, import_react32.forwardRef)((originalProps, ref) => {
|
|
10867
10936
|
const [props, variantProps] = mapPropsVariants(originalProps, datePickerStyle.variantKeys);
|
|
10868
10937
|
const {
|
|
10869
10938
|
classNames,
|
|
10870
10939
|
label,
|
|
10871
10940
|
errorMessage,
|
|
10941
|
+
helperMessage,
|
|
10872
10942
|
value,
|
|
10873
10943
|
onChange,
|
|
10874
|
-
size,
|
|
10944
|
+
size = "md",
|
|
10945
|
+
variant = "solid",
|
|
10946
|
+
color = "primary",
|
|
10947
|
+
full = false,
|
|
10948
|
+
disabled = false,
|
|
10875
10949
|
placeholder = "",
|
|
10876
10950
|
format = "YYYY-MM-DD",
|
|
10877
10951
|
highlightWeekend = true,
|
|
10878
|
-
calendarColor = "primary",
|
|
10879
10952
|
locale = "default",
|
|
10880
|
-
daysOfWeek = ["
|
|
10881
|
-
monthYearFormat = (year, month) => new Date(year, month).toLocaleString(locale, { year: "numeric", month: "2-digit" }),
|
|
10953
|
+
daysOfWeek = ["\uC77C", "\uC6D4", "\uD654", "\uC218", "\uBAA9", "\uAE08", "\uD1A0"],
|
|
10954
|
+
monthYearFormat = (year, month) => locale === "default" ? `${year}. ${(month + 1).toString().padStart(2, "0")}` : new Date(year, month).toLocaleString(locale, { year: "numeric", month: "2-digit" }),
|
|
10955
|
+
resetTitle,
|
|
10956
|
+
todayTitle,
|
|
10957
|
+
cancelTitle,
|
|
10958
|
+
confirmTitle,
|
|
10882
10959
|
...inputProps
|
|
10883
10960
|
} = props;
|
|
10884
|
-
const [selectedDate, setSelectedDate] = (0,
|
|
10885
|
-
const [
|
|
10886
|
-
const [
|
|
10887
|
-
const
|
|
10888
|
-
const
|
|
10889
|
-
const
|
|
10961
|
+
const [selectedDate, setSelectedDate] = (0, import_react32.useState)(value || "");
|
|
10962
|
+
const [tempSelectedDate, setTempSelectedDate] = (0, import_react32.useState)(value || "");
|
|
10963
|
+
const [isPanelOpen, setIsPanelOpen] = (0, import_react32.useState)(false);
|
|
10964
|
+
const [currentDate, setCurrentDate] = (0, import_react32.useState)(tempSelectedDate ? new Date(tempSelectedDate) : /* @__PURE__ */ new Date());
|
|
10965
|
+
const inputWrapperRef = (0, import_react32.useRef)(null);
|
|
10966
|
+
const calendarWrapperRef = (0, import_react32.useRef)(null);
|
|
10967
|
+
const [panelPos, setPanelPos] = (0, import_react32.useState)({ top: -9999, left: -9999 });
|
|
10968
|
+
const blurTimeoutRef = (0, import_react32.useRef)(null);
|
|
10890
10969
|
const formatDate = (dateString) => {
|
|
10891
10970
|
if (!dateString) return "";
|
|
10892
10971
|
const [year, month, day] = dateString.split("-");
|
|
@@ -10899,209 +10978,184 @@ var DatePicker = (0, import_react31.forwardRef)((originalProps, ref) => {
|
|
|
10899
10978
|
return dateString;
|
|
10900
10979
|
}
|
|
10901
10980
|
};
|
|
10902
|
-
const displayValue = (0,
|
|
10903
|
-
|
|
10904
|
-
}, [selectedDate, format]);
|
|
10905
|
-
const calculatePosition = (0, import_react31.useCallback)(() => {
|
|
10981
|
+
const displayValue = (0, import_react32.useMemo)(() => formatDate(selectedDate), [selectedDate, format]);
|
|
10982
|
+
const calculatePosition = (0, import_react32.useCallback)(() => {
|
|
10906
10983
|
if (inputWrapperRef.current) {
|
|
10907
10984
|
const rect = inputWrapperRef.current.getBoundingClientRect();
|
|
10908
10985
|
setPanelPos({ top: rect.bottom + window.scrollY + 6, left: rect.left + window.scrollX });
|
|
10909
10986
|
}
|
|
10910
10987
|
}, []);
|
|
10911
10988
|
const handleFocusInput = () => {
|
|
10989
|
+
if (disabled) return;
|
|
10990
|
+
if (blurTimeoutRef.current) clearTimeout(blurTimeoutRef.current);
|
|
10912
10991
|
calculatePosition();
|
|
10913
10992
|
setIsPanelOpen(true);
|
|
10914
10993
|
};
|
|
10915
|
-
const
|
|
10916
|
-
setTimeout(() => setIsPanelOpen(false),
|
|
10994
|
+
const handleClose = () => {
|
|
10995
|
+
blurTimeoutRef.current = setTimeout(() => setIsPanelOpen(false), 100);
|
|
10917
10996
|
};
|
|
10918
10997
|
const handleInputKeyDown = (e) => {
|
|
10919
|
-
if (
|
|
10998
|
+
if (disabled) return;
|
|
10999
|
+
if (["Enter", " "].includes(e.key)) {
|
|
10920
11000
|
e.preventDefault();
|
|
10921
11001
|
calculatePosition();
|
|
10922
11002
|
setIsPanelOpen((prev) => !prev);
|
|
10923
|
-
} else if (e.key === "Escape")
|
|
10924
|
-
setIsPanelOpen(false);
|
|
10925
|
-
}
|
|
11003
|
+
} else if (e.key === "Escape") setIsPanelOpen(false);
|
|
10926
11004
|
};
|
|
10927
|
-
const
|
|
11005
|
+
const handleCalendarIconClick = (e) => {
|
|
11006
|
+
e.preventDefault();
|
|
11007
|
+
if (disabled) return;
|
|
11008
|
+
if (blurTimeoutRef.current) clearTimeout(blurTimeoutRef.current);
|
|
11009
|
+
calculatePosition();
|
|
11010
|
+
setIsPanelOpen((prev) => !prev);
|
|
11011
|
+
};
|
|
11012
|
+
const handleClearDate = (e) => {
|
|
11013
|
+
e.preventDefault();
|
|
11014
|
+
setTempSelectedDate("");
|
|
11015
|
+
};
|
|
11016
|
+
const handleCalendarMouseDown = (e) => {
|
|
11017
|
+
e.preventDefault();
|
|
11018
|
+
if (blurTimeoutRef.current) clearTimeout(blurTimeoutRef.current);
|
|
11019
|
+
};
|
|
11020
|
+
const getCalendarDates = (0, import_react32.useCallback)(() => {
|
|
10928
11021
|
const year = currentDate.getFullYear();
|
|
10929
11022
|
const month = currentDate.getMonth();
|
|
10930
11023
|
const firstDayOfMonth = new Date(year, month, 1).getDay();
|
|
10931
11024
|
const lastDateOfMonth = new Date(year, month + 1, 0).getDate();
|
|
10932
11025
|
const lastDateOfPrevMonth = new Date(year, month, 0).getDate();
|
|
10933
11026
|
let dates = [];
|
|
10934
|
-
for (let i = firstDayOfMonth - 1; i >= 0; i--) {
|
|
10935
|
-
|
|
10936
|
-
date: lastDateOfPrevMonth - i,
|
|
10937
|
-
currentMonth: false
|
|
10938
|
-
});
|
|
10939
|
-
}
|
|
10940
|
-
for (let date = 1; date <= lastDateOfMonth; date++) {
|
|
10941
|
-
dates.push({
|
|
10942
|
-
date,
|
|
10943
|
-
currentMonth: true
|
|
10944
|
-
});
|
|
10945
|
-
}
|
|
11027
|
+
for (let i = firstDayOfMonth - 1; i >= 0; i--) dates.push({ date: lastDateOfPrevMonth - i, currentMonth: false });
|
|
11028
|
+
for (let date = 1; date <= lastDateOfMonth; date++) dates.push({ date, currentMonth: true });
|
|
10946
11029
|
const remainingDays = 42 - dates.length;
|
|
10947
|
-
for (let i = 1; i <= remainingDays; i++) {
|
|
10948
|
-
dates.push({
|
|
10949
|
-
date: i,
|
|
10950
|
-
currentMonth: false
|
|
10951
|
-
});
|
|
10952
|
-
}
|
|
11030
|
+
for (let i = 1; i <= remainingDays; i++) dates.push({ date: i, currentMonth: false });
|
|
10953
11031
|
const weeks = [];
|
|
10954
|
-
for (let i = 0; i < dates.length; i += 7)
|
|
10955
|
-
weeks.push(dates.slice(i, i + 7));
|
|
10956
|
-
}
|
|
11032
|
+
for (let i = 0; i < dates.length; i += 7) weeks.push(dates.slice(i, i + 7));
|
|
10957
11033
|
return weeks;
|
|
10958
11034
|
}, [currentDate]);
|
|
10959
|
-
const handlePrevMonth = () =>
|
|
10960
|
-
|
|
10961
|
-
};
|
|
10962
|
-
const handleNextMonth = () => {
|
|
10963
|
-
setCurrentDate(new Date(currentDate.getFullYear(), currentDate.getMonth() + 1));
|
|
10964
|
-
};
|
|
11035
|
+
const handlePrevMonth = () => setCurrentDate(new Date(currentDate.getFullYear(), currentDate.getMonth() - 1));
|
|
11036
|
+
const handleNextMonth = () => setCurrentDate(new Date(currentDate.getFullYear(), currentDate.getMonth() + 1));
|
|
10965
11037
|
const handleDateSelect = (date, isCurrentMonth) => {
|
|
10966
11038
|
if (!isCurrentMonth) return;
|
|
10967
11039
|
const selected = new Date(currentDate.getFullYear(), currentDate.getMonth(), date);
|
|
10968
11040
|
const formatted = formatDateToString(selected);
|
|
10969
|
-
|
|
10970
|
-
|
|
11041
|
+
setTempSelectedDate(formatted);
|
|
11042
|
+
};
|
|
11043
|
+
const handleSetToday = () => {
|
|
11044
|
+
const today = /* @__PURE__ */ new Date();
|
|
11045
|
+
const formatted = formatDateToString(today);
|
|
11046
|
+
setCurrentDate(today);
|
|
11047
|
+
setTempSelectedDate(formatted);
|
|
11048
|
+
};
|
|
11049
|
+
const handleConfirmDate = () => {
|
|
11050
|
+
setSelectedDate(tempSelectedDate);
|
|
11051
|
+
onChange == null ? void 0 : onChange(tempSelectedDate);
|
|
10971
11052
|
setIsPanelOpen(false);
|
|
10972
11053
|
};
|
|
10973
|
-
const
|
|
10974
|
-
|
|
10975
|
-
|
|
11054
|
+
const handleResetDate = () => {
|
|
11055
|
+
setTempSelectedDate(selectedDate);
|
|
11056
|
+
setIsPanelOpen(false);
|
|
10976
11057
|
};
|
|
10977
|
-
const
|
|
10978
|
-
const getDateTitleProps = (0, import_react31.useCallback)(
|
|
10979
|
-
(index) => {
|
|
10980
|
-
return {
|
|
10981
|
-
className: clsx(
|
|
10982
|
-
"text-sm font-[500]",
|
|
10983
|
-
highlightWeekend && index === 6 && "text-[#1E7EEE]",
|
|
10984
|
-
highlightWeekend && index === 0 && "text-[#FF4684]"
|
|
10985
|
-
)
|
|
10986
|
-
};
|
|
10987
|
-
},
|
|
10988
|
-
[highlightWeekend]
|
|
10989
|
-
);
|
|
10990
|
-
const getDateProps = (0, import_react31.useCallback)(
|
|
11058
|
+
const getDayProps = (0, import_react32.useCallback)(
|
|
10991
11059
|
(dateObj) => {
|
|
10992
11060
|
const today = /* @__PURE__ */ new Date();
|
|
10993
11061
|
const isToday = today.getDate() === dateObj.date && today.getMonth() === currentDate.getMonth() && today.getFullYear() === currentDate.getFullYear();
|
|
10994
|
-
const formatted =
|
|
10995
|
-
const isSelected = formatted ? formatted.getDate() === dateObj.date && formatted.getMonth() === currentDate.getMonth() && formatted.getFullYear() === currentDate.getFullYear()
|
|
10996
|
-
|
|
10997
|
-
return {
|
|
10998
|
-
className: clsx(
|
|
10999
|
-
"flex justify-center items-center h-[25px] text-sm rounded-full cursor-pointer hover:bg-neutral-light",
|
|
11000
|
-
dateObj.currentMonth && isToday && "border border-foreground",
|
|
11001
|
-
dateObj.currentMonth && isSelected && "!text-white border-none",
|
|
11002
|
-
calendarColor === "primary" && dateObj.currentMonth && isSelected && "!border-primary-main bg-primary-main",
|
|
11003
|
-
calendarColor === "secondary" && dateObj.currentMonth && isSelected && "!border-secondary-main bg-secondary-main",
|
|
11004
|
-
highlightWeekend && dayOfWeek === 6 && "text-neutral-main",
|
|
11005
|
-
highlightWeekend && dayOfWeek === 6 && isToday && "!border-neutral-light",
|
|
11006
|
-
highlightWeekend && dayOfWeek === 0 && "text-danger-main",
|
|
11007
|
-
highlightWeekend && dayOfWeek === 0 && isToday && "!border-danger-light",
|
|
11008
|
-
!dateObj.currentMonth && "!text-neutral-main cursor-default hover:bg-transparent"
|
|
11009
|
-
),
|
|
11010
|
-
onClick: () => handleDateSelect(dateObj.date, dateObj.currentMonth)
|
|
11011
|
-
};
|
|
11062
|
+
const formatted = tempSelectedDate ? formatStringToDate(tempSelectedDate) : null;
|
|
11063
|
+
const isSelected = (formatted == null ? void 0 : formatted.getDate()) === dateObj.date && formatted.getMonth() === currentDate.getMonth() && formatted.getFullYear() === currentDate.getFullYear();
|
|
11064
|
+
return dateObj.currentMonth && isSelected ? "selected" : dateObj.currentMonth && isToday ? "today" : !dateObj.currentMonth ? "disabled" : "default";
|
|
11012
11065
|
},
|
|
11013
|
-
[
|
|
11066
|
+
[tempSelectedDate, currentDate]
|
|
11014
11067
|
);
|
|
11015
|
-
|
|
11016
|
-
|
|
11017
|
-
|
|
11018
|
-
|
|
11019
|
-
if (value) {
|
|
11020
|
-
setCurrentDate(new Date(value));
|
|
11021
|
-
}
|
|
11022
|
-
}
|
|
11068
|
+
(0, import_react32.useEffect)(() => {
|
|
11069
|
+
setSelectedDate(value || "");
|
|
11070
|
+
setTempSelectedDate(value || "");
|
|
11071
|
+
if (value) setCurrentDate(new Date(value));
|
|
11023
11072
|
}, [value]);
|
|
11024
|
-
(0,
|
|
11025
|
-
|
|
11026
|
-
|
|
11027
|
-
}
|
|
11028
|
-
|
|
11029
|
-
|
|
11030
|
-
|
|
11031
|
-
|
|
11032
|
-
|
|
11033
|
-
|
|
11034
|
-
|
|
11035
|
-
|
|
11036
|
-
|
|
11037
|
-
|
|
11038
|
-
|
|
11039
|
-
|
|
11040
|
-
|
|
11041
|
-
|
|
11042
|
-
|
|
11043
|
-
|
|
11044
|
-
|
|
11045
|
-
|
|
11046
|
-
|
|
11047
|
-
|
|
11048
|
-
|
|
11049
|
-
|
|
11050
|
-
|
|
11051
|
-
|
|
11052
|
-
|
|
11053
|
-
|
|
11054
|
-
|
|
11055
|
-
|
|
11056
|
-
|
|
11057
|
-
|
|
11058
|
-
}
|
|
11059
|
-
}
|
|
11060
|
-
),
|
|
11061
|
-
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
11062
|
-
Icon_default,
|
|
11063
|
-
{
|
|
11064
|
-
name: "calendar",
|
|
11065
|
-
className: "cursor-pointer",
|
|
11066
|
-
fill: true,
|
|
11067
|
-
onClick: () => {
|
|
11068
|
-
calculatePosition();
|
|
11069
|
-
setIsPanelOpen((v) => !v);
|
|
11070
|
-
}
|
|
11071
|
-
}
|
|
11072
|
-
)
|
|
11073
|
-
] })
|
|
11074
|
-
] }),
|
|
11075
|
-
errorMessage && /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("p", { className: clsx("error", slots.errorMessage({ class: classNames == null ? void 0 : classNames.errorMessage })), children: errorMessage })
|
|
11076
|
-
] })
|
|
11077
|
-
] }),
|
|
11073
|
+
const slots = (0, import_react32.useMemo)(() => datePickerStyle({ ...variantProps }), [variantProps]);
|
|
11074
|
+
const endContent = /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(Icon_default, { name: "calendar", size, className: "cursor-pointer", fill: true, onClick: handleCalendarIconClick });
|
|
11075
|
+
return /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(import_jsx_runtime36.Fragment, { children: [
|
|
11076
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { ref: inputWrapperRef, className: slots.base({ class: classNames == null ? void 0 : classNames.base }), onClick: handleFocusInput, children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
|
|
11077
|
+
input_default,
|
|
11078
|
+
{
|
|
11079
|
+
...inputProps,
|
|
11080
|
+
ref,
|
|
11081
|
+
label,
|
|
11082
|
+
value: displayValue,
|
|
11083
|
+
placeholder,
|
|
11084
|
+
errorMessage,
|
|
11085
|
+
helperMessage,
|
|
11086
|
+
size,
|
|
11087
|
+
variant,
|
|
11088
|
+
color,
|
|
11089
|
+
full,
|
|
11090
|
+
disabled,
|
|
11091
|
+
endContent,
|
|
11092
|
+
onFocus: handleFocusInput,
|
|
11093
|
+
onBlur: handleClose,
|
|
11094
|
+
onKeyDown: handleInputKeyDown,
|
|
11095
|
+
onChange: () => {
|
|
11096
|
+
},
|
|
11097
|
+
classNames: {
|
|
11098
|
+
base: classNames == null ? void 0 : classNames.inputBase,
|
|
11099
|
+
inputWrapper: classNames == null ? void 0 : classNames.inputWrapper,
|
|
11100
|
+
input: classNames == null ? void 0 : classNames.input,
|
|
11101
|
+
label: classNames == null ? void 0 : classNames.label,
|
|
11102
|
+
errorMessage: classNames == null ? void 0 : classNames.errorMessage,
|
|
11103
|
+
helperMessage: classNames == null ? void 0 : classNames.helperMessage
|
|
11104
|
+
}
|
|
11105
|
+
}
|
|
11106
|
+
) }),
|
|
11078
11107
|
isPanelOpen && (0, import_react_dom5.createPortal)(
|
|
11079
|
-
/* @__PURE__ */ (0,
|
|
11108
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(
|
|
11080
11109
|
"div",
|
|
11081
11110
|
{
|
|
11082
|
-
ref:
|
|
11083
|
-
className: slots.
|
|
11084
|
-
style: {
|
|
11085
|
-
|
|
11086
|
-
top: panelPos.top,
|
|
11087
|
-
left: panelPos.left,
|
|
11088
|
-
zIndex: 1e3
|
|
11089
|
-
},
|
|
11090
|
-
onMouseDown: (e) => e.preventDefault(),
|
|
11111
|
+
ref: calendarWrapperRef,
|
|
11112
|
+
className: slots.calendarWrapper({ class: classNames == null ? void 0 : classNames.calendarWrapper }),
|
|
11113
|
+
style: { position: "absolute", top: panelPos.top, left: panelPos.left, zIndex: 1e3 },
|
|
11114
|
+
onMouseDown: handleCalendarMouseDown,
|
|
11091
11115
|
children: [
|
|
11092
|
-
/* @__PURE__ */ (0,
|
|
11093
|
-
/* @__PURE__ */ (0,
|
|
11094
|
-
/* @__PURE__ */ (0,
|
|
11095
|
-
/* @__PURE__ */ (0,
|
|
11116
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsxs)("div", { className: slots.calendarHead({ class: classNames == null ? void 0 : classNames.calendarHead }), children: [
|
|
11117
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)(icon_button_default, { name: "left", variant: "soft", color: "neutral", onClick: handlePrevMonth }),
|
|
11118
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)("span", { className: "text-xl font-extrabold", children: monthYearFormat(currentDate.getFullYear(), currentDate.getMonth()) }),
|
|
11119
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)(icon_button_default, { name: "right", variant: "soft", color: "neutral", onClick: handleNextMonth })
|
|
11096
11120
|
] }),
|
|
11097
|
-
/* @__PURE__ */ (0,
|
|
11098
|
-
/* @__PURE__ */ (0,
|
|
11099
|
-
|
|
11100
|
-
|
|
11101
|
-
|
|
11102
|
-
|
|
11103
|
-
|
|
11104
|
-
|
|
11121
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { className: "grid grid-cols-7", children: daysOfWeek.map((day, index) => /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(day_default, { variant: "text", children: day }, `${day}-${index}`)) }),
|
|
11122
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { className: "grid grid-cols-7 gap-[5px] text-center", children: getCalendarDates().map((week, weekIndex) => /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_react32.Fragment, { children: week.map((dateObj, index) => /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
|
|
11123
|
+
day_default,
|
|
11124
|
+
{
|
|
11125
|
+
variant: getDayProps(dateObj),
|
|
11126
|
+
onClick: () => handleDateSelect(dateObj.date, dateObj.currentMonth),
|
|
11127
|
+
children: dateObj.date
|
|
11128
|
+
},
|
|
11129
|
+
index
|
|
11130
|
+
)) }, weekIndex)) }),
|
|
11131
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsxs)("div", { className: "flex justify-between px-[10px]", children: [
|
|
11132
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
|
|
11133
|
+
text_button_default,
|
|
11134
|
+
{
|
|
11135
|
+
variant: "underline",
|
|
11136
|
+
color: "neutral",
|
|
11137
|
+
size: "sm",
|
|
11138
|
+
classNames: { base: "font-bold" },
|
|
11139
|
+
onClick: handleClearDate,
|
|
11140
|
+
children: resetTitle
|
|
11141
|
+
}
|
|
11142
|
+
),
|
|
11143
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)(text_button_default, { variant: "underline", size: "sm", classNames: { base: "font-bold" }, onClick: handleSetToday, children: todayTitle })
|
|
11144
|
+
] }),
|
|
11145
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsxs)("div", { className: "flex gap-[10px]", children: [
|
|
11146
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
|
|
11147
|
+
button_default,
|
|
11148
|
+
{
|
|
11149
|
+
variant: "soft",
|
|
11150
|
+
color: "neutral",
|
|
11151
|
+
size: "sm",
|
|
11152
|
+
classNames: { base: "flex flex-1" },
|
|
11153
|
+
onClick: handleResetDate,
|
|
11154
|
+
children: cancelTitle
|
|
11155
|
+
}
|
|
11156
|
+
),
|
|
11157
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)(button_default, { size: "sm", classNames: { base: "flex flex-1" }, onClick: handleConfirmDate, children: confirmTitle })
|
|
11158
|
+
] })
|
|
11105
11159
|
]
|
|
11106
11160
|
}
|
|
11107
11161
|
),
|
|
@@ -11113,129 +11167,32 @@ DatePicker.displayName = "DatePicker";
|
|
|
11113
11167
|
var datePicker_default = DatePicker;
|
|
11114
11168
|
var datePickerStyle = tv({
|
|
11115
11169
|
slots: {
|
|
11116
|
-
base: ["group/datepicker", "flex", "flex-col"],
|
|
11117
|
-
|
|
11118
|
-
wrapper: ["flex", "flex-col"],
|
|
11119
|
-
inputWrapper: [
|
|
11120
|
-
"flex",
|
|
11121
|
-
"items-center",
|
|
11122
|
-
"justify-between",
|
|
11123
|
-
"border",
|
|
11124
|
-
"cursor-pointer",
|
|
11125
|
-
"text-neutral-main",
|
|
11126
|
-
"group-has-[p.error]/datepicker:border-danger-main",
|
|
11127
|
-
"group-has-[p.error]/datepicker:bg-danger-soft",
|
|
11128
|
-
"group-has-[p.error]/datepicker:text-danger-main",
|
|
11129
|
-
"group-has-[p.error]/datepicker:hover:bg-danger-soft"
|
|
11130
|
-
],
|
|
11131
|
-
input: [
|
|
11132
|
-
"bg-transparent",
|
|
11133
|
-
"w-full",
|
|
11134
|
-
"outline-none",
|
|
11135
|
-
"placeholder:text-neutral-main",
|
|
11136
|
-
"text-body-foreground",
|
|
11137
|
-
"group-has-[p.error]/datepicker:text-danger-main",
|
|
11138
|
-
"group-has-[p.error]/datepicker:placeholder:text-danger-main",
|
|
11139
|
-
"cursor-pointer"
|
|
11140
|
-
],
|
|
11141
|
-
icon: [
|
|
11142
|
-
"flex",
|
|
11143
|
-
"items-center",
|
|
11144
|
-
"select-none",
|
|
11145
|
-
"text-body-foreground",
|
|
11146
|
-
"group-has-[p.error]/datepicker:text-danger-main"
|
|
11147
|
-
],
|
|
11148
|
-
optionsWrapper: [
|
|
11170
|
+
base: ["group/datepicker", "flex", "flex-col", "cursor-pointer"],
|
|
11171
|
+
calendarWrapper: [
|
|
11149
11172
|
"flex",
|
|
11150
11173
|
"flex-col",
|
|
11151
|
-
"
|
|
11152
|
-
"rounded-md",
|
|
11174
|
+
"rounded-xl",
|
|
11153
11175
|
"bg-body-background",
|
|
11154
|
-
"shadow-
|
|
11176
|
+
"shadow-drop-xl",
|
|
11177
|
+
"gap-[5px]",
|
|
11155
11178
|
"overflow-auto",
|
|
11156
|
-
"w-[
|
|
11179
|
+
"w-[300px]",
|
|
11157
11180
|
"select-none",
|
|
11158
11181
|
"p-[10px]"
|
|
11159
11182
|
],
|
|
11160
|
-
|
|
11183
|
+
calendarHead: ["calendar-header", "flex", "items-center", "justify-between", "h-[40px]"],
|
|
11184
|
+
inputBase: [],
|
|
11185
|
+
inputWrapper: [],
|
|
11186
|
+
input: [],
|
|
11187
|
+
label: [],
|
|
11188
|
+
errorMessage: [],
|
|
11189
|
+
helperMessage: []
|
|
11161
11190
|
},
|
|
11162
11191
|
variants: {
|
|
11163
|
-
color: {
|
|
11164
|
-
|
|
11165
|
-
|
|
11166
|
-
|
|
11167
|
-
secondary: {
|
|
11168
|
-
icon: ["text-secondary-main"]
|
|
11169
|
-
}
|
|
11170
|
-
},
|
|
11171
|
-
size: {
|
|
11172
|
-
sm: {
|
|
11173
|
-
base: ["text-sm", "gap-[4px]"],
|
|
11174
|
-
label: ["text-sm"],
|
|
11175
|
-
wrapper: ["gap-[4px]"],
|
|
11176
|
-
inputWrapper: ["w-[240px]", "h-[24px]", "rounded-sm", "px-[4px]"],
|
|
11177
|
-
input: ["text-sm"],
|
|
11178
|
-
icon: ["text-sm"],
|
|
11179
|
-
errorMessage: ["text-sm"]
|
|
11180
|
-
},
|
|
11181
|
-
md: {
|
|
11182
|
-
base: ["text-md", "gap-[6px]"],
|
|
11183
|
-
label: ["text-md"],
|
|
11184
|
-
wrapper: ["gap-[6px]"],
|
|
11185
|
-
inputWrapper: ["w-[240px]", "h-[32px]", "rounded-md", "px-[6px]"],
|
|
11186
|
-
input: ["text-md"],
|
|
11187
|
-
icon: ["text-md"],
|
|
11188
|
-
errorMessage: ["text-sm"]
|
|
11189
|
-
},
|
|
11190
|
-
lg: {
|
|
11191
|
-
base: ["text-lg", "gap-[8px]"],
|
|
11192
|
-
label: ["text-lg"],
|
|
11193
|
-
wrapper: ["gap-[8px]"],
|
|
11194
|
-
inputWrapper: ["w-[240px]", "h-[40px]", "rounded-lg", "px-[8px]"],
|
|
11195
|
-
input: ["text-lg"],
|
|
11196
|
-
icon: ["text-lg"],
|
|
11197
|
-
errorMessage: ["text-md"]
|
|
11198
|
-
},
|
|
11199
|
-
xl: {
|
|
11200
|
-
base: ["text-xl", "gap-[10px]"],
|
|
11201
|
-
label: ["text-xl"],
|
|
11202
|
-
wrapper: ["gap-[10px]"],
|
|
11203
|
-
inputWrapper: ["w-[240px]", "h-[50px]", "rounded-lg", "px-[10px]"],
|
|
11204
|
-
input: ["text-xl"],
|
|
11205
|
-
icon: ["text-xl"],
|
|
11206
|
-
errorMessage: ["text-md"]
|
|
11207
|
-
}
|
|
11208
|
-
},
|
|
11209
|
-
full: {
|
|
11210
|
-
true: {
|
|
11211
|
-
base: ["w-full"],
|
|
11212
|
-
wrapper: ["w-full"],
|
|
11213
|
-
inputWrapper: ["w-full"]
|
|
11214
|
-
}
|
|
11215
|
-
},
|
|
11216
|
-
disabled: {
|
|
11217
|
-
true: {
|
|
11218
|
-
base: ["pointer-events-none"],
|
|
11219
|
-
label: ["text-neutral-light"],
|
|
11220
|
-
inputWrapper: [
|
|
11221
|
-
"bg-neutral-soft",
|
|
11222
|
-
"border-neutral-light",
|
|
11223
|
-
"group-has-[p.error]/datepicker:text-danger-light",
|
|
11224
|
-
"group-has-[p.error]/datepicker:bg-danger-soft",
|
|
11225
|
-
"group-has-[p.error]/datepicker:border-danger-light",
|
|
11226
|
-
"cursor-not-allowed"
|
|
11227
|
-
],
|
|
11228
|
-
input: [
|
|
11229
|
-
"text-neutral-light",
|
|
11230
|
-
"placeholder:text-neutral-light",
|
|
11231
|
-
"group-has-[p.error]/datepicker:text-danger-light",
|
|
11232
|
-
"group-has-[p.error]/datepicker:placeholder:text-danger-light",
|
|
11233
|
-
"cursor-not-allowed"
|
|
11234
|
-
],
|
|
11235
|
-
icon: ["text-neutral-light"],
|
|
11236
|
-
errorMessage: ["text-danger-light"]
|
|
11237
|
-
}
|
|
11238
|
-
}
|
|
11192
|
+
color: { primary: {}, secondary: {} },
|
|
11193
|
+
size: { sm: {}, md: {}, lg: {}, xl: {} },
|
|
11194
|
+
full: { true: { base: ["w-full"] } },
|
|
11195
|
+
disabled: { true: { base: ["pointer-events-none"] } }
|
|
11239
11196
|
},
|
|
11240
11197
|
defaultVariants: {
|
|
11241
11198
|
color: "primary",
|
|
@@ -11246,10 +11203,10 @@ var datePickerStyle = tv({
|
|
|
11246
11203
|
});
|
|
11247
11204
|
|
|
11248
11205
|
// src/components/picker/timePicker.tsx
|
|
11249
|
-
var
|
|
11206
|
+
var import_react33 = require("react");
|
|
11250
11207
|
var import_react_dom6 = require("react-dom");
|
|
11251
|
-
var
|
|
11252
|
-
var TimePicker = (0,
|
|
11208
|
+
var import_jsx_runtime37 = require("react/jsx-runtime");
|
|
11209
|
+
var TimePicker = (0, import_react33.forwardRef)((originalProps, ref) => {
|
|
11253
11210
|
const [props, variantProps] = mapPropsVariants(originalProps, timePickerStyle.variantKeys);
|
|
11254
11211
|
const {
|
|
11255
11212
|
classNames,
|
|
@@ -11262,20 +11219,20 @@ var TimePicker = (0, import_react32.forwardRef)((originalProps, ref) => {
|
|
|
11262
11219
|
placeholder = "",
|
|
11263
11220
|
...inputProps
|
|
11264
11221
|
} = props;
|
|
11265
|
-
const [selectedRange, setSelectedRange] = (0,
|
|
11222
|
+
const [selectedRange, setSelectedRange] = (0, import_react33.useState)(
|
|
11266
11223
|
valueRange || { start: "", end: "" }
|
|
11267
11224
|
);
|
|
11268
|
-
const [isPanelOpen, setIsPanelOpen] = (0,
|
|
11269
|
-
const inputWrapperRef = (0,
|
|
11270
|
-
const panelWrapperRef = (0,
|
|
11271
|
-
const [panelPos, setPanelPos] = (0,
|
|
11272
|
-
const displayValue = (0,
|
|
11225
|
+
const [isPanelOpen, setIsPanelOpen] = (0, import_react33.useState)(false);
|
|
11226
|
+
const inputWrapperRef = (0, import_react33.useRef)(null);
|
|
11227
|
+
const panelWrapperRef = (0, import_react33.useRef)(null);
|
|
11228
|
+
const [panelPos, setPanelPos] = (0, import_react33.useState)({ top: -9999, left: -9999 });
|
|
11229
|
+
const displayValue = (0, import_react33.useMemo)(() => {
|
|
11273
11230
|
if (selectedRange.start && selectedRange.end) {
|
|
11274
11231
|
return `${selectedRange.start} ~ ${selectedRange.end}`;
|
|
11275
11232
|
}
|
|
11276
11233
|
return "";
|
|
11277
11234
|
}, [selectedRange]);
|
|
11278
|
-
const calculatePosition = (0,
|
|
11235
|
+
const calculatePosition = (0, import_react33.useCallback)(() => {
|
|
11279
11236
|
if (inputWrapperRef.current) {
|
|
11280
11237
|
const rect = inputWrapperRef.current.getBoundingClientRect();
|
|
11281
11238
|
setPanelPos({ top: rect.bottom + window.scrollY + 6, left: rect.left + window.scrollX });
|
|
@@ -11297,7 +11254,7 @@ var TimePicker = (0, import_react32.forwardRef)((originalProps, ref) => {
|
|
|
11297
11254
|
setIsPanelOpen(false);
|
|
11298
11255
|
}
|
|
11299
11256
|
};
|
|
11300
|
-
const slots = (0,
|
|
11257
|
+
const slots = (0, import_react33.useMemo)(() => timePickerStyle({ ...variantProps }), [variantProps]);
|
|
11301
11258
|
const renderHourOptions = () => {
|
|
11302
11259
|
return Array.from({ length: 24 }, (_, i) => {
|
|
11303
11260
|
const value = String(i).padStart(2, "0");
|
|
@@ -11342,12 +11299,12 @@ var TimePicker = (0, import_react32.forwardRef)((originalProps, ref) => {
|
|
|
11342
11299
|
setSelectedRange(emptyRange);
|
|
11343
11300
|
onChangeRange == null ? void 0 : onChangeRange(emptyRange);
|
|
11344
11301
|
};
|
|
11345
|
-
return /* @__PURE__ */ (0,
|
|
11346
|
-
/* @__PURE__ */ (0,
|
|
11347
|
-
label && /* @__PURE__ */ (0,
|
|
11348
|
-
/* @__PURE__ */ (0,
|
|
11349
|
-
/* @__PURE__ */ (0,
|
|
11350
|
-
/* @__PURE__ */ (0,
|
|
11302
|
+
return /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(import_jsx_runtime37.Fragment, { children: [
|
|
11303
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: slots.base({ class: classNames == null ? void 0 : classNames.base }), children: [
|
|
11304
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("label", { className: slots.label({ class: classNames == null ? void 0 : classNames.label }), children: label }),
|
|
11305
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: slots.wrapper({ class: classNames == null ? void 0 : classNames.wrapper }), children: [
|
|
11306
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { ref: inputWrapperRef, className: slots.inputWrapper({ class: classNames == null ? void 0 : classNames.inputWrapper }), children: [
|
|
11307
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
11351
11308
|
"input",
|
|
11352
11309
|
{
|
|
11353
11310
|
...inputProps,
|
|
@@ -11362,8 +11319,8 @@ var TimePicker = (0, import_react32.forwardRef)((originalProps, ref) => {
|
|
|
11362
11319
|
onKeyDown: handleInputKeyDown
|
|
11363
11320
|
}
|
|
11364
11321
|
),
|
|
11365
|
-
/* @__PURE__ */ (0,
|
|
11366
|
-
displayValue && /* @__PURE__ */ (0,
|
|
11322
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: slots.icon({ class: classNames == null ? void 0 : classNames.icon }), children: [
|
|
11323
|
+
displayValue && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
11367
11324
|
Icon_default,
|
|
11368
11325
|
{
|
|
11369
11326
|
name: "close",
|
|
@@ -11374,7 +11331,7 @@ var TimePicker = (0, import_react32.forwardRef)((originalProps, ref) => {
|
|
|
11374
11331
|
}
|
|
11375
11332
|
}
|
|
11376
11333
|
),
|
|
11377
|
-
/* @__PURE__ */ (0,
|
|
11334
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
11378
11335
|
Icon_default,
|
|
11379
11336
|
{
|
|
11380
11337
|
name: "clock",
|
|
@@ -11387,11 +11344,11 @@ var TimePicker = (0, import_react32.forwardRef)((originalProps, ref) => {
|
|
|
11387
11344
|
)
|
|
11388
11345
|
] })
|
|
11389
11346
|
] }),
|
|
11390
|
-
errorMessage && /* @__PURE__ */ (0,
|
|
11347
|
+
errorMessage && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("p", { className: clsx("error", slots.errorMessage({ class: classNames == null ? void 0 : classNames.errorMessage })), children: errorMessage })
|
|
11391
11348
|
] })
|
|
11392
11349
|
] }),
|
|
11393
11350
|
isPanelOpen && (0, import_react_dom6.createPortal)(
|
|
11394
|
-
/* @__PURE__ */ (0,
|
|
11351
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
11395
11352
|
"div",
|
|
11396
11353
|
{
|
|
11397
11354
|
ref: panelWrapperRef,
|
|
@@ -11403,9 +11360,9 @@ var TimePicker = (0, import_react32.forwardRef)((originalProps, ref) => {
|
|
|
11403
11360
|
zIndex: 1e3
|
|
11404
11361
|
},
|
|
11405
11362
|
onMouseDown: (e) => e.preventDefault(),
|
|
11406
|
-
children: /* @__PURE__ */ (0,
|
|
11407
|
-
/* @__PURE__ */ (0,
|
|
11408
|
-
/* @__PURE__ */ (0,
|
|
11363
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: "bg-body-background text-neutral-main flex items-center gap-[5px] p-[10px]", children: [
|
|
11364
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: "flex items-center gap-[5px]", children: [
|
|
11365
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
11409
11366
|
select_default,
|
|
11410
11367
|
{
|
|
11411
11368
|
options: renderHourOptions(),
|
|
@@ -11416,8 +11373,8 @@ var TimePicker = (0, import_react32.forwardRef)((originalProps, ref) => {
|
|
|
11416
11373
|
classNames: mergedSelectClassNames
|
|
11417
11374
|
}
|
|
11418
11375
|
),
|
|
11419
|
-
/* @__PURE__ */ (0,
|
|
11420
|
-
/* @__PURE__ */ (0,
|
|
11376
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)("span", { children: ":" }),
|
|
11377
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
11421
11378
|
select_default,
|
|
11422
11379
|
{
|
|
11423
11380
|
options: renderMinuteOptions(),
|
|
@@ -11429,9 +11386,9 @@ var TimePicker = (0, import_react32.forwardRef)((originalProps, ref) => {
|
|
|
11429
11386
|
}
|
|
11430
11387
|
)
|
|
11431
11388
|
] }),
|
|
11432
|
-
/* @__PURE__ */ (0,
|
|
11433
|
-
/* @__PURE__ */ (0,
|
|
11434
|
-
/* @__PURE__ */ (0,
|
|
11389
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)("span", { children: "~" }),
|
|
11390
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: "flex items-center gap-[5px]", children: [
|
|
11391
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
11435
11392
|
select_default,
|
|
11436
11393
|
{
|
|
11437
11394
|
options: renderHourOptions(),
|
|
@@ -11442,8 +11399,8 @@ var TimePicker = (0, import_react32.forwardRef)((originalProps, ref) => {
|
|
|
11442
11399
|
classNames: mergedSelectClassNames
|
|
11443
11400
|
}
|
|
11444
11401
|
),
|
|
11445
|
-
/* @__PURE__ */ (0,
|
|
11446
|
-
/* @__PURE__ */ (0,
|
|
11402
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)("span", { children: ":" }),
|
|
11403
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
11447
11404
|
select_default,
|
|
11448
11405
|
{
|
|
11449
11406
|
options: renderMinuteOptions(),
|
|
@@ -11590,19 +11547,19 @@ var timePickerStyle = tv({
|
|
|
11590
11547
|
});
|
|
11591
11548
|
|
|
11592
11549
|
// src/components/tree/tree.tsx
|
|
11593
|
-
var
|
|
11594
|
-
var
|
|
11595
|
-
var TreeNodeItem = (0,
|
|
11550
|
+
var import_react34 = require("react");
|
|
11551
|
+
var import_jsx_runtime38 = require("react/jsx-runtime");
|
|
11552
|
+
var TreeNodeItem = (0, import_react34.forwardRef)(
|
|
11596
11553
|
({ node, depth, fileIcon, selectedName, classNames, onExpand }, ref) => {
|
|
11597
|
-
const [isOpen, setIsOpen] = (0,
|
|
11598
|
-
const [children, setChildren] = (0,
|
|
11599
|
-
const slots = (0,
|
|
11600
|
-
const hasMore = (0,
|
|
11554
|
+
const [isOpen, setIsOpen] = (0, import_react34.useState)(false);
|
|
11555
|
+
const [children, setChildren] = (0, import_react34.useState)(node.children);
|
|
11556
|
+
const slots = (0, import_react34.useMemo)(() => treeStyle(), []);
|
|
11557
|
+
const hasMore = (0, import_react34.useMemo)(() => {
|
|
11601
11558
|
if (node.isLeaf) return false;
|
|
11602
11559
|
if (Array.isArray(children)) return children.length > 0;
|
|
11603
11560
|
return typeof onExpand === "function";
|
|
11604
11561
|
}, [node.isLeaf, children, onExpand]);
|
|
11605
|
-
const toggleOpen = (0,
|
|
11562
|
+
const toggleOpen = (0, import_react34.useCallback)(async () => {
|
|
11606
11563
|
if (!isOpen && !children && onExpand && !node.isLeaf) {
|
|
11607
11564
|
try {
|
|
11608
11565
|
const result = await onExpand(node);
|
|
@@ -11624,7 +11581,7 @@ var TreeNodeItem = (0, import_react33.forwardRef)(
|
|
|
11624
11581
|
e.preventDefault();
|
|
11625
11582
|
(_a = node.onRightClick) == null ? void 0 : _a.call(node, e);
|
|
11626
11583
|
};
|
|
11627
|
-
return /* @__PURE__ */ (0,
|
|
11584
|
+
return /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(
|
|
11628
11585
|
"div",
|
|
11629
11586
|
{
|
|
11630
11587
|
ref,
|
|
@@ -11633,7 +11590,7 @@ var TreeNodeItem = (0, import_react33.forwardRef)(
|
|
|
11633
11590
|
slots.gap({ class: classNames == null ? void 0 : classNames.gap })
|
|
11634
11591
|
),
|
|
11635
11592
|
children: [
|
|
11636
|
-
/* @__PURE__ */ (0,
|
|
11593
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(
|
|
11637
11594
|
"div",
|
|
11638
11595
|
{
|
|
11639
11596
|
className: clsx(
|
|
@@ -11644,7 +11601,7 @@ var TreeNodeItem = (0, import_react33.forwardRef)(
|
|
|
11644
11601
|
onClick: handleClick,
|
|
11645
11602
|
onContextMenu: handleRightClick,
|
|
11646
11603
|
children: [
|
|
11647
|
-
hasMore && /* @__PURE__ */ (0,
|
|
11604
|
+
hasMore && /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
|
11648
11605
|
Icon_default,
|
|
11649
11606
|
{
|
|
11650
11607
|
name: "right-chevron",
|
|
@@ -11659,7 +11616,7 @@ var TreeNodeItem = (0, import_react33.forwardRef)(
|
|
|
11659
11616
|
]
|
|
11660
11617
|
}
|
|
11661
11618
|
),
|
|
11662
|
-
isOpen && hasMore && /* @__PURE__ */ (0,
|
|
11619
|
+
isOpen && hasMore && /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: slots.gap({ class: classNames == null ? void 0 : classNames.gap }), children: children == null ? void 0 : children.map((child) => /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
|
11663
11620
|
TreeNodeItem,
|
|
11664
11621
|
{
|
|
11665
11622
|
node: child,
|
|
@@ -11678,7 +11635,7 @@ var TreeNodeItem = (0, import_react33.forwardRef)(
|
|
|
11678
11635
|
);
|
|
11679
11636
|
TreeNodeItem.displayName = "TreeNodeItem";
|
|
11680
11637
|
var Tree = ({ headerContent, group, groupIcon, fileIcon, selectedName, classNames, onExpand }) => {
|
|
11681
|
-
const slots = (0,
|
|
11638
|
+
const slots = (0, import_react34.useMemo)(() => treeStyle(), []);
|
|
11682
11639
|
const handleClick = (e) => {
|
|
11683
11640
|
var _a;
|
|
11684
11641
|
(_a = group.onClick) == null ? void 0 : _a.call(group, e);
|
|
@@ -11688,10 +11645,10 @@ var Tree = ({ headerContent, group, groupIcon, fileIcon, selectedName, className
|
|
|
11688
11645
|
e.preventDefault();
|
|
11689
11646
|
(_a = group.onRightClick) == null ? void 0 : _a.call(group, e);
|
|
11690
11647
|
};
|
|
11691
|
-
return /* @__PURE__ */ (0,
|
|
11692
|
-
headerContent && /* @__PURE__ */ (0,
|
|
11693
|
-
/* @__PURE__ */ (0,
|
|
11694
|
-
/* @__PURE__ */ (0,
|
|
11648
|
+
return /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: slots.base({ class: classNames == null ? void 0 : classNames.base }), children: [
|
|
11649
|
+
headerContent && /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { children: headerContent }),
|
|
11650
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: slots.wrapper({ class: classNames == null ? void 0 : classNames.wrapper }), children: [
|
|
11651
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(
|
|
11695
11652
|
"div",
|
|
11696
11653
|
{
|
|
11697
11654
|
className: clsx(
|
|
@@ -11707,7 +11664,7 @@ var Tree = ({ headerContent, group, groupIcon, fileIcon, selectedName, className
|
|
|
11707
11664
|
]
|
|
11708
11665
|
}
|
|
11709
11666
|
),
|
|
11710
|
-
/* @__PURE__ */ (0,
|
|
11667
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: slots.itemWrapper({ class: classNames == null ? void 0 : classNames.itemWrapper }), children: group.data.map((node) => /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
|
11711
11668
|
TreeNodeItem,
|
|
11712
11669
|
{
|
|
11713
11670
|
node,
|
|
@@ -11746,19 +11703,19 @@ var treeStyle = tv({
|
|
|
11746
11703
|
});
|
|
11747
11704
|
|
|
11748
11705
|
// src/components/fileUpload/fileUpload.tsx
|
|
11749
|
-
var
|
|
11750
|
-
var
|
|
11706
|
+
var import_react37 = require("react");
|
|
11707
|
+
var import_tailwind_variants35 = require("tailwind-variants");
|
|
11751
11708
|
|
|
11752
11709
|
// src/components/progress/progress.tsx
|
|
11753
|
-
var
|
|
11710
|
+
var import_react36 = require("react");
|
|
11754
11711
|
|
|
11755
11712
|
// src/hooks/useIsMounted.ts
|
|
11756
|
-
var
|
|
11713
|
+
var import_react35 = require("react");
|
|
11757
11714
|
function useIsMounted(props = {}) {
|
|
11758
11715
|
const { rerender = false, delay = 0 } = props;
|
|
11759
|
-
const isMountedRef = (0,
|
|
11760
|
-
const [isMounted, setIsMounted] = (0,
|
|
11761
|
-
(0,
|
|
11716
|
+
const isMountedRef = (0, import_react35.useRef)(false);
|
|
11717
|
+
const [isMounted, setIsMounted] = (0, import_react35.useState)(false);
|
|
11718
|
+
(0, import_react35.useEffect)(() => {
|
|
11762
11719
|
isMountedRef.current = true;
|
|
11763
11720
|
let timer = null;
|
|
11764
11721
|
if (rerender) {
|
|
@@ -11780,11 +11737,11 @@ function useIsMounted(props = {}) {
|
|
|
11780
11737
|
}
|
|
11781
11738
|
};
|
|
11782
11739
|
}, [rerender]);
|
|
11783
|
-
return [(0,
|
|
11740
|
+
return [(0, import_react35.useCallback)(() => isMountedRef.current, []), isMounted];
|
|
11784
11741
|
}
|
|
11785
11742
|
|
|
11786
11743
|
// src/components/progress/progress.tsx
|
|
11787
|
-
var
|
|
11744
|
+
var import_jsx_runtime39 = require("react/jsx-runtime");
|
|
11788
11745
|
var Progress = (originalProps) => {
|
|
11789
11746
|
const [props, variantProps] = mapPropsVariants(originalProps, progressStyle.variantKeys);
|
|
11790
11747
|
const { children, classNames, value = 0, minValue = 0, maxValue = 100, ...progressProps } = props;
|
|
@@ -11794,12 +11751,12 @@ var Progress = (originalProps) => {
|
|
|
11794
11751
|
delay: 100
|
|
11795
11752
|
});
|
|
11796
11753
|
const selfMounted = variantProps.disableAnimation ? true : isMounted;
|
|
11797
|
-
const percentage = (0,
|
|
11754
|
+
const percentage = (0, import_react36.useMemo)(
|
|
11798
11755
|
() => isIndeterminate || !selfMounted ? void 0 : clampPercentage((value - minValue) / (maxValue - minValue) * 100),
|
|
11799
11756
|
[selfMounted, isIndeterminate, value, minValue, maxValue]
|
|
11800
11757
|
);
|
|
11801
|
-
const slots = (0,
|
|
11802
|
-
return /* @__PURE__ */ (0,
|
|
11758
|
+
const slots = (0, import_react36.useMemo)(() => progressStyle({ ...variantProps }), [variantProps]);
|
|
11759
|
+
return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("div", { className: slots.base({ class: classNames == null ? void 0 : classNames.base }), children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("div", { className: slots.track({ class: classNames == null ? void 0 : classNames.track }), children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
|
|
11803
11760
|
"div",
|
|
11804
11761
|
{
|
|
11805
11762
|
className: slots.indicator({ class: classNames == null ? void 0 : classNames.indicator }),
|
|
@@ -11898,7 +11855,7 @@ var clampPercentage = (value) => {
|
|
|
11898
11855
|
};
|
|
11899
11856
|
|
|
11900
11857
|
// src/components/fileUpload/fileUpload.tsx
|
|
11901
|
-
var
|
|
11858
|
+
var import_jsx_runtime40 = require("react/jsx-runtime");
|
|
11902
11859
|
function FileUpload({
|
|
11903
11860
|
buttonText,
|
|
11904
11861
|
maxSizeMB = 10,
|
|
@@ -11914,11 +11871,11 @@ function FileUpload({
|
|
|
11914
11871
|
name,
|
|
11915
11872
|
classNames
|
|
11916
11873
|
}) {
|
|
11917
|
-
const fileInputRef = (0,
|
|
11918
|
-
const uploadIntervalRef = (0,
|
|
11919
|
-
const [file, setFile] = (0,
|
|
11920
|
-
const [uploadProgress, setUploadProgress] = (0,
|
|
11921
|
-
const [message, setMessage] = (0,
|
|
11874
|
+
const fileInputRef = (0, import_react37.useRef)(null);
|
|
11875
|
+
const uploadIntervalRef = (0, import_react37.useRef)(null);
|
|
11876
|
+
const [file, setFile] = (0, import_react37.useState)(null);
|
|
11877
|
+
const [uploadProgress, setUploadProgress] = (0, import_react37.useState)(0);
|
|
11878
|
+
const [message, setMessage] = (0, import_react37.useState)(errorMessage);
|
|
11922
11879
|
const slots = fileUploadStyle();
|
|
11923
11880
|
const handleButtonClick = () => {
|
|
11924
11881
|
var _a;
|
|
@@ -11969,20 +11926,20 @@ function FileUpload({
|
|
|
11969
11926
|
setMessage("");
|
|
11970
11927
|
if (onCancelUpload) onCancelUpload();
|
|
11971
11928
|
};
|
|
11972
|
-
(0,
|
|
11929
|
+
(0, import_react37.useEffect)(() => {
|
|
11973
11930
|
return () => {
|
|
11974
11931
|
if (uploadIntervalRef.current) {
|
|
11975
11932
|
clearInterval(uploadIntervalRef.current);
|
|
11976
11933
|
}
|
|
11977
11934
|
};
|
|
11978
11935
|
}, []);
|
|
11979
|
-
(0,
|
|
11936
|
+
(0, import_react37.useEffect)(() => {
|
|
11980
11937
|
setMessage(errorMessage);
|
|
11981
11938
|
}, [setMessage, errorMessage]);
|
|
11982
|
-
return /* @__PURE__ */ (0,
|
|
11983
|
-
/* @__PURE__ */ (0,
|
|
11984
|
-
/* @__PURE__ */ (0,
|
|
11985
|
-
/* @__PURE__ */ (0,
|
|
11939
|
+
return /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)("div", { className: slots.base({ class: classNames == null ? void 0 : classNames.base }), children: [
|
|
11940
|
+
/* @__PURE__ */ (0, import_jsx_runtime40.jsxs)("div", { className: slots.container({ class: classNames == null ? void 0 : classNames.container }), children: [
|
|
11941
|
+
/* @__PURE__ */ (0, import_jsx_runtime40.jsxs)("div", { className: slots.inputWrapper(), children: [
|
|
11942
|
+
/* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
|
|
11986
11943
|
input_default,
|
|
11987
11944
|
{
|
|
11988
11945
|
name,
|
|
@@ -11994,7 +11951,7 @@ function FileUpload({
|
|
|
11994
11951
|
errorMessage: message
|
|
11995
11952
|
}
|
|
11996
11953
|
),
|
|
11997
|
-
file && /* @__PURE__ */ (0,
|
|
11954
|
+
file && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
|
|
11998
11955
|
icon_button_default,
|
|
11999
11956
|
{
|
|
12000
11957
|
name: "close",
|
|
@@ -12006,16 +11963,16 @@ function FileUpload({
|
|
|
12006
11963
|
}
|
|
12007
11964
|
)
|
|
12008
11965
|
] }),
|
|
12009
|
-
/* @__PURE__ */ (0,
|
|
12010
|
-
/* @__PURE__ */ (0,
|
|
11966
|
+
/* @__PURE__ */ (0, import_jsx_runtime40.jsx)(button_default, { type: "button", variant: "outline", onClick: handleButtonClick, disabled: !!file, children: buttonText }),
|
|
11967
|
+
/* @__PURE__ */ (0, import_jsx_runtime40.jsx)("input", { ref: fileInputRef, type: "file", hidden: true, accept: accept.join(","), onChange: handleFileChange })
|
|
12011
11968
|
] }),
|
|
12012
|
-
showProgress && file && uploadProgress < 100 && /* @__PURE__ */ (0,
|
|
12013
|
-
!message && helperMessage && /* @__PURE__ */ (0,
|
|
11969
|
+
showProgress && file && uploadProgress < 100 && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(progress_default, { value: uploadProgress }),
|
|
11970
|
+
!message && helperMessage && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("p", { className: slots.helperMessage(), children: helperMessage })
|
|
12014
11971
|
] });
|
|
12015
11972
|
}
|
|
12016
11973
|
FileUpload.displayName = "FileUpload";
|
|
12017
11974
|
var fileUpload_default = FileUpload;
|
|
12018
|
-
var fileUploadStyle = (0,
|
|
11975
|
+
var fileUploadStyle = (0, import_tailwind_variants35.tv)({
|
|
12019
11976
|
slots: {
|
|
12020
11977
|
base: ["flex", "flex-col", "gap-[5px]"],
|
|
12021
11978
|
container: ["flex", "gap-[10px]"],
|
|
@@ -12028,12 +11985,12 @@ var fileUploadStyle = (0, import_tailwind_variants34.tv)({
|
|
|
12028
11985
|
|
|
12029
11986
|
// src/components/charts/circularProgress.tsx
|
|
12030
11987
|
var import_recharts = require("recharts");
|
|
12031
|
-
var
|
|
12032
|
-
var
|
|
12033
|
-
var CircularProgress = (0,
|
|
11988
|
+
var import_react38 = require("react");
|
|
11989
|
+
var import_jsx_runtime41 = require("react/jsx-runtime");
|
|
11990
|
+
var CircularProgress = (0, import_react38.forwardRef)((originalProps, ref) => {
|
|
12034
11991
|
const [props, variantProps] = mapPropsVariants(originalProps, circularProgressStyle.variantKeys);
|
|
12035
11992
|
const { label, size = 150, percentage, unit, classNames } = { ...props, ...variantProps };
|
|
12036
|
-
const slots = (0,
|
|
11993
|
+
const slots = (0, import_react38.useMemo)(() => circularProgressStyle({ ...variantProps }), [variantProps]);
|
|
12037
11994
|
const data = [
|
|
12038
11995
|
{
|
|
12039
11996
|
name: label,
|
|
@@ -12065,9 +12022,9 @@ var CircularProgress = (0, import_react37.forwardRef)((originalProps, ref) => {
|
|
|
12065
12022
|
const colorValue = originalProps.color;
|
|
12066
12023
|
const colorKey = colorValue || "blue";
|
|
12067
12024
|
const currentGradient = gradientColors[colorKey];
|
|
12068
|
-
return /* @__PURE__ */ (0,
|
|
12069
|
-
/* @__PURE__ */ (0,
|
|
12070
|
-
/* @__PURE__ */ (0,
|
|
12025
|
+
return /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)("div", { ref, className: slots.base({ class: classNames == null ? void 0 : classNames.base }), children: [
|
|
12026
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsxs)("div", { className: "relative", style: { width: size, height: size }, children: [
|
|
12027
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(
|
|
12071
12028
|
import_recharts.RadialBarChart,
|
|
12072
12029
|
{
|
|
12073
12030
|
width: size,
|
|
@@ -12079,11 +12036,11 @@ var CircularProgress = (0, import_react37.forwardRef)((originalProps, ref) => {
|
|
|
12079
12036
|
startAngle: 90,
|
|
12080
12037
|
endAngle: -270,
|
|
12081
12038
|
children: [
|
|
12082
|
-
/* @__PURE__ */ (0,
|
|
12083
|
-
/* @__PURE__ */ (0,
|
|
12084
|
-
/* @__PURE__ */ (0,
|
|
12039
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)("defs", { children: /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)("linearGradient", { id: gradientId, x1: "0%", y1: "0%", x2: "100%", y2: "100%", children: [
|
|
12040
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)("stop", { offset: "0%", stopColor: currentGradient.start }),
|
|
12041
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)("stop", { offset: "100%", stopColor: currentGradient.end })
|
|
12085
12042
|
] }) }),
|
|
12086
|
-
/* @__PURE__ */ (0,
|
|
12043
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
|
|
12087
12044
|
"circle",
|
|
12088
12045
|
{
|
|
12089
12046
|
cx: size / 2,
|
|
@@ -12094,7 +12051,7 @@ var CircularProgress = (0, import_react37.forwardRef)((originalProps, ref) => {
|
|
|
12094
12051
|
strokeWidth: "1"
|
|
12095
12052
|
}
|
|
12096
12053
|
),
|
|
12097
|
-
/* @__PURE__ */ (0,
|
|
12054
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
|
|
12098
12055
|
"circle",
|
|
12099
12056
|
{
|
|
12100
12057
|
cx: size / 2,
|
|
@@ -12105,17 +12062,17 @@ var CircularProgress = (0, import_react37.forwardRef)((originalProps, ref) => {
|
|
|
12105
12062
|
strokeWidth: BAR_SIZE
|
|
12106
12063
|
}
|
|
12107
12064
|
),
|
|
12108
|
-
/* @__PURE__ */ (0,
|
|
12109
|
-
/* @__PURE__ */ (0,
|
|
12065
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_recharts.PolarAngleAxis, { type: "number", domain: [0, 100], angleAxisId: 0, tick: false }),
|
|
12066
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_recharts.RadialBar, { dataKey: "value", cornerRadius: 12, animationDuration: 1e3, fill: `url(#${gradientId})` })
|
|
12110
12067
|
]
|
|
12111
12068
|
}
|
|
12112
12069
|
),
|
|
12113
|
-
/* @__PURE__ */ (0,
|
|
12114
|
-
/* @__PURE__ */ (0,
|
|
12115
|
-
/* @__PURE__ */ (0,
|
|
12070
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsxs)("div", { className: "absolute inset-0 flex items-center justify-center", children: [
|
|
12071
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)("span", { className: slots.percentage({ class: classNames == null ? void 0 : classNames.percentage }), children: percentage }),
|
|
12072
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)("span", { className: slots.unit({ class: classNames == null ? void 0 : classNames.unit }), children: unit })
|
|
12116
12073
|
] })
|
|
12117
12074
|
] }),
|
|
12118
|
-
label && /* @__PURE__ */ (0,
|
|
12075
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("p", { className: slots.label({ class: classNames == null ? void 0 : classNames.label }), children: label })
|
|
12119
12076
|
] });
|
|
12120
12077
|
});
|
|
12121
12078
|
CircularProgress.displayName = "CircularProgress";
|
|
@@ -12148,26 +12105,26 @@ var circularProgressStyle = tv({
|
|
|
12148
12105
|
});
|
|
12149
12106
|
|
|
12150
12107
|
// src/components/charts/areaChart.tsx
|
|
12151
|
-
var
|
|
12108
|
+
var import_react39 = require("react");
|
|
12152
12109
|
var import_recharts2 = require("recharts");
|
|
12153
|
-
var
|
|
12154
|
-
var AreaChartComponent = (0,
|
|
12155
|
-
const uniqueId = (0,
|
|
12110
|
+
var import_jsx_runtime42 = require("react/jsx-runtime");
|
|
12111
|
+
var AreaChartComponent = (0, import_react39.forwardRef)((originalProps, ref) => {
|
|
12112
|
+
const uniqueId = (0, import_react39.useId)();
|
|
12156
12113
|
const [props, variantProps] = mapPropsVariants(originalProps, areaChartStyle.variantKeys);
|
|
12157
12114
|
const { data, label, color = "primary", classNames } = { ...props, ...variantProps };
|
|
12158
|
-
const slots = (0,
|
|
12115
|
+
const slots = (0, import_react39.useMemo)(() => areaChartStyle({ ...variantProps }), [variantProps]);
|
|
12159
12116
|
const COLOR_MAP = {
|
|
12160
12117
|
primary: "#3F9CF2",
|
|
12161
12118
|
danger: "#FF4684"
|
|
12162
12119
|
};
|
|
12163
|
-
const colorHex = (0,
|
|
12164
|
-
const [tickPositions, setTickPositions] = (0,
|
|
12165
|
-
const tickRef = (0,
|
|
12120
|
+
const colorHex = (0, import_react39.useMemo)(() => COLOR_MAP[color], [color]);
|
|
12121
|
+
const [tickPositions, setTickPositions] = (0, import_react39.useState)([]);
|
|
12122
|
+
const tickRef = (0, import_react39.useRef)([]);
|
|
12166
12123
|
const CustomTick = ({ x, y, payload }) => {
|
|
12167
12124
|
if (x !== void 0) {
|
|
12168
12125
|
tickRef.current.push(x);
|
|
12169
12126
|
}
|
|
12170
|
-
return /* @__PURE__ */ (0,
|
|
12127
|
+
return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
12171
12128
|
"text",
|
|
12172
12129
|
{
|
|
12173
12130
|
x,
|
|
@@ -12181,7 +12138,7 @@ var AreaChartComponent = (0, import_react38.forwardRef)((originalProps, ref) =>
|
|
|
12181
12138
|
}
|
|
12182
12139
|
);
|
|
12183
12140
|
};
|
|
12184
|
-
(0,
|
|
12141
|
+
(0, import_react39.useEffect)(() => {
|
|
12185
12142
|
const raf = requestAnimationFrame(() => {
|
|
12186
12143
|
const unique = [...new Set(tickRef.current)].sort((a, b) => a - b);
|
|
12187
12144
|
const mids = [];
|
|
@@ -12196,19 +12153,19 @@ var AreaChartComponent = (0, import_react38.forwardRef)((originalProps, ref) =>
|
|
|
12196
12153
|
const CustomDotWithShadow = (props2) => {
|
|
12197
12154
|
const { cx, cy, fill, stroke } = props2;
|
|
12198
12155
|
if (cx === void 0 || cy === void 0) return null;
|
|
12199
|
-
return /* @__PURE__ */ (0,
|
|
12200
|
-
/* @__PURE__ */ (0,
|
|
12201
|
-
/* @__PURE__ */ (0,
|
|
12156
|
+
return /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(import_jsx_runtime42.Fragment, { children: [
|
|
12157
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)("circle", { cx, cy, r: 8, fill, opacity: 0.2 }),
|
|
12158
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)("circle", { cx, cy, r: 3.5, fill, stroke, strokeWidth: 2 })
|
|
12202
12159
|
] });
|
|
12203
12160
|
};
|
|
12204
|
-
return /* @__PURE__ */ (0,
|
|
12205
|
-
label && /* @__PURE__ */ (0,
|
|
12206
|
-
/* @__PURE__ */ (0,
|
|
12207
|
-
/* @__PURE__ */ (0,
|
|
12208
|
-
/* @__PURE__ */ (0,
|
|
12209
|
-
/* @__PURE__ */ (0,
|
|
12161
|
+
return /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("div", { ref, className: slots.base({ class: classNames == null ? void 0 : classNames.base }), children: [
|
|
12162
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("p", { className: slots.label({ class: classNames == null ? void 0 : classNames.label }), children: label }),
|
|
12163
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_recharts2.ResponsiveContainer, { width: "100%", height: "100%", children: /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(import_recharts2.AreaChart, { data, margin: { left: -30 }, children: [
|
|
12164
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)("defs", { children: /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("linearGradient", { id: `colorGradient-${uniqueId}`, x1: "0", y1: "0", x2: "0", y2: "1", children: [
|
|
12165
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)("stop", { offset: "5%", stopColor: colorHex, stopOpacity: 0.3 }),
|
|
12166
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)("stop", { offset: "95%", stopColor: colorHex, stopOpacity: 0 })
|
|
12210
12167
|
] }) }),
|
|
12211
|
-
/* @__PURE__ */ (0,
|
|
12168
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
12212
12169
|
import_recharts2.CartesianGrid,
|
|
12213
12170
|
{
|
|
12214
12171
|
vertical: true,
|
|
@@ -12218,7 +12175,7 @@ var AreaChartComponent = (0, import_react38.forwardRef)((originalProps, ref) =>
|
|
|
12218
12175
|
verticalPoints: tickPositions
|
|
12219
12176
|
}
|
|
12220
12177
|
),
|
|
12221
|
-
/* @__PURE__ */ (0,
|
|
12178
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
12222
12179
|
import_recharts2.XAxis,
|
|
12223
12180
|
{
|
|
12224
12181
|
dataKey: "name",
|
|
@@ -12228,7 +12185,7 @@ var AreaChartComponent = (0, import_react38.forwardRef)((originalProps, ref) =>
|
|
|
12228
12185
|
padding: { left: 35.5, right: 35.5 }
|
|
12229
12186
|
}
|
|
12230
12187
|
),
|
|
12231
|
-
/* @__PURE__ */ (0,
|
|
12188
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
12232
12189
|
import_recharts2.YAxis,
|
|
12233
12190
|
{
|
|
12234
12191
|
axisLine: { stroke: "#DFE2E7", strokeWidth: 1 },
|
|
@@ -12244,7 +12201,7 @@ var AreaChartComponent = (0, import_react38.forwardRef)((originalProps, ref) =>
|
|
|
12244
12201
|
domain: [-6, 110]
|
|
12245
12202
|
}
|
|
12246
12203
|
),
|
|
12247
|
-
/* @__PURE__ */ (0,
|
|
12204
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
12248
12205
|
import_recharts2.Area,
|
|
12249
12206
|
{
|
|
12250
12207
|
type: "monotone",
|
|
@@ -12252,7 +12209,7 @@ var AreaChartComponent = (0, import_react38.forwardRef)((originalProps, ref) =>
|
|
|
12252
12209
|
stroke: colorHex,
|
|
12253
12210
|
strokeWidth: 2,
|
|
12254
12211
|
fill: `url(#colorGradient-${uniqueId})`,
|
|
12255
|
-
dot: /* @__PURE__ */ (0,
|
|
12212
|
+
dot: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(CustomDotWithShadow, { stroke: colorHex, fill: colorHex }),
|
|
12256
12213
|
activeDot: { r: 7, fill: colorHex }
|
|
12257
12214
|
}
|
|
12258
12215
|
)
|
|
@@ -12284,20 +12241,20 @@ var areaChartStyle = tv({
|
|
|
12284
12241
|
});
|
|
12285
12242
|
|
|
12286
12243
|
// src/components/charts/barChart.tsx
|
|
12287
|
-
var
|
|
12244
|
+
var import_react40 = require("react");
|
|
12288
12245
|
var import_recharts3 = require("recharts");
|
|
12289
|
-
var
|
|
12290
|
-
var BarChartComponent = (0,
|
|
12246
|
+
var import_jsx_runtime43 = require("react/jsx-runtime");
|
|
12247
|
+
var BarChartComponent = (0, import_react40.forwardRef)((originalProps, ref) => {
|
|
12291
12248
|
const [props, variantProps] = mapPropsVariants(originalProps, barChartStyle.variantKeys);
|
|
12292
12249
|
const { data, label, classNames } = { ...props, ...variantProps };
|
|
12293
|
-
const slots = (0,
|
|
12250
|
+
const slots = (0, import_react40.useMemo)(() => barChartStyle({ ...variantProps }), [variantProps]);
|
|
12294
12251
|
const COLOR_MAP = {
|
|
12295
12252
|
primary: "#C7E5FA",
|
|
12296
12253
|
secondary: "#92DCB2",
|
|
12297
12254
|
warning: "#DEC1FA"
|
|
12298
12255
|
};
|
|
12299
|
-
const [tickPositions, setTickPositions] = (0,
|
|
12300
|
-
const tickRef = (0,
|
|
12256
|
+
const [tickPositions, setTickPositions] = (0, import_react40.useState)([]);
|
|
12257
|
+
const tickRef = (0, import_react40.useRef)([]);
|
|
12301
12258
|
const CustomBarShape = (barProps) => {
|
|
12302
12259
|
const { x, y, width, height, fill } = barProps;
|
|
12303
12260
|
const radius = 5;
|
|
@@ -12305,19 +12262,19 @@ var BarChartComponent = (0, import_react39.forwardRef)((originalProps, ref) => {
|
|
|
12305
12262
|
const adjustedHeight = height + extraHeight;
|
|
12306
12263
|
const adjustedY = y;
|
|
12307
12264
|
const bottomY = adjustedY + adjustedHeight;
|
|
12308
|
-
return height ? /* @__PURE__ */ (0,
|
|
12265
|
+
return height ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
|
|
12309
12266
|
"path",
|
|
12310
12267
|
{
|
|
12311
12268
|
d: `M${x},${bottomY} L${x},${adjustedY + radius} Q${x},${adjustedY} ${x + radius},${adjustedY} L${x + width - radius},${adjustedY} Q${x + width},${adjustedY} ${x + width},${adjustedY + radius} L${x + width},${bottomY} Z`,
|
|
12312
12269
|
fill
|
|
12313
12270
|
}
|
|
12314
|
-
) : /* @__PURE__ */ (0,
|
|
12271
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("rect", { x, y, width, height: 0, fill });
|
|
12315
12272
|
};
|
|
12316
12273
|
const CustomTick = ({ x, y, payload }) => {
|
|
12317
12274
|
if (x !== void 0) {
|
|
12318
12275
|
tickRef.current.push(x);
|
|
12319
12276
|
}
|
|
12320
|
-
return /* @__PURE__ */ (0,
|
|
12277
|
+
return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
|
|
12321
12278
|
"text",
|
|
12322
12279
|
{
|
|
12323
12280
|
x,
|
|
@@ -12331,7 +12288,7 @@ var BarChartComponent = (0, import_react39.forwardRef)((originalProps, ref) => {
|
|
|
12331
12288
|
}
|
|
12332
12289
|
);
|
|
12333
12290
|
};
|
|
12334
|
-
(0,
|
|
12291
|
+
(0, import_react40.useEffect)(() => {
|
|
12335
12292
|
const raf = requestAnimationFrame(() => {
|
|
12336
12293
|
const unique = [...new Set(tickRef.current)].sort((a, b) => a - b);
|
|
12337
12294
|
const mids = [];
|
|
@@ -12343,9 +12300,9 @@ var BarChartComponent = (0, import_react39.forwardRef)((originalProps, ref) => {
|
|
|
12343
12300
|
});
|
|
12344
12301
|
return () => cancelAnimationFrame(raf);
|
|
12345
12302
|
}, [data]);
|
|
12346
|
-
return /* @__PURE__ */ (0,
|
|
12347
|
-
label && /* @__PURE__ */ (0,
|
|
12348
|
-
/* @__PURE__ */ (0,
|
|
12303
|
+
return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("div", { ref, className: slots.base({ class: classNames == null ? void 0 : classNames.base }), children: [
|
|
12304
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("p", { className: slots.label({ class: classNames == null ? void 0 : classNames.label }), children: label }),
|
|
12305
|
+
/* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_recharts3.ResponsiveContainer, { width: "100%", height: "100%", children: /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(
|
|
12349
12306
|
import_recharts3.BarChart,
|
|
12350
12307
|
{
|
|
12351
12308
|
data,
|
|
@@ -12354,7 +12311,7 @@ var BarChartComponent = (0, import_react39.forwardRef)((originalProps, ref) => {
|
|
|
12354
12311
|
barGap: 10,
|
|
12355
12312
|
className: "[&_.recharts-surface]:outline-none [&_.recharts-surface]:focus:outline-none",
|
|
12356
12313
|
children: [
|
|
12357
|
-
/* @__PURE__ */ (0,
|
|
12314
|
+
/* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
|
|
12358
12315
|
import_recharts3.CartesianGrid,
|
|
12359
12316
|
{
|
|
12360
12317
|
vertical: true,
|
|
@@ -12364,7 +12321,7 @@ var BarChartComponent = (0, import_react39.forwardRef)((originalProps, ref) => {
|
|
|
12364
12321
|
verticalPoints: tickPositions
|
|
12365
12322
|
}
|
|
12366
12323
|
),
|
|
12367
|
-
/* @__PURE__ */ (0,
|
|
12324
|
+
/* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
|
|
12368
12325
|
import_recharts3.XAxis,
|
|
12369
12326
|
{
|
|
12370
12327
|
dataKey: "name",
|
|
@@ -12374,7 +12331,7 @@ var BarChartComponent = (0, import_react39.forwardRef)((originalProps, ref) => {
|
|
|
12374
12331
|
padding: { left: 32, right: 32 }
|
|
12375
12332
|
}
|
|
12376
12333
|
),
|
|
12377
|
-
/* @__PURE__ */ (0,
|
|
12334
|
+
/* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
|
|
12378
12335
|
import_recharts3.YAxis,
|
|
12379
12336
|
{
|
|
12380
12337
|
axisLine: { stroke: "#DFE2E7", strokeWidth: 1 },
|
|
@@ -12390,9 +12347,9 @@ var BarChartComponent = (0, import_react39.forwardRef)((originalProps, ref) => {
|
|
|
12390
12347
|
domain: [-6, 110]
|
|
12391
12348
|
}
|
|
12392
12349
|
),
|
|
12393
|
-
/* @__PURE__ */ (0,
|
|
12394
|
-
/* @__PURE__ */ (0,
|
|
12395
|
-
/* @__PURE__ */ (0,
|
|
12350
|
+
/* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_recharts3.Bar, { dataKey: "avg", fill: COLOR_MAP.primary, width: 20, shape: CustomBarShape }),
|
|
12351
|
+
/* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_recharts3.Bar, { dataKey: "high", fill: COLOR_MAP.secondary, width: 20, shape: CustomBarShape }),
|
|
12352
|
+
/* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_recharts3.Bar, { dataKey: "low", fill: COLOR_MAP.warning, width: 20, shape: CustomBarShape })
|
|
12396
12353
|
]
|
|
12397
12354
|
}
|
|
12398
12355
|
) })
|
|
@@ -12413,20 +12370,20 @@ var barChartStyle = tv({
|
|
|
12413
12370
|
|
|
12414
12371
|
// src/components/charts/radarChart.tsx
|
|
12415
12372
|
var import_recharts4 = require("recharts");
|
|
12416
|
-
var
|
|
12417
|
-
var
|
|
12418
|
-
var RadarChart = (0,
|
|
12373
|
+
var import_react41 = require("react");
|
|
12374
|
+
var import_jsx_runtime44 = require("react/jsx-runtime");
|
|
12375
|
+
var RadarChart = (0, import_react41.forwardRef)((originalProps, ref) => {
|
|
12419
12376
|
const [props, variantProps] = mapPropsVariants(originalProps, radarChartStyle.variantKeys);
|
|
12420
12377
|
const { data, label, classNames } = { ...props, ...variantProps };
|
|
12421
|
-
const slots = (0,
|
|
12422
|
-
const maxFullMark = (0,
|
|
12378
|
+
const slots = (0, import_react41.useMemo)(() => radarChartStyle({ ...variantProps }), [variantProps]);
|
|
12379
|
+
const maxFullMark = (0, import_react41.useMemo)(() => {
|
|
12423
12380
|
if (!data || data.length === 0) return 100;
|
|
12424
12381
|
return Math.max(...data.map((item) => item.fullMark || 100));
|
|
12425
12382
|
}, [data]);
|
|
12426
|
-
return /* @__PURE__ */ (0,
|
|
12427
|
-
/* @__PURE__ */ (0,
|
|
12428
|
-
/* @__PURE__ */ (0,
|
|
12429
|
-
/* @__PURE__ */ (0,
|
|
12383
|
+
return /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { ref, className: slots.base({ class: classNames == null ? void 0 : classNames.base }), children: [
|
|
12384
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_recharts4.ResponsiveContainer, { width: 580, height: 330, children: /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(import_recharts4.RadarChart, { data, outerRadius: "80%", children: [
|
|
12385
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_recharts4.PolarGrid, { stroke: "#DFE2E7", strokeWidth: 1.75 }),
|
|
12386
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
|
|
12430
12387
|
import_recharts4.PolarAngleAxis,
|
|
12431
12388
|
{
|
|
12432
12389
|
dataKey: "name",
|
|
@@ -12435,8 +12392,8 @@ var RadarChart = (0, import_react40.forwardRef)((originalProps, ref) => {
|
|
|
12435
12392
|
tickSize: 15
|
|
12436
12393
|
}
|
|
12437
12394
|
),
|
|
12438
|
-
/* @__PURE__ */ (0,
|
|
12439
|
-
/* @__PURE__ */ (0,
|
|
12395
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_recharts4.PolarRadiusAxis, { domain: [0, maxFullMark], tick: false, tickCount: 6, axisLine: false }),
|
|
12396
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
|
|
12440
12397
|
import_recharts4.Radar,
|
|
12441
12398
|
{
|
|
12442
12399
|
name: label,
|
|
@@ -12449,7 +12406,7 @@ var RadarChart = (0, import_react40.forwardRef)((originalProps, ref) => {
|
|
|
12449
12406
|
}
|
|
12450
12407
|
)
|
|
12451
12408
|
] }) }),
|
|
12452
|
-
label && /* @__PURE__ */ (0,
|
|
12409
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("p", { className: slots.label({ class: classNames == null ? void 0 : classNames.label }), children: label })
|
|
12453
12410
|
] });
|
|
12454
12411
|
});
|
|
12455
12412
|
RadarChart.displayName = "RadarChart";
|
|
@@ -12479,6 +12436,7 @@ var radarChartStyle = tv({
|
|
|
12479
12436
|
Chip,
|
|
12480
12437
|
CircularProgress,
|
|
12481
12438
|
DatePicker,
|
|
12439
|
+
Day,
|
|
12482
12440
|
DefinitionTable,
|
|
12483
12441
|
Drawer,
|
|
12484
12442
|
FileUpload,
|