@growsober/sdk 1.0.18 → 1.0.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/CLAUDE.md +11 -0
- package/dist/api/mutations/CLAUDE.md +12 -0
- package/dist/api/mutations/creator-community.d.ts +56 -0
- package/dist/api/mutations/creator-community.js +181 -0
- package/dist/api/mutations/creators.d.ts +30 -20
- package/dist/api/mutations/index.d.ts +1 -0
- package/dist/api/mutations/index.js +2 -1
- package/dist/api/mutations/products.d.ts +24 -0
- package/dist/api/mutations/products.js +28 -1
- package/dist/api/queries/creator-community.d.ts +83 -0
- package/dist/api/queries/creator-community.js +77 -0
- package/dist/api/queries/creators.d.ts +21 -17
- package/dist/api/queries/creators.js +6 -5
- package/dist/api/queries/index.d.ts +1 -0
- package/dist/api/queries/index.js +2 -1
- package/package.json +1 -1
- package/src/api/CLAUDE.md +12 -0
- package/src/api/mutations/CLAUDE.md +12 -0
- package/src/api/mutations/creator-community.ts +230 -0
- package/src/api/mutations/index.ts +1 -0
- package/src/api/mutations/products.ts +42 -0
- package/src/api/queries/CLAUDE.md +13 -0
- package/src/api/queries/creator-community.ts +154 -0
- package/src/api/queries/creators.ts +5 -3
- package/src/api/queries/index.ts +1 -0
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { UseQueryOptions } from '@tanstack/react-query';
|
|
2
|
+
export declare const communityKeys: {
|
|
3
|
+
all: readonly ["creator-community"];
|
|
4
|
+
detail: (creatorId: string) => readonly ["creator-community", string];
|
|
5
|
+
members: (creatorId: string) => readonly ["creator-community", string, "members"];
|
|
6
|
+
messages: (creatorId: string) => readonly ["creator-community", string, "messages"];
|
|
7
|
+
};
|
|
8
|
+
export interface CommunityCreator {
|
|
9
|
+
id: string;
|
|
10
|
+
displayName: string;
|
|
11
|
+
slug: string;
|
|
12
|
+
avatarUrl: string | null;
|
|
13
|
+
}
|
|
14
|
+
export interface CreatorCommunityResponse {
|
|
15
|
+
id: string;
|
|
16
|
+
creatorId: string;
|
|
17
|
+
name: string;
|
|
18
|
+
description: string | null;
|
|
19
|
+
memberCount: number;
|
|
20
|
+
messageCount: number;
|
|
21
|
+
isActive: boolean;
|
|
22
|
+
isLocked: boolean;
|
|
23
|
+
lastMessageAt: string | null;
|
|
24
|
+
createdAt: string;
|
|
25
|
+
updatedAt: string;
|
|
26
|
+
creator?: CommunityCreator;
|
|
27
|
+
}
|
|
28
|
+
export interface CommunityMemberResponse {
|
|
29
|
+
id: string;
|
|
30
|
+
communityId: string;
|
|
31
|
+
userId: string;
|
|
32
|
+
role: 'OWNER' | 'MODERATOR' | 'MEMBER';
|
|
33
|
+
nickname: string | null;
|
|
34
|
+
isMuted: boolean;
|
|
35
|
+
lastReadAt: string | null;
|
|
36
|
+
joinedAt: string;
|
|
37
|
+
leftAt: string | null;
|
|
38
|
+
sourceEventId: string | null;
|
|
39
|
+
user?: {
|
|
40
|
+
id: string;
|
|
41
|
+
name: string | null;
|
|
42
|
+
profileImage: string | null;
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
export interface CommunityMessageResponse {
|
|
46
|
+
id: string;
|
|
47
|
+
communityId: string;
|
|
48
|
+
userId: string;
|
|
49
|
+
content: string;
|
|
50
|
+
messageType: 'TEXT' | 'IMAGE' | 'SYSTEM' | 'ANNOUNCEMENT';
|
|
51
|
+
imageUrl: string | null;
|
|
52
|
+
replyToId: string | null;
|
|
53
|
+
isEdited: boolean;
|
|
54
|
+
isDeleted: boolean;
|
|
55
|
+
isPinned: boolean;
|
|
56
|
+
createdAt: string;
|
|
57
|
+
updatedAt: string;
|
|
58
|
+
user?: {
|
|
59
|
+
id: string;
|
|
60
|
+
name: string | null;
|
|
61
|
+
profileImage: string | null;
|
|
62
|
+
};
|
|
63
|
+
replyToContent?: string;
|
|
64
|
+
replyToUserName?: string;
|
|
65
|
+
}
|
|
66
|
+
export interface PaginatedCommunityMessagesResponse {
|
|
67
|
+
messages: CommunityMessageResponse[];
|
|
68
|
+
nextCursor: string | null;
|
|
69
|
+
hasMore: boolean;
|
|
70
|
+
total: number;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Get a creator's community
|
|
74
|
+
*/
|
|
75
|
+
export declare function useCreatorCommunity(creatorId: string | undefined, options?: Omit<UseQueryOptions<CreatorCommunityResponse>, 'queryKey' | 'queryFn'>): import("@tanstack/react-query").UseQueryResult<CreatorCommunityResponse, Error>;
|
|
76
|
+
/**
|
|
77
|
+
* Get community members
|
|
78
|
+
*/
|
|
79
|
+
export declare function useCommunityMembers(creatorId: string | undefined, options?: Omit<UseQueryOptions<CommunityMemberResponse[]>, 'queryKey' | 'queryFn'>): import("@tanstack/react-query").UseQueryResult<CommunityMemberResponse[], Error>;
|
|
80
|
+
/**
|
|
81
|
+
* Get community messages with infinite scroll pagination
|
|
82
|
+
*/
|
|
83
|
+
export declare function useCommunityMessages(creatorId: string | undefined, limit?: number): import("@tanstack/react-query").UseInfiniteQueryResult<import("@tanstack/react-query").InfiniteData<PaginatedCommunityMessagesResponse, unknown>, Error>;
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.communityKeys = void 0;
|
|
4
|
+
exports.useCreatorCommunity = useCreatorCommunity;
|
|
5
|
+
exports.useCommunityMembers = useCommunityMembers;
|
|
6
|
+
exports.useCommunityMessages = useCommunityMessages;
|
|
7
|
+
const react_query_1 = require("@tanstack/react-query");
|
|
8
|
+
const client_1 = require("../client");
|
|
9
|
+
// ============================================================================
|
|
10
|
+
// QUERY KEYS
|
|
11
|
+
// ============================================================================
|
|
12
|
+
exports.communityKeys = {
|
|
13
|
+
all: ['creator-community'],
|
|
14
|
+
detail: (creatorId) => [...exports.communityKeys.all, creatorId],
|
|
15
|
+
members: (creatorId) => [...exports.communityKeys.detail(creatorId), 'members'],
|
|
16
|
+
messages: (creatorId) => [...exports.communityKeys.detail(creatorId), 'messages'],
|
|
17
|
+
};
|
|
18
|
+
// ============================================================================
|
|
19
|
+
// HOOKS
|
|
20
|
+
// ============================================================================
|
|
21
|
+
/**
|
|
22
|
+
* Get a creator's community
|
|
23
|
+
*/
|
|
24
|
+
function useCreatorCommunity(creatorId, options) {
|
|
25
|
+
return (0, react_query_1.useQuery)({
|
|
26
|
+
queryKey: exports.communityKeys.detail(creatorId || ''),
|
|
27
|
+
queryFn: async () => {
|
|
28
|
+
if (!creatorId)
|
|
29
|
+
throw new Error('Creator ID is required');
|
|
30
|
+
const client = (0, client_1.getApiClient)();
|
|
31
|
+
const response = await client.get(`/api/v1/creators/${creatorId}/community`);
|
|
32
|
+
return response.data?.data || response.data;
|
|
33
|
+
},
|
|
34
|
+
enabled: !!creatorId,
|
|
35
|
+
...options,
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Get community members
|
|
40
|
+
*/
|
|
41
|
+
function useCommunityMembers(creatorId, options) {
|
|
42
|
+
return (0, react_query_1.useQuery)({
|
|
43
|
+
queryKey: exports.communityKeys.members(creatorId || ''),
|
|
44
|
+
queryFn: async () => {
|
|
45
|
+
if (!creatorId)
|
|
46
|
+
throw new Error('Creator ID is required');
|
|
47
|
+
const client = (0, client_1.getApiClient)();
|
|
48
|
+
const response = await client.get(`/api/v1/creators/${creatorId}/community/members`);
|
|
49
|
+
return response.data?.data || response.data || [];
|
|
50
|
+
},
|
|
51
|
+
enabled: !!creatorId,
|
|
52
|
+
...options,
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Get community messages with infinite scroll pagination
|
|
57
|
+
*/
|
|
58
|
+
function useCommunityMessages(creatorId, limit = 50) {
|
|
59
|
+
return (0, react_query_1.useInfiniteQuery)({
|
|
60
|
+
queryKey: exports.communityKeys.messages(creatorId || ''),
|
|
61
|
+
queryFn: async ({ pageParam }) => {
|
|
62
|
+
if (!creatorId)
|
|
63
|
+
throw new Error('Creator ID is required');
|
|
64
|
+
const client = (0, client_1.getApiClient)();
|
|
65
|
+
const params = new URLSearchParams({ limit: String(limit) });
|
|
66
|
+
if (pageParam) {
|
|
67
|
+
params.append('cursor', pageParam);
|
|
68
|
+
}
|
|
69
|
+
const response = await client.get(`/api/v1/creators/${creatorId}/community/messages?${params.toString()}`);
|
|
70
|
+
return response.data?.data || response.data;
|
|
71
|
+
},
|
|
72
|
+
initialPageParam: undefined,
|
|
73
|
+
getNextPageParam: (lastPage) => lastPage.nextCursor,
|
|
74
|
+
enabled: !!creatorId,
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRvci1jb21tdW5pdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXBpL3F1ZXJpZXMvY3JlYXRvci1jb21tdW5pdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBOEZBLGtEQWVDO0FBS0Qsa0RBZUM7QUFLRCxvREFtQkM7QUF6SkQsdURBQW9GO0FBQ3BGLHNDQUF5QztBQUV6QywrRUFBK0U7QUFDL0UsYUFBYTtBQUNiLCtFQUErRTtBQUVsRSxRQUFBLGFBQWEsR0FBRztJQUMzQixHQUFHLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBVTtJQUNuQyxNQUFNLEVBQUUsQ0FBQyxTQUFpQixFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcscUJBQWEsQ0FBQyxHQUFHLEVBQUUsU0FBUyxDQUFVO0lBQ3pFLE9BQU8sRUFBRSxDQUFDLFNBQWlCLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxxQkFBYSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsRUFBRSxTQUFTLENBQVU7SUFDeEYsUUFBUSxFQUFFLENBQUMsU0FBaUIsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLHFCQUFhLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxFQUFFLFVBQVUsQ0FBVTtDQUMzRixDQUFDO0FBMkVGLCtFQUErRTtBQUMvRSxRQUFRO0FBQ1IsK0VBQStFO0FBRS9FOztHQUVHO0FBQ0gsU0FBZ0IsbUJBQW1CLENBQ2pDLFNBQTZCLEVBQzdCLE9BQWlGO0lBRWpGLE9BQU8sSUFBQSxzQkFBUSxFQUFDO1FBQ2QsUUFBUSxFQUFFLHFCQUFhLENBQUMsTUFBTSxDQUFDLFNBQVMsSUFBSSxFQUFFLENBQUM7UUFDL0MsT0FBTyxFQUFFLEtBQUssSUFBdUMsRUFBRTtZQUNyRCxJQUFJLENBQUMsU0FBUztnQkFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHdCQUF3QixDQUFDLENBQUM7WUFDMUQsTUFBTSxNQUFNLEdBQUcsSUFBQSxxQkFBWSxHQUFFLENBQUM7WUFDOUIsTUFBTSxRQUFRLEdBQUcsTUFBTSxNQUFNLENBQUMsR0FBRyxDQUFDLG9CQUFvQixTQUFTLFlBQVksQ0FBQyxDQUFDO1lBQzdFLE9BQU8sUUFBUSxDQUFDLElBQUksRUFBRSxJQUFJLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQztRQUM5QyxDQUFDO1FBQ0QsT0FBTyxFQUFFLENBQUMsQ0FBQyxTQUFTO1FBQ3BCLEdBQUcsT0FBTztLQUNYLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLG1CQUFtQixDQUNqQyxTQUE2QixFQUM3QixPQUFrRjtJQUVsRixPQUFPLElBQUEsc0JBQVEsRUFBQztRQUNkLFFBQVEsRUFBRSxxQkFBYSxDQUFDLE9BQU8sQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDO1FBQ2hELE9BQU8sRUFBRSxLQUFLLElBQXdDLEVBQUU7WUFDdEQsSUFBSSxDQUFDLFNBQVM7Z0JBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1lBQzFELE1BQU0sTUFBTSxHQUFHLElBQUEscUJBQVksR0FBRSxDQUFDO1lBQzlCLE1BQU0sUUFBUSxHQUFHLE1BQU0sTUFBTSxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsU0FBUyxvQkFBb0IsQ0FBQyxDQUFDO1lBQ3JGLE9BQU8sUUFBUSxDQUFDLElBQUksRUFBRSxJQUFJLElBQUksUUFBUSxDQUFDLElBQUksSUFBSSxFQUFFLENBQUM7UUFDcEQsQ0FBQztRQUNELE9BQU8sRUFBRSxDQUFDLENBQUMsU0FBUztRQUNwQixHQUFHLE9BQU87S0FDWCxDQUFDLENBQUM7QUFDTCxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQixvQkFBb0IsQ0FBQyxTQUE2QixFQUFFLEtBQUssR0FBRyxFQUFFO0lBQzVFLE9BQU8sSUFBQSw4QkFBZ0IsRUFBQztRQUN0QixRQUFRLEVBQUUscUJBQWEsQ0FBQyxRQUFRLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQztRQUNqRCxPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQStDLEVBQUU7WUFDNUUsSUFBSSxDQUFDLFNBQVM7Z0JBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1lBQzFELE1BQU0sTUFBTSxHQUFHLElBQUEscUJBQVksR0FBRSxDQUFDO1lBQzlCLE1BQU0sTUFBTSxHQUFHLElBQUksZUFBZSxDQUFDLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDN0QsSUFBSSxTQUFTLEVBQUUsQ0FBQztnQkFDZCxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUNyQyxDQUFDO1lBQ0QsTUFBTSxRQUFRLEdBQUcsTUFBTSxNQUFNLENBQUMsR0FBRyxDQUMvQixvQkFBb0IsU0FBUyx1QkFBdUIsTUFBTSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQ3hFLENBQUM7WUFDRixPQUFPLFFBQVEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxJQUFJLFFBQVEsQ0FBQyxJQUFJLENBQUM7UUFDOUMsQ0FBQztRQUNELGdCQUFnQixFQUFFLFNBQStCO1FBQ2pELGdCQUFnQixFQUFFLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsVUFBVTtRQUNuRCxPQUFPLEVBQUUsQ0FBQyxDQUFDLFNBQVM7S0FDckIsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZVF1ZXJ5LCB1c2VJbmZpbml0ZVF1ZXJ5LCBVc2VRdWVyeU9wdGlvbnMgfSBmcm9tICdAdGFuc3RhY2svcmVhY3QtcXVlcnknO1xuaW1wb3J0IHsgZ2V0QXBpQ2xpZW50IH0gZnJvbSAnLi4vY2xpZW50JztcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUVVFUlkgS0VZU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgY29uc3QgY29tbXVuaXR5S2V5cyA9IHtcbiAgYWxsOiBbJ2NyZWF0b3ItY29tbXVuaXR5J10gYXMgY29uc3QsXG4gIGRldGFpbDogKGNyZWF0b3JJZDogc3RyaW5nKSA9PiBbLi4uY29tbXVuaXR5S2V5cy5hbGwsIGNyZWF0b3JJZF0gYXMgY29uc3QsXG4gIG1lbWJlcnM6IChjcmVhdG9ySWQ6IHN0cmluZykgPT4gWy4uLmNvbW11bml0eUtleXMuZGV0YWlsKGNyZWF0b3JJZCksICdtZW1iZXJzJ10gYXMgY29uc3QsXG4gIG1lc3NhZ2VzOiAoY3JlYXRvcklkOiBzdHJpbmcpID0+IFsuLi5jb21tdW5pdHlLZXlzLmRldGFpbChjcmVhdG9ySWQpLCAnbWVzc2FnZXMnXSBhcyBjb25zdCxcbn07XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFRZUEVTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29tbXVuaXR5Q3JlYXRvciB7XG4gIGlkOiBzdHJpbmc7XG4gIGRpc3BsYXlOYW1lOiBzdHJpbmc7XG4gIHNsdWc6IHN0cmluZztcbiAgYXZhdGFyVXJsOiBzdHJpbmcgfCBudWxsO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0b3JDb21tdW5pdHlSZXNwb25zZSB7XG4gIGlkOiBzdHJpbmc7XG4gIGNyZWF0b3JJZDogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uOiBzdHJpbmcgfCBudWxsO1xuICBtZW1iZXJDb3VudDogbnVtYmVyO1xuICBtZXNzYWdlQ291bnQ6IG51bWJlcjtcbiAgaXNBY3RpdmU6IGJvb2xlYW47XG4gIGlzTG9ja2VkOiBib29sZWFuO1xuICBsYXN0TWVzc2FnZUF0OiBzdHJpbmcgfCBudWxsO1xuICBjcmVhdGVkQXQ6IHN0cmluZztcbiAgdXBkYXRlZEF0OiBzdHJpbmc7XG4gIGNyZWF0b3I/OiBDb21tdW5pdHlDcmVhdG9yO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbW11bml0eU1lbWJlclJlc3BvbnNlIHtcbiAgaWQ6IHN0cmluZztcbiAgY29tbXVuaXR5SWQ6IHN0cmluZztcbiAgdXNlcklkOiBzdHJpbmc7XG4gIHJvbGU6ICdPV05FUicgfCAnTU9ERVJBVE9SJyB8ICdNRU1CRVInO1xuICBuaWNrbmFtZTogc3RyaW5nIHwgbnVsbDtcbiAgaXNNdXRlZDogYm9vbGVhbjtcbiAgbGFzdFJlYWRBdDogc3RyaW5nIHwgbnVsbDtcbiAgam9pbmVkQXQ6IHN0cmluZztcbiAgbGVmdEF0OiBzdHJpbmcgfCBudWxsO1xuICBzb3VyY2VFdmVudElkOiBzdHJpbmcgfCBudWxsO1xuICB1c2VyPzoge1xuICAgIGlkOiBzdHJpbmc7XG4gICAgbmFtZTogc3RyaW5nIHwgbnVsbDtcbiAgICBwcm9maWxlSW1hZ2U6IHN0cmluZyB8IG51bGw7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29tbXVuaXR5TWVzc2FnZVJlc3BvbnNlIHtcbiAgaWQ6IHN0cmluZztcbiAgY29tbXVuaXR5SWQ6IHN0cmluZztcbiAgdXNlcklkOiBzdHJpbmc7XG4gIGNvbnRlbnQ6IHN0cmluZztcbiAgbWVzc2FnZVR5cGU6ICdURVhUJyB8ICdJTUFHRScgfCAnU1lTVEVNJyB8ICdBTk5PVU5DRU1FTlQnO1xuICBpbWFnZVVybDogc3RyaW5nIHwgbnVsbDtcbiAgcmVwbHlUb0lkOiBzdHJpbmcgfCBudWxsO1xuICBpc0VkaXRlZDogYm9vbGVhbjtcbiAgaXNEZWxldGVkOiBib29sZWFuO1xuICBpc1Bpbm5lZDogYm9vbGVhbjtcbiAgY3JlYXRlZEF0OiBzdHJpbmc7XG4gIHVwZGF0ZWRBdDogc3RyaW5nO1xuICB1c2VyPzoge1xuICAgIGlkOiBzdHJpbmc7XG4gICAgbmFtZTogc3RyaW5nIHwgbnVsbDtcbiAgICBwcm9maWxlSW1hZ2U6IHN0cmluZyB8IG51bGw7XG4gIH07XG4gIHJlcGx5VG9Db250ZW50Pzogc3RyaW5nO1xuICByZXBseVRvVXNlck5hbWU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFnaW5hdGVkQ29tbXVuaXR5TWVzc2FnZXNSZXNwb25zZSB7XG4gIG1lc3NhZ2VzOiBDb21tdW5pdHlNZXNzYWdlUmVzcG9uc2VbXTtcbiAgbmV4dEN1cnNvcjogc3RyaW5nIHwgbnVsbDtcbiAgaGFzTW9yZTogYm9vbGVhbjtcbiAgdG90YWw6IG51bWJlcjtcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gSE9PS1Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBHZXQgYSBjcmVhdG9yJ3MgY29tbXVuaXR5XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VDcmVhdG9yQ29tbXVuaXR5KFxuICBjcmVhdG9ySWQ6IHN0cmluZyB8IHVuZGVmaW5lZCxcbiAgb3B0aW9ucz86IE9taXQ8VXNlUXVlcnlPcHRpb25zPENyZWF0b3JDb21tdW5pdHlSZXNwb25zZT4sICdxdWVyeUtleScgfCAncXVlcnlGbic+XG4pIHtcbiAgcmV0dXJuIHVzZVF1ZXJ5KHtcbiAgICBxdWVyeUtleTogY29tbXVuaXR5S2V5cy5kZXRhaWwoY3JlYXRvcklkIHx8ICcnKSxcbiAgICBxdWVyeUZuOiBhc3luYyAoKTogUHJvbWlzZTxDcmVhdG9yQ29tbXVuaXR5UmVzcG9uc2U+ID0+IHtcbiAgICAgIGlmICghY3JlYXRvcklkKSB0aHJvdyBuZXcgRXJyb3IoJ0NyZWF0b3IgSUQgaXMgcmVxdWlyZWQnKTtcbiAgICAgIGNvbnN0IGNsaWVudCA9IGdldEFwaUNsaWVudCgpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZ2V0KGAvYXBpL3YxL2NyZWF0b3JzLyR7Y3JlYXRvcklkfS9jb21tdW5pdHlgKTtcbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhPy5kYXRhIHx8IHJlc3BvbnNlLmRhdGE7XG4gICAgfSxcbiAgICBlbmFibGVkOiAhIWNyZWF0b3JJZCxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcbn1cblxuLyoqXG4gKiBHZXQgY29tbXVuaXR5IG1lbWJlcnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVzZUNvbW11bml0eU1lbWJlcnMoXG4gIGNyZWF0b3JJZDogc3RyaW5nIHwgdW5kZWZpbmVkLFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8Q29tbXVuaXR5TWVtYmVyUmVzcG9uc2VbXT4sICdxdWVyeUtleScgfCAncXVlcnlGbic+XG4pIHtcbiAgcmV0dXJuIHVzZVF1ZXJ5KHtcbiAgICBxdWVyeUtleTogY29tbXVuaXR5S2V5cy5tZW1iZXJzKGNyZWF0b3JJZCB8fCAnJyksXG4gICAgcXVlcnlGbjogYXN5bmMgKCk6IFByb21pc2U8Q29tbXVuaXR5TWVtYmVyUmVzcG9uc2VbXT4gPT4ge1xuICAgICAgaWYgKCFjcmVhdG9ySWQpIHRocm93IG5ldyBFcnJvcignQ3JlYXRvciBJRCBpcyByZXF1aXJlZCcpO1xuICAgICAgY29uc3QgY2xpZW50ID0gZ2V0QXBpQ2xpZW50KCk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5nZXQoYC9hcGkvdjEvY3JlYXRvcnMvJHtjcmVhdG9ySWR9L2NvbW11bml0eS9tZW1iZXJzYCk7XG4gICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YT8uZGF0YSB8fCByZXNwb25zZS5kYXRhIHx8IFtdO1xuICAgIH0sXG4gICAgZW5hYmxlZDogISFjcmVhdG9ySWQsXG4gICAgLi4ub3B0aW9ucyxcbiAgfSk7XG59XG5cbi8qKlxuICogR2V0IGNvbW11bml0eSBtZXNzYWdlcyB3aXRoIGluZmluaXRlIHNjcm9sbCBwYWdpbmF0aW9uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VDb21tdW5pdHlNZXNzYWdlcyhjcmVhdG9ySWQ6IHN0cmluZyB8IHVuZGVmaW5lZCwgbGltaXQgPSA1MCkge1xuICByZXR1cm4gdXNlSW5maW5pdGVRdWVyeSh7XG4gICAgcXVlcnlLZXk6IGNvbW11bml0eUtleXMubWVzc2FnZXMoY3JlYXRvcklkIHx8ICcnKSxcbiAgICBxdWVyeUZuOiBhc3luYyAoeyBwYWdlUGFyYW0gfSk6IFByb21pc2U8UGFnaW5hdGVkQ29tbXVuaXR5TWVzc2FnZXNSZXNwb25zZT4gPT4ge1xuICAgICAgaWYgKCFjcmVhdG9ySWQpIHRocm93IG5ldyBFcnJvcignQ3JlYXRvciBJRCBpcyByZXF1aXJlZCcpO1xuICAgICAgY29uc3QgY2xpZW50ID0gZ2V0QXBpQ2xpZW50KCk7XG4gICAgICBjb25zdCBwYXJhbXMgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKHsgbGltaXQ6IFN0cmluZyhsaW1pdCkgfSk7XG4gICAgICBpZiAocGFnZVBhcmFtKSB7XG4gICAgICAgIHBhcmFtcy5hcHBlbmQoJ2N1cnNvcicsIHBhZ2VQYXJhbSk7XG4gICAgICB9XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5nZXQoXG4gICAgICAgIGAvYXBpL3YxL2NyZWF0b3JzLyR7Y3JlYXRvcklkfS9jb21tdW5pdHkvbWVzc2FnZXM/JHtwYXJhbXMudG9TdHJpbmcoKX1gXG4gICAgICApO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE/LmRhdGEgfHwgcmVzcG9uc2UuZGF0YTtcbiAgICB9LFxuICAgIGluaXRpYWxQYWdlUGFyYW06IHVuZGVmaW5lZCBhcyBzdHJpbmcgfCB1bmRlZmluZWQsXG4gICAgZ2V0TmV4dFBhZ2VQYXJhbTogKGxhc3RQYWdlKSA9PiBsYXN0UGFnZS5uZXh0Q3Vyc29yLFxuICAgIGVuYWJsZWQ6ICEhY3JlYXRvcklkLFxuICB9KTtcbn1cbiJdfQ==
|
|
@@ -71,8 +71,8 @@ export declare function useCreator(id: string, options?: Omit<UseQueryOptions<Cr
|
|
|
71
71
|
userId: string;
|
|
72
72
|
slug: string;
|
|
73
73
|
displayName: string;
|
|
74
|
-
bio?:
|
|
75
|
-
avatarUrl?:
|
|
74
|
+
bio?: string | null;
|
|
75
|
+
avatarUrl?: string | null;
|
|
76
76
|
cityIds: string[];
|
|
77
77
|
canFacilitate: boolean;
|
|
78
78
|
canCreateContent: boolean;
|
|
@@ -102,8 +102,8 @@ export declare function useCreatorBySlug(slug: string, options?: Omit<UseQueryOp
|
|
|
102
102
|
userId: string;
|
|
103
103
|
slug: string;
|
|
104
104
|
displayName: string;
|
|
105
|
-
bio?:
|
|
106
|
-
avatarUrl?:
|
|
105
|
+
bio?: string | null;
|
|
106
|
+
avatarUrl?: string | null;
|
|
107
107
|
cityIds: string[];
|
|
108
108
|
canFacilitate: boolean;
|
|
109
109
|
canCreateContent: boolean;
|
|
@@ -133,8 +133,8 @@ export declare function useCreatorByUser(userId: string, options?: Omit<UseQuery
|
|
|
133
133
|
userId: string;
|
|
134
134
|
slug: string;
|
|
135
135
|
displayName: string;
|
|
136
|
-
bio?:
|
|
137
|
-
avatarUrl?:
|
|
136
|
+
bio?: string | null;
|
|
137
|
+
avatarUrl?: string | null;
|
|
138
138
|
cityIds: string[];
|
|
139
139
|
canFacilitate: boolean;
|
|
140
140
|
canCreateContent: boolean;
|
|
@@ -163,8 +163,8 @@ export declare function useMyCreatorProfile(options?: Omit<UseQueryOptions<Creat
|
|
|
163
163
|
userId: string;
|
|
164
164
|
slug: string;
|
|
165
165
|
displayName: string;
|
|
166
|
-
bio?:
|
|
167
|
-
avatarUrl?:
|
|
166
|
+
bio?: string | null;
|
|
167
|
+
avatarUrl?: string | null;
|
|
168
168
|
cityIds: string[];
|
|
169
169
|
canFacilitate: boolean;
|
|
170
170
|
canCreateContent: boolean;
|
|
@@ -286,7 +286,7 @@ export declare function useCreatorAllContent(creatorId: string, options?: Omit<U
|
|
|
286
286
|
* const { data, isLoading } = useCreatorEvents('creator-123');
|
|
287
287
|
* ```
|
|
288
288
|
*/
|
|
289
|
-
export declare function useCreatorEvents(creatorId: string, upcoming?: boolean, options?: Omit<UseQueryOptions<EventResponse[]>, 'queryKey' | 'queryFn'>): import("@tanstack/react-query").UseQueryResult<{
|
|
289
|
+
export declare function useCreatorEvents(creatorId: string, upcoming?: boolean, includeUnpublished?: boolean, options?: Omit<UseQueryOptions<EventResponse[]>, 'queryKey' | 'queryFn'>): import("@tanstack/react-query").UseQueryResult<{
|
|
290
290
|
id: string;
|
|
291
291
|
title: string;
|
|
292
292
|
slug?: Record<string, never>;
|
|
@@ -361,16 +361,18 @@ export declare function useCreatorGatheringTypes(creatorId: string, options?: Om
|
|
|
361
361
|
id: string;
|
|
362
362
|
creatorId: string;
|
|
363
363
|
name: string;
|
|
364
|
-
description?:
|
|
364
|
+
description?: string | null;
|
|
365
365
|
duration: number;
|
|
366
366
|
vibes: string[];
|
|
367
367
|
category?: "WALK" | "COFFEE" | "MOVEMENT" | "CONVERSATION" | "CREATIVE" | "COWORKING" | null;
|
|
368
|
-
|
|
368
|
+
timeOfDay?: string | null;
|
|
369
|
+
venueType?: string | null;
|
|
370
|
+
suggestedPrice?: number | null;
|
|
369
371
|
currency: string;
|
|
370
372
|
isAiGenerated: boolean;
|
|
371
373
|
isApproved: boolean;
|
|
372
|
-
aiPromptContext?:
|
|
373
|
-
defaultVenueId?:
|
|
374
|
+
aiPromptContext?: string | null;
|
|
375
|
+
defaultVenueId?: string | null;
|
|
374
376
|
defaultVenue?: Record<string, never> | null;
|
|
375
377
|
createdAt: string;
|
|
376
378
|
updatedAt: string;
|
|
@@ -390,16 +392,18 @@ export declare function useCreatorApprovedGatheringTypes(creatorId: string, opti
|
|
|
390
392
|
id: string;
|
|
391
393
|
creatorId: string;
|
|
392
394
|
name: string;
|
|
393
|
-
description?:
|
|
395
|
+
description?: string | null;
|
|
394
396
|
duration: number;
|
|
395
397
|
vibes: string[];
|
|
396
398
|
category?: "WALK" | "COFFEE" | "MOVEMENT" | "CONVERSATION" | "CREATIVE" | "COWORKING" | null;
|
|
397
|
-
|
|
399
|
+
timeOfDay?: string | null;
|
|
400
|
+
venueType?: string | null;
|
|
401
|
+
suggestedPrice?: number | null;
|
|
398
402
|
currency: string;
|
|
399
403
|
isAiGenerated: boolean;
|
|
400
404
|
isApproved: boolean;
|
|
401
|
-
aiPromptContext?:
|
|
402
|
-
defaultVenueId?:
|
|
405
|
+
aiPromptContext?: string | null;
|
|
406
|
+
defaultVenueId?: string | null;
|
|
403
407
|
defaultVenue?: Record<string, never> | null;
|
|
404
408
|
createdAt: string;
|
|
405
409
|
updatedAt: string;
|
|
@@ -238,15 +238,16 @@ function useCreatorAllContent(creatorId, options) {
|
|
|
238
238
|
* const { data, isLoading } = useCreatorEvents('creator-123');
|
|
239
239
|
* ```
|
|
240
240
|
*/
|
|
241
|
-
function useCreatorEvents(creatorId, upcoming = true, options) {
|
|
241
|
+
function useCreatorEvents(creatorId, upcoming = true, includeUnpublished = false, options) {
|
|
242
242
|
return (0, react_query_1.useQuery)({
|
|
243
|
-
queryKey: exports.creatorKeys.events(creatorId),
|
|
243
|
+
queryKey: [...exports.creatorKeys.events(creatorId), { upcoming, includeUnpublished }],
|
|
244
244
|
queryFn: async () => {
|
|
245
245
|
const client = (0, client_1.getApiClient)();
|
|
246
246
|
const response = await client.get(`/api/v1/creators/${creatorId}/events`, {
|
|
247
|
-
params: { upcoming },
|
|
247
|
+
params: { upcoming, includeUnpublished },
|
|
248
248
|
});
|
|
249
|
-
|
|
249
|
+
// Handle wrapped response {data: [...], meta: {...}} or direct array
|
|
250
|
+
return response.data?.data || response.data || [];
|
|
250
251
|
},
|
|
251
252
|
enabled: !!creatorId,
|
|
252
253
|
...options,
|
|
@@ -324,4 +325,4 @@ function useCreatorApprovedGatheringTypes(creatorId, options) {
|
|
|
324
325
|
...options,
|
|
325
326
|
});
|
|
326
327
|
}
|
|
327
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXBpL3F1ZXJpZXMvY3JlYXRvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBa0ZBLGtDQWVDO0FBYUQsZ0NBY0M7QUFhRCw0Q0FjQztBQWFELDRDQWNDO0FBWUQsa0RBWUM7QUFhRCx3REFjQztBQWFELDhDQWNDO0FBY0Qsb0RBY0M7QUFjRCw0Q0FpQkM7QUFhRCw4Q0FjQztBQWlCRCw0REFjQztBQWFELDRFQWNDO0FBaFpELHVEQUFrRTtBQUNsRSxzQ0FBeUM7QUFVekMsK0VBQStFO0FBQy9FLG9CQUFvQjtBQUNwQiwrRUFBK0U7QUFFbEUsUUFBQSxXQUFXLEdBQUc7SUFDekIsR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFVO0lBQzFCLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsbUJBQVcsQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFVO0lBQ2xELElBQUksRUFBRSxDQUFDLE9BQXdCLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxtQkFBVyxDQUFDLEtBQUssRUFBRSxFQUFFLE9BQU8sQ0FBVTtJQUM5RSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxHQUFHLG1CQUFXLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBVTtJQUN0RCxNQUFNLEVBQUUsQ0FBQyxFQUFVLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxtQkFBVyxDQUFDLE9BQU8sRUFBRSxFQUFFLEVBQUUsQ0FBVTtJQUMvRCxJQUFJLEVBQUUsQ0FBQyxJQUFZLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxtQkFBVyxDQUFDLEdBQUcsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFVO0lBQ25FLE1BQU0sRUFBRSxDQUFDLE1BQWMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLG1CQUFXLENBQUMsR0FBRyxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQVU7SUFDekUsRUFBRSxFQUFFLEdB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QUcsTUFBTSxNQUFNLENBQUMsR0FBRyxDQUFDLG9CQUFvQixTQUFTLDJCQUEyQixDQUFDLENBQUM7WUFDNUYsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQ3ZCLENBQUM7UUFDRCxPQUFPLEVBQUUsQ0FBQyxDQUFDLFNBQVM7UUFDcEIsR0FBRyxPQUFPO0tBQ1gsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZVF1ZXJ5LCBVc2VRdWVyeU9wdGlvbnMgfSBmcm9tICdAdGFuc3RhY2svcmVhY3QtcXVlcnknO1xuaW1wb3J0IHsgZ2V0QXBpQ2xpZW50IH0gZnJvbSAnLi4vY2xpZW50JztcbmltcG9ydCB0eXBlIHtcbiAgQ3JlYXRvclJlc3BvbnNlLFxuICBDcmVhdG9yQXZhaWxhYmlsaXR5UmVzcG9uc2UsXG4gIEV2ZW50UmVzcG9uc2UsXG4gIExpYnJhcnlDb250ZW50UmVzcG9uc2UsXG4gIFJld2FyZFJlc3BvbnNlLFxuICBHYXRoZXJpbmdUeXBlUmVzcG9uc2UsXG59IGZyb20gJy4uL3R5cGVzJztcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUVVFUlkgS0VZIEZBQ1RPUllcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0IGNvbnN0IGNyZWF0b3JLZXlzID0ge1xuICBhbGw6IFsnY3JlYXRvcnMnXSBhcyBjb25zdCxcbiAgbGlzdHM6ICgpID0+IFsuLi5jcmVhdG9yS2V5cy5hbGwsICdsaXN0J10gYXMgY29uc3QsXG4gIGxpc3Q6IChmaWx0ZXJzPzogQ3JlYXRvckZpbHRlcnMpID0+IFsuLi5jcmVhdG9yS2V5cy5saXN0cygpLCBmaWx0ZXJzXSBhcyBjb25zdCxcbiAgZGV0YWlsczogKCkgPT4gWy4uLmNyZWF0b3JLZXlzLmFsbCwgJ2RldGFpbCddIGFzIGNvbnN0LFxuICBkZXRhaWw6IChpZDogc3RyaW5nKSA9PiBbLi4uY3JlYXRvcktleXMuZGV0YWlscygpLCBpZF0gYXMgY29uc3QsXG4gIHNsdWc6IChzbHVnOiBzdHJpbmcpID0+IFsuLi5jcmVhdG9yS2V5cy5hbGwsICdzbHVnJywgc2x1Z10gYXMgY29uc3QsXG4gIGJ5VXNlcjogKHVzZXJJZDogc3RyaW5nKSA9PiBbLi4uY3JlYXRvcktleXMuYWxsLCAndXNlcicsIHVzZXJJZF0gYXMgY29uc3QsXG4gIG1lOiAoKSA9PiBbLi4uY3JlYXRvcktleXMuYWxsLCAnbWUnXSBhcyBjb25zdCxcbiAgYXZhaWxhYmlsaXR5OiAoY3JlYXRvcklkOiBzdHJpbmcpID0+IFsuLi5jcmVhdG9yS2V5cy5kZXRhaWwoY3JlYXRvcklkKSwgJ2F2YWlsYWJpbGl0eSddIGFzIGNvbnN0LFxuICBjb250ZW50OiAoY3JlYXRvcklkOiBzdHJpbmcpID0+IFsuLi5jcmVhdG9yS2V5cy5kZXRhaWwoY3JlYXRvcklkKSwgJ2NvbnRlbnQnXSBhcyBjb25zdCxcbiAgYWxsQ29udGVudDogKGNyZWF0b3JJZDogc3RyaW5nKSA9PiBbLi4uY3JlYXRvcktleXMuZGV0YWlsKGNyZWF0b3JJZCksICdjb250ZW50JywgJ2FsbCddIGFzIGNvbnN0LFxuICBldmVudHM6IChjcmVhdG9ySWQ6IHN0cmluZykgPT4gWy4uLmNyZWF0b3JLZXlzLmRldGFpbChjcmVhdG9ySWQpLCAnZXZlbnRzJ10gYXMgY29uc3QsXG4gIHJld2FyZHM6IChjcmVhdG9ySWQ6IHN0cmluZykgPT4gWy4uLmNyZWF0b3JLZXlzLmRldGFpbChjcmVhdG9ySWQpLCAncmV3YXJkcyddIGFzIGNvbnN0LFxuICBnYXRoZXJpbmdUeXBlczogKGNyZWF0b3JJZDogc3RyaW5nKSA9PiBbLi4uY3JlYXRvcktleXMuZGV0YWlsKGNyZWF0b3JJZCksICdnYXRoZXJpbmctdHlwZXMnXSBhcyBjb25zdCxcbiAgYXBwcm92ZWRHYXRoZXJpbmdUeXBlczogKGNyZWF0b3JJZDogc3RyaW5nKSA9PiBbLi4uY3JlYXRvcktleXMuZGV0YWlsKGNyZWF0b3JJZCksICdnYXRoZXJpbmctdHlwZXMnLCAnYXBwcm92ZWQnXSBhcyBjb25zdCxcbn07XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFRZUEVTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRvckZpbHRlcnMge1xuICBwYWdlPzogbnVtYmVyO1xuICBsaW1pdD86IG51bWJlcjtcbiAgc2VhcmNoPzogc3RyaW5nO1xuICBjaXR5SWQ/OiBzdHJpbmc7XG4gIGNhbkZhY2lsaXRhdGU/OiBib29sZWFuO1xuICBjYW5DcmVhdGVDb250ZW50PzogYm9vbGVhbjtcbiAgaXNJbmZsdWVuY2VyPzogYm9vbGVhbjtcbiAgaXNWZXJpZmllZD86IGJvb2xlYW47XG4gIHNvcnRCeT86IHN0cmluZztcbiAgc29ydE9yZGVyPzogJ2FzYycgfCAnZGVzYyc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFnaW5hdGVkQ3JlYXRvcnNSZXNwb25zZSB7XG4gIGNyZWF0b3JzOiBDcmVhdG9yUmVzcG9uc2VbXTtcbiAgbWV0YToge1xuICAgIHRvdGFsOiBudW1iZXI7XG4gICAgcGFnZTogbnVtYmVyO1xuICAgIGxpbWl0OiBudW1iZXI7XG4gICAgdG90YWxQYWdlczogbnVtYmVyO1xuICB9O1xufVxuXG4vLyBSZS1leHBvcnQgUmV3YXJkUmVzcG9uc2UgZnJvbSB0eXBlcyBmb3IgY29udmVuaWVuY2VcbmV4cG9ydCB0eXBlIHsgUmV3YXJkUmVzcG9uc2UgfSBmcm9tICcuLi90eXBlcyc7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFFVRVJZIEhPT0tTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogR2V0IHBhZ2luYXRlZCBsaXN0IG9mIGNyZWF0b3JzIHdpdGggb3B0aW9uYWwgZmlsdGVyc1xuICpcbiAqIEBwYXJhbSBmaWx0ZXJzIC0gUXVlcnkgcGFyYW1ldGVycyBmb3IgZmlsdGVyaW5nIGFuZCBwYWdpbmF0aW9uXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRhblN0YWNrIFF1ZXJ5IG9wdGlvbnNcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHN4XG4gKiBjb25zdCB7IGRhdGEsIGlzTG9hZGluZyB9ID0gdXNlQ3JlYXRvcnMoe1xuICogICBwYWdlOiAxLFxuICogICBsaW1pdDogMjAsXG4gKiAgIGNhbkZhY2lsaXRhdGU6IHRydWUsXG4gKiB9KTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlQ3JlYXRvcnMoXG4gIGZpbHRlcnM/OiBDcmVhdG9yRmlsdGVycyxcbiAgb3B0aW9ucz86IE9taXQ8VXNlUXVlcnlPcHRpb25zPFBhZ2luYXRlZENyZWF0b3JzUmVzcG9uc2U+LCAncXVlcnlLZXknIHwgJ3F1ZXJ5Rm4nPlxuKSB7XG4gIHJldHVybiB1c2VRdWVyeSh7XG4gICAgcXVlcnlLZXk6IGNyZWF0b3JLZXlzLmxpc3QoZmlsdGVycyksXG4gICAgcXVlcnlGbjogYXN5bmMgKCk6IFByb21pc2U8UGFnaW5hdGVkQ3JlYXRvcnNSZXNwb25zZT4gPT4ge1xuICAgICAgY29uc3QgY2xpZW50ID0gZ2V0QXBpQ2xpZW50KCk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5nZXQoJy9hcGkvdjEvY3JlYXRvcnMnLCB7XG4gICAgICAgIHBhcmFtczogZmlsdGVycyxcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcbn1cblxuLyoqXG4gKiBHZXQgYSBzaW5nbGUgY3JlYXRvciBieSBJRFxuICpcbiAqIEBwYXJhbSBpZCAtIENyZWF0b3IgSURcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGFuU3RhY2sgUXVlcnkgb3B0aW9uc1xuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c3hcbiAqIGNvbnN0IHsgZGF0YSwgaXNMb2FkaW5nIH0gPSB1c2VDcmVhdG9yKCdjcmVhdG9yLTEyMycpO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VDcmVhdG9yKFxuICBpZDogc3RyaW5nLFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8Q3JlYXRvclJlc3BvbnNlPiwgJ3F1ZXJ5S2V5JyB8ICdxdWVyeUZuJz5cbikge1xuICByZXR1cm4gdXNlUXVlcnkoe1xuICAgIHF1ZXJ5S2V5OiBjcmVhdG9yS2V5cy5kZXRhaWwoaWQpLFxuICAgIHF1ZXJ5Rm46IGFzeW5jICgpOiBQcm9taXNlPENyZWF0b3JSZXNwb25zZT4gPT4ge1xuICAgICAgY29uc3QgY2xpZW50ID0gZ2V0QXBpQ2xpZW50KCk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5nZXQoYC9hcGkvdjEvY3JlYXRvcnMvJHtpZH1gKTtcbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgIH0sXG4gICAgZW5hYmxlZDogISFpZCxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcbn1cblxuLyoqXG4gKiBHZXQgYSBjcmVhdG9yIGJ5IHRoZWlyIHNsdWdcbiAqXG4gKiBAcGFyYW0gc2x1ZyAtIENyZWF0b3Igc2x1Z1xuICogQHBhcmFtIG9wdGlvbnMgLSBUYW5TdGFjayBRdWVyeSBvcHRpb25zXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzeFxuICogY29uc3QgeyBkYXRhLCBpc0xvYWRpbmcgfSA9IHVzZUNyZWF0b3JCeVNsdWcoJ2pvaG4tZG9lJyk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVzZUNyZWF0b3JCeVNsdWcoXG4gIHNsdWc6IHN0cmluZyxcbiAgb3B0aW9ucz86IE9taXQ8VXNlUXVlcnlPcHRpb25zPENyZWF0b3JSZXNwb25zZT4sICdxdWVyeUtleScgfCAncXVlcnlGbic+XG4pIHtcbiAgcmV0dXJuIHVzZVF1ZXJ5KHtcbiAgICBxdWVyeUtleTogY3JlYXRvcktleXMuc2x1ZyhzbHVnKSxcbiAgICBxdWVyeUZuOiBhc3luYyAoKTogUHJvbWlzZTxDcmVhdG9yUmVzcG9uc2U+ID0+IHtcbiAgICAgIGNvbnN0IGNsaWVudCA9IGdldEFwaUNsaWVudCgpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZ2V0KGAvYXBpL3YxL2NyZWF0b3JzL3NsdWcvJHtzbHVnfWApO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSxcbiAgICBlbmFibGVkOiAhIXNsdWcsXG4gICAgLi4ub3B0aW9ucyxcbiAgfSk7XG59XG5cbi8qKlxuICogR2V0IGEgY3JlYXRvciBwcm9maWxlIGJ5IHVzZXIgSURcbiAqXG4gKiBAcGFyYW0gdXNlcklkIC0gVXNlciBJRFxuICogQHBhcmFtIG9wdGlvbnMgLSBUYW5TdGFjayBRdWVyeSBvcHRpb25zXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzeFxuICogY29uc3QgeyBkYXRhLCBpc0xvYWRpbmcgfSA9IHVzZUNyZWF0b3JCeVVzZXIoJ3VzZXItMTIzJyk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVzZUNyZWF0b3JCeVVzZXIoXG4gIHVzZXJJZDogc3RyaW5nLFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8Q3JlYXRvclJlc3BvbnNlIHwgbnVsbD4sICdxdWVyeUtleScgfCAncXVlcnlGbic+XG4pIHtcbiAgcmV0dXJuIHVzZVF1ZXJ5KHtcbiAgICBxdWVyeUtleTogY3JlYXRvcktleXMuYnlVc2VyKHVzZXJJZCksXG4gICAgcXVlcnlGbjogYXN5bmMgKCk6IFByb21pc2U8Q3JlYXRvclJlc3BvbnNlIHwgbnVsbD4gPT4ge1xuICAgICAgY29uc3QgY2xpZW50ID0gZ2V0QXBpQ2xpZW50KCk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5nZXQoYC9hcGkvdjEvY3JlYXRvcnMvdXNlci8ke3VzZXJJZH1gKTtcbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgIH0sXG4gICAgZW5hYmxlZDogISF1c2VySWQsXG4gICAgLi4ub3B0aW9ucyxcbiAgfSk7XG59XG5cbi8qKlxuICogR2V0IHRoZSBjdXJyZW50IHVzZXIncyBjcmVhdG9yIHByb2ZpbGVcbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRhblN0YWNrIFF1ZXJ5IG9wdGlvbnNcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHN4XG4gKiBjb25zdCB7IGRhdGEsIGlzTG9hZGluZyB9ID0gdXNlTXlDcmVhdG9yUHJvZmlsZSgpO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VNeUNyZWF0b3JQcm9maWxlKFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8Q3JlYXRvclJlc3BvbnNlIHwgbnVsbD4sICdxdWVyeUtleScgfCAncXVlcnlGbic+XG4pIHtcbiAgcmV0dXJuIHVzZVF1ZXJ5KHtcbiAgICBxdWVyeUtleTogY3JlYXRvcktleXMubWUoKSxcbiAgICBxdWVyeUZuOiBhc3luYyAoKTogUHJvbWlzZTxDcmVhdG9yUmVzcG9uc2UgfCBudWxsPiA9PiB7XG4gICAgICBjb25zdCBjbGllbnQgPSBnZXRBcGlDbGllbnQoKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgY2xpZW50LmdldCgnL2FwaS92MS9jcmVhdG9ycy9tZScpO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcbn1cblxuLyoqXG4gKiBHZXQgY3JlYXRvciBhdmFpbGFiaWxpdHkgc2xvdHNcbiAqXG4gKiBAcGFyYW0gY3JlYXRvcklkIC0gQ3JlYXRvciBJRFxuICogQHBhcmFtIG9wdGlvbnMgLSBUYW5TdGFjayBRdWVyeSBvcHRpb25zXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzeFxuICogY29uc3QgeyBkYXRhLCBpc0xvYWRpbmcgfSA9IHVzZUNyZWF0b3JBdmFpbGFiaWxpdHkoJ2NyZWF0b3ItMTIzJyk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVzZUNyZWF0b3JBdmFpbGFiaWxpdHkoXG4gIGNyZWF0b3JJZDogc3RyaW5nLFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8Q3JlYXRvckF2YWlsYWJpbGl0eVJlc3BvbnNlW10+LCAncXVlcnlLZXknIHwgJ3F1ZXJ5Rm4nPlxuKSB7XG4gIHJldHVybiB1c2VRdWVyeSh7XG4gICAgcXVlcnlLZXk6IGNyZWF0b3JLZXlzLmF2YWlsYWJpbGl0eShjcmVhdG9ySWQpLFxuICAgIHF1ZXJ5Rm46IGFzeW5jICgpOiBQcm9taXNlPENyZWF0b3JBdmFpbGFiaWxpdHlSZXNwb25zZVtdPiA9PiB7XG4gICAgICBjb25zdCBjbGllbnQgPSBnZXRBcGlDbGllbnQoKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgY2xpZW50LmdldChgL2FwaS92MS9jcmVhdG9ycy8ke2NyZWF0b3JJZH0vYXZhaWxhYmlsaXR5YCk7XG4gICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YTtcbiAgICB9LFxuICAgIGVuYWJsZWQ6ICEhY3JlYXRvcklkLFxuICAgIC4uLm9wdGlvbnMsXG4gIH0pO1xufVxuXG4vKipcbiAqIEdldCBhIGNyZWF0b3IncyBwdWJsaXNoZWQgbGlicmFyeSBjb250ZW50XG4gKlxuICogQHBhcmFtIGNyZWF0b3JJZCAtIENyZWF0b3IgSURcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGFuU3RhY2sgUXVlcnkgb3B0aW9uc1xuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c3hcbiAqIGNvbnN0IHsgZGF0YSwgaXNMb2FkaW5nIH0gPSB1c2VDcmVhdG9yQ29udGVudCgnY3JlYXRvci0xMjMnKTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlQ3JlYXRvckNvbnRlbnQoXG4gIGNyZWF0b3JJZDogc3RyaW5nLFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8TGlicmFyeUNvbnRlbnRSZXNwb25zZVtdPiwgJ3F1ZXJ5S2V5JyB8ICdxdWVyeUZuJz5cbikge1xuICByZXR1cm4gdXNlUXVlcnkoe1xuICAgIHF1ZXJ5S2V5OiBjcmVhdG9yS2V5cy5jb250ZW50KGNyZWF0b3JJZCksXG4gICAgcXVlcnlGbjogYXN5bmMgKCk6IFByb21pc2U8TGlicmFyeUNvbnRlbnRSZXNwb25zZVtdPiA9PiB7XG4gICAgICBjb25zdCBjbGllbnQgPSBnZXRBcGlDbGllbnQoKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgY2xpZW50LmdldChgL2FwaS92MS9jcmVhdG9ycy8ke2NyZWF0b3JJZH0vY29udGVudGApO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSxcbiAgICBlbmFibGVkOiAhIWNyZWF0b3JJZCxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcbn1cblxuLyoqXG4gKiBHZXQgYWxsIG9mIGEgY3JlYXRvcidzIGNvbnRlbnQgaW5jbHVkaW5nIHVucHVibGlzaGVkIChvd25lciBvbmx5KVxuICpcbiAqIEBwYXJhbSBjcmVhdG9ySWQgLSBDcmVhdG9yIElEXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRhblN0YWNrIFF1ZXJ5IG9wdGlvbnNcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHN4XG4gKiAvLyBGb3IgY3JlYXRvciBkYXNoYm9hcmQgLSBzaG93cyBhbGwgY29udGVudCBzdGF0dXNlc1xuICogY29uc3QgeyBkYXRhLCBpc0xvYWRpbmcgfSA9IHVzZUNyZWF0b3JBbGxDb250ZW50KCdjcmVhdG9yLTEyMycpO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VDcmVhdG9yQWxsQ29udGVudChcbiAgY3JlYXRvcklkOiBzdHJpbmcsXG4gIG9wdGlvbnM/OiBPbWl0PFVzZVF1ZXJ5T3B0aW9uczxMaWJyYXJ5Q29udGVudFJlc3BvbnNlW10+LCAncXVlcnlLZXknIHwgJ3F1ZXJ5Rm4nPlxuKSB7XG4gIHJldHVybiB1c2VRdWVyeSh7XG4gICAgcXVlcnlLZXk6IGNyZWF0b3JLZXlzLmFsbENvbnRlbnQoY3JlYXRvcklkKSxcbiAgICBxdWVyeUZuOiBhc3luYyAoKTogUHJvbWlzZTxMaWJyYXJ5Q29udGVudFJlc3BvbnNlW10+ID0+IHtcbiAgICAgIGNvbnN0IGNsaWVudCA9IGdldEFwaUNsaWVudCgpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZ2V0KGAvYXBpL3YxL2NyZWF0b3JzLyR7Y3JlYXRvcklkfS9jb250ZW50L2FsbGApO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSxcbiAgICBlbmFibGVkOiAhIWNyZWF0b3JJZCxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcbn1cblxuLyoqXG4gKiBHZXQgYSBjcmVhdG9yJ3MgdXBjb21pbmcgZXZlbnRzXG4gKlxuICogQHBhcmFtIGNyZWF0b3JJZCAtIENyZWF0b3IgSURcbiAqIEBwYXJhbSB1cGNvbWluZyAtIFdoZXRoZXIgdG8gZmlsdGVyIHRvIHVwY29taW5nIGV2ZW50cyBvbmx5IChkZWZhdWx0OiB0cnVlKVxuICogQHBhcmFtIG9wdGlvbnMgLSBUYW5TdGFjayBRdWVyeSBvcHRpb25zXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzeFxuICogY29uc3QgeyBkYXRhLCBpc0xvYWRpbmcgfSA9IHVzZUNyZWF0b3JFdmVudHMoJ2NyZWF0b3ItMTIzJyk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVzZUNyZWF0b3JFdmVudHMoXG4gIGNyZWF0b3JJZDogc3RyaW5nLFxuICB1cGNvbWluZyA9IHRydWUsXG4gIG9wdGlvbnM/OiBPbWl0PFVzZVF1ZXJ5T3B0aW9uczxFdmVudFJlc3BvbnNlW10+LCAncXVlcnlLZXknIHwgJ3F1ZXJ5Rm4nPlxuKSB7XG4gIHJldHVybiB1c2VRdWVyeSh7XG4gICAgcXVlcnlLZXk6IGNyZWF0b3JLZXlzLmV2ZW50cyhjcmVhdG9ySWQpLFxuICAgIHF1ZXJ5Rm46IGFzeW5jICgpOiBQcm9taXNlPEV2ZW50UmVzcG9uc2VbXT4gPT4ge1xuICAgICAgY29uc3QgY2xpZW50ID0gZ2V0QXBpQ2xpZW50KCk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5nZXQoYC9hcGkvdjEvY3JlYXRvcnMvJHtjcmVhdG9ySWR9L2V2ZW50c2AsIHtcbiAgICAgICAgcGFyYW1zOiB7IHVwY29taW5nIH0sXG4gICAgICB9KTtcbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgIH0sXG4gICAgZW5hYmxlZDogISFjcmVhdG9ySWQsXG4gICAgLi4ub3B0aW9ucyxcbiAgfSk7XG59XG5cbi8qKlxuICogR2V0IGEgY3JlYXRvcidzIHJld2FyZHNcbiAqXG4gKiBAcGFyYW0gY3JlYXRvcklkIC0gQ3JlYXRvciBJRFxuICogQHBhcmFtIG9wdGlvbnMgLSBUYW5TdGFjayBRdWVyeSBvcHRpb25zXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzeFxuICogY29uc3QgeyBkYXRhLCBpc0xvYWRpbmcgfSA9IHVzZUNyZWF0b3JSZXdhcmRzKCdjcmVhdG9yLTEyMycpO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VDcmVhdG9yUmV3YXJkcyhcbiAgY3JlYXRvcklkOiBzdHJpbmcsXG4gIG9wdGlvbnM/OiBPbWl0PFVzZVF1ZXJ5T3B0aW9uczxSZXdhcmRSZXNwb25zZVtdPiwgJ3F1ZXJ5S2V5JyB8ICdxdWVyeUZuJz5cbikge1xuICByZXR1cm4gdXNlUXVlcnkoe1xuICAgIHF1ZXJ5S2V5OiBjcmVhdG9yS2V5cy5yZXdhcmRzKGNyZWF0b3JJZCksXG4gICAgcXVlcnlGbjogYXN5bmMgKCk6IFByb21pc2U8UmV3YXJkUmVzcG9uc2VbXT4gPT4ge1xuICAgICAgY29uc3QgY2xpZW50ID0gZ2V0QXBpQ2xpZW50KCk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5nZXQoYC9hcGkvdjEvY3JlYXRvcnMvJHtjcmVhdG9ySWR9L3Jld2FyZHNgKTtcbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgIH0sXG4gICAgZW5hYmxlZDogISFjcmVhdG9ySWQsXG4gICAgLi4ub3B0aW9ucyxcbiAgfSk7XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEdBVEhFUklORyBUWVBFIFFVRVJJRVNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBHZXQgYWxsIGdhdGhlcmluZyB0eXBlcyBmb3IgYSBjcmVhdG9yIChpbmNsdWRpbmcgdW5hcHByb3ZlZCBBSSBzdWdnZXN0aW9ucylcbiAqXG4gKiBAcGFyYW0gY3JlYXRvcklkIC0gQ3JlYXRvciBJRFxuICogQHBhcmFtIG9wdGlvbnMgLSBUYW5TdGFjayBRdWVyeSBvcHRpb25zXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzeFxuICogY29uc3QgeyBkYXRhLCBpc0xvYWRpbmcgfSA9IHVzZUNyZWF0b3JHYXRoZXJpbmdUeXBlcygnY3JlYXRvci0xMjMnKTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlQ3JlYXRvckdhdGhlcmluZ1R5cGVzKFxuICBjcmVhdG9ySWQ6IHN0cmluZyxcbiAgb3B0aW9ucz86IE9taXQ8VXNlUXVlcnlPcHRpb25zPEdhdGhlcmluZ1R5cGVSZXNwb25zZVtdPiwgJ3F1ZXJ5S2V5JyB8ICdxdWVyeUZuJz5cbikge1xuICByZXR1cm4gdXNlUXVlcnkoe1xuICAgIHF1ZXJ5S2V5OiBjcmVhdG9yS2V5cy5nYXRoZXJpbmdUeXBlcyhjcmVhdG9ySWQpLFxuICAgIHF1ZXJ5Rm46IGFzeW5jICgpOiBQcm9taXNlPEdhdGhlcmluZ1R5cGVSZXNwb25zZVtdPiA9PiB7XG4gICAgICBjb25zdCBjbGllbnQgPSBnZXRBcGlDbGllbnQoKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgY2xpZW50LmdldChgL2FwaS92MS9jcmVhdG9ycy8ke2NyZWF0b3JJZH0vZ2F0aGVyaW5nLXR5cGVzYCk7XG4gICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YTtcbiAgICB9LFxuICAgIGVuYWJsZWQ6ICEhY3JlYXRvcklkLFxuICAgIC4uLm9wdGlvbnMsXG4gIH0pO1xufVxuXG4vKipcbiAqIEdldCBhcHByb3ZlZCBnYXRoZXJpbmcgdHlwZXMgZm9yIGEgY3JlYXRvclxuICpcbiAqIEBwYXJhbSBjcmVhdG9ySWQgLSBDcmVhdG9yIElEXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRhblN0YWNrIFF1ZXJ5IG9wdGlvbnNcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHN4XG4gKiBjb25zdCB7IGRhdGEsIGlzTG9hZGluZyB9ID0gdXNlQ3JlYXRvckFwcHJvdmVkR2F0aGVyaW5nVHlwZXMoJ2NyZWF0b3ItMTIzJyk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVzZUNyZWF0b3JBcHByb3ZlZEdhdGhlcmluZ1R5cGVzKFxuICBjcmVhdG9ySWQ6IHN0cmluZyxcbiAgb3B0aW9ucz86IE9taXQ8VXNlUXVlcnlPcHRpb25zPEdhdGhlcmluZ1R5cGVSZXNwb25zZVtdPiwgJ3F1ZXJ5S2V5JyB8ICdxdWVyeUZuJz5cbikge1xuICByZXR1cm4gdXNlUXVlcnkoe1xuICAgIHF1ZXJ5S2V5OiBjcmVhdG9yS2V5cy5hcHByb3ZlZEdhdGhlcmluZ1R5cGVzKGNyZWF0b3JJZCksXG4gICAgcXVlcnlGbjogYXN5bmMgKCk6IFByb21pc2U8R2F0aGVyaW5nVHlwZVJlc3BvbnNlW10+ID0+IHtcbiAgICAgIGNvbnN0IGNsaWVudCA9IGdldEFwaUNsaWVudCgpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZ2V0KGAvYXBpL3YxL2NyZWF0b3JzLyR7Y3JlYXRvcklkfS9nYXRoZXJpbmctdHlwZXMvYXBwcm92ZWRgKTtcbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgIH0sXG4gICAgZW5hYmxlZDogISFjcmVhdG9ySWQsXG4gICAgLi4ub3B0aW9ucyxcbiAgfSk7XG59XG4iXX0=
|
|
328
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXBpL3F1ZXJpZXMvY3JlYXRvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBa0ZBLGtDQWVDO0FBYUQsZ0NBY0M7QUFhRCw0Q0FjQztBQWFELDRDQWNDO0FBWUQsa0RBWUM7QUFhRCx3REFjQztBQWFELDhDQWNDO0FBY0Qsb0RBY0M7QUFjRCw0Q0FtQkM7QUFhRCw4Q0FjQztBQWlCRCw0REFjQztBQWFELDRFQWNDO0FBbFpELHVEQUFrRTtBQUNsRSxzQ0FBeUM7QUFVekMsK0VBQStFO0FBQy9FLG9CQUFvQjtBQUNwQiwrRUFBK0U7QUFFbEUsUUFBQSxXQUFXLEdBQUc7SUFDekIsR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFVO0lBQzFCLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsbUJBQVcsQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFVO0lBQ2xELElBQUksRUFBRSxDQUFDLE9BQXdCLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxtQkFBVyxDQUFDLEtBQUssRUFBRSxFQUFFLE9BQU8sQ0FBVTtJQUM5RSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxHQUFHLG1CQUFXLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBVTtJQUN0RCxNQUFNLEVBQUUsQ0FBQyxFQUFVLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxtQkFBVyxDQUFDLE9BQU8sRUFBRSxFQUFFLEVBQUUsQ0FBVTtJQUMvRCxJQUFJLEVBQUUsQ0FBQyxJQUFZLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxtQkFBVyxDQUFDLEdBQUcsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFVO0lBQ25FLE1BQU0sRUFBRSxDQUFDLE1BQWMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLG1CQUFXLENBQUMsR0FBRyxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQVU7SUFDekUsRUFBRSxFQUFFLEdB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UUFBUSxFQUFFLG1CQUFXLENBQUMsc0JBQXNCLENBQUMsU0FBUyxDQUFDO1FBQ3ZELE9BQU8sRUFBRSxLQUFLLElBQXNDLEVBQUU7WUFDcEQsTUFBTSxNQUFNLEdBQUcsSUFBQSxxQkFBWSxHQUFFLENBQUM7WUFDOUIsTUFBTSxRQUFRLEdBQUcsTUFBTSxNQUFNLENBQUMsR0FBRyxDQUFDLG9CQUFvQixTQUFTLDJCQUEyQixDQUFDLENBQUM7WUFDNUYsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQ3ZCLENBQUM7UUFDRCxPQUFPLEVBQUUsQ0FBQyxDQUFDLFNBQVM7UUFDcEIsR0FBRyxPQUFPO0tBQ1gsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZVF1ZXJ5LCBVc2VRdWVyeU9wdGlvbnMgfSBmcm9tICdAdGFuc3RhY2svcmVhY3QtcXVlcnknO1xuaW1wb3J0IHsgZ2V0QXBpQ2xpZW50IH0gZnJvbSAnLi4vY2xpZW50JztcbmltcG9ydCB0eXBlIHtcbiAgQ3JlYXRvclJlc3BvbnNlLFxuICBDcmVhdG9yQXZhaWxhYmlsaXR5UmVzcG9uc2UsXG4gIEV2ZW50UmVzcG9uc2UsXG4gIExpYnJhcnlDb250ZW50UmVzcG9uc2UsXG4gIFJld2FyZFJlc3BvbnNlLFxuICBHYXRoZXJpbmdUeXBlUmVzcG9uc2UsXG59IGZyb20gJy4uL3R5cGVzJztcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUVVFUlkgS0VZIEZBQ1RPUllcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0IGNvbnN0IGNyZWF0b3JLZXlzID0ge1xuICBhbGw6IFsnY3JlYXRvcnMnXSBhcyBjb25zdCxcbiAgbGlzdHM6ICgpID0+IFsuLi5jcmVhdG9yS2V5cy5hbGwsICdsaXN0J10gYXMgY29uc3QsXG4gIGxpc3Q6IChmaWx0ZXJzPzogQ3JlYXRvckZpbHRlcnMpID0+IFsuLi5jcmVhdG9yS2V5cy5saXN0cygpLCBmaWx0ZXJzXSBhcyBjb25zdCxcbiAgZGV0YWlsczogKCkgPT4gWy4uLmNyZWF0b3JLZXlzLmFsbCwgJ2RldGFpbCddIGFzIGNvbnN0LFxuICBkZXRhaWw6IChpZDogc3RyaW5nKSA9PiBbLi4uY3JlYXRvcktleXMuZGV0YWlscygpLCBpZF0gYXMgY29uc3QsXG4gIHNsdWc6IChzbHVnOiBzdHJpbmcpID0+IFsuLi5jcmVhdG9yS2V5cy5hbGwsICdzbHVnJywgc2x1Z10gYXMgY29uc3QsXG4gIGJ5VXNlcjogKHVzZXJJZDogc3RyaW5nKSA9PiBbLi4uY3JlYXRvcktleXMuYWxsLCAndXNlcicsIHVzZXJJZF0gYXMgY29uc3QsXG4gIG1lOiAoKSA9PiBbLi4uY3JlYXRvcktleXMuYWxsLCAnbWUnXSBhcyBjb25zdCxcbiAgYXZhaWxhYmlsaXR5OiAoY3JlYXRvcklkOiBzdHJpbmcpID0+IFsuLi5jcmVhdG9yS2V5cy5kZXRhaWwoY3JlYXRvcklkKSwgJ2F2YWlsYWJpbGl0eSddIGFzIGNvbnN0LFxuICBjb250ZW50OiAoY3JlYXRvcklkOiBzdHJpbmcpID0+IFsuLi5jcmVhdG9yS2V5cy5kZXRhaWwoY3JlYXRvcklkKSwgJ2NvbnRlbnQnXSBhcyBjb25zdCxcbiAgYWxsQ29udGVudDogKGNyZWF0b3JJZDogc3RyaW5nKSA9PiBbLi4uY3JlYXRvcktleXMuZGV0YWlsKGNyZWF0b3JJZCksICdjb250ZW50JywgJ2FsbCddIGFzIGNvbnN0LFxuICBldmVudHM6IChjcmVhdG9ySWQ6IHN0cmluZykgPT4gWy4uLmNyZWF0b3JLZXlzLmRldGFpbChjcmVhdG9ySWQpLCAnZXZlbnRzJ10gYXMgY29uc3QsXG4gIHJld2FyZHM6IChjcmVhdG9ySWQ6IHN0cmluZykgPT4gWy4uLmNyZWF0b3JLZXlzLmRldGFpbChjcmVhdG9ySWQpLCAncmV3YXJkcyddIGFzIGNvbnN0LFxuICBnYXRoZXJpbmdUeXBlczogKGNyZWF0b3JJZDogc3RyaW5nKSA9PiBbLi4uY3JlYXRvcktleXMuZGV0YWlsKGNyZWF0b3JJZCksICdnYXRoZXJpbmctdHlwZXMnXSBhcyBjb25zdCxcbiAgYXBwcm92ZWRHYXRoZXJpbmdUeXBlczogKGNyZWF0b3JJZDogc3RyaW5nKSA9PiBbLi4uY3JlYXRvcktleXMuZGV0YWlsKGNyZWF0b3JJZCksICdnYXRoZXJpbmctdHlwZXMnLCAnYXBwcm92ZWQnXSBhcyBjb25zdCxcbn07XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFRZUEVTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRvckZpbHRlcnMge1xuICBwYWdlPzogbnVtYmVyO1xuICBsaW1pdD86IG51bWJlcjtcbiAgc2VhcmNoPzogc3RyaW5nO1xuICBjaXR5SWQ/OiBzdHJpbmc7XG4gIGNhbkZhY2lsaXRhdGU/OiBib29sZWFuO1xuICBjYW5DcmVhdGVDb250ZW50PzogYm9vbGVhbjtcbiAgaXNJbmZsdWVuY2VyPzogYm9vbGVhbjtcbiAgaXNWZXJpZmllZD86IGJvb2xlYW47XG4gIHNvcnRCeT86IHN0cmluZztcbiAgc29ydE9yZGVyPzogJ2FzYycgfCAnZGVzYyc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFnaW5hdGVkQ3JlYXRvcnNSZXNwb25zZSB7XG4gIGNyZWF0b3JzOiBDcmVhdG9yUmVzcG9uc2VbXTtcbiAgbWV0YToge1xuICAgIHRvdGFsOiBudW1iZXI7XG4gICAgcGFnZTogbnVtYmVyO1xuICAgIGxpbWl0OiBudW1iZXI7XG4gICAgdG90YWxQYWdlczogbnVtYmVyO1xuICB9O1xufVxuXG4vLyBSZS1leHBvcnQgUmV3YXJkUmVzcG9uc2UgZnJvbSB0eXBlcyBmb3IgY29udmVuaWVuY2VcbmV4cG9ydCB0eXBlIHsgUmV3YXJkUmVzcG9uc2UgfSBmcm9tICcuLi90eXBlcyc7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFFVRVJZIEhPT0tTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogR2V0IHBhZ2luYXRlZCBsaXN0IG9mIGNyZWF0b3JzIHdpdGggb3B0aW9uYWwgZmlsdGVyc1xuICpcbiAqIEBwYXJhbSBmaWx0ZXJzIC0gUXVlcnkgcGFyYW1ldGVycyBmb3IgZmlsdGVyaW5nIGFuZCBwYWdpbmF0aW9uXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRhblN0YWNrIFF1ZXJ5IG9wdGlvbnNcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHN4XG4gKiBjb25zdCB7IGRhdGEsIGlzTG9hZGluZyB9ID0gdXNlQ3JlYXRvcnMoe1xuICogICBwYWdlOiAxLFxuICogICBsaW1pdDogMjAsXG4gKiAgIGNhbkZhY2lsaXRhdGU6IHRydWUsXG4gKiB9KTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlQ3JlYXRvcnMoXG4gIGZpbHRlcnM/OiBDcmVhdG9yRmlsdGVycyxcbiAgb3B0aW9ucz86IE9taXQ8VXNlUXVlcnlPcHRpb25zPFBhZ2luYXRlZENyZWF0b3JzUmVzcG9uc2U+LCAncXVlcnlLZXknIHwgJ3F1ZXJ5Rm4nPlxuKSB7XG4gIHJldHVybiB1c2VRdWVyeSh7XG4gICAgcXVlcnlLZXk6IGNyZWF0b3JLZXlzLmxpc3QoZmlsdGVycyksXG4gICAgcXVlcnlGbjogYXN5bmMgKCk6IFByb21pc2U8UGFnaW5hdGVkQ3JlYXRvcnNSZXNwb25zZT4gPT4ge1xuICAgICAgY29uc3QgY2xpZW50ID0gZ2V0QXBpQ2xpZW50KCk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5nZXQoJy9hcGkvdjEvY3JlYXRvcnMnLCB7XG4gICAgICAgIHBhcmFtczogZmlsdGVycyxcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcbn1cblxuLyoqXG4gKiBHZXQgYSBzaW5nbGUgY3JlYXRvciBieSBJRFxuICpcbiAqIEBwYXJhbSBpZCAtIENyZWF0b3IgSURcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGFuU3RhY2sgUXVlcnkgb3B0aW9uc1xuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c3hcbiAqIGNvbnN0IHsgZGF0YSwgaXNMb2FkaW5nIH0gPSB1c2VDcmVhdG9yKCdjcmVhdG9yLTEyMycpO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VDcmVhdG9yKFxuICBpZDogc3RyaW5nLFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8Q3JlYXRvclJlc3BvbnNlPiwgJ3F1ZXJ5S2V5JyB8ICdxdWVyeUZuJz5cbikge1xuICByZXR1cm4gdXNlUXVlcnkoe1xuICAgIHF1ZXJ5S2V5OiBjcmVhdG9yS2V5cy5kZXRhaWwoaWQpLFxuICAgIHF1ZXJ5Rm46IGFzeW5jICgpOiBQcm9taXNlPENyZWF0b3JSZXNwb25zZT4gPT4ge1xuICAgICAgY29uc3QgY2xpZW50ID0gZ2V0QXBpQ2xpZW50KCk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5nZXQoYC9hcGkvdjEvY3JlYXRvcnMvJHtpZH1gKTtcbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgIH0sXG4gICAgZW5hYmxlZDogISFpZCxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcbn1cblxuLyoqXG4gKiBHZXQgYSBjcmVhdG9yIGJ5IHRoZWlyIHNsdWdcbiAqXG4gKiBAcGFyYW0gc2x1ZyAtIENyZWF0b3Igc2x1Z1xuICogQHBhcmFtIG9wdGlvbnMgLSBUYW5TdGFjayBRdWVyeSBvcHRpb25zXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzeFxuICogY29uc3QgeyBkYXRhLCBpc0xvYWRpbmcgfSA9IHVzZUNyZWF0b3JCeVNsdWcoJ2pvaG4tZG9lJyk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVzZUNyZWF0b3JCeVNsdWcoXG4gIHNsdWc6IHN0cmluZyxcbiAgb3B0aW9ucz86IE9taXQ8VXNlUXVlcnlPcHRpb25zPENyZWF0b3JSZXNwb25zZT4sICdxdWVyeUtleScgfCAncXVlcnlGbic+XG4pIHtcbiAgcmV0dXJuIHVzZVF1ZXJ5KHtcbiAgICBxdWVyeUtleTogY3JlYXRvcktleXMuc2x1ZyhzbHVnKSxcbiAgICBxdWVyeUZuOiBhc3luYyAoKTogUHJvbWlzZTxDcmVhdG9yUmVzcG9uc2U+ID0+IHtcbiAgICAgIGNvbnN0IGNsaWVudCA9IGdldEFwaUNsaWVudCgpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZ2V0KGAvYXBpL3YxL2NyZWF0b3JzL3NsdWcvJHtzbHVnfWApO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSxcbiAgICBlbmFibGVkOiAhIXNsdWcsXG4gICAgLi4ub3B0aW9ucyxcbiAgfSk7XG59XG5cbi8qKlxuICogR2V0IGEgY3JlYXRvciBwcm9maWxlIGJ5IHVzZXIgSURcbiAqXG4gKiBAcGFyYW0gdXNlcklkIC0gVXNlciBJRFxuICogQHBhcmFtIG9wdGlvbnMgLSBUYW5TdGFjayBRdWVyeSBvcHRpb25zXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzeFxuICogY29uc3QgeyBkYXRhLCBpc0xvYWRpbmcgfSA9IHVzZUNyZWF0b3JCeVVzZXIoJ3VzZXItMTIzJyk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVzZUNyZWF0b3JCeVVzZXIoXG4gIHVzZXJJZDogc3RyaW5nLFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8Q3JlYXRvclJlc3BvbnNlIHwgbnVsbD4sICdxdWVyeUtleScgfCAncXVlcnlGbic+XG4pIHtcbiAgcmV0dXJuIHVzZVF1ZXJ5KHtcbiAgICBxdWVyeUtleTogY3JlYXRvcktleXMuYnlVc2VyKHVzZXJJZCksXG4gICAgcXVlcnlGbjogYXN5bmMgKCk6IFByb21pc2U8Q3JlYXRvclJlc3BvbnNlIHwgbnVsbD4gPT4ge1xuICAgICAgY29uc3QgY2xpZW50ID0gZ2V0QXBpQ2xpZW50KCk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5nZXQoYC9hcGkvdjEvY3JlYXRvcnMvdXNlci8ke3VzZXJJZH1gKTtcbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgIH0sXG4gICAgZW5hYmxlZDogISF1c2VySWQsXG4gICAgLi4ub3B0aW9ucyxcbiAgfSk7XG59XG5cbi8qKlxuICogR2V0IHRoZSBjdXJyZW50IHVzZXIncyBjcmVhdG9yIHByb2ZpbGVcbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRhblN0YWNrIFF1ZXJ5IG9wdGlvbnNcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHN4XG4gKiBjb25zdCB7IGRhdGEsIGlzTG9hZGluZyB9ID0gdXNlTXlDcmVhdG9yUHJvZmlsZSgpO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VNeUNyZWF0b3JQcm9maWxlKFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8Q3JlYXRvclJlc3BvbnNlIHwgbnVsbD4sICdxdWVyeUtleScgfCAncXVlcnlGbic+XG4pIHtcbiAgcmV0dXJuIHVzZVF1ZXJ5KHtcbiAgICBxdWVyeUtleTogY3JlYXRvcktleXMubWUoKSxcbiAgICBxdWVyeUZuOiBhc3luYyAoKTogUHJvbWlzZTxDcmVhdG9yUmVzcG9uc2UgfCBudWxsPiA9PiB7XG4gICAgICBjb25zdCBjbGllbnQgPSBnZXRBcGlDbGllbnQoKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgY2xpZW50LmdldCgnL2FwaS92MS9jcmVhdG9ycy9tZScpO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcbn1cblxuLyoqXG4gKiBHZXQgY3JlYXRvciBhdmFpbGFiaWxpdHkgc2xvdHNcbiAqXG4gKiBAcGFyYW0gY3JlYXRvcklkIC0gQ3JlYXRvciBJRFxuICogQHBhcmFtIG9wdGlvbnMgLSBUYW5TdGFjayBRdWVyeSBvcHRpb25zXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzeFxuICogY29uc3QgeyBkYXRhLCBpc0xvYWRpbmcgfSA9IHVzZUNyZWF0b3JBdmFpbGFiaWxpdHkoJ2NyZWF0b3ItMTIzJyk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVzZUNyZWF0b3JBdmFpbGFiaWxpdHkoXG4gIGNyZWF0b3JJZDogc3RyaW5nLFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8Q3JlYXRvckF2YWlsYWJpbGl0eVJlc3BvbnNlW10+LCAncXVlcnlLZXknIHwgJ3F1ZXJ5Rm4nPlxuKSB7XG4gIHJldHVybiB1c2VRdWVyeSh7XG4gICAgcXVlcnlLZXk6IGNyZWF0b3JLZXlzLmF2YWlsYWJpbGl0eShjcmVhdG9ySWQpLFxuICAgIHF1ZXJ5Rm46IGFzeW5jICgpOiBQcm9taXNlPENyZWF0b3JBdmFpbGFiaWxpdHlSZXNwb25zZVtdPiA9PiB7XG4gICAgICBjb25zdCBjbGllbnQgPSBnZXRBcGlDbGllbnQoKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgY2xpZW50LmdldChgL2FwaS92MS9jcmVhdG9ycy8ke2NyZWF0b3JJZH0vYXZhaWxhYmlsaXR5YCk7XG4gICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YTtcbiAgICB9LFxuICAgIGVuYWJsZWQ6ICEhY3JlYXRvcklkLFxuICAgIC4uLm9wdGlvbnMsXG4gIH0pO1xufVxuXG4vKipcbiAqIEdldCBhIGNyZWF0b3IncyBwdWJsaXNoZWQgbGlicmFyeSBjb250ZW50XG4gKlxuICogQHBhcmFtIGNyZWF0b3JJZCAtIENyZWF0b3IgSURcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGFuU3RhY2sgUXVlcnkgb3B0aW9uc1xuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c3hcbiAqIGNvbnN0IHsgZGF0YSwgaXNMb2FkaW5nIH0gPSB1c2VDcmVhdG9yQ29udGVudCgnY3JlYXRvci0xMjMnKTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlQ3JlYXRvckNvbnRlbnQoXG4gIGNyZWF0b3JJZDogc3RyaW5nLFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8TGlicmFyeUNvbnRlbnRSZXNwb25zZVtdPiwgJ3F1ZXJ5S2V5JyB8ICdxdWVyeUZuJz5cbikge1xuICByZXR1cm4gdXNlUXVlcnkoe1xuICAgIHF1ZXJ5S2V5OiBjcmVhdG9yS2V5cy5jb250ZW50KGNyZWF0b3JJZCksXG4gICAgcXVlcnlGbjogYXN5bmMgKCk6IFByb21pc2U8TGlicmFyeUNvbnRlbnRSZXNwb25zZVtdPiA9PiB7XG4gICAgICBjb25zdCBjbGllbnQgPSBnZXRBcGlDbGllbnQoKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgY2xpZW50LmdldChgL2FwaS92MS9jcmVhdG9ycy8ke2NyZWF0b3JJZH0vY29udGVudGApO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSxcbiAgICBlbmFibGVkOiAhIWNyZWF0b3JJZCxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcbn1cblxuLyoqXG4gKiBHZXQgYWxsIG9mIGEgY3JlYXRvcidzIGNvbnRlbnQgaW5jbHVkaW5nIHVucHVibGlzaGVkIChvd25lciBvbmx5KVxuICpcbiAqIEBwYXJhbSBjcmVhdG9ySWQgLSBDcmVhdG9yIElEXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRhblN0YWNrIFF1ZXJ5IG9wdGlvbnNcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHN4XG4gKiAvLyBGb3IgY3JlYXRvciBkYXNoYm9hcmQgLSBzaG93cyBhbGwgY29udGVudCBzdGF0dXNlc1xuICogY29uc3QgeyBkYXRhLCBpc0xvYWRpbmcgfSA9IHVzZUNyZWF0b3JBbGxDb250ZW50KCdjcmVhdG9yLTEyMycpO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VDcmVhdG9yQWxsQ29udGVudChcbiAgY3JlYXRvcklkOiBzdHJpbmcsXG4gIG9wdGlvbnM/OiBPbWl0PFVzZVF1ZXJ5T3B0aW9uczxMaWJyYXJ5Q29udGVudFJlc3BvbnNlW10+LCAncXVlcnlLZXknIHwgJ3F1ZXJ5Rm4nPlxuKSB7XG4gIHJldHVybiB1c2VRdWVyeSh7XG4gICAgcXVlcnlLZXk6IGNyZWF0b3JLZXlzLmFsbENvbnRlbnQoY3JlYXRvcklkKSxcbiAgICBxdWVyeUZuOiBhc3luYyAoKTogUHJvbWlzZTxMaWJyYXJ5Q29udGVudFJlc3BvbnNlW10+ID0+IHtcbiAgICAgIGNvbnN0IGNsaWVudCA9IGdldEFwaUNsaWVudCgpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZ2V0KGAvYXBpL3YxL2NyZWF0b3JzLyR7Y3JlYXRvcklkfS9jb250ZW50L2FsbGApO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSxcbiAgICBlbmFibGVkOiAhIWNyZWF0b3JJZCxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcbn1cblxuLyoqXG4gKiBHZXQgYSBjcmVhdG9yJ3MgdXBjb21pbmcgZXZlbnRzXG4gKlxuICogQHBhcmFtIGNyZWF0b3JJZCAtIENyZWF0b3IgSURcbiAqIEBwYXJhbSB1cGNvbWluZyAtIFdoZXRoZXIgdG8gZmlsdGVyIHRvIHVwY29taW5nIGV2ZW50cyBvbmx5IChkZWZhdWx0OiB0cnVlKVxuICogQHBhcmFtIG9wdGlvbnMgLSBUYW5TdGFjayBRdWVyeSBvcHRpb25zXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzeFxuICogY29uc3QgeyBkYXRhLCBpc0xvYWRpbmcgfSA9IHVzZUNyZWF0b3JFdmVudHMoJ2NyZWF0b3ItMTIzJyk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVzZUNyZWF0b3JFdmVudHMoXG4gIGNyZWF0b3JJZDogc3RyaW5nLFxuICB1cGNvbWluZyA9IHRydWUsXG4gIGluY2x1ZGVVbnB1Ymxpc2hlZCA9IGZhbHNlLFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8RXZlbnRSZXNwb25zZVtdPiwgJ3F1ZXJ5S2V5JyB8ICdxdWVyeUZuJz5cbikge1xuICByZXR1cm4gdXNlUXVlcnkoe1xuICAgIHF1ZXJ5S2V5OiBbLi4uY3JlYXRvcktleXMuZXZlbnRzKGNyZWF0b3JJZCksIHsgdXBjb21pbmcsIGluY2x1ZGVVbnB1Ymxpc2hlZCB9XSxcbiAgICBxdWVyeUZuOiBhc3luYyAoKTogUHJvbWlzZTxFdmVudFJlc3BvbnNlW10+ID0+IHtcbiAgICAgIGNvbnN0IGNsaWVudCA9IGdldEFwaUNsaWVudCgpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZ2V0KGAvYXBpL3YxL2NyZWF0b3JzLyR7Y3JlYXRvcklkfS9ldmVudHNgLCB7XG4gICAgICAgIHBhcmFtczogeyB1cGNvbWluZywgaW5jbHVkZVVucHVibGlzaGVkIH0sXG4gICAgICB9KTtcbiAgICAgIC8vIEhhbmRsZSB3cmFwcGVkIHJlc3BvbnNlIHtkYXRhOiBbLi4uXSwgbWV0YTogey4uLn19IG9yIGRpcmVjdCBhcnJheVxuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE/LmRhdGEgfHwgcmVzcG9uc2UuZGF0YSB8fCBbXTtcbiAgICB9LFxuICAgIGVuYWJsZWQ6ICEhY3JlYXRvcklkLFxuICAgIC4uLm9wdGlvbnMsXG4gIH0pO1xufVxuXG4vKipcbiAqIEdldCBhIGNyZWF0b3IncyByZXdhcmRzXG4gKlxuICogQHBhcmFtIGNyZWF0b3JJZCAtIENyZWF0b3IgSURcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGFuU3RhY2sgUXVlcnkgb3B0aW9uc1xuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c3hcbiAqIGNvbnN0IHsgZGF0YSwgaXNMb2FkaW5nIH0gPSB1c2VDcmVhdG9yUmV3YXJkcygnY3JlYXRvci0xMjMnKTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlQ3JlYXRvclJld2FyZHMoXG4gIGNyZWF0b3JJZDogc3RyaW5nLFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8UmV3YXJkUmVzcG9uc2VbXT4sICdxdWVyeUtleScgfCAncXVlcnlGbic+XG4pIHtcbiAgcmV0dXJuIHVzZVF1ZXJ5KHtcbiAgICBxdWVyeUtleTogY3JlYXRvcktleXMucmV3YXJkcyhjcmVhdG9ySWQpLFxuICAgIHF1ZXJ5Rm46IGFzeW5jICgpOiBQcm9taXNlPFJld2FyZFJlc3BvbnNlW10+ID0+IHtcbiAgICAgIGNvbnN0IGNsaWVudCA9IGdldEFwaUNsaWVudCgpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZ2V0KGAvYXBpL3YxL2NyZWF0b3JzLyR7Y3JlYXRvcklkfS9yZXdhcmRzYCk7XG4gICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YTtcbiAgICB9LFxuICAgIGVuYWJsZWQ6ICEhY3JlYXRvcklkLFxuICAgIC4uLm9wdGlvbnMsXG4gIH0pO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBHQVRIRVJJTkcgVFlQRSBRVUVSSUVTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogR2V0IGFsbCBnYXRoZXJpbmcgdHlwZXMgZm9yIGEgY3JlYXRvciAoaW5jbHVkaW5nIHVuYXBwcm92ZWQgQUkgc3VnZ2VzdGlvbnMpXG4gKlxuICogQHBhcmFtIGNyZWF0b3JJZCAtIENyZWF0b3IgSURcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGFuU3RhY2sgUXVlcnkgb3B0aW9uc1xuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c3hcbiAqIGNvbnN0IHsgZGF0YSwgaXNMb2FkaW5nIH0gPSB1c2VDcmVhdG9yR2F0aGVyaW5nVHlwZXMoJ2NyZWF0b3ItMTIzJyk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVzZUNyZWF0b3JHYXRoZXJpbmdUeXBlcyhcbiAgY3JlYXRvcklkOiBzdHJpbmcsXG4gIG9wdGlvbnM/OiBPbWl0PFVzZVF1ZXJ5T3B0aW9uczxHYXRoZXJpbmdUeXBlUmVzcG9uc2VbXT4sICdxdWVyeUtleScgfCAncXVlcnlGbic+XG4pIHtcbiAgcmV0dXJuIHVzZVF1ZXJ5KHtcbiAgICBxdWVyeUtleTogY3JlYXRvcktleXMuZ2F0aGVyaW5nVHlwZXMoY3JlYXRvcklkKSxcbiAgICBxdWVyeUZuOiBhc3luYyAoKTogUHJvbWlzZTxHYXRoZXJpbmdUeXBlUmVzcG9uc2VbXT4gPT4ge1xuICAgICAgY29uc3QgY2xpZW50ID0gZ2V0QXBpQ2xpZW50KCk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5nZXQoYC9hcGkvdjEvY3JlYXRvcnMvJHtjcmVhdG9ySWR9L2dhdGhlcmluZy10eXBlc2ApO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSxcbiAgICBlbmFibGVkOiAhIWNyZWF0b3JJZCxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcbn1cblxuLyoqXG4gKiBHZXQgYXBwcm92ZWQgZ2F0aGVyaW5nIHR5cGVzIGZvciBhIGNyZWF0b3JcbiAqXG4gKiBAcGFyYW0gY3JlYXRvcklkIC0gQ3JlYXRvciBJRFxuICogQHBhcmFtIG9wdGlvbnMgLSBUYW5TdGFjayBRdWVyeSBvcHRpb25zXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzeFxuICogY29uc3QgeyBkYXRhLCBpc0xvYWRpbmcgfSA9IHVzZUNyZWF0b3JBcHByb3ZlZEdhdGhlcmluZ1R5cGVzKCdjcmVhdG9yLTEyMycpO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VDcmVhdG9yQXBwcm92ZWRHYXRoZXJpbmdUeXBlcyhcbiAgY3JlYXRvcklkOiBzdHJpbmcsXG4gIG9wdGlvbnM/OiBPbWl0PFVzZVF1ZXJ5T3B0aW9uczxHYXRoZXJpbmdUeXBlUmVzcG9uc2VbXT4sICdxdWVyeUtleScgfCAncXVlcnlGbic+XG4pIHtcbiAgcmV0dXJuIHVzZVF1ZXJ5KHtcbiAgICBxdWVyeUtleTogY3JlYXRvcktleXMuYXBwcm92ZWRHYXRoZXJpbmdUeXBlcyhjcmVhdG9ySWQpLFxuICAgIHF1ZXJ5Rm46IGFzeW5jICgpOiBQcm9taXNlPEdhdGhlcmluZ1R5cGVSZXNwb25zZVtdPiA9PiB7XG4gICAgICBjb25zdCBjbGllbnQgPSBnZXRBcGlDbGllbnQoKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgY2xpZW50LmdldChgL2FwaS92MS9jcmVhdG9ycy8ke2NyZWF0b3JJZH0vZ2F0aGVyaW5nLXR5cGVzL2FwcHJvdmVkYCk7XG4gICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YTtcbiAgICB9LFxuICAgIGVuYWJsZWQ6ICEhY3JlYXRvcklkLFxuICAgIC4uLm9wdGlvbnMsXG4gIH0pO1xufVxuIl19
|
|
@@ -45,4 +45,5 @@ __exportStar(require("./creators"), exports);
|
|
|
45
45
|
__exportStar(require("./brands"), exports);
|
|
46
46
|
__exportStar(require("./products"), exports);
|
|
47
47
|
__exportStar(require("./stripe-connect"), exports);
|
|
48
|
-
|
|
48
|
+
__exportStar(require("./creator-community"), exports);
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXBpL3F1ZXJpZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7O0dBSUc7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFSCwwQ0FBd0I7QUFDeEIseUNBQXVCO0FBQ3ZCLDZDQUEyQjtBQUMzQiwrQ0FBNkI7QUFDN0IsMkNBQXlCO0FBQ3pCLDJDQUF5QjtBQUN6Qix5Q0FBdUI7QUFDdkIsNENBQTBCO0FBQzFCLHdDQUFzQjtBQUN0QixrREFBZ0M7QUFDaEMsMkNBQXlCO0FBQ3pCLGtEQUFnQztBQUNoQyw0Q0FBMEI7QUFDMUIsMENBQXdCO0FBQ3hCLHlDQUF1QjtBQUN2QixnREFBOEI7QUFDOUIsMkNBQXlCO0FBQ3pCLDZDQUEyQjtBQUMzQiwrQ0FBNkI7QUFDN0IsOENBQTRCO0FBQzVCLDJDQUF5QjtBQUN6QiwyQ0FBeUI7QUFDekIsNkNBQTJCO0FBQzNCLDJDQUF5QjtBQUN6Qiw2Q0FBMkI7QUFDM0IsbURBQWlDO0FBQ2pDLHNEQUFvQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogUXVlcnkgSG9va3NcbiAqXG4gKiBSZS1leHBvcnRzIGFsbCBxdWVyeSBob29rcyBmb3IgQVBJIGVuZHBvaW50cy5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2FkbWluJztcbmV4cG9ydCAqIGZyb20gJy4vYXV0aCc7XG5leHBvcnQgKiBmcm9tICcuL2Jvb2tpbmdzJztcbmV4cG9ydCAqIGZyb20gJy4vYnVzaW5lc3Nlcyc7XG5leHBvcnQgKiBmcm9tICcuL2NpdGllcyc7XG5leHBvcnQgKiBmcm9tICcuL2V2ZW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2h1YnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWJyYXJ5JztcbmV4cG9ydCAqIGZyb20gJy4vbWFwJztcbmV4cG9ydCAqIGZyb20gJy4vbm90aWZpY2F0aW9ucyc7XG5leHBvcnQgKiBmcm9tICcuL29mZmVycyc7XG5leHBvcnQgKiBmcm9tICcuL3N1YnNjcmlwdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9zdXBwb3J0JztcbmV4cG9ydCAqIGZyb20gJy4vdXNlcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9qYWNrJztcbmV4cG9ydCAqIGZyb20gJy4vYW1iYXNzYWRvcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9ncm93OTAnO1xuZXhwb3J0ICogZnJvbSAnLi9tYXRjaGluZyc7XG5leHBvcnQgKiBmcm9tICcuL2V2ZW50LWNoYXQnO1xuZXhwb3J0ICogZnJvbSAnLi91c2VyLXBpbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9iYWRnZXMnO1xuZXhwb3J0ICogZnJvbSAnLi92ZW51ZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9jcmVhdG9ycyc7XG5leHBvcnQgKiBmcm9tICcuL2JyYW5kcyc7XG5leHBvcnQgKiBmcm9tICcuL3Byb2R1Y3RzJztcbmV4cG9ydCAqIGZyb20gJy4vc3RyaXBlLWNvbm5lY3QnO1xuZXhwb3J0ICogZnJvbSAnLi9jcmVhdG9yLWNvbW11bml0eSc7XG4iXX0=
|
package/package.json
CHANGED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<claude-mem-context>
|
|
2
|
+
# Recent Activity
|
|
3
|
+
|
|
4
|
+
<!-- This section is auto-generated by claude-mem. Edit content outside the tags. -->
|
|
5
|
+
|
|
6
|
+
### Jan 25, 2026
|
|
7
|
+
|
|
8
|
+
| ID | Time | T | Title | Read |
|
|
9
|
+
|----|------|---|-------|------|
|
|
10
|
+
| #1290 | 5:24 AM | 🔵 | GrowSober SDK uses auto-generated types from OpenAPI specification | ~530 |
|
|
11
|
+
| #1047 | 1:59 AM | 🔵 | GrowSober SDK defines multiple authentication methods | ~388 |
|
|
12
|
+
</claude-mem-context>
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<claude-mem-context>
|
|
2
|
+
# Recent Activity
|
|
3
|
+
|
|
4
|
+
<!-- This section is auto-generated by claude-mem. Edit content outside the tags. -->
|
|
5
|
+
|
|
6
|
+
### Jan 25, 2026
|
|
7
|
+
|
|
8
|
+
| ID | Time | T | Title | Read |
|
|
9
|
+
|----|------|---|-------|------|
|
|
10
|
+
| #1598 | 9:42 AM | 🔵 | Jack AI comprehensive file inventory reveals 40+ files across web, API, SDK, and mobile | ~720 |
|
|
11
|
+
| #1049 | 2:00 AM | 🔵 | Complete authentication system with dual email/password and phone OTP flows | ~674 |
|
|
12
|
+
</claude-mem-context>
|