@expcat/tigercat-vue 0.4.3 → 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 (473) 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-HBZHIEDV.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-BS52UCMT.mjs → chunk-HTOCKV2N.mjs} +205 -17
  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-CWDBL5YC.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-NUFSJMVC.js → chunk-UG6XPJ2N.js} +204 -16
  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.js +4 -4
  212. package/dist/components/CommentThread.mjs +2 -2
  213. package/dist/components/ConfigProvider.d.mts +21 -1
  214. package/dist/components/ConfigProvider.d.ts +21 -1
  215. package/dist/components/ConfigProvider.js +5 -5
  216. package/dist/components/ConfigProvider.mjs +1 -1
  217. package/dist/components/CropUpload.js +5 -5
  218. package/dist/components/CropUpload.mjs +3 -3
  219. package/dist/components/DataTableWithToolbar.d.mts +1 -1
  220. package/dist/components/DataTableWithToolbar.d.ts +1 -1
  221. package/dist/components/DataTableWithToolbar.js +7 -7
  222. package/dist/components/DataTableWithToolbar.mjs +5 -5
  223. package/dist/components/DatePicker.d.mts +16 -1
  224. package/dist/components/DatePicker.d.ts +16 -1
  225. package/dist/components/DatePicker.js +4 -3
  226. package/dist/components/DatePicker.mjs +2 -1
  227. package/dist/components/Descriptions.d.mts +7 -9
  228. package/dist/components/Descriptions.d.ts +7 -9
  229. package/dist/components/Descriptions.js +3 -3
  230. package/dist/components/Descriptions.mjs +1 -1
  231. package/dist/components/DonutChart.js +5 -5
  232. package/dist/components/DonutChart.mjs +3 -3
  233. package/dist/components/Drawer.d.mts +23 -8
  234. package/dist/components/Drawer.d.ts +23 -8
  235. package/dist/components/Drawer.js +3 -3
  236. package/dist/components/Drawer.mjs +1 -1
  237. package/dist/components/Dropdown.d.mts +13 -13
  238. package/dist/components/Dropdown.d.ts +13 -13
  239. package/dist/components/Dropdown.js +4 -4
  240. package/dist/components/Dropdown.mjs +1 -1
  241. package/dist/components/DropdownItem.js +4 -4
  242. package/dist/components/DropdownItem.mjs +2 -2
  243. package/dist/components/Empty.d.mts +64 -0
  244. package/dist/components/Empty.d.ts +64 -0
  245. package/dist/components/Empty.js +17 -0
  246. package/dist/components/Empty.mjs +2 -0
  247. package/dist/components/FileManager.d.mts +161 -0
  248. package/dist/components/FileManager.d.ts +161 -0
  249. package/dist/components/FileManager.js +17 -0
  250. package/dist/components/FileManager.mjs +2 -0
  251. package/dist/components/FloatButton.d.mts +156 -0
  252. package/dist/components/FloatButton.d.ts +156 -0
  253. package/dist/components/FloatButton.js +21 -0
  254. package/dist/components/FloatButton.mjs +2 -0
  255. package/dist/components/Form.d.mts +45 -0
  256. package/dist/components/Form.d.ts +45 -0
  257. package/dist/components/Form.js +4 -4
  258. package/dist/components/Form.mjs +1 -1
  259. package/dist/components/FormItem.d.mts +18 -1
  260. package/dist/components/FormItem.d.ts +18 -1
  261. package/dist/components/FormItem.js +4 -4
  262. package/dist/components/FormItem.mjs +2 -2
  263. package/dist/components/FormWizard.d.mts +9 -0
  264. package/dist/components/FormWizard.d.ts +9 -0
  265. package/dist/components/FormWizard.js +5 -5
  266. package/dist/components/FormWizard.mjs +3 -3
  267. package/dist/components/FunnelChart.d.mts +212 -0
  268. package/dist/components/FunnelChart.d.ts +212 -0
  269. package/dist/components/FunnelChart.js +22 -0
  270. package/dist/components/FunnelChart.mjs +7 -0
  271. package/dist/components/GaugeChart.d.mts +173 -0
  272. package/dist/components/GaugeChart.d.ts +173 -0
  273. package/dist/components/GaugeChart.js +18 -0
  274. package/dist/components/GaugeChart.mjs +3 -0
  275. package/dist/components/HeatmapChart.d.mts +209 -0
  276. package/dist/components/HeatmapChart.d.ts +209 -0
  277. package/dist/components/HeatmapChart.js +20 -0
  278. package/dist/components/HeatmapChart.mjs +5 -0
  279. package/dist/components/Image.d.mts +2 -1
  280. package/dist/components/Image.d.ts +2 -1
  281. package/dist/components/Image.js +5 -5
  282. package/dist/components/Image.mjs +2 -2
  283. package/dist/components/ImageGroup.js +5 -5
  284. package/dist/components/ImageGroup.mjs +2 -2
  285. package/dist/components/ImagePreview.d.mts +6 -6
  286. package/dist/components/ImagePreview.d.ts +6 -6
  287. package/dist/components/ImagePreview.js +4 -4
  288. package/dist/components/ImagePreview.mjs +2 -2
  289. package/dist/components/ImageViewer.d.mts +126 -0
  290. package/dist/components/ImageViewer.d.ts +126 -0
  291. package/dist/components/ImageViewer.js +17 -0
  292. package/dist/components/ImageViewer.mjs +2 -0
  293. package/dist/components/InfiniteScroll.d.mts +105 -0
  294. package/dist/components/InfiniteScroll.d.ts +105 -0
  295. package/dist/components/InfiniteScroll.js +17 -0
  296. package/dist/components/InfiniteScroll.mjs +2 -0
  297. package/dist/components/Input.d.mts +32 -0
  298. package/dist/components/Input.d.ts +32 -0
  299. package/dist/components/Input.js +3 -3
  300. package/dist/components/Input.mjs +1 -1
  301. package/dist/components/InputGroup.d.mts +77 -0
  302. package/dist/components/InputGroup.d.ts +77 -0
  303. package/dist/components/InputGroup.js +25 -0
  304. package/dist/components/InputGroup.mjs +2 -0
  305. package/dist/components/Kanban.d.mts +180 -0
  306. package/dist/components/Kanban.d.ts +180 -0
  307. package/dist/components/Kanban.js +18 -0
  308. package/dist/components/Kanban.mjs +3 -0
  309. package/dist/components/LineChart.js +5 -5
  310. package/dist/components/LineChart.mjs +3 -3
  311. package/dist/components/List.d.mts +18 -2
  312. package/dist/components/List.d.ts +18 -2
  313. package/dist/components/List.js +3 -3
  314. package/dist/components/List.mjs +1 -1
  315. package/dist/components/Mentions.d.mts +88 -0
  316. package/dist/components/Mentions.d.ts +88 -0
  317. package/dist/components/Mentions.js +17 -0
  318. package/dist/components/Mentions.mjs +2 -0
  319. package/dist/components/Menu.d.mts +1 -1
  320. package/dist/components/Menu.d.ts +1 -1
  321. package/dist/components/MenuItem.d.mts +1 -1
  322. package/dist/components/MenuItem.d.ts +1 -1
  323. package/dist/components/Message.js +5 -5
  324. package/dist/components/Message.mjs +2 -2
  325. package/dist/components/Modal.d.mts +40 -8
  326. package/dist/components/Modal.d.ts +40 -8
  327. package/dist/components/Modal.js +4 -4
  328. package/dist/components/Modal.mjs +2 -2
  329. package/dist/components/Notification.js +5 -5
  330. package/dist/components/Notification.mjs +2 -2
  331. package/dist/components/NotificationCenter.d.mts +1 -1
  332. package/dist/components/NotificationCenter.d.ts +1 -1
  333. package/dist/components/NotificationCenter.js +8 -8
  334. package/dist/components/NotificationCenter.mjs +6 -6
  335. package/dist/components/PieChart.js +4 -4
  336. package/dist/components/PieChart.mjs +2 -2
  337. package/dist/components/Popconfirm.d.mts +14 -14
  338. package/dist/components/Popconfirm.d.ts +14 -14
  339. package/dist/components/Popconfirm.js +4 -4
  340. package/dist/components/Popconfirm.mjs +2 -2
  341. package/dist/components/Popover.d.mts +13 -13
  342. package/dist/components/Popover.d.ts +13 -13
  343. package/dist/components/Popover.js +4 -4
  344. package/dist/components/Popover.mjs +2 -2
  345. package/dist/components/PrintLayout.d.mts +97 -0
  346. package/dist/components/PrintLayout.d.ts +97 -0
  347. package/dist/components/PrintLayout.js +21 -0
  348. package/dist/components/PrintLayout.mjs +2 -0
  349. package/dist/components/QRCode.d.mts +75 -0
  350. package/dist/components/QRCode.d.ts +75 -0
  351. package/dist/components/QRCode.js +17 -0
  352. package/dist/components/QRCode.mjs +2 -0
  353. package/dist/components/RadarChart.js +4 -4
  354. package/dist/components/RadarChart.mjs +2 -2
  355. package/dist/components/Rate.d.mts +80 -0
  356. package/dist/components/Rate.d.ts +80 -0
  357. package/dist/components/Rate.js +17 -0
  358. package/dist/components/Rate.mjs +2 -0
  359. package/dist/components/Resizable.d.mts +138 -0
  360. package/dist/components/Resizable.d.ts +138 -0
  361. package/dist/components/Resizable.js +17 -0
  362. package/dist/components/Resizable.mjs +2 -0
  363. package/dist/components/Result.d.mts +64 -0
  364. package/dist/components/Result.d.ts +64 -0
  365. package/dist/components/Result.js +18 -0
  366. package/dist/components/Result.mjs +3 -0
  367. package/dist/components/RichTextEditor.d.mts +107 -0
  368. package/dist/components/RichTextEditor.d.ts +107 -0
  369. package/dist/components/RichTextEditor.js +17 -0
  370. package/dist/components/RichTextEditor.mjs +2 -0
  371. package/dist/components/ScatterChart.js +5 -5
  372. package/dist/components/ScatterChart.mjs +3 -3
  373. package/dist/components/Segmented.d.mts +61 -0
  374. package/dist/components/Segmented.d.ts +61 -0
  375. package/dist/components/Segmented.js +17 -0
  376. package/dist/components/Segmented.mjs +2 -0
  377. package/dist/components/Select.d.mts +47 -0
  378. package/dist/components/Select.d.ts +47 -0
  379. package/dist/components/Select.js +3 -3
  380. package/dist/components/Select.mjs +1 -1
  381. package/dist/components/Splitter.d.mts +99 -0
  382. package/dist/components/Splitter.d.ts +99 -0
  383. package/dist/components/Splitter.js +17 -0
  384. package/dist/components/Splitter.mjs +2 -0
  385. package/dist/components/Statistic.d.mts +76 -0
  386. package/dist/components/Statistic.d.ts +76 -0
  387. package/dist/components/Statistic.js +17 -0
  388. package/dist/components/Statistic.mjs +2 -0
  389. package/dist/components/Stepper.d.mts +79 -0
  390. package/dist/components/Stepper.d.ts +79 -0
  391. package/dist/components/Stepper.js +17 -0
  392. package/dist/components/Stepper.mjs +2 -0
  393. package/dist/components/StepsItem.d.mts +1 -1
  394. package/dist/components/StepsItem.d.ts +1 -1
  395. package/dist/components/SubMenu.d.mts +1 -1
  396. package/dist/components/SubMenu.d.ts +1 -1
  397. package/dist/components/SunburstChart.d.mts +203 -0
  398. package/dist/components/SunburstChart.d.ts +203 -0
  399. package/dist/components/SunburstChart.js +22 -0
  400. package/dist/components/SunburstChart.mjs +7 -0
  401. package/dist/components/TabPane.js +4 -4
  402. package/dist/components/TabPane.mjs +2 -2
  403. package/dist/components/Table.d.mts +126 -3
  404. package/dist/components/Table.d.ts +126 -3
  405. package/dist/components/Table.js +3 -3
  406. package/dist/components/Table.mjs +1 -1
  407. package/dist/components/Tabs.d.mts +20 -0
  408. package/dist/components/Tabs.d.ts +20 -0
  409. package/dist/components/Tabs.js +4 -4
  410. package/dist/components/Tabs.mjs +1 -1
  411. package/dist/components/TaskBoard.d.mts +1 -1
  412. package/dist/components/TaskBoard.d.ts +1 -1
  413. package/dist/components/TaskBoard.js +4 -4
  414. package/dist/components/TaskBoard.mjs +2 -2
  415. package/dist/components/TimePicker.js +4 -3
  416. package/dist/components/TimePicker.mjs +2 -1
  417. package/dist/components/Tooltip.d.mts +13 -13
  418. package/dist/components/Tooltip.d.ts +13 -13
  419. package/dist/components/Tooltip.js +4 -4
  420. package/dist/components/Tooltip.mjs +2 -2
  421. package/dist/components/Tour.d.mts +109 -0
  422. package/dist/components/Tour.d.ts +109 -0
  423. package/dist/components/Tour.js +18 -0
  424. package/dist/components/Tour.mjs +3 -0
  425. package/dist/components/Transfer.d.mts +97 -0
  426. package/dist/components/Transfer.d.ts +97 -0
  427. package/dist/components/Transfer.js +17 -0
  428. package/dist/components/Transfer.mjs +2 -0
  429. package/dist/components/Tree.d.mts +34 -3
  430. package/dist/components/Tree.d.ts +34 -3
  431. package/dist/components/Tree.js +3 -3
  432. package/dist/components/Tree.mjs +1 -1
  433. package/dist/components/TreeMapChart.d.mts +212 -0
  434. package/dist/components/TreeMapChart.d.ts +212 -0
  435. package/dist/components/TreeMapChart.js +22 -0
  436. package/dist/components/TreeMapChart.mjs +7 -0
  437. package/dist/components/TreeSelect.d.mts +106 -0
  438. package/dist/components/TreeSelect.d.ts +106 -0
  439. package/dist/components/TreeSelect.js +17 -0
  440. package/dist/components/TreeSelect.mjs +2 -0
  441. package/dist/components/Upload.js +4 -4
  442. package/dist/components/Upload.mjs +2 -2
  443. package/dist/components/VirtualList.d.mts +49 -0
  444. package/dist/components/VirtualList.d.ts +49 -0
  445. package/dist/components/VirtualList.js +17 -0
  446. package/dist/components/VirtualList.mjs +2 -0
  447. package/dist/components/VirtualTable.d.mts +157 -0
  448. package/dist/components/VirtualTable.d.ts +157 -0
  449. package/dist/components/VirtualTable.js +17 -0
  450. package/dist/components/VirtualTable.mjs +2 -0
  451. package/dist/components/Watermark.d.mts +144 -0
  452. package/dist/components/Watermark.d.ts +144 -0
  453. package/dist/components/Watermark.js +17 -0
  454. package/dist/components/Watermark.mjs +2 -0
  455. package/dist/index.d.mts +75 -2
  456. package/dist/index.d.ts +75 -2
  457. package/dist/index.js +448 -163
  458. package/dist/index.mjs +186 -61
  459. package/package.json +2 -2
  460. package/dist/chunk-VURU7TLN.mjs +0 -203
  461. package/dist/chunk-WC4B72TZ.js +0 -206
  462. package/dist/{chunk-GCKACSWD.js → chunk-2J54DRDA.js} +2 -2
  463. package/dist/{chunk-TGLAMZ4N.js → chunk-35VYCSVH.js} +2 -2
  464. package/dist/{chunk-OO5UMN5M.js → chunk-5NOZXKMU.js} +2 -2
  465. package/dist/{chunk-IIU6FINW.mjs → chunk-FK2XBMC3.mjs} +1 -1
  466. package/dist/{chunk-ZLYXAZUY.mjs → chunk-HFCVHAQ6.mjs} +2 -2
  467. package/dist/{chunk-P2ASDGNV.mjs → chunk-MYFQ3B2D.mjs} +2 -2
  468. package/dist/{chunk-DATFV22V.mjs → chunk-NVJRZYES.mjs} +1 -1
  469. package/dist/{chunk-3L36R3UN.js → chunk-THEYWGOT.js} +1 -1
  470. package/dist/{chunk-LDN2MZEU.mjs → chunk-TYFUO6PE.mjs} +2 -2
  471. package/dist/{chunk-BS45PHVI.mjs → chunk-UNR5RUET.mjs} +2 -2
  472. package/dist/{chunk-R7S7O3YU.js → chunk-VITTXNTD.js} +1 -1
  473. 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, getExpandIconCellClasses, getCheckboxCellClasses, getTableHeaderCellClasses, getTableHeaderClasses, tableEmptyStateClasses, getTableCellClasses, getTableRowClasses, getExpandedRowClasses, getExpandedRowContentClasses, getLoadingOverlaySpinnerClasses, normalizeSvgAttrs, icon24ViewBox, lockClosedIcon24PathD, lockOpenIcon24PathD, icon16ViewBox, getSortIconClasses, sortAscIcon16PathD, sortDescIcon16PathD, sortBothIcon16PathD, getExpandIconClasses, expandChevronIcon16PathD } 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");
@@ -210,7 +210,20 @@ var Table = defineComponent({
210
210
  tableLayout: {
211
211
  type: String,
212
212
  default: "auto"
213
- }
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" }
214
227
  },
215
228
  emits: [
216
229
  "change",
@@ -219,7 +232,10 @@ var Table = defineComponent({
219
232
  "sort-change",
220
233
  "filter-change",
221
234
  "page-change",
222
- "expand-change"
235
+ "expand-change",
236
+ "cell-change",
237
+ "column-order-change",
238
+ "export"
223
239
  ],
224
240
  setup(props, { emit, slots }) {
225
241
  const paginationConfig = computed(() => {
@@ -336,7 +352,11 @@ var Table = defineComponent({
336
352
  }
337
353
  const processedData = computed(() => {
338
354
  let data = props.dataSource;
339
- 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
+ }
340
360
  if (sortState.value.key && sortState.value.direction) {
341
361
  const column = columnByKey.value[sortState.value.key];
342
362
  data = sortData(data, sortState.value.key, sortState.value.direction, column?.sortFn);
@@ -502,6 +522,90 @@ var Table = defineComponent({
502
522
  const someSelected = computed(() => {
503
523
  return selectedRowKeys.value.length > 0 && !allSelected.value;
504
524
  });
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;
545
+ }
546
+ }
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
+ );
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
+ }
505
609
  function renderTableHeader() {
506
610
  const headerCells = [];
507
611
  const expandAtStart = props.expandable && props.expandable.expandIconPosition !== "end";
@@ -599,6 +703,10 @@ var Table = defineComponent({
599
703
  (isFixedLeft || isFixedRight) && "bg-[var(--tiger-surface-muted,#f9fafb)]"
600
704
  ),
601
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,
602
710
  onClick: column.sortable ? () => handleSort(column.key) : void 0
603
711
  },
604
712
  [
@@ -666,8 +774,8 @@ var Table = defineComponent({
666
774
  ])
667
775
  ]);
668
776
  }
669
- const rows = paginatedData.value.flatMap((record, index) => {
670
- const key = paginatedRowKeys.value[index];
777
+ function renderDataRow(record, index) {
778
+ const key = getRowKey(record, props.rowKey, index);
671
779
  const isSelected = selectedRowKeySet.value.has(key);
672
780
  const isExpanded = expandedRowKeySet.value.has(key);
673
781
  const isRowExpandable = props.expandable ? props.expandable.rowExpandable ? props.expandable.rowExpandable(record) : true : false;
@@ -743,6 +851,22 @@ var Table = defineComponent({
743
851
  stickyBgClass,
744
852
  props.hoverable && "group-hover:bg-[var(--tiger-surface-muted,#f9fafb)]"
745
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);
746
870
  cells.push(
747
871
  h(
748
872
  "td",
@@ -750,13 +874,13 @@ var Table = defineComponent({
750
874
  key: column.key,
751
875
  class: classNames(
752
876
  getTableCellClasses(props.size, column.align || "left", column.className),
753
- stickyCellClass
877
+ stickyCellClass,
878
+ isEditableCell && !isEditing && getEditableCellClasses(false)
754
879
  ),
755
- style
880
+ style,
881
+ onDblclick: isEditableCell && !isEditing ? () => startEditing(index, column.key, cellValue) : void 0
756
882
  },
757
- [
758
- slots[`cell-${column.key}`]?.({ record, index }) ?? (column.render ? column.render(record, index) : cellValue)
759
- ]
883
+ [cellContent]
760
884
  )
761
885
  );
762
886
  });
@@ -797,7 +921,35 @@ var Table = defineComponent({
797
921
  return [rowNode, expandedRow];
798
922
  }
799
923
  return rowNode;
800
- });
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
+ )
938
+ ])
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
+ });
949
+ }
950
+ return h("tbody", groupRows);
951
+ }
952
+ const rows = paginatedData.value.flatMap((record, index) => renderDataRow(record, index));
801
953
  return h("tbody", rows);
802
954
  }
803
955
  function renderPagination() {
@@ -864,12 +1016,14 @@ var Table = defineComponent({
864
1016
  const wrapperStyle = props.maxHeight ? {
865
1017
  maxHeight: typeof props.maxHeight === "number" ? `${props.maxHeight}px` : props.maxHeight
866
1018
  } : void 0;
867
- return h(
1019
+ const tableChildren = [renderTableHeader(), renderTableBody(), renderSummaryRow()];
1020
+ const tableContent = props.virtual ? h(
868
1021
  "div",
869
1022
  {
870
- class: getTableWrapperClasses(props.bordered, props.maxHeight),
871
- style: wrapperStyle,
872
- "aria-busy": props.loading
1023
+ style: { height: `${props.virtualHeight}px`, overflow: "auto" },
1024
+ onScroll: (e) => {
1025
+ virtualScrollTop.value = e.target.scrollTop;
1026
+ }
873
1027
  },
874
1028
  [
875
1029
  h(
@@ -881,8 +1035,42 @@ var Table = defineComponent({
881
1035
  ),
882
1036
  style: fixedColumnsInfo.value.hasFixedColumns && fixedColumnsInfo.value.minTableWidth ? { minWidth: `${fixedColumnsInfo.value.minTableWidth}px` } : void 0
883
1037
  },
884
- [renderTableHeader(), renderTableBody()]
1038
+ tableChildren
1039
+ )
1040
+ ]
1041
+ ) : h(
1042
+ "table",
1043
+ {
1044
+ class: classNames(
1045
+ tableBaseClasses,
1046
+ props.tableLayout === "fixed" ? "table-fixed" : "table-auto"
885
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,
886
1074
  // Loading overlay
887
1075
  props.loading && h(
888
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(
@@ -0,0 +1,149 @@
1
+ import { defineComponent, ref, computed, watch, h } from 'vue';
2
+ import { countLines, generateLineNumbers, classNames, getCodeEditorContainerClasses, coerceClassValue, getLineNumberClasses, codeEditorHighlightClasses, codeEditorTextareaClasses, tokenizeLine, getTokenClasses, handleTabKey } from '@expcat/tigercat-core';
3
+
4
+ // src/components/CodeEditor.ts
5
+ var CodeEditor = defineComponent({
6
+ name: "TigerCodeEditor",
7
+ props: {
8
+ value: { type: String, default: void 0 },
9
+ defaultValue: { type: String, default: "" },
10
+ language: {
11
+ type: String,
12
+ default: "plain"
13
+ },
14
+ theme: {
15
+ type: String,
16
+ default: "light"
17
+ },
18
+ readOnly: { type: Boolean, default: false },
19
+ lineNumbers: { type: Boolean, default: true },
20
+ highlightActiveLine: { type: Boolean, default: true },
21
+ tabSize: { type: Number, default: 2 },
22
+ placeholder: { type: String, default: void 0 },
23
+ wordWrap: { type: Boolean, default: false },
24
+ minLines: { type: Number, default: 3 },
25
+ maxLines: { type: Number, default: 0 },
26
+ disabled: { type: Boolean, default: false },
27
+ className: { type: String, default: void 0 },
28
+ style: {
29
+ type: Object,
30
+ default: void 0
31
+ }
32
+ },
33
+ emits: ["update:value", "change"],
34
+ setup(props, { emit, attrs }) {
35
+ const internalValue = ref(props.defaultValue || "");
36
+ const textareaRef = ref(null);
37
+ const code = computed(() => props.value !== void 0 ? props.value : internalValue.value);
38
+ watch(
39
+ () => props.value,
40
+ (v) => {
41
+ if (v !== void 0) internalValue.value = v;
42
+ }
43
+ );
44
+ const lines = computed(() => code.value.split("\n"));
45
+ const lineCount = computed(() => countLines(code.value));
46
+ const lineNums = computed(() => generateLineNumbers(lineCount.value));
47
+ const containerClasses = computed(
48
+ () => classNames(
49
+ getCodeEditorContainerClasses(props.theme, props.disabled, props.className),
50
+ coerceClassValue(attrs.class)
51
+ )
52
+ );
53
+ const containerStyle = computed(() => {
54
+ const lineHeight = 1.625;
55
+ const s = {};
56
+ if (props.minLines > 0) {
57
+ s.minHeight = `${props.minLines * lineHeight + 1.5}rem`;
58
+ }
59
+ if (props.maxLines > 0) {
60
+ s.maxHeight = `${props.maxLines * lineHeight + 1.5}rem`;
61
+ }
62
+ return s;
63
+ });
64
+ const onInput = (e) => {
65
+ const val = e.target.value;
66
+ internalValue.value = val;
67
+ emit("update:value", val);
68
+ emit("change", val);
69
+ };
70
+ const onKeyDown = (e) => {
71
+ if (e.key === "Tab") {
72
+ e.preventDefault();
73
+ const ta = textareaRef.value;
74
+ if (!ta) return;
75
+ const result = handleTabKey(ta.value, ta.selectionStart, ta.selectionEnd, props.tabSize);
76
+ internalValue.value = result.value;
77
+ emit("update:value", result.value);
78
+ emit("change", result.value);
79
+ requestAnimationFrame(() => {
80
+ ta.selectionStart = result.selectionStart;
81
+ ta.selectionEnd = result.selectionStart;
82
+ });
83
+ }
84
+ };
85
+ const renderHighlightedLine = (line, lineIndex) => {
86
+ const tokens = tokenizeLine(line, props.language);
87
+ const spans = tokens.map((token, ti) => {
88
+ const cls = getTokenClasses(token.type, props.theme);
89
+ return cls ? h("span", { class: cls, key: ti }, token.value) : token.value;
90
+ });
91
+ return h("div", { key: lineIndex, class: "min-h-[1.625rem]" }, [
92
+ ...spans,
93
+ line === "" ? "\n" : null
94
+ ]);
95
+ };
96
+ return () => {
97
+ const wrapClass = props.wordWrap ? "whitespace-pre-wrap break-all" : "";
98
+ const gutterNode = props.lineNumbers ? h(
99
+ "div",
100
+ {
101
+ class: getLineNumberClasses(props.theme),
102
+ "aria-hidden": "true"
103
+ },
104
+ lineNums.value.map((n) => h("div", { key: n, class: "min-h-[1.625rem]" }, String(n)))
105
+ ) : null;
106
+ const highlightNode = h(
107
+ "div",
108
+ { class: classNames(codeEditorHighlightClasses, wrapClass), "aria-hidden": "true" },
109
+ lines.value.map((line, i) => renderHighlightedLine(line, i))
110
+ );
111
+ const textareaNode = h("textarea", {
112
+ ref: textareaRef,
113
+ class: classNames(codeEditorTextareaClasses, wrapClass),
114
+ value: code.value,
115
+ onInput,
116
+ onKeydown: onKeyDown,
117
+ readonly: props.readOnly || props.disabled,
118
+ disabled: props.disabled,
119
+ placeholder: props.placeholder,
120
+ spellcheck: false,
121
+ autocapitalize: "off",
122
+ autocomplete: "off",
123
+ autocorrect: "off",
124
+ "data-gramm": "false",
125
+ "aria-label": "Code editor",
126
+ role: "textbox",
127
+ "aria-multiline": "true"
128
+ });
129
+ return h(
130
+ "div",
131
+ {
132
+ class: containerClasses.value,
133
+ style: { ...containerStyle.value, ...props.style },
134
+ "data-language": props.language,
135
+ "data-theme": props.theme
136
+ },
137
+ [
138
+ h("div", { class: "flex h-full" }, [
139
+ gutterNode,
140
+ h("div", { class: "relative flex-1 overflow-auto" }, [highlightNode, textareaNode])
141
+ ])
142
+ ]
143
+ );
144
+ };
145
+ }
146
+ });
147
+ var CodeEditor_default = CodeEditor;
148
+
149
+ export { CodeEditor, CodeEditor_default };