@expcat/tigercat-vue 1.4.0 → 1.5.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 (407) hide show
  1. package/dist/{chunk-EIH6ABOR.js → chunk-2FYVPPTD.js} +44 -15
  2. package/dist/{chunk-KY6AJRGT.mjs → chunk-2HRJGOAV.mjs} +4 -4
  3. package/dist/{chunk-MKBIVETW.mjs → chunk-2OI6GWOT.mjs} +22 -2
  4. package/dist/{chunk-NCT5FXQB.js → chunk-2RCBEBBR.js} +6 -3
  5. package/dist/{chunk-6K4UE5MK.mjs → chunk-2YPPXZ4I.mjs} +59 -5
  6. package/dist/{chunk-HCANI7ZG.mjs → chunk-36ZFDXKU.mjs} +10 -1
  7. package/dist/{chunk-JKEF7NB3.js → chunk-37LDNXLO.js} +4 -4
  8. package/dist/{chunk-DEJKRMMU.mjs → chunk-4IZUJJUO.mjs} +32 -9
  9. package/dist/{chunk-L6ZD3ZCO.mjs → chunk-4QCJUILG.mjs} +1 -1
  10. package/dist/{chunk-NWS45JQP.mjs → chunk-4RK5BDGR.mjs} +58 -10
  11. package/dist/{chunk-RKZN3URO.js → chunk-55BSMMUN.js} +27 -6
  12. package/dist/{chunk-NHBN6VAY.mjs → chunk-57VPT3MN.mjs} +2 -2
  13. package/dist/{chunk-7VSNXYFM.mjs → chunk-5CHHWMES.mjs} +27 -9
  14. package/dist/chunk-5FTM7R3P.js +142 -0
  15. package/dist/{chunk-CGZPOI6H.js → chunk-5PVDNJA5.js} +12 -2
  16. package/dist/{chunk-UMQUWX7U.mjs → chunk-64EZRIJL.mjs} +26 -4
  17. package/dist/{chunk-FSGD24HV.mjs → chunk-6CS3EEQU.mjs} +9 -1
  18. package/dist/{chunk-BYX756N5.mjs → chunk-6FV2OMB7.mjs} +22 -7
  19. package/dist/{chunk-VN4SKDFO.mjs → chunk-6G5FEZLT.mjs} +2 -12
  20. package/dist/{chunk-PQMZ3YN3.js → chunk-75TB3YIJ.js} +16 -2
  21. package/dist/{chunk-OTNVA2UT.js → chunk-7J7JIIHX.js} +28 -10
  22. package/dist/{chunk-M2XA7VU5.js → chunk-7KYGVEHF.js} +4 -4
  23. package/dist/{chunk-BPAN6T7H.mjs → chunk-7LCUVR63.mjs} +40 -5
  24. package/dist/{chunk-Z6MMA7ZE.js → chunk-7RMBEWN2.js} +2 -2
  25. package/dist/{chunk-SYTYUC67.js → chunk-AF7JZUTA.js} +2 -2
  26. package/dist/{chunk-3UQECWNL.mjs → chunk-ALFEFDVG.mjs} +103 -12
  27. package/dist/{chunk-E6RGBYI3.mjs → chunk-ALIUAGJO.mjs} +7 -0
  28. package/dist/{chunk-WUEP3PFN.js → chunk-ANQRW442.js} +31 -8
  29. package/dist/{chunk-X5CFXNVK.js → chunk-APBWQGXW.js} +14 -10
  30. package/dist/{chunk-IZF4VHJ2.mjs → chunk-ASOJXXU6.mjs} +2 -2
  31. package/dist/{chunk-6FXYRDYH.js → chunk-AWXSJNNP.js} +22 -2
  32. package/dist/{chunk-ZOUJFFG4.js → chunk-AYQER5UD.js} +17 -14
  33. package/dist/{chunk-GRP54POG.mjs → chunk-BJV62I73.mjs} +5 -5
  34. package/dist/{chunk-PGOTPYRG.js → chunk-BNUR72YP.js} +1 -0
  35. package/dist/{chunk-W5DLRGQL.js → chunk-BPJOIFND.js} +28 -19
  36. package/dist/{chunk-OKR3GRG5.mjs → chunk-BRGQXIKA.mjs} +58 -10
  37. package/dist/{chunk-QYSFZA5V.js → chunk-BV6XWFRF.js} +14 -7
  38. package/dist/{chunk-ODQOYMUQ.js → chunk-BYNTPLGC.js} +8 -1
  39. package/dist/{chunk-SVWZOIBI.js → chunk-BZ56UKUK.js} +4 -4
  40. package/dist/{chunk-6NJXI66G.mjs → chunk-CF4GX6BD.mjs} +36 -4
  41. package/dist/{chunk-RLPSCEBP.js → chunk-CFJST2X2.js} +98 -26
  42. package/dist/{chunk-NUABW6IB.mjs → chunk-CGZFRSI5.mjs} +1 -1
  43. package/dist/{chunk-DSNPEWYP.mjs → chunk-CIDINFA2.mjs} +31 -3
  44. package/dist/{chunk-WZRC7PJH.mjs → chunk-CVFXUYH2.mjs} +38 -5
  45. package/dist/{chunk-QKP5C26H.mjs → chunk-CW5TEG7N.mjs} +2 -2
  46. package/dist/{chunk-OUBJHKWX.js → chunk-D43IFX7J.js} +1 -4
  47. package/dist/{chunk-TXQEHRQB.js → chunk-D6Y3KVJF.js} +5 -1
  48. package/dist/{chunk-MOLGN476.mjs → chunk-DMQLA35L.mjs} +11 -1
  49. package/dist/{chunk-2WJADO6O.mjs → chunk-DZFM7H3M.mjs} +21 -7
  50. package/dist/{chunk-62ZSNASF.mjs → chunk-E7NE5HEC.mjs} +140 -7
  51. package/dist/{chunk-AP42636I.js → chunk-EG7XX6U4.js} +2 -2
  52. package/dist/{chunk-RHLP2ED5.mjs → chunk-EVIZXEB2.mjs} +15 -8
  53. package/dist/{chunk-SGRUGYQ6.mjs → chunk-EYR27UIE.mjs} +13 -10
  54. package/dist/{chunk-PPEAQDD5.mjs → chunk-FAQL7HFW.mjs} +8 -0
  55. package/dist/{chunk-PTAWLJCV.mjs → chunk-FT2HWF7P.mjs} +1 -1
  56. package/dist/{chunk-OK4PVFQG.mjs → chunk-G2LB4QCL.mjs} +18 -15
  57. package/dist/{chunk-WGRNO4PB.js → chunk-GBYNY77G.js} +3 -3
  58. package/dist/{chunk-NTZ7LQTY.js → chunk-GJ5HJOQP.js} +61 -32
  59. package/dist/{chunk-QZQYKC2N.js → chunk-GV3LRZSR.js} +35 -9
  60. package/dist/{chunk-W6ZFHHD3.mjs → chunk-GZWZP5AL.mjs} +9 -2
  61. package/dist/{chunk-BYNMOQBB.js → chunk-H2XEJHGR.js} +23 -9
  62. package/dist/{chunk-FMH4CLSA.mjs → chunk-H6FZBFRT.mjs} +27 -6
  63. package/dist/{chunk-FUI6WG2F.js → chunk-H7GAWNOW.js} +35 -5
  64. package/dist/{chunk-HMYVPBWI.js → chunk-HI45DI7S.js} +2 -2
  65. package/dist/{chunk-HKRMZODL.mjs → chunk-HIXWZVE5.mjs} +14 -10
  66. package/dist/{chunk-VVS2CQS4.mjs → chunk-HLPSHCXO.mjs} +8 -3
  67. package/dist/{chunk-PENI3H3I.mjs → chunk-HS4YQGZQ.mjs} +45 -11
  68. package/dist/{chunk-6Y4NWO4I.mjs → chunk-HWL36OCD.mjs} +7 -4
  69. package/dist/{chunk-UANF7XE5.mjs → chunk-IJL7YYT7.mjs} +6 -4
  70. package/dist/{chunk-G3SWTL27.js → chunk-IUPNDTUF.js} +1 -1
  71. package/dist/{chunk-HZBE2RY4.js → chunk-J77GQQEC.js} +31 -3
  72. package/dist/{chunk-TUSWQVI2.mjs → chunk-JCGWN7WV.mjs} +1 -0
  73. package/dist/{chunk-K5ZZZ4TL.mjs → chunk-JGW7R7AZ.mjs} +2 -2
  74. package/dist/{chunk-WYVA3JBH.js → chunk-JICPYKCT.js} +103 -12
  75. package/dist/{chunk-2MLORMN2.js → chunk-JMRR4KDB.js} +2 -2
  76. package/dist/{chunk-KDA4XDXT.js → chunk-K2NJI5MW.js} +2 -2
  77. package/dist/{chunk-ACYYQJ6M.js → chunk-KLOUOXNA.js} +8 -3
  78. package/dist/{chunk-G6ULKE6H.mjs → chunk-KRWKO2JQ.mjs} +17 -3
  79. package/dist/{chunk-PJ66WE62.js → chunk-KTNT2JHB.js} +143 -10
  80. package/dist/{chunk-KH2CF6JU.mjs → chunk-LGDJDBE3.mjs} +90 -35
  81. package/dist/{chunk-IKEZDGRO.mjs → chunk-LHZ5MRFQ.mjs} +2 -2
  82. package/dist/{chunk-5F6P5Y4K.js → chunk-LKRT27JW.js} +45 -11
  83. package/dist/{chunk-FP7SBCPO.js → chunk-LODEICSN.js} +4 -4
  84. package/dist/{chunk-DOBGVCZJ.mjs → chunk-LOX2KCML.mjs} +7 -6
  85. package/dist/{chunk-XZMU7B54.js → chunk-LPHDX3UU.js} +51 -2
  86. package/dist/{chunk-PXRF4IJO.mjs → chunk-LSWTZHBV.mjs} +23 -3
  87. package/dist/{chunk-M2ECZQ2D.mjs → chunk-MF7BKYGN.mjs} +27 -18
  88. package/dist/chunk-MNVMGJUF.js +341 -0
  89. package/dist/{chunk-LYF6AAQ7.js → chunk-MPVL53GP.js} +59 -5
  90. package/dist/{chunk-BHNBLQ5S.mjs → chunk-N2QGYEOQ.mjs} +17 -19
  91. package/dist/{chunk-SGXLMKMO.js → chunk-NQYE64IF.js} +15 -8
  92. package/dist/{chunk-TAU447CL.js → chunk-OOMZBTHW.js} +25 -3
  93. package/dist/{chunk-DUMPRNDR.js → chunk-OQBWITHA.js} +17 -19
  94. package/dist/{chunk-Z6HBM73W.js → chunk-OQOJI5Q7.js} +2 -2
  95. package/dist/{chunk-RKL4Y7CW.mjs → chunk-OSPHI5TV.mjs} +110 -3
  96. package/dist/{chunk-QUIRQ7OA.js → chunk-OVXDO6KJ.js} +9 -5
  97. package/dist/{chunk-DMV26JNR.mjs → chunk-PD2PKYJE.mjs} +58 -6
  98. package/dist/{chunk-LG55VN6B.js → chunk-PFZFPN7M.js} +7 -7
  99. package/dist/{chunk-SJIW7SNA.js → chunk-PH6ERFC7.js} +22 -7
  100. package/dist/{chunk-Y3BQSELH.mjs → chunk-PJX2DHO5.mjs} +2 -2
  101. package/dist/{chunk-HVVPFQW2.mjs → chunk-PLUABMUD.mjs} +16 -2
  102. package/dist/{chunk-RFFPMC22.mjs → chunk-PMN2MQ26.mjs} +1 -1
  103. package/dist/{chunk-QAMXVTNN.mjs → chunk-QH3YF5B6.mjs} +95 -23
  104. package/dist/{chunk-FGM7KB2Q.js → chunk-QKJATAJP.js} +113 -6
  105. package/dist/{chunk-UAD2XROX.mjs → chunk-RD2NFAB6.mjs} +2 -2
  106. package/dist/{chunk-DOJPPVAN.mjs → chunk-RTZUIWCN.mjs} +5 -1
  107. package/dist/{chunk-NDS2DLUS.mjs → chunk-S4Z77VIB.mjs} +7 -3
  108. package/dist/{chunk-5VSKQLK3.js → chunk-SIVMTPDY.js} +61 -13
  109. package/dist/{chunk-YSUT2GRP.mjs → chunk-SMCOBLF6.mjs} +50 -1
  110. package/dist/{chunk-GY75BFAV.js → chunk-SOSHYDIX.js} +9 -9
  111. package/dist/{chunk-KN64NDJS.js → chunk-TCB3WFYM.js} +12 -11
  112. package/dist/{chunk-A6T2IHFC.mjs → chunk-TM73IWEY.mjs} +51 -11
  113. package/dist/{chunk-24CBIC75.js → chunk-TNKULOHK.js} +8 -0
  114. package/dist/{chunk-BZBVSB43.js → chunk-TOD67L2E.js} +40 -5
  115. package/dist/{chunk-RPWKAGN5.mjs → chunk-TRN5PL5D.mjs} +2 -2
  116. package/dist/{chunk-LG6KGO5D.js → chunk-TXMPLBWW.js} +57 -5
  117. package/dist/{chunk-NOZ65AMO.js → chunk-TYYJPEWG.js} +15 -2
  118. package/dist/{chunk-NEVDRG6C.js → chunk-U5TSCS34.js} +5 -15
  119. package/dist/{chunk-SLYUQ67P.js → chunk-UKR3IJF3.js} +3 -1
  120. package/dist/{chunk-M5PGWW25.mjs → chunk-UTGFGMZT.mjs} +33 -3
  121. package/dist/chunk-V5ANPH5R.mjs +341 -0
  122. package/dist/{chunk-AZ6SASY5.mjs → chunk-V5ZEPAWV.mjs} +44 -15
  123. package/dist/{chunk-2R5HISQA.mjs → chunk-VCCK4CDT.mjs} +4 -2
  124. package/dist/{chunk-RUXIQ5EP.js → chunk-VDKUKZS2.js} +110 -55
  125. package/dist/{chunk-ZQD2MCNX.mjs → chunk-VJJ7RAC6.mjs} +34 -8
  126. package/dist/{chunk-2S5CNU36.js → chunk-VQXDF6CB.js} +23 -3
  127. package/dist/{chunk-BPAZBRCR.js → chunk-VUGFSHU2.js} +17 -3
  128. package/dist/{chunk-NHNJUBYZ.js → chunk-VXRFE72I.js} +38 -5
  129. package/dist/{chunk-OOS3QQFK.mjs → chunk-VYBRLIKF.mjs} +64 -35
  130. package/dist/{chunk-UWZSTI3E.js → chunk-W34IV4EC.js} +9 -1
  131. package/dist/{chunk-E363N2BJ.mjs → chunk-WBT3WSRE.mjs} +1 -4
  132. package/dist/{chunk-X6FG4RPF.js → chunk-WF7KVMBY.js} +24 -11
  133. package/dist/{chunk-WFISP42H.mjs → chunk-WLHOWOAY.mjs} +15 -2
  134. package/dist/{chunk-J6YCXMVY.mjs → chunk-WSUCJHJX.mjs} +1 -1
  135. package/dist/{chunk-KY3O3FWK.mjs → chunk-WWB7VKKH.mjs} +24 -11
  136. package/dist/{chunk-GQAVLQEZ.mjs → chunk-X43QLJ5E.mjs} +1 -1
  137. package/dist/{chunk-ULUH6UNV.js → chunk-X73BZFBH.js} +4 -4
  138. package/dist/{chunk-KA7DILCI.js → chunk-X7PQRYUS.js} +61 -13
  139. package/dist/chunk-XFNHZ7SV.mjs +142 -0
  140. package/dist/{chunk-EJZBG5RT.js → chunk-XMCYKHT4.js} +10 -1
  141. package/dist/{chunk-DZXZ3YEL.js → chunk-XSJKSUED.js} +5 -3
  142. package/dist/{chunk-ZCT56WB7.mjs → chunk-XZYFVOOS.mjs} +1 -1
  143. package/dist/{chunk-T5N2UHVP.js → chunk-YI25YL5W.js} +2 -2
  144. package/dist/{chunk-TAAHD4R7.js → chunk-YLMQZR6F.js} +36 -4
  145. package/dist/{chunk-WNYWWGNM.js → chunk-YMUYN4IR.js} +51 -11
  146. package/dist/{chunk-44N7LE3Q.js → chunk-YTE45DNC.js} +13 -10
  147. package/dist/{chunk-VAXO5NEM.js → chunk-YVSINGGE.js} +2 -2
  148. package/dist/{chunk-VPHM5WEL.mjs → chunk-YZATP4VF.mjs} +1 -1
  149. package/dist/components/ActivityFeed.js +6 -6
  150. package/dist/components/ActivityFeed.mjs +5 -5
  151. package/dist/components/Anchor.js +2 -2
  152. package/dist/components/Anchor.mjs +1 -1
  153. package/dist/components/AnchorLink.js +3 -3
  154. package/dist/components/AnchorLink.mjs +1 -1
  155. package/dist/components/AreaChart.js +4 -4
  156. package/dist/components/AreaChart.mjs +3 -3
  157. package/dist/components/AutoComplete.d.mts +2 -2
  158. package/dist/components/AutoComplete.d.ts +2 -2
  159. package/dist/components/AutoComplete.js +2 -2
  160. package/dist/components/AutoComplete.mjs +1 -1
  161. package/dist/components/Avatar.js +3 -3
  162. package/dist/components/Avatar.mjs +2 -2
  163. package/dist/components/AvatarGroup.js +2 -2
  164. package/dist/components/AvatarGroup.mjs +1 -1
  165. package/dist/components/BackTop.d.mts +2 -2
  166. package/dist/components/BackTop.d.ts +2 -2
  167. package/dist/components/BackTop.js +2 -2
  168. package/dist/components/BackTop.mjs +1 -1
  169. package/dist/components/Badge.d.mts +10 -1
  170. package/dist/components/Badge.d.ts +10 -1
  171. package/dist/components/Badge.js +3 -2
  172. package/dist/components/Badge.mjs +2 -1
  173. package/dist/components/BarChart.js +4 -4
  174. package/dist/components/BarChart.mjs +3 -3
  175. package/dist/components/Breadcrumb.js +2 -2
  176. package/dist/components/Breadcrumb.mjs +1 -1
  177. package/dist/components/BreadcrumbItem.js +3 -3
  178. package/dist/components/BreadcrumbItem.mjs +1 -1
  179. package/dist/components/Calendar.d.mts +16 -6
  180. package/dist/components/Calendar.d.ts +16 -6
  181. package/dist/components/Calendar.js +3 -2
  182. package/dist/components/Calendar.mjs +2 -1
  183. package/dist/components/Cascader.js +2 -2
  184. package/dist/components/Cascader.mjs +1 -1
  185. package/dist/components/ChartLegend.js +2 -2
  186. package/dist/components/ChartLegend.mjs +1 -1
  187. package/dist/components/ChartTooltip.js +2 -2
  188. package/dist/components/ChartTooltip.mjs +1 -1
  189. package/dist/components/ChatWindow.d.mts +7 -7
  190. package/dist/components/ChatWindow.d.ts +7 -7
  191. package/dist/components/ChatWindow.js +10 -8
  192. package/dist/components/ChatWindow.mjs +9 -7
  193. package/dist/components/CodeEditor.js +2 -2
  194. package/dist/components/CodeEditor.mjs +1 -1
  195. package/dist/components/ColorSwatch.d.mts +1 -1
  196. package/dist/components/ColorSwatch.d.ts +1 -1
  197. package/dist/components/CommentThread.d.mts +5 -1
  198. package/dist/components/CommentThread.d.ts +5 -1
  199. package/dist/components/CommentThread.js +8 -6
  200. package/dist/components/CommentThread.mjs +7 -5
  201. package/dist/components/Countdown.d.mts +1 -1
  202. package/dist/components/Countdown.d.ts +1 -1
  203. package/dist/components/CronEditor.d.mts +1 -1
  204. package/dist/components/CronEditor.d.ts +1 -1
  205. package/dist/components/CropUpload.d.mts +13 -3
  206. package/dist/components/CropUpload.d.ts +13 -3
  207. package/dist/components/CropUpload.js +3 -3
  208. package/dist/components/CropUpload.mjs +2 -2
  209. package/dist/components/DataTableWithToolbar.d.mts +223 -1
  210. package/dist/components/DataTableWithToolbar.d.ts +223 -1
  211. package/dist/components/DataTableWithToolbar.js +7 -6
  212. package/dist/components/DataTableWithToolbar.mjs +6 -5
  213. package/dist/components/DatePicker.d.mts +6 -1
  214. package/dist/components/DatePicker.d.ts +6 -1
  215. package/dist/components/DatePicker.js +3 -2
  216. package/dist/components/DatePicker.mjs +2 -1
  217. package/dist/components/DonutChart.d.mts +9 -0
  218. package/dist/components/DonutChart.d.ts +9 -0
  219. package/dist/components/DonutChart.js +5 -5
  220. package/dist/components/DonutChart.mjs +4 -4
  221. package/dist/components/Dropdown.d.mts +1 -1
  222. package/dist/components/Dropdown.d.ts +1 -1
  223. package/dist/components/Dropdown.js +2 -2
  224. package/dist/components/Dropdown.mjs +1 -1
  225. package/dist/components/DropdownItem.js +3 -3
  226. package/dist/components/DropdownItem.mjs +2 -2
  227. package/dist/components/DropdownMenu.js +3 -3
  228. package/dist/components/DropdownMenu.mjs +1 -1
  229. package/dist/components/Empty.d.mts +11 -1
  230. package/dist/components/Empty.d.ts +11 -1
  231. package/dist/components/Empty.js +3 -2
  232. package/dist/components/Empty.mjs +2 -1
  233. package/dist/components/FileManager.d.mts +19 -19
  234. package/dist/components/FileManager.d.ts +19 -19
  235. package/dist/components/FileManager.js +2 -2
  236. package/dist/components/FileManager.mjs +1 -1
  237. package/dist/components/FloatButton.d.mts +3 -3
  238. package/dist/components/FloatButton.d.ts +3 -3
  239. package/dist/components/FloatButton.js +2 -2
  240. package/dist/components/FloatButton.mjs +1 -1
  241. package/dist/components/Form.js +2 -2
  242. package/dist/components/Form.mjs +1 -1
  243. package/dist/components/FormItem.js +3 -3
  244. package/dist/components/FormItem.mjs +2 -2
  245. package/dist/components/FormWizard.js +3 -3
  246. package/dist/components/FormWizard.mjs +2 -2
  247. package/dist/components/FunnelChart.js +4 -4
  248. package/dist/components/FunnelChart.mjs +3 -3
  249. package/dist/components/Gantt.d.mts +1 -1
  250. package/dist/components/Gantt.d.ts +1 -1
  251. package/dist/components/GaugeChart.d.mts +15 -0
  252. package/dist/components/GaugeChart.d.ts +15 -0
  253. package/dist/components/GaugeChart.js +3 -2
  254. package/dist/components/GaugeChart.mjs +2 -1
  255. package/dist/components/HeatmapChart.js +3 -3
  256. package/dist/components/HeatmapChart.mjs +2 -2
  257. package/dist/components/Icon.d.mts +1 -1
  258. package/dist/components/Icon.d.ts +1 -1
  259. package/dist/components/Image.js +4 -3
  260. package/dist/components/Image.mjs +3 -2
  261. package/dist/components/ImageAnnotation.d.mts +11 -1
  262. package/dist/components/ImageAnnotation.d.ts +11 -1
  263. package/dist/components/ImageAnnotation.js +3 -2
  264. package/dist/components/ImageAnnotation.mjs +2 -1
  265. package/dist/components/ImageCropper.d.mts +11 -0
  266. package/dist/components/ImageCropper.d.ts +11 -0
  267. package/dist/components/ImageCropper.js +3 -2
  268. package/dist/components/ImageCropper.mjs +2 -1
  269. package/dist/components/ImageGroup.js +4 -3
  270. package/dist/components/ImageGroup.mjs +3 -2
  271. package/dist/components/ImagePreview.d.mts +11 -0
  272. package/dist/components/ImagePreview.d.ts +11 -0
  273. package/dist/components/ImagePreview.js +3 -2
  274. package/dist/components/ImagePreview.mjs +2 -1
  275. package/dist/components/ImageViewer.d.mts +1 -0
  276. package/dist/components/ImageViewer.d.ts +1 -0
  277. package/dist/components/ImageViewer.js +2 -2
  278. package/dist/components/ImageViewer.mjs +1 -1
  279. package/dist/components/InfiniteScroll.js +2 -2
  280. package/dist/components/InfiniteScroll.mjs +1 -1
  281. package/dist/components/Input.d.mts +1 -1
  282. package/dist/components/Input.d.ts +1 -1
  283. package/dist/components/Input.js +3 -2
  284. package/dist/components/Input.mjs +2 -1
  285. package/dist/components/InputNumber.d.mts +21 -1
  286. package/dist/components/InputNumber.d.ts +21 -1
  287. package/dist/components/InputNumber.js +3 -2
  288. package/dist/components/InputNumber.mjs +2 -1
  289. package/dist/components/Kanban.d.mts +21 -1
  290. package/dist/components/Kanban.d.ts +21 -1
  291. package/dist/components/Kanban.js +3 -3
  292. package/dist/components/Kanban.mjs +2 -2
  293. package/dist/components/LineChart.js +4 -4
  294. package/dist/components/LineChart.mjs +3 -3
  295. package/dist/components/List.js +3 -3
  296. package/dist/components/List.mjs +2 -2
  297. package/dist/components/MarkdownEditor.js +2 -2
  298. package/dist/components/MarkdownEditor.mjs +1 -1
  299. package/dist/components/Message.d.mts +11 -1
  300. package/dist/components/Message.d.ts +11 -1
  301. package/dist/components/Message.js +2 -2
  302. package/dist/components/Message.mjs +1 -1
  303. package/dist/components/NotificationCenter.js +5 -5
  304. package/dist/components/NotificationCenter.mjs +4 -4
  305. package/dist/components/NumberKeyboard.d.mts +2 -2
  306. package/dist/components/NumberKeyboard.d.ts +2 -2
  307. package/dist/components/OrgChart.d.mts +1 -1
  308. package/dist/components/OrgChart.d.ts +1 -1
  309. package/dist/components/PieChart.d.mts +9 -0
  310. package/dist/components/PieChart.d.ts +9 -0
  311. package/dist/components/PieChart.js +4 -4
  312. package/dist/components/PieChart.mjs +3 -3
  313. package/dist/components/Progress.d.mts +1 -1
  314. package/dist/components/Progress.d.ts +1 -1
  315. package/dist/components/QRCode.d.mts +1 -1
  316. package/dist/components/QRCode.d.ts +1 -1
  317. package/dist/components/QRCode.js +2 -2
  318. package/dist/components/QRCode.mjs +1 -1
  319. package/dist/components/RadarChart.js +4 -4
  320. package/dist/components/RadarChart.mjs +3 -3
  321. package/dist/components/Rate.js +2 -2
  322. package/dist/components/Rate.mjs +1 -1
  323. package/dist/components/Resizable.js +2 -2
  324. package/dist/components/Resizable.mjs +1 -1
  325. package/dist/components/Result.d.mts +1 -1
  326. package/dist/components/Result.d.ts +1 -1
  327. package/dist/components/Result.js +2 -2
  328. package/dist/components/Result.mjs +1 -1
  329. package/dist/components/RichTextEditor.js +2 -2
  330. package/dist/components/RichTextEditor.mjs +1 -1
  331. package/dist/components/ScatterChart.js +4 -4
  332. package/dist/components/ScatterChart.mjs +3 -3
  333. package/dist/components/ScrollSpy.d.mts +1 -1
  334. package/dist/components/ScrollSpy.d.ts +1 -1
  335. package/dist/components/Segmented.js +2 -2
  336. package/dist/components/Segmented.mjs +1 -1
  337. package/dist/components/Select.js +2 -2
  338. package/dist/components/Select.mjs +1 -1
  339. package/dist/components/Signature.d.mts +1 -1
  340. package/dist/components/Signature.d.ts +1 -1
  341. package/dist/components/Slider.js +2 -2
  342. package/dist/components/Slider.mjs +1 -1
  343. package/dist/components/Steps.d.mts +2 -2
  344. package/dist/components/Steps.d.ts +2 -2
  345. package/dist/components/Steps.js +2 -2
  346. package/dist/components/Steps.mjs +1 -1
  347. package/dist/components/StepsItem.js +3 -3
  348. package/dist/components/StepsItem.mjs +1 -1
  349. package/dist/components/SunburstChart.js +4 -4
  350. package/dist/components/SunburstChart.mjs +3 -3
  351. package/dist/components/TabPane.js +3 -3
  352. package/dist/components/TabPane.mjs +1 -1
  353. package/dist/components/Table.js +4 -4
  354. package/dist/components/Table.mjs +3 -3
  355. package/dist/components/Tabs.d.mts +2 -0
  356. package/dist/components/Tabs.d.ts +2 -0
  357. package/dist/components/Tabs.js +2 -2
  358. package/dist/components/Tabs.mjs +1 -1
  359. package/dist/components/Tag.d.mts +13 -3
  360. package/dist/components/Tag.d.ts +13 -3
  361. package/dist/components/Tag.js +3 -2
  362. package/dist/components/Tag.mjs +2 -1
  363. package/dist/components/TaskBoard.d.mts +21 -1
  364. package/dist/components/TaskBoard.d.ts +21 -1
  365. package/dist/components/TaskBoard.js +2 -2
  366. package/dist/components/TaskBoard.mjs +1 -1
  367. package/dist/components/Textarea.js +3 -2
  368. package/dist/components/Textarea.mjs +2 -1
  369. package/dist/components/TimePicker.js +2 -2
  370. package/dist/components/TimePicker.mjs +1 -1
  371. package/dist/components/Timeline.js +2 -2
  372. package/dist/components/Timeline.mjs +1 -1
  373. package/dist/components/Tour.d.mts +1 -3
  374. package/dist/components/Tour.d.ts +1 -3
  375. package/dist/components/Tour.js +3 -2
  376. package/dist/components/Tour.mjs +2 -1
  377. package/dist/components/Transfer.d.mts +19 -2
  378. package/dist/components/Transfer.d.ts +19 -2
  379. package/dist/components/Transfer.js +2 -2
  380. package/dist/components/Transfer.mjs +1 -1
  381. package/dist/components/Tree.d.mts +2 -2
  382. package/dist/components/Tree.d.ts +2 -2
  383. package/dist/components/Tree.js +3 -3
  384. package/dist/components/Tree.mjs +2 -2
  385. package/dist/components/TreeMapChart.js +4 -4
  386. package/dist/components/TreeMapChart.mjs +3 -3
  387. package/dist/components/Upload.d.mts +1 -1
  388. package/dist/components/Upload.d.ts +1 -1
  389. package/dist/components/Upload.js +2 -2
  390. package/dist/components/Upload.mjs +1 -1
  391. package/dist/components/VirtualList.d.mts +11 -0
  392. package/dist/components/VirtualList.d.ts +11 -0
  393. package/dist/components/VirtualList.js +2 -2
  394. package/dist/components/VirtualList.mjs +1 -1
  395. package/dist/components/VirtualTable.d.mts +30 -0
  396. package/dist/components/VirtualTable.d.ts +30 -0
  397. package/dist/components/VirtualTable.js +2 -2
  398. package/dist/components/VirtualTable.mjs +1 -1
  399. package/dist/index.d.mts +134 -134
  400. package/dist/index.d.ts +134 -134
  401. package/dist/index.js +80 -80
  402. package/dist/index.mjs +79 -79
  403. package/package.json +6 -6
  404. package/dist/chunk-DJCTERZH.js +0 -92
  405. package/dist/chunk-LD7ZJCTO.mjs +0 -167
  406. package/dist/chunk-XAQID5IO.js +0 -167
  407. package/dist/chunk-ZYCOHZCM.mjs +0 -92
@@ -78,7 +78,7 @@ var AutoComplete = _vue.defineComponent.call(void 0, {
78
78
  },
79
79
  notFoundText: {
80
80
  type: String,
81
- default: "No matches found"
81
+ default: void 0
82
82
  },
83
83
  filterOption: {
84
84
  type: [Boolean, Function],
@@ -132,6 +132,25 @@ var AutoComplete = _vue.defineComponent.call(void 0, {
132
132
  isOpen.value = false;
133
133
  activeIndex.value = -1;
134
134
  }
135
+ function constrainToOption() {
136
+ if (props.allowFreeInput) return;
137
+ const match = props.options.find((o) => !o.disabled && o.label === inputValue.value);
138
+ if (match) {
139
+ if (String(match.value) !== String(props.modelValue)) {
140
+ emit("update:modelValue", match.value);
141
+ emit("select", match.value, match);
142
+ emit("change", match.value);
143
+ }
144
+ return;
145
+ }
146
+ const current = props.options.find((o) => String(o.value) === String(props.modelValue));
147
+ const revertLabel = current ? current.label : "";
148
+ if (revertLabel !== inputValue.value) {
149
+ inputValue.value = revertLabel;
150
+ emit("update:modelValue", current ? current.value : "");
151
+ emit("change", current ? current.value : "");
152
+ }
153
+ }
135
154
  function handleInput(e) {
136
155
  const val = e.target.value;
137
156
  inputValue.value = val;
@@ -179,6 +198,9 @@ var AutoComplete = _vue.defineComponent.call(void 0, {
179
198
  e.preventDefault();
180
199
  if (activeIndex.value >= 0 && activeIndex.value < options.length) {
181
200
  handleSelect(options[activeIndex.value]);
201
+ } else {
202
+ constrainToOption();
203
+ closeDropdown();
182
204
  }
183
205
  break;
184
206
  case "Escape":
@@ -228,7 +250,8 @@ var AutoComplete = _vue.defineComponent.call(void 0, {
228
250
  autocomplete: "off",
229
251
  onInput: handleInput,
230
252
  onFocus: openDropdown,
231
- onKeydown: handleKeyDown
253
+ onKeydown: handleKeyDown,
254
+ onBlur: constrainToOption
232
255
  }),
233
256
  // Clear button
234
257
  showClearButton.value ? _vue.h.call(void 0,
@@ -262,6 +285,7 @@ var AutoComplete = _vue.defineComponent.call(void 0, {
262
285
  !!option.disabled,
263
286
  props.size
264
287
  ),
288
+ onMousedown: (e) => e.preventDefault(),
265
289
  onClick: () => handleSelect(option),
266
290
  onMouseenter: () => {
267
291
  activeIndex.value = index;
@@ -275,7 +299,11 @@ var AutoComplete = _vue.defineComponent.call(void 0, {
275
299
  {
276
300
  class: _tigercatcore.classNames.call(void 0, _tigercatcore.autoCompleteDropdownClasses, _tigercatcore.autoCompleteEmptyStateClasses)
277
301
  },
278
- props.notFoundText
302
+ _tigercatcore.resolveLocaleText.call(void 0,
303
+ "No matches found",
304
+ props.notFoundText,
305
+ _optionalChain([mergedLocale, 'access', _7 => _7.value, 'optionalAccess', _8 => _8.common, 'optionalAccess', _9 => _9.emptyText])
306
+ )
279
307
  ) : null
280
308
  ]
281
309
  );
@@ -71,6 +71,7 @@ var InfiniteScroll = defineComponent({
71
71
  threshold: props.threshold,
72
72
  direction: props.direction,
73
73
  root: containerRef.value,
74
+ inverse: props.inverse,
74
75
  onLoadMore: handleLoadMore
75
76
  });
76
77
  if (teardown) {
@@ -3,13 +3,13 @@ import {
3
3
  } from "./chunk-R2HO74FE.mjs";
4
4
  import {
5
5
  ChartLegend
6
- } from "./chunk-VVS2CQS4.mjs";
6
+ } from "./chunk-HLPSHCXO.mjs";
7
7
  import {
8
8
  ChartSeries
9
9
  } from "./chunk-2ZUEXCVJ.mjs";
10
10
  import {
11
11
  ChartTooltip
12
- } from "./chunk-OK4PVFQG.mjs";
12
+ } from "./chunk-G2LB4QCL.mjs";
13
13
  import {
14
14
  ChartCanvas
15
15
  } from "./chunk-W5RZPTFD.mjs";
@@ -20,10 +20,15 @@ var _vue = require('vue');
20
20
 
21
21
 
22
22
 
23
+
24
+
25
+
26
+
23
27
 
24
28
 
25
29
 
26
30
  var _tigercatcore = require('@expcat/tigercat-core');
31
+ var DEFAULT_VIRTUAL_COLUMN_WIDTH = 150;
27
32
  var VirtualTable = _vue.defineComponent.call(void 0, {
28
33
  name: "TigerVirtualTable",
29
34
  inheritAttrs: false,
@@ -38,12 +43,18 @@ var VirtualTable = _vue.defineComponent.call(void 0, {
38
43
  },
39
44
  rowHeight: { type: Number, default: 48 },
40
45
  height: { type: Number, default: 400 },
46
+ width: { type: [Number, String], default: "auto" },
41
47
  overscan: { type: Number, default: 5 },
42
48
  stickyHeader: { type: Boolean, default: true },
49
+ virtualizeColumns: { type: Boolean, default: false },
43
50
  rowKey: {
44
51
  type: [String, Function],
45
52
  default: void 0
46
53
  },
54
+ rowClassName: {
55
+ type: [String, Function],
56
+ default: void 0
57
+ },
47
58
  loading: { type: Boolean, default: false },
48
59
  emptyText: { type: String, default: void 0 },
49
60
  selectable: { type: Boolean, default: false },
@@ -62,6 +73,7 @@ var VirtualTable = _vue.defineComponent.call(void 0, {
62
73
  const mergedLocale = _vue.computed.call(void 0, () => _tigercatcore.mergeTigerLocale.call(void 0, config.value.locale, props.locale));
63
74
  const containerRef = _vue.ref.call(void 0, null);
64
75
  const scrollTop = _vue.ref.call(void 0, 0);
76
+ const scrollLeft = _vue.ref.call(void 0, 0);
65
77
  const range = _vue.computed.call(void 0,
66
78
  () => _tigercatcore.calculateVirtualRange.call(void 0,
67
79
  scrollTop.value,
@@ -75,8 +87,15 @@ var VirtualTable = _vue.defineComponent.call(void 0, {
75
87
  function onScroll() {
76
88
  if (containerRef.value) {
77
89
  scrollTop.value = containerRef.value.scrollTop;
90
+ scrollLeft.value = containerRef.value.scrollLeft;
78
91
  }
79
92
  }
93
+ const columnWidths = _vue.computed.call(void 0,
94
+ () => props.columns.map(
95
+ (c) => typeof c.width === "number" ? c.width : DEFAULT_VIRTUAL_COLUMN_WIDTH
96
+ )
97
+ );
98
+ const resolveRowClassName = (row, index) => typeof props.rowClassName === "function" ? props.rowClassName(row, index) : props.rowClassName;
80
99
  const containerClasses = _vue.computed.call(void 0,
81
100
  () => _tigercatcore.classNames.call(void 0,
82
101
  _tigercatcore.getVirtualTableContainerClasses.call(void 0, props.bordered, props.className),
@@ -87,7 +106,17 @@ var VirtualTable = _vue.defineComponent.call(void 0, {
87
106
  const fixedInfo = _vue.computed.call(void 0, () => _tigercatcore.getVirtualTableFixedInfo.call(void 0, props.columns));
88
107
  return () => {
89
108
  const fi = fixedInfo.value;
90
- const headerCells = props.columns.map((col) => {
109
+ const colVirtualActive = props.virtualizeColumns && !fi.hasFixedColumns && props.width !== "auto";
110
+ const colRange = colVirtualActive ? _tigercatcore.calculateVirtualColumnRange.call(void 0, scrollLeft.value, props.width, columnWidths.value) : void 0;
111
+ const visibleColumns = colRange ? props.columns.slice(colRange.start, colRange.end) : props.columns;
112
+ const colIndexOffset = colRange ? colRange.start : 0;
113
+ const colgroupEntries = fi.hasFixedColumns ? _tigercatcore.getTableColgroup.call(void 0, {
114
+ columns: visibleColumns,
115
+ size: "md",
116
+ hasSelectionColumn: false,
117
+ expand: false
118
+ }) : [];
119
+ const headerCells = visibleColumns.map((col) => {
91
120
  const widthStyle = col.width ? { width: typeof col.width === "number" ? `${col.width}px` : col.width } : {};
92
121
  const stickyStyle = _tigercatcore.getVirtualTableFixedCellStyle.call(void 0, col.key, fi);
93
122
  return _vue.h.call(void 0,
@@ -108,7 +137,20 @@ var VirtualTable = _vue.defineComponent.call(void 0, {
108
137
  _nullishCoalesce(col.title, () => ( ""))
109
138
  );
110
139
  });
111
- const headerRow = _vue.h.call(void 0, "tr", {}, headerCells);
140
+ const headerRowChildren = [
141
+ colRange && colRange.leftPad > 0 ? _vue.h.call(void 0, "th", {
142
+ key: "__left-pad",
143
+ "aria-hidden": true,
144
+ style: { width: `${colRange.leftPad}px`, padding: 0 }
145
+ }) : null,
146
+ ...headerCells,
147
+ colRange && colRange.rightPad > 0 ? _vue.h.call(void 0, "th", {
148
+ key: "__right-pad",
149
+ "aria-hidden": true,
150
+ style: { width: `${colRange.rightPad}px`, padding: 0 }
151
+ }) : null
152
+ ];
153
+ const headerRow = _vue.h.call(void 0, "tr", {}, headerRowChildren);
112
154
  const thead = _vue.h.call(void 0,
113
155
  "thead",
114
156
  { class: props.stickyHeader ? _tigercatcore.virtualTableHeaderClasses : void 0 },
@@ -122,11 +164,17 @@ var VirtualTable = _vue.defineComponent.call(void 0, {
122
164
  props.rowKey
123
165
  );
124
166
  const isSelected = selectedSet.value.has(key);
125
- const cells = props.columns.map(
126
- (col) => _vue.h.call(void 0,
167
+ const isInteractive = props.selectable || typeof attrs.onRowClick === "function";
168
+ const activate = () => {
169
+ emit("row-click", row, globalIdx);
170
+ if (props.selectable) emit("select", key, row, globalIdx);
171
+ };
172
+ const cells = visibleColumns.map(
173
+ (col, colIdx) => _vue.h.call(void 0,
127
174
  "td",
128
175
  {
129
176
  key: col.key,
177
+ "aria-colindex": colIndexOffset + colIdx + 1,
130
178
  class: _tigercatcore.classNames.call(void 0,
131
179
  _tigercatcore.virtualTableCellClasses,
132
180
  _tigercatcore.getTableFixedCellClasses.call(void 0, {
@@ -147,17 +195,42 @@ var VirtualTable = _vue.defineComponent.call(void 0, {
147
195
  String(_nullishCoalesce(row[col.key], () => ( "")))
148
196
  )
149
197
  );
198
+ const rowChildren = [
199
+ colRange && colRange.leftPad > 0 ? _vue.h.call(void 0, "td", {
200
+ key: "__left-pad",
201
+ "aria-hidden": true,
202
+ style: { width: `${colRange.leftPad}px`, padding: 0 }
203
+ }) : null,
204
+ ...cells,
205
+ colRange && colRange.rightPad > 0 ? _vue.h.call(void 0, "td", {
206
+ key: "__right-pad",
207
+ "aria-hidden": true,
208
+ style: { width: `${colRange.rightPad}px`, padding: 0 }
209
+ }) : null
210
+ ];
150
211
  return _vue.h.call(void 0,
151
212
  "tr",
152
213
  {
153
214
  key,
154
- class: _tigercatcore.getVirtualTableRowClasses.call(void 0, globalIdx, props.striped, isSelected),
155
- onClick: () => {
156
- emit("row-click", row, globalIdx);
157
- if (props.selectable) emit("select", key, row, globalIdx);
158
- }
215
+ class: _tigercatcore.classNames.call(void 0,
216
+ _tigercatcore.getVirtualTableRowClasses.call(void 0, globalIdx, props.striped, isSelected),
217
+ resolveRowClassName(row, globalIdx)
218
+ ),
219
+ // header occupies aria-rowindex 1
220
+ "aria-rowindex": globalIdx + 2,
221
+ "aria-selected": props.selectable ? isSelected : void 0,
222
+ tabindex: isInteractive ? 0 : void 0,
223
+ // onClick stays attached so `row-click` always fires for consumers
224
+ // that listen for it; keyboard activation is added when interactive.
225
+ onClick: activate,
226
+ onKeydown: isInteractive ? (e) => {
227
+ if (_tigercatcore.isActivationKey.call(void 0, e)) {
228
+ e.preventDefault();
229
+ activate();
230
+ }
231
+ } : void 0
159
232
  },
160
- cells
233
+ rowChildren
161
234
  );
162
235
  });
163
236
  const topSpacer = _vue.h.call(void 0, "tr", {
@@ -172,7 +245,22 @@ var VirtualTable = _vue.defineComponent.call(void 0, {
172
245
  "aria-hidden": true
173
246
  }) : null;
174
247
  const tbody = _vue.h.call(void 0, "tbody", {}, [topSpacer, ...rows, bottomSpacer]);
175
- const table = _vue.h.call(void 0, "table", { class: "w-full table-fixed" }, [thead, tbody]);
248
+ const colgroup = colgroupEntries.length > 0 ? _vue.h.call(void 0,
249
+ "colgroup",
250
+ {},
251
+ colgroupEntries.map(
252
+ (entry) => _vue.h.call(void 0, "col", {
253
+ key: entry.key,
254
+ "data-tiger-table-col": entry.key,
255
+ style: entry.width ? { width: entry.width } : void 0
256
+ })
257
+ )
258
+ ) : null;
259
+ const table = _vue.h.call(void 0, "table", { class: _tigercatcore.classNames.call(void 0, _tigercatcore.tableBaseClasses, "table-fixed") }, [
260
+ colgroup,
261
+ thead,
262
+ tbody
263
+ ]);
176
264
  const emptyEl = props.data.length === 0 && !props.loading ? _vue.h.call(void 0,
177
265
  "div",
178
266
  { class: _tigercatcore.virtualTableEmptyClasses },
@@ -188,7 +276,10 @@ var VirtualTable = _vue.defineComponent.call(void 0, {
188
276
  {
189
277
  ref: containerRef,
190
278
  class: containerClasses.value,
191
- style: { height: `${props.height}px` },
279
+ style: {
280
+ height: `${props.height}px`,
281
+ ...props.width !== "auto" ? { width: `${props.width}px` } : {}
282
+ },
192
283
  onScroll,
193
284
  role: "grid",
194
285
  "aria-rowcount": props.data.length
@@ -615,7 +615,7 @@ var Upload = _vue.defineComponent.call(void 0, {
615
615
  _vue.h.call(void 0,
616
616
  "div",
617
617
  {
618
- class: "absolute inset-0 bg-black bg-opacity-0 hover:bg-opacity-50 transition-all flex items-center justify-center space-x-2 opacity-0 hover:opacity-100"
618
+ class: "absolute inset-0 bg-black/0 hover:bg-black/50 transition-all flex items-center justify-center space-x-2 opacity-0 hover:opacity-100"
619
619
  },
620
620
  [
621
621
  // Preview button
@@ -692,7 +692,7 @@ var Upload = _vue.defineComponent.call(void 0, {
692
692
  file.status === "uploading" && _vue.h.call(void 0,
693
693
  "div",
694
694
  {
695
- class: "absolute inset-0 bg-white bg-opacity-75 flex items-center justify-center"
695
+ class: "absolute inset-0 bg-white/75 flex items-center justify-center"
696
696
  },
697
697
  [
698
698
  _vue.h.call(void 0,
@@ -1,6 +1,6 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
2
 
3
- var _chunkX6FG4RPFjs = require('./chunk-X6FG4RPF.js');
3
+ var _chunkWF7KVMBYjs = require('./chunk-WF7KVMBY.js');
4
4
 
5
5
  // src/components/ImageGroup.ts
6
6
  var _vue = require('vue');
@@ -42,7 +42,7 @@ var ImageGroup = _vue.defineComponent.call(void 0, {
42
42
  });
43
43
  return () => {
44
44
  const children = _optionalChain([slots, 'access', _ => _.default, 'optionalCall', _2 => _2()]);
45
- const preview = props.preview ? _vue.h.call(void 0, _chunkX6FG4RPFjs.ImagePreview, {
45
+ const preview = props.preview ? _vue.h.call(void 0, _chunkWF7KVMBYjs.ImagePreview, {
46
46
  open: previewVisible.value,
47
47
  images: images.value,
48
48
  currentIndex: previewIndex.value,
@@ -57,7 +57,9 @@ var ChartLegend = _vue.defineComponent.call(void 0, {
57
57
  {
58
58
  class: containerClasses.value,
59
59
  style: containerStyle.value,
60
- role: "list",
60
+ // A group of toggle buttons is not a "list"; only use list semantics
61
+ // for the static (non-interactive) legend.
62
+ role: props.interactive ? "group" : "list",
61
63
  "aria-label": "Chart legend",
62
64
  "data-chart-legend": "true"
63
65
  },
@@ -73,7 +75,10 @@ var ChartLegend = _vue.defineComponent.call(void 0, {
73
75
  props.interactive ? "cursor-pointer hover:text-[color:var(--tiger-text,#374151)] hover:bg-[var(--tiger-chart-legend-row-hover-bg,transparent)] transition-colors" : "cursor-default",
74
76
  item.active === false ? "opacity-50" : void 0
75
77
  ),
76
- role: "listitem",
78
+ // Interactive items are real buttons; `role="listitem"` would
79
+ // override the button role, so it is only set for the static legend.
80
+ role: props.interactive ? void 0 : "listitem",
81
+ "aria-pressed": props.interactive ? item.active !== false : void 0,
77
82
  "data-legend-item": "true",
78
83
  onClick: props.interactive ? () => handleClick(item) : void 0,
79
84
  onMouseenter: props.interactive ? () => handleHover(item) : void 0,
@@ -91,7 +96,7 @@ var ChartLegend = _vue.defineComponent.call(void 0, {
91
96
  "aria-hidden": "true",
92
97
  "data-legend-marker": "true"
93
98
  }),
94
- _vue.h.call(void 0, "span", { style: { marginRight: `${props.gap}px` } }, item.label)
99
+ _vue.h.call(void 0, "span", null, item.label)
95
100
  ]
96
101
  )
97
102
  )
@@ -1,3 +1,7 @@
1
+ import {
2
+ useTigerConfig
3
+ } from "./chunk-R6WFL6NI.mjs";
4
+
1
5
  // src/components/Tag.ts
2
6
  import { defineComponent, computed, h, ref } from "vue";
3
7
  import {
@@ -14,7 +18,9 @@ import {
14
18
  tagSizeClasses,
15
19
  tagCloseButtonBaseClasses,
16
20
  tagCloseIconPath,
17
- warnUnsupportedColorProp
21
+ warnUnsupportedColorProp,
22
+ getStatusLabels,
23
+ mergeTigerLocale
18
24
  } from "@expcat/tigercat-core";
19
25
  var CloseIcon = () => h(
20
26
  "svg",
@@ -40,6 +46,10 @@ var Tag = defineComponent({
40
46
  name: "TigerTag",
41
47
  inheritAttrs: false,
42
48
  props: {
49
+ locale: {
50
+ type: Object,
51
+ default: void 0
52
+ },
43
53
  /**
44
54
  * Tag variant style
45
55
  * @default 'default'
@@ -70,7 +80,7 @@ var Tag = defineComponent({
70
80
  */
71
81
  closeAriaLabel: {
72
82
  type: String,
73
- default: "Close tag"
83
+ default: void 0
74
84
  },
75
85
  /**
76
86
  * Additional CSS classes
@@ -89,6 +99,10 @@ var Tag = defineComponent({
89
99
  },
90
100
  emits: ["close"],
91
101
  setup(props, { slots, emit, attrs }) {
102
+ const config = useTigerConfig();
103
+ const labels = computed(
104
+ () => getStatusLabels(mergeTigerLocale(config.value.locale, props.locale))
105
+ );
92
106
  const isVisible = ref(true);
93
107
  const tagClasses = computed(
94
108
  () => classNames(
@@ -132,7 +146,7 @@ var Tag = defineComponent({
132
146
  {
133
147
  class: closeButtonClasses.value,
134
148
  onClick: handleClose,
135
- "aria-label": props.closeAriaLabel,
149
+ "aria-label": props.closeAriaLabel ?? labels.value.tagCloseAriaLabel,
136
150
  type: "button"
137
151
  },
138
152
  CloseIcon()
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
2
 
3
3
  var _chunkIXTYS3EKjs = require('./chunk-IXTYS3EK.js');
4
4
 
@@ -25,6 +25,8 @@ var _vue = require('vue');
25
25
 
26
26
 
27
27
 
28
+
29
+
28
30
 
29
31
 
30
32
 
@@ -43,6 +45,10 @@ var FileManager = _vue.defineComponent.call(void 0, {
43
45
  default: () => []
44
46
  },
45
47
  multiple: { type: Boolean, default: false },
48
+ columns: {
49
+ type: Array,
50
+ default: void 0
51
+ },
46
52
  sortField: {
47
53
  type: String,
48
54
  default: "name"
@@ -70,12 +76,48 @@ var FileManager = _vue.defineComponent.call(void 0, {
70
76
  "navigate",
71
77
  "update:currentPath",
72
78
  "update:searchText",
73
- "update:selectedKeys"
79
+ "update:selectedKeys",
80
+ "update:files",
81
+ "reorder"
74
82
  ],
75
83
  setup(props, { emit, attrs }) {
76
84
  const config = _chunkIXTYS3EKjs.useTigerConfig.call(void 0, );
77
85
  const mergedLocale = _vue.computed.call(void 0, () => _tigercatcore.mergeTigerLocale.call(void 0, config.value.locale, props.locale));
86
+ const labels = _vue.computed.call(void 0, () => _tigercatcore.getFileManagerLabels.call(void 0, mergedLocale.value));
78
87
  const localSearch = _vue.ref.call(void 0, props.searchText);
88
+ const focusedIndex = _vue.ref.call(void 0, 0);
89
+ const contentRef = _vue.ref.call(void 0, null);
90
+ let dragFromIndex = null;
91
+ function handleDragStart(event, item, index) {
92
+ if (!props.draggable || item.disabled) return;
93
+ dragFromIndex = index;
94
+ if (event.dataTransfer) {
95
+ event.dataTransfer.effectAllowed = "move";
96
+ event.dataTransfer.setData("text/plain", String(_tigercatcore.toFileDragItem.call(void 0, item, index).id));
97
+ }
98
+ }
99
+ function handleDragOver(event) {
100
+ if (!props.draggable || dragFromIndex === null) return;
101
+ event.preventDefault();
102
+ if (event.dataTransfer) event.dataTransfer.dropEffect = "move";
103
+ }
104
+ function handleDrop(event, toIndex) {
105
+ if (!props.draggable) return;
106
+ const fromIndex = dragFromIndex;
107
+ dragFromIndex = null;
108
+ if (fromIndex === null || fromIndex === toIndex) return;
109
+ event.preventDefault();
110
+ const items = model.value.processedItems;
111
+ const reordered = _tigercatcore.applyFileDragReorder.call(void 0, items, {
112
+ item: _tigercatcore.toFileDragItem.call(void 0, items[fromIndex], fromIndex),
113
+ fromIndex,
114
+ toIndex,
115
+ fromContainerId: "",
116
+ toContainerId: ""
117
+ });
118
+ emit("reorder", reordered, fromIndex, toIndex);
119
+ emit("update:files", reordered);
120
+ }
79
121
  const model = _vue.computed.call(void 0,
80
122
  () => _tigercatcore.deriveFileManagerModel.call(void 0, {
81
123
  files: props.files,
@@ -111,6 +153,80 @@ var FileManager = _vue.defineComponent.call(void 0, {
111
153
  emit("update:currentPath", newPath);
112
154
  emit("navigate", newPath);
113
155
  }
156
+ function getFirstEnabledIndex() {
157
+ return model.value.processedItems.findIndex((item) => !item.disabled);
158
+ }
159
+ function getLastEnabledIndex() {
160
+ for (let index = model.value.processedItems.length - 1; index >= 0; index -= 1) {
161
+ if (!_optionalChain([model, 'access', _ => _.value, 'access', _2 => _2.processedItems, 'access', _3 => _3[index], 'optionalAccess', _4 => _4.disabled])) {
162
+ return index;
163
+ }
164
+ }
165
+ return -1;
166
+ }
167
+ function getFocusedItemIndex() {
168
+ return focusedIndex.value >= 0 && !_optionalChain([model, 'access', _5 => _5.value, 'access', _6 => _6.processedItems, 'access', _7 => _7[focusedIndex.value], 'optionalAccess', _8 => _8.disabled]) ? focusedIndex.value : getFirstEnabledIndex();
169
+ }
170
+ function focusItemAt(index) {
171
+ _vue.nextTick.call(void 0, () => {
172
+ _optionalChain([contentRef, 'access', _9 => _9.value, 'optionalAccess', _10 => _10.querySelector, 'call', _11 => _11(`[data-option-index="${index}"]`), 'optionalAccess', _12 => _12.focus, 'call', _13 => _13()]);
173
+ });
174
+ }
175
+ function moveFocus(current, direction) {
176
+ if (model.value.processedItems.length === 0) return;
177
+ let next = current;
178
+ for (let i = 0; i < model.value.processedItems.length; i += 1) {
179
+ next = (next + direction + model.value.processedItems.length) % model.value.processedItems.length;
180
+ if (!_optionalChain([model, 'access', _14 => _14.value, 'access', _15 => _15.processedItems, 'access', _16 => _16[next], 'optionalAccess', _17 => _17.disabled])) {
181
+ focusedIndex.value = next;
182
+ focusItemAt(next);
183
+ return;
184
+ }
185
+ }
186
+ }
187
+ function handleItemKeydown(event, item, index) {
188
+ switch (event.key) {
189
+ case "ArrowDown":
190
+ case "ArrowRight":
191
+ event.preventDefault();
192
+ moveFocus(index, 1);
193
+ return;
194
+ case "ArrowUp":
195
+ case "ArrowLeft":
196
+ event.preventDefault();
197
+ moveFocus(index, -1);
198
+ return;
199
+ case "Home": {
200
+ event.preventDefault();
201
+ const first = getFirstEnabledIndex();
202
+ if (first >= 0) {
203
+ focusedIndex.value = first;
204
+ focusItemAt(first);
205
+ }
206
+ return;
207
+ }
208
+ case "End": {
209
+ event.preventDefault();
210
+ const last = getLastEnabledIndex();
211
+ if (last >= 0) {
212
+ focusedIndex.value = last;
213
+ focusItemAt(last);
214
+ }
215
+ return;
216
+ }
217
+ case " ":
218
+ event.preventDefault();
219
+ handleSelect(item);
220
+ return;
221
+ case "Enter":
222
+ event.preventDefault();
223
+ handleSelect(item);
224
+ handleOpen(item);
225
+ return;
226
+ default:
227
+ return;
228
+ }
229
+ }
114
230
  return () => {
115
231
  const breadcrumbItems = [
116
232
  _vue.h.call(void 0,
@@ -119,7 +235,7 @@ var FileManager = _vue.defineComponent.call(void 0, {
119
235
  class: _tigercatcore.fileManagerBreadcrumbItemClasses,
120
236
  onClick: () => navigateToBreadcrumb(0)
121
237
  },
122
- "Root"
238
+ labels.value.rootText
123
239
  ),
124
240
  ...props.currentPath.flatMap((seg, i) => [
125
241
  _vue.h.call(void 0, "span", { class: _tigercatcore.fileManagerBreadcrumbSeparatorClasses }, "/"),
@@ -143,7 +259,7 @@ var FileManager = _vue.defineComponent.call(void 0, {
143
259
  class: _tigercatcore.fileManagerSearchClasses,
144
260
  placeholder: _tigercatcore.resolveLocaleText.call(void 0,
145
261
  "Search...",
146
- _optionalChain([mergedLocale, 'access', _ => _.value, 'optionalAccess', _2 => _2.common, 'optionalAccess', _3 => _3.searchPlaceholder])
262
+ _optionalChain([mergedLocale, 'access', _18 => _18.value, 'optionalAccess', _19 => _19.common, 'optionalAccess', _20 => _20.searchPlaceholder])
147
263
  ),
148
264
  value: localSearch.value,
149
265
  onInput: (e) => {
@@ -165,10 +281,13 @@ var FileManager = _vue.defineComponent.call(void 0, {
165
281
  const renderItem = (item, index) => {
166
282
  const isSelected = model.value.selectedSet.has(item.key);
167
283
  const itemClass = _tigercatcore.getFileItemClasses.call(void 0, props.viewMode, isSelected);
284
+ const focusedItem = getFocusedItemIndex();
168
285
  const nameEl = _vue.h.call(void 0, "span", { class: _tigercatcore.fileManagerItemNameClasses }, item.name);
286
+ const metaColumns = _nullishCoalesce(props.columns, () => ( ["size", "modified"]));
169
287
  const metaEls = props.viewMode === "list" ? [
170
- item.size !== void 0 ? _vue.h.call(void 0, "span", { class: _tigercatcore.fileManagerItemMetaClasses }, _tigercatcore.formatFileSizeLabel.call(void 0, item.size)) : null,
171
- item.modified ? _vue.h.call(void 0, "span", { class: _tigercatcore.fileManagerItemMetaClasses }, item.modified) : null
288
+ metaColumns.includes("type") ? _vue.h.call(void 0, "span", { class: _tigercatcore.fileManagerItemMetaClasses }, _nullishCoalesce(item.extension, () => ( item.type))) : null,
289
+ metaColumns.includes("size") && item.size !== void 0 ? _vue.h.call(void 0, "span", { class: _tigercatcore.fileManagerItemMetaClasses }, _tigercatcore.formatFileSizeLabel.call(void 0, item.size)) : null,
290
+ metaColumns.includes("modified") && item.modified ? _vue.h.call(void 0, "span", { class: _tigercatcore.fileManagerItemMetaClasses }, item.modified) : null
172
291
  ] : [];
173
292
  const dragItem = props.draggable && !item.disabled ? _tigercatcore.toFileDragItem.call(void 0, item, index) : void 0;
174
293
  return _vue.h.call(void 0,
@@ -178,11 +297,20 @@ var FileManager = _vue.defineComponent.call(void 0, {
178
297
  class: itemClass,
179
298
  role: "option",
180
299
  "aria-selected": isSelected,
300
+ tabindex: !item.disabled && index === focusedItem ? 0 : -1,
301
+ "data-option-index": index,
181
302
  "data-disabled": item.disabled || void 0,
303
+ onFocus: () => {
304
+ if (!item.disabled) focusedIndex.value = index;
305
+ },
306
+ onKeydown: (event) => handleItemKeydown(event, item, index),
182
307
  onClick: () => handleSelect(item),
183
308
  onDblclick: () => handleOpen(item),
184
309
  draggable: props.draggable && !item.disabled,
185
- "data-drag-id": _optionalChain([dragItem, 'optionalAccess', _4 => _4.id])
310
+ "data-drag-id": _optionalChain([dragItem, 'optionalAccess', _21 => _21.id]),
311
+ onDragstart: (event) => handleDragStart(event, item, index),
312
+ onDragover: handleDragOver,
313
+ onDrop: (event) => handleDrop(event, index)
186
314
  },
187
315
  [fileIcon(item), nameEl, ...metaEls]
188
316
  );
@@ -190,7 +318,12 @@ var FileManager = _vue.defineComponent.call(void 0, {
190
318
  const contentClass = props.viewMode === "grid" ? `${_tigercatcore.fileManagerContentClasses} grid grid-cols-4 gap-2` : _tigercatcore.fileManagerContentClasses;
191
319
  const content = model.value.processedItems.length > 0 ? _vue.h.call(void 0,
192
320
  "div",
193
- { class: contentClass, role: "listbox", "aria-multiselectable": props.multiple },
321
+ {
322
+ ref: contentRef,
323
+ class: contentClass,
324
+ role: "listbox",
325
+ "aria-multiselectable": props.multiple
326
+ },
194
327
  model.value.processedItems.map(renderItem)
195
328
  ) : _vue.h.call(void 0,
196
329
  "div",
@@ -198,13 +331,13 @@ var FileManager = _vue.defineComponent.call(void 0, {
198
331
  _tigercatcore.resolveLocaleText.call(void 0,
199
332
  "Empty folder",
200
333
  props.emptyText,
201
- _optionalChain([mergedLocale, 'access', _5 => _5.value, 'optionalAccess', _6 => _6.common, 'optionalAccess', _7 => _7.emptyText])
334
+ _optionalChain([mergedLocale, 'access', _22 => _22.value, 'optionalAccess', _23 => _23.common, 'optionalAccess', _24 => _24.emptyText])
202
335
  )
203
336
  );
204
337
  const loadingEl = props.loading ? _vue.h.call(void 0,
205
338
  "div",
206
339
  { class: _tigercatcore.fileManagerLoadingClasses },
207
- _tigercatcore.resolveLocaleText.call(void 0, "Loading...", _optionalChain([mergedLocale, 'access', _8 => _8.value, 'optionalAccess', _9 => _9.common, 'optionalAccess', _10 => _10.loadingText]))
340
+ _tigercatcore.resolveLocaleText.call(void 0, "Loading...", _optionalChain([mergedLocale, 'access', _25 => _25.value, 'optionalAccess', _26 => _26.common, 'optionalAccess', _27 => _27.loadingText]))
208
341
  ) : null;
209
342
  return _vue.h.call(void 0, "div", { class: containerClasses.value }, [toolbar, content, loadingEl]);
210
343
  };