@expcat/tigercat-react 1.4.0 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (352) hide show
  1. package/dist/{chunk-WV5XHYW6.js → chunk-23XPDNCA.js} +6 -4
  2. package/dist/{chunk-UAM3RQY4.js → chunk-24NDLFPK.js} +22 -28
  3. package/dist/{chunk-NMKFR435.js → chunk-2LKX6CE7.js} +7 -4
  4. package/dist/{chunk-BEZO5IE4.js → chunk-2PV3F47T.js} +2 -2
  5. package/dist/{chunk-ANN5P7TJ.js → chunk-2ZA4MUO2.js} +72 -29
  6. package/dist/{chunk-H4AR4GXH.js → chunk-3NVMKDMH.js} +1 -8
  7. package/dist/{chunk-7CHTTM6D.js → chunk-3RQ3FHJ7.js} +2 -2
  8. package/dist/{chunk-ELRZ2ZHM.mjs → chunk-4DRJA5ZK.mjs} +15 -17
  9. package/dist/{chunk-J3N24I7A.mjs → chunk-4F3UTDFE.mjs} +24 -6
  10. package/dist/{chunk-56CTXEJS.mjs → chunk-4HMMH4XS.mjs} +24 -11
  11. package/dist/{chunk-ZQSMJS2Q.mjs → chunk-4MREOFVE.mjs} +3 -3
  12. package/dist/{chunk-EEF26RBA.mjs → chunk-4SU6D2E7.mjs} +15 -3
  13. package/dist/{chunk-ZZAR4IDS.js → chunk-4TPRBVW7.js} +19 -2
  14. package/dist/{chunk-NSEO2B74.mjs → chunk-4V5RL25M.mjs} +8 -5
  15. package/dist/{chunk-AUW7DCXL.js → chunk-5JYVN65W.js} +24 -6
  16. package/dist/{chunk-YRVAF2ID.js → chunk-5QLSTNA3.js} +7 -1
  17. package/dist/chunk-5SX2M3LU.mjs +319 -0
  18. package/dist/{chunk-FI53LYZ6.js → chunk-5UREMEDS.js} +24 -8
  19. package/dist/chunk-6LGCAGNG.js +312 -0
  20. package/dist/{chunk-KED5S2WG.mjs → chunk-6REMGSLS.mjs} +22 -11
  21. package/dist/{chunk-PNAWOJ32.js → chunk-6S5QOTXZ.js} +14 -2
  22. package/dist/{chunk-4AMSYFYC.js → chunk-6SG2N4WF.js} +7 -7
  23. package/dist/{chunk-YSGM22AH.mjs → chunk-6UIVNRAR.mjs} +7 -4
  24. package/dist/{chunk-IZGXDHPB.mjs → chunk-7RI5W465.mjs} +19 -25
  25. package/dist/{chunk-DCKBVRLI.js → chunk-7UZ7O7KX.js} +63 -16
  26. package/dist/{chunk-WZUADPYB.js → chunk-7YI5TAPT.js} +2 -5
  27. package/dist/chunk-AI4V7L6K.mjs +230 -0
  28. package/dist/chunk-AQOXANET.mjs +222 -0
  29. package/dist/{chunk-HHMYERHY.mjs → chunk-ATSI3UKS.mjs} +2 -1
  30. package/dist/{chunk-ZRHDNGWO.js → chunk-BR3WLDH7.js} +16 -2
  31. package/dist/{chunk-2Y5NIPHB.mjs → chunk-BRPOEVRT.mjs} +32 -3
  32. package/dist/{chunk-I7FEGKX2.mjs → chunk-CR4QBH46.mjs} +36 -11
  33. package/dist/{chunk-7U6VWD4H.mjs → chunk-CSJGNEHR.mjs} +2 -2
  34. package/dist/{chunk-ANBNSUSR.js → chunk-CXXOZLP4.js} +31 -21
  35. package/dist/{chunk-DVEK5SO6.mjs → chunk-D4X3NBAI.mjs} +8 -3
  36. package/dist/{chunk-QIL24WZD.mjs → chunk-DEQZZKY5.mjs} +12 -7
  37. package/dist/{chunk-TEYL5X56.js → chunk-DH4B2COV.js} +105 -36
  38. package/dist/{chunk-BONUUJU3.mjs → chunk-DJOFM2VO.mjs} +1 -8
  39. package/dist/{chunk-SQTOVSDU.mjs → chunk-DO3MVZZN.mjs} +12 -6
  40. package/dist/{chunk-SDZKL3IB.mjs → chunk-E355NVP7.mjs} +35 -14
  41. package/dist/{chunk-CNNEUJR2.js → chunk-ENJMHEQU.js} +44 -19
  42. package/dist/{chunk-BRA3PO53.js → chunk-FBIBHTBG.js} +2 -2
  43. package/dist/{chunk-P36GX65N.js → chunk-FCCHM2B4.js} +40 -4
  44. package/dist/{chunk-4LIDROT4.js → chunk-FFDK6PEP.js} +7 -4
  45. package/dist/{chunk-R2KUNFDN.mjs → chunk-GA4YOE57.mjs} +2 -2
  46. package/dist/{chunk-3E76U2RG.js → chunk-GADCSCH2.js} +33 -5
  47. package/dist/{chunk-JOB47R6Q.mjs → chunk-GCOA4AO6.mjs} +72 -29
  48. package/dist/{chunk-M6YXUNOU.mjs → chunk-GOUSXJEY.mjs} +2 -2
  49. package/dist/{chunk-GDPU5MYA.js → chunk-GPAY5F7D.js} +11 -6
  50. package/dist/{chunk-TNTOSFGN.mjs → chunk-GQPKHMHA.mjs} +1 -1
  51. package/dist/{chunk-NKSYX4R7.mjs → chunk-GTDLZF7K.mjs} +2 -2
  52. package/dist/{chunk-OXQOKKTP.mjs → chunk-H7D7UBDC.mjs} +2 -2
  53. package/dist/{chunk-KYNWNTGO.js → chunk-HFGTJEQW.js} +82 -29
  54. package/dist/{chunk-J6OZWT3P.js → chunk-HVAG26CK.js} +3 -3
  55. package/dist/{chunk-SLEXEH7R.mjs → chunk-HWZSMV2M.mjs} +3 -11
  56. package/dist/{chunk-EJKOUI26.js → chunk-I5UB4FN3.js} +3 -3
  57. package/dist/{chunk-NVI2P7VH.js → chunk-I6VHGILW.js} +21 -9
  58. package/dist/{chunk-EOU6WZTS.js → chunk-I7OSNH5T.js} +34 -5
  59. package/dist/{chunk-L24PPXLV.js → chunk-IFB3OECJ.js} +1 -0
  60. package/dist/{chunk-376X7SDZ.mjs → chunk-IXAPFTTD.mjs} +7 -6
  61. package/dist/{chunk-EHIXCFD7.js → chunk-JHRFG5PG.js} +57 -12
  62. package/dist/{chunk-3EB42WFR.mjs → chunk-KCPGFO5R.mjs} +2 -2
  63. package/dist/{chunk-G3PBQ4B4.mjs → chunk-KQ4ZKXXN.mjs} +52 -2
  64. package/dist/{chunk-MC26ORSN.js → chunk-KSXGH3FO.js} +7 -7
  65. package/dist/{chunk-X7JAYXPY.js → chunk-KVWSVDAJ.js} +4 -4
  66. package/dist/{chunk-OFRKYQOZ.mjs → chunk-LACDTZTE.mjs} +4 -4
  67. package/dist/{chunk-YH57D4AV.mjs → chunk-LAKPYMBZ.mjs} +1 -0
  68. package/dist/{chunk-6GU5NH5F.mjs → chunk-LBXNMCXN.mjs} +33 -5
  69. package/dist/{chunk-KGMVRIYC.mjs → chunk-LOM6NNQK.mjs} +29 -16
  70. package/dist/{chunk-WFWEMXO7.mjs → chunk-LUABLBKS.mjs} +83 -30
  71. package/dist/{chunk-K2TXT5HQ.js → chunk-M577W3TS.js} +101 -85
  72. package/dist/{chunk-3EDASNTG.js → chunk-MOYZF62V.js} +29 -16
  73. package/dist/{chunk-ZDNQGS4O.js → chunk-MQIVMK24.js} +4 -4
  74. package/dist/{chunk-WMPCN7OF.mjs → chunk-MZCGQED3.mjs} +15 -3
  75. package/dist/{chunk-KDXKF6B2.mjs → chunk-MZPKFMQC.mjs} +1 -1
  76. package/dist/{chunk-AG4HRAW2.mjs → chunk-NEHSCSQP.mjs} +2 -2
  77. package/dist/chunk-NG3OBMKV.js +319 -0
  78. package/dist/{chunk-RFHPG4KN.js → chunk-NGSJGXUZ.js} +15 -17
  79. package/dist/{chunk-WIWTY74F.mjs → chunk-NJHZQBA7.mjs} +16 -2
  80. package/dist/{chunk-EQD2U4KM.js → chunk-O2N7ITWQ.js} +63 -16
  81. package/dist/{chunk-NASC6XHN.mjs → chunk-O6YIPNXX.mjs} +24 -15
  82. package/dist/{chunk-VHGCWZ6V.mjs → chunk-OTRPN5ZG.mjs} +58 -13
  83. package/dist/{chunk-QIKR5EFI.js → chunk-OVJO5NYW.js} +4 -4
  84. package/dist/{chunk-KXT2TP6A.mjs → chunk-P2WQIVXD.mjs} +22 -10
  85. package/dist/{chunk-PT5T5F4H.js → chunk-PQF5VLNX.js} +22 -11
  86. package/dist/chunk-PQOUWJAT.mjs +211 -0
  87. package/dist/{chunk-OS6M3IZF.js → chunk-PSCPLUGP.js} +5 -13
  88. package/dist/{chunk-ULWT6W6M.mjs → chunk-PZB24FST.mjs} +10 -5
  89. package/dist/{chunk-BO45CU4Q.js → chunk-PZWI4YNN.js} +6 -4
  90. package/dist/{chunk-PFYK2V3E.js → chunk-Q2OXQNWU.js} +73 -9
  91. package/dist/{chunk-VM4ZQHT5.mjs → chunk-QANWBRNU.mjs} +59 -12
  92. package/dist/{chunk-XBM76P27.mjs → chunk-QFUIGOOM.mjs} +4 -2
  93. package/dist/{chunk-BN4ZKCAI.mjs → chunk-QKNORS26.mjs} +49 -36
  94. package/dist/{chunk-LROHXQWX.js → chunk-R4PMBWU3.js} +2 -2
  95. package/dist/chunk-R56UOY6C.js +222 -0
  96. package/dist/chunk-RNHC7BON.js +230 -0
  97. package/dist/{chunk-7PXALKLM.js → chunk-RRO752KE.js} +11 -10
  98. package/dist/{chunk-RVLV63SI.mjs → chunk-S4NGDDAM.mjs} +105 -36
  99. package/dist/{chunk-D5MQBUP2.js → chunk-SA3N2LUB.js} +22 -17
  100. package/dist/{chunk-BROIZ266.js → chunk-SFBSI3J7.js} +6 -3
  101. package/dist/{chunk-RVO6R37N.mjs → chunk-SHDQJ5BJ.mjs} +1 -1
  102. package/dist/{chunk-N2JYU4JI.js → chunk-SHU7L4NM.js} +52 -2
  103. package/dist/{chunk-M3MOSUZO.mjs → chunk-SI3P3V75.mjs} +16 -6
  104. package/dist/{chunk-UVMQJOTX.js → chunk-SK7PXSVE.js} +23 -14
  105. package/dist/{chunk-U356F7GU.js → chunk-SO2ADQTB.js} +52 -11
  106. package/dist/{chunk-NKKIJQMV.mjs → chunk-SPIPFOGD.mjs} +4 -2
  107. package/dist/{chunk-NQNHM4OL.mjs → chunk-SRC7JHME.mjs} +1 -1
  108. package/dist/{chunk-2RBHQBSG.js → chunk-SXTMVZ4W.js} +25 -12
  109. package/dist/{chunk-BEM7XG2L.js → chunk-SYJJKI7U.js} +35 -14
  110. package/dist/{chunk-RYNLPRUM.mjs → chunk-SYVMCKPR.mjs} +1 -1
  111. package/dist/{chunk-SY23FAXK.mjs → chunk-T6HNFCOW.mjs} +24 -8
  112. package/dist/{chunk-ZITBUGBH.mjs → chunk-TBMDIAZI.mjs} +59 -12
  113. package/dist/{chunk-B63GEB2Y.js → chunk-TIDVBSXR.js} +47 -34
  114. package/dist/{chunk-ZJI2VLIL.js → chunk-TLDTBCT6.js} +15 -3
  115. package/dist/{chunk-XFPJYKBQ.js → chunk-TN7GMDME.js} +13 -9
  116. package/dist/{chunk-M3FVPPMM.js → chunk-TO4SSBAJ.js} +17 -12
  117. package/dist/{chunk-XTQUPDRI.js → chunk-TPU6S7G7.js} +2 -2
  118. package/dist/{chunk-NEZ445D4.mjs → chunk-TRXNHYWB.mjs} +3 -3
  119. package/dist/{chunk-H6NC6SBX.js → chunk-TVEO2CFD.js} +2 -2
  120. package/dist/{chunk-6QQBMZQ6.mjs → chunk-U2ZXZ2KQ.mjs} +74 -10
  121. package/dist/{chunk-AVLIUHOS.mjs → chunk-U337RHJB.mjs} +4 -4
  122. package/dist/{chunk-VC26SAXB.js → chunk-UQZ4RLTI.js} +12 -6
  123. package/dist/{chunk-PXO2F2CS.mjs → chunk-V23KR23W.mjs} +47 -4
  124. package/dist/{chunk-BA6TJQZL.js → chunk-V3QEV3TL.js} +6 -6
  125. package/dist/{chunk-GG72T6JK.js → chunk-VOSN3IQC.js} +47 -4
  126. package/dist/{chunk-J4OQ2VRH.mjs → chunk-W6T3CG7U.mjs} +45 -4
  127. package/dist/{chunk-OTEM4FVX.mjs → chunk-WGKNAOW7.mjs} +11 -7
  128. package/dist/chunk-WLFLQB4R.mjs +312 -0
  129. package/dist/{chunk-W6AWN7BC.js → chunk-WLORVPTR.js} +4 -4
  130. package/dist/{chunk-J5N5OQWB.mjs → chunk-WOEX4S6J.mjs} +5 -2
  131. package/dist/{chunk-CAQPYJFA.mjs → chunk-WT72F56O.mjs} +1 -1
  132. package/dist/{chunk-7Z64GEMN.js → chunk-WTASPL6V.js} +3 -1
  133. package/dist/{chunk-2LYV6NBJ.mjs → chunk-WTIEJCRV.mjs} +7 -1
  134. package/dist/{chunk-L6KSO66F.mjs → chunk-WYPTAUCX.mjs} +2 -5
  135. package/dist/{chunk-CC5GFX6F.js → chunk-XKMZ5AMS.js} +2 -1
  136. package/dist/{chunk-WCTNQYXO.js → chunk-XMD7CQQ2.js} +12 -7
  137. package/dist/{chunk-7DUHHRAU.mjs → chunk-Y5X3G2LD.mjs} +41 -5
  138. package/dist/{chunk-ZA5EFHET.mjs → chunk-Z6BDNV3S.mjs} +18 -1
  139. package/dist/{chunk-UBP7HZSU.mjs → chunk-ZG2W4HS5.mjs} +6 -4
  140. package/dist/{chunk-UIIOZEUP.js → chunk-ZLCVJXGL.js} +4 -4
  141. package/dist/{chunk-CME2IFUT.mjs → chunk-ZLP4XEAO.mjs} +21 -16
  142. package/dist/{chunk-YID7J6ZK.js → chunk-ZXVLZKLT.js} +1 -1
  143. package/dist/components/ActivityFeed.js +6 -6
  144. package/dist/components/ActivityFeed.mjs +5 -5
  145. package/dist/components/AreaChart.js +4 -4
  146. package/dist/components/AreaChart.mjs +3 -3
  147. package/dist/components/AutoComplete.js +3 -2
  148. package/dist/components/AutoComplete.mjs +2 -1
  149. package/dist/components/BackTop.js +2 -2
  150. package/dist/components/BackTop.mjs +1 -1
  151. package/dist/components/Badge.js +3 -2
  152. package/dist/components/Badge.mjs +2 -1
  153. package/dist/components/BarChart.js +4 -4
  154. package/dist/components/BarChart.mjs +3 -3
  155. package/dist/components/Breadcrumb.d.mts +1 -1
  156. package/dist/components/Breadcrumb.d.ts +1 -1
  157. package/dist/components/Calendar.d.mts +2 -10
  158. package/dist/components/Calendar.d.ts +2 -10
  159. package/dist/components/Calendar.js +3 -2
  160. package/dist/components/Calendar.mjs +2 -1
  161. package/dist/components/Cascader.js +2 -2
  162. package/dist/components/Cascader.mjs +1 -1
  163. package/dist/components/ChartAxis.d.mts +1 -2
  164. package/dist/components/ChartAxis.d.ts +1 -2
  165. package/dist/components/ChartGrid.d.mts +1 -2
  166. package/dist/components/ChartGrid.d.ts +1 -2
  167. package/dist/components/ChartLegend.js +2 -2
  168. package/dist/components/ChartLegend.mjs +1 -1
  169. package/dist/components/ChartSeries.d.mts +1 -2
  170. package/dist/components/ChartSeries.d.ts +1 -2
  171. package/dist/components/ChartTooltip.js +2 -2
  172. package/dist/components/ChartTooltip.mjs +1 -1
  173. package/dist/components/ChatWindow.js +8 -6
  174. package/dist/components/ChatWindow.mjs +7 -5
  175. package/dist/components/CodeEditor.js +2 -2
  176. package/dist/components/CodeEditor.mjs +1 -1
  177. package/dist/components/CommentThread.js +6 -4
  178. package/dist/components/CommentThread.mjs +5 -3
  179. package/dist/components/CropUpload.d.mts +6 -2
  180. package/dist/components/CropUpload.d.ts +6 -2
  181. package/dist/components/CropUpload.js +4 -4
  182. package/dist/components/CropUpload.mjs +3 -3
  183. package/dist/components/DataTableWithToolbar.d.mts +1 -2
  184. package/dist/components/DataTableWithToolbar.d.ts +1 -2
  185. package/dist/components/DataTableWithToolbar.js +7 -6
  186. package/dist/components/DataTableWithToolbar.mjs +6 -5
  187. package/dist/components/DatePicker.js +3 -2
  188. package/dist/components/DatePicker.mjs +2 -1
  189. package/dist/components/DonutChart.js +5 -5
  190. package/dist/components/DonutChart.mjs +4 -4
  191. package/dist/components/Empty.js +3 -2
  192. package/dist/components/Empty.mjs +2 -1
  193. package/dist/components/FileManager.d.mts +3 -23
  194. package/dist/components/FileManager.d.ts +3 -23
  195. package/dist/components/FileManager.js +2 -2
  196. package/dist/components/FileManager.mjs +1 -1
  197. package/dist/components/FloatButton.js +2 -2
  198. package/dist/components/FloatButton.mjs +1 -1
  199. package/dist/components/Form.js +2 -2
  200. package/dist/components/Form.mjs +1 -1
  201. package/dist/components/FormItem.js +3 -3
  202. package/dist/components/FormItem.mjs +2 -2
  203. package/dist/components/FormWizard.js +3 -3
  204. package/dist/components/FormWizard.mjs +2 -2
  205. package/dist/components/FunnelChart.js +4 -4
  206. package/dist/components/FunnelChart.mjs +3 -3
  207. package/dist/components/GaugeChart.js +3 -2
  208. package/dist/components/GaugeChart.mjs +2 -1
  209. package/dist/components/HeatmapChart.js +3 -3
  210. package/dist/components/HeatmapChart.mjs +2 -2
  211. package/dist/components/Image.js +5 -4
  212. package/dist/components/Image.mjs +4 -3
  213. package/dist/components/ImageAnnotation.d.mts +1 -1
  214. package/dist/components/ImageAnnotation.d.ts +1 -1
  215. package/dist/components/ImageAnnotation.js +3 -2
  216. package/dist/components/ImageAnnotation.mjs +2 -1
  217. package/dist/components/ImageCropper.js +3 -2
  218. package/dist/components/ImageCropper.mjs +2 -1
  219. package/dist/components/ImageGroup.js +4 -3
  220. package/dist/components/ImageGroup.mjs +3 -2
  221. package/dist/components/ImagePreview.js +3 -2
  222. package/dist/components/ImagePreview.mjs +2 -1
  223. package/dist/components/ImageViewer.d.mts +2 -0
  224. package/dist/components/ImageViewer.d.ts +2 -0
  225. package/dist/components/ImageViewer.js +3 -2
  226. package/dist/components/ImageViewer.mjs +2 -1
  227. package/dist/components/InfiniteScroll.js +2 -2
  228. package/dist/components/InfiniteScroll.mjs +1 -1
  229. package/dist/components/Input.js +3 -2
  230. package/dist/components/Input.mjs +2 -1
  231. package/dist/components/InputNumber.js +3 -2
  232. package/dist/components/InputNumber.mjs +2 -1
  233. package/dist/components/Kanban.d.mts +5 -1
  234. package/dist/components/Kanban.d.ts +5 -1
  235. package/dist/components/Kanban.js +3 -3
  236. package/dist/components/Kanban.mjs +2 -2
  237. package/dist/components/LineChart.js +4 -4
  238. package/dist/components/LineChart.mjs +3 -3
  239. package/dist/components/List.d.mts +1 -2
  240. package/dist/components/List.d.ts +1 -2
  241. package/dist/components/List.js +3 -3
  242. package/dist/components/List.mjs +2 -2
  243. package/dist/components/Loading.js +2 -2
  244. package/dist/components/Loading.mjs +1 -1
  245. package/dist/components/MarkdownEditor.js +2 -2
  246. package/dist/components/MarkdownEditor.mjs +1 -1
  247. package/dist/components/Menu.d.mts +2 -2
  248. package/dist/components/Menu.d.ts +2 -2
  249. package/dist/components/MenuItem.d.mts +1 -1
  250. package/dist/components/MenuItem.d.ts +1 -1
  251. package/dist/components/MenuItemGroup.d.mts +1 -1
  252. package/dist/components/MenuItemGroup.d.ts +1 -1
  253. package/dist/components/Message.d.mts +2 -1
  254. package/dist/components/Message.d.ts +2 -1
  255. package/dist/components/Message.js +2 -2
  256. package/dist/components/Message.mjs +1 -1
  257. package/dist/components/Modal.js +2 -2
  258. package/dist/components/Modal.mjs +1 -1
  259. package/dist/components/NotificationCenter.js +6 -6
  260. package/dist/components/NotificationCenter.mjs +5 -5
  261. package/dist/components/PieChart.js +4 -4
  262. package/dist/components/PieChart.mjs +3 -3
  263. package/dist/components/QRCode.d.mts +2 -1
  264. package/dist/components/QRCode.d.ts +2 -1
  265. package/dist/components/QRCode.js +3 -2
  266. package/dist/components/QRCode.mjs +2 -1
  267. package/dist/components/RadarChart.js +4 -4
  268. package/dist/components/RadarChart.mjs +3 -3
  269. package/dist/components/Rate.js +2 -2
  270. package/dist/components/Rate.mjs +1 -1
  271. package/dist/components/Resizable.js +2 -2
  272. package/dist/components/Resizable.mjs +1 -1
  273. package/dist/components/Result.js +2 -2
  274. package/dist/components/Result.mjs +1 -1
  275. package/dist/components/RichTextEditor.js +2 -2
  276. package/dist/components/RichTextEditor.mjs +1 -1
  277. package/dist/components/ScatterChart.js +4 -4
  278. package/dist/components/ScatterChart.mjs +3 -3
  279. package/dist/components/Segmented.d.mts +1 -1
  280. package/dist/components/Segmented.d.ts +1 -1
  281. package/dist/components/Segmented.js +2 -2
  282. package/dist/components/Segmented.mjs +1 -1
  283. package/dist/components/Select.js +2 -2
  284. package/dist/components/Select.mjs +1 -1
  285. package/dist/components/Slider.js +2 -2
  286. package/dist/components/Slider.mjs +1 -1
  287. package/dist/components/Splitter.js +2 -2
  288. package/dist/components/Splitter.mjs +1 -1
  289. package/dist/components/Steps.js +2 -2
  290. package/dist/components/Steps.mjs +1 -1
  291. package/dist/components/StepsItem.js +2 -2
  292. package/dist/components/StepsItem.mjs +1 -1
  293. package/dist/components/SubMenu.d.mts +1 -1
  294. package/dist/components/SubMenu.d.ts +1 -1
  295. package/dist/components/SunburstChart.js +4 -4
  296. package/dist/components/SunburstChart.mjs +3 -3
  297. package/dist/components/TabPane.js +2 -2
  298. package/dist/components/TabPane.mjs +1 -1
  299. package/dist/components/Table.d.mts +2 -2
  300. package/dist/components/Table.d.ts +2 -2
  301. package/dist/components/Table.js +4 -4
  302. package/dist/components/Table.mjs +3 -3
  303. package/dist/components/Tabs.d.mts +0 -4
  304. package/dist/components/Tabs.d.ts +0 -4
  305. package/dist/components/Tabs.js +2 -2
  306. package/dist/components/Tabs.mjs +1 -1
  307. package/dist/components/Tag.js +3 -2
  308. package/dist/components/Tag.mjs +2 -1
  309. package/dist/components/TaskBoard.d.mts +3 -1
  310. package/dist/components/TaskBoard.d.ts +3 -1
  311. package/dist/components/TaskBoard.js +2 -2
  312. package/dist/components/TaskBoard.mjs +1 -1
  313. package/dist/components/Textarea.js +3 -2
  314. package/dist/components/Textarea.mjs +2 -1
  315. package/dist/components/TimePicker.js +2 -2
  316. package/dist/components/TimePicker.mjs +1 -1
  317. package/dist/components/Timeline.d.mts +5 -1
  318. package/dist/components/Timeline.d.ts +5 -1
  319. package/dist/components/Timeline.js +3 -2
  320. package/dist/components/Timeline.mjs +2 -1
  321. package/dist/components/Tour.js +4 -3
  322. package/dist/components/Tour.mjs +3 -2
  323. package/dist/components/Transfer.js +2 -2
  324. package/dist/components/Transfer.mjs +1 -1
  325. package/dist/components/Tree.js +3 -3
  326. package/dist/components/Tree.mjs +2 -2
  327. package/dist/components/TreeMapChart.js +4 -4
  328. package/dist/components/TreeMapChart.mjs +3 -3
  329. package/dist/components/Upload.js +2 -2
  330. package/dist/components/Upload.mjs +1 -1
  331. package/dist/components/VirtualList.js +2 -2
  332. package/dist/components/VirtualList.mjs +1 -1
  333. package/dist/components/VirtualTable.d.mts +7 -2
  334. package/dist/components/VirtualTable.d.ts +7 -2
  335. package/dist/components/VirtualTable.js +2 -2
  336. package/dist/components/VirtualTable.mjs +1 -1
  337. package/dist/index.d.mts +52 -53
  338. package/dist/index.d.ts +52 -53
  339. package/dist/index.js +81 -81
  340. package/dist/index.mjs +80 -80
  341. package/dist/{types-DaC4a0Ny.d.ts → types-CcgZY0mv.d.mts} +2 -2
  342. package/dist/{types-DaC4a0Ny.d.mts → types-CcgZY0mv.d.ts} +2 -2
  343. package/package.json +6 -6
  344. package/dist/chunk-5EVHVZG5.js +0 -131
  345. package/dist/chunk-AF2AEZKM.js +0 -165
  346. package/dist/chunk-CDRQSKXT.mjs +0 -195
  347. package/dist/chunk-EPJ6W4VI.mjs +0 -165
  348. package/dist/chunk-GYQ2DN6Z.mjs +0 -174
  349. package/dist/chunk-MTIGGMHG.mjs +0 -180
  350. package/dist/chunk-NDGA3N6H.js +0 -180
  351. package/dist/chunk-S5Y6UHAK.mjs +0 -131
  352. package/dist/chunk-T7KO6EVK.js +0 -174
@@ -1,4 +1,8 @@
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/ImageAnnotation.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 _chunkTDODFBBOjs = require('./chunk-TDODFBBO.js');
4
+
5
+ // src/components/ImageAnnotation.tsx
2
6
  var _react = require('react');
3
7
 
4
8
 
@@ -18,12 +22,15 @@ var _react = require('react');
18
22
 
19
23
 
20
24
 
25
+
26
+
21
27
 
22
28
 
23
29
 
24
30
  var _tigercatcore = require('@expcat/tigercat-core');
25
31
  var _jsxruntime = require('react/jsx-runtime');
26
32
  function ImageAnnotation({
33
+ locale,
27
34
  src,
28
35
  alt = "Image to annotate",
29
36
  value,
@@ -45,6 +52,22 @@ function ImageAnnotation({
45
52
  onToolChange,
46
53
  onReady
47
54
  }) {
55
+ const config = _chunkTDODFBBOjs.useTigerConfig.call(void 0, );
56
+ const mergedLocale = _react.useMemo.call(void 0,
57
+ () => _tigercatcore.mergeTigerLocale.call(void 0, config.locale, locale),
58
+ [config.locale, locale]
59
+ );
60
+ const labels = _react.useMemo.call(void 0, () => _tigercatcore.getImageEditorLabels.call(void 0, mergedLocale), [mergedLocale]);
61
+ const toolLabels = _react.useMemo.call(void 0,
62
+ () => ({
63
+ select: labels.selectToolText,
64
+ rectangle: labels.rectangleToolText,
65
+ ellipse: labels.ellipseToolText,
66
+ polygon: labels.polygonToolText,
67
+ freehand: labels.freehandToolText
68
+ }),
69
+ [labels]
70
+ );
48
71
  const containerRef = _react.useRef.call(void 0, null);
49
72
  const overlayRef = _react.useRef.call(void 0, null);
50
73
  const idSeedRef = _react.useRef.call(void 0, 0);
@@ -183,13 +206,20 @@ function ImageAnnotation({
183
206
  },
184
207
  [activeTool, canEdit, getPointFromEvent]
185
208
  );
209
+ const removeAnnotation = _react.useCallback.call(void 0,
210
+ (annotation) => {
211
+ if (!canEdit) return;
212
+ const next = annotations.filter((item) => item.id !== annotation.id);
213
+ commitAnnotations(next, { type: "remove", annotation });
214
+ selectAnnotation(null);
215
+ },
216
+ [annotations, canEdit, commitAnnotations, selectAnnotation]
217
+ );
186
218
  const removeSelectedAnnotation = _react.useCallback.call(void 0, () => {
187
219
  if (!canEdit || !activeSelectedId) return;
188
220
  const removed = annotations.find((annotation) => annotation.id === activeSelectedId);
189
- const next = annotations.filter((annotation) => annotation.id !== activeSelectedId);
190
- commitAnnotations(next, { type: "remove", annotation: removed });
191
- selectAnnotation(null);
192
- }, [activeSelectedId, annotations, canEdit, commitAnnotations, selectAnnotation]);
221
+ if (removed) removeAnnotation(removed);
222
+ }, [activeSelectedId, annotations, canEdit, removeAnnotation]);
193
223
  const handleKeyDown = _react.useCallback.call(void 0,
194
224
  (event) => {
195
225
  if (event.key === "Escape") {
@@ -212,6 +242,20 @@ function ImageAnnotation({
212
242
  (annotation, isDraft = false) => {
213
243
  const selected = !isDraft && annotation.id === activeSelectedId;
214
244
  const stroke = _tigercatcore.getImageAnnotationStrokeColor.call(void 0, annotation);
245
+ const onKeyDown = (event) => {
246
+ if (isDraft) return;
247
+ if (_tigercatcore.isActivationKey.call(void 0, event)) {
248
+ event.preventDefault();
249
+ event.stopPropagation();
250
+ selectAnnotation(annotation);
251
+ return;
252
+ }
253
+ if (event.key === "Delete" || event.key === "Backspace") {
254
+ event.preventDefault();
255
+ event.stopPropagation();
256
+ removeAnnotation(annotation);
257
+ }
258
+ };
215
259
  const commonProps = {
216
260
  stroke,
217
261
  strokeWidth: selected ? strokeWidth + 1 : strokeWidth,
@@ -220,7 +264,8 @@ function ImageAnnotation({
220
264
  role: "button",
221
265
  tabIndex: isDraft ? -1 : 0,
222
266
  "aria-label": _tigercatcore.getImageAnnotationShapeAriaLabel.call(void 0, annotation),
223
- className: _tigercatcore.classNames.call(void 0, !isDraft && "cursor-pointer focus:outline-none")
267
+ className: _tigercatcore.classNames.call(void 0, !isDraft && "cursor-pointer focus:outline-none"),
268
+ onKeyDown: isDraft ? void 0 : onKeyDown
224
269
  };
225
270
  const onClick = (event) => {
226
271
  if (isDraft) return;
@@ -267,7 +312,7 @@ function ImageAnnotation({
267
312
  annotation.id
268
313
  );
269
314
  },
270
- [activeSelectedId, displayHeight, displayWidth, selectAnnotation, strokeWidth]
315
+ [activeSelectedId, displayHeight, displayWidth, removeAnnotation, selectAnnotation, strokeWidth]
271
316
  );
272
317
  const renderedAnnotations = _react.useMemo.call(void 0,
273
318
  () => annotations.map((annotation) => renderAnnotation(annotation)),
@@ -290,7 +335,7 @@ function ImageAnnotation({
290
335
  }) : null;
291
336
  const containerClasses = _tigercatcore.classNames.call(void 0, _tigercatcore.imageAnnotationContainerClasses, className);
292
337
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: containerClasses, style, onKeyDown: handleKeyDown, children: [
293
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _tigercatcore.imageAnnotationToolbarClasses, "aria-label": "Annotation tools", children: [
338
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _tigercatcore.imageAnnotationToolbarClasses, "aria-label": labels.annotationToolbarAriaLabel, children: [
294
339
  tools.map((item) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
295
340
  "button",
296
341
  {
@@ -299,7 +344,7 @@ function ImageAnnotation({
299
344
  disabled: disabled || readonly,
300
345
  "aria-pressed": activeTool === item,
301
346
  onClick: () => setActiveTool(item),
302
- children: _tigercatcore.getImageAnnotationToolLabel.call(void 0, item)
347
+ children: toolLabels[item]
303
348
  },
304
349
  item
305
350
  )),
@@ -310,7 +355,7 @@ function ImageAnnotation({
310
355
  className: _tigercatcore.imageAnnotationDeleteButtonClasses,
311
356
  disabled: !canEdit || !activeSelectedId,
312
357
  onClick: removeSelectedAnnotation,
313
- children: "Delete"
358
+ children: labels.deleteText
314
359
  }
315
360
  )
316
361
  ] }),
@@ -321,7 +366,7 @@ function ImageAnnotation({
321
366
  className: _tigercatcore.imageAnnotationStageClasses,
322
367
  style: { width: imageLoaded ? `${displayWidth}px` : void 0 },
323
368
  role: imageLoaded ? "application" : "img",
324
- "aria-label": imageLoaded ? "Image annotation editor" : "Loading image for annotation",
369
+ "aria-label": imageLoaded ? labels.annotationEditorAriaLabel : labels.loadingAnnotationImageAriaLabel,
325
370
  children: !imageLoaded ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-h-[200px] min-w-[240px] items-center justify-center", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-8 w-8 animate-spin rounded-full border-2 border-[var(--tiger-border,#d1d5db)] border-t-[var(--tiger-primary,#2563eb)]" }) }) : /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
326
371
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
327
372
  "img",
@@ -344,7 +389,7 @@ function ImageAnnotation({
344
389
  width: displayWidth,
345
390
  height: displayHeight,
346
391
  viewBox: `0 0 ${displayWidth} ${displayHeight}`,
347
- "aria-label": "Image annotation canvas",
392
+ "aria-label": labels.annotationCanvasAriaLabel,
348
393
  onMouseDown: handleStageMouseDown,
349
394
  onClick: handleStageClick,
350
395
  onDoubleClick: commitPolygon,
@@ -14,7 +14,7 @@ import {
14
14
  resultExtraClasses,
15
15
  getResultColorScheme,
16
16
  getResultIconPath,
17
- getResultHttpLabel
17
+ isHttpResultStatus
18
18
  } from "@expcat/tigercat-core";
19
19
  import { jsx, jsxs } from "react/jsx-runtime";
20
20
  var Result = ({
@@ -29,7 +29,7 @@ var Result = ({
29
29
  }) => {
30
30
  const colors = useMemo(() => getResultColorScheme(status), [status]);
31
31
  const iconPath = useMemo(() => getResultIconPath(status), [status]);
32
- const httpLabel = useMemo(() => getResultHttpLabel(status), [status]);
32
+ const httpLabel = useMemo(() => isHttpResultStatus(status) ? status : void 0, [status]);
33
33
  const wrapperClasses = useMemo(() => classNames(resultBaseClasses, className), [className]);
34
34
  const iconContainerCls = useMemo(
35
35
  () => classNames(resultIconContainerBaseClasses, colors.iconBg),
@@ -15,7 +15,8 @@ var Segmented = ({
15
15
  size = "md",
16
16
  block = false,
17
17
  className,
18
- onChange
18
+ onChange,
19
+ ...rest
19
20
  }) => {
20
21
  function handleSelect(opt) {
21
22
  if (opt.disabled || disabled) return;
@@ -23,12 +24,59 @@ var Segmented = ({
23
24
  onChange?.(opt.value);
24
25
  }
25
26
  const selectedIndex = options.findIndex((opt) => opt.value === value);
27
+ const firstEnabledIndex = options.findIndex((opt) => !opt.disabled);
28
+ const rovingIndex = selectedIndex >= 0 ? selectedIndex : firstEnabledIndex;
29
+ function focusOption(container, index) {
30
+ if (!container) return;
31
+ const els = container.querySelectorAll('[role="radio"]');
32
+ els[index]?.focus();
33
+ }
34
+ function handleKeyDown(e, index) {
35
+ if (disabled) return;
36
+ const enabledIdxs = options.reduce((acc, opt, i) => {
37
+ if (!opt.disabled) acc.push(i);
38
+ return acc;
39
+ }, []);
40
+ if (enabledIdxs.length === 0) return;
41
+ if (e.key === "Enter" || e.key === " ") {
42
+ e.preventDefault();
43
+ handleSelect(options[index]);
44
+ return;
45
+ }
46
+ const pos = enabledIdxs.indexOf(index);
47
+ let target = null;
48
+ switch (e.key) {
49
+ case "ArrowRight":
50
+ case "ArrowDown":
51
+ target = enabledIdxs[(pos + 1 + enabledIdxs.length) % enabledIdxs.length];
52
+ break;
53
+ case "ArrowLeft":
54
+ case "ArrowUp":
55
+ target = enabledIdxs[(pos - 1 + enabledIdxs.length) % enabledIdxs.length];
56
+ break;
57
+ case "Home":
58
+ target = enabledIdxs[0];
59
+ break;
60
+ case "End":
61
+ target = enabledIdxs[enabledIdxs.length - 1];
62
+ break;
63
+ default:
64
+ return;
65
+ }
66
+ if (target == null) return;
67
+ e.preventDefault();
68
+ const container = e.currentTarget.closest('[role="radiogroup"]');
69
+ focusOption(container, target);
70
+ handleSelect(options[target]);
71
+ }
26
72
  return /* @__PURE__ */ jsxs(
27
73
  "div",
28
74
  {
75
+ ...rest,
29
76
  className: classNames(getSegmentedContainerClasses(size, block), className),
30
77
  style: getSegmentedContainerStyle(options.length),
31
78
  role: "radiogroup",
79
+ "aria-disabled": disabled || void 0,
32
80
  children: [
33
81
  /* @__PURE__ */ jsx(
34
82
  "div",
@@ -39,7 +87,7 @@ var Segmented = ({
39
87
  style: getSegmentedIndicatorStyle(selectedIndex, options.length, size)
40
88
  }
41
89
  ),
42
- options.map((opt) => {
90
+ options.map((opt, index) => {
43
91
  const selected = opt.value === value;
44
92
  const isDisabled = !!opt.disabled || disabled;
45
93
  return /* @__PURE__ */ jsx(
@@ -52,7 +100,9 @@ var Segmented = ({
52
100
  role: "radio",
53
101
  "aria-checked": selected,
54
102
  "aria-disabled": isDisabled,
103
+ tabIndex: isDisabled ? -1 : index === rovingIndex ? 0 : -1,
55
104
  onClick: () => handleSelect(opt),
105
+ onKeyDown: (e) => handleKeyDown(e, index),
56
106
  children: /* @__PURE__ */ jsx("span", { children: opt.label })
57
107
  },
58
108
  opt.value
@@ -1,15 +1,15 @@
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 _chunkZZAR4IDSjs = require('./chunk-ZZAR4IDS.js');
3
+ var _chunk4TPRBVW7js = require('./chunk-4TPRBVW7.js');
4
4
 
5
5
 
6
- var _chunkYRVAF2IDjs = require('./chunk-YRVAF2ID.js');
6
+ var _chunk5QLSTNA3js = require('./chunk-5QLSTNA3.js');
7
7
 
8
8
 
9
9
  var _chunkQYYAXM5Fjs = require('./chunk-QYYAXM5F.js');
10
10
 
11
11
 
12
- var _chunkZJI2VLILjs = require('./chunk-ZJI2VLIL.js');
12
+ var _chunkTLDTBCT6js = require('./chunk-TLDTBCT6.js');
13
13
 
14
14
 
15
15
  var _chunkUF3DXKCIjs = require('./chunk-UF3DXKCI.js');
@@ -121,11 +121,11 @@ var ActivityFeed = ({
121
121
  }
122
122
  ) : null,
123
123
  item.status ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
124
- _chunkZJI2VLILjs.Tag,
124
+ _chunkTLDTBCT6js.Tag,
125
125
  {
126
126
  variant: _nullishCoalesce(item.status.variant, () => ( "default")),
127
127
  size: "sm",
128
- className: "shrink-0 rounded-full px-2 py-0.5 text-[10px] font-semibold tracking-wide uppercase border border-current bg-opacity-10 shadow-sm",
128
+ className: "shrink-0 rounded-full px-2 py-0.5 text-[10px] font-semibold tracking-wide uppercase border border-current bg-current/10 shadow-sm",
129
129
  children: item.status.label
130
130
  }
131
131
  ) : null
@@ -176,7 +176,7 @@ var ActivityFeed = ({
176
176
  variant: "bordered",
177
177
  size: "sm",
178
178
  className: "tiger-activity-feed-loading bg-white/40 dark:bg-gray-900/20 border-gray-100 dark:border-gray-800/80 backdrop-blur-sm rounded-2xl shadow-sm overflow-hidden",
179
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center justify-center py-8", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkYRVAF2IDjs.Loading, { text: loadingText, className: "text-blue-500 dark:text-blue-400 font-medium" }) })
179
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center justify-center py-8", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk5QLSTNA3js.Loading, { text: loadingText, className: "text-blue-500 dark:text-blue-400 font-medium" }) })
180
180
  }
181
181
  )
182
182
  }
@@ -250,7 +250,7 @@ var ActivityFeed = ({
250
250
  )
251
251
  ] }))) : null,
252
252
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
253
- _chunkZZAR4IDSjs.Timeline,
253
+ _chunk4TPRBVW7js.Timeline,
254
254
  {
255
255
  items: timelineItems,
256
256
  style: {
@@ -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');
@@ -201,7 +201,7 @@ var TreeMapChart = ({
201
201
  }
202
202
  );
203
203
  const tooltip = showTooltip && hoverable ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
204
- _chunkUVMQJOTXjs.ChartTooltip,
204
+ _chunkSK7PXSVEjs.ChartTooltip,
205
205
  {
206
206
  content: tooltipContent,
207
207
  visible: resolvedHoveredIndex !== null && tooltipContent !== "",
@@ -218,7 +218,7 @@ var TreeMapChart = ({
218
218
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: wrapperClasses, children: [
219
219
  chart,
220
220
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
221
- _chunkWV5XHYW6js.ChartLegend,
221
+ _chunk23XPDNCAjs.ChartLegend,
222
222
  {
223
223
  items: legendItems,
224
224
  position: legendPosition,
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  Textarea
3
- } from "./chunk-DVEK5SO6.mjs";
3
+ } from "./chunk-D4X3NBAI.mjs";
4
4
  import {
5
5
  Button
6
6
  } from "./chunk-5TE7KLE5.mjs";
7
7
  import {
8
8
  Tag
9
- } from "./chunk-WMPCN7OF.mjs";
9
+ } from "./chunk-MZCGQED3.mjs";
10
10
  import {
11
11
  Text
12
12
  } from "./chunk-HLS4CHWX.mjs";
@@ -296,7 +296,7 @@ var CommentThread = ({
296
296
  {
297
297
  size: "sm",
298
298
  variant: node.tag.variant ?? "default",
299
- className: "rounded-full px-2 py-0.5 text-[10px] font-semibold tracking-wide uppercase border border-current bg-opacity-10",
299
+ className: "rounded-full px-2 py-0.5 text-[10px] font-semibold tracking-wide uppercase border border-current bg-current/10",
300
300
  children: node.tag.label
301
301
  }
302
302
  ) : null,
@@ -305,7 +305,7 @@ var CommentThread = ({
305
305
  {
306
306
  size: "sm",
307
307
  variant: tag.variant ?? "default",
308
- className: "rounded-full px-2 py-0.5 text-[10px] font-semibold tracking-wide uppercase border border-current bg-opacity-10",
308
+ className: "rounded-full px-2 py-0.5 text-[10px] font-semibold tracking-wide uppercase border border-current bg-current/10",
309
309
  children: tag.label
310
310
  },
311
311
  `${node.id}-tag-${index}`
@@ -62,6 +62,7 @@ var InfiniteScroll = ({
62
62
  threshold,
63
63
  direction,
64
64
  root: containerRef.current,
65
+ inverse,
65
66
  onLoadMore: () => {
66
67
  if (!disabled && !loading && hasMore) {
67
68
  onLoadMoreRef.current?.();
@@ -9,6 +9,8 @@ import {
9
9
  countLines,
10
10
  generateLineNumbers,
11
11
  handleTabKey,
12
+ getActiveLineIndex,
13
+ getCodeEditorActiveLineClasses,
12
14
  codeEditorTextareaClasses,
13
15
  codeEditorHighlightClasses
14
16
  } from "@expcat/tigercat-core";
@@ -25,6 +27,7 @@ var CodeEditor = ({
25
27
  wordWrap = false,
26
28
  minLines = 3,
27
29
  maxLines = 0,
30
+ highlightActiveLine = true,
28
31
  disabled = false,
29
32
  className,
30
33
  style,
@@ -32,6 +35,7 @@ var CodeEditor = ({
32
35
  highlighter
33
36
  }) => {
34
37
  const [internalValue, setInternalValue] = useState(defaultValue);
38
+ const [activeLine, setActiveLine] = useState(0);
35
39
  const textareaRef = useRef(null);
36
40
  const code = controlledValue !== void 0 ? controlledValue : internalValue;
37
41
  const lines = useMemo(() => code.split("\n"), [code]);
@@ -48,11 +52,17 @@ var CodeEditor = ({
48
52
  if (maxLines > 0) s.maxHeight = `${maxLines * lineHeight + 1.5}rem`;
49
53
  return s;
50
54
  }, [minLines, maxLines, style]);
55
+ const updateActiveLine = useCallback(() => {
56
+ const ta = textareaRef.current;
57
+ if (!ta) return;
58
+ setActiveLine(getActiveLineIndex(ta.value, ta.selectionStart));
59
+ }, []);
51
60
  const handleInput = useCallback(
52
61
  (e) => {
53
62
  const val = e.target.value;
54
63
  setInternalValue(val);
55
64
  onChange?.(val);
65
+ setActiveLine(getActiveLineIndex(val, e.target.selectionStart));
56
66
  },
57
67
  [onChange]
58
68
  );
@@ -74,27 +84,42 @@ var CodeEditor = ({
74
84
  [tabSize, onChange]
75
85
  );
76
86
  const wrapClass = wordWrap ? "whitespace-pre-wrap break-all" : "";
87
+ const showActiveLine = highlightActiveLine && !disabled;
88
+ const activeLineClass = getCodeEditorActiveLineClasses(theme);
77
89
  const renderToken = (token, idx) => {
78
90
  const cls = getTokenClasses(token.type, theme);
79
91
  return cls ? /* @__PURE__ */ jsx("span", { className: cls, children: token.value }, idx) : /* @__PURE__ */ jsx(React.Fragment, { children: token.value }, idx);
80
92
  };
81
93
  const renderLine = (line, lineIndex) => {
94
+ const lineClass = classNames(
95
+ "min-h-[1.625rem]",
96
+ showActiveLine && lineIndex === activeLine && activeLineClass
97
+ );
82
98
  if (highlighter?.highlightLine) {
83
99
  const html = highlighter.highlightLine(line, language, theme) || (line === "" ? "\n" : "");
84
100
  return /* @__PURE__ */ jsx(
85
101
  "div",
86
102
  {
87
- className: "min-h-[1.625rem]",
103
+ className: lineClass,
104
+ "data-active-line": showActiveLine && lineIndex === activeLine ? "" : void 0,
88
105
  dangerouslySetInnerHTML: { __html: html }
89
106
  },
90
107
  lineIndex
91
108
  );
92
109
  }
93
110
  const tokens = tokenizeLine(line, language);
94
- return /* @__PURE__ */ jsxs("div", { className: "min-h-[1.625rem]", children: [
95
- tokens.map(renderToken),
96
- line === "" ? "\n" : null
97
- ] }, lineIndex);
111
+ return /* @__PURE__ */ jsxs(
112
+ "div",
113
+ {
114
+ className: lineClass,
115
+ "data-active-line": showActiveLine && lineIndex === activeLine ? "" : void 0,
116
+ children: [
117
+ tokens.map(renderToken),
118
+ line === "" ? "\n" : null
119
+ ]
120
+ },
121
+ lineIndex
122
+ );
98
123
  };
99
124
  const blockHtml = highlighter && !highlighter.highlightLine && highlighter.highlightCode ? highlighter.highlightCode(code, language, theme) : null;
100
125
  return /* @__PURE__ */ jsx(
@@ -123,6 +148,9 @@ var CodeEditor = ({
123
148
  value: code,
124
149
  onChange: handleInput,
125
150
  onKeyDown: handleKeyDown,
151
+ onSelect: updateActiveLine,
152
+ onClick: updateActiveLine,
153
+ onKeyUp: updateActiveLine,
126
154
  readOnly: readOnly || disabled,
127
155
  disabled,
128
156
  placeholder,
@@ -1,3 +1,7 @@
1
+ import {
2
+ useTigerConfig
3
+ } from "./chunk-QAIBQHIO.mjs";
4
+
1
5
  // src/components/ImageViewer.tsx
2
6
  import { useState, useCallback, useEffect, useMemo, useRef } from "react";
3
7
  import {
@@ -20,7 +24,9 @@ import {
20
24
  movePan,
21
25
  createPinchState,
22
26
  startPinch,
23
- movePinch
27
+ movePinch,
28
+ getImageViewerLabels,
29
+ mergeTigerLocale
24
30
  } from "@expcat/tigercat-core";
25
31
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
26
32
  function SvgIcon({ pathD, label }) {
@@ -40,6 +46,7 @@ function SvgIcon({ pathD, label }) {
40
46
  );
41
47
  }
42
48
  var ImageViewer = ({
49
+ locale,
43
50
  images,
44
51
  open = false,
45
52
  currentIndex = 0,
@@ -55,6 +62,12 @@ var ImageViewer = ({
55
62
  onClose,
56
63
  onCurrentIndexChange
57
64
  }) => {
65
+ const config = useTigerConfig();
66
+ const mergedLocale = useMemo(
67
+ () => mergeTigerLocale(config.locale, locale),
68
+ [config.locale, locale]
69
+ );
70
+ const labels = useMemo(() => getImageViewerLabels(mergedLocale), [mergedLocale]);
58
71
  const [index, setIndex] = useState(currentIndex);
59
72
  const [transform, setTransform] = useState(createDefaultTransform);
60
73
  const panRef = useRef(createPanState());
@@ -112,7 +125,7 @@ var ImageViewer = ({
112
125
  className: backdropClasses,
113
126
  role: "dialog",
114
127
  "aria-modal": "true",
115
- "aria-label": "Image viewer",
128
+ "aria-label": labels.dialogAriaLabel,
116
129
  onClick: (e) => {
117
130
  if (maskClosable && e.target === e.currentTarget) handleClose();
118
131
  },
@@ -127,9 +140,9 @@ var ImageViewer = ({
127
140
  {
128
141
  className: imageViewerCloseBtnClasses,
129
142
  onClick: handleClose,
130
- "aria-label": "Close",
143
+ "aria-label": labels.closeAriaLabel,
131
144
  type: "button",
132
- children: /* @__PURE__ */ jsx(SvgIcon, { pathD: imageViewerIcons.close, label: "Close" })
145
+ children: /* @__PURE__ */ jsx(SvgIcon, { pathD: imageViewerIcons.close, label: labels.closeAriaLabel })
133
146
  }
134
147
  ),
135
148
  showNav && images.length > 1 && /* @__PURE__ */ jsxs(Fragment, { children: [
@@ -138,9 +151,9 @@ var ImageViewer = ({
138
151
  {
139
152
  className: classNames(imageViewerNavBtnClasses, "left-4"),
140
153
  onClick: handlePrev,
141
- "aria-label": "Previous image",
154
+ "aria-label": labels.previousImageAriaLabel,
142
155
  type: "button",
143
- children: /* @__PURE__ */ jsx(SvgIcon, { pathD: imageViewerIcons.prev, label: "Previous" })
156
+ children: /* @__PURE__ */ jsx(SvgIcon, { pathD: imageViewerIcons.prev, label: labels.previousImageAriaLabel })
144
157
  }
145
158
  ),
146
159
  /* @__PURE__ */ jsx(
@@ -148,9 +161,9 @@ var ImageViewer = ({
148
161
  {
149
162
  className: classNames(imageViewerNavBtnClasses, "right-4"),
150
163
  onClick: handleNext,
151
- "aria-label": "Next image",
164
+ "aria-label": labels.nextImageAriaLabel,
152
165
  type: "button",
153
- children: /* @__PURE__ */ jsx(SvgIcon, { pathD: imageViewerIcons.next, label: "Next" })
166
+ children: /* @__PURE__ */ jsx(SvgIcon, { pathD: imageViewerIcons.next, label: labels.nextImageAriaLabel })
154
167
  }
155
168
  )
156
169
  ] }),
@@ -238,9 +251,9 @@ var ImageViewer = ({
238
251
  ...t,
239
252
  scale: clampZoom(t.scale - 0.25, minZoom, maxZoom)
240
253
  })),
241
- "aria-label": "Zoom out",
254
+ "aria-label": labels.zoomOutAriaLabel,
242
255
  type: "button",
243
- children: /* @__PURE__ */ jsx(SvgIcon, { pathD: imageViewerIcons.zoomOut, label: "Zoom out" })
256
+ children: /* @__PURE__ */ jsx(SvgIcon, { pathD: imageViewerIcons.zoomOut, label: labels.zoomOutAriaLabel })
244
257
  }
245
258
  ),
246
259
  /* @__PURE__ */ jsx(
@@ -251,9 +264,9 @@ var ImageViewer = ({
251
264
  ...t,
252
265
  scale: clampZoom(t.scale + 0.25, minZoom, maxZoom)
253
266
  })),
254
- "aria-label": "Zoom in",
267
+ "aria-label": labels.zoomInAriaLabel,
255
268
  type: "button",
256
- children: /* @__PURE__ */ jsx(SvgIcon, { pathD: imageViewerIcons.zoomIn, label: "Zoom in" })
269
+ children: /* @__PURE__ */ jsx(SvgIcon, { pathD: imageViewerIcons.zoomIn, label: labels.zoomInAriaLabel })
257
270
  }
258
271
  )
259
272
  ] }),
@@ -263,9 +276,9 @@ var ImageViewer = ({
263
276
  {
264
277
  className: imageViewerToolbarBtnClasses,
265
278
  onClick: () => setTransform((t) => ({ ...t, rotation: normalizeRotation(t.rotation - 90) })),
266
- "aria-label": "Rotate left",
279
+ "aria-label": labels.rotateLeftAriaLabel,
267
280
  type: "button",
268
- children: /* @__PURE__ */ jsx(SvgIcon, { pathD: imageViewerIcons.rotateLeft, label: "Rotate left" })
281
+ children: /* @__PURE__ */ jsx(SvgIcon, { pathD: imageViewerIcons.rotateLeft, label: labels.rotateLeftAriaLabel })
269
282
  }
270
283
  ),
271
284
  /* @__PURE__ */ jsx(
@@ -273,9 +286,9 @@ var ImageViewer = ({
273
286
  {
274
287
  className: imageViewerToolbarBtnClasses,
275
288
  onClick: () => setTransform((t) => ({ ...t, rotation: normalizeRotation(t.rotation + 90) })),
276
- "aria-label": "Rotate right",
289
+ "aria-label": labels.rotateRightAriaLabel,
277
290
  type: "button",
278
- children: /* @__PURE__ */ jsx(SvgIcon, { pathD: imageViewerIcons.rotateRight, label: "Rotate right" })
291
+ children: /* @__PURE__ */ jsx(SvgIcon, { pathD: imageViewerIcons.rotateRight, label: labels.rotateRightAriaLabel })
279
292
  }
280
293
  )
281
294
  ] })