cnhis-design-vue 3.1.14-beta.11.1 → 3.1.14-beta.13
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/es/_virtual/plugin-vue_export-helper.js +9 -0
- package/es/packages/big-table/index.js +1 -2
- package/es/packages/big-table/src/BigTable.js +5 -3
- package/es/packages/big-table/src/BigTable.vue_vue_type_script_setup_true_lang.js +8 -11
- package/es/packages/big-table/src/components/NoData.js +73 -3
- package/es/packages/big-table/src/components/edit-form/edit-separate.js +89 -3
- package/es/packages/big-table/src/components/input-button.js +34 -3
- package/es/packages/big-table/src/components/separate.js +29 -3
- package/es/packages/big-table/src/hooks/useEdit.js +2 -3
- package/es/packages/bpmn-workflow/index.js +1 -2
- package/es/packages/bpmn-workflow/src/BpmnWorkflow.js +253 -3
- package/es/packages/button-print/index.js +1 -2
- package/es/packages/button-print/src/ButtonPrint.js +5 -3
- package/es/packages/button-print/src/ButtonPrint.vue_vue_type_script_setup_true_lang.js +6 -7
- package/es/packages/button-print/src/components/IdentityVerification.js +129 -3
- package/es/packages/chunk-upload/index.js +1 -1
- package/es/packages/chunk-upload/src/chunk-upload-new.js +474 -3
- package/es/packages/chunk-upload/src/vod-chunk-upload/index.js +2 -3
- package/es/packages/chunk-upload/src/vod-chunk-upload/vod-chunk-upload.js +328 -3
- package/es/packages/chunk-upload/src/vod-upload-modal.js +3 -4
- package/es/packages/drag-layout/index.js +1 -2
- package/es/packages/drag-layout/src/DragFormLeftItem.js +123 -3
- package/es/packages/drag-layout/src/DragFormRightItem.js +268 -3
- package/es/packages/drag-layout/src/DragLayout.js +658 -3
- package/es/packages/fabric-chart/index.js +1 -2
- package/es/packages/fabric-chart/src/FabricChart.js +316 -3
- package/es/packages/fabric-chart/src/components/PopupTip.js +33 -3
- package/es/packages/field-set/index.js +1 -2
- package/es/packages/field-set/src/FieldSet.js +346 -3
- package/es/packages/form-render/index.d.ts +0 -1
- package/es/packages/form-render/index.js +2 -3
- package/es/packages/form-render/src/FormRender.js +188 -3
- package/es/packages/form-render/src/FormRender.vue.d.ts +0 -1
- package/es/packages/form-render/src/components/renderer/combination.js +2 -3
- package/es/packages/form-table/index.js +1 -2
- package/es/packages/form-table/src/FormTable.js +475 -3
- package/es/packages/form-table/src/components/index.js +28 -42
- package/es/packages/form-table/src/components/table-age.js +232 -3
- package/es/packages/form-table/src/components/table-date-picker.js +176 -3
- package/es/packages/form-table/src/components/table-digital.js +138 -3
- package/es/packages/form-table/src/components/table-input-password.js +138 -3
- package/es/packages/form-table/src/components/table-input.js +124 -3
- package/es/packages/form-table/src/components/table-month-picker.js +100 -3
- package/es/packages/form-table/src/components/table-search-more.js +5 -3
- package/es/packages/form-table/src/components/table-search-more.vue_vue_type_script_setup_true_lang.js +2 -2
- package/es/packages/form-table/src/components/table-search.js +5 -3
- package/es/packages/form-table/src/components/table-search.vue_vue_type_script_setup_true_lang.js +2 -2
- package/es/packages/form-table/src/components/table-select-multiple.js +161 -3
- package/es/packages/form-table/src/components/table-select.js +156 -3
- package/es/packages/form-table/src/components/table-textarea.js +154 -3
- package/es/packages/form-table/src/components/table-time-picker.js +146 -3
- package/es/packages/form-table/src/components/table-tree-select.js +282 -3
- package/es/packages/form-table/src/components/text-over-tooltip.js +63 -3
- package/es/packages/info-header/index.js +1 -2
- package/es/packages/info-header/src/HiddenContent.js +65 -3
- package/es/packages/info-header/src/InfoEllipsis.js +42 -3
- package/es/packages/info-header/src/InfoHeader.js +229 -3
- package/es/packages/map/index.js +1 -2
- package/es/packages/map/src/Map.js +337 -3
- package/es/packages/scale-view/index.js +1 -2
- package/es/packages/scale-view/src/ScaleView.js +418 -3
- package/es/packages/scale-view/src/components/AnswerParse.js +79 -3
- package/es/packages/scale-view/src/components/EvaluateCountdown.js +108 -3
- package/es/packages/scale-view/src/components/EvaluatePage.js +140 -3
- package/es/packages/scale-view/src/components/LoadingCom.js +17 -5
- package/es/packages/scale-view/src/components/NoData.js +73 -3
- package/es/packages/scale-view/src/components/formitem/r-cascader.js +3 -3
- package/es/packages/scale-view/src/components/formitem/r-select.js +3 -3
- package/es/packages/scale-view/src/components/formitem/text-over-tooltip/TextOverTooltip.js +78 -3
- package/es/packages/select-label/index.js +3 -5
- package/es/packages/select-label/src/LabelFormContent.js +441 -3
- package/es/packages/select-label/src/SelectLabel.js +5 -3
- package/es/packages/select-label/src/SelectLabel.vue_vue_type_script_setup_true_lang.js +5 -21
- package/es/packages/select-label/src/components/label-classify.js +128 -3
- package/es/packages/select-person/index.js +1 -2
- package/es/packages/select-person/src/SearchTree.js +5 -3
- package/es/packages/select-person/src/SearchTree.vue_vue_type_script_setup_true_lang.js +2 -2
- package/es/packages/select-person/src/SelectPerson.js +5 -3
- package/es/packages/select-person/src/SelectPerson.vue_vue_type_script_setup_true_lang.js +4 -5
- package/es/packages/shortcut-provider/index.js +1 -2
- package/es/packages/shortcut-provider/src/ShortcutProvider.js +33 -3
- package/es/packages/shortcut-setter/index.js +1 -2
- package/es/packages/shortcut-setter/src/ShortcutSetter.js +38 -3
- package/es/packages/shortcut-setter/src/ShortcutSetterItem.js +126 -3
- package/es/packages/steps-wheel/index.js +1 -2
- package/es/packages/steps-wheel/src/StepsWheel.js +264 -3
- package/es/packages/time-line/index.js +1 -2
- package/es/packages/time-line/src/TimeLine.js +69 -3
- package/es/src/components/SelectPage/SelectPage.js +62 -3
- package/es/src/components/SelectPage/index.js +2 -3
- package/es/src/components/SvgIcon/SvgIcon.js +35 -3
- package/es/src/components/SvgIcon/index.js +2 -3
- package/es/src/components/TextOverTooltip/TextOverTooltip.js +75 -3
- package/es/src/components/TextOverTooltip/index.js +2 -3
- package/es/src/components/player-vod/index.js +13 -3
- package/package.json +153 -153
- package/es/packages/big-table/src/components/NoData.vue_vue_type_script_setup_true_lang.js +0 -72
- package/es/packages/big-table/src/components/edit-form/edit-separate.vue_vue_type_script_setup_true_lang.js +0 -89
- package/es/packages/big-table/src/components/input-button.vue_vue_type_script_setup_true_lang.js +0 -33
- package/es/packages/big-table/src/components/separate.vue_vue_type_script_setup_true_lang.js +0 -28
- package/es/packages/bpmn-workflow/src/BpmnWorkflow.vue_vue_type_script_setup_true_lang.js +0 -252
- package/es/packages/button-print/src/components/IdentityVerification.vue_vue_type_script_setup_true_lang.js +0 -128
- package/es/packages/chunk-upload/src/chunk-upload-new.vue_vue_type_script_setup_true_lang.js +0 -473
- package/es/packages/chunk-upload/src/vod-chunk-upload/vod-chunk-upload.vue_vue_type_script_setup_true_lang.js +0 -327
- package/es/packages/drag-layout/src/DragFormLeftItem.vue_vue_type_script_setup_true_lang.js +0 -122
- package/es/packages/drag-layout/src/DragFormRightItem.vue_vue_type_script_setup_true_lang.js +0 -267
- package/es/packages/drag-layout/src/DragLayout.vue_vue_type_script_setup_true_lang.js +0 -659
- package/es/packages/fabric-chart/src/FabricChart.vue_vue_type_script_setup_true_lang.js +0 -316
- package/es/packages/fabric-chart/src/components/PopupTip.vue_vue_type_script_setup_true_lang.js +0 -32
- package/es/packages/field-set/src/FieldSet.vue_vue_type_script_setup_true_lang.js +0 -345
- package/es/packages/form-render/src/FormRender.vue_vue_type_script_setup_true_lang.js +0 -187
- package/es/packages/form-table/src/FormTable.vue_vue_type_script_setup_true_lang.js +0 -474
- package/es/packages/form-table/src/components/table-age.vue_vue_type_script_setup_true_lang.js +0 -232
- package/es/packages/form-table/src/components/table-date-picker.vue_vue_type_script_setup_true_lang.js +0 -175
- package/es/packages/form-table/src/components/table-digital.vue_vue_type_script_setup_true_lang.js +0 -138
- package/es/packages/form-table/src/components/table-input-password.vue_vue_type_script_setup_true_lang.js +0 -138
- package/es/packages/form-table/src/components/table-input.vue_vue_type_script_setup_true_lang.js +0 -124
- package/es/packages/form-table/src/components/table-month-picker.vue_vue_type_script_setup_true_lang.js +0 -99
- package/es/packages/form-table/src/components/table-select-multiple.vue_vue_type_script_setup_true_lang.js +0 -160
- package/es/packages/form-table/src/components/table-select.vue_vue_type_script_setup_true_lang.js +0 -155
- package/es/packages/form-table/src/components/table-textarea.vue_vue_type_script_setup_true_lang.js +0 -153
- package/es/packages/form-table/src/components/table-time-picker.vue_vue_type_script_setup_true_lang.js +0 -145
- package/es/packages/form-table/src/components/table-tree-select.vue_vue_type_script_setup_true_lang.js +0 -281
- package/es/packages/form-table/src/components/text-over-tooltip.vue_vue_type_script_setup_true_lang.js +0 -62
- package/es/packages/info-header/src/HiddenContent.vue_vue_type_script_setup_true_lang.js +0 -64
- package/es/packages/info-header/src/InfoEllipsis.vue_vue_type_script_setup_true_lang.js +0 -41
- package/es/packages/info-header/src/InfoHeader.vue_vue_type_script_setup_true_lang.js +0 -229
- package/es/packages/map/src/Map.vue_vue_type_script_setup_true_lang.js +0 -336
- package/es/packages/scale-view/src/ScaleView.vue_vue_type_script_setup_true_lang.js +0 -422
- package/es/packages/scale-view/src/components/AnswerParse.vue_vue_type_script_setup_true_lang.js +0 -78
- package/es/packages/scale-view/src/components/EvaluateCountdown.vue_vue_type_script_setup_true_lang.js +0 -107
- package/es/packages/scale-view/src/components/EvaluatePage.vue_vue_type_script_setup_true_lang.js +0 -139
- package/es/packages/scale-view/src/components/LoadingCom.vue_vue_type_template_id_413329b0_lang.js +0 -16
- package/es/packages/scale-view/src/components/NoData.vue_vue_type_script_setup_true_lang.js +0 -72
- package/es/packages/scale-view/src/components/formitem/text-over-tooltip/TextOverTooltip.vue_vue_type_script_setup_true_lang.js +0 -77
- package/es/packages/select-label/src/LabelFormContent.vue_vue_type_script_setup_true_lang.js +0 -441
- package/es/packages/select-label/src/components/label-classify.vue_vue_type_script_setup_true_lang.js +0 -127
- package/es/packages/shortcut-provider/src/ShortcutProvider.vue_vue_type_script_setup_true_lang.js +0 -32
- package/es/packages/shortcut-setter/src/ShortcutSetter.vue_vue_type_script_setup_true_lang.js +0 -38
- package/es/packages/shortcut-setter/src/ShortcutSetterItem.vue_vue_type_script_setup_true_lang.js +0 -125
- package/es/packages/steps-wheel/src/StepsWheel.vue_vue_type_script_setup_true_lang.js +0 -263
- package/es/packages/time-line/src/TimeLine.vue_vue_type_script_setup_true_lang.js +0 -68
- package/es/src/components/SelectPage/SelectPage.vue_vue_type_script_setup_true_lang.js +0 -61
- package/es/src/components/SvgIcon/SvgIcon.vue_vue_type_script_setup_true_lang.js +0 -34
- package/es/src/components/TextOverTooltip/TextOverTooltip.vue_vue_type_script_setup_true_lang.js +0 -74
- package/es/src/components/player-vod/index.vue_vue_type_script_setup_true_lang.js +0 -12
|
@@ -1,187 +0,0 @@
|
|
|
1
|
-
import { defineComponent, computed, watch, openBlock, createBlock, unref, withCtx, createElementBlock, createVNode, isRef, Fragment, renderList, createCommentVNode, createElementVNode, normalizeStyle, renderSlot, toDisplayString, nextTick } from 'vue';
|
|
2
|
-
import { createForm, onFieldValueChange, isField } from '@formily/core';
|
|
3
|
-
import { FormProvider, FormConsumer } from '@formily/vue';
|
|
4
|
-
import { cloneDeep } from 'lodash-es';
|
|
5
|
-
import { NForm, NTabs, NTabPane, NConfigProvider } from 'naive-ui';
|
|
6
|
-
import { FormItemLineBarDepKeyPrepend } from '../../../packages/form-render/src/constants';
|
|
7
|
-
import { queryDecorator, queryInput, getParentLinebar } from '../../../packages/form-render/src/utils';
|
|
8
|
-
import { useNuiThemeOverrides } from '../../../packages/form-table/src/hooks/useNuiThemeOverrides';
|
|
9
|
-
import { useFormContext } from './hooks/useFormContext.js';
|
|
10
|
-
import { useInitialData } from './hooks/useInitialData.js';
|
|
11
|
-
import { useFieldListAdaptor } from './hooks/useFieldListAdaptor.js';
|
|
12
|
-
import { useFieldVisitor } from './hooks/useFieldVisitor.js';
|
|
13
|
-
import { useAnchor } from './hooks/useAnchor.js';
|
|
14
|
-
|
|
15
|
-
const _hoisted_1 = {
|
|
16
|
-
key: 0,
|
|
17
|
-
style: { "height": "50px" }
|
|
18
|
-
};
|
|
19
|
-
const _hoisted_2 = { style: { "white-space": "pre" } };
|
|
20
|
-
var script = /* @__PURE__ */ defineComponent({
|
|
21
|
-
__name: "FormRender",
|
|
22
|
-
props: {
|
|
23
|
-
fieldList: { type: Array },
|
|
24
|
-
initialData: { type: Object, default: () => ({}) },
|
|
25
|
-
fieldVisitor: { type: Object },
|
|
26
|
-
column: { type: Number, default: 12 },
|
|
27
|
-
maxHeight: { type: [Number, String], default: "" },
|
|
28
|
-
anchor: { type: Boolean, default: false },
|
|
29
|
-
parallelism: { type: Number, default: 3 },
|
|
30
|
-
schema: { type: Object },
|
|
31
|
-
components: {
|
|
32
|
-
type: Object,
|
|
33
|
-
default: () => ({})
|
|
34
|
-
},
|
|
35
|
-
businessFilter: { type: Function },
|
|
36
|
-
scope: { type: Object, default: () => ({}) },
|
|
37
|
-
annotation: { type: Object },
|
|
38
|
-
consumer: { type: Boolean, default: false },
|
|
39
|
-
uuid: { type: String }
|
|
40
|
-
},
|
|
41
|
-
emits: [
|
|
42
|
-
"formChange"
|
|
43
|
-
],
|
|
44
|
-
setup(__props, { expose, emit }) {
|
|
45
|
-
const props = __props;
|
|
46
|
-
const { nuiThemeOverrides } = useNuiThemeOverrides();
|
|
47
|
-
const { SchemaField, businessCollector, formItemDepsCollector, changeContextCollector, formUUID } = useFormContext(props);
|
|
48
|
-
const formModel = createForm({
|
|
49
|
-
initialValues: useInitialData().assignInitialData(props.initialData, props.fieldList),
|
|
50
|
-
effects() {
|
|
51
|
-
onFieldValueChange("*", (field) => {
|
|
52
|
-
const fieldKey = field.props.name.toString();
|
|
53
|
-
emit("formChange", {
|
|
54
|
-
fieldInstance: field,
|
|
55
|
-
fieldKey,
|
|
56
|
-
fieldName: field.title,
|
|
57
|
-
value: field.value,
|
|
58
|
-
context: changeContextCollector.getContext(fieldKey)
|
|
59
|
-
});
|
|
60
|
-
businessCollector.trigger(formModel, fieldKey, field.value);
|
|
61
|
-
formItemDepsCollector.trigger(fieldKey);
|
|
62
|
-
});
|
|
63
|
-
}
|
|
64
|
-
});
|
|
65
|
-
const { schemaAdaptor } = useFieldListAdaptor(businessCollector, formUUID);
|
|
66
|
-
const parsedSchema = computed(() => {
|
|
67
|
-
if (props.schema) {
|
|
68
|
-
return props.schema;
|
|
69
|
-
}
|
|
70
|
-
if (props.fieldList) {
|
|
71
|
-
const _fieldList = useFieldVisitor().traverse(cloneDeep(props.fieldList), props.fieldVisitor);
|
|
72
|
-
return { type: "object", properties: schemaAdaptor(_fieldList) };
|
|
73
|
-
}
|
|
74
|
-
return { type: "object", properties: {} };
|
|
75
|
-
});
|
|
76
|
-
const { currentAnchor, scrollbarRef, generateAnchorList, anchorIdList, formHeight, scrollTo, onScroll } = useAnchor(props, formItemDepsCollector);
|
|
77
|
-
watch(parsedSchema, generateAnchorList, { immediate: true });
|
|
78
|
-
function bindInfo(info) {
|
|
79
|
-
info.title = formModel.query(info.path).get("title");
|
|
80
|
-
info.decoratorElement = queryDecorator(info.path, scrollbarRef.value, formUUID);
|
|
81
|
-
Object.assign(info, queryInput(info.decoratorElement));
|
|
82
|
-
return info;
|
|
83
|
-
}
|
|
84
|
-
async function queryWidget(key, wrapperElement, fieldList) {
|
|
85
|
-
if (!scrollbarRef.value)
|
|
86
|
-
return createResult();
|
|
87
|
-
const decoratorElement = queryDecorator(key, wrapperElement, formUUID);
|
|
88
|
-
if (decoratorElement)
|
|
89
|
-
return createResult(decoratorElement);
|
|
90
|
-
const parentLinebarKey = getParentLinebar(key, fieldList);
|
|
91
|
-
if (!parentLinebarKey)
|
|
92
|
-
return createResult();
|
|
93
|
-
formItemDepsCollector.trigger(FormItemLineBarDepKeyPrepend + parentLinebarKey, true);
|
|
94
|
-
await nextTick();
|
|
95
|
-
return createResult(queryDecorator(key, wrapperElement, formUUID));
|
|
96
|
-
function createResult(decoratorElement2) {
|
|
97
|
-
return { decoratorElement: decoratorElement2, ...queryInput(decoratorElement2) };
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
expose({
|
|
101
|
-
validate(path = "*") {
|
|
102
|
-
return formModel.validate(path).catch((err) => {
|
|
103
|
-
return Promise.reject(Array.isArray(err) ? err.map(bindInfo) : err);
|
|
104
|
-
});
|
|
105
|
-
},
|
|
106
|
-
getFormValues() {
|
|
107
|
-
return formModel.getFormState().values;
|
|
108
|
-
},
|
|
109
|
-
setFieldState(path, handler) {
|
|
110
|
-
formModel.setFieldState(path, handler);
|
|
111
|
-
},
|
|
112
|
-
resetFields(path = "*") {
|
|
113
|
-
formModel.setFieldState(path, async (field) => {
|
|
114
|
-
var _a;
|
|
115
|
-
if (isField(field)) {
|
|
116
|
-
field.modified = false;
|
|
117
|
-
field.visited = false;
|
|
118
|
-
field.feedbacks = [];
|
|
119
|
-
field.selfModified = false;
|
|
120
|
-
field.caches = {};
|
|
121
|
-
field.value = (_a = field.initialValue) != null ? _a : null;
|
|
122
|
-
}
|
|
123
|
-
});
|
|
124
|
-
},
|
|
125
|
-
async queryWidget(key) {
|
|
126
|
-
return scrollbarRef.value ? await queryWidget(key, scrollbarRef.value, props.fieldList || []) : null;
|
|
127
|
-
}
|
|
128
|
-
});
|
|
129
|
-
return (_ctx, _cache) => {
|
|
130
|
-
return openBlock(), createBlock(unref(NForm), {
|
|
131
|
-
class: "form-render",
|
|
132
|
-
"require-mark-placement": "left"
|
|
133
|
-
}, {
|
|
134
|
-
default: withCtx(() => [
|
|
135
|
-
__props.anchor ? (openBlock(), createElementBlock("section", _hoisted_1, [
|
|
136
|
-
createVNode(unref(NTabs), {
|
|
137
|
-
value: unref(currentAnchor),
|
|
138
|
-
"onUpdate:value": _cache[0] || (_cache[0] = ($event) => isRef(currentAnchor) ? currentAnchor.value = $event : null),
|
|
139
|
-
type: "line"
|
|
140
|
-
}, {
|
|
141
|
-
default: withCtx(() => [
|
|
142
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(unref(anchorIdList), (anchor) => {
|
|
143
|
-
return openBlock(), createBlock(unref(NTabPane), {
|
|
144
|
-
name: anchor.name,
|
|
145
|
-
tab: anchor.title,
|
|
146
|
-
key: anchor.name
|
|
147
|
-
}, null, 8, ["name", "tab"]);
|
|
148
|
-
}), 128))
|
|
149
|
-
]),
|
|
150
|
-
_: 1
|
|
151
|
-
}, 8, ["value"])
|
|
152
|
-
])) : createCommentVNode("v-if", true),
|
|
153
|
-
createVNode(unref(NConfigProvider), { "theme-overrides": unref(nuiThemeOverrides) }, {
|
|
154
|
-
default: withCtx(() => [
|
|
155
|
-
createElementVNode("section", {
|
|
156
|
-
class: "form-render__wrapper",
|
|
157
|
-
style: normalizeStyle({ "--column": __props.column, "--form-height": unref(formHeight) }),
|
|
158
|
-
ref_key: "scrollbarRef",
|
|
159
|
-
ref: scrollbarRef,
|
|
160
|
-
onScroll: _cache[1] || (_cache[1] = (...args) => unref(onScroll) && unref(onScroll)(...args))
|
|
161
|
-
}, [
|
|
162
|
-
createVNode(unref(FormProvider), { form: unref(formModel) }, {
|
|
163
|
-
default: withCtx(() => [
|
|
164
|
-
renderSlot(_ctx.$slots, "default", { schemaFiled: unref(SchemaField) }, () => [
|
|
165
|
-
createVNode(unref(SchemaField), { schema: unref(parsedSchema) }, null, 8, ["schema"])
|
|
166
|
-
]),
|
|
167
|
-
__props.consumer ? (openBlock(), createBlock(unref(FormConsumer), { key: 0 }, {
|
|
168
|
-
default: withCtx(({ form }) => [
|
|
169
|
-
createElementVNode("div", _hoisted_2, toDisplayString(JSON.stringify(form.values, null, 2)), 1)
|
|
170
|
-
]),
|
|
171
|
-
_: 1
|
|
172
|
-
})) : createCommentVNode("v-if", true)
|
|
173
|
-
]),
|
|
174
|
-
_: 3
|
|
175
|
-
}, 8, ["form"])
|
|
176
|
-
], 36)
|
|
177
|
-
]),
|
|
178
|
-
_: 3
|
|
179
|
-
}, 8, ["theme-overrides"])
|
|
180
|
-
]),
|
|
181
|
-
_: 3
|
|
182
|
-
});
|
|
183
|
-
};
|
|
184
|
-
}
|
|
185
|
-
});
|
|
186
|
-
|
|
187
|
-
export { script as default };
|
|
@@ -1,474 +0,0 @@
|
|
|
1
|
-
import { defineComponent, ref, computed, h, watch, onMounted, openBlock, createElementBlock, normalizeClass, normalizeStyle, unref, createVNode, withCtx, createCommentVNode } from 'vue';
|
|
2
|
-
import { useMessage } from 'naive-ui';
|
|
3
|
-
import { useComponents } from '../../../packages/form-table/src/components';
|
|
4
|
-
import '../../../packages/form-table/src/configs';
|
|
5
|
-
import { useValidate } from '../../../packages/form-table/src/hooks';
|
|
6
|
-
import CGrid from '../../../packages/grid';
|
|
7
|
-
import vexutils from '../../../src/utils/vexutils';
|
|
8
|
-
|
|
9
|
-
const _hoisted_1 = { key: 0 };
|
|
10
|
-
var script = /* @__PURE__ */ defineComponent({
|
|
11
|
-
__name: "FormTable",
|
|
12
|
-
props: {
|
|
13
|
-
data: Array,
|
|
14
|
-
columnConfig: Object,
|
|
15
|
-
emptyItems: {
|
|
16
|
-
type: Object,
|
|
17
|
-
default: () => {
|
|
18
|
-
return {
|
|
19
|
-
noDataImg: "nodata",
|
|
20
|
-
noDataTip: ""
|
|
21
|
-
};
|
|
22
|
-
}
|
|
23
|
-
},
|
|
24
|
-
isOnlyDisplay: Boolean,
|
|
25
|
-
userInfo: {
|
|
26
|
-
type: Object,
|
|
27
|
-
default: () => ({})
|
|
28
|
-
},
|
|
29
|
-
styleSetting: {
|
|
30
|
-
type: Object,
|
|
31
|
-
default: () => ({})
|
|
32
|
-
},
|
|
33
|
-
defaultValue: {
|
|
34
|
-
type: Array,
|
|
35
|
-
default: () => []
|
|
36
|
-
},
|
|
37
|
-
dbParams: {
|
|
38
|
-
type: Object
|
|
39
|
-
},
|
|
40
|
-
cacheUniqueKey: {
|
|
41
|
-
type: Object,
|
|
42
|
-
default: () => {
|
|
43
|
-
return {};
|
|
44
|
-
}
|
|
45
|
-
},
|
|
46
|
-
formType: {
|
|
47
|
-
type: Object,
|
|
48
|
-
default: () => {
|
|
49
|
-
return {};
|
|
50
|
-
}
|
|
51
|
-
},
|
|
52
|
-
formConfig: {
|
|
53
|
-
type: Object,
|
|
54
|
-
default: () => {
|
|
55
|
-
return {};
|
|
56
|
-
}
|
|
57
|
-
},
|
|
58
|
-
formTableItem: {
|
|
59
|
-
type: Object,
|
|
60
|
-
default: () => {
|
|
61
|
-
return {};
|
|
62
|
-
}
|
|
63
|
-
},
|
|
64
|
-
isDetail: {
|
|
65
|
-
type: Boolean,
|
|
66
|
-
default: false
|
|
67
|
-
}
|
|
68
|
-
},
|
|
69
|
-
emits: ["AddComplete", "formTableBlur", "DeleteComplete"],
|
|
70
|
-
setup(__props, { emit }) {
|
|
71
|
-
const props = __props;
|
|
72
|
-
const $message = useMessage();
|
|
73
|
-
const { cmps, getComName } = useComponents();
|
|
74
|
-
useValidate({ message: $message });
|
|
75
|
-
const isShowEmpty = ref(false);
|
|
76
|
-
const tableList = ref([]);
|
|
77
|
-
const fullTableList = ref([]);
|
|
78
|
-
const multipleSelected = ref({});
|
|
79
|
-
const columns = ref([]);
|
|
80
|
-
const columnsLevel = ref(1);
|
|
81
|
-
const formTableGridRef = ref();
|
|
82
|
-
function $t(...args) {
|
|
83
|
-
}
|
|
84
|
-
const handleRowId = computed(() => {
|
|
85
|
-
var _a;
|
|
86
|
-
return ((_a = props.columnConfig) == null ? void 0 : _a.primaryKey) || "field";
|
|
87
|
-
});
|
|
88
|
-
computed(() => {
|
|
89
|
-
return function(name, item) {
|
|
90
|
-
let tag = cmps[name];
|
|
91
|
-
return tag ? h(tag, {
|
|
92
|
-
attrs: { item }
|
|
93
|
-
}) : null;
|
|
94
|
-
};
|
|
95
|
-
});
|
|
96
|
-
computed(() => {
|
|
97
|
-
var _a, _b;
|
|
98
|
-
return (_b = (_a = props.formTableItem) == null ? void 0 : _a.wordbook) == null ? void 0 : _b.idField;
|
|
99
|
-
});
|
|
100
|
-
computed(() => {
|
|
101
|
-
var _a, _b;
|
|
102
|
-
return ((_b = (_a = props.formTableItem) == null ? void 0 : _a.wordbook) == null ? void 0 : _b.delFlagField) || "deleteKey";
|
|
103
|
-
});
|
|
104
|
-
const rowH = computed(() => {
|
|
105
|
-
var _a;
|
|
106
|
-
if (props.isDetail || !((_a = tableList.value) == null ? void 0 : _a.length))
|
|
107
|
-
return 50;
|
|
108
|
-
let hasTextarea = columns.value.map((item) => {
|
|
109
|
-
if (item.html_type == "TEXTAREA")
|
|
110
|
-
return item.initialize_high ? +item.initialize_high : 3;
|
|
111
|
-
return null;
|
|
112
|
-
}).filter(Boolean);
|
|
113
|
-
let MaxH = 50;
|
|
114
|
-
if (hasTextarea.length) {
|
|
115
|
-
MaxH = Math.max(...hasTextarea) * 20 + 10 + 4 + 18;
|
|
116
|
-
}
|
|
117
|
-
return MaxH;
|
|
118
|
-
});
|
|
119
|
-
const minHeight = computed(() => {
|
|
120
|
-
return rowH.value + columnsLevel.value * 40 + 10 + "px";
|
|
121
|
-
});
|
|
122
|
-
const maxHeight = computed(() => {
|
|
123
|
-
return rowH.value * 6 + columnsLevel.value * 40 + 10 + "px";
|
|
124
|
-
});
|
|
125
|
-
const tableHeight = computed(() => {
|
|
126
|
-
var _a;
|
|
127
|
-
let len = ((_a = tableList.value) == null ? void 0 : _a.length) || 1;
|
|
128
|
-
return len * rowH.value + columnsLevel.value * 40 + 10;
|
|
129
|
-
});
|
|
130
|
-
function loadColumn(config) {
|
|
131
|
-
const columnsFormatted = handleGroupColums(columns.value);
|
|
132
|
-
if (columnsFormatted) {
|
|
133
|
-
columns.value = columnsFormatted;
|
|
134
|
-
}
|
|
135
|
-
const table = formTableGridRef.value;
|
|
136
|
-
if (!table)
|
|
137
|
-
return;
|
|
138
|
-
table && table.reloadColumn(columns.value);
|
|
139
|
-
}
|
|
140
|
-
function handleGroupColums(columns2) {
|
|
141
|
-
var _a;
|
|
142
|
-
let { rowGroupSetting } = ((_a = props.formTableItem) == null ? void 0 : _a.wordbook) || {};
|
|
143
|
-
if (!rowGroupSetting || !Object.keys(rowGroupSetting).length)
|
|
144
|
-
return columns2;
|
|
145
|
-
let { firstRowGroup, secondRowGroup } = rowGroupSetting;
|
|
146
|
-
if (!firstRowGroup || !firstRowGroup.length)
|
|
147
|
-
return columns2;
|
|
148
|
-
handleRowColumns(firstRowGroup, columns2, "val_key");
|
|
149
|
-
columnsLevel.value = 2;
|
|
150
|
-
if (!secondRowGroup || !secondRowGroup.length)
|
|
151
|
-
return columns2;
|
|
152
|
-
handleRowColumns(secondRowGroup, columns2, "title");
|
|
153
|
-
columnsLevel.value = 3;
|
|
154
|
-
return columns2;
|
|
155
|
-
}
|
|
156
|
-
function handleRowColumns(rowColumns, columns2, key) {
|
|
157
|
-
rowColumns.map((item) => {
|
|
158
|
-
var _a;
|
|
159
|
-
let children = [];
|
|
160
|
-
let spliceIndex = -1;
|
|
161
|
-
let indexArr = [];
|
|
162
|
-
((_a = item.list) == null ? void 0 : _a.length) && item.list.forEach((v) => {
|
|
163
|
-
let matchItem = columns2.find((column) => column[key] === v);
|
|
164
|
-
if (matchItem) {
|
|
165
|
-
let matchIndex = columns2.findIndex((column) => column[key] === v);
|
|
166
|
-
indexArr.push(matchIndex);
|
|
167
|
-
delete matchItem.fixed;
|
|
168
|
-
children.push(matchItem);
|
|
169
|
-
columns2.splice(matchIndex, 1);
|
|
170
|
-
}
|
|
171
|
-
});
|
|
172
|
-
let obj = {
|
|
173
|
-
title: $t(item.titleI18n || item.title),
|
|
174
|
-
visible: true,
|
|
175
|
-
children
|
|
176
|
-
};
|
|
177
|
-
spliceIndex = Math.min.apply(Math, indexArr);
|
|
178
|
-
spliceIndex > -1 && columns2.splice(spliceIndex, 0, obj);
|
|
179
|
-
});
|
|
180
|
-
}
|
|
181
|
-
async function loadData(list) {
|
|
182
|
-
if (!list || !list.length)
|
|
183
|
-
return;
|
|
184
|
-
tableList.value = vexutils.clone(list, true);
|
|
185
|
-
fullTableList.value = vexutils.clone(list, true);
|
|
186
|
-
handlerFieldToggleList(tableList.value);
|
|
187
|
-
const table = formTableGridRef.value;
|
|
188
|
-
if (!table)
|
|
189
|
-
return;
|
|
190
|
-
await table.loadData(tableList.value);
|
|
191
|
-
handleMultipleSelected(list, false);
|
|
192
|
-
}
|
|
193
|
-
function handleMultipleSelected(list, isAdd) {
|
|
194
|
-
var _a, _b;
|
|
195
|
-
let multipleSelectedValue = {};
|
|
196
|
-
let fieldList = (_b = (_a = props.columnConfig) == null ? void 0 : _a.columns) != null ? _b : [];
|
|
197
|
-
list.forEach((item, i) => {
|
|
198
|
-
let field = item.field;
|
|
199
|
-
multipleSelectedValue[field] = {};
|
|
200
|
-
for (let key in item) {
|
|
201
|
-
if (!ignoreKey(key)) {
|
|
202
|
-
let isSearchMore = fieldList.find((v) => v.val_key === key);
|
|
203
|
-
if ((isSearchMore == null ? void 0 : isSearchMore.html_type) === "SEARCH_MORE") {
|
|
204
|
-
multipleSelectedValue[field][key] = [];
|
|
205
|
-
}
|
|
206
|
-
}
|
|
207
|
-
}
|
|
208
|
-
});
|
|
209
|
-
if (isAdd) {
|
|
210
|
-
Object.assign(multipleSelected.value, {
|
|
211
|
-
...multipleSelectedValue
|
|
212
|
-
});
|
|
213
|
-
} else {
|
|
214
|
-
multipleSelected.value = multipleSelectedValue;
|
|
215
|
-
}
|
|
216
|
-
}
|
|
217
|
-
function ignoreKey(key) {
|
|
218
|
-
return key.startsWith("_") && key.endsWith("_") || key == "field";
|
|
219
|
-
}
|
|
220
|
-
function handlerClickRow({ row, $event = {}, $rowIndex, triggerCheckbox, triggerTreeNode }) {
|
|
221
|
-
var _a, _b, _c, _d;
|
|
222
|
-
let { className } = $event.target || {};
|
|
223
|
-
$event.preventDefault();
|
|
224
|
-
$event.stopPropagation();
|
|
225
|
-
if (className == null ? void 0 : className.includes("vxe-checkbox--icon"))
|
|
226
|
-
return;
|
|
227
|
-
let table = formTableGridRef.value;
|
|
228
|
-
let isChecked = table.isCheckedByCheckboxRow(row);
|
|
229
|
-
let checkedLen = (_a = table.getCheckboxRecords()) == null ? void 0 : _a.length;
|
|
230
|
-
let isCheckCell = !triggerCheckbox && (className.includes("col--checkbox") || ((_d = (_c = (_b = $event.target) == null ? void 0 : _b.lastChild) == null ? void 0 : _c.className) == null ? void 0 : _d.includes("vxe-cell--checkbox")));
|
|
231
|
-
if (isCheckCell)
|
|
232
|
-
return;
|
|
233
|
-
table.setAllCheckboxRow(false);
|
|
234
|
-
if (!checkedLen && !isChecked) {
|
|
235
|
-
table.setCheckboxRow([row], true);
|
|
236
|
-
return;
|
|
237
|
-
}
|
|
238
|
-
if (checkedLen == 1 && isChecked) {
|
|
239
|
-
table.setCheckboxRow([row], false);
|
|
240
|
-
return;
|
|
241
|
-
}
|
|
242
|
-
table.setCheckboxRow(row, true);
|
|
243
|
-
}
|
|
244
|
-
function handlerFieldToggleList(list) {
|
|
245
|
-
if (!list.length)
|
|
246
|
-
return;
|
|
247
|
-
let { fieldToggleSetting } = props.formConfig || {};
|
|
248
|
-
if (!fieldToggleSetting || !Object.keys(fieldToggleSetting).length)
|
|
249
|
-
return;
|
|
250
|
-
list.forEach((row) => {
|
|
251
|
-
handlerFieldToggle(fieldToggleSetting, row);
|
|
252
|
-
});
|
|
253
|
-
}
|
|
254
|
-
function handlerFieldToggle(fieldToggleSetting, formData = {}) {
|
|
255
|
-
const configList = [
|
|
256
|
-
{
|
|
257
|
-
key: "is_show",
|
|
258
|
-
value: true
|
|
259
|
-
},
|
|
260
|
-
{
|
|
261
|
-
key: "is_show",
|
|
262
|
-
value: false
|
|
263
|
-
},
|
|
264
|
-
{
|
|
265
|
-
key: "is_null",
|
|
266
|
-
value: false
|
|
267
|
-
},
|
|
268
|
-
{
|
|
269
|
-
key: "is_null",
|
|
270
|
-
value: true
|
|
271
|
-
},
|
|
272
|
-
{
|
|
273
|
-
key: "is_edit",
|
|
274
|
-
value: true
|
|
275
|
-
},
|
|
276
|
-
{
|
|
277
|
-
key: "is_edit",
|
|
278
|
-
value: false
|
|
279
|
-
}
|
|
280
|
-
];
|
|
281
|
-
const checkList = (list) => list.forEach((l) => {
|
|
282
|
-
});
|
|
283
|
-
let resetObj = {};
|
|
284
|
-
let resetType = {};
|
|
285
|
-
let fieldObj = formData.__fieldObj__ || {};
|
|
286
|
-
fieldToggleSetting.forEach((item) => {
|
|
287
|
-
let FlagList = handleGetFlagRes(item.conObj, formData);
|
|
288
|
-
let {
|
|
289
|
-
showField = [],
|
|
290
|
-
hideField = [],
|
|
291
|
-
requiredField = [],
|
|
292
|
-
notRequiredField = [],
|
|
293
|
-
enabledField = [],
|
|
294
|
-
disabledField = [],
|
|
295
|
-
isRestoreDefault = true
|
|
296
|
-
} = item;
|
|
297
|
-
let fieldLists = [[], hideField, requiredField, notRequiredField, enabledField, disabledField];
|
|
298
|
-
const checkArr = [fieldLists];
|
|
299
|
-
checkArr.forEach((c) => {
|
|
300
|
-
checkList(c);
|
|
301
|
-
});
|
|
302
|
-
let falg = false;
|
|
303
|
-
falg = FlagList.every((f) => f);
|
|
304
|
-
if (falg) {
|
|
305
|
-
showField.forEach((el) => {
|
|
306
|
-
let findItem = handleGetItem(fieldObj, el);
|
|
307
|
-
handleSetItem(findItem, configList[0]);
|
|
308
|
-
resetObj[el] = false;
|
|
309
|
-
});
|
|
310
|
-
fieldLists.forEach((f, j) => {
|
|
311
|
-
f.forEach((el) => {
|
|
312
|
-
let findItem = handleGetItem(fieldObj, el);
|
|
313
|
-
if (findItem) {
|
|
314
|
-
let { key, value } = configList[j];
|
|
315
|
-
if (key === "is_show" && value === false) {
|
|
316
|
-
resetObj[el] = !(isRestoreDefault !== void 0 && !isRestoreDefault);
|
|
317
|
-
resetType[el] = findItem.html_type;
|
|
318
|
-
}
|
|
319
|
-
handleSetItem(findItem, configList[j]);
|
|
320
|
-
}
|
|
321
|
-
});
|
|
322
|
-
});
|
|
323
|
-
}
|
|
324
|
-
resetFields(resetObj, resetType, formData);
|
|
325
|
-
});
|
|
326
|
-
}
|
|
327
|
-
function resetFields(resetObj, resetType, formData) {
|
|
328
|
-
let fieldObj = formData.__fieldObj__ || {};
|
|
329
|
-
Object.keys(resetObj || {}).forEach((v) => {
|
|
330
|
-
if (resetObj[v]) {
|
|
331
|
-
let defObj = fieldObj[v].__defObj__ || {};
|
|
332
|
-
if (resetType[v] != "SEARCH") {
|
|
333
|
-
let errKey = handleGetErrKey(fieldObj[v]);
|
|
334
|
-
formData[v] = defObj.defVal;
|
|
335
|
-
fieldObj[v][errKey] = void 0;
|
|
336
|
-
} else {
|
|
337
|
-
if (formData[v] != defObj.defVal && resetType[v] == "SEARCH") {
|
|
338
|
-
if (!formData[v] && !defObj.defVal)
|
|
339
|
-
return;
|
|
340
|
-
let errKey = handleGetErrKey(fieldObj[v]);
|
|
341
|
-
formData[v] = defObj.defVal;
|
|
342
|
-
fieldObj[v][errKey] = void 0;
|
|
343
|
-
}
|
|
344
|
-
}
|
|
345
|
-
}
|
|
346
|
-
});
|
|
347
|
-
}
|
|
348
|
-
function handleGetErrKey(field = {}) {
|
|
349
|
-
return `__${field.val_key}-errorMsg__`;
|
|
350
|
-
}
|
|
351
|
-
function handleGetItem(fieldObj, el) {
|
|
352
|
-
return fieldObj[el];
|
|
353
|
-
}
|
|
354
|
-
function handleSetItem(findItem, config) {
|
|
355
|
-
if (!((findItem == null ? void 0 : findItem.val_key) || ""))
|
|
356
|
-
return;
|
|
357
|
-
const { key, value } = config;
|
|
358
|
-
let flagVal = value ? 1 : 0;
|
|
359
|
-
findItem && (findItem[key] = flagVal);
|
|
360
|
-
}
|
|
361
|
-
function handleGetFlagRes(list, formData = {}) {
|
|
362
|
-
let FlagList = [];
|
|
363
|
-
if (!Array.isArray(list))
|
|
364
|
-
return FlagList;
|
|
365
|
-
list.forEach((ele) => {
|
|
366
|
-
if (!handleCheckFlag(ele, formData)) {
|
|
367
|
-
FlagList.push(false);
|
|
368
|
-
} else {
|
|
369
|
-
FlagList.push(true);
|
|
370
|
-
}
|
|
371
|
-
});
|
|
372
|
-
return FlagList;
|
|
373
|
-
}
|
|
374
|
-
function handleCheckFlag(data = {}, formData = {}) {
|
|
375
|
-
var _a, _b;
|
|
376
|
-
const is_number = (val) => !(parseFloat(Number(val) + "").toString() == "NaN");
|
|
377
|
-
const all_number = (a, b) => is_number(a) && is_number(b);
|
|
378
|
-
let obj = {
|
|
379
|
-
table: {
|
|
380
|
-
...formData
|
|
381
|
-
},
|
|
382
|
-
form: {
|
|
383
|
-
...formData
|
|
384
|
-
},
|
|
385
|
-
sys: ((_b = (_a = props == null ? void 0 : props.userInfo) == null ? void 0 : _a.map) == null ? void 0 : _b.sysParams) || {},
|
|
386
|
-
db: props.dbParams || {}
|
|
387
|
-
};
|
|
388
|
-
const field_key = data.field_key;
|
|
389
|
-
let field_val = typeof field_key === "string" && /\${(.*?)}/g.test(field_key) ? vexutils.handleSysParams(field_key, obj) : formData[field_key];
|
|
390
|
-
let data_value = typeof data.value === "string" ? vexutils.handleSysParams(data.value, obj) : data.value;
|
|
391
|
-
if (data.con == "EQ") {
|
|
392
|
-
return field_val == data_value;
|
|
393
|
-
} else if (data.con == "NEQ") {
|
|
394
|
-
return field_val != data_value;
|
|
395
|
-
} else if (data.con == "NULL") {
|
|
396
|
-
return !field_val && String(field_val) !== "0";
|
|
397
|
-
} else if (data.con == "NOT_NULL") {
|
|
398
|
-
return !!field_val || String(field_val) === "0";
|
|
399
|
-
} else if (data.con == "CL") {
|
|
400
|
-
return field_val && field_val.includes(data_value);
|
|
401
|
-
} else if (data.con == "NC") {
|
|
402
|
-
return !field_val || field_val && !field_val.includes(data_value);
|
|
403
|
-
} else if (data.con == "BIG") {
|
|
404
|
-
if (all_number(field_val, data_value)) {
|
|
405
|
-
return +field_val > +data_value;
|
|
406
|
-
}
|
|
407
|
-
} else if (data.con == "BIGEQ") {
|
|
408
|
-
if (all_number(field_val, data_value)) {
|
|
409
|
-
return +field_val >= +data_value;
|
|
410
|
-
}
|
|
411
|
-
} else if (data.con == "LESS") {
|
|
412
|
-
if (all_number(field_val, data_value)) {
|
|
413
|
-
return +field_val < +data_value;
|
|
414
|
-
}
|
|
415
|
-
} else if (data.con == "LESSEQ") {
|
|
416
|
-
if (all_number(field_val, data_value)) {
|
|
417
|
-
return +field_val <= +data_value;
|
|
418
|
-
}
|
|
419
|
-
}
|
|
420
|
-
}
|
|
421
|
-
watch(() => props.columnConfig, (config) => {
|
|
422
|
-
if (!config || !Object.keys(config).length)
|
|
423
|
-
return;
|
|
424
|
-
loadColumn();
|
|
425
|
-
});
|
|
426
|
-
watch(() => props.data, (value) => {
|
|
427
|
-
if (!value || !value.length) {
|
|
428
|
-
isShowEmpty.value = true;
|
|
429
|
-
}
|
|
430
|
-
loadData(value);
|
|
431
|
-
});
|
|
432
|
-
onMounted(() => {
|
|
433
|
-
if (!props.isOnlyDisplay)
|
|
434
|
-
return;
|
|
435
|
-
loadColumn(props.columnConfig);
|
|
436
|
-
loadData(props.data);
|
|
437
|
-
});
|
|
438
|
-
return (_ctx, _cache) => {
|
|
439
|
-
return openBlock(), createElementBlock("div", {
|
|
440
|
-
class: normalizeClass(["formTable-page", { "formTable-page-disabled--detail": __props.isDetail }]),
|
|
441
|
-
style: normalizeStyle({ height: unref(tableHeight) + "px", minHeight: unref(minHeight), maxHeight: unref(maxHeight) })
|
|
442
|
-
}, [
|
|
443
|
-
createVNode(unref(CGrid), {
|
|
444
|
-
ref_key: "formTableGridRef",
|
|
445
|
-
ref: formTableGridRef,
|
|
446
|
-
style: { height: "100%" },
|
|
447
|
-
border: "",
|
|
448
|
-
"show-header-overflow": "",
|
|
449
|
-
"highlight-hover-row": "",
|
|
450
|
-
"highlight-current-row": "",
|
|
451
|
-
"show-footer-overflow": "title",
|
|
452
|
-
height: "auto",
|
|
453
|
-
resizable: "",
|
|
454
|
-
"auto-resize": "",
|
|
455
|
-
"row-id": unref(handleRowId),
|
|
456
|
-
"row-key": true,
|
|
457
|
-
"checkbox-config": {
|
|
458
|
-
trigger: "cell",
|
|
459
|
-
reserve: true,
|
|
460
|
-
highlight: true
|
|
461
|
-
},
|
|
462
|
-
onCellClick: handlerClickRow
|
|
463
|
-
}, {
|
|
464
|
-
empty: withCtx(() => [
|
|
465
|
-
isShowEmpty.value ? (openBlock(), createElementBlock("div", _hoisted_1, "\u6682\u65E0\u6570\u636E")) : createCommentVNode("v-if", true)
|
|
466
|
-
]),
|
|
467
|
-
_: 1
|
|
468
|
-
}, 8, ["row-id"])
|
|
469
|
-
], 6);
|
|
470
|
-
};
|
|
471
|
-
}
|
|
472
|
-
});
|
|
473
|
-
|
|
474
|
-
export { script as default };
|