@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,522 +1,2 @@
1
- import O from "../resize-observer/index.mjs";
2
- import b from "element-ui/lib/checkbox";
3
- import d from "element-ui/lib/table-column";
4
- import v from "element-ui/lib/table";
5
- import W from "element-ui/lib/drawer";
6
- import { n as _ } from "../chunks/_plugin-vue2_normalizer.CeySl7Fu.mjs";
7
- import F from "element-ui/lib/pagination";
8
- import { T as f, g as V } from "../chunks/TableColumn.BzivvXMF.mjs";
9
- import { _ as w } from "../chunks/helper.BiMLcEEk.mjs";
10
- import "vue";
11
- import x from "element-ui/lib/radio";
12
- import D from "element-ui/lib/empty";
13
- import M from "element-ui/lib/button";
14
- import { copy as U, hasOwn as N } from "@web-utils/core";
15
- import T from "element-ui/lib/message";
16
- import { g as k, f as R, a as H, b as j } from "../chunks/index.Cn7aq-Et.mjs";
17
- import { merge as m } from "@web-utils/integrations/lodash";
18
- import { isEqual as Q } from "lodash-es";
19
- const q = {
20
- name: "TableColumnFilter",
21
- props: {
22
- columns: {
23
- type: Array,
24
- default: () => []
25
- },
26
- visible: Boolean
27
- }
28
- };
29
- var I = function() {
30
- var e = this, l = e._self._c;
31
- return l(W, { staticClass: "table-column-filter", attrs: { visible: e.visible, title: "表格设置", "append-to-body": "" }, on: { "update:visible": (s) => e.$emit("update:visible", s) } }, [l(v, { attrs: { data: e.columns, border: "" } }, [l(d, { attrs: { label: "列名" }, scopedSlots: e._u([{ key: "default", fn: function({ row: s }) {
32
- return [e._v(" " + e._s(s.label) + " ")];
33
- } }]) }), l(d, { attrs: { label: "隐藏", align: "center" }, scopedSlots: e._u([{ key: "default", fn: function({ row: s }) {
34
- return [l(b, { model: { value: s.hide, callback: function(i) {
35
- e.$set(s, "hide", i);
36
- }, expression: "row.hide" } })];
37
- } }]) }), l(d, { attrs: { label: "冻结", align: "center" }, scopedSlots: e._u([{ key: "default", fn: function({ row: s }) {
38
- return [l(b, { model: { value: s.fixed, callback: function(i) {
39
- e.$set(s, "fixed", i);
40
- }, expression: "row.fixed" } })];
41
- } }]) }), l(d, { attrs: { label: "过滤", align: "center" }, scopedSlots: e._u([{ key: "default", fn: function({ row: s }) {
42
- return [l(b, { model: { value: s.filterable, callback: function(i) {
43
- e.$set(s, "filterable", i);
44
- }, expression: "row.filterable" } })];
45
- } }]) }), l(d, { attrs: { label: "排序", align: "center" }, scopedSlots: e._u([{ key: "default", fn: function({ row: s }) {
46
- return [l(b, { attrs: { title: s.allowSort ? null : "该列不支持排序!", disabled: !s.allowSort }, model: { value: s.sortable, callback: function(i) {
47
- e.$set(s, "sortable", i);
48
- }, expression: "row.sortable" } })];
49
- } }]) })], 1)], 1);
50
- }, J = [], X = /* @__PURE__ */ _(
51
- q,
52
- I,
53
- J,
54
- !1,
55
- null,
56
- null
57
- );
58
- const P = X.exports, G = {
59
- name: "TableColumnFilterable",
60
- functional: !0,
61
- /**
62
- *
63
- * @param h
64
- * @param context {FunctionalContext}
65
- * @returns {JSX.Element}
66
- */
67
- render(t, e) {
68
- const {
69
- data: {
70
- key: l
71
- },
72
- props: s,
73
- parent: {
74
- records: i
75
- },
76
- scopedSlots: a
77
- } = e, {
78
- hide: o,
79
- isVNode: n,
80
- filterable: r,
81
- allowSort: S,
82
- autoUpdate: u,
83
- scopedSlots: E,
84
- prop: $,
85
- ...B
86
- } = s, C = `${l}-${r}${u ? `-${Math.random()}`.replace("0.", "") : ""}`, h = {
87
- props: {
88
- prop: $,
89
- ...B
90
- }
91
- };
92
- if (r) {
93
- const A = [...new Set(i.map((p) => p[$]).filter((p) => p))].map((p) => ({
94
- text: p,
95
- value: p
96
- }));
97
- h.props.filterMethod = (p, K, L) => {
98
- const z = L.property;
99
- return K[z] === p;
100
- }, h.props.filters = A;
101
- }
102
- const g = E || a;
103
- return g != null && g.default ? t(d, w([{}, h, {
104
- scopedSlots: g,
105
- key: C
106
- }])) : t(f, w([{}, h, {
107
- key: C
108
- }]));
109
- }
110
- }, Y = null, Z = null;
111
- var ee = /* @__PURE__ */ _(
112
- G,
113
- Y,
114
- Z,
115
- !1,
116
- null,
117
- null
118
- );
119
- const y = ee.exports;
120
- function te(t) {
121
- U(
122
- t,
123
- () => k(T).success({ duration: 1e3, message: "复制成功!", type: "success" }),
124
- () => k(T).error({ duration: 1e3, message: "复制失败!", type: "error" })
125
- );
126
- }
127
- const se = {
128
- props: {
129
- useVisibilityChange: Boolean
130
- },
131
- created() {
132
- this.useVisibilityChange && document.addEventListener("visibilitychange", this.onPageVisibleChange);
133
- },
134
- beforeDestroy() {
135
- this.useVisibilityChange && document.removeEventListener("visibilitychange", this.onPageVisibleChange);
136
- },
137
- methods: {
138
- onPageVisibleChange() {
139
- var t, e;
140
- document.hidden ? (t = this.onPageHidden) == null || t.call(this) : (e = this.onPageVisible) == null || e.call(this);
141
- }
142
- }
143
- };
144
- function le(t, e) {
145
- const l = t.map((i) => {
146
- const { hide: a, filterable: o, allowSort: n, sortable: r, fixed: S, ...u } = i;
147
- return u;
148
- }), s = e.map((i) => {
149
- const { hide: a, filterable: o, allowSort: n, sortable: r, fixed: S, ...u } = i;
150
- return u;
151
- });
152
- return Q(l, s);
153
- }
154
- function ae(t) {
155
- let e = "";
156
- for (const l in t)
157
- e += `<TableColumn prop="${l}" label="${l}"/>
158
- `;
159
- return e;
160
- }
161
- const c = {
162
- loading: 1,
163
- error: -1,
164
- empty: 2,
165
- success: 0
166
- }, ie = {
167
- name: "PageableTable",
168
- components: { TableColumnFilter: P, TableColumnFilterable: y },
169
- mixins: [se],
170
- emits: ["page-loaded", "row-dblclick"],
171
- bus: {
172
- reloadTableView(t) {
173
- t === this.viewId && this.getPage();
174
- }
175
- },
176
- inheritAttrs: !1,
177
- props: {
178
- selectionWidth: {
179
- type: String,
180
- default: "45"
181
- },
182
- viewId: String,
183
- url: String,
184
- hideOnSinglePage: Boolean,
185
- api: Function,
186
- model: Object,
187
- ascs: {
188
- type: Array,
189
- default: () => []
190
- },
191
- descs: {
192
- type: Array,
193
- default: () => []
194
- },
195
- headerBold: Boolean,
196
- autoHeight: Boolean,
197
- immediate: {
198
- type: Boolean,
199
- default: !0
200
- },
201
- index: {
202
- type: Boolean,
203
- default: !0
204
- },
205
- multiple: {
206
- type: Boolean,
207
- default: !0
208
- },
209
- selection: {
210
- type: Boolean,
211
- default: !0
212
- },
213
- border: {
214
- type: Boolean,
215
- default: !0
216
- },
217
- reloadOnModelChange: {
218
- type: Boolean,
219
- default: !1
220
- },
221
- columns: Array,
222
- pageSize: {
223
- type: Number,
224
- default: 25
225
- },
226
- dicOptions: {
227
- type: Array,
228
- default: () => []
229
- },
230
- paging: {
231
- type: Boolean,
232
- default: !0
233
- },
234
- clickRowSelect: Boolean,
235
- payloadStyle: String,
236
- rowKey: {
237
- type: String,
238
- default: "id"
239
- },
240
- disabledRowKeys: Array,
241
- selectExport: Boolean
242
- },
243
- data() {
244
- const t = this.pageSize;
245
- return {
246
- TABLE_STATUS: Object.freeze(c),
247
- tableStatus: c.empty,
248
- records: [],
249
- currentRow: null,
250
- showSettings: !1,
251
- selectedRows: [],
252
- page: { total: 0, page: 1, limit: t, ascs: this.ascs, descs: this.descs },
253
- tableColumns: [],
254
- expandColumn: null,
255
- renderKey: 1
256
- };
257
- },
258
- computed: {
259
- guard() {
260
- return this.reloadOnModelChange ? {
261
- asc: this.page.ascs,
262
- desc: this.page.descs,
263
- page: this.page.page,
264
- limit: this.page.limit,
265
- model: this.model
266
- } : { asc: this.page.ascs, desc: this.page.descs, page: this.page.page, limit: this.page.limit };
267
- },
268
- indexWidth() {
269
- var e;
270
- const t = `${(this.page.page - 1) * this.page.limit + (((e = this.records) == null ? void 0 : e.length) ?? 0)}`;
271
- return t.length > 3 ? 60 + (t.length - 3) * 10 : 60;
272
- },
273
- mergeAttrs() {
274
- return m({}, this.$attrs, { height: this.autoHeight ? null : "auto" });
275
- },
276
- headers() {
277
- var t;
278
- return ((t = this.columns) == null ? void 0 : t.map(R)) || [];
279
- }
280
- },
281
- watch: {
282
- url: { handler: "reload" },
283
- api: { handler: "reload" },
284
- "$attrs.data": "getPage"
285
- },
286
- created() {
287
- this.$watch(() => this.guard, this.getPage, { deep: !0, immediate: this.immediate }), this.$watch(
288
- () => ({ columns: this.columns, renderKey: this.renderKey }),
289
- (t) => {
290
- const e = [];
291
- let l = null;
292
- if (t) {
293
- const s = this.$slots.default, { columns: i } = t;
294
- s ? s.forEach((a) => {
295
- if (!a.isComment && a.data) {
296
- const { attrs: o, props: n, scopedSlots: r } = a.data;
297
- a.data.props = a.data.props || {}, a.data.props.type === "expand" ? l = {
298
- ...o,
299
- ...n,
300
- scopedSlots: r,
301
- hide: !1,
302
- filterable: !1,
303
- allowSort: a.data.props.sortable !== !1,
304
- sortable: !1,
305
- fixed: a.data.props.fixed
306
- } : e.push({
307
- ...o,
308
- ...n,
309
- scopedSlots: r,
310
- hide: !1,
311
- isVNode: !0,
312
- filterable: !1,
313
- allowSort: a.data.props.sortable !== !1,
314
- sortable: !1,
315
- fixed: a.data.props.fixed
316
- });
317
- }
318
- }) : i && i.forEach((a) => {
319
- a.type === "expand" ? l = {
320
- ...a,
321
- props: a,
322
- hide: !1,
323
- filterable: !1,
324
- allowSort: a.sortable !== !1,
325
- sortable: !1,
326
- fixed: a.fixed
327
- } : e.push({
328
- ...a,
329
- props: a,
330
- hide: !1,
331
- filterable: !1,
332
- allowSort: a.sortable !== !1,
333
- sortable: !1,
334
- fixed: a.fixed
335
- });
336
- }), this.updateExpandColumn(l), this.updateColumns(e);
337
- }
338
- },
339
- { immediate: !0 }
340
- );
341
- },
342
- mounted() {
343
- this.$refs.table.bodyWrapper.addEventListener("scroll", this.onTableScroll);
344
- },
345
- beforeUpdate() {
346
- this.renderKey++;
347
- },
348
- beforeDestroy() {
349
- this.$refs.table.bodyWrapper.removeEventListener("scroll", this.onTableScroll);
350
- },
351
- methods: {
352
- rowDbClick(...t) {
353
- this.hideTooltip(), this.$emit("row-dblclick", ...t);
354
- },
355
- rowClick(t, e, l) {
356
- if (this.clickRowSelect && this.selectable(t)) {
357
- const s = this.$refs.table;
358
- if (this.selectedRows.find((a) => a[this.rowKey] === t[this.rowKey])) {
359
- s.toggleRowSelection(t, !1);
360
- return;
361
- }
362
- s.toggleRowSelection(t);
363
- }
364
- },
365
- hideTooltip() {
366
- var e;
367
- const t = this.$refs.table.$children.find((l) => {
368
- var s;
369
- return ((s = l.$options) == null ? void 0 : s.name) === "ElTableBody";
370
- });
371
- (e = t == null ? void 0 : t.$refs.tooltip) == null || e.hide();
372
- },
373
- updateTableScrollPosition() {
374
- this.$refs.table.bodyWrapper && this.scrollTo(this.tableScrollTop, this.tableScrollLeft);
375
- },
376
- filterTableProperties: j,
377
- filterTableEvents: H,
378
- filterTableColumnProperties: R,
379
- onTableScroll() {
380
- this.tableScrollTop = this.$refs.table.bodyWrapper.scrollTop, this.tableScrollLeft = this.$refs.table.bodyWrapper.scrollLeft;
381
- },
382
- copy: (t) => te(ae(t)),
383
- onSortChange({ prop: t, order: e }) {
384
- this.payloadStyle !== "body" ? (this.page.ascs = e === "ascending" ? t : "", this.page.descs = e === "descending" ? t : "") : (this.page.ascs = e === "ascending" ? [t] : this.ascs, this.page.descs = e === "descending" ? [t] : this.descs);
385
- },
386
- onCurrentChange(t) {
387
- this.selectable(t) && (this.currentRow = t);
388
- },
389
- handleSelectionChange(t) {
390
- this.selectedRows = t;
391
- },
392
- clearSelection() {
393
- this.$refs.table.clearSelection();
394
- },
395
- getPageQuery() {
396
- let t;
397
- return this.payloadStyle !== "body" ? t = { ...this.page, current: this.page.page, size: this.page.limit, ...this.model || {} } : t = { page: { ...this.page, current: this.page.page, size: this.page.limit }, example: this.model || {} }, this.selectExport && (this.rowKey ? t.exportKeys = this.selectedRows.map((e) => e[this.rowKey]) : t.exportKeys = this.selectedRows.map((e) => this.records.indexOf(e))), t;
398
- },
399
- async getPage(t) {
400
- var o;
401
- if (N(this.$attrs, "data") && this.$attrs.data !== !1) {
402
- this.records = this.$attrs.data, this.page.page = 1, this.page.total = (o = this.records) == null ? void 0 : o.length, this.page.limit = this.page.total;
403
- return;
404
- }
405
- t !== !1 && (this.records = []);
406
- let e;
407
- const l = this.getPageQuery();
408
- if (this.api || this.url) {
409
- t !== !1 && (this.tableStatus = c.loading);
410
- try {
411
- this.api && (e = await this.api(l));
412
- } catch {
413
- this.tableStatus = c.error;
414
- return;
415
- }
416
- } else {
417
- this.$notify.warning({
418
- title: "开发提示!",
419
- message: "PageableTable 请提供 url(String) 或 api(Function) 属性"
420
- });
421
- return;
422
- }
423
- const {
424
- data: { data: s }
425
- } = e || {}, { total: i, records: a } = s || {};
426
- this.page.total = Number(i), this.records = await this.mapRow(a), !a || !a.length ? this.tableStatus = c.empty : this.tableStatus = c.success, this.doLayout(), this.$emit("page-loaded", s);
427
- },
428
- doLayout() {
429
- var t;
430
- (t = this.$refs.table) == null || t.doLayout();
431
- },
432
- async refresh(t) {
433
- await this.getPage(t);
434
- },
435
- reload() {
436
- this.page = { ...this.$options.data.call(this).page, limit: this.page.limit };
437
- },
438
- scrollTo(t, e) {
439
- t && (this.$refs.table.bodyWrapper.scrollTop = t), e && (this.$refs.table.bodyWrapper.scrollLeft = e);
440
- },
441
- toggleRowSelection(t, e) {
442
- this.$refs.table.toggleRowSelection(t, e);
443
- },
444
- mapRow(t) {
445
- return t.map((e) => (this.dicOptions.forEach(async (l) => {
446
- var s;
447
- e[`$${l.prop}`] = e[l.prop], l.dicData ? e[l.prop] = ((s = l.dicData.find((i) => i.value === e[l.prop])) == null ? void 0 : s.label) || e[l.prop] : e[l.prop] = await V(l.dicType, e[l.prop]);
448
- }), e));
449
- },
450
- toggleSettings() {
451
- this.showSettings = !this.showSettings;
452
- },
453
- selectable(t) {
454
- var e;
455
- return !(t != null && t.disabled) && !((e = this.disabledRowKeys) != null && e.includes(t == null ? void 0 : t[this.rowKey]));
456
- },
457
- updateExpandColumn(t) {
458
- t && this.expandColumn ? m(this.expandColumn, t) : this.expandColumn = t;
459
- },
460
- updateColumns(t) {
461
- if (!le(this.tableColumns, t)) {
462
- const e = {};
463
- this.tableColumns.forEach((l) => {
464
- e[l.prop] = l;
465
- }), t.map((l) => {
466
- const s = e[l.prop];
467
- if (s) {
468
- const { hide: i, filterable: a, allowSort: o, sortable: n, fixed: r } = s;
469
- return m(s, l), s.hide = i, s.filterable = a, s.allowSort = o, s.sortable = n, s.fixed = r, s;
470
- }
471
- return l;
472
- }), this.tableColumns = t;
473
- }
474
- },
475
- onPageVisible() {
476
- this.refresh(!1);
477
- }
478
- }
479
- };
480
- var oe = function() {
481
- var e = this, l = e._self._c;
482
- return l("div", { class: ["pageable-table", { "auto-height": e.autoHeight }] }, [l("div", { staticClass: "pageable-table-wrapper" }, [e._t("toolbar", null, { selectedRows: e.selectedRows }), l(v, e._g(e._b({ ref: "table", class: ["flex-item", { "header-bold": e.headerBold }], attrs: { data: e.records, border: e.border, stripe: "", size: "medium" }, on: { "hook:updated": e.updateTableScrollPosition, "sort-change": e.onSortChange, "row-dblclick": e.rowDbClick, "row-click": e.rowClick, "cell-click": e.hideTooltip, "current-change": e.onCurrentChange, "selection-change": e.handleSelectionChange }, scopedSlots: e._u([{ key: "empty", fn: function() {
483
- return [e._t("empty", function() {
484
- return [e.tableStatus === e.TABLE_STATUS.loading ? [l("span", { staticClass: "pageable-table-loading" }, [l("i", { staticClass: "table-status-icon el-icon-loading" }), e._v(" 加载中... ")])] : e.tableStatus === e.TABLE_STATUS.error ? [l(M, { staticClass: "pageable-table-error", attrs: { icon: "table-status-icon el-icon-error" }, on: { click: e.refresh } }, [e._v("加载失败,点击重试!")])] : l(D)];
485
- })];
486
- }, proxy: !0 }, { key: "append", fn: function() {
487
- return [e._t("append")];
488
- }, proxy: !0 }], null, !0) }, "ElTable", e.filterTableProperties(e.mergeAttrs), !1), e.filterTableEvents(e.$listeners)), [e.expandColumn ? l(y, e._b({}, "TableColumnFilterable", e.expandColumn, !1)) : e._e(), e.multiple && e.selection ? l(f, { key: "multiple", attrs: { type: "selection", selectable: e.selectable, width: e.selectionWidth, align: "center" } }) : e._e(), !e.multiple && e.selection ? l(f, { key: "single", attrs: { sortable: !1, type: "single-selection", "class-name": "single-select-column", width: e.selectionWidth, align: "center" }, scopedSlots: e._u([{ key: "header", fn: function() {
489
- return [l(x, { attrs: { value: !!e.currentRow, label: !0 } }, [l("span")])];
490
- }, proxy: !0 }, { key: "default", fn: function({ row: s }) {
491
- return [l(x, { attrs: { label: !0, disabled: !e.selectable(s), value: e.currentRow && e.currentRow[e.$attrs["row-key"] || e.rowKey || "id"] === s[e.$attrs["row-key"] || e.rowKey || "id"] } }, [l("span")])];
492
- } }], null, !1, 1270221895) }) : e._e(), e.index ? l(f, { key: "order", attrs: { type: "index", label: "序号", width: e.indexWidth, align: "center" }, scopedSlots: e._u([{ key: "default", fn: function({ $index: s }) {
493
- return [e._v(" " + e._s((e.page.page - 1) * e.page.limit + s + 1 || s + 1) + " ")];
494
- } }], null, !1, 4238275121) }) : e._e(), e.tableColumns ? e._l(e.tableColumns.filter((s) => !s.hide), function(s, i) {
495
- var a, o;
496
- return l(y, e._b({ key: `${((a = s.props) == null ? void 0 : a.prop) || s.prop}-${i}`, scopedSlots: e._u([e.$scopedSlots[((o = s.props) == null ? void 0 : o.prop) || s.prop] ? { key: "default", fn: function({ row: n }) {
497
- var r;
498
- return [e._t(((r = s.props) == null ? void 0 : r.prop) || s.prop, null, { row: n })];
499
- } } : null], null, !0) }, "TableColumnFilterable", s, !1));
500
- }) : [l(f, { attrs: { label: "点击表格行复制模板" }, scopedSlots: e._u([{ key: "default", fn: function({ row: s }) {
501
- return [l("pre", { staticClass: "pointer", on: { click: function(i) {
502
- return e.copy(s);
503
- } } }, [e._v(e._s(JSON.stringify(s, null, " ")))])];
504
- } }]) })]], 2), e.paging ? l(F, { staticClass: "flex-not-shrink", attrs: { "current-page": e.page.page, "hide-on-single-page": e.hideOnSinglePage, "page-size": e.page.limit, total: e.page.total, "page-sizes": [10, 25, 50, 100, 500, 1e3, 2e3], background: "", layout: "total, sizes, prev, pager, next, jumper" }, on: { "size-change": (s) => {
505
- e.page.limit = s;
506
- }, "current-change": (s) => {
507
- e.page.page = s;
508
- } } }) : e._e(), l(P, { attrs: { visible: e.showSettings, columns: e.tableColumns }, on: { "update:visible": function(s) {
509
- e.showSettings = s;
510
- } } })], 2), l(O, { on: { notify: e.doLayout } })], 1);
511
- }, re = [], ne = /* @__PURE__ */ _(
512
- ie,
513
- oe,
514
- re,
515
- !1,
516
- null,
517
- null
518
- );
519
- const Re = ne.exports;
520
- export {
521
- Re as default
522
- };
1
+ import { t as e } from "../chunks/PageableTable.Bujb0NUx.mjs";
2
+ export { e as default };