@web-utils/component 5.0.0-beta02 → 5.0.0-beta04

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 (385) hide show
  1. package/chunks/DialogForm.BzmXN481.mjs +37816 -0
  2. package/chunks/ElementDialog.BrqPs1yL.mjs +198 -0
  3. package/chunks/FormTemp.DWB4CV8h.mjs +251 -0
  4. package/chunks/FyButton.DGd1yE_h.mjs +27 -0
  5. package/chunks/{FyCurd.me083T8V.mjs → FyCurd.DmIW6Tjw.mjs} +500 -496
  6. package/chunks/{FyForm.vVp8aVtj.mjs → FyForm.Dh77gj0Z.mjs} +158 -156
  7. package/chunks/{FyUEditor.BymtA5SJ.mjs → FyUEditor.BMGigcYw.mjs} +7 -7
  8. package/chunks/{FyUpload.CA7Gfa6Q.mjs → FyUpload.Y_mVdD0K.mjs} +77 -77
  9. package/chunks/{MonacoEditor.B7BUQwb7.mjs → MonacoEditor.DQ1vPh6D.mjs} +8 -8
  10. package/chunks/dataformat.BpAzVPYN.mjs +165 -0
  11. package/chunks/{dic.C0abEij9.mjs → dic.N2PNjL8o.mjs} +1 -1
  12. package/chunks/{event.Dv4XTu8B.mjs → event.BevSLXu4.mjs} +10 -14
  13. package/chunks/{util.g-WQEec9.mjs → util.Cdt7t08t.mjs} +35 -50
  14. package/dialog/index.d.ts +14 -0
  15. package/dialog/props.d.ts +101 -0
  16. package/dialog-form/index.mjs +2 -145
  17. package/element-dialog/index.mjs +1 -1
  18. package/element-dialog/style.css +1 -1
  19. package/fy-array/index.mjs +7 -7
  20. package/fy-button/index.mjs +2 -0
  21. package/fy-button/style.css +1 -0
  22. package/fy-cascader/index.mjs +2 -2
  23. package/fy-checkbox/index.mjs +2 -2
  24. package/fy-curd/index.mjs +1 -1
  25. package/fy-curd/style.css +1 -1
  26. package/fy-date/index.mjs +2 -2
  27. package/fy-date/style.css +1 -1
  28. package/fy-dynamic/index.mjs +17 -21
  29. package/fy-empty/index.mjs +4 -4
  30. package/fy-form/index.mjs +1 -1
  31. package/fy-form/style.css +1 -1
  32. package/fy-input/index.mjs +3 -3
  33. package/fy-input-color/index.mjs +2 -3
  34. package/fy-input-map/index.mjs +36 -34
  35. package/fy-input-number/index.mjs +2 -2
  36. package/fy-input-table/index.mjs +40 -38
  37. package/fy-input-tree/index.mjs +19 -19
  38. package/fy-input-tree/style.css +1 -1
  39. package/fy-radio/index.mjs +3 -3
  40. package/fy-rate/index.mjs +3 -3
  41. package/fy-select/index.mjs +31 -31
  42. package/fy-slider/index.mjs +5 -5
  43. package/fy-switch/index.mjs +3 -3
  44. package/fy-tabs/index.mjs +1 -1
  45. package/fy-time/index.mjs +7 -7
  46. package/fy-title/index.mjs +2 -2
  47. package/fy-tree/index.mjs +76 -74
  48. package/fy-u-editor/index.mjs +1 -1
  49. package/fy-upload/index.mjs +1 -1
  50. package/icon-temp/index.mjs +1 -1
  51. package/index.d.ts +2 -142
  52. package/index.mjs +31 -179
  53. package/monaco-editor/index.mjs +1 -1
  54. package/package.json +11 -13
  55. package/web-types.json +2461 -20206
  56. package/address-input/index.mjs +0 -76
  57. package/address-input/style.css +0 -1
  58. package/affix/index.mjs +0 -72
  59. package/affix/style.css +0 -1
  60. package/aside-menu/index.mjs +0 -20
  61. package/aside-menu/style.css +0 -1
  62. package/avatar/index.mjs +0 -94
  63. package/avatar/style.css +0 -1
  64. package/awesome-button/index.mjs +0 -55
  65. package/capsule-tab/index.mjs +0 -27
  66. package/capsule-tab/style.css +0 -1
  67. package/card/index.mjs +0 -86
  68. package/card/style.css +0 -1
  69. package/carousel/index.mjs +0 -46
  70. package/carousel/style.css +0 -1
  71. package/chat/index.mjs +0 -441
  72. package/chat/style.css +0 -1
  73. package/chunk-file-uploader/index.mjs +0 -2
  74. package/chunk-file-uploader/style.css +0 -1
  75. package/chunks/ChunkFileUploader.C3EA0e5t.mjs +0 -114
  76. package/chunks/EditableTree.D0ByhRTi.mjs +0 -648
  77. package/chunks/ElementBaseInfo.B3pY8TkD.mjs +0 -209
  78. package/chunks/ElementDialog.DNsDHdQS.mjs +0 -251
  79. package/chunks/ElementForm.D_lXbe--.mjs +0 -627
  80. package/chunks/ElementListeners.Cufwd4bp.mjs +0 -656
  81. package/chunks/ElementMultiInstance.BhY8NY2z.mjs +0 -290
  82. package/chunks/ElementOtherConfig.DX1ZJ9w2.mjs +0 -51
  83. package/chunks/ElementProperties.BRafADXp.mjs +0 -196
  84. package/chunks/ElementTaskConfig.B6pqRir_.mjs +0 -446
  85. package/chunks/FlowCondition.Dvwji23j.mjs +0 -194
  86. package/chunks/FlowDesigner.LL-vXDIE.mjs +0 -5100
  87. package/chunks/FormBlock.Co7l6USP.mjs +0 -117
  88. package/chunks/FormCascader.DMY3uNc8.mjs +0 -1227
  89. package/chunks/FormInputTime.BC4FfWwY.mjs +0 -1774
  90. package/chunks/FormItem.BSXI2cZU.mjs +0 -89
  91. package/chunks/FormItemGroup.D2Htta7J.mjs +0 -149
  92. package/chunks/FormSelect.CY0K-izg.mjs +0 -1473
  93. package/chunks/FormSwitch.DLqFXaFF.mjs +0 -297
  94. package/chunks/FormTemp.PJFfNRls.mjs +0 -139
  95. package/chunks/FyFormDesign.BCxVyiWY.mjs +0 -5600
  96. package/chunks/ImagePreview.ByEWJYdu.mjs +0 -639
  97. package/chunks/Keyboard.4hi7CjGc.mjs +0 -379
  98. package/chunks/PageableTable.Ba3XSbZ5.mjs +0 -660
  99. package/chunks/RecordVideo.VRFTaHSp.mjs +0 -116
  100. package/chunks/SignalAndMessage.DYhKWs3X.mjs +0 -198
  101. package/chunks/SplitPane.Bwe5Rc0J.mjs +0 -219
  102. package/chunks/TableColumn.72HOXQkb.mjs +0 -186
  103. package/chunks/TableView.BxfsOAxU.mjs +0 -484
  104. package/chunks/Toolbar.BVziVmyT.mjs +0 -219
  105. package/chunks/UserTaskListeners.CkeyTpnn.mjs +0 -599
  106. package/chunks/VueCron.DEvY5-i7.mjs +0 -1823
  107. package/chunks/VueTreeSelect.C6Ycu28Z.mjs +0 -1873
  108. package/chunks/checkbox.C_9WZ8gc.mjs +0 -437
  109. package/chunks/confirmable-mixin.zegaXQTl.mjs +0 -1762
  110. package/chunks/core.DXaMPWGV.mjs +0 -51
  111. package/chunks/dataformat.CteBVoOe.mjs +0 -144
  112. package/chunks/dictionary.BRhZD-WH.mjs +0 -19
  113. package/chunks/dictionary.CNNpjPL2.mjs +0 -87
  114. package/chunks/event.B4iwtUNO.mjs +0 -4
  115. package/chunks/focus-trap.FbvlqAGe.mjs +0 -211
  116. package/chunks/form-input.BUGZmAI1.mjs +0 -34
  117. package/chunks/form-item.Ca8U2bIR.mjs +0 -712
  118. package/chunks/form-pick.DT5kumy4.mjs +0 -7
  119. package/chunks/form-validate.CUvMwtPN.mjs +0 -11
  120. package/chunks/icon.CxCY22-F.mjs +0 -26
  121. package/chunks/icon.ym7735_x.mjs +0 -251
  122. package/chunks/init.6jGmuY99.mjs +0 -115
  123. package/chunks/input.C2GWsuXE.mjs +0 -547
  124. package/chunks/install.yLcn5MLL.mjs +0 -84
  125. package/chunks/message.C4NdvfbE.mjs +0 -400
  126. package/chunks/photo-swipe.BxnG4lip.mjs +0 -55
  127. package/chunks/radio.CeLeSOEo.mjs +0 -273
  128. package/chunks/scroll.DWjS-gnW.mjs +0 -28
  129. package/chunks/scrollbar.CAmrlKi9.mjs +0 -345
  130. package/chunks/slot.DT5QwXL-.mjs +0 -25
  131. package/chunks/style.BmlGmjpO.mjs +0 -325
  132. package/chunks/sub-table-plus-props.CRX7ERxJ.mjs +0 -28
  133. package/chunks/tab-mixin.7zuMMM1E.mjs +0 -70
  134. package/chunks/tag.ZhEIVRpP.mjs +0 -141
  135. package/chunks/tooltip.DNiltmX1.mjs +0 -1939
  136. package/chunks/typescript.CLl-2siQ.mjs +0 -18
  137. package/chunks/use-aria.BW7nWOl1.mjs +0 -17
  138. package/chunks/use-composition.mUaomyno.mjs +0 -47
  139. package/chunks/use-deprecated.BfDSbZS9.mjs +0 -12
  140. package/chunks/use-empty-values.D8KYIiKR.mjs +0 -81
  141. package/chunks/use-form-item.BlWa7ZKe.mjs +0 -56
  142. package/chunks/use-global-config.DRovgom9.mjs +0 -57
  143. package/chunks/use-locale.Be9HCpTQ.mjs +0 -188
  144. package/chunks/util.Ce4MHRmD.mjs +0 -103
  145. package/chunks/utilSelf.BttmSVX6.mjs +0 -46
  146. package/chunks/utils.BGJfM4oG.mjs +0 -60
  147. package/chunks/utils.CSPl1l4f.mjs +0 -14
  148. package/chunks/validator.DuBSEj8O.mjs +0 -5
  149. package/chunks/vnode.C3PXzhmg.mjs +0 -14
  150. package/code-mirror-editor/index.mjs +0 -99
  151. package/code-mirror-editor/style.css +0 -1
  152. package/comment/index.mjs +0 -62
  153. package/comment/style.css +0 -1
  154. package/configComponents.d.ts +0 -29
  155. package/configComponents.mjs +0 -42
  156. package/confirm-button/index.mjs +0 -35
  157. package/confirmable/index.mjs +0 -8
  158. package/context-menu/index.mjs +0 -195
  159. package/context-menu/style.css +0 -1
  160. package/count-up/index.mjs +0 -99
  161. package/custom-scrollbar/index.mjs +0 -93
  162. package/data-box/index.mjs +0 -64
  163. package/data-box/style.css +0 -1
  164. package/data-card/index.mjs +0 -60
  165. package/data-card/style.css +0 -1
  166. package/data-card-text/index.mjs +0 -64
  167. package/data-card-text/style.css +0 -1
  168. package/data-display/index.mjs +0 -71
  169. package/data-display/style.css +0 -1
  170. package/data-icons/index.mjs +0 -70
  171. package/data-icons/style.css +0 -1
  172. package/data-imgtext/index.mjs +0 -67
  173. package/data-imgtext/style.css +0 -1
  174. package/data-operatext/index.mjs +0 -51
  175. package/data-operatext/style.css +0 -1
  176. package/data-panel/index.mjs +0 -57
  177. package/data-panel/style.css +0 -1
  178. package/data-pay/index.mjs +0 -105
  179. package/data-pay/style.css +0 -1
  180. package/data-price/index.mjs +0 -48
  181. package/data-price/style.css +0 -1
  182. package/data-progress/index.mjs +0 -67
  183. package/data-progress/style.css +0 -1
  184. package/data-rotate/index.mjs +0 -61
  185. package/data-rotate/style.css +0 -1
  186. package/data-table-picker/index.mjs +0 -120
  187. package/data-tabs/index.mjs +0 -67
  188. package/data-tabs/style.css +0 -1
  189. package/dynamic-table/index.mjs +0 -166
  190. package/dynamic-table/style.css +0 -1
  191. package/e-charts/index.mjs +0 -176
  192. package/e-charts/style.css +0 -1
  193. package/easy-popup/index.mjs +0 -92
  194. package/easy-popup/style.css +0 -1
  195. package/editable-progress/index.mjs +0 -113
  196. package/editable-progress/style.css +0 -1
  197. package/editable-tree/index.mjs +0 -2
  198. package/editable-tree/style.css +0 -1
  199. package/element-listeners/style.css +0 -1
  200. package/element-multi-instance/style.css +0 -1
  201. package/ellipsis/index.mjs +0 -124
  202. package/ellipsis/style.css +0 -1
  203. package/empty-view/index.mjs +0 -48
  204. package/empty-view/style.css +0 -1
  205. package/error-view/index.mjs +0 -39
  206. package/error-view/style.css +0 -1
  207. package/flex-column/index.mjs +0 -35
  208. package/flex-item/index.mjs +0 -61
  209. package/flex-row/index.mjs +0 -34
  210. package/flex-scroller/index.mjs +0 -29
  211. package/flex-scroller/style.css +0 -1
  212. package/flow/index.mjs +0 -240
  213. package/flow/style.css +0 -1
  214. package/flow-designer/index.mjs +0 -2
  215. package/flow-designer/style.css +0 -1
  216. package/flow-node/index.mjs +0 -56
  217. package/flow-viewer/index.mjs +0 -160
  218. package/flow-viewer/style.css +0 -1
  219. package/form-block/index.mjs +0 -2
  220. package/form-block/style.css +0 -1
  221. package/form-button/index.mjs +0 -36
  222. package/form-card/index.mjs +0 -14
  223. package/form-cascader/index.mjs +0 -2
  224. package/form-checkbox/index.mjs +0 -90
  225. package/form-checkbox-group/index.mjs +0 -162
  226. package/form-checkbox-group/style.css +0 -1
  227. package/form-date-picker/index.mjs +0 -156
  228. package/form-holder/index.mjs +0 -134
  229. package/form-holder/style.css +0 -1
  230. package/form-input/index.mjs +0 -114
  231. package/form-input-cron-expression/index.mjs +0 -98
  232. package/form-input-cron-expression/style.css +0 -1
  233. package/form-input-email/index.mjs +0 -66
  234. package/form-input-id-card/index.mjs +0 -74
  235. package/form-input-phone-number/index.mjs +0 -73
  236. package/form-input-tag/index.mjs +0 -89
  237. package/form-input-time/index.mjs +0 -2
  238. package/form-item/index.mjs +0 -2
  239. package/form-item/style.css +0 -1
  240. package/form-item-config-provider/index.mjs +0 -47
  241. package/form-item-group/index.mjs +0 -2
  242. package/form-item-group/style.css +0 -1
  243. package/form-radio-group/index.mjs +0 -162
  244. package/form-radio-group/style.css +0 -1
  245. package/form-select/index.mjs +0 -2
  246. package/form-select/style.css +0 -1
  247. package/form-switch/index.mjs +0 -2
  248. package/form-table/index.mjs +0 -132
  249. package/form-table-plus/index.mjs +0 -165
  250. package/form-textarea/index.mjs +0 -91
  251. package/form-tree-select/index.mjs +0 -90
  252. package/form-tree-select/style.css +0 -1
  253. package/form-tree-select-multiple/index.mjs +0 -93
  254. package/form-view/index.mjs +0 -280
  255. package/form-view/style.css +0 -1
  256. package/fy-article/index.mjs +0 -73
  257. package/fy-article/style.css +0 -1
  258. package/fy-code/index.mjs +0 -48
  259. package/fy-draggable/index.mjs +0 -323
  260. package/fy-draggable/style.css +0 -1
  261. package/fy-form-design/index.mjs +0 -2
  262. package/fy-form-design/style.css +0 -1
  263. package/fy-input-icon/index.mjs +0 -129
  264. package/fy-input-icon/style.css +0 -1
  265. package/fy-progress/index.mjs +0 -36
  266. package/guide-steps/index.mjs +0 -73
  267. package/guide-steps/style.css +0 -1
  268. package/helper-function.d.ts +0 -6
  269. package/helper-function.mjs +0 -49
  270. package/highlight-j-s/index.mjs +0 -51
  271. package/highlight-j-s/style.css +0 -1
  272. package/icon-card/index.mjs +0 -34
  273. package/icon-card/style.css +0 -1
  274. package/iframe-window/index.mjs +0 -39
  275. package/iframe-window/style.css +0 -1
  276. package/image-cropper/index.mjs +0 -171
  277. package/image-cropper/style.css +0 -1
  278. package/image-preview/index.mjs +0 -2
  279. package/image-preview/style.css +0 -1
  280. package/image-viewer/index.mjs +0 -70
  281. package/image-viewer/style.css +0 -1
  282. package/input-number-range/index.mjs +0 -78
  283. package/input-number-range/style.css +0 -1
  284. package/j-s-x-component/index.mjs +0 -14
  285. package/keyboard/index.mjs +0 -2
  286. package/keyboard/style.css +0 -1
  287. package/license/index.mjs +0 -106
  288. package/loading-view/index.mjs +0 -39
  289. package/loading-view/style.css +0 -1
  290. package/login/index.mjs +0 -252
  291. package/login/style.css +0 -1
  292. package/name-avatar/index.mjs +0 -61
  293. package/name-avatar/style.css +0 -1
  294. package/nav-bar/index.mjs +0 -34
  295. package/nav-bar/style.css +0 -1
  296. package/not-implement/index.mjs +0 -10
  297. package/not-implement/style.css +0 -1
  298. package/notice/index.mjs +0 -100
  299. package/notice/style.css +0 -1
  300. package/page/index.mjs +0 -19
  301. package/page/style.css +0 -1
  302. package/page-header/index.mjs +0 -27
  303. package/page-header/style.css +0 -1
  304. package/page-index/index.mjs +0 -121
  305. package/page-index/style.css +0 -1
  306. package/page-index-top/index.mjs +0 -80
  307. package/page-skeleton/index.mjs +0 -49
  308. package/page-skeleton/style.css +0 -1
  309. package/page-skeleton-new/index.mjs +0 -79
  310. package/page-skeleton-new/style.css +0 -1
  311. package/pageable-table/index.mjs +0 -2
  312. package/pageable-table/style.css +0 -1
  313. package/pageable-view/index.mjs +0 -280
  314. package/pageable-view/style.css +0 -1
  315. package/photo-swipe/index.d.ts +0 -8
  316. package/photo-swipe/index.mjs +0 -33
  317. package/picker-table-view/index.mjs +0 -225
  318. package/present-view/index.mjs +0 -271
  319. package/present-view/style.css +0 -1
  320. package/queue/index.mjs +0 -46
  321. package/queue/style.css +0 -1
  322. package/record-video/index.mjs +0 -2
  323. package/record-video/style.css +0 -1
  324. package/resize-observer/index.mjs +0 -45
  325. package/resize-observer/style.css +0 -1
  326. package/search/index.mjs +0 -116
  327. package/search/style.css +0 -1
  328. package/sign/index.mjs +0 -104
  329. package/sign/style.css +0 -1
  330. package/sign-panel/index.mjs +0 -183
  331. package/sign-panel/style.css +0 -1
  332. package/skeleton/index.mjs +0 -51
  333. package/skeleton/style.css +0 -1
  334. package/skeleton-panel/index.mjs +0 -34
  335. package/skeleton-panel/style.css +0 -1
  336. package/split-pane/index.mjs +0 -3
  337. package/split-pane/style.css +0 -1
  338. package/stateful/index.mjs +0 -71
  339. package/stateful/style.css +0 -1
  340. package/static-pageable-table/index.mjs +0 -72
  341. package/static-pageable-table/style.css +0 -1
  342. package/sub-table/index.mjs +0 -508
  343. package/sub-table/style.css +0 -1
  344. package/sub-table-plus/index.mjs +0 -593
  345. package/sub-table-plus/style.css +0 -1
  346. package/swiper/index.mjs +0 -128
  347. package/swiper/style.css +0 -1
  348. package/tab/index.mjs +0 -117
  349. package/tab/style.css +0 -1
  350. package/tab-item/index.mjs +0 -49
  351. package/table-column/index.mjs +0 -2
  352. package/table-column/style.css +0 -1
  353. package/table-view/index.mjs +0 -3
  354. package/table-view/style.css +0 -1
  355. package/tabs-view/index.mjs +0 -109
  356. package/tabs-view/style.css +0 -1
  357. package/tag-render/index.mjs +0 -80
  358. package/tag-render/style.css +0 -1
  359. package/text-ellipsis/index.mjs +0 -95
  360. package/text-ellipsis/style.css +0 -1
  361. package/toolbar/index.mjs +0 -2
  362. package/toolbar/style.css +0 -1
  363. package/toolbar-button/index.mjs +0 -143
  364. package/utils/style.css +0 -1
  365. package/verify/index.mjs +0 -58
  366. package/verify/style.css +0 -1
  367. package/video/index.d.ts +0 -10
  368. package/vue-cron/index.mjs +0 -2
  369. package/vue-cron/style.css +0 -1
  370. package/vue-qr-code/index.mjs +0 -32
  371. package/vue-quill-editor/index.mjs +0 -127
  372. package/vue-quill-editor/style.css +0 -1
  373. package/vue-tags-input/index.mjs +0 -348
  374. package/vue-tags-input/style.css +0 -1
  375. package/vue-tree-select/index.mjs +0 -2
  376. package/vue-tree-select/style.css +0 -1
  377. package/vue-video-player/index.mjs +0 -136
  378. package/vue-video-player/style.css +0 -1
  379. package/watermark/index.mjs +0 -47
  380. package/watermark/style.css +0 -1
  381. package/x-input-tag/index.mjs +0 -145
  382. package/x-input-tag/style.css +0 -1
  383. /package/chunks/{_plugin-vue_export-helper.7vrlOII_.mjs → _plugin-vue_export-helper.CTBRVsXt.mjs} +0 -0
  384. /package/chunks/{packages.BLDb9e6G.mjs → packages.W76nKiMk.mjs} +0 -0
  385. /package/chunks/{permission.C-IUDxQQ.mjs → permission.ZYdXiCsn.mjs} +0 -0
@@ -1,186 +0,0 @@
1
- import { t as e } from "./core.DXaMPWGV.mjs";
2
- import { t } from "./dictionary.CNNpjPL2.mjs";
3
- import { createVNode as n, isVNode as r, resolveComponent as i } from "vue";
4
- //#endregion
5
- //#region src/components/table/components/DictRender.vue
6
- var a = {
7
- name: "DictRender",
8
- inheritAttrs: !1,
9
- props: {
10
- row: Object,
11
- column: Object,
12
- dictType: String,
13
- options: Array,
14
- treeDict: Boolean,
15
- idAsValue: {
16
- type: Boolean,
17
- default: !0
18
- },
19
- labelAsValue: Boolean
20
- },
21
- data() {
22
- return { label: "" };
23
- },
24
- computed: { value() {
25
- return this.row[this.column.property];
26
- } },
27
- watch: { value: {
28
- immediate: !0,
29
- async handler() {
30
- if (this.dictType) this.label = await t(this.dictType, this.value, !0, {
31
- options: !0,
32
- treeDict: this.treeDict,
33
- idAsValue: this.idAsValue,
34
- labelAsValue: this.labelAsValue
35
- });
36
- else {
37
- var e;
38
- this.label = ((e = this.options) == null || (e = e.find((e) => `${e.value}` == `${this.value}`)) == null ? void 0 : e.label) ?? `${this.value}`;
39
- }
40
- }
41
- } },
42
- render() {
43
- return n("span", {
44
- on: this.$listeners,
45
- domProps: this.$attrs
46
- }, [this.label]);
47
- }
48
- };
49
- //#endregion
50
- //#region src/components/table/TableColumn.vue?vue&type=script&lang.jsx
51
- function o(e) {
52
- return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !r(e);
53
- }
54
- var s = { props: {
55
- type: {
56
- type: String,
57
- default: "default"
58
- },
59
- label: String,
60
- className: String,
61
- labelClassName: String,
62
- property: String,
63
- prop: String,
64
- width: {},
65
- minWidth: {},
66
- renderHeader: Function,
67
- sortable: {
68
- type: [Boolean, String],
69
- default: !0
70
- },
71
- sortMethod: Function,
72
- sortBy: [
73
- String,
74
- Function,
75
- Array
76
- ],
77
- resizable: {
78
- type: Boolean,
79
- default: !0
80
- },
81
- columnKey: String,
82
- align: String,
83
- headerAlign: String,
84
- showTooltipWhenOverflow: Boolean,
85
- clickable: Boolean,
86
- cellClick: Function,
87
- showOverflowTooltip: {
88
- type: Boolean,
89
- default: !0
90
- },
91
- fixed: [Boolean, String],
92
- formatter: Function,
93
- selectable: Function,
94
- reserveSelection: Boolean,
95
- filterMethod: Function,
96
- filteredValue: Array,
97
- filters: Array,
98
- filterPlacement: String,
99
- filterMultiple: {
100
- type: Boolean,
101
- default: !0
102
- },
103
- index: [Number, Function],
104
- sortOrders: {
105
- type: Array,
106
- default() {
107
- return [
108
- "ascending",
109
- "descending",
110
- null
111
- ];
112
- },
113
- validator(e) {
114
- return e.every((e) => [
115
- "ascending",
116
- "descending",
117
- null
118
- ].indexOf(e) > -1);
119
- }
120
- },
121
- dictType: String,
122
- options: Array,
123
- autoUpdate: Boolean,
124
- treeDict: Boolean,
125
- idAsValue: {
126
- type: Boolean,
127
- default: !0
128
- },
129
- labelAsValue: Boolean
130
- } }, c = {
131
- selection: !0,
132
- "single-selection": !0,
133
- index: !0,
134
- expand: !0
135
- }, l = (e, t, n, r, i) => {
136
- var a;
137
- let o = e.rowDbClick || ((a = e.$children.find((e) => e.$options.name === "TableView")) == null ? void 0 : a.rowDbClick);
138
- o == null || o(t, n, r, i);
139
- }, u = (e) => {
140
- let t = e.target;
141
- for (; t && t.tagName.toUpperCase() !== "HTML";) {
142
- if (t.tagName.toUpperCase() === "TD") return t;
143
- t = t.parentNode;
144
- }
145
- return null;
146
- }, d = () => {}, f = (t) => !e(t).length, p = {
147
- name: "TableColumn",
148
- functional: !0,
149
- mixins: [s],
150
- render(e, { data: t, props: r, children: s, parent: p, listeners: { click: m } }) {
151
- let { scopedSlots: h, ...g } = t, { clickable: _, cellClick: v, ...y } = r, b = { ...h || {} }, x = c[r.type];
152
- if (!x) {
153
- let e = h == null ? void 0 : h.default, t = _ || m || v;
154
- (t || r.dictType || r.options) && (b.default = (i) => {
155
- let { row: o, column: s } = i, c = t ? (e) => {
156
- let t = u(e);
157
- m || v ? (m == null || m(o, s, o, s, t, e), v == null || v(o, s, o, s, t, e)) : l(p, o, s, t, e);
158
- } : d, h = e == null ? void 0 : e(i);
159
- return f(h) && (h = null), (r.dictType || r.options) && !h ? n(a, {
160
- class: { "is-clickable": t },
161
- onClick: c,
162
- row: o,
163
- column: s,
164
- dictType: r.dictType,
165
- treeDict: r.treeDict,
166
- idAsValue: r.idAsValue,
167
- labelAsValue: r.labelAsValue,
168
- options: r.options
169
- }, null) : t ? n("span", {
170
- class: "is-clickable",
171
- onClick: c
172
- }, [h || (o == null ? void 0 : o[s == null ? void 0 : s.property])]) : h;
173
- });
174
- }
175
- let S = {
176
- ...g,
177
- props: {
178
- ...y,
179
- showOverflowTooltip: x ? !1 : y.showOverflowTooltip
180
- }
181
- };
182
- return n(i("ElTableColumn"), S, o(b) ? b : { default: () => [b] });
183
- }
184
- };
185
- //#endregion
186
- export { p as t };
@@ -1,484 +0,0 @@
1
- import { o as e, t } from "./install.yLcn5MLL.mjs";
2
- import { t as n } from "./_plugin-vue_export-helper.7vrlOII_.mjs";
3
- import { processButtons as r, reloadTable as i } from "../configComponents.mjs";
4
- import { l as a, t as o } from "./util.Ce4MHRmD.mjs";
5
- import s from "../form-item-config-provider/index.mjs";
6
- import { r as c } from "./core.DXaMPWGV.mjs";
7
- import { Transition as l, createBlock as u, createCommentVNode as d, createElementBlock as f, createElementVNode as p, createSlots as m, createTextVNode as h, createVNode as g, defineComponent as _, mergeProps as v, normalizeClass as y, normalizeStyle as b, openBlock as x, renderList as S, renderSlot as C, resolveComponent as w, toDisplayString as T, toHandlers as E, unref as D, vShow as O, withCtx as k, withDirectives as A, withModifiers as j } from "vue";
8
- import { hasOwn as M, isArray as N, isFunction as P, isString as F, toStringArray as I, trace as L, warning as R } from "@web-utils/core";
9
- import { merge as z } from "@web-utils/integrations/lodash";
10
- //#endregion
11
- //#region node_modules/.pnpm/element-plus@2.13.6_typescr_b7ae825491da06c0282fd613061a7e37/node_modules/element-plus/es/components/collapse-transition/index.mjs
12
- var B = t(/* @__PURE__ */ _({
13
- name: "ElCollapseTransition",
14
- __name: "collapse-transition",
15
- setup(t) {
16
- let n = e("collapse-transition"), r = (e) => {
17
- e.style.maxHeight = "", e.style.overflow = e.dataset.oldOverflow, e.style.paddingTop = e.dataset.oldPaddingTop, e.style.paddingBottom = e.dataset.oldPaddingBottom;
18
- }, i = {
19
- beforeEnter(e) {
20
- e.dataset || (e.dataset = {}), e.dataset.oldPaddingTop = e.style.paddingTop, e.dataset.oldPaddingBottom = e.style.paddingBottom, e.style.height && (e.dataset.elExistsHeight = e.style.height), e.style.maxHeight = 0, e.style.paddingTop = 0, e.style.paddingBottom = 0;
21
- },
22
- enter(e) {
23
- requestAnimationFrame(() => {
24
- e.dataset.oldOverflow = e.style.overflow, e.dataset.elExistsHeight ? e.style.maxHeight = e.dataset.elExistsHeight : e.scrollHeight === 0 ? e.style.maxHeight = 0 : e.style.maxHeight = `${e.scrollHeight}px`, e.style.paddingTop = e.dataset.oldPaddingTop, e.style.paddingBottom = e.dataset.oldPaddingBottom, e.style.overflow = "hidden";
25
- });
26
- },
27
- afterEnter(e) {
28
- e.style.maxHeight = "", e.style.overflow = e.dataset.oldOverflow;
29
- },
30
- enterCancelled(e) {
31
- r(e);
32
- },
33
- beforeLeave(e) {
34
- e.dataset || (e.dataset = {}), e.dataset.oldPaddingTop = e.style.paddingTop, e.dataset.oldPaddingBottom = e.style.paddingBottom, e.dataset.oldOverflow = e.style.overflow, e.style.maxHeight = `${e.scrollHeight}px`, e.style.overflow = "hidden";
35
- },
36
- leave(e) {
37
- e.scrollHeight !== 0 && (e.style.maxHeight = 0, e.style.paddingTop = 0, e.style.paddingBottom = 0);
38
- },
39
- afterLeave(e) {
40
- r(e);
41
- },
42
- leaveCancelled(e) {
43
- r(e);
44
- }
45
- };
46
- return (e, t) => (x(), u(l, v({ name: D(n).b() }, E(i)), {
47
- default: k(() => [C(e.$slots, "default")]),
48
- _: 3
49
- }, 16, ["name"]));
50
- }
51
- })), V = [
52
- "back",
53
- "create",
54
- "save",
55
- "withdraw",
56
- "edit",
57
- "submit",
58
- "publish",
59
- "agree",
60
- "disagree",
61
- "reject",
62
- "finish",
63
- "cancel",
64
- "enable",
65
- "exp",
66
- "imp",
67
- "del",
68
- "disabled",
69
- "reload",
70
- "slot"
71
- ], H = {
72
- name: "TableView",
73
- bus: {
74
- reloadTableView(e) {
75
- if (this._viewIds) if (F(e) || N(e)) {
76
- let t = e;
77
- F(t) && (t = t.split(",")), this._viewIds.some((e) => t.includes(e)) && (L.call(this.$parent || {}, "reloadTableView"), this.reloadTable());
78
- } else R.call(this.$parent || {}, "`viewId`的类型必须是字符串或数组");
79
- },
80
- reloadTreeView(e) {
81
- if (this._viewIds) if (F(e) || N(e)) {
82
- let t = e;
83
- F(t) && (t = t.split(",")), this._viewIds.some((e) => t.includes(e)) && this.$refs.tree && (L.call(this.$parent || {}, "reloadTreeView"), this.reloadTree());
84
- } else R.call(this.$parent || {}, "`viewId`的类型必须是字符串或数组");
85
- }
86
- },
87
- components: {
88
- FormItemConfigProvider: s,
89
- ElCollapseTransition: a(B)
90
- },
91
- props: {
92
- viewId: [String, Array],
93
- searchPanelAttrs: {
94
- type: Object,
95
- default: () => {}
96
- },
97
- toolbarAttrs: {
98
- type: Object,
99
- default: () => {}
100
- },
101
- toolbarListeners: Object,
102
- treeAttrs: {
103
- type: Object,
104
- default: () => {}
105
- },
106
- treeListeners: Object,
107
- tableAttrs: Object,
108
- searchModel: Object,
109
- tableListeners: {
110
- type: Object,
111
- default: () => {}
112
- },
113
- deleteApi: Function,
114
- borderTop: Boolean,
115
- borderBottom: Boolean,
116
- borderLeft: Boolean,
117
- borderRight: Boolean,
118
- border: {
119
- type: Boolean,
120
- default: !0
121
- },
122
- labelWidth: {
123
- type: String,
124
- default: "120px"
125
- },
126
- formPath: [String, Function],
127
- searchFormPosition: {
128
- type: String,
129
- default: "top"
130
- },
131
- embed: Boolean,
132
- deleteTips: String,
133
- selectTips: String,
134
- rowKey: {
135
- type: String,
136
- default: "id"
137
- },
138
- expandSearch: Boolean,
139
- showToolbar: {
140
- type: Boolean,
141
- default: !0
142
- }
143
- },
144
- emits: ["reset"],
145
- data() {
146
- return {
147
- importDialogVisible: !1,
148
- selectedRows: [],
149
- isSearchVisible: !1
150
- };
151
- },
152
- computed: {
153
- buttonSlots() {
154
- return V.filter((e) => this.$slots[e]);
155
- },
156
- toolbarProps() {
157
- var e, t;
158
- let n = z({}, this.toolbarAttrs, {}), i = (n == null ? void 0 : n.buttons) || this.$parent.buttons;
159
- return i = i || [], n.buttons = i, n.buttons = r(n.buttons), n.buttons = I(n.buttons), n.searchable = !!((e = (t = this.$slots)["search-form"]) != null && e.call(t)), n;
160
- },
161
- treeProps() {
162
- return c(z({}, this.treeAttrs, {
163
- treeProps: {
164
- children: "children",
165
- label: "label",
166
- isLeaf: (e) => M(e, "hasChildren") ? !e.hasChildren : M(e, "hasChild") ? !e.hasChild : !0
167
- },
168
- show: !1,
169
- lazy: !0,
170
- readonly: !0,
171
- data: [],
172
- expandFirstNode: !0,
173
- defaultExpandAll: !1
174
- }));
175
- },
176
- tableProps() {
177
- let e = this.tableAttrs.api || this.$parent.getPage, t = {
178
- model: this.searchModel || {},
179
- height: "auto",
180
- highlightCurrentRow: !0,
181
- api: e
182
- };
183
- return c(z({}, this.tableAttrs, t));
184
- },
185
- searchPanelProps() {
186
- let e = {
187
- width: 350,
188
- model: this.searchModel || {}
189
- };
190
- return c(z({}, this.searchPanelAttrs, e));
191
- },
192
- toolbarEventHandlers() {
193
- if (this.toolbarListeners) {
194
- let { exp: e, ...t } = this.toolbarListeners;
195
- return t;
196
- }
197
- return null;
198
- },
199
- tableScopeSlotNames() {
200
- var e;
201
- return ((e = this.tableAttrs) == null || (e = e.columns) == null ? void 0 : e.map((e) => e.prop).filter((e) => this.$slots[e])) ?? [];
202
- }
203
- },
204
- watch: { expandSearch: {
205
- immediate: !0,
206
- handler(e) {
207
- this.isSearchVisible = e;
208
- }
209
- } },
210
- created() {
211
- this._viewIds = [], this.viewId && this._viewIds.push(this.viewId), this._viewIds.includes(this.$parent.$options.name) || this._viewIds.push(this.$parent.$options.name);
212
- },
213
- activated() {
214
- this.$refs.treeScroller && (this.treeScrollTop && (this.$refs.treeScroller.scrollTop = this.treeScrollTop), this.treeScrollLeft && (this.$refs.treeScroller.scrollLeft = this.treeScrollLeft));
215
- },
216
- methods: {
217
- toHyphenateKey: c,
218
- onTreeScroll() {
219
- this.treeScrollTop = this.$refs.treeScroller.scrollTop, this.treeScrollLeft = this.$refs.treeScroller.scrollLeft;
220
- },
221
- toggleSearch() {
222
- this.isSearchVisible = !this.isSearchVisible;
223
- },
224
- onSearchClick() {
225
- this.reloadTable();
226
- },
227
- onClearClick() {
228
- this.$emit("reset"), this.$refs.form.resetFields(), this.reloadTable();
229
- },
230
- openFrom(e) {
231
- this.$router.push(o(this.formPath, e));
232
- },
233
- rowDbClick(e) {
234
- var t;
235
- !((t = this.tableListeners) != null && t["row-dblclick"]) && this.formPath && this.openFrom(e);
236
- },
237
- onSelectionChange(e) {
238
- this.selectedRows = e;
239
- },
240
- create() {
241
- var e;
242
- !((e = this.toolbarListeners) != null && e.create) && this.formPath && this.openFrom();
243
- },
244
- async del() {
245
- var e;
246
- let t = this.deleteApi || this.$parent.del;
247
- if (!((e = this.toolbarListeners) != null && e.del) && P(t)) {
248
- if (!this.selectedRows.length) {
249
- this.$message.warning(this.selectTips || "请选择要删除的记录!");
250
- return;
251
- }
252
- await this.$confirm(this.deleteTips || `您确定要删除选中的[<span class="break-word" style="color: orange">${this.selectedRows.length}</span>]行记录吗?`, "系统提示", {
253
- type: "warning",
254
- modal: !0,
255
- dangerouslyUseHTMLString: !0,
256
- closeOnClickModal: !1,
257
- beforeClose: async (e, n, r) => {
258
- if (e === "confirm") try {
259
- n.confirmButtonLoading = !0, n.confirmButtonText = "删除...";
260
- let e = await t.call(this, this.selectedRows.map((e) => e[this.rowKey]));
261
- this.$message.success(e.data.msg || "删除成功"), this.reloadTableAndTree(), i();
262
- } catch {}
263
- r();
264
- }
265
- }).catch((e) => e);
266
- }
267
- },
268
- reloadTable() {
269
- var e;
270
- (e = this.$refs.table) == null || e.reload();
271
- },
272
- async refreshTable(e) {
273
- var t;
274
- await ((t = this.$refs.table) == null ? void 0 : t.getPage(e));
275
- },
276
- reloadTree() {
277
- var e;
278
- (e = this.$refs.tree) == null || e.reloadTree();
279
- },
280
- reloadTableAndTree() {
281
- this.reloadTable(), this.reloadTree();
282
- },
283
- currentRow() {
284
- return this.$refs.table.currentRow;
285
- },
286
- getPageQuery() {
287
- return this.$refs.table.getPageQuery();
288
- },
289
- exp() {
290
- var e, t;
291
- (e = (t = this.toolbarListeners).exp) == null || e.call(t, this.selectedRows);
292
- },
293
- getTableColumns() {
294
- return this.$refs.table.tableColumns;
295
- }
296
- }
297
- }, U = { class: "table-view-wrapper" }, W = {
298
- key: 0,
299
- class: "search-form-top"
300
- }, G = { class: "table-view-content-wrapper" }, K = { class: "table-view-content" }, q = { class: "table-view-table" }, J = { class: "slide-panel-content" }, Y = { class: "slide-panel-actions" };
301
- function X(e, t, n, r, i, a) {
302
- let o = w("ElButton"), s = w("FormItem"), c = w("ElRow"), _ = w("FormItemConfigProvider"), D = w("ElForm"), M = w("ElCollapseTransition"), N = w("Toolbar"), P = w("EditableTree"), F = w("PageableTable"), I = w("ElFormItem");
303
- return x(), f("div", { class: y(["table-view", {
304
- embed: n.embed,
305
- "has-tree": a.treeProps.show
306
- }]) }, [p("div", U, [
307
- d("搜索条件"),
308
- n.searchFormPosition === "top" ? (x(), u(M, { key: 0 }, {
309
- default: k(() => [a.toolbarProps.searchable ? A((x(), f("div", W, [g(D, {
310
- ref: "form",
311
- "label-position": "right",
312
- model: n.searchModel || a.searchPanelProps.model,
313
- size: "default",
314
- "label-width": n.labelWidth,
315
- onSubmitCapture: j(a.onSearchClick, ["prevent"])
316
- }, {
317
- default: k(() => [g(_, { reactive: "" }, {
318
- default: k(() => [g(c, { gutter: 0 }, {
319
- default: k(() => [C(e.$slots, "search-form", {}, () => [t[3] || (t[3] = p("p", null, "请添加搜索条件!", -1))]), g(s, {
320
- class: "search-actions",
321
- "hide-label": ""
322
- }, {
323
- default: k(() => [g(o, {
324
- type: "primary",
325
- "native-type": "submit",
326
- size: "default"
327
- }, {
328
- default: k(() => [...t[4] || (t[4] = [h("开始搜索", -1)])]),
329
- _: 1
330
- }), g(o, {
331
- size: "default",
332
- style: { "margin-left": "10px" },
333
- onClick: a.onClearClick
334
- }, {
335
- default: k(() => [...t[5] || (t[5] = [h("清除条件", -1)])]),
336
- _: 1
337
- }, 8, ["onClick"])]),
338
- _: 1
339
- })]),
340
- _: 3
341
- })]),
342
- _: 3
343
- })]),
344
- _: 3
345
- }, 8, [
346
- "model",
347
- "label-width",
348
- "onSubmitCapture"
349
- ])], 512)), [[O, i.isSearchVisible]]) : d("v-if", !0)]),
350
- _: 3
351
- })) : d("v-if", !0),
352
- d("顶部工具条"),
353
- n.showToolbar ? (x(), u(N, v({ key: 1 }, a.toolbarProps, {
354
- refreshable: "",
355
- onSearch: a.toggleSearch,
356
- onSettings: t[0] || (t[0] = () => e.$refs.table.toggleSettings()),
357
- onDel: a.del,
358
- onCreate: a.create,
359
- onReload: a.reloadTableAndTree,
360
- onExp: a.exp,
361
- onImp: t[1] || (t[1] = (e) => i.importDialogVisible = !0)
362
- }, E(a.toolbarEventHandlers)), m({
363
- default: k(() => [C(e.$slots, "toolbar-button", { selectedRows: i.selectedRows })]),
364
- "toolbar-left": k(() => [C(e.$slots, "toolbar-left", { selectedRows: i.selectedRows })]),
365
- "toolbar-right": k(() => [C(e.$slots, "toolbar-right", {
366
- del: a.del,
367
- create: a.create,
368
- reload: a.reloadTableAndTree,
369
- selectedRows: i.selectedRows
370
- })]),
371
- "toolbar-right-button": k(() => [C(e.$slots, "toolbar-right-button")]),
372
- _: 2
373
- }, [S(a.buttonSlots, (t) => ({
374
- name: t,
375
- fn: k(() => [C(e.$slots, t, { selectedRows: i.selectedRows })])
376
- }))]), 1040, [
377
- "onSearch",
378
- "onDel",
379
- "onCreate",
380
- "onReload",
381
- "onExp"
382
- ])) : d("v-if", !0),
383
- p("div", G, [
384
- p("div", K, [
385
- d("侧栏"),
386
- a.treeProps.show ? (x(), f("div", {
387
- key: 0,
388
- ref: "treeScroller",
389
- class: "table-view-sidebar",
390
- onScroll: t[2] || (t[2] = (...e) => a.onTreeScroll && a.onTreeScroll(...e))
391
- }, [d("<div style=\"font-size: 16px\">视图导航</div>"), g(P, v({ ref: "tree" }, a.treeProps, { readonly: "" }, E(a.toHyphenateKey(n.treeListeners))), {
392
- default: k(({ node: t, data: n }) => [C(e.$slots, "tree-node", {
393
- node: t,
394
- data: n
395
- }, () => [p("span", null, [p("i", { class: y([t.childNodes.length > 0 ? t.expanded ? "el-icon-folder-opened" : "el-icon-folder" : "el-icon-tickets", "node-icon"]) }, null, 2), C(e.$slots, "tree-label", {
396
- node: t,
397
- data: n
398
- }, () => [h(T(t.label), 1)])])])]),
399
- _: 3
400
- }, 16)], 544)) : d("v-if", !0),
401
- d("表格"),
402
- p("div", q, [g(F, v({
403
- ref: "table",
404
- border: n.border,
405
- class: [{
406
- "border-top": n.borderTop,
407
- "border-bottom": n.borderBottom,
408
- "border-left": n.borderLeft || n.treeAttrs && n.treeAttrs.show,
409
- "border-right": n.borderRight
410
- }]
411
- }, a.tableProps, E(a.toHyphenateKey(n.tableListeners)), {
412
- onRowDblclick: a.rowDbClick,
413
- onSelectionChange: a.onSelectionChange
414
- }), m({
415
- default: k(() => [C(e.$slots, "columns")]),
416
- _: 2
417
- }, [S(a.tableScopeSlotNames, (t) => ({
418
- name: t,
419
- fn: k(({ row: n }) => [C(e.$slots, t, { row: n })])
420
- }))]), 1040, [
421
- "border",
422
- "class",
423
- "onRowDblclick",
424
- "onSelectionChange"
425
- ])])
426
- ]),
427
- d("搜索条件"),
428
- n.searchFormPosition === "right" ? (x(), u(l, {
429
- key: 0,
430
- name: "slide"
431
- }, {
432
- default: k(() => [a.toolbarProps.searchable ? A((x(), f("div", {
433
- key: 0,
434
- style: b({ width: `${a.searchPanelProps.width}px` }),
435
- class: "slide-panel"
436
- }, [d("<div class=\"slide-panel-line\">\n <div class=\"slide-panel-line-indicator\"></div>\n </div>"), p("div", J, [g(D, {
437
- ref: "form",
438
- "label-position": "right",
439
- model: n.searchModel || a.searchPanelProps.model,
440
- size: "default",
441
- "label-width": n.labelWidth,
442
- onSubmitCapture: j(a.onSearchClick, ["prevent"])
443
- }, {
444
- default: k(() => [g(_, {
445
- block: "",
446
- "wrap-col": !1
447
- }, {
448
- default: k(() => [g(c, { gutter: 0 }, {
449
- default: k(() => [C(e.$slots, "search-form", {}, () => [t[6] || (t[6] = p("p", null, "请添加搜索条件!", -1))])]),
450
- _: 3
451
- })]),
452
- _: 3
453
- }), g(I, { "label-width": "0" }, {
454
- default: k(() => [p("div", Y, [g(o, {
455
- type: "primary",
456
- "native-type": "submit",
457
- size: "default"
458
- }, {
459
- default: k(() => [...t[7] || (t[7] = [h("开始搜索", -1)])]),
460
- _: 1
461
- }), g(o, {
462
- size: "default",
463
- onClick: a.onClearClick
464
- }, {
465
- default: k(() => [...t[8] || (t[8] = [h("清除条件", -1)])]),
466
- _: 1
467
- }, 8, ["onClick"])])]),
468
- _: 1
469
- })]),
470
- _: 3
471
- }, 8, [
472
- "model",
473
- "label-width",
474
- "onSubmitCapture"
475
- ])])], 4)), [[O, i.isSearchVisible]]) : d("v-if", !0)]),
476
- _: 3
477
- })) : d("v-if", !0)
478
- ]),
479
- C(e.$slots, "default")
480
- ])], 2);
481
- }
482
- var Z = /* @__PURE__ */ n(H, [["render", X]]);
483
- //#endregion
484
- export { Z as t };