@nolwenture/formik-jsonschema-form 1.0.0-beta.28 → 1.0.0-beta.29
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/cjs/Form/fields/ArrayField/ArrayField.js +12 -10
- package/dist/cjs/Form/fields/ArrayField/styledComponents.js +1 -2
- package/dist/cjs/Form/fields/BooleanField/BooleanField.js +3 -1
- package/dist/cjs/Form/fields/DateField/DateField.js +3 -1
- package/dist/cjs/Form/fields/FileUploadField/FileUploadField.js +3 -1
- package/dist/cjs/Form/fields/MultipleChoiceField/MultipleChoiceField.js +3 -1
- package/dist/cjs/Form/fields/NullField/NullField.js +3 -1
- package/dist/cjs/Form/fields/ObjectField/ObjectField.js +2 -1
- package/dist/cjs/Form/fields/ObjectField/styledComponents.js +1 -6
- package/dist/cjs/Form/fields/RadioField/RadioField.js +3 -1
- package/dist/cjs/Form/fields/SearchableMultiTagSelectField/SearchableMultiTagSelectField.js +3 -1
- package/dist/cjs/Form/fields/SearchableSelectField/SearchableSelectField.js +3 -1
- package/dist/cjs/Form/fields/StringField/StringField.js +3 -1
- package/dist/cjs/Form/fields/TextAreaField/TextAreaField.js +3 -1
- package/dist/cjs/Form/fields/ToggleField/ToggleField.js +3 -1
- package/dist/cjs/Form/templates/ArrayFieldTemplate/ArrayFieldTemplate.js +2 -2
- package/dist/cjs/Form/templates/index.js +1 -0
- package/dist/cjs/FormView/fields/ArrayField.js +6 -5
- package/dist/cjs/FormView/fields/BooleanField.js +3 -1
- package/dist/cjs/FormView/fields/MultipleChoiceField.js +3 -1
- package/dist/cjs/FormView/fields/NullField.js +3 -1
- package/dist/cjs/FormView/fields/ObjectField/ObjectField.js +3 -1
- package/dist/cjs/FormView/fields/StringField.js +3 -1
- package/dist/cjs/FormView/fields/TextAreaField.js +3 -1
- package/dist/cjs/FormView/templates/ArrayFieldTemplate/ArrayFieldTemplate.js +2 -2
- package/dist/cjs/FormView/templates/index.js +1 -0
- package/dist/esm/Form/fields/ArrayField/ArrayField.js +13 -11
- package/dist/esm/Form/fields/ArrayField/styledComponents.js +1 -2
- package/dist/esm/Form/fields/BooleanField/BooleanField.js +3 -1
- package/dist/esm/Form/fields/DateField/DateField.js +3 -1
- package/dist/esm/Form/fields/FileUploadField/FileUploadField.js +3 -1
- package/dist/esm/Form/fields/MultipleChoiceField/MultipleChoiceField.js +3 -1
- package/dist/esm/Form/fields/NullField/NullField.js +3 -1
- package/dist/esm/Form/fields/ObjectField/ObjectField.js +2 -1
- package/dist/esm/Form/fields/ObjectField/styledComponents.js +0 -5
- package/dist/esm/Form/fields/RadioField/RadioField.js +3 -1
- package/dist/esm/Form/fields/SearchableMultiTagSelectField/SearchableMultiTagSelectField.js +3 -1
- package/dist/esm/Form/fields/SearchableSelectField/SearchableSelectField.js +3 -1
- package/dist/esm/Form/fields/StringField/StringField.js +3 -1
- package/dist/esm/Form/fields/TextAreaField/TextAreaField.js +3 -1
- package/dist/esm/Form/fields/ToggleField/ToggleField.js +3 -1
- package/dist/esm/Form/templates/ArrayFieldTemplate/ArrayFieldTemplate.js +2 -2
- package/dist/esm/Form/templates/index.js +1 -0
- package/dist/esm/FormView/fields/ArrayField.js +6 -5
- package/dist/esm/FormView/fields/BooleanField.js +3 -1
- package/dist/esm/FormView/fields/MultipleChoiceField.js +3 -1
- package/dist/esm/FormView/fields/NullField.js +3 -1
- package/dist/esm/FormView/fields/ObjectField/ObjectField.js +3 -1
- package/dist/esm/FormView/fields/StringField.js +3 -1
- package/dist/esm/FormView/fields/TextAreaField.js +3 -1
- package/dist/esm/FormView/templates/ArrayFieldTemplate/ArrayFieldTemplate.js +2 -2
- package/dist/esm/FormView/templates/index.js +1 -0
- package/dist/types/Form/components/index.d.ts +0 -2
- package/dist/types/Form/fields/ArrayField/styledComponents.d.ts +0 -1
- package/dist/types/Form/fields/ObjectField/index.d.ts +0 -1
- package/dist/types/Form/fields/ObjectField/styledComponents.d.ts +0 -1
- package/dist/types/Form/fields/index.d.ts +0 -2
- package/dist/types/Form/templates/ArrayFieldTemplate/ArrayFieldTemplate.d.ts +2 -3
- package/dist/types/Form/templates/CollapsibleObjectFieldTemplate/CollapsibleObjectFieldTemplate.d.ts +2 -3
- package/dist/types/Form/templates/FieldTemplate/FieldTemplate.d.ts +2 -3
- package/dist/types/Form/templates/ObjectFieldTemplate/ObjectFieldTemplate.d.ts +2 -3
- package/dist/types/Form/templates/index.d.ts +6 -6
- package/dist/types/FormView/templates/ArrayFieldTemplate/ArrayFieldTemplate.d.ts +2 -3
- package/dist/types/FormView/templates/FieldTemplate/FieldTemplate.d.ts +2 -3
- package/dist/types/FormView/templates/ObjectFieldTemplate/ObjectFieldTemplate.d.ts +2 -3
- package/dist/types/FormView/templates/index.d.ts +5 -5
- package/dist/types/common/types/Schemas.d.ts +1 -0
- package/dist/types/common/types/Templates.d.ts +12 -6
- package/package.json +1 -1
|
@@ -32,12 +32,12 @@ const moveInArray = (values, index, direction) => {
|
|
|
32
32
|
}
|
|
33
33
|
};
|
|
34
34
|
const ArrayField = (props) => {
|
|
35
|
-
const { fields: { SchemaField }, templates, components: { SelectFieldInput, ArrayFieldItem, ArrayFieldItemButtons,
|
|
35
|
+
const { fields: { SchemaField }, templates, components: { SelectFieldInput, ArrayFieldItem, ArrayFieldItemButtons, ArrayFieldAddButton, ArrayFieldRemoveButton, ArrayFieldUpButton, ArrayFieldDownButton, }, useItemsAsAdditionalItems, } = (0, react_1.useContext)(FormRegistry_1.FormRegistry);
|
|
36
36
|
(0, hooks_1.useSetDefault)(props);
|
|
37
37
|
const { name, schema, uiSchema } = props;
|
|
38
38
|
const { type, props: inputProps } = (0, react_1.useMemo)(() => (0, utils_1.extractUiSchema)(uiSchema), [uiSchema]);
|
|
39
39
|
const [{ value }, _, { setValue }] = (0, formik_1.useField)(name);
|
|
40
|
-
const
|
|
40
|
+
const schemas = (0, react_1.useMemo)(() => {
|
|
41
41
|
let items = schema.items && typeof schema.items !== "boolean" ? schema.items : [];
|
|
42
42
|
if (!Array.isArray(items)) {
|
|
43
43
|
items = [items];
|
|
@@ -99,21 +99,23 @@ const ArrayField = (props) => {
|
|
|
99
99
|
const { disabled } = (0, react_1.useMemo)(() => (0, utils_1.extractUiSchema)(uiSchema), [uiSchema]);
|
|
100
100
|
const valueArray = Array.isArray(value) ? value : undefined;
|
|
101
101
|
const preventManipulation = disabled || schema.readOnly;
|
|
102
|
-
const SelectedFieldTemplate =
|
|
103
|
-
|
|
102
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
103
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
104
|
+
templates.FieldTemplate;
|
|
105
|
+
const SelectedArrayFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
106
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
107
|
+
templates.ArrayFieldTemplate;
|
|
104
108
|
return schema.anyOf !== undefined ? ((0, jsx_runtime_1.jsx)(SelectedFieldTemplate, { ...props, "data-fjsf-array": name, children: (0, jsx_runtime_1.jsx)(SelectFieldInput, { type,
|
|
105
109
|
readOnly: schema.readOnly,
|
|
106
|
-
...inputProps, name: name, formikAs: "select", multiple: enums?.type === utils_1.EnumsTypes.MULTI_SELECT, children: enums?.values.map((option, index) => ((0, jsx_runtime_1.jsx)("option", { value: option.const, children: option.title }, index))) }) })) : ((0, jsx_runtime_1.jsxs)(SelectedArrayFieldTemplate, { ...props, "data-fjsf-array": name,
|
|
110
|
+
...inputProps, name: name, formikAs: "select", multiple: enums?.type === utils_1.EnumsTypes.MULTI_SELECT, children: enums?.values.map((option, index) => ((0, jsx_runtime_1.jsx)("option", { value: option.const, children: option.title }, index))) }) })) : ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(SelectedArrayFieldTemplate, { ...props, "data-fjsf-array": name, items: valueArray, renderItem: (item, index) => ((0, jsx_runtime_1.jsxs)(ArrayFieldItem, { children: [(0, jsx_runtime_1.jsx)(SchemaField, { name: `${name}[${index}]`, schema: prepareChildSchema((index < schemas.items.length && schemas.items[index]) ??
|
|
111
|
+
schemas.additionalItems, schema), uiSchema: {
|
|
107
112
|
disabled,
|
|
108
113
|
...(uiSchema?.[index] || uiSchema?.items),
|
|
109
114
|
},
|
|
110
115
|
// "true" will prevent validation for required array fields
|
|
111
116
|
// since a value always exists in the array
|
|
112
|
-
forceDefaultValue:
|
|
113
|
-
|
|
114
|
-
...(uiSchema?.[index + items.length] || uiSchema?.items),
|
|
115
|
-
} }), !preventManipulation && ((0, jsx_runtime_1.jsxs)(ArrayFieldItemButtons, { children: [(0, jsx_runtime_1.jsx)(ArrayFieldRemoveButton, { ...(uiSchema?.["ui:removeButtonOptions"]?.props ?? {}), onClick: () => setValue(removeFromArray(value, index + items.length)), children: uiSchema?.["ui:removeButtonOptions"]?.content ?? "-" }), value.length > 1 && index > 0 && ((0, jsx_runtime_1.jsx)(ArrayFieldUpButton, { ...(uiSchema?.["ui:upButtonOptions"]?.props ?? {}), onClick: () => setValue(moveInArray(value, index + items.length, -1)), children: uiSchema?.["ui:upButtonOptions"]?.content ?? "↑" })), value.length > 1 &&
|
|
116
|
-
index < value?.slice(items.length).length - 1 && ((0, jsx_runtime_1.jsx)(ArrayFieldDownButton, { ...(uiSchema?.["ui:downButtonOptions"]?.props ?? {}), onClick: () => setValue(moveInArray(value, index + items.length, 1)), children: uiSchema?.["ui:downButtonOptions"]?.content ?? "↓" }))] }))] }, index)))] }), additionalItems && !preventManipulation && ((0, jsx_runtime_1.jsx)(ArrayFieldAddButton, { ...(uiSchema?.["ui:addButtonOptions"]?.props ?? {}), onClick: () => setValue(appendArray(value)), children: uiSchema?.["ui:addButtonOptions"]?.content ?? "+" }))] }));
|
|
117
|
+
forceDefaultValue: index >= schemas.items.length }), !preventManipulation && index >= schemas.items.length && ((0, jsx_runtime_1.jsxs)(ArrayFieldItemButtons, { children: [(0, jsx_runtime_1.jsx)(ArrayFieldRemoveButton, { ...(uiSchema?.["ui:removeButtonOptions"]?.props ?? {}), onClick: () => setValue(removeFromArray(value, index + schemas.items.length)), children: uiSchema?.["ui:removeButtonOptions"]?.content ?? "-" }), value.length > 1 && index > 0 && ((0, jsx_runtime_1.jsx)(ArrayFieldUpButton, { ...(uiSchema?.["ui:upButtonOptions"]?.props ?? {}), onClick: () => setValue(moveInArray(value, index + schemas.items.length, -1)), children: uiSchema?.["ui:upButtonOptions"]?.content ?? "↑" })), value.length > 1 &&
|
|
118
|
+
index < value?.slice(schemas.items.length).length - 1 && ((0, jsx_runtime_1.jsx)(ArrayFieldDownButton, { ...(uiSchema?.["ui:downButtonOptions"]?.props ?? {}), onClick: () => setValue(moveInArray(value, index + schemas.items.length, 1)), children: uiSchema?.["ui:downButtonOptions"]?.content ?? "↓" }))] }))] }, index)) }), schemas.additionalItems && !preventManipulation && ((0, jsx_runtime_1.jsx)(ArrayFieldAddButton, { ...(uiSchema?.["ui:addButtonOptions"]?.props ?? {}), onClick: () => setValue(appendArray(value)), children: uiSchema?.["ui:addButtonOptions"]?.content ?? "+" }))] }));
|
|
117
119
|
};
|
|
118
120
|
exports.ArrayField = ArrayField;
|
|
119
121
|
function prepareChildSchema(childSchema, parentSchema) {
|
|
@@ -3,10 +3,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.ArrayFieldAddButton = exports.ArrayFieldRemoveButton = exports.ArrayFieldDownButton = exports.ArrayFieldUpButton = exports.ArrayFieldLineButton = exports.ArrayFieldButton = exports.ArrayFieldItemButtons = exports.ArrayFieldItem =
|
|
6
|
+
exports.ArrayFieldAddButton = exports.ArrayFieldRemoveButton = exports.ArrayFieldDownButton = exports.ArrayFieldUpButton = exports.ArrayFieldLineButton = exports.ArrayFieldButton = exports.ArrayFieldItemButtons = exports.ArrayFieldItem = void 0;
|
|
7
7
|
const styled_components_1 = __importDefault(require("styled-components"));
|
|
8
8
|
const styledComponents_1 = require("../ObjectField/styledComponents");
|
|
9
|
-
exports.ArrayFieldList = styledComponents_1.ObjectFieldList;
|
|
10
9
|
exports.ArrayFieldItem = styledComponents_1.ObjectFieldItem;
|
|
11
10
|
exports.ArrayFieldItemButtons = styledComponents_1.ObjectFieldItemButtons;
|
|
12
11
|
exports.ArrayFieldButton = (0, styled_components_1.default)(styledComponents_1.ObjectFieldButton) ``;
|
|
@@ -13,7 +13,9 @@ const BooleanField = (props) => {
|
|
|
13
13
|
const { name, uiSchema } = props;
|
|
14
14
|
const { label, props: inputProps } = (0, react_1.useMemo)(() => (0, utils_1.extractUiSchema)(uiSchema), [uiSchema]);
|
|
15
15
|
const { values, setValues } = (0, formik_1.useFormikContext)();
|
|
16
|
-
const SelectedFieldTemplate =
|
|
16
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
17
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
18
|
+
templates.FieldTemplate;
|
|
17
19
|
return ((0, jsx_runtime_1.jsx)(SelectedFieldTemplate, { ...props, "data-fjsf-boolean": name, children: (0, jsx_runtime_1.jsxs)(BooleanFieldWrapper, { children: [(0, jsx_runtime_1.jsx)(FieldInput, { readOnly: props.schema.readOnly, ...inputProps, name: name, type: "checkbox" }), (0, jsx_runtime_1.jsx)("span", { onClick: () => {
|
|
18
20
|
setValues({
|
|
19
21
|
...values,
|
|
@@ -12,7 +12,9 @@ const DateField = (props) => {
|
|
|
12
12
|
(0, hooks_1.useSetDefault)(props);
|
|
13
13
|
const { name, uiSchema } = props;
|
|
14
14
|
const { props: inputProps } = (0, react_1.useMemo)(() => (0, utils_1.extractUiSchema)(uiSchema), [uiSchema]);
|
|
15
|
-
const SelectedFieldTemplate =
|
|
15
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
16
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
17
|
+
templates.FieldTemplate;
|
|
16
18
|
return ((0, jsx_runtime_1.jsx)(SelectedFieldTemplate, { ...props, "data-fjsf-string": name, children: (0, jsx_runtime_1.jsx)(styledComponents_1.DateFieldWrapper, { children: (0, jsx_runtime_1.jsx)(FieldInput, { readOnly: props.schema.readOnly, ...inputProps, name: name, type: "date" }) }) }));
|
|
17
19
|
};
|
|
18
20
|
exports.DateField = DateField;
|
|
@@ -61,7 +61,9 @@ const FileUploadField = (props) => {
|
|
|
61
61
|
setFieldValue(name, null);
|
|
62
62
|
}
|
|
63
63
|
};
|
|
64
|
-
const SelectedFieldTemplate =
|
|
64
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
65
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
66
|
+
templates.FieldTemplate;
|
|
65
67
|
return ((0, jsx_runtime_1.jsx)(SelectedFieldTemplate, { ...props, "data-fjsf-object": name, children: (0, jsx_runtime_1.jsx)(FileUploadFieldInput, { ...inputProps, name: name, value: value, handleRemoveFile: handleRemoveFile, uploadedFile: uploadedFile, setFieldValue: setFieldValue, handleFileUpload: handleFileUpload, uploadProgress: uploadProgress, removeButton: uiSchema["ui:removeButton"], uploadButtonText: uiSchema["ui:uploadButtonText"], infoText: uiSchema["ui:infoText"], hideRemoveButton: inputProps?.removeButton.hidden }) }));
|
|
66
68
|
};
|
|
67
69
|
exports.FileUploadField = FileUploadField;
|
|
@@ -27,7 +27,9 @@ const MultipleChoiceField = (props) => {
|
|
|
27
27
|
return { "data-fjsf-string": name };
|
|
28
28
|
}
|
|
29
29
|
})();
|
|
30
|
-
const SelectedFieldTemplate =
|
|
30
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
31
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
32
|
+
templates.FieldTemplate;
|
|
31
33
|
return ((0, jsx_runtime_1.jsx)(SelectedFieldTemplate, { ...props, ...fieldDataAttribute, children: (0, jsx_runtime_1.jsx)(MultipleChoiceFieldInput, { inputProps: { readOnly: props.schema.readOnly, ...inputProps }, name: name, enums: enums, style: style, value: value, form: form }) }));
|
|
32
34
|
};
|
|
33
35
|
exports.MultipleChoiceField = MultipleChoiceField;
|
|
@@ -7,7 +7,9 @@ const FormRegistry_1 = require("../../FormRegistry");
|
|
|
7
7
|
const NullField = (props) => {
|
|
8
8
|
const { templates } = (0, react_1.useContext)(FormRegistry_1.FormRegistry);
|
|
9
9
|
const { name, uiSchema } = props;
|
|
10
|
-
const SelectedFieldTemplate =
|
|
10
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
11
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
12
|
+
templates.FieldTemplate;
|
|
11
13
|
return ((0, jsx_runtime_1.jsx)(SelectedFieldTemplate, { ...props, "data-fjsf-null": name }));
|
|
12
14
|
};
|
|
13
15
|
exports.NullField = NullField;
|
|
@@ -52,7 +52,8 @@ const ObjectField = (props) => {
|
|
|
52
52
|
return ((0, jsx_runtime_1.jsx)(ObjectFieldButton, { ...(uiSchema?.["ui:customButtonOptions"]?.props ?? {}), onClick: onClick, children: uiSchema?.["ui:customButtonOptions"]?.content ?? "" }));
|
|
53
53
|
}
|
|
54
54
|
};
|
|
55
|
-
const SelectedObjectFieldTemplate =
|
|
55
|
+
const SelectedObjectFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
56
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
56
57
|
(props.uiSchema?.["ui:options"]?.isCollapsible
|
|
57
58
|
? templates.CollapsibleObjectFieldTemplate
|
|
58
59
|
: templates.ObjectFieldTemplate);
|
|
@@ -1,12 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ObjectFieldSectionTitle = exports.ObjectFieldSectionWrapper = exports.ObjectFieldAddButton = exports.ObjectFieldRemoveButton = exports.ObjectFieldDownButton = exports.ObjectFieldUpButton = exports.ObjectFieldLineButton = exports.ObjectFieldButton = exports.ObjectFieldItemButtons = exports.ObjectFieldItem =
|
|
3
|
+
exports.ObjectFieldSectionTitle = exports.ObjectFieldSectionWrapper = exports.ObjectFieldAddButton = exports.ObjectFieldRemoveButton = exports.ObjectFieldDownButton = exports.ObjectFieldUpButton = exports.ObjectFieldLineButton = exports.ObjectFieldButton = exports.ObjectFieldItemButtons = exports.ObjectFieldItem = void 0;
|
|
4
4
|
const styled_components_1 = require("styled-components");
|
|
5
|
-
exports.ObjectFieldList = styled_components_1.styled.ul `
|
|
6
|
-
color: ${(props) => props.theme.color.text.default};
|
|
7
|
-
list-style-type: none;
|
|
8
|
-
padding: 0;
|
|
9
|
-
`;
|
|
10
5
|
exports.ObjectFieldItem = styled_components_1.styled.li `
|
|
11
6
|
color: ${(props) => props.theme.color.text.default};
|
|
12
7
|
display: flex;
|
|
@@ -11,7 +11,9 @@ const RadioField = (props) => {
|
|
|
11
11
|
(0, hooks_1.useSetDefault)(props);
|
|
12
12
|
const { name, uiSchema } = props;
|
|
13
13
|
const { label, props: inputProps } = (0, react_1.useMemo)(() => (0, utils_1.extractUiSchema)(uiSchema), [uiSchema]);
|
|
14
|
-
const SelectedFieldTemplate =
|
|
14
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
15
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
16
|
+
templates.FieldTemplate;
|
|
15
17
|
return ((0, jsx_runtime_1.jsx)(SelectedFieldTemplate, { ...props, "data-fjsf-boolean": name, children: (0, jsx_runtime_1.jsx)(RadioFieldInput, { inputProps: { readOnly: props.schema.readOnly, ...inputProps }, label: label, name: name }) }));
|
|
16
18
|
};
|
|
17
19
|
exports.RadioField = RadioField;
|
|
@@ -12,7 +12,9 @@ const SearchableMultiTagSelectField = (props) => {
|
|
|
12
12
|
const { name, uiSchema } = props;
|
|
13
13
|
const { placeholder, emptySearchMessage, props: inputProps, } = (0, react_1.useMemo)(() => (0, utils_1.extractUiSchema)(uiSchema), [uiSchema]);
|
|
14
14
|
const enums = (0, react_1.useMemo)(() => (0, utils_1.getEnums)(props), [props]);
|
|
15
|
-
const SelectedFieldTemplate =
|
|
15
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
16
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
17
|
+
templates.FieldTemplate;
|
|
16
18
|
return ((0, jsx_runtime_1.jsx)(SelectedFieldTemplate, { ...props, "data-fjsf-array": name, children: (0, jsx_runtime_1.jsx)(SearchableMultiTagSelectFieldInput, { ...inputProps, name: name, placeholder: placeholder, emptySearchMessage: emptySearchMessage, enums: enums }) }));
|
|
17
19
|
};
|
|
18
20
|
exports.SearchableMultiTagSelectField = SearchableMultiTagSelectField;
|
|
@@ -119,7 +119,9 @@ const SearchableSelectField = (props) => {
|
|
|
119
119
|
const fieldDataAttribute = schema.type === "string"
|
|
120
120
|
? { "data-fjsf-string": name }
|
|
121
121
|
: { "data-fjsf-number": name };
|
|
122
|
-
const SelectedFieldTemplate =
|
|
122
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
123
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
124
|
+
templates.FieldTemplate;
|
|
123
125
|
return ((0, jsx_runtime_1.jsx)(SelectedFieldTemplate, { ...props, ...fieldDataAttribute, children: (0, jsx_runtime_1.jsxs)(SearchableSelectFieldContainer, { ref: containerRef, onBlur: handleBlur, children: [(0, jsx_runtime_1.jsxs)(SearchableSelectFieldInputContainer, { children: [(0, jsx_runtime_1.jsx)(SearchableSelectFieldInputElement, { ...inputProps, name: name, type: "text", placeholder: placeholder, value: searchTerm, onChange: handleSearchChange, onFocus: handleFocus }), searchTerm && !hideClearButton && ((0, jsx_runtime_1.jsx)(SearchableSelectFieldClearButton, { onClick: handleClear, children: clearButtonText ?? "✕" }))] }), showOptions && ((0, jsx_runtime_1.jsxs)(SearchableSelectFieldDropdownContainer, { role: "dropdown-list",
|
|
124
126
|
//ref={moreRef} //TODO
|
|
125
127
|
style: {
|
|
@@ -18,7 +18,9 @@ const StringField = (props) => {
|
|
|
18
18
|
const fieldDataAttribute = schema.type === "string"
|
|
19
19
|
? { "data-fjsf-string": name }
|
|
20
20
|
: { "data-fjsf-number": name };
|
|
21
|
-
const SelectedFieldTemplate =
|
|
21
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
22
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
23
|
+
templates.FieldTemplate;
|
|
22
24
|
switch (enums?.type) {
|
|
23
25
|
case "select":
|
|
24
26
|
return ((0, jsx_runtime_1.jsx)(SelectedFieldTemplate, { ...props, ...fieldDataAttribute, children: (0, jsx_runtime_1.jsx)(styledComponents_1.StringFieldWrapper, { children: (0, jsx_runtime_1.jsxs)(SelectFieldInput, { type,
|
|
@@ -11,7 +11,9 @@ const TextAreaField = (props) => {
|
|
|
11
11
|
(0, hooks_1.useSetDefault)(props);
|
|
12
12
|
const { name, uiSchema } = props;
|
|
13
13
|
const { props: inputProps } = (0, react_1.useMemo)(() => (0, utils_1.extractUiSchema)(uiSchema), [uiSchema]);
|
|
14
|
-
const SelectedFieldTemplate =
|
|
14
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
15
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
16
|
+
templates.FieldTemplate;
|
|
15
17
|
return ((0, jsx_runtime_1.jsx)(SelectedFieldTemplate, { ...props, "data-fjsf-string": name, children: (0, jsx_runtime_1.jsx)(TextAreaFieldInput, { readOnly: props.schema.readOnly, ...inputProps, name: name, formikAs: "textarea" }) }));
|
|
16
18
|
};
|
|
17
19
|
exports.TextAreaField = TextAreaField;
|
|
@@ -11,7 +11,9 @@ const ToggleField = (props) => {
|
|
|
11
11
|
(0, hooks_1.useSetDefault)(props);
|
|
12
12
|
const { name, uiSchema } = props;
|
|
13
13
|
const { props: inputProps } = (0, react_1.useMemo)(() => (0, utils_1.extractUiSchema)(uiSchema), [uiSchema]);
|
|
14
|
-
const SelectedFieldTemplate =
|
|
14
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
15
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
16
|
+
templates.FieldTemplate;
|
|
15
17
|
return ((0, jsx_runtime_1.jsx)(SelectedFieldTemplate, { ...props, "data-fjsf-boolean": name, children: (0, jsx_runtime_1.jsx)(ToggleFieldInput, { inputProps: { readOnly: props.schema.readOnly, ...inputProps }, name: name }) }));
|
|
16
18
|
};
|
|
17
19
|
exports.ToggleField = ToggleField;
|
|
@@ -10,7 +10,7 @@ const styledComponents_1 = require("./styledComponents");
|
|
|
10
10
|
const ArrayFieldTemplate = (props) => {
|
|
11
11
|
const { components } = (0, react_1.useContext)(FormRegistry_1.FormRegistry);
|
|
12
12
|
const { Wrapper, Title, Description, Help, Info, RequiredIndicator, ErrorMessage, } = (0, styledComponents_1.getComponents)(components);
|
|
13
|
-
const { name, uiSchema,
|
|
13
|
+
const { name, uiSchema, items, renderItem, ...otherProps } = props;
|
|
14
14
|
const title = (0, utils_1.getTitle)(props);
|
|
15
15
|
const description = (0, utils_1.getDescription)(props);
|
|
16
16
|
const { help, info, props: { wrapper: wrapperProps = {}, title: titleProps, description: descriptionProps, help: helpProps, error: errorProps, } = {}, } = (0, react_1.useMemo)(() => (0, utils_1.extractUiSchema)(uiSchema), [uiSchema]);
|
|
@@ -31,6 +31,6 @@ const ArrayFieldTemplate = (props) => {
|
|
|
31
31
|
// In case of array of objects, it will give error message as an object value,
|
|
32
32
|
// which is incorrect value for React, causing UI to crash.
|
|
33
33
|
const errorIsString = typeof error === "string";
|
|
34
|
-
return ((0, jsx_runtime_1.jsxs)(Wrapper, { ...mergedWrapperProps, children: [title && ((0, jsx_runtime_1.jsxs)(Title, { ...titleProps, htmlFor: name, children: [title, props?.required && (0, jsx_runtime_1.jsx)(RequiredIndicator, {})] })), info && (0, jsx_runtime_1.jsx)(Info, { ...info }), description && ((0, jsx_runtime_1.jsx)(Description, { ...descriptionProps, children: description })),
|
|
34
|
+
return ((0, jsx_runtime_1.jsxs)(Wrapper, { ...mergedWrapperProps, children: [title && ((0, jsx_runtime_1.jsxs)(Title, { ...titleProps, htmlFor: name, children: [title, props?.required && (0, jsx_runtime_1.jsx)(RequiredIndicator, {})] })), info && (0, jsx_runtime_1.jsx)(Info, { ...info }), description && ((0, jsx_runtime_1.jsx)(Description, { ...descriptionProps, children: description })), items && items.map((item, index) => renderItem(item, index)), help && (0, jsx_runtime_1.jsx)(Help, { ...helpProps, children: help }), errorIsString && (0, jsx_runtime_1.jsx)(ErrorMessage, { ...errorProps, name: name })] }));
|
|
35
35
|
};
|
|
36
36
|
exports.ArrayFieldTemplate = ArrayFieldTemplate;
|
|
@@ -34,6 +34,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
36
|
exports.templates = exports.templateComponents = void 0;
|
|
37
|
+
//Please keep this in alphabetical order
|
|
37
38
|
const ArrayFieldTemplate = __importStar(require("./ArrayFieldTemplate"));
|
|
38
39
|
const CollapsibleObjectFieldTemplate = __importStar(require("./CollapsibleObjectFieldTemplate"));
|
|
39
40
|
const FieldTemplate = __importStar(require("./FieldTemplate"));
|
|
@@ -20,10 +20,11 @@ const ArrayField = (props) => {
|
|
|
20
20
|
}
|
|
21
21
|
return item;
|
|
22
22
|
}
|
|
23
|
-
const SelectedArrayFieldTemplate =
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
23
|
+
const SelectedArrayFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
24
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
25
|
+
templates.ArrayFieldTemplate;
|
|
26
|
+
return ((0, jsx_runtime_1.jsx)(SelectedArrayFieldTemplate, { ...props, items: value, renderItem: (item, index) => typeof item === "object" ? ((0, jsx_runtime_1.jsx)(ArrayFieldItem, { children: (0, jsx_runtime_1.jsx)(SchemaField, { name: `${name}[${index}]`, schema: typeof props.schema.additionalItems !== "boolean"
|
|
27
|
+
? props.schema.additionalItems
|
|
28
|
+
: {}, uiSchema: uiSchema }) }, index)) : ((0, jsx_runtime_1.jsx)(ArrayFieldItem, { children: (0, jsx_runtime_1.jsx)("div", { "data-keyword": item, children: getValue(item) }) }, item)) }));
|
|
28
29
|
};
|
|
29
30
|
exports.ArrayField = ArrayField;
|
|
@@ -25,7 +25,9 @@ const BooleanField = (props) => {
|
|
|
25
25
|
}
|
|
26
26
|
return typeof label === "string" ? label : undefined;
|
|
27
27
|
}
|
|
28
|
-
const SelectedFieldTemplate =
|
|
28
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
29
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
30
|
+
templates.FieldTemplate;
|
|
29
31
|
return ((0, jsx_runtime_1.jsx)(SelectedFieldTemplate, { ...props, children: (0, jsx_runtime_1.jsx)(BooleanFieldWrapper, { children: (0, jsx_runtime_1.jsx)(BooleanFieldValue, { name: name, value: value, label: findLabel(label) }) }) }));
|
|
30
32
|
};
|
|
31
33
|
exports.BooleanField = BooleanField;
|
|
@@ -16,7 +16,9 @@ const MultipleChoiceField = (props) => {
|
|
|
16
16
|
const selected = (0, utils_1.getSelectedEnum)(value, enums);
|
|
17
17
|
const notSelected = enums?.values?.filter((v) => Array.isArray(value) && !value.includes(v));
|
|
18
18
|
const hideNotSelected = onlyShowSelected === true || selected === undefined;
|
|
19
|
-
const SelectedFieldTemplate =
|
|
19
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
20
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
21
|
+
templates.FieldTemplate;
|
|
20
22
|
return ((0, jsx_runtime_1.jsx)(SelectedFieldTemplate, { ...props, children: (0, jsx_runtime_1.jsx)(MultipleChoiceFieldValue, { inputProps: inputProps, name: name, style: style, selected: selected, notSelected: hideNotSelected ? undefined : notSelected }) }));
|
|
21
23
|
};
|
|
22
24
|
exports.MultipleChoiceField = MultipleChoiceField;
|
|
@@ -6,7 +6,9 @@ const react_1 = require("react");
|
|
|
6
6
|
const FormViewRegistry_1 = require("../FormViewRegistry");
|
|
7
7
|
const NullField = (props) => {
|
|
8
8
|
const { templates } = (0, react_1.useContext)(FormViewRegistry_1.FormViewRegistry);
|
|
9
|
-
const SelectedFieldTemplate =
|
|
9
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
10
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
11
|
+
templates.FieldTemplate;
|
|
10
12
|
return (0, jsx_runtime_1.jsx)(SelectedFieldTemplate, { ...props });
|
|
11
13
|
};
|
|
12
14
|
exports.NullField = NullField;
|
|
@@ -31,7 +31,9 @@ const ObjectField = (props) => {
|
|
|
31
31
|
}
|
|
32
32
|
}, [valuesToRemove]);
|
|
33
33
|
const orderedProperties = (0, utils_1.orderByUiSchema)(uiSchema?.["ui:order"], Object.keys(properties || {}));
|
|
34
|
-
const SelectedObjectFieldTemplate =
|
|
34
|
+
const SelectedObjectFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
35
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
36
|
+
templates.ObjectFieldTemplate;
|
|
35
37
|
return ((0, jsx_runtime_1.jsx)(SelectedObjectFieldTemplate, { ...props, children: orderedProperties
|
|
36
38
|
.map((child, index) => {
|
|
37
39
|
if (typeof child === "string") {
|
|
@@ -16,7 +16,9 @@ const StringField = (props) => {
|
|
|
16
16
|
value =
|
|
17
17
|
enums.values.find((element) => element.const === value)?.title ?? value;
|
|
18
18
|
}
|
|
19
|
-
const SelectedFieldTemplate =
|
|
19
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
20
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
21
|
+
templates.FieldTemplate;
|
|
20
22
|
return ((0, jsx_runtime_1.jsx)(SelectedFieldTemplate, { ...props, children: (0, jsx_runtime_1.jsx)(StringFieldValue, { "data-keyword": value, children: value }) }));
|
|
21
23
|
};
|
|
22
24
|
exports.StringField = StringField;
|
|
@@ -10,7 +10,9 @@ const TextAreaField = (props) => {
|
|
|
10
10
|
const { name, uiSchema } = props;
|
|
11
11
|
const { values } = (0, formik_1.useFormikContext)();
|
|
12
12
|
const value = (0, formik_1.getIn)(values, name);
|
|
13
|
-
const SelectedFieldTemplate =
|
|
13
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
14
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
15
|
+
templates.FieldTemplate;
|
|
14
16
|
return ((0, jsx_runtime_1.jsx)(SelectedFieldTemplate, { ...props, children: (0, jsx_runtime_1.jsx)(TextAreaValue, { children: value }) }));
|
|
15
17
|
};
|
|
16
18
|
exports.TextAreaField = TextAreaField;
|
|
@@ -9,12 +9,12 @@ const styledComponents_1 = require("./styledComponents");
|
|
|
9
9
|
const ArrayFieldTemplate = (props) => {
|
|
10
10
|
const { components } = (0, react_1.useContext)(FormViewRegistry_1.FormViewRegistry);
|
|
11
11
|
const { Wrapper, Title, Description } = (0, styledComponents_1.getComponents)(components);
|
|
12
|
-
const { name, uiSchema,
|
|
12
|
+
const { name, uiSchema, items, renderItem } = props;
|
|
13
13
|
const title = (0, utils_1.getTitle)(props);
|
|
14
14
|
const description = (0, utils_1.getDescription)(props);
|
|
15
15
|
const { help, info,
|
|
16
16
|
//TODO: This is not right
|
|
17
17
|
props: { wrapper: wrapperProps, title: titleProps, description: descriptionProps, help: helpProps, error: errorProps, } = {}, } = (0, react_1.useMemo)(() => (0, utils_1.extractUiSchema)(uiSchema), [uiSchema]);
|
|
18
|
-
return ((0, jsx_runtime_1.jsxs)(Wrapper, { ...wrapperProps, children: [title && ((0, jsx_runtime_1.jsx)(Title, { ...titleProps, htmlFor: name, children: title })), description && ((0, jsx_runtime_1.jsx)(Description, { ...descriptionProps, children: description })),
|
|
18
|
+
return ((0, jsx_runtime_1.jsxs)(Wrapper, { ...wrapperProps, children: [title && ((0, jsx_runtime_1.jsx)(Title, { ...titleProps, htmlFor: name, children: title })), description && ((0, jsx_runtime_1.jsx)(Description, { ...descriptionProps, children: description })), items && items.map((item, index) => renderItem(item, index))] }));
|
|
19
19
|
};
|
|
20
20
|
exports.ArrayFieldTemplate = ArrayFieldTemplate;
|
|
@@ -34,6 +34,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
36
|
exports.templates = exports.templateComponents = void 0;
|
|
37
|
+
//Please keep this in alphabetical order
|
|
37
38
|
const ArrayFieldTemplate = __importStar(require("./ArrayFieldTemplate"));
|
|
38
39
|
const FieldTemplate = __importStar(require("./FieldTemplate"));
|
|
39
40
|
const ObjectFieldTemplate = __importStar(require("./ObjectFieldTemplate"));
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { useContext, useMemo } from "react";
|
|
3
3
|
import { useField } from "formik";
|
|
4
4
|
import { EnumsTypes, extractUiSchema, getEnums } from "../../../utils";
|
|
@@ -29,12 +29,12 @@ const moveInArray = (values, index, direction) => {
|
|
|
29
29
|
}
|
|
30
30
|
};
|
|
31
31
|
export const ArrayField = (props) => {
|
|
32
|
-
const { fields: { SchemaField }, templates, components: { SelectFieldInput, ArrayFieldItem, ArrayFieldItemButtons,
|
|
32
|
+
const { fields: { SchemaField }, templates, components: { SelectFieldInput, ArrayFieldItem, ArrayFieldItemButtons, ArrayFieldAddButton, ArrayFieldRemoveButton, ArrayFieldUpButton, ArrayFieldDownButton, }, useItemsAsAdditionalItems, } = useContext(FormRegistry);
|
|
33
33
|
useSetDefault(props);
|
|
34
34
|
const { name, schema, uiSchema } = props;
|
|
35
35
|
const { type, props: inputProps } = useMemo(() => extractUiSchema(uiSchema), [uiSchema]);
|
|
36
36
|
const [{ value }, _, { setValue }] = useField(name);
|
|
37
|
-
const
|
|
37
|
+
const schemas = useMemo(() => {
|
|
38
38
|
let items = schema.items && typeof schema.items !== "boolean" ? schema.items : [];
|
|
39
39
|
if (!Array.isArray(items)) {
|
|
40
40
|
items = [items];
|
|
@@ -96,21 +96,23 @@ export const ArrayField = (props) => {
|
|
|
96
96
|
const { disabled } = useMemo(() => extractUiSchema(uiSchema), [uiSchema]);
|
|
97
97
|
const valueArray = Array.isArray(value) ? value : undefined;
|
|
98
98
|
const preventManipulation = disabled || schema.readOnly;
|
|
99
|
-
const SelectedFieldTemplate =
|
|
100
|
-
|
|
99
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
100
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
101
|
+
templates.FieldTemplate;
|
|
102
|
+
const SelectedArrayFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
103
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
104
|
+
templates.ArrayFieldTemplate;
|
|
101
105
|
return schema.anyOf !== undefined ? (_jsx(SelectedFieldTemplate, { ...props, "data-fjsf-array": name, children: _jsx(SelectFieldInput, { type,
|
|
102
106
|
readOnly: schema.readOnly,
|
|
103
|
-
...inputProps, name: name, formikAs: "select", multiple: enums?.type === EnumsTypes.MULTI_SELECT, children: enums?.values.map((option, index) => (_jsx("option", { value: option.const, children: option.title }, index))) }) })) : (_jsxs(SelectedArrayFieldTemplate, { ...props, "data-fjsf-array": name,
|
|
107
|
+
...inputProps, name: name, formikAs: "select", multiple: enums?.type === EnumsTypes.MULTI_SELECT, children: enums?.values.map((option, index) => (_jsx("option", { value: option.const, children: option.title }, index))) }) })) : (_jsxs(_Fragment, { children: [_jsx(SelectedArrayFieldTemplate, { ...props, "data-fjsf-array": name, items: valueArray, renderItem: (item, index) => (_jsxs(ArrayFieldItem, { children: [_jsx(SchemaField, { name: `${name}[${index}]`, schema: prepareChildSchema((index < schemas.items.length && schemas.items[index]) ??
|
|
108
|
+
schemas.additionalItems, schema), uiSchema: {
|
|
104
109
|
disabled,
|
|
105
110
|
...(uiSchema?.[index] || uiSchema?.items),
|
|
106
111
|
},
|
|
107
112
|
// "true" will prevent validation for required array fields
|
|
108
113
|
// since a value always exists in the array
|
|
109
|
-
forceDefaultValue:
|
|
110
|
-
|
|
111
|
-
...(uiSchema?.[index + items.length] || uiSchema?.items),
|
|
112
|
-
} }), !preventManipulation && (_jsxs(ArrayFieldItemButtons, { children: [_jsx(ArrayFieldRemoveButton, { ...(uiSchema?.["ui:removeButtonOptions"]?.props ?? {}), onClick: () => setValue(removeFromArray(value, index + items.length)), children: uiSchema?.["ui:removeButtonOptions"]?.content ?? "-" }), value.length > 1 && index > 0 && (_jsx(ArrayFieldUpButton, { ...(uiSchema?.["ui:upButtonOptions"]?.props ?? {}), onClick: () => setValue(moveInArray(value, index + items.length, -1)), children: uiSchema?.["ui:upButtonOptions"]?.content ?? "↑" })), value.length > 1 &&
|
|
113
|
-
index < value?.slice(items.length).length - 1 && (_jsx(ArrayFieldDownButton, { ...(uiSchema?.["ui:downButtonOptions"]?.props ?? {}), onClick: () => setValue(moveInArray(value, index + items.length, 1)), children: uiSchema?.["ui:downButtonOptions"]?.content ?? "↓" }))] }))] }, index)))] }), additionalItems && !preventManipulation && (_jsx(ArrayFieldAddButton, { ...(uiSchema?.["ui:addButtonOptions"]?.props ?? {}), onClick: () => setValue(appendArray(value)), children: uiSchema?.["ui:addButtonOptions"]?.content ?? "+" }))] }));
|
|
114
|
+
forceDefaultValue: index >= schemas.items.length }), !preventManipulation && index >= schemas.items.length && (_jsxs(ArrayFieldItemButtons, { children: [_jsx(ArrayFieldRemoveButton, { ...(uiSchema?.["ui:removeButtonOptions"]?.props ?? {}), onClick: () => setValue(removeFromArray(value, index + schemas.items.length)), children: uiSchema?.["ui:removeButtonOptions"]?.content ?? "-" }), value.length > 1 && index > 0 && (_jsx(ArrayFieldUpButton, { ...(uiSchema?.["ui:upButtonOptions"]?.props ?? {}), onClick: () => setValue(moveInArray(value, index + schemas.items.length, -1)), children: uiSchema?.["ui:upButtonOptions"]?.content ?? "↑" })), value.length > 1 &&
|
|
115
|
+
index < value?.slice(schemas.items.length).length - 1 && (_jsx(ArrayFieldDownButton, { ...(uiSchema?.["ui:downButtonOptions"]?.props ?? {}), onClick: () => setValue(moveInArray(value, index + schemas.items.length, 1)), children: uiSchema?.["ui:downButtonOptions"]?.content ?? "↓" }))] }))] }, index)) }), schemas.additionalItems && !preventManipulation && (_jsx(ArrayFieldAddButton, { ...(uiSchema?.["ui:addButtonOptions"]?.props ?? {}), onClick: () => setValue(appendArray(value)), children: uiSchema?.["ui:addButtonOptions"]?.content ?? "+" }))] }));
|
|
114
116
|
};
|
|
115
117
|
function prepareChildSchema(childSchema, parentSchema) {
|
|
116
118
|
if (!childSchema || typeof childSchema === "boolean") {
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import styled from "styled-components";
|
|
2
|
-
import { ObjectFieldButton, ObjectFieldItem, ObjectFieldItemButtons,
|
|
3
|
-
export const ArrayFieldList = ObjectFieldList;
|
|
2
|
+
import { ObjectFieldButton, ObjectFieldItem, ObjectFieldItemButtons, } from "../ObjectField/styledComponents";
|
|
4
3
|
export const ArrayFieldItem = ObjectFieldItem;
|
|
5
4
|
export const ArrayFieldItemButtons = ObjectFieldItemButtons;
|
|
6
5
|
export const ArrayFieldButton = styled(ObjectFieldButton) ``;
|
|
@@ -10,7 +10,9 @@ export const BooleanField = (props) => {
|
|
|
10
10
|
const { name, uiSchema } = props;
|
|
11
11
|
const { label, props: inputProps } = useMemo(() => extractUiSchema(uiSchema), [uiSchema]);
|
|
12
12
|
const { values, setValues } = useFormikContext();
|
|
13
|
-
const SelectedFieldTemplate =
|
|
13
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
14
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
15
|
+
templates.FieldTemplate;
|
|
14
16
|
return (_jsx(SelectedFieldTemplate, { ...props, "data-fjsf-boolean": name, children: _jsxs(BooleanFieldWrapper, { children: [_jsx(FieldInput, { readOnly: props.schema.readOnly, ...inputProps, name: name, type: "checkbox" }), _jsx("span", { onClick: () => {
|
|
15
17
|
setValues({
|
|
16
18
|
...values,
|
|
@@ -9,6 +9,8 @@ export const DateField = (props) => {
|
|
|
9
9
|
useSetDefault(props);
|
|
10
10
|
const { name, uiSchema } = props;
|
|
11
11
|
const { props: inputProps } = useMemo(() => extractUiSchema(uiSchema), [uiSchema]);
|
|
12
|
-
const SelectedFieldTemplate =
|
|
12
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
13
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
14
|
+
templates.FieldTemplate;
|
|
13
15
|
return (_jsx(SelectedFieldTemplate, { ...props, "data-fjsf-string": name, children: _jsx(DateFieldWrapper, { children: _jsx(FieldInput, { readOnly: props.schema.readOnly, ...inputProps, name: name, type: "date" }) }) }));
|
|
14
16
|
};
|
|
@@ -58,6 +58,8 @@ export const FileUploadField = (props) => {
|
|
|
58
58
|
setFieldValue(name, null);
|
|
59
59
|
}
|
|
60
60
|
};
|
|
61
|
-
const SelectedFieldTemplate =
|
|
61
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
62
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
63
|
+
templates.FieldTemplate;
|
|
62
64
|
return (_jsx(SelectedFieldTemplate, { ...props, "data-fjsf-object": name, children: _jsx(FileUploadFieldInput, { ...inputProps, name: name, value: value, handleRemoveFile: handleRemoveFile, uploadedFile: uploadedFile, setFieldValue: setFieldValue, handleFileUpload: handleFileUpload, uploadProgress: uploadProgress, removeButton: uiSchema["ui:removeButton"], uploadButtonText: uiSchema["ui:uploadButtonText"], infoText: uiSchema["ui:infoText"], hideRemoveButton: inputProps?.removeButton.hidden }) }));
|
|
63
65
|
};
|
|
@@ -24,6 +24,8 @@ export const MultipleChoiceField = (props) => {
|
|
|
24
24
|
return { "data-fjsf-string": name };
|
|
25
25
|
}
|
|
26
26
|
})();
|
|
27
|
-
const SelectedFieldTemplate =
|
|
27
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
28
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
29
|
+
templates.FieldTemplate;
|
|
28
30
|
return (_jsx(SelectedFieldTemplate, { ...props, ...fieldDataAttribute, children: _jsx(MultipleChoiceFieldInput, { inputProps: { readOnly: props.schema.readOnly, ...inputProps }, name: name, enums: enums, style: style, value: value, form: form }) }));
|
|
29
31
|
};
|
|
@@ -4,6 +4,8 @@ import { FormRegistry } from "../../FormRegistry";
|
|
|
4
4
|
export const NullField = (props) => {
|
|
5
5
|
const { templates } = useContext(FormRegistry);
|
|
6
6
|
const { name, uiSchema } = props;
|
|
7
|
-
const SelectedFieldTemplate =
|
|
7
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
8
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
9
|
+
templates.FieldTemplate;
|
|
8
10
|
return (_jsx(SelectedFieldTemplate, { ...props, "data-fjsf-null": name }));
|
|
9
11
|
};
|
|
@@ -49,7 +49,8 @@ export const ObjectField = (props) => {
|
|
|
49
49
|
return (_jsx(ObjectFieldButton, { ...(uiSchema?.["ui:customButtonOptions"]?.props ?? {}), onClick: onClick, children: uiSchema?.["ui:customButtonOptions"]?.content ?? "" }));
|
|
50
50
|
}
|
|
51
51
|
};
|
|
52
|
-
const SelectedObjectFieldTemplate =
|
|
52
|
+
const SelectedObjectFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
53
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
53
54
|
(props.uiSchema?.["ui:options"]?.isCollapsible
|
|
54
55
|
? templates.CollapsibleObjectFieldTemplate
|
|
55
56
|
: templates.ObjectFieldTemplate);
|
|
@@ -1,9 +1,4 @@
|
|
|
1
1
|
import { styled } from "styled-components";
|
|
2
|
-
export const ObjectFieldList = styled.ul `
|
|
3
|
-
color: ${(props) => props.theme.color.text.default};
|
|
4
|
-
list-style-type: none;
|
|
5
|
-
padding: 0;
|
|
6
|
-
`;
|
|
7
2
|
export const ObjectFieldItem = styled.li `
|
|
8
3
|
color: ${(props) => props.theme.color.text.default};
|
|
9
4
|
display: flex;
|
|
@@ -8,6 +8,8 @@ export const RadioField = (props) => {
|
|
|
8
8
|
useSetDefault(props);
|
|
9
9
|
const { name, uiSchema } = props;
|
|
10
10
|
const { label, props: inputProps } = useMemo(() => extractUiSchema(uiSchema), [uiSchema]);
|
|
11
|
-
const SelectedFieldTemplate =
|
|
11
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
12
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
13
|
+
templates.FieldTemplate;
|
|
12
14
|
return (_jsx(SelectedFieldTemplate, { ...props, "data-fjsf-boolean": name, children: _jsx(RadioFieldInput, { inputProps: { readOnly: props.schema.readOnly, ...inputProps }, label: label, name: name }) }));
|
|
13
15
|
};
|
|
@@ -9,6 +9,8 @@ export const SearchableMultiTagSelectField = (props) => {
|
|
|
9
9
|
const { name, uiSchema } = props;
|
|
10
10
|
const { placeholder, emptySearchMessage, props: inputProps, } = useMemo(() => extractUiSchema(uiSchema), [uiSchema]);
|
|
11
11
|
const enums = useMemo(() => getEnums(props), [props]);
|
|
12
|
-
const SelectedFieldTemplate =
|
|
12
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
13
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
14
|
+
templates.FieldTemplate;
|
|
13
15
|
return (_jsx(SelectedFieldTemplate, { ...props, "data-fjsf-array": name, children: _jsx(SearchableMultiTagSelectFieldInput, { ...inputProps, name: name, placeholder: placeholder, emptySearchMessage: emptySearchMessage, enums: enums }) }));
|
|
14
16
|
};
|
|
@@ -116,7 +116,9 @@ export const SearchableSelectField = (props) => {
|
|
|
116
116
|
const fieldDataAttribute = schema.type === "string"
|
|
117
117
|
? { "data-fjsf-string": name }
|
|
118
118
|
: { "data-fjsf-number": name };
|
|
119
|
-
const SelectedFieldTemplate =
|
|
119
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
120
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
121
|
+
templates.FieldTemplate;
|
|
120
122
|
return (_jsx(SelectedFieldTemplate, { ...props, ...fieldDataAttribute, children: _jsxs(SearchableSelectFieldContainer, { ref: containerRef, onBlur: handleBlur, children: [_jsxs(SearchableSelectFieldInputContainer, { children: [_jsx(SearchableSelectFieldInputElement, { ...inputProps, name: name, type: "text", placeholder: placeholder, value: searchTerm, onChange: handleSearchChange, onFocus: handleFocus }), searchTerm && !hideClearButton && (_jsx(SearchableSelectFieldClearButton, { onClick: handleClear, children: clearButtonText ?? "✕" }))] }), showOptions && (_jsxs(SearchableSelectFieldDropdownContainer, { role: "dropdown-list",
|
|
121
123
|
//ref={moreRef} //TODO
|
|
122
124
|
style: {
|
|
@@ -15,7 +15,9 @@ export const StringField = (props) => {
|
|
|
15
15
|
const fieldDataAttribute = schema.type === "string"
|
|
16
16
|
? { "data-fjsf-string": name }
|
|
17
17
|
: { "data-fjsf-number": name };
|
|
18
|
-
const SelectedFieldTemplate =
|
|
18
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
19
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
20
|
+
templates.FieldTemplate;
|
|
19
21
|
switch (enums?.type) {
|
|
20
22
|
case "select":
|
|
21
23
|
return (_jsx(SelectedFieldTemplate, { ...props, ...fieldDataAttribute, children: _jsx(StringFieldWrapper, { children: _jsxs(SelectFieldInput, { type,
|
|
@@ -8,6 +8,8 @@ export const TextAreaField = (props) => {
|
|
|
8
8
|
useSetDefault(props);
|
|
9
9
|
const { name, uiSchema } = props;
|
|
10
10
|
const { props: inputProps } = useMemo(() => extractUiSchema(uiSchema), [uiSchema]);
|
|
11
|
-
const SelectedFieldTemplate =
|
|
11
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
12
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
13
|
+
templates.FieldTemplate;
|
|
12
14
|
return (_jsx(SelectedFieldTemplate, { ...props, "data-fjsf-string": name, children: _jsx(TextAreaFieldInput, { readOnly: props.schema.readOnly, ...inputProps, name: name, formikAs: "textarea" }) }));
|
|
13
15
|
};
|
|
@@ -8,6 +8,8 @@ export const ToggleField = (props) => {
|
|
|
8
8
|
useSetDefault(props);
|
|
9
9
|
const { name, uiSchema } = props;
|
|
10
10
|
const { props: inputProps } = useMemo(() => extractUiSchema(uiSchema), [uiSchema]);
|
|
11
|
-
const SelectedFieldTemplate =
|
|
11
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
12
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
13
|
+
templates.FieldTemplate;
|
|
12
14
|
return (_jsx(SelectedFieldTemplate, { ...props, "data-fjsf-boolean": name, children: _jsx(ToggleFieldInput, { inputProps: { readOnly: props.schema.readOnly, ...inputProps }, name: name }) }));
|
|
13
15
|
};
|
|
@@ -7,7 +7,7 @@ import { getComponents } from "./styledComponents";
|
|
|
7
7
|
export const ArrayFieldTemplate = (props) => {
|
|
8
8
|
const { components } = useContext(FormRegistry);
|
|
9
9
|
const { Wrapper, Title, Description, Help, Info, RequiredIndicator, ErrorMessage, } = getComponents(components);
|
|
10
|
-
const { name, uiSchema,
|
|
10
|
+
const { name, uiSchema, items, renderItem, ...otherProps } = props;
|
|
11
11
|
const title = getTitle(props);
|
|
12
12
|
const description = getDescription(props);
|
|
13
13
|
const { help, info, props: { wrapper: wrapperProps = {}, title: titleProps, description: descriptionProps, help: helpProps, error: errorProps, } = {}, } = useMemo(() => extractUiSchema(uiSchema), [uiSchema]);
|
|
@@ -28,5 +28,5 @@ export const ArrayFieldTemplate = (props) => {
|
|
|
28
28
|
// In case of array of objects, it will give error message as an object value,
|
|
29
29
|
// which is incorrect value for React, causing UI to crash.
|
|
30
30
|
const errorIsString = typeof error === "string";
|
|
31
|
-
return (_jsxs(Wrapper, { ...mergedWrapperProps, children: [title && (_jsxs(Title, { ...titleProps, htmlFor: name, children: [title, props?.required && _jsx(RequiredIndicator, {})] })), info && _jsx(Info, { ...info }), description && (_jsx(Description, { ...descriptionProps, children: description })),
|
|
31
|
+
return (_jsxs(Wrapper, { ...mergedWrapperProps, children: [title && (_jsxs(Title, { ...titleProps, htmlFor: name, children: [title, props?.required && _jsx(RequiredIndicator, {})] })), info && _jsx(Info, { ...info }), description && (_jsx(Description, { ...descriptionProps, children: description })), items && items.map((item, index) => renderItem(item, index)), help && _jsx(Help, { ...helpProps, children: help }), errorIsString && _jsx(ErrorMessage, { ...errorProps, name: name })] }));
|
|
32
32
|
};
|
|
@@ -17,9 +17,10 @@ export const ArrayField = (props) => {
|
|
|
17
17
|
}
|
|
18
18
|
return item;
|
|
19
19
|
}
|
|
20
|
-
const SelectedArrayFieldTemplate =
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
20
|
+
const SelectedArrayFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
21
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
22
|
+
templates.ArrayFieldTemplate;
|
|
23
|
+
return (_jsx(SelectedArrayFieldTemplate, { ...props, items: value, renderItem: (item, index) => typeof item === "object" ? (_jsx(ArrayFieldItem, { children: _jsx(SchemaField, { name: `${name}[${index}]`, schema: typeof props.schema.additionalItems !== "boolean"
|
|
24
|
+
? props.schema.additionalItems
|
|
25
|
+
: {}, uiSchema: uiSchema }) }, index)) : (_jsx(ArrayFieldItem, { children: _jsx("div", { "data-keyword": item, children: getValue(item) }) }, item)) }));
|
|
25
26
|
};
|
|
@@ -22,6 +22,8 @@ export const BooleanField = (props) => {
|
|
|
22
22
|
}
|
|
23
23
|
return typeof label === "string" ? label : undefined;
|
|
24
24
|
}
|
|
25
|
-
const SelectedFieldTemplate =
|
|
25
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
26
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
27
|
+
templates.FieldTemplate;
|
|
26
28
|
return (_jsx(SelectedFieldTemplate, { ...props, children: _jsx(BooleanFieldWrapper, { children: _jsx(BooleanFieldValue, { name: name, value: value, label: findLabel(label) }) }) }));
|
|
27
29
|
};
|
|
@@ -13,6 +13,8 @@ export const MultipleChoiceField = (props) => {
|
|
|
13
13
|
const selected = getSelectedEnum(value, enums);
|
|
14
14
|
const notSelected = enums?.values?.filter((v) => Array.isArray(value) && !value.includes(v));
|
|
15
15
|
const hideNotSelected = onlyShowSelected === true || selected === undefined;
|
|
16
|
-
const SelectedFieldTemplate =
|
|
16
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
17
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
18
|
+
templates.FieldTemplate;
|
|
17
19
|
return (_jsx(SelectedFieldTemplate, { ...props, children: _jsx(MultipleChoiceFieldValue, { inputProps: inputProps, name: name, style: style, selected: selected, notSelected: hideNotSelected ? undefined : notSelected }) }));
|
|
18
20
|
};
|
|
@@ -3,6 +3,8 @@ import { useContext } from "react";
|
|
|
3
3
|
import { FormViewRegistry } from "../FormViewRegistry";
|
|
4
4
|
export const NullField = (props) => {
|
|
5
5
|
const { templates } = useContext(FormViewRegistry);
|
|
6
|
-
const SelectedFieldTemplate =
|
|
6
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
7
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
8
|
+
templates.FieldTemplate;
|
|
7
9
|
return _jsx(SelectedFieldTemplate, { ...props });
|
|
8
10
|
};
|
|
@@ -28,7 +28,9 @@ export const ObjectField = (props) => {
|
|
|
28
28
|
}
|
|
29
29
|
}, [valuesToRemove]);
|
|
30
30
|
const orderedProperties = orderByUiSchema(uiSchema?.["ui:order"], Object.keys(properties || {}));
|
|
31
|
-
const SelectedObjectFieldTemplate =
|
|
31
|
+
const SelectedObjectFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
32
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
33
|
+
templates.ObjectFieldTemplate;
|
|
32
34
|
return (_jsx(SelectedObjectFieldTemplate, { ...props, children: orderedProperties
|
|
33
35
|
.map((child, index) => {
|
|
34
36
|
if (typeof child === "string") {
|
|
@@ -13,6 +13,8 @@ export const StringField = (props) => {
|
|
|
13
13
|
value =
|
|
14
14
|
enums.values.find((element) => element.const === value)?.title ?? value;
|
|
15
15
|
}
|
|
16
|
-
const SelectedFieldTemplate =
|
|
16
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
17
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
18
|
+
templates.FieldTemplate;
|
|
17
19
|
return (_jsx(SelectedFieldTemplate, { ...props, children: _jsx(StringFieldValue, { "data-keyword": value, children: value }) }));
|
|
18
20
|
};
|
|
@@ -7,6 +7,8 @@ export const TextAreaField = (props) => {
|
|
|
7
7
|
const { name, uiSchema } = props;
|
|
8
8
|
const { values } = useFormikContext();
|
|
9
9
|
const value = getIn(values, name);
|
|
10
|
-
const SelectedFieldTemplate =
|
|
10
|
+
const SelectedFieldTemplate = (props.uiSchema?.["ui:template"] &&
|
|
11
|
+
templates[props.uiSchema?.["ui:template"]]) ??
|
|
12
|
+
templates.FieldTemplate;
|
|
11
13
|
return (_jsx(SelectedFieldTemplate, { ...props, children: _jsx(TextAreaValue, { children: value }) }));
|
|
12
14
|
};
|
|
@@ -6,11 +6,11 @@ import { getComponents } from "./styledComponents";
|
|
|
6
6
|
export const ArrayFieldTemplate = (props) => {
|
|
7
7
|
const { components } = useContext(FormViewRegistry);
|
|
8
8
|
const { Wrapper, Title, Description } = getComponents(components);
|
|
9
|
-
const { name, uiSchema,
|
|
9
|
+
const { name, uiSchema, items, renderItem } = props;
|
|
10
10
|
const title = getTitle(props);
|
|
11
11
|
const description = getDescription(props);
|
|
12
12
|
const { help, info,
|
|
13
13
|
//TODO: This is not right
|
|
14
14
|
props: { wrapper: wrapperProps, title: titleProps, description: descriptionProps, help: helpProps, error: errorProps, } = {}, } = useMemo(() => extractUiSchema(uiSchema), [uiSchema]);
|
|
15
|
-
return (_jsxs(Wrapper, { ...wrapperProps, children: [title && (_jsx(Title, { ...titleProps, htmlFor: name, children: title })), description && (_jsx(Description, { ...descriptionProps, children: description })),
|
|
15
|
+
return (_jsxs(Wrapper, { ...wrapperProps, children: [title && (_jsx(Title, { ...titleProps, htmlFor: name, children: title })), description && (_jsx(Description, { ...descriptionProps, children: description })), items && items.map((item, index) => renderItem(item, index))] }));
|
|
16
16
|
};
|
|
@@ -139,7 +139,6 @@ export declare const components: {
|
|
|
139
139
|
ref?: ((instance: HTMLSpanElement | null) => void | import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import("react").RefObject<HTMLSpanElement> | null | undefined;
|
|
140
140
|
}, never>> & string;
|
|
141
141
|
ObjectFieldSection: import("react").FC<import("../fields/ObjectField").ObjectFieldSectionProps>;
|
|
142
|
-
ObjectFieldList: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLUListElement>, HTMLUListElement>, never>> & string;
|
|
143
142
|
ObjectFieldItem: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, never>> & string;
|
|
144
143
|
ObjectFieldItemButtons: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
145
144
|
ObjectFieldButton: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, never>> & string;
|
|
@@ -190,7 +189,6 @@ export declare const components: {
|
|
|
190
189
|
FileUploadFieldFileInfoText: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>> & string;
|
|
191
190
|
FileUploadFieldContainer: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
192
191
|
BooleanFieldWrapper: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
193
|
-
ArrayFieldList: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLUListElement>, HTMLUListElement>, never>> & string;
|
|
194
192
|
ArrayFieldItem: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, never>> & string;
|
|
195
193
|
ArrayFieldItemButtons: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
196
194
|
ArrayFieldButton: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<Omit<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, never>, "ref"> & {
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
export declare const ArrayFieldList: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLUListElement>, HTMLUListElement>, never>> & string;
|
|
2
1
|
export declare const ArrayFieldItem: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, never>> & string;
|
|
3
2
|
export declare const ArrayFieldItemButtons: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
4
3
|
export declare const ArrayFieldButton: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<Omit<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, never>, "ref"> & {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
export * as fields from "./ObjectField";
|
|
2
2
|
declare const components: {
|
|
3
3
|
ObjectFieldSection: import("react").FC<import("./types").ObjectFieldSectionProps>;
|
|
4
|
-
ObjectFieldList: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLUListElement>, HTMLUListElement>, never>> & string;
|
|
5
4
|
ObjectFieldItem: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, never>> & string;
|
|
6
5
|
ObjectFieldItemButtons: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
7
6
|
ObjectFieldButton: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, never>> & string;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
export declare const ObjectFieldList: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLUListElement>, HTMLUListElement>, never>> & string;
|
|
2
1
|
export declare const ObjectFieldItem: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, never>> & string;
|
|
3
2
|
export declare const ObjectFieldItemButtons: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
4
3
|
export declare const ObjectFieldButton: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, never>> & string;
|
|
@@ -71,7 +71,6 @@ export declare const fieldComponents: {
|
|
|
71
71
|
ref?: ((instance: HTMLSpanElement | null) => void | import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import("react").RefObject<HTMLSpanElement> | null | undefined;
|
|
72
72
|
}, never>> & string;
|
|
73
73
|
ObjectFieldSection: import("react").FC<ObjectField.ObjectFieldSectionProps>;
|
|
74
|
-
ObjectFieldList: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLUListElement>, HTMLUListElement>, never>> & string;
|
|
75
74
|
ObjectFieldItem: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, never>> & string;
|
|
76
75
|
ObjectFieldItemButtons: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
77
76
|
ObjectFieldButton: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, never>> & string;
|
|
@@ -122,7 +121,6 @@ export declare const fieldComponents: {
|
|
|
122
121
|
FileUploadFieldFileInfoText: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>> & string;
|
|
123
122
|
FileUploadFieldContainer: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
124
123
|
BooleanFieldWrapper: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
125
|
-
ArrayFieldList: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLUListElement>, HTMLUListElement>, never>> & string;
|
|
126
124
|
ArrayFieldItem: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, never>> & string;
|
|
127
125
|
ArrayFieldItemButtons: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
128
126
|
ArrayFieldButton: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<Omit<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, never>, "ref"> & {
|
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
|
|
3
|
-
export declare const ArrayFieldTemplate: React.FC<ArrayFieldTemplateProps>;
|
|
1
|
+
import type { ArrayFieldTemplateType } from "../../../common/types";
|
|
2
|
+
export declare const ArrayFieldTemplate: ArrayFieldTemplateType;
|
package/dist/types/Form/templates/CollapsibleObjectFieldTemplate/CollapsibleObjectFieldTemplate.d.ts
CHANGED
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
|
|
3
|
-
export declare const CollapsibleObjectFieldTemplate: React.FC<ObjectFieldTemplateProps>;
|
|
1
|
+
import type { ObjectFieldTemplateType } from "../../../common/types";
|
|
2
|
+
export declare const CollapsibleObjectFieldTemplate: ObjectFieldTemplateType;
|
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
|
|
3
|
-
export declare const FieldTemplate: React.FC<FieldTemplateProps>;
|
|
1
|
+
import type { FieldTemplateType } from "../../../common/types";
|
|
2
|
+
export declare const FieldTemplate: FieldTemplateType;
|
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
|
|
3
|
-
export declare const ObjectFieldTemplate: React.FC<ObjectFieldTemplateProps>;
|
|
1
|
+
import type { ObjectFieldTemplateType } from "../../../common/types";
|
|
2
|
+
export declare const ObjectFieldTemplate: ObjectFieldTemplateType;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { TemplateType } from "../../common/types";
|
|
2
2
|
import * as ObjectFieldTemplate from "./ObjectFieldTemplate";
|
|
3
3
|
export declare const templateComponents: {
|
|
4
4
|
getComponents(components: import("..").ComponentsType): {
|
|
@@ -41,11 +41,11 @@ export declare const templateComponents: {
|
|
|
41
41
|
ArrayFieldTemplateErrorMessage: typeof import("../components/ErrorMessage").ErrorMessage | undefined;
|
|
42
42
|
};
|
|
43
43
|
export declare const templates: {
|
|
44
|
-
ObjectFieldTemplate:
|
|
45
|
-
FieldTemplate:
|
|
46
|
-
CollapsibleObjectFieldTemplate:
|
|
47
|
-
ArrayFieldTemplate:
|
|
44
|
+
ObjectFieldTemplate: import("../../common/types").ObjectFieldTemplateType;
|
|
45
|
+
FieldTemplate: import("../../common/types").FieldTemplateType;
|
|
46
|
+
CollapsibleObjectFieldTemplate: import("../../common/types").ObjectFieldTemplateType;
|
|
47
|
+
ArrayFieldTemplate: import("../../common/types").ArrayFieldTemplateType;
|
|
48
48
|
};
|
|
49
49
|
export type TemplatesType = typeof templates & {
|
|
50
|
-
[key: string]:
|
|
50
|
+
[key: string]: TemplateType;
|
|
51
51
|
};
|
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
|
|
3
|
-
export declare const ArrayFieldTemplate: React.FC<ArrayFieldTemplateProps>;
|
|
1
|
+
import type { ArrayFieldTemplateType } from "../../../common/types";
|
|
2
|
+
export declare const ArrayFieldTemplate: ArrayFieldTemplateType;
|
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
|
|
3
|
-
export declare const FieldTemplate: React.FC<FieldTemplateProps>;
|
|
1
|
+
import type { FieldTemplateType } from "../../../common/types";
|
|
2
|
+
export declare const FieldTemplate: FieldTemplateType;
|
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
|
|
3
|
-
export declare const ObjectFieldTemplate: React.FC<ObjectFieldTemplateProps>;
|
|
1
|
+
import type { ObjectFieldTemplateType } from "../../../common/types";
|
|
2
|
+
export declare const ObjectFieldTemplate: ObjectFieldTemplateType;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { TemplateType } from "../../common/types";
|
|
2
2
|
import * as ObjectFieldTemplate from "./ObjectFieldTemplate";
|
|
3
3
|
export declare const templateComponents: {
|
|
4
4
|
getComponents(components: import("../components").ComponentsType): {
|
|
@@ -14,10 +14,10 @@ export declare const templateComponents: {
|
|
|
14
14
|
ArrayFieldTemplateDescription: typeof import("../components").FieldDescription | undefined;
|
|
15
15
|
};
|
|
16
16
|
export declare const templates: {
|
|
17
|
-
ObjectFieldTemplate:
|
|
18
|
-
FieldTemplate:
|
|
19
|
-
ArrayFieldTemplate:
|
|
17
|
+
ObjectFieldTemplate: import("../../common/types").ObjectFieldTemplateType;
|
|
18
|
+
FieldTemplate: import("../../common/types").FieldTemplateType;
|
|
19
|
+
ArrayFieldTemplate: import("../../common/types").ArrayFieldTemplateType;
|
|
20
20
|
};
|
|
21
21
|
export type TemplatesType = typeof templates & {
|
|
22
|
-
[key: string]:
|
|
22
|
+
[key: string]: TemplateType;
|
|
23
23
|
};
|
|
@@ -1,10 +1,4 @@
|
|
|
1
1
|
import type { Schema, UiSchema } from "./Schemas";
|
|
2
|
-
export type ArrayFieldTemplateProps = React.PropsWithChildren<{
|
|
3
|
-
name: string;
|
|
4
|
-
schema: Schema;
|
|
5
|
-
[key: string]: any;
|
|
6
|
-
uiSchema?: UiSchema;
|
|
7
|
-
}>;
|
|
8
2
|
export type FieldTemplateProps = React.PropsWithChildren<{
|
|
9
3
|
name: string;
|
|
10
4
|
schema: Schema;
|
|
@@ -18,3 +12,15 @@ export type ObjectFieldTemplateProps = {
|
|
|
18
12
|
children: React.ReactNode;
|
|
19
13
|
[key: string]: any;
|
|
20
14
|
};
|
|
15
|
+
export type ArrayFieldTemplateProps = React.PropsWithChildren<{
|
|
16
|
+
name: string;
|
|
17
|
+
schema: Schema;
|
|
18
|
+
uiSchema?: UiSchema;
|
|
19
|
+
items?: any[];
|
|
20
|
+
renderItem: (item: any, index: number) => React.ReactNode;
|
|
21
|
+
[key: string]: any;
|
|
22
|
+
}>;
|
|
23
|
+
export type FieldTemplateType = React.FC<FieldTemplateProps>;
|
|
24
|
+
export type ObjectFieldTemplateType = React.FC<ObjectFieldTemplateProps>;
|
|
25
|
+
export type ArrayFieldTemplateType = React.FC<ArrayFieldTemplateProps>;
|
|
26
|
+
export type TemplateType = FieldTemplateType | ObjectFieldTemplateType | ArrayFieldTemplateType;
|
package/package.json
CHANGED