@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.
- package/dist/.tsbuildinfo +1 -1
- package/package.json +18 -12
- package/dist/actions/bulkTranslate.d.ts +0 -7
- package/dist/actions/bulkTranslate.d.ts.map +0 -1
- package/dist/actions/bulkTranslate.js +0 -543
- package/dist/actions/bulkTranslate.js.map +0 -1
- package/dist/actions/manageDNTFields.d.ts +0 -12
- package/dist/actions/manageDNTFields.d.ts.map +0 -1
- package/dist/actions/manageDNTFields.js +0 -100
- package/dist/actions/manageDNTFields.js.map +0 -1
- package/dist/actions/translateDocument.d.ts +0 -7
- package/dist/actions/translateDocument.d.ts.map +0 -1
- package/dist/actions/translateDocument.js +0 -256
- package/dist/actions/translateDocument.js.map +0 -1
- package/dist/components/RadioWithDefault.d.ts +0 -17
- package/dist/components/RadioWithDefault.d.ts.map +0 -1
- package/dist/components/RadioWithDefault.js +0 -29
- package/dist/components/RadioWithDefault.js.map +0 -1
- package/dist/components/auth/AuthNavbar.d.ts +0 -18
- package/dist/components/auth/AuthNavbar.d.ts.map +0 -1
- package/dist/components/auth/AuthNavbar.js +0 -15
- package/dist/components/auth/AuthNavbar.js.map +0 -1
- package/dist/components/auth/AuthStatus.d.ts +0 -27
- package/dist/components/auth/AuthStatus.d.ts.map +0 -1
- package/dist/components/auth/AuthStatus.js +0 -82
- package/dist/components/auth/AuthStatus.js.map +0 -1
- package/dist/components/auth/AuthStatusWrapper.d.ts +0 -15
- package/dist/components/auth/AuthStatusWrapper.d.ts.map +0 -1
- package/dist/components/auth/AuthStatusWrapper.js +0 -39
- package/dist/components/auth/AuthStatusWrapper.js.map +0 -1
- package/dist/components/auth/MigrationPrompt.d.ts +0 -20
- package/dist/components/auth/MigrationPrompt.d.ts.map +0 -1
- package/dist/components/auth/MigrationPrompt.js +0 -16
- package/dist/components/auth/MigrationPrompt.js.map +0 -1
- package/dist/components/auth/MigrationPromptWrapper.d.ts +0 -14
- package/dist/components/auth/MigrationPromptWrapper.d.ts.map +0 -1
- package/dist/components/auth/MigrationPromptWrapper.js +0 -16
- package/dist/components/auth/MigrationPromptWrapper.js.map +0 -1
- package/dist/components/auth/OAuthCallback.d.ts +0 -20
- package/dist/components/auth/OAuthCallback.d.ts.map +0 -1
- package/dist/components/auth/OAuthCallback.js +0 -12
- package/dist/components/auth/OAuthCallback.js.map +0 -1
- package/dist/components/auth/index.d.ts +0 -15
- package/dist/components/auth/index.d.ts.map +0 -1
- package/dist/components/auth/index.js +0 -12
- package/dist/components/auth/index.js.map +0 -1
- package/dist/components/config/LocaleConfigTool.d.ts +0 -17
- package/dist/components/config/LocaleConfigTool.d.ts.map +0 -1
- package/dist/components/config/LocaleConfigTool.js +0 -186
- package/dist/components/config/LocaleConfigTool.js.map +0 -1
- package/dist/components/config/LocaleConfigToolWrapper.d.ts +0 -13
- package/dist/components/config/LocaleConfigToolWrapper.d.ts.map +0 -1
- package/dist/components/config/LocaleConfigToolWrapper.js +0 -26
- package/dist/components/config/LocaleConfigToolWrapper.js.map +0 -1
- package/dist/components/config/OAuthConfig.d.ts +0 -26
- package/dist/components/config/OAuthConfig.d.ts.map +0 -1
- package/dist/components/config/OAuthConfig.js +0 -152
- package/dist/components/config/OAuthConfig.js.map +0 -1
- package/dist/components/config/OAuthConfigWrapper.d.ts +0 -13
- package/dist/components/config/OAuthConfigWrapper.d.ts.map +0 -1
- package/dist/components/config/OAuthConfigWrapper.js +0 -41
- package/dist/components/config/OAuthConfigWrapper.js.map +0 -1
- package/dist/components/config/PasswordInput.d.ts +0 -14
- package/dist/components/config/PasswordInput.d.ts.map +0 -1
- package/dist/components/config/PasswordInput.js +0 -23
- package/dist/components/config/PasswordInput.js.map +0 -1
- package/dist/components/config/index.d.ts +0 -9
- package/dist/components/config/index.d.ts.map +0 -1
- package/dist/components/config/index.js +0 -8
- package/dist/components/config/index.js.map +0 -1
- package/dist/components/config/localeConfigToolDefinition.d.ts +0 -13
- package/dist/components/config/localeConfigToolDefinition.d.ts.map +0 -1
- package/dist/components/config/localeConfigToolDefinition.js +0 -19
- package/dist/components/config/localeConfigToolDefinition.js.map +0 -1
- package/dist/components/config/oauthConfigToolDefinition.d.ts +0 -13
- package/dist/components/config/oauthConfigToolDefinition.d.ts.map +0 -1
- package/dist/components/config/oauthConfigToolDefinition.js +0 -19
- package/dist/components/config/oauthConfigToolDefinition.js.map +0 -1
- package/dist/components/dialogs/ConfirmationDialog.d.ts +0 -21
- package/dist/components/dialogs/ConfirmationDialog.d.ts.map +0 -1
- package/dist/components/dialogs/ConfirmationDialog.js +0 -28
- package/dist/components/dialogs/ConfirmationDialog.js.map +0 -1
- package/dist/components/dialogs/ErrorDialog.d.ts +0 -21
- package/dist/components/dialogs/ErrorDialog.d.ts.map +0 -1
- package/dist/components/dialogs/ErrorDialog.js +0 -28
- package/dist/components/dialogs/ErrorDialog.js.map +0 -1
- package/dist/components/dialogs/LocaleSelectionDialog.d.ts +0 -41
- package/dist/components/dialogs/LocaleSelectionDialog.d.ts.map +0 -1
- package/dist/components/dialogs/LocaleSelectionDialog.js +0 -117
- package/dist/components/dialogs/LocaleSelectionDialog.js.map +0 -1
- package/dist/components/dialogs/SuccessDialog.d.ts +0 -19
- package/dist/components/dialogs/SuccessDialog.d.ts.map +0 -1
- package/dist/components/dialogs/SuccessDialog.js +0 -37
- package/dist/components/dialogs/SuccessDialog.js.map +0 -1
- package/dist/components/dialogs/index.d.ts +0 -12
- package/dist/components/dialogs/index.d.ts.map +0 -1
- package/dist/components/dialogs/index.js +0 -8
- package/dist/components/dialogs/index.js.map +0 -1
- package/dist/components/dnt/DNTFieldBadge.d.ts +0 -16
- package/dist/components/dnt/DNTFieldBadge.d.ts.map +0 -1
- package/dist/components/dnt/DNTFieldBadge.js +0 -56
- package/dist/components/dnt/DNTFieldBadge.js.map +0 -1
- package/dist/components/dnt/DNTFieldComponent.d.ts +0 -17
- package/dist/components/dnt/DNTFieldComponent.d.ts.map +0 -1
- package/dist/components/dnt/DNTFieldComponent.js +0 -21
- package/dist/components/dnt/DNTFieldComponent.js.map +0 -1
- package/dist/components/dnt/DNTFieldInput.d.ts +0 -14
- package/dist/components/dnt/DNTFieldInput.d.ts.map +0 -1
- package/dist/components/dnt/DNTFieldInput.js +0 -76
- package/dist/components/dnt/DNTFieldInput.js.map +0 -1
- package/dist/components/dnt/index.d.ts +0 -7
- package/dist/components/dnt/index.d.ts.map +0 -1
- package/dist/components/dnt/index.js +0 -7
- package/dist/components/dnt/index.js.map +0 -1
- package/dist/config/index.d.ts +0 -6
- package/dist/config/index.d.ts.map +0 -1
- package/dist/config/index.js +0 -6
- package/dist/config/index.js.map +0 -1
- package/dist/config/pluginConfig.d.ts +0 -163
- package/dist/config/pluginConfig.d.ts.map +0 -1
- package/dist/config/pluginConfig.js +0 -548
- package/dist/config/pluginConfig.js.map +0 -1
- package/dist/index.d.ts +0 -12
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -12
- package/dist/index.js.map +0 -1
- package/dist/plugin.d.ts +0 -3
- package/dist/plugin.d.ts.map +0 -1
- package/dist/plugin.js +0 -137
- package/dist/plugin.js.map +0 -1
- package/dist/services/authStateManager.d.ts +0 -94
- package/dist/services/authStateManager.d.ts.map +0 -1
- package/dist/services/authStateManager.js +0 -208
- package/dist/services/authStateManager.js.map +0 -1
- package/dist/services/contentExtractor.d.ts +0 -95
- package/dist/services/contentExtractor.d.ts.map +0 -1
- package/dist/services/contentExtractor.js +0 -516
- package/dist/services/contentExtractor.js.map +0 -1
- package/dist/services/dialogService.d.ts +0 -96
- package/dist/services/dialogService.d.ts.map +0 -1
- package/dist/services/dialogService.js +0 -244
- package/dist/services/dialogService.js.map +0 -1
- package/dist/services/dntServiceManager.d.ts +0 -44
- package/dist/services/dntServiceManager.d.ts.map +0 -1
- package/dist/services/dntServiceManager.js +0 -74
- package/dist/services/dntServiceManager.js.map +0 -1
- package/dist/services/dntStorageAdapter.d.ts +0 -73
- package/dist/services/dntStorageAdapter.d.ts.map +0 -1
- package/dist/services/dntStorageAdapter.js +0 -192
- package/dist/services/dntStorageAdapter.js.map +0 -1
- package/dist/services/documentCreationService.d.ts +0 -139
- package/dist/services/documentCreationService.d.ts.map +0 -1
- package/dist/services/documentCreationService.js +0 -938
- package/dist/services/documentCreationService.js.map +0 -1
- package/dist/services/localeService.d.ts +0 -160
- package/dist/services/localeService.d.ts.map +0 -1
- package/dist/services/localeService.js +0 -300
- package/dist/services/localeService.js.map +0 -1
- package/dist/services/localeStorageAdapter.d.ts +0 -42
- package/dist/services/localeStorageAdapter.d.ts.map +0 -1
- package/dist/services/localeStorageAdapter.js +0 -107
- package/dist/services/localeStorageAdapter.js.map +0 -1
- package/dist/services/oauthConfigStorage.d.ts +0 -46
- package/dist/services/oauthConfigStorage.d.ts.map +0 -1
- package/dist/services/oauthConfigStorage.js +0 -122
- package/dist/services/oauthConfigStorage.js.map +0 -1
- package/dist/services/oauthService.d.ts +0 -48
- package/dist/services/oauthService.d.ts.map +0 -1
- package/dist/services/oauthService.js +0 -71
- package/dist/services/oauthService.js.map +0 -1
- package/dist/services/oauthServiceManager.d.ts +0 -189
- package/dist/services/oauthServiceManager.d.ts.map +0 -1
- package/dist/services/oauthServiceManager.js +0 -380
- package/dist/services/oauthServiceManager.js.map +0 -1
- package/dist/services/tokenStorage.d.ts +0 -54
- package/dist/services/tokenStorage.d.ts.map +0 -1
- package/dist/services/tokenStorage.js +0 -140
- package/dist/services/tokenStorage.js.map +0 -1
- package/dist/services/translationService.d.ts +0 -374
- package/dist/services/translationService.d.ts.map +0 -1
- package/dist/services/translationService.js +0 -687
- package/dist/services/translationService.js.map +0 -1
- package/dist/services/unifiedConfigStorage.d.ts +0 -124
- package/dist/services/unifiedConfigStorage.d.ts.map +0 -1
- package/dist/services/unifiedConfigStorage.js +0 -304
- package/dist/services/unifiedConfigStorage.js.map +0 -1
- package/dist/test-utils.d.ts +0 -9
- package/dist/test-utils.d.ts.map +0 -1
- package/dist/test-utils.js +0 -13
- package/dist/test-utils.js.map +0 -1
- package/dist/types/dialog.d.ts +0 -107
- package/dist/types/dialog.d.ts.map +0 -1
- package/dist/types/dialog.js +0 -6
- package/dist/types/dialog.js.map +0 -1
- package/dist/types/dnt.d.ts +0 -84
- package/dist/types/dnt.d.ts.map +0 -1
- package/dist/types/dnt.js +0 -5
- package/dist/types/dnt.js.map +0 -1
- package/dist/types/index.d.ts +0 -12
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/index.js +0 -6
- package/dist/types/index.js.map +0 -1
- package/dist/types/locale.d.ts +0 -116
- package/dist/types/locale.d.ts.map +0 -1
- package/dist/types/locale.js +0 -189
- package/dist/types/locale.js.map +0 -1
- package/dist/types/oauth.d.ts +0 -90
- package/dist/types/oauth.d.ts.map +0 -1
- package/dist/types/oauth.js +0 -62
- package/dist/types/oauth.js.map +0 -1
- package/dist/types/pluginConfig.d.ts +0 -45
- package/dist/types/pluginConfig.d.ts.map +0 -1
- package/dist/types/pluginConfig.js +0 -6
- package/dist/types/pluginConfig.js.map +0 -1
- package/dist/types/translation.d.ts +0 -122
- package/dist/types/translation.d.ts.map +0 -1
- package/dist/types/translation.js +0 -6
- package/dist/types/translation.js.map +0 -1
- package/dist/utils/htmlFormatter.d.ts +0 -66
- package/dist/utils/htmlFormatter.d.ts.map +0 -1
- package/dist/utils/htmlFormatter.js +0 -191
- package/dist/utils/htmlFormatter.js.map +0 -1
- package/dist/utils/index.d.ts +0 -15
- package/dist/utils/index.d.ts.map +0 -1
- package/dist/utils/index.js +0 -16
- package/dist/utils/index.js.map +0 -1
- package/dist/utils/logger.d.ts +0 -105
- package/dist/utils/logger.d.ts.map +0 -1
- package/dist/utils/logger.js +0 -229
- package/dist/utils/logger.js.map +0 -1
- package/dist/utils/oauthErrorFeedback.d.ts +0 -76
- package/dist/utils/oauthErrorFeedback.d.ts.map +0 -1
- package/dist/utils/oauthErrorFeedback.js +0 -134
- package/dist/utils/oauthErrorFeedback.js.map +0 -1
- package/dist/utils/oauthLogger.d.ts +0 -176
- package/dist/utils/oauthLogger.d.ts.map +0 -1
- package/dist/utils/oauthLogger.js +0 -282
- package/dist/utils/oauthLogger.js.map +0 -1
- package/dist/utils/validator.d.ts +0 -67
- package/dist/utils/validator.d.ts.map +0 -1
- package/dist/utils/validator.js +0 -390
- 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":"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"}
|
|
@@ -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"}
|