@expcat/tigercat-react 1.3.4 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (432) hide show
  1. package/dist/{chunk-WV5XHYW6.js → chunk-23XPDNCA.js} +6 -4
  2. package/dist/{chunk-CY5GRTAX.js → chunk-24NDLFPK.js} +46 -33
  3. package/dist/{chunk-3SV6J7I5.mjs → chunk-2L7QEOFD.mjs} +34 -25
  4. package/dist/{chunk-NMKFR435.js → chunk-2LKX6CE7.js} +7 -4
  5. package/dist/{chunk-MB6U72CI.js → chunk-2PV3F47T.js} +2 -2
  6. package/dist/{chunk-ANN5P7TJ.js → chunk-2ZA4MUO2.js} +72 -29
  7. package/dist/{chunk-H4AR4GXH.js → chunk-3NVMKDMH.js} +1 -8
  8. package/dist/{chunk-NPTXXUXF.mjs → chunk-3RBRWBUG.mjs} +9 -7
  9. package/dist/{chunk-SIY6FDKJ.js → chunk-3RQ3FHJ7.js} +341 -316
  10. package/dist/{chunk-ELRZ2ZHM.mjs → chunk-4DRJA5ZK.mjs} +15 -17
  11. package/dist/{chunk-J3N24I7A.mjs → chunk-4F3UTDFE.mjs} +24 -6
  12. package/dist/{chunk-3CJFNG54.mjs → chunk-4HMMH4XS.mjs} +24 -11
  13. package/dist/{chunk-IG75YSX3.mjs → chunk-4MONGWU5.mjs} +4 -6
  14. package/dist/{chunk-CHBUNQIJ.mjs → chunk-4MREOFVE.mjs} +26 -9
  15. package/dist/{chunk-EEF26RBA.mjs → chunk-4SU6D2E7.mjs} +15 -3
  16. package/dist/{chunk-ZZAR4IDS.js → chunk-4TPRBVW7.js} +19 -2
  17. package/dist/{chunk-NSEO2B74.mjs → chunk-4V5RL25M.mjs} +8 -5
  18. package/dist/{chunk-TMON4MPO.js → chunk-5ALMTE35.js} +9 -7
  19. package/dist/{chunk-AUW7DCXL.js → chunk-5JYVN65W.js} +24 -6
  20. package/dist/{chunk-3MRP3XYI.js → chunk-5QLSTNA3.js} +13 -2
  21. package/dist/chunk-5SX2M3LU.mjs +319 -0
  22. package/dist/{chunk-FI53LYZ6.js → chunk-5UREMEDS.js} +24 -8
  23. package/dist/{chunk-MSHCPJIJ.mjs → chunk-6BOSSZM3.mjs} +8 -9
  24. package/dist/chunk-6LGCAGNG.js +312 -0
  25. package/dist/{chunk-A42OLED6.mjs → chunk-6REMGSLS.mjs} +35 -13
  26. package/dist/{chunk-PNAWOJ32.js → chunk-6S5QOTXZ.js} +14 -2
  27. package/dist/{chunk-PUZDW7NR.js → chunk-6SG2N4WF.js} +135 -21
  28. package/dist/{chunk-5XE5VBDS.mjs → chunk-6UIVNRAR.mjs} +15 -2
  29. package/dist/{chunk-F6IXIH6B.mjs → chunk-7RI5W465.mjs} +43 -30
  30. package/dist/{chunk-DCKBVRLI.js → chunk-7UZ7O7KX.js} +63 -16
  31. package/dist/{chunk-ONTRGV5T.js → chunk-7YI5TAPT.js} +8 -19
  32. package/dist/chunk-AI4V7L6K.mjs +230 -0
  33. package/dist/chunk-AQOXANET.mjs +222 -0
  34. package/dist/{chunk-YOAYDEWW.mjs → chunk-ATSI3UKS.mjs} +5 -21
  35. package/dist/{chunk-ZRHDNGWO.js → chunk-BR3WLDH7.js} +16 -2
  36. package/dist/{chunk-2Y5NIPHB.mjs → chunk-BRPOEVRT.mjs} +32 -3
  37. package/dist/{chunk-LRPPXU74.mjs → chunk-CR4QBH46.mjs} +47 -8
  38. package/dist/{chunk-7U6VWD4H.mjs → chunk-CSJGNEHR.mjs} +2 -2
  39. package/dist/{chunk-OZD75CLT.js → chunk-CXXOZLP4.js} +34 -24
  40. package/dist/{chunk-7QZ4XT2P.mjs → chunk-D4X3NBAI.mjs} +11 -11
  41. package/dist/{chunk-RQXY2MGX.mjs → chunk-D7UR526A.mjs} +231 -184
  42. package/dist/{chunk-CBYJXDW4.js → chunk-DBMC6FPU.js} +16 -4
  43. package/dist/{chunk-WQ4FOHOU.mjs → chunk-DEIVWO2D.mjs} +3 -5
  44. package/dist/{chunk-WNLUUD5N.mjs → chunk-DEQZZKY5.mjs} +20 -19
  45. package/dist/{chunk-ITRYKHQJ.js → chunk-DH4B2COV.js} +121 -47
  46. package/dist/{chunk-BONUUJU3.mjs → chunk-DJOFM2VO.mjs} +1 -8
  47. package/dist/chunk-DO3MVZZN.mjs +698 -0
  48. package/dist/{chunk-6GIJ7NFV.mjs → chunk-E355NVP7.mjs} +38 -19
  49. package/dist/{chunk-KQ5I7PRM.js → chunk-ENJMHEQU.js} +48 -9
  50. package/dist/{chunk-UHFHOTNI.js → chunk-FBIBHTBG.js} +8 -9
  51. package/dist/{chunk-P36GX65N.js → chunk-FCCHM2B4.js} +40 -4
  52. package/dist/{chunk-4LIDROT4.js → chunk-FFDK6PEP.js} +7 -4
  53. package/dist/{chunk-KYP7U6FK.js → chunk-FZHBVHQ6.js} +34 -25
  54. package/dist/{chunk-R2KUNFDN.mjs → chunk-GA4YOE57.mjs} +2 -2
  55. package/dist/{chunk-3E76U2RG.js → chunk-GADCSCH2.js} +33 -5
  56. package/dist/{chunk-JOB47R6Q.mjs → chunk-GCOA4AO6.mjs} +72 -29
  57. package/dist/{chunk-GN3TSQWW.mjs → chunk-GOUSXJEY.mjs} +2 -2
  58. package/dist/{chunk-WVVXZKNI.js → chunk-GPAY5F7D.js} +14 -14
  59. package/dist/{chunk-KGSDDVRC.mjs → chunk-GQPKHMHA.mjs} +4 -4
  60. package/dist/{chunk-NKSYX4R7.mjs → chunk-GTDLZF7K.mjs} +2 -2
  61. package/dist/{chunk-2GQCFTD7.mjs → chunk-H4MPPCTB.mjs} +23 -4
  62. package/dist/{chunk-3ZNZLGQO.mjs → chunk-H7D7UBDC.mjs} +8 -9
  63. package/dist/{chunk-BBLVRLXT.js → chunk-HFGTJEQW.js} +301 -164
  64. package/dist/{chunk-GQFVVAEF.js → chunk-HVAG26CK.js} +5 -5
  65. package/dist/{chunk-L5AMVEQL.mjs → chunk-HWZSMV2M.mjs} +61 -19
  66. package/dist/{chunk-TC6JLEGZ.js → chunk-I5UB4FN3.js} +27 -10
  67. package/dist/{chunk-4U5HSR2H.js → chunk-I6VHGILW.js} +24 -13
  68. package/dist/{chunk-EOU6WZTS.js → chunk-I7OSNH5T.js} +34 -5
  69. package/dist/{chunk-M73NMNZX.js → chunk-IFB3OECJ.js} +18 -5
  70. package/dist/{chunk-Y5RQN5BO.mjs → chunk-IXAPFTTD.mjs} +7 -6
  71. package/dist/{chunk-EHIXCFD7.js → chunk-JHRFG5PG.js} +57 -12
  72. package/dist/{chunk-3EB42WFR.mjs → chunk-KCPGFO5R.mjs} +2 -2
  73. package/dist/{chunk-G3PBQ4B4.mjs → chunk-KQ4ZKXXN.mjs} +52 -2
  74. package/dist/{chunk-I373B74W.js → chunk-KSXGH3FO.js} +105 -44
  75. package/dist/{chunk-X7JAYXPY.js → chunk-KVWSVDAJ.js} +4 -4
  76. package/dist/chunk-L3WPA2RP.js +25 -0
  77. package/dist/{chunk-NVEIVIAW.mjs → chunk-LACDTZTE.mjs} +134 -20
  78. package/dist/{chunk-WI4N5DD3.mjs → chunk-LAKPYMBZ.mjs} +17 -4
  79. package/dist/{chunk-6GU5NH5F.mjs → chunk-LBXNMCXN.mjs} +33 -5
  80. package/dist/{chunk-4LX5UGPQ.js → chunk-LJRCEB7F.js} +168 -121
  81. package/dist/{chunk-BJQIYELW.mjs → chunk-LOM6NNQK.mjs} +34 -21
  82. package/dist/{chunk-KXNWY2Q7.mjs → chunk-LUABLBKS.mjs} +308 -171
  83. package/dist/{chunk-F7H4ALKN.js → chunk-LZG24TDB.js} +8 -9
  84. package/dist/{chunk-K2TXT5HQ.js → chunk-M577W3TS.js} +101 -85
  85. package/dist/{chunk-UXUYCWQC.js → chunk-MOYZF62V.js} +34 -21
  86. package/dist/{chunk-6TR7JB6C.js → chunk-MQIVMK24.js} +4 -4
  87. package/dist/{chunk-DKT2EYVM.mjs → chunk-MV2JQ6XQ.mjs} +3 -6
  88. package/dist/{chunk-WMPCN7OF.mjs → chunk-MZCGQED3.mjs} +15 -3
  89. package/dist/{chunk-IGAMV6ML.mjs → chunk-MZPKFMQC.mjs} +1 -1
  90. package/dist/{chunk-AG4HRAW2.mjs → chunk-NEHSCSQP.mjs} +2 -2
  91. package/dist/chunk-NG3OBMKV.js +319 -0
  92. package/dist/{chunk-RFHPG4KN.js → chunk-NGSJGXUZ.js} +15 -17
  93. package/dist/{chunk-WIWTY74F.mjs → chunk-NJHZQBA7.mjs} +16 -2
  94. package/dist/{chunk-EQD2U4KM.js → chunk-O2N7ITWQ.js} +63 -16
  95. package/dist/{chunk-NASC6XHN.mjs → chunk-O6YIPNXX.mjs} +24 -15
  96. package/dist/{chunk-VHGCWZ6V.mjs → chunk-OTRPN5ZG.mjs} +58 -13
  97. package/dist/{chunk-QIKR5EFI.js → chunk-OVJO5NYW.js} +4 -4
  98. package/dist/{chunk-6GYT3EZD.mjs → chunk-P2WQIVXD.mjs} +25 -14
  99. package/dist/{chunk-NMEVQPOD.js → chunk-PHAJXRGE.js} +2 -4
  100. package/dist/{chunk-WG3YS2QV.js → chunk-PQF5VLNX.js} +35 -13
  101. package/dist/chunk-PQOUWJAT.mjs +211 -0
  102. package/dist/{chunk-AW5M3EL4.js → chunk-PSCPLUGP.js} +63 -21
  103. package/dist/{chunk-ITVLIR7T.mjs → chunk-PZB24FST.mjs} +23 -25
  104. package/dist/{chunk-BO45CU4Q.js → chunk-PZWI4YNN.js} +6 -4
  105. package/dist/{chunk-PFYK2V3E.js → chunk-Q2OXQNWU.js} +73 -9
  106. package/dist/{chunk-VM4ZQHT5.mjs → chunk-QANWBRNU.mjs} +59 -12
  107. package/dist/{chunk-XBM76P27.mjs → chunk-QFUIGOOM.mjs} +4 -2
  108. package/dist/{chunk-5OHVTGHS.mjs → chunk-QKNORS26.mjs} +385 -319
  109. package/dist/{chunk-ZFMMAYSX.js → chunk-QLATA4UB.js} +4 -6
  110. package/dist/{chunk-LROHXQWX.js → chunk-R4PMBWU3.js} +2 -2
  111. package/dist/chunk-R56UOY6C.js +222 -0
  112. package/dist/chunk-RNHC7BON.js +230 -0
  113. package/dist/{chunk-RF2BA2N6.js → chunk-RRO752KE.js} +11 -10
  114. package/dist/{chunk-2TZ3SBMU.mjs → chunk-S4NGDDAM.mjs} +120 -46
  115. package/dist/{chunk-EF5ZTNHX.js → chunk-SA3N2LUB.js} +37 -20
  116. package/dist/{chunk-M7HBWFQO.js → chunk-SFBSI3J7.js} +14 -1
  117. package/dist/{chunk-G5USITWF.js → chunk-SH4BZYXO.js} +27 -8
  118. package/dist/{chunk-RVO6R37N.mjs → chunk-SHDQJ5BJ.mjs} +1 -1
  119. package/dist/{chunk-N2JYU4JI.js → chunk-SHU7L4NM.js} +52 -2
  120. package/dist/{chunk-I2AUOICV.mjs → chunk-SI3P3V75.mjs} +19 -9
  121. package/dist/{chunk-UVMQJOTX.js → chunk-SK7PXSVE.js} +23 -14
  122. package/dist/{chunk-U356F7GU.js → chunk-SO2ADQTB.js} +52 -11
  123. package/dist/{chunk-NKKIJQMV.mjs → chunk-SPIPFOGD.mjs} +4 -2
  124. package/dist/{chunk-JLRRXRZO.js → chunk-SQONS5PH.js} +4 -7
  125. package/dist/{chunk-NQNHM4OL.mjs → chunk-SRC7JHME.mjs} +1 -1
  126. package/dist/{chunk-EEWHWEYO.js → chunk-SXTMVZ4W.js} +25 -12
  127. package/dist/{chunk-LMTUM3J3.js → chunk-SYJJKI7U.js} +37 -18
  128. package/dist/{chunk-3QPCQH62.mjs → chunk-SYVMCKPR.mjs} +1 -1
  129. package/dist/{chunk-SY23FAXK.mjs → chunk-T6HNFCOW.mjs} +24 -8
  130. package/dist/{chunk-ZITBUGBH.mjs → chunk-TBMDIAZI.mjs} +59 -12
  131. package/dist/{chunk-TSJYAEFZ.js → chunk-TIDVBSXR.js} +371 -305
  132. package/dist/{chunk-ZJI2VLIL.js → chunk-TLDTBCT6.js} +15 -3
  133. package/dist/{chunk-XFPJYKBQ.js → chunk-TN7GMDME.js} +13 -9
  134. package/dist/{chunk-ZYJTHGQW.js → chunk-TO4SSBAJ.js} +26 -25
  135. package/dist/{chunk-N4PP3ENO.js → chunk-TPU6S7G7.js} +2 -2
  136. package/dist/{chunk-PU7KEYLP.mjs → chunk-TRXNHYWB.mjs} +9 -9
  137. package/dist/{chunk-H6NC6SBX.js → chunk-TVEO2CFD.js} +2 -2
  138. package/dist/{chunk-6QQBMZQ6.mjs → chunk-U2ZXZ2KQ.mjs} +74 -10
  139. package/dist/{chunk-FB34UWF7.mjs → chunk-U337RHJB.mjs} +103 -42
  140. package/dist/{chunk-XRNKHQTL.js → chunk-UEAXYZSE.js} +3 -2
  141. package/dist/{chunk-7ISEWLA3.js → chunk-UKQMF3JV.js} +21 -6
  142. package/dist/chunk-UQZ4RLTI.js +698 -0
  143. package/dist/{chunk-PXO2F2CS.mjs → chunk-V23KR23W.mjs} +47 -4
  144. package/dist/{chunk-6I6X255M.js → chunk-V3QEV3TL.js} +12 -12
  145. package/dist/{chunk-M5GSLKUX.mjs → chunk-VAIWWELW.mjs} +15 -3
  146. package/dist/{chunk-GG72T6JK.js → chunk-VOSN3IQC.js} +47 -4
  147. package/dist/{chunk-J4OQ2VRH.mjs → chunk-W6T3CG7U.mjs} +45 -4
  148. package/dist/{chunk-OTEM4FVX.mjs → chunk-WGKNAOW7.mjs} +11 -7
  149. package/dist/chunk-WHYHLUXG.mjs +25 -0
  150. package/dist/chunk-WLFLQB4R.mjs +312 -0
  151. package/dist/{chunk-W6AWN7BC.js → chunk-WLORVPTR.js} +4 -4
  152. package/dist/{chunk-J5N5OQWB.mjs → chunk-WOEX4S6J.mjs} +5 -2
  153. package/dist/{chunk-SDZOVRVR.mjs → chunk-WT72F56O.mjs} +351 -326
  154. package/dist/{chunk-7Z64GEMN.js → chunk-WTASPL6V.js} +3 -1
  155. package/dist/{chunk-FNJDBFKM.mjs → chunk-WTIEJCRV.mjs} +12 -1
  156. package/dist/{chunk-V4JIZN3E.mjs → chunk-WYPTAUCX.mjs} +6 -17
  157. package/dist/{chunk-BFAZZUD6.js → chunk-XKMZ5AMS.js} +7 -23
  158. package/dist/{chunk-SKMZTW3K.js → chunk-XMD7CQQ2.js} +24 -26
  159. package/dist/{chunk-7DUHHRAU.mjs → chunk-Y5X3G2LD.mjs} +41 -5
  160. package/dist/{chunk-XATXFVKR.mjs → chunk-Y7K27DVV.mjs} +4 -3
  161. package/dist/{chunk-ZA5EFHET.mjs → chunk-Z6BDNV3S.mjs} +18 -1
  162. package/dist/{chunk-UBP7HZSU.mjs → chunk-ZG2W4HS5.mjs} +6 -4
  163. package/dist/{chunk-UIIOZEUP.js → chunk-ZLCVJXGL.js} +4 -4
  164. package/dist/{chunk-LQT6ZGME.mjs → chunk-ZLP4XEAO.mjs} +36 -19
  165. package/dist/{chunk-QQFLRNI3.mjs → chunk-ZRZB3C5J.mjs} +18 -3
  166. package/dist/{chunk-YID7J6ZK.js → chunk-ZXVLZKLT.js} +1 -1
  167. package/dist/components/ActivityFeed.js +6 -5
  168. package/dist/components/ActivityFeed.mjs +5 -4
  169. package/dist/components/AreaChart.js +4 -4
  170. package/dist/components/AreaChart.mjs +3 -3
  171. package/dist/components/AutoComplete.js +3 -2
  172. package/dist/components/AutoComplete.mjs +2 -1
  173. package/dist/components/BackTop.js +2 -2
  174. package/dist/components/BackTop.mjs +1 -1
  175. package/dist/components/Badge.js +3 -2
  176. package/dist/components/Badge.mjs +2 -1
  177. package/dist/components/BarChart.js +4 -4
  178. package/dist/components/BarChart.mjs +3 -3
  179. package/dist/components/Breadcrumb.d.mts +1 -1
  180. package/dist/components/Breadcrumb.d.ts +1 -1
  181. package/dist/components/Calendar.d.mts +2 -10
  182. package/dist/components/Calendar.d.ts +2 -10
  183. package/dist/components/Calendar.js +3 -2
  184. package/dist/components/Calendar.mjs +2 -1
  185. package/dist/components/Cascader.d.mts +3 -1
  186. package/dist/components/Cascader.d.ts +3 -1
  187. package/dist/components/Cascader.js +3 -2
  188. package/dist/components/Cascader.mjs +2 -1
  189. package/dist/components/ChartAxis.d.mts +1 -2
  190. package/dist/components/ChartAxis.d.ts +1 -2
  191. package/dist/components/ChartGrid.d.mts +1 -2
  192. package/dist/components/ChartGrid.d.ts +1 -2
  193. package/dist/components/ChartLegend.js +2 -2
  194. package/dist/components/ChartLegend.mjs +1 -1
  195. package/dist/components/ChartSeries.d.mts +1 -2
  196. package/dist/components/ChartSeries.d.ts +1 -2
  197. package/dist/components/ChartTooltip.js +2 -2
  198. package/dist/components/ChartTooltip.mjs +1 -1
  199. package/dist/components/ChatWindow.js +9 -7
  200. package/dist/components/ChatWindow.mjs +8 -6
  201. package/dist/components/Checkbox.js +4 -4
  202. package/dist/components/Checkbox.mjs +3 -3
  203. package/dist/components/CheckboxGroup.js +3 -3
  204. package/dist/components/CheckboxGroup.mjs +2 -2
  205. package/dist/components/CodeEditor.js +2 -2
  206. package/dist/components/CodeEditor.mjs +1 -1
  207. package/dist/components/CommentThread.js +7 -5
  208. package/dist/components/CommentThread.mjs +6 -4
  209. package/dist/components/CropUpload.d.mts +6 -2
  210. package/dist/components/CropUpload.d.ts +6 -2
  211. package/dist/components/CropUpload.js +5 -5
  212. package/dist/components/CropUpload.mjs +4 -4
  213. package/dist/components/DataTableWithToolbar.d.mts +2 -3
  214. package/dist/components/DataTableWithToolbar.d.ts +2 -3
  215. package/dist/components/DataTableWithToolbar.js +13 -12
  216. package/dist/components/DataTableWithToolbar.mjs +12 -11
  217. package/dist/components/DatePicker.d.mts +1 -0
  218. package/dist/components/DatePicker.d.ts +1 -0
  219. package/dist/components/DatePicker.js +4 -2
  220. package/dist/components/DatePicker.mjs +3 -1
  221. package/dist/components/DonutChart.js +5 -5
  222. package/dist/components/DonutChart.mjs +4 -4
  223. package/dist/components/Drawer.js +3 -3
  224. package/dist/components/Drawer.mjs +2 -2
  225. package/dist/components/Empty.js +3 -2
  226. package/dist/components/Empty.mjs +2 -1
  227. package/dist/components/FileManager.d.mts +3 -22
  228. package/dist/components/FileManager.d.ts +3 -22
  229. package/dist/components/FileManager.js +3 -2
  230. package/dist/components/FileManager.mjs +2 -1
  231. package/dist/components/FloatButton.js +2 -2
  232. package/dist/components/FloatButton.mjs +1 -1
  233. package/dist/components/Form.js +3 -2
  234. package/dist/components/Form.mjs +2 -1
  235. package/dist/components/FormItem.js +4 -3
  236. package/dist/components/FormItem.mjs +3 -2
  237. package/dist/components/FormWizard.js +4 -4
  238. package/dist/components/FormWizard.mjs +3 -3
  239. package/dist/components/FunnelChart.js +4 -4
  240. package/dist/components/FunnelChart.mjs +3 -3
  241. package/dist/components/GaugeChart.js +3 -2
  242. package/dist/components/GaugeChart.mjs +2 -1
  243. package/dist/components/HeatmapChart.js +3 -3
  244. package/dist/components/HeatmapChart.mjs +2 -2
  245. package/dist/components/Image.js +5 -4
  246. package/dist/components/Image.mjs +4 -3
  247. package/dist/components/ImageAnnotation.d.mts +1 -1
  248. package/dist/components/ImageAnnotation.d.ts +1 -1
  249. package/dist/components/ImageAnnotation.js +3 -2
  250. package/dist/components/ImageAnnotation.mjs +2 -1
  251. package/dist/components/ImageCropper.js +3 -2
  252. package/dist/components/ImageCropper.mjs +2 -1
  253. package/dist/components/ImageGroup.js +4 -3
  254. package/dist/components/ImageGroup.mjs +3 -2
  255. package/dist/components/ImagePreview.js +3 -2
  256. package/dist/components/ImagePreview.mjs +2 -1
  257. package/dist/components/ImageViewer.d.mts +3 -1
  258. package/dist/components/ImageViewer.d.ts +3 -1
  259. package/dist/components/ImageViewer.js +3 -2
  260. package/dist/components/ImageViewer.mjs +2 -1
  261. package/dist/components/InfiniteScroll.d.mts +2 -0
  262. package/dist/components/InfiniteScroll.d.ts +2 -0
  263. package/dist/components/InfiniteScroll.js +3 -2
  264. package/dist/components/InfiniteScroll.mjs +2 -1
  265. package/dist/components/Input.js +4 -2
  266. package/dist/components/Input.mjs +3 -1
  267. package/dist/components/InputNumber.js +4 -2
  268. package/dist/components/InputNumber.mjs +3 -1
  269. package/dist/components/Kanban.d.mts +5 -1
  270. package/dist/components/Kanban.d.ts +5 -1
  271. package/dist/components/Kanban.js +3 -3
  272. package/dist/components/Kanban.mjs +2 -2
  273. package/dist/components/LineChart.js +4 -4
  274. package/dist/components/LineChart.mjs +3 -3
  275. package/dist/components/List.d.mts +6 -3
  276. package/dist/components/List.d.ts +6 -3
  277. package/dist/components/List.js +4 -3
  278. package/dist/components/List.mjs +3 -2
  279. package/dist/components/Loading.js +3 -2
  280. package/dist/components/Loading.mjs +2 -1
  281. package/dist/components/MarkdownEditor.js +3 -3
  282. package/dist/components/MarkdownEditor.mjs +2 -2
  283. package/dist/components/Mentions.js +2 -2
  284. package/dist/components/Mentions.mjs +1 -1
  285. package/dist/components/Menu.d.mts +8 -80
  286. package/dist/components/Menu.d.ts +8 -80
  287. package/dist/components/Menu.js +2 -2
  288. package/dist/components/Menu.mjs +1 -1
  289. package/dist/components/MenuItem.d.mts +6 -2
  290. package/dist/components/MenuItem.d.ts +6 -2
  291. package/dist/components/MenuItem.js +2 -2
  292. package/dist/components/MenuItem.mjs +1 -1
  293. package/dist/components/MenuItemGroup.d.mts +6 -2
  294. package/dist/components/MenuItemGroup.d.ts +6 -2
  295. package/dist/components/MenuItemGroup.js +2 -2
  296. package/dist/components/MenuItemGroup.mjs +1 -1
  297. package/dist/components/Message.d.mts +2 -1
  298. package/dist/components/Message.d.ts +2 -1
  299. package/dist/components/Message.js +2 -2
  300. package/dist/components/Message.mjs +1 -1
  301. package/dist/components/Modal.js +3 -3
  302. package/dist/components/Modal.mjs +2 -2
  303. package/dist/components/Notification.js +2 -2
  304. package/dist/components/Notification.mjs +1 -1
  305. package/dist/components/NotificationCenter.js +7 -6
  306. package/dist/components/NotificationCenter.mjs +6 -5
  307. package/dist/components/NumberKeyboard.js +3 -2
  308. package/dist/components/NumberKeyboard.mjs +2 -1
  309. package/dist/components/PieChart.js +4 -4
  310. package/dist/components/PieChart.mjs +3 -3
  311. package/dist/components/QRCode.d.mts +2 -1
  312. package/dist/components/QRCode.d.ts +2 -1
  313. package/dist/components/QRCode.js +3 -2
  314. package/dist/components/QRCode.mjs +2 -1
  315. package/dist/components/RadarChart.js +4 -4
  316. package/dist/components/RadarChart.mjs +3 -3
  317. package/dist/components/Radio.js +4 -4
  318. package/dist/components/Radio.mjs +3 -3
  319. package/dist/components/RadioGroup.js +3 -3
  320. package/dist/components/RadioGroup.mjs +2 -2
  321. package/dist/components/Rate.js +2 -2
  322. package/dist/components/Rate.mjs +1 -1
  323. package/dist/components/Resizable.js +2 -2
  324. package/dist/components/Resizable.mjs +1 -1
  325. package/dist/components/Result.js +2 -2
  326. package/dist/components/Result.mjs +1 -1
  327. package/dist/components/RichTextEditor.js +3 -3
  328. package/dist/components/RichTextEditor.mjs +2 -2
  329. package/dist/components/ScatterChart.js +4 -4
  330. package/dist/components/ScatterChart.mjs +3 -3
  331. package/dist/components/Segmented.d.mts +1 -1
  332. package/dist/components/Segmented.d.ts +1 -1
  333. package/dist/components/Segmented.js +2 -2
  334. package/dist/components/Segmented.mjs +1 -1
  335. package/dist/components/Select.d.mts +3 -1
  336. package/dist/components/Select.d.ts +3 -1
  337. package/dist/components/Select.js +3 -2
  338. package/dist/components/Select.mjs +2 -1
  339. package/dist/components/Signature.d.mts +1 -0
  340. package/dist/components/Signature.d.ts +1 -0
  341. package/dist/components/Signature.js +3 -2
  342. package/dist/components/Signature.mjs +2 -1
  343. package/dist/components/Slider.js +2 -2
  344. package/dist/components/Slider.mjs +1 -1
  345. package/dist/components/Splitter.js +2 -2
  346. package/dist/components/Splitter.mjs +1 -1
  347. package/dist/components/Spotlight.js +4 -2
  348. package/dist/components/Spotlight.mjs +3 -1
  349. package/dist/components/Steps.js +2 -2
  350. package/dist/components/Steps.mjs +1 -1
  351. package/dist/components/StepsItem.js +2 -2
  352. package/dist/components/StepsItem.mjs +1 -1
  353. package/dist/components/SubMenu.d.mts +6 -2
  354. package/dist/components/SubMenu.d.ts +6 -2
  355. package/dist/components/SubMenu.js +2 -2
  356. package/dist/components/SubMenu.mjs +1 -1
  357. package/dist/components/SunburstChart.js +4 -4
  358. package/dist/components/SunburstChart.mjs +3 -3
  359. package/dist/components/TabPane.js +2 -2
  360. package/dist/components/TabPane.mjs +1 -1
  361. package/dist/components/Table.d.mts +3 -3
  362. package/dist/components/Table.d.ts +3 -3
  363. package/dist/components/Table.js +9 -9
  364. package/dist/components/Table.mjs +8 -8
  365. package/dist/components/Tabs.d.mts +0 -4
  366. package/dist/components/Tabs.d.ts +0 -4
  367. package/dist/components/Tabs.js +2 -2
  368. package/dist/components/Tabs.mjs +1 -1
  369. package/dist/components/Tag.js +3 -2
  370. package/dist/components/Tag.mjs +2 -1
  371. package/dist/components/TaskBoard.d.mts +3 -1
  372. package/dist/components/TaskBoard.d.ts +3 -1
  373. package/dist/components/TaskBoard.js +2 -2
  374. package/dist/components/TaskBoard.mjs +1 -1
  375. package/dist/components/Textarea.js +4 -3
  376. package/dist/components/Textarea.mjs +3 -2
  377. package/dist/components/TimePicker.d.mts +1 -0
  378. package/dist/components/TimePicker.d.ts +1 -0
  379. package/dist/components/TimePicker.js +4 -2
  380. package/dist/components/TimePicker.mjs +3 -1
  381. package/dist/components/Timeline.d.mts +5 -1
  382. package/dist/components/Timeline.d.ts +5 -1
  383. package/dist/components/Timeline.js +3 -2
  384. package/dist/components/Timeline.mjs +2 -1
  385. package/dist/components/Tour.js +4 -2
  386. package/dist/components/Tour.mjs +3 -1
  387. package/dist/components/Transfer.d.mts +3 -1
  388. package/dist/components/Transfer.d.ts +3 -1
  389. package/dist/components/Transfer.js +3 -2
  390. package/dist/components/Transfer.mjs +2 -1
  391. package/dist/components/Tree.d.mts +3 -1
  392. package/dist/components/Tree.d.ts +3 -1
  393. package/dist/components/Tree.js +4 -3
  394. package/dist/components/Tree.mjs +3 -2
  395. package/dist/components/TreeMapChart.js +4 -4
  396. package/dist/components/TreeMapChart.mjs +3 -3
  397. package/dist/components/TreeSelect.d.mts +3 -1
  398. package/dist/components/TreeSelect.d.ts +3 -1
  399. package/dist/components/TreeSelect.js +3 -2
  400. package/dist/components/TreeSelect.mjs +2 -1
  401. package/dist/components/Upload.js +3 -2
  402. package/dist/components/Upload.mjs +2 -1
  403. package/dist/components/VirtualList.js +2 -2
  404. package/dist/components/VirtualList.mjs +1 -1
  405. package/dist/components/VirtualTable.d.mts +9 -3
  406. package/dist/components/VirtualTable.d.ts +9 -3
  407. package/dist/components/VirtualTable.js +3 -2
  408. package/dist/components/VirtualTable.mjs +2 -1
  409. package/dist/index.d.mts +81 -56
  410. package/dist/index.d.ts +81 -56
  411. package/dist/index.js +92 -92
  412. package/dist/index.mjs +93 -93
  413. package/dist/{types-CHmCMNEM.d.ts → types-0oVwMXtR.d.mts} +1 -1
  414. package/dist/{types-CHmCMNEM.d.mts → types-0oVwMXtR.d.ts} +1 -1
  415. package/dist/types-CcgZY0mv.d.mts +80 -0
  416. package/dist/types-CcgZY0mv.d.ts +80 -0
  417. package/package.json +6 -6
  418. package/dist/chunk-4GITZKAH.mjs +0 -153
  419. package/dist/chunk-4SO4LANY.js +0 -626
  420. package/dist/chunk-5EVHVZG5.js +0 -131
  421. package/dist/chunk-5HFHHFQS.mjs +0 -168
  422. package/dist/chunk-CDRQSKXT.mjs +0 -195
  423. package/dist/chunk-DLKUDB2R.js +0 -153
  424. package/dist/chunk-GYQ2DN6Z.mjs +0 -174
  425. package/dist/chunk-HR5GBE3P.js +0 -168
  426. package/dist/chunk-S5Y6UHAK.mjs +0 -131
  427. package/dist/chunk-T7KO6EVK.js +0 -174
  428. package/dist/chunk-UKGQ7256.js +0 -12
  429. package/dist/chunk-UQMPEMY7.mjs +0 -12
  430. package/dist/chunk-VNVGSPBI.mjs +0 -626
  431. package/dist/{chunk-UMZ3PMUJ.js → chunk-SXHCMZ6U.js} +2 -2
  432. package/dist/{chunk-BWDQZSAB.mjs → chunk-WTSG7QXK.mjs} +3 -3
@@ -10,6 +10,7 @@ var _react = require('react');
10
10
 
11
11
 
12
12
 
13
+
13
14
  var _tigercatcore = require('@expcat/tigercat-core');
14
15
  var _jsxruntime = require('react/jsx-runtime');
15
16
  var Thumb = _react.memo.call(void 0,
@@ -216,7 +217,8 @@ var Slider = ({
216
217
  const tooltipClasses = _react.useMemo.call(void 0, () => _tigercatcore.getSliderTooltipClasses.call(void 0, size), [size]);
217
218
  const renderMarks = () => {
218
219
  if (!marks) return null;
219
- const marksObj = typeof marks === "boolean" ? {} : marks;
220
+ const marksObj = _tigercatcore.sliderResolveMarks.call(void 0, marks, min, max);
221
+ if (Object.keys(marksObj).length === 0) return null;
220
222
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "absolute w-full top-full mt-2", children: Object.entries(marksObj).map(([key, label]) => {
221
223
  const value = Number(key);
222
224
  const left = getPercentage(value);
@@ -2,11 +2,16 @@ import {
2
2
  renderBodyPortal,
3
3
  useBodyScrollLock
4
4
  } from "./chunk-SEWNVIHH.mjs";
5
+ import {
6
+ useTigerConfig
7
+ } from "./chunk-QAIBQHIO.mjs";
5
8
 
6
9
  // src/components/Loading.tsx
7
10
  import { useEffect, useState, useMemo } from "react";
8
11
  import {
9
12
  classNames,
13
+ resolveLocaleText,
14
+ mergeTigerLocale,
10
15
  getLoadingBarClasses,
11
16
  getLoadingBarsWrapperClasses,
12
17
  getLoadingClasses,
@@ -32,8 +37,14 @@ var Loading = ({
32
37
  lockScroll = true,
33
38
  className,
34
39
  style,
40
+ locale,
35
41
  ...props
36
42
  }) => {
43
+ const config = useTigerConfig();
44
+ const mergedLocale = useMemo(
45
+ () => mergeTigerLocale(config.locale, locale),
46
+ [config.locale, locale]
47
+ );
37
48
  const [visible, setVisible] = useState(delay <= 0);
38
49
  useEffect(() => {
39
50
  injectLoadingAnimationStyles();
@@ -116,7 +127,7 @@ var Loading = ({
116
127
  className: containerClasses,
117
128
  style: mergedStyle,
118
129
  role: "status",
119
- "aria-label": text || "Loading",
130
+ "aria-label": text || resolveLocaleText("Loading", mergedLocale?.common?.loadingText),
120
131
  "aria-live": "polite",
121
132
  "aria-busy": true,
122
133
  ...props,
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  useControlledState
3
- } from "./chunk-UQMPEMY7.mjs";
3
+ } from "./chunk-WHYHLUXG.mjs";
4
4
 
5
5
  // src/components/RichTextEditor.tsx
6
6
  import { useRef, useState, useCallback, useEffect, useMemo } from "react";
@@ -25,7 +25,7 @@ var RichTextEditor = ({
25
25
  value,
26
26
  defaultValue = "",
27
27
  placeholder,
28
- mode: _mode = "html",
28
+ mode = "html",
29
29
  toolbar,
30
30
  height = 300,
31
31
  readOnly = false,
@@ -37,31 +37,24 @@ var RichTextEditor = ({
37
37
  }) => {
38
38
  const editorRef = useRef(null);
39
39
  const engineRef = useRef(null);
40
- const [currentContent, setInternalValue, isControlled] = useControlledState(value, defaultValue);
40
+ const [currentContent, setContent] = useControlledState(value, defaultValue, onChange);
41
+ const isControlled = value !== void 0;
41
42
  const [activeFormats, setActiveFormats] = useState(/* @__PURE__ */ new Set());
42
43
  const toolbarItems = toolbar ?? defaultToolbar;
43
44
  const empty = isContentEmpty(currentContent);
44
- const onChangeRef = useRef(onChange);
45
- const setInternalValueRef = useRef(setInternalValue);
46
- const isControlledRef = useRef(isControlled);
47
- useEffect(() => {
48
- onChangeRef.current = onChange;
49
- setInternalValueRef.current = setInternalValue;
50
- isControlledRef.current = isControlled;
51
- }, [onChange, setInternalValue, isControlled]);
52
45
  useEffect(() => {
53
46
  if (!editorRef.current) return;
54
47
  const factory = engine ?? builtinRichTextEngine;
55
48
  const instance = factory.create({
56
49
  element: editorRef.current,
57
50
  initialValue: isControlled ? value : defaultValue,
51
+ mode,
58
52
  readOnly,
59
53
  disabled,
60
54
  placeholder,
61
55
  toolbar: toolbarItems,
62
56
  notifyChange(html) {
63
- if (!isControlledRef.current) setInternalValueRef.current(html);
64
- onChangeRef.current?.(html);
57
+ setContent(html);
65
58
  },
66
59
  notifyActiveFormats(next) {
67
60
  setActiveFormats(next);
@@ -84,10 +77,6 @@ var RichTextEditor = ({
84
77
  const execButtonAction = useCallback(
85
78
  (btn) => {
86
79
  if (readOnly || disabled) return;
87
- if (btn.action && editorRef.current) {
88
- btn.action(editorRef.current);
89
- return;
90
- }
91
80
  engineRef.current?.exec(btn.name);
92
81
  },
93
82
  [readOnly, disabled]
@@ -1,6 +1,6 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
2
 
3
- var _chunkUKGQ7256js = require('./chunk-UKGQ7256.js');
3
+ var _chunkL3WPA2RPjs = require('./chunk-L3WPA2RP.js');
4
4
 
5
5
  // src/components/MarkdownEditor.tsx
6
6
  var _react = require('react');
@@ -53,11 +53,8 @@ var MarkdownEditor = ({
53
53
  ...restProps
54
54
  }) => {
55
55
  const textareaRef = _react.useRef.call(void 0, null);
56
- const [currentValue, setInternalValue, isValueControlled] = _chunkUKGQ7256js.useControlledState.call(void 0,
57
- value,
58
- defaultValue
59
- );
60
- const [currentMode, setInternalMode, isModeControlled] = _chunkUKGQ7256js.useControlledState.call(void 0, mode, defaultMode);
56
+ const [currentValue, commitValue] = _chunkL3WPA2RPjs.useControlledState.call(void 0, value, defaultValue, onChange);
57
+ const [currentMode, commitMode] = _chunkL3WPA2RPjs.useControlledState.call(void 0, mode, defaultMode, onModeChange);
61
58
  const toolbarItems = _react.useMemo.call(void 0,
62
59
  () => toolbar === false ? [] : _nullishCoalesce(toolbar, () => ( _tigercatcore.defaultMarkdownToolbar)),
63
60
  [toolbar]
@@ -70,28 +67,14 @@ var MarkdownEditor = ({
70
67
  const parsedHeight = _tigercatcore.parseMarkdownHeight.call(void 0, height);
71
68
  return { ...parsedHeight ? { height: parsedHeight } : {}, ...style };
72
69
  }, [height, style]);
73
- const commitValue = _react.useCallback.call(void 0,
74
- (nextValue) => {
75
- if (!isValueControlled) setInternalValue(nextValue);
76
- _optionalChain([onChange, 'optionalCall', _ => _(nextValue)]);
77
- },
78
- [isValueControlled, onChange, setInternalValue]
79
- );
80
- const commitMode = _react.useCallback.call(void 0,
81
- (nextMode) => {
82
- if (!isModeControlled) setInternalMode(nextMode);
83
- _optionalChain([onModeChange, 'optionalCall', _2 => _2(nextMode)]);
84
- },
85
- [isModeControlled, onModeChange, setInternalMode]
86
- );
87
70
  const applyToolbarButton = _react.useCallback.call(void 0,
88
71
  (button) => {
89
72
  if (readOnly || disabled) return;
90
73
  const textarea = textareaRef.current;
91
74
  const selection = {
92
75
  value: currentValue,
93
- selectionStart: _nullishCoalesce(_optionalChain([textarea, 'optionalAccess', _3 => _3.selectionStart]), () => ( currentValue.length)),
94
- selectionEnd: _nullishCoalesce(_optionalChain([textarea, 'optionalAccess', _4 => _4.selectionEnd]), () => ( currentValue.length))
76
+ selectionStart: _nullishCoalesce(_optionalChain([textarea, 'optionalAccess', _ => _.selectionStart]), () => ( currentValue.length)),
77
+ selectionEnd: _nullishCoalesce(_optionalChain([textarea, 'optionalAccess', _2 => _2.selectionEnd]), () => ( currentValue.length))
95
78
  };
96
79
  const result = _tigercatcore.applyMarkdownToolbarAction.call(void 0, button, selection);
97
80
  commitValue(result.value);
@@ -137,7 +120,8 @@ var MarkdownEditor = ({
137
120
  ),
138
121
  role: "region",
139
122
  "aria-label": "Markdown preview",
140
- dangerouslySetInnerHTML: { __html: currentValue ? previewHtml : placeholder || "" }
123
+ ...currentValue ? { dangerouslySetInnerHTML: { __html: previewHtml } } : {},
124
+ children: currentValue ? null : placeholder
141
125
  }
142
126
  );
143
127
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
@@ -1,4 +1,11 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }// src/components/InputNumber.tsx
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
+
3
+ var _chunkI3CDTF4Ujs = require('./chunk-I3CDTF4U.js');
4
+
5
+
6
+ var _chunkL3WPA2RPjs = require('./chunk-L3WPA2RP.js');
7
+
8
+ // src/components/InputNumber.tsx
2
9
  var _react = require('react');
3
10
 
4
11
 
@@ -18,6 +25,8 @@ var _react = require('react');
18
25
 
19
26
 
20
27
 
28
+
29
+
21
30
 
22
31
 
23
32
  var _tigercatcore = require('@expcat/tigercat-core');
@@ -25,7 +34,7 @@ var _jsxruntime = require('react/jsx-runtime');
25
34
  var InputNumber = ({
26
35
  value: controlledValue,
27
36
  defaultValue,
28
- size = "md",
37
+ size,
29
38
  status = "default",
30
39
  min = -Infinity,
31
40
  max = Infinity,
@@ -47,32 +56,24 @@ var InputNumber = ({
47
56
  onBlur,
48
57
  className
49
58
  }) => {
50
- const isControlled = controlledValue !== void 0;
59
+ const inputGroup = _chunkI3CDTF4Ujs.useInputGroupContext.call(void 0, );
60
+ const effectiveSize = _nullishCoalesce(_nullishCoalesce(size, () => ( _optionalChain([inputGroup, 'optionalAccess', _ => _.size]))), () => ( "md"));
51
61
  const inputRef = _react.useRef.call(void 0, null);
52
62
  const repeatControllerRef = _react.useRef.call(void 0, _tigercatcore.createRafRepeatActionController.call(void 0, ));
53
63
  const repeatValueRef = _react.useRef.call(void 0, null);
54
64
  const suppressNextClickRef = _react.useRef.call(void 0, false);
55
65
  const [focused, setFocused] = _react.useState.call(void 0, false);
56
- const [internalValue, setInternalValue] = _react.useState.call(void 0,
57
- _nullishCoalesce(_nullishCoalesce(defaultValue, () => ( controlledValue)), () => ( null))
66
+ const [currentValue, setValue] = _chunkL3WPA2RPjs.useControlledState.call(void 0,
67
+ controlledValue,
68
+ _nullishCoalesce(_nullishCoalesce(defaultValue, () => ( controlledValue)), () => ( null)),
69
+ onChange
58
70
  );
59
71
  const [displayValue, setDisplayValue] = _react.useState.call(void 0, "");
60
- const currentValue = isControlled ? _nullishCoalesce(controlledValue, () => ( null)) : internalValue;
61
72
  const toDisplayValue = _react.useCallback.call(void 0,
62
- (val) => {
63
- if (val === null || val === void 0) return "";
64
- if (formatter) return formatter(val);
65
- if (precision !== void 0) return val.toFixed(precision);
66
- return String(val);
67
- },
73
+ (val) => _tigercatcore.formatInputNumberDisplay.call(void 0, val, { formatter, precision }),
68
74
  [formatter, precision]
69
75
  );
70
- const parseValue = (str) => {
71
- if (str === "" || str === "-") return null;
72
- if (parser) return parser(str);
73
- const num = Number(str);
74
- return Number.isNaN(num) ? null : num;
75
- };
76
+ const parseValue = (str) => _tigercatcore.parseInputNumberValue.call(void 0, str, { parser });
76
77
  _react.useEffect.call(void 0, () => {
77
78
  if (!focused) {
78
79
  setDisplayValue(toDisplayValue(currentValue));
@@ -92,10 +93,7 @@ var InputNumber = ({
92
93
  finalVal = _tigercatcore.formatPrecision.call(void 0, finalVal, precision);
93
94
  }
94
95
  }
95
- if (!isControlled) {
96
- setInternalValue(finalVal);
97
- }
98
- _optionalChain([onChange, 'optionalCall', _ => _(finalVal)]);
96
+ setValue(finalVal);
99
97
  setDisplayValue(toDisplayValue(finalVal));
100
98
  };
101
99
  const handleStep = (direction, baseValue = currentValue) => {
@@ -167,19 +165,19 @@ var InputNumber = ({
167
165
  () => _tigercatcore.classNames.call(void 0,
168
166
  _tigercatcore.getInputNumberWrapperClasses.call(void 0, disabled),
169
167
  _tigercatcore.getInputNumberStatusClasses.call(void 0, status),
170
- _tigercatcore.getInputNumberSizeClasses.call(void 0, size),
168
+ _tigercatcore.getInputNumberSizeClasses.call(void 0, effectiveSize),
171
169
  focused && `ring-2 ${_tigercatcore.getInputNumberFocusRingColor.call(void 0, status)}`,
172
170
  className
173
171
  ),
174
- [disabled, status, size, focused, className]
172
+ [disabled, status, effectiveSize, focused, className]
175
173
  );
176
174
  const inputClasses = _react.useMemo.call(void 0,
177
175
  () => _tigercatcore.getInputNumberInputClasses.call(void 0,
178
- size,
176
+ effectiveSize,
179
177
  controls && controlsPosition === "right",
180
178
  controls && controlsPosition === "both"
181
179
  ),
182
- [size, controls, controlsPosition]
180
+ [effectiveSize, controls, controlsPosition]
183
181
  );
184
182
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: wrapperClasses, children: [
185
183
  controls && controlsPosition === "both" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
@@ -1,5 +1,5 @@
1
1
  // src/components/VirtualList.tsx
2
- import { useState, useMemo, useRef, useCallback } from "react";
2
+ import { useState, useMemo, useRef, useCallback, useLayoutEffect } from "react";
3
3
  import {
4
4
  virtualListContainerClasses,
5
5
  virtualListInnerClasses,
@@ -22,7 +22,10 @@ var VirtualList = ({
22
22
  onScroll
23
23
  }) => {
24
24
  const [scrollTop, setScrollTop] = useState(0);
25
+ const [measureVersion, setMeasureVersion] = useState(0);
25
26
  const containerRef = useRef(null);
27
+ const itemRefs = useRef(/* @__PURE__ */ new Map());
28
+ const isDynamic = !customStrategy && !getItemHeight && estimatedItemHeight !== void 0;
26
29
  const strategy = useMemo(() => {
27
30
  if (customStrategy) return customStrategy;
28
31
  if (getItemHeight) return variableSizeStrategy(getItemHeight, itemCount);
@@ -32,8 +35,23 @@ var VirtualList = ({
32
35
  }, [customStrategy, getItemHeight, estimatedItemHeight, itemHeight, itemCount]);
33
36
  const range = useMemo(
34
37
  () => strategy.getRange(scrollTop, height, itemCount, overscan),
35
- [scrollTop, height, itemCount, overscan, strategy]
38
+ // measureVersion participates so re-measured heights recompute the window.
39
+ // eslint-disable-next-line react-hooks/exhaustive-deps
40
+ [scrollTop, height, itemCount, overscan, strategy, measureVersion]
36
41
  );
42
+ useLayoutEffect(() => {
43
+ if (!isDynamic || !strategy.updateItemHeight) return;
44
+ let changed = false;
45
+ itemRefs.current.forEach((el, i) => {
46
+ if (!el) return;
47
+ const measured = el.offsetHeight;
48
+ if (measured > 0 && measured !== strategy.getItemHeight(i)) {
49
+ strategy.updateItemHeight(i, measured);
50
+ changed = true;
51
+ }
52
+ });
53
+ if (changed) setMeasureVersion((v) => v + 1);
54
+ }, [isDynamic, strategy]);
37
55
  const handleScroll = useCallback(() => {
38
56
  if (containerRef.current) {
39
57
  const st = containerRef.current.scrollTop;
@@ -45,9 +63,27 @@ var VirtualList = ({
45
63
  const items = [];
46
64
  for (let i = startIndex; i <= endIndex; i++) {
47
65
  const itemH = strategy.getItemHeight(i);
48
- items.push(
49
- /* @__PURE__ */ jsx("div", { style: { height: `${itemH}px`, width: "100%" }, children: renderItem({ index: i }) }, i)
50
- );
66
+ if (isDynamic) {
67
+ const index = i;
68
+ items.push(
69
+ /* @__PURE__ */ jsx(
70
+ "div",
71
+ {
72
+ ref: (el) => {
73
+ if (el) itemRefs.current.set(index, el);
74
+ else itemRefs.current.delete(index);
75
+ },
76
+ style: { width: "100%" },
77
+ children: renderItem({ index })
78
+ },
79
+ index
80
+ )
81
+ );
82
+ } else {
83
+ items.push(
84
+ /* @__PURE__ */ jsx("div", { style: { height: `${itemH}px`, width: "100%" }, children: renderItem({ index: i }) }, i)
85
+ );
86
+ }
51
87
  }
52
88
  const offsetTop = startIndex >= 0 ? strategy.getItemOffset(startIndex) : 0;
53
89
  return /* @__PURE__ */ jsx(
@@ -6,7 +6,8 @@ import {
6
6
  mentionsDropdownClasses,
7
7
  getMentionsOptionClasses,
8
8
  extractMentionQuery,
9
- positionMentionsDropdown
9
+ positionMentionsDropdown,
10
+ getCyclicIndex
10
11
  } from "@expcat/tigercat-core";
11
12
  import { jsx, jsxs } from "react/jsx-runtime";
12
13
  var Mentions = ({
@@ -68,10 +69,10 @@ var Mentions = ({
68
69
  if (!isOpen) return;
69
70
  if (e.key === "ArrowDown") {
70
71
  e.preventDefault();
71
- setActiveIndex((prev) => (prev + 1) % filteredOptions.length);
72
+ setActiveIndex((prev) => getCyclicIndex(filteredOptions.length, prev, 1));
72
73
  } else if (e.key === "ArrowUp") {
73
74
  e.preventDefault();
74
- setActiveIndex((prev) => (prev - 1 + filteredOptions.length) % filteredOptions.length);
75
+ setActiveIndex((prev) => getCyclicIndex(filteredOptions.length, prev, -1));
75
76
  } else if (e.key === "Enter") {
76
77
  e.preventDefault();
77
78
  const opt = filteredOptions[activeIndex];
@@ -1,7 +1,13 @@
1
+ import {
2
+ useTigerConfig
3
+ } from "./chunk-QAIBQHIO.mjs";
4
+
1
5
  // src/components/Timeline.tsx
2
6
  import { useMemo } from "react";
3
7
  import {
4
8
  classNames,
9
+ mergeTigerLocale,
10
+ resolveLocaleText,
5
11
  getTimelineContainerClasses,
6
12
  getTimelineItemClasses,
7
13
  getTimelineTailClasses,
@@ -24,8 +30,14 @@ var Timeline = ({
24
30
  renderItem,
25
31
  renderDot: customRenderDot,
26
32
  className,
33
+ locale,
27
34
  ...ulProps
28
35
  }) => {
36
+ const config = useTigerConfig();
37
+ const mergedLocale = useMemo(
38
+ () => mergeTigerLocale(config.locale, locale),
39
+ [config.locale, locale]
40
+ );
29
41
  const processedItems = useMemo(() => {
30
42
  let result = reverse ? [...items].reverse() : [...items];
31
43
  if (mode === "alternate") {
@@ -88,9 +100,14 @@ var Timeline = ({
88
100
  const itemClasses = getTimelineItemClasses(mode, position, true);
89
101
  const headClasses = getTimelineHeadClasses(mode);
90
102
  const contentClasses = getTimelineContentClasses(mode, position);
103
+ const pendingText = resolveLocaleText(
104
+ "Loading...",
105
+ mergedLocale?.timeline?.pendingText,
106
+ mergedLocale?.common?.loadingText
107
+ );
91
108
  return /* @__PURE__ */ jsxs("li", { className: itemClasses, children: [
92
109
  /* @__PURE__ */ jsx("div", { className: headClasses, children: renderDotElement({}, true) }),
93
- /* @__PURE__ */ jsx("div", { className: contentClasses, children: pendingContent || /* @__PURE__ */ jsx("div", { className: timelineDescriptionClasses, children: "Loading..." }) })
110
+ /* @__PURE__ */ jsx("div", { className: contentClasses, children: pendingContent || /* @__PURE__ */ jsx("div", { className: timelineDescriptionClasses, children: pendingText }) })
94
111
  ] }, "pending");
95
112
  };
96
113
  return /* @__PURE__ */ jsxs(
@@ -16,7 +16,7 @@ var ChartLegend = ({
16
16
  const containerClasses = useMemo(
17
17
  () => classNames(
18
18
  "flex flex-wrap",
19
- position === "right" || position === "left" ? "flex-col gap-2" : "flex-row gap-3",
19
+ position === "right" || position === "left" ? "flex-col" : "flex-row",
20
20
  className
21
21
  ),
22
22
  [position, className]
@@ -43,8 +43,9 @@ var ChartLegend = ({
43
43
  "div",
44
44
  {
45
45
  className: containerClasses,
46
- role: "list",
46
+ role: interactive ? "group" : "list",
47
47
  "aria-label": "Chart legend",
48
+ style: { gap: `${gap}px` },
48
49
  "data-chart-legend": "true",
49
50
  children: items.map((item) => {
50
51
  const ItemComponent = interactive ? "button" : "div";
@@ -58,7 +59,8 @@ var ChartLegend = ({
58
59
  interactive ? "cursor-pointer hover:text-[color:var(--tiger-text,#374151)] hover:bg-[var(--tiger-chart-legend-row-hover-bg,transparent)] transition-colors" : "cursor-default",
59
60
  item.active === false ? "opacity-50" : void 0
60
61
  ),
61
- role: "listitem",
62
+ role: interactive ? void 0 : "listitem",
63
+ "aria-pressed": interactive ? item.active !== false : void 0,
62
64
  "data-legend-item": "true",
63
65
  onClick: interactive ? () => handleClick(item) : void 0,
64
66
  onMouseEnter: interactive ? () => handleHover(item) : void 0,
@@ -78,7 +80,7 @@ var ChartLegend = ({
78
80
  "data-legend-marker": "true"
79
81
  }
80
82
  ),
81
- /* @__PURE__ */ jsx("span", { style: { marginRight: `${gap}px` }, children: item.label })
83
+ /* @__PURE__ */ jsx("span", { children: item.label })
82
84
  ]
83
85
  },
84
86
  `legend-${item.index}`
@@ -3,10 +3,10 @@
3
3
  var _chunkXTV5JLLCjs = require('./chunk-XTV5JLLC.js');
4
4
 
5
5
 
6
- var _chunkWV5XHYW6js = require('./chunk-WV5XHYW6.js');
6
+ var _chunk23XPDNCAjs = require('./chunk-23XPDNCA.js');
7
7
 
8
8
 
9
- var _chunkUVMQJOTXjs = require('./chunk-UVMQJOTX.js');
9
+ var _chunkSK7PXSVEjs = require('./chunk-SK7PXSVE.js');
10
10
 
11
11
 
12
12
  var _chunkUKLVOR4Ejs = require('./chunk-UKLVOR4E.js');
@@ -194,7 +194,7 @@ var SunburstChart = ({
194
194
  }
195
195
  );
196
196
  const tooltip = showTooltip && hoverable ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
197
- _chunkUVMQJOTXjs.ChartTooltip,
197
+ _chunkSK7PXSVEjs.ChartTooltip,
198
198
  {
199
199
  content: tooltipContent,
200
200
  visible: resolvedHoveredIndex !== null && tooltipContent !== "",
@@ -211,7 +211,7 @@ var SunburstChart = ({
211
211
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: wrapperClasses, children: [
212
212
  chart,
213
213
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
214
- _chunkWV5XHYW6js.ChartLegend,
214
+ _chunk23XPDNCAjs.ChartLegend,
215
215
  {
216
216
  items: legendItems,
217
217
  position: legendPosition,
@@ -1,6 +1,12 @@
1
+ import {
2
+ useTigerConfig
3
+ } from "./chunk-QAIBQHIO.mjs";
4
+
1
5
  // src/components/Transfer.tsx
2
6
  import { useState, useMemo } from "react";
3
7
  import {
8
+ resolveLocaleText,
9
+ mergeTigerLocale,
4
10
  transferBaseClasses,
5
11
  transferPanelClasses,
6
12
  transferPanelHeaderClasses,
@@ -13,6 +19,7 @@ import {
13
19
  getTransferButtonClasses,
14
20
  splitTransferData,
15
21
  filterTransferItems,
22
+ moveTransferItems,
16
23
  getPickerListboxAria,
17
24
  getPickerOptionAria,
18
25
  classNames,
@@ -23,6 +30,7 @@ import {
23
30
  import { jsx, jsxs } from "react/jsx-runtime";
24
31
  var TRANSFER_KEYS = /* @__PURE__ */ new Set([
25
32
  "value",
33
+ "targetKeys",
26
34
  "dataSource",
27
35
  "size",
28
36
  "disabled",
@@ -33,21 +41,30 @@ var TRANSFER_KEYS = /* @__PURE__ */ new Set([
33
41
  "filterOption",
34
42
  "onChange"
35
43
  ]);
44
+ var EMPTY_TRANSFER_VALUE = [];
36
45
  var Transfer = (props) => {
37
46
  const {
38
- value = [],
47
+ value,
48
+ targetKeys,
39
49
  dataSource = [],
40
50
  size = "md",
41
51
  disabled = false,
42
52
  showSearch = false,
43
53
  sourceTitle = "Source",
44
54
  targetTitle = "Target",
45
- notFoundText = "No data",
55
+ notFoundText,
46
56
  filterOption,
47
57
  className,
48
58
  onChange,
59
+ locale,
49
60
  ...rest
50
61
  } = props;
62
+ const resolvedValue = value ?? targetKeys ?? EMPTY_TRANSFER_VALUE;
63
+ const config = useTigerConfig();
64
+ const mergedLocale = useMemo(
65
+ () => mergeTigerLocale(config.locale, locale),
66
+ [config.locale, locale]
67
+ );
51
68
  const divProps = {};
52
69
  for (const key of Object.keys(rest)) {
53
70
  if (!TRANSFER_KEYS.has(key)) {
@@ -59,8 +76,8 @@ var Transfer = (props) => {
59
76
  const [sourceSearch, setSourceSearch] = useState("");
60
77
  const [targetSearch, setTargetSearch] = useState("");
61
78
  const { sourceItems, targetItems } = useMemo(
62
- () => splitTransferData(dataSource, value),
63
- [dataSource, value]
79
+ () => splitTransferData(dataSource, resolvedValue),
80
+ [dataSource, resolvedValue]
64
81
  );
65
82
  const filteredSourceItems = useMemo(
66
83
  () => filterTransferItems(sourceItems, sourceSearch, filterOption),
@@ -96,25 +113,25 @@ var Transfer = (props) => {
96
113
  }
97
114
  function moveRight() {
98
115
  if (!canMoveRight) return;
99
- const keysToMove = [...sourceSelectedKeys].filter((key) => {
100
- const item = dataSource.find((d) => d.key === key);
101
- return item && !item.disabled;
102
- });
103
- const newTargetKeys = [...value, ...keysToMove];
116
+ const { targetKeys: newTargetKeys, movedKeys } = moveTransferItems(
117
+ "right",
118
+ resolvedValue,
119
+ sourceSelectedKeys,
120
+ dataSource
121
+ );
104
122
  setSourceSelectedKeys(/* @__PURE__ */ new Set());
105
- onChange?.(newTargetKeys, "right", keysToMove);
123
+ onChange?.(newTargetKeys, "right", movedKeys);
106
124
  }
107
125
  function moveLeft() {
108
126
  if (!canMoveLeft) return;
109
- const keysToRemove = new Set(
110
- [...targetSelectedKeys].filter((key) => {
111
- const item = dataSource.find((d) => d.key === key);
112
- return item && !item.disabled;
113
- })
127
+ const { targetKeys: newTargetKeys, movedKeys } = moveTransferItems(
128
+ "left",
129
+ resolvedValue,
130
+ targetSelectedKeys,
131
+ dataSource
114
132
  );
115
- const newTargetKeys = value.filter((k) => !keysToRemove.has(k));
116
133
  setTargetSelectedKeys(/* @__PURE__ */ new Set());
117
- onChange?.(newTargetKeys, "left", [...keysToRemove]);
134
+ onChange?.(newTargetKeys, "left", movedKeys);
118
135
  }
119
136
  function renderPanel(title, items, selectedKeys, toggleFn, searchValue, onSearch) {
120
137
  return /* @__PURE__ */ jsxs("div", { className: transferPanelClasses, role: "group", "aria-label": title, children: [
@@ -129,7 +146,7 @@ var Transfer = (props) => {
129
146
  {
130
147
  type: "text",
131
148
  className: transferSearchClasses,
132
- placeholder: "Search...",
149
+ placeholder: resolveLocaleText("Search...", mergedLocale?.common?.searchPlaceholder),
133
150
  value: searchValue,
134
151
  "aria-label": `Search ${title}`,
135
152
  onChange: (e) => onSearch(e.target.value)
@@ -166,7 +183,7 @@ var Transfer = (props) => {
166
183
  },
167
184
  String(item.key)
168
185
  );
169
- }) : /* @__PURE__ */ jsx("div", { className: transferEmptyClasses, children: notFoundText })
186
+ }) : /* @__PURE__ */ jsx("div", { className: transferEmptyClasses, children: resolveLocaleText("No data", notFoundText, mergedLocale?.common?.emptyText) })
170
187
  }
171
188
  )
172
189
  ] });