@expcat/tigercat-vue 0.4.2 → 1.0.0

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 (475) hide show
  1. package/dist/{chunk-ATGOHL6L.mjs → chunk-243JSTYQ.mjs} +6 -6
  2. package/dist/chunk-2S5CNU36.js +163 -0
  3. package/dist/{chunk-ROKUXJBS.js → chunk-2SK6T4WB.js} +3 -3
  4. package/dist/{chunk-7RRA3TIG.mjs → chunk-2TNZ4JNT.mjs} +20 -2
  5. package/dist/chunk-2WJADO6O.mjs +298 -0
  6. package/dist/{chunk-BFNHRBWN.js → chunk-2WZGK7XJ.js} +6 -6
  7. package/dist/chunk-33C5E3AQ.mjs +328 -0
  8. package/dist/chunk-34ZZLKQ4.js +184 -0
  9. package/dist/chunk-3FVWZYBQ.js +196 -0
  10. package/dist/chunk-3G7QYQYL.js +95 -0
  11. package/dist/chunk-3MC45EXP.mjs +86 -0
  12. package/dist/{chunk-LGRUMMOG.js → chunk-3YWYAQR6.js} +9 -9
  13. package/dist/chunk-43BLH7DE.js +154 -0
  14. package/dist/{chunk-GWJSBFLF.js → chunk-46XPSPG4.js} +21 -6
  15. package/dist/chunk-4BMFV4CH.mjs +204 -0
  16. package/dist/chunk-4F5ABXXM.js +248 -0
  17. package/dist/{chunk-J5J4UYGP.mjs → chunk-4K2CCBFT.mjs} +65 -5
  18. package/dist/{chunk-HTMTOXUO.mjs → chunk-4KCCUIGO.mjs} +4 -4
  19. package/dist/chunk-4Y2SJZB5.js +262 -0
  20. package/dist/{chunk-YCI7GRQY.mjs → chunk-564LMZQL.mjs} +6 -6
  21. package/dist/{chunk-QLK4ZC2B.js → chunk-5AXCKK6Z.js} +4 -4
  22. package/dist/{chunk-EAMHOEAJ.js → chunk-5DXIYS7U.js} +11 -11
  23. package/dist/{chunk-CEAMHLIL.js → chunk-5JSU44MQ.js} +12 -0
  24. package/dist/chunk-5XF5IAUD.mjs +193 -0
  25. package/dist/chunk-5Y3HYEQD.js +64 -0
  26. package/dist/{chunk-LDCTSE6Y.mjs → chunk-665NGSV3.mjs} +3 -3
  27. package/dist/{chunk-WIPPSHI6.mjs → chunk-6A57RY3H.mjs} +6 -6
  28. package/dist/{chunk-7AFJ7TKW.js → chunk-6DP7XE77.js} +7 -6
  29. package/dist/chunk-6VG6ARQG.js +206 -0
  30. package/dist/chunk-6XU5PSC2.js +195 -0
  31. package/dist/{chunk-MJ7RGL34.mjs → chunk-7DGAOCPX.mjs} +64 -3
  32. package/dist/{chunk-W36SYMVH.js → chunk-7VSD3NPI.js} +91 -43
  33. package/dist/{chunk-D5CR2P7K.mjs → chunk-A64AWAOW.mjs} +44 -14
  34. package/dist/{chunk-F5AI7CPC.js → chunk-AAO2B46J.js} +44 -3
  35. package/dist/{chunk-ZREPAOSW.mjs → chunk-ABPOLQLE.mjs} +1 -1
  36. package/dist/chunk-AFKNO6SF.js +76 -0
  37. package/dist/chunk-AGQNHT65.mjs +92 -0
  38. package/dist/{chunk-YQGKXFV5.js → chunk-BDMWFNTC.js} +2 -2
  39. package/dist/chunk-BFS7XO3E.js +318 -0
  40. package/dist/{chunk-7TGLZQV5.js → chunk-BNIUWON3.js} +9 -5
  41. package/dist/chunk-BPAN6T7H.mjs +135 -0
  42. package/dist/{chunk-K6HDRMPN.js → chunk-BUTNEKFD.js} +6 -5
  43. package/dist/chunk-BYNMOQBB.js +301 -0
  44. package/dist/chunk-BZBVSB43.js +138 -0
  45. package/dist/{chunk-5BAN4GHQ.mjs → chunk-C76CIM26.mjs} +2 -1
  46. package/dist/chunk-CG3AMK5U.mjs +38 -0
  47. package/dist/chunk-CQPHZU3H.mjs +73 -0
  48. package/dist/chunk-CXJUEG75.js +331 -0
  49. package/dist/{chunk-ATOLZW76.js → chunk-D6AWPRGV.js} +91 -17
  50. package/dist/{chunk-MYF3ZRV3.mjs → chunk-DBPY5M7Y.mjs} +23 -8
  51. package/dist/chunk-DC5J25FH.mjs +245 -0
  52. package/dist/chunk-DYSLYJ2W.js +88 -0
  53. package/dist/chunk-E2GQSWHK.mjs +93 -0
  54. package/dist/{chunk-XEU42TLP.js → chunk-ECUROLZ7.js} +64 -3
  55. package/dist/chunk-ELEAQEMV.mjs +61 -0
  56. package/dist/{chunk-GNKXBRXH.js → chunk-ESTA5C5P.js} +7 -7
  57. package/dist/chunk-EXQSRZJX.mjs +315 -0
  58. package/dist/chunk-EZXW4HIZ.mjs +149 -0
  59. package/dist/chunk-FIV4PKWT.js +89 -0
  60. package/dist/chunk-FOF7UBMU.js +180 -0
  61. package/dist/{chunk-SKV2HHBC.js → chunk-FUGSQXFR.js} +64 -4
  62. package/dist/chunk-G3SWTL27.js +103 -0
  63. package/dist/{chunk-6PZZNM3S.js → chunk-G4ZD6COW.js} +26 -15
  64. package/dist/{chunk-B6ER2B2D.js → chunk-GA5S2KNZ.js} +2 -2
  65. package/dist/chunk-GHPSCR6M.js +69 -0
  66. package/dist/{chunk-3WM7WK7E.js → chunk-GJFT5IQR.js} +32 -36
  67. package/dist/chunk-GMYSHJCU.mjs +143 -0
  68. package/dist/{chunk-U7MDGSCQ.mjs → chunk-HKYYO326.mjs} +12 -0
  69. package/dist/chunk-HRIKUP6R.js +106 -0
  70. package/dist/chunk-HSXB2ASL.mjs +265 -0
  71. package/dist/{chunk-DEFEAEYE.mjs → chunk-HTOCKV2N.mjs} +306 -105
  72. package/dist/{chunk-327O6FN7.mjs → chunk-HXLCWM2J.mjs} +36 -24
  73. package/dist/chunk-I5K3R4FN.mjs +149 -0
  74. package/dist/chunk-I6RGE7XQ.js +152 -0
  75. package/dist/{chunk-3ZHQJ4W6.mjs → chunk-IOBJYUUO.mjs} +31 -35
  76. package/dist/chunk-IZF4VHJ2.mjs +100 -0
  77. package/dist/{chunk-OOKS4KMK.js → chunk-JCMGBKS6.js} +19 -0
  78. package/dist/{chunk-R7DMRLHV.mjs → chunk-JGUXQMYL.mjs} +1 -1
  79. package/dist/chunk-JIMDJWZZ.js +52 -0
  80. package/dist/chunk-JM3ZZYTE.mjs +181 -0
  81. package/dist/{chunk-UWVUDZVA.js → chunk-JN63Z5E5.js} +3 -21
  82. package/dist/chunk-JSIQIWYP.js +41 -0
  83. package/dist/{chunk-UKJSG75K.js → chunk-KFE7T7CN.js} +3 -3
  84. package/dist/{chunk-YXN3YY5Y.mjs → chunk-KOTSKHPQ.mjs} +30 -12
  85. package/dist/chunk-KYQAAQKV.mjs +192 -0
  86. package/dist/{chunk-KCJPJQIS.js → chunk-LFV3KYO2.js} +7 -7
  87. package/dist/chunk-LGVPLGK3.mjs +361 -0
  88. package/dist/chunk-LHPBK4MG.js +92 -0
  89. package/dist/{chunk-AO4QQVBB.mjs → chunk-LJJ3VTR3.mjs} +5 -5
  90. package/dist/{chunk-EBTLMVDJ.js → chunk-LLU76X6I.js} +3 -3
  91. package/dist/{chunk-WMM3FR3W.mjs → chunk-LV3BMS4U.mjs} +1 -1
  92. package/dist/{chunk-P47EXOAW.mjs → chunk-M6PEW6V5.mjs} +89 -41
  93. package/dist/{chunk-D6MR5YRE.mjs → chunk-M7JUNLA7.mjs} +25 -12
  94. package/dist/chunk-MADOTDW7.mjs +129 -0
  95. package/dist/{chunk-N3T6BQGK.js → chunk-MI5EG5QX.js} +3 -2
  96. package/dist/{chunk-QERCB3HM.mjs → chunk-MKLJ2LJW.mjs} +17 -3
  97. package/dist/chunk-MNH3KNSN.js +152 -0
  98. package/dist/chunk-MX2KCWM2.js +193 -0
  99. package/dist/chunk-NAHD6ZRR.mjs +65 -0
  100. package/dist/chunk-NOZ65AMO.js +96 -0
  101. package/dist/chunk-NXGCLBVG.js +268 -0
  102. package/dist/{chunk-TCJBN2DA.mjs → chunk-OEHCRIVT.mjs} +4 -4
  103. package/dist/chunk-OMYSFPX6.mjs +173 -0
  104. package/dist/{chunk-W2OCMRRH.mjs → chunk-OXOCGMPN.mjs} +1 -1
  105. package/dist/{chunk-RVEEEDJQ.mjs → chunk-P4X7GS2X.mjs} +1 -1
  106. package/dist/{chunk-HNQZ5JRB.js → chunk-PBWSBNDS.js} +31 -2
  107. package/dist/{chunk-6MJBCXPO.js → chunk-PUALBK3Y.js} +42 -12
  108. package/dist/chunk-PXRF4IJO.mjs +159 -0
  109. package/dist/chunk-Q57TYGO4.js +123 -0
  110. package/dist/{chunk-TQOMX62N.js → chunk-Q6CGPWQF.js} +7 -7
  111. package/dist/{chunk-ZZ5LMO3X.js → chunk-QDFUM2QT.js} +35 -23
  112. package/dist/{chunk-YCUO6ZKS.mjs → chunk-QDNTISP7.mjs} +25 -6
  113. package/dist/{chunk-GALASVSG.mjs → chunk-QNODDATK.mjs} +31 -2
  114. package/dist/chunk-RB7KVVWE.mjs +259 -0
  115. package/dist/{chunk-LNWRZKX2.js → chunk-RDV4BMTK.js} +5 -5
  116. package/dist/{chunk-ENVHCXM5.js → chunk-RQREJGY3.js} +2 -2
  117. package/dist/chunk-RSBAFDUA.mjs +89 -0
  118. package/dist/chunk-S276SM7L.mjs +146 -0
  119. package/dist/{chunk-S4GFEADD.js → chunk-SEKYX56R.js} +18 -4
  120. package/dist/chunk-SI3JIHH4.js +184 -0
  121. package/dist/chunk-T52TU2RW.mjs +190 -0
  122. package/dist/{chunk-VBXPDCRX.js → chunk-TDL4BUUB.js} +7 -7
  123. package/dist/{chunk-NTUGEHEI.mjs → chunk-TW64ZNZY.mjs} +2 -2
  124. package/dist/{chunk-Y5AZNO2W.js → chunk-U2K7CF67.js} +28 -9
  125. package/dist/chunk-U5ABMOOV.js +364 -0
  126. package/dist/{chunk-DELTFEEJ.js → chunk-U7CCKZAG.js} +24 -11
  127. package/dist/{chunk-WV3Y45YK.js → chunk-UG6XPJ2N.js} +305 -104
  128. package/dist/chunk-UPPRQ3ZS.js +132 -0
  129. package/dist/chunk-UQK22ZMC.mjs +151 -0
  130. package/dist/{chunk-NV6GZPJP.mjs → chunk-UWL2XUAH.mjs} +4 -22
  131. package/dist/{chunk-LUN3PRLX.js → chunk-V4PBWEAU.js} +25 -1
  132. package/dist/chunk-VDNAGLQJ.js +176 -0
  133. package/dist/chunk-VIIGYWUY.mjs +83 -0
  134. package/dist/chunk-W2WGLETE.mjs +177 -0
  135. package/dist/chunk-W3Y22PMU.mjs +48 -0
  136. package/dist/chunk-W6TMZ7ZT.js +207 -0
  137. package/dist/chunk-WFISP42H.mjs +93 -0
  138. package/dist/chunk-WLKOJFOC.mjs +120 -0
  139. package/dist/{chunk-5XY7MXWC.mjs → chunk-WNF7XUX4.mjs} +93 -19
  140. package/dist/{chunk-HFBRO2IF.mjs → chunk-XA5QMUZX.mjs} +1 -1
  141. package/dist/chunk-XFZZWZ6Q.js +149 -0
  142. package/dist/{chunk-WEFQCJAG.js → chunk-XGXGAK27.js} +29 -11
  143. package/dist/{chunk-EVOLGCGW.mjs → chunk-XNORTTVQ.mjs} +44 -3
  144. package/dist/{chunk-TRDG56CB.mjs → chunk-XP5M2GK7.mjs} +27 -3
  145. package/dist/chunk-XQKIMRRF.js +146 -0
  146. package/dist/chunk-XTMGF5YP.js +97 -0
  147. package/dist/chunk-XYIAHZNM.mjs +181 -0
  148. package/dist/{chunk-7J44XQKW.mjs → chunk-YFD6RD7P.mjs} +26 -15
  149. package/dist/{chunk-MB7W46IY.mjs → chunk-YH7N5GZF.mjs} +5 -4
  150. package/dist/chunk-YUEBMBOH.mjs +103 -0
  151. package/dist/chunk-YYZBVHVC.mjs +203 -0
  152. package/dist/{chunk-LLK2OK3K.mjs → chunk-Z2NMFYF4.mjs} +1 -1
  153. package/dist/{chunk-MMQ34S5M.mjs → chunk-ZUVR5UZL.mjs} +7 -6
  154. package/dist/{chunk-37WD7WPC.mjs → chunk-ZXR4DAAO.mjs} +9 -5
  155. package/dist/components/ActivityFeed.d.mts +1 -1
  156. package/dist/components/ActivityFeed.d.ts +1 -1
  157. package/dist/components/ActivityFeed.js +4 -4
  158. package/dist/components/ActivityFeed.mjs +2 -2
  159. package/dist/components/Affix.d.mts +75 -0
  160. package/dist/components/Affix.d.ts +75 -0
  161. package/dist/components/Affix.js +17 -0
  162. package/dist/components/Affix.mjs +2 -0
  163. package/dist/components/Alert.d.mts +51 -0
  164. package/dist/components/Alert.d.ts +51 -0
  165. package/dist/components/Alert.js +4 -4
  166. package/dist/components/Alert.mjs +2 -2
  167. package/dist/components/AreaChart.js +5 -5
  168. package/dist/components/AreaChart.mjs +3 -3
  169. package/dist/components/AutoComplete.d.mts +108 -0
  170. package/dist/components/AutoComplete.d.ts +108 -0
  171. package/dist/components/AutoComplete.js +17 -0
  172. package/dist/components/AutoComplete.mjs +2 -0
  173. package/dist/components/AvatarGroup.d.mts +49 -0
  174. package/dist/components/AvatarGroup.d.ts +49 -0
  175. package/dist/components/AvatarGroup.js +21 -0
  176. package/dist/components/AvatarGroup.mjs +2 -0
  177. package/dist/components/BarChart.js +5 -5
  178. package/dist/components/BarChart.mjs +3 -3
  179. package/dist/components/BreadcrumbItem.d.mts +3 -3
  180. package/dist/components/BreadcrumbItem.d.ts +3 -3
  181. package/dist/components/Button.d.mts +35 -7
  182. package/dist/components/Button.d.ts +35 -7
  183. package/dist/components/Button.js +3 -3
  184. package/dist/components/Button.mjs +1 -1
  185. package/dist/components/ButtonGroup.d.mts +42 -0
  186. package/dist/components/ButtonGroup.d.ts +42 -0
  187. package/dist/components/ButtonGroup.js +21 -0
  188. package/dist/components/ButtonGroup.mjs +2 -0
  189. package/dist/components/Calendar.d.mts +58 -0
  190. package/dist/components/Calendar.d.ts +58 -0
  191. package/dist/components/Calendar.js +17 -0
  192. package/dist/components/Calendar.mjs +2 -0
  193. package/dist/components/Card.d.mts +19 -1
  194. package/dist/components/Card.d.ts +19 -1
  195. package/dist/components/Card.js +3 -3
  196. package/dist/components/Card.mjs +1 -1
  197. package/dist/components/Cascader.d.mts +127 -0
  198. package/dist/components/Cascader.d.ts +127 -0
  199. package/dist/components/Cascader.js +17 -0
  200. package/dist/components/Cascader.mjs +2 -0
  201. package/dist/components/ChatWindow.js +5 -5
  202. package/dist/components/ChatWindow.mjs +3 -3
  203. package/dist/components/CodeEditor.d.mts +167 -0
  204. package/dist/components/CodeEditor.d.ts +167 -0
  205. package/dist/components/CodeEditor.js +17 -0
  206. package/dist/components/CodeEditor.mjs +2 -0
  207. package/dist/components/ColorPicker.d.mts +70 -0
  208. package/dist/components/ColorPicker.d.ts +70 -0
  209. package/dist/components/ColorPicker.js +17 -0
  210. package/dist/components/ColorPicker.mjs +2 -0
  211. package/dist/components/CommentThread.d.mts +2 -2
  212. package/dist/components/CommentThread.d.ts +2 -2
  213. package/dist/components/CommentThread.js +4 -4
  214. package/dist/components/CommentThread.mjs +2 -2
  215. package/dist/components/ConfigProvider.d.mts +21 -1
  216. package/dist/components/ConfigProvider.d.ts +21 -1
  217. package/dist/components/ConfigProvider.js +5 -5
  218. package/dist/components/ConfigProvider.mjs +1 -1
  219. package/dist/components/CropUpload.js +5 -5
  220. package/dist/components/CropUpload.mjs +3 -3
  221. package/dist/components/DataTableWithToolbar.d.mts +1 -1
  222. package/dist/components/DataTableWithToolbar.d.ts +1 -1
  223. package/dist/components/DataTableWithToolbar.js +7 -7
  224. package/dist/components/DataTableWithToolbar.mjs +5 -5
  225. package/dist/components/DatePicker.d.mts +16 -1
  226. package/dist/components/DatePicker.d.ts +16 -1
  227. package/dist/components/DatePicker.js +4 -3
  228. package/dist/components/DatePicker.mjs +2 -1
  229. package/dist/components/Descriptions.d.mts +7 -9
  230. package/dist/components/Descriptions.d.ts +7 -9
  231. package/dist/components/Descriptions.js +3 -3
  232. package/dist/components/Descriptions.mjs +1 -1
  233. package/dist/components/DonutChart.js +5 -5
  234. package/dist/components/DonutChart.mjs +3 -3
  235. package/dist/components/Drawer.d.mts +23 -8
  236. package/dist/components/Drawer.d.ts +23 -8
  237. package/dist/components/Drawer.js +3 -3
  238. package/dist/components/Drawer.mjs +1 -1
  239. package/dist/components/Dropdown.d.mts +13 -13
  240. package/dist/components/Dropdown.d.ts +13 -13
  241. package/dist/components/Dropdown.js +4 -4
  242. package/dist/components/Dropdown.mjs +1 -1
  243. package/dist/components/DropdownItem.js +4 -4
  244. package/dist/components/DropdownItem.mjs +2 -2
  245. package/dist/components/Empty.d.mts +64 -0
  246. package/dist/components/Empty.d.ts +64 -0
  247. package/dist/components/Empty.js +17 -0
  248. package/dist/components/Empty.mjs +2 -0
  249. package/dist/components/FileManager.d.mts +161 -0
  250. package/dist/components/FileManager.d.ts +161 -0
  251. package/dist/components/FileManager.js +17 -0
  252. package/dist/components/FileManager.mjs +2 -0
  253. package/dist/components/FloatButton.d.mts +156 -0
  254. package/dist/components/FloatButton.d.ts +156 -0
  255. package/dist/components/FloatButton.js +21 -0
  256. package/dist/components/FloatButton.mjs +2 -0
  257. package/dist/components/Form.d.mts +45 -0
  258. package/dist/components/Form.d.ts +45 -0
  259. package/dist/components/Form.js +4 -4
  260. package/dist/components/Form.mjs +1 -1
  261. package/dist/components/FormItem.d.mts +18 -1
  262. package/dist/components/FormItem.d.ts +18 -1
  263. package/dist/components/FormItem.js +4 -4
  264. package/dist/components/FormItem.mjs +2 -2
  265. package/dist/components/FormWizard.d.mts +9 -0
  266. package/dist/components/FormWizard.d.ts +9 -0
  267. package/dist/components/FormWizard.js +5 -5
  268. package/dist/components/FormWizard.mjs +3 -3
  269. package/dist/components/FunnelChart.d.mts +212 -0
  270. package/dist/components/FunnelChart.d.ts +212 -0
  271. package/dist/components/FunnelChart.js +22 -0
  272. package/dist/components/FunnelChart.mjs +7 -0
  273. package/dist/components/GaugeChart.d.mts +173 -0
  274. package/dist/components/GaugeChart.d.ts +173 -0
  275. package/dist/components/GaugeChart.js +18 -0
  276. package/dist/components/GaugeChart.mjs +3 -0
  277. package/dist/components/HeatmapChart.d.mts +209 -0
  278. package/dist/components/HeatmapChart.d.ts +209 -0
  279. package/dist/components/HeatmapChart.js +20 -0
  280. package/dist/components/HeatmapChart.mjs +5 -0
  281. package/dist/components/Image.d.mts +2 -1
  282. package/dist/components/Image.d.ts +2 -1
  283. package/dist/components/Image.js +5 -5
  284. package/dist/components/Image.mjs +2 -2
  285. package/dist/components/ImageGroup.js +5 -5
  286. package/dist/components/ImageGroup.mjs +2 -2
  287. package/dist/components/ImagePreview.d.mts +6 -6
  288. package/dist/components/ImagePreview.d.ts +6 -6
  289. package/dist/components/ImagePreview.js +4 -4
  290. package/dist/components/ImagePreview.mjs +2 -2
  291. package/dist/components/ImageViewer.d.mts +126 -0
  292. package/dist/components/ImageViewer.d.ts +126 -0
  293. package/dist/components/ImageViewer.js +17 -0
  294. package/dist/components/ImageViewer.mjs +2 -0
  295. package/dist/components/InfiniteScroll.d.mts +105 -0
  296. package/dist/components/InfiniteScroll.d.ts +105 -0
  297. package/dist/components/InfiniteScroll.js +17 -0
  298. package/dist/components/InfiniteScroll.mjs +2 -0
  299. package/dist/components/Input.d.mts +32 -0
  300. package/dist/components/Input.d.ts +32 -0
  301. package/dist/components/Input.js +3 -3
  302. package/dist/components/Input.mjs +1 -1
  303. package/dist/components/InputGroup.d.mts +77 -0
  304. package/dist/components/InputGroup.d.ts +77 -0
  305. package/dist/components/InputGroup.js +25 -0
  306. package/dist/components/InputGroup.mjs +2 -0
  307. package/dist/components/Kanban.d.mts +180 -0
  308. package/dist/components/Kanban.d.ts +180 -0
  309. package/dist/components/Kanban.js +18 -0
  310. package/dist/components/Kanban.mjs +3 -0
  311. package/dist/components/LineChart.js +5 -5
  312. package/dist/components/LineChart.mjs +3 -3
  313. package/dist/components/List.d.mts +18 -2
  314. package/dist/components/List.d.ts +18 -2
  315. package/dist/components/List.js +3 -3
  316. package/dist/components/List.mjs +1 -1
  317. package/dist/components/Mentions.d.mts +88 -0
  318. package/dist/components/Mentions.d.ts +88 -0
  319. package/dist/components/Mentions.js +17 -0
  320. package/dist/components/Mentions.mjs +2 -0
  321. package/dist/components/Menu.d.mts +1 -1
  322. package/dist/components/Menu.d.ts +1 -1
  323. package/dist/components/MenuItem.d.mts +1 -1
  324. package/dist/components/MenuItem.d.ts +1 -1
  325. package/dist/components/Message.js +5 -5
  326. package/dist/components/Message.mjs +2 -2
  327. package/dist/components/Modal.d.mts +40 -8
  328. package/dist/components/Modal.d.ts +40 -8
  329. package/dist/components/Modal.js +4 -4
  330. package/dist/components/Modal.mjs +2 -2
  331. package/dist/components/Notification.js +5 -5
  332. package/dist/components/Notification.mjs +2 -2
  333. package/dist/components/NotificationCenter.d.mts +1 -1
  334. package/dist/components/NotificationCenter.d.ts +1 -1
  335. package/dist/components/NotificationCenter.js +8 -8
  336. package/dist/components/NotificationCenter.mjs +6 -6
  337. package/dist/components/PieChart.js +4 -4
  338. package/dist/components/PieChart.mjs +2 -2
  339. package/dist/components/Popconfirm.d.mts +14 -14
  340. package/dist/components/Popconfirm.d.ts +14 -14
  341. package/dist/components/Popconfirm.js +4 -4
  342. package/dist/components/Popconfirm.mjs +2 -2
  343. package/dist/components/Popover.d.mts +13 -13
  344. package/dist/components/Popover.d.ts +13 -13
  345. package/dist/components/Popover.js +4 -4
  346. package/dist/components/Popover.mjs +2 -2
  347. package/dist/components/PrintLayout.d.mts +97 -0
  348. package/dist/components/PrintLayout.d.ts +97 -0
  349. package/dist/components/PrintLayout.js +21 -0
  350. package/dist/components/PrintLayout.mjs +2 -0
  351. package/dist/components/QRCode.d.mts +75 -0
  352. package/dist/components/QRCode.d.ts +75 -0
  353. package/dist/components/QRCode.js +17 -0
  354. package/dist/components/QRCode.mjs +2 -0
  355. package/dist/components/RadarChart.js +4 -4
  356. package/dist/components/RadarChart.mjs +2 -2
  357. package/dist/components/Rate.d.mts +80 -0
  358. package/dist/components/Rate.d.ts +80 -0
  359. package/dist/components/Rate.js +17 -0
  360. package/dist/components/Rate.mjs +2 -0
  361. package/dist/components/Resizable.d.mts +138 -0
  362. package/dist/components/Resizable.d.ts +138 -0
  363. package/dist/components/Resizable.js +17 -0
  364. package/dist/components/Resizable.mjs +2 -0
  365. package/dist/components/Result.d.mts +64 -0
  366. package/dist/components/Result.d.ts +64 -0
  367. package/dist/components/Result.js +18 -0
  368. package/dist/components/Result.mjs +3 -0
  369. package/dist/components/RichTextEditor.d.mts +107 -0
  370. package/dist/components/RichTextEditor.d.ts +107 -0
  371. package/dist/components/RichTextEditor.js +17 -0
  372. package/dist/components/RichTextEditor.mjs +2 -0
  373. package/dist/components/ScatterChart.js +5 -5
  374. package/dist/components/ScatterChart.mjs +3 -3
  375. package/dist/components/Segmented.d.mts +61 -0
  376. package/dist/components/Segmented.d.ts +61 -0
  377. package/dist/components/Segmented.js +17 -0
  378. package/dist/components/Segmented.mjs +2 -0
  379. package/dist/components/Select.d.mts +47 -0
  380. package/dist/components/Select.d.ts +47 -0
  381. package/dist/components/Select.js +3 -3
  382. package/dist/components/Select.mjs +1 -1
  383. package/dist/components/Splitter.d.mts +99 -0
  384. package/dist/components/Splitter.d.ts +99 -0
  385. package/dist/components/Splitter.js +17 -0
  386. package/dist/components/Splitter.mjs +2 -0
  387. package/dist/components/Statistic.d.mts +76 -0
  388. package/dist/components/Statistic.d.ts +76 -0
  389. package/dist/components/Statistic.js +17 -0
  390. package/dist/components/Statistic.mjs +2 -0
  391. package/dist/components/Stepper.d.mts +79 -0
  392. package/dist/components/Stepper.d.ts +79 -0
  393. package/dist/components/Stepper.js +17 -0
  394. package/dist/components/Stepper.mjs +2 -0
  395. package/dist/components/StepsItem.d.mts +1 -1
  396. package/dist/components/StepsItem.d.ts +1 -1
  397. package/dist/components/SubMenu.d.mts +1 -1
  398. package/dist/components/SubMenu.d.ts +1 -1
  399. package/dist/components/SunburstChart.d.mts +203 -0
  400. package/dist/components/SunburstChart.d.ts +203 -0
  401. package/dist/components/SunburstChart.js +22 -0
  402. package/dist/components/SunburstChart.mjs +7 -0
  403. package/dist/components/TabPane.js +4 -4
  404. package/dist/components/TabPane.mjs +2 -2
  405. package/dist/components/Table.d.mts +127 -4
  406. package/dist/components/Table.d.ts +127 -4
  407. package/dist/components/Table.js +3 -3
  408. package/dist/components/Table.mjs +1 -1
  409. package/dist/components/Tabs.d.mts +20 -0
  410. package/dist/components/Tabs.d.ts +20 -0
  411. package/dist/components/Tabs.js +4 -4
  412. package/dist/components/Tabs.mjs +1 -1
  413. package/dist/components/TaskBoard.d.mts +1 -1
  414. package/dist/components/TaskBoard.d.ts +1 -1
  415. package/dist/components/TaskBoard.js +4 -4
  416. package/dist/components/TaskBoard.mjs +2 -2
  417. package/dist/components/TimePicker.js +4 -3
  418. package/dist/components/TimePicker.mjs +2 -1
  419. package/dist/components/Tooltip.d.mts +13 -13
  420. package/dist/components/Tooltip.d.ts +13 -13
  421. package/dist/components/Tooltip.js +4 -4
  422. package/dist/components/Tooltip.mjs +2 -2
  423. package/dist/components/Tour.d.mts +109 -0
  424. package/dist/components/Tour.d.ts +109 -0
  425. package/dist/components/Tour.js +18 -0
  426. package/dist/components/Tour.mjs +3 -0
  427. package/dist/components/Transfer.d.mts +97 -0
  428. package/dist/components/Transfer.d.ts +97 -0
  429. package/dist/components/Transfer.js +17 -0
  430. package/dist/components/Transfer.mjs +2 -0
  431. package/dist/components/Tree.d.mts +34 -3
  432. package/dist/components/Tree.d.ts +34 -3
  433. package/dist/components/Tree.js +3 -3
  434. package/dist/components/Tree.mjs +1 -1
  435. package/dist/components/TreeMapChart.d.mts +212 -0
  436. package/dist/components/TreeMapChart.d.ts +212 -0
  437. package/dist/components/TreeMapChart.js +22 -0
  438. package/dist/components/TreeMapChart.mjs +7 -0
  439. package/dist/components/TreeSelect.d.mts +106 -0
  440. package/dist/components/TreeSelect.d.ts +106 -0
  441. package/dist/components/TreeSelect.js +17 -0
  442. package/dist/components/TreeSelect.mjs +2 -0
  443. package/dist/components/Upload.js +4 -4
  444. package/dist/components/Upload.mjs +2 -2
  445. package/dist/components/VirtualList.d.mts +49 -0
  446. package/dist/components/VirtualList.d.ts +49 -0
  447. package/dist/components/VirtualList.js +17 -0
  448. package/dist/components/VirtualList.mjs +2 -0
  449. package/dist/components/VirtualTable.d.mts +157 -0
  450. package/dist/components/VirtualTable.d.ts +157 -0
  451. package/dist/components/VirtualTable.js +17 -0
  452. package/dist/components/VirtualTable.mjs +2 -0
  453. package/dist/components/Watermark.d.mts +144 -0
  454. package/dist/components/Watermark.d.ts +144 -0
  455. package/dist/components/Watermark.js +17 -0
  456. package/dist/components/Watermark.mjs +2 -0
  457. package/dist/index.d.mts +75 -2
  458. package/dist/index.d.ts +75 -2
  459. package/dist/index.js +448 -163
  460. package/dist/index.mjs +186 -61
  461. package/package.json +2 -2
  462. package/dist/chunk-VURU7TLN.mjs +0 -203
  463. package/dist/chunk-WC4B72TZ.js +0 -206
  464. package/dist/{chunk-GCKACSWD.js → chunk-2J54DRDA.js} +2 -2
  465. package/dist/{chunk-TGLAMZ4N.js → chunk-35VYCSVH.js} +2 -2
  466. package/dist/{chunk-OO5UMN5M.js → chunk-5NOZXKMU.js} +2 -2
  467. package/dist/{chunk-IIU6FINW.mjs → chunk-FK2XBMC3.mjs} +1 -1
  468. package/dist/{chunk-ZLYXAZUY.mjs → chunk-HFCVHAQ6.mjs} +2 -2
  469. package/dist/{chunk-P2ASDGNV.mjs → chunk-MYFQ3B2D.mjs} +2 -2
  470. package/dist/{chunk-DATFV22V.mjs → chunk-NVJRZYES.mjs} +1 -1
  471. package/dist/{chunk-3L36R3UN.js → chunk-THEYWGOT.js} +1 -1
  472. package/dist/{chunk-LDN2MZEU.mjs → chunk-TYFUO6PE.mjs} +2 -2
  473. package/dist/{chunk-BS45PHVI.mjs → chunk-UNR5RUET.mjs} +2 -2
  474. package/dist/{chunk-R7S7O3YU.js → chunk-VITTXNTD.js} +1 -1
  475. package/dist/{chunk-4NSRGKRB.js → chunk-W5A4E4C7.js} +2 -2
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, computed, ref, watch, h } from 'vue';
2
- import { getSpinnerSVG, getFixedColumnOffsets, filterData, sortData, paginateData, getRowKey, calculatePagination, getTableWrapperClasses, classNames, tableBaseClasses, tableLoadingOverlayClasses, getSimplePaginationContainerClasses, getSimplePaginationTotalClasses, getSimplePaginationControlsClasses, getSimplePaginationSelectClasses, getSimplePaginationButtonsWrapperClasses, getSimplePaginationButtonClasses, getSimplePaginationPageIndicatorClasses, getExpandCellClasses, getCheckboxCellClasses, getTableHeaderCellClasses, getTableHeaderClasses, tableEmptyStateClasses, expandIconButtonClasses, getExpandIconRotationClasses, normalizeSvgAttrs, icon16ViewBox, getTableCellClasses, getTableRowClasses, expandedRowContentClasses, getLoadingOverlaySpinnerClasses, icon24ViewBox, lockClosedIcon24PathD, lockOpenIcon24PathD, getSortIconClasses, sortAscIcon16PathD, sortDescIcon16PathD, sortBothIcon16PathD } from '@expcat/tigercat-core';
2
+ import { getSpinnerSVG, getFixedColumnOffsets, filterDataAdvanced, filterData, sortData, paginateData, getRowKey, calculatePagination, getFixedVirtualRange, groupDataByColumn, classNames, tableBaseClasses, getTableWrapperClasses, tableExportButtonClasses, tableLoadingOverlayClasses, getExpandIconCellClasses, getCheckboxCellClasses, getTableHeaderCellClasses, getTableHeaderClasses, tableEmptyStateClasses, tableGroupHeaderClasses, getGroupHeaderCellClasses, getTableCellClasses, tableSummaryRowClasses, getSimplePaginationContainerClasses, getSimplePaginationTotalClasses, getSimplePaginationControlsClasses, getSimplePaginationSelectClasses, getSimplePaginationButtonsWrapperClasses, getSimplePaginationButtonClasses, getSimplePaginationPageIndicatorClasses, exportTableToCsv, downloadCsv, getLoadingOverlaySpinnerClasses, normalizeSvgAttrs, icon24ViewBox, lockClosedIcon24PathD, lockOpenIcon24PathD, icon16ViewBox, getSortIconClasses, sortAscIcon16PathD, sortDescIcon16PathD, sortBothIcon16PathD, editableCellInputClasses, getEditableCellClasses, getTableRowClasses, getExpandedRowClasses, getExpandedRowContentClasses, getExpandIconClasses, expandChevronIcon16PathD } from '@expcat/tigercat-core';
3
3
 
4
4
  // src/components/Table.ts
5
5
  var spinnerSvg = getSpinnerSVG("spinner");
@@ -31,6 +31,20 @@ var LockIcon = (locked) => {
31
31
  [h("path", { d: locked ? lockClosedIcon24PathD : lockOpenIcon24PathD })]
32
32
  );
33
33
  };
34
+ var ExpandIcon = (expanded) => {
35
+ return h(
36
+ "svg",
37
+ {
38
+ class: getExpandIconClasses(expanded),
39
+ width: "16",
40
+ height: "16",
41
+ viewBox: icon16ViewBox,
42
+ fill: "currentColor",
43
+ "aria-hidden": "true"
44
+ },
45
+ [h("path", { d: expandChevronIcon16PathD })]
46
+ );
47
+ };
34
48
  var LoadingSpinner = () => {
35
49
  return h(
36
50
  "svg",
@@ -196,7 +210,20 @@ var Table = defineComponent({
196
210
  tableLayout: {
197
211
  type: String,
198
212
  default: "auto"
199
- }
213
+ },
214
+ // --- v0.6.0 props ---
215
+ virtual: { type: Boolean, default: false },
216
+ virtualHeight: { type: Number, default: 400 },
217
+ virtualItemHeight: { type: Number, default: 40 },
218
+ editable: { type: Boolean, default: false },
219
+ editableCells: { type: Object },
220
+ filterMode: { type: String, default: "basic" },
221
+ advancedFilterRules: { type: Array, default: () => [] },
222
+ columnDraggable: { type: Boolean, default: false },
223
+ summaryRow: { type: Object },
224
+ groupBy: { type: String },
225
+ exportable: { type: Boolean, default: false },
226
+ exportFilename: { type: String, default: "export" }
200
227
  },
201
228
  emits: [
202
229
  "change",
@@ -205,7 +232,10 @@ var Table = defineComponent({
205
232
  "sort-change",
206
233
  "filter-change",
207
234
  "page-change",
208
- "expanded-rows-change"
235
+ "expand-change",
236
+ "cell-change",
237
+ "column-order-change",
238
+ "export"
209
239
  ],
210
240
  setup(props, { emit, slots }) {
211
241
  const paginationConfig = computed(() => {
@@ -245,7 +275,6 @@ var Table = defineComponent({
245
275
  const expandedRowKeys = computed(() => {
246
276
  return props.expandable?.expandedRowKeys ?? uncontrolledExpandedRowKeys.value;
247
277
  });
248
- const expandedRowKeySet = computed(() => new Set(expandedRowKeys.value));
249
278
  watch(
250
279
  () => props.sort,
251
280
  (next) => {
@@ -286,6 +315,14 @@ var Table = defineComponent({
286
315
  }
287
316
  }
288
317
  );
318
+ watch(
319
+ () => props.expandable?.expandedRowKeys,
320
+ (next) => {
321
+ if (next !== void 0) {
322
+ uncontrolledExpandedRowKeys.value = next;
323
+ }
324
+ }
325
+ );
289
326
  const fixedOverrides = ref({});
290
327
  const displayColumns = computed(() => {
291
328
  return props.columns.map((column) => {
@@ -315,7 +352,11 @@ var Table = defineComponent({
315
352
  }
316
353
  const processedData = computed(() => {
317
354
  let data = props.dataSource;
318
- data = filterData(data, filterState.value);
355
+ if (props.filterMode === "advanced" && props.advancedFilterRules.length > 0) {
356
+ data = filterDataAdvanced(data, props.advancedFilterRules);
357
+ } else {
358
+ data = filterData(data, filterState.value);
359
+ }
319
360
  if (sortState.value.key && sortState.value.direction) {
320
361
  const column = columnByKey.value[sortState.value.key];
321
362
  data = sortData(data, sortState.value.key, sortState.value.direction, column?.sortFn);
@@ -334,6 +375,15 @@ var Table = defineComponent({
334
375
  const selectedRowKeySet = computed(() => {
335
376
  return new Set(selectedRowKeys.value);
336
377
  });
378
+ const expandedRowKeySet = computed(() => {
379
+ return new Set(expandedRowKeys.value);
380
+ });
381
+ const totalColumnCount = computed(() => {
382
+ let count = displayColumns.value.length;
383
+ if (props.rowSelection) count += 1;
384
+ if (props.expandable) count += 1;
385
+ return count;
386
+ });
337
387
  const paginationInfo = computed(() => {
338
388
  if (props.pagination === false) {
339
389
  return null;
@@ -417,6 +467,21 @@ var Table = defineComponent({
417
467
  }
418
468
  function handleRowClick(record, index) {
419
469
  emit("row-click", record, index);
470
+ if (props.expandable?.expandRowByClick) {
471
+ const key = getRowKey(record, props.rowKey, index);
472
+ const isExpandable = props.expandable?.rowExpandable ? props.expandable.rowExpandable(record) : true;
473
+ if (isExpandable) {
474
+ handleToggleExpand(key, record);
475
+ }
476
+ }
477
+ }
478
+ function handleToggleExpand(key, record) {
479
+ const isExpanded = expandedRowKeySet.value.has(key);
480
+ const newKeys = isExpanded ? expandedRowKeys.value.filter((k) => k !== key) : [...expandedRowKeys.value, key];
481
+ if (!isExpandControlled.value) {
482
+ uncontrolledExpandedRowKeys.value = newKeys;
483
+ }
484
+ emit("expand-change", newKeys, record, !isExpanded);
420
485
  }
421
486
  function handleSelectRow(key, checked) {
422
487
  let newKeys;
@@ -457,24 +522,100 @@ var Table = defineComponent({
457
522
  const someSelected = computed(() => {
458
523
  return selectedRowKeys.value.length > 0 && !allSelected.value;
459
524
  });
460
- function handleToggleExpand(key) {
461
- const isExp = expandedRowKeySet.value.has(key);
462
- const next = isExp ? expandedRowKeys.value.filter((k) => k !== key) : [...expandedRowKeys.value, key];
463
- if (!isExpandControlled.value) {
464
- uncontrolledExpandedRowKeys.value = next;
525
+ const editingCell = ref(null);
526
+ const editingValue = ref("");
527
+ function isCellEditable(columnKey, rowIndex) {
528
+ if (!props.editable) return false;
529
+ if (!props.editableCells) return true;
530
+ return !!props.editableCells.get(columnKey)?.has(rowIndex);
531
+ }
532
+ function startEditing(rowIndex, columnKey, currentValue) {
533
+ editingCell.value = { rowIndex, columnKey };
534
+ editingValue.value = String(currentValue ?? "");
535
+ }
536
+ function commitEdit() {
537
+ if (editingCell.value) {
538
+ emit(
539
+ "cell-change",
540
+ editingCell.value.rowIndex,
541
+ editingCell.value.columnKey,
542
+ editingValue.value
543
+ );
544
+ editingCell.value = null;
465
545
  }
466
- emit("expanded-rows-change", next);
467
546
  }
468
- const totalColumnCount = computed(() => {
469
- let count = displayColumns.value.length;
470
- if (props.rowSelection && props.rowSelection.showCheckbox !== false) count++;
471
- if (props.expandable) count++;
472
- return count;
547
+ function cancelEdit() {
548
+ editingCell.value = null;
549
+ }
550
+ function handleExport() {
551
+ const csv = exportTableToCsv(displayColumns.value, processedData.value);
552
+ downloadCsv(csv, props.exportFilename);
553
+ emit("export", csv);
554
+ }
555
+ const dragColumnKey = ref(null);
556
+ function handleDragStart(columnKey) {
557
+ dragColumnKey.value = columnKey;
558
+ }
559
+ function handleDrop(targetKey) {
560
+ if (!dragColumnKey.value || dragColumnKey.value === targetKey) return;
561
+ const cols = [...displayColumns.value];
562
+ const fromIdx = cols.findIndex((c) => c.key === dragColumnKey.value);
563
+ const toIdx = cols.findIndex((c) => c.key === targetKey);
564
+ if (fromIdx >= 0 && toIdx >= 0) {
565
+ const [moved] = cols.splice(fromIdx, 1);
566
+ cols.splice(toIdx, 0, moved);
567
+ emit("column-order-change", cols);
568
+ }
569
+ dragColumnKey.value = null;
570
+ }
571
+ const virtualScrollTop = ref(0);
572
+ computed(() => {
573
+ if (!props.virtual) return null;
574
+ return getFixedVirtualRange(
575
+ virtualScrollTop.value,
576
+ props.virtualHeight,
577
+ props.virtualItemHeight,
578
+ paginatedData.value.length,
579
+ 5
580
+ );
473
581
  });
582
+ const groupedData = computed(() => {
583
+ if (!props.groupBy) return null;
584
+ return groupDataByColumn(paginatedData.value, props.groupBy);
585
+ });
586
+ function renderSummaryRow() {
587
+ if (!props.summaryRow?.show) return null;
588
+ const emptyCells = [];
589
+ if (props.rowSelection) {
590
+ emptyCells.push(h("td", { class: getTableCellClasses(props.size, "left") }));
591
+ }
592
+ if (props.expandable) {
593
+ emptyCells.push(h("td", { class: getTableCellClasses(props.size, "left") }));
594
+ }
595
+ const dataCells = displayColumns.value.map((col) => {
596
+ const dataKey = col.dataKey || col.key;
597
+ const val = props.summaryRow.data[dataKey];
598
+ return h(
599
+ "td",
600
+ {
601
+ key: col.key,
602
+ class: getTableCellClasses(props.size, col.align || "left", col.className)
603
+ },
604
+ val != null ? String(val) : ""
605
+ );
606
+ });
607
+ return h("tfoot", [h("tr", { class: tableSummaryRowClasses }, [...emptyCells, ...dataCells])]);
608
+ }
474
609
  function renderTableHeader() {
475
610
  const headerCells = [];
476
- if (props.expandable && props.expandable.expandIconPosition !== "end") {
477
- headerCells.push(h("th", { class: getExpandCellClasses(props.size) }));
611
+ const expandAtStart = props.expandable && props.expandable.expandIconPosition !== "end";
612
+ const expandAtEnd = props.expandable && props.expandable.expandIconPosition === "end";
613
+ const expandHeaderTh = props.expandable ? h("th", {
614
+ class: getExpandIconCellClasses(props.size),
615
+ "aria-label": "Expand"
616
+ }) : null;
617
+ if (expandAtStart && expandHeaderTh) {
618
+ headerCells.push(expandHeaderTh);
478
619
  }
479
620
  if (props.rowSelection && props.rowSelection.showCheckbox !== false && props.rowSelection.type !== "radio") {
480
621
  headerCells.push(
@@ -562,6 +703,10 @@ var Table = defineComponent({
562
703
  (isFixedLeft || isFixedRight) && "bg-[var(--tiger-surface-muted,#f9fafb)]"
563
704
  ),
564
705
  style,
706
+ draggable: props.columnDraggable ? "true" : void 0,
707
+ onDragstart: props.columnDraggable ? () => handleDragStart(column.key) : void 0,
708
+ onDragover: props.columnDraggable ? (e) => e.preventDefault() : void 0,
709
+ onDrop: props.columnDraggable ? () => handleDrop(column.key) : void 0,
565
710
  onClick: column.sortable ? () => handleSort(column.key) : void 0
566
711
  },
567
712
  [
@@ -595,8 +740,8 @@ var Table = defineComponent({
595
740
  )
596
741
  );
597
742
  });
598
- if (props.expandable && props.expandable.expandIconPosition === "end") {
599
- headerCells.push(h("th", { class: getExpandCellClasses(props.size) }));
743
+ if (expandAtEnd && expandHeaderTh) {
744
+ headerCells.push(expandHeaderTh);
600
745
  }
601
746
  return h("thead", { class: getTableHeaderClasses(props.stickyHeader) }, [
602
747
  h("tr", headerCells)
@@ -629,44 +774,38 @@ var Table = defineComponent({
629
774
  ])
630
775
  ]);
631
776
  }
632
- const rows = paginatedData.value.flatMap((record, index) => {
633
- const key = paginatedRowKeys.value[index];
777
+ function renderDataRow(record, index) {
778
+ const key = getRowKey(record, props.rowKey, index);
634
779
  const isSelected = selectedRowKeySet.value.has(key);
635
780
  const isExpanded = expandedRowKeySet.value.has(key);
636
- const isExpandable = props.expandable ? props.expandable.rowExpandable?.(record) ?? true : false;
781
+ const isRowExpandable = props.expandable ? props.expandable.rowExpandable ? props.expandable.rowExpandable(record) : true : false;
637
782
  const rowClass = typeof props.rowClassName === "function" ? props.rowClassName(record, index) : props.rowClassName;
638
783
  const cells = [];
639
- if (props.expandable && props.expandable.expandIconPosition !== "end") {
640
- cells.push(
641
- h("td", { class: getExpandCellClasses(props.size) }, [
642
- isExpandable ? h(
643
- "button",
644
- {
645
- class: classNames(
646
- expandIconButtonClasses,
647
- getExpandIconRotationClasses(isExpanded)
648
- ),
649
- "aria-label": isExpanded ? "Collapse row" : "Expand row",
650
- onClick: (e) => {
651
- e.stopPropagation();
652
- handleToggleExpand(key);
653
- }
654
- },
655
- [
656
- h(
657
- "svg",
658
- normalizeSvgAttrs({
659
- xmlns: "http://www.w3.org/2000/svg",
660
- viewBox: icon16ViewBox,
661
- fill: "currentColor",
662
- class: "w-4 h-4"
663
- }),
664
- [h("path", { d: "M6 3l6 5-6 5V3z" })]
665
- )
666
- ]
667
- ) : null
668
- ])
669
- );
784
+ const expandAtStart = props.expandable && props.expandable.expandIconPosition !== "end";
785
+ const expandToggleCell = props.expandable ? h(
786
+ "td",
787
+ {
788
+ class: getExpandIconCellClasses(props.size)
789
+ },
790
+ isRowExpandable ? [
791
+ h(
792
+ "button",
793
+ {
794
+ type: "button",
795
+ class: "inline-flex items-center justify-center",
796
+ "aria-label": isExpanded ? "Collapse row" : "Expand row",
797
+ "aria-expanded": isExpanded,
798
+ onClick: (e) => {
799
+ e.stopPropagation();
800
+ handleToggleExpand(key, record);
801
+ }
802
+ },
803
+ [ExpandIcon(isExpanded)]
804
+ )
805
+ ] : []
806
+ ) : null;
807
+ if (expandAtStart && expandToggleCell) {
808
+ cells.push(expandToggleCell);
670
809
  }
671
810
  if (props.rowSelection && props.rowSelection.showCheckbox !== false) {
672
811
  const checkboxProps = props.rowSelection?.getCheckboxProps?.(record) || {};
@@ -712,6 +851,22 @@ var Table = defineComponent({
712
851
  stickyBgClass,
713
852
  props.hoverable && "group-hover:bg-[var(--tiger-surface-muted,#f9fafb)]"
714
853
  ) : void 0;
854
+ const isEditing = editingCell.value?.rowIndex === index && editingCell.value?.columnKey === column.key;
855
+ const isEditableCell = isCellEditable(column.key, index);
856
+ const cellContent = isEditing ? h("input", {
857
+ type: "text",
858
+ class: editableCellInputClasses,
859
+ value: editingValue.value,
860
+ autofocus: true,
861
+ onInput: (e) => {
862
+ editingValue.value = e.target.value;
863
+ },
864
+ onBlur: () => commitEdit(),
865
+ onKeydown: (e) => {
866
+ if (e.key === "Enter") commitEdit();
867
+ if (e.key === "Escape") cancelEdit();
868
+ }
869
+ }) : slots[`cell-${column.key}`]?.({ record, index }) ?? (column.render ? column.render(record, index) : cellValue);
715
870
  cells.push(
716
871
  h(
717
872
  "td",
@@ -719,49 +874,20 @@ var Table = defineComponent({
719
874
  key: column.key,
720
875
  class: classNames(
721
876
  getTableCellClasses(props.size, column.align || "left", column.className),
722
- stickyCellClass
877
+ stickyCellClass,
878
+ isEditableCell && !isEditing && getEditableCellClasses(false)
723
879
  ),
724
- style
880
+ style,
881
+ onDblclick: isEditableCell && !isEditing ? () => startEditing(index, column.key, cellValue) : void 0
725
882
  },
726
- [
727
- slots[`cell-${column.key}`]?.({ record, index }) ?? (column.render ? column.render(record, index) : cellValue)
728
- ]
883
+ [cellContent]
729
884
  )
730
885
  );
731
886
  });
732
- if (props.expandable && props.expandable.expandIconPosition === "end") {
733
- cells.push(
734
- h("td", { class: getExpandCellClasses(props.size) }, [
735
- isExpandable ? h(
736
- "button",
737
- {
738
- class: classNames(
739
- expandIconButtonClasses,
740
- getExpandIconRotationClasses(isExpanded)
741
- ),
742
- "aria-label": isExpanded ? "Collapse row" : "Expand row",
743
- onClick: (e) => {
744
- e.stopPropagation();
745
- handleToggleExpand(key);
746
- }
747
- },
748
- [
749
- h(
750
- "svg",
751
- normalizeSvgAttrs({
752
- xmlns: "http://www.w3.org/2000/svg",
753
- viewBox: icon16ViewBox,
754
- fill: "currentColor",
755
- class: "w-4 h-4"
756
- }),
757
- [h("path", { d: "M6 3l6 5-6 5V3z" })]
758
- )
759
- ]
760
- ) : null
761
- ])
762
- );
887
+ if (!expandAtStart && expandToggleCell) {
888
+ cells.push(expandToggleCell);
763
889
  }
764
- const row = h(
890
+ const rowNode = h(
765
891
  "tr",
766
892
  {
767
893
  key,
@@ -773,18 +899,57 @@ var Table = defineComponent({
773
899
  },
774
900
  cells
775
901
  );
776
- const result = [row];
777
- if (props.expandable && isExpanded && isExpandable) {
778
- result.push(
779
- h("tr", { key: `${key}-expanded`, class: expandedRowContentClasses }, [
780
- h("td", { colspan: totalColumnCount.value }, [
781
- props.expandable.expandedRowRender(record, index)
782
- ])
902
+ if (props.expandable && isExpanded && isRowExpandable) {
903
+ const expandedContent = slots["expanded-row"]?.({ record, index }) || (props.expandable.expandedRowRender ? props.expandable.expandedRowRender(record, index) : null);
904
+ const expandedRow = h(
905
+ "tr",
906
+ {
907
+ key: `${key}-expanded`,
908
+ class: getExpandedRowClasses()
909
+ },
910
+ [
911
+ h(
912
+ "td",
913
+ {
914
+ colspan: totalColumnCount.value,
915
+ class: getExpandedRowContentClasses(props.size)
916
+ },
917
+ [expandedContent]
918
+ )
919
+ ]
920
+ );
921
+ return [rowNode, expandedRow];
922
+ }
923
+ return rowNode;
924
+ }
925
+ if (groupedData.value) {
926
+ const groupRows = [];
927
+ for (const [groupKey, groupItems] of groupedData.value) {
928
+ groupRows.push(
929
+ h("tr", { key: `group-${groupKey}`, class: tableGroupHeaderClasses }, [
930
+ h(
931
+ "td",
932
+ {
933
+ colspan: totalColumnCount.value,
934
+ class: getGroupHeaderCellClasses(props.size)
935
+ },
936
+ `${props.groupBy}: ${groupKey} (${groupItems.length})`
937
+ )
783
938
  ])
784
939
  );
940
+ groupItems.forEach((record, i) => {
941
+ const globalIndex = paginatedData.value.indexOf(record);
942
+ const result = renderDataRow(record, globalIndex >= 0 ? globalIndex : i);
943
+ if (Array.isArray(result)) {
944
+ groupRows.push(...result);
945
+ } else {
946
+ groupRows.push(result);
947
+ }
948
+ });
785
949
  }
786
- return result;
787
- });
950
+ return h("tbody", groupRows);
951
+ }
952
+ const rows = paginatedData.value.flatMap((record, index) => renderDataRow(record, index));
788
953
  return h("tbody", rows);
789
954
  }
790
955
  function renderPagination() {
@@ -851,12 +1016,14 @@ var Table = defineComponent({
851
1016
  const wrapperStyle = props.maxHeight ? {
852
1017
  maxHeight: typeof props.maxHeight === "number" ? `${props.maxHeight}px` : props.maxHeight
853
1018
  } : void 0;
854
- return h(
1019
+ const tableChildren = [renderTableHeader(), renderTableBody(), renderSummaryRow()];
1020
+ const tableContent = props.virtual ? h(
855
1021
  "div",
856
1022
  {
857
- class: getTableWrapperClasses(props.bordered, props.maxHeight),
858
- style: wrapperStyle,
859
- "aria-busy": props.loading
1023
+ style: { height: `${props.virtualHeight}px`, overflow: "auto" },
1024
+ onScroll: (e) => {
1025
+ virtualScrollTop.value = e.target.scrollTop;
1026
+ }
860
1027
  },
861
1028
  [
862
1029
  h(
@@ -868,8 +1035,42 @@ var Table = defineComponent({
868
1035
  ),
869
1036
  style: fixedColumnsInfo.value.hasFixedColumns && fixedColumnsInfo.value.minTableWidth ? { minWidth: `${fixedColumnsInfo.value.minTableWidth}px` } : void 0
870
1037
  },
871
- [renderTableHeader(), renderTableBody()]
1038
+ tableChildren
1039
+ )
1040
+ ]
1041
+ ) : h(
1042
+ "table",
1043
+ {
1044
+ class: classNames(
1045
+ tableBaseClasses,
1046
+ props.tableLayout === "fixed" ? "table-fixed" : "table-auto"
872
1047
  ),
1048
+ style: fixedColumnsInfo.value.hasFixedColumns && fixedColumnsInfo.value.minTableWidth ? { minWidth: `${fixedColumnsInfo.value.minTableWidth}px` } : void 0
1049
+ },
1050
+ tableChildren
1051
+ );
1052
+ return h(
1053
+ "div",
1054
+ {
1055
+ class: getTableWrapperClasses(props.bordered, props.maxHeight),
1056
+ style: wrapperStyle,
1057
+ "aria-busy": props.loading
1058
+ },
1059
+ [
1060
+ // Export button
1061
+ props.exportable && h("div", { class: "flex justify-end p-2" }, [
1062
+ h(
1063
+ "button",
1064
+ {
1065
+ type: "button",
1066
+ class: tableExportButtonClasses,
1067
+ onClick: handleExport,
1068
+ "aria-label": "Export to CSV"
1069
+ },
1070
+ "Export CSV"
1071
+ )
1072
+ ]),
1073
+ tableContent,
873
1074
  // Loading overlay
874
1075
  props.loading && h(
875
1076
  "div",
@@ -1,29 +1,11 @@
1
+ import { createFilledIcon } from './chunk-2TNZ4JNT.mjs';
1
2
  import { defineComponent, ref, computed, watch, nextTick, onBeforeUnmount, h } from 'vue';
2
- import { parseDate, formatDate, getCalendarDays, getShortDayNames, getDatePickerLabels, classNames, datePickerBaseClasses, coerceClassValue, mergeStyleValues, getDatePickerInputClasses, getDatePickerIconButtonClasses, datePickerInputWrapperClasses, datePickerClearButtonClasses, datePickerCalendarClasses, datePickerCalendarHeaderClasses, datePickerNavButtonClasses, datePickerMonthYearClasses, formatMonthYear, datePickerCalendarGridClasses, datePickerDayNameClasses, normalizeDate, isSameDay, isToday, getDatePickerDayCellClasses, datePickerFooterClasses, datePickerFooterButtonClasses, icon20ViewBox, isDateInRange, CloseIconPath, CalendarIconPath, ChevronLeftIconPath, ChevronRightIconPath } from '@expcat/tigercat-core';
3
+ import { CalendarIconPath, CloseIconPath, ChevronLeftIconPath, ChevronRightIconPath, parseDate, formatDate, getCalendarDays, getShortDayNames, getDatePickerLabels, classNames, datePickerBaseClasses, coerceClassValue, mergeStyleValues, getDatePickerInputClasses, getDatePickerIconButtonClasses, datePickerInputWrapperClasses, datePickerClearButtonClasses, datePickerCalendarClasses, datePickerCalendarHeaderClasses, datePickerNavButtonClasses, datePickerMonthYearClasses, formatMonthYear, datePickerCalendarGridClasses, datePickerDayNameClasses, normalizeDate, isSameDay, isToday, getDatePickerDayCellClasses, datePickerFooterButtonClasses, datePickerFooterClasses, isDateInRange } from '@expcat/tigercat-core';
3
4
 
4
- // src/components/DatePicker.ts
5
- var createIcon = (path, className) => {
6
- return h(
7
- "svg",
8
- {
9
- class: className,
10
- xmlns: "http://www.w3.org/2000/svg",
11
- viewBox: icon20ViewBox,
12
- fill: "currentColor"
13
- },
14
- [
15
- h("path", {
16
- "fill-rule": "evenodd",
17
- d: path,
18
- "clip-rule": "evenodd"
19
- })
20
- ]
21
- );
22
- };
23
- var CalendarIcon = createIcon(CalendarIconPath, "w-5 h-5");
24
- var CloseIcon = createIcon(CloseIconPath, "w-4 h-4");
25
- var ChevronLeftIcon = createIcon(ChevronLeftIconPath, "w-5 h-5");
26
- var ChevronRightIcon = createIcon(ChevronRightIconPath, "w-5 h-5");
5
+ var CalendarIcon = createFilledIcon(CalendarIconPath, "w-5 h-5");
6
+ var CloseIcon = createFilledIcon(CloseIconPath, "w-4 h-4");
7
+ var ChevronLeftIcon = createFilledIcon(ChevronLeftIconPath, "w-5 h-5");
8
+ var ChevronRightIcon = createFilledIcon(ChevronRightIconPath, "w-5 h-5");
27
9
  var isDateLike = (value) => value === null || value instanceof Date || typeof value === "string";
28
10
  var isModelValue = (value) => {
29
11
  if (isDateLike(value)) return true;
@@ -160,6 +142,13 @@ var DatePicker = defineComponent({
160
142
  style: {
161
143
  type: Object,
162
144
  default: void 0
145
+ },
146
+ /**
147
+ * Shortcut presets for quick date selection
148
+ */
149
+ shortcuts: {
150
+ type: Array,
151
+ default: void 0
163
152
  }
164
153
  },
165
154
  emits: {
@@ -368,6 +357,11 @@ var DatePicker = defineComponent({
368
357
  function setToday() {
369
358
  selectDate(/* @__PURE__ */ new Date());
370
359
  }
360
+ function handleShortcut(shortcut) {
361
+ const val = typeof shortcut.value === "function" ? shortcut.value() : shortcut.value;
362
+ emitValue(val);
363
+ closeCalendar();
364
+ }
371
365
  function selectDate(date) {
372
366
  if (!date) return;
373
367
  const normalizedDate = normalizeDate(date);
@@ -624,6 +618,24 @@ var DatePicker = defineComponent({
624
618
  ]
625
619
  );
626
620
  })(),
621
+ // Shortcuts panel
622
+ props.shortcuts?.length ? h(
623
+ "div",
624
+ {
625
+ class: "flex flex-wrap gap-1 px-3 py-2 border-t border-[var(--tiger-border,#e5e7eb)]"
626
+ },
627
+ props.shortcuts.map(
628
+ (sc) => h(
629
+ "button",
630
+ {
631
+ type: "button",
632
+ class: datePickerFooterButtonClasses,
633
+ onClick: () => handleShortcut(sc)
634
+ },
635
+ sc.label
636
+ )
637
+ )
638
+ ) : null,
627
639
  // Footer (range mode only)
628
640
  isRangeMode.value ? h("div", { class: datePickerFooterClasses }, [
629
641
  h(