@growsober/sdk 1.0.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/mutations/admin.d.ts +1 -20
- package/dist/api/mutations/admin.js +1 -1
- package/dist/api/mutations/event-chat.d.ts +84 -7
- package/dist/api/mutations/event-chat.js +1 -1
- package/dist/api/mutations/matching.d.ts +2 -19
- package/dist/api/mutations/matching.js +6 -6
- package/dist/api/mutations/support.d.ts +5 -5
- package/dist/api/mutations/support.js +1 -1
- package/dist/api/queries/ambassadors.d.ts +71 -5
- package/dist/api/queries/ambassadors.js +1 -1
- package/dist/api/queries/event-chat.d.ts +30 -4
- package/dist/api/queries/grow90.d.ts +46 -4
- package/dist/api/queries/hubs.d.ts +2 -2
- package/dist/api/queries/hubs.js +1 -1
- package/dist/api/queries/map.d.ts +3 -3
- package/dist/api/queries/map.js +1 -1
- package/dist/api/queries/support.d.ts +88 -8
- package/dist/api/queries/support.js +1 -1
- package/dist/api/types.d.ts +63 -393
- package/dist/api/types.js +4 -4
- package/package.json +1 -1
- package/src/api/mutations/admin.ts +1 -20
- package/src/api/mutations/event-chat.ts +7 -7
- package/src/api/mutations/matching.ts +12 -32
- package/src/api/mutations/support.ts +11 -11
- package/src/api/queries/ambassadors.ts +6 -3
- package/src/api/queries/hubs.ts +3 -3
- package/src/api/queries/map.ts +10 -10
- package/src/api/queries/support.ts +8 -8
- package/src/api/types.ts +96 -448
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { UseQueryOptions } from '@tanstack/react-query';
|
|
2
|
-
import type {
|
|
2
|
+
import type { CheckInResponse, CheckInStreakResponse, MoodLogResponse, WinResponse, HabitResponse, ReflectionResponse } from '../types';
|
|
3
3
|
export declare const supportKeys: {
|
|
4
4
|
all: readonly ["support"];
|
|
5
5
|
checkIns: () => readonly ["support", "check-ins"];
|
|
@@ -26,7 +26,20 @@ export interface WinsByCategory {
|
|
|
26
26
|
* const { data, isLoading } = useCheckIns();
|
|
27
27
|
* ```
|
|
28
28
|
*/
|
|
29
|
-
export declare function useCheckIns(options?: Omit<UseQueryOptions<
|
|
29
|
+
export declare function useCheckIns(options?: Omit<UseQueryOptions<CheckInResponse[]>, 'queryKey' | 'queryFn'>): import("@tanstack/react-query").UseQueryResult<{
|
|
30
|
+
id: string;
|
|
31
|
+
userId: string;
|
|
32
|
+
date: string;
|
|
33
|
+
mood?: Record<string, never>;
|
|
34
|
+
energy?: Record<string, never>;
|
|
35
|
+
stayedSober?: Record<string, never>;
|
|
36
|
+
triggers: string[];
|
|
37
|
+
copingUsed: string[];
|
|
38
|
+
notes?: Record<string, never>;
|
|
39
|
+
gratitude: string[];
|
|
40
|
+
createdAt: string;
|
|
41
|
+
updatedAt: string;
|
|
42
|
+
}[], Error>;
|
|
30
43
|
/**
|
|
31
44
|
* Get today's check-in
|
|
32
45
|
*
|
|
@@ -37,7 +50,20 @@ export declare function useCheckIns(options?: Omit<UseQueryOptions<DailyCheckInR
|
|
|
37
50
|
* const { data, isLoading } = useTodayCheckIn();
|
|
38
51
|
* ```
|
|
39
52
|
*/
|
|
40
|
-
export declare function useTodayCheckIn(options?: Omit<UseQueryOptions<
|
|
53
|
+
export declare function useTodayCheckIn(options?: Omit<UseQueryOptions<CheckInResponse | null>, 'queryKey' | 'queryFn'>): import("@tanstack/react-query").UseQueryResult<{
|
|
54
|
+
id: string;
|
|
55
|
+
userId: string;
|
|
56
|
+
date: string;
|
|
57
|
+
mood?: Record<string, never>;
|
|
58
|
+
energy?: Record<string, never>;
|
|
59
|
+
stayedSober?: Record<string, never>;
|
|
60
|
+
triggers: string[];
|
|
61
|
+
copingUsed: string[];
|
|
62
|
+
notes?: Record<string, never>;
|
|
63
|
+
gratitude: string[];
|
|
64
|
+
createdAt: string;
|
|
65
|
+
updatedAt: string;
|
|
66
|
+
} | null, Error>;
|
|
41
67
|
/**
|
|
42
68
|
* Get user's check-in streak
|
|
43
69
|
*
|
|
@@ -48,7 +74,11 @@ export declare function useTodayCheckIn(options?: Omit<UseQueryOptions<DailyChec
|
|
|
48
74
|
* const { data, isLoading } = useCheckInStreak();
|
|
49
75
|
* ```
|
|
50
76
|
*/
|
|
51
|
-
export declare function useCheckInStreak(options?: Omit<UseQueryOptions<
|
|
77
|
+
export declare function useCheckInStreak(options?: Omit<UseQueryOptions<CheckInStreakResponse>, 'queryKey' | 'queryFn'>): import("@tanstack/react-query").UseQueryResult<{
|
|
78
|
+
currentStreak: number;
|
|
79
|
+
longestStreak: number;
|
|
80
|
+
totalCheckIns: number;
|
|
81
|
+
}, Error>;
|
|
52
82
|
/**
|
|
53
83
|
* Get user's mood logs
|
|
54
84
|
*
|
|
@@ -59,7 +89,17 @@ export declare function useCheckInStreak(options?: Omit<UseQueryOptions<UserStre
|
|
|
59
89
|
* const { data, isLoading } = useMoodLogs();
|
|
60
90
|
* ```
|
|
61
91
|
*/
|
|
62
|
-
export declare function useMoodLogs(options?: Omit<UseQueryOptions<MoodLogResponse[]>, 'queryKey' | 'queryFn'>): import("@tanstack/react-query").UseQueryResult<
|
|
92
|
+
export declare function useMoodLogs(options?: Omit<UseQueryOptions<MoodLogResponse[]>, 'queryKey' | 'queryFn'>): import("@tanstack/react-query").UseQueryResult<{
|
|
93
|
+
id: string;
|
|
94
|
+
userId: string;
|
|
95
|
+
mood: number;
|
|
96
|
+
energy?: Record<string, never>;
|
|
97
|
+
tags: string[];
|
|
98
|
+
note?: Record<string, never>;
|
|
99
|
+
activity?: Record<string, never>;
|
|
100
|
+
location?: Record<string, never>;
|
|
101
|
+
createdAt: string;
|
|
102
|
+
}[], Error>;
|
|
63
103
|
/**
|
|
64
104
|
* Get user's wins
|
|
65
105
|
*
|
|
@@ -70,7 +110,15 @@ export declare function useMoodLogs(options?: Omit<UseQueryOptions<MoodLogRespon
|
|
|
70
110
|
* const { data, isLoading } = useWins();
|
|
71
111
|
* ```
|
|
72
112
|
*/
|
|
73
|
-
export declare function useWins(options?: Omit<UseQueryOptions<WinResponse[]>, 'queryKey' | 'queryFn'>): import("@tanstack/react-query").UseQueryResult<
|
|
113
|
+
export declare function useWins(options?: Omit<UseQueryOptions<WinResponse[]>, 'queryKey' | 'queryFn'>): import("@tanstack/react-query").UseQueryResult<{
|
|
114
|
+
id: string;
|
|
115
|
+
userId: string;
|
|
116
|
+
title: string;
|
|
117
|
+
description?: Record<string, never>;
|
|
118
|
+
category: "SOBRIETY" | "HEALTH" | "RELATIONSHIP" | "CAREER" | "PERSONAL" | "FINANCIAL" | "OTHER";
|
|
119
|
+
imageUrl?: Record<string, never>;
|
|
120
|
+
createdAt: string;
|
|
121
|
+
}[], Error>;
|
|
74
122
|
/**
|
|
75
123
|
* Get user's wins grouped by category
|
|
76
124
|
*
|
|
@@ -92,7 +140,25 @@ export declare function useWinsByCategory(options?: Omit<UseQueryOptions<WinsByC
|
|
|
92
140
|
* const { data, isLoading } = useHabits();
|
|
93
141
|
* ```
|
|
94
142
|
*/
|
|
95
|
-
export declare function useHabits(options?: Omit<UseQueryOptions<HabitResponse[]>, 'queryKey' | 'queryFn'>): import("@tanstack/react-query").UseQueryResult<
|
|
143
|
+
export declare function useHabits(options?: Omit<UseQueryOptions<HabitResponse[]>, 'queryKey' | 'queryFn'>): import("@tanstack/react-query").UseQueryResult<{
|
|
144
|
+
id: string;
|
|
145
|
+
userId: string;
|
|
146
|
+
name: string;
|
|
147
|
+
description?: Record<string, never>;
|
|
148
|
+
icon?: Record<string, never>;
|
|
149
|
+
color?: Record<string, never>;
|
|
150
|
+
frequency: "DAILY" | "WEEKLY" | "CUSTOM";
|
|
151
|
+
targetDays: string[];
|
|
152
|
+
targetCount: number;
|
|
153
|
+
currentStreak: number;
|
|
154
|
+
longestStreak: number;
|
|
155
|
+
totalCompletions: number;
|
|
156
|
+
isActive: boolean;
|
|
157
|
+
isPaused: boolean;
|
|
158
|
+
reminderTime?: Record<string, never>;
|
|
159
|
+
createdAt: string;
|
|
160
|
+
updatedAt: string;
|
|
161
|
+
}[], Error>;
|
|
96
162
|
/**
|
|
97
163
|
* Get user's reflections
|
|
98
164
|
*
|
|
@@ -103,4 +169,18 @@ export declare function useHabits(options?: Omit<UseQueryOptions<HabitResponse[]
|
|
|
103
169
|
* const { data, isLoading } = useReflections();
|
|
104
170
|
* ```
|
|
105
171
|
*/
|
|
106
|
-
export declare function useReflections(options?: Omit<UseQueryOptions<ReflectionResponse[]>, 'queryKey' | 'queryFn'>): import("@tanstack/react-query").UseQueryResult<
|
|
172
|
+
export declare function useReflections(options?: Omit<UseQueryOptions<ReflectionResponse[]>, 'queryKey' | 'queryFn'>): import("@tanstack/react-query").UseQueryResult<{
|
|
173
|
+
id: string;
|
|
174
|
+
userId: string;
|
|
175
|
+
weekStart: string;
|
|
176
|
+
weekNumber: number;
|
|
177
|
+
year: number;
|
|
178
|
+
overallRating?: Record<string, never>;
|
|
179
|
+
biggestWin?: Record<string, never>;
|
|
180
|
+
challenges?: Record<string, never>;
|
|
181
|
+
focusArea?: Record<string, never>;
|
|
182
|
+
goals: string[];
|
|
183
|
+
notes?: Record<string, never>;
|
|
184
|
+
createdAt: string;
|
|
185
|
+
updatedAt: string;
|
|
186
|
+
}[], Error>;
|
|
@@ -199,4 +199,4 @@ function useReflections(options) {
|
|
|
199
199
|
...options,
|
|
200
200
|
});
|
|
201
201
|
}
|
|
202
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VwcG9ydC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hcGkvcXVlcmllcy9zdXBwb3J0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQW1EQSxrQ0FhQztBQVlELDBDQWFDO0FBWUQsNENBYUM7QUFZRCxrQ0FZQztBQVlELDBCQVlDO0FBWUQsOENBWUM7QUFZRCw4QkFZQztBQVlELHdDQVlDO0FBMU9ELHVEQUFrRTtBQUNsRSxzQ0FBeUM7QUFVekMsK0VBQStFO0FBQy9FLG9CQUFvQjtBQUNwQiwrRUFBK0U7QUFFbEUsUUFBQSxXQUFXLEdBQUc7SUFDekIsR0FBRyxFQUFFLENBQUMsU0FBUyxDQUFVO0lBQ3pCLFFBQVEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsbUJBQVcsQ0FBQyxHQUFHLEVBQUUsV0FBVyxDQUFVO0lBQzFELFlBQVksRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsbUJBQVcsQ0FBQyxRQUFRLEVBQUUsRUFBRSxPQUFPLENBQVU7SUFDakUsYUFBYSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsR0FBRyxtQkFBVyxDQUFDLFFBQVEsRUFBRSxFQUFFLFFBQVEsQ0FBVTtJQUNuRSxRQUFRLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxHQUFHLG1CQUFXLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBVTtJQUNyRCxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxHQUFHLG1CQUFXLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBVTtJQUNqRCxjQUFjLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxHQUFHLG1CQUFXLENBQUMsSUFBSSxFQUFFLEVBQUUsYUFBYSxDQUFVO0lBQ3JFLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsbUJBQVcsQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFVO0lBQ3JELFdBQVcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsbUJBQVcsQ0FBQyxHQUFHLEVBQUUsYUFBYSxDQUFVO0NBQ2hFLENBQUM7QUFZRiwrRUFBK0U7QUFDL0UsY0FBYztBQUNkLCtFQUErRTtBQUUvRTs7Ozs7Ozs7O0dBU0c7QUFDSCxTQUFnQixXQUFXLENBQ3pCLE9BQStFO0lBRS9FLE9BQU8sSUFBQSxzQkFBUSxFQUFDO1FBQ2QsUUFBUSxFQUFFLG1CQUFXLENBQUMsUUFBUSxFQUFFO1FBQ2hDLE9BQU8sRUFBRSxLQUFLLElBQXFDLEVBQUU7WUFDbkQsTUFBTSxNQUFNLEdBQUcsSUFBQSxxQkFBWSxHQUFFLENBQUM7WUFDOUIsTUFBTSxRQUFRLEdBQUcsTUFBTSxNQUFNLENBQUMsR0FBRyxDQUFDLDJCQUEyQixDQUFDLENBQUM7WUFDL0Qsc0RBQXNEO1lBQ3RELE9BQU8sUUFBUSxDQUFDLElBQUksRUFBRSxJQUFJLElBQUksUUFBUSxDQUFDLElBQUksSUFBSSxFQUFFLENBQUM7UUFDcEQsQ0FBQztRQUNELEdBQUcsT0FBTztLQUNYLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRDs7Ozs7Ozs7O0dBU0c7QUFDSCxTQUFnQixlQUFlLENBQzdCLE9BQW9GO0lBRXBGLE9BQU8sSUFBQSxzQkFBUSxFQUFDO1FBQ2QsUUFBUSxFQUFFLG1CQUFXLENBQUMsWUFBWSxFQUFFO1FBQ3BDLE9BQU8sRUFBRSxLQUFLLElBQTBDLEVBQUU7WUFDeEQsTUFBTSxNQUFNLEdBQUcsSUFBQSxxQkFBWSxHQUFFLENBQUM7WUFDOUIsTUFBTSxRQUFRLEdBQUcsTUFBTSxNQUFNLENBQUMsR0FBRyxDQUFDLGlDQUFpQyxDQUFDLENBQUM7WUFDckUsc0RBQXNEO1lBQ3RELE9BQU8sUUFBUSxDQUFDLElBQUksRUFBRSxJQUFJLElBQUksUUFBUSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUM7UUFDdEQsQ0FBQztRQUNELEdBQUcsT0FBTztLQUNYLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRDs7Ozs7Ozs7O0dBU0c7QUFDSCxTQUFnQixnQkFBZ0IsQ0FDOUIsT0FBMkU7SUFFM0UsT0FBTyxJQUFBLHNCQUFRLEVBQUM7UUFDZCxRQUFRLEVBQUUsbUJBQVcsQ0FBQyxhQUFhLEVBQUU7UUFDckMsT0FBTyxFQUFFLEtBQUssSUFBaUMsRUFBRTtZQUMvQyxNQUFNLE1BQU0sR0FBRyxJQUFBLHFCQUFZLEdBQUUsQ0FBQztZQUM5QixNQUFNLFFBQVEsR0FBRyxNQUFNLE1BQU0sQ0FBQyxHQUFHLENBQUMsa0NBQWtDLENBQUMsQ0FBQztZQUN0RSxzREFBc0Q7WUFDdEQsT0FBTyxRQUFRLENBQUMsSUFBSSxFQUFFLElBQUksSUFBSSxRQUFRLENBQUMsSUFBSSxJQUFJLEVBQUUsYUFBYSxFQUFFLENBQUMsRUFBRSxhQUFhLEVBQUUsQ0FBQyxFQUFFLGFBQWEsRUFBRSxDQUFDLEVBQUUsQ0FBQztRQUMxRyxDQUFDO1FBQ0QsR0FBRyxPQUFPO0tBQ1gsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVEOzs7Ozs7Ozs7R0FTRztBQUNILFNBQWdCLFdBQVcsQ0FDekIsT0FBMEU7SUFFMUUsT0FBTyxJQUFBLHNCQUFRLEVBQUM7UUFDZCxRQUFRLEVBQUUsbUJBQVcsQ0FBQyxRQUFRLEVBQUU7UUFDaEMsT0FBTyxFQUFFLEtBQUssSUFBZ0MsRUFBRTtZQUM5QyxNQUFNLE1BQU0sR0FBRyxJQUFBLHFCQUFZLEdBQUUsQ0FBQztZQUM5QixNQUFNLFFBQVEsR0FBRyxNQUFNLE1BQU0sQ0FBQyxHQUFHLENBQUMsc0JBQXNCLENBQUMsQ0FBQztZQUMxRCxPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUM7UUFDdkIsQ0FBQztRQUNELEdBQUcsT0FBTztLQUNYLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRDs7Ozs7Ozs7O0dBU0c7QUFDSCxTQUFnQixPQUFPLENBQ3JCLE9BQXNFO0lBRXRFLE9BQU8sSUFBQSxzQkFBUSxFQUFDO1FBQ2QsUUFBUSxFQUFFLG1CQUFXLENBQUMsSUFBSSxFQUFFO1FBQzVCLE9BQU8sRUFBRSxLQUFLLElBQTRCLEVBQUU7WUFDMUMsTUFBTSxNQUFNLEdBQUcsSUFBQSxxQkFBWSxHQUFFLENBQUM7WUFDOUIsTUFBTSxRQUFRLEdBQUcsTUFBTSxNQUFNLENBQUMsR0FBRyxDQUFDLHNCQUFzQixDQUFDLENBQUM7WUFDMUQsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQ3ZCLENBQUM7UUFDRCxHQUFHLE9BQU87S0FDWCxDQUFDLENBQUM7QUFDTCxDQUFDO0FBRUQ7Ozs7Ozs7OztHQVNHO0FBQ0gsU0FBZ0IsaUJBQWlCLENBQy9CLE9BQXlFO0lBRXpFLE9BQU8sSUFBQSxzQkFBUSxFQUFDO1FBQ2QsUUFBUSxFQUFFLG1CQUFXLENBQUMsY0FBYyxFQUFFO1FBQ3RDLE9BQU8sRUFBRSxLQUFLLElBQStCLEVBQUU7WUFDN0MsTUFBTSxNQUFNLEdBQUcsSUFBQSxxQkFBWSxHQUFFLENBQUM7WUFDOUIsTUFBTSxRQUFRLEdBQUcsTUFBTSxNQUFNLENBQUMsR0FBRyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7WUFDdEUsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQ3ZCLENBQUM7UUFDRCxHQUFHLE9BQU87S0FDWCxDQUFDLENBQUM7QUFDTCxDQUFDO0FBRUQ7Ozs7Ozs7OztHQVNHO0FBQ0gsU0FBZ0IsU0FBUyxDQUN2QixPQUF3RTtJQUV4RSxPQUFPLElBQUEsc0JBQVEsRUFBQztRQUNkLFFBQVEsRUFBRSxtQkFBVyxDQUFDLE1BQU0sRUFBRTtRQUM5QixPQUFPLEVBQUUsS0FBSyxJQUE4QixFQUFFO1lBQzVDLE1BQU0sTUFBTSxHQUFHLElBQUEscUJBQVksR0FBRSxDQUFDO1lBQzlCLE1BQU0sUUFBUSxHQUFHLE1BQU0sTUFBTSxDQUFDLEdBQUcsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1lBQzVELE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQztRQUN2QixDQUFDO1FBQ0QsR0FBRyxPQUFPO0tBQ1gsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVEOzs7Ozs7Ozs7R0FTRztBQUNILFNBQWdCLGNBQWMsQ0FDNUIsT0FBNkU7SUFFN0UsT0FBTyxJQUFBLHNCQUFRLEVBQUM7UUFDZCxRQUFRLEVBQUUsbUJBQVcsQ0FBQyxXQUFXLEVBQUU7UUFDbkMsT0FBTyxFQUFFLEtBQUssSUFBbUMsRUFBRTtZQUNqRCxNQUFNLE1BQU0sR0FBRyxJQUFBLHFCQUFZLEdBQUUsQ0FBQztZQUM5QixNQUFNLFFBQVEsR0FBRyxNQUFNLE1BQU0sQ0FBQyxHQUFHLENBQUMsNkJBQTZCLENBQUMsQ0FBQztZQUNqRSxPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUM7UUFDdkIsQ0FBQztRQUNELEdBQUcsT0FBTztLQUNYLENBQUMsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VRdWVyeSwgVXNlUXVlcnlPcHRpb25zIH0gZnJvbSAnQHRhbnN0YWNrL3JlYWN0LXF1ZXJ5JztcbmltcG9ydCB7IGdldEFwaUNsaWVudCB9IGZyb20gJy4uL2NsaWVudCc7XG5pbXBvcnQgdHlwZSB7XG4gIERhaWx5Q2hlY2tJblJlc3BvbnNlLFxuICBNb29kTG9nUmVzcG9uc2UsXG4gIFdpblJlc3BvbnNlLFxuICBIYWJpdFJlc3BvbnNlLFxuICBSZWZsZWN0aW9uUmVzcG9uc2UsXG4gIFVzZXJTdHJlYWtSZXNwb25zZSxcbn0gZnJvbSAnLi4vdHlwZXMnO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBRVUVSWSBLRVkgRkFDVE9SWVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgY29uc3Qgc3VwcG9ydEtleXMgPSB7XG4gIGFsbDogWydzdXBwb3J0J10gYXMgY29uc3QsXG4gIGNoZWNrSW5zOiAoKSA9PiBbLi4uc3VwcG9ydEtleXMuYWxsLCAnY2hlY2staW5zJ10gYXMgY29uc3QsXG4gIGNoZWNrSW5Ub2RheTogKCkgPT4gWy4uLnN1cHBvcnRLZXlzLmNoZWNrSW5zKCksICd0b2RheSddIGFzIGNvbnN0LFxuICBjaGVja0luU3RyZWFrOiAoKSA9PiBbLi4uc3VwcG9ydEtleXMuY2hlY2tJbnMoKSwgJ3N0cmVhayddIGFzIGNvbnN0LFxuICBtb29kTG9nczogKCkgPT4gWy4uLnN1cHBvcnRLZXlzLmFsbCwgJ21vb2QnXSBhcyBjb25zdCxcbiAgd2luczogKCkgPT4gWy4uLnN1cHBvcnRLZXlzLmFsbCwgJ3dpbnMnXSBhcyBjb25zdCxcbiAgd2luc0J5Q2F0ZWdvcnk6ICgpID0+IFsuLi5zdXBwb3J0S2V5cy53aW5zKCksICdieS1jYXRlZ29yeSddIGFzIGNvbnN0LFxuICBoYWJpdHM6ICgpID0+IFsuLi5zdXBwb3J0S2V5cy5hbGwsICdoYWJpdHMnXSBhcyBjb25zdCxcbiAgcmVmbGVjdGlvbnM6ICgpID0+IFsuLi5zdXBwb3J0S2V5cy5hbGwsICdyZWZsZWN0aW9ucyddIGFzIGNvbnN0LFxufTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gVFlQRVNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0IGludGVyZmFjZSBXaW5zQnlDYXRlZ29yeSB7XG4gIGNhdGVnb3J5OiBzdHJpbmc7XG4gIHdpbnM6IFdpblJlc3BvbnNlW107XG4gIGNvdW50OiBudW1iZXI7XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFFVRVJZIEhPT0tTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogR2V0IHVzZXIncyBkYWlseSBjaGVjay1pbnNcbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRhblN0YWNrIFF1ZXJ5IG9wdGlvbnNcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHN4XG4gKiBjb25zdCB7IGRhdGEsIGlzTG9hZGluZyB9ID0gdXNlQ2hlY2tJbnMoKTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlQ2hlY2tJbnMoXG4gIG9wdGlvbnM/OiBPbWl0PFVzZVF1ZXJ5T3B0aW9uczxEYWlseUNoZWNrSW5SZXNwb25zZVtdPiwgJ3F1ZXJ5S2V5JyB8ICdxdWVyeUZuJz5cbikge1xuICByZXR1cm4gdXNlUXVlcnkoe1xuICAgIHF1ZXJ5S2V5OiBzdXBwb3J0S2V5cy5jaGVja0lucygpLFxuICAgIHF1ZXJ5Rm46IGFzeW5jICgpOiBQcm9taXNlPERhaWx5Q2hlY2tJblJlc3BvbnNlW10+ID0+IHtcbiAgICAgIGNvbnN0IGNsaWVudCA9IGdldEFwaUNsaWVudCgpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZ2V0KCcvYXBpL3YxL3N1cHBvcnQvY2hlY2staW5zJyk7XG4gICAgICAvLyBBUEkgd3JhcHMgcmVzcG9uc2VzIGluIHsgZGF0YTogWy4uLl0sIG1ldGE6IHsuLi59IH1cbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhPy5kYXRhIHx8IHJlc3BvbnNlLmRhdGEgfHwgW107XG4gICAgfSxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcbn1cblxuLyoqXG4gKiBHZXQgdG9kYXkncyBjaGVjay1pblxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGFuU3RhY2sgUXVlcnkgb3B0aW9uc1xuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c3hcbiAqIGNvbnN0IHsgZGF0YSwgaXNMb2FkaW5nIH0gPSB1c2VUb2RheUNoZWNrSW4oKTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlVG9kYXlDaGVja0luKFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8RGFpbHlDaGVja0luUmVzcG9uc2UgfCBudWxsPiwgJ3F1ZXJ5S2V5JyB8ICdxdWVyeUZuJz5cbikge1xuICByZXR1cm4gdXNlUXVlcnkoe1xuICAgIHF1ZXJ5S2V5OiBzdXBwb3J0S2V5cy5jaGVja0luVG9kYXkoKSxcbiAgICBxdWVyeUZuOiBhc3luYyAoKTogUHJvbWlzZTxEYWlseUNoZWNrSW5SZXNwb25zZSB8IG51bGw+ID0+IHtcbiAgICAgIGNvbnN0IGNsaWVudCA9IGdldEFwaUNsaWVudCgpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZ2V0KCcvYXBpL3YxL3N1cHBvcnQvY2hlY2staW5zL3RvZGF5Jyk7XG4gICAgICAvLyBBUEkgd3JhcHMgcmVzcG9uc2VzIGluIHsgZGF0YTogey4uLn0sIG1ldGE6IHsuLi59IH1cbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhPy5kYXRhID8/IHJlc3BvbnNlLmRhdGEgPz8gbnVsbDtcbiAgICB9LFxuICAgIC4uLm9wdGlvbnMsXG4gIH0pO1xufVxuXG4vKipcbiAqIEdldCB1c2VyJ3MgY2hlY2staW4gc3RyZWFrXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBUYW5TdGFjayBRdWVyeSBvcHRpb25zXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzeFxuICogY29uc3QgeyBkYXRhLCBpc0xvYWRpbmcgfSA9IHVzZUNoZWNrSW5TdHJlYWsoKTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlQ2hlY2tJblN0cmVhayhcbiAgb3B0aW9ucz86IE9taXQ8VXNlUXVlcnlPcHRpb25zPFVzZXJTdHJlYWtSZXNwb25zZT4sICdxdWVyeUtleScgfCAncXVlcnlGbic+XG4pIHtcbiAgcmV0dXJuIHVzZVF1ZXJ5KHtcbiAgICBxdWVyeUtleTogc3VwcG9ydEtleXMuY2hlY2tJblN0cmVhaygpLFxuICAgIHF1ZXJ5Rm46IGFzeW5jICgpOiBQcm9taXNlPFVzZXJTdHJlYWtSZXNwb25zZT4gPT4ge1xuICAgICAgY29uc3QgY2xpZW50ID0gZ2V0QXBpQ2xpZW50KCk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5nZXQoJy9hcGkvdjEvc3VwcG9ydC9jaGVjay1pbnMvc3RyZWFrJyk7XG4gICAgICAvLyBBUEkgd3JhcHMgcmVzcG9uc2VzIGluIHsgZGF0YTogey4uLn0sIG1ldGE6IHsuLi59IH1cbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhPy5kYXRhIHx8IHJlc3BvbnNlLmRhdGEgfHwgeyBjdXJyZW50U3RyZWFrOiAwLCBsb25nZXN0U3RyZWFrOiAwLCB0b3RhbENoZWNrSW5zOiAwIH07XG4gICAgfSxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcbn1cblxuLyoqXG4gKiBHZXQgdXNlcidzIG1vb2QgbG9nc1xuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGFuU3RhY2sgUXVlcnkgb3B0aW9uc1xuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c3hcbiAqIGNvbnN0IHsgZGF0YSwgaXNMb2FkaW5nIH0gPSB1c2VNb29kTG9ncygpO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VNb29kTG9ncyhcbiAgb3B0aW9ucz86IE9taXQ8VXNlUXVlcnlPcHRpb25zPE1vb2RMb2dSZXNwb25zZVtdPiwgJ3F1ZXJ5S2V5JyB8ICdxdWVyeUZuJz5cbikge1xuICByZXR1cm4gdXNlUXVlcnkoe1xuICAgIHF1ZXJ5S2V5OiBzdXBwb3J0S2V5cy5tb29kTG9ncygpLFxuICAgIHF1ZXJ5Rm46IGFzeW5jICgpOiBQcm9taXNlPE1vb2RMb2dSZXNwb25zZVtdPiA9PiB7XG4gICAgICBjb25zdCBjbGllbnQgPSBnZXRBcGlDbGllbnQoKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgY2xpZW50LmdldCgnL2FwaS92MS9zdXBwb3J0L21vb2QnKTtcbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgIH0sXG4gICAgLi4ub3B0aW9ucyxcbiAgfSk7XG59XG5cbi8qKlxuICogR2V0IHVzZXIncyB3aW5zXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBUYW5TdGFjayBRdWVyeSBvcHRpb25zXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzeFxuICogY29uc3QgeyBkYXRhLCBpc0xvYWRpbmcgfSA9IHVzZVdpbnMoKTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlV2lucyhcbiAgb3B0aW9ucz86IE9taXQ8VXNlUXVlcnlPcHRpb25zPFdpblJlc3BvbnNlW10+LCAncXVlcnlLZXknIHwgJ3F1ZXJ5Rm4nPlxuKSB7XG4gIHJldHVybiB1c2VRdWVyeSh7XG4gICAgcXVlcnlLZXk6IHN1cHBvcnRLZXlzLndpbnMoKSxcbiAgICBxdWVyeUZuOiBhc3luYyAoKTogUHJvbWlzZTxXaW5SZXNwb25zZVtdPiA9PiB7XG4gICAgICBjb25zdCBjbGllbnQgPSBnZXRBcGlDbGllbnQoKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgY2xpZW50LmdldCgnL2FwaS92MS9zdXBwb3J0L3dpbnMnKTtcbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgIH0sXG4gICAgLi4ub3B0aW9ucyxcbiAgfSk7XG59XG5cbi8qKlxuICogR2V0IHVzZXIncyB3aW5zIGdyb3VwZWQgYnkgY2F0ZWdvcnlcbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRhblN0YWNrIFF1ZXJ5IG9wdGlvbnNcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHN4XG4gKiBjb25zdCB7IGRhdGEsIGlzTG9hZGluZyB9ID0gdXNlV2luc0J5Q2F0ZWdvcnkoKTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlV2luc0J5Q2F0ZWdvcnkoXG4gIG9wdGlvbnM/OiBPbWl0PFVzZVF1ZXJ5T3B0aW9uczxXaW5zQnlDYXRlZ29yeVtdPiwgJ3F1ZXJ5S2V5JyB8ICdxdWVyeUZuJz5cbikge1xuICByZXR1cm4gdXNlUXVlcnkoe1xuICAgIHF1ZXJ5S2V5OiBzdXBwb3J0S2V5cy53aW5zQnlDYXRlZ29yeSgpLFxuICAgIHF1ZXJ5Rm46IGFzeW5jICgpOiBQcm9taXNlPFdpbnNCeUNhdGVnb3J5W10+ID0+IHtcbiAgICAgIGNvbnN0IGNsaWVudCA9IGdldEFwaUNsaWVudCgpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZ2V0KCcvYXBpL3YxL3N1cHBvcnQvd2lucy9ieS1jYXRlZ29yeScpO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcbn1cblxuLyoqXG4gKiBHZXQgdXNlcidzIGhhYml0c1xuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGFuU3RhY2sgUXVlcnkgb3B0aW9uc1xuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c3hcbiAqIGNvbnN0IHsgZGF0YSwgaXNMb2FkaW5nIH0gPSB1c2VIYWJpdHMoKTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlSGFiaXRzKFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8SGFiaXRSZXNwb25zZVtdPiwgJ3F1ZXJ5S2V5JyB8ICdxdWVyeUZuJz5cbikge1xuICByZXR1cm4gdXNlUXVlcnkoe1xuICAgIHF1ZXJ5S2V5OiBzdXBwb3J0S2V5cy5oYWJpdHMoKSxcbiAgICBxdWVyeUZuOiBhc3luYyAoKTogUHJvbWlzZTxIYWJpdFJlc3BvbnNlW10+ID0+IHtcbiAgICAgIGNvbnN0IGNsaWVudCA9IGdldEFwaUNsaWVudCgpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZ2V0KCcvYXBpL3YxL3N1cHBvcnQvaGFiaXRzJyk7XG4gICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YTtcbiAgICB9LFxuICAgIC4uLm9wdGlvbnMsXG4gIH0pO1xufVxuXG4vKipcbiAqIEdldCB1c2VyJ3MgcmVmbGVjdGlvbnNcbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRhblN0YWNrIFF1ZXJ5IG9wdGlvbnNcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHN4XG4gKiBjb25zdCB7IGRhdGEsIGlzTG9hZGluZyB9ID0gdXNlUmVmbGVjdGlvbnMoKTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlUmVmbGVjdGlvbnMoXG4gIG9wdGlvbnM/OiBPbWl0PFVzZVF1ZXJ5T3B0aW9uczxSZWZsZWN0aW9uUmVzcG9uc2VbXT4sICdxdWVyeUtleScgfCAncXVlcnlGbic+XG4pIHtcbiAgcmV0dXJuIHVzZVF1ZXJ5KHtcbiAgICBxdWVyeUtleTogc3VwcG9ydEtleXMucmVmbGVjdGlvbnMoKSxcbiAgICBxdWVyeUZuOiBhc3luYyAoKTogUHJvbWlzZTxSZWZsZWN0aW9uUmVzcG9uc2VbXT4gPT4ge1xuICAgICAgY29uc3QgY2xpZW50ID0gZ2V0QXBpQ2xpZW50KCk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5nZXQoJy9hcGkvdjEvc3VwcG9ydC9yZWZsZWN0aW9ucycpO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcbn1cbiJdfQ==
|
|
202
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VwcG9ydC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hcGkvcXVlcmllcy9zdXBwb3J0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQW1EQSxrQ0FhQztBQVlELDBDQWFDO0FBWUQsNENBYUM7QUFZRCxrQ0FZQztBQVlELDBCQVlDO0FBWUQsOENBWUM7QUFZRCw4QkFZQztBQVlELHdDQVlDO0FBMU9ELHVEQUFrRTtBQUNsRSxzQ0FBeUM7QUFVekMsK0VBQStFO0FBQy9FLG9CQUFvQjtBQUNwQiwrRUFBK0U7QUFFbEUsUUFBQSxXQUFXLEdBQUc7SUFDekIsR0FBRyxFQUFFLENBQUMsU0FBUyxDQUFVO0lBQ3pCLFFBQVEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsbUJBQVcsQ0FBQyxHQUFHLEVBQUUsV0FBVyxDQUFVO0lBQzFELFlBQVksRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsbUJBQVcsQ0FBQyxRQUFRLEVBQUUsRUFBRSxPQUFPLENBQVU7SUFDakUsYUFBYSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsR0FBRyxtQkFBVyxDQUFDLFFBQVEsRUFBRSxFQUFFLFFBQVEsQ0FBVTtJQUNuRSxRQUFRLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxHQUFHLG1CQUFXLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBVTtJQUNyRCxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxHQUFHLG1CQUFXLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBVTtJQUNqRCxjQUFjLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxHQUFHLG1CQUFXLENBQUMsSUFBSSxFQUFFLEVBQUUsYUFBYSxDQUFVO0lBQ3JFLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsbUJBQVcsQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFVO0lBQ3JELFdBQVcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsbUJBQVcsQ0FB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bkMsT0FBTyxFQUFFLEtBQUssSUFBbUMsRUFBRTtZQUNqRCxNQUFNLE1BQU0sR0FBRyxJQUFBLHFCQUFZLEdBQUUsQ0FBQztZQUM5QixNQUFNLFFBQVEsR0FBRyxNQUFNLE1BQU0sQ0FBQyxHQUFHLENBQUMsNkJBQTZCLENBQUMsQ0FBQztZQUNqRSxPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUM7UUFDdkIsQ0FBQztRQUNELEdBQUcsT0FBTztLQUNYLENBQUMsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VRdWVyeSwgVXNlUXVlcnlPcHRpb25zIH0gZnJvbSAnQHRhbnN0YWNrL3JlYWN0LXF1ZXJ5JztcbmltcG9ydCB7IGdldEFwaUNsaWVudCB9IGZyb20gJy4uL2NsaWVudCc7XG5pbXBvcnQgdHlwZSB7XG4gIENoZWNrSW5SZXNwb25zZSxcbiAgQ2hlY2tJblN0cmVha1Jlc3BvbnNlLFxuICBNb29kTG9nUmVzcG9uc2UsXG4gIFdpblJlc3BvbnNlLFxuICBIYWJpdFJlc3BvbnNlLFxuICBSZWZsZWN0aW9uUmVzcG9uc2UsXG59IGZyb20gJy4uL3R5cGVzJztcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUVVFUlkgS0VZIEZBQ1RPUllcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0IGNvbnN0IHN1cHBvcnRLZXlzID0ge1xuICBhbGw6IFsnc3VwcG9ydCddIGFzIGNvbnN0LFxuICBjaGVja0luczogKCkgPT4gWy4uLnN1cHBvcnRLZXlzLmFsbCwgJ2NoZWNrLWlucyddIGFzIGNvbnN0LFxuICBjaGVja0luVG9kYXk6ICgpID0+IFsuLi5zdXBwb3J0S2V5cy5jaGVja0lucygpLCAndG9kYXknXSBhcyBjb25zdCxcbiAgY2hlY2tJblN0cmVhazogKCkgPT4gWy4uLnN1cHBvcnRLZXlzLmNoZWNrSW5zKCksICdzdHJlYWsnXSBhcyBjb25zdCxcbiAgbW9vZExvZ3M6ICgpID0+IFsuLi5zdXBwb3J0S2V5cy5hbGwsICdtb29kJ10gYXMgY29uc3QsXG4gIHdpbnM6ICgpID0+IFsuLi5zdXBwb3J0S2V5cy5hbGwsICd3aW5zJ10gYXMgY29uc3QsXG4gIHdpbnNCeUNhdGVnb3J5OiAoKSA9PiBbLi4uc3VwcG9ydEtleXMud2lucygpLCAnYnktY2F0ZWdvcnknXSBhcyBjb25zdCxcbiAgaGFiaXRzOiAoKSA9PiBbLi4uc3VwcG9ydEtleXMuYWxsLCAnaGFiaXRzJ10gYXMgY29uc3QsXG4gIHJlZmxlY3Rpb25zOiAoKSA9PiBbLi4uc3VwcG9ydEtleXMuYWxsLCAncmVmbGVjdGlvbnMnXSBhcyBjb25zdCxcbn07XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFRZUEVTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCBpbnRlcmZhY2UgV2luc0J5Q2F0ZWdvcnkge1xuICBjYXRlZ29yeTogc3RyaW5nO1xuICB3aW5zOiBXaW5SZXNwb25zZVtdO1xuICBjb3VudDogbnVtYmVyO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBRVUVSWSBIT09LU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIEdldCB1c2VyJ3MgZGFpbHkgY2hlY2staW5zXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBUYW5TdGFjayBRdWVyeSBvcHRpb25zXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzeFxuICogY29uc3QgeyBkYXRhLCBpc0xvYWRpbmcgfSA9IHVzZUNoZWNrSW5zKCk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVzZUNoZWNrSW5zKFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8Q2hlY2tJblJlc3BvbnNlW10+LCAncXVlcnlLZXknIHwgJ3F1ZXJ5Rm4nPlxuKSB7XG4gIHJldHVybiB1c2VRdWVyeSh7XG4gICAgcXVlcnlLZXk6IHN1cHBvcnRLZXlzLmNoZWNrSW5zKCksXG4gICAgcXVlcnlGbjogYXN5bmMgKCk6IFByb21pc2U8Q2hlY2tJblJlc3BvbnNlW10+ID0+IHtcbiAgICAgIGNvbnN0IGNsaWVudCA9IGdldEFwaUNsaWVudCgpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZ2V0KCcvYXBpL3YxL3N1cHBvcnQvY2hlY2staW5zJyk7XG4gICAgICAvLyBBUEkgd3JhcHMgcmVzcG9uc2VzIGluIHsgZGF0YTogWy4uLl0sIG1ldGE6IHsuLi59IH1cbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhPy5kYXRhIHx8IHJlc3BvbnNlLmRhdGEgfHwgW107XG4gICAgfSxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcbn1cblxuLyoqXG4gKiBHZXQgdG9kYXkncyBjaGVjay1pblxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGFuU3RhY2sgUXVlcnkgb3B0aW9uc1xuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c3hcbiAqIGNvbnN0IHsgZGF0YSwgaXNMb2FkaW5nIH0gPSB1c2VUb2RheUNoZWNrSW4oKTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlVG9kYXlDaGVja0luKFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8Q2hlY2tJblJlc3BvbnNlIHwgbnVsbD4sICdxdWVyeUtleScgfCAncXVlcnlGbic+XG4pIHtcbiAgcmV0dXJuIHVzZVF1ZXJ5KHtcbiAgICBxdWVyeUtleTogc3VwcG9ydEtleXMuY2hlY2tJblRvZGF5KCksXG4gICAgcXVlcnlGbjogYXN5bmMgKCk6IFByb21pc2U8Q2hlY2tJblJlc3BvbnNlIHwgbnVsbD4gPT4ge1xuICAgICAgY29uc3QgY2xpZW50ID0gZ2V0QXBpQ2xpZW50KCk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5nZXQoJy9hcGkvdjEvc3VwcG9ydC9jaGVjay1pbnMvdG9kYXknKTtcbiAgICAgIC8vIEFQSSB3cmFwcyByZXNwb25zZXMgaW4geyBkYXRhOiB7Li4ufSwgbWV0YTogey4uLn0gfVxuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE/LmRhdGEgPz8gcmVzcG9uc2UuZGF0YSA/PyBudWxsO1xuICAgIH0sXG4gICAgLi4ub3B0aW9ucyxcbiAgfSk7XG59XG5cbi8qKlxuICogR2V0IHVzZXIncyBjaGVjay1pbiBzdHJlYWtcbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRhblN0YWNrIFF1ZXJ5IG9wdGlvbnNcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHN4XG4gKiBjb25zdCB7IGRhdGEsIGlzTG9hZGluZyB9ID0gdXNlQ2hlY2tJblN0cmVhaygpO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VDaGVja0luU3RyZWFrKFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8Q2hlY2tJblN0cmVha1Jlc3BvbnNlPiwgJ3F1ZXJ5S2V5JyB8ICdxdWVyeUZuJz5cbikge1xuICByZXR1cm4gdXNlUXVlcnkoe1xuICAgIHF1ZXJ5S2V5OiBzdXBwb3J0S2V5cy5jaGVja0luU3RyZWFrKCksXG4gICAgcXVlcnlGbjogYXN5bmMgKCk6IFByb21pc2U8Q2hlY2tJblN0cmVha1Jlc3BvbnNlPiA9PiB7XG4gICAgICBjb25zdCBjbGllbnQgPSBnZXRBcGlDbGllbnQoKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgY2xpZW50LmdldCgnL2FwaS92MS9zdXBwb3J0L2NoZWNrLWlucy9zdHJlYWsnKTtcbiAgICAgIC8vIEFQSSB3cmFwcyByZXNwb25zZXMgaW4geyBkYXRhOiB7Li4ufSwgbWV0YTogey4uLn0gfVxuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE/LmRhdGEgfHwgcmVzcG9uc2UuZGF0YSB8fCB7IGN1cnJlbnRTdHJlYWs6IDAsIGxvbmdlc3RTdHJlYWs6IDAsIHRvdGFsQ2hlY2tJbnM6IDAgfTtcbiAgICB9LFxuICAgIC4uLm9wdGlvbnMsXG4gIH0pO1xufVxuXG4vKipcbiAqIEdldCB1c2VyJ3MgbW9vZCBsb2dzXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBUYW5TdGFjayBRdWVyeSBvcHRpb25zXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzeFxuICogY29uc3QgeyBkYXRhLCBpc0xvYWRpbmcgfSA9IHVzZU1vb2RMb2dzKCk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVzZU1vb2RMb2dzKFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8TW9vZExvZ1Jlc3BvbnNlW10+LCAncXVlcnlLZXknIHwgJ3F1ZXJ5Rm4nPlxuKSB7XG4gIHJldHVybiB1c2VRdWVyeSh7XG4gICAgcXVlcnlLZXk6IHN1cHBvcnRLZXlzLm1vb2RMb2dzKCksXG4gICAgcXVlcnlGbjogYXN5bmMgKCk6IFByb21pc2U8TW9vZExvZ1Jlc3BvbnNlW10+ID0+IHtcbiAgICAgIGNvbnN0IGNsaWVudCA9IGdldEFwaUNsaWVudCgpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZ2V0KCcvYXBpL3YxL3N1cHBvcnQvbW9vZCcpO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcbn1cblxuLyoqXG4gKiBHZXQgdXNlcidzIHdpbnNcbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRhblN0YWNrIFF1ZXJ5IG9wdGlvbnNcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHN4XG4gKiBjb25zdCB7IGRhdGEsIGlzTG9hZGluZyB9ID0gdXNlV2lucygpO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VXaW5zKFxuICBvcHRpb25zPzogT21pdDxVc2VRdWVyeU9wdGlvbnM8V2luUmVzcG9uc2VbXT4sICdxdWVyeUtleScgfCAncXVlcnlGbic+XG4pIHtcbiAgcmV0dXJuIHVzZVF1ZXJ5KHtcbiAgICBxdWVyeUtleTogc3VwcG9ydEtleXMud2lucygpLFxuICAgIHF1ZXJ5Rm46IGFzeW5jICgpOiBQcm9taXNlPFdpblJlc3BvbnNlW10+ID0+IHtcbiAgICAgIGNvbnN0IGNsaWVudCA9IGdldEFwaUNsaWVudCgpO1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZ2V0KCcvYXBpL3YxL3N1cHBvcnQvd2lucycpO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcbn1cblxuLyoqXG4gKiBHZXQgdXNlcidzIHdpbnMgZ3JvdXBlZCBieSBjYXRlZ29yeVxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGFuU3RhY2sgUXVlcnkgb3B0aW9uc1xuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c3hcbiAqIGNvbnN0IHsgZGF0YSwgaXNMb2FkaW5nIH0gPSB1c2VXaW5zQnlDYXRlZ29yeSgpO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VXaW5zQnlDYXRlZ29yeShcbiAgb3B0aW9ucz86IE9taXQ8VXNlUXVlcnlPcHRpb25zPFdpbnNCeUNhdGVnb3J5W10+LCAncXVlcnlLZXknIHwgJ3F1ZXJ5Rm4nPlxuKSB7XG4gIHJldHVybiB1c2VRdWVyeSh7XG4gICAgcXVlcnlLZXk6IHN1cHBvcnRLZXlzLndpbnNCeUNhdGVnb3J5KCksXG4gICAgcXVlcnlGbjogYXN5bmMgKCk6IFByb21pc2U8V2luc0J5Q2F0ZWdvcnlbXT4gPT4ge1xuICAgICAgY29uc3QgY2xpZW50ID0gZ2V0QXBpQ2xpZW50KCk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5nZXQoJy9hcGkvdjEvc3VwcG9ydC93aW5zL2J5LWNhdGVnb3J5Jyk7XG4gICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YTtcbiAgICB9LFxuICAgIC4uLm9wdGlvbnMsXG4gIH0pO1xufVxuXG4vKipcbiAqIEdldCB1c2VyJ3MgaGFiaXRzXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBUYW5TdGFjayBRdWVyeSBvcHRpb25zXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzeFxuICogY29uc3QgeyBkYXRhLCBpc0xvYWRpbmcgfSA9IHVzZUhhYml0cygpO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VIYWJpdHMoXG4gIG9wdGlvbnM/OiBPbWl0PFVzZVF1ZXJ5T3B0aW9uczxIYWJpdFJlc3BvbnNlW10+LCAncXVlcnlLZXknIHwgJ3F1ZXJ5Rm4nPlxuKSB7XG4gIHJldHVybiB1c2VRdWVyeSh7XG4gICAgcXVlcnlLZXk6IHN1cHBvcnRLZXlzLmhhYml0cygpLFxuICAgIHF1ZXJ5Rm46IGFzeW5jICgpOiBQcm9taXNlPEhhYml0UmVzcG9uc2VbXT4gPT4ge1xuICAgICAgY29uc3QgY2xpZW50ID0gZ2V0QXBpQ2xpZW50KCk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5nZXQoJy9hcGkvdjEvc3VwcG9ydC9oYWJpdHMnKTtcbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgIH0sXG4gICAgLi4ub3B0aW9ucyxcbiAgfSk7XG59XG5cbi8qKlxuICogR2V0IHVzZXIncyByZWZsZWN0aW9uc1xuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gVGFuU3RhY2sgUXVlcnkgb3B0aW9uc1xuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c3hcbiAqIGNvbnN0IHsgZGF0YSwgaXNMb2FkaW5nIH0gPSB1c2VSZWZsZWN0aW9ucygpO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VSZWZsZWN0aW9ucyhcbiAgb3B0aW9ucz86IE9taXQ8VXNlUXVlcnlPcHRpb25zPFJlZmxlY3Rpb25SZXNwb25zZVtdPiwgJ3F1ZXJ5S2V5JyB8ICdxdWVyeUZuJz5cbikge1xuICByZXR1cm4gdXNlUXVlcnkoe1xuICAgIHF1ZXJ5S2V5OiBzdXBwb3J0S2V5cy5yZWZsZWN0aW9ucygpLFxuICAgIHF1ZXJ5Rm46IGFzeW5jICgpOiBQcm9taXNlPFJlZmxlY3Rpb25SZXNwb25zZVtdPiA9PiB7XG4gICAgICBjb25zdCBjbGllbnQgPSBnZXRBcGlDbGllbnQoKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgY2xpZW50LmdldCgnL2FwaS92MS9zdXBwb3J0L3JlZmxlY3Rpb25zJyk7XG4gICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YTtcbiAgICB9LFxuICAgIC4uLm9wdGlvbnMsXG4gIH0pO1xufVxuIl19
|