@semiont/react-ui 0.5.24 → 0.5.26

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 (179) hide show
  1. package/dist/PdfAnnotationCanvas.client-6ZSF6ZTJ.js +677 -0
  2. package/dist/PdfAnnotationCanvas.client-6ZSF6ZTJ.js.map +1 -0
  3. package/dist/PdfAnnotationCanvas.client-JCJMXWWJ.css +180 -0
  4. package/dist/PdfAnnotationCanvas.client-JCJMXWWJ.css.map +1 -0
  5. package/dist/{ar-JRTKCMTF.js → ar-YTUUGK2O.js} +32 -6
  6. package/dist/ar-YTUUGK2O.js.map +1 -0
  7. package/dist/{bn-LO6EDSCC.js → bn-ASGNGPMD.js} +32 -6
  8. package/dist/bn-ASGNGPMD.js.map +1 -0
  9. package/dist/{chunk-4QMTEPQ3.js → chunk-BTUG3VJJ.js} +18 -298
  10. package/dist/chunk-BTUG3VJJ.js.map +1 -0
  11. package/dist/{chunk-5Y5JDCKC.js → chunk-L3WKRWP3.js} +32 -6
  12. package/dist/chunk-L3WKRWP3.js.map +1 -0
  13. package/dist/chunk-OBQOZCJE.js +287 -0
  14. package/dist/chunk-OBQOZCJE.js.map +1 -0
  15. package/dist/{cs-LCHHOR4O.js → cs-WMYVAOZY.js} +32 -6
  16. package/dist/cs-WMYVAOZY.js.map +1 -0
  17. package/dist/{da-TARGPMJR.js → da-FSHHN4D6.js} +32 -6
  18. package/dist/da-FSHHN4D6.js.map +1 -0
  19. package/dist/{de-SBH4QBPJ.js → de-FJFO3TPT.js} +32 -6
  20. package/dist/de-FJFO3TPT.js.map +1 -0
  21. package/dist/{el-2D2OLGWB.js → el-XOH4QIAG.js} +32 -6
  22. package/dist/el-XOH4QIAG.js.map +1 -0
  23. package/dist/{en-QFIEG3CA.js → en-3FCBW3YD.js} +6 -2
  24. package/dist/{es-U6YK2LX6.js → es-HDX4QI7E.js} +32 -6
  25. package/dist/es-HDX4QI7E.js.map +1 -0
  26. package/dist/{fa-S7SZE37M.js → fa-DJ6WTFTJ.js} +32 -6
  27. package/dist/fa-DJ6WTFTJ.js.map +1 -0
  28. package/dist/{fi-CBL3NIXN.js → fi-4S7H7W7U.js} +32 -6
  29. package/dist/fi-4S7H7W7U.js.map +1 -0
  30. package/dist/{fr-EABUHV6S.js → fr-6UJSYHXC.js} +32 -6
  31. package/dist/fr-6UJSYHXC.js.map +1 -0
  32. package/dist/{he-THWD244Y.js → he-ZZJOHJX2.js} +32 -6
  33. package/dist/he-ZZJOHJX2.js.map +1 -0
  34. package/dist/{hi-GHGFZJ44.js → hi-HZJTAW7U.js} +32 -6
  35. package/dist/hi-HZJTAW7U.js.map +1 -0
  36. package/dist/{id-POZOUMDW.js → id-E3I6ILEM.js} +32 -6
  37. package/dist/id-E3I6ILEM.js.map +1 -0
  38. package/dist/index.css +140 -94
  39. package/dist/index.css.map +1 -1
  40. package/dist/index.d.ts +85 -24
  41. package/dist/index.js +1782 -1697
  42. package/dist/index.js.map +1 -1
  43. package/dist/{it-KDYJADSH.js → it-ULAPAD7U.js} +32 -6
  44. package/dist/it-ULAPAD7U.js.map +1 -0
  45. package/dist/{ja-Z5Z6ZF3P.js → ja-SAHZQ4CZ.js} +32 -6
  46. package/dist/ja-SAHZQ4CZ.js.map +1 -0
  47. package/dist/{ko-7X3XUXRN.js → ko-DFU2ADQ4.js} +32 -6
  48. package/dist/ko-DFU2ADQ4.js.map +1 -0
  49. package/dist/{ms-BTWEIW43.js → ms-NWL76XNT.js} +32 -6
  50. package/dist/ms-NWL76XNT.js.map +1 -0
  51. package/dist/{nl-IS2CGF5I.js → nl-ATCM76WN.js} +32 -6
  52. package/dist/nl-ATCM76WN.js.map +1 -0
  53. package/dist/{no-AAMEVA26.js → no-UIAQ5RJF.js} +32 -6
  54. package/dist/no-UIAQ5RJF.js.map +1 -0
  55. package/dist/{pl-PVXUQYFT.js → pl-NOECQDXD.js} +32 -6
  56. package/dist/pl-NOECQDXD.js.map +1 -0
  57. package/dist/{pt-3ITQ76TL.js → pt-SVWIIUPC.js} +32 -6
  58. package/dist/pt-SVWIIUPC.js.map +1 -0
  59. package/dist/{ro-FRB4IIVS.js → ro-NR2DRTZG.js} +32 -6
  60. package/dist/ro-NR2DRTZG.js.map +1 -0
  61. package/dist/{sv-DS3RO24M.js → sv-STVJ37JP.js} +32 -6
  62. package/dist/sv-STVJ37JP.js.map +1 -0
  63. package/dist/test-utils.js +5 -3
  64. package/dist/test-utils.js.map +1 -1
  65. package/dist/{th-AX66MWWB.js → th-UWQR4K54.js} +32 -6
  66. package/dist/th-UWQR4K54.js.map +1 -0
  67. package/dist/{tr-7KTB67TT.js → tr-WNXZSD27.js} +32 -6
  68. package/dist/tr-WNXZSD27.js.map +1 -0
  69. package/dist/{uk-SMQS2MAQ.js → uk-SJRMB47Y.js} +32 -6
  70. package/dist/uk-SJRMB47Y.js.map +1 -0
  71. package/dist/{vi-D3JXL2EZ.js → vi-TMRQFES2.js} +32 -6
  72. package/dist/vi-TMRQFES2.js.map +1 -0
  73. package/dist/{zh-S754AWFS.js → zh-QOL3LYEM.js} +32 -6
  74. package/dist/zh-QOL3LYEM.js.map +1 -0
  75. package/package.json +8 -8
  76. package/src/components/AssistProgress.tsx +42 -30
  77. package/src/components/EntityFoundLog.tsx +38 -0
  78. package/src/components/StatusDisplay.css +35 -35
  79. package/src/components/__tests__/AssistProgress.test.tsx +86 -28
  80. package/src/components/annotation/annotations.css +1 -1
  81. package/src/components/modals/SearchModal.css +5 -5
  82. package/src/components/pdf-annotation/PdfAnnotationCanvas.css +143 -6
  83. package/src/components/pdf-annotation/PdfAnnotationCanvas.tsx +689 -198
  84. package/src/components/pdf-annotation/__tests__/PdfAnnotationCanvas.test.tsx +1008 -3
  85. package/src/components/pdf-annotation/__tests__/estimate-slot-height.test.ts +53 -0
  86. package/src/components/pdf-annotation/estimate-slot-height.ts +31 -0
  87. package/src/components/resource/AnnotateView.tsx +14 -7
  88. package/src/components/resource/BrowseView.tsx +2 -7
  89. package/src/components/resource/DownloadFileLink.tsx +49 -0
  90. package/src/components/resource/__tests__/AnnotateView.focus.test.tsx +58 -0
  91. package/src/components/resource/__tests__/browse-renderers.dispatch.test.tsx +33 -0
  92. package/src/components/resource/__tests__/download-link.test.tsx +129 -0
  93. package/src/components/resource/annotate-renderers.tsx +10 -1
  94. package/src/components/resource/browse-renderers.tsx +10 -1
  95. package/src/components/resource/panels/AssistSection.css +0 -43
  96. package/src/components/resource/panels/AssistSection.tsx +11 -2
  97. package/src/components/resource/panels/AssistShell.tsx +5 -1
  98. package/src/components/resource/panels/ReferencesPanel.tsx +12 -13
  99. package/src/components/resource/panels/TaggingPanel.tsx +21 -1
  100. package/src/components/resource/panels/__tests__/AssistSection.test.tsx +2 -2
  101. package/src/components/resource/panels/__tests__/AssistShell.test.tsx +9 -4
  102. package/src/components/resource/panels/__tests__/HighlightPanel.annotationProgress.test.tsx +1 -1
  103. package/src/components/resource/panels/__tests__/ReferencesPanel.test.tsx +26 -0
  104. package/src/features/auth/auth.css +10 -10
  105. package/src/features/resource-viewer/__tests__/ResourceViewerPage.test.tsx +58 -3
  106. package/src/features/resource-viewer/components/ResourceViewerPage.tsx +18 -7
  107. package/src/styles/core/inputs.css +1 -1
  108. package/src/styles/features/compose.css +1 -1
  109. package/src/styles/features/resource-viewer.css +1 -1
  110. package/src/styles/features/static-pages.css +11 -11
  111. package/src/styles/motivations/motivation-comment.css +2 -2
  112. package/src/styles/motivations/motivation-reference.css +2 -2
  113. package/src/styles/patterns/panels-base.css +4 -4
  114. package/src/styles/utilities/motion.css +15 -15
  115. package/src/styles/variables.css +29 -1
  116. package/translations/ar.json +27 -5
  117. package/translations/bn.json +27 -5
  118. package/translations/cs.json +27 -5
  119. package/translations/da.json +27 -5
  120. package/translations/de.json +27 -5
  121. package/translations/el.json +27 -5
  122. package/translations/en.json +27 -5
  123. package/translations/es.json +27 -5
  124. package/translations/fa.json +27 -5
  125. package/translations/fi.json +27 -5
  126. package/translations/fr.json +27 -5
  127. package/translations/he.json +27 -5
  128. package/translations/hi.json +27 -5
  129. package/translations/id.json +27 -5
  130. package/translations/it.json +27 -5
  131. package/translations/ja.json +27 -5
  132. package/translations/ko.json +27 -5
  133. package/translations/ms.json +27 -5
  134. package/translations/nl.json +27 -5
  135. package/translations/no.json +27 -5
  136. package/translations/pl.json +27 -5
  137. package/translations/pt.json +27 -5
  138. package/translations/ro.json +27 -5
  139. package/translations/sv.json +27 -5
  140. package/translations/th.json +27 -5
  141. package/translations/tr.json +27 -5
  142. package/translations/uk.json +27 -5
  143. package/translations/vi.json +27 -5
  144. package/translations/zh.json +27 -5
  145. package/dist/PdfAnnotationCanvas.client-SU5KNT7G.css +0 -98
  146. package/dist/PdfAnnotationCanvas.client-SU5KNT7G.css.map +0 -1
  147. package/dist/PdfAnnotationCanvas.client-V7Q3BEEQ.js +0 -427
  148. package/dist/PdfAnnotationCanvas.client-V7Q3BEEQ.js.map +0 -1
  149. package/dist/ar-JRTKCMTF.js.map +0 -1
  150. package/dist/bn-LO6EDSCC.js.map +0 -1
  151. package/dist/chunk-4QMTEPQ3.js.map +0 -1
  152. package/dist/chunk-5Y5JDCKC.js.map +0 -1
  153. package/dist/cs-LCHHOR4O.js.map +0 -1
  154. package/dist/da-TARGPMJR.js.map +0 -1
  155. package/dist/de-SBH4QBPJ.js.map +0 -1
  156. package/dist/el-2D2OLGWB.js.map +0 -1
  157. package/dist/es-U6YK2LX6.js.map +0 -1
  158. package/dist/fa-S7SZE37M.js.map +0 -1
  159. package/dist/fi-CBL3NIXN.js.map +0 -1
  160. package/dist/fr-EABUHV6S.js.map +0 -1
  161. package/dist/he-THWD244Y.js.map +0 -1
  162. package/dist/hi-GHGFZJ44.js.map +0 -1
  163. package/dist/id-POZOUMDW.js.map +0 -1
  164. package/dist/it-KDYJADSH.js.map +0 -1
  165. package/dist/ja-Z5Z6ZF3P.js.map +0 -1
  166. package/dist/ko-7X3XUXRN.js.map +0 -1
  167. package/dist/ms-BTWEIW43.js.map +0 -1
  168. package/dist/nl-IS2CGF5I.js.map +0 -1
  169. package/dist/no-AAMEVA26.js.map +0 -1
  170. package/dist/pl-PVXUQYFT.js.map +0 -1
  171. package/dist/pt-3ITQ76TL.js.map +0 -1
  172. package/dist/ro-FRB4IIVS.js.map +0 -1
  173. package/dist/sv-DS3RO24M.js.map +0 -1
  174. package/dist/th-AX66MWWB.js.map +0 -1
  175. package/dist/tr-7KTB67TT.js.map +0 -1
  176. package/dist/uk-SMQS2MAQ.js.map +0 -1
  177. package/dist/vi-D3JXL2EZ.js.map +0 -1
  178. package/dist/zh-S754AWFS.js.map +0 -1
  179. /package/dist/{en-QFIEG3CA.js.map → en-3FCBW3YD.js.map} +0 -0
@@ -2,6 +2,21 @@
2
2
  import "./chunk-O23TLLXW.js";
3
3
 
4
4
  // translations/vi.json
5
+ var AssistProgress = {
6
+ close: "\u0110\xF3ng",
7
+ paramsTitle: "Tham s\u1ED1 y\xEAu c\u1EA7u:",
8
+ processing: "Hi\u1EC7n t\u1EA1i: {{label}}"
9
+ };
10
+ var PdfViewer = {
11
+ loadFailed: "Kh\xF4ng t\u1EA3i \u0111\u01B0\u1EE3c PDF",
12
+ loading: "\u0110ang t\u1EA3i PDF...",
13
+ next: "Ti\u1EBFp",
14
+ pageLoadFailed: "Kh\xF4ng t\u1EA3i \u0111\u01B0\u1EE3c trang",
15
+ pageOf: "Trang {{page}} / {{total}}",
16
+ pagination: "\u0110i\u1EC1u h\u01B0\u1EDBng trang",
17
+ previous: "Tr\u01B0\u1EDBc",
18
+ viewerLoading: "\u0110ang t\u1EA3i tr\xECnh xem PDF..."
19
+ };
5
20
  var Toolbar = {
6
21
  annotations: "Ch\xFA th\xEDch",
7
22
  history: "L\u1ECBch s\u1EED",
@@ -108,7 +123,9 @@ var CommentsPanel = {
108
123
  densityDense: "D\xE0y",
109
124
  fragmentSelected: "\u0110\xE3 ch\u1ECDn \u0111o\u1EA1n v\u0103n b\u1EA3n",
110
125
  imageRegionSelected: "\u0110\xE3 ch\u1ECDn v\xF9ng h\xECnh \u1EA3nh",
111
- closeProgress: "\u0110\xF3ng"
126
+ complete: "Ho\xE0n th\xE0nh ch\xFA th\xEDch!",
127
+ failed: "Ch\xFA th\xEDch th\u1EA5t b\u1EA1i",
128
+ densityPerWords: "{{density}} tr\xEAn 2000 t\u1EEB"
112
129
  };
113
130
  var HighlightPanel = {
114
131
  title: "\u0110\xE1nh d\u1EA5u n\u1ED5i b\u1EADt",
@@ -123,7 +140,9 @@ var HighlightPanel = {
123
140
  densityLabel: "M\u1EADt \u0111\u1ED9",
124
141
  densitySparse: "Th\u01B0a",
125
142
  densityDense: "D\xE0y",
126
- closeProgress: "\u0110\xF3ng"
143
+ complete: "Ho\xE0n th\xE0nh ch\xFA th\xEDch!",
144
+ failed: "Ch\xFA th\xEDch th\u1EA5t b\u1EA1i",
145
+ densityPerWords: "{{density}} tr\xEAn 2000 t\u1EEB"
127
146
  };
128
147
  var AssessmentPanel = {
129
148
  title: "\u0110\xE1nh gi\xE1",
@@ -148,7 +167,9 @@ var AssessmentPanel = {
148
167
  densityDense: "D\xE0y",
149
168
  fragmentSelected: "\u0110\xE3 ch\u1ECDn \u0111o\u1EA1n v\u0103n b\u1EA3n",
150
169
  imageRegionSelected: "\u0110\xE3 ch\u1ECDn v\xF9ng h\xECnh \u1EA3nh",
151
- closeProgress: "\u0110\xF3ng"
170
+ complete: "Ho\xE0n th\xE0nh ch\xFA th\xEDch!",
171
+ failed: "Ch\xFA th\xEDch th\u1EA5t b\u1EA1i",
172
+ densityPerWords: "{{density}} tr\xEAn 2000 t\u1EEB"
152
173
  };
153
174
  var TaggingPanel = {
154
175
  title: "Th\u1EBB",
@@ -167,7 +188,9 @@ var TaggingPanel = {
167
188
  selectCategory: "Ch\u1ECDn danh m\u1EE5c",
168
189
  chooseCategory: "Ch\u1ECDn m\u1ED9t danh m\u1EE5c...",
169
190
  fragmentSelected: "\u0110\xE3 ch\u1ECDn \u0111o\u1EA1n v\u0103n b\u1EA3n",
170
- imageRegionSelected: "\u0110\xE3 ch\u1ECDn v\xF9ng h\xECnh \u1EA3nh"
191
+ imageRegionSelected: "\u0110\xE3 ch\u1ECDn v\xF9ng h\xECnh \u1EA3nh",
192
+ complete: "Ho\xE0n th\xE0nh ch\xFA th\xEDch!",
193
+ failed: "Ch\xFA th\xEDch th\u1EA5t b\u1EA1i"
171
194
  };
172
195
  var UnifiedAnnotationsPanel = {
173
196
  title: "Ch\xFA th\xEDch",
@@ -223,7 +246,6 @@ var ReferencesPanel = {
223
246
  complete: "Ho\xE0n th\xE0nh ch\xFA th\xEDch!",
224
247
  failed: "Ch\xFA th\xEDch th\u1EA5t b\u1EA1i",
225
248
  current: "Hi\u1EC7n t\u1EA1i: {{entityType}}",
226
- closeProgress: "\u0110\xF3ng",
227
249
  loading: "\u0111ang t\u1EA3i...",
228
250
  loadingEllipsis: "\u0110ang t\u1EA3i...",
229
251
  untitledResource: "T\xE0i nguy\xEAn ch\u01B0a c\xF3 ti\xEAu \u0111\u1EC1",
@@ -408,6 +430,8 @@ var ReferenceWizard = {
408
430
  search: "T\xECm ki\u1EBFm"
409
431
  };
410
432
  var vi_default = {
433
+ AssistProgress,
434
+ PdfViewer,
411
435
  Toolbar,
412
436
  ResourceInfoPanel,
413
437
  CollaborationPanel,
@@ -433,11 +457,13 @@ export {
433
457
  AnnotateView,
434
458
  AnnotationHistory,
435
459
  AssessmentPanel,
460
+ AssistProgress,
436
461
  CollaborationPanel,
437
462
  CollapsibleResourceNavigation,
438
463
  CommentsPanel,
439
464
  HighlightPanel,
440
465
  KeyboardShortcuts,
466
+ PdfViewer,
441
467
  ReferenceWizard,
442
468
  ReferencesPanel,
443
469
  ResourceGenerate,
@@ -450,4 +476,4 @@ export {
450
476
  UnifiedAnnotationsPanel,
451
477
  vi_default as default
452
478
  };
453
- //# sourceMappingURL=vi-D3JXL2EZ.js.map
479
+ //# sourceMappingURL=vi-TMRQFES2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../translations/vi.json"],"sourcesContent":["{\n \"AssistProgress\": {\n \"close\": \"Đóng\",\n \"paramsTitle\": \"Tham số yêu cầu:\",\n \"processing\": \"Hiện tại: {{label}}\"\n },\n \"PdfViewer\": {\n \"loadFailed\": \"Không tải được PDF\",\n \"loading\": \"Đang tải PDF...\",\n \"next\": \"Tiếp\",\n \"pageLoadFailed\": \"Không tải được trang\",\n \"pageOf\": \"Trang {{page}} / {{total}}\",\n \"pagination\": \"Điều hướng trang\",\n \"previous\": \"Trước\",\n \"viewerLoading\": \"Đang tải trình xem PDF...\"\n },\n \"Toolbar\": {\n \"annotations\": \"Chú thích\",\n \"history\": \"Lịch sử\",\n \"resourceInfo\": \"Thông tin tài nguyên\",\n \"collaboration\": \"Cộng tác\",\n \"userAccount\": \"Tài khoản người dùng\",\n \"settings\": \"Cài đặt\",\n \"knowledgeBase\": \"Cơ sở kiến thức\"\n },\n \"ResourceInfoPanel\": {\n \"title\": \"Thông tin tài nguyên\",\n \"locale\": \"Ngôn ngữ\",\n \"notSpecified\": \"Chưa xác định\",\n \"entityTypeTags\": \"Thẻ loại thực thể\",\n \"representation\": \"Biểu diễn\",\n \"mediaType\": \"Loại phương tiện\",\n \"byteSize\": \"Kích thước\",\n \"storageUri\": \"Lưu trữ\",\n \"clone\": \"Nhân bản\",\n \"cloneDescription\": \"Tạo liên kết nhân bản có thể chia sẻ cho tài nguyên này\",\n \"generate\": \"Tạo sinh\",\n \"generateDescription\": \"Tạo tài nguyên mới từ ngữ cảnh của tài nguyên này\",\n \"archive\": \"Lưu trữ\",\n \"archiveDescription\": \"Chuyển tài nguyên này sang trạng thái lưu trữ\",\n \"unarchive\": \"Hủy lưu trữ\",\n \"unarchiveDescription\": \"Khôi phục tài nguyên này về trạng thái hoạt động\",\n \"provenance\": \"Xuất xứ\",\n \"createdAt\": \"Ngày tạo\",\n \"modifiedAt\": \"Ngày sửa đổi\",\n \"attributedTo\": \"Được gán cho\",\n \"derivedFrom\": \"Bắt nguồn từ\"\n },\n \"CollaborationPanel\": {\n \"title\": \"Cộng tác\",\n \"connectionStatus\": \"Trạng thái kết nối\",\n \"live\": \"Trực tiếp\",\n \"disconnected\": \"Đã ngắt kết nối\",\n \"events\": \"{{count}} sự kiện\",\n \"lastSync\": \"Đồng bộ lần cuối:\",\n \"noActivity\": \"Chưa có hoạt động\",\n \"justNow\": \"Vừa xong\",\n \"secondsAgo\": \"{{count}} giây trước\",\n \"minuteAgo\": \"1 phút trước\",\n \"minutesAgo\": \"{{count}} phút trước\",\n \"hourAgo\": \"1 giờ trước\",\n \"hoursAgo\": \"{{count}} giờ trước\",\n \"realtimeActive\": \"Cập nhật thời gian thực đang hoạt động\",\n \"reconnecting\": \"Đang kết nối lại với máy chủ...\",\n \"sharing\": \"Chia sẻ\",\n \"collaborationComingSoon\": \"Tính năng cộng tác sắp ra mắt\"\n },\n \"AnnotationHistory\": {\n \"history\": \"Lịch sử\",\n \"loading\": \"Đang tải...\",\n \"user\": \"Người dùng\",\n \"viewOriginal\": \"Xem bản gốc\",\n \"viewAnnotation\": \"Xem chú thích: {{content}}\",\n \"resourceCreated\": \"Đã tạo tài nguyên\",\n \"resourceCloned\": \"Đã nhân bản\",\n \"resourceArchived\": \"Đã lưu trữ\",\n \"resourceUnarchived\": \"Đã hủy lưu trữ\",\n \"highlightAdded\": \"Đã thêm đánh dấu nổi bật\",\n \"highlightRemoved\": \"Đã xóa đánh dấu nổi bật\",\n \"referenceCreated\": \"Đã tạo tham chiếu\",\n \"referenceResolved\": \"Đã phân giải tham chiếu\",\n \"referenceDeleted\": \"Đã xóa tham chiếu\",\n \"entitytagAdded\": \"Đã thêm thẻ\",\n \"entitytagRemoved\": \"Đã xóa thẻ\",\n \"assessmentAdded\": \"Đã thêm đánh giá\",\n \"assessmentRemoved\": \"Đã xóa đánh giá\",\n \"annotationAdded\": \"Đã thêm chú thích\",\n \"annotationRemoved\": \"Đã xóa chú thích\",\n \"annotationBodyUpdated\": \"Đã cập nhật chú thích\",\n \"jobEvent\": \"Sự kiện tác vụ\",\n \"embeddingComputed\": \"Đã tính embedding\",\n \"justNow\": \"vừa xong\",\n \"minutesAgo\": \"{{count}} phút trước\",\n \"hoursAgo\": \"{{count}} giờ trước\",\n \"daysAgo\": \"{{count}} ngày trước\",\n \"failed\": \"Không thể tải lịch sử.\",\n \"retry\": \"Thử lại\"\n },\n \"CommentsPanel\": {\n \"title\": \"Bình luận\",\n \"noComments\": \"Chưa có bình luận nào. Chọn văn bản và nhấp Bình luận để thêm.\",\n \"commentPlaceholder\": \"Nhập bình luận của bạn tại đây...\",\n \"save\": \"Lưu\",\n \"cancel\": \"Hủy\",\n \"edit\": \"Chỉnh sửa\",\n \"annotateComments\": \"Chú thích bình luận\",\n \"instructions\": \"Hướng dẫn\",\n \"optional\": \"(tùy chọn)\",\n \"instructionsPlaceholder\": \"Ví dụ: Tập trung vào thuật ngữ kỹ thuật...\",\n \"annotate\": \"Chú thích\",\n \"annotating\": \"Đang chú thích...\",\n \"toneLabel\": \"Giọng điệu\",\n \"toneOptional\": \"(tùy chọn)\",\n \"toneScholarly\": \"Học thuật\",\n \"toneExplanatory\": \"Giải thích\",\n \"toneConversational\": \"Hội thoại\",\n \"toneTechnical\": \"Kỹ thuật\",\n \"densityLabel\": \"Mật độ\",\n \"densitySparse\": \"Thưa\",\n \"densityDense\": \"Dày\",\n \"fragmentSelected\": \"Đã chọn đoạn văn bản\",\n \"imageRegionSelected\": \"Đã chọn vùng hình ảnh\",\n \"complete\": \"Hoàn thành chú thích!\",\n \"failed\": \"Chú thích thất bại\",\n \"densityPerWords\": \"{{density}} trên 2000 từ\"\n },\n \"HighlightPanel\": {\n \"title\": \"Đánh dấu nổi bật\",\n \"noHighlights\": \"Chưa có đánh dấu nổi bật nào. Sử dụng chú thích AI để tìm các đoạn quan trọng.\",\n \"annotateHighlights\": \"Chú thích đánh dấu nổi bật\",\n \"instructions\": \"Hướng dẫn\",\n \"optional\": \"(tùy chọn)\",\n \"instructionsPlaceholder\": \"Ví dụ: Tập trung vào các khái niệm kỹ thuật chính...\",\n \"annotate\": \"Chú thích\",\n \"annotating\": \"Đang chú thích...\",\n \"cancel\": \"Hủy\",\n \"densityLabel\": \"Mật độ\",\n \"densitySparse\": \"Thưa\",\n \"densityDense\": \"Dày\",\n \"complete\": \"Hoàn thành chú thích!\",\n \"failed\": \"Chú thích thất bại\",\n \"densityPerWords\": \"{{density}} trên 2000 từ\"\n },\n \"AssessmentPanel\": {\n \"title\": \"Đánh giá\",\n \"noAssessments\": \"Chưa có đánh giá nào. Sử dụng chú thích AI để đánh giá các đoạn văn.\",\n \"assessmentPlaceholder\": \"Nhập đánh giá của bạn tại đây...\",\n \"save\": \"Lưu\",\n \"cancel\": \"Hủy\",\n \"annotateAssessments\": \"Chú thích đánh giá\",\n \"instructions\": \"Hướng dẫn\",\n \"optional\": \"(tùy chọn)\",\n \"instructionsPlaceholder\": \"Ví dụ: Đánh giá các tuyên bố về tính chính xác và bằng chứng...\",\n \"annotate\": \"Chú thích\",\n \"annotating\": \"Đang chú thích...\",\n \"toneLabel\": \"Giọng điệu\",\n \"toneOptional\": \"(tùy chọn)\",\n \"toneAnalytical\": \"Phân tích\",\n \"toneCritical\": \"Phê bình\",\n \"toneBalanced\": \"Cân bằng\",\n \"toneConstructive\": \"Xây dựng\",\n \"densityLabel\": \"Mật độ\",\n \"densitySparse\": \"Thưa\",\n \"densityDense\": \"Dày\",\n \"fragmentSelected\": \"Đã chọn đoạn văn bản\",\n \"imageRegionSelected\": \"Đã chọn vùng hình ảnh\",\n \"complete\": \"Hoàn thành chú thích!\",\n \"failed\": \"Chú thích thất bại\",\n \"densityPerWords\": \"{{density}} trên 2000 từ\"\n },\n \"TaggingPanel\": {\n \"title\": \"Thẻ\",\n \"noTags\": \"Chưa có thẻ nào. Sử dụng chú thích AI để xác định vai trò cấu trúc.\",\n \"noSchemas\": \"Chưa có lược đồ thẻ nào được đăng ký cho cơ sở tri thức này. Quản trị viên KB phải đăng ký ít nhất một lược đồ phân tích cấu trúc (ví dụ qua kỹ năng `register-tag-schemas`) trước khi có thể sử dụng gắn thẻ.\",\n \"annotateTags\": \"Chú thích thẻ\",\n \"selectSchema\": \"Chọn khung phân tích\",\n \"selectCategories\": \"Chọn danh mục\",\n \"annotate\": \"Chú thích\",\n \"annotating\": \"Đang chú thích...\",\n \"cancel\": \"Hủy\",\n \"selectAll\": \"Chọn tất cả\",\n \"deselectAll\": \"Bỏ chọn tất cả\",\n \"categoriesSelected\": \"{count, plural, =0 {Chưa chọn danh mục nào} =1 {Đã chọn 1 danh mục} other {Đã chọn # danh mục}}\",\n \"createTagForSelection\": \"Tạo thẻ cho vùng chọn\",\n \"selectCategory\": \"Chọn danh mục\",\n \"chooseCategory\": \"Chọn một danh mục...\",\n \"fragmentSelected\": \"Đã chọn đoạn văn bản\",\n \"imageRegionSelected\": \"Đã chọn vùng hình ảnh\",\n \"complete\": \"Hoàn thành chú thích!\",\n \"failed\": \"Chú thích thất bại\"\n },\n \"UnifiedAnnotationsPanel\": {\n \"title\": \"Chú thích\",\n \"statistics\": \"Thống kê\",\n \"highlight\": \"Đánh dấu nổi bật\",\n \"reference\": \"Tham chiếu\",\n \"assessment\": \"Đánh giá\",\n \"comment\": \"Bình luận\",\n \"tag\": \"Thẻ\",\n \"annotationsFailed\": \"Không thể tải chú thích.\",\n \"retry\": \"Thử lại\"\n },\n \"StatisticsPanel\": {\n \"title\": \"Thống kê\",\n \"highlights\": \"Đánh dấu nổi bật\",\n \"comments\": \"Bình luận\",\n \"assessments\": \"Đánh giá\",\n \"tags\": \"Thẻ\",\n \"references\": \"Tham chiếu\",\n \"stub\": \"Sơ khai\",\n \"resolved\": \"Đã phân giải\",\n \"entityTypes\": \"Loại thực thể\"\n },\n \"ReferencesPanel\": {\n \"title\": \"Tham chiếu\",\n \"noReferences\": \"Chưa có tham chiếu nào. Chọn văn bản để tạo tham chiếu đến các tài nguyên khác.\",\n \"outgoingReferences\": \"Tham chiếu đi\",\n \"incomingReferences\": \"Tham chiếu đến\",\n \"noIncomingReferences\": \"Không có tham chiếu đến\",\n \"stub\": \"Tham chiếu sơ khai (chưa liên kết)\",\n \"resolved\": \"Tham chiếu đã phân giải (đã liên kết)\",\n \"open\": \"Mở\",\n \"unlink\": \"Hủy liên kết\",\n \"resolve\": \"Giải quyết tham chiếu\",\n \"cancel\": \"Hủy\",\n \"createReference\": \"Tạo tham chiếu\",\n \"entityTypesOptional\": \"Loại thực thể (Tùy chọn)\",\n \"fragmentSelected\": \"Đã chọn đoạn văn bản\",\n \"imageRegionSelected\": \"Đã chọn vùng hình ảnh\",\n \"annotateReferences\": \"Chú thích tham chiếu\",\n \"selectEntityTypes\": \"Loại thực thể:\",\n \"select\": \"Chọn\",\n \"deselect\": \"Bỏ chọn\",\n \"noEntityTypes\": \"Không có loại thực thể nào\",\n \"typesSelected\": \"{count, plural, =1 {Đã chọn 1 loại} other {Đã chọn # loại}}\",\n \"annotate\": \"Chú thích\",\n \"annotating\": \"Đang chú thích...\",\n \"includeDescriptiveReferences\": \"Bao gồm tham chiếu mô tả\",\n \"descriptiveReferencesTooltip\": \"Cũng tìm các cụm từ như 'vị CEO', 'gã khổng lồ công nghệ', 'nhà vật lý' (ngoài tên riêng)\",\n \"annotationProgressTitle\": \"Đang chú thích tham chiếu thực thể\",\n \"cancelAnnotation\": \"Hủy chú thích\",\n \"found\": \"Đã tìm thấy {{count}}\",\n \"complete\": \"Hoàn thành chú thích!\",\n \"failed\": \"Chú thích thất bại\",\n \"current\": \"Hiện tại: {{entityType}}\",\n \"loading\": \"đang tải...\",\n \"loadingEllipsis\": \"Đang tải...\",\n \"untitledResource\": \"Tài nguyên chưa có tiêu đề\",\n \"noText\": \"Không có văn bản\",\n \"incomingReferencesFailed\": \"Không thể tải tham chiếu đến.\",\n \"retry\": \"Thử lại\",\n \"entityTypesFailed\": \"Không thể tải loại thực thể.\"\n },\n \"KeyboardShortcuts\": {\n \"title\": \"Phím tắt\",\n \"closeDialog\": \"Đóng hộp thoại\",\n \"or\": \"hoặc\",\n \"navigationTitle\": \"Điều hướng\",\n \"navOpenSearch\": \"Mở tìm kiếm toàn cục\",\n \"navOpenSearchAlt\": \"Mở tìm kiếm toàn cục (thay thế)\",\n \"navCreateResource\": \"Tạo tài nguyên mới\",\n \"navCloseOverlays\": \"Đóng tất cả lớp phủ (nhấn đúp)\",\n \"navShowHelp\": \"Hiển thị trợ giúp phím tắt\",\n \"sidebarTitle\": \"Thanh bên tri thức\",\n \"sidebarCollapse\": \"Thu gọn thanh bên\",\n \"sidebarExpand\": \"Mở rộng thanh bên\",\n \"sidebarPickup\": \"Chọn tab tài nguyên (khi đang được chọn)\",\n \"sidebarMove\": \"Di chuyển tab tài nguyên (khi đang kéo)\",\n \"sidebarDrop\": \"Thả tab tài nguyên (khi đang kéo)\",\n \"sidebarCancel\": \"Hủy thao tác kéo\",\n \"annotationsTitle\": \"Chú thích tài nguyên\",\n \"annotHighlight\": \"Tạo đánh dấu nổi bật từ chú thích (trực tiếp)\",\n \"annotReference\": \"Mở cửa sổ tham chiếu cho chú thích\",\n \"annotDelete\": \"Xóa chú thích đang được chọn\",\n \"annotNavigate\": \"Điều hướng qua các chú thích\",\n \"annotNavigateBack\": \"Điều hướng ngược các chú thích\",\n \"listsTitle\": \"Danh sách và lưới\",\n \"listsFilterNav\": \"Điều hướng bộ lọc loại thực thể\",\n \"listsGridNav\": \"Điều hướng lưới tài nguyên\",\n \"listsJumpFirst\": \"Nhảy đến mục đầu tiên\",\n \"listsJumpLast\": \"Nhảy đến mục cuối cùng\",\n \"searchModalTitle\": \"Trong cửa sổ tìm kiếm\",\n \"searchNav\": \"Điều hướng kết quả tìm kiếm\",\n \"searchSelect\": \"Chọn kết quả\",\n \"searchClose\": \"Đóng tìm kiếm\",\n \"modalTitle\": \"Điều khiển cửa sổ\",\n \"modalClose\": \"Đóng cửa sổ đang hoạt động\",\n \"modalNavForward\": \"Điều hướng tiến qua các nút\",\n \"modalNavBackward\": \"Điều hướng lùi qua các nút\",\n \"modalActivate\": \"Kích hoạt nút đang được chọn\",\n \"accessibilityTitle\": \"Trợ năng\",\n \"a11ySkipLinks\": \"Điều hướng đến liên kết bỏ qua (khi ở đầu trang)\",\n \"a11yFollowLink\": \"Theo liên kết bỏ qua\",\n \"macNote\": \"Đang sử dụng phím tắt Mac. Command là phím Command.\",\n \"windowsNote\": \"Đang sử dụng phím tắt Windows/Linux. Ctrl là phím Control.\",\n \"footerHint\": \"Nhấn {{key}} bất cứ lúc nào để hiển thị trợ giúp này\",\n \"close\": \"Đóng\"\n },\n \"AnnotateToolbar\": {\n \"modeGroup\": \"Chế độ\",\n \"browse\": \"Duyệt\",\n \"annotate\": \"Chú thích\",\n \"selectionGroup\": \"Mục đích\",\n \"clickGroup\": \"Nhấp\",\n \"shapeGroup\": \"Hình dạng\",\n \"none\": \"Không\",\n \"linking\": \"Tham chiếu\",\n \"highlighting\": \"Đánh dấu nổi bật\",\n \"assessing\": \"Đánh giá\",\n \"commenting\": \"Bình luận\",\n \"tagging\": \"Gắn thẻ\",\n \"detail\": \"Chi tiết\",\n \"follow\": \"Theo dõi\",\n \"deleting\": \"Xóa\",\n \"jsonld\": \"JSON-LD\",\n \"rectangle\": \"Hình chữ nhật\",\n \"circle\": \"Hình tròn\",\n \"polygon\": \"Đa giác\"\n },\n \"CollapsibleResourceNavigation\": {\n \"title\": \"Điều hướng\",\n \"collapseSidebar\": \"Thu gọn thanh bên\",\n \"expandSidebar\": \"Mở rộng thanh bên\",\n \"dragToReorder\": \"Kéo để sắp xếp lại\",\n \"dragToReorderDoc\": \"Kéo để sắp xếp lại {{name}}\",\n \"closeResource\": \"Đóng tài nguyên\",\n \"dragInstructions\": \"Để sắp xếp lại tài nguyên: Sử dụng Tab để điều hướng đến tài nguyên. Nhấn Alt+Mũi tên lên để di chuyển lên hoặc Alt+Mũi tên xuống để di chuyển xuống. Để kéo và thả: Nhấn phím cách để chọn mục. Sử dụng phím mũi tên để di chuyển. Nhấn phím cách lần nữa để thả.\"\n },\n \"ResourceViewer\": {\n \"deleteConfirmationTitle\": \"Xóa chú thích\",\n \"deleteConfirmationMessage\": \"Bạn có chắc chắn muốn xóa chú thích này không? Hành động này không thể hoàn tác.\",\n \"deleteConfirmationCancel\": \"Hủy\",\n \"deleteConfirmationDelete\": \"Xóa\"\n },\n \"Settings\": {\n \"title\": \"Cài đặt\",\n \"lineNumbers\": \"Số dòng\",\n \"lineNumbersVisible\": \"Hiển thị\",\n \"lineNumbersHidden\": \"Ẩn\",\n \"theme\": \"Giao diện\",\n \"themeLight\": \"Sáng\",\n \"themeDark\": \"Tối\",\n \"themeSystem\": \"Hệ thống\",\n \"themeSystemActive\": \"Hệ thống ({{mode}})\",\n \"themeModeActive\": \"Đang sử dụng chế độ {{mode}}\",\n \"language\": \"Ngôn ngữ\",\n \"languageHint\": \"Thay đổi ngôn ngữ trong thanh điều hướng chính\",\n \"languageChanging\": \"Đang thay đổi ngôn ngữ...\",\n \"hoverDelay\": \"Độ trễ di chuột\",\n \"hoverDelayFast\": \"Nhanh\",\n \"hoverDelaySlow\": \"Chậm\",\n \"hoverDelayDescription\": \"Độ trễ {{delay}}ms trước khi hiệu ứng di chuột xuất hiện\"\n },\n \"AnnotateView\": {},\n \"ResourceGenerate\": {\n \"gatherTitle\": \"Cấu hình Thu thập\",\n \"reviewTitle\": \"Xem lại Ngữ cảnh\",\n \"configureTitle\": \"Cấu hình Tạo sinh\",\n \"next\": \"Tiếp theo\",\n \"back\": \"Quay lại\",\n \"cancel\": \"Hủy\",\n \"gatherIntro\": \"Chọn nội dung để đưa vào ngữ cảnh đã thu thập.\",\n \"includeContent\": \"Bao gồm nội dung tài nguyên\",\n \"includeSummary\": \"Bao gồm tóm tắt\",\n \"gatherDepth\": \"Độ sâu\",\n \"gatherMaxResources\": \"Tài nguyên Tối đa\",\n \"gatherButton\": \"Thu thập\",\n \"excludeLabel\": \"Loại trừ khỏi truy hồi\",\n \"loadingContext\": \"Đang thu thập ngữ cảnh...\",\n \"failedContext\": \"Không thể thu thập ngữ cảnh\",\n \"sourceContextLabel\": \"Tài nguyên\",\n \"connectionsLabel\": \"Kết nối\",\n \"citedByLabel\": \"Được trích dẫn bởi\",\n \"resourceTitle\": \"Tiêu đề tài nguyên mới\",\n \"resourceTitlePlaceholder\": \"Tiêu đề cho tài nguyên được tạo...\",\n \"additionalInstructions\": \"Hướng dẫn Bổ sung\",\n \"additionalInstructionsPlaceholder\": \"Hướng dẫn tùy chọn cho việc tạo sinh...\",\n \"language\": \"Ngôn ngữ\",\n \"languageHelp\": \"Ngôn ngữ cho tài nguyên được tạo\",\n \"creativity\": \"Sáng tạo\",\n \"creativityFocused\": \"Tập trung\",\n \"creativityCreative\": \"Sáng tạo\",\n \"maxLength\": \"Độ dài Tối đa\",\n \"maxLengthHelp\": \"Số lượng token tối đa\",\n \"generate\": \"Tạo sinh\",\n \"progressTitle\": \"Đang tạo Tài nguyên\",\n \"progressCancel\": \"Hủy tạo sinh\",\n \"progressInProgress\": \"Đang tạo sinh…\",\n \"progressComplete\": \"Tạo sinh hoàn tất!\",\n \"progressFailed\": \"Tạo sinh thất bại\"\n },\n \"ReferenceWizard\": {\n \"gatherTitle\": \"Ngữ cảnh đã thu thập\",\n \"configureGenerationTitle\": \"Cấu hình Tạo sinh\",\n \"configureSearchTitle\": \"Cấu hình tìm kiếm\",\n \"searchResultsTitle\": \"Kết quả tìm kiếm\",\n \"sourceContextLabel\": \"Ngữ cảnh chú thích trong tài nguyên\",\n \"connectionsLabel\": \"Chú thích ngang hàng\",\n \"citedByLabel\": \"Tài nguyên được trích dẫn bởi\",\n \"userHintLabel\": \"Gợi ý\",\n \"userHintPlaceholder\": \"Mô tả chú thích này đề cập đến điều gì...\",\n \"loadingContext\": \"Đang thu thập ngữ cảnh...\",\n \"failedContext\": \"Không thể thu thập ngữ cảnh\",\n \"cancel\": \"Hủy\",\n \"generate\": \"Tạo sinh\",\n \"compose\": \"Soạn\",\n \"resolutionStrategyLabel\": \"Chiến lược giải quyết\",\n \"back\": \"Quay lại\",\n \"link\": \"Liên kết\",\n \"score\": \"Điểm\",\n \"noResults\": \"Không tìm thấy kết quả\",\n \"resourceTitle\": \"Tiêu đề Tài nguyên\",\n \"resourceTitlePlaceholder\": \"Nhập tiêu đề tài nguyên...\",\n \"additionalInstructions\": \"Hướng dẫn Bổ sung\",\n \"additionalInstructionsPlaceholder\": \"Nhập hướng dẫn bổ sung...\",\n \"language\": \"Ngôn ngữ\",\n \"languageHelp\": \"Ngôn ngữ cho nội dung được tạo\",\n \"creativity\": \"Sáng tạo\",\n \"creativityFocused\": \"Tập trung\",\n \"creativityCreative\": \"Sáng tạo\",\n \"maxLength\": \"Độ dài Tối đa\",\n \"maxLengthHelp\": \"Số lượng token tối đa\",\n \"maxResults\": \"Kết quả Tối đa\",\n \"semanticScoring\": \"Chấm điểm Ngữ nghĩa\",\n \"semanticScoringHelp\": \"Sử dụng AI để chấm điểm kết quả theo mức độ liên quan ngữ nghĩa\",\n \"searching\": \"Đang tìm kiếm...\",\n \"search\": \"Tìm kiếm\"\n }\n}\n"],"mappings":"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","names":[]}
@@ -2,6 +2,21 @@
2
2
  import "./chunk-O23TLLXW.js";
3
3
 
4
4
  // translations/zh.json
5
+ var AssistProgress = {
6
+ close: "\u5173\u95ED",
7
+ paramsTitle: "\u8BF7\u6C42\u53C2\u6570\uFF1A",
8
+ processing: "\u5F53\u524D\uFF1A{{label}}"
9
+ };
10
+ var PdfViewer = {
11
+ loadFailed: "PDF \u52A0\u8F7D\u5931\u8D25",
12
+ loading: "\u6B63\u5728\u52A0\u8F7D PDF...",
13
+ next: "\u4E0B\u4E00\u9875",
14
+ pageLoadFailed: "\u9875\u9762\u52A0\u8F7D\u5931\u8D25",
15
+ pageOf: "\u7B2C {{page}} \u9875\uFF0C\u5171 {{total}} \u9875",
16
+ pagination: "\u9875\u9762\u5BFC\u822A",
17
+ previous: "\u4E0A\u4E00\u9875",
18
+ viewerLoading: "\u6B63\u5728\u52A0\u8F7D PDF \u67E5\u770B\u5668..."
19
+ };
5
20
  var Toolbar = {
6
21
  annotations: "\u6CE8\u91CA",
7
22
  history: "\u5386\u53F2",
@@ -108,7 +123,9 @@ var CommentsPanel = {
108
123
  densityDense: "\u5BC6\u96C6",
109
124
  fragmentSelected: "\u5DF2\u9009\u62E9\u7247\u6BB5",
110
125
  imageRegionSelected: "\u5DF2\u9009\u62E9\u56FE\u50CF\u533A\u57DF",
111
- closeProgress: "\u5173\u95ED"
126
+ complete: "\u6CE8\u91CA\u5B8C\u6210\uFF01",
127
+ failed: "\u6CE8\u91CA\u5931\u8D25",
128
+ densityPerWords: "\u6BCF 2000 \u8BCD {{density}} \u4E2A"
112
129
  };
113
130
  var HighlightPanel = {
114
131
  title: "\u9AD8\u4EAE",
@@ -123,7 +140,9 @@ var HighlightPanel = {
123
140
  densityLabel: "\u5BC6\u5EA6",
124
141
  densitySparse: "\u7A00\u758F",
125
142
  densityDense: "\u5BC6\u96C6",
126
- closeProgress: "\u5173\u95ED"
143
+ complete: "\u6CE8\u91CA\u5B8C\u6210\uFF01",
144
+ failed: "\u6CE8\u91CA\u5931\u8D25",
145
+ densityPerWords: "\u6BCF 2000 \u8BCD {{density}} \u4E2A"
127
146
  };
128
147
  var AssessmentPanel = {
129
148
  title: "\u8BC4\u4F30",
@@ -148,7 +167,9 @@ var AssessmentPanel = {
148
167
  densityDense: "\u5BC6\u96C6",
149
168
  fragmentSelected: "\u5DF2\u9009\u62E9\u7247\u6BB5",
150
169
  imageRegionSelected: "\u5DF2\u9009\u62E9\u56FE\u50CF\u533A\u57DF",
151
- closeProgress: "\u5173\u95ED"
170
+ complete: "\u6CE8\u91CA\u5B8C\u6210\uFF01",
171
+ failed: "\u6CE8\u91CA\u5931\u8D25",
172
+ densityPerWords: "\u6BCF 2000 \u8BCD {{density}} \u4E2A"
152
173
  };
153
174
  var TaggingPanel = {
154
175
  title: "\u6807\u7B7E",
@@ -167,7 +188,9 @@ var TaggingPanel = {
167
188
  selectCategory: "\u9009\u62E9\u5206\u7C7B",
168
189
  chooseCategory: "\u9009\u62E9\u4E00\u4E2A\u5206\u7C7B...",
169
190
  fragmentSelected: "\u5DF2\u9009\u62E9\u7247\u6BB5",
170
- imageRegionSelected: "\u5DF2\u9009\u62E9\u56FE\u50CF\u533A\u57DF"
191
+ imageRegionSelected: "\u5DF2\u9009\u62E9\u56FE\u50CF\u533A\u57DF",
192
+ complete: "\u6CE8\u91CA\u5B8C\u6210\uFF01",
193
+ failed: "\u6CE8\u91CA\u5931\u8D25"
171
194
  };
172
195
  var UnifiedAnnotationsPanel = {
173
196
  title: "\u6CE8\u91CA",
@@ -223,7 +246,6 @@ var ReferencesPanel = {
223
246
  complete: "\u6CE8\u91CA\u5B8C\u6210\uFF01",
224
247
  failed: "\u6CE8\u91CA\u5931\u8D25",
225
248
  current: "\u5F53\u524D\uFF1A{{entityType}}",
226
- closeProgress: "\u5173\u95ED",
227
249
  loading: "\u52A0\u8F7D\u4E2D...",
228
250
  loadingEllipsis: "\u52A0\u8F7D\u4E2D...",
229
251
  untitledResource: "\u65E0\u6807\u9898\u8D44\u6E90",
@@ -408,6 +430,8 @@ var ReferenceWizard = {
408
430
  search: "\u641C\u7D22"
409
431
  };
410
432
  var zh_default = {
433
+ AssistProgress,
434
+ PdfViewer,
411
435
  Toolbar,
412
436
  ResourceInfoPanel,
413
437
  CollaborationPanel,
@@ -433,11 +457,13 @@ export {
433
457
  AnnotateView,
434
458
  AnnotationHistory,
435
459
  AssessmentPanel,
460
+ AssistProgress,
436
461
  CollaborationPanel,
437
462
  CollapsibleResourceNavigation,
438
463
  CommentsPanel,
439
464
  HighlightPanel,
440
465
  KeyboardShortcuts,
466
+ PdfViewer,
441
467
  ReferenceWizard,
442
468
  ReferencesPanel,
443
469
  ResourceGenerate,
@@ -450,4 +476,4 @@ export {
450
476
  UnifiedAnnotationsPanel,
451
477
  zh_default as default
452
478
  };
453
- //# sourceMappingURL=zh-S754AWFS.js.map
479
+ //# sourceMappingURL=zh-QOL3LYEM.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../translations/zh.json"],"sourcesContent":["{\n \"AssistProgress\": {\n \"close\": \"关闭\",\n \"paramsTitle\": \"请求参数:\",\n \"processing\": \"当前:{{label}}\"\n },\n \"PdfViewer\": {\n \"loadFailed\": \"PDF 加载失败\",\n \"loading\": \"正在加载 PDF...\",\n \"next\": \"下一页\",\n \"pageLoadFailed\": \"页面加载失败\",\n \"pageOf\": \"第 {{page}} 页,共 {{total}} 页\",\n \"pagination\": \"页面导航\",\n \"previous\": \"上一页\",\n \"viewerLoading\": \"正在加载 PDF 查看器...\"\n },\n \"Toolbar\": {\n \"annotations\": \"注释\",\n \"history\": \"历史\",\n \"resourceInfo\": \"资源信息\",\n \"collaboration\": \"协作\",\n \"userAccount\": \"用户帐户\",\n \"settings\": \"设置\",\n \"knowledgeBase\": \"知识库\"\n },\n \"ResourceInfoPanel\": {\n \"title\": \"资源信息\",\n \"locale\": \"区域设置\",\n \"notSpecified\": \"未指定\",\n \"entityTypeTags\": \"实体类型标签\",\n \"representation\": \"表示形式\",\n \"mediaType\": \"媒体类型\",\n \"byteSize\": \"大小\",\n \"storageUri\": \"存储\",\n \"clone\": \"克隆\",\n \"cloneDescription\": \"为此资源生成可共享的克隆链接\",\n \"generate\": \"生成\",\n \"generateDescription\": \"根据此资源的上下文生成新资源\",\n \"archive\": \"归档\",\n \"archiveDescription\": \"将此资源移至已归档状态\",\n \"unarchive\": \"取消归档\",\n \"unarchiveDescription\": \"将此资源恢复为活跃状态\",\n \"provenance\": \"来源\",\n \"createdAt\": \"创建时间\",\n \"modifiedAt\": \"修改时间\",\n \"attributedTo\": \"归属于\",\n \"derivedFrom\": \"派生自\"\n },\n \"CollaborationPanel\": {\n \"title\": \"协作\",\n \"connectionStatus\": \"连接状态\",\n \"live\": \"实时\",\n \"disconnected\": \"已断开\",\n \"events\": \"{{count}} 个事件\",\n \"lastSync\": \"上次同步:\",\n \"noActivity\": \"暂无活动\",\n \"justNow\": \"刚刚\",\n \"secondsAgo\": \"{{count}} 秒前\",\n \"minuteAgo\": \"1 分钟前\",\n \"minutesAgo\": \"{{count}} 分钟前\",\n \"hourAgo\": \"1 小时前\",\n \"hoursAgo\": \"{{count}} 小时前\",\n \"realtimeActive\": \"实时更新已激活\",\n \"reconnecting\": \"正在重新连接服务器...\",\n \"sharing\": \"共享\",\n \"collaborationComingSoon\": \"协作功能即将推出\"\n },\n \"AnnotationHistory\": {\n \"history\": \"历史\",\n \"loading\": \"加载中...\",\n \"user\": \"用户\",\n \"viewOriginal\": \"查看原文\",\n \"viewAnnotation\": \"查看注释:{{content}}\",\n \"resourceCreated\": \"已创建资源\",\n \"resourceCloned\": \"已克隆\",\n \"resourceArchived\": \"已归档\",\n \"resourceUnarchived\": \"已取消归档\",\n \"highlightAdded\": \"已添加高亮\",\n \"highlightRemoved\": \"已移除高亮\",\n \"referenceCreated\": \"已创建引用\",\n \"referenceResolved\": \"已解析引用\",\n \"referenceDeleted\": \"已删除引用\",\n \"entitytagAdded\": \"已添加标签\",\n \"entitytagRemoved\": \"已移除标签\",\n \"assessmentAdded\": \"已添加评估\",\n \"assessmentRemoved\": \"已移除评估\",\n \"annotationAdded\": \"已添加注释\",\n \"annotationRemoved\": \"已移除注释\",\n \"annotationBodyUpdated\": \"已更新注释\",\n \"jobEvent\": \"任务事件\",\n \"embeddingComputed\": \"嵌入计算完成\",\n \"justNow\": \"刚刚\",\n \"minutesAgo\": \"{{count}}分钟前\",\n \"hoursAgo\": \"{{count}}小时前\",\n \"daysAgo\": \"{{count}}天前\",\n \"failed\": \"无法加载历史。\",\n \"retry\": \"重试\"\n },\n \"CommentsPanel\": {\n \"title\": \"评论\",\n \"noComments\": \"暂无评论。选择文本并点击评论来添加。\",\n \"commentPlaceholder\": \"在此输入您的评论...\",\n \"save\": \"保存\",\n \"cancel\": \"取消\",\n \"edit\": \"编辑\",\n \"annotateComments\": \"注释评论\",\n \"instructions\": \"说明\",\n \"optional\": \"(可选)\",\n \"instructionsPlaceholder\": \"例如,关注技术术语...\",\n \"annotate\": \"注释\",\n \"annotating\": \"正在注释...\",\n \"toneLabel\": \"语气\",\n \"toneOptional\": \"(可选)\",\n \"toneScholarly\": \"学术\",\n \"toneExplanatory\": \"解释性\",\n \"toneConversational\": \"对话式\",\n \"toneTechnical\": \"技术性\",\n \"densityLabel\": \"密度\",\n \"densitySparse\": \"稀疏\",\n \"densityDense\": \"密集\",\n \"fragmentSelected\": \"已选择片段\",\n \"imageRegionSelected\": \"已选择图像区域\",\n \"complete\": \"注释完成!\",\n \"failed\": \"注释失败\",\n \"densityPerWords\": \"每 2000 词 {{density}} 个\"\n },\n \"HighlightPanel\": {\n \"title\": \"高亮\",\n \"noHighlights\": \"暂无高亮。使用 AI 注释查找重要段落。\",\n \"annotateHighlights\": \"注释高亮\",\n \"instructions\": \"说明\",\n \"optional\": \"(可选)\",\n \"instructionsPlaceholder\": \"例如,关注关键技术概念...\",\n \"annotate\": \"注释\",\n \"annotating\": \"正在注释...\",\n \"cancel\": \"取消\",\n \"densityLabel\": \"密度\",\n \"densitySparse\": \"稀疏\",\n \"densityDense\": \"密集\",\n \"complete\": \"注释完成!\",\n \"failed\": \"注释失败\",\n \"densityPerWords\": \"每 2000 词 {{density}} 个\"\n },\n \"AssessmentPanel\": {\n \"title\": \"评估\",\n \"noAssessments\": \"暂无评估。使用 AI 注释评价段落。\",\n \"assessmentPlaceholder\": \"在此输入您的评估...\",\n \"save\": \"保存\",\n \"cancel\": \"取消\",\n \"annotateAssessments\": \"注释评估\",\n \"instructions\": \"说明\",\n \"optional\": \"(可选)\",\n \"instructionsPlaceholder\": \"例如,评估声明的准确性和证据...\",\n \"annotate\": \"注释\",\n \"annotating\": \"正在注释...\",\n \"toneLabel\": \"语气\",\n \"toneOptional\": \"(可选)\",\n \"toneAnalytical\": \"分析性\",\n \"toneCritical\": \"批判性\",\n \"toneBalanced\": \"平衡\",\n \"toneConstructive\": \"建设性\",\n \"densityLabel\": \"密度\",\n \"densitySparse\": \"稀疏\",\n \"densityDense\": \"密集\",\n \"fragmentSelected\": \"已选择片段\",\n \"imageRegionSelected\": \"已选择图像区域\",\n \"complete\": \"注释完成!\",\n \"failed\": \"注释失败\",\n \"densityPerWords\": \"每 2000 词 {{density}} 个\"\n },\n \"TaggingPanel\": {\n \"title\": \"标签\",\n \"noTags\": \"暂无标签。使用 AI 注释识别结构角色。\",\n \"noSchemas\": \"此知识库尚未注册任何标签模式。KB 管理员必须先注册至少一个结构分析模式(例如通过 `register-tag-schemas` 技能),然后才能使用标签功能。\",\n \"annotateTags\": \"注释标签\",\n \"selectSchema\": \"选择框架\",\n \"selectCategories\": \"选择分类\",\n \"annotate\": \"注释\",\n \"annotating\": \"正在注释...\",\n \"cancel\": \"取消\",\n \"selectAll\": \"全选\",\n \"deselectAll\": \"取消全选\",\n \"categoriesSelected\": \"{count, plural, =0 {未选择分类} =1 {已选择 1 个分类} other {已选择 # 个分类}}\",\n \"createTagForSelection\": \"为选择内容创建标签\",\n \"selectCategory\": \"选择分类\",\n \"chooseCategory\": \"选择一个分类...\",\n \"fragmentSelected\": \"已选择片段\",\n \"imageRegionSelected\": \"已选择图像区域\",\n \"complete\": \"注释完成!\",\n \"failed\": \"注释失败\"\n },\n \"UnifiedAnnotationsPanel\": {\n \"title\": \"注释\",\n \"statistics\": \"统计\",\n \"highlight\": \"高亮\",\n \"reference\": \"引用\",\n \"assessment\": \"评估\",\n \"comment\": \"评论\",\n \"tag\": \"标签\",\n \"annotationsFailed\": \"无法加载注释。\",\n \"retry\": \"重试\"\n },\n \"StatisticsPanel\": {\n \"title\": \"统计\",\n \"highlights\": \"高亮\",\n \"comments\": \"评论\",\n \"assessments\": \"评估\",\n \"tags\": \"标签\",\n \"references\": \"引用\",\n \"stub\": \"存根\",\n \"resolved\": \"已解析\",\n \"entityTypes\": \"实体类型\"\n },\n \"ReferencesPanel\": {\n \"title\": \"引用\",\n \"noReferences\": \"暂无引用。选择文本以创建对其他资源的引用。\",\n \"outgoingReferences\": \"外部引用\",\n \"incomingReferences\": \"传入引用\",\n \"noIncomingReferences\": \"无传入引用\",\n \"stub\": \"存根引用(未链接)\",\n \"resolved\": \"已解析引用(已链接)\",\n \"open\": \"打开\",\n \"unlink\": \"取消链接\",\n \"resolve\": \"解析引用\",\n \"cancel\": \"取消\",\n \"createReference\": \"创建引用\",\n \"entityTypesOptional\": \"实体类型(可选)\",\n \"fragmentSelected\": \"已选择片段\",\n \"imageRegionSelected\": \"已选择图像区域\",\n \"annotateReferences\": \"注释引用\",\n \"selectEntityTypes\": \"实体类型:\",\n \"select\": \"选择\",\n \"deselect\": \"取消选择\",\n \"noEntityTypes\": \"没有可用的实体类型\",\n \"typesSelected\": \"{count, plural, =1 {已选择 1 个类型} other {已选择 # 个类型}}\",\n \"annotate\": \"注释\",\n \"annotating\": \"正在注释...\",\n \"includeDescriptiveReferences\": \"包含描述性引用\",\n \"descriptiveReferencesTooltip\": \"同时查找诸如「首席执行官」、「科技巨头」、「物理学家」等短语(除名称外)\",\n \"annotationProgressTitle\": \"正在注释实体引用\",\n \"cancelAnnotation\": \"取消注释\",\n \"found\": \"找到 {{count}} 个\",\n \"complete\": \"注释完成!\",\n \"failed\": \"注释失败\",\n \"current\": \"当前:{{entityType}}\",\n \"loading\": \"加载中...\",\n \"loadingEllipsis\": \"加载中...\",\n \"untitledResource\": \"无标题资源\",\n \"noText\": \"无文本\",\n \"incomingReferencesFailed\": \"无法加载传入引用。\",\n \"retry\": \"重试\",\n \"entityTypesFailed\": \"无法加载实体类型。\"\n },\n \"KeyboardShortcuts\": {\n \"title\": \"键盘快捷键\",\n \"closeDialog\": \"关闭对话框\",\n \"or\": \"或\",\n \"navigationTitle\": \"导航\",\n \"navOpenSearch\": \"打开全局搜索\",\n \"navOpenSearchAlt\": \"打开全局搜索(备选方式)\",\n \"navCreateResource\": \"创建新资源\",\n \"navCloseOverlays\": \"关闭所有覆盖层(双击)\",\n \"navShowHelp\": \"显示键盘快捷键帮助\",\n \"sidebarTitle\": \"知识侧边栏\",\n \"sidebarCollapse\": \"折叠侧边栏\",\n \"sidebarExpand\": \"展开侧边栏\",\n \"sidebarPickup\": \"拾取资源标签页(聚焦时)\",\n \"sidebarMove\": \"移动资源标签页(拖动时)\",\n \"sidebarDrop\": \"放下资源标签页(拖动时)\",\n \"sidebarCancel\": \"取消拖动操作\",\n \"annotationsTitle\": \"资源注释\",\n \"annotHighlight\": \"从注释创建高亮(直接)\",\n \"annotReference\": \"打开注释的引用弹窗\",\n \"annotDelete\": \"删除聚焦的注释\",\n \"annotNavigate\": \"浏览注释\",\n \"annotNavigateBack\": \"向后浏览注释\",\n \"listsTitle\": \"列表与网格\",\n \"listsFilterNav\": \"浏览实体类型筛选器\",\n \"listsGridNav\": \"浏览资源网格\",\n \"listsJumpFirst\": \"跳转到第一项\",\n \"listsJumpLast\": \"跳转到最后一项\",\n \"searchModalTitle\": \"在搜索模态框中\",\n \"searchNav\": \"浏览搜索结果\",\n \"searchSelect\": \"选择结果\",\n \"searchClose\": \"关闭搜索\",\n \"modalTitle\": \"模态框控制\",\n \"modalClose\": \"关闭活动模态框\",\n \"modalNavForward\": \"向前浏览按钮\",\n \"modalNavBackward\": \"向后浏览按钮\",\n \"modalActivate\": \"激活聚焦的按钮\",\n \"accessibilityTitle\": \"无障碍\",\n \"a11ySkipLinks\": \"导航到跳转链接(在页面顶部时)\",\n \"a11yFollowLink\": \"跟随跳转链接\",\n \"macNote\": \"使用 Mac 键盘快捷键。Command 是 Command 键。\",\n \"windowsNote\": \"使用 Windows/Linux 键盘快捷键。Ctrl 是 Ctrl 键。\",\n \"footerHint\": \"随时按 {{key}} 显示此帮助\",\n \"close\": \"关闭\"\n },\n \"AnnotateToolbar\": {\n \"modeGroup\": \"模式\",\n \"browse\": \"浏览\",\n \"annotate\": \"注释\",\n \"selectionGroup\": \"动机\",\n \"clickGroup\": \"点击\",\n \"shapeGroup\": \"形状\",\n \"none\": \"无\",\n \"linking\": \"引用\",\n \"highlighting\": \"高亮\",\n \"assessing\": \"评估\",\n \"commenting\": \"评论\",\n \"tagging\": \"标签\",\n \"detail\": \"详情\",\n \"follow\": \"跟随\",\n \"deleting\": \"删除\",\n \"jsonld\": \"JSON-LD\",\n \"rectangle\": \"矩形\",\n \"circle\": \"圆形\",\n \"polygon\": \"多边形\"\n },\n \"CollapsibleResourceNavigation\": {\n \"title\": \"导航\",\n \"collapseSidebar\": \"折叠侧边栏\",\n \"expandSidebar\": \"展开侧边栏\",\n \"dragToReorder\": \"拖动以重新排序\",\n \"dragToReorderDoc\": \"拖动以重新排序 {{name}}\",\n \"closeResource\": \"关闭资源\",\n \"dragInstructions\": \"要重新排序资源:使用 Tab 导航到资源。按 Alt+上箭头向上移动或 Alt+下箭头向下移动。对于拖放操作:按空格键拾取项目。使用方向键移动它。再次按空格键放下。\"\n },\n \"ResourceViewer\": {\n \"deleteConfirmationTitle\": \"删除注释\",\n \"deleteConfirmationMessage\": \"您确定要删除此注释吗?此操作无法撤消。\",\n \"deleteConfirmationCancel\": \"取消\",\n \"deleteConfirmationDelete\": \"删除\"\n },\n \"Settings\": {\n \"title\": \"设置\",\n \"lineNumbers\": \"行号\",\n \"lineNumbersVisible\": \"显示\",\n \"lineNumbersHidden\": \"隐藏\",\n \"theme\": \"主题\",\n \"themeLight\": \"浅色\",\n \"themeDark\": \"深色\",\n \"themeSystem\": \"系统\",\n \"themeSystemActive\": \"系统({{mode}})\",\n \"themeModeActive\": \"使用{{mode}}模式\",\n \"language\": \"语言\",\n \"languageHint\": \"在主导航中更改语言\",\n \"languageChanging\": \"正在更改语言...\",\n \"hoverDelay\": \"悬停延迟\",\n \"hoverDelayFast\": \"快速\",\n \"hoverDelaySlow\": \"慢速\",\n \"hoverDelayDescription\": \"悬停效果出现前延迟 {{delay}}ms\"\n },\n \"AnnotateView\": {},\n \"ResourceGenerate\": {\n \"gatherTitle\": \"配置收集\",\n \"reviewTitle\": \"查看上下文\",\n \"configureTitle\": \"配置生成\",\n \"next\": \"下一步\",\n \"back\": \"返回\",\n \"cancel\": \"取消\",\n \"gatherIntro\": \"选择要包含在收集的上下文中的内容。\",\n \"includeContent\": \"包含资源内容\",\n \"includeSummary\": \"包含摘要\",\n \"gatherDepth\": \"深度\",\n \"gatherMaxResources\": \"最大资源数\",\n \"gatherButton\": \"收集\",\n \"excludeLabel\": \"从召回中排除\",\n \"loadingContext\": \"正在收集上下文...\",\n \"failedContext\": \"收集上下文失败\",\n \"sourceContextLabel\": \"资源\",\n \"connectionsLabel\": \"连接\",\n \"citedByLabel\": \"被引用\",\n \"resourceTitle\": \"新资源标题\",\n \"resourceTitlePlaceholder\": \"生成资源的标题...\",\n \"additionalInstructions\": \"附加说明\",\n \"additionalInstructionsPlaceholder\": \"生成的可选指导...\",\n \"language\": \"语言\",\n \"languageHelp\": \"生成资源的语言\",\n \"creativity\": \"创造力\",\n \"creativityFocused\": \"专注\",\n \"creativityCreative\": \"创造性\",\n \"maxLength\": \"最大长度\",\n \"maxLengthHelp\": \"最大令牌数\",\n \"generate\": \"生成\",\n \"progressTitle\": \"正在生成资源\",\n \"progressCancel\": \"取消生成\",\n \"progressInProgress\": \"正在生成…\",\n \"progressComplete\": \"生成完成!\",\n \"progressFailed\": \"生成失败\"\n },\n \"ReferenceWizard\": {\n \"gatherTitle\": \"已收集的上下文\",\n \"configureGenerationTitle\": \"配置生成\",\n \"configureSearchTitle\": \"配置搜索\",\n \"searchResultsTitle\": \"搜索结果\",\n \"sourceContextLabel\": \"资源中的注释上下文\",\n \"connectionsLabel\": \"对等注释\",\n \"citedByLabel\": \"资源被引用\",\n \"userHintLabel\": \"提示\",\n \"userHintPlaceholder\": \"描述此注释所指的内容...\",\n \"loadingContext\": \"正在收集上下文...\",\n \"failedContext\": \"收集上下文失败\",\n \"cancel\": \"取消\",\n \"generate\": \"生成\",\n \"compose\": \"编写\",\n \"resolutionStrategyLabel\": \"解析策略\",\n \"back\": \"返回\",\n \"link\": \"链接\",\n \"score\": \"评分\",\n \"noResults\": \"未找到结果\",\n \"resourceTitle\": \"资源标题\",\n \"resourceTitlePlaceholder\": \"输入资源标题...\",\n \"additionalInstructions\": \"附加说明\",\n \"additionalInstructionsPlaceholder\": \"输入附加说明...\",\n \"language\": \"语言\",\n \"languageHelp\": \"生成内容的语言\",\n \"creativity\": \"创造力\",\n \"creativityFocused\": \"专注\",\n \"creativityCreative\": \"创造性\",\n \"maxLength\": \"最大长度\",\n \"maxLengthHelp\": \"最大令牌数\",\n \"maxResults\": \"最大结果数\",\n \"semanticScoring\": \"语义评分\",\n \"semanticScoringHelp\": \"使用 AI 按语义相关性对结果进行评分\",\n \"searching\": \"搜索中...\",\n \"search\": \"搜索\"\n }\n}\n"],"mappings":"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","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@semiont/react-ui",
3
- "version": "0.5.24",
3
+ "version": "0.5.26",
4
4
  "engines": {
5
5
  "node": ">=24.0.0"
6
6
  },
@@ -94,8 +94,8 @@
94
94
  "@headlessui/react": "^2.2.10",
95
95
  "@testing-library/jest-dom": "^6.1.5",
96
96
  "@testing-library/react": "^16.1.0",
97
- "@types/react": "^19.2.16",
98
- "@types/react-dom": "^19",
97
+ "@types/react": "^19.2.18",
98
+ "@types/react-dom": "^19.2.4",
99
99
  "@vitest/coverage-v8": "^4.1.8",
100
100
  "autoprefixer": "^10.5.4",
101
101
  "axe-core": "^4.12.1",
@@ -104,7 +104,7 @@
104
104
  "jest-axe": "^10.0.0",
105
105
  "jsdom": "^29.1.1",
106
106
  "postcss-import": "^16.1.1",
107
- "rollup": "^4.61.0",
107
+ "rollup": "^4.62.3",
108
108
  "rollup-plugin-dts": "^6.4.1",
109
109
  "styled-components": "^6.4.3",
110
110
  "tsup": "^8.0.1",
@@ -122,10 +122,10 @@
122
122
  "directory": "packages/react-ui"
123
123
  },
124
124
  "dependencies": {
125
- "@semiont/core": "0.5.24",
126
- "@semiont/http-transport": "0.5.24",
127
- "@semiont/sdk": "0.5.24",
128
- "pdfjs-dist": "^6.1.200",
125
+ "@semiont/core": "0.5.26",
126
+ "@semiont/http-transport": "0.5.26",
127
+ "@semiont/sdk": "0.5.26",
128
+ "pdfjs-dist": "^6.2.108",
129
129
  "react-error-boundary": "^6.1.2",
130
130
  "react-markdown": "^10.1.0",
131
131
  "remark-gfm": "^4.0.1",
@@ -1,26 +1,38 @@
1
1
  'use client';
2
2
 
3
3
  import type { components } from '@semiont/core';
4
+ import { EntityFoundLog } from './EntityFoundLog';
4
5
 
5
6
  type JobProgress = components['schemas']['JobProgress'];
6
7
 
8
+ /**
9
+ * Every string this component renders. Required by default and with NO
10
+ * English fallbacks (ASSIST-SURFACE-WARTS Lane A): a `tr.x || 'X'` default
11
+ * turns a forgotten key into English text in a Japanese UI, silently and
12
+ * only at runtime. Required keys make the same mistake a type error at the
13
+ * call site. Only genuinely conditional copy is optional.
14
+ */
7
15
  export interface AssistProgressTranslations {
8
16
  /** Header title (e.g. "Annotating Entity References" / "Generating Resource"). Omit for the headerless inline style. */
9
17
  title?: string;
10
18
  /** Cancel-button title attribute. */
11
- cancel?: string;
19
+ cancel: string;
12
20
  /** Default in-progress status message (used when the job sends no `message`). */
13
- inProgress?: string;
21
+ inProgress: string;
14
22
  /** Status copy for the terminal 'complete' stage. */
15
- complete?: string;
23
+ complete: string;
16
24
  /** Fallback status copy for the terminal 'error' stage. */
17
- failed?: string;
18
- /** Completed entity-type log line (reference flow). */
25
+ failed: string;
26
+ /** Request-parameters block heading. */
27
+ paramsTitle: string;
28
+ /** Current-work detail line — the generic form, used by every flow. */
29
+ processing: (label: string) => string;
30
+ /** Completed entity-type log line (reference flow only). */
19
31
  found?: (count: number) => string;
20
- /** Current-work detail line (reference flow). */
32
+ /** Current-work detail line, reference-flow wording; falls back to `processing`. */
21
33
  current?: (label: string) => string;
22
34
  /** Dismiss-button label. */
23
- close?: string;
35
+ close: string;
24
36
  }
25
37
 
26
38
  export interface AssistProgressProps {
@@ -37,7 +49,7 @@ export interface AssistProgressProps {
37
49
  onDismiss?: () => void;
38
50
  /** Render the percentage bar (tag flow's visual; percentage itself comes from `progress`). */
39
51
  showPercentBar?: boolean;
40
- translations?: AssistProgressTranslations;
52
+ translations: AssistProgressTranslations;
41
53
  }
42
54
 
43
55
  /**
@@ -55,9 +67,12 @@ export function AssistProgress({
55
67
  onCancel,
56
68
  onDismiss,
57
69
  showPercentBar = false,
58
- translations: tr = {},
70
+ translations: tr,
59
71
  }: AssistProgressProps) {
60
72
  const terminal = progress.stage === 'complete' || progress.stage === 'error';
73
+ // The reference flow words this line its own way; everyone else gets the
74
+ // generic one. Both are translated — there is no untranslated branch.
75
+ const currentLabel = tr.current ?? tr.processing;
61
76
 
62
77
  return (
63
78
  <div className="semiont-annotation-progress" data-status={progress.stage} data-type={dataType}>
@@ -72,8 +87,8 @@ export function AssistProgress({
72
87
  <button
73
88
  onClick={onCancel}
74
89
  className="semiont-annotation-cancel"
75
- title={tr.cancel || 'Cancel'}
76
- aria-label={tr.cancel || 'Cancel'}
90
+ title={tr.cancel}
91
+ aria-label={tr.cancel}
77
92
  type="button"
78
93
  >
79
94
 
@@ -85,7 +100,7 @@ export function AssistProgress({
85
100
  {/* Request parameters */}
86
101
  {progress.requestParams && progress.requestParams.length > 0 && (
87
102
  <div className="semiont-annotation-progress__params" data-type={dataType}>
88
- <div className="semiont-annotation-progress__params-title">Request Parameters:</div>
103
+ <div className="semiont-annotation-progress__params-title">{tr.paramsTitle}</div>
89
104
  {progress.requestParams.map((param, idx) => (
90
105
  <div key={idx} className="semiont-annotation-progress__param">
91
106
  <span className="semiont-annotation-progress__param-label">{param.label}:</span> <span>{param.value}</span>
@@ -95,16 +110,8 @@ export function AssistProgress({
95
110
  )}
96
111
 
97
112
  {/* Completed entity-type log (reference flow) */}
98
- {tr.found && progress.completedEntityTypes && progress.completedEntityTypes.length > 0 && (
99
- <div className="semiont-annotation-log">
100
- {progress.completedEntityTypes.map((item, index) => (
101
- <div key={index} className="semiont-annotation-log-item">
102
- <span className="semiont-annotation-check">✓</span>
103
- <span className="semiont-annotation-entity-type">{item.entityType}:</span>
104
- <span>{tr.found!(item.foundCount)}</span>
105
- </div>
106
- ))}
107
- </div>
113
+ {tr.found && progress.completedEntityTypes && (
114
+ <EntityFoundLog entries={progress.completedEntityTypes} formatFound={tr.found} />
108
115
  )}
109
116
 
110
117
  {/* Status line with stage branching */}
@@ -112,20 +119,25 @@ export function AssistProgress({
112
119
  {progress.stage === 'complete' ? (
113
120
  <div className="semiont-annotation-progress__message">
114
121
  <span className="semiont-annotation-progress__icon">✅</span>
115
- {/* JobProgress.message is required but may be '' never blank a terminal line. */}
116
- <span>{tr.complete || progress.message || 'Complete'}</span>
122
+ {/* Same precedence as 'error' below: the job's own message carries
123
+ detail no static string can ("Created 14 highlights"), and
124
+ `tr.complete` covers the required-but-possibly-'' case so a
125
+ terminal line is never blank. NOTE: job messages are composed
126
+ backend-side and are not localized — a real gap, but a backend
127
+ one; see ASSIST-SURFACE-WARTS watch-items. */}
128
+ <span>{progress.message || tr.complete}</span>
117
129
  </div>
118
130
  ) : progress.stage === 'error' ? (
119
131
  <div className="semiont-annotation-progress__message">
120
132
  <span className="semiont-annotation-progress__icon">❌</span>
121
- <span>{progress.message || tr.failed || 'Failed'}</span>
133
+ <span>{progress.message || tr.failed}</span>
122
134
  </div>
123
135
  ) : (
124
136
  <div className="semiont-annotation-progress__message">
125
137
  <span className="semiont-annotation-progress__icon">✨</span>
126
138
  <span>
127
139
  {progress.message
128
- || (progress.currentEntityType && tr.current ? tr.current(progress.currentEntityType) : tr.inProgress)}
140
+ || (progress.currentEntityType ? currentLabel(progress.currentEntityType) : tr.inProgress)}
129
141
  </span>
130
142
  </div>
131
143
  )}
@@ -133,12 +145,12 @@ export function AssistProgress({
133
145
  {/* Current-work detail while running */}
134
146
  {!terminal && progress.currentEntityType && (
135
147
  <div className="semiont-annotation-progress__details">
136
- {tr.current ? tr.current(progress.currentEntityType) : `Processing: ${progress.currentEntityType}`}
148
+ {currentLabel(progress.currentEntityType)}
137
149
  </div>
138
150
  )}
139
151
  {!terminal && progress.currentCategory && (
140
152
  <div className="semiont-annotation-progress__details">
141
- Processing: {progress.currentCategory}
153
+ {tr.processing(progress.currentCategory)}
142
154
  {progress.processedCategories !== undefined && progress.totalCategories !== undefined && (
143
155
  <> ({progress.processedCategories}/{progress.totalCategories})</>
144
156
  )}
@@ -150,8 +162,8 @@ export function AssistProgress({
150
162
  <button
151
163
  onClick={onDismiss}
152
164
  className="semiont-annotation-progress__close"
153
- aria-label={tr.close || 'Dismiss'}
154
- title={tr.close || 'Dismiss'}
165
+ aria-label={tr.close}
166
+ title={tr.close}
155
167
  type="button"
156
168
  >
157
169
  ×
@@ -0,0 +1,38 @@
1
+ 'use client';
2
+
3
+ export interface EntityFoundEntry {
4
+ entityType: string;
5
+ foundCount: number;
6
+ }
7
+
8
+ export interface EntityFoundLogProps {
9
+ entries: EntityFoundEntry[];
10
+ /** Formats the per-entity count line, e.g. `(n) => t('found', { count: n })`. */
11
+ formatFound: (count: number) => string;
12
+ }
13
+
14
+ /**
15
+ * "✓ Person: 5 found" — the completed entity-type log.
16
+ *
17
+ * One markup for one concept (ASSIST-SURFACE-WARTS Lane B). This was two
18
+ * class families a single panel apart: the live progress display used
19
+ * `semiont-annotation-log*` while ReferencesPanel's post-run form log used
20
+ * `semiont-assist-widget__log*`, with the same rows rendered by hand in both.
21
+ * Presentational and provider-free, like AssistProgress — the caller brings
22
+ * the formatter.
23
+ */
24
+ export function EntityFoundLog({ entries, formatFound }: EntityFoundLogProps) {
25
+ if (entries.length === 0) return null;
26
+
27
+ return (
28
+ <div className="semiont-annotation-log">
29
+ {entries.map((item, index) => (
30
+ <div key={index} className="semiont-annotation-log-item">
31
+ <span className="semiont-annotation-check">✓</span>
32
+ <span className="semiont-annotation-entity-type">{item.entityType}:</span>
33
+ <span>{formatFound(item.foundCount)}</span>
34
+ </div>
35
+ ))}
36
+ </div>
37
+ );
38
+ }