@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,82 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- /**
3
- * Authentication Status Component
4
- * Requirements: 6.2, 6.3, 1.1, 7.1, 7.2, 7.3
5
- *
6
- * Displays the current authentication status and provides controls
7
- * for connecting to and disconnecting from Easyling.
8
- */
9
- import { useState, useEffect } from 'react';
10
- import { Card, Stack, Text, Button, Flex, Badge } from '@sanity/ui';
11
- import { CheckmarkCircleIcon, CloseCircleIcon, LinkIcon, LinkRemovedIcon } from '@sanity/icons';
12
- /**
13
- * Authentication Status Component
14
- *
15
- * Subscribes to AuthStateManager for reactive updates and displays
16
- * different UI based on the current authentication state.
17
- *
18
- * Requirements: 6.2, 6.3, 1.1, 7.1, 7.2, 7.3
19
- */
20
- export const AuthStatus = ({ authStateManager, onConnect, onDisconnect }) => {
21
- const [authState, setAuthState] = useState({
22
- state: 'unauthenticated'
23
- });
24
- const [isProcessing, setIsProcessing] = useState(false);
25
- // Subscribe to auth state changes
26
- useEffect(() => {
27
- const unsubscribe = authStateManager.subscribe((newState) => {
28
- setAuthState(newState);
29
- setIsProcessing(false);
30
- });
31
- return unsubscribe;
32
- }, [authStateManager]);
33
- /**
34
- * Handle connect button click
35
- * Requirements: 1.1, 6.2
36
- */
37
- const handleConnect = () => {
38
- setIsProcessing(true);
39
- onConnect();
40
- };
41
- /**
42
- * Handle disconnect button click
43
- * Requirements: 6.3, 6.4
44
- */
45
- const handleDisconnect = async () => {
46
- setIsProcessing(true);
47
- try {
48
- await onDisconnect();
49
- }
50
- finally {
51
- setIsProcessing(false);
52
- }
53
- };
54
- /**
55
- * Render unauthenticated state UI
56
- * Requirements: 1.1, 6.2
57
- */
58
- const renderUnauthenticated = () => (_jsx(Card, { padding: 4, radius: 2, shadow: 1, children: _jsxs(Stack, { space: 3, children: [_jsxs(Flex, { align: "center", gap: 2, children: [_jsx(Text, { size: 2, children: _jsx(LinkRemovedIcon, {}) }), _jsx(Text, { size: 2, weight: "semibold", children: "Not Connected" })] }), _jsx(Text, { size: 1, muted: true, children: "Connect to Easyling to enable translation services. You'll be able to translate documents and access your translation projects." }), _jsx(Button, { text: "Connect to Easyling", tone: "primary", icon: LinkIcon, onClick: handleConnect, disabled: isProcessing, loading: isProcessing })] }) }));
59
- /**
60
- * Render authenticated state UI
61
- * Requirements: 6.2, 6.3, 6.4
62
- */
63
- const renderAuthenticated = () => (_jsx(Card, { padding: 4, radius: 2, shadow: 1, tone: "positive", children: _jsxs(Stack, { space: 3, children: [_jsx(Flex, { align: "center", justify: "space-between", children: _jsxs(Flex, { align: "center", gap: 2, children: [_jsx(Text, { size: 2, children: _jsx(CheckmarkCircleIcon, {}) }), _jsx(Text, { size: 2, weight: "semibold", children: "Connected" }), _jsx(Badge, { tone: "positive", mode: "outline", children: "Active" })] }) }), _jsxs(Stack, { space: 2, children: [authState.projectName && (_jsxs(Flex, { align: "center", gap: 2, children: [_jsx(Text, { size: 1, muted: true, children: "Project:" }), _jsx(Text, { size: 1, weight: "medium", children: authState.projectName })] })), authState.projectId && !authState.projectName && (_jsxs(Flex, { align: "center", gap: 2, children: [_jsx(Text, { size: 1, muted: true, children: "Project ID:" }), _jsx(Text, { size: 1, weight: "medium", children: authState.projectId })] }))] }), _jsx(Button, { text: "Disconnect", mode: "ghost", tone: "critical", icon: LinkRemovedIcon, onClick: handleDisconnect, disabled: isProcessing, loading: isProcessing })] }) }));
64
- /**
65
- * Render error state UI
66
- * Requirements: 7.1, 7.2, 7.3
67
- */
68
- const renderError = () => (_jsx(Card, { padding: 4, radius: 2, shadow: 1, tone: "critical", children: _jsxs(Stack, { space: 3, children: [_jsxs(Flex, { align: "center", gap: 2, children: [_jsx(Text, { size: 2, children: _jsx(CloseCircleIcon, {}) }), _jsx(Text, { size: 2, weight: "semibold", children: "Authentication Error" })] }), _jsx(Text, { size: 1, children: authState.error || 'An error occurred during authentication.' }), _jsx(Text, { size: 1, muted: true, children: "Please try connecting again. If the problem persists, check your OAuth configuration or contact support." }), _jsxs(Flex, { gap: 2, children: [_jsx(Button, { text: "Retry", tone: "primary", icon: LinkIcon, onClick: handleConnect, disabled: isProcessing, loading: isProcessing }), _jsx(Button, { text: "Clear Error", mode: "ghost", onClick: handleDisconnect, disabled: isProcessing })] })] }) }));
69
- // Render appropriate UI based on auth state
70
- switch (authState.state) {
71
- case 'unauthenticated':
72
- return renderUnauthenticated();
73
- case 'authenticated':
74
- return renderAuthenticated();
75
- case 'error':
76
- return renderError();
77
- default:
78
- // Fallback for unknown states
79
- return renderUnauthenticated();
80
- }
81
- };
82
- //# sourceMappingURL=AuthStatus.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AuthStatus.js","sourceRoot":"","sources":["../../../src/components/auth/AuthStatus.tsx"],"names":[],"mappings":";AAAA;;;;;;GAMG;AAEH,OAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EACL,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,KAAK,EAEN,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,mBAAmB,EACnB,eAAe,EAEf,QAAQ,EACR,eAAe,EAChB,MAAM,eAAe,CAAC;AAevB;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,UAAU,GAA8B,CAAC,EACpD,gBAAgB,EAChB,SAAS,EACT,YAAY,EACb,EAAE,EAAE;IACH,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAgB;QACxD,KAAK,EAAE,iBAAiB;KACzB,CAAC,CAAC;IACH,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAExD,kCAAkC;IAClC,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,WAAW,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,EAAE;YAC1D,YAAY,CAAC,QAAQ,CAAC,CAAC;YACvB,eAAe,CAAC,KAAK,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;QAEH,OAAO,WAAW,CAAC;IACrB,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAEvB;;;OAGG;IACH,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,eAAe,CAAC,IAAI,CAAC,CAAC;QACtB,SAAS,EAAE,CAAC;IACd,CAAC,CAAC;IAEF;;;OAGG;IACH,MAAM,gBAAgB,GAAG,KAAK,IAAI,EAAE;QAClC,eAAe,CAAC,IAAI,CAAC,CAAC;QACtB,IAAI,CAAC;YACH,MAAM,YAAY,EAAE,CAAC;QACvB,CAAC;gBAAS,CAAC;YACT,eAAe,CAAC,KAAK,CAAC,CAAC;QACzB,CAAC;IACH,CAAC,CAAC;IAEF;;;OAGG;IACH,MAAM,qBAAqB,GAAG,GAAG,EAAE,CAAC,CAClC,KAAC,IAAI,IAAC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,YACpC,MAAC,KAAK,IAAC,KAAK,EAAE,CAAC,aACb,MAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,EAAC,GAAG,EAAE,CAAC,aACzB,KAAC,IAAI,IAAC,IAAI,EAAE,CAAC,YACX,KAAC,eAAe,KAAG,GACd,EACP,KAAC,IAAI,IAAC,IAAI,EAAE,CAAC,EAAE,MAAM,EAAC,UAAU,8BAEzB,IACF,EAEP,KAAC,IAAI,IAAC,IAAI,EAAE,CAAC,EAAE,KAAK,sJAGb,EAEP,KAAC,MAAM,IACL,IAAI,EAAC,qBAAqB,EAC1B,IAAI,EAAC,SAAS,EACd,IAAI,EAAE,QAAQ,EACd,OAAO,EAAE,aAAa,EACtB,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE,YAAY,GACrB,IACI,GACH,CACR,CAAC;IAGF;;;OAGG;IACH,MAAM,mBAAmB,GAAG,GAAG,EAAE,CAAC,CAChC,KAAC,IAAI,IAAC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAC,UAAU,YACrD,MAAC,KAAK,IAAC,KAAK,EAAE,CAAC,aACb,KAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,EAAC,OAAO,EAAC,eAAe,YAC1C,MAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,EAAC,GAAG,EAAE,CAAC,aACzB,KAAC,IAAI,IAAC,IAAI,EAAE,CAAC,YACX,KAAC,mBAAmB,KAAG,GAClB,EACP,KAAC,IAAI,IAAC,IAAI,EAAE,CAAC,EAAE,MAAM,EAAC,UAAU,0BAEzB,EACP,KAAC,KAAK,IAAC,IAAI,EAAC,UAAU,EAAC,IAAI,EAAC,SAAS,uBAE7B,IACH,GACF,EAEP,MAAC,KAAK,IAAC,KAAK,EAAE,CAAC,aACZ,SAAS,CAAC,WAAW,IAAI,CACxB,MAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,EAAC,GAAG,EAAE,CAAC,aACzB,KAAC,IAAI,IAAC,IAAI,EAAE,CAAC,EAAE,KAAK,+BAEb,EACP,KAAC,IAAI,IAAC,IAAI,EAAE,CAAC,EAAE,MAAM,EAAC,QAAQ,YAC3B,SAAS,CAAC,WAAW,GACjB,IACF,CACR,EAEA,SAAS,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,IAAI,CAChD,MAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,EAAC,GAAG,EAAE,CAAC,aACzB,KAAC,IAAI,IAAC,IAAI,EAAE,CAAC,EAAE,KAAK,kCAEb,EACP,KAAC,IAAI,IAAC,IAAI,EAAE,CAAC,EAAE,MAAM,EAAC,QAAQ,YAC3B,SAAS,CAAC,SAAS,GACf,IACF,CACR,IACK,EAER,KAAC,MAAM,IACL,IAAI,EAAC,YAAY,EACjB,IAAI,EAAC,OAAO,EACZ,IAAI,EAAC,UAAU,EACf,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,gBAAgB,EACzB,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE,YAAY,GACrB,IACI,GACH,CACR,CAAC;IAGF;;;OAGG;IACH,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,CACxB,KAAC,IAAI,IAAC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAC,UAAU,YACrD,MAAC,KAAK,IAAC,KAAK,EAAE,CAAC,aACb,MAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,EAAC,GAAG,EAAE,CAAC,aACzB,KAAC,IAAI,IAAC,IAAI,EAAE,CAAC,YACX,KAAC,eAAe,KAAG,GACd,EACP,KAAC,IAAI,IAAC,IAAI,EAAE,CAAC,EAAE,MAAM,EAAC,UAAU,qCAEzB,IACF,EAEP,KAAC,IAAI,IAAC,IAAI,EAAE,CAAC,YACV,SAAS,CAAC,KAAK,IAAI,0CAA0C,GACzD,EAEP,KAAC,IAAI,IAAC,IAAI,EAAE,CAAC,EAAE,KAAK,+HAGb,EAEP,MAAC,IAAI,IAAC,GAAG,EAAE,CAAC,aACV,KAAC,MAAM,IACL,IAAI,EAAC,OAAO,EACZ,IAAI,EAAC,SAAS,EACd,IAAI,EAAE,QAAQ,EACd,OAAO,EAAE,aAAa,EACtB,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE,YAAY,GACrB,EACF,KAAC,MAAM,IACL,IAAI,EAAC,aAAa,EAClB,IAAI,EAAC,OAAO,EACZ,OAAO,EAAE,gBAAgB,EACzB,QAAQ,EAAE,YAAY,GACtB,IACG,IACD,GACH,CACR,CAAC;IAEF,4CAA4C;IAC5C,QAAQ,SAAS,CAAC,KAAK,EAAE,CAAC;QACxB,KAAK,iBAAiB;YACpB,OAAO,qBAAqB,EAAE,CAAC;QAEjC,KAAK,eAAe;YAClB,OAAO,mBAAmB,EAAE,CAAC;QAE/B,KAAK,OAAO;YACV,OAAO,WAAW,EAAE,CAAC;QAEvB;YACE,8BAA8B;YAC9B,OAAO,qBAAqB,EAAE,CAAC;IACnC,CAAC;AACH,CAAC,CAAC"}
@@ -1,15 +0,0 @@
1
- /**
2
- * Authentication Status Wrapper Component
3
- *
4
- * Wrapper component that connects AuthStatus to the service manager.
5
- * Provides the necessary callbacks for connect and disconnect actions.
6
- */
7
- import React from 'react';
8
- /**
9
- * Authentication Status Wrapper
10
- *
11
- * Connects the AuthStatus component to the service manager singleton.
12
- * Handles connect and disconnect actions by delegating to the service manager.
13
- */
14
- export declare const AuthStatusWrapper: React.FC;
15
- //# sourceMappingURL=AuthStatusWrapper.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AuthStatusWrapper.d.ts","sourceRoot":"","sources":["../../../src/components/auth/AuthStatusWrapper.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAmCrC,CAAC"}
@@ -1,39 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { useClient } from 'sanity';
3
- import { AuthStatus } from './AuthStatus';
4
- import { OAuthServiceManager } from '../../services/oauthServiceManager';
5
- /**
6
- * Authentication Status Wrapper
7
- *
8
- * Connects the AuthStatus component to the service manager singleton.
9
- * Handles connect and disconnect actions by delegating to the service manager.
10
- */
11
- export const AuthStatusWrapper = () => {
12
- const client = useClient({ apiVersion: '2023-01-01' });
13
- const serviceManager = OAuthServiceManager.getInstance(client);
14
- /**
15
- * Handle connect button click
16
- *
17
- * Navigates to the Easyling Configuration tool where users can enter their credentials
18
- */
19
- const handleConnect = () => {
20
- console.log('Connect button clicked, navigating to Easyling Configuration');
21
- // Navigate to the Easyling Configuration tool using standard navigation
22
- window.location.href = '/easyling-config';
23
- };
24
- /**
25
- * Handle disconnect button click
26
- * Requirements: 6.3, 6.4
27
- */
28
- const handleDisconnect = async () => {
29
- try {
30
- await serviceManager.logout();
31
- }
32
- catch (error) {
33
- console.error('Failed to logout:', error);
34
- alert('Failed to disconnect. Please try again.');
35
- }
36
- };
37
- return (_jsx(AuthStatus, { authStateManager: serviceManager.getAuthStateManager(), onConnect: handleConnect, onDisconnect: handleDisconnect }));
38
- };
39
- //# sourceMappingURL=AuthStatusWrapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AuthStatusWrapper.js","sourceRoot":"","sources":["../../../src/components/auth/AuthStatusWrapper.tsx"],"names":[],"mappings":";AAQA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAEzE;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAa,GAAG,EAAE;IAC9C,MAAM,MAAM,GAAG,SAAS,CAAC,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC,CAAC;IACvD,MAAM,cAAc,GAAG,mBAAmB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAE/D;;;;OAIG;IACH,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,OAAO,CAAC,GAAG,CAAC,8DAA8D,CAAC,CAAC;QAC5E,wEAAwE;QACxE,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,kBAAkB,CAAC;IAC5C,CAAC,CAAC;IAEF;;;OAGG;IACH,MAAM,gBAAgB,GAAG,KAAK,IAAI,EAAE;QAClC,IAAI,CAAC;YACH,MAAM,cAAc,CAAC,MAAM,EAAE,CAAC;QAChC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAC;YAC1C,KAAK,CAAC,yCAAyC,CAAC,CAAC;QACnD,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,CACL,KAAC,UAAU,IACT,gBAAgB,EAAE,cAAc,CAAC,mBAAmB,EAAE,EACtD,SAAS,EAAE,aAAa,EACxB,YAAY,EAAE,gBAAgB,GAC9B,CACH,CAAC;AACJ,CAAC,CAAC"}
@@ -1,20 +0,0 @@
1
- /**
2
- * Migration Prompt Component - DEPRECATED
3
- *
4
- * This component is no longer used since OAuth migration prompts are not needed
5
- * with the new long-lived token authentication approach.
6
- */
7
- import React from 'react';
8
- export interface MigrationPromptProps {
9
- /** Callback when user wants to set up OAuth (deprecated) */
10
- onSetupOAuth: () => void;
11
- /** Callback when user dismisses the prompt (deprecated) */
12
- onDismiss: () => void;
13
- }
14
- /**
15
- * Migration Prompt Component - DEPRECATED
16
- *
17
- * Returns null as OAuth migration is no longer applicable.
18
- */
19
- export declare const MigrationPrompt: React.FC<MigrationPromptProps>;
20
- //# sourceMappingURL=MigrationPrompt.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MigrationPrompt.d.ts","sourceRoot":"","sources":["../../../src/components/auth/MigrationPrompt.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,WAAW,oBAAoB;IACnC,4DAA4D;IAC5D,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,2DAA2D;IAC3D,SAAS,EAAE,MAAM,IAAI,CAAC;CACvB;AAED;;;;GAIG;AACH,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAG1D,CAAC"}
@@ -1,16 +0,0 @@
1
- /**
2
- * Migration Prompt Component - DEPRECATED
3
- *
4
- * This component is no longer used since OAuth migration prompts are not needed
5
- * with the new long-lived token authentication approach.
6
- */
7
- /**
8
- * Migration Prompt Component - DEPRECATED
9
- *
10
- * Returns null as OAuth migration is no longer applicable.
11
- */
12
- export const MigrationPrompt = () => {
13
- // No longer needed with long-lived token authentication
14
- return null;
15
- };
16
- //# sourceMappingURL=MigrationPrompt.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MigrationPrompt.js","sourceRoot":"","sources":["../../../src/components/auth/MigrationPrompt.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAWH;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAmC,GAAG,EAAE;IAClE,wDAAwD;IACxD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC"}
@@ -1,14 +0,0 @@
1
- /**
2
- * Migration Prompt Wrapper Component - DEPRECATED
3
- *
4
- * This component is no longer used since OAuth migration prompts are not needed
5
- * with the new long-lived token authentication approach.
6
- */
7
- import React from 'react';
8
- /**
9
- * Migration Prompt Wrapper - DEPRECATED
10
- *
11
- * Returns null as OAuth migration is no longer applicable.
12
- */
13
- export declare const MigrationPromptWrapper: React.FC;
14
- //# sourceMappingURL=MigrationPromptWrapper.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MigrationPromptWrapper.d.ts","sourceRoot":"","sources":["../../../src/components/auth/MigrationPromptWrapper.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,KAAK,CAAC,EAG1C,CAAC"}
@@ -1,16 +0,0 @@
1
- /**
2
- * Migration Prompt Wrapper Component - DEPRECATED
3
- *
4
- * This component is no longer used since OAuth migration prompts are not needed
5
- * with the new long-lived token authentication approach.
6
- */
7
- /**
8
- * Migration Prompt Wrapper - DEPRECATED
9
- *
10
- * Returns null as OAuth migration is no longer applicable.
11
- */
12
- export const MigrationPromptWrapper = () => {
13
- // No longer needed with long-lived token authentication
14
- return null;
15
- };
16
- //# sourceMappingURL=MigrationPromptWrapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MigrationPromptWrapper.js","sourceRoot":"","sources":["../../../src/components/auth/MigrationPromptWrapper.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAa,GAAG,EAAE;IACnD,wDAAwD;IACxD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC"}
@@ -1,20 +0,0 @@
1
- /**
2
- * OAuth Callback Component - DEPRECATED
3
- *
4
- * This component is no longer used with the new long-lived token authentication approach.
5
- * Easyling authentication now uses direct access token configuration instead of OAuth flows.
6
- */
7
- import React from 'react';
8
- export interface OAuthCallbackProps {
9
- /** Callback when authentication is complete (not used) */
10
- onComplete?: () => void;
11
- /** Callback to retry authentication (not used) */
12
- onRetry?: () => void;
13
- }
14
- /**
15
- * OAuth Callback Component - DEPRECATED
16
- *
17
- * Shows a message that OAuth callbacks are no longer supported.
18
- */
19
- export declare const OAuthCallback: React.FC<OAuthCallbackProps>;
20
- //# sourceMappingURL=OAuthCallback.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"OAuthCallback.d.ts","sourceRoot":"","sources":["../../../src/components/auth/OAuthCallback.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAU1B,MAAM,WAAW,kBAAkB;IACjC,0DAA0D;IAC1D,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IAExB,kDAAkD;IAClD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED;;;;GAIG;AACH,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CA6BtD,CAAC"}
@@ -1,12 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Card, Stack, Text, Button, Flex } from '@sanity/ui';
3
- import { WarningOutlineIcon } from '@sanity/icons';
4
- /**
5
- * OAuth Callback Component - DEPRECATED
6
- *
7
- * Shows a message that OAuth callbacks are no longer supported.
8
- */
9
- export const OAuthCallback = () => {
10
- return (_jsx(Card, { padding: 4, children: _jsxs(Stack, { space: 4, children: [_jsxs(Flex, { align: "center", gap: 2, children: [_jsx(Text, { size: 2, children: _jsx(WarningOutlineIcon, {}) }), _jsx(Text, { size: 2, weight: "semibold", children: "OAuth Callback Not Supported" })] }), _jsx(Text, { size: 1, children: "OAuth callbacks are no longer used with the new Easyling authentication." }), _jsx(Text, { size: 1, muted: true, children: "Please configure your Easyling access token and project ID in the Easyling Configuration tool instead." }), _jsx(Button, { text: "Go to Easyling Configuration", tone: "primary", onClick: () => window.location.href = '/easyling-config' })] }) }));
11
- };
12
- //# sourceMappingURL=OAuthCallback.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"OAuthCallback.js","sourceRoot":"","sources":["../../../src/components/auth/OAuthCallback.tsx"],"names":[],"mappings":";AAQA,OAAO,EACL,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,MAAM,EACN,IAAI,EACL,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAUnD;;;;GAIG;AACH,MAAM,CAAC,MAAM,aAAa,GAAiC,GAAG,EAAE;IAC9D,OAAO,CACL,KAAC,IAAI,IAAC,OAAO,EAAE,CAAC,YACd,MAAC,KAAK,IAAC,KAAK,EAAE,CAAC,aACb,MAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,EAAC,GAAG,EAAE,CAAC,aACzB,KAAC,IAAI,IAAC,IAAI,EAAE,CAAC,YACX,KAAC,kBAAkB,KAAG,GACjB,EACP,KAAC,IAAI,IAAC,IAAI,EAAE,CAAC,EAAE,MAAM,EAAC,UAAU,6CAEzB,IACF,EAEP,KAAC,IAAI,IAAC,IAAI,EAAE,CAAC,yFAEN,EAEP,KAAC,IAAI,IAAC,IAAI,EAAE,CAAC,EAAE,KAAK,6HAEb,EAEP,KAAC,MAAM,IACL,IAAI,EAAC,8BAA8B,EACnC,IAAI,EAAC,SAAS,EACd,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,kBAAkB,GACxD,IACI,GACH,CACR,CAAC;AACJ,CAAC,CAAC"}
@@ -1,15 +0,0 @@
1
- /**
2
- * Authentication Components
3
- *
4
- * Exports all authentication-related UI components
5
- */
6
- export { AuthStatus } from './AuthStatus';
7
- export type { AuthStatusProps } from './AuthStatus';
8
- export { OAuthCallback } from './OAuthCallback';
9
- export type { OAuthCallbackProps } from './OAuthCallback';
10
- export { AuthStatusWrapper } from './AuthStatusWrapper';
11
- export { AuthNavbar } from './AuthNavbar';
12
- export { MigrationPrompt } from './MigrationPrompt';
13
- export type { MigrationPromptProps } from './MigrationPrompt';
14
- export { MigrationPromptWrapper } from './MigrationPromptWrapper';
15
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/auth/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAE1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,YAAY,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC"}
@@ -1,12 +0,0 @@
1
- /**
2
- * Authentication Components
3
- *
4
- * Exports all authentication-related UI components
5
- */
6
- export { AuthStatus } from './AuthStatus';
7
- export { OAuthCallback } from './OAuthCallback';
8
- export { AuthStatusWrapper } from './AuthStatusWrapper';
9
- export { AuthNavbar } from './AuthNavbar';
10
- export { MigrationPrompt } from './MigrationPrompt';
11
- export { MigrationPromptWrapper } from './MigrationPromptWrapper';
12
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/auth/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG1C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC"}
@@ -1,17 +0,0 @@
1
- /**
2
- * LocaleConfigTool Component
3
- * Requirements: 1.1, 1.2, 1.6, 1.7
4
- *
5
- * Administrative interface for managing locale configuration
6
- */
7
- import React from 'react';
8
- import { LocaleService } from '../../services/localeService';
9
- export interface LocaleConfigToolProps {
10
- /** Locale service instance for CRUD operations */
11
- localeService: LocaleService;
12
- }
13
- /**
14
- * LocaleConfigTool component for administrative locale management
15
- */
16
- export declare const LocaleConfigTool: React.FC<LocaleConfigToolProps>;
17
- //# sourceMappingURL=LocaleConfigTool.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LocaleConfigTool.d.ts","sourceRoot":"","sources":["../../../src/components/config/LocaleConfigTool.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAA2C,MAAM,OAAO,CAAC;AAiBhE,OAAO,EAAE,aAAa,EAAsB,MAAM,8BAA8B,CAAC;AAIjF,MAAM,WAAW,qBAAqB;IACpC,kDAAkD;IAClD,aAAa,EAAE,aAAa,CAAC;CAC9B;AAaD;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CAkW5D,CAAC"}
@@ -1,186 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- /**
3
- * LocaleConfigTool Component
4
- * Requirements: 1.1, 1.2, 1.6, 1.7
5
- *
6
- * Administrative interface for managing locale configuration
7
- */
8
- import { useState, useEffect, useCallback } from 'react';
9
- import { Box, Card, Stack, Text, Button, TextInput, Flex, Label, Switch, Heading, Badge, Inline, useToast } from '@sanity/ui';
10
- import { AddIcon, TrashIcon, EditIcon, SearchIcon } from '@sanity/icons';
11
- import { LocaleServiceError } from '../../services/localeService';
12
- import { validateLocaleCode } from '../../types/locale';
13
- /**
14
- * LocaleConfigTool component for administrative locale management
15
- */
16
- export const LocaleConfigTool = ({ localeService }) => {
17
- const [locales, setLocales] = useState([]);
18
- const [isLoading, setIsLoading] = useState(true);
19
- const [searchQuery, setSearchQuery] = useState('');
20
- const [showAddForm, setShowAddForm] = useState(false);
21
- const [editingLocale, setEditingLocale] = useState(null);
22
- const [formData, setFormData] = useState({
23
- code: '',
24
- displayName: '',
25
- enabled: true
26
- });
27
- const [formErrors, setFormErrors] = useState({});
28
- const toast = useToast();
29
- // Load locales on mount
30
- useEffect(() => {
31
- loadLocales();
32
- }, []);
33
- const loadLocales = useCallback(async () => {
34
- try {
35
- setIsLoading(true);
36
- await localeService.loadConfig();
37
- const allLocales = localeService.getAllLocales();
38
- setLocales(allLocales);
39
- }
40
- catch (error) {
41
- console.error('Failed to load locales:', error);
42
- toast.push({
43
- status: 'error',
44
- title: 'Failed to load locales',
45
- description: error instanceof Error ? error.message : 'Unknown error occurred'
46
- });
47
- }
48
- finally {
49
- setIsLoading(false);
50
- }
51
- }, [localeService, toast]);
52
- // Filter locales based on search query
53
- const filteredLocales = locales.filter(locale => {
54
- if (!searchQuery)
55
- return true;
56
- const query = searchQuery.toLowerCase();
57
- return (locale.code.toLowerCase().includes(query) ||
58
- locale.displayName.toLowerCase().includes(query));
59
- });
60
- // Validate form data
61
- const validateForm = () => {
62
- const errors = {};
63
- if (!formData.code.trim()) {
64
- errors.code = 'Locale code is required';
65
- }
66
- else if (!validateLocaleCode(formData.code)) {
67
- errors.code = 'Locale code must be in format: xx-XX (e.g., en-US, fr-FR)';
68
- }
69
- else if (!editingLocale && localeService.hasLocale(formData.code)) {
70
- errors.code = 'A locale with this code already exists';
71
- }
72
- if (!formData.displayName.trim()) {
73
- errors.displayName = 'Display name is required';
74
- }
75
- setFormErrors(errors);
76
- return Object.keys(errors).length === 0;
77
- };
78
- // Handle form submission for add/edit
79
- const handleSubmit = async () => {
80
- if (!validateForm())
81
- return;
82
- try {
83
- if (editingLocale) {
84
- // Update existing locale
85
- await localeService.updateLocale(editingLocale.code, {
86
- displayName: formData.displayName,
87
- enabled: formData.enabled
88
- });
89
- toast.push({
90
- status: 'success',
91
- title: 'Locale updated',
92
- description: `${formData.displayName} has been updated successfully`
93
- });
94
- }
95
- else {
96
- // Add new locale
97
- await localeService.addLocale({
98
- code: formData.code,
99
- displayName: formData.displayName,
100
- enabled: formData.enabled
101
- });
102
- toast.push({
103
- status: 'success',
104
- title: 'Locale added',
105
- description: `${formData.displayName} has been added successfully`
106
- });
107
- }
108
- // Reload locales and reset form
109
- await loadLocales();
110
- resetForm();
111
- }
112
- catch (error) {
113
- console.error('Failed to save locale:', error);
114
- const errorMessage = error instanceof LocaleServiceError
115
- ? error.message
116
- : 'Failed to save locale';
117
- toast.push({
118
- status: 'error',
119
- title: 'Error',
120
- description: errorMessage
121
- });
122
- }
123
- };
124
- // Handle locale deletion
125
- const handleDelete = async (code) => {
126
- const locale = locales.find(l => l.code === code);
127
- if (!locale)
128
- return;
129
- // Simple confirmation using browser confirm for now
130
- // This will be replaced with proper dialog in task 8
131
- if (!window.confirm(`Are you sure you want to delete ${locale.displayName}?`)) {
132
- return;
133
- }
134
- try {
135
- await localeService.removeLocale(code);
136
- toast.push({
137
- status: 'success',
138
- title: 'Locale deleted',
139
- description: `${locale.displayName} has been deleted successfully`
140
- });
141
- await loadLocales();
142
- }
143
- catch (error) {
144
- console.error('Failed to delete locale:', error);
145
- toast.push({
146
- status: 'error',
147
- title: 'Error',
148
- description: 'Failed to delete locale'
149
- });
150
- }
151
- };
152
- // Handle edit button click
153
- const handleEdit = (locale) => {
154
- setEditingLocale(locale);
155
- setFormData({
156
- code: locale.code,
157
- displayName: locale.displayName,
158
- enabled: locale.enabled
159
- });
160
- setShowAddForm(true);
161
- setFormErrors({});
162
- };
163
- // Reset form to initial state
164
- const resetForm = () => {
165
- setFormData({
166
- code: '',
167
- displayName: '',
168
- enabled: true
169
- });
170
- setFormErrors({});
171
- setShowAddForm(false);
172
- setEditingLocale(null);
173
- };
174
- // Handle form field changes
175
- const handleFieldChange = (field, value) => {
176
- setFormData(prev => ({ ...prev, [field]: value }));
177
- // Clear error for this field when user starts typing
178
- if (formErrors[field]) {
179
- setFormErrors(prev => ({ ...prev, [field]: undefined }));
180
- }
181
- };
182
- return (_jsx(Box, { padding: 4, children: _jsxs(Stack, { space: 4, children: [_jsxs(Flex, { align: "center", justify: "space-between", children: [_jsx(Heading, { size: 3, children: "Locale Configuration" }), !showAddForm && (_jsx(Button, { text: "Add Locale", icon: AddIcon, tone: "primary", onClick: () => setShowAddForm(true) }))] }), _jsx(Text, { size: 1, muted: true, children: "Configure the locales available for translation in your Sanity Studio." }), showAddForm && (_jsx(Card, { padding: 4, shadow: 1, radius: 2, children: _jsxs(Stack, { space: 4, children: [_jsx(Heading, { size: 2, children: editingLocale ? 'Edit Locale' : 'Add New Locale' }), _jsxs(Stack, { space: 3, children: [_jsxs(Stack, { space: 2, children: [_jsx(Label, { size: 1, children: "Locale Code" }), _jsx(TextInput, { value: formData.code, onChange: (e) => handleFieldChange('code', e.currentTarget.value), placeholder: "e.g., en-US, fr-FR", disabled: !!editingLocale, "aria-label": "Locale code", "aria-invalid": !!formErrors.code, "aria-describedby": formErrors.code ? 'code-error' : undefined }), formErrors.code && (_jsx(Text, { id: "code-error", size: 1, style: { color: 'var(--card-badge-critical-fg-color)' }, children: formErrors.code })), _jsx(Text, { size: 1, muted: true, children: "Format: two lowercase letters, hyphen, two uppercase letters (e.g., en-US)" })] }), _jsxs(Stack, { space: 2, children: [_jsx(Label, { size: 1, children: "Display Name" }), _jsx(TextInput, { value: formData.displayName, onChange: (e) => handleFieldChange('displayName', e.currentTarget.value), placeholder: "e.g., English (United States)", "aria-label": "Display name", "aria-invalid": !!formErrors.displayName, "aria-describedby": formErrors.displayName ? 'displayName-error' : undefined }), formErrors.displayName && (_jsx(Text, { id: "displayName-error", size: 1, style: { color: 'var(--card-badge-critical-fg-color)' }, children: formErrors.displayName }))] }), _jsxs(Flex, { align: "center", gap: 3, children: [_jsx(Switch, { checked: formData.enabled, onChange: (e) => handleFieldChange('enabled', e.currentTarget.checked), "aria-label": "Enable locale" }), _jsx(Label, { size: 1, children: "Enabled" })] })] }), _jsxs(Flex, { gap: 2, children: [_jsx(Button, { text: editingLocale ? 'Update' : 'Add', tone: "primary", onClick: handleSubmit }), _jsx(Button, { text: "Cancel", mode: "ghost", onClick: resetForm })] })] }) })), _jsx(Card, { padding: 3, radius: 2, children: _jsx(TextInput, { icon: SearchIcon, value: searchQuery, onChange: (e) => setSearchQuery(e.currentTarget.value), placeholder: "Search locales by code or name...", "aria-label": "Search locales" }) }), isLoading ? (_jsx(Card, { padding: 4, children: _jsx(Text, { children: "Loading locales..." }) })) : filteredLocales.length === 0 ? (_jsx(Card, { padding: 4, children: _jsx(Text, { muted: true, children: searchQuery
183
- ? 'No locales match your search.'
184
- : 'No locales configured. Click "Add Locale" to get started.' }) })) : (_jsx(Stack, { space: 2, children: filteredLocales.map((locale) => (_jsx(Card, { padding: 3, radius: 2, shadow: 1, children: _jsxs(Flex, { align: "center", justify: "space-between", children: [_jsxs(Stack, { space: 2, flex: 1, children: [_jsxs(Flex, { align: "center", gap: 2, children: [_jsx(Text, { weight: "semibold", children: locale.displayName }), _jsx(Badge, { tone: locale.enabled ? 'positive' : 'default', children: locale.code }), !locale.enabled && (_jsx(Badge, { tone: "caution", children: "Disabled" }))] }), _jsxs(Text, { size: 1, muted: true, children: ["Created: ", new Date(locale.createdAt).toLocaleDateString(), locale.updatedAt !== locale.createdAt && (_jsxs(_Fragment, { children: [" \u2022 Updated: ", new Date(locale.updatedAt).toLocaleDateString()] }))] })] }), _jsxs(Inline, { space: 2, children: [_jsx(Button, { icon: EditIcon, mode: "ghost", tone: "primary", onClick: () => handleEdit(locale), "aria-label": `Edit ${locale.displayName}` }), _jsx(Button, { icon: TrashIcon, mode: "ghost", tone: "critical", onClick: () => handleDelete(locale.code), "aria-label": `Delete ${locale.displayName}` })] })] }) }, locale.code))) })), !isLoading && locales.length > 0 && (_jsx(Card, { padding: 3, tone: "transparent", children: _jsxs(Text, { size: 1, muted: true, children: ["Total: ", locales.length, " locale", locales.length !== 1 ? 's' : '', " \u2022", ' ', "Enabled: ", locales.filter(l => l.enabled).length, " \u2022", ' ', "Disabled: ", locales.filter(l => !l.enabled).length] }) }))] }) }));
185
- };
186
- //# sourceMappingURL=LocaleConfigTool.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LocaleConfigTool.js","sourceRoot":"","sources":["../../../src/components/config/LocaleConfigTool.tsx"],"names":[],"mappings":"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"}
@@ -1,13 +0,0 @@
1
- /**
2
- * LocaleConfigTool Wrapper for Sanity Tool Integration
3
- * Requirements: 1.1, 5.1, 5.2, 5.3, 5.7
4
- *
5
- * Wraps the LocaleConfigTool component with Sanity client integration
6
- */
7
- import React from 'react';
8
- /**
9
- * Wrapper component that provides LocaleService with Sanity storage adapter
10
- * Requirements: 1.1, 5.1, 5.2, 5.3, 5.7
11
- */
12
- export declare const LocaleConfigToolWrapper: React.FC;
13
- //# sourceMappingURL=LocaleConfigToolWrapper.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LocaleConfigToolWrapper.d.ts","sourceRoot":"","sources":["../../../src/components/config/LocaleConfigToolWrapper.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAkB,MAAM,OAAO,CAAC;AAMvC;;;GAGG;AACH,eAAO,MAAM,uBAAuB,EAAE,KAAK,CAAC,EAU3C,CAAC"}
@@ -1,26 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- /**
3
- * LocaleConfigTool Wrapper for Sanity Tool Integration
4
- * Requirements: 1.1, 5.1, 5.2, 5.3, 5.7
5
- *
6
- * Wraps the LocaleConfigTool component with Sanity client integration
7
- */
8
- import { useMemo } from 'react';
9
- import { useClient } from 'sanity';
10
- import { LocaleConfigTool } from './LocaleConfigTool';
11
- import { LocaleService } from '../../services/localeService';
12
- import { SanityLocaleStorageAdapter } from '../../services/localeStorageAdapter';
13
- /**
14
- * Wrapper component that provides LocaleService with Sanity storage adapter
15
- * Requirements: 1.1, 5.1, 5.2, 5.3, 5.7
16
- */
17
- export const LocaleConfigToolWrapper = () => {
18
- const client = useClient();
19
- // Create locale service with Sanity storage adapter
20
- const localeService = useMemo(() => {
21
- const storageAdapter = new SanityLocaleStorageAdapter(client);
22
- return new LocaleService(storageAdapter);
23
- }, [client]);
24
- return _jsx(LocaleConfigTool, { localeService: localeService });
25
- };
26
- //# sourceMappingURL=LocaleConfigToolWrapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LocaleConfigToolWrapper.js","sourceRoot":"","sources":["../../../src/components/config/LocaleConfigToolWrapper.tsx"],"names":[],"mappings":";AAAA;;;;;GAKG;AAEH,OAAc,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AAEjF;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAa,GAAG,EAAE;IACpD,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,oDAAoD;IACpD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE;QACjC,MAAM,cAAc,GAAG,IAAI,0BAA0B,CAAC,MAAM,CAAC,CAAC;QAC9D,OAAO,IAAI,aAAa,CAAC,cAAc,CAAC,CAAC;IAC3C,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,OAAO,KAAC,gBAAgB,IAAC,aAAa,EAAE,aAAa,GAAI,CAAC;AAC5D,CAAC,CAAC"}