@deepnoid/ui 0.1.29 → 0.1.31
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 +183 -173
- package/dist/chunk-62X5AX5B.mjs +297 -0
- package/dist/chunk-6PN3DGOE.mjs +77 -0
- package/dist/{chunk-EHRFXDSN.mjs → chunk-AIIMJZ7L.mjs} +72 -42
- package/dist/{chunk-3KVZDFMV.mjs → chunk-BCMVEGJG.mjs} +3 -3
- package/dist/{chunk-QJJKJYNR.mjs → chunk-BFOK4HVC.mjs} +2 -2
- package/dist/{chunk-KXA73VTJ.mjs → chunk-CVQM3T2X.mjs} +4 -4
- package/dist/{chunk-RCJOJPRS.mjs → chunk-EBRCE7XY.mjs} +40 -30
- package/dist/{chunk-III2QUWF.mjs → chunk-G67WUZO3.mjs} +1 -1
- package/dist/{chunk-BB7MFKNQ.mjs → chunk-IBI3OVQI.mjs} +1 -1
- package/dist/{chunk-LR3SWRB4.mjs → chunk-IC25OKBJ.mjs} +5 -5
- package/dist/{chunk-KLUC2BV6.mjs → chunk-IEJRE6LT.mjs} +10 -7
- package/dist/{chunk-ECMBAKSJ.mjs → chunk-K7V4VE7R.mjs} +5 -5
- package/dist/chunk-LWRK5TPZ.mjs +80 -0
- package/dist/chunk-MZ76AA76.mjs +1 -0
- package/dist/{chunk-X4F7JYBA.mjs → chunk-NFQMXW4Z.mjs} +36 -14
- package/dist/chunk-P7YYNA6L.mjs +67 -0
- package/dist/components/backdrop/backdrop.mjs +2 -2
- package/dist/components/backdrop/index.mjs +2 -2
- package/dist/components/breadcrumb/breadcrumb.mjs +5 -5
- package/dist/components/breadcrumb/index.mjs +5 -5
- package/dist/components/button/button.mjs +2 -2
- package/dist/components/button/icon-button.mjs +2 -2
- package/dist/components/button/index.mjs +4 -4
- package/dist/components/button/text-button.mjs +2 -2
- package/dist/components/checkbox/checkbox.mjs +2 -2
- package/dist/components/checkbox/index.mjs +2 -2
- package/dist/components/chip/chip.mjs +2 -2
- package/dist/components/chip/index.mjs +2 -2
- package/dist/components/dateTimePicker/calendar.mjs +2 -2
- package/dist/components/dateTimePicker/dateTimePicker.mjs +6 -6
- package/dist/components/dateTimePicker/index.mjs +6 -6
- package/dist/components/dateTimePicker/timePicker.mjs +4 -4
- package/dist/components/fileUpload/fileUpload.js +62 -39
- package/dist/components/fileUpload/fileUpload.mjs +6 -6
- package/dist/components/fileUpload/index.js +62 -39
- package/dist/components/fileUpload/index.mjs +6 -6
- package/dist/components/input/index.js +62 -39
- package/dist/components/input/index.mjs +2 -2
- package/dist/components/input/input.d.mts +21 -14
- package/dist/components/input/input.d.ts +21 -14
- package/dist/components/input/input.js +62 -39
- package/dist/components/input/input.mjs +2 -2
- package/dist/components/list/index.mjs +3 -3
- package/dist/components/list/list.mjs +2 -2
- package/dist/components/list/listItem.mjs +2 -2
- package/dist/components/modal/index.mjs +6 -6
- package/dist/components/modal/modal.mjs +6 -6
- package/dist/components/pagination/index.js +62 -39
- package/dist/components/pagination/index.mjs +3 -3
- package/dist/components/pagination/pagination.js +62 -39
- package/dist/components/pagination/pagination.mjs +3 -3
- package/dist/components/radio/index.mjs +2 -2
- package/dist/components/radio/radio.mjs +2 -2
- package/dist/components/select/index.js +7 -4
- package/dist/components/select/index.mjs +2 -2
- package/dist/components/select/select.d.mts +9 -0
- package/dist/components/select/select.d.ts +9 -0
- package/dist/components/select/select.js +7 -4
- package/dist/components/select/select.mjs +2 -2
- package/dist/components/skeleton/index.d.mts +2 -0
- package/dist/components/skeleton/index.d.ts +2 -0
- package/dist/components/skeleton/index.js +141 -0
- package/dist/components/skeleton/index.mjs +10 -0
- package/dist/components/skeleton/skeleton.d.mts +14 -0
- package/dist/components/skeleton/skeleton.d.ts +14 -0
- package/dist/components/skeleton/skeleton.js +135 -0
- package/dist/components/skeleton/skeleton.mjs +9 -0
- package/dist/components/table/index.js +748 -646
- package/dist/components/table/index.mjs +11 -9
- package/dist/components/table/table-body.d.mts +6 -4
- package/dist/components/table/table-body.d.ts +6 -4
- package/dist/components/table/table-body.js +115 -63
- package/dist/components/table/table-body.mjs +5 -3
- package/dist/components/table/table-head.d.mts +3 -1
- package/dist/components/table/table-head.d.ts +3 -1
- package/dist/components/table/table-head.js +107 -21
- package/dist/components/table/table-head.mjs +5 -3
- package/dist/components/table/table.d.mts +3 -1
- package/dist/components/table/table.d.ts +3 -1
- package/dist/components/table/table.js +739 -637
- package/dist/components/table/table.mjs +9 -7
- package/dist/components/tabs/index.mjs +2 -2
- package/dist/components/tabs/tabs.mjs +2 -2
- package/dist/components/textarea/index.js +255 -138
- package/dist/components/textarea/index.mjs +2 -1
- package/dist/components/textarea/textarea.d.mts +157 -150
- package/dist/components/textarea/textarea.d.ts +157 -150
- package/dist/components/textarea/textarea.js +255 -138
- package/dist/components/textarea/textarea.mjs +2 -1
- package/dist/components/toast/index.mjs +3 -3
- package/dist/components/toast/toast.mjs +2 -2
- package/dist/components/toast/use-toast.mjs +3 -3
- package/dist/components/tooltip/index.mjs +2 -2
- package/dist/components/tooltip/tooltip.mjs +2 -2
- package/dist/components/tree/index.js +33 -11
- package/dist/components/tree/index.mjs +2 -2
- package/dist/components/tree/tree.d.mts +10 -8
- package/dist/components/tree/tree.d.ts +10 -8
- package/dist/components/tree/tree.js +33 -11
- package/dist/components/tree/tree.mjs +2 -2
- package/dist/index.d.mts +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +799 -593
- package/dist/index.mjs +52 -47
- package/package.json +1 -1
- package/dist/chunk-26MNALVL.mjs +0 -47
- package/dist/chunk-A5KQHWS3.mjs +0 -94
- package/dist/chunk-BKE6QF6W.mjs +0 -209
- package/dist/{chunk-SSMMWMQC.mjs → chunk-2YMAKIZ6.mjs} +3 -3
- package/dist/{chunk-6K3E5BVO.mjs → chunk-7TAGGLNY.mjs} +3 -3
- package/dist/{chunk-X6D7C7QZ.mjs → chunk-A7RU3FU5.mjs} +3 -3
- package/dist/{chunk-YLRYHUTW.mjs → chunk-D6QI3DJG.mjs} +3 -3
- package/dist/{chunk-UFVQPPPW.mjs → chunk-HIVPDIEP.mjs} +3 -3
- package/dist/{chunk-P5QCU457.mjs → chunk-LL6F3WDX.mjs} +3 -3
- package/dist/{chunk-7W2ZI2DD.mjs → chunk-MEY4IL7D.mjs} +3 -3
- package/dist/{chunk-33LANVZV.mjs → chunk-QIRL6HY6.mjs} +3 -3
- package/dist/{chunk-W45H2ZMW.mjs → chunk-RT3S3VVJ.mjs} +3 -3
- package/dist/{chunk-7J3KVOTS.mjs → chunk-UB4YBFOT.mjs} +3 -3
- package/dist/{chunk-2PKM7SLZ.mjs → chunk-WFMFC7R6.mjs} +3 -3
- package/dist/{chunk-Y6XQTWB5.mjs → chunk-WLNLVX7Q.mjs} +3 -3
- package/dist/{chunk-IL5ENWCR.mjs → chunk-Z2537DF6.mjs} +3 -3
package/dist/index.js
CHANGED
|
@@ -122,6 +122,7 @@ __export(index_exports, {
|
|
|
122
122
|
Radio: () => radio_default,
|
|
123
123
|
ScrollArea: () => scrollArea_default,
|
|
124
124
|
Select: () => select_default,
|
|
125
|
+
Skeleton: () => skeleton_default,
|
|
125
126
|
Switch: () => switch_default,
|
|
126
127
|
Table: () => table_default,
|
|
127
128
|
Tabs: () => tabs_default,
|
|
@@ -5868,7 +5869,7 @@ var breadcrumbStyle = tv({
|
|
|
5868
5869
|
});
|
|
5869
5870
|
|
|
5870
5871
|
// src/components/input/input.tsx
|
|
5871
|
-
var import_react9 =
|
|
5872
|
+
var import_react9 = require("react");
|
|
5872
5873
|
var import_jsx_runtime11 = require("react/jsx-runtime");
|
|
5873
5874
|
var Input = (0, import_react9.forwardRef)((originalProps, ref) => {
|
|
5874
5875
|
const [props, variantProps] = mapPropsVariants(originalProps, inputStyle.variantKeys);
|
|
@@ -5877,19 +5878,22 @@ var Input = (0, import_react9.forwardRef)((originalProps, ref) => {
|
|
|
5877
5878
|
const slots = (0, import_react9.useMemo)(() => inputStyle({ ...variantProps }), [variantProps]);
|
|
5878
5879
|
const getContentProps = (0, import_react9.useCallback)(
|
|
5879
5880
|
() => ({
|
|
5880
|
-
className:
|
|
5881
|
+
className: clsx(
|
|
5882
|
+
slots.content({ class: classNames == null ? void 0 : classNames.content }),
|
|
5883
|
+
inputProps.readOnly ? slots.readonly({ class: classNames == null ? void 0 : classNames.readonly }) : ""
|
|
5884
|
+
),
|
|
5881
5885
|
size: originalProps.size
|
|
5882
5886
|
}),
|
|
5883
5887
|
[slots, classNames, originalProps.size]
|
|
5884
5888
|
);
|
|
5885
5889
|
const renderStartContent = () => {
|
|
5886
|
-
if (import_react9.
|
|
5890
|
+
if ((0, import_react9.isValidElement)(startContent)) {
|
|
5887
5891
|
const existingProps = startContent.props;
|
|
5888
5892
|
const mergedProps = {
|
|
5889
5893
|
...getContentProps(),
|
|
5890
5894
|
className: `${getContentProps().className || ""} ${existingProps.className || ""}`.trim()
|
|
5891
5895
|
};
|
|
5892
|
-
return import_react9.
|
|
5896
|
+
return (0, import_react9.cloneElement)(startContent, mergedProps);
|
|
5893
5897
|
} else {
|
|
5894
5898
|
const contentProps = getContentProps();
|
|
5895
5899
|
return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { ...contentProps, children: startContent });
|
|
@@ -5908,13 +5912,13 @@ var Input = (0, import_react9.forwardRef)((originalProps, ref) => {
|
|
|
5908
5912
|
}
|
|
5909
5913
|
);
|
|
5910
5914
|
const renderContentWithIcon = () => {
|
|
5911
|
-
if (import_react9.
|
|
5915
|
+
if ((0, import_react9.isValidElement)(endContent)) {
|
|
5912
5916
|
const existingProps = endContent.props;
|
|
5913
5917
|
const mergedProps = {
|
|
5914
5918
|
...getContentProps(),
|
|
5915
5919
|
className: `${getContentProps().className || ""} ${existingProps.className || ""}`.trim()
|
|
5916
5920
|
};
|
|
5917
|
-
return import_react9.
|
|
5921
|
+
return (0, import_react9.cloneElement)(endContent, mergedProps);
|
|
5918
5922
|
} else if (errorMessage) {
|
|
5919
5923
|
const iconProps = { ...getContentProps(), className: getContentProps().className };
|
|
5920
5924
|
return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { ...iconProps, children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Icon_default, { name: "exclamation-circle", fill: true, size: originalProps.size }) });
|
|
@@ -5949,20 +5953,17 @@ var Input = (0, import_react9.forwardRef)((originalProps, ref) => {
|
|
|
5949
5953
|
{
|
|
5950
5954
|
className: clsx(
|
|
5951
5955
|
slots.inputWrapper({ class: classNames == null ? void 0 : classNames.inputWrapper }),
|
|
5952
|
-
inputProps.readOnly ? slots.
|
|
5956
|
+
inputProps.readOnly ? slots.readonlyWrapper({ class: classNames == null ? void 0 : classNames.readonlyWrapper }) : ""
|
|
5953
5957
|
),
|
|
5954
5958
|
children: [
|
|
5955
5959
|
startContent && renderStartContent(),
|
|
5956
5960
|
/* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
5957
5961
|
"input",
|
|
5958
5962
|
{
|
|
5959
|
-
...inputProps,
|
|
5960
5963
|
ref: ref || inputRef,
|
|
5964
|
+
...inputProps,
|
|
5961
5965
|
readOnly: props.readOnly,
|
|
5962
|
-
className: clsx(
|
|
5963
|
-
slots.input({ class: classNames == null ? void 0 : classNames.input }),
|
|
5964
|
-
inputProps.readOnly ? "!text-body-foreground placeholder:!text-body-foreground" : ""
|
|
5965
|
-
),
|
|
5966
|
+
className: clsx(slots.input({ class: classNames == null ? void 0 : classNames.input })),
|
|
5966
5967
|
size: 0
|
|
5967
5968
|
}
|
|
5968
5969
|
),
|
|
@@ -5970,7 +5971,16 @@ var Input = (0, import_react9.forwardRef)((originalProps, ref) => {
|
|
|
5970
5971
|
]
|
|
5971
5972
|
}
|
|
5972
5973
|
),
|
|
5973
|
-
helperMessage && !errorMessage && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
5974
|
+
helperMessage && !errorMessage && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
5975
|
+
"p",
|
|
5976
|
+
{
|
|
5977
|
+
className: clsx(
|
|
5978
|
+
slots.helperMessage({ class: classNames == null ? void 0 : classNames.helperMessage }),
|
|
5979
|
+
inputProps.readOnly ? slots.readonly({ class: classNames == null ? void 0 : classNames.readonly }) : ""
|
|
5980
|
+
),
|
|
5981
|
+
children: helperMessage
|
|
5982
|
+
}
|
|
5983
|
+
),
|
|
5974
5984
|
errorMessage && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("p", { className: clsx("error", slots.errorMessage({ class: classNames == null ? void 0 : classNames.errorMessage })), children: errorMessage })
|
|
5975
5985
|
] })
|
|
5976
5986
|
]
|
|
@@ -5982,12 +5992,12 @@ var input_default = Input;
|
|
|
5982
5992
|
var inputStyle = tv(
|
|
5983
5993
|
{
|
|
5984
5994
|
slots: {
|
|
5985
|
-
base: ["group/input", "flex select-none"],
|
|
5995
|
+
base: ["group/input", "flex", "select-none"],
|
|
5986
5996
|
vertical: ["flex-col"],
|
|
5987
5997
|
horizon: ["flex-row", "gap-0"],
|
|
5988
5998
|
label: ["flex", "items-center", "font-bold", "text-body-foreground", "min-w-[80px]"],
|
|
5989
5999
|
innerWrapper: ["flex", "flex-col"],
|
|
5990
|
-
inputWrapper: ["flex", "items-center", "duration-200", "group-has-[p.error]/input
|
|
6000
|
+
inputWrapper: ["flex", "items-center", "duration-200", "group-has-[p.error]/input:!bg-danger-soft"],
|
|
5991
6001
|
input: [
|
|
5992
6002
|
"w-full",
|
|
5993
6003
|
"h-full",
|
|
@@ -5996,8 +6006,8 @@ var inputStyle = tv(
|
|
|
5996
6006
|
"placeholder:text-neutral-main",
|
|
5997
6007
|
"outline-none",
|
|
5998
6008
|
"focus:ring-0",
|
|
5999
|
-
"group-has-[:hover]/input
|
|
6000
|
-
"group-has-[:hover]/input:placeholder
|
|
6009
|
+
"group-has-[:hover]/input:!text-neutral-dark",
|
|
6010
|
+
"group-has-[:hover]/input:placeholder:!text-neutral-dark",
|
|
6001
6011
|
"group-has-[:focus]/input:text-neutral-dark",
|
|
6002
6012
|
"group-has-[:focus]/input:placeholder:text-neutral-dark",
|
|
6003
6013
|
"group-has-[p.error]/input:text-danger-main",
|
|
@@ -6013,13 +6023,22 @@ var inputStyle = tv(
|
|
|
6013
6023
|
],
|
|
6014
6024
|
helperMessage: ["text-neutral-main", "group-has-[:hover]/input:text-neutral-dark"],
|
|
6015
6025
|
errorMessage: ["text-danger-main"],
|
|
6016
|
-
|
|
6026
|
+
readonlyWrapper: [
|
|
6027
|
+
"pointer-events-none",
|
|
6028
|
+
"!text-body-foreground",
|
|
6029
|
+
"placeholder:!text-body-foreground",
|
|
6030
|
+
"group-has-[p.error]/input:!text-danger-main",
|
|
6031
|
+
"group-has-[p.error]/input:placeholder:!text-danger-main",
|
|
6032
|
+
"[&>input]:!text-body-foreground",
|
|
6033
|
+
"[&>input]:placeholder:!text-body-foreground"
|
|
6034
|
+
],
|
|
6035
|
+
readonly: []
|
|
6017
6036
|
},
|
|
6018
6037
|
variants: {
|
|
6019
6038
|
variant: {
|
|
6020
6039
|
solid: {
|
|
6021
6040
|
inputWrapper: ["border-transparent", "bg-trans-soft"],
|
|
6022
|
-
|
|
6041
|
+
readonlyWrapper: ["!bg-trans-light"]
|
|
6023
6042
|
},
|
|
6024
6043
|
outline: {
|
|
6025
6044
|
inputWrapper: [
|
|
@@ -6028,7 +6047,7 @@ var inputStyle = tv(
|
|
|
6028
6047
|
"group-has-[:focus]/input:bg-body-background",
|
|
6029
6048
|
"group-has-[p.error]/input:border-danger-main"
|
|
6030
6049
|
],
|
|
6031
|
-
|
|
6050
|
+
readonlyWrapper: ["!bg-trans-soft"]
|
|
6032
6051
|
},
|
|
6033
6052
|
underline: {
|
|
6034
6053
|
inputWrapper: [
|
|
@@ -6038,30 +6057,31 @@ var inputStyle = tv(
|
|
|
6038
6057
|
"group-has-[:focus]/input:bg-body-background",
|
|
6039
6058
|
"group-has-[p.error]/input:border-danger-main"
|
|
6040
6059
|
],
|
|
6041
|
-
|
|
6060
|
+
readonlyWrapper: ["!bg-trans-soft"]
|
|
6042
6061
|
}
|
|
6043
6062
|
},
|
|
6044
6063
|
color: {
|
|
6045
6064
|
primary: {
|
|
6046
6065
|
content: [
|
|
6047
|
-
"group-has-[:focus]/input
|
|
6048
|
-
"
|
|
6066
|
+
"group-has-[:focus]/input:!text-primary-main",
|
|
6067
|
+
"group-has-[p.error]:not(input:focus):hover/input:!text-primary-main"
|
|
6049
6068
|
],
|
|
6050
6069
|
helperMessage: [
|
|
6051
|
-
"group-has-[:focus]/input
|
|
6052
|
-
"group-has-[:focus:hover]/input
|
|
6053
|
-
"group-has-[:focus]/input:hover
|
|
6054
|
-
]
|
|
6070
|
+
"group-has-[:focus]/input:!text-primary-main",
|
|
6071
|
+
"group-has-[:focus:hover]/input:!text-primary-main",
|
|
6072
|
+
"group-has-[:focus]/input:hover:!text-primary-main"
|
|
6073
|
+
],
|
|
6074
|
+
readonly: ["!text-primary-main"]
|
|
6055
6075
|
},
|
|
6056
6076
|
secondary: {
|
|
6057
6077
|
content: [
|
|
6058
|
-
"group-has-[:focus]/input
|
|
6059
|
-
"
|
|
6078
|
+
"group-has-[:focus]/input:!text-secondary-main",
|
|
6079
|
+
"group-has-[p.error]:not(input:focus):hover/input:!text-secondary-main"
|
|
6060
6080
|
],
|
|
6061
6081
|
helperMessage: [
|
|
6062
|
-
"group-has-[:focus]/input
|
|
6063
|
-
"group-has-[:focus:hover]/input
|
|
6064
|
-
"group-has-[:focus]/input:hover
|
|
6082
|
+
"group-has-[:focus]/input:!text-secondary-main",
|
|
6083
|
+
"group-has-[:focus:hover]/input:!text-secondary-main",
|
|
6084
|
+
"group-has-[:focus]/input:hover:!text-secondary-main"
|
|
6065
6085
|
]
|
|
6066
6086
|
}
|
|
6067
6087
|
},
|
|
@@ -6112,14 +6132,14 @@ var inputStyle = tv(
|
|
|
6112
6132
|
},
|
|
6113
6133
|
disabled: {
|
|
6114
6134
|
true: {
|
|
6115
|
-
inputWrapper: ["!bg-neutral-soft", "pointer-events-none", "
|
|
6135
|
+
inputWrapper: ["!bg-neutral-soft", "pointer-events-none", "group-has-[p.error]/input:!text-danger-light"],
|
|
6116
6136
|
input: [
|
|
6117
|
-
"text-neutral-light",
|
|
6118
|
-
"placeholder
|
|
6119
|
-
"group-has-[p.error]/input
|
|
6120
|
-
"group-has-[p.error]/input:placeholder
|
|
6137
|
+
"!text-neutral-light",
|
|
6138
|
+
"placeholder:!text-neutral-light",
|
|
6139
|
+
"group-has-[p.error]/input:!text-danger-light",
|
|
6140
|
+
"group-has-[p.error]/input:placeholder:!text-danger-light"
|
|
6121
6141
|
],
|
|
6122
|
-
content: ["text-neutral-light", "group-has-[p.error]/input:text-danger-light"],
|
|
6142
|
+
content: ["!text-neutral-light", "group-has-[p.error]/input:text-danger-light"],
|
|
6123
6143
|
helperMessage: ["!text-neutral-light"],
|
|
6124
6144
|
errorMessage: ["!text-danger-light"]
|
|
6125
6145
|
}
|
|
@@ -6186,7 +6206,11 @@ var inputStyle = tv(
|
|
|
6186
6206
|
disabled: true,
|
|
6187
6207
|
variant: ["outline", "underline"],
|
|
6188
6208
|
class: {
|
|
6189
|
-
inputWrapper: ["!bg-body-background", "group-has-[p.error]/input
|
|
6209
|
+
inputWrapper: ["!bg-body-background", "group-has-[p.error]/input:!border-danger-light"],
|
|
6210
|
+
content: [
|
|
6211
|
+
"group-has-[p.error]/input:!text-danger-light",
|
|
6212
|
+
"group-has-[p.error]/input:placeholder:!text-danger-light"
|
|
6213
|
+
]
|
|
6190
6214
|
}
|
|
6191
6215
|
}
|
|
6192
6216
|
],
|
|
@@ -6417,205 +6441,282 @@ var import_react11 = require("react");
|
|
|
6417
6441
|
var import_tailwind_variants11 = require("tailwind-variants");
|
|
6418
6442
|
var import_jsx_runtime13 = require("react/jsx-runtime");
|
|
6419
6443
|
var Textarea = (0, import_react11.forwardRef)((originalProps, ref) => {
|
|
6444
|
+
var _a, _b;
|
|
6420
6445
|
const [props, variantProps] = mapPropsVariants(originalProps, textareaStyle.variantKeys);
|
|
6421
|
-
const { classNames, label, errorMessage, ...textareaProps } = props;
|
|
6422
|
-
const
|
|
6423
|
-
const
|
|
6424
|
-
|
|
6425
|
-
|
|
6426
|
-
|
|
6427
|
-
|
|
6428
|
-
|
|
6429
|
-
|
|
6430
|
-
|
|
6431
|
-
|
|
6432
|
-
|
|
6433
|
-
|
|
6434
|
-
|
|
6435
|
-
|
|
6436
|
-
|
|
6437
|
-
|
|
6438
|
-
}
|
|
6439
|
-
[
|
|
6440
|
-
);
|
|
6441
|
-
const getTextareaWrapperProps = (0, import_react11.useCallback)(
|
|
6442
|
-
() => ({
|
|
6443
|
-
className: slots.textareaWrapper({ class: classNames == null ? void 0 : classNames.textareaWrapper })
|
|
6444
|
-
}),
|
|
6445
|
-
[slots, classNames]
|
|
6446
|
-
);
|
|
6447
|
-
const getTextareaProps = (0, import_react11.useCallback)(
|
|
6448
|
-
() => ({
|
|
6449
|
-
...textareaProps,
|
|
6450
|
-
ref,
|
|
6451
|
-
className: slots.textarea({ class: classNames == null ? void 0 : classNames.textarea }),
|
|
6452
|
-
disabled: originalProps.isDisabled,
|
|
6453
|
-
required: originalProps.isRequired,
|
|
6454
|
-
size: 0
|
|
6455
|
-
}),
|
|
6456
|
-
[textareaProps, ref, slots, classNames == null ? void 0 : classNames.textarea, originalProps.isDisabled, originalProps.isRequired]
|
|
6446
|
+
const { classNames, label, helperMessage, errorMessage, ...textareaProps } = props;
|
|
6447
|
+
const [length, setLength] = (0, import_react11.useState)(((_b = (_a = originalProps.value) == null ? void 0 : _a.toString()) != null ? _b : "").length);
|
|
6448
|
+
const innerRef = (0, import_react11.useRef)(null);
|
|
6449
|
+
(0, import_react11.useImperativeHandle)(ref, () => innerRef.current);
|
|
6450
|
+
const autoResize = (0, import_react11.useCallback)(() => {
|
|
6451
|
+
const el = innerRef.current;
|
|
6452
|
+
if (el) {
|
|
6453
|
+
el.style.height = "auto";
|
|
6454
|
+
el.style.height = el.scrollHeight + "px";
|
|
6455
|
+
}
|
|
6456
|
+
}, []);
|
|
6457
|
+
const handleChange = (0, import_react11.useCallback)(
|
|
6458
|
+
(e) => {
|
|
6459
|
+
var _a2;
|
|
6460
|
+
setLength(e.target.value.length);
|
|
6461
|
+
(_a2 = originalProps.onChange) == null ? void 0 : _a2.call(originalProps, e);
|
|
6462
|
+
autoResize();
|
|
6463
|
+
},
|
|
6464
|
+
[originalProps, autoResize]
|
|
6457
6465
|
);
|
|
6458
|
-
|
|
6459
|
-
()
|
|
6460
|
-
|
|
6461
|
-
|
|
6462
|
-
|
|
6466
|
+
(0, import_react11.useEffect)(() => {
|
|
6467
|
+
autoResize();
|
|
6468
|
+
}, [originalProps.value, autoResize]);
|
|
6469
|
+
const slots = (0, import_react11.useMemo)(() => textareaStyle({ ...variantProps }), [variantProps]);
|
|
6470
|
+
return /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
|
|
6471
|
+
"div",
|
|
6472
|
+
{
|
|
6473
|
+
className: clsx(
|
|
6474
|
+
slots.base({ class: classNames == null ? void 0 : classNames.base }),
|
|
6475
|
+
variantProps.direction === "horizon" ? slots.horizon({ class: classNames == null ? void 0 : classNames.horizon }) : slots.vertical({ class: classNames == null ? void 0 : classNames.vertical })
|
|
6476
|
+
),
|
|
6477
|
+
children: [
|
|
6478
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("label", { className: slots.label({ class: classNames == null ? void 0 : classNames.label }), children: label }),
|
|
6479
|
+
/* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
|
|
6480
|
+
"div",
|
|
6481
|
+
{
|
|
6482
|
+
className: clsx(
|
|
6483
|
+
slots.wrapper({ class: classNames == null ? void 0 : classNames.wrapper }),
|
|
6484
|
+
textareaProps.readOnly ? slots.readonlyWrapper({ class: classNames == null ? void 0 : classNames.readonlyWrapper }) : ""
|
|
6485
|
+
),
|
|
6486
|
+
children: [
|
|
6487
|
+
/* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
|
|
6488
|
+
"textarea",
|
|
6489
|
+
{
|
|
6490
|
+
ref: innerRef,
|
|
6491
|
+
...textareaProps,
|
|
6492
|
+
readOnly: props.readOnly,
|
|
6493
|
+
onChange: handleChange,
|
|
6494
|
+
className: slots.textarea({ class: classNames == null ? void 0 : classNames.textarea })
|
|
6495
|
+
}
|
|
6496
|
+
),
|
|
6497
|
+
/* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("div", { className: "flex justify-between", children: [
|
|
6498
|
+
helperMessage && !errorMessage && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
|
|
6499
|
+
"p",
|
|
6500
|
+
{
|
|
6501
|
+
className: clsx(
|
|
6502
|
+
slots.helperMessage({ class: classNames == null ? void 0 : classNames.helperMessage }),
|
|
6503
|
+
textareaProps.readOnly ? slots.readonly({ class: classNames == null ? void 0 : classNames.readonly }) : ""
|
|
6504
|
+
),
|
|
6505
|
+
children: helperMessage
|
|
6506
|
+
}
|
|
6507
|
+
),
|
|
6508
|
+
errorMessage && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("p", { className: clsx("error", slots.errorMessage({ class: classNames == null ? void 0 : classNames.errorMessage })), children: errorMessage }),
|
|
6509
|
+
textareaProps.maxLength !== void 0 && /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
|
|
6510
|
+
"p",
|
|
6511
|
+
{
|
|
6512
|
+
className: clsx(
|
|
6513
|
+
slots.helperMessage({ class: classNames == null ? void 0 : classNames.helperMessage }),
|
|
6514
|
+
textareaProps.readOnly ? slots.readonly({ class: classNames == null ? void 0 : classNames.readonly }) : ""
|
|
6515
|
+
),
|
|
6516
|
+
children: [
|
|
6517
|
+
length,
|
|
6518
|
+
" / ",
|
|
6519
|
+
textareaProps.maxLength
|
|
6520
|
+
]
|
|
6521
|
+
}
|
|
6522
|
+
)
|
|
6523
|
+
] })
|
|
6524
|
+
]
|
|
6525
|
+
}
|
|
6526
|
+
)
|
|
6527
|
+
]
|
|
6528
|
+
}
|
|
6463
6529
|
);
|
|
6464
|
-
return /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("div", { ...getBaseProps(), children: [
|
|
6465
|
-
props.label && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("label", { ...getLabelProps(), children: props.label }),
|
|
6466
|
-
/* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("div", { ...getInnerWrapperProps(), children: [
|
|
6467
|
-
/* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { ...getTextareaWrapperProps(), children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("textarea", { ...getTextareaProps() }) }),
|
|
6468
|
-
props.errorMessage && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("p", { ...getErrorMessageProps(), children: props.errorMessage })
|
|
6469
|
-
] })
|
|
6470
|
-
] });
|
|
6471
6530
|
});
|
|
6472
6531
|
Textarea.displayName = "Textarea";
|
|
6473
6532
|
var textarea_default = Textarea;
|
|
6474
6533
|
var textareaStyle = (0, import_tailwind_variants11.tv)({
|
|
6475
6534
|
slots: {
|
|
6476
|
-
base: ["group/textarea", "flex", "
|
|
6477
|
-
|
|
6478
|
-
|
|
6479
|
-
|
|
6480
|
-
|
|
6481
|
-
"bg-transparent",
|
|
6482
|
-
"border-neutral-main",
|
|
6483
|
-
"group-has-[p]/textarea:border-danger-main",
|
|
6484
|
-
"group-has-[p]/textarea:bg-danger-soft",
|
|
6485
|
-
"transition duration-200"
|
|
6486
|
-
],
|
|
6535
|
+
base: ["group/textarea", "flex", "select-none"],
|
|
6536
|
+
vertical: ["flex-col"],
|
|
6537
|
+
horizon: ["flex-row", "gap-0"],
|
|
6538
|
+
label: ["flex", "items-center", "font-bold", "text-body-foreground", "min-w-[80px]"],
|
|
6539
|
+
wrapper: ["flex", "flex-col"],
|
|
6487
6540
|
textarea: [
|
|
6488
6541
|
"w-full",
|
|
6542
|
+
"h-full",
|
|
6489
6543
|
"bg-transparent",
|
|
6490
|
-
"
|
|
6491
|
-
"
|
|
6492
|
-
"
|
|
6544
|
+
"text-neutral-main",
|
|
6545
|
+
"placeholder:!text-neutral-main",
|
|
6546
|
+
"outline-none",
|
|
6547
|
+
"resize-none",
|
|
6548
|
+
"focus:ring-0",
|
|
6549
|
+
"group-has-[:hover]/textarea:!text-neutral-dark",
|
|
6550
|
+
"group-has-[:hover]/textarea:placeholder:!text-neutral-dark",
|
|
6551
|
+
"group-has-[:focus]/textarea:!text-neutral-dark",
|
|
6552
|
+
"group-has-[:focus]/textarea:placeholder:!text-neutral-dark",
|
|
6553
|
+
"group-has-[p.error]/textarea:bg-danger-soft",
|
|
6554
|
+
"group-has-[p.error]/textarea:text-danger-main",
|
|
6555
|
+
"group-has-[p.error]/textarea:placeholder:!text-danger-main"
|
|
6493
6556
|
],
|
|
6494
|
-
|
|
6557
|
+
helperMessage: [
|
|
6558
|
+
"text-neutral-main",
|
|
6559
|
+
"group-has-[:hover]/textarea:text-neutral-dark",
|
|
6560
|
+
"group-has-[p.error]/textarea:text-danger-main"
|
|
6561
|
+
],
|
|
6562
|
+
errorMessage: ["text-danger-main"],
|
|
6563
|
+
readonlyWrapper: [
|
|
6564
|
+
"pointer-events-none",
|
|
6565
|
+
"[&>textarea]:!text-body-foreground",
|
|
6566
|
+
"[&>textarea]:placeholder:!text-body-foreground"
|
|
6567
|
+
],
|
|
6568
|
+
readonly: []
|
|
6495
6569
|
},
|
|
6496
6570
|
variants: {
|
|
6497
6571
|
variant: {
|
|
6498
6572
|
solid: {
|
|
6499
|
-
|
|
6573
|
+
textarea: ["border-transparent", "bg-trans-soft"],
|
|
6574
|
+
readonlyWrapper: ["[&>textarea]:!bg-trans-light"]
|
|
6500
6575
|
},
|
|
6501
|
-
|
|
6502
|
-
|
|
6576
|
+
outline: {
|
|
6577
|
+
textarea: [
|
|
6578
|
+
"border-neutral-light",
|
|
6579
|
+
"group-has-[:hover]/textarea:bg-trans-soft",
|
|
6580
|
+
"group-has-[:focus]/textarea:bg-body-background",
|
|
6581
|
+
"group-has-[p.error]/textarea:border-danger-main"
|
|
6582
|
+
],
|
|
6583
|
+
readonlyWrapper: ["[&>textarea]:!bg-trans-soft"]
|
|
6503
6584
|
}
|
|
6504
6585
|
},
|
|
6505
6586
|
color: {
|
|
6506
|
-
primary: {
|
|
6507
|
-
|
|
6587
|
+
primary: {
|
|
6588
|
+
helperMessage: [
|
|
6589
|
+
"group-has-[:focus]/textarea:!text-primary-main",
|
|
6590
|
+
"group-has-[:focus]/textarea:!text-primary-main",
|
|
6591
|
+
"group-has-[:focus]/textarea:hover:!text-primary-main",
|
|
6592
|
+
"group-has-[:focus:hover]/textarea:!text-primary-main",
|
|
6593
|
+
"group-has-[p.error]:not(textarea:focus):hover/textarea:!text-primary-main"
|
|
6594
|
+
],
|
|
6595
|
+
readonly: ["!text-primary-main"]
|
|
6596
|
+
},
|
|
6597
|
+
secondary: {
|
|
6598
|
+
helperMessage: [
|
|
6599
|
+
"group-has-[:focus]/textarea:text-secondary-main",
|
|
6600
|
+
"group-has-[:focus]/textarea:text-secondary-main",
|
|
6601
|
+
"group-has-[:focus]/textarea:hover:text-secondary-main",
|
|
6602
|
+
"group-has-[:focus:hover]/textarea:text-secondary-main",
|
|
6603
|
+
"group-has-[p.error]:not(textarea:focus):hover/textarea:!text-secondary-main"
|
|
6604
|
+
],
|
|
6605
|
+
readonly: ["!text-secondary-main"]
|
|
6606
|
+
}
|
|
6508
6607
|
},
|
|
6509
6608
|
size: {
|
|
6510
6609
|
sm: {
|
|
6511
|
-
base: "gap-[
|
|
6512
|
-
|
|
6513
|
-
|
|
6514
|
-
|
|
6515
|
-
|
|
6610
|
+
base: ["text-sm", "gap-[4px]"],
|
|
6611
|
+
label: ["text-sm"],
|
|
6612
|
+
wrapper: ["gap-[4px]"],
|
|
6613
|
+
textarea: ["w-[240px]", "h-[24px]", "rounded-sm", "p-[8px]", "gap-[4px]"],
|
|
6614
|
+
helperMessage: ["text-sm"],
|
|
6615
|
+
errorMessage: ["text-sm"]
|
|
6516
6616
|
},
|
|
6517
6617
|
md: {
|
|
6518
|
-
base: "gap-[
|
|
6519
|
-
|
|
6520
|
-
|
|
6521
|
-
|
|
6522
|
-
|
|
6618
|
+
base: ["text-md", "gap-[6px]"],
|
|
6619
|
+
label: ["text-md"],
|
|
6620
|
+
wrapper: ["gap-[6px]"],
|
|
6621
|
+
textarea: ["w-[240px]", "h-[32px]", "rounded-md", "p-[8px]", "gap-[6px]"],
|
|
6622
|
+
helperMessage: ["text-sm"],
|
|
6623
|
+
errorMessage: ["text-sm"]
|
|
6523
6624
|
},
|
|
6524
6625
|
lg: {
|
|
6525
|
-
base: "gap-[
|
|
6526
|
-
|
|
6527
|
-
|
|
6528
|
-
|
|
6529
|
-
|
|
6626
|
+
base: ["text-lg", "gap-[8px]"],
|
|
6627
|
+
label: ["text-lg"],
|
|
6628
|
+
wrapper: ["gap-[8px]"],
|
|
6629
|
+
textarea: ["w-[240px]", "h-[40px]", "rounded-lg", "p-[10px]", "gap-[8px]"],
|
|
6630
|
+
helperMessage: ["text-md"],
|
|
6631
|
+
errorMessage: ["text-md"]
|
|
6530
6632
|
},
|
|
6531
6633
|
xl: {
|
|
6532
|
-
base: "gap-[10px]",
|
|
6533
|
-
|
|
6534
|
-
|
|
6535
|
-
|
|
6536
|
-
|
|
6537
|
-
|
|
6538
|
-
},
|
|
6539
|
-
radius: {
|
|
6540
|
-
default: {},
|
|
6541
|
-
none: {
|
|
6542
|
-
textareaWrapper: "rounded-none",
|
|
6543
|
-
textarea: "rounded-none"
|
|
6544
|
-
},
|
|
6545
|
-
full: {
|
|
6546
|
-
textareaWrapper: "rounded-full",
|
|
6547
|
-
textarea: "rounded-full"
|
|
6634
|
+
base: ["text-xl", "gap-[10px]"],
|
|
6635
|
+
label: ["text-xl"],
|
|
6636
|
+
wrapper: ["gap-[10px]"],
|
|
6637
|
+
textarea: ["w-[240px]", "h-[50px]", "rounded-lg", "p-[10px]", "gap-[10px]"],
|
|
6638
|
+
helperMessage: ["text-md"],
|
|
6639
|
+
errorMessage: ["text-md"]
|
|
6548
6640
|
}
|
|
6549
6641
|
},
|
|
6550
|
-
|
|
6551
|
-
|
|
6552
|
-
|
|
6553
|
-
textareaWrapper: "w-full",
|
|
6554
|
-
textarea: "w-full"
|
|
6555
|
-
}
|
|
6642
|
+
direction: {
|
|
6643
|
+
vertical: "",
|
|
6644
|
+
horizon: ""
|
|
6556
6645
|
},
|
|
6557
|
-
|
|
6646
|
+
full: {
|
|
6558
6647
|
true: {
|
|
6559
|
-
base: ["
|
|
6560
|
-
|
|
6561
|
-
textarea: ["
|
|
6562
|
-
label: ["text-neutral-light", "pointer-events-none"],
|
|
6563
|
-
errorMessage: "text-danger-light"
|
|
6648
|
+
base: ["w-full"],
|
|
6649
|
+
wrapper: ["flex-1"],
|
|
6650
|
+
textarea: ["w-full"]
|
|
6564
6651
|
}
|
|
6565
6652
|
},
|
|
6566
|
-
|
|
6653
|
+
disabled: {
|
|
6567
6654
|
true: {
|
|
6568
|
-
|
|
6655
|
+
textarea: [
|
|
6656
|
+
"bg-neutral-soft",
|
|
6657
|
+
"pointer-events-none",
|
|
6658
|
+
"text-neutral-light",
|
|
6659
|
+
"placeholder:!text-neutral-light",
|
|
6660
|
+
"group-has-[p.error]/textarea:text-danger-light",
|
|
6661
|
+
"group-has-[p.error]/textarea:border-danger-light",
|
|
6662
|
+
"group-has-[p.error]/textarea:placeholder:!text-danger-light"
|
|
6663
|
+
],
|
|
6664
|
+
helperMessage: ["!text-neutral-light", "group-has-[p.error]/textarea:!text-danger-light"],
|
|
6665
|
+
errorMessage: ["!text-danger-light"]
|
|
6569
6666
|
}
|
|
6570
6667
|
}
|
|
6571
6668
|
},
|
|
6572
|
-
defaultVariants: {
|
|
6573
|
-
variant: "solid",
|
|
6574
|
-
color: "primary",
|
|
6575
|
-
size: "md",
|
|
6576
|
-
fullWidth: false,
|
|
6577
|
-
isDisabled: false,
|
|
6578
|
-
isRequired: false
|
|
6579
|
-
},
|
|
6580
6669
|
compoundVariants: [
|
|
6581
|
-
// variants & color
|
|
6582
6670
|
{
|
|
6583
|
-
variant: "
|
|
6584
|
-
|
|
6671
|
+
variant: "outline",
|
|
6672
|
+
size: "sm",
|
|
6585
6673
|
class: {
|
|
6586
|
-
|
|
6674
|
+
textarea: ["border-sm"]
|
|
6587
6675
|
}
|
|
6588
6676
|
},
|
|
6589
6677
|
{
|
|
6590
|
-
variant: "
|
|
6591
|
-
|
|
6678
|
+
variant: "outline",
|
|
6679
|
+
size: "md",
|
|
6592
6680
|
class: {
|
|
6593
|
-
|
|
6594
|
-
textarea: "focus:bg-secondary-main"
|
|
6681
|
+
textarea: ["border-md"]
|
|
6595
6682
|
}
|
|
6596
6683
|
},
|
|
6597
|
-
// Variants & isDisabled
|
|
6598
6684
|
{
|
|
6599
|
-
variant: "
|
|
6600
|
-
|
|
6685
|
+
variant: "outline",
|
|
6686
|
+
size: "lg",
|
|
6601
6687
|
class: {
|
|
6602
|
-
|
|
6688
|
+
textarea: ["border-lg"]
|
|
6603
6689
|
}
|
|
6604
6690
|
},
|
|
6605
|
-
// isRequired & isDisabled
|
|
6606
6691
|
{
|
|
6607
|
-
|
|
6608
|
-
|
|
6692
|
+
variant: "outline",
|
|
6693
|
+
size: "xl",
|
|
6694
|
+
class: {
|
|
6695
|
+
textarea: ["border-xl"]
|
|
6696
|
+
}
|
|
6697
|
+
},
|
|
6698
|
+
{
|
|
6699
|
+
disabled: true,
|
|
6700
|
+
variant: ["outline"],
|
|
6609
6701
|
class: {
|
|
6610
|
-
|
|
6702
|
+
textarea: ["!bg-body-background", "group-has-[p.error]/input:border-danger-light"]
|
|
6611
6703
|
}
|
|
6612
6704
|
}
|
|
6613
|
-
]
|
|
6705
|
+
],
|
|
6706
|
+
defaultVariants: {
|
|
6707
|
+
variant: "solid",
|
|
6708
|
+
color: "primary",
|
|
6709
|
+
size: "md",
|
|
6710
|
+
direction: "vertical",
|
|
6711
|
+
fullWidth: false,
|
|
6712
|
+
disabled: false,
|
|
6713
|
+
readonly: false
|
|
6714
|
+
}
|
|
6614
6715
|
});
|
|
6615
6716
|
|
|
6616
6717
|
// src/components/table/table.tsx
|
|
6617
|
-
var
|
|
6618
|
-
var
|
|
6718
|
+
var import_react15 = require("react");
|
|
6719
|
+
var import_tailwind_variants16 = require("tailwind-variants");
|
|
6619
6720
|
|
|
6620
6721
|
// src/components/checkbox/checkbox.tsx
|
|
6621
6722
|
var import_react12 = require("react");
|
|
@@ -6824,138 +6925,207 @@ var checkboxStyle = tv({
|
|
|
6824
6925
|
}
|
|
6825
6926
|
});
|
|
6826
6927
|
|
|
6827
|
-
// src/components/
|
|
6928
|
+
// src/components/skeleton/skeleton.tsx
|
|
6929
|
+
var import_tailwind_variants13 = require("tailwind-variants");
|
|
6828
6930
|
var import_jsx_runtime15 = require("react/jsx-runtime");
|
|
6829
|
-
var
|
|
6931
|
+
var Skeleton = ({ color = "primary", className, speed = "normal", rounded = "md" }) => {
|
|
6932
|
+
const speedMap = {
|
|
6933
|
+
fast: "0.7s",
|
|
6934
|
+
normal: "1.2s",
|
|
6935
|
+
slow: "2s"
|
|
6936
|
+
};
|
|
6937
|
+
const slots = skeletonStyle();
|
|
6938
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
6939
|
+
"div",
|
|
6940
|
+
{
|
|
6941
|
+
className: clsx(slots.base({ color, rounded }), className),
|
|
6942
|
+
style: {
|
|
6943
|
+
"--shimmer-duration": speedMap[speed]
|
|
6944
|
+
},
|
|
6945
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("style", { children: `@keyframes shimmer {
|
|
6946
|
+
100% {
|
|
6947
|
+
transform: translateX(100%);
|
|
6948
|
+
}
|
|
6949
|
+
}
|
|
6950
|
+
.skeleton-shimmer::before {
|
|
6951
|
+
animation: shimmer var(--shimmer-duration) infinite linear;
|
|
6952
|
+
}
|
|
6953
|
+
` })
|
|
6954
|
+
}
|
|
6955
|
+
);
|
|
6956
|
+
};
|
|
6957
|
+
Skeleton.displayName = "Skeleton";
|
|
6958
|
+
var skeleton_default = Skeleton;
|
|
6959
|
+
var skeletonStyle = (0, import_tailwind_variants13.tv)({
|
|
6960
|
+
slots: {
|
|
6961
|
+
base: [
|
|
6962
|
+
"relative",
|
|
6963
|
+
"overflow-hidden",
|
|
6964
|
+
"w-full",
|
|
6965
|
+
"h-[18px]",
|
|
6966
|
+
"skeleton-shimmer",
|
|
6967
|
+
"before:absolute",
|
|
6968
|
+
"before:inset-0",
|
|
6969
|
+
"before:-translate-x-full",
|
|
6970
|
+
"before:bg-gradient-to-r",
|
|
6971
|
+
"before:from-transparent",
|
|
6972
|
+
"before:via-white/40",
|
|
6973
|
+
"before:to-transparent",
|
|
6974
|
+
"before:content-['']"
|
|
6975
|
+
]
|
|
6976
|
+
},
|
|
6977
|
+
variants: {
|
|
6978
|
+
color: {
|
|
6979
|
+
primary: { base: "bg-primary-soft" },
|
|
6980
|
+
secondary: { base: "bg-secondary-soft" },
|
|
6981
|
+
neutral: { base: "bg-neutral-soft" }
|
|
6982
|
+
},
|
|
6983
|
+
rounded: {
|
|
6984
|
+
sm: { base: "rounded-sm" },
|
|
6985
|
+
md: { base: "rounded-md" },
|
|
6986
|
+
lg: { base: "rounded-lg" },
|
|
6987
|
+
xl: { base: "rounded-xl" },
|
|
6988
|
+
full: { base: "rounded-full" }
|
|
6989
|
+
}
|
|
6990
|
+
},
|
|
6991
|
+
defaultVariants: {
|
|
6992
|
+
color: "primary",
|
|
6993
|
+
rounded: "md"
|
|
6994
|
+
}
|
|
6995
|
+
});
|
|
6996
|
+
|
|
6997
|
+
// src/components/table/table-head.tsx
|
|
6998
|
+
var import_jsx_runtime16 = require("react/jsx-runtime");
|
|
6999
|
+
var TableHead = ({
|
|
7000
|
+
slots,
|
|
7001
|
+
columns,
|
|
7002
|
+
color,
|
|
7003
|
+
size,
|
|
7004
|
+
rowCheckbox = false,
|
|
7005
|
+
isCheckedAll,
|
|
7006
|
+
isLoading = false,
|
|
7007
|
+
classNames,
|
|
7008
|
+
onCheckAll
|
|
7009
|
+
}) => {
|
|
6830
7010
|
const handleClickCheckAll = (e) => {
|
|
6831
7011
|
e.preventDefault();
|
|
6832
7012
|
onCheckAll(!isCheckedAll);
|
|
6833
7013
|
};
|
|
6834
|
-
const
|
|
7014
|
+
const renderTh = (content, key, column) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
6835
7015
|
"th",
|
|
6836
7016
|
{
|
|
6837
7017
|
className: clsx(slots.th({ class: classNames == null ? void 0 : classNames.th }), column),
|
|
6838
7018
|
style: {
|
|
6839
|
-
width: column.width ? `${column.width}px` : void 0,
|
|
6840
|
-
minWidth: column.minWidth ? `${column.minWidth}px` : void 0,
|
|
6841
|
-
maxWidth: column.maxWidth ? `${column.maxWidth}px` : void 0,
|
|
6842
|
-
height: column.height ? `${column.height}px` : void 0
|
|
7019
|
+
width: (column == null ? void 0 : column.width) ? `${column.width}px` : void 0,
|
|
7020
|
+
minWidth: (column == null ? void 0 : column.minWidth) ? `${column.minWidth}px` : void 0,
|
|
7021
|
+
maxWidth: (column == null ? void 0 : column.maxWidth) ? `${column.maxWidth}px` : void 0,
|
|
7022
|
+
height: (column == null ? void 0 : column.height) ? `${column.height}px` : void 0
|
|
6843
7023
|
},
|
|
6844
|
-
children:
|
|
7024
|
+
children: content
|
|
6845
7025
|
},
|
|
6846
|
-
|
|
6847
|
-
)
|
|
6848
|
-
const
|
|
6849
|
-
|
|
6850
|
-
{
|
|
6851
|
-
|
|
6852
|
-
|
|
6853
|
-
|
|
6854
|
-
|
|
6855
|
-
|
|
6856
|
-
|
|
6857
|
-
|
|
6858
|
-
|
|
7026
|
+
key
|
|
7027
|
+
);
|
|
7028
|
+
const renderSkeletonRow = () => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("thead", { className: slots.thead({ class: classNames == null ? void 0 : classNames.thead }), children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("tr", { className: clsx(slots.tr({ class: classNames == null ? void 0 : classNames.tr }), "[&>th]:border-0"), children: [
|
|
7029
|
+
columns.map((_, idx) => renderTh(/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(skeleton_default, { color, rounded: "lg", speed: "fast" }), `skeleton-${idx}`)),
|
|
7030
|
+
rowCheckbox && renderTh(/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(skeleton_default, { color, rounded: "lg", speed: "fast" }), "checkbox-skeleton")
|
|
7031
|
+
] }) });
|
|
7032
|
+
const renderContentRow = () => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("thead", { className: slots.thead({ class: classNames == null ? void 0 : classNames.thead }), children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("tr", { className: slots.tr({ class: classNames == null ? void 0 : classNames.tr }), children: [
|
|
7033
|
+
columns.map((column, idx) => renderTh(column.headerName, `${column.field}-${idx}`, column)),
|
|
7034
|
+
rowCheckbox && renderTh(
|
|
7035
|
+
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "flex items-center justify-center", onClick: handleClickCheckAll, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
7036
|
+
checkbox_default,
|
|
7037
|
+
{
|
|
7038
|
+
size,
|
|
7039
|
+
checked: isCheckedAll,
|
|
7040
|
+
onChange: (e) => onCheckAll(e.target.checked)
|
|
7041
|
+
}
|
|
7042
|
+
) }),
|
|
7043
|
+
"checkbox"
|
|
7044
|
+
)
|
|
6859
7045
|
] }) });
|
|
7046
|
+
return isLoading ? renderSkeletonRow() : renderContentRow();
|
|
6860
7047
|
};
|
|
6861
7048
|
var table_head_default = TableHead;
|
|
6862
7049
|
|
|
6863
7050
|
// src/components/table/table-body.tsx
|
|
6864
|
-
var
|
|
6865
|
-
var import_jsx_runtime16 = require("react/jsx-runtime");
|
|
6866
|
-
var import_react14 = require("react");
|
|
7051
|
+
var import_jsx_runtime17 = require("react/jsx-runtime");
|
|
6867
7052
|
var TableBody = ({
|
|
6868
7053
|
slots,
|
|
6869
|
-
columns,
|
|
6870
7054
|
rows,
|
|
7055
|
+
columns,
|
|
6871
7056
|
size,
|
|
6872
|
-
|
|
7057
|
+
color,
|
|
7058
|
+
rowCheckbox = false,
|
|
6873
7059
|
checkedRows,
|
|
6874
7060
|
onCheckRow,
|
|
6875
7061
|
onRowClick,
|
|
7062
|
+
isLoading = false,
|
|
6876
7063
|
emptyContent,
|
|
6877
|
-
|
|
7064
|
+
skeletonRow,
|
|
6878
7065
|
classNames,
|
|
6879
7066
|
className
|
|
6880
7067
|
}) => {
|
|
6881
|
-
const
|
|
6882
|
-
|
|
6883
|
-
|
|
6884
|
-
|
|
6885
|
-
|
|
6886
|
-
|
|
6887
|
-
|
|
6888
|
-
|
|
6889
|
-
|
|
6890
|
-
|
|
6891
|
-
|
|
7068
|
+
const getCellStyle = (column) => ({
|
|
7069
|
+
width: column.width ? `${column.width}px` : void 0,
|
|
7070
|
+
minWidth: column.minWidth ? `${column.minWidth}px` : void 0,
|
|
7071
|
+
maxWidth: column.maxWidth ? `${column.maxWidth}px` : void 0,
|
|
7072
|
+
height: column.height ? `${column.height}px` : void 0,
|
|
7073
|
+
textAlign: column.align || "center"
|
|
7074
|
+
});
|
|
7075
|
+
const renderTdSkeleton = (key) => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("td", { className: slots.td({ class: classNames == null ? void 0 : classNames.td }), children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(skeleton_default, { color, className: "h-full w-full", rounded: "lg", speed: "fast" }) }, key);
|
|
7076
|
+
const renderCheckboxCell = (rowIndex) => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("td", { className: clsx(slots.td({ class: classNames == null ? void 0 : classNames.td }), "text-center"), children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
|
|
7077
|
+
checkbox_default,
|
|
7078
|
+
{
|
|
7079
|
+
size,
|
|
7080
|
+
checked: checkedRows.has(rowIndex),
|
|
7081
|
+
onChange: (e) => onCheckRow(rowIndex, e.target.checked)
|
|
7082
|
+
}
|
|
7083
|
+
) });
|
|
7084
|
+
const renderSkeletonRow = (rowIndex) => /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("tr", { className: slots.tr({ class: classNames == null ? void 0 : classNames.tr }), children: [
|
|
7085
|
+
columns.map((_, colIdx) => renderTdSkeleton(`skeleton-${rowIndex}-${colIdx}`)),
|
|
7086
|
+
rowCheckbox && renderTdSkeleton(`skeleton-checkbox-${rowIndex}`)
|
|
7087
|
+
] }, `skeleton-${rowIndex}`);
|
|
7088
|
+
const renderEmptyRow = () => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("tr", { className: slots.tr({ class: classNames == null ? void 0 : classNames.tr }), children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("td", { colSpan: columns.length + (rowCheckbox ? 1 : 0), className: slots.empty({ class: classNames == null ? void 0 : classNames.empty }), children: emptyContent }) });
|
|
7089
|
+
const renderDataRow = (row, rowIndex) => /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("tr", { className: slots.tr({ class: classNames == null ? void 0 : classNames.tr }), onClick: () => onRowClick == null ? void 0 : onRowClick(row), children: [
|
|
7090
|
+
columns.map((column, colIdx) => {
|
|
7091
|
+
var _a;
|
|
6892
7092
|
const value = row[column.field];
|
|
6893
|
-
const formattedValue = column.valueFormatter ?
|
|
6894
|
-
const
|
|
6895
|
-
|
|
6896
|
-
|
|
6897
|
-
value,
|
|
6898
|
-
formattedValue,
|
|
6899
|
-
row
|
|
6900
|
-
}) : formattedValue;
|
|
6901
|
-
const columnStyles = generateColumnStyles(column);
|
|
6902
|
-
return {
|
|
6903
|
-
children,
|
|
6904
|
-
className: clsx(slots.td({ class: classNames == null ? void 0 : classNames.td }), columnStyles),
|
|
6905
|
-
style: {
|
|
6906
|
-
width: column.width ? `${column.width}px` : void 0,
|
|
6907
|
-
minWidth: column.minWidth ? `${column.minWidth}px` : void 0,
|
|
6908
|
-
maxWidth: column.maxWidth ? `${column.maxWidth}px` : void 0,
|
|
6909
|
-
height: column.height ? `${column.height}px` : void 0
|
|
6910
|
-
}
|
|
6911
|
-
};
|
|
6912
|
-
},
|
|
6913
|
-
[classNames == null ? void 0 : classNames.td, generateColumnStyles, slots]
|
|
6914
|
-
);
|
|
6915
|
-
const hasRows = rows.length > 0;
|
|
6916
|
-
const colSpan = (columns.length || 1) + (rowCheckbox ? 1 : 0);
|
|
6917
|
-
return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("tbody", { className: clsx(slots.tbody({ class: classNames == null ? void 0 : classNames.tbody }), className), children: [
|
|
6918
|
-
!isLoading && hasRows && rows.map((row, rowIndex) => {
|
|
6919
|
-
const isRowChecked = checkedRows.has(rowIndex);
|
|
6920
|
-
return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
|
|
6921
|
-
"tr",
|
|
7093
|
+
const formattedValue = ((_a = column.valueFormatter) == null ? void 0 : _a.call(column, { value, field: column.field })) || value;
|
|
7094
|
+
const content = column.renderCell ? column.renderCell({ id: row.id, field: column.field, value, formattedValue, row }) : formattedValue;
|
|
7095
|
+
return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
|
|
7096
|
+
"td",
|
|
6922
7097
|
{
|
|
6923
|
-
className: slots.
|
|
6924
|
-
|
|
6925
|
-
|
|
6926
|
-
children: [
|
|
6927
|
-
columns.map((column) => /* @__PURE__ */ (0, import_react14.createElement)("td", { ...getCellProps(column, row), key: column.field })),
|
|
6928
|
-
rowCheckbox && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("td", { className: slots.td({ class: classNames == null ? void 0 : classNames.td }), children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
6929
|
-
checkbox_default,
|
|
6930
|
-
{
|
|
6931
|
-
size,
|
|
6932
|
-
checked: isRowChecked,
|
|
6933
|
-
onChange: (e) => onCheckRow(rowIndex, e.target.checked)
|
|
6934
|
-
}
|
|
6935
|
-
) }) })
|
|
6936
|
-
]
|
|
7098
|
+
className: clsx(slots.td({ class: classNames == null ? void 0 : classNames.td }), column.className),
|
|
7099
|
+
style: getCellStyle(column),
|
|
7100
|
+
children: content
|
|
6937
7101
|
},
|
|
6938
|
-
rowIndex
|
|
7102
|
+
`${rowIndex}-${colIdx}`
|
|
6939
7103
|
);
|
|
6940
7104
|
}),
|
|
6941
|
-
|
|
6942
|
-
] });
|
|
7105
|
+
rowCheckbox && renderCheckboxCell(rowIndex)
|
|
7106
|
+
] }, rowIndex);
|
|
7107
|
+
const renderRows = () => {
|
|
7108
|
+
if (isLoading) return skeletonRow ? Array.from({ length: skeletonRow }, (_, idx) => renderSkeletonRow(idx)) : /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_jsx_runtime17.Fragment, {});
|
|
7109
|
+
if (!rows.length && emptyContent) return renderEmptyRow();
|
|
7110
|
+
return rows.map((row, index) => renderDataRow(row, index));
|
|
7111
|
+
};
|
|
7112
|
+
return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("tbody", { className: `${slots.tbody({ class: classNames == null ? void 0 : classNames.tbody })} ${className || ""}`, children: renderRows() });
|
|
6943
7113
|
};
|
|
6944
7114
|
var table_body_default = TableBody;
|
|
6945
7115
|
|
|
6946
7116
|
// src/components/pagination/pagination.tsx
|
|
6947
|
-
var
|
|
7117
|
+
var import_react14 = require("react");
|
|
6948
7118
|
|
|
6949
7119
|
// src/components/pagination/usePagination.ts
|
|
6950
|
-
var
|
|
7120
|
+
var import_react13 = require("react");
|
|
6951
7121
|
var usePagination = ({ currentPage, totalPage, groupSize, handleChangePage }) => {
|
|
6952
|
-
const startPage = (0,
|
|
6953
|
-
const endPage = (0,
|
|
6954
|
-
const pageList = (0,
|
|
7122
|
+
const startPage = (0, import_react13.useMemo)(() => Math.floor((currentPage - 1) / groupSize) * groupSize + 1, [currentPage, groupSize]);
|
|
7123
|
+
const endPage = (0, import_react13.useMemo)(() => Math.min(startPage + groupSize - 1, totalPage), [startPage, groupSize, totalPage]);
|
|
7124
|
+
const pageList = (0, import_react13.useMemo)(
|
|
6955
7125
|
() => Array.from({ length: endPage - startPage + 1 }, (_, i) => startPage + i),
|
|
6956
7126
|
[startPage, endPage]
|
|
6957
7127
|
);
|
|
6958
|
-
const handleClickMovePage = (0,
|
|
7128
|
+
const handleClickMovePage = (0, import_react13.useCallback)(
|
|
6959
7129
|
(page) => (event) => {
|
|
6960
7130
|
event.preventDefault();
|
|
6961
7131
|
handleChangePage == null ? void 0 : handleChangePage(page);
|
|
@@ -6972,8 +7142,8 @@ var usePagination = ({ currentPage, totalPage, groupSize, handleChangePage }) =>
|
|
|
6972
7142
|
var usePagination_default = usePagination;
|
|
6973
7143
|
|
|
6974
7144
|
// src/components/pagination/pagination.tsx
|
|
6975
|
-
var
|
|
6976
|
-
var Pagination = (0,
|
|
7145
|
+
var import_jsx_runtime18 = require("react/jsx-runtime");
|
|
7146
|
+
var Pagination = (0, import_react14.forwardRef)((originalProps, ref) => {
|
|
6977
7147
|
const [props, variantProps] = mapPropsVariants(originalProps, paginationStyle.variantKeys);
|
|
6978
7148
|
const {
|
|
6979
7149
|
classNames,
|
|
@@ -6987,8 +7157,8 @@ var Pagination = (0, import_react16.forwardRef)((originalProps, ref) => {
|
|
|
6987
7157
|
variant,
|
|
6988
7158
|
size
|
|
6989
7159
|
} = { ...props, ...variantProps };
|
|
6990
|
-
const [inputPage, setInputPage] = (0,
|
|
6991
|
-
const slots = (0,
|
|
7160
|
+
const [inputPage, setInputPage] = (0, import_react14.useState)(currentPage);
|
|
7161
|
+
const slots = (0, import_react14.useMemo)(() => paginationStyle(variantProps), [variantProps]);
|
|
6992
7162
|
const { pageList, handleClickMovePage } = usePagination_default({
|
|
6993
7163
|
currentPage,
|
|
6994
7164
|
totalPage,
|
|
@@ -7003,29 +7173,29 @@ var Pagination = (0, import_react16.forwardRef)((originalProps, ref) => {
|
|
|
7003
7173
|
}
|
|
7004
7174
|
}
|
|
7005
7175
|
};
|
|
7006
|
-
return /* @__PURE__ */ (0,
|
|
7007
|
-
/* @__PURE__ */ (0,
|
|
7008
|
-
showFirstLastButtons && /* @__PURE__ */ (0,
|
|
7176
|
+
return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { className: slots.base({ class: classNames == null ? void 0 : classNames.base }), ref, children: [
|
|
7177
|
+
/* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { className: slots.wrapper({ class: classNames == null ? void 0 : classNames.wrapper }), children: [
|
|
7178
|
+
showFirstLastButtons && /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
7009
7179
|
"div",
|
|
7010
7180
|
{
|
|
7011
7181
|
"aria-label": "firstPage",
|
|
7012
7182
|
"data-is-active": currentPage > 1,
|
|
7013
7183
|
className: slots.icon({ class: classNames == null ? void 0 : classNames.icon }),
|
|
7014
7184
|
onClick: currentPage > 1 ? handleClickMovePage(1) : void 0,
|
|
7015
|
-
children: /* @__PURE__ */ (0,
|
|
7185
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(Icon_default, { name: "left-double-chevron" })
|
|
7016
7186
|
}
|
|
7017
7187
|
),
|
|
7018
|
-
/* @__PURE__ */ (0,
|
|
7188
|
+
/* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
7019
7189
|
"div",
|
|
7020
7190
|
{
|
|
7021
7191
|
"aria-label": "prevPage",
|
|
7022
7192
|
"data-is-active": currentPage > 1,
|
|
7023
7193
|
className: slots.icon({ class: classNames == null ? void 0 : classNames.icon }),
|
|
7024
7194
|
onClick: currentPage > 1 ? handleClickMovePage(currentPage - 1) : void 0,
|
|
7025
|
-
children: /* @__PURE__ */ (0,
|
|
7195
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(Icon_default, { name: "left-chevron" })
|
|
7026
7196
|
}
|
|
7027
7197
|
),
|
|
7028
|
-
showPageNumber && pageList.map((page, index) => /* @__PURE__ */ (0,
|
|
7198
|
+
showPageNumber && pageList.map((page, index) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
7029
7199
|
"div",
|
|
7030
7200
|
{
|
|
7031
7201
|
className: slots.button({ class: classNames == null ? void 0 : classNames.button }),
|
|
@@ -7035,29 +7205,29 @@ var Pagination = (0, import_react16.forwardRef)((originalProps, ref) => {
|
|
|
7035
7205
|
},
|
|
7036
7206
|
index
|
|
7037
7207
|
)),
|
|
7038
|
-
/* @__PURE__ */ (0,
|
|
7208
|
+
/* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
7039
7209
|
"div",
|
|
7040
7210
|
{
|
|
7041
7211
|
"aria-label": "nextPage",
|
|
7042
7212
|
"data-is-active": currentPage < totalPage,
|
|
7043
7213
|
className: slots.icon({ class: classNames == null ? void 0 : classNames.icon }),
|
|
7044
7214
|
onClick: currentPage < totalPage ? handleClickMovePage(currentPage + 1) : void 0,
|
|
7045
|
-
children: /* @__PURE__ */ (0,
|
|
7215
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(Icon_default, { name: "right-chevron" })
|
|
7046
7216
|
}
|
|
7047
7217
|
),
|
|
7048
|
-
showFirstLastButtons && /* @__PURE__ */ (0,
|
|
7218
|
+
showFirstLastButtons && /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
7049
7219
|
"div",
|
|
7050
7220
|
{
|
|
7051
7221
|
"aria-label": "lastPage",
|
|
7052
7222
|
"data-is-active": currentPage < totalPage,
|
|
7053
7223
|
className: slots.icon({ class: classNames == null ? void 0 : classNames.icon }),
|
|
7054
7224
|
onClick: currentPage < totalPage ? handleClickMovePage(totalPage) : void 0,
|
|
7055
|
-
children: /* @__PURE__ */ (0,
|
|
7225
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(Icon_default, { name: "right-double-chevron" })
|
|
7056
7226
|
}
|
|
7057
7227
|
)
|
|
7058
7228
|
] }),
|
|
7059
|
-
showPageLabel && /* @__PURE__ */ (0,
|
|
7060
|
-
/* @__PURE__ */ (0,
|
|
7229
|
+
showPageLabel && /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("span", { className: slots.label({ class: classNames == null ? void 0 : classNames.label }), children: [
|
|
7230
|
+
/* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
7061
7231
|
input_default,
|
|
7062
7232
|
{
|
|
7063
7233
|
value: inputPage || 1,
|
|
@@ -7230,14 +7400,14 @@ var paginationStyle = tv(
|
|
|
7230
7400
|
);
|
|
7231
7401
|
|
|
7232
7402
|
// src/components/scroll/scrollArea.tsx
|
|
7233
|
-
var
|
|
7234
|
-
var
|
|
7403
|
+
var import_tailwind_variants15 = require("tailwind-variants");
|
|
7404
|
+
var import_jsx_runtime19 = require("react/jsx-runtime");
|
|
7235
7405
|
var ScrollArea = ({ children, className, direction, size }) => {
|
|
7236
|
-
return /* @__PURE__ */ (0,
|
|
7406
|
+
return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: clsx(scrollAreaStyle({ direction, size }), className), children });
|
|
7237
7407
|
};
|
|
7238
7408
|
ScrollArea.displayName = "ScrollArea";
|
|
7239
7409
|
var scrollArea_default = ScrollArea;
|
|
7240
|
-
var scrollAreaStyle = (0,
|
|
7410
|
+
var scrollAreaStyle = (0, import_tailwind_variants15.tv)({
|
|
7241
7411
|
base: [
|
|
7242
7412
|
"h-full",
|
|
7243
7413
|
"x-full",
|
|
@@ -7266,95 +7436,105 @@ var scrollAreaStyle = (0, import_tailwind_variants14.tv)({
|
|
|
7266
7436
|
});
|
|
7267
7437
|
|
|
7268
7438
|
// src/components/table/table.tsx
|
|
7269
|
-
var
|
|
7270
|
-
var Table = (0,
|
|
7439
|
+
var import_jsx_runtime20 = require("react/jsx-runtime");
|
|
7440
|
+
var Table = (0, import_react15.forwardRef)((originalProps, ref) => {
|
|
7271
7441
|
const [props, variantProps] = mapPropsVariants(originalProps, tableStyle.variantKeys);
|
|
7272
7442
|
const {
|
|
7273
|
-
classNames,
|
|
7274
7443
|
rows,
|
|
7275
7444
|
columns,
|
|
7276
|
-
|
|
7277
|
-
rowCheckbox,
|
|
7445
|
+
rowCheckbox = false,
|
|
7278
7446
|
onRowClick,
|
|
7279
7447
|
totalData,
|
|
7280
7448
|
pagination,
|
|
7281
7449
|
onPageChange,
|
|
7282
7450
|
emptyContent,
|
|
7283
|
-
isLoading,
|
|
7284
|
-
|
|
7285
|
-
color
|
|
7451
|
+
isLoading = false,
|
|
7452
|
+
classNames,
|
|
7453
|
+
color,
|
|
7454
|
+
size,
|
|
7455
|
+
skeletonRow
|
|
7286
7456
|
} = { ...props, ...variantProps };
|
|
7287
|
-
const
|
|
7288
|
-
const divRef = (0, import_react17.useRef)(null);
|
|
7289
|
-
const { page, perPage } = pagination || { page: 1, perPage: 10 };
|
|
7457
|
+
const { page = 1, perPage = 10 } = pagination || {};
|
|
7290
7458
|
const showPagination = pagination && typeof totalData === "number" && !isLoading;
|
|
7291
|
-
(0,
|
|
7292
|
-
|
|
7293
|
-
|
|
7294
|
-
|
|
7295
|
-
|
|
7459
|
+
const [checkedRows, setCheckedRows] = (0, import_react15.useState)(/* @__PURE__ */ new Set());
|
|
7460
|
+
const divRef = (0, import_react15.useRef)(null);
|
|
7461
|
+
(0, import_react15.useImperativeHandle)(
|
|
7462
|
+
ref,
|
|
7463
|
+
() => ({
|
|
7464
|
+
checkedRows,
|
|
7465
|
+
setCheckedRows
|
|
7466
|
+
}),
|
|
7467
|
+
[checkedRows]
|
|
7468
|
+
);
|
|
7469
|
+
(0, import_react15.useEffect)(() => {
|
|
7296
7470
|
setCheckedRows(/* @__PURE__ */ new Set());
|
|
7297
7471
|
}, [rows]);
|
|
7298
|
-
const
|
|
7299
|
-
const
|
|
7300
|
-
setCheckedRows(
|
|
7472
|
+
const handleAllRowCheck = (checked) => {
|
|
7473
|
+
const updated = checked ? new Set(rows.map((_, i) => i)) : /* @__PURE__ */ new Set();
|
|
7474
|
+
setCheckedRows(updated);
|
|
7301
7475
|
};
|
|
7302
|
-
const
|
|
7303
|
-
|
|
7304
|
-
|
|
7305
|
-
|
|
7476
|
+
const handleRowCheck = (index, checked) => {
|
|
7477
|
+
setCheckedRows((prev) => {
|
|
7478
|
+
const updated = new Set(prev);
|
|
7479
|
+
checked ? updated.add(index) : updated.delete(index);
|
|
7480
|
+
return updated;
|
|
7481
|
+
});
|
|
7306
7482
|
};
|
|
7307
|
-
const slots = (0,
|
|
7308
|
-
return /* @__PURE__ */ (0,
|
|
7309
|
-
/* @__PURE__ */ (0,
|
|
7310
|
-
/* @__PURE__ */ (0,
|
|
7483
|
+
const slots = (0, import_react15.useMemo)(() => tableStyle(variantProps), [variantProps]);
|
|
7484
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)("div", { ref: divRef, "data-table": "base", className: slots.base({ class: classNames == null ? void 0 : classNames.base }), children: [
|
|
7485
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(scrollArea_default, { direction: "x", size: size === "xl" ? "lg" : size, children: /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)("table", { className: slots.table({ class: classNames == null ? void 0 : classNames.table }), children: [
|
|
7486
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
7311
7487
|
table_head_default,
|
|
7312
7488
|
{
|
|
7313
7489
|
columns,
|
|
7314
7490
|
size,
|
|
7491
|
+
color,
|
|
7315
7492
|
rowCheckbox,
|
|
7316
7493
|
isCheckedAll: checkedRows.size === rows.length && rows.length > 0,
|
|
7317
|
-
onCheckAll:
|
|
7494
|
+
onCheckAll: handleAllRowCheck,
|
|
7495
|
+
isLoading,
|
|
7318
7496
|
classNames,
|
|
7319
7497
|
slots
|
|
7320
7498
|
}
|
|
7321
7499
|
),
|
|
7322
|
-
/* @__PURE__ */ (0,
|
|
7500
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
7323
7501
|
table_body_default,
|
|
7324
7502
|
{
|
|
7325
7503
|
slots,
|
|
7326
7504
|
rows,
|
|
7327
7505
|
columns,
|
|
7328
7506
|
size,
|
|
7507
|
+
color,
|
|
7329
7508
|
rowCheckbox,
|
|
7330
7509
|
checkedRows,
|
|
7331
7510
|
onRowClick,
|
|
7332
|
-
onCheckRow:
|
|
7511
|
+
onCheckRow: handleRowCheck,
|
|
7333
7512
|
emptyContent,
|
|
7334
7513
|
isLoading,
|
|
7335
|
-
|
|
7514
|
+
skeletonRow,
|
|
7336
7515
|
className: clsx(
|
|
7337
7516
|
"transition-all duration-150 ease-out",
|
|
7338
|
-
isLoading ? "-translate-y-2 opacity-0" : "translate-y-0 opacity-100"
|
|
7517
|
+
isLoading ? "-translate-y-2 opacity-0" : "translate-y-0 opacity-100",
|
|
7518
|
+
classNames
|
|
7339
7519
|
)
|
|
7340
7520
|
}
|
|
7341
7521
|
)
|
|
7342
7522
|
] }) }),
|
|
7343
|
-
showPagination && /* @__PURE__ */ (0,
|
|
7523
|
+
showPagination && /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: "flex justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
7344
7524
|
pagination_default,
|
|
7345
7525
|
{
|
|
7346
7526
|
color,
|
|
7347
7527
|
currentPage: page,
|
|
7348
7528
|
totalPage: Math.ceil(totalData / perPage),
|
|
7349
7529
|
groupSize: 10,
|
|
7350
|
-
handleChangePage: (
|
|
7530
|
+
handleChangePage: (newPage) => onPageChange == null ? void 0 : onPageChange({ page: newPage, perPage })
|
|
7351
7531
|
}
|
|
7352
7532
|
) })
|
|
7353
7533
|
] });
|
|
7354
7534
|
});
|
|
7355
7535
|
Table.displayName = "Table";
|
|
7356
7536
|
var table_default = Table;
|
|
7357
|
-
var tableStyle = (0,
|
|
7537
|
+
var tableStyle = (0, import_tailwind_variants16.tv)({
|
|
7358
7538
|
slots: {
|
|
7359
7539
|
base: ["flex", "flex-col", "relative", "select-none", "gap-[20px]"],
|
|
7360
7540
|
table: ["w-full", "h-auto"],
|
|
@@ -7571,21 +7751,21 @@ var tableStyle = (0, import_tailwind_variants15.tv)({
|
|
|
7571
7751
|
});
|
|
7572
7752
|
|
|
7573
7753
|
// src/components/table/definition-table.tsx
|
|
7574
|
-
var
|
|
7575
|
-
var
|
|
7754
|
+
var import_react16 = require("react");
|
|
7755
|
+
var import_jsx_runtime21 = require("react/jsx-runtime");
|
|
7576
7756
|
var DEFAULT_COLUMN_CLASSES = [
|
|
7577
7757
|
"w-[120px] px-[10px] py-[9.5px] font-bold text-md text-body-foreground border-r border-neutral-light",
|
|
7578
7758
|
"px-[10px] py-[9.5px]"
|
|
7579
7759
|
];
|
|
7580
|
-
var DefinitionTableRow = ({ columns, columnClasses = [] }) => /* @__PURE__ */ (0,
|
|
7760
|
+
var DefinitionTableRow = ({ columns, columnClasses = [] }) => /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("tr", { className: "border-neutral-light min-h-[50px] border-b", children: columns.map((col, index) => {
|
|
7581
7761
|
var _a;
|
|
7582
|
-
return /* @__PURE__ */ (0,
|
|
7762
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("td", { className: (_a = columnClasses[index]) != null ? _a : DEFAULT_COLUMN_CLASSES[index], children: col }, index);
|
|
7583
7763
|
}) });
|
|
7584
|
-
var DefinitionTable = (0,
|
|
7585
|
-
const slots = (0,
|
|
7586
|
-
return /* @__PURE__ */ (0,
|
|
7587
|
-
/* @__PURE__ */ (0,
|
|
7588
|
-
footer && /* @__PURE__ */ (0,
|
|
7764
|
+
var DefinitionTable = (0, import_react16.forwardRef)(({ rows, footer, classNames }, ref) => {
|
|
7765
|
+
const slots = (0, import_react16.useMemo)(() => DefinitionTableStyle(), []);
|
|
7766
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)("div", { ref, className: slots.base({ class: classNames == null ? void 0 : classNames.base }), children: [
|
|
7767
|
+
/* @__PURE__ */ (0, import_jsx_runtime21.jsx)("table", { className: slots.table({ class: classNames == null ? void 0 : classNames.table }), children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("tbody", { children: rows.map((row, i) => /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(DefinitionTableRow, { ...row }, i)) }) }),
|
|
7768
|
+
footer && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { children: footer })
|
|
7589
7769
|
] });
|
|
7590
7770
|
});
|
|
7591
7771
|
DefinitionTable.displayName = "DefinitionTable";
|
|
@@ -7598,10 +7778,10 @@ var DefinitionTableStyle = tv({
|
|
|
7598
7778
|
});
|
|
7599
7779
|
|
|
7600
7780
|
// src/components/select/select.tsx
|
|
7601
|
-
var
|
|
7781
|
+
var import_react17 = require("react");
|
|
7602
7782
|
var import_react_dom = require("react-dom");
|
|
7603
|
-
var
|
|
7604
|
-
var Select = (0,
|
|
7783
|
+
var import_jsx_runtime22 = require("react/jsx-runtime");
|
|
7784
|
+
var Select = (0, import_react17.forwardRef)((originalProps, ref) => {
|
|
7605
7785
|
var _a;
|
|
7606
7786
|
const [props, variantProps] = mapPropsVariants(originalProps, select.variantKeys);
|
|
7607
7787
|
const {
|
|
@@ -7615,14 +7795,14 @@ var Select = (0, import_react19.forwardRef)((originalProps, ref) => {
|
|
|
7615
7795
|
multiple,
|
|
7616
7796
|
...inputProps
|
|
7617
7797
|
} = props;
|
|
7618
|
-
const slots = (0,
|
|
7619
|
-
const [selectedOptions, setSelectedOptions] = (0,
|
|
7620
|
-
const [targetRect, setTargetRect] = (0,
|
|
7621
|
-
const [optionWrapperHeight, setOptionWrapperHeight] = (0,
|
|
7622
|
-
const [isVisible, setIsVisible] = (0,
|
|
7623
|
-
const [isOpen, setIsOpen] = (0,
|
|
7624
|
-
const selectWrapperRef = (0,
|
|
7625
|
-
const optionWrapperRef = (0,
|
|
7798
|
+
const slots = (0, import_react17.useMemo)(() => select({ ...variantProps }), [variantProps]);
|
|
7799
|
+
const [selectedOptions, setSelectedOptions] = (0, import_react17.useState)(defaultSelectedOptions);
|
|
7800
|
+
const [targetRect, setTargetRect] = (0, import_react17.useState)(null);
|
|
7801
|
+
const [optionWrapperHeight, setOptionWrapperHeight] = (0, import_react17.useState)(0);
|
|
7802
|
+
const [isVisible, setIsVisible] = (0, import_react17.useState)(false);
|
|
7803
|
+
const [isOpen, setIsOpen] = (0, import_react17.useState)(false);
|
|
7804
|
+
const selectWrapperRef = (0, import_react17.useRef)(null);
|
|
7805
|
+
const optionWrapperRef = (0, import_react17.useRef)(null);
|
|
7626
7806
|
const handleToggleSelect = () => {
|
|
7627
7807
|
if (isOpen) {
|
|
7628
7808
|
setIsOpen(false);
|
|
@@ -7660,7 +7840,7 @@ var Select = (0, import_react19.forwardRef)((originalProps, ref) => {
|
|
|
7660
7840
|
setSelectedOptions(nextOptions);
|
|
7661
7841
|
onChange == null ? void 0 : onChange(nextOptions);
|
|
7662
7842
|
};
|
|
7663
|
-
(0,
|
|
7843
|
+
(0, import_react17.useEffect)(() => {
|
|
7664
7844
|
const handleClickOutside = (e) => {
|
|
7665
7845
|
var _a2;
|
|
7666
7846
|
if (optionWrapperRef.current && !optionWrapperRef.current.contains(e.target) && !((_a2 = selectWrapperRef.current) == null ? void 0 : _a2.contains(e.target))) {
|
|
@@ -7671,7 +7851,7 @@ var Select = (0, import_react19.forwardRef)((originalProps, ref) => {
|
|
|
7671
7851
|
window.addEventListener("mousedown", handleClickOutside);
|
|
7672
7852
|
return () => window.removeEventListener("mousedown", handleClickOutside);
|
|
7673
7853
|
}, []);
|
|
7674
|
-
(0,
|
|
7854
|
+
(0, import_react17.useEffect)(() => {
|
|
7675
7855
|
if (optionWrapperRef.current) {
|
|
7676
7856
|
setOptionWrapperHeight(optionWrapperRef.current.getBoundingClientRect().height);
|
|
7677
7857
|
}
|
|
@@ -7684,13 +7864,13 @@ var Select = (0, import_react19.forwardRef)((originalProps, ref) => {
|
|
|
7684
7864
|
onClick
|
|
7685
7865
|
}) => {
|
|
7686
7866
|
const slot = select({ ...variantProps, isSelected });
|
|
7687
|
-
return /* @__PURE__ */ (0,
|
|
7867
|
+
return /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)("div", { title: option.value, onClick, className: clsx(slot.option({ class: classNames == null ? void 0 : classNames.option })), children: [
|
|
7688
7868
|
option.value,
|
|
7689
|
-
isSelected && /* @__PURE__ */ (0,
|
|
7869
|
+
isSelected && /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(Icon_default, { name: "check", size: originalProps.size })
|
|
7690
7870
|
] });
|
|
7691
7871
|
};
|
|
7692
|
-
return /* @__PURE__ */ (0,
|
|
7693
|
-
/* @__PURE__ */ (0,
|
|
7872
|
+
return /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(import_jsx_runtime22.Fragment, { children: [
|
|
7873
|
+
/* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(
|
|
7694
7874
|
"div",
|
|
7695
7875
|
{
|
|
7696
7876
|
className: clsx(
|
|
@@ -7698,9 +7878,9 @@ var Select = (0, import_react19.forwardRef)((originalProps, ref) => {
|
|
|
7698
7878
|
variantProps.direction === "horizon" ? slots.horizon({ class: classNames == null ? void 0 : classNames.horizon }) : slots.vertical({ class: classNames == null ? void 0 : classNames.vertical })
|
|
7699
7879
|
),
|
|
7700
7880
|
children: [
|
|
7701
|
-
label && /* @__PURE__ */ (0,
|
|
7702
|
-
/* @__PURE__ */ (0,
|
|
7703
|
-
/* @__PURE__ */ (0,
|
|
7881
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("label", { className: slots.label({ class: classNames == null ? void 0 : classNames.label }), children: label }),
|
|
7882
|
+
/* @__PURE__ */ (0, import_jsx_runtime22.jsxs)("div", { className: slots.wrapper({ class: classNames == null ? void 0 : classNames.wrapper }), children: [
|
|
7883
|
+
/* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(
|
|
7704
7884
|
"div",
|
|
7705
7885
|
{
|
|
7706
7886
|
"data-expanded": isOpen,
|
|
@@ -7711,7 +7891,7 @@ var Select = (0, import_react19.forwardRef)((originalProps, ref) => {
|
|
|
7711
7891
|
ref: selectWrapperRef,
|
|
7712
7892
|
onClick: handleToggleSelect,
|
|
7713
7893
|
children: [
|
|
7714
|
-
/* @__PURE__ */ (0,
|
|
7894
|
+
/* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
|
|
7715
7895
|
"input",
|
|
7716
7896
|
{
|
|
7717
7897
|
...inputProps,
|
|
@@ -7725,7 +7905,7 @@ var Select = (0, import_react19.forwardRef)((originalProps, ref) => {
|
|
|
7725
7905
|
size: 0
|
|
7726
7906
|
}
|
|
7727
7907
|
),
|
|
7728
|
-
/* @__PURE__ */ (0,
|
|
7908
|
+
/* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
|
|
7729
7909
|
Icon_default,
|
|
7730
7910
|
{
|
|
7731
7911
|
name: "brace-up",
|
|
@@ -7736,14 +7916,14 @@ var Select = (0, import_react19.forwardRef)((originalProps, ref) => {
|
|
|
7736
7916
|
]
|
|
7737
7917
|
}
|
|
7738
7918
|
),
|
|
7739
|
-
helperMessage && !errorMessage && /* @__PURE__ */ (0,
|
|
7740
|
-
errorMessage && /* @__PURE__ */ (0,
|
|
7919
|
+
helperMessage && !errorMessage && /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("p", { className: slots.helperMessage({ class: classNames == null ? void 0 : classNames.helperMessage }), children: helperMessage }),
|
|
7920
|
+
errorMessage && /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("p", { className: clsx("error", slots.errorMessage({ class: classNames == null ? void 0 : classNames.errorMessage })), children: errorMessage })
|
|
7741
7921
|
] })
|
|
7742
7922
|
]
|
|
7743
7923
|
}
|
|
7744
7924
|
),
|
|
7745
7925
|
isVisible && (0, import_react_dom.createPortal)(
|
|
7746
|
-
/* @__PURE__ */ (0,
|
|
7926
|
+
/* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
|
|
7747
7927
|
"div",
|
|
7748
7928
|
{
|
|
7749
7929
|
ref: optionWrapperRef,
|
|
@@ -7760,7 +7940,7 @@ var Select = (0, import_react19.forwardRef)((originalProps, ref) => {
|
|
|
7760
7940
|
},
|
|
7761
7941
|
children: options.map((option) => {
|
|
7762
7942
|
const isSelected = selectedOptions.some((o) => o.key === option.key);
|
|
7763
|
-
return /* @__PURE__ */ (0,
|
|
7943
|
+
return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
|
|
7764
7944
|
Option,
|
|
7765
7945
|
{
|
|
7766
7946
|
option,
|
|
@@ -7816,13 +7996,16 @@ var select = tv({
|
|
|
7816
7996
|
variants: {
|
|
7817
7997
|
color: {
|
|
7818
7998
|
primary: {
|
|
7819
|
-
selectWrapper: ["
|
|
7820
|
-
|
|
7999
|
+
selectWrapper: ["text-primary-main"],
|
|
8000
|
+
select: ["text-primary-main"],
|
|
8001
|
+
option: ["hover:bg-primary-soft", "hover:text-primary-main"],
|
|
8002
|
+
helperMessage: ["text-primary-main"]
|
|
7821
8003
|
},
|
|
7822
8004
|
secondary: {
|
|
7823
|
-
selectWrapper: ["
|
|
8005
|
+
selectWrapper: ["text-secondary-main"],
|
|
7824
8006
|
select: ["text-secondary-main"],
|
|
7825
|
-
option: ["hover:bg-secondary-soft", "hover:text-secondary-main"]
|
|
8007
|
+
option: ["hover:bg-secondary-soft", "hover:text-secondary-main"],
|
|
8008
|
+
helperMessage: ["text-secondary-main"]
|
|
7826
8009
|
}
|
|
7827
8010
|
},
|
|
7828
8011
|
size: {
|
|
@@ -7929,16 +8112,16 @@ var select = tv({
|
|
|
7929
8112
|
});
|
|
7930
8113
|
|
|
7931
8114
|
// src/components/chip/chip.tsx
|
|
7932
|
-
var
|
|
7933
|
-
var
|
|
7934
|
-
var Chip = (0,
|
|
8115
|
+
var import_react18 = require("react");
|
|
8116
|
+
var import_jsx_runtime23 = require("react/jsx-runtime");
|
|
8117
|
+
var Chip = (0, import_react18.forwardRef)((originalProps, ref) => {
|
|
7935
8118
|
var _a;
|
|
7936
8119
|
const [rawProps, variantProps] = mapPropsVariants(originalProps, chipStyle.variantKeys);
|
|
7937
8120
|
const props = { ...rawProps, ...variantProps };
|
|
7938
8121
|
const Component = props.onClick ? "button" : "div";
|
|
7939
|
-
const slots = (0,
|
|
7940
|
-
const renderIcon = (name) => name ? /* @__PURE__ */ (0,
|
|
7941
|
-
return /* @__PURE__ */ (0,
|
|
8122
|
+
const slots = (0, import_react18.useMemo)(() => chipStyle({ ...variantProps }), [variantProps]);
|
|
8123
|
+
const renderIcon = (name) => name ? /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(Icon_default, { name, fill: true, size: props.size, className: slots.icon() }) : null;
|
|
8124
|
+
return /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(
|
|
7942
8125
|
Component,
|
|
7943
8126
|
{
|
|
7944
8127
|
ref,
|
|
@@ -8114,13 +8297,13 @@ var chipStyle = tv({
|
|
|
8114
8297
|
});
|
|
8115
8298
|
|
|
8116
8299
|
// src/components/radio/radio.tsx
|
|
8117
|
-
var
|
|
8118
|
-
var
|
|
8119
|
-
var Radio = (0,
|
|
8300
|
+
var import_react19 = require("react");
|
|
8301
|
+
var import_jsx_runtime24 = require("react/jsx-runtime");
|
|
8302
|
+
var Radio = (0, import_react19.forwardRef)((originalProps, ref) => {
|
|
8120
8303
|
const [props, variantProps] = mapPropsVariants(originalProps, radioStyle.variantKeys);
|
|
8121
8304
|
const { children, classNames, labelPosition = "end", ...inputProps } = props;
|
|
8122
|
-
const slots = (0,
|
|
8123
|
-
return /* @__PURE__ */ (0,
|
|
8305
|
+
const slots = (0, import_react19.useMemo)(() => radioStyle({ ...variantProps }), [variantProps]);
|
|
8306
|
+
return /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(
|
|
8124
8307
|
"label",
|
|
8125
8308
|
{
|
|
8126
8309
|
className: clsx(
|
|
@@ -8128,9 +8311,9 @@ var Radio = (0, import_react21.forwardRef)((originalProps, ref) => {
|
|
|
8128
8311
|
labelPosition === "start" && slots.labelReverse({ class: classNames == null ? void 0 : classNames.labelReverse })
|
|
8129
8312
|
),
|
|
8130
8313
|
children: [
|
|
8131
|
-
/* @__PURE__ */ (0,
|
|
8132
|
-
/* @__PURE__ */ (0,
|
|
8133
|
-
/* @__PURE__ */ (0,
|
|
8314
|
+
/* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: "hidden", children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("input", { ...inputProps, type: "radio", ref }) }),
|
|
8315
|
+
/* @__PURE__ */ (0, import_jsx_runtime24.jsx)("span", { className: slots.outerDot({ class: classNames == null ? void 0 : classNames.outerDot }), children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("span", { className: slots.innerDot({ class: classNames == null ? void 0 : classNames.innerDot }) }) }),
|
|
8316
|
+
/* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: slots.labelWrapper({ class: classNames == null ? void 0 : classNames.labelWrapper }), children: children && /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("span", { className: slots.label({ class: classNames == null ? void 0 : classNames.label }), children }) })
|
|
8134
8317
|
]
|
|
8135
8318
|
}
|
|
8136
8319
|
);
|
|
@@ -8270,21 +8453,21 @@ var radioStyle = tv({
|
|
|
8270
8453
|
});
|
|
8271
8454
|
|
|
8272
8455
|
// src/components/switch/switch.tsx
|
|
8273
|
-
var
|
|
8274
|
-
var
|
|
8275
|
-
var
|
|
8276
|
-
var Switch = (0,
|
|
8456
|
+
var import_react20 = require("react");
|
|
8457
|
+
var import_tailwind_variants21 = require("tailwind-variants");
|
|
8458
|
+
var import_jsx_runtime25 = require("react/jsx-runtime");
|
|
8459
|
+
var Switch = (0, import_react20.forwardRef)((originalProps, ref) => {
|
|
8277
8460
|
const [rawProps, variantProps] = mapPropsVariants(originalProps, switchStyle.variantKeys);
|
|
8278
8461
|
const { size, color, isDisabled, disableAnimation, id, classNames, ...inputProps } = { ...rawProps, ...variantProps };
|
|
8279
|
-
const slots = (0,
|
|
8280
|
-
return /* @__PURE__ */ (0,
|
|
8281
|
-
/* @__PURE__ */ (0,
|
|
8282
|
-
/* @__PURE__ */ (0,
|
|
8462
|
+
const slots = (0, import_react20.useMemo)(() => switchStyle({ ...variantProps }), [variantProps]);
|
|
8463
|
+
return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)("label", { className: slots.base({ class: classNames == null ? void 0 : classNames.base }), children: [
|
|
8464
|
+
/* @__PURE__ */ (0, import_jsx_runtime25.jsx)("input", { ...inputProps, id, ref, type: "checkbox", disabled: isDisabled, className: "hidden" }),
|
|
8465
|
+
/* @__PURE__ */ (0, import_jsx_runtime25.jsx)("span", { className: slots.outerWrapper({ class: classNames == null ? void 0 : classNames.outerWrapper }), children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("span", { className: slots.wrapper({ class: classNames == null ? void 0 : classNames.wrapper }), children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("span", { className: slots.thumb({ class: classNames == null ? void 0 : classNames.thumb }) }) }) })
|
|
8283
8466
|
] });
|
|
8284
8467
|
});
|
|
8285
8468
|
Switch.displayName = "Switch";
|
|
8286
8469
|
var switch_default = Switch;
|
|
8287
|
-
var switchStyle = (0,
|
|
8470
|
+
var switchStyle = (0, import_tailwind_variants21.tv)({
|
|
8288
8471
|
slots: {
|
|
8289
8472
|
base: ["group/switch", "relative", "max-w-fit", "inline-flex", "items-center", "justify-start", "cursor-pointer"],
|
|
8290
8473
|
outerWrapper: [
|
|
@@ -8389,7 +8572,7 @@ var switchStyle = (0, import_tailwind_variants20.tv)({
|
|
|
8389
8572
|
});
|
|
8390
8573
|
|
|
8391
8574
|
// src/components/tooltip/tooltip.tsx
|
|
8392
|
-
var
|
|
8575
|
+
var import_react22 = require("react");
|
|
8393
8576
|
var import_react_dom2 = require("react-dom");
|
|
8394
8577
|
|
|
8395
8578
|
// src/components/tooltip/tooltip-utils.ts
|
|
@@ -8512,11 +8695,11 @@ var getTailStyles = (placement) => {
|
|
|
8512
8695
|
};
|
|
8513
8696
|
|
|
8514
8697
|
// src/components/tooltip/useTooltip.ts
|
|
8515
|
-
var
|
|
8698
|
+
var import_react21 = require("react");
|
|
8516
8699
|
var useTooltip = ({ placement, offset, targetRect }) => {
|
|
8517
|
-
const [tooltipPosition, setTooltipPosition] = (0,
|
|
8518
|
-
const tooltipRef = (0,
|
|
8519
|
-
(0,
|
|
8700
|
+
const [tooltipPosition, setTooltipPosition] = (0, import_react21.useState)({ x: 0, y: 0 });
|
|
8701
|
+
const tooltipRef = (0, import_react21.useRef)(null);
|
|
8702
|
+
(0, import_react21.useEffect)(() => {
|
|
8520
8703
|
if (targetRect && tooltipRef.current) {
|
|
8521
8704
|
const { width, height } = tooltipRef.current.getBoundingClientRect();
|
|
8522
8705
|
const scrollX = window.scrollX;
|
|
@@ -8546,29 +8729,29 @@ var useTooltip = ({ placement, offset, targetRect }) => {
|
|
|
8546
8729
|
};
|
|
8547
8730
|
|
|
8548
8731
|
// src/components/tooltip/tooltip.tsx
|
|
8549
|
-
var
|
|
8550
|
-
var Tooltip = (0,
|
|
8732
|
+
var import_jsx_runtime26 = require("react/jsx-runtime");
|
|
8733
|
+
var Tooltip = (0, import_react22.forwardRef)((originalProps, ref) => {
|
|
8551
8734
|
const [props, variantProps] = mapPropsVariants(originalProps, tooltipStyle.variantKeys);
|
|
8552
8735
|
const { placement = "top", offset = 5, delay = 100, persistent = false, classNames } = props;
|
|
8553
|
-
const slots = (0,
|
|
8554
|
-
const [targetRect, setTargetRect] = (0,
|
|
8736
|
+
const slots = (0, import_react22.useMemo)(() => tooltipStyle({ ...variantProps }), [variantProps]);
|
|
8737
|
+
const [targetRect, setTargetRect] = (0, import_react22.useState)(null);
|
|
8555
8738
|
const { tooltipPosition, tooltipRef } = useTooltip({
|
|
8556
8739
|
placement,
|
|
8557
8740
|
offset,
|
|
8558
8741
|
delay,
|
|
8559
8742
|
targetRect
|
|
8560
8743
|
});
|
|
8561
|
-
const childrenRef = (0,
|
|
8562
|
-
const delayTimeoutRef = (0,
|
|
8563
|
-
const getProps = (0,
|
|
8744
|
+
const childrenRef = (0, import_react22.useRef)(null);
|
|
8745
|
+
const delayTimeoutRef = (0, import_react22.useRef)(null);
|
|
8746
|
+
const getProps = (0, import_react22.useCallback)(
|
|
8564
8747
|
(slotKey, classNameKey) => ({
|
|
8565
8748
|
className: slots[slotKey]({ class: classNames == null ? void 0 : classNames[classNameKey] })
|
|
8566
8749
|
}),
|
|
8567
8750
|
[slots, classNames]
|
|
8568
8751
|
);
|
|
8569
|
-
const getBaseProps = (0,
|
|
8570
|
-
const getContentProps = (0,
|
|
8571
|
-
const showTooltip = (0,
|
|
8752
|
+
const getBaseProps = (0, import_react22.useCallback)(() => getProps("base", "base"), [getProps]);
|
|
8753
|
+
const getContentProps = (0, import_react22.useCallback)(() => getProps("content", "content"), [getProps]);
|
|
8754
|
+
const showTooltip = (0, import_react22.useCallback)(() => {
|
|
8572
8755
|
if (childrenRef.current) {
|
|
8573
8756
|
const rect = childrenRef.current.getBoundingClientRect();
|
|
8574
8757
|
setTargetRect({
|
|
@@ -8581,16 +8764,16 @@ var Tooltip = (0, import_react24.forwardRef)((originalProps, ref) => {
|
|
|
8581
8764
|
});
|
|
8582
8765
|
}
|
|
8583
8766
|
}, []);
|
|
8584
|
-
const hideTooltip = (0,
|
|
8767
|
+
const hideTooltip = (0, import_react22.useCallback)(() => {
|
|
8585
8768
|
if (!persistent) {
|
|
8586
8769
|
delayTimeoutRef.current = window.setTimeout(() => setTargetRect(null), delay);
|
|
8587
8770
|
}
|
|
8588
8771
|
}, [persistent, delay]);
|
|
8589
|
-
(0,
|
|
8772
|
+
(0, import_react22.useEffect)(() => {
|
|
8590
8773
|
if (persistent) showTooltip();
|
|
8591
8774
|
}, [persistent, showTooltip]);
|
|
8592
|
-
return /* @__PURE__ */ (0,
|
|
8593
|
-
/* @__PURE__ */ (0,
|
|
8775
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(import_jsx_runtime26.Fragment, { children: [
|
|
8776
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
|
8594
8777
|
"div",
|
|
8595
8778
|
{
|
|
8596
8779
|
ref: (node) => {
|
|
@@ -8607,7 +8790,7 @@ var Tooltip = (0, import_react24.forwardRef)((originalProps, ref) => {
|
|
|
8607
8790
|
}
|
|
8608
8791
|
),
|
|
8609
8792
|
targetRect && (0, import_react_dom2.createPortal)(
|
|
8610
|
-
/* @__PURE__ */ (0,
|
|
8793
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
|
|
8611
8794
|
"div",
|
|
8612
8795
|
{
|
|
8613
8796
|
ref: tooltipRef,
|
|
@@ -8620,7 +8803,7 @@ var Tooltip = (0, import_react24.forwardRef)((originalProps, ref) => {
|
|
|
8620
8803
|
},
|
|
8621
8804
|
children: [
|
|
8622
8805
|
props.content,
|
|
8623
|
-
variantProps.tail && /* @__PURE__ */ (0,
|
|
8806
|
+
variantProps.tail && /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
|
8624
8807
|
"div",
|
|
8625
8808
|
{
|
|
8626
8809
|
className: `absolute h-2 w-2 rotate-45 bg-inherit ${getTailClassName(placement)}`,
|
|
@@ -8671,10 +8854,10 @@ var tooltipStyle = tv({
|
|
|
8671
8854
|
});
|
|
8672
8855
|
|
|
8673
8856
|
// src/components/modal/modal.tsx
|
|
8674
|
-
var
|
|
8857
|
+
var import_react23 = require("react");
|
|
8675
8858
|
var import_react_dom3 = require("react-dom");
|
|
8676
|
-
var
|
|
8677
|
-
var Modal = (0,
|
|
8859
|
+
var import_jsx_runtime27 = require("react/jsx-runtime");
|
|
8860
|
+
var Modal = (0, import_react23.forwardRef)((props, ref) => {
|
|
8678
8861
|
const [localProps, variantProps] = mapPropsVariants(props, modal.variantKeys);
|
|
8679
8862
|
const {
|
|
8680
8863
|
classNames,
|
|
@@ -8688,8 +8871,8 @@ var Modal = (0, import_react25.forwardRef)((props, ref) => {
|
|
|
8688
8871
|
onConfirm,
|
|
8689
8872
|
onCancel
|
|
8690
8873
|
} = localProps;
|
|
8691
|
-
const slots = (0,
|
|
8692
|
-
(0,
|
|
8874
|
+
const slots = (0, import_react23.useMemo)(() => modal(variantProps), [variantProps]);
|
|
8875
|
+
(0, import_react23.useEffect)(() => {
|
|
8693
8876
|
document.body.classList.toggle("overflow-hidden", !!isOpen);
|
|
8694
8877
|
if (!isOpen || isKeyboardDismissDisabled) return;
|
|
8695
8878
|
const handleKeyDown = (e) => {
|
|
@@ -8703,10 +8886,10 @@ var Modal = (0, import_react25.forwardRef)((props, ref) => {
|
|
|
8703
8886
|
}, [isOpen, isKeyboardDismissDisabled, onCancel]);
|
|
8704
8887
|
if (!isOpen) return null;
|
|
8705
8888
|
return (0, import_react_dom3.createPortal)(
|
|
8706
|
-
/* @__PURE__ */ (0,
|
|
8707
|
-
/* @__PURE__ */ (0,
|
|
8708
|
-
/* @__PURE__ */ (0,
|
|
8709
|
-
showCloseButton && /* @__PURE__ */ (0,
|
|
8889
|
+
/* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(import_jsx_runtime27.Fragment, { children: [
|
|
8890
|
+
/* @__PURE__ */ (0, import_jsx_runtime27.jsx)(backdrop_default, { open: true }),
|
|
8891
|
+
/* @__PURE__ */ (0, import_jsx_runtime27.jsx)("div", { ref, className: slots.base({ class: classNames == null ? void 0 : classNames.base }), children: /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("div", { className: slots.modalWrapper({ class: classNames == null ? void 0 : classNames.modalWrapper }), children: [
|
|
8892
|
+
showCloseButton && /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
|
|
8710
8893
|
Icon_default,
|
|
8711
8894
|
{
|
|
8712
8895
|
size: "xl",
|
|
@@ -8715,12 +8898,12 @@ var Modal = (0, import_react25.forwardRef)((props, ref) => {
|
|
|
8715
8898
|
onClick: onCancel
|
|
8716
8899
|
}
|
|
8717
8900
|
),
|
|
8718
|
-
/* @__PURE__ */ (0,
|
|
8719
|
-
title && /* @__PURE__ */ (0,
|
|
8720
|
-
typeof content === "string" ? /* @__PURE__ */ (0,
|
|
8721
|
-
(cancelButtonText || confirmButtonText) && /* @__PURE__ */ (0,
|
|
8722
|
-
cancelButtonText && /* @__PURE__ */ (0,
|
|
8723
|
-
confirmButtonText && /* @__PURE__ */ (0,
|
|
8901
|
+
/* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("div", { className: slots.wrapper({ class: classNames == null ? void 0 : classNames.wrapper }), children: [
|
|
8902
|
+
title && /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("div", { className: slots.title({ class: classNames == null ? void 0 : classNames.title }), children: title }),
|
|
8903
|
+
typeof content === "string" ? /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("div", { className: slots.content({ class: classNames == null ? void 0 : classNames.content }), children: content }) : content,
|
|
8904
|
+
(cancelButtonText || confirmButtonText) && /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("div", { className: slots.footer({ class: classNames == null ? void 0 : classNames.footer }), children: [
|
|
8905
|
+
cancelButtonText && /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(button_default, { variant: "soft", color: "neutral", fullWidth: true, onClick: onCancel, children: cancelButtonText }),
|
|
8906
|
+
confirmButtonText && /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(button_default, { color: props.color, fullWidth: true, onClick: onConfirm, children: confirmButtonText })
|
|
8724
8907
|
] })
|
|
8725
8908
|
] })
|
|
8726
8909
|
] }) })
|
|
@@ -8786,15 +8969,15 @@ var modal = tv({
|
|
|
8786
8969
|
});
|
|
8787
8970
|
|
|
8788
8971
|
// src/components/list/list.tsx
|
|
8789
|
-
var
|
|
8790
|
-
var
|
|
8791
|
-
var List = (0,
|
|
8972
|
+
var import_react24 = require("react");
|
|
8973
|
+
var import_jsx_runtime28 = require("react/jsx-runtime");
|
|
8974
|
+
var List = (0, import_react24.forwardRef)((originalProps, ref) => {
|
|
8792
8975
|
const [props, variantProps] = mapPropsVariants(originalProps, listStyle.variantKeys);
|
|
8793
8976
|
const { children, classNames } = props;
|
|
8794
|
-
const slots = (0,
|
|
8795
|
-
return /* @__PURE__ */ (0,
|
|
8796
|
-
if (!(0,
|
|
8797
|
-
return (0,
|
|
8977
|
+
const slots = (0, import_react24.useMemo)(() => listStyle(variantProps), [variantProps]);
|
|
8978
|
+
return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { ref, className: slots.base({ class: classNames == null ? void 0 : classNames.base }), children: import_react24.Children.map(children, (child) => {
|
|
8979
|
+
if (!(0, import_react24.isValidElement)(child)) return child;
|
|
8980
|
+
return (0, import_react24.cloneElement)(child, {
|
|
8798
8981
|
...variantProps,
|
|
8799
8982
|
...child.props
|
|
8800
8983
|
});
|
|
@@ -8831,9 +9014,9 @@ var listStyle = tv({
|
|
|
8831
9014
|
});
|
|
8832
9015
|
|
|
8833
9016
|
// src/components/list/listItem.tsx
|
|
8834
|
-
var
|
|
8835
|
-
var
|
|
8836
|
-
var ListItem = (0,
|
|
9017
|
+
var import_react25 = require("react");
|
|
9018
|
+
var import_jsx_runtime29 = require("react/jsx-runtime");
|
|
9019
|
+
var ListItem = (0, import_react25.forwardRef)((props, ref) => {
|
|
8837
9020
|
const [rawProps, variantProps] = mapPropsVariants(props, listItemStyle.variantKeys);
|
|
8838
9021
|
const {
|
|
8839
9022
|
title,
|
|
@@ -8845,19 +9028,19 @@ var ListItem = (0, import_react27.forwardRef)((props, ref) => {
|
|
|
8845
9028
|
classNames,
|
|
8846
9029
|
onClick
|
|
8847
9030
|
} = { ...rawProps, ...variantProps };
|
|
8848
|
-
const slots = (0,
|
|
9031
|
+
const slots = (0, import_react25.useMemo)(() => listItemStyle(variantProps), [variantProps]);
|
|
8849
9032
|
const iconSize = ["lg", "xl"].includes(size) ? "lg" : "md";
|
|
8850
9033
|
const avatarSize = iconSize;
|
|
8851
|
-
return /* @__PURE__ */ (0,
|
|
8852
|
-
/* @__PURE__ */ (0,
|
|
8853
|
-
avatar && /* @__PURE__ */ (0,
|
|
8854
|
-
startIconName && /* @__PURE__ */ (0,
|
|
8855
|
-
/* @__PURE__ */ (0,
|
|
8856
|
-
/* @__PURE__ */ (0,
|
|
8857
|
-
subTitle && /* @__PURE__ */ (0,
|
|
9034
|
+
return /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)("div", { ref, className: slots.base({ class: classNames == null ? void 0 : classNames.base }), "data-selected": selected, onClick, children: [
|
|
9035
|
+
/* @__PURE__ */ (0, import_jsx_runtime29.jsxs)("div", { className: slots.wrapper({ class: classNames == null ? void 0 : classNames.wrapper }), children: [
|
|
9036
|
+
avatar && /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(avatar_default, { ...avatar, variant: "round", size: avatarSize }),
|
|
9037
|
+
startIconName && /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(Icon_default, { name: startIconName, fill: true, size, className: slots.startIcon({ class: classNames == null ? void 0 : classNames.startIcon }) }),
|
|
9038
|
+
/* @__PURE__ */ (0, import_jsx_runtime29.jsxs)("div", { className: slots.titleWrapper({ class: classNames == null ? void 0 : classNames.titleWrapper }), children: [
|
|
9039
|
+
/* @__PURE__ */ (0, import_jsx_runtime29.jsx)("span", { className: slots.title({ class: classNames == null ? void 0 : classNames.title }), children: title }),
|
|
9040
|
+
subTitle && /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("span", { className: slots.subTitle({ class: classNames == null ? void 0 : classNames.subTitle }), children: subTitle })
|
|
8858
9041
|
] })
|
|
8859
9042
|
] }),
|
|
8860
|
-
/* @__PURE__ */ (0,
|
|
9043
|
+
/* @__PURE__ */ (0, import_jsx_runtime29.jsx)(Icon_default, { name: "right-chevron", size: iconSize, className: slots.icon({ class: classNames == null ? void 0 : classNames.icon }) })
|
|
8861
9044
|
] });
|
|
8862
9045
|
});
|
|
8863
9046
|
ListItem.displayName = "ListItem";
|
|
@@ -9025,9 +9208,9 @@ var listItemStyle = tv({
|
|
|
9025
9208
|
});
|
|
9026
9209
|
|
|
9027
9210
|
// src/components/toast/toast.tsx
|
|
9028
|
-
var
|
|
9029
|
-
var
|
|
9030
|
-
var Toast = (0,
|
|
9211
|
+
var import_react26 = require("react");
|
|
9212
|
+
var import_jsx_runtime30 = require("react/jsx-runtime");
|
|
9213
|
+
var Toast = (0, import_react26.forwardRef)((originalProps, ref) => {
|
|
9031
9214
|
const [props, variantProps] = mapPropsVariants(originalProps, toast.variantKeys);
|
|
9032
9215
|
const {
|
|
9033
9216
|
title,
|
|
@@ -9041,9 +9224,9 @@ var Toast = (0, import_react28.forwardRef)((originalProps, ref) => {
|
|
|
9041
9224
|
disableAnimation,
|
|
9042
9225
|
onClose
|
|
9043
9226
|
} = { ...props, ...variantProps };
|
|
9044
|
-
const slots = (0,
|
|
9045
|
-
const toastRef = (0,
|
|
9046
|
-
(0,
|
|
9227
|
+
const slots = (0, import_react26.useMemo)(() => toast({ ...variantProps }), [variantProps]);
|
|
9228
|
+
const toastRef = (0, import_react26.useRef)(null);
|
|
9229
|
+
(0, import_react26.useImperativeHandle)(
|
|
9047
9230
|
ref,
|
|
9048
9231
|
() => ({
|
|
9049
9232
|
getWidth: () => {
|
|
@@ -9054,7 +9237,7 @@ var Toast = (0, import_react28.forwardRef)((originalProps, ref) => {
|
|
|
9054
9237
|
[]
|
|
9055
9238
|
);
|
|
9056
9239
|
const animationClass = (placement == null ? void 0 : placement.includes("top")) ? "animate-slideInFromTop" : "animate-slideInFromBottom";
|
|
9057
|
-
return /* @__PURE__ */ (0,
|
|
9240
|
+
return /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(
|
|
9058
9241
|
"div",
|
|
9059
9242
|
{
|
|
9060
9243
|
ref: toastRef,
|
|
@@ -9066,12 +9249,12 @@ var Toast = (0, import_react28.forwardRef)((originalProps, ref) => {
|
|
|
9066
9249
|
),
|
|
9067
9250
|
style: hasShadow ? { boxShadow: "0px 6px 18px rgba(0, 0, 0, 0.10)" } : {},
|
|
9068
9251
|
children: [
|
|
9069
|
-
/* @__PURE__ */ (0,
|
|
9070
|
-
showIcon && /* @__PURE__ */ (0,
|
|
9071
|
-
/* @__PURE__ */ (0,
|
|
9072
|
-
showCloseButton && /* @__PURE__ */ (0,
|
|
9252
|
+
/* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: slots.wrapper({ class: classNames == null ? void 0 : classNames.wrapper }), children: [
|
|
9253
|
+
showIcon && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Icon_default, { name: originalProps.icon || "info-circle", fill: true, className: "mt-[2px]" }),
|
|
9254
|
+
/* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: slots.title({ class: classNames == null ? void 0 : classNames.title }), children: title }),
|
|
9255
|
+
showCloseButton && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Icon_default, { name: "close", className: "cursor-pointer", onClick: onClose })
|
|
9073
9256
|
] }),
|
|
9074
|
-
content && /* @__PURE__ */ (0,
|
|
9257
|
+
content && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { children: content })
|
|
9075
9258
|
]
|
|
9076
9259
|
}
|
|
9077
9260
|
);
|
|
@@ -9176,7 +9359,7 @@ var toast = tv({
|
|
|
9176
9359
|
});
|
|
9177
9360
|
|
|
9178
9361
|
// src/components/toast/use-toast.tsx
|
|
9179
|
-
var
|
|
9362
|
+
var import_react27 = require("react");
|
|
9180
9363
|
|
|
9181
9364
|
// src/components/toast/toast-utils.ts
|
|
9182
9365
|
var getToastPosition = (placement, width, offset) => {
|
|
@@ -9215,10 +9398,10 @@ var getToastPosition = (placement, width, offset) => {
|
|
|
9215
9398
|
};
|
|
9216
9399
|
|
|
9217
9400
|
// src/components/toast/use-toast.tsx
|
|
9218
|
-
var
|
|
9219
|
-
var ToastContext = (0,
|
|
9401
|
+
var import_jsx_runtime31 = require("react/jsx-runtime");
|
|
9402
|
+
var ToastContext = (0, import_react27.createContext)(null);
|
|
9220
9403
|
var useToast = () => {
|
|
9221
|
-
const context = (0,
|
|
9404
|
+
const context = (0, import_react27.useContext)(ToastContext);
|
|
9222
9405
|
if (!context) {
|
|
9223
9406
|
throw new Error("useToast must be used within a ToastProvider");
|
|
9224
9407
|
}
|
|
@@ -9228,10 +9411,10 @@ var ToastProvider = ({
|
|
|
9228
9411
|
globalOptions,
|
|
9229
9412
|
children
|
|
9230
9413
|
}) => {
|
|
9231
|
-
const [toasts, setToasts] = (0,
|
|
9232
|
-
const [containerStyle, setContainerStyle] = (0,
|
|
9233
|
-
const toastRef = (0,
|
|
9234
|
-
const addToast = (0,
|
|
9414
|
+
const [toasts, setToasts] = (0, import_react27.useState)([]);
|
|
9415
|
+
const [containerStyle, setContainerStyle] = (0, import_react27.useState)({});
|
|
9416
|
+
const toastRef = (0, import_react27.useRef)(null);
|
|
9417
|
+
const addToast = (0, import_react27.useCallback)(
|
|
9235
9418
|
(title, options = {}) => {
|
|
9236
9419
|
const id = Date.now() + Math.floor(Math.random() * 1e5);
|
|
9237
9420
|
const newToast = {
|
|
@@ -9248,11 +9431,11 @@ var ToastProvider = ({
|
|
|
9248
9431
|
},
|
|
9249
9432
|
[globalOptions]
|
|
9250
9433
|
);
|
|
9251
|
-
const removeToast = (0,
|
|
9434
|
+
const removeToast = (0, import_react27.useCallback)((id) => {
|
|
9252
9435
|
setToasts((prevToasts) => prevToasts.filter((toast2) => toast2.id !== id));
|
|
9253
9436
|
}, []);
|
|
9254
9437
|
const contextValue = addToast;
|
|
9255
|
-
(0,
|
|
9438
|
+
(0, import_react27.useEffect)(() => {
|
|
9256
9439
|
var _a;
|
|
9257
9440
|
const width = (globalOptions == null ? void 0 : globalOptions.width) ? globalOptions.width : typeof ((_a = toastRef.current) == null ? void 0 : _a.getWidth) === "function" ? toastRef.current.getWidth() : 300;
|
|
9258
9441
|
const offset = 20;
|
|
@@ -9266,18 +9449,18 @@ var ToastProvider = ({
|
|
|
9266
9449
|
right: right !== void 0 ? `${right}px` : void 0
|
|
9267
9450
|
});
|
|
9268
9451
|
}, [globalOptions == null ? void 0 : globalOptions.placement, globalOptions == null ? void 0 : globalOptions.width]);
|
|
9269
|
-
return /* @__PURE__ */ (0,
|
|
9452
|
+
return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(ToastContext.Provider, { value: contextValue, children: [
|
|
9270
9453
|
children,
|
|
9271
|
-
/* @__PURE__ */ (0,
|
|
9454
|
+
/* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { id: "deepnoid-toast-container", className: "flex flex-col gap-[10px]", style: containerStyle, children: toasts.map((toast2) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(toast_default, { ref: toastRef, onClose: () => removeToast(toast2.id), ...toast2 }, toast2.id)) })
|
|
9272
9455
|
] });
|
|
9273
9456
|
};
|
|
9274
9457
|
|
|
9275
9458
|
// src/components/dateTimePicker/dateTimePicker.tsx
|
|
9276
|
-
var
|
|
9459
|
+
var import_react31 = __toESM(require("react"));
|
|
9277
9460
|
var import_react_dom4 = require("react-dom");
|
|
9278
9461
|
|
|
9279
9462
|
// src/components/dateTimePicker/useDateTimePicker.tsx
|
|
9280
|
-
var
|
|
9463
|
+
var import_react28 = require("react");
|
|
9281
9464
|
|
|
9282
9465
|
// src/components/dateTimePicker/util.ts
|
|
9283
9466
|
var formatDateToString = (date) => {
|
|
@@ -9293,17 +9476,17 @@ var formatStringToDate = (date) => {
|
|
|
9293
9476
|
|
|
9294
9477
|
// src/components/dateTimePicker/useDateTimePicker.tsx
|
|
9295
9478
|
var useDatePicker = ({ initialDate, initialTime }) => {
|
|
9296
|
-
const [selectedDate, setSelectedDate] = (0,
|
|
9479
|
+
const [selectedDate, setSelectedDate] = (0, import_react28.useState)(
|
|
9297
9480
|
initialDate ? formatDateToString(initialDate) : ""
|
|
9298
9481
|
);
|
|
9299
|
-
const [selectedTime, setSelectedTime] = (0,
|
|
9300
|
-
const [targetRect, setTargetRect] = (0,
|
|
9301
|
-
const [popupWidth, setPopupWidth] = (0,
|
|
9302
|
-
const [popupHeight, setPopupHeight] = (0,
|
|
9303
|
-
const [isFocusInput, setIsFocusInput] = (0,
|
|
9304
|
-
const dateInputRef = (0,
|
|
9305
|
-
const datePickerWrapperRef = (0,
|
|
9306
|
-
const datePickerRef = (0,
|
|
9482
|
+
const [selectedTime, setSelectedTime] = (0, import_react28.useState)(initialTime ? initialTime : "");
|
|
9483
|
+
const [targetRect, setTargetRect] = (0, import_react28.useState)(null);
|
|
9484
|
+
const [popupWidth, setPopupWidth] = (0, import_react28.useState)(0);
|
|
9485
|
+
const [popupHeight, setPopupHeight] = (0, import_react28.useState)(0);
|
|
9486
|
+
const [isFocusInput, setIsFocusInput] = (0, import_react28.useState)(false);
|
|
9487
|
+
const dateInputRef = (0, import_react28.useRef)(null);
|
|
9488
|
+
const datePickerWrapperRef = (0, import_react28.useRef)(null);
|
|
9489
|
+
const datePickerRef = (0, import_react28.useRef)(null);
|
|
9307
9490
|
const DATE_PICKER_GAP = 4;
|
|
9308
9491
|
const calculatePositionWithScroll = (targetRect2) => {
|
|
9309
9492
|
if (targetRect2 && popupWidth && popupHeight) {
|
|
@@ -9336,7 +9519,7 @@ var useDatePicker = ({ initialDate, initialTime }) => {
|
|
|
9336
9519
|
const handleBlueInput = () => {
|
|
9337
9520
|
setIsFocusInput(false);
|
|
9338
9521
|
};
|
|
9339
|
-
(0,
|
|
9522
|
+
(0, import_react28.useEffect)(() => {
|
|
9340
9523
|
const onClickOutside = (e) => {
|
|
9341
9524
|
if (datePickerRef.current && !datePickerRef.current.contains(e.target) && datePickerWrapperRef.current && !datePickerWrapperRef.current.contains(e.target)) {
|
|
9342
9525
|
setTargetRect(null);
|
|
@@ -9345,7 +9528,7 @@ var useDatePicker = ({ initialDate, initialTime }) => {
|
|
|
9345
9528
|
window.addEventListener("mousedown", onClickOutside);
|
|
9346
9529
|
return () => window.removeEventListener("mousedown", onClickOutside);
|
|
9347
9530
|
}, []);
|
|
9348
|
-
(0,
|
|
9531
|
+
(0, import_react28.useEffect)(() => {
|
|
9349
9532
|
if (datePickerWrapperRef.current) {
|
|
9350
9533
|
setPopupHeight(datePickerWrapperRef.current.getBoundingClientRect().height);
|
|
9351
9534
|
setPopupWidth(datePickerWrapperRef.current.getBoundingClientRect().width);
|
|
@@ -9370,19 +9553,19 @@ var useDatePicker = ({ initialDate, initialTime }) => {
|
|
|
9370
9553
|
};
|
|
9371
9554
|
|
|
9372
9555
|
// src/components/dateTimePicker/calendar.tsx
|
|
9373
|
-
var
|
|
9374
|
-
var
|
|
9375
|
-
var Calendar = (0,
|
|
9556
|
+
var import_react29 = __toESM(require("react"));
|
|
9557
|
+
var import_jsx_runtime32 = require("react/jsx-runtime");
|
|
9558
|
+
var Calendar = (0, import_react29.forwardRef)((originalProps, ref) => {
|
|
9376
9559
|
const [props, variantProps] = mapPropsVariants(originalProps, calendarStyle.variantKeys);
|
|
9377
9560
|
const { selectedDate, classNames, highlightWeekend = true, onChangeDate, ...inputProps } = props;
|
|
9378
|
-
const [currentDate, setCurrentDate] = (0,
|
|
9561
|
+
const [currentDate, setCurrentDate] = (0, import_react29.useState)(selectedDate ? new Date(selectedDate) : /* @__PURE__ */ new Date());
|
|
9379
9562
|
const daysOfWeek = ["S", "M", "T", "W", "T", "F", "S"];
|
|
9380
|
-
(0,
|
|
9563
|
+
(0, import_react29.useEffect)(() => {
|
|
9381
9564
|
if (selectedDate) {
|
|
9382
9565
|
setCurrentDate(new Date(selectedDate));
|
|
9383
9566
|
}
|
|
9384
9567
|
}, [selectedDate]);
|
|
9385
|
-
const getCalendarDates = (0,
|
|
9568
|
+
const getCalendarDates = (0, import_react29.useCallback)(() => {
|
|
9386
9569
|
const year = currentDate.getFullYear();
|
|
9387
9570
|
const month = currentDate.getMonth();
|
|
9388
9571
|
const firstDayOfMonth = new Date(year, month, 1).getDay();
|
|
@@ -9428,17 +9611,17 @@ var Calendar = (0, import_react31.forwardRef)((originalProps, ref) => {
|
|
|
9428
9611
|
onChangeDate(formatted);
|
|
9429
9612
|
}
|
|
9430
9613
|
};
|
|
9431
|
-
(0,
|
|
9614
|
+
(0, import_react29.useImperativeHandle)(ref, () => ({
|
|
9432
9615
|
getSelectedDate: () => selectedDate
|
|
9433
9616
|
}));
|
|
9434
|
-
const slots = (0,
|
|
9435
|
-
const getBaseProps = (0,
|
|
9617
|
+
const slots = (0, import_react29.useMemo)(() => calendarStyle({ ...variantProps }), [variantProps]);
|
|
9618
|
+
const getBaseProps = (0, import_react29.useCallback)(
|
|
9436
9619
|
() => ({
|
|
9437
9620
|
className: `${slots.base({ class: classNames == null ? void 0 : classNames.base })}`
|
|
9438
9621
|
}),
|
|
9439
9622
|
[slots, classNames]
|
|
9440
9623
|
);
|
|
9441
|
-
const getDateTitleProps = (0,
|
|
9624
|
+
const getDateTitleProps = (0, import_react29.useCallback)(
|
|
9442
9625
|
(index) => {
|
|
9443
9626
|
return {
|
|
9444
9627
|
className: `${slots.dateTitle({
|
|
@@ -9450,7 +9633,7 @@ var Calendar = (0, import_react31.forwardRef)((originalProps, ref) => {
|
|
|
9450
9633
|
},
|
|
9451
9634
|
[slots, classNames, highlightWeekend]
|
|
9452
9635
|
);
|
|
9453
|
-
const getDateProps = (0,
|
|
9636
|
+
const getDateProps = (0, import_react29.useCallback)(
|
|
9454
9637
|
(dateObj) => {
|
|
9455
9638
|
const today = /* @__PURE__ */ new Date();
|
|
9456
9639
|
const isToday = today.getDate() === dateObj.date && today.getMonth() === currentDate.getMonth() && today.getFullYear() === currentDate.getFullYear();
|
|
@@ -9472,18 +9655,18 @@ var Calendar = (0, import_react31.forwardRef)((originalProps, ref) => {
|
|
|
9472
9655
|
[slots, classNames, selectedDate, currentDate, highlightWeekend]
|
|
9473
9656
|
);
|
|
9474
9657
|
const calendarDates = getCalendarDates();
|
|
9475
|
-
return /* @__PURE__ */ (0,
|
|
9476
|
-
/* @__PURE__ */ (0,
|
|
9477
|
-
/* @__PURE__ */ (0,
|
|
9478
|
-
/* @__PURE__ */ (0,
|
|
9479
|
-
/* @__PURE__ */ (0,
|
|
9658
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_jsx_runtime32.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)("div", { ...getBaseProps(), children: [
|
|
9659
|
+
/* @__PURE__ */ (0, import_jsx_runtime32.jsxs)("div", { className: "calendar-header flex justify-between items-center mb-4", children: [
|
|
9660
|
+
/* @__PURE__ */ (0, import_jsx_runtime32.jsx)(Icon_default, { name: "brace-left", size: "md", className: "cursor-pointer", onClick: handlePrevMonth }),
|
|
9661
|
+
/* @__PURE__ */ (0, import_jsx_runtime32.jsx)("span", { className: "text-h6 font-semibold", children: currentDate.toLocaleString("default", { year: "numeric", month: "2-digit" }) }),
|
|
9662
|
+
/* @__PURE__ */ (0, import_jsx_runtime32.jsx)(Icon_default, { name: "brace-right", size: "md", className: "cursor-pointer", onClick: handleNextMonth })
|
|
9480
9663
|
] }),
|
|
9481
|
-
/* @__PURE__ */ (0,
|
|
9482
|
-
/* @__PURE__ */ (0,
|
|
9664
|
+
/* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { className: "grid grid-cols-7 gap-2 text-center", children: daysOfWeek.map((day, index) => /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { ...getDateTitleProps(index), children: day }, `${day}-${index}`)) }),
|
|
9665
|
+
/* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { className: "grid grid-cols-7 gap-[5px] text-center mt-2", children: calendarDates.map((week, weekIndex) => {
|
|
9483
9666
|
const hasCurrentMonthDates = week.some((dateObj) => dateObj.currentMonth);
|
|
9484
9667
|
if (!hasCurrentMonthDates) return null;
|
|
9485
|
-
return /* @__PURE__ */ (0,
|
|
9486
|
-
return /* @__PURE__ */ (0,
|
|
9668
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_react29.default.Fragment, { children: week.map((dateObj, index) => {
|
|
9669
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { ...getDateProps(dateObj), children: dateObj.date }, index);
|
|
9487
9670
|
}) }, weekIndex);
|
|
9488
9671
|
}) })
|
|
9489
9672
|
] }) });
|
|
@@ -9554,22 +9737,22 @@ var calendarStyle = tv({
|
|
|
9554
9737
|
});
|
|
9555
9738
|
|
|
9556
9739
|
// src/components/dateTimePicker/timePicker.tsx
|
|
9557
|
-
var
|
|
9558
|
-
var
|
|
9740
|
+
var import_react30 = require("react");
|
|
9741
|
+
var import_jsx_runtime33 = require("react/jsx-runtime");
|
|
9559
9742
|
var TimePicker = ({ color = "primary", selectedTime, isFocusInput, onChangeTime }) => {
|
|
9560
9743
|
const TOTAL_HOURS = 12;
|
|
9561
9744
|
const TOTAL_MINUTES = 60;
|
|
9562
9745
|
const ITEM_HEIGHT = 30;
|
|
9563
9746
|
const PERIODS = ["AM", "PM"];
|
|
9564
|
-
const [selectedHour, setSelectedHour] = (0,
|
|
9565
|
-
const [selectedMinute, setSelectedMinute] = (0,
|
|
9566
|
-
const [selectedPeriod, setSelectedPeriod] = (0,
|
|
9567
|
-
const hourRef = (0,
|
|
9568
|
-
const minuteRef = (0,
|
|
9569
|
-
const periodRef = (0,
|
|
9747
|
+
const [selectedHour, setSelectedHour] = (0, import_react30.useState)("01");
|
|
9748
|
+
const [selectedMinute, setSelectedMinute] = (0, import_react30.useState)("00");
|
|
9749
|
+
const [selectedPeriod, setSelectedPeriod] = (0, import_react30.useState)("AM");
|
|
9750
|
+
const hourRef = (0, import_react30.useRef)(null);
|
|
9751
|
+
const minuteRef = (0, import_react30.useRef)(null);
|
|
9752
|
+
const periodRef = (0, import_react30.useRef)(null);
|
|
9570
9753
|
const hoursArray = [...Array(TOTAL_HOURS).keys()].map((i) => (i + 1).toString().padStart(2, "0"));
|
|
9571
9754
|
const minutesArray = [...Array(TOTAL_MINUTES).keys()].map((i) => i.toString().padStart(2, "0"));
|
|
9572
|
-
(0,
|
|
9755
|
+
(0, import_react30.useEffect)(() => {
|
|
9573
9756
|
if (selectedTime) {
|
|
9574
9757
|
const { formattedHour, minute, period } = parseAndFormatTime(selectedTime);
|
|
9575
9758
|
setSelectedHour(formattedHour);
|
|
@@ -9580,7 +9763,7 @@ var TimePicker = ({ color = "primary", selectedTime, isFocusInput, onChangeTime
|
|
|
9580
9763
|
scrollToSelectedTime();
|
|
9581
9764
|
}
|
|
9582
9765
|
}, [selectedTime, isFocusInput]);
|
|
9583
|
-
(0,
|
|
9766
|
+
(0, import_react30.useEffect)(() => {
|
|
9584
9767
|
scrollToSelectedTime();
|
|
9585
9768
|
}, []);
|
|
9586
9769
|
const parseAndFormatTime = (time) => {
|
|
@@ -9617,8 +9800,8 @@ var TimePicker = ({ color = "primary", selectedTime, isFocusInput, onChangeTime
|
|
|
9617
9800
|
onChangeTime(formattedTime);
|
|
9618
9801
|
}
|
|
9619
9802
|
};
|
|
9620
|
-
return /* @__PURE__ */ (0,
|
|
9621
|
-
/* @__PURE__ */ (0,
|
|
9803
|
+
return /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("div", { className: "flex h-[200px] p-[10px] gap-[5px] border border-neutral-main rounded-md bg-background shadow-lg", children: [
|
|
9804
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)(list_default, { ref: periodRef, classNames: { base: "overflow-y-auto scrollbar-hide" }, children: PERIODS.map((period, index) => /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
9622
9805
|
listItem_default,
|
|
9623
9806
|
{
|
|
9624
9807
|
color,
|
|
@@ -9632,7 +9815,7 @@ var TimePicker = ({ color = "primary", selectedTime, isFocusInput, onChangeTime
|
|
|
9632
9815
|
},
|
|
9633
9816
|
`${period}-${index}`
|
|
9634
9817
|
)) }),
|
|
9635
|
-
/* @__PURE__ */ (0,
|
|
9818
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)(list_default, { ref: hourRef, classNames: { base: "overflow-y-auto scrollbar-hide" }, children: hoursArray.map((hour, index) => /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
9636
9819
|
listItem_default,
|
|
9637
9820
|
{
|
|
9638
9821
|
color,
|
|
@@ -9646,7 +9829,7 @@ var TimePicker = ({ color = "primary", selectedTime, isFocusInput, onChangeTime
|
|
|
9646
9829
|
},
|
|
9647
9830
|
`${hour}-${index}`
|
|
9648
9831
|
)) }),
|
|
9649
|
-
/* @__PURE__ */ (0,
|
|
9832
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)(list_default, { ref: minuteRef, classNames: { base: "overflow-y-auto scrollbar-hide" }, children: minutesArray.map((minute, index) => /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
9650
9833
|
listItem_default,
|
|
9651
9834
|
{
|
|
9652
9835
|
color,
|
|
@@ -9665,8 +9848,8 @@ var TimePicker = ({ color = "primary", selectedTime, isFocusInput, onChangeTime
|
|
|
9665
9848
|
var timePicker_default = TimePicker;
|
|
9666
9849
|
|
|
9667
9850
|
// src/components/dateTimePicker/dateTimePicker.tsx
|
|
9668
|
-
var
|
|
9669
|
-
var DatePicker = (0,
|
|
9851
|
+
var import_jsx_runtime34 = require("react/jsx-runtime");
|
|
9852
|
+
var DatePicker = (0, import_react31.forwardRef)((originalProps, ref) => {
|
|
9670
9853
|
const [props, variantProps] = mapPropsVariants(originalProps, dateTimePickerStyle.variantKeys);
|
|
9671
9854
|
const {
|
|
9672
9855
|
classNames,
|
|
@@ -9680,7 +9863,7 @@ var DatePicker = (0, import_react33.forwardRef)((originalProps, ref) => {
|
|
|
9680
9863
|
onChangeTime,
|
|
9681
9864
|
...inputProps
|
|
9682
9865
|
} = props;
|
|
9683
|
-
const slots = (0,
|
|
9866
|
+
const slots = (0, import_react31.useMemo)(() => dateTimePickerStyle({ ...variantProps }), [variantProps]);
|
|
9684
9867
|
const {
|
|
9685
9868
|
selectedDate,
|
|
9686
9869
|
selectedTime,
|
|
@@ -9701,32 +9884,32 @@ var DatePicker = (0, import_react33.forwardRef)((originalProps, ref) => {
|
|
|
9701
9884
|
initialTime: typeof value === "string" ? value : void 0
|
|
9702
9885
|
});
|
|
9703
9886
|
const position = targetRect ? calculatePositionWithScroll(targetRect) : null;
|
|
9704
|
-
const getBaseProps = (0,
|
|
9887
|
+
const getBaseProps = (0, import_react31.useCallback)(
|
|
9705
9888
|
() => ({
|
|
9706
9889
|
className: slots.base({ class: classNames == null ? void 0 : classNames.base })
|
|
9707
9890
|
}),
|
|
9708
9891
|
[slots, classNames]
|
|
9709
9892
|
);
|
|
9710
|
-
const getLabelProps = (0,
|
|
9893
|
+
const getLabelProps = (0, import_react31.useCallback)(
|
|
9711
9894
|
() => ({
|
|
9712
9895
|
className: slots.label({ class: classNames == null ? void 0 : classNames.label })
|
|
9713
9896
|
}),
|
|
9714
9897
|
[slots, classNames]
|
|
9715
9898
|
);
|
|
9716
|
-
const getInnerWrapperProps = (0,
|
|
9899
|
+
const getInnerWrapperProps = (0, import_react31.useCallback)(
|
|
9717
9900
|
() => ({
|
|
9718
9901
|
className: slots.innerWrapper({ class: classNames == null ? void 0 : classNames.innerWrapper })
|
|
9719
9902
|
}),
|
|
9720
9903
|
[slots, classNames]
|
|
9721
9904
|
);
|
|
9722
|
-
const getInputWrapperProps = (0,
|
|
9905
|
+
const getInputWrapperProps = (0, import_react31.useCallback)(
|
|
9723
9906
|
() => ({
|
|
9724
9907
|
className: slots.inputWrapper({ class: classNames == null ? void 0 : classNames.inputWrapper }),
|
|
9725
9908
|
ref: datePickerRef
|
|
9726
9909
|
}),
|
|
9727
9910
|
[slots, classNames]
|
|
9728
9911
|
);
|
|
9729
|
-
const getInputProps = (0,
|
|
9912
|
+
const getInputProps = (0, import_react31.useCallback)(
|
|
9730
9913
|
() => ({
|
|
9731
9914
|
...inputProps,
|
|
9732
9915
|
ref: ref || dateInputRef,
|
|
@@ -9757,33 +9940,33 @@ var DatePicker = (0, import_react33.forwardRef)((originalProps, ref) => {
|
|
|
9757
9940
|
}),
|
|
9758
9941
|
[inputProps, ref, dateInputRef, slots, classNames == null ? void 0 : classNames.input, selectedDate, selectedTime, type, value]
|
|
9759
9942
|
);
|
|
9760
|
-
const getContentProps = (0,
|
|
9943
|
+
const getContentProps = (0, import_react31.useCallback)(
|
|
9761
9944
|
() => ({
|
|
9762
9945
|
className: slots.content({ class: classNames == null ? void 0 : classNames.content }),
|
|
9763
9946
|
size: originalProps.size
|
|
9764
9947
|
}),
|
|
9765
9948
|
[slots, classNames, originalProps.size]
|
|
9766
9949
|
);
|
|
9767
|
-
const getErrorMessageProps = (0,
|
|
9950
|
+
const getErrorMessageProps = (0, import_react31.useCallback)(
|
|
9768
9951
|
() => ({
|
|
9769
9952
|
className: slots.errorMessage({ class: classNames == null ? void 0 : classNames.errorMessage })
|
|
9770
9953
|
}),
|
|
9771
9954
|
[slots, classNames]
|
|
9772
9955
|
);
|
|
9773
9956
|
const renderStartContent = () => {
|
|
9774
|
-
if (
|
|
9957
|
+
if (import_react31.default.isValidElement(startContent)) {
|
|
9775
9958
|
const existingProps = startContent.props;
|
|
9776
9959
|
const mergedProps = {
|
|
9777
9960
|
...getContentProps(),
|
|
9778
9961
|
className: `${getContentProps().className || ""} ${existingProps.className || ""}`.trim()
|
|
9779
9962
|
};
|
|
9780
|
-
return
|
|
9963
|
+
return import_react31.default.cloneElement(startContent, mergedProps);
|
|
9781
9964
|
} else {
|
|
9782
9965
|
const contentProps = getContentProps();
|
|
9783
|
-
return /* @__PURE__ */ (0,
|
|
9966
|
+
return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { ...contentProps, children: startContent });
|
|
9784
9967
|
}
|
|
9785
9968
|
};
|
|
9786
|
-
const renderDateTimePickerIcon = () => /* @__PURE__ */ (0,
|
|
9969
|
+
const renderDateTimePickerIcon = () => /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { ...getContentProps(), onClick: handleToggleDatePicker, children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
|
|
9787
9970
|
Icon_default,
|
|
9788
9971
|
{
|
|
9789
9972
|
name: type === "time" ? "clock" : "calendar",
|
|
@@ -9793,18 +9976,18 @@ var DatePicker = (0, import_react33.forwardRef)((originalProps, ref) => {
|
|
|
9793
9976
|
}
|
|
9794
9977
|
) });
|
|
9795
9978
|
const renderContentWithIcon = () => {
|
|
9796
|
-
if (
|
|
9979
|
+
if (import_react31.default.isValidElement(endContent)) {
|
|
9797
9980
|
const existingProps = endContent.props;
|
|
9798
9981
|
const mergedProps = {
|
|
9799
9982
|
...getContentProps(),
|
|
9800
9983
|
className: `${getContentProps().className || ""} ${existingProps.className || ""}`.trim()
|
|
9801
9984
|
};
|
|
9802
|
-
return
|
|
9985
|
+
return import_react31.default.cloneElement(endContent, mergedProps);
|
|
9803
9986
|
} else if (errorMessage) {
|
|
9804
9987
|
const iconProps = { ...getContentProps(), className: getContentProps().className };
|
|
9805
|
-
return /* @__PURE__ */ (0,
|
|
9988
|
+
return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { ...iconProps, children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Icon_default, { name: "exclamation-circle", fill: true, size: originalProps.size }) });
|
|
9806
9989
|
} else {
|
|
9807
|
-
return /* @__PURE__ */ (0,
|
|
9990
|
+
return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_jsx_runtime34.Fragment, {});
|
|
9808
9991
|
}
|
|
9809
9992
|
};
|
|
9810
9993
|
const renderEndContent = () => {
|
|
@@ -9819,20 +10002,20 @@ var DatePicker = (0, import_react33.forwardRef)((originalProps, ref) => {
|
|
|
9819
10002
|
return renderContentWithIcon();
|
|
9820
10003
|
}
|
|
9821
10004
|
};
|
|
9822
|
-
return /* @__PURE__ */ (0,
|
|
9823
|
-
/* @__PURE__ */ (0,
|
|
9824
|
-
label && /* @__PURE__ */ (0,
|
|
9825
|
-
/* @__PURE__ */ (0,
|
|
9826
|
-
/* @__PURE__ */ (0,
|
|
10005
|
+
return /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(import_jsx_runtime34.Fragment, { children: [
|
|
10006
|
+
/* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { ...getBaseProps(), children: [
|
|
10007
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("label", { ...getLabelProps(), children: label }),
|
|
10008
|
+
/* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { ...getInnerWrapperProps(), children: [
|
|
10009
|
+
/* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { ...getInputWrapperProps(), children: [
|
|
9827
10010
|
startContent && renderStartContent(),
|
|
9828
|
-
/* @__PURE__ */ (0,
|
|
10011
|
+
/* @__PURE__ */ (0, import_jsx_runtime34.jsx)("input", { ...getInputProps() }),
|
|
9829
10012
|
renderEndContent()
|
|
9830
10013
|
] }),
|
|
9831
|
-
errorMessage && /* @__PURE__ */ (0,
|
|
10014
|
+
errorMessage && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("p", { ...getErrorMessageProps(), children: errorMessage })
|
|
9832
10015
|
] })
|
|
9833
10016
|
] }),
|
|
9834
|
-
targetRect && /* @__PURE__ */ (0,
|
|
9835
|
-
/* @__PURE__ */ (0,
|
|
10017
|
+
targetRect && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_jsx_runtime34.Fragment, { children: (0, import_react_dom4.createPortal)(
|
|
10018
|
+
/* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
|
|
9836
10019
|
"div",
|
|
9837
10020
|
{
|
|
9838
10021
|
ref: datePickerWrapperRef,
|
|
@@ -9843,7 +10026,7 @@ var DatePicker = (0, import_react33.forwardRef)((originalProps, ref) => {
|
|
|
9843
10026
|
zIndex: 1e3
|
|
9844
10027
|
},
|
|
9845
10028
|
children: [
|
|
9846
|
-
type === "date" && /* @__PURE__ */ (0,
|
|
10029
|
+
type === "date" && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
|
|
9847
10030
|
calendar_default,
|
|
9848
10031
|
{
|
|
9849
10032
|
color: originalProps.color,
|
|
@@ -9855,7 +10038,7 @@ var DatePicker = (0, import_react33.forwardRef)((originalProps, ref) => {
|
|
|
9855
10038
|
}
|
|
9856
10039
|
}
|
|
9857
10040
|
),
|
|
9858
|
-
type === "time" && /* @__PURE__ */ (0,
|
|
10041
|
+
type === "time" && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
|
|
9859
10042
|
timePicker_default,
|
|
9860
10043
|
{
|
|
9861
10044
|
color: originalProps.color,
|
|
@@ -10005,20 +10188,20 @@ var dateTimePickerStyle = tv({
|
|
|
10005
10188
|
});
|
|
10006
10189
|
|
|
10007
10190
|
// src/components/tree/tree.tsx
|
|
10008
|
-
var
|
|
10009
|
-
var
|
|
10010
|
-
var TreeNodeItem = (0,
|
|
10191
|
+
var import_react32 = require("react");
|
|
10192
|
+
var import_jsx_runtime35 = require("react/jsx-runtime");
|
|
10193
|
+
var TreeNodeItem = (0, import_react32.forwardRef)(
|
|
10011
10194
|
({ node, depth, fileIcon, selectedId, isLoading, classNames, onExpand }, ref) => {
|
|
10012
|
-
const [isOpen, setIsOpen] = (0,
|
|
10013
|
-
const [children, setChildren] = (0,
|
|
10014
|
-
const [isLoadingChildren, setIsLoadingChildren] = (0,
|
|
10015
|
-
const slots = (0,
|
|
10016
|
-
const hasMore = (0,
|
|
10195
|
+
const [isOpen, setIsOpen] = (0, import_react32.useState)(false);
|
|
10196
|
+
const [children, setChildren] = (0, import_react32.useState)(node.children);
|
|
10197
|
+
const [isLoadingChildren, setIsLoadingChildren] = (0, import_react32.useState)(false);
|
|
10198
|
+
const slots = (0, import_react32.useMemo)(() => treeStyle(), []);
|
|
10199
|
+
const hasMore = (0, import_react32.useMemo)(() => {
|
|
10017
10200
|
if (node.isLeaf) return false;
|
|
10018
10201
|
if (Array.isArray(children)) return children.length > 0;
|
|
10019
10202
|
return typeof onExpand === "function";
|
|
10020
10203
|
}, [node.isLeaf, children, onExpand]);
|
|
10021
|
-
const toggleOpen = (0,
|
|
10204
|
+
const toggleOpen = (0, import_react32.useCallback)(async () => {
|
|
10022
10205
|
if (!isOpen && !children && onExpand && !node.isLeaf) {
|
|
10023
10206
|
setIsLoadingChildren(true);
|
|
10024
10207
|
try {
|
|
@@ -10043,7 +10226,7 @@ var TreeNodeItem = (0, import_react34.forwardRef)(
|
|
|
10043
10226
|
(_a = node.onRightClick) == null ? void 0 : _a.call(node, e);
|
|
10044
10227
|
};
|
|
10045
10228
|
const marginClass = depth > 1 ? hasMore ? "ml-[30px]" : "ml-[55px]" : hasMore ? "" : "ml-[25px]";
|
|
10046
|
-
return /* @__PURE__ */ (0,
|
|
10229
|
+
return /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(
|
|
10047
10230
|
"div",
|
|
10048
10231
|
{
|
|
10049
10232
|
ref,
|
|
@@ -10053,14 +10236,18 @@ var TreeNodeItem = (0, import_react34.forwardRef)(
|
|
|
10053
10236
|
isLoading ? "-translate-y-2 opacity-0" : "translate-y-0 opacity-100"
|
|
10054
10237
|
),
|
|
10055
10238
|
children: [
|
|
10056
|
-
/* @__PURE__ */ (0,
|
|
10239
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(
|
|
10057
10240
|
"div",
|
|
10058
10241
|
{
|
|
10059
|
-
className: clsx(
|
|
10242
|
+
className: clsx(
|
|
10243
|
+
slots.node({ class: classNames == null ? void 0 : classNames.node }),
|
|
10244
|
+
slots.clickable({ class: classNames == null ? void 0 : classNames.clickable }),
|
|
10245
|
+
selectedId == node.id ? "bg-neutral-soft" : ""
|
|
10246
|
+
),
|
|
10060
10247
|
onClick: handleClick,
|
|
10061
10248
|
onContextMenu: handleRightClick,
|
|
10062
10249
|
children: [
|
|
10063
|
-
hasMore && /* @__PURE__ */ (0,
|
|
10250
|
+
hasMore && /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
10064
10251
|
Icon_default,
|
|
10065
10252
|
{
|
|
10066
10253
|
name: "right-chevron",
|
|
@@ -10071,13 +10258,13 @@ var TreeNodeItem = (0, import_react34.forwardRef)(
|
|
|
10071
10258
|
}
|
|
10072
10259
|
),
|
|
10073
10260
|
fileIcon,
|
|
10074
|
-
node.
|
|
10261
|
+
node.content
|
|
10075
10262
|
]
|
|
10076
10263
|
}
|
|
10077
10264
|
),
|
|
10078
|
-
isOpen && /* @__PURE__ */ (0,
|
|
10079
|
-
isLoadingChildren && /* @__PURE__ */ (0,
|
|
10080
|
-
children == null ? void 0 : children.map((child) => /* @__PURE__ */ (0,
|
|
10265
|
+
isOpen && /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { children: [
|
|
10266
|
+
isLoadingChildren && /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: "text-neutral py-1 text-sm", children: "loading..." }),
|
|
10267
|
+
children == null ? void 0 : children.map((child) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
10081
10268
|
TreeNodeItem,
|
|
10082
10269
|
{
|
|
10083
10270
|
node: child,
|
|
@@ -10106,15 +10293,35 @@ var Tree = ({
|
|
|
10106
10293
|
classNames,
|
|
10107
10294
|
onExpand
|
|
10108
10295
|
}) => {
|
|
10109
|
-
const slots = (0,
|
|
10110
|
-
|
|
10111
|
-
|
|
10112
|
-
|
|
10113
|
-
|
|
10114
|
-
|
|
10115
|
-
|
|
10116
|
-
|
|
10117
|
-
|
|
10296
|
+
const slots = (0, import_react32.useMemo)(() => treeStyle(), []);
|
|
10297
|
+
const handleClick = (e) => {
|
|
10298
|
+
var _a;
|
|
10299
|
+
(_a = group.onClick) == null ? void 0 : _a.call(group, e);
|
|
10300
|
+
};
|
|
10301
|
+
const handleRightClick = (e) => {
|
|
10302
|
+
var _a;
|
|
10303
|
+
e.preventDefault();
|
|
10304
|
+
(_a = group.onRightClick) == null ? void 0 : _a.call(group, e);
|
|
10305
|
+
};
|
|
10306
|
+
return /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: slots.base({ class: classNames == null ? void 0 : classNames.base }), children: [
|
|
10307
|
+
headerContent && /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { children: headerContent }),
|
|
10308
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: slots.wrapper({ class: classNames == null ? void 0 : classNames.wrapper }), children: [
|
|
10309
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(
|
|
10310
|
+
"div",
|
|
10311
|
+
{
|
|
10312
|
+
className: clsx(
|
|
10313
|
+
slots.node({ class: classNames == null ? void 0 : classNames.node }),
|
|
10314
|
+
group.onClick || group.onRightClick ? slots.clickable({ class: classNames == null ? void 0 : classNames.clickable }) : ""
|
|
10315
|
+
),
|
|
10316
|
+
onClick: handleClick,
|
|
10317
|
+
onContextMenu: handleRightClick,
|
|
10318
|
+
children: [
|
|
10319
|
+
groupIcon,
|
|
10320
|
+
group.content
|
|
10321
|
+
]
|
|
10322
|
+
}
|
|
10323
|
+
),
|
|
10324
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { children: group.data.map((node) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
10118
10325
|
TreeNodeItem,
|
|
10119
10326
|
{
|
|
10120
10327
|
node,
|
|
@@ -10136,7 +10343,6 @@ var treeStyle = tv({
|
|
|
10136
10343
|
slots: {
|
|
10137
10344
|
base: ["border", "border-neutral-light", "rounded-xl", "p-[20px]", "flex", "flex-col", "gap-[20px]", "select-none"],
|
|
10138
10345
|
wrapper: ["flex", "flex-col", "gap-[5px]"],
|
|
10139
|
-
group: ["flex", "items-center", "gap-[5px]", "text-md", "font-bold", "text-body-foreground", "p-[5px]"],
|
|
10140
10346
|
node: [
|
|
10141
10347
|
"flex",
|
|
10142
10348
|
"items-center",
|
|
@@ -10144,18 +10350,17 @@ var treeStyle = tv({
|
|
|
10144
10350
|
"text-md",
|
|
10145
10351
|
"font-bold",
|
|
10146
10352
|
"text-body-foreground",
|
|
10147
|
-
"hover:bg-neutral-soft",
|
|
10148
|
-
"p-[5px]",
|
|
10149
10353
|
"rounded-[5px]",
|
|
10150
|
-
"
|
|
10151
|
-
]
|
|
10354
|
+
"p-[5px]"
|
|
10355
|
+
],
|
|
10356
|
+
clickable: ["hover:bg-neutral-soft", "cursor-pointer"]
|
|
10152
10357
|
}
|
|
10153
10358
|
});
|
|
10154
10359
|
|
|
10155
10360
|
// src/components/fileUpload/fileUpload.tsx
|
|
10156
|
-
var
|
|
10157
|
-
var
|
|
10158
|
-
var
|
|
10361
|
+
var import_react33 = require("react");
|
|
10362
|
+
var import_tailwind_variants30 = require("tailwind-variants");
|
|
10363
|
+
var import_jsx_runtime36 = require("react/jsx-runtime");
|
|
10159
10364
|
function FileUpload({
|
|
10160
10365
|
buttonText,
|
|
10161
10366
|
maxSizeMB = 10,
|
|
@@ -10168,11 +10373,11 @@ function FileUpload({
|
|
|
10168
10373
|
showProgress,
|
|
10169
10374
|
classNames
|
|
10170
10375
|
}) {
|
|
10171
|
-
const fileInputRef = (0,
|
|
10172
|
-
const uploadIntervalRef = (0,
|
|
10173
|
-
const [file, setFile] = (0,
|
|
10174
|
-
const [uploadProgress, setUploadProgress] = (0,
|
|
10175
|
-
const [errorMessage, setErrorMessage] = (0,
|
|
10376
|
+
const fileInputRef = (0, import_react33.useRef)(null);
|
|
10377
|
+
const uploadIntervalRef = (0, import_react33.useRef)(null);
|
|
10378
|
+
const [file, setFile] = (0, import_react33.useState)(null);
|
|
10379
|
+
const [uploadProgress, setUploadProgress] = (0, import_react33.useState)(0);
|
|
10380
|
+
const [errorMessage, setErrorMessage] = (0, import_react33.useState)("");
|
|
10176
10381
|
const slots = fileUploadStyle();
|
|
10177
10382
|
const handleButtonClick = () => {
|
|
10178
10383
|
var _a;
|
|
@@ -10222,18 +10427,18 @@ function FileUpload({
|
|
|
10222
10427
|
setUploadProgress(0);
|
|
10223
10428
|
setErrorMessage("");
|
|
10224
10429
|
};
|
|
10225
|
-
(0,
|
|
10430
|
+
(0, import_react33.useEffect)(() => {
|
|
10226
10431
|
return () => {
|
|
10227
10432
|
if (uploadIntervalRef.current) {
|
|
10228
10433
|
clearInterval(uploadIntervalRef.current);
|
|
10229
10434
|
}
|
|
10230
10435
|
};
|
|
10231
10436
|
}, []);
|
|
10232
|
-
return /* @__PURE__ */ (0,
|
|
10233
|
-
/* @__PURE__ */ (0,
|
|
10234
|
-
/* @__PURE__ */ (0,
|
|
10235
|
-
/* @__PURE__ */ (0,
|
|
10236
|
-
file && /* @__PURE__ */ (0,
|
|
10437
|
+
return /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)("div", { className: slots.base({ class: classNames == null ? void 0 : classNames.base }), children: [
|
|
10438
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsxs)("div", { className: slots.container({ class: classNames == null ? void 0 : classNames.container }), children: [
|
|
10439
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsxs)("div", { className: slots.inputWrapper(), children: [
|
|
10440
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)(input_default, { name: "file", readOnly: true, variant: "outline", full: true, placeholder, defaultValue: file == null ? void 0 : file.name }),
|
|
10441
|
+
file && /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
|
|
10237
10442
|
icon_button_default,
|
|
10238
10443
|
{
|
|
10239
10444
|
name: "close",
|
|
@@ -10245,17 +10450,17 @@ function FileUpload({
|
|
|
10245
10450
|
}
|
|
10246
10451
|
)
|
|
10247
10452
|
] }),
|
|
10248
|
-
/* @__PURE__ */ (0,
|
|
10249
|
-
/* @__PURE__ */ (0,
|
|
10453
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)(button_default, { type: "button", variant: "outline", onClick: handleButtonClick, children: buttonText }),
|
|
10454
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)("input", { ref: fileInputRef, type: "file", hidden: true, accept: accept.join(","), onChange: handleFileChange })
|
|
10250
10455
|
] }),
|
|
10251
|
-
showProgress && file && uploadProgress < 100 && /* @__PURE__ */ (0,
|
|
10252
|
-
!errorMessage && helperMessage && /* @__PURE__ */ (0,
|
|
10253
|
-
errorMessage && /* @__PURE__ */ (0,
|
|
10456
|
+
showProgress && file && uploadProgress < 100 && /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { className: slots.progressBarContainer(), children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { className: slots.progressBar(), style: { width: `${uploadProgress}%` } }) }),
|
|
10457
|
+
!errorMessage && helperMessage && /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("p", { className: slots.helperMessage(), children: helperMessage }),
|
|
10458
|
+
errorMessage && /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("p", { className: slots.errorMessage(), children: errorMessage })
|
|
10254
10459
|
] });
|
|
10255
10460
|
}
|
|
10256
10461
|
FileUpload.displayName = "FileUpload";
|
|
10257
10462
|
var fileUpload_default = FileUpload;
|
|
10258
|
-
var fileUploadStyle = (0,
|
|
10463
|
+
var fileUploadStyle = (0, import_tailwind_variants30.tv)({
|
|
10259
10464
|
slots: {
|
|
10260
10465
|
base: ["flex", "flex-col", "gap-[5px]"],
|
|
10261
10466
|
container: ["flex", "items-center", "gap-[10px]"],
|
|
@@ -10289,6 +10494,7 @@ var fileUploadStyle = (0, import_tailwind_variants29.tv)({
|
|
|
10289
10494
|
Radio,
|
|
10290
10495
|
ScrollArea,
|
|
10291
10496
|
Select,
|
|
10497
|
+
Skeleton,
|
|
10292
10498
|
Switch,
|
|
10293
10499
|
Table,
|
|
10294
10500
|
Tabs,
|