@web-utils/component 4.0.15 → 5.0.0-beta01

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 (307) hide show
  1. package/address-input/index.mjs +76 -76
  2. package/affix/index.mjs +71 -78
  3. package/aside-menu/index.mjs +20 -31
  4. package/avatar/index.mjs +94 -82
  5. package/awesome-button/index.mjs +54 -71
  6. package/capsule-tab/index.mjs +27 -32
  7. package/card/index.mjs +86 -71
  8. package/carousel/index.mjs +45 -34
  9. package/chat/index.mjs +440 -276
  10. package/chunk-file-uploader/index.mjs +2 -445
  11. package/chunk-file-uploader/style.css +1 -1
  12. package/chunks/ChunkFileUploader.C3EA0e5t.mjs +114 -0
  13. package/chunks/EditableTree.C_IJBL5b.mjs +648 -0
  14. package/chunks/ElementBaseInfo.DyuFR6fE.mjs +209 -0
  15. package/chunks/ElementDialog.C0IjriTW.mjs +681 -0
  16. package/chunks/ElementForm.ButuYDPA.mjs +627 -0
  17. package/chunks/ElementListeners.Dg3e_dmp.mjs +656 -0
  18. package/chunks/ElementMultiInstance.Dmi79FqA.mjs +290 -0
  19. package/chunks/ElementOtherConfig.C2AddGTp.mjs +51 -0
  20. package/chunks/ElementProperties.CfV8UF7L.mjs +196 -0
  21. package/chunks/ElementTaskConfig.Bn7ycGGn.mjs +446 -0
  22. package/chunks/FlowCondition.C6PdqOAW.mjs +194 -0
  23. package/chunks/FlowDesigner.uJYFfKpR.mjs +5101 -0
  24. package/chunks/FormBlock.BEENc22F.mjs +117 -0
  25. package/chunks/FormCascader.CaM-oEhv.mjs +1226 -0
  26. package/chunks/FormInputTime.Bg3UIP8H.mjs +1773 -0
  27. package/chunks/FormItem.H9OOvNzT.mjs +90 -0
  28. package/chunks/FormItemGroup.D9eRy-cZ.mjs +147 -0
  29. package/chunks/FormSelect.CanodoAI.mjs +1472 -0
  30. package/chunks/FormSwitch.DTqdaFjv.mjs +296 -0
  31. package/chunks/FormTemp.DiI5EfgK.mjs +139 -0
  32. package/chunks/FyCurd.DMj1dMK9.mjs +2622 -0
  33. package/chunks/FyForm.vgR8ujEF.mjs +904 -0
  34. package/chunks/FyFormDesign.DEWT6LsX.mjs +5600 -0
  35. package/chunks/FyUEditor.D_rEYfll.mjs +221 -0
  36. package/chunks/FyUpload.B2QKfTxF.mjs +504 -0
  37. package/chunks/Keyboard.ItiRy7Gb.mjs +379 -0
  38. package/chunks/MonacoEditor.Bd5Kui-Y.mjs +301 -0
  39. package/chunks/PageableTable.Bujb0NUx.mjs +658 -0
  40. package/chunks/RecordVideo.B35_dLty.mjs +116 -0
  41. package/chunks/SignalAndMessage.CYVzlFuL.mjs +198 -0
  42. package/chunks/SplitPane.Dw96M0Yf.mjs +219 -0
  43. package/chunks/TableColumn.DJYkznbJ.mjs +180 -0
  44. package/chunks/TableView.DyIdIxAg.mjs +484 -0
  45. package/chunks/Toolbar.DHuXJAoG.mjs +219 -0
  46. package/chunks/UserTaskListeners.Bp-2qkHs.mjs +599 -0
  47. package/chunks/VueCron.GfjodnyM.mjs +1766 -0
  48. package/chunks/VueTreeSelect.9Ywl-I8e.mjs +1872 -0
  49. package/chunks/_plugin-vue_export-helper.7vrlOII_.mjs +8 -0
  50. package/chunks/checkbox.emIuFmnt.mjs +437 -0
  51. package/chunks/confirmable-mixin.BBil7dto.mjs +1646 -0
  52. package/chunks/core.DJv6Qrae.mjs +51 -0
  53. package/chunks/dataformat.Bfr4nOcA.mjs +144 -0
  54. package/chunks/dic.DgDfnovD.mjs +116 -0
  55. package/chunks/dictionary.5eKjWeAp.mjs +19 -0
  56. package/chunks/dictionary.DxZxP0ej.mjs +87 -0
  57. package/chunks/event.B4iwtUNO.mjs +4 -0
  58. package/chunks/event.eJ-c1Z3a.mjs +224 -0
  59. package/chunks/focus-trap.DT4GnqQI.mjs +211 -0
  60. package/chunks/form-input.D25eDRMq.mjs +34 -0
  61. package/chunks/form-item.CgmUuw_n.mjs +714 -0
  62. package/chunks/form-pick.Axem0gOO.mjs +7 -0
  63. package/chunks/form-validate.B1KPCHqN.mjs +11 -0
  64. package/chunks/icon.CbS8-322.mjs +259 -0
  65. package/chunks/init.DwpukyOB.mjs +115 -0
  66. package/chunks/input.PejnqwSH.mjs +547 -0
  67. package/chunks/install.yLcn5MLL.mjs +84 -0
  68. package/chunks/message.BCmee5N0.mjs +400 -0
  69. package/chunks/overlay.DubSnqma.mjs +122 -0
  70. package/chunks/packages.BGjydzjm.mjs +56 -0
  71. package/chunks/permission.DgEVNWlh.mjs +16 -0
  72. package/chunks/photo-swipe.BB0SJZg9.mjs +55 -0
  73. package/chunks/radio.BotKXqJr.mjs +274 -0
  74. package/chunks/scroll.CzORc5Zk.mjs +28 -0
  75. package/chunks/scrollbar.CAmrlKi9.mjs +345 -0
  76. package/chunks/slot.C6Ozd2e7.mjs +25 -0
  77. package/chunks/style.BmlGmjpO.mjs +325 -0
  78. package/chunks/sub-table-plus-props.B_lLth3j.mjs +28 -0
  79. package/chunks/tab-mixin.u0EZpx3j.mjs +70 -0
  80. package/chunks/tag.DPi-PLbb.mjs +141 -0
  81. package/chunks/teleport._VGEzK4d.mjs +22 -0
  82. package/chunks/tooltip.D50x7Rva.mjs +1926 -0
  83. package/chunks/typescript.DiWBU4nj.mjs +4 -0
  84. package/chunks/use-aria.BW7nWOl1.mjs +17 -0
  85. package/chunks/use-composition.mUaomyno.mjs +47 -0
  86. package/chunks/use-deprecated.BfDSbZS9.mjs +12 -0
  87. package/chunks/use-empty-values.Dy_r78F6.mjs +263 -0
  88. package/chunks/use-form-item.wsRjehHp.mjs +47 -0
  89. package/chunks/use-global-config.C9hs-O_x.mjs +56 -0
  90. package/chunks/use-id.CFO5NeoV.mjs +15 -0
  91. package/chunks/use-size.DxrwTUwf.mjs +18 -0
  92. package/chunks/util.B3sjVZoZ.mjs +103 -0
  93. package/chunks/util.g-WQEec9.mjs +223 -0
  94. package/chunks/utilSelf.ZED4DmCU.mjs +46 -0
  95. package/chunks/utils.Cs2fYBrT.mjs +60 -0
  96. package/chunks/utils.DsGhtCIO.mjs +14 -0
  97. package/chunks/validator.C4-z_t9p.mjs +5 -0
  98. package/chunks/vnode.D_SioRnx.mjs +14 -0
  99. package/code-mirror-editor/index.mjs +89 -88
  100. package/comment/index.mjs +62 -57
  101. package/configComponents.mjs +40 -50
  102. package/confirm-button/index.mjs +34 -46
  103. package/confirmable/index.mjs +7 -17
  104. package/context-menu/index.mjs +195 -174
  105. package/count-up/index.mjs +97 -105
  106. package/custom-scrollbar/index.mjs +91 -98
  107. package/data-box/index.mjs +64 -47
  108. package/data-card/index.mjs +60 -49
  109. package/data-card-text/index.mjs +63 -51
  110. package/data-display/index.mjs +71 -53
  111. package/data-icons/index.mjs +70 -53
  112. package/data-imgtext/index.mjs +67 -46
  113. package/data-operatext/index.mjs +51 -42
  114. package/data-panel/index.mjs +57 -47
  115. package/data-pay/index.mjs +105 -52
  116. package/data-price/index.mjs +48 -42
  117. package/data-progress/index.mjs +67 -48
  118. package/data-rotate/index.mjs +61 -47
  119. package/data-table-picker/index.mjs +119 -74
  120. package/data-tabs/index.mjs +67 -47
  121. package/dialog-form/index.mjs +139 -89
  122. package/dynamic-table/index.mjs +166 -114
  123. package/e-charts/index.mjs +174 -200
  124. package/easy-popup/index.mjs +91 -102
  125. package/editable-progress/index.mjs +112 -85
  126. package/editable-tree/index.mjs +2 -485
  127. package/element-dialog/index.mjs +2 -307
  128. package/element-listeners/style.css +1 -0
  129. package/element-multi-instance/style.css +1 -0
  130. package/ellipsis/index.mjs +124 -148
  131. package/empty-view/index.mjs +48 -65
  132. package/error-view/index.mjs +39 -51
  133. package/flex-column/index.mjs +32 -51
  134. package/flex-item/index.mjs +54 -64
  135. package/flex-row/index.mjs +32 -39
  136. package/flex-scroller/index.mjs +29 -30
  137. package/flow/index.mjs +240 -248
  138. package/flow-designer/index.mjs +2 -5983
  139. package/flow-designer/style.css +1 -1
  140. package/flow-node/index.mjs +56 -64
  141. package/flow-viewer/index.mjs +159 -157
  142. package/form-block/index.mjs +2 -149
  143. package/form-button/index.mjs +35 -47
  144. package/form-card/index.mjs +14 -25
  145. package/form-cascader/index.mjs +2 -116
  146. package/form-checkbox/index.mjs +89 -71
  147. package/form-checkbox-group/index.mjs +161 -116
  148. package/form-date-picker/index.mjs +155 -144
  149. package/form-holder/index.mjs +137 -110
  150. package/form-input/index.mjs +113 -87
  151. package/form-input-cron-expression/index.mjs +97 -79
  152. package/form-input-email/index.mjs +64 -52
  153. package/form-input-id-card/index.mjs +72 -55
  154. package/form-input-phone-number/index.mjs +71 -57
  155. package/form-input-tag/index.mjs +88 -62
  156. package/form-input-time/index.mjs +2 -74
  157. package/form-item/index.mjs +2 -5
  158. package/form-item-config-provider/index.mjs +46 -60
  159. package/form-item-group/index.mjs +2 -160
  160. package/form-radio-group/index.mjs +161 -122
  161. package/form-select/index.mjs +2 -181
  162. package/form-switch/index.mjs +2 -55
  163. package/form-table/index.mjs +131 -85
  164. package/form-table-plus/index.mjs +164 -109
  165. package/form-textarea/index.mjs +90 -57
  166. package/form-tree-select/index.mjs +89 -72
  167. package/form-tree-select-multiple/index.mjs +92 -78
  168. package/form-view/index.mjs +275 -211
  169. package/fy-array/index.mjs +121 -74
  170. package/fy-article/index.mjs +73 -60
  171. package/fy-cascader/index.mjs +113 -91
  172. package/fy-checkbox/index.mjs +96 -66
  173. package/fy-code/index.mjs +48 -50
  174. package/fy-curd/index.mjs +2 -1903
  175. package/fy-date/index.mjs +76 -42
  176. package/fy-draggable/index.mjs +322 -318
  177. package/fy-dynamic/index.mjs +259 -227
  178. package/fy-empty/index.mjs +35 -36
  179. package/fy-form/index.mjs +2 -17
  180. package/fy-form-design/index.mjs +2 -2890
  181. package/fy-form-design/style.css +1 -1
  182. package/fy-from/crud/zh.d.ts +6 -6
  183. package/fy-input/index.mjs +117 -99
  184. package/fy-input-color/index.mjs +77 -56
  185. package/fy-input-icon/index.mjs +129 -85
  186. package/fy-input-map/index.mjs +242 -186
  187. package/fy-input-number/index.mjs +74 -50
  188. package/fy-input-table/index.mjs +160 -109
  189. package/fy-input-tree/index.mjs +259 -182
  190. package/fy-progress/index.mjs +36 -40
  191. package/fy-radio/index.mjs +53 -38
  192. package/fy-rate/index.mjs +86 -71
  193. package/fy-select/index.mjs +223 -140
  194. package/fy-slider/index.mjs +68 -44
  195. package/fy-switch/index.mjs +67 -42
  196. package/fy-tabs/index.mjs +46 -48
  197. package/fy-time/index.mjs +81 -53
  198. package/fy-title/index.mjs +18 -27
  199. package/fy-tree/index.mjs +382 -292
  200. package/fy-u-editor/index.mjs +2 -357
  201. package/fy-upload/index.mjs +2 -423
  202. package/guide-steps/index.mjs +72 -73
  203. package/helper-function.d.ts +2 -30
  204. package/helper-function.mjs +41 -67
  205. package/highlight-j-s/index.mjs +50 -59
  206. package/icon-card/index.mjs +34 -36
  207. package/icon-temp/index.mjs +27 -27
  208. package/iframe-window/index.mjs +39 -33
  209. package/image-cropper/index.mjs +171 -75
  210. package/image-preview/index.mjs +187 -118
  211. package/image-viewer/index.mjs +69 -66
  212. package/index.d.ts +3 -9
  213. package/index.mjs +173 -488
  214. package/input-number-range/index.mjs +78 -59
  215. package/j-s-x-component/index.mjs +13 -15
  216. package/keyboard/index.mjs +2 -369
  217. package/license/index.mjs +106 -115
  218. package/loading-view/index.mjs +39 -51
  219. package/login/index.mjs +252 -125
  220. package/monaco-editor/index.mjs +2 -7
  221. package/name-avatar/index.mjs +61 -53
  222. package/nav-bar/index.mjs +33 -31
  223. package/not-implement/index.mjs +10 -22
  224. package/notice/index.mjs +100 -94
  225. package/package.json +3 -3
  226. package/page/index.mjs +18 -25
  227. package/page-header/index.mjs +27 -33
  228. package/page-index/index.mjs +121 -100
  229. package/page-index-top/index.mjs +79 -79
  230. package/page-skeleton/index.mjs +48 -45
  231. package/page-skeleton-new/index.mjs +79 -50
  232. package/pageable-table/index.mjs +2 -522
  233. package/pageable-view/index.mjs +279 -275
  234. package/photo-swipe/index.d.ts +4 -0
  235. package/photo-swipe/index.mjs +33 -36
  236. package/picker-table-view/index.mjs +224 -126
  237. package/present-view/index.mjs +266 -200
  238. package/queue/index.mjs +45 -53
  239. package/record-video/index.mjs +2 -134
  240. package/resize-observer/index.mjs +43 -46
  241. package/search/index.mjs +116 -109
  242. package/sign/index.mjs +103 -110
  243. package/sign-panel/index.mjs +182 -141
  244. package/skeleton/index.mjs +51 -54
  245. package/skeleton-panel/index.mjs +33 -38
  246. package/split-pane/index.mjs +3 -197
  247. package/stateful/index.mjs +69 -73
  248. package/static-pageable-table/index.mjs +72 -66
  249. package/sub-table/index.mjs +508 -219
  250. package/sub-table-plus/index.mjs +592 -19
  251. package/swiper/index.mjs +128 -121
  252. package/tab/index.mjs +117 -119
  253. package/tab-item/index.mjs +48 -56
  254. package/table-column/index.mjs +2 -5
  255. package/table-view/index.mjs +3 -334
  256. package/tabs-view/index.mjs +109 -106
  257. package/tag-render/index.mjs +79 -69
  258. package/text-ellipsis/index.mjs +94 -78
  259. package/toolbar/index.mjs +2 -255
  260. package/toolbar-button/index.mjs +145 -121
  261. package/verify/index.mjs +58 -64
  262. package/vue-cron/index.mjs +2 -1188
  263. package/vue-qr-code/index.mjs +30 -54
  264. package/vue-quill-editor/index.mjs +123 -99
  265. package/vue-tags-input/index.mjs +348 -431
  266. package/vue-tree-select/index.mjs +2 -2627
  267. package/vue-video-player/index.mjs +135 -136
  268. package/watermark/index.mjs +46 -74
  269. package/web-types.json +197 -975
  270. package/x-input-tag/index.mjs +144 -109
  271. package/chunks/ElementTaskConfig.AvBOzAni.mjs +0 -325
  272. package/chunks/FormItem.Bhsy_O2B.mjs +0 -372
  273. package/chunks/FyForm.DriwCJ7b.mjs +0 -765
  274. package/chunks/MonacoEditor.D31t4FTy.mjs +0 -327
  275. package/chunks/SignalAndMessage.BpjOoKhK.mjs +0 -92
  276. package/chunks/SubTablePlus.BH0IIv3X.mjs +0 -270
  277. package/chunks/TableColumn.BzivvXMF.mjs +0 -337
  278. package/chunks/_plugin-vue2_normalizer.CeySl7Fu.mjs +0 -10
  279. package/chunks/confirmable-mixin.BFZb6pcK.mjs +0 -86
  280. package/chunks/dataformat.DJoNBlmI.mjs +0 -154
  281. package/chunks/dic.BinnDitI.mjs +0 -128
  282. package/chunks/dictionary.DqiP9x2m.mjs +0 -25
  283. package/chunks/event.DSlcqYHL.mjs +0 -236
  284. package/chunks/form-input.BtS_J5a2.mjs +0 -31
  285. package/chunks/form-pick.BFTIVn_i.mjs +0 -11
  286. package/chunks/form-validate.CVarNHKX.mjs +0 -12
  287. package/chunks/helper.BiMLcEEk.mjs +0 -41
  288. package/chunks/index.BmYCjxZQ.mjs +0 -47
  289. package/chunks/index.CIfe3UB3.mjs +0 -16
  290. package/chunks/index.Cn7aq-Et.mjs +0 -184
  291. package/chunks/init.xOlFpTyZ.mjs +0 -122
  292. package/chunks/packages.ByyangTp.mjs +0 -58
  293. package/chunks/permission.CO31YIkD.mjs +0 -16
  294. package/chunks/slot.DXIbhGat.mjs +0 -27
  295. package/chunks/tab-mixin.BNK6dxLN.mjs +0 -81
  296. package/chunks/util.DI42t5GU.mjs +0 -241
  297. package/color-picker/index.mjs +0 -157
  298. package/egd-collapse/index.mjs +0 -62
  299. package/egd-collapse-item/index.mjs +0 -72
  300. package/form-input-number/index.mjs +0 -70
  301. package/form-input-number/style.css +0 -1
  302. package/input-number/index.mjs +0 -233
  303. package/input-number/style.css +0 -1
  304. package/keep-view-alive/index.mjs +0 -117
  305. package/search-popover/index.mjs +0 -118
  306. package/search-popover/style.css +0 -1
  307. /package/{base.css → utils/style.css} +0 -0
@@ -1,219 +1,508 @@
1
- import d from "../confirmable/index.mjs";
2
- import { T as u, _ as b } from "../chunks/TableColumn.BzivvXMF.mjs";
3
- import c from "../form-textarea/index.mjs";
4
- import f from "../form-input-number/index.mjs";
5
- import h from "../form-checkbox-group/index.mjs";
6
- import y from "../form-cascader/index.mjs";
7
- import g from "../form-date-picker/index.mjs";
8
- import _ from "../form-select/index.mjs";
9
- import v from "../form-input-phone-number/index.mjs";
10
- import I from "../form-input/index.mjs";
11
- import i from "element-ui/lib/button";
12
- import $ from "../confirm-button/index.mjs";
13
- import C from "../pageable-table/index.mjs";
14
- import { findTreeChildren as F, isFunction as A } from "@web-utils/core";
15
- import { cloneDeep as D } from "@web-utils/integrations/lodash";
16
- import { n as T } from "../chunks/_plugin-vue2_normalizer.CeySl7Fu.mjs";
17
- const q = {
18
- name: "SubTable",
19
- emits: ["add-row"],
20
- inject: {
21
- elForm: {
22
- default: ""
23
- },
24
- elFormItem: {
25
- default: ""
26
- }
27
- },
28
- props: {
29
- value: Array,
30
- prop: String,
31
- columns: Array,
32
- limit: {
33
- type: Number,
34
- default: 1 / 0
35
- },
36
- maxLimit: {
37
- type: Number,
38
- default: 1 / 0
39
- },
40
- disabled: Boolean,
41
- showSummary: Boolean,
42
- selectionWidth: String,
43
- allowEmpty: Boolean,
44
- handleColumn: {
45
- type: Boolean,
46
- default: !0
47
- },
48
- editable: Boolean,
49
- fetchApi: Function,
50
- delApi: Function,
51
- showHandleColumnAddButton: {
52
- type: Boolean,
53
- default: !0
54
- },
55
- showEmptyAddButton: {
56
- type: Boolean,
57
- default: !0
58
- }
59
- },
60
- data() {
61
- return {
62
- rows: [],
63
- selectedRows: []
64
- };
65
- },
66
- computed: {
67
- available() {
68
- return this.editable && this.enabled;
69
- },
70
- enabled() {
71
- return !this.disabled;
72
- },
73
- rowProps() {
74
- const n = {};
75
- return this.columns && this.columns.map((e) => e.prop).forEach((e) => {
76
- n[e] = null;
77
- }), n;
78
- },
79
- inputDisabled() {
80
- return this.disabled || (this.elForm || {}).disabled;
81
- }
82
- },
83
- watch: {
84
- value: {
85
- deep: !0,
86
- immediate: !0,
87
- handler(n) {
88
- this.rows = n || [];
89
- }
90
- },
91
- rows: {
92
- deep: !0,
93
- immediate: !0,
94
- handler(n) {
95
- this.$emit("input", n);
96
- }
97
- }
98
- },
99
- methods: {
100
- getCellType(n, e) {
101
- return A(e.getType) ? e.getType(n, e) : e.type;
102
- },
103
- getInputAttr(n, e) {
104
- return { ...e.attrs, ...e.getAttrs ? e.getAttrs(n) : {} };
105
- },
106
- isInputDisabled(n, e) {
107
- return e.isDisabled && e.isDisabled(n);
108
- },
109
- onInput(n, e, a) {
110
- a.setValue ? a.setValue(n, e, a, this.rows) : n[a.prop] = e;
111
- },
112
- onSelectionChange(n) {
113
- this.selectedRows = n;
114
- },
115
- remove(n, e) {
116
- try {
117
- this.rows.splice(e, 1);
118
- } catch {
119
- }
120
- },
121
- add(n, e) {
122
- const a = D(this.rowProps);
123
- this.rows.splice(e + 1, 0, a);
124
- },
125
- addRow() {
126
- this.$emit("add-row");
127
- },
128
- async delRow() {
129
- if (!this.selectedRows.length) {
130
- this.$message.warning("请选择要删除的记录!");
131
- return;
132
- }
133
- try {
134
- if (this.delApi)
135
- try {
136
- await this.delApi(this.selectedRows.map((n) => n.id).join(",")), this.refresh();
137
- } catch {
138
- this.$message.error("删除失败!");
139
- }
140
- else
141
- this.$emit(
142
- "input",
143
- this.rows.filter((n) => !this.selectedRows.includes(n))
144
- );
145
- this.$message.success("删除成功!");
146
- } catch {
147
- }
148
- },
149
- refresh() {
150
- this.$refs.table.getPage();
151
- },
152
- getVal(n, e, a) {
153
- var t, r;
154
- if (a.type === "select" && ((t = a.attrs) != null && t.options)) {
155
- const p = a.attrs.options.find((s) => s.code === n[e.property]);
156
- if (p)
157
- return p.name;
158
- }
159
- if (a.type === "cascader" && ((r = a.attrs) != null && r.options)) {
160
- const [p] = F(a.attrs.options, (s) => s[a.attrs.valueKey || "value"] === n[e.property]);
161
- if (p)
162
- return p[a.attrs.valueKey || "label"];
163
- }
164
- return n[e.property];
165
- }
166
- }
167
- };
168
- var k = function() {
169
- var e = this, a = e._self._c;
170
- return a(C, e._g(e._b({ ref: "table", staticClass: "sub-table", attrs: { "auto-height": "", data: e.rows, api: e.fetchApi, "show-summary": e.showSummary, "selection-width": e.selectionWidth, "hide-on-single-page": "", selection: e.enabled }, on: { "selection-change": e.onSelectionChange }, scopedSlots: e._u([e.editable ? null : { key: "toolbar", fn: function() {
171
- return [e.enabled || e.fetchApi ? a("div", { staticClass: "table-header" }, [e._t("toolbar", function() {
172
- return [e.enabled ? [a(i, { staticClass: "table-header-button add", attrs: { size: "mini", icon: "el-icon-circle-plus", type: "text" }, on: { click: e.addRow } }, [e._v("添加")]), a($, { staticClass: "table-header-button remove", attrs: { size: "mini", message: "您确定要删除选中的记录吗?", icon: "el-icon-error", type: "text" }, on: { click: e.delRow } }, [e._v(" 删除 ")])] : e._e(), e.fetchApi ? a(i, { staticClass: "table-header-button refresh", attrs: { size: "mini", icon: "el-icon-refresh-left", type: "text", disabled: !1 }, on: { click: e.refresh } }, [e._v(" 刷新 ")]) : e._e()];
173
- }, { addRow: e.addRow, delRow: e.delRow, refresh: e.refresh })], 2) : e._e()];
174
- }, proxy: !0 }, e.allowEmpty && !e.inputDisabled && e.showEmptyAddButton ? { key: "empty", fn: function() {
175
- return [a("i", { staticClass: "el-icon-circle-plus sub-table-handle-button table-button-add", staticStyle: { "font-size": "20px", cursor: "pointer" }, attrs: { title: "添加" }, on: { click: function(t) {
176
- return t.stopPropagation(), e.add(null, 0);
177
- } } })];
178
- }, proxy: !0 } : null], null, !0) }, "PageableTable", e.$attrs, !1), e.$listeners), [e._t("columns", function() {
179
- return [e._l(e.columns, function(t) {
180
- return [t.label && !t.hide && !t.slot ? a(u, { key: `${t.prop}-${e.enabled}-${t.type}`, attrs: { label: t.label, width: t.width, align: t.align, prop: t.prop, options: t.options, "show-overflow-tooltip": !e.available && t.showOverflowTooltip }, scopedSlots: e._u([{ key: "header", fn: function() {
181
- return [!e.inputDisabled && t.required ? a("span", { staticStyle: { color: "#f56c6c" } }, [e._v("*")]) : e._e(), e._v(" " + e._s(t.label) + " ")];
182
- }, proxy: !0 }, { key: "default", fn: function({ row: r, column: p, $index: s }) {
183
- return [e._t("tag", null, { row: r, column: p, index: s }), e._t(t.prop, function() {
184
- var o;
185
- return [e.available && e.getCellType(r, t) === "input" ? [a(I, e._b({ attrs: { value: r[p.property], disabled: e.isInputDisabled(r, t), prop: `${e.prop}[${s}].${t.prop}`, required: t.required }, on: { input: (l) => e.onInput(r, l, t) } }, "FormInput", e.getInputAttr(r, t), !1))] : e.available && e.getCellType(r, t) === "inputPhoneNumber" ? [a(v, e._b({ attrs: { value: r[p.property], disabled: e.isInputDisabled(r, t), prop: `${e.prop}[${s}].${t.prop}`, required: t.required }, on: { input: (l) => e.onInput(r, l, t) } }, "FormInputPhoneNumber", e.getInputAttr(r, t), !1))] : e.available && e.getCellType(r, t) === "user" ? [t.single ? a("FormInputUser", e._b({ attrs: { name: r[p.property], disabled: e.isInputDisabled(r, t), prop: `${e.prop}[${s}].${t.prop}`, required: t.required }, on: { "update:name": function(l) {
186
- return e.$set(r, p.property, l);
187
- }, input: (l) => e.onInput(r, l, t) } }, "FormInputUser", e.getInputAttr(r, t), !1)) : a("FormInputUser", e._b({ attrs: { value: r[p.property], disabled: e.isInputDisabled(r, t), prop: `${e.prop}[${s}].${t.prop}`, required: t.required }, on: { input: (l) => e.onInput(r, l, t) } }, "FormInputUser", e.getInputAttr(r, t), !1))] : e.available && e.getCellType(r, t) === "department" ? [t.single ? a("FormInputDepartment", e._b({ attrs: { "ou-type": t.ouType, name: r[p.property], disabled: e.isInputDisabled(r, t), prop: `${e.prop}[${s}].${t.prop}`, required: t.required }, on: { "update:name": function(l) {
188
- return e.$set(r, p.property, l);
189
- }, input: (l) => e.onInput(r, l, t) } }, "FormInputDepartment", e.getInputAttr(r, t), !1)) : a("FormInputDepartment", e._b({ attrs: { value: r[p.property], disabled: e.isInputDisabled(r, t), prop: `${e.prop}[${s}].${t.prop}`, required: t.required }, on: { input: (l) => e.onInput(r, l, t) } }, "FormInputDepartment", e.getInputAttr(r, t), !1))] : e.available && e.getCellType(r, t) === "select" ? [a(_, e._b({ attrs: { value: r[p.property], disabled: e.isInputDisabled(r, t), prop: `${e.prop}[${s}].${t.prop}`, options: t.options, required: t.required }, on: { input: (l) => e.onInput(r, l, t) } }, "FormSelect", e.getInputAttr(r, t), !1))] : e.available && e.getCellType(r, t) === "datePicker" ? [a(g, e._b({ attrs: { value: r[p.property], disabled: e.isInputDisabled(r, t), prop: `${e.prop}[${s}].${t.prop}`, required: t.required, start: r[t.start], end: r[t.end] }, on: { "update:start": function(l) {
190
- return e.$set(r, t.start, l);
191
- }, "update:end": function(l) {
192
- return e.$set(r, t.end, l);
193
- }, input: (l) => e.onInput(r, l, t) } }, "FormDatePicker", e.getInputAttr(r, t), !1))] : e.available && e.getCellType(r, t) === "cascader" ? [a(y, e._b({ attrs: { value: r[p.property], disabled: e.isInputDisabled(r, t), prop: `${e.prop}[${s}].${t.prop}`, required: t.required, "label-key": t.labelKey, "value-key": t.valueKey }, on: { input: (l) => e.onInput(r, l, t) } }, "FormCascader", e.getInputAttr(r, t), !1))] : e.available && e.getCellType(r, t) === "checkbox" ? [a(h, e._b({ attrs: { value: r[p.property], disabled: e.isInputDisabled(r, t), prop: `${e.prop}[${s}].${t.prop}`, required: t.required }, on: { input: (l) => e.onInput(r, l, t) } }, "FormCheckboxGroup", e.getInputAttr(r, t), !1))] : e.available && e.getCellType(r, t) === "number" ? [a(f, e._b({ attrs: { value: r[p.property], disabled: e.isInputDisabled(r, t), prop: `${e.prop}[${s}].${t.prop}`, required: t.required }, on: { input: (l) => e.onInput(r, l, t) } }, "FormInputNumber", e.getInputAttr(r, t), !1))] : e.available && e.getCellType(r, t) === "textarea" ? [a(c, e._b({ attrs: { rows: t.rows || "3", value: r[p.property], disabled: e.isInputDisabled(r, t), prop: `${e.prop}[${s}].${t.prop}`, required: t.required }, on: { input: (l) => e.onInput(r, l, t) } }, "FormTextarea", e.getInputAttr(r, t), !1))] : t.dicType || (o = t.options) != null && o.length ? [a(b, { attrs: { "dict-type": t.dicType, "id-as-value": t.idAsValue, "label-as-value": t.labelAsValue, column: p, row: r, options: t.options } })] : [e._v(e._s(e.getVal(r, p, t)))]];
194
- }, { row: r, column: p, index: s })];
195
- } }], null, !0) }) : t.slot ? e._t("default") : e._e()];
196
- })];
197
- }, { columns: e.columns }), e._t("handle", null, { add: e.add, remove: e.remove }), (!e.value || e.value.length < e.limit) && !e.inputDisabled && e.enabled && e.editable && e.handleColumn ? a(u, { attrs: { label: "操作", fixed: "right", width: "80", align: "center", prop: "menu" }, scopedSlots: e._u([{ key: "header", fn: function({ column: t, $index: r }) {
198
- return [e._t("handle-column-header", function() {
199
- return [e._v(" " + e._s(t.label) + " ")];
200
- }, { column: t, index: r })];
201
- } }, { key: "default", fn: function({ row: t, $index: r }) {
202
- return [e.showHandleColumnAddButton && e.value.length < e.maxLimit ? a("i", { staticClass: "el-icon-circle-plus sub-table-handle-button table-button-add", staticStyle: { "margin-right": "5px", "font-size": "20px", cursor: "pointer" }, attrs: { title: "添加" }, on: { click: function(p) {
203
- return p.stopPropagation(), e.add(t, r);
204
- } } }) : e._e(), e.value && e.value.length > 1 || e.allowEmpty ? a(d, { staticClass: "el-icon-error sub-table-handle-button table-button-remove", attrs: { title: "删除", message: "您确定要删除该行吗?" }, on: { click: function(p) {
205
- return p.stopPropagation(), e.remove(t, r);
206
- } } }) : e._e()];
207
- } }], null, !0) }) : e._e()], 2);
208
- }, S = [], R = /* @__PURE__ */ T(
209
- q,
210
- k,
211
- S,
212
- !1,
213
- null,
214
- null
215
- );
216
- const J = R.exports;
217
- export {
218
- J as default
219
- };
1
+ import { t as e } from "../chunks/_plugin-vue_export-helper.7vrlOII_.mjs";
2
+ import { Fragment as t, createBlock as n, createCommentVNode as r, createElementBlock as i, createElementVNode as a, createSlots as o, createTextVNode as s, createVNode as c, mergeProps as l, openBlock as u, renderList as d, renderSlot as f, resolveComponent as p, toDisplayString as m, toHandlers as h, withCtx as g, withModifiers as _ } from "vue";
3
+ import { findTreeChildren as v, isFunction as y } from "@web-utils/core";
4
+ import { cloneDeep as b } from "@web-utils/integrations/lodash";
5
+ //#region src/components/table/SubTable.vue
6
+ var x = {
7
+ name: "SubTable",
8
+ emits: ["add-row"],
9
+ inject: {
10
+ elForm: { default: "" },
11
+ elFormItem: { default: "" }
12
+ },
13
+ props: {
14
+ value: Array,
15
+ prop: String,
16
+ columns: Array,
17
+ limit: {
18
+ type: Number,
19
+ default: Infinity
20
+ },
21
+ maxLimit: {
22
+ type: Number,
23
+ default: Infinity
24
+ },
25
+ disabled: Boolean,
26
+ showSummary: Boolean,
27
+ selectionWidth: String,
28
+ allowEmpty: Boolean,
29
+ handleColumn: {
30
+ type: Boolean,
31
+ default: !0
32
+ },
33
+ editable: Boolean,
34
+ fetchApi: Function,
35
+ delApi: Function,
36
+ showHandleColumnAddButton: {
37
+ type: Boolean,
38
+ default: !0
39
+ },
40
+ showEmptyAddButton: {
41
+ type: Boolean,
42
+ default: !0
43
+ }
44
+ },
45
+ data() {
46
+ return {
47
+ rows: [],
48
+ selectedRows: []
49
+ };
50
+ },
51
+ computed: {
52
+ available() {
53
+ return this.editable && this.enabled;
54
+ },
55
+ enabled() {
56
+ return !this.disabled;
57
+ },
58
+ rowProps() {
59
+ let e = {};
60
+ return this.columns && this.columns.map((e) => e.prop).forEach((t) => {
61
+ e[t] = null;
62
+ }), e;
63
+ },
64
+ inputDisabled() {
65
+ return this.disabled || (this.elForm || {}).disabled;
66
+ }
67
+ },
68
+ watch: {
69
+ value: {
70
+ deep: !0,
71
+ immediate: !0,
72
+ handler(e) {
73
+ this.rows = e || [];
74
+ }
75
+ },
76
+ rows: {
77
+ deep: !0,
78
+ immediate: !0,
79
+ handler(e) {
80
+ this.$emit("input", e);
81
+ }
82
+ }
83
+ },
84
+ methods: {
85
+ getCellType(e, t) {
86
+ return y(t.getType) ? t.getType(e, t) : t.type;
87
+ },
88
+ getInputAttr(e, t) {
89
+ return {
90
+ ...t.attrs,
91
+ ...t.getAttrs ? t.getAttrs(e) : {}
92
+ };
93
+ },
94
+ isInputDisabled(e, t) {
95
+ return t.isDisabled && t.isDisabled(e);
96
+ },
97
+ onInput(e, t, n) {
98
+ n.setValue ? n.setValue(e, t, n, this.rows) : e[n.prop] = t;
99
+ },
100
+ onSelectionChange(e) {
101
+ this.selectedRows = e;
102
+ },
103
+ remove(e, t) {
104
+ try {
105
+ this.rows.splice(t, 1);
106
+ } catch {}
107
+ },
108
+ add(e, t) {
109
+ let n = b(this.rowProps);
110
+ this.rows.splice(t + 1, 0, n);
111
+ },
112
+ addRow() {
113
+ this.$emit("add-row");
114
+ },
115
+ async delRow() {
116
+ if (!this.selectedRows.length) {
117
+ this.$message.warning("请选择要删除的记录!");
118
+ return;
119
+ }
120
+ try {
121
+ if (this.delApi) try {
122
+ await this.delApi(this.selectedRows.map((e) => e.id).join(",")), this.refresh();
123
+ } catch {
124
+ this.$message.error("删除失败!");
125
+ }
126
+ else this.$emit("input", this.rows.filter((e) => !this.selectedRows.includes(e)));
127
+ this.$message.success("删除成功!");
128
+ } catch {}
129
+ },
130
+ refresh() {
131
+ this.$refs.table.getPage();
132
+ },
133
+ getVal(e, t, n) {
134
+ var r, i;
135
+ if (n.type === "select" && (r = n.attrs) != null && r.options) {
136
+ let r = n.attrs.options.find((n) => n.code === e[t.property]);
137
+ if (r) return r.name;
138
+ }
139
+ if (n.type === "cascader" && (i = n.attrs) != null && i.options) {
140
+ let [r] = v(n.attrs.options, (r) => r[n.attrs.valueKey || "value"] === e[t.property]);
141
+ if (r) return r[n.attrs.valueKey || "label"];
142
+ }
143
+ return e[t.property];
144
+ }
145
+ }
146
+ }, S = {
147
+ key: 0,
148
+ class: "table-header"
149
+ }, C = {
150
+ key: 0,
151
+ style: { color: "#f56c6c" }
152
+ }, w = ["onClick"];
153
+ function T(e, v, y, b, x, T) {
154
+ let E = p("ElButton"), D = p("ConfirmButton"), O = p("FormInput"), k = p("FormInputPhoneNumber"), A = p("FormInputUser"), j = p("FormInputDepartment"), M = p("FormSelect"), N = p("FormDatePicker"), P = p("FormCascader"), F = p("FormCheckboxGroup"), I = p("FormInputNumber"), L = p("FormTextarea"), R = p("DictRender"), z = p("TableColumn"), B = p("Confirmable"), V = p("PageableTable");
155
+ return u(), n(V, l({
156
+ ref: "table",
157
+ class: "sub-table",
158
+ "auto-height": "",
159
+ data: x.rows,
160
+ api: y.fetchApi,
161
+ "show-summary": y.showSummary,
162
+ "selection-width": y.selectionWidth
163
+ }, e.$attrs, {
164
+ "hide-on-single-page": "",
165
+ selection: T.enabled
166
+ }, h(e.$listeners), { onSelectionChange: T.onSelectionChange }), o({
167
+ default: g(() => [
168
+ f(e.$slots, "columns", { columns: y.columns }, () => [(u(!0), i(t, null, d(y.columns, (a) => (u(), i(t, null, [a.label && !a.hide && !a.slot ? (u(), n(z, {
169
+ key: `${a.prop}-${T.enabled}-${a.type}`,
170
+ label: a.label,
171
+ width: a.width,
172
+ align: a.align,
173
+ prop: a.prop,
174
+ options: a.options,
175
+ "show-overflow-tooltip": !T.available && a.showOverflowTooltip
176
+ }, {
177
+ header: g(() => [!T.inputDisabled && a.required ? (u(), i("span", C, "*")) : r("v-if", !0), s(" " + m(a.label), 1)]),
178
+ default: g(({ row: o, column: c, $index: d }) => [
179
+ r("tag 插槽"),
180
+ f(e.$slots, "tag", {
181
+ row: o,
182
+ column: c,
183
+ index: d
184
+ }),
185
+ r("列默认插槽,名字和 prop 保持一致"),
186
+ f(e.$slots, a.prop, {
187
+ row: o,
188
+ column: c,
189
+ index: d
190
+ }, () => {
191
+ var e;
192
+ return [T.available && T.getCellType(o, a) === "input" ? (u(), n(O, l({
193
+ key: 0,
194
+ value: o[c.property]
195
+ }, { ref_for: !0 }, T.getInputAttr(o, a), {
196
+ disabled: T.isInputDisabled(o, a),
197
+ prop: `${y.prop}[${d}].${a.prop}`,
198
+ required: a.required,
199
+ onInput: (e) => T.onInput(o, e, a)
200
+ }), null, 16, [
201
+ "value",
202
+ "disabled",
203
+ "prop",
204
+ "required",
205
+ "onInput"
206
+ ])) : T.available && T.getCellType(o, a) === "inputPhoneNumber" ? (u(), n(k, l({
207
+ key: 1,
208
+ value: o[c.property]
209
+ }, { ref_for: !0 }, T.getInputAttr(o, a), {
210
+ disabled: T.isInputDisabled(o, a),
211
+ prop: `${y.prop}[${d}].${a.prop}`,
212
+ required: a.required,
213
+ onInput: (e) => T.onInput(o, e, a)
214
+ }), null, 16, [
215
+ "value",
216
+ "disabled",
217
+ "prop",
218
+ "required",
219
+ "onInput"
220
+ ])) : T.available && T.getCellType(o, a) === "user" ? (u(), i(t, { key: 2 }, [a.single ? (u(), n(A, l({
221
+ key: 0,
222
+ name: o[c.property],
223
+ "onUpdate:name": (e) => o[c.property] = e
224
+ }, { ref_for: !0 }, T.getInputAttr(o, a), {
225
+ disabled: T.isInputDisabled(o, a),
226
+ prop: `${y.prop}[${d}].${a.prop}`,
227
+ required: a.required,
228
+ onInput: (e) => T.onInput(o, e, a)
229
+ }), null, 16, [
230
+ "name",
231
+ "onUpdate:name",
232
+ "disabled",
233
+ "prop",
234
+ "required",
235
+ "onInput"
236
+ ])) : (u(), n(A, l({
237
+ key: 1,
238
+ value: o[c.property]
239
+ }, { ref_for: !0 }, T.getInputAttr(o, a), {
240
+ disabled: T.isInputDisabled(o, a),
241
+ prop: `${y.prop}[${d}].${a.prop}`,
242
+ required: a.required,
243
+ onInput: (e) => T.onInput(o, e, a)
244
+ }), null, 16, [
245
+ "value",
246
+ "disabled",
247
+ "prop",
248
+ "required",
249
+ "onInput"
250
+ ]))], 64)) : T.available && T.getCellType(o, a) === "department" ? (u(), i(t, { key: 3 }, [a.single ? (u(), n(j, l({
251
+ key: 0,
252
+ name: o[c.property],
253
+ "onUpdate:name": (e) => o[c.property] = e,
254
+ "ou-type": a.ouType
255
+ }, { ref_for: !0 }, T.getInputAttr(o, a), {
256
+ disabled: T.isInputDisabled(o, a),
257
+ prop: `${y.prop}[${d}].${a.prop}`,
258
+ required: a.required,
259
+ onInput: (e) => T.onInput(o, e, a)
260
+ }), null, 16, [
261
+ "name",
262
+ "onUpdate:name",
263
+ "ou-type",
264
+ "disabled",
265
+ "prop",
266
+ "required",
267
+ "onInput"
268
+ ])) : (u(), n(j, l({
269
+ key: 1,
270
+ value: o[c.property]
271
+ }, { ref_for: !0 }, T.getInputAttr(o, a), {
272
+ disabled: T.isInputDisabled(o, a),
273
+ prop: `${y.prop}[${d}].${a.prop}`,
274
+ required: a.required,
275
+ onInput: (e) => T.onInput(o, e, a)
276
+ }), null, 16, [
277
+ "value",
278
+ "disabled",
279
+ "prop",
280
+ "required",
281
+ "onInput"
282
+ ]))], 64)) : T.available && T.getCellType(o, a) === "select" ? (u(), n(M, l({
283
+ key: 4,
284
+ value: o[c.property]
285
+ }, { ref_for: !0 }, T.getInputAttr(o, a), {
286
+ disabled: T.isInputDisabled(o, a),
287
+ prop: `${y.prop}[${d}].${a.prop}`,
288
+ options: a.options,
289
+ required: a.required,
290
+ onInput: (e) => T.onInput(o, e, a)
291
+ }), null, 16, [
292
+ "value",
293
+ "disabled",
294
+ "prop",
295
+ "options",
296
+ "required",
297
+ "onInput"
298
+ ])) : T.available && T.getCellType(o, a) === "datePicker" ? (u(), n(N, l({
299
+ key: 5,
300
+ ref_for: !0
301
+ }, T.getInputAttr(o, a), {
302
+ start: o[a.start],
303
+ "onUpdate:start": (e) => o[a.start] = e,
304
+ end: o[a.end],
305
+ "onUpdate:end": (e) => o[a.end] = e,
306
+ value: o[c.property],
307
+ disabled: T.isInputDisabled(o, a),
308
+ prop: `${y.prop}[${d}].${a.prop}`,
309
+ required: a.required,
310
+ onInput: (e) => T.onInput(o, e, a)
311
+ }), null, 16, [
312
+ "start",
313
+ "onUpdate:start",
314
+ "end",
315
+ "onUpdate:end",
316
+ "value",
317
+ "disabled",
318
+ "prop",
319
+ "required",
320
+ "onInput"
321
+ ])) : T.available && T.getCellType(o, a) === "cascader" ? (u(), n(P, l({
322
+ key: 6,
323
+ value: o[c.property]
324
+ }, { ref_for: !0 }, T.getInputAttr(o, a), {
325
+ disabled: T.isInputDisabled(o, a),
326
+ prop: `${y.prop}[${d}].${a.prop}`,
327
+ required: a.required,
328
+ "label-key": a.labelKey,
329
+ "value-key": a.valueKey,
330
+ onInput: (e) => T.onInput(o, e, a)
331
+ }), null, 16, [
332
+ "value",
333
+ "disabled",
334
+ "prop",
335
+ "required",
336
+ "label-key",
337
+ "value-key",
338
+ "onInput"
339
+ ])) : T.available && T.getCellType(o, a) === "checkbox" ? (u(), n(F, l({
340
+ key: 7,
341
+ value: o[c.property]
342
+ }, { ref_for: !0 }, T.getInputAttr(o, a), {
343
+ disabled: T.isInputDisabled(o, a),
344
+ prop: `${y.prop}[${d}].${a.prop}`,
345
+ required: a.required,
346
+ onInput: (e) => T.onInput(o, e, a)
347
+ }), null, 16, [
348
+ "value",
349
+ "disabled",
350
+ "prop",
351
+ "required",
352
+ "onInput"
353
+ ])) : T.available && T.getCellType(o, a) === "number" ? (u(), n(I, l({
354
+ key: 8,
355
+ value: o[c.property]
356
+ }, { ref_for: !0 }, T.getInputAttr(o, a), {
357
+ disabled: T.isInputDisabled(o, a),
358
+ prop: `${y.prop}[${d}].${a.prop}`,
359
+ required: a.required,
360
+ onInput: (e) => T.onInput(o, e, a)
361
+ }), null, 16, [
362
+ "value",
363
+ "disabled",
364
+ "prop",
365
+ "required",
366
+ "onInput"
367
+ ])) : T.available && T.getCellType(o, a) === "textarea" ? (u(), n(L, l({
368
+ key: 9,
369
+ rows: a.rows || "3",
370
+ value: o[c.property]
371
+ }, { ref_for: !0 }, T.getInputAttr(o, a), {
372
+ disabled: T.isInputDisabled(o, a),
373
+ prop: `${y.prop}[${d}].${a.prop}`,
374
+ required: a.required,
375
+ onInput: (e) => T.onInput(o, e, a)
376
+ }), null, 16, [
377
+ "rows",
378
+ "value",
379
+ "disabled",
380
+ "prop",
381
+ "required",
382
+ "onInput"
383
+ ])) : a.dicType || (e = a.options) != null && e.length ? (u(), n(R, {
384
+ key: 10,
385
+ "dict-type": a.dicType,
386
+ "id-as-value": a.idAsValue,
387
+ "label-as-value": a.labelAsValue,
388
+ column: c,
389
+ row: o,
390
+ options: a.options
391
+ }, null, 8, [
392
+ "dict-type",
393
+ "id-as-value",
394
+ "label-as-value",
395
+ "column",
396
+ "row",
397
+ "options"
398
+ ])) : (u(), i(t, { key: 11 }, [s(m(T.getVal(o, c, a)), 1)], 64))];
399
+ })
400
+ ]),
401
+ _: 2
402
+ }, 1032, [
403
+ "label",
404
+ "width",
405
+ "align",
406
+ "prop",
407
+ "options",
408
+ "show-overflow-tooltip"
409
+ ])) : a.slot ? (u(), i(t, { key: 1 }, [r("列自定义插槽,名字和 prop 不一致"), f(e.$slots, "default")], 2112)) : r("v-if", !0)], 64))), 256))]),
410
+ f(e.$slots, "handle", {
411
+ add: T.add,
412
+ remove: T.remove
413
+ }),
414
+ (!y.value || y.value.length < y.limit) && !T.inputDisabled && T.enabled && y.editable && y.handleColumn ? (u(), n(z, {
415
+ key: 0,
416
+ label: "操作",
417
+ fixed: "right",
418
+ width: "80",
419
+ align: "center",
420
+ prop: "menu"
421
+ }, {
422
+ header: g(({ column: t, $index: n }) => [f(e.$slots, "handle-column-header", {
423
+ column: t,
424
+ index: n
425
+ }, () => [s(m(t.label), 1)])]),
426
+ default: g(({ row: e, $index: t }) => [y.showHandleColumnAddButton && y.value.length < y.maxLimit ? (u(), i("i", {
427
+ key: 0,
428
+ class: "el-icon-circle-plus sub-table-handle-button table-button-add",
429
+ style: {
430
+ "margin-right": "5px",
431
+ "font-size": "20px",
432
+ cursor: "pointer"
433
+ },
434
+ title: "添加",
435
+ onClick: _((n) => T.add(e, t), ["stop"])
436
+ }, null, 8, w)) : r("v-if", !0), y.value && y.value.length > 1 || y.allowEmpty ? (u(), n(B, {
437
+ key: 1,
438
+ class: "el-icon-error sub-table-handle-button table-button-remove",
439
+ title: "删除",
440
+ message: "您确定要删除该行吗?",
441
+ onClick: _((n) => T.remove(e, t), ["stop"])
442
+ }, null, 8, ["onClick"])) : r("v-if", !0)]),
443
+ _: 3
444
+ })) : r("v-if", !0)
445
+ ]),
446
+ _: 2
447
+ }, [y.editable ? void 0 : {
448
+ name: "toolbar",
449
+ fn: g(() => [T.enabled || y.fetchApi ? (u(), i("div", S, [f(e.$slots, "toolbar", {
450
+ addRow: T.addRow,
451
+ delRow: T.delRow,
452
+ refresh: T.refresh
453
+ }, () => [T.enabled ? (u(), i(t, { key: 0 }, [c(E, {
454
+ size: "mini",
455
+ class: "table-header-button add",
456
+ icon: "el-icon-circle-plus",
457
+ type: "text",
458
+ onClick: T.addRow
459
+ }, {
460
+ default: g(() => [...v[1] || (v[1] = [s("添加", -1)])]),
461
+ _: 1
462
+ }, 8, ["onClick"]), c(D, {
463
+ size: "mini",
464
+ class: "table-header-button remove",
465
+ message: "您确定要删除选中的记录吗?",
466
+ icon: "el-icon-error",
467
+ type: "text",
468
+ onClick: T.delRow
469
+ }, {
470
+ default: g(() => [...v[2] || (v[2] = [s(" 删除 ", -1)])]),
471
+ _: 1
472
+ }, 8, ["onClick"])], 64)) : r("v-if", !0), y.fetchApi ? (u(), n(E, {
473
+ key: 1,
474
+ size: "mini",
475
+ class: "table-header-button refresh",
476
+ icon: "el-icon-refresh-left",
477
+ type: "text",
478
+ disabled: !1,
479
+ onClick: T.refresh
480
+ }, {
481
+ default: g(() => [...v[3] || (v[3] = [s(" 刷新 ", -1)])]),
482
+ _: 1
483
+ }, 8, ["onClick"])) : r("v-if", !0)])])) : r("v-if", !0)]),
484
+ key: "0"
485
+ }, y.allowEmpty && !T.inputDisabled && y.showEmptyAddButton ? {
486
+ name: "empty",
487
+ fn: g(() => [a("i", {
488
+ class: "el-icon-circle-plus sub-table-handle-button table-button-add",
489
+ style: {
490
+ "font-size": "20px",
491
+ cursor: "pointer"
492
+ },
493
+ title: "添加",
494
+ onClick: v[0] || (v[0] = _((e) => T.add(null, 0), ["stop"]))
495
+ })]),
496
+ key: "1"
497
+ } : void 0]), 1040, [
498
+ "data",
499
+ "api",
500
+ "show-summary",
501
+ "selection-width",
502
+ "selection",
503
+ "onSelectionChange"
504
+ ]);
505
+ }
506
+ var E = /* @__PURE__ */ e(x, [["render", T]]);
507
+ //#endregion
508
+ export { E as default };