@dappworks/kit 0.4.146 → 0.4.148
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/aiem.mjs +2 -2
- package/dist/aiem.mjs.map +1 -1
- package/dist/{chunk-RHDHN6R4.mjs → chunk-2WJE2UJN.mjs} +1 -4
- package/dist/chunk-2WJE2UJN.mjs.map +1 -0
- package/dist/{chunk-7FF4BCFW.mjs → chunk-AXL36W4Z.mjs} +3 -3
- package/dist/chunk-AXL36W4Z.mjs.map +1 -0
- package/dist/{chunk-WT2ARRCR.mjs → chunk-J5PZWR2P.mjs} +12 -7
- package/dist/chunk-J5PZWR2P.mjs.map +1 -0
- package/dist/{chunk-5SFAINN6.mjs → chunk-K73JTEJQ.mjs} +2 -2
- package/dist/{chunk-MGU3KYGC.mjs → chunk-K7LFG5BA.mjs} +1 -1
- package/dist/chunk-K7LFG5BA.mjs.map +1 -0
- package/dist/{chunk-Q3AD5RHQ.mjs → chunk-UPGWJHSO.mjs} +2 -2
- package/dist/{chunk-Q3AD5RHQ.mjs.map → chunk-UPGWJHSO.mjs.map} +1 -1
- package/dist/dev.mjs +2 -2
- package/dist/experimental.mjs +2 -2
- package/dist/experimental.mjs.map +1 -1
- package/dist/form.d.mts +40 -27
- package/dist/form.mjs +36 -55
- package/dist/form.mjs.map +1 -1
- package/dist/index.mjs +3 -3
- package/dist/index.mjs.map +1 -1
- package/dist/jsontable.mjs +3 -3
- package/dist/metrics.mjs +3 -3
- package/dist/plugins.mjs +2 -2
- package/dist/ui.d.mts +7 -10
- package/dist/ui.mjs +9 -4
- package/dist/ui.mjs.map +1 -1
- package/dist/utils.mjs +2 -2
- package/package.json +1 -1
- package/dist/chunk-7FF4BCFW.mjs.map +0 -1
- package/dist/chunk-MGU3KYGC.mjs.map +0 -1
- package/dist/chunk-RHDHN6R4.mjs.map +0 -1
- package/dist/chunk-WT2ARRCR.mjs.map +0 -1
- /package/dist/{chunk-5SFAINN6.mjs.map → chunk-K73JTEJQ.mjs.map} +0 -0
package/dist/form.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import React, {
|
|
2
|
-
import {
|
|
1
|
+
import React$1, { Dispatch, SetStateAction, ReactNode } from 'react';
|
|
2
|
+
import { TabsProps, ButtonProps, CheckboxProps, SlotsToClasses, InputSlots, InputProps, SelectSlots, SelectProps, SelectedItems, DatePickerProps, ModalSlots } from '@nextui-org/react';
|
|
3
3
|
import { UiSchema, RJSFSchema, WidgetProps, Widget } from '@rjsf/utils';
|
|
4
4
|
import * as _rjsf_validator_ajv8_lib_validator from '@rjsf/validator-ajv8/lib/validator';
|
|
5
5
|
import Form, { IChangeEvent } from '@rjsf/core';
|
|
@@ -10,7 +10,6 @@ import EventEmitter from 'events';
|
|
|
10
10
|
import 'typed-emitter';
|
|
11
11
|
|
|
12
12
|
declare class JSONSchemaFormState<T, U = UiSchema> {
|
|
13
|
-
formRef: LegacyRef<Form<any, RJSFSchema, any>> & Ref<Form<any, RJSFSchema, any>>;
|
|
14
13
|
value: JSONSchemaValue<T>;
|
|
15
14
|
schema: RJSFSchema;
|
|
16
15
|
uiSchema: U;
|
|
@@ -18,6 +17,7 @@ declare class JSONSchemaFormState<T, U = UiSchema> {
|
|
|
18
17
|
readonly: boolean;
|
|
19
18
|
liveValidate: boolean;
|
|
20
19
|
validator: _rjsf_validator_ajv8_lib_validator.default<any, RJSFSchema, any>;
|
|
20
|
+
formRef: React.RefObject<Form>;
|
|
21
21
|
get formData(): T;
|
|
22
22
|
set formData(value: T);
|
|
23
23
|
get dynamicData(): {
|
|
@@ -49,19 +49,30 @@ declare class JSONSchemaValue<T> {
|
|
|
49
49
|
|
|
50
50
|
type LayoutType = 'TabLayout' | 'GridLayout' | 'ListLayout' | 'SimpleLayout';
|
|
51
51
|
type FieldLayoutType<T, F extends keyof T> = Array<keyof NonNullable<T[F]>> | Array<Array<keyof NonNullable<T[F]>> | keyof NonNullable<T[F]>>;
|
|
52
|
-
type
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
52
|
+
type SubmitButtonProps<T> = ButtonProps & {
|
|
53
|
+
onAfterSubmit?: (formKey: FormKey<T>, data: FormDataOfKey<T>, setLoading: Dispatch<SetStateAction<boolean>>) => void;
|
|
54
|
+
};
|
|
55
|
+
type CombFormsCustomRender<T> = (formStates: {
|
|
56
|
+
[F in keyof T]?: JSONSchemaFormState<FormDataOfKey<T>, UiSchema>;
|
|
57
|
+
}) => React$1.ReactNode;
|
|
58
|
+
type CombFormsCustomRenderMap<T> = {
|
|
59
|
+
Top?: CombFormsCustomRender<T>;
|
|
60
|
+
SubmitButtonBefore?: CombFormsCustomRender<T>;
|
|
61
|
+
SubmitButtonAfter?: CombFormsCustomRender<T>;
|
|
62
|
+
};
|
|
63
|
+
type SubformCustomRender<T> = (formKey: FormKey<T>, formState: JSONSchemaFormState<FormDataOfKey<T>, UiSchema>) => React$1.ReactNode;
|
|
64
|
+
type SubformCustomRenderMap<T> = {
|
|
65
|
+
Top?: SubformCustomRender<T>;
|
|
66
|
+
SubmitButtonBefore?: SubformCustomRender<T>;
|
|
67
|
+
SubmitButtonAfter?: SubformCustomRender<T>;
|
|
68
|
+
};
|
|
56
69
|
type FormLayoutType<T, L> = L extends 'TabLayout' | 'ListLayout' | 'SimpleLayout' ? {
|
|
57
70
|
[F in keyof T]?: {
|
|
58
71
|
title?: string;
|
|
59
72
|
titleBoxCss?: string;
|
|
60
73
|
fieldLayout?: FieldLayoutType<T, F>;
|
|
61
|
-
submitButtonProps?:
|
|
62
|
-
|
|
63
|
-
};
|
|
64
|
-
customButtonProps?: CustomButtonProps<T>;
|
|
74
|
+
submitButtonProps?: SubmitButtonProps<T>;
|
|
75
|
+
customRender?: SubformCustomRenderMap<T>;
|
|
65
76
|
};
|
|
66
77
|
} : L extends 'GridLayout' ? {
|
|
67
78
|
[F in keyof T]?: {
|
|
@@ -70,22 +81,24 @@ type FormLayoutType<T, L> = L extends 'TabLayout' | 'ListLayout' | 'SimpleLayout
|
|
|
70
81
|
fieldLayout?: FieldLayoutType<T, F>;
|
|
71
82
|
colSpan?: number;
|
|
72
83
|
cardCss?: string;
|
|
73
|
-
submitButtonProps?:
|
|
74
|
-
|
|
75
|
-
};
|
|
76
|
-
customButtonProps?: CustomButtonProps<T>;
|
|
84
|
+
submitButtonProps?: SubmitButtonProps<T>;
|
|
85
|
+
customRender?: SubformCustomRenderMap<T>;
|
|
77
86
|
};
|
|
78
87
|
} : never;
|
|
79
88
|
type LayoutConfigType<T, L> = L extends 'TabLayout' ? {
|
|
80
89
|
$type: 'TabLayout';
|
|
81
90
|
$tabsProps?: TabsProps;
|
|
91
|
+
$combFormsCustomRender?: CombFormsCustomRenderMap<T>;
|
|
82
92
|
} & FormLayoutType<T, L> : L extends 'GridLayout' ? {
|
|
83
93
|
$type: 'GridLayout';
|
|
84
94
|
$gridColumn?: number;
|
|
95
|
+
$combFormsCustomRender?: CombFormsCustomRenderMap<T>;
|
|
85
96
|
} & FormLayoutType<T, L> : L extends 'ListLayout' ? {
|
|
86
97
|
$type: 'ListLayout';
|
|
98
|
+
$combFormsCustomRender?: CombFormsCustomRenderMap<T>;
|
|
87
99
|
} & FormLayoutType<T, L> : L extends 'SimpleLayout' ? {
|
|
88
100
|
$type: 'SimpleLayout';
|
|
101
|
+
$combFormsCustomRender?: CombFormsCustomRenderMap<T>;
|
|
89
102
|
} & FormLayoutType<T, L> : never;
|
|
90
103
|
type FormDataType = {
|
|
91
104
|
[key: string]: {
|
|
@@ -126,7 +139,7 @@ type JSONFormProps<T = FormDataType> = {
|
|
|
126
139
|
onBatchSubmit?: (formData: T, setLoading: Dispatch<SetStateAction<boolean>>) => void;
|
|
127
140
|
};
|
|
128
141
|
};
|
|
129
|
-
declare const JSONForm: <T extends FormDataType>(props: JSONFormProps<T>) => React.JSX.Element;
|
|
142
|
+
declare const JSONForm: <T extends FormDataType>(props: JSONFormProps<T>) => React$1.JSX.Element;
|
|
130
143
|
|
|
131
144
|
type Options$6 = {
|
|
132
145
|
className?: string;
|
|
@@ -143,7 +156,7 @@ interface CheckboxWidgetUIOptions {
|
|
|
143
156
|
"ui:widget": (props: CheckboxWidgetProps) => JSX.Element;
|
|
144
157
|
"ui:options": Options$6;
|
|
145
158
|
}
|
|
146
|
-
declare function CheckboxWidget({ onChange, options, label, value, disabled, uiSchema }: CheckboxWidgetProps): React.JSX.Element;
|
|
159
|
+
declare function CheckboxWidget({ onChange, options, label, value, disabled, uiSchema }: CheckboxWidgetProps): React$1.JSX.Element;
|
|
147
160
|
|
|
148
161
|
type Options$5 = {
|
|
149
162
|
editorHeight?: string;
|
|
@@ -170,7 +183,7 @@ type EditorWidgetUIOptions = {
|
|
|
170
183
|
"ui:widget": (props: EditorWidgetProps) => JSX.Element;
|
|
171
184
|
"ui:options": Options$5;
|
|
172
185
|
};
|
|
173
|
-
declare const EditorWidget: ({ label, options, value, required, uiSchema, disabled, onChange }: EditorWidgetProps) => React.JSX.Element;
|
|
186
|
+
declare const EditorWidget: ({ label, options, value, required, uiSchema, disabled, onChange }: EditorWidgetProps) => React$1.JSX.Element;
|
|
174
187
|
|
|
175
188
|
type Options$4 = {
|
|
176
189
|
className?: string;
|
|
@@ -193,7 +206,7 @@ interface InputWidgetUIOptions {
|
|
|
193
206
|
"ui:widget": (props: InputWidgetProps) => JSX.Element;
|
|
194
207
|
"ui:options": Options$4;
|
|
195
208
|
}
|
|
196
|
-
declare function InputWidget(props: InputWidgetProps): React.JSX.Element;
|
|
209
|
+
declare function InputWidget(props: InputWidgetProps): React$1.JSX.Element;
|
|
197
210
|
|
|
198
211
|
type Options$3 = {
|
|
199
212
|
className?: string;
|
|
@@ -214,7 +227,7 @@ interface SelectWidgetUIOptions {
|
|
|
214
227
|
"ui:widget": (props: SelectWidgetProps) => JSX.Element;
|
|
215
228
|
"ui:options": Options$3;
|
|
216
229
|
}
|
|
217
|
-
declare function SelectWidget(props: SelectWidgetProps): React.JSX.Element;
|
|
230
|
+
declare function SelectWidget(props: SelectWidgetProps): React$1.JSX.Element;
|
|
218
231
|
|
|
219
232
|
type Options$2 = {
|
|
220
233
|
className?: string;
|
|
@@ -228,7 +241,7 @@ type Options$2 = {
|
|
|
228
241
|
renderValue?: (items: SelectedItems<{
|
|
229
242
|
label: string;
|
|
230
243
|
value: string;
|
|
231
|
-
}>) => React.ReactNode;
|
|
244
|
+
}>) => React$1.ReactNode;
|
|
232
245
|
};
|
|
233
246
|
interface MultipleSelectWidgetProps extends WidgetProps {
|
|
234
247
|
options: Options$2;
|
|
@@ -237,7 +250,7 @@ interface MultipleSelectWidgetUIOptions {
|
|
|
237
250
|
'ui:widget': (props: MultipleSelectWidgetProps) => JSX.Element;
|
|
238
251
|
'ui:options': Options$2;
|
|
239
252
|
}
|
|
240
|
-
declare function MultipleSelectWidget(props: MultipleSelectWidgetProps): React.JSX.Element;
|
|
253
|
+
declare function MultipleSelectWidget(props: MultipleSelectWidgetProps): React$1.JSX.Element;
|
|
241
254
|
|
|
242
255
|
type Options$1 = {
|
|
243
256
|
className?: string;
|
|
@@ -261,7 +274,7 @@ interface TextareaWidgetUIOptions {
|
|
|
261
274
|
'ui:widget': (props: TextareaWidgetProps) => JSX.Element;
|
|
262
275
|
'ui:options': Options$1;
|
|
263
276
|
}
|
|
264
|
-
declare function TextareaWidget(props: TextareaWidgetProps): React.JSX.Element;
|
|
277
|
+
declare function TextareaWidget(props: TextareaWidgetProps): React$1.JSX.Element;
|
|
265
278
|
|
|
266
279
|
type Options = {
|
|
267
280
|
className?: string;
|
|
@@ -281,19 +294,19 @@ interface DatePickerWidgetUIOptions {
|
|
|
281
294
|
'ui:widget': (props: DatePickerWidgetProps) => string | Widget<any, RJSFSchema, any> | undefined;
|
|
282
295
|
'ui:options': Options;
|
|
283
296
|
}
|
|
284
|
-
declare function DatePickerWidget({ label, options, value, required, disabled, uiSchema, onChange }: DatePickerWidgetProps): React.JSX.Element;
|
|
297
|
+
declare function DatePickerWidget({ label, options, value, required, disabled, uiSchema, onChange }: DatePickerWidgetProps): React$1.JSX.Element;
|
|
285
298
|
|
|
286
299
|
interface Props {
|
|
287
300
|
formState: JSONSchemaFormState<any>;
|
|
288
301
|
children?: any;
|
|
289
302
|
}
|
|
290
|
-
declare const JSONSchemaForm: (({ children, formState }: Props) => React.JSX.Element) & {
|
|
303
|
+
declare const JSONSchemaForm: (({ children, formState }: Props) => React$1.JSX.Element) & {
|
|
291
304
|
displayName: string;
|
|
292
305
|
};
|
|
293
306
|
|
|
294
307
|
declare class ComplexFormModalStore<T extends FormDataType> implements Store {
|
|
295
308
|
sid: string;
|
|
296
|
-
provider: () => React.JSX.Element;
|
|
309
|
+
provider: () => React$1.JSX.Element;
|
|
297
310
|
isOpen: boolean;
|
|
298
311
|
title: string;
|
|
299
312
|
formData?: T;
|
|
@@ -325,7 +338,7 @@ declare class FormModalStore<T = {
|
|
|
325
338
|
[key: string]: any;
|
|
326
339
|
}> implements Store {
|
|
327
340
|
sid: string;
|
|
328
|
-
provider: () => React.JSX.Element;
|
|
341
|
+
provider: () => React$1.JSX.Element;
|
|
329
342
|
isOpen: boolean;
|
|
330
343
|
title: string;
|
|
331
344
|
form: JSONSchemaFormState<T>;
|
package/dist/form.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { getStyle } from './chunk-
|
|
1
|
+
import { getStyle } from './chunk-K73JTEJQ.mjs';
|
|
2
2
|
import { useStore, RootStore } from './chunk-IDKGZ5T4.mjs';
|
|
3
|
-
import { helper } from './chunk-
|
|
4
|
-
import { _ } from './chunk-
|
|
3
|
+
import { helper } from './chunk-UPGWJHSO.mjs';
|
|
4
|
+
import { _ } from './chunk-K7LFG5BA.mjs';
|
|
5
5
|
import { cn } from './chunk-WYGQ3Y4R.mjs';
|
|
6
6
|
import { __objRest, __spreadValues, __spreadProps } from './chunk-6F7H4PAA.mjs';
|
|
7
7
|
import React7, { useEffect, useMemo, useState, useRef, useCallback, createRef } from 'react';
|
|
@@ -396,8 +396,7 @@ var JSONSchemaFormState = class {
|
|
|
396
396
|
}
|
|
397
397
|
};
|
|
398
398
|
this.customValidate = (formData, errors) => errors;
|
|
399
|
-
|
|
400
|
-
Object.assign(this, args, { formRef });
|
|
399
|
+
Object.assign(this, args, { formRef: createRef() });
|
|
401
400
|
if (this.reactive) {
|
|
402
401
|
makeObservable(this, {
|
|
403
402
|
formData: computed
|
|
@@ -655,29 +654,6 @@ var SubmitButton = ({ formKey, formState, buttonProps }) => {
|
|
|
655
654
|
children || "Submit"
|
|
656
655
|
));
|
|
657
656
|
};
|
|
658
|
-
var CustomButton = ({ formKey, formState, buttonProps }) => {
|
|
659
|
-
return /* @__PURE__ */ React7.createElement("div", { className: "w-full flex gap-2" }, buttonProps.map((i, index) => {
|
|
660
|
-
const [loading, setLoading] = useState(false);
|
|
661
|
-
const _a = i, { className, onClick, title } = _a, rest = __objRest(_a, ["className", "onClick", "title"]);
|
|
662
|
-
return /* @__PURE__ */ React7.createElement(
|
|
663
|
-
Button,
|
|
664
|
-
__spreadValues({
|
|
665
|
-
className: cn("mt-4", className),
|
|
666
|
-
type: "submit",
|
|
667
|
-
color: "primary",
|
|
668
|
-
size: "sm",
|
|
669
|
-
isLoading: loading,
|
|
670
|
-
onClick: (e) => {
|
|
671
|
-
let formData = {};
|
|
672
|
-
const current = formState.formRef.current;
|
|
673
|
-
formData = current.state.formData;
|
|
674
|
-
onClick == null ? void 0 : onClick(formKey, formData, setLoading);
|
|
675
|
-
}
|
|
676
|
-
}, rest),
|
|
677
|
-
title
|
|
678
|
-
);
|
|
679
|
-
}));
|
|
680
|
-
};
|
|
681
657
|
function FieldTemplate(props) {
|
|
682
658
|
const { id, classNames, label, help, required, description, errors, children, schema, uiSchema } = props;
|
|
683
659
|
if (uiSchema && uiSchema["ui:widget"] === "hidden") {
|
|
@@ -919,8 +895,9 @@ var grid_default = Grid;
|
|
|
919
895
|
|
|
920
896
|
// components/JSONForm/Layouts/gridLayout.tsx
|
|
921
897
|
var GridLayout = (props) => {
|
|
898
|
+
var _b, _c, _d;
|
|
922
899
|
const { layoutConfig, onBatchSubmit, batchSubmitButtonProps, onReady, theme } = props;
|
|
923
|
-
const _a = layoutConfig, { $type, $gridColumn } = _a, formLayout = __objRest(_a, ["$type", "$gridColumn"]);
|
|
900
|
+
const _a = layoutConfig, { $type, $gridColumn, $combFormsCustomRender } = _a, formLayout = __objRest(_a, ["$type", "$gridColumn", "$combFormsCustomRender"]);
|
|
924
901
|
const formStates = getFormState(props, formLayout, theme);
|
|
925
902
|
const cardStyle = getStyle(theme || "default", "Card");
|
|
926
903
|
useEffect(() => {
|
|
@@ -928,13 +905,14 @@ var GridLayout = (props) => {
|
|
|
928
905
|
onReady(formStates);
|
|
929
906
|
}
|
|
930
907
|
}, [formStates]);
|
|
931
|
-
return /* @__PURE__ */ React7.createElement(React7.Fragment, null, /* @__PURE__ */ React7.createElement(grid_default, { numItems: $gridColumn != null ? $gridColumn : 1, className: "gap-2" }, Object.keys(formStates).map((key) => {
|
|
932
|
-
var _a2;
|
|
908
|
+
return /* @__PURE__ */ React7.createElement(React7.Fragment, null, (_b = $combFormsCustomRender == null ? void 0 : $combFormsCustomRender.Top) == null ? void 0 : _b.call($combFormsCustomRender, formStates), /* @__PURE__ */ React7.createElement(grid_default, { numItems: $gridColumn != null ? $gridColumn : 1, className: "gap-2" }, Object.keys(formStates).map((key) => {
|
|
909
|
+
var _a2, _b2, _c2, _d2, _e, _f, _g;
|
|
933
910
|
const layout = formLayout[key];
|
|
934
|
-
return /* @__PURE__ */ React7.createElement(col_default, { numColSpan: (_a2 = layout == null ? void 0 : layout.colSpan) != null ? _a2 : 1, key, id: `form-${key}` }, /* @__PURE__ */ React7.createElement(Card, { className: cn("h-full m-0 p-4 shadow-sm border dark:border-[#3e3e3e]", cardStyle.className, layout == null ? void 0 : layout.cardCss) }, /* @__PURE__ */ React7.createElement("div", { className: cn("mb-2 font-bold text-center", layout == null ? void 0 : layout.titleBoxCss) }, (layout == null ? void 0 : layout.title) || key), /* @__PURE__ */ React7.createElement(JSONSchemaForm, { formState: formStates[key] }, (layout == null ? void 0 : layout.submitButtonProps) && /* @__PURE__ */ React7.createElement(SubmitButton, { formKey: key, formState: formStates[key], buttonProps: layout.submitButtonProps }), (layout == null ? void 0 : layout.
|
|
935
|
-
})), (onBatchSubmit || (batchSubmitButtonProps == null ? void 0 : batchSubmitButtonProps.onBatchSubmit)) && /* @__PURE__ */ React7.createElement("div", { className: "w-full flex" }, /* @__PURE__ */ React7.createElement(BatchSubmitButton, { formStates, onSubmit: onBatchSubmit, buttonProps: batchSubmitButtonProps })));
|
|
911
|
+
return /* @__PURE__ */ React7.createElement(col_default, { numColSpan: (_a2 = layout == null ? void 0 : layout.colSpan) != null ? _a2 : 1, key, id: `form-${key}` }, /* @__PURE__ */ React7.createElement(Card, { className: cn("h-full m-0 p-4 shadow-sm border dark:border-[#3e3e3e]", cardStyle.className, layout == null ? void 0 : layout.cardCss) }, /* @__PURE__ */ React7.createElement("div", { className: cn("mb-2 font-bold text-center", layout == null ? void 0 : layout.titleBoxCss) }, (layout == null ? void 0 : layout.title) || key), (_c2 = (_b2 = layout == null ? void 0 : layout.customRender) == null ? void 0 : _b2.Top) == null ? void 0 : _c2.call(_b2, key, formStates[key]), /* @__PURE__ */ React7.createElement(JSONSchemaForm, { formState: formStates[key] }, (_e = (_d2 = layout == null ? void 0 : layout.customRender) == null ? void 0 : _d2.SubmitButtonBefore) == null ? void 0 : _e.call(_d2, key, formStates[key]), (layout == null ? void 0 : layout.submitButtonProps) && /* @__PURE__ */ React7.createElement(SubmitButton, { formKey: key, formState: formStates[key], buttonProps: layout.submitButtonProps }), (_g = (_f = layout == null ? void 0 : layout.customRender) == null ? void 0 : _f.SubmitButtonAfter) == null ? void 0 : _g.call(_f, key, formStates[key]))));
|
|
912
|
+
})), (_c = $combFormsCustomRender == null ? void 0 : $combFormsCustomRender.SubmitButtonBefore) == null ? void 0 : _c.call($combFormsCustomRender, formStates), (onBatchSubmit || (batchSubmitButtonProps == null ? void 0 : batchSubmitButtonProps.onBatchSubmit)) && /* @__PURE__ */ React7.createElement("div", { className: "w-full flex" }, /* @__PURE__ */ React7.createElement(BatchSubmitButton, { formStates, onSubmit: onBatchSubmit, buttonProps: batchSubmitButtonProps })), (_d = $combFormsCustomRender == null ? void 0 : $combFormsCustomRender.SubmitButtonAfter) == null ? void 0 : _d.call($combFormsCustomRender, formStates));
|
|
936
913
|
};
|
|
937
|
-
var CollapsibleBox = ({ formKey,
|
|
914
|
+
var CollapsibleBox = ({ formKey, layout, formState }) => {
|
|
915
|
+
var _a, _b, _c, _d, _e, _f;
|
|
938
916
|
const [opened, setOpened] = useState(true);
|
|
939
917
|
return /* @__PURE__ */ React7.createElement("div", { id: `form-${formKey}` }, /* @__PURE__ */ React7.createElement(
|
|
940
918
|
"div",
|
|
@@ -942,60 +920,61 @@ var CollapsibleBox = ({ formKey, title, titleBoxCss, formState, submitButtonProp
|
|
|
942
920
|
className: "mt-5 mb-[10px] flex justify-between items-center cursor-pointer border-t-[1px solid #E5E5EA] py-[5px]",
|
|
943
921
|
onClick: () => setOpened((o) => !o)
|
|
944
922
|
},
|
|
945
|
-
/* @__PURE__ */ React7.createElement("div", { className: cn("text-gray-900 dark:text-gray-100 font-bold text-base", titleBoxCss) }, title),
|
|
923
|
+
/* @__PURE__ */ React7.createElement("div", { className: cn("text-gray-900 dark:text-gray-100 font-bold text-base", layout == null ? void 0 : layout.titleBoxCss) }, (layout == null ? void 0 : layout.title) || formKey),
|
|
946
924
|
opened ? /* @__PURE__ */ React7.createElement(ChevronUp, { size: 18, className: "text-[#717179] dark:text-[#A1A1A9]" }) : /* @__PURE__ */ React7.createElement(ChevronDown, { size: 18, className: "text-[#717179] dark:text-[#A1A1A9]" })
|
|
947
|
-
), /* @__PURE__ */ React7.createElement("div", { className: cn("mt-2", opened ? "block" : "hidden") }, /* @__PURE__ */ React7.createElement(JSONSchemaForm, { formState },
|
|
925
|
+
), /* @__PURE__ */ React7.createElement("div", { className: cn("mt-2", opened ? "block" : "hidden") }, (_b = (_a = layout == null ? void 0 : layout.customRender) == null ? void 0 : _a.Top) == null ? void 0 : _b.call(_a, formKey, formState), /* @__PURE__ */ React7.createElement(JSONSchemaForm, { formState }, (_d = (_c = layout == null ? void 0 : layout.customRender) == null ? void 0 : _c.SubmitButtonBefore) == null ? void 0 : _d.call(_c, formKey, formState), (layout == null ? void 0 : layout.submitButtonProps) && /* @__PURE__ */ React7.createElement(SubmitButton, { formKey, formState, buttonProps: layout.submitButtonProps }), (_f = (_e = layout == null ? void 0 : layout.customRender) == null ? void 0 : _e.SubmitButtonAfter) == null ? void 0 : _f.call(_e, formKey, formState))));
|
|
948
926
|
};
|
|
949
927
|
var ListLayout = (props) => {
|
|
928
|
+
var _b, _c, _d;
|
|
950
929
|
const { layoutConfig = {}, onBatchSubmit, batchSubmitButtonProps, onReady, theme } = props;
|
|
951
|
-
const _a = layoutConfig, formLayout = __objRest(_a, ["$type"]);
|
|
930
|
+
const _a = layoutConfig, { $type, $combFormsCustomRender } = _a, formLayout = __objRest(_a, ["$type", "$combFormsCustomRender"]);
|
|
952
931
|
const formStates = getFormState(props, formLayout, theme);
|
|
953
932
|
useEffect(() => {
|
|
954
933
|
if (formStates && onReady) {
|
|
955
934
|
onReady(formStates);
|
|
956
935
|
}
|
|
957
936
|
}, [formStates]);
|
|
958
|
-
return /* @__PURE__ */ React7.createElement(React7.Fragment, null, Object.keys(formStates).map((key) => {
|
|
959
|
-
const layout = formLayout[key];
|
|
960
|
-
const formState = formStates[key];
|
|
937
|
+
return /* @__PURE__ */ React7.createElement(React7.Fragment, null, (_b = $combFormsCustomRender == null ? void 0 : $combFormsCustomRender.Top) == null ? void 0 : _b.call($combFormsCustomRender, formStates), Object.keys(formStates).map((key) => {
|
|
961
938
|
return /* @__PURE__ */ React7.createElement(
|
|
962
939
|
CollapsibleBox,
|
|
963
940
|
{
|
|
964
941
|
key,
|
|
965
942
|
formKey: key,
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
formState,
|
|
969
|
-
submitButtonProps: layout == null ? void 0 : layout.submitButtonProps,
|
|
970
|
-
customButtonProps: layout == null ? void 0 : layout.customButtonProps
|
|
943
|
+
formState: formStates[key],
|
|
944
|
+
layout: formLayout[key]
|
|
971
945
|
}
|
|
972
946
|
);
|
|
973
|
-
}), (onBatchSubmit || (batchSubmitButtonProps == null ? void 0 : batchSubmitButtonProps.onBatchSubmit)) && /* @__PURE__ */ React7.createElement("div", { className: "w-full flex" }, /* @__PURE__ */ React7.createElement(BatchSubmitButton, { formStates, onSubmit: onBatchSubmit, buttonProps: batchSubmitButtonProps })));
|
|
947
|
+
}), (_c = $combFormsCustomRender == null ? void 0 : $combFormsCustomRender.SubmitButtonBefore) == null ? void 0 : _c.call($combFormsCustomRender, formStates), (onBatchSubmit || (batchSubmitButtonProps == null ? void 0 : batchSubmitButtonProps.onBatchSubmit)) && /* @__PURE__ */ React7.createElement("div", { className: "w-full flex" }, /* @__PURE__ */ React7.createElement(BatchSubmitButton, { formStates, onSubmit: onBatchSubmit, buttonProps: batchSubmitButtonProps })), (_d = $combFormsCustomRender == null ? void 0 : $combFormsCustomRender.SubmitButtonAfter) == null ? void 0 : _d.call($combFormsCustomRender, formStates));
|
|
974
948
|
};
|
|
975
949
|
var SimpleLayout = (props) => {
|
|
950
|
+
var _b, _c, _d;
|
|
976
951
|
const { layoutConfig = {}, onBatchSubmit, batchSubmitButtonProps, onReady, theme } = props;
|
|
977
|
-
const _a = layoutConfig, formLayout = __objRest(_a, ["$type"]);
|
|
952
|
+
const _a = layoutConfig, { $type, $combFormsCustomRender } = _a, formLayout = __objRest(_a, ["$type", "$combFormsCustomRender"]);
|
|
978
953
|
const formStates = getFormState(props, formLayout, theme);
|
|
979
954
|
useEffect(() => {
|
|
980
955
|
if (formStates && onReady) {
|
|
981
956
|
onReady(formStates);
|
|
982
957
|
}
|
|
983
958
|
}, [formStates]);
|
|
984
|
-
return /* @__PURE__ */ React7.createElement(React7.Fragment, null, /* @__PURE__ */ React7.createElement("div", { className: "space-y-2" }, Object.keys(formStates).map((key) => {
|
|
959
|
+
return /* @__PURE__ */ React7.createElement(React7.Fragment, null, (_b = $combFormsCustomRender == null ? void 0 : $combFormsCustomRender.Top) == null ? void 0 : _b.call($combFormsCustomRender, formStates), /* @__PURE__ */ React7.createElement("div", { className: "space-y-2" }, Object.keys(formStates).map((key) => {
|
|
960
|
+
var _a2, _b2, _c2, _d2, _e, _f;
|
|
985
961
|
const layout = formLayout[key];
|
|
986
|
-
return /* @__PURE__ */ React7.createElement("div", { key, id: `form-${key}` }, /* @__PURE__ */ React7.createElement(JSONSchemaForm, { formState: formStates[key] }, (layout == null ? void 0 : layout.submitButtonProps) && /* @__PURE__ */ React7.createElement(SubmitButton, { formKey: key, formState: formStates[key], buttonProps: layout.submitButtonProps })));
|
|
987
|
-
})), (onBatchSubmit || (batchSubmitButtonProps == null ? void 0 : batchSubmitButtonProps.onBatchSubmit)) && /* @__PURE__ */ React7.createElement("div", { className: "w-full flex" }, /* @__PURE__ */ React7.createElement(BatchSubmitButton, { formStates, onSubmit: onBatchSubmit, buttonProps: batchSubmitButtonProps })));
|
|
962
|
+
return /* @__PURE__ */ React7.createElement("div", { key, id: `form-${key}` }, (_b2 = (_a2 = layout == null ? void 0 : layout.customRender) == null ? void 0 : _a2.Top) == null ? void 0 : _b2.call(_a2, key, formStates[key]), /* @__PURE__ */ React7.createElement(JSONSchemaForm, { formState: formStates[key] }, (_d2 = (_c2 = layout == null ? void 0 : layout.customRender) == null ? void 0 : _c2.SubmitButtonBefore) == null ? void 0 : _d2.call(_c2, key, formStates[key]), (layout == null ? void 0 : layout.submitButtonProps) && /* @__PURE__ */ React7.createElement(SubmitButton, { formKey: key, formState: formStates[key], buttonProps: layout.submitButtonProps }), (_f = (_e = layout == null ? void 0 : layout.customRender) == null ? void 0 : _e.SubmitButtonAfter) == null ? void 0 : _f.call(_e, key, formStates[key])));
|
|
963
|
+
})), (_c = $combFormsCustomRender == null ? void 0 : $combFormsCustomRender.SubmitButtonBefore) == null ? void 0 : _c.call($combFormsCustomRender, formStates), (onBatchSubmit || (batchSubmitButtonProps == null ? void 0 : batchSubmitButtonProps.onBatchSubmit)) && /* @__PURE__ */ React7.createElement("div", { className: "w-full flex" }, /* @__PURE__ */ React7.createElement(BatchSubmitButton, { formStates, onSubmit: onBatchSubmit, buttonProps: batchSubmitButtonProps })), (_d = $combFormsCustomRender == null ? void 0 : $combFormsCustomRender.SubmitButtonAfter) == null ? void 0 : _d.call($combFormsCustomRender, formStates));
|
|
988
964
|
};
|
|
989
965
|
var TabLayout = (props) => {
|
|
966
|
+
var _b, _c, _d;
|
|
990
967
|
const { layoutConfig = {}, onBatchSubmit, batchSubmitButtonProps, onReady, theme } = props;
|
|
991
968
|
const _a = layoutConfig, {
|
|
992
969
|
$type,
|
|
993
970
|
$tabsProps = {
|
|
994
971
|
color: "default"
|
|
995
|
-
}
|
|
972
|
+
},
|
|
973
|
+
$combFormsCustomRender
|
|
996
974
|
} = _a, formLayout = __objRest(_a, [
|
|
997
975
|
"$type",
|
|
998
|
-
"$tabsProps"
|
|
976
|
+
"$tabsProps",
|
|
977
|
+
"$combFormsCustomRender"
|
|
999
978
|
]);
|
|
1000
979
|
const formStates = useMemo(() => getFormState(props, formLayout, theme), [props.formData, props.formConfig, props.layoutConfig]);
|
|
1001
980
|
const formKeys = Object.keys(formStates);
|
|
@@ -1017,7 +996,8 @@ var TabLayout = (props) => {
|
|
|
1017
996
|
const layout = formLayout[key];
|
|
1018
997
|
return /* @__PURE__ */ React7.createElement(Tab, { id: `form-${key}-tab-menu`, key, title: /* @__PURE__ */ React7.createElement("div", { className: layout == null ? void 0 : layout.titleBoxCss }, (layout == null ? void 0 : layout.title) || key) });
|
|
1019
998
|
})
|
|
1020
|
-
), formKeys.map((key) => {
|
|
999
|
+
), (_b = $combFormsCustomRender == null ? void 0 : $combFormsCustomRender.Top) == null ? void 0 : _b.call($combFormsCustomRender, formStates), formKeys.map((key) => {
|
|
1000
|
+
var _a2, _b2, _c2, _d2, _e, _f;
|
|
1021
1001
|
const layout = formLayout[key];
|
|
1022
1002
|
return /* @__PURE__ */ React7.createElement(
|
|
1023
1003
|
"div",
|
|
@@ -1026,9 +1006,10 @@ var TabLayout = (props) => {
|
|
|
1026
1006
|
id: `form-${key}-tab-content`,
|
|
1027
1007
|
className: cn("mt-4", selectedTab === key ? "" : "hidden")
|
|
1028
1008
|
},
|
|
1029
|
-
|
|
1009
|
+
(_b2 = (_a2 = layout == null ? void 0 : layout.customRender) == null ? void 0 : _a2.Top) == null ? void 0 : _b2.call(_a2, key, formStates[key]),
|
|
1010
|
+
/* @__PURE__ */ React7.createElement(JSONSchemaForm, { formState: formStates[key] }, (_d2 = (_c2 = layout == null ? void 0 : layout.customRender) == null ? void 0 : _c2.SubmitButtonBefore) == null ? void 0 : _d2.call(_c2, key, formStates[key]), (layout == null ? void 0 : layout.submitButtonProps) && /* @__PURE__ */ React7.createElement(SubmitButton, { formKey: key, formState: formStates[key], buttonProps: layout.submitButtonProps }), (_f = (_e = layout == null ? void 0 : layout.customRender) == null ? void 0 : _e.SubmitButtonAfter) == null ? void 0 : _f.call(_e, key, formStates[key]))
|
|
1030
1011
|
);
|
|
1031
|
-
}), (onBatchSubmit || (batchSubmitButtonProps == null ? void 0 : batchSubmitButtonProps.onBatchSubmit)) && /* @__PURE__ */ React7.createElement("div", { className: "w-full flex" }, /* @__PURE__ */ React7.createElement(BatchSubmitButton, { formStates, onSubmit: onBatchSubmit, buttonProps: batchSubmitButtonProps })));
|
|
1012
|
+
}), (_c = $combFormsCustomRender == null ? void 0 : $combFormsCustomRender.SubmitButtonBefore) == null ? void 0 : _c.call($combFormsCustomRender, formStates), (onBatchSubmit || (batchSubmitButtonProps == null ? void 0 : batchSubmitButtonProps.onBatchSubmit)) && /* @__PURE__ */ React7.createElement("div", { className: "w-full flex" }, /* @__PURE__ */ React7.createElement(BatchSubmitButton, { formStates, onSubmit: onBatchSubmit, buttonProps: batchSubmitButtonProps })), (_d = $combFormsCustomRender == null ? void 0 : $combFormsCustomRender.SubmitButtonAfter) == null ? void 0 : _d.call($combFormsCustomRender, formStates));
|
|
1032
1013
|
};
|
|
1033
1014
|
|
|
1034
1015
|
// components/JSONForm/index.tsx
|