@semiont/react-ui 0.5.25 → 0.5.27

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 (267) hide show
  1. package/README.md +28 -4
  2. package/dist/PdfAnnotationCanvas.client-EVUPTUWZ.js +677 -0
  3. package/dist/PdfAnnotationCanvas.client-EVUPTUWZ.js.map +1 -0
  4. package/dist/PdfAnnotationCanvas.client-TGDPPGXJ.css +185 -0
  5. package/dist/PdfAnnotationCanvas.client-TGDPPGXJ.css.map +1 -0
  6. package/dist/{ar-CULRHLNG.js → ar-OU3DQGC6.js} +65 -7
  7. package/dist/ar-OU3DQGC6.js.map +1 -0
  8. package/dist/{bn-HYR7CEL2.js → bn-PHWCR6AZ.js} +65 -7
  9. package/dist/bn-PHWCR6AZ.js.map +1 -0
  10. package/dist/chunk-5VDTWRXJ.js +287 -0
  11. package/dist/chunk-5VDTWRXJ.js.map +1 -0
  12. package/dist/{chunk-TG2XQEC4.js → chunk-BTUG3VJJ.js} +18 -298
  13. package/dist/chunk-BTUG3VJJ.js.map +1 -0
  14. package/dist/{chunk-NH6L2GIL.js → chunk-PCRRBU7H.js} +65 -7
  15. package/dist/chunk-PCRRBU7H.js.map +1 -0
  16. package/dist/{cs-YBRWY7NH.js → cs-NEXYZ62I.js} +65 -7
  17. package/dist/cs-NEXYZ62I.js.map +1 -0
  18. package/dist/{da-PHDEOBV3.js → da-FAT43YCU.js} +65 -7
  19. package/dist/da-FAT43YCU.js.map +1 -0
  20. package/dist/{de-O4UCCVLJ.js → de-KRQ3WBCU.js} +65 -7
  21. package/dist/de-KRQ3WBCU.js.map +1 -0
  22. package/dist/{el-MVGO6WZV.js → el-Q4IU3EKC.js} +65 -7
  23. package/dist/el-Q4IU3EKC.js.map +1 -0
  24. package/dist/{en-2KQILFKQ.js → en-2KADE7N4.js} +6 -2
  25. package/dist/{es-USSLXQY7.js → es-2IO3R2MK.js} +65 -7
  26. package/dist/es-2IO3R2MK.js.map +1 -0
  27. package/dist/{fa-WMAREFWY.js → fa-Q5GOQFXX.js} +65 -7
  28. package/dist/fa-Q5GOQFXX.js.map +1 -0
  29. package/dist/{fi-B3NBNOTS.js → fi-R6NMRWBE.js} +65 -7
  30. package/dist/fi-R6NMRWBE.js.map +1 -0
  31. package/dist/{fr-TXYK5T5W.js → fr-QY4D5E6J.js} +65 -7
  32. package/dist/fr-QY4D5E6J.js.map +1 -0
  33. package/dist/{he-JCJACW5D.js → he-X6Y77XHY.js} +65 -7
  34. package/dist/he-X6Y77XHY.js.map +1 -0
  35. package/dist/{hi-VOQLZNJU.js → hi-XL7IOEQM.js} +65 -7
  36. package/dist/hi-XL7IOEQM.js.map +1 -0
  37. package/dist/{id-BFN5RZNZ.js → id-QZ4ZZS67.js} +65 -7
  38. package/dist/id-QZ4ZZS67.js.map +1 -0
  39. package/dist/index.css +241 -508
  40. package/dist/index.css.map +1 -1
  41. package/dist/index.d.ts +155 -54
  42. package/dist/index.js +1815 -1642
  43. package/dist/index.js.map +1 -1
  44. package/dist/integrations/css-modules-helper.js +1 -3
  45. package/dist/integrations/css-modules-helper.js.map +1 -1
  46. package/dist/{it-TWWDHKKM.js → it-ME2Q7OB6.js} +65 -7
  47. package/dist/it-ME2Q7OB6.js.map +1 -0
  48. package/dist/{ja-YRQLEBFM.js → ja-HX7QASRI.js} +65 -7
  49. package/dist/ja-HX7QASRI.js.map +1 -0
  50. package/dist/{ko-PG6B3CRB.js → ko-EQO5AHAV.js} +65 -7
  51. package/dist/ko-EQO5AHAV.js.map +1 -0
  52. package/dist/{ms-7EZECVKM.js → ms-UILFSF3I.js} +65 -7
  53. package/dist/ms-UILFSF3I.js.map +1 -0
  54. package/dist/{nl-HP753YAP.js → nl-NNI45PMK.js} +65 -7
  55. package/dist/nl-NNI45PMK.js.map +1 -0
  56. package/dist/{no-JUD5WX3N.js → no-MAL5F6P6.js} +65 -7
  57. package/dist/no-MAL5F6P6.js.map +1 -0
  58. package/dist/{pl-RVUL4CBM.js → pl-4RMY6JAJ.js} +65 -7
  59. package/dist/pl-4RMY6JAJ.js.map +1 -0
  60. package/dist/{pt-RPOVD4QM.js → pt-VQH2X3QQ.js} +65 -7
  61. package/dist/pt-VQH2X3QQ.js.map +1 -0
  62. package/dist/{ro-DMYWQTRD.js → ro-XXCQO2OG.js} +65 -7
  63. package/dist/ro-XXCQO2OG.js.map +1 -0
  64. package/dist/{sv-DMZ4FGXD.js → sv-7Z6EJ6U4.js} +65 -7
  65. package/dist/sv-7Z6EJ6U4.js.map +1 -0
  66. package/dist/test-utils.css +1 -1
  67. package/dist/test-utils.css.map +1 -1
  68. package/dist/test-utils.d.ts +1 -1
  69. package/dist/test-utils.js +5 -3
  70. package/dist/test-utils.js.map +1 -1
  71. package/dist/{th-4HVBJBQ2.js → th-L3DXXYVQ.js} +65 -7
  72. package/dist/th-L3DXXYVQ.js.map +1 -0
  73. package/dist/{tr-6BDPU5ML.js → tr-P3DFVLFJ.js} +65 -7
  74. package/dist/tr-P3DFVLFJ.js.map +1 -0
  75. package/dist/{uk-TBZBT2TL.js → uk-7C5D3PXS.js} +65 -7
  76. package/dist/uk-7C5D3PXS.js.map +1 -0
  77. package/dist/{vi-UMKZKZL3.js → vi-ZLTLEO7P.js} +65 -7
  78. package/dist/vi-ZLTLEO7P.js.map +1 -0
  79. package/dist/{zh-YBJWJJYB.js → zh-5FHVWDIN.js} +65 -7
  80. package/dist/zh-5FHVWDIN.js.map +1 -0
  81. package/package.json +7 -7
  82. package/src/components/AssistProgress.tsx +144 -134
  83. package/src/components/{EntityFoundLog.tsx → ItemFoundLog.tsx} +12 -7
  84. package/src/components/ProtectedErrorBoundary.css +3 -1
  85. package/src/components/StatusDisplay.css +35 -35
  86. package/src/components/Toast.css +3 -1
  87. package/src/components/__tests__/AssistProgress.test.tsx +216 -148
  88. package/src/components/annotation/annotation-entries.css +0 -4
  89. package/src/components/annotation/annotations.css +1 -1
  90. package/src/components/annotation/references.css +0 -4
  91. package/src/components/image-annotation/AnnotationOverlay.tsx +6 -6
  92. package/src/components/image-annotation/SvgDrawingCanvas.tsx +1 -1
  93. package/src/components/image-annotation/__tests__/AnnotationOverlay.click.test.tsx +7 -9
  94. package/src/components/image-annotation/__tests__/SvgDrawingCanvas.click.test.tsx +1 -2
  95. package/src/components/layout/Header.css +0 -4
  96. package/src/components/layout/LeftSidebar.css +0 -4
  97. package/src/components/modals/ConfigureGenerationStep.tsx +109 -48
  98. package/src/components/modals/ConfigureSearchStep.tsx +23 -40
  99. package/src/components/modals/ReferenceWizardModal.tsx +55 -16
  100. package/src/components/modals/ResourceGenerateModal.tsx +24 -8
  101. package/src/components/modals/ResourceSearchModal.tsx +1 -1
  102. package/src/components/modals/SearchModal.css +5 -17
  103. package/src/components/modals/SearchModal.tsx +1 -1
  104. package/src/components/modals/SearchResultsStep.tsx +2 -20
  105. package/src/components/modals/WizardFooter.tsx +63 -0
  106. package/src/components/modals/__tests__/ConfigureGenerationStep.test.tsx +255 -0
  107. package/src/components/modals/__tests__/ConfigureSearchStep.test.tsx +72 -0
  108. package/src/components/modals/__tests__/ReferenceWizardModal.test.tsx +256 -0
  109. package/src/components/modals/__tests__/ResourceGenerateModal.test.tsx +1 -0
  110. package/src/components/modals/__tests__/ResourceSearchModal.test.tsx +6 -2
  111. package/src/components/modals/__tests__/SearchModal.search-wiring.test.tsx +6 -2
  112. package/src/components/modals/__tests__/WizardFooter.test.tsx +235 -0
  113. package/src/components/modals/modals.css +16 -42
  114. package/src/components/navigation/NavigationTabs.css +0 -20
  115. package/src/components/pdf-annotation/PdfAnnotationCanvas.css +162 -6
  116. package/src/components/pdf-annotation/PdfAnnotationCanvas.tsx +623 -232
  117. package/src/components/pdf-annotation/__tests__/PdfAnnotationCanvas.test.tsx +764 -7
  118. package/src/components/pdf-annotation/__tests__/estimate-slot-height.test.ts +53 -0
  119. package/src/components/pdf-annotation/estimate-slot-height.ts +31 -0
  120. package/src/components/resource/AnnotateView.tsx +16 -5
  121. package/src/components/resource/AnnotationHistory.tsx +2 -0
  122. package/src/components/resource/BrowseView.tsx +15 -4
  123. package/src/components/resource/ResourceViewer.tsx +23 -24
  124. package/src/components/resource/__tests__/AnnotateView.focus.test.tsx +50 -0
  125. package/src/components/resource/__tests__/AnnotationHistory.test.tsx +2 -0
  126. package/src/components/resource/__tests__/BrowseView.test.tsx +29 -3
  127. package/src/components/resource/__tests__/ResourceViewer.embeddable.test.tsx +47 -3
  128. package/src/components/resource/__tests__/browse-renderers.dispatch.test.tsx +33 -0
  129. package/src/components/resource/annotate-renderers.tsx +10 -1
  130. package/src/components/resource/browse-renderers.tsx +10 -1
  131. package/src/components/resource/event-formatting.ts +0 -3
  132. package/src/components/resource/panels/AssessmentEntry.tsx +1 -1
  133. package/src/components/resource/panels/AssessmentPanel.css +5 -6
  134. package/src/components/resource/panels/AssistSection.css +68 -271
  135. package/src/components/resource/panels/AssistSection.tsx +4 -4
  136. package/src/components/resource/panels/AssistShell.tsx +12 -4
  137. package/src/components/resource/panels/CollaborationPanel.css +47 -22
  138. package/src/components/resource/panels/CollaborationPanel.tsx +93 -2
  139. package/src/components/resource/panels/CommentEntry.tsx +1 -1
  140. package/src/components/resource/panels/CommentsPanel.css +0 -16
  141. package/src/components/resource/panels/HighlightEntry.tsx +1 -1
  142. package/src/components/resource/panels/HighlightPanel.css +0 -7
  143. package/src/components/resource/panels/JsonLdPanel.css +0 -4
  144. package/src/components/resource/panels/ReferenceEntry.tsx +1 -1
  145. package/src/components/resource/panels/ReferencesPanel.css +0 -12
  146. package/src/components/resource/panels/ReferencesPanel.tsx +12 -20
  147. package/src/components/resource/panels/ResourceInfoPanel.css +0 -32
  148. package/src/components/resource/panels/ResourceInfoPanel.tsx +1 -1
  149. package/src/components/resource/panels/StatisticsPanel.css +0 -20
  150. package/src/components/resource/panels/TagEntry.tsx +1 -1
  151. package/src/components/resource/panels/TaggingPanel.css +0 -4
  152. package/src/components/resource/panels/TaggingPanel.tsx +2 -10
  153. package/src/components/resource/panels/UnifiedAnnotationsPanel.css +0 -4
  154. package/src/components/resource/panels/__tests__/AssessmentEntry.test.tsx +0 -1
  155. package/src/components/resource/panels/__tests__/AssistSection.test.tsx +48 -50
  156. package/src/components/resource/panels/__tests__/AssistShell.test.tsx +11 -6
  157. package/src/components/resource/panels/__tests__/CollaborationPanel.test.tsx +89 -0
  158. package/src/components/resource/panels/__tests__/CommentEntry.test.tsx +1 -2
  159. package/src/components/resource/panels/__tests__/HighlightEntry.test.tsx +0 -1
  160. package/src/components/resource/panels/__tests__/HighlightPanel.annotationProgress.test.tsx +44 -36
  161. package/src/components/resource/panels/__tests__/ReferenceEntry.test.tsx +0 -1
  162. package/src/components/resource/panels/__tests__/ReferencesPanel.headless.test.tsx +1 -1
  163. package/src/components/resource/panels/__tests__/ReferencesPanel.test.tsx +34 -53
  164. package/src/components/resource/panels/__tests__/ResourceInfoPanel.test.tsx +37 -1
  165. package/src/components/resource/panels/__tests__/TagEntry.test.tsx +0 -1
  166. package/src/components/settings/SettingsPanel.css +0 -4
  167. package/src/features/auth/auth.css +9 -33
  168. package/src/features/resource-compose/state/__tests__/compose-page-state-unit.test.ts +25 -1
  169. package/src/features/resource-compose/state/compose-page-state-unit.ts +11 -2
  170. package/src/features/resource-discovery/__tests__/ResourceDiscoveryPage.test.tsx +55 -0
  171. package/src/features/resource-discovery/components/ResourceDiscoveryPage.tsx +29 -0
  172. package/src/features/resource-discovery/state/__tests__/discover-state-unit.test.ts +53 -3
  173. package/src/features/resource-discovery/state/discover-state-unit.ts +29 -8
  174. package/src/features/resource-viewer/__tests__/ResourceViewerPage.test.tsx +26 -0
  175. package/src/features/resource-viewer/components/ResourceViewerPage.tsx +42 -21
  176. package/src/features/resource-viewer/hooks/__tests__/useResourceViewedReport.test.tsx +63 -0
  177. package/src/features/resource-viewer/hooks/useResourceViewedReport.ts +33 -0
  178. package/src/features/resource-viewer/state/__tests__/resource-viewer-page-state-unit.test.ts +2 -2
  179. package/src/features/resource-viewer/state/resource-viewer-page-state-unit.ts +1 -1
  180. package/src/styles/core/buttons.css +3 -1
  181. package/src/styles/core/forms.css +0 -21
  182. package/src/styles/core/indicators.css +0 -4
  183. package/src/styles/core/inputs.css +1 -5
  184. package/src/styles/core/progress.css +2 -34
  185. package/src/styles/core/sliders.css +0 -4
  186. package/src/styles/core/toggles.css +0 -4
  187. package/src/styles/features/compose.css +1 -1
  188. package/src/styles/features/resource-discovery.css +13 -0
  189. package/src/styles/features/resource-viewer.css +1 -21
  190. package/src/styles/features/static-pages.css +11 -11
  191. package/src/styles/motivations/motivation-assessment.css +2 -2
  192. package/src/styles/motivations/motivation-comment.css +2 -2
  193. package/src/styles/motivations/motivation-reference.css +2 -2
  194. package/src/styles/panels/history-panel.css +0 -40
  195. package/src/styles/panels/user-panel.css +0 -3
  196. package/src/styles/patterns/panel-helpers.css +0 -27
  197. package/src/styles/patterns/panel-sections.css +0 -59
  198. package/src/styles/patterns/panels-base.css +4 -36
  199. package/src/styles/utilities/motion.css +15 -15
  200. package/src/styles/variables.css +29 -1
  201. package/translations/ar.json +59 -5
  202. package/translations/bn.json +59 -5
  203. package/translations/cs.json +59 -5
  204. package/translations/da.json +59 -5
  205. package/translations/de.json +59 -5
  206. package/translations/el.json +59 -5
  207. package/translations/en.json +59 -5
  208. package/translations/es.json +59 -5
  209. package/translations/fa.json +59 -5
  210. package/translations/fi.json +59 -5
  211. package/translations/fr.json +59 -5
  212. package/translations/he.json +59 -5
  213. package/translations/hi.json +59 -5
  214. package/translations/id.json +59 -5
  215. package/translations/it.json +59 -5
  216. package/translations/ja.json +59 -5
  217. package/translations/ko.json +59 -5
  218. package/translations/ms.json +59 -5
  219. package/translations/nl.json +59 -5
  220. package/translations/no.json +59 -5
  221. package/translations/pl.json +59 -5
  222. package/translations/pt.json +59 -5
  223. package/translations/ro.json +59 -5
  224. package/translations/sv.json +59 -5
  225. package/translations/th.json +59 -5
  226. package/translations/tr.json +59 -5
  227. package/translations/uk.json +59 -5
  228. package/translations/vi.json +59 -5
  229. package/translations/zh.json +59 -5
  230. package/dist/PdfAnnotationCanvas.client-EHQWF6BR.js +0 -462
  231. package/dist/PdfAnnotationCanvas.client-EHQWF6BR.js.map +0 -1
  232. package/dist/PdfAnnotationCanvas.client-SU5KNT7G.css +0 -98
  233. package/dist/PdfAnnotationCanvas.client-SU5KNT7G.css.map +0 -1
  234. package/dist/ar-CULRHLNG.js.map +0 -1
  235. package/dist/bn-HYR7CEL2.js.map +0 -1
  236. package/dist/chunk-NH6L2GIL.js.map +0 -1
  237. package/dist/chunk-TG2XQEC4.js.map +0 -1
  238. package/dist/chunk-XUDKYAVC.js +0 -21
  239. package/dist/chunk-XUDKYAVC.js.map +0 -1
  240. package/dist/cs-YBRWY7NH.js.map +0 -1
  241. package/dist/da-PHDEOBV3.js.map +0 -1
  242. package/dist/de-O4UCCVLJ.js.map +0 -1
  243. package/dist/el-MVGO6WZV.js.map +0 -1
  244. package/dist/es-USSLXQY7.js.map +0 -1
  245. package/dist/fa-WMAREFWY.js.map +0 -1
  246. package/dist/fi-B3NBNOTS.js.map +0 -1
  247. package/dist/fr-TXYK5T5W.js.map +0 -1
  248. package/dist/he-JCJACW5D.js.map +0 -1
  249. package/dist/hi-VOQLZNJU.js.map +0 -1
  250. package/dist/id-BFN5RZNZ.js.map +0 -1
  251. package/dist/it-TWWDHKKM.js.map +0 -1
  252. package/dist/ja-YRQLEBFM.js.map +0 -1
  253. package/dist/ko-PG6B3CRB.js.map +0 -1
  254. package/dist/ms-7EZECVKM.js.map +0 -1
  255. package/dist/nl-HP753YAP.js.map +0 -1
  256. package/dist/no-JUD5WX3N.js.map +0 -1
  257. package/dist/pl-RVUL4CBM.js.map +0 -1
  258. package/dist/pt-RPOVD4QM.js.map +0 -1
  259. package/dist/ro-DMYWQTRD.js.map +0 -1
  260. package/dist/sv-DMZ4FGXD.js.map +0 -1
  261. package/dist/th-4HVBJBQ2.js.map +0 -1
  262. package/dist/tr-6BDPU5ML.js.map +0 -1
  263. package/dist/uk-TBZBT2TL.js.map +0 -1
  264. package/dist/vi-UMKZKZL3.js.map +0 -1
  265. package/dist/zh-YBJWJJYB.js.map +0 -1
  266. package/src/integrations/tailwind-plugin.cjs +0 -224
  267. /package/dist/{en-2KQILFKQ.js.map → en-2KADE7N4.js.map} +0 -0
@@ -33,8 +33,8 @@
33
33
  --semiont-motivation-comment-panel-bg-dark: rgba(55, 65, 81, 0.2);
34
34
 
35
35
  /* Button gradients */
36
- --semiont-motivation-comment-button-bg: linear-gradient(to right, var(--semiont-color-purple-600), var(--semiont-color-indigo-600));
37
- --semiont-motivation-comment-button-bg-hover: linear-gradient(to right, var(--semiont-color-purple-700), var(--semiont-color-indigo-700));
36
+ --semiont-motivation-comment-button-bg: linear-gradient(to right, var(--semiont-color-purple-600), var(--semiont-color-blue-600));
37
+ --semiont-motivation-comment-button-bg-hover: linear-gradient(to right, var(--semiont-color-purple-700), var(--semiont-color-blue-700));
38
38
  }
39
39
 
40
40
  /* ============================================
@@ -14,8 +14,8 @@
14
14
  /* Light theme colors */
15
15
  --semiont-motivation-reference-primary: var(--semiont-color-cyan-600);
16
16
  --semiont-motivation-reference-secondary: var(--semiont-color-blue-600);
17
- --semiont-motivation-reference-bg: linear-gradient(to right, var(--semiont-color-cyan-200, #a5f3fc), var(--semiont-color-blue-200));
18
- --semiont-motivation-reference-bg-hover: linear-gradient(to right, var(--semiont-color-cyan-300, #67e8f9), var(--semiont-color-blue-300));
17
+ --semiont-motivation-reference-bg: linear-gradient(to right, var(--semiont-color-cyan-200), var(--semiont-color-blue-200));
18
+ --semiont-motivation-reference-bg-hover: linear-gradient(to right, var(--semiont-color-cyan-300), var(--semiont-color-blue-300));
19
19
  --semiont-motivation-reference-border: rgba(6, 182, 212, 0.3);
20
20
  --semiont-motivation-reference-border-hover: rgba(6, 182, 212, 0.5);
21
21
  --semiont-motivation-reference-text: var(--semiont-color-gray-900);
@@ -20,10 +20,6 @@
20
20
  color: var(--semiont-text-primary);
21
21
  }
22
22
 
23
- [data-theme="dark"] .semiont-history-panel__title {
24
- color: var(--semiont-text-primary);
25
- }
26
-
27
23
  .semiont-history-panel__loading {
28
24
  margin: 0;
29
25
  padding: 0.5rem;
@@ -102,10 +98,6 @@
102
98
  color: var(--semiont-text-primary);
103
99
  }
104
100
 
105
- [data-theme="dark"] .semiont-history-group__type {
106
- color: var(--semiont-text-primary);
107
- }
108
-
109
101
  .semiont-history-group__type-icon {
110
102
  font-size: var(--semiont-panel-icon-size);
111
103
  }
@@ -115,10 +107,6 @@
115
107
  color: var(--semiont-text-tertiary);
116
108
  }
117
109
 
118
- [data-theme="dark"] .semiont-history-group__count {
119
- color: var(--semiont-text-tertiary);
120
- }
121
-
122
110
  .semiont-history-group__events {
123
111
  display: flex;
124
112
  flex-direction: column;
@@ -174,19 +162,11 @@
174
162
  margin-left: auto;
175
163
  }
176
164
 
177
- [data-theme="dark"] .semiont-history-event__timestamp {
178
- color: var(--semiont-text-tertiary);
179
- }
180
-
181
165
  .semiont-history-event__text--quoted {
182
166
  font-style: italic;
183
167
  color: var(--semiont-text-secondary);
184
168
  }
185
169
 
186
- [data-theme="dark"] .semiont-history-event__text--quoted {
187
- color: var(--semiont-text-secondary);
188
- }
189
-
190
170
  /* Entity types container - tags themselves use .semiont-tag from core */
191
171
  .semiont-history-event__entity-types {
192
172
  display: flex;
@@ -214,19 +194,11 @@
214
194
  color: var(--semiont-text-tertiary);
215
195
  }
216
196
 
217
- [data-theme="dark"] .semiont-history-event__detail {
218
- color: var(--semiont-text-tertiary);
219
- }
220
-
221
197
  .semiont-history-event__detail-value {
222
198
  color: var(--semiont-text-primary);
223
199
  font-weight: var(--semiont-font-medium);
224
200
  }
225
201
 
226
- [data-theme="dark"] .semiont-history-event__detail-value {
227
- color: var(--semiont-text-primary);
228
- }
229
-
230
202
  .semiont-history-event__detail-value--uppercase {
231
203
  text-transform: uppercase;
232
204
  }
@@ -236,10 +208,6 @@
236
208
  color: var(--semiont-text-primary);
237
209
  }
238
210
 
239
- [data-theme="dark"] .semiont-history-event__action {
240
- color: var(--semiont-text-primary);
241
- }
242
-
243
211
  .semiont-history-event__text {
244
212
  font-size: var(--semiont-text-sm);
245
213
  color: var(--semiont-text-secondary);
@@ -250,10 +218,6 @@
250
218
  line-height: 1.5;
251
219
  }
252
220
 
253
- [data-theme="dark"] .semiont-history-event__text {
254
- color: var(--semiont-text-secondary);
255
- }
256
-
257
221
  .semiont-history-event__meta {
258
222
  display: flex;
259
223
  align-items: center;
@@ -276,10 +240,6 @@
276
240
  color: var(--semiont-text-tertiary);
277
241
  }
278
242
 
279
- [data-theme="dark"] .semiont-history-event__time {
280
- color: var(--semiont-text-tertiary);
281
- }
282
-
283
243
  .semiont-history-event__link {
284
244
  font-size: var(--semiont-text-xs);
285
245
  color: var(--semiont-color-primary-600);
@@ -19,6 +19,3 @@
19
19
  color: var(--semiont-text-primary);
20
20
  }
21
21
 
22
- [data-theme="dark"] .semiont-user-panel__title {
23
- color: var(--semiont-text-primary);
24
- }
@@ -28,10 +28,6 @@
28
28
  margin-left: 0.5rem;
29
29
  }
30
30
 
31
- [data-theme="dark"] .semiont-annotation-prompt__char-count {
32
- color: var(--semiont-text-tertiary);
33
- }
34
-
35
31
  .semiont-annotation-prompt__actions {
36
32
  display: flex;
37
33
  gap: 0.5rem;
@@ -101,26 +97,3 @@
101
97
  color: var(--semiont-color-blue-300);
102
98
  }
103
99
 
104
- /* Progress Bar (moved to panel-sections.css as .semiont-panel-progress) */
105
- .semiont-progress-bar {
106
- position: relative;
107
- width: 100%;
108
- height: 0.5rem;
109
- background-color: var(--semiont-bg-secondary);
110
- border-radius: var(--semiont-radius-full);
111
- overflow: hidden;
112
- }
113
-
114
- .semiont-progress-bar__fill {
115
- height: 100%;
116
- background-color: var(--semiont-color-primary-500);
117
- transition: width 0.3s ease;
118
- }
119
-
120
- [data-theme="dark"] .semiont-progress-bar__fill {
121
- background-color: var(--semiont-color-primary-500);
122
- }
123
-
124
- [data-theme="dark"] .semiont-progress-bar {
125
- background-color: var(--semiont-bg-tertiary);
126
- }
@@ -43,10 +43,6 @@
43
43
  letter-spacing: 0.05em;
44
44
  }
45
45
 
46
- [data-theme="dark"] .semiont-panel-section__heading {
47
- color: var(--semiont-text-secondary);
48
- }
49
-
50
46
  /* Section Content */
51
47
  .semiont-panel-section__content {
52
48
  display: flex;
@@ -120,10 +116,6 @@
120
116
  outline-offset: -2px;
121
117
  }
122
118
 
123
- [data-theme="dark"] .semiont-panel-tab {
124
- color: var(--semiont-text-secondary);
125
- }
126
-
127
119
  [data-theme="dark"] .semiont-panel-tab:focus-visible {
128
120
  outline-color: var(--semiont-color-primary-400);
129
121
  }
@@ -197,29 +189,17 @@
197
189
  margin-right: 0.5rem;
198
190
  }
199
191
 
200
- [data-theme="dark"] .semiont-panel-field__label {
201
- color: var(--semiont-text-tertiary);
202
- }
203
-
204
192
  .semiont-panel-field__value {
205
193
  font-size: var(--semiont-text-sm);
206
194
  color: var(--semiont-text-primary);
207
195
  font-weight: var(--semiont-font-medium);
208
196
  }
209
197
 
210
- [data-theme="dark"] .semiont-panel-field__value {
211
- color: var(--semiont-text-primary);
212
- }
213
-
214
198
  .semiont-panel-field__value--empty {
215
199
  color: var(--semiont-text-tertiary);
216
200
  font-style: italic;
217
201
  }
218
202
 
219
- [data-theme="dark"] .semiont-panel-field__value--empty {
220
- color: var(--semiont-text-tertiary);
221
- }
222
-
223
203
  /* Section Input Areas */
224
204
  .semiont-panel-input-area {
225
205
  padding: 1rem;
@@ -308,20 +288,12 @@
308
288
  letter-spacing: 0.05em;
309
289
  }
310
290
 
311
- [data-theme="dark"] .semiont-panel-card__label {
312
- color: var(--semiont-text-tertiary);
313
- }
314
-
315
291
  .semiont-panel-card__value {
316
292
  font-size: var(--semiont-text-2xl);
317
293
  font-weight: var(--semiont-font-semibold);
318
294
  color: var(--semiont-text-primary);
319
295
  }
320
296
 
321
- [data-theme="dark"] .semiont-panel-card__value {
322
- color: var(--semiont-text-primary);
323
- }
324
-
325
297
  .semiont-panel-card__change {
326
298
  font-size: var(--semiont-text-xs);
327
299
  display: flex;
@@ -345,30 +317,6 @@
345
317
  color: var(--semiont-color-error-light);
346
318
  }
347
319
 
348
- /* Progress Bar (for panels) */
349
- .semiont-panel-progress {
350
- position: relative;
351
- width: 100%;
352
- height: 0.5rem;
353
- background-color: var(--semiont-bg-secondary);
354
- border-radius: var(--semiont-radius-full);
355
- overflow: hidden;
356
- }
357
-
358
- [data-theme="dark"] .semiont-panel-progress {
359
- background-color: var(--semiont-bg-tertiary);
360
- }
361
-
362
- .semiont-panel-progress__fill {
363
- height: 100%;
364
- background-color: var(--semiont-color-primary-500);
365
- transition: width 0.3s ease;
366
- }
367
-
368
- [data-theme="dark"] .semiont-panel-progress__fill {
369
- background-color: var(--semiont-color-primary-500);
370
- }
371
-
372
320
  /* User Lists */
373
321
  .semiont-panel-user-list {
374
322
  display: flex;
@@ -426,15 +374,8 @@
426
374
  color: var(--semiont-text-primary);
427
375
  }
428
376
 
429
- [data-theme="dark"] .semiont-panel-user__name {
430
- color: var(--semiont-text-primary);
431
- }
432
-
433
377
  .semiont-panel-user__status {
434
378
  font-size: var(--semiont-text-xs);
435
379
  color: var(--semiont-text-tertiary);
436
380
  }
437
381
 
438
- [data-theme="dark"] .semiont-panel-user__status {
439
- color: var(--semiont-text-tertiary);
440
- }
@@ -20,18 +20,10 @@
20
20
  background: var(--semiont-bg-secondary);
21
21
  }
22
22
 
23
- [data-theme="dark"] .semiont-panel--secondary {
24
- background: var(--semiont-bg-secondary);
25
- }
26
-
27
23
  .semiont-panel--tertiary {
28
24
  background: var(--semiont-bg-tertiary);
29
25
  }
30
26
 
31
- [data-theme="dark"] .semiont-panel--tertiary {
32
- background: var(--semiont-bg-tertiary);
33
- }
34
-
35
27
  .semiont-panel--bordered {
36
28
  border: 1px solid var(--semiont-border-primary);
37
29
  }
@@ -58,10 +50,6 @@
58
50
  margin-bottom: var(--semiont-panel-header-margin-bottom);
59
51
  }
60
52
 
61
- [data-theme="dark"] .semiont-panel-header__title {
62
- color: var(--semiont-text-primary);
63
- }
64
-
65
53
  .semiont-panel-header__icon {
66
54
  font-size: 1.25rem;
67
55
  line-height: 1;
@@ -76,10 +64,6 @@
76
64
  font-size: var(--semiont-text-sm);
77
65
  }
78
66
 
79
- [data-theme="dark"] .semiont-panel-header__count {
80
- color: var(--semiont-text-tertiary);
81
- }
82
-
83
67
  .semiont-panel-header__actions {
84
68
  display: flex;
85
69
  gap: 0.5rem;
@@ -162,10 +146,6 @@
162
146
  font-size: var(--semiont-text-sm);
163
147
  }
164
148
 
165
- [data-theme="dark"] .semiont-panel-empty {
166
- color: var(--semiont-text-tertiary);
167
- }
168
-
169
149
  .semiont-panel-empty__icon {
170
150
  font-size: 3rem;
171
151
  opacity: 0.3;
@@ -191,10 +171,6 @@
191
171
  margin-bottom: 0.5rem;
192
172
  }
193
173
 
194
- [data-theme="dark"] .semiont-panel-subtitle {
195
- color: var(--semiont-text-secondary);
196
- }
197
-
198
174
  .semiont-panel-text {
199
175
  font-size: var(--semiont-text-sm);
200
176
  font-weight: var(--semiont-font-medium);
@@ -204,10 +180,6 @@
204
180
  white-space: nowrap;
205
181
  }
206
182
 
207
- [data-theme="dark"] .semiont-panel-text {
208
- color: var(--semiont-text-primary);
209
- }
210
-
211
183
  .semiont-panel-text-secondary {
212
184
  font-size: var(--semiont-text-xs);
213
185
  color: var(--semiont-color-gray-500);
@@ -270,10 +242,6 @@
270
242
  color: var(--semiont-color-gray-300);
271
243
  }
272
244
 
273
- [data-theme="dark"] .semiont-panel__section-title--collapsible:hover {
274
- background: var(--semiont-bg-tertiary);
275
- }
276
-
277
245
  .semiont-panel__section-title--collapsible:focus-visible {
278
246
  outline: 2px solid var(--semiont-color-primary-500);
279
247
  outline-offset: 2px;
@@ -405,12 +373,12 @@
405
373
 
406
374
  /* Login form pulsing border for first-launch nudge */
407
375
  @keyframes semiont-pulse-border {
408
- 0%, 100% { border-color: var(--semiont-color-primary-300, #93c5fd); }
409
- 50% { border-color: var(--semiont-color-primary-600, #2563eb); }
376
+ 0%, 100% { border-color: var(--semiont-color-primary-300); }
377
+ 50% { border-color: var(--semiont-color-primary-600); }
410
378
  }
411
379
 
412
380
  .semiont-panel__login-form--pulsing {
413
- border: 2px solid var(--semiont-color-primary-400, #60a5fa);
414
- border-radius: var(--semiont-panel-border-radius, 0.5rem);
381
+ border: 2px solid var(--semiont-color-primary-400);
382
+ border-radius: var(--semiont-panel-border-radius);
415
383
  animation: semiont-pulse-border 2s ease-in-out infinite;
416
384
  }
@@ -124,7 +124,7 @@
124
124
  .semiont-transition {
125
125
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
126
126
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
127
- transition-duration: var(--semiont-duration-base, 150ms);
127
+ transition-duration: var(--semiont-duration-base);
128
128
  }
129
129
 
130
130
  .semiont-transition-none {
@@ -134,58 +134,58 @@
134
134
  .semiont-transition-all {
135
135
  transition-property: all;
136
136
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
137
- transition-duration: var(--semiont-duration-base, 150ms);
137
+ transition-duration: var(--semiont-duration-base);
138
138
  }
139
139
 
140
140
  .semiont-transition-colors {
141
141
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
142
142
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
143
- transition-duration: var(--semiont-duration-base, 150ms);
143
+ transition-duration: var(--semiont-duration-base);
144
144
  }
145
145
 
146
146
  .semiont-transition-opacity {
147
147
  transition-property: opacity;
148
148
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
149
- transition-duration: var(--semiont-duration-base, 150ms);
149
+ transition-duration: var(--semiont-duration-base);
150
150
  }
151
151
 
152
152
  .semiont-transition-transform {
153
153
  transition-property: transform;
154
154
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
155
- transition-duration: var(--semiont-duration-base, 150ms);
155
+ transition-duration: var(--semiont-duration-base);
156
156
  }
157
157
 
158
158
  /* Animation classes */
159
159
  .semiont-animate-fade-in {
160
- animation: fadeIn var(--semiont-duration-base, 150ms) ease-in-out;
160
+ animation: fadeIn var(--semiont-duration-base) ease-in-out;
161
161
  }
162
162
 
163
163
  .semiont-animate-fade-out {
164
- animation: fadeOut var(--semiont-duration-base, 150ms) ease-in-out;
164
+ animation: fadeOut var(--semiont-duration-base) ease-in-out;
165
165
  }
166
166
 
167
167
  .semiont-animate-slide-in-up {
168
- animation: slideInUp var(--semiont-duration-moderate, 300ms) ease-out;
168
+ animation: slideInUp var(--semiont-duration-base) ease-out;
169
169
  }
170
170
 
171
171
  .semiont-animate-slide-in-down {
172
- animation: slideInDown var(--semiont-duration-moderate, 300ms) ease-out;
172
+ animation: slideInDown var(--semiont-duration-base) ease-out;
173
173
  }
174
174
 
175
175
  .semiont-animate-slide-in-left {
176
- animation: slideInLeft var(--semiont-duration-moderate, 300ms) ease-out;
176
+ animation: slideInLeft var(--semiont-duration-base) ease-out;
177
177
  }
178
178
 
179
179
  .semiont-animate-slide-in-right {
180
- animation: slideInRight var(--semiont-duration-moderate, 300ms) ease-out;
180
+ animation: slideInRight var(--semiont-duration-base) ease-out;
181
181
  }
182
182
 
183
183
  .semiont-animate-scale-in {
184
- animation: scaleIn var(--semiont-duration-base, 150ms) ease-out;
184
+ animation: scaleIn var(--semiont-duration-base) ease-out;
185
185
  }
186
186
 
187
187
  .semiont-animate-scale-out {
188
- animation: scaleOut var(--semiont-duration-base, 150ms) ease-in;
188
+ animation: scaleOut var(--semiont-duration-base) ease-in;
189
189
  }
190
190
 
191
191
  .semiont-animate-spin {
@@ -299,13 +299,13 @@
299
299
  .semiont-motion-safe-transition-all {
300
300
  transition-property: all;
301
301
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
302
- transition-duration: var(--semiont-duration-base, 150ms);
302
+ transition-duration: var(--semiont-duration-base);
303
303
  }
304
304
 
305
305
  .semiont-motion-safe-transition-transform {
306
306
  transition-property: transform;
307
307
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
308
- transition-duration: var(--semiont-duration-base, 150ms);
308
+ transition-duration: var(--semiont-duration-base);
309
309
  }
310
310
  }
311
311
 
@@ -177,6 +177,14 @@
177
177
  --semiont-bg-tertiary: var(--semiont-color-neutral-100);
178
178
  --semiont-bg-inverse: var(--semiont-color-neutral-900);
179
179
 
180
+ /* Borders — the panel/card border every pattern file reaches for. */
181
+ --semiont-border-primary: var(--semiont-color-neutral-200);
182
+ --semiont-border-secondary: var(--semiont-color-neutral-100);
183
+
184
+ /* Interaction */
185
+ --semiont-bg-hover: var(--semiont-color-neutral-100);
186
+ --semiont-focus-ring: var(--semiont-color-blue-500);
187
+
180
188
  /* Text Colors */
181
189
  --semiont-text-primary: var(--semiont-color-neutral-900);
182
190
  --semiont-text-secondary: var(--semiont-color-neutral-600);
@@ -186,6 +194,8 @@
186
194
 
187
195
  /* Spacing */
188
196
  --semiont-spacing-0: 0;
197
+ --semiont-panel-gap-xs: 0.25rem;
198
+ --semiont-text-2xs: 0.625rem;
189
199
  --semiont-spacing-xs: 0.25rem;
190
200
  --semiont-spacing-sm: 0.5rem;
191
201
  --semiont-spacing-md: 1rem;
@@ -322,6 +332,11 @@
322
332
  --semiont-text-tertiary: var(--semiont-color-neutral-400);
323
333
  --semiont-text-disabled: var(--semiont-color-neutral-600);
324
334
  --semiont-text-inverse: var(--semiont-color-neutral-900);
335
+
336
+ --semiont-border-primary: var(--semiont-color-neutral-700);
337
+ --semiont-border-secondary: var(--semiont-color-neutral-800);
338
+ --semiont-bg-hover: var(--semiont-color-neutral-800);
339
+ --semiont-focus-ring: var(--semiont-color-blue-400);
325
340
  }
326
341
  }
327
342
 
@@ -337,6 +352,14 @@
337
352
  --semiont-text-tertiary: var(--semiont-color-neutral-500);
338
353
  --semiont-text-disabled: var(--semiont-color-neutral-400);
339
354
  --semiont-text-inverse: var(--semiont-color-neutral-0);
355
+
356
+ /* Borders — the panel/card border every pattern file reaches for. */
357
+ --semiont-border-primary: var(--semiont-color-neutral-200);
358
+ --semiont-border-secondary: var(--semiont-color-neutral-100);
359
+
360
+ /* Interaction */
361
+ --semiont-bg-hover: var(--semiont-color-neutral-100);
362
+ --semiont-focus-ring: var(--semiont-color-blue-500);
340
363
  }
341
364
 
342
365
  /* Allow manual dark mode override */
@@ -351,4 +374,9 @@
351
374
  --semiont-text-tertiary: var(--semiont-color-neutral-400);
352
375
  --semiont-text-disabled: var(--semiont-color-neutral-600);
353
376
  --semiont-text-inverse: var(--semiont-color-neutral-900);
354
- }
377
+
378
+ --semiont-border-primary: var(--semiont-color-neutral-700);
379
+ --semiont-border-secondary: var(--semiont-color-neutral-800);
380
+ --semiont-bg-hover: var(--semiont-color-neutral-800);
381
+ --semiont-focus-ring: var(--semiont-color-blue-400);
382
+ }
@@ -1,8 +1,40 @@
1
1
  {
2
2
  "AssistProgress": {
3
3
  "close": "إغلاق",
4
- "paramsTitle": "معاملات الطلب:",
5
- "processing": "الحالي: {{label}}"
4
+ "codeLoading": "جارٍ التحميل…",
5
+ "codeAnalyzing": "جارٍ التوسيم…",
6
+ "codeAnalyzingTags": "توسيم الوسوم…",
7
+ "codeDetectingEntities": "جارٍ التوسيم…",
8
+ "codeCreatingAnnotations": "إنشاء {{count}} تعليقات توضيحية…",
9
+ "codeCreatingTagAnnotations": "إنشاء {{count}} وسوم…",
10
+ "codeCompleteCreated": "تم إنشاء {{count}} {{kind}}",
11
+ "codeGeneratingResource": "جارٍ التوليد…",
12
+ "codeCreatingResource": "إنشاء المورد…",
13
+ "kindHighlight": "تظليلات",
14
+ "kindComment": "تعليقات",
15
+ "kindAssessment": "تقييمات",
16
+ "kindReference": "مراجع",
17
+ "kindTag": "وسوم",
18
+ "subject": "{{kind}}: {{label}}",
19
+ "subjectWithPosition": "{{kind}}: {{label}} ({{done}} من {{total}})",
20
+ "paramEntityTypes": "أنواع الكيانات",
21
+ "paramInstructions": "التعليمات",
22
+ "paramTone": "النبرة",
23
+ "paramDensity": "الكثافة",
24
+ "subjectKindEntityType": "نوع الكيان",
25
+ "subjectKindCategory": "فئة",
26
+ "cancel": "إلغاء",
27
+ "inProgress": "جارٍ التوضيح..."
28
+ },
29
+ "PdfViewer": {
30
+ "loadFailed": "فشل تحميل ملف PDF",
31
+ "loading": "جارٍ تحميل PDF...",
32
+ "next": "التالي",
33
+ "pageLoadFailed": "فشل تحميل الصفحة",
34
+ "pageOf": "صفحة {{page}} من {{total}}",
35
+ "pagination": "ترقيم الصفحات",
36
+ "previous": "السابق",
37
+ "viewerLoading": "جارٍ تحميل عارض PDF..."
6
38
  },
7
39
  "Toolbar": {
8
40
  "annotations": "التعليقات التوضيحية",
@@ -53,7 +85,10 @@
53
85
  "realtimeActive": "التحديثات في الوقت الفعلي نشطة",
54
86
  "reconnecting": "جارٍ إعادة الاتصال بالخادم...",
55
87
  "sharing": "المشاركة",
56
- "collaborationComingSoon": "ميزات التعاون قادمة قريبًا"
88
+ "collaborationComingSoon": "ميزات التعاون قادمة قريبًا",
89
+ "collaborators": "المتعاونون",
90
+ "ceilings": "{{contextTokens}} إدخال / {{maxOutputTokens}} إخراج",
91
+ "sharedWindow": "نافذة {{contextTokens}}"
57
92
  },
58
93
  "AnnotationHistory": {
59
94
  "history": "السجل",
@@ -377,7 +412,8 @@
377
412
  "progressCancel": "إلغاء التوليد",
378
413
  "progressInProgress": "جارٍ التوليد…",
379
414
  "progressComplete": "اكتمل التوليد!",
380
- "progressFailed": "فشل التوليد"
415
+ "progressFailed": "فشل التوليد",
416
+ "maxLengthCeiling": "محدود بـ {{maxOutputTokens}} رمزًا بواسطة {{model}}."
381
417
  },
382
418
  "ReferenceWizard": {
383
419
  "gatherTitle": "السياق المُجمَّع",
@@ -414,6 +450,24 @@
414
450
  "semanticScoring": "التقييم الدلالي",
415
451
  "semanticScoringHelp": "استخدام الذكاء الاصطناعي لتقييم النتائج حسب الصلة الدلالية",
416
452
  "searching": "جاري البحث...",
417
- "search": "بحث"
453
+ "search": "بحث",
454
+ "maxLengthCeiling": "محدود بـ {{maxOutputTokens}} رمزًا بواسطة {{model}}."
455
+ },
456
+ "OutcomeToasts": {
457
+ "createFailed": "تعذّر إنشاء التعليق التوضيحي: {{detail}}",
458
+ "deleteFailed": "تعذّر حذف التعليق التوضيحي: {{detail}}",
459
+ "referenceUpdateFailed": "تعذّر تحديث المرجع: {{detail}}",
460
+ "unknownError": "خطأ غير معروف",
461
+ "assistQuiet": "لا يزال قيد التنفيذ — لا تحديث منذ عدة دقائق",
462
+ "resourceCreatedNamed": "تم إنشاء «{{name}}»",
463
+ "resourceCreated": "تم إنشاء المورد",
464
+ "annotationComplete": "اكتمل التوسيم",
465
+ "annotationFailed": "فشل التوسيم",
466
+ "generationFailed": "فشل التوليد: {{detail}}",
467
+ "decline_no-text-layer": "هذا الملف صورة ممسوحة تعذّر التعرّف على نصها.",
468
+ "decline_encrypted": "هذا الملف محمي بكلمة مرور، ولا يمكن قراءة نصه.",
469
+ "decline_corrupt": "تعذّرت قراءة هذا الملف — قد يكون تالفًا.",
470
+ "decline_too-large": "هذا المستند أكبر من أن يُستخرج نصه.",
471
+ "decline_empty": "لا يحتوي هذا المستند على نص لتوسيمه."
418
472
  }
419
473
  }