@nlabs/metropolisjs 1.0.1 → 1.0.6
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/CHANGELOG.md +6 -109
- package/README.md +32 -22
- package/examples/content-actions-usage.ts +1 -2
- package/examples/factory-pattern-usage.ts +0 -18
- package/lib/actions/appActions/appActions.d.ts +0 -1
- package/lib/actions/awsRumActions/awsRumActions.d.ts +1 -2
- package/lib/actions/awsRumActions/awsRumActions.js +43 -22
- package/lib/actions/connectionActions/connectionActions.d.ts +0 -1
- package/lib/actions/contentActions/contentActions.d.ts +0 -1
- package/lib/actions/conversationActions/conversationActions.d.ts +0 -1
- package/lib/actions/crmActions/crmActions.d.ts +0 -1
- package/lib/actions/eventActions/eventActions.d.ts +0 -1
- package/lib/actions/groupActions/groupActions.d.ts +0 -1
- package/lib/actions/imageActions/imageActions.d.ts +0 -1
- package/lib/actions/imageActions/imageActions.js +5 -4
- package/lib/actions/index.d.ts +0 -1
- package/lib/actions/locationActions/locationActions.d.ts +0 -1
- package/lib/actions/messageActions/messageActions.d.ts +0 -1
- package/lib/actions/permissionActions/permissionActions.d.ts +0 -1
- package/lib/actions/personaActions/personaActions.d.ts +0 -1
- package/lib/actions/postActions/postActions.d.ts +0 -1
- package/lib/actions/reactionActions/reactionActions.d.ts +0 -1
- package/lib/actions/restActions/restActions.d.ts +0 -1
- package/lib/actions/sseActions/sseActions.d.ts +0 -1
- package/lib/actions/sseActions/sseActions.js +1 -1
- package/lib/actions/subscriptionActions/subscriptionActions.d.ts +0 -1
- package/lib/actions/tagActions/tagActions.d.ts +0 -1
- package/lib/actions/tagActions/tagActions.js +1 -1
- package/lib/actions/translationActions/translationActions.d.ts +0 -1
- package/lib/actions/userActions/userActions.d.ts +0 -3
- package/lib/actions/userActions/userActions.js +2 -7
- package/lib/actions/videoActions/videoActions.d.ts +0 -1
- package/lib/actions/websocketActions/websocketActions.d.ts +0 -1
- package/lib/adapters/appAdapter/appAdapter.d.ts +2 -3
- package/lib/adapters/arangoAdapter/arangoAdapter.d.ts +2 -3
- package/lib/adapters/contentAdapter/contentAdapter.d.ts +2 -3
- package/lib/adapters/conversationAdapter/conversationAdapter.d.ts +2 -3
- package/lib/adapters/eventAdapter/eventAdapter.d.ts +2 -3
- package/lib/adapters/fileAdapter/fileAdapter.d.ts +2 -3
- package/lib/adapters/groupAdapter/groupAdapter.d.ts +2 -3
- package/lib/adapters/imageAdapter/imageAdapter.d.ts +2 -3
- package/lib/adapters/index.d.ts +0 -1
- package/lib/adapters/locationAdapter/locationAdapter.d.ts +2 -3
- package/lib/adapters/messageAdapter/messageAdapter.d.ts +2 -3
- package/lib/adapters/permissionAdapter/permissionAdapter.d.ts +2 -3
- package/lib/adapters/personaAdapter/personaAdapter.d.ts +2 -3
- package/lib/adapters/postAdapter/postAdapter.d.ts +2 -3
- package/lib/adapters/reactionAdapter/reactionAdapter.d.ts +2 -3
- package/lib/adapters/reaktorAdapter/reaktorAdapter.d.ts +2 -3
- package/lib/adapters/sessionAdapter/sessionAdapter.d.ts +2 -3
- package/lib/adapters/tagAdapter/tagAdapter.d.ts +2 -4
- package/lib/adapters/tagAdapter/tagAdapter.js +1 -2
- package/lib/adapters/translationAdapter/translationAdapter.d.ts +2 -3
- package/lib/adapters/userAdapter/userAdapter.d.ts +2 -4
- package/lib/adapters/userAdapter/userAdapter.js +1 -2
- package/lib/adapters/videoAdapter/videoAdapter.d.ts +2 -3
- package/lib/config/index.d.ts +3 -3
- package/lib/config/index.js +7 -3
- package/lib/constants/Collections.d.ts +0 -1
- package/lib/constants/MetropolisConstants.d.ts +0 -1
- package/lib/graphql/message.d.ts +0 -1
- package/lib/graphql/notification.d.ts +0 -1
- package/lib/graphql/session.d.ts +0 -1
- package/lib/index.d.ts +4 -5
- package/lib/index.js +6 -5
- package/lib/stores/appStore.d.ts +0 -1
- package/lib/stores/contentStore.d.ts +0 -1
- package/lib/stores/conversationStore.d.ts +0 -1
- package/lib/stores/eventStore.d.ts +0 -1
- package/lib/stores/groupStore.d.ts +0 -1
- package/lib/stores/imageStore.d.ts +0 -1
- package/lib/stores/index.d.ts +0 -1
- package/lib/stores/locationStore.d.ts +0 -1
- package/lib/stores/messageStore.d.ts +0 -1
- package/lib/stores/notificationStore.d.ts +0 -1
- package/lib/stores/permissionStore.d.ts +0 -1
- package/lib/stores/personaStore.d.ts +0 -1
- package/lib/stores/postStore.d.ts +0 -1
- package/lib/stores/reactionStore.d.ts +0 -1
- package/lib/stores/subscriptionStore.d.ts +0 -1
- package/lib/stores/tagStore.d.ts +0 -1
- package/lib/stores/translationStore.d.ts +0 -1
- package/lib/stores/userStore.d.ts +2 -3
- package/lib/stores/userStore.js +7 -1
- package/lib/stores/videoStore.d.ts +0 -1
- package/lib/stores/websocketStore.d.ts +0 -1
- package/lib/types/apps.types.d.ts +0 -1
- package/lib/types/common.types.d.ts +0 -1
- package/lib/types/conversations.types.d.ts +0 -1
- package/lib/types/crm.types.d.ts +0 -1
- package/lib/types/edges.types.d.ts +0 -1
- package/lib/types/groups.types.d.ts +0 -1
- package/lib/types/index.d.ts +0 -1
- package/lib/types/subscriptions.types.d.ts +0 -1
- package/lib/types/videos.types.d.ts +0 -1
- package/lib/utils/{MetropolisProvider.d.ts → MetropolisContext.d.ts} +3 -15
- package/lib/utils/MetropolisContext.js +7 -0
- package/lib/utils/actionFactory.d.ts +2 -3
- package/lib/utils/actionFactory.js +2 -2
- package/lib/utils/api.d.ts +2 -2
- package/lib/utils/api.js +42 -18
- package/lib/utils/app.d.ts +0 -1
- package/lib/utils/baseActionFactory.d.ts +2 -3
- package/lib/utils/configUtils.d.ts +0 -1
- package/lib/utils/dateUtils.d.ts +0 -1
- package/lib/utils/file.d.ts +0 -1
- package/lib/utils/i18n.d.ts +0 -1
- package/lib/utils/index.d.ts +2 -3
- package/lib/utils/index.js +3 -3
- package/lib/utils/location.d.ts +1 -2
- package/lib/utils/permissionUtils.d.ts +0 -1
- package/lib/utils/requestCache.d.ts +1 -2
- package/lib/utils/session.d.ts +0 -1
- package/lib/utils/useConversationTyping.d.ts +0 -1
- package/lib/utils/useMetropolis.d.ts +2 -7
- package/lib/utils/useMetropolis.js +16 -30
- package/lib/utils/useTranslations.d.ts +0 -1
- package/lib/utils/useTranslations.js +4 -2
- package/lib/utils/validatorFactory.d.ts +1 -2
- package/package.json +7 -4
- package/tsconfig.test.json +4 -0
- package/lib/actions/appActions/appActions.d.ts.map +0 -1
- package/lib/actions/awsRumActions/awsRumActions.d.ts.map +0 -1
- package/lib/actions/connectionActions/connectionActions.d.ts.map +0 -1
- package/lib/actions/contentActions/contentActions.d.ts.map +0 -1
- package/lib/actions/conversationActions/conversationActions.d.ts.map +0 -1
- package/lib/actions/crmActions/crmActions.d.ts.map +0 -1
- package/lib/actions/eventActions/eventActions.d.ts.map +0 -1
- package/lib/actions/groupActions/groupActions.d.ts.map +0 -1
- package/lib/actions/imageActions/imageActions.d.ts.map +0 -1
- package/lib/actions/index.d.ts.map +0 -1
- package/lib/actions/locationActions/locationActions.d.ts.map +0 -1
- package/lib/actions/messageActions/messageActions.d.ts.map +0 -1
- package/lib/actions/permissionActions/permissionActions.d.ts.map +0 -1
- package/lib/actions/personaActions/personaActions.d.ts.map +0 -1
- package/lib/actions/postActions/postActions.d.ts.map +0 -1
- package/lib/actions/reactionActions/reactionActions.d.ts.map +0 -1
- package/lib/actions/restActions/restActions.d.ts.map +0 -1
- package/lib/actions/sseActions/sseActions.d.ts.map +0 -1
- package/lib/actions/subscriptionActions/subscriptionActions.d.ts.map +0 -1
- package/lib/actions/tagActions/tagActions.d.ts.map +0 -1
- package/lib/actions/translationActions/translationActions.d.ts.map +0 -1
- package/lib/actions/userActions/userActions.d.ts.map +0 -1
- package/lib/actions/videoActions/videoActions.d.ts.map +0 -1
- package/lib/actions/websocketActions/websocketActions.d.ts.map +0 -1
- package/lib/adapters/appAdapter/appAdapter.d.ts.map +0 -1
- package/lib/adapters/arangoAdapter/arangoAdapter.d.ts.map +0 -1
- package/lib/adapters/contentAdapter/contentAdapter.d.ts.map +0 -1
- package/lib/adapters/conversationAdapter/conversationAdapter.d.ts.map +0 -1
- package/lib/adapters/eventAdapter/eventAdapter.d.ts.map +0 -1
- package/lib/adapters/fileAdapter/fileAdapter.d.ts.map +0 -1
- package/lib/adapters/groupAdapter/groupAdapter.d.ts.map +0 -1
- package/lib/adapters/imageAdapter/imageAdapter.d.ts.map +0 -1
- package/lib/adapters/index.d.ts.map +0 -1
- package/lib/adapters/locationAdapter/locationAdapter.d.ts.map +0 -1
- package/lib/adapters/messageAdapter/messageAdapter.d.ts.map +0 -1
- package/lib/adapters/permissionAdapter/permissionAdapter.d.ts.map +0 -1
- package/lib/adapters/personaAdapter/personaAdapter.d.ts.map +0 -1
- package/lib/adapters/postAdapter/postAdapter.d.ts.map +0 -1
- package/lib/adapters/reactionAdapter/reactionAdapter.d.ts.map +0 -1
- package/lib/adapters/reaktorAdapter/reaktorAdapter.d.ts.map +0 -1
- package/lib/adapters/sessionAdapter/sessionAdapter.d.ts.map +0 -1
- package/lib/adapters/tagAdapter/tagAdapter.d.ts.map +0 -1
- package/lib/adapters/translationAdapter/translationAdapter.d.ts.map +0 -1
- package/lib/adapters/userAdapter/userAdapter.d.ts.map +0 -1
- package/lib/adapters/videoAdapter/videoAdapter.d.ts.map +0 -1
- package/lib/config/index.d.ts.map +0 -1
- package/lib/constants/Collections.d.ts.map +0 -1
- package/lib/constants/MetropolisConstants.d.ts.map +0 -1
- package/lib/graphql/message.d.ts.map +0 -1
- package/lib/graphql/notification.d.ts.map +0 -1
- package/lib/graphql/session.d.ts.map +0 -1
- package/lib/index.d.ts.map +0 -1
- package/lib/stores/appStore.d.ts.map +0 -1
- package/lib/stores/contentStore.d.ts.map +0 -1
- package/lib/stores/conversationStore.d.ts.map +0 -1
- package/lib/stores/eventStore.d.ts.map +0 -1
- package/lib/stores/groupStore.d.ts.map +0 -1
- package/lib/stores/imageStore.d.ts.map +0 -1
- package/lib/stores/index.d.ts.map +0 -1
- package/lib/stores/locationStore.d.ts.map +0 -1
- package/lib/stores/messageStore.d.ts.map +0 -1
- package/lib/stores/notificationStore.d.ts.map +0 -1
- package/lib/stores/permissionStore.d.ts.map +0 -1
- package/lib/stores/personaStore.d.ts.map +0 -1
- package/lib/stores/postStore.d.ts.map +0 -1
- package/lib/stores/reactionStore.d.ts.map +0 -1
- package/lib/stores/subscriptionStore.d.ts.map +0 -1
- package/lib/stores/tagStore.d.ts.map +0 -1
- package/lib/stores/translationStore.d.ts.map +0 -1
- package/lib/stores/userStore.d.ts.map +0 -1
- package/lib/stores/videoStore.d.ts.map +0 -1
- package/lib/stores/websocketStore.d.ts.map +0 -1
- package/lib/tests/actionTestScenarios.d.ts +0 -20
- package/lib/tests/actionTestScenarios.d.ts.map +0 -1
- package/lib/tests/actionTestScenarios.js +0 -851
- package/lib/tests/testGraphQLServer.d.ts +0 -22
- package/lib/tests/testGraphQLServer.d.ts.map +0 -1
- package/lib/tests/testGraphQLServer.js +0 -197
- package/lib/tests/testGraphQLServerSimple.d.ts +0 -3
- package/lib/tests/testGraphQLServerSimple.d.ts.map +0 -1
- package/lib/tests/testGraphQLServerSimple.js +0 -52
- package/lib/types/apps.types.d.ts.map +0 -1
- package/lib/types/common.types.d.ts.map +0 -1
- package/lib/types/conversations.types.d.ts.map +0 -1
- package/lib/types/crm.types.d.ts.map +0 -1
- package/lib/types/edges.types.d.ts.map +0 -1
- package/lib/types/groups.types.d.ts.map +0 -1
- package/lib/types/index.d.ts.map +0 -1
- package/lib/types/subscriptions.types.d.ts.map +0 -1
- package/lib/types/videos.types.d.ts.map +0 -1
- package/lib/utils/MetropolisProvider.d.ts.map +0 -1
- package/lib/utils/MetropolisProvider.js +0 -31
- package/lib/utils/actionFactory.d.ts.map +0 -1
- package/lib/utils/api.d.ts.map +0 -1
- package/lib/utils/app.d.ts.map +0 -1
- package/lib/utils/baseActionFactory.d.ts.map +0 -1
- package/lib/utils/configUtils.d.ts.map +0 -1
- package/lib/utils/dateUtils.d.ts.map +0 -1
- package/lib/utils/file.d.ts.map +0 -1
- package/lib/utils/i18n.d.ts.map +0 -1
- package/lib/utils/index.d.ts.map +0 -1
- package/lib/utils/location.d.ts.map +0 -1
- package/lib/utils/permissionUtils.d.ts.map +0 -1
- package/lib/utils/requestCache.d.ts.map +0 -1
- package/lib/utils/session.d.ts.map +0 -1
- package/lib/utils/useConversationTyping.d.ts.map +0 -1
- package/lib/utils/useMetropolis.d.ts.map +0 -1
- package/lib/utils/useTranslations.d.ts.map +0 -1
- package/lib/utils/validatorFactory.d.ts.map +0 -1
|
@@ -35,10 +35,9 @@ export interface PersonaType {
|
|
|
35
35
|
[key: string]: any;
|
|
36
36
|
}
|
|
37
37
|
export declare class PersonaValidationError extends Error {
|
|
38
|
-
field?: string
|
|
39
|
-
constructor(message: string, field?: string
|
|
38
|
+
field?: string;
|
|
39
|
+
constructor(message: string, field?: string);
|
|
40
40
|
}
|
|
41
41
|
export declare const validatePersonaInput: (persona: unknown) => PersonaType;
|
|
42
42
|
export declare const formatPersonaOutput: (persona: PersonaType) => PersonaType;
|
|
43
43
|
export declare const parsePersona: (persona: PersonaType) => PersonaType;
|
|
44
|
-
//# sourceMappingURL=personaAdapter.d.ts.map
|
|
@@ -24,10 +24,9 @@ export interface PostType {
|
|
|
24
24
|
[key: string]: any;
|
|
25
25
|
}
|
|
26
26
|
export declare class PostValidationError extends Error {
|
|
27
|
-
field?: string
|
|
28
|
-
constructor(message: string, field?: string
|
|
27
|
+
field?: string;
|
|
28
|
+
constructor(message: string, field?: string);
|
|
29
29
|
}
|
|
30
30
|
export declare const validatePostInput: (post: unknown) => PostType;
|
|
31
31
|
export declare const formatPostOutput: (post: PostType) => PostType;
|
|
32
32
|
export declare const parsePost: (post: PostType) => PostType;
|
|
33
|
-
//# sourceMappingURL=postAdapter.d.ts.map
|
|
@@ -14,10 +14,9 @@ export interface ReactionType {
|
|
|
14
14
|
[key: string]: any;
|
|
15
15
|
}
|
|
16
16
|
export declare class ReactionValidationError extends Error {
|
|
17
|
-
field?: string
|
|
18
|
-
constructor(message: string, field?: string
|
|
17
|
+
field?: string;
|
|
18
|
+
constructor(message: string, field?: string);
|
|
19
19
|
}
|
|
20
20
|
export declare const validateReactionInput: (reaction: unknown) => ReactionType;
|
|
21
21
|
export declare const formatReactionOutput: (reaction: ReactionType) => ReactionType;
|
|
22
22
|
export declare const parseReaction: (reaction: ReactionType) => ReactionType;
|
|
23
|
-
//# sourceMappingURL=reactionAdapter.d.ts.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export declare class ReaktorValidationError extends Error {
|
|
2
|
-
field?: string
|
|
3
|
-
constructor(message: string, field?: string
|
|
2
|
+
field?: string;
|
|
3
|
+
constructor(message: string, field?: string);
|
|
4
4
|
}
|
|
5
5
|
export declare const validateReaktorContent: (content?: string, length?: number) => string | undefined;
|
|
6
6
|
export declare const validateReaktorDate: (date?: number) => number | undefined;
|
|
@@ -14,4 +14,3 @@ export declare const parseReaktorItemId: (itemId?: string) => string | undefined
|
|
|
14
14
|
export declare const parseReaktorName: (name?: string) => string | undefined;
|
|
15
15
|
export declare const parseReaktorType: (type?: string) => string | undefined;
|
|
16
16
|
export declare const parseReaktorUrl: (url?: string) => string | undefined;
|
|
17
|
-
//# sourceMappingURL=reaktorAdapter.d.ts.map
|
|
@@ -15,10 +15,9 @@ export interface SessionType {
|
|
|
15
15
|
[key: string]: any;
|
|
16
16
|
}
|
|
17
17
|
export declare class SessionValidationError extends Error {
|
|
18
|
-
field?: string
|
|
19
|
-
constructor(message: string, field?: string
|
|
18
|
+
field?: string;
|
|
19
|
+
constructor(message: string, field?: string);
|
|
20
20
|
}
|
|
21
21
|
export declare const validateSessionInput: (session: unknown) => SessionType;
|
|
22
22
|
export declare const formatSessionOutput: (session: SessionType) => SessionType;
|
|
23
23
|
export declare const parseSession: (session: SessionType) => SessionType;
|
|
24
|
-
//# sourceMappingURL=sessionAdapter.d.ts.map
|
|
@@ -11,11 +11,9 @@ export interface TagType {
|
|
|
11
11
|
[key: string]: any;
|
|
12
12
|
}
|
|
13
13
|
export declare class TagValidationError extends Error {
|
|
14
|
-
field?: string
|
|
15
|
-
constructor(message: string, field?: string
|
|
14
|
+
field?: string;
|
|
15
|
+
constructor(message: string, field?: string);
|
|
16
16
|
}
|
|
17
17
|
export declare const validateTagInput: (tag: unknown) => TagType;
|
|
18
18
|
export declare const formatTagOutput: (tag: TagType) => TagType;
|
|
19
19
|
export declare const parseTag: (tag: TagType) => TagType;
|
|
20
|
-
export declare const parseTagLegacy: (tag: TagType) => TagType;
|
|
21
|
-
//# sourceMappingURL=tagAdapter.d.ts.map
|
|
@@ -93,6 +93,5 @@ const performTagTransformation = (tag)=>{
|
|
|
93
93
|
}
|
|
94
94
|
return result;
|
|
95
95
|
};
|
|
96
|
-
export const parseTagLegacy = (tag)=>parseTag(tag);
|
|
97
96
|
|
|
98
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L21ldHJvcG9saXNqcy9zcmMvYWRhcHRlcnMvdGFnQWRhcHRlci90YWdBZGFwdGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHBhcnNlQXJhbmdvSWQsIHBhcnNlSWQsIHBhcnNlU3RyaW5nIH0gZnJvbSAnQG5sYWJzL3V0aWxzJztcbmltcG9ydCB7IHogfSBmcm9tICd6b2QnO1xuXG5pbXBvcnQgeyBwYXJzZURvY3VtZW50LCByZW1vdmVFbXB0eUtleXMgfSBmcm9tICcuLi9hcmFuZ29BZGFwdGVyL2FyYW5nb0FkYXB0ZXIuanMnO1xuaW1wb3J0IHsgcGFyc2VSZWFrdG9yQ29udGVudCwgcGFyc2VSZWFrdG9yVHlwZSB9IGZyb20gJy4uL3JlYWt0b3JBZGFwdGVyL3JlYWt0b3JBZGFwdGVyLmpzJztcblxuZXhwb3J0IGludGVyZmFjZSBUYWdUeXBlIHtcbiAgX2lkPzogc3RyaW5nO1xuICBfa2V5Pzogc3RyaW5nO1xuICBjYXRlZ29yeT86IHN0cmluZztcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIGlkPzogc3RyaW5nO1xuICBuYW1lPzogc3RyaW5nO1xuICB0YWdCeT86IHN0cmluZztcbiAgdGFnSWQ/OiBzdHJpbmc7XG4gIHVzZXJJZD86IHN0cmluZztcbiAgW2tleTogc3RyaW5nXTogYW55O1xufVxuXG5leHBvcnQgY2xhc3MgVGFnVmFsaWRhdGlvbkVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcsIHB1YmxpYyBmaWVsZD86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICAgIHRoaXMubmFtZSA9ICdUYWdWYWxpZGF0aW9uRXJyb3InO1xuICB9XG59XG5cbmNvbnN0IFRhZ0lucHV0U2NoZW1hID0gei5vYmplY3Qoe1xuICBfaWQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgX2tleTogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBjYXRlZ29yeTogei5zdHJpbmcoKS5tYXgoMTYwKS5vcHRpb25hbCgpLFxuICBkZXNjcmlwdGlvbjogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBpZDogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBuYW1lOiB6LnN0cmluZygpLm1heCgxNjApLm9wdGlvbmFsKCksXG4gIHRhZ0J5OiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIHRhZ0lkOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIHVzZXJJZDogei5zdHJpbmcoKS5vcHRpb25hbCgpXG59KS5sb29zZSgpO1xuXG5leHBvcnQgY29uc3QgdmFsaWRhdGVUYWdJbnB1dCA9ICh0YWc6IHVua25vd24pOiBUYWdUeXBlID0+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCB2YWxpZGF0ZWQgPSBUYWdJbnB1dFNjaGVtYS5wYXJzZSh0YWcpO1xuICAgIHJldHVybiB2YWxpZGF0ZWQgYXMgVGFnVHlwZTtcbiAgfSBjYXRjaChlcnJvcikge1xuICAgIGlmKGVycm9yIGluc3RhbmNlb2Ygei5ab2RFcnJvcikge1xuICAgICAgY29uc3QgZmllbGRFcnJvcnMgPSBlcnJvci5pc3N1ZXMubWFwKChlKSA9PiBgJHtlLnBhdGguam9pbignLicpfTogJHtlLm1lc3NhZ2V9YCkuam9pbignLCAnKTtcbiAgICAgIHRocm93IG5ldyBUYWdWYWxpZGF0aW9uRXJyb3IoYFRhZyB2YWxpZGF0aW9uIGZhaWxlZDogJHtmaWVsZEVycm9yc31gKTtcbiAgICB9XG4gICAgdGhyb3cgZXJyb3I7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBmb3JtYXRUYWdPdXRwdXQgPSAodGFnOiBUYWdUeXBlKTogVGFnVHlwZSA9PiB0YWc7XG5cbmV4cG9ydCBjb25zdCBwYXJzZVRhZyA9ICh0YWc6IFRhZ1R5cGUpOiBUYWdUeXBlID0+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCBwYXJzZWQgPSBwZXJmb3JtVGFnVHJhbnNmb3JtYXRpb24odGFnKTtcbiAgICByZXR1cm4gcGFyc2VkO1xuICB9IGNhdGNoKGVycm9yKSB7XG4gICAgaWYoZXJyb3IgaW5zdGFuY2VvZiBUYWdWYWxpZGF0aW9uRXJyb3IpIHtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH1cbiAgICB0aHJvdyBuZXcgVGFnVmFsaWRhdGlvbkVycm9yKGBUYWcgcGFyc2luZyBmYWlsZWQ6ICR7ZXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGVycm9yLm1lc3NhZ2UgOiAnVW5rbm93biBlcnJvcid9YCk7XG4gIH1cbn07XG5cbmNvbnN0IHBlcmZvcm1UYWdUcmFuc2Zvcm1hdGlvbiA9ICh0YWc6IFRhZ1R5cGUpOiBUYWdUeXBlID0+
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L21ldHJvcG9saXNqcy9zcmMvYWRhcHRlcnMvdGFnQWRhcHRlci90YWdBZGFwdGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHBhcnNlQXJhbmdvSWQsIHBhcnNlSWQsIHBhcnNlU3RyaW5nIH0gZnJvbSAnQG5sYWJzL3V0aWxzJztcbmltcG9ydCB7IHogfSBmcm9tICd6b2QnO1xuXG5pbXBvcnQgeyBwYXJzZURvY3VtZW50LCByZW1vdmVFbXB0eUtleXMgfSBmcm9tICcuLi9hcmFuZ29BZGFwdGVyL2FyYW5nb0FkYXB0ZXIuanMnO1xuaW1wb3J0IHsgcGFyc2VSZWFrdG9yQ29udGVudCwgcGFyc2VSZWFrdG9yVHlwZSB9IGZyb20gJy4uL3JlYWt0b3JBZGFwdGVyL3JlYWt0b3JBZGFwdGVyLmpzJztcblxuZXhwb3J0IGludGVyZmFjZSBUYWdUeXBlIHtcbiAgX2lkPzogc3RyaW5nO1xuICBfa2V5Pzogc3RyaW5nO1xuICBjYXRlZ29yeT86IHN0cmluZztcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIGlkPzogc3RyaW5nO1xuICBuYW1lPzogc3RyaW5nO1xuICB0YWdCeT86IHN0cmluZztcbiAgdGFnSWQ/OiBzdHJpbmc7XG4gIHVzZXJJZD86IHN0cmluZztcbiAgW2tleTogc3RyaW5nXTogYW55O1xufVxuXG5leHBvcnQgY2xhc3MgVGFnVmFsaWRhdGlvbkVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcsIHB1YmxpYyBmaWVsZD86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICAgIHRoaXMubmFtZSA9ICdUYWdWYWxpZGF0aW9uRXJyb3InO1xuICB9XG59XG5cbmNvbnN0IFRhZ0lucHV0U2NoZW1hID0gei5vYmplY3Qoe1xuICBfaWQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgX2tleTogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBjYXRlZ29yeTogei5zdHJpbmcoKS5tYXgoMTYwKS5vcHRpb25hbCgpLFxuICBkZXNjcmlwdGlvbjogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBpZDogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBuYW1lOiB6LnN0cmluZygpLm1heCgxNjApLm9wdGlvbmFsKCksXG4gIHRhZ0J5OiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIHRhZ0lkOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIHVzZXJJZDogei5zdHJpbmcoKS5vcHRpb25hbCgpXG59KS5sb29zZSgpO1xuXG5leHBvcnQgY29uc3QgdmFsaWRhdGVUYWdJbnB1dCA9ICh0YWc6IHVua25vd24pOiBUYWdUeXBlID0+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCB2YWxpZGF0ZWQgPSBUYWdJbnB1dFNjaGVtYS5wYXJzZSh0YWcpO1xuICAgIHJldHVybiB2YWxpZGF0ZWQgYXMgVGFnVHlwZTtcbiAgfSBjYXRjaChlcnJvcikge1xuICAgIGlmKGVycm9yIGluc3RhbmNlb2Ygei5ab2RFcnJvcikge1xuICAgICAgY29uc3QgZmllbGRFcnJvcnMgPSBlcnJvci5pc3N1ZXMubWFwKChlKSA9PiBgJHtlLnBhdGguam9pbignLicpfTogJHtlLm1lc3NhZ2V9YCkuam9pbignLCAnKTtcbiAgICAgIHRocm93IG5ldyBUYWdWYWxpZGF0aW9uRXJyb3IoYFRhZyB2YWxpZGF0aW9uIGZhaWxlZDogJHtmaWVsZEVycm9yc31gKTtcbiAgICB9XG4gICAgdGhyb3cgZXJyb3I7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBmb3JtYXRUYWdPdXRwdXQgPSAodGFnOiBUYWdUeXBlKTogVGFnVHlwZSA9PiB0YWc7XG5cbmV4cG9ydCBjb25zdCBwYXJzZVRhZyA9ICh0YWc6IFRhZ1R5cGUpOiBUYWdUeXBlID0+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCBwYXJzZWQgPSBwZXJmb3JtVGFnVHJhbnNmb3JtYXRpb24odGFnKTtcbiAgICByZXR1cm4gcGFyc2VkO1xuICB9IGNhdGNoKGVycm9yKSB7XG4gICAgaWYoZXJyb3IgaW5zdGFuY2VvZiBUYWdWYWxpZGF0aW9uRXJyb3IpIHtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH1cbiAgICB0aHJvdyBuZXcgVGFnVmFsaWRhdGlvbkVycm9yKGBUYWcgcGFyc2luZyBmYWlsZWQ6ICR7ZXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGVycm9yLm1lc3NhZ2UgOiAnVW5rbm93biBlcnJvcid9YCk7XG4gIH1cbn07XG5cbmNvbnN0IHBlcmZvcm1UYWdUcmFuc2Zvcm1hdGlvbiA9ICh0YWc6IFRhZ1R5cGUpOiBUYWdUeXBlID0+IHtcbiAgY29uc3Qge1xuICAgIF9pZCxcbiAgICBfa2V5LFxuICAgIGNhdGVnb3J5LFxuICAgIGRlc2NyaXB0aW9uLFxuICAgIGlkLFxuICAgIG5hbWUsXG4gICAgdGFnQnksXG4gICAgdGFnSWQsXG4gICAgdXNlcklkXG4gIH0gPSB0YWc7XG5cbiAgY29uc3QgdHJhbnNmb3JtZWQgPSB7XG4gICAgLi4ucGFyc2VEb2N1bWVudCh0YWcpLFxuICAgIC4uLihjYXRlZ29yeSAmJiB7Y2F0ZWdvcnk6IHBhcnNlUmVha3RvclR5cGUoY2F0ZWdvcnkpfSksXG4gICAgLi4uKGRlc2NyaXB0aW9uICYmIHtkZXNjcmlwdGlvbjogcGFyc2VSZWFrdG9yQ29udGVudChkZXNjcmlwdGlvbil9KSxcbiAgICAuLi4oKF9pZCB8fCBpZCkgJiYge2lkOiBwYXJzZUFyYW5nb0lkKF9pZCB8fCBpZCB8fCAnJyl9KSxcbiAgICAuLi4oKF9rZXkgfHwgdGFnSWQpICYmIHt0YWdJZDogcGFyc2VJZChfa2V5IHx8IHRhZ0lkIHx8ICcnKX0pLFxuICAgIC4uLihuYW1lICYmIHtuYW1lOiBwYXJzZVN0cmluZyhuYW1lLCAxNjApfSksXG4gICAgLi4uKHRhZ0J5ICYmIHt0YWdCeTogcGFyc2VJZCh0YWdCeSl9KSxcbiAgICAuLi4odXNlcklkICYmIHt1c2VySWQ6IHBhcnNlSWQodXNlcklkKX0pXG4gIH07XG5cbiAgY29uc3QgcmVzdWx0ID0gcmVtb3ZlRW1wdHlLZXlzKHRyYW5zZm9ybWVkKTtcblxuICBpZih0YWcuX2lkKSB7XG4gICAgcmVzdWx0LmlkID0gdGFnLl9pZDtcbiAgICByZXN1bHQuX2lkID0gdGFnLl9pZDtcbiAgfSBlbHNlIGlmKHRhZy5pZCAmJiAhcmVzdWx0LmlkKSB7XG4gICAgcmVzdWx0LmlkID0gdGFnLmlkO1xuICAgIHJlc3VsdC5faWQgPSB0YWcuaWQ7XG4gIH1cblxuICBpZih0YWcuX2tleSkge1xuICAgIHJlc3VsdC50YWdJZCA9IHRhZy5fa2V5O1xuICAgIHJlc3VsdC5fa2V5ID0gdGFnLl9rZXk7XG4gIH0gZWxzZSBpZih0YWcudGFnSWQgJiYgIXJlc3VsdC50YWdJZCkge1xuICAgIHJlc3VsdC50YWdJZCA9IHRhZy50YWdJZDtcbiAgICByZXN1bHQuX2tleSA9IHRhZy50YWdJZDtcbiAgfVxuXG4gIGlmKHRhZy50YWdJZCAmJiAhcmVzdWx0Ll9rZXkpIHtcbiAgICByZXN1bHQuX2tleSA9IHRhZy50YWdJZDtcbiAgfVxuXG4gIGlmKHRhZy5pZCAmJiAhcmVzdWx0Ll9pZCkge1xuICAgIHJlc3VsdC5faWQgPSB0YWcuaWQ7XG4gIH1cblxuICByZXR1cm4gcmVzdWx0O1xufTtcbiJdLCJuYW1lcyI6WyJwYXJzZUFyYW5nb0lkIiwicGFyc2VJZCIsInBhcnNlU3RyaW5nIiwieiIsInBhcnNlRG9jdW1lbnQiLCJyZW1vdmVFbXB0eUtleXMiLCJwYXJzZVJlYWt0b3JDb250ZW50IiwicGFyc2VSZWFrdG9yVHlwZSIsIlRhZ1ZhbGlkYXRpb25FcnJvciIsIkVycm9yIiwibWVzc2FnZSIsImZpZWxkIiwibmFtZSIsIlRhZ0lucHV0U2NoZW1hIiwib2JqZWN0IiwiX2lkIiwic3RyaW5nIiwib3B0aW9uYWwiLCJfa2V5IiwiY2F0ZWdvcnkiLCJtYXgiLCJkZXNjcmlwdGlvbiIsImlkIiwidGFnQnkiLCJ0YWdJZCIsInVzZXJJZCIsImxvb3NlIiwidmFsaWRhdGVUYWdJbnB1dCIsInRhZyIsInZhbGlkYXRlZCIsInBhcnNlIiwiZXJyb3IiLCJab2RFcnJvciIsImZpZWxkRXJyb3JzIiwiaXNzdWVzIiwibWFwIiwiZSIsInBhdGgiLCJqb2luIiwiZm9ybWF0VGFnT3V0cHV0IiwicGFyc2VUYWciLCJwYXJzZWQiLCJwZXJmb3JtVGFnVHJhbnNmb3JtYXRpb24iLCJ0cmFuc2Zvcm1lZCIsInJlc3VsdCJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsYUFBYSxFQUFFQyxPQUFPLEVBQUVDLFdBQVcsUUFBUSxlQUFlO0FBQ25FLFNBQVNDLENBQUMsUUFBUSxNQUFNO0FBRXhCLFNBQVNDLGFBQWEsRUFBRUMsZUFBZSxRQUFRLG9DQUFvQztBQUNuRixTQUFTQyxtQkFBbUIsRUFBRUMsZ0JBQWdCLFFBQVEsc0NBQXNDO0FBZTVGLE9BQU8sTUFBTUMsMkJBQTJCQzs7SUFDdEMsWUFBWUMsT0FBZSxFQUFFLEFBQU9DLEtBQWMsQ0FBRTtRQUNsRCxLQUFLLENBQUNELGVBRDRCQyxRQUFBQTtRQUVsQyxJQUFJLENBQUNDLElBQUksR0FBRztJQUNkO0FBQ0Y7QUFFQSxNQUFNQyxpQkFBaUJWLEVBQUVXLE1BQU0sQ0FBQztJQUM5QkMsS0FBS1osRUFBRWEsTUFBTSxHQUFHQyxRQUFRO0lBQ3hCQyxNQUFNZixFQUFFYSxNQUFNLEdBQUdDLFFBQVE7SUFDekJFLFVBQVVoQixFQUFFYSxNQUFNLEdBQUdJLEdBQUcsQ0FBQyxLQUFLSCxRQUFRO0lBQ3RDSSxhQUFhbEIsRUFBRWEsTUFBTSxHQUFHQyxRQUFRO0lBQ2hDSyxJQUFJbkIsRUFBRWEsTUFBTSxHQUFHQyxRQUFRO0lBQ3ZCTCxNQUFNVCxFQUFFYSxNQUFNLEdBQUdJLEdBQUcsQ0FBQyxLQUFLSCxRQUFRO0lBQ2xDTSxPQUFPcEIsRUFBRWEsTUFBTSxHQUFHQyxRQUFRO0lBQzFCTyxPQUFPckIsRUFBRWEsTUFBTSxHQUFHQyxRQUFRO0lBQzFCUSxRQUFRdEIsRUFBRWEsTUFBTSxHQUFHQyxRQUFRO0FBQzdCLEdBQUdTLEtBQUs7QUFFUixPQUFPLE1BQU1DLG1CQUFtQixDQUFD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
|
|
@@ -12,10 +12,9 @@ export interface TranslationInputType {
|
|
|
12
12
|
readonly namespace?: string;
|
|
13
13
|
}
|
|
14
14
|
export declare class TranslationValidationError extends Error {
|
|
15
|
-
field?: string
|
|
16
|
-
constructor(message: string, field?: string
|
|
15
|
+
field?: string;
|
|
16
|
+
constructor(message: string, field?: string);
|
|
17
17
|
}
|
|
18
18
|
export declare const parseTranslation: (translation: TranslationType) => TranslationType;
|
|
19
19
|
export declare const parseTranslationInput: (translation: TranslationInputType) => TranslationInputType;
|
|
20
20
|
export declare const validateTranslationInput: (input: unknown) => TranslationInputType;
|
|
21
|
-
//# sourceMappingURL=translationAdapter.d.ts.map
|
|
@@ -53,8 +53,8 @@ export interface User {
|
|
|
53
53
|
zip?: string;
|
|
54
54
|
}
|
|
55
55
|
export declare class UserValidationError extends Error {
|
|
56
|
-
field?: string
|
|
57
|
-
constructor(message: string, field?: string
|
|
56
|
+
field?: string;
|
|
57
|
+
constructor(message: string, field?: string);
|
|
58
58
|
}
|
|
59
59
|
declare const userCache: Map<string, User>;
|
|
60
60
|
export declare const validateUserInput: (user: unknown) => User;
|
|
@@ -63,5 +63,3 @@ export declare const parseUser: (user: User) => User;
|
|
|
63
63
|
export declare const clearUserCache: () => void;
|
|
64
64
|
export declare const getUserCacheSize: () => number;
|
|
65
65
|
export { userCache };
|
|
66
|
-
export declare const parseUserLegacy: (user: User) => User;
|
|
67
|
-
//# sourceMappingURL=userAdapter.d.ts.map
|
|
@@ -297,6 +297,5 @@ export const clearUserCache = ()=>{
|
|
|
297
297
|
};
|
|
298
298
|
export const getUserCacheSize = ()=>userCache.size;
|
|
299
299
|
export { userCache };
|
|
300
|
-
export const parseUserLegacy = (user)=>parseUser(user);
|
|
301
300
|
|
|
302
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L21ldHJvcG9saXNqcy9zcmMvYWRhcHRlcnMvdXNlckFkYXB0ZXIvdXNlckFkYXB0ZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtwYXJzZUFyYW5nb0lkLCBwYXJzZUNoYXIsIHBhcnNlRW1haWwsIHBhcnNlSWQsIHBhcnNlTnVtLCBwYXJzZVN0cmluZywgcGFyc2VWYXJDaGFyfSBmcm9tICdAbmxhYnMvdXRpbHMnO1xuaW1wb3J0IHt6fSBmcm9tICd6b2QnO1xuXG5pbXBvcnQge3BhcnNlRG9jdW1lbnQsIHJlbW92ZUVtcHR5S2V5c30gZnJvbSAnLi4vYXJhbmdvQWRhcHRlci9hcmFuZ29BZGFwdGVyLmpzJztcbmltcG9ydCB7cGFyc2VSZWFrdG9yRGF0ZSwgcGFyc2VSZWFrdG9ySXRlbUlkLCBwYXJzZVJlYWt0b3JOYW1lLCBwYXJzZVJlYWt0b3JUeXBlfSBmcm9tICcuLi9yZWFrdG9yQWRhcHRlci9yZWFrdG9yQWRhcHRlci5qcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVXNlciB7XG4gIFtrZXk6IHN0cmluZ106IGFueTtcbiAgX2lkPzogc3RyaW5nO1xuICBfa2V5Pzogc3RyaW5nO1xuICBhY3RpdmU/OiBib29sZWFuO1xuICBhZGRlZD86IG51bWJlcjtcbiAgYmFua0lkPzogc3RyaW5nO1xuICBjaXR5Pzogc3RyaW5nO1xuICBjb3VudHJ5Pzogc3RyaW5nO1xuICBjdXJyZW5jeT86IHN0cmluZztcbiAgZGV2aWNlVG9rZW4/OiBzdHJpbmc7XG4gIGRvYj86IG51bWJlcjtcbiAgYmlydGhkYXRlPzogbnVtYmVyO1xuICBlbWFpbD86IHN0cmluZztcbiAgZmlyc3ROYW1lPzogc3RyaW5nO1xuICBnZW5kZXI/OiBzdHJpbmc7XG4gIGlkPzogc3RyaW5nO1xuICBpbWFnZUlkPzogc3RyaW5nO1xuICBsYXN0TmFtZT86IHN0cmluZztcbiAgbGFzdEFjdGl2ZT86IG51bWJlcjtcbiAgbG9jYWxlPzogc3RyaW5nO1xuICBtYWlsaW5nTGlzdD86IGJvb2xlYW47XG4gIG1vZGlmaWVkPzogbnVtYmVyO1xuICBuYW1lPzogc3RyaW5nO1xuICBwYXNzd29yZD86IHN0cmluZztcbiAgcGhvbmU/OiBzdHJpbmc7XG4gIHBsYW5FeHBpcmVzPzogbnVtYmVyO1xuICBwbGFuSWQ/OiBzdHJpbmc7XG4gIHBsYW5TdGF0dXM/OiBzdHJpbmc7XG4gIHBsYW5TdWJzY3JpcHRpb25JZD86IHN0cmluZztcbiAgc2FsdD86IHN0cmluZztcbiAgc3RhdGU/OiBzdHJpbmc7XG4gIHN0cmVldDE/OiBzdHJpbmc7XG4gIHN0cmVldDI/OiBzdHJpbmc7XG4gIHN0cmlwZUFjY291bnRJZD86IHN0cmluZztcbiAgc3RyaXBlQ2FyZEJyYW5kPzogc3RyaW5nO1xuICBzdHJpcGVDYXJkSWQ/OiBzdHJpbmc7XG4gIHN0cmlwZUNhcmRMYXN0ND86IHN0cmluZztcbiAgc3RyaXBlQ3VzdG9tZXJJZD86IHN0cmluZztcbiAgdGltZXpvbmU/OiBzdHJpbmc7XG4gIHRodW1iVXJsPzogc3RyaW5nO1xuICB0eXBlPzogc3RyaW5nO1xuICB1cGRhdGVkPzogbnVtYmVyO1xuICB1c2VyQWNjZXNzPzogbnVtYmVyO1xuICB1c2VySWQ/OiBzdHJpbmc7XG4gIHVzZXJuYW1lPzogc3RyaW5nO1xuICB2ZXJpZmllZEVtYWlsPzogYm9vbGVhbjtcbiAgdmVyaWZpZWRFbWFpbENvZGU/OiBudW1iZXI7XG4gIHZlcmlmaWVkRW1haWxFeHBpcmVzPzogbnVtYmVyO1xuICB2ZXJpZmllZFBob25lPzogYm9vbGVhbjtcbiAgdmVyaWZpZWRQaG9uZUV4cGlyZXM/OiBudW1iZXI7XG4gIHZlcmlmaWVkU21zQ29kZT86IG51bWJlcjtcbiAgemlwPzogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgVXNlclZhbGlkYXRpb25FcnJvciBleHRlbmRzIEVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nLCBwdWJsaWMgZmllbGQ/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgICB0aGlzLm5hbWUgPSAnVXNlclZhbGlkYXRpb25FcnJvcic7XG4gIH1cbn1cblxuY29uc3QgVXNlcklucHV0U2NoZW1hID0gei5vYmplY3Qoe1xuICBfaWQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgX2tleTogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBhY3RpdmU6IHouYm9vbGVhbigpLm9wdGlvbmFsKCksXG4gIGFkZGVkOiB6Lm51bWJlcigpLm9wdGlvbmFsKCksXG4gIGJhbmtJZDogei5zdHJpbmcoKS5tYXgoMTYwKS5vcHRpb25hbCgpLFxuICBjaXR5OiB6LnN0cmluZygpLm1heCgxNjApLm9wdGlvbmFsKCksXG4gIGNvdW50cnk6IHouc3RyaW5nKCkubGVuZ3RoKDIpLm9wdGlvbmFsKCksXG4gIGN1cnJlbmN5OiB6LnN0cmluZygpLmxlbmd0aCgzKS5vcHRpb25hbCgpLFxuICBkZXZpY2VUb2tlbjogei5zdHJpbmcoKS5tYXgoMTYwKS5vcHRpb25hbCgpLFxuICBkb2I6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgYmlydGhkYXRlOiB6Lm51bWJlcigpLm9wdGlvbmFsKCksXG4gIGVtYWlsOiB6LmVtYWlsKCkub3B0aW9uYWwoKSxcbiAgZmlyc3ROYW1lOiB6LnN0cmluZygpLm1heCgxNjApLm9wdGlvbmFsKCksXG4gIGdlbmRlcjogei5zdHJpbmcoKS5sZW5ndGgoMSkub3B0aW9uYWwoKSxcbiAgaWQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgaW1hZ2VJZDogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBsYXN0TmFtZTogei5zdHJpbmcoKS5tYXgoMTYwKS5vcHRpb25hbCgpLFxuICBsYXN0QWN0aXZlOiB6Lm51bWJlcigpLm9wdGlvbmFsKCksXG4gIGxvY2FsZTogei5zdHJpbmcoKS5tYXgoNSkub3B0aW9uYWwoKSxcbiAgbWFpbGluZ0xpc3Q6IHouYm9vbGVhbigpLm9wdGlvbmFsKCksXG4gIG5hbWU6IHouc3RyaW5nKCkubWF4KDE2MCkub3B0aW9uYWwoKSxcbiAgcGFzc3dvcmQ6IHouc3RyaW5nKCkubWF4KDE2MCkub3B0aW9uYWwoKSxcbiAgcGhvbmU6IHouc3RyaW5nKCkubWF4KDIwKS5vcHRpb25hbCgpLFxuICBwbGFuRXhwaXJlczogei5udW1iZXIoKS5vcHRpb25hbCgpLFxuICBwbGFuSWQ6IHouc3RyaW5nKCkubWF4KDE2MCkub3B0aW9uYWwoKSxcbiAgcGxhblN0YXR1czogei5zdHJpbmcoKS5tYXgoMTYwKS5vcHRpb25hbCgpLFxuICBwbGFuU3Vic2NyaXB0aW9uSWQ6IHouc3RyaW5nKCkubWF4KDE2MCkub3B0aW9uYWwoKSxcbiAgc2FsdDogei5zdHJpbmcoKS5tYXgoMTYwKS5vcHRpb25hbCgpLFxuICBzdGF0ZTogei5zdHJpbmcoKS5sZW5ndGgoMikub3B0aW9uYWwoKSxcbiAgc3RyZWV0MTogei5zdHJpbmcoKS5tYXgoMTYwKS5vcHRpb25hbCgpLFxuICBzdHJlZXQyOiB6LnN0cmluZygpLm1heCgxNjApLm9wdGlvbmFsKCksXG4gIHN0cmlwZUFjY291bnRJZDogei5zdHJpbmcoKS5tYXgoMTYwKS5vcHRpb25hbCgpLFxuICBzdHJpcGVDYXJkQnJhbmQ6IHouc3RyaW5nKCkubWF4KDE2MCkub3B0aW9uYWwoKSxcbiAgc3RyaXBlQ2FyZElkOiB6LnN0cmluZygpLm1heCgxNjApLm9wdGlvbmFsKCksXG4gIHN0cmlwZUNhcmRMYXN0NDogei5zdHJpbmcoKS5tYXgoNCkub3B0aW9uYWwoKSxcbiAgc3RyaXBlQ3VzdG9tZXJJZDogei5zdHJpbmcoKS5tYXgoMTYwKS5vcHRpb25hbCgpLFxuICB0aW1lem9uZTogei5zdHJpbmcoKS5tYXgoMTYwKS5vcHRpb25hbCgpLFxuICB0eXBlOiB6LnN0cmluZygpLm1heCgxNjApLm9wdGlvbmFsKCksXG4gIHVwZGF0ZWQ6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgdXNlckFjY2Vzczogei5udW1iZXIoKS5vcHRpb25hbCgpLFxuICB1c2VySWQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgdXNlcm5hbWU6IHouc3RyaW5nKCkubWF4KDE2MCkub3B0aW9uYWwoKSxcbiAgdmVyaWZpZWRFbWFpbDogei5ib29sZWFuKCkub3B0aW9uYWwoKSxcbiAgdmVyaWZpZWRFbWFpbENvZGU6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgdmVyaWZpZWRFbWFpbEV4cGlyZXM6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgdmVyaWZpZWRQaG9uZTogei5ib29sZWFuKCkub3B0aW9uYWwoKSxcbiAgdmVyaWZpZWRQaG9uZUV4cGlyZXM6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgdmVyaWZpZWRTbXNDb2RlOiB6Lm51bWJlcigpLm9wdGlvbmFsKCksXG4gIHppcDogei5zdHJpbmcoKS5tYXgoMjApLm9wdGlvbmFsKClcbn0pLmxvb3NlKCk7XG5cbmNvbnN0IHZhbGlkYXRlUGhvbmUgPSAocGhvbmU/OiBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQgPT4ge1xuICBpZighcGhvbmUpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IGNsZWFuZWQgPSBwaG9uZS5yZXBsYWNlKC9cXEQvZywgJycpO1xuICBpZihjbGVhbmVkLmxlbmd0aCA8IDEwIHx8IGNsZWFuZWQubGVuZ3RoID4gMTUpIHtcbiAgICB0aHJvdyBuZXcgVXNlclZhbGlkYXRpb25FcnJvcignSW52YWxpZCBwaG9uZSBudW1iZXIgZm9ybWF0JywgJ3Bob25lJyk7XG4gIH1cbiAgcmV0dXJuIGArJHtjbGVhbmVkfWA7XG59O1xuXG5jb25zdCB2YWxpZGF0ZUNvdW50cnkgPSAoY291bnRyeT86IHN0cmluZyk6IHN0cmluZyB8IHVuZGVmaW5lZCA9PiB7XG4gIGlmKCFjb3VudHJ5KSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCB1cHBlciA9IGNvdW50cnkudG9VcHBlckNhc2UoKTtcbiAgaWYoIS9eW0EtWl17Mn0kLy50ZXN0KHVwcGVyKSkge1xuICAgIHRocm93IG5ldyBVc2VyVmFsaWRhdGlvbkVycm9yKCdDb3VudHJ5IG11c3QgYmUgYSAyLWxldHRlciBJU08gY29kZScsICdjb3VudHJ5Jyk7XG4gIH1cbiAgcmV0dXJuIHVwcGVyO1xufTtcblxuY29uc3QgdmFsaWRhdGVTdGF0ZSA9IChzdGF0ZT86IHN0cmluZyk6IHN0cmluZyB8IHVuZGVmaW5lZCA9PiB7XG4gIGlmKCFzdGF0ZSkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgdXBwZXIgPSBzdGF0ZS50b1VwcGVyQ2FzZSgpO1xuICBpZighL15bQS1aXXsyfSQvLnRlc3QodXBwZXIpKSB7XG4gICAgdGhyb3cgbmV3IFVzZXJWYWxpZGF0aW9uRXJyb3IoJ1N0YXRlIG11c3QgYmUgYSAyLWxldHRlciBjb2RlJywgJ3N0YXRlJyk7XG4gIH1cbiAgcmV0dXJuIHVwcGVyO1xufTtcblxuY29uc3QgdmFsaWRhdGVHZW5kZXIgPSAoZ2VuZGVyPzogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkID0+IHtcbiAgaWYoIWdlbmRlcikge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgdXBwZXIgPSBnZW5kZXIudG9VcHBlckNhc2UoKTtcbiAgaWYoIS9eW01GXSQvLnRlc3QodXBwZXIpKSB7XG4gICAgdGhyb3cgbmV3IFVzZXJWYWxpZGF0aW9uRXJyb3IoJ0dlbmRlciBtdXN0IGJlIE0gb3IgRicsICdnZW5kZXInKTtcbiAgfVxuICByZXR1cm4gdXBwZXI7XG59O1xuXG5jb25zdCB1c2VyQ2FjaGUgPSBuZXcgTWFwPHN0cmluZywgVXNlcj4oKTtcblxuZXhwb3J0IGNvbnN0IHZhbGlkYXRlVXNlcklucHV0ID0gKHVzZXI6IHVua25vd24pOiBVc2VyID0+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCB2YWxpZGF0ZWQgPSBVc2VySW5wdXRTY2hlbWEucGFyc2UodXNlcik7XG4gICAgcmV0dXJuIHZhbGlkYXRlZCBhcyBVc2VyO1xuICB9IGNhdGNoKGVycm9yKSB7XG4gICAgaWYoZXJyb3IgaW5zdGFuY2VvZiB6LlpvZEVycm9yKSB7XG4gICAgICBjb25zdCBmaWVsZEVycm9ycyA9IGVycm9yLmlzc3Vlcy5tYXAoKGUpID0+IGAke2UucGF0aC5qb2luKCcuJyl9OiAke2UubWVzc2FnZX1gKS5qb2luKCcsICcpO1xuICAgICAgdGhyb3cgbmV3IFVzZXJWYWxpZGF0aW9uRXJyb3IoYFVzZXIgdmFsaWRhdGlvbiBmYWlsZWQ6ICR7ZmllbGRFcnJvcnN9YCk7XG4gICAgfVxuICAgIHRocm93IGVycm9yO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgZm9ybWF0VXNlck91dHB1dCA9ICh1c2VyOiBVc2VyKTogVXNlciA9PiB7XG4gIGNvbnN0IHtwYXNzd29yZCwgc2FsdCwgdmVyaWZpZWRFbWFpbENvZGUsIHZlcmlmaWVkU21zQ29kZSwgLi4uc2FmZVVzZXJ9ID0gdXNlcjtcbiAgcmV0dXJuIHNhZmVVc2VyO1xufTtcblxuZXhwb3J0IGNvbnN0IHBhcnNlVXNlciA9ICh1c2VyOiBVc2VyKTogVXNlciA9PiB7XG4gIHRyeSB7XG4gICAgY29uc3QgcGFyc2VkID0gcGVyZm9ybVVzZXJUcmFuc2Zvcm1hdGlvbih1c2VyKTtcbiAgICByZXR1cm4gcGFyc2VkO1xuICB9IGNhdGNoKGVycm9yKSB7XG4gICAgaWYoZXJyb3IgaW5zdGFuY2VvZiBVc2VyVmFsaWRhdGlvbkVycm9yKSB7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9XG4gICAgdGhyb3cgbmV3IFVzZXJWYWxpZGF0aW9uRXJyb3IoYFVzZXIgcGFyc2luZyBmYWlsZWQ6ICR7ZXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGVycm9yLm1lc3NhZ2UgOiAnVW5rbm93biBlcnJvcid9YCk7XG4gIH1cbn07XG5cbmNvbnN0IHBlcmZvcm1Vc2VyVHJhbnNmb3JtYXRpb24gPSAodXNlcjogVXNlcik6IFVzZXIgPT4ge1xuICBjb25zdCB7XG4gICAgX2lkLFxuICAgIF9rZXksXG4gICAgYWN0aXZlLFxuICAgIGJhbmtJZCxcbiAgICBjaXR5LFxuICAgIGNvdW50cnksXG4gICAgY3VycmVuY3ksXG4gICAgZGV2aWNlVG9rZW4sXG4gICAgZG9iLFxuICAgIGJpcnRoZGF0ZSxcbiAgICBlbWFpbCxcbiAgICBmaXJzdE5hbWUsXG4gICAgZ2VuZGVyLFxuICAgIGlkLFxuICAgIGltYWdlSWQsXG4gICAgbGFzdE5hbWUsXG4gICAgbGFzdEFjdGl2ZSxcbiAgICBsb2NhbGUsXG4gICAgbWFpbGluZ0xpc3QsXG4gICAgbmFtZSxcbiAgICBwYXNzd29yZCxcbiAgICBwaG9uZSxcbiAgICBwbGFuRXhwaXJlcyxcbiAgICBwbGFuSWQsXG4gICAgcGxhblN0YXR1cyxcbiAgICBwbGFuU3Vic2NyaXB0aW9uSWQsXG4gICAgc2FsdCxcbiAgICBzdGF0ZSxcbiAgICBzdHJlZXQxLFxuICAgIHN0cmVldDIsXG4gICAgc3RyaXBlQWNjb3VudElkLFxuICAgIHN0cmlwZUNhcmRCcmFuZCxcbiAgICBzdHJpcGVDYXJkSWQsXG4gICAgc3RyaXBlQ2FyZExhc3Q0LFxuICAgIHN0cmlwZUN1c3RvbWVySWQsXG4gICAgdGltZXpvbmUsXG4gICAgdHlwZSxcbiAgICB1c2VyQWNjZXNzLFxuICAgIHVzZXJJZCxcbiAgICB1c2VybmFtZSxcbiAgICB2ZXJpZmllZEVtYWlsLFxuICAgIHZlcmlmaWVkRW1haWxDb2RlLFxuICAgIHZlcmlmaWVkRW1haWxFeHBpcmVzLFxuICAgIHZlcmlmaWVkUGhvbmUsXG4gICAgdmVyaWZpZWRQaG9uZUV4cGlyZXMsXG4gICAgdmVyaWZpZWRTbXNDb2RlLFxuICAgIHppcFxuICB9ID0gdXNlcjtcbiAgY29uc3Qgbm9ybWFsaXplZERvYiA9IGJpcnRoZGF0ZSA/PyBkb2I7XG4gIGNvbnN0IG5vcm1hbGl6ZWRGaXJzdCA9IGZpcnN0TmFtZTtcbiAgY29uc3Qgbm9ybWFsaXplZExhc3QgPSBsYXN0TmFtZTtcbiAgY29uc3QgdHJhbnNmb3JtZWQgPSB7XG4gICAgLi4ucGFyc2VEb2N1bWVudCh1c2VyKSxcbiAgICAuLi4oKF9pZCB8fCBpZCB8fCBfa2V5IHx8IHVzZXJJZCkgJiYge2lkOiBwYXJzZUFyYW5nb0lkKF9pZCB8fCBpZCB8fCBgdXNlcnMvJHtfa2V5IHx8IHVzZXJJZH1gKX0pLFxuICAgIC4uLigoX2tleSB8fCB1c2VySWQpICYmIHt1c2VySWQ6IHBhcnNlSWQoX2tleSB8fCB1c2VySWQgfHwgJycpfSksXG4gICAgLi4uKGFjdGl2ZSAhPT0gdW5kZWZpbmVkICYmIHthY3RpdmU6ICEhYWN0aXZlfSksXG4gICAgLi4uKGJhbmtJZCAmJiB7YmFua0lkOiBwYXJzZVZhckNoYXIoYmFua0lkLCAxNjApfSksXG4gICAgLi4uKGNpdHkgJiYge2NpdHk6IHBhcnNlVmFyQ2hhcihjaXR5LCAxNjApfSksXG4gICAgLi4uKGNvdW50cnkgJiYge2NvdW50cnk6IHZhbGlkYXRlQ291bnRyeShjb3VudHJ5KX0pLFxuICAgIC4uLihjdXJyZW5jeSAmJiB7Y3VycmVuY3k6IHBhcnNlQ2hhcihjdXJyZW5jeSwgMykudG9VcHBlckNhc2UoKX0pLFxuICAgIC4uLihkZXZpY2VUb2tlbiAmJiB7ZGV2aWNlVG9rZW46IHBhcnNlVmFyQ2hhcihkZXZpY2VUb2tlbiwgMTYwKX0pLFxuICAgIC4uLihub3JtYWxpemVkRG9iICE9PSB1bmRlZmluZWQgJiYge2JpcnRoZGF0ZTogcGFyc2VSZWFrdG9yRGF0ZShub3JtYWxpemVkRG9iKSwgZG9iOiBwYXJzZVJlYWt0b3JEYXRlKG5vcm1hbGl6ZWREb2IpfSksXG4gICAgLi4uKGVtYWlsICYmIHtlbWFpbDogcGFyc2VFbWFpbChlbWFpbCl9KSxcbiAgICAuLi4obm9ybWFsaXplZEZpcnN0ICYmIHtmaXJzdE5hbWU6IHBhcnNlVmFyQ2hhcihub3JtYWxpemVkRmlyc3QsIDE2MCl9KSxcbiAgICAuLi4oZ2VuZGVyICYmIHtnZW5kZXI6IHZhbGlkYXRlR2VuZGVyKGdlbmRlcil9KSxcbiAgICAuLi4oaW1hZ2VJZCAmJiB7aW1hZ2VJZDogcGFyc2VSZWFrdG9ySXRlbUlkKGltYWdlSWQpfSksXG4gICAgLi4uKG5vcm1hbGl6ZWRMYXN0ICYmIHtsYXN0TmFtZTogcGFyc2VWYXJDaGFyKG5vcm1hbGl6ZWRMYXN0LCAxNjApfSksXG4gICAgLi4uKGxhc3RBY3RpdmUgIT09IHVuZGVmaW5lZCAmJiB7bGFzdEFjdGl2ZTogcGFyc2VSZWFrdG9yRGF0ZShsYXN0QWN0aXZlKX0pLFxuICAgIC4uLihsb2NhbGUgJiYge2xvY2FsZTogcGFyc2VTdHJpbmcobG9jYWxlLCA1KX0pLFxuICAgIC4uLihtYWlsaW5nTGlzdCAhPT0gdW5kZWZpbmVkICYmIHttYWlsaW5nTGlzdDogISFtYWlsaW5nTGlzdH0pLFxuICAgIC4uLihuYW1lICYmIHtuYW1lOiBwYXJzZVJlYWt0b3JOYW1lKG5hbWUpfSksXG4gICAgLi4uKHBhc3N3b3JkICYmIHtwYXNzd29yZDogcGFyc2VWYXJDaGFyKHBhc3N3b3JkLCAxNjApfSksXG4gICAgLi4uKHBob25lICYmIHtwaG9uZTogdmFsaWRhdGVQaG9uZShwaG9uZSl9KSxcbiAgICAuLi4ocGxhbkV4cGlyZXMgIT09IHVuZGVmaW5lZCAmJiB7cGxhbkV4cGlyZXM6IHBhcnNlUmVha3RvckRhdGUocGxhbkV4cGlyZXMpfSksXG4gICAgLi4uKHBsYW5JZCAmJiB7cGxhbklkOiBwYXJzZVZhckNoYXIocGxhbklkLCAxNjApfSksXG4gICAgLi4uKHBsYW5TdGF0dXMgJiYge3BsYW5TdGF0dXM6IHBhcnNlVmFyQ2hhcihwbGFuU3RhdHVzLCAxNjApfSksXG4gICAgLi4uKHBsYW5TdWJzY3JpcHRpb25JZCAmJiB7cGxhblN1YnNjcmlwdGlvbklkOiBwYXJzZVZhckNoYXIocGxhblN1YnNjcmlwdGlvbklkLCAxNjApfSksXG4gICAgLi4uKHNhbHQgJiYge3NhbHQ6IHBhcnNlVmFyQ2hhcihzYWx0LCAxNjApfSksXG4gICAgLi4uKHN0YXRlICYmIHtzdGF0ZTogdmFsaWRhdGVTdGF0ZShzdGF0ZSl9KSxcbiAgICAuLi4oc3RyZWV0MSAmJiB7c3RyZWV0MTogcGFyc2VWYXJDaGFyKHN0cmVldDEsIDE2MCl9KSxcbiAgICAuLi4oc3RyZWV0MiAmJiB7c3RyZWV0MjogcGFyc2VWYXJDaGFyKHN0cmVldDIsIDE2MCl9KSxcbiAgICAuLi4oc3RyaXBlQWNjb3VudElkICYmIHtzdHJpcGVBY2NvdW50SWQ6IHBhcnNlVmFyQ2hhcihzdHJpcGVBY2NvdW50SWQsIDE2MCl9KSxcbiAgICAuLi4oc3RyaXBlQ2FyZEJyYW5kICYmIHtzdHJpcGVDYXJkQnJhbmQ6IHBhcnNlVmFyQ2hhcihzdHJpcGVDYXJkQnJhbmQsIDE2MCl9KSxcbiAgICAuLi4oc3RyaXBlQ2FyZElkICYmIHtzdHJpcGVDYXJkSWQ6IHBhcnNlVmFyQ2hhcihzdHJpcGVDYXJkSWQsIDE2MCl9KSxcbiAgICAuLi4oc3RyaXBlQ2FyZExhc3Q0ICYmIHtzdHJpcGVDYXJkTGFzdDQ6IHBhcnNlVmFyQ2hhcihzdHJpcGVDYXJkTGFzdDQsIDQpfSksXG4gICAgLi4uKHN0cmlwZUN1c3RvbWVySWQgJiYge3N0cmlwZUN1c3RvbWVySWQ6IHBhcnNlVmFyQ2hhcihzdHJpcGVDdXN0b21lcklkLCAxNjApfSksXG4gICAgLi4uKHRpbWV6b25lICYmIHt0aW1lem9uZTogcGFyc2VTdHJpbmcodGltZXpvbmUsIDE2MCl9KSxcbiAgICAuLi4odHlwZSAmJiB7dHlwZTogcGFyc2VSZWFrdG9yVHlwZSh0eXBlKX0pLFxuICAgIC4uLih1c2VyQWNjZXNzICE9PSB1bmRlZmluZWQgJiYge3VzZXJBY2Nlc3M6IHVzZXJBY2Nlc3MgPyBwYXJzZU51bSh1c2VyQWNjZXNzKSA6IDB9KSxcbiAgICAuLi4odXNlcm5hbWUgJiYge3VzZXJuYW1lOiBwYXJzZVZhckNoYXIodXNlcm5hbWUsIDE2MCl9KSxcbiAgICAuLi4odmVyaWZpZWRFbWFpbCAhPT0gdW5kZWZpbmVkICYmIHt2ZXJpZmllZEVtYWlsOiAhIXZlcmlmaWVkRW1haWx9KSxcbiAgICAuLi4odmVyaWZpZWRFbWFpbENvZGUgIT09IHVuZGVmaW5lZCAmJiB7dmVyaWZpZWRFbWFpbENvZGU6IHBhcnNlTnVtKHZlcmlmaWVkRW1haWxDb2RlLCAxMCl9KSxcbiAgICAuLi4odmVyaWZpZWRFbWFpbEV4cGlyZXMgIT09IHVuZGVmaW5lZCAmJiB7dmVyaWZpZWRFbWFpbEV4cGlyZXM6IHBhcnNlTnVtKHZlcmlmaWVkRW1haWxFeHBpcmVzLCAxMCl9KSxcbiAgICAuLi4odmVyaWZpZWRQaG9uZSAhPT0gdW5kZWZpbmVkICYmIHt2ZXJpZmllZFBob25lOiAhIXZlcmlmaWVkUGhvbmV9KSxcbiAgICAuLi4odmVyaWZpZWRQaG9uZUV4cGlyZXMgIT09IHVuZGVmaW5lZCAmJiB7dmVyaWZpZWRQaG9uZUV4cGlyZXM6IHBhcnNlTnVtKHZlcmlmaWVkUGhvbmVFeHBpcmVzLCAxMCl9KSxcbiAgICAuLi4odmVyaWZpZWRTbXNDb2RlICE9PSB1bmRlZmluZWQgJiYge3ZlcmlmaWVkU21zQ29kZTogcGFyc2VOdW0odmVyaWZpZWRTbXNDb2RlLCAxMCl9KSxcbiAgICAuLi4oemlwICYmIHt6aXA6IHBhcnNlVmFyQ2hhcih6aXAsIDIwKX0pXG4gIH07XG5cbiAgY29uc3QgcmVzdWx0ID0gcmVtb3ZlRW1wdHlLZXlzKHRyYW5zZm9ybWVkKTtcblxuICBpZih1c2VyLl9pZCkge1xuICAgIHJlc3VsdC5pZCA9IHVzZXIuX2lkO1xuICAgIHJlc3VsdC5faWQgPSB1c2VyLl9pZDtcbiAgfSBlbHNlIGlmKHVzZXIuaWQgJiYgIXJlc3VsdC5pZCkge1xuICAgIHJlc3VsdC5pZCA9IHVzZXIuaWQ7XG4gICAgcmVzdWx0Ll9pZCA9IHVzZXIuaWQ7XG4gIH1cblxuICBpZih1c2VyLl9rZXkpIHtcbiAgICByZXN1bHQudXNlcklkID0gdXNlci5fa2V5O1xuICAgIHJlc3VsdC5fa2V5ID0gdXNlci5fa2V5O1xuICB9IGVsc2UgaWYodXNlci51c2VySWQgJiYgIXJlc3VsdC51c2VySWQpIHtcbiAgICByZXN1bHQudXNlcklkID0gdXNlci51c2VySWQ7XG4gICAgcmVzdWx0Ll9rZXkgPSB1c2VyLnVzZXJJZDtcbiAgfVxuXG4gIGlmKHVzZXIudXNlcklkICYmICFyZXN1bHQuX2tleSkge1xuICAgIHJlc3VsdC5fa2V5ID0gdXNlci51c2VySWQ7XG4gIH1cblxuICBpZih1c2VyLmlkICYmICFyZXN1bHQuX2lkKSB7XG4gICAgcmVzdWx0Ll9pZCA9IHVzZXIuaWQ7XG4gIH1cblxuICByZXR1cm4gcmVzdWx0O1xufTtcblxuZXhwb3J0IGNvbnN0IGNsZWFyVXNlckNhY2hlID0gKCk6IHZvaWQgPT4ge1xuICB1c2VyQ2FjaGUuY2xlYXIoKTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRVc2VyQ2FjaGVTaXplID0gKCk6IG51bWJlciA9PiB1c2VyQ2FjaGUuc2l6ZTtcblxuZXhwb3J0IHt1c2VyQ2FjaGV9O1xuXG5leHBvcnQgY29uc3QgcGFyc2VVc2VyTGVnYWN5ID0gKHVzZXI6IFVzZXIpOiBVc2VyID0+IHBhcnNlVXNlcih1c2VyKTtcbiJdLCJuYW1lcyI6WyJwYXJzZUFyYW5nb0lkIiwicGFyc2VDaGFyIiwicGFyc2VFbWFpbCIsInBhcnNlSWQiLCJwYXJzZU51bSIsInBhcnNlU3RyaW5nIiwicGFyc2VWYXJDaGFyIiwieiIsInBhcnNlRG9jdW1lbnQiLCJyZW1vdmVFbXB0eUtleXMiLCJwYXJzZVJlYWt0b3JEYXRlIiwicGFyc2VSZWFrdG9ySXRlbUlkIiwicGFyc2VSZWFrdG9yTmFtZSIsInBhcnNlUmVha3RvclR5cGUiLCJVc2VyVmFsaWRhdGlvbkVycm9yIiwiRXJyb3IiLCJtZXNzYWdlIiwiZmllbGQiLCJuYW1lIiwiVXNlcklucHV0U2NoZW1hIiwib2JqZWN0IiwiX2lkIiwic3RyaW5nIiwib3B0aW9uYWwiLCJfa2V5IiwiYWN0aXZlIiwiYm9vbGVhbiIsImFkZGVkIiwibnVtYmVyIiwiYmFua0lkIiwibWF4IiwiY2l0eSIsImNvdW50cnkiLCJsZW5ndGgiLCJjdXJyZW5jeSIsImRldmljZVRva2VuIiwiZG9iIiwiYmlydGhkYXRlIiwiZW1haWwiLCJmaXJzdE5hbWUiLCJnZW5kZXIiLCJpZCIsImltYWdlSWQiLCJsYXN0TmFtZSIsImxhc3RBY3RpdmUiLCJsb2NhbGUiLCJtYWlsaW5nTGlzdCIsInBhc3N3b3JkIiwicGhvbmUiLCJwbGFuRXhwaXJlcyIsInBsYW5JZCIsInBsYW5TdGF0dXMiLCJwbGFuU3Vic2NyaXB0aW9uSWQiLCJzYWx0Iiwic3RhdGUiLCJzdHJlZXQxIiwic3RyZWV0MiIsInN0cmlwZUFjY291bnRJZCIsInN0cmlwZUNhcmRCcmFuZCIsInN0cmlwZUNhcmRJZCIsInN0cmlwZUNhcmRMYXN0NCIsInN0cmlwZUN1c3RvbWVySWQiLCJ0aW1lem9uZSIsInR5cGUiLCJ1cGRhdGVkIiwidXNlckFjY2VzcyIsInVzZXJJZCIsInVzZXJuYW1lIiwidmVyaWZpZWRFbWFpbCIsInZlcmlmaWVkRW1haWxDb2RlIiwidmVyaWZpZWRFbWFpbEV4cGlyZXMiLCJ2ZXJpZmllZFBob25lIiwidmVyaWZpZWRQaG9uZUV4cGlyZXMiLCJ2ZXJpZmllZFNtc0NvZGUiLCJ6aXAiLCJsb29zZSIsInZhbGlkYXRlUGhvbmUiLCJ1bmRlZmluZWQiLCJjbGVhbmVkIiwicmVwbGFjZSIsInZhbGlkYXRlQ291bnRyeSIsInVwcGVyIiwidG9VcHBlckNhc2UiLCJ0ZXN0IiwidmFsaWRhdGVTdGF0ZSIsInZhbGlkYXRlR2VuZGVyIiwidXNlckNhY2hlIiwiTWFwIiwidmFsaWRhdGVVc2VySW5wdXQiLCJ1c2VyIiwidmFsaWRhdGVkIiwicGFyc2UiLCJlcnJvciIsIlpvZEVycm9yIiwiZmllbGRFcnJvcnMiLCJpc3N1ZXMiLCJtYXAiLCJlIiwicGF0aCIsImpvaW4iLCJmb3JtYXRVc2VyT3V0cHV0Iiwic2FmZVVzZXIiLCJwYXJzZVVzZXIiLCJwYXJzZWQiLCJwZXJmb3JtVXNlclRyYW5zZm9ybWF0aW9uIiwibm9ybWFsaXplZERvYiIsIm5vcm1hbGl6ZWRGaXJzdCIsIm5vcm1hbGl6ZWRMYXN0IiwidHJhbnNmb3JtZWQiLCJyZXN1bHQiLCJjbGVhclVzZXJDYWNoZSIsImNsZWFyIiwiZ2V0VXNlckNhY2hlU2l6ZSIsInNpemUiLCJwYXJzZVVzZXJMZWdhY3kiXSwibWFwcGluZ3MiOiJBQUFBLFNBQVFBLGFBQWEs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
|
|
301
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L21ldHJvcG9saXNqcy9zcmMvYWRhcHRlcnMvdXNlckFkYXB0ZXIvdXNlckFkYXB0ZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtwYXJzZUFyYW5nb0lkLCBwYXJzZUNoYXIsIHBhcnNlRW1haWwsIHBhcnNlSWQsIHBhcnNlTnVtLCBwYXJzZVN0cmluZywgcGFyc2VWYXJDaGFyfSBmcm9tICdAbmxhYnMvdXRpbHMnO1xuaW1wb3J0IHt6fSBmcm9tICd6b2QnO1xuXG5pbXBvcnQge3BhcnNlRG9jdW1lbnQsIHJlbW92ZUVtcHR5S2V5c30gZnJvbSAnLi4vYXJhbmdvQWRhcHRlci9hcmFuZ29BZGFwdGVyLmpzJztcbmltcG9ydCB7cGFyc2VSZWFrdG9yRGF0ZSwgcGFyc2VSZWFrdG9ySXRlbUlkLCBwYXJzZVJlYWt0b3JOYW1lLCBwYXJzZVJlYWt0b3JUeXBlfSBmcm9tICcuLi9yZWFrdG9yQWRhcHRlci9yZWFrdG9yQWRhcHRlci5qcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVXNlciB7XG4gIFtrZXk6IHN0cmluZ106IGFueTtcbiAgX2lkPzogc3RyaW5nO1xuICBfa2V5Pzogc3RyaW5nO1xuICBhY3RpdmU/OiBib29sZWFuO1xuICBhZGRlZD86IG51bWJlcjtcbiAgYmFua0lkPzogc3RyaW5nO1xuICBjaXR5Pzogc3RyaW5nO1xuICBjb3VudHJ5Pzogc3RyaW5nO1xuICBjdXJyZW5jeT86IHN0cmluZztcbiAgZGV2aWNlVG9rZW4/OiBzdHJpbmc7XG4gIGRvYj86IG51bWJlcjtcbiAgYmlydGhkYXRlPzogbnVtYmVyO1xuICBlbWFpbD86IHN0cmluZztcbiAgZmlyc3ROYW1lPzogc3RyaW5nO1xuICBnZW5kZXI/OiBzdHJpbmc7XG4gIGlkPzogc3RyaW5nO1xuICBpbWFnZUlkPzogc3RyaW5nO1xuICBsYXN0TmFtZT86IHN0cmluZztcbiAgbGFzdEFjdGl2ZT86IG51bWJlcjtcbiAgbG9jYWxlPzogc3RyaW5nO1xuICBtYWlsaW5nTGlzdD86IGJvb2xlYW47XG4gIG1vZGlmaWVkPzogbnVtYmVyO1xuICBuYW1lPzogc3RyaW5nO1xuICBwYXNzd29yZD86IHN0cmluZztcbiAgcGhvbmU/OiBzdHJpbmc7XG4gIHBsYW5FeHBpcmVzPzogbnVtYmVyO1xuICBwbGFuSWQ/OiBzdHJpbmc7XG4gIHBsYW5TdGF0dXM/OiBzdHJpbmc7XG4gIHBsYW5TdWJzY3JpcHRpb25JZD86IHN0cmluZztcbiAgc2FsdD86IHN0cmluZztcbiAgc3RhdGU/OiBzdHJpbmc7XG4gIHN0cmVldDE/OiBzdHJpbmc7XG4gIHN0cmVldDI/OiBzdHJpbmc7XG4gIHN0cmlwZUFjY291bnRJZD86IHN0cmluZztcbiAgc3RyaXBlQ2FyZEJyYW5kPzogc3RyaW5nO1xuICBzdHJpcGVDYXJkSWQ/OiBzdHJpbmc7XG4gIHN0cmlwZUNhcmRMYXN0ND86IHN0cmluZztcbiAgc3RyaXBlQ3VzdG9tZXJJZD86IHN0cmluZztcbiAgdGltZXpvbmU/OiBzdHJpbmc7XG4gIHRodW1iVXJsPzogc3RyaW5nO1xuICB0eXBlPzogc3RyaW5nO1xuICB1cGRhdGVkPzogbnVtYmVyO1xuICB1c2VyQWNjZXNzPzogbnVtYmVyO1xuICB1c2VySWQ/OiBzdHJpbmc7XG4gIHVzZXJuYW1lPzogc3RyaW5nO1xuICB2ZXJpZmllZEVtYWlsPzogYm9vbGVhbjtcbiAgdmVyaWZpZWRFbWFpbENvZGU/OiBudW1iZXI7XG4gIHZlcmlmaWVkRW1haWxFeHBpcmVzPzogbnVtYmVyO1xuICB2ZXJpZmllZFBob25lPzogYm9vbGVhbjtcbiAgdmVyaWZpZWRQaG9uZUV4cGlyZXM/OiBudW1iZXI7XG4gIHZlcmlmaWVkU21zQ29kZT86IG51bWJlcjtcbiAgemlwPzogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgVXNlclZhbGlkYXRpb25FcnJvciBleHRlbmRzIEVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nLCBwdWJsaWMgZmllbGQ/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgICB0aGlzLm5hbWUgPSAnVXNlclZhbGlkYXRpb25FcnJvcic7XG4gIH1cbn1cblxuY29uc3QgVXNlcklucHV0U2NoZW1hID0gei5vYmplY3Qoe1xuICBfaWQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgX2tleTogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBhY3RpdmU6IHouYm9vbGVhbigpLm9wdGlvbmFsKCksXG4gIGFkZGVkOiB6Lm51bWJlcigpLm9wdGlvbmFsKCksXG4gIGJhbmtJZDogei5zdHJpbmcoKS5tYXgoMTYwKS5vcHRpb25hbCgpLFxuICBjaXR5OiB6LnN0cmluZygpLm1heCgxNjApLm9wdGlvbmFsKCksXG4gIGNvdW50cnk6IHouc3RyaW5nKCkubGVuZ3RoKDIpLm9wdGlvbmFsKCksXG4gIGN1cnJlbmN5OiB6LnN0cmluZygpLmxlbmd0aCgzKS5vcHRpb25hbCgpLFxuICBkZXZpY2VUb2tlbjogei5zdHJpbmcoKS5tYXgoMTYwKS5vcHRpb25hbCgpLFxuICBkb2I6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgYmlydGhkYXRlOiB6Lm51bWJlcigpLm9wdGlvbmFsKCksXG4gIGVtYWlsOiB6LmVtYWlsKCkub3B0aW9uYWwoKSxcbiAgZmlyc3ROYW1lOiB6LnN0cmluZygpLm1heCgxNjApLm9wdGlvbmFsKCksXG4gIGdlbmRlcjogei5zdHJpbmcoKS5sZW5ndGgoMSkub3B0aW9uYWwoKSxcbiAgaWQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgaW1hZ2VJZDogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBsYXN0TmFtZTogei5zdHJpbmcoKS5tYXgoMTYwKS5vcHRpb25hbCgpLFxuICBsYXN0QWN0aXZlOiB6Lm51bWJlcigpLm9wdGlvbmFsKCksXG4gIGxvY2FsZTogei5zdHJpbmcoKS5tYXgoNSkub3B0aW9uYWwoKSxcbiAgbWFpbGluZ0xpc3Q6IHouYm9vbGVhbigpLm9wdGlvbmFsKCksXG4gIG5hbWU6IHouc3RyaW5nKCkubWF4KDE2MCkub3B0aW9uYWwoKSxcbiAgcGFzc3dvcmQ6IHouc3RyaW5nKCkubWF4KDE2MCkub3B0aW9uYWwoKSxcbiAgcGhvbmU6IHouc3RyaW5nKCkubWF4KDIwKS5vcHRpb25hbCgpLFxuICBwbGFuRXhwaXJlczogei5udW1iZXIoKS5vcHRpb25hbCgpLFxuICBwbGFuSWQ6IHouc3RyaW5nKCkubWF4KDE2MCkub3B0aW9uYWwoKSxcbiAgcGxhblN0YXR1czogei5zdHJpbmcoKS5tYXgoMTYwKS5vcHRpb25hbCgpLFxuICBwbGFuU3Vic2NyaXB0aW9uSWQ6IHouc3RyaW5nKCkubWF4KDE2MCkub3B0aW9uYWwoKSxcbiAgc2FsdDogei5zdHJpbmcoKS5tYXgoMTYwKS5vcHRpb25hbCgpLFxuICBzdGF0ZTogei5zdHJpbmcoKS5sZW5ndGgoMikub3B0aW9uYWwoKSxcbiAgc3RyZWV0MTogei5zdHJpbmcoKS5tYXgoMTYwKS5vcHRpb25hbCgpLFxuICBzdHJlZXQyOiB6LnN0cmluZygpLm1heCgxNjApLm9wdGlvbmFsKCksXG4gIHN0cmlwZUFjY291bnRJZDogei5zdHJpbmcoKS5tYXgoMTYwKS5vcHRpb25hbCgpLFxuICBzdHJpcGVDYXJkQnJhbmQ6IHouc3RyaW5nKCkubWF4KDE2MCkub3B0aW9uYWwoKSxcbiAgc3RyaXBlQ2FyZElkOiB6LnN0cmluZygpLm1heCgxNjApLm9wdGlvbmFsKCksXG4gIHN0cmlwZUNhcmRMYXN0NDogei5zdHJpbmcoKS5tYXgoNCkub3B0aW9uYWwoKSxcbiAgc3RyaXBlQ3VzdG9tZXJJZDogei5zdHJpbmcoKS5tYXgoMTYwKS5vcHRpb25hbCgpLFxuICB0aW1lem9uZTogei5zdHJpbmcoKS5tYXgoMTYwKS5vcHRpb25hbCgpLFxuICB0eXBlOiB6LnN0cmluZygpLm1heCgxNjApLm9wdGlvbmFsKCksXG4gIHVwZGF0ZWQ6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgdXNlckFjY2Vzczogei5udW1iZXIoKS5vcHRpb25hbCgpLFxuICB1c2VySWQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgdXNlcm5hbWU6IHouc3RyaW5nKCkubWF4KDE2MCkub3B0aW9uYWwoKSxcbiAgdmVyaWZpZWRFbWFpbDogei5ib29sZWFuKCkub3B0aW9uYWwoKSxcbiAgdmVyaWZpZWRFbWFpbENvZGU6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgdmVyaWZpZWRFbWFpbEV4cGlyZXM6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgdmVyaWZpZWRQaG9uZTogei5ib29sZWFuKCkub3B0aW9uYWwoKSxcbiAgdmVyaWZpZWRQaG9uZUV4cGlyZXM6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgdmVyaWZpZWRTbXNDb2RlOiB6Lm51bWJlcigpLm9wdGlvbmFsKCksXG4gIHppcDogei5zdHJpbmcoKS5tYXgoMjApLm9wdGlvbmFsKClcbn0pLmxvb3NlKCk7XG5cbmNvbnN0IHZhbGlkYXRlUGhvbmUgPSAocGhvbmU/OiBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQgPT4ge1xuICBpZighcGhvbmUpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IGNsZWFuZWQgPSBwaG9uZS5yZXBsYWNlKC9cXEQvZywgJycpO1xuICBpZihjbGVhbmVkLmxlbmd0aCA8IDEwIHx8IGNsZWFuZWQubGVuZ3RoID4gMTUpIHtcbiAgICB0aHJvdyBuZXcgVXNlclZhbGlkYXRpb25FcnJvcignSW52YWxpZCBwaG9uZSBudW1iZXIgZm9ybWF0JywgJ3Bob25lJyk7XG4gIH1cbiAgcmV0dXJuIGArJHtjbGVhbmVkfWA7XG59O1xuXG5jb25zdCB2YWxpZGF0ZUNvdW50cnkgPSAoY291bnRyeT86IHN0cmluZyk6IHN0cmluZyB8IHVuZGVmaW5lZCA9PiB7XG4gIGlmKCFjb3VudHJ5KSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCB1cHBlciA9IGNvdW50cnkudG9VcHBlckNhc2UoKTtcbiAgaWYoIS9eW0EtWl17Mn0kLy50ZXN0KHVwcGVyKSkge1xuICAgIHRocm93IG5ldyBVc2VyVmFsaWRhdGlvbkVycm9yKCdDb3VudHJ5IG11c3QgYmUgYSAyLWxldHRlciBJU08gY29kZScsICdjb3VudHJ5Jyk7XG4gIH1cbiAgcmV0dXJuIHVwcGVyO1xufTtcblxuY29uc3QgdmFsaWRhdGVTdGF0ZSA9IChzdGF0ZT86IHN0cmluZyk6IHN0cmluZyB8IHVuZGVmaW5lZCA9PiB7XG4gIGlmKCFzdGF0ZSkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgdXBwZXIgPSBzdGF0ZS50b1VwcGVyQ2FzZSgpO1xuICBpZighL15bQS1aXXsyfSQvLnRlc3QodXBwZXIpKSB7XG4gICAgdGhyb3cgbmV3IFVzZXJWYWxpZGF0aW9uRXJyb3IoJ1N0YXRlIG11c3QgYmUgYSAyLWxldHRlciBjb2RlJywgJ3N0YXRlJyk7XG4gIH1cbiAgcmV0dXJuIHVwcGVyO1xufTtcblxuY29uc3QgdmFsaWRhdGVHZW5kZXIgPSAoZ2VuZGVyPzogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkID0+IHtcbiAgaWYoIWdlbmRlcikge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgdXBwZXIgPSBnZW5kZXIudG9VcHBlckNhc2UoKTtcbiAgaWYoIS9eW01GXSQvLnRlc3QodXBwZXIpKSB7XG4gICAgdGhyb3cgbmV3IFVzZXJWYWxpZGF0aW9uRXJyb3IoJ0dlbmRlciBtdXN0IGJlIE0gb3IgRicsICdnZW5kZXInKTtcbiAgfVxuICByZXR1cm4gdXBwZXI7XG59O1xuXG5jb25zdCB1c2VyQ2FjaGUgPSBuZXcgTWFwPHN0cmluZywgVXNlcj4oKTtcblxuZXhwb3J0IGNvbnN0IHZhbGlkYXRlVXNlcklucHV0ID0gKHVzZXI6IHVua25vd24pOiBVc2VyID0+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCB2YWxpZGF0ZWQgPSBVc2VySW5wdXRTY2hlbWEucGFyc2UodXNlcik7XG4gICAgcmV0dXJuIHZhbGlkYXRlZCBhcyBVc2VyO1xuICB9IGNhdGNoKGVycm9yKSB7XG4gICAgaWYoZXJyb3IgaW5zdGFuY2VvZiB6LlpvZEVycm9yKSB7XG4gICAgICBjb25zdCBmaWVsZEVycm9ycyA9IGVycm9yLmlzc3Vlcy5tYXAoKGUpID0+IGAke2UucGF0aC5qb2luKCcuJyl9OiAke2UubWVzc2FnZX1gKS5qb2luKCcsICcpO1xuICAgICAgdGhyb3cgbmV3IFVzZXJWYWxpZGF0aW9uRXJyb3IoYFVzZXIgdmFsaWRhdGlvbiBmYWlsZWQ6ICR7ZmllbGRFcnJvcnN9YCk7XG4gICAgfVxuICAgIHRocm93IGVycm9yO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgZm9ybWF0VXNlck91dHB1dCA9ICh1c2VyOiBVc2VyKTogVXNlciA9PiB7XG4gIGNvbnN0IHtwYXNzd29yZCwgc2FsdCwgdmVyaWZpZWRFbWFpbENvZGUsIHZlcmlmaWVkU21zQ29kZSwgLi4uc2FmZVVzZXJ9ID0gdXNlcjtcbiAgcmV0dXJuIHNhZmVVc2VyO1xufTtcblxuZXhwb3J0IGNvbnN0IHBhcnNlVXNlciA9ICh1c2VyOiBVc2VyKTogVXNlciA9PiB7XG4gIHRyeSB7XG4gICAgY29uc3QgcGFyc2VkID0gcGVyZm9ybVVzZXJUcmFuc2Zvcm1hdGlvbih1c2VyKTtcbiAgICByZXR1cm4gcGFyc2VkO1xuICB9IGNhdGNoKGVycm9yKSB7XG4gICAgaWYoZXJyb3IgaW5zdGFuY2VvZiBVc2VyVmFsaWRhdGlvbkVycm9yKSB7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9XG4gICAgdGhyb3cgbmV3IFVzZXJWYWxpZGF0aW9uRXJyb3IoYFVzZXIgcGFyc2luZyBmYWlsZWQ6ICR7ZXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGVycm9yLm1lc3NhZ2UgOiAnVW5rbm93biBlcnJvcid9YCk7XG4gIH1cbn07XG5cbmNvbnN0IHBlcmZvcm1Vc2VyVHJhbnNmb3JtYXRpb24gPSAodXNlcjogVXNlcik6IFVzZXIgPT4ge1xuICBjb25zdCB7XG4gICAgX2lkLFxuICAgIF9rZXksXG4gICAgYWN0aXZlLFxuICAgIGJhbmtJZCxcbiAgICBjaXR5LFxuICAgIGNvdW50cnksXG4gICAgY3VycmVuY3ksXG4gICAgZGV2aWNlVG9rZW4sXG4gICAgZG9iLFxuICAgIGJpcnRoZGF0ZSxcbiAgICBlbWFpbCxcbiAgICBmaXJzdE5hbWUsXG4gICAgZ2VuZGVyLFxuICAgIGlkLFxuICAgIGltYWdlSWQsXG4gICAgbGFzdE5hbWUsXG4gICAgbGFzdEFjdGl2ZSxcbiAgICBsb2NhbGUsXG4gICAgbWFpbGluZ0xpc3QsXG4gICAgbmFtZSxcbiAgICBwYXNzd29yZCxcbiAgICBwaG9uZSxcbiAgICBwbGFuRXhwaXJlcyxcbiAgICBwbGFuSWQsXG4gICAgcGxhblN0YXR1cyxcbiAgICBwbGFuU3Vic2NyaXB0aW9uSWQsXG4gICAgc2FsdCxcbiAgICBzdGF0ZSxcbiAgICBzdHJlZXQxLFxuICAgIHN0cmVldDIsXG4gICAgc3RyaXBlQWNjb3VudElkLFxuICAgIHN0cmlwZUNhcmRCcmFuZCxcbiAgICBzdHJpcGVDYXJkSWQsXG4gICAgc3RyaXBlQ2FyZExhc3Q0LFxuICAgIHN0cmlwZUN1c3RvbWVySWQsXG4gICAgdGltZXpvbmUsXG4gICAgdHlwZSxcbiAgICB1c2VyQWNjZXNzLFxuICAgIHVzZXJJZCxcbiAgICB1c2VybmFtZSxcbiAgICB2ZXJpZmllZEVtYWlsLFxuICAgIHZlcmlmaWVkRW1haWxDb2RlLFxuICAgIHZlcmlmaWVkRW1haWxFeHBpcmVzLFxuICAgIHZlcmlmaWVkUGhvbmUsXG4gICAgdmVyaWZpZWRQaG9uZUV4cGlyZXMsXG4gICAgdmVyaWZpZWRTbXNDb2RlLFxuICAgIHppcFxuICB9ID0gdXNlcjtcbiAgY29uc3Qgbm9ybWFsaXplZERvYiA9IGJpcnRoZGF0ZSA/PyBkb2I7XG4gIGNvbnN0IG5vcm1hbGl6ZWRGaXJzdCA9IGZpcnN0TmFtZTtcbiAgY29uc3Qgbm9ybWFsaXplZExhc3QgPSBsYXN0TmFtZTtcbiAgY29uc3QgdHJhbnNmb3JtZWQgPSB7XG4gICAgLi4ucGFyc2VEb2N1bWVudCh1c2VyKSxcbiAgICAuLi4oKF9pZCB8fCBpZCB8fCBfa2V5IHx8IHVzZXJJZCkgJiYge2lkOiBwYXJzZUFyYW5nb0lkKF9pZCB8fCBpZCB8fCBgdXNlcnMvJHtfa2V5IHx8IHVzZXJJZH1gKX0pLFxuICAgIC4uLigoX2tleSB8fCB1c2VySWQpICYmIHt1c2VySWQ6IHBhcnNlSWQoX2tleSB8fCB1c2VySWQgfHwgJycpfSksXG4gICAgLi4uKGFjdGl2ZSAhPT0gdW5kZWZpbmVkICYmIHthY3RpdmU6ICEhYWN0aXZlfSksXG4gICAgLi4uKGJhbmtJZCAmJiB7YmFua0lkOiBwYXJzZVZhckNoYXIoYmFua0lkLCAxNjApfSksXG4gICAgLi4uKGNpdHkgJiYge2NpdHk6IHBhcnNlVmFyQ2hhcihjaXR5LCAxNjApfSksXG4gICAgLi4uKGNvdW50cnkgJiYge2NvdW50cnk6IHZhbGlkYXRlQ291bnRyeShjb3VudHJ5KX0pLFxuICAgIC4uLihjdXJyZW5jeSAmJiB7Y3VycmVuY3k6IHBhcnNlQ2hhcihjdXJyZW5jeSwgMykudG9VcHBlckNhc2UoKX0pLFxuICAgIC4uLihkZXZpY2VUb2tlbiAmJiB7ZGV2aWNlVG9rZW46IHBhcnNlVmFyQ2hhcihkZXZpY2VUb2tlbiwgMTYwKX0pLFxuICAgIC4uLihub3JtYWxpemVkRG9iICE9PSB1bmRlZmluZWQgJiYge2JpcnRoZGF0ZTogcGFyc2VSZWFrdG9yRGF0ZShub3JtYWxpemVkRG9iKSwgZG9iOiBwYXJzZVJlYWt0b3JEYXRlKG5vcm1hbGl6ZWREb2IpfSksXG4gICAgLi4uKGVtYWlsICYmIHtlbWFpbDogcGFyc2VFbWFpbChlbWFpbCl9KSxcbiAgICAuLi4obm9ybWFsaXplZEZpcnN0ICYmIHtmaXJzdE5hbWU6IHBhcnNlVmFyQ2hhcihub3JtYWxpemVkRmlyc3QsIDE2MCl9KSxcbiAgICAuLi4oZ2VuZGVyICYmIHtnZW5kZXI6IHZhbGlkYXRlR2VuZGVyKGdlbmRlcil9KSxcbiAgICAuLi4oaW1hZ2VJZCAmJiB7aW1hZ2VJZDogcGFyc2VSZWFrdG9ySXRlbUlkKGltYWdlSWQpfSksXG4gICAgLi4uKG5vcm1hbGl6ZWRMYXN0ICYmIHtsYXN0TmFtZTogcGFyc2VWYXJDaGFyKG5vcm1hbGl6ZWRMYXN0LCAxNjApfSksXG4gICAgLi4uKGxhc3RBY3RpdmUgIT09IHVuZGVmaW5lZCAmJiB7bGFzdEFjdGl2ZTogcGFyc2VSZWFrdG9yRGF0ZShsYXN0QWN0aXZlKX0pLFxuICAgIC4uLihsb2NhbGUgJiYge2xvY2FsZTogcGFyc2VTdHJpbmcobG9jYWxlLCA1KX0pLFxuICAgIC4uLihtYWlsaW5nTGlzdCAhPT0gdW5kZWZpbmVkICYmIHttYWlsaW5nTGlzdDogISFtYWlsaW5nTGlzdH0pLFxuICAgIC4uLihuYW1lICYmIHtuYW1lOiBwYXJzZVJlYWt0b3JOYW1lKG5hbWUpfSksXG4gICAgLi4uKHBhc3N3b3JkICYmIHtwYXNzd29yZDogcGFyc2VWYXJDaGFyKHBhc3N3b3JkLCAxNjApfSksXG4gICAgLi4uKHBob25lICYmIHtwaG9uZTogdmFsaWRhdGVQaG9uZShwaG9uZSl9KSxcbiAgICAuLi4ocGxhbkV4cGlyZXMgIT09IHVuZGVmaW5lZCAmJiB7cGxhbkV4cGlyZXM6IHBhcnNlUmVha3RvckRhdGUocGxhbkV4cGlyZXMpfSksXG4gICAgLi4uKHBsYW5JZCAmJiB7cGxhbklkOiBwYXJzZVZhckNoYXIocGxhbklkLCAxNjApfSksXG4gICAgLi4uKHBsYW5TdGF0dXMgJiYge3BsYW5TdGF0dXM6IHBhcnNlVmFyQ2hhcihwbGFuU3RhdHVzLCAxNjApfSksXG4gICAgLi4uKHBsYW5TdWJzY3JpcHRpb25JZCAmJiB7cGxhblN1YnNjcmlwdGlvbklkOiBwYXJzZVZhckNoYXIocGxhblN1YnNjcmlwdGlvbklkLCAxNjApfSksXG4gICAgLi4uKHNhbHQgJiYge3NhbHQ6IHBhcnNlVmFyQ2hhcihzYWx0LCAxNjApfSksXG4gICAgLi4uKHN0YXRlICYmIHtzdGF0ZTogdmFsaWRhdGVTdGF0ZShzdGF0ZSl9KSxcbiAgICAuLi4oc3RyZWV0MSAmJiB7c3RyZWV0MTogcGFyc2VWYXJDaGFyKHN0cmVldDEsIDE2MCl9KSxcbiAgICAuLi4oc3RyZWV0MiAmJiB7c3RyZWV0MjogcGFyc2VWYXJDaGFyKHN0cmVldDIsIDE2MCl9KSxcbiAgICAuLi4oc3RyaXBlQWNjb3VudElkICYmIHtzdHJpcGVBY2NvdW50SWQ6IHBhcnNlVmFyQ2hhcihzdHJpcGVBY2NvdW50SWQsIDE2MCl9KSxcbiAgICAuLi4oc3RyaXBlQ2FyZEJyYW5kICYmIHtzdHJpcGVDYXJkQnJhbmQ6IHBhcnNlVmFyQ2hhcihzdHJpcGVDYXJkQnJhbmQsIDE2MCl9KSxcbiAgICAuLi4oc3RyaXBlQ2FyZElkICYmIHtzdHJpcGVDYXJkSWQ6IHBhcnNlVmFyQ2hhcihzdHJpcGVDYXJkSWQsIDE2MCl9KSxcbiAgICAuLi4oc3RyaXBlQ2FyZExhc3Q0ICYmIHtzdHJpcGVDYXJkTGFzdDQ6IHBhcnNlVmFyQ2hhcihzdHJpcGVDYXJkTGFzdDQsIDQpfSksXG4gICAgLi4uKHN0cmlwZUN1c3RvbWVySWQgJiYge3N0cmlwZUN1c3RvbWVySWQ6IHBhcnNlVmFyQ2hhcihzdHJpcGVDdXN0b21lcklkLCAxNjApfSksXG4gICAgLi4uKHRpbWV6b25lICYmIHt0aW1lem9uZTogcGFyc2VTdHJpbmcodGltZXpvbmUsIDE2MCl9KSxcbiAgICAuLi4odHlwZSAmJiB7dHlwZTogcGFyc2VSZWFrdG9yVHlwZSh0eXBlKX0pLFxuICAgIC4uLih1c2VyQWNjZXNzICE9PSB1bmRlZmluZWQgJiYge3VzZXJBY2Nlc3M6IHVzZXJBY2Nlc3MgPyBwYXJzZU51bSh1c2VyQWNjZXNzKSA6IDB9KSxcbiAgICAuLi4odXNlcm5hbWUgJiYge3VzZXJuYW1lOiBwYXJzZVZhckNoYXIodXNlcm5hbWUsIDE2MCl9KSxcbiAgICAuLi4odmVyaWZpZWRFbWFpbCAhPT0gdW5kZWZpbmVkICYmIHt2ZXJpZmllZEVtYWlsOiAhIXZlcmlmaWVkRW1haWx9KSxcbiAgICAuLi4odmVyaWZpZWRFbWFpbENvZGUgIT09IHVuZGVmaW5lZCAmJiB7dmVyaWZpZWRFbWFpbENvZGU6IHBhcnNlTnVtKHZlcmlmaWVkRW1haWxDb2RlLCAxMCl9KSxcbiAgICAuLi4odmVyaWZpZWRFbWFpbEV4cGlyZXMgIT09IHVuZGVmaW5lZCAmJiB7dmVyaWZpZWRFbWFpbEV4cGlyZXM6IHBhcnNlTnVtKHZlcmlmaWVkRW1haWxFeHBpcmVzLCAxMCl9KSxcbiAgICAuLi4odmVyaWZpZWRQaG9uZSAhPT0gdW5kZWZpbmVkICYmIHt2ZXJpZmllZFBob25lOiAhIXZlcmlmaWVkUGhvbmV9KSxcbiAgICAuLi4odmVyaWZpZWRQaG9uZUV4cGlyZXMgIT09IHVuZGVmaW5lZCAmJiB7dmVyaWZpZWRQaG9uZUV4cGlyZXM6IHBhcnNlTnVtKHZlcmlmaWVkUGhvbmVFeHBpcmVzLCAxMCl9KSxcbiAgICAuLi4odmVyaWZpZWRTbXNDb2RlICE9PSB1bmRlZmluZWQgJiYge3ZlcmlmaWVkU21zQ29kZTogcGFyc2VOdW0odmVyaWZpZWRTbXNDb2RlLCAxMCl9KSxcbiAgICAuLi4oemlwICYmIHt6aXA6IHBhcnNlVmFyQ2hhcih6aXAsIDIwKX0pXG4gIH07XG5cbiAgY29uc3QgcmVzdWx0ID0gcmVtb3ZlRW1wdHlLZXlzKHRyYW5zZm9ybWVkKTtcblxuICBpZih1c2VyLl9pZCkge1xuICAgIHJlc3VsdC5pZCA9IHVzZXIuX2lkO1xuICAgIHJlc3VsdC5faWQgPSB1c2VyLl9pZDtcbiAgfSBlbHNlIGlmKHVzZXIuaWQgJiYgIXJlc3VsdC5pZCkge1xuICAgIHJlc3VsdC5pZCA9IHVzZXIuaWQ7XG4gICAgcmVzdWx0Ll9pZCA9IHVzZXIuaWQ7XG4gIH1cblxuICBpZih1c2VyLl9rZXkpIHtcbiAgICByZXN1bHQudXNlcklkID0gdXNlci5fa2V5O1xuICAgIHJlc3VsdC5fa2V5ID0gdXNlci5fa2V5O1xuICB9IGVsc2UgaWYodXNlci51c2VySWQgJiYgIXJlc3VsdC51c2VySWQpIHtcbiAgICByZXN1bHQudXNlcklkID0gdXNlci51c2VySWQ7XG4gICAgcmVzdWx0Ll9rZXkgPSB1c2VyLnVzZXJJZDtcbiAgfVxuXG4gIGlmKHVzZXIudXNlcklkICYmICFyZXN1bHQuX2tleSkge1xuICAgIHJlc3VsdC5fa2V5ID0gdXNlci51c2VySWQ7XG4gIH1cblxuICBpZih1c2VyLmlkICYmICFyZXN1bHQuX2lkKSB7XG4gICAgcmVzdWx0Ll9pZCA9IHVzZXIuaWQ7XG4gIH1cblxuICByZXR1cm4gcmVzdWx0O1xufTtcblxuZXhwb3J0IGNvbnN0IGNsZWFyVXNlckNhY2hlID0gKCk6IHZvaWQgPT4ge1xuICB1c2VyQ2FjaGUuY2xlYXIoKTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRVc2VyQ2FjaGVTaXplID0gKCk6IG51bWJlciA9PiB1c2VyQ2FjaGUuc2l6ZTtcblxuZXhwb3J0IHt1c2VyQ2FjaGV9O1xuIl0sIm5hbWVzIjpbInBhcnNlQXJhbmdvSWQiLCJwYXJzZUNoYXIiLCJwYXJzZUVtYWlsIiwicGFyc2VJZCIsInBhcnNlTnVtIiwicGFyc2VTdHJpbmciLCJwYXJzZVZhckNoYXIiLCJ6IiwicGFyc2VEb2N1bWVudCIsInJlbW92ZUVtcHR5S2V5cyIsInBhcnNlUmVha3RvckRhdGUiLCJwYXJzZVJlYWt0b3JJdGVtSWQiLCJwYXJzZVJlYWt0b3JOYW1lIiwicGFyc2VSZWFrdG9yVHlwZSIsIlVzZXJWYWxpZGF0aW9uRXJyb3IiLCJFcnJvciIsIm1lc3NhZ2UiLCJmaWVsZCIsIm5hbWUiLCJVc2VySW5wdXRTY2hlbWEiLCJvYmplY3QiLCJfaWQiLCJzdHJpbmciLCJvcHRpb25hbCIsIl9rZXkiLCJhY3RpdmUiLCJib29sZWFuIiwiYWRkZWQiLCJudW1iZXIiLCJiYW5rSWQiLCJtYXgiLCJjaXR5IiwiY291bnRyeSIsImxlbmd0aCIsImN1cnJlbmN5IiwiZGV2aWNlVG9rZW4iLCJkb2IiLCJiaXJ0aGRhdGUiLCJlbWFpbCIsImZpcnN0TmFtZSIsImdlbmRlciIsImlkIiwiaW1hZ2VJZCIsImxhc3ROYW1lIiwibGFzdEFjdGl2ZSIsImxvY2FsZSIsIm1haWxpbmdMaXN0IiwicGFzc3dvcmQiLCJwaG9uZSIsInBsYW5FeHBpcmVzIiwicGxhbklkIiwicGxhblN0YXR1cyIsInBsYW5TdWJzY3JpcHRpb25JZCIsInNhbHQiLCJzdGF0ZSIsInN0cmVldDEiLCJzdHJlZXQyIiwic3RyaXBlQWNjb3VudElkIiwic3RyaXBlQ2FyZEJyYW5kIiwic3RyaXBlQ2FyZElkIiwic3RyaXBlQ2FyZExhc3Q0Iiwic3RyaXBlQ3VzdG9tZXJJZCIsInRpbWV6b25lIiwidHlwZSIsInVwZGF0ZWQiLCJ1c2VyQWNjZXNzIiwidXNlcklkIiwidXNlcm5hbWUiLCJ2ZXJpZmllZEVtYWlsIiwidmVyaWZpZWRFbWFpbENvZGUiLCJ2ZXJpZmllZEVtYWlsRXhwaXJlcyIsInZlcmlmaWVkUGhvbmUiLCJ2ZXJpZmllZFBob25lRXhwaXJlcyIsInZlcmlmaWVkU21zQ29kZSIsInppcCIsImxvb3NlIiwidmFsaWRhdGVQaG9uZSIsInVuZGVmaW5lZCIsImNsZWFuZWQiLCJyZXBsYWNlIiwidmFsaWRhdGVDb3VudHJ5IiwidXBwZXIiLCJ0b1VwcGVyQ2FzZSIsInRlc3QiLCJ2YWxpZGF0ZVN0YXRlIiwidmFsaWRhdGVHZW5kZXIiLCJ1c2VyQ2FjaGUiLCJNYXAiLCJ2YWxpZGF0ZVVzZXJJbnB1dCIsInVzZXIiLCJ2YWxpZGF0ZWQiLCJwYXJzZSIsImVycm9yIiwiWm9kRXJyb3IiLCJmaWVsZEVycm9ycyIsImlzc3VlcyIsIm1hcCIsImUiLCJwYXRoIiwiam9pbiIsImZvcm1hdFVzZXJPdXRwdXQiLCJzYWZlVXNlciIsInBhcnNlVXNlciIsInBhcnNlZCIsInBlcmZvcm1Vc2VyVHJhbnNmb3JtYXRpb24iLCJub3JtYWxpemVkRG9iIiwibm9ybWFsaXplZEZpcnN0Iiwibm9ybWFsaXplZExhc3QiLCJ0cmFuc2Zvcm1lZCIsInJlc3VsdCIsImNsZWFyVXNlckNhY2hlIiwiY2xlYXIiLCJnZXRVc2VyQ2FjaGVTaXplIiwic2l6ZSJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBUUEsYUFBYSxFQUFFQyxTQUFTLEVBQUVDLFVBQVUsRUFBRUMsT0FBTyxFQUFFQyxRQUFRLEVBQUVDLFdBQVcsRUFBRUMsWUFBWSxRQUFPLGVBQWU7QUFDaEgsU0FBUUMsQ0FB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
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import type { VideoType } from '../../types/videos.types.js';
|
|
2
2
|
export declare class VideoValidationError extends Error {
|
|
3
|
-
field?: string
|
|
4
|
-
constructor(message: string, field?: string
|
|
3
|
+
field?: string;
|
|
4
|
+
constructor(message: string, field?: string);
|
|
5
5
|
}
|
|
6
6
|
export declare const validateVideoInput: (video: unknown) => VideoType;
|
|
7
7
|
export declare const parseVideo: (video: VideoType) => VideoType;
|
|
8
|
-
//# sourceMappingURL=videoAdapter.d.ts.map
|
package/lib/config/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { MetropolisAdapters } from '../utils/
|
|
1
|
+
import type { MetropolisAdapters } from '../utils/MetropolisContext.js';
|
|
2
2
|
export interface ConfigAppSessionType {
|
|
3
3
|
readonly maxMinutes?: number;
|
|
4
4
|
readonly minMinutes?: number;
|
|
@@ -18,7 +18,7 @@ export interface ConfigAppType {
|
|
|
18
18
|
readonly api?: ConfigAppApiType;
|
|
19
19
|
readonly name?: string;
|
|
20
20
|
readonly rum?: {
|
|
21
|
-
readonly
|
|
21
|
+
readonly analyticsId?: string;
|
|
22
22
|
readonly debounceMs?: number;
|
|
23
23
|
readonly dedupeMs?: number;
|
|
24
24
|
readonly enabled?: boolean;
|
|
@@ -30,6 +30,7 @@ export interface ConfigAppType {
|
|
|
30
30
|
readonly version?: string;
|
|
31
31
|
}
|
|
32
32
|
export interface MetropolisConfiguration {
|
|
33
|
+
readonly [environment: string]: MetropolisEnvironmentConfiguration | undefined;
|
|
33
34
|
readonly local?: MetropolisEnvironmentConfiguration;
|
|
34
35
|
readonly development?: MetropolisEnvironmentConfiguration;
|
|
35
36
|
readonly production?: MetropolisEnvironmentConfiguration;
|
|
@@ -51,4 +52,3 @@ export declare const getDefaultConfig: (environment?: string) => MetropolisEnvir
|
|
|
51
52
|
* the appropriate configuration.
|
|
52
53
|
*/
|
|
53
54
|
export declare const resolveEnvironmentConfig: (config: MetropolisConfiguration, environment?: string) => MetropolisEnvironmentConfiguration;
|
|
54
|
-
//# sourceMappingURL=index.d.ts.map
|
package/lib/config/index.js
CHANGED
|
@@ -2,6 +2,10 @@
|
|
|
2
2
|
* Copyright (c) 2018-Present, Nitrogen Labs, Inc.
|
|
3
3
|
* Copyrights licensed under the MIT License. See the accompanying LICENSE file for terms.
|
|
4
4
|
*/ import { merge } from '@nlabs/utils';
|
|
5
|
+
const getRuntimeEnvironment = ()=>{
|
|
6
|
+
const runtimeProcess = globalThis.process;
|
|
7
|
+
return runtimeProcess?.env?.stage || runtimeProcess?.env?.NODE_ENV;
|
|
8
|
+
};
|
|
5
9
|
/**
|
|
6
10
|
* Default configuration values for all environments.
|
|
7
11
|
*/ const DEFAULT_CONFIG = {
|
|
@@ -65,7 +69,7 @@
|
|
|
65
69
|
/**
|
|
66
70
|
* Gets the default configuration for a specific environment.
|
|
67
71
|
*/ export const getDefaultConfig = (environment)=>{
|
|
68
|
-
const targetEnvironment = environment ||
|
|
72
|
+
const targetEnvironment = environment || getRuntimeEnvironment() || 'local';
|
|
69
73
|
const envConfig = DEFAULT_CONFIG[targetEnvironment] || DEFAULT_CONFIG.local || {};
|
|
70
74
|
const localConfig = DEFAULT_CONFIG.local || {};
|
|
71
75
|
return merge({}, localConfig, envConfig);
|
|
@@ -75,7 +79,7 @@
|
|
|
75
79
|
* This function determines which environment to use based on process.env and merges
|
|
76
80
|
* the appropriate configuration.
|
|
77
81
|
*/ export const resolveEnvironmentConfig = (config, environment)=>{
|
|
78
|
-
const targetEnvironment = environment ||
|
|
82
|
+
const targetEnvironment = environment || getRuntimeEnvironment() || 'local';
|
|
79
83
|
const baseConfig = DEFAULT_CONFIG;
|
|
80
84
|
// Merge base config with provided config
|
|
81
85
|
const mergedConfig = merge({}, baseConfig, config);
|
|
@@ -94,4 +98,4 @@
|
|
|
94
98
|
return resolved;
|
|
95
99
|
};
|
|
96
100
|
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L21ldHJvcG9saXNqcy9zcmMvY29uZmlnL2luZGV4LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxOC1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuaW1wb3J0IHttZXJnZX0gZnJvbSAnQG5sYWJzL3V0aWxzJztcblxuaW1wb3J0IHR5cGUge01ldHJvcG9saXNBZGFwdGVyc30gZnJvbSAnLi4vdXRpbHMvTWV0cm9wb2xpc0NvbnRleHQuanMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ0FwcFNlc3Npb25UeXBlIHtcbiAgcmVhZG9ubHkgbWF4TWludXRlcz86IG51bWJlcjtcbiAgcmVhZG9ubHkgbWluTWludXRlcz86IG51bWJlcjtcbiAgcmVhZG9ubHkgcmVmcmVzaEFmdGVyUmF0aW8/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnQXBwVXJscyB7XG4gIHJlYWRvbmx5IHdlYnNvY2tldD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdBcHBBcGlUeXBlIHtcbiAgcmVhZG9ubHkgZW5kcG9pbnRzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgcmVhZG9ubHkgcHVibGljPzogc3RyaW5nO1xuICByZWFkb25seSBydW0/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHVybD86IHN0cmluZztcbiAgcmVhZG9ubHkgdXBsb2FkSW1hZ2U/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnQXBwVHlwZSB7XG4gIHJlYWRvbmx5IGFwaT86IENvbmZpZ0FwcEFwaVR5cGU7XG4gIHJlYWRvbmx5IG5hbWU/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHJ1bT86IHtcbiAgICByZWFkb25seSBhbmFseXRpY3NJZD86IHN0cmluZztcbiAgICByZWFkb25seSBkZWJvdW5jZU1zPzogbnVtYmVyO1xuICAgIHJlYWRvbmx5IGRlZHVwZU1zPzogbnVtYmVyO1xuICAgIHJlYWRvbmx5IGVuYWJsZWQ/OiBib29sZWFuO1xuICAgIHJlYWRvbmx5IHJlc3BlY3RQcml2YWN5U2lnbmFscz86IGJvb2xlYW47XG4gICAgcmVhZG9ubHkgdGhyb3R0bGVNcz86IG51bWJlcjtcbiAgfTtcbiAgcmVhZG9ubHkgc2Vzc2lvbj86IENvbmZpZ0FwcFNlc3Npb25UeXBlO1xuICByZWFkb25seSB1cmxzPzogQ29uZmlnQXBwVXJscztcbiAgcmVhZG9ubHkgdmVyc2lvbj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNZXRyb3BvbGlzQ29uZmlndXJhdGlvbiB7XG4gIHJlYWRvbmx5IFtlbnZpcm9ubWVudDogc3RyaW5nXTogTWV0cm9wb2xpc0Vudmlyb25tZW50Q29uZmlndXJhdGlvbiB8IHVuZGVmaW5lZDtcbiAgcmVhZG9ubHkgbG9jYWw/OiBNZXRyb3BvbGlzRW52aXJvbm1lbnRDb25maWd1cmF0aW9uO1xuICByZWFkb25seSBkZXZlbG9wbWVudD86IE1ldHJvcG9saXNFbnZpcm9ubWVudENvbmZpZ3VyYXRpb247XG4gIHJlYWRvbmx5IHByb2R1Y3Rpb24/OiBNZXRyb3BvbGlzRW52aXJvbm1lbnRDb25maWd1cmF0aW9uO1xuICByZWFkb25seSB0ZXN0PzogTWV0cm9wb2xpc0Vudmlyb25tZW50Q29uZmlndXJhdGlvbjtcbn1cblxuY29uc3QgZ2V0UnVudGltZUVudmlyb25tZW50ID0gKCk6IHN0cmluZyB8IHVuZGVmaW5lZCA9PiB7XG4gIGNvbnN0IHJ1bnRpbWVQcm9jZXNzID0gKGdsb2JhbFRoaXMgYXMge1xuICAgIHByb2Nlc3M/OiB7ZW52PzogUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgdW5kZWZpbmVkPn07XG4gIH0pLnByb2Nlc3M7XG4gIHJldHVybiBydW50aW1lUHJvY2Vzcz8uZW52Py5zdGFnZSB8fCBydW50aW1lUHJvY2Vzcz8uZW52Py5OT0RFX0VOVjtcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWV0cm9wb2xpc0Vudmlyb25tZW50Q29uZmlndXJhdGlvbiB7XG4gIHJlYWRvbmx5IGFkYXB0ZXJzPzogTWV0cm9wb2xpc0FkYXB0ZXJzO1xuICByZWFkb25seSBhcHA/OiBQYXJ0aWFsPENvbmZpZ0FwcFR5cGU+O1xuICByZWFkb25seSBlbnZpcm9ubWVudD86IHN0cmluZztcbiAgcmVhZG9ubHkgaXNBdXRoPzogKCkgPT4gYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBEZWZhdWx0IGNvbmZpZ3VyYXRpb24gdmFsdWVzIGZvciBhbGwgZW52aXJvbm1lbnRzLlxuICovXG5jb25zdCBERUZBVUxUX0NPTkZJRzogTWV0cm9wb2xpc0NvbmZpZ3VyYXRpb24gPSB7XG4gIGRldmVsb3BtZW50OiB7XG4gICAgYXBwOiB7XG4gICAgICBhcGk6IHtcbiAgICAgICAgcHVibGljOiAnaHR0cDovL2xvY2FsaG9zdDozMDAwL3B1YmxpYycsXG4gICAgICAgIHVybDogJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwMC9hcHAnXG4gICAgICB9LFxuICAgICAgc2Vzc2lvbjoge1xuICAgICAgICBtYXhNaW51dGVzOiAxNSxcbiAgICAgICAgbWluTWludXRlczogNVxuICAgICAgfVxuICAgIH0sXG4gICAgZW52aXJvbm1lbnQ6ICdkZXZlbG9wbWVudCcsXG4gICAgaXNBdXRoOiAoKSA9PiB0cnVlXG4gIH0sXG4gIGxvY2FsOiB7XG4gICAgYXBwOiB7XG4gICAgICBhcGk6IHtcbiAgICAgICAgcHVibGljOiAnaHR0cHM6Ly9kZXYtYXBpLnRvcmNoLm9uZS9wdWJsaWMnLFxuICAgICAgICB1cmw6ICdodHRwczovL2Rldi1hcGkudG9yY2gub25lL2FwcCdcbiAgICAgIH0sXG4gICAgICBzZXNzaW9uOiB7XG4gICAgICAgIG1heE1pbnV0ZXM6IDE1LFxuICAgICAgICBtaW5NaW51dGVzOiA1XG4gICAgICB9XG4gICAgfSxcbiAgICBlbnZpcm9ubWVudDogJ2xvY2FsJyxcbiAgICBpc0F1dGg6ICgpID0+IHRydWVcbiAgfSxcbiAgcHJvZHVjdGlvbjoge1xuICAgIGFwcDoge1xuICAgICAgYXBpOiB7XG4gICAgICAgIHB1YmxpYzogJ2h0dHBzOi8vYXBpLnRvcmNoLm9uZS9wdWJsaWMnLFxuICAgICAgICB1cmw6ICdodHRwczovL2FwaS50b3JjaC5vbmUvYXBwJ1xuICAgICAgfSxcbiAgICAgIHNlc3Npb246IHtcbiAgICAgICAgbWF4TWludXRlczogMTUsXG4gICAgICAgIG1pbk1pbnV0ZXM6IDVcbiAgICAgIH1cbiAgICB9LFxuICAgIGVudmlyb25tZW50OiAncHJvZHVjdGlvbicsXG4gICAgaXNBdXRoOiAoKSA9PiB0cnVlXG4gIH0sXG4gIHRlc3Q6IHtcbiAgICBhcHA6IHtcbiAgICAgIGFwaToge1xuICAgICAgICBwdWJsaWM6ICdodHRwOi8vbG9jYWxob3N0OjMwMDAvcHVibGljJyxcbiAgICAgICAgdXJsOiAnaHR0cDovL2xvY2FsaG9zdDozMDAwL2FwcCdcbiAgICAgIH0sXG4gICAgICBzZXNzaW9uOiB7XG4gICAgICAgIG1heE1pbnV0ZXM6IDE1LFxuICAgICAgICBtaW5NaW51dGVzOiA1XG4gICAgICB9XG4gICAgfSxcbiAgICBlbnZpcm9ubWVudDogJ3Rlc3QnLFxuICAgIGlzQXV0aDogKCkgPT4gdHJ1ZVxuICB9XG59O1xuXG4vKipcbiAqIEdldHMgdGhlIGRlZmF1bHQgY29uZmlndXJhdGlvbiBmb3IgYSBzcGVjaWZpYyBlbnZpcm9ubWVudC5cbiAqL1xuZXhwb3J0IGNvbnN0IGdldERlZmF1bHRDb25maWcgPSAoZW52aXJvbm1lbnQ/OiBzdHJpbmcpOiBNZXRyb3BvbGlzRW52aXJvbm1lbnRDb25maWd1cmF0aW9uID0+IHtcbiAgY29uc3QgdGFyZ2V0RW52aXJvbm1lbnQgPSBlbnZpcm9ubWVudCB8fCBnZXRSdW50aW1lRW52aXJvbm1lbnQoKSB8fCAnbG9jYWwnO1xuICBjb25zdCBlbnZDb25maWcgPSBERUZBVUxUX0NPTkZJR1t0YXJnZXRFbnZpcm9ubWVudF0gfHwgREVGQVVMVF9DT05GSUcubG9jYWwgfHwge307XG4gIGNvbnN0IGxvY2FsQ29uZmlnID0gREVGQVVMVF9DT05GSUcubG9jYWwgfHwge307XG4gIHJldHVybiBtZXJnZSh7fSwgbG9jYWxDb25maWcsIGVudkNvbmZpZyk7XG59O1xuXG4vKipcbiAqIFJlc29sdmVzIHRoZSBlbnZpcm9ubWVudC1zcGVjaWZpYyBjb25maWd1cmF0aW9uIGZyb20gYSBNZXRyb3BvbGlzQ29uZmlndXJhdGlvbiBvYmplY3QuXG4gKiBUaGlzIGZ1bmN0aW9uIGRldGVybWluZXMgd2hpY2ggZW52aXJvbm1lbnQgdG8gdXNlIGJhc2VkIG9uIHByb2Nlc3MuZW52IGFuZCBtZXJnZXNcbiAqIHRoZSBhcHByb3ByaWF0ZSBjb25maWd1cmF0aW9uLlxuICovXG5leHBvcnQgY29uc3QgcmVzb2x2ZUVudmlyb25tZW50Q29uZmlnID0gKFxuICBjb25maWc6IE1ldHJvcG9saXNDb25maWd1cmF0aW9uLFxuICBlbnZpcm9ubWVudD86IHN0cmluZ1xuKTogTWV0cm9wb2xpc0Vudmlyb25tZW50Q29uZmlndXJhdGlvbiA9PiB7XG4gIGNvbnN0IHRhcmdldEVudmlyb25tZW50ID0gZW52aXJvbm1lbnQgfHwgZ2V0UnVudGltZUVudmlyb25tZW50KCkgfHwgJ2xvY2FsJztcbiAgY29uc3QgYmFzZUNvbmZpZyA9IERFRkFVTFRfQ09ORklHO1xuXG4gIC8vIE1lcmdlIGJhc2UgY29uZmlnIHdpdGggcHJvdmlkZWQgY29uZmlnXG4gIGNvbnN0IG1lcmdlZENvbmZpZyA9IG1lcmdlKHt9LCBiYXNlQ29uZmlnLCBjb25maWcpO1xuXG4gIC8vIEdldCB0aGUgdGFyZ2V0IGVudmlyb25tZW50IGNvbmZpZ1xuICBjb25zdCBlbnZDb25maWcgPSBtZXJnZWRDb25maWdbdGFyZ2V0RW52aXJvbm1lbnRdIHx8IG1lcmdlZENvbmZpZy5sb2NhbCB8fCB7fTtcblxuICAvLyBNZXJnZSB3aXRoIGxvY2FsIGFzIGZhbGxiYWNrXG4gIGNvbnN0IGxvY2FsQ29uZmlnID0gbWVyZ2VkQ29uZmlnLmxvY2FsIHx8IHt9O1xuICBjb25zdCByZXNvbHZlZCA9IG1lcmdlKHt9LCBsb2NhbENvbmZpZywgZW52Q29uZmlnKTtcblxuICAvLyBFbnN1cmUgZW52aXJvbm1lbnQgaXMgc2V0IChjcmVhdGUgbmV3IG9iamVjdCB0byBhdm9pZCBtdXRhdGluZyByZWFkb25seSlcbiAgaWYgKCFyZXNvbHZlZC5lbnZpcm9ubWVudCkge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5yZXNvbHZlZCxcbiAgICAgIGVudmlyb25tZW50OiB0YXJnZXRFbnZpcm9ubWVudFxuICAgIH07XG4gIH1cblxuICByZXR1cm4gcmVzb2x2ZWQ7XG59O1xuIl0sIm5hbWVzIjpbIm1lcmdlIiwiZ2V0UnVudGltZUVudmlyb25tZW50IiwicnVudGltZVByb2Nlc3MiLCJnbG9iYWxUaGlzIiwicHJvY2VzcyIsImVudiIsInN0YWdlIiwiTk9ERV9FTlYiLCJERUZBVUxUX0NPTkZJRyIsImRldmVsb3BtZW50IiwiYXBwIiwiYXBpIiwicHVibGljIiwidXJsIiwic2Vzc2lvbiIsIm1heE1pbnV0ZXMiLCJtaW5NaW51dGVzIiwiZW52aXJvbm1lbnQiLCJpc0F1dGgiLCJsb2NhbCIsInByb2R1Y3Rpb24iLCJ0ZXN0IiwiZ2V0RGVmYXVsdENvbmZpZyIsInRhcmdldEVudmlyb25tZW50IiwiZW52Q29uZmlnIiwibG9jYWxDb25maWciLCJyZXNvbHZlRW52aXJvbm1lbnRDb25maWciLCJjb25maWciLCJiYXNlQ29uZmlnIiwibWVyZ2VkQ29uZmlnIiwicmVzb2x2ZWQiXSwibWFwcGluZ3MiOiJBQUFBOzs7Q0FHQyxHQUNELFNBQVFBLEtBQUssUUFBTyxlQUFlO0FBOENuQyxNQUFNQyx3QkFBd0I7SUFDNUIsTUFBTUMsaUJBQWlCLEFBQUNDLFdBRXJCQyxPQUFPO0lBQ1YsT0FBT0YsZ0JBQWdCRyxLQUFLQyxTQUFTSixnQkFBZ0JHLEtBQUtFO0FBQzVEO0FBU0E7O0NBRUMsR0FDRCxNQUFNQyxpQkFBMEM7SUFDOUNDLGFBQWE7UUFDWEMsS0FBSztZQUNIQyxLQUFLO2dCQUNIQyxRQUFRO2dCQUNSQyxLQUFLO1lBQ1A7WUFDQUMsU0FBUztnQkFDUEMsWUFBWTtnQkFDWkMsWUFBWTtZQUNkO1FBQ0Y7UUFDQUMsYUFBYTtRQUNiQyxRQUFRLElBQU07SUFDaEI7SUFDQUMsT0FBTztRQUNMVCxLQUFLO1lBQ0hDLEtBQUs7Z0JBQ0hDLFFBQVE7Z0JBQ1JDLEtBQUs7WUFDUDtZQUNBQyxTQUFTO2dCQUNQQyxZQUFZO2dCQUNaQyxZQUFZO1lBQ2Q7UUFDRjtRQUNBQyxhQUFhO1FBQ2JDLFFBQVEsSUFBTTtJQUNoQjtJQUNBRSxZQUFZO1FBQ1ZWLEtBQUs7WUFDSEMsS0FBSztnQkFDSEMsUUFBUTtnQkFDUkMsS0FBSztZQUNQO1lBQ0FDLFNBQVM7Z0JBQ1BDLFlBQVk7Z0JBQ1pDLFlBQVk7WUFDZDtRQUNGO1FBQ0FDLGFBQWE7UUFDYkMsUUFBUSxJQUFNO0lBQ2hCO0lBQ0FHLE1BQU07UUFDSlgsS0FBSztZQUNIQyxLQUFLO2dCQUNIQyxRQUFRO2dCQUNSQyxLQUFLO1lBQ1A7WUFDQUMsU0FBUztnQkFDUEMsWUFBWTtnQkFDWkMsWUFBWTtZQUNkO1FBQ0Y7UUFDQUMsYUFBYTtRQUNiQyxRQUFRLElBQU07SUFDaEI7QUFDRjtBQUVBOztDQUVDLEdBQ0QsT0FBTyxNQUFNSSxtQkFBbUIsQ0FBQ0w7SUFDL0IsTUFBTU0sb0JBQW9CTixlQUFlaEIsMkJBQTJCO0lBQ3BFLE1BQU11QixZQUFZaEIsY0FBYyxDQUFDZSxrQkFBa0IsSUFBSWYsZUFBZVcsS0FBSyxJQUFJLENBQUM7SUFDaEYsTUFBTU0sY0FBY2pCLGVBQWVXLEtBQUssSUFBSSxDQUFDO0lBQzdDLE9BQU9uQixNQUFNLENBQUMsR0FBR3lCLGFBQWFEO0FBQ2hDLEVBQUU7QUFFRjs7OztDQUlDLEdBQ0QsT0FBTyxNQUFNRSwyQkFBMkIsQ0FDdENDLFFBQ0FWO0lBRUEsTUFBTU0sb0JBQW9CTixlQUFlaEIsMkJBQTJCO0lBQ3BFLE1BQU0yQixhQUFhcEI7SUFFbkIseUNBQXlDO0lBQ3pDLE1BQU1xQixlQUFlN0IsTUFBTSxDQUFDLEdBQUc0QixZQUFZRDtJQUUzQyxvQ0FBb0M7SUFDcEMsTUFBTUgsWUFBWUssWUFBWSxDQUFDTixrQkFBa0IsSUFBSU0sYUFBYVYsS0FBSyxJQUFJLENBQUM7SUFFNUUsK0JBQStCO0lBQy9CLE1BQU1NLGNBQWNJLGFBQWFWLEtBQUssSUFBSSxDQUFDO0lBQzNDLE1BQU1XLFdBQVc5QixNQUFNLENBQUMsR0FBR3lCLGFBQWFEO0lBRXhDLDJFQUEyRTtJQUMzRSxJQUFJLENBQUNNLFNBQVNiLFdBQVcsRUFBRTtRQUN6QixPQUFPO1lBQ0wsR0FBR2EsUUFBUTtZQUNYYixhQUFhTTtRQUNmO0lBQ0Y7SUFFQSxPQUFPTztBQUNULEVBQUUifQ==
|
package/lib/graphql/message.d.ts
CHANGED
|
@@ -1,3 +1,2 @@
|
|
|
1
1
|
export declare const MessageUpdate = "mutate MessageUpdate($message: MessageInput) {\n onUpdateMessage(message: $message) {\n added\n content\n from\n modified\n to\n }\n}";
|
|
2
2
|
export declare const MessageSubscription = "subscription MessageSubscription {\n onUpdateMessage(message: $message) {\n added\n content\n from\n modified\n to\n }\n}";
|
|
3
|
-
//# sourceMappingURL=message.d.ts.map
|
|
@@ -1,3 +1,2 @@
|
|
|
1
1
|
export declare const NotificationUpdate = "mutate NotificationUpdate($notification: NotificationInput) {\n onUpdateNotification(notification: $notification) {\n added\n content\n from\n modified\n to\n }\n}";
|
|
2
2
|
export declare const NotificationSubscription = "subscription NotificationSubscription {\n onUpdateNotification(notification: $notification) {\n added\n content\n from\n modified\n to\n }\n}";
|
|
3
|
-
//# sourceMappingURL=notification.d.ts.map
|
package/lib/graphql/session.d.ts
CHANGED
package/lib/index.d.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import type { FluxFramework } from '@nlabs/arkhamjs';
|
|
2
2
|
import type { MetropolisConfiguration } from './config/index.js';
|
|
3
|
-
import type { MetropolisAdapters } from './utils/
|
|
4
|
-
export { MetropolisContext
|
|
3
|
+
import type { MetropolisAdapters } from './utils/MetropolisContext.js';
|
|
4
|
+
export { MetropolisContext } from './utils/MetropolisContext.js';
|
|
5
5
|
export type { MetropolisConfiguration } from './config/index.js';
|
|
6
|
-
export type { MetropolisAdapters } from './utils/
|
|
6
|
+
export type { MetropolisAdapters } from './utils/MetropolisContext.js';
|
|
7
7
|
export declare const GOTHAM_ANALYTICS_EVENT = "nlabs:gotham:analytics";
|
|
8
8
|
export declare const onInit: (flux: FluxFramework) => Promise<void>;
|
|
9
9
|
export * from './stores/index.js';
|
|
10
|
-
export { appMutation, appQuery, publicMutation, publicQuery, rumMutation, refreshSession, resolveRestEndpoint, restRequest, uploadImage, type ApiResultsType, type ReaktorDbCollection, type RestApiOptions, type RestMethod } from './utils/api.js';
|
|
10
|
+
export { appMutation, appQuery, publicMutation, publicQuery, rumMutation, rumRequest, refreshSession, resolveRestEndpoint, restRequest, uploadImage, type ApiResultsType, type ReaktorDbCollection, type RestApiOptions, type RestMethod } from './utils/api.js';
|
|
11
11
|
export { resolveEnvironmentConfig } from './config/index.js';
|
|
12
12
|
export { getConfigFromFlux } from './utils/configUtils.js';
|
|
13
13
|
export interface MetropolisProps {
|
|
@@ -53,4 +53,3 @@ export * from './actions/restActions/restActions.js';
|
|
|
53
53
|
export * from './actions/videoActions/videoActions.js';
|
|
54
54
|
export * from './constants/Collections.js';
|
|
55
55
|
export * from './types/index.js';
|
|
56
|
-
//# sourceMappingURL=index.d.ts.map
|