@arbidocs/blocks 0.5.107 → 0.5.108

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 (341) hide show
  1. package/dist/{ConnectedCallDock-TDYRHPAK.js → ConnectedCallDock-DV4FU376.js} +8 -8
  2. package/dist/{ConnectedCallDock-TDYRHPAK.js.map → ConnectedCallDock-DV4FU376.js.map} +1 -1
  3. package/dist/{ConnectedCallDock-H3WWFGXF.cjs → ConnectedCallDock-EM2VVGZK.cjs} +10 -10
  4. package/dist/{ConnectedCallDock-H3WWFGXF.cjs.map → ConnectedCallDock-EM2VVGZK.cjs.map} +1 -1
  5. package/dist/{ConnectedCallRoom-55O5OUN7.cjs → ConnectedCallRoom-7WEPEWUJ.cjs} +9 -9
  6. package/dist/{ConnectedCallRoom-55O5OUN7.cjs.map → ConnectedCallRoom-7WEPEWUJ.cjs.map} +1 -1
  7. package/dist/{ConnectedCallRoom-Z6F6WCLH.js → ConnectedCallRoom-RYTZP34O.js} +8 -8
  8. package/dist/{ConnectedCallRoom-Z6F6WCLH.js.map → ConnectedCallRoom-RYTZP34O.js.map} +1 -1
  9. package/dist/{ConnectedNativeDocxComparison-NVZRVNOS.js → ConnectedNativeDocxComparison-2NDXXZLQ.js} +15 -15
  10. package/dist/{ConnectedNativeDocxComparison-NVZRVNOS.js.map → ConnectedNativeDocxComparison-2NDXXZLQ.js.map} +1 -1
  11. package/dist/{ConnectedNativeDocxComparison-DGBZJ4XA.cjs → ConnectedNativeDocxComparison-7HOY3AVI.cjs} +16 -16
  12. package/dist/{ConnectedNativeDocxComparison-DGBZJ4XA.cjs.map → ConnectedNativeDocxComparison-7HOY3AVI.cjs.map} +1 -1
  13. package/dist/{ConnectedNativeDocxEditor-R4WINUUB.cjs → ConnectedNativeDocxEditor-CUWDPHXN.cjs} +16 -16
  14. package/dist/{ConnectedNativeDocxEditor-R4WINUUB.cjs.map → ConnectedNativeDocxEditor-CUWDPHXN.cjs.map} +1 -1
  15. package/dist/{ConnectedNativeDocxEditor-RSVBN7DY.js → ConnectedNativeDocxEditor-SPZB6Y27.js} +14 -14
  16. package/dist/{ConnectedNativeDocxEditor-RSVBN7DY.js.map → ConnectedNativeDocxEditor-SPZB6Y27.js.map} +1 -1
  17. package/dist/{ConnectedProductionSetDialog-2DFBXE2X.js → ConnectedProductionSetDialog-N3EDG3SU.js} +4 -4
  18. package/dist/{ConnectedProductionSetDialog-2DFBXE2X.js.map → ConnectedProductionSetDialog-N3EDG3SU.js.map} +1 -1
  19. package/dist/{ConnectedProductionSetDialog-KYDPQ7SG.cjs → ConnectedProductionSetDialog-XAEFEN3N.cjs} +4 -4
  20. package/dist/{ConnectedProductionSetDialog-KYDPQ7SG.cjs.map → ConnectedProductionSetDialog-XAEFEN3N.cjs.map} +1 -1
  21. package/dist/{ConnectedStreamedWordArtifact-HLJ5IIOU.js → ConnectedStreamedWordArtifact-6LTGEAJO.js} +15 -15
  22. package/dist/ConnectedStreamedWordArtifact-6LTGEAJO.js.map +1 -0
  23. package/dist/{ConnectedStreamedWordArtifact-JQ34AOUU.cjs → ConnectedStreamedWordArtifact-HNCRKZTV.cjs} +16 -16
  24. package/dist/ConnectedStreamedWordArtifact-HNCRKZTV.cjs.map +1 -0
  25. package/dist/{DocumentReviewCard-7JSXRJZ2.js → DocumentReviewCard-RJD3CO32.js} +8 -8
  26. package/dist/{DocumentReviewCard-7JSXRJZ2.js.map → DocumentReviewCard-RJD3CO32.js.map} +1 -1
  27. package/dist/{DocumentReviewCard-C4HVT3WM.cjs → DocumentReviewCard-VON7LOOY.cjs} +8 -8
  28. package/dist/{DocumentReviewCard-C4HVT3WM.cjs.map → DocumentReviewCard-VON7LOOY.cjs.map} +1 -1
  29. package/dist/{FilesViewerDialog-IMQTZWKD.js → FilesViewerDialog-7SJGY72Q.js} +21 -21
  30. package/dist/{FilesViewerDialog-IMQTZWKD.js.map → FilesViewerDialog-7SJGY72Q.js.map} +1 -1
  31. package/dist/{FilesViewerDialog-UP7GFHYN.cjs → FilesViewerDialog-VIPTC6OT.cjs} +27 -27
  32. package/dist/{FilesViewerDialog-UP7GFHYN.cjs.map → FilesViewerDialog-VIPTC6OT.cjs.map} +1 -1
  33. package/dist/{RechartsRenderer-GIRCW7DB.cjs → RechartsRenderer-THES2SE5.cjs} +6 -5
  34. package/dist/RechartsRenderer-THES2SE5.cjs.map +1 -0
  35. package/dist/{RechartsRenderer-23OF4H6X.js → RechartsRenderer-XIZLV6GH.js} +6 -5
  36. package/dist/RechartsRenderer-XIZLV6GH.js.map +1 -0
  37. package/dist/{WorkspaceTableView-PJM47B5F.cjs → WorkspaceTableView-FNME7TL6.cjs} +9 -9
  38. package/dist/{WorkspaceTableView-PJM47B5F.cjs.map → WorkspaceTableView-FNME7TL6.cjs.map} +1 -1
  39. package/dist/{WorkspaceTableView-YDA7A4UJ.js → WorkspaceTableView-XQ6J2JKI.js} +7 -7
  40. package/dist/{WorkspaceTableView-YDA7A4UJ.js.map → WorkspaceTableView-XQ6J2JKI.js.map} +1 -1
  41. package/dist/agents/index.cjs +202 -202
  42. package/dist/agents/index.js +8 -8
  43. package/dist/{ai-ADS6YSS2.cjs → ai-3SAMEYBB.cjs} +20 -20
  44. package/dist/ai-3SAMEYBB.cjs.map +1 -0
  45. package/dist/{ai-KHWTGBT5.js → ai-OTQWSYVK.js} +12 -12
  46. package/dist/ai-OTQWSYVK.js.map +1 -0
  47. package/dist/calls/index.cjs +57 -57
  48. package/dist/calls/index.js +9 -9
  49. package/dist/chat/index.cjs +3 -3
  50. package/dist/chat/index.js +3 -3
  51. package/dist/{chunk-O27K7KTZ.cjs → chunk-2TBQBF4Y.cjs} +5 -5
  52. package/dist/{chunk-O27K7KTZ.cjs.map → chunk-2TBQBF4Y.cjs.map} +1 -1
  53. package/dist/{chunk-YJWAGXYM.js → chunk-4ZA2RSQH.js} +3 -3
  54. package/dist/{chunk-YJWAGXYM.js.map → chunk-4ZA2RSQH.js.map} +1 -1
  55. package/dist/{chunk-6A4GNM4T.cjs → chunk-5D2ZINOJ.cjs} +16 -16
  56. package/dist/{chunk-6A4GNM4T.cjs.map → chunk-5D2ZINOJ.cjs.map} +1 -1
  57. package/dist/{chunk-BFVCYBND.cjs → chunk-5HXQOM3I.cjs} +5 -5
  58. package/dist/{chunk-BFVCYBND.cjs.map → chunk-5HXQOM3I.cjs.map} +1 -1
  59. package/dist/{chunk-GSD5U553.cjs → chunk-5KKT65WU.cjs} +3 -3
  60. package/dist/{chunk-GSD5U553.cjs.map → chunk-5KKT65WU.cjs.map} +1 -1
  61. package/dist/{chunk-AVGHTUPE.js → chunk-5PWLXLHY.js} +5 -5
  62. package/dist/chunk-5PWLXLHY.js.map +1 -0
  63. package/dist/{chunk-BBWLFK3C.js → chunk-5XIMUQ63.js} +3 -3
  64. package/dist/{chunk-BBWLFK3C.js.map → chunk-5XIMUQ63.js.map} +1 -1
  65. package/dist/{chunk-AHMRYY7J.cjs → chunk-6DAJXQZZ.cjs} +13 -13
  66. package/dist/{chunk-AHMRYY7J.cjs.map → chunk-6DAJXQZZ.cjs.map} +1 -1
  67. package/dist/{chunk-3PV25ICC.js → chunk-6KKVJ2V6.js} +3 -3
  68. package/dist/{chunk-3PV25ICC.js.map → chunk-6KKVJ2V6.js.map} +1 -1
  69. package/dist/{chunk-OLAYDOPC.js → chunk-6LUHNFEE.js} +6 -6
  70. package/dist/{chunk-OLAYDOPC.js.map → chunk-6LUHNFEE.js.map} +1 -1
  71. package/dist/{chunk-FSXQHEFQ.cjs → chunk-7CDV7Y4U.cjs} +25 -25
  72. package/dist/{chunk-FSXQHEFQ.cjs.map → chunk-7CDV7Y4U.cjs.map} +1 -1
  73. package/dist/{chunk-OAIOOVFN.cjs → chunk-7SJXYEZI.cjs} +36 -36
  74. package/dist/chunk-7SJXYEZI.cjs.map +1 -0
  75. package/dist/{chunk-LFYKB7KF.cjs → chunk-7V6APLF7.cjs} +19 -19
  76. package/dist/{chunk-LFYKB7KF.cjs.map → chunk-7V6APLF7.cjs.map} +1 -1
  77. package/dist/{chunk-4WMGFGYP.cjs → chunk-AJZ66VJC.cjs} +4 -4
  78. package/dist/{chunk-4WMGFGYP.cjs.map → chunk-AJZ66VJC.cjs.map} +1 -1
  79. package/dist/{chunk-KCP42W67.cjs → chunk-ARGQ5YZ5.cjs} +3 -3
  80. package/dist/{chunk-KCP42W67.cjs.map → chunk-ARGQ5YZ5.cjs.map} +1 -1
  81. package/dist/{chunk-BH6IKGZ3.js → chunk-AUAHGQY6.js} +5 -5
  82. package/dist/{chunk-BH6IKGZ3.js.map → chunk-AUAHGQY6.js.map} +1 -1
  83. package/dist/{chunk-KIXFXCHL.js → chunk-CEOCA7ID.js} +3 -3
  84. package/dist/{chunk-KIXFXCHL.js.map → chunk-CEOCA7ID.js.map} +1 -1
  85. package/dist/{chunk-TNKPQ3EF.js → chunk-CIRSOYGK.js} +12 -12
  86. package/dist/{chunk-TNKPQ3EF.js.map → chunk-CIRSOYGK.js.map} +1 -1
  87. package/dist/{chunk-BAUZUIHB.js → chunk-COL2TJGO.js} +83 -83
  88. package/dist/chunk-COL2TJGO.js.map +1 -0
  89. package/dist/{chunk-XHN5KOI2.cjs → chunk-DRLD4P2C.cjs} +8 -8
  90. package/dist/{chunk-XHN5KOI2.cjs.map → chunk-DRLD4P2C.cjs.map} +1 -1
  91. package/dist/{chunk-5AC52BHL.cjs → chunk-DYPFNQTQ.cjs} +140 -140
  92. package/dist/chunk-DYPFNQTQ.cjs.map +1 -0
  93. package/dist/{chunk-SCLGUHLU.cjs → chunk-E7TGSOPR.cjs} +4 -4
  94. package/dist/{chunk-SCLGUHLU.cjs.map → chunk-E7TGSOPR.cjs.map} +1 -1
  95. package/dist/{chunk-CRLFLMTK.cjs → chunk-EOXA4VJH.cjs} +3 -3
  96. package/dist/{chunk-CRLFLMTK.cjs.map → chunk-EOXA4VJH.cjs.map} +1 -1
  97. package/dist/{chunk-DBKZANTC.js → chunk-GA47YVW5.js} +3 -3
  98. package/dist/{chunk-DBKZANTC.js.map → chunk-GA47YVW5.js.map} +1 -1
  99. package/dist/{chunk-RCZRI72J.cjs → chunk-GMODJT4N.cjs} +4 -4
  100. package/dist/{chunk-RCZRI72J.cjs.map → chunk-GMODJT4N.cjs.map} +1 -1
  101. package/dist/{chunk-22KAKJ3W.cjs → chunk-GS5MFUPC.cjs} +4 -4
  102. package/dist/{chunk-22KAKJ3W.cjs.map → chunk-GS5MFUPC.cjs.map} +1 -1
  103. package/dist/{chunk-62OMGQHS.js → chunk-H6W3VXHU.js} +3 -3
  104. package/dist/{chunk-62OMGQHS.js.map → chunk-H6W3VXHU.js.map} +1 -1
  105. package/dist/{chunk-DX3Z2COD.cjs → chunk-HUYKO2ES.cjs} +3 -3
  106. package/dist/{chunk-DX3Z2COD.cjs.map → chunk-HUYKO2ES.cjs.map} +1 -1
  107. package/dist/{chunk-U5F5P4YU.js → chunk-IK234EFX.js} +12 -12
  108. package/dist/{chunk-U5F5P4YU.js.map → chunk-IK234EFX.js.map} +1 -1
  109. package/dist/{chunk-UQ2OBHMV.js → chunk-JUGEFTRC.js} +1010 -1010
  110. package/dist/chunk-JUGEFTRC.js.map +1 -0
  111. package/dist/{chunk-CHQMVIHR.js → chunk-LPGBRMYS.js} +36 -36
  112. package/dist/chunk-LPGBRMYS.js.map +1 -0
  113. package/dist/{chunk-D35EHOK5.cjs → chunk-M23W7IID.cjs} +12 -12
  114. package/dist/chunk-M23W7IID.cjs.map +1 -0
  115. package/dist/{chunk-FPOKWML2.js → chunk-MIVNNQO3.js} +21 -4
  116. package/dist/chunk-MIVNNQO3.js.map +1 -0
  117. package/dist/{chunk-WI3BVKEC.cjs → chunk-MNFI66H5.cjs} +5 -5
  118. package/dist/{chunk-WI3BVKEC.cjs.map → chunk-MNFI66H5.cjs.map} +1 -1
  119. package/dist/{chunk-T5ZMG6MC.js → chunk-NF4M7PUB.js} +3 -3
  120. package/dist/{chunk-T5ZMG6MC.js.map → chunk-NF4M7PUB.js.map} +1 -1
  121. package/dist/{chunk-ZNY5W3VX.js → chunk-NPSFPBIB.js} +3 -3
  122. package/dist/{chunk-ZNY5W3VX.js.map → chunk-NPSFPBIB.js.map} +1 -1
  123. package/dist/{chunk-LYW5A35J.js → chunk-OMIYTUVR.js} +12 -12
  124. package/dist/{chunk-LYW5A35J.js.map → chunk-OMIYTUVR.js.map} +1 -1
  125. package/dist/{chunk-ZMVF7EYJ.cjs → chunk-PBPO54KZ.cjs} +21 -3
  126. package/dist/chunk-PBPO54KZ.cjs.map +1 -0
  127. package/dist/{chunk-7V4OCZS6.cjs → chunk-RA3EGF6K.cjs} +6 -6
  128. package/dist/{chunk-7V4OCZS6.cjs.map → chunk-RA3EGF6K.cjs.map} +1 -1
  129. package/dist/{chunk-PL7O3RJJ.cjs → chunk-RKBAY7GZ.cjs} +3 -3
  130. package/dist/{chunk-PL7O3RJJ.cjs.map → chunk-RKBAY7GZ.cjs.map} +1 -1
  131. package/dist/{chunk-J3E5CSSC.js → chunk-RKFWBIKS.js} +3 -3
  132. package/dist/{chunk-J3E5CSSC.js.map → chunk-RKFWBIKS.js.map} +1 -1
  133. package/dist/{chunk-YLKHTBYA.js → chunk-RRP7MQAO.js} +3 -3
  134. package/dist/{chunk-YLKHTBYA.js.map → chunk-RRP7MQAO.js.map} +1 -1
  135. package/dist/{chunk-U6LQ6Z3P.cjs → chunk-SP3IKIPA.cjs} +6 -6
  136. package/dist/{chunk-U6LQ6Z3P.cjs.map → chunk-SP3IKIPA.cjs.map} +1 -1
  137. package/dist/{chunk-GX75YCWJ.cjs → chunk-SQUOXOY3.cjs} +560 -560
  138. package/dist/chunk-SQUOXOY3.cjs.map +1 -0
  139. package/dist/{chunk-6ZYOUT73.js → chunk-T5LORFHL.js} +7 -7
  140. package/dist/{chunk-6ZYOUT73.js.map → chunk-T5LORFHL.js.map} +1 -1
  141. package/dist/{chunk-45OU2UAA.cjs → chunk-TEMTKBBL.cjs} +10 -10
  142. package/dist/{chunk-45OU2UAA.cjs.map → chunk-TEMTKBBL.cjs.map} +1 -1
  143. package/dist/{chunk-PHDUN4SG.cjs → chunk-THCMGAFX.cjs} +41 -41
  144. package/dist/{chunk-PHDUN4SG.cjs.map → chunk-THCMGAFX.cjs.map} +1 -1
  145. package/dist/{chunk-HTGEAQOA.js → chunk-TOMDMKOD.js} +7 -7
  146. package/dist/{chunk-HTGEAQOA.js.map → chunk-TOMDMKOD.js.map} +1 -1
  147. package/dist/{chunk-WJHRWXWJ.js → chunk-TXIAF4PX.js} +3 -3
  148. package/dist/{chunk-WJHRWXWJ.js.map → chunk-TXIAF4PX.js.map} +1 -1
  149. package/dist/{chunk-6M5NAAWX.js → chunk-UCSEE52D.js} +3 -3
  150. package/dist/{chunk-6M5NAAWX.js.map → chunk-UCSEE52D.js.map} +1 -1
  151. package/dist/{chunk-I7CJDF3V.cjs → chunk-UHMP6S7M.cjs} +104 -103
  152. package/dist/chunk-UHMP6S7M.cjs.map +1 -0
  153. package/dist/{chunk-PGCKTXYH.js → chunk-UHUI6A36.js} +3 -3
  154. package/dist/{chunk-PGCKTXYH.js.map → chunk-UHUI6A36.js.map} +1 -1
  155. package/dist/{chunk-6KQVTMRL.cjs → chunk-UOGXKHTJ.cjs} +3 -3
  156. package/dist/{chunk-6KQVTMRL.cjs.map → chunk-UOGXKHTJ.cjs.map} +1 -1
  157. package/dist/{chunk-7S7YVBFK.js → chunk-VDSDG4FR.js} +3 -3
  158. package/dist/{chunk-7S7YVBFK.js.map → chunk-VDSDG4FR.js.map} +1 -1
  159. package/dist/{chunk-3GFQNJYE.js → chunk-VGWCHX6G.js} +104 -103
  160. package/dist/chunk-VGWCHX6G.js.map +1 -0
  161. package/dist/{chunk-VY3HTT37.js → chunk-VUH547VQ.js} +3 -3
  162. package/dist/{chunk-VY3HTT37.js.map → chunk-VUH547VQ.js.map} +1 -1
  163. package/dist/{chunk-AZCMKGDG.js → chunk-W37PFYFL.js} +4 -4
  164. package/dist/{chunk-AZCMKGDG.js.map → chunk-W37PFYFL.js.map} +1 -1
  165. package/dist/{chunk-JGUM4EXE.cjs → chunk-W3IX3GZS.cjs} +8 -8
  166. package/dist/{chunk-JGUM4EXE.cjs.map → chunk-W3IX3GZS.cjs.map} +1 -1
  167. package/dist/{chunk-UCA4JLLJ.cjs → chunk-X7GT57KW.cjs} +3 -3
  168. package/dist/{chunk-UCA4JLLJ.cjs.map → chunk-X7GT57KW.cjs.map} +1 -1
  169. package/dist/{chunk-IXL2KJOZ.cjs → chunk-XBEGD33U.cjs} +40 -40
  170. package/dist/{chunk-IXL2KJOZ.cjs.map → chunk-XBEGD33U.cjs.map} +1 -1
  171. package/dist/{chunk-FDNIK5YS.cjs → chunk-XBKIFGBB.cjs} +8 -8
  172. package/dist/{chunk-FDNIK5YS.cjs.map → chunk-XBKIFGBB.cjs.map} +1 -1
  173. package/dist/{chunk-HZE5MHQO.js → chunk-XT7HKQ4H.js} +3 -3
  174. package/dist/{chunk-HZE5MHQO.js.map → chunk-XT7HKQ4H.js.map} +1 -1
  175. package/dist/{chunk-M3OK6KGR.js → chunk-ZGQKED5T.js} +3 -3
  176. package/dist/{chunk-M3OK6KGR.js.map → chunk-ZGQKED5T.js.map} +1 -1
  177. package/dist/{chunk-NWBCZ4PA.js → chunk-ZKBYG6MN.js} +4 -4
  178. package/dist/{chunk-NWBCZ4PA.js.map → chunk-ZKBYG6MN.js.map} +1 -1
  179. package/dist/collaboration/index.cjs +1 -1
  180. package/dist/collaboration/index.js +1 -1
  181. package/dist/connect/docx.cjs +19 -19
  182. package/dist/connect/docx.js +15 -15
  183. package/dist/connect/index.cjs +762 -762
  184. package/dist/connect/index.js +63 -63
  185. package/dist/connect/viewer.cjs +14 -14
  186. package/dist/connect/viewer.js +13 -13
  187. package/dist/connection/dashboards/ConnectedDashboardsPage.d.ts +6 -0
  188. package/dist/dashboards/chartModel.d.ts +12 -0
  189. package/dist/dashboards/index.cjs +113 -42
  190. package/dist/dashboards/index.cjs.map +1 -1
  191. package/dist/dashboards/index.js +95 -24
  192. package/dist/dashboards/index.js.map +1 -1
  193. package/dist/embed/index.cjs +29 -29
  194. package/dist/embed/index.js +23 -23
  195. package/dist/facts/index.cjs +43 -43
  196. package/dist/facts/index.js +2 -2
  197. package/dist/files/index.cjs +1 -1
  198. package/dist/files/index.js +1 -1
  199. package/dist/home/index.cjs +31 -31
  200. package/dist/home/index.js +3 -3
  201. package/dist/index.cjs +383 -383
  202. package/dist/index.js +21 -21
  203. package/dist/settings/index.cjs +153 -153
  204. package/dist/settings/index.js +4 -4
  205. package/dist/shell/index.cjs +36 -36
  206. package/dist/shell/index.js +4 -4
  207. package/dist/site/index.cjs +5 -5
  208. package/dist/site/index.js +1 -1
  209. package/dist/studio/index.cjs +19 -19
  210. package/dist/studio/index.js +14 -14
  211. package/dist/styles.css +1 -1
  212. package/dist/workflow-canvas/index.cjs +33 -33
  213. package/dist/workflow-canvas/index.js +22 -22
  214. package/node_modules/@arbidocs/coedit/package.json +2 -2
  215. package/node_modules/@docx-editor.dev/core/dist/automation.cjs +1 -1
  216. package/node_modules/@docx-editor.dev/core/dist/automation.d.ts +60 -13
  217. package/node_modules/@docx-editor.dev/core/dist/automation.js +1 -1
  218. package/node_modules/@docx-editor.dev/core/dist/binding.cjs +1 -1
  219. package/node_modules/@docx-editor.dev/core/dist/binding.d.ts +21 -13
  220. package/node_modules/@docx-editor.dev/core/dist/binding.js +1 -1
  221. package/node_modules/@docx-editor.dev/core/dist/{index-Bsg7oIKP.d.ts → chrome-print-CAs51cpq.d.ts} +31 -21
  222. package/node_modules/@docx-editor.dev/core/dist/{chunk-VDNNLG6X.js → chunk-236O4YQW.js} +1 -1
  223. package/node_modules/@docx-editor.dev/core/dist/chunk-4HENIAFG.js +1 -0
  224. package/node_modules/@docx-editor.dev/core/dist/{chunk-SRPILEWV.cjs → chunk-6JPL6ZAS.cjs} +5 -5
  225. package/node_modules/@docx-editor.dev/core/dist/{chunk-2RC2EPND.js → chunk-6ZQP4HQ7.js} +1 -1
  226. package/node_modules/@docx-editor.dev/core/dist/{chunk-ZUHOMK52.cjs → chunk-7WQ7AAHW.cjs} +1 -1
  227. package/node_modules/@docx-editor.dev/core/dist/{chunk-Z6WBFXJU.js → chunk-BCXH4BXB.js} +3 -3
  228. package/node_modules/@docx-editor.dev/core/dist/{chunk-QMLCVPCD.cjs → chunk-BY2ACZZ6.cjs} +1 -1
  229. package/node_modules/@docx-editor.dev/core/dist/chunk-CAJEXXVG.cjs +4 -0
  230. package/node_modules/@docx-editor.dev/core/dist/chunk-CPWLFPWC.js +30 -0
  231. package/node_modules/@docx-editor.dev/core/dist/{chunk-6APGXLBB.cjs → chunk-D7ZMDMPX.cjs} +2 -2
  232. package/node_modules/@docx-editor.dev/core/dist/chunk-DOHF6FA7.cjs +30 -0
  233. package/node_modules/@docx-editor.dev/core/dist/chunk-DVX32P2P.js +27 -0
  234. package/node_modules/@docx-editor.dev/core/dist/{chunk-6EYYL7FL.js → chunk-E4LOMDNL.js} +1 -1
  235. package/node_modules/@docx-editor.dev/core/dist/chunk-EKLM7NWB.cjs +7 -0
  236. package/node_modules/@docx-editor.dev/core/dist/chunk-G3K63G7P.cjs +27 -0
  237. package/node_modules/@docx-editor.dev/core/dist/{chunk-5CSUYANV.js → chunk-G4HOFIKJ.js} +1 -1
  238. package/node_modules/@docx-editor.dev/core/dist/{chunk-K5U2PLDP.cjs → chunk-JLVBDYVQ.cjs} +1 -1
  239. package/node_modules/@docx-editor.dev/core/dist/chunk-LQX36Z5P.js +7 -0
  240. package/node_modules/@docx-editor.dev/core/dist/{chunk-TSLBZ26X.js → chunk-LSZ6KPKK.js} +1 -1
  241. package/node_modules/@docx-editor.dev/core/dist/{chunk-O2AL2HSJ.cjs → chunk-MM5QBMTE.cjs} +1 -1
  242. package/node_modules/@docx-editor.dev/core/dist/{chunk-ETTO6GK3.js → chunk-OMCG63ZF.js} +1 -1
  243. package/node_modules/@docx-editor.dev/core/dist/chunk-OSFOJTHU.cjs +18 -0
  244. package/node_modules/@docx-editor.dev/core/dist/{chunk-E7BQA6UP.js → chunk-RCLZXP3B.js} +1 -1
  245. package/node_modules/@docx-editor.dev/core/dist/chunk-T6K2QYNZ.cjs +2 -0
  246. package/node_modules/@docx-editor.dev/core/dist/chunk-TRGAVV2Y.js +4 -0
  247. package/node_modules/@docx-editor.dev/core/dist/chunk-U4JZVSOE.js +2 -0
  248. package/node_modules/@docx-editor.dev/core/dist/{chunk-2GO5T2JU.cjs → chunk-UHHYFIDT.cjs} +1 -1
  249. package/node_modules/@docx-editor.dev/core/dist/chunk-V3N4SOAK.cjs +1 -0
  250. package/node_modules/@docx-editor.dev/core/dist/{chunk-6AWEKBLB.cjs → chunk-W35WTWAO.cjs} +1 -1
  251. package/node_modules/@docx-editor.dev/core/dist/chunk-YQ5G6LC7.js +18 -0
  252. package/node_modules/@docx-editor.dev/core/dist/collaboration/replication.cjs +1 -1
  253. package/node_modules/@docx-editor.dev/core/dist/collaboration/replication.d.ts +5 -5
  254. package/node_modules/@docx-editor.dev/core/dist/collaboration/replication.js +1 -1
  255. package/node_modules/@docx-editor.dev/core/dist/collaboration.d.ts +4 -4
  256. package/node_modules/@docx-editor.dev/core/dist/contracts/document.d.ts +3 -3
  257. package/node_modules/@docx-editor.dev/core/dist/contracts/editor.d.ts +9 -10
  258. package/node_modules/@docx-editor.dev/core/dist/contracts/interaction.d.ts +2 -2
  259. package/node_modules/@docx-editor.dev/core/dist/contracts/modules.cjs +1 -1
  260. package/node_modules/@docx-editor.dev/core/dist/contracts/modules.d.ts +33 -9
  261. package/node_modules/@docx-editor.dev/core/dist/contracts/modules.js +1 -1
  262. package/node_modules/@docx-editor.dev/core/dist/contracts/types.d.ts +2 -2
  263. package/node_modules/@docx-editor.dev/core/dist/{custom-node-writes-cvL5rhcD.d.ts → custom-node-writes-Bn6uciLb.d.ts} +2 -2
  264. package/node_modules/@docx-editor.dev/core/dist/diagnostic-context-B8M79cfK.d.ts +30 -0
  265. package/node_modules/@docx-editor.dev/core/dist/diagnostic-hints-BeVjfNOv.d.ts +113 -0
  266. package/node_modules/@docx-editor.dev/core/dist/{document-protection-BAGVGqaP.d.ts → document-protection-CUb55pl_.d.ts} +2 -2
  267. package/node_modules/@docx-editor.dev/core/dist/{editor-Ci7IZGmG.d.ts → editor-CZQZmTIU.d.ts} +386 -9
  268. package/node_modules/@docx-editor.dev/core/dist/{editor-scope-OHPwVQ5l.d.ts → editor-scope-7o9xweiJ.d.ts} +1 -1
  269. package/node_modules/@docx-editor.dev/core/dist/editor.cjs +1 -1
  270. package/node_modules/@docx-editor.dev/core/dist/editor.d.ts +54 -33
  271. package/node_modules/@docx-editor.dev/core/dist/editor.js +1 -1
  272. package/node_modules/@docx-editor.dev/core/dist/export.cjs +2 -2
  273. package/node_modules/@docx-editor.dev/core/dist/export.d.ts +13 -14
  274. package/node_modules/@docx-editor.dev/core/dist/export.js +1 -1
  275. package/node_modules/@docx-editor.dev/core/dist/{font-resolver-BVQB14qT.d.ts → font-resolver-lSBLirLR.d.ts} +3 -3
  276. package/node_modules/@docx-editor.dev/core/dist/{headless-document-view-qH331moE.d.ts → headless-document-view-pp3q7wIh.d.ts} +2 -2
  277. package/node_modules/@docx-editor.dev/core/dist/{image-resources-BN-hUgCn.d.ts → image-resources-tXLQShoC.d.ts} +2 -2
  278. package/node_modules/@docx-editor.dev/core/dist/index.cjs +1 -1
  279. package/node_modules/@docx-editor.dev/core/dist/index.d.ts +65 -20
  280. package/node_modules/@docx-editor.dev/core/dist/index.js +1 -1
  281. package/node_modules/@docx-editor.dev/core/dist/{layout-shaping-BEyuiQOk.d.ts → layout-shaping-BD-dF_rn.d.ts} +1 -1
  282. package/node_modules/@docx-editor.dev/core/dist/layout.cjs +1 -1
  283. package/node_modules/@docx-editor.dev/core/dist/layout.d.ts +17 -20
  284. package/node_modules/@docx-editor.dev/core/dist/layout.js +1 -1
  285. package/node_modules/@docx-editor.dev/core/dist/{note-properties-4Y9o6Gyk.d.ts → note-properties-qQUjO1GQ.d.ts} +3 -3
  286. package/node_modules/@docx-editor.dev/core/dist/{omml-equation-CuzBL5DD.d.ts → omml-equation-BUbU0utM.d.ts} +1 -1
  287. package/node_modules/@docx-editor.dev/core/dist/output.cjs +1 -1
  288. package/node_modules/@docx-editor.dev/core/dist/output.d.ts +8 -9
  289. package/node_modules/@docx-editor.dev/core/dist/output.js +1 -1
  290. package/node_modules/@docx-editor.dev/core/dist/{protocol-Bqk4Izjc.d.ts → protocol-DYzzz2ej.d.ts} +2 -2
  291. package/node_modules/@docx-editor.dev/core/dist/{review-paragraph-order-DT-n6ouC.d.ts → review-paragraph-order-CN_0l2Cb.d.ts} +1 -1
  292. package/node_modules/@docx-editor.dev/core/dist/{semantic-cell-selection-D9D1KSXq.d.ts → semantic-cell-selection-eYag3P47.d.ts} +4 -211
  293. package/node_modules/@docx-editor.dev/core/dist/{semantic-interaction-CIC-PooQ.d.ts → semantic-interaction-kR_QB845.d.ts} +1 -1
  294. package/node_modules/@docx-editor.dev/core/dist/{semantic-paint-BME37OMv.d.ts → semantic-paint-ZayFF3tD.d.ts} +17 -5
  295. package/node_modules/@docx-editor.dev/core/dist/{semantic-record-queries-CBlZqZNa.d.ts → semantic-record-queries-Bsgth6lv.d.ts} +1 -1
  296. package/node_modules/@docx-editor.dev/core/dist/{semantic-records-4B3WwFAi.d.ts → semantic-records-DQmumPgL.d.ts} +1279 -828
  297. package/node_modules/@docx-editor.dev/core/dist/store.cjs +1 -1
  298. package/node_modules/@docx-editor.dev/core/dist/store.d.ts +1466 -1464
  299. package/node_modules/@docx-editor.dev/core/dist/store.js +1 -1
  300. package/node_modules/@docx-editor.dev/core/dist/{tree-package-fragment-BeeKxDw8.d.ts → tree-package-store-CovjNARF.d.ts} +83 -83
  301. package/node_modules/@docx-editor.dev/core/dist/{tree-session-contract-CVbmlMlq.d.ts → tree-session-contract-CZVAGl51.d.ts} +6 -6
  302. package/node_modules/@docx-editor.dev/core/dist/{types-barrel-D3xCgQX6.d.ts → types-barrel-DuC5QBNC.d.ts} +548 -527
  303. package/node_modules/@docx-editor.dev/core/package.json +3 -3
  304. package/node_modules/@docx-editor.dev/react/dist/index.js +3 -3
  305. package/node_modules/@docx-editor.dev/react/dist/index.mjs +3 -3
  306. package/node_modules/@docx-editor.dev/react/package.json +4 -4
  307. package/package.json +8 -8
  308. package/dist/ConnectedStreamedWordArtifact-HLJ5IIOU.js.map +0 -1
  309. package/dist/ConnectedStreamedWordArtifact-JQ34AOUU.cjs.map +0 -1
  310. package/dist/RechartsRenderer-23OF4H6X.js.map +0 -1
  311. package/dist/RechartsRenderer-GIRCW7DB.cjs.map +0 -1
  312. package/dist/ai-ADS6YSS2.cjs.map +0 -1
  313. package/dist/ai-KHWTGBT5.js.map +0 -1
  314. package/dist/chunk-3GFQNJYE.js.map +0 -1
  315. package/dist/chunk-5AC52BHL.cjs.map +0 -1
  316. package/dist/chunk-AVGHTUPE.js.map +0 -1
  317. package/dist/chunk-BAUZUIHB.js.map +0 -1
  318. package/dist/chunk-CHQMVIHR.js.map +0 -1
  319. package/dist/chunk-D35EHOK5.cjs.map +0 -1
  320. package/dist/chunk-FPOKWML2.js.map +0 -1
  321. package/dist/chunk-GX75YCWJ.cjs.map +0 -1
  322. package/dist/chunk-I7CJDF3V.cjs.map +0 -1
  323. package/dist/chunk-OAIOOVFN.cjs.map +0 -1
  324. package/dist/chunk-UQ2OBHMV.js.map +0 -1
  325. package/dist/chunk-ZMVF7EYJ.cjs.map +0 -1
  326. package/node_modules/@docx-editor.dev/core/dist/chunk-4GBTELJV.cjs +0 -28
  327. package/node_modules/@docx-editor.dev/core/dist/chunk-4R3TEXMN.js +0 -18
  328. package/node_modules/@docx-editor.dev/core/dist/chunk-EO4C5QJW.cjs +0 -2
  329. package/node_modules/@docx-editor.dev/core/dist/chunk-FIJZIQXA.cjs +0 -18
  330. package/node_modules/@docx-editor.dev/core/dist/chunk-FRXAOVTB.js +0 -28
  331. package/node_modules/@docx-editor.dev/core/dist/chunk-J6BVWIDB.js +0 -2
  332. package/node_modules/@docx-editor.dev/core/dist/chunk-JGNVNT2A.cjs +0 -2
  333. package/node_modules/@docx-editor.dev/core/dist/chunk-KKIJG3C6.js +0 -2
  334. package/node_modules/@docx-editor.dev/core/dist/chunk-LWDSDCMO.js +0 -27
  335. package/node_modules/@docx-editor.dev/core/dist/chunk-NBCVVZOM.cjs +0 -1
  336. package/node_modules/@docx-editor.dev/core/dist/chunk-O5INAWZQ.js +0 -1
  337. package/node_modules/@docx-editor.dev/core/dist/chunk-RCHS4ZEH.cjs +0 -27
  338. package/node_modules/@docx-editor.dev/core/dist/chunk-VHAVHCQY.js +0 -7
  339. package/node_modules/@docx-editor.dev/core/dist/chunk-VX43VBAX.cjs +0 -7
  340. package/node_modules/@docx-editor.dev/core/dist/review-pane-D9jm8DcY.d.ts +0 -128
  341. package/node_modules/@docx-editor.dev/core/dist/revision-projection-DZ4kKVev.d.ts +0 -242
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/connection/viewer/DocumentViewerDialog.tsx","../src/connection/files/page/FilesViewerDialog.tsx"],"names":["tab","question","jsx"],"mappings":"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","file":"FilesViewerDialog-IMQTZWKD.js","sourcesContent":["/**\n * The document viewer as a dialog (the files page's own viewer): a title, the tabs\n * the host offers, and under them the review (`DocumentReview`), the whole viewer, or a question\n * (`AskBar`) that starts a thread about the document. Views of existing parts, not a new viewer.\n *\n * A draft started with Create New (the session's `draftDocuments`) has no server record yet: it\n * shows the whole viewer only (its kind, name and recorder), titled from the draft.\n */\n\nimport { useRef, useState, type ReactNode } from 'react'\nimport { Eye, FileText, MessageSquareText, PenLine } from 'lucide-react'\nimport {\n DocumentReview,\n useArbiSessionState,\n useArbiSessionStore,\n useDocuments,\n type WorkspaceDocument,\n} from '@arbidocs/react'\nimport { parseVersionRef } from '@arbidocs/react/artifacts'\nimport {\n Dialog,\n DialogContent,\n DialogDescription,\n DialogHeader,\n DialogTitle,\n} from '@arbidocs/react/ui'\nimport { AskBar } from '../../components/AskBar'\nimport { ErrorBoundary } from '../../components/ErrorBoundary'\nimport { SegmentedControl, type SegmentedOption } from '../../settings/SegmentedControl'\nimport { useBlocksEnvironment } from '../../provider/environment'\nimport { useConnectedWorkspace } from '../ConnectionProvider'\nimport { useSlashField } from '../ask/useSlashField'\nimport {\n DEFAULT_ASK_SUGGESTIONS,\n DEFAULT_DOCUMENT_VIEWER_LABELS,\n DEFAULT_DOCUMENT_VIEWER_TABS,\n type DocumentViewerDialogLabels,\n type DocumentViewerTab,\n} from './documentViewerTabs'\n\ntype ReviewDocument = Parameters<typeof DocumentReview>[0]['doc']\n\nexport interface DocumentViewerDialogProps {\n /** The document, or a version reference `doc-…@v{n}`. */\n documentId: string\n /** The views offered, in order. Default: review, document, ask. */\n tabs?: readonly DocumentViewerTab[]\n /** The view it opens on. Default: the first offered. */\n initialTab?: DocumentViewerTab\n labels?: DocumentViewerDialogLabels\n /** The ask view's suggested questions. */\n askSuggestions?: readonly string[]\n onClose: () => void\n /** The whole viewer, for the document view. */\n renderDocument: (documentId: string) => ReactNode\n}\n\nconst titleOf = (doc: WorkspaceDocument | undefined) =>\n doc?.doc_metadata?.title || doc?.file_name || 'Document'\n\nconst TAB_ICONS: Record<DocumentViewerTab, ReactNode> = {\n review: <Eye className=\"size-4\" />,\n document: <PenLine className=\"size-4\" />,\n ask: <MessageSquareText className=\"size-4\" />,\n}\n\nconst TAB_TEST_IDS: Record<DocumentViewerTab, string> = {\n review: 'review-tab-review',\n document: 'review-tab-pdf',\n ask: 'review-tab-qa',\n}\n\nexport function DocumentViewerDialog({\n documentId,\n tabs = DEFAULT_DOCUMENT_VIEWER_TABS,\n initialTab,\n labels: labelOverrides,\n askSuggestions = DEFAULT_ASK_SUGGESTIONS,\n onClose,\n renderDocument,\n}: DocumentViewerDialogProps) {\n const labels = { ...DEFAULT_DOCUMENT_VIEWER_LABELS, ...labelOverrides }\n const { workspaceId, live } = useConnectedWorkspace()\n const session = useArbiSessionStore()\n const { openNewConversation } = useBlocksEnvironment()\n const passageId = useArbiSessionState((s) => s.viewingDocument?.passageId ?? null)\n const draft = useArbiSessionState((s) => s.draftDocuments[documentId])\n const { data: documents } = useDocuments()\n const baseId = parseVersionRef(documentId).docId\n const doc = documents?.find((d) => d.external_id === baseId)\n const title = draft?.title || titleOf(doc)\n\n // The whole viewer needs a signed-in session (marking up, signing, versions). A draft is only\n // on the client: there is nothing to review or ask about until it is saved.\n const offered: readonly DocumentViewerTab[] = draft\n ? ['document']\n : tabs.filter((tab) => tab !== 'document' || live)\n const [chosen, setChosen] = useState<DocumentViewerTab | undefined>(initialTab)\n const tab = chosen && offered.includes(chosen) ? chosen : offered[0]\n\n const options: SegmentedOption<DocumentViewerTab>[] = offered.map((value) => ({\n value,\n label: labels[value],\n icon: TAB_ICONS[value],\n testId: TAB_TEST_IDS[value],\n }))\n\n // A question opens a new thread about the document, as the viewer's \"Chat\" does.\n const ask = (question: string) => {\n openNewConversation({ prompt: question })\n session.setNewChatDocumentId(baseId)\n }\n // The `/` menu: a skill's run is asked the same way, so its thread is about this document too.\n const [question, setQuestion] = useState('')\n const askInputRef = useRef<HTMLInputElement>(null)\n const slash = useSlashField({\n text: question,\n setText: setQuestion,\n inputRef: askInputRef,\n landing: 'chat',\n send: ask,\n })\n\n return (\n <Dialog open onOpenChange={(open) => !open && onClose()}>\n <DialogContent\n className=\"flex h-[90vh] max-w-[95vw] flex-col gap-0 p-0 sm:max-w-[95vw]\"\n data-testid=\"documents-dialog\"\n >\n <DialogHeader className=\"border-b px-4 py-3\">\n <DialogTitle className=\"flex min-w-0 items-center gap-2 pr-8 text-base\">\n <FileText className=\"size-4 shrink-0\" />\n <span className=\"truncate\" data-testid=\"documents-dialog-title\">\n {title}\n </span>\n </DialogTitle>\n <DialogDescription className=\"sr-only\">\n {offered.map((value) => labels[value]).join(', ')}: {title}\n </DialogDescription>\n {options.length > 1 && tab && (\n <SegmentedControl\n ariaLabel=\"Document view\"\n // A phone fits the three on one row: no label breaks over two lines.\n className=\"mt-2 w-fit max-w-full overflow-x-auto [&_button]:whitespace-nowrap max-sm:[&_button]:px-2.5\"\n value={tab}\n onChange={setChosen}\n options={options}\n />\n )}\n </DialogHeader>\n <div className=\"min-h-0 flex-1 overflow-hidden p-3\">\n {/* A view that fails to render says so here: the dialog and the page under it stay. */}\n <ErrorBoundary\n resetKey={`${documentId}|${tab}`}\n labels={{ title: \"This document couldn't be displayed\" }}\n testId=\"documents-dialog-error\"\n >\n {tab === 'review' && (\n <DocumentReview\n docId={baseId}\n doc={doc as ReviewDocument}\n workspaceId={workspaceId ?? undefined}\n activeChunkId={passageId}\n />\n )}\n {tab === 'document' && (\n <div className=\"h-full overflow-hidden\" data-testid=\"documents-dialog-viewer\">\n {renderDocument(documentId)}\n </div>\n )}\n {tab === 'ask' && (\n <div className=\"mx-auto max-w-2xl space-y-3 pt-6\" data-testid=\"doc-qa-panel\">\n <p className=\"text-sm text-muted-foreground\">{labels.askIntro}</p>\n {slash.launcher}\n <AskBar\n testId=\"doc-ask\"\n placeholder={labels.askPlaceholder.replace('{title}', title)}\n suggestions={[...askSuggestions]}\n onAsk={(text) => {\n if (!slash.startsSkill(text)) ask(text)\n }}\n value={question}\n onValueChange={setQuestion}\n onInputKeyDown={slash.onKeyDown}\n inputProps={slash.comboboxProps}\n inputRef={askInputRef}\n menu={slash.menu}\n />\n </div>\n )}\n </ErrorBoundary>\n </div>\n </DialogContent>\n </Dialog>\n )\n}\n","/**\n * The files page's own viewer (a page without a host viewer): `DocumentViewerDialog`, with the\n * whole `ConnectedDocumentViewer` as its document view. The page lazy-loads this module, so the\n * viewer stays out of the page's chunk.\n */\nimport { ConnectedDocumentViewer } from '../../viewer/ConnectedDocumentViewer'\nimport {\n DocumentViewerDialog,\n type DocumentViewerDialogProps,\n} from '../../viewer/DocumentViewerDialog'\n\nexport interface FilesViewerDialogProps extends Omit<DocumentViewerDialogProps, 'renderDocument'> {\n /** Where html/react artifacts load their sandbox runtime from. */\n artifactRuntimeUrl?: string\n}\n\nexport function FilesViewerDialog({ artifactRuntimeUrl, ...props }: FilesViewerDialogProps) {\n return (\n <DocumentViewerDialog\n {...props}\n renderDocument={(id) => (\n <ConnectedDocumentViewer documentId={id} artifactRuntimeUrl={artifactRuntimeUrl} />\n )}\n />\n )\n}\n"]}
1
+ {"version":3,"sources":["../src/connection/viewer/DocumentViewerDialog.tsx","../src/connection/files/page/FilesViewerDialog.tsx"],"names":["tab","question","jsx"],"mappings":"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","file":"FilesViewerDialog-7SJGY72Q.js","sourcesContent":["/**\n * The document viewer as a dialog (the files page's own viewer): a title, the tabs\n * the host offers, and under them the review (`DocumentReview`), the whole viewer, or a question\n * (`AskBar`) that starts a thread about the document. Views of existing parts, not a new viewer.\n *\n * A draft started with Create New (the session's `draftDocuments`) has no server record yet: it\n * shows the whole viewer only (its kind, name and recorder), titled from the draft.\n */\n\nimport { useRef, useState, type ReactNode } from 'react'\nimport { Eye, FileText, MessageSquareText, PenLine } from 'lucide-react'\nimport {\n DocumentReview,\n useArbiSessionState,\n useArbiSessionStore,\n useDocuments,\n type WorkspaceDocument,\n} from '@arbidocs/react'\nimport { parseVersionRef } from '@arbidocs/react/artifacts'\nimport {\n Dialog,\n DialogContent,\n DialogDescription,\n DialogHeader,\n DialogTitle,\n} from '@arbidocs/react/ui'\nimport { AskBar } from '../../components/AskBar'\nimport { ErrorBoundary } from '../../components/ErrorBoundary'\nimport { SegmentedControl, type SegmentedOption } from '../../settings/SegmentedControl'\nimport { useBlocksEnvironment } from '../../provider/environment'\nimport { useConnectedWorkspace } from '../ConnectionProvider'\nimport { useSlashField } from '../ask/useSlashField'\nimport {\n DEFAULT_ASK_SUGGESTIONS,\n DEFAULT_DOCUMENT_VIEWER_LABELS,\n DEFAULT_DOCUMENT_VIEWER_TABS,\n type DocumentViewerDialogLabels,\n type DocumentViewerTab,\n} from './documentViewerTabs'\n\ntype ReviewDocument = Parameters<typeof DocumentReview>[0]['doc']\n\nexport interface DocumentViewerDialogProps {\n /** The document, or a version reference `doc-…@v{n}`. */\n documentId: string\n /** The views offered, in order. Default: review, document, ask. */\n tabs?: readonly DocumentViewerTab[]\n /** The view it opens on. Default: the first offered. */\n initialTab?: DocumentViewerTab\n labels?: DocumentViewerDialogLabels\n /** The ask view's suggested questions. */\n askSuggestions?: readonly string[]\n onClose: () => void\n /** The whole viewer, for the document view. */\n renderDocument: (documentId: string) => ReactNode\n}\n\nconst titleOf = (doc: WorkspaceDocument | undefined) =>\n doc?.doc_metadata?.title || doc?.file_name || 'Document'\n\nconst TAB_ICONS: Record<DocumentViewerTab, ReactNode> = {\n review: <Eye className=\"size-4\" />,\n document: <PenLine className=\"size-4\" />,\n ask: <MessageSquareText className=\"size-4\" />,\n}\n\nconst TAB_TEST_IDS: Record<DocumentViewerTab, string> = {\n review: 'review-tab-review',\n document: 'review-tab-pdf',\n ask: 'review-tab-qa',\n}\n\nexport function DocumentViewerDialog({\n documentId,\n tabs = DEFAULT_DOCUMENT_VIEWER_TABS,\n initialTab,\n labels: labelOverrides,\n askSuggestions = DEFAULT_ASK_SUGGESTIONS,\n onClose,\n renderDocument,\n}: DocumentViewerDialogProps) {\n const labels = { ...DEFAULT_DOCUMENT_VIEWER_LABELS, ...labelOverrides }\n const { workspaceId, live } = useConnectedWorkspace()\n const session = useArbiSessionStore()\n const { openNewConversation } = useBlocksEnvironment()\n const passageId = useArbiSessionState((s) => s.viewingDocument?.passageId ?? null)\n const draft = useArbiSessionState((s) => s.draftDocuments[documentId])\n const { data: documents } = useDocuments()\n const baseId = parseVersionRef(documentId).docId\n const doc = documents?.find((d) => d.external_id === baseId)\n const title = draft?.title || titleOf(doc)\n\n // The whole viewer needs a signed-in session (marking up, signing, versions). A draft is only\n // on the client: there is nothing to review or ask about until it is saved.\n const offered: readonly DocumentViewerTab[] = draft\n ? ['document']\n : tabs.filter((tab) => tab !== 'document' || live)\n const [chosen, setChosen] = useState<DocumentViewerTab | undefined>(initialTab)\n const tab = chosen && offered.includes(chosen) ? chosen : offered[0]\n\n const options: SegmentedOption<DocumentViewerTab>[] = offered.map((value) => ({\n value,\n label: labels[value],\n icon: TAB_ICONS[value],\n testId: TAB_TEST_IDS[value],\n }))\n\n // A question opens a new thread about the document, as the viewer's \"Chat\" does.\n const ask = (question: string) => {\n openNewConversation({ prompt: question })\n session.setNewChatDocumentId(baseId)\n }\n // The `/` menu: a skill's run is asked the same way, so its thread is about this document too.\n const [question, setQuestion] = useState('')\n const askInputRef = useRef<HTMLInputElement>(null)\n const slash = useSlashField({\n text: question,\n setText: setQuestion,\n inputRef: askInputRef,\n landing: 'chat',\n send: ask,\n })\n\n return (\n <Dialog open onOpenChange={(open) => !open && onClose()}>\n <DialogContent\n className=\"flex h-[90vh] max-w-[95vw] flex-col gap-0 p-0 sm:max-w-[95vw]\"\n data-testid=\"documents-dialog\"\n >\n <DialogHeader className=\"border-b px-4 py-3\">\n <DialogTitle className=\"flex min-w-0 items-center gap-2 pr-8 text-base\">\n <FileText className=\"size-4 shrink-0\" />\n <span className=\"truncate\" data-testid=\"documents-dialog-title\">\n {title}\n </span>\n </DialogTitle>\n <DialogDescription className=\"sr-only\">\n {offered.map((value) => labels[value]).join(', ')}: {title}\n </DialogDescription>\n {options.length > 1 && tab && (\n <SegmentedControl\n ariaLabel=\"Document view\"\n // A phone fits the three on one row: no label breaks over two lines.\n className=\"mt-2 w-fit max-w-full overflow-x-auto [&_button]:whitespace-nowrap max-sm:[&_button]:px-2.5\"\n value={tab}\n onChange={setChosen}\n options={options}\n />\n )}\n </DialogHeader>\n <div className=\"min-h-0 flex-1 overflow-hidden p-3\">\n {/* A view that fails to render says so here: the dialog and the page under it stay. */}\n <ErrorBoundary\n resetKey={`${documentId}|${tab}`}\n labels={{ title: \"This document couldn't be displayed\" }}\n testId=\"documents-dialog-error\"\n >\n {tab === 'review' && (\n <DocumentReview\n docId={baseId}\n doc={doc as ReviewDocument}\n workspaceId={workspaceId ?? undefined}\n activeChunkId={passageId}\n />\n )}\n {tab === 'document' && (\n <div className=\"h-full overflow-hidden\" data-testid=\"documents-dialog-viewer\">\n {renderDocument(documentId)}\n </div>\n )}\n {tab === 'ask' && (\n <div className=\"mx-auto max-w-2xl space-y-3 pt-6\" data-testid=\"doc-qa-panel\">\n <p className=\"text-sm text-muted-foreground\">{labels.askIntro}</p>\n {slash.launcher}\n <AskBar\n testId=\"doc-ask\"\n placeholder={labels.askPlaceholder.replace('{title}', title)}\n suggestions={[...askSuggestions]}\n onAsk={(text) => {\n if (!slash.startsSkill(text)) ask(text)\n }}\n value={question}\n onValueChange={setQuestion}\n onInputKeyDown={slash.onKeyDown}\n inputProps={slash.comboboxProps}\n inputRef={askInputRef}\n menu={slash.menu}\n />\n </div>\n )}\n </ErrorBoundary>\n </div>\n </DialogContent>\n </Dialog>\n )\n}\n","/**\n * The files page's own viewer (a page without a host viewer): `DocumentViewerDialog`, with the\n * whole `ConnectedDocumentViewer` as its document view. The page lazy-loads this module, so the\n * viewer stays out of the page's chunk.\n */\nimport { ConnectedDocumentViewer } from '../../viewer/ConnectedDocumentViewer'\nimport {\n DocumentViewerDialog,\n type DocumentViewerDialogProps,\n} from '../../viewer/DocumentViewerDialog'\n\nexport interface FilesViewerDialogProps extends Omit<DocumentViewerDialogProps, 'renderDocument'> {\n /** Where html/react artifacts load their sandbox runtime from. */\n artifactRuntimeUrl?: string\n}\n\nexport function FilesViewerDialog({ artifactRuntimeUrl, ...props }: FilesViewerDialogProps) {\n return (\n <DocumentViewerDialog\n {...props}\n renderDocument={(id) => (\n <ConnectedDocumentViewer documentId={id} artifactRuntimeUrl={artifactRuntimeUrl} />\n )}\n />\n )\n}\n"]}
@@ -1,20 +1,22 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkWI3BVKEC_cjs = require('./chunk-WI3BVKEC.cjs');
5
- require('./chunk-LFYKB7KF.cjs');
6
- require('./chunk-UCA4JLLJ.cjs');
7
- require('./chunk-7V4OCZS6.cjs');
8
- var chunkAHMRYY7J_cjs = require('./chunk-AHMRYY7J.cjs');
4
+ var chunkMNFI66H5_cjs = require('./chunk-MNFI66H5.cjs');
5
+ require('./chunk-7V6APLF7.cjs');
6
+ require('./chunk-X7GT57KW.cjs');
7
+ require('./chunk-RA3EGF6K.cjs');
8
+ var chunk6DAJXQZZ_cjs = require('./chunk-6DAJXQZZ.cjs');
9
9
  require('./chunk-4CIVQWAX.cjs');
10
10
  require('./chunk-C42WBPH4.cjs');
11
11
  require('./chunk-6NSKIS35.cjs');
12
- require('./chunk-6KQVTMRL.cjs');
12
+ require('./chunk-UOGXKHTJ.cjs');
13
13
  require('./chunk-IWLNDDPN.cjs');
14
- var chunkCRLFLMTK_cjs = require('./chunk-CRLFLMTK.cjs');
14
+ var chunkEOXA4VJH_cjs = require('./chunk-EOXA4VJH.cjs');
15
15
  require('./chunk-OKUXM2N4.cjs');
16
16
  require('./chunk-223D4727.cjs');
17
17
  require('./chunk-SNUBQMIS.cjs');
18
+ require('./chunk-EKSHUNJI.cjs');
19
+ var chunkNNBL3HPG_cjs = require('./chunk-NNBL3HPG.cjs');
18
20
  require('./chunk-YYPZOEED.cjs');
19
21
  require('./chunk-CMXJUCTH.cjs');
20
22
  require('./chunk-JH6JTI76.cjs');
@@ -24,7 +26,7 @@ require('./chunk-ZESMRGDV.cjs');
24
26
  var chunkKFCPPT65_cjs = require('./chunk-KFCPPT65.cjs');
25
27
  require('./chunk-VCEX7COE.cjs');
26
28
  require('./chunk-34HQO4ZQ.cjs');
27
- require('./chunk-PL7O3RJJ.cjs');
29
+ require('./chunk-RKBAY7GZ.cjs');
28
30
  var chunkMZZ3SBQL_cjs = require('./chunk-MZZ3SBQL.cjs');
29
31
  require('./chunk-HKGO2GUG.cjs');
30
32
  require('./chunk-7LIPW6ZK.cjs');
@@ -32,14 +34,13 @@ require('./chunk-ZPPMAL5P.cjs');
32
34
  require('./chunk-ORELHENJ.cjs');
33
35
  require('./chunk-NWNVWO6L.cjs');
34
36
  require('./chunk-SK6HQ46Q.cjs');
35
- require('./chunk-MNIQDXM6.cjs');
36
- require('./chunk-BZFCD6A6.cjs');
37
37
  require('./chunk-VLCY46K6.cjs');
38
+ require('./chunk-3YZKDCWY.cjs');
38
39
  require('./chunk-OEJQFPWO.cjs');
39
40
  require('./chunk-7JLJH5CW.cjs');
40
41
  require('./chunk-EVZH6Z5O.cjs');
41
- require('./chunk-FDNIK5YS.cjs');
42
- require('./chunk-DX3Z2COD.cjs');
42
+ require('./chunk-XBKIFGBB.cjs');
43
+ require('./chunk-HUYKO2ES.cjs');
43
44
  require('./chunk-OYXWQTHF.cjs');
44
45
  require('./chunk-S237ORM3.cjs');
45
46
  require('./chunk-II2OEXHW.cjs');
@@ -47,7 +48,9 @@ require('./chunk-4PA6VCCR.cjs');
47
48
  require('./chunk-AHDJXIUB.cjs');
48
49
  require('./chunk-RL2HI6NP.cjs');
49
50
  require('./chunk-6UZC4XVV.cjs');
51
+ require('./chunk-SJSGSHIT.cjs');
50
52
  require('./chunk-TTPJ2G3G.cjs');
53
+ require('./chunk-ZW6FPIFC.cjs');
51
54
  require('./chunk-XNXNLXIC.cjs');
52
55
  require('./chunk-CYKHYFI3.cjs');
53
56
  require('./chunk-VG24E4JJ.cjs');
@@ -55,11 +58,6 @@ require('./chunk-U2FFG2B3.cjs');
55
58
  require('./chunk-KKYNTWDU.cjs');
56
59
  require('./chunk-M74FWYNL.cjs');
57
60
  require('./chunk-VZOOGA47.cjs');
58
- require('./chunk-EKSHUNJI.cjs');
59
- var chunkNNBL3HPG_cjs = require('./chunk-NNBL3HPG.cjs');
60
- require('./chunk-3YZKDCWY.cjs');
61
- require('./chunk-SJSGSHIT.cjs');
62
- require('./chunk-ZW6FPIFC.cjs');
63
61
  require('./chunk-5F4DCIHS.cjs');
64
62
  require('./chunk-CT3SLXB7.cjs');
65
63
  require('./chunk-DEXUL3T6.cjs');
@@ -71,13 +69,15 @@ require('./chunk-KQF7POTG.cjs');
71
69
  require('./chunk-75BNMCUX.cjs');
72
70
  require('./chunk-QRAQZTJE.cjs');
73
71
  require('./chunk-UDSHVNU3.cjs');
72
+ require('./chunk-PPCATBOY.cjs');
74
73
  require('./chunk-IPSHAMO2.cjs');
75
74
  require('./chunk-FX3K6LNZ.cjs');
76
- require('./chunk-PPCATBOY.cjs');
75
+ require('./chunk-LJJJ6CYH.cjs');
76
+ require('./chunk-MNIQDXM6.cjs');
77
+ require('./chunk-BZFCD6A6.cjs');
77
78
  var chunkWGWP4ATS_cjs = require('./chunk-WGWP4ATS.cjs');
78
79
  require('./chunk-JDFBEGQO.cjs');
79
80
  require('./chunk-ULWRNGGE.cjs');
80
- require('./chunk-LJJJ6CYH.cjs');
81
81
  require('./chunk-PLIF5CUV.cjs');
82
82
  require('./chunk-DES3K4SD.cjs');
83
83
  var react$1 = require('react');
@@ -100,14 +100,14 @@ var TAB_TEST_IDS = {
100
100
  };
101
101
  function DocumentViewerDialog({
102
102
  documentId,
103
- tabs = chunkWI3BVKEC_cjs.DEFAULT_DOCUMENT_VIEWER_TABS,
103
+ tabs = chunkMNFI66H5_cjs.DEFAULT_DOCUMENT_VIEWER_TABS,
104
104
  initialTab,
105
105
  labels: labelOverrides,
106
- askSuggestions = chunkWI3BVKEC_cjs.DEFAULT_ASK_SUGGESTIONS,
106
+ askSuggestions = chunkMNFI66H5_cjs.DEFAULT_ASK_SUGGESTIONS,
107
107
  onClose,
108
108
  renderDocument
109
109
  }) {
110
- const labels = { ...chunkWI3BVKEC_cjs.DEFAULT_DOCUMENT_VIEWER_LABELS, ...labelOverrides };
110
+ const labels = { ...chunkMNFI66H5_cjs.DEFAULT_DOCUMENT_VIEWER_LABELS, ...labelOverrides };
111
111
  const { workspaceId, live } = chunkNNBL3HPG_cjs.useConnectedWorkspace();
112
112
  const session = react.useArbiSessionStore();
113
113
  const { openNewConversation } = chunkWGWP4ATS_cjs.useBlocksEnvironment();
@@ -132,7 +132,7 @@ function DocumentViewerDialog({
132
132
  };
133
133
  const [question, setQuestion] = react$1.useState("");
134
134
  const askInputRef = react$1.useRef(null);
135
- const slash = chunkWI3BVKEC_cjs.useSlashField({
135
+ const slash = chunkMNFI66H5_cjs.useSlashField({
136
136
  text: question,
137
137
  setText: setQuestion,
138
138
  inputRef: askInputRef,
@@ -156,7 +156,7 @@ function DocumentViewerDialog({
156
156
  title
157
157
  ] }),
158
158
  options.length > 1 && tab && /* @__PURE__ */ jsxRuntime.jsx(
159
- chunkCRLFLMTK_cjs.SegmentedControl,
159
+ chunkEOXA4VJH_cjs.SegmentedControl,
160
160
  {
161
161
  ariaLabel: "Document view",
162
162
  className: "mt-2 w-fit max-w-full overflow-x-auto [&_button]:whitespace-nowrap max-sm:[&_button]:px-2.5",
@@ -216,11 +216,11 @@ function FilesViewerDialog({ artifactRuntimeUrl, ...props }) {
216
216
  DocumentViewerDialog,
217
217
  {
218
218
  ...props,
219
- renderDocument: (id) => /* @__PURE__ */ jsxRuntime.jsx(chunkAHMRYY7J_cjs.ConnectedDocumentViewer, { documentId: id, artifactRuntimeUrl })
219
+ renderDocument: (id) => /* @__PURE__ */ jsxRuntime.jsx(chunk6DAJXQZZ_cjs.ConnectedDocumentViewer, { documentId: id, artifactRuntimeUrl })
220
220
  }
221
221
  );
222
222
  }
223
223
 
224
224
  exports.FilesViewerDialog = FilesViewerDialog;
225
- //# sourceMappingURL=FilesViewerDialog-UP7GFHYN.cjs.map
226
- //# sourceMappingURL=FilesViewerDialog-UP7GFHYN.cjs.map
225
+ //# sourceMappingURL=FilesViewerDialog-VIPTC6OT.cjs.map
226
+ //# sourceMappingURL=FilesViewerDialog-VIPTC6OT.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/connection/viewer/DocumentViewerDialog.tsx","../src/connection/files/page/FilesViewerDialog.tsx"],"names":["jsx","Eye","PenLine","MessageSquareText","DEFAULT_DOCUMENT_VIEWER_TABS","DEFAULT_ASK_SUGGESTIONS","DEFAULT_DOCUMENT_VIEWER_LABELS","useConnectedWorkspace","useArbiSessionStore","useBlocksEnvironment","useArbiSessionState","useDocuments","parseVersionRef","tab","useState","question","useRef","useSlashField","Dialog","jsxs","DialogContent","DialogHeader","DialogTitle","FileText","DialogDescription","SegmentedControl","ErrorBoundary","DocumentReview","AskBar","ConnectedDocumentViewer"],"mappings":"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","file":"FilesViewerDialog-UP7GFHYN.cjs","sourcesContent":["/**\n * The document viewer as a dialog (the files page's own viewer): a title, the tabs\n * the host offers, and under them the review (`DocumentReview`), the whole viewer, or a question\n * (`AskBar`) that starts a thread about the document. Views of existing parts, not a new viewer.\n *\n * A draft started with Create New (the session's `draftDocuments`) has no server record yet: it\n * shows the whole viewer only (its kind, name and recorder), titled from the draft.\n */\n\nimport { useRef, useState, type ReactNode } from 'react'\nimport { Eye, FileText, MessageSquareText, PenLine } from 'lucide-react'\nimport {\n DocumentReview,\n useArbiSessionState,\n useArbiSessionStore,\n useDocuments,\n type WorkspaceDocument,\n} from '@arbidocs/react'\nimport { parseVersionRef } from '@arbidocs/react/artifacts'\nimport {\n Dialog,\n DialogContent,\n DialogDescription,\n DialogHeader,\n DialogTitle,\n} from '@arbidocs/react/ui'\nimport { AskBar } from '../../components/AskBar'\nimport { ErrorBoundary } from '../../components/ErrorBoundary'\nimport { SegmentedControl, type SegmentedOption } from '../../settings/SegmentedControl'\nimport { useBlocksEnvironment } from '../../provider/environment'\nimport { useConnectedWorkspace } from '../ConnectionProvider'\nimport { useSlashField } from '../ask/useSlashField'\nimport {\n DEFAULT_ASK_SUGGESTIONS,\n DEFAULT_DOCUMENT_VIEWER_LABELS,\n DEFAULT_DOCUMENT_VIEWER_TABS,\n type DocumentViewerDialogLabels,\n type DocumentViewerTab,\n} from './documentViewerTabs'\n\ntype ReviewDocument = Parameters<typeof DocumentReview>[0]['doc']\n\nexport interface DocumentViewerDialogProps {\n /** The document, or a version reference `doc-…@v{n}`. */\n documentId: string\n /** The views offered, in order. Default: review, document, ask. */\n tabs?: readonly DocumentViewerTab[]\n /** The view it opens on. Default: the first offered. */\n initialTab?: DocumentViewerTab\n labels?: DocumentViewerDialogLabels\n /** The ask view's suggested questions. */\n askSuggestions?: readonly string[]\n onClose: () => void\n /** The whole viewer, for the document view. */\n renderDocument: (documentId: string) => ReactNode\n}\n\nconst titleOf = (doc: WorkspaceDocument | undefined) =>\n doc?.doc_metadata?.title || doc?.file_name || 'Document'\n\nconst TAB_ICONS: Record<DocumentViewerTab, ReactNode> = {\n review: <Eye className=\"size-4\" />,\n document: <PenLine className=\"size-4\" />,\n ask: <MessageSquareText className=\"size-4\" />,\n}\n\nconst TAB_TEST_IDS: Record<DocumentViewerTab, string> = {\n review: 'review-tab-review',\n document: 'review-tab-pdf',\n ask: 'review-tab-qa',\n}\n\nexport function DocumentViewerDialog({\n documentId,\n tabs = DEFAULT_DOCUMENT_VIEWER_TABS,\n initialTab,\n labels: labelOverrides,\n askSuggestions = DEFAULT_ASK_SUGGESTIONS,\n onClose,\n renderDocument,\n}: DocumentViewerDialogProps) {\n const labels = { ...DEFAULT_DOCUMENT_VIEWER_LABELS, ...labelOverrides }\n const { workspaceId, live } = useConnectedWorkspace()\n const session = useArbiSessionStore()\n const { openNewConversation } = useBlocksEnvironment()\n const passageId = useArbiSessionState((s) => s.viewingDocument?.passageId ?? null)\n const draft = useArbiSessionState((s) => s.draftDocuments[documentId])\n const { data: documents } = useDocuments()\n const baseId = parseVersionRef(documentId).docId\n const doc = documents?.find((d) => d.external_id === baseId)\n const title = draft?.title || titleOf(doc)\n\n // The whole viewer needs a signed-in session (marking up, signing, versions). A draft is only\n // on the client: there is nothing to review or ask about until it is saved.\n const offered: readonly DocumentViewerTab[] = draft\n ? ['document']\n : tabs.filter((tab) => tab !== 'document' || live)\n const [chosen, setChosen] = useState<DocumentViewerTab | undefined>(initialTab)\n const tab = chosen && offered.includes(chosen) ? chosen : offered[0]\n\n const options: SegmentedOption<DocumentViewerTab>[] = offered.map((value) => ({\n value,\n label: labels[value],\n icon: TAB_ICONS[value],\n testId: TAB_TEST_IDS[value],\n }))\n\n // A question opens a new thread about the document, as the viewer's \"Chat\" does.\n const ask = (question: string) => {\n openNewConversation({ prompt: question })\n session.setNewChatDocumentId(baseId)\n }\n // The `/` menu: a skill's run is asked the same way, so its thread is about this document too.\n const [question, setQuestion] = useState('')\n const askInputRef = useRef<HTMLInputElement>(null)\n const slash = useSlashField({\n text: question,\n setText: setQuestion,\n inputRef: askInputRef,\n landing: 'chat',\n send: ask,\n })\n\n return (\n <Dialog open onOpenChange={(open) => !open && onClose()}>\n <DialogContent\n className=\"flex h-[90vh] max-w-[95vw] flex-col gap-0 p-0 sm:max-w-[95vw]\"\n data-testid=\"documents-dialog\"\n >\n <DialogHeader className=\"border-b px-4 py-3\">\n <DialogTitle className=\"flex min-w-0 items-center gap-2 pr-8 text-base\">\n <FileText className=\"size-4 shrink-0\" />\n <span className=\"truncate\" data-testid=\"documents-dialog-title\">\n {title}\n </span>\n </DialogTitle>\n <DialogDescription className=\"sr-only\">\n {offered.map((value) => labels[value]).join(', ')}: {title}\n </DialogDescription>\n {options.length > 1 && tab && (\n <SegmentedControl\n ariaLabel=\"Document view\"\n // A phone fits the three on one row: no label breaks over two lines.\n className=\"mt-2 w-fit max-w-full overflow-x-auto [&_button]:whitespace-nowrap max-sm:[&_button]:px-2.5\"\n value={tab}\n onChange={setChosen}\n options={options}\n />\n )}\n </DialogHeader>\n <div className=\"min-h-0 flex-1 overflow-hidden p-3\">\n {/* A view that fails to render says so here: the dialog and the page under it stay. */}\n <ErrorBoundary\n resetKey={`${documentId}|${tab}`}\n labels={{ title: \"This document couldn't be displayed\" }}\n testId=\"documents-dialog-error\"\n >\n {tab === 'review' && (\n <DocumentReview\n docId={baseId}\n doc={doc as ReviewDocument}\n workspaceId={workspaceId ?? undefined}\n activeChunkId={passageId}\n />\n )}\n {tab === 'document' && (\n <div className=\"h-full overflow-hidden\" data-testid=\"documents-dialog-viewer\">\n {renderDocument(documentId)}\n </div>\n )}\n {tab === 'ask' && (\n <div className=\"mx-auto max-w-2xl space-y-3 pt-6\" data-testid=\"doc-qa-panel\">\n <p className=\"text-sm text-muted-foreground\">{labels.askIntro}</p>\n {slash.launcher}\n <AskBar\n testId=\"doc-ask\"\n placeholder={labels.askPlaceholder.replace('{title}', title)}\n suggestions={[...askSuggestions]}\n onAsk={(text) => {\n if (!slash.startsSkill(text)) ask(text)\n }}\n value={question}\n onValueChange={setQuestion}\n onInputKeyDown={slash.onKeyDown}\n inputProps={slash.comboboxProps}\n inputRef={askInputRef}\n menu={slash.menu}\n />\n </div>\n )}\n </ErrorBoundary>\n </div>\n </DialogContent>\n </Dialog>\n )\n}\n","/**\n * The files page's own viewer (a page without a host viewer): `DocumentViewerDialog`, with the\n * whole `ConnectedDocumentViewer` as its document view. The page lazy-loads this module, so the\n * viewer stays out of the page's chunk.\n */\nimport { ConnectedDocumentViewer } from '../../viewer/ConnectedDocumentViewer'\nimport {\n DocumentViewerDialog,\n type DocumentViewerDialogProps,\n} from '../../viewer/DocumentViewerDialog'\n\nexport interface FilesViewerDialogProps extends Omit<DocumentViewerDialogProps, 'renderDocument'> {\n /** Where html/react artifacts load their sandbox runtime from. */\n artifactRuntimeUrl?: string\n}\n\nexport function FilesViewerDialog({ artifactRuntimeUrl, ...props }: FilesViewerDialogProps) {\n return (\n <DocumentViewerDialog\n {...props}\n renderDocument={(id) => (\n <ConnectedDocumentViewer documentId={id} artifactRuntimeUrl={artifactRuntimeUrl} />\n )}\n />\n )\n}\n"]}
1
+ {"version":3,"sources":["../src/connection/viewer/DocumentViewerDialog.tsx","../src/connection/files/page/FilesViewerDialog.tsx"],"names":["jsx","Eye","PenLine","MessageSquareText","DEFAULT_DOCUMENT_VIEWER_TABS","DEFAULT_ASK_SUGGESTIONS","DEFAULT_DOCUMENT_VIEWER_LABELS","useConnectedWorkspace","useArbiSessionStore","useBlocksEnvironment","useArbiSessionState","useDocuments","parseVersionRef","tab","useState","question","useRef","useSlashField","Dialog","jsxs","DialogContent","DialogHeader","DialogTitle","FileText","DialogDescription","SegmentedControl","ErrorBoundary","DocumentReview","AskBar","ConnectedDocumentViewer"],"mappings":"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","file":"FilesViewerDialog-VIPTC6OT.cjs","sourcesContent":["/**\n * The document viewer as a dialog (the files page's own viewer): a title, the tabs\n * the host offers, and under them the review (`DocumentReview`), the whole viewer, or a question\n * (`AskBar`) that starts a thread about the document. Views of existing parts, not a new viewer.\n *\n * A draft started with Create New (the session's `draftDocuments`) has no server record yet: it\n * shows the whole viewer only (its kind, name and recorder), titled from the draft.\n */\n\nimport { useRef, useState, type ReactNode } from 'react'\nimport { Eye, FileText, MessageSquareText, PenLine } from 'lucide-react'\nimport {\n DocumentReview,\n useArbiSessionState,\n useArbiSessionStore,\n useDocuments,\n type WorkspaceDocument,\n} from '@arbidocs/react'\nimport { parseVersionRef } from '@arbidocs/react/artifacts'\nimport {\n Dialog,\n DialogContent,\n DialogDescription,\n DialogHeader,\n DialogTitle,\n} from '@arbidocs/react/ui'\nimport { AskBar } from '../../components/AskBar'\nimport { ErrorBoundary } from '../../components/ErrorBoundary'\nimport { SegmentedControl, type SegmentedOption } from '../../settings/SegmentedControl'\nimport { useBlocksEnvironment } from '../../provider/environment'\nimport { useConnectedWorkspace } from '../ConnectionProvider'\nimport { useSlashField } from '../ask/useSlashField'\nimport {\n DEFAULT_ASK_SUGGESTIONS,\n DEFAULT_DOCUMENT_VIEWER_LABELS,\n DEFAULT_DOCUMENT_VIEWER_TABS,\n type DocumentViewerDialogLabels,\n type DocumentViewerTab,\n} from './documentViewerTabs'\n\ntype ReviewDocument = Parameters<typeof DocumentReview>[0]['doc']\n\nexport interface DocumentViewerDialogProps {\n /** The document, or a version reference `doc-…@v{n}`. */\n documentId: string\n /** The views offered, in order. Default: review, document, ask. */\n tabs?: readonly DocumentViewerTab[]\n /** The view it opens on. Default: the first offered. */\n initialTab?: DocumentViewerTab\n labels?: DocumentViewerDialogLabels\n /** The ask view's suggested questions. */\n askSuggestions?: readonly string[]\n onClose: () => void\n /** The whole viewer, for the document view. */\n renderDocument: (documentId: string) => ReactNode\n}\n\nconst titleOf = (doc: WorkspaceDocument | undefined) =>\n doc?.doc_metadata?.title || doc?.file_name || 'Document'\n\nconst TAB_ICONS: Record<DocumentViewerTab, ReactNode> = {\n review: <Eye className=\"size-4\" />,\n document: <PenLine className=\"size-4\" />,\n ask: <MessageSquareText className=\"size-4\" />,\n}\n\nconst TAB_TEST_IDS: Record<DocumentViewerTab, string> = {\n review: 'review-tab-review',\n document: 'review-tab-pdf',\n ask: 'review-tab-qa',\n}\n\nexport function DocumentViewerDialog({\n documentId,\n tabs = DEFAULT_DOCUMENT_VIEWER_TABS,\n initialTab,\n labels: labelOverrides,\n askSuggestions = DEFAULT_ASK_SUGGESTIONS,\n onClose,\n renderDocument,\n}: DocumentViewerDialogProps) {\n const labels = { ...DEFAULT_DOCUMENT_VIEWER_LABELS, ...labelOverrides }\n const { workspaceId, live } = useConnectedWorkspace()\n const session = useArbiSessionStore()\n const { openNewConversation } = useBlocksEnvironment()\n const passageId = useArbiSessionState((s) => s.viewingDocument?.passageId ?? null)\n const draft = useArbiSessionState((s) => s.draftDocuments[documentId])\n const { data: documents } = useDocuments()\n const baseId = parseVersionRef(documentId).docId\n const doc = documents?.find((d) => d.external_id === baseId)\n const title = draft?.title || titleOf(doc)\n\n // The whole viewer needs a signed-in session (marking up, signing, versions). A draft is only\n // on the client: there is nothing to review or ask about until it is saved.\n const offered: readonly DocumentViewerTab[] = draft\n ? ['document']\n : tabs.filter((tab) => tab !== 'document' || live)\n const [chosen, setChosen] = useState<DocumentViewerTab | undefined>(initialTab)\n const tab = chosen && offered.includes(chosen) ? chosen : offered[0]\n\n const options: SegmentedOption<DocumentViewerTab>[] = offered.map((value) => ({\n value,\n label: labels[value],\n icon: TAB_ICONS[value],\n testId: TAB_TEST_IDS[value],\n }))\n\n // A question opens a new thread about the document, as the viewer's \"Chat\" does.\n const ask = (question: string) => {\n openNewConversation({ prompt: question })\n session.setNewChatDocumentId(baseId)\n }\n // The `/` menu: a skill's run is asked the same way, so its thread is about this document too.\n const [question, setQuestion] = useState('')\n const askInputRef = useRef<HTMLInputElement>(null)\n const slash = useSlashField({\n text: question,\n setText: setQuestion,\n inputRef: askInputRef,\n landing: 'chat',\n send: ask,\n })\n\n return (\n <Dialog open onOpenChange={(open) => !open && onClose()}>\n <DialogContent\n className=\"flex h-[90vh] max-w-[95vw] flex-col gap-0 p-0 sm:max-w-[95vw]\"\n data-testid=\"documents-dialog\"\n >\n <DialogHeader className=\"border-b px-4 py-3\">\n <DialogTitle className=\"flex min-w-0 items-center gap-2 pr-8 text-base\">\n <FileText className=\"size-4 shrink-0\" />\n <span className=\"truncate\" data-testid=\"documents-dialog-title\">\n {title}\n </span>\n </DialogTitle>\n <DialogDescription className=\"sr-only\">\n {offered.map((value) => labels[value]).join(', ')}: {title}\n </DialogDescription>\n {options.length > 1 && tab && (\n <SegmentedControl\n ariaLabel=\"Document view\"\n // A phone fits the three on one row: no label breaks over two lines.\n className=\"mt-2 w-fit max-w-full overflow-x-auto [&_button]:whitespace-nowrap max-sm:[&_button]:px-2.5\"\n value={tab}\n onChange={setChosen}\n options={options}\n />\n )}\n </DialogHeader>\n <div className=\"min-h-0 flex-1 overflow-hidden p-3\">\n {/* A view that fails to render says so here: the dialog and the page under it stay. */}\n <ErrorBoundary\n resetKey={`${documentId}|${tab}`}\n labels={{ title: \"This document couldn't be displayed\" }}\n testId=\"documents-dialog-error\"\n >\n {tab === 'review' && (\n <DocumentReview\n docId={baseId}\n doc={doc as ReviewDocument}\n workspaceId={workspaceId ?? undefined}\n activeChunkId={passageId}\n />\n )}\n {tab === 'document' && (\n <div className=\"h-full overflow-hidden\" data-testid=\"documents-dialog-viewer\">\n {renderDocument(documentId)}\n </div>\n )}\n {tab === 'ask' && (\n <div className=\"mx-auto max-w-2xl space-y-3 pt-6\" data-testid=\"doc-qa-panel\">\n <p className=\"text-sm text-muted-foreground\">{labels.askIntro}</p>\n {slash.launcher}\n <AskBar\n testId=\"doc-ask\"\n placeholder={labels.askPlaceholder.replace('{title}', title)}\n suggestions={[...askSuggestions]}\n onAsk={(text) => {\n if (!slash.startsSkill(text)) ask(text)\n }}\n value={question}\n onValueChange={setQuestion}\n onInputKeyDown={slash.onKeyDown}\n inputProps={slash.comboboxProps}\n inputRef={askInputRef}\n menu={slash.menu}\n />\n </div>\n )}\n </ErrorBoundary>\n </div>\n </DialogContent>\n </Dialog>\n )\n}\n","/**\n * The files page's own viewer (a page without a host viewer): `DocumentViewerDialog`, with the\n * whole `ConnectedDocumentViewer` as its document view. The page lazy-loads this module, so the\n * viewer stays out of the page's chunk.\n */\nimport { ConnectedDocumentViewer } from '../../viewer/ConnectedDocumentViewer'\nimport {\n DocumentViewerDialog,\n type DocumentViewerDialogProps,\n} from '../../viewer/DocumentViewerDialog'\n\nexport interface FilesViewerDialogProps extends Omit<DocumentViewerDialogProps, 'renderDocument'> {\n /** Where html/react artifacts load their sandbox runtime from. */\n artifactRuntimeUrl?: string\n}\n\nexport function FilesViewerDialog({ artifactRuntimeUrl, ...props }: FilesViewerDialogProps) {\n return (\n <DocumentViewerDialog\n {...props}\n renderDocument={(id) => (\n <ConnectedDocumentViewer documentId={id} artifactRuntimeUrl={artifactRuntimeUrl} />\n )}\n />\n )\n}\n"]}
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkZMVF7EYJ_cjs = require('./chunk-ZMVF7EYJ.cjs');
4
+ var chunkPBPO54KZ_cjs = require('./chunk-PBPO54KZ.cjs');
5
5
  require('./chunk-DES3K4SD.cjs');
6
6
  var recharts = require('recharts');
7
7
  var jsxRuntime = require('react/jsx-runtime');
@@ -58,7 +58,7 @@ function RechartsRenderer({
58
58
  }
59
59
  );
60
60
  if (model.type === "pie" || model.type === "donut") {
61
- const colors = chunkZMVF7EYJ_cjs.sliceColors(model, otherLabel);
61
+ const colors = chunkPBPO54KZ_cjs.sliceColors(model, otherLabel);
62
62
  const data2 = model.categories.map((name, i) => ({
63
63
  name,
64
64
  value: Math.max(model.series[0]?.values[i] ?? 0, 0)
@@ -108,7 +108,8 @@ function RechartsRenderer({
108
108
  tick: AXIS_TICK,
109
109
  tickLine: false,
110
110
  axisLine: false,
111
- width: 48,
111
+ width: chunkPBPO54KZ_cjs.valueAxisWidth(model),
112
+ allowDecimals: !model.integer,
112
113
  tickFormatter: (v) => model.formatTick(v)
113
114
  }
114
115
  ),
@@ -181,5 +182,5 @@ function RechartsRenderer({
181
182
  }
182
183
 
183
184
  module.exports = RechartsRenderer;
184
- //# sourceMappingURL=RechartsRenderer-GIRCW7DB.cjs.map
185
- //# sourceMappingURL=RechartsRenderer-GIRCW7DB.cjs.map
185
+ //# sourceMappingURL=RechartsRenderer-THES2SE5.cjs.map
186
+ //# sourceMappingURL=RechartsRenderer-THES2SE5.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/dashboards/RechartsRenderer.tsx"],"names":["jsxs","jsx","Tooltip","sliceColors","data","PieChart","Pie","Cell","Fragment","CartesianGrid","XAxis","YAxis","valueAxisWidth","BarChart","Bar","AreaChart","Area","LineChart","Line"],"mappings":"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","file":"RechartsRenderer-THES2SE5.cjs","sourcesContent":["/**\n * The renderer adapter's second half: a `ChartModel` drawn with Recharts (MIT). Loaded on demand\n * (`ChartRenderer` imports it lazily), so the library is fetched only when a chart is shown. Nothing\n * of Recharts leaves this file: the props are the package's own `ChartModel`.\n *\n * Colours are the theme's `--chart-1..5` tokens and the axes, grid and tooltip use the theme's\n * surface and text tokens, so a chart follows the host theme in light and dark. Recharts'\n * accessibility layer makes the plot focusable: the arrow keys move the tooltip between categories.\n */\nimport {\n Area,\n AreaChart,\n Bar,\n BarChart,\n CartesianGrid,\n Cell,\n Line,\n LineChart,\n Pie,\n PieChart,\n Tooltip,\n XAxis,\n YAxis,\n} from 'recharts'\nimport { sliceColors, valueAxisWidth, type ChartModel } from './chartModel'\n\nexport interface RechartsRendererProps {\n model: ChartModel\n ariaLabel: string\n height: number\n otherLabel?: string\n}\n\nconst AXIS_TICK = { fill: 'hsl(var(--muted-foreground))', fontSize: 11 }\nconst MARGIN = { top: 8, right: 8, bottom: 0, left: 0 }\n\ninterface TooltipEntry {\n name?: string | number\n value?: unknown\n color?: string\n payload?: { fill?: string }\n}\n\n/** What the library hands a tooltip's content (the part this renderer reads). */\ninterface TooltipContent {\n active?: boolean\n label?: unknown\n payload?: readonly unknown[]\n}\n\n/** The tooltip, in the theme's popover colours (never the library's white box in dark mode). */\nfunction ChartTooltip({\n active,\n label,\n payload,\n format,\n}: {\n active?: boolean\n label?: unknown\n payload?: readonly TooltipEntry[]\n format: (v: number) => string\n}) {\n if (!active || !payload?.length) return null\n return (\n <div className=\"rounded-md border border-border bg-popover px-2 py-1 text-xs text-popover-foreground shadow-md\">\n {label !== undefined && label !== '' && (\n <div className=\"mb-0.5 font-medium\">{String(label)}</div>\n )}\n {payload.map((entry, i) => (\n <div key={i} className=\"flex items-center gap-1.5\">\n <span\n aria-hidden=\"true\"\n className=\"inline-block size-2 rounded-full\"\n style={{ background: entry.color ?? entry.payload?.fill }}\n />\n <span className=\"text-muted-foreground\">{String(entry.name ?? '')}</span>\n <span className=\"ml-auto pl-2 font-medium tabular-nums\">\n {typeof entry.value === 'number' ? format(entry.value) : '–'}\n </span>\n </div>\n ))}\n </div>\n )\n}\n\nexport default function RechartsRenderer({\n model,\n ariaLabel,\n height,\n otherLabel,\n}: RechartsRendererProps) {\n const style = { width: '100%', height }\n const tooltip = (\n <Tooltip\n cursor={{\n fill: 'hsl(var(--muted))',\n stroke: 'hsl(var(--muted-foreground))',\n strokeDasharray: '3 3',\n }}\n content={({ active, label, payload }: TooltipContent) => (\n <ChartTooltip\n active={active}\n label={label}\n payload={payload as readonly TooltipEntry[] | undefined}\n format={model.format}\n />\n )}\n />\n )\n\n if (model.type === 'pie' || model.type === 'donut') {\n const colors = sliceColors(model, otherLabel)\n const data = model.categories.map((name, i) => ({\n name,\n value: Math.max(model.series[0]?.values[i] ?? 0, 0),\n }))\n return (\n <PieChart responsive style={style} accessibilityLayer title={ariaLabel} desc={ariaLabel}>\n <Pie\n data={data}\n dataKey=\"value\"\n nameKey=\"name\"\n innerRadius={model.type === 'donut' ? '55%' : 0}\n outerRadius=\"85%\"\n stroke=\"hsl(var(--card))\"\n strokeWidth={2}\n isAnimationActive={false}\n >\n {data.map((d, i) => (\n <Cell key={d.name} fill={colors[i]} />\n ))}\n </Pie>\n {tooltip}\n </PieChart>\n )\n }\n\n // Series keys are positional: labels may hold dots, which the library reads as paths.\n const data = model.categories.map((category, i) => {\n const row: Record<string, string | number | null> = { category }\n model.series.forEach((s, si) => {\n row[`s${si}`] = s.values[i]\n })\n return row\n })\n const stackId = model.stacked ? 'stack' : undefined\n const axes = (\n <>\n <CartesianGrid vertical={false} stroke=\"hsl(var(--border))\" strokeDasharray=\"2 2\" />\n <XAxis\n dataKey=\"category\"\n tick={AXIS_TICK}\n tickLine={false}\n axisLine={{ stroke: 'hsl(var(--border))' }}\n interval=\"preserveStartEnd\"\n minTickGap={8}\n />\n <YAxis\n tick={AXIS_TICK}\n tickLine={false}\n axisLine={false}\n width={valueAxisWidth(model)}\n allowDecimals={!model.integer}\n tickFormatter={(v: number) => model.formatTick(v)}\n />\n {tooltip}\n </>\n )\n const common = {\n data,\n responsive: true,\n style,\n margin: MARGIN,\n accessibilityLayer: true,\n title: ariaLabel,\n desc: ariaLabel,\n }\n\n if (model.type === 'bar') {\n return (\n <BarChart {...common}>\n {axes}\n {model.series.map((s, si) => (\n <Bar\n key={s.id}\n dataKey={`s${si}`}\n name={s.label}\n fill={s.color}\n stackId={stackId}\n radius={model.stacked ? 0 : [3, 3, 0, 0]}\n maxBarSize={48}\n isAnimationActive={false}\n />\n ))}\n </BarChart>\n )\n }\n if (model.type === 'area') {\n return (\n <AreaChart {...common}>\n {axes}\n {model.series.map((s, si) => (\n <Area\n key={s.id}\n type=\"monotone\"\n dataKey={`s${si}`}\n name={s.label}\n stroke={s.color}\n fill={s.color}\n fillOpacity={model.stacked ? 0.55 : 0.2}\n strokeWidth={2}\n stackId={stackId}\n isAnimationActive={false}\n />\n ))}\n </AreaChart>\n )\n }\n return (\n <LineChart {...common}>\n {axes}\n {model.series.map((s, si) => (\n <Line\n key={s.id}\n type=\"monotone\"\n dataKey={`s${si}`}\n name={s.label}\n stroke={s.color}\n strokeWidth={2}\n dot={model.categories.length <= 12 ? { r: 3, fill: s.color, strokeWidth: 0 } : false}\n activeDot={{ r: 4 }}\n isAnimationActive={false}\n />\n ))}\n </LineChart>\n )\n}\n"]}
@@ -1,7 +1,7 @@
1
1
  "use client";
2
- import { sliceColors } from './chunk-FPOKWML2.js';
2
+ import { sliceColors, valueAxisWidth } from './chunk-MIVNNQO3.js';
3
3
  import './chunk-VUNV25KB.js';
4
- import { PieChart, Pie, Cell, BarChart, Bar, AreaChart, Area, LineChart, Line, Tooltip, CartesianGrid, XAxis, YAxis } from 'recharts';
4
+ import { PieChart, Pie, Cell, CartesianGrid, XAxis, YAxis, BarChart, Bar, AreaChart, Area, LineChart, Line, Tooltip } from 'recharts';
5
5
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
6
6
 
7
7
  var AXIS_TICK = { fill: "hsl(var(--muted-foreground))", fontSize: 11 };
@@ -106,7 +106,8 @@ function RechartsRenderer({
106
106
  tick: AXIS_TICK,
107
107
  tickLine: false,
108
108
  axisLine: false,
109
- width: 48,
109
+ width: valueAxisWidth(model),
110
+ allowDecimals: !model.integer,
110
111
  tickFormatter: (v) => model.formatTick(v)
111
112
  }
112
113
  ),
@@ -179,5 +180,5 @@ function RechartsRenderer({
179
180
  }
180
181
 
181
182
  export { RechartsRenderer as default };
182
- //# sourceMappingURL=RechartsRenderer-23OF4H6X.js.map
183
- //# sourceMappingURL=RechartsRenderer-23OF4H6X.js.map
183
+ //# sourceMappingURL=RechartsRenderer-XIZLV6GH.js.map
184
+ //# sourceMappingURL=RechartsRenderer-XIZLV6GH.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/dashboards/RechartsRenderer.tsx"],"names":["data"],"mappings":"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","file":"RechartsRenderer-XIZLV6GH.js","sourcesContent":["/**\n * The renderer adapter's second half: a `ChartModel` drawn with Recharts (MIT). Loaded on demand\n * (`ChartRenderer` imports it lazily), so the library is fetched only when a chart is shown. Nothing\n * of Recharts leaves this file: the props are the package's own `ChartModel`.\n *\n * Colours are the theme's `--chart-1..5` tokens and the axes, grid and tooltip use the theme's\n * surface and text tokens, so a chart follows the host theme in light and dark. Recharts'\n * accessibility layer makes the plot focusable: the arrow keys move the tooltip between categories.\n */\nimport {\n Area,\n AreaChart,\n Bar,\n BarChart,\n CartesianGrid,\n Cell,\n Line,\n LineChart,\n Pie,\n PieChart,\n Tooltip,\n XAxis,\n YAxis,\n} from 'recharts'\nimport { sliceColors, valueAxisWidth, type ChartModel } from './chartModel'\n\nexport interface RechartsRendererProps {\n model: ChartModel\n ariaLabel: string\n height: number\n otherLabel?: string\n}\n\nconst AXIS_TICK = { fill: 'hsl(var(--muted-foreground))', fontSize: 11 }\nconst MARGIN = { top: 8, right: 8, bottom: 0, left: 0 }\n\ninterface TooltipEntry {\n name?: string | number\n value?: unknown\n color?: string\n payload?: { fill?: string }\n}\n\n/** What the library hands a tooltip's content (the part this renderer reads). */\ninterface TooltipContent {\n active?: boolean\n label?: unknown\n payload?: readonly unknown[]\n}\n\n/** The tooltip, in the theme's popover colours (never the library's white box in dark mode). */\nfunction ChartTooltip({\n active,\n label,\n payload,\n format,\n}: {\n active?: boolean\n label?: unknown\n payload?: readonly TooltipEntry[]\n format: (v: number) => string\n}) {\n if (!active || !payload?.length) return null\n return (\n <div className=\"rounded-md border border-border bg-popover px-2 py-1 text-xs text-popover-foreground shadow-md\">\n {label !== undefined && label !== '' && (\n <div className=\"mb-0.5 font-medium\">{String(label)}</div>\n )}\n {payload.map((entry, i) => (\n <div key={i} className=\"flex items-center gap-1.5\">\n <span\n aria-hidden=\"true\"\n className=\"inline-block size-2 rounded-full\"\n style={{ background: entry.color ?? entry.payload?.fill }}\n />\n <span className=\"text-muted-foreground\">{String(entry.name ?? '')}</span>\n <span className=\"ml-auto pl-2 font-medium tabular-nums\">\n {typeof entry.value === 'number' ? format(entry.value) : '–'}\n </span>\n </div>\n ))}\n </div>\n )\n}\n\nexport default function RechartsRenderer({\n model,\n ariaLabel,\n height,\n otherLabel,\n}: RechartsRendererProps) {\n const style = { width: '100%', height }\n const tooltip = (\n <Tooltip\n cursor={{\n fill: 'hsl(var(--muted))',\n stroke: 'hsl(var(--muted-foreground))',\n strokeDasharray: '3 3',\n }}\n content={({ active, label, payload }: TooltipContent) => (\n <ChartTooltip\n active={active}\n label={label}\n payload={payload as readonly TooltipEntry[] | undefined}\n format={model.format}\n />\n )}\n />\n )\n\n if (model.type === 'pie' || model.type === 'donut') {\n const colors = sliceColors(model, otherLabel)\n const data = model.categories.map((name, i) => ({\n name,\n value: Math.max(model.series[0]?.values[i] ?? 0, 0),\n }))\n return (\n <PieChart responsive style={style} accessibilityLayer title={ariaLabel} desc={ariaLabel}>\n <Pie\n data={data}\n dataKey=\"value\"\n nameKey=\"name\"\n innerRadius={model.type === 'donut' ? '55%' : 0}\n outerRadius=\"85%\"\n stroke=\"hsl(var(--card))\"\n strokeWidth={2}\n isAnimationActive={false}\n >\n {data.map((d, i) => (\n <Cell key={d.name} fill={colors[i]} />\n ))}\n </Pie>\n {tooltip}\n </PieChart>\n )\n }\n\n // Series keys are positional: labels may hold dots, which the library reads as paths.\n const data = model.categories.map((category, i) => {\n const row: Record<string, string | number | null> = { category }\n model.series.forEach((s, si) => {\n row[`s${si}`] = s.values[i]\n })\n return row\n })\n const stackId = model.stacked ? 'stack' : undefined\n const axes = (\n <>\n <CartesianGrid vertical={false} stroke=\"hsl(var(--border))\" strokeDasharray=\"2 2\" />\n <XAxis\n dataKey=\"category\"\n tick={AXIS_TICK}\n tickLine={false}\n axisLine={{ stroke: 'hsl(var(--border))' }}\n interval=\"preserveStartEnd\"\n minTickGap={8}\n />\n <YAxis\n tick={AXIS_TICK}\n tickLine={false}\n axisLine={false}\n width={valueAxisWidth(model)}\n allowDecimals={!model.integer}\n tickFormatter={(v: number) => model.formatTick(v)}\n />\n {tooltip}\n </>\n )\n const common = {\n data,\n responsive: true,\n style,\n margin: MARGIN,\n accessibilityLayer: true,\n title: ariaLabel,\n desc: ariaLabel,\n }\n\n if (model.type === 'bar') {\n return (\n <BarChart {...common}>\n {axes}\n {model.series.map((s, si) => (\n <Bar\n key={s.id}\n dataKey={`s${si}`}\n name={s.label}\n fill={s.color}\n stackId={stackId}\n radius={model.stacked ? 0 : [3, 3, 0, 0]}\n maxBarSize={48}\n isAnimationActive={false}\n />\n ))}\n </BarChart>\n )\n }\n if (model.type === 'area') {\n return (\n <AreaChart {...common}>\n {axes}\n {model.series.map((s, si) => (\n <Area\n key={s.id}\n type=\"monotone\"\n dataKey={`s${si}`}\n name={s.label}\n stroke={s.color}\n fill={s.color}\n fillOpacity={model.stacked ? 0.55 : 0.2}\n strokeWidth={2}\n stackId={stackId}\n isAnimationActive={false}\n />\n ))}\n </AreaChart>\n )\n }\n return (\n <LineChart {...common}>\n {axes}\n {model.series.map((s, si) => (\n <Line\n key={s.id}\n type=\"monotone\"\n dataKey={`s${si}`}\n name={s.label}\n stroke={s.color}\n strokeWidth={2}\n dot={model.categories.length <= 12 ? { r: 3, fill: s.color, strokeWidth: 0 } : false}\n activeDot={{ r: 4 }}\n isAnimationActive={false}\n />\n ))}\n </LineChart>\n )\n}\n"]}
@@ -1,28 +1,28 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
- var chunkBFVCYBND_cjs = require('./chunk-BFVCYBND.cjs');
4
+ var chunk5HXQOM3I_cjs = require('./chunk-5HXQOM3I.cjs');
5
5
  var chunkKWJW5TMH_cjs = require('./chunk-KWJW5TMH.cjs');
6
6
  var chunkE5TPRRAW_cjs = require('./chunk-E5TPRRAW.cjs');
7
- require('./chunk-CRLFLMTK.cjs');
7
+ require('./chunk-EOXA4VJH.cjs');
8
8
  require('./chunk-223D4727.cjs');
9
9
  require('./chunk-QQMMCXBP.cjs');
10
10
  require('./chunk-ORELHENJ.cjs');
11
11
  require('./chunk-NWNVWO6L.cjs');
12
+ require('./chunk-3YZKDCWY.cjs');
12
13
  require('./chunk-OEJQFPWO.cjs');
13
14
  require('./chunk-OYXWQTHF.cjs');
14
15
  require('./chunk-II2OEXHW.cjs');
15
16
  require('./chunk-4PA6VCCR.cjs');
16
17
  var chunkRL2HI6NP_cjs = require('./chunk-RL2HI6NP.cjs');
18
+ require('./chunk-SJSGSHIT.cjs');
17
19
  var chunkXNXNLXIC_cjs = require('./chunk-XNXNLXIC.cjs');
18
20
  require('./chunk-M74FWYNL.cjs');
19
21
  require('./chunk-VZOOGA47.cjs');
20
- require('./chunk-3YZKDCWY.cjs');
21
- require('./chunk-SJSGSHIT.cjs');
22
22
  require('./chunk-UDSHVNU3.cjs');
23
+ require('./chunk-PPCATBOY.cjs');
23
24
  var chunkIPSHAMO2_cjs = require('./chunk-IPSHAMO2.cjs');
24
25
  require('./chunk-FX3K6LNZ.cjs');
25
- require('./chunk-PPCATBOY.cjs');
26
26
  require('./chunk-JDFBEGQO.cjs');
27
27
  require('./chunk-ULWRNGGE.cjs');
28
28
  require('./chunk-PLIF5CUV.cjs');
@@ -264,7 +264,7 @@ function WorkspaceTableView({
264
264
  onGridStateChange,
265
265
  workspaceState
266
266
  }) {
267
- const { stripeEnabled } = chunkBFVCYBND_cjs.useBillingSupport();
267
+ const { stripeEnabled } = chunk5HXQOM3I_cjs.useBillingSupport();
268
268
  const { groups, projects, selfId, isCollapsed, toggleGroup, selected, setSelected } = list;
269
269
  const rows = react.useMemo(() => buildWorkspaceTableRows(groups, isCollapsed), [groups, isCollapsed]);
270
270
  const latest = react.useRef({
@@ -298,7 +298,7 @@ function WorkspaceTableView({
298
298
  const project = latest.current.projects.find(
299
299
  (p) => p.external_id === group.projectExtId
300
300
  );
301
- const billing = chunkBFVCYBND_cjs.projectGroupBilling(project, {
301
+ const billing = chunk5HXQOM3I_cjs.projectGroupBilling(project, {
302
302
  isOwned: group.isOwned,
303
303
  stripeEnabled: latest.current.stripeEnabled
304
304
  });
@@ -391,5 +391,5 @@ function WorkspaceTableView({
391
391
  }
392
392
 
393
393
  exports.WorkspaceTableView = WorkspaceTableView;
394
- //# sourceMappingURL=WorkspaceTableView-PJM47B5F.cjs.map
395
- //# sourceMappingURL=WorkspaceTableView-PJM47B5F.cjs.map
394
+ //# sourceMappingURL=WorkspaceTableView-FNME7TL6.cjs.map
395
+ //# sourceMappingURL=WorkspaceTableView-FNME7TL6.cjs.map