@axenstudio/axen-form 0.1.1
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/README.md +665 -0
- package/dist/adapters/yupAdapter.cjs +61 -0
- package/dist/adapters/yupAdapter.d.ts +21 -0
- package/dist/adapters/yupAdapter.d.ts.map +1 -0
- package/dist/adapters/yupAdapter.js +61 -0
- package/dist/adapters/zodAdapter.cjs +59 -0
- package/dist/adapters/zodAdapter.d.ts +22 -0
- package/dist/adapters/zodAdapter.d.ts.map +1 -0
- package/dist/adapters/zodAdapter.js +59 -0
- package/dist/core/dateUtils.cjs +69 -0
- package/dist/core/dateUtils.d.ts +28 -0
- package/dist/core/dateUtils.d.ts.map +1 -0
- package/dist/core/dateUtils.js +69 -0
- package/dist/core/formStore.cjs +184 -0
- package/dist/core/formStore.d.ts +39 -0
- package/dist/core/formStore.d.ts.map +1 -0
- package/dist/core/formStore.js +184 -0
- package/dist/core/numberUtils.cjs +59 -0
- package/dist/core/numberUtils.d.ts +26 -0
- package/dist/core/numberUtils.d.ts.map +1 -0
- package/dist/core/numberUtils.js +59 -0
- package/dist/core/pathUtils.cjs +44 -0
- package/dist/core/pathUtils.d.ts +15 -0
- package/dist/core/pathUtils.d.ts.map +1 -0
- package/dist/core/pathUtils.js +44 -0
- package/dist/core/payloadUtils.cjs +26 -0
- package/dist/core/payloadUtils.d.ts +22 -0
- package/dist/core/payloadUtils.d.ts.map +1 -0
- package/dist/core/payloadUtils.js +26 -0
- package/dist/core/validation.cjs +41 -0
- package/dist/core/validation.d.ts +7 -0
- package/dist/core/validation.d.ts.map +1 -0
- package/dist/core/validation.js +41 -0
- package/dist/fields/AutocompleteField/AutocompleteField.cjs +242 -0
- package/dist/fields/AutocompleteField/AutocompleteField.d.ts +6 -0
- package/dist/fields/AutocompleteField/AutocompleteField.d.ts.map +1 -0
- package/dist/fields/AutocompleteField/AutocompleteField.js +242 -0
- package/dist/fields/AutocompleteField/AutocompleteField.module.css +168 -0
- package/dist/fields/AutocompleteField/AutocompleteField.module.css.cjs +44 -0
- package/dist/fields/AutocompleteField/AutocompleteField.module.css.js +44 -0
- package/dist/fields/AutocompleteMultiField/AutocompleteMultiField.cjs +286 -0
- package/dist/fields/AutocompleteMultiField/AutocompleteMultiField.d.ts +6 -0
- package/dist/fields/AutocompleteMultiField/AutocompleteMultiField.d.ts.map +1 -0
- package/dist/fields/AutocompleteMultiField/AutocompleteMultiField.js +286 -0
- package/dist/fields/AutocompletePredictField/AutocompletePredictField.cjs +289 -0
- package/dist/fields/AutocompletePredictField/AutocompletePredictField.d.ts +10 -0
- package/dist/fields/AutocompletePredictField/AutocompletePredictField.d.ts.map +1 -0
- package/dist/fields/AutocompletePredictField/AutocompletePredictField.js +289 -0
- package/dist/fields/CheckboxField/CheckboxField.cjs +60 -0
- package/dist/fields/CheckboxField/CheckboxField.d.ts +3 -0
- package/dist/fields/CheckboxField/CheckboxField.d.ts.map +1 -0
- package/dist/fields/CheckboxField/CheckboxField.js +60 -0
- package/dist/fields/CheckboxField/CheckboxField.module.css +29 -0
- package/dist/fields/CheckboxField/CheckboxField.module.css.cjs +11 -0
- package/dist/fields/CheckboxField/CheckboxField.module.css.js +11 -0
- package/dist/fields/ColorField/ColorField.cjs +69 -0
- package/dist/fields/ColorField/ColorField.d.ts +3 -0
- package/dist/fields/ColorField/ColorField.d.ts.map +1 -0
- package/dist/fields/ColorField/ColorField.js +69 -0
- package/dist/fields/ColorField/ColorField.module.css +33 -0
- package/dist/fields/ColorField/ColorField.module.css.cjs +14 -0
- package/dist/fields/ColorField/ColorField.module.css.js +14 -0
- package/dist/fields/CurrencyField/CurrencyField.cjs +120 -0
- package/dist/fields/CurrencyField/CurrencyField.d.ts +10 -0
- package/dist/fields/CurrencyField/CurrencyField.d.ts.map +1 -0
- package/dist/fields/CurrencyField/CurrencyField.js +120 -0
- package/dist/fields/DateField/DateField.cjs +70 -0
- package/dist/fields/DateField/DateField.d.ts +7 -0
- package/dist/fields/DateField/DateField.d.ts.map +1 -0
- package/dist/fields/DateField/DateField.js +70 -0
- package/dist/fields/DateTimeField/DateTimeField.cjs +71 -0
- package/dist/fields/DateTimeField/DateTimeField.d.ts +8 -0
- package/dist/fields/DateTimeField/DateTimeField.d.ts.map +1 -0
- package/dist/fields/DateTimeField/DateTimeField.js +71 -0
- package/dist/fields/EmailField/EmailField.cjs +57 -0
- package/dist/fields/EmailField/EmailField.d.ts +3 -0
- package/dist/fields/EmailField/EmailField.d.ts.map +1 -0
- package/dist/fields/EmailField/EmailField.js +57 -0
- package/dist/fields/NumberField/NumberField.cjs +110 -0
- package/dist/fields/NumberField/NumberField.d.ts +10 -0
- package/dist/fields/NumberField/NumberField.d.ts.map +1 -0
- package/dist/fields/NumberField/NumberField.js +110 -0
- package/dist/fields/PasswordField/PasswordField.cjs +77 -0
- package/dist/fields/PasswordField/PasswordField.d.ts +3 -0
- package/dist/fields/PasswordField/PasswordField.d.ts.map +1 -0
- package/dist/fields/PasswordField/PasswordField.js +77 -0
- package/dist/fields/PasswordField/PasswordField.module.css +41 -0
- package/dist/fields/PasswordField/PasswordField.module.css.cjs +14 -0
- package/dist/fields/PasswordField/PasswordField.module.css.js +14 -0
- package/dist/fields/PhoneField/PhoneField.cjs +58 -0
- package/dist/fields/PhoneField/PhoneField.d.ts +3 -0
- package/dist/fields/PhoneField/PhoneField.d.ts.map +1 -0
- package/dist/fields/PhoneField/PhoneField.js +58 -0
- package/dist/fields/RadioField/RadioField.cjs +66 -0
- package/dist/fields/RadioField/RadioField.d.ts +3 -0
- package/dist/fields/RadioField/RadioField.d.ts.map +1 -0
- package/dist/fields/RadioField/RadioField.js +66 -0
- package/dist/fields/RadioField/RadioField.module.css +34 -0
- package/dist/fields/RadioField/RadioField.module.css.cjs +14 -0
- package/dist/fields/RadioField/RadioField.module.css.js +14 -0
- package/dist/fields/SelectField/SelectField.cjs +58 -0
- package/dist/fields/SelectField/SelectField.d.ts +3 -0
- package/dist/fields/SelectField/SelectField.d.ts.map +1 -0
- package/dist/fields/SelectField/SelectField.js +58 -0
- package/dist/fields/SliderField/SliderField.cjs +79 -0
- package/dist/fields/SliderField/SliderField.d.ts +7 -0
- package/dist/fields/SliderField/SliderField.d.ts.map +1 -0
- package/dist/fields/SliderField/SliderField.js +79 -0
- package/dist/fields/SliderField/SliderField.module.css +76 -0
- package/dist/fields/SliderField/SliderField.module.css.cjs +14 -0
- package/dist/fields/SliderField/SliderField.module.css.js +14 -0
- package/dist/fields/SwitchField/SwitchField.cjs +65 -0
- package/dist/fields/SwitchField/SwitchField.d.ts +3 -0
- package/dist/fields/SwitchField/SwitchField.d.ts.map +1 -0
- package/dist/fields/SwitchField/SwitchField.js +65 -0
- package/dist/fields/SwitchField/SwitchField.module.css +79 -0
- package/dist/fields/SwitchField/SwitchField.module.css.cjs +17 -0
- package/dist/fields/SwitchField/SwitchField.module.css.js +17 -0
- package/dist/fields/TextField/TextField.cjs +56 -0
- package/dist/fields/TextField/TextField.d.ts +3 -0
- package/dist/fields/TextField/TextField.d.ts.map +1 -0
- package/dist/fields/TextField/TextField.js +56 -0
- package/dist/fields/TextareaField/TextareaField.cjs +57 -0
- package/dist/fields/TextareaField/TextareaField.d.ts +5 -0
- package/dist/fields/TextareaField/TextareaField.d.ts.map +1 -0
- package/dist/fields/TextareaField/TextareaField.js +57 -0
- package/dist/fields/TimeField/TimeField.cjs +67 -0
- package/dist/fields/TimeField/TimeField.d.ts +6 -0
- package/dist/fields/TimeField/TimeField.d.ts.map +1 -0
- package/dist/fields/TimeField/TimeField.js +67 -0
- package/dist/fields/defaultComponentMap.cjs +43 -0
- package/dist/fields/defaultComponentMap.d.ts +7 -0
- package/dist/fields/defaultComponentMap.d.ts.map +1 -0
- package/dist/fields/defaultComponentMap.js +43 -0
- package/dist/fields/fieldBase.module.css +201 -0
- package/dist/fields/fieldBase.module.css.cjs +50 -0
- package/dist/fields/fieldBase.module.css.js +50 -0
- package/dist/fields/fieldUtils.cjs +26 -0
- package/dist/fields/fieldUtils.d.ts +24 -0
- package/dist/fields/fieldUtils.d.ts.map +1 -0
- package/dist/fields/fieldUtils.js +26 -0
- package/dist/index.cjs +99 -0
- package/dist/index.d.ts +42 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +99 -0
- package/dist/layout/Box/Box.cjs +70 -0
- package/dist/layout/Box/Box.d.ts +6 -0
- package/dist/layout/Box/Box.d.ts.map +1 -0
- package/dist/layout/Box/Box.js +70 -0
- package/dist/layout/Box/Box.module.css +3 -0
- package/dist/layout/Box/Box.module.css.cjs +8 -0
- package/dist/layout/Box/Box.module.css.js +8 -0
- package/dist/layout/Divider/Divider.cjs +20 -0
- package/dist/layout/Divider/Divider.d.ts +6 -0
- package/dist/layout/Divider/Divider.d.ts.map +1 -0
- package/dist/layout/Divider/Divider.js +20 -0
- package/dist/layout/Divider/Divider.module.css +25 -0
- package/dist/layout/Divider/Divider.module.css.cjs +14 -0
- package/dist/layout/Divider/Divider.module.css.js +14 -0
- package/dist/layout/Grid/Grid.cjs +106 -0
- package/dist/layout/Grid/Grid.d.ts +7 -0
- package/dist/layout/Grid/Grid.d.ts.map +1 -0
- package/dist/layout/Grid/Grid.js +106 -0
- package/dist/layout/Grid/Grid.module.css +43 -0
- package/dist/layout/Grid/Grid.module.css.cjs +23 -0
- package/dist/layout/Grid/Grid.module.css.js +23 -0
- package/dist/layout/Spacer/Spacer.cjs +30 -0
- package/dist/layout/Spacer/Spacer.d.ts +21 -0
- package/dist/layout/Spacer/Spacer.d.ts.map +1 -0
- package/dist/layout/Spacer/Spacer.js +30 -0
- package/dist/layout/Stack/Stack.cjs +52 -0
- package/dist/layout/Stack/Stack.d.ts +7 -0
- package/dist/layout/Stack/Stack.d.ts.map +1 -0
- package/dist/layout/Stack/Stack.js +52 -0
- package/dist/layout/Stack/Stack.module.css +3 -0
- package/dist/layout/Stack/Stack.module.css.cjs +8 -0
- package/dist/layout/Stack/Stack.module.css.js +8 -0
- package/dist/layout/index.d.ts +6 -0
- package/dist/layout/index.d.ts.map +1 -0
- package/dist/react/AxenArrayField.cjs +80 -0
- package/dist/react/AxenArrayField.d.ts +15 -0
- package/dist/react/AxenArrayField.d.ts.map +1 -0
- package/dist/react/AxenArrayField.js +80 -0
- package/dist/react/AxenField.cjs +62 -0
- package/dist/react/AxenField.d.ts +13 -0
- package/dist/react/AxenField.d.ts.map +1 -0
- package/dist/react/AxenField.js +62 -0
- package/dist/react/AxenForm.cjs +134 -0
- package/dist/react/AxenForm.d.ts +7 -0
- package/dist/react/AxenForm.d.ts.map +1 -0
- package/dist/react/AxenForm.js +134 -0
- package/dist/react/FormContext.cjs +13 -0
- package/dist/react/FormContext.d.ts +11 -0
- package/dist/react/FormContext.d.ts.map +1 -0
- package/dist/react/FormContext.js +13 -0
- package/dist/react/useAxenForm.cjs +88 -0
- package/dist/react/useAxenForm.d.ts +8 -0
- package/dist/react/useAxenForm.d.ts.map +1 -0
- package/dist/react/useAxenForm.js +88 -0
- package/dist/react/useField.cjs +41 -0
- package/dist/react/useField.d.ts +13 -0
- package/dist/react/useField.d.ts.map +1 -0
- package/dist/react/useField.js +41 -0
- package/dist/react/useFieldArray.cjs +74 -0
- package/dist/react/useFieldArray.d.ts +5 -0
- package/dist/react/useFieldArray.d.ts.map +1 -0
- package/dist/react/useFieldArray.js +74 -0
- package/dist/types.d.ts +226 -0
- package/dist/types.d.ts.map +1 -0
- package/package.json +87 -0
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
+
const react = require("react");
|
|
5
|
+
const fieldBase_module = require("../fieldBase.module.css.cjs");
|
|
6
|
+
const fieldUtils = require("../fieldUtils.cjs");
|
|
7
|
+
const SliderField_module = require("./SliderField.module.css.cjs");
|
|
8
|
+
function SliderField({
|
|
9
|
+
name,
|
|
10
|
+
value,
|
|
11
|
+
onChange: _onChange,
|
|
12
|
+
onBlur,
|
|
13
|
+
error,
|
|
14
|
+
helperText,
|
|
15
|
+
label,
|
|
16
|
+
disabled,
|
|
17
|
+
readOnly,
|
|
18
|
+
required,
|
|
19
|
+
min,
|
|
20
|
+
max,
|
|
21
|
+
step,
|
|
22
|
+
form
|
|
23
|
+
}) {
|
|
24
|
+
const sliderMin = min ?? 0;
|
|
25
|
+
const sliderMax = max ?? 100;
|
|
26
|
+
const sliderStep = step ?? 1;
|
|
27
|
+
const numValue = typeof value === "number" ? value : sliderMin;
|
|
28
|
+
const handleChange = react.useCallback(
|
|
29
|
+
(e) => {
|
|
30
|
+
form.setFieldValue(name, Number.parseFloat(e.target.value));
|
|
31
|
+
},
|
|
32
|
+
[form, name]
|
|
33
|
+
);
|
|
34
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: fieldBase_module.default.wrapper, children: [
|
|
35
|
+
label && /* @__PURE__ */ jsxRuntime.jsx(
|
|
36
|
+
"label",
|
|
37
|
+
{
|
|
38
|
+
id: fieldUtils.labelId(name),
|
|
39
|
+
htmlFor: name,
|
|
40
|
+
className: fieldUtils.cx(fieldBase_module.default.label, required && fieldBase_module.default.labelRequired),
|
|
41
|
+
children: label
|
|
42
|
+
}
|
|
43
|
+
),
|
|
44
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: SliderField_module.default.sliderWrap, children: [
|
|
45
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
46
|
+
"input",
|
|
47
|
+
{
|
|
48
|
+
id: name,
|
|
49
|
+
type: "range",
|
|
50
|
+
name,
|
|
51
|
+
value: numValue,
|
|
52
|
+
onChange: handleChange,
|
|
53
|
+
onBlur,
|
|
54
|
+
min: sliderMin,
|
|
55
|
+
max: sliderMax,
|
|
56
|
+
step: sliderStep,
|
|
57
|
+
disabled: disabled || readOnly,
|
|
58
|
+
"aria-valuemin": sliderMin,
|
|
59
|
+
"aria-valuemax": sliderMax,
|
|
60
|
+
"aria-valuenow": numValue,
|
|
61
|
+
"aria-invalid": error || void 0,
|
|
62
|
+
"aria-describedby": helperText ? fieldUtils.helperId(name) : void 0,
|
|
63
|
+
className: SliderField_module.default.slider
|
|
64
|
+
}
|
|
65
|
+
),
|
|
66
|
+
/* @__PURE__ */ jsxRuntime.jsx("output", { htmlFor: name, className: SliderField_module.default.output, children: numValue })
|
|
67
|
+
] }),
|
|
68
|
+
helperText && /* @__PURE__ */ jsxRuntime.jsx(
|
|
69
|
+
"span",
|
|
70
|
+
{
|
|
71
|
+
id: fieldUtils.helperId(name),
|
|
72
|
+
className: fieldUtils.cx(fieldBase_module.default.helperText, error && fieldBase_module.default.helperTextError),
|
|
73
|
+
role: error ? "alert" : void 0,
|
|
74
|
+
children: helperText
|
|
75
|
+
}
|
|
76
|
+
)
|
|
77
|
+
] });
|
|
78
|
+
}
|
|
79
|
+
exports.SliderField = SliderField;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { FieldComponentProps } from '../../types';
|
|
2
|
+
export declare function SliderField({ name, value, onChange: _onChange, onBlur, error, helperText, label, disabled, readOnly, required, min, max, step, form, }: FieldComponentProps & {
|
|
3
|
+
min?: number;
|
|
4
|
+
max?: number;
|
|
5
|
+
step?: number;
|
|
6
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
//# sourceMappingURL=SliderField.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SliderField.d.ts","sourceRoot":"","sources":["../../../src/fields/SliderField/SliderField.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAKvD,wBAAgB,WAAW,CAAC,EAC1B,IAAI,EACJ,KAAK,EACL,QAAQ,EAAE,SAAS,EACnB,MAAM,EACN,KAAK,EACL,UAAU,EACV,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,GAAG,EACH,GAAG,EACH,IAAI,EACJ,IAAI,GACL,EAAE,mBAAmB,GAAG;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,2CA0DA"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { jsxs, jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback } from "react";
|
|
3
|
+
import styles from "../fieldBase.module.css.js";
|
|
4
|
+
import { cx, labelId, helperId } from "../fieldUtils.js";
|
|
5
|
+
import localStyles from "./SliderField.module.css.js";
|
|
6
|
+
function SliderField({
|
|
7
|
+
name,
|
|
8
|
+
value,
|
|
9
|
+
onChange: _onChange,
|
|
10
|
+
onBlur,
|
|
11
|
+
error,
|
|
12
|
+
helperText,
|
|
13
|
+
label,
|
|
14
|
+
disabled,
|
|
15
|
+
readOnly,
|
|
16
|
+
required,
|
|
17
|
+
min,
|
|
18
|
+
max,
|
|
19
|
+
step,
|
|
20
|
+
form
|
|
21
|
+
}) {
|
|
22
|
+
const sliderMin = min ?? 0;
|
|
23
|
+
const sliderMax = max ?? 100;
|
|
24
|
+
const sliderStep = step ?? 1;
|
|
25
|
+
const numValue = typeof value === "number" ? value : sliderMin;
|
|
26
|
+
const handleChange = useCallback(
|
|
27
|
+
(e) => {
|
|
28
|
+
form.setFieldValue(name, Number.parseFloat(e.target.value));
|
|
29
|
+
},
|
|
30
|
+
[form, name]
|
|
31
|
+
);
|
|
32
|
+
return /* @__PURE__ */ jsxs("div", { className: styles.wrapper, children: [
|
|
33
|
+
label && /* @__PURE__ */ jsx(
|
|
34
|
+
"label",
|
|
35
|
+
{
|
|
36
|
+
id: labelId(name),
|
|
37
|
+
htmlFor: name,
|
|
38
|
+
className: cx(styles.label, required && styles.labelRequired),
|
|
39
|
+
children: label
|
|
40
|
+
}
|
|
41
|
+
),
|
|
42
|
+
/* @__PURE__ */ jsxs("div", { className: localStyles.sliderWrap, children: [
|
|
43
|
+
/* @__PURE__ */ jsx(
|
|
44
|
+
"input",
|
|
45
|
+
{
|
|
46
|
+
id: name,
|
|
47
|
+
type: "range",
|
|
48
|
+
name,
|
|
49
|
+
value: numValue,
|
|
50
|
+
onChange: handleChange,
|
|
51
|
+
onBlur,
|
|
52
|
+
min: sliderMin,
|
|
53
|
+
max: sliderMax,
|
|
54
|
+
step: sliderStep,
|
|
55
|
+
disabled: disabled || readOnly,
|
|
56
|
+
"aria-valuemin": sliderMin,
|
|
57
|
+
"aria-valuemax": sliderMax,
|
|
58
|
+
"aria-valuenow": numValue,
|
|
59
|
+
"aria-invalid": error || void 0,
|
|
60
|
+
"aria-describedby": helperText ? helperId(name) : void 0,
|
|
61
|
+
className: localStyles.slider
|
|
62
|
+
}
|
|
63
|
+
),
|
|
64
|
+
/* @__PURE__ */ jsx("output", { htmlFor: name, className: localStyles.output, children: numValue })
|
|
65
|
+
] }),
|
|
66
|
+
helperText && /* @__PURE__ */ jsx(
|
|
67
|
+
"span",
|
|
68
|
+
{
|
|
69
|
+
id: helperId(name),
|
|
70
|
+
className: cx(styles.helperText, error && styles.helperTextError),
|
|
71
|
+
role: error ? "alert" : void 0,
|
|
72
|
+
children: helperText
|
|
73
|
+
}
|
|
74
|
+
)
|
|
75
|
+
] });
|
|
76
|
+
}
|
|
77
|
+
export {
|
|
78
|
+
SliderField
|
|
79
|
+
};
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
._sliderWrap_84w8t_1 {
|
|
2
|
+
display: flex;
|
|
3
|
+
align-items: center;
|
|
4
|
+
gap: var(--axen-space-md);
|
|
5
|
+
min-height: var(--axen-field-min-height);
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
._slider_84w8t_1 {
|
|
9
|
+
flex: 1;
|
|
10
|
+
height: 6px;
|
|
11
|
+
appearance: none;
|
|
12
|
+
background: var(--axen-color-border);
|
|
13
|
+
border-radius: var(--axen-border-radius-pill);
|
|
14
|
+
outline: none;
|
|
15
|
+
cursor: pointer;
|
|
16
|
+
transition: background var(--axen-transition-fast);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
._slider_84w8t_1::-webkit-slider-thumb {
|
|
20
|
+
appearance: none;
|
|
21
|
+
width: 20px;
|
|
22
|
+
height: 20px;
|
|
23
|
+
border-radius: 50%;
|
|
24
|
+
background: var(--axen-color-primary);
|
|
25
|
+
border: 2px solid var(--axen-color-bg);
|
|
26
|
+
box-shadow: var(--axen-shadow-sm);
|
|
27
|
+
cursor: pointer;
|
|
28
|
+
transition:
|
|
29
|
+
background var(--axen-transition-fast),
|
|
30
|
+
transform var(--axen-transition-fast);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
._slider_84w8t_1::-webkit-slider-thumb:hover {
|
|
34
|
+
background: var(--axen-color-primary-hover);
|
|
35
|
+
transform: scale(1.15);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
._slider_84w8t_1:focus-visible::-webkit-slider-thumb {
|
|
39
|
+
box-shadow: var(--axen-shadow-focus);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
._slider_84w8t_1::-moz-range-thumb {
|
|
43
|
+
width: 20px;
|
|
44
|
+
height: 20px;
|
|
45
|
+
border-radius: 50%;
|
|
46
|
+
background: var(--axen-color-primary);
|
|
47
|
+
border: 2px solid var(--axen-color-bg);
|
|
48
|
+
box-shadow: var(--axen-shadow-sm);
|
|
49
|
+
cursor: pointer;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
._slider_84w8t_1:disabled {
|
|
53
|
+
opacity: 0.5;
|
|
54
|
+
cursor: not-allowed;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
._output_84w8t_57 {
|
|
58
|
+
min-width: 2.5em;
|
|
59
|
+
text-align: center;
|
|
60
|
+
font-size: var(--axen-font-size-sm);
|
|
61
|
+
font-weight: var(--axen-font-weight-medium);
|
|
62
|
+
color: var(--axen-color-text);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
/* Touch target for mobile */
|
|
66
|
+
@media (max-width: 599px) {
|
|
67
|
+
._slider_84w8t_1::-webkit-slider-thumb {
|
|
68
|
+
width: 28px;
|
|
69
|
+
height: 28px;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
._slider_84w8t_1::-moz-range-thumb {
|
|
73
|
+
width: 28px;
|
|
74
|
+
height: 28px;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
|
+
const sliderWrap = "_sliderWrap_84w8t_1";
|
|
4
|
+
const slider = "_slider_84w8t_1";
|
|
5
|
+
const output = "_output_84w8t_57";
|
|
6
|
+
const localStyles = {
|
|
7
|
+
sliderWrap,
|
|
8
|
+
slider,
|
|
9
|
+
output
|
|
10
|
+
};
|
|
11
|
+
exports.default = localStyles;
|
|
12
|
+
exports.output = output;
|
|
13
|
+
exports.slider = slider;
|
|
14
|
+
exports.sliderWrap = sliderWrap;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
const sliderWrap = "_sliderWrap_84w8t_1";
|
|
2
|
+
const slider = "_slider_84w8t_1";
|
|
3
|
+
const output = "_output_84w8t_57";
|
|
4
|
+
const localStyles = {
|
|
5
|
+
sliderWrap,
|
|
6
|
+
slider,
|
|
7
|
+
output
|
|
8
|
+
};
|
|
9
|
+
export {
|
|
10
|
+
localStyles as default,
|
|
11
|
+
output,
|
|
12
|
+
slider,
|
|
13
|
+
sliderWrap
|
|
14
|
+
};
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
+
const react = require("react");
|
|
5
|
+
const fieldBase_module = require("../fieldBase.module.css.cjs");
|
|
6
|
+
const fieldUtils = require("../fieldUtils.cjs");
|
|
7
|
+
const SwitchField_module = require("./SwitchField.module.css.cjs");
|
|
8
|
+
function SwitchField({
|
|
9
|
+
name,
|
|
10
|
+
value,
|
|
11
|
+
onChange: _onChange,
|
|
12
|
+
onBlur,
|
|
13
|
+
error,
|
|
14
|
+
helperText,
|
|
15
|
+
label,
|
|
16
|
+
disabled,
|
|
17
|
+
readOnly,
|
|
18
|
+
required,
|
|
19
|
+
form
|
|
20
|
+
}) {
|
|
21
|
+
const checked = Boolean(value);
|
|
22
|
+
const handleChange = react.useCallback(
|
|
23
|
+
(e) => {
|
|
24
|
+
if (readOnly) return;
|
|
25
|
+
form.setFieldValue(name, e.target.checked);
|
|
26
|
+
},
|
|
27
|
+
[form, name, readOnly]
|
|
28
|
+
);
|
|
29
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: fieldBase_module.default.wrapper, children: [
|
|
30
|
+
/* @__PURE__ */ jsxRuntime.jsxs("label", { className: fieldUtils.cx(fieldBase_module.default.inlineWrapper, SwitchField_module.default.switchLabel), children: [
|
|
31
|
+
/* @__PURE__ */ jsxRuntime.jsxs("span", { className: SwitchField_module.default.switchTrack, children: [
|
|
32
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
33
|
+
"input",
|
|
34
|
+
{
|
|
35
|
+
type: "checkbox",
|
|
36
|
+
role: "switch",
|
|
37
|
+
id: name,
|
|
38
|
+
name,
|
|
39
|
+
checked,
|
|
40
|
+
onChange: handleChange,
|
|
41
|
+
onBlur,
|
|
42
|
+
disabled,
|
|
43
|
+
"aria-checked": checked,
|
|
44
|
+
"aria-invalid": error || void 0,
|
|
45
|
+
"aria-describedby": helperText ? fieldUtils.helperId(name) : void 0,
|
|
46
|
+
"aria-required": required || void 0,
|
|
47
|
+
className: SwitchField_module.default.switchInput
|
|
48
|
+
}
|
|
49
|
+
),
|
|
50
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: SwitchField_module.default.switchThumb, "aria-hidden": "true" })
|
|
51
|
+
] }),
|
|
52
|
+
label && /* @__PURE__ */ jsxRuntime.jsx("span", { className: fieldBase_module.default.inlineLabel, children: label })
|
|
53
|
+
] }),
|
|
54
|
+
helperText && /* @__PURE__ */ jsxRuntime.jsx(
|
|
55
|
+
"span",
|
|
56
|
+
{
|
|
57
|
+
id: fieldUtils.helperId(name),
|
|
58
|
+
className: fieldUtils.cx(fieldBase_module.default.helperText, error && fieldBase_module.default.helperTextError),
|
|
59
|
+
role: error ? "alert" : void 0,
|
|
60
|
+
children: helperText
|
|
61
|
+
}
|
|
62
|
+
)
|
|
63
|
+
] });
|
|
64
|
+
}
|
|
65
|
+
exports.SwitchField = SwitchField;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { FieldComponentProps } from '../../types';
|
|
2
|
+
export declare function SwitchField({ name, value, onChange: _onChange, onBlur, error, helperText, label, disabled, readOnly, required, form, }: Readonly<FieldComponentProps>): import("react/jsx-runtime").JSX.Element;
|
|
3
|
+
//# sourceMappingURL=SwitchField.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SwitchField.d.ts","sourceRoot":"","sources":["../../../src/fields/SwitchField/SwitchField.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAKvD,wBAAgB,WAAW,CAAC,EAC1B,IAAI,EACJ,KAAK,EACL,QAAQ,EAAE,SAAS,EACnB,MAAM,EACN,KAAK,EACL,UAAU,EACV,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,IAAI,GACL,EAAE,QAAQ,CAAC,mBAAmB,CAAC,2CA6C/B"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { jsxs, jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback } from "react";
|
|
3
|
+
import styles from "../fieldBase.module.css.js";
|
|
4
|
+
import { helperId, cx } from "../fieldUtils.js";
|
|
5
|
+
import localStyles from "./SwitchField.module.css.js";
|
|
6
|
+
function SwitchField({
|
|
7
|
+
name,
|
|
8
|
+
value,
|
|
9
|
+
onChange: _onChange,
|
|
10
|
+
onBlur,
|
|
11
|
+
error,
|
|
12
|
+
helperText,
|
|
13
|
+
label,
|
|
14
|
+
disabled,
|
|
15
|
+
readOnly,
|
|
16
|
+
required,
|
|
17
|
+
form
|
|
18
|
+
}) {
|
|
19
|
+
const checked = Boolean(value);
|
|
20
|
+
const handleChange = useCallback(
|
|
21
|
+
(e) => {
|
|
22
|
+
if (readOnly) return;
|
|
23
|
+
form.setFieldValue(name, e.target.checked);
|
|
24
|
+
},
|
|
25
|
+
[form, name, readOnly]
|
|
26
|
+
);
|
|
27
|
+
return /* @__PURE__ */ jsxs("div", { className: styles.wrapper, children: [
|
|
28
|
+
/* @__PURE__ */ jsxs("label", { className: cx(styles.inlineWrapper, localStyles.switchLabel), children: [
|
|
29
|
+
/* @__PURE__ */ jsxs("span", { className: localStyles.switchTrack, children: [
|
|
30
|
+
/* @__PURE__ */ jsx(
|
|
31
|
+
"input",
|
|
32
|
+
{
|
|
33
|
+
type: "checkbox",
|
|
34
|
+
role: "switch",
|
|
35
|
+
id: name,
|
|
36
|
+
name,
|
|
37
|
+
checked,
|
|
38
|
+
onChange: handleChange,
|
|
39
|
+
onBlur,
|
|
40
|
+
disabled,
|
|
41
|
+
"aria-checked": checked,
|
|
42
|
+
"aria-invalid": error || void 0,
|
|
43
|
+
"aria-describedby": helperText ? helperId(name) : void 0,
|
|
44
|
+
"aria-required": required || void 0,
|
|
45
|
+
className: localStyles.switchInput
|
|
46
|
+
}
|
|
47
|
+
),
|
|
48
|
+
/* @__PURE__ */ jsx("span", { className: localStyles.switchThumb, "aria-hidden": "true" })
|
|
49
|
+
] }),
|
|
50
|
+
label && /* @__PURE__ */ jsx("span", { className: styles.inlineLabel, children: label })
|
|
51
|
+
] }),
|
|
52
|
+
helperText && /* @__PURE__ */ jsx(
|
|
53
|
+
"span",
|
|
54
|
+
{
|
|
55
|
+
id: helperId(name),
|
|
56
|
+
className: cx(styles.helperText, error && styles.helperTextError),
|
|
57
|
+
role: error ? "alert" : void 0,
|
|
58
|
+
children: helperText
|
|
59
|
+
}
|
|
60
|
+
)
|
|
61
|
+
] });
|
|
62
|
+
}
|
|
63
|
+
export {
|
|
64
|
+
SwitchField
|
|
65
|
+
};
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
._switchLabel_1itxk_1 {
|
|
2
|
+
cursor: pointer;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
._switchTrack_1itxk_5 {
|
|
6
|
+
position: relative;
|
|
7
|
+
display: inline-flex;
|
|
8
|
+
align-items: center;
|
|
9
|
+
width: 44px;
|
|
10
|
+
height: 24px;
|
|
11
|
+
background-color: var(--axen-color-border);
|
|
12
|
+
border-radius: var(--axen-border-radius-pill);
|
|
13
|
+
transition: background-color var(--axen-transition-fast);
|
|
14
|
+
flex-shrink: 0;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
._switchInput_1itxk_17 {
|
|
18
|
+
position: absolute;
|
|
19
|
+
width: 100%;
|
|
20
|
+
height: 100%;
|
|
21
|
+
margin: 0;
|
|
22
|
+
padding: 0;
|
|
23
|
+
opacity: 0;
|
|
24
|
+
cursor: pointer;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
._switchInput_1itxk_17:checked + ._switchThumb_1itxk_27 {
|
|
28
|
+
transform: translateX(20px);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
._switchInput_1itxk_17:checked ~ ._switchThumb_1itxk_27 {
|
|
32
|
+
transform: translateX(20px);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
._switchTrack_1itxk_5:has(._switchInput_1itxk_17:checked) {
|
|
36
|
+
background-color: var(--axen-color-primary);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
._switchInput_1itxk_17:focus-visible ~ ._switchThumb_1itxk_27 {
|
|
40
|
+
box-shadow: var(--axen-shadow-focus);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
._switchInput_1itxk_17:disabled {
|
|
44
|
+
cursor: not-allowed;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
._switchTrack_1itxk_5:has(._switchInput_1itxk_17:disabled) {
|
|
48
|
+
opacity: 0.5;
|
|
49
|
+
cursor: not-allowed;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
._switchThumb_1itxk_27 {
|
|
53
|
+
position: absolute;
|
|
54
|
+
left: 2px;
|
|
55
|
+
width: 20px;
|
|
56
|
+
height: 20px;
|
|
57
|
+
background-color: var(--axen-color-bg);
|
|
58
|
+
border-radius: 50%;
|
|
59
|
+
box-shadow: var(--axen-shadow-sm);
|
|
60
|
+
transition: transform var(--axen-transition-fast);
|
|
61
|
+
pointer-events: none;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
/* Mobile: larger touch target */
|
|
65
|
+
@media (max-width: 599px) {
|
|
66
|
+
._switchTrack_1itxk_5 {
|
|
67
|
+
width: 52px;
|
|
68
|
+
height: 28px;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
._switchThumb_1itxk_27 {
|
|
72
|
+
width: 24px;
|
|
73
|
+
height: 24px;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
._switchInput_1itxk_17:checked ~ ._switchThumb_1itxk_27 {
|
|
77
|
+
transform: translateX(24px);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
|
+
const switchLabel = "_switchLabel_1itxk_1";
|
|
4
|
+
const switchTrack = "_switchTrack_1itxk_5";
|
|
5
|
+
const switchInput = "_switchInput_1itxk_17";
|
|
6
|
+
const switchThumb = "_switchThumb_1itxk_27";
|
|
7
|
+
const localStyles = {
|
|
8
|
+
switchLabel,
|
|
9
|
+
switchTrack,
|
|
10
|
+
switchInput,
|
|
11
|
+
switchThumb
|
|
12
|
+
};
|
|
13
|
+
exports.default = localStyles;
|
|
14
|
+
exports.switchInput = switchInput;
|
|
15
|
+
exports.switchLabel = switchLabel;
|
|
16
|
+
exports.switchThumb = switchThumb;
|
|
17
|
+
exports.switchTrack = switchTrack;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
const switchLabel = "_switchLabel_1itxk_1";
|
|
2
|
+
const switchTrack = "_switchTrack_1itxk_5";
|
|
3
|
+
const switchInput = "_switchInput_1itxk_17";
|
|
4
|
+
const switchThumb = "_switchThumb_1itxk_27";
|
|
5
|
+
const localStyles = {
|
|
6
|
+
switchLabel,
|
|
7
|
+
switchTrack,
|
|
8
|
+
switchInput,
|
|
9
|
+
switchThumb
|
|
10
|
+
};
|
|
11
|
+
export {
|
|
12
|
+
localStyles as default,
|
|
13
|
+
switchInput,
|
|
14
|
+
switchLabel,
|
|
15
|
+
switchThumb,
|
|
16
|
+
switchTrack
|
|
17
|
+
};
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
+
const fieldBase_module = require("../fieldBase.module.css.cjs");
|
|
5
|
+
const fieldUtils = require("../fieldUtils.cjs");
|
|
6
|
+
function TextField({
|
|
7
|
+
name,
|
|
8
|
+
value,
|
|
9
|
+
onChange,
|
|
10
|
+
onBlur,
|
|
11
|
+
error,
|
|
12
|
+
helperText,
|
|
13
|
+
label,
|
|
14
|
+
placeholder,
|
|
15
|
+
disabled,
|
|
16
|
+
readOnly,
|
|
17
|
+
required
|
|
18
|
+
}) {
|
|
19
|
+
const aria = fieldUtils.ariaProps(name, { error, helperText, required, label });
|
|
20
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: fieldBase_module.default.wrapper, children: [
|
|
21
|
+
label && /* @__PURE__ */ jsxRuntime.jsx(
|
|
22
|
+
"label",
|
|
23
|
+
{
|
|
24
|
+
id: fieldUtils.labelId(name),
|
|
25
|
+
htmlFor: name,
|
|
26
|
+
className: fieldUtils.cx(fieldBase_module.default.label, required && fieldBase_module.default.labelRequired),
|
|
27
|
+
children: label
|
|
28
|
+
}
|
|
29
|
+
),
|
|
30
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
31
|
+
"input",
|
|
32
|
+
{
|
|
33
|
+
...aria,
|
|
34
|
+
type: "text",
|
|
35
|
+
name,
|
|
36
|
+
value: value ?? "",
|
|
37
|
+
onChange,
|
|
38
|
+
onBlur,
|
|
39
|
+
placeholder,
|
|
40
|
+
disabled,
|
|
41
|
+
readOnly,
|
|
42
|
+
className: fieldUtils.cx(fieldBase_module.default.input, error && fieldBase_module.default.inputError)
|
|
43
|
+
}
|
|
44
|
+
),
|
|
45
|
+
helperText && /* @__PURE__ */ jsxRuntime.jsx(
|
|
46
|
+
"span",
|
|
47
|
+
{
|
|
48
|
+
id: fieldUtils.helperId(name),
|
|
49
|
+
className: fieldUtils.cx(fieldBase_module.default.helperText, error && fieldBase_module.default.helperTextError),
|
|
50
|
+
role: error ? "alert" : void 0,
|
|
51
|
+
children: helperText
|
|
52
|
+
}
|
|
53
|
+
)
|
|
54
|
+
] });
|
|
55
|
+
}
|
|
56
|
+
exports.TextField = TextField;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { FieldComponentProps } from '../../types';
|
|
2
|
+
export declare function TextField({ name, value, onChange, onBlur, error, helperText, label, placeholder, disabled, readOnly, required, }: Readonly<FieldComponentProps>): import("react/jsx-runtime").JSX.Element;
|
|
3
|
+
//# sourceMappingURL=TextField.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TextField.d.ts","sourceRoot":"","sources":["../../../src/fields/TextField/TextField.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAIvD,wBAAgB,SAAS,CAAC,EACxB,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,MAAM,EACN,KAAK,EACL,UAAU,EACV,KAAK,EACL,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,QAAQ,GACT,EAAE,QAAQ,CAAC,mBAAmB,CAAC,2CAqC/B"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { jsxs, jsx } from "react/jsx-runtime";
|
|
2
|
+
import styles from "../fieldBase.module.css.js";
|
|
3
|
+
import { ariaProps, cx, labelId, helperId } from "../fieldUtils.js";
|
|
4
|
+
function TextField({
|
|
5
|
+
name,
|
|
6
|
+
value,
|
|
7
|
+
onChange,
|
|
8
|
+
onBlur,
|
|
9
|
+
error,
|
|
10
|
+
helperText,
|
|
11
|
+
label,
|
|
12
|
+
placeholder,
|
|
13
|
+
disabled,
|
|
14
|
+
readOnly,
|
|
15
|
+
required
|
|
16
|
+
}) {
|
|
17
|
+
const aria = ariaProps(name, { error, helperText, required, label });
|
|
18
|
+
return /* @__PURE__ */ jsxs("div", { className: styles.wrapper, children: [
|
|
19
|
+
label && /* @__PURE__ */ jsx(
|
|
20
|
+
"label",
|
|
21
|
+
{
|
|
22
|
+
id: labelId(name),
|
|
23
|
+
htmlFor: name,
|
|
24
|
+
className: cx(styles.label, required && styles.labelRequired),
|
|
25
|
+
children: label
|
|
26
|
+
}
|
|
27
|
+
),
|
|
28
|
+
/* @__PURE__ */ jsx(
|
|
29
|
+
"input",
|
|
30
|
+
{
|
|
31
|
+
...aria,
|
|
32
|
+
type: "text",
|
|
33
|
+
name,
|
|
34
|
+
value: value ?? "",
|
|
35
|
+
onChange,
|
|
36
|
+
onBlur,
|
|
37
|
+
placeholder,
|
|
38
|
+
disabled,
|
|
39
|
+
readOnly,
|
|
40
|
+
className: cx(styles.input, error && styles.inputError)
|
|
41
|
+
}
|
|
42
|
+
),
|
|
43
|
+
helperText && /* @__PURE__ */ jsx(
|
|
44
|
+
"span",
|
|
45
|
+
{
|
|
46
|
+
id: helperId(name),
|
|
47
|
+
className: cx(styles.helperText, error && styles.helperTextError),
|
|
48
|
+
role: error ? "alert" : void 0,
|
|
49
|
+
children: helperText
|
|
50
|
+
}
|
|
51
|
+
)
|
|
52
|
+
] });
|
|
53
|
+
}
|
|
54
|
+
export {
|
|
55
|
+
TextField
|
|
56
|
+
};
|