@ctlyst.id/internal-ui 3.2.1 → 3.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +2 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +105 -104
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +107 -107
- package/dist/index.mjs.map +1 -1
- package/package.json +7 -5
package/dist/index.d.mts
CHANGED
@@ -170,6 +170,7 @@ interface Props {
|
|
170
170
|
leftHelperText?: string | ReactNode;
|
171
171
|
rightHelperText?: string | ReactNode;
|
172
172
|
isRequired?: boolean;
|
173
|
+
isDisabled?: boolean;
|
173
174
|
boxProps?: FormControlProps;
|
174
175
|
}
|
175
176
|
type FieldProps<T = unknown> = Props & T;
|
@@ -595,7 +596,7 @@ declare const CHECKBOX_STATE: {
|
|
595
596
|
readonly INDETERMINATE: 1;
|
596
597
|
readonly CHECKED: 2;
|
597
598
|
};
|
598
|
-
declare const getSelectAllCheckboxState: (totalSelected: number, totalOption: number) => 0 |
|
599
|
+
declare const getSelectAllCheckboxState: (totalSelected: number, totalOption: number) => 0 | 1 | 2;
|
599
600
|
interface SelectWithCheckboxBaseProps<T = OptionGroup<never> | OptionMultiGroup<never>, IsMulti extends boolean = boolean> extends Props$1<T, IsMulti> {
|
600
601
|
isError?: boolean;
|
601
602
|
}
|
package/dist/index.d.ts
CHANGED
@@ -170,6 +170,7 @@ interface Props {
|
|
170
170
|
leftHelperText?: string | ReactNode;
|
171
171
|
rightHelperText?: string | ReactNode;
|
172
172
|
isRequired?: boolean;
|
173
|
+
isDisabled?: boolean;
|
173
174
|
boxProps?: FormControlProps;
|
174
175
|
}
|
175
176
|
type FieldProps<T = unknown> = Props & T;
|
@@ -595,7 +596,7 @@ declare const CHECKBOX_STATE: {
|
|
595
596
|
readonly INDETERMINATE: 1;
|
596
597
|
readonly CHECKED: 2;
|
597
598
|
};
|
598
|
-
declare const getSelectAllCheckboxState: (totalSelected: number, totalOption: number) => 0 |
|
599
|
+
declare const getSelectAllCheckboxState: (totalSelected: number, totalOption: number) => 0 | 1 | 2;
|
599
600
|
interface SelectWithCheckboxBaseProps<T = OptionGroup<never> | OptionMultiGroup<never>, IsMulti extends boolean = boolean> extends Props$1<T, IsMulti> {
|
600
601
|
isError?: boolean;
|
601
602
|
}
|
package/dist/index.js
CHANGED
@@ -884,6 +884,7 @@ var Field = (props) => {
|
|
884
884
|
isRequired,
|
885
885
|
children,
|
886
886
|
isSuccess,
|
887
|
+
isDisabled,
|
887
888
|
boxProps = {}
|
888
889
|
} = props;
|
889
890
|
const getHelperColor = () => {
|
@@ -897,12 +898,39 @@ var Field = (props) => {
|
|
897
898
|
};
|
898
899
|
const helperColor = getHelperColor();
|
899
900
|
const justifyHelper = getJustifyContentHelper();
|
901
|
+
const getProperties = () => {
|
902
|
+
let outlineColor2 = "neutral.400";
|
903
|
+
let focusColor2 = "primary.500";
|
904
|
+
if (isError || isDisabled || isSuccess) {
|
905
|
+
if (isError) outlineColor2 = "danger.500";
|
906
|
+
else if (isSuccess) outlineColor2 = "success.500";
|
907
|
+
focusColor2 = outlineColor2;
|
908
|
+
}
|
909
|
+
return {
|
910
|
+
outlineColor: outlineColor2,
|
911
|
+
focusColor: focusColor2
|
912
|
+
};
|
913
|
+
};
|
914
|
+
const { outlineColor, focusColor } = getProperties();
|
900
915
|
return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_react14.FormControl, { isInvalid: isError, ...boxProps, children: [
|
901
916
|
label && (typeof label === "string" ? /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_react14.FormLabel, { mb: 1, fontSize: "text.sm", requiredIndicator: void 0, children: [
|
902
917
|
isRequired && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_react14.Box, { as: "span", color: "danger.500", ml: 0, mr: 1, children: "*" }),
|
903
918
|
label
|
904
919
|
] }) : label),
|
905
|
-
|
920
|
+
/* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
|
921
|
+
import_react14.Box,
|
922
|
+
{
|
923
|
+
transition: "all 0.15s",
|
924
|
+
boxShadow: "none",
|
925
|
+
borderRadius: "sm",
|
926
|
+
border: "1px solid",
|
927
|
+
borderColor: outlineColor,
|
928
|
+
_focusWithin: {
|
929
|
+
borderColor: focusColor
|
930
|
+
},
|
931
|
+
children
|
932
|
+
}
|
933
|
+
),
|
906
934
|
(isError && errorMessage || leftHelperText || rightHelperText) && /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_react14.Box, { display: "flex", width: "full", justifyContent: justifyHelper, children: [
|
907
935
|
!isError ? leftHelperText && (typeof leftHelperText === "string" ? /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_react14.FormHelperText, { fontSize: "text.xs", color: helperColor, mt: 1, children: leftHelperText }) : leftHelperText) : typeof errorMessage === "string" ? /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_react14.FormErrorMessage, { fontSize: "text.xs", color: "danger.500", mt: 1, children: errorMessage }) : errorMessage,
|
908
936
|
rightHelperText && (typeof rightHelperText === "string" ? /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_react14.FormHelperText, { fontSize: "text.xs", color: helperColor, mt: 1, children: rightHelperText }) : rightHelperText)
|
@@ -1028,19 +1056,6 @@ var InputField = import_react22.default.forwardRef((props, ref) => {
|
|
1028
1056
|
isLoading,
|
1029
1057
|
...inputProps
|
1030
1058
|
} = props;
|
1031
|
-
const getProperties = () => {
|
1032
|
-
let outlineColor2 = "neutral.400";
|
1033
|
-
let focusColor2 = "primary.500";
|
1034
|
-
if (isError || isDisabled || isSuccess) {
|
1035
|
-
if (isError) outlineColor2 = "danger.500";
|
1036
|
-
else if (isSuccess) outlineColor2 = "success.500";
|
1037
|
-
focusColor2 = outlineColor2;
|
1038
|
-
}
|
1039
|
-
return {
|
1040
|
-
outlineColor: outlineColor2,
|
1041
|
-
focusColor: focusColor2
|
1042
|
-
};
|
1043
|
-
};
|
1044
1059
|
const [isShowPassword, setIsShowPassword] = (0, import_react22.useState)(false);
|
1045
1060
|
const inputType = (0, import_react22.useMemo)(() => {
|
1046
1061
|
return type === "password" && isShowPassword ? "text" : type;
|
@@ -1054,7 +1069,6 @@ var InputField = import_react22.default.forwardRef((props, ref) => {
|
|
1054
1069
|
const iconColor = (0, import_react22.useMemo)(() => {
|
1055
1070
|
return isDisabled ? "black.low" : "black.medium";
|
1056
1071
|
}, [isDisabled]);
|
1057
|
-
const { outlineColor, focusColor } = getProperties();
|
1058
1072
|
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
1059
1073
|
field_default,
|
1060
1074
|
{
|
@@ -1065,92 +1079,80 @@ var InputField = import_react22.default.forwardRef((props, ref) => {
|
|
1065
1079
|
leftHelperText,
|
1066
1080
|
rightHelperText,
|
1067
1081
|
isRequired,
|
1068
|
-
|
1069
|
-
|
1082
|
+
isDisabled,
|
1083
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(
|
1084
|
+
import_react21.InputGroup,
|
1070
1085
|
{
|
1071
|
-
|
1072
|
-
boxShadow: "none",
|
1086
|
+
size: size2,
|
1073
1087
|
borderRadius: "sm",
|
1074
|
-
|
1075
|
-
|
1076
|
-
|
1077
|
-
|
1078
|
-
|
1079
|
-
|
1080
|
-
|
1081
|
-
|
1082
|
-
|
1083
|
-
|
1084
|
-
|
1085
|
-
|
1086
|
-
|
1087
|
-
|
1088
|
-
|
1089
|
-
|
1090
|
-
|
1091
|
-
|
1092
|
-
|
1093
|
-
|
1094
|
-
|
1095
|
-
|
1096
|
-
|
1097
|
-
|
1098
|
-
|
1099
|
-
|
1100
|
-
|
1101
|
-
|
1102
|
-
|
1103
|
-
|
1104
|
-
|
1105
|
-
|
1106
|
-
|
1107
|
-
|
1108
|
-
|
1109
|
-
|
1110
|
-
|
1111
|
-
|
1112
|
-
|
1113
|
-
|
1114
|
-
|
1115
|
-
|
1116
|
-
|
1117
|
-
|
1118
|
-
|
1119
|
-
|
1120
|
-
|
1121
|
-
|
1122
|
-
|
1123
|
-
|
1124
|
-
|
1125
|
-
|
1126
|
-
|
1127
|
-
|
1128
|
-
|
1129
|
-
|
1130
|
-
|
1131
|
-
|
1132
|
-
|
1133
|
-
|
1134
|
-
|
1135
|
-
|
1136
|
-
|
1137
|
-
|
1138
|
-
|
1139
|
-
|
1140
|
-
|
1141
|
-
|
1142
|
-
justifyContent: "center",
|
1143
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_internal_icon5.Eye, { size: 4, color: iconColor })
|
1144
|
-
}
|
1145
|
-
),
|
1146
|
-
isLoading && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(loader_default, { size: "sm" })
|
1147
|
-
]
|
1148
|
-
}
|
1149
|
-
),
|
1150
|
-
addOnRight
|
1151
|
-
]
|
1152
|
-
}
|
1153
|
-
)
|
1088
|
+
backgroundColor: isDisabled ? "neutral.300" : "white.high",
|
1089
|
+
cursor: isDisabled ? "not-allowed" : "default",
|
1090
|
+
children: [
|
1091
|
+
addOnLeft,
|
1092
|
+
/* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
1093
|
+
import_react21.Input,
|
1094
|
+
{
|
1095
|
+
ref,
|
1096
|
+
type: inputType,
|
1097
|
+
value,
|
1098
|
+
isDisabled,
|
1099
|
+
isSuccess,
|
1100
|
+
...inputProps,
|
1101
|
+
fontSize
|
1102
|
+
}
|
1103
|
+
),
|
1104
|
+
(withClear || isLoading || type === "password") && /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(
|
1105
|
+
import_react21.Box,
|
1106
|
+
{
|
1107
|
+
"data-test-id": "CT_Component_ClearInput",
|
1108
|
+
display: "flex",
|
1109
|
+
alignItems: "center",
|
1110
|
+
justifyContent: "center",
|
1111
|
+
width: "16px",
|
1112
|
+
mr: "10px",
|
1113
|
+
children: [
|
1114
|
+
withClear && !isLoading && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
1115
|
+
import_react21.Box,
|
1116
|
+
{
|
1117
|
+
display: "flex",
|
1118
|
+
justifyContent: "center",
|
1119
|
+
onClick: !isDisabled ? onClear : void 0,
|
1120
|
+
cursor: isDisabled ? "not-allowed" : "pointer",
|
1121
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_internal_icon5.Close, { size: 4, color: iconColor })
|
1122
|
+
}
|
1123
|
+
),
|
1124
|
+
type === "password" && !isShowPassword && !isLoading && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
1125
|
+
import_react21.Box,
|
1126
|
+
{
|
1127
|
+
"data-test-id": "q2Bj2G4FlamXyHuRKMZ1Q",
|
1128
|
+
onClick: () => {
|
1129
|
+
if (!isDisabled) setIsShowPassword(true);
|
1130
|
+
},
|
1131
|
+
cursor: isDisabled ? "not-allowed" : "pointer",
|
1132
|
+
display: "flex",
|
1133
|
+
justifyContent: "center",
|
1134
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_internal_icon5.EyeOff, { size: 4, color: iconColor })
|
1135
|
+
}
|
1136
|
+
),
|
1137
|
+
type === "password" && isShowPassword && !isLoading && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
1138
|
+
import_react21.Box,
|
1139
|
+
{
|
1140
|
+
"data-test-id": "sfc2388bmeXBmdla45Ibk",
|
1141
|
+
onClick: () => {
|
1142
|
+
if (!isDisabled) setIsShowPassword(false);
|
1143
|
+
},
|
1144
|
+
cursor: isDisabled ? "not-allowed" : "pointer",
|
1145
|
+
display: "flex",
|
1146
|
+
justifyContent: "center",
|
1147
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_internal_icon5.Eye, { size: 4, color: iconColor })
|
1148
|
+
}
|
1149
|
+
),
|
1150
|
+
isLoading && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(loader_default, { size: "sm" })
|
1151
|
+
]
|
1152
|
+
}
|
1153
|
+
),
|
1154
|
+
addOnRight
|
1155
|
+
]
|
1154
1156
|
}
|
1155
1157
|
)
|
1156
1158
|
}
|
@@ -2500,7 +2502,7 @@ var Datepicker = ({
|
|
2500
2502
|
id,
|
2501
2503
|
name,
|
2502
2504
|
selected,
|
2503
|
-
customInput: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(input_field_default, { autoComplete: "off" }),
|
2505
|
+
customInput: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(input_field_default, { label, isRequired, autoComplete: "off", isError }),
|
2504
2506
|
showPopperArrow: false,
|
2505
2507
|
calendarClassName: (0, import_shared_utils8.cx)({ inline: props.inline }),
|
2506
2508
|
dropdownMode: "select",
|
@@ -2517,8 +2519,7 @@ var Datepicker = ({
|
|
2517
2519
|
if (props.inline) {
|
2518
2520
|
return component;
|
2519
2521
|
}
|
2520
|
-
return /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(import_react33.FormControl, {
|
2521
|
-
label && /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_react33.FormLabel, { fontSize: "text.sm", children: label }),
|
2522
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(import_react33.FormControl, { "data-test-id": "CT_Component_datepicker_wrapper", isInvalid: isError, children: [
|
2522
2523
|
/* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(import_react33.InputGroup, { children: [
|
2523
2524
|
component,
|
2524
2525
|
/* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(import_react33.InputRightElement, { alignSelf: "center", bottom: 0, flexDir: "row-reverse", width: "auto", mr: 2, gap: 2, children: [
|
@@ -5954,10 +5955,10 @@ var baseStyle5 = (0, import_styled_system5.defineStyle)({
|
|
5954
5955
|
marginEnd: 1,
|
5955
5956
|
mb: 1
|
5956
5957
|
});
|
5957
|
-
var
|
5958
|
+
var FormLabel4 = (0, import_styled_system5.defineStyleConfig)({
|
5958
5959
|
baseStyle: baseStyle5
|
5959
5960
|
});
|
5960
|
-
var form_label_default =
|
5961
|
+
var form_label_default = FormLabel4;
|
5961
5962
|
|
5962
5963
|
// src/config/theme/components/input.ts
|
5963
5964
|
var import_anatomy5 = require("@chakra-ui/anatomy");
|