@semiont/cli 0.4.15 → 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 (229) hide show
  1. package/dist/cli.mjs +3829 -9040
  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/{CookiePreferences-CO_BNHwm.js → CookiePreferences-BDtMuCT2.js} +2 -2
  6. package/dist/frontend/dist/assets/{CookiePreferences-CO_BNHwm.js.map → CookiePreferences-BDtMuCT2.js.map} +1 -1
  7. package/dist/frontend/dist/assets/{PdfAnnotationCanvas.client-CHDCGQBR-BLaEAPe0.js → PdfAnnotationCanvas.client-CHDCGQBR-CuWwI0uw.js} +2 -2
  8. package/dist/frontend/dist/assets/{PdfAnnotationCanvas.client-CHDCGQBR-BLaEAPe0.js.map → PdfAnnotationCanvas.client-CHDCGQBR-CuWwI0uw.js.map} +1 -1
  9. package/dist/frontend/dist/assets/ToolbarPanels-mrjx6GSA.js +2 -0
  10. package/dist/frontend/dist/assets/ToolbarPanels-mrjx6GSA.js.map +1 -0
  11. package/dist/frontend/dist/assets/ar-3W37O3R3-BJ1fDUvB.js +2 -0
  12. package/dist/frontend/dist/assets/ar-3W37O3R3-BJ1fDUvB.js.map +1 -0
  13. package/dist/frontend/dist/assets/bn-JZTJLMVE-k1gI6ffq.js +2 -0
  14. package/dist/frontend/dist/assets/bn-JZTJLMVE-k1gI6ffq.js.map +1 -0
  15. package/dist/frontend/dist/assets/{client-RpFyflU_.js → client-Dwyu_mF1.js} +2 -2
  16. package/dist/frontend/dist/assets/{client-RpFyflU_.js.map → client-Dwyu_mF1.js.map} +1 -1
  17. package/dist/frontend/dist/assets/{client-bqO7W1Xj.js → client-mCvsMrtH.js} +2 -2
  18. package/dist/frontend/dist/assets/{client-bqO7W1Xj.js.map → client-mCvsMrtH.js.map} +1 -1
  19. package/dist/frontend/dist/assets/{client-xJTgSko3.js → client-so55bcfy.js} +2 -2
  20. package/dist/frontend/dist/assets/{client-xJTgSko3.js.map → client-so55bcfy.js.map} +1 -1
  21. package/dist/frontend/dist/assets/{client-ekxuarKC.js → client-w-_FzMWW.js} +2 -2
  22. package/dist/frontend/dist/assets/{client-ekxuarKC.js.map → client-w-_FzMWW.js.map} +1 -1
  23. package/dist/frontend/dist/assets/cs-XYHH7HNE-BqQWIWM9.js +2 -0
  24. package/dist/frontend/dist/assets/cs-XYHH7HNE-BqQWIWM9.js.map +1 -0
  25. package/dist/frontend/dist/assets/da-MZKIECVT-pufSb0d_.js +2 -0
  26. package/dist/frontend/dist/assets/da-MZKIECVT-pufSb0d_.js.map +1 -0
  27. package/dist/frontend/dist/assets/de-AYXTMRQW-BRMduIa0.js +2 -0
  28. package/dist/frontend/dist/assets/de-AYXTMRQW-BRMduIa0.js.map +1 -0
  29. package/dist/frontend/dist/assets/el-A6CVQWAW-DycBhXUi.js +2 -0
  30. package/dist/frontend/dist/assets/el-A6CVQWAW-DycBhXUi.js.map +1 -0
  31. package/dist/frontend/dist/assets/es-M2HXLJGT-BFQ6WIpw.js +2 -0
  32. package/dist/frontend/dist/assets/es-M2HXLJGT-BFQ6WIpw.js.map +1 -0
  33. package/dist/frontend/dist/assets/fa-V6JZJDYP-C8CwCeSd.js +2 -0
  34. package/dist/frontend/dist/assets/fa-V6JZJDYP-C8CwCeSd.js.map +1 -0
  35. package/dist/frontend/dist/assets/fi-ONDTZ5H7-aby5--Ip.js +2 -0
  36. package/dist/frontend/dist/assets/fi-ONDTZ5H7-aby5--Ip.js.map +1 -0
  37. package/dist/frontend/dist/assets/fr-PAPV4H4G-D9SFT8MA.js +2 -0
  38. package/dist/frontend/dist/assets/fr-PAPV4H4G-D9SFT8MA.js.map +1 -0
  39. package/dist/frontend/dist/assets/he-F6VTLJLW-B8Rc1C-m.js +2 -0
  40. package/dist/frontend/dist/assets/he-F6VTLJLW-B8Rc1C-m.js.map +1 -0
  41. package/dist/frontend/dist/assets/hi-CFUAV4BF-CuWy2y7I.js +2 -0
  42. package/dist/frontend/dist/assets/hi-CFUAV4BF-CuWy2y7I.js.map +1 -0
  43. package/dist/frontend/dist/assets/id-NBKLCCI7-DnMwKKq7.js +2 -0
  44. package/dist/frontend/dist/assets/id-NBKLCCI7-DnMwKKq7.js.map +1 -0
  45. package/dist/frontend/dist/assets/{index-XWcEpo5a.js → index-CqzrFNnV.js} +48 -48
  46. package/dist/frontend/dist/assets/index-CqzrFNnV.js.map +1 -0
  47. package/dist/frontend/dist/assets/index-DNL392dn.css +1 -0
  48. package/dist/frontend/dist/assets/it-SLSOWVVU-hrlm8f9F.js +2 -0
  49. package/dist/frontend/dist/assets/it-SLSOWVVU-hrlm8f9F.js.map +1 -0
  50. package/dist/frontend/dist/assets/ja-L5IG4ECE-BvMVB5sy.js +2 -0
  51. package/dist/frontend/dist/assets/ja-L5IG4ECE-BvMVB5sy.js.map +1 -0
  52. package/dist/frontend/dist/assets/ko-QYMTULKK-CNEZe0oy.js +2 -0
  53. package/dist/frontend/dist/assets/ko-QYMTULKK-CNEZe0oy.js.map +1 -0
  54. package/dist/frontend/dist/assets/{layout-ChyKFPPP.js → layout-B3hxaRnF.js} +2 -2
  55. package/dist/frontend/dist/assets/{layout-ChyKFPPP.js.map → layout-B3hxaRnF.js.map} +1 -1
  56. package/dist/frontend/dist/assets/{layout-BN0UEIdX.js → layout-Cmn1yGWi.js} +2 -2
  57. package/dist/frontend/dist/assets/{layout-BN0UEIdX.js.map → layout-Cmn1yGWi.js.map} +1 -1
  58. package/dist/frontend/dist/assets/{layout-BFanPfv_.js → layout-CsUwTEip.js} +2 -2
  59. package/dist/frontend/dist/assets/{layout-BFanPfv_.js.map → layout-CsUwTEip.js.map} +1 -1
  60. package/dist/frontend/dist/assets/layout-DXjUb5pL.js +2 -0
  61. package/dist/frontend/dist/assets/layout-DXjUb5pL.js.map +1 -0
  62. package/dist/frontend/dist/assets/ms-5DGSFKM2-BlyezW6W.js +2 -0
  63. package/dist/frontend/dist/assets/ms-5DGSFKM2-BlyezW6W.js.map +1 -0
  64. package/dist/frontend/dist/assets/nl-VZPCGONO-BJ0llUPS.js +2 -0
  65. package/dist/frontend/dist/assets/nl-VZPCGONO-BJ0llUPS.js.map +1 -0
  66. package/dist/frontend/dist/assets/no-MF6F352I-Wf2ZNjHx.js +2 -0
  67. package/dist/frontend/dist/assets/no-MF6F352I-Wf2ZNjHx.js.map +1 -0
  68. package/dist/frontend/dist/assets/{not-found-BboGygIW.js → not-found-C46rJTS0.js} +2 -2
  69. package/dist/frontend/dist/assets/{not-found-BboGygIW.js.map → not-found-C46rJTS0.js.map} +1 -1
  70. package/dist/frontend/dist/assets/{page-Bht4dePL.js → page-B3Uq31BP.js} +2 -2
  71. package/dist/frontend/dist/assets/{page-Bht4dePL.js.map → page-B3Uq31BP.js.map} +1 -1
  72. package/dist/frontend/dist/assets/{page-8F47gNEm.js → page-BCTRI-5h.js} +2 -2
  73. package/dist/frontend/dist/assets/{page-8F47gNEm.js.map → page-BCTRI-5h.js.map} +1 -1
  74. package/dist/frontend/dist/assets/{page-Dhi8hP-S.js → page-BSaAdGF1.js} +2 -2
  75. package/dist/frontend/dist/assets/{page-Dhi8hP-S.js.map → page-BSaAdGF1.js.map} +1 -1
  76. package/dist/frontend/dist/assets/{page-FovvpNWp.js → page-BjvkLuU3.js} +2 -2
  77. package/dist/frontend/dist/assets/{page-FovvpNWp.js.map → page-BjvkLuU3.js.map} +1 -1
  78. package/dist/frontend/dist/assets/page-Bs0NV-OR.js +2 -0
  79. package/dist/frontend/dist/assets/{page-CpbZG7nR.js.map → page-Bs0NV-OR.js.map} +1 -1
  80. package/dist/frontend/dist/assets/{page-knhbwxzQ.js → page-C9LRjfKm.js} +2 -2
  81. package/dist/frontend/dist/assets/{page-knhbwxzQ.js.map → page-C9LRjfKm.js.map} +1 -1
  82. package/dist/frontend/dist/assets/{page-CnJVZMgv.js → page-Cz0qvcvG.js} +2 -2
  83. package/dist/frontend/dist/assets/{page-CnJVZMgv.js.map → page-Cz0qvcvG.js.map} +1 -1
  84. package/dist/frontend/dist/assets/{page-BaqIbrus.js → page-DCPEscX2.js} +2 -2
  85. package/dist/frontend/dist/assets/{page-BaqIbrus.js.map → page-DCPEscX2.js.map} +1 -1
  86. package/dist/frontend/dist/assets/{page-BtqPeWyh.js → page-DKA-wyMy.js} +2 -2
  87. package/dist/frontend/dist/assets/{page-BtqPeWyh.js.map → page-DKA-wyMy.js.map} +1 -1
  88. package/dist/frontend/dist/assets/{page-T424mvNp.js → page-DWvAfkY1.js} +2 -2
  89. package/dist/frontend/dist/assets/{page-T424mvNp.js.map → page-DWvAfkY1.js.map} +1 -1
  90. package/dist/frontend/dist/assets/{page-BfhPRgzq.js → page-Df3S4CSz.js} +2 -2
  91. package/dist/frontend/dist/assets/{page-BfhPRgzq.js.map → page-Df3S4CSz.js.map} +1 -1
  92. package/dist/frontend/dist/assets/{page-CG7C0ib3.js → page-DhkdSv3o.js} +2 -2
  93. package/dist/frontend/dist/assets/{page-CG7C0ib3.js.map → page-DhkdSv3o.js.map} +1 -1
  94. package/dist/frontend/dist/assets/{page-DI1MUp4X.js → page-DjY64aaC.js} +2 -2
  95. package/dist/frontend/dist/assets/{page-DI1MUp4X.js.map → page-DjY64aaC.js.map} +1 -1
  96. package/dist/frontend/dist/assets/{page-DB8grXzl.js → page-DlBB3Xru.js} +2 -2
  97. package/dist/frontend/dist/assets/{page-DB8grXzl.js.map → page-DlBB3Xru.js.map} +1 -1
  98. package/dist/frontend/dist/assets/{page-Cct5hwIU.js → page-DqbPyuN1.js} +2 -2
  99. package/dist/frontend/dist/assets/{page-Cct5hwIU.js.map → page-DqbPyuN1.js.map} +1 -1
  100. package/dist/frontend/dist/assets/page-cHW-gnyq.js +2 -0
  101. package/dist/frontend/dist/assets/{page-8x98ZAYe.js.map → page-cHW-gnyq.js.map} +1 -1
  102. package/dist/frontend/dist/assets/{page-CJnfSnRg.js → page-jAWX9Yq4.js} +2 -2
  103. package/dist/frontend/dist/assets/{page-CJnfSnRg.js.map → page-jAWX9Yq4.js.map} +1 -1
  104. package/dist/frontend/dist/assets/{page-CzvERJKF.js → page-sOV813bU.js} +2 -2
  105. package/dist/frontend/dist/assets/{page-CzvERJKF.js.map → page-sOV813bU.js.map} +1 -1
  106. package/dist/frontend/dist/assets/pl-WIK72JUO-wOGg7Me5.js +2 -0
  107. package/dist/frontend/dist/assets/pl-WIK72JUO-wOGg7Me5.js.map +1 -0
  108. package/dist/frontend/dist/assets/{privacy-B5TeXaed.js → privacy-BCxizJzS.js} +2 -2
  109. package/dist/frontend/dist/assets/{privacy-B5TeXaed.js.map → privacy-BCxizJzS.js.map} +1 -1
  110. package/dist/frontend/dist/assets/pt-RRP5ZF6A-C32Vedhv.js +2 -0
  111. package/dist/frontend/dist/assets/pt-RRP5ZF6A-C32Vedhv.js.map +1 -0
  112. package/dist/frontend/dist/assets/ro-XHQLC3T7-uGs3uHRp.js +2 -0
  113. package/dist/frontend/dist/assets/ro-XHQLC3T7-uGs3uHRp.js.map +1 -0
  114. package/dist/frontend/dist/assets/{routing-By_4TZHr.js → routing-C43HVxNw.js} +2 -2
  115. package/dist/frontend/dist/assets/{routing-By_4TZHr.js.map → routing-C43HVxNw.js.map} +1 -1
  116. package/dist/frontend/dist/assets/{routing-vcvYfuPO.js → routing-swMLj8Z8.js} +2 -2
  117. package/dist/frontend/dist/assets/{routing-vcvYfuPO.js.map → routing-swMLj8Z8.js.map} +1 -1
  118. package/dist/frontend/dist/assets/sv-EWULDN6E-CkRBfwt9.js +2 -0
  119. package/dist/frontend/dist/assets/sv-EWULDN6E-CkRBfwt9.js.map +1 -0
  120. package/dist/frontend/dist/assets/th-TGOBHFG4-BGt_aO5K.js +2 -0
  121. package/dist/frontend/dist/assets/th-TGOBHFG4-BGt_aO5K.js.map +1 -0
  122. package/dist/frontend/dist/assets/tr-LMMPBMV7-CrGE1PKA.js +2 -0
  123. package/dist/frontend/dist/assets/tr-LMMPBMV7-CrGE1PKA.js.map +1 -0
  124. package/dist/frontend/dist/assets/uk-IPGRRJY6-CPaxgpd8.js +2 -0
  125. package/dist/frontend/dist/assets/uk-IPGRRJY6-CPaxgpd8.js.map +1 -0
  126. package/dist/frontend/dist/assets/vi-Q676OJQS-DpyIm6R1.js +2 -0
  127. package/dist/frontend/dist/assets/vi-Q676OJQS-DpyIm6R1.js.map +1 -0
  128. package/dist/frontend/dist/assets/zh-F3MTWQDX-C09t_PFf.js +2 -0
  129. package/dist/frontend/dist/assets/zh-F3MTWQDX-C09t_PFf.js.map +1 -0
  130. package/dist/frontend/dist/favicon-16x16.png +0 -0
  131. package/dist/frontend/dist/favicon-32x32.png +0 -0
  132. package/dist/frontend/dist/favicon.ico +0 -0
  133. package/dist/frontend/dist/favicon.svg +47 -0
  134. package/dist/frontend/dist/index.html +2 -2
  135. package/dist/frontend/dist/messages/ar.json +9 -3
  136. package/dist/frontend/dist/messages/bn.json +9 -3
  137. package/dist/frontend/dist/messages/cs.json +9 -3
  138. package/dist/frontend/dist/messages/da.json +9 -3
  139. package/dist/frontend/dist/messages/de.json +9 -3
  140. package/dist/frontend/dist/messages/el.json +9 -3
  141. package/dist/frontend/dist/messages/en.json +5 -1
  142. package/dist/frontend/dist/messages/es.json +9 -3
  143. package/dist/frontend/dist/messages/fa.json +9 -3
  144. package/dist/frontend/dist/messages/fi.json +9 -3
  145. package/dist/frontend/dist/messages/fr.json +9 -3
  146. package/dist/frontend/dist/messages/he.json +9 -3
  147. package/dist/frontend/dist/messages/hi.json +9 -3
  148. package/dist/frontend/dist/messages/id.json +9 -3
  149. package/dist/frontend/dist/messages/it.json +9 -3
  150. package/dist/frontend/dist/messages/ja.json +9 -3
  151. package/dist/frontend/dist/messages/ko.json +9 -3
  152. package/dist/frontend/dist/messages/ms.json +9 -3
  153. package/dist/frontend/dist/messages/nl.json +9 -3
  154. package/dist/frontend/dist/messages/no.json +9 -3
  155. package/dist/frontend/dist/messages/pl.json +9 -3
  156. package/dist/frontend/dist/messages/pt.json +9 -3
  157. package/dist/frontend/dist/messages/ro.json +9 -3
  158. package/dist/frontend/dist/messages/sv.json +9 -3
  159. package/dist/frontend/dist/messages/th.json +9 -3
  160. package/dist/frontend/dist/messages/tr.json +9 -3
  161. package/dist/frontend/dist/messages/uk.json +9 -3
  162. package/dist/frontend/dist/messages/vi.json +9 -3
  163. package/dist/frontend/dist/messages/zh.json +9 -3
  164. package/dist/frontend/package.json +1 -1
  165. package/package.json +24 -23
  166. package/dist/frontend/dist/assets/ToolbarPanels-DRHyLUHl.js +0 -2
  167. package/dist/frontend/dist/assets/ToolbarPanels-DRHyLUHl.js.map +0 -1
  168. package/dist/frontend/dist/assets/ar-R4CRNXEF-Ca4TvZQX.js +0 -2
  169. package/dist/frontend/dist/assets/ar-R4CRNXEF-Ca4TvZQX.js.map +0 -1
  170. package/dist/frontend/dist/assets/bn-CZKGRHTA-BYgoliLL.js +0 -2
  171. package/dist/frontend/dist/assets/bn-CZKGRHTA-BYgoliLL.js.map +0 -1
  172. package/dist/frontend/dist/assets/cs-4WIB2IHH-C7kYZeeH.js +0 -2
  173. package/dist/frontend/dist/assets/cs-4WIB2IHH-C7kYZeeH.js.map +0 -1
  174. package/dist/frontend/dist/assets/da-JWYEUYPX-ZaU3NHTl.js +0 -2
  175. package/dist/frontend/dist/assets/da-JWYEUYPX-ZaU3NHTl.js.map +0 -1
  176. package/dist/frontend/dist/assets/de-GWUQZGER-DsO9vSRx.js +0 -2
  177. package/dist/frontend/dist/assets/de-GWUQZGER-DsO9vSRx.js.map +0 -1
  178. package/dist/frontend/dist/assets/el-DM2GT7P5-Baqj4u37.js +0 -2
  179. package/dist/frontend/dist/assets/el-DM2GT7P5-Baqj4u37.js.map +0 -1
  180. package/dist/frontend/dist/assets/es-6LVQIM3D-iPWrspyh.js +0 -2
  181. package/dist/frontend/dist/assets/es-6LVQIM3D-iPWrspyh.js.map +0 -1
  182. package/dist/frontend/dist/assets/fa-IRUJY3QI-D7jhkhZq.js +0 -2
  183. package/dist/frontend/dist/assets/fa-IRUJY3QI-D7jhkhZq.js.map +0 -1
  184. package/dist/frontend/dist/assets/fi-53FBOEVT-DyL1QG5i.js +0 -2
  185. package/dist/frontend/dist/assets/fi-53FBOEVT-DyL1QG5i.js.map +0 -1
  186. package/dist/frontend/dist/assets/fr-Q5KY7QL6-CGM9feO_.js +0 -2
  187. package/dist/frontend/dist/assets/fr-Q5KY7QL6-CGM9feO_.js.map +0 -1
  188. package/dist/frontend/dist/assets/he-HJNKULBY-CiS3ww0i.js +0 -2
  189. package/dist/frontend/dist/assets/he-HJNKULBY-CiS3ww0i.js.map +0 -1
  190. package/dist/frontend/dist/assets/hi-UYZ4X6CR-Cb3OYOtm.js +0 -2
  191. package/dist/frontend/dist/assets/hi-UYZ4X6CR-Cb3OYOtm.js.map +0 -1
  192. package/dist/frontend/dist/assets/id-UAQMH6U2-CgqnTJaj.js +0 -2
  193. package/dist/frontend/dist/assets/id-UAQMH6U2-CgqnTJaj.js.map +0 -1
  194. package/dist/frontend/dist/assets/index-BUe9tsov.css +0 -1
  195. package/dist/frontend/dist/assets/index-XWcEpo5a.js.map +0 -1
  196. package/dist/frontend/dist/assets/it-C7QEBNFA-BP64tE9N.js +0 -2
  197. package/dist/frontend/dist/assets/it-C7QEBNFA-BP64tE9N.js.map +0 -1
  198. package/dist/frontend/dist/assets/ja-THS6AOSJ-BlrsrgpZ.js +0 -2
  199. package/dist/frontend/dist/assets/ja-THS6AOSJ-BlrsrgpZ.js.map +0 -1
  200. package/dist/frontend/dist/assets/ko-XKK3TWQG-BnscEkav.js +0 -2
  201. package/dist/frontend/dist/assets/ko-XKK3TWQG-BnscEkav.js.map +0 -1
  202. package/dist/frontend/dist/assets/layout-DmjP6diV.js +0 -2
  203. package/dist/frontend/dist/assets/layout-DmjP6diV.js.map +0 -1
  204. package/dist/frontend/dist/assets/ms-GSK7LIF7-BWJ-3eXy.js +0 -2
  205. package/dist/frontend/dist/assets/ms-GSK7LIF7-BWJ-3eXy.js.map +0 -1
  206. package/dist/frontend/dist/assets/nl-KUBWITGY-DeqIcEFQ.js +0 -2
  207. package/dist/frontend/dist/assets/nl-KUBWITGY-DeqIcEFQ.js.map +0 -1
  208. package/dist/frontend/dist/assets/no-ECWZUHT6-DMgg097w.js +0 -2
  209. package/dist/frontend/dist/assets/no-ECWZUHT6-DMgg097w.js.map +0 -1
  210. package/dist/frontend/dist/assets/page-8x98ZAYe.js +0 -2
  211. package/dist/frontend/dist/assets/page-CpbZG7nR.js +0 -2
  212. package/dist/frontend/dist/assets/pl-PLVWSZWS-B9TKLToJ.js +0 -2
  213. package/dist/frontend/dist/assets/pl-PLVWSZWS-B9TKLToJ.js.map +0 -1
  214. package/dist/frontend/dist/assets/pt-AL74ZTKB-dm40issX.js +0 -2
  215. package/dist/frontend/dist/assets/pt-AL74ZTKB-dm40issX.js.map +0 -1
  216. package/dist/frontend/dist/assets/ro-WTPHLHGS-42q4gQmg.js +0 -2
  217. package/dist/frontend/dist/assets/ro-WTPHLHGS-42q4gQmg.js.map +0 -1
  218. package/dist/frontend/dist/assets/sv-QCLI7SG4-KVnre_zY.js +0 -2
  219. package/dist/frontend/dist/assets/sv-QCLI7SG4-KVnre_zY.js.map +0 -1
  220. package/dist/frontend/dist/assets/th-WCKVZU6U-CfRhC_Eg.js +0 -2
  221. package/dist/frontend/dist/assets/th-WCKVZU6U-CfRhC_Eg.js.map +0 -1
  222. package/dist/frontend/dist/assets/tr-2CAFS2XS-425EzbTD.js +0 -2
  223. package/dist/frontend/dist/assets/tr-2CAFS2XS-425EzbTD.js.map +0 -1
  224. package/dist/frontend/dist/assets/uk-TDE4JLCY-BUQpzvxx.js +0 -2
  225. package/dist/frontend/dist/assets/uk-TDE4JLCY-BUQpzvxx.js.map +0 -1
  226. package/dist/frontend/dist/assets/vi-KKXZ4PCX-BqlhZbBi.js +0 -2
  227. package/dist/frontend/dist/assets/vi-KKXZ4PCX-BqlhZbBi.js.map +0 -1
  228. package/dist/frontend/dist/assets/zh-VH4XN5PV-TNQ5FOx-.js +0 -2
  229. package/dist/frontend/dist/assets/zh-VH4XN5PV-TNQ5FOx-.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"no-MF6F352I-Wf2ZNjHx.js","sources":["../../../../packages/react-ui/dist/no-MF6F352I.mjs"],"sourcesContent":["'use client';\nimport \"./chunk-D4GAAQMM.mjs\";\n\n// translations/no.json\nvar Toolbar = {\n annotations: \"Merknader\",\n history: \"Historikk\",\n resourceInfo: \"Ressursinfo\",\n collaboration: \"Samarbeid\",\n userAccount: \"Brukerkonto\",\n settings: \"Innstillinger\",\n knowledgeBase: \"Kunnskapsbase\"\n};\nvar ResourceInfoPanel = {\n title: \"Ressursinfo\",\n locale: \"Spr\\xE5kinnstilling\",\n notSpecified: \"Ikke spesifisert\",\n entityTypeTags: \"Entitetstypemerker\",\n representation: \"Representasjon\",\n mediaType: \"Medietype\",\n byteSize: \"St\\xF8rrelse\",\n clone: \"Klon\",\n cloneDescription: \"Generer en delbar klonelenke for denne ressursen\",\n archive: \"Arkiver\",\n archiveDescription: \"Flytt denne ressursen til arkivert status\",\n unarchive: \"Gjenopprett\",\n unarchiveDescription: \"Gjenopprett denne ressursen til aktiv status\",\n provenance: \"Opprinnelse\",\n createdAt: \"Opprettet\",\n modifiedAt: \"Endret\",\n creationMethod: \"Opprettelsesmetode\",\n attributedTo: \"Tilskrevet\",\n derivedFrom: \"Avledet fra\",\n generatedBy: \"Generert av\",\n storageUri: \"Lagring\"\n};\nvar CollaborationPanel = {\n title: \"Samarbeid\",\n connectionStatus: \"Tilkoblingsstatus\",\n live: \"Direkte\",\n disconnected: \"Frakoblet\",\n events: \"{{count}} hendelser\",\n lastSync: \"Siste synkronisering:\",\n noActivity: \"Ingen aktivitet enn\\xE5\",\n justNow: \"Akkurat n\\xE5\",\n secondsAgo: \"{{count}} sekunder siden\",\n minuteAgo: \"1 minutt siden\",\n minutesAgo: \"{{count}} minutter siden\",\n hourAgo: \"1 time siden\",\n hoursAgo: \"{{count}} timer siden\",\n realtimeActive: \"Sanntidsoppdateringer er aktive\",\n reconnecting: \"Kobler til serveren p\\xE5 nytt...\",\n sharing: \"Deling\",\n collaborationComingSoon: \"Samarbeidsfunksjoner kommer snart\"\n};\nvar AnnotationHistory = {\n history: \"Historikk\",\n loading: \"Laster...\",\n user: \"Bruker\",\n method: \"Metode\",\n viewOriginal: \"Se original\",\n viewAnnotation: \"Se merknad: {{content}}\",\n resourceCreated: \"Ressurs opprettet\",\n resourceCloned: \"Klonet\",\n resourceArchived: \"Arkivert\",\n resourceUnarchived: \"Gjenopprettet\",\n highlightAdded: \"Utheving lagt til\",\n highlightRemoved: \"Utheving fjernet\",\n referenceCreated: \"Referanse opprettet\",\n referenceResolved: \"Referanse l\\xF8st\",\n referenceDeleted: \"Referanse slettet\",\n entitytagAdded: \"Merke lagt til\",\n entitytagRemoved: \"Merke fjernet\",\n assessmentAdded: \"Vurdering lagt til\",\n assessmentRemoved: \"Vurdering fjernet\",\n annotationAdded: \"Merknad lagt til\",\n annotationRemoved: \"Merknad fjernet\",\n annotationBodyUpdated: \"Merknad oppdatert\",\n jobEvent: \"Jobbhendelse\",\n justNow: \"akkurat n\\xE5\",\n minutesAgo: \"{{count}}m siden\",\n hoursAgo: \"{{count}}t siden\",\n daysAgo: \"{{count}}d siden\"\n};\nvar CommentsPanel = {\n title: \"Kommentarer\",\n noComments: \"Ingen kommentarer enn\\xE5. Velg tekst og klikk Kommenter for \\xE5 legge til en.\",\n commentPlaceholder: \"Skriv kommentaren din her...\",\n save: \"Lagre\",\n cancel: \"Avbryt\",\n edit: \"Rediger\",\n annotateComments: \"Annot\\xE9r kommentarer\",\n instructions: \"Instruksjoner\",\n optional: \"(valgfritt)\",\n instructionsPlaceholder: \"f.eks. Fokuser p\\xE5 teknisk terminologi...\",\n annotate: \"Annot\\xE9r\",\n annotating: \"Annoterer...\",\n toneLabel: \"Tone\",\n toneOptional: \"(valgfritt)\",\n toneScholarly: \"Akademisk\",\n toneExplanatory: \"Forklarende\",\n toneConversational: \"Uformell\",\n toneTechnical: \"Teknisk\",\n densityLabel: \"Tetthet\",\n densitySparse: \"Sparsom\",\n densityDense: \"Tett\",\n fragmentSelected: \"Fragment valgt\",\n imageRegionSelected: \"Bildeomr\\xE5de valgt\",\n closeProgress: \"Lukk\"\n};\nvar HighlightPanel = {\n title: \"Uthevinger\",\n noHighlights: \"Ingen uthevinger enn\\xE5. Bruk AI-annotering for \\xE5 finne viktige passasjer.\",\n annotateHighlights: \"Annot\\xE9r uthevinger\",\n instructions: \"Instruksjoner\",\n optional: \"(valgfritt)\",\n instructionsPlaceholder: \"f.eks. Fokuser p\\xE5 viktige tekniske begreper...\",\n annotate: \"Annot\\xE9r\",\n annotating: \"Annoterer...\",\n cancel: \"Avbryt\",\n densityLabel: \"Tetthet\",\n densitySparse: \"Sparsom\",\n densityDense: \"Tett\",\n closeProgress: \"Lukk\"\n};\nvar AssessmentPanel = {\n title: \"Vurderinger\",\n noAssessments: \"Ingen vurderinger enn\\xE5. Bruk AI-annotering for \\xE5 evaluere passasjer.\",\n assessmentPlaceholder: \"Skriv vurderingen din her...\",\n save: \"Lagre\",\n cancel: \"Avbryt\",\n annotateAssessments: \"Annot\\xE9r vurderinger\",\n instructions: \"Instruksjoner\",\n optional: \"(valgfritt)\",\n instructionsPlaceholder: \"f.eks. Evaluer p\\xE5stander for n\\xF8yaktighet og bevisgrunnlag...\",\n annotate: \"Annot\\xE9r\",\n annotating: \"Annoterer...\",\n toneLabel: \"Tone\",\n toneOptional: \"(valgfritt)\",\n toneAnalytical: \"Analytisk\",\n toneCritical: \"Kritisk\",\n toneBalanced: \"Balansert\",\n toneConstructive: \"Konstruktiv\",\n densityLabel: \"Tetthet\",\n densitySparse: \"Sparsom\",\n densityDense: \"Tett\",\n fragmentSelected: \"Fragment valgt\",\n imageRegionSelected: \"Bildeomr\\xE5de valgt\",\n closeProgress: \"Lukk\"\n};\nvar TaggingPanel = {\n title: \"Merker\",\n noTags: \"Ingen merker enn\\xE5. Bruk AI-annotering for \\xE5 identifisere strukturelle roller.\",\n annotateTags: \"Annot\\xE9r merker\",\n selectSchema: \"Velg rammeverk\",\n schemaLegal: \"Juridisk analyse (IRAC)\",\n schemaScientific: \"Vitenskapelig artikkel (IMRAD)\",\n schemaArgument: \"Argumentstruktur (Toulmin)\",\n selectCategories: \"Velg kategorier\",\n categoryIssue: \"Problem\",\n categoryRule: \"Regel\",\n categoryApplication: \"Anvendelse\",\n categoryConclusion: \"Konklusjon\",\n categoryIntroduction: \"Introduksjon\",\n categoryMethods: \"Metoder\",\n categoryResults: \"Resultater\",\n categoryDiscussion: \"Diskusjon\",\n categoryClaim: \"P\\xE5stand\",\n categoryEvidence: \"Bevis\",\n categoryWarrant: \"Begrunnelse\",\n categoryCounterargument: \"Motargument\",\n categoryRebuttal: \"Tilbakevisning\",\n annotate: \"Annot\\xE9r\",\n annotating: \"Annoterer...\",\n cancel: \"Avbryt\",\n selectAll: \"Velg alle\",\n deselectAll: \"Fjern alle valg\",\n categoriesSelected: \"{count, plural, =0 {Ingen kategorier valgt} =1 {1 kategori valgt} other {# kategorier valgt}}\",\n createTagForSelection: \"Opprett merke for utvalg\",\n selectCategory: \"Velg kategori\",\n chooseCategory: \"Velg en kategori...\",\n fragmentSelected: \"Fragment valgt\",\n imageRegionSelected: \"Bildeomr\\xE5de valgt\"\n};\nvar UnifiedAnnotationsPanel = {\n title: \"Merknader\",\n statistics: \"Statistikk\",\n highlight: \"Uthevinger\",\n reference: \"Referanser\",\n assessment: \"Vurderinger\",\n comment: \"Kommentarer\",\n tag: \"Merker\"\n};\nvar StatisticsPanel = {\n title: \"Statistikk\",\n highlights: \"Uthevinger\",\n comments: \"Kommentarer\",\n assessments: \"Vurderinger\",\n tags: \"Merker\",\n references: \"Referanser\",\n stub: \"Stub\",\n resolved: \"L\\xF8st\",\n entityTypes: \"Entitetstyper\"\n};\nvar ReferencesPanel = {\n title: \"Referanser\",\n noReferences: \"Ingen referanser enn\\xE5. Velg tekst for \\xE5 opprette referanser til andre ressurser.\",\n outgoingReferences: \"Utg\\xE5ende referanser\",\n incomingReferences: \"Innkommende referanser\",\n noIncomingReferences: \"Ingen innkommende referanser\",\n stub: \"Stubreferanse (ikke koblet)\",\n resolved: \"L\\xF8st referanse (koblet)\",\n open: \"\\xC5pne\",\n unlink: \"Fjern kobling\",\n resolve: \"L\\xF8s referanse\",\n cancel: \"Avbryt\",\n createReference: \"Opprett referanse\",\n entityTypesOptional: \"Entitetstyper (valgfritt)\",\n fragmentSelected: \"Fragment valgt\",\n imageRegionSelected: \"Bildeomr\\xE5de valgt\",\n annotateReferences: \"Annot\\xE9r referanser\",\n selectEntityTypes: \"Entitetstyper:\",\n select: \"Velg\",\n deselect: \"Fjern valg\",\n noEntityTypes: \"Ingen entitetstyper tilgjengelig\",\n typesSelected: \"{count, plural, =1 {1 type valgt} other {# typer valgt}}\",\n annotate: \"Annot\\xE9r\",\n annotating: \"Annoterer...\",\n includeDescriptiveReferences: \"Inkluder beskrivende referanser\",\n descriptiveReferencesTooltip: \"Finn ogs\\xE5 fraser som 'administrerende direkt\\xF8r', 'teknologigiganten', 'fysikeren' (i tillegg til navn)\",\n annotationProgressTitle: \"Annoterer entitetsreferanser\",\n cancelAnnotation: \"Avbryt annotering\",\n found: \"{{count}} funnet\",\n complete: \"Annotering fullf\\xF8rt!\",\n failed: \"Annotering mislyktes\",\n current: \"N\\xE5v\\xE6rende: {{entityType}}\",\n closeProgress: \"Lukk\",\n loading: \"laster...\",\n loadingEllipsis: \"Laster...\",\n untitledResource: \"Ressurs uten tittel\",\n noText: \"Ingen tekst\"\n};\nvar KeyboardShortcuts = {\n title: \"Tastatursnarveier\",\n closeDialog: \"Lukk dialog\",\n or: \"eller\",\n navigationTitle: \"Navigasjon\",\n navOpenSearch: \"\\xC5pne globalt s\\xF8k\",\n navOpenSearchAlt: \"\\xC5pne globalt s\\xF8k (alternativ)\",\n navCreateResource: \"Opprett ny ressurs\",\n navCloseOverlays: \"Lukk alle overlegg (dobbelttrykk)\",\n navShowHelp: \"Vis hjelp for tastatursnarveier\",\n sidebarTitle: \"Kunnskapssidefelt\",\n sidebarCollapse: \"Skjul sidefelt\",\n sidebarExpand: \"Vis sidefelt\",\n sidebarPickup: \"Plukk opp ressursfane (n\\xE5r fokusert)\",\n sidebarMove: \"Flytt ressursfane (n\\xE5r du drar)\",\n sidebarDrop: \"Slipp ressursfane (n\\xE5r du drar)\",\n sidebarCancel: \"Avbryt dra-operasjon\",\n annotationsTitle: \"Ressursmerknader\",\n annotHighlight: \"Opprett utheving fra merknad (direkte)\",\n annotReference: \"\\xC5pne referansepopup for merknad\",\n annotDelete: \"Slett fokusert merknad\",\n annotNavigate: \"Naviger gjennom merknader\",\n annotNavigateBack: \"Naviger merknader bakover\",\n listsTitle: \"Lister og rutenett\",\n listsFilterNav: \"Naviger entitetstypefiltre\",\n listsGridNav: \"Naviger ressursrutenett\",\n listsJumpFirst: \"Hopp til f\\xF8rste element\",\n listsJumpLast: \"Hopp til siste element\",\n searchModalTitle: \"I s\\xF8kemodal\",\n searchNav: \"Naviger s\\xF8keresultater\",\n searchSelect: \"Velg resultat\",\n searchClose: \"Lukk s\\xF8k\",\n modalTitle: \"Modalkontroller\",\n modalClose: \"Lukk aktiv modal\",\n modalNavForward: \"Naviger fremover gjennom knapper\",\n modalNavBackward: \"Naviger bakover gjennom knapper\",\n modalActivate: \"Aktiver fokusert knapp\",\n accessibilityTitle: \"Tilgjengelighet\",\n a11ySkipLinks: \"Naviger til hurtiglenker (n\\xE5r \\xF8verst p\\xE5 siden)\",\n a11yFollowLink: \"F\\xF8lg hurtiglenke\",\n macNote: \"Bruker Mac-tastatursnarveier. \\u2318 er Command-tasten.\",\n windowsNote: \"Bruker Windows/Linux-tastatursnarveier. Ctrl er Control-tasten.\",\n footerHint: \"Trykk {{key}} n\\xE5r som helst for \\xE5 vise denne hjelpen\",\n close: \"Lukk\"\n};\nvar AnnotateToolbar = {\n modeGroup: \"Modus\",\n browse: \"Bla\",\n annotate: \"Annot\\xE9r\",\n selectionGroup: \"Motivasjon\",\n clickGroup: \"Klikk\",\n shapeGroup: \"Form\",\n none: \"Ingen\",\n linking: \"Referanse\",\n highlighting: \"Utheving\",\n assessing: \"Vurder\",\n commenting: \"Kommenter\",\n tagging: \"Merk\",\n detail: \"Detalj\",\n follow: \"F\\xF8lg\",\n deleting: \"Slett\",\n jsonld: \"JSON-LD\",\n rectangle: \"Rektangel\",\n circle: \"Sirkel\",\n polygon: \"Polygon\"\n};\nvar CollapsibleResourceNavigation = {\n title: \"Navigasjon\",\n collapseSidebar: \"Skjul sidefelt\",\n expandSidebar: \"Vis sidefelt\",\n dragToReorder: \"Dra for \\xE5 omorganisere\",\n dragToReorderDoc: \"Dra for \\xE5 omorganisere {{name}}\",\n closeResource: \"Lukk ressurs\",\n dragInstructions: \"For \\xE5 omorganisere ressurser: Bruk Tab for \\xE5 navigere til en ressurs. Trykk Alt+Pil opp for \\xE5 flytte opp eller Alt+Pil ned for \\xE5 flytte ned. For dra og slipp: Trykk mellomromstasten for \\xE5 plukke opp elementet. Bruk piltastene for \\xE5 flytte det. Trykk mellomromstasten igjen for \\xE5 slippe.\"\n};\nvar ResourceViewer = {\n deleteConfirmationTitle: \"Slett merknad\",\n deleteConfirmationMessage: \"Er du sikker p\\xE5 at du vil slette denne merknaden? Denne handlingen kan ikke angres.\",\n deleteConfirmationCancel: \"Avbryt\",\n deleteConfirmationDelete: \"Slett\"\n};\nvar Settings = {\n title: \"Innstillinger\",\n lineNumbers: \"Linjenumre\",\n lineNumbersVisible: \"Synlig\",\n lineNumbersHidden: \"Skjult\",\n theme: \"Tema\",\n themeLight: \"Lyst\",\n themeDark: \"M\\xF8rkt\",\n themeSystem: \"System\",\n themeSystemActive: \"System ({{mode}})\",\n themeModeActive: \"Bruker {{mode}}-modus\",\n language: \"Spr\\xE5k\",\n languageHint: \"Endre spr\\xE5k i hovednavigasjonen\",\n languageChanging: \"Endrer spr\\xE5k...\",\n hoverDelay: \"Pekerforsinkelse\",\n hoverDelayFast: \"Rask\",\n hoverDelaySlow: \"Langsom\",\n hoverDelayDescription: \"{{delay}}ms forsinkelse f\\xF8r pekereffekter vises\"\n};\nvar AnnotateView = {};\nvar ReferenceWizard = {\n gatherTitle: \"Samlet kontekst\",\n configureGenerationTitle: \"Konfigurer generering\",\n configureSearchTitle: \"Konfigurer s\\xF8k\",\n searchResultsTitle: \"S\\xF8keresultater\",\n sourceContextLabel: \"Annotasjonskontekst i ressurs\",\n connectionsLabel: \"Jevnaldrende annotasjoner\",\n citedByLabel: \"Ressurs sitert av\",\n userHintLabel: \"Hint\",\n userHintPlaceholder: \"Beskriv hva denne kommentaren refererer til...\",\n loadingContext: \"Samler kontekst...\",\n failedContext: \"Kunne ikke samle kontekst\",\n cancel: \"Avbryt\",\n generate: \"Generer\",\n compose: \"Komponer\",\n resolutionStrategyLabel: \"L\\xF8sningsstrategi\",\n back: \"Tilbake\",\n link: \"Lenke\",\n score: \"Poengsum\",\n noResults: \"Ingen resultater funnet\",\n resourceTitle: \"Ressurstitel\",\n resourceTitlePlaceholder: \"Skriv inn ressurstitel...\",\n additionalInstructions: \"Tilleggsinstruksjoner\",\n additionalInstructionsPlaceholder: \"Skriv inn tilleggsinstruksjoner...\",\n language: \"Spr\\xE5k\",\n languageHelp: \"Spr\\xE5k for generert innhold\",\n creativity: \"Kreativitet\",\n creativityFocused: \"Fokusert\",\n creativityCreative: \"Kreativ\",\n maxLength: \"Maks. lengde\",\n maxLengthHelp: \"Maksimalt antall tokener\",\n maxResults: \"Maks. resultater\",\n semanticScoring: \"Semantisk sk\\xE5ring\",\n semanticScoringHelp: \"Bruk AI til \\xE5 score resultater etter semantisk relevans\",\n searching: \"S\\xF8ker...\",\n search: \"S\\xF8k\"\n};\nvar History = {\n embeddingComputed: \"Embedding beregnet\"\n};\nvar no_default = {\n Toolbar,\n ResourceInfoPanel,\n CollaborationPanel,\n AnnotationHistory,\n CommentsPanel,\n HighlightPanel,\n AssessmentPanel,\n TaggingPanel,\n UnifiedAnnotationsPanel,\n StatisticsPanel,\n ReferencesPanel,\n KeyboardShortcuts,\n AnnotateToolbar,\n CollapsibleResourceNavigation,\n ResourceViewer,\n Settings,\n AnnotateView,\n ReferenceWizard,\n History\n};\nexport {\n AnnotateToolbar,\n AnnotateView,\n AnnotationHistory,\n AssessmentPanel,\n CollaborationPanel,\n CollapsibleResourceNavigation,\n CommentsPanel,\n HighlightPanel,\n History,\n KeyboardShortcuts,\n ReferenceWizard,\n ReferencesPanel,\n ResourceInfoPanel,\n ResourceViewer,\n Settings,\n StatisticsPanel,\n TaggingPanel,\n Toolbar,\n UnifiedAnnotationsPanel,\n no_default as default\n};\n//# sourceMappingURL=no-MF6F352I.mjs.map"],"names":["Toolbar","ResourceInfoPanel","CollaborationPanel","AnnotationHistory","CommentsPanel","HighlightPanel","AssessmentPanel","TaggingPanel","UnifiedAnnotationsPanel","StatisticsPanel","ReferencesPanel","KeyboardShortcuts","AnnotateToolbar","CollapsibleResourceNavigation","ResourceViewer","Settings","AnnotateView","ReferenceWizard","History","no_default"],"mappings":"AAIG,IAACA,EAAU,CACZ,YAAa,YACb,QAAS,YACT,aAAc,cACd,cAAe,YACf,YAAa,cACb,SAAU,gBACV,cAAe,eACjB,EACIC,EAAoB,CACtB,MAAO,cACP,OAAQ,mBACR,aAAc,mBACd,eAAgB,qBAChB,eAAgB,iBAChB,UAAW,YACX,SAAU,YACV,MAAO,OACP,iBAAkB,mDAClB,QAAS,UACT,mBAAoB,4CACpB,UAAW,cACX,qBAAsB,+CACtB,WAAY,cACZ,UAAW,YACX,WAAY,SACZ,eAAgB,qBAChB,aAAc,aACd,YAAa,cACb,YAAa,cACb,WAAY,SACd,EACIC,EAAqB,CACvB,MAAO,YACP,iBAAkB,oBAClB,KAAM,UACN,aAAc,YACd,OAAQ,sBACR,SAAU,wBACV,WAAY,uBACZ,QAAS,aACT,WAAY,2BACZ,UAAW,iBACX,WAAY,2BACZ,QAAS,eACT,SAAU,wBACV,eAAgB,kCAChB,aAAc,iCACd,QAAS,SACT,wBAAyB,mCAC3B,EACIC,EAAoB,CACtB,QAAS,YACT,QAAS,YACT,KAAM,SACN,OAAQ,SACR,aAAc,cACd,eAAgB,0BAChB,gBAAiB,oBACjB,eAAgB,SAChB,iBAAkB,WAClB,mBAAoB,gBACpB,eAAgB,oBAChB,iBAAkB,mBAClB,iBAAkB,sBAClB,kBAAmB,iBACnB,iBAAkB,oBAClB,eAAgB,iBAChB,iBAAkB,gBAClB,gBAAiB,qBACjB,kBAAmB,oBACnB,gBAAiB,mBACjB,kBAAmB,kBACnB,sBAAuB,oBACvB,SAAU,eACV,QAAS,aACT,WAAY,mBACZ,SAAU,mBACV,QAAS,kBACX,EACIC,EAAgB,CAClB,MAAO,cACP,WAAY,4EACZ,mBAAoB,+BACpB,KAAM,QACN,OAAQ,SACR,KAAM,UACN,iBAAkB,sBAClB,aAAc,gBACd,SAAU,cACV,wBAAyB,2CACzB,SAAU,UACV,WAAY,eACZ,UAAW,OACX,aAAc,cACd,cAAe,YACf,gBAAiB,cACjB,mBAAoB,WACpB,cAAe,UACf,aAAc,UACd,cAAe,UACf,aAAc,OACd,iBAAkB,iBAClB,oBAAqB,oBACrB,cAAe,MACjB,EACIC,EAAiB,CACnB,MAAO,aACP,aAAc,2EACd,mBAAoB,qBACpB,aAAc,gBACd,SAAU,cACV,wBAAyB,iDACzB,SAAU,UACV,WAAY,eACZ,OAAQ,SACR,aAAc,UACd,cAAe,UACf,aAAc,OACd,cAAe,MACjB,EACIC,EAAkB,CACpB,MAAO,cACP,cAAe,uEACf,sBAAuB,+BACvB,KAAM,QACN,OAAQ,SACR,oBAAqB,sBACrB,aAAc,gBACd,SAAU,cACV,wBAAyB,+DACzB,SAAU,UACV,WAAY,eACZ,UAAW,OACX,aAAc,cACd,eAAgB,YAChB,aAAc,UACd,aAAc,YACd,iBAAkB,cAClB,aAAc,UACd,cAAe,UACf,aAAc,OACd,iBAAkB,iBAClB,oBAAqB,oBACrB,cAAe,MACjB,EACIC,EAAe,CACjB,MAAO,SACP,OAAQ,gFACR,aAAc,iBACd,aAAc,iBACd,YAAa,0BACb,iBAAkB,iCAClB,eAAgB,6BAChB,iBAAkB,kBAClB,cAAe,UACf,aAAc,QACd,oBAAqB,aACrB,mBAAoB,aACpB,qBAAsB,eACtB,gBAAiB,UACjB,gBAAiB,aACjB,mBAAoB,YACpB,cAAe,UACf,iBAAkB,QAClB,gBAAiB,cACjB,wBAAyB,cACzB,iBAAkB,iBAClB,SAAU,UACV,WAAY,eACZ,OAAQ,SACR,UAAW,YACX,YAAa,kBACb,mBAAoB,gGACpB,sBAAuB,2BACvB,eAAgB,gBAChB,eAAgB,sBAChB,iBAAkB,iBAClB,oBAAqB,mBACvB,EACIC,EAA0B,CAC5B,MAAO,YACP,WAAY,aACZ,UAAW,aACX,UAAW,aACX,WAAY,cACZ,QAAS,cACT,IAAK,QACP,EACIC,EAAkB,CACpB,MAAO,aACP,WAAY,aACZ,SAAU,cACV,YAAa,cACb,KAAM,SACN,WAAY,aACZ,KAAM,OACN,SAAU,OACV,YAAa,eACf,EACIC,EAAkB,CACpB,MAAO,aACP,aAAc,mFACd,mBAAoB,sBACpB,mBAAoB,yBACpB,qBAAsB,+BACtB,KAAM,8BACN,SAAU,0BACV,KAAM,OACN,OAAQ,gBACR,QAAS,gBACT,OAAQ,SACR,gBAAiB,oBACjB,oBAAqB,4BACrB,iBAAkB,iBAClB,oBAAqB,oBACrB,mBAAoB,qBACpB,kBAAmB,iBACnB,OAAQ,OACR,SAAU,aACV,cAAe,mCACf,cAAe,2DACf,SAAU,UACV,WAAY,eACZ,6BAA8B,kCAC9B,6BAA8B,yGAC9B,wBAAyB,+BACzB,iBAAkB,oBAClB,MAAO,mBACP,SAAU,uBACV,OAAQ,uBACR,QAAS,4BACT,cAAe,OACf,QAAS,YACT,gBAAiB,YACjB,iBAAkB,sBAClB,OAAQ,aACV,EACIC,EAAoB,CACtB,MAAO,oBACP,YAAa,cACb,GAAI,QACJ,gBAAiB,aACjB,cAAe,mBACf,iBAAkB,gCAClB,kBAAmB,qBACnB,iBAAkB,oCAClB,YAAa,kCACb,aAAc,oBACd,gBAAiB,iBACjB,cAAe,eACf,cAAe,uCACf,YAAa,kCACb,YAAa,kCACb,cAAe,uBACf,iBAAkB,mBAClB,eAAgB,yCAChB,eAAgB,kCAChB,YAAa,yBACb,cAAe,4BACf,kBAAmB,4BACnB,WAAY,qBACZ,eAAgB,6BAChB,aAAc,0BACd,eAAgB,0BAChB,cAAe,yBACf,iBAAkB,cAClB,UAAW,yBACX,aAAc,gBACd,YAAa,WACb,WAAY,kBACZ,WAAY,mBACZ,gBAAiB,mCACjB,iBAAkB,kCAClB,cAAe,yBACf,mBAAoB,kBACpB,cAAe,iDACf,eAAgB,mBAChB,QAAS,qDACT,YAAa,kEACb,WAAY,uDACZ,MAAO,MACT,EACIC,EAAkB,CACpB,UAAW,QACX,OAAQ,MACR,SAAU,UACV,eAAgB,aAChB,WAAY,QACZ,WAAY,OACZ,KAAM,QACN,QAAS,YACT,aAAc,WACd,UAAW,SACX,WAAY,YACZ,QAAS,OACT,OAAQ,SACR,OAAQ,OACR,SAAU,QACV,OAAQ,UACR,UAAW,YACX,OAAQ,SACR,QAAS,SACX,EACIC,EAAgC,CAClC,MAAO,aACP,gBAAiB,iBACjB,cAAe,eACf,cAAe,yBACf,iBAAkB,kCAClB,cAAe,eACf,iBAAkB,gSACpB,EACIC,EAAiB,CACnB,wBAAyB,gBACzB,0BAA2B,sFAC3B,yBAA0B,SAC1B,yBAA0B,OAC5B,EACIC,EAAW,CACb,MAAO,gBACP,YAAa,aACb,mBAAoB,SACpB,kBAAmB,SACnB,MAAO,OACP,WAAY,OACZ,UAAW,QACX,YAAa,SACb,kBAAmB,oBACnB,gBAAiB,wBACjB,SAAU,QACV,aAAc,kCACd,iBAAkB,kBAClB,WAAY,mBACZ,eAAgB,OAChB,eAAgB,UAChB,sBAAuB,iDACzB,EACIC,EAAe,CAAA,EACfC,EAAkB,CACpB,YAAa,kBACb,yBAA0B,wBAC1B,qBAAsB,iBACtB,mBAAoB,iBACpB,mBAAoB,gCACpB,iBAAkB,4BAClB,aAAc,oBACd,cAAe,OACf,oBAAqB,iDACrB,eAAgB,qBAChB,cAAe,4BACf,OAAQ,SACR,SAAU,UACV,QAAS,WACT,wBAAyB,mBACzB,KAAM,UACN,KAAM,QACN,MAAO,WACP,UAAW,0BACX,cAAe,eACf,yBAA0B,4BAC1B,uBAAwB,wBACxB,kCAAmC,qCACnC,SAAU,QACV,aAAc,6BACd,WAAY,cACZ,kBAAmB,WACnB,mBAAoB,UACpB,UAAW,eACX,cAAe,2BACf,WAAY,mBACZ,gBAAiB,oBACjB,oBAAqB,0DACrB,UAAW,WACX,OAAQ,KACV,EACIC,EAAU,CACZ,kBAAmB,oBACrB,EACIC,EAAa,CACf,QAAAnB,EACA,kBAAAC,EACA,mBAAAC,EACA,kBAAAC,EACA,cAAAC,EACA,eAAAC,EACA,gBAAAC,EACA,aAAAC,EACA,wBAAAC,EACA,gBAAAC,EACA,gBAAAC,EACA,kBAAAC,EACA,gBAAAC,EACA,8BAAAC,EACA,eAAAC,EACA,SAAAC,EACA,aAAAC,EACA,gBAAAC,EACA,QAAAC,CACF"}
@@ -1,2 +1,2 @@
1
- import{j as t}from"./query-B6BuIB0M.js";import{a as n,L as i}from"./routing-By_4TZHr.js";import{u as l}from"./i18n-BbpF47i1.js";import"./vendor-DJo4KD8w.js";import"./index-XWcEpo5a.js";function h(){const{t:s}=l(),e=(a,o)=>s(`NotFound.${a}`,o),r=n();return t.jsx("div",{className:"flex min-h-screen items-center justify-center bg-gray-50 dark:bg-gray-900",children:t.jsxs("div",{className:"text-center px-4",children:[t.jsx("h1",{className:"text-6xl font-bold text-gray-900 dark:text-white mb-4",children:e("title")}),t.jsx("h2",{className:"text-2xl font-semibold text-gray-700 dark:text-gray-300 mb-4",children:e("heading")}),t.jsx("p",{className:"text-gray-600 dark:text-gray-400 mb-8",children:e("message")}),t.jsx(i,{to:`/${r}`,className:"inline-block px-6 py-3 bg-blue-600 text-white rounded-lg hover:bg-blue-700 transition-colors",children:e("goHome")})]})})}export{h as default};
2
- //# sourceMappingURL=not-found-BboGygIW.js.map
1
+ import{j as t}from"./query-B6BuIB0M.js";import{a as n,L as i}from"./routing-C43HVxNw.js";import{u as l}from"./i18n-BbpF47i1.js";import"./vendor-DJo4KD8w.js";import"./index-CqzrFNnV.js";function h(){const{t:s}=l(),e=(a,o)=>s(`NotFound.${a}`,o),r=n();return t.jsx("div",{className:"flex min-h-screen items-center justify-center bg-gray-50 dark:bg-gray-900",children:t.jsxs("div",{className:"text-center px-4",children:[t.jsx("h1",{className:"text-6xl font-bold text-gray-900 dark:text-white mb-4",children:e("title")}),t.jsx("h2",{className:"text-2xl font-semibold text-gray-700 dark:text-gray-300 mb-4",children:e("heading")}),t.jsx("p",{className:"text-gray-600 dark:text-gray-400 mb-8",children:e("message")}),t.jsx(i,{to:`/${r}`,className:"inline-block px-6 py-3 bg-blue-600 text-white rounded-lg hover:bg-blue-700 transition-colors",children:e("goHome")})]})})}export{h as default};
2
+ //# sourceMappingURL=not-found-C46rJTS0.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"not-found-BboGygIW.js","sources":["../../src/app/[locale]/not-found.tsx"],"sourcesContent":["import React from 'react';\nimport { Link } from '@/i18n/routing';\nimport { useTranslation } from 'react-i18next';\nimport { useLocale } from '@/i18n/routing';\n\nexport default function NotFound() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`NotFound.${k}`, p as any) as string;\n const locale = useLocale();\n\n return (\n <div className=\"flex min-h-screen items-center justify-center bg-gray-50 dark:bg-gray-900\">\n <div className=\"text-center px-4\">\n <h1 className=\"text-6xl font-bold text-gray-900 dark:text-white mb-4\">{t('title')}</h1>\n <h2 className=\"text-2xl font-semibold text-gray-700 dark:text-gray-300 mb-4\">\n {t('heading')}\n </h2>\n <p className=\"text-gray-600 dark:text-gray-400 mb-8\">\n {t('message')}\n </p>\n <Link\n to={`/${locale}`}\n className=\"inline-block px-6 py-3 bg-blue-600 text-white rounded-lg hover:bg-blue-700 transition-colors\"\n >\n {t('goHome')}\n </Link>\n </div>\n </div>\n );\n}\n"],"names":["NotFound","_t","useTranslation","t","k","p","locale","useLocale","jsxs","jsx","Link"],"mappings":"yLAKA,SAAwBA,GAAW,CACjC,KAAM,CAAE,EAAGC,CAAA,EAAOC,EAAA,EACZC,EAAI,CAACC,EAAWC,IAAgCJ,EAAG,YAAYG,CAAC,GAAIC,CAAQ,EAC5EC,EAASC,EAAA,EAEf,aACG,MAAA,CAAI,UAAU,4EACb,SAAAC,EAAAA,KAAC,MAAA,CAAI,UAAU,mBACb,SAAA,CAAAC,MAAC,KAAA,CAAG,UAAU,wDAAyD,SAAAN,EAAE,OAAO,EAAE,QACjF,KAAA,CAAG,UAAU,+DACX,SAAAA,EAAE,SAAS,EACd,QACC,IAAA,CAAE,UAAU,wCACV,SAAAA,EAAE,SAAS,EACd,EACAM,EAAAA,IAACC,EAAA,CACC,GAAI,IAAIJ,CAAM,GACd,UAAU,+FAET,WAAE,QAAQ,CAAA,CAAA,CACb,CAAA,CACF,CAAA,CACF,CAEJ"}
1
+ {"version":3,"file":"not-found-C46rJTS0.js","sources":["../../src/app/[locale]/not-found.tsx"],"sourcesContent":["import React from 'react';\nimport { Link } from '@/i18n/routing';\nimport { useTranslation } from 'react-i18next';\nimport { useLocale } from '@/i18n/routing';\n\nexport default function NotFound() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`NotFound.${k}`, p as any) as string;\n const locale = useLocale();\n\n return (\n <div className=\"flex min-h-screen items-center justify-center bg-gray-50 dark:bg-gray-900\">\n <div className=\"text-center px-4\">\n <h1 className=\"text-6xl font-bold text-gray-900 dark:text-white mb-4\">{t('title')}</h1>\n <h2 className=\"text-2xl font-semibold text-gray-700 dark:text-gray-300 mb-4\">\n {t('heading')}\n </h2>\n <p className=\"text-gray-600 dark:text-gray-400 mb-8\">\n {t('message')}\n </p>\n <Link\n to={`/${locale}`}\n className=\"inline-block px-6 py-3 bg-blue-600 text-white rounded-lg hover:bg-blue-700 transition-colors\"\n >\n {t('goHome')}\n </Link>\n </div>\n </div>\n );\n}\n"],"names":["NotFound","_t","useTranslation","t","k","p","locale","useLocale","jsxs","jsx","Link"],"mappings":"yLAKA,SAAwBA,GAAW,CACjC,KAAM,CAAE,EAAGC,CAAA,EAAOC,EAAA,EACZC,EAAI,CAACC,EAAWC,IAAgCJ,EAAG,YAAYG,CAAC,GAAIC,CAAQ,EAC5EC,EAASC,EAAA,EAEf,aACG,MAAA,CAAI,UAAU,4EACb,SAAAC,EAAAA,KAAC,MAAA,CAAI,UAAU,mBACb,SAAA,CAAAC,MAAC,KAAA,CAAG,UAAU,wDAAyD,SAAAN,EAAE,OAAO,EAAE,QACjF,KAAA,CAAG,UAAU,+DACX,SAAAA,EAAE,SAAS,EACd,QACC,IAAA,CAAE,UAAU,wCACV,SAAAA,EAAE,SAAS,EACd,EACAM,EAAAA,IAACC,EAAA,CACC,GAAI,IAAIJ,CAAM,GACd,UAAU,+FAET,WAAE,QAAQ,CAAA,CAAA,CACb,CAAA,CACF,CAAA,CACF,CAEJ"}
@@ -1,5 +1,5 @@
1
- import{j as i}from"./query-B6BuIB0M.js";import{r as x}from"./vendor-DJo4KD8w.js";import{a as j,L as u}from"./routing-By_4TZHr.js";import{P as f}from"./index-XWcEpo5a.js";import{C as b}from"./CookiePreferences-CO_BNHwm.js";import{K as T}from"./privacy-B5TeXaed.js";import{r as v,L as y}from"./routing-vcvYfuPO.js";import{u as l}from"./i18n-BbpF47i1.js";import"./XMarkIcon-KMKD47CF.js";function I(){const{t:a}=l(),e=(t,s)=>a(`Terms.${t}`,s),{t:r}=l(),c=(t,s)=>r(`Footer.${t}`,s),{t:o}=l(),p=(t,s)=>o(`Navigation.${t}`,s),{t:d}=l(),h=(t,s)=>d(`Home.${t}`,s),m=j(),n=x.useContext(T);return i.jsx(f,{Link:y,routes:v,t:c,tNav:p,tHome:h,CookiePreferences:b,...(n==null?void 0:n.openKeyboardHelp)&&{onOpenKeyboardHelp:n.openKeyboardHelp},className:"semiont-static-page",children:i.jsx("div",{className:"semiont-static-container",children:i.jsxs("div",{className:"semiont-static-content",children:[i.jsxs("header",{className:"semiont-static-header",children:[i.jsx("h1",{className:"semiont-static-title",children:e("pageTitle")}),i.jsx("p",{className:"semiont-static-subtitle",children:e("pageSubtitle")})]}),i.jsxs("article",{className:"semiont-static-article",children:[i.jsx("h2",{children:e("aupTitle")}),i.jsx("p",{children:e("aup")}),i.jsx("h3",{children:e("prohibitedTitle")}),i.jsx("p",{children:e("prohibitedIntro")}),i.jsx("ul",{children:e("prohibited").split(`
1
+ import{j as i}from"./query-B6BuIB0M.js";import{r as x}from"./vendor-DJo4KD8w.js";import{a as j,L as u}from"./routing-C43HVxNw.js";import{P as f}from"./index-CqzrFNnV.js";import{C as b}from"./CookiePreferences-BDtMuCT2.js";import{K as T}from"./privacy-BCxizJzS.js";import{r as v,L as y}from"./routing-swMLj8Z8.js";import{u as l}from"./i18n-BbpF47i1.js";import"./XMarkIcon-KMKD47CF.js";function I(){const{t:a}=l(),e=(t,s)=>a(`Terms.${t}`,s),{t:r}=l(),c=(t,s)=>r(`Footer.${t}`,s),{t:o}=l(),p=(t,s)=>o(`Navigation.${t}`,s),{t:d}=l(),h=(t,s)=>d(`Home.${t}`,s),m=j(),n=x.useContext(T);return i.jsx(f,{Link:y,routes:v,t:c,tNav:p,tHome:h,CookiePreferences:b,...(n==null?void 0:n.openKeyboardHelp)&&{onOpenKeyboardHelp:n.openKeyboardHelp},className:"semiont-static-page",children:i.jsx("div",{className:"semiont-static-container",children:i.jsxs("div",{className:"semiont-static-content",children:[i.jsxs("header",{className:"semiont-static-header",children:[i.jsx("h1",{className:"semiont-static-title",children:e("pageTitle")}),i.jsx("p",{className:"semiont-static-subtitle",children:e("pageSubtitle")})]}),i.jsxs("article",{className:"semiont-static-article",children:[i.jsx("h2",{children:e("aupTitle")}),i.jsx("p",{children:e("aup")}),i.jsx("h3",{children:e("prohibitedTitle")}),i.jsx("p",{children:e("prohibitedIntro")}),i.jsx("ul",{children:e("prohibited").split(`
2
2
  `).map((t,s)=>i.jsx("li",{children:t},s))}),i.jsx("h3",{children:e("aiAllianceTitle")}),i.jsxs("p",{children:[e("aiAllianceIntro")," ",i.jsx("a",{href:"https://ai-alliance.cdn.prismic.io/ai-alliance/Zl-MG5m069VX1dgH_AIAllianceCodeofConduct.pdf",target:"_blank",rel:"noopener noreferrer",className:"semiont-static-link",children:e("aiAllianceLink")}),e("aiAllianceIncludes")]}),i.jsx("ul",{children:e("aiAlliance").split(`
3
3
  `).map((t,s)=>i.jsx("li",{children:t},s))}),i.jsx("h3",{children:e("responsibilitiesTitle")}),i.jsx("p",{children:e("responsibilitiesIntro")}),i.jsx("ul",{children:e("responsibilities").split(`
4
4
  `).map((t,s)=>i.jsx("li",{children:t},s))}),i.jsx("h3",{children:e("moderationTitle")}),i.jsx("p",{children:e("moderation")}),i.jsx("h3",{children:e("privacyTitle")}),i.jsxs("p",{children:[e("privacy").split(e("privacyLink"))[0],i.jsx(u,{to:`/${m}/privacy`,className:"semiont-static-link",children:e("privacyLink")}),e("privacy").split(e("privacyLink"))[1]]}),i.jsx("h3",{children:e("ipTitle")}),i.jsx("p",{children:e("ip")}),i.jsx("h3",{children:e("liabilityTitle")}),i.jsx("p",{children:e("liability")}),i.jsx("h3",{children:e("changesTitle")}),i.jsx("p",{children:e("changes")}),i.jsx("h3",{children:e("contactTitle")}),i.jsx("p",{children:e("contact")}),i.jsx("footer",{className:"semiont-static-footer",children:i.jsx("p",{children:e("lastUpdated",{date:new Date().toLocaleDateString()})})})]})]})})})}export{I as default};
5
- //# sourceMappingURL=page-Bht4dePL.js.map
5
+ //# sourceMappingURL=page-B3Uq31BP.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"page-Bht4dePL.js","sources":["../../src/app/[locale]/terms/page.tsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport { Link } from '@/i18n/routing';\nimport { useTranslation } from 'react-i18next';\nimport { useLocale } from '@/i18n/routing';\nimport { PageLayout } from '@semiont/react-ui';\nimport { CookiePreferences } from '@/components/CookiePreferences';\nimport { KeyboardShortcutsContext } from '@/contexts/KeyboardShortcutsContext';\nimport { Link as RoutingLink, routes } from '@/lib/routing';\n\nexport default function TermsOfService() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`Terms.${k}`, p as any) as string;\n const { t: _tFooter } = useTranslation();\n const tFooter = (k: string, p?: Record<string, unknown>) => _tFooter(`Footer.${k}`, p as any) as string;\n const { t: _tNav } = useTranslation();\n const tNav = (k: string, p?: Record<string, unknown>) => _tNav(`Navigation.${k}`, p as any) as string;\n const { t: _tHome } = useTranslation();\n const tHome = (k: string, p?: Record<string, unknown>) => _tHome(`Home.${k}`, p as any) as string;\n const locale = useLocale();\n const keyboardContext = useContext(KeyboardShortcutsContext);\n\n return (\n <PageLayout\n Link={RoutingLink}\n routes={routes}\n t={tFooter}\n tNav={tNav}\n tHome={tHome}\n CookiePreferences={CookiePreferences}\n {...(keyboardContext?.openKeyboardHelp && { onOpenKeyboardHelp: keyboardContext.openKeyboardHelp })}\n className=\"semiont-static-page\"\n >\n <div className=\"semiont-static-container\">\n <div className=\"semiont-static-content\">\n <header className=\"semiont-static-header\">\n <h1 className=\"semiont-static-title\">\n {t('pageTitle')}\n </h1>\n <p className=\"semiont-static-subtitle\">\n {t('pageSubtitle')}\n </p>\n </header>\n\n <article className=\"semiont-static-article\">\n <h2>{t('aupTitle')}</h2>\n\n <p>\n {t('aup')}\n </p>\n\n <h3>{t('prohibitedTitle')}</h3>\n <p>{t('prohibitedIntro')}</p>\n <ul>\n {t('prohibited').split('\\n').map((item, i) => (\n <li key={i}>{item}</li>\n ))}\n </ul>\n\n <h3>{t('aiAllianceTitle')}</h3>\n <p>\n {t('aiAllianceIntro')}{' '}\n <a\n href=\"https://ai-alliance.cdn.prismic.io/ai-alliance/Zl-MG5m069VX1dgH_AIAllianceCodeofConduct.pdf\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n className=\"semiont-static-link\"\n >\n {t('aiAllianceLink')}\n </a>\n {t('aiAllianceIncludes')}\n </p>\n <ul>\n {t('aiAlliance').split('\\n').map((item, i) => (\n <li key={i}>{item}</li>\n ))}\n </ul>\n\n <h3>{t('responsibilitiesTitle')}</h3>\n <p>{t('responsibilitiesIntro')}</p>\n <ul>\n {t('responsibilities').split('\\n').map((item, i) => (\n <li key={i}>{item}</li>\n ))}\n </ul>\n\n <h3>{t('moderationTitle')}</h3>\n <p>\n {t('moderation')}\n </p>\n\n <h3>{t('privacyTitle')}</h3>\n <p>\n {t('privacy').split(t('privacyLink'))[0]}\n <Link to={`/${locale}/privacy`} className=\"semiont-static-link\">\n {t('privacyLink')}\n </Link>\n {t('privacy').split(t('privacyLink'))[1]}\n </p>\n\n <h3>{t('ipTitle')}</h3>\n <p>\n {t('ip')}\n </p>\n\n <h3>{t('liabilityTitle')}</h3>\n <p>\n {t('liability')}\n </p>\n\n <h3>{t('changesTitle')}</h3>\n <p>\n {t('changes')}\n </p>\n\n <h3>{t('contactTitle')}</h3>\n <p>\n {t('contact')}\n </p>\n\n <footer className=\"semiont-static-footer\">\n <p>\n {t('lastUpdated', { date: new Date().toLocaleDateString() })}\n </p>\n </footer>\n </article>\n\n </div>\n </div>\n </PageLayout>\n );\n}"],"names":["TermsOfService","_t","useTranslation","t","k","p","_tFooter","tFooter","_tNav","tNav","_tHome","tHome","locale","useLocale","keyboardContext","useContext","KeyboardShortcutsContext","jsx","PageLayout","RoutingLink","routes","CookiePreferences","jsxs","item","i","Link"],"mappings":"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"}
1
+ {"version":3,"file":"page-B3Uq31BP.js","sources":["../../src/app/[locale]/terms/page.tsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport { Link } from '@/i18n/routing';\nimport { useTranslation } from 'react-i18next';\nimport { useLocale } from '@/i18n/routing';\nimport { PageLayout } from '@semiont/react-ui';\nimport { CookiePreferences } from '@/components/CookiePreferences';\nimport { KeyboardShortcutsContext } from '@/contexts/KeyboardShortcutsContext';\nimport { Link as RoutingLink, routes } from '@/lib/routing';\n\nexport default function TermsOfService() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`Terms.${k}`, p as any) as string;\n const { t: _tFooter } = useTranslation();\n const tFooter = (k: string, p?: Record<string, unknown>) => _tFooter(`Footer.${k}`, p as any) as string;\n const { t: _tNav } = useTranslation();\n const tNav = (k: string, p?: Record<string, unknown>) => _tNav(`Navigation.${k}`, p as any) as string;\n const { t: _tHome } = useTranslation();\n const tHome = (k: string, p?: Record<string, unknown>) => _tHome(`Home.${k}`, p as any) as string;\n const locale = useLocale();\n const keyboardContext = useContext(KeyboardShortcutsContext);\n\n return (\n <PageLayout\n Link={RoutingLink}\n routes={routes}\n t={tFooter}\n tNav={tNav}\n tHome={tHome}\n CookiePreferences={CookiePreferences}\n {...(keyboardContext?.openKeyboardHelp && { onOpenKeyboardHelp: keyboardContext.openKeyboardHelp })}\n className=\"semiont-static-page\"\n >\n <div className=\"semiont-static-container\">\n <div className=\"semiont-static-content\">\n <header className=\"semiont-static-header\">\n <h1 className=\"semiont-static-title\">\n {t('pageTitle')}\n </h1>\n <p className=\"semiont-static-subtitle\">\n {t('pageSubtitle')}\n </p>\n </header>\n\n <article className=\"semiont-static-article\">\n <h2>{t('aupTitle')}</h2>\n\n <p>\n {t('aup')}\n </p>\n\n <h3>{t('prohibitedTitle')}</h3>\n <p>{t('prohibitedIntro')}</p>\n <ul>\n {t('prohibited').split('\\n').map((item, i) => (\n <li key={i}>{item}</li>\n ))}\n </ul>\n\n <h3>{t('aiAllianceTitle')}</h3>\n <p>\n {t('aiAllianceIntro')}{' '}\n <a\n href=\"https://ai-alliance.cdn.prismic.io/ai-alliance/Zl-MG5m069VX1dgH_AIAllianceCodeofConduct.pdf\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n className=\"semiont-static-link\"\n >\n {t('aiAllianceLink')}\n </a>\n {t('aiAllianceIncludes')}\n </p>\n <ul>\n {t('aiAlliance').split('\\n').map((item, i) => (\n <li key={i}>{item}</li>\n ))}\n </ul>\n\n <h3>{t('responsibilitiesTitle')}</h3>\n <p>{t('responsibilitiesIntro')}</p>\n <ul>\n {t('responsibilities').split('\\n').map((item, i) => (\n <li key={i}>{item}</li>\n ))}\n </ul>\n\n <h3>{t('moderationTitle')}</h3>\n <p>\n {t('moderation')}\n </p>\n\n <h3>{t('privacyTitle')}</h3>\n <p>\n {t('privacy').split(t('privacyLink'))[0]}\n <Link to={`/${locale}/privacy`} className=\"semiont-static-link\">\n {t('privacyLink')}\n </Link>\n {t('privacy').split(t('privacyLink'))[1]}\n </p>\n\n <h3>{t('ipTitle')}</h3>\n <p>\n {t('ip')}\n </p>\n\n <h3>{t('liabilityTitle')}</h3>\n <p>\n {t('liability')}\n </p>\n\n <h3>{t('changesTitle')}</h3>\n <p>\n {t('changes')}\n </p>\n\n <h3>{t('contactTitle')}</h3>\n <p>\n {t('contact')}\n </p>\n\n <footer className=\"semiont-static-footer\">\n <p>\n {t('lastUpdated', { date: new Date().toLocaleDateString() })}\n </p>\n </footer>\n </article>\n\n </div>\n </div>\n </PageLayout>\n );\n}"],"names":["TermsOfService","_t","useTranslation","t","k","p","_tFooter","tFooter","_tNav","tNav","_tHome","tHome","locale","useLocale","keyboardContext","useContext","KeyboardShortcutsContext","jsx","PageLayout","RoutingLink","routes","CookiePreferences","jsxs","item","i","Link"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{j as d}from"./query-B6BuIB0M.js";import{r as i,u as ne}from"./vendor-DJo4KD8w.js";import{a as se,u as re}from"./routing-By_4TZHr.js";import{C as A,u as ce,c as ie,e as ae,f as ue,g as le,k as de,h as pe,i as ge,l as fe,j as me,m as ye,n as he,o as Ce,T as Re,r as L,p as ke,q as Te,s as ve}from"./index-XWcEpo5a.js";import{T as we}from"./ToolbarPanels-DRHyLUHl.js";import{u as M}from"./i18n-BbpF47i1.js";import"./XMarkIcon-KMKD47CF.js";function xe(){const{t:f}=M(),e=(t,n)=>f(`Compose.${t}`,n),m=se(),c=re(),[o]=ne(),{isAuthenticated:y,isLoading:p,token:U}=ce(),{showError:u,showSuccess:E}=ie(),F=o==null?void 0:o.get("mode"),l=o==null?void 0:o.get("token");i.useEffect(()=>{p||y||c.push("/")},[p,y,c]);const g=o==null?void 0:o.get("annotationUri"),h=o==null?void 0:o.get("sourceDocumentId"),C=o==null?void 0:o.get("name"),R=o==null?void 0:o.get("entityTypes"),[N,k]=i.useState(!0),[j,B]=i.useState(null),[O,$]=i.useState(null),[P,K]=i.useState(null),{activePanel:Q}=ae(),{theme:Ie,setTheme:_,resolvedTheme:q}=ue(),{showLineNumbers:G,toggleLineNumbers:H}=le(),{hoverDelayMs:J}=de();pe({"settings:theme-changed":({theme:t})=>_(t),"settings:line-numbers-toggled":()=>H()});const T=ge(),W=fe(),Y=me(),D=ye(),S=he(),{data:v}=Y.list.useQuery(),z=(v==null?void 0:v.entityTypes)||[],V=T.create.useMutation(),X=W.updateBody.useMutation(),{data:a}=T.getByToken.useQuery(l||""),Z=T.createFromToken.useMutation(),b=!!(g&&h&&C),w=F==="clone"&&!!l,ee=w?"clone":b?"reference":"new";i.useEffect(()=>{(async()=>{if(b){const n=R?R.split(","):[];$({annotationUri:g,sourceDocumentId:h,name:C,entityTypes:n});const s=`gather-context:${g}`,r=sessionStorage.getItem(s);if(r){try{K(JSON.parse(r))}catch{}sessionStorage.removeItem(s)}k(!1);return}if(w&&a){if(a.sourceResource&&D&&S)try{const n=L(a.sourceResource["@id"]),s=ke(a.sourceResource)||"text/plain",{data:r}=await D.getResourceRepresentation(n,{accept:s,auth:S}),x=Te(r,s);B({sourceResource:a.sourceResource,sourceContent:x})}catch(n){console.error("Failed to fetch representation:",n),u("Failed to load resource representation")}else u("Invalid or expired clone token"),c.push("/know/discover");k(!1)}else w&&!l?(u("Clone token not found. Please try cloning again."),c.push("/know/discover")):k(!1)})()},[F,l,a,g,h,C,R,U]);const te=async t=>{try{let n;if(t.mode==="clone")n=(await Z.mutateAsync({token:l,name:t.name,content:t.content,archiveOriginal:t.archiveOriginal??!0})).resourceId;else{let s,r;if(t.file)s=t.file,r=t.format??"application/octet-stream";else{const I=new Blob([t.content||""],{type:t.format??"application/octet-stream"}),oe=t.format==="text/plain"?".txt":t.format==="text/html"?".html":".md";s=new File([I],t.name+oe,{type:t.format??"application/octet-stream"}),r=t.format??"application/octet-stream"}const x=t.charset&&!t.file?`${r}; charset=${t.charset}`:r;if(n=(await V.mutateAsync({name:t.name,file:s,format:x,entityTypes:t.entityTypes||[],language:t.language,creationMethod:"ui",storageUri:t.storageUri})).resourceId,t.mode==="reference"&&t.annotationUri&&t.sourceDocumentId)try{await X.mutateAsync({resourceId:L(t.sourceDocumentId),annotationId:ve(t.annotationUri),data:{operations:[{op:"add",item:{type:"SpecificResource",source:n,purpose:"linking"}}]}}),E("Reference successfully linked to the new resource")}catch(I){console.error("Failed to update reference:",I),u("Resource created but failed to update reference. You may need to manually link it.")}}c.push(`/know/resource/${encodeURIComponent(n)}`)}catch(n){console.error("Failed to save resource:",n);const s=n instanceof Error?n.message:"Failed to save resource. Please try again.";throw u(s),n}};return p||N?d.jsx(A,{message:p?"Checking authentication...":"Loading cloned resource..."}):y?d.jsx(Ce,{mode:ee,cloneData:j,referenceData:O,gatheredContext:P,availableEntityTypes:z,initialLocale:m,theme:q,showLineNumbers:G,hoverDelayMs:J,activePanel:Q,onSaveResource:te,onCancel:()=>c.push("/know/discover"),translations:{title:e("title"),titleEditClone:e("titleEditClone"),titleCompleteReference:e("titleCompleteReference"),subtitleClone:e("subtitleClone"),subtitleReference:e("subtitleReference"),linkedNoticePrefix:e("linkedNoticePrefix"),resourceName:e("resourceName"),resourceNamePlaceholder:e("resourceNamePlaceholder"),entityTypes:e("entityTypes"),language:e("language"),contentSource:e("contentSource"),uploadFile:e("uploadFile"),uploadFileDescription:e("uploadFileDescription"),writeContent:e("writeContent"),writeContentDescription:e("writeContentDescription"),dropFileOrClick:e("dropFileOrClick"),supportedFormats:e("supportedFormats"),mediaType:e("mediaType"),autoDetected:e("autoDetected"),format:e("format"),content:e("content"),resourceContent:e("resourceContent"),encoding:e("encoding"),archiveOriginal:e("archiveOriginal"),cancel:e("cancel"),saving:e("saving"),creating:e("creating"),creatingAndLinking:e("creatingAndLinking"),saveClonedResource:e("saveClonedResource"),createAndLinkResource:e("createAndLinkResource"),createResource:e("createResource")},ToolbarPanels:we,Toolbar:Re}):null}function Ee(){const{t:f}=M(),e=(m,c)=>f(`Compose.${m}`,c);return d.jsx(i.Suspense,{fallback:d.jsx(A,{message:e("loading")}),children:d.jsx(xe,{})})}export{Ee as default};
2
- //# sourceMappingURL=page-8F47gNEm.js.map
1
+ import{j as d}from"./query-B6BuIB0M.js";import{r as i,u as ne}from"./vendor-DJo4KD8w.js";import{a as se,u as re}from"./routing-C43HVxNw.js";import{C as A,u as ce,c as ie,e as ae,f as ue,g as le,k as de,h as pe,i as ge,l as fe,j as me,m as ye,n as he,o as Ce,T as Re,r as L,p as ke,q as Te,s as ve}from"./index-CqzrFNnV.js";import{T as we}from"./ToolbarPanels-mrjx6GSA.js";import{u as M}from"./i18n-BbpF47i1.js";import"./XMarkIcon-KMKD47CF.js";function xe(){const{t:f}=M(),e=(t,n)=>f(`Compose.${t}`,n),m=se(),c=re(),[o]=ne(),{isAuthenticated:y,isLoading:p,token:U}=ce(),{showError:u,showSuccess:E}=ie(),F=o==null?void 0:o.get("mode"),l=o==null?void 0:o.get("token");i.useEffect(()=>{p||y||c.push("/")},[p,y,c]);const g=o==null?void 0:o.get("annotationUri"),h=o==null?void 0:o.get("sourceDocumentId"),C=o==null?void 0:o.get("name"),R=o==null?void 0:o.get("entityTypes"),[N,k]=i.useState(!0),[j,B]=i.useState(null),[O,$]=i.useState(null),[P,K]=i.useState(null),{activePanel:Q}=ae(),{theme:Ie,setTheme:_,resolvedTheme:q}=ue(),{showLineNumbers:G,toggleLineNumbers:H}=le(),{hoverDelayMs:J}=de();pe({"settings:theme-changed":({theme:t})=>_(t),"settings:line-numbers-toggled":()=>H()});const T=ge(),W=fe(),Y=me(),D=ye(),S=he(),{data:v}=Y.list.useQuery(),z=(v==null?void 0:v.entityTypes)||[],V=T.create.useMutation(),X=W.updateBody.useMutation(),{data:a}=T.getByToken.useQuery(l||""),Z=T.createFromToken.useMutation(),b=!!(g&&h&&C),w=F==="clone"&&!!l,ee=w?"clone":b?"reference":"new";i.useEffect(()=>{(async()=>{if(b){const n=R?R.split(","):[];$({annotationUri:g,sourceDocumentId:h,name:C,entityTypes:n});const s=`gather-context:${g}`,r=sessionStorage.getItem(s);if(r){try{K(JSON.parse(r))}catch{}sessionStorage.removeItem(s)}k(!1);return}if(w&&a){if(a.sourceResource&&D&&S)try{const n=L(a.sourceResource["@id"]),s=ke(a.sourceResource)||"text/plain",{data:r}=await D.getResourceRepresentation(n,{accept:s,auth:S}),x=Te(r,s);B({sourceResource:a.sourceResource,sourceContent:x})}catch(n){console.error("Failed to fetch representation:",n),u("Failed to load resource representation")}else u("Invalid or expired clone token"),c.push("/know/discover");k(!1)}else w&&!l?(u("Clone token not found. Please try cloning again."),c.push("/know/discover")):k(!1)})()},[F,l,a,g,h,C,R,U]);const te=async t=>{try{let n;if(t.mode==="clone")n=(await Z.mutateAsync({token:l,name:t.name,content:t.content,archiveOriginal:t.archiveOriginal??!0})).resourceId;else{let s,r;if(t.file)s=t.file,r=t.format??"application/octet-stream";else{const I=new Blob([t.content||""],{type:t.format??"application/octet-stream"}),oe=t.format==="text/plain"?".txt":t.format==="text/html"?".html":".md";s=new File([I],t.name+oe,{type:t.format??"application/octet-stream"}),r=t.format??"application/octet-stream"}const x=t.charset&&!t.file?`${r}; charset=${t.charset}`:r;if(n=(await V.mutateAsync({name:t.name,file:s,format:x,entityTypes:t.entityTypes||[],language:t.language,creationMethod:"ui",storageUri:t.storageUri})).resourceId,t.mode==="reference"&&t.annotationUri&&t.sourceDocumentId)try{await X.mutateAsync({resourceId:L(t.sourceDocumentId),annotationId:ve(t.annotationUri),data:{operations:[{op:"add",item:{type:"SpecificResource",source:n,purpose:"linking"}}]}}),E("Reference successfully linked to the new resource")}catch(I){console.error("Failed to update reference:",I),u("Resource created but failed to update reference. You may need to manually link it.")}}c.push(`/know/resource/${encodeURIComponent(n)}`)}catch(n){console.error("Failed to save resource:",n);const s=n instanceof Error?n.message:"Failed to save resource. Please try again.";throw u(s),n}};return p||N?d.jsx(A,{message:p?"Checking authentication...":"Loading cloned resource..."}):y?d.jsx(Ce,{mode:ee,cloneData:j,referenceData:O,gatheredContext:P,availableEntityTypes:z,initialLocale:m,theme:q,showLineNumbers:G,hoverDelayMs:J,activePanel:Q,onSaveResource:te,onCancel:()=>c.push("/know/discover"),translations:{title:e("title"),titleEditClone:e("titleEditClone"),titleCompleteReference:e("titleCompleteReference"),subtitleClone:e("subtitleClone"),subtitleReference:e("subtitleReference"),linkedNoticePrefix:e("linkedNoticePrefix"),resourceName:e("resourceName"),resourceNamePlaceholder:e("resourceNamePlaceholder"),entityTypes:e("entityTypes"),language:e("language"),contentSource:e("contentSource"),uploadFile:e("uploadFile"),uploadFileDescription:e("uploadFileDescription"),writeContent:e("writeContent"),writeContentDescription:e("writeContentDescription"),dropFileOrClick:e("dropFileOrClick"),supportedFormats:e("supportedFormats"),mediaType:e("mediaType"),autoDetected:e("autoDetected"),format:e("format"),content:e("content"),resourceContent:e("resourceContent"),encoding:e("encoding"),archiveOriginal:e("archiveOriginal"),cancel:e("cancel"),saving:e("saving"),creating:e("creating"),creatingAndLinking:e("creatingAndLinking"),saveClonedResource:e("saveClonedResource"),createAndLinkResource:e("createAndLinkResource"),createResource:e("createResource")},ToolbarPanels:we,Toolbar:Re}):null}function Ee(){const{t:f}=M(),e=(m,c)=>f(`Compose.${m}`,c);return d.jsx(i.Suspense,{fallback:d.jsx(A,{message:e("loading")}),children:d.jsx(xe,{})})}export{Ee as default};
2
+ //# sourceMappingURL=page-BCTRI-5h.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"page-8F47gNEm.js","sources":["../../src/app/[locale]/know/compose/page.tsx"],"sourcesContent":["\"use client\";\n\n/**\n * Resource Compose Page - Thin Next.js wrapper\n *\n * This page handles Next.js-specific concerns (routing, auth, data loading, hooks)\n * and delegates rendering to the pure React ResourceComposePage component.\n */\n\nimport React, { useState, useEffect, Suspense } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { useLocale } from '@/i18n/routing';\nimport { useRouter } from '@/i18n/routing';\nimport { useSearchParams } from 'react-router-dom';\nimport { useResources, useAnnotations, useEntityTypes, useApiClient, useAuthToken, useKnowledgeBaseSession } from '@semiont/react-ui';\nimport { useToast } from '@semiont/react-ui';\nimport { useTheme } from '@semiont/react-ui';\nimport { usePanelBrowse } from '@semiont/react-ui';\nimport { useLineNumbers } from '@semiont/react-ui';\nimport { useHoverDelay } from '@semiont/react-ui';\nimport { useEventSubscriptions } from '@semiont/react-ui';\nimport { Toolbar } from '@semiont/react-ui';\nimport { ToolbarPanels } from '@/components/toolbar/ToolbarPanels';\nimport { resourceId as toResourceId, annotationId as toAnnotationId, ContentFormat, AccessToken, type GatheredContext } from '@semiont/core';\nimport { getPrimaryMediaType } from '@semiont/api-client';\nimport { decodeWithCharset } from '@semiont/api-client';\nimport { ComposeLoadingState } from '@semiont/react-ui';\nimport { ResourceComposePage } from '@semiont/react-ui';\nimport type { SaveResourceParams } from '@semiont/react-ui';\n\nfunction ComposeResourceContent() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`Compose.${k}`, p as any) as string;\n const locale = useLocale();\n const router = useRouter();\n const [searchParams] = useSearchParams();\n const { isAuthenticated, isLoading: authLoading, token: authToken } = useKnowledgeBaseSession();\n const { showError, showSuccess } = useToast();\n const mode = searchParams?.get('mode');\n const tokenFromUrl = searchParams?.get('token');\n\n // Authentication guard - redirect to home if not authenticated\n useEffect(() => {\n if (authLoading) return;\n if (!isAuthenticated) {\n router.push('/');\n }\n }, [authLoading, isAuthenticated, router]);\n\n // Reference completion parameters\n const annotationUriParam = searchParams?.get('annotationUri');\n const sourceDocumentId = searchParams?.get('sourceDocumentId');\n const nameFromUrl = searchParams?.get('name');\n const entityTypesFromUrl = searchParams?.get('entityTypes');\n\n const [isLoading, setIsLoading] = useState(true);\n const [cloneData, setCloneData] = useState<any>(null);\n const [referenceData, setReferenceData] = useState<any>(null);\n const [gatheredContext, setGatheredContext] = useState<GatheredContext | null>(null);\n\n // Toolbar and settings state\n const { activePanel } = usePanelBrowse();\n const { theme, setTheme, resolvedTheme } = useTheme();\n const { showLineNumbers, toggleLineNumbers } = useLineNumbers();\n const { hoverDelayMs } = useHoverDelay();\n\n // Subscribe to settings events\n useEventSubscriptions({\n 'settings:theme-changed': ({ theme }: { theme: 'light' | 'dark' | 'system' }) => setTheme(theme),\n 'settings:line-numbers-toggled': () => toggleLineNumbers(),\n });\n\n // API hooks\n const resources = useResources();\n const annotations = useAnnotations();\n const entityTypesAPI = useEntityTypes();\n const client = useApiClient();\n const token = useAuthToken();\n\n // Fetch available entity types\n const { data: entityTypesData } = entityTypesAPI.list.useQuery();\n const availableEntityTypes = (entityTypesData as { entityTypes: string[] } | undefined)?.entityTypes || [];\n\n // Set up mutation hooks\n const createResourceMutation = resources.create.useMutation();\n const updateAnnotationBodyMutation = annotations.updateBody.useMutation();\n\n // Fetch cloned resource data if in clone mode\n const { data: cloneDataResponse } = resources.getByToken.useQuery(tokenFromUrl || '');\n const createFromTokenMutation = resources.createFromToken.useMutation();\n\n // Determine mode\n const isReferenceMode = Boolean(annotationUriParam && sourceDocumentId && nameFromUrl);\n const isCloneMode = mode === 'clone' && Boolean(tokenFromUrl);\n const pageMode = isCloneMode ? 'clone' : isReferenceMode ? 'reference' : 'new';\n\n // Load cloned resource data or reference completion data\n useEffect(() => {\n const loadInitialData = async () => {\n // Handle reference completion mode\n if (isReferenceMode) {\n const entityTypes = entityTypesFromUrl ? entityTypesFromUrl.split(',') : [];\n setReferenceData({\n annotationUri: annotationUriParam!,\n sourceDocumentId: sourceDocumentId!,\n name: nameFromUrl!,\n entityTypes,\n });\n\n // Read gathered context from sessionStorage (stored by wizard)\n const contextKey = `gather-context:${annotationUriParam}`;\n const stored = sessionStorage.getItem(contextKey);\n if (stored) {\n try {\n setGatheredContext(JSON.parse(stored));\n } catch {\n // Ignore malformed context\n }\n sessionStorage.removeItem(contextKey);\n }\n\n setIsLoading(false);\n return;\n }\n\n // Handle clone mode\n if (isCloneMode && cloneDataResponse) {\n if (cloneDataResponse.sourceResource && client && token) {\n try {\n const rId = toResourceId(cloneDataResponse.sourceResource['@id']);\n const mediaType = getPrimaryMediaType(cloneDataResponse.sourceResource) || 'text/plain';\n const { data } = await client.getResourceRepresentation(rId, {\n accept: mediaType as ContentFormat,\n auth: token as AccessToken,\n });\n const content = decodeWithCharset(data, mediaType);\n\n setCloneData({\n sourceResource: cloneDataResponse.sourceResource,\n sourceContent: content,\n });\n } catch (error) {\n console.error('Failed to fetch representation:', error);\n showError('Failed to load resource representation');\n }\n } else {\n showError('Invalid or expired clone token');\n router.push('/know/discover');\n }\n setIsLoading(false);\n } else if (isCloneMode && !tokenFromUrl) {\n showError('Clone token not found. Please try cloning again.');\n router.push('/know/discover');\n } else {\n setIsLoading(false);\n }\n };\n\n loadInitialData();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [mode, tokenFromUrl, cloneDataResponse, annotationUriParam, sourceDocumentId, nameFromUrl, entityTypesFromUrl, authToken]);\n\n // Handle save resource\n const handleSaveResource = async (params: SaveResourceParams) => {\n try {\n let newResourceId: string;\n\n if (params.mode === 'clone') {\n // Create resource from clone token with edited content\n const response = await createFromTokenMutation.mutateAsync({\n token: tokenFromUrl!,\n name: params.name,\n content: params.content!,\n archiveOriginal: params.archiveOriginal ?? true,\n });\n\n newResourceId = response.resourceId;\n } else {\n // Create a new resource with entity types\n let fileToUpload: File;\n let mimeType: string;\n\n if (params.file) {\n fileToUpload = params.file;\n mimeType = params.format ?? 'application/octet-stream';\n } else {\n const blob = new Blob([params.content || ''], { type: params.format ?? 'application/octet-stream' });\n const extension = params.format === 'text/plain' ? '.txt' : params.format === 'text/html' ? '.html' : '.md';\n fileToUpload = new File([blob], params.name + extension, { type: params.format ?? 'application/octet-stream' });\n mimeType = params.format ?? 'application/octet-stream';\n }\n\n const format = params.charset && !params.file ? `${mimeType}; charset=${params.charset}` : mimeType;\n\n const response = await createResourceMutation.mutateAsync({\n name: params.name,\n file: fileToUpload,\n format,\n entityTypes: params.entityTypes || [],\n language: params.language,\n creationMethod: 'ui',\n storageUri: params.storageUri,\n });\n\n newResourceId = response.resourceId;\n\n // If this is a reference completion, update the reference\n if (params.mode === 'reference' && params.annotationUri && params.sourceDocumentId) {\n try {\n await updateAnnotationBodyMutation.mutateAsync({\n resourceId: toResourceId(params.sourceDocumentId),\n annotationId: toAnnotationId(params.annotationUri),\n data: {\n operations: [{\n op: 'add',\n item: {\n type: 'SpecificResource',\n source: newResourceId,\n purpose: 'linking',\n },\n }],\n },\n });\n showSuccess('Reference successfully linked to the new resource');\n } catch (error) {\n console.error('Failed to update reference:', error);\n showError('Resource created but failed to update reference. You may need to manually link it.');\n }\n }\n }\n\n // Navigate to the new resource\n router.push(`/know/resource/${encodeURIComponent(newResourceId)}`);\n } catch (error) {\n console.error('Failed to save resource:', error);\n const errorMessage = error instanceof Error ? error.message : 'Failed to save resource. Please try again.';\n showError(errorMessage);\n throw error;\n }\n };\n\n // Show loading state\n if (authLoading || isLoading) {\n return (\n <ComposeLoadingState\n message={authLoading ? 'Checking authentication...' : 'Loading cloned resource...'}\n />\n );\n }\n\n // Don't render if not authenticated\n if (!isAuthenticated) {\n return null;\n }\n\n // Render the pure component\n return (\n <ResourceComposePage\n mode={pageMode}\n cloneData={cloneData}\n referenceData={referenceData}\n gatheredContext={gatheredContext}\n availableEntityTypes={availableEntityTypes}\n initialLocale={locale}\n theme={resolvedTheme}\n showLineNumbers={showLineNumbers}\n hoverDelayMs={hoverDelayMs}\n activePanel={activePanel}\n onSaveResource={handleSaveResource}\n onCancel={() => router.push('/know/discover')}\n translations={{\n title: t('title'),\n titleEditClone: t('titleEditClone'),\n titleCompleteReference: t('titleCompleteReference'),\n subtitleClone: t('subtitleClone'),\n subtitleReference: t('subtitleReference'),\n linkedNoticePrefix: t('linkedNoticePrefix'),\n resourceName: t('resourceName'),\n resourceNamePlaceholder: t('resourceNamePlaceholder'),\n entityTypes: t('entityTypes'),\n language: t('language'),\n contentSource: t('contentSource'),\n uploadFile: t('uploadFile'),\n uploadFileDescription: t('uploadFileDescription'),\n writeContent: t('writeContent'),\n writeContentDescription: t('writeContentDescription'),\n dropFileOrClick: t('dropFileOrClick'),\n supportedFormats: t('supportedFormats'),\n mediaType: t('mediaType'),\n autoDetected: t('autoDetected'),\n format: t('format'),\n content: t('content'),\n resourceContent: t('resourceContent'),\n encoding: t('encoding'),\n archiveOriginal: t('archiveOriginal'),\n cancel: t('cancel'),\n saving: t('saving'),\n creating: t('creating'),\n creatingAndLinking: t('creatingAndLinking'),\n saveClonedResource: t('saveClonedResource'),\n createAndLinkResource: t('createAndLinkResource'),\n createResource: t('createResource'),\n }}\n ToolbarPanels={ToolbarPanels}\n Toolbar={Toolbar}\n />\n );\n}\n\nexport default function ComposeResourcePage() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`Compose.${k}`, p as any) as string;\n\n return (\n <Suspense fallback={<ComposeLoadingState message={t('loading')} />}>\n <ComposeResourceContent />\n </Suspense>\n );\n}\n"],"names":["ComposeResourceContent","_t","useTranslation","t","k","p","locale","useLocale","router","useRouter","searchParams","useSearchParams","isAuthenticated","authLoading","authToken","useKnowledgeBaseSession","showError","showSuccess","useToast","mode","tokenFromUrl","useEffect","annotationUriParam","sourceDocumentId","nameFromUrl","entityTypesFromUrl","isLoading","setIsLoading","useState","cloneData","setCloneData","referenceData","setReferenceData","gatheredContext","setGatheredContext","activePanel","usePanelBrowse","theme","setTheme","resolvedTheme","useTheme","showLineNumbers","toggleLineNumbers","useLineNumbers","hoverDelayMs","useHoverDelay","useEventSubscriptions","resources","useResources","annotations","useAnnotations","entityTypesAPI","useEntityTypes","client","useApiClient","token","useAuthToken","entityTypesData","availableEntityTypes","createResourceMutation","updateAnnotationBodyMutation","cloneDataResponse","createFromTokenMutation","isReferenceMode","isCloneMode","pageMode","entityTypes","contextKey","stored","rId","toResourceId","mediaType","getPrimaryMediaType","data","content","decodeWithCharset","error","handleSaveResource","params","newResourceId","fileToUpload","mimeType","blob","extension","format","toAnnotationId","errorMessage","jsx","ComposeLoadingState","ResourceComposePage","ToolbarPanels","Toolbar","ComposeResourcePage","Suspense"],"mappings":"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"}
1
+ {"version":3,"file":"page-BCTRI-5h.js","sources":["../../src/app/[locale]/know/compose/page.tsx"],"sourcesContent":["\"use client\";\n\n/**\n * Resource Compose Page - Thin Next.js wrapper\n *\n * This page handles Next.js-specific concerns (routing, auth, data loading, hooks)\n * and delegates rendering to the pure React ResourceComposePage component.\n */\n\nimport React, { useState, useEffect, Suspense } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { useLocale } from '@/i18n/routing';\nimport { useRouter } from '@/i18n/routing';\nimport { useSearchParams } from 'react-router-dom';\nimport { useResources, useAnnotations, useEntityTypes, useApiClient, useAuthToken, useKnowledgeBaseSession } from '@semiont/react-ui';\nimport { useToast } from '@semiont/react-ui';\nimport { useTheme } from '@semiont/react-ui';\nimport { usePanelBrowse } from '@semiont/react-ui';\nimport { useLineNumbers } from '@semiont/react-ui';\nimport { useHoverDelay } from '@semiont/react-ui';\nimport { useEventSubscriptions } from '@semiont/react-ui';\nimport { Toolbar } from '@semiont/react-ui';\nimport { ToolbarPanels } from '@/components/toolbar/ToolbarPanels';\nimport { resourceId as toResourceId, annotationId as toAnnotationId, ContentFormat, AccessToken, type GatheredContext } from '@semiont/core';\nimport { getPrimaryMediaType } from '@semiont/api-client';\nimport { decodeWithCharset } from '@semiont/api-client';\nimport { ComposeLoadingState } from '@semiont/react-ui';\nimport { ResourceComposePage } from '@semiont/react-ui';\nimport type { SaveResourceParams } from '@semiont/react-ui';\n\nfunction ComposeResourceContent() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`Compose.${k}`, p as any) as string;\n const locale = useLocale();\n const router = useRouter();\n const [searchParams] = useSearchParams();\n const { isAuthenticated, isLoading: authLoading, token: authToken } = useKnowledgeBaseSession();\n const { showError, showSuccess } = useToast();\n const mode = searchParams?.get('mode');\n const tokenFromUrl = searchParams?.get('token');\n\n // Authentication guard - redirect to home if not authenticated\n useEffect(() => {\n if (authLoading) return;\n if (!isAuthenticated) {\n router.push('/');\n }\n }, [authLoading, isAuthenticated, router]);\n\n // Reference completion parameters\n const annotationUriParam = searchParams?.get('annotationUri');\n const sourceDocumentId = searchParams?.get('sourceDocumentId');\n const nameFromUrl = searchParams?.get('name');\n const entityTypesFromUrl = searchParams?.get('entityTypes');\n\n const [isLoading, setIsLoading] = useState(true);\n const [cloneData, setCloneData] = useState<any>(null);\n const [referenceData, setReferenceData] = useState<any>(null);\n const [gatheredContext, setGatheredContext] = useState<GatheredContext | null>(null);\n\n // Toolbar and settings state\n const { activePanel } = usePanelBrowse();\n const { theme, setTheme, resolvedTheme } = useTheme();\n const { showLineNumbers, toggleLineNumbers } = useLineNumbers();\n const { hoverDelayMs } = useHoverDelay();\n\n // Subscribe to settings events\n useEventSubscriptions({\n 'settings:theme-changed': ({ theme }: { theme: 'light' | 'dark' | 'system' }) => setTheme(theme),\n 'settings:line-numbers-toggled': () => toggleLineNumbers(),\n });\n\n // API hooks\n const resources = useResources();\n const annotations = useAnnotations();\n const entityTypesAPI = useEntityTypes();\n const client = useApiClient();\n const token = useAuthToken();\n\n // Fetch available entity types\n const { data: entityTypesData } = entityTypesAPI.list.useQuery();\n const availableEntityTypes = (entityTypesData as { entityTypes: string[] } | undefined)?.entityTypes || [];\n\n // Set up mutation hooks\n const createResourceMutation = resources.create.useMutation();\n const updateAnnotationBodyMutation = annotations.updateBody.useMutation();\n\n // Fetch cloned resource data if in clone mode\n const { data: cloneDataResponse } = resources.getByToken.useQuery(tokenFromUrl || '');\n const createFromTokenMutation = resources.createFromToken.useMutation();\n\n // Determine mode\n const isReferenceMode = Boolean(annotationUriParam && sourceDocumentId && nameFromUrl);\n const isCloneMode = mode === 'clone' && Boolean(tokenFromUrl);\n const pageMode = isCloneMode ? 'clone' : isReferenceMode ? 'reference' : 'new';\n\n // Load cloned resource data or reference completion data\n useEffect(() => {\n const loadInitialData = async () => {\n // Handle reference completion mode\n if (isReferenceMode) {\n const entityTypes = entityTypesFromUrl ? entityTypesFromUrl.split(',') : [];\n setReferenceData({\n annotationUri: annotationUriParam!,\n sourceDocumentId: sourceDocumentId!,\n name: nameFromUrl!,\n entityTypes,\n });\n\n // Read gathered context from sessionStorage (stored by wizard)\n const contextKey = `gather-context:${annotationUriParam}`;\n const stored = sessionStorage.getItem(contextKey);\n if (stored) {\n try {\n setGatheredContext(JSON.parse(stored));\n } catch {\n // Ignore malformed context\n }\n sessionStorage.removeItem(contextKey);\n }\n\n setIsLoading(false);\n return;\n }\n\n // Handle clone mode\n if (isCloneMode && cloneDataResponse) {\n if (cloneDataResponse.sourceResource && client && token) {\n try {\n const rId = toResourceId(cloneDataResponse.sourceResource['@id']);\n const mediaType = getPrimaryMediaType(cloneDataResponse.sourceResource) || 'text/plain';\n const { data } = await client.getResourceRepresentation(rId, {\n accept: mediaType as ContentFormat,\n auth: token as AccessToken,\n });\n const content = decodeWithCharset(data, mediaType);\n\n setCloneData({\n sourceResource: cloneDataResponse.sourceResource,\n sourceContent: content,\n });\n } catch (error) {\n console.error('Failed to fetch representation:', error);\n showError('Failed to load resource representation');\n }\n } else {\n showError('Invalid or expired clone token');\n router.push('/know/discover');\n }\n setIsLoading(false);\n } else if (isCloneMode && !tokenFromUrl) {\n showError('Clone token not found. Please try cloning again.');\n router.push('/know/discover');\n } else {\n setIsLoading(false);\n }\n };\n\n loadInitialData();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [mode, tokenFromUrl, cloneDataResponse, annotationUriParam, sourceDocumentId, nameFromUrl, entityTypesFromUrl, authToken]);\n\n // Handle save resource\n const handleSaveResource = async (params: SaveResourceParams) => {\n try {\n let newResourceId: string;\n\n if (params.mode === 'clone') {\n // Create resource from clone token with edited content\n const response = await createFromTokenMutation.mutateAsync({\n token: tokenFromUrl!,\n name: params.name,\n content: params.content!,\n archiveOriginal: params.archiveOriginal ?? true,\n });\n\n newResourceId = response.resourceId;\n } else {\n // Create a new resource with entity types\n let fileToUpload: File;\n let mimeType: string;\n\n if (params.file) {\n fileToUpload = params.file;\n mimeType = params.format ?? 'application/octet-stream';\n } else {\n const blob = new Blob([params.content || ''], { type: params.format ?? 'application/octet-stream' });\n const extension = params.format === 'text/plain' ? '.txt' : params.format === 'text/html' ? '.html' : '.md';\n fileToUpload = new File([blob], params.name + extension, { type: params.format ?? 'application/octet-stream' });\n mimeType = params.format ?? 'application/octet-stream';\n }\n\n const format = params.charset && !params.file ? `${mimeType}; charset=${params.charset}` : mimeType;\n\n const response = await createResourceMutation.mutateAsync({\n name: params.name,\n file: fileToUpload,\n format,\n entityTypes: params.entityTypes || [],\n language: params.language,\n creationMethod: 'ui',\n storageUri: params.storageUri,\n });\n\n newResourceId = response.resourceId;\n\n // If this is a reference completion, update the reference\n if (params.mode === 'reference' && params.annotationUri && params.sourceDocumentId) {\n try {\n await updateAnnotationBodyMutation.mutateAsync({\n resourceId: toResourceId(params.sourceDocumentId),\n annotationId: toAnnotationId(params.annotationUri),\n data: {\n operations: [{\n op: 'add',\n item: {\n type: 'SpecificResource',\n source: newResourceId,\n purpose: 'linking',\n },\n }],\n },\n });\n showSuccess('Reference successfully linked to the new resource');\n } catch (error) {\n console.error('Failed to update reference:', error);\n showError('Resource created but failed to update reference. You may need to manually link it.');\n }\n }\n }\n\n // Navigate to the new resource\n router.push(`/know/resource/${encodeURIComponent(newResourceId)}`);\n } catch (error) {\n console.error('Failed to save resource:', error);\n const errorMessage = error instanceof Error ? error.message : 'Failed to save resource. Please try again.';\n showError(errorMessage);\n throw error;\n }\n };\n\n // Show loading state\n if (authLoading || isLoading) {\n return (\n <ComposeLoadingState\n message={authLoading ? 'Checking authentication...' : 'Loading cloned resource...'}\n />\n );\n }\n\n // Don't render if not authenticated\n if (!isAuthenticated) {\n return null;\n }\n\n // Render the pure component\n return (\n <ResourceComposePage\n mode={pageMode}\n cloneData={cloneData}\n referenceData={referenceData}\n gatheredContext={gatheredContext}\n availableEntityTypes={availableEntityTypes}\n initialLocale={locale}\n theme={resolvedTheme}\n showLineNumbers={showLineNumbers}\n hoverDelayMs={hoverDelayMs}\n activePanel={activePanel}\n onSaveResource={handleSaveResource}\n onCancel={() => router.push('/know/discover')}\n translations={{\n title: t('title'),\n titleEditClone: t('titleEditClone'),\n titleCompleteReference: t('titleCompleteReference'),\n subtitleClone: t('subtitleClone'),\n subtitleReference: t('subtitleReference'),\n linkedNoticePrefix: t('linkedNoticePrefix'),\n resourceName: t('resourceName'),\n resourceNamePlaceholder: t('resourceNamePlaceholder'),\n entityTypes: t('entityTypes'),\n language: t('language'),\n contentSource: t('contentSource'),\n uploadFile: t('uploadFile'),\n uploadFileDescription: t('uploadFileDescription'),\n writeContent: t('writeContent'),\n writeContentDescription: t('writeContentDescription'),\n dropFileOrClick: t('dropFileOrClick'),\n supportedFormats: t('supportedFormats'),\n mediaType: t('mediaType'),\n autoDetected: t('autoDetected'),\n format: t('format'),\n content: t('content'),\n resourceContent: t('resourceContent'),\n encoding: t('encoding'),\n archiveOriginal: t('archiveOriginal'),\n cancel: t('cancel'),\n saving: t('saving'),\n creating: t('creating'),\n creatingAndLinking: t('creatingAndLinking'),\n saveClonedResource: t('saveClonedResource'),\n createAndLinkResource: t('createAndLinkResource'),\n createResource: t('createResource'),\n }}\n ToolbarPanels={ToolbarPanels}\n Toolbar={Toolbar}\n />\n );\n}\n\nexport default function ComposeResourcePage() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`Compose.${k}`, p as any) as string;\n\n return (\n <Suspense fallback={<ComposeLoadingState message={t('loading')} />}>\n <ComposeResourceContent />\n </Suspense>\n );\n}\n"],"names":["ComposeResourceContent","_t","useTranslation","t","k","p","locale","useLocale","router","useRouter","searchParams","useSearchParams","isAuthenticated","authLoading","authToken","useKnowledgeBaseSession","showError","showSuccess","useToast","mode","tokenFromUrl","useEffect","annotationUriParam","sourceDocumentId","nameFromUrl","entityTypesFromUrl","isLoading","setIsLoading","useState","cloneData","setCloneData","referenceData","setReferenceData","gatheredContext","setGatheredContext","activePanel","usePanelBrowse","theme","setTheme","resolvedTheme","useTheme","showLineNumbers","toggleLineNumbers","useLineNumbers","hoverDelayMs","useHoverDelay","useEventSubscriptions","resources","useResources","annotations","useAnnotations","entityTypesAPI","useEntityTypes","client","useApiClient","token","useAuthToken","entityTypesData","availableEntityTypes","createResourceMutation","updateAnnotationBodyMutation","cloneDataResponse","createFromTokenMutation","isReferenceMode","isCloneMode","pageMode","entityTypes","contextKey","stored","rId","toResourceId","mediaType","getPrimaryMediaType","data","content","decodeWithCharset","error","handleSaveResource","params","newResourceId","fileToUpload","mimeType","blob","extension","format","toAnnotationId","errorMessage","jsx","ComposeLoadingState","ResourceComposePage","ToolbarPanels","Toolbar","ComposeResourcePage","Suspense"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{j as p}from"./query-B6BuIB0M.js";import{r as i}from"./vendor-DJo4KD8w.js";import{e as u,f as g,g as W,h as f,K as w,T as b}from"./index-XWcEpo5a.js";import{T as x}from"./ToolbarPanels-DRHyLUHl.js";import{u as T}from"./i18n-BbpF47i1.js";import"./routing-By_4TZHr.js";import"./XMarkIcon-KMKD47CF.js";var v={"legal-irac":{id:"legal-irac",name:"Legal Analysis (IRAC)",description:"Issue, Rule, Application, Conclusion framework for legal reasoning",domain:"legal",tags:[{name:"Issue",description:"The legal question or problem to be resolved",examples:["What is the central legal question?","What must the court decide?","What is the dispute about?"]},{name:"Rule",description:"The relevant law, statute, or legal principle",examples:["What law applies?","What is the legal standard?","What statute governs this case?"]},{name:"Application",description:"How the rule applies to the specific facts",examples:["How does the law apply to these facts?","Analysis of the case","How do the facts satisfy the legal standard?"]},{name:"Conclusion",description:"The resolution or outcome based on the analysis",examples:["What is the court's decision?","What is the final judgment?","What is the holding?"]}]},"scientific-imrad":{id:"scientific-imrad",name:"Scientific Paper (IMRAD)",description:"Introduction, Methods, Results, Discussion structure for research papers",domain:"scientific",tags:[{name:"Introduction",description:"Background, context, and research question",examples:["What is the research question?","Why is this important?","What is the hypothesis?"]},{name:"Methods",description:"Experimental design and procedures",examples:["How was the study conducted?","What methods were used?","What was the experimental design?"]},{name:"Results",description:"Findings and observations",examples:["What did the study find?","What are the data?","What were the observations?"]},{name:"Discussion",description:"Interpretation and implications of results",examples:["What do the results mean?","What are the implications?","How do these findings relate to prior work?"]}]},"argument-toulmin":{id:"argument-toulmin",name:"Argument Structure (Toulmin)",description:"Claim, Evidence, Warrant, Counterargument, Rebuttal framework for argumentation",domain:"general",tags:[{name:"Claim",description:"The main assertion or thesis",examples:["What is being argued?","What is the main point?","What position is being taken?"]},{name:"Evidence",description:"Data or facts supporting the claim",examples:["What supports this claim?","What are the facts?","What data is provided?"]},{name:"Warrant",description:"Reasoning connecting evidence to claim",examples:["Why does this evidence support the claim?","What is the logic?","How does this reasoning work?"]},{name:"Counterargument",description:"Opposing viewpoints or objections",examples:["What are the objections?","What do critics say?","What are alternative views?"]},{name:"Rebuttal",description:"Response to counterarguments",examples:["How is the objection addressed?","Why is the counterargument wrong?","How is the criticism answered?"]}]}};function y(){return Object.values(v)}function E(){const{t:n}=T(),e=(t,d)=>n(`ModerateTagSchemas.${t}`,d),{activePanel:o}=u(),{theme:r,setTheme:a}=g(),{showLineNumbers:c,toggleLineNumbers:s}=W(),l=i.useCallback(({theme:t})=>{a(t)},[a]),h=i.useCallback(()=>{s()},[s]);f({"settings:theme-changed":l,"settings:line-numbers-toggled":h});const m=y();return p.jsx(w,{schemas:m,isLoading:!1,theme:r,showLineNumbers:c,activePanel:o,translations:{pageTitle:e("pageTitle"),pageDescription:e("pageDescription"),categories:e("categories"),loading:e("loading")},ToolbarPanels:x,Toolbar:b})}export{E as default};
2
- //# sourceMappingURL=page-Dhi8hP-S.js.map
1
+ import{j as p}from"./query-B6BuIB0M.js";import{r as i}from"./vendor-DJo4KD8w.js";import{e as u,f as g,g as W,h as f,K as w,T as b}from"./index-CqzrFNnV.js";import{T as x}from"./ToolbarPanels-mrjx6GSA.js";import{u as T}from"./i18n-BbpF47i1.js";import"./routing-C43HVxNw.js";import"./XMarkIcon-KMKD47CF.js";var v={"legal-irac":{id:"legal-irac",name:"Legal Analysis (IRAC)",description:"Issue, Rule, Application, Conclusion framework for legal reasoning",domain:"legal",tags:[{name:"Issue",description:"The legal question or problem to be resolved",examples:["What is the central legal question?","What must the court decide?","What is the dispute about?"]},{name:"Rule",description:"The relevant law, statute, or legal principle",examples:["What law applies?","What is the legal standard?","What statute governs this case?"]},{name:"Application",description:"How the rule applies to the specific facts",examples:["How does the law apply to these facts?","Analysis of the case","How do the facts satisfy the legal standard?"]},{name:"Conclusion",description:"The resolution or outcome based on the analysis",examples:["What is the court's decision?","What is the final judgment?","What is the holding?"]}]},"scientific-imrad":{id:"scientific-imrad",name:"Scientific Paper (IMRAD)",description:"Introduction, Methods, Results, Discussion structure for research papers",domain:"scientific",tags:[{name:"Introduction",description:"Background, context, and research question",examples:["What is the research question?","Why is this important?","What is the hypothesis?"]},{name:"Methods",description:"Experimental design and procedures",examples:["How was the study conducted?","What methods were used?","What was the experimental design?"]},{name:"Results",description:"Findings and observations",examples:["What did the study find?","What are the data?","What were the observations?"]},{name:"Discussion",description:"Interpretation and implications of results",examples:["What do the results mean?","What are the implications?","How do these findings relate to prior work?"]}]},"argument-toulmin":{id:"argument-toulmin",name:"Argument Structure (Toulmin)",description:"Claim, Evidence, Warrant, Counterargument, Rebuttal framework for argumentation",domain:"general",tags:[{name:"Claim",description:"The main assertion or thesis",examples:["What is being argued?","What is the main point?","What position is being taken?"]},{name:"Evidence",description:"Data or facts supporting the claim",examples:["What supports this claim?","What are the facts?","What data is provided?"]},{name:"Warrant",description:"Reasoning connecting evidence to claim",examples:["Why does this evidence support the claim?","What is the logic?","How does this reasoning work?"]},{name:"Counterargument",description:"Opposing viewpoints or objections",examples:["What are the objections?","What do critics say?","What are alternative views?"]},{name:"Rebuttal",description:"Response to counterarguments",examples:["How is the objection addressed?","Why is the counterargument wrong?","How is the criticism answered?"]}]}};function y(){return Object.values(v)}function E(){const{t:n}=T(),e=(t,d)=>n(`ModerateTagSchemas.${t}`,d),{activePanel:o}=u(),{theme:r,setTheme:a}=g(),{showLineNumbers:c,toggleLineNumbers:s}=W(),l=i.useCallback(({theme:t})=>{a(t)},[a]),h=i.useCallback(()=>{s()},[s]);f({"settings:theme-changed":l,"settings:line-numbers-toggled":h});const m=y();return p.jsx(w,{schemas:m,isLoading:!1,theme:r,showLineNumbers:c,activePanel:o,translations:{pageTitle:e("pageTitle"),pageDescription:e("pageDescription"),categories:e("categories"),loading:e("loading")},ToolbarPanels:x,Toolbar:b})}export{E as default};
2
+ //# sourceMappingURL=page-BSaAdGF1.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"page-Dhi8hP-S.js","sources":["../../../../packages/ontology/dist/index.js","../../src/app/[locale]/moderate/tag-schemas/page.tsx"],"sourcesContent":["// src/entity-types.ts\nvar DEFAULT_ENTITY_TYPES = [\n \"Person\",\n \"Organization\",\n \"Location\",\n \"Event\",\n \"Concept\",\n \"Product\",\n \"Technology\",\n \"Date\",\n \"Author\"\n];\n\n// src/tag-schemas.ts\nvar TAG_SCHEMAS = {\n \"legal-irac\": {\n id: \"legal-irac\",\n name: \"Legal Analysis (IRAC)\",\n description: \"Issue, Rule, Application, Conclusion framework for legal reasoning\",\n domain: \"legal\",\n tags: [\n {\n name: \"Issue\",\n description: \"The legal question or problem to be resolved\",\n examples: [\n \"What is the central legal question?\",\n \"What must the court decide?\",\n \"What is the dispute about?\"\n ]\n },\n {\n name: \"Rule\",\n description: \"The relevant law, statute, or legal principle\",\n examples: [\n \"What law applies?\",\n \"What is the legal standard?\",\n \"What statute governs this case?\"\n ]\n },\n {\n name: \"Application\",\n description: \"How the rule applies to the specific facts\",\n examples: [\n \"How does the law apply to these facts?\",\n \"Analysis of the case\",\n \"How do the facts satisfy the legal standard?\"\n ]\n },\n {\n name: \"Conclusion\",\n description: \"The resolution or outcome based on the analysis\",\n examples: [\n \"What is the court's decision?\",\n \"What is the final judgment?\",\n \"What is the holding?\"\n ]\n }\n ]\n },\n \"scientific-imrad\": {\n id: \"scientific-imrad\",\n name: \"Scientific Paper (IMRAD)\",\n description: \"Introduction, Methods, Results, Discussion structure for research papers\",\n domain: \"scientific\",\n tags: [\n {\n name: \"Introduction\",\n description: \"Background, context, and research question\",\n examples: [\n \"What is the research question?\",\n \"Why is this important?\",\n \"What is the hypothesis?\"\n ]\n },\n {\n name: \"Methods\",\n description: \"Experimental design and procedures\",\n examples: [\n \"How was the study conducted?\",\n \"What methods were used?\",\n \"What was the experimental design?\"\n ]\n },\n {\n name: \"Results\",\n description: \"Findings and observations\",\n examples: [\n \"What did the study find?\",\n \"What are the data?\",\n \"What were the observations?\"\n ]\n },\n {\n name: \"Discussion\",\n description: \"Interpretation and implications of results\",\n examples: [\n \"What do the results mean?\",\n \"What are the implications?\",\n \"How do these findings relate to prior work?\"\n ]\n }\n ]\n },\n \"argument-toulmin\": {\n id: \"argument-toulmin\",\n name: \"Argument Structure (Toulmin)\",\n description: \"Claim, Evidence, Warrant, Counterargument, Rebuttal framework for argumentation\",\n domain: \"general\",\n tags: [\n {\n name: \"Claim\",\n description: \"The main assertion or thesis\",\n examples: [\n \"What is being argued?\",\n \"What is the main point?\",\n \"What position is being taken?\"\n ]\n },\n {\n name: \"Evidence\",\n description: \"Data or facts supporting the claim\",\n examples: [\n \"What supports this claim?\",\n \"What are the facts?\",\n \"What data is provided?\"\n ]\n },\n {\n name: \"Warrant\",\n description: \"Reasoning connecting evidence to claim\",\n examples: [\n \"Why does this evidence support the claim?\",\n \"What is the logic?\",\n \"How does this reasoning work?\"\n ]\n },\n {\n name: \"Counterargument\",\n description: \"Opposing viewpoints or objections\",\n examples: [\n \"What are the objections?\",\n \"What do critics say?\",\n \"What are alternative views?\"\n ]\n },\n {\n name: \"Rebuttal\",\n description: \"Response to counterarguments\",\n examples: [\n \"How is the objection addressed?\",\n \"Why is the counterargument wrong?\",\n \"How is the criticism answered?\"\n ]\n }\n ]\n }\n};\nfunction getTagSchema(schemaId) {\n return TAG_SCHEMAS[schemaId] || null;\n}\nfunction getAllTagSchemas() {\n return Object.values(TAG_SCHEMAS);\n}\nfunction getTagSchemasByDomain(domain) {\n return Object.values(TAG_SCHEMAS).filter((schema) => schema.domain === domain);\n}\nfunction isValidCategory(schemaId, categoryName) {\n const schema = getTagSchema(schemaId);\n if (!schema) return false;\n return schema.tags.some((tag) => tag.name === categoryName);\n}\nfunction getSchemaCategory(schemaId, categoryName) {\n const schema = getTagSchema(schemaId);\n if (!schema) return null;\n return schema.tags.find((tag) => tag.name === categoryName) || null;\n}\n\n// src/entity-extraction.ts\nfunction getEntityTypes(annotation) {\n if (Array.isArray(annotation.body)) {\n const entityTags = [];\n for (const item of annotation.body) {\n if (typeof item === \"object\" && item !== null && \"type\" in item && \"value\" in item && \"purpose\" in item) {\n const itemType = item.type;\n const itemValue = item.value;\n const itemPurpose = item.purpose;\n if (itemType === \"TextualBody\" && itemPurpose === \"tagging\" && typeof itemValue === \"string\" && itemValue.length > 0) {\n entityTags.push(itemValue);\n }\n }\n }\n return entityTags;\n }\n return [];\n}\n\n// src/tag-extraction.ts\nfunction isTag(annotation) {\n return annotation.motivation === \"tagging\";\n}\nfunction getTagCategory(annotation) {\n if (!isTag(annotation)) return void 0;\n const bodies = Array.isArray(annotation.body) ? annotation.body : [annotation.body];\n const taggingBody = bodies.find(\n (b) => b !== null && typeof b === \"object\" && \"purpose\" in b && b.purpose === \"tagging\"\n );\n if (taggingBody && \"value\" in taggingBody) {\n return taggingBody.value;\n }\n return void 0;\n}\nfunction getTagSchemaId(annotation) {\n if (!isTag(annotation)) return void 0;\n const bodies = Array.isArray(annotation.body) ? annotation.body : [annotation.body];\n const classifyingBody = bodies.find(\n (b) => b !== null && typeof b === \"object\" && \"purpose\" in b && b.purpose === \"classifying\"\n );\n if (classifyingBody && \"value\" in classifyingBody) {\n return classifyingBody.value;\n }\n return void 0;\n}\nexport {\n DEFAULT_ENTITY_TYPES,\n TAG_SCHEMAS,\n getAllTagSchemas,\n getEntityTypes,\n getSchemaCategory,\n getTagCategory,\n getTagSchema,\n getTagSchemaId,\n getTagSchemasByDomain,\n isValidCategory\n};\n//# sourceMappingURL=index.js.map","import { useCallback } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { Toolbar } from '@semiont/react-ui';\nimport { ToolbarPanels } from '@/components/toolbar/ToolbarPanels';\nimport { useTheme, usePanelBrowse, useLineNumbers, useEventSubscriptions } from '@semiont/react-ui';\nimport { getAllTagSchemas } from '@semiont/ontology';\nimport { TagSchemasPage } from '@semiont/react-ui';\n\n// Authentication is handled by middleware (proxy.ts)\n// Only authenticated moderators/admins can reach this page\n\nexport default function TagSchemasPageWrapper() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`ModerateTagSchemas.${k}`, p as any) as string;\n\n // Toolbar and settings state\n const { activePanel } = usePanelBrowse();\n const { theme, setTheme } = useTheme();\n const { showLineNumbers, toggleLineNumbers } = useLineNumbers();\n\n const handleThemeChanged = useCallback(({ theme }: { theme: 'light' | 'dark' | 'system' }) => {\n setTheme(theme);\n }, [setTheme]);\n\n const handleLineNumbersToggled = useCallback(() => {\n toggleLineNumbers();\n }, [toggleLineNumbers]);\n\n useEventSubscriptions({\n 'settings:theme-changed': handleThemeChanged,\n 'settings:line-numbers-toggled': handleLineNumbersToggled,\n });\n\n const schemas = getAllTagSchemas();\n\n return (\n <TagSchemasPage\n schemas={schemas}\n isLoading={false}\n theme={theme}\n showLineNumbers={showLineNumbers}\n activePanel={activePanel}\n translations={{\n pageTitle: t('pageTitle'),\n pageDescription: t('pageDescription'),\n categories: t('categories'),\n loading: t('loading'),\n }}\n ToolbarPanels={ToolbarPanels}\n Toolbar={Toolbar}\n />\n );\n}\n"],"names":["TAG_SCHEMAS","getAllTagSchemas","TagSchemasPageWrapper","_t","useTranslation","t","k","p","activePanel","usePanelBrowse","theme","setTheme","useTheme","showLineNumbers","toggleLineNumbers","useLineNumbers","handleThemeChanged","useCallback","handleLineNumbersToggled","useEventSubscriptions","schemas","jsx","TagSchemasPage","ToolbarPanels","Toolbar"],"mappings":"iTAcA,IAAIA,EAAc,CAChB,aAAc,CACZ,GAAI,aACJ,KAAM,wBACN,YAAa,qEACb,OAAQ,QACR,KAAM,CACJ,CACE,KAAM,QACN,YAAa,+CACb,SAAU,CACR,sCACA,8BACA,4BACV,CACA,EACM,CACE,KAAM,OACN,YAAa,gDACb,SAAU,CACR,oBACA,8BACA,iCACV,CACA,EACM,CACE,KAAM,cACN,YAAa,6CACb,SAAU,CACR,yCACA,uBACA,8CACV,CACA,EACM,CACE,KAAM,aACN,YAAa,kDACb,SAAU,CACR,gCACA,8BACA,sBACV,CACA,CACA,CACA,EACE,mBAAoB,CAClB,GAAI,mBACJ,KAAM,2BACN,YAAa,2EACb,OAAQ,aACR,KAAM,CACJ,CACE,KAAM,eACN,YAAa,6CACb,SAAU,CACR,iCACA,yBACA,yBACV,CACA,EACM,CACE,KAAM,UACN,YAAa,qCACb,SAAU,CACR,+BACA,0BACA,mCACV,CACA,EACM,CACE,KAAM,UACN,YAAa,4BACb,SAAU,CACR,2BACA,qBACA,6BACV,CACA,EACM,CACE,KAAM,aACN,YAAa,6CACb,SAAU,CACR,4BACA,6BACA,6CACV,CACA,CACA,CACA,EACE,mBAAoB,CAClB,GAAI,mBACJ,KAAM,+BACN,YAAa,kFACb,OAAQ,UACR,KAAM,CACJ,CACE,KAAM,QACN,YAAa,+BACb,SAAU,CACR,wBACA,0BACA,+BACV,CACA,EACM,CACE,KAAM,WACN,YAAa,qCACb,SAAU,CACR,4BACA,sBACA,wBACV,CACA,EACM,CACE,KAAM,UACN,YAAa,yCACb,SAAU,CACR,4CACA,qBACA,+BACV,CACA,EACM,CACE,KAAM,kBACN,YAAa,oCACb,SAAU,CACR,2BACA,uBACA,6BACV,CACA,EACM,CACE,KAAM,WACN,YAAa,+BACb,SAAU,CACR,kCACA,oCACA,gCACV,CACA,CACA,CACA,CACA,EAIA,SAASC,GAAmB,CAC1B,OAAO,OAAO,OAAOD,CAAW,CAClC,CCvJA,SAAwBE,GAAwB,CAC9C,KAAM,CAAE,EAAGC,CAAA,EAAOC,EAAA,EACZC,EAAI,CAACC,EAAWC,IAAgCJ,EAAG,sBAAsBG,CAAC,GAAIC,CAAQ,EAGtF,CAAE,YAAAC,CAAA,EAAgBC,EAAA,EAClB,CAAE,MAAAC,EAAO,SAAAC,CAAA,EAAaC,EAAA,EACtB,CAAE,gBAAAC,EAAiB,kBAAAC,CAAA,EAAsBC,EAAA,EAEzCC,EAAqBC,EAAAA,YAAY,CAAC,CAAE,MAAAP,KAAoD,CAC5FC,EAASD,CAAK,CAChB,EAAG,CAACC,CAAQ,CAAC,EAEPO,EAA2BD,EAAAA,YAAY,IAAM,CACjDH,EAAA,CACF,EAAG,CAACA,CAAiB,CAAC,EAEtBK,EAAsB,CACpB,yBAA0BH,EAC1B,gCAAiCE,CAAA,CAClC,EAED,MAAME,EAAUnB,EAAA,EAEhB,OACEoB,EAAAA,IAACC,EAAA,CACC,QAAAF,EACA,UAAW,GACX,MAAAV,EACA,gBAAAG,EACA,YAAAL,EACA,aAAc,CACZ,UAAWH,EAAE,WAAW,EACxB,gBAAiBA,EAAE,iBAAiB,EACpC,WAAYA,EAAE,YAAY,EAC1B,QAASA,EAAE,SAAS,CAAA,EAEtB,cAAAkB,EACA,QAAAC,CAAA,CAAA,CAGN"}
1
+ {"version":3,"file":"page-BSaAdGF1.js","sources":["../../../../packages/ontology/dist/index.js","../../src/app/[locale]/moderate/tag-schemas/page.tsx"],"sourcesContent":["// src/entity-types.ts\nvar DEFAULT_ENTITY_TYPES = [\n \"Person\",\n \"Organization\",\n \"Location\",\n \"Event\",\n \"Concept\",\n \"Product\",\n \"Technology\",\n \"Date\",\n \"Author\"\n];\n\n// src/tag-schemas.ts\nvar TAG_SCHEMAS = {\n \"legal-irac\": {\n id: \"legal-irac\",\n name: \"Legal Analysis (IRAC)\",\n description: \"Issue, Rule, Application, Conclusion framework for legal reasoning\",\n domain: \"legal\",\n tags: [\n {\n name: \"Issue\",\n description: \"The legal question or problem to be resolved\",\n examples: [\n \"What is the central legal question?\",\n \"What must the court decide?\",\n \"What is the dispute about?\"\n ]\n },\n {\n name: \"Rule\",\n description: \"The relevant law, statute, or legal principle\",\n examples: [\n \"What law applies?\",\n \"What is the legal standard?\",\n \"What statute governs this case?\"\n ]\n },\n {\n name: \"Application\",\n description: \"How the rule applies to the specific facts\",\n examples: [\n \"How does the law apply to these facts?\",\n \"Analysis of the case\",\n \"How do the facts satisfy the legal standard?\"\n ]\n },\n {\n name: \"Conclusion\",\n description: \"The resolution or outcome based on the analysis\",\n examples: [\n \"What is the court's decision?\",\n \"What is the final judgment?\",\n \"What is the holding?\"\n ]\n }\n ]\n },\n \"scientific-imrad\": {\n id: \"scientific-imrad\",\n name: \"Scientific Paper (IMRAD)\",\n description: \"Introduction, Methods, Results, Discussion structure for research papers\",\n domain: \"scientific\",\n tags: [\n {\n name: \"Introduction\",\n description: \"Background, context, and research question\",\n examples: [\n \"What is the research question?\",\n \"Why is this important?\",\n \"What is the hypothesis?\"\n ]\n },\n {\n name: \"Methods\",\n description: \"Experimental design and procedures\",\n examples: [\n \"How was the study conducted?\",\n \"What methods were used?\",\n \"What was the experimental design?\"\n ]\n },\n {\n name: \"Results\",\n description: \"Findings and observations\",\n examples: [\n \"What did the study find?\",\n \"What are the data?\",\n \"What were the observations?\"\n ]\n },\n {\n name: \"Discussion\",\n description: \"Interpretation and implications of results\",\n examples: [\n \"What do the results mean?\",\n \"What are the implications?\",\n \"How do these findings relate to prior work?\"\n ]\n }\n ]\n },\n \"argument-toulmin\": {\n id: \"argument-toulmin\",\n name: \"Argument Structure (Toulmin)\",\n description: \"Claim, Evidence, Warrant, Counterargument, Rebuttal framework for argumentation\",\n domain: \"general\",\n tags: [\n {\n name: \"Claim\",\n description: \"The main assertion or thesis\",\n examples: [\n \"What is being argued?\",\n \"What is the main point?\",\n \"What position is being taken?\"\n ]\n },\n {\n name: \"Evidence\",\n description: \"Data or facts supporting the claim\",\n examples: [\n \"What supports this claim?\",\n \"What are the facts?\",\n \"What data is provided?\"\n ]\n },\n {\n name: \"Warrant\",\n description: \"Reasoning connecting evidence to claim\",\n examples: [\n \"Why does this evidence support the claim?\",\n \"What is the logic?\",\n \"How does this reasoning work?\"\n ]\n },\n {\n name: \"Counterargument\",\n description: \"Opposing viewpoints or objections\",\n examples: [\n \"What are the objections?\",\n \"What do critics say?\",\n \"What are alternative views?\"\n ]\n },\n {\n name: \"Rebuttal\",\n description: \"Response to counterarguments\",\n examples: [\n \"How is the objection addressed?\",\n \"Why is the counterargument wrong?\",\n \"How is the criticism answered?\"\n ]\n }\n ]\n }\n};\nfunction getTagSchema(schemaId) {\n return TAG_SCHEMAS[schemaId] || null;\n}\nfunction getAllTagSchemas() {\n return Object.values(TAG_SCHEMAS);\n}\nfunction getTagSchemasByDomain(domain) {\n return Object.values(TAG_SCHEMAS).filter((schema) => schema.domain === domain);\n}\nfunction isValidCategory(schemaId, categoryName) {\n const schema = getTagSchema(schemaId);\n if (!schema) return false;\n return schema.tags.some((tag) => tag.name === categoryName);\n}\nfunction getSchemaCategory(schemaId, categoryName) {\n const schema = getTagSchema(schemaId);\n if (!schema) return null;\n return schema.tags.find((tag) => tag.name === categoryName) || null;\n}\n\n// src/entity-extraction.ts\nfunction getEntityTypes(annotation) {\n if (Array.isArray(annotation.body)) {\n const entityTags = [];\n for (const item of annotation.body) {\n if (typeof item === \"object\" && item !== null && \"type\" in item && \"value\" in item && \"purpose\" in item) {\n const itemType = item.type;\n const itemValue = item.value;\n const itemPurpose = item.purpose;\n if (itemType === \"TextualBody\" && itemPurpose === \"tagging\" && typeof itemValue === \"string\" && itemValue.length > 0) {\n entityTags.push(itemValue);\n }\n }\n }\n return entityTags;\n }\n return [];\n}\n\n// src/tag-extraction.ts\nfunction isTag(annotation) {\n return annotation.motivation === \"tagging\";\n}\nfunction getTagCategory(annotation) {\n if (!isTag(annotation)) return void 0;\n const bodies = Array.isArray(annotation.body) ? annotation.body : [annotation.body];\n const taggingBody = bodies.find(\n (b) => b !== null && typeof b === \"object\" && \"purpose\" in b && b.purpose === \"tagging\"\n );\n if (taggingBody && \"value\" in taggingBody) {\n return taggingBody.value;\n }\n return void 0;\n}\nfunction getTagSchemaId(annotation) {\n if (!isTag(annotation)) return void 0;\n const bodies = Array.isArray(annotation.body) ? annotation.body : [annotation.body];\n const classifyingBody = bodies.find(\n (b) => b !== null && typeof b === \"object\" && \"purpose\" in b && b.purpose === \"classifying\"\n );\n if (classifyingBody && \"value\" in classifyingBody) {\n return classifyingBody.value;\n }\n return void 0;\n}\nexport {\n DEFAULT_ENTITY_TYPES,\n TAG_SCHEMAS,\n getAllTagSchemas,\n getEntityTypes,\n getSchemaCategory,\n getTagCategory,\n getTagSchema,\n getTagSchemaId,\n getTagSchemasByDomain,\n isValidCategory\n};\n//# sourceMappingURL=index.js.map","import { useCallback } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { Toolbar } from '@semiont/react-ui';\nimport { ToolbarPanels } from '@/components/toolbar/ToolbarPanels';\nimport { useTheme, usePanelBrowse, useLineNumbers, useEventSubscriptions } from '@semiont/react-ui';\nimport { getAllTagSchemas } from '@semiont/ontology';\nimport { TagSchemasPage } from '@semiont/react-ui';\n\n// Authentication is handled by middleware (proxy.ts)\n// Only authenticated moderators/admins can reach this page\n\nexport default function TagSchemasPageWrapper() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`ModerateTagSchemas.${k}`, p as any) as string;\n\n // Toolbar and settings state\n const { activePanel } = usePanelBrowse();\n const { theme, setTheme } = useTheme();\n const { showLineNumbers, toggleLineNumbers } = useLineNumbers();\n\n const handleThemeChanged = useCallback(({ theme }: { theme: 'light' | 'dark' | 'system' }) => {\n setTheme(theme);\n }, [setTheme]);\n\n const handleLineNumbersToggled = useCallback(() => {\n toggleLineNumbers();\n }, [toggleLineNumbers]);\n\n useEventSubscriptions({\n 'settings:theme-changed': handleThemeChanged,\n 'settings:line-numbers-toggled': handleLineNumbersToggled,\n });\n\n const schemas = getAllTagSchemas();\n\n return (\n <TagSchemasPage\n schemas={schemas}\n isLoading={false}\n theme={theme}\n showLineNumbers={showLineNumbers}\n activePanel={activePanel}\n translations={{\n pageTitle: t('pageTitle'),\n pageDescription: t('pageDescription'),\n categories: t('categories'),\n loading: t('loading'),\n }}\n ToolbarPanels={ToolbarPanels}\n Toolbar={Toolbar}\n />\n );\n}\n"],"names":["TAG_SCHEMAS","getAllTagSchemas","TagSchemasPageWrapper","_t","useTranslation","t","k","p","activePanel","usePanelBrowse","theme","setTheme","useTheme","showLineNumbers","toggleLineNumbers","useLineNumbers","handleThemeChanged","useCallback","handleLineNumbersToggled","useEventSubscriptions","schemas","jsx","TagSchemasPage","ToolbarPanels","Toolbar"],"mappings":"iTAcA,IAAIA,EAAc,CAChB,aAAc,CACZ,GAAI,aACJ,KAAM,wBACN,YAAa,qEACb,OAAQ,QACR,KAAM,CACJ,CACE,KAAM,QACN,YAAa,+CACb,SAAU,CACR,sCACA,8BACA,4BACV,CACA,EACM,CACE,KAAM,OACN,YAAa,gDACb,SAAU,CACR,oBACA,8BACA,iCACV,CACA,EACM,CACE,KAAM,cACN,YAAa,6CACb,SAAU,CACR,yCACA,uBACA,8CACV,CACA,EACM,CACE,KAAM,aACN,YAAa,kDACb,SAAU,CACR,gCACA,8BACA,sBACV,CACA,CACA,CACA,EACE,mBAAoB,CAClB,GAAI,mBACJ,KAAM,2BACN,YAAa,2EACb,OAAQ,aACR,KAAM,CACJ,CACE,KAAM,eACN,YAAa,6CACb,SAAU,CACR,iCACA,yBACA,yBACV,CACA,EACM,CACE,KAAM,UACN,YAAa,qCACb,SAAU,CACR,+BACA,0BACA,mCACV,CACA,EACM,CACE,KAAM,UACN,YAAa,4BACb,SAAU,CACR,2BACA,qBACA,6BACV,CACA,EACM,CACE,KAAM,aACN,YAAa,6CACb,SAAU,CACR,4BACA,6BACA,6CACV,CACA,CACA,CACA,EACE,mBAAoB,CAClB,GAAI,mBACJ,KAAM,+BACN,YAAa,kFACb,OAAQ,UACR,KAAM,CACJ,CACE,KAAM,QACN,YAAa,+BACb,SAAU,CACR,wBACA,0BACA,+BACV,CACA,EACM,CACE,KAAM,WACN,YAAa,qCACb,SAAU,CACR,4BACA,sBACA,wBACV,CACA,EACM,CACE,KAAM,UACN,YAAa,yCACb,SAAU,CACR,4CACA,qBACA,+BACV,CACA,EACM,CACE,KAAM,kBACN,YAAa,oCACb,SAAU,CACR,2BACA,uBACA,6BACV,CACA,EACM,CACE,KAAM,WACN,YAAa,+BACb,SAAU,CACR,kCACA,oCACA,gCACV,CACA,CACA,CACA,CACA,EAIA,SAASC,GAAmB,CAC1B,OAAO,OAAO,OAAOD,CAAW,CAClC,CCvJA,SAAwBE,GAAwB,CAC9C,KAAM,CAAE,EAAGC,CAAA,EAAOC,EAAA,EACZC,EAAI,CAACC,EAAWC,IAAgCJ,EAAG,sBAAsBG,CAAC,GAAIC,CAAQ,EAGtF,CAAE,YAAAC,CAAA,EAAgBC,EAAA,EAClB,CAAE,MAAAC,EAAO,SAAAC,CAAA,EAAaC,EAAA,EACtB,CAAE,gBAAAC,EAAiB,kBAAAC,CAAA,EAAsBC,EAAA,EAEzCC,EAAqBC,EAAAA,YAAY,CAAC,CAAE,MAAAP,KAAoD,CAC5FC,EAASD,CAAK,CAChB,EAAG,CAACC,CAAQ,CAAC,EAEPO,EAA2BD,EAAAA,YAAY,IAAM,CACjDH,EAAA,CACF,EAAG,CAACA,CAAiB,CAAC,EAEtBK,EAAsB,CACpB,yBAA0BH,EAC1B,gCAAiCE,CAAA,CAClC,EAED,MAAME,EAAUnB,EAAA,EAEhB,OACEoB,EAAAA,IAACC,EAAA,CACC,QAAAF,EACA,UAAW,GACX,MAAAV,EACA,gBAAAG,EACA,YAAAL,EACA,aAAc,CACZ,UAAWH,EAAE,WAAW,EACxB,gBAAiBA,EAAE,iBAAiB,EACpC,WAAYA,EAAE,YAAY,EAC1B,QAASA,EAAE,SAAS,CAAA,EAEtB,cAAAkB,EACA,QAAAC,CAAA,CAAA,CAGN"}
@@ -1,2 +1,2 @@
1
- import{j as B}from"./query-B6BuIB0M.js";import{r as u}from"./vendor-DJo4KD8w.js";import{u as w}from"./routing-By_4TZHr.js";import{e as E,f as L,g as N,h as x,i as C,j as F,R as j}from"./index-XWcEpo5a.js";import{T as k}from"./ToolbarPanels-DRHyLUHl.js";import{u as A}from"./i18n-BbpF47i1.js";import"./XMarkIcon-KMKD47CF.js";function _(){const{t:l}=A(),e=(s,P)=>l(`Discover.${s}`,P),n=w(),{activePanel:m}=E(),{theme:Q,setTheme:a,resolvedTheme:h}=L(),{showLineNumbers:d,toggleLineNumbers:c}=N(),g=u.useCallback(({theme:s})=>{a(s)},[a]),p=u.useCallback(()=>{c()},[c]);x({"settings:theme-changed":g,"settings:line-numbers-toggled":p});const i=C(),R=F(),{data:t,isLoading:T}=i.list.useQuery({limit:10,archived:!1}),{data:o}=R.list.useQuery(),{data:r,isFetching:y}=i.search.useQuery("",20),b=(t==null?void 0:t.resources)||[],v=(r==null?void 0:r.resources)||[],f=(o==null?void 0:o.entityTypes)||[];return B.jsx(j,{recentDocuments:b,searchDocuments:v,entityTypes:f,isLoadingRecent:T,isSearching:y,theme:h,showLineNumbers:d,activePanel:m,onNavigateToResource:s=>{n.push(`/know/resource/${encodeURIComponent(s)}`)},onNavigateToCompose:()=>{n.push("/know/compose")},translations:{title:e("title"),subtitle:e("subtitle"),searchPlaceholder:e("searchPlaceholder"),searchButton:e("searchButton"),searching:e("searching"),filterByEntityType:e("filterByEntityType"),all:e("all"),recentResources:e("recentResources"),searchResults:s=>e("searchResults",{count:s}),documentsTaggedWith:s=>e("documentsTaggedWith",{entityType:s}),noResultsFound:s=>e("noResultsFound",{query:s}),noResourcesAvailable:e("noResourcesAvailable"),composeFirstResource:e("composeFirstResource"),archived:e("archived"),created:e("created"),loadingKnowledgeBase:e("loadingKnowledgeBase")},ToolbarPanels:k})}export{_ as default};
2
- //# sourceMappingURL=page-FovvpNWp.js.map
1
+ import{j as B}from"./query-B6BuIB0M.js";import{r as u}from"./vendor-DJo4KD8w.js";import{u as w}from"./routing-C43HVxNw.js";import{e as E,f as L,g as N,h as x,i as C,j as F,R as j}from"./index-CqzrFNnV.js";import{T as k}from"./ToolbarPanels-mrjx6GSA.js";import{u as A}from"./i18n-BbpF47i1.js";import"./XMarkIcon-KMKD47CF.js";function _(){const{t:l}=A(),e=(s,P)=>l(`Discover.${s}`,P),n=w(),{activePanel:m}=E(),{theme:Q,setTheme:a,resolvedTheme:h}=L(),{showLineNumbers:d,toggleLineNumbers:c}=N(),g=u.useCallback(({theme:s})=>{a(s)},[a]),p=u.useCallback(()=>{c()},[c]);x({"settings:theme-changed":g,"settings:line-numbers-toggled":p});const i=C(),R=F(),{data:t,isLoading:T}=i.list.useQuery({limit:10,archived:!1}),{data:o}=R.list.useQuery(),{data:r,isFetching:y}=i.search.useQuery("",20),b=(t==null?void 0:t.resources)||[],v=(r==null?void 0:r.resources)||[],f=(o==null?void 0:o.entityTypes)||[];return B.jsx(j,{recentDocuments:b,searchDocuments:v,entityTypes:f,isLoadingRecent:T,isSearching:y,theme:h,showLineNumbers:d,activePanel:m,onNavigateToResource:s=>{n.push(`/know/resource/${encodeURIComponent(s)}`)},onNavigateToCompose:()=>{n.push("/know/compose")},translations:{title:e("title"),subtitle:e("subtitle"),searchPlaceholder:e("searchPlaceholder"),searchButton:e("searchButton"),searching:e("searching"),filterByEntityType:e("filterByEntityType"),all:e("all"),recentResources:e("recentResources"),searchResults:s=>e("searchResults",{count:s}),documentsTaggedWith:s=>e("documentsTaggedWith",{entityType:s}),noResultsFound:s=>e("noResultsFound",{query:s}),noResourcesAvailable:e("noResourcesAvailable"),composeFirstResource:e("composeFirstResource"),archived:e("archived"),created:e("created"),loadingKnowledgeBase:e("loadingKnowledgeBase")},ToolbarPanels:k})}export{_ as default};
2
+ //# sourceMappingURL=page-BjvkLuU3.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"page-FovvpNWp.js","sources":["../../src/app/[locale]/know/discover/page.tsx"],"sourcesContent":["\"use client\";\n\n/**\n * Resource Discovery Page - Thin Next.js wrapper\n *\n * This page handles Next.js-specific concerns (routing, data loading, hooks)\n * and delegates rendering to the pure React ResourceDiscoveryPage component.\n */\n\nimport React, { useEffect, useCallback } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { useRouter } from '@/i18n/routing';\nimport { useResources, useEntityTypes, useTheme, usePanelBrowse, useLineNumbers, useEventSubscriptions } from '@semiont/react-ui';\nimport { ToolbarPanels } from '@/components/toolbar/ToolbarPanels';\nimport { ResourceDiscoveryPage } from '@semiont/react-ui';\n\n/**\n * Main page component - handles Next.js hooks and data loading\n */\nexport default function DiscoverPage() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`Discover.${k}`, p as any) as string;\n const router = useRouter();\n\n // Toolbar and settings state\n const { activePanel } = usePanelBrowse();\n const { theme, setTheme, resolvedTheme } = useTheme();\n const { showLineNumbers, toggleLineNumbers } = useLineNumbers();\n\n // Handle theme change events\n const handleThemeChanged = useCallback(({ theme }: { theme: 'light' | 'dark' | 'system' }) => {\n setTheme(theme);\n }, [setTheme]);\n\n // Handle line numbers toggle events\n const handleLineNumbersToggled = useCallback(() => {\n toggleLineNumbers();\n }, [toggleLineNumbers]);\n\n useEventSubscriptions({\n 'settings:theme-changed': handleThemeChanged,\n 'settings:line-numbers-toggled': handleLineNumbersToggled,\n });\n\n // API hooks\n const resources = useResources();\n const entityTypesAPI = useEntityTypes();\n\n // Load recent documents using React Query\n const { data: recentDocsData, isLoading: isLoadingRecent } = resources.list.useQuery(\n { limit: 10, archived: false }\n );\n\n // Load entity types using React Query\n const { data: entityTypesData } = entityTypesAPI.list.useQuery();\n\n // Search documents using React Query (only when there's a search query)\n const { data: searchData, isFetching: isSearching } = resources.search.useQuery(\n '', // Empty search query initially - component will trigger search\n 20\n );\n\n // Extract data from React Query responses\n const recentDocuments = recentDocsData?.resources || [];\n const searchDocuments = searchData?.resources || [];\n const entityTypes = entityTypesData?.entityTypes || [];\n\n // Render the pure component with all props\n return (\n <ResourceDiscoveryPage\n recentDocuments={recentDocuments}\n searchDocuments={searchDocuments}\n entityTypes={entityTypes}\n isLoadingRecent={isLoadingRecent}\n isSearching={isSearching}\n theme={resolvedTheme}\n showLineNumbers={showLineNumbers}\n activePanel={activePanel}\n onNavigateToResource={(resourceId) => {\n router.push(`/know/resource/${encodeURIComponent(resourceId)}`);\n }}\n onNavigateToCompose={() => {\n router.push('/know/compose');\n }}\n translations={{\n title: t('title'),\n subtitle: t('subtitle'),\n searchPlaceholder: t('searchPlaceholder'),\n searchButton: t('searchButton'),\n searching: t('searching'),\n filterByEntityType: t('filterByEntityType'),\n all: t('all'),\n recentResources: t('recentResources'),\n searchResults: (count: number) => t('searchResults', { count }),\n documentsTaggedWith: (entityType: string) => t('documentsTaggedWith', { entityType }),\n noResultsFound: (query: string) => t('noResultsFound', { query }),\n noResourcesAvailable: t('noResourcesAvailable'),\n composeFirstResource: t('composeFirstResource'),\n archived: t('archived'),\n created: t('created'),\n loadingKnowledgeBase: t('loadingKnowledgeBase'),\n }}\n ToolbarPanels={ToolbarPanels}\n />\n );\n}"],"names":["DiscoverPage","_t","useTranslation","t","k","p","router","useRouter","activePanel","usePanelBrowse","theme","setTheme","resolvedTheme","useTheme","showLineNumbers","toggleLineNumbers","useLineNumbers","handleThemeChanged","useCallback","handleLineNumbersToggled","useEventSubscriptions","resources","useResources","entityTypesAPI","useEntityTypes","recentDocsData","isLoadingRecent","entityTypesData","searchData","isSearching","recentDocuments","searchDocuments","entityTypes","jsx","ResourceDiscoveryPage","resourceId","count","entityType","query","ToolbarPanels"],"mappings":"oUAmBA,SAAwBA,GAAe,CACrC,KAAM,CAAE,EAAGC,CAAA,EAAOC,EAAA,EACZC,EAAI,CAACC,EAAWC,IAAgCJ,EAAG,YAAYG,CAAC,GAAIC,CAAQ,EAC5EC,EAASC,EAAA,EAGT,CAAE,YAAAC,CAAA,EAAgBC,EAAA,EAClB,CAAE,MAAAC,EAAO,SAAAC,EAAU,cAAAC,CAAA,EAAkBC,EAAA,EACrC,CAAE,gBAAAC,EAAiB,kBAAAC,CAAA,EAAsBC,EAAA,EAGzCC,EAAqBC,EAAAA,YAAY,CAAC,CAAE,MAAAR,KAAoD,CAC5FC,EAASD,CAAK,CAChB,EAAG,CAACC,CAAQ,CAAC,EAGPQ,EAA2BD,EAAAA,YAAY,IAAM,CACjDH,EAAA,CACF,EAAG,CAACA,CAAiB,CAAC,EAEtBK,EAAsB,CACpB,yBAA0BH,EAC1B,gCAAiCE,CAAA,CAClC,EAGD,MAAME,EAAYC,EAAA,EACZC,EAAiBC,EAAA,EAGjB,CAAE,KAAMC,EAAgB,UAAWC,GAAoBL,EAAU,KAAK,SAC1E,CAAE,MAAO,GAAI,SAAU,EAAA,CAAM,EAIzB,CAAE,KAAMM,CAAA,EAAoBJ,EAAe,KAAK,SAAA,EAGhD,CAAE,KAAMK,EAAY,WAAYC,GAAgBR,EAAU,OAAO,SACrE,GACA,EAAA,EAIIS,GAAkBL,GAAA,YAAAA,EAAgB,YAAa,CAAA,EAC/CM,GAAkBH,GAAA,YAAAA,EAAY,YAAa,CAAA,EAC3CI,GAAcL,GAAA,YAAAA,EAAiB,cAAe,CAAA,EAGpD,OACEM,EAAAA,IAACC,EAAA,CACC,gBAAAJ,EACA,gBAAAC,EACA,YAAAC,EACA,gBAAAN,EACA,YAAAG,EACA,MAAOjB,EACP,gBAAAE,EACA,YAAAN,EACA,qBAAuB2B,GAAe,CACpC7B,EAAO,KAAK,kBAAkB,mBAAmB6B,CAAU,CAAC,EAAE,CAChE,EACA,oBAAqB,IAAM,CACzB7B,EAAO,KAAK,eAAe,CAC7B,EACA,aAAc,CACZ,MAAOH,EAAE,OAAO,EAChB,SAAUA,EAAE,UAAU,EACtB,kBAAmBA,EAAE,mBAAmB,EACxC,aAAcA,EAAE,cAAc,EAC9B,UAAWA,EAAE,WAAW,EACxB,mBAAoBA,EAAE,oBAAoB,EAC1C,IAAKA,EAAE,KAAK,EACZ,gBAAiBA,EAAE,iBAAiB,EACpC,cAAgBiC,GAAkBjC,EAAE,gBAAiB,CAAE,MAAAiC,EAAO,EAC9D,oBAAsBC,GAAuBlC,EAAE,sBAAuB,CAAE,WAAAkC,EAAY,EACpF,eAAiBC,GAAkBnC,EAAE,iBAAkB,CAAE,MAAAmC,EAAO,EAChE,qBAAsBnC,EAAE,sBAAsB,EAC9C,qBAAsBA,EAAE,sBAAsB,EAC9C,SAAUA,EAAE,UAAU,EACtB,QAASA,EAAE,SAAS,EACpB,qBAAsBA,EAAE,sBAAsB,CAAA,EAEhD,cAAAoC,CAAA,CAAA,CAGN"}
1
+ {"version":3,"file":"page-BjvkLuU3.js","sources":["../../src/app/[locale]/know/discover/page.tsx"],"sourcesContent":["\"use client\";\n\n/**\n * Resource Discovery Page - Thin Next.js wrapper\n *\n * This page handles Next.js-specific concerns (routing, data loading, hooks)\n * and delegates rendering to the pure React ResourceDiscoveryPage component.\n */\n\nimport React, { useEffect, useCallback } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { useRouter } from '@/i18n/routing';\nimport { useResources, useEntityTypes, useTheme, usePanelBrowse, useLineNumbers, useEventSubscriptions } from '@semiont/react-ui';\nimport { ToolbarPanels } from '@/components/toolbar/ToolbarPanels';\nimport { ResourceDiscoveryPage } from '@semiont/react-ui';\n\n/**\n * Main page component - handles Next.js hooks and data loading\n */\nexport default function DiscoverPage() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`Discover.${k}`, p as any) as string;\n const router = useRouter();\n\n // Toolbar and settings state\n const { activePanel } = usePanelBrowse();\n const { theme, setTheme, resolvedTheme } = useTheme();\n const { showLineNumbers, toggleLineNumbers } = useLineNumbers();\n\n // Handle theme change events\n const handleThemeChanged = useCallback(({ theme }: { theme: 'light' | 'dark' | 'system' }) => {\n setTheme(theme);\n }, [setTheme]);\n\n // Handle line numbers toggle events\n const handleLineNumbersToggled = useCallback(() => {\n toggleLineNumbers();\n }, [toggleLineNumbers]);\n\n useEventSubscriptions({\n 'settings:theme-changed': handleThemeChanged,\n 'settings:line-numbers-toggled': handleLineNumbersToggled,\n });\n\n // API hooks\n const resources = useResources();\n const entityTypesAPI = useEntityTypes();\n\n // Load recent documents using React Query\n const { data: recentDocsData, isLoading: isLoadingRecent } = resources.list.useQuery(\n { limit: 10, archived: false }\n );\n\n // Load entity types using React Query\n const { data: entityTypesData } = entityTypesAPI.list.useQuery();\n\n // Search documents using React Query (only when there's a search query)\n const { data: searchData, isFetching: isSearching } = resources.search.useQuery(\n '', // Empty search query initially - component will trigger search\n 20\n );\n\n // Extract data from React Query responses\n const recentDocuments = recentDocsData?.resources || [];\n const searchDocuments = searchData?.resources || [];\n const entityTypes = entityTypesData?.entityTypes || [];\n\n // Render the pure component with all props\n return (\n <ResourceDiscoveryPage\n recentDocuments={recentDocuments}\n searchDocuments={searchDocuments}\n entityTypes={entityTypes}\n isLoadingRecent={isLoadingRecent}\n isSearching={isSearching}\n theme={resolvedTheme}\n showLineNumbers={showLineNumbers}\n activePanel={activePanel}\n onNavigateToResource={(resourceId) => {\n router.push(`/know/resource/${encodeURIComponent(resourceId)}`);\n }}\n onNavigateToCompose={() => {\n router.push('/know/compose');\n }}\n translations={{\n title: t('title'),\n subtitle: t('subtitle'),\n searchPlaceholder: t('searchPlaceholder'),\n searchButton: t('searchButton'),\n searching: t('searching'),\n filterByEntityType: t('filterByEntityType'),\n all: t('all'),\n recentResources: t('recentResources'),\n searchResults: (count: number) => t('searchResults', { count }),\n documentsTaggedWith: (entityType: string) => t('documentsTaggedWith', { entityType }),\n noResultsFound: (query: string) => t('noResultsFound', { query }),\n noResourcesAvailable: t('noResourcesAvailable'),\n composeFirstResource: t('composeFirstResource'),\n archived: t('archived'),\n created: t('created'),\n loadingKnowledgeBase: t('loadingKnowledgeBase'),\n }}\n ToolbarPanels={ToolbarPanels}\n />\n );\n}"],"names":["DiscoverPage","_t","useTranslation","t","k","p","router","useRouter","activePanel","usePanelBrowse","theme","setTheme","resolvedTheme","useTheme","showLineNumbers","toggleLineNumbers","useLineNumbers","handleThemeChanged","useCallback","handleLineNumbersToggled","useEventSubscriptions","resources","useResources","entityTypesAPI","useEntityTypes","recentDocsData","isLoadingRecent","entityTypesData","searchData","isSearching","recentDocuments","searchDocuments","entityTypes","jsx","ResourceDiscoveryPage","resourceId","count","entityType","query","ToolbarPanels"],"mappings":"oUAmBA,SAAwBA,GAAe,CACrC,KAAM,CAAE,EAAGC,CAAA,EAAOC,EAAA,EACZC,EAAI,CAACC,EAAWC,IAAgCJ,EAAG,YAAYG,CAAC,GAAIC,CAAQ,EAC5EC,EAASC,EAAA,EAGT,CAAE,YAAAC,CAAA,EAAgBC,EAAA,EAClB,CAAE,MAAAC,EAAO,SAAAC,EAAU,cAAAC,CAAA,EAAkBC,EAAA,EACrC,CAAE,gBAAAC,EAAiB,kBAAAC,CAAA,EAAsBC,EAAA,EAGzCC,EAAqBC,EAAAA,YAAY,CAAC,CAAE,MAAAR,KAAoD,CAC5FC,EAASD,CAAK,CAChB,EAAG,CAACC,CAAQ,CAAC,EAGPQ,EAA2BD,EAAAA,YAAY,IAAM,CACjDH,EAAA,CACF,EAAG,CAACA,CAAiB,CAAC,EAEtBK,EAAsB,CACpB,yBAA0BH,EAC1B,gCAAiCE,CAAA,CAClC,EAGD,MAAME,EAAYC,EAAA,EACZC,EAAiBC,EAAA,EAGjB,CAAE,KAAMC,EAAgB,UAAWC,GAAoBL,EAAU,KAAK,SAC1E,CAAE,MAAO,GAAI,SAAU,EAAA,CAAM,EAIzB,CAAE,KAAMM,CAAA,EAAoBJ,EAAe,KAAK,SAAA,EAGhD,CAAE,KAAMK,EAAY,WAAYC,GAAgBR,EAAU,OAAO,SACrE,GACA,EAAA,EAIIS,GAAkBL,GAAA,YAAAA,EAAgB,YAAa,CAAA,EAC/CM,GAAkBH,GAAA,YAAAA,EAAY,YAAa,CAAA,EAC3CI,GAAcL,GAAA,YAAAA,EAAiB,cAAe,CAAA,EAGpD,OACEM,EAAAA,IAACC,EAAA,CACC,gBAAAJ,EACA,gBAAAC,EACA,YAAAC,EACA,gBAAAN,EACA,YAAAG,EACA,MAAOjB,EACP,gBAAAE,EACA,YAAAN,EACA,qBAAuB2B,GAAe,CACpC7B,EAAO,KAAK,kBAAkB,mBAAmB6B,CAAU,CAAC,EAAE,CAChE,EACA,oBAAqB,IAAM,CACzB7B,EAAO,KAAK,eAAe,CAC7B,EACA,aAAc,CACZ,MAAOH,EAAE,OAAO,EAChB,SAAUA,EAAE,UAAU,EACtB,kBAAmBA,EAAE,mBAAmB,EACxC,aAAcA,EAAE,cAAc,EAC9B,UAAWA,EAAE,WAAW,EACxB,mBAAoBA,EAAE,oBAAoB,EAC1C,IAAKA,EAAE,KAAK,EACZ,gBAAiBA,EAAE,iBAAiB,EACpC,cAAgBiC,GAAkBjC,EAAE,gBAAiB,CAAE,MAAAiC,EAAO,EAC9D,oBAAsBC,GAAuBlC,EAAE,sBAAuB,CAAE,WAAAkC,EAAY,EACpF,eAAiBC,GAAkBnC,EAAE,iBAAkB,CAAE,MAAAmC,EAAO,EAChE,qBAAsBnC,EAAE,sBAAsB,EAC9C,qBAAsBA,EAAE,sBAAsB,EAC9C,SAAUA,EAAE,UAAU,EACtB,QAASA,EAAE,SAAS,EACpB,qBAAsBA,EAAE,sBAAsB,CAAA,EAEhD,cAAAoC,CAAA,CAAA,CAGN"}
@@ -0,0 +1,2 @@
1
+ import{j as r}from"./query-B6BuIB0M.js";import{a as t}from"./routing-C43HVxNw.js";import{N as a}from"./vendor-DJo4KD8w.js";import"./index-CqzrFNnV.js";import"./i18n-BbpF47i1.js";function n(){const o=t();return r.jsx(a,{to:`/${o}/admin/users`,replace:!0})}export{n as default};
2
+ //# sourceMappingURL=page-Bs0NV-OR.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"page-CpbZG7nR.js","sources":["../../src/app/[locale]/admin/page.tsx"],"sourcesContent":["import { Navigate } from 'react-router-dom';\nimport { useLocale } from '@/i18n/routing';\n\nexport default function AdminPage() {\n const locale = useLocale();\n return <Navigate to={`/${locale}/admin/users`} replace />;\n}\n"],"names":["AdminPage","locale","useLocale","Navigate"],"mappings":"kLAGA,SAAwBA,GAAY,CAClC,MAAMC,EAASC,EAAA,EACf,aAAQC,EAAA,CAAS,GAAI,IAAIF,CAAM,eAAgB,QAAO,GAAC,CACzD"}
1
+ {"version":3,"file":"page-Bs0NV-OR.js","sources":["../../src/app/[locale]/admin/page.tsx"],"sourcesContent":["import { Navigate } from 'react-router-dom';\nimport { useLocale } from '@/i18n/routing';\n\nexport default function AdminPage() {\n const locale = useLocale();\n return <Navigate to={`/${locale}/admin/users`} replace />;\n}\n"],"names":["AdminPage","locale","useLocale","Navigate"],"mappings":"kLAGA,SAAwBA,GAAY,CAClC,MAAMC,EAASC,EAAA,EACf,aAAQC,EAAA,CAAS,GAAI,IAAIF,CAAM,eAAgB,QAAO,GAAC,CACzD"}
@@ -1,2 +1,2 @@
1
- import{j as e}from"./query-B6BuIB0M.js";import{r as i}from"./vendor-DJo4KD8w.js";import{u as n}from"./routing-By_4TZHr.js";import{u as c}from"./i18n-BbpF47i1.js";import"./index-XWcEpo5a.js";function x(){const{t:r}=c(),o=(s,a)=>r(`Moderation.${s}`,a),t=n();return i.useEffect(()=>{t.replace("/moderate/recent")},[t]),e.jsx("div",{className:"flex items-center justify-center py-20",children:e.jsx("p",{className:"text-gray-600 dark:text-gray-300",children:o("redirecting")})})}export{x as default};
2
- //# sourceMappingURL=page-knhbwxzQ.js.map
1
+ import{j as e}from"./query-B6BuIB0M.js";import{r as i}from"./vendor-DJo4KD8w.js";import{u as n}from"./routing-C43HVxNw.js";import{u as c}from"./i18n-BbpF47i1.js";import"./index-CqzrFNnV.js";function x(){const{t:r}=c(),o=(s,a)=>r(`Moderation.${s}`,a),t=n();return i.useEffect(()=>{t.replace("/moderate/recent")},[t]),e.jsx("div",{className:"flex items-center justify-center py-20",children:e.jsx("p",{className:"text-gray-600 dark:text-gray-300",children:o("redirecting")})})}export{x as default};
2
+ //# sourceMappingURL=page-C9LRjfKm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"page-knhbwxzQ.js","sources":["../../src/app/[locale]/moderate/page.tsx"],"sourcesContent":["import { useEffect } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { useRouter } from '@/i18n/routing';\n\nexport default function ModeratePage() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`Moderation.${k}`, p as any) as string;\n const router = useRouter();\n\n useEffect(() => {\n // Redirect to Recent Documents as the default page\n router.replace('/moderate/recent');\n }, [router]);\n\n return (\n <div className=\"flex items-center justify-center py-20\">\n <p className=\"text-gray-600 dark:text-gray-300\">{t('redirecting')}</p>\n </div>\n );\n}"],"names":["ModeratePage","_t","useTranslation","t","k","p","router","useRouter","useEffect","jsx"],"mappings":"8LAIA,SAAwBA,GAAe,CACrC,KAAM,CAAE,EAAGC,CAAA,EAAOC,EAAA,EACZC,EAAI,CAACC,EAAWC,IAAgCJ,EAAG,cAAcG,CAAC,GAAIC,CAAQ,EAC9EC,EAASC,EAAA,EAEfC,OAAAA,EAAAA,UAAU,IAAM,CAEdF,EAAO,QAAQ,kBAAkB,CACnC,EAAG,CAACA,CAAM,CAAC,EAGTG,EAAAA,IAAC,MAAA,CAAI,UAAU,yCACb,SAAAA,MAAC,IAAA,CAAE,UAAU,mCAAoC,SAAAN,EAAE,aAAa,CAAA,CAAE,EACpE,CAEJ"}
1
+ {"version":3,"file":"page-C9LRjfKm.js","sources":["../../src/app/[locale]/moderate/page.tsx"],"sourcesContent":["import { useEffect } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { useRouter } from '@/i18n/routing';\n\nexport default function ModeratePage() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`Moderation.${k}`, p as any) as string;\n const router = useRouter();\n\n useEffect(() => {\n // Redirect to Recent Documents as the default page\n router.replace('/moderate/recent');\n }, [router]);\n\n return (\n <div className=\"flex items-center justify-center py-20\">\n <p className=\"text-gray-600 dark:text-gray-300\">{t('redirecting')}</p>\n </div>\n );\n}"],"names":["ModeratePage","_t","useTranslation","t","k","p","router","useRouter","useEffect","jsx"],"mappings":"8LAIA,SAAwBA,GAAe,CACrC,KAAM,CAAE,EAAGC,CAAA,EAAOC,EAAA,EACZC,EAAI,CAACC,EAAWC,IAAgCJ,EAAG,cAAcG,CAAC,GAAIC,CAAQ,EAC9EC,EAASC,EAAA,EAEfC,OAAAA,EAAAA,UAAU,IAAM,CAEdF,EAAO,QAAQ,kBAAkB,CACnC,EAAG,CAACA,CAAM,CAAC,EAGTG,EAAAA,IAAC,MAAA,CAAI,UAAU,yCACb,SAAAA,MAAC,IAAA,CAAE,UAAU,mCAAoC,SAAAN,EAAE,aAAa,CAAA,CAAE,EACpE,CAEJ"}
@@ -1,2 +1,2 @@
1
- import{j as r}from"./query-B6BuIB0M.js";import{a as x,r as g}from"./vendor-DJo4KD8w.js";import{a as j}from"./routing-By_4TZHr.js";import{r as m,u as E,i as S,t as w,v as f,w as L}from"./index-XWcEpo5a.js";import{r as P,L as y}from"./routing-vcvYfuPO.js";import{u as D}from"./StreamStatusContext-BNiTXRfJ.js";import{T as I}from"./ToolbarPanels-DRHyLUHl.js";import"./i18n-BbpF47i1.js";import"./XMarkIcon-KMKD47CF.js";function U(){const e=x(),d=j(),o=m(e==null?void 0:e.id),l=D(),{activeKnowledgeBase:s}=E(),p=S(),{data:t,isLoading:a,isError:u,error:c,refetch:n}=p.get.useQuery(o);if(g.useEffect(()=>{u&&!a&&console.error(`[Document] Failed to load resource ${o}:`,c)},[u,a,o,c]),a||!t)return r.jsx(w,{});if(u)return r.jsx(f,{error:c,onRetry:()=>n()});if(!t.resource)return r.jsx(f,{error:new Error("Resource not found"),onRetry:()=>n()});const i=t.resource,R=m(i["@id"]);return r.jsx(L,{resource:i,rUri:R,locale:d,Link:y,routes:P,ToolbarPanels:I,refetchDocument:n,streamStatus:l,knowledgeBaseName:s==null?void 0:s.label})}export{U as default};
2
- //# sourceMappingURL=page-CnJVZMgv.js.map
1
+ import{j as r}from"./query-B6BuIB0M.js";import{a as x,r as g}from"./vendor-DJo4KD8w.js";import{a as j}from"./routing-C43HVxNw.js";import{r as m,u as E,i as S,t as w,v as f,w as L}from"./index-CqzrFNnV.js";import{r as P,L as y}from"./routing-swMLj8Z8.js";import{u as D}from"./StreamStatusContext-BNiTXRfJ.js";import{T as I}from"./ToolbarPanels-mrjx6GSA.js";import"./i18n-BbpF47i1.js";import"./XMarkIcon-KMKD47CF.js";function U(){const e=x(),d=j(),o=m(e==null?void 0:e.id),l=D(),{activeKnowledgeBase:s}=E(),p=S(),{data:t,isLoading:a,isError:u,error:c,refetch:n}=p.get.useQuery(o);if(g.useEffect(()=>{u&&!a&&console.error(`[Document] Failed to load resource ${o}:`,c)},[u,a,o,c]),a||!t)return r.jsx(w,{});if(u)return r.jsx(f,{error:c,onRetry:()=>n()});if(!t.resource)return r.jsx(f,{error:new Error("Resource not found"),onRetry:()=>n()});const i=t.resource,R=m(i["@id"]);return r.jsx(L,{resource:i,rUri:R,locale:d,Link:y,routes:P,ToolbarPanels:I,refetchDocument:n,streamStatus:l,knowledgeBaseName:s==null?void 0:s.label})}export{U as default};
2
+ //# sourceMappingURL=page-Cz0qvcvG.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"page-CnJVZMgv.js","sources":["../../src/app/[locale]/know/resource/[id]/page.tsx"],"sourcesContent":["\"use client\";\n\n/**\n * Resource Viewer Page - Minimal Next.js routing wrapper\n *\n * Handles only Next.js routing and initial resource loading.\n * All other concerns (data loading, events, UI state) are handled by ResourceViewerPage.\n */\n\nimport { useEffect } from 'react';\nimport { useParams } from 'react-router-dom';\nimport { useLocale } from '@/i18n/routing';\nimport { useResources } from '@semiont/react-ui';\nimport { resourceId } from '@semiont/core';\nimport { Link, routes } from '@/lib/routing';\nimport { useStreamStatus } from '@/contexts/StreamStatusContext';\n\n// Feature components\nimport { ResourceLoadingState, ResourceErrorState, ResourceViewerPage, useKnowledgeBaseSession } from '@semiont/react-ui';\nimport { ToolbarPanels } from '@/components/toolbar/ToolbarPanels';\nimport type { SemiontResource } from '@semiont/react-ui';\n\n/**\n * Main page component - handles only routing and initial resource load\n */\nexport default function KnowledgeResourcePage() {\n const params = useParams();\n const locale = useLocale();\n\n // The URL param is the bare resource ID\n const rId = resourceId(params?.id as string);\n\n const streamStatus = useStreamStatus();\n const { activeKnowledgeBase } = useKnowledgeBaseSession();\n\n // Load only the resource descriptor - everything else is loaded by ResourceViewerPage\n const resources = useResources();\n const {\n data: docData,\n isLoading,\n isError,\n error,\n refetch: refetchDocument\n } = resources.get.useQuery(rId) as {\n data: { resource: SemiontResource } | undefined;\n isLoading: boolean;\n isError: boolean;\n error: unknown;\n refetch: () => Promise<unknown>;\n };\n\n // Log error for debugging\n useEffect(() => {\n if (isError && !isLoading) {\n console.error(`[Document] Failed to load resource ${rId}:`, error);\n }\n }, [isError, isLoading, rId, error]);\n\n // Early return: Loading state\n if (isLoading || !docData) {\n return <ResourceLoadingState />;\n }\n\n // Early return: Error state\n if (isError) {\n return <ResourceErrorState error={error} onRetry={() => refetchDocument()} />;\n }\n\n // Early return: ResourceDescriptor not found\n if (!docData.resource) {\n return <ResourceErrorState error={new Error('Resource not found')} onRetry={() => refetchDocument()} />;\n }\n\n const resource = docData.resource;\n // resource['@id'] is now a bare ID\n const canonicalId = resourceId(resource['@id']);\n\n // Render with minimal props - all data loading/events handled inside ResourceViewerPage\n return (\n <ResourceViewerPage\n resource={resource}\n rUri={canonicalId}\n locale={locale}\n Link={Link}\n routes={routes}\n ToolbarPanels={ToolbarPanels}\n refetchDocument={refetchDocument}\n streamStatus={streamStatus}\n knowledgeBaseName={activeKnowledgeBase?.label}\n />\n );\n}\n"],"names":["KnowledgeResourcePage","params","useParams","locale","useLocale","rId","resourceId","streamStatus","useStreamStatus","activeKnowledgeBase","useKnowledgeBaseSession","resources","useResources","docData","isLoading","isError","error","refetchDocument","useEffect","ResourceLoadingState","ResourceErrorState","jsx","resource","canonicalId","ResourceViewerPage","Link","routes","ToolbarPanels"],"mappings":"+ZAyBA,SAAwBA,GAAwB,CAC9C,MAAMC,EAASC,EAAA,EACTC,EAASC,EAAA,EAGTC,EAAMC,EAAWL,GAAA,YAAAA,EAAQ,EAAY,EAErCM,EAAeC,EAAA,EACf,CAAE,oBAAAC,CAAA,EAAwBC,EAAA,EAG1BC,EAAYC,EAAA,EACZ,CACJ,KAAMC,EACN,UAAAC,EACA,QAAAC,EACA,MAAAC,EACA,QAASC,CAAA,EACPN,EAAU,IAAI,SAASN,CAAG,EAgB9B,GAPAa,EAAAA,UAAU,IAAM,CACVH,GAAW,CAACD,GACd,QAAQ,MAAM,sCAAsCT,CAAG,IAAKW,CAAK,CAErE,EAAG,CAACD,EAASD,EAAWT,EAAKW,CAAK,CAAC,EAG/BF,GAAa,CAACD,EAChB,aAAQM,EAAA,EAAqB,EAI/B,GAAIJ,EACF,aAAQK,EAAA,CAAmB,MAAAJ,EAAc,QAAS,IAAMC,IAAmB,EAI7E,GAAI,CAACJ,EAAQ,SACX,OAAOQ,MAACD,EAAA,CAAmB,MAAO,IAAI,MAAM,oBAAoB,EAAG,QAAS,IAAMH,EAAA,EAAmB,EAGvG,MAAMK,EAAWT,EAAQ,SAEnBU,EAAcjB,EAAWgB,EAAS,KAAK,CAAC,EAG9C,OACED,EAAAA,IAACG,EAAA,CACC,SAAAF,EACA,KAAMC,EACN,OAAApB,EACA,KAAAsB,EACA,OAAAC,EACA,cAAAC,EACA,gBAAAV,EACA,aAAAV,EACA,kBAAmBE,GAAA,YAAAA,EAAqB,KAAA,CAAA,CAG9C"}
1
+ {"version":3,"file":"page-Cz0qvcvG.js","sources":["../../src/app/[locale]/know/resource/[id]/page.tsx"],"sourcesContent":["\"use client\";\n\n/**\n * Resource Viewer Page - Minimal Next.js routing wrapper\n *\n * Handles only Next.js routing and initial resource loading.\n * All other concerns (data loading, events, UI state) are handled by ResourceViewerPage.\n */\n\nimport { useEffect } from 'react';\nimport { useParams } from 'react-router-dom';\nimport { useLocale } from '@/i18n/routing';\nimport { useResources } from '@semiont/react-ui';\nimport { resourceId } from '@semiont/core';\nimport { Link, routes } from '@/lib/routing';\nimport { useStreamStatus } from '@/contexts/StreamStatusContext';\n\n// Feature components\nimport { ResourceLoadingState, ResourceErrorState, ResourceViewerPage, useKnowledgeBaseSession } from '@semiont/react-ui';\nimport { ToolbarPanels } from '@/components/toolbar/ToolbarPanels';\nimport type { SemiontResource } from '@semiont/react-ui';\n\n/**\n * Main page component - handles only routing and initial resource load\n */\nexport default function KnowledgeResourcePage() {\n const params = useParams();\n const locale = useLocale();\n\n // The URL param is the bare resource ID\n const rId = resourceId(params?.id as string);\n\n const streamStatus = useStreamStatus();\n const { activeKnowledgeBase } = useKnowledgeBaseSession();\n\n // Load only the resource descriptor - everything else is loaded by ResourceViewerPage\n const resources = useResources();\n const {\n data: docData,\n isLoading,\n isError,\n error,\n refetch: refetchDocument\n } = resources.get.useQuery(rId) as {\n data: { resource: SemiontResource } | undefined;\n isLoading: boolean;\n isError: boolean;\n error: unknown;\n refetch: () => Promise<unknown>;\n };\n\n // Log error for debugging\n useEffect(() => {\n if (isError && !isLoading) {\n console.error(`[Document] Failed to load resource ${rId}:`, error);\n }\n }, [isError, isLoading, rId, error]);\n\n // Early return: Loading state\n if (isLoading || !docData) {\n return <ResourceLoadingState />;\n }\n\n // Early return: Error state\n if (isError) {\n return <ResourceErrorState error={error} onRetry={() => refetchDocument()} />;\n }\n\n // Early return: ResourceDescriptor not found\n if (!docData.resource) {\n return <ResourceErrorState error={new Error('Resource not found')} onRetry={() => refetchDocument()} />;\n }\n\n const resource = docData.resource;\n // resource['@id'] is now a bare ID\n const canonicalId = resourceId(resource['@id']);\n\n // Render with minimal props - all data loading/events handled inside ResourceViewerPage\n return (\n <ResourceViewerPage\n resource={resource}\n rUri={canonicalId}\n locale={locale}\n Link={Link}\n routes={routes}\n ToolbarPanels={ToolbarPanels}\n refetchDocument={refetchDocument}\n streamStatus={streamStatus}\n knowledgeBaseName={activeKnowledgeBase?.label}\n />\n );\n}\n"],"names":["KnowledgeResourcePage","params","useParams","locale","useLocale","rId","resourceId","streamStatus","useStreamStatus","activeKnowledgeBase","useKnowledgeBaseSession","resources","useResources","docData","isLoading","isError","error","refetchDocument","useEffect","ResourceLoadingState","ResourceErrorState","jsx","resource","canonicalId","ResourceViewerPage","Link","routes","ToolbarPanels"],"mappings":"+ZAyBA,SAAwBA,GAAwB,CAC9C,MAAMC,EAASC,EAAA,EACTC,EAASC,EAAA,EAGTC,EAAMC,EAAWL,GAAA,YAAAA,EAAQ,EAAY,EAErCM,EAAeC,EAAA,EACf,CAAE,oBAAAC,CAAA,EAAwBC,EAAA,EAG1BC,EAAYC,EAAA,EACZ,CACJ,KAAMC,EACN,UAAAC,EACA,QAAAC,EACA,MAAAC,EACA,QAASC,CAAA,EACPN,EAAU,IAAI,SAASN,CAAG,EAgB9B,GAPAa,EAAAA,UAAU,IAAM,CACVH,GAAW,CAACD,GACd,QAAQ,MAAM,sCAAsCT,CAAG,IAAKW,CAAK,CAErE,EAAG,CAACD,EAASD,EAAWT,EAAKW,CAAK,CAAC,EAG/BF,GAAa,CAACD,EAChB,aAAQM,EAAA,EAAqB,EAI/B,GAAIJ,EACF,aAAQK,EAAA,CAAmB,MAAAJ,EAAc,QAAS,IAAMC,IAAmB,EAI7E,GAAI,CAACJ,EAAQ,SACX,OAAOQ,MAACD,EAAA,CAAmB,MAAO,IAAI,MAAM,oBAAoB,EAAG,QAAS,IAAMH,EAAA,EAAmB,EAGvG,MAAMK,EAAWT,EAAQ,SAEnBU,EAAcjB,EAAWgB,EAAS,KAAK,CAAC,EAG9C,OACED,EAAAA,IAACG,EAAA,CACC,SAAAF,EACA,KAAMC,EACN,OAAApB,EACA,KAAAsB,EACA,OAAAC,EACA,cAAAC,EACA,gBAAAV,EACA,aAAAV,EACA,kBAAmBE,GAAA,YAAAA,EAAqB,KAAA,CAAA,CAG9C"}
@@ -1,2 +1,2 @@
1
- import{j as s}from"./query-B6BuIB0M.js";import{u as f,r as g}from"./vendor-DJo4KD8w.js";import{P as l,A as y}from"./index-XWcEpo5a.js";import{C as d}from"./CookiePreferences-CO_BNHwm.js";import{K as A}from"./privacy-B5TeXaed.js";import{r as h,L as x}from"./routing-vcvYfuPO.js";import{L}from"./routing-By_4TZHr.js";import{u as b}from"./i18n-BbpF47i1.js";import"./XMarkIcon-KMKD47CF.js";function D(){const{t}=b(),e=(r,o)=>t(`AuthError.${r}`,o),n=(r,o)=>t(`Footer.${r}`,o),i=(r,o)=>t(`Navigation.${r}`,o),c=(r,o)=>t(`Home.${r}`,o),[m]=f(),a=g.useContext(A),p=m.get("error")??null,u={pageTitle:e("pageTitle"),tryAgain:e("tryAgain"),errorConfiguration:e("errorConfiguration"),errorAccessDenied:e("errorAccessDenied"),errorVerification:e("errorVerification"),errorGeneric:e("errorGeneric")};return s.jsx(l,{Link:x,routes:h,t:n,tNav:i,tHome:c,CookiePreferences:d,...(a==null?void 0:a.openKeyboardHelp)&&{onOpenKeyboardHelp:a.openKeyboardHelp},className:"bg-gray-50 dark:bg-gray-900",children:s.jsx(y,{errorType:p,Link:L,translations:u})})}export{D as default};
2
- //# sourceMappingURL=page-BaqIbrus.js.map
1
+ import{j as s}from"./query-B6BuIB0M.js";import{u as f,r as g}from"./vendor-DJo4KD8w.js";import{P as l,A as y}from"./index-CqzrFNnV.js";import{C as d}from"./CookiePreferences-BDtMuCT2.js";import{K as A}from"./privacy-BCxizJzS.js";import{r as h,L as x}from"./routing-swMLj8Z8.js";import{L}from"./routing-C43HVxNw.js";import{u as b}from"./i18n-BbpF47i1.js";import"./XMarkIcon-KMKD47CF.js";function D(){const{t}=b(),e=(r,o)=>t(`AuthError.${r}`,o),n=(r,o)=>t(`Footer.${r}`,o),i=(r,o)=>t(`Navigation.${r}`,o),c=(r,o)=>t(`Home.${r}`,o),[m]=f(),a=g.useContext(A),p=m.get("error")??null,u={pageTitle:e("pageTitle"),tryAgain:e("tryAgain"),errorConfiguration:e("errorConfiguration"),errorAccessDenied:e("errorAccessDenied"),errorVerification:e("errorVerification"),errorGeneric:e("errorGeneric")};return s.jsx(l,{Link:x,routes:h,t:n,tNav:i,tHome:c,CookiePreferences:d,...(a==null?void 0:a.openKeyboardHelp)&&{onOpenKeyboardHelp:a.openKeyboardHelp},className:"bg-gray-50 dark:bg-gray-900",children:s.jsx(y,{errorType:p,Link:L,translations:u})})}export{D as default};
2
+ //# sourceMappingURL=page-DCPEscX2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"page-BaqIbrus.js","sources":["../../src/app/[locale]/auth/error/page.tsx"],"sourcesContent":["import { useContext } from 'react';\nimport { useSearchParams } from 'react-router-dom';\nimport { useTranslation } from 'react-i18next';\nimport { PageLayout, AuthErrorDisplay } from '@semiont/react-ui';\nimport { CookiePreferences } from '@/components/CookiePreferences';\nimport { KeyboardShortcutsContext } from '@/contexts/KeyboardShortcutsContext';\nimport { Link as RoutingLink, routes } from '@/lib/routing';\nimport { Link } from '@/i18n/routing';\n\nexport default function AuthError() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`AuthError.${k}`, p as any) as string;\n const tFooter = (k: string, p?: Record<string, unknown>) => _t(`Footer.${k}`, p as any) as string;\n const tNav = (k: string, p?: Record<string, unknown>) => _t(`Navigation.${k}`, p as any) as string;\n const tHome = (k: string, p?: Record<string, unknown>) => _t(`Home.${k}`, p as any) as string;\n const [searchParams] = useSearchParams();\n const keyboardContext = useContext(KeyboardShortcutsContext);\n\n const errorType = searchParams.get('error') ?? null;\n\n const translations = {\n pageTitle: t('pageTitle'),\n tryAgain: t('tryAgain'),\n errorConfiguration: t('errorConfiguration'),\n errorAccessDenied: t('errorAccessDenied'),\n errorVerification: t('errorVerification'),\n errorGeneric: t('errorGeneric'),\n };\n\n return (\n <PageLayout\n Link={RoutingLink}\n routes={routes}\n t={tFooter}\n tNav={tNav}\n tHome={tHome}\n CookiePreferences={CookiePreferences}\n {...(keyboardContext?.openKeyboardHelp && { onOpenKeyboardHelp: keyboardContext.openKeyboardHelp })}\n className=\"bg-gray-50 dark:bg-gray-900\"\n >\n <AuthErrorDisplay errorType={errorType} Link={Link} translations={translations} />\n </PageLayout>\n );\n}\n"],"names":["AuthError","_t","useTranslation","t","k","p","tFooter","tNav","tHome","searchParams","useSearchParams","keyboardContext","useContext","KeyboardShortcutsContext","errorType","translations","jsx","PageLayout","RoutingLink","routes","CookiePreferences","AuthErrorDisplay","Link"],"mappings":"kYASA,SAAwBA,GAAY,CAClC,KAAM,CAAEC,CAAG,EAAOC,EAAA,EACZC,EAAI,CAACC,EAAWC,IAAgCJ,EAAG,aAAaG,CAAC,GAAIC,CAAQ,EAC7EC,EAAU,CAACF,EAAWC,IAAgCJ,EAAG,UAAUG,CAAC,GAAIC,CAAQ,EAChFE,EAAO,CAACH,EAAWC,IAAgCJ,EAAG,cAAcG,CAAC,GAAIC,CAAQ,EACjFG,EAAQ,CAACJ,EAAWC,IAAgCJ,EAAG,QAAQG,CAAC,GAAIC,CAAQ,EAC5E,CAACI,CAAY,EAAIC,EAAA,EACjBC,EAAkBC,EAAAA,WAAWC,CAAwB,EAErDC,EAAYL,EAAa,IAAI,OAAO,GAAK,KAEzCM,EAAe,CACnB,UAAWZ,EAAE,WAAW,EACxB,SAAUA,EAAE,UAAU,EACtB,mBAAoBA,EAAE,oBAAoB,EAC1C,kBAAmBA,EAAE,mBAAmB,EACxC,kBAAmBA,EAAE,mBAAmB,EACxC,aAAcA,EAAE,cAAc,CAAA,EAGhC,OACEa,EAAAA,IAACC,EAAA,CACC,KAAMC,EACN,OAAAC,EACA,EAAGb,EACH,KAAAC,EACA,MAAAC,EACA,kBAAAY,EACC,IAAIT,GAAA,YAAAA,EAAiB,mBAAoB,CAAE,mBAAoBA,EAAgB,gBAAA,EAChF,UAAU,8BAEV,SAAAK,EAAAA,IAACK,EAAA,CAAiB,UAAAP,EAAA,KAAsBQ,EAAY,aAAAP,CAAA,CAA4B,CAAA,CAAA,CAGtF"}
1
+ {"version":3,"file":"page-DCPEscX2.js","sources":["../../src/app/[locale]/auth/error/page.tsx"],"sourcesContent":["import { useContext } from 'react';\nimport { useSearchParams } from 'react-router-dom';\nimport { useTranslation } from 'react-i18next';\nimport { PageLayout, AuthErrorDisplay } from '@semiont/react-ui';\nimport { CookiePreferences } from '@/components/CookiePreferences';\nimport { KeyboardShortcutsContext } from '@/contexts/KeyboardShortcutsContext';\nimport { Link as RoutingLink, routes } from '@/lib/routing';\nimport { Link } from '@/i18n/routing';\n\nexport default function AuthError() {\n const { t: _t } = useTranslation();\n const t = (k: string, p?: Record<string, unknown>) => _t(`AuthError.${k}`, p as any) as string;\n const tFooter = (k: string, p?: Record<string, unknown>) => _t(`Footer.${k}`, p as any) as string;\n const tNav = (k: string, p?: Record<string, unknown>) => _t(`Navigation.${k}`, p as any) as string;\n const tHome = (k: string, p?: Record<string, unknown>) => _t(`Home.${k}`, p as any) as string;\n const [searchParams] = useSearchParams();\n const keyboardContext = useContext(KeyboardShortcutsContext);\n\n const errorType = searchParams.get('error') ?? null;\n\n const translations = {\n pageTitle: t('pageTitle'),\n tryAgain: t('tryAgain'),\n errorConfiguration: t('errorConfiguration'),\n errorAccessDenied: t('errorAccessDenied'),\n errorVerification: t('errorVerification'),\n errorGeneric: t('errorGeneric'),\n };\n\n return (\n <PageLayout\n Link={RoutingLink}\n routes={routes}\n t={tFooter}\n tNav={tNav}\n tHome={tHome}\n CookiePreferences={CookiePreferences}\n {...(keyboardContext?.openKeyboardHelp && { onOpenKeyboardHelp: keyboardContext.openKeyboardHelp })}\n className=\"bg-gray-50 dark:bg-gray-900\"\n >\n <AuthErrorDisplay errorType={errorType} Link={Link} translations={translations} />\n </PageLayout>\n );\n}\n"],"names":["AuthError","_t","useTranslation","t","k","p","tFooter","tNav","tHome","searchParams","useSearchParams","keyboardContext","useContext","KeyboardShortcutsContext","errorType","translations","jsx","PageLayout","RoutingLink","routes","CookiePreferences","AuthErrorDisplay","Link"],"mappings":"kYASA,SAAwBA,GAAY,CAClC,KAAM,CAAEC,CAAG,EAAOC,EAAA,EACZC,EAAI,CAACC,EAAWC,IAAgCJ,EAAG,aAAaG,CAAC,GAAIC,CAAQ,EAC7EC,EAAU,CAACF,EAAWC,IAAgCJ,EAAG,UAAUG,CAAC,GAAIC,CAAQ,EAChFE,EAAO,CAACH,EAAWC,IAAgCJ,EAAG,cAAcG,CAAC,GAAIC,CAAQ,EACjFG,EAAQ,CAACJ,EAAWC,IAAgCJ,EAAG,QAAQG,CAAC,GAAIC,CAAQ,EAC5E,CAACI,CAAY,EAAIC,EAAA,EACjBC,EAAkBC,EAAAA,WAAWC,CAAwB,EAErDC,EAAYL,EAAa,IAAI,OAAO,GAAK,KAEzCM,EAAe,CACnB,UAAWZ,EAAE,WAAW,EACxB,SAAUA,EAAE,UAAU,EACtB,mBAAoBA,EAAE,oBAAoB,EAC1C,kBAAmBA,EAAE,mBAAmB,EACxC,kBAAmBA,EAAE,mBAAmB,EACxC,aAAcA,EAAE,cAAc,CAAA,EAGhC,OACEa,EAAAA,IAACC,EAAA,CACC,KAAMC,EACN,OAAAC,EACA,EAAGb,EACH,KAAAC,EACA,MAAAC,EACA,kBAAAY,EACC,IAAIT,GAAA,YAAAA,EAAiB,mBAAoB,CAAE,mBAAoBA,EAAgB,gBAAA,EAChF,UAAU,8BAEV,SAAAK,EAAAA,IAACK,EAAA,CAAiB,UAAAP,EAAA,KAAsBQ,EAAY,aAAAP,CAAA,CAA4B,CAAA,CAAA,CAGtF"}
@@ -1,2 +1,2 @@
1
- import{j as S}from"./query-B6BuIB0M.js";import{r as b}from"./vendor-DJo4KD8w.js";import{u as P,L as w}from"./routing-By_4TZHr.js";import{u as v,c as C,d as U,W as R,P as I}from"./index-XWcEpo5a.js";import{u as L}from"./i18n-BbpF47i1.js";function B(){var m;const{t:h}=L(),e=(c,n)=>h(`AuthWelcome.${c}`,n),{isAuthenticated:o,isLoading:r,user:s,activeKnowledgeBase:a,signOut:A}=v(),i=P(),[g,T]=b.useState(!1),f=C(),p=U(),{data:t}=p.me.useQuery(),l=p.acceptTerms.useMutation();b.useEffect(()=>{if(!r){if(!o){i.push("/auth/connect");return}if(t!=null&&t.termsAcceptedAt){i.push("/");return}if(o&&t!==void 0&&(t!=null&&t.termsAcceptedAt)){i.push("/");return}}},[r,o,i,t]);const d=async c=>{if(!c){a&&A(a.id),i.push("/");return}try{await l.mutateAsync(),T(!0),setTimeout(()=>{i.push("/")},1e3)}catch(n){console.error("Terms acceptance error:",n),f.showError(e("errorAcceptingTerms"))}},y=r?"loading":g?"accepted":"form",u=((m=s==null?void 0:s.name)==null?void 0:m.split(" ")[0])??"";return S.jsx(R,{userName:u,termsAcceptedAt:(t==null?void 0:t.termsAcceptedAt)??null,isNewUser:!(t!=null&&t.termsAcceptedAt),status:y,isProcessing:l.isPending,onAccept:()=>d(!0),onDecline:()=>d(!1),translations:{loading:e("loading"),welcomeTitle:e("welcomeTitle"),thanksForAccepting:e("thanksForAccepting"),welcomeUser:e("welcomeUser",{firstName:u}),reviewTermsPrompt:e("reviewTermsPrompt"),termsSummaryTitle:e("termsSummaryTitle"),termsSummaryIntro:e("termsSummaryIntro"),acceptableUseTitle:e("acceptableUseTitle"),acceptableUseResponsible:e("acceptableUseResponsible"),acceptableUseRespect:e("acceptableUseRespect"),acceptableUseConduct:e("acceptableUseConduct"),prohibitedContentTitle:e("prohibitedContentTitle"),prohibitedContentIntro:e("prohibitedContentIntro"),prohibitedIllegal:e("prohibitedIllegal"),prohibitedAdult:e("prohibitedAdult"),prohibitedHate:e("prohibitedHate"),prohibitedViolence:e("prohibitedViolence"),prohibitedMisinformation:e("prohibitedMisinformation"),prohibitedPrivacy:e("prohibitedPrivacy"),prohibitedCopyright:e("prohibitedCopyright"),prohibitedMalware:e("prohibitedMalware"),prohibitedSpam:e("prohibitedSpam"),conductTitle:e("conductTitle"),conductDescription:e("conductDescription"),conductLink:e("conductLink"),conductPromotion:e("conductPromotion"),responsibilitiesTitle:e("responsibilitiesTitle"),responsibilitiesSecure:e("responsibilitiesSecure"),responsibilitiesReport:e("responsibilitiesReport"),responsibilitiesAccurate:e("responsibilitiesAccurate"),responsibilitiesComply:e("responsibilitiesComply"),violationsWarning:e("violationsWarning"),readFullTerms:e("readFullTerms"),termsOfService:e("termsOfService"),and:e("and"),privacyPolicy:e("privacyPolicy"),declineAndSignOut:e("declineAndSignOut"),acceptAndContinue:e("acceptAndContinue"),processing:e("processing"),legallyBound:e("legallyBound")},PageLayout:I,Link:w})}export{B as default};
2
- //# sourceMappingURL=page-BtqPeWyh.js.map
1
+ import{j as S}from"./query-B6BuIB0M.js";import{r as b}from"./vendor-DJo4KD8w.js";import{u as P,L as w}from"./routing-C43HVxNw.js";import{u as v,c as C,d as U,W as R,P as I}from"./index-CqzrFNnV.js";import{u as L}from"./i18n-BbpF47i1.js";function B(){var m;const{t:h}=L(),e=(c,n)=>h(`AuthWelcome.${c}`,n),{isAuthenticated:o,isLoading:r,user:s,activeKnowledgeBase:a,signOut:A}=v(),i=P(),[g,T]=b.useState(!1),f=C(),p=U(),{data:t}=p.me.useQuery(),l=p.acceptTerms.useMutation();b.useEffect(()=>{if(!r){if(!o){i.push("/auth/connect");return}if(t!=null&&t.termsAcceptedAt){i.push("/");return}if(o&&t!==void 0&&(t!=null&&t.termsAcceptedAt)){i.push("/");return}}},[r,o,i,t]);const d=async c=>{if(!c){a&&A(a.id),i.push("/");return}try{await l.mutateAsync(),T(!0),setTimeout(()=>{i.push("/")},1e3)}catch(n){console.error("Terms acceptance error:",n),f.showError(e("errorAcceptingTerms"))}},y=r?"loading":g?"accepted":"form",u=((m=s==null?void 0:s.name)==null?void 0:m.split(" ")[0])??"";return S.jsx(R,{userName:u,termsAcceptedAt:(t==null?void 0:t.termsAcceptedAt)??null,isNewUser:!(t!=null&&t.termsAcceptedAt),status:y,isProcessing:l.isPending,onAccept:()=>d(!0),onDecline:()=>d(!1),translations:{loading:e("loading"),welcomeTitle:e("welcomeTitle"),thanksForAccepting:e("thanksForAccepting"),welcomeUser:e("welcomeUser",{firstName:u}),reviewTermsPrompt:e("reviewTermsPrompt"),termsSummaryTitle:e("termsSummaryTitle"),termsSummaryIntro:e("termsSummaryIntro"),acceptableUseTitle:e("acceptableUseTitle"),acceptableUseResponsible:e("acceptableUseResponsible"),acceptableUseRespect:e("acceptableUseRespect"),acceptableUseConduct:e("acceptableUseConduct"),prohibitedContentTitle:e("prohibitedContentTitle"),prohibitedContentIntro:e("prohibitedContentIntro"),prohibitedIllegal:e("prohibitedIllegal"),prohibitedAdult:e("prohibitedAdult"),prohibitedHate:e("prohibitedHate"),prohibitedViolence:e("prohibitedViolence"),prohibitedMisinformation:e("prohibitedMisinformation"),prohibitedPrivacy:e("prohibitedPrivacy"),prohibitedCopyright:e("prohibitedCopyright"),prohibitedMalware:e("prohibitedMalware"),prohibitedSpam:e("prohibitedSpam"),conductTitle:e("conductTitle"),conductDescription:e("conductDescription"),conductLink:e("conductLink"),conductPromotion:e("conductPromotion"),responsibilitiesTitle:e("responsibilitiesTitle"),responsibilitiesSecure:e("responsibilitiesSecure"),responsibilitiesReport:e("responsibilitiesReport"),responsibilitiesAccurate:e("responsibilitiesAccurate"),responsibilitiesComply:e("responsibilitiesComply"),violationsWarning:e("violationsWarning"),readFullTerms:e("readFullTerms"),termsOfService:e("termsOfService"),and:e("and"),privacyPolicy:e("privacyPolicy"),declineAndSignOut:e("declineAndSignOut"),acceptAndContinue:e("acceptAndContinue"),processing:e("processing"),legallyBound:e("legallyBound")},PageLayout:I,Link:w})}export{B as default};
2
+ //# sourceMappingURL=page-DKA-wyMy.js.map