@easyling/sanity-connector 0.0.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 (244) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +482 -0
  3. package/dist/.tsbuildinfo +1 -0
  4. package/dist/actions/bulkTranslate.d.ts +7 -0
  5. package/dist/actions/bulkTranslate.d.ts.map +1 -0
  6. package/dist/actions/bulkTranslate.js +543 -0
  7. package/dist/actions/bulkTranslate.js.map +1 -0
  8. package/dist/actions/manageDNTFields.d.ts +12 -0
  9. package/dist/actions/manageDNTFields.d.ts.map +1 -0
  10. package/dist/actions/manageDNTFields.js +100 -0
  11. package/dist/actions/manageDNTFields.js.map +1 -0
  12. package/dist/actions/translateDocument.d.ts +7 -0
  13. package/dist/actions/translateDocument.d.ts.map +1 -0
  14. package/dist/actions/translateDocument.js +256 -0
  15. package/dist/actions/translateDocument.js.map +1 -0
  16. package/dist/components/RadioWithDefault.d.ts +17 -0
  17. package/dist/components/RadioWithDefault.d.ts.map +1 -0
  18. package/dist/components/RadioWithDefault.js +29 -0
  19. package/dist/components/RadioWithDefault.js.map +1 -0
  20. package/dist/components/auth/AuthNavbar.d.ts +18 -0
  21. package/dist/components/auth/AuthNavbar.d.ts.map +1 -0
  22. package/dist/components/auth/AuthNavbar.js +15 -0
  23. package/dist/components/auth/AuthNavbar.js.map +1 -0
  24. package/dist/components/auth/AuthStatus.d.ts +27 -0
  25. package/dist/components/auth/AuthStatus.d.ts.map +1 -0
  26. package/dist/components/auth/AuthStatus.js +82 -0
  27. package/dist/components/auth/AuthStatus.js.map +1 -0
  28. package/dist/components/auth/AuthStatusWrapper.d.ts +15 -0
  29. package/dist/components/auth/AuthStatusWrapper.d.ts.map +1 -0
  30. package/dist/components/auth/AuthStatusWrapper.js +39 -0
  31. package/dist/components/auth/AuthStatusWrapper.js.map +1 -0
  32. package/dist/components/auth/MigrationPrompt.d.ts +20 -0
  33. package/dist/components/auth/MigrationPrompt.d.ts.map +1 -0
  34. package/dist/components/auth/MigrationPrompt.js +16 -0
  35. package/dist/components/auth/MigrationPrompt.js.map +1 -0
  36. package/dist/components/auth/MigrationPromptWrapper.d.ts +14 -0
  37. package/dist/components/auth/MigrationPromptWrapper.d.ts.map +1 -0
  38. package/dist/components/auth/MigrationPromptWrapper.js +16 -0
  39. package/dist/components/auth/MigrationPromptWrapper.js.map +1 -0
  40. package/dist/components/auth/OAuthCallback.d.ts +20 -0
  41. package/dist/components/auth/OAuthCallback.d.ts.map +1 -0
  42. package/dist/components/auth/OAuthCallback.js +12 -0
  43. package/dist/components/auth/OAuthCallback.js.map +1 -0
  44. package/dist/components/auth/index.d.ts +15 -0
  45. package/dist/components/auth/index.d.ts.map +1 -0
  46. package/dist/components/auth/index.js +12 -0
  47. package/dist/components/auth/index.js.map +1 -0
  48. package/dist/components/config/LocaleConfigTool.d.ts +17 -0
  49. package/dist/components/config/LocaleConfigTool.d.ts.map +1 -0
  50. package/dist/components/config/LocaleConfigTool.js +186 -0
  51. package/dist/components/config/LocaleConfigTool.js.map +1 -0
  52. package/dist/components/config/LocaleConfigToolWrapper.d.ts +13 -0
  53. package/dist/components/config/LocaleConfigToolWrapper.d.ts.map +1 -0
  54. package/dist/components/config/LocaleConfigToolWrapper.js +26 -0
  55. package/dist/components/config/LocaleConfigToolWrapper.js.map +1 -0
  56. package/dist/components/config/OAuthConfig.d.ts +26 -0
  57. package/dist/components/config/OAuthConfig.d.ts.map +1 -0
  58. package/dist/components/config/OAuthConfig.js +152 -0
  59. package/dist/components/config/OAuthConfig.js.map +1 -0
  60. package/dist/components/config/OAuthConfigWrapper.d.ts +13 -0
  61. package/dist/components/config/OAuthConfigWrapper.d.ts.map +1 -0
  62. package/dist/components/config/OAuthConfigWrapper.js +41 -0
  63. package/dist/components/config/OAuthConfigWrapper.js.map +1 -0
  64. package/dist/components/config/PasswordInput.d.ts +14 -0
  65. package/dist/components/config/PasswordInput.d.ts.map +1 -0
  66. package/dist/components/config/PasswordInput.js +23 -0
  67. package/dist/components/config/PasswordInput.js.map +1 -0
  68. package/dist/components/config/index.d.ts +9 -0
  69. package/dist/components/config/index.d.ts.map +1 -0
  70. package/dist/components/config/index.js +8 -0
  71. package/dist/components/config/index.js.map +1 -0
  72. package/dist/components/config/localeConfigToolDefinition.d.ts +13 -0
  73. package/dist/components/config/localeConfigToolDefinition.d.ts.map +1 -0
  74. package/dist/components/config/localeConfigToolDefinition.js +19 -0
  75. package/dist/components/config/localeConfigToolDefinition.js.map +1 -0
  76. package/dist/components/config/oauthConfigToolDefinition.d.ts +13 -0
  77. package/dist/components/config/oauthConfigToolDefinition.d.ts.map +1 -0
  78. package/dist/components/config/oauthConfigToolDefinition.js +19 -0
  79. package/dist/components/config/oauthConfigToolDefinition.js.map +1 -0
  80. package/dist/components/dialogs/ConfirmationDialog.d.ts +21 -0
  81. package/dist/components/dialogs/ConfirmationDialog.d.ts.map +1 -0
  82. package/dist/components/dialogs/ConfirmationDialog.js +28 -0
  83. package/dist/components/dialogs/ConfirmationDialog.js.map +1 -0
  84. package/dist/components/dialogs/ErrorDialog.d.ts +21 -0
  85. package/dist/components/dialogs/ErrorDialog.d.ts.map +1 -0
  86. package/dist/components/dialogs/ErrorDialog.js +28 -0
  87. package/dist/components/dialogs/ErrorDialog.js.map +1 -0
  88. package/dist/components/dialogs/LocaleSelectionDialog.d.ts +41 -0
  89. package/dist/components/dialogs/LocaleSelectionDialog.d.ts.map +1 -0
  90. package/dist/components/dialogs/LocaleSelectionDialog.js +117 -0
  91. package/dist/components/dialogs/LocaleSelectionDialog.js.map +1 -0
  92. package/dist/components/dialogs/SuccessDialog.d.ts +19 -0
  93. package/dist/components/dialogs/SuccessDialog.d.ts.map +1 -0
  94. package/dist/components/dialogs/SuccessDialog.js +37 -0
  95. package/dist/components/dialogs/SuccessDialog.js.map +1 -0
  96. package/dist/components/dialogs/index.d.ts +12 -0
  97. package/dist/components/dialogs/index.d.ts.map +1 -0
  98. package/dist/components/dialogs/index.js +8 -0
  99. package/dist/components/dialogs/index.js.map +1 -0
  100. package/dist/components/dnt/DNTFieldBadge.d.ts +16 -0
  101. package/dist/components/dnt/DNTFieldBadge.d.ts.map +1 -0
  102. package/dist/components/dnt/DNTFieldBadge.js +56 -0
  103. package/dist/components/dnt/DNTFieldBadge.js.map +1 -0
  104. package/dist/components/dnt/DNTFieldComponent.d.ts +17 -0
  105. package/dist/components/dnt/DNTFieldComponent.d.ts.map +1 -0
  106. package/dist/components/dnt/DNTFieldComponent.js +21 -0
  107. package/dist/components/dnt/DNTFieldComponent.js.map +1 -0
  108. package/dist/components/dnt/DNTFieldInput.d.ts +14 -0
  109. package/dist/components/dnt/DNTFieldInput.d.ts.map +1 -0
  110. package/dist/components/dnt/DNTFieldInput.js +76 -0
  111. package/dist/components/dnt/DNTFieldInput.js.map +1 -0
  112. package/dist/components/dnt/index.d.ts +7 -0
  113. package/dist/components/dnt/index.d.ts.map +1 -0
  114. package/dist/components/dnt/index.js +7 -0
  115. package/dist/components/dnt/index.js.map +1 -0
  116. package/dist/config/index.d.ts +6 -0
  117. package/dist/config/index.d.ts.map +1 -0
  118. package/dist/config/index.js +6 -0
  119. package/dist/config/index.js.map +1 -0
  120. package/dist/config/pluginConfig.d.ts +163 -0
  121. package/dist/config/pluginConfig.d.ts.map +1 -0
  122. package/dist/config/pluginConfig.js +548 -0
  123. package/dist/config/pluginConfig.js.map +1 -0
  124. package/dist/index.d.ts +12 -0
  125. package/dist/index.d.ts.map +1 -0
  126. package/dist/index.js +12 -0
  127. package/dist/index.js.map +1 -0
  128. package/dist/plugin.d.ts +3 -0
  129. package/dist/plugin.d.ts.map +1 -0
  130. package/dist/plugin.js +137 -0
  131. package/dist/plugin.js.map +1 -0
  132. package/dist/services/authStateManager.d.ts +94 -0
  133. package/dist/services/authStateManager.d.ts.map +1 -0
  134. package/dist/services/authStateManager.js +208 -0
  135. package/dist/services/authStateManager.js.map +1 -0
  136. package/dist/services/contentExtractor.d.ts +95 -0
  137. package/dist/services/contentExtractor.d.ts.map +1 -0
  138. package/dist/services/contentExtractor.js +516 -0
  139. package/dist/services/contentExtractor.js.map +1 -0
  140. package/dist/services/dialogService.d.ts +96 -0
  141. package/dist/services/dialogService.d.ts.map +1 -0
  142. package/dist/services/dialogService.js +244 -0
  143. package/dist/services/dialogService.js.map +1 -0
  144. package/dist/services/dntServiceManager.d.ts +44 -0
  145. package/dist/services/dntServiceManager.d.ts.map +1 -0
  146. package/dist/services/dntServiceManager.js +74 -0
  147. package/dist/services/dntServiceManager.js.map +1 -0
  148. package/dist/services/dntStorageAdapter.d.ts +73 -0
  149. package/dist/services/dntStorageAdapter.d.ts.map +1 -0
  150. package/dist/services/dntStorageAdapter.js +192 -0
  151. package/dist/services/dntStorageAdapter.js.map +1 -0
  152. package/dist/services/documentCreationService.d.ts +139 -0
  153. package/dist/services/documentCreationService.d.ts.map +1 -0
  154. package/dist/services/documentCreationService.js +938 -0
  155. package/dist/services/documentCreationService.js.map +1 -0
  156. package/dist/services/localeService.d.ts +160 -0
  157. package/dist/services/localeService.d.ts.map +1 -0
  158. package/dist/services/localeService.js +300 -0
  159. package/dist/services/localeService.js.map +1 -0
  160. package/dist/services/localeStorageAdapter.d.ts +42 -0
  161. package/dist/services/localeStorageAdapter.d.ts.map +1 -0
  162. package/dist/services/localeStorageAdapter.js +107 -0
  163. package/dist/services/localeStorageAdapter.js.map +1 -0
  164. package/dist/services/oauthConfigStorage.d.ts +46 -0
  165. package/dist/services/oauthConfigStorage.d.ts.map +1 -0
  166. package/dist/services/oauthConfigStorage.js +122 -0
  167. package/dist/services/oauthConfigStorage.js.map +1 -0
  168. package/dist/services/oauthService.d.ts +48 -0
  169. package/dist/services/oauthService.d.ts.map +1 -0
  170. package/dist/services/oauthService.js +71 -0
  171. package/dist/services/oauthService.js.map +1 -0
  172. package/dist/services/oauthServiceManager.d.ts +189 -0
  173. package/dist/services/oauthServiceManager.d.ts.map +1 -0
  174. package/dist/services/oauthServiceManager.js +380 -0
  175. package/dist/services/oauthServiceManager.js.map +1 -0
  176. package/dist/services/tokenStorage.d.ts +54 -0
  177. package/dist/services/tokenStorage.d.ts.map +1 -0
  178. package/dist/services/tokenStorage.js +140 -0
  179. package/dist/services/tokenStorage.js.map +1 -0
  180. package/dist/services/translationService.d.ts +374 -0
  181. package/dist/services/translationService.d.ts.map +1 -0
  182. package/dist/services/translationService.js +687 -0
  183. package/dist/services/translationService.js.map +1 -0
  184. package/dist/services/unifiedConfigStorage.d.ts +124 -0
  185. package/dist/services/unifiedConfigStorage.d.ts.map +1 -0
  186. package/dist/services/unifiedConfigStorage.js +304 -0
  187. package/dist/services/unifiedConfigStorage.js.map +1 -0
  188. package/dist/test-utils.d.ts +9 -0
  189. package/dist/test-utils.d.ts.map +1 -0
  190. package/dist/test-utils.js +13 -0
  191. package/dist/test-utils.js.map +1 -0
  192. package/dist/types/dialog.d.ts +107 -0
  193. package/dist/types/dialog.d.ts.map +1 -0
  194. package/dist/types/dialog.js +6 -0
  195. package/dist/types/dialog.js.map +1 -0
  196. package/dist/types/dnt.d.ts +84 -0
  197. package/dist/types/dnt.d.ts.map +1 -0
  198. package/dist/types/dnt.js +5 -0
  199. package/dist/types/dnt.js.map +1 -0
  200. package/dist/types/index.d.ts +12 -0
  201. package/dist/types/index.d.ts.map +1 -0
  202. package/dist/types/index.js +6 -0
  203. package/dist/types/index.js.map +1 -0
  204. package/dist/types/locale.d.ts +116 -0
  205. package/dist/types/locale.d.ts.map +1 -0
  206. package/dist/types/locale.js +189 -0
  207. package/dist/types/locale.js.map +1 -0
  208. package/dist/types/oauth.d.ts +90 -0
  209. package/dist/types/oauth.d.ts.map +1 -0
  210. package/dist/types/oauth.js +62 -0
  211. package/dist/types/oauth.js.map +1 -0
  212. package/dist/types/pluginConfig.d.ts +45 -0
  213. package/dist/types/pluginConfig.d.ts.map +1 -0
  214. package/dist/types/pluginConfig.js +6 -0
  215. package/dist/types/pluginConfig.js.map +1 -0
  216. package/dist/types/translation.d.ts +122 -0
  217. package/dist/types/translation.d.ts.map +1 -0
  218. package/dist/types/translation.js +6 -0
  219. package/dist/types/translation.js.map +1 -0
  220. package/dist/utils/htmlFormatter.d.ts +66 -0
  221. package/dist/utils/htmlFormatter.d.ts.map +1 -0
  222. package/dist/utils/htmlFormatter.js +191 -0
  223. package/dist/utils/htmlFormatter.js.map +1 -0
  224. package/dist/utils/index.d.ts +15 -0
  225. package/dist/utils/index.d.ts.map +1 -0
  226. package/dist/utils/index.js +16 -0
  227. package/dist/utils/index.js.map +1 -0
  228. package/dist/utils/logger.d.ts +105 -0
  229. package/dist/utils/logger.d.ts.map +1 -0
  230. package/dist/utils/logger.js +229 -0
  231. package/dist/utils/logger.js.map +1 -0
  232. package/dist/utils/oauthErrorFeedback.d.ts +76 -0
  233. package/dist/utils/oauthErrorFeedback.d.ts.map +1 -0
  234. package/dist/utils/oauthErrorFeedback.js +134 -0
  235. package/dist/utils/oauthErrorFeedback.js.map +1 -0
  236. package/dist/utils/oauthLogger.d.ts +176 -0
  237. package/dist/utils/oauthLogger.d.ts.map +1 -0
  238. package/dist/utils/oauthLogger.js +282 -0
  239. package/dist/utils/oauthLogger.js.map +1 -0
  240. package/dist/utils/validator.d.ts +67 -0
  241. package/dist/utils/validator.d.ts.map +1 -0
  242. package/dist/utils/validator.js +390 -0
  243. package/dist/utils/validator.js.map +1 -0
  244. package/package.json +80 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentCreationService.js","sourceRoot":"","sources":["../../src/services/documentCreationService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,160 @@
1
+ /**
2
+ * Locale configuration management service
3
+ * Requirements: 1.1, 1.4, 1.5, 5.4, 5.5, 5.6
4
+ *
5
+ * Provides CRUD operations for locale configuration management with validation,
6
+ * persistence, and error handling capabilities.
7
+ */
8
+ import { LocaleConfig, LocaleDefinition, LocaleValidationResult } from '../types/locale';
9
+ /**
10
+ * Storage interface for locale configuration persistence
11
+ * This allows for different storage implementations (localStorage, Sanity config, etc.)
12
+ */
13
+ export interface LocaleStorageAdapter {
14
+ load(): Promise<LocaleConfig | null>;
15
+ save(config: LocaleConfig): Promise<void>;
16
+ }
17
+ /**
18
+ * Error types for locale service operations
19
+ */
20
+ export declare class LocaleServiceError extends Error {
21
+ code: string;
22
+ details?: unknown | undefined;
23
+ constructor(message: string, code: string, details?: unknown | undefined);
24
+ }
25
+ /**
26
+ * Service for managing locale configuration with CRUD operations
27
+ * Requirements: 1.1, 1.4, 1.5, 5.4, 5.5, 5.6
28
+ */
29
+ export declare class LocaleService {
30
+ private config;
31
+ private storageAdapter;
32
+ /**
33
+ * Creates a new LocaleService instance
34
+ *
35
+ * @param storageAdapter - Optional storage adapter for persistence
36
+ * @param initialConfig - Optional initial configuration (defaults to empty config)
37
+ */
38
+ constructor(storageAdapter?: LocaleStorageAdapter | null, initialConfig?: LocaleConfig);
39
+ /**
40
+ * Loads locale configuration from storage
41
+ * Requirements: 1.4, 5.4
42
+ *
43
+ * @returns Promise resolving to the loaded configuration
44
+ * @throws LocaleServiceError if loading fails
45
+ */
46
+ loadConfig(): Promise<LocaleConfig>;
47
+ /**
48
+ * Saves locale configuration to storage
49
+ * Requirements: 1.5, 5.5
50
+ *
51
+ * @param config - Optional configuration to save (defaults to current config)
52
+ * @returns Promise resolving when save is complete
53
+ * @throws LocaleServiceError if saving fails
54
+ */
55
+ saveConfig(config?: LocaleConfig): Promise<void>;
56
+ /**
57
+ * Gets the current locale configuration
58
+ *
59
+ * @returns Current locale configuration
60
+ */
61
+ getConfig(): LocaleConfig;
62
+ /**
63
+ * Gets all locales from the configuration
64
+ *
65
+ * @returns Array of all locale definitions
66
+ */
67
+ getAllLocales(): LocaleDefinition[];
68
+ /**
69
+ * Gets all enabled locales from the configuration
70
+ *
71
+ * @returns Array of enabled locale definitions
72
+ */
73
+ getEnabledLocales(): LocaleDefinition[];
74
+ /**
75
+ * Gets a locale by its code
76
+ *
77
+ * @param code - Locale code to find
78
+ * @returns Locale definition or undefined if not found
79
+ */
80
+ getLocaleByCode(code: string): LocaleDefinition | undefined;
81
+ /**
82
+ * Checks if a locale code exists in the configuration
83
+ *
84
+ * @param code - Locale code to check
85
+ * @returns True if the locale exists
86
+ */
87
+ hasLocale(code: string): boolean;
88
+ /**
89
+ * Adds a new locale to the configuration
90
+ * Requirements: 1.1, 1.2, 1.3
91
+ *
92
+ * @param locale - Locale definition to add
93
+ * @returns Promise resolving to validation result
94
+ * @throws LocaleServiceError if locale is invalid or already exists
95
+ */
96
+ addLocale(locale: Omit<LocaleDefinition, 'createdAt' | 'updatedAt'>): Promise<LocaleValidationResult>;
97
+ /**
98
+ * Updates an existing locale in the configuration
99
+ * Requirements: 1.6, 1.7
100
+ *
101
+ * @param code - Code of the locale to update
102
+ * @param updates - Partial locale definition with updates
103
+ * @returns Promise resolving to validation result
104
+ * @throws LocaleServiceError if locale not found or updates are invalid
105
+ */
106
+ updateLocale(code: string, updates: Partial<Omit<LocaleDefinition, 'code' | 'createdAt' | 'updatedAt'>>): Promise<LocaleValidationResult>;
107
+ /**
108
+ * Removes a locale from the configuration
109
+ * Requirements: 1.6
110
+ *
111
+ * @param code - Code of the locale to remove
112
+ * @returns Promise resolving when removal is complete
113
+ * @throws LocaleServiceError if locale not found
114
+ */
115
+ removeLocale(code: string): Promise<void>;
116
+ /**
117
+ * Sets the default locale
118
+ *
119
+ * @param code - Code of the locale to set as default
120
+ * @returns Promise resolving when update is complete
121
+ * @throws LocaleServiceError if locale not found
122
+ */
123
+ setDefaultLocale(code: string): Promise<void>;
124
+ /**
125
+ * Clears the default locale
126
+ *
127
+ * @returns Promise resolving when update is complete
128
+ */
129
+ clearDefaultLocale(): Promise<void>;
130
+ /**
131
+ * Validates the current configuration
132
+ * Requirements: 5.6
133
+ *
134
+ * @returns Validation result
135
+ */
136
+ validateCurrentConfig(): LocaleValidationResult;
137
+ /**
138
+ * Resets configuration to default state
139
+ * Requirements: 5.6
140
+ *
141
+ * @returns Promise resolving when reset is complete
142
+ */
143
+ resetToDefault(): Promise<void>;
144
+ /**
145
+ * Imports a locale configuration
146
+ * Useful for bulk import or migration scenarios
147
+ *
148
+ * @param config - Configuration to import
149
+ * @returns Promise resolving to validation result
150
+ * @throws LocaleServiceError if configuration is invalid
151
+ */
152
+ importConfig(config: LocaleConfig): Promise<LocaleValidationResult>;
153
+ /**
154
+ * Exports the current locale configuration
155
+ *
156
+ * @returns Current configuration as a plain object
157
+ */
158
+ exportConfig(): LocaleConfig;
159
+ }
160
+ //# sourceMappingURL=localeService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"localeService.d.ts","sourceRoot":"","sources":["../../src/services/localeService.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,sBAAsB,EAKvB,MAAM,iBAAiB,CAAC;AAGzB;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,IAAI,IAAI,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IACrC,IAAI,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3C;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;IAGlC,IAAI,EAAE,MAAM;IACZ,OAAO,CAAC,EAAE,OAAO;gBAFxB,OAAO,EAAE,MAAM,EACR,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,OAAO,YAAA;CAK3B;AAED;;;GAGG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,cAAc,CAA8B;IAEpD;;;;;OAKG;gBAED,cAAc,GAAE,oBAAoB,GAAG,IAAW,EAClD,aAAa,CAAC,EAAE,YAAY;IAS9B;;;;;;OAMG;IACG,UAAU,IAAI,OAAO,CAAC,YAAY,CAAC;IA2CzC;;;;;;;OAOG;IACG,UAAU,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAoCtD;;;;OAIG;IACH,SAAS,IAAI,YAAY;IAIzB;;;;OAIG;IACH,aAAa,IAAI,gBAAgB,EAAE;IAInC;;;;OAIG;IACH,iBAAiB,IAAI,gBAAgB,EAAE;IAIvC;;;;;OAKG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS;IAI3D;;;;;OAKG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIhC;;;;;;;OAOG;IACG,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,gBAAgB,EAAE,WAAW,GAAG,WAAW,CAAC,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAqC3G;;;;;;;;OAQG;IACG,YAAY,CAChB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,MAAM,GAAG,WAAW,GAAG,WAAW,CAAC,CAAC,GAC3E,OAAO,CAAC,sBAAsB,CAAC;IAwClC;;;;;;;OAOG;IACG,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuB/C;;;;;;OAMG;IACG,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAanD;;;;OAIG;IACG,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;IAKzC;;;;;OAKG;IACH,qBAAqB,IAAI,sBAAsB;IAI/C;;;;;OAKG;IACG,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAKrC;;;;;;;OAOG;IACG,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAiBzE;;;;OAIG;IACH,YAAY,IAAI,YAAY;CAG7B"}
@@ -0,0 +1,300 @@
1
+ /**
2
+ * Locale configuration management service
3
+ * Requirements: 1.1, 1.4, 1.5, 5.4, 5.5, 5.6
4
+ *
5
+ * Provides CRUD operations for locale configuration management with validation,
6
+ * persistence, and error handling capabilities.
7
+ */
8
+ import { validateLocaleDefinition, validateLocaleConfig, localeExists, findLocaleByCode } from '../types/locale';
9
+ import { defaultLocaleConfig } from '../config/pluginConfig';
10
+ /**
11
+ * Error types for locale service operations
12
+ */
13
+ export class LocaleServiceError extends Error {
14
+ constructor(message, code, details) {
15
+ super(message);
16
+ this.code = code;
17
+ this.details = details;
18
+ this.name = 'LocaleServiceError';
19
+ }
20
+ }
21
+ /**
22
+ * Service for managing locale configuration with CRUD operations
23
+ * Requirements: 1.1, 1.4, 1.5, 5.4, 5.5, 5.6
24
+ */
25
+ export class LocaleService {
26
+ /**
27
+ * Creates a new LocaleService instance
28
+ *
29
+ * @param storageAdapter - Optional storage adapter for persistence
30
+ * @param initialConfig - Optional initial configuration (defaults to empty config)
31
+ */
32
+ constructor(storageAdapter = null, initialConfig) {
33
+ this.storageAdapter = storageAdapter;
34
+ this.config = initialConfig || {
35
+ ...defaultLocaleConfig,
36
+ locales: [...defaultLocaleConfig.locales]
37
+ };
38
+ }
39
+ /**
40
+ * Loads locale configuration from storage
41
+ * Requirements: 1.4, 5.4
42
+ *
43
+ * @returns Promise resolving to the loaded configuration
44
+ * @throws LocaleServiceError if loading fails
45
+ */
46
+ async loadConfig() {
47
+ try {
48
+ if (!this.storageAdapter) {
49
+ // No storage adapter, return current in-memory config
50
+ return this.config;
51
+ }
52
+ const loadedConfig = await this.storageAdapter.load();
53
+ if (loadedConfig) {
54
+ // Validate loaded configuration
55
+ const validation = validateLocaleConfig(loadedConfig);
56
+ if (!validation.isValid) {
57
+ // Configuration is corrupted, reset to default
58
+ console.error('Loaded configuration is invalid:', validation.errors);
59
+ throw new LocaleServiceError('Configuration is corrupted and cannot be loaded', 'CONFIG_CORRUPTED', { errors: validation.errors });
60
+ }
61
+ this.config = loadedConfig;
62
+ return this.config;
63
+ }
64
+ // No configuration exists, initialize with default
65
+ this.config = { ...defaultLocaleConfig };
66
+ return this.config;
67
+ }
68
+ catch (error) {
69
+ if (error instanceof LocaleServiceError) {
70
+ throw error;
71
+ }
72
+ throw new LocaleServiceError('Failed to load locale configuration', 'LOAD_FAILED', { originalError: error });
73
+ }
74
+ }
75
+ /**
76
+ * Saves locale configuration to storage
77
+ * Requirements: 1.5, 5.5
78
+ *
79
+ * @param config - Optional configuration to save (defaults to current config)
80
+ * @returns Promise resolving when save is complete
81
+ * @throws LocaleServiceError if saving fails
82
+ */
83
+ async saveConfig(config) {
84
+ try {
85
+ const configToSave = config || this.config;
86
+ // Validate configuration before saving
87
+ const validation = validateLocaleConfig(configToSave);
88
+ if (!validation.isValid) {
89
+ throw new LocaleServiceError('Cannot save invalid configuration', 'INVALID_CONFIG', { errors: validation.errors });
90
+ }
91
+ // Update lastUpdated timestamp
92
+ configToSave.lastUpdated = new Date().toISOString();
93
+ if (this.storageAdapter) {
94
+ await this.storageAdapter.save(configToSave);
95
+ }
96
+ this.config = configToSave;
97
+ }
98
+ catch (error) {
99
+ if (error instanceof LocaleServiceError) {
100
+ throw error;
101
+ }
102
+ throw new LocaleServiceError('Failed to save locale configuration', 'SAVE_FAILED', { originalError: error });
103
+ }
104
+ }
105
+ /**
106
+ * Gets the current locale configuration
107
+ *
108
+ * @returns Current locale configuration
109
+ */
110
+ getConfig() {
111
+ return { ...this.config };
112
+ }
113
+ /**
114
+ * Gets all locales from the configuration
115
+ *
116
+ * @returns Array of all locale definitions
117
+ */
118
+ getAllLocales() {
119
+ return [...this.config.locales];
120
+ }
121
+ /**
122
+ * Gets all enabled locales from the configuration
123
+ *
124
+ * @returns Array of enabled locale definitions
125
+ */
126
+ getEnabledLocales() {
127
+ return this.config.locales.filter(locale => locale.enabled);
128
+ }
129
+ /**
130
+ * Gets a locale by its code
131
+ *
132
+ * @param code - Locale code to find
133
+ * @returns Locale definition or undefined if not found
134
+ */
135
+ getLocaleByCode(code) {
136
+ return findLocaleByCode(this.config, code);
137
+ }
138
+ /**
139
+ * Checks if a locale code exists in the configuration
140
+ *
141
+ * @param code - Locale code to check
142
+ * @returns True if the locale exists
143
+ */
144
+ hasLocale(code) {
145
+ return localeExists(this.config, code);
146
+ }
147
+ /**
148
+ * Adds a new locale to the configuration
149
+ * Requirements: 1.1, 1.2, 1.3
150
+ *
151
+ * @param locale - Locale definition to add
152
+ * @returns Promise resolving to validation result
153
+ * @throws LocaleServiceError if locale is invalid or already exists
154
+ */
155
+ async addLocale(locale) {
156
+ // Validate locale definition
157
+ const now = new Date().toISOString();
158
+ const fullLocale = {
159
+ ...locale,
160
+ createdAt: now,
161
+ updatedAt: now
162
+ };
163
+ const validation = validateLocaleDefinition(fullLocale);
164
+ if (!validation.isValid) {
165
+ throw new LocaleServiceError('Cannot add invalid locale', 'INVALID_LOCALE', { errors: validation.errors });
166
+ }
167
+ // Check for duplicate locale code
168
+ if (this.hasLocale(locale.code)) {
169
+ throw new LocaleServiceError(`Locale with code '${locale.code}' already exists`, 'DUPLICATE_LOCALE', { code: locale.code });
170
+ }
171
+ // Add locale to configuration
172
+ this.config.locales.push(fullLocale);
173
+ // Save configuration
174
+ await this.saveConfig();
175
+ return validation;
176
+ }
177
+ /**
178
+ * Updates an existing locale in the configuration
179
+ * Requirements: 1.6, 1.7
180
+ *
181
+ * @param code - Code of the locale to update
182
+ * @param updates - Partial locale definition with updates
183
+ * @returns Promise resolving to validation result
184
+ * @throws LocaleServiceError if locale not found or updates are invalid
185
+ */
186
+ async updateLocale(code, updates) {
187
+ const localeIndex = this.config.locales.findIndex(l => l.code === code);
188
+ if (localeIndex === -1) {
189
+ throw new LocaleServiceError(`Locale with code '${code}' not found`, 'LOCALE_NOT_FOUND', { code });
190
+ }
191
+ const existingLocale = this.config.locales[localeIndex];
192
+ const updatedLocale = {
193
+ ...existingLocale,
194
+ ...updates,
195
+ code: existingLocale.code, // Preserve original code
196
+ createdAt: existingLocale.createdAt, // Preserve creation timestamp
197
+ updatedAt: new Date().toISOString()
198
+ };
199
+ // Validate updated locale
200
+ const validation = validateLocaleDefinition(updatedLocale);
201
+ if (!validation.isValid) {
202
+ throw new LocaleServiceError('Cannot update locale with invalid data', 'INVALID_LOCALE', { errors: validation.errors });
203
+ }
204
+ // Update locale in configuration
205
+ this.config.locales[localeIndex] = updatedLocale;
206
+ // Save configuration
207
+ await this.saveConfig();
208
+ return validation;
209
+ }
210
+ /**
211
+ * Removes a locale from the configuration
212
+ * Requirements: 1.6
213
+ *
214
+ * @param code - Code of the locale to remove
215
+ * @returns Promise resolving when removal is complete
216
+ * @throws LocaleServiceError if locale not found
217
+ */
218
+ async removeLocale(code) {
219
+ const localeIndex = this.config.locales.findIndex(l => l.code === code);
220
+ if (localeIndex === -1) {
221
+ throw new LocaleServiceError(`Locale with code '${code}' not found`, 'LOCALE_NOT_FOUND', { code });
222
+ }
223
+ // Remove locale from configuration
224
+ this.config.locales.splice(localeIndex, 1);
225
+ // If removed locale was the default, clear default locale
226
+ if (this.config.defaultLocale === code) {
227
+ this.config.defaultLocale = undefined;
228
+ }
229
+ // Save configuration
230
+ await this.saveConfig();
231
+ }
232
+ /**
233
+ * Sets the default locale
234
+ *
235
+ * @param code - Code of the locale to set as default
236
+ * @returns Promise resolving when update is complete
237
+ * @throws LocaleServiceError if locale not found
238
+ */
239
+ async setDefaultLocale(code) {
240
+ if (!this.hasLocale(code)) {
241
+ throw new LocaleServiceError(`Cannot set default locale: locale with code '${code}' not found`, 'LOCALE_NOT_FOUND', { code });
242
+ }
243
+ this.config.defaultLocale = code;
244
+ await this.saveConfig();
245
+ }
246
+ /**
247
+ * Clears the default locale
248
+ *
249
+ * @returns Promise resolving when update is complete
250
+ */
251
+ async clearDefaultLocale() {
252
+ this.config.defaultLocale = undefined;
253
+ await this.saveConfig();
254
+ }
255
+ /**
256
+ * Validates the current configuration
257
+ * Requirements: 5.6
258
+ *
259
+ * @returns Validation result
260
+ */
261
+ validateCurrentConfig() {
262
+ return validateLocaleConfig(this.config);
263
+ }
264
+ /**
265
+ * Resets configuration to default state
266
+ * Requirements: 5.6
267
+ *
268
+ * @returns Promise resolving when reset is complete
269
+ */
270
+ async resetToDefault() {
271
+ this.config = { ...defaultLocaleConfig };
272
+ await this.saveConfig();
273
+ }
274
+ /**
275
+ * Imports a locale configuration
276
+ * Useful for bulk import or migration scenarios
277
+ *
278
+ * @param config - Configuration to import
279
+ * @returns Promise resolving to validation result
280
+ * @throws LocaleServiceError if configuration is invalid
281
+ */
282
+ async importConfig(config) {
283
+ const validation = validateLocaleConfig(config);
284
+ if (!validation.isValid) {
285
+ throw new LocaleServiceError('Cannot import invalid configuration', 'INVALID_CONFIG', { errors: validation.errors });
286
+ }
287
+ this.config = { ...config };
288
+ await this.saveConfig();
289
+ return validation;
290
+ }
291
+ /**
292
+ * Exports the current locale configuration
293
+ *
294
+ * @returns Current configuration as a plain object
295
+ */
296
+ exportConfig() {
297
+ return { ...this.config };
298
+ }
299
+ }
300
+ //# sourceMappingURL=localeService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"localeService.js","sourceRoot":"","sources":["../../src/services/localeService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Locale Storage Adapter for Sanity Configuration
3
+ * Requirements: 5.1, 5.2, 5.3, 5.7
4
+ *
5
+ * Now delegates to UnifiedConfigStorage for centralized configuration management.
6
+ * Locale settings are stored in the EL_PluginConfiguration document alongside
7
+ * OAuth and DNT configurations.
8
+ */
9
+ import { SanityClient } from 'sanity';
10
+ import { LocaleConfig } from '../types/locale';
11
+ import { LocaleStorageAdapter } from './localeService';
12
+ /**
13
+ * Locale configuration storage adapter
14
+ * Now uses UnifiedConfigStorage for centralized management
15
+ * Requirements: 5.1, 5.2, 5.3, 5.7
16
+ */
17
+ export declare class SanityLocaleStorageAdapter implements LocaleStorageAdapter {
18
+ private unifiedStorage;
19
+ private client;
20
+ constructor(client: SanityClient);
21
+ /**
22
+ * Load locale configuration from unified storage
23
+ * Requirements: 5.2, 5.4
24
+ */
25
+ load(): Promise<LocaleConfig | null>;
26
+ /**
27
+ * Save locale configuration to unified storage
28
+ * Requirements: 5.3, 5.5
29
+ */
30
+ save(config: LocaleConfig): Promise<void>;
31
+ /**
32
+ * Load from legacy locale-specific document
33
+ * @private
34
+ */
35
+ private loadLegacy;
36
+ /**
37
+ * Delete legacy locale document after migration
38
+ * @private
39
+ */
40
+ private deleteLegacy;
41
+ }
42
+ //# sourceMappingURL=localeStorageAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"localeStorageAdapter.d.ts","sourceRoot":"","sources":["../../src/services/localeStorageAdapter.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAUvD;;;;GAIG;AACH,qBAAa,0BAA2B,YAAW,oBAAoB;IACrE,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,MAAM,CAAe;gBAEjB,MAAM,EAAE,YAAY;IAKhC;;;OAGG;IACG,IAAI,IAAI,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IA4B1C;;;OAGG;IACG,IAAI,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAY/C;;;OAGG;YACW,UAAU;IAuBxB;;;OAGG;YACW,YAAY;CAS3B"}