@expcat/tigercat-vue 0.3.0 → 0.3.70

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 (469) hide show
  1. package/dist/{chunk-WO332QT2.js → chunk-27T3QDSF.js} +3 -3
  2. package/dist/{chunk-YLP24JN3.mjs → chunk-2BNQGU7E.mjs} +19 -22
  3. package/dist/{chunk-CCI3RIZU.js → chunk-2KDSHEZT.js} +9 -7
  4. package/dist/{chunk-NF7ADPEN.mjs → chunk-2R5HISQA.mjs} +19 -28
  5. package/dist/{chunk-74P7RUAY.mjs → chunk-2SCIJ2RW.mjs} +9 -11
  6. package/dist/{chunk-KQOJTNUP.js → chunk-2YFXJUBT.js} +19 -22
  7. package/dist/{chunk-ENBDEPNV.mjs → chunk-327O6FN7.mjs} +67 -74
  8. package/dist/{chunk-UAMYOMEU.mjs → chunk-37WD7WPC.mjs} +6 -8
  9. package/dist/{chunk-FKON56SN.mjs → chunk-3AM6WEUE.mjs} +14 -27
  10. package/dist/{chunk-LNQYYW3E.mjs → chunk-3G4VPV4D.mjs} +9 -7
  11. package/dist/{chunk-ZFDUZQML.js → chunk-3L36R3UN.js} +107 -45
  12. package/dist/{chunk-CGJTYURK.js → chunk-3PQIZBT5.js} +54 -91
  13. package/dist/{chunk-JHOTXOGL.js → chunk-3QV2D54H.js} +18 -19
  14. package/dist/chunk-3WM7WK7E.js +122 -0
  15. package/dist/chunk-3ZHQJ4W6.mjs +119 -0
  16. package/dist/{chunk-X5BEVY5O.mjs → chunk-46DEQQMB.mjs} +14 -15
  17. package/dist/{chunk-QVMU7OT7.mjs → chunk-4L5UYIV6.mjs} +1 -1
  18. package/dist/{chunk-CDZHYIXG.js → chunk-4NSRGKRB.js} +132 -66
  19. package/dist/chunk-4YHOD7LT.mjs +82 -0
  20. package/dist/chunk-53M2BTB5.mjs +22 -0
  21. package/dist/{chunk-CKC7W6BL.mjs → chunk-5BAN4GHQ.mjs} +1 -1
  22. package/dist/{chunk-TTZDVYGX.mjs → chunk-5XY7MXWC.mjs} +57 -39
  23. package/dist/{chunk-SF63KE5T.js → chunk-6FXYRDYH.js} +6 -13
  24. package/dist/{chunk-UBMNR3BJ.js → chunk-6MJBCXPO.js} +47 -48
  25. package/dist/{chunk-6SC33HJA.js → chunk-6PZZNM3S.js} +2 -9
  26. package/dist/{chunk-BWKN2DGI.mjs → chunk-6V7XCCXN.mjs} +3 -24
  27. package/dist/chunk-7AFJ7TKW.js +266 -0
  28. package/dist/{chunk-CJYWTPAS.mjs → chunk-7FCHU5KV.mjs} +28 -69
  29. package/dist/{chunk-2EMI5OHM.mjs → chunk-7J44XQKW.mjs} +2 -9
  30. package/dist/chunk-7LUATGJU.mjs +171 -0
  31. package/dist/chunk-7RRA3TIG.mjs +31 -0
  32. package/dist/{chunk-L44HKVK5.js → chunk-7TGLZQV5.js} +6 -8
  33. package/dist/{chunk-BCMEJAC7.mjs → chunk-7UU4PULK.mjs} +15 -35
  34. package/dist/{chunk-E3FDI3Y5.js → chunk-AGAJJYP2.js} +46 -120
  35. package/dist/{chunk-ROM2NNJX.mjs → chunk-AO4QQVBB.mjs} +7 -7
  36. package/dist/chunk-ATGOHL6L.mjs +251 -0
  37. package/dist/{chunk-QIS3MLLN.js → chunk-ATOLZW76.js} +56 -38
  38. package/dist/{chunk-DONDDWQU.js → chunk-B6ER2B2D.js} +7 -4
  39. package/dist/chunk-BFNHRBWN.js +113 -0
  40. package/dist/{chunk-Y4KDPUTV.mjs → chunk-BMW2Z3G3.mjs} +1 -1
  41. package/dist/{chunk-5CGS2CPE.mjs → chunk-BQEVLY2O.mjs} +9 -32
  42. package/dist/{chunk-DCW4EFNZ.mjs → chunk-BS45PHVI.mjs} +124 -46
  43. package/dist/{chunk-BR7FIC54.js → chunk-CEAMHLIL.js} +78 -109
  44. package/dist/{chunk-3JANYZE3.js → chunk-CKXZONMO.js} +14 -15
  45. package/dist/{chunk-U5ZMB6RE.mjs → chunk-COCECPMG.mjs} +1 -15
  46. package/dist/{chunk-NTXRWISS.js → chunk-CODQKVQV.js} +15 -21
  47. package/dist/{chunk-JUIOGBBB.mjs → chunk-D5CR2P7K.mjs} +49 -50
  48. package/dist/{chunk-YMIO4A2U.mjs → chunk-D6MR5YRE.mjs} +11 -17
  49. package/dist/{chunk-HRTL6ZTJ.mjs → chunk-D7VMY6WX.mjs} +7 -7
  50. package/dist/{chunk-DPWYCNNS.mjs → chunk-DATFV22V.mjs} +107 -45
  51. package/dist/{chunk-2ONL76L4.js → chunk-DELTFEEJ.js} +11 -17
  52. package/dist/{chunk-ZK26QLSW.js → chunk-DN5GU5PC.js} +1 -37
  53. package/dist/{chunk-264DR3I2.mjs → chunk-DU2NXX75.mjs} +12 -10
  54. package/dist/{chunk-I7GSAVM7.js → chunk-DUQ7Q2GO.js} +2 -23
  55. package/dist/{chunk-OVFGETP7.mjs → chunk-DVFDA2P2.mjs} +16 -22
  56. package/dist/{chunk-4DCSGWCJ.js → chunk-EAMHOEAJ.js} +16 -16
  57. package/dist/{chunk-SUZB7IAA.js → chunk-EBQ4WSQS.js} +2 -2
  58. package/dist/chunk-EJCHNSVG.mjs +41 -0
  59. package/dist/chunk-ENVHCXM5.js +287 -0
  60. package/dist/{chunk-V2F7IOSD.mjs → chunk-EVOLGCGW.mjs} +20 -36
  61. package/dist/chunk-EZZG57TK.js +44 -0
  62. package/dist/{chunk-FA2BQGLO.js → chunk-F5AI7CPC.js} +20 -36
  63. package/dist/{chunk-U5VOJ4G2.js → chunk-FC7RXQTM.js} +2 -15
  64. package/dist/{chunk-4QIOLPLB.mjs → chunk-FDYZ7NTQ.mjs} +33 -56
  65. package/dist/{chunk-JFZDIY7D.js → chunk-FLAJKB2O.js} +12 -10
  66. package/dist/{chunk-7WLOYIVN.mjs → chunk-GALASVSG.mjs} +31 -75
  67. package/dist/{chunk-LFJQD3ZJ.js → chunk-GCKACSWD.js} +124 -46
  68. package/dist/chunk-GNKXBRXH.js +189 -0
  69. package/dist/{chunk-SZD2UCM5.mjs → chunk-GQPSQJ5I.mjs} +7 -14
  70. package/dist/{chunk-3VTOJCER.js → chunk-GWJSBFLF.js} +7 -7
  71. package/dist/{chunk-Y4W6MMYO.js → chunk-HNQZ5JRB.js} +30 -74
  72. package/dist/chunk-HTMTOXUO.mjs +186 -0
  73. package/dist/{chunk-H4NZLUJ4.mjs → chunk-HVVPFQW2.mjs} +14 -64
  74. package/dist/{chunk-SUM4V2WN.mjs → chunk-I2B4CO22.mjs} +22 -26
  75. package/dist/{chunk-IQA52MC4.js → chunk-I2BZURVP.js} +9 -11
  76. package/dist/{chunk-QKKXUTDF.js → chunk-I4LQXUMW.js} +6 -13
  77. package/dist/{chunk-WSMKQUNB.mjs → chunk-IGSAOYXD.mjs} +14 -15
  78. package/dist/{chunk-Y4QBDL7S.mjs → chunk-IIU6FINW.mjs} +180 -87
  79. package/dist/{chunk-6NWG6SG3.mjs → chunk-J5J4UYGP.mjs} +4 -24
  80. package/dist/chunk-K2U3FEL7.js +373 -0
  81. package/dist/chunk-K6HDRMPN.js +197 -0
  82. package/dist/{chunk-JYGZCLJH.js → chunk-KCJPJQIS.js} +19 -19
  83. package/dist/{chunk-P2DJR6YG.js → chunk-KUJ75OHX.js} +28 -69
  84. package/dist/{chunk-HSXPJCRK.js → chunk-KVZLGW45.js} +15 -15
  85. package/dist/{chunk-YLILPFDU.js → chunk-LAAPLTP3.js} +2 -5
  86. package/dist/{chunk-ZCPYALXT.mjs → chunk-LBGTABIU.mjs} +3 -3
  87. package/dist/chunk-LDCTSE6Y.mjs +60 -0
  88. package/dist/{chunk-LQYBXAL4.mjs → chunk-LDN2MZEU.mjs} +132 -66
  89. package/dist/{chunk-OTTMBYP2.mjs → chunk-LLK2OK3K.mjs} +5 -5
  90. package/dist/chunk-LNWRZKX2.js +64 -0
  91. package/dist/{chunk-74PW5YAR.mjs → chunk-LRHJZP2C.mjs} +20 -19
  92. package/dist/chunk-M7EBWJZ5.mjs +41 -0
  93. package/dist/chunk-MB7W46IY.mjs +193 -0
  94. package/dist/{chunk-TT2SIKZ2.mjs → chunk-MJ7RGL34.mjs} +7 -6
  95. package/dist/{chunk-E6LSCXQM.mjs → chunk-MKBIVETW.mjs} +7 -14
  96. package/dist/chunk-MMQ34S5M.mjs +263 -0
  97. package/dist/chunk-MVIHUPCX.js +62 -0
  98. package/dist/{chunk-EK7Z226S.mjs → chunk-MYF3ZRV3.mjs} +7 -7
  99. package/dist/{chunk-36KWP3NX.js → chunk-N3T6BQGK.js} +2 -2
  100. package/dist/{chunk-AYNQTRO4.mjs → chunk-ND4XDRYR.mjs} +60 -84
  101. package/dist/{chunk-3G2QV4TL.js → chunk-NGW5UMAN.js} +19 -19
  102. package/dist/{chunk-XMBCYUDD.mjs → chunk-NHCCPMLC.mjs} +47 -121
  103. package/dist/{chunk-5XW532JA.js → chunk-NOTJRUAK.js} +14 -34
  104. package/dist/{chunk-UYWPZDRU.mjs → chunk-NTUGEHEI.mjs} +4 -4
  105. package/dist/{chunk-CQJQJERX.mjs → chunk-NV6GZPJP.mjs} +4 -11
  106. package/dist/{chunk-WEFTEDUS.js → chunk-O2SABM5H.js} +13 -26
  107. package/dist/{chunk-42ILM3BR.js → chunk-OO5UMN5M.js} +131 -155
  108. package/dist/chunk-OOKS4KMK.js +34 -0
  109. package/dist/{chunk-YZM7I5AM.mjs → chunk-P2ASDGNV.mjs} +120 -35
  110. package/dist/{chunk-25P4HFCO.mjs → chunk-P47EXOAW.mjs} +8 -17
  111. package/dist/{chunk-ZLMJ3SZQ.js → chunk-PCGHIFIJ.js} +3 -4
  112. package/dist/{chunk-HOJP5HTJ.js → chunk-PICYE2CM.js} +12 -45
  113. package/dist/chunk-PNKVD2UK.js +26 -0
  114. package/dist/{chunk-F6TZCXCL.js → chunk-PQMZ3YN3.js} +13 -63
  115. package/dist/{chunk-VWPHAKBA.mjs → chunk-PVPLDEC5.mjs} +7 -14
  116. package/dist/{chunk-6E73XACM.mjs → chunk-Q6OYCTQO.mjs} +1 -37
  117. package/dist/{chunk-L5QECL5P.mjs → chunk-QERCB3HM.mjs} +36 -55
  118. package/dist/{chunk-4FUWM7WP.js → chunk-QK3KKTYV.js} +21 -25
  119. package/dist/{chunk-4VHNAGSP.js → chunk-QLK4ZC2B.js} +8 -8
  120. package/dist/chunk-QY6PYAJA.js +174 -0
  121. package/dist/{chunk-I3Z247PO.js → chunk-R77ZKZ5F.js} +19 -18
  122. package/dist/{chunk-3ZXOARGD.mjs → chunk-R7DMRLHV.mjs} +10 -64
  123. package/dist/{chunk-6AZFL3WJ.js → chunk-R7S7O3YU.js} +180 -87
  124. package/dist/{chunk-XS7OPLPB.mjs → chunk-RKPYLBPU.mjs} +15 -15
  125. package/dist/{chunk-HXHMGLWX.js → chunk-ROKUXJBS.js} +9 -63
  126. package/dist/{chunk-IE57VDN4.js → chunk-RY2I56HB.js} +11 -38
  127. package/dist/{chunk-3F2QHERR.js → chunk-S4GFEADD.js} +36 -55
  128. package/dist/{chunk-GGV4STQD.js → chunk-SKV2HHBC.js} +3 -23
  129. package/dist/{chunk-FJ2ZZHIW.js → chunk-SLYUQ67P.js} +17 -26
  130. package/dist/{chunk-LGKMVPIB.js → chunk-SWOQMMOT.js} +14 -15
  131. package/dist/chunk-T4DF24UV.js +108 -0
  132. package/dist/chunk-T77L326M.mjs +370 -0
  133. package/dist/{chunk-GO3JWOB6.mjs → chunk-TG4PXQKX.mjs} +2 -3
  134. package/dist/{chunk-RZ6K7TWA.js → chunk-TGLAMZ4N.js} +120 -35
  135. package/dist/{chunk-U2JWZTDN.js → chunk-TLXEFLPA.js} +6 -13
  136. package/dist/chunk-TQOMX62N.js +104 -0
  137. package/dist/{chunk-LFIZI5Z4.mjs → chunk-U6WHPSWN.mjs} +6 -19
  138. package/dist/{chunk-JBSSXJZ2.mjs → chunk-U7MDGSCQ.mjs} +80 -111
  139. package/dist/{chunk-54IA7YWJ.js → chunk-UHGRUTGW.js} +2 -2
  140. package/dist/{chunk-YS2WMH5I.js → chunk-UKJSG75K.js} +10 -57
  141. package/dist/{chunk-W57RIOYG.mjs → chunk-URYEEQD7.mjs} +4 -5
  142. package/dist/{chunk-JQ73I2Q6.js → chunk-UUGAOKYR.js} +3 -4
  143. package/dist/{chunk-UZMGKLJE.js → chunk-UWVUDZVA.js} +4 -11
  144. package/dist/chunk-VBXPDCRX.js +254 -0
  145. package/dist/{chunk-IK3ZLVPR.js → chunk-VTLTKTCK.js} +6 -19
  146. package/dist/{chunk-G6YTJ7IE.mjs → chunk-VURU7TLN.mjs} +30 -53
  147. package/dist/{chunk-JSERNUJX.mjs → chunk-W2OCMRRH.mjs} +11 -58
  148. package/dist/{chunk-RBZ7ADKL.js → chunk-W36SYMVH.js} +9 -18
  149. package/dist/{chunk-ZAEX6EMJ.js → chunk-WC4B72TZ.js} +29 -52
  150. package/dist/{chunk-R2DKSTP4.js → chunk-WCZGYU7M.js} +9 -32
  151. package/dist/{chunk-SKUTVXHP.js → chunk-WEFQCJAG.js} +5 -8
  152. package/dist/chunk-WIPPSHI6.mjs +111 -0
  153. package/dist/{chunk-3JWW6FIN.mjs → chunk-WMM3FR3W.mjs} +7 -4
  154. package/dist/{chunk-U65XZCPB.js → chunk-WPIDP6IG.js} +1 -15
  155. package/dist/{chunk-VP4ZSIY3.mjs → chunk-WQXZ3234.mjs} +12 -39
  156. package/dist/{chunk-CF5D36KB.mjs → chunk-XCJONKFL.mjs} +12 -45
  157. package/dist/{chunk-HWHMM3QE.js → chunk-XEU42TLP.js} +6 -5
  158. package/dist/{chunk-TKTAGTDP.js → chunk-XV5DEK27.js} +32 -55
  159. package/dist/{chunk-HPTXW2VK.mjs → chunk-XYYZAQ6Z.mjs} +2 -5
  160. package/dist/{chunk-SHXM2ZXC.mjs → chunk-Y4V7BOVR.mjs} +3 -16
  161. package/dist/{chunk-YRFK5X43.js → chunk-Y5AZNO2W.js} +60 -71
  162. package/dist/chunk-YCI7GRQY.mjs +101 -0
  163. package/dist/{chunk-FVL7HDPG.mjs → chunk-YCUO6ZKS.mjs} +61 -72
  164. package/dist/chunk-YEHKQ3JZ.mjs +105 -0
  165. package/dist/{chunk-WNLRR2NM.mjs → chunk-YXN3YY5Y.mjs} +6 -9
  166. package/dist/{chunk-ZMU5PLEQ.js → chunk-YZK2HXRT.js} +63 -87
  167. package/dist/{chunk-I77ACTTI.mjs → chunk-YZP4K6KI.mjs} +18 -19
  168. package/dist/chunk-ZA2PLF7O.mjs +60 -0
  169. package/dist/chunk-ZED7TU62.js +85 -0
  170. package/dist/{chunk-6NHAWLQA.mjs → chunk-ZLYXAZUY.mjs} +132 -156
  171. package/dist/chunk-ZNVQ2OFX.js +44 -0
  172. package/dist/chunk-ZREPAOSW.mjs +284 -0
  173. package/dist/{chunk-PZOSCHRV.mjs → chunk-ZTJTIQZY.mjs} +54 -91
  174. package/dist/{chunk-WPWMXSXK.js → chunk-ZZ5LMO3X.js} +66 -73
  175. package/dist/components/ActivityFeed.js +11 -10
  176. package/dist/components/ActivityFeed.mjs +9 -8
  177. package/dist/components/Alert.js +5 -3
  178. package/dist/components/Alert.mjs +3 -1
  179. package/dist/components/Anchor.js +5 -4
  180. package/dist/components/Anchor.mjs +2 -1
  181. package/dist/components/AnchorLink.js +5 -4
  182. package/dist/components/AnchorLink.mjs +3 -2
  183. package/dist/components/AreaChart.d.mts +29 -2
  184. package/dist/components/AreaChart.d.ts +29 -2
  185. package/dist/components/AreaChart.js +5 -4
  186. package/dist/components/AreaChart.mjs +3 -2
  187. package/dist/components/Avatar.js +4 -3
  188. package/dist/components/Avatar.mjs +2 -1
  189. package/dist/components/BackTop.js +4 -3
  190. package/dist/components/BackTop.mjs +2 -1
  191. package/dist/components/Badge.d.mts +10 -93
  192. package/dist/components/Badge.d.ts +10 -93
  193. package/dist/components/Badge.js +4 -3
  194. package/dist/components/Badge.mjs +2 -1
  195. package/dist/components/BarChart.d.mts +58 -1
  196. package/dist/components/BarChart.d.ts +58 -1
  197. package/dist/components/BarChart.js +5 -4
  198. package/dist/components/BarChart.mjs +3 -2
  199. package/dist/components/Breadcrumb.js +5 -4
  200. package/dist/components/Breadcrumb.mjs +2 -1
  201. package/dist/components/BreadcrumbItem.d.mts +8 -6
  202. package/dist/components/BreadcrumbItem.d.ts +8 -6
  203. package/dist/components/BreadcrumbItem.js +5 -4
  204. package/dist/components/BreadcrumbItem.mjs +3 -2
  205. package/dist/components/Button.d.mts +4 -4
  206. package/dist/components/Button.d.ts +4 -4
  207. package/dist/components/Button.js +4 -3
  208. package/dist/components/Button.mjs +2 -1
  209. package/dist/components/Card.js +4 -3
  210. package/dist/components/Card.mjs +2 -1
  211. package/dist/components/Carousel.js +4 -3
  212. package/dist/components/Carousel.mjs +2 -1
  213. package/dist/components/ChartAxis.js +1 -0
  214. package/dist/components/ChartAxis.mjs +1 -0
  215. package/dist/components/ChartCanvas.js +1 -0
  216. package/dist/components/ChartCanvas.mjs +1 -0
  217. package/dist/components/ChartGrid.js +1 -0
  218. package/dist/components/ChartGrid.mjs +1 -0
  219. package/dist/components/ChartLegend.d.mts +1 -1
  220. package/dist/components/ChartLegend.d.ts +1 -1
  221. package/dist/components/ChartLegend.js +1 -0
  222. package/dist/components/ChartLegend.mjs +1 -0
  223. package/dist/components/ChartSeries.js +1 -0
  224. package/dist/components/ChartSeries.mjs +1 -0
  225. package/dist/components/ChartTooltip.js +1 -0
  226. package/dist/components/ChartTooltip.mjs +1 -0
  227. package/dist/components/ChatWindow.js +8 -7
  228. package/dist/components/ChatWindow.mjs +6 -5
  229. package/dist/components/Checkbox.js +4 -3
  230. package/dist/components/Checkbox.mjs +2 -1
  231. package/dist/components/CheckboxGroup.js +1 -0
  232. package/dist/components/CheckboxGroup.mjs +1 -0
  233. package/dist/components/Code.js +4 -3
  234. package/dist/components/Code.mjs +2 -1
  235. package/dist/components/Col.d.mts +8 -28
  236. package/dist/components/Col.d.ts +8 -28
  237. package/dist/components/Col.js +4 -3
  238. package/dist/components/Col.mjs +3 -2
  239. package/dist/components/Collapse.js +5 -4
  240. package/dist/components/Collapse.mjs +2 -1
  241. package/dist/components/CollapsePanel.js +5 -4
  242. package/dist/components/CollapsePanel.mjs +3 -2
  243. package/dist/components/CommentThread.js +9 -8
  244. package/dist/components/CommentThread.mjs +7 -6
  245. package/dist/components/ConfigProvider.js +1 -0
  246. package/dist/components/ConfigProvider.mjs +1 -0
  247. package/dist/components/Container.js +1 -0
  248. package/dist/components/Container.mjs +1 -0
  249. package/dist/components/Content.js +4 -3
  250. package/dist/components/Content.mjs +2 -1
  251. package/dist/components/CropUpload.d.mts +97 -0
  252. package/dist/components/CropUpload.d.ts +97 -0
  253. package/dist/components/CropUpload.js +20 -0
  254. package/dist/components/CropUpload.mjs +5 -0
  255. package/dist/components/DataTableWithToolbar.d.mts +2 -2
  256. package/dist/components/DataTableWithToolbar.d.ts +2 -2
  257. package/dist/components/DataTableWithToolbar.js +9 -11
  258. package/dist/components/DataTableWithToolbar.mjs +7 -9
  259. package/dist/components/DatePicker.js +4 -3
  260. package/dist/components/DatePicker.mjs +2 -1
  261. package/dist/components/Descriptions.d.mts +2 -2
  262. package/dist/components/Descriptions.d.ts +2 -2
  263. package/dist/components/Descriptions.js +4 -3
  264. package/dist/components/Descriptions.mjs +2 -1
  265. package/dist/components/Divider.d.mts +10 -18
  266. package/dist/components/Divider.d.ts +10 -18
  267. package/dist/components/Divider.js +4 -3
  268. package/dist/components/Divider.mjs +2 -1
  269. package/dist/components/DonutChart.d.mts +66 -0
  270. package/dist/components/DonutChart.d.ts +66 -0
  271. package/dist/components/DonutChart.js +6 -5
  272. package/dist/components/DonutChart.mjs +4 -3
  273. package/dist/components/Drawer.d.mts +2 -2
  274. package/dist/components/Drawer.d.ts +2 -2
  275. package/dist/components/Drawer.js +4 -3
  276. package/dist/components/Drawer.mjs +2 -1
  277. package/dist/components/Dropdown.d.mts +18 -1
  278. package/dist/components/Dropdown.d.ts +18 -1
  279. package/dist/components/Dropdown.js +5 -4
  280. package/dist/components/Dropdown.mjs +2 -1
  281. package/dist/components/DropdownItem.js +5 -4
  282. package/dist/components/DropdownItem.mjs +3 -2
  283. package/dist/components/DropdownMenu.js +1 -0
  284. package/dist/components/DropdownMenu.mjs +1 -0
  285. package/dist/components/Footer.js +4 -3
  286. package/dist/components/Footer.mjs +2 -1
  287. package/dist/components/Form.js +5 -4
  288. package/dist/components/Form.mjs +2 -1
  289. package/dist/components/FormItem.js +5 -4
  290. package/dist/components/FormItem.mjs +3 -2
  291. package/dist/components/FormWizard.d.mts +17 -7
  292. package/dist/components/FormWizard.d.ts +17 -7
  293. package/dist/components/FormWizard.js +8 -7
  294. package/dist/components/FormWizard.mjs +6 -5
  295. package/dist/components/Header.js +4 -3
  296. package/dist/components/Header.mjs +2 -1
  297. package/dist/components/Icon.d.mts +1 -33
  298. package/dist/components/Icon.d.ts +1 -33
  299. package/dist/components/Icon.js +4 -3
  300. package/dist/components/Icon.mjs +2 -1
  301. package/dist/components/Image.d.mts +119 -0
  302. package/dist/components/Image.d.ts +119 -0
  303. package/dist/components/Image.js +22 -0
  304. package/dist/components/Image.mjs +3 -0
  305. package/dist/components/ImageCropper.d.mts +105 -0
  306. package/dist/components/ImageCropper.d.ts +105 -0
  307. package/dist/components/ImageCropper.js +17 -0
  308. package/dist/components/ImageCropper.mjs +2 -0
  309. package/dist/components/ImageGroup.d.mts +30 -0
  310. package/dist/components/ImageGroup.d.ts +30 -0
  311. package/dist/components/ImageGroup.js +22 -0
  312. package/dist/components/ImageGroup.mjs +3 -0
  313. package/dist/components/ImagePreview.d.mts +97 -0
  314. package/dist/components/ImagePreview.d.ts +97 -0
  315. package/dist/components/ImagePreview.js +17 -0
  316. package/dist/components/ImagePreview.mjs +5 -0
  317. package/dist/components/Input.d.mts +43 -70
  318. package/dist/components/Input.d.ts +43 -70
  319. package/dist/components/Input.js +4 -3
  320. package/dist/components/Input.mjs +2 -1
  321. package/dist/components/Layout.js +4 -3
  322. package/dist/components/Layout.mjs +2 -1
  323. package/dist/components/LineChart.d.mts +37 -1
  324. package/dist/components/LineChart.d.ts +37 -1
  325. package/dist/components/LineChart.js +5 -4
  326. package/dist/components/LineChart.mjs +3 -2
  327. package/dist/components/Link.d.mts +11 -83
  328. package/dist/components/Link.d.ts +11 -83
  329. package/dist/components/Link.js +4 -3
  330. package/dist/components/Link.mjs +2 -1
  331. package/dist/components/List.js +4 -3
  332. package/dist/components/List.mjs +2 -1
  333. package/dist/components/Loading.d.mts +5 -86
  334. package/dist/components/Loading.d.ts +5 -86
  335. package/dist/components/Loading.js +4 -3
  336. package/dist/components/Loading.mjs +2 -1
  337. package/dist/components/Menu.d.mts +4 -4
  338. package/dist/components/Menu.d.ts +4 -4
  339. package/dist/components/Menu.js +5 -4
  340. package/dist/components/Menu.mjs +2 -1
  341. package/dist/components/MenuItem.js +5 -4
  342. package/dist/components/MenuItem.mjs +3 -2
  343. package/dist/components/MenuItemGroup.js +1 -0
  344. package/dist/components/MenuItemGroup.mjs +1 -0
  345. package/dist/components/Message.d.mts +0 -18
  346. package/dist/components/Message.d.ts +0 -18
  347. package/dist/components/Message.js +6 -4
  348. package/dist/components/Message.mjs +3 -1
  349. package/dist/components/Modal.d.mts +2 -2
  350. package/dist/components/Modal.d.ts +2 -2
  351. package/dist/components/Modal.js +5 -4
  352. package/dist/components/Modal.mjs +3 -2
  353. package/dist/components/Notification.d.mts +0 -15
  354. package/dist/components/Notification.d.ts +0 -15
  355. package/dist/components/Notification.js +6 -4
  356. package/dist/components/Notification.mjs +3 -1
  357. package/dist/components/NotificationCenter.js +11 -10
  358. package/dist/components/NotificationCenter.mjs +9 -8
  359. package/dist/components/Pagination.js +4 -3
  360. package/dist/components/Pagination.mjs +2 -1
  361. package/dist/components/PieChart.d.mts +45 -0
  362. package/dist/components/PieChart.d.ts +45 -0
  363. package/dist/components/PieChart.js +5 -4
  364. package/dist/components/PieChart.mjs +3 -2
  365. package/dist/components/Popconfirm.d.mts +26 -96
  366. package/dist/components/Popconfirm.d.ts +26 -96
  367. package/dist/components/Popconfirm.js +5 -3
  368. package/dist/components/Popconfirm.mjs +3 -1
  369. package/dist/components/Popover.d.mts +20 -72
  370. package/dist/components/Popover.d.ts +20 -72
  371. package/dist/components/Popover.js +5 -3
  372. package/dist/components/Popover.mjs +3 -1
  373. package/dist/components/Progress.d.mts +6 -130
  374. package/dist/components/Progress.d.ts +6 -130
  375. package/dist/components/Progress.js +4 -3
  376. package/dist/components/Progress.mjs +2 -1
  377. package/dist/components/RadarChart.d.mts +71 -8
  378. package/dist/components/RadarChart.d.ts +71 -8
  379. package/dist/components/RadarChart.js +6 -4
  380. package/dist/components/RadarChart.mjs +4 -2
  381. package/dist/components/Radio.js +5 -4
  382. package/dist/components/Radio.mjs +3 -2
  383. package/dist/components/RadioGroup.js +5 -4
  384. package/dist/components/RadioGroup.mjs +2 -1
  385. package/dist/components/Row.js +4 -3
  386. package/dist/components/Row.mjs +2 -1
  387. package/dist/components/ScatterChart.d.mts +45 -0
  388. package/dist/components/ScatterChart.d.ts +45 -0
  389. package/dist/components/ScatterChart.js +5 -4
  390. package/dist/components/ScatterChart.mjs +3 -2
  391. package/dist/components/Select.js +4 -3
  392. package/dist/components/Select.mjs +2 -1
  393. package/dist/components/Sidebar.js +4 -3
  394. package/dist/components/Sidebar.mjs +2 -1
  395. package/dist/components/Skeleton.d.mts +3 -79
  396. package/dist/components/Skeleton.d.ts +3 -79
  397. package/dist/components/Skeleton.js +4 -3
  398. package/dist/components/Skeleton.mjs +2 -1
  399. package/dist/components/Slider.js +4 -3
  400. package/dist/components/Slider.mjs +2 -1
  401. package/dist/components/Space.d.mts +2 -7
  402. package/dist/components/Space.d.ts +2 -7
  403. package/dist/components/Space.js +4 -3
  404. package/dist/components/Space.mjs +2 -1
  405. package/dist/components/Steps.js +5 -4
  406. package/dist/components/Steps.mjs +2 -1
  407. package/dist/components/StepsItem.js +5 -4
  408. package/dist/components/StepsItem.mjs +3 -2
  409. package/dist/components/SubMenu.js +5 -4
  410. package/dist/components/SubMenu.mjs +3 -2
  411. package/dist/components/Switch.js +4 -3
  412. package/dist/components/Switch.mjs +2 -1
  413. package/dist/components/TabPane.d.mts +8 -6
  414. package/dist/components/TabPane.d.ts +8 -6
  415. package/dist/components/TabPane.js +5 -4
  416. package/dist/components/TabPane.mjs +3 -2
  417. package/dist/components/Table.d.mts +1 -1
  418. package/dist/components/Table.d.ts +1 -1
  419. package/dist/components/Table.js +4 -3
  420. package/dist/components/Table.mjs +2 -1
  421. package/dist/components/Tabs.js +5 -4
  422. package/dist/components/Tabs.mjs +2 -1
  423. package/dist/components/Tag.d.mts +4 -4
  424. package/dist/components/Tag.d.ts +4 -4
  425. package/dist/components/Tag.js +4 -3
  426. package/dist/components/Tag.mjs +2 -1
  427. package/dist/components/Text.d.mts +2 -12
  428. package/dist/components/Text.d.ts +2 -12
  429. package/dist/components/Text.js +4 -3
  430. package/dist/components/Text.mjs +2 -1
  431. package/dist/components/Textarea.js +4 -3
  432. package/dist/components/Textarea.mjs +2 -1
  433. package/dist/components/TimePicker.js +4 -3
  434. package/dist/components/TimePicker.mjs +2 -1
  435. package/dist/components/Timeline.js +4 -3
  436. package/dist/components/Timeline.mjs +2 -1
  437. package/dist/components/Tooltip.d.mts +16 -58
  438. package/dist/components/Tooltip.d.ts +16 -58
  439. package/dist/components/Tooltip.js +5 -3
  440. package/dist/components/Tooltip.mjs +3 -1
  441. package/dist/components/Tree.js +4 -3
  442. package/dist/components/Tree.mjs +2 -1
  443. package/dist/components/Upload.js +4 -3
  444. package/dist/components/Upload.mjs +2 -1
  445. package/dist/index.d.mts +9 -4
  446. package/dist/index.d.ts +9 -4
  447. package/dist/index.js +225 -195
  448. package/dist/index.mjs +90 -79
  449. package/package.json +2 -2
  450. package/dist/chunk-5MKAKQK6.mjs +0 -124
  451. package/dist/chunk-6WIVOHTB.mjs +0 -157
  452. package/dist/chunk-7SCADPTJ.mjs +0 -79
  453. package/dist/chunk-BXFYOGMO.js +0 -59
  454. package/dist/chunk-D45QLF65.js +0 -270
  455. package/dist/chunk-H6CUKJYY.mjs +0 -300
  456. package/dist/chunk-J7OYLV6I.mjs +0 -447
  457. package/dist/chunk-K6NKVCEO.js +0 -57
  458. package/dist/chunk-PQQUAUFM.mjs +0 -54
  459. package/dist/chunk-QJWFKTRQ.js +0 -160
  460. package/dist/chunk-R3YK5LUH.mjs +0 -267
  461. package/dist/chunk-RN25EUD2.js +0 -303
  462. package/dist/chunk-RUD3FPP2.js +0 -301
  463. package/dist/chunk-T3TN26BD.mjs +0 -56
  464. package/dist/chunk-U6JCAP2C.js +0 -188
  465. package/dist/chunk-W2CCYPSO.mjs +0 -185
  466. package/dist/chunk-WH6OTVYF.js +0 -450
  467. package/dist/chunk-XLSGZUPU.mjs +0 -298
  468. package/dist/chunk-Y6C455RB.js +0 -81
  469. package/dist/chunk-YFMXWX6H.js +0 -127
@@ -0,0 +1,373 @@
1
+ 'use strict';
2
+
3
+ var vue = require('vue');
4
+ var tigercatCore = require('@expcat/tigercat-core');
5
+
6
+ // src/components/ImageCropper.ts
7
+ var ImageCropper = vue.defineComponent({
8
+ name: "TigerImageCropper",
9
+ inheritAttrs: false,
10
+ props: {
11
+ src: { type: String, required: true },
12
+ aspectRatio: { type: Number, default: void 0 },
13
+ minWidth: { type: Number, default: 20 },
14
+ minHeight: { type: Number, default: 20 },
15
+ outputType: {
16
+ type: String,
17
+ default: "image/png"
18
+ },
19
+ quality: { type: Number, default: 0.92 },
20
+ guides: { type: Boolean, default: true },
21
+ className: { type: String, default: void 0 },
22
+ style: {
23
+ type: Object,
24
+ default: void 0
25
+ }
26
+ },
27
+ emits: ["crop-change", "ready"],
28
+ setup(props, { emit, attrs, expose }) {
29
+ const containerRef = vue.ref(null);
30
+ const imageRef = vue.ref(null);
31
+ const imageLoaded = vue.ref(false);
32
+ const displayWidth = vue.ref(0);
33
+ const displayHeight = vue.ref(0);
34
+ const cropRect = vue.ref({ x: 0, y: 0, width: 0, height: 0 });
35
+ const dragMode = vue.ref("none");
36
+ const activeHandle = vue.ref(null);
37
+ const dragStartPos = vue.ref({ x: 0, y: 0 });
38
+ const dragStartRect = vue.ref({ x: 0, y: 0, width: 0, height: 0 });
39
+ const loadImage = () => {
40
+ const img = new window.Image();
41
+ img.crossOrigin = "anonymous";
42
+ img.onload = () => {
43
+ imageRef.value = img;
44
+ if (containerRef.value) {
45
+ const containerW = containerRef.value.clientWidth;
46
+ const containerH = containerRef.value.clientHeight || 400;
47
+ const ratio = Math.min(containerW / img.naturalWidth, containerH / img.naturalHeight, 1);
48
+ displayWidth.value = img.naturalWidth * ratio;
49
+ displayHeight.value = img.naturalHeight * ratio;
50
+ } else {
51
+ displayWidth.value = img.naturalWidth;
52
+ displayHeight.value = img.naturalHeight;
53
+ }
54
+ cropRect.value = tigercatCore.getInitialCropRect(
55
+ displayWidth.value,
56
+ displayHeight.value,
57
+ props.aspectRatio
58
+ );
59
+ imageLoaded.value = true;
60
+ emit("ready");
61
+ };
62
+ img.src = props.src;
63
+ };
64
+ vue.watch(
65
+ () => props.src,
66
+ () => {
67
+ imageLoaded.value = false;
68
+ loadImage();
69
+ }
70
+ );
71
+ vue.onMounted(() => {
72
+ loadImage();
73
+ });
74
+ const handleMouseDown = (e, mode, handle) => {
75
+ e.preventDefault();
76
+ e.stopPropagation();
77
+ dragMode.value = mode;
78
+ activeHandle.value = handle || null;
79
+ dragStartPos.value = { x: e.clientX, y: e.clientY };
80
+ dragStartRect.value = { ...cropRect.value };
81
+ const onMouseMove = (ev) => {
82
+ const dx = ev.clientX - dragStartPos.value.x;
83
+ const dy = ev.clientY - dragStartPos.value.y;
84
+ if (dragMode.value === "move") {
85
+ cropRect.value = tigercatCore.moveCropRect(
86
+ dragStartRect.value,
87
+ dx,
88
+ dy,
89
+ displayWidth.value,
90
+ displayHeight.value
91
+ );
92
+ } else if (dragMode.value === "resize" && activeHandle.value) {
93
+ cropRect.value = tigercatCore.resizeCropRect(
94
+ dragStartRect.value,
95
+ activeHandle.value,
96
+ dx,
97
+ dy,
98
+ displayWidth.value,
99
+ displayHeight.value,
100
+ props.aspectRatio,
101
+ props.minWidth,
102
+ props.minHeight
103
+ );
104
+ }
105
+ emit("crop-change", cropRect.value);
106
+ };
107
+ const onMouseUp = () => {
108
+ dragMode.value = "none";
109
+ activeHandle.value = null;
110
+ document.removeEventListener("mousemove", onMouseMove);
111
+ document.removeEventListener("mouseup", onMouseUp);
112
+ };
113
+ document.addEventListener("mousemove", onMouseMove);
114
+ document.addEventListener("mouseup", onMouseUp);
115
+ };
116
+ const handleTouchStart = (e, mode, handle) => {
117
+ if (e.touches.length !== 1) return;
118
+ e.preventDefault();
119
+ e.stopPropagation();
120
+ const touch = e.touches[0];
121
+ dragMode.value = mode;
122
+ activeHandle.value = handle || null;
123
+ dragStartPos.value = { x: touch.clientX, y: touch.clientY };
124
+ dragStartRect.value = { ...cropRect.value };
125
+ const onTouchMove = (ev) => {
126
+ if (ev.touches.length !== 1) return;
127
+ const t = ev.touches[0];
128
+ const dx = t.clientX - dragStartPos.value.x;
129
+ const dy = t.clientY - dragStartPos.value.y;
130
+ if (dragMode.value === "move") {
131
+ cropRect.value = tigercatCore.moveCropRect(
132
+ dragStartRect.value,
133
+ dx,
134
+ dy,
135
+ displayWidth.value,
136
+ displayHeight.value
137
+ );
138
+ } else if (dragMode.value === "resize" && activeHandle.value) {
139
+ cropRect.value = tigercatCore.resizeCropRect(
140
+ dragStartRect.value,
141
+ activeHandle.value,
142
+ dx,
143
+ dy,
144
+ displayWidth.value,
145
+ displayHeight.value,
146
+ props.aspectRatio,
147
+ props.minWidth,
148
+ props.minHeight
149
+ );
150
+ }
151
+ emit("crop-change", cropRect.value);
152
+ };
153
+ const onTouchEnd = () => {
154
+ dragMode.value = "none";
155
+ activeHandle.value = null;
156
+ document.removeEventListener("touchmove", onTouchMove);
157
+ document.removeEventListener("touchend", onTouchEnd);
158
+ };
159
+ document.addEventListener("touchmove", onTouchMove, { passive: false });
160
+ document.addEventListener("touchend", onTouchEnd);
161
+ };
162
+ const getCropResult = () => {
163
+ return new Promise((resolve, reject) => {
164
+ if (!imageRef.value) {
165
+ reject(new Error("Image not loaded"));
166
+ return;
167
+ }
168
+ const { canvas, dataUrl } = tigercatCore.cropCanvas(
169
+ imageRef.value,
170
+ cropRect.value,
171
+ displayWidth.value,
172
+ displayHeight.value,
173
+ props.outputType,
174
+ props.quality
175
+ );
176
+ canvas.toBlob(
177
+ (blob) => {
178
+ if (blob) {
179
+ resolve({ canvas, blob, dataUrl, cropRect: { ...cropRect.value } });
180
+ } else {
181
+ reject(new Error("Failed to create blob"));
182
+ }
183
+ },
184
+ props.outputType,
185
+ props.quality
186
+ );
187
+ });
188
+ };
189
+ expose({ getCropResult });
190
+ const containerClasses = vue.computed(
191
+ () => tigercatCore.classNames(
192
+ tigercatCore.imageCropperContainerClasses,
193
+ props.className,
194
+ tigercatCore.coerceClassValue(attrs.class)
195
+ )
196
+ );
197
+ const containerStyle = vue.computed(
198
+ () => tigercatCore.mergeStyleValues(attrs.style, props.style)
199
+ );
200
+ return () => {
201
+ const forwardedAttrs = Object.fromEntries(
202
+ Object.entries(attrs).filter(([key]) => key !== "class" && key !== "style")
203
+ );
204
+ if (!imageLoaded.value) {
205
+ return vue.h(
206
+ "div",
207
+ {
208
+ ...forwardedAttrs,
209
+ ref: containerRef,
210
+ class: tigercatCore.classNames(containerClasses.value, "flex items-center justify-center"),
211
+ style: Object.assign({}, containerStyle.value, {
212
+ minHeight: "200px"
213
+ }),
214
+ role: "img",
215
+ "aria-label": "Loading image for cropping"
216
+ },
217
+ [
218
+ vue.h("div", {
219
+ class: "w-8 h-8 border-2 border-white/30 border-t-white rounded-full animate-spin"
220
+ })
221
+ ]
222
+ );
223
+ }
224
+ const cr = cropRect.value;
225
+ const img = vue.h("img", {
226
+ src: props.src,
227
+ class: tigercatCore.imageCropperImgClasses,
228
+ style: {
229
+ width: `${displayWidth.value}px`,
230
+ height: `${displayHeight.value}px`
231
+ },
232
+ draggable: false,
233
+ alt: "Image to crop"
234
+ });
235
+ const mask = vue.h(
236
+ "svg",
237
+ {
238
+ class: tigercatCore.imageCropperMaskClasses,
239
+ width: displayWidth.value,
240
+ height: displayHeight.value,
241
+ xmlns: "http://www.w3.org/2000/svg"
242
+ },
243
+ [
244
+ vue.h("defs", null, [
245
+ vue.h("mask", { id: "crop-mask" }, [
246
+ vue.h("rect", {
247
+ width: displayWidth.value,
248
+ height: displayHeight.value,
249
+ fill: "white"
250
+ }),
251
+ vue.h("rect", {
252
+ x: cr.x,
253
+ y: cr.y,
254
+ width: cr.width,
255
+ height: cr.height,
256
+ fill: "black"
257
+ })
258
+ ])
259
+ ]),
260
+ vue.h("rect", {
261
+ width: displayWidth.value,
262
+ height: displayHeight.value,
263
+ fill: "var(--tiger-image-cropper-mask, rgba(0,0,0,0.55))",
264
+ mask: "url(#crop-mask)"
265
+ })
266
+ ]
267
+ );
268
+ const selection = vue.h("div", {
269
+ class: tigercatCore.imageCropperSelectionClasses,
270
+ style: {
271
+ left: `${cr.x}px`,
272
+ top: `${cr.y}px`,
273
+ width: `${cr.width}px`,
274
+ height: `${cr.height}px`
275
+ }
276
+ });
277
+ const dragArea = vue.h("div", {
278
+ class: tigercatCore.imageCropperDragAreaClasses,
279
+ style: {
280
+ left: `${cr.x}px`,
281
+ top: `${cr.y}px`,
282
+ width: `${cr.width}px`,
283
+ height: `${cr.height}px`
284
+ },
285
+ onMousedown: (e) => handleMouseDown(e, "move"),
286
+ onTouchstart: (e) => handleTouchStart(e, "move")
287
+ });
288
+ const guideLines = props.guides ? [
289
+ // Horizontal lines
290
+ vue.h("div", {
291
+ class: tigercatCore.imageCropperGuideClasses,
292
+ style: {
293
+ left: `${cr.x}px`,
294
+ top: `${cr.y + cr.height / 3}px`,
295
+ width: `${cr.width}px`,
296
+ height: "0px",
297
+ borderTopWidth: "1px",
298
+ borderTopStyle: "dashed"
299
+ }
300
+ }),
301
+ vue.h("div", {
302
+ class: tigercatCore.imageCropperGuideClasses,
303
+ style: {
304
+ left: `${cr.x}px`,
305
+ top: `${cr.y + cr.height * 2 / 3}px`,
306
+ width: `${cr.width}px`,
307
+ height: "0px",
308
+ borderTopWidth: "1px",
309
+ borderTopStyle: "dashed"
310
+ }
311
+ }),
312
+ // Vertical lines
313
+ vue.h("div", {
314
+ class: tigercatCore.imageCropperGuideClasses,
315
+ style: {
316
+ left: `${cr.x + cr.width / 3}px`,
317
+ top: `${cr.y}px`,
318
+ width: "0px",
319
+ height: `${cr.height}px`,
320
+ borderLeftWidth: "1px",
321
+ borderLeftStyle: "dashed"
322
+ }
323
+ }),
324
+ vue.h("div", {
325
+ class: tigercatCore.imageCropperGuideClasses,
326
+ style: {
327
+ left: `${cr.x + cr.width * 2 / 3}px`,
328
+ top: `${cr.y}px`,
329
+ width: "0px",
330
+ height: `${cr.height}px`,
331
+ borderLeftWidth: "1px",
332
+ borderLeftStyle: "dashed"
333
+ }
334
+ })
335
+ ] : [];
336
+ const handles = tigercatCore.CROP_HANDLES.map((handle) => {
337
+ const pos = {};
338
+ if (handle.includes("n")) pos.top = `${cr.y}px`;
339
+ if (handle.includes("s")) pos.top = `${cr.y + cr.height}px`;
340
+ if (handle === "e" || handle === "w") pos.top = `${cr.y + cr.height / 2}px`;
341
+ if (handle.includes("w")) pos.left = `${cr.x}px`;
342
+ if (handle.includes("e")) pos.left = `${cr.x + cr.width}px`;
343
+ if (handle === "n" || handle === "s") pos.left = `${cr.x + cr.width / 2}px`;
344
+ return vue.h("div", {
345
+ class: tigercatCore.getCropperHandleClasses(handle),
346
+ style: pos,
347
+ onMousedown: (e) => handleMouseDown(e, "resize", handle),
348
+ onTouchstart: (e) => handleTouchStart(e, "resize", handle)
349
+ });
350
+ });
351
+ return vue.h(
352
+ "div",
353
+ {
354
+ ...forwardedAttrs,
355
+ ref: containerRef,
356
+ class: containerClasses.value,
357
+ style: Object.assign({}, containerStyle.value, {
358
+ width: `${displayWidth.value}px`,
359
+ height: `${displayHeight.value}px`
360
+ }),
361
+ role: "application",
362
+ "aria-label": "Image cropper",
363
+ "aria-roledescription": "image cropper"
364
+ },
365
+ [img, mask, selection, dragArea, ...guideLines, ...handles]
366
+ );
367
+ };
368
+ }
369
+ });
370
+ var ImageCropper_default = ImageCropper;
371
+
372
+ exports.ImageCropper = ImageCropper;
373
+ exports.ImageCropper_default = ImageCropper_default;
@@ -0,0 +1,197 @@
1
+ 'use strict';
2
+
3
+ var chunk7AFJ7TKW_js = require('./chunk-7AFJ7TKW.js');
4
+ var chunkPNKVD2UK_js = require('./chunk-PNKVD2UK.js');
5
+ var vue = require('vue');
6
+ var tigercatCore = require('@expcat/tigercat-core');
7
+
8
+ var IMAGE_GROUP_INJECTION_KEY = "tiger-image-group";
9
+ var Image = vue.defineComponent({
10
+ name: "TigerImage",
11
+ inheritAttrs: false,
12
+ props: {
13
+ src: { type: String, default: void 0 },
14
+ alt: { type: String, default: "" },
15
+ width: { type: [Number, String], default: void 0 },
16
+ height: { type: [Number, String], default: void 0 },
17
+ fit: { type: String, default: "cover" },
18
+ fallbackSrc: { type: String, default: void 0 },
19
+ preview: { type: Boolean, default: true },
20
+ lazy: { type: Boolean, default: false },
21
+ className: { type: String, default: void 0 },
22
+ style: {
23
+ type: Object,
24
+ default: void 0
25
+ }
26
+ },
27
+ emits: ["load", "error", "preview-visible-change"],
28
+ setup(props, { slots, emit, attrs }) {
29
+ const loading = vue.ref(true);
30
+ const error = vue.ref(false);
31
+ const actualSrc = vue.ref(props.lazy ? "" : props.src);
32
+ const containerRef = vue.ref(null);
33
+ const previewVisible = vue.ref(false);
34
+ let observer = null;
35
+ const group = vue.inject(IMAGE_GROUP_INJECTION_KEY, null);
36
+ const registeredIndex = vue.ref(-1);
37
+ vue.onMounted(() => {
38
+ if (group && props.src) {
39
+ registeredIndex.value = group.register(props.src);
40
+ }
41
+ if (props.lazy && containerRef.value) {
42
+ observer = new IntersectionObserver(
43
+ (entries) => {
44
+ if (entries[0]?.isIntersecting) {
45
+ actualSrc.value = props.src;
46
+ observer?.disconnect();
47
+ observer = null;
48
+ }
49
+ },
50
+ { threshold: 0.01 }
51
+ );
52
+ observer.observe(containerRef.value);
53
+ }
54
+ });
55
+ vue.onBeforeUnmount(() => {
56
+ observer?.disconnect();
57
+ if (group && props.src) {
58
+ group.unregister(props.src);
59
+ }
60
+ });
61
+ const handleLoad = () => {
62
+ loading.value = false;
63
+ error.value = false;
64
+ emit("load");
65
+ };
66
+ const handleError = () => {
67
+ loading.value = false;
68
+ error.value = true;
69
+ if (props.fallbackSrc && actualSrc.value !== props.fallbackSrc) {
70
+ actualSrc.value = props.fallbackSrc;
71
+ error.value = false;
72
+ loading.value = true;
73
+ }
74
+ emit("error");
75
+ };
76
+ const handleClick = () => {
77
+ if (!props.preview) return;
78
+ if (group) {
79
+ group.openPreview(registeredIndex.value >= 0 ? registeredIndex.value : 0);
80
+ } else {
81
+ previewVisible.value = true;
82
+ emit("preview-visible-change", true);
83
+ }
84
+ };
85
+ const containerClasses = vue.computed(
86
+ () => tigercatCore.classNames(
87
+ tigercatCore.imageBaseClasses,
88
+ props.preview && tigercatCore.imagePreviewCursorClass,
89
+ props.className,
90
+ tigercatCore.coerceClassValue(attrs.class)
91
+ )
92
+ );
93
+ const containerStyle = vue.computed(() => {
94
+ const base = {};
95
+ const w = tigercatCore.toCSSSize(props.width);
96
+ const ht = tigercatCore.toCSSSize(props.height);
97
+ if (w) base.width = w;
98
+ if (ht) base.height = ht;
99
+ return tigercatCore.mergeStyleValues(attrs.style, props.style, base);
100
+ });
101
+ const imgClasses = vue.computed(() => tigercatCore.getImageImgClasses(props.fit));
102
+ return () => {
103
+ const forwardedAttrs = Object.fromEntries(
104
+ Object.entries(attrs).filter(([key]) => key !== "class" && key !== "style")
105
+ );
106
+ let content;
107
+ if (error.value && !props.fallbackSrc) {
108
+ content = slots.error ? slots.error() : vue.h("div", { class: tigercatCore.imageErrorClasses }, [
109
+ vue.h(
110
+ "svg",
111
+ {
112
+ class: "w-8 h-8",
113
+ xmlns: "http://www.w3.org/2000/svg",
114
+ fill: "none",
115
+ viewBox: "0 0 24 24",
116
+ stroke: "currentColor"
117
+ },
118
+ [
119
+ vue.h("path", {
120
+ "stroke-linecap": "round",
121
+ "stroke-linejoin": "round",
122
+ "stroke-width": "1.5",
123
+ d: tigercatCore.imageErrorIconPath
124
+ })
125
+ ]
126
+ )
127
+ ]);
128
+ } else if (loading.value && !actualSrc.value) {
129
+ content = slots.placeholder ? slots.placeholder() : vue.h("div", { class: tigercatCore.imageLoadingClasses }, [
130
+ vue.h(
131
+ "svg",
132
+ {
133
+ class: "w-8 h-8",
134
+ xmlns: "http://www.w3.org/2000/svg",
135
+ fill: "none",
136
+ viewBox: "0 0 24 24",
137
+ stroke: "currentColor"
138
+ },
139
+ [
140
+ vue.h("path", {
141
+ "stroke-linecap": "round",
142
+ "stroke-linejoin": "round",
143
+ "stroke-width": "1.5",
144
+ d: tigercatCore.imageErrorIconPath
145
+ })
146
+ ]
147
+ )
148
+ ]);
149
+ } else {
150
+ content = vue.h("img", {
151
+ src: actualSrc.value,
152
+ alt: props.alt,
153
+ class: imgClasses.value,
154
+ onLoad: handleLoad,
155
+ onError: handleError
156
+ });
157
+ }
158
+ const previewEl = !group && previewVisible.value && props.src ? (() => {
159
+ const { ImagePreview } = (chunk7AFJ7TKW_js.init_ImagePreview(), chunkPNKVD2UK_js.__toCommonJS(chunk7AFJ7TKW_js.ImagePreview_exports));
160
+ return vue.h(ImagePreview, {
161
+ visible: previewVisible.value,
162
+ images: [props.src],
163
+ currentIndex: 0,
164
+ "onUpdate:visible": (val) => {
165
+ previewVisible.value = val;
166
+ emit("preview-visible-change", val);
167
+ }
168
+ });
169
+ })() : null;
170
+ return vue.h(
171
+ "div",
172
+ {
173
+ ...forwardedAttrs,
174
+ ref: containerRef,
175
+ class: containerClasses.value,
176
+ style: containerStyle.value,
177
+ role: props.preview ? "button" : void 0,
178
+ tabindex: props.preview ? 0 : void 0,
179
+ "aria-label": props.preview ? `Preview ${props.alt || "image"}` : void 0,
180
+ onClick: handleClick,
181
+ onKeydown: (e) => {
182
+ if (props.preview && (e.key === "Enter" || e.key === " ")) {
183
+ e.preventDefault();
184
+ handleClick();
185
+ }
186
+ }
187
+ },
188
+ [content, previewEl]
189
+ );
190
+ };
191
+ }
192
+ });
193
+ var Image_default = Image;
194
+
195
+ exports.IMAGE_GROUP_INJECTION_KEY = IMAGE_GROUP_INJECTION_KEY;
196
+ exports.Image = Image;
197
+ exports.Image_default = Image_default;
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
- var chunkSF63KE5T_js = require('./chunk-SF63KE5T.js');
4
- var chunk2ONL76L4_js = require('./chunk-2ONL76L4.js');
5
- var chunkCCI3RIZU_js = require('./chunk-CCI3RIZU.js');
6
- var chunkI7GSAVM7_js = require('./chunk-I7GSAVM7.js');
7
- var chunkU65XZCPB_js = require('./chunk-U65XZCPB.js');
3
+ var chunk6FXYRDYH_js = require('./chunk-6FXYRDYH.js');
4
+ var chunkDELTFEEJ_js = require('./chunk-DELTFEEJ.js');
5
+ var chunk2KDSHEZT_js = require('./chunk-2KDSHEZT.js');
6
+ var chunkDUQ7Q2GO_js = require('./chunk-DUQ7Q2GO.js');
7
+ var chunkWPIDP6IG_js = require('./chunk-WPIDP6IG.js');
8
8
  var vue = require('vue');
9
9
  var tigercatCore = require('@expcat/tigercat-core');
10
10
 
@@ -151,7 +151,7 @@ var CommentThread = vue.defineComponent({
151
151
  const ACTION_BTN = `${BTN_BASE} text-gray-400 hover:text-gray-600 font-normal hover:bg-gray-50`;
152
152
  const PRIMARY_BTN = `${BTN_BASE} text-[var(--tiger-primary,#2563eb)] hover:text-[var(--tiger-primary-hover,#1d4ed8)] font-medium hover:bg-[var(--tiger-primary,#2563eb)]/5`;
153
153
  const renderActionButton = (label, key, onClick, active) => vue.h(
154
- chunk2ONL76L4_js.Button,
154
+ chunkDELTFEEJ_js.Button,
155
155
  {
156
156
  key,
157
157
  size: "sm",
@@ -201,7 +201,7 @@ var CommentThread = vue.defineComponent({
201
201
  const actionKey = action.key ?? `${node.id}-action-${index}`;
202
202
  actions.push(
203
203
  vue.h(
204
- chunk2ONL76L4_js.Button,
204
+ chunkDELTFEEJ_js.Button,
205
205
  {
206
206
  key: actionKey,
207
207
  size: "sm",
@@ -230,7 +230,7 @@ var CommentThread = vue.defineComponent({
230
230
  },
231
231
  [
232
232
  vue.h("div", { class: "flex gap-3" }, [
233
- props.showAvatar && node.user ? vue.h(chunkU65XZCPB_js.Avatar, {
233
+ props.showAvatar && node.user ? vue.h(chunkWPIDP6IG_js.Avatar, {
234
234
  size: depth === 1 ? "md" : "sm",
235
235
  src: node.user.avatar,
236
236
  text: node.user.name,
@@ -239,23 +239,23 @@ var CommentThread = vue.defineComponent({
239
239
  vue.h("div", { class: "flex-1 min-w-0" }, [
240
240
  vue.h("div", { class: "flex items-center gap-2 flex-wrap" }, [
241
241
  node.user?.name ? vue.h(
242
- chunkI7GSAVM7_js.Text,
242
+ chunkDUQ7Q2GO_js.Text,
243
243
  { tag: "span", size: "sm", weight: "bold" },
244
244
  { default: () => node.user?.name }
245
245
  ) : null,
246
246
  node.user?.title ? vue.h(
247
- chunkI7GSAVM7_js.Text,
247
+ chunkDUQ7Q2GO_js.Text,
248
248
  { tag: "span", size: "xs", color: "muted" },
249
249
  { default: () => node.user?.title }
250
250
  ) : null,
251
251
  node.tag ? vue.h(
252
- chunkCCI3RIZU_js.Tag,
252
+ chunk2KDSHEZT_js.Tag,
253
253
  { size: "sm", variant: node.tag.variant ?? "default" },
254
254
  { default: () => node.tag?.label }
255
255
  ) : null,
256
256
  ...(node.tags ?? []).map(
257
257
  (tag, index) => vue.h(
258
- chunkCCI3RIZU_js.Tag,
258
+ chunk2KDSHEZT_js.Tag,
259
259
  {
260
260
  key: `${node.id}-tag-${index}`,
261
261
  size: "sm",
@@ -265,7 +265,7 @@ var CommentThread = vue.defineComponent({
265
265
  )
266
266
  ),
267
267
  node.time ? vue.h(
268
- chunkI7GSAVM7_js.Text,
268
+ chunkDUQ7Q2GO_js.Text,
269
269
  { tag: "span", size: "xs", color: "muted", class: "ml-auto" },
270
270
  { default: () => tigercatCore.formatCommentTime(node.time) }
271
271
  ) : null
@@ -284,7 +284,7 @@ var CommentThread = vue.defineComponent({
284
284
  class: "mt-3 space-y-2 bg-[var(--tiger-surface-muted,#f9fafb)] p-3 rounded-lg"
285
285
  },
286
286
  [
287
- vue.h(chunkSF63KE5T_js.Textarea, {
287
+ vue.h(chunk6FXYRDYH_js.Textarea, {
288
288
  rows: 2,
289
289
  modelValue: replyValue.value,
290
290
  placeholder: props.replyPlaceholder,
@@ -295,7 +295,7 @@ var CommentThread = vue.defineComponent({
295
295
  }),
296
296
  vue.h("div", { class: "flex items-center gap-2 justify-end" }, [
297
297
  vue.h(
298
- chunk2ONL76L4_js.Button,
298
+ chunkDELTFEEJ_js.Button,
299
299
  {
300
300
  size: "sm",
301
301
  variant: "ghost",
@@ -307,7 +307,7 @@ var CommentThread = vue.defineComponent({
307
307
  { default: () => props.cancelReplyText }
308
308
  ),
309
309
  vue.h(
310
- chunk2ONL76L4_js.Button,
310
+ chunkDELTFEEJ_js.Button,
311
311
  {
312
312
  size: "sm",
313
313
  variant: "primary",
@@ -319,7 +319,7 @@ var CommentThread = vue.defineComponent({
319
319
  ]
320
320
  ) : null,
321
321
  hasChildren ? vue.h(
322
- chunk2ONL76L4_js.Button,
322
+ chunkDELTFEEJ_js.Button,
323
323
  {
324
324
  size: "sm",
325
325
  variant: "ghost",
@@ -343,7 +343,7 @@ var CommentThread = vue.defineComponent({
343
343
  (child, index) => renderNode(child, depth + 1, index === visibleChildren.length - 1)
344
344
  ),
345
345
  showLoadMore ? vue.h(
346
- chunk2ONL76L4_js.Button,
346
+ chunkDELTFEEJ_js.Button,
347
347
  {
348
348
  size: "sm",
349
349
  variant: "ghost",
@@ -363,7 +363,7 @@ var CommentThread = vue.defineComponent({
363
363
  const ariaLabel = attrs["aria-label"] ?? (attrs["aria-labelledby"] ? void 0 : "\u8BC4\u8BBA\u7EBF\u7A0B");
364
364
  const children = resolvedNodes.value.length === 0 ? [
365
365
  vue.h(
366
- chunkI7GSAVM7_js.Text,
366
+ chunkDUQ7Q2GO_js.Text,
367
367
  { tag: "div", size: "sm", color: "muted", class: "text-center py-8" },
368
368
  { default: () => props.emptyText }
369
369
  )