@expcat/tigercat-vue 1.5.0 → 2.0.0-preview.1

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 (609) hide show
  1. package/dist/{chunk-MF7BKYGN.mjs → chunk-2QWGVJW6.mjs} +29 -15
  2. package/dist/{chunk-WWB7VKKH.mjs → chunk-36WSYHJU.mjs} +53 -7
  3. package/dist/chunk-4RKBXGHQ.mjs +52 -0
  4. package/dist/{chunk-ALFEFDVG.mjs → chunk-4ZKSTL5P.mjs} +47 -21
  5. package/dist/{chunk-YZP4K6KI.mjs → chunk-6BDDX2R4.mjs} +9 -9
  6. package/dist/{chunk-Y4V7BOVR.mjs → chunk-6TTICJR4.mjs} +9 -7
  7. package/dist/{chunk-S4Z77VIB.mjs → chunk-AZXS4QWC.mjs} +8 -8
  8. package/dist/{chunk-RD2NFAB6.mjs → chunk-BGO2ILHM.mjs} +9 -9
  9. package/dist/{chunk-6CS3EEQU.mjs → chunk-BNNTDSLJ.mjs} +83 -0
  10. package/dist/{chunk-5CHHWMES.mjs → chunk-DOVBKVTB.mjs} +1 -1
  11. package/dist/chunk-ESBUNMIG.mjs +49 -0
  12. package/dist/{chunk-KJ6VISRW.mjs → chunk-EUSODI5E.mjs} +1 -1
  13. package/dist/{chunk-LHOSPU6V.mjs → chunk-FDKJOVXG.mjs} +9 -18
  14. package/dist/{chunk-LHZ5MRFQ.mjs → chunk-FHJ3R57L.mjs} +9 -9
  15. package/dist/{chunk-PMN2MQ26.mjs → chunk-FIVVKBBF.mjs} +3 -3
  16. package/dist/{chunk-JGW7R7AZ.mjs → chunk-G7MOTNJO.mjs} +8 -8
  17. package/dist/{chunk-WSUCJHJX.mjs → chunk-GAEO66NY.mjs} +2 -2
  18. package/dist/chunk-GMIKUE67.mjs +201 -0
  19. package/dist/chunk-GTFAC625.mjs +120 -0
  20. package/dist/{chunk-LSWTZHBV.mjs → chunk-HGXD57QM.mjs} +23 -2
  21. package/dist/{chunk-X43QLJ5E.mjs → chunk-IGT4QB7O.mjs} +4 -4
  22. package/dist/{chunk-3VFZB5ZK.mjs → chunk-IQNZ4UEA.mjs} +10 -13
  23. package/dist/{chunk-QH3YF5B6.mjs → chunk-JMVALNIO.mjs} +52 -25
  24. package/dist/{chunk-UTGFGMZT.mjs → chunk-JPCMI3A4.mjs} +8 -8
  25. package/dist/{chunk-SMCOBLF6.mjs → chunk-KBJANUZZ.mjs} +6 -6
  26. package/dist/{chunk-M4EP4OVR.mjs → chunk-KE6RGD4Y.mjs} +2 -1
  27. package/dist/chunk-KIPTVKU2.mjs +104 -0
  28. package/dist/{chunk-LGDJDBE3.mjs → chunk-KR3D2JOA.mjs} +4 -7
  29. package/dist/{chunk-VYBRLIKF.mjs → chunk-MJRFB6ZA.mjs} +8 -8
  30. package/dist/{chunk-UKMOWUYH.mjs → chunk-MYKKKVGK.mjs} +2 -2
  31. package/dist/{chunk-3AF4VRCD.mjs → chunk-N3C6YI7I.mjs} +8 -8
  32. package/dist/{chunk-57VPT3MN.mjs → chunk-NYWIBDO6.mjs} +8 -8
  33. package/dist/{chunk-PJX2DHO5.mjs → chunk-O4F75KHL.mjs} +8 -8
  34. package/dist/{chunk-CIDINFA2.mjs → chunk-ODDPVS27.mjs} +35 -10
  35. package/dist/{chunk-64EZRIJL.mjs → chunk-QD5ZCKPR.mjs} +1 -1
  36. package/dist/{chunk-4RK5BDGR.mjs → chunk-RAO7ZJWR.mjs} +9 -9
  37. package/dist/{chunk-G2LB4QCL.mjs → chunk-SPFL55TF.mjs} +4 -4
  38. package/dist/{chunk-6OQLZCQK.mjs → chunk-SYRRMZT2.mjs} +1 -1
  39. package/dist/{chunk-IJL7YYT7.mjs → chunk-TQDN67YN.mjs} +29 -3
  40. package/dist/{chunk-SC3WTLKG.mjs → chunk-UD4FNMJN.mjs} +22 -5
  41. package/dist/{chunk-CVFXUYH2.mjs → chunk-VFUBOKGT.mjs} +4 -4
  42. package/dist/{chunk-XMGNMKWW.mjs → chunk-VMYV5EWI.mjs} +4 -3
  43. package/dist/{chunk-OSPHI5TV.mjs → chunk-W7X5ZHJ3.mjs} +4 -9
  44. package/dist/{chunk-TRN5PL5D.mjs → chunk-WYJ5WOT2.mjs} +28 -12
  45. package/dist/chunk-Y2HO4IBQ.mjs +150 -0
  46. package/dist/{chunk-XJ5VGC5V.mjs → chunk-YJSWHGAR.mjs} +24 -10
  47. package/dist/{chunk-N2QGYEOQ.mjs → chunk-YSKG5FSX.mjs} +1 -1
  48. package/dist/{chunk-BRGQXIKA.mjs → chunk-Z4NJJ7NI.mjs} +9 -9
  49. package/dist/components/ActivityFeed.mjs +3 -3
  50. package/dist/components/AreaChart.d.mts +6 -6
  51. package/dist/components/AreaChart.mjs +5 -5
  52. package/dist/components/AutoComplete.d.mts +28 -9
  53. package/dist/components/AutoComplete.mjs +1 -1
  54. package/dist/components/BackTop.d.mts +28 -1
  55. package/dist/components/BackTop.mjs +1 -1
  56. package/dist/components/BarChart.mjs +5 -5
  57. package/dist/components/Breadcrumb.d.mts +1 -1
  58. package/dist/components/Card.d.mts +7 -7
  59. package/dist/components/Carousel.d.mts +24 -7
  60. package/dist/components/Carousel.mjs +1 -1
  61. package/dist/components/Cascader.d.mts +38 -16
  62. package/dist/components/Cascader.mjs +1 -1
  63. package/dist/components/ChartTooltip.d.mts +4 -4
  64. package/dist/components/ChartTooltip.mjs +1 -1
  65. package/dist/components/ChatWindow.mjs +1 -1
  66. package/dist/components/Checkbox.d.mts +8 -8
  67. package/dist/components/Checkbox.mjs +1 -1
  68. package/dist/components/CheckboxGroup.d.mts +8 -8
  69. package/dist/components/ColorPicker.d.mts +4 -4
  70. package/dist/components/ColorSwatch.d.mts +4 -4
  71. package/dist/components/CommentThread.mjs +1 -1
  72. package/dist/components/CropUpload.mjs +2 -2
  73. package/dist/components/DataTableWithToolbar.d.mts +1 -11
  74. package/dist/components/DataTableWithToolbar.mjs +8 -8
  75. package/dist/components/DatePicker.d.mts +7 -7
  76. package/dist/components/DatePicker.mjs +1 -1
  77. package/dist/components/Descriptions.d.mts +7 -7
  78. package/dist/components/DonutChart.d.mts +11 -11
  79. package/dist/components/DonutChart.mjs +5 -5
  80. package/dist/components/Drawer.d.mts +8 -27
  81. package/dist/components/Drawer.mjs +1 -1
  82. package/dist/components/Dropdown.d.mts +69 -2
  83. package/dist/components/Dropdown.mjs +3 -1
  84. package/dist/components/FloatButton.d.mts +31 -1
  85. package/dist/components/FloatButton.mjs +1 -1
  86. package/dist/components/Form.d.mts +8 -8
  87. package/dist/components/FormItem.d.mts +4 -4
  88. package/dist/components/FunnelChart.mjs +4 -4
  89. package/dist/components/GaugeChart.mjs +2 -2
  90. package/dist/components/HeatmapChart.mjs +3 -3
  91. package/dist/components/Image.mjs +3 -3
  92. package/dist/components/ImageGroup.d.mts +2 -2
  93. package/dist/components/ImageGroup.mjs +2 -2
  94. package/dist/components/ImagePreview.d.mts +22 -12
  95. package/dist/components/ImagePreview.mjs +1 -1
  96. package/dist/components/ImageViewer.d.mts +6 -16
  97. package/dist/components/ImageViewer.mjs +1 -1
  98. package/dist/components/Input.d.mts +5 -5
  99. package/dist/components/InputGroup.d.mts +6 -6
  100. package/dist/components/InputNumber.d.mts +5 -5
  101. package/dist/components/LineChart.mjs +5 -5
  102. package/dist/components/List.d.mts +7 -7
  103. package/dist/components/Menu.d.mts +5 -5
  104. package/dist/components/Message.d.mts +4 -39
  105. package/dist/components/Message.mjs +139 -4
  106. package/dist/components/{Message.d.ts → MessageContainer.d.mts} +5 -18
  107. package/dist/components/MessageContainer.mjs +9 -0
  108. package/dist/components/MessageRoot.d.mts +9 -0
  109. package/dist/components/MessageRoot.mjs +6 -0
  110. package/dist/components/Modal.d.mts +2 -20
  111. package/dist/components/Modal.mjs +1 -1
  112. package/dist/components/Notification.d.mts +4 -29
  113. package/dist/components/Notification.mjs +189 -4
  114. package/dist/components/{Notification.d.ts → NotificationContainer.d.mts} +15 -17
  115. package/dist/components/NotificationContainer.mjs +9 -0
  116. package/dist/components/NotificationRoot.d.mts +9 -0
  117. package/dist/components/NotificationRoot.mjs +6 -0
  118. package/dist/components/PieChart.mjs +4 -4
  119. package/dist/components/Popconfirm.mjs +2 -2
  120. package/dist/components/Popover.mjs +2 -2
  121. package/dist/components/RadarChart.mjs +4 -4
  122. package/dist/components/Radio.d.mts +15 -15
  123. package/dist/components/Radio.mjs +2 -2
  124. package/dist/components/RadioGroup.d.mts +16 -16
  125. package/dist/components/RadioGroup.mjs +1 -1
  126. package/dist/components/ScatterChart.mjs +5 -5
  127. package/dist/components/Segmented.d.mts +4 -4
  128. package/dist/components/Select.d.mts +37 -36
  129. package/dist/components/Select.mjs +1 -1
  130. package/dist/components/Slider.d.mts +7 -7
  131. package/dist/components/Space.d.mts +11 -11
  132. package/dist/components/Statistic.d.mts +4 -4
  133. package/dist/components/Stepper.d.mts +4 -4
  134. package/dist/components/SunburstChart.mjs +4 -4
  135. package/dist/components/Switch.d.mts +14 -14
  136. package/dist/components/Switch.mjs +1 -1
  137. package/dist/components/Table.d.mts +0 -10
  138. package/dist/components/Table.mjs +5 -5
  139. package/dist/components/Textarea.d.mts +7 -7
  140. package/dist/components/TimePicker.d.mts +9 -9
  141. package/dist/components/TimePicker.mjs +1 -1
  142. package/dist/components/Tooltip.mjs +2 -2
  143. package/dist/components/Transfer.d.mts +31 -11
  144. package/dist/components/Transfer.mjs +1 -1
  145. package/dist/components/TreeMapChart.mjs +4 -4
  146. package/dist/components/TreeSelect.d.mts +32 -12
  147. package/dist/components/TreeSelect.mjs +1 -1
  148. package/dist/components/VirtualTable.d.mts +24 -33
  149. package/dist/components/VirtualTable.mjs +1 -1
  150. package/dist/composables/useChartInteraction.d.mts +84 -0
  151. package/dist/composables/useChartInteraction.mjs +6 -0
  152. package/dist/composables/useDrag.d.mts +40 -0
  153. package/dist/composables/useDrag.mjs +6 -0
  154. package/dist/composables/useFormController.d.mts +23 -0
  155. package/dist/composables/useFormController.mjs +6 -0
  156. package/dist/index.d.mts +11 -144
  157. package/dist/index.mjs +2155 -826
  158. package/package.json +743 -13
  159. package/dist/chunk-2DC3BMED.js +0 -92
  160. package/dist/chunk-2FYVPPTD.js +0 -315
  161. package/dist/chunk-2RCBEBBR.js +0 -376
  162. package/dist/chunk-2VOZFFW6.js +0 -138
  163. package/dist/chunk-37LDNXLO.js +0 -243
  164. package/dist/chunk-3QV2D54H.js +0 -207
  165. package/dist/chunk-43BLH7DE.js +0 -166
  166. package/dist/chunk-54VVFMYI.js +0 -69
  167. package/dist/chunk-55BSMMUN.js +0 -202
  168. package/dist/chunk-57MJTNDL.js +0 -128
  169. package/dist/chunk-5FTM7R3P.js +0 -142
  170. package/dist/chunk-5PVDNJA5.js +0 -103
  171. package/dist/chunk-5PXTMXXS.js +0 -159
  172. package/dist/chunk-5UOAWXOQ.js +0 -243
  173. package/dist/chunk-67RSRWWY.js +0 -451
  174. package/dist/chunk-6WFFP4K2.mjs +0 -325
  175. package/dist/chunk-72DDCIVL.js +0 -68
  176. package/dist/chunk-75TB3YIJ.js +0 -124
  177. package/dist/chunk-7ADONGSB.js +0 -49
  178. package/dist/chunk-7CR6MLD5.js +0 -141
  179. package/dist/chunk-7FWZIAFP.js +0 -482
  180. package/dist/chunk-7GYYIDMA.js +0 -325
  181. package/dist/chunk-7J7JIIHX.js +0 -230
  182. package/dist/chunk-7KYGVEHF.js +0 -364
  183. package/dist/chunk-7RMBEWN2.js +0 -360
  184. package/dist/chunk-A7FN3S4I.js +0 -150
  185. package/dist/chunk-AF7JZUTA.js +0 -755
  186. package/dist/chunk-ANQRW442.js +0 -468
  187. package/dist/chunk-APBWQGXW.js +0 -250
  188. package/dist/chunk-AWXSJNNP.js +0 -267
  189. package/dist/chunk-AYQER5UD.js +0 -96
  190. package/dist/chunk-BNUR72YP.js +0 -142
  191. package/dist/chunk-BPJOIFND.js +0 -305
  192. package/dist/chunk-BV6XWFRF.js +0 -360
  193. package/dist/chunk-BYNTPLGC.js +0 -79
  194. package/dist/chunk-BZ56UKUK.js +0 -483
  195. package/dist/chunk-CFJST2X2.js +0 -808
  196. package/dist/chunk-CGZFRSI5.mjs +0 -98
  197. package/dist/chunk-CTAQ5WEN.js +0 -95
  198. package/dist/chunk-CWNEDREV.js +0 -165
  199. package/dist/chunk-D43IFX7J.js +0 -196
  200. package/dist/chunk-D6Y3KVJF.js +0 -211
  201. package/dist/chunk-DE5WMG6P.js +0 -291
  202. package/dist/chunk-DYSLYJ2W.js +0 -92
  203. package/dist/chunk-E36I27WK.js +0 -362
  204. package/dist/chunk-EG7XX6U4.js +0 -98
  205. package/dist/chunk-EQW6IUHG.js +0 -163
  206. package/dist/chunk-ETTYERGO.js +0 -83
  207. package/dist/chunk-F5TZIFMW.js +0 -145
  208. package/dist/chunk-FC7RXQTM.js +0 -153
  209. package/dist/chunk-GBYNY77G.js +0 -342
  210. package/dist/chunk-GJ5HJOQP.js +0 -859
  211. package/dist/chunk-GV3LRZSR.js +0 -257
  212. package/dist/chunk-H2XEJHGR.js +0 -327
  213. package/dist/chunk-H7GAWNOW.js +0 -787
  214. package/dist/chunk-HA5QZ76M.js +0 -143
  215. package/dist/chunk-HBFFINAI.js +0 -58
  216. package/dist/chunk-HI45DI7S.js +0 -404
  217. package/dist/chunk-IUPNDTUF.js +0 -119
  218. package/dist/chunk-IXTYS3EK.js +0 -140
  219. package/dist/chunk-J77GQQEC.js +0 -318
  220. package/dist/chunk-JCMGBKS6.js +0 -59
  221. package/dist/chunk-JCPTFBLY.js +0 -112
  222. package/dist/chunk-JICPYKCT.js +0 -297
  223. package/dist/chunk-JKZ5ZRDG.js +0 -136
  224. package/dist/chunk-JMRR4KDB.js +0 -736
  225. package/dist/chunk-JTVFVAM3.js +0 -47
  226. package/dist/chunk-K2DJDJZR.js +0 -139
  227. package/dist/chunk-K2NJI5MW.js +0 -67
  228. package/dist/chunk-K3CIXMN4.js +0 -212
  229. package/dist/chunk-K6DYTMBE.js +0 -111
  230. package/dist/chunk-KGDRA475.js +0 -119
  231. package/dist/chunk-KLOUOXNA.js +0 -111
  232. package/dist/chunk-KTNT2JHB.js +0 -351
  233. package/dist/chunk-LKRT27JW.js +0 -149
  234. package/dist/chunk-LODEICSN.js +0 -253
  235. package/dist/chunk-LPHDX3UU.js +0 -279
  236. package/dist/chunk-LUBUJUSH.js +0 -45
  237. package/dist/chunk-MNVMGJUF.js +0 -341
  238. package/dist/chunk-MPVL53GP.js +0 -472
  239. package/dist/chunk-MQ23PX3S.js +0 -218
  240. package/dist/chunk-MSKAWM7K.js +0 -73
  241. package/dist/chunk-NCLUMDZB.js +0 -100
  242. package/dist/chunk-NQYE64IF.js +0 -130
  243. package/dist/chunk-OOMZBTHW.js +0 -328
  244. package/dist/chunk-OQBWITHA.js +0 -387
  245. package/dist/chunk-OQOJI5Q7.js +0 -158
  246. package/dist/chunk-OVXDO6KJ.js +0 -426
  247. package/dist/chunk-OXIODAJS.js +0 -192
  248. package/dist/chunk-PFWRFHSB.js +0 -164
  249. package/dist/chunk-PFZFPN7M.js +0 -383
  250. package/dist/chunk-PH6ERFC7.js +0 -545
  251. package/dist/chunk-QKJATAJP.js +0 -788
  252. package/dist/chunk-QOMWROWE.js +0 -136
  253. package/dist/chunk-QY6PYAJA.js +0 -194
  254. package/dist/chunk-RAUERIPS.js +0 -100
  255. package/dist/chunk-RBWJSHKR.js +0 -233
  256. package/dist/chunk-SIVMTPDY.js +0 -741
  257. package/dist/chunk-SJSZHQWX.js +0 -486
  258. package/dist/chunk-SOSHYDIX.js +0 -547
  259. package/dist/chunk-SWOQMMOT.js +0 -60
  260. package/dist/chunk-T4DF24UV.js +0 -114
  261. package/dist/chunk-TCB3WFYM.js +0 -374
  262. package/dist/chunk-TGHB5XST.js +0 -91
  263. package/dist/chunk-TLXEFLPA.js +0 -39
  264. package/dist/chunk-TNKULOHK.js +0 -476
  265. package/dist/chunk-TOD67L2E.js +0 -182
  266. package/dist/chunk-TXMPLBWW.js +0 -213
  267. package/dist/chunk-TYYJPEWG.js +0 -119
  268. package/dist/chunk-U36NBQWP.js +0 -192
  269. package/dist/chunk-U5TSCS34.js +0 -527
  270. package/dist/chunk-UFY654LD.js +0 -1005
  271. package/dist/chunk-UG6O4F2A.js +0 -150
  272. package/dist/chunk-UHVUKLHF.js +0 -112
  273. package/dist/chunk-UI7N2ZDU.js +0 -142
  274. package/dist/chunk-UKR3IJF3.js +0 -374
  275. package/dist/chunk-VDKUKZS2.js +0 -1866
  276. package/dist/chunk-VH2GDZBH.js +0 -284
  277. package/dist/chunk-VJ72Y54M.js +0 -241
  278. package/dist/chunk-VJJ7RAC6.mjs +0 -257
  279. package/dist/chunk-VQXDF6CB.js +0 -192
  280. package/dist/chunk-VUGFSHU2.js +0 -164
  281. package/dist/chunk-VXRFE72I.js +0 -852
  282. package/dist/chunk-W34IV4EC.js +0 -401
  283. package/dist/chunk-WF7KVMBY.js +0 -380
  284. package/dist/chunk-X73BZFBH.js +0 -238
  285. package/dist/chunk-X7PQRYUS.js +0 -697
  286. package/dist/chunk-XH4ZZ6KJ.js +0 -427
  287. package/dist/chunk-XMCYKHT4.js +0 -307
  288. package/dist/chunk-XSJKSUED.js +0 -139
  289. package/dist/chunk-XSMDZOBF.js +0 -154
  290. package/dist/chunk-XTMGF5YP.js +0 -103
  291. package/dist/chunk-XUOGT4HG.js +0 -76
  292. package/dist/chunk-XV6IYXAP.js +0 -140
  293. package/dist/chunk-XVNN6D55.js +0 -394
  294. package/dist/chunk-YI25YL5W.js +0 -283
  295. package/dist/chunk-YLMQZR6F.js +0 -430
  296. package/dist/chunk-YMUYN4IR.js +0 -434
  297. package/dist/chunk-YTE45DNC.js +0 -571
  298. package/dist/chunk-YVSINGGE.js +0 -320
  299. package/dist/chunk-ZHSXICH7.js +0 -264
  300. package/dist/chunk-ZMGNQKXL.js +0 -233
  301. package/dist/chunk-ZNVQ2OFX.js +0 -46
  302. package/dist/components/ActivityFeed.d.ts +0 -124
  303. package/dist/components/ActivityFeed.js +0 -18
  304. package/dist/components/Affix.d.ts +0 -75
  305. package/dist/components/Affix.js +0 -8
  306. package/dist/components/Alert.d.ts +0 -221
  307. package/dist/components/Alert.js +0 -9
  308. package/dist/components/Anchor.d.ts +0 -251
  309. package/dist/components/Anchor.js +0 -12
  310. package/dist/components/AnchorLink.d.mts +0 -8
  311. package/dist/components/AnchorLink.d.ts +0 -8
  312. package/dist/components/AnchorLink.js +0 -10
  313. package/dist/components/AnchorLink.mjs +0 -10
  314. package/dist/components/AreaChart.d.ts +0 -443
  315. package/dist/components/AreaChart.js +0 -15
  316. package/dist/components/AutoComplete.d.ts +0 -117
  317. package/dist/components/AutoComplete.js +0 -9
  318. package/dist/components/Avatar.d.ts +0 -162
  319. package/dist/components/Avatar.js +0 -9
  320. package/dist/components/AvatarGroup.d.ts +0 -49
  321. package/dist/components/AvatarGroup.js +0 -10
  322. package/dist/components/BackTop.d.ts +0 -88
  323. package/dist/components/BackTop.js +0 -8
  324. package/dist/components/Badge.d.ts +0 -116
  325. package/dist/components/Badge.js +0 -9
  326. package/dist/components/BarChart.d.ts +0 -400
  327. package/dist/components/BarChart.js +0 -15
  328. package/dist/components/Breadcrumb.d.ts +0 -235
  329. package/dist/components/Breadcrumb.js +0 -12
  330. package/dist/components/BreadcrumbItem.d.mts +0 -8
  331. package/dist/components/BreadcrumbItem.d.ts +0 -8
  332. package/dist/components/BreadcrumbItem.js +0 -10
  333. package/dist/components/BreadcrumbItem.mjs +0 -10
  334. package/dist/components/Button.d.ts +0 -146
  335. package/dist/components/Button.js +0 -9
  336. package/dist/components/ButtonGroup.d.ts +0 -42
  337. package/dist/components/ButtonGroup.js +0 -10
  338. package/dist/components/Calendar.d.ts +0 -78
  339. package/dist/components/Calendar.js +0 -9
  340. package/dist/components/Card.d.ts +0 -170
  341. package/dist/components/Card.js +0 -8
  342. package/dist/components/Carousel.d.ts +0 -247
  343. package/dist/components/Carousel.js +0 -8
  344. package/dist/components/Cascader.d.ts +0 -143
  345. package/dist/components/Cascader.js +0 -9
  346. package/dist/components/ChartAxis.d.ts +0 -110
  347. package/dist/components/ChartAxis.js +0 -8
  348. package/dist/components/ChartCanvas.d.ts +0 -69
  349. package/dist/components/ChartCanvas.js +0 -8
  350. package/dist/components/ChartGrid.d.ts +0 -109
  351. package/dist/components/ChartGrid.js +0 -8
  352. package/dist/components/ChartLegend.d.ts +0 -74
  353. package/dist/components/ChartLegend.js +0 -8
  354. package/dist/components/ChartSeries.d.ts +0 -52
  355. package/dist/components/ChartSeries.js +0 -8
  356. package/dist/components/ChartTooltip.d.ts +0 -58
  357. package/dist/components/ChartTooltip.js +0 -8
  358. package/dist/components/ChatWindow.d.ts +0 -255
  359. package/dist/components/ChatWindow.js +0 -18
  360. package/dist/components/Checkbox.d.ts +0 -144
  361. package/dist/components/Checkbox.js +0 -9
  362. package/dist/components/CheckboxGroup.d.ts +0 -126
  363. package/dist/components/CheckboxGroup.js +0 -10
  364. package/dist/components/Code.d.ts +0 -71
  365. package/dist/components/Code.js +0 -8
  366. package/dist/components/CodeEditor.d.ts +0 -183
  367. package/dist/components/CodeEditor.js +0 -8
  368. package/dist/components/Col.d.ts +0 -52
  369. package/dist/components/Col.js +0 -7
  370. package/dist/components/Collapse.d.ts +0 -162
  371. package/dist/components/Collapse.js +0 -10
  372. package/dist/components/CollapsePanel.d.ts +0 -112
  373. package/dist/components/CollapsePanel.js +0 -9
  374. package/dist/components/ColorPicker.d.ts +0 -70
  375. package/dist/components/ColorPicker.js +0 -8
  376. package/dist/components/ColorSwatch.d.ts +0 -79
  377. package/dist/components/ColorSwatch.js +0 -8
  378. package/dist/components/CommentThread.d.ts +0 -225
  379. package/dist/components/CommentThread.js +0 -17
  380. package/dist/components/ConfigProvider.d.ts +0 -76
  381. package/dist/components/ConfigProvider.js +0 -14
  382. package/dist/components/Container.d.ts +0 -86
  383. package/dist/components/Container.js +0 -8
  384. package/dist/components/Content.d.ts +0 -63
  385. package/dist/components/Content.js +0 -8
  386. package/dist/components/Countdown.d.ts +0 -107
  387. package/dist/components/Countdown.js +0 -8
  388. package/dist/components/CronEditor.d.ts +0 -80
  389. package/dist/components/CronEditor.js +0 -8
  390. package/dist/components/CropUpload.d.ts +0 -107
  391. package/dist/components/CropUpload.js +0 -14
  392. package/dist/components/DataTableWithToolbar.d.ts +0 -588
  393. package/dist/components/DataTableWithToolbar.js +0 -23
  394. package/dist/components/DatePicker.d.ts +0 -333
  395. package/dist/components/DatePicker.js +0 -10
  396. package/dist/components/Descriptions.d.ts +0 -204
  397. package/dist/components/Descriptions.js +0 -8
  398. package/dist/components/Divider.d.ts +0 -50
  399. package/dist/components/Divider.js +0 -8
  400. package/dist/components/DonutChart.d.ts +0 -332
  401. package/dist/components/DonutChart.js +0 -14
  402. package/dist/components/Drawer.d.ts +0 -396
  403. package/dist/components/Drawer.js +0 -10
  404. package/dist/components/Dropdown.d.ts +0 -241
  405. package/dist/components/Dropdown.js +0 -13
  406. package/dist/components/DropdownItem.d.mts +0 -73
  407. package/dist/components/DropdownItem.d.ts +0 -73
  408. package/dist/components/DropdownItem.js +0 -10
  409. package/dist/components/DropdownItem.mjs +0 -10
  410. package/dist/components/DropdownMenu.d.mts +0 -8
  411. package/dist/components/DropdownMenu.d.ts +0 -8
  412. package/dist/components/DropdownMenu.js +0 -11
  413. package/dist/components/DropdownMenu.mjs +0 -11
  414. package/dist/components/Empty.d.ts +0 -74
  415. package/dist/components/Empty.js +0 -9
  416. package/dist/components/FileManager.d.ts +0 -171
  417. package/dist/components/FileManager.js +0 -9
  418. package/dist/components/FloatButton.d.ts +0 -156
  419. package/dist/components/FloatButton.js +0 -10
  420. package/dist/components/Footer.d.ts +0 -63
  421. package/dist/components/Footer.js +0 -8
  422. package/dist/components/Form.d.ts +0 -291
  423. package/dist/components/Form.js +0 -11
  424. package/dist/components/FormItem.d.ts +0 -152
  425. package/dist/components/FormItem.js +0 -10
  426. package/dist/components/FormWizard.d.ts +0 -206
  427. package/dist/components/FormWizard.js +0 -12
  428. package/dist/components/FunnelChart.d.ts +0 -221
  429. package/dist/components/FunnelChart.js +0 -13
  430. package/dist/components/Gantt.d.ts +0 -231
  431. package/dist/components/Gantt.js +0 -9
  432. package/dist/components/GaugeChart.d.ts +0 -197
  433. package/dist/components/GaugeChart.js +0 -10
  434. package/dist/components/Header.d.ts +0 -82
  435. package/dist/components/Header.js +0 -8
  436. package/dist/components/HeatmapChart.d.ts +0 -233
  437. package/dist/components/HeatmapChart.js +0 -11
  438. package/dist/components/Icon.d.ts +0 -68
  439. package/dist/components/Icon.js +0 -8
  440. package/dist/components/Image.d.ts +0 -129
  441. package/dist/components/Image.js +0 -14
  442. package/dist/components/ImageAnnotation.d.ts +0 -189
  443. package/dist/components/ImageAnnotation.js +0 -9
  444. package/dist/components/ImageCropper.d.ts +0 -116
  445. package/dist/components/ImageCropper.js +0 -9
  446. package/dist/components/ImageGroup.d.ts +0 -30
  447. package/dist/components/ImageGroup.js +0 -12
  448. package/dist/components/ImagePreview.d.ts +0 -108
  449. package/dist/components/ImagePreview.js +0 -9
  450. package/dist/components/ImageViewer.d.ts +0 -137
  451. package/dist/components/ImageViewer.js +0 -9
  452. package/dist/components/InfiniteScroll.d.ts +0 -116
  453. package/dist/components/InfiniteScroll.js +0 -9
  454. package/dist/components/Input.d.ts +0 -268
  455. package/dist/components/Input.js +0 -9
  456. package/dist/components/InputGroup.d.ts +0 -77
  457. package/dist/components/InputGroup.js +0 -12
  458. package/dist/components/InputNumber.d.ts +0 -190
  459. package/dist/components/InputNumber.js +0 -9
  460. package/dist/components/Kanban.d.ts +0 -200
  461. package/dist/components/Kanban.js +0 -10
  462. package/dist/components/Layout.d.ts +0 -45
  463. package/dist/components/Layout.js +0 -8
  464. package/dist/components/LineChart.d.ts +0 -434
  465. package/dist/components/LineChart.js +0 -15
  466. package/dist/components/Link.d.ts +0 -89
  467. package/dist/components/Link.js +0 -8
  468. package/dist/components/List.d.ts +0 -342
  469. package/dist/components/List.js +0 -10
  470. package/dist/components/Loading.d.ts +0 -133
  471. package/dist/components/Loading.js +0 -10
  472. package/dist/components/MarkdownEditor.d.ts +0 -149
  473. package/dist/components/MarkdownEditor.js +0 -8
  474. package/dist/components/Mentions.d.ts +0 -88
  475. package/dist/components/Mentions.js +0 -8
  476. package/dist/components/Menu.d.ts +0 -554
  477. package/dist/components/Menu.js +0 -17
  478. package/dist/components/MenuItem.d.mts +0 -8
  479. package/dist/components/MenuItem.d.ts +0 -8
  480. package/dist/components/MenuItem.js +0 -11
  481. package/dist/components/MenuItem.mjs +0 -11
  482. package/dist/components/MenuItemGroup.d.mts +0 -8
  483. package/dist/components/MenuItemGroup.d.ts +0 -8
  484. package/dist/components/MenuItemGroup.js +0 -11
  485. package/dist/components/MenuItemGroup.mjs +0 -11
  486. package/dist/components/Message.js +0 -11
  487. package/dist/components/Modal.d.ts +0 -381
  488. package/dist/components/Modal.js +0 -12
  489. package/dist/components/Notification.js +0 -11
  490. package/dist/components/NotificationCenter.d.ts +0 -213
  491. package/dist/components/NotificationCenter.js +0 -18
  492. package/dist/components/NumberKeyboard.d.ts +0 -154
  493. package/dist/components/NumberKeyboard.js +0 -9
  494. package/dist/components/OrgChart.d.ts +0 -195
  495. package/dist/components/OrgChart.js +0 -9
  496. package/dist/components/Pagination.d.ts +0 -392
  497. package/dist/components/Pagination.js +0 -9
  498. package/dist/components/PieChart.d.ts +0 -305
  499. package/dist/components/PieChart.js +0 -13
  500. package/dist/components/Popconfirm.d.ts +0 -173
  501. package/dist/components/Popconfirm.js +0 -10
  502. package/dist/components/Popover.d.ts +0 -138
  503. package/dist/components/Popover.js +0 -10
  504. package/dist/components/PrintLayout.d.ts +0 -97
  505. package/dist/components/PrintLayout.js +0 -10
  506. package/dist/components/Progress.d.ts +0 -150
  507. package/dist/components/Progress.js +0 -8
  508. package/dist/components/QRCode.d.ts +0 -95
  509. package/dist/components/QRCode.js +0 -9
  510. package/dist/components/RadarChart.d.ts +0 -454
  511. package/dist/components/RadarChart.js +0 -13
  512. package/dist/components/Radio.d.ts +0 -143
  513. package/dist/components/Radio.js +0 -9
  514. package/dist/components/RadioGroup.d.ts +0 -135
  515. package/dist/components/RadioGroup.js +0 -10
  516. package/dist/components/Rate.d.ts +0 -80
  517. package/dist/components/Rate.js +0 -8
  518. package/dist/components/Resizable.d.ts +0 -138
  519. package/dist/components/Resizable.js +0 -8
  520. package/dist/components/Result.d.ts +0 -64
  521. package/dist/components/Result.js +0 -9
  522. package/dist/components/RichTextEditor.d.ts +0 -123
  523. package/dist/components/RichTextEditor.js +0 -8
  524. package/dist/components/Row.d.ts +0 -90
  525. package/dist/components/Row.js +0 -8
  526. package/dist/components/ScatterChart.d.ts +0 -391
  527. package/dist/components/ScatterChart.js +0 -15
  528. package/dist/components/ScrollSpy.d.ts +0 -125
  529. package/dist/components/ScrollSpy.js +0 -8
  530. package/dist/components/Segmented.d.ts +0 -70
  531. package/dist/components/Segmented.js +0 -8
  532. package/dist/components/Select.d.ts +0 -292
  533. package/dist/components/Select.js +0 -9
  534. package/dist/components/Sidebar.d.ts +0 -101
  535. package/dist/components/Sidebar.js +0 -8
  536. package/dist/components/Signature.d.ts +0 -163
  537. package/dist/components/Signature.js +0 -9
  538. package/dist/components/Skeleton.d.ts +0 -96
  539. package/dist/components/Skeleton.js +0 -8
  540. package/dist/components/Slider.d.ts +0 -228
  541. package/dist/components/Slider.js +0 -8
  542. package/dist/components/Space.d.ts +0 -49
  543. package/dist/components/Space.js +0 -8
  544. package/dist/components/Splitter.d.ts +0 -99
  545. package/dist/components/Splitter.js +0 -8
  546. package/dist/components/Spotlight.d.ts +0 -206
  547. package/dist/components/Spotlight.js +0 -10
  548. package/dist/components/Statistic.d.ts +0 -103
  549. package/dist/components/Statistic.js +0 -8
  550. package/dist/components/Stepper.d.ts +0 -79
  551. package/dist/components/Stepper.js +0 -8
  552. package/dist/components/Steps.d.ts +0 -298
  553. package/dist/components/Steps.js +0 -12
  554. package/dist/components/StepsItem.d.mts +0 -8
  555. package/dist/components/StepsItem.d.ts +0 -8
  556. package/dist/components/StepsItem.js +0 -10
  557. package/dist/components/StepsItem.mjs +0 -10
  558. package/dist/components/SubMenu.d.mts +0 -8
  559. package/dist/components/SubMenu.d.ts +0 -8
  560. package/dist/components/SubMenu.js +0 -11
  561. package/dist/components/SubMenu.mjs +0 -11
  562. package/dist/components/SunburstChart.d.ts +0 -212
  563. package/dist/components/SunburstChart.js +0 -13
  564. package/dist/components/Switch.d.ts +0 -94
  565. package/dist/components/Switch.js +0 -8
  566. package/dist/components/TabPane.d.mts +0 -8
  567. package/dist/components/TabPane.d.ts +0 -8
  568. package/dist/components/TabPane.js +0 -10
  569. package/dist/components/TabPane.mjs +0 -10
  570. package/dist/components/Table.d.ts +0 -509
  571. package/dist/components/Table.js +0 -15
  572. package/dist/components/Tabs.d.ts +0 -410
  573. package/dist/components/Tabs.js +0 -12
  574. package/dist/components/Tag.d.ts +0 -130
  575. package/dist/components/Tag.js +0 -9
  576. package/dist/components/TaskBoard.d.ts +0 -210
  577. package/dist/components/TaskBoard.js +0 -9
  578. package/dist/components/Text.d.ts +0 -161
  579. package/dist/components/Text.js +0 -8
  580. package/dist/components/Textarea.d.ts +0 -308
  581. package/dist/components/Textarea.js +0 -9
  582. package/dist/components/TimePicker.d.ts +0 -372
  583. package/dist/components/TimePicker.js +0 -10
  584. package/dist/components/Timeline.d.ts +0 -124
  585. package/dist/components/Timeline.js +0 -9
  586. package/dist/components/Tooltip.d.ts +0 -116
  587. package/dist/components/Tooltip.js +0 -10
  588. package/dist/components/Tour.d.ts +0 -127
  589. package/dist/components/Tour.js +0 -11
  590. package/dist/components/Transfer.d.ts +0 -129
  591. package/dist/components/Transfer.js +0 -9
  592. package/dist/components/Tree.d.ts +0 -485
  593. package/dist/components/Tree.js +0 -10
  594. package/dist/components/TreeMapChart.d.ts +0 -221
  595. package/dist/components/TreeMapChart.js +0 -13
  596. package/dist/components/TreeSelect.d.ts +0 -121
  597. package/dist/components/TreeSelect.js +0 -9
  598. package/dist/components/Upload.d.ts +0 -355
  599. package/dist/components/Upload.js +0 -9
  600. package/dist/components/VirtualList.d.ts +0 -89
  601. package/dist/components/VirtualList.js +0 -8
  602. package/dist/components/VirtualTable.d.ts +0 -196
  603. package/dist/components/VirtualTable.js +0 -9
  604. package/dist/components/Watermark.d.ts +0 -144
  605. package/dist/components/Watermark.js +0 -8
  606. package/dist/index.d.ts +0 -286
  607. package/dist/index.js +0 -838
  608. package/dist/{chunk-2HRJGOAV.mjs → chunk-B47QLHVW.mjs} +3 -3
  609. /package/dist/{chunk-R2HO74FE.mjs → chunk-PE5OA4YG.mjs} +0 -0
@@ -1,1866 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
-
3
- var _chunkCFJST2X2js = require('./chunk-CFJST2X2.js');
4
-
5
-
6
- var _chunk3QV2D54Hjs = require('./chunk-3QV2D54H.js');
7
-
8
-
9
- var _chunkTYYJPEWGjs = require('./chunk-TYYJPEWG.js');
10
-
11
-
12
- var _chunkPFWRFHSBjs = require('./chunk-PFWRFHSB.js');
13
-
14
-
15
- var _chunkIXTYS3EKjs = require('./chunk-IXTYS3EK.js');
16
-
17
- // src/components/Table.ts
18
-
19
-
20
-
21
-
22
-
23
-
24
-
25
-
26
-
27
- var _vue = require('vue');
28
-
29
-
30
-
31
-
32
-
33
-
34
-
35
-
36
-
37
-
38
-
39
-
40
-
41
-
42
-
43
-
44
-
45
-
46
-
47
-
48
-
49
-
50
-
51
-
52
-
53
- var _tigercatcore = require('@expcat/tigercat-core');
54
-
55
-
56
- // src/components/Table/props.ts
57
- var tableProps = {
58
- columns: {
59
- type: Array,
60
- required: true
61
- },
62
- columnLockable: {
63
- type: Boolean,
64
- default: false
65
- },
66
- dataSource: {
67
- type: Array,
68
- default: () => []
69
- },
70
- hiddenColumnKeys: {
71
- type: Array,
72
- default: void 0
73
- },
74
- defaultHiddenColumnKeys: {
75
- type: Array,
76
- default: void 0
77
- },
78
- sort: {
79
- type: Object
80
- },
81
- defaultSort: {
82
- type: Object,
83
- default: () => ({
84
- key: null,
85
- direction: null
86
- })
87
- },
88
- filters: {
89
- type: Object
90
- },
91
- defaultFilters: {
92
- type: Object,
93
- default: () => ({})
94
- },
95
- size: {
96
- type: String,
97
- default: "md"
98
- },
99
- bordered: {
100
- type: Boolean,
101
- default: false
102
- },
103
- striped: {
104
- type: Boolean,
105
- default: false
106
- },
107
- hoverable: {
108
- type: Boolean,
109
- default: true
110
- },
111
- loading: {
112
- type: Boolean,
113
- default: false
114
- },
115
- locale: {
116
- type: [Object, Function]
117
- },
118
- labels: {
119
- type: Object
120
- },
121
- emptyText: {
122
- type: String,
123
- default: void 0
124
- },
125
- pagination: {
126
- type: [Object, Boolean],
127
- default: () => ({
128
- current: 1,
129
- pageSize: 10,
130
- total: 0,
131
- pageSizeOptions: [10, 20, 50, 100],
132
- showSizeChanger: true,
133
- showTotal: true
134
- })
135
- },
136
- rowSelection: {
137
- type: Object
138
- },
139
- expandable: {
140
- type: Object
141
- },
142
- rowKey: {
143
- type: [String, Function],
144
- default: "id"
145
- },
146
- rowClassName: {
147
- type: [String, Function]
148
- },
149
- stickyHeader: {
150
- type: Boolean,
151
- default: false
152
- },
153
- maxHeight: {
154
- type: [String, Number]
155
- },
156
- tableLayout: {
157
- type: String,
158
- default: "auto"
159
- },
160
- responsiveMode: {
161
- type: String,
162
- default: "scroll"
163
- },
164
- cardBreakpoint: {
165
- type: String,
166
- default: "sm"
167
- },
168
- cardClassName: {
169
- type: [String, Function]
170
- },
171
- renderCard: {
172
- type: Function
173
- },
174
- cardSelectionPosition: {
175
- type: String,
176
- default: "controls-row"
177
- },
178
- cardPadding: {
179
- type: [String, Boolean],
180
- default: void 0
181
- },
182
- cardFieldGap: {
183
- type: String,
184
- default: "gap-3"
185
- },
186
- // --- v0.6.0 props ---
187
- virtual: { type: Boolean, default: false },
188
- autoVirtual: { type: Boolean, default: true },
189
- virtualHeight: { type: Number, default: 400 },
190
- virtualItemHeight: { type: Number, default: 40 },
191
- autoVirtualThreshold: { type: Number, default: 1e4 },
192
- virtualThreshold: { type: Number, default: 1e3 },
193
- editable: { type: Boolean, default: false },
194
- editableCells: { type: Object },
195
- filterMode: { type: String, default: "basic" },
196
- advancedFilterRules: { type: Array, default: () => [] },
197
- columnDraggable: { type: Boolean, default: false },
198
- rowDraggable: { type: Boolean, default: false },
199
- summaryRow: { type: Object },
200
- groupBy: { type: String },
201
- exportable: { type: Boolean, default: false },
202
- exportFormat: { type: String, default: "csv" },
203
- exportFilename: { type: String, default: "export" },
204
- cardLayout: {
205
- type: Array,
206
- default: void 0
207
- }
208
- };
209
- var tableEmits = [
210
- "change",
211
- "row-click",
212
- "selection-change",
213
- "sort-change",
214
- "filter-change",
215
- "update:hiddenColumnKeys",
216
- "hidden-column-keys-change",
217
- "page-change",
218
- "expand-change",
219
- "cell-change",
220
- "column-order-change",
221
- "row-order-change",
222
- "export"
223
- ];
224
-
225
- // src/components/Table/state.ts
226
-
227
-
228
-
229
-
230
-
231
-
232
-
233
-
234
-
235
-
236
-
237
-
238
-
239
-
240
-
241
-
242
-
243
-
244
- function useTableState(props, emit, measuredColumnWidths) {
245
- const paginationConfig = _vue.computed.call(void 0, () => {
246
- return props.pagination !== false && typeof props.pagination === "object" ? props.pagination : null;
247
- });
248
- const isSortControlled = _vue.computed.call(void 0, () => props.sort !== void 0);
249
- const isHiddenColumnsControlled = _vue.computed.call(void 0, () => props.hiddenColumnKeys !== void 0);
250
- const isFiltersControlled = _vue.computed.call(void 0, () => props.filters !== void 0);
251
- const isSelectionControlled = _vue.computed.call(void 0, () => _optionalChain([props, 'access', _ => _.rowSelection, 'optionalAccess', _2 => _2.selectedRowKeys]) !== void 0);
252
- const isExpandControlled = _vue.computed.call(void 0, () => _optionalChain([props, 'access', _3 => _3.expandable, 'optionalAccess', _4 => _4.expandedRowKeys]) !== void 0);
253
- const uncontrolledSortState = _vue.ref.call(void 0, _nullishCoalesce(props.defaultSort, () => ( { key: null, direction: null })));
254
- const uncontrolledHiddenColumnKeys = _vue.ref.call(void 0,
255
- _nullishCoalesce(_nullishCoalesce(props.defaultHiddenColumnKeys, () => ( props.hiddenColumnKeys)), () => ( []))
256
- );
257
- const uncontrolledFilterState = _vue.ref.call(void 0, _nullishCoalesce(props.defaultFilters, () => ( {})));
258
- const uncontrolledCurrentPage = _vue.ref.call(void 0,
259
- _nullishCoalesce(_nullishCoalesce(_optionalChain([paginationConfig, 'access', _5 => _5.value, 'optionalAccess', _6 => _6.defaultCurrent]), () => ( _optionalChain([paginationConfig, 'access', _7 => _7.value, 'optionalAccess', _8 => _8.current]))), () => ( 1))
260
- );
261
- const uncontrolledCurrentPageSize = _vue.ref.call(void 0,
262
- _nullishCoalesce(_nullishCoalesce(_optionalChain([paginationConfig, 'access', _9 => _9.value, 'optionalAccess', _10 => _10.defaultPageSize]), () => ( _optionalChain([paginationConfig, 'access', _11 => _11.value, 'optionalAccess', _12 => _12.pageSize]))), () => ( 10))
263
- );
264
- const uncontrolledSelectedRowKeys = _vue.ref.call(void 0,
265
- _nullishCoalesce(_nullishCoalesce(_optionalChain([props, 'access', _13 => _13.rowSelection, 'optionalAccess', _14 => _14.defaultSelectedRowKeys]), () => ( _optionalChain([props, 'access', _15 => _15.rowSelection, 'optionalAccess', _16 => _16.selectedRowKeys]))), () => ( []))
266
- );
267
- const uncontrolledExpandedRowKeys = _vue.ref.call(void 0,
268
- _nullishCoalesce(_nullishCoalesce(_optionalChain([props, 'access', _17 => _17.expandable, 'optionalAccess', _18 => _18.defaultExpandedRowKeys]), () => ( _optionalChain([props, 'access', _19 => _19.expandable, 'optionalAccess', _20 => _20.expandedRowKeys]))), () => ( []))
269
- );
270
- const sortState = _vue.computed.call(void 0, () => _nullishCoalesce(props.sort, () => ( uncontrolledSortState.value)));
271
- const hiddenColumnKeys = _vue.computed.call(void 0,
272
- () => _nullishCoalesce(props.hiddenColumnKeys, () => ( uncontrolledHiddenColumnKeys.value))
273
- );
274
- const filterState = _vue.computed.call(void 0, () => _nullishCoalesce(props.filters, () => ( uncontrolledFilterState.value)));
275
- const currentPage = _vue.computed.call(void 0, () => {
276
- return _nullishCoalesce(_optionalChain([paginationConfig, 'access', _21 => _21.value, 'optionalAccess', _22 => _22.current]), () => ( uncontrolledCurrentPage.value));
277
- });
278
- const currentPageSize = _vue.computed.call(void 0, () => {
279
- return _nullishCoalesce(_optionalChain([paginationConfig, 'access', _23 => _23.value, 'optionalAccess', _24 => _24.pageSize]), () => ( uncontrolledCurrentPageSize.value));
280
- });
281
- const selectedRowKeys = _vue.computed.call(void 0, () => {
282
- return _nullishCoalesce(_optionalChain([props, 'access', _25 => _25.rowSelection, 'optionalAccess', _26 => _26.selectedRowKeys]), () => ( uncontrolledSelectedRowKeys.value));
283
- });
284
- const expandedRowKeys = _vue.computed.call(void 0, () => {
285
- return _nullishCoalesce(_optionalChain([props, 'access', _27 => _27.expandable, 'optionalAccess', _28 => _28.expandedRowKeys]), () => ( uncontrolledExpandedRowKeys.value));
286
- });
287
- _vue.watch.call(void 0,
288
- () => props.sort,
289
- (next) => {
290
- if (next !== void 0) {
291
- uncontrolledSortState.value = next;
292
- }
293
- }
294
- );
295
- _vue.watch.call(void 0,
296
- () => props.filters,
297
- (next) => {
298
- if (next !== void 0) {
299
- uncontrolledFilterState.value = next;
300
- }
301
- }
302
- );
303
- _vue.watch.call(void 0,
304
- () => props.hiddenColumnKeys,
305
- (next) => {
306
- if (next !== void 0) {
307
- uncontrolledHiddenColumnKeys.value = next;
308
- }
309
- }
310
- );
311
- _vue.watch.call(void 0,
312
- () => _optionalChain([paginationConfig, 'access', _29 => _29.value, 'optionalAccess', _30 => _30.current]),
313
- (next) => {
314
- if (next !== void 0) {
315
- uncontrolledCurrentPage.value = next;
316
- }
317
- }
318
- );
319
- _vue.watch.call(void 0,
320
- () => _optionalChain([paginationConfig, 'access', _31 => _31.value, 'optionalAccess', _32 => _32.pageSize]),
321
- (next) => {
322
- if (next !== void 0) {
323
- uncontrolledCurrentPageSize.value = next;
324
- }
325
- }
326
- );
327
- _vue.watch.call(void 0,
328
- () => _optionalChain([props, 'access', _33 => _33.rowSelection, 'optionalAccess', _34 => _34.selectedRowKeys]),
329
- (next) => {
330
- if (next !== void 0) {
331
- uncontrolledSelectedRowKeys.value = next;
332
- }
333
- }
334
- );
335
- _vue.watch.call(void 0,
336
- () => _optionalChain([props, 'access', _35 => _35.expandable, 'optionalAccess', _36 => _36.expandedRowKeys]),
337
- (next) => {
338
- if (next !== void 0) {
339
- uncontrolledExpandedRowKeys.value = next;
340
- }
341
- }
342
- );
343
- const fixedOverrides = _vue.ref.call(void 0, {});
344
- const displayColumns = _vue.computed.call(void 0, () => {
345
- const mapped = props.columns.map((column) => {
346
- const hasOverride = column.key in fixedOverrides.value;
347
- return {
348
- ...column,
349
- fixed: hasOverride ? fixedOverrides.value[column.key] : column.fixed
350
- };
351
- });
352
- return _tigercatcore.orderTableFixedColumns.call(void 0, _tigercatcore.filterHiddenColumns.call(void 0, mapped, hiddenColumnKeys.value));
353
- });
354
- const fixedColumnsInfo = _vue.computed.call(void 0, () => {
355
- return _tigercatcore.getFixedColumnOffsets.call(void 0, displayColumns.value, measuredColumnWidths.value);
356
- });
357
- const frozenColumnWidths = _vue.ref.call(void 0, {});
358
- _vue.watch.call(void 0,
359
- [() => measuredColumnWidths.value, displayColumns],
360
- () => {
361
- frozenColumnWidths.value = _tigercatcore.freezeTableColumnWidths.call(void 0,
362
- displayColumns.value,
363
- measuredColumnWidths.value,
364
- frozenColumnWidths.value
365
- );
366
- },
367
- { immediate: true }
368
- );
369
- const columnByKey = _vue.computed.call(void 0, () => {
370
- const map = {};
371
- for (const column of displayColumns.value) {
372
- map[column.key] = column;
373
- }
374
- return map;
375
- });
376
- function handleSetHiddenColumns(hiddenKeys) {
377
- if (!isHiddenColumnsControlled.value) {
378
- uncontrolledHiddenColumnKeys.value = hiddenKeys;
379
- }
380
- emit("update:hiddenColumnKeys", hiddenKeys);
381
- emit("hidden-column-keys-change", hiddenKeys);
382
- }
383
- function toggleColumnLock(columnKey) {
384
- const original = _optionalChain([props, 'access', _37 => _37.columns, 'access', _38 => _38.find, 'call', _39 => _39((c) => c.key === columnKey), 'optionalAccess', _40 => _40.fixed]);
385
- const hasOverride = columnKey in fixedOverrides.value;
386
- const current = hasOverride ? fixedOverrides.value[columnKey] : original;
387
- const isLocked = current === "left" || current === "right";
388
- fixedOverrides.value[columnKey] = isLocked ? false : "left";
389
- }
390
- const processedData = _vue.computed.call(void 0, () => {
391
- let data = _nullishCoalesce(props.dataSource, () => ( []));
392
- if (props.filterMode === "advanced" && (_nullishCoalesce(_optionalChain([props, 'access', _41 => _41.advancedFilterRules, 'optionalAccess', _42 => _42.length]), () => ( 0))) > 0) {
393
- data = _tigercatcore.filterDataAdvanced.call(void 0, data, _nullishCoalesce(props.advancedFilterRules, () => ( [])));
394
- } else {
395
- data = _tigercatcore.filterTableData.call(void 0, data, props.columns, filterState.value);
396
- }
397
- if (sortState.value.key && sortState.value.direction) {
398
- const column = columnByKey.value[sortState.value.key];
399
- data = _tigercatcore.sortData.call(void 0, data, sortState.value.key, sortState.value.direction, _optionalChain([column, 'optionalAccess', _43 => _43.sortFn]));
400
- }
401
- return data;
402
- });
403
- const paginatedData = _vue.computed.call(void 0, () => {
404
- if (props.pagination === false) {
405
- return processedData.value;
406
- }
407
- return _tigercatcore.paginateData.call(void 0, processedData.value, currentPage.value, currentPageSize.value);
408
- });
409
- const paginatedRowKeys = _vue.computed.call(void 0, () => {
410
- return _tigercatcore.createTableRowKeyCache.call(void 0, props.rowKey).getMany(
411
- paginatedData.value
412
- );
413
- });
414
- const selectedRowKeySet = _vue.computed.call(void 0, () => {
415
- return new Set(selectedRowKeys.value);
416
- });
417
- const expandedRowKeySet = _vue.computed.call(void 0, () => {
418
- return new Set(expandedRowKeys.value);
419
- });
420
- const totalColumnCount = _vue.computed.call(void 0, () => {
421
- let count = displayColumns.value.length;
422
- if (_tigercatcore.hasTableSelectionColumn.call(void 0, props.rowSelection)) count += 1;
423
- if (props.expandable) count += 1;
424
- return count;
425
- });
426
- const paginationInfo = _vue.computed.call(void 0, () => {
427
- if (props.pagination === false) {
428
- return null;
429
- }
430
- const total = _optionalChain([paginationConfig, 'access', _44 => _44.value, 'optionalAccess', _45 => _45.total]) !== void 0 && paginationConfig.value.total > 0 ? paginationConfig.value.total : processedData.value.length;
431
- return _tigercatcore.calculatePagination.call(void 0, total, currentPage.value, currentPageSize.value);
432
- });
433
- function handleSetSort(nextSortState) {
434
- if (!isSortControlled.value) {
435
- uncontrolledSortState.value = nextSortState;
436
- }
437
- emit("sort-change", nextSortState);
438
- emit("change", {
439
- sort: nextSortState,
440
- filters: filterState.value,
441
- pagination: props.pagination !== false ? {
442
- current: currentPage.value,
443
- pageSize: currentPageSize.value
444
- } : null
445
- });
446
- }
447
- function handleSort(columnKey) {
448
- const column = displayColumns.value.find((col) => col.key === columnKey);
449
- if (!column || !column.sortable) {
450
- return;
451
- }
452
- let newDirection = "asc";
453
- if (sortState.value.key === columnKey) {
454
- if (sortState.value.direction === "asc") {
455
- newDirection = "desc";
456
- } else if (sortState.value.direction === "desc") {
457
- newDirection = null;
458
- }
459
- }
460
- handleSetSort({
461
- key: newDirection ? columnKey : null,
462
- direction: newDirection
463
- });
464
- }
465
- function handleFilter(columnKey, value) {
466
- const nextFilterState = {
467
- ...filterState.value,
468
- [columnKey]: value
469
- };
470
- if (!isFiltersControlled.value) {
471
- uncontrolledFilterState.value = nextFilterState;
472
- }
473
- uncontrolledCurrentPage.value = 1;
474
- emit("filter-change", nextFilterState);
475
- emit("change", {
476
- sort: sortState.value,
477
- filters: nextFilterState,
478
- pagination: props.pagination !== false ? {
479
- current: 1,
480
- pageSize: currentPageSize.value
481
- } : null
482
- });
483
- }
484
- function handlePageChange(page) {
485
- uncontrolledCurrentPage.value = page;
486
- emit("page-change", { current: page, pageSize: currentPageSize.value });
487
- emit("change", {
488
- sort: sortState.value,
489
- filters: filterState.value,
490
- pagination: {
491
- current: page,
492
- pageSize: currentPageSize.value
493
- }
494
- });
495
- }
496
- function handlePageSizeChange(pageSize) {
497
- uncontrolledCurrentPageSize.value = pageSize;
498
- uncontrolledCurrentPage.value = 1;
499
- emit("page-change", { current: 1, pageSize });
500
- emit("change", {
501
- sort: sortState.value,
502
- filters: filterState.value,
503
- pagination: {
504
- current: 1,
505
- pageSize
506
- }
507
- });
508
- }
509
- function handleToggleExpand(key, record) {
510
- const isExpanded = expandedRowKeySet.value.has(key);
511
- const newKeys = isExpanded ? expandedRowKeys.value.filter((k) => k !== key) : [...expandedRowKeys.value, key];
512
- if (!isExpandControlled.value) {
513
- uncontrolledExpandedRowKeys.value = newKeys;
514
- }
515
- emit("expand-change", newKeys, record, !isExpanded);
516
- }
517
- function handleRowClick(record, index, key) {
518
- emit("row-click", record, index);
519
- if (_optionalChain([props, 'access', _46 => _46.expandable, 'optionalAccess', _47 => _47.expandRowByClick])) {
520
- const isExpandable = _optionalChain([props, 'access', _48 => _48.expandable, 'optionalAccess', _49 => _49.rowExpandable]) ? props.expandable.rowExpandable(record) : true;
521
- if (isExpandable) {
522
- handleToggleExpand(key, record);
523
- }
524
- }
525
- }
526
- function handleSelectRow(key, checked) {
527
- let newKeys;
528
- if (_optionalChain([props, 'access', _50 => _50.rowSelection, 'optionalAccess', _51 => _51.type]) === "radio") {
529
- newKeys = checked ? [key] : [];
530
- } else {
531
- if (checked) {
532
- newKeys = [...selectedRowKeys.value, key];
533
- } else {
534
- newKeys = selectedRowKeys.value.filter((k) => k !== key);
535
- }
536
- }
537
- if (!isSelectionControlled.value) {
538
- uncontrolledSelectedRowKeys.value = newKeys;
539
- }
540
- emit("selection-change", newKeys);
541
- }
542
- const selectionState = _vue.computed.call(void 0,
543
- () => _tigercatcore.getTableSelectionState.call(void 0, {
544
- records: paginatedData.value,
545
- rowKeys: paginatedRowKeys.value,
546
- selectedRowKeys: selectedRowKeys.value,
547
- getCheckboxProps: _optionalChain([props, 'access', _52 => _52.rowSelection, 'optionalAccess', _53 => _53.getCheckboxProps])
548
- })
549
- );
550
- function handleSelectAll(checked) {
551
- const nextKeys = _tigercatcore.getNextTableSelectAllKeys.call(void 0,
552
- selectedRowKeys.value,
553
- selectionState.value.selectableRowKeys,
554
- checked
555
- );
556
- if (!isSelectionControlled.value) {
557
- uncontrolledSelectedRowKeys.value = nextKeys;
558
- }
559
- emit("selection-change", nextKeys);
560
- }
561
- const allSelected = _vue.computed.call(void 0, () => selectionState.value.allSelected);
562
- const someSelected = _vue.computed.call(void 0, () => selectionState.value.someSelected);
563
- const editingCell = _vue.ref.call(void 0, null);
564
- const editingValue = _vue.ref.call(void 0, "");
565
- function isCellEditable(columnKey, rowIndex) {
566
- if (!props.editable) return false;
567
- if (!props.editableCells) return true;
568
- return !!_optionalChain([props, 'access', _54 => _54.editableCells, 'access', _55 => _55.get, 'call', _56 => _56(columnKey), 'optionalAccess', _57 => _57.has, 'call', _58 => _58(rowIndex)]);
569
- }
570
- function startEditing(rowIndex, columnKey, currentValue) {
571
- editingCell.value = { rowIndex, columnKey };
572
- editingValue.value = String(_nullishCoalesce(currentValue, () => ( "")));
573
- }
574
- function commitEdit() {
575
- if (editingCell.value) {
576
- emit(
577
- "cell-change",
578
- editingCell.value.rowIndex,
579
- editingCell.value.columnKey,
580
- editingValue.value
581
- );
582
- editingCell.value = null;
583
- }
584
- }
585
- function cancelEdit() {
586
- editingCell.value = null;
587
- }
588
- function handleExport() {
589
- const content = _tigercatcore.exportTableData.call(void 0, displayColumns.value, processedData.value, props.exportFormat);
590
- _tigercatcore.downloadTableExport.call(void 0, content, props.exportFilename, props.exportFormat);
591
- emit("export", content);
592
- }
593
- const dragColumnKey = _vue.ref.call(void 0, null);
594
- function handleDragStart(columnKey) {
595
- dragColumnKey.value = columnKey;
596
- }
597
- function handleDrop(targetKey) {
598
- if (!dragColumnKey.value || dragColumnKey.value === targetKey) return;
599
- const cols = [...displayColumns.value];
600
- const fromIdx = cols.findIndex((c) => c.key === dragColumnKey.value);
601
- const toIdx = cols.findIndex((c) => c.key === targetKey);
602
- if (fromIdx >= 0 && toIdx >= 0) {
603
- const [moved] = cols.splice(fromIdx, 1);
604
- cols.splice(toIdx, 0, moved);
605
- emit("column-order-change", cols);
606
- }
607
- dragColumnKey.value = null;
608
- }
609
- const dragRowKey = _vue.ref.call(void 0, null);
610
- function handleRowDragStart(rowKeyValue) {
611
- dragRowKey.value = rowKeyValue;
612
- }
613
- function handleRowDrop(targetKey) {
614
- if (dragRowKey.value === null || dragRowKey.value === targetKey) return;
615
- const rows = [...paginatedData.value];
616
- const fromIdx = paginatedRowKeys.value.findIndex((key) => key === dragRowKey.value);
617
- const toIdx = paginatedRowKeys.value.findIndex((key) => key === targetKey);
618
- if (fromIdx >= 0 && toIdx >= 0) {
619
- const [moved] = rows.splice(fromIdx, 1);
620
- rows.splice(toIdx, 0, moved);
621
- emit("row-order-change", rows);
622
- }
623
- dragRowKey.value = null;
624
- }
625
- const virtualScrollTop = _vue.ref.call(void 0, 0);
626
- const groupedData = _vue.computed.call(void 0, () => {
627
- if (!props.groupBy) return null;
628
- return _tigercatcore.groupDataByColumn.call(void 0, paginatedData.value, props.groupBy);
629
- });
630
- return {
631
- paginationConfig,
632
- displayColumns,
633
- fixedColumnsInfo,
634
- frozenColumnWidths,
635
- columnByKey,
636
- processedData,
637
- paginatedData,
638
- paginatedRowKeys,
639
- selectedRowKeySet,
640
- expandedRowKeySet,
641
- totalColumnCount,
642
- paginationInfo,
643
- allSelected,
644
- someSelected,
645
- groupedData,
646
- sortState,
647
- filterState,
648
- currentPage,
649
- currentPageSize,
650
- hiddenColumnKeys,
651
- selectedRowKeys,
652
- expandedRowKeys,
653
- editingCell,
654
- editingValue,
655
- virtualScrollTop,
656
- toggleColumnLock,
657
- handleSetHiddenColumns,
658
- handleSetSort,
659
- handleSort,
660
- handleFilter,
661
- handlePageChange,
662
- handlePageSizeChange,
663
- handleRowClick,
664
- handleToggleExpand,
665
- handleSelectRow,
666
- handleSelectAll,
667
- isCellEditable,
668
- startEditing,
669
- commitEdit,
670
- cancelEdit,
671
- handleExport,
672
- handleDragStart,
673
- handleDrop,
674
- handleRowDragStart,
675
- handleRowDrop
676
- };
677
- }
678
-
679
- // src/components/Table/icons.ts
680
-
681
-
682
-
683
-
684
-
685
-
686
-
687
-
688
-
689
-
690
-
691
-
692
-
693
-
694
-
695
-
696
- var spinnerSvg = _tigercatcore.getSpinnerSVG.call(void 0, "spinner");
697
- var SortIcon = (direction) => {
698
- const active = direction !== null;
699
- const pathD = direction === "asc" ? _tigercatcore.sortAscIcon16PathD : direction === "desc" ? _tigercatcore.sortDescIcon16PathD : _tigercatcore.sortBothIcon16PathD;
700
- return _vue.h.call(void 0,
701
- "svg",
702
- {
703
- class: _tigercatcore.getSortIconClasses.call(void 0, active),
704
- width: "16",
705
- height: "16",
706
- viewBox: _tigercatcore.icon16ViewBox,
707
- fill: "currentColor"
708
- },
709
- [_vue.h.call(void 0, "path", { d: pathD })]
710
- );
711
- };
712
- var LockIcon = (locked) => {
713
- return _vue.h.call(void 0,
714
- "svg",
715
- {
716
- width: "14",
717
- height: "14",
718
- viewBox: _tigercatcore.icon24ViewBox,
719
- fill: "currentColor",
720
- "aria-hidden": "true"
721
- },
722
- [_vue.h.call(void 0, "path", { d: locked ? _tigercatcore.lockClosedIcon24PathD : _tigercatcore.lockOpenIcon24PathD })]
723
- );
724
- };
725
- var ExpandIcon = (expanded) => {
726
- return _vue.h.call(void 0,
727
- "svg",
728
- {
729
- class: _tigercatcore.getExpandIconClasses.call(void 0, expanded),
730
- width: "16",
731
- height: "16",
732
- viewBox: _tigercatcore.icon16ViewBox,
733
- fill: "currentColor",
734
- "aria-hidden": "true"
735
- },
736
- [_vue.h.call(void 0, "path", { d: _tigercatcore.expandChevronIcon16PathD })]
737
- );
738
- };
739
- var LoadingSpinner = () => {
740
- return _vue.h.call(void 0,
741
- "svg",
742
- {
743
- class: _tigercatcore.getLoadingOverlaySpinnerClasses.call(void 0, ),
744
- xmlns: "http://www.w3.org/2000/svg",
745
- fill: "none",
746
- viewBox: spinnerSvg.viewBox
747
- },
748
- spinnerSvg.elements.map((el) => _vue.h.call(void 0, el.type, _tigercatcore.normalizeSvgAttrs.call(void 0, el.attrs)))
749
- );
750
- };
751
-
752
- // src/components/Table/render-header.ts
753
-
754
-
755
-
756
-
757
-
758
-
759
-
760
-
761
-
762
-
763
-
764
- function renderTableHeader(ctx, props, slots, labels) {
765
- const headerCells = [];
766
- const expandAtStart = props.expandable && props.expandable.expandIconPosition !== "end";
767
- const expandAtEnd = props.expandable && props.expandable.expandIconPosition === "end";
768
- const expandHeaderTh = props.expandable ? _vue.h.call(void 0, "th", {
769
- class: _tigercatcore.getExpandIconCellClasses.call(void 0, props.size),
770
- "aria-label": labels.expandText
771
- }) : null;
772
- if (expandAtStart && expandHeaderTh) {
773
- headerCells.push(expandHeaderTh);
774
- }
775
- if (props.rowSelection && props.rowSelection.showCheckbox !== false && props.rowSelection.type !== "radio") {
776
- headerCells.push(
777
- _vue.h.call(void 0,
778
- "th",
779
- {
780
- class: _tigercatcore.getCheckboxCellClasses.call(void 0, props.size)
781
- },
782
- [
783
- _vue.h.call(void 0, "input", {
784
- type: "checkbox",
785
- class: "rounded border-gray-300 text-[var(--tiger-primary,#2563eb)] focus:ring-[var(--tiger-primary,#2563eb)]",
786
- checked: ctx.allSelected.value,
787
- indeterminate: ctx.someSelected.value,
788
- onChange: (e) => ctx.handleSelectAll(e.target.checked)
789
- })
790
- ]
791
- )
792
- );
793
- }
794
- ctx.displayColumns.value.forEach((column) => {
795
- const isSorted = ctx.sortState.value.key === column.key;
796
- const sortDirection = isSorted ? ctx.sortState.value.direction : null;
797
- const ariaSort = column.sortable ? sortDirection === "asc" ? "ascending" : sortDirection === "desc" ? "descending" : "none" : void 0;
798
- const fixedStyle = _tigercatcore.getFixedColumnStyle.call(void 0, column, ctx.fixedColumnsInfo.value, 15);
799
- const widthStyle = column.width ? {
800
- width: typeof column.width === "number" ? `${column.width}px` : column.width
801
- } : void 0;
802
- const style = fixedStyle ? { ...widthStyle, ...fixedStyle } : widthStyle;
803
- const headerContent = [];
804
- const slotContent = _optionalChain([slots, 'access', _59 => _59[`header-${column.key}`], 'optionalCall', _60 => _60()]);
805
- if (slotContent && slotContent.length > 0) {
806
- headerContent.push(...slotContent);
807
- } else if (column.renderHeader) {
808
- headerContent.push(column.renderHeader());
809
- } else {
810
- headerContent.push(column.title);
811
- }
812
- if (props.columnLockable) {
813
- headerContent.push(
814
- _vue.h.call(void 0,
815
- "button",
816
- {
817
- type: "button",
818
- class: _tigercatcore.classNames.call(void 0,
819
- "inline-flex items-center",
820
- column.fixed === "left" || column.fixed === "right" ? "text-[var(--tiger-primary,#2563eb)]" : "text-gray-400 hover:text-gray-700"
821
- ),
822
- "aria-label": _tigercatcore.formatTableSortByText.call(void 0,
823
- column.fixed === "left" || column.fixed === "right" ? labels.unlockColumnAriaLabel : labels.lockColumnAriaLabel,
824
- String(column.title)
825
- ),
826
- onClick: (e) => {
827
- e.stopPropagation();
828
- ctx.toggleColumnLock(column.key);
829
- }
830
- },
831
- [LockIcon(column.fixed === "left" || column.fixed === "right")]
832
- )
833
- );
834
- }
835
- if (column.sortable) {
836
- headerContent.push(SortIcon(sortDirection));
837
- }
838
- headerCells.push(
839
- _vue.h.call(void 0,
840
- "th",
841
- {
842
- key: column.key,
843
- "data-tiger-table-column-key": column.key,
844
- "aria-sort": ariaSort,
845
- class: _tigercatcore.classNames.call(void 0,
846
- _tigercatcore.getTableHeaderCellClasses.call(void 0,
847
- props.size,
848
- column.align || "left",
849
- !!column.sortable,
850
- column.headerClassName
851
- ),
852
- _tigercatcore.getTableFixedHeaderCellClasses.call(void 0, {
853
- view: "table",
854
- column,
855
- stickyHeader: props.stickyHeader,
856
- fixedInfo: ctx.fixedColumnsInfo.value
857
- })
858
- ),
859
- style,
860
- draggable: props.columnDraggable ? "true" : void 0,
861
- onDragstart: props.columnDraggable ? () => ctx.handleDragStart(column.key) : void 0,
862
- onDragover: props.columnDraggable ? (e) => e.preventDefault() : void 0,
863
- onDrop: props.columnDraggable ? () => ctx.handleDrop(column.key) : void 0,
864
- onClick: column.sortable ? () => ctx.handleSort(column.key) : void 0
865
- },
866
- [
867
- _vue.h.call(void 0, "div", { class: "flex items-center gap-2" }, headerContent),
868
- ...column.filter ? [
869
- _vue.h.call(void 0, "div", { class: "mt-2" }, [
870
- column.filter.type === "select" && column.filter.options ? _vue.h.call(void 0,
871
- "select",
872
- {
873
- class: "w-full px-2 py-1 text-sm border border-gray-300 rounded",
874
- onChange: (e) => ctx.handleFilter(column.key, e.target.value),
875
- onClick: (e) => e.stopPropagation()
876
- },
877
- [
878
- _vue.h.call(void 0, "option", { value: "" }, labels.allText),
879
- ...column.filter.options.map(
880
- (opt) => _vue.h.call(void 0, "option", { value: opt.value }, opt.label)
881
- )
882
- ]
883
- ) : _vue.h.call(void 0, "input", {
884
- type: "text",
885
- class: "w-full px-2 py-1 text-sm border border-gray-300 rounded",
886
- placeholder: column.filter.placeholder || labels.filterPlaceholder,
887
- onInput: (e) => ctx.handleFilter(column.key, e.target.value),
888
- onClick: (e) => e.stopPropagation()
889
- })
890
- ])
891
- ] : []
892
- ]
893
- )
894
- );
895
- });
896
- if (expandAtEnd && expandHeaderTh) {
897
- headerCells.push(expandHeaderTh);
898
- }
899
- return _vue.h.call(void 0, "thead", { class: _tigercatcore.getTableHeaderClasses.call(void 0, props.stickyHeader) }, [_vue.h.call(void 0, "tr", headerCells)]);
900
- }
901
-
902
- // src/components/Table/render-body.ts
903
-
904
-
905
-
906
-
907
-
908
-
909
-
910
-
911
-
912
-
913
-
914
-
915
-
916
-
917
-
918
-
919
-
920
-
921
- function renderTableBody(ctx, props, slots, labels) {
922
- if (props.loading) {
923
- return null;
924
- }
925
- if (ctx.paginatedData.value.length === 0) {
926
- return _vue.h.call(void 0, "tbody", [
927
- _vue.h.call(void 0, "tr", [
928
- _vue.h.call(void 0,
929
- "td",
930
- {
931
- colspan: ctx.totalColumnCount.value,
932
- class: _tigercatcore.tableEmptyStateClasses
933
- },
934
- [
935
- _vue.h.call(void 0,
936
- "div",
937
- {
938
- role: "status",
939
- "aria-live": "polite"
940
- },
941
- props.emptyText
942
- )
943
- ]
944
- )
945
- ])
946
- ]);
947
- }
948
- function getDelegatedRow(event) {
949
- const row = _optionalChain([event, 'access', _61 => _61.target, 'optionalAccess', _62 => _62.closest, 'call', _63 => _63(
950
- "tr[data-tiger-table-row-index]"
951
- )]);
952
- if (!row) return null;
953
- const index = Number(row.dataset.tigerTableRowIndex);
954
- if (!Number.isInteger(index)) return null;
955
- const record = ctx.paginatedData.value[index];
956
- const key = ctx.paginatedRowKeys.value[index];
957
- if (!record || key === void 0) return null;
958
- return { key, record, index };
959
- }
960
- function handleBodyClick(event) {
961
- const row = getDelegatedRow(event);
962
- if (!row) return;
963
- ctx.handleRowClick(row.record, row.index, row.key);
964
- }
965
- function handleBodyDragStart(event) {
966
- if (!props.rowDraggable) return;
967
- const row = getDelegatedRow(event);
968
- if (!row) return;
969
- ctx.handleRowDragStart(row.key);
970
- }
971
- function handleBodyDragOver(event) {
972
- if (!props.rowDraggable) return;
973
- event.preventDefault();
974
- }
975
- function handleBodyDrop(event) {
976
- if (!props.rowDraggable) return;
977
- const row = getDelegatedRow(event);
978
- if (!row) return;
979
- ctx.handleRowDrop(row.key);
980
- }
981
- const delegatedBodyHandlers = {
982
- onClick: handleBodyClick,
983
- onDragstart: props.rowDraggable ? handleBodyDragStart : void 0,
984
- onDragover: props.rowDraggable ? handleBodyDragOver : void 0,
985
- onDrop: props.rowDraggable ? handleBodyDrop : void 0
986
- };
987
- function renderDataRow(record, index) {
988
- const key = ctx.paginatedRowKeys.value[index];
989
- const isSelected = ctx.selectedRowKeySet.value.has(key);
990
- const isExpanded = ctx.expandedRowKeySet.value.has(key);
991
- const isRowExpandable = props.expandable ? props.expandable.rowExpandable ? props.expandable.rowExpandable(record) : true : false;
992
- const rowClass = typeof props.rowClassName === "function" ? props.rowClassName(record, index) : props.rowClassName;
993
- const cells = [];
994
- const expandAtStart = props.expandable && props.expandable.expandIconPosition !== "end";
995
- const expandToggleCell = props.expandable ? _vue.h.call(void 0,
996
- "td",
997
- {
998
- class: _tigercatcore.getExpandIconCellClasses.call(void 0, props.size)
999
- },
1000
- isRowExpandable ? [
1001
- _vue.h.call(void 0,
1002
- "button",
1003
- {
1004
- type: "button",
1005
- class: "inline-flex items-center justify-center",
1006
- "aria-label": isExpanded ? labels.collapseRowAriaLabel : labels.expandRowAriaLabel,
1007
- "aria-expanded": isExpanded,
1008
- onClick: (e) => {
1009
- e.stopPropagation();
1010
- ctx.handleToggleExpand(key, record);
1011
- }
1012
- },
1013
- [ExpandIcon(isExpanded)]
1014
- )
1015
- ] : []
1016
- ) : null;
1017
- if (expandAtStart && expandToggleCell) {
1018
- cells.push(expandToggleCell);
1019
- }
1020
- if (props.rowSelection && props.rowSelection.showCheckbox !== false) {
1021
- const checkboxProps = _optionalChain([props, 'access', _64 => _64.rowSelection, 'optionalAccess', _65 => _65.getCheckboxProps, 'optionalCall', _66 => _66(record)]) || {};
1022
- cells.push(
1023
- _vue.h.call(void 0,
1024
- "td",
1025
- {
1026
- class: _tigercatcore.getCheckboxCellClasses.call(void 0, props.size)
1027
- },
1028
- [
1029
- _vue.h.call(void 0, "input", {
1030
- type: _optionalChain([props, 'access', _67 => _67.rowSelection, 'optionalAccess', _68 => _68.type]) === "radio" ? "radio" : "checkbox",
1031
- class: _optionalChain([props, 'access', _69 => _69.rowSelection, 'optionalAccess', _70 => _70.type]) === "radio" ? "border-gray-300 text-[var(--tiger-primary,#2563eb)] focus:ring-[var(--tiger-primary,#2563eb)]" : "rounded border-gray-300 text-[var(--tiger-primary,#2563eb)] focus:ring-[var(--tiger-primary,#2563eb)]",
1032
- checked: isSelected,
1033
- disabled: checkboxProps.disabled,
1034
- onClick: (e) => e.stopPropagation(),
1035
- onChange: (e) => ctx.handleSelectRow(key, e.target.checked)
1036
- })
1037
- ]
1038
- )
1039
- );
1040
- }
1041
- ctx.displayColumns.value.forEach((column) => {
1042
- const dataKey = column.dataKey || column.key;
1043
- const cellValue = record[dataKey];
1044
- const fixedStyle = _tigercatcore.getFixedColumnStyle.call(void 0, column, ctx.fixedColumnsInfo.value, 10);
1045
- const widthStyle = column.width ? {
1046
- width: typeof column.width === "number" ? `${column.width}px` : column.width
1047
- } : void 0;
1048
- const style = fixedStyle ? { ...widthStyle, ...fixedStyle } : widthStyle;
1049
- const stickyCellClass = _tigercatcore.getTableFixedCellClasses.call(void 0, {
1050
- view: "table",
1051
- column,
1052
- record,
1053
- rowIndex: index,
1054
- striped: props.striped,
1055
- stripedActive: props.striped && index % 2 === 0,
1056
- selected: isSelected,
1057
- hoverable: props.hoverable,
1058
- fixedInfo: ctx.fixedColumnsInfo.value
1059
- });
1060
- const isEditing = _optionalChain([ctx, 'access', _71 => _71.editingCell, 'access', _72 => _72.value, 'optionalAccess', _73 => _73.rowIndex]) === index && _optionalChain([ctx, 'access', _74 => _74.editingCell, 'access', _75 => _75.value, 'optionalAccess', _76 => _76.columnKey]) === column.key;
1061
- const isEditableCell = ctx.isCellEditable(column.key, index);
1062
- const cellContent = isEditing ? _vue.h.call(void 0, "input", {
1063
- type: "text",
1064
- class: _tigercatcore.editableCellInputClasses,
1065
- value: ctx.editingValue.value,
1066
- autofocus: true,
1067
- onInput: (e) => {
1068
- ctx.editingValue.value = e.target.value;
1069
- },
1070
- onBlur: () => ctx.commitEdit(),
1071
- onKeydown: (e) => {
1072
- if (e.key === "Enter") ctx.commitEdit();
1073
- if (e.key === "Escape") ctx.cancelEdit();
1074
- }
1075
- }) : _nullishCoalesce(_optionalChain([slots, 'access', _77 => _77[`cell-${column.key}`], 'optionalCall', _78 => _78({ record, index })]), () => ( (column.render ? column.render(record, index) : cellValue)));
1076
- cells.push(
1077
- _vue.h.call(void 0,
1078
- "td",
1079
- {
1080
- key: column.key,
1081
- class: _tigercatcore.classNames.call(void 0,
1082
- _tigercatcore.getTableCellClasses.call(void 0, props.size, column.align || "left", column.className),
1083
- stickyCellClass,
1084
- isEditableCell && !isEditing && _tigercatcore.getEditableCellClasses.call(void 0, false)
1085
- ),
1086
- style,
1087
- onDblclick: isEditableCell && !isEditing ? () => ctx.startEditing(index, column.key, cellValue) : void 0
1088
- },
1089
- [cellContent]
1090
- )
1091
- );
1092
- });
1093
- if (!expandAtStart && expandToggleCell) {
1094
- cells.push(expandToggleCell);
1095
- }
1096
- const rowNode = _vue.h.call(void 0,
1097
- "tr",
1098
- {
1099
- key,
1100
- "data-tiger-table-row-index": index,
1101
- class: _tigercatcore.classNames.call(void 0,
1102
- _tigercatcore.getTableRowClasses.call(void 0, props.hoverable, props.striped, index % 2 === 0, rowClass),
1103
- ctx.fixedColumnsInfo.value.hasFixedColumns && "group"
1104
- ),
1105
- "aria-selected": props.rowSelection ? isSelected : void 0,
1106
- tabindex: props.interactiveRows ? 0 : void 0,
1107
- // Delegated mouse click stays on tbody; add per-row keyboard activation.
1108
- onKeydown: props.interactiveRows ? (e) => {
1109
- if (e.target !== e.currentTarget) return;
1110
- if (_tigercatcore.isActivationKey.call(void 0, e)) {
1111
- e.preventDefault();
1112
- ctx.handleRowClick(record, index, key);
1113
- }
1114
- } : void 0,
1115
- draggable: props.rowDraggable ? "true" : void 0
1116
- },
1117
- cells
1118
- );
1119
- if (props.expandable && isExpanded && isRowExpandable) {
1120
- const expandedContent = _optionalChain([slots, 'access', _79 => _79["expanded-row"], 'optionalCall', _80 => _80({ record, index })]) || (props.expandable.expandedRowRender ? props.expandable.expandedRowRender(record, index) : null);
1121
- const expandedRow = _vue.h.call(void 0,
1122
- "tr",
1123
- {
1124
- key: `${key}-expanded`,
1125
- class: _tigercatcore.getExpandedRowClasses.call(void 0, )
1126
- },
1127
- [
1128
- _vue.h.call(void 0,
1129
- "td",
1130
- {
1131
- colspan: ctx.totalColumnCount.value,
1132
- class: _tigercatcore.getExpandedRowContentClasses.call(void 0, props.size)
1133
- },
1134
- [expandedContent]
1135
- )
1136
- ]
1137
- );
1138
- return [rowNode, expandedRow];
1139
- }
1140
- return rowNode;
1141
- }
1142
- if (ctx.groupedData.value) {
1143
- const groupRows = [];
1144
- for (const [groupKey, groupItems] of ctx.groupedData.value) {
1145
- groupRows.push(
1146
- _vue.h.call(void 0, "tr", { key: `group-${groupKey}`, class: _tigercatcore.tableGroupHeaderClasses }, [
1147
- _vue.h.call(void 0,
1148
- "td",
1149
- {
1150
- colspan: ctx.totalColumnCount.value,
1151
- class: _tigercatcore.getGroupHeaderCellClasses.call(void 0, props.size)
1152
- },
1153
- `${props.groupBy}: ${groupKey} (${groupItems.length})`
1154
- )
1155
- ])
1156
- );
1157
- groupItems.forEach((record, i) => {
1158
- const globalIndex = ctx.paginatedData.value.indexOf(record);
1159
- const result = renderDataRow(record, globalIndex >= 0 ? globalIndex : i);
1160
- if (Array.isArray(result)) {
1161
- groupRows.push(...result);
1162
- } else {
1163
- groupRows.push(result);
1164
- }
1165
- });
1166
- }
1167
- return _vue.h.call(void 0, "tbody", delegatedBodyHandlers, groupRows);
1168
- }
1169
- const vw = props.virtualWindow;
1170
- if (vw && vw.endIndex >= vw.startIndex) {
1171
- const windowed = [];
1172
- if (vw.topPad > 0) {
1173
- windowed.push(
1174
- _vue.h.call(void 0, "tr", { key: "virtual-top", "aria-hidden": "true" }, [
1175
- _vue.h.call(void 0, "td", {
1176
- colspan: ctx.totalColumnCount.value,
1177
- style: { height: `${vw.topPad}px`, padding: 0 }
1178
- })
1179
- ])
1180
- );
1181
- }
1182
- for (let index = vw.startIndex; index <= vw.endIndex; index++) {
1183
- const result = renderDataRow(ctx.paginatedData.value[index], index);
1184
- if (Array.isArray(result)) windowed.push(...result);
1185
- else windowed.push(result);
1186
- }
1187
- if (vw.bottomPad > 0) {
1188
- windowed.push(
1189
- _vue.h.call(void 0, "tr", { key: "virtual-bottom", "aria-hidden": "true" }, [
1190
- _vue.h.call(void 0, "td", {
1191
- colspan: ctx.totalColumnCount.value,
1192
- style: { height: `${vw.bottomPad}px`, padding: 0 }
1193
- })
1194
- ])
1195
- );
1196
- }
1197
- return _vue.h.call(void 0, "tbody", delegatedBodyHandlers, windowed);
1198
- }
1199
- const rows = ctx.paginatedData.value.flatMap((record, index) => renderDataRow(record, index));
1200
- return _vue.h.call(void 0, "tbody", delegatedBodyHandlers, rows);
1201
- }
1202
-
1203
- // src/components/Table/render-summary.ts
1204
-
1205
-
1206
- function renderSummaryRow(ctx, props) {
1207
- if (!_optionalChain([props, 'access', _81 => _81.summaryRow, 'optionalAccess', _82 => _82.show])) return null;
1208
- const emptyCells = [];
1209
- if (props.rowSelection) {
1210
- emptyCells.push(_vue.h.call(void 0, "td", { class: _tigercatcore.getTableCellClasses.call(void 0, props.size, "left") }));
1211
- }
1212
- if (props.expandable) {
1213
- emptyCells.push(_vue.h.call(void 0, "td", { class: _tigercatcore.getTableCellClasses.call(void 0, props.size, "left") }));
1214
- }
1215
- const dataCells = ctx.displayColumns.value.map((col) => {
1216
- const dataKey = col.dataKey || col.key;
1217
- const val = props.summaryRow.data[dataKey];
1218
- return _vue.h.call(void 0,
1219
- "td",
1220
- {
1221
- key: col.key,
1222
- class: _tigercatcore.getTableCellClasses.call(void 0, props.size, col.align || "left", col.className)
1223
- },
1224
- val != null ? String(val) : ""
1225
- );
1226
- });
1227
- return _vue.h.call(void 0, "tfoot", [_vue.h.call(void 0, "tr", { class: _tigercatcore.tableSummaryRowClasses }, [...emptyCells, ...dataCells])]);
1228
- }
1229
-
1230
- // src/components/Table/render-pagination.ts
1231
-
1232
-
1233
-
1234
-
1235
-
1236
-
1237
-
1238
-
1239
-
1240
-
1241
-
1242
-
1243
-
1244
-
1245
- function renderPagination(ctx, props, view) {
1246
- if (props.pagination === false || !ctx.paginationInfo.value) {
1247
- return null;
1248
- }
1249
- const { totalPages, startIndex, endIndex, hasNext, hasPrev } = ctx.paginationInfo.value;
1250
- const paginationConfig = props.pagination;
1251
- const total = paginationConfig.total !== void 0 && paginationConfig.total > 0 ? paginationConfig.total : ctx.processedData.value.length;
1252
- const locale = _optionalChain([view, 'optionalAccess', _83 => _83.disableI18n]) ? void 0 : _optionalChain([view, 'optionalAccess', _84 => _84.locale]);
1253
- const labels = _tigercatcore.getPaginationLabels.call(void 0, locale);
1254
- const localeCode = _optionalChain([locale, 'optionalAccess', _85 => _85.locale]);
1255
- const finalTotalText = paginationConfig.totalText ? paginationConfig.totalText(total, [startIndex, endIndex]) : _tigercatcore.formatPaginationTotal.call(void 0, labels.totalText, total, [startIndex, endIndex], localeCode);
1256
- const finalPrevText = paginationConfig.prevText || labels.prevPageAriaLabel;
1257
- const finalNextText = paginationConfig.nextText || labels.nextPageAriaLabel;
1258
- const finalPageIndicatorText = paginationConfig.pageIndicatorText ? paginationConfig.pageIndicatorText(ctx.currentPage.value, totalPages) : _tigercatcore.formatPaginationPageIndicator.call(void 0,
1259
- labels.pageIndicatorText,
1260
- ctx.currentPage.value,
1261
- totalPages,
1262
- localeCode
1263
- );
1264
- const finalPrevAriaLabel = _optionalChain([view, 'optionalAccess', _86 => _86.disableI18n]) ? finalPrevText : labels.prevPageAriaLabel;
1265
- const finalNextAriaLabel = _optionalChain([view, 'optionalAccess', _87 => _87.disableI18n]) ? finalNextText : labels.nextPageAriaLabel;
1266
- const normalizedPageSizeOptions = paginationConfig.pageSizeOptions || [
1267
- 10,
1268
- 20,
1269
- 50,
1270
- 100
1271
- ];
1272
- return _vue.h.call(void 0, "div", { class: _tigercatcore.getSimplePaginationContainerClasses.call(void 0, ) }, [
1273
- paginationConfig.showTotal !== false && _vue.h.call(void 0, "div", { class: _tigercatcore.getSimplePaginationTotalClasses.call(void 0, ) }, finalTotalText),
1274
- _vue.h.call(void 0, "div", { class: _tigercatcore.getSimplePaginationControlsClasses.call(void 0, ) }, [
1275
- paginationConfig.showSizeChanger !== false && _vue.h.call(void 0,
1276
- "select",
1277
- {
1278
- class: _tigercatcore.getSimplePaginationSelectClasses.call(void 0, ),
1279
- value: ctx.currentPageSize.value,
1280
- "aria-label": labels.itemsPerPageText,
1281
- onChange: (e) => ctx.handlePageSizeChange(Number(e.target.value))
1282
- },
1283
- normalizedPageSizeOptions.map((option) => {
1284
- const value = typeof option === "number" ? option : option.value;
1285
- const label = typeof option === "number" ? `${_tigercatcore.formatIntlNumber.call(void 0, value, localeCode)} ${labels.itemsPerPageText}` : _nullishCoalesce(option.label, () => ( `${_tigercatcore.formatIntlNumber.call(void 0, value, localeCode)} ${labels.itemsPerPageText}`));
1286
- return _vue.h.call(void 0,
1287
- "option",
1288
- { value, key: value },
1289
- paginationConfig.pageSizeText ? paginationConfig.pageSizeText(value) : label
1290
- );
1291
- })
1292
- ),
1293
- _vue.h.call(void 0, "div", { class: _tigercatcore.getSimplePaginationButtonsWrapperClasses.call(void 0, ) }, [
1294
- _vue.h.call(void 0,
1295
- "button",
1296
- {
1297
- class: _tigercatcore.getSimplePaginationButtonClasses.call(void 0, !hasPrev),
1298
- disabled: !hasPrev,
1299
- "aria-label": finalPrevAriaLabel,
1300
- onClick: () => ctx.handlePageChange(ctx.currentPage.value - 1)
1301
- },
1302
- finalPrevText
1303
- ),
1304
- _vue.h.call(void 0,
1305
- "span",
1306
- {
1307
- class: _tigercatcore.getSimplePaginationPageIndicatorClasses.call(void 0, ),
1308
- "aria-label": finalPageIndicatorText
1309
- },
1310
- finalPageIndicatorText
1311
- ),
1312
- _vue.h.call(void 0,
1313
- "button",
1314
- {
1315
- class: _tigercatcore.getSimplePaginationButtonClasses.call(void 0, !hasNext),
1316
- disabled: !hasNext,
1317
- "aria-label": finalNextAriaLabel,
1318
- onClick: () => ctx.handlePageChange(ctx.currentPage.value + 1)
1319
- },
1320
- finalNextText
1321
- )
1322
- ])
1323
- ])
1324
- ]);
1325
- }
1326
-
1327
- // src/components/Table.ts
1328
- var Table = _vue.defineComponent.call(void 0, {
1329
- name: "TigerTable",
1330
- props: tableProps,
1331
- emits: tableEmits,
1332
- setup(props, { emit, slots }) {
1333
- const config = _chunkIXTYS3EKjs.useTigerConfig.call(void 0, );
1334
- const instance = _vue.getCurrentInstance.call(void 0, );
1335
- const wrapperRef = _vue.ref.call(void 0, null);
1336
- const tableRef = _vue.ref.call(void 0, null);
1337
- const measuredColumnWidths = _vue.ref.call(void 0, {});
1338
- const measuredRowHeights = _vue.ref.call(void 0, []);
1339
- const ctx = useTableState(props, emit, measuredColumnWidths);
1340
- const resolvedPaginationLocale = _vue.ref.call(void 0, );
1341
- const resolvedTableLocale = _vue.ref.call(void 0, );
1342
- let paginationLocaleResolveId = 0;
1343
- let tableLocaleResolveId = 0;
1344
- const paginationLocaleInput = _vue.computed.call(void 0,
1345
- () => props.pagination !== false && typeof props.pagination === "object" ? props.pagination.locale : void 0
1346
- );
1347
- const isPaginationI18nDisabled = _vue.computed.call(void 0, () => paginationLocaleInput.value === false);
1348
- const tableLocaleInput = _vue.computed.call(void 0, () => props.locale);
1349
- _vue.watch.call(void 0,
1350
- paginationLocaleInput,
1351
- (locale) => {
1352
- const resolveId = ++paginationLocaleResolveId;
1353
- if (!locale) {
1354
- resolvedPaginationLocale.value = void 0;
1355
- return;
1356
- }
1357
- const immediateLocale = _tigercatcore.getImmediateTigerLocale.call(void 0, locale);
1358
- resolvedPaginationLocale.value = immediateLocale;
1359
- if (!_tigercatcore.isLazyTigerLocale.call(void 0, locale)) return;
1360
- _tigercatcore.resolveTigerLocale.call(void 0, locale).then((nextLocale) => {
1361
- if (resolveId === paginationLocaleResolveId) {
1362
- resolvedPaginationLocale.value = nextLocale;
1363
- }
1364
- }).catch(() => {
1365
- if (resolveId === paginationLocaleResolveId) {
1366
- resolvedPaginationLocale.value = immediateLocale;
1367
- }
1368
- });
1369
- },
1370
- { immediate: true }
1371
- );
1372
- const paginationLocale = _vue.computed.call(void 0,
1373
- () => isPaginationI18nDisabled.value ? void 0 : _tigercatcore.mergeTigerLocale.call(void 0, config.value.locale, resolvedPaginationLocale.value)
1374
- );
1375
- _vue.watch.call(void 0,
1376
- tableLocaleInput,
1377
- (locale) => {
1378
- const resolveId = ++tableLocaleResolveId;
1379
- if (!locale) {
1380
- resolvedTableLocale.value = void 0;
1381
- return;
1382
- }
1383
- const immediateLocale = _tigercatcore.getImmediateTigerLocale.call(void 0, locale);
1384
- resolvedTableLocale.value = immediateLocale;
1385
- if (!_tigercatcore.isLazyTigerLocale.call(void 0, locale)) return;
1386
- _tigercatcore.resolveTigerLocale.call(void 0, locale).then((nextLocale) => {
1387
- if (resolveId === tableLocaleResolveId) {
1388
- resolvedTableLocale.value = nextLocale;
1389
- }
1390
- }).catch(() => {
1391
- if (resolveId === tableLocaleResolveId) {
1392
- resolvedTableLocale.value = immediateLocale;
1393
- }
1394
- });
1395
- },
1396
- { immediate: true }
1397
- );
1398
- const tableLocale = _vue.computed.call(void 0,
1399
- () => _tigercatcore.mergeTigerLocale.call(void 0, config.value.locale, resolvedTableLocale.value)
1400
- );
1401
- const tableLabels = _vue.computed.call(void 0, () => {
1402
- const overrides = props.emptyText === void 0 ? props.labels : { ...props.labels, emptyText: props.emptyText };
1403
- return _tigercatcore.getTableLabels.call(void 0, tableLocale.value, overrides);
1404
- });
1405
- const cardLayoutMap = _vue.computed.call(void 0, () => {
1406
- const map = /* @__PURE__ */ new Map();
1407
- if (props.cardLayout) {
1408
- for (const item of props.cardLayout) {
1409
- map.set(item.key, item);
1410
- }
1411
- }
1412
- return map;
1413
- });
1414
- const hasCustomCardLayout = _vue.computed.call(void 0, () => {
1415
- return ctx.displayColumns.value.some((col) => col.cardGrid) || props.cardLayout && props.cardLayout.length > 0;
1416
- });
1417
- const resizeController = _tigercatcore.createTableResizeObserverController.call(void 0, {
1418
- onResize: (snapshot) => {
1419
- if (!areNumberRecordsEqual(measuredColumnWidths.value, snapshot.columnWidths)) {
1420
- measuredColumnWidths.value = snapshot.columnWidths;
1421
- }
1422
- if (!areNumberArraysEqual(measuredRowHeights.value, snapshot.rowHeights)) {
1423
- measuredRowHeights.value = snapshot.rowHeights;
1424
- }
1425
- }
1426
- });
1427
- _vue.onMounted.call(void 0, () => {
1428
- if (wrapperRef.value) {
1429
- resizeController.observe(wrapperRef.value, tableRef.value);
1430
- }
1431
- });
1432
- _vue.onBeforeUnmount.call(void 0, () => resizeController.disconnect());
1433
- return () => {
1434
- const resolvedProps = props;
1435
- const virtualRecommendation = _tigercatcore.getTableVirtualRecommendation.call(void 0, {
1436
- virtual: resolvedProps.virtual,
1437
- autoVirtual: resolvedProps.autoVirtual,
1438
- dataLength: resolvedProps.dataSource.length,
1439
- threshold: resolvedProps.virtualThreshold,
1440
- autoThreshold: resolvedProps.autoVirtualThreshold
1441
- });
1442
- const effectiveVirtual = virtualRecommendation.enabled;
1443
- const wrapperStyle = resolvedProps.maxHeight ? {
1444
- maxHeight: typeof resolvedProps.maxHeight === "number" ? `${resolvedProps.maxHeight}px` : resolvedProps.maxHeight
1445
- } : void 0;
1446
- const virtualWindow = effectiveVirtual ? _tigercatcore.getTableVirtualWindow.call(void 0,
1447
- ctx.virtualScrollTop.value,
1448
- typeof resolvedProps.virtualHeight === "number" ? resolvedProps.virtualHeight : 400,
1449
- resolvedProps.virtualItemHeight,
1450
- ctx.paginatedData.value.length
1451
- ) : void 0;
1452
- const renderProps = {
1453
- ...resolvedProps,
1454
- emptyText: tableLabels.value.emptyText,
1455
- // Rows become keyboard-activable when a row-click listener is bound or
1456
- // row selection is enabled (mirrors React's onRowClick/rowSelection).
1457
- interactiveRows: !!resolvedProps.rowSelection || typeof _optionalChain([instance, 'optionalAccess', _88 => _88.vnode, 'access', _89 => _89.props, 'optionalAccess', _90 => _90.onRowClick]) === "function",
1458
- virtualWindow
1459
- };
1460
- const shouldPinColumns = resolvedProps.columnLockable || ctx.fixedColumnsInfo.value.hasFixedColumns;
1461
- const colgroup = shouldPinColumns ? _vue.h.call(void 0,
1462
- "colgroup",
1463
- _tigercatcore.getTableColgroup.call(void 0, {
1464
- columns: ctx.displayColumns.value,
1465
- frozenWidths: ctx.frozenColumnWidths.value,
1466
- size: resolvedProps.size,
1467
- hasSelectionColumn: !!resolvedProps.rowSelection && resolvedProps.rowSelection.showCheckbox !== false,
1468
- expand: resolvedProps.expandable ? resolvedProps.expandable.expandIconPosition === "end" ? "end" : "start" : false
1469
- }).map(
1470
- (entry, index) => _vue.h.call(void 0, "col", {
1471
- key: `${entry.key}-${index}`,
1472
- style: entry.width ? { width: entry.width } : void 0
1473
- })
1474
- )
1475
- ) : null;
1476
- const tableChildren = [
1477
- colgroup,
1478
- renderTableHeader(ctx, renderProps, slots, tableLabels.value),
1479
- renderTableBody(ctx, renderProps, slots, tableLabels.value),
1480
- renderSummaryRow(ctx, renderProps)
1481
- ];
1482
- const tableInner = _vue.h.call(void 0,
1483
- "table",
1484
- {
1485
- ref: tableRef,
1486
- class: _tigercatcore.classNames.call(void 0,
1487
- _tigercatcore.tableBaseClasses,
1488
- _tigercatcore.getTableResponsiveTableClasses.call(void 0,
1489
- resolvedProps.responsiveMode,
1490
- resolvedProps.cardBreakpoint
1491
- ),
1492
- resolvedProps.tableLayout === "fixed" ? "table-fixed" : "table-auto"
1493
- ),
1494
- style: ctx.fixedColumnsInfo.value.hasFixedColumns && ctx.fixedColumnsInfo.value.minTableWidth ? { minWidth: `${ctx.fixedColumnsInfo.value.minTableWidth}px` } : void 0
1495
- },
1496
- tableChildren
1497
- );
1498
- const tableContent = effectiveVirtual ? _vue.h.call(void 0,
1499
- "div",
1500
- {
1501
- style: { height: `${resolvedProps.virtualHeight}px`, overflow: "auto" },
1502
- onScroll: (e) => {
1503
- ctx.virtualScrollTop.value = e.target.scrollTop;
1504
- }
1505
- },
1506
- [tableInner]
1507
- ) : tableInner;
1508
- const cardContent = (() => {
1509
- if (resolvedProps.responsiveMode !== "card") return null;
1510
- const cardChildren = [];
1511
- const sortableColumns = ctx.displayColumns.value.filter((column) => column.sortable);
1512
- if (resolvedProps.rowSelection && resolvedProps.rowSelection.type !== "radio" && resolvedProps.rowSelection.showCheckbox !== false && ctx.paginatedData.value.length > 0) {
1513
- cardChildren.push(
1514
- _vue.h.call(void 0,
1515
- "div",
1516
- {
1517
- class: "flex items-center justify-between rounded-[var(--tiger-radius-md,0.5rem)] border border-[var(--tiger-border,#e5e7eb)] bg-[var(--tiger-surface,#ffffff)] px-3 py-2"
1518
- },
1519
- [
1520
- _vue.h.call(void 0,
1521
- _chunkPFWRFHSBjs.Checkbox,
1522
- {
1523
- size: "sm",
1524
- modelValue: ctx.allSelected.value,
1525
- indeterminate: ctx.someSelected.value,
1526
- onChange: (checked) => ctx.handleSelectAll(checked)
1527
- },
1528
- { default: () => tableLabels.value.selectAllText }
1529
- )
1530
- ]
1531
- )
1532
- );
1533
- }
1534
- if (sortableColumns.length > 0) {
1535
- cardChildren.push(
1536
- _vue.h.call(void 0,
1537
- "div",
1538
- {
1539
- class: "rounded-[var(--tiger-radius-md,0.5rem)] border border-[var(--tiger-border,#e5e7eb)] bg-[var(--tiger-surface,#ffffff)] px-3 py-2"
1540
- },
1541
- [
1542
- _vue.h.call(void 0, _chunkCFJST2X2js.Select, {
1543
- size: "sm",
1544
- modelValue: ctx.sortState.value.key && ctx.sortState.value.direction ? `${ctx.sortState.value.key}:${ctx.sortState.value.direction}` : "",
1545
- options: [
1546
- { label: tableLabels.value.clearSortText, value: "" },
1547
- ...sortableColumns.flatMap((column) => [
1548
- {
1549
- label: `${_tigercatcore.formatTableSortByText.call(void 0, tableLabels.value.sortByText, column.title)} \u2191`,
1550
- value: `${column.key}:asc`
1551
- },
1552
- {
1553
- label: `${_tigercatcore.formatTableSortByText.call(void 0, tableLabels.value.sortByText, column.title)} \u2193`,
1554
- value: `${column.key}:desc`
1555
- }
1556
- ])
1557
- ],
1558
- clearable: false,
1559
- "onUpdate:modelValue": (value) => {
1560
- const nextValue = String(_nullishCoalesce(value, () => ( "")));
1561
- if (!nextValue) {
1562
- ctx.handleSetSort({ key: null, direction: null });
1563
- return;
1564
- }
1565
- const separatorIndex = nextValue.lastIndexOf(":");
1566
- const key = nextValue.slice(0, separatorIndex);
1567
- const direction = nextValue.slice(separatorIndex + 1);
1568
- ctx.handleSetSort({ key, direction });
1569
- }
1570
- })
1571
- ]
1572
- )
1573
- );
1574
- }
1575
- if (ctx.paginatedData.value.length === 0) {
1576
- cardChildren.push(
1577
- _vue.h.call(void 0, "div", { class: _tigercatcore.getTableResponsiveCardClasses.call(void 0, resolvedProps.cardPadding) }, [
1578
- _vue.h.call(void 0, _chunkTYYJPEWGjs.Empty, { showImage: false, description: tableLabels.value.emptyText })
1579
- ])
1580
- );
1581
- } else {
1582
- cardChildren.push(
1583
- ...ctx.paginatedData.value.map((record, index) => {
1584
- const key = ctx.paginatedRowKeys.value[index];
1585
- const isExpanded = ctx.expandedRowKeySet.value.has(key);
1586
- const isSelected = ctx.selectedRowKeySet.value.has(key);
1587
- const isRowExpandable = resolvedProps.expandable ? resolvedProps.expandable.rowExpandable ? resolvedProps.expandable.rowExpandable(record) : true : false;
1588
- const { titleColumn, bodyColumns } = _tigercatcore.getCardColumns.call(void 0, ctx.displayColumns.value);
1589
- const renderCardCellContent = (column) => {
1590
- const dataKey = column.dataKey || column.key;
1591
- return _nullishCoalesce(_optionalChain([slots, 'access', _91 => _91[`cell-${column.key}`], 'optionalCall', _92 => _92({ record, index })]), () => ( (column.render ? column.render(record, index) : record[dataKey])));
1592
- };
1593
- const titleNode = titleColumn ? _vue.h.call(void 0, "div", { class: _tigercatcore.tableResponsiveCardTitleClasses }, [
1594
- renderCardCellContent(titleColumn)
1595
- ]) : null;
1596
- const rows = hasCustomCardLayout.value ? [
1597
- _vue.h.call(void 0,
1598
- "div",
1599
- {
1600
- class: _tigercatcore.classNames.call(void 0,
1601
- "grid grid-cols-12 mt-2",
1602
- _nullishCoalesce(resolvedProps.cardFieldGap, () => ( "gap-3"))
1603
- )
1604
- },
1605
- bodyColumns.map((column) => {
1606
- const layoutItem = cardLayoutMap.value.get(column.key);
1607
- const gridInfo = _tigercatcore.getCardGridInfo.call(void 0, column, layoutItem);
1608
- if (gridInfo.hideLabel) {
1609
- return _vue.h.call(void 0,
1610
- "div",
1611
- {
1612
- key: column.key,
1613
- class: _tigercatcore.classNames.call(void 0,
1614
- gridInfo.className,
1615
- gridInfo.divider && "border-t border-[var(--tiger-border,#e5e7eb)] pt-3"
1616
- )
1617
- },
1618
- [renderCardCellContent(column)]
1619
- );
1620
- }
1621
- if (gridInfo.labelPosition === "top") {
1622
- return _vue.h.call(void 0,
1623
- "div",
1624
- {
1625
- key: column.key,
1626
- class: _tigercatcore.classNames.call(void 0,
1627
- gridInfo.className,
1628
- gridInfo.divider && "border-t border-[var(--tiger-border,#e5e7eb)] pt-3"
1629
- )
1630
- },
1631
- [
1632
- _vue.h.call(void 0,
1633
- "div",
1634
- {
1635
- class: _tigercatcore.classNames.call(void 0,
1636
- "text-xs font-medium uppercase tracking-wider text-[var(--tiger-text-muted,#6b7280)] mb-1",
1637
- gridInfo.labelClassName
1638
- )
1639
- },
1640
- column.title
1641
- ),
1642
- _vue.h.call(void 0,
1643
- "div",
1644
- {
1645
- class: _tigercatcore.classNames.call(void 0,
1646
- "min-w-0 text-sm text-[var(--tiger-text,#111827)] break-words",
1647
- gridInfo.valueClassName
1648
- )
1649
- },
1650
- [renderCardCellContent(column)]
1651
- )
1652
- ]
1653
- );
1654
- }
1655
- return _vue.h.call(void 0,
1656
- "div",
1657
- {
1658
- key: column.key,
1659
- class: _tigercatcore.classNames.call(void 0,
1660
- gridInfo.className,
1661
- "grid grid-cols-[auto_1fr] gap-2 items-baseline",
1662
- gridInfo.divider && "border-t border-[var(--tiger-border,#e5e7eb)] pt-3"
1663
- )
1664
- },
1665
- [
1666
- _vue.h.call(void 0,
1667
- "div",
1668
- {
1669
- class: _tigercatcore.classNames.call(void 0,
1670
- "text-xs font-medium uppercase tracking-wider text-[var(--tiger-text-muted,#6b7280)] shrink-0",
1671
- gridInfo.labelClassName
1672
- )
1673
- },
1674
- column.title
1675
- ),
1676
- _vue.h.call(void 0,
1677
- "div",
1678
- {
1679
- class: _tigercatcore.classNames.call(void 0,
1680
- "min-w-0 text-sm text-[var(--tiger-text,#111827)] break-words",
1681
- gridInfo.valueClassName
1682
- )
1683
- },
1684
- [renderCardCellContent(column)]
1685
- )
1686
- ]
1687
- );
1688
- })
1689
- )
1690
- ] : bodyColumns.map(
1691
- (column) => _vue.h.call(void 0, "div", { key: column.key, class: _tigercatcore.tableResponsiveCardRowClasses }, [
1692
- _vue.h.call(void 0, "div", { class: _tigercatcore.tableResponsiveCardLabelClasses }, column.title),
1693
- _vue.h.call(void 0, "div", { class: _tigercatcore.tableResponsiveCardValueClasses }, [
1694
- renderCardCellContent(column)
1695
- ])
1696
- ])
1697
- );
1698
- const controls = [];
1699
- if (resolvedProps.rowSelection && resolvedProps.rowSelection.showCheckbox !== false) {
1700
- const checkboxProps = _optionalChain([resolvedProps, 'access', _93 => _93.rowSelection, 'access', _94 => _94.getCheckboxProps, 'optionalCall', _95 => _95(record)]) || {};
1701
- controls.push(
1702
- _vue.h.call(void 0, "span", { onClick: (event) => event.stopPropagation() }, [
1703
- resolvedProps.rowSelection.type === "radio" ? _vue.h.call(void 0, _chunk3QV2D54Hjs.Radio, {
1704
- value: key,
1705
- checked: isSelected,
1706
- disabled: checkboxProps.disabled,
1707
- "aria-label": _tigercatcore.formatTableSelectRowAriaLabel.call(void 0,
1708
- tableLabels.value.selectRowAriaLabel,
1709
- index + 1,
1710
- _optionalChain([tableLocale, 'access', _96 => _96.value, 'optionalAccess', _97 => _97.locale])
1711
- ),
1712
- onChange: () => ctx.handleSelectRow(key, true)
1713
- }) : _vue.h.call(void 0, _chunkPFWRFHSBjs.Checkbox, {
1714
- size: "sm",
1715
- modelValue: isSelected,
1716
- disabled: checkboxProps.disabled,
1717
- "aria-label": _tigercatcore.formatTableSelectRowAriaLabel.call(void 0,
1718
- tableLabels.value.selectRowAriaLabel,
1719
- index + 1,
1720
- _optionalChain([tableLocale, 'access', _98 => _98.value, 'optionalAccess', _99 => _99.locale])
1721
- ),
1722
- onChange: (checked) => ctx.handleSelectRow(key, checked)
1723
- })
1724
- ])
1725
- );
1726
- }
1727
- if (resolvedProps.expandable && isRowExpandable) {
1728
- controls.push(
1729
- _vue.h.call(void 0,
1730
- "button",
1731
- {
1732
- type: "button",
1733
- class: "text-sm text-[var(--tiger-primary,#2563eb)]",
1734
- "aria-expanded": isExpanded,
1735
- onClick: (event) => {
1736
- event.stopPropagation();
1737
- ctx.handleToggleExpand(key, record);
1738
- }
1739
- },
1740
- isExpanded ? tableLabels.value.collapseText : tableLabels.value.expandText
1741
- )
1742
- );
1743
- }
1744
- const titleWithInlineControls = titleNode && resolvedProps.cardSelectionPosition === "title-inline" && controls.length ? _vue.h.call(void 0,
1745
- "div",
1746
- {
1747
- class: _tigercatcore.classNames.call(void 0,
1748
- _tigercatcore.tableResponsiveCardTitleClasses,
1749
- "flex items-center gap-3"
1750
- )
1751
- },
1752
- [
1753
- ...controls,
1754
- _vue.h.call(void 0, "span", { class: "min-w-0 flex-1" }, [
1755
- renderCardCellContent(titleColumn)
1756
- ])
1757
- ]
1758
- ) : titleNode;
1759
- const expandedContent = resolvedProps.expandable && isExpanded && isRowExpandable ? _nullishCoalesce(_optionalChain([slots, 'access', _100 => _100["expanded-row"], 'optionalCall', _101 => _101({ record, index })]), () => ( _optionalChain([resolvedProps, 'access', _102 => _102.expandable, 'access', _103 => _103.expandedRowRender, 'optionalCall', _104 => _104(record, index)]))) : null;
1760
- const cardContext = {
1761
- record,
1762
- index,
1763
- columns: ctx.displayColumns.value,
1764
- selected: isSelected,
1765
- expanded: isExpanded,
1766
- toggleExpand: () => ctx.handleToggleExpand(key, record),
1767
- selectRow: (checked) => ctx.handleSelectRow(key, checked)
1768
- };
1769
- const customCard = _nullishCoalesce(_optionalChain([slots, 'access', _105 => _105.card, 'optionalCall', _106 => _106(cardContext)]), () => ( _optionalChain([resolvedProps, 'access', _107 => _107.renderCard, 'optionalCall', _108 => _108(cardContext)])));
1770
- const resolvedCardClassName = typeof resolvedProps.cardClassName === "function" ? resolvedProps.cardClassName(record, index) : resolvedProps.cardClassName;
1771
- return _vue.h.call(void 0,
1772
- "div",
1773
- {
1774
- key,
1775
- class: _tigercatcore.classNames.call(void 0,
1776
- _tigercatcore.getTableResponsiveCardClasses.call(void 0, resolvedProps.cardPadding),
1777
- resolvedCardClassName
1778
- ),
1779
- onClick: () => ctx.handleRowClick(record, index, key)
1780
- },
1781
- customCard !== void 0 && customCard !== null ? [customCard] : [
1782
- controls.length && (!titleNode || resolvedProps.cardSelectionPosition !== "title-inline") ? _vue.h.call(void 0, "div", { class: "mb-2 flex items-center gap-3" }, controls) : null,
1783
- titleWithInlineControls,
1784
- ...rows,
1785
- expandedContent ? _vue.h.call(void 0,
1786
- "div",
1787
- {
1788
- class: "mt-3 border-t border-[var(--tiger-border,#e5e7eb)] pt-3"
1789
- },
1790
- [expandedContent]
1791
- ) : null
1792
- ]
1793
- );
1794
- })
1795
- );
1796
- }
1797
- return _vue.h.call(void 0,
1798
- "div",
1799
- {
1800
- class: _tigercatcore.getTableResponsiveCardListClasses.call(void 0, resolvedProps.cardBreakpoint),
1801
- "data-tiger-table-mobile": "card"
1802
- },
1803
- cardChildren
1804
- );
1805
- })();
1806
- return _vue.h.call(void 0,
1807
- "div",
1808
- {
1809
- ref: wrapperRef,
1810
- class: _tigercatcore.getTableWrapperClasses.call(void 0, resolvedProps.bordered, resolvedProps.maxHeight),
1811
- style: wrapperStyle,
1812
- "data-tiger-virtual": virtualRecommendation.enabled ? "enabled" : void 0,
1813
- "data-tiger-virtual-auto": virtualRecommendation.autoEnabled ? "true" : void 0,
1814
- "data-tiger-virtual-recommended": virtualRecommendation.recommended ? "true" : void 0,
1815
- "data-tiger-virtual-threshold": virtualRecommendation.recommended ? virtualRecommendation.threshold : void 0,
1816
- "data-tiger-measured-row-height": measuredRowHeights.value[0] || void 0,
1817
- "aria-busy": resolvedProps.loading
1818
- },
1819
- [
1820
- resolvedProps.exportable && _vue.h.call(void 0, "div", { class: "flex justify-end p-2" }, [
1821
- _vue.h.call(void 0,
1822
- "button",
1823
- {
1824
- type: "button",
1825
- class: _tigercatcore.tableExportButtonClasses,
1826
- onClick: ctx.handleExport,
1827
- "aria-label": resolvedProps.exportFormat === "excel" ? tableLabels.value.exportExcelAriaLabel : tableLabels.value.exportCsvAriaLabel
1828
- },
1829
- resolvedProps.exportFormat === "excel" ? tableLabels.value.exportExcelText : tableLabels.value.exportCsvText
1830
- )
1831
- ]),
1832
- tableContent,
1833
- cardContent,
1834
- resolvedProps.loading && _vue.h.call(void 0,
1835
- "div",
1836
- {
1837
- class: _tigercatcore.tableLoadingOverlayClasses,
1838
- role: "status",
1839
- "aria-live": "polite",
1840
- "aria-label": tableLabels.value.loadingText
1841
- },
1842
- [LoadingSpinner(), _vue.h.call(void 0, "span", { class: "sr-only" }, tableLabels.value.loadingText)]
1843
- ),
1844
- renderPagination(ctx, renderProps, {
1845
- locale: paginationLocale.value,
1846
- disableI18n: isPaginationI18nDisabled.value
1847
- })
1848
- ]
1849
- );
1850
- };
1851
- }
1852
- });
1853
- var Table_default = Table;
1854
- function areNumberRecordsEqual(current, next) {
1855
- const currentKeys = Object.keys(current);
1856
- const nextKeys = Object.keys(next);
1857
- return currentKeys.length === nextKeys.length && nextKeys.every((key) => current[key] === next[key]);
1858
- }
1859
- function areNumberArraysEqual(current, next) {
1860
- return current.length === next.length && next.every((value, index) => current[index] === value);
1861
- }
1862
-
1863
-
1864
-
1865
-
1866
- exports.Table = Table; exports.Table_default = Table_default;