@mieweb/ui 0.10.0-dev.4 → 0.10.0-dev.40

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 (811) hide show
  1. package/README.md +4 -4
  2. package/agent/mieweb-ui.instructions.md +90 -1
  3. package/dist/CsvBlock-CFXSDPBI.js +9 -0
  4. package/dist/{CsvBlock-UWPMTLE2.js.map → CsvBlock-CFXSDPBI.js.map} +1 -1
  5. package/dist/CsvBlock-RGO7JXHJ.cjs +18 -0
  6. package/dist/{CsvBlock-ROJCKJDP.cjs.map → CsvBlock-RGO7JXHJ.cjs.map} +1 -1
  7. package/dist/HtmlPreviewBlock-VBYXCXVT.cjs +18 -0
  8. package/dist/{HtmlPreviewBlock-DWFN6EUB.cjs.map → HtmlPreviewBlock-VBYXCXVT.cjs.map} +1 -1
  9. package/dist/HtmlPreviewBlock-Z2GCK325.js +9 -0
  10. package/dist/{HtmlPreviewBlock-ME5U3XNS.js.map → HtmlPreviewBlock-Z2GCK325.js.map} +1 -1
  11. package/dist/MermaidBlock-I2R2BQOX.cjs +18 -0
  12. package/dist/{MermaidBlock-D2UC5M55.cjs.map → MermaidBlock-I2R2BQOX.cjs.map} +1 -1
  13. package/dist/MermaidBlock-XCAK7IA5.js +9 -0
  14. package/dist/{MermaidBlock-2B6CPD6Y.js.map → MermaidBlock-XCAK7IA5.js.map} +1 -1
  15. package/dist/SurveyBlock-KI5JOWCL.js +9 -0
  16. package/dist/{SurveyBlock-4DO62RBT.js.map → SurveyBlock-KI5JOWCL.js.map} +1 -1
  17. package/dist/SurveyBlock-UKSGISRT.cjs +18 -0
  18. package/dist/{SurveyBlock-4CD4AYMJ.cjs.map → SurveyBlock-UKSGISRT.cjs.map} +1 -1
  19. package/dist/ag-grid.d.cts +142 -1
  20. package/dist/ag-grid.d.ts +142 -1
  21. package/dist/brands/bluehive.cjs +3 -3
  22. package/dist/brands/bluehive.css +3 -0
  23. package/dist/brands/bluehive.js +1 -1
  24. package/dist/brands/index.cjs +14 -14
  25. package/dist/brands/index.js +4 -4
  26. package/dist/{chunk-3M7TAXNR.js → chunk-24AFHH4J.js} +3 -3
  27. package/dist/{chunk-3M7TAXNR.js.map → chunk-24AFHH4J.js.map} +1 -1
  28. package/dist/{chunk-JYZW2PZS.cjs → chunk-254QK722.cjs} +7 -7
  29. package/dist/chunk-254QK722.cjs.map +1 -0
  30. package/dist/{chunk-VPIYTQCV.cjs → chunk-2I4IRQQG.cjs} +12 -5
  31. package/dist/chunk-2I4IRQQG.cjs.map +1 -0
  32. package/dist/chunk-2X54ZLT6.js +874 -0
  33. package/dist/chunk-2X54ZLT6.js.map +1 -0
  34. package/dist/{chunk-5MCBWTIF.cjs → chunk-32ZCJOSR.cjs} +4 -4
  35. package/dist/{chunk-5MCBWTIF.cjs.map → chunk-32ZCJOSR.cjs.map} +1 -1
  36. package/dist/chunk-3YBS4WUQ.js +52 -0
  37. package/dist/chunk-3YBS4WUQ.js.map +1 -0
  38. package/dist/{chunk-WNJRS7Y7.cjs → chunk-3ZWCIPFT.cjs} +4 -2
  39. package/dist/chunk-3ZWCIPFT.cjs.map +1 -0
  40. package/dist/chunk-434L5RYF.js +314 -0
  41. package/dist/chunk-434L5RYF.js.map +1 -0
  42. package/dist/{chunk-TPWKM7JH.js → chunk-43K7OQ3E.js} +3 -3
  43. package/dist/{chunk-TPWKM7JH.js.map → chunk-43K7OQ3E.js.map} +1 -1
  44. package/dist/chunk-47P5QLX4.cjs +42 -0
  45. package/dist/chunk-47P5QLX4.cjs.map +1 -0
  46. package/dist/chunk-4IS3QCOQ.cjs +453 -0
  47. package/dist/chunk-4IS3QCOQ.cjs.map +1 -0
  48. package/dist/chunk-4NCDU5IG.cjs +56 -0
  49. package/dist/chunk-4NCDU5IG.cjs.map +1 -0
  50. package/dist/chunk-4ZB7RSMY.cjs +306 -0
  51. package/dist/chunk-4ZB7RSMY.cjs.map +1 -0
  52. package/dist/chunk-522WJIVI.js +99 -0
  53. package/dist/chunk-522WJIVI.js.map +1 -0
  54. package/dist/chunk-56VTM4OX.js +261 -0
  55. package/dist/chunk-56VTM4OX.js.map +1 -0
  56. package/dist/chunk-5HKZR6UG.js +248 -0
  57. package/dist/chunk-5HKZR6UG.js.map +1 -0
  58. package/dist/chunk-6BNZLN4B.cjs +548 -0
  59. package/dist/chunk-6BNZLN4B.cjs.map +1 -0
  60. package/dist/chunk-6N7NMOSV.js +233 -0
  61. package/dist/chunk-6N7NMOSV.js.map +1 -0
  62. package/dist/chunk-6TTCZY3P.cjs +4 -0
  63. package/dist/chunk-6TTCZY3P.cjs.map +1 -0
  64. package/dist/{chunk-YQDA366U.js → chunk-753ENNB6.js} +2 -2
  65. package/dist/{chunk-YQDA366U.js.map → chunk-753ENNB6.js.map} +1 -1
  66. package/dist/{chunk-N6IY47YA.cjs → chunk-7C5W744U.cjs} +8 -8
  67. package/dist/{chunk-N6IY47YA.cjs.map → chunk-7C5W744U.cjs.map} +1 -1
  68. package/dist/chunk-7E46YDOT.cjs +122 -0
  69. package/dist/chunk-7E46YDOT.cjs.map +1 -0
  70. package/dist/chunk-7HUTR6RX.js +178 -0
  71. package/dist/chunk-7HUTR6RX.js.map +1 -0
  72. package/dist/chunk-7IRTD4JT.cjs +61 -0
  73. package/dist/chunk-7IRTD4JT.cjs.map +1 -0
  74. package/dist/{chunk-KZFBQ7GY.js → chunk-7QW6TU4X.js} +3 -3
  75. package/dist/{chunk-KZFBQ7GY.js.map → chunk-7QW6TU4X.js.map} +1 -1
  76. package/dist/{chunk-MWVW4APN.cjs → chunk-7UTBDFFL.cjs} +4 -4
  77. package/dist/{chunk-MWVW4APN.cjs.map → chunk-7UTBDFFL.cjs.map} +1 -1
  78. package/dist/chunk-7WJ6MBF5.cjs +47 -0
  79. package/dist/chunk-7WJ6MBF5.cjs.map +1 -0
  80. package/dist/{chunk-FJ7YPVKV.js → chunk-7X6R3JIA.js} +3 -3
  81. package/dist/{chunk-FJ7YPVKV.js.map → chunk-7X6R3JIA.js.map} +1 -1
  82. package/dist/chunk-A4W5CSK7.cjs +216 -0
  83. package/dist/chunk-A4W5CSK7.cjs.map +1 -0
  84. package/dist/{chunk-2G75X6TS.cjs → chunk-AHHFFXJR.cjs} +3 -3
  85. package/dist/{chunk-2G75X6TS.cjs.map → chunk-AHHFFXJR.cjs.map} +1 -1
  86. package/dist/chunk-AJPFQF3H.cjs +896 -0
  87. package/dist/chunk-AJPFQF3H.cjs.map +1 -0
  88. package/dist/chunk-AMYFRY7K.js +3 -0
  89. package/dist/chunk-AMYFRY7K.js.map +1 -0
  90. package/dist/{chunk-VNYW4C4J.cjs → chunk-ANMX7YDL.cjs} +4 -84
  91. package/dist/chunk-ANMX7YDL.cjs.map +1 -0
  92. package/dist/chunk-ARIJ5OHW.cjs +139 -0
  93. package/dist/chunk-ARIJ5OHW.cjs.map +1 -0
  94. package/dist/{chunk-DVOQ3JNO.js → chunk-B4CKCNWD.js} +16 -8
  95. package/dist/chunk-B4CKCNWD.js.map +1 -0
  96. package/dist/chunk-BJ6ABRSQ.cjs +256 -0
  97. package/dist/chunk-BJ6ABRSQ.cjs.map +1 -0
  98. package/dist/chunk-BM35CACB.js +148 -0
  99. package/dist/chunk-BM35CACB.js.map +1 -0
  100. package/dist/{chunk-G3JX3UAU.cjs → chunk-BWSZ2BHJ.cjs} +6 -6
  101. package/dist/{chunk-G3JX3UAU.cjs.map → chunk-BWSZ2BHJ.cjs.map} +1 -1
  102. package/dist/chunk-BXRQ6HEP.cjs +4 -0
  103. package/dist/chunk-BXRQ6HEP.cjs.map +1 -0
  104. package/dist/{chunk-SGFYA22I.cjs → chunk-C77FAR3F.cjs} +8 -8
  105. package/dist/{chunk-SGFYA22I.cjs.map → chunk-C77FAR3F.cjs.map} +1 -1
  106. package/dist/chunk-CBBKWRLG.js +213 -0
  107. package/dist/chunk-CBBKWRLG.js.map +1 -0
  108. package/dist/{chunk-UAMXCMST.cjs → chunk-CFI3TQMA.cjs} +3 -3
  109. package/dist/{chunk-UAMXCMST.cjs.map → chunk-CFI3TQMA.cjs.map} +1 -1
  110. package/dist/chunk-CLQW724U.cjs +271 -0
  111. package/dist/chunk-CLQW724U.cjs.map +1 -0
  112. package/dist/chunk-CPDNX3LS.cjs +47 -0
  113. package/dist/chunk-CPDNX3LS.cjs.map +1 -0
  114. package/dist/chunk-CVNPNZMX.js +44 -0
  115. package/dist/chunk-CVNPNZMX.js.map +1 -0
  116. package/dist/{chunk-2YCERQWC.js → chunk-CVXESGXJ.js} +10 -9
  117. package/dist/chunk-CVXESGXJ.js.map +1 -0
  118. package/dist/chunk-DGHS5IVD.js +305 -0
  119. package/dist/chunk-DGHS5IVD.js.map +1 -0
  120. package/dist/chunk-DHGCLPFZ.js +91 -0
  121. package/dist/chunk-DHGCLPFZ.js.map +1 -0
  122. package/dist/{chunk-GD7EBGC4.cjs → chunk-DHU3FFC3.cjs} +49 -19
  123. package/dist/chunk-DHU3FFC3.cjs.map +1 -0
  124. package/dist/chunk-DO2YN46R.cjs +201 -0
  125. package/dist/chunk-DO2YN46R.cjs.map +1 -0
  126. package/dist/chunk-DVDT7TX7.js +151 -0
  127. package/dist/chunk-DVDT7TX7.js.map +1 -0
  128. package/dist/chunk-DXEPYK3I.cjs +92 -0
  129. package/dist/chunk-DXEPYK3I.cjs.map +1 -0
  130. package/dist/{chunk-X4XPNTCZ.cjs → chunk-DZ3JTMKM.cjs} +136 -58
  131. package/dist/chunk-DZ3JTMKM.cjs.map +1 -0
  132. package/dist/chunk-EACNRR3C.cjs +4 -0
  133. package/dist/chunk-EACNRR3C.cjs.map +1 -0
  134. package/dist/{chunk-ZGRCSNPK.js → chunk-EEOGIGIA.js} +4 -4
  135. package/dist/{chunk-ZGRCSNPK.js.map → chunk-EEOGIGIA.js.map} +1 -1
  136. package/dist/chunk-EPCUPHEO.js +193 -0
  137. package/dist/chunk-EPCUPHEO.js.map +1 -0
  138. package/dist/{chunk-7ZXAQTV4.cjs → chunk-ERACGSDY.cjs} +8 -8
  139. package/dist/{chunk-7ZXAQTV4.cjs.map → chunk-ERACGSDY.cjs.map} +1 -1
  140. package/dist/{chunk-OD47TTAW.cjs → chunk-F2FOG4EG.cjs} +9 -9
  141. package/dist/{chunk-OD47TTAW.cjs.map → chunk-F2FOG4EG.cjs.map} +1 -1
  142. package/dist/chunk-F3EWRDIT.js +312 -0
  143. package/dist/chunk-F3EWRDIT.js.map +1 -0
  144. package/dist/{chunk-XCP454Q6.js → chunk-F4N67NAF.js} +12 -3
  145. package/dist/chunk-F4N67NAF.js.map +1 -0
  146. package/dist/{chunk-WGPLUCBD.js → chunk-F6W62K4J.js} +4 -4
  147. package/dist/{chunk-WGPLUCBD.js.map → chunk-F6W62K4J.js.map} +1 -1
  148. package/dist/chunk-FBCDYTWM.js +385 -0
  149. package/dist/chunk-FBCDYTWM.js.map +1 -0
  150. package/dist/{chunk-V7D3YGUV.js → chunk-FGLIP6YR.js} +4 -4
  151. package/dist/{chunk-V7D3YGUV.js.map → chunk-FGLIP6YR.js.map} +1 -1
  152. package/dist/{chunk-VU6UTJRM.js → chunk-FIKO4WR6.js} +3 -3
  153. package/dist/{chunk-VU6UTJRM.js.map → chunk-FIKO4WR6.js.map} +1 -1
  154. package/dist/chunk-FSGJXCBG.cjs +318 -0
  155. package/dist/chunk-FSGJXCBG.cjs.map +1 -0
  156. package/dist/chunk-FSWHZY3T.cjs +328 -0
  157. package/dist/chunk-FSWHZY3T.cjs.map +1 -0
  158. package/dist/chunk-FTEZNCRI.js +29 -0
  159. package/dist/chunk-FTEZNCRI.js.map +1 -0
  160. package/dist/{chunk-YVPC65ZJ.cjs → chunk-GF2BE4FB.cjs} +91 -32
  161. package/dist/chunk-GF2BE4FB.cjs.map +1 -0
  162. package/dist/{chunk-JEIW7BSV.cjs → chunk-GKDHMNUA.cjs} +2 -52
  163. package/dist/chunk-GKDHMNUA.cjs.map +1 -0
  164. package/dist/chunk-GM32IDVL.cjs +356 -0
  165. package/dist/chunk-GM32IDVL.cjs.map +1 -0
  166. package/dist/chunk-GVM6DTR5.js +90 -0
  167. package/dist/chunk-GVM6DTR5.js.map +1 -0
  168. package/dist/{chunk-SQHMGT4W.js → chunk-GW4RFJZ5.js} +7 -7
  169. package/dist/chunk-GW4RFJZ5.js.map +1 -0
  170. package/dist/chunk-GY5SP4ST.js +3 -0
  171. package/dist/chunk-GY5SP4ST.js.map +1 -0
  172. package/dist/chunk-H2Y7HZV5.js +3 -0
  173. package/dist/chunk-H2Y7HZV5.js.map +1 -0
  174. package/dist/chunk-H3P7POFC.cjs +337 -0
  175. package/dist/chunk-H3P7POFC.cjs.map +1 -0
  176. package/dist/{chunk-JID7AZTO.cjs → chunk-H3ROMJYI.cjs} +4 -4
  177. package/dist/{chunk-JID7AZTO.cjs.map → chunk-H3ROMJYI.cjs.map} +1 -1
  178. package/dist/{chunk-462XSCP3.cjs → chunk-HCIXGFWR.cjs} +4 -4
  179. package/dist/{chunk-462XSCP3.cjs.map → chunk-HCIXGFWR.cjs.map} +1 -1
  180. package/dist/{chunk-H4ZXMQQW.js → chunk-HDY7YQFX.js} +3 -3
  181. package/dist/{chunk-H4ZXMQQW.js.map → chunk-HDY7YQFX.js.map} +1 -1
  182. package/dist/chunk-HNFFFFYH.cjs +114 -0
  183. package/dist/chunk-HNFFFFYH.cjs.map +1 -0
  184. package/dist/chunk-HNXLLDPN.js +25 -0
  185. package/dist/chunk-HNXLLDPN.js.map +1 -0
  186. package/dist/{chunk-NV2CWBI2.cjs → chunk-IEY3ZJIT.cjs} +12 -3
  187. package/dist/chunk-IEY3ZJIT.cjs.map +1 -0
  188. package/dist/{chunk-3QEVGSFG.cjs → chunk-IGDO62KR.cjs} +5 -5
  189. package/dist/{chunk-3QEVGSFG.cjs.map → chunk-IGDO62KR.cjs.map} +1 -1
  190. package/dist/chunk-IT775BYG.js +179 -0
  191. package/dist/chunk-IT775BYG.js.map +1 -0
  192. package/dist/{chunk-N5O47VGS.cjs → chunk-IVGI353O.cjs} +2 -2
  193. package/dist/{chunk-N5O47VGS.cjs.map → chunk-IVGI353O.cjs.map} +1 -1
  194. package/dist/chunk-IWRBJHO3.cjs +51 -0
  195. package/dist/chunk-IWRBJHO3.cjs.map +1 -0
  196. package/dist/{chunk-VILW53UZ.js → chunk-JMAZ2GKT.js} +3 -3
  197. package/dist/{chunk-VILW53UZ.js.map → chunk-JMAZ2GKT.js.map} +1 -1
  198. package/dist/{chunk-WWJIW2IH.cjs → chunk-JSXIB6EJ.cjs} +4 -4
  199. package/dist/{chunk-WWJIW2IH.cjs.map → chunk-JSXIB6EJ.cjs.map} +1 -1
  200. package/dist/{chunk-KRU6IGV7.js → chunk-JUJGWUAN.js} +28 -6
  201. package/dist/chunk-JUJGWUAN.js.map +1 -0
  202. package/dist/{chunk-FXO5ARBB.cjs → chunk-KDW6BD4O.cjs} +4 -4
  203. package/dist/{chunk-FXO5ARBB.cjs.map → chunk-KDW6BD4O.cjs.map} +1 -1
  204. package/dist/{chunk-Z5V7SAZ4.js → chunk-KFEN2SRZ.js} +3 -3
  205. package/dist/{chunk-Z5V7SAZ4.js.map → chunk-KFEN2SRZ.js.map} +1 -1
  206. package/dist/{chunk-XEAT7XJG.cjs → chunk-KQ6GLYFZ.cjs} +29 -13
  207. package/dist/chunk-KQ6GLYFZ.cjs.map +1 -0
  208. package/dist/chunk-L6K4PRZK.cjs +4 -0
  209. package/dist/chunk-L6K4PRZK.cjs.map +1 -0
  210. package/dist/{chunk-7ZDPD5ZX.cjs → chunk-LC3JL2HB.cjs} +11 -7
  211. package/dist/chunk-LC3JL2HB.cjs.map +1 -0
  212. package/dist/{chunk-P7UMS4E6.cjs → chunk-LC7PVBXH.cjs} +16 -8
  213. package/dist/chunk-LC7PVBXH.cjs.map +1 -0
  214. package/dist/{chunk-Y5HFM7LO.js → chunk-LDBNUJB7.js} +5 -5
  215. package/dist/{chunk-Y5HFM7LO.js.map → chunk-LDBNUJB7.js.map} +1 -1
  216. package/dist/chunk-LRAAJRE7.cjs +2707 -0
  217. package/dist/chunk-LRAAJRE7.cjs.map +1 -0
  218. package/dist/chunk-LUPRGPKP.js +2540 -0
  219. package/dist/chunk-LUPRGPKP.js.map +1 -0
  220. package/dist/chunk-M3VPGJMV.js +283 -0
  221. package/dist/chunk-M3VPGJMV.js.map +1 -0
  222. package/dist/{chunk-VKELAMAZ.js → chunk-N54FYWG6.js} +27 -11
  223. package/dist/chunk-N54FYWG6.js.map +1 -0
  224. package/dist/chunk-N5JDL4VE.js +3 -0
  225. package/dist/chunk-N5JDL4VE.js.map +1 -0
  226. package/dist/{chunk-2QKBTPUC.cjs → chunk-NAH65KPK.cjs} +8 -8
  227. package/dist/{chunk-2QKBTPUC.cjs.map → chunk-NAH65KPK.cjs.map} +1 -1
  228. package/dist/{chunk-PYJDVWXM.js → chunk-NUB5HRKS.js} +3 -3
  229. package/dist/{chunk-PYJDVWXM.js.map → chunk-NUB5HRKS.js.map} +1 -1
  230. package/dist/{chunk-WNZAYBVB.cjs → chunk-O6BJMVGT.cjs} +48 -48
  231. package/dist/{chunk-WNZAYBVB.cjs.map → chunk-O6BJMVGT.cjs.map} +1 -1
  232. package/dist/{chunk-SVSHA7XV.js → chunk-O6XDA3SI.js} +31 -33
  233. package/dist/chunk-O6XDA3SI.js.map +1 -0
  234. package/dist/chunk-OIF34LEN.cjs +425 -0
  235. package/dist/chunk-OIF34LEN.cjs.map +1 -0
  236. package/dist/chunk-OIMXMPH2.cjs +218 -0
  237. package/dist/chunk-OIMXMPH2.cjs.map +1 -0
  238. package/dist/{chunk-J5CSLNCN.cjs → chunk-OODVC2UD.cjs} +2 -2
  239. package/dist/{chunk-J5CSLNCN.cjs.map → chunk-OODVC2UD.cjs.map} +1 -1
  240. package/dist/{chunk-ACCAXVOG.js → chunk-OSTSZDQC.js} +134 -56
  241. package/dist/chunk-OSTSZDQC.js.map +1 -0
  242. package/dist/{chunk-LL6IWKI3.js → chunk-OW3SQJ7P.js} +3 -3
  243. package/dist/{chunk-LL6IWKI3.js.map → chunk-OW3SQJ7P.js.map} +1 -1
  244. package/dist/chunk-P22YCUVM.cjs +4 -0
  245. package/dist/chunk-P22YCUVM.cjs.map +1 -0
  246. package/dist/{chunk-CEQJGUAS.js → chunk-P4E3K3ND.js} +12 -5
  247. package/dist/chunk-P4E3K3ND.js.map +1 -0
  248. package/dist/{chunk-5GUOOLPR.cjs → chunk-P5CMZZRZ.cjs} +5 -5
  249. package/dist/{chunk-5GUOOLPR.cjs.map → chunk-P5CMZZRZ.cjs.map} +1 -1
  250. package/dist/{chunk-TMMVIUUN.js → chunk-P7D7BYFE.js} +4 -4
  251. package/dist/{chunk-TMMVIUUN.js.map → chunk-P7D7BYFE.js.map} +1 -1
  252. package/dist/{chunk-3T7QGLNB.js → chunk-PJEL5ZZV.js} +4 -2
  253. package/dist/chunk-PJEL5ZZV.js.map +1 -0
  254. package/dist/chunk-PYI2IWNX.cjs +281 -0
  255. package/dist/chunk-PYI2IWNX.cjs.map +1 -0
  256. package/dist/chunk-Q3YVLO52.cjs +174 -0
  257. package/dist/chunk-Q3YVLO52.cjs.map +1 -0
  258. package/dist/{chunk-WNM7IZJ7.js → chunk-QJ2L5RU6.js} +7 -7
  259. package/dist/{chunk-WNM7IZJ7.js.map → chunk-QJ2L5RU6.js.map} +1 -1
  260. package/dist/{chunk-X4LBUPJO.cjs → chunk-QX6AAVDE.cjs} +31 -33
  261. package/dist/chunk-QX6AAVDE.cjs.map +1 -0
  262. package/dist/{chunk-UV2FVNWT.cjs → chunk-RIUQP2QS.cjs} +5 -5
  263. package/dist/{chunk-UV2FVNWT.cjs.map → chunk-RIUQP2QS.cjs.map} +1 -1
  264. package/dist/chunk-RLVYWUXG.js +115 -0
  265. package/dist/chunk-RLVYWUXG.js.map +1 -0
  266. package/dist/{chunk-22CYDCXA.js → chunk-RM2HPQIC.js} +105 -14
  267. package/dist/chunk-RM2HPQIC.js.map +1 -0
  268. package/dist/{chunk-DEDN5HAG.js → chunk-RSJGTWLM.js} +3 -3
  269. package/dist/{chunk-DEDN5HAG.js.map → chunk-RSJGTWLM.js.map} +1 -1
  270. package/dist/{chunk-6EN3IQQI.cjs → chunk-RV45J2ZT.cjs} +8 -8
  271. package/dist/{chunk-6EN3IQQI.cjs.map → chunk-RV45J2ZT.cjs.map} +1 -1
  272. package/dist/chunk-RZSSQ7AT.js +333 -0
  273. package/dist/chunk-RZSSQ7AT.js.map +1 -0
  274. package/dist/{chunk-ENKFJJZX.js → chunk-S2JZL4JC.js} +6 -6
  275. package/dist/{chunk-ENKFJJZX.js.map → chunk-S2JZL4JC.js.map} +1 -1
  276. package/dist/{chunk-ELPW32ZI.cjs → chunk-S4XCPDEO.cjs} +60 -59
  277. package/dist/chunk-S4XCPDEO.cjs.map +1 -0
  278. package/dist/{chunk-OE5CKRUC.js → chunk-SACHTD7B.js} +34 -4
  279. package/dist/chunk-SACHTD7B.js.map +1 -0
  280. package/dist/{chunk-U42F3HLE.cjs → chunk-SAGJHL2Z.cjs} +275 -5
  281. package/dist/chunk-SAGJHL2Z.cjs.map +1 -0
  282. package/dist/{chunk-VROIMIHB.cjs → chunk-SHBCUXFS.cjs} +28 -6
  283. package/dist/chunk-SHBCUXFS.cjs.map +1 -0
  284. package/dist/{chunk-RJ6NTJHC.js → chunk-SRMTRD7F.js} +3 -3
  285. package/dist/{chunk-RJ6NTJHC.js.map → chunk-SRMTRD7F.js.map} +1 -1
  286. package/dist/{chunk-IX6KFB3K.cjs → chunk-SW2E7XKY.cjs} +9 -9
  287. package/dist/{chunk-IX6KFB3K.cjs.map → chunk-SW2E7XKY.cjs.map} +1 -1
  288. package/dist/chunk-SZSRGUVO.js +402 -0
  289. package/dist/chunk-SZSRGUVO.js.map +1 -0
  290. package/dist/{chunk-NJ6MY6V5.js → chunk-T5BBZQ66.js} +3 -3
  291. package/dist/{chunk-NJ6MY6V5.js.map → chunk-T5BBZQ66.js.map} +1 -1
  292. package/dist/{chunk-JI244Y7C.js → chunk-T5NOFXOL.js} +275 -5
  293. package/dist/chunk-T5NOFXOL.js.map +1 -0
  294. package/dist/{chunk-2IZLKPUW.js → chunk-THLIL6PY.js} +3 -3
  295. package/dist/{chunk-2IZLKPUW.js.map → chunk-THLIL6PY.js.map} +1 -1
  296. package/dist/{chunk-HZ4MBUC3.js → chunk-TI3TQQ7F.js} +4 -53
  297. package/dist/chunk-TI3TQQ7F.js.map +1 -0
  298. package/dist/chunk-TVU4KB27.cjs +353 -0
  299. package/dist/chunk-TVU4KB27.cjs.map +1 -0
  300. package/dist/{chunk-5JJ2DAE4.js → chunk-TWQSMUE6.js} +7 -3
  301. package/dist/chunk-TWQSMUE6.js.map +1 -0
  302. package/dist/{chunk-TAXD5ADA.cjs → chunk-UEDTZYGI.cjs} +3 -3
  303. package/dist/{chunk-TAXD5ADA.cjs.map → chunk-UEDTZYGI.cjs.map} +1 -1
  304. package/dist/{chunk-3QGS6CXD.js → chunk-UJDWFDKE.js} +3 -3
  305. package/dist/{chunk-3QGS6CXD.js.map → chunk-UJDWFDKE.js.map} +1 -1
  306. package/dist/chunk-UNFDIBKJ.js +258 -0
  307. package/dist/chunk-UNFDIBKJ.js.map +1 -0
  308. package/dist/{chunk-UQ3VVR6A.cjs → chunk-UPWIJC6I.cjs} +3 -3
  309. package/dist/{chunk-UQ3VVR6A.cjs.map → chunk-UPWIJC6I.cjs.map} +1 -1
  310. package/dist/chunk-UTIPENPW.cjs +286 -0
  311. package/dist/chunk-UTIPENPW.cjs.map +1 -0
  312. package/dist/{chunk-S7WCHDBO.js → chunk-VCI2Y7ST.js} +3 -3
  313. package/dist/{chunk-S7WCHDBO.js.map → chunk-VCI2Y7ST.js.map} +1 -1
  314. package/dist/chunk-VEE46VTX.js +166 -0
  315. package/dist/chunk-VEE46VTX.js.map +1 -0
  316. package/dist/chunk-VFFV7EMT.cjs +188 -0
  317. package/dist/chunk-VFFV7EMT.cjs.map +1 -0
  318. package/dist/chunk-VINZZQBD.cjs +323 -0
  319. package/dist/chunk-VINZZQBD.cjs.map +1 -0
  320. package/dist/chunk-VPTASZ2O.cjs +171 -0
  321. package/dist/chunk-VPTASZ2O.cjs.map +1 -0
  322. package/dist/{chunk-P2CA3XGI.js → chunk-VSRO4PAI.js} +23 -5
  323. package/dist/chunk-VSRO4PAI.js.map +1 -0
  324. package/dist/{chunk-L6MDULYB.js → chunk-VU3ZMJBN.js} +2 -2
  325. package/dist/{chunk-L6MDULYB.js.map → chunk-VU3ZMJBN.js.map} +1 -1
  326. package/dist/{chunk-XI34EGK5.cjs → chunk-VV2U36T6.cjs} +9 -9
  327. package/dist/{chunk-XI34EGK5.cjs.map → chunk-VV2U36T6.cjs.map} +1 -1
  328. package/dist/{chunk-VPWJCJCX.cjs → chunk-VXW7D5LR.cjs} +26 -8
  329. package/dist/chunk-VXW7D5LR.cjs.map +1 -0
  330. package/dist/chunk-W3HXHIDO.cjs +2573 -0
  331. package/dist/chunk-W3HXHIDO.cjs.map +1 -0
  332. package/dist/{chunk-GOALNQZ2.js → chunk-WFBUBT54.js} +4 -83
  333. package/dist/chunk-WFBUBT54.js.map +1 -0
  334. package/dist/chunk-WFL4N5PC.js +283 -0
  335. package/dist/chunk-WFL4N5PC.js.map +1 -0
  336. package/dist/chunk-WQHBMZSC.js +295 -0
  337. package/dist/chunk-WQHBMZSC.js.map +1 -0
  338. package/dist/chunk-X3RSNAMX.js +195 -0
  339. package/dist/chunk-X3RSNAMX.js.map +1 -0
  340. package/dist/chunk-X5JOEZVR.js +525 -0
  341. package/dist/chunk-X5JOEZVR.js.map +1 -0
  342. package/dist/chunk-XBAAHOCP.js +3 -0
  343. package/dist/chunk-XBAAHOCP.js.map +1 -0
  344. package/dist/chunk-XDIMTPZU.cjs +202 -0
  345. package/dist/chunk-XDIMTPZU.cjs.map +1 -0
  346. package/dist/chunk-XDU65GLW.js +21 -0
  347. package/dist/chunk-XDU65GLW.js.map +1 -0
  348. package/dist/chunk-XI74P5F2.cjs +424 -0
  349. package/dist/chunk-XI74P5F2.cjs.map +1 -0
  350. package/dist/chunk-XNPDZANN.cjs +238 -0
  351. package/dist/chunk-XNPDZANN.cjs.map +1 -0
  352. package/dist/{chunk-WIAQQNFU.cjs → chunk-XRVMYT5G.cjs} +106 -13
  353. package/dist/chunk-XRVMYT5G.cjs.map +1 -0
  354. package/dist/chunk-XVW5DPPP.js +429 -0
  355. package/dist/chunk-XVW5DPPP.js.map +1 -0
  356. package/dist/chunk-XXA4NZUC.js +3 -0
  357. package/dist/chunk-XXA4NZUC.js.map +1 -0
  358. package/dist/chunk-Y424YL55.js +59 -0
  359. package/dist/chunk-Y424YL55.js.map +1 -0
  360. package/dist/chunk-Y4QNLW7W.js +300 -0
  361. package/dist/chunk-Y4QNLW7W.js.map +1 -0
  362. package/dist/chunk-Y7ZJZLJY.js +2657 -0
  363. package/dist/chunk-Y7ZJZLJY.js.map +1 -0
  364. package/dist/chunk-YGS2TRMP.js +38 -0
  365. package/dist/chunk-YGS2TRMP.js.map +1 -0
  366. package/dist/chunk-YUMOM3KE.js +167 -0
  367. package/dist/chunk-YUMOM3KE.js.map +1 -0
  368. package/dist/chunk-YW2AKBLS.cjs +23 -0
  369. package/dist/chunk-YW2AKBLS.cjs.map +1 -0
  370. package/dist/chunk-ZNUMOJOI.cjs +4 -0
  371. package/dist/chunk-ZNUMOJOI.cjs.map +1 -0
  372. package/dist/chunk-ZSNFL736.cjs +306 -0
  373. package/dist/chunk-ZSNFL736.cjs.map +1 -0
  374. package/dist/components/Accordion/index.cjs +2 -2
  375. package/dist/components/Accordion/index.d.cts +6 -0
  376. package/dist/components/Accordion/index.d.ts +6 -0
  377. package/dist/components/Accordion/index.js +1 -1
  378. package/dist/components/ActionPlan/index.cjs +34 -0
  379. package/dist/components/ActionPlan/index.cjs.map +1 -0
  380. package/dist/components/ActionPlan/index.d.cts +65 -0
  381. package/dist/components/ActionPlan/index.d.ts +65 -0
  382. package/dist/components/ActionPlan/index.js +21 -0
  383. package/dist/components/ActionPlan/index.js.map +1 -0
  384. package/dist/components/ActivityFeed/index.cjs +31 -0
  385. package/dist/components/ActivityFeed/index.cjs.map +1 -0
  386. package/dist/components/ActivityFeed/index.d.cts +99 -0
  387. package/dist/components/ActivityFeed/index.d.ts +99 -0
  388. package/dist/components/ActivityFeed/index.js +18 -0
  389. package/dist/components/ActivityFeed/index.js.map +1 -0
  390. package/dist/components/Alert/index.d.cts +1 -1
  391. package/dist/components/Alert/index.d.ts +1 -1
  392. package/dist/components/AlertDialog/index.cjs +19 -5
  393. package/dist/components/AlertDialog/index.d.cts +94 -16
  394. package/dist/components/AlertDialog/index.d.ts +94 -16
  395. package/dist/components/AlertDialog/index.js +6 -4
  396. package/dist/components/AssociationList/index.cjs +29 -0
  397. package/dist/components/AssociationList/index.cjs.map +1 -0
  398. package/dist/components/AssociationList/index.d.cts +50 -0
  399. package/dist/components/AssociationList/index.d.ts +50 -0
  400. package/dist/components/AssociationList/index.js +16 -0
  401. package/dist/components/AssociationList/index.js.map +1 -0
  402. package/dist/components/AudioRecorder/index.d.cts +2 -2
  403. package/dist/components/AudioRecorder/index.d.ts +2 -2
  404. package/dist/components/Autocomplete/index.d.cts +8 -2
  405. package/dist/components/Autocomplete/index.d.ts +8 -2
  406. package/dist/components/Avatar/index.cjs +9 -7
  407. package/dist/components/Avatar/index.d.cts +46 -15
  408. package/dist/components/Avatar/index.d.ts +46 -15
  409. package/dist/components/Avatar/index.js +3 -1
  410. package/dist/components/AvatarGroup/index.cjs +20 -0
  411. package/dist/components/AvatarGroup/index.cjs.map +1 -0
  412. package/dist/components/AvatarGroup/index.d.cts +57 -0
  413. package/dist/components/AvatarGroup/index.d.ts +57 -0
  414. package/dist/components/AvatarGroup/index.js +7 -0
  415. package/dist/components/AvatarGroup/index.js.map +1 -0
  416. package/dist/components/Badge/index.cjs +3 -3
  417. package/dist/components/Badge/index.d.cts +16 -2
  418. package/dist/components/Badge/index.d.ts +16 -2
  419. package/dist/components/Badge/index.js +1 -1
  420. package/dist/components/BoardView/index.cjs +24 -0
  421. package/dist/components/BoardView/index.cjs.map +1 -0
  422. package/dist/components/BoardView/index.d.cts +41 -0
  423. package/dist/components/BoardView/index.d.ts +41 -0
  424. package/dist/components/BoardView/index.js +7 -0
  425. package/dist/components/BoardView/index.js.map +1 -0
  426. package/dist/components/Button/index.cjs +5 -3
  427. package/dist/components/Button/index.d.cts +2 -1
  428. package/dist/components/Button/index.d.ts +2 -1
  429. package/dist/components/Button/index.js +3 -1
  430. package/dist/components/CalendarHeatmap/index.cjs +18 -0
  431. package/dist/components/CalendarHeatmap/index.cjs.map +1 -0
  432. package/dist/components/CalendarHeatmap/index.d.cts +47 -0
  433. package/dist/components/CalendarHeatmap/index.d.ts +47 -0
  434. package/dist/components/CalendarHeatmap/index.js +5 -0
  435. package/dist/components/CalendarHeatmap/index.js.map +1 -0
  436. package/dist/components/CalendarView/index.cjs +24 -0
  437. package/dist/components/CalendarView/index.cjs.map +1 -0
  438. package/dist/components/CalendarView/index.d.cts +39 -0
  439. package/dist/components/CalendarView/index.d.ts +39 -0
  440. package/dist/components/CalendarView/index.js +11 -0
  441. package/dist/components/CalendarView/index.js.map +1 -0
  442. package/dist/components/Card/index.d.cts +3 -3
  443. package/dist/components/Card/index.d.ts +3 -3
  444. package/dist/components/ClampedText/index.cjs +3 -2
  445. package/dist/components/ClampedText/index.js +2 -1
  446. package/dist/components/CollabStatus/index.cjs +6 -4
  447. package/dist/components/CollabStatus/index.d.cts +11 -0
  448. package/dist/components/CollabStatus/index.d.ts +11 -0
  449. package/dist/components/CollabStatus/index.js +3 -1
  450. package/dist/components/Collapsible/index.cjs +6 -6
  451. package/dist/components/Collapsible/index.d.cts +6 -0
  452. package/dist/components/Collapsible/index.d.ts +6 -0
  453. package/dist/components/Collapsible/index.js +3 -3
  454. package/dist/components/CompletenessMeter/index.cjs +23 -0
  455. package/dist/components/CompletenessMeter/index.cjs.map +1 -0
  456. package/dist/components/CompletenessMeter/index.d.cts +52 -0
  457. package/dist/components/CompletenessMeter/index.d.ts +52 -0
  458. package/dist/components/CompletenessMeter/index.js +6 -0
  459. package/dist/components/CompletenessMeter/index.js.map +1 -0
  460. package/dist/components/CountryCodeDropdown/index.cjs +5 -5
  461. package/dist/components/CountryCodeDropdown/index.js +2 -2
  462. package/dist/components/CustomizableDashboard/index.cjs +12 -10
  463. package/dist/components/CustomizableDashboard/index.js +5 -3
  464. package/dist/components/DateInput/index.d.cts +36 -4
  465. package/dist/components/DateInput/index.d.ts +36 -4
  466. package/dist/components/Dropdown/index.cjs +11 -10
  467. package/dist/components/Dropdown/index.d.cts +2 -1
  468. package/dist/components/Dropdown/index.d.ts +2 -1
  469. package/dist/components/Dropdown/index.js +4 -3
  470. package/dist/components/EmailEditor/index.cjs +67 -0
  471. package/dist/components/EmailEditor/index.cjs.map +1 -0
  472. package/dist/components/EmailEditor/index.d.cts +347 -0
  473. package/dist/components/EmailEditor/index.d.ts +347 -0
  474. package/dist/components/EmailEditor/index.js +26 -0
  475. package/dist/components/EmailEditor/index.js.map +1 -0
  476. package/dist/components/FieldHistory/index.cjs +34 -0
  477. package/dist/components/FieldHistory/index.cjs.map +1 -0
  478. package/dist/components/FieldHistory/index.d.cts +66 -0
  479. package/dist/components/FieldHistory/index.d.ts +66 -0
  480. package/dist/components/FieldHistory/index.js +21 -0
  481. package/dist/components/FieldHistory/index.js.map +1 -0
  482. package/dist/components/FloatingWindow/index.cjs +6 -4
  483. package/dist/components/FloatingWindow/index.js +4 -2
  484. package/dist/components/GanttView/index.cjs +20 -0
  485. package/dist/components/GanttView/index.cjs.map +1 -0
  486. package/dist/components/GanttView/index.d.cts +36 -0
  487. package/dist/components/GanttView/index.d.ts +36 -0
  488. package/dist/components/GanttView/index.js +7 -0
  489. package/dist/components/GanttView/index.js.map +1 -0
  490. package/dist/components/GlossaryTooltip/index.cjs +3 -3
  491. package/dist/components/GlossaryTooltip/index.js +2 -2
  492. package/dist/components/InlineEdit/index.cjs +20 -0
  493. package/dist/components/InlineEdit/index.cjs.map +1 -0
  494. package/dist/components/InlineEdit/index.d.cts +56 -0
  495. package/dist/components/InlineEdit/index.d.ts +56 -0
  496. package/dist/components/InlineEdit/index.js +7 -0
  497. package/dist/components/InlineEdit/index.js.map +1 -0
  498. package/dist/components/KeyboardShortcutsOverlay/index.cjs +5 -5
  499. package/dist/components/KeyboardShortcutsOverlay/index.js +3 -3
  500. package/dist/components/ListView/index.cjs +24 -0
  501. package/dist/components/ListView/index.cjs.map +1 -0
  502. package/dist/components/ListView/index.d.cts +124 -0
  503. package/dist/components/ListView/index.d.ts +124 -0
  504. package/dist/components/ListView/index.js +11 -0
  505. package/dist/components/ListView/index.js.map +1 -0
  506. package/dist/components/LogoUploader/index.cjs +18 -0
  507. package/dist/components/LogoUploader/index.cjs.map +1 -0
  508. package/dist/components/LogoUploader/index.d.cts +49 -0
  509. package/dist/components/LogoUploader/index.d.ts +49 -0
  510. package/dist/components/LogoUploader/index.js +5 -0
  511. package/dist/components/LogoUploader/index.js.map +1 -0
  512. package/dist/components/Markdown/index.cjs +21 -19
  513. package/dist/components/Markdown/index.js +9 -7
  514. package/dist/components/MediaEditor/index.cjs +16 -14
  515. package/dist/components/MediaEditor/index.d.cts +91 -2
  516. package/dist/components/MediaEditor/index.d.ts +91 -2
  517. package/dist/components/MediaEditor/index.js +11 -9
  518. package/dist/components/MediaFeed/index.cjs +29 -0
  519. package/dist/components/MediaFeed/index.cjs.map +1 -0
  520. package/dist/components/MediaFeed/index.d.cts +104 -0
  521. package/dist/components/MediaFeed/index.d.ts +104 -0
  522. package/dist/components/MediaFeed/index.js +20 -0
  523. package/dist/components/MediaFeed/index.js.map +1 -0
  524. package/dist/components/MediaPlayer/index.cjs +8 -6
  525. package/dist/components/MediaPlayer/index.d.cts +19 -1
  526. package/dist/components/MediaPlayer/index.d.ts +19 -1
  527. package/dist/components/MediaPlayer/index.js +5 -3
  528. package/dist/components/MegaMenu/index.cjs +7 -5
  529. package/dist/components/MegaMenu/index.js +4 -2
  530. package/dist/components/Modal/index.cjs +10 -10
  531. package/dist/components/Modal/index.js +2 -2
  532. package/dist/components/Pagination/index.d.cts +1 -1
  533. package/dist/components/Pagination/index.d.ts +1 -1
  534. package/dist/components/PhiMask/index.cjs +18 -0
  535. package/dist/components/PhiMask/index.cjs.map +1 -0
  536. package/dist/components/PhiMask/index.d.cts +45 -0
  537. package/dist/components/PhiMask/index.d.ts +45 -0
  538. package/dist/components/PhiMask/index.js +5 -0
  539. package/dist/components/PhiMask/index.js.map +1 -0
  540. package/dist/components/Progress/index.cjs +6 -6
  541. package/dist/components/Progress/index.d.cts +8 -2
  542. package/dist/components/Progress/index.d.ts +8 -2
  543. package/dist/components/Progress/index.js +1 -1
  544. package/dist/components/PropertyList/index.cjs +25 -0
  545. package/dist/components/PropertyList/index.cjs.map +1 -0
  546. package/dist/components/PropertyList/index.d.cts +87 -0
  547. package/dist/components/PropertyList/index.d.ts +87 -0
  548. package/dist/components/PropertyList/index.js +12 -0
  549. package/dist/components/PropertyList/index.js.map +1 -0
  550. package/dist/components/Q/index.d.cts +2 -2
  551. package/dist/components/Q/index.d.ts +2 -2
  552. package/dist/components/QuickAction/index.d.cts +1 -1
  553. package/dist/components/QuickAction/index.d.ts +1 -1
  554. package/dist/components/RadialExplorer/index.cjs +7 -5
  555. package/dist/components/RadialExplorer/index.js +6 -4
  556. package/dist/components/Rating/index.cjs +28 -0
  557. package/dist/components/Rating/index.cjs.map +1 -0
  558. package/dist/components/Rating/index.d.cts +85 -0
  559. package/dist/components/Rating/index.d.ts +85 -0
  560. package/dist/components/Rating/index.js +7 -0
  561. package/dist/components/Rating/index.js.map +1 -0
  562. package/dist/components/RecordButton/index.d.cts +1 -1
  563. package/dist/components/RecordButton/index.d.ts +1 -1
  564. package/dist/components/RecordHeader/index.cjs +29 -0
  565. package/dist/components/RecordHeader/index.cjs.map +1 -0
  566. package/dist/components/RecordHeader/index.d.cts +96 -0
  567. package/dist/components/RecordHeader/index.d.ts +96 -0
  568. package/dist/components/RecordHeader/index.js +16 -0
  569. package/dist/components/RecordHeader/index.js.map +1 -0
  570. package/dist/components/RecordLayout/index.cjs +21 -0
  571. package/dist/components/RecordLayout/index.cjs.map +1 -0
  572. package/dist/components/RecordLayout/index.d.cts +40 -0
  573. package/dist/components/RecordLayout/index.d.ts +40 -0
  574. package/dist/components/RecordLayout/index.js +8 -0
  575. package/dist/components/RecordLayout/index.js.map +1 -0
  576. package/dist/components/RichTextEditor/index.cjs +11 -8
  577. package/dist/components/RichTextEditor/index.d.cts +12 -2
  578. package/dist/components/RichTextEditor/index.d.ts +12 -2
  579. package/dist/components/RichTextEditor/index.js +8 -5
  580. package/dist/components/ScrollArea/index.d.cts +1 -1
  581. package/dist/components/ScrollArea/index.d.ts +1 -1
  582. package/dist/components/SectionSpyNav/index.cjs +5 -3
  583. package/dist/components/SectionSpyNav/index.js +4 -2
  584. package/dist/components/Select/index.cjs +4 -4
  585. package/dist/components/Select/index.d.cts +2 -2
  586. package/dist/components/Select/index.d.ts +2 -2
  587. package/dist/components/Select/index.js +2 -2
  588. package/dist/components/Skeleton/index.d.cts +1 -1
  589. package/dist/components/Skeleton/index.d.ts +1 -1
  590. package/dist/components/Slider/index.d.cts +2 -2
  591. package/dist/components/Slider/index.d.ts +2 -2
  592. package/dist/components/SliderCalculator/index.cjs +4 -4
  593. package/dist/components/SliderCalculator/index.js +2 -2
  594. package/dist/components/SourceTip/index.cjs +3 -3
  595. package/dist/components/SourceTip/index.js +2 -2
  596. package/dist/components/Spinner/index.d.cts +2 -2
  597. package/dist/components/Spinner/index.d.ts +2 -2
  598. package/dist/components/SuperChat/index.cjs +1300 -713
  599. package/dist/components/SuperChat/index.cjs.map +1 -1
  600. package/dist/components/SuperChat/index.d.cts +126 -8
  601. package/dist/components/SuperChat/index.d.ts +126 -8
  602. package/dist/components/SuperChat/index.js +1404 -817
  603. package/dist/components/SuperChat/index.js.map +1 -1
  604. package/dist/components/SuperChat/plugins/index.cjs +7 -6
  605. package/dist/components/SuperChat/plugins/index.cjs.map +1 -1
  606. package/dist/components/SuperChat/plugins/index.d.cts +2 -3
  607. package/dist/components/SuperChat/plugins/index.d.ts +2 -3
  608. package/dist/components/SuperChat/plugins/index.js +6 -5
  609. package/dist/components/SuperChat/plugins/index.js.map +1 -1
  610. package/dist/components/Tabs/index.cjs +9 -7
  611. package/dist/components/Tabs/index.d.cts +12 -1
  612. package/dist/components/Tabs/index.d.ts +12 -1
  613. package/dist/components/Tabs/index.js +3 -1
  614. package/dist/components/TagEditor/index.cjs +22 -0
  615. package/dist/components/TagEditor/index.cjs.map +1 -0
  616. package/dist/components/TagEditor/index.d.cts +46 -0
  617. package/dist/components/TagEditor/index.d.ts +46 -0
  618. package/dist/components/TagEditor/index.js +9 -0
  619. package/dist/components/TagEditor/index.js.map +1 -0
  620. package/dist/components/Text/index.d.cts +3 -3
  621. package/dist/components/Text/index.d.ts +3 -3
  622. package/dist/components/Textarea/index.d.cts +2 -2
  623. package/dist/components/Textarea/index.d.ts +2 -2
  624. package/dist/components/ThemeProvider/index.cjs +9 -9
  625. package/dist/components/ThemeProvider/index.d.cts +3 -1
  626. package/dist/components/ThemeProvider/index.d.ts +3 -1
  627. package/dist/components/ThemeProvider/index.js +3 -3
  628. package/dist/components/Tooltip/index.cjs +3 -3
  629. package/dist/components/Tooltip/index.js +2 -2
  630. package/dist/components/TranscriptView/index.d.cts +85 -4
  631. package/dist/components/TranscriptView/index.d.ts +85 -4
  632. package/dist/components/UserPicker/index.cjs +24 -0
  633. package/dist/components/UserPicker/index.cjs.map +1 -0
  634. package/dist/components/UserPicker/index.d.cts +60 -0
  635. package/dist/components/UserPicker/index.d.ts +60 -0
  636. package/dist/components/UserPicker/index.js +11 -0
  637. package/dist/components/UserPicker/index.js.map +1 -0
  638. package/dist/components/VideoCard/index.cjs +4 -4
  639. package/dist/components/VideoCard/index.js +2 -2
  640. package/dist/components/ViewSet/index.cjs +25 -0
  641. package/dist/components/ViewSet/index.cjs.map +1 -0
  642. package/dist/components/ViewSet/index.d.cts +201 -0
  643. package/dist/components/ViewSet/index.d.ts +201 -0
  644. package/dist/components/ViewSet/index.js +16 -0
  645. package/dist/components/ViewSet/index.js.map +1 -0
  646. package/dist/components/ViewSwitcher/index.cjs +20 -0
  647. package/dist/components/ViewSwitcher/index.cjs.map +1 -0
  648. package/dist/components/ViewSwitcher/index.d.cts +39 -0
  649. package/dist/components/ViewSwitcher/index.d.ts +39 -0
  650. package/dist/components/ViewSwitcher/index.js +7 -0
  651. package/dist/components/ViewSwitcher/index.js.map +1 -0
  652. package/dist/datavis.cjs +6 -4
  653. package/dist/datavis.cjs.map +1 -1
  654. package/dist/datavis.d.cts +167 -13
  655. package/dist/datavis.d.ts +167 -13
  656. package/dist/datavis.js +4 -2
  657. package/dist/datavis.js.map +1 -1
  658. package/dist/deck.cjs +3360 -0
  659. package/dist/deck.cjs.map +1 -0
  660. package/dist/deck.d.cts +712 -0
  661. package/dist/deck.d.ts +712 -0
  662. package/dist/deck.js +3316 -0
  663. package/dist/deck.js.map +1 -0
  664. package/dist/esheet.cjs +19 -16
  665. package/dist/esheet.cjs.map +1 -1
  666. package/dist/esheet.d.cts +183 -1
  667. package/dist/esheet.d.ts +183 -1
  668. package/dist/esheet.js +16 -13
  669. package/dist/esheet.js.map +1 -1
  670. package/dist/globe.cjs +2 -2
  671. package/dist/globe.js +1 -1
  672. package/dist/hooks/index.cjs +94 -35
  673. package/dist/hooks/index.d.cts +680 -36
  674. package/dist/hooks/index.d.ts +680 -36
  675. package/dist/hooks/index.js +10 -7
  676. package/dist/icons-wBacj6BW.d.cts +142 -0
  677. package/dist/icons-wBacj6BW.d.ts +142 -0
  678. package/dist/index.cjs +2152 -1276
  679. package/dist/index.cjs.map +1 -1
  680. package/dist/index.d.cts +10375 -626
  681. package/dist/index.d.ts +10375 -626
  682. package/dist/index.js +740 -313
  683. package/dist/index.js.map +1 -1
  684. package/dist/kerebron.cjs +58 -19
  685. package/dist/kerebron.cjs.map +1 -1
  686. package/dist/kerebron.css +115 -0
  687. package/dist/kerebron.d.cts +37 -0
  688. package/dist/kerebron.d.ts +37 -0
  689. package/dist/kerebron.js +58 -19
  690. package/dist/kerebron.js.map +1 -1
  691. package/dist/maps.cjs +160 -0
  692. package/dist/maps.cjs.map +1 -0
  693. package/dist/maps.d.cts +42 -0
  694. package/dist/maps.d.ts +42 -0
  695. package/dist/maps.js +138 -0
  696. package/dist/maps.js.map +1 -0
  697. package/dist/motion.cjs +7 -7
  698. package/dist/motion.d.cts +186 -2
  699. package/dist/motion.d.ts +186 -2
  700. package/dist/motion.js +2 -2
  701. package/dist/org-chart.cjs +1302 -0
  702. package/dist/org-chart.cjs.map +1 -0
  703. package/dist/org-chart.d.cts +164 -0
  704. package/dist/org-chart.d.ts +164 -0
  705. package/dist/org-chart.js +1277 -0
  706. package/dist/org-chart.js.map +1 -0
  707. package/dist/q.d.cts +25 -3
  708. package/dist/q.d.ts +25 -3
  709. package/dist/styles/effects.css +133 -0
  710. package/dist/styles/init.css +22 -3
  711. package/dist/styles.css +1 -1
  712. package/dist/tailwind-preset.cjs +4 -4
  713. package/dist/tailwind-preset.js +1 -1
  714. package/dist/templates.cjs +156 -0
  715. package/dist/templates.cjs.map +1 -0
  716. package/dist/templates.d.cts +734 -0
  717. package/dist/templates.d.ts +734 -0
  718. package/dist/templates.js +11 -0
  719. package/dist/templates.js.map +1 -0
  720. package/dist/types-CDeBNZiE.d.cts +92 -0
  721. package/dist/types-CDeBNZiE.d.ts +92 -0
  722. package/dist/types-Cx1FHLq2.d.cts +548 -0
  723. package/dist/types-Cx1FHLq2.d.ts +548 -0
  724. package/dist/types-DsdZvEI1.d.cts +92 -0
  725. package/dist/types-DsdZvEI1.d.ts +92 -0
  726. package/dist/utils/index.cjs +9 -9
  727. package/dist/utils/index.d.cts +13 -2
  728. package/dist/utils/index.d.ts +13 -2
  729. package/dist/utils/index.js +1 -1
  730. package/package.json +82 -13
  731. package/dist/Animated-XmH6k8pZ.d.cts +0 -188
  732. package/dist/Animated-XmH6k8pZ.d.ts +0 -188
  733. package/dist/CsvBlock-ROJCKJDP.cjs +0 -16
  734. package/dist/CsvBlock-UWPMTLE2.js +0 -7
  735. package/dist/HtmlPreviewBlock-DWFN6EUB.cjs +0 -16
  736. package/dist/HtmlPreviewBlock-ME5U3XNS.js +0 -7
  737. package/dist/MedicationEditor-Bp4NLy7y.d.cts +0 -352
  738. package/dist/MedicationEditor-Bp4NLy7y.d.ts +0 -352
  739. package/dist/MermaidBlock-2B6CPD6Y.js +0 -7
  740. package/dist/MermaidBlock-D2UC5M55.cjs +0 -16
  741. package/dist/SurveyBlock-4CD4AYMJ.cjs +0 -16
  742. package/dist/SurveyBlock-4DO62RBT.js +0 -7
  743. package/dist/chunk-22CYDCXA.js.map +0 -1
  744. package/dist/chunk-2YCERQWC.js.map +0 -1
  745. package/dist/chunk-3T7QGLNB.js.map +0 -1
  746. package/dist/chunk-5JJ2DAE4.js.map +0 -1
  747. package/dist/chunk-6HFFWEM3.cjs +0 -22
  748. package/dist/chunk-6HFFWEM3.cjs.map +0 -1
  749. package/dist/chunk-7ZDPD5ZX.cjs.map +0 -1
  750. package/dist/chunk-7ZVTLTJF.js +0 -109
  751. package/dist/chunk-7ZVTLTJF.js.map +0 -1
  752. package/dist/chunk-ACCAXVOG.js.map +0 -1
  753. package/dist/chunk-BMSG4NBH.js +0 -56
  754. package/dist/chunk-BMSG4NBH.js.map +0 -1
  755. package/dist/chunk-CEQJGUAS.js.map +0 -1
  756. package/dist/chunk-DVOQ3JNO.js.map +0 -1
  757. package/dist/chunk-E4IBHYJ7.cjs +0 -80
  758. package/dist/chunk-E4IBHYJ7.cjs.map +0 -1
  759. package/dist/chunk-ELPW32ZI.cjs.map +0 -1
  760. package/dist/chunk-GD7EBGC4.cjs.map +0 -1
  761. package/dist/chunk-GOALNQZ2.js.map +0 -1
  762. package/dist/chunk-HB7C7NB5.js +0 -20
  763. package/dist/chunk-HB7C7NB5.js.map +0 -1
  764. package/dist/chunk-HZ4MBUC3.js.map +0 -1
  765. package/dist/chunk-JEIW7BSV.cjs.map +0 -1
  766. package/dist/chunk-JHULS3EC.js +0 -130
  767. package/dist/chunk-JHULS3EC.js.map +0 -1
  768. package/dist/chunk-JI244Y7C.js.map +0 -1
  769. package/dist/chunk-JYZW2PZS.cjs.map +0 -1
  770. package/dist/chunk-KRU6IGV7.js.map +0 -1
  771. package/dist/chunk-NV2CWBI2.cjs.map +0 -1
  772. package/dist/chunk-OE5CKRUC.js.map +0 -1
  773. package/dist/chunk-P2CA3XGI.js.map +0 -1
  774. package/dist/chunk-P7UMS4E6.cjs.map +0 -1
  775. package/dist/chunk-SQHMGT4W.js.map +0 -1
  776. package/dist/chunk-SVSHA7XV.js.map +0 -1
  777. package/dist/chunk-U42F3HLE.cjs.map +0 -1
  778. package/dist/chunk-VKELAMAZ.js.map +0 -1
  779. package/dist/chunk-VNYW4C4J.cjs.map +0 -1
  780. package/dist/chunk-VOKVG3ER.js +0 -78
  781. package/dist/chunk-VOKVG3ER.js.map +0 -1
  782. package/dist/chunk-VPIYTQCV.cjs.map +0 -1
  783. package/dist/chunk-VPWJCJCX.cjs.map +0 -1
  784. package/dist/chunk-VROIMIHB.cjs.map +0 -1
  785. package/dist/chunk-WIAQQNFU.cjs.map +0 -1
  786. package/dist/chunk-WNAA6CLE.cjs +0 -143
  787. package/dist/chunk-WNAA6CLE.cjs.map +0 -1
  788. package/dist/chunk-WNJRS7Y7.cjs.map +0 -1
  789. package/dist/chunk-X4LBUPJO.cjs.map +0 -1
  790. package/dist/chunk-X4XPNTCZ.cjs.map +0 -1
  791. package/dist/chunk-XCP454Q6.js.map +0 -1
  792. package/dist/chunk-XEAT7XJG.cjs.map +0 -1
  793. package/dist/chunk-YVL3XATO.cjs +0 -79
  794. package/dist/chunk-YVL3XATO.cjs.map +0 -1
  795. package/dist/chunk-YVPC65ZJ.cjs.map +0 -1
  796. package/dist/html-MdxqSzjD.d.cts +0 -13
  797. package/dist/html-MdxqSzjD.d.ts +0 -13
  798. package/dist/orderRows-BUJYgSc7.d.cts +0 -221
  799. package/dist/orderRows-BUJYgSc7.d.ts +0 -221
  800. package/dist/transcript-Cg7uSW-C.d.cts +0 -84
  801. package/dist/transcript-Cg7uSW-C.d.ts +0 -84
  802. package/dist/types-B97JNRNQ.d.cts +0 -251
  803. package/dist/types-CnPEwzlp.d.cts +0 -254
  804. package/dist/types-CnPEwzlp.d.ts +0 -254
  805. package/dist/types-gZXrfLj6.d.ts +0 -251
  806. package/dist/useAnchoredPosition-CKwLSQW8.d.cts +0 -76
  807. package/dist/useAnchoredPosition-CKwLSQW8.d.ts +0 -76
  808. package/dist/useTheme-B9SWu6ui.d.cts +0 -24
  809. package/dist/useTheme-B9SWu6ui.d.ts +0 -24
  810. package/dist/useTranscriptEdits-CGzlemHT.d.cts +0 -182
  811. package/dist/useTranscriptEdits-D32bLs0l.d.ts +0 -182
@@ -0,0 +1,525 @@
1
+ import { groupByDay, formatDayLabel, withLocale } from './chunk-YGS2TRMP.js';
2
+ import { usePendingOverrides } from './chunk-FTEZNCRI.js';
3
+ import { RecordState } from './chunk-Y424YL55.js';
4
+ import { Avatar } from './chunk-TI3TQQ7F.js';
5
+ import { accentClasses, toDateTime } from './chunk-3YBS4WUQ.js';
6
+ import { useLiveAnnouncement } from './chunk-HNXLLDPN.js';
7
+ import { usePrefersReducedMotion } from './chunk-XDU65GLW.js';
8
+ import { Button } from './chunk-WFBUBT54.js';
9
+ import { cn } from './chunk-TQONQSJO.js';
10
+ import * as React from 'react';
11
+ import { DateTime } from 'luxon';
12
+ import { Rows4, Pin } from 'lucide-react';
13
+ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
14
+
15
+ var defaultActivityFeedLabels = {
16
+ loading: "Loading activity",
17
+ empty: "No activity yet",
18
+ noMatches: "No activity matches these filters",
19
+ error: "Could not load activity",
20
+ retry: "Try again",
21
+ today: "Today",
22
+ yesterday: "Yesterday",
23
+ undated: "Undated",
24
+ pinned: "Pinned",
25
+ filters: "Filter by category",
26
+ allCategories: "All",
27
+ compact: "Compact view",
28
+ pin: "Pin",
29
+ loadMore: "Load more",
30
+ resultCount: (count) => count === 1 ? "1 activity shown" : `${count} activities shown`
31
+ };
32
+ function readPrefs(key) {
33
+ try {
34
+ const raw = JSON.parse(window.localStorage.getItem(key) ?? "{}");
35
+ if (!raw || typeof raw !== "object") return {};
36
+ const { categories, density } = raw;
37
+ return {
38
+ categories: Array.isArray(categories) && categories.every((c) => typeof c === "string") ? categories : void 0,
39
+ density: density === "compact" || density === "comfortable" ? density : void 0
40
+ };
41
+ } catch {
42
+ return {};
43
+ }
44
+ }
45
+ function writePrefs(key, prefs) {
46
+ try {
47
+ window.localStorage.setItem(key, JSON.stringify(prefs));
48
+ } catch {
49
+ }
50
+ }
51
+ var chipClasses = "inline-flex items-center gap-1.5 rounded-full border px-3 py-1 text-xs font-medium transition-colors motion-reduce:transition-none focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring";
52
+ function ActivityFeedInner({
53
+ items,
54
+ getId,
55
+ getDate,
56
+ getCategory,
57
+ getTitle,
58
+ getDescription,
59
+ getActor,
60
+ categories = [],
61
+ loading = false,
62
+ error = null,
63
+ onRetry,
64
+ locale,
65
+ timeZone = "local",
66
+ now,
67
+ pinnedIds,
68
+ onTogglePin,
69
+ onOpen,
70
+ getHref,
71
+ highlightedId = null,
72
+ hasMore = false,
73
+ onLoadMore,
74
+ defaultCategories,
75
+ defaultDensity = "comfortable",
76
+ storageKey,
77
+ renderItem,
78
+ renderItemMeta,
79
+ renderDaySummary,
80
+ emptyState,
81
+ labels,
82
+ classNames,
83
+ headingLevel: Heading = "h3",
84
+ className,
85
+ ...rest
86
+ }, ref) {
87
+ const text = { ...defaultActivityFeedLabels, ...labels };
88
+ const baseId = React.useId();
89
+ const reducedMotion = usePrefersReducedMotion();
90
+ const [announcement, announce] = useLiveAnnouncement();
91
+ const [pinOverrides, runPin] = usePendingOverrides();
92
+ const [loadingMore, setLoadingMore] = React.useState(false);
93
+ const [selected, setSelected] = React.useState(
94
+ defaultCategories ?? []
95
+ );
96
+ const [density, setDensity] = React.useState(defaultDensity);
97
+ const rowRefs = React.useRef(/* @__PURE__ */ new Map());
98
+ React.useEffect(() => {
99
+ if (!storageKey) return;
100
+ const stored = readPrefs(storageKey);
101
+ if (stored.categories) setSelected(stored.categories);
102
+ if (stored.density) setDensity(stored.density);
103
+ }, [storageKey]);
104
+ React.useEffect(() => {
105
+ if (!highlightedId) return;
106
+ rowRefs.current.get(highlightedId)?.scrollIntoView?.({
107
+ block: "center",
108
+ behavior: reducedMotion ? "auto" : "smooth"
109
+ });
110
+ }, [highlightedId, loading, reducedMotion]);
111
+ const categoryById = React.useMemo(
112
+ () => new Map(categories.map((c) => [c.id, c])),
113
+ [categories]
114
+ );
115
+ const effectiveFilter = React.useMemo(
116
+ () => selected.filter((id) => categoryById.has(id)),
117
+ [selected, categoryById]
118
+ );
119
+ const pinnedSet = React.useMemo(() => new Set(pinnedIds), [pinnedIds]);
120
+ const isPinned = (id) => pinOverrides.get(id) ?? pinnedSet.has(id);
121
+ const matches = (item, filter) => filter.length === 0 || filter.includes(getCategory?.(item) ?? "");
122
+ const updateFilters = (next) => {
123
+ setSelected(next);
124
+ if (storageKey) writePrefs(storageKey, { categories: [...next], density });
125
+ announce(text.resultCount(items.filter((i) => matches(i, next)).length));
126
+ };
127
+ const toggleDensity = () => {
128
+ const next = density === "compact" ? "comfortable" : "compact";
129
+ setDensity(next);
130
+ if (storageKey)
131
+ writePrefs(storageKey, { categories: [...selected], density: next });
132
+ };
133
+ const loadMore = async () => {
134
+ if (!onLoadMore) return;
135
+ setLoadingMore(true);
136
+ try {
137
+ await onLoadMore();
138
+ } catch {
139
+ } finally {
140
+ setLoadingMore(false);
141
+ }
142
+ };
143
+ const zone = timeZone;
144
+ const reference = now ?? /* @__PURE__ */ new Date();
145
+ const compact = density === "compact";
146
+ const visible = items.filter((item) => matches(item, effectiveFilter));
147
+ const pinnedItems = groupByDay(
148
+ visible.filter((item) => isPinned(getId(item))),
149
+ getDate,
150
+ zone
151
+ ).flatMap((g) => g.items);
152
+ const days = groupByDay(
153
+ visible.filter((item) => !isPinned(getId(item))),
154
+ getDate,
155
+ zone
156
+ );
157
+ let row = 0;
158
+ const renderRow = (item) => {
159
+ const id = getId(item);
160
+ const pinned = isPinned(id);
161
+ const pending = pinOverrides.has(id);
162
+ const highlighted = id === highlightedId;
163
+ const category = categoryById.get(getCategory?.(item) ?? "");
164
+ const titleId = `${baseId}-title-${row++}`;
165
+ const accent = accentClasses[category?.color ?? "neutral"];
166
+ const Icon = category?.icon;
167
+ const dt = toDateTime(getDate(item), zone);
168
+ const localDt = dt && withLocale(dt, locale);
169
+ const actor = getActor?.(item);
170
+ const description = compact ? void 0 : getDescription?.(item);
171
+ const body2 = renderItem?.(item, { density, pinned, category }) ?? /* @__PURE__ */ jsxs(Fragment, { children: [
172
+ /* @__PURE__ */ jsx(
173
+ "span",
174
+ {
175
+ "aria-hidden": true,
176
+ className: cn(
177
+ "flex shrink-0 items-center justify-center rounded-full",
178
+ compact ? "size-5" : "mt-0.5 size-7",
179
+ accent.tint
180
+ ),
181
+ children: Icon ? /* @__PURE__ */ jsx(Icon, { className: "text-foreground size-3.5" }) : /* @__PURE__ */ jsx("span", { className: cn("size-2 rounded-full", accent.marker) })
182
+ }
183
+ ),
184
+ /* @__PURE__ */ jsxs("span", { className: "min-w-0 flex-1", children: [
185
+ /* @__PURE__ */ jsx(
186
+ "span",
187
+ {
188
+ id: titleId,
189
+ className: "text-foreground block truncate text-sm font-medium",
190
+ children: getTitle?.(item) ?? category?.label ?? id
191
+ }
192
+ ),
193
+ description && /* @__PURE__ */ jsx("span", { className: "text-muted-foreground line-clamp-2 block text-sm", children: description }),
194
+ /* @__PURE__ */ jsxs("span", { className: "text-muted-foreground mt-0.5 flex flex-wrap items-center gap-x-2 gap-y-1 text-xs", children: [
195
+ actor && /* @__PURE__ */ jsxs("span", { className: "inline-flex items-center gap-1.5", children: [
196
+ !compact && /* @__PURE__ */ jsx(
197
+ Avatar,
198
+ {
199
+ size: "xs",
200
+ name: actor.name,
201
+ src: actor.avatarUrl,
202
+ alt: "",
203
+ "aria-hidden": true
204
+ }
205
+ ),
206
+ actor.name
207
+ ] }),
208
+ category && /* @__PURE__ */ jsx("span", { children: category.label }),
209
+ localDt && /* @__PURE__ */ jsx(
210
+ "time",
211
+ {
212
+ dateTime: localDt.toISO() ?? void 0,
213
+ title: localDt.toLocaleString(DateTime.DATETIME_MED),
214
+ children: localDt.toLocaleString(DateTime.TIME_SIMPLE)
215
+ }
216
+ ),
217
+ renderItemMeta?.(item)
218
+ ] })
219
+ ] })
220
+ ] });
221
+ const mainClasses = "flex min-w-0 flex-1 items-start gap-3 rounded-md text-start focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring";
222
+ const href = getHref?.(id, item);
223
+ let main;
224
+ if (href) {
225
+ main = /* @__PURE__ */ jsx(
226
+ "a",
227
+ {
228
+ href,
229
+ className: mainClasses,
230
+ onClick: (event) => {
231
+ if (!onOpen || event.metaKey || event.ctrlKey || event.shiftKey || event.button !== 0)
232
+ return;
233
+ event.preventDefault();
234
+ onOpen(id, item);
235
+ },
236
+ onKeyDown: (event) => {
237
+ if (event.key !== " ") return;
238
+ event.preventDefault();
239
+ event.currentTarget.click();
240
+ },
241
+ children: body2
242
+ }
243
+ );
244
+ } else if (onOpen) {
245
+ main = /* @__PURE__ */ jsx(
246
+ "button",
247
+ {
248
+ type: "button",
249
+ className: mainClasses,
250
+ onClick: () => onOpen(id, item),
251
+ children: body2
252
+ }
253
+ );
254
+ } else {
255
+ main = /* @__PURE__ */ jsx("div", { className: mainClasses, children: body2 });
256
+ }
257
+ return /* @__PURE__ */ jsxs(
258
+ "li",
259
+ {
260
+ ref: (el) => {
261
+ if (el) rowRefs.current.set(id, el);
262
+ else rowRefs.current.delete(id);
263
+ },
264
+ "data-slot": "activity-feed-item",
265
+ "data-highlighted": highlighted || void 0,
266
+ "aria-busy": pending || void 0,
267
+ className: cn(
268
+ "flex items-start gap-2 px-3",
269
+ compact ? "py-1.5" : "py-3",
270
+ highlighted && "ring-primary-500 bg-primary-500/10 ring-2 ring-inset",
271
+ classNames?.item,
272
+ highlighted && classNames?.highlightedItem
273
+ ),
274
+ children: [
275
+ main,
276
+ onTogglePin && renderItem && /* @__PURE__ */ jsx("span", { id: titleId, hidden: true, children: getTitle?.(item) ?? category?.label ?? id }),
277
+ onTogglePin && /* @__PURE__ */ jsx(
278
+ "button",
279
+ {
280
+ type: "button",
281
+ "aria-pressed": pinned,
282
+ "aria-label": text.pin,
283
+ "aria-describedby": titleId,
284
+ disabled: pending,
285
+ title: text.pin,
286
+ onClick: () => void runPin(id, !pinned, () => onTogglePin(id, !pinned)),
287
+ className: cn(
288
+ "text-muted-foreground hover:bg-muted hover:text-foreground shrink-0 rounded-md p-1.5",
289
+ "focus-visible:ring-ring focus-visible:ring-2 focus-visible:outline-none",
290
+ "disabled:opacity-50",
291
+ pinned && "text-foreground"
292
+ ),
293
+ children: /* @__PURE__ */ jsx(
294
+ Pin,
295
+ {
296
+ className: cn("size-4", pinned && "fill-current"),
297
+ "aria-hidden": true
298
+ }
299
+ )
300
+ }
301
+ )
302
+ ]
303
+ },
304
+ id
305
+ );
306
+ };
307
+ const section = (key, label, sectionItems, summary) => {
308
+ const headingId = `${baseId}-day-${key || "none"}`;
309
+ return /* @__PURE__ */ jsxs(
310
+ "section",
311
+ {
312
+ "aria-labelledby": headingId,
313
+ "data-slot": "activity-feed-section",
314
+ className: classNames?.section,
315
+ children: [
316
+ /* @__PURE__ */ jsx(
317
+ Heading,
318
+ {
319
+ id: headingId,
320
+ "data-slot": "activity-feed-day-header",
321
+ className: cn(
322
+ "border-border bg-card text-muted-foreground sticky top-0 z-10 flex items-center gap-1.5 border-b px-3 py-2 text-xs font-semibold tracking-wide uppercase",
323
+ classNames?.dayHeader
324
+ ),
325
+ children: label
326
+ }
327
+ ),
328
+ summary,
329
+ /* @__PURE__ */ jsx("ul", { className: "divide-border divide-y", children: sectionItems.map(renderRow) })
330
+ ]
331
+ },
332
+ key
333
+ );
334
+ };
335
+ let body;
336
+ if (error) {
337
+ body = /* @__PURE__ */ jsx(
338
+ RecordState,
339
+ {
340
+ kind: "error",
341
+ slot: "activity-feed-state",
342
+ message: text.error,
343
+ retryLabel: text.retry,
344
+ onRetry,
345
+ className: classNames?.state
346
+ }
347
+ );
348
+ } else if (loading) {
349
+ body = /* @__PURE__ */ jsx(
350
+ RecordState,
351
+ {
352
+ kind: "loading",
353
+ slot: "activity-feed-state",
354
+ message: text.loading,
355
+ className: classNames?.state
356
+ }
357
+ );
358
+ } else if (items.length === 0) {
359
+ body = emptyState ?? /* @__PURE__ */ jsx(
360
+ RecordState,
361
+ {
362
+ kind: "empty",
363
+ slot: "activity-feed-state",
364
+ message: text.empty,
365
+ className: classNames?.state
366
+ }
367
+ );
368
+ } else if (visible.length === 0) {
369
+ body = /* @__PURE__ */ jsx(
370
+ RecordState,
371
+ {
372
+ kind: "empty",
373
+ slot: "activity-feed-state",
374
+ message: text.noMatches,
375
+ className: classNames?.state,
376
+ children: /* @__PURE__ */ jsx(Button, { variant: "ghost", size: "sm", onClick: () => updateFilters([]), children: text.allCategories })
377
+ }
378
+ );
379
+ } else {
380
+ body = /* @__PURE__ */ jsxs(Fragment, { children: [
381
+ pinnedItems.length > 0 && section(
382
+ "pinned",
383
+ /* @__PURE__ */ jsxs(Fragment, { children: [
384
+ /* @__PURE__ */ jsx(Pin, { className: "size-3.5", "aria-hidden": true }),
385
+ text.pinned
386
+ ] }),
387
+ pinnedItems
388
+ ),
389
+ days.map(
390
+ (day) => section(
391
+ day.key,
392
+ formatDayLabel(day.key, {
393
+ now: reference,
394
+ zone,
395
+ locale,
396
+ today: text.today,
397
+ yesterday: text.yesterday,
398
+ undated: text.undated
399
+ }),
400
+ day.items,
401
+ renderDaySummary?.(day.key, day.items)
402
+ )
403
+ ),
404
+ hasMore && onLoadMore && /* @__PURE__ */ jsx(
405
+ "div",
406
+ {
407
+ "data-slot": "activity-feed-load-more",
408
+ className: cn("border-border border-t p-3", classNames?.loadMore),
409
+ children: /* @__PURE__ */ jsx(
410
+ Button,
411
+ {
412
+ variant: "ghost",
413
+ size: "sm",
414
+ fullWidth: true,
415
+ isLoading: loadingMore,
416
+ onClick: () => void loadMore(),
417
+ children: text.loadMore
418
+ }
419
+ )
420
+ }
421
+ )
422
+ ] });
423
+ }
424
+ return /* @__PURE__ */ jsxs(
425
+ "div",
426
+ {
427
+ ref,
428
+ "data-slot": "activity-feed",
429
+ className: cn(
430
+ "border-border bg-card overflow-hidden rounded-lg border",
431
+ className
432
+ ),
433
+ ...rest,
434
+ children: [
435
+ (categories.length > 0 || items.length > 0) && /* @__PURE__ */ jsxs(
436
+ "div",
437
+ {
438
+ "data-slot": "activity-feed-toolbar",
439
+ className: cn(
440
+ "border-border flex items-center gap-2 border-b px-3 py-2",
441
+ classNames?.toolbar
442
+ ),
443
+ children: [
444
+ categories.length > 0 && /* @__PURE__ */ jsxs(
445
+ "div",
446
+ {
447
+ role: "group",
448
+ "aria-label": text.filters,
449
+ className: "flex min-w-0 flex-1 flex-wrap gap-1.5",
450
+ children: [
451
+ /* @__PURE__ */ jsx(
452
+ "button",
453
+ {
454
+ type: "button",
455
+ "aria-pressed": effectiveFilter.length === 0,
456
+ onClick: () => updateFilters([]),
457
+ "data-slot": "activity-feed-filter",
458
+ className: cn(
459
+ chipClasses,
460
+ effectiveFilter.length === 0 ? "border-primary-500/40 bg-primary-500/10 text-foreground" : "border-border text-muted-foreground hover:bg-muted",
461
+ classNames?.filter
462
+ ),
463
+ children: text.allCategories
464
+ }
465
+ ),
466
+ categories.map((category) => {
467
+ const active = effectiveFilter.includes(category.id);
468
+ const accent = accentClasses[category.color ?? "primary"];
469
+ const Icon = category.icon;
470
+ return /* @__PURE__ */ jsxs(
471
+ "button",
472
+ {
473
+ type: "button",
474
+ "aria-pressed": active,
475
+ onClick: () => updateFilters(
476
+ active ? effectiveFilter.filter((c) => c !== category.id) : [...effectiveFilter, category.id]
477
+ ),
478
+ "data-slot": "activity-feed-filter",
479
+ className: cn(
480
+ chipClasses,
481
+ active ? cn(accent.tint, accent.border, "text-foreground") : "border-border text-muted-foreground hover:bg-muted",
482
+ classNames?.filter
483
+ ),
484
+ children: [
485
+ Icon && /* @__PURE__ */ jsx(Icon, { className: "size-3.5", "aria-hidden": true }),
486
+ category.label
487
+ ]
488
+ },
489
+ category.id
490
+ );
491
+ })
492
+ ]
493
+ }
494
+ ),
495
+ /* @__PURE__ */ jsx(
496
+ "button",
497
+ {
498
+ type: "button",
499
+ "aria-pressed": compact,
500
+ "aria-label": text.compact,
501
+ title: text.compact,
502
+ onClick: toggleDensity,
503
+ className: cn(
504
+ "text-muted-foreground hover:bg-muted ms-auto shrink-0 rounded-md p-1.5",
505
+ "focus-visible:ring-ring focus-visible:ring-2 focus-visible:outline-none",
506
+ compact && "bg-muted text-foreground"
507
+ ),
508
+ children: /* @__PURE__ */ jsx(Rows4, { className: "size-4", "aria-hidden": true })
509
+ }
510
+ )
511
+ ]
512
+ }
513
+ ),
514
+ /* @__PURE__ */ jsx("div", { "aria-live": "polite", className: "sr-only", children: announcement }),
515
+ body
516
+ ]
517
+ }
518
+ );
519
+ }
520
+ var ActivityFeed = React.forwardRef(ActivityFeedInner);
521
+ ActivityFeed.displayName = "ActivityFeed";
522
+
523
+ export { ActivityFeed, defaultActivityFeedLabels };
524
+ //# sourceMappingURL=chunk-X5JOEZVR.js.map
525
+ //# sourceMappingURL=chunk-X5JOEZVR.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/ActivityFeed/ActivityFeed.tsx"],"names":["body"],"mappings":"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","file":"chunk-X5JOEZVR.js","sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { DateTime } from 'luxon';\nimport { Pin, Rows4, type LucideIcon } from 'lucide-react';\nimport { cn } from '../../utils/cn';\nimport { Avatar } from '../Avatar';\nimport { Button } from '../Button';\nimport { useLiveAnnouncement } from '../../hooks/useLiveAnnouncement';\nimport { usePrefersReducedMotion } from '../../hooks/usePrefersReducedMotion';\nimport { accentClasses, toDateTime, type Accent } from '../../views/types';\nimport { formatDayLabel, groupByDay, withLocale } from './dayGroups';\nimport { RecordState } from './RecordState';\nimport { usePendingOverrides } from './usePendingOverrides';\n\n// =============================================================================\n// Types\n// =============================================================================\n\nexport type ActivityFeedDensity = 'comfortable' | 'compact';\n\nexport interface ActivityFeedCategory {\n id: string;\n label: string;\n icon?: LucideIcon;\n /** Token name, resolved to `--mieweb-*` colours. */\n color?: Accent;\n}\n\nexport interface ActivityFeedActor {\n name: string;\n avatarUrl?: string;\n}\n\nexport interface ActivityFeedLabels {\n loading: string;\n empty: string;\n /** Shown when items exist but the active filters hide all of them. */\n noMatches: string;\n error: string;\n retry: string;\n today: string;\n yesterday: string;\n undated: string;\n pinned: string;\n /** Accessible name of the category filter group. */\n filters: string;\n /** The chip that clears every filter. */\n allCategories: string;\n compact: string;\n pin: string;\n loadMore: string;\n /** Announced politely after a filter change. */\n resultCount: (count: number) => string;\n}\n\nexport const defaultActivityFeedLabels: ActivityFeedLabels = {\n loading: 'Loading activity',\n empty: 'No activity yet',\n noMatches: 'No activity matches these filters',\n error: 'Could not load activity',\n retry: 'Try again',\n today: 'Today',\n yesterday: 'Yesterday',\n undated: 'Undated',\n pinned: 'Pinned',\n filters: 'Filter by category',\n allCategories: 'All',\n compact: 'Compact view',\n pin: 'Pin',\n loadMore: 'Load more',\n resultCount: (count) =>\n count === 1 ? '1 activity shown' : `${count} activities shown`,\n};\n\nexport type ActivityFeedSlot =\n | 'toolbar'\n | 'filter'\n | 'section'\n | 'dayHeader'\n | 'item'\n | 'highlightedItem'\n | 'state'\n | 'loadMore';\n\nexport interface ActivityFeedItemContext {\n density: ActivityFeedDensity;\n pinned: boolean;\n category?: ActivityFeedCategory;\n}\n\nexport interface ActivityFeedProps<T> extends Omit<\n React.HTMLAttributes<HTMLDivElement>,\n 'children'\n> {\n items: T[];\n getId: (item: T) => string;\n /** ISO string or `Date`. Date-only strings are wall dates in `timeZone`. */\n getDate: (item: T) => Date | string | null | undefined;\n /** Matched against `categories[].id`. */\n getCategory?: (item: T) => string | undefined;\n getTitle?: (item: T) => string | undefined;\n getDescription?: (item: T) => string | undefined;\n getActor?: (item: T) => ActivityFeedActor | undefined;\n /** Filter chips, icons and colours, in display order. */\n categories?: readonly ActivityFeedCategory[];\n loading?: boolean;\n error?: Error | null;\n onRetry?: () => void;\n /** BCP 47 locale for day headers and times. Defaults to the runtime's. */\n locale?: string;\n /** IANA zone that decides which day an item falls on. Defaults to local. */\n timeZone?: string;\n /** Pins \"today\" so stories and tests stay deterministic. */\n now?: Date;\n pinnedIds?: readonly string[];\n /** Receives the requested state; the row moves optimistically and restores on rejection. */\n onTogglePin?: (id: string, pinned: boolean) => void | Promise<void>;\n onOpen?: (id: string, item: T) => void;\n getHref?: (id: string, item: T) => string;\n /** Scrolls this row into view and highlights it — for deep links. */\n highlightedId?: string | null;\n hasMore?: boolean;\n /** The button shows pending until the returned promise settles. */\n onLoadMore?: () => void | Promise<void>;\n defaultCategories?: readonly string[];\n defaultDensity?: ActivityFeedDensity;\n /** Persists the selected categories and density in `localStorage` under this key. */\n storageKey?: string;\n /** Replaces the built-in row body. Pinning and opening still wrap it. */\n renderItem?: (item: T, context: ActivityFeedItemContext) => React.ReactNode;\n /** Extra content on the row's meta line (badges, durations, sentiment). */\n renderItemMeta?: (item: T) => React.ReactNode;\n /** Rendered under each day header, e.g. a roll-up of that day's calls. */\n renderDaySummary?: (dayKey: string, items: T[]) => React.ReactNode;\n emptyState?: React.ReactNode;\n labels?: Partial<ActivityFeedLabels>;\n classNames?: Partial<Record<ActivityFeedSlot, string>>;\n headingLevel?: 'h2' | 'h3' | 'h4';\n}\n\ninterface StoredPrefs {\n categories?: string[];\n density?: ActivityFeedDensity;\n}\n\nfunction readPrefs(key: string): StoredPrefs {\n try {\n const raw: unknown = JSON.parse(window.localStorage.getItem(key) ?? '{}');\n if (!raw || typeof raw !== 'object') return {};\n const { categories, density } = raw as Record<string, unknown>;\n return {\n categories:\n Array.isArray(categories) &&\n categories.every((c) => typeof c === 'string')\n ? categories\n : undefined,\n density:\n density === 'compact' || density === 'comfortable'\n ? density\n : undefined,\n };\n } catch {\n return {};\n }\n}\n\nfunction writePrefs(key: string, prefs: StoredPrefs) {\n try {\n window.localStorage.setItem(key, JSON.stringify(prefs));\n } catch {\n // Storage full or blocked: the preference just doesn't persist.\n }\n}\n\nconst chipClasses =\n 'inline-flex items-center gap-1.5 rounded-full border px-3 py-1 text-xs font-medium transition-colors motion-reduce:transition-none focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring';\n\n// =============================================================================\n// Component\n// =============================================================================\n\nfunction ActivityFeedInner<T>(\n {\n items,\n getId,\n getDate,\n getCategory,\n getTitle,\n getDescription,\n getActor,\n categories = [],\n loading = false,\n error = null,\n onRetry,\n locale,\n timeZone = 'local',\n now,\n pinnedIds,\n onTogglePin,\n onOpen,\n getHref,\n highlightedId = null,\n hasMore = false,\n onLoadMore,\n defaultCategories,\n defaultDensity = 'comfortable',\n storageKey,\n renderItem,\n renderItemMeta,\n renderDaySummary,\n emptyState,\n labels,\n classNames,\n headingLevel: Heading = 'h3',\n className,\n ...rest\n }: ActivityFeedProps<T>,\n ref: React.ForwardedRef<HTMLDivElement>\n) {\n const text = { ...defaultActivityFeedLabels, ...labels };\n const baseId = React.useId();\n const reducedMotion = usePrefersReducedMotion();\n const [announcement, announce] = useLiveAnnouncement();\n const [pinOverrides, runPin] = usePendingOverrides<boolean>();\n const [loadingMore, setLoadingMore] = React.useState(false);\n const [selected, setSelected] = React.useState<readonly string[]>(\n defaultCategories ?? []\n );\n const [density, setDensity] =\n React.useState<ActivityFeedDensity>(defaultDensity);\n const rowRefs = React.useRef(new Map<string, HTMLElement>());\n\n // Read after mount so server and first client render agree.\n React.useEffect(() => {\n if (!storageKey) return;\n const stored = readPrefs(storageKey);\n if (stored.categories) setSelected(stored.categories);\n if (stored.density) setDensity(stored.density);\n }, [storageKey]);\n\n React.useEffect(() => {\n if (!highlightedId) return;\n rowRefs.current.get(highlightedId)?.scrollIntoView?.({\n block: 'center',\n behavior: reducedMotion ? 'auto' : 'smooth',\n });\n }, [highlightedId, loading, reducedMotion]);\n\n const categoryById = React.useMemo(\n () => new Map(categories.map((c) => [c.id, c])),\n [categories]\n );\n // Persisted IDs may reference renamed/removed categories; applying them\n // verbatim would filter out everything with no chip shown as active.\n const effectiveFilter = React.useMemo(\n () => selected.filter((id) => categoryById.has(id)),\n [selected, categoryById]\n );\n const pinnedSet = React.useMemo(() => new Set(pinnedIds), [pinnedIds]);\n const isPinned = (id: string) => pinOverrides.get(id) ?? pinnedSet.has(id);\n const matches = (item: T, filter: readonly string[]) =>\n filter.length === 0 || filter.includes(getCategory?.(item) ?? '');\n\n const updateFilters = (next: readonly string[]) => {\n setSelected(next);\n if (storageKey) writePrefs(storageKey, { categories: [...next], density });\n announce(text.resultCount(items.filter((i) => matches(i, next)).length));\n };\n\n const toggleDensity = () => {\n const next = density === 'compact' ? 'comfortable' : 'compact';\n setDensity(next);\n if (storageKey)\n writePrefs(storageKey, { categories: [...selected], density: next });\n };\n\n const loadMore = async () => {\n if (!onLoadMore) return;\n setLoadingMore(true);\n try {\n await onLoadMore();\n } catch {\n // The caller reports the failure; the button becomes usable again.\n } finally {\n setLoadingMore(false);\n }\n };\n\n const zone = timeZone;\n const reference = now ?? new Date();\n const compact = density === 'compact';\n const visible = items.filter((item) => matches(item, effectiveFilter));\n const pinnedItems = groupByDay(\n visible.filter((item) => isPinned(getId(item))),\n getDate,\n zone\n ).flatMap((g) => g.items);\n const days = groupByDay(\n visible.filter((item) => !isPinned(getId(item))),\n getDate,\n zone\n );\n\n let row = 0;\n const renderRow = (item: T) => {\n const id = getId(item);\n const pinned = isPinned(id);\n const pending = pinOverrides.has(id);\n const highlighted = id === highlightedId;\n const category = categoryById.get(getCategory?.(item) ?? '');\n const titleId = `${baseId}-title-${row++}`;\n const accent = accentClasses[category?.color ?? 'neutral'];\n const Icon = category?.icon;\n const dt = toDateTime(getDate(item), zone);\n const localDt = dt && withLocale(dt, locale);\n const actor = getActor?.(item);\n const description = compact ? undefined : getDescription?.(item);\n\n const body = renderItem?.(item, { density, pinned, category }) ?? (\n <>\n <span\n aria-hidden\n className={cn(\n 'flex shrink-0 items-center justify-center rounded-full',\n compact ? 'size-5' : 'mt-0.5 size-7',\n accent.tint\n )}\n >\n {Icon ? (\n <Icon className=\"text-foreground size-3.5\" />\n ) : (\n <span className={cn('size-2 rounded-full', accent.marker)} />\n )}\n </span>\n <span className=\"min-w-0 flex-1\">\n <span\n id={titleId}\n className=\"text-foreground block truncate text-sm font-medium\"\n >\n {getTitle?.(item) ?? category?.label ?? id}\n </span>\n {description && (\n <span className=\"text-muted-foreground line-clamp-2 block text-sm\">\n {description}\n </span>\n )}\n <span className=\"text-muted-foreground mt-0.5 flex flex-wrap items-center gap-x-2 gap-y-1 text-xs\">\n {actor && (\n <span className=\"inline-flex items-center gap-1.5\">\n {!compact && (\n <Avatar\n size=\"xs\"\n name={actor.name}\n src={actor.avatarUrl}\n alt=\"\"\n aria-hidden\n />\n )}\n {actor.name}\n </span>\n )}\n {category && <span>{category.label}</span>}\n {localDt && (\n <time\n dateTime={localDt.toISO() ?? undefined}\n title={localDt.toLocaleString(DateTime.DATETIME_MED)}\n >\n {localDt.toLocaleString(DateTime.TIME_SIMPLE)}\n </time>\n )}\n {renderItemMeta?.(item)}\n </span>\n </span>\n </>\n );\n\n const mainClasses =\n 'flex min-w-0 flex-1 items-start gap-3 rounded-md text-start focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring';\n const href = getHref?.(id, item);\n let main: React.ReactNode;\n if (href) {\n main = (\n <a\n href={href}\n className={mainClasses}\n onClick={(event) => {\n if (\n !onOpen ||\n event.metaKey ||\n event.ctrlKey ||\n event.shiftKey ||\n event.button !== 0\n )\n return;\n event.preventDefault();\n onOpen(id, item);\n }}\n onKeyDown={(event) => {\n // Anchors ignore Space natively; rows open on Enter and Space alike.\n if (event.key !== ' ') return;\n event.preventDefault();\n event.currentTarget.click();\n }}\n >\n {body}\n </a>\n );\n } else if (onOpen) {\n main = (\n <button\n type=\"button\"\n className={mainClasses}\n onClick={() => onOpen(id, item)}\n >\n {body}\n </button>\n );\n } else {\n main = <div className={mainClasses}>{body}</div>;\n }\n\n return (\n <li\n key={id}\n ref={(el) => {\n if (el) rowRefs.current.set(id, el);\n else rowRefs.current.delete(id);\n }}\n data-slot=\"activity-feed-item\"\n data-highlighted={highlighted || undefined}\n aria-busy={pending || undefined}\n className={cn(\n 'flex items-start gap-2 px-3',\n compact ? 'py-1.5' : 'py-3',\n highlighted && 'ring-primary-500 bg-primary-500/10 ring-2 ring-inset',\n classNames?.item,\n highlighted && classNames?.highlightedItem\n )}\n >\n {main}\n {onTogglePin && renderItem && (\n <span id={titleId} hidden>\n {getTitle?.(item) ?? category?.label ?? id}\n </span>\n )}\n {onTogglePin && (\n <button\n type=\"button\"\n aria-pressed={pinned}\n aria-label={text.pin}\n aria-describedby={titleId}\n disabled={pending}\n title={text.pin}\n onClick={() =>\n void runPin(id, !pinned, () => onTogglePin(id, !pinned))\n }\n className={cn(\n 'text-muted-foreground hover:bg-muted hover:text-foreground shrink-0 rounded-md p-1.5',\n 'focus-visible:ring-ring focus-visible:ring-2 focus-visible:outline-none',\n 'disabled:opacity-50',\n pinned && 'text-foreground'\n )}\n >\n <Pin\n className={cn('size-4', pinned && 'fill-current')}\n aria-hidden\n />\n </button>\n )}\n </li>\n );\n };\n\n const section = (\n key: string,\n label: React.ReactNode,\n sectionItems: T[],\n summary?: React.ReactNode\n ) => {\n const headingId = `${baseId}-day-${key || 'none'}`;\n return (\n <section\n key={key}\n aria-labelledby={headingId}\n data-slot=\"activity-feed-section\"\n className={classNames?.section}\n >\n <Heading\n id={headingId}\n data-slot=\"activity-feed-day-header\"\n className={cn(\n 'border-border bg-card text-muted-foreground sticky top-0 z-10 flex items-center gap-1.5 border-b px-3 py-2 text-xs font-semibold tracking-wide uppercase',\n classNames?.dayHeader\n )}\n >\n {label}\n </Heading>\n {summary}\n <ul className=\"divide-border divide-y\">\n {sectionItems.map(renderRow)}\n </ul>\n </section>\n );\n };\n\n let body: React.ReactNode;\n if (error) {\n body = (\n <RecordState\n kind=\"error\"\n slot=\"activity-feed-state\"\n message={text.error}\n retryLabel={text.retry}\n onRetry={onRetry}\n className={classNames?.state}\n />\n );\n } else if (loading) {\n body = (\n <RecordState\n kind=\"loading\"\n slot=\"activity-feed-state\"\n message={text.loading}\n className={classNames?.state}\n />\n );\n } else if (items.length === 0) {\n body = emptyState ?? (\n <RecordState\n kind=\"empty\"\n slot=\"activity-feed-state\"\n message={text.empty}\n className={classNames?.state}\n />\n );\n } else if (visible.length === 0) {\n body = (\n <RecordState\n kind=\"empty\"\n slot=\"activity-feed-state\"\n message={text.noMatches}\n className={classNames?.state}\n >\n <Button variant=\"ghost\" size=\"sm\" onClick={() => updateFilters([])}>\n {text.allCategories}\n </Button>\n </RecordState>\n );\n } else {\n body = (\n <>\n {pinnedItems.length > 0 &&\n section(\n 'pinned',\n <>\n <Pin className=\"size-3.5\" aria-hidden />\n {text.pinned}\n </>,\n pinnedItems\n )}\n {days.map((day) =>\n section(\n day.key,\n formatDayLabel(day.key, {\n now: reference,\n zone,\n locale,\n today: text.today,\n yesterday: text.yesterday,\n undated: text.undated,\n }),\n day.items,\n renderDaySummary?.(day.key, day.items)\n )\n )}\n {hasMore && onLoadMore && (\n <div\n data-slot=\"activity-feed-load-more\"\n className={cn('border-border border-t p-3', classNames?.loadMore)}\n >\n <Button\n variant=\"ghost\"\n size=\"sm\"\n fullWidth\n isLoading={loadingMore}\n onClick={() => void loadMore()}\n >\n {text.loadMore}\n </Button>\n </div>\n )}\n </>\n );\n }\n\n return (\n <div\n ref={ref}\n data-slot=\"activity-feed\"\n className={cn(\n 'border-border bg-card overflow-hidden rounded-lg border',\n className\n )}\n {...rest}\n >\n {(categories.length > 0 || items.length > 0) && (\n <div\n data-slot=\"activity-feed-toolbar\"\n className={cn(\n 'border-border flex items-center gap-2 border-b px-3 py-2',\n classNames?.toolbar\n )}\n >\n {categories.length > 0 && (\n <div\n role=\"group\"\n aria-label={text.filters}\n className=\"flex min-w-0 flex-1 flex-wrap gap-1.5\"\n >\n <button\n type=\"button\"\n aria-pressed={effectiveFilter.length === 0}\n onClick={() => updateFilters([])}\n data-slot=\"activity-feed-filter\"\n className={cn(\n chipClasses,\n effectiveFilter.length === 0\n ? 'border-primary-500/40 bg-primary-500/10 text-foreground'\n : 'border-border text-muted-foreground hover:bg-muted',\n classNames?.filter\n )}\n >\n {text.allCategories}\n </button>\n {categories.map((category) => {\n const active = effectiveFilter.includes(category.id);\n const accent = accentClasses[category.color ?? 'primary'];\n const Icon = category.icon;\n return (\n <button\n key={category.id}\n type=\"button\"\n aria-pressed={active}\n onClick={() =>\n updateFilters(\n active\n ? effectiveFilter.filter((c) => c !== category.id)\n : [...effectiveFilter, category.id]\n )\n }\n data-slot=\"activity-feed-filter\"\n className={cn(\n chipClasses,\n active\n ? cn(accent.tint, accent.border, 'text-foreground')\n : 'border-border text-muted-foreground hover:bg-muted',\n classNames?.filter\n )}\n >\n {Icon && <Icon className=\"size-3.5\" aria-hidden />}\n {category.label}\n </button>\n );\n })}\n </div>\n )}\n <button\n type=\"button\"\n aria-pressed={compact}\n aria-label={text.compact}\n title={text.compact}\n onClick={toggleDensity}\n className={cn(\n 'text-muted-foreground hover:bg-muted ms-auto shrink-0 rounded-md p-1.5',\n 'focus-visible:ring-ring focus-visible:ring-2 focus-visible:outline-none',\n compact && 'bg-muted text-foreground'\n )}\n >\n <Rows4 className=\"size-4\" aria-hidden />\n </button>\n </div>\n )}\n <div aria-live=\"polite\" className=\"sr-only\">\n {announcement}\n </div>\n {body}\n </div>\n );\n}\n\n/**\n * A day-grouped feed of a record's activity. Declared\n * `parameters.catalog.collection` — its load states are part of the API.\n */\nexport const ActivityFeed = React.forwardRef(ActivityFeedInner) as <T>(\n props: ActivityFeedProps<T> & { ref?: React.ForwardedRef<HTMLDivElement> }\n) => React.ReactElement;\n\n(ActivityFeed as React.FC).displayName = 'ActivityFeed';\n"]}
@@ -0,0 +1,3 @@
1
+
2
+ //# sourceMappingURL=chunk-XBAAHOCP.js.map
3
+ //# sourceMappingURL=chunk-XBAAHOCP.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"chunk-XBAAHOCP.js"}