m-eleplus-crud 0.0.2 → 0.0.3

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.
Files changed (36) hide show
  1. package/dist/index.full.js +1 -1
  2. package/dist/index.full.min.js +1 -1
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +1 -1
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +1 -1
  7. package/es/index.mjs +2 -2
  8. package/es/packages/components/dialog/index.mjs +2 -2
  9. package/es/packages/components/dialog/src/dialog.mjs +75 -116
  10. package/es/packages/components/dialog/src/dialog.mjs.map +1 -1
  11. package/es/packages/components/dialog/src/dialog2.mjs +116 -75
  12. package/es/packages/components/dialog/src/dialog2.mjs.map +1 -1
  13. package/es/packages/components/form/index.mjs +2 -2
  14. package/es/packages/components/form/src/form.mjs +622 -25
  15. package/es/packages/components/form/src/form.mjs.map +1 -1
  16. package/es/packages/components/form/src/form2.mjs +25 -622
  17. package/es/packages/components/form/src/form2.mjs.map +1 -1
  18. package/es/packages/components/index.mjs +2 -2
  19. package/es/packages/components/table/src/table2.mjs +1 -1
  20. package/es/packages/components/table/src/table2.mjs.map +1 -1
  21. package/lib/index.js +2 -2
  22. package/lib/packages/components/dialog/index.js +2 -2
  23. package/lib/packages/components/dialog/src/dialog.js +76 -116
  24. package/lib/packages/components/dialog/src/dialog.js.map +1 -1
  25. package/lib/packages/components/dialog/src/dialog2.js +116 -76
  26. package/lib/packages/components/dialog/src/dialog2.js.map +1 -1
  27. package/lib/packages/components/form/index.js +2 -2
  28. package/lib/packages/components/form/src/form.js +622 -26
  29. package/lib/packages/components/form/src/form.js.map +1 -1
  30. package/lib/packages/components/form/src/form2.js +26 -622
  31. package/lib/packages/components/form/src/form2.js.map +1 -1
  32. package/lib/packages/components/index.js +2 -2
  33. package/lib/packages/components/table/src/table2.js +1 -1
  34. package/lib/packages/components/table/src/table2.js.map +1 -1
  35. package/package.json +1 -1
  36. package/web-types.json +1 -1
@@ -1,30 +1,627 @@
1
- import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
2
- import { useSizeProp } from '../../../hooks/use-size/index.mjs';
1
+ import { defineComponent, useSlots, ref, computed, watch, resolveComponent, openBlock, createElementBlock, createCommentVNode, createBlock, unref, withModifiers, withCtx, createVNode, Fragment, renderList, renderSlot, mergeProps, createTextVNode, toDisplayString, createElementVNode, normalizeStyle } from 'vue';
2
+ import { get, set, cloneDeep } from 'lodash-unified';
3
+ import { formProps, formEmits } from './form2.mjs';
4
+ import _export_sfc from '../../../../_virtual/plugin-vue_export-helper.mjs';
5
+ import { useGlobalConfig } from '../../config-provider/src/hooks/use-global-config.mjs';
6
+ import { debugWarn } from '../../../utils/error.mjs';
3
7
 
4
- const formProps = buildProps({
5
- size: useSizeProp,
6
- model: {
7
- type: Object,
8
- required: true
9
- },
10
- loading: {
11
- type: Boolean,
12
- default: false
13
- },
14
- permission: {
15
- type: Object,
16
- default: {}
17
- },
18
- readonly: {
19
- type: Boolean,
20
- default: false
21
- },
22
- option: {
23
- type: definePropType(Object),
24
- required: false
8
+ const COMPONENT_NAME = "MForm";
9
+ const __default__ = defineComponent({
10
+ name: COMPONENT_NAME
11
+ });
12
+ const _sfc_main = defineComponent({
13
+ ...__default__,
14
+ props: formProps,
15
+ emits: formEmits,
16
+ setup(__props, { expose: __expose }) {
17
+ const props = __props;
18
+ const slots = useSlots();
19
+ const globalConfig = useGlobalConfig();
20
+ const formRef = ref();
21
+ const INPUT_TYPES = [
22
+ "input",
23
+ "textarea",
24
+ "number",
25
+ "password",
26
+ "qrcode",
27
+ "barcode"
28
+ ];
29
+ const DATE_TYPES = [
30
+ "year",
31
+ "month",
32
+ "date",
33
+ "datetime",
34
+ "week",
35
+ "datetimerange",
36
+ "daterange",
37
+ "monthrange",
38
+ "yearrange",
39
+ "time",
40
+ "timerange"
41
+ ];
42
+ const NEED_DIC_TYPE = ["select", "checkbox", "radio", "switch"];
43
+ const formOption = ref({
44
+ labelWidth: "80px",
45
+ column: []
46
+ });
47
+ const detailTableRows = computed(() => {
48
+ const rows = [];
49
+ let currentRow = [];
50
+ let currentTotal = 0;
51
+ for (const item of formOption.value.column || []) {
52
+ const req = item.span || 12;
53
+ if (currentTotal + req > 24) {
54
+ rows.push(currentRow);
55
+ currentRow = [];
56
+ currentTotal = 0;
57
+ }
58
+ currentRow.push(item);
59
+ currentTotal += req;
60
+ }
61
+ if (currentRow.length)
62
+ rows.push(currentRow);
63
+ return rows;
64
+ });
65
+ const proxys = new Proxy(props.model, {
66
+ get(target, property) {
67
+ return get(target, property);
68
+ },
69
+ set(target, property, value) {
70
+ set(target, property, value);
71
+ return true;
72
+ }
73
+ });
74
+ const initValue = () => {
75
+ var _a;
76
+ if (formOption.value && formOption.value.column) {
77
+ for (let i = 0; i < ((_a = formOption.value.column) == null ? void 0 : _a.length); i++) {
78
+ const column = formOption.value.column[i];
79
+ if (column.prop && proxys[column.prop] === void 0) {
80
+ if (column.value) {
81
+ proxys[column.prop] = column.value;
82
+ } else {
83
+ const ARR_TYPES = [
84
+ "checkbox",
85
+ "datetimerange",
86
+ "daterange",
87
+ "monthrange",
88
+ "yearrange",
89
+ "timerange"
90
+ ];
91
+ if (column.type === "select" && column.multiple || ARR_TYPES.includes(column.type || "")) {
92
+ proxys[column.prop] = [];
93
+ } else {
94
+ proxys[column.prop] = "";
95
+ }
96
+ }
97
+ }
98
+ }
99
+ }
100
+ };
101
+ const getValueFormatByType = (type) => {
102
+ let format = "";
103
+ switch (type) {
104
+ case "yearrange":
105
+ case "year":
106
+ format = "YYYY";
107
+ break;
108
+ case "monthrange":
109
+ case "month":
110
+ format = "YYYY-MM";
111
+ break;
112
+ case "daterange":
113
+ case "week":
114
+ case "date":
115
+ format = "YYYY-MM-DD";
116
+ break;
117
+ case "datetimerange":
118
+ case "datetime":
119
+ format = "YYYY-MM-DD HH:mm:ss";
120
+ break;
121
+ case "time":
122
+ format = "HH:mm:ss";
123
+ break;
124
+ }
125
+ return format;
126
+ };
127
+ const getAllRemoteDics = () => {
128
+ var _a, _b, _c, _d;
129
+ const hasDicUrl = (_b = (_a = formOption.value) == null ? void 0 : _a.column) == null ? void 0 : _b.some((column) => column.dicUrl);
130
+ if (hasDicUrl && !((_c = globalConfig.value) == null ? void 0 : _c.httpGet)) {
131
+ debugWarn("MForm", "global config httpGet is null");
132
+ return;
133
+ }
134
+ const updateRemoteDic = (column) => {
135
+ return new Promise((resolve) => {
136
+ let isSuccess = false;
137
+ globalConfig.value.httpGet(column.dicUrl, column.dicQuery, column.dicHeaders).then((e) => {
138
+ const { list, label, value } = column.dicFormatter(e);
139
+ if (list && Array.isArray(list)) {
140
+ column["dicData"] = list.map((item) => {
141
+ const lastLabel = label.replace(/\{(\w+)\}/g, (match, key) => {
142
+ return item[key] || match;
143
+ });
144
+ return {
145
+ label: lastLabel,
146
+ value: item[value]
147
+ };
148
+ });
149
+ isSuccess = true;
150
+ }
151
+ }).finally(() => {
152
+ if (!isSuccess) {
153
+ column["dicData"] = [];
154
+ }
155
+ resolve(null);
156
+ });
157
+ });
158
+ };
159
+ for (let i = 0; i < (((_d = formOption.value) == null ? void 0 : _d.column) || []).length; i++) {
160
+ const column = formOption.value.column[i];
161
+ if (column.dicUrl) {
162
+ if (!column.dicFormatter) {
163
+ debugWarn("MForm", "dicUrl and dicFormatter must be used together");
164
+ continue;
165
+ }
166
+ updateRemoteDic(column);
167
+ }
168
+ }
169
+ };
170
+ const formatDicValue = (row, column) => {
171
+ let dictLabel = "";
172
+ const findLabelByValue = (dicData, value) => {
173
+ const dictItem = (dicData || []).find((dict) => dict.value === value);
174
+ if (dictItem === void 0) {
175
+ return dictLabel;
176
+ }
177
+ return dictItem.label;
178
+ };
179
+ if (column.type === "select" && column.multiple || column.type === "checkbox") {
180
+ let values = [];
181
+ if (row[column.prop || ""] != null && row[column.prop || ""] != void 0 && row[column.prop || ""] !== "") {
182
+ if (Array.isArray(row[column.prop || ""])) {
183
+ values = row[column.prop || ""];
184
+ } else if (typeof row[column.prop || ""] === "string") {
185
+ values = row[column.prop || ""].split(",");
186
+ } else {
187
+ values = [row[column.prop || ""]];
188
+ }
189
+ }
190
+ const result = [];
191
+ for (const value of values) {
192
+ dictLabel = findLabelByValue(column.dicData || [], value);
193
+ if (dictLabel === void 0) {
194
+ break;
195
+ }
196
+ result.push(dictLabel);
197
+ }
198
+ return result.join(",");
199
+ }
200
+ dictLabel = findLabelByValue(column.dicData || [], row[column.prop || ""]);
201
+ return dictLabel;
202
+ };
203
+ const getDetailPic = (row, column) => {
204
+ if (!row || !row[column.prop || ""]) {
205
+ return [];
206
+ }
207
+ const pics = row[column.prop || ""].split(column.imgSuffix || ";").map((pic) => (column.imgPrefix || "") + pic);
208
+ return pics;
209
+ };
210
+ const getValueColspan = (item, rows, index) => {
211
+ const getRemaining = (row) => {
212
+ const used = row.reduce((acc, item2) => acc + (item2.span || 12), 0);
213
+ return 24 - used;
214
+ };
215
+ if (index === rows.length - 1) {
216
+ return (item.span || 12) + getRemaining(rows) - 1;
217
+ }
218
+ return (item.span || 12) - 1;
219
+ };
220
+ const validForm = () => {
221
+ return new Promise((resolve) => {
222
+ formRef.value.validate((valid) => {
223
+ resolve(valid);
224
+ });
225
+ });
226
+ };
227
+ const clear = () => {
228
+ var _a, _b;
229
+ (_a = formRef.value) == null ? void 0 : _a.clearValidate();
230
+ (_b = formRef.value) == null ? void 0 : _b.resetFields();
231
+ };
232
+ watch(
233
+ () => props.option,
234
+ (newVal) => {
235
+ if (newVal) {
236
+ formOption.value = Object.assign({}, formOption.value, newVal);
237
+ if (newVal.column) {
238
+ formOption.value.column = cloneDeep(
239
+ newVal.column.filter(
240
+ (column) => !(props.permission[column.prop || ""] === false)
241
+ ).sort((a, b) => (b.order || 0) - (a.order || 0))
242
+ );
243
+ getAllRemoteDics();
244
+ if (!props.readonly) {
245
+ initValue();
246
+ }
247
+ }
248
+ }
249
+ },
250
+ {
251
+ immediate: true,
252
+ deep: true
253
+ }
254
+ );
255
+ __expose({
256
+ validForm,
257
+ clear
258
+ });
259
+ return (_ctx, _cache) => {
260
+ const _component_el_input = resolveComponent("el-input");
261
+ const _component_el_option = resolveComponent("el-option");
262
+ const _component_el_select = resolveComponent("el-select");
263
+ const _component_el_radio = resolveComponent("el-radio");
264
+ const _component_el_radio_group = resolveComponent("el-radio-group");
265
+ const _component_el_checkbox = resolveComponent("el-checkbox");
266
+ const _component_el_checkbox_group = resolveComponent("el-checkbox-group");
267
+ const _component_el_switch = resolveComponent("el-switch");
268
+ const _component_el_date_picker = resolveComponent("el-date-picker");
269
+ const _component_el_time_picker = resolveComponent("el-time-picker");
270
+ const _component_el_form_item = resolveComponent("el-form-item");
271
+ const _component_el_col = resolveComponent("el-col");
272
+ const _component_el_row = resolveComponent("el-row");
273
+ const _component_el_form = resolveComponent("el-form");
274
+ const _component_MPicture = resolveComponent("MPicture");
275
+ const _component_MQrcode = resolveComponent("MQrcode");
276
+ const _component_MBarcode = resolveComponent("MBarcode");
277
+ return openBlock(), createElementBlock("div", { class: "m-form" }, [
278
+ createCommentVNode("\u7F16\u8F91\u6A21\u5F0F"),
279
+ !_ctx.readonly ? (openBlock(), createBlock(_component_el_form, {
280
+ key: 0,
281
+ ref_key: "formRef",
282
+ ref: formRef,
283
+ model: unref(proxys),
284
+ disabled: _ctx.loading,
285
+ size: _ctx.size || unref(globalConfig).size,
286
+ "label-width": formOption.value.labelWidth,
287
+ style: { "width": "100%" },
288
+ onSubmit: withModifiers(() => {
289
+ }, ["prevent"])
290
+ }, {
291
+ default: withCtx(() => [
292
+ createVNode(_component_el_row, { gutter: 0 }, {
293
+ default: withCtx(() => [
294
+ (openBlock(true), createElementBlock(
295
+ Fragment,
296
+ null,
297
+ renderList(formOption.value.column, (column, columnIndex) => {
298
+ return openBlock(), createBlock(_component_el_col, {
299
+ key: columnIndex,
300
+ span: column.span || 12
301
+ }, {
302
+ default: withCtx(() => [
303
+ createVNode(_component_el_form_item, {
304
+ style: { "width": "100%" },
305
+ label: column.label + ":",
306
+ prop: column.prop,
307
+ rules: column.rules,
308
+ "label-width": column.labelWidth || formOption.value.labelWidth
309
+ }, {
310
+ default: withCtx(() => [
311
+ createCommentVNode("\u63D2\u69FD\u4FE1\u606F"),
312
+ unref(slots)[column.prop || ""] ? renderSlot(_ctx.$slots, column.prop, mergeProps({
313
+ key: 0,
314
+ ref_for: true
315
+ }, { size: _ctx.size || unref(globalConfig).size, loading: _ctx.loading })) : !column.type || INPUT_TYPES.includes(column.type) ? (openBlock(), createElementBlock(
316
+ Fragment,
317
+ { key: 1 },
318
+ [
319
+ createCommentVNode(""),
320
+ createCommentVNode("\u8F93\u5165\u6846"),
321
+ createVNode(_component_el_input, {
322
+ modelValue: unref(proxys)[column.prop || ""],
323
+ "onUpdate:modelValue": ($event) => unref(proxys)[column.prop || ""] = $event,
324
+ modelModifiers: { trim: true },
325
+ style: { "width": "100%" },
326
+ placeholder: column.placeholder,
327
+ maxlength: column.maxlength,
328
+ "show-word-limit": column.showWordLimit,
329
+ "show-password": column.showPassword,
330
+ type: !column.type || column.type === "input" ? "text" : column.type
331
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "placeholder", "maxlength", "show-word-limit", "show-password", "type"])
332
+ ],
333
+ 2112
334
+ )) : column.type === "select" ? (openBlock(), createElementBlock(
335
+ Fragment,
336
+ { key: 2 },
337
+ [
338
+ createCommentVNode(""),
339
+ createCommentVNode("\u4E0B\u62C9\u6846"),
340
+ createVNode(_component_el_select, {
341
+ modelValue: unref(proxys)[column.prop || ""],
342
+ "onUpdate:modelValue": ($event) => unref(proxys)[column.prop || ""] = $event,
343
+ modelModifiers: { trim: true },
344
+ style: { "width": "100%" },
345
+ placeholder: column.placeholder,
346
+ multiple: column.multiple,
347
+ clearable: column.clearable,
348
+ filterable: column.filterable,
349
+ "filter-method": column.filterMethod,
350
+ remote: column.remote,
351
+ "remote-method": column.remoteMethod,
352
+ loading: column.loading
353
+ }, {
354
+ default: withCtx(() => [
355
+ (openBlock(true), createElementBlock(
356
+ Fragment,
357
+ null,
358
+ renderList(column.dicData || [], (dicItem, dicIndex) => {
359
+ return openBlock(), createBlock(_component_el_option, {
360
+ key: dicIndex,
361
+ label: dicItem.label,
362
+ value: dicItem.value
363
+ }, null, 8, ["label", "value"]);
364
+ }),
365
+ 128
366
+ ))
367
+ ]),
368
+ _: 2
369
+ }, 1032, ["modelValue", "onUpdate:modelValue", "placeholder", "multiple", "clearable", "filterable", "filter-method", "remote", "remote-method", "loading"])
370
+ ],
371
+ 2112
372
+ )) : column.type === "radio" ? (openBlock(), createElementBlock(
373
+ Fragment,
374
+ { key: 3 },
375
+ [
376
+ createCommentVNode(""),
377
+ createCommentVNode("radio"),
378
+ createVNode(_component_el_radio_group, {
379
+ modelValue: unref(proxys)[column.prop || ""],
380
+ "onUpdate:modelValue": ($event) => unref(proxys)[column.prop || ""] = $event,
381
+ style: { "width": "100%" }
382
+ }, {
383
+ default: withCtx(() => [
384
+ (openBlock(true), createElementBlock(
385
+ Fragment,
386
+ null,
387
+ renderList(column.dicData || [], (dicItem, dicIndex) => {
388
+ return openBlock(), createBlock(_component_el_radio, {
389
+ key: dicIndex,
390
+ value: dicItem.value,
391
+ label: dicItem.value
392
+ }, {
393
+ default: withCtx(() => [
394
+ createTextVNode(
395
+ toDisplayString(dicItem.label),
396
+ 1
397
+ )
398
+ ]),
399
+ _: 2
400
+ }, 1032, ["value", "label"]);
401
+ }),
402
+ 128
403
+ ))
404
+ ]),
405
+ _: 2
406
+ }, 1032, ["modelValue", "onUpdate:modelValue"])
407
+ ],
408
+ 2112
409
+ )) : column.type === "checkbox" ? (openBlock(), createElementBlock(
410
+ Fragment,
411
+ { key: 4 },
412
+ [
413
+ createCommentVNode(""),
414
+ createCommentVNode("checkbox"),
415
+ createVNode(_component_el_checkbox_group, {
416
+ modelValue: unref(proxys)[column.prop || ""],
417
+ "onUpdate:modelValue": ($event) => unref(proxys)[column.prop || ""] = $event,
418
+ style: { "width": "100%" }
419
+ }, {
420
+ default: withCtx(() => [
421
+ (openBlock(true), createElementBlock(
422
+ Fragment,
423
+ null,
424
+ renderList(column.dicData || [], (dicItem, dicIndex) => {
425
+ return openBlock(), createBlock(_component_el_checkbox, {
426
+ key: dicIndex,
427
+ label: dicItem.label,
428
+ value: dicItem.value
429
+ }, null, 8, ["label", "value"]);
430
+ }),
431
+ 128
432
+ ))
433
+ ]),
434
+ _: 2
435
+ }, 1032, ["modelValue", "onUpdate:modelValue"])
436
+ ],
437
+ 2112
438
+ )) : column.type === "switch" ? (openBlock(), createElementBlock(
439
+ Fragment,
440
+ { key: 5 },
441
+ [
442
+ createCommentVNode(""),
443
+ createCommentVNode("switch"),
444
+ !column.dicData || column.dicData.length != 2 ? (openBlock(), createElementBlock("span", {
445
+ key: 0,
446
+ style: { "color": "var(--el-text-color-placeholder)", "line-height": "32px", "height": "32px" }
447
+ }, '"dicData/dicUrl\u7684\u7ED3\u679C"\u672A\u8BBE\u7F6E\u6216\u957F\u5EA6\u4E0D\u7B49\u4E8E2')) : (openBlock(), createElementBlock(
448
+ Fragment,
449
+ { key: 1 },
450
+ [
451
+ createVNode(_component_el_switch, {
452
+ modelValue: unref(proxys)[column.prop || ""],
453
+ "onUpdate:modelValue": ($event) => unref(proxys)[column.prop || ""] = $event,
454
+ "active-value": column.dicData[0].value,
455
+ "inactive-value": column.dicData[1].value
456
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "active-value", "inactive-value"]),
457
+ createElementVNode(
458
+ "span",
459
+ { style: { "font-size": "var(--el-font-size-base)", "color": "var(--el-text-color-regular)", "margin-left": "6px" } },
460
+ toDisplayString(unref(proxys)[column.prop || ""] === column.dicData[0].value ? column.dicData[0].label : column.dicData[1].label),
461
+ 1
462
+ )
463
+ ],
464
+ 64
465
+ ))
466
+ ],
467
+ 64
468
+ )) : DATE_TYPES.includes(column.type) ? (openBlock(), createElementBlock(
469
+ Fragment,
470
+ { key: 6 },
471
+ [
472
+ createCommentVNode(""),
473
+ createCommentVNode("\u65F6\u95F4"),
474
+ column.type !== "time" && column.type !== "timerange" ? (openBlock(), createBlock(_component_el_date_picker, {
475
+ key: 0,
476
+ modelValue: unref(proxys)[column.prop || ""],
477
+ "onUpdate:modelValue": ($event) => unref(proxys)[column.prop || ""] = $event,
478
+ type: column.type,
479
+ clearable: column.clearable,
480
+ "start-placeholder": column.startPlaceholder,
481
+ "end-placeholder": column.endPlaceholder,
482
+ format: column.format,
483
+ "value-format": column.valueFormat || getValueFormatByType(column.type)
484
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "type", "clearable", "start-placeholder", "end-placeholder", "format", "value-format"])) : (openBlock(), createBlock(_component_el_time_picker, {
485
+ key: 1,
486
+ modelValue: unref(proxys)[column.prop || ""],
487
+ "onUpdate:modelValue": ($event) => unref(proxys)[column.prop || ""] = $event,
488
+ "is-range": column.type === "timerange",
489
+ clearable: column.clearable,
490
+ "start-placeholder": column.startPlaceholder,
491
+ "end-placeholder": column.endPlaceholder,
492
+ "value-format": column.valueFormat || getValueFormatByType(column.type)
493
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "is-range", "clearable", "start-placeholder", "end-placeholder", "value-format"]))
494
+ ],
495
+ 64
496
+ )) : column.type === "picture" ? (openBlock(), createElementBlock(
497
+ Fragment,
498
+ { key: 7 },
499
+ [
500
+ createCommentVNode(""),
501
+ createCommentVNode("picture"),
502
+ createElementVNode("span", { style: { "color": "var(--el-text-color-regular)", "line-height": "32px", "height": "32px" } }, " \u6682\u4E0D\u652F\u6301picture\uFF0C\u8BF7\u4F7F\u7528\u63D2\u69FD\u81EA\u884C\u5B9E\u73B0 ")
503
+ ],
504
+ 2112
505
+ )) : createCommentVNode("v-if", true),
506
+ createCommentVNode("")
507
+ ]),
508
+ _: 2
509
+ }, 1032, ["label", "prop", "rules", "label-width"])
510
+ ]),
511
+ _: 2
512
+ }, 1032, ["span"]);
513
+ }),
514
+ 128
515
+ ))
516
+ ]),
517
+ _: 3
518
+ })
519
+ ]),
520
+ _: 3
521
+ }, 8, ["model", "disabled", "size", "label-width", "onSubmit"])) : (openBlock(), createElementBlock(
522
+ Fragment,
523
+ { key: 1 },
524
+ [
525
+ createCommentVNode(""),
526
+ createCommentVNode("\u8BE6\u60C5\u6A21\u5F0F"),
527
+ createElementVNode("table", { class: "detail-desc" }, [
528
+ createElementVNode("tbody", null, [
529
+ (openBlock(true), createElementBlock(
530
+ Fragment,
531
+ null,
532
+ renderList(detailTableRows.value, (row, rowIndex) => {
533
+ return openBlock(), createElementBlock("tr", { key: rowIndex }, [
534
+ (openBlock(true), createElementBlock(
535
+ Fragment,
536
+ null,
537
+ renderList(row, (column, index) => {
538
+ return openBlock(), createElementBlock(
539
+ Fragment,
540
+ { key: index },
541
+ [
542
+ createElementVNode(
543
+ "td",
544
+ {
545
+ style: normalizeStyle({ width: column.labelWidth || formOption.value.labelWidth }),
546
+ colspan: "1",
547
+ class: "label"
548
+ },
549
+ toDisplayString(column.label),
550
+ 5
551
+ ),
552
+ createElementVNode("td", {
553
+ colspan: getValueColspan(column, row, index)
554
+ }, [
555
+ column.type === "picture" ? (openBlock(), createBlock(_component_MPicture, {
556
+ key: 0,
557
+ src: getDetailPic(unref(proxys), column)[0],
558
+ "preview-src-list": getDetailPic(unref(proxys), column)[0],
559
+ "img-width": "100px",
560
+ "img-height": "100px"
561
+ }, null, 8, ["src", "preview-src-list"])) : NEED_DIC_TYPE.includes(column.type || "") ? (openBlock(), createElementBlock(
562
+ Fragment,
563
+ { key: 1 },
564
+ [
565
+ createTextVNode(
566
+ toDisplayString(formatDicValue(unref(proxys), column)),
567
+ 1
568
+ )
569
+ ],
570
+ 64
571
+ )) : column.type === "qrcode" ? (openBlock(), createElementBlock(
572
+ Fragment,
573
+ { key: 2 },
574
+ [
575
+ unref(proxys)[column.prop || ""] ? (openBlock(), createBlock(_component_MQrcode, {
576
+ key: 0,
577
+ text: unref(proxys)[column.prop || ""],
578
+ align: "center"
579
+ }, null, 8, ["text"])) : createCommentVNode("v-if", true)
580
+ ],
581
+ 64
582
+ )) : column.type === "barcode" ? (openBlock(), createElementBlock(
583
+ Fragment,
584
+ { key: 3 },
585
+ [
586
+ unref(proxys)[column.prop || ""] ? (openBlock(), createBlock(_component_MBarcode, {
587
+ key: 0,
588
+ text: unref(proxys)[column.prop || ""],
589
+ align: "center"
590
+ }, null, 8, ["text"])) : createCommentVNode("v-if", true)
591
+ ],
592
+ 64
593
+ )) : (openBlock(), createElementBlock(
594
+ Fragment,
595
+ { key: 4 },
596
+ [
597
+ createTextVNode(
598
+ toDisplayString(unref(proxys)[column.prop || ""]),
599
+ 1
600
+ )
601
+ ],
602
+ 64
603
+ ))
604
+ ], 8, ["colspan"])
605
+ ],
606
+ 64
607
+ );
608
+ }),
609
+ 128
610
+ ))
611
+ ]);
612
+ }),
613
+ 128
614
+ ))
615
+ ])
616
+ ])
617
+ ],
618
+ 64
619
+ ))
620
+ ]);
621
+ };
25
622
  }
26
623
  });
27
- const formEmits = {};
624
+ var Form = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "form.vue"]]);
28
625
 
29
- export { formEmits, formProps };
626
+ export { Form as default };
30
627
  //# sourceMappingURL=form.mjs.map