@expcat/tigercat-react 0.2.27 → 0.3.69

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 (359) hide show
  1. package/dist/{chunk-6ZC7H22S.mjs → chunk-24U2DQRP.mjs} +1 -1
  2. package/dist/{chunk-324UKFG2.mjs → chunk-2DW3WFZI.mjs} +96 -46
  3. package/dist/{chunk-6MGEGOYJ.js → chunk-2GKTVAAB.js} +24 -18
  4. package/dist/{chunk-5XKYWZZZ.mjs → chunk-3577FW3I.mjs} +59 -89
  5. package/dist/{chunk-GY6D4XS3.js → chunk-3GW3UAKB.js} +40 -98
  6. package/dist/{chunk-VD3IK5XT.mjs → chunk-3M2IG6IN.mjs} +2 -3
  7. package/dist/{chunk-T3GSXTDU.js → chunk-3NE6VZRY.js} +2 -3
  8. package/dist/chunk-3PV2MDST.mjs +95 -0
  9. package/dist/{chunk-36RRHNZD.js → chunk-3T7L3MHX.js} +33 -15
  10. package/dist/{chunk-IY4LEJYF.js → chunk-4PPTEEDI.js} +29 -30
  11. package/dist/{chunk-Z4Z3I74Q.mjs → chunk-4Y7YH32A.mjs} +37 -46
  12. package/dist/chunk-56KTCMRE.mjs +77 -0
  13. package/dist/chunk-5P5M656V.mjs +75 -0
  14. package/dist/{chunk-Z6G4HABF.js → chunk-67FVBKBC.js} +58 -95
  15. package/dist/{chunk-KAEHFMTQ.mjs → chunk-6IH5QPTR.mjs} +121 -144
  16. package/dist/{chunk-C52ZCGYG.mjs → chunk-6PXNWGR5.mjs} +49 -65
  17. package/dist/{chunk-P273E6XE.js → chunk-72MWKUBC.js} +66 -43
  18. package/dist/{chunk-RKBNIEGF.mjs → chunk-763M6U5U.mjs} +106 -66
  19. package/dist/{chunk-RTQNWZN4.mjs → chunk-77PE7OFK.mjs} +3 -5
  20. package/dist/{chunk-KPZTGRNA.js → chunk-7Z64GEMN.js} +51 -55
  21. package/dist/{chunk-3WPKVV4N.js → chunk-A3PYG3D6.js} +6 -39
  22. package/dist/chunk-AQ72JVUG.js +41 -0
  23. package/dist/{chunk-P4EFJIXU.mjs → chunk-AUP3PMDD.mjs} +18 -41
  24. package/dist/{chunk-PUDU34R4.mjs → chunk-AVUXDQYO.mjs} +26 -20
  25. package/dist/{chunk-HUZVBDHV.js → chunk-AY5Z3NIW.js} +15 -20
  26. package/dist/{chunk-67EK62HG.mjs → chunk-B3LRUKXM.mjs} +1 -1
  27. package/dist/chunk-C7UKFKVY.js +137 -0
  28. package/dist/{chunk-TZ26HQAW.js → chunk-CI2WHAT2.js} +18 -38
  29. package/dist/{chunk-2WLSB7K2.mjs → chunk-CYZLGYY4.mjs} +113 -60
  30. package/dist/{chunk-NSGDRTSQ.mjs → chunk-D5KYIQWB.mjs} +6 -39
  31. package/dist/chunk-DQNA57CA.js +57 -0
  32. package/dist/{chunk-6575DOCV.mjs → chunk-DTQZPZSJ.mjs} +3 -3
  33. package/dist/{chunk-7P6PHSFM.js → chunk-DXXYPVJJ.js} +32 -35
  34. package/dist/{chunk-UFAXJVMD.js → chunk-EFLIFXZH.js} +3 -3
  35. package/dist/{chunk-JI7SFMUT.mjs → chunk-EIMAQHCQ.mjs} +29 -80
  36. package/dist/chunk-ENSLMM3L.mjs +68 -0
  37. package/dist/chunk-F24IF2QL.js +74 -0
  38. package/dist/{chunk-KKHKQP6Z.js → chunk-F4Q5QMX2.js} +172 -95
  39. package/dist/{chunk-V2HVHLBY.mjs → chunk-FE7PEZTI.mjs} +19 -39
  40. package/dist/chunk-FLYJVZED.mjs +30 -0
  41. package/dist/chunk-FMF2G6BJ.js +179 -0
  42. package/dist/{chunk-YIF5VX7K.mjs → chunk-FNDPGSEW.mjs} +14 -13
  43. package/dist/{chunk-HQLZL3XQ.mjs → chunk-FPNT7FV5.mjs} +3 -7
  44. package/dist/{chunk-YE2M2HNM.js → chunk-FSDZJD7M.js} +36 -45
  45. package/dist/{chunk-ZYF5GI2Q.js → chunk-GASFXURT.js} +94 -44
  46. package/dist/chunk-GB5G2CJY.js +96 -0
  47. package/dist/{chunk-LXA2YBAO.js → chunk-GJEWBALW.js} +2 -2
  48. package/dist/{chunk-GXTBCX3M.js → chunk-H5MZ54PM.js} +16 -39
  49. package/dist/{chunk-LIJLFLYE.js → chunk-HB2UYJBY.js} +33 -18
  50. package/dist/{chunk-5HUYCSA4.mjs → chunk-HPXLUJFJ.mjs} +22 -19
  51. package/dist/chunk-HQ3QOT7H.js +33 -0
  52. package/dist/chunk-I5TCE5E7.js +32 -0
  53. package/dist/{chunk-QFVE7GKD.js → chunk-IBYIPXIO.js} +5 -26
  54. package/dist/{chunk-3XXXM4OB.mjs → chunk-IGE44BIS.mjs} +67 -23
  55. package/dist/{chunk-XRFK2IXM.js → chunk-IHH2O7YK.js} +6 -7
  56. package/dist/chunk-IP3MAJSH.mjs +55 -0
  57. package/dist/chunk-IRH2ZVD3.js +197 -0
  58. package/dist/chunk-IVGKPD2L.mjs +39 -0
  59. package/dist/{chunk-CJJ56NVL.mjs → chunk-IXJMMM26.mjs} +16 -60
  60. package/dist/chunk-J3HKED4B.js +110 -0
  61. package/dist/{chunk-MF3H7WWW.mjs → chunk-JNLX47UL.mjs} +33 -15
  62. package/dist/{chunk-7SOL3UJ2.js → chunk-JQNKI2ZZ.js} +80 -32
  63. package/dist/{chunk-X4F6NSI5.mjs → chunk-JUWFVIDP.mjs} +2 -2
  64. package/dist/{chunk-LADCWARG.mjs → chunk-JVTAKNRO.mjs} +17 -15
  65. package/dist/{chunk-2Y327ZU4.js → chunk-KAWE5LQZ.js} +80 -83
  66. package/dist/{chunk-TR246HQP.mjs → chunk-KMTERPME.mjs} +14 -18
  67. package/dist/chunk-LIV33O73.mjs +26 -0
  68. package/dist/chunk-LL6B4BHF.mjs +189 -0
  69. package/dist/chunk-LXQOQJMU.js +79 -0
  70. package/dist/chunk-M46L73HR.js +264 -0
  71. package/dist/{chunk-NMDNLB3C.mjs → chunk-MDZDPGRK.mjs} +30 -27
  72. package/dist/chunk-MTL2QUM3.mjs +107 -0
  73. package/dist/chunk-MWH6FCSE.js +97 -0
  74. package/dist/{chunk-5QKBBGIA.mjs → chunk-N4EMXCRQ.mjs} +173 -96
  75. package/dist/{chunk-LWW2LXCP.js → chunk-NEP3CS6S.js} +112 -59
  76. package/dist/chunk-NJCKTIWB.mjs +255 -0
  77. package/dist/{chunk-IIVRVCCP.mjs → chunk-NKKIJQMV.mjs} +53 -57
  78. package/dist/{chunk-MQXBU5YX.mjs → chunk-NQFHS4W2.mjs} +29 -21
  79. package/dist/chunk-NTODO3Q3.mjs +94 -0
  80. package/dist/{chunk-NDOYQK2R.mjs → chunk-NZLOLMT2.mjs} +41 -99
  81. package/dist/chunk-O3W3OZ6V.js +37 -0
  82. package/dist/{chunk-IFY46RWU.js → chunk-OESNOOOT.js} +1 -2
  83. package/dist/{chunk-IWENGARY.mjs → chunk-OFBK35TK.mjs} +1 -1
  84. package/dist/{chunk-R7TOQU3U.js → chunk-OIUIR5ZR.js} +15 -59
  85. package/dist/{chunk-QEAC4MIG.mjs → chunk-OUAZM7NY.mjs} +12 -59
  86. package/dist/chunk-OXT5RN55.mjs +261 -0
  87. package/dist/{chunk-CIL2AC3F.js → chunk-OYCMGKQ7.js} +15 -23
  88. package/dist/{chunk-IQINYCU6.js → chunk-PR3PQUKM.js} +17 -15
  89. package/dist/chunk-PTEDJ6MA.js +29 -0
  90. package/dist/{chunk-D3I2SY7X.js → chunk-PWZB45Z7.js} +13 -60
  91. package/dist/{chunk-GZPMLPRW.js → chunk-PXPUPQRO.js} +2 -2
  92. package/dist/{chunk-OZLGNWET.js → chunk-Q57BYUUW.js} +12 -28
  93. package/dist/chunk-QAO5KANE.mjs +36 -0
  94. package/dist/{chunk-AFFSBNYB.mjs → chunk-QGCQAJGL.mjs} +82 -34
  95. package/dist/{chunk-JOHKSMJM.mjs → chunk-QLHFXYWA.mjs} +59 -96
  96. package/dist/{chunk-C5EFBJBR.js → chunk-QM4GOQDT.js} +119 -142
  97. package/dist/{chunk-OD2NNQD2.js → chunk-QNRAM3CM.js} +2 -2
  98. package/dist/{chunk-Z5DDULTA.js → chunk-RARHRSPQ.js} +2 -2
  99. package/dist/{chunk-5QKMQRCW.js → chunk-RDIEZKV2.js} +28 -20
  100. package/dist/{chunk-GIYBVWR4.mjs → chunk-RGFSY3S2.mjs} +67 -44
  101. package/dist/chunk-RGZYYVQF.mjs +134 -0
  102. package/dist/{chunk-3GD3LOII.mjs → chunk-RITTIFCJ.mjs} +1 -2
  103. package/dist/{chunk-Y2JOJ4D6.js → chunk-RKB2VUQO.js} +8 -10
  104. package/dist/{chunk-7SLNHUGJ.js → chunk-RNEL4XIO.js} +28 -79
  105. package/dist/{chunk-6ZTCBQJ7.mjs → chunk-RPTLVIBF.mjs} +17 -25
  106. package/dist/{chunk-5ZVSFIZD.js → chunk-RYWGELJ7.js} +2 -6
  107. package/dist/chunk-S4GNTA7V.mjs +176 -0
  108. package/dist/{chunk-VSF4DF7N.js → chunk-SAZ6V6DX.js} +21 -18
  109. package/dist/{chunk-Q3DPJHNM.js → chunk-SFALTVPS.js} +3 -5
  110. package/dist/{chunk-E6GLWHRL.mjs → chunk-SH6O6LDJ.mjs} +73 -31
  111. package/dist/{chunk-67WZRMD6.js → chunk-SM7RDJFB.js} +105 -65
  112. package/dist/{chunk-DGBYGBLR.js → chunk-SOC74QA2.js} +32 -52
  113. package/dist/{chunk-KOLLAGRK.mjs → chunk-SQ7OL2X5.mjs} +2 -3
  114. package/dist/{chunk-VO4WDK4K.js → chunk-SSQOCZ6O.js} +1 -2
  115. package/dist/{chunk-KV4LLPAY.mjs → chunk-SW4I4X6E.mjs} +8 -10
  116. package/dist/{chunk-GQMYCYZ4.js → chunk-TDRINUMH.js} +31 -28
  117. package/dist/{chunk-DIZNY6N4.mjs → chunk-TGKNEMD4.mjs} +8 -8
  118. package/dist/{chunk-BAPR7UUR.mjs → chunk-TGPQ4KET.mjs} +13 -29
  119. package/dist/{chunk-3XKBDV2Q.mjs → chunk-TUA5PDRX.mjs} +7 -8
  120. package/dist/{chunk-CES6LGQ7.mjs → chunk-UE234MW4.mjs} +34 -37
  121. package/dist/{chunk-U4ZVEPYD.js → chunk-URM7QDHH.js} +14 -18
  122. package/dist/chunk-UZ7SBFQV.mjs +35 -0
  123. package/dist/{chunk-HGF2EL25.mjs → chunk-V5NIFF2F.mjs} +34 -54
  124. package/dist/{chunk-672SCJWZ.mjs → chunk-VCNZEQEB.mjs} +10 -10
  125. package/dist/{chunk-R7MS42PL.js → chunk-VCOBBJLP.js} +9 -9
  126. package/dist/{chunk-2TS6X5RA.js → chunk-VCULFIZ5.js} +7 -7
  127. package/dist/{chunk-2VXA4YOP.js → chunk-W4TFISRK.js} +71 -29
  128. package/dist/{chunk-4MMT4EJJ.mjs → chunk-WAIXKROS.mjs} +17 -22
  129. package/dist/{chunk-7IKJBQQV.mjs → chunk-WGRYO5HX.mjs} +35 -20
  130. package/dist/{chunk-ZPWDDAFE.js → chunk-XID6T65A.js} +14 -13
  131. package/dist/chunk-XJ7U2W7S.mjs +27 -0
  132. package/dist/chunk-XKDWDANG.js +192 -0
  133. package/dist/{chunk-EI2GHMQS.js → chunk-XLVEI7GS.js} +15 -13
  134. package/dist/chunk-XWNVBCJA.js +258 -0
  135. package/dist/{chunk-JW64IJP2.js → chunk-XWRJVNB6.js} +67 -23
  136. package/dist/{chunk-HDDBBZQH.js → chunk-YV6Y7C43.js} +48 -64
  137. package/dist/{chunk-XS5JP2KO.mjs → chunk-ZFHTSHXS.mjs} +82 -85
  138. package/dist/chunk-ZGQOYCQT.mjs +194 -0
  139. package/dist/{chunk-WDAMDVLU.mjs → chunk-ZIUOENTL.mjs} +6 -27
  140. package/dist/{chunk-HRYBEBZC.js → chunk-ZTVATZB6.js} +59 -89
  141. package/dist/components/ActivityFeed.d.mts +10 -0
  142. package/dist/components/ActivityFeed.d.ts +10 -0
  143. package/dist/components/ActivityFeed.js +23 -0
  144. package/dist/components/ActivityFeed.mjs +8 -0
  145. package/dist/components/Alert.js +3 -2
  146. package/dist/components/Alert.mjs +2 -1
  147. package/dist/components/Anchor.js +4 -4
  148. package/dist/components/Anchor.mjs +1 -1
  149. package/dist/components/AnchorLink.js +4 -4
  150. package/dist/components/AnchorLink.mjs +2 -2
  151. package/dist/components/AreaChart.d.mts +3 -0
  152. package/dist/components/AreaChart.d.ts +3 -0
  153. package/dist/components/AreaChart.js +4 -4
  154. package/dist/components/AreaChart.mjs +2 -2
  155. package/dist/components/Avatar.d.mts +1 -1
  156. package/dist/components/Avatar.d.ts +1 -1
  157. package/dist/components/Avatar.js +2 -2
  158. package/dist/components/Avatar.mjs +1 -1
  159. package/dist/components/BackTop.js +3 -3
  160. package/dist/components/BackTop.mjs +1 -1
  161. package/dist/components/Badge.d.mts +0 -3
  162. package/dist/components/Badge.d.ts +0 -3
  163. package/dist/components/Badge.js +2 -2
  164. package/dist/components/Badge.mjs +1 -1
  165. package/dist/components/BarChart.js +4 -4
  166. package/dist/components/BarChart.mjs +2 -2
  167. package/dist/components/Breadcrumb.d.mts +0 -1
  168. package/dist/components/Breadcrumb.d.ts +0 -1
  169. package/dist/components/BreadcrumbItem.js +2 -2
  170. package/dist/components/BreadcrumbItem.mjs +1 -1
  171. package/dist/components/Button.js +2 -2
  172. package/dist/components/Button.mjs +1 -1
  173. package/dist/components/Card.js +2 -2
  174. package/dist/components/Card.mjs +1 -1
  175. package/dist/components/Carousel.js +2 -2
  176. package/dist/components/Carousel.mjs +1 -1
  177. package/dist/components/ChatWindow.d.mts +12 -0
  178. package/dist/components/ChatWindow.d.ts +12 -0
  179. package/dist/components/ChatWindow.js +20 -0
  180. package/dist/components/ChatWindow.mjs +5 -0
  181. package/dist/components/Checkbox.js +2 -2
  182. package/dist/components/Checkbox.mjs +1 -1
  183. package/dist/components/Col.js +3 -3
  184. package/dist/components/Col.mjs +2 -2
  185. package/dist/components/CollapsePanel.js +3 -3
  186. package/dist/components/CollapsePanel.mjs +1 -1
  187. package/dist/components/CommentThread.d.mts +8 -0
  188. package/dist/components/CommentThread.d.ts +8 -0
  189. package/dist/components/CommentThread.js +21 -0
  190. package/dist/components/CommentThread.mjs +6 -0
  191. package/dist/components/DataTableWithToolbar.d.mts +51 -0
  192. package/dist/components/DataTableWithToolbar.d.ts +51 -0
  193. package/dist/components/DataTableWithToolbar.js +21 -0
  194. package/dist/components/DataTableWithToolbar.mjs +6 -0
  195. package/dist/components/DatePicker.js +2 -2
  196. package/dist/components/DatePicker.mjs +1 -1
  197. package/dist/components/Descriptions.js +3 -3
  198. package/dist/components/Descriptions.mjs +1 -1
  199. package/dist/components/Divider.d.mts +1 -3
  200. package/dist/components/Divider.d.ts +1 -3
  201. package/dist/components/Divider.js +2 -2
  202. package/dist/components/Divider.mjs +1 -1
  203. package/dist/components/DonutChart.d.mts +6 -0
  204. package/dist/components/DonutChart.d.ts +6 -0
  205. package/dist/components/DonutChart.js +5 -5
  206. package/dist/components/DonutChart.mjs +3 -3
  207. package/dist/components/Drawer.js +2 -2
  208. package/dist/components/Drawer.mjs +1 -1
  209. package/dist/components/Dropdown.d.mts +1 -15
  210. package/dist/components/Dropdown.d.ts +1 -15
  211. package/dist/components/Dropdown.js +4 -4
  212. package/dist/components/Dropdown.mjs +2 -2
  213. package/dist/components/DropdownItem.js +4 -4
  214. package/dist/components/DropdownItem.mjs +3 -3
  215. package/dist/components/Form.d.mts +1 -0
  216. package/dist/components/Form.d.ts +1 -0
  217. package/dist/components/Form.js +3 -3
  218. package/dist/components/Form.mjs +1 -1
  219. package/dist/components/FormItem.js +3 -3
  220. package/dist/components/FormItem.mjs +2 -2
  221. package/dist/components/FormWizard.d.mts +10 -0
  222. package/dist/components/FormWizard.d.ts +10 -0
  223. package/dist/components/FormWizard.js +19 -0
  224. package/dist/components/FormWizard.mjs +4 -0
  225. package/dist/components/Icon.js +2 -2
  226. package/dist/components/Icon.mjs +1 -1
  227. package/dist/components/Input.d.mts +4 -7
  228. package/dist/components/Input.d.ts +4 -7
  229. package/dist/components/Input.js +2 -2
  230. package/dist/components/Input.mjs +1 -1
  231. package/dist/components/LineChart.js +4 -4
  232. package/dist/components/LineChart.mjs +2 -2
  233. package/dist/components/Link.js +2 -2
  234. package/dist/components/Link.mjs +1 -1
  235. package/dist/components/List.js +2 -4
  236. package/dist/components/List.mjs +1 -3
  237. package/dist/components/Loading.js +2 -2
  238. package/dist/components/Loading.mjs +1 -1
  239. package/dist/components/Menu.js +3 -3
  240. package/dist/components/Menu.mjs +1 -1
  241. package/dist/components/MenuItem.js +3 -3
  242. package/dist/components/MenuItem.mjs +2 -2
  243. package/dist/components/MenuItemGroup.js +4 -4
  244. package/dist/components/MenuItemGroup.mjs +3 -3
  245. package/dist/components/Message.d.mts +0 -18
  246. package/dist/components/Message.d.ts +0 -18
  247. package/dist/components/Message.js +5 -4
  248. package/dist/components/Message.mjs +2 -1
  249. package/dist/components/Modal.d.mts +15 -0
  250. package/dist/components/Modal.d.ts +15 -0
  251. package/dist/components/Modal.js +3 -2
  252. package/dist/components/Modal.mjs +2 -1
  253. package/dist/components/Notification.d.mts +0 -15
  254. package/dist/components/Notification.d.ts +0 -15
  255. package/dist/components/Notification.js +5 -4
  256. package/dist/components/Notification.mjs +2 -1
  257. package/dist/components/NotificationCenter.d.mts +8 -0
  258. package/dist/components/NotificationCenter.d.ts +8 -0
  259. package/dist/components/NotificationCenter.js +22 -0
  260. package/dist/components/NotificationCenter.mjs +7 -0
  261. package/dist/components/Pagination.js +3 -3
  262. package/dist/components/Pagination.mjs +1 -1
  263. package/dist/components/PieChart.js +4 -4
  264. package/dist/components/PieChart.mjs +2 -2
  265. package/dist/components/Popconfirm.d.mts +0 -26
  266. package/dist/components/Popconfirm.d.ts +0 -26
  267. package/dist/components/Popconfirm.js +3 -2
  268. package/dist/components/Popconfirm.mjs +2 -1
  269. package/dist/components/Popover.d.mts +0 -8
  270. package/dist/components/Popover.d.ts +0 -8
  271. package/dist/components/Popover.js +3 -2
  272. package/dist/components/Popover.mjs +2 -1
  273. package/dist/components/Progress.js +2 -2
  274. package/dist/components/Progress.mjs +1 -1
  275. package/dist/components/RadarChart.d.mts +8 -0
  276. package/dist/components/RadarChart.d.ts +8 -0
  277. package/dist/components/RadarChart.js +5 -4
  278. package/dist/components/RadarChart.mjs +3 -2
  279. package/dist/components/Radio.js +3 -3
  280. package/dist/components/Radio.mjs +2 -2
  281. package/dist/components/RadioGroup.js +3 -3
  282. package/dist/components/RadioGroup.mjs +1 -1
  283. package/dist/components/Row.js +3 -3
  284. package/dist/components/Row.mjs +1 -1
  285. package/dist/components/ScatterChart.js +4 -4
  286. package/dist/components/ScatterChart.mjs +2 -2
  287. package/dist/components/Select.js +2 -2
  288. package/dist/components/Select.mjs +1 -1
  289. package/dist/components/Sidebar.js +2 -2
  290. package/dist/components/Sidebar.mjs +1 -1
  291. package/dist/components/Skeleton.js +2 -2
  292. package/dist/components/Skeleton.mjs +1 -1
  293. package/dist/components/Slider.js +2 -2
  294. package/dist/components/Slider.mjs +1 -1
  295. package/dist/components/Space.js +2 -2
  296. package/dist/components/Space.mjs +1 -1
  297. package/dist/components/Steps.js +3 -3
  298. package/dist/components/Steps.mjs +1 -1
  299. package/dist/components/StepsItem.js +2 -2
  300. package/dist/components/StepsItem.mjs +1 -1
  301. package/dist/components/SubMenu.js +5 -5
  302. package/dist/components/SubMenu.mjs +4 -4
  303. package/dist/components/TabPane.d.mts +18 -3
  304. package/dist/components/TabPane.d.ts +18 -3
  305. package/dist/components/TabPane.js +2 -2
  306. package/dist/components/TabPane.mjs +1 -1
  307. package/dist/components/Table.d.mts +1 -1
  308. package/dist/components/Table.d.ts +1 -1
  309. package/dist/components/Table.js +2 -2
  310. package/dist/components/Table.mjs +1 -1
  311. package/dist/components/Tabs.d.mts +44 -2
  312. package/dist/components/Tabs.d.ts +44 -2
  313. package/dist/components/Tabs.js +3 -3
  314. package/dist/components/Tabs.mjs +1 -1
  315. package/dist/components/Tag.js +2 -2
  316. package/dist/components/Tag.mjs +1 -1
  317. package/dist/components/Text.js +2 -2
  318. package/dist/components/Text.mjs +1 -1
  319. package/dist/components/Textarea.js +2 -2
  320. package/dist/components/Textarea.mjs +1 -1
  321. package/dist/components/TimePicker.js +2 -2
  322. package/dist/components/TimePicker.mjs +1 -1
  323. package/dist/components/Timeline.js +2 -2
  324. package/dist/components/Timeline.mjs +1 -1
  325. package/dist/components/Tooltip.d.mts +1 -11
  326. package/dist/components/Tooltip.d.ts +1 -11
  327. package/dist/components/Tooltip.js +3 -2
  328. package/dist/components/Tooltip.mjs +2 -1
  329. package/dist/components/Tree.js +3 -3
  330. package/dist/components/Tree.mjs +1 -1
  331. package/dist/components/Upload.js +2 -2
  332. package/dist/components/Upload.mjs +1 -1
  333. package/dist/index.d.mts +6 -0
  334. package/dist/index.d.ts +6 -0
  335. package/dist/index.js +241 -209
  336. package/dist/index.mjs +76 -68
  337. package/package.json +2 -2
  338. package/dist/chunk-2UVQIL26.mjs +0 -99
  339. package/dist/chunk-3OF7XPIQ.js +0 -90
  340. package/dist/chunk-427CM2U6.mjs +0 -76
  341. package/dist/chunk-6YDIBMCM.mjs +0 -33
  342. package/dist/chunk-A3DJSVTE.js +0 -68
  343. package/dist/chunk-AGUPZEUL.mjs +0 -35
  344. package/dist/chunk-CKUSQR2H.mjs +0 -41
  345. package/dist/chunk-CR4QK2AB.mjs +0 -88
  346. package/dist/chunk-EB6EDLJZ.mjs +0 -50
  347. package/dist/chunk-GW4EWT2K.mjs +0 -125
  348. package/dist/chunk-KELLYJZY.mjs +0 -148
  349. package/dist/chunk-KUCFT2OA.js +0 -43
  350. package/dist/chunk-QY6I7LU5.js +0 -127
  351. package/dist/chunk-STEIWBMF.mjs +0 -66
  352. package/dist/chunk-T4TJJMLM.mjs +0 -34
  353. package/dist/chunk-VR5OP4MO.js +0 -102
  354. package/dist/chunk-YESS6YKC.js +0 -37
  355. package/dist/chunk-YYGTJKP5.js +0 -39
  356. package/dist/chunk-ZPFZMXA6.js +0 -150
  357. package/dist/chunk-ZREFCRX3.js +0 -52
  358. package/dist/{chunk-MKWXJZ3T.js → chunk-QYYAXM5F.js} +1 -1
  359. package/dist/{chunk-WSJO2PIE.mjs → chunk-XZVQ3PJS.mjs} +1 -1
@@ -0,0 +1,197 @@
1
+ 'use strict';
2
+
3
+ var chunkZTVATZB6_js = require('./chunk-ZTVATZB6.js');
4
+ var chunkTDRINUMH_js = require('./chunk-TDRINUMH.js');
5
+ var chunk3GW3UAKB_js = require('./chunk-3GW3UAKB.js');
6
+ var chunkOYCMGKQ7_js = require('./chunk-OYCMGKQ7.js');
7
+ var chunkF24IF2QL_js = require('./chunk-F24IF2QL.js');
8
+ var react = require('react');
9
+ var tigercatCore = require('@expcat/tigercat-core');
10
+ var jsxRuntime = require('react/jsx-runtime');
11
+
12
+ var DataTableWithToolbar = ({
13
+ toolbar,
14
+ onSearchChange,
15
+ onSearch,
16
+ onFiltersChange,
17
+ onBulkAction,
18
+ pagination = false,
19
+ onPageChange,
20
+ onPageSizeChange,
21
+ className,
22
+ tableClassName,
23
+ ...tableProps
24
+ }) => {
25
+ const [internalSearch, setInternalSearch] = react.useState(toolbar?.defaultSearchValue ?? "");
26
+ const [internalFilters, setInternalFilters] = react.useState(
27
+ () => {
28
+ const initial = {};
29
+ toolbar?.filters?.forEach((filter) => {
30
+ if (filter.value === void 0) {
31
+ initial[filter.key] = filter.defaultValue ?? null;
32
+ }
33
+ });
34
+ return initial;
35
+ }
36
+ );
37
+ react.useEffect(() => {
38
+ if (toolbar?.searchValue !== void 0) {
39
+ setInternalSearch(toolbar.searchValue ?? "");
40
+ }
41
+ }, [toolbar?.searchValue]);
42
+ react.useEffect(() => {
43
+ const filters = toolbar?.filters;
44
+ if (!filters) return;
45
+ setInternalFilters((prev) => {
46
+ const next = { ...prev };
47
+ filters.forEach((filter) => {
48
+ if (filter.value === void 0 && !(filter.key in next)) {
49
+ next[filter.key] = filter.defaultValue ?? null;
50
+ }
51
+ });
52
+ return next;
53
+ });
54
+ }, [toolbar?.filters]);
55
+ const searchValue = toolbar?.searchValue !== void 0 ? toolbar.searchValue : internalSearch;
56
+ const resolvedFilters = react.useMemo(() => {
57
+ const next = {};
58
+ toolbar?.filters?.forEach((filter) => {
59
+ next[filter.key] = filter.value !== void 0 ? filter.value : internalFilters[filter.key] ?? filter.defaultValue ?? null;
60
+ });
61
+ return next;
62
+ }, [toolbar?.filters, internalFilters]);
63
+ const hasSearch = Boolean(
64
+ toolbar && (toolbar.searchPlaceholder || toolbar.searchValue !== void 0 || toolbar.defaultSearchValue !== void 0 || toolbar.showSearchButton || toolbar.onSearchChange || toolbar.onSearch || onSearchChange || onSearch)
65
+ );
66
+ const hasFilters = Boolean(toolbar?.filters && toolbar.filters.length > 0);
67
+ const hasBulkActions = Boolean(toolbar?.bulkActions && toolbar.bulkActions.length > 0);
68
+ const selectedKeys = toolbar?.selectedKeys ?? tableProps.rowSelection?.selectedRowKeys ?? [];
69
+ const selectedCount = toolbar?.selectedCount ?? selectedKeys.length;
70
+ const bulkLabel = toolbar?.bulkActionsLabel ?? "\u5DF2\u9009\u62E9";
71
+ const wrapperClasses = react.useMemo(
72
+ () => tigercatCore.classNames("tiger-data-table-with-toolbar flex flex-col gap-3", className),
73
+ [className]
74
+ );
75
+ const handleSearchChange = (value) => {
76
+ if (toolbar?.searchValue === void 0) {
77
+ setInternalSearch(value);
78
+ }
79
+ onSearchChange?.(value);
80
+ toolbar?.onSearchChange?.(value);
81
+ };
82
+ const handleSearchSubmit = () => {
83
+ onSearch?.(searchValue ?? "");
84
+ toolbar?.onSearch?.(searchValue ?? "");
85
+ };
86
+ const handleFilterSelect = (filter, value) => {
87
+ const nextFilters = {
88
+ ...resolvedFilters,
89
+ [filter.key]: value
90
+ };
91
+ if (filter.value === void 0) {
92
+ setInternalFilters((prev) => ({
93
+ ...prev,
94
+ [filter.key]: value
95
+ }));
96
+ }
97
+ onFiltersChange?.(nextFilters);
98
+ toolbar?.onFiltersChange?.(nextFilters);
99
+ };
100
+ const handleBulkAction = (action) => {
101
+ const keys = selectedKeys ?? [];
102
+ action.onClick?.(keys);
103
+ onBulkAction?.(action, keys);
104
+ toolbar?.onBulkAction?.(action, keys);
105
+ };
106
+ const renderToolbar = () => {
107
+ if (!hasSearch && !hasFilters && !hasBulkActions) return null;
108
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "tiger-data-table-toolbar flex flex-wrap items-center gap-2 pb-3", children: [
109
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2 flex-wrap flex-1 min-w-0", children: [
110
+ hasSearch ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2 w-full sm:w-auto sm:min-w-[200px] sm:max-w-[320px]", children: [
111
+ /* @__PURE__ */ jsxRuntime.jsx(
112
+ chunkOYCMGKQ7_js.Input,
113
+ {
114
+ type: "search",
115
+ size: "sm",
116
+ value: searchValue,
117
+ placeholder: toolbar?.searchPlaceholder ?? "\u641C\u7D22",
118
+ onChange: (event) => handleSearchChange(String(event.currentTarget.value)),
119
+ onKeyDown: (event) => {
120
+ if (event.key === "Enter") {
121
+ handleSearchSubmit();
122
+ }
123
+ }
124
+ }
125
+ ),
126
+ toolbar?.showSearchButton ?? true ? /* @__PURE__ */ jsxRuntime.jsx(
127
+ chunkF24IF2QL_js.Button,
128
+ {
129
+ size: "sm",
130
+ variant: "primary",
131
+ className: "whitespace-nowrap shrink-0",
132
+ onClick: handleSearchSubmit,
133
+ disabled: !onSearch && !toolbar?.onSearch,
134
+ children: toolbar?.searchButtonText ?? "\u641C\u7D22"
135
+ }
136
+ ) : null
137
+ ] }) : null,
138
+ hasFilters ? toolbar?.filters?.map((filter) => {
139
+ const currentValue = resolvedFilters[filter.key];
140
+ const clearable = filter.clearable !== false;
141
+ return /* @__PURE__ */ jsxRuntime.jsx(
142
+ "div",
143
+ {
144
+ className: "w-full sm:w-auto sm:min-w-[120px] sm:max-w-[180px]",
145
+ children: /* @__PURE__ */ jsxRuntime.jsx(
146
+ chunkTDRINUMH_js.Select,
147
+ {
148
+ size: "sm",
149
+ options: filter.options.map((opt) => ({
150
+ label: opt.label,
151
+ value: opt.value
152
+ })),
153
+ value: currentValue ?? void 0,
154
+ placeholder: filter.placeholder ?? filter.label,
155
+ clearable,
156
+ onChange: (value) => {
157
+ handleFilterSelect(filter, value ?? null);
158
+ }
159
+ }
160
+ )
161
+ },
162
+ filter.key
163
+ );
164
+ }) : null
165
+ ] }),
166
+ hasBulkActions ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2 flex-wrap ml-auto shrink-0", children: [
167
+ selectedCount > 0 ? /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "text-sm text-[var(--tiger-text-muted,#6b7280)]", children: [
168
+ bulkLabel,
169
+ " ",
170
+ selectedCount,
171
+ " \u9879"
172
+ ] }) : null,
173
+ toolbar?.bulkActions?.map((action) => /* @__PURE__ */ jsxRuntime.jsx(
174
+ chunkF24IF2QL_js.Button,
175
+ {
176
+ size: "sm",
177
+ variant: action.variant ?? "outline",
178
+ disabled: action.disabled || selectedCount === 0,
179
+ onClick: () => handleBulkAction(action),
180
+ children: action.label
181
+ },
182
+ action.key
183
+ ))
184
+ ] }) : null
185
+ ] });
186
+ };
187
+ const showPagination = pagination && typeof pagination === "object";
188
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: wrapperClasses, "data-tiger-data-table-with-toolbar": true, children: [
189
+ renderToolbar(),
190
+ /* @__PURE__ */ jsxRuntime.jsx(chunkZTVATZB6_js.Table, { ...tableProps, pagination: false, className: tableClassName }),
191
+ showPagination ? /* @__PURE__ */ jsxRuntime.jsx(chunk3GW3UAKB_js.Pagination, { ...pagination, onChange: onPageChange, onPageSizeChange }) : null
192
+ ] });
193
+ };
194
+ var DataTableWithToolbar_default = DataTableWithToolbar;
195
+
196
+ exports.DataTableWithToolbar = DataTableWithToolbar;
197
+ exports.DataTableWithToolbar_default = DataTableWithToolbar_default;
@@ -0,0 +1,39 @@
1
+ import { RowContext } from './chunk-QAO5KANE.mjs';
2
+ import { useContext, useMemo } from 'react';
3
+ import { classNames, getSpanClasses, getOffsetClasses, getOrderClasses, getFlexClasses, getColMergedStyleVars, getGutterStyles } from '@expcat/tigercat-core';
4
+ import { jsx } from 'react/jsx-runtime';
5
+
6
+ var Col = ({
7
+ span = 24,
8
+ offset = 0,
9
+ order,
10
+ flex,
11
+ children,
12
+ className,
13
+ style,
14
+ ...divProps
15
+ }) => {
16
+ const { gutter } = useContext(RowContext);
17
+ const isFlexSpanMode = flex !== void 0 && span === 0;
18
+ const colClasses = useMemo(
19
+ () => classNames(
20
+ isFlexSpanMode ? "" : getSpanClasses(span),
21
+ getOffsetClasses(offset),
22
+ getOrderClasses(order),
23
+ getFlexClasses(flex),
24
+ className
25
+ ),
26
+ [isFlexSpanMode, span, offset, order, flex, className]
27
+ );
28
+ const mergedStyle = useMemo(
29
+ () => ({
30
+ ...getGutterStyles(gutter || 0).colStyle,
31
+ ...getColMergedStyleVars(isFlexSpanMode ? void 0 : span, offset, order, flex),
32
+ ...style
33
+ }),
34
+ [gutter, isFlexSpanMode, span, offset, order, flex, style]
35
+ );
36
+ return /* @__PURE__ */ jsx("div", { className: colClasses, style: mergedStyle, ...divProps, children });
37
+ };
38
+
39
+ export { Col };
@@ -1,10 +1,10 @@
1
+ import { StatusIconWithLoading, StatusIcon } from './chunk-FLYJVZED.mjs';
1
2
  import { useState, useEffect, useCallback } from 'react';
2
3
  import { createRoot } from 'react-dom/client';
3
4
  import { flushSync } from 'react-dom';
4
- import { classNames, messageContainerBaseClasses, messagePositionClasses, getMessageTypeClasses, defaultMessageThemeColors, messageBaseClasses, getMessageIconPath, messageIconClasses, ANIMATION_DURATION_MS, messageContentClasses, messageCloseButtonClasses, messageCloseIconPath, isBrowser, messageLoadingSpinnerClasses, icon24StrokeWidth, icon24ViewBox, icon24PathStrokeLinejoin, icon24PathStrokeLinecap } from '@expcat/tigercat-core';
5
+ import { classNames, messageContainerBaseClasses, messagePositionClasses, getMessageTypeClasses, defaultMessageThemeColors, messageBaseClasses, getMessageIconPath, messageIconClasses, ANIMATION_DURATION_MS, messageLoadingSpinnerClasses, messageContentClasses, messageCloseButtonClasses, messageCloseIconPath, isBrowser, normalizeStringOption } from '@expcat/tigercat-core';
5
6
  import { jsx, jsxs } from 'react/jsx-runtime';
6
7
 
7
- // src/components/Message.tsx
8
8
  var MESSAGE_CONTAINER_ID = "tiger-message-container";
9
9
  var MESSAGE_CLOSE_ARIA_LABEL = "Close message";
10
10
  var messageInstances = [];
@@ -14,32 +14,11 @@ var updateCallback = null;
14
14
  function getNextInstanceId() {
15
15
  return ++instanceIdCounter;
16
16
  }
17
- var Icon = ({ path, className, isLoading = false }) => {
18
- const iconClass = classNames(className, isLoading ? messageLoadingSpinnerClasses : "");
19
- return /* @__PURE__ */ jsx(
20
- "svg",
21
- {
22
- className: iconClass,
23
- xmlns: "http://www.w3.org/2000/svg",
24
- fill: "none",
25
- viewBox: icon24ViewBox,
26
- stroke: "currentColor",
27
- strokeWidth: icon24StrokeWidth,
28
- children: /* @__PURE__ */ jsx(
29
- "path",
30
- {
31
- strokeLinecap: icon24PathStrokeLinecap,
32
- strokeLinejoin: icon24PathStrokeLinejoin,
33
- d: path
34
- }
35
- )
36
- }
37
- );
38
- };
39
17
  var MessageItem = ({ message, onClose }) => {
40
18
  const [isVisible, setIsVisible] = useState(false);
41
19
  useEffect(() => {
42
- setTimeout(() => setIsVisible(true), 10);
20
+ const timer = setTimeout(() => setIsVisible(true), 10);
21
+ return () => clearTimeout(timer);
43
22
  }, []);
44
23
  const colorScheme = getMessageTypeClasses(message.type, defaultMessageThemeColors);
45
24
  const messageClasses = classNames(
@@ -70,7 +49,15 @@ var MessageItem = ({ message, onClose }) => {
70
49
  "data-tiger-message-type": message.type,
71
50
  "data-tiger-message-id": String(message.id),
72
51
  children: [
73
- /* @__PURE__ */ jsx(Icon, { path: iconPath, className: iconClass, isLoading: message.type === "loading" }),
52
+ /* @__PURE__ */ jsx(
53
+ StatusIconWithLoading,
54
+ {
55
+ path: iconPath,
56
+ className: iconClass,
57
+ isLoading: message.type === "loading",
58
+ spinnerClass: messageLoadingSpinnerClasses
59
+ }
60
+ ),
74
61
  /* @__PURE__ */ jsx("div", { className: messageContentClasses, children: message.content }),
75
62
  message.closable && /* @__PURE__ */ jsx(
76
63
  "button",
@@ -79,7 +66,7 @@ var MessageItem = ({ message, onClose }) => {
79
66
  onClick: handleClose,
80
67
  "aria-label": MESSAGE_CLOSE_ARIA_LABEL,
81
68
  type: "button",
82
- children: /* @__PURE__ */ jsx(Icon, { path: messageCloseIconPath, className: "w-4 h-4" })
69
+ children: /* @__PURE__ */ jsx(StatusIcon, { path: messageCloseIconPath, className: "w-4 h-4" })
83
70
  }
84
71
  )
85
72
  ]
@@ -101,17 +88,7 @@ var MessageContainer = ({ position = "top" }) => {
101
88
  }, []);
102
89
  const containerClasses = classNames(messageContainerBaseClasses, messagePositionClasses[position]);
103
90
  const handleRemove = useCallback((id) => {
104
- const index = messageInstances.findIndex((msg) => msg.id === id);
105
- if (index !== -1) {
106
- const instance = messageInstances[index];
107
- messageInstances.splice(index, 1);
108
- if (instance.onClose) {
109
- instance.onClose();
110
- }
111
- if (updateCallback) {
112
- updateCallback();
113
- }
114
- }
91
+ removeMessage(id);
115
92
  }, []);
116
93
  return /* @__PURE__ */ jsx(
117
94
  "div",
@@ -210,50 +187,29 @@ function clearAll() {
210
187
  }
211
188
  }
212
189
  function normalizeOptions(options) {
213
- if (typeof options === "string") {
214
- return { content: options };
215
- }
216
- return options;
190
+ return normalizeStringOption(options, "content");
217
191
  }
218
192
  var Message = {
219
- /**
220
- * Show an info message
221
- */
222
193
  info(options) {
223
194
  const config = normalizeOptions(options);
224
195
  return addMessage({ ...config, type: "info" });
225
196
  },
226
- /**
227
- * Show a success message
228
- */
229
197
  success(options) {
230
198
  const config = normalizeOptions(options);
231
199
  return addMessage({ ...config, type: "success" });
232
200
  },
233
- /**
234
- * Show a warning message
235
- */
236
201
  warning(options) {
237
202
  const config = normalizeOptions(options);
238
203
  return addMessage({ ...config, type: "warning" });
239
204
  },
240
- /**
241
- * Show an error message
242
- */
243
205
  error(options) {
244
206
  const config = normalizeOptions(options);
245
207
  return addMessage({ ...config, type: "error" });
246
208
  },
247
- /**
248
- * Show a loading message
249
- */
250
209
  loading(options) {
251
210
  const config = normalizeOptions(options);
252
211
  return addMessage({ ...config, type: "loading", duration: 0 });
253
212
  },
254
- /**
255
- * Clear all messages
256
- */
257
213
  clear() {
258
214
  clearAll();
259
215
  }
@@ -0,0 +1,110 @@
1
+ 'use strict';
2
+
3
+ var chunkPR3PQUKM_js = require('./chunk-PR3PQUKM.js');
4
+ var chunkQYYAXM5F_js = require('./chunk-QYYAXM5F.js');
5
+ var chunk2GKTVAAB_js = require('./chunk-2GKTVAAB.js');
6
+ var chunkVCULFIZ5_js = require('./chunk-VCULFIZ5.js');
7
+ var chunkI5TCE5E7_js = require('./chunk-I5TCE5E7.js');
8
+ var chunkSSQOCZ6O_js = require('./chunk-SSQOCZ6O.js');
9
+ var chunkCI2WHAT2_js = require('./chunk-CI2WHAT2.js');
10
+ var react = require('react');
11
+ var tigercatCore = require('@expcat/tigercat-core');
12
+ var jsxRuntime = require('react/jsx-runtime');
13
+
14
+ var renderAction = (item, action, index) => {
15
+ const key = action.key ?? `${item.id}-action-${index}`;
16
+ return /* @__PURE__ */ jsxRuntime.jsx(
17
+ chunkQYYAXM5F_js.Link,
18
+ {
19
+ size: "sm",
20
+ variant: "primary",
21
+ href: action.href,
22
+ target: action.target,
23
+ disabled: action.disabled,
24
+ onClick: () => action.onClick?.(item, action),
25
+ children: action.label
26
+ },
27
+ key
28
+ );
29
+ };
30
+ var ActivityFeed = ({
31
+ items = [],
32
+ groups,
33
+ groupBy,
34
+ groupOrder,
35
+ loading = false,
36
+ loadingText = "\u52A0\u8F7D\u4E2D...",
37
+ emptyText = "\u6682\u65E0\u52A8\u6001",
38
+ showAvatar = true,
39
+ showTime = true,
40
+ showGroupTitle = true,
41
+ renderItem,
42
+ renderGroupHeader,
43
+ className,
44
+ ...props
45
+ }) => {
46
+ const resolvedGroups = react.useMemo(
47
+ () => tigercatCore.buildActivityGroups(items, groups, groupBy, groupOrder),
48
+ [items, groups, groupBy, groupOrder]
49
+ );
50
+ const wrapperClasses = tigercatCore.classNames(
51
+ "tiger-activity-feed",
52
+ "flex",
53
+ "flex-col",
54
+ "gap-6",
55
+ "w-full",
56
+ className
57
+ );
58
+ const renderDefaultItem = (item, index, group) => {
59
+ if (renderItem) return renderItem(item, index, group);
60
+ const titleText = item.title ?? (typeof item.content === "string" || typeof item.content === "number" ? String(item.content) : "");
61
+ const descriptionText = item.description;
62
+ const timeText = showTime ? tigercatCore.formatActivityTime(item.time) : "";
63
+ const actionNodes = item.actions?.map(
64
+ (action, actionIndex) => renderAction(item, action, actionIndex)
65
+ );
66
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "tiger-activity-item", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex gap-3 items-start", children: [
67
+ showAvatar && item.user ? /* @__PURE__ */ jsxRuntime.jsx(chunkCI2WHAT2_js.Avatar, { size: "sm", src: item.user.avatar, text: item.user.name, className: "shrink-0" }) : null,
68
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex-1 min-w-0", children: [
69
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-between gap-2 mb-1", children: [
70
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2 min-w-0", children: [
71
+ titleText ? /* @__PURE__ */ jsxRuntime.jsx(chunkI5TCE5E7_js.Text, { tag: "div", size: "sm", weight: "medium", className: "truncate", children: titleText }) : null,
72
+ item.status ? /* @__PURE__ */ jsxRuntime.jsx(chunkVCULFIZ5_js.Tag, { variant: item.status.variant ?? "default", size: "sm", className: "shrink-0", children: item.status.label }) : null
73
+ ] }),
74
+ timeText ? /* @__PURE__ */ jsxRuntime.jsx(chunkI5TCE5E7_js.Text, { tag: "div", size: "xs", color: "muted", className: "shrink-0 whitespace-nowrap", children: timeText }) : null
75
+ ] }),
76
+ descriptionText ? /* @__PURE__ */ jsxRuntime.jsx(chunkI5TCE5E7_js.Text, { tag: "div", size: "sm", color: "muted", className: "mb-2 break-words", children: descriptionText }) : null,
77
+ actionNodes?.length ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-wrap gap-2", children: actionNodes }) : null
78
+ ] })
79
+ ] }) });
80
+ };
81
+ if (loading) {
82
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: wrapperClasses, ...props, "data-tiger-activity-feed": true, children: /* @__PURE__ */ jsxRuntime.jsx(chunkSSQOCZ6O_js.Card, { variant: "bordered", size: "sm", className: "tiger-activity-feed-loading", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center justify-center py-4", children: /* @__PURE__ */ jsxRuntime.jsx(chunk2GKTVAAB_js.Loading, { text: loadingText }) }) }) });
83
+ }
84
+ if (resolvedGroups.length === 0) {
85
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: wrapperClasses, ...props, "data-tiger-activity-feed": true, children: /* @__PURE__ */ jsxRuntime.jsx(chunkSSQOCZ6O_js.Card, { variant: "bordered", size: "sm", className: "tiger-activity-feed-empty", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center justify-center py-6", children: /* @__PURE__ */ jsxRuntime.jsx(chunkI5TCE5E7_js.Text, { tag: "div", size: "sm", color: "muted", children: emptyText }) }) }) });
86
+ }
87
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: wrapperClasses, ...props, "data-tiger-activity-feed": true, children: resolvedGroups.map((group, groupIndex) => {
88
+ const headerNode = renderGroupHeader?.(group);
89
+ const groupTitle = group.title;
90
+ const timelineItems = tigercatCore.toActivityTimelineItems(group.items);
91
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-3", children: [
92
+ showGroupTitle && groupTitle ? headerNode ?? /* @__PURE__ */ jsxRuntime.jsx(chunkI5TCE5E7_js.Text, { tag: "div", size: "sm", weight: "medium", color: "muted", children: groupTitle }) : null,
93
+ /* @__PURE__ */ jsxRuntime.jsx(
94
+ chunkPR3PQUKM_js.Timeline,
95
+ {
96
+ items: timelineItems,
97
+ renderItem: (timelineItem, index) => {
98
+ const activity = timelineItem.activity;
99
+ if (!activity) return null;
100
+ return renderDefaultItem(activity, index, group);
101
+ }
102
+ }
103
+ )
104
+ ] }, group.key ?? groupIndex);
105
+ }) });
106
+ };
107
+ var ActivityFeed_default = ActivityFeed;
108
+
109
+ exports.ActivityFeed = ActivityFeed;
110
+ exports.ActivityFeed_default = ActivityFeed_default;
@@ -1,4 +1,5 @@
1
1
  import { useEscapeKey } from './chunk-WLIFEALE.mjs';
2
+ import { Button } from './chunk-ENSLMM3L.mjs';
2
3
  import React, { useEffect, useCallback, useMemo, useId, useRef } from 'react';
3
4
  import { createPortal } from 'react-dom';
4
5
  import { getModalContentClasses, getModalContainerClasses, resolveLocaleText, captureActiveElement, focusFirst, restoreFocus, getFocusableElements, getFocusTrapNavigation, classNames, modalMaskClasses, modalHeaderClasses, modalTitleClasses, modalCloseButtonClasses, modalBodyClasses, modalFooterClasses, modalWrapperClasses, closeIconViewBox, closeIconPathD, closeIconPathStrokeWidth, closeIconPathStrokeLinejoin, closeIconPathStrokeLinecap } from '@expcat/tigercat-core';
@@ -21,8 +22,11 @@ var Modal = ({
21
22
  onVisibleChange,
22
23
  onClose,
23
24
  onCancel,
24
- onOk: _onOk,
25
+ onOk,
25
26
  closeAriaLabel,
27
+ showDefaultFooter = false,
28
+ okText,
29
+ cancelText,
26
30
  locale,
27
31
  style,
28
32
  ...rest
@@ -44,6 +48,10 @@ var Modal = ({
44
48
  onCancel?.();
45
49
  onVisibleChange?.(false);
46
50
  }, [onCancel, onVisibleChange]);
51
+ const handleOk = useCallback(() => {
52
+ onOk?.();
53
+ onVisibleChange?.(false);
54
+ }, [onOk, onVisibleChange]);
47
55
  const handleMaskClick = useCallback(
48
56
  (event) => {
49
57
  if (maskClosable && event.target === event.currentTarget) {
@@ -60,6 +68,18 @@ var Modal = ({
60
68
  locale?.modal?.closeAriaLabel,
61
69
  locale?.common?.closeText
62
70
  );
71
+ const resolvedCancelText = resolveLocaleText(
72
+ "\u53D6\u6D88",
73
+ cancelText,
74
+ locale?.modal?.cancelText,
75
+ locale?.common?.cancelText
76
+ );
77
+ const resolvedOkText = resolveLocaleText(
78
+ "\u786E\u5B9A",
79
+ okText,
80
+ locale?.modal?.okText,
81
+ locale?.common?.okText
82
+ );
63
83
  const reactId = useId();
64
84
  const modalId = useMemo(() => `tiger-modal-${reactId}`, [reactId]);
65
85
  const titleId = `${modalId}-title`;
@@ -74,15 +94,13 @@ var Modal = ({
74
94
  const closeButtonRef = useRef(null);
75
95
  const previousActiveElementRef = useRef(null);
76
96
  useEffect(() => {
77
- if (!visible) return;
78
- previousActiveElementRef.current = captureActiveElement();
79
- const timer = setTimeout(() => {
80
- focusFirst([closeButtonRef.current, dialogRef.current]);
81
- }, 0);
82
- return () => clearTimeout(timer);
83
- }, [visible]);
84
- useEffect(() => {
85
- if (visible) return;
97
+ if (visible) {
98
+ previousActiveElementRef.current = captureActiveElement();
99
+ const timer = setTimeout(() => {
100
+ focusFirst([closeButtonRef.current, dialogRef.current]);
101
+ }, 0);
102
+ return () => clearTimeout(timer);
103
+ }
86
104
  restoreFocus(previousActiveElementRef.current);
87
105
  }, [visible]);
88
106
  useEscapeKey({ enabled: visible, onEscape: handleClose });
@@ -118,9 +136,6 @@ var Modal = ({
118
136
  if (!shouldRender) {
119
137
  return null;
120
138
  }
121
- if (destroyOnClose && !visible) {
122
- return null;
123
- }
124
139
  const modalContent = /* @__PURE__ */ jsxs(
125
140
  "div",
126
141
  {
@@ -141,7 +156,7 @@ var Modal = ({
141
156
  /* @__PURE__ */ jsx("div", { className: containerClasses, onClick: handleMaskClick, children: /* @__PURE__ */ jsxs(
142
157
  "div",
143
158
  {
144
- className: classNames(contentClasses),
159
+ className: contentClasses,
145
160
  style,
146
161
  ...dialogDivProps,
147
162
  role: "dialog",
@@ -167,7 +182,10 @@ var Modal = ({
167
182
  )
168
183
  ] }),
169
184
  children && /* @__PURE__ */ jsx("div", { className: modalBodyClasses, children }),
170
- footer && /* @__PURE__ */ jsx("div", { className: modalFooterClasses, "data-tiger-modal-footer": "", children: footer })
185
+ footer ? /* @__PURE__ */ jsx("div", { className: modalFooterClasses, "data-tiger-modal-footer": "", children: footer }) : showDefaultFooter ? /* @__PURE__ */ jsxs("div", { className: modalFooterClasses, "data-tiger-modal-footer": "", children: [
186
+ /* @__PURE__ */ jsx(Button, { variant: "secondary", onClick: handleClose, children: resolvedCancelText }),
187
+ /* @__PURE__ */ jsx(Button, { onClick: handleOk, children: resolvedOkText })
188
+ ] }) : null
171
189
  ]
172
190
  }
173
191
  ) })