@easyling/sanity-connector 0.0.1 → 0.0.2-rc.1

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 (242) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/package.json +18 -12
  3. package/dist/actions/bulkTranslate.d.ts +0 -7
  4. package/dist/actions/bulkTranslate.d.ts.map +0 -1
  5. package/dist/actions/bulkTranslate.js +0 -543
  6. package/dist/actions/bulkTranslate.js.map +0 -1
  7. package/dist/actions/manageDNTFields.d.ts +0 -12
  8. package/dist/actions/manageDNTFields.d.ts.map +0 -1
  9. package/dist/actions/manageDNTFields.js +0 -100
  10. package/dist/actions/manageDNTFields.js.map +0 -1
  11. package/dist/actions/translateDocument.d.ts +0 -7
  12. package/dist/actions/translateDocument.d.ts.map +0 -1
  13. package/dist/actions/translateDocument.js +0 -256
  14. package/dist/actions/translateDocument.js.map +0 -1
  15. package/dist/components/RadioWithDefault.d.ts +0 -17
  16. package/dist/components/RadioWithDefault.d.ts.map +0 -1
  17. package/dist/components/RadioWithDefault.js +0 -29
  18. package/dist/components/RadioWithDefault.js.map +0 -1
  19. package/dist/components/auth/AuthNavbar.d.ts +0 -18
  20. package/dist/components/auth/AuthNavbar.d.ts.map +0 -1
  21. package/dist/components/auth/AuthNavbar.js +0 -15
  22. package/dist/components/auth/AuthNavbar.js.map +0 -1
  23. package/dist/components/auth/AuthStatus.d.ts +0 -27
  24. package/dist/components/auth/AuthStatus.d.ts.map +0 -1
  25. package/dist/components/auth/AuthStatus.js +0 -82
  26. package/dist/components/auth/AuthStatus.js.map +0 -1
  27. package/dist/components/auth/AuthStatusWrapper.d.ts +0 -15
  28. package/dist/components/auth/AuthStatusWrapper.d.ts.map +0 -1
  29. package/dist/components/auth/AuthStatusWrapper.js +0 -39
  30. package/dist/components/auth/AuthStatusWrapper.js.map +0 -1
  31. package/dist/components/auth/MigrationPrompt.d.ts +0 -20
  32. package/dist/components/auth/MigrationPrompt.d.ts.map +0 -1
  33. package/dist/components/auth/MigrationPrompt.js +0 -16
  34. package/dist/components/auth/MigrationPrompt.js.map +0 -1
  35. package/dist/components/auth/MigrationPromptWrapper.d.ts +0 -14
  36. package/dist/components/auth/MigrationPromptWrapper.d.ts.map +0 -1
  37. package/dist/components/auth/MigrationPromptWrapper.js +0 -16
  38. package/dist/components/auth/MigrationPromptWrapper.js.map +0 -1
  39. package/dist/components/auth/OAuthCallback.d.ts +0 -20
  40. package/dist/components/auth/OAuthCallback.d.ts.map +0 -1
  41. package/dist/components/auth/OAuthCallback.js +0 -12
  42. package/dist/components/auth/OAuthCallback.js.map +0 -1
  43. package/dist/components/auth/index.d.ts +0 -15
  44. package/dist/components/auth/index.d.ts.map +0 -1
  45. package/dist/components/auth/index.js +0 -12
  46. package/dist/components/auth/index.js.map +0 -1
  47. package/dist/components/config/LocaleConfigTool.d.ts +0 -17
  48. package/dist/components/config/LocaleConfigTool.d.ts.map +0 -1
  49. package/dist/components/config/LocaleConfigTool.js +0 -186
  50. package/dist/components/config/LocaleConfigTool.js.map +0 -1
  51. package/dist/components/config/LocaleConfigToolWrapper.d.ts +0 -13
  52. package/dist/components/config/LocaleConfigToolWrapper.d.ts.map +0 -1
  53. package/dist/components/config/LocaleConfigToolWrapper.js +0 -26
  54. package/dist/components/config/LocaleConfigToolWrapper.js.map +0 -1
  55. package/dist/components/config/OAuthConfig.d.ts +0 -26
  56. package/dist/components/config/OAuthConfig.d.ts.map +0 -1
  57. package/dist/components/config/OAuthConfig.js +0 -152
  58. package/dist/components/config/OAuthConfig.js.map +0 -1
  59. package/dist/components/config/OAuthConfigWrapper.d.ts +0 -13
  60. package/dist/components/config/OAuthConfigWrapper.d.ts.map +0 -1
  61. package/dist/components/config/OAuthConfigWrapper.js +0 -41
  62. package/dist/components/config/OAuthConfigWrapper.js.map +0 -1
  63. package/dist/components/config/PasswordInput.d.ts +0 -14
  64. package/dist/components/config/PasswordInput.d.ts.map +0 -1
  65. package/dist/components/config/PasswordInput.js +0 -23
  66. package/dist/components/config/PasswordInput.js.map +0 -1
  67. package/dist/components/config/index.d.ts +0 -9
  68. package/dist/components/config/index.d.ts.map +0 -1
  69. package/dist/components/config/index.js +0 -8
  70. package/dist/components/config/index.js.map +0 -1
  71. package/dist/components/config/localeConfigToolDefinition.d.ts +0 -13
  72. package/dist/components/config/localeConfigToolDefinition.d.ts.map +0 -1
  73. package/dist/components/config/localeConfigToolDefinition.js +0 -19
  74. package/dist/components/config/localeConfigToolDefinition.js.map +0 -1
  75. package/dist/components/config/oauthConfigToolDefinition.d.ts +0 -13
  76. package/dist/components/config/oauthConfigToolDefinition.d.ts.map +0 -1
  77. package/dist/components/config/oauthConfigToolDefinition.js +0 -19
  78. package/dist/components/config/oauthConfigToolDefinition.js.map +0 -1
  79. package/dist/components/dialogs/ConfirmationDialog.d.ts +0 -21
  80. package/dist/components/dialogs/ConfirmationDialog.d.ts.map +0 -1
  81. package/dist/components/dialogs/ConfirmationDialog.js +0 -28
  82. package/dist/components/dialogs/ConfirmationDialog.js.map +0 -1
  83. package/dist/components/dialogs/ErrorDialog.d.ts +0 -21
  84. package/dist/components/dialogs/ErrorDialog.d.ts.map +0 -1
  85. package/dist/components/dialogs/ErrorDialog.js +0 -28
  86. package/dist/components/dialogs/ErrorDialog.js.map +0 -1
  87. package/dist/components/dialogs/LocaleSelectionDialog.d.ts +0 -41
  88. package/dist/components/dialogs/LocaleSelectionDialog.d.ts.map +0 -1
  89. package/dist/components/dialogs/LocaleSelectionDialog.js +0 -117
  90. package/dist/components/dialogs/LocaleSelectionDialog.js.map +0 -1
  91. package/dist/components/dialogs/SuccessDialog.d.ts +0 -19
  92. package/dist/components/dialogs/SuccessDialog.d.ts.map +0 -1
  93. package/dist/components/dialogs/SuccessDialog.js +0 -37
  94. package/dist/components/dialogs/SuccessDialog.js.map +0 -1
  95. package/dist/components/dialogs/index.d.ts +0 -12
  96. package/dist/components/dialogs/index.d.ts.map +0 -1
  97. package/dist/components/dialogs/index.js +0 -8
  98. package/dist/components/dialogs/index.js.map +0 -1
  99. package/dist/components/dnt/DNTFieldBadge.d.ts +0 -16
  100. package/dist/components/dnt/DNTFieldBadge.d.ts.map +0 -1
  101. package/dist/components/dnt/DNTFieldBadge.js +0 -56
  102. package/dist/components/dnt/DNTFieldBadge.js.map +0 -1
  103. package/dist/components/dnt/DNTFieldComponent.d.ts +0 -17
  104. package/dist/components/dnt/DNTFieldComponent.d.ts.map +0 -1
  105. package/dist/components/dnt/DNTFieldComponent.js +0 -21
  106. package/dist/components/dnt/DNTFieldComponent.js.map +0 -1
  107. package/dist/components/dnt/DNTFieldInput.d.ts +0 -14
  108. package/dist/components/dnt/DNTFieldInput.d.ts.map +0 -1
  109. package/dist/components/dnt/DNTFieldInput.js +0 -76
  110. package/dist/components/dnt/DNTFieldInput.js.map +0 -1
  111. package/dist/components/dnt/index.d.ts +0 -7
  112. package/dist/components/dnt/index.d.ts.map +0 -1
  113. package/dist/components/dnt/index.js +0 -7
  114. package/dist/components/dnt/index.js.map +0 -1
  115. package/dist/config/index.d.ts +0 -6
  116. package/dist/config/index.d.ts.map +0 -1
  117. package/dist/config/index.js +0 -6
  118. package/dist/config/index.js.map +0 -1
  119. package/dist/config/pluginConfig.d.ts +0 -163
  120. package/dist/config/pluginConfig.d.ts.map +0 -1
  121. package/dist/config/pluginConfig.js +0 -548
  122. package/dist/config/pluginConfig.js.map +0 -1
  123. package/dist/index.d.ts +0 -12
  124. package/dist/index.d.ts.map +0 -1
  125. package/dist/index.js +0 -12
  126. package/dist/index.js.map +0 -1
  127. package/dist/plugin.d.ts +0 -3
  128. package/dist/plugin.d.ts.map +0 -1
  129. package/dist/plugin.js +0 -137
  130. package/dist/plugin.js.map +0 -1
  131. package/dist/services/authStateManager.d.ts +0 -94
  132. package/dist/services/authStateManager.d.ts.map +0 -1
  133. package/dist/services/authStateManager.js +0 -208
  134. package/dist/services/authStateManager.js.map +0 -1
  135. package/dist/services/contentExtractor.d.ts +0 -95
  136. package/dist/services/contentExtractor.d.ts.map +0 -1
  137. package/dist/services/contentExtractor.js +0 -516
  138. package/dist/services/contentExtractor.js.map +0 -1
  139. package/dist/services/dialogService.d.ts +0 -96
  140. package/dist/services/dialogService.d.ts.map +0 -1
  141. package/dist/services/dialogService.js +0 -244
  142. package/dist/services/dialogService.js.map +0 -1
  143. package/dist/services/dntServiceManager.d.ts +0 -44
  144. package/dist/services/dntServiceManager.d.ts.map +0 -1
  145. package/dist/services/dntServiceManager.js +0 -74
  146. package/dist/services/dntServiceManager.js.map +0 -1
  147. package/dist/services/dntStorageAdapter.d.ts +0 -73
  148. package/dist/services/dntStorageAdapter.d.ts.map +0 -1
  149. package/dist/services/dntStorageAdapter.js +0 -192
  150. package/dist/services/dntStorageAdapter.js.map +0 -1
  151. package/dist/services/documentCreationService.d.ts +0 -139
  152. package/dist/services/documentCreationService.d.ts.map +0 -1
  153. package/dist/services/documentCreationService.js +0 -938
  154. package/dist/services/documentCreationService.js.map +0 -1
  155. package/dist/services/localeService.d.ts +0 -160
  156. package/dist/services/localeService.d.ts.map +0 -1
  157. package/dist/services/localeService.js +0 -300
  158. package/dist/services/localeService.js.map +0 -1
  159. package/dist/services/localeStorageAdapter.d.ts +0 -42
  160. package/dist/services/localeStorageAdapter.d.ts.map +0 -1
  161. package/dist/services/localeStorageAdapter.js +0 -107
  162. package/dist/services/localeStorageAdapter.js.map +0 -1
  163. package/dist/services/oauthConfigStorage.d.ts +0 -46
  164. package/dist/services/oauthConfigStorage.d.ts.map +0 -1
  165. package/dist/services/oauthConfigStorage.js +0 -122
  166. package/dist/services/oauthConfigStorage.js.map +0 -1
  167. package/dist/services/oauthService.d.ts +0 -48
  168. package/dist/services/oauthService.d.ts.map +0 -1
  169. package/dist/services/oauthService.js +0 -71
  170. package/dist/services/oauthService.js.map +0 -1
  171. package/dist/services/oauthServiceManager.d.ts +0 -189
  172. package/dist/services/oauthServiceManager.d.ts.map +0 -1
  173. package/dist/services/oauthServiceManager.js +0 -380
  174. package/dist/services/oauthServiceManager.js.map +0 -1
  175. package/dist/services/tokenStorage.d.ts +0 -54
  176. package/dist/services/tokenStorage.d.ts.map +0 -1
  177. package/dist/services/tokenStorage.js +0 -140
  178. package/dist/services/tokenStorage.js.map +0 -1
  179. package/dist/services/translationService.d.ts +0 -374
  180. package/dist/services/translationService.d.ts.map +0 -1
  181. package/dist/services/translationService.js +0 -687
  182. package/dist/services/translationService.js.map +0 -1
  183. package/dist/services/unifiedConfigStorage.d.ts +0 -124
  184. package/dist/services/unifiedConfigStorage.d.ts.map +0 -1
  185. package/dist/services/unifiedConfigStorage.js +0 -304
  186. package/dist/services/unifiedConfigStorage.js.map +0 -1
  187. package/dist/test-utils.d.ts +0 -9
  188. package/dist/test-utils.d.ts.map +0 -1
  189. package/dist/test-utils.js +0 -13
  190. package/dist/test-utils.js.map +0 -1
  191. package/dist/types/dialog.d.ts +0 -107
  192. package/dist/types/dialog.d.ts.map +0 -1
  193. package/dist/types/dialog.js +0 -6
  194. package/dist/types/dialog.js.map +0 -1
  195. package/dist/types/dnt.d.ts +0 -84
  196. package/dist/types/dnt.d.ts.map +0 -1
  197. package/dist/types/dnt.js +0 -5
  198. package/dist/types/dnt.js.map +0 -1
  199. package/dist/types/index.d.ts +0 -12
  200. package/dist/types/index.d.ts.map +0 -1
  201. package/dist/types/index.js +0 -6
  202. package/dist/types/index.js.map +0 -1
  203. package/dist/types/locale.d.ts +0 -116
  204. package/dist/types/locale.d.ts.map +0 -1
  205. package/dist/types/locale.js +0 -189
  206. package/dist/types/locale.js.map +0 -1
  207. package/dist/types/oauth.d.ts +0 -90
  208. package/dist/types/oauth.d.ts.map +0 -1
  209. package/dist/types/oauth.js +0 -62
  210. package/dist/types/oauth.js.map +0 -1
  211. package/dist/types/pluginConfig.d.ts +0 -45
  212. package/dist/types/pluginConfig.d.ts.map +0 -1
  213. package/dist/types/pluginConfig.js +0 -6
  214. package/dist/types/pluginConfig.js.map +0 -1
  215. package/dist/types/translation.d.ts +0 -122
  216. package/dist/types/translation.d.ts.map +0 -1
  217. package/dist/types/translation.js +0 -6
  218. package/dist/types/translation.js.map +0 -1
  219. package/dist/utils/htmlFormatter.d.ts +0 -66
  220. package/dist/utils/htmlFormatter.d.ts.map +0 -1
  221. package/dist/utils/htmlFormatter.js +0 -191
  222. package/dist/utils/htmlFormatter.js.map +0 -1
  223. package/dist/utils/index.d.ts +0 -15
  224. package/dist/utils/index.d.ts.map +0 -1
  225. package/dist/utils/index.js +0 -16
  226. package/dist/utils/index.js.map +0 -1
  227. package/dist/utils/logger.d.ts +0 -105
  228. package/dist/utils/logger.d.ts.map +0 -1
  229. package/dist/utils/logger.js +0 -229
  230. package/dist/utils/logger.js.map +0 -1
  231. package/dist/utils/oauthErrorFeedback.d.ts +0 -76
  232. package/dist/utils/oauthErrorFeedback.d.ts.map +0 -1
  233. package/dist/utils/oauthErrorFeedback.js +0 -134
  234. package/dist/utils/oauthErrorFeedback.js.map +0 -1
  235. package/dist/utils/oauthLogger.d.ts +0 -176
  236. package/dist/utils/oauthLogger.d.ts.map +0 -1
  237. package/dist/utils/oauthLogger.js +0 -282
  238. package/dist/utils/oauthLogger.js.map +0 -1
  239. package/dist/utils/validator.d.ts +0 -67
  240. package/dist/utils/validator.d.ts.map +0 -1
  241. package/dist/utils/validator.js +0 -390
  242. package/dist/utils/validator.js.map +0 -1
@@ -1,374 +0,0 @@
1
- import { ExtendedDocumentContent } from './contentExtractor';
2
- /**
3
- * Field object structure supporting translation-invariant fields
4
- */
5
- export interface TranslatableField {
6
- /** The actual field value */
7
- value: unknown;
8
- /** Do Not Translate flag - if true, the field should not be translated */
9
- dnt?: boolean;
10
- /** Type of the field value from Sanity (e.g., 'string', 'number', 'date', 'slug', 'array', 'object') */
11
- type?: string;
12
- }
13
- export interface TranslationRequest {
14
- documentId: string;
15
- endpoint: string;
16
- payload: TranslationRequestPayload;
17
- }
18
- /**
19
- * Request payload sent to the translation service
20
- *
21
- * @example Single locale (backward compatible):
22
- * ```json
23
- * {
24
- * "content": {
25
- * "body": "<h1>Welcome</h1><p>This is sample content.</p>",
26
- * "title": "Welcome Article",
27
- * "slug": "welcome-article",
28
- * "fields": {
29
- * "author": { "value": "John Doe", "dnt": false },
30
- * "category": { "value": "General", "dnt": true }
31
- * }
32
- * },
33
- * "format": "html",
34
- * "metadata": {
35
- * "documentId": "article-123",
36
- * "documentType": "article",
37
- * "title": "Welcome Article",
38
- * "sourceLanguage": "en",
39
- * "targetLanguage": "es"
40
- * }
41
- * }
42
- * ```
43
- *
44
- * @example Multiple locales:
45
- * ```json
46
- * {
47
- * "content": {
48
- * "body": "<h1>Welcome</h1><p>This is sample content.</p>",
49
- * "title": "Welcome Article",
50
- * "slug": "welcome-article",
51
- * "fields": {
52
- * "author": { "value": "John Doe", "dnt": false },
53
- * "category": { "value": "General", "dnt": true }
54
- * }
55
- * },
56
- * "format": "html",
57
- * "metadata": {
58
- * "documentId": "article-123",
59
- * "documentType": "article",
60
- * "title": "Welcome Article",
61
- * "sourceLanguage": "en",
62
- * "targetLocales": ["es", "fr", "de"]
63
- * }
64
- * }
65
- * ```
66
- */
67
- export interface TranslationRequestPayload {
68
- /** Content to be translated */
69
- content: {
70
- /** HTML content extracted from Sanity document */
71
- body: string;
72
- /** Document title */
73
- title: string;
74
- /** Document slug */
75
- slug: string;
76
- /** Additional document fields with translation control via dnt flag */
77
- fields: Record<string, TranslatableField | any>;
78
- };
79
- /** Content format - always 'html' for this plugin */
80
- format: 'html';
81
- /** Metadata about the document and translation request */
82
- metadata: {
83
- /** Unique identifier for the source document */
84
- documentId: string;
85
- /** Sanity document type (e.g., 'article', 'page', 'post') */
86
- documentType: string;
87
- /** Document title (same as content.title) */
88
- title: string;
89
- /** Source language code (optional, e.g., 'en', 'fr', 'es') */
90
- sourceLanguage?: string;
91
- /** Target language code (optional, e.g., 'en', 'fr', 'es') - for backward compatibility */
92
- targetLanguage?: string;
93
- /** Array of target locale codes (e.g., ['es', 'fr', 'de']) - for multi-locale support */
94
- targetLocales?: string[];
95
- };
96
- }
97
- /**
98
- * Translated document structure
99
- */
100
- export interface TranslatedDocument {
101
- /**
102
- * Translated HTML content
103
- * - Must be valid HTML
104
- * - Should preserve original structure
105
- * - Will be converted back to Portable Text by the plugin
106
- */
107
- body: string;
108
- /**
109
- * Translated document title
110
- * - Must be non-empty string
111
- * - No HTML tags allowed
112
- */
113
- title: string;
114
- /**
115
- * Translated/localized slug
116
- * - Must contain only lowercase letters, numbers, hyphens, and underscores
117
- * - Should be URL-friendly and unique
118
- * - Pattern: ^[a-z0-9-_]+$
119
- */
120
- slug: string;
121
- /**
122
- * Additional translated document fields
123
- * - Must be an object (can be empty)
124
- * - Translatable text fields should be translated
125
- * - Non-translatable fields (dates, IDs) should be preserved
126
- * - Fields marked with dnt=true should remain unchanged
127
- */
128
- fields: Record<string, TranslatableField>;
129
- /**
130
- * Target locale code for this translation (e.g., 'es', 'fr', 'de')
131
- */
132
- locale?: string;
133
- }
134
- /**
135
- * Response format expected from the translation service
136
- *
137
- * @example Single locale success response:
138
- * ```json
139
- * {
140
- * "success": true,
141
- * "translatedDocuments": [
142
- * {
143
- * "body": "<h1>Translated HTML</h1><p>Translated content...</p>",
144
- * "title": "Translated Title",
145
- * "slug": "translated-slug",
146
- * "fields": {
147
- * "author": { "value": "Translated Author", "dnt": false },
148
- * "category": { "value": "General", "dnt": true }
149
- * },
150
- * "locale": "es"
151
- * }
152
- * ],
153
- * "sourceLocale": "en",
154
- * "requestId": "req-123"
155
- * }
156
- * ```
157
- *
158
- * @example Multi-locale success response:
159
- * ```json
160
- * {
161
- * "success": true,
162
- * "translatedDocuments": [
163
- * {
164
- * "body": "<h1>HTML traducido</h1><p>Contenido traducido...</p>",
165
- * "title": "Título traducido",
166
- * "slug": "titulo-traducido",
167
- * "fields": {
168
- * "author": { "value": "Autor traducido", "dnt": false },
169
- * "category": { "value": "General", "dnt": true }
170
- * },
171
- * "locale": "es"
172
- * },
173
- * {
174
- * "body": "<h1>HTML traduit</h1><p>Contenu traduit...</p>",
175
- * "title": "Titre traduit",
176
- * "slug": "titre-traduit",
177
- * "fields": {
178
- * "author": { "value": "Auteur traduit", "dnt": false },
179
- * "category": { "value": "General", "dnt": true }
180
- * },
181
- * "locale": "fr"
182
- * }
183
- * ],
184
- * "sourceLocale": "en",
185
- * "requestId": "req-123"
186
- * }
187
- * ```
188
- *
189
- * @example Error Response:
190
- * ```json
191
- * {
192
- * "success": false,
193
- * "error": "Translation failed: Unsupported language pair",
194
- * "requestId": "req-123"
195
- * }
196
- * ```
197
- */
198
- export interface TranslationResponse {
199
- /** Indicates whether the translation was successful */
200
- success: boolean;
201
- /**
202
- * Array of translated documents (required when success is true)
203
- * Contains one translated document per target locale
204
- */
205
- translatedDocuments?: TranslatedDocument[];
206
- /** Source locale code (e.g., 'en') */
207
- sourceLocale?: string;
208
- /**
209
- * Error message (required when success is false)
210
- * Should provide a clear description of what went wrong
211
- */
212
- error?: string;
213
- /**
214
- * Optional unique request identifier for tracking
215
- * Useful for debugging and request correlation
216
- */
217
- requestId?: string;
218
- /** @deprecated Use translatedDocuments array instead */
219
- translatedContent?: TranslatedDocument;
220
- /** @deprecated Use translatedDocuments array instead */
221
- translations?: {
222
- [localeCode: string]: {
223
- content: TranslatedDocument;
224
- status: 'completed' | 'failed' | 'pending';
225
- error?: string;
226
- };
227
- };
228
- }
229
- export interface BulkTranslationSummary {
230
- totalDocuments: number;
231
- processedDocuments: number;
232
- failedDocuments: number;
233
- requests: TranslationRequest[];
234
- responses: TranslationResponse[];
235
- }
236
- export declare class TranslationService {
237
- private placeholderEndpoint;
238
- private accessToken?;
239
- private projectId?;
240
- private requestContentType;
241
- private responseAcceptHeader;
242
- constructor(placeholderEndpoint?: string, requestContentType?: 'application/json' | 'application/x-protobuf', responseAcceptHeader?: 'application/json' | 'application/x-protobuf');
243
- /**
244
- * Infer the Sanity field type from a value
245
- *
246
- * @param value - The field value to inspect
247
- * @returns The inferred Sanity type string
248
- */
249
- private inferSanityType;
250
- /**
251
- * Set authentication token and project ID
252
- * Requirements: 4.1, 4.2, 4.3
253
- *
254
- * @param token - Access token for API authentication
255
- * @param projectId - Project ID to include in requests
256
- */
257
- setAuthToken(token: string, projectId: string): void;
258
- /**
259
- * Clear authentication data
260
- */
261
- clearAuth(): void;
262
- /**
263
- * Update configuration for content types and endpoint
264
- * Allows partial updates - only provided parameters will be updated
265
- * Requirements: 1.1, 2.3, 3.3
266
- *
267
- * @param endpoint - Optional translation API endpoint URL
268
- * @param requestContentType - Optional request Content-Type header value
269
- * @param responseAcceptHeader - Optional response Accept header value
270
- */
271
- setConfiguration(endpoint?: string, requestContentType?: 'application/json' | 'application/x-protobuf', responseAcceptHeader?: 'application/json' | 'application/x-protobuf'): void;
272
- /**
273
- * Convert internal payload to Protocol Buffer binary format
274
- * Requirements: Uses @easyling/sanity protobuf library
275
- *
276
- * @param payload - Internal translation request payload
277
- * @returns Binary protobuf message
278
- */
279
- private convertPayloadToProtobuf;
280
- /**
281
- * Convert protobuf payload to JSON for logging purposes only
282
- *
283
- * @param payload - Internal translation request payload
284
- * @returns JSON representation for logging
285
- */
286
- private convertPayloadToProtobufJSON;
287
- /**
288
- * Normalize field values to ensure consistency
289
- * Extracts values from TranslatableField objects and handles various formats
290
- */
291
- private normalizeTranslatedFields;
292
- /**
293
- * Convert binary protobuf response to internal format
294
- * Requirements: Uses @easyling/sanity protobuf library
295
- *
296
- * @param binaryData - Binary protobuf response data
297
- * @returns Internal translation response format
298
- */
299
- private convertProtobufBinaryToResponse;
300
- /**
301
- * Convert protobuf JSON response back to internal format (for legacy support)
302
- * Requirements: Uses @easyling/sanity protobuf library
303
- *
304
- * @param jsonData - JSON response data
305
- * @returns Internal translation response format
306
- */
307
- private convertProtobufJSONToResponse;
308
- /**
309
- * Prepare a translation request for a single document
310
- * Requirements: 1.2, 1.3, 3.3, 2.5, 2.7
311
- *
312
- * @param content - Document content to translate
313
- * @param documentType - Type of the document
314
- * @param sourceLanguage - Source language code (optional)
315
- * @param targetLanguage - Single target language code (optional, for backward compatibility)
316
- * @param targetLocales - Array of target locale codes (optional, for multi-locale support)
317
- */
318
- prepareTranslationRequest(content: ExtendedDocumentContent, documentType?: string, sourceLanguage?: string, targetLanguage?: string, targetLocales?: string[]): TranslationRequest;
319
- /**
320
- * Translate a single document
321
- * Requirements: 1.2, 1.3, 3.3, 2.5, 2.7
322
- *
323
- * @param content - Document content to translate
324
- * @param documentType - Type of the document
325
- * @param sourceLanguage - Source language code (optional)
326
- * @param targetLanguage - Single target language code (optional, for backward compatibility)
327
- * @param targetLocales - Array of target locale codes (optional, for multi-locale support)
328
- */
329
- translateDocument(content: ExtendedDocumentContent, documentType?: string, sourceLanguage?: string, targetLanguage?: string, targetLocales?: string[]): Promise<TranslationResponse>;
330
- /**
331
- * Send translation request to the configured endpoint
332
- *
333
- * Uses the @easyling/sanity Protocol Buffer library to format messages as JSON
334
- * (not binary protobuf) for better compatibility with various backends.
335
- * Handles the new array-based response format with backward compatibility.
336
- * The service now expects translatedDocuments as an array, but will convert
337
- * legacy formats (translatedContent or translations object) to the new format.
338
- *
339
- * Supports dual mode operation:
340
- * - Authenticated mode: Uses Bearer token authentication when configured
341
- * - Legacy mode: Works without authentication for backward compatibility
342
- */
343
- sendTranslationRequest(request: TranslationRequest): Promise<TranslationResponse>;
344
- /**
345
- * Log translation request to console for verification
346
- * Requirements: 1.3, 2.4
347
- */
348
- logTranslationRequest(request: TranslationRequest): void;
349
- /**
350
- * Process bulk translation for multiple documents
351
- * Requirements: 2.1, 2.2, 2.3, 2.4, 2.5, 2.7
352
- *
353
- * @param contents - Array of document contents to translate
354
- * @param documentType - Type of the documents
355
- * @param sourceLanguage - Source language code (optional)
356
- * @param targetLanguage - Single target language code (optional, for backward compatibility)
357
- * @param targetLocales - Array of target locale codes (optional, for multi-locale support)
358
- */
359
- processBulkTranslation(contents: ExtendedDocumentContent[], documentType?: string, sourceLanguage?: string, targetLanguage?: string, targetLocales?: string[]): Promise<BulkTranslationSummary>;
360
- /**
361
- * Log bulk translation summary
362
- * Requirements: 2.5
363
- */
364
- private logBulkTranslationSummary;
365
- /**
366
- * Update the placeholder endpoint
367
- */
368
- setEndpoint(endpoint: string): void;
369
- /**
370
- * Get the current endpoint
371
- */
372
- getEndpoint(): string;
373
- }
374
- //# sourceMappingURL=translationService.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"translationService.d.ts","sourceRoot":"","sources":["../../src/services/translationService.ts"],"names":[],"mappings":"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"}