@nlabs/metropolisjs 0.1.2 → 0.3.0
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/.github/copilot-instructions.md +167 -0
- package/AGENTS.md +13 -0
- package/CHANGELOG.md +112 -0
- package/GRAPHQL_VALIDATION_RESULTS.md +158 -0
- package/PERMISSION_GRAPHQL_INTEGRATION.md +293 -0
- package/PERMISSION_IMPLEMENTATION_SUMMARY.md +243 -0
- package/README.md +1123 -112
- package/SIGNIN_GRAPHQL_VALIDATION.md +125 -0
- package/VAULT_GRAPHQL_API_FINDINGS.md +312 -0
- package/docs/ACTIONS.md +63 -0
- package/docs/COLLECTIONS.md +1038 -0
- package/docs/CONNECTIONS.md +1367 -0
- package/docs/CRUD_INTEGRATION.md +702 -0
- package/examples/connections-usage.tsx +909 -0
- package/examples/content-actions-usage.ts +144 -0
- package/examples/crud-usage.tsx +847 -0
- package/examples/extensibility-usage.tsx +889 -0
- package/examples/i18n-import-examples.ts +86 -0
- package/examples/i18n-namespace-usage.ts +118 -0
- package/examples/i18next-singleton-demo.ts +187 -0
- package/examples/permission-system-usage.tsx +415 -0
- package/examples/project-details.tsx +397 -0
- package/examples/shared-i18n-usage.tsx +203 -0
- package/examples/signup-error-handling.ts +100 -0
- package/examples/translation-types.ts +86 -0
- package/examples/translation-usage.tsx +336 -0
- package/index.js +1 -0
- package/jest.config.mjs +28 -0
- package/lex.config.mjs +11 -2
- package/lib/__tests__/e2e/helpers/testGraphQLServer.d.ts +22 -0
- package/lib/__tests__/e2e/helpers/testGraphQLServer.d.ts.map +1 -0
- package/lib/__tests__/e2e/helpers/testGraphQLServer.js +197 -0
- package/lib/__tests__/e2e/helpers/testGraphQLServerSimple.d.ts +3 -0
- package/lib/__tests__/e2e/helpers/testGraphQLServerSimple.d.ts.map +1 -0
- package/lib/__tests__/e2e/helpers/testGraphQLServerSimple.js +52 -0
- package/lib/actions/appActions/appActions.d.ts +29 -0
- package/lib/actions/appActions/appActions.d.ts.map +1 -0
- package/lib/actions/appActions/appActions.js +159 -0
- package/lib/actions/connectionActions/connectionActions.d.ts +19 -0
- package/lib/actions/connectionActions/connectionActions.d.ts.map +1 -0
- package/lib/actions/connectionActions/connectionActions.js +131 -0
- package/lib/actions/contentActions/contentActions.d.ts +34 -0
- package/lib/actions/contentActions/contentActions.d.ts.map +1 -0
- package/lib/actions/contentActions/contentActions.js +314 -0
- package/lib/actions/conversationActions/conversationActions.d.ts +30 -0
- package/lib/actions/conversationActions/conversationActions.d.ts.map +1 -0
- package/lib/actions/conversationActions/conversationActions.js +225 -0
- package/lib/actions/eventActions/eventActions.d.ts +27 -7
- package/lib/actions/eventActions/eventActions.d.ts.map +1 -0
- package/lib/actions/eventActions/eventActions.js +436 -2
- package/lib/actions/groupActions/groupActions.d.ts +30 -0
- package/lib/actions/groupActions/groupActions.d.ts.map +1 -0
- package/lib/actions/groupActions/groupActions.js +229 -0
- package/lib/actions/imageActions/imageActions.d.ts +16 -10
- package/lib/actions/imageActions/imageActions.d.ts.map +1 -0
- package/lib/actions/imageActions/imageActions.js +593 -2
- package/lib/actions/index.d.ts +21 -9
- package/lib/actions/index.d.ts.map +1 -0
- package/lib/actions/index.js +22 -2
- package/lib/actions/locationActions/locationActions.d.ts +11 -9
- package/lib/actions/locationActions/locationActions.d.ts.map +1 -0
- package/lib/actions/locationActions/locationActions.js +388 -2
- package/lib/actions/messageActions/messageActions.d.ts +16 -32
- package/lib/actions/messageActions/messageActions.d.ts.map +1 -0
- package/lib/actions/messageActions/messageActions.js +235 -2
- package/lib/actions/permissionActions/permissionActions.d.ts +34 -0
- package/lib/actions/permissionActions/permissionActions.d.ts.map +1 -0
- package/lib/actions/permissionActions/permissionActions.js +330 -0
- package/lib/actions/personaActions/personaActions.d.ts +65 -0
- package/lib/actions/personaActions/personaActions.d.ts.map +1 -0
- package/lib/actions/personaActions/personaActions.js +572 -0
- package/lib/actions/postActions/postActions.d.ts +12 -32
- package/lib/actions/postActions/postActions.d.ts.map +1 -0
- package/lib/actions/postActions/postActions.js +447 -2
- package/lib/actions/reactionActions/reactionActions.d.ts +13 -27
- package/lib/actions/reactionActions/reactionActions.d.ts.map +1 -0
- package/lib/actions/reactionActions/reactionActions.js +413 -2
- package/lib/actions/sseActions/sseActions.d.ts +1 -0
- package/lib/actions/sseActions/sseActions.d.ts.map +1 -0
- package/lib/actions/sseActions/sseActions.js +148 -2
- package/lib/actions/subscriptionActions/subscriptionActions.d.ts +24 -0
- package/lib/actions/subscriptionActions/subscriptionActions.d.ts.map +1 -0
- package/lib/actions/subscriptionActions/subscriptionActions.js +329 -0
- package/lib/actions/tagActions/tagActions.d.ts +13 -31
- package/lib/actions/tagActions/tagActions.d.ts.map +1 -0
- package/lib/actions/tagActions/tagActions.js +347 -2
- package/lib/actions/translationActions/translationActions.d.ts +38 -0
- package/lib/actions/translationActions/translationActions.d.ts.map +1 -0
- package/lib/actions/translationActions/translationActions.js +189 -0
- package/lib/actions/userActions/userActions.d.ts +44 -95
- package/lib/actions/userActions/userActions.d.ts.map +1 -0
- package/lib/actions/userActions/userActions.js +870 -2
- package/lib/actions/videoActions/videoActions.d.ts +41 -0
- package/lib/actions/videoActions/videoActions.d.ts.map +1 -0
- package/lib/actions/videoActions/videoActions.js +532 -0
- package/lib/actions/websocketActions/websocketActions.d.ts +20 -21
- package/lib/actions/websocketActions/websocketActions.d.ts.map +1 -0
- package/lib/actions/websocketActions/websocketActions.js +377 -2
- package/lib/adapters/appAdapter/appAdapter.d.ts +8 -0
- package/lib/adapters/appAdapter/appAdapter.d.ts.map +1 -0
- package/lib/adapters/appAdapter/appAdapter.js +90 -0
- package/lib/adapters/arangoAdapter/arangoAdapter.d.ts +3 -2
- package/lib/adapters/arangoAdapter/arangoAdapter.d.ts.map +1 -0
- package/lib/adapters/arangoAdapter/arangoAdapter.js +75 -2
- package/lib/adapters/contentAdapter/contentAdapter.d.ts +3 -2
- package/lib/adapters/contentAdapter/contentAdapter.d.ts.map +1 -0
- package/lib/adapters/contentAdapter/contentAdapter.js +107 -2
- package/lib/adapters/conversationAdapter/conversationAdapter.d.ts +3 -2
- package/lib/adapters/conversationAdapter/conversationAdapter.d.ts.map +1 -0
- package/lib/adapters/conversationAdapter/conversationAdapter.js +75 -2
- package/lib/adapters/eventAdapter/eventAdapter.d.ts +5 -2
- package/lib/adapters/eventAdapter/eventAdapter.d.ts.map +1 -0
- package/lib/adapters/eventAdapter/eventAdapter.js +162 -2
- package/lib/adapters/fileAdapter/fileAdapter.d.ts +3 -2
- package/lib/adapters/fileAdapter/fileAdapter.d.ts.map +1 -0
- package/lib/adapters/fileAdapter/fileAdapter.js +118 -2
- package/lib/adapters/groupAdapter/groupAdapter.d.ts +28 -0
- package/lib/adapters/groupAdapter/groupAdapter.d.ts.map +1 -0
- package/lib/adapters/groupAdapter/groupAdapter.js +66 -0
- package/lib/adapters/imageAdapter/imageAdapter.d.ts +9 -2
- package/lib/adapters/imageAdapter/imageAdapter.d.ts.map +1 -0
- package/lib/adapters/imageAdapter/imageAdapter.js +134 -2
- package/lib/adapters/index.d.ts +34 -16
- package/lib/adapters/index.d.ts.map +1 -0
- package/lib/adapters/index.js +19 -2
- package/lib/adapters/locationAdapter/locationAdapter.d.ts +3 -2
- package/lib/adapters/locationAdapter/locationAdapter.d.ts.map +1 -0
- package/lib/adapters/locationAdapter/locationAdapter.js +95 -2
- package/lib/adapters/messageAdapter/messageAdapter.d.ts +23 -19
- package/lib/adapters/messageAdapter/messageAdapter.d.ts.map +1 -0
- package/lib/adapters/messageAdapter/messageAdapter.js +82 -2
- package/lib/adapters/permissionAdapter/permissionAdapter.d.ts +41 -0
- package/lib/adapters/permissionAdapter/permissionAdapter.d.ts.map +1 -0
- package/lib/adapters/permissionAdapter/permissionAdapter.js +120 -0
- package/lib/adapters/personaAdapter/personaAdapter.d.ts +28 -2
- package/lib/adapters/personaAdapter/personaAdapter.d.ts.map +1 -0
- package/lib/adapters/personaAdapter/personaAdapter.js +161 -2
- package/lib/adapters/postAdapter/postAdapter.d.ts +3 -2
- package/lib/adapters/postAdapter/postAdapter.d.ts.map +1 -0
- package/lib/adapters/postAdapter/postAdapter.js +115 -2
- package/lib/adapters/reactionAdapter/reactionAdapter.d.ts +5 -2
- package/lib/adapters/reactionAdapter/reactionAdapter.d.ts.map +1 -0
- package/lib/adapters/reactionAdapter/reactionAdapter.js +81 -2
- package/lib/adapters/reaktorAdapter/reaktorAdapter.d.ts +3 -2
- package/lib/adapters/reaktorAdapter/reaktorAdapter.d.ts.map +1 -0
- package/lib/adapters/reaktorAdapter/reaktorAdapter.js +58 -2
- package/lib/adapters/sessionAdapter/sessionAdapter.d.ts +3 -2
- package/lib/adapters/sessionAdapter/sessionAdapter.d.ts.map +1 -0
- package/lib/adapters/sessionAdapter/sessionAdapter.js +80 -2
- package/lib/adapters/tagAdapter/tagAdapter.d.ts +3 -2
- package/lib/adapters/tagAdapter/tagAdapter.d.ts.map +1 -0
- package/lib/adapters/tagAdapter/tagAdapter.js +98 -2
- package/lib/adapters/translationAdapter/translationAdapter.d.ts +21 -0
- package/lib/adapters/translationAdapter/translationAdapter.d.ts.map +1 -0
- package/lib/adapters/translationAdapter/translationAdapter.js +55 -0
- package/lib/adapters/userAdapter/userAdapter.d.ts +18 -6
- package/lib/adapters/userAdapter/userAdapter.d.ts.map +1 -0
- package/lib/adapters/userAdapter/userAdapter.js +302 -2
- package/lib/adapters/videoAdapter/videoAdapter.d.ts +8 -0
- package/lib/adapters/videoAdapter/videoAdapter.d.ts.map +1 -0
- package/lib/adapters/videoAdapter/videoAdapter.js +194 -0
- package/lib/config/index.d.ts +19 -6
- package/lib/config/index.d.ts.map +1 -0
- package/lib/config/index.js +97 -2
- package/lib/constants/Collections.d.ts +44 -0
- package/lib/constants/Collections.d.ts.map +1 -0
- package/lib/constants/Collections.js +40 -0
- package/lib/constants/MetropolisConstants.d.ts +1 -0
- package/lib/constants/MetropolisConstants.d.ts.map +1 -0
- package/lib/constants/MetropolisConstants.js +15 -2
- package/lib/graphql/message.d.ts +1 -0
- package/lib/graphql/message.d.ts.map +1 -0
- package/lib/graphql/message.js +6 -4
- package/lib/graphql/notification.d.ts +1 -0
- package/lib/graphql/notification.d.ts.map +1 -0
- package/lib/graphql/notification.js +6 -4
- package/lib/graphql/session.d.ts +1 -0
- package/lib/graphql/session.d.ts.map +1 -0
- package/lib/graphql/session.js +4 -3
- package/lib/index.d.ts +45 -22
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +248 -2
- package/lib/stores/appStore.d.ts +1 -0
- package/lib/stores/appStore.d.ts.map +1 -0
- package/lib/stores/appStore.js +23 -2
- package/lib/stores/contentStore.d.ts +36 -0
- package/lib/stores/contentStore.d.ts.map +1 -0
- package/lib/stores/contentStore.js +139 -0
- package/lib/stores/conversationStore.d.ts +38 -0
- package/lib/stores/conversationStore.d.ts.map +1 -0
- package/lib/stores/conversationStore.js +117 -0
- package/lib/stores/eventStore.d.ts +4 -1
- package/lib/stores/eventStore.d.ts.map +1 -0
- package/lib/stores/eventStore.js +47 -2
- package/lib/stores/groupStore.d.ts +37 -0
- package/lib/stores/groupStore.d.ts.map +1 -0
- package/lib/stores/groupStore.js +68 -0
- package/lib/stores/imageStore.d.ts +6 -1
- package/lib/stores/imageStore.d.ts.map +1 -0
- package/lib/stores/imageStore.js +53 -2
- package/lib/stores/index.d.ts +20 -11
- package/lib/stores/index.d.ts.map +1 -0
- package/lib/stores/index.js +24 -2
- package/lib/stores/locationStore.d.ts +2 -1
- package/lib/stores/locationStore.d.ts.map +1 -0
- package/lib/stores/locationStore.js +42 -2
- package/lib/stores/messageStore.d.ts +19 -4
- package/lib/stores/messageStore.d.ts.map +1 -0
- package/lib/stores/messageStore.js +137 -2
- package/lib/stores/notificationStore.d.ts +33 -0
- package/lib/stores/notificationStore.d.ts.map +1 -0
- package/lib/stores/notificationStore.js +55 -0
- package/lib/stores/permissionStore.d.ts +37 -0
- package/lib/stores/permissionStore.d.ts.map +1 -0
- package/lib/stores/permissionStore.js +117 -0
- package/lib/stores/personaStore.d.ts +26 -0
- package/lib/stores/personaStore.d.ts.map +1 -0
- package/lib/stores/personaStore.js +118 -0
- package/lib/stores/postStore.d.ts +2 -1
- package/lib/stores/postStore.d.ts.map +1 -0
- package/lib/stores/postStore.js +53 -2
- package/lib/stores/reactionStore.d.ts +1 -0
- package/lib/stores/reactionStore.d.ts.map +1 -0
- package/lib/stores/reactionStore.js +28 -2
- package/lib/stores/subscriptionStore.d.ts +41 -0
- package/lib/stores/subscriptionStore.d.ts.map +1 -0
- package/lib/stores/subscriptionStore.js +85 -0
- package/lib/stores/tagStore.d.ts +8 -5
- package/lib/stores/tagStore.d.ts.map +1 -0
- package/lib/stores/tagStore.js +87 -2
- package/lib/stores/translationStore.d.ts +42 -0
- package/lib/stores/translationStore.d.ts.map +1 -0
- package/lib/stores/translationStore.js +122 -0
- package/lib/stores/userStore.d.ts +5 -4
- package/lib/stores/userStore.d.ts.map +1 -0
- package/lib/stores/userStore.js +319 -2
- package/lib/stores/videoStore.d.ts +39 -0
- package/lib/stores/videoStore.d.ts.map +1 -0
- package/lib/stores/videoStore.js +132 -0
- package/lib/stores/websocketStore.d.ts +1 -0
- package/lib/stores/websocketStore.d.ts.map +1 -0
- package/lib/stores/websocketStore.js +51 -2
- package/lib/types/apps.types.d.ts +17 -0
- package/lib/types/apps.types.d.ts.map +1 -0
- package/lib/types/apps.types.js +6 -0
- package/lib/types/common.types.d.ts +31 -0
- package/lib/types/common.types.d.ts.map +1 -0
- package/lib/types/common.types.js +6 -0
- package/lib/types/conversations.types.d.ts +17 -0
- package/lib/types/conversations.types.d.ts.map +1 -0
- package/lib/types/conversations.types.js +6 -0
- package/lib/types/edges.types.d.ts +38 -0
- package/lib/types/edges.types.d.ts.map +1 -0
- package/lib/types/edges.types.js +6 -0
- package/lib/types/groups.types.d.ts +19 -0
- package/lib/types/groups.types.d.ts.map +1 -0
- package/lib/types/groups.types.js +6 -0
- package/lib/types/index.d.ts +12 -0
- package/lib/types/index.d.ts.map +1 -0
- package/lib/types/index.js +12 -0
- package/lib/types/subscriptions.types.d.ts +32 -0
- package/lib/types/subscriptions.types.d.ts.map +1 -0
- package/lib/types/subscriptions.types.js +6 -0
- package/lib/types/videos.types.d.ts +61 -0
- package/lib/types/videos.types.d.ts.map +1 -0
- package/lib/types/videos.types.js +6 -0
- package/lib/utils/MetropolisProvider.d.ts +39 -15
- package/lib/utils/MetropolisProvider.d.ts.map +1 -0
- package/lib/utils/MetropolisProvider.js +31 -2
- package/lib/utils/actionFactory.d.ts +21 -19
- package/lib/utils/actionFactory.d.ts.map +1 -0
- package/lib/utils/actionFactory.js +95 -2
- package/lib/utils/api.d.ts +5 -4
- package/lib/utils/api.d.ts.map +1 -0
- package/lib/utils/api.js +252 -6
- package/lib/utils/app.d.ts +1 -0
- package/lib/utils/app.d.ts.map +1 -0
- package/lib/utils/app.js +15 -2
- package/lib/utils/baseActionFactory.d.ts +5 -23
- package/lib/utils/baseActionFactory.d.ts.map +1 -0
- package/lib/utils/baseActionFactory.js +72 -2
- package/lib/utils/configUtils.d.ts +11 -0
- package/lib/utils/configUtils.d.ts.map +1 -0
- package/lib/utils/configUtils.js +20 -0
- package/lib/utils/dateUtils.d.ts +1 -0
- package/lib/utils/dateUtils.d.ts.map +1 -0
- package/lib/utils/dateUtils.js +11 -2
- package/lib/utils/file.d.ts +3 -1
- package/lib/utils/file.d.ts.map +1 -0
- package/lib/utils/file.js +156 -2
- package/lib/utils/i18n.d.ts +7 -0
- package/lib/utils/i18n.d.ts.map +1 -0
- package/lib/utils/i18n.js +96 -0
- package/lib/utils/index.d.ts +20 -0
- package/lib/utils/index.d.ts.map +1 -0
- package/lib/utils/index.js +26 -0
- package/lib/utils/location.d.ts +4 -3
- package/lib/utils/location.d.ts.map +1 -0
- package/lib/utils/location.js +82 -2
- package/lib/utils/permissionUtils.d.ts +22 -0
- package/lib/utils/permissionUtils.d.ts.map +1 -0
- package/lib/utils/permissionUtils.js +72 -0
- package/lib/utils/requestCache.d.ts +8 -0
- package/lib/utils/requestCache.d.ts.map +1 -0
- package/lib/utils/requestCache.js +53 -0
- package/lib/utils/session.d.ts +14 -0
- package/lib/utils/session.d.ts.map +1 -0
- package/lib/utils/session.js +107 -0
- package/lib/utils/useConversationTyping.d.ts +26 -0
- package/lib/utils/useConversationTyping.d.ts.map +1 -0
- package/lib/utils/useConversationTyping.js +117 -0
- package/lib/utils/useMetropolis.d.ts +67 -12
- package/lib/utils/useMetropolis.d.ts.map +1 -0
- package/lib/utils/useMetropolis.js +311 -2
- package/lib/utils/useTranslations.d.ts +16 -0
- package/lib/utils/useTranslations.d.ts.map +1 -0
- package/lib/utils/useTranslations.js +105 -0
- package/lib/utils/validatorFactory.d.ts +3 -2
- package/lib/utils/validatorFactory.d.ts.map +1 -0
- package/lib/utils/validatorFactory.js +95 -2
- package/package.json +58 -17
- package/temp_signin.ts +73 -0
- package/lib/actions/profileActions/profileActions.d.ts +0 -50
- package/lib/actions/profileActions/profileActions.js +0 -2
- package/lib/adapters/profileAdapter/profileAdapter.d.ts +0 -32
- package/lib/adapters/profileAdapter/profileAdapter.js +0 -2
- package/lib/stores/profileStore.d.ts +0 -24
- package/lib/stores/profileStore.js +0 -2
- /package/{FACTORY_PATTERN_GUIDE.md → factoryPatternGuide.md} +0 -0
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2025-Present, Nitrogen Labs, Inc.
|
|
3
|
+
* Copyrights licensed under the MIT License. See the accompanying LICENSE file for terms.
|
|
4
|
+
*/ import { useCallback, useEffect, useMemo, useRef } from 'react';
|
|
5
|
+
import { useMetropolis } from './useMetropolis.js';
|
|
6
|
+
export const useTranslations = (options = {})=>{
|
|
7
|
+
const { locale = 'en', namespace, autoProcess = true, processInterval = 1000 } = options;
|
|
8
|
+
const { translationActions } = useMetropolis();
|
|
9
|
+
const processTimeoutRef = useRef(null);
|
|
10
|
+
const lastProcessRef = useRef(0);
|
|
11
|
+
const t = useCallback((key, fallback)=>{
|
|
12
|
+
if (!translationActions) {
|
|
13
|
+
return fallback || key;
|
|
14
|
+
}
|
|
15
|
+
const translation = translationActions.getTranslation(key, locale, namespace);
|
|
16
|
+
if (translation) {
|
|
17
|
+
return translation;
|
|
18
|
+
}
|
|
19
|
+
if (autoProcess && !translationActions.hasTranslation(key, locale, namespace)) {
|
|
20
|
+
translationActions.queueTranslationKey(key, locale, namespace);
|
|
21
|
+
}
|
|
22
|
+
return fallback || key;
|
|
23
|
+
}, [
|
|
24
|
+
translationActions,
|
|
25
|
+
locale,
|
|
26
|
+
namespace,
|
|
27
|
+
autoProcess
|
|
28
|
+
]);
|
|
29
|
+
const hasTranslation = useCallback((key)=>{
|
|
30
|
+
if (!translationActions) {
|
|
31
|
+
return false;
|
|
32
|
+
}
|
|
33
|
+
return translationActions.hasTranslation(key, locale, namespace);
|
|
34
|
+
}, [
|
|
35
|
+
translationActions,
|
|
36
|
+
locale,
|
|
37
|
+
namespace
|
|
38
|
+
]);
|
|
39
|
+
const queueTranslation = useCallback((key)=>{
|
|
40
|
+
if (!translationActions) return;
|
|
41
|
+
translationActions.queueTranslationKey(key, locale, namespace);
|
|
42
|
+
}, [
|
|
43
|
+
translationActions,
|
|
44
|
+
locale,
|
|
45
|
+
namespace
|
|
46
|
+
]);
|
|
47
|
+
const processPending = useCallback(async ()=>{
|
|
48
|
+
if (!translationActions) return;
|
|
49
|
+
const now = Date.now();
|
|
50
|
+
if (now - lastProcessRef.current < processInterval) {
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
lastProcessRef.current = now;
|
|
54
|
+
await translationActions.processPendingTranslations(locale, namespace);
|
|
55
|
+
}, [
|
|
56
|
+
translationActions,
|
|
57
|
+
locale,
|
|
58
|
+
namespace,
|
|
59
|
+
processInterval
|
|
60
|
+
]);
|
|
61
|
+
useEffect(()=>{
|
|
62
|
+
if (!autoProcess || !translationActions) return;
|
|
63
|
+
const processQueued = ()=>{
|
|
64
|
+
processPending();
|
|
65
|
+
};
|
|
66
|
+
if (processTimeoutRef.current) {
|
|
67
|
+
clearTimeout(processTimeoutRef.current);
|
|
68
|
+
}
|
|
69
|
+
processTimeoutRef.current = setTimeout(processQueued, processInterval);
|
|
70
|
+
return ()=>{
|
|
71
|
+
if (processTimeoutRef.current) {
|
|
72
|
+
clearTimeout(processTimeoutRef.current);
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
}, [
|
|
76
|
+
autoProcess,
|
|
77
|
+
translationActions,
|
|
78
|
+
processPending,
|
|
79
|
+
processInterval
|
|
80
|
+
]);
|
|
81
|
+
const isLoading = useMemo(()=>{
|
|
82
|
+
if (!translationActions) return false;
|
|
83
|
+
const state = translationActions.flux?.getState('translations');
|
|
84
|
+
return state?.isQueueing || false;
|
|
85
|
+
}, [
|
|
86
|
+
translationActions
|
|
87
|
+
]);
|
|
88
|
+
const error = useMemo(()=>{
|
|
89
|
+
if (!translationActions) return null;
|
|
90
|
+
const state = translationActions.flux?.getState('translations');
|
|
91
|
+
return state?.error || null;
|
|
92
|
+
}, [
|
|
93
|
+
translationActions
|
|
94
|
+
]);
|
|
95
|
+
return {
|
|
96
|
+
t,
|
|
97
|
+
hasTranslation,
|
|
98
|
+
queueTranslation,
|
|
99
|
+
processPending,
|
|
100
|
+
isLoading,
|
|
101
|
+
error
|
|
102
|
+
};
|
|
103
|
+
};
|
|
104
|
+
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L21ldHJvcG9saXNqcy9zcmMvdXRpbHMvdXNlVHJhbnNsYXRpb25zLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDI1LVByZXNlbnQsIE5pdHJvZ2VuIExhYnMsIEluYy5cbiAqIENvcHlyaWdodHMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLiBTZWUgdGhlIGFjY29tcGFueWluZyBMSUNFTlNFIGZpbGUgZm9yIHRlcm1zLlxuICovXG5pbXBvcnQgeyB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VNZW1vLCB1c2VSZWYgfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB7IHVzZU1ldHJvcG9saXMgfSBmcm9tICcuL3VzZU1ldHJvcG9saXMuanMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFVzZVRyYW5zbGF0aW9uc09wdGlvbnMge1xuICByZWFkb25seSBsb2NhbGU/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IG5hbWVzcGFjZT86IHN0cmluZztcbiAgcmVhZG9ubHkgYXV0b1Byb2Nlc3M/OiBib29sZWFuO1xuICByZWFkb25seSBwcm9jZXNzSW50ZXJ2YWw/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVXNlVHJhbnNsYXRpb25zUmV0dXJuIHtcbiAgcmVhZG9ubHkgdDogKGtleTogc3RyaW5nLCBmYWxsYmFjaz86IHN0cmluZykgPT4gc3RyaW5nO1xuICByZWFkb25seSBoYXNUcmFuc2xhdGlvbjogKGtleTogc3RyaW5nKSA9PiBib29sZWFuO1xuICByZWFkb25seSBxdWV1ZVRyYW5zbGF0aW9uOiAoa2V5OiBzdHJpbmcpID0+IHZvaWQ7XG4gIHJlYWRvbmx5IHByb2Nlc3NQZW5kaW5nOiAoKSA9PiBQcm9taXNlPHZvaWQ+O1xuICByZWFkb25seSBpc0xvYWRpbmc6IGJvb2xlYW47XG4gIHJlYWRvbmx5IGVycm9yOiBFcnJvciB8IG51bGw7XG59XG5cbmV4cG9ydCBjb25zdCB1c2VUcmFuc2xhdGlvbnMgPSAob3B0aW9uczogVXNlVHJhbnNsYXRpb25zT3B0aW9ucyA9IHt9KTogVXNlVHJhbnNsYXRpb25zUmV0dXJuID0+IHtcbiAgY29uc3Qge1xuICAgIGxvY2FsZSA9ICdlbicsXG4gICAgbmFtZXNwYWNlLFxuICAgIGF1dG9Qcm9jZXNzID0gdHJ1ZSxcbiAgICBwcm9jZXNzSW50ZXJ2YWwgPSAxMDAwXG4gIH0gPSBvcHRpb25zO1xuXG4gIGNvbnN0IHt0cmFuc2xhdGlvbkFjdGlvbnN9ID0gdXNlTWV0cm9wb2xpcygpO1xuICBjb25zdCBwcm9jZXNzVGltZW91dFJlZiA9IHVzZVJlZjxOb2RlSlMuVGltZW91dCB8IG51bGw+KG51bGwpO1xuICBjb25zdCBsYXN0UHJvY2Vzc1JlZiA9IHVzZVJlZjxudW1iZXI+KDApO1xuXG4gIGNvbnN0IHQgPSB1c2VDYWxsYmFjaygoa2V5OiBzdHJpbmcsIGZhbGxiYWNrPzogc3RyaW5nKTogc3RyaW5nID0+IHtcbiAgICBpZiAoIXRyYW5zbGF0aW9uQWN0aW9ucykge1xuICAgICAgcmV0dXJuIGZhbGxiYWNrIHx8IGtleTtcbiAgICB9XG5cbiAgICBjb25zdCB0cmFuc2xhdGlvbiA9IHRyYW5zbGF0aW9uQWN0aW9ucy5nZXRUcmFuc2xhdGlvbihrZXksIGxvY2FsZSwgbmFtZXNwYWNlKTtcblxuICAgIGlmICh0cmFuc2xhdGlvbikge1xuICAgICAgcmV0dXJuIHRyYW5zbGF0aW9uO1xuICAgIH1cblxuICAgIGlmIChhdXRvUHJvY2VzcyAmJiAhdHJhbnNsYXRpb25BY3Rpb25zLmhhc1RyYW5zbGF0aW9uKGtleSwgbG9jYWxlLCBuYW1lc3BhY2UpKSB7XG4gICAgICB0cmFuc2xhdGlvbkFjdGlvbnMucXVldWVUcmFuc2xhdGlvbktleShrZXksIGxvY2FsZSwgbmFtZXNwYWNlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZmFsbGJhY2sgfHwga2V5O1xuICB9LCBbdHJhbnNsYXRpb25BY3Rpb25zLCBsb2NhbGUsIG5hbWVzcGFjZSwgYXV0b1Byb2Nlc3NdKTtcblxuICBjb25zdCBoYXNUcmFuc2xhdGlvbiA9IHVzZUNhbGxiYWNrKChrZXk6IHN0cmluZyk6IGJvb2xlYW4gPT4ge1xuICAgIGlmICghdHJhbnNsYXRpb25BY3Rpb25zKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRyYW5zbGF0aW9uQWN0aW9ucy5oYXNUcmFuc2xhdGlvbihrZXksIGxvY2FsZSwgbmFtZXNwYWNlKTtcbiAgfSwgW3RyYW5zbGF0aW9uQWN0aW9ucywgbG9jYWxlLCBuYW1lc3BhY2VdKTtcblxuICBjb25zdCBxdWV1ZVRyYW5zbGF0aW9uID0gdXNlQ2FsbGJhY2soKGtleTogc3RyaW5nKTogdm9pZCA9PiB7XG4gICAgaWYgKCF0cmFuc2xhdGlvbkFjdGlvbnMpIHJldHVybjtcbiAgICB0cmFuc2xhdGlvbkFjdGlvbnMucXVldWVUcmFuc2xhdGlvbktleShrZXksIGxvY2FsZSwgbmFtZXNwYWNlKTtcbiAgfSwgW3RyYW5zbGF0aW9uQWN0aW9ucywgbG9jYWxlLCBuYW1lc3BhY2VdKTtcblxuICBjb25zdCBwcm9jZXNzUGVuZGluZyA9IHVzZUNhbGxiYWNrKGFzeW5jICgpOiBQcm9taXNlPHZvaWQ+ID0+IHtcbiAgICBpZiAoIXRyYW5zbGF0aW9uQWN0aW9ucykgcmV0dXJuO1xuXG4gICAgY29uc3Qgbm93ID0gRGF0ZS5ub3coKTtcbiAgICBpZiAobm93IC0gbGFzdFByb2Nlc3NSZWYuY3VycmVudCA8IHByb2Nlc3NJbnRlcnZhbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGxhc3RQcm9jZXNzUmVmLmN1cnJlbnQgPSBub3c7XG4gICAgYXdhaXQgdHJhbnNsYXRpb25BY3Rpb25zLnByb2Nlc3NQZW5kaW5nVHJhbnNsYXRpb25zKGxvY2FsZSwgbmFtZXNwYWNlKTtcbiAgfSwgW3RyYW5zbGF0aW9uQWN0aW9ucywgbG9jYWxlLCBuYW1lc3BhY2UsIHByb2Nlc3NJbnRlcnZhbF0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFhdXRvUHJvY2VzcyB8fCAhdHJhbnNsYXRpb25BY3Rpb25zKSByZXR1cm47XG5cbiAgICBjb25zdCBwcm9jZXNzUXVldWVkID0gKCkgPT4ge1xuICAgICAgcHJvY2Vzc1BlbmRpbmcoKTtcbiAgICB9O1xuXG4gICAgaWYgKHByb2Nlc3NUaW1lb3V0UmVmLmN1cnJlbnQpIHtcbiAgICAgIGNsZWFyVGltZW91dChwcm9jZXNzVGltZW91dFJlZi5jdXJyZW50KTtcbiAgICB9XG5cbiAgICBwcm9jZXNzVGltZW91dFJlZi5jdXJyZW50ID0gc2V0VGltZW91dChwcm9jZXNzUXVldWVkLCBwcm9jZXNzSW50ZXJ2YWwpO1xuXG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIGlmIChwcm9jZXNzVGltZW91dFJlZi5jdXJyZW50KSB7XG4gICAgICAgIGNsZWFyVGltZW91dChwcm9jZXNzVGltZW91dFJlZi5jdXJyZW50KTtcbiAgICAgIH1cbiAgICB9O1xuICB9LCBbYXV0b1Byb2Nlc3MsIHRyYW5zbGF0aW9uQWN0aW9ucywgcHJvY2Vzc1BlbmRpbmcsIHByb2Nlc3NJbnRlcnZhbF0pO1xuXG4gIGNvbnN0IGlzTG9hZGluZyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmICghdHJhbnNsYXRpb25BY3Rpb25zKSByZXR1cm4gZmFsc2U7XG4gICAgY29uc3Qgc3RhdGUgPSAodHJhbnNsYXRpb25BY3Rpb25zIGFzIGFueSkuZmx1eD8uZ2V0U3RhdGUoJ3RyYW5zbGF0aW9ucycpO1xuICAgIHJldHVybiBzdGF0ZT8uaXNRdWV1ZWluZyB8fCBmYWxzZTtcbiAgfSwgW3RyYW5zbGF0aW9uQWN0aW9uc10pO1xuXG4gIGNvbnN0IGVycm9yID0gdXNlTWVtbygoKSA9PiB7XG4gICAgaWYgKCF0cmFuc2xhdGlvbkFjdGlvbnMpIHJldHVybiBudWxsO1xuICAgIGNvbnN0IHN0YXRlID0gKHRyYW5zbGF0aW9uQWN0aW9ucyBhcyBhbnkpLmZsdXg/LmdldFN0YXRlKCd0cmFuc2xhdGlvbnMnKTtcbiAgICByZXR1cm4gc3RhdGU/LmVycm9yIHx8IG51bGw7XG4gIH0sIFt0cmFuc2xhdGlvbkFjdGlvbnNdKTtcblxuICByZXR1cm4ge1xuICAgIHQsXG4gICAgaGFzVHJhbnNsYXRpb24sXG4gICAgcXVldWVUcmFuc2xhdGlvbixcbiAgICBwcm9jZXNzUGVuZGluZyxcbiAgICBpc0xvYWRpbmcsXG4gICAgZXJyb3JcbiAgfTtcbn07Il0sIm5hbWVzIjpbInVzZUNhbGxiYWNrIiwidXNlRWZmZWN0IiwidXNlTWVtbyIsInVzZVJlZiIsInVzZU1ldHJvcG9saXMiLCJ1c2VUcmFuc2xhdGlvbnMiLCJvcHRpb25zIiwibG9jYWxlIiwibmFtZXNwYWNlIiwiYXV0b1Byb2Nlc3MiLCJwcm9jZXNzSW50ZXJ2YWwiLCJ0cmFuc2xhdGlvbkFjdGlvbnMiLCJwcm9jZXNzVGltZW91dFJlZiIsImxhc3RQcm9jZXNzUmVmIiwidCIsImtleSIsImZhbGxiYWNrIiwidHJhbnNsYXRpb24iLCJnZXRUcmFuc2xhdGlvbiIsImhhc1RyYW5zbGF0aW9uIiwicXVldWVUcmFuc2xhdGlvbktleSIsInF1ZXVlVHJhbnNsYXRpb24iLCJwcm9jZXNzUGVuZGluZyIsIm5vdyIsIkRhdGUiLCJjdXJyZW50IiwicHJvY2Vzc1BlbmRpbmdUcmFuc2xhdGlvbnMiLCJwcm9jZXNzUXVldWVkIiwiY2xlYXJUaW1lb3V0Iiwic2V0VGltZW91dCIsImlzTG9hZGluZyIsInN0YXRlIiwiZmx1eCIsImdldFN0YXRlIiwiaXNRdWV1ZWluZyIsImVycm9yIl0sIm1hcHBpbmdzIjoiQUFBQTs7O0NBR0MsR0FDRCxTQUFTQSxXQUFXLEVBQUVDLFNBQVMsRUFBRUMsT0FBTyxFQUFFQyxNQUFNLFFBQVEsUUFBUTtBQUVoRSxTQUFTQyxhQUFhLFFBQVEscUJBQXFCO0FBa0JuRCxPQUFPLE1BQU1DLGtCQUFrQixDQUFDQyxVQUFrQyxDQUFDLENBQUM7SUFDbEUsTUFBTSxFQUNKQyxTQUFTLElBQUksRUFDYkMsU0FBUyxFQUNUQyxjQUFjLElBQUks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
|
|
@@ -40,9 +40,10 @@ export declare const createValidatorFactory: <T extends BaseAdapterOptions>(defa
|
|
|
40
40
|
* );
|
|
41
41
|
*/
|
|
42
42
|
export declare const createValidatorManager: <T extends BaseAdapterOptions>(defaultValidator: (input: unknown, options?: T) => any, initialOptions?: T) => {
|
|
43
|
-
getCustomAdapter: () => (
|
|
43
|
+
getCustomAdapter: () => (input: unknown, options?: T) => any;
|
|
44
44
|
getOptions: () => T;
|
|
45
45
|
updateAdapter: (adapter: (input: unknown, options?: T) => any) => void;
|
|
46
46
|
updateOptions: (options: T) => void;
|
|
47
|
-
validator: (input: unknown, validatorOptions?: T
|
|
47
|
+
validator: (input: unknown, validatorOptions?: T) => any;
|
|
48
48
|
};
|
|
49
|
+
//# sourceMappingURL=validatorFactory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validatorFactory.d.ts","sourceRoot":"","sources":["../../src/utils/validatorFactory.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,kBAAkB;IACjC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,aAAa,GAAG,YAAY,GAAG,MAAM,CAAC;IACpD,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC;CAChD;AAED;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,sBAAsB,GAAI,CAAC,SAAS,kBAAkB,EACjE,kBAAkB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC,KAAK,GAAG,EACtD,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC,KAAK,GAAG,EACpD,UAAU,CAAC,MACP,OAAO,OAAO,EAAE,mBAAmB,CAAC,QAczC,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,sBAAsB,GAAI,CAAC,SAAS,kBAAkB,EACjE,kBAAkB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC,KAAK,GAAG,EAEtD,iBAAgB,CAAW;oCAMC,OAAO,YAAY,CAAC,KAAK,GAAG;;6BAExB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC,KAAK,GAAG,KAAG,IAAI;6BAI3C,CAAC,KAAG,IAAI;uBAMd,OAAO,qBAAqB,CAAC;CAuBxD,CAAC"}
|
|
@@ -1,2 +1,95 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2019-Present, Nitrogen Labs, Inc.
|
|
3
|
+
* Copyrights licensed under the MIT License. See the accompanying LICENSE file for terms.
|
|
4
|
+
*/ /**
|
|
5
|
+
* Creates a validator factory that merges custom adapters with default behavior.
|
|
6
|
+
* This eliminates code duplication across all action files.
|
|
7
|
+
*
|
|
8
|
+
* @param defaultValidator - The default validation function
|
|
9
|
+
* @param customAdapter - Optional custom adapter function
|
|
10
|
+
* @param options - Adapter options
|
|
11
|
+
* @returns A validator function that applies default + custom validation
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* const validateUser = createValidatorFactory(
|
|
15
|
+
* defaultUserValidator,
|
|
16
|
+
* customUserAdapter,
|
|
17
|
+
* userAdapterOptions
|
|
18
|
+
* );
|
|
19
|
+
*/ export const createValidatorFactory = (defaultValidator, customAdapter, options)=>(input, validatorOptions)=>{
|
|
20
|
+
const mergedOptions = {
|
|
21
|
+
...options,
|
|
22
|
+
...validatorOptions
|
|
23
|
+
};
|
|
24
|
+
let validated = defaultValidator(input, mergedOptions);
|
|
25
|
+
if (customAdapter) {
|
|
26
|
+
validated = customAdapter(validated, mergedOptions);
|
|
27
|
+
}
|
|
28
|
+
if (mergedOptions?.customValidation) {
|
|
29
|
+
validated = mergedOptions.customValidation(validated);
|
|
30
|
+
}
|
|
31
|
+
return validated;
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* Creates a validator manager that handles adapter updates and recreation.
|
|
35
|
+
* This centralizes the update logic that's duplicated across action files.
|
|
36
|
+
*
|
|
37
|
+
* @param defaultValidator - The default validation function
|
|
38
|
+
* @param initialOptions - Initial adapter options
|
|
39
|
+
* @returns An object with validator and update functions
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* const { validator, updateAdapter, updateOptions } = createValidatorManager(
|
|
43
|
+
* defaultUserValidator,
|
|
44
|
+
* userAdapterOptions
|
|
45
|
+
* );
|
|
46
|
+
*/ export const createValidatorManager = (defaultValidator, // eslint-disable-next-line @typescript-eslint/consistent-type-assertions
|
|
47
|
+
initialOptions = {})=>{
|
|
48
|
+
// eslint-disable-next-line @typescript-eslint/consistent-type-assertions
|
|
49
|
+
const defaultOptions = {};
|
|
50
|
+
let adapterOptions = {
|
|
51
|
+
...defaultOptions,
|
|
52
|
+
...initialOptions
|
|
53
|
+
};
|
|
54
|
+
let customAdapter;
|
|
55
|
+
const updateAdapter = (adapter)=>{
|
|
56
|
+
customAdapter = adapter;
|
|
57
|
+
};
|
|
58
|
+
const updateOptions = (options)=>{
|
|
59
|
+
// eslint-disable-next-line @typescript-eslint/consistent-type-assertions
|
|
60
|
+
adapterOptions = {
|
|
61
|
+
...adapterOptions,
|
|
62
|
+
...options
|
|
63
|
+
};
|
|
64
|
+
};
|
|
65
|
+
// Create validator function that always uses current customAdapter and adapterOptions
|
|
66
|
+
const validator = (input, validatorOptions)=>{
|
|
67
|
+
const mergedOptions = {
|
|
68
|
+
...adapterOptions,
|
|
69
|
+
...validatorOptions
|
|
70
|
+
};
|
|
71
|
+
let validated = defaultValidator(input, mergedOptions);
|
|
72
|
+
if (customAdapter) {
|
|
73
|
+
validated = customAdapter(validated, mergedOptions);
|
|
74
|
+
}
|
|
75
|
+
if (mergedOptions?.customValidation) {
|
|
76
|
+
validated = mergedOptions.customValidation(validated);
|
|
77
|
+
}
|
|
78
|
+
return validated;
|
|
79
|
+
};
|
|
80
|
+
return {
|
|
81
|
+
getCustomAdapter: ()=>customAdapter,
|
|
82
|
+
getOptions: ()=>{
|
|
83
|
+
// eslint-disable-next-line @typescript-eslint/consistent-type-assertions
|
|
84
|
+
const options = {
|
|
85
|
+
...adapterOptions
|
|
86
|
+
};
|
|
87
|
+
return options;
|
|
88
|
+
},
|
|
89
|
+
updateAdapter,
|
|
90
|
+
updateOptions,
|
|
91
|
+
validator
|
|
92
|
+
};
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L21ldHJvcG9saXNqcy9zcmMvdXRpbHMvdmFsaWRhdG9yRmFjdG9yeS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxOS1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuXG5leHBvcnQgaW50ZXJmYWNlIEJhc2VBZGFwdGVyT3B0aW9ucyB7XG4gIHN0cmljdD86IGJvb2xlYW47XG4gIGFsbG93UGFydGlhbD86IGJvb2xlYW47XG4gIGVudmlyb25tZW50PzogJ2RldmVsb3BtZW50JyB8ICdwcm9kdWN0aW9uJyB8ICd0ZXN0JztcbiAgY3VzdG9tVmFsaWRhdGlvbj86IChpbnB1dDogdW5rbm93bikgPT4gdW5rbm93bjtcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGEgdmFsaWRhdG9yIGZhY3RvcnkgdGhhdCBtZXJnZXMgY3VzdG9tIGFkYXB0ZXJzIHdpdGggZGVmYXVsdCBiZWhhdmlvci5cbiAqIFRoaXMgZWxpbWluYXRlcyBjb2RlIGR1cGxpY2F0aW9uIGFjcm9zcyBhbGwgYWN0aW9uIGZpbGVzLlxuICpcbiAqIEBwYXJhbSBkZWZhdWx0VmFsaWRhdG9yIC0gVGhlIGRlZmF1bHQgdmFsaWRhdGlvbiBmdW5jdGlvblxuICogQHBhcmFtIGN1c3RvbUFkYXB0ZXIgLSBPcHRpb25hbCBjdXN0b20gYWRhcHRlciBmdW5jdGlvblxuICogQHBhcmFtIG9wdGlvbnMgLSBBZGFwdGVyIG9wdGlvbnNcbiAqIEByZXR1cm5zIEEgdmFsaWRhdG9yIGZ1bmN0aW9uIHRoYXQgYXBwbGllcyBkZWZhdWx0ICsgY3VzdG9tIHZhbGlkYXRpb25cbiAqXG4gKiBAZXhhbXBsZVxuICogY29uc3QgdmFsaWRhdGVVc2VyID0gY3JlYXRlVmFsaWRhdG9yRmFjdG9yeShcbiAqICAgZGVmYXVsdFVzZXJWYWxpZGF0b3IsXG4gKiAgIGN1c3RvbVVzZXJBZGFwdGVyLFxuICogICB1c2VyQWRhcHRlck9wdGlvbnNcbiAqICk7XG4gKi9cbmV4cG9ydCBjb25zdCBjcmVhdGVWYWxpZGF0b3JGYWN0b3J5ID0gPFQgZXh0ZW5kcyBCYXNlQWRhcHRlck9wdGlvbnM+KFxuICBkZWZhdWx0VmFsaWRhdG9yOiAoaW5wdXQ6IHVua25vd24sIG9wdGlvbnM/OiBUKSA9PiBhbnksXG4gIGN1c3RvbUFkYXB0ZXI/OiAoaW5wdXQ6IHVua25vd24sIG9wdGlvbnM/OiBUKSA9PiBhbnksXG4gIG9wdGlvbnM/OiBUXG4pID0+IChpbnB1dDogdW5rbm93biwgdmFsaWRhdG9yT3B0aW9ucz86IFQpID0+IHtcbiAgY29uc3QgbWVyZ2VkT3B0aW9ucyA9IHsuLi5vcHRpb25zLCAuLi52YWxpZGF0b3JPcHRpb25zfTtcblxuICBsZXQgdmFsaWRhdGVkID0gZGVmYXVsdFZhbGlkYXRvcihpbnB1dCwgbWVyZ2VkT3B0aW9ucyBhcyBUKTtcblxuICBpZihjdXN0b21BZGFwdGVyKSB7XG4gICAgdmFsaWRhdGVkID0gY3VzdG9tQWRhcHRlcih2YWxpZGF0ZWQsIG1lcmdlZE9wdGlvbnMgYXMgVCk7XG4gIH1cblxuICBpZihtZXJnZWRPcHRpb25zPy5jdXN0b21WYWxpZGF0aW9uKSB7XG4gICAgdmFsaWRhdGVkID0gbWVyZ2VkT3B0aW9ucy5jdXN0b21WYWxpZGF0aW9uKHZhbGlkYXRlZCk7XG4gIH1cblxuICByZXR1cm4gdmFsaWRhdGVkO1xufTtcblxuLyoqXG4gKiBDcmVhdGVzIGEgdmFsaWRhdG9yIG1hbmFnZXIgdGhhdCBoYW5kbGVzIGFkYXB0ZXIgdXBkYXRlcyBhbmQgcmVjcmVhdGlvbi5cbiAqIFRoaXMgY2VudHJhbGl6ZXMgdGhlIHVwZGF0ZSBsb2dpYyB0aGF0J3MgZHVwbGljYXRlZCBhY3Jvc3MgYWN0aW9uIGZpbGVzLlxuICpcbiAqIEBwYXJhbSBkZWZhdWx0VmFsaWRhdG9yIC0gVGhlIGRlZmF1bHQgdmFsaWRhdGlvbiBmdW5jdGlvblxuICogQHBhcmFtIGluaXRpYWxPcHRpb25zIC0gSW5pdGlhbCBhZGFwdGVyIG9wdGlvbnNcbiAqIEByZXR1cm5zIEFuIG9iamVjdCB3aXRoIHZhbGlkYXRvciBhbmQgdXBkYXRlIGZ1bmN0aW9uc1xuICpcbiAqIEBleGFtcGxlXG4gKiBjb25zdCB7IHZhbGlkYXRvciwgdXBkYXRlQWRhcHRlciwgdXBkYXRlT3B0aW9ucyB9ID0gY3JlYXRlVmFsaWRhdG9yTWFuYWdlcihcbiAqICAgZGVmYXVsdFVzZXJWYWxpZGF0b3IsXG4gKiAgIHVzZXJBZGFwdGVyT3B0aW9uc1xuICogKTtcbiAqL1xuZXhwb3J0IGNvbnN0IGNyZWF0ZVZhbGlkYXRvck1hbmFnZXIgPSA8VCBleHRlbmRzIEJhc2VBZGFwdGVyT3B0aW9ucz4oXG4gIGRlZmF1bHRWYWxpZGF0b3I6IChpbnB1dDogdW5rbm93biwgb3B0aW9ucz86IFQpID0+IGFueSxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9jb25zaXN0ZW50LXR5cGUtYXNzZXJ0aW9uc1xuICBpbml0aWFsT3B0aW9uczogVCA9IHt9IGFzIFRcbikgPT4ge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2NvbnNpc3RlbnQtdHlwZS1hc3NlcnRpb25zXG4gIGNvbnN0IGRlZmF1bHRPcHRpb25zOiBUID0ge30gYXMgVDtcblxuICBsZXQgYWRhcHRlck9wdGlvbnM6IFQgPSB7Li4uZGVmYXVsdE9wdGlvbnMsIC4uLmluaXRpYWxPcHRpb25zfTtcbiAgbGV0IGN1c3RvbUFkYXB0ZXI6ICgoaW5wdXQ6IHVua25vd24sIG9wdGlvbnM/OiBUKSA9PiBhbnkpIHwgdW5kZWZpbmVkO1xuXG4gIGNvbnN0IHVwZGF0ZUFkYXB0ZXIgPSAoYWRhcHRlcjogKGlucHV0OiB1bmtub3duLCBvcHRpb25zPzogVCkgPT4gYW55KTogdm9pZCA9PiB7XG4gICAgY3VzdG9tQWRhcHRlciA9IGFkYXB0ZXI7XG4gIH07XG5cbiAgY29uc3QgdXBkYXRlT3B0aW9ucyA9IChvcHRpb25zOiBUKTogdm9pZCA9PiB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9jb25zaXN0ZW50LXR5cGUtYXNzZXJ0aW9uc1xuICAgIGFkYXB0ZXJPcHRpb25zID0gey4uLmFkYXB0ZXJPcHRpb25zLCAuLi5vcHRpb25zfSBhcyBUO1xuICB9O1xuXG4gIC8vIENyZWF0ZSB2YWxpZGF0b3IgZnVuY3Rpb24gdGhhdCBhbHdheXMgdXNlcyBjdXJyZW50IGN1c3RvbUFkYXB0ZXIgYW5kIGFkYXB0ZXJPcHRpb25zXG4gIGNvbnN0IHZhbGlkYXRvciA9IChpbnB1dDogdW5rbm93biwgdmFsaWRhdG9yT3B0aW9ucz86IFQpID0+IHtcbiAgICBjb25zdCBtZXJnZWRPcHRpb25zID0gey4uLmFkYXB0ZXJPcHRpb25zLCAuLi52YWxpZGF0b3JPcHRpb25zfTtcbiAgICBsZXQgdmFsaWRhdGVkID0gZGVmYXVsdFZhbGlkYXRvcihpbnB1dCwgbWVyZ2VkT3B0aW9ucyBhcyBUKTtcbiAgICBpZihjdXN0b21BZGFwdGVyKSB7XG4gICAgICB2YWxpZGF0ZWQgPSBjdXN0b21BZGFwdGVyKHZhbGlkYXRlZCwgbWVyZ2VkT3B0aW9ucyBhcyBUKTtcbiAgICB9XG4gICAgaWYobWVyZ2VkT3B0aW9ucz8uY3VzdG9tVmFsaWRhdGlvbikge1xuICAgICAgdmFsaWRhdGVkID0gbWVyZ2VkT3B0aW9ucy5jdXN0b21WYWxpZGF0aW9uKHZhbGlkYXRlZCk7XG4gICAgfVxuICAgIHJldHVybiB2YWxpZGF0ZWQ7XG4gIH07XG5cbiAgcmV0dXJuIHtcbiAgICBnZXRDdXN0b21BZGFwdGVyOiAoKSA9PiBjdXN0b21BZGFwdGVyLFxuICAgIGdldE9wdGlvbnM6ICgpID0+IHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvY29uc2lzdGVudC10eXBlLWFzc2VydGlvbnNcbiAgICAgIGNvbnN0IG9wdGlvbnM6IFQgPSB7Li4uYWRhcHRlck9wdGlvbnN9IGFzIFQ7XG4gICAgICByZXR1cm4gb3B0aW9ucztcbiAgICB9LFxuICAgIHVwZGF0ZUFkYXB0ZXIsXG4gICAgdXBkYXRlT3B0aW9ucyxcbiAgICB2YWxpZGF0b3JcbiAgfTtcbn07Il0sIm5hbWVzIjpbImNyZWF0ZVZhbGlkYXRvckZhY3RvcnkiLCJkZWZhdWx0VmFsaWRhdG9yIiwiY3VzdG9tQWRhcHRlciIsIm9wdGlvbnMiLCJpbnB1dCIsInZhbGlkYXRvck9wdGlvbnMiLCJtZXJnZWRPcHRpb25zIiwidmFsaWRhdGVkIiwiY3VzdG9tVmFsaWRhdGlvbiIsImNyZWF0ZVZhbGlkYXRvck1hbmFnZXIiLCJpbml0aWFsT3B0aW9ucyIsImRlZmF1bHRPcHRpb25zIiwiYWRhcHRlck9wdGlvbnMiLCJ1cGRhdGVBZGFwdGVyIiwiYWRhcHRlciIsInVwZGF0ZU9wdGlvbnMiLCJ2YWxpZGF0b3IiLCJnZXRDdXN0b21BZGFwdGVyIiwiZ2V0T3B0aW9ucyJdLCJtYXBwaW5ncyI6IkFBQUE7OztDQUdDLEdBU0Q7Ozs7Ozs7Ozs7Ozs7OztDQWVDLEdBQ0QsT0FBTyxNQUFNQSx5QkFBeUIsQ0FDcENDLGtCQUNBQyxlQUNBQyxVQUNHLENBQUNDLE9BQWdCQztRQUNwQixNQUFNQyxnQkFBZ0I7WUFBQyxHQUFHSCxPQUFPO1lBQUUsR0FBR0UsZ0JBQWdCO1FBQUE7UUFFdEQsSUFBSUUsWUFBWU4saUJBQWlCRyxPQUFPRTtRQUV4QyxJQUFHSixlQUFlO1lBQ2hCSyxZQUFZTCxjQUFjSyxXQUFXRDtRQUN2QztRQUVBLElBQUdBLGVBQWVFLGtCQUFrQjtZQUNsQ0QsWUFBWUQsY0FBY0UsZ0JBQWdCLENBQUNEO1FBQzdDO1FBRUEsT0FBT0E7SUFDVCxFQUFFO0FBRUY7Ozs7Ozs7Ozs7Ozs7Q0FhQyxHQUNELE9BQU8sTUFBTUUseUJBQXlCLENBQ3BDUixrQkFDQSx5RUFBeUU7QUFDekVTLGlCQUFvQixDQUFDLENBQU07SUFFM0IseUVBQXlFO0lBQ3pFLE1BQU1DLGlCQUFvQixDQUFDO0lBRTNCLElBQUlDLGlCQUFvQjtRQUFDLEdBQUdELGNBQWM7UUFBRSxHQUFHRCxjQUFjO0lBQUE7SUFDN0QsSUFBSVI7SUFFSixNQUFNVyxnQkFBZ0IsQ0FBQ0M7UUFDckJaLGdCQUFnQlk7SUFDbEI7SUFFQSxNQUFNQyxnQkFBZ0IsQ0FBQ1o7UUFDckIseUVBQXlFO1FBQ3pFUyxpQkFBaUI7WUFBQyxHQUFHQSxjQUFjO1lBQUUsR0FBR1QsT0FBTztRQUFBO0lBQ2pEO0lBRUEsc0ZBQXNGO0lBQ3RGLE1BQU1hLFlBQVksQ0FBQ1osT0FBZ0JDO1FBQ2pDLE1BQU1DLGdCQUFnQjtZQUFDLEdBQUdNLGNBQWM7WUFBRSxHQUFHUCxnQkFBZ0I7UUFBQTtRQUM3RCxJQUFJRSxZQUFZTixpQkFBaUJHLE9BQU9FO1FBQ3hDLElBQUdKLGVBQWU7WUFDaEJLLFlBQVlMLGNBQWNLLFdBQVdEO1FBQ3ZDO1FBQ0EsSUFBR0EsZUFBZUUsa0JBQWtCO1lBQ2xDRCxZQUFZRCxjQUFjRSxnQkFBZ0IsQ0FBQ0Q7UUFDN0M7UUFDQSxPQUFPQTtJQUNUO0lBRUEsT0FBTztRQUNMVSxrQkFBa0IsSUFBTWY7UUFDeEJnQixZQUFZO1lBQ1YseUVBQXlFO1lBQ3pFLE1BQU1mLFVBQWE7Z0JBQUMsR0FBR1MsY0FBYztZQUFBO1lBQ3JDLE9BQU9UO1FBQ1Q7UUFDQVU7UUFDQUU7UUFDQUM7SUFDRjtBQUNGLEVBQUUifQ==
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nlabs/metropolisjs",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "MetropolisJS is a library to connect users to Reaktor",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "lib/index.js",
|
|
@@ -8,12 +8,40 @@
|
|
|
8
8
|
"exports": {
|
|
9
9
|
".": {
|
|
10
10
|
"import": "./lib/index.js",
|
|
11
|
-
"require": "./lib/index.js"
|
|
11
|
+
"require": "./lib/index.js",
|
|
12
|
+
"types": "./lib/index.d.ts"
|
|
13
|
+
},
|
|
14
|
+
"./stores": {
|
|
15
|
+
"import": "./lib/stores/index.js",
|
|
16
|
+
"require": "./lib/stores/index.js",
|
|
17
|
+
"types": "./lib/stores/index.d.ts"
|
|
18
|
+
},
|
|
19
|
+
"./actions": {
|
|
20
|
+
"import": "./lib/actions/index.js",
|
|
21
|
+
"require": "./lib/actions/index.js",
|
|
22
|
+
"types": "./lib/actions/index.d.ts"
|
|
23
|
+
},
|
|
24
|
+
"./adapters": {
|
|
25
|
+
"import": "./lib/adapters/index.js",
|
|
26
|
+
"require": "./lib/adapters/index.js",
|
|
27
|
+
"types": "./lib/adapters/index.d.ts"
|
|
28
|
+
},
|
|
29
|
+
"./utils": {
|
|
30
|
+
"import": "./lib/utils/index.js",
|
|
31
|
+
"require": "./lib/utils/index.js",
|
|
32
|
+
"types": "./lib/utils/index.d.ts"
|
|
33
|
+
},
|
|
34
|
+
"./config": {
|
|
35
|
+
"import": "./lib/config/index.js",
|
|
36
|
+
"require": "./lib/config/index.js",
|
|
37
|
+
"types": "./lib/config/index.d.ts"
|
|
12
38
|
}
|
|
13
39
|
},
|
|
14
40
|
"types": "./lib/index.d.ts",
|
|
15
41
|
"scripts": {
|
|
16
|
-
"build": "lex compile --remove",
|
|
42
|
+
"build": "lex compile --remove && npm run postbuild",
|
|
43
|
+
"build:dev": "NODE_ENV=development lex compile --remove",
|
|
44
|
+
"postbuild": "npx tsc-esm-fix lib",
|
|
17
45
|
"clean": "lex clean",
|
|
18
46
|
"dev": "lex dev --remove",
|
|
19
47
|
"format": "npm run prettier && npm run lint",
|
|
@@ -46,29 +74,42 @@
|
|
|
46
74
|
},
|
|
47
75
|
"license": "MIT",
|
|
48
76
|
"dependencies": {
|
|
49
|
-
"@nlabs/rip-hunter": "3.
|
|
50
|
-
"@nlabs/utils": "2.
|
|
51
|
-
"
|
|
52
|
-
"
|
|
77
|
+
"@nlabs/rip-hunter": "3.1.0",
|
|
78
|
+
"@nlabs/utils": "^2.8.6",
|
|
79
|
+
"i18next": "^25.10.9",
|
|
80
|
+
"luxon": "^3.7.2",
|
|
81
|
+
"p-debounce": "^5.1.0",
|
|
82
|
+
"react-i18next": "^16.6.6",
|
|
53
83
|
"sockette": "^2.0.6",
|
|
54
|
-
"zod": "^4.
|
|
84
|
+
"zod": "^4.3.6"
|
|
55
85
|
},
|
|
56
86
|
"devDependencies": {
|
|
57
|
-
"@jest/globals": "30.0
|
|
58
|
-
"@nlabs/arkhamjs": "3.31.
|
|
59
|
-
"@nlabs/arkhamjs-storage-browser": "^3.30.
|
|
60
|
-
"@nlabs/arkhamjs-utils-react": "^3.32.
|
|
61
|
-
"@nlabs/lex": "^1.
|
|
87
|
+
"@jest/globals": "30.3.0",
|
|
88
|
+
"@nlabs/arkhamjs": "3.31.9",
|
|
89
|
+
"@nlabs/arkhamjs-storage-browser": "^3.30.6",
|
|
90
|
+
"@nlabs/arkhamjs-utils-react": "^3.32.7",
|
|
91
|
+
"@nlabs/lex": "^1.55.2",
|
|
62
92
|
"@types/jest": "^30.0.0",
|
|
63
|
-
"@types/node": "^
|
|
64
|
-
"@types/react": "^19.
|
|
65
|
-
"react": "^19.
|
|
66
|
-
"typescript": "^
|
|
93
|
+
"@types/node": "^25.5.0",
|
|
94
|
+
"@types/react": "^19.2.14",
|
|
95
|
+
"react": "^19.2.4",
|
|
96
|
+
"typescript": "^6.0.2"
|
|
67
97
|
},
|
|
68
98
|
"peerDependencies": {
|
|
69
99
|
"@nlabs/arkhamjs": "^3.31.1",
|
|
70
100
|
"@nlabs/arkhamjs-storage-browser": "^3.30.0",
|
|
71
101
|
"@nlabs/arkhamjs-utils-react": "^3.32.0",
|
|
72
102
|
"react": "^19.1.0"
|
|
103
|
+
},
|
|
104
|
+
"overrides": {
|
|
105
|
+
"cross-spawn": "^7.0.6",
|
|
106
|
+
"got": "^14.6.5",
|
|
107
|
+
"http-cache-semantics": "^4.2.0",
|
|
108
|
+
"http-proxy-middleware": "^3.0.5",
|
|
109
|
+
"lodash.pick": "npm:lodash@^4.17.21",
|
|
110
|
+
"nth-check": "^2.1.1",
|
|
111
|
+
"postcss": "^8.5.6",
|
|
112
|
+
"semver-regex": "^4.0.5",
|
|
113
|
+
"tmp": "^0.2.5"
|
|
73
114
|
}
|
|
74
115
|
}
|
package/temp_signin.ts
ADDED
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Correct usage of signIn from MetropolisJS userActions
|
|
3
|
+
* This replaces the incorrect manual GraphQL construction
|
|
4
|
+
*/
|
|
5
|
+
import {FluxFramework} from '@nlabs/arkhamjs';
|
|
6
|
+
import {createUserActions} from './src/actions/userActions/userActions';
|
|
7
|
+
|
|
8
|
+
// Create flux instance and user actions
|
|
9
|
+
const flux = new FluxFramework();
|
|
10
|
+
const userActions = createUserActions(flux);
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Correct signIn usage - pass user object with authentication fields
|
|
14
|
+
*/
|
|
15
|
+
const signInUser = async (username: string, password: string, expires: number = 15) => {
|
|
16
|
+
try {
|
|
17
|
+
// Correct way: pass user object with username/password
|
|
18
|
+
const session = await userActions.signIn({
|
|
19
|
+
username,
|
|
20
|
+
password
|
|
21
|
+
}, expires);
|
|
22
|
+
|
|
23
|
+
console.log('Sign in successful:', session);
|
|
24
|
+
return {success: true, session};
|
|
25
|
+
} catch (error: any) {
|
|
26
|
+
console.error('Sign in failed:', error.message);
|
|
27
|
+
return {success: false, error: error.message};
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* Alternative: sign in with email
|
|
33
|
+
*/
|
|
34
|
+
const signInWithEmail = async (email: string, password: string, expires: number = 15) => {
|
|
35
|
+
try {
|
|
36
|
+
const session = await userActions.signIn({
|
|
37
|
+
email,
|
|
38
|
+
password
|
|
39
|
+
}, expires);
|
|
40
|
+
|
|
41
|
+
console.log('Sign in successful:', session);
|
|
42
|
+
return {success: true, session};
|
|
43
|
+
} catch (error: any) {
|
|
44
|
+
console.error('Sign in failed:', error.message);
|
|
45
|
+
return {success: false, error: error.message};
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* Alternative: sign in with phone
|
|
51
|
+
*/
|
|
52
|
+
const signInWithPhone = async (phone: string, password: string, expires: number = 15) => {
|
|
53
|
+
try {
|
|
54
|
+
const session = await userActions.signIn({
|
|
55
|
+
phone,
|
|
56
|
+
password
|
|
57
|
+
}, expires);
|
|
58
|
+
|
|
59
|
+
console.log('Sign in successful:', session);
|
|
60
|
+
return {success: true, session};
|
|
61
|
+
} catch (error: any) {
|
|
62
|
+
console.error('Sign in failed:', error.message);
|
|
63
|
+
return {success: false, error: error.message};
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
// Export the correct functions
|
|
68
|
+
export {
|
|
69
|
+
signInUser,
|
|
70
|
+
signInWithEmail,
|
|
71
|
+
signInWithPhone
|
|
72
|
+
};
|
|
73
|
+
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import type { FluxFramework } from '@nlabs/arkhamjs';
|
|
2
|
-
import type { ProfileType } from '../../adapters/profileAdapter/profileAdapter';
|
|
3
|
-
export interface ProfileAdapterOptions {
|
|
4
|
-
readonly strict?: boolean;
|
|
5
|
-
readonly allowPartial?: boolean;
|
|
6
|
-
readonly environment?: 'development' | 'production' | 'test';
|
|
7
|
-
readonly customValidation?: (input: unknown) => unknown;
|
|
8
|
-
}
|
|
9
|
-
export interface ProfileActionsOptions {
|
|
10
|
-
readonly profileAdapter?: (input: unknown, options?: ProfileAdapterOptions) => any;
|
|
11
|
-
readonly profileAdapterOptions?: ProfileAdapterOptions;
|
|
12
|
-
}
|
|
13
|
-
export interface ProfileApiResultsType {
|
|
14
|
-
readonly profiles: {
|
|
15
|
-
readonly addProfile?: ProfileType;
|
|
16
|
-
readonly deleteProfile?: ProfileType;
|
|
17
|
-
readonly getProfile?: ProfileType;
|
|
18
|
-
readonly getProfiles?: ProfileType[];
|
|
19
|
-
readonly updateProfile?: ProfileType;
|
|
20
|
-
};
|
|
21
|
-
}
|
|
22
|
-
export interface ProfileActions {
|
|
23
|
-
readonly addProfile: (profileData: Partial<ProfileType>, profileProps?: string[]) => Promise<ProfileType>;
|
|
24
|
-
readonly getProfile: (profileId: string, profileProps?: string[]) => Promise<ProfileType>;
|
|
25
|
-
readonly getProfiles: (profileIds: string[], profileProps?: string[]) => Promise<ProfileType[]>;
|
|
26
|
-
readonly deleteProfile: (profileId: string, profileProps?: string[]) => Promise<ProfileType>;
|
|
27
|
-
readonly updateProfile: (profile: Partial<ProfileType>, profileProps?: string[]) => Promise<ProfileType>;
|
|
28
|
-
readonly updateProfileAdapter: (adapter: (input: unknown, options?: ProfileAdapterOptions) => any) => void;
|
|
29
|
-
readonly updateProfileAdapterOptions: (options: ProfileAdapterOptions) => void;
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* Factory function to create ProfileActions with enhanced adapter injection capabilities.
|
|
33
|
-
* Custom adapters are merged with default behavior, allowing partial overrides.
|
|
34
|
-
*
|
|
35
|
-
* @example
|
|
36
|
-
* // Basic usage with default adapters
|
|
37
|
-
* const profileActions = createProfileActions(flux);
|
|
38
|
-
*
|
|
39
|
-
* @example
|
|
40
|
-
* // Custom adapter that extends default behavior
|
|
41
|
-
* const customProfileAdapter = (input: unknown, options?: ProfileAdapterOptions) => {
|
|
42
|
-
* // input is already validated by default adapter
|
|
43
|
-
* return input;
|
|
44
|
-
* };
|
|
45
|
-
*
|
|
46
|
-
* const profileActions = createProfileActions(flux, {
|
|
47
|
-
* profileAdapter: customProfileAdapter
|
|
48
|
-
* });
|
|
49
|
-
*/
|
|
50
|
-
export declare const createProfileActions: (flux: FluxFramework, options?: ProfileActionsOptions) => ProfileActions;
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{parseId as P}from"@nlabs/utils";import{validateProfileInput as u}from"../../adapters/profileAdapter/profileAdapter";import{PROFILE_CONSTANTS as o}from"../../stores/profileStore";import{appMutation as y,appQuery as c}from"../../utils/api";import{createBaseActions as T}from"../../utils/baseActionFactory";const f="profiles",m=(r,n)=>u(r),C=(r,n)=>{const d=T(r,m,{...n?.profileAdapter&&{adapter:n.profileAdapter},...n?.profileAdapterOptions&&{adapterOptions:n.profileAdapterOptions}});return{addProfile:async(i,t=[])=>{try{const e={profile:{type:"ProfileInput!",value:d.validator(i)}},p=l=>{const{profiles:{addProfile:s={}}}=l;return r.dispatch({profile:s,type:o.ADD_ITEM_SUCCESS})},{addProfile:a}=await y(r,"addProfile",f,e,["profileId",...t],{onSuccess:p});return a}catch(e){throw r.dispatch({error:e,type:o.ADD_ITEM_ERROR}),e}},getProfile:async(i,t=[])=>{try{const e={profileId:{type:"ID!",value:P(i)}},p=l=>{const{profiles:{getProfile:s={}}}=l;return r.dispatch({profile:s,type:o.GET_ITEM_SUCCESS})},{profile:a}=await c(r,"profile",f,e,["active","gender","hasLike","hasView","images(from: 0 to: 10) { id, imageId, imageUrl, thumbUrl }","imageCount","likeCount","name","profileId","tags {name, tagId}","userId","viewCount",...t],{onSuccess:p});return a}catch(e){throw r.dispatch({error:e,type:o.GET_ITEM_ERROR}),e}},getProfiles:async(i,t=[])=>{try{const e={profileIds:{type:"[ID!]!",value:i.map(P)}},p=l=>{const{profiles:{getProfiles:s=[]}}=l;return r.dispatch({profiles:s,type:o.GET_LIST_SUCCESS})},{profiles:a}=await c(r,"profiles",f,e,["active","gender","hasLike","hasView","images(from: 0 to: 10) { id, imageId, imageUrl, thumbUrl }","imageCount","likeCount","name","profileId","tags {name, tagId}","userId","viewCount",...t],{onSuccess:p});return a}catch(e){throw r.dispatch({error:e,type:o.GET_LIST_ERROR}),e}},deleteProfile:async(i,t=[])=>{try{const e={profileId:{type:"ID!",value:P(i)}},p=l=>{const{profiles:{deleteProfile:s={}}}=l;return r.dispatch({profile:s,type:o.DELETE_ITEM_SUCCESS})},{deleteProfile:a}=await y(r,"deleteProfile",f,e,["profileId",...t],{onSuccess:p});return a}catch(e){throw r.dispatch({error:e,type:o.DELETE_ITEM_ERROR}),e}},updateProfile:async(i,t=[])=>{try{const e={profile:{type:"ProfileInput!",value:d.validator(i)}},p=l=>{const{profiles:{updateProfile:s={}}}=l;return r.dispatch({profile:s,type:o.UPDATE_ITEM_SUCCESS})},{updateProfile:a}=await y(r,"updateProfile",f,e,["profileId",...t],{onSuccess:p});return a}catch(e){throw r.dispatch({error:e,type:o.UPDATE_ITEM_ERROR}),e}},updateProfileAdapter:d.updateAdapter,updateProfileAdapterOptions:d.updateOptions}};export{C as createProfileActions};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2FjdGlvbnMvcHJvZmlsZUFjdGlvbnMvcHJvZmlsZUFjdGlvbnMudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDIzLVByZXNlbnQsIE5pdHJvZ2VuIExhYnMsIEluYy5cbiAqIENvcHlyaWdodHMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLiBTZWUgdGhlIGFjY29tcGFueWluZyBMSUNFTlNFIGZpbGUgZm9yIHRlcm1zLlxuICovXG5pbXBvcnQgeyBwYXJzZUlkIH0gZnJvbSAnQG5sYWJzL3V0aWxzJztcblxuaW1wb3J0IHsgdmFsaWRhdGVQcm9maWxlSW5wdXQgfSBmcm9tICcuLi8uLi9hZGFwdGVycy9wcm9maWxlQWRhcHRlci9wcm9maWxlQWRhcHRlcic7XG5pbXBvcnQgeyBQUk9GSUxFX0NPTlNUQU5UUyB9IGZyb20gJy4uLy4uL3N0b3Jlcy9wcm9maWxlU3RvcmUnO1xuaW1wb3J0IHsgYXBwTXV0YXRpb24sIGFwcFF1ZXJ5IH0gZnJvbSAnLi4vLi4vdXRpbHMvYXBpJztcbmltcG9ydCB7IGNyZWF0ZUJhc2VBY3Rpb25zIH0gZnJvbSAnLi4vLi4vdXRpbHMvYmFzZUFjdGlvbkZhY3RvcnknO1xuXG5pbXBvcnQgdHlwZSB7IEZsdXhGcmFtZXdvcmsgfSBmcm9tICdAbmxhYnMvYXJraGFtanMnO1xuaW1wb3J0IHR5cGUgeyBQcm9maWxlVHlwZSB9IGZyb20gJy4uLy4uL2FkYXB0ZXJzL3Byb2ZpbGVBZGFwdGVyL3Byb2ZpbGVBZGFwdGVyJztcblxuLy8gRGVmaW5lIHRoZSBjb2xsZWN0aW9uIG5hbWUgZm9yIHByb2ZpbGVzXG5jb25zdCBEQVRBX1RZUEUgPSAncHJvZmlsZXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFByb2ZpbGVBZGFwdGVyT3B0aW9ucyB7XG4gIHJlYWRvbmx5IHN0cmljdD86IGJvb2xlYW47XG4gIHJlYWRvbmx5IGFsbG93UGFydGlhbD86IGJvb2xlYW47XG4gIHJlYWRvbmx5IGVudmlyb25tZW50PzogJ2RldmVsb3BtZW50JyB8ICdwcm9kdWN0aW9uJyB8ICd0ZXN0JztcbiAgcmVhZG9ubHkgY3VzdG9tVmFsaWRhdGlvbj86IChpbnB1dDogdW5rbm93bikgPT4gdW5rbm93bjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQcm9maWxlQWN0aW9uc09wdGlvbnMge1xuICByZWFkb25seSBwcm9maWxlQWRhcHRlcj86IChpbnB1dDogdW5rbm93biwgb3B0aW9ucz86IFByb2ZpbGVBZGFwdGVyT3B0aW9ucykgPT4gYW55O1xuICByZWFkb25seSBwcm9maWxlQWRhcHRlck9wdGlvbnM/OiBQcm9maWxlQWRhcHRlck9wdGlvbnM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJvZmlsZUFwaVJlc3VsdHNUeXBlIHtcbiAgcmVhZG9ubHkgcHJvZmlsZXM6IHtcbiAgICByZWFkb25seSBhZGRQcm9maWxlPzogUHJvZmlsZVR5cGU7XG4gICAgcmVhZG9ubHkgZGVsZXRlUHJvZmlsZT86IFByb2ZpbGVUeXBlO1xuICAgIHJlYWRvbmx5IGdldFByb2ZpbGU/OiBQcm9maWxlVHlwZTtcbiAgICByZWFkb25seSBnZXRQcm9maWxlcz86IFByb2ZpbGVUeXBlW107XG4gICAgcmVhZG9ubHkgdXBkYXRlUHJvZmlsZT86IFByb2ZpbGVUeXBlO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb2ZpbGVBY3Rpb25zIHtcbiAgcmVhZG9ubHkgYWRkUHJvZmlsZTogKHByb2ZpbGVEYXRhOiBQYXJ0aWFsPFByb2ZpbGVUeXBlPiwgcHJvZmlsZVByb3BzPzogc3RyaW5nW10pID0+IFByb21pc2U8UHJvZmlsZVR5cGU+O1xuICByZWFkb25seSBnZXRQcm9maWxlOiAocHJvZmlsZUlkOiBzdHJpbmcsIHByb2ZpbGVQcm9wcz86IHN0cmluZ1tdKSA9PiBQcm9taXNlPFByb2ZpbGVUeXBlPjtcbiAgcmVhZG9ubHkgZ2V0UHJvZmlsZXM6IChwcm9maWxlSWRzOiBzdHJpbmdbXSwgcHJvZmlsZVByb3BzPzogc3RyaW5nW10pID0+IFByb21pc2U8UHJvZmlsZVR5cGVbXT47XG4gIHJlYWRvbmx5IGRlbGV0ZVByb2ZpbGU6IChwcm9maWxlSWQ6IHN0cmluZywgcHJvZmlsZVByb3BzPzogc3RyaW5nW10pID0+IFByb21pc2U8UHJvZmlsZVR5cGU+O1xuICByZWFkb25seSB1cGRhdGVQcm9maWxlOiAocHJvZmlsZTogUGFydGlhbDxQcm9maWxlVHlwZT4sIHByb2ZpbGVQcm9wcz86IHN0cmluZ1tdKSA9PiBQcm9taXNlPFByb2ZpbGVUeXBlPjtcbiAgcmVhZG9ubHkgdXBkYXRlUHJvZmlsZUFkYXB0ZXI6IChhZGFwdGVyOiAoaW5wdXQ6IHVua25vd24sIG9wdGlvbnM/OiBQcm9maWxlQWRhcHRlck9wdGlvbnMpID0+IGFueSkgPT4gdm9pZDtcbiAgcmVhZG9ubHkgdXBkYXRlUHJvZmlsZUFkYXB0ZXJPcHRpb25zOiAob3B0aW9uczogUHJvZmlsZUFkYXB0ZXJPcHRpb25zKSA9PiB2b2lkO1xufVxuXG4vLyBEZWZhdWx0IHZhbGlkYXRpb24gZnVuY3Rpb25cbmNvbnN0IGRlZmF1bHRQcm9maWxlVmFsaWRhdG9yID0gKGlucHV0OiB1bmtub3duLCBvcHRpb25zPzogUHJvZmlsZUFkYXB0ZXJPcHRpb25zKSA9PiB2YWxpZGF0ZVByb2ZpbGVJbnB1dChpbnB1dCk7XG5cbi8qKlxuICogRmFjdG9yeSBmdW5jdGlvbiB0byBjcmVhdGUgUHJvZmlsZUFjdGlvbnMgd2l0aCBlbmhhbmNlZCBhZGFwdGVyIGluamVjdGlvbiBjYXBhYmlsaXRpZXMuXG4gKiBDdXN0b20gYWRhcHRlcnMgYXJlIG1lcmdlZCB3aXRoIGRlZmF1bHQgYmVoYXZpb3IsIGFsbG93aW5nIHBhcnRpYWwgb3ZlcnJpZGVzLlxuICpcbiAqIEBleGFtcGxlXG4gKiAvLyBCYXNpYyB1c2FnZSB3aXRoIGRlZmF1bHQgYWRhcHRlcnNcbiAqIGNvbnN0IHByb2ZpbGVBY3Rpb25zID0gY3JlYXRlUHJvZmlsZUFjdGlvbnMoZmx1eCk7XG4gKlxuICogQGV4YW1wbGVcbiAqIC8vIEN1c3RvbSBhZGFwdGVyIHRoYXQgZXh0ZW5kcyBkZWZhdWx0IGJlaGF2aW9yXG4gKiBjb25zdCBjdXN0b21Qcm9maWxlQWRhcHRlciA9IChpbnB1dDogdW5rbm93biwgb3B0aW9ucz86IFByb2ZpbGVBZGFwdGVyT3B0aW9ucykgPT4ge1xuICogICAvLyBpbnB1dCBpcyBhbHJlYWR5IHZhbGlkYXRlZCBieSBkZWZhdWx0IGFkYXB0ZXJcbiAqICAgcmV0dXJuIGlucHV0O1xuICogfTtcbiAqXG4gKiBjb25zdCBwcm9maWxlQWN0aW9ucyA9IGNyZWF0ZVByb2ZpbGVBY3Rpb25zKGZsdXgsIHtcbiAqICAgcHJvZmlsZUFkYXB0ZXI6IGN1c3RvbVByb2ZpbGVBZGFwdGVyXG4gKiB9KTtcbiAqL1xuZXhwb3J0IGNvbnN0IGNyZWF0ZVByb2ZpbGVBY3Rpb25zID0gKFxuICBmbHV4OiBGbHV4RnJhbWV3b3JrLFxuICBvcHRpb25zPzogUHJvZmlsZUFjdGlvbnNPcHRpb25zXG4pOiBQcm9maWxlQWN0aW9ucyA9PiB7XG4gIGNvbnN0IHByb2ZpbGVCYXNlID0gY3JlYXRlQmFzZUFjdGlvbnMoZmx1eCwgZGVmYXVsdFByb2ZpbGVWYWxpZGF0b3IsIHtcbiAgICAuLi4ob3B0aW9ucz8ucHJvZmlsZUFkYXB0ZXIgJiYge2FkYXB0ZXI6IG9wdGlvbnMucHJvZmlsZUFkYXB0ZXJ9KSxcbiAgICAuLi4ob3B0aW9ucz8ucHJvZmlsZUFkYXB0ZXJPcHRpb25zICYmIHthZGFwdGVyT3B0aW9uczogb3B0aW9ucy5wcm9maWxlQWRhcHRlck9wdGlvbnN9KVxuICB9KTtcblxuICAvLyBBY3Rpb24gaW1wbGVtZW50YXRpb25zXG4gIGNvbnN0IGFkZFByb2ZpbGUgPSBhc3luYyAocHJvZmlsZURhdGE6IFBhcnRpYWw8UHJvZmlsZVR5cGU+LCBwcm9maWxlUHJvcHM6IHN0cmluZ1tdID0gW10pOiBQcm9taXNlPFByb2ZpbGVUeXBlPiA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHF1ZXJ5VmFyaWFibGVzID0ge1xuICAgICAgICBwcm9maWxlOiB7XG4gICAgICAgICAgdHlwZTogJ1Byb2ZpbGVJbnB1dCEnLFxuICAgICAgICAgIHZhbHVlOiBwcm9maWxlQmFzZS52YWxpZGF0b3IocHJvZmlsZURhdGEpXG4gICAgICAgIH1cbiAgICAgIH07XG5cbiAgICAgIGNvbnN0IG9uU3VjY2VzcyA9IChkYXRhOiBQcm9maWxlQXBpUmVzdWx0c1R5cGUpID0+IHtcbiAgICAgICAgY29uc3Qge3Byb2ZpbGVzOiB7YWRkUHJvZmlsZSA9IHt9fX0gPSBkYXRhO1xuICAgICAgICByZXR1cm4gZmx1eC5kaXNwYXRjaCh7cHJvZmlsZTogYWRkUHJvZmlsZSwgdHlwZTogUFJPRklMRV9DT05TVEFOVFMuQUREX0lURU1fU1VDQ0VTU30pO1xuICAgICAgfTtcblxuICAgICAgY29uc3Qge2FkZFByb2ZpbGV9ID0gYXdhaXQgYXBwTXV0YXRpb24oZmx1eCwgJ2FkZFByb2ZpbGUnLCBEQVRBX1RZUEUsIHF1ZXJ5VmFyaWFibGVzLCBbJ3Byb2ZpbGVJZCcsIC4uLnByb2ZpbGVQcm9wc10sIHtvblN1Y2Nlc3N9KTtcbiAgICAgIHJldHVybiBhZGRQcm9maWxlIGFzIFByb2ZpbGVUeXBlO1xuICAgIH0gY2F0Y2goZXJyb3IpIHtcbiAgICAgIGZsdXguZGlzcGF0Y2goe2Vycm9yLCB0eXBlOiBQUk9GSUxFX0NPTlNUQU5UUy5BRERfSVRFTV9FUlJPUn0pO1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGdldFByb2ZpbGUgPSBhc3luYyAocHJvZmlsZUlkOiBzdHJpbmcsIHByb2ZpbGVQcm9wczogc3RyaW5nW10gPSBbXSk6IFByb21pc2U8UHJvZmlsZVR5cGU+ID0+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcXVlcnlWYXJpYWJsZXMgPSB7XG4gICAgICAgIHByb2ZpbGVJZDoge1xuICAgICAgICAgIHR5cGU6ICdJRCEnLFxuICAgICAgICAgIHZhbHVlOiBwYXJzZUlkKHByb2ZpbGVJZClcbiAgICAgICAgfVxuICAgICAgfTtcblxuICAgICAgY29uc3Qgb25TdWNjZXNzID0gKGRhdGE6IFByb2ZpbGVBcGlSZXN1bHRzVHlwZSkgPT4ge1xuICAgICAgICBjb25zdCB7cHJvZmlsZXM6IHtnZXRQcm9maWxlOiBwcm9maWxlID0ge319fSA9IGRhdGE7XG4gICAgICAgIHJldHVybiBmbHV4LmRpc3BhdGNoKHtwcm9maWxlLCB0eXBlOiBQUk9GSUxFX0NPTlNUQU5UUy5HRVRfSVRFTV9TVUNDRVNTfSk7XG4gICAgICB9O1xuXG4gICAgICBjb25zdCB7cHJvZmlsZX0gPSBhd2FpdCBhcHBRdWVyeShcbiAgICAgICAgZmx1eCxcbiAgICAgICAgJ3Byb2ZpbGUnLFxuICAgICAgICBEQVRBX1RZUEUsXG4gICAgICAgIHF1ZXJ5VmFyaWFibGVzLFxuICAgICAgICBbXG4gICAgICAgICAgJ2FjdGl2ZScsXG4gICAgICAgICAgJ2dlbmRlcicsXG4gICAgICAgICAgJ2hhc0xpa2UnLFxuICAgICAgICAgICdoYXNWaWV3JyxcbiAgICAgICAgICAnaW1hZ2VzKGZyb206IDAgdG86IDEwKSB7IGlkLCBpbWFnZUlkLCBpbWFnZVVybCwgdGh1bWJVcmwgfScsXG4gICAgICAgICAgJ2ltYWdlQ291bnQnLFxuICAgICAgICAgICdsaWtlQ291bnQnLFxuICAgICAgICAgICduYW1lJyxcbiAgICAgICAgICAncHJvZmlsZUlkJyxcbiAgICAgICAgICAndGFncyB7bmFtZSwgdGFnSWR9JyxcbiAgICAgICAgICAndXNlcklkJyxcbiAgICAgICAgICAndmlld0NvdW50JyxcbiAgICAgICAgICAuLi5wcm9maWxlUHJvcHNcbiAgICAgICAgXSxcbiAgICAgICAge29uU3VjY2Vzc31cbiAgICAgICk7XG4gICAgICByZXR1cm4gcHJvZmlsZSBhcyBQcm9maWxlVHlwZTtcbiAgICB9IGNhdGNoKGVycm9yKSB7XG4gICAgICBmbHV4LmRpc3BhdGNoKHtlcnJvciwgdHlwZTogUFJPRklMRV9DT05TVEFOVFMuR0VUX0lURU1fRVJST1J9KTtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBnZXRQcm9maWxlcyA9IGFzeW5jIChwcm9maWxlSWRzOiBzdHJpbmdbXSwgcHJvZmlsZVByb3BzOiBzdHJpbmdbXSA9IFtdKTogUHJvbWlzZTxQcm9maWxlVHlwZVtdPiA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHF1ZXJ5VmFyaWFibGVzID0ge1xuICAgICAgICBwcm9maWxlSWRzOiB7XG4gICAgICAgICAgdHlwZTogJ1tJRCFdIScsXG4gICAgICAgICAgdmFsdWU6IHByb2ZpbGVJZHMubWFwKHBhcnNlSWQpXG4gICAgICAgIH1cbiAgICAgIH07XG5cbiAgICAgIGNvbnN0IG9uU3VjY2VzcyA9IChkYXRhOiBQcm9maWxlQXBpUmVzdWx0c1R5cGUpID0+IHtcbiAgICAgICAgY29uc3Qge3Byb2ZpbGVzOiB7Z2V0UHJvZmlsZXM6IHByb2ZpbGVzID0gW119fSA9IGRhdGE7XG4gICAgICAgIHJldHVybiBmbHV4LmRpc3BhdGNoKHtwcm9maWxlcywgdHlwZTogUFJPRklMRV9DT05TVEFOVFMuR0VUX0xJU1RfU1VDQ0VTU30pO1xuICAgICAgfTtcblxuICAgICAgY29uc3Qge3Byb2ZpbGVzfSA9IGF3YWl0IGFwcFF1ZXJ5KFxuICAgICAgICBmbHV4LFxuICAgICAgICAncHJvZmlsZXMnLFxuICAgICAgICBEQVRBX1RZUEUsXG4gICAgICAgIHF1ZXJ5VmFyaWFibGVzLFxuICAgICAgICBbXG4gICAgICAgICAgJ2FjdGl2ZScsXG4gICAgICAgICAgJ2dlbmRlcicsXG4gICAgICAgICAgJ2hhc0xpa2UnLFxuICAgICAgICAgICdoYXNWaWV3JyxcbiAgICAgICAgICAnaW1hZ2VzKGZyb206IDAgdG86IDEwKSB7IGlkLCBpbWFnZUlkLCBpbWFnZVVybCwgdGh1bWJVcmwgfScsXG4gICAgICAgICAgJ2ltYWdlQ291bnQnLFxuICAgICAgICAgICdsaWtlQ291bnQnLFxuICAgICAgICAgICduYW1lJyxcbiAgICAgICAgICAncHJvZmlsZUlkJyxcbiAgICAgICAgICAndGFncyB7bmFtZSwgdGFnSWR9JyxcbiAgICAgICAgICAndXNlcklkJyxcbiAgICAgICAgICAndmlld0NvdW50JyxcbiAgICAgICAgICAuLi5wcm9maWxlUHJvcHNcbiAgICAgICAgXSxcbiAgICAgICAge29uU3VjY2Vzc31cbiAgICAgICk7XG4gICAgICByZXR1cm4gcHJvZmlsZXMgYXMgUHJvZmlsZVR5cGVbXTtcbiAgICB9IGNhdGNoKGVycm9yKSB7XG4gICAgICBmbHV4LmRpc3BhdGNoKHtlcnJvciwgdHlwZTogUFJPRklMRV9DT05TVEFOVFMuR0VUX0xJU1RfRVJST1J9KTtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBkZWxldGVQcm9maWxlID0gYXN5bmMgKHByb2ZpbGVJZDogc3RyaW5nLCBwcm9maWxlUHJvcHM6IHN0cmluZ1tdID0gW10pOiBQcm9taXNlPFByb2ZpbGVUeXBlPiA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHF1ZXJ5VmFyaWFibGVzID0ge1xuICAgICAgICBwcm9maWxlSWQ6IHtcbiAgICAgICAgICB0eXBlOiAnSUQhJyxcbiAgICAgICAgICB2YWx1ZTogcGFyc2VJZChwcm9maWxlSWQpXG4gICAgICAgIH1cbiAgICAgIH07XG5cbiAgICAgIGNvbnN0IG9uU3VjY2VzcyA9IChkYXRhOiBQcm9maWxlQXBpUmVzdWx0c1R5cGUpID0+IHtcbiAgICAgICAgY29uc3Qge3Byb2ZpbGVzOiB7ZGVsZXRlUHJvZmlsZTogcHJvZmlsZSA9IHt9fX0gPSBkYXRhO1xuICAgICAgICByZXR1cm4gZmx1eC5kaXNwYXRjaCh7cHJvZmlsZSwgdHlwZTogUFJPRklMRV9DT05TVEFOVFMuREVMRVRFX0lURU1fU1VDQ0VTU30pO1xuICAgICAgfTtcblxuICAgICAgY29uc3Qge2RlbGV0ZVByb2ZpbGV9ID0gYXdhaXQgYXBwTXV0YXRpb24oZmx1eCwgJ2RlbGV0ZVByb2ZpbGUnLCBEQVRBX1RZUEUsIHF1ZXJ5VmFyaWFibGVzLCBbJ3Byb2ZpbGVJZCcsIC4uLnByb2ZpbGVQcm9wc10sIHtvblN1Y2Nlc3N9KTtcbiAgICAgIHJldHVybiBkZWxldGVQcm9maWxlIGFzIFByb2ZpbGVUeXBlO1xuICAgIH0gY2F0Y2goZXJyb3IpIHtcbiAgICAgIGZsdXguZGlzcGF0Y2goe2Vycm9yLCB0eXBlOiBQUk9GSUxFX0NPTlNUQU5UUy5ERUxFVEVfSVRFTV9FUlJPUn0pO1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IHVwZGF0ZVByb2ZpbGUgPSBhc3luYyAocHJvZmlsZTogUGFydGlhbDxQcm9maWxlVHlwZT4sIHByb2ZpbGVQcm9wczogc3RyaW5nW10gPSBbXSk6IFByb21pc2U8UHJvZmlsZVR5cGU+ID0+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcXVlcnlWYXJpYWJsZXMgPSB7XG4gICAgICAgIHByb2ZpbGU6IHtcbiAgICAgICAgICB0eXBlOiAnUHJvZmlsZUlucHV0IScsXG4gICAgICAgICAgdmFsdWU6IHByb2ZpbGVCYXNlLnZhbGlkYXRvcihwcm9maWxlKVxuICAgICAgICB9XG4gICAgICB9O1xuXG4gICAgICBjb25zdCBvblN1Y2Nlc3MgPSAoZGF0YTogUHJvZmlsZUFwaVJlc3VsdHNUeXBlKSA9PiB7XG4gICAgICAgIGNvbnN0IHtwcm9maWxlczoge3VwZGF0ZVByb2ZpbGU6IHByb2ZpbGUgPSB7fX19ID0gZGF0YTtcbiAgICAgICAgcmV0dXJuIGZsdXguZGlzcGF0Y2goe3Byb2ZpbGUsIHR5cGU6IFBST0ZJTEVfQ09OU1RBTlRTLlVQREFURV9JVEVNX1NVQ0NFU1N9KTtcbiAgICAgIH07XG5cbiAgICAgIGNvbnN0IHt1cGRhdGVQcm9maWxlfSA9IGF3YWl0IGFwcE11dGF0aW9uKGZsdXgsICd1cGRhdGVQcm9maWxlJywgREFUQV9UWVBFLCBxdWVyeVZhcmlhYmxlcywgWydwcm9maWxlSWQnLCAuLi5wcm9maWxlUHJvcHNdLCB7b25TdWNjZXNzfSk7XG4gICAgICByZXR1cm4gdXBkYXRlUHJvZmlsZSBhcyBQcm9maWxlVHlwZTtcbiAgICB9IGNhdGNoKGVycm9yKSB7XG4gICAgICBmbHV4LmRpc3BhdGNoKHtlcnJvciwgdHlwZTogUFJPRklMRV9DT05TVEFOVFMuVVBEQVRFX0lURU1fRVJST1J9KTtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH1cbiAgfTtcblxuICByZXR1cm4ge1xuICAgIGFkZFByb2ZpbGUsXG4gICAgZ2V0UHJvZmlsZSxcbiAgICBnZXRQcm9maWxlcyxcbiAgICBkZWxldGVQcm9maWxlLFxuICAgIHVwZGF0ZVByb2ZpbGUsXG4gICAgdXBkYXRlUHJvZmlsZUFkYXB0ZXI6IHByb2ZpbGVCYXNlLnVwZGF0ZUFkYXB0ZXIsXG4gICAgdXBkYXRlUHJvZmlsZUFkYXB0ZXJPcHRpb25zOiBwcm9maWxlQmFzZS51cGRhdGVPcHRpb25zXG4gIH07XG59OyJdLAogICJtYXBwaW5ncyI6ICJBQUlBLE9BQVMsV0FBQUEsTUFBZSxlQUV4QixPQUFTLHdCQUFBQyxNQUE0QiwrQ0FDckMsT0FBUyxxQkFBQUMsTUFBeUIsNEJBQ2xDLE9BQVMsZUFBQUMsRUFBYSxZQUFBQyxNQUFnQixrQkFDdEMsT0FBUyxxQkFBQUMsTUFBeUIsZ0NBTWxDLE1BQU1DLEVBQVksV0FtQ1pDLEVBQTBCLENBQUNDLEVBQWdCQyxJQUFvQ1IsRUFBcUJPLENBQUssRUFxQmxHRSxFQUF1QixDQUNsQ0MsRUFDQUYsSUFDbUIsQ0FDbkIsTUFBTUcsRUFBY1AsRUFBa0JNLEVBQU1KLEVBQXlCLENBQ25FLEdBQUlFLEdBQVMsZ0JBQWtCLENBQUMsUUFBU0EsRUFBUSxjQUFjLEVBQy9ELEdBQUlBLEdBQVMsdUJBQXlCLENBQUMsZUFBZ0JBLEVBQVEscUJBQXFCLENBQ3RGLENBQUMsRUEySkQsTUFBTyxDQUNMLFdBekppQixNQUFPSSxFQUFtQ0MsRUFBeUIsQ0FBQyxJQUE0QixDQUNqSCxHQUFJLENBQ0YsTUFBTUMsRUFBaUIsQ0FDckIsUUFBUyxDQUNQLEtBQU0sZ0JBQ04sTUFBT0gsRUFB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RUFBV1MsRUFBZ0IsQ0FBQyxZQUFhLEdBQUdELENBQVksRUFBRyxDQUFDLFVBQUFFLENBQVMsQ0FBQyxFQUN2SSxPQUFPUSxDQUNULE9BQVFMLEVBQU8sQ0FDYixNQUFBUixFQUFLLFNBQVMsQ0FBQyxNQUFBUSxFQUFPLEtBQU1qQixFQUFrQixpQkFBaUIsQ0FBQyxFQUMxRGlCLENBQ1IsQ0FDRixFQTZCRSxjQTNCb0IsTUFBT0UsRUFBK0JQLEVBQXlCLENBQUMsSUFBNEIsQ0FDaEgsR0FBSSxDQUNGLE1BQU1DLEVBQWlCLENBQ3JCLFFBQVMsQ0FDUCxLQUFNLGdCQUNOLE1BQU9ILEVBQVksVUFBVVMsQ0FBTyxDQUN0QyxDQUNGLEVBRU1MLEVBQWFDLEdBQWdDLENBQ2pELEtBQU0sQ0FBQyxTQUFVLENBQUMsY0FBZUksRUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFJSixFQUNsRCxPQUFPTixFQUFLLFNBQVMsQ0FBQyxRQUFBVSxFQUFTLEtBQU1uQixFQUFrQixtQkFBbUIsQ0FBQyxDQUM3RSxFQUVNLENBQUMsY0FBQXVCLENBQWEsRUFBSSxNQUFNdEIsRUFBWVEsRUFBTSxnQkFBaUJMLEVBQVdTLEVBQWdCLENBQUMsWUFBYSxHQUFHRCxDQUFZLEVBQUcsQ0FBQyxVQUFBRSxDQUFTLENBQUMsRUFDdkksT0FBT1MsQ0FDVCxPQUFRTixFQUFPLENBQ2IsTUFBQVIsRUFBSyxTQUFTLENBQUMsTUFBQVEsRUFBTyxLQUFNakIsRUFBa0IsaUJBQWlCLENBQUMsRUFDMURpQixDQUNSLENBQ0YsRUFRRSxxQkFBc0JQLEVBQVksY0FDbEMsNEJBQTZCQSxFQUFZLGFBQzNDLENBQ0YiLAogICJuYW1lcyI6IFsicGFyc2VJZCIsICJ2YWxpZGF0ZVByb2ZpbGVJbnB1dCIsICJQUk9GSUxFX0NPTlNUQU5UUyIsICJhcHBNdXRhdGlvbiIsICJhcHBRdWVyeSIsICJjcmVhdGVCYXNlQWN0aW9ucyIsICJEQVRBX1RZUEUiLCAiZGVmYXVsdFByb2ZpbGVWYWxpZGF0b3IiLCAiaW5wdXQiLCAib3B0aW9ucyIsICJjcmVhdGVQcm9maWxlQWN0aW9ucyIsICJmbHV4IiwgInByb2ZpbGVCYXNlIiwgInByb2ZpbGVEYXRhIiwgInByb2ZpbGVQcm9wcyIsICJxdWVyeVZhcmlhYmxlcyIsICJvblN1Y2Nlc3MiLCAiZGF0YSIsICJhZGRQcm9maWxlIiwgImVycm9yIiwgInByb2ZpbGVJZCIsICJwcm9maWxlIiwgInByb2ZpbGVJZHMiLCAicHJvZmlsZXMiLCAiZGVsZXRlUHJvZmlsZSIsICJ1cGRhdGVQcm9maWxlIl0KfQo=
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
export interface ProfileType {
|
|
2
|
-
_id?: string;
|
|
3
|
-
_key?: string;
|
|
4
|
-
_rev?: string;
|
|
5
|
-
_oldRev?: string;
|
|
6
|
-
_from?: string;
|
|
7
|
-
_to?: string;
|
|
8
|
-
active?: boolean;
|
|
9
|
-
gender?: string;
|
|
10
|
-
hasLike?: boolean;
|
|
11
|
-
hasView?: boolean;
|
|
12
|
-
id?: string;
|
|
13
|
-
images?: any[];
|
|
14
|
-
imageCount?: number;
|
|
15
|
-
imageId?: string;
|
|
16
|
-
imageUrl?: string;
|
|
17
|
-
likeCount?: number;
|
|
18
|
-
name?: string;
|
|
19
|
-
profileId?: string;
|
|
20
|
-
tags?: any[];
|
|
21
|
-
thumbUrl?: string;
|
|
22
|
-
userId?: string;
|
|
23
|
-
viewCount?: number;
|
|
24
|
-
[key: string]: any;
|
|
25
|
-
}
|
|
26
|
-
export declare class ProfileValidationError extends Error {
|
|
27
|
-
field?: string | undefined;
|
|
28
|
-
constructor(message: string, field?: string | undefined);
|
|
29
|
-
}
|
|
30
|
-
export declare const validateProfileInput: (profile: unknown) => ProfileType;
|
|
31
|
-
export declare const formatProfileOutput: (profile: ProfileType) => ProfileType;
|
|
32
|
-
export declare const parseProfile: (profile: ProfileType) => ProfileType;
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{parseArangoId as C,parseBoolean as s,parseChar as T,parseId as l,parseNum as p,parseString as x}from"@nlabs/utils";import{z as e}from"zod";import{parseDocument as E,removeEmptyKeys as U}from"../arangoAdapter/arangoAdapter";import{parseImage as V}from"../imageAdapter/imageAdapter";import{parseTag as $}from"../tagAdapter/tagAdapter";class g extends Error{constructor(i,n){super(i);this.field=n;this.name="ProfileValidationError"}}const L=e.object({_id:e.string().optional(),_key:e.string().optional(),_rev:e.string().optional(),_oldRev:e.string().optional(),_from:e.string().optional(),_to:e.string().optional(),active:e.boolean().optional(),gender:e.string().max(1).optional(),hasLike:e.boolean().optional(),hasView:e.boolean().optional(),id:e.string().optional(),images:e.array(e.any()).optional(),imageCount:e.number().optional(),imageId:e.string().optional(),imageUrl:e.string().optional(),likeCount:e.number().optional(),name:e.string().max(64).optional(),profileId:e.string().optional(),tags:e.array(e.any()).optional(),thumbUrl:e.string().optional(),userId:e.string().optional(),viewCount:e.number().optional()}).passthrough(),K=o=>{try{return L.parse(o)}catch(r){if(r instanceof e.ZodError){const i=r.issues.map(n=>`${n.path.join(".")}: ${n.message}`).join(", ");throw new g(`Profile validation failed: ${i}`)}throw r}},N=o=>o,O=o=>{try{return j(o)}catch(r){throw r instanceof g?r:new g(`Profile parsing failed: ${r instanceof Error?r.message:"Unknown error"}`)}},j=o=>{const{_id:r,_key:i,active:n,gender:m,hasLike:d,hasView:f,id:u,images:c,imageCount:h,imageId:y,imageUrl:P,likeCount:b,name:v,profileId:t,tags:I,thumbUrl:w,userId:k,viewCount:_}=o;return U({...E(o),...n!==void 0&&{active:s(n)},...m&&{gender:T(m,1)},...d!==void 0&&{hasLike:s(d)},...f!==void 0&&{hasView:s(f)},...(r||u||i||t)&&{id:C(r||u||`profiles/${i||t}`)},...c?.length&&{images:c.map(a=>V(a))},...h!==void 0&&{imageCount:p(h)},...y&&{imageId:l(y)},...P&&{imageUrl:P},...b!==void 0&&{likeCount:p(b)},...v&&{name:x(v,64)},...(i||t)&&{profileId:l(i||t||"")},...I?.length&&{tags:I.map(a=>$(a))},...w&&{thumbUrl:w},...k&&{userId:l(k)},..._!==void 0&&{viewCount:p(_)}})};export{g as ProfileValidationError,N as formatProfileOutput,O as parseProfile,K as validateProfileInput};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2FkYXB0ZXJzL3Byb2ZpbGVBZGFwdGVyL3Byb2ZpbGVBZGFwdGVyLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJpbXBvcnQge3BhcnNlQXJhbmdvSWQsIHBhcnNlQm9vbGVhbiwgcGFyc2VDaGFyLCBwYXJzZUlkLCBwYXJzZU51bSwgcGFyc2VTdHJpbmd9IGZyb20gJ0BubGFicy91dGlscyc7XG5pbXBvcnQge3p9IGZyb20gJ3pvZCc7XG5cbmltcG9ydCB7cGFyc2VEb2N1bWVudCwgcmVtb3ZlRW1wdHlLZXlzfSBmcm9tICcuLi9hcmFuZ29BZGFwdGVyL2FyYW5nb0FkYXB0ZXInO1xuaW1wb3J0IHtwYXJzZUltYWdlfSBmcm9tICcuLi9pbWFnZUFkYXB0ZXIvaW1hZ2VBZGFwdGVyJztcbmltcG9ydCB7cGFyc2VUYWd9IGZyb20gJy4uL3RhZ0FkYXB0ZXIvdGFnQWRhcHRlcic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJvZmlsZVR5cGUge1xuICBfaWQ/OiBzdHJpbmc7XG4gIF9rZXk/OiBzdHJpbmc7XG4gIF9yZXY/OiBzdHJpbmc7XG4gIF9vbGRSZXY/OiBzdHJpbmc7XG4gIF9mcm9tPzogc3RyaW5nO1xuICBfdG8/OiBzdHJpbmc7XG4gIGFjdGl2ZT86IGJvb2xlYW47XG4gIGdlbmRlcj86IHN0cmluZztcbiAgaGFzTGlrZT86IGJvb2xlYW47XG4gIGhhc1ZpZXc/OiBib29sZWFuO1xuICBpZD86IHN0cmluZztcbiAgaW1hZ2VzPzogYW55W107XG4gIGltYWdlQ291bnQ/OiBudW1iZXI7XG4gIGltYWdlSWQ/OiBzdHJpbmc7XG4gIGltYWdlVXJsPzogc3RyaW5nO1xuICBsaWtlQ291bnQ/OiBudW1iZXI7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIHByb2ZpbGVJZD86IHN0cmluZztcbiAgdGFncz86IGFueVtdO1xuICB0aHVtYlVybD86IHN0cmluZztcbiAgdXNlcklkPzogc3RyaW5nO1xuICB2aWV3Q291bnQ/OiBudW1iZXI7XG4gIFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IGNsYXNzIFByb2ZpbGVWYWxpZGF0aW9uRXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZywgcHVibGljIGZpZWxkPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gICAgdGhpcy5uYW1lID0gJ1Byb2ZpbGVWYWxpZGF0aW9uRXJyb3InO1xuICB9XG59XG5cbmNvbnN0IFByb2ZpbGVJbnB1dFNjaGVtYSA9IHoub2JqZWN0KHtcbiAgX2lkOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIF9rZXk6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgX3Jldjogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBfb2xkUmV2OiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIF9mcm9tOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIF90bzogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBhY3RpdmU6IHouYm9vbGVhbigpLm9wdGlvbmFsKCksXG4gIGdlbmRlcjogei5zdHJpbmcoKS5tYXgoMSkub3B0aW9uYWwoKSxcbiAgaGFzTGlrZTogei5ib29sZWFuKCkub3B0aW9uYWwoKSxcbiAgaGFzVmlldzogei5ib29sZWFuKCkub3B0aW9uYWwoKSxcbiAgaWQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgaW1hZ2VzOiB6LmFycmF5KHouYW55KCkpLm9wdGlvbmFsKCksXG4gIGltYWdlQ291bnQ6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgaW1hZ2VJZDogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBpbWFnZVVybDogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBsaWtlQ291bnQ6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgbmFtZTogei5zdHJpbmcoKS5tYXgoNjQpLm9wdGlvbmFsKCksXG4gIHByb2ZpbGVJZDogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICB0YWdzOiB6LmFycmF5KHouYW55KCkpLm9wdGlvbmFsKCksXG4gIHRodW1iVXJsOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIHVzZXJJZDogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICB2aWV3Q291bnQ6IHoubnVtYmVyKCkub3B0aW9uYWwoKVxufSkucGFzc3Rocm91Z2goKTtcblxuZXhwb3J0IGNvbnN0IHZhbGlkYXRlUHJvZmlsZUlucHV0ID0gKHByb2ZpbGU6IHVua25vd24pOiBQcm9maWxlVHlwZSA9PiB7XG4gIHRyeSB7XG4gICAgY29uc3QgdmFsaWRhdGVkID0gUHJvZmlsZUlucHV0U2NoZW1hLnBhcnNlKHByb2ZpbGUpO1xuICAgIHJldHVybiB2YWxpZGF0ZWQgYXMgUHJvZmlsZVR5cGU7XG4gIH0gY2F0Y2goZXJyb3IpIHtcbiAgICBpZihlcnJvciBpbnN0YW5jZW9mIHouWm9kRXJyb3IpIHtcbiAgICAgIGNvbnN0IGZpZWxkRXJyb3JzID0gZXJyb3IuaXNzdWVzLm1hcCgoZSkgPT4gYCR7ZS5wYXRoLmpvaW4oJy4nKX06ICR7ZS5tZXNzYWdlfWApLmpvaW4oJywgJyk7XG4gICAgICB0aHJvdyBuZXcgUHJvZmlsZVZhbGlkYXRpb25FcnJvcihgUHJvZmlsZSB2YWxpZGF0aW9uIGZhaWxlZDogJHtmaWVsZEVycm9yc31gKTtcbiAgICB9XG4gICAgdGhyb3cgZXJyb3I7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBmb3JtYXRQcm9maWxlT3V0cHV0ID0gKHByb2ZpbGU6IFByb2ZpbGVUeXBlKTogUHJvZmlsZVR5cGUgPT4gcHJvZmlsZTtcblxuZXhwb3J0IGNvbnN0IHBhcnNlUHJvZmlsZSA9IChwcm9maWxlOiBQcm9maWxlVHlwZSk6IFByb2ZpbGVUeXBlID0+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCBwYXJzZWQgPSBwZXJmb3JtUHJvZmlsZVRyYW5zZm9ybWF0aW9uKHByb2ZpbGUpO1xuICAgIHJldHVybiBwYXJzZWQ7XG4gIH0gY2F0Y2goZXJyb3IpIHtcbiAgICBpZihlcnJvciBpbnN0YW5jZW9mIFByb2ZpbGVWYWxpZGF0aW9uRXJyb3IpIHtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH1cbiAgICB0aHJvdyBuZXcgUHJvZmlsZVZhbGlkYXRpb25FcnJvcihgUHJvZmlsZSBwYXJzaW5nIGZhaWxlZDogJHtlcnJvciBpbnN0YW5jZW9mIEVycm9yID8gZXJyb3IubWVzc2FnZSA6ICdVbmtub3duIGVycm9yJ31gKTtcbiAgfVxufTtcblxuY29uc3QgcGVyZm9ybVByb2ZpbGVUcmFuc2Zvcm1hdGlvbiA9IChwcm9maWxlOiBQcm9maWxlVHlwZSk6IFByb2ZpbGVUeXBlID0+IHtcbiAgY29uc3Qge1xuICAgIF9pZCxcbiAgICBfa2V5LFxuICAgIGFjdGl2ZSxcbiAgICBnZW5kZXIsXG4gICAgaGFzTGlrZSxcbiAgICBoYXNWaWV3LFxuICAgIGlkLFxuICAgIGltYWdlcyxcbiAgICBpbWFnZUNvdW50LFxuICAgIGltYWdlSWQsXG4gICAgaW1hZ2VVcmwsXG4gICAgbGlrZUNvdW50LFxuICAgIG5hbWUsXG4gICAgcHJvZmlsZUlkLFxuICAgIHRhZ3MsXG4gICAgdGh1bWJVcmwsXG4gICAgdXNlcklkLFxuICAgIHZpZXdDb3VudFxuICB9ID0gcHJvZmlsZTtcblxuICBjb25zdCB0cmFuc2Zvcm1lZCA9IHJlbW92ZUVtcHR5S2V5cyh7XG4gICAgLi4ucGFyc2VEb2N1bWVudChwcm9maWxlKSxcbiAgICAuLi4oYWN0aXZlICE9PSB1bmRlZmluZWQgJiYge2FjdGl2ZTogcGFyc2VCb29sZWFuKGFjdGl2ZSl9KSxcbiAgICAuLi4oZ2VuZGVyICYmIHtnZW5kZXI6IHBhcnNlQ2hhcihnZW5kZXIsIDEpfSksXG4gICAgLi4uKGhhc0xpa2UgIT09IHVuZGVmaW5lZCAmJiB7aGFzTGlrZTogcGFyc2VCb29sZWFuKGhhc0xpa2UpfSksXG4gICAgLi4uKGhhc1ZpZXcgIT09IHVuZGVmaW5lZCAmJiB7aGFzVmlldzogcGFyc2VCb29sZWFuKGhhc1ZpZXcpfSksXG4gICAgLi4uKChfaWQgfHwgaWQgfHwgX2tleSB8fCBwcm9maWxlSWQpICYmIHtpZDogcGFyc2VBcmFuZ29JZChfaWQgfHwgaWQgfHwgYHByb2ZpbGVzLyR7X2tleSB8fCBwcm9maWxlSWR9YCl9KSxcbiAgICAuLi4oaW1hZ2VzPy5sZW5ndGggJiYge2ltYWdlczogaW1hZ2VzLm1hcCgoaW1hZ2UpID0+IHBhcnNlSW1hZ2UoaW1hZ2UpKX0pLFxuICAgIC4uLihpbWFnZUNvdW50ICE9PSB1bmRlZmluZWQgJiYge2ltYWdlQ291bnQ6IHBhcnNlTnVtKGltYWdlQ291bnQpfSksXG4gICAgLi4uKGltYWdlSWQgJiYge2ltYWdlSWQ6IHBhcnNlSWQoaW1hZ2VJZCl9KSxcbiAgICAuLi4oaW1hZ2VVcmwgJiYge2ltYWdlVXJsfSksXG4gICAgLi4uKGxpa2VDb3VudCAhPT0gdW5kZWZpbmVkICYmIHtsaWtlQ291bnQ6IHBhcnNlTnVtKGxpa2VDb3VudCl9KSxcbiAgICAuLi4obmFtZSAmJiB7bmFtZTogcGFyc2VTdHJpbmcobmFtZSwgNjQpfSksXG4gICAgLi4uKChfa2V5IHx8IHByb2ZpbGVJZCkgJiYge3Byb2ZpbGVJZDogcGFyc2VJZChfa2V5IHx8IHByb2ZpbGVJZCB8fCAnJyl9KSxcbiAgICAuLi4odGFncz8ubGVuZ3RoICYmIHt0YWdzOiB0YWdzLm1hcCgodGFnKSA9PiBwYXJzZVRhZyh0YWcpKX0pLFxuICAgIC4uLih0aHVtYlVybCAmJiB7dGh1bWJVcmx9KSxcbiAgICAuLi4odXNlcklkICYmIHt1c2VySWQ6IHBhcnNlSWQodXNlcklkKX0pLFxuICAgIC4uLih2aWV3Q291bnQgIT09IHVuZGVmaW5lZCAmJiB7dmlld0NvdW50OiBwYXJzZU51bSh2aWV3Q291bnQpfSlcbiAgfSk7XG5cbiAgcmV0dXJuIHRyYW5zZm9ybWVkIGFzIFByb2ZpbGVUeXBlO1xufTsiXSwKICAibWFwcGluZ3MiOiAiQUFBQSxPQUFRLGlCQUFBQSxFQUFlLGdCQUFBQyxFQUFjLGFBQUFDLEVBQVcsV0FBQUMsRUFBUyxZQUFBQyxFQUFVLGVBQUFDLE1BQWtCLGVBQ3JGLE9BQVEsS0FBQUMsTUFBUSxNQUVoQixPQUFRLGlCQUFBQyxFQUFlLG1CQUFBQyxNQUFzQixpQ0FDN0MsT0FBUSxjQUFBQyxNQUFpQiwrQkFDekIsT0FBUSxZQUFBQyxNQUFlLDJCQTRCaEIsTUFBTUMsVUFBK0IsS0FBTSxDQUNoRCxZQUFZQyxFQUF3QkMsRUFBZ0IsQ0FDbEQsTUFBTUQsQ0FBTyxFQURxQixXQUFBQyxFQUVsQyxLQUFLLEtBQU8sd0JBQ2QsQ0FDRixDQUVBLE1BQU1DLEVBQXFCUixFQUFFLE9BQU8sQ0FDbEMsSUFBS0EsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUN6QixLQUFNQSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQzFCLEtBQU1BLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFDMUIsUUFBU0EsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUM3QixNQUFPQSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQzNCLElBQUtBLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFDekIsT0FBUUEsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUM3QixPQUFRQSxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsRUFBRSxTQUFTLEVBQ25DLFFBQVNBLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFDOUIsUUFBU0EsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUM5QixHQUFJQSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQ3hCLE9BQVFBLEVBQUUsTUFBTUEsRUFBRSxJQUFJLENBQUMsRUFBRSxTQUFTLEVBQ2xDLFdBQVlBLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFDaEMsUUFBU0EsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUM3QixTQUFVQSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQzlCLFVBQVdBLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFDL0IsS0FBTUEsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLEVBQUUsU0FBUyxFQUNsQyxVQUFXQSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQy9CLEtBQU1BLEVBQUUsTUFBTUEsRUFBRSxJQUFJLENBQUMsRUFBRSxTQUFTLEVBQ2hDLFNBQVVBLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFDOUIsT0FBUUEsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUM1QixVQUFXQSxFQUFFLE9BQU8sRUFBRSxTQUFTLENBQ2pDLENBQUMsRUFBRSxZQUFZLEVBRUZTLEVBQXdCQyxHQUFrQyxDQUNyRSxHQUFJLENBRUYsT0FEa0JGLEVBQW1CLE1BQU1FLENBQU8sQ0FFcEQsT0FBUUMsRUFBTyxDQUNiLEdBQUdBLGFBQWlCWCxFQUFFLFNBQVUsQ0FDOUIsTUFBTVksRUFBY0QsRUFBTSxPQUFPLElBQUtFLEdBQU0sR0FBR0EsRUFBRSxLQUFLLEtBQUssR0FBRyxDQUFDLEtBQUtBLEVBQUUsT0FBTyxFQUFFLEVBQUUsS0FBSyxJQUFJLEVBQzFGLE1BQU0sSUFBSVIsRUFBdUIsOEJBQThCTyxDQUFXLEVBQUUsQ0FDOUUsQ0FDQSxNQUFNRCxDQUNSLENBQ0YsRUFFYUcsRUFBdUJKLEdBQXNDQSxFQUU3REssRUFBZ0JMLEdBQXNDLENBQ2pFLEdBQUksQ0FFRixPQURlTSxFQUE2Qk4sQ0FBTyxDQUVyRCxPQUFRQyxFQUFPLENBQ2IsTUFBR0EsYUFBaUJOLEVBQ1pNLEVBRUYsSUFBSU4sRUFBdUIsMkJBQTJCTSxhQUFpQixNQUFRQSxFQUFNLFFBQVUsZUFBZSxFQUFFLENBQ3hILENBQ0YsRUFFTUssRUFBZ0NOLEdBQXNDLENBQzFFLEtBQU0sQ0FDSixJQUFBTyxFQUNBLEtBQUFDLEVBQ0EsT0FBQUMsRUFDQSxPQUFBQyxFQUNBLFFBQUFDLEVBQ0EsUUFBQUMsRUFDQSxHQUFBQyxFQUNBLE9BQUFDLEVBQ0EsV0FBQUMsRUFDQSxRQUFBQyxFQUNBLFNBQUFDLEVBQ0EsVUFBQUMsRUFDQSxLQUFBQyxFQUNBLFVBQUFDLEVBQ0EsS0FBQUMsRUFDQSxTQUFBQyxFQUNBLE9BQUFDLEVBQ0EsVUFBQUMsQ0FDRixFQUFJeEIsRUFzQkosT0FwQm9CUixFQUFnQixDQUNsQyxHQUFHRCxFQUFjUyxDQUFPLEVBQ3hCLEdBQUlTLElBQVcsUUFBYSxDQUFDLE9BQVF4QixFQUFhd0IsQ0FBTSxDQUFDLEVBQ3pELEdBQUlDLEdBQVUsQ0FBQyxPQUFReEIsRUFBVXdCLEVBQVEsQ0FBQyxDQUFDLEVBQzNDLEdBQUlDLElBQVksUUFBYSxDQUFDLFFBQVMxQixFQUFhMEIsQ0FBTyxDQUFDLEVBQzVELEdBQUlDLElBQVksUUFBYSxDQUFDLFFBQVMzQixFQUFhMkIsQ0FBTyxDQUFDLEVBQzVELElBQUtMLEdBQU9NLEdBQU1MLEdBQVFZLElBQWMsQ0FBQyxHQUFJcEMsRUFBY3VCLEdBQU9NLEdBQU0sWUFBWUwsR0FBUVksQ0FBUyxFQUFFLENBQUMsRUFDeEcsR0FBSU4sR0FBUSxRQUFVLENBQUMsT0FBUUEsRUFBTyxJQUFLVyxHQUFVaEMsRUFBV2dDLENBQUssQ0FBQyxDQUFDLEVBQ3ZFLEdBQUlWLElBQWUsUUFBYSxDQUFDLFdBQVkzQixFQUFTMkIsQ0FBVSxDQUFDLEVBQ2pFLEdBQUlDLEdBQVcsQ0FBQyxRQUFTN0IsRUFBUTZCLENBQU8sQ0FBQyxFQUN6QyxHQUFJQyxHQUFZLENBQUMsU0FBQUEsQ0FBUSxFQUN6QixHQUFJQyxJQUFjLFFBQWEsQ0FBQyxVQUFXOUIsRUFBUzhCLENBQVMsQ0FBQyxFQUM5RCxHQUFJQyxHQUFRLENBQUMsS0FBTTlCLEVBQVk4QixFQUFNLEVBQUUsQ0FBQyxFQUN4QyxJQUFLWCxHQUFRWSxJQUFjLENBQUMsVUFBV2pDLEVBQVFxQixHQUFRWSxHQUFhLEVBQUUsQ0FBQyxFQUN2RSxHQUFJQyxHQUFNLFFBQVUsQ0FBQyxLQUFNQSxFQUFLLElBQUtLLEdBQVFoQyxFQUFTZ0MsQ0FBRyxDQUFDLENBQUMsRUFDM0QsR0FBSUosR0FBWSxDQUFDLFNBQUFBLENBQVEsRUFDekIsR0FBSUMsR0FBVSxDQUFDLE9BQVFwQyxFQUFRb0MsQ0FBTSxDQUFDLEVBQ3RDLEdBQUlDLElBQWMsUUFBYSxDQUFDLFVBQVdwQyxFQUFTb0MsQ0FBUyxDQUFDLENBQ2hFLENBQUMsQ0FHSCIsCiAgIm5hbWVzIjogWyJwYXJzZUFyYW5nb0lkIiwgInBhcnNlQm9vbGVhbiIsICJwYXJzZUNoYXIiLCAicGFyc2VJZCIsICJwYXJzZU51bSIsICJwYXJzZVN0cmluZyIsICJ6IiwgInBhcnNlRG9jdW1lbnQiLCAicmVtb3ZlRW1wdHlLZXlzIiwgInBhcnNlSW1hZ2UiLCAicGFyc2VUYWciLCAiUHJvZmlsZVZhbGlkYXRpb25FcnJvciIsICJtZXNzYWdlIiwgImZpZWxkIiwgIlByb2ZpbGVJbnB1dFNjaGVtYSIsICJ2YWxpZGF0ZVByb2ZpbGVJbnB1dCIsICJwcm9maWxlIiwgImVycm9yIiwgImZpZWxkRXJyb3JzIiwgImUiLCAiZm9ybWF0UHJvZmlsZU91dHB1dCIsICJwYXJzZVByb2ZpbGUiLCAicGVyZm9ybVByb2ZpbGVUcmFuc2Zvcm1hdGlvbiIsICJfaWQiLCAiX2tleSIsICJhY3RpdmUiLCAiZ2VuZGVyIiwgImhhc0xpa2UiLCAiaGFzVmlldyIsICJpZCIsICJpbWFnZXMiLCAiaW1hZ2VDb3VudCIsICJpbWFnZUlkIiwgImltYWdlVXJsIiwgImxpa2VDb3VudCIsICJuYW1lIiwgInByb2ZpbGVJZCIsICJ0YWdzIiwgInRodW1iVXJsIiwgInVzZXJJZCIsICJ2aWV3Q291bnQiLCAiaW1hZ2UiLCAidGFnIl0KfQo=
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import type { ProfileType } from '../adapters/profileAdapter/profileAdapter';
|
|
2
|
-
export declare const PROFILE_CONSTANTS: {
|
|
3
|
-
ADD_ITEM_ERROR: string;
|
|
4
|
-
ADD_ITEM_SUCCESS: string;
|
|
5
|
-
DELETE_ITEM_ERROR: string;
|
|
6
|
-
DELETE_ITEM_SUCCESS: string;
|
|
7
|
-
GET_ITEM_ERROR: string;
|
|
8
|
-
GET_ITEM_SUCCESS: string;
|
|
9
|
-
GET_LIST_ERROR: string;
|
|
10
|
-
GET_LIST_SUCCESS: string;
|
|
11
|
-
UPDATE_ITEM_ERROR: string;
|
|
12
|
-
UPDATE_ITEM_SUCCESS: string;
|
|
13
|
-
};
|
|
14
|
-
export interface ProfileState {
|
|
15
|
-
readonly error?: Error;
|
|
16
|
-
readonly list: ProfileType[];
|
|
17
|
-
readonly listMap: Record<string, ProfileType>;
|
|
18
|
-
}
|
|
19
|
-
export declare const initialProfileState: ProfileState;
|
|
20
|
-
export declare const profileStore: {
|
|
21
|
-
initialState: ProfileState;
|
|
22
|
-
name: string;
|
|
23
|
-
reducer: (state?: ProfileState, action?: {}, _next?: {}) => ProfileState;
|
|
24
|
-
};
|