@semiont/cli 0.4.14 → 0.4.16

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 (276) hide show
  1. package/dist/cli.mjs +15754 -10457
  2. package/dist/dashboard/dashboard.css +1 -1
  3. package/dist/dashboard/dashboard.css.map +2 -2
  4. package/dist/frontend/dist/apple-touch-icon.png +0 -0
  5. package/dist/frontend/dist/assets/{ArrowsRightLeftIcon-CMDe963r.js → ArrowsRightLeftIcon-BzLgl5o9.js} +2 -2
  6. package/dist/frontend/dist/assets/{ArrowsRightLeftIcon-CMDe963r.js.map → ArrowsRightLeftIcon-BzLgl5o9.js.map} +1 -1
  7. package/dist/frontend/dist/assets/{ChevronLeftIcon-CMXd_XZQ.js → ChevronLeftIcon-BLyRNZuL.js} +2 -2
  8. package/dist/frontend/dist/assets/{ChevronLeftIcon-CMXd_XZQ.js.map → ChevronLeftIcon-BLyRNZuL.js.map} +1 -1
  9. package/dist/frontend/dist/assets/{CommandLineIcon-BBerq9Nd.js → CommandLineIcon-Ba4gpk8e.js} +2 -2
  10. package/dist/frontend/dist/assets/{CommandLineIcon-BBerq9Nd.js.map → CommandLineIcon-Ba4gpk8e.js.map} +1 -1
  11. package/dist/frontend/dist/assets/{CookiePreferences-Cbur0STI.js → CookiePreferences-BDtMuCT2.js} +2 -2
  12. package/dist/frontend/dist/assets/{CookiePreferences-Cbur0STI.js.map → CookiePreferences-BDtMuCT2.js.map} +1 -1
  13. package/dist/frontend/dist/assets/PdfAnnotationCanvas.client-CHDCGQBR-CuWwI0uw.js +2 -0
  14. package/dist/frontend/dist/assets/{PdfAnnotationCanvas.client-CW6SKH2U-DIkAGn7X.js.map → PdfAnnotationCanvas.client-CHDCGQBR-CuWwI0uw.js.map} +1 -1
  15. package/dist/frontend/dist/assets/StreamStatusContext-BNiTXRfJ.js +2 -0
  16. package/dist/frontend/dist/assets/{StreamStatusContext-BuPATpTz.js.map → StreamStatusContext-BNiTXRfJ.js.map} +1 -1
  17. package/dist/frontend/dist/assets/ToolbarPanels-mrjx6GSA.js +2 -0
  18. package/dist/frontend/dist/assets/ToolbarPanels-mrjx6GSA.js.map +1 -0
  19. package/dist/frontend/dist/assets/{XMarkIcon-6m9KVFaj.js → XMarkIcon-KMKD47CF.js} +2 -2
  20. package/dist/frontend/dist/assets/{XMarkIcon-6m9KVFaj.js.map → XMarkIcon-KMKD47CF.js.map} +1 -1
  21. package/dist/frontend/dist/assets/ar-3W37O3R3-BJ1fDUvB.js +2 -0
  22. package/dist/frontend/dist/assets/ar-3W37O3R3-BJ1fDUvB.js.map +1 -0
  23. package/dist/frontend/dist/assets/bn-JZTJLMVE-k1gI6ffq.js +2 -0
  24. package/dist/frontend/dist/assets/bn-JZTJLMVE-k1gI6ffq.js.map +1 -0
  25. package/dist/frontend/dist/assets/{browser-ponyfill-DkbQZCyF.js → browser-ponyfill-D2ngVqWO.js} +2 -2
  26. package/dist/frontend/dist/assets/{browser-ponyfill-DkbQZCyF.js.map → browser-ponyfill-D2ngVqWO.js.map} +1 -1
  27. package/dist/frontend/dist/assets/client-Dwyu_mF1.js +2 -0
  28. package/dist/frontend/dist/assets/{client-BiL3eI7d.js.map → client-Dwyu_mF1.js.map} +1 -1
  29. package/dist/frontend/dist/assets/{client-BnL1es01.js → client-mCvsMrtH.js} +2 -2
  30. package/dist/frontend/dist/assets/{client-BnL1es01.js.map → client-mCvsMrtH.js.map} +1 -1
  31. package/dist/frontend/dist/assets/{client-BPbsU2tc.js → client-so55bcfy.js} +2 -2
  32. package/dist/frontend/dist/assets/{client-BPbsU2tc.js.map → client-so55bcfy.js.map} +1 -1
  33. package/dist/frontend/dist/assets/{client-DrQUcCJy.js → client-w-_FzMWW.js} +2 -2
  34. package/dist/frontend/dist/assets/{client-DrQUcCJy.js.map → client-w-_FzMWW.js.map} +1 -1
  35. package/dist/frontend/dist/assets/cs-XYHH7HNE-BqQWIWM9.js +2 -0
  36. package/dist/frontend/dist/assets/cs-XYHH7HNE-BqQWIWM9.js.map +1 -0
  37. package/dist/frontend/dist/assets/da-MZKIECVT-pufSb0d_.js +2 -0
  38. package/dist/frontend/dist/assets/da-MZKIECVT-pufSb0d_.js.map +1 -0
  39. package/dist/frontend/dist/assets/de-AYXTMRQW-BRMduIa0.js +2 -0
  40. package/dist/frontend/dist/assets/de-AYXTMRQW-BRMduIa0.js.map +1 -0
  41. package/dist/frontend/dist/assets/el-A6CVQWAW-DycBhXUi.js +2 -0
  42. package/dist/frontend/dist/assets/el-A6CVQWAW-DycBhXUi.js.map +1 -0
  43. package/dist/frontend/dist/assets/es-M2HXLJGT-BFQ6WIpw.js +2 -0
  44. package/dist/frontend/dist/assets/es-M2HXLJGT-BFQ6WIpw.js.map +1 -0
  45. package/dist/frontend/dist/assets/fa-V6JZJDYP-C8CwCeSd.js +2 -0
  46. package/dist/frontend/dist/assets/fa-V6JZJDYP-C8CwCeSd.js.map +1 -0
  47. package/dist/frontend/dist/assets/fi-ONDTZ5H7-aby5--Ip.js +2 -0
  48. package/dist/frontend/dist/assets/fi-ONDTZ5H7-aby5--Ip.js.map +1 -0
  49. package/dist/frontend/dist/assets/fr-PAPV4H4G-D9SFT8MA.js +2 -0
  50. package/dist/frontend/dist/assets/fr-PAPV4H4G-D9SFT8MA.js.map +1 -0
  51. package/dist/frontend/dist/assets/he-F6VTLJLW-B8Rc1C-m.js +2 -0
  52. package/dist/frontend/dist/assets/he-F6VTLJLW-B8Rc1C-m.js.map +1 -0
  53. package/dist/frontend/dist/assets/hi-CFUAV4BF-CuWy2y7I.js +2 -0
  54. package/dist/frontend/dist/assets/hi-CFUAV4BF-CuWy2y7I.js.map +1 -0
  55. package/dist/frontend/dist/assets/{i18n-BYxb14hm.js → i18n-BbpF47i1.js} +2 -2
  56. package/dist/frontend/dist/assets/{i18n-BYxb14hm.js.map → i18n-BbpF47i1.js.map} +1 -1
  57. package/dist/frontend/dist/assets/id-NBKLCCI7-DnMwKKq7.js +2 -0
  58. package/dist/frontend/dist/assets/id-NBKLCCI7-DnMwKKq7.js.map +1 -0
  59. package/dist/frontend/dist/assets/index-CqzrFNnV.js +159 -0
  60. package/dist/frontend/dist/assets/index-CqzrFNnV.js.map +1 -0
  61. package/dist/frontend/dist/assets/index-DNL392dn.css +1 -0
  62. package/dist/frontend/dist/assets/it-SLSOWVVU-hrlm8f9F.js +2 -0
  63. package/dist/frontend/dist/assets/it-SLSOWVVU-hrlm8f9F.js.map +1 -0
  64. package/dist/frontend/dist/assets/ja-L5IG4ECE-BvMVB5sy.js +2 -0
  65. package/dist/frontend/dist/assets/ja-L5IG4ECE-BvMVB5sy.js.map +1 -0
  66. package/dist/frontend/dist/assets/ko-QYMTULKK-CNEZe0oy.js +2 -0
  67. package/dist/frontend/dist/assets/ko-QYMTULKK-CNEZe0oy.js.map +1 -0
  68. package/dist/frontend/dist/assets/layout-B3hxaRnF.js +2 -0
  69. package/dist/frontend/dist/assets/layout-B3hxaRnF.js.map +1 -0
  70. package/dist/frontend/dist/assets/layout-Cmn1yGWi.js +2 -0
  71. package/dist/frontend/dist/assets/layout-Cmn1yGWi.js.map +1 -0
  72. package/dist/frontend/dist/assets/layout-CsUwTEip.js +2 -0
  73. package/dist/frontend/dist/assets/layout-CsUwTEip.js.map +1 -0
  74. package/dist/frontend/dist/assets/layout-DXjUb5pL.js +2 -0
  75. package/dist/frontend/dist/assets/layout-DXjUb5pL.js.map +1 -0
  76. package/dist/frontend/dist/assets/ms-5DGSFKM2-BlyezW6W.js +2 -0
  77. package/dist/frontend/dist/assets/ms-5DGSFKM2-BlyezW6W.js.map +1 -0
  78. package/dist/frontend/dist/assets/nl-VZPCGONO-BJ0llUPS.js +2 -0
  79. package/dist/frontend/dist/assets/nl-VZPCGONO-BJ0llUPS.js.map +1 -0
  80. package/dist/frontend/dist/assets/no-MF6F352I-Wf2ZNjHx.js +2 -0
  81. package/dist/frontend/dist/assets/no-MF6F352I-Wf2ZNjHx.js.map +1 -0
  82. package/dist/frontend/dist/assets/{not-found-CwWw1pZc.js → not-found-C46rJTS0.js} +2 -2
  83. package/dist/frontend/dist/assets/{not-found-CwWw1pZc.js.map → not-found-C46rJTS0.js.map} +1 -1
  84. package/dist/frontend/dist/assets/page-B3Uq31BP.js +5 -0
  85. package/dist/frontend/dist/assets/{page-CelRTchO.js.map → page-B3Uq31BP.js.map} +1 -1
  86. package/dist/frontend/dist/assets/page-BCTRI-5h.js +2 -0
  87. package/dist/frontend/dist/assets/page-BCTRI-5h.js.map +1 -0
  88. package/dist/frontend/dist/assets/{page-CslYhbgz.js → page-BSaAdGF1.js} +2 -2
  89. package/dist/frontend/dist/assets/{page-CslYhbgz.js.map → page-BSaAdGF1.js.map} +1 -1
  90. package/dist/frontend/dist/assets/{page-BmHLf-7O.js → page-BjvkLuU3.js} +2 -2
  91. package/dist/frontend/dist/assets/{page-BmHLf-7O.js.map → page-BjvkLuU3.js.map} +1 -1
  92. package/dist/frontend/dist/assets/page-Bs0NV-OR.js +2 -0
  93. package/dist/frontend/dist/assets/{page-C5bIvv1V.js.map → page-Bs0NV-OR.js.map} +1 -1
  94. package/dist/frontend/dist/assets/{page-1BwlyTUj.js → page-C9LRjfKm.js} +2 -2
  95. package/dist/frontend/dist/assets/{page-1BwlyTUj.js.map → page-C9LRjfKm.js.map} +1 -1
  96. package/dist/frontend/dist/assets/page-Cz0qvcvG.js +2 -0
  97. package/dist/frontend/dist/assets/page-Cz0qvcvG.js.map +1 -0
  98. package/dist/frontend/dist/assets/page-DCPEscX2.js +2 -0
  99. package/dist/frontend/dist/assets/{page-Deep7E5d.js.map → page-DCPEscX2.js.map} +1 -1
  100. package/dist/frontend/dist/assets/page-DKA-wyMy.js +2 -0
  101. package/dist/frontend/dist/assets/page-DKA-wyMy.js.map +1 -0
  102. package/dist/frontend/dist/assets/{page-KtkB4tEv.js → page-DWvAfkY1.js} +2 -2
  103. package/dist/frontend/dist/assets/{page-KtkB4tEv.js.map → page-DWvAfkY1.js.map} +1 -1
  104. package/dist/frontend/dist/assets/page-Df3S4CSz.js +2 -0
  105. package/dist/frontend/dist/assets/{page-ZBwMTeR-.js.map → page-Df3S4CSz.js.map} +1 -1
  106. package/dist/frontend/dist/assets/{page-Dv386AZD.js → page-DhkdSv3o.js} +3 -3
  107. package/dist/frontend/dist/assets/{page-Dv386AZD.js.map → page-DhkdSv3o.js.map} +1 -1
  108. package/dist/frontend/dist/assets/page-DjY64aaC.js +2 -0
  109. package/dist/frontend/dist/assets/{page-xdXYx3nl.js.map → page-DjY64aaC.js.map} +1 -1
  110. package/dist/frontend/dist/assets/page-DlBB3Xru.js +2 -0
  111. package/dist/frontend/dist/assets/{page-Zq6ARIvg.js.map → page-DlBB3Xru.js.map} +1 -1
  112. package/dist/frontend/dist/assets/page-DqbPyuN1.js +8 -0
  113. package/dist/frontend/dist/assets/{page-E99MPOn5.js.map → page-DqbPyuN1.js.map} +1 -1
  114. package/dist/frontend/dist/assets/page-cHW-gnyq.js +2 -0
  115. package/dist/frontend/dist/assets/{page-iSL5E639.js.map → page-cHW-gnyq.js.map} +1 -1
  116. package/dist/frontend/dist/assets/page-jAWX9Yq4.js +2 -0
  117. package/dist/frontend/dist/assets/page-jAWX9Yq4.js.map +1 -0
  118. package/dist/frontend/dist/assets/{page-D_nHe9FT.js → page-sOV813bU.js} +2 -2
  119. package/dist/frontend/dist/assets/{page-D_nHe9FT.js.map → page-sOV813bU.js.map} +1 -1
  120. package/dist/frontend/dist/assets/pl-WIK72JUO-wOGg7Me5.js +2 -0
  121. package/dist/frontend/dist/assets/pl-WIK72JUO-wOGg7Me5.js.map +1 -0
  122. package/dist/frontend/dist/assets/privacy-BCxizJzS.js +2 -0
  123. package/dist/frontend/dist/assets/{privacy-DO1oxJpM.js.map → privacy-BCxizJzS.js.map} +1 -1
  124. package/dist/frontend/dist/assets/pt-RRP5ZF6A-C32Vedhv.js +2 -0
  125. package/dist/frontend/dist/assets/pt-RRP5ZF6A-C32Vedhv.js.map +1 -0
  126. package/dist/frontend/dist/assets/{query-ATBhtd3K.js → query-B6BuIB0M.js} +3 -3
  127. package/dist/frontend/dist/assets/{query-ATBhtd3K.js.map → query-B6BuIB0M.js.map} +1 -1
  128. package/dist/frontend/dist/assets/ro-XHQLC3T7-uGs3uHRp.js +2 -0
  129. package/dist/frontend/dist/assets/ro-XHQLC3T7-uGs3uHRp.js.map +1 -0
  130. package/dist/frontend/dist/assets/{routing-DMdXWYXo.js → routing-C43HVxNw.js} +2 -2
  131. package/dist/frontend/dist/assets/{routing-DMdXWYXo.js.map → routing-C43HVxNw.js.map} +1 -1
  132. package/dist/frontend/dist/assets/{routing-tJ_HbFRP.js → routing-swMLj8Z8.js} +2 -2
  133. package/dist/frontend/dist/assets/{routing-tJ_HbFRP.js.map → routing-swMLj8Z8.js.map} +1 -1
  134. package/dist/frontend/dist/assets/sv-EWULDN6E-CkRBfwt9.js +2 -0
  135. package/dist/frontend/dist/assets/sv-EWULDN6E-CkRBfwt9.js.map +1 -0
  136. package/dist/frontend/dist/assets/th-TGOBHFG4-BGt_aO5K.js +2 -0
  137. package/dist/frontend/dist/assets/th-TGOBHFG4-BGt_aO5K.js.map +1 -0
  138. package/dist/frontend/dist/assets/tr-LMMPBMV7-CrGE1PKA.js +2 -0
  139. package/dist/frontend/dist/assets/tr-LMMPBMV7-CrGE1PKA.js.map +1 -0
  140. package/dist/frontend/dist/assets/uk-IPGRRJY6-CPaxgpd8.js +2 -0
  141. package/dist/frontend/dist/assets/uk-IPGRRJY6-CPaxgpd8.js.map +1 -0
  142. package/dist/frontend/dist/assets/{vendor-EnoIVk-c.js → vendor-DJo4KD8w.js} +2 -2
  143. package/dist/frontend/dist/assets/{vendor-EnoIVk-c.js.map → vendor-DJo4KD8w.js.map} +1 -1
  144. package/dist/frontend/dist/assets/vi-Q676OJQS-DpyIm6R1.js +2 -0
  145. package/dist/frontend/dist/assets/vi-Q676OJQS-DpyIm6R1.js.map +1 -0
  146. package/dist/frontend/dist/assets/zh-F3MTWQDX-C09t_PFf.js +2 -0
  147. package/dist/frontend/dist/assets/zh-F3MTWQDX-C09t_PFf.js.map +1 -0
  148. package/dist/frontend/dist/favicon-16x16.png +0 -0
  149. package/dist/frontend/dist/favicon-32x32.png +0 -0
  150. package/dist/frontend/dist/favicon.ico +0 -0
  151. package/dist/frontend/dist/favicon.svg +47 -0
  152. package/dist/frontend/dist/index.html +5 -5
  153. package/dist/frontend/dist/messages/ar.json +9 -3
  154. package/dist/frontend/dist/messages/bn.json +9 -3
  155. package/dist/frontend/dist/messages/cs.json +9 -3
  156. package/dist/frontend/dist/messages/da.json +9 -3
  157. package/dist/frontend/dist/messages/de.json +9 -3
  158. package/dist/frontend/dist/messages/el.json +9 -3
  159. package/dist/frontend/dist/messages/en.json +5 -1
  160. package/dist/frontend/dist/messages/es.json +9 -3
  161. package/dist/frontend/dist/messages/fa.json +9 -3
  162. package/dist/frontend/dist/messages/fi.json +9 -3
  163. package/dist/frontend/dist/messages/fr.json +9 -3
  164. package/dist/frontend/dist/messages/he.json +9 -3
  165. package/dist/frontend/dist/messages/hi.json +9 -3
  166. package/dist/frontend/dist/messages/id.json +9 -3
  167. package/dist/frontend/dist/messages/it.json +9 -3
  168. package/dist/frontend/dist/messages/ja.json +9 -3
  169. package/dist/frontend/dist/messages/ko.json +9 -3
  170. package/dist/frontend/dist/messages/ms.json +9 -3
  171. package/dist/frontend/dist/messages/nl.json +9 -3
  172. package/dist/frontend/dist/messages/no.json +9 -3
  173. package/dist/frontend/dist/messages/pl.json +9 -3
  174. package/dist/frontend/dist/messages/pt.json +9 -3
  175. package/dist/frontend/dist/messages/ro.json +9 -3
  176. package/dist/frontend/dist/messages/sv.json +9 -3
  177. package/dist/frontend/dist/messages/th.json +9 -3
  178. package/dist/frontend/dist/messages/tr.json +9 -3
  179. package/dist/frontend/dist/messages/uk.json +9 -3
  180. package/dist/frontend/dist/messages/vi.json +9 -3
  181. package/dist/frontend/dist/messages/zh.json +9 -3
  182. package/dist/frontend/package.json +1 -1
  183. package/package.json +24 -23
  184. package/dist/frontend/dist/assets/PdfAnnotationCanvas.client-CW6SKH2U-DIkAGn7X.js +0 -2
  185. package/dist/frontend/dist/assets/StreamStatusContext-BuPATpTz.js +0 -2
  186. package/dist/frontend/dist/assets/ToolbarPanels-rN1MIRTV.js +0 -2
  187. package/dist/frontend/dist/assets/ToolbarPanels-rN1MIRTV.js.map +0 -1
  188. package/dist/frontend/dist/assets/ar-R4CRNXEF-Ca4TvZQX.js +0 -2
  189. package/dist/frontend/dist/assets/ar-R4CRNXEF-Ca4TvZQX.js.map +0 -1
  190. package/dist/frontend/dist/assets/bn-CZKGRHTA-BYgoliLL.js +0 -2
  191. package/dist/frontend/dist/assets/bn-CZKGRHTA-BYgoliLL.js.map +0 -1
  192. package/dist/frontend/dist/assets/client-BiL3eI7d.js +0 -2
  193. package/dist/frontend/dist/assets/cs-4WIB2IHH-C7kYZeeH.js +0 -2
  194. package/dist/frontend/dist/assets/cs-4WIB2IHH-C7kYZeeH.js.map +0 -1
  195. package/dist/frontend/dist/assets/da-JWYEUYPX-ZaU3NHTl.js +0 -2
  196. package/dist/frontend/dist/assets/da-JWYEUYPX-ZaU3NHTl.js.map +0 -1
  197. package/dist/frontend/dist/assets/de-GWUQZGER-DsO9vSRx.js +0 -2
  198. package/dist/frontend/dist/assets/de-GWUQZGER-DsO9vSRx.js.map +0 -1
  199. package/dist/frontend/dist/assets/el-DM2GT7P5-Baqj4u37.js +0 -2
  200. package/dist/frontend/dist/assets/el-DM2GT7P5-Baqj4u37.js.map +0 -1
  201. package/dist/frontend/dist/assets/en-IUV4ZXKH-BY1RKeLS.js +0 -135
  202. package/dist/frontend/dist/assets/en-IUV4ZXKH-BY1RKeLS.js.map +0 -1
  203. package/dist/frontend/dist/assets/es-6LVQIM3D-iPWrspyh.js +0 -2
  204. package/dist/frontend/dist/assets/es-6LVQIM3D-iPWrspyh.js.map +0 -1
  205. package/dist/frontend/dist/assets/fa-IRUJY3QI-D7jhkhZq.js +0 -2
  206. package/dist/frontend/dist/assets/fa-IRUJY3QI-D7jhkhZq.js.map +0 -1
  207. package/dist/frontend/dist/assets/fi-53FBOEVT-DyL1QG5i.js +0 -2
  208. package/dist/frontend/dist/assets/fi-53FBOEVT-DyL1QG5i.js.map +0 -1
  209. package/dist/frontend/dist/assets/fr-Q5KY7QL6-CGM9feO_.js +0 -2
  210. package/dist/frontend/dist/assets/fr-Q5KY7QL6-CGM9feO_.js.map +0 -1
  211. package/dist/frontend/dist/assets/he-HJNKULBY-CiS3ww0i.js +0 -2
  212. package/dist/frontend/dist/assets/he-HJNKULBY-CiS3ww0i.js.map +0 -1
  213. package/dist/frontend/dist/assets/hi-UYZ4X6CR-Cb3OYOtm.js +0 -2
  214. package/dist/frontend/dist/assets/hi-UYZ4X6CR-Cb3OYOtm.js.map +0 -1
  215. package/dist/frontend/dist/assets/id-UAQMH6U2-CgqnTJaj.js +0 -2
  216. package/dist/frontend/dist/assets/id-UAQMH6U2-CgqnTJaj.js.map +0 -1
  217. package/dist/frontend/dist/assets/index-CNb3PHS7.css +0 -1
  218. package/dist/frontend/dist/assets/index-DA31r_0s.js +0 -27
  219. package/dist/frontend/dist/assets/index-DA31r_0s.js.map +0 -1
  220. package/dist/frontend/dist/assets/it-C7QEBNFA-BP64tE9N.js +0 -2
  221. package/dist/frontend/dist/assets/it-C7QEBNFA-BP64tE9N.js.map +0 -1
  222. package/dist/frontend/dist/assets/ja-THS6AOSJ-BlrsrgpZ.js +0 -2
  223. package/dist/frontend/dist/assets/ja-THS6AOSJ-BlrsrgpZ.js.map +0 -1
  224. package/dist/frontend/dist/assets/ko-XKK3TWQG-BnscEkav.js +0 -2
  225. package/dist/frontend/dist/assets/ko-XKK3TWQG-BnscEkav.js.map +0 -1
  226. package/dist/frontend/dist/assets/layout-B8IinUdt.js +0 -2
  227. package/dist/frontend/dist/assets/layout-B8IinUdt.js.map +0 -1
  228. package/dist/frontend/dist/assets/layout-BjpW078f.js +0 -2
  229. package/dist/frontend/dist/assets/layout-BjpW078f.js.map +0 -1
  230. package/dist/frontend/dist/assets/layout-CDIjxs5a.js +0 -6
  231. package/dist/frontend/dist/assets/layout-CDIjxs5a.js.map +0 -1
  232. package/dist/frontend/dist/assets/layout-DKm9XdRr.js +0 -2
  233. package/dist/frontend/dist/assets/layout-DKm9XdRr.js.map +0 -1
  234. package/dist/frontend/dist/assets/ms-GSK7LIF7-BWJ-3eXy.js +0 -2
  235. package/dist/frontend/dist/assets/ms-GSK7LIF7-BWJ-3eXy.js.map +0 -1
  236. package/dist/frontend/dist/assets/nl-KUBWITGY-DeqIcEFQ.js +0 -2
  237. package/dist/frontend/dist/assets/nl-KUBWITGY-DeqIcEFQ.js.map +0 -1
  238. package/dist/frontend/dist/assets/no-ECWZUHT6-DMgg097w.js +0 -2
  239. package/dist/frontend/dist/assets/no-ECWZUHT6-DMgg097w.js.map +0 -1
  240. package/dist/frontend/dist/assets/page-BQ00VxR5.js +0 -2
  241. package/dist/frontend/dist/assets/page-BQ00VxR5.js.map +0 -1
  242. package/dist/frontend/dist/assets/page-C5bIvv1V.js +0 -2
  243. package/dist/frontend/dist/assets/page-CelRTchO.js +0 -5
  244. package/dist/frontend/dist/assets/page-Cf9cnqhC.js +0 -2
  245. package/dist/frontend/dist/assets/page-Cf9cnqhC.js.map +0 -1
  246. package/dist/frontend/dist/assets/page-DEjlNEY0.js +0 -2
  247. package/dist/frontend/dist/assets/page-DEjlNEY0.js.map +0 -1
  248. package/dist/frontend/dist/assets/page-DLtwpo78.js +0 -2
  249. package/dist/frontend/dist/assets/page-DLtwpo78.js.map +0 -1
  250. package/dist/frontend/dist/assets/page-Deep7E5d.js +0 -2
  251. package/dist/frontend/dist/assets/page-E99MPOn5.js +0 -8
  252. package/dist/frontend/dist/assets/page-ZBwMTeR-.js +0 -2
  253. package/dist/frontend/dist/assets/page-Zq6ARIvg.js +0 -2
  254. package/dist/frontend/dist/assets/page-iSL5E639.js +0 -2
  255. package/dist/frontend/dist/assets/page-xdXYx3nl.js +0 -2
  256. package/dist/frontend/dist/assets/pl-PLVWSZWS-B9TKLToJ.js +0 -2
  257. package/dist/frontend/dist/assets/pl-PLVWSZWS-B9TKLToJ.js.map +0 -1
  258. package/dist/frontend/dist/assets/privacy-DO1oxJpM.js +0 -2
  259. package/dist/frontend/dist/assets/pt-AL74ZTKB-dm40issX.js +0 -2
  260. package/dist/frontend/dist/assets/pt-AL74ZTKB-dm40issX.js.map +0 -1
  261. package/dist/frontend/dist/assets/ro-WTPHLHGS-42q4gQmg.js +0 -2
  262. package/dist/frontend/dist/assets/ro-WTPHLHGS-42q4gQmg.js.map +0 -1
  263. package/dist/frontend/dist/assets/sv-QCLI7SG4-KVnre_zY.js +0 -2
  264. package/dist/frontend/dist/assets/sv-QCLI7SG4-KVnre_zY.js.map +0 -1
  265. package/dist/frontend/dist/assets/th-WCKVZU6U-CfRhC_Eg.js +0 -2
  266. package/dist/frontend/dist/assets/th-WCKVZU6U-CfRhC_Eg.js.map +0 -1
  267. package/dist/frontend/dist/assets/tr-2CAFS2XS-425EzbTD.js +0 -2
  268. package/dist/frontend/dist/assets/tr-2CAFS2XS-425EzbTD.js.map +0 -1
  269. package/dist/frontend/dist/assets/uk-TDE4JLCY-BUQpzvxx.js +0 -2
  270. package/dist/frontend/dist/assets/uk-TDE4JLCY-BUQpzvxx.js.map +0 -1
  271. package/dist/frontend/dist/assets/useAuth-yUx5lBP5.js +0 -2
  272. package/dist/frontend/dist/assets/useAuth-yUx5lBP5.js.map +0 -1
  273. package/dist/frontend/dist/assets/vi-KKXZ4PCX-BqlhZbBi.js +0 -2
  274. package/dist/frontend/dist/assets/vi-KKXZ4PCX-BqlhZbBi.js.map +0 -1
  275. package/dist/frontend/dist/assets/zh-VH4XN5PV-TNQ5FOx-.js +0 -2
  276. package/dist/frontend/dist/assets/zh-VH4XN5PV-TNQ5FOx-.js.map +0 -1
@@ -28,7 +28,8 @@
28
28
  "creationMethod": "วิธีการสร้าง",
29
29
  "attributedTo": "อ้างอิงถึง",
30
30
  "derivedFrom": "ได้มาจาก",
31
- "generatedBy": "สร้างโดย"
31
+ "generatedBy": "สร้างโดย",
32
+ "storageUri": "ที่จัดเก็บ"
32
33
  },
33
34
  "CollaborationPanel": {
34
35
  "title": "การทำงานร่วมกัน",
@@ -377,6 +378,9 @@
377
378
  "searching": "กำลังค้นหา...",
378
379
  "search": "ค้นหา"
379
380
  },
381
+ "History": {
382
+ "embeddingComputed": "คำนวณเอ็มเบดดิงแล้ว"
383
+ },
380
384
  "Common": {
381
385
  "save": "บันทึก",
382
386
  "cancel": "ยกเลิก",
@@ -391,7 +395,7 @@
391
395
  "administer": "การบริหารจัดการ"
392
396
  },
393
397
  "Footer": {
394
- "copyright": "© {{year}} Semiont สงวนลิขสิทธิ์",
398
+ "copyright": "© {{year}} The AI Alliance สงวนลิขสิทธิ์",
395
399
  "about": "เกี่ยวกับ",
396
400
  "privacyPolicy": "นโยบายความเป็นส่วนตัว",
397
401
  "cookiePreferences": "การตั้งค่าคุกกี้",
@@ -972,7 +976,9 @@
972
976
  "noKnowledgeBasesHint": "เพิ่มฐานความรู้โดยใช้แผงด้านขวาเพื่อเริ่มค้นหา ใส่คำอธิบาย และเชื่อมโยงทรัพยากร",
973
977
  "sessionExpired": "เซสชันของคุณหมดอายุแล้ว",
974
978
  "signedOut": "คุณออกจากระบบแล้ว",
975
- "signInHint": "เข้าสู่ระบบโดยใช้แผงฐานความรู้เพื่อเรียกดูทรัพยากร"
979
+ "signInHint": "เข้าสู่ระบบโดยใช้แผงฐานความรู้เพื่อเรียกดูทรัพยากร",
980
+ "findKnowledgeBases": "ค้นหาฐานความรู้",
981
+ "createNew": "สร้างใหม่"
976
982
  },
977
983
  "AccountPanel": {
978
984
  "notAuthenticated": "เข้าสู่ระบบฐานความรู้เพื่อดูบัญชีของคุณ"
@@ -28,7 +28,8 @@
28
28
  "creationMethod": "Oluşturma yöntemi",
29
29
  "attributedTo": "Atfedilen",
30
30
  "derivedFrom": "Kaynağı",
31
- "generatedBy": "Oluşturan"
31
+ "generatedBy": "Oluşturan",
32
+ "storageUri": "Depolama"
32
33
  },
33
34
  "CollaborationPanel": {
34
35
  "title": "İşbirliği",
@@ -377,6 +378,9 @@
377
378
  "searching": "Aranıyor...",
378
379
  "search": "Ara"
379
380
  },
381
+ "History": {
382
+ "embeddingComputed": "Gömme hesaplandı"
383
+ },
380
384
  "Common": {
381
385
  "save": "Kaydet",
382
386
  "cancel": "İptal",
@@ -391,7 +395,7 @@
391
395
  "administer": "Yönetim"
392
396
  },
393
397
  "Footer": {
394
- "copyright": "© {{year}} Semiont. Tüm hakları saklıdır.",
398
+ "copyright": "© {{year}} The AI Alliance. Tüm hakları saklıdır.",
395
399
  "about": "Hakkında",
396
400
  "privacyPolicy": "Gizlilik Politikası",
397
401
  "cookiePreferences": "Çerez Tercihleri",
@@ -972,7 +976,9 @@
972
976
  "noKnowledgeBasesHint": "Kaynakları keşfetmeye, not eklemeye ve bağlamaya başlamak için sağdaki paneli kullanarak bir bilgi tabanı ekleyin.",
973
977
  "sessionExpired": "Oturumunuzun süresi doldu.",
974
978
  "signedOut": "Çıkış yaptınız.",
975
- "signInHint": "Kaynakları görüntülemek için Bilgi Tabanı panelini kullanarak giriş yapın."
979
+ "signInHint": "Kaynakları görüntülemek için Bilgi Tabanı panelini kullanarak giriş yapın.",
980
+ "findKnowledgeBases": "Bilgi tabanlarını bul",
981
+ "createNew": "Yeni oluştur"
976
982
  },
977
983
  "AccountPanel": {
978
984
  "notAuthenticated": "Hesabınızı görüntülemek için bir bilgi tabanında oturum açın."
@@ -28,7 +28,8 @@
28
28
  "creationMethod": "Спосіб створення",
29
29
  "attributedTo": "Авторство",
30
30
  "derivedFrom": "Походить від",
31
- "generatedBy": "Створено за допомогою"
31
+ "generatedBy": "Створено за допомогою",
32
+ "storageUri": "Сховище"
32
33
  },
33
34
  "CollaborationPanel": {
34
35
  "title": "Співпраця",
@@ -377,6 +378,9 @@
377
378
  "searching": "Пошук...",
378
379
  "search": "Пошук"
379
380
  },
381
+ "History": {
382
+ "embeddingComputed": "Ембединг обчислено"
383
+ },
380
384
  "Common": {
381
385
  "save": "Зберегти",
382
386
  "cancel": "Скасувати",
@@ -391,7 +395,7 @@
391
395
  "administer": "Адміністрування"
392
396
  },
393
397
  "Footer": {
394
- "copyright": "© {{year}} Semiont. Усі права захищено.",
398
+ "copyright": "© {{year}} The AI Alliance. Усі права захищено.",
395
399
  "about": "Про нас",
396
400
  "privacyPolicy": "Політика конфіденційності",
397
401
  "cookiePreferences": "Налаштування файлів cookie",
@@ -972,7 +976,9 @@
972
976
  "noKnowledgeBasesHint": "Додайте базу знань за допомогою панелі праворуч, щоб почати виявляти, анотувати та пов'язувати ресурси.",
973
977
  "sessionExpired": "Ваш сеанс завершено.",
974
978
  "signedOut": "Ви вийшли з системи.",
975
- "signInHint": "Увійдіть за допомогою панелі «База знань», щоб переглядати ресурси."
979
+ "signInHint": "Увійдіть за допомогою панелі «База знань», щоб переглядати ресурси.",
980
+ "findKnowledgeBases": "Знайти бази знань",
981
+ "createNew": "Створити нову"
976
982
  },
977
983
  "AccountPanel": {
978
984
  "notAuthenticated": "Увійдіть до бази знань, щоб переглянути свій обліковий запис."
@@ -28,7 +28,8 @@
28
28
  "creationMethod": "Cách tạo",
29
29
  "attributedTo": "Được gán cho",
30
30
  "derivedFrom": "Bắt nguồn từ",
31
- "generatedBy": "Được tạo bởi"
31
+ "generatedBy": "Được tạo bởi",
32
+ "storageUri": "Lưu trữ"
32
33
  },
33
34
  "CollaborationPanel": {
34
35
  "title": "Cộng tác",
@@ -377,6 +378,9 @@
377
378
  "searching": "Đang tìm kiếm...",
378
379
  "search": "Tìm kiếm"
379
380
  },
381
+ "History": {
382
+ "embeddingComputed": "Đã tính embedding"
383
+ },
380
384
  "Common": {
381
385
  "save": "Lưu",
382
386
  "cancel": "Hủy",
@@ -391,7 +395,7 @@
391
395
  "administer": "Quản trị"
392
396
  },
393
397
  "Footer": {
394
- "copyright": "© {{year}} Semiont. Mọi quyền được bảo lưu.",
398
+ "copyright": "© {{year}} The AI Alliance. Mọi quyền được bảo lưu.",
395
399
  "about": "Giới thiệu",
396
400
  "privacyPolicy": "Chính sách quyền riêng tư",
397
401
  "cookiePreferences": "Tùy chọn cookie",
@@ -972,7 +976,9 @@
972
976
  "noKnowledgeBasesHint": "Thêm cơ sở kiến thức bằng bảng điều khiển bên phải để bắt đầu khám phá, chú thích và liên kết tài nguyên.",
973
977
  "sessionExpired": "Phiên của bạn đã hết hạn.",
974
978
  "signedOut": "Bạn đã đăng xuất.",
975
- "signInHint": "Đăng nhập bằng bảng Cơ sở kiến thức để duyệt tài nguyên."
979
+ "signInHint": "Đăng nhập bằng bảng Cơ sở kiến thức để duyệt tài nguyên.",
980
+ "findKnowledgeBases": "Tìm cơ sở tri thức",
981
+ "createNew": "Tạo mới"
976
982
  },
977
983
  "AccountPanel": {
978
984
  "notAuthenticated": "Đăng nhập vào cơ sở kiến thức để xem tài khoản của bạn."
@@ -28,7 +28,8 @@
28
28
  "creationMethod": "创建方式",
29
29
  "attributedTo": "归属于",
30
30
  "derivedFrom": "派生自",
31
- "generatedBy": "由…生成"
31
+ "generatedBy": "由…生成",
32
+ "storageUri": "存储"
32
33
  },
33
34
  "CollaborationPanel": {
34
35
  "title": "协作",
@@ -377,6 +378,9 @@
377
378
  "searching": "搜索中...",
378
379
  "search": "搜索"
379
380
  },
381
+ "History": {
382
+ "embeddingComputed": "嵌入计算完成"
383
+ },
380
384
  "Common": {
381
385
  "save": "保存",
382
386
  "cancel": "取消",
@@ -391,7 +395,7 @@
391
395
  "administer": "管理"
392
396
  },
393
397
  "Footer": {
394
- "copyright": "© {{year}} Semiont。保留所有权利。",
398
+ "copyright": "© {{year}} The AI Alliance。保留所有权利。",
395
399
  "about": "关于",
396
400
  "privacyPolicy": "隐私政策",
397
401
  "cookiePreferences": "Cookie 偏好设置",
@@ -972,7 +976,9 @@
972
976
  "noKnowledgeBasesHint": "使用右侧面板添加知识库,开始发现、注释和链接资源。",
973
977
  "sessionExpired": "您的会话已过期。",
974
978
  "signedOut": "您已退出登录。",
975
- "signInHint": "通过知识库面板登录以浏览资源。"
979
+ "signInHint": "通过知识库面板登录以浏览资源。",
980
+ "findKnowledgeBases": "查找知识库",
981
+ "createNew": "创建新知识库"
976
982
  },
977
983
  "AccountPanel": {
978
984
  "notAuthenticated": "登录知识库以查看您的帐户。"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@semiont/frontend",
3
- "version": "0.4.14",
3
+ "version": "0.4.16",
4
4
  "description": "Semiont frontend - pre-built Vite SPA with static file server",
5
5
  "main": "server.js",
6
6
  "bin": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@semiont/cli",
3
- "version": "0.4.14",
3
+ "version": "0.4.16",
4
4
  "description": "Semiont CLI - Unified environment management tool",
5
5
  "_comment": "AWS SDK dependencies (@aws-sdk/*) are only used by platforms/aws",
6
6
  "type": "module",
@@ -47,28 +47,12 @@
47
47
  "test:watch:unit": "vitest --watch --config vitest.config.unit.ts"
48
48
  },
49
49
  "dependencies": {
50
- "@anthropic-ai/sdk": "^0.63.0",
51
- "@aws-sdk/client-cloudformation": "^3.600.0",
52
- "@aws-sdk/client-cloudwatch": "^3.600.0",
53
- "@aws-sdk/client-cloudwatch-logs": "^3.600.0",
54
- "@aws-sdk/client-cost-explorer": "^3.600.0",
55
- "@aws-sdk/client-ecr": "^3.600.0",
56
- "@aws-sdk/client-ecs": "^3.600.0",
57
- "@aws-sdk/client-efs": "^3.600.0",
58
- "@aws-sdk/client-elastic-load-balancing-v2": "^3.859.0",
59
- "@aws-sdk/client-lambda": "^3.600.0",
60
- "@aws-sdk/client-neptune": "^3.600.0",
61
- "@aws-sdk/client-rds": "^3.600.0",
62
- "@aws-sdk/client-route-53": "^3.864.0",
63
- "@aws-sdk/client-secrets-manager": "^3.600.0",
64
- "@aws-sdk/client-sts": "^3.859.0",
65
- "@aws-sdk/client-wafv2": "^3.859.0",
66
- "@semiont/api-client": "0.4.14",
67
- "@semiont/content": "0.4.14",
68
- "@semiont/core": "0.4.14",
69
- "@semiont/event-sourcing": "0.4.14",
70
- "@semiont/graph": "0.4.14",
71
- "@semiont/make-meaning": "0.4.14",
50
+ "@semiont/api-client": "0.4.16",
51
+ "@semiont/content": "0.4.16",
52
+ "@semiont/core": "0.4.16",
53
+ "@semiont/event-sourcing": "0.4.16",
54
+ "@semiont/graph": "0.4.16",
55
+ "@semiont/make-meaning": "0.4.16",
72
56
  "arg": "^5.0.2",
73
57
  "argon2": "^0.44.0",
74
58
  "express": "^5.2.1",
@@ -89,6 +73,23 @@
89
73
  "chalk": "^5.3.0",
90
74
  "typescript": "^5.9.2"
91
75
  },
76
+ "optionalDependencies": {
77
+ "@aws-sdk/client-cloudformation": "^3.600.0",
78
+ "@aws-sdk/client-cloudwatch": "^3.600.0",
79
+ "@aws-sdk/client-cloudwatch-logs": "^3.600.0",
80
+ "@aws-sdk/client-cost-explorer": "^3.1025.0",
81
+ "@aws-sdk/client-ecr": "^3.600.0",
82
+ "@aws-sdk/client-ecs": "^3.600.0",
83
+ "@aws-sdk/client-efs": "^3.600.0",
84
+ "@aws-sdk/client-elastic-load-balancing-v2": "^3.859.0",
85
+ "@aws-sdk/client-lambda": "^3.600.0",
86
+ "@aws-sdk/client-neptune": "^3.600.0",
87
+ "@aws-sdk/client-rds": "^3.600.0",
88
+ "@aws-sdk/client-route-53": "^3.864.0",
89
+ "@aws-sdk/client-secrets-manager": "^3.600.0",
90
+ "@aws-sdk/client-sts": "^3.859.0",
91
+ "@aws-sdk/client-wafv2": "^3.859.0"
92
+ },
92
93
  "overrides": {
93
94
  "esbuild": "0.27.2"
94
95
  }
@@ -1,2 +0,0 @@
1
- import{F as lt,G as dt}from"./en-IUV4ZXKH-BY1RKeLS.js";import{r as l}from"./vendor-EnoIVk-c.js";import{j as u}from"./query-ATBhtd3K.js";import"./index-DA31r_0s.js";import"./i18n-BYxb14hm.js";function ut(t,d,s,o,a=1){const w=Math.min(t.startX,t.endX),j=Math.min(t.startY,t.endY),S=Math.max(t.startX,t.endX),b=Math.max(t.startY,t.endY),P=w/a,D=(S-w)/a,E=o-b/a,h=(b-j)/a;return{page:d,x:Math.round(P),y:Math.round(E),width:Math.round(D),height:Math.round(h)}}function V(t,d,s=1){const o=t.x*s,a=t.width*s,w=(d-t.y-t.height)*s,j=t.height*s;return{x:o,y:w,width:a,height:j}}function ht(t){return`page=${t.page}&viewrect=${t.x},${t.y},${t.width},${t.height}`}function J(t){try{const d=t.match(/page=(\d+)/);if(!d)return null;const s=parseInt(d[1],10),o=t.match(/viewrect=([\d.]+),([\d.]+),([\d.]+),([\d.]+)/);return o?{page:s,x:parseFloat(o[1]),y:parseFloat(o[2]),width:parseFloat(o[3]),height:parseFloat(o[4])}:null}catch{return null}}function ft(t){const d=t.match(/page=(\d+)/);return d?parseInt(d[1],10):null}async function gt(){return typeof window<"u"&&window.pdfjsLib?window.pdfjsLib:new Promise((t,d)=>{const s=document.createElement("script");s.src="/pdfjs/pdf.min.mjs",s.type="module",s.onload=()=>{const o=window.pdfjsLib;if(!o){d(new Error("PDF.js loaded but pdfjsLib not available"));return}o.GlobalWorkerOptions.workerSrc="/pdfjs/pdf.worker.min.mjs",t(o)},s.onerror=()=>{d(new Error("Failed to load PDF.js from /pdfjs/pdf.min.mjs"))},document.head.appendChild(s)})}async function mt(t){return(await gt()).getDocument({url:t}).promise}async function pt(t,d=1){const s=t.getViewport({scale:d}),o=document.createElement("canvas"),a=o.getContext("2d");if(!a)throw new Error("Failed to get 2D context");return o.width=s.width,o.height=s.height,await t.render({canvasContext:a,viewport:s}).promise,{dataUrl:o.toDataURL("image/png"),width:s.width,height:s.height}}function K(t){if(!t)return{stroke:"rgb(156, 163, 175)",fill:"rgba(156, 163, 175, 0.2)"};switch(t){case"highlighting":return{stroke:"rgb(250, 204, 21)",fill:"rgba(250, 204, 21, 0.3)"};case"linking":return{stroke:"rgb(59, 130, 246)",fill:"rgba(59, 130, 246, 0.2)"};case"assessing":return{stroke:"rgb(239, 68, 68)",fill:"rgba(239, 68, 68, 0.2)"};case"commenting":return{stroke:"rgb(255, 255, 255)",fill:"rgba(255, 255, 255, 0.2)"};default:return{stroke:"rgb(156, 163, 175)",fill:"rgba(156, 163, 175, 0.2)"}}}function kt({pdfUrl:t,existingAnnotations:d=[],drawingMode:s,selectedMotivation:o,eventBus:a,hoveredAnnotationId:w,selectedAnnotationId:j,hoverDelayMs:S=150}){const[b,P]=l.useState(null),[D,E]=l.useState(0),[h,W]=l.useState(1),[N,Q]=l.useState(null),[A,C]=l.useState(!0),[H,L]=l.useState(null),[f,Z]=l.useState(null),[m,U]=l.useState(null),[z]=l.useState(1.5),[M,v]=l.useState(!1),[r,y]=l.useState(null),B=l.useRef(null),g=l.useRef(null);l.useEffect(()=>{let e=!1;async function n(){try{C(!0),L(null);const c=await mt(t);if(e)return;P(c),E(c.numPages),C(!1)}catch(c){if(e)return;console.error("Error loading PDF:",c),L("Failed to load PDF"),C(!1)}}return n(),()=>{e=!0}},[t]),l.useEffect(()=>{if(!b)return;let e=!1;const n=b;async function c(){try{const i=await n.getPage(h);if(e)return;const p=i.getViewport({scale:1});Z({width:p.width,height:p.height});const{dataUrl:x}=await pt(i,z);if(e)return;Q(x)}catch(i){if(e)return;console.error("Error loading page:",i),L("Failed to load page")}}return c(),()=>{e=!0}},[b,h,z]),l.useEffect(()=>{const e=()=>{g.current&&U({width:g.current.clientWidth,height:g.current.clientHeight})};e();let n=null;try{n=new ResizeObserver(e),g.current&&n.observe(g.current)}catch{console.warn("ResizeObserver not supported, falling back to window resize listener"),window.addEventListener("resize",e)}return()=>{n?n.disconnect():window.removeEventListener("resize",e)}},[N]);const tt=l.useCallback(e=>{if(!s||!g.current)return;const n=g.current.getBoundingClientRect(),c=e.clientX-n.left,i=e.clientY-n.top;v(!0),y({startX:c,startY:i,endX:c,endY:i})},[s]),et=l.useCallback(e=>{if(!M||!r||!g.current)return;const n=g.current.getBoundingClientRect();y({...r,endX:e.clientX-n.left,endY:e.clientY-n.top})},[M,r]),nt=l.useCallback(()=>{if(!M||!r||!f||!m||!a){v(!1),y(null);return}if(Math.sqrt(Math.pow(r.endX-r.startX,2)+Math.pow(r.endY-r.startY,2))<10){if(d.length>0){const k=$.find(T=>{const Y=I(T.target);if(!Y)return!1;const _=J(Y.value);if(!_)return!1;const F=V(_,f.height,1),R=m.width/f.width,q=m.height/f.height,G=F.x*R,O=F.y*q,it=F.width*R,ct=F.height*q;return r.endX>=G&&r.endX<=G+it&&r.endY>=O&&r.endY<=O+ct});if(k){a==null||a.get("browse:click").next({annotationId:k.id,motivation:k.motivation}),v(!1),y(null);return}}v(!1),y(null);return}const c=f.width/m.width,i=f.height/m.height,p={startX:r.startX*c,startY:r.startY*i,endX:r.endX*c,endY:r.endY*i},x=ut(p,h,f.width,f.height,1),X=ht(x);o&&a.get("mark:requested").next({selector:{type:"FragmentSelector",conformsTo:"http://tools.ietf.org/rfc/rfc3778",value:X},motivation:o}),v(!1)},[M,r,h,f,m,o,d]),I=e=>{const n=lt(e);if(!n)return null;const i=(Array.isArray(n)?n:[n]).find(p=>p.type==="FragmentSelector");return!i||i.type!=="FragmentSelector"?null:i},$=d.filter(e=>{const n=I(e.target);return n?ft(n.value)===h:!1}),{handleMouseEnter:rt,handleMouseLeave:st}=l.useMemo(()=>dt(e=>a==null?void 0:a.get("beckon:hover").next({annotationId:e}),S),[a,S]),{stroke:ot,fill:at}=K(o??null);return H?u.jsx("div",{className:"semiont-pdf-annotation-canvas__error",children:H}):u.jsxs("div",{className:"semiont-pdf-annotation-canvas",children:[A&&u.jsx("div",{className:"semiont-pdf-annotation-canvas__loading",children:"Loading PDF..."}),u.jsxs("div",{ref:B,className:"semiont-pdf-annotation-canvas__container",style:{display:A?"none":void 0},onMouseDown:tt,onMouseMove:et,onMouseUp:nt,onMouseLeave:()=>{M&&(v(!1),y(null))},"data-drawing-mode":s||"none",children:[N&&u.jsx("img",{ref:g,src:N,alt:`PDF page ${h}`,className:"semiont-pdf-annotation-canvas__image",draggable:!1,style:{pointerEvents:"none"},onLoad:()=>{requestAnimationFrame(()=>{requestAnimationFrame(()=>{g.current&&U({width:g.current.clientWidth,height:g.current.clientHeight})})})}}),m&&f&&u.jsx("div",{className:"semiont-pdf-annotation-canvas__overlay-container",children:u.jsx("div",{className:"semiont-pdf-annotation-canvas__overlay",children:u.jsxs("svg",{className:"semiont-pdf-annotation-canvas__svg",width:m.width,height:m.height,children:[$.map(e=>{const n=I(e.target);if(!n)return null;const c=J(n.value);if(!c)return null;const i=V(c,f.height,1),p=m.width/f.width,x=m.height/f.height,X=e.id===w,k=e.id===j,T=e.motivation,{stroke:Y,fill:_}=K(T);return u.jsx("rect",{x:i.x*p,y:i.y*x,width:i.width*p,height:i.height*x,stroke:Y,strokeWidth:k?4:X?3:2,fill:_,style:{pointerEvents:"auto",cursor:"pointer",opacity:k?1:X?.9:.7},onClick:()=>a==null?void 0:a.get("browse:click").next({annotationId:e.id,motivation:e.motivation}),onMouseEnter:()=>rt(e.id),onMouseLeave:st},e.id)}),r&&(()=>{const e=Math.min(r.startX,r.endX),n=Math.min(r.startY,r.endY),c=Math.abs(r.endX-r.startX),i=Math.abs(r.endY-r.startY);return u.jsx("rect",{x:e,y:n,width:c,height:i,stroke:ot,strokeWidth:2,strokeDasharray:"5,5",fill:at,pointerEvents:"none"})})()]})})})]}),D>0&&u.jsxs("div",{className:"semiont-pdf-annotation-canvas__controls",children:[u.jsx("button",{disabled:h<=1,onClick:()=>W(h-1),className:"semiont-pdf-annotation-canvas__button",children:"Previous"}),u.jsxs("span",{className:"semiont-pdf-annotation-canvas__page-info",children:["Page ",h," of ",D]}),u.jsx("button",{disabled:h>=D,onClick:()=>W(h+1),className:"semiont-pdf-annotation-canvas__button",children:"Next"})]})]})}export{kt as PdfAnnotationCanvas};
2
- //# sourceMappingURL=PdfAnnotationCanvas.client-CW6SKH2U-DIkAGn7X.js.map
@@ -1,2 +0,0 @@
1
- import{r as t}from"./vendor-EnoIVk-c.js";const e=t.createContext("disconnected");function o(){return t.useContext(e)}export{e as S,o as u};
2
- //# sourceMappingURL=StreamStatusContext-BuPATpTz.js.map
@@ -1,2 +0,0 @@
1
- import{j as e}from"./query-ATBhtd3K.js";import{r as a}from"./vendor-EnoIVk-c.js";import{l as G,ab as Y,ac as Q,ad as V,U as J,V as X,X as q,ae as ee,Y as te,af as se,g as ne,ag as ae,ah as ie,ai as re}from"./en-IUV4ZXKH-BY1RKeLS.js";import{u as oe,a as _,b as P,g as L,s as M,d as le}from"./useAuth-yUx5lBP5.js";import{u as U,a as ce,b as de}from"./routing-DMdXWYXo.js";import{u as k}from"./i18n-BYxb14hm.js";import{a as me,F as ue}from"./XMarkIcon-6m9KVFaj.js";function he({title:n,titleId:t,...i},r){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:r,"aria-labelledby":t},i),n?a.createElement("title",{id:t},n):null,a.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M15.75 9V5.25A2.25 2.25 0 0 0 13.5 3h-6a2.25 2.25 0 0 0-2.25 2.25v13.5A2.25 2.25 0 0 0 7.5 21h6a2.25 2.25 0 0 0 2.25-2.25V15m3 0 3-3m0 0-3-3m3 3H9"}))}const pe=a.forwardRef(he);function ge({title:n,titleId:t,...i},r){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:r,"aria-labelledby":t},i),n?a.createElement("title",{id:t},n):null,a.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"m4.5 12.75 6 6 9-13.5"}))}const xe=a.forwardRef(ge);function fe({title:n,titleId:t,...i},r){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:r,"aria-labelledby":t},i),n?a.createElement("title",{id:t},n):null,a.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 4.5v15m7.5-7.5h-15"}))}const je=a.forwardRef(fe),T="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGNpcmNsZSBjeD0iMTYiIGN5PSIxNiIgcj0iMTYiIGZpbGw9IiM2QjcyODAiLz4KPHBhdGggZD0iTTE2IDE2QzE4LjIwOTEgMTYgMjAgMTQuMjA5MSAyMCAxMkMyMCA5Ljc5MDg2IDE4LjIwOTEgOCAxNiA4QzEzLjc5MDkgOCAxMiA5Ljc5MDg2IDEyIDEyQzEyIDE0LjIwOTEgMTMuNzkwOSAxNiAxNiAxNloiIGZpbGw9IiNFNUU3RUIiLz4KPHBhdGggZD0iTTI0IDI1QzI0IDIxLjY4NjMgMjAuNDE4MyAxOSAxNiAxOUMxMS41ODE3IDE5IDggMjEuNjg2MyA4IDI1IiBzdHJva2U9IiNFNUU3RUIiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+Cjwvc3ZnPg==";function ve(){const{t:n}=k(),t=(N,c)=>n(`UserPanel.${N}`,c),{displayName:i,avatarUrl:r,userDomain:l,isAdmin:m,isModerator:u}=oe(),{clearSession:g}=_(),{activeKnowledgeBase:d}=P(),x=G(),o=U(),[S,f]=a.useState(!1),{timeRemaining:I}=Y(),w=V(I)??"Unknown",A=(()=>{if(!r||S)return T;const N=Q(r);return N||(console.warn("Invalid profile image URL detected, using fallback"),T)})(),b=async()=>{try{await x.logout()}catch{}g(),o.push("/")};return e.jsxs("div",{className:"semiont-user-panel",children:[e.jsx("h3",{className:"semiont-user-panel__title",children:t("account")}),d&&e.jsx("div",{style:{padding:"0 0.75rem 0.5rem",fontSize:"0.8rem",color:"var(--semiont-color-neutral-400)"},children:d.label}),e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("img",{src:A,alt:t("profileAlt",{name:i||t("user")}),width:48,height:48,className:"w-12 h-12 rounded-full object-cover",onError:()=>f(!0)}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("div",{className:"semiont-panel-text",children:i||t("user")}),l&&e.jsxs("div",{className:"semiont-panel-text-secondary",children:["@",l]})]})]}),e.jsxs("div",{children:[e.jsx("label",{className:"semiont-panel-label",children:t("session")}),e.jsx("div",{className:"semiont-session-box",children:e.jsx("div",{className:"semiont-panel-hint",children:t("expiresIn",{time:w})})})]}),(m||u)&&e.jsxs("div",{children:[e.jsx("label",{className:"semiont-panel-label",children:t("privileges")}),e.jsxs("div",{className:"space-y-1",children:[m&&e.jsx("div",{className:"semiont-privilege-badge semiont-privilege-badge--admin",children:e.jsx("span",{className:"semiont-privilege-text",children:t("administrator")})}),u&&e.jsx("div",{className:"semiont-privilege-badge semiont-privilege-badge--moderator",children:e.jsx("span",{className:"semiont-privilege-text",children:t("moderator")})})]})]}),e.jsx("div",{className:"semiont-panel-divider",children:e.jsx("button",{onClick:b,className:"semiont-signout-button",children:t("signOut")})})]})]})}function be(){return crypto.randomUUID()}const ye={authenticated:"var(--semiont-color-success-500, #22c55e)",expired:"var(--semiont-color-warning-500, #eab308)","signed-out":"var(--semiont-color-neutral-400, #9ca3af)",unreachable:"var(--semiont-color-error-500, #ef4444)"},we={authenticated:"statusConnected",expired:"statusExpired","signed-out":"statusSignedOut",unreachable:"statusUnreachable"};function Ne({status:n,t}){return e.jsx("span",{title:t(we[n]),style:{width:"0.5rem",height:"0.5rem",borderRadius:"50%",backgroundColor:ye[n],flexShrink:0}})}function Se({t:n,onSubmit:t,onCancel:i,error:r,isSubmitting:l,autoFocus:m,pulsing:u,initialHost:g="localhost",initialPort:d=4e3,initialEmail:x="admin@example.com"}){const[o,S]=a.useState(g),[f,I]=a.useState(String(d)),[w,A]=a.useState(x),[b,N]=a.useState("");return e.jsxs("div",{className:u?"semiont-panel__login-form--pulsing":"",style:{margin:"0.5rem",padding:"0.75rem",border:"1px solid var(--semiont-color-neutral-200, #e5e7eb)",borderRadius:"var(--semiont-panel-border-radius, 0.5rem)",background:"var(--semiont-bg-secondary, transparent)"},children:[e.jsx("h3",{style:{fontSize:"0.8rem",fontWeight:600,marginBottom:"0.5rem"},children:n("connectTitle")}),e.jsxs("form",{onSubmit:c=>{c.preventDefault(),t(o,parseInt(f,10)||4e3,w,b)},style:{display:"flex",flexDirection:"column",gap:"0.5rem"},children:[e.jsxs("div",{style:{display:"flex",gap:"0.5rem"},children:[e.jsx("input",{type:"text",value:o,onChange:c=>S(c.target.value),placeholder:"Host",className:"semiont-input",style:{flex:1},autoFocus:m}),e.jsx("input",{type:"number",value:f,onChange:c=>I(c.target.value),placeholder:"Port",className:"semiont-input",style:{width:"5rem"}})]}),e.jsx("input",{type:"email",value:w,onChange:c=>A(c.target.value),placeholder:"Email",className:"semiont-input"}),e.jsx("input",{type:"password",value:b,onChange:c=>N(c.target.value),placeholder:"Password",className:"semiont-input"}),r&&e.jsx("div",{style:{color:"var(--semiont-color-error-500, #ef4444)",fontSize:"0.75rem"},children:r}),e.jsxs("div",{style:{display:"flex",gap:"0.5rem"},children:[e.jsx("button",{type:"submit",className:"semiont-button semiont-button--primary",style:{flex:1},disabled:l,children:n(l?"connecting":"connect")}),e.jsx("button",{type:"button",className:"semiont-button",onClick:i,children:e.jsx(ue,{style:{width:"1rem",height:"1rem"}})})]})]})]})}function Ie({t:n,kb:t,onSubmit:i,onCancel:r,error:l,isSubmitting:m}){const[u,g]=a.useState("");return e.jsxs("form",{onSubmit:d=>{d.preventDefault(),i(u)},style:{padding:"0.5rem 0.75rem",display:"flex",flexDirection:"column",gap:"0.375rem"},children:[e.jsx("div",{style:{fontSize:"0.75rem",color:"var(--semiont-color-neutral-400)"},children:t.email}),e.jsx("input",{type:"password",value:u,onChange:d=>g(d.target.value),placeholder:"Password",className:"semiont-input",style:{fontSize:"0.8rem"},autoFocus:!0}),l&&e.jsx("div",{style:{color:"var(--semiont-color-error-500, #ef4444)",fontSize:"0.75rem"},children:l}),e.jsxs("div",{style:{display:"flex",gap:"0.375rem"},children:[e.jsx("button",{type:"submit",className:"semiont-button semiont-button--primary",style:{flex:1,fontSize:"0.8rem"},disabled:m,children:n(m?"signingIn":"signIn")}),e.jsx("button",{type:"button",className:"semiont-button",onClick:r,style:{fontSize:"0.8rem"},children:n("cancel")})]})]})}async function R(n,t,i,r,l){const m=`${i}://${n}:${t}`,u=new J({baseUrl:q(m),eventBus:new X}),g=await u.authenticatePassword(ee(r),l),d=g.token??g.accessToken;if(!d)throw new Error("No token received");let x=`${n}:${t}`;try{const o=await u.getStatus({auth:te(d)});o.projectName&&(x=o.projectName)}catch{}return{token:d,label:x}}function Ae(){const{t:n}=k(),t=(s,h)=>n(`KnowledgeBasePanel.${s}`,h),{knowledgeBases:i,activeKnowledgeBase:r,setActiveKnowledgeBase:l,addKnowledgeBase:m,removeKnowledgeBase:u,updateKnowledgeBase:g,signOut:d}=P(),[x,o]=a.useState(!1),[S,f]=a.useState(null),[I,w]=a.useState(!1),[A,b]=a.useState(null),[N,c]=a.useState(null),[B,z]=a.useState(!1),[O,E]=a.useState(null),[,K]=a.useState(0);a.useEffect(()=>{i.length===0&&o(!0)},[i.length]),a.useEffect(()=>{const s=setInterval(()=>K(h=>h+1),3e4);return()=>clearInterval(s)},[]);const F=()=>{o(!0),b(null),f(null)},W=async(s,h,j,v)=>{f(null),w(!0);const y=le(s),C=i.find(p=>p.host===s&&p.port===h);if(C){try{const{token:p}=await R(s,h,y,j,v);M(C.id,p),l(C.id),o(!1)}catch(p){f(p instanceof Error?p.message:String(p))}finally{w(!1)}return}try{const{token:p,label:H}=await R(s,h,y,j,v),D=be();M(D,p),m({id:D,label:H,host:s,port:h,protocol:y,email:j}),o(!1)}catch(p){f(p instanceof Error?p.message:String(p))}finally{w(!1)}},Z=async(s,h)=>{const j=i.find(v=>v.id===s);if(j){c(null),z(!0);try{const{token:v,label:y}=await R(j.host,j.port,j.protocol,j.email,h);M(s,v),g(s,{label:y}),b(null),l(s)}catch(v){c(v instanceof Error?v.message:String(v))}finally{z(!1)}}},$=s=>{L(s.id)==="authenticated"?l(s.id):(b(s.id),o(!1),c(null))};return e.jsxs("div",{className:"semiont-panel",children:[e.jsx("div",{className:"semiont-panel-header",children:e.jsxs("h2",{className:"semiont-panel-header__title",children:[e.jsx("span",{className:"semiont-panel-header__text",children:t("title")}),e.jsxs("span",{className:"semiont-panel-header__count",children:["(",i.length,")"]})]})}),e.jsxs("div",{className:"semiont-panel__content",children:[e.jsx("div",{className:"semiont-panel__list",children:i.map(s=>{const h=L(s.id),j=s.id===(r==null?void 0:r.id),v=A===s.id;return e.jsxs("div",{children:[e.jsxs("div",{className:`semiont-panel-item semiont-panel-item--clickable${j?" semiont-panel-item--selected":""}`,style:{display:"flex",flexDirection:"column",gap:"0.25rem",cursor:"pointer",padding:"0.5rem 0.75rem"},onClick:()=>$(s),children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"0.5rem"},children:[e.jsx(Ne,{status:h,t}),e.jsx("span",{className:"semiont-panel-text",style:{flex:1,fontWeight:500},children:s.label}),j&&e.jsx(xe,{style:{width:"1rem",height:"1rem",color:"var(--semiont-color-primary-500)",flexShrink:0}}),h==="authenticated"&&e.jsx("button",{onClick:y=>{y.stopPropagation(),d(s.id)},title:t("signOut"),style:{background:"none",border:"none",cursor:"pointer",padding:"0.125rem",color:"var(--semiont-color-neutral-400)"},children:e.jsx(pe,{style:{width:"0.875rem",height:"0.875rem"}})}),e.jsx("button",{onClick:y=>{y.stopPropagation(),E(s.id)},title:t("remove"),style:{background:"none",border:"none",cursor:"pointer",padding:"0.125rem",color:"var(--semiont-color-neutral-400)"},children:e.jsx(me,{style:{width:"0.875rem",height:"0.875rem"}})})]}),e.jsxs("span",{className:"semiont-panel-text-secondary",style:{fontSize:"0.7rem",paddingLeft:"1rem"},children:[s.host,":",s.port]})]}),O===s.id&&e.jsxs("div",{style:{padding:"0.5rem 0.75rem",fontSize:"0.8rem",display:"flex",alignItems:"center",gap:"0.5rem",background:"var(--semiont-bg-secondary, #f9fafb)",borderBottom:"1px solid var(--semiont-color-neutral-200, #e5e7eb)"},children:[e.jsx("span",{style:{flex:1,color:"var(--semiont-color-neutral-500)"},children:t("removeConfirm",{label:s.label})}),e.jsx("button",{onClick:()=>{u(s.id),E(null)},className:"semiont-button",style:{fontSize:"0.75rem",padding:"0.2rem 0.5rem",color:"var(--semiont-color-error-500, #ef4444)"},children:t("remove")}),e.jsx("button",{onClick:()=>E(null),className:"semiont-button",style:{fontSize:"0.75rem",padding:"0.2rem 0.5rem"},children:t("cancel")})]}),v&&e.jsx(Ie,{t,kb:s,onSubmit:y=>Z(s.id,y),onCancel:()=>b(null),error:N,isSubmitting:B})]},s.id)})}),x&&e.jsx(Se,{t,onSubmit:W,onCancel:()=>o(!1),error:S,isSubmitting:I,autoFocus:i.length===0,pulsing:i.length===0})]}),!x&&e.jsx("div",{className:"semiont-panel-footer",children:e.jsxs("button",{onClick:F,className:"semiont-panel-item semiont-panel-item--clickable",style:{width:"100%",display:"flex",alignItems:"center",gap:"0.5rem",color:"var(--semiont-color-primary-600)"},children:[e.jsx(je,{style:{width:"1rem",height:"1rem",flexShrink:0}}),e.jsx("span",{className:"semiont-panel-text",style:{color:"inherit"},children:t("addKnowledgeBase")})]})})]})}function Le({activePanel:n,theme:t,showLineNumbers:i,hoverDelayMs:r,children:l}){const{t:m}=k(),{session:u}=_(),g=!!u,d=ce(),x=U(),o=de(),[S,f]=a.useTransition(),{width:I,setWidth:w,minWidth:A,maxWidth:b}=se(),N=a.useCallback(({locale:c})=>{o&&f(()=>{x.replace(o,{locale:c})})},[o,x,f]);return ne({"settings:locale-changed":N}),!n||!l&&!ae.includes(n)?null:e.jsxs("div",{className:"semiont-toolbar-panels",style:{width:`${I}px`,position:"relative"},children:[e.jsx(ie,{onResize:w,minWidth:A,maxWidth:b,position:"left",ariaLabel:"Resize right panel"}),e.jsxs("div",{className:"semiont-toolbar-panels__content",children:[l,n==="knowledge-base"&&e.jsx(Ae,{}),n==="user"&&(g?e.jsx(ve,{}):e.jsxs("div",{className:"semiont-panel",children:[e.jsx("div",{className:"semiont-panel-header",children:e.jsx("h2",{className:"semiont-panel-header__title",children:e.jsx("span",{className:"semiont-panel-header__text",children:m("UserPanel.account")})})}),e.jsx("div",{className:"semiont-panel__content",style:{padding:"1rem",textAlign:"center"},children:e.jsx("p",{style:{color:"var(--semiont-color-neutral-400)",fontSize:"0.85rem",lineHeight:1.5},children:m("AccountPanel.notAuthenticated")})})]})),n==="settings"&&e.jsx(re,{showLineNumbers:i,theme:t,hoverDelayMs:r,locale:d,isPendingLocaleChange:S})]})]})}export{je as F,Le as T};
2
- //# sourceMappingURL=ToolbarPanels-rN1MIRTV.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ToolbarPanels-rN1MIRTV.js","sources":["../../../../node_modules/@heroicons/react/24/outline/esm/ArrowRightStartOnRectangleIcon.js","../../../../node_modules/@heroicons/react/24/outline/esm/CheckIcon.js","../../../../node_modules/@heroicons/react/24/outline/esm/PlusIcon.js","../../src/components/UserPanel.tsx","../../src/components/KnowledgeBasePanel.tsx","../../src/components/toolbar/ToolbarPanels.tsx"],"sourcesContent":["import * as React from \"react\";\nfunction ArrowRightStartOnRectangleIcon({\n title,\n titleId,\n ...props\n}, svgRef) {\n return /*#__PURE__*/React.createElement(\"svg\", Object.assign({\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 24 24\",\n strokeWidth: 1.5,\n stroke: \"currentColor\",\n \"aria-hidden\": \"true\",\n \"data-slot\": \"icon\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, /*#__PURE__*/React.createElement(\"path\", {\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n d: \"M15.75 9V5.25A2.25 2.25 0 0 0 13.5 3h-6a2.25 2.25 0 0 0-2.25 2.25v13.5A2.25 2.25 0 0 0 7.5 21h6a2.25 2.25 0 0 0 2.25-2.25V15m3 0 3-3m0 0-3-3m3 3H9\"\n }));\n}\nconst ForwardRef = /*#__PURE__*/ React.forwardRef(ArrowRightStartOnRectangleIcon);\nexport default ForwardRef;","import * as React from \"react\";\nfunction CheckIcon({\n title,\n titleId,\n ...props\n}, svgRef) {\n return /*#__PURE__*/React.createElement(\"svg\", Object.assign({\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 24 24\",\n strokeWidth: 1.5,\n stroke: \"currentColor\",\n \"aria-hidden\": \"true\",\n \"data-slot\": \"icon\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, /*#__PURE__*/React.createElement(\"path\", {\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n d: \"m4.5 12.75 6 6 9-13.5\"\n }));\n}\nconst ForwardRef = /*#__PURE__*/ React.forwardRef(CheckIcon);\nexport default ForwardRef;","import * as React from \"react\";\nfunction PlusIcon({\n title,\n titleId,\n ...props\n}, svgRef) {\n return /*#__PURE__*/React.createElement(\"svg\", Object.assign({\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 24 24\",\n strokeWidth: 1.5,\n stroke: \"currentColor\",\n \"aria-hidden\": \"true\",\n \"data-slot\": \"icon\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, /*#__PURE__*/React.createElement(\"path\", {\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n d: \"M12 4.5v15m7.5-7.5h-15\"\n }));\n}\nconst ForwardRef = /*#__PURE__*/ React.forwardRef(PlusIcon);\nexport default ForwardRef;","import React, { useState } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { sanitizeImageURL, useSessionExpiry, formatTime, useApiClient } from '@semiont/react-ui';\nimport { useAuth } from '@/hooks/useAuth';\nimport { useAuthContext } from '@/contexts/AuthContext';\nimport { useKnowledgeBaseContext } from '@/contexts/KnowledgeBaseContext';\nimport { useRouter } from '@/i18n/routing';\n\n// Fallback avatar when image fails to load or is invalid\nconst FALLBACK_AVATAR = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGNpcmNsZSBjeD0iMTYiIGN5PSIxNiIgcj0iMTYiIGZpbGw9IiM2QjcyODAiLz4KPHBhdGggZD0iTTE2IDE2QzE4LjIwOTEgMTYgMjAgMTQuMjA5MSAyMCAxMkMyMCA5Ljc5MDg2IDE4LjIwOTEgOCAxNiA4QzEzLjc5MDkgOCAxMiA5Ljc5MDg2IDEyIDEyQzEyIDE0LjIwOTEgMTMuNzkwOSAxNiAxNiAxNloiIGZpbGw9IiNFNUU3RUIiLz4KPHBhdGggZD0iTTI0IDI1QzI0IDIxLjY4NjMgMjAuNDE4MyAxOSAxNiAxOUMxMS41ODE3IDE5IDggMjEuNjg2MyA4IDI1IiBzdHJva2U9IiNFNUU3RUIiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+Cjwvc3ZnPg==';\n\nexport function UserPanel() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`UserPanel.${k}`, p as any) as string;\n const { displayName, avatarUrl, userDomain, isAdmin, isModerator } = useAuth();\n const { clearSession } = useAuthContext();\n const { activeKnowledgeBase } = useKnowledgeBaseContext();\n const apiClient = useApiClient();\n const router = useRouter();\n const [imageError, setImageError] = useState(false);\n const { timeRemaining } = useSessionExpiry();\n const sessionTimeFormatted = formatTime(timeRemaining) ?? 'Unknown';\n\n // Sanitize and validate the profile image URL\n const profileImageUrl = (() => {\n if (!avatarUrl || imageError) {\n return FALLBACK_AVATAR;\n }\n\n const sanitized = sanitizeImageURL(avatarUrl);\n if (!sanitized) {\n console.warn('Invalid profile image URL detected, using fallback');\n return FALLBACK_AVATAR;\n }\n\n return sanitized;\n })();\n\n const handleSignOut = async () => {\n try {\n await apiClient.logout();\n } catch {\n // best-effort — cookie already cleared server-side\n }\n clearSession();\n router.push('/');\n };\n\n return (\n <div className=\"semiont-user-panel\">\n <h3 className=\"semiont-user-panel__title\">\n {t('account')}\n </h3>\n\n {activeKnowledgeBase && (\n <div style={{ padding: '0 0.75rem 0.5rem', fontSize: '0.8rem', color: 'var(--semiont-color-neutral-400)' }}>\n {activeKnowledgeBase.label}\n </div>\n )}\n\n <div className=\"space-y-4\">\n {/* User Profile */}\n <div className=\"flex items-center gap-3\">\n <img\n src={profileImageUrl}\n alt={t('profileAlt', { name: displayName || t('user') })}\n width={48}\n height={48}\n className=\"w-12 h-12 rounded-full object-cover\"\n onError={() => setImageError(true)}\n />\n <div className=\"flex-1 min-w-0\">\n <div className=\"semiont-panel-text\">\n {displayName || t('user')}\n </div>\n {userDomain && (\n <div className=\"semiont-panel-text-secondary\">\n @{userDomain}\n </div>\n )}\n </div>\n </div>\n\n {/* Session Info */}\n <div>\n <label className=\"semiont-panel-label\">\n {t('session')}\n </label>\n <div className=\"semiont-session-box\">\n <div className=\"semiont-panel-hint\">\n {t('expiresIn', { time: sessionTimeFormatted })}\n </div>\n </div>\n </div>\n\n {/* Privileges */}\n {(isAdmin || isModerator) && (\n <div>\n <label className=\"semiont-panel-label\">\n {t('privileges')}\n </label>\n <div className=\"space-y-1\">\n {isAdmin && (\n <div className=\"semiont-privilege-badge semiont-privilege-badge--admin\">\n <span className=\"semiont-privilege-text\">\n {t('administrator')}\n </span>\n </div>\n )}\n {isModerator && (\n <div className=\"semiont-privilege-badge semiont-privilege-badge--moderator\">\n <span className=\"semiont-privilege-text\">\n {t('moderator')}\n </span>\n </div>\n )}\n </div>\n </div>\n )}\n\n {/* Sign Out Button */}\n <div className=\"semiont-panel-divider\">\n <button\n onClick={handleSignOut}\n className=\"semiont-signout-button\"\n >\n {t('signOut')}\n </button>\n </div>\n </div>\n </div>\n );\n}\n","import React, { useState, useEffect } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { CheckIcon, PlusIcon, ArrowRightStartOnRectangleIcon, XMarkIcon, TrashIcon } from '@heroicons/react/24/outline';\nimport { SemiontApiClient } from '@semiont/api-client';\nimport { baseUrl, email as makeEmail, accessToken, EventBus } from '@semiont/core';\nimport {\n useKnowledgeBaseContext,\n defaultProtocol,\n getKbSessionStatus,\n setKbToken,\n type KnowledgeBase,\n type KbSessionStatus,\n} from '@/contexts/KnowledgeBaseContext';\n\ntype T = (key: string, params?: Record<string, unknown>) => string;\n\nfunction generateKbId(): string {\n return crypto.randomUUID();\n}\n\nconst STATUS_COLORS: Record<KbSessionStatus, string> = {\n authenticated: 'var(--semiont-color-success-500, #22c55e)',\n expired: 'var(--semiont-color-warning-500, #eab308)',\n 'signed-out': 'var(--semiont-color-neutral-400, #9ca3af)',\n unreachable: 'var(--semiont-color-error-500, #ef4444)',\n};\n\nconst STATUS_KEYS: Record<KbSessionStatus, string> = {\n authenticated: 'statusConnected',\n expired: 'statusExpired',\n 'signed-out': 'statusSignedOut',\n unreachable: 'statusUnreachable',\n};\n\nfunction StatusDot({ status, t }: { status: KbSessionStatus; t: T }) {\n return (\n <span\n title={t(STATUS_KEYS[status])}\n style={{\n width: '0.5rem',\n height: '0.5rem',\n borderRadius: '50%',\n backgroundColor: STATUS_COLORS[status],\n flexShrink: 0,\n }}\n />\n );\n}\n\nfunction LoginForm({ t, onSubmit, onCancel, error, isSubmitting, autoFocus, pulsing, initialHost = 'localhost', initialPort = 4000, initialEmail = 'admin@example.com' }: {\n t: T;\n onSubmit: (host: string, port: number, email: string, password: string) => Promise<void>;\n onCancel: () => void;\n error: string | null;\n isSubmitting: boolean;\n autoFocus?: boolean;\n pulsing?: boolean;\n initialHost?: string;\n initialPort?: number;\n initialEmail?: string;\n}) {\n const [host, setHost] = useState(initialHost);\n const [port, setPort] = useState(String(initialPort));\n const [email, setEmail] = useState(initialEmail);\n const [password, setPassword] = useState('');\n\n return (\n <div\n className={pulsing ? 'semiont-panel__login-form--pulsing' : ''}\n style={{\n margin: '0.5rem',\n padding: '0.75rem',\n border: '1px solid var(--semiont-color-neutral-200, #e5e7eb)',\n borderRadius: 'var(--semiont-panel-border-radius, 0.5rem)',\n background: 'var(--semiont-bg-secondary, transparent)',\n }}\n >\n <h3 style={{ fontSize: '0.8rem', fontWeight: 600, marginBottom: '0.5rem' }}>{t('connectTitle')}</h3>\n <form onSubmit={(e) => { e.preventDefault(); onSubmit(host, parseInt(port, 10) || 4000, email, password); }} style={{ display: 'flex', flexDirection: 'column', gap: '0.5rem' }}>\n <div style={{ display: 'flex', gap: '0.5rem' }}>\n <input type=\"text\" value={host} onChange={e => setHost(e.target.value)} placeholder=\"Host\" className=\"semiont-input\" style={{ flex: 1 }} autoFocus={autoFocus} />\n <input type=\"number\" value={port} onChange={e => setPort(e.target.value)} placeholder=\"Port\" className=\"semiont-input\" style={{ width: '5rem' }} />\n </div>\n <input type=\"email\" value={email} onChange={e => setEmail(e.target.value)} placeholder=\"Email\" className=\"semiont-input\" />\n <input type=\"password\" value={password} onChange={e => setPassword(e.target.value)} placeholder=\"Password\" className=\"semiont-input\" />\n {error && <div style={{ color: 'var(--semiont-color-error-500, #ef4444)', fontSize: '0.75rem' }}>{error}</div>}\n <div style={{ display: 'flex', gap: '0.5rem' }}>\n <button type=\"submit\" className=\"semiont-button semiont-button--primary\" style={{ flex: 1 }} disabled={isSubmitting}>\n {isSubmitting ? t('connecting') : t('connect')}\n </button>\n <button type=\"button\" className=\"semiont-button\" onClick={onCancel}>\n <XMarkIcon style={{ width: '1rem', height: '1rem' }} />\n </button>\n </div>\n </form>\n </div>\n );\n}\n\nfunction ReauthForm({ t, kb, onSubmit, onCancel, error, isSubmitting }: {\n t: T;\n kb: KnowledgeBase;\n onSubmit: (password: string) => Promise<void>;\n onCancel: () => void;\n error: string | null;\n isSubmitting: boolean;\n}) {\n const [password, setPassword] = useState('');\n\n return (\n <form onSubmit={(e) => { e.preventDefault(); onSubmit(password); }} style={{ padding: '0.5rem 0.75rem', display: 'flex', flexDirection: 'column', gap: '0.375rem' }}>\n <div style={{ fontSize: '0.75rem', color: 'var(--semiont-color-neutral-400)' }}>{kb.email}</div>\n <input type=\"password\" value={password} onChange={e => setPassword(e.target.value)} placeholder=\"Password\" className=\"semiont-input\" style={{ fontSize: '0.8rem' }} autoFocus />\n {error && <div style={{ color: 'var(--semiont-color-error-500, #ef4444)', fontSize: '0.75rem' }}>{error}</div>}\n <div style={{ display: 'flex', gap: '0.375rem' }}>\n <button type=\"submit\" className=\"semiont-button semiont-button--primary\" style={{ flex: 1, fontSize: '0.8rem' }} disabled={isSubmitting}>\n {isSubmitting ? t('signingIn') : t('signIn')}\n </button>\n <button type=\"button\" className=\"semiont-button\" onClick={onCancel} style={{ fontSize: '0.8rem' }}>\n {t('cancel')}\n </button>\n </div>\n </form>\n );\n}\n\nasync function authenticateWithBackend(host: string, port: number, protocol: 'http' | 'https', emailStr: string, password: string): Promise<{ token: string; label: string }> {\n const origin = `${protocol}://${host}:${port}`;\n const client = new SemiontApiClient({ baseUrl: baseUrl(origin), eventBus: new EventBus() });\n\n const authResult = await client.authenticatePassword(makeEmail(emailStr), password);\n const token = (authResult as any).token ?? (authResult as any).accessToken;\n if (!token) throw new Error('No token received');\n\n let label = `${host}:${port}`;\n try {\n const status = await client.getStatus({ auth: accessToken(token) });\n if ((status as any).projectName) label = (status as any).projectName;\n } catch { /* use default label */ }\n\n return { token, label };\n}\n\nexport function KnowledgeBasePanel() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`KnowledgeBasePanel.${k}`, p as any) as string;\n const { knowledgeBases, activeKnowledgeBase, setActiveKnowledgeBase, addKnowledgeBase, removeKnowledgeBase, updateKnowledgeBase, signOut } = useKnowledgeBaseContext();\n const [showAddForm, setShowAddForm] = useState(false);\n const [addError, setAddError] = useState<string | null>(null);\n const [addSubmitting, setAddSubmitting] = useState(false);\n const [reauthKbId, setReauthKbId] = useState<string | null>(null);\n const [reauthError, setReauthError] = useState<string | null>(null);\n const [reauthSubmitting, setReauthSubmitting] = useState(false);\n const [confirmRemoveKbId, setConfirmRemoveKbId] = useState<string | null>(null);\n const [, setTick] = useState(0);\n\n useEffect(() => {\n if (knowledgeBases.length === 0) setShowAddForm(true);\n }, [knowledgeBases.length]);\n\n useEffect(() => {\n const interval = setInterval(() => setTick(t => t + 1), 30_000);\n return () => clearInterval(interval);\n }, []);\n\n const openAddForm = () => {\n setShowAddForm(true);\n setReauthKbId(null);\n setAddError(null);\n };\n\n const handleAdd = async (host: string, port: number, email: string, password: string) => {\n setAddError(null);\n setAddSubmitting(true);\n const protocol = defaultProtocol(host);\n const existing = knowledgeBases.find(kb => kb.host === host && kb.port === port);\n if (existing) {\n try {\n const { token } = await authenticateWithBackend(host, port, protocol, email, password);\n setKbToken(existing.id, token);\n setActiveKnowledgeBase(existing.id);\n setShowAddForm(false);\n } catch (err) {\n setAddError(err instanceof Error ? err.message : String(err));\n } finally {\n setAddSubmitting(false);\n }\n return;\n }\n try {\n const { token, label } = await authenticateWithBackend(host, port, protocol, email, password);\n const id = generateKbId();\n setKbToken(id, token);\n addKnowledgeBase({ id, label, host, port, protocol, email });\n setShowAddForm(false);\n } catch (err) {\n setAddError(err instanceof Error ? err.message : String(err));\n } finally {\n setAddSubmitting(false);\n }\n };\n\n const handleReauth = async (kbId: string, password: string) => {\n const kb = knowledgeBases.find(k => k.id === kbId);\n if (!kb) return;\n setReauthError(null);\n setReauthSubmitting(true);\n try {\n const { token, label } = await authenticateWithBackend(kb.host, kb.port, kb.protocol, kb.email, password);\n setKbToken(kbId, token);\n updateKnowledgeBase(kbId, { label });\n setReauthKbId(null);\n setActiveKnowledgeBase(kbId);\n } catch (err) {\n setReauthError(err instanceof Error ? err.message : String(err));\n } finally {\n setReauthSubmitting(false);\n }\n };\n\n const handleKbClick = (kb: KnowledgeBase) => {\n const status = getKbSessionStatus(kb.id);\n if (status === 'authenticated') {\n setActiveKnowledgeBase(kb.id);\n } else {\n setReauthKbId(kb.id);\n setShowAddForm(false);\n setReauthError(null);\n }\n };\n\n return (\n <div className=\"semiont-panel\">\n <div className=\"semiont-panel-header\">\n <h2 className=\"semiont-panel-header__title\">\n <span className=\"semiont-panel-header__text\">{t('title')}</span>\n <span className=\"semiont-panel-header__count\">({knowledgeBases.length})</span>\n </h2>\n </div>\n <div className=\"semiont-panel__content\">\n <div className=\"semiont-panel__list\">\n {knowledgeBases.map((kb: KnowledgeBase) => {\n const status = getKbSessionStatus(kb.id);\n const isActive = kb.id === activeKnowledgeBase?.id;\n const isReauthing = reauthKbId === kb.id;\n\n return (\n <div key={kb.id}>\n <div\n className={`semiont-panel-item semiont-panel-item--clickable${isActive ? ' semiont-panel-item--selected' : ''}`}\n style={{ display: 'flex', flexDirection: 'column', gap: '0.25rem', cursor: 'pointer', padding: '0.5rem 0.75rem' }}\n onClick={() => handleKbClick(kb)}\n >\n <div style={{ display: 'flex', alignItems: 'center', gap: '0.5rem' }}>\n <StatusDot status={status} t={t} />\n <span className=\"semiont-panel-text\" style={{ flex: 1, fontWeight: 500 }}>{kb.label}</span>\n {isActive && (\n <CheckIcon style={{ width: '1rem', height: '1rem', color: 'var(--semiont-color-primary-500)', flexShrink: 0 }} />\n )}\n {status === 'authenticated' && (\n <button\n onClick={(e) => { e.stopPropagation(); signOut(kb.id); }}\n title={t('signOut')}\n style={{ background: 'none', border: 'none', cursor: 'pointer', padding: '0.125rem', color: 'var(--semiont-color-neutral-400)' }}\n >\n <ArrowRightStartOnRectangleIcon style={{ width: '0.875rem', height: '0.875rem' }} />\n </button>\n )}\n <button\n onClick={(e) => { e.stopPropagation(); setConfirmRemoveKbId(kb.id); }}\n title={t('remove')}\n style={{ background: 'none', border: 'none', cursor: 'pointer', padding: '0.125rem', color: 'var(--semiont-color-neutral-400)' }}\n >\n <TrashIcon style={{ width: '0.875rem', height: '0.875rem' }} />\n </button>\n </div>\n <span className=\"semiont-panel-text-secondary\" style={{ fontSize: '0.7rem', paddingLeft: '1rem' }}>\n {kb.host}:{kb.port}\n </span>\n </div>\n {confirmRemoveKbId === kb.id && (\n <div style={{\n padding: '0.5rem 0.75rem',\n fontSize: '0.8rem',\n display: 'flex',\n alignItems: 'center',\n gap: '0.5rem',\n background: 'var(--semiont-bg-secondary, #f9fafb)',\n borderBottom: '1px solid var(--semiont-color-neutral-200, #e5e7eb)',\n }}>\n <span style={{ flex: 1, color: 'var(--semiont-color-neutral-500)' }}>{t('removeConfirm', { label: kb.label })}</span>\n <button\n onClick={() => { removeKnowledgeBase(kb.id); setConfirmRemoveKbId(null); }}\n className=\"semiont-button\"\n style={{ fontSize: '0.75rem', padding: '0.2rem 0.5rem', color: 'var(--semiont-color-error-500, #ef4444)' }}\n >\n {t('remove')}\n </button>\n <button\n onClick={() => setConfirmRemoveKbId(null)}\n className=\"semiont-button\"\n style={{ fontSize: '0.75rem', padding: '0.2rem 0.5rem' }}\n >\n {t('cancel')}\n </button>\n </div>\n )}\n {isReauthing && (\n <ReauthForm\n t={t}\n kb={kb}\n onSubmit={(password) => handleReauth(kb.id, password)}\n onCancel={() => setReauthKbId(null)}\n error={reauthError}\n isSubmitting={reauthSubmitting}\n />\n )}\n </div>\n );\n })}\n </div>\n\n {showAddForm && (\n <LoginForm\n t={t}\n onSubmit={handleAdd}\n onCancel={() => setShowAddForm(false)}\n error={addError}\n isSubmitting={addSubmitting}\n autoFocus={knowledgeBases.length === 0}\n pulsing={knowledgeBases.length === 0}\n />\n )}\n </div>\n\n {!showAddForm && (\n <div className=\"semiont-panel-footer\">\n <button\n onClick={openAddForm}\n className=\"semiont-panel-item semiont-panel-item--clickable\"\n style={{ width: '100%', display: 'flex', alignItems: 'center', gap: '0.5rem', color: 'var(--semiont-color-primary-600)' }}\n >\n <PlusIcon style={{ width: '1rem', height: '1rem', flexShrink: 0 }} />\n <span className=\"semiont-panel-text\" style={{ color: 'inherit' }}>{t('addKnowledgeBase')}</span>\n </button>\n </div>\n )}\n </div>\n );\n}\n","import React, { useTransition, useEffect, useCallback } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { SettingsPanel, ResizeHandle, usePanelWidth, EventBusProvider, useEventSubscriptions } from '@semiont/react-ui';\nimport { UserPanel } from '../UserPanel';\nimport { KnowledgeBasePanel } from '../KnowledgeBasePanel';\nimport { useAuthContext } from '@/contexts/AuthContext';\nimport { useLocale } from '@/i18n/routing';\nimport { usePathname, useRouter } from '@/i18n/routing';\nimport { COMMON_PANELS } from '@semiont/react-ui';\nimport type { ToolbarPanelType } from '@semiont/react-ui';\n\ninterface ToolbarPanelsProps {\n activePanel: ToolbarPanelType | null;\n /** Theme setting */\n theme: 'light' | 'dark' | 'system';\n /** Line numbers setting */\n showLineNumbers: boolean;\n /** Hover delay setting */\n hoverDelayMs: number;\n /** Custom panel content for context-specific panels */\n children?: React.ReactNode;\n}\n\n/**\n * Renders the toolbar panel container with common panels (user, settings)\n * and any context-specific panels passed as children.\n *\n * Settings changes are handled via GlobalSettingsEventBus - no callbacks needed.\n *\n * @example\n * // Simple context (compose, discover, moderate, admin pages)\n * <ToolbarPanels\n * activePanel={activePanel}\n * theme={theme}\n * showLineNumbers={showLineNumbers}\n * />\n *\n * @example\n * // Document context with custom panels\n * <ToolbarPanels\n * activePanel={activePanel}\n * theme={theme}\n * showLineNumbers={showLineNumbers}\n * >\n * {activePanel === 'annotations' && <UnifiedAnnotationsPanel ... />}\n * {activePanel === 'history' && <AnnotationHistory ... />}\n * {activePanel === 'info' && <ResourceInfoPanel ... />}\n * {activePanel === 'collaboration' && <CollaborationPanel ... />}\n * {activePanel === 'jsonld' && <JsonLdPanel ... />}\n * </ToolbarPanels>\n */\nexport function ToolbarPanels({\n activePanel,\n theme,\n showLineNumbers,\n hoverDelayMs,\n children\n}: ToolbarPanelsProps) {\n const { t: _t } = useTranslation();\n const { session } = useAuthContext();\n const isAuthenticated = !!session;\n const locale = useLocale();\n const router = useRouter();\n const pathname = usePathname();\n const [isPending, startTransition] = useTransition();\n\n // Panel width management with localStorage persistence\n const { width, setWidth, minWidth, maxWidth } = usePanelWidth();\n\n // Handle locale change events\n const handleLocaleChanged = useCallback(({ locale: newLocale }: { locale: string }) => {\n if (!pathname) return;\n\n startTransition(() => {\n // The router from @/i18n/routing is locale-aware and will handle the locale prefix\n router.replace(pathname, { locale: newLocale });\n });\n }, [pathname, router, startTransition]);\n\n // Subscribe to locale change events\n useEventSubscriptions({\n 'settings:locale-changed': handleLocaleChanged,\n });\n\n // Don't render container if no panel is active\n if (!activePanel) {\n return null;\n }\n\n // In simple context (no children), only user and settings panels are valid.\n // If a resource-specific panel is still active from a previous route, hide the container.\n if (!children && !COMMON_PANELS.includes(activePanel)) {\n return null;\n }\n\n return (\n <div className=\"semiont-toolbar-panels\" style={{ width: `${width}px`, position: 'relative' }}>\n {/* Resize handle on left edge */}\n <ResizeHandle\n onResize={setWidth}\n minWidth={minWidth}\n maxWidth={maxWidth}\n position=\"left\"\n ariaLabel=\"Resize right panel\"\n />\n\n {/* Custom context-specific panels */}\n <div className=\"semiont-toolbar-panels__content\">\n {children}\n\n {/* Knowledge Base Panel - common to all contexts */}\n {activePanel === 'knowledge-base' && (\n <KnowledgeBasePanel />\n )}\n\n {/* User Panel - requires authentication */}\n {activePanel === 'user' && (\n isAuthenticated ? (\n <UserPanel />\n ) : (\n <div className=\"semiont-panel\">\n <div className=\"semiont-panel-header\">\n <h2 className=\"semiont-panel-header__title\">\n <span className=\"semiont-panel-header__text\">{_t('UserPanel.account')}</span>\n </h2>\n </div>\n <div className=\"semiont-panel__content\" style={{ padding: '1rem', textAlign: 'center' }}>\n <p style={{ color: 'var(--semiont-color-neutral-400)', fontSize: '0.85rem', lineHeight: 1.5 }}>\n {_t('AccountPanel.notAuthenticated')}\n </p>\n </div>\n </div>\n )\n )}\n\n {/* Settings Panel - common to all contexts */}\n {activePanel === 'settings' && (\n <SettingsPanel\n showLineNumbers={showLineNumbers}\n theme={theme}\n hoverDelayMs={hoverDelayMs}\n locale={locale}\n isPendingLocaleChange={isPending}\n />\n )}\n </div>\n </div>\n );\n}\n"],"names":["ArrowRightStartOnRectangleIcon","title","titleId","props","svgRef","React.createElement","ForwardRef","React.forwardRef","CheckIcon","PlusIcon","FALLBACK_AVATAR","UserPanel","_t","useTranslation","k","p","displayName","avatarUrl","userDomain","isAdmin","isModerator","useAuth","clearSession","useAuthContext","activeKnowledgeBase","useKnowledgeBaseContext","apiClient","useApiClient","router","useRouter","imageError","setImageError","useState","timeRemaining","useSessionExpiry","sessionTimeFormatted","formatTime","profileImageUrl","sanitized","sanitizeImageURL","handleSignOut","jsxs","jsx","generateKbId","STATUS_COLORS","STATUS_KEYS","StatusDot","status","LoginForm","t","onSubmit","onCancel","error","isSubmitting","autoFocus","pulsing","initialHost","initialPort","initialEmail","host","setHost","port","setPort","email","setEmail","password","setPassword","e","XMarkIcon","ReauthForm","kb","authenticateWithBackend","protocol","emailStr","origin","client","SemiontApiClient","baseUrl","EventBus","authResult","makeEmail","token","label","accessToken","KnowledgeBasePanel","knowledgeBases","setActiveKnowledgeBase","addKnowledgeBase","removeKnowledgeBase","updateKnowledgeBase","signOut","showAddForm","setShowAddForm","addError","setAddError","addSubmitting","setAddSubmitting","reauthKbId","setReauthKbId","reauthError","setReauthError","reauthSubmitting","setReauthSubmitting","confirmRemoveKbId","setConfirmRemoveKbId","setTick","useEffect","interval","openAddForm","handleAdd","defaultProtocol","existing","setKbToken","err","id","handleReauth","kbId","handleKbClick","getKbSessionStatus","isActive","isReauthing","TrashIcon","ToolbarPanels","activePanel","theme","showLineNumbers","hoverDelayMs","children","session","isAuthenticated","locale","useLocale","pathname","usePathname","isPending","startTransition","useTransition","width","setWidth","minWidth","maxWidth","usePanelWidth","handleLocaleChanged","useCallback","newLocale","useEventSubscriptions","COMMON_PANELS","ResizeHandle","SettingsPanel"],"mappings":"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","x_google_ignoreList":[0,1,2]}
@@ -1,2 +0,0 @@
1
- var u={annotations:"التعليقات التوضيحية",history:"السجل",resourceInfo:"معلومات المورد",collaboration:"التعاون",userAccount:"حساب المستخدم",settings:"الإعدادات",knowledgeBase:"قاعدة المعرفة"},A={title:"معلومات المورد",locale:"اللغة المحلية",notSpecified:"غير محدد",entityTypeTags:"علامات نوع الكيان",representation:"التمثيل",mediaType:"نوع الوسائط",byteSize:"الحجم",clone:"استنساخ",cloneDescription:"إنشاء رابط استنساخ قابل للمشاركة لهذا المورد",archive:"أرشفة",archiveDescription:"نقل هذا المورد إلى حالة الأرشيف",unarchive:"إلغاء الأرشفة",unarchiveDescription:"استعادة هذا المورد إلى الحالة النشطة",provenance:"المصدر والسلسلة",createdAt:"تاريخ الإنشاء",modifiedAt:"تاريخ التعديل",creationMethod:"طريقة الإنشاء",attributedTo:"منسوب إلى",derivedFrom:"مشتق من",generatedBy:"أُنشئ بواسطة"},e={title:"التعاون",connectionStatus:"حالة الاتصال",live:"مباشر",disconnected:"غير متصل",events:"{{count}} أحداث",lastSync:"آخر مزامنة:",noActivity:"لا يوجد نشاط بعد",justNow:"الآن",secondsAgo:"منذ {{count}} ثوانٍ",minuteAgo:"منذ دقيقة واحدة",minutesAgo:"منذ {{count}} دقائق",hourAgo:"منذ ساعة واحدة",hoursAgo:"منذ {{count}} ساعات",realtimeActive:"التحديثات في الوقت الفعلي نشطة",reconnecting:"جارٍ إعادة الاتصال بالخادم...",sharing:"المشاركة",collaborationComingSoon:"ميزات التعاون قادمة قريبًا"},t={history:"السجل",loading:"جارٍ التحميل...",user:"المستخدم",method:"الطريقة",viewOriginal:"عرض الأصل",viewAnnotation:"عرض التعليق التوضيحي: {{content}}",resourceCreated:"تم إنشاء المورد",resourceCloned:"تم الاستنساخ",resourceArchived:"تمت الأرشفة",resourceUnarchived:"تم إلغاء الأرشفة",highlightAdded:"تمت إضافة تمييز",highlightRemoved:"تمت إزالة التمييز",referenceCreated:"تم إنشاء مرجع",referenceResolved:"تم حل المرجع",referenceDeleted:"تم حذف المرجع",entitytagAdded:"تمت إضافة علامة",entitytagRemoved:"تمت إزالة العلامة",assessmentAdded:"تمت إضافة تقييم",assessmentRemoved:"تمت إزالة التقييم",annotationAdded:"تمت إضافة تعليق توضيحي",annotationRemoved:"تمت إزالة التعليق التوضيحي",annotationBodyUpdated:"تم تحديث التعليق التوضيحي",jobEvent:"حدث مهمة",justNow:"الآن",minutesAgo:"منذ {{count}}د",hoursAgo:"منذ {{count}}س",daysAgo:"منذ {{count}}ي"},n={title:"التعليقات",noComments:"لا توجد تعليقات بعد. حدد نصًا وانقر على تعليق لإضافة واحد.",commentPlaceholder:"اكتب تعليقك هنا...",save:"حفظ",cancel:"إلغاء",edit:"تعديل",annotateComments:"توضيح التعليقات",instructions:"التعليمات",optional:"(اختياري)",instructionsPlaceholder:"مثال: التركيز على المصطلحات التقنية...",annotate:"توضيح",annotating:"جارٍ التوضيح...",toneLabel:"النبرة",toneOptional:"(اختياري)",toneScholarly:"أكاديمي",toneExplanatory:"توضيحي",toneConversational:"حواري",toneTechnical:"تقني",densityLabel:"الكثافة",densitySparse:"متفرق",densityDense:"كثيف",fragmentSelected:"تم تحديد جزء",imageRegionSelected:"تم تحديد منطقة من الصورة",closeProgress:"إغلاق"},a={title:"التمييزات",noHighlights:"لا توجد تمييزات بعد. استخدم التوضيح بالذكاء الاصطناعي للعثور على الفقرات المهمة.",annotateHighlights:"توضيح التمييزات",instructions:"التعليمات",optional:"(اختياري)",instructionsPlaceholder:"مثال: التركيز على المفاهيم التقنية الرئيسية...",annotate:"توضيح",annotating:"جارٍ التوضيح...",cancel:"إلغاء",densityLabel:"الكثافة",densitySparse:"متفرق",densityDense:"كثيف",closeProgress:"إغلاق"},o={title:"التقييمات",noAssessments:"لا توجد تقييمات بعد. استخدم التوضيح بالذكاء الاصطناعي لتقييم الفقرات.",assessmentPlaceholder:"اكتب تقييمك هنا...",save:"حفظ",cancel:"إلغاء",annotateAssessments:"توضيح التقييمات",instructions:"التعليمات",optional:"(اختياري)",instructionsPlaceholder:"مثال: تقييم الادعاءات من حيث الدقة والأدلة...",annotate:"توضيح",annotating:"جارٍ التوضيح...",toneLabel:"النبرة",toneOptional:"(اختياري)",toneAnalytical:"تحليلي",toneCritical:"نقدي",toneBalanced:"متوازن",toneConstructive:"بنّاء",densityLabel:"الكثافة",densitySparse:"متفرق",densityDense:"كثيف",fragmentSelected:"تم تحديد جزء",imageRegionSelected:"تم تحديد منطقة من الصورة",closeProgress:"إغلاق"},i={title:"العلامات",noTags:"لا توجد علامات بعد. استخدم التوضيح بالذكاء الاصطناعي لتحديد الأدوار الهيكلية.",annotateTags:"توضيح العلامات",selectSchema:"اختيار الإطار",schemaLegal:"التحليل القانوني (IRAC)",schemaScientific:"الورقة العلمية (IMRAD)",schemaArgument:"بنية الحجة (Toulmin)",selectCategories:"اختيار الفئات",categoryIssue:"القضية",categoryRule:"القاعدة",categoryApplication:"التطبيق",categoryConclusion:"الخاتمة",categoryIntroduction:"المقدمة",categoryMethods:"المناهج",categoryResults:"النتائج",categoryDiscussion:"المناقشة",categoryClaim:"الادعاء",categoryEvidence:"الدليل",categoryWarrant:"المبرر",categoryCounterargument:"الحجة المضادة",categoryRebuttal:"الدحض",annotate:"توضيح",annotating:"جارٍ التوضيح...",cancel:"إلغاء",selectAll:"تحديد الكل",deselectAll:"إلغاء تحديد الكل",categoriesSelected:"{count, plural, =0 {لم يتم تحديد فئات} =1 {فئة واحدة محددة} other {# فئات محددة}}",createTagForSelection:"إنشاء علامة للتحديد",selectCategory:"اختيار الفئة",chooseCategory:"اختر فئة...",fragmentSelected:"تم تحديد جزء",imageRegionSelected:"تم تحديد منطقة من الصورة"},s={title:"التعليقات التوضيحية",statistics:"الإحصائيات",highlight:"التمييزات",reference:"المراجع",assessment:"التقييمات",comment:"التعليقات",tag:"العلامات"},r={title:"الإحصائيات",highlights:"التمييزات",comments:"التعليقات",assessments:"التقييمات",tags:"العلامات",references:"المراجع",stub:"مبدئي",resolved:"محلول",entityTypes:"أنواع الكيانات"},l={title:"المراجع",noReferences:"لا توجد مراجع بعد. حدد نصًا لإنشاء مراجع لموارد أخرى.",outgoingReferences:"المراجع الصادرة",incomingReferences:"المراجع الواردة",noIncomingReferences:"لا توجد مراجع واردة",stub:"مرجع مبدئي (غير مربوط)",resolved:"مرجع محلول (مربوط)",open:"فتح",unlink:"إلغاء الربط",resolve:"حل المرجع",cancel:"إلغاء",createReference:"إنشاء مرجع",entityTypesOptional:"أنواع الكيانات (اختياري)",fragmentSelected:"تم تحديد جزء",imageRegionSelected:"تم تحديد منطقة من الصورة",annotateReferences:"توضيح المراجع",selectEntityTypes:"أنواع الكيانات:",select:"تحديد",deselect:"إلغاء التحديد",noEntityTypes:"لا توجد أنواع كيانات متاحة",typesSelected:"{count, plural, =1 {نوع واحد محدد} other {# أنواع محددة}}",annotate:"توضيح",annotating:"جارٍ التوضيح...",includeDescriptiveReferences:"تضمين المراجع الوصفية",descriptiveReferencesTooltip:"البحث أيضًا عن عبارات مثل 'الرئيس التنفيذي'، 'عملاق التكنولوجيا'، 'الفيزيائي' (بالإضافة إلى الأسماء)",annotationProgressTitle:"توضيح مراجع الكيانات",cancelAnnotation:"إلغاء التوضيح",found:"تم العثور على {{count}}",complete:"اكتمل التوضيح!",failed:"فشل التوضيح",current:"الحالي: {{entityType}}",closeProgress:"إغلاق",loading:"جارٍ التحميل...",loadingEllipsis:"جارٍ التحميل...",untitledResource:"مورد بدون عنوان",noText:"لا يوجد نص"},c={title:"اختصارات لوحة المفاتيح",closeDialog:"إغلاق مربع الحوار",or:"أو",navigationTitle:"التنقل",navOpenSearch:"فتح البحث الشامل",navOpenSearchAlt:"فتح البحث الشامل (بديل)",navCreateResource:"إنشاء مورد جديد",navCloseOverlays:"إغلاق جميع الطبقات العلوية (ضغط مزدوج)",navShowHelp:"عرض مساعدة اختصارات لوحة المفاتيح",sidebarTitle:"الشريط الجانبي للمعرفة",sidebarCollapse:"طي الشريط الجانبي",sidebarExpand:"توسيع الشريط الجانبي",sidebarPickup:"التقاط علامة تبويب المورد (عند التركيز)",sidebarMove:"نقل علامة تبويب المورد (أثناء السحب)",sidebarDrop:"إفلات علامة تبويب المورد (أثناء السحب)",sidebarCancel:"إلغاء عملية السحب",annotationsTitle:"تعليقات المورد التوضيحية",annotHighlight:"إنشاء تمييز من التعليق التوضيحي (مباشر)",annotReference:"فتح نافذة المرجع المنبثقة للتعليق التوضيحي",annotDelete:"حذف التعليق التوضيحي المركّز عليه",annotNavigate:"التنقل عبر التعليقات التوضيحية",annotNavigateBack:"التنقل عبر التعليقات التوضيحية للخلف",listsTitle:"القوائم والشبكات",listsFilterNav:"التنقل بين مرشحات أنواع الكيانات",listsGridNav:"التنقل في شبكة الموارد",listsJumpFirst:"الانتقال إلى العنصر الأول",listsJumpLast:"الانتقال إلى العنصر الأخير",searchModalTitle:"في نافذة البحث",searchNav:"التنقل في نتائج البحث",searchSelect:"اختيار النتيجة",searchClose:"إغلاق البحث",modalTitle:"عناصر التحكم في النوافذ المنبثقة",modalClose:"إغلاق النافذة المنبثقة النشطة",modalNavForward:"التنقل للأمام عبر الأزرار",modalNavBackward:"التنقل للخلف عبر الأزرار",modalActivate:"تفعيل الزر المركّز عليه",accessibilityTitle:"إمكانية الوصول",a11ySkipLinks:"الانتقال إلى روابط التخطي (عند بداية الصفحة)",a11yFollowLink:"اتباع رابط التخطي",macNote:"استخدام اختصارات لوحة مفاتيح Mac. ⌘ هو مفتاح Command.",windowsNote:"استخدام اختصارات لوحة مفاتيح Windows/Linux. Ctrl هو مفتاح التحكم.",footerHint:"اضغط {{key}} في أي وقت لعرض هذه المساعدة",close:"إغلاق"},D={modeGroup:"الوضع",browse:"تصفح",annotate:"توضيح",selectionGroup:"الدافع",clickGroup:"النقر",shapeGroup:"الشكل",none:"لا شيء",linking:"مرجع",highlighting:"تمييز",assessing:"تقييم",commenting:"تعليق",tagging:"علامة",detail:"تفصيل",follow:"متابعة",deleting:"حذف",jsonld:"JSON-LD",rectangle:"مستطيل",circle:"دائرة",polygon:"مضلع"},F={title:"التنقل",collapseSidebar:"طي الشريط الجانبي",expandSidebar:"توسيع الشريط الجانبي",dragToReorder:"اسحب لإعادة الترتيب",dragToReorderDoc:"اسحب لإعادة ترتيب {{name}}",closeResource:"إغلاق المورد",dragInstructions:"لإعادة ترتيب الموارد: استخدم Tab للانتقال إلى مورد. اضغط Alt+سهم لأعلى للتحريك لأعلى أو Alt+سهم لأسفل للتحريك لأسفل. للسحب والإفلات: اضغط على شريط المسافة لالتقاط العنصر. استخدم مفاتيح الأسهم لتحريكه. اضغط على شريط المسافة مرة أخرى للإفلات."},d={deleteConfirmationTitle:"حذف التعليق التوضيحي",deleteConfirmationMessage:"هل أنت متأكد أنك تريد حذف هذا التعليق التوضيحي؟ لا يمكن التراجع عن هذا الإجراء.",deleteConfirmationCancel:"إلغاء",deleteConfirmationDelete:"حذف"},g={title:"الإعدادات",lineNumbers:"أرقام الأسطر",lineNumbersVisible:"مرئية",lineNumbersHidden:"مخفية",theme:"السمة",themeLight:"فاتح",themeDark:"داكن",themeSystem:"النظام",themeSystemActive:"النظام ({{mode}})",themeModeActive:"استخدام وضع {{mode}}",language:"اللغة",languageHint:"تغيير اللغة في شريط التنقل الرئيسي",languageChanging:"جارٍ تغيير اللغة...",hoverDelay:"تأخير التمرير",hoverDelayFast:"سريع",hoverDelaySlow:"بطيء",hoverDelayDescription:"تأخير {{delay}} ميلي ثانية قبل ظهور تأثيرات التمرير"},C={},m={gatherTitle:"السياق المُجمَّع",configureGenerationTitle:"تكوين التوليد",configureSearchTitle:"إعدادات البحث",searchResultsTitle:"نتائج البحث",sourceContextLabel:"سياق التعليق التوضيحي في المورد",connectionsLabel:"التعليقات التوضيحية للأقران",citedByLabel:"المورد مُستشهد به من قِبل",userHintLabel:"تلميح",userHintPlaceholder:"صف ما يشير إليه هذا التعليق التوضيحي...",loadingContext:"جارٍ جمع السياق...",failedContext:"فشل في جمع السياق",cancel:"إلغاء",generate:"توليد",compose:"تأليف",resolutionStrategyLabel:"استراتيجية الحل",back:"رجوع",link:"رابط",score:"درجة",noResults:"لم يتم العثور على نتائج",resourceTitle:"عنوان المورد",resourceTitlePlaceholder:"أدخل عنوان المورد...",additionalInstructions:"تعليمات إضافية",additionalInstructionsPlaceholder:"أدخل تعليمات إضافية...",language:"اللغة",languageHelp:"لغة المحتوى المُولَّد",creativity:"الإبداع",creativityFocused:"مركّز",creativityCreative:"إبداعي",maxLength:"الحد الأقصى للطول",maxLengthHelp:"العدد الأقصى من الرموز",maxResults:"الحد الأقصى للنتائج",semanticScoring:"التقييم الدلالي",semanticScoringHelp:"استخدام الذكاء الاصطناعي لتقييم النتائج حسب الصلة الدلالية",searching:"جاري البحث...",search:"بحث"},h={Toolbar:u,ResourceInfoPanel:A,CollaborationPanel:e,AnnotationHistory:t,CommentsPanel:n,HighlightPanel:a,AssessmentPanel:o,TaggingPanel:i,UnifiedAnnotationsPanel:s,StatisticsPanel:r,ReferencesPanel:l,KeyboardShortcuts:c,AnnotateToolbar:D,CollapsibleResourceNavigation:F,ResourceViewer:d,Settings:g,AnnotateView:C,ReferenceWizard:m};export{D as AnnotateToolbar,C as AnnotateView,t as AnnotationHistory,o as AssessmentPanel,e as CollaborationPanel,F as CollapsibleResourceNavigation,n as CommentsPanel,a as HighlightPanel,c as KeyboardShortcuts,m as ReferenceWizard,l as ReferencesPanel,A as ResourceInfoPanel,d as ResourceViewer,g as Settings,r as StatisticsPanel,i as TaggingPanel,u as Toolbar,s as UnifiedAnnotationsPanel,h as default};
2
- //# sourceMappingURL=ar-R4CRNXEF-Ca4TvZQX.js.map