@semiont/react-ui 0.5.5 → 0.5.7
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.
- package/README.md +59 -55
- package/dist/{PdfAnnotationCanvas.client-CN3C3S55.js → PdfAnnotationCanvas.client-NIMALXNZ.js} +7 -27
- package/dist/PdfAnnotationCanvas.client-NIMALXNZ.js.map +1 -0
- package/dist/{ar-U2EXWUMQ.js → ar-SONK6MON.js} +3 -7
- package/dist/ar-SONK6MON.js.map +1 -0
- package/dist/{bn-DRJGV772.js → bn-ZKPRITNG.js} +3 -7
- package/dist/bn-ZKPRITNG.js.map +1 -0
- package/dist/{chunk-3Q3TUKWP.js → chunk-Y2EEAOMZ.js} +29 -29
- package/dist/{cs-PTWDM23V.js → cs-LPXQ7NHQ.js} +3 -7
- package/dist/cs-LPXQ7NHQ.js.map +1 -0
- package/dist/{da-KSNIKYSS.js → da-6TKY7MCY.js} +6 -10
- package/dist/da-6TKY7MCY.js.map +1 -0
- package/dist/{de-F2XBEWFY.js → de-C3GNII74.js} +3 -7
- package/dist/de-C3GNII74.js.map +1 -0
- package/dist/{el-DLD2GWAP.js → el-UBCXQDJ7.js} +3 -7
- package/dist/el-UBCXQDJ7.js.map +1 -0
- package/dist/{es-WLPYWGB5.js → es-BQ23TRI7.js} +11 -15
- package/dist/es-BQ23TRI7.js.map +1 -0
- package/dist/{fa-BAXHSDZG.js → fa-AFTBZB77.js} +3 -7
- package/dist/fa-AFTBZB77.js.map +1 -0
- package/dist/{fi-FCHSYVOT.js → fi-WOYNLZC2.js} +3 -7
- package/dist/fi-WOYNLZC2.js.map +1 -0
- package/dist/{fr-3UERBSL6.js → fr-NDSMIFJM.js} +3 -7
- package/dist/fr-NDSMIFJM.js.map +1 -0
- package/dist/{he-F6F3FV2K.js → he-VJXVRDOY.js} +3 -7
- package/dist/he-VJXVRDOY.js.map +1 -0
- package/dist/{hi-4BK6IK7Q.js → hi-BF6PHIE2.js} +3 -7
- package/dist/hi-BF6PHIE2.js.map +1 -0
- package/dist/{id-7ECCWP3J.js → id-GXG5QCZY.js} +3 -7
- package/dist/id-GXG5QCZY.js.map +1 -0
- package/dist/index.css +103 -0
- package/dist/index.css.map +1 -1
- package/dist/index.d.ts +271 -120
- package/dist/index.js +877 -698
- package/dist/index.js.map +1 -1
- package/dist/{it-234Z6XK6.js → it-XKHHCBAF.js} +3 -7
- package/dist/it-XKHHCBAF.js.map +1 -0
- package/dist/{ja-PJWQI4OQ.js → ja-TX7VM4XD.js} +3 -7
- package/dist/ja-TX7VM4XD.js.map +1 -0
- package/dist/{ko-APUEW2RS.js → ko-DNC7EQ7J.js} +3 -7
- package/dist/ko-DNC7EQ7J.js.map +1 -0
- package/dist/{ms-PJBZWZWD.js → ms-POZGBKPH.js} +3 -7
- package/dist/ms-POZGBKPH.js.map +1 -0
- package/dist/{nl-L4C3ZBCU.js → nl-IRMTKI7Z.js} +4 -11
- package/dist/nl-IRMTKI7Z.js.map +1 -0
- package/dist/{no-QE5N5KNG.js → no-ZUDJA4S6.js} +20 -24
- package/dist/no-ZUDJA4S6.js.map +1 -0
- package/dist/{pl-5Q2D23PD.js → pl-2NGAXL5U.js} +3 -7
- package/dist/pl-2NGAXL5U.js.map +1 -0
- package/dist/{pt-AIGUOIOC.js → pt-ABMCXZUM.js} +118 -122
- package/dist/pt-ABMCXZUM.js.map +1 -0
- package/dist/{ro-T56CSHTY.js → ro-VOJP6O5X.js} +3 -7
- package/dist/ro-VOJP6O5X.js.map +1 -0
- package/dist/{sv-L4TJQ2UH.js → sv-4HVFIIE5.js} +43 -47
- package/dist/sv-4HVFIIE5.js.map +1 -0
- package/dist/test-utils.js +2 -2
- package/dist/test-utils.js.map +1 -1
- package/dist/{th-6O7Y6O2Q.js → th-IFPZP3HQ.js} +3 -7
- package/dist/th-IFPZP3HQ.js.map +1 -0
- package/dist/{tr-D4CQCSNO.js → tr-2GYEAMJ4.js} +3 -7
- package/dist/tr-2GYEAMJ4.js.map +1 -0
- package/dist/{uk-2HMQG6ND.js → uk-XCJBVLLD.js} +3 -7
- package/dist/uk-XCJBVLLD.js.map +1 -0
- package/dist/{vi-XVJ4RUEJ.js → vi-4FR7CB2F.js} +3 -7
- package/dist/vi-4FR7CB2F.js.map +1 -0
- package/dist/{zh-K2KDPGHK.js → zh-NSKFOINB.js} +3 -7
- package/dist/zh-NSKFOINB.js.map +1 -0
- package/package.json +17 -13
- package/src/components/Button/__tests__/Button.test.tsx +0 -2
- package/src/components/CodeMirrorRenderer.tsx +2 -0
- package/src/components/ErrorBoundary.tsx +0 -9
- package/src/components/ProtectedErrorBoundary.css +119 -0
- package/src/components/ProtectedErrorBoundary.tsx +24 -15
- package/src/components/__tests__/AnnotateReferencesProgressWidget.test.tsx +0 -1
- package/src/components/__tests__/ErrorBoundary.test.tsx +20 -13
- package/src/components/__tests__/LiveRegion.hooks.test.tsx +1 -1
- package/src/components/__tests__/ProtectedErrorBoundary.test.tsx +2 -1
- package/src/components/__tests__/ResizeHandle.test.tsx +0 -1
- package/src/components/__tests__/SessionExpiryBanner.test.tsx +0 -1
- package/src/components/__tests__/StatusDisplay.test.tsx +0 -1
- package/src/components/__tests__/Toast.test.tsx +2 -3
- package/src/components/__tests__/Toolbar.test.tsx +0 -1
- package/src/components/annotation/annotations.css +14 -0
- package/src/components/annotation-popups/__tests__/JsonLdView.test.tsx +3 -5
- package/src/components/annotation-popups/__tests__/SharedPopupElements.test.tsx +0 -1
- package/src/components/branding/__tests__/SemiontBranding.test.tsx +1 -2
- package/src/components/layout/__tests__/LeftSidebar.test.tsx +5 -6
- package/src/components/layout/__tests__/PageLayout.test.tsx +1 -3
- package/src/components/layout/__tests__/SkipLinks.a11y.test.tsx +8 -8
- package/src/components/layout/__tests__/UnifiedHeader.test.tsx +12 -1
- package/src/components/modals/__tests__/KeyboardShortcutsHelpModal.test.tsx +0 -1
- package/src/components/modals/__tests__/PermissionDeniedModal.test.tsx +3 -4
- package/src/components/modals/__tests__/ResourceSearchModal.test.tsx +1 -2
- package/src/components/modals/__tests__/SearchModal.basic.test.tsx +1 -1
- package/src/components/modals/__tests__/SearchModal.keyboard.test.tsx +0 -5
- package/src/components/modals/__tests__/SearchModal.search-wiring.test.tsx +1 -2
- package/src/components/modals/__tests__/SearchModal.visual.test.tsx +2 -2
- package/src/components/modals/__tests__/SessionExpiredModal.test.tsx +0 -1
- package/src/components/navigation/NavigationMenu.tsx +1 -1
- package/src/components/navigation/__tests__/Footer.a11y.test.tsx +4 -0
- package/src/components/navigation/__tests__/Footer.test.tsx +3 -6
- package/src/components/navigation/__tests__/NavigationMenu.a11y.test.tsx +1 -1
- package/src/components/navigation/__tests__/NavigationMenu.test.tsx +7 -9
- package/src/components/navigation/__tests__/ObservableLink.test.tsx +0 -1
- package/src/components/navigation/__tests__/SimpleNavigation.test.tsx +1 -2
- package/src/components/navigation/__tests__/SortableResourceTab.test.tsx +0 -1
- package/src/components/pdf-annotation/PdfAnnotationCanvas.tsx +6 -4
- package/src/components/pdf-annotation/__tests__/PdfAnnotationCanvas.test.tsx +10 -19
- package/src/components/resource/AnnotateView.tsx +35 -37
- package/src/components/resource/BrowseView.tsx +31 -31
- package/src/components/resource/__tests__/AnnotationHistory.test.tsx +0 -1
- package/src/components/resource/__tests__/BrowseView.test.tsx +12 -14
- package/src/components/resource/__tests__/HistoryEvent.test.tsx +0 -5
- package/src/components/resource/__tests__/ResourceViewer.mode-switch.test.tsx +4 -6
- package/src/components/resource/__tests__/event-formatting.test.ts +1 -1
- package/src/components/resource/panels/CollaborationPanel.tsx +1 -1
- package/src/components/resource/panels/JsonLdPanel.tsx +33 -16
- package/src/components/resource/panels/ReferencesPanel.tsx +1 -1
- package/src/components/resource/panels/__tests__/AssessmentEntry.test.tsx +4 -5
- package/src/components/resource/panels/__tests__/AssessmentPanel.test.tsx +8 -7
- package/src/components/resource/panels/__tests__/AssistSection.test.tsx +14 -10
- package/src/components/resource/panels/__tests__/CollaborationPanel.test.tsx +0 -1
- package/src/components/resource/panels/__tests__/CommentEntry.test.tsx +31 -18
- package/src/components/resource/panels/__tests__/CommentsPanel.test.tsx +7 -6
- package/src/components/resource/panels/__tests__/HighlightEntry.test.tsx +5 -6
- package/src/components/resource/panels/__tests__/HighlightPanel.annotationProgress.test.tsx +19 -13
- package/src/components/resource/panels/__tests__/JsonLdPanel.test.tsx +95 -426
- package/src/components/resource/panels/__tests__/PanelHeader.test.tsx +0 -1
- package/src/components/resource/panels/__tests__/ReferenceEntry.test.tsx +5 -5
- package/src/components/resource/panels/__tests__/ReferencesPanel.test.tsx +40 -7
- package/src/components/resource/panels/__tests__/ResourceInfoPanel.test.tsx +4 -4
- package/src/components/resource/panels/__tests__/StatisticsPanel.test.tsx +30 -32
- package/src/components/resource/panels/__tests__/TagEntry.test.tsx +6 -6
- package/src/components/resource/panels/__tests__/TaggingPanel.test.tsx +7 -6
- package/src/components/settings/__tests__/SettingsPanel.test.tsx +0 -1
- package/src/components/viewers/__tests__/ImageViewer.test.tsx +0 -1
- package/src/features/admin-exchange/__tests__/AdminExchangePage.test.tsx +7 -10
- package/src/features/admin-exchange/__tests__/ImportProgress.test.tsx +38 -27
- package/src/features/admin-exchange/components/ImportProgress.tsx +28 -34
- package/src/features/auth/__tests__/SignInForm.a11y.test.tsx +2 -0
- package/src/features/auth/__tests__/SignUpForm.a11y.test.tsx +11 -12
- package/src/features/auth/__tests__/SignUpForm.test.tsx +3 -3
- package/src/features/moderate-tag-schemas/components/TagSchemasPage.tsx +1 -0
- package/src/features/moderation-linked-data/__tests__/LinkedDataPage.test.tsx +11 -9
- package/src/features/resource-compose/__tests__/ResourceComposePage.test.tsx +2 -1
- package/src/features/resource-compose/components/ResourceComposePage.tsx +36 -9
- package/src/features/resource-compose/state/compose-page-state-unit.ts +5 -8
- package/src/features/resource-discovery/__tests__/ResourceCard.test.tsx +0 -1
- package/src/features/resource-discovery/__tests__/ResourceDiscoveryPage.test.tsx +33 -35
- package/src/features/resource-discovery/components/ResourceDiscoveryPage.tsx +12 -11
- package/src/features/resource-discovery/state/__tests__/discover-state-unit.test.ts +204 -11
- package/src/features/resource-discovery/state/discover-state-unit.ts +70 -11
- package/src/features/resource-viewer/__tests__/ResourceViewerPage.test.tsx +2 -2
- package/src/features/resource-viewer/components/ResourceViewerPage.tsx +10 -7
- package/src/features/resource-viewer/state/__tests__/resource-viewer-page-state-unit.test.ts +37 -1
- package/src/features/resource-viewer/state/resource-viewer-page-state-unit.ts +14 -7
- package/src/integrations/__tests__/css-modules-helper.test.tsx +2 -3
- package/src/integrations/__tests__/styled-components-theme.test.ts +1 -3
- package/src/styles/features/exchange.css +0 -30
- package/src/styles/index.css +1 -0
- package/translations/ar.json +1 -3
- package/translations/bn.json +1 -3
- package/translations/cs.json +1 -3
- package/translations/da.json +4 -6
- package/translations/de.json +1 -3
- package/translations/el.json +1 -3
- package/translations/es.json +9 -11
- package/translations/fa.json +1 -3
- package/translations/fi.json +1 -3
- package/translations/fr.json +1 -3
- package/translations/he.json +1 -3
- package/translations/hi.json +1 -3
- package/translations/id.json +1 -3
- package/translations/it.json +1 -3
- package/translations/ja.json +1 -3
- package/translations/ko.json +1 -3
- package/translations/ms.json +1 -3
- package/translations/nl.json +2 -7
- package/translations/no.json +18 -20
- package/translations/pl.json +1 -3
- package/translations/pt.json +116 -118
- package/translations/ro.json +1 -3
- package/translations/sv.json +41 -43
- package/translations/th.json +1 -3
- package/translations/tr.json +1 -3
- package/translations/uk.json +1 -3
- package/translations/vi.json +1 -3
- package/translations/zh.json +1 -3
- package/dist/PdfAnnotationCanvas.client-CN3C3S55.js.map +0 -1
- package/dist/ar-U2EXWUMQ.js.map +0 -1
- package/dist/bn-DRJGV772.js.map +0 -1
- package/dist/cs-PTWDM23V.js.map +0 -1
- package/dist/da-KSNIKYSS.js.map +0 -1
- package/dist/de-F2XBEWFY.js.map +0 -1
- package/dist/el-DLD2GWAP.js.map +0 -1
- package/dist/es-WLPYWGB5.js.map +0 -1
- package/dist/fa-BAXHSDZG.js.map +0 -1
- package/dist/fi-FCHSYVOT.js.map +0 -1
- package/dist/fr-3UERBSL6.js.map +0 -1
- package/dist/he-F6F3FV2K.js.map +0 -1
- package/dist/hi-4BK6IK7Q.js.map +0 -1
- package/dist/id-7ECCWP3J.js.map +0 -1
- package/dist/it-234Z6XK6.js.map +0 -1
- package/dist/ja-PJWQI4OQ.js.map +0 -1
- package/dist/ko-APUEW2RS.js.map +0 -1
- package/dist/ms-PJBZWZWD.js.map +0 -1
- package/dist/nl-L4C3ZBCU.js.map +0 -1
- package/dist/no-QE5N5KNG.js.map +0 -1
- package/dist/pl-5Q2D23PD.js.map +0 -1
- package/dist/pt-AIGUOIOC.js.map +0 -1
- package/dist/ro-T56CSHTY.js.map +0 -1
- package/dist/sv-L4TJQ2UH.js.map +0 -1
- package/dist/th-6O7Y6O2Q.js.map +0 -1
- package/dist/tr-D4CQCSNO.js.map +0 -1
- package/dist/uk-2HMQG6ND.js.map +0 -1
- package/dist/vi-XVJ4RUEJ.js.map +0 -1
- package/dist/zh-K2KDPGHK.js.map +0 -1
- /package/dist/{chunk-3Q3TUKWP.js.map → chunk-Y2EEAOMZ.js.map} +0 -0
package/translations/sv.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"Toolbar": {
|
|
3
|
-
"annotations": "
|
|
3
|
+
"annotations": "Annoteringar",
|
|
4
4
|
"history": "Historik",
|
|
5
5
|
"resourceInfo": "Resursinformation",
|
|
6
6
|
"collaboration": "Samarbete",
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
"loading": "Laddar...",
|
|
54
54
|
"user": "Användare",
|
|
55
55
|
"viewOriginal": "Visa original",
|
|
56
|
-
"viewAnnotation": "Visa
|
|
56
|
+
"viewAnnotation": "Visa annotering: {{content}}",
|
|
57
57
|
"resourceCreated": "Resurs skapad",
|
|
58
58
|
"resourceCloned": "Klonad",
|
|
59
59
|
"resourceArchived": "Arkiverad",
|
|
@@ -67,10 +67,11 @@
|
|
|
67
67
|
"entitytagRemoved": "Tagg borttagen",
|
|
68
68
|
"assessmentAdded": "Bedömning tillagd",
|
|
69
69
|
"assessmentRemoved": "Bedömning borttagen",
|
|
70
|
-
"annotationAdded": "
|
|
71
|
-
"annotationRemoved": "
|
|
72
|
-
"annotationBodyUpdated": "
|
|
70
|
+
"annotationAdded": "Annotering tillagd",
|
|
71
|
+
"annotationRemoved": "Annotering borttagen",
|
|
72
|
+
"annotationBodyUpdated": "Annotering uppdaterad",
|
|
73
73
|
"jobEvent": "Jobbhändelse",
|
|
74
|
+
"embeddingComputed": "Embedding beräknad",
|
|
74
75
|
"justNow": "just nu",
|
|
75
76
|
"minutesAgo": "{{count}}m sedan",
|
|
76
77
|
"hoursAgo": "{{count}}t sedan",
|
|
@@ -83,12 +84,12 @@
|
|
|
83
84
|
"save": "Spara",
|
|
84
85
|
"cancel": "Avbryt",
|
|
85
86
|
"edit": "Redigera",
|
|
86
|
-
"annotateComments": "
|
|
87
|
+
"annotateComments": "Annotera kommentarer",
|
|
87
88
|
"instructions": "Instruktioner",
|
|
88
89
|
"optional": "(valfritt)",
|
|
89
90
|
"instructionsPlaceholder": "t.ex. Fokusera på teknisk terminologi...",
|
|
90
|
-
"annotate": "
|
|
91
|
-
"annotating": "
|
|
91
|
+
"annotate": "Annotera",
|
|
92
|
+
"annotating": "Annoterar...",
|
|
92
93
|
"toneLabel": "Ton",
|
|
93
94
|
"toneOptional": "(valfritt)",
|
|
94
95
|
"toneScholarly": "Akademisk",
|
|
@@ -104,13 +105,13 @@
|
|
|
104
105
|
},
|
|
105
106
|
"HighlightPanel": {
|
|
106
107
|
"title": "Markeringar",
|
|
107
|
-
"noHighlights": "Inga markeringar ännu. Använd AI-
|
|
108
|
-
"annotateHighlights": "
|
|
108
|
+
"noHighlights": "Inga markeringar ännu. Använd AI-annotering för att hitta viktiga passager.",
|
|
109
|
+
"annotateHighlights": "Annotera markeringar",
|
|
109
110
|
"instructions": "Instruktioner",
|
|
110
111
|
"optional": "(valfritt)",
|
|
111
112
|
"instructionsPlaceholder": "t.ex. Fokusera på viktiga tekniska begrepp...",
|
|
112
|
-
"annotate": "
|
|
113
|
-
"annotating": "
|
|
113
|
+
"annotate": "Annotera",
|
|
114
|
+
"annotating": "Annoterar...",
|
|
114
115
|
"cancel": "Avbryt",
|
|
115
116
|
"densityLabel": "Täthet",
|
|
116
117
|
"densitySparse": "Gles",
|
|
@@ -119,16 +120,16 @@
|
|
|
119
120
|
},
|
|
120
121
|
"AssessmentPanel": {
|
|
121
122
|
"title": "Bedömningar",
|
|
122
|
-
"noAssessments": "Inga bedömningar ännu. Använd AI-
|
|
123
|
+
"noAssessments": "Inga bedömningar ännu. Använd AI-annotering för att utvärdera passager.",
|
|
123
124
|
"assessmentPlaceholder": "Skriv din bedömning här...",
|
|
124
125
|
"save": "Spara",
|
|
125
126
|
"cancel": "Avbryt",
|
|
126
|
-
"annotateAssessments": "
|
|
127
|
+
"annotateAssessments": "Annotera bedömningar",
|
|
127
128
|
"instructions": "Instruktioner",
|
|
128
129
|
"optional": "(valfritt)",
|
|
129
130
|
"instructionsPlaceholder": "t.ex. Utvärdera påståenden för noggrannhet och bevisning...",
|
|
130
|
-
"annotate": "
|
|
131
|
-
"annotating": "
|
|
131
|
+
"annotate": "Annotera",
|
|
132
|
+
"annotating": "Annoterar...",
|
|
132
133
|
"toneLabel": "Ton",
|
|
133
134
|
"toneOptional": "(valfritt)",
|
|
134
135
|
"toneAnalytical": "Analytisk",
|
|
@@ -144,13 +145,13 @@
|
|
|
144
145
|
},
|
|
145
146
|
"TaggingPanel": {
|
|
146
147
|
"title": "Taggar",
|
|
147
|
-
"noTags": "Inga taggar ännu. Använd AI-
|
|
148
|
+
"noTags": "Inga taggar ännu. Använd AI-annotering för att identifiera strukturella roller.",
|
|
148
149
|
"noSchemas": "Inga tag-scheman registrerade för denna kunskapsbas. En KB-administratör måste registrera minst ett strukturanalys-schema (t.ex. via `register-tag-schemas`-färdigheten) innan tagging kan användas.",
|
|
149
|
-
"annotateTags": "
|
|
150
|
+
"annotateTags": "Annotera taggar",
|
|
150
151
|
"selectSchema": "Välj ramverk",
|
|
151
152
|
"selectCategories": "Välj kategorier",
|
|
152
|
-
"annotate": "
|
|
153
|
-
"annotating": "
|
|
153
|
+
"annotate": "Annotera",
|
|
154
|
+
"annotating": "Annoterar...",
|
|
154
155
|
"cancel": "Avbryt",
|
|
155
156
|
"selectAll": "Välj alla",
|
|
156
157
|
"deselectAll": "Avmarkera alla",
|
|
@@ -162,7 +163,7 @@
|
|
|
162
163
|
"imageRegionSelected": "Bildområde valt"
|
|
163
164
|
},
|
|
164
165
|
"UnifiedAnnotationsPanel": {
|
|
165
|
-
"title": "
|
|
166
|
+
"title": "Annoteringar",
|
|
166
167
|
"statistics": "Statistik",
|
|
167
168
|
"highlight": "Markeringar",
|
|
168
169
|
"reference": "Referenser",
|
|
@@ -197,21 +198,21 @@
|
|
|
197
198
|
"entityTypesOptional": "Entitetstyper (valfritt)",
|
|
198
199
|
"fragmentSelected": "Fragment valt",
|
|
199
200
|
"imageRegionSelected": "Bildområde valt",
|
|
200
|
-
"annotateReferences": "
|
|
201
|
+
"annotateReferences": "Annotera referenser",
|
|
201
202
|
"selectEntityTypes": "Entitetstyper:",
|
|
202
203
|
"select": "Välj",
|
|
203
204
|
"deselect": "Avmarkera",
|
|
204
205
|
"noEntityTypes": "Inga entitetstyper tillgängliga",
|
|
205
206
|
"typesSelected": "{count, plural, =1 {1 typ vald} other {# typer valda}}",
|
|
206
|
-
"annotate": "
|
|
207
|
-
"annotating": "
|
|
207
|
+
"annotate": "Annotera",
|
|
208
|
+
"annotating": "Annoterar...",
|
|
208
209
|
"includeDescriptiveReferences": "Inkludera beskrivande referenser",
|
|
209
210
|
"descriptiveReferencesTooltip": "Hitta även fraser som 'VD:n', 'teknikjätten', 'fysikern' (utöver namn)",
|
|
210
|
-
"annotationProgressTitle": "
|
|
211
|
-
"cancelAnnotation": "Avbryt
|
|
211
|
+
"annotationProgressTitle": "Annoterar entitetsreferenser",
|
|
212
|
+
"cancelAnnotation": "Avbryt annotering",
|
|
212
213
|
"found": "{{count}} hittade",
|
|
213
|
-
"complete": "
|
|
214
|
-
"failed": "
|
|
214
|
+
"complete": "Annotering klar!",
|
|
215
|
+
"failed": "Annotering misslyckades",
|
|
215
216
|
"current": "Aktuell: {{entityType}}",
|
|
216
217
|
"closeProgress": "Stäng",
|
|
217
218
|
"loading": "laddar...",
|
|
@@ -236,12 +237,12 @@
|
|
|
236
237
|
"sidebarMove": "Flytta resursflik (när du drar)",
|
|
237
238
|
"sidebarDrop": "Släpp resursflik (när du drar)",
|
|
238
239
|
"sidebarCancel": "Avbryt dragoperation",
|
|
239
|
-
"annotationsTitle": "
|
|
240
|
-
"annotHighlight": "Skapa markering från
|
|
241
|
-
"annotReference": "Öppna referenspopup för
|
|
242
|
-
"annotDelete": "Radera fokuserad
|
|
243
|
-
"annotNavigate": "Navigera genom
|
|
244
|
-
"annotNavigateBack": "Navigera
|
|
240
|
+
"annotationsTitle": "Resursannoteringar",
|
|
241
|
+
"annotHighlight": "Skapa markering från annotering (direkt)",
|
|
242
|
+
"annotReference": "Öppna referenspopup för annotering",
|
|
243
|
+
"annotDelete": "Radera fokuserad annotering",
|
|
244
|
+
"annotNavigate": "Navigera genom annoteringar",
|
|
245
|
+
"annotNavigateBack": "Navigera annoteringar bakåt",
|
|
245
246
|
"listsTitle": "Listor och rutnät",
|
|
246
247
|
"listsFilterNav": "Navigera entitetstypsfilter",
|
|
247
248
|
"listsGridNav": "Navigera resursrutnät",
|
|
@@ -267,7 +268,7 @@
|
|
|
267
268
|
"AnnotateToolbar": {
|
|
268
269
|
"modeGroup": "Läge",
|
|
269
270
|
"browse": "Bläddra",
|
|
270
|
-
"annotate": "
|
|
271
|
+
"annotate": "Annotera",
|
|
271
272
|
"selectionGroup": "Motivation",
|
|
272
273
|
"clickGroup": "Klick",
|
|
273
274
|
"shapeGroup": "Form",
|
|
@@ -295,8 +296,8 @@
|
|
|
295
296
|
"dragInstructions": "För att ordna om resurser: Använd Tab för att navigera till en resurs. Tryck Alt+uppåt-pil för att flytta upp eller Alt+nedåt-pil för att flytta ned. För dra och släpp: Tryck mellanslag för att plocka upp objektet. Använd piltangenter för att flytta det. Tryck mellanslag igen för att släppa."
|
|
296
297
|
},
|
|
297
298
|
"ResourceViewer": {
|
|
298
|
-
"deleteConfirmationTitle": "Radera
|
|
299
|
-
"deleteConfirmationMessage": "Är du säker på att du vill radera denna
|
|
299
|
+
"deleteConfirmationTitle": "Radera annotering",
|
|
300
|
+
"deleteConfirmationMessage": "Är du säker på att du vill radera denna annotering? Denna åtgärd kan inte ångras.",
|
|
300
301
|
"deleteConfirmationCancel": "Avbryt",
|
|
301
302
|
"deleteConfirmationDelete": "Radera"
|
|
302
303
|
},
|
|
@@ -325,11 +326,11 @@
|
|
|
325
326
|
"configureGenerationTitle": "Konfigurera generering",
|
|
326
327
|
"configureSearchTitle": "Konfigurera sökning",
|
|
327
328
|
"searchResultsTitle": "Sökresultat",
|
|
328
|
-
"sourceContextLabel": "
|
|
329
|
-
"connectionsLabel": "
|
|
329
|
+
"sourceContextLabel": "Annoteringens kontext i resurs",
|
|
330
|
+
"connectionsLabel": "Peerannoteringar",
|
|
330
331
|
"citedByLabel": "Resurs citerad av",
|
|
331
332
|
"userHintLabel": "Ledtråd",
|
|
332
|
-
"userHintPlaceholder": "Beskriv vad denna
|
|
333
|
+
"userHintPlaceholder": "Beskriv vad denna annotering hänvisar till...",
|
|
333
334
|
"loadingContext": "Samlar kontext...",
|
|
334
335
|
"failedContext": "Misslyckades med att samla kontext",
|
|
335
336
|
"cancel": "Avbryt",
|
|
@@ -356,8 +357,5 @@
|
|
|
356
357
|
"semanticScoringHelp": "Använd AI för att poängsätta resultat efter semantisk relevans",
|
|
357
358
|
"searching": "Söker...",
|
|
358
359
|
"search": "Sök"
|
|
359
|
-
},
|
|
360
|
-
"History": {
|
|
361
|
-
"embeddingComputed": "Embedding beräknad"
|
|
362
360
|
}
|
|
363
361
|
}
|
package/translations/th.json
CHANGED
|
@@ -71,6 +71,7 @@
|
|
|
71
71
|
"annotationRemoved": "ลบคำอธิบายประกอบแล้ว",
|
|
72
72
|
"annotationBodyUpdated": "อัปเดตคำอธิบายประกอบแล้ว",
|
|
73
73
|
"jobEvent": "เหตุการณ์งาน",
|
|
74
|
+
"embeddingComputed": "คำนวณเอ็มเบดดิงแล้ว",
|
|
74
75
|
"justNow": "เมื่อสักครู่",
|
|
75
76
|
"minutesAgo": "{{count}} นาทีที่แล้ว",
|
|
76
77
|
"hoursAgo": "{{count}} ชม. ที่แล้ว",
|
|
@@ -356,8 +357,5 @@
|
|
|
356
357
|
"semanticScoringHelp": "ใช้ AI เพื่อให้คะแนนผลลัพธ์ตามความเกี่ยวข้องเชิงความหมาย",
|
|
357
358
|
"searching": "กำลังค้นหา...",
|
|
358
359
|
"search": "ค้นหา"
|
|
359
|
-
},
|
|
360
|
-
"History": {
|
|
361
|
-
"embeddingComputed": "คำนวณเอ็มเบดดิงแล้ว"
|
|
362
360
|
}
|
|
363
361
|
}
|
package/translations/tr.json
CHANGED
|
@@ -71,6 +71,7 @@
|
|
|
71
71
|
"annotationRemoved": "Açıklama Kaldırıldı",
|
|
72
72
|
"annotationBodyUpdated": "Açıklama Güncellendi",
|
|
73
73
|
"jobEvent": "İş Olayı",
|
|
74
|
+
"embeddingComputed": "Gömme hesaplandı",
|
|
74
75
|
"justNow": "az önce",
|
|
75
76
|
"minutesAgo": "{{count}}dk önce",
|
|
76
77
|
"hoursAgo": "{{count}}sa önce",
|
|
@@ -356,8 +357,5 @@
|
|
|
356
357
|
"semanticScoringHelp": "Sonuçları anlamsal alaka düzeyine göre puanlamak için yapay zeka kullanın",
|
|
357
358
|
"searching": "Aranıyor...",
|
|
358
359
|
"search": "Ara"
|
|
359
|
-
},
|
|
360
|
-
"History": {
|
|
361
|
-
"embeddingComputed": "Gömme hesaplandı"
|
|
362
360
|
}
|
|
363
361
|
}
|
package/translations/uk.json
CHANGED
|
@@ -71,6 +71,7 @@
|
|
|
71
71
|
"annotationRemoved": "Анотацію видалено",
|
|
72
72
|
"annotationBodyUpdated": "Анотацію оновлено",
|
|
73
73
|
"jobEvent": "Подія завдання",
|
|
74
|
+
"embeddingComputed": "Ембединг обчислено",
|
|
74
75
|
"justNow": "щойно",
|
|
75
76
|
"minutesAgo": "{{count}}хв тому",
|
|
76
77
|
"hoursAgo": "{{count}}год тому",
|
|
@@ -356,8 +357,5 @@
|
|
|
356
357
|
"semanticScoringHelp": "Використовувати ШІ для оцінки результатів за семантичною релевантністю",
|
|
357
358
|
"searching": "Пошук...",
|
|
358
359
|
"search": "Пошук"
|
|
359
|
-
},
|
|
360
|
-
"History": {
|
|
361
|
-
"embeddingComputed": "Ембединг обчислено"
|
|
362
360
|
}
|
|
363
361
|
}
|
package/translations/vi.json
CHANGED
|
@@ -71,6 +71,7 @@
|
|
|
71
71
|
"annotationRemoved": "Đã xóa chú thích",
|
|
72
72
|
"annotationBodyUpdated": "Đã cập nhật chú thích",
|
|
73
73
|
"jobEvent": "Sự kiện tác vụ",
|
|
74
|
+
"embeddingComputed": "Đã tính embedding",
|
|
74
75
|
"justNow": "vừa xong",
|
|
75
76
|
"minutesAgo": "{{count}} phút trước",
|
|
76
77
|
"hoursAgo": "{{count}} giờ trước",
|
|
@@ -356,8 +357,5 @@
|
|
|
356
357
|
"semanticScoringHelp": "Sử dụng AI để chấm điểm kết quả theo mức độ liên quan ngữ nghĩa",
|
|
357
358
|
"searching": "Đang tìm kiếm...",
|
|
358
359
|
"search": "Tìm kiếm"
|
|
359
|
-
},
|
|
360
|
-
"History": {
|
|
361
|
-
"embeddingComputed": "Đã tính embedding"
|
|
362
360
|
}
|
|
363
361
|
}
|
package/translations/zh.json
CHANGED
|
@@ -71,6 +71,7 @@
|
|
|
71
71
|
"annotationRemoved": "已移除注释",
|
|
72
72
|
"annotationBodyUpdated": "已更新注释",
|
|
73
73
|
"jobEvent": "任务事件",
|
|
74
|
+
"embeddingComputed": "嵌入计算完成",
|
|
74
75
|
"justNow": "刚刚",
|
|
75
76
|
"minutesAgo": "{{count}}分钟前",
|
|
76
77
|
"hoursAgo": "{{count}}小时前",
|
|
@@ -356,8 +357,5 @@
|
|
|
356
357
|
"semanticScoringHelp": "使用 AI 按语义相关性对结果进行评分",
|
|
357
358
|
"searching": "搜索中...",
|
|
358
359
|
"search": "搜索"
|
|
359
|
-
},
|
|
360
|
-
"History": {
|
|
361
|
-
"embeddingComputed": "嵌入计算完成"
|
|
362
360
|
}
|
|
363
361
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/pdf-annotation/PdfAnnotationCanvas.tsx","../src/lib/pdf-coordinates.ts","../src/lib/browser-pdfjs.ts"],"sourcesContent":["'use client';\n\nimport React, { useRef, useState, useCallback, useEffect, useMemo } from 'react';\nimport type { Annotation } from '@semiont/core';\nimport { getTargetSelector } from '@semiont/core';\nimport { createHoverHandlers, type SemiontSession } from '@semiont/sdk';\nimport type { SelectionMotivation } from '../annotation/AnnotateToolbar';\nimport {\n canvasToPdfCoordinates,\n pdfToCanvasCoordinates,\n createFragmentSelector,\n parseFragmentSelector,\n getPageFromFragment,\n type CanvasRectangle\n} from '../../lib/pdf-coordinates';\nimport {\n loadPdfDocument,\n renderPdfPageToDataUrl,\n type PDFDocumentProxy\n} from '../../lib/browser-pdfjs';\nimport './PdfAnnotationCanvas.css';\n\nexport type DrawingMode = 'rectangle' | 'circle' | 'polygon' | null;\n\n/**\n * Get color for annotation based on motivation\n */\nfunction getMotivationColor(motivation: SelectionMotivation | null): { stroke: string; fill: string } {\n if (!motivation) {\n return { stroke: 'rgb(156, 163, 175)', fill: 'rgba(156, 163, 175, 0.2)' };\n }\n\n switch (motivation) {\n case 'highlighting':\n return { stroke: 'rgb(250, 204, 21)', fill: 'rgba(250, 204, 21, 0.3)' };\n case 'linking':\n return { stroke: 'rgb(59, 130, 246)', fill: 'rgba(59, 130, 246, 0.2)' };\n case 'assessing':\n return { stroke: 'rgb(239, 68, 68)', fill: 'rgba(239, 68, 68, 0.2)' };\n case 'commenting':\n return { stroke: 'rgb(255, 255, 255)', fill: 'rgba(255, 255, 255, 0.2)' };\n default:\n return { stroke: 'rgb(156, 163, 175)', fill: 'rgba(156, 163, 175, 0.2)' };\n }\n}\n\ninterface PdfAnnotationCanvasProps {\n pdfUrl: string;\n existingAnnotations?: Annotation[];\n drawingMode: DrawingMode;\n selectedMotivation?: SelectionMotivation | null;\n session?: SemiontSession | null | undefined;\n hoveredAnnotationId?: string | null;\n selectedAnnotationId?: string | null;\n hoverDelayMs?: number;\n}\n\n/**\n * PDF annotation canvas with page navigation and rectangle drawing\n *\n * @emits browse:click - Annotation clicked on PDF. Payload: { annotationId: string, motivation: Motivation }\n * @emits mark:requested - New annotation drawn on PDF. Payload: { selector: FragmentSelector, motivation: SelectionMotivation }\n * @emits beckon:hover - Annotation hovered or unhovered. Payload: { annotationId: string | null }\n */\nexport function PdfAnnotationCanvas({\n pdfUrl,\n existingAnnotations = [],\n drawingMode,\n selectedMotivation,\n session,\n hoveredAnnotationId,\n selectedAnnotationId,\n hoverDelayMs = 150\n}: PdfAnnotationCanvasProps) {\n // PDF state\n const [pdfDoc, setPdfDoc] = useState<PDFDocumentProxy | null>(null);\n const [numPages, setNumPages] = useState<number>(0);\n const [pageNumber, setPageNumber] = useState(1);\n const [pageImageUrl, setPageImageUrl] = useState<string | null>(null);\n const [isLoading, setIsLoading] = useState(true);\n const [error, setError] = useState<string | null>(null);\n const [pageDimensions, setPageDimensions] = useState<{ width: number; height: number } | null>(null);\n const [displayDimensions, setDisplayDimensions] = useState<{ width: number; height: number } | null>(null);\n const [scale] = useState(1.5); // Fixed scale for better quality\n\n // Drawing state\n const [isDrawing, setIsDrawing] = useState(false);\n const [selection, setSelection] = useState<CanvasRectangle | null>(null);\n\n const containerRef = useRef<HTMLDivElement>(null);\n const imageRef = useRef<HTMLImageElement>(null);\n\n // Load PDF document on mount\n useEffect(() => {\n let cancelled = false;\n\n async function loadPdf() {\n try {\n setIsLoading(true);\n setError(null);\n\n const doc = await loadPdfDocument(pdfUrl);\n\n if (cancelled) return;\n\n setPdfDoc(doc);\n setNumPages(doc.numPages);\n setIsLoading(false);\n } catch (err) {\n if (cancelled) return;\n\n console.error('Error loading PDF:', err);\n setError('Failed to load PDF');\n setIsLoading(false);\n }\n }\n\n loadPdf();\n\n return () => {\n cancelled = true;\n };\n }, [pdfUrl]);\n\n // Load current page when page number changes\n useEffect(() => {\n if (!pdfDoc) return;\n\n let cancelled = false;\n const doc = pdfDoc;\n\n async function loadPage() {\n try {\n const page = await doc.getPage(pageNumber);\n\n if (cancelled) return;\n\n // Get page dimensions (at scale 1.0)\n const viewport = page.getViewport({ scale: 1.0 });\n setPageDimensions({\n width: viewport.width,\n height: viewport.height\n });\n\n // Render page to image\n const { dataUrl } = await renderPdfPageToDataUrl(page, scale);\n\n if (cancelled) return;\n\n setPageImageUrl(dataUrl);\n } catch (err) {\n if (cancelled) return;\n\n console.error('Error loading page:', err);\n setError('Failed to load page');\n }\n }\n\n loadPage();\n\n return () => {\n cancelled = true;\n };\n }, [pdfDoc, pageNumber, scale]);\n\n // Update display dimensions on resize\n useEffect(() => {\n const updateDisplayDimensions = () => {\n if (imageRef.current) {\n setDisplayDimensions({\n width: imageRef.current.clientWidth,\n height: imageRef.current.clientHeight\n });\n }\n };\n\n updateDisplayDimensions();\n\n // Use ResizeObserver to detect image element size changes\n // This catches: sidebar open/close, window resize, font size changes, etc.\n let resizeObserver: ResizeObserver | null = null;\n\n try {\n resizeObserver = new ResizeObserver(updateDisplayDimensions);\n if (imageRef.current) {\n resizeObserver.observe(imageRef.current);\n }\n } catch (error) {\n // Fallback for browsers without ResizeObserver support\n console.warn('ResizeObserver not supported, falling back to window resize listener');\n window.addEventListener('resize', updateDisplayDimensions);\n }\n\n return () => {\n if (resizeObserver) {\n resizeObserver.disconnect();\n } else {\n window.removeEventListener('resize', updateDisplayDimensions);\n }\n };\n }, [pageImageUrl]);\n\n // Mouse event handlers for drawing\n const handleMouseDown = useCallback((e: React.MouseEvent) => {\n if (!drawingMode) return;\n if (!imageRef.current) return;\n\n const rect = imageRef.current.getBoundingClientRect();\n const x = e.clientX - rect.left;\n const y = e.clientY - rect.top;\n\n // Clear any previous selection when starting new drawing\n setIsDrawing(true);\n setSelection({\n startX: x,\n startY: y,\n endX: x,\n endY: y\n });\n }, [drawingMode]);\n\n const handleMouseMove = useCallback((e: React.MouseEvent) => {\n if (!isDrawing || !selection || !imageRef.current) return;\n\n const rect = imageRef.current.getBoundingClientRect();\n\n setSelection({\n ...selection,\n endX: e.clientX - rect.left,\n endY: e.clientY - rect.top\n });\n }, [isDrawing, selection]);\n\n const handleMouseUp = useCallback(() => {\n if (!isDrawing || !selection || !pageDimensions || !displayDimensions || !session) {\n setIsDrawing(false);\n setSelection(null);\n return;\n }\n\n // Calculate drag distance\n const dragDistance = Math.sqrt(\n Math.pow(selection.endX - selection.startX, 2) +\n Math.pow(selection.endY - selection.startY, 2)\n );\n\n // Minimum drag threshold in pixels (10px)\n const MIN_DRAG_DISTANCE = 10;\n\n if (dragDistance < MIN_DRAG_DISTANCE) {\n // This was a click, not a drag - check if we clicked an existing annotation\n if (existingAnnotations.length > 0) {\n const clickedAnnotation = pageAnnotations.find(ann => {\n const fragmentSel = getFragmentSelector(ann.target);\n if (!fragmentSel) return false;\n\n const pdfCoord = parseFragmentSelector(fragmentSel.value);\n if (!pdfCoord) return false;\n\n const rect = pdfToCanvasCoordinates(pdfCoord, pageDimensions.height, 1.0);\n\n // Scale to display coordinates\n const scaleX = displayDimensions.width / pageDimensions.width;\n const scaleY = displayDimensions.height / pageDimensions.height;\n\n const displayX = rect.x * scaleX;\n const displayY = rect.y * scaleY;\n const displayWidth = rect.width * scaleX;\n const displayHeight = rect.height * scaleY;\n\n return (\n selection.endX >= displayX &&\n selection.endX <= displayX + displayWidth &&\n selection.endY >= displayY &&\n selection.endY <= displayY + displayHeight\n );\n });\n\n if (clickedAnnotation) {\n session?.client.browse.click(clickedAnnotation.id, clickedAnnotation.motivation);\n setIsDrawing(false);\n setSelection(null);\n return;\n }\n }\n\n // Click on empty space - do nothing\n setIsDrawing(false);\n setSelection(null);\n return;\n }\n\n // This was a drag - create new annotation\n // Scale selection from display coordinates to native page coordinates\n const scaleX = pageDimensions.width / displayDimensions.width;\n const scaleY = pageDimensions.height / displayDimensions.height;\n\n const nativeSelection: CanvasRectangle = {\n startX: selection.startX * scaleX,\n startY: selection.startY * scaleY,\n endX: selection.endX * scaleX,\n endY: selection.endY * scaleY\n };\n\n // Convert canvas coordinates to PDF coordinates\n const pdfCoord = canvasToPdfCoordinates(\n nativeSelection,\n pageNumber,\n pageDimensions.width,\n pageDimensions.height,\n 1.0 // Use scale 1.0 since we already scaled to native coords\n );\n\n // Create FragmentSelector\n const fragmentSelector = createFragmentSelector(pdfCoord);\n\n // Emit annotation:requested event with FragmentSelector\n if (selectedMotivation) {\n session.client.mark.request(\n {\n type: 'FragmentSelector',\n conformsTo: 'http://tools.ietf.org/rfc/rfc3778',\n value: fragmentSelector,\n },\n selectedMotivation,\n );\n }\n\n // Keep drawing state active to show preview until annotation is persisted\n // The parent component should clear this by changing drawingMode after save\n setIsDrawing(false);\n // Note: We keep selection so the preview remains visible\n // It will be cleared when drawingMode changes or user starts new selection\n }, [isDrawing, selection, pageNumber, pageDimensions, displayDimensions, selectedMotivation, existingAnnotations]);\n\n // Helper to get FragmentSelector from annotation target\n const getFragmentSelector = (target: Annotation['target']) => {\n const selector = getTargetSelector(target);\n if (!selector) return null;\n const selectors = Array.isArray(selector) ? selector : [selector];\n\n const found = selectors.find(s => s.type === 'FragmentSelector');\n if (!found || found.type !== 'FragmentSelector') return null;\n return found as { type: 'FragmentSelector'; value: string; conformsTo?: string };\n };\n\n // Filter annotations for current page\n const pageAnnotations = existingAnnotations.filter(ann => {\n const fragmentSel = getFragmentSelector(ann.target);\n if (!fragmentSel) return false;\n const page = getPageFromFragment(fragmentSel.value);\n return page === pageNumber;\n });\n\n // Hover handlers with currentHover guard and dwell delay\n const { handleMouseEnter, handleMouseLeave } = useMemo(\n () => createHoverHandlers((id) => session?.client.beckon.hover(id), hoverDelayMs),\n [session, hoverDelayMs]\n );\n\n // Calculate motivation color\n const { stroke, fill } = getMotivationColor(selectedMotivation ?? null);\n\n if (error) {\n return <div className=\"semiont-pdf-annotation-canvas__error\">{error}</div>;\n }\n\n return (\n <div className=\"semiont-pdf-annotation-canvas\">\n {isLoading && <div className=\"semiont-pdf-annotation-canvas__loading\">Loading PDF...</div>}\n\n <div\n ref={containerRef}\n className=\"semiont-pdf-annotation-canvas__container\"\n style={{ display: isLoading ? 'none' : undefined }}\n onMouseDown={handleMouseDown}\n onMouseMove={handleMouseMove}\n onMouseUp={handleMouseUp}\n onMouseLeave={() => {\n if (isDrawing) {\n setIsDrawing(false);\n setSelection(null);\n }\n }}\n data-drawing-mode={drawingMode || 'none'}\n >\n {/* PDF page rendered as image */}\n {pageImageUrl && (\n <img\n ref={imageRef}\n src={pageImageUrl}\n alt={`PDF page ${pageNumber}`}\n className=\"semiont-pdf-annotation-canvas__image\"\n draggable={false}\n style={{ pointerEvents: 'none' }}\n onLoad={() => {\n // Use double RAF to ensure layout is complete even in onLoad\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n if (imageRef.current) {\n setDisplayDimensions({\n width: imageRef.current.clientWidth,\n height: imageRef.current.clientHeight\n });\n }\n });\n });\n }}\n />\n )}\n\n {/* SVG overlay for annotations */}\n {displayDimensions && pageDimensions && (\n <div className=\"semiont-pdf-annotation-canvas__overlay-container\">\n <div className=\"semiont-pdf-annotation-canvas__overlay\">\n <svg\n className=\"semiont-pdf-annotation-canvas__svg\"\n width={displayDimensions.width}\n height={displayDimensions.height}\n >\n {/* Render existing annotations for this page */}\n {pageAnnotations.map(ann => {\n const fragmentSel = getFragmentSelector(ann.target);\n if (!fragmentSel) return null;\n\n const pdfCoord = parseFragmentSelector(fragmentSel.value);\n if (!pdfCoord) return null;\n\n const rect = pdfToCanvasCoordinates(pdfCoord, pageDimensions.height, 1.0);\n\n // Scale to display coordinates\n const scaleX = displayDimensions.width / pageDimensions.width;\n const scaleY = displayDimensions.height / pageDimensions.height;\n\n const isHovered = ann.id === hoveredAnnotationId;\n const isSelected = ann.id === selectedAnnotationId;\n\n // Get color for this annotation's motivation (not the selected motivation)\n const annMotivation = ann.motivation as SelectionMotivation | null;\n const { stroke: annStroke, fill: annFill } = getMotivationColor(annMotivation);\n\n return (\n <rect\n key={ann.id}\n x={rect.x * scaleX}\n y={rect.y * scaleY}\n width={rect.width * scaleX}\n height={rect.height * scaleY}\n stroke={annStroke}\n strokeWidth={isSelected ? 4 : isHovered ? 3 : 2}\n fill={annFill}\n style={{\n pointerEvents: 'auto',\n cursor: 'pointer',\n opacity: isSelected ? 1 : isHovered ? 0.9 : 0.7\n }}\n onClick={() => session?.client.browse.click(ann.id, ann.motivation)}\n onMouseEnter={() => handleMouseEnter(ann.id)}\n onMouseLeave={handleMouseLeave}\n />\n );\n })}\n\n {/* Render current selection while drawing or awaiting save */}\n {selection && (() => {\n const rectX = Math.min(selection.startX, selection.endX);\n const rectY = Math.min(selection.startY, selection.endY);\n const rectWidth = Math.abs(selection.endX - selection.startX);\n const rectHeight = Math.abs(selection.endY - selection.startY);\n\n // PDF only supports rectangle shapes (FragmentSelector with viewrect)\n // Circle/polygon are disabled in the UI for PDF media types\n return (\n <rect\n x={rectX}\n y={rectY}\n width={rectWidth}\n height={rectHeight}\n stroke={stroke}\n strokeWidth={2}\n strokeDasharray=\"5,5\"\n fill={fill}\n pointerEvents=\"none\"\n />\n );\n })()}\n </svg>\n </div>\n </div>\n )}\n </div>\n\n {/* Page navigation controls */}\n {numPages > 0 && (\n <div className=\"semiont-pdf-annotation-canvas__controls\">\n <button\n disabled={pageNumber <= 1}\n onClick={() => setPageNumber(pageNumber - 1)}\n className=\"semiont-pdf-annotation-canvas__button\"\n >\n Previous\n </button>\n <span className=\"semiont-pdf-annotation-canvas__page-info\">\n Page {pageNumber} of {numPages}\n </span>\n <button\n disabled={pageNumber >= numPages}\n onClick={() => setPageNumber(pageNumber + 1)}\n className=\"semiont-pdf-annotation-canvas__button\"\n >\n Next\n </button>\n </div>\n )}\n </div>\n );\n}\n","/**\n * PDF Coordinate Utilities\n *\n * Handles coordinate transformations between:\n * - Canvas space (pixels, top-left origin, Y increases downward)\n * - PDF space (points, bottom-left origin, Y increases upward)\n *\n * Based on RFC 3778 PDF Fragment Identifiers:\n * https://tools.ietf.org/html/rfc3778\n */\n\nexport interface Rectangle {\n x: number;\n y: number;\n width: number;\n height: number;\n}\n\nexport interface PdfCoordinate {\n page: number;\n x: number;\n y: number;\n width: number;\n height: number;\n}\n\nexport interface CanvasRectangle {\n startX: number;\n startY: number;\n endX: number;\n endY: number;\n}\n\n/**\n * Convert canvas coordinates to PDF coordinates\n *\n * Canvas: Origin at top-left, Y increases downward\n * PDF: Origin at bottom-left, Y increases upward\n *\n * @param canvasRect - Rectangle in canvas pixel coordinates\n * @param page - PDF page number (1-indexed)\n * @param pageWidth - PDF page width in points\n * @param pageHeight - PDF page height in points\n * @param scale - Current canvas scale factor\n */\nexport function canvasToPdfCoordinates(\n canvasRect: CanvasRectangle,\n page: number,\n _pageWidth: number,\n pageHeight: number,\n scale: number = 1\n): PdfCoordinate {\n // Normalize rectangle (handle drag in any direction)\n const x1 = Math.min(canvasRect.startX, canvasRect.endX);\n const y1 = Math.min(canvasRect.startY, canvasRect.endY);\n const x2 = Math.max(canvasRect.startX, canvasRect.endX);\n const y2 = Math.max(canvasRect.startY, canvasRect.endY);\n\n // Convert from canvas pixels to PDF points\n const pdfX = x1 / scale;\n const pdfWidth = (x2 - x1) / scale;\n\n // Flip Y coordinate (canvas top-left to PDF bottom-left)\n const pdfY = pageHeight - (y2 / scale);\n const pdfHeight = (y2 - y1) / scale;\n\n return {\n page,\n x: Math.round(pdfX),\n y: Math.round(pdfY),\n width: Math.round(pdfWidth),\n height: Math.round(pdfHeight)\n };\n}\n\n/**\n * Convert PDF coordinates to canvas coordinates\n *\n * @param pdfCoord - Coordinates in PDF space\n * @param pageHeight - PDF page height in points\n * @param scale - Current canvas scale factor\n */\nexport function pdfToCanvasCoordinates(\n pdfCoord: PdfCoordinate,\n pageHeight: number,\n scale: number = 1\n): Rectangle {\n // Convert from PDF points to canvas pixels\n const canvasX = pdfCoord.x * scale;\n const canvasWidth = pdfCoord.width * scale;\n\n // Flip Y coordinate (PDF bottom-left to canvas top-left)\n const canvasY = (pageHeight - pdfCoord.y - pdfCoord.height) * scale;\n const canvasHeight = pdfCoord.height * scale;\n\n return {\n x: canvasX,\n y: canvasY,\n width: canvasWidth,\n height: canvasHeight\n };\n}\n\n/**\n * Generate RFC 3778 FragmentSelector value\n *\n * Format: page=N&viewrect=left,top,width,height\n * All coordinates in PDF points\n */\nexport function createFragmentSelector(coord: PdfCoordinate): string {\n return `page=${coord.page}&viewrect=${coord.x},${coord.y},${coord.width},${coord.height}`;\n}\n\n/**\n * Parse RFC 3778 FragmentSelector value\n *\n * @param fragment - Fragment string like \"page=5&viewrect=100,200,300,400\"\n * @returns Parsed PDF coordinates or null if invalid\n */\nexport function parseFragmentSelector(fragment: string): PdfCoordinate | null {\n try {\n // Parse page number\n const pageMatch = fragment.match(/page=(\\d+)/);\n if (!pageMatch) return null;\n const page = parseInt(pageMatch[1], 10);\n\n // Parse viewrect coordinates\n const viewrectMatch = fragment.match(/viewrect=([\\d.]+),([\\d.]+),([\\d.]+),([\\d.]+)/);\n if (!viewrectMatch) return null;\n\n return {\n page,\n x: parseFloat(viewrectMatch[1]),\n y: parseFloat(viewrectMatch[2]),\n width: parseFloat(viewrectMatch[3]),\n height: parseFloat(viewrectMatch[4])\n };\n } catch {\n return null;\n }\n}\n\n/**\n * Extract page number from FragmentSelector\n */\nexport function getPageFromFragment(fragment: string): number | null {\n const match = fragment.match(/page=(\\d+)/);\n return match ? parseInt(match[1], 10) : null;\n}\n","/**\n * Browser PDF.js utilities\n *\n * Uses native browser PDF.js when available, falls back to CDN.\n * Zero npm dependencies - no webpack bundling issues.\n */\n\n// Type definitions for PDF.js API\nexport interface PDFDocumentProxy {\n numPages: number;\n getPage(pageNumber: number): Promise<PDFPageProxy>;\n}\n\nexport interface PDFPageProxy {\n getViewport(params: { scale: number; rotation?: number }): PDFViewport;\n render(params: PDFRenderParams): PDFRenderTask;\n getTextContent(): Promise<TextContent>;\n}\n\nexport interface PDFViewport {\n width: number;\n height: number;\n scale: number;\n rotation: number;\n}\n\nexport interface PDFRenderParams {\n canvasContext: CanvasRenderingContext2D;\n viewport: PDFViewport;\n}\n\nexport interface PDFRenderTask {\n promise: Promise<void>;\n cancel(): void;\n}\n\nexport interface PDFLib {\n getDocument(params: { url: string }): PDFLoadingTask;\n GlobalWorkerOptions: {\n workerSrc: string;\n };\n version: string;\n}\n\nexport interface PDFLoadingTask {\n promise: Promise<PDFDocumentProxy>;\n destroy(): void;\n}\n\n/**\n * Text content types (for Phase 2)\n */\nexport interface TextItem {\n str: string;\n dir: string;\n transform: number[]; // [scaleX, skewX, skewY, scaleY, x, y]\n width: number;\n height: number;\n fontName: string;\n hasEOL: boolean;\n}\n\nexport interface TextContent {\n items: TextItem[];\n styles: Record<string, any>;\n}\n\n/**\n * Ensure PDF.js is available, loading from local public folder if needed\n */\nexport async function ensurePdfJs(): Promise<PDFLib> {\n // Check if already available (browser native or already loaded)\n if (typeof window !== 'undefined' && (window as any).pdfjsLib) {\n return (window as any).pdfjsLib as PDFLib;\n }\n\n // Load from local public folder (staged during build)\n return new Promise((resolve, reject) => {\n const script = document.createElement('script');\n script.src = '/pdfjs/pdf.min.mjs';\n script.type = 'module';\n\n script.onload = () => {\n const pdfjsLib = (window as any).pdfjsLib as PDFLib;\n\n if (!pdfjsLib) {\n reject(new Error('PDF.js loaded but pdfjsLib not available'));\n return;\n }\n\n // Configure worker (also served from local public folder)\n pdfjsLib.GlobalWorkerOptions.workerSrc = '/pdfjs/pdf.worker.min.mjs';\n\n resolve(pdfjsLib);\n };\n\n script.onerror = () => {\n reject(new Error('Failed to load PDF.js from /pdfjs/pdf.min.mjs'));\n };\n\n document.head.appendChild(script);\n });\n}\n\n/**\n * Load PDF document from a URL.\n *\n * The URL must include authentication (e.g. ?token=<media-token>).\n * PDF.js streams the document directly — no ArrayBuffer buffering in JS.\n */\nexport async function loadPdfDocument(url: string): Promise<PDFDocumentProxy> {\n const pdfjsLib = await ensurePdfJs();\n const loadingTask = pdfjsLib.getDocument({ url });\n return loadingTask.promise;\n}\n\n/**\n * Render PDF page to canvas and return as data URL\n */\nexport async function renderPdfPageToDataUrl(\n page: PDFPageProxy,\n scale = 1.0\n): Promise<{ dataUrl: string; width: number; height: number }> {\n const viewport = page.getViewport({ scale });\n\n // Create canvas\n const canvas = document.createElement('canvas');\n const context = canvas.getContext('2d');\n if (!context) {\n throw new Error('Failed to get 2D context');\n }\n\n canvas.width = viewport.width;\n canvas.height = viewport.height;\n\n // Render PDF page to canvas\n const renderTask = page.render({\n canvasContext: context,\n viewport: viewport\n });\n\n await renderTask.promise;\n\n // Convert to data URL\n return {\n dataUrl: canvas.toDataURL('image/png'),\n width: viewport.width,\n height: viewport.height\n };\n}\n\n/**\n * Render PDF page with text content extraction (Phase 2)\n *\n * This function extracts text in parallel with rendering for future\n * text layer support. Currently the text content is available but not used.\n */\nexport async function renderPdfPageWithText(\n page: PDFPageProxy,\n scale = 1.0\n): Promise<{\n dataUrl: string;\n width: number;\n height: number;\n textContent: TextContent;\n}> {\n const viewport = page.getViewport({ scale });\n\n // Create canvas for rendering\n const canvas = document.createElement('canvas');\n const context = canvas.getContext('2d');\n if (!context) {\n throw new Error('Failed to get 2D context');\n }\n\n canvas.width = viewport.width;\n canvas.height = viewport.height;\n\n // Render PDF page to canvas\n const renderTask = page.render({\n canvasContext: context,\n viewport: viewport\n });\n\n // Extract text content in parallel (for future text layer support)\n const [, textContent] = await Promise.all([\n renderTask.promise,\n page.getTextContent()\n ]);\n\n // Convert to data URL\n return {\n dataUrl: canvas.toDataURL('image/png'),\n width: viewport.width,\n height: viewport.height,\n textContent\n };\n}\n"],"mappings":"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","names":["error","pdfCoord","scaleX","scaleY"]}
|
package/dist/ar-U2EXWUMQ.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../translations/ar.json"],"sourcesContent":["{\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 \"clone\": \"استنساخ\",\n \"cloneDescription\": \"إنشاء رابط استنساخ قابل للمشاركة لهذا المورد\",\n \"archive\": \"أرشفة\",\n \"archiveDescription\": \"نقل هذا المورد إلى حالة الأرشيف\",\n \"unarchive\": \"إلغاء الأرشفة\",\n \"unarchiveDescription\": \"استعادة هذا المورد إلى الحالة النشطة\",\n \"provenance\": \"المصدر والسلسلة\",\n \"createdAt\": \"تاريخ الإنشاء\",\n \"modifiedAt\": \"تاريخ التعديل\",\n \"attributedTo\": \"منسوب إلى\",\n \"derivedFrom\": \"مشتق من\",\n \"storageUri\": \"التخزين\"\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\": \"منذ دقيقة واحدة\",\n \"minutesAgo\": \"منذ {{count}} دقائق\",\n \"hourAgo\": \"منذ ساعة واحدة\",\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 \"justNow\": \"الآن\",\n \"minutesAgo\": \"منذ {{count}}د\",\n \"hoursAgo\": \"منذ {{count}}س\",\n \"daysAgo\": \"منذ {{count}}ي\"\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 \"closeProgress\": \"إغلاق\"\n },\n \"HighlightPanel\": {\n \"title\": \"التمييزات\",\n \"noHighlights\": \"لا توجد تمييزات بعد. استخدم التوضيح بالذكاء الاصطناعي للعثور على الفقرات المهمة.\",\n \"annotateHighlights\": \"توضيح التمييزات\",\n \"instructions\": \"التعليمات\",\n \"optional\": \"(اختياري)\",\n \"instructionsPlaceholder\": \"مثال: التركيز على المفاهيم التقنية الرئيسية...\",\n \"annotate\": \"توضيح\",\n \"annotating\": \"جارٍ التوضيح...\",\n \"cancel\": \"إلغاء\",\n \"densityLabel\": \"الكثافة\",\n \"densitySparse\": \"متفرق\",\n \"densityDense\": \"كثيف\",\n \"closeProgress\": \"إغلاق\"\n },\n \"AssessmentPanel\": {\n \"title\": \"التقييمات\",\n \"noAssessments\": \"لا توجد تقييمات بعد. استخدم التوضيح بالذكاء الاصطناعي لتقييم الفقرات.\",\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 \"closeProgress\": \"إغلاق\"\n },\n \"TaggingPanel\": {\n \"title\": \"العلامات\",\n \"noTags\": \"لا توجد علامات بعد. استخدم التوضيح بالذكاء الاصطناعي لتحديد الأدوار الهيكلية.\",\n \"noSchemas\": \"لا توجد مخططات وسوم مسجلة لقاعدة المعارف هذه. يجب على مسؤول قاعدة المعارف تسجيل مخطط تحليل هيكلي واحد على الأقل (مثلاً عبر مهارة `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 {فئة واحدة محددة} other {# فئات محددة}}\",\n \"createTagForSelection\": \"إنشاء علامة للتحديد\",\n \"selectCategory\": \"اختيار الفئة\",\n \"chooseCategory\": \"اختر فئة...\",\n \"fragmentSelected\": \"تم تحديد جزء\",\n \"imageRegionSelected\": \"تم تحديد منطقة من الصورة\"\n },\n \"UnifiedAnnotationsPanel\": {\n \"title\": \"التعليقات التوضيحية\",\n \"statistics\": \"الإحصائيات\",\n \"highlight\": \"التمييزات\",\n \"reference\": \"المراجع\",\n \"assessment\": \"التقييمات\",\n \"comment\": \"التعليقات\",\n \"tag\": \"العلامات\"\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 {نوع واحد محدد} other {# أنواع محددة}}\",\n \"annotate\": \"توضيح\",\n \"annotating\": \"جارٍ التوضيح...\",\n \"includeDescriptiveReferences\": \"تضمين المراجع الوصفية\",\n \"descriptiveReferencesTooltip\": \"البحث أيضًا عن عبارات مثل 'الرئيس التنفيذي'، 'عملاق التكنولوجيا'، 'الفيزيائي' (بالإضافة إلى الأسماء)\",\n \"annotationProgressTitle\": \"توضيح مراجع الكيانات\",\n \"cancelAnnotation\": \"إلغاء التوضيح\",\n \"found\": \"تم العثور على {{count}}\",\n \"complete\": \"اكتمل التوضيح!\",\n \"failed\": \"فشل التوضيح\",\n \"current\": \"الحالي: {{entityType}}\",\n \"closeProgress\": \"إغلاق\",\n \"loading\": \"جارٍ التحميل...\",\n \"loadingEllipsis\": \"جارٍ التحميل...\",\n \"untitledResource\": \"مورد بدون عنوان\",\n \"noText\": \"لا يوجد نص\"\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.\",\n \"windowsNote\": \"استخدام اختصارات لوحة مفاتيح Windows/Linux. 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}} ميلي ثانية قبل ظهور تأثيرات التمرير\"\n },\n \"AnnotateView\": {},\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\": \"استخدام الذكاء الاصطناعي لتقييم النتائج حسب الصلة الدلالية\",\n \"searching\": \"جاري البحث...\",\n \"search\": \"بحث\"\n },\n \"History\": {\n \"embeddingComputed\": \"تم حساب التضمين\"\n }\n}\n"],"mappings":"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","names":[]}
|
package/dist/bn-DRJGV772.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../translations/bn.json"],"sourcesContent":["{\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 \"clone\": \"ক্লোন\",\n \"cloneDescription\": \"এই সম্পদের জন্য একটি শেয়ারযোগ্য ক্লোন লিঙ্ক তৈরি করুন\",\n \"archive\": \"সংরক্ষণাগারভুক্ত করুন\",\n \"archiveDescription\": \"এই সম্পদটিকে সংরক্ষণাগারভুক্ত অবস্থায় স্থানান্তর করুন\",\n \"unarchive\": \"সংরক্ষণাগার থেকে পুনরুদ্ধার করুন\",\n \"unarchiveDescription\": \"এই সম্পদটিকে সক্রিয় অবস্থায় পুনরুদ্ধার করুন\",\n \"provenance\": \"উৎস ও উদ্ভব\",\n \"createdAt\": \"তৈরির তারিখ\",\n \"modifiedAt\": \"পরিবর্তনের তারিখ\",\n \"attributedTo\": \"সম্পাদককৃত\",\n \"derivedFrom\": \"থেকে উৎপন্ন\",\n \"storageUri\": \"সঞ্চয়স্থান\"\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\": \"১ মিনিট আগে\",\n \"minutesAgo\": \"{{count}} মিনিট আগে\",\n \"hourAgo\": \"১ ঘণ্টা আগে\",\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 \"justNow\": \"এইমাত্র\",\n \"minutesAgo\": \"{{count}} মি. আগে\",\n \"hoursAgo\": \"{{count}} ঘ. আগে\",\n \"daysAgo\": \"{{count}} দি. আগে\"\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 \"closeProgress\": \"বন্ধ করুন\"\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 \"closeProgress\": \"বন্ধ করুন\"\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 \"closeProgress\": \"বন্ধ করুন\"\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 {১টি বিভাগ নির্বাচিত} other {# টি বিভাগ নির্বাচিত}}\",\n \"createTagForSelection\": \"নির্বাচনের জন্য ট্যাগ তৈরি করুন\",\n \"selectCategory\": \"বিভাগ নির্বাচন করুন\",\n \"chooseCategory\": \"একটি বিভাগ বেছে নিন...\",\n \"fragmentSelected\": \"অংশ নির্বাচিত\",\n \"imageRegionSelected\": \"ছবির অঞ্চল নির্বাচিত\"\n },\n \"UnifiedAnnotationsPanel\": {\n \"title\": \"টীকাসমূহ\",\n \"statistics\": \"পরিসংখ্যান\",\n \"highlight\": \"হাইলাইটসমূহ\",\n \"reference\": \"রেফারেন্সসমূহ\",\n \"assessment\": \"মূল্যায়নসমূহ\",\n \"comment\": \"মন্তব্যসমূহ\",\n \"tag\": \"ট্যাগসমূহ\"\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 {১টি ধরন নির্বাচিত} other {# টি ধরন নির্বাচিত}}\",\n \"annotate\": \"টীকাকরণ\",\n \"annotating\": \"টীকাকরণ হচ্ছে...\",\n \"includeDescriptiveReferences\": \"বর্ণনামূলক রেফারেন্স অন্তর্ভুক্ত করুন\",\n \"descriptiveReferencesTooltip\": \"নামের পাশাপাশি 'সিইও', 'প্রযুক্তি জায়ান্ট', 'পদার্থবিদ' এর মতো বাক্যাংশও খুঁজুন\",\n \"annotationProgressTitle\": \"সত্তা রেফারেন্স টীকাকরণ হচ্ছে\",\n \"cancelAnnotation\": \"টীকাকরণ বাতিল করুন\",\n \"found\": \"{{count}} টি পাওয়া গেছে\",\n \"complete\": \"টীকাকরণ সম্পূর্ণ!\",\n \"failed\": \"টীকাকরণ ব্যর্থ\",\n \"current\": \"বর্তমান: {{entityType}}\",\n \"closeProgress\": \"বন্ধ করুন\",\n \"loading\": \"লোড হচ্ছে...\",\n \"loadingEllipsis\": \"লোড হচ্ছে...\",\n \"untitledResource\": \"শিরোনামবিহীন সম্পদ\",\n \"noText\": \"কোনো পাঠ্য নেই\"\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 কী।\",\n \"windowsNote\": \"Windows/Linux কীবোর্ড শর্টকাট ব্যবহার হচ্ছে। Ctrl হলো Control কী।\",\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}}মি.সে. বিলম্ব\"\n },\n \"AnnotateView\": {},\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 \"History\": {\n \"embeddingComputed\": \"এমবেডিং গণনা করা হয়েছে\"\n }\n}\n"],"mappings":"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","names":[]}
|