@ghentcdh/json-forms-vue 0.6.6 → 0.6.8
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/form-with-actions.component.vue.d.ts +17 -2
- package/form.component.vue.d.ts +2 -0
- package/form.store.d.ts +1 -1
- package/index.js +465 -623
- package/index.mjs +470 -628
- package/package.json +4 -4
- package/renderes/array/ArrayRenderer.vue.d.ts +71 -183
- package/renderes/array/index.d.ts +75 -2
- package/renderes/controls/BooleanControlRenderer.vue.d.ts +71 -109
- package/renderes/controls/IntegerControlRenderer.vue.d.ts +71 -110
- package/renderes/controls/MarkdownControlRenderer.vue.d.ts +71 -81
- package/renderes/controls/NumberControlRenderer.vue.d.ts +71 -110
- package/renderes/controls/StringControlRenderer.vue.d.ts +71 -109
- package/renderes/controls/TextAreaControlRenderer.vue.d.ts +71 -107
- package/renderes/controls/autocomplete/AutocompleteControlRenderer.vue.d.ts +71 -96
- package/renderes/controls/index.d.ts +519 -1
- package/renderes/index.d.ts +667 -1
- package/renderes/layouts/CollapseLayout.vue.d.ts +73 -0
- package/renderes/layouts/HorizontalLayout.vue.d.ts +73 -0
- package/renderes/layouts/VerticalLayout.vue.d.ts +73 -0
- package/renderes/layouts/index.d.ts +75 -1
- package/renderes/tester.d.ts +0 -1
- package/renderes/array/FixedArrayRenderer.vue.d.ts +0 -127
package/index.js
CHANGED
|
@@ -3,13 +3,13 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
|
3
3
|
const toolsVue = require("@ghentcdh/tools-vue");
|
|
4
4
|
const ui = require("@ghentcdh/ui");
|
|
5
5
|
const core = require("@jsonforms/core");
|
|
6
|
-
const vue$1 = require("@jsonforms/vue");
|
|
7
6
|
const vue = require("vue");
|
|
7
|
+
const vue$1 = require("@jsonforms/vue");
|
|
8
8
|
const vueVanilla = require("@jsonforms/vue-vanilla");
|
|
9
|
+
const lodashEs = require("lodash-es");
|
|
9
10
|
const testers = require("@jsonforms/core/src/testers/testers");
|
|
10
11
|
const jsonFormsCore = require("@ghentcdh/json-forms-core");
|
|
11
12
|
const vueRouter = require("vue-router");
|
|
12
|
-
const lodashEs = require("lodash-es");
|
|
13
13
|
const core$1 = require("@vueuse/core");
|
|
14
14
|
class FormStore {
|
|
15
15
|
constructor(schema) {
|
|
@@ -48,158 +48,169 @@ const useVanillaControlCustom = (input, adaptTarget = (v) => v.value) => {
|
|
|
48
48
|
isTouched.value = true;
|
|
49
49
|
isFocused.value = false;
|
|
50
50
|
};
|
|
51
|
-
const
|
|
51
|
+
const controlWrapper = vue.computed(() => {
|
|
52
52
|
return {
|
|
53
53
|
...vanillaControl.controlWrapper.value,
|
|
54
|
+
...lodashEs.omit(vanillaControl.appliedOptions.value, "styles"),
|
|
54
55
|
isFocused: isFocused.value,
|
|
55
56
|
isTouched: isTouched.value
|
|
56
57
|
};
|
|
57
58
|
});
|
|
58
59
|
return {
|
|
59
60
|
...vanillaControl,
|
|
60
|
-
controlWrapper
|
|
61
|
+
controlWrapper,
|
|
61
62
|
isFocused,
|
|
62
63
|
isTouched,
|
|
63
64
|
onFocus,
|
|
64
65
|
onBlur
|
|
66
|
+
// handleChange,
|
|
65
67
|
};
|
|
66
68
|
};
|
|
67
|
-
const
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
69
|
+
const _sfc_main$g = /* @__PURE__ */ vue.defineComponent({
|
|
70
|
+
__name: "BooleanControlRenderer",
|
|
71
|
+
props: { ...vue$1.rendererProps() },
|
|
72
|
+
setup(__props) {
|
|
73
|
+
const props = __props;
|
|
74
|
+
const { control, onChange, appliedOptions, onFocus, onBlur, controlWrapper } = useVanillaControlCustom(vue$1.useJsonFormsControl(props), (target) => {
|
|
75
|
+
return Boolean(target.value) ?? false;
|
|
76
|
+
});
|
|
77
|
+
return (_ctx, _cache) => {
|
|
78
|
+
return vue.openBlock(), vue.createBlock(vue.unref(ui.Checkbox), vue.mergeProps(vue.unref(controlWrapper), {
|
|
79
|
+
modelValue: vue.unref(control).data,
|
|
80
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => vue.unref(control).data = $event),
|
|
81
|
+
enabled: vue.unref(control).enabled,
|
|
82
|
+
config: vue.unref(appliedOptions),
|
|
83
|
+
onChange: vue.unref(onChange),
|
|
84
|
+
onFocus: vue.unref(onFocus),
|
|
85
|
+
onBlur: vue.unref(onBlur)
|
|
86
|
+
}), null, 16, ["modelValue", "enabled", "config", "onChange", "onFocus", "onBlur"]);
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
const _sfc_main$f = /* @__PURE__ */ vue.defineComponent({
|
|
91
|
+
__name: "IntegerControlRenderer",
|
|
92
|
+
props: { ...vue$1.rendererProps() },
|
|
93
|
+
setup(__props) {
|
|
94
|
+
const props = __props;
|
|
95
|
+
const { control, onChange, appliedOptions, onFocus, onBlur, controlWrapper } = useVanillaControlCustom(
|
|
77
96
|
vue$1.useJsonFormsControl(props),
|
|
78
|
-
(target) =>
|
|
79
|
-
return Boolean(target.value) ?? false;
|
|
80
|
-
}
|
|
97
|
+
(target) => target.value === "" ? void 0 : Number(target.value)
|
|
81
98
|
);
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
99
|
+
const steps = vue.computed(() => appliedOptions.value.steps ?? 1);
|
|
100
|
+
return (_ctx, _cache) => {
|
|
101
|
+
return vue.openBlock(), vue.createBlock(vue.unref(ui.InputNumber), vue.mergeProps(vue.unref(controlWrapper), {
|
|
102
|
+
modelValue: vue.unref(control).data,
|
|
103
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => vue.unref(control).data = $event),
|
|
104
|
+
enabled: vue.unref(control).enabled,
|
|
105
|
+
config: vue.unref(appliedOptions),
|
|
106
|
+
steps: steps.value,
|
|
107
|
+
onChange: vue.unref(onChange),
|
|
108
|
+
onFocus: vue.unref(onFocus),
|
|
109
|
+
onBlur: vue.unref(onBlur)
|
|
110
|
+
}), null, 16, ["modelValue", "enabled", "config", "steps", "onChange", "onFocus", "onBlur"]);
|
|
111
|
+
};
|
|
91
112
|
}
|
|
92
113
|
});
|
|
93
|
-
const
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
const
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
114
|
+
const _sfc_main$e = /* @__PURE__ */ vue.defineComponent({
|
|
115
|
+
__name: "MarkdownControlRenderer",
|
|
116
|
+
props: { ...vue$1.rendererProps() },
|
|
117
|
+
setup(__props) {
|
|
118
|
+
const props = __props;
|
|
119
|
+
const {
|
|
120
|
+
control,
|
|
121
|
+
handleChange,
|
|
122
|
+
appliedOptions,
|
|
123
|
+
onFocus,
|
|
124
|
+
onBlur,
|
|
125
|
+
controlWrapper
|
|
126
|
+
} = useVanillaControlCustom(vue$1.useJsonFormsControl(props));
|
|
127
|
+
const changeValue = (value) => {
|
|
128
|
+
handleChange(control.value.path, value);
|
|
129
|
+
};
|
|
130
|
+
return (_ctx, _cache) => {
|
|
131
|
+
return vue.openBlock(), vue.createBlock(vue.unref(ui.Markdown), vue.mergeProps(vue.unref(controlWrapper), {
|
|
132
|
+
modelValue: vue.unref(control).data,
|
|
133
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => vue.unref(control).data = $event),
|
|
134
|
+
enabled: vue.unref(control).enabled,
|
|
135
|
+
config: vue.unref(appliedOptions),
|
|
136
|
+
onChange: changeValue,
|
|
137
|
+
onFocus: vue.unref(onFocus),
|
|
138
|
+
onBlur: vue.unref(onBlur)
|
|
139
|
+
}), null, 16, ["modelValue", "enabled", "config", "onFocus", "onBlur"]);
|
|
140
|
+
};
|
|
101
141
|
}
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
const
|
|
108
|
-
|
|
109
|
-
const _component_control_wrapper = vue.resolveComponent("control-wrapper");
|
|
110
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$a, [
|
|
111
|
-
vue.createVNode(_component_control_wrapper, vue.mergeProps(_ctx.controlWrapper, {
|
|
112
|
-
styles: _ctx.styles,
|
|
113
|
-
"hide-label": true
|
|
114
|
-
}), {
|
|
115
|
-
default: vue.withCtx(() => [
|
|
116
|
-
vue.createElementVNode("label", _hoisted_2$3, [
|
|
117
|
-
vue.createElementVNode("input", {
|
|
118
|
-
id: _ctx.control.id + "-input",
|
|
119
|
-
type: "checkbox",
|
|
120
|
-
class: vue.normalizeClass(["checkbox"]),
|
|
121
|
-
checked: _ctx.control.data,
|
|
122
|
-
disabled: !_ctx.control.enabled,
|
|
123
|
-
autofocus: _ctx.appliedOptions.focus,
|
|
124
|
-
placeholder: _ctx.appliedOptions.placeholder,
|
|
125
|
-
onChange: _cache[0] || (_cache[0] = (...args) => _ctx.onChange && _ctx.onChange(...args)),
|
|
126
|
-
onFocus: _cache[1] || (_cache[1] = (...args) => _ctx.onFocus && _ctx.onFocus(...args)),
|
|
127
|
-
onBlur: _cache[2] || (_cache[2] = (...args) => _ctx.onBlur && _ctx.onBlur(...args))
|
|
128
|
-
}, null, 40, _hoisted_3$3),
|
|
129
|
-
vue.createElementVNode("span", _hoisted_4$2, vue.toDisplayString(_ctx.control.label), 1)
|
|
130
|
-
])
|
|
131
|
-
]),
|
|
132
|
-
_: 1
|
|
133
|
-
}, 16, ["styles"])
|
|
134
|
-
]);
|
|
135
|
-
}
|
|
136
|
-
const BooleanControlRenderer = /* @__PURE__ */ _export_sfc(controlRenderer$8, [["render", _sfc_render$7]]);
|
|
137
|
-
const showErrors = (isTouched, isFocused, errors) => {
|
|
138
|
-
return !!(isTouched && errors);
|
|
139
|
-
};
|
|
140
|
-
const inputClasses = (styles, isFocused, isTouched, errors) => {
|
|
141
|
-
return [
|
|
142
|
-
styles?.control.input,
|
|
143
|
-
{ "input-error": showErrors(isTouched, isFocused, errors) }
|
|
144
|
-
];
|
|
145
|
-
};
|
|
146
|
-
const controlRenderer$7 = vue.defineComponent({
|
|
147
|
-
name: "IntegerControlRenderer",
|
|
148
|
-
components: {
|
|
149
|
-
ControlWrapper: ui.ControlWrapper
|
|
150
|
-
},
|
|
151
|
-
props: {
|
|
152
|
-
...vue$1.rendererProps()
|
|
153
|
-
},
|
|
154
|
-
setup(props) {
|
|
155
|
-
return useVanillaControlCustom(
|
|
142
|
+
});
|
|
143
|
+
const _sfc_main$d = /* @__PURE__ */ vue.defineComponent({
|
|
144
|
+
__name: "NumberControlRenderer",
|
|
145
|
+
props: { ...vue$1.rendererProps() },
|
|
146
|
+
setup(__props) {
|
|
147
|
+
const props = __props;
|
|
148
|
+
const { control, onChange, appliedOptions, onFocus, onBlur, controlWrapper } = useVanillaControlCustom(
|
|
156
149
|
vue$1.useJsonFormsControl(props),
|
|
157
150
|
(target) => target.value === "" ? void 0 : Number(target.value)
|
|
158
151
|
);
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
152
|
+
const steps = vue.computed(() => appliedOptions.value.steps ?? 0.01);
|
|
153
|
+
return (_ctx, _cache) => {
|
|
154
|
+
return vue.openBlock(), vue.createBlock(vue.unref(ui.InputNumber), vue.mergeProps(vue.unref(controlWrapper), {
|
|
155
|
+
modelValue: vue.unref(control).data,
|
|
156
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => vue.unref(control).data = $event),
|
|
157
|
+
enabled: vue.unref(control).enabled,
|
|
158
|
+
config: vue.unref(appliedOptions),
|
|
159
|
+
steps: steps.value,
|
|
160
|
+
onChange: vue.unref(onChange),
|
|
161
|
+
onFocus: vue.unref(onFocus),
|
|
162
|
+
onBlur: vue.unref(onBlur)
|
|
163
|
+
}), null, 16, ["modelValue", "enabled", "config", "steps", "onChange", "onFocus", "onBlur"]);
|
|
164
|
+
};
|
|
165
|
+
}
|
|
166
|
+
});
|
|
167
|
+
const _sfc_main$c = /* @__PURE__ */ vue.defineComponent({
|
|
168
|
+
__name: "StringControlRenderer",
|
|
169
|
+
props: { ...vue$1.rendererProps() },
|
|
170
|
+
setup(__props) {
|
|
171
|
+
const props = __props;
|
|
172
|
+
const {
|
|
173
|
+
control,
|
|
174
|
+
onChange,
|
|
175
|
+
appliedOptions,
|
|
176
|
+
onFocus,
|
|
177
|
+
onBlur,
|
|
178
|
+
controlWrapper,
|
|
179
|
+
styles
|
|
180
|
+
} = useVanillaControlCustom(vue$1.useJsonFormsControl(props));
|
|
181
|
+
return (_ctx, _cache) => {
|
|
182
|
+
return vue.openBlock(), vue.createBlock(vue.unref(ui.Input), vue.mergeProps(vue.unref(controlWrapper), {
|
|
183
|
+
modelValue: vue.unref(control).data,
|
|
184
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => vue.unref(control).data = $event),
|
|
185
|
+
enabled: vue.unref(control).enabled,
|
|
186
|
+
config: vue.unref(appliedOptions),
|
|
187
|
+
styles: vue.unref(styles),
|
|
188
|
+
onChange: vue.unref(onChange),
|
|
189
|
+
onFocus: vue.unref(onFocus),
|
|
190
|
+
onBlur: vue.unref(onBlur)
|
|
191
|
+
}), null, 16, ["modelValue", "enabled", "config", "styles", "onChange", "onFocus", "onBlur"]);
|
|
192
|
+
};
|
|
193
|
+
}
|
|
194
|
+
});
|
|
195
|
+
const _sfc_main$b = /* @__PURE__ */ vue.defineComponent({
|
|
196
|
+
__name: "TextAreaControlRenderer",
|
|
197
|
+
props: { ...vue$1.rendererProps() },
|
|
198
|
+
setup(__props) {
|
|
199
|
+
const props = __props;
|
|
200
|
+
const { control, onChange, appliedOptions, onFocus, onBlur, controlWrapper } = useVanillaControlCustom(vue$1.useJsonFormsControl(props));
|
|
201
|
+
return (_ctx, _cache) => {
|
|
202
|
+
return vue.openBlock(), vue.createBlock(vue.unref(ui.Textarea), vue.mergeProps(vue.unref(controlWrapper), {
|
|
203
|
+
modelValue: vue.unref(control).data,
|
|
204
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => vue.unref(control).data = $event),
|
|
205
|
+
enabled: vue.unref(control).enabled,
|
|
206
|
+
config: vue.unref(appliedOptions),
|
|
207
|
+
onChange: vue.unref(onChange),
|
|
208
|
+
onFocus: vue.unref(onFocus),
|
|
209
|
+
onBlur: vue.unref(onBlur)
|
|
210
|
+
}), null, 16, ["modelValue", "enabled", "config", "onChange", "onFocus", "onBlur"]);
|
|
211
|
+
};
|
|
173
212
|
}
|
|
174
213
|
});
|
|
175
|
-
const entry$7 = {
|
|
176
|
-
renderer: controlRenderer$7,
|
|
177
|
-
tester: core.rankWith(1, core.isIntegerControl)
|
|
178
|
-
};
|
|
179
|
-
const _hoisted_1$9 = ["id", "step", "value", "disabled", "autofocus", "placeholder"];
|
|
180
|
-
function _sfc_render$6(_ctx, _cache, $props, $setup, $data, $options) {
|
|
181
|
-
const _component_control_wrapper = vue.resolveComponent("control-wrapper");
|
|
182
|
-
return vue.openBlock(), vue.createBlock(_component_control_wrapper, vue.mergeProps(_ctx.controlWrapper, { styles: _ctx.styles }), {
|
|
183
|
-
default: vue.withCtx(() => [
|
|
184
|
-
vue.createElementVNode("input", {
|
|
185
|
-
id: _ctx.control.id + "-input",
|
|
186
|
-
autocomplete: "off",
|
|
187
|
-
type: "number",
|
|
188
|
-
step: _ctx.step,
|
|
189
|
-
class: vue.normalizeClass(_ctx.inputClass),
|
|
190
|
-
value: _ctx.control.data,
|
|
191
|
-
disabled: !_ctx.control.enabled,
|
|
192
|
-
autofocus: _ctx.appliedOptions.focus,
|
|
193
|
-
placeholder: _ctx.appliedOptions.placeholder,
|
|
194
|
-
onChange: _cache[0] || (_cache[0] = (...args) => _ctx.onChange && _ctx.onChange(...args)),
|
|
195
|
-
onFocus: _cache[1] || (_cache[1] = (...args) => _ctx.onFocus && _ctx.onFocus(...args)),
|
|
196
|
-
onBlur: _cache[2] || (_cache[2] = (...args) => _ctx.onBlur && _ctx.onBlur(...args))
|
|
197
|
-
}, null, 42, _hoisted_1$9)
|
|
198
|
-
]),
|
|
199
|
-
_: 1
|
|
200
|
-
}, 16, ["styles"]);
|
|
201
|
-
}
|
|
202
|
-
const IntegerControlRenderer = /* @__PURE__ */ _export_sfc(controlRenderer$7, [["render", _sfc_render$6]]);
|
|
203
214
|
const isAutoCompleteControl = testers.and(
|
|
204
215
|
// uiTypeIs('Control'),
|
|
205
216
|
testers.optionIs("format", jsonFormsCore.ControlType.autocomplete)
|
|
@@ -216,10 +227,6 @@ const isMarkdownControl = testers.and(
|
|
|
216
227
|
core.uiTypeIs("Control"),
|
|
217
228
|
testers.optionIs("format", jsonFormsCore.ControlType.markdown)
|
|
218
229
|
);
|
|
219
|
-
const isFixedArray = testers.and(
|
|
220
|
-
testers.schemaTypeIs("array"),
|
|
221
|
-
testers.optionIs("format", jsonFormsCore.ControlType.fixedArray)
|
|
222
|
-
);
|
|
223
230
|
const isArrayRenderer = testers.and(
|
|
224
231
|
testers.schemaTypeIs("array")
|
|
225
232
|
// optionIs('format', ControlType.array),
|
|
@@ -230,228 +237,61 @@ const isCustomControl = (customType) => {
|
|
|
230
237
|
testers.optionIs("type", customType)
|
|
231
238
|
);
|
|
232
239
|
};
|
|
233
|
-
const
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
);
|
|
246
|
-
const field =
|
|
240
|
+
const _sfc_main$a = /* @__PURE__ */ vue.defineComponent({
|
|
241
|
+
__name: "AutocompleteControlRenderer",
|
|
242
|
+
props: { ...vue$1.rendererProps() },
|
|
243
|
+
setup(__props) {
|
|
244
|
+
const props = __props;
|
|
245
|
+
const {
|
|
246
|
+
control,
|
|
247
|
+
handleChange: _handleChange,
|
|
248
|
+
appliedOptions,
|
|
249
|
+
onFocus,
|
|
250
|
+
onBlur,
|
|
251
|
+
controlWrapper
|
|
252
|
+
} = useVanillaControlCustom(vue$1.useJsonFormsControl(props));
|
|
253
|
+
const field = vue.computed(() => appliedOptions.value.field);
|
|
247
254
|
const handleChange = (result) => {
|
|
248
|
-
const { path } = control.
|
|
249
|
-
|
|
255
|
+
const { path } = control.value;
|
|
256
|
+
_handleChange(path, result);
|
|
250
257
|
};
|
|
251
|
-
return
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
enabled: _ctx.control.enabled,
|
|
264
|
-
config: _ctx.appliedOptions,
|
|
265
|
-
onChange: _ctx.handleChange,
|
|
266
|
-
onFocus: _ctx.onFocus,
|
|
267
|
-
onBlur: _ctx.onBlur
|
|
268
|
-
}), null, 16, ["modelValue", "enabled", "config", "onChange", "onFocus", "onBlur"]);
|
|
269
|
-
}
|
|
270
|
-
const MarkdownControlRenderer = /* @__PURE__ */ _export_sfc(controlRenderer$6, [["render", _sfc_render$5]]);
|
|
271
|
-
const controlRenderer$5 = vue.defineComponent({
|
|
272
|
-
name: "NumberControlRenderer",
|
|
273
|
-
components: {
|
|
274
|
-
ControlWrapper: ui.ControlWrapper
|
|
275
|
-
},
|
|
276
|
-
props: {
|
|
277
|
-
...vue$1.rendererProps()
|
|
278
|
-
},
|
|
279
|
-
setup(props) {
|
|
280
|
-
return useVanillaControlCustom(
|
|
281
|
-
vue$1.useJsonFormsControl(props),
|
|
282
|
-
(target) => target.value === "" ? void 0 : Number(target.value)
|
|
283
|
-
);
|
|
284
|
-
},
|
|
285
|
-
computed: {
|
|
286
|
-
step() {
|
|
287
|
-
const options = this.appliedOptions;
|
|
288
|
-
return options.step ?? 0.1;
|
|
289
|
-
},
|
|
290
|
-
inputClass() {
|
|
291
|
-
return inputClasses(
|
|
292
|
-
this.styles,
|
|
293
|
-
this.isFocused,
|
|
294
|
-
this.isTouched,
|
|
295
|
-
this.controlWrapper?.errors
|
|
296
|
-
);
|
|
297
|
-
}
|
|
298
|
-
}
|
|
299
|
-
});
|
|
300
|
-
const entry$5 = {
|
|
301
|
-
renderer: controlRenderer$5,
|
|
302
|
-
tester: core.rankWith(1, core.isNumberControl)
|
|
303
|
-
};
|
|
304
|
-
const _hoisted_1$8 = ["id", "step", "value", "disabled", "autofocus", "placeholder"];
|
|
305
|
-
function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
|
|
306
|
-
const _component_control_wrapper = vue.resolveComponent("control-wrapper");
|
|
307
|
-
return vue.openBlock(), vue.createBlock(_component_control_wrapper, vue.mergeProps(_ctx.controlWrapper, { styles: _ctx.styles }), {
|
|
308
|
-
default: vue.withCtx(() => [
|
|
309
|
-
vue.createElementVNode("input", {
|
|
310
|
-
id: _ctx.control.id + "-input",
|
|
311
|
-
autocomplete: "off",
|
|
312
|
-
type: "number",
|
|
313
|
-
step: _ctx.step,
|
|
314
|
-
class: vue.normalizeClass(_ctx.inputClass),
|
|
315
|
-
value: _ctx.control.data,
|
|
316
|
-
disabled: !_ctx.control.enabled,
|
|
317
|
-
autofocus: _ctx.appliedOptions.focus,
|
|
318
|
-
placeholder: _ctx.appliedOptions.placeholder,
|
|
319
|
-
onChange: _cache[0] || (_cache[0] = (...args) => _ctx.onChange && _ctx.onChange(...args)),
|
|
320
|
-
onFocus: _cache[1] || (_cache[1] = (...args) => _ctx.onFocus && _ctx.onFocus(...args)),
|
|
321
|
-
onBlur: _cache[2] || (_cache[2] = (...args) => _ctx.onBlur && _ctx.onBlur(...args))
|
|
322
|
-
}, null, 42, _hoisted_1$8)
|
|
323
|
-
]),
|
|
324
|
-
_: 1
|
|
325
|
-
}, 16, ["styles"]);
|
|
326
|
-
}
|
|
327
|
-
const NumberControlRenderer = /* @__PURE__ */ _export_sfc(controlRenderer$5, [["render", _sfc_render$4]]);
|
|
328
|
-
const controlRenderer$4 = vue.defineComponent({
|
|
329
|
-
name: "StringControlRenderer",
|
|
330
|
-
components: {
|
|
331
|
-
ControlWrapper: ui.ControlWrapper
|
|
332
|
-
},
|
|
333
|
-
props: {
|
|
334
|
-
...vue$1.rendererProps()
|
|
335
|
-
},
|
|
336
|
-
setup(props) {
|
|
337
|
-
return useVanillaControlCustom(
|
|
338
|
-
vue$1.useJsonFormsControl(props),
|
|
339
|
-
(target) => target.value ?? void 0
|
|
340
|
-
);
|
|
341
|
-
},
|
|
342
|
-
computed: {
|
|
343
|
-
inputClass() {
|
|
344
|
-
return inputClasses(
|
|
345
|
-
this.styles,
|
|
346
|
-
this.isFocused,
|
|
347
|
-
this.isTouched,
|
|
348
|
-
this.controlWrapper?.errors
|
|
349
|
-
);
|
|
350
|
-
}
|
|
351
|
-
}
|
|
352
|
-
});
|
|
353
|
-
const entry$4 = {
|
|
354
|
-
renderer: controlRenderer$4,
|
|
355
|
-
tester: core.rankWith(1, isStringFormat)
|
|
356
|
-
};
|
|
357
|
-
const _hoisted_1$7 = ["id", "value", "disabled", "autofocus", "placeholder"];
|
|
358
|
-
function _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) {
|
|
359
|
-
const _component_ControlWrapper = vue.resolveComponent("ControlWrapper");
|
|
360
|
-
return vue.openBlock(), vue.createBlock(_component_ControlWrapper, vue.mergeProps(_ctx.controlWrapper, { styles: _ctx.styles }), {
|
|
361
|
-
default: vue.withCtx(() => [
|
|
362
|
-
vue.createElementVNode("input", {
|
|
363
|
-
id: _ctx.control.id + "-input",
|
|
364
|
-
type: "text",
|
|
365
|
-
class: vue.normalizeClass(_ctx.inputClass),
|
|
366
|
-
value: _ctx.control.data,
|
|
367
|
-
disabled: !_ctx.control.enabled,
|
|
368
|
-
autofocus: _ctx.appliedOptions.focus,
|
|
369
|
-
placeholder: _ctx.appliedOptions.placeholder,
|
|
370
|
-
autocomplete: "off",
|
|
371
|
-
onChange: _cache[0] || (_cache[0] = (...args) => _ctx.onChange && _ctx.onChange(...args)),
|
|
372
|
-
onFocus: _cache[1] || (_cache[1] = (...args) => _ctx.onFocus && _ctx.onFocus(...args)),
|
|
373
|
-
onBlur: _cache[2] || (_cache[2] = (...args) => _ctx.onBlur && _ctx.onBlur(...args))
|
|
374
|
-
}, null, 42, _hoisted_1$7)
|
|
375
|
-
]),
|
|
376
|
-
_: 1
|
|
377
|
-
}, 16, ["styles"]);
|
|
378
|
-
}
|
|
379
|
-
const StringControlRenderer = /* @__PURE__ */ _export_sfc(controlRenderer$4, [["render", _sfc_render$3]]);
|
|
380
|
-
const controlRenderer$3 = vue.defineComponent({
|
|
381
|
-
name: "TextAreaControlRenderer",
|
|
382
|
-
components: {
|
|
383
|
-
ControlWrapper: ui.ControlWrapper
|
|
384
|
-
},
|
|
385
|
-
props: {
|
|
386
|
-
...vue$1.rendererProps()
|
|
387
|
-
},
|
|
388
|
-
setup(props) {
|
|
389
|
-
return useVanillaControlCustom(
|
|
390
|
-
vue$1.useJsonFormsControl(props),
|
|
391
|
-
(target) => target.value ?? void 0
|
|
392
|
-
);
|
|
393
|
-
}
|
|
394
|
-
});
|
|
395
|
-
const entry$3 = {
|
|
396
|
-
renderer: controlRenderer$3,
|
|
397
|
-
tester: core.rankWith(1, isTextAreaControl)
|
|
398
|
-
};
|
|
399
|
-
const controlRenderer$2 = vue.defineComponent({
|
|
400
|
-
name: "AutocompleteControlRenderer",
|
|
401
|
-
components: {
|
|
402
|
-
Autocomplete: ui.Autocomplete
|
|
403
|
-
},
|
|
404
|
-
props: {
|
|
405
|
-
...vue$1.rendererProps()
|
|
406
|
-
},
|
|
407
|
-
setup(props) {
|
|
408
|
-
const control = useVanillaControlCustom(
|
|
409
|
-
vue$1.useJsonFormsControl(props),
|
|
410
|
-
(target) => target.value ?? void 0
|
|
411
|
-
);
|
|
412
|
-
const field = control.appliedOptions.value.field;
|
|
413
|
-
const handleChange = (result) => {
|
|
414
|
-
const { path } = control.control.value;
|
|
415
|
-
control.handleChange(path, result);
|
|
258
|
+
return (_ctx, _cache) => {
|
|
259
|
+
return vue.openBlock(), vue.createBlock(vue.unref(ui.Autocomplete), vue.mergeProps(vue.unref(controlWrapper), {
|
|
260
|
+
modelValue: vue.unref(control).data,
|
|
261
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => vue.unref(control).data = $event),
|
|
262
|
+
enabled: vue.unref(control).enabled,
|
|
263
|
+
config: vue.unref(appliedOptions),
|
|
264
|
+
"label-key": field.value?.label,
|
|
265
|
+
"value-key": field.value?.id,
|
|
266
|
+
onChange: handleChange,
|
|
267
|
+
onFocus: vue.unref(onFocus),
|
|
268
|
+
onBlur: vue.unref(onBlur)
|
|
269
|
+
}), null, 16, ["modelValue", "enabled", "config", "label-key", "value-key", "onFocus", "onBlur"]);
|
|
416
270
|
};
|
|
417
|
-
return { ...control, field, handleChange };
|
|
418
271
|
}
|
|
419
272
|
});
|
|
420
|
-
const entry$2 = {
|
|
421
|
-
renderer: controlRenderer$2,
|
|
422
|
-
tester: core.rankWith(1, isAutoCompleteControl)
|
|
423
|
-
};
|
|
424
|
-
function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) {
|
|
425
|
-
const _component_Autocomplete = vue.resolveComponent("Autocomplete");
|
|
426
|
-
return vue.openBlock(), vue.createBlock(_component_Autocomplete, vue.mergeProps(_ctx.controlWrapper, {
|
|
427
|
-
modelValue: _ctx.control.data,
|
|
428
|
-
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.control.data = $event),
|
|
429
|
-
enabled: _ctx.control.enabled,
|
|
430
|
-
config: _ctx.appliedOptions,
|
|
431
|
-
"label-key": _ctx.field?.label,
|
|
432
|
-
"value-key": _ctx.field?.id,
|
|
433
|
-
onChange: _ctx.handleChange,
|
|
434
|
-
onFocus: _ctx.onFocus,
|
|
435
|
-
onBlur: _ctx.onBlur
|
|
436
|
-
}), null, 16, ["modelValue", "enabled", "config", "label-key", "value-key", "onChange", "onFocus", "onBlur"]);
|
|
437
|
-
}
|
|
438
|
-
const AutocompleteControlRenderer = /* @__PURE__ */ _export_sfc(controlRenderer$2, [["render", _sfc_render$2]]);
|
|
439
273
|
const controlRenderers = [
|
|
440
274
|
// First custom renderers on format
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
275
|
+
{
|
|
276
|
+
tester: core.rankWith(10, isMarkdownControl),
|
|
277
|
+
renderer: _sfc_main$e
|
|
278
|
+
},
|
|
279
|
+
{
|
|
280
|
+
tester: core.rankWith(10, isAutoCompleteControl),
|
|
281
|
+
renderer: _sfc_main$a
|
|
282
|
+
},
|
|
283
|
+
{
|
|
284
|
+
tester: core.rankWith(10, isTextAreaControl),
|
|
285
|
+
renderer: _sfc_main$b
|
|
286
|
+
},
|
|
451
287
|
// Renderers based on type if no format is provided
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
288
|
+
{ tester: core.rankWith(10, isStringFormat), renderer: _sfc_main$c },
|
|
289
|
+
{ tester: core.rankWith(10, core.isNumberControl), renderer: _sfc_main$d },
|
|
290
|
+
{
|
|
291
|
+
tester: core.rankWith(10, core.isIntegerControl),
|
|
292
|
+
renderer: _sfc_main$f
|
|
293
|
+
},
|
|
294
|
+
{ tester: core.rankWith(10, core.isBooleanControl), renderer: _sfc_main$g }
|
|
455
295
|
];
|
|
456
296
|
const actionMap = {
|
|
457
297
|
edit: (router, action) => ({
|
|
@@ -486,255 +326,233 @@ class FormState {
|
|
|
486
326
|
const useFormState = (form) => {
|
|
487
327
|
return FormState.getInstance();
|
|
488
328
|
};
|
|
489
|
-
const
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
},
|
|
498
|
-
setup(
|
|
329
|
+
const _hoisted_1$8 = ["title"];
|
|
330
|
+
const _hoisted_2$2 = { key: 0 };
|
|
331
|
+
const _hoisted_3$1 = {
|
|
332
|
+
key: 1,
|
|
333
|
+
class: "list-row"
|
|
334
|
+
};
|
|
335
|
+
const _sfc_main$9 = /* @__PURE__ */ vue.defineComponent({
|
|
336
|
+
__name: "ArrayRenderer",
|
|
337
|
+
props: { ...vue$1.rendererProps() },
|
|
338
|
+
setup(__props) {
|
|
339
|
+
const props = __props;
|
|
499
340
|
const vanillaArrayControl = vueVanilla.useVanillaArrayControl(
|
|
500
341
|
vue$1.useJsonFormsArrayControl(props)
|
|
501
342
|
);
|
|
502
|
-
const control = vanillaArrayControl
|
|
503
|
-
if (!control.data || control.data.length < 1) {
|
|
343
|
+
const { styles, childUiSchema, control, appliedOptions } = vanillaArrayControl;
|
|
344
|
+
if (!control.value.data || control.value.data.length < 1) {
|
|
504
345
|
vanillaArrayControl.addItem(
|
|
505
|
-
control.path,
|
|
506
|
-
core.createDefaultValue(control.schema, control.rootSchema)
|
|
346
|
+
control.value.path,
|
|
347
|
+
core.createDefaultValue(control.value.schema, control.value.rootSchema)
|
|
507
348
|
)();
|
|
508
349
|
}
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
const actions = this.uischema.options?.actions ?? [];
|
|
520
|
-
return mapArrayActions(vueRouter.useRouter(), actions);
|
|
521
|
-
},
|
|
522
|
-
showDelete() {
|
|
523
|
-
return this.control.data?.length > 1;
|
|
524
|
-
},
|
|
525
|
-
translations() {
|
|
526
|
-
const jsonforms = vue.inject("jsonforms");
|
|
527
|
-
return core.getArrayTranslations(
|
|
528
|
-
jsonforms?.i18n?.translate ?? core.defaultJsonFormsI18nState.translate,
|
|
529
|
-
core.arrayDefaultTranslations,
|
|
530
|
-
this.control.i18nKeyPrefix,
|
|
531
|
-
this.control.label
|
|
532
|
-
);
|
|
533
|
-
},
|
|
534
|
-
labelKey() {
|
|
535
|
-
const key = this.uischema?.options?.labelKey;
|
|
350
|
+
const noData = vue.computed(
|
|
351
|
+
() => !control.value.data || control.value.data.length === 0
|
|
352
|
+
);
|
|
353
|
+
const actions = vue.computed(() => {
|
|
354
|
+
const actions2 = props.uischema.options?.actions ?? [];
|
|
355
|
+
return mapArrayActions(vueRouter.useRouter(), actions2);
|
|
356
|
+
});
|
|
357
|
+
const showDelete = vue.computed(() => control.value.data?.length > 1);
|
|
358
|
+
vue.computed(() => {
|
|
359
|
+
const key = control.value.uischema?.options?.labelKey;
|
|
536
360
|
if (!key) return null;
|
|
537
361
|
return key;
|
|
538
|
-
}
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
deleteButtonClick(index) {
|
|
544
|
-
this.removeItems(this.control.path, [index])();
|
|
545
|
-
},
|
|
546
|
-
dispatchEvent: (event, data) => {
|
|
362
|
+
});
|
|
363
|
+
const deleteButtonClick = (index) => {
|
|
364
|
+
vanillaArrayControl.removeItems(control.value.path, [index])();
|
|
365
|
+
};
|
|
366
|
+
const dispatchEvent = (event, data) => {
|
|
547
367
|
const form_id = "";
|
|
548
368
|
useFormState().dispatchEvent(form_id, event, data);
|
|
549
|
-
}
|
|
550
|
-
addButtonClick() {
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
core.createDefaultValue(
|
|
369
|
+
};
|
|
370
|
+
const addButtonClick = () => {
|
|
371
|
+
vanillaArrayControl.addItem(
|
|
372
|
+
control.value.path,
|
|
373
|
+
core.createDefaultValue(control.value.schema, control.value.rootSchema)
|
|
554
374
|
)();
|
|
555
|
-
}
|
|
375
|
+
};
|
|
376
|
+
const showActions = vue.computed(() => {
|
|
377
|
+
return !appliedOptions.value.hideActions;
|
|
378
|
+
});
|
|
379
|
+
return (_ctx, _cache) => {
|
|
380
|
+
return vue.openBlock(), vue.createElementBlock("div", {
|
|
381
|
+
title: vue.unref(control).label
|
|
382
|
+
}, [
|
|
383
|
+
vue.createElementVNode("div", {
|
|
384
|
+
class: vue.normalizeClass([
|
|
385
|
+
"flex gap-2",
|
|
386
|
+
vue.unref(appliedOptions)?.layout === "row" ? "flex-row items-center" : "flex-col"
|
|
387
|
+
])
|
|
388
|
+
}, [
|
|
389
|
+
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(control).data, (element, index) => {
|
|
390
|
+
return vue.openBlock(), vue.createElementBlock("div", {
|
|
391
|
+
key: `${vue.unref(control).path}-${index}`,
|
|
392
|
+
class: "flex-1"
|
|
393
|
+
}, [
|
|
394
|
+
vue.createElementVNode("div", {
|
|
395
|
+
class: vue.normalizeClass([
|
|
396
|
+
"flex gap-2",
|
|
397
|
+
vue.unref(appliedOptions)?.layout === "row" ? "flex-col" : "flex-row items-center"
|
|
398
|
+
])
|
|
399
|
+
}, [
|
|
400
|
+
vue.createElementVNode("div", null, [
|
|
401
|
+
vue.createVNode(vue.unref(vue$1.DispatchRenderer), {
|
|
402
|
+
schema: vue.unref(control).schema,
|
|
403
|
+
uischema: vue.unref(childUiSchema),
|
|
404
|
+
path: vue.unref(core.composePaths)(vue.unref(control).path, `${index}`),
|
|
405
|
+
enabled: vue.unref(control).enabled,
|
|
406
|
+
renderers: vue.unref(control).renderers,
|
|
407
|
+
cells: vue.unref(control).cells
|
|
408
|
+
}, null, 8, ["schema", "uischema", "path", "enabled", "renderers", "cells"])
|
|
409
|
+
]),
|
|
410
|
+
showActions.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$2, [
|
|
411
|
+
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(actions.value, (action) => {
|
|
412
|
+
return vue.openBlock(), vue.createElementBlock(vue.Fragment, null, [
|
|
413
|
+
action.show(element) ? (vue.openBlock(), vue.createBlock(vue.unref(ui.Btn), {
|
|
414
|
+
key: action.label,
|
|
415
|
+
icon: action.icon,
|
|
416
|
+
outline: true,
|
|
417
|
+
onClick: ($event) => dispatchEvent(action.label, element)
|
|
418
|
+
}, null, 8, ["icon", "onClick"])) : vue.createCommentVNode("", true)
|
|
419
|
+
], 64);
|
|
420
|
+
}), 256)),
|
|
421
|
+
showDelete.value ? (vue.openBlock(), vue.createBlock(vue.unref(ui.Btn), {
|
|
422
|
+
key: 0,
|
|
423
|
+
icon: vue.unref(ui.IconEnum).Delete,
|
|
424
|
+
outline: true,
|
|
425
|
+
onClick: ($event) => deleteButtonClick(index)
|
|
426
|
+
}, null, 8, ["icon", "onClick"])) : vue.createCommentVNode("", true)
|
|
427
|
+
])) : vue.createCommentVNode("", true)
|
|
428
|
+
], 2)
|
|
429
|
+
]);
|
|
430
|
+
}), 128)),
|
|
431
|
+
noData.value ? (vue.openBlock(), vue.createElementBlock("div", {
|
|
432
|
+
key: 0,
|
|
433
|
+
class: vue.normalizeClass(["list-row", vue.unref(styles).arrayList.noData])
|
|
434
|
+
}, " No data ", 2)) : vue.createCommentVNode("", true),
|
|
435
|
+
showActions.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$1, [
|
|
436
|
+
vue.createVNode(vue.unref(ui.Btn), {
|
|
437
|
+
icon: vue.unref(ui.IconEnum).Plus,
|
|
438
|
+
outline: true,
|
|
439
|
+
onClick: addButtonClick
|
|
440
|
+
}, {
|
|
441
|
+
default: vue.withCtx(() => [..._cache[0] || (_cache[0] = [
|
|
442
|
+
vue.createTextVNode(" Add ", -1)
|
|
443
|
+
])]),
|
|
444
|
+
_: 1
|
|
445
|
+
}, 8, ["icon"])
|
|
446
|
+
])) : vue.createCommentVNode("", true)
|
|
447
|
+
], 2)
|
|
448
|
+
], 8, _hoisted_1$8);
|
|
449
|
+
};
|
|
556
450
|
}
|
|
557
451
|
});
|
|
558
|
-
const
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
const
|
|
565
|
-
const
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
vue.createVNode(_component_dispatch_renderer, {
|
|
593
|
-
schema: _ctx.control.schema,
|
|
594
|
-
uischema: _ctx.childUiSchema,
|
|
595
|
-
path: _ctx.composePaths(_ctx.control.path, `${index}`),
|
|
596
|
-
enabled: _ctx.control.enabled,
|
|
597
|
-
renderers: _ctx.control.renderers,
|
|
598
|
-
cells: _ctx.control.cells
|
|
599
|
-
}, null, 8, ["schema", "uischema", "path", "enabled", "renderers", "cells"]),
|
|
600
|
-
vue.createElementVNode("div", _hoisted_3$2, [
|
|
601
|
-
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.actions, (action) => {
|
|
602
|
-
return vue.openBlock(), vue.createElementBlock(vue.Fragment, null, [
|
|
603
|
-
action.show(element) ? (vue.openBlock(), vue.createBlock(_component_Btn, {
|
|
604
|
-
key: action.label,
|
|
605
|
-
icon: action.icon,
|
|
606
|
-
outline: true,
|
|
607
|
-
onClick: ($event) => _ctx.dispatchEvent(action.label, element)
|
|
608
|
-
}, null, 8, ["icon", "onClick"])) : vue.createCommentVNode("", true)
|
|
609
|
-
], 64);
|
|
610
|
-
}), 256)),
|
|
611
|
-
_ctx.showDelete ? (vue.openBlock(), vue.createBlock(_component_Btn, {
|
|
612
|
-
key: 0,
|
|
613
|
-
icon: _ctx.IconEnum.Delete,
|
|
614
|
-
outline: true,
|
|
615
|
-
onClick: ($event) => _ctx.deleteButtonClick(index)
|
|
616
|
-
}, null, 8, ["icon", "onClick"])) : vue.createCommentVNode("", true)
|
|
617
|
-
])
|
|
618
|
-
])
|
|
452
|
+
const arrayRenderers = [
|
|
453
|
+
{
|
|
454
|
+
tester: core.rankWith(12, isArrayRenderer),
|
|
455
|
+
renderer: _sfc_main$9
|
|
456
|
+
}
|
|
457
|
+
];
|
|
458
|
+
const _hoisted_1$7 = { class: "flex flex-col gap-4" };
|
|
459
|
+
const _sfc_main$8 = /* @__PURE__ */ vue.defineComponent({
|
|
460
|
+
__name: "CollapseLayout",
|
|
461
|
+
props: { ...vue$1.rendererProps() },
|
|
462
|
+
setup(__props) {
|
|
463
|
+
const props = __props;
|
|
464
|
+
const jsonLayout = vue$1.useJsonFormsLayout(props);
|
|
465
|
+
const { layout, renderers, cells } = jsonLayout;
|
|
466
|
+
const title = vue.computed(() => {
|
|
467
|
+
const { titleKey, title: title2 } = layout?.value.uischema?.options ?? {};
|
|
468
|
+
if (title2) return title2;
|
|
469
|
+
if (titleKey) return layout?.value.data[titleKey];
|
|
470
|
+
return layout?.value.uischema?.options?.titleKey;
|
|
471
|
+
});
|
|
472
|
+
return (_ctx, _cache) => {
|
|
473
|
+
return vue.openBlock(), vue.createBlock(vue.unref(ui.Collapse), { title: title.value }, {
|
|
474
|
+
default: vue.withCtx(() => [
|
|
475
|
+
vue.createElementVNode("div", _hoisted_1$7, [
|
|
476
|
+
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(layout).uischema.elements, (element, index) => {
|
|
477
|
+
return vue.openBlock(), vue.createBlock(vue.unref(vue$1.DispatchRenderer), {
|
|
478
|
+
key: index,
|
|
479
|
+
schema: vue.unref(layout).schema,
|
|
480
|
+
uischema: element,
|
|
481
|
+
path: vue.unref(layout).path,
|
|
482
|
+
renderers: vue.unref(renderers),
|
|
483
|
+
cells: vue.unref(cells)
|
|
484
|
+
}, null, 8, ["schema", "uischema", "path", "renderers", "cells"]);
|
|
485
|
+
}), 128))
|
|
619
486
|
])
|
|
620
|
-
])
|
|
621
|
-
}), 128))
|
|
622
|
-
]),
|
|
623
|
-
vue.createElementVNode("div", _hoisted_4$1, [
|
|
624
|
-
vue.createVNode(_component_Btn, {
|
|
625
|
-
icon: _ctx.IconEnum.Plus,
|
|
626
|
-
outline: true,
|
|
627
|
-
onClick: _ctx.addButtonClick
|
|
628
|
-
}, {
|
|
629
|
-
default: vue.withCtx(() => [..._cache[0] || (_cache[0] = [
|
|
630
|
-
vue.createTextVNode(" Add ", -1)
|
|
631
|
-
])]),
|
|
487
|
+
]),
|
|
632
488
|
_: 1
|
|
633
|
-
}, 8, ["
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
}
|
|
641
|
-
|
|
642
|
-
const
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
489
|
+
}, 8, ["title"]);
|
|
490
|
+
};
|
|
491
|
+
}
|
|
492
|
+
});
|
|
493
|
+
const _hoisted_1$6 = { class: "flex flex-row gap-4 items-center" };
|
|
494
|
+
const _sfc_main$7 = /* @__PURE__ */ vue.defineComponent({
|
|
495
|
+
__name: "HorizontalLayout",
|
|
496
|
+
props: { ...vue$1.rendererProps() },
|
|
497
|
+
setup(__props) {
|
|
498
|
+
const props = __props;
|
|
499
|
+
const { layout, renderers, cells } = vue$1.useJsonFormsLayout(props);
|
|
500
|
+
return (_ctx, _cache) => {
|
|
501
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$6, [
|
|
502
|
+
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(layout).uischema.elements, (element, index) => {
|
|
503
|
+
return vue.openBlock(), vue.createBlock(vue.unref(vue$1.DispatchRenderer), {
|
|
504
|
+
key: index,
|
|
505
|
+
schema: vue.unref(layout).schema,
|
|
506
|
+
uischema: element,
|
|
507
|
+
path: vue.unref(layout).path,
|
|
508
|
+
renderers: vue.unref(renderers),
|
|
509
|
+
cells: vue.unref(cells)
|
|
510
|
+
}, null, 8, ["schema", "uischema", "path", "renderers", "cells"]);
|
|
511
|
+
}), 128))
|
|
512
|
+
]);
|
|
513
|
+
};
|
|
514
|
+
}
|
|
515
|
+
});
|
|
516
|
+
const _hoisted_1$5 = { class: "flex flex-col gap-4" };
|
|
517
|
+
const _sfc_main$6 = /* @__PURE__ */ vue.defineComponent({
|
|
518
|
+
__name: "VerticalLayout",
|
|
519
|
+
props: { ...vue$1.rendererProps() },
|
|
520
|
+
setup(__props) {
|
|
521
|
+
const props = __props;
|
|
522
|
+
const { layout, renderers, cells } = vue$1.useJsonFormsLayout(props);
|
|
523
|
+
return (_ctx, _cache) => {
|
|
524
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$5, [
|
|
525
|
+
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(layout).uischema.elements, (element, index) => {
|
|
526
|
+
return vue.openBlock(), vue.createBlock(vue.unref(vue$1.DispatchRenderer), {
|
|
527
|
+
key: index,
|
|
528
|
+
schema: vue.unref(layout).schema,
|
|
529
|
+
uischema: element,
|
|
530
|
+
path: vue.unref(layout).path,
|
|
531
|
+
renderers: vue.unref(renderers),
|
|
532
|
+
cells: vue.unref(cells)
|
|
533
|
+
}, null, 8, ["schema", "uischema", "path", "renderers", "cells"]);
|
|
534
|
+
}), 128))
|
|
535
|
+
]);
|
|
536
|
+
};
|
|
675
537
|
}
|
|
676
538
|
});
|
|
677
|
-
const entry = {
|
|
678
|
-
renderer: controlRenderer,
|
|
679
|
-
tester: core.rankWith(2, isFixedArray)
|
|
680
|
-
};
|
|
681
|
-
const _hoisted_1$5 = { class: "fieldset" };
|
|
682
|
-
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
683
|
-
const _component_dispatch_renderer = vue.resolveComponent("dispatch-renderer");
|
|
684
|
-
return _ctx.control.visible ? (vue.openBlock(), vue.createElementBlock("fieldset", {
|
|
685
|
-
key: 0,
|
|
686
|
-
class: vue.normalizeClass(_ctx.styles.arrayList.root)
|
|
687
|
-
}, [
|
|
688
|
-
!_ctx.labelKey ? (vue.openBlock(), vue.createElementBlock("legend", {
|
|
689
|
-
key: 0,
|
|
690
|
-
class: vue.normalizeClass(_ctx.styles.arrayList.legend)
|
|
691
|
-
}, [
|
|
692
|
-
vue.createElementVNode("label", {
|
|
693
|
-
class: vue.normalizeClass(_ctx.styles.arrayList.label)
|
|
694
|
-
}, vue.toDisplayString(_ctx.control.label), 3)
|
|
695
|
-
], 2)) : vue.createCommentVNode("", true),
|
|
696
|
-
vue.createElementVNode("div", {
|
|
697
|
-
class: vue.normalizeClass(_ctx.styles.fixedArrayList.root)
|
|
698
|
-
}, [
|
|
699
|
-
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.control.data, (element, index) => {
|
|
700
|
-
return vue.openBlock(), vue.createElementBlock("div", {
|
|
701
|
-
key: `${_ctx.control.path}-${index}`,
|
|
702
|
-
class: vue.normalizeClass(_ctx.styles.fixedArrayList.item)
|
|
703
|
-
}, [
|
|
704
|
-
vue.createElementVNode("fieldset", _hoisted_1$5, [
|
|
705
|
-
_ctx.labelKey ? (vue.openBlock(), vue.createElementBlock("legend", {
|
|
706
|
-
key: 0,
|
|
707
|
-
class: vue.normalizeClass(_ctx.styles.arrayList.legend)
|
|
708
|
-
}, vue.toDisplayString(element[_ctx.labelKey]?.toLowerCase()), 3)) : vue.createCommentVNode("", true),
|
|
709
|
-
vue.createVNode(_component_dispatch_renderer, {
|
|
710
|
-
schema: _ctx.control.schema,
|
|
711
|
-
uischema: _ctx.childUiSchema,
|
|
712
|
-
path: _ctx.composePaths(_ctx.control.path, `${index}`),
|
|
713
|
-
enabled: _ctx.control.enabled,
|
|
714
|
-
renderers: _ctx.control.renderers,
|
|
715
|
-
cells: _ctx.control.cells
|
|
716
|
-
}, null, 8, ["schema", "uischema", "path", "enabled", "renderers", "cells"])
|
|
717
|
-
])
|
|
718
|
-
], 2);
|
|
719
|
-
}), 128))
|
|
720
|
-
], 2),
|
|
721
|
-
_ctx.noData ? (vue.openBlock(), vue.createElementBlock("div", {
|
|
722
|
-
key: 1,
|
|
723
|
-
class: vue.normalizeClass(_ctx.styles.arrayList.noData)
|
|
724
|
-
}, vue.toDisplayString(_ctx.translations.noDataMessage), 3)) : vue.createCommentVNode("", true)
|
|
725
|
-
], 2)) : vue.createCommentVNode("", true);
|
|
726
|
-
}
|
|
727
|
-
const FixedArrayRenderer = /* @__PURE__ */ _export_sfc(controlRenderer, [["render", _sfc_render]]);
|
|
728
|
-
const arrayRenderers = [
|
|
729
|
-
entry,
|
|
730
|
-
entry$1
|
|
731
|
-
];
|
|
732
539
|
const layoutRenderers = [
|
|
733
|
-
|
|
540
|
+
{
|
|
541
|
+
tester: core.rankWith(10, core.uiTypeIs(jsonFormsCore.LayoutTypes.VerticalLayout)),
|
|
542
|
+
renderer: _sfc_main$6
|
|
543
|
+
},
|
|
544
|
+
{
|
|
545
|
+
tester: core.rankWith(10, core.uiTypeIs(jsonFormsCore.LayoutTypes.HorizontalLayout)),
|
|
546
|
+
renderer: _sfc_main$7
|
|
547
|
+
},
|
|
548
|
+
{
|
|
549
|
+
tester: core.rankWith(10, core.uiTypeIs(jsonFormsCore.LayoutTypes.CollapseLayout)),
|
|
550
|
+
renderer: _sfc_main$8
|
|
551
|
+
}
|
|
734
552
|
];
|
|
735
553
|
const _hoisted_1$4 = { class: "" };
|
|
736
554
|
const _hoisted_2$1 = { class: "flex gap-2 items-center mb-2" };
|
|
737
|
-
const _hoisted_3
|
|
555
|
+
const _hoisted_3 = { class: "flex gap-2" };
|
|
738
556
|
const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
739
557
|
__name: "table-filter",
|
|
740
558
|
props: {
|
|
@@ -778,7 +596,7 @@ const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
|
778
596
|
_: 1
|
|
779
597
|
})) : vue.createCommentVNode("", true)
|
|
780
598
|
]),
|
|
781
|
-
vue.createElementVNode("div", _hoisted_3
|
|
599
|
+
vue.createElementVNode("div", _hoisted_3, [
|
|
782
600
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(__props.filters, (filter) => {
|
|
783
601
|
return vue.openBlock(), vue.createBlock(vue.unref(ui.BtnBadge), {
|
|
784
602
|
key: filter.key,
|
|
@@ -1108,12 +926,12 @@ const customRenderers = [
|
|
|
1108
926
|
const customRenderesName = customRenderers.map((c) => {
|
|
1109
927
|
return c.renderer.name;
|
|
1110
928
|
});
|
|
1111
|
-
|
|
929
|
+
vueVanilla.vanillaRenderers.filter(
|
|
1112
930
|
(v) => !customRenderesName.includes(v.renderer.name)
|
|
1113
931
|
);
|
|
1114
932
|
const tailwindRenderers = [
|
|
1115
|
-
...
|
|
1116
|
-
...
|
|
933
|
+
...vueVanilla.vanillaRenderers,
|
|
934
|
+
...customRenderers
|
|
1117
935
|
];
|
|
1118
936
|
const _hoisted_1$1 = ["id"];
|
|
1119
937
|
const _sfc_main$2 = /* @__PURE__ */ vue.defineComponent({
|
|
@@ -1129,7 +947,7 @@ const _sfc_main$2 = /* @__PURE__ */ vue.defineComponent({
|
|
|
1129
947
|
"modelValue": {},
|
|
1130
948
|
"modelModifiers": {}
|
|
1131
949
|
}),
|
|
1132
|
-
emits: /* @__PURE__ */ vue.mergeModels(["valid", "change", "submit"], ["update:modelValue"]),
|
|
950
|
+
emits: /* @__PURE__ */ vue.mergeModels(["valid", "change", "submit", "errors"], ["update:modelValue"]),
|
|
1133
951
|
setup(__props, { emit: __emit }) {
|
|
1134
952
|
const properties = __props;
|
|
1135
953
|
const _JSON_FORM_ID = `json-form-${Date.now()}`;
|
|
@@ -1142,6 +960,8 @@ const _sfc_main$2 = /* @__PURE__ */ vue.defineComponent({
|
|
|
1142
960
|
valid.value = event.errors.length === 0;
|
|
1143
961
|
emits("valid", valid.value);
|
|
1144
962
|
emits("change", event.data);
|
|
963
|
+
emits("errors", event.errors);
|
|
964
|
+
toolsVue.Debugger.debug(event.errors);
|
|
1145
965
|
};
|
|
1146
966
|
const onSubmit = (event) => {
|
|
1147
967
|
event.preventDefault();
|
|
@@ -1182,10 +1002,8 @@ const _sfc_main$2 = /* @__PURE__ */ vue.defineComponent({
|
|
|
1182
1002
|
};
|
|
1183
1003
|
}
|
|
1184
1004
|
});
|
|
1185
|
-
const _hoisted_1 = { class: "card
|
|
1186
|
-
const _hoisted_2 = { class: "
|
|
1187
|
-
const _hoisted_3 = { class: "card-title" };
|
|
1188
|
-
const _hoisted_4 = { class: "card-actions flex justify-end" };
|
|
1005
|
+
const _hoisted_1 = { class: "card-actions flex justify-between" };
|
|
1006
|
+
const _hoisted_2 = { class: "flex justify-end gap-2" };
|
|
1189
1007
|
const _sfc_main$1 = /* @__PURE__ */ vue.defineComponent({
|
|
1190
1008
|
__name: "form-with-actions.component",
|
|
1191
1009
|
props: /* @__PURE__ */ vue.mergeModels({
|
|
@@ -1202,23 +1020,33 @@ const _sfc_main$1 = /* @__PURE__ */ vue.defineComponent({
|
|
|
1202
1020
|
const properties = __props;
|
|
1203
1021
|
const valid = vue.ref(false);
|
|
1204
1022
|
const formData = vue.useModel(__props, "modelValue");
|
|
1023
|
+
const submitted = vue.ref(false);
|
|
1205
1024
|
const store = new FormStore(properties.formSchema);
|
|
1206
1025
|
const emits = __emit;
|
|
1207
1026
|
const save = () => {
|
|
1027
|
+
submitted.value = true;
|
|
1028
|
+
if (!valid.value) {
|
|
1029
|
+
return;
|
|
1030
|
+
}
|
|
1208
1031
|
store.save(formData.value.id, formData.value).then(() => {
|
|
1209
1032
|
emits("success");
|
|
1210
1033
|
});
|
|
1211
1034
|
};
|
|
1212
1035
|
const clear = () => {
|
|
1213
1036
|
formData.value = { id: null };
|
|
1037
|
+
submitted.value = false;
|
|
1214
1038
|
};
|
|
1215
1039
|
const onValid = (v) => {
|
|
1040
|
+
submitted.value = false;
|
|
1216
1041
|
valid.value = v;
|
|
1217
1042
|
};
|
|
1043
|
+
const title = vue.computed(() => {
|
|
1044
|
+
if (!properties.updateTitle) return properties.createTitle;
|
|
1045
|
+
return formData.value?.id ? properties.updateTitle : properties.createTitle;
|
|
1046
|
+
});
|
|
1218
1047
|
return (_ctx, _cache) => {
|
|
1219
|
-
return vue.openBlock(), vue.
|
|
1220
|
-
vue.
|
|
1221
|
-
vue.createElementVNode("h1", _hoisted_3, vue.toDisplayString(formData.value?.id ? __props.updateTitle : __props.createTitle), 1),
|
|
1048
|
+
return vue.openBlock(), vue.createBlock(vue.unref(ui.Collapse), { title: title.value }, {
|
|
1049
|
+
default: vue.withCtx(() => [
|
|
1222
1050
|
vue.createVNode(_sfc_main$2, {
|
|
1223
1051
|
id: `form_${properties.id}`,
|
|
1224
1052
|
modelValue: formData.value,
|
|
@@ -1228,29 +1056,41 @@ const _sfc_main$1 = /* @__PURE__ */ vue.defineComponent({
|
|
|
1228
1056
|
onValid: _cache[1] || (_cache[1] = ($event) => onValid($event)),
|
|
1229
1057
|
onSubmit: save
|
|
1230
1058
|
}, null, 8, ["id", "modelValue", "schema", "uischema"]),
|
|
1231
|
-
vue.createElementVNode("div",
|
|
1232
|
-
vue.
|
|
1233
|
-
|
|
1234
|
-
|
|
1235
|
-
|
|
1236
|
-
|
|
1237
|
-
|
|
1238
|
-
|
|
1239
|
-
|
|
1240
|
-
|
|
1241
|
-
|
|
1242
|
-
|
|
1243
|
-
|
|
1244
|
-
|
|
1245
|
-
|
|
1246
|
-
|
|
1247
|
-
|
|
1248
|
-
|
|
1249
|
-
|
|
1250
|
-
|
|
1059
|
+
vue.createElementVNode("div", _hoisted_1, [
|
|
1060
|
+
vue.createElementVNode("div", null, [
|
|
1061
|
+
!valid.value && submitted.value ? (vue.openBlock(), vue.createBlock(vue.unref(ui.Alert), {
|
|
1062
|
+
key: 0,
|
|
1063
|
+
message: "The form is not valid",
|
|
1064
|
+
type: "error"
|
|
1065
|
+
})) : vue.createCommentVNode("", true)
|
|
1066
|
+
]),
|
|
1067
|
+
vue.createElementVNode("div", _hoisted_2, [
|
|
1068
|
+
vue.renderSlot(_ctx.$slots, "actions"),
|
|
1069
|
+
!formData.value.id ? (vue.openBlock(), vue.createBlock(vue.unref(ui.Btn), {
|
|
1070
|
+
key: 0,
|
|
1071
|
+
outline: true,
|
|
1072
|
+
onClick: clear
|
|
1073
|
+
}, {
|
|
1074
|
+
default: vue.withCtx(() => [..._cache[2] || (_cache[2] = [
|
|
1075
|
+
vue.createTextVNode(" Clear ", -1)
|
|
1076
|
+
])]),
|
|
1077
|
+
_: 1
|
|
1078
|
+
})) : vue.createCommentVNode("", true),
|
|
1079
|
+
vue.createVNode(vue.unref(ui.Btn), {
|
|
1080
|
+
color: vue.unref(ui.Color).primary,
|
|
1081
|
+
disabled: submitted.value,
|
|
1082
|
+
onClick: save
|
|
1083
|
+
}, {
|
|
1084
|
+
default: vue.withCtx(() => [..._cache[3] || (_cache[3] = [
|
|
1085
|
+
vue.createTextVNode(" Save ", -1)
|
|
1086
|
+
])]),
|
|
1087
|
+
_: 1
|
|
1088
|
+
}, 8, ["color", "disabled"])
|
|
1089
|
+
])
|
|
1251
1090
|
])
|
|
1252
|
-
])
|
|
1253
|
-
|
|
1091
|
+
]),
|
|
1092
|
+
_: 3
|
|
1093
|
+
}, 8, ["title"]);
|
|
1254
1094
|
};
|
|
1255
1095
|
}
|
|
1256
1096
|
});
|
|
@@ -1375,7 +1215,7 @@ const createRepository = (formSchemaModel, httpRequest, options = {}) => {
|
|
|
1375
1215
|
const create = (object, options2) => {
|
|
1376
1216
|
return httpRequest.post(getDataUri(), object, options2).then((response) => {
|
|
1377
1217
|
handleSuccess(`Created ${notificationEntity}`);
|
|
1378
|
-
return response;
|
|
1218
|
+
return response.data;
|
|
1379
1219
|
}).catch((response) => {
|
|
1380
1220
|
handleError(response, `Failed to create ${notificationEntity}`);
|
|
1381
1221
|
});
|
|
@@ -1383,13 +1223,17 @@ const createRepository = (formSchemaModel, httpRequest, options = {}) => {
|
|
|
1383
1223
|
const patch = (id, object, options2) => {
|
|
1384
1224
|
return httpRequest.patch(getDataUri(id), object, options2).then((response) => {
|
|
1385
1225
|
handleSuccess(`Saved ${notificationEntity}`);
|
|
1386
|
-
return response;
|
|
1226
|
+
return response.data;
|
|
1387
1227
|
}).catch((response) => {
|
|
1388
1228
|
handleError(response, `Failed to save ${notificationEntity}`);
|
|
1389
1229
|
});
|
|
1390
1230
|
};
|
|
1391
1231
|
const get = (id, options2) => {
|
|
1392
|
-
return httpRequest.get(getDataUri(id), options2)
|
|
1232
|
+
return httpRequest.get(getDataUri(id), options2).then((response) => {
|
|
1233
|
+
return response.data;
|
|
1234
|
+
}).catch((response) => {
|
|
1235
|
+
handleError(response, `Failed to load data`);
|
|
1236
|
+
});
|
|
1393
1237
|
};
|
|
1394
1238
|
const _delete = (id, options2) => {
|
|
1395
1239
|
return httpRequest.delete(getDataUri(id), options2).then((response) => {
|
|
@@ -1404,26 +1248,25 @@ const createRepository = (formSchemaModel, httpRequest, options = {}) => {
|
|
|
1404
1248
|
objects.map((object) => httpRequest.post(getDataUri(), object, options2))
|
|
1405
1249
|
).then((response) => {
|
|
1406
1250
|
handleSuccess(`Created ${notificationEntity}`);
|
|
1407
|
-
return response;
|
|
1251
|
+
return response.data;
|
|
1408
1252
|
}).catch((response) => {
|
|
1409
1253
|
handleError(response, `Failed to save ${notificationEntity}`);
|
|
1410
1254
|
});
|
|
1411
1255
|
};
|
|
1412
1256
|
return { create, patch, createMulti, delete: _delete, get };
|
|
1413
1257
|
};
|
|
1414
|
-
exports.ArrayRenderer =
|
|
1415
|
-
exports.AutocompleteControlRenderer =
|
|
1416
|
-
exports.BooleanControlRenderer =
|
|
1417
|
-
exports.FixedArrayRenderer = FixedArrayRenderer;
|
|
1258
|
+
exports.ArrayRenderer = _sfc_main$9;
|
|
1259
|
+
exports.AutocompleteControlRenderer = _sfc_main$a;
|
|
1260
|
+
exports.BooleanControlRenderer = _sfc_main$g;
|
|
1418
1261
|
exports.FormComponent = _sfc_main$2;
|
|
1419
1262
|
exports.FormModal = _sfc_main;
|
|
1420
1263
|
exports.FormModalService = FormModalService;
|
|
1421
1264
|
exports.FormStore = FormStore;
|
|
1422
1265
|
exports.FormWithActions = _sfc_main$1;
|
|
1423
1266
|
exports.FormWithTableComponent = _sfc_main$3;
|
|
1424
|
-
exports.IntegerControlRenderer =
|
|
1425
|
-
exports.NumberControlRenderer =
|
|
1426
|
-
exports.StringControlRenderer =
|
|
1267
|
+
exports.IntegerControlRenderer = _sfc_main$f;
|
|
1268
|
+
exports.NumberControlRenderer = _sfc_main$d;
|
|
1269
|
+
exports.StringControlRenderer = _sfc_main$c;
|
|
1427
1270
|
exports.TableComponent = _sfc_main$4;
|
|
1428
1271
|
exports.arrayRenderers = arrayRenderers;
|
|
1429
1272
|
exports.controlRenderers = controlRenderers;
|
|
@@ -1431,10 +1274,9 @@ exports.createRepository = createRepository;
|
|
|
1431
1274
|
exports.isArrayRenderer = isArrayRenderer;
|
|
1432
1275
|
exports.isAutoCompleteControl = isAutoCompleteControl;
|
|
1433
1276
|
exports.isCustomControl = isCustomControl;
|
|
1434
|
-
exports.isFixedArray = isFixedArray;
|
|
1435
1277
|
exports.isMarkdownControl = isMarkdownControl;
|
|
1436
1278
|
exports.isStringFormat = isStringFormat;
|
|
1437
1279
|
exports.isTextAreaControl = isTextAreaControl;
|
|
1438
1280
|
exports.layoutRenderers = layoutRenderers;
|
|
1439
|
-
exports.markdownControlRenderer =
|
|
1281
|
+
exports.markdownControlRenderer = _sfc_main$e;
|
|
1440
1282
|
exports.useFormState = useFormState;
|