dynamic-modal 1.1.9 → 1.1.10
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 +0 -1
- package/dist/components/input-upload/input-upload.js +3 -3
- package/dist/components/make-button/make-button.js +19 -10
- package/dist/components/make-description/make-description.js +2 -2
- package/dist/components/make-input/make-input.js +57 -29
- package/dist/components/make-select/make-select.js +66 -29
- package/dist/components/make-textarea/make-textarea.js +57 -29
- package/dist/components/make-toggle/make-toggle.js +57 -29
- package/dist/components/make-upload/make-upload.js +72 -18
- package/dist/components/portal/portal.js +20 -10
- package/dist/context/component/component-state.d.ts +3 -3
- package/dist/context/component/component-state.js +20 -11
- package/dist/hooks/use-enable-if.d.ts +9 -0
- package/dist/hooks/use-enable-if.js +45 -0
- package/dist/hooks/use-live-data.d.ts +14 -0
- package/dist/hooks/use-live-data.js +42 -0
- package/dist/hooks/use-render-if.d.ts +12 -0
- package/dist/hooks/use-render-if.js +51 -0
- package/dist/interfaces/component-state.d.ts +8 -8
- package/dist/modal.js +70 -58
- package/dist/util/general/general.util.d.ts +3 -0
- package/dist/util/general/general.util.js +28 -0
- package/eslint.config.mjs +72 -14
- package/examples/live-data.ts +0 -1
- package/package.json +11 -9
- package/src/components/input-upload/input-upload.tsx +40 -28
- package/src/components/make-button/make-button.tsx +11 -13
- package/src/components/make-description/make-description.tsx +14 -8
- package/src/components/make-input/make-input.tsx +94 -47
- package/src/components/make-select/make-select.tsx +118 -48
- package/src/components/make-textarea/make-textarea.tsx +94 -47
- package/src/components/make-toggle/make-toggle.tsx +94 -47
- package/src/components/make-upload/make-upload.tsx +88 -36
- package/src/components/portal/portal.tsx +27 -25
- package/src/context/component/component-state.tsx +16 -9
- package/src/hooks/modal-handler.ts +17 -14
- package/src/hooks/use-enable-if.ts +64 -0
- package/src/hooks/use-live-data.ts +45 -0
- package/src/hooks/use-render-if.ts +59 -0
- package/src/interfaces/component-state.ts +38 -23
- package/src/interfaces/field.ts +33 -27
- package/src/interfaces/input-upload.ts +17 -15
- package/src/interfaces/make-button.ts +14 -13
- package/src/interfaces/make-description.ts +9 -8
- package/src/interfaces/make-field-group.ts +9 -8
- package/src/interfaces/make-input.ts +9 -8
- package/src/interfaces/make-select.ts +9 -9
- package/src/interfaces/make-textarea.ts +5 -5
- package/src/interfaces/make-toggle.ts +3 -3
- package/src/interfaces/make-upload.ts +8 -8
- package/src/interfaces/modal.ts +53 -39
- package/src/interfaces/option.ts +3 -3
- package/src/interfaces/portal.ts +5 -5
- package/src/modal.tsx +243 -147
- package/src/util/general/general.util.ts +27 -0
- package/tsconfig.json +1 -1
- package/dist/hooks/field-render.d.ts +0 -20
- package/dist/hooks/field-render.js +0 -115
- package/dist/tools/general.d.ts +0 -1
- package/dist/tools/general.js +0 -11
- package/src/hooks/field-render.ts +0 -143
- package/src/tools/general.ts +0 -8
package/README.md
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
# dynamic-modal
|
|
2
2
|
|
|
3
|
-
<<<<<<< README.md
|
|
4
3
|
`dynamic-modal` is a TypeScript library for creating reusable modals in React and Next.js applications. It uses JSON objects to configure the modal structure, eliminating the need to write HTML. This approach simplifies modal creation and customization, allowing you to open and close modals using a custom hook.
|
|
5
4
|
|
|
6
5
|
## Requirements
|
|
@@ -45,7 +45,7 @@ const InputUpload = (_a) => {
|
|
|
45
45
|
const fileResult = {
|
|
46
46
|
name: blob.name,
|
|
47
47
|
size: blob.size,
|
|
48
|
-
data: fileReader.result
|
|
48
|
+
data: fileReader.result,
|
|
49
49
|
};
|
|
50
50
|
resolve(fileResult);
|
|
51
51
|
};
|
|
@@ -54,8 +54,8 @@ const InputUpload = (_a) => {
|
|
|
54
54
|
};
|
|
55
55
|
});
|
|
56
56
|
};
|
|
57
|
-
return (react_1.default.createElement("div", { className:
|
|
58
|
-
props.label && react_1.default.createElement("label", { className: "block mb-2 text-sm font-medium text-gray-900 dark:text-white", htmlFor: `file-input-${props.id}` }, props.label),
|
|
57
|
+
return (react_1.default.createElement("div", { className: "flex flex-col w-full gap-1 text-center" },
|
|
58
|
+
props.label && (react_1.default.createElement("label", { className: "block mb-2 text-sm font-medium text-gray-900 dark:text-white", htmlFor: `file-input-${props.id}` }, props.label)),
|
|
59
59
|
react_1.default.createElement("input", Object.assign({ className: "file:transition-all file:delay-150 block w-full text-sm text-slate-500\r\n file:mr-4 file:py-2 file:px-4 file:rounded-md\r\n file:border-0 file:text-sm file:font-semibold\r\n file:bg-gray-100 file:text-blue-600\r\n hover:file:bg-blue-700 hover:file:text-white cursor-pointer disabled:cursor-not-allowed", "aria-describedby": `file-input-${props.id}-help`, id: `file-input-${props.id}`, type: "file", onChange: onChangeHandler }, props)),
|
|
60
60
|
react_1.default.createElement("p", { className: "mt-1 text-sm text-gray-500 dark:text-gray-300 text-start", id: `file-input-${props.id}-help` }, (_b = props.helpText) === null || _b === void 0 ? void 0 : _b.toUpperCase())));
|
|
61
61
|
};
|
|
@@ -16,20 +16,29 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
16
16
|
}) : function(o, v) {
|
|
17
17
|
o["default"] = v;
|
|
18
18
|
});
|
|
19
|
-
var __importStar = (this && this.__importStar) || function (
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
};
|
|
19
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
20
|
+
var ownKeys = function(o) {
|
|
21
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
22
|
+
var ar = [];
|
|
23
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
24
|
+
return ar;
|
|
25
|
+
};
|
|
26
|
+
return ownKeys(o);
|
|
27
|
+
};
|
|
28
|
+
return function (mod) {
|
|
29
|
+
if (mod && mod.__esModule) return mod;
|
|
30
|
+
var result = {};
|
|
31
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
32
|
+
__setModuleDefault(result, mod);
|
|
33
|
+
return result;
|
|
34
|
+
};
|
|
35
|
+
})();
|
|
26
36
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
37
|
const react_1 = __importStar(require("react"));
|
|
28
38
|
const component_state_1 = require("../../context/component/component-state");
|
|
29
|
-
const general_1 = require("../../tools/general");
|
|
30
39
|
const MakeButton = ({ element }) => {
|
|
31
40
|
const { Button } = (0, react_1.useContext)(component_state_1.ComponentStateContext);
|
|
32
|
-
const elementId = (0, react_1.
|
|
33
|
-
return
|
|
41
|
+
const elementId = (0, react_1.useId)();
|
|
42
|
+
return react_1.default.createElement(Button, Object.assign({}, element, { id: elementId }));
|
|
34
43
|
};
|
|
35
44
|
exports.default = MakeButton;
|
|
@@ -5,8 +5,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
};
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
const react_1 = __importDefault(require("react"));
|
|
8
|
-
const MakeDescription = ({ element: { text, Icon, containerStyle, textStyle } }) => {
|
|
9
|
-
return (react_1.default.createElement("div", { className:
|
|
8
|
+
const MakeDescription = ({ element: { text, Icon, containerStyle, textStyle }, }) => {
|
|
9
|
+
return (react_1.default.createElement("div", { className: "flex gap-4 w-full h-auto text-xs text-center p-2 border-1 rounded-md", style: containerStyle },
|
|
10
10
|
Icon && react_1.default.createElement(Icon, null),
|
|
11
11
|
react_1.default.createElement("p", { style: textStyle }, text)));
|
|
12
12
|
};
|
|
@@ -16,13 +16,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
16
16
|
}) : function(o, v) {
|
|
17
17
|
o["default"] = v;
|
|
18
18
|
});
|
|
19
|
-
var __importStar = (this && this.__importStar) || function (
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
};
|
|
19
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
20
|
+
var ownKeys = function(o) {
|
|
21
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
22
|
+
var ar = [];
|
|
23
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
24
|
+
return ar;
|
|
25
|
+
};
|
|
26
|
+
return ownKeys(o);
|
|
27
|
+
};
|
|
28
|
+
return function (mod) {
|
|
29
|
+
if (mod && mod.__esModule) return mod;
|
|
30
|
+
var result = {};
|
|
31
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
32
|
+
__setModuleDefault(result, mod);
|
|
33
|
+
return result;
|
|
34
|
+
};
|
|
35
|
+
})();
|
|
26
36
|
var __rest = (this && this.__rest) || function (s, e) {
|
|
27
37
|
var t = {};
|
|
28
38
|
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
@@ -34,33 +44,51 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
34
44
|
}
|
|
35
45
|
return t;
|
|
36
46
|
};
|
|
47
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
48
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
49
|
+
};
|
|
37
50
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
38
51
|
const react_1 = __importStar(require("react"));
|
|
39
52
|
const react_hook_form_1 = require("react-hook-form");
|
|
40
|
-
const field_render_1 = require("../../hooks/field-render");
|
|
41
53
|
const component_state_1 = require("../../context/component/component-state");
|
|
42
|
-
const
|
|
43
|
-
const
|
|
44
|
-
|
|
45
|
-
var _d = _a.element, _e = _d.validation, { required } = _e, validation = __rest(_e, ["required"]), { enableIf, renderIf } = _d, element = __rest(_d, ["validation", "enableIf", "renderIf"]), props = __rest(_a, ["element"]);
|
|
54
|
+
const use_enable_if_1 = __importDefault(require("../../hooks/use-enable-if"));
|
|
55
|
+
const use_render_if_1 = __importDefault(require("../../hooks/use-render-if"));
|
|
56
|
+
const MakeInput = ({ element, control, watch, unregister, }) => {
|
|
46
57
|
const { Input } = (0, react_1.useContext)(component_state_1.ComponentStateContext);
|
|
47
|
-
const {
|
|
48
|
-
const
|
|
58
|
+
const { name } = element, _a = element.validation, { required, message, regex } = _a, otherValidation = __rest(_a, ["required", "message", "regex"]), { enableIf, renderIf } = element, inputProps = __rest(element, ["name", "validation", "enableIf", "renderIf"]);
|
|
59
|
+
const { checkEnable, enable } = (0, use_enable_if_1.default)({ elementEnableIf: enableIf });
|
|
60
|
+
const { checkRender, render } = (0, use_render_if_1.default)({
|
|
61
|
+
elementName: name,
|
|
62
|
+
elementRenderIf: renderIf,
|
|
63
|
+
unregister,
|
|
64
|
+
});
|
|
65
|
+
const elementId = (0, react_1.useId)();
|
|
49
66
|
(0, react_1.useEffect)(() => {
|
|
50
|
-
const
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
67
|
+
const unsubscribe = watch((formData, { name, type }) => {
|
|
68
|
+
if (!name)
|
|
69
|
+
return;
|
|
70
|
+
if (enableIf) {
|
|
71
|
+
checkEnable(formData, { name, type });
|
|
72
|
+
}
|
|
73
|
+
if (renderIf) {
|
|
74
|
+
checkRender(formData, { name, type });
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
return () => unsubscribe.unsubscribe();
|
|
78
|
+
}, [watch]);
|
|
79
|
+
if (!render)
|
|
80
|
+
return null;
|
|
81
|
+
return (react_1.default.createElement(react_hook_form_1.Controller, { control: control, name: name, rules: Object.assign({ required: {
|
|
82
|
+
value: required,
|
|
83
|
+
message: message !== null && message !== void 0 ? message : '',
|
|
84
|
+
}, pattern: regex
|
|
85
|
+
? {
|
|
86
|
+
value: regex,
|
|
87
|
+
message: message !== null && message !== void 0 ? message : '',
|
|
88
|
+
}
|
|
89
|
+
: undefined }, otherValidation), render: ({ field: { onChange, value }, fieldState: { invalid, error }, }) => {
|
|
90
|
+
var _a;
|
|
91
|
+
return (react_1.default.createElement(Input, Object.assign({}, inputProps, { name: name, id: elementId, onChange: onChange, value: value !== null && value !== void 0 ? value : '', invalid: invalid, error: error, disabled: (_a = element.disabled) !== null && _a !== void 0 ? _a : !enable })));
|
|
92
|
+
} }));
|
|
65
93
|
};
|
|
66
94
|
exports.default = MakeInput;
|
|
@@ -16,13 +16,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
16
16
|
}) : function(o, v) {
|
|
17
17
|
o["default"] = v;
|
|
18
18
|
});
|
|
19
|
-
var __importStar = (this && this.__importStar) || function (
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
};
|
|
19
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
20
|
+
var ownKeys = function(o) {
|
|
21
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
22
|
+
var ar = [];
|
|
23
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
24
|
+
return ar;
|
|
25
|
+
};
|
|
26
|
+
return ownKeys(o);
|
|
27
|
+
};
|
|
28
|
+
return function (mod) {
|
|
29
|
+
if (mod && mod.__esModule) return mod;
|
|
30
|
+
var result = {};
|
|
31
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
32
|
+
__setModuleDefault(result, mod);
|
|
33
|
+
return result;
|
|
34
|
+
};
|
|
35
|
+
})();
|
|
26
36
|
var __rest = (this && this.__rest) || function (s, e) {
|
|
27
37
|
var t = {};
|
|
28
38
|
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
@@ -34,33 +44,60 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
34
44
|
}
|
|
35
45
|
return t;
|
|
36
46
|
};
|
|
47
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
48
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
49
|
+
};
|
|
37
50
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
38
51
|
const react_1 = __importStar(require("react"));
|
|
39
52
|
const react_hook_form_1 = require("react-hook-form");
|
|
40
|
-
const field_render_1 = require("../../hooks/field-render");
|
|
41
|
-
const general_1 = require("../../tools/general");
|
|
42
53
|
const component_state_1 = require("../../context/component/component-state");
|
|
43
|
-
const
|
|
44
|
-
|
|
45
|
-
|
|
54
|
+
const use_enable_if_1 = __importDefault(require("../../hooks/use-enable-if"));
|
|
55
|
+
const use_render_if_1 = __importDefault(require("../../hooks/use-render-if"));
|
|
56
|
+
const use_live_data_1 = __importDefault(require("../../hooks/use-live-data"));
|
|
57
|
+
const MakeSelect = ({ element, control, watch, setValue, unregister, }) => {
|
|
46
58
|
const { Select } = (0, react_1.useContext)(component_state_1.ComponentStateContext);
|
|
47
|
-
const {
|
|
48
|
-
const
|
|
59
|
+
const { name } = element, _a = element.validation, { required, message, regex } = _a, otherValidation = __rest(_a, ["required", "message", "regex"]), { enableIf, renderIf, liveData: elementLiveData } = element, inputProps = __rest(element, ["name", "validation", "enableIf", "renderIf", "liveData"]);
|
|
60
|
+
const { checkLiveData, liveData, liveSearching } = (0, use_live_data_1.default)({
|
|
61
|
+
elementName: name,
|
|
62
|
+
elementLiveData,
|
|
63
|
+
setValue,
|
|
64
|
+
});
|
|
65
|
+
const { checkEnable, enable } = (0, use_enable_if_1.default)({ elementEnableIf: enableIf });
|
|
66
|
+
const { checkRender, render } = (0, use_render_if_1.default)({
|
|
67
|
+
elementName: name,
|
|
68
|
+
elementRenderIf: renderIf,
|
|
69
|
+
unregister,
|
|
70
|
+
});
|
|
71
|
+
const elementId = (0, react_1.useId)();
|
|
49
72
|
(0, react_1.useEffect)(() => {
|
|
50
|
-
const
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
73
|
+
const unsubscribe = watch((formData, { name, type }) => {
|
|
74
|
+
if (!name)
|
|
75
|
+
return;
|
|
76
|
+
if (enableIf) {
|
|
77
|
+
checkEnable(formData, { name, type });
|
|
78
|
+
}
|
|
79
|
+
if (renderIf) {
|
|
80
|
+
checkRender(formData, { name, type });
|
|
81
|
+
}
|
|
82
|
+
if (elementLiveData) {
|
|
83
|
+
checkLiveData(formData, { name, type });
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
return () => unsubscribe.unsubscribe();
|
|
87
|
+
}, [watch]);
|
|
88
|
+
if (!render)
|
|
89
|
+
return null;
|
|
90
|
+
return (react_1.default.createElement(react_hook_form_1.Controller, { control: control, name: name, rules: Object.assign({ required: {
|
|
91
|
+
value: required,
|
|
92
|
+
message: message !== null && message !== void 0 ? message : '',
|
|
93
|
+
}, pattern: regex
|
|
94
|
+
? {
|
|
95
|
+
value: regex,
|
|
96
|
+
message: message !== null && message !== void 0 ? message : '',
|
|
97
|
+
}
|
|
98
|
+
: undefined }, otherValidation), render: ({ field: { onChange, value }, fieldState: { invalid, error }, }) => {
|
|
99
|
+
var _a, _b;
|
|
100
|
+
return (react_1.default.createElement(Select, Object.assign({}, inputProps, { id: elementId, name: name, onChange: onChange, value: value, invalid: invalid, error: error, disabled: (_a = element.disabled) !== null && _a !== void 0 ? _a : !enable, liveSearching: liveSearching, options: liveData || ((_b = element.options) !== null && _b !== void 0 ? _b : []) })));
|
|
101
|
+
} }));
|
|
65
102
|
};
|
|
66
103
|
exports.default = MakeSelect;
|
|
@@ -16,13 +16,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
16
16
|
}) : function(o, v) {
|
|
17
17
|
o["default"] = v;
|
|
18
18
|
});
|
|
19
|
-
var __importStar = (this && this.__importStar) || function (
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
};
|
|
19
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
20
|
+
var ownKeys = function(o) {
|
|
21
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
22
|
+
var ar = [];
|
|
23
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
24
|
+
return ar;
|
|
25
|
+
};
|
|
26
|
+
return ownKeys(o);
|
|
27
|
+
};
|
|
28
|
+
return function (mod) {
|
|
29
|
+
if (mod && mod.__esModule) return mod;
|
|
30
|
+
var result = {};
|
|
31
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
32
|
+
__setModuleDefault(result, mod);
|
|
33
|
+
return result;
|
|
34
|
+
};
|
|
35
|
+
})();
|
|
26
36
|
var __rest = (this && this.__rest) || function (s, e) {
|
|
27
37
|
var t = {};
|
|
28
38
|
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
@@ -34,33 +44,51 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
34
44
|
}
|
|
35
45
|
return t;
|
|
36
46
|
};
|
|
47
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
48
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
49
|
+
};
|
|
37
50
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
38
51
|
const react_1 = __importStar(require("react"));
|
|
39
52
|
const react_hook_form_1 = require("react-hook-form");
|
|
40
|
-
const field_render_1 = require("../../hooks/field-render");
|
|
41
|
-
const general_1 = require("../../tools/general");
|
|
42
53
|
const component_state_1 = require("../../context/component/component-state");
|
|
43
|
-
const
|
|
44
|
-
|
|
45
|
-
|
|
54
|
+
const use_enable_if_1 = __importDefault(require("../../hooks/use-enable-if"));
|
|
55
|
+
const use_render_if_1 = __importDefault(require("../../hooks/use-render-if"));
|
|
56
|
+
const MakeTextarea = ({ element, control, watch, unregister, }) => {
|
|
46
57
|
const { Textarea } = (0, react_1.useContext)(component_state_1.ComponentStateContext);
|
|
47
|
-
const {
|
|
48
|
-
const
|
|
58
|
+
const { name } = element, _a = element.validation, { required, message, regex } = _a, otherValidation = __rest(_a, ["required", "message", "regex"]), { enableIf, renderIf } = element, inputProps = __rest(element, ["name", "validation", "enableIf", "renderIf"]);
|
|
59
|
+
const { checkEnable, enable } = (0, use_enable_if_1.default)({ elementEnableIf: enableIf });
|
|
60
|
+
const { checkRender, render } = (0, use_render_if_1.default)({
|
|
61
|
+
elementName: name,
|
|
62
|
+
elementRenderIf: renderIf,
|
|
63
|
+
unregister,
|
|
64
|
+
});
|
|
65
|
+
const elementId = (0, react_1.useId)();
|
|
49
66
|
(0, react_1.useEffect)(() => {
|
|
50
|
-
const
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
67
|
+
const unsubscribe = watch((formData, { name, type }) => {
|
|
68
|
+
if (!name)
|
|
69
|
+
return;
|
|
70
|
+
if (enableIf) {
|
|
71
|
+
checkEnable(formData, { name, type });
|
|
72
|
+
}
|
|
73
|
+
if (renderIf) {
|
|
74
|
+
checkRender(formData, { name, type });
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
return () => unsubscribe.unsubscribe();
|
|
78
|
+
}, [watch]);
|
|
79
|
+
if (!render)
|
|
80
|
+
return null;
|
|
81
|
+
return (react_1.default.createElement(react_hook_form_1.Controller, { name: name, control: control, rules: Object.assign({ required: {
|
|
82
|
+
value: required,
|
|
83
|
+
message: message !== null && message !== void 0 ? message : '',
|
|
84
|
+
}, pattern: regex
|
|
85
|
+
? {
|
|
86
|
+
value: regex,
|
|
87
|
+
message: message !== null && message !== void 0 ? message : '',
|
|
88
|
+
}
|
|
89
|
+
: undefined }, otherValidation), render: ({ field: { onChange, value }, fieldState: { invalid, error }, }) => {
|
|
90
|
+
var _a;
|
|
91
|
+
return (react_1.default.createElement(Textarea, Object.assign({}, inputProps, { id: elementId, name: name, onChange: onChange, value: value !== null && value !== void 0 ? value : '', invalid: invalid, error: error, disabled: (_a = element.disabled) !== null && _a !== void 0 ? _a : !enable })));
|
|
92
|
+
} }));
|
|
65
93
|
};
|
|
66
94
|
exports.default = MakeTextarea;
|
|
@@ -16,13 +16,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
16
16
|
}) : function(o, v) {
|
|
17
17
|
o["default"] = v;
|
|
18
18
|
});
|
|
19
|
-
var __importStar = (this && this.__importStar) || function (
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
};
|
|
19
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
20
|
+
var ownKeys = function(o) {
|
|
21
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
22
|
+
var ar = [];
|
|
23
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
24
|
+
return ar;
|
|
25
|
+
};
|
|
26
|
+
return ownKeys(o);
|
|
27
|
+
};
|
|
28
|
+
return function (mod) {
|
|
29
|
+
if (mod && mod.__esModule) return mod;
|
|
30
|
+
var result = {};
|
|
31
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
32
|
+
__setModuleDefault(result, mod);
|
|
33
|
+
return result;
|
|
34
|
+
};
|
|
35
|
+
})();
|
|
26
36
|
var __rest = (this && this.__rest) || function (s, e) {
|
|
27
37
|
var t = {};
|
|
28
38
|
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
@@ -34,33 +44,51 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
34
44
|
}
|
|
35
45
|
return t;
|
|
36
46
|
};
|
|
47
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
48
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
49
|
+
};
|
|
37
50
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
38
51
|
const react_1 = __importStar(require("react"));
|
|
39
52
|
const react_hook_form_1 = require("react-hook-form");
|
|
40
|
-
const field_render_1 = require("../../hooks/field-render");
|
|
41
|
-
const general_1 = require("../../tools/general");
|
|
42
53
|
const component_state_1 = require("../../context/component/component-state");
|
|
43
|
-
const
|
|
44
|
-
|
|
45
|
-
|
|
54
|
+
const use_enable_if_1 = __importDefault(require("../../hooks/use-enable-if"));
|
|
55
|
+
const use_render_if_1 = __importDefault(require("../../hooks/use-render-if"));
|
|
56
|
+
const MakeToggle = ({ element, control, watch, unregister, }) => {
|
|
46
57
|
const { Toggle } = (0, react_1.useContext)(component_state_1.ComponentStateContext);
|
|
47
|
-
const {
|
|
48
|
-
const
|
|
58
|
+
const { name } = element, _a = element.validation, { required, message, regex } = _a, otherValidation = __rest(_a, ["required", "message", "regex"]), { enableIf, renderIf } = element, inputProps = __rest(element, ["name", "validation", "enableIf", "renderIf"]);
|
|
59
|
+
const { checkEnable, enable } = (0, use_enable_if_1.default)({ elementEnableIf: enableIf });
|
|
60
|
+
const { checkRender, render } = (0, use_render_if_1.default)({
|
|
61
|
+
elementName: name,
|
|
62
|
+
elementRenderIf: renderIf,
|
|
63
|
+
unregister,
|
|
64
|
+
});
|
|
65
|
+
const elementId = (0, react_1.useId)();
|
|
49
66
|
(0, react_1.useEffect)(() => {
|
|
50
|
-
const
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
67
|
+
const unsubscribe = watch((formData, { name, type }) => {
|
|
68
|
+
if (!name)
|
|
69
|
+
return;
|
|
70
|
+
if (enableIf) {
|
|
71
|
+
checkEnable(formData, { name, type });
|
|
72
|
+
}
|
|
73
|
+
if (renderIf) {
|
|
74
|
+
checkRender(formData, { name, type });
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
return () => unsubscribe.unsubscribe();
|
|
78
|
+
}, [watch]);
|
|
79
|
+
if (!render)
|
|
80
|
+
return null;
|
|
81
|
+
return (react_1.default.createElement(react_hook_form_1.Controller, { control: control, name: name, rules: Object.assign({ required: {
|
|
82
|
+
value: required,
|
|
83
|
+
message: message !== null && message !== void 0 ? message : '',
|
|
84
|
+
}, pattern: regex
|
|
85
|
+
? {
|
|
86
|
+
value: regex,
|
|
87
|
+
message: message !== null && message !== void 0 ? message : '',
|
|
88
|
+
}
|
|
89
|
+
: undefined }, otherValidation), render: ({ field: { onChange, value }, fieldState: { invalid, error }, }) => {
|
|
90
|
+
var _a;
|
|
91
|
+
return (react_1.default.createElement(Toggle, Object.assign({}, inputProps, { id: elementId, name: name, onChange: onChange, value: value !== null && value !== void 0 ? value : '', invalid: invalid, error: error, disabled: (_a = element.disabled) !== null && _a !== void 0 ? _a : !enable })));
|
|
92
|
+
} }));
|
|
65
93
|
};
|
|
66
94
|
exports.default = MakeToggle;
|
|
@@ -1,5 +1,38 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
'use client';
|
|
3
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
4
|
+
if (k2 === undefined) k2 = k;
|
|
5
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
6
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
7
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
8
|
+
}
|
|
9
|
+
Object.defineProperty(o, k2, desc);
|
|
10
|
+
}) : (function(o, m, k, k2) {
|
|
11
|
+
if (k2 === undefined) k2 = k;
|
|
12
|
+
o[k2] = m[k];
|
|
13
|
+
}));
|
|
14
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
15
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
16
|
+
}) : function(o, v) {
|
|
17
|
+
o["default"] = v;
|
|
18
|
+
});
|
|
19
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
20
|
+
var ownKeys = function(o) {
|
|
21
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
22
|
+
var ar = [];
|
|
23
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
24
|
+
return ar;
|
|
25
|
+
};
|
|
26
|
+
return ownKeys(o);
|
|
27
|
+
};
|
|
28
|
+
return function (mod) {
|
|
29
|
+
if (mod && mod.__esModule) return mod;
|
|
30
|
+
var result = {};
|
|
31
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
32
|
+
__setModuleDefault(result, mod);
|
|
33
|
+
return result;
|
|
34
|
+
};
|
|
35
|
+
})();
|
|
3
36
|
var __rest = (this && this.__rest) || function (s, e) {
|
|
4
37
|
var t = {};
|
|
5
38
|
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
@@ -15,25 +48,46 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
15
48
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
16
49
|
};
|
|
17
50
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
const react_1 =
|
|
51
|
+
const react_1 = __importStar(require("react"));
|
|
19
52
|
const react_hook_form_1 = require("react-hook-form");
|
|
20
53
|
const input_upload_1 = __importDefault(require("../input-upload/input-upload"));
|
|
21
|
-
const
|
|
22
|
-
const
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
const {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
return
|
|
36
|
-
|
|
37
|
-
|
|
54
|
+
const use_enable_if_1 = __importDefault(require("../../hooks/use-enable-if"));
|
|
55
|
+
const use_render_if_1 = __importDefault(require("../../hooks/use-render-if"));
|
|
56
|
+
const MakeUpload = ({ element, control, watch, unregister, }) => {
|
|
57
|
+
const { name } = element, _a = element.validation, { required, message, regex } = _a, otherValidation = __rest(_a, ["required", "message", "regex"]), { enableIf, renderIf } = element, inputProps = __rest(element, ["name", "validation", "enableIf", "renderIf"]);
|
|
58
|
+
const { checkEnable, enable } = (0, use_enable_if_1.default)({ elementEnableIf: enableIf });
|
|
59
|
+
const { checkRender, render } = (0, use_render_if_1.default)({
|
|
60
|
+
elementName: name,
|
|
61
|
+
elementRenderIf: renderIf,
|
|
62
|
+
unregister,
|
|
63
|
+
});
|
|
64
|
+
const elementId = (0, react_1.useId)();
|
|
65
|
+
(0, react_1.useEffect)(() => {
|
|
66
|
+
const unsubscribe = watch((formData, { name, type }) => {
|
|
67
|
+
if (!name)
|
|
68
|
+
return;
|
|
69
|
+
if (enableIf) {
|
|
70
|
+
checkEnable(formData, { name, type });
|
|
71
|
+
}
|
|
72
|
+
if (renderIf) {
|
|
73
|
+
checkRender(formData, { name, type });
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
return () => unsubscribe.unsubscribe();
|
|
77
|
+
}, [watch]);
|
|
78
|
+
if (!render)
|
|
79
|
+
return null;
|
|
80
|
+
return (react_1.default.createElement(react_hook_form_1.Controller, { control: control, name: name, rules: Object.assign({ required: {
|
|
81
|
+
value: required,
|
|
82
|
+
message: message !== null && message !== void 0 ? message : '',
|
|
83
|
+
}, pattern: regex
|
|
84
|
+
? {
|
|
85
|
+
value: regex,
|
|
86
|
+
message: message !== null && message !== void 0 ? message : '',
|
|
87
|
+
}
|
|
88
|
+
: undefined }, otherValidation), render: ({ field: { onChange } }) => {
|
|
89
|
+
var _a;
|
|
90
|
+
return (react_1.default.createElement(input_upload_1.default, Object.assign({}, inputProps, { id: elementId, name: name, onChange: onChange, disabled: (_a = element.disabled) !== null && _a !== void 0 ? _a : !enable })));
|
|
91
|
+
} }));
|
|
38
92
|
};
|
|
39
93
|
exports.default = MakeUpload;
|