@nlabs/reaktor 0.5.4 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -7
- package/lib/actions/conversations.js +68 -69
- package/lib/actions/dynamodb.js +22 -33
- package/lib/actions/email.js +32 -30
- package/lib/actions/files.js +39 -58
- package/lib/actions/groups.js +33 -28
- package/lib/actions/images.js +71 -82
- package/lib/actions/index.js +54 -37
- package/lib/actions/ios.js +21 -40
- package/lib/actions/locations.js +25 -22
- package/lib/actions/messages.js +31 -45
- package/lib/actions/notifications.js +13 -20
- package/lib/actions/payments.js +40 -52
- package/lib/actions/posts.js +68 -48
- package/lib/actions/reactions.js +29 -52
- package/lib/actions/s3.js +21 -18
- package/lib/actions/search.js +26 -40
- package/lib/actions/sms.js +24 -21
- package/lib/actions/statistics.js +14 -21
- package/lib/actions/subscription.js +27 -24
- package/lib/actions/tags.js +49 -56
- package/lib/actions/users.js +92 -106
- package/lib/actions/websockets.js +28 -41
- package/lib/config.js +21 -18
- package/lib/index.js +24 -22
- package/lib/lambdas/actions/websockets.js +21 -45
- package/lib/lambdas/authorizer.js +16 -24
- package/lib/lambdas/connection.js +18 -43
- package/lib/lambdas/utils/message.js +20 -17
- package/lib/lambdas/utils/websocket.js +33 -25
- package/lib/templates/email/layout.js +16 -9
- package/lib/templates/email/passwordForgot.js +16 -9
- package/lib/templates/email/passwordRecovery.js +16 -9
- package/lib/templates/email/verifyEmail.js +16 -9
- package/lib/templates/email/welcome.js +16 -9
- package/lib/templates/sms/passwordForgot.js +16 -9
- package/lib/templates/sms/passwordRecovery.js +16 -9
- package/lib/templates/sms/verifyEmail.js +16 -9
- package/lib/templates/sms/verifyPhone.js +16 -9
- package/lib/templates/sms/welcome.js +16 -9
- package/lib/types/apps.js +14 -5
- package/lib/types/arangodb.js +14 -5
- package/lib/types/auth.js +14 -5
- package/lib/types/connections.js +14 -5
- package/lib/types/conversations.js +14 -5
- package/lib/types/email.js +14 -5
- package/lib/types/files.js +14 -5
- package/lib/types/google.js +14 -5
- package/lib/types/groups.js +14 -5
- package/lib/types/images.js +14 -5
- package/lib/types/index.js +50 -35
- package/lib/types/locations.js +14 -5
- package/lib/types/messages.js +14 -5
- package/lib/types/notifications.js +14 -5
- package/lib/types/payments.js +14 -5
- package/lib/types/posts.js +14 -5
- package/lib/types/statistics.js +14 -5
- package/lib/types/tags.js +14 -5
- package/lib/types/users.js +14 -5
- package/lib/types/websocket.js +14 -5
- package/lib/utils/analytics.js +24 -44
- package/lib/utils/arangodb.js +15 -22
- package/lib/utils/auth.js +22 -36
- package/lib/utils/graphql.js +20 -17
- package/lib/utils/index.js +26 -23
- package/lib/utils/objects.js +22 -19
- package/lib/utils/session.js +20 -17
- package/package.json +31 -33
- package/.eslintrc +0 -18
- package/lib/actions/conversations.d.ts +0 -14
- package/lib/actions/dynamodb.d.ts +0 -8
- package/lib/actions/email.d.ts +0 -7
- package/lib/actions/files.d.ts +0 -16
- package/lib/actions/groups.d.ts +0 -14
- package/lib/actions/images.d.ts +0 -22
- package/lib/actions/index.d.ts +0 -20
- package/lib/actions/ios.d.ts +0 -7
- package/lib/actions/locations.d.ts +0 -3
- package/lib/actions/messages.d.ts +0 -13
- package/lib/actions/notifications.d.ts +0 -5
- package/lib/actions/payments.d.ts +0 -10
- package/lib/actions/posts.d.ts +0 -19
- package/lib/actions/reactions.d.ts +0 -30
- package/lib/actions/s3.d.ts +0 -7
- package/lib/actions/search.d.ts +0 -3
- package/lib/actions/sms.d.ts +0 -3
- package/lib/actions/statistics.d.ts +0 -2
- package/lib/actions/subscription.d.ts +0 -7
- package/lib/actions/tags.d.ts +0 -26
- package/lib/actions/users.d.ts +0 -44
- package/lib/actions/websockets.d.ts +0 -6
- package/lib/config.d.ts +0 -20
- package/lib/index.d.ts +0 -5
- package/lib/lambdas/actions/websockets.d.ts +0 -6
- package/lib/lambdas/authorizer.d.ts +0 -20
- package/lib/lambdas/connection.d.ts +0 -12
- package/lib/lambdas/utils/message.d.ts +0 -1
- package/lib/lambdas/utils/websocket.d.ts +0 -7
- package/lib/templates/email/layout.d.ts +0 -2
- package/lib/templates/email/passwordForgot.d.ts +0 -2
- package/lib/templates/email/passwordRecovery.d.ts +0 -2
- package/lib/templates/email/verifyEmail.d.ts +0 -2
- package/lib/templates/email/welcome.d.ts +0 -2
- package/lib/templates/sms/passwordForgot.d.ts +0 -2
- package/lib/templates/sms/passwordRecovery.d.ts +0 -2
- package/lib/templates/sms/verifyEmail.d.ts +0 -2
- package/lib/templates/sms/verifyPhone.d.ts +0 -2
- package/lib/templates/sms/welcome.d.ts +0 -2
- package/lib/types/apps.d.ts +0 -44
- package/lib/types/arangodb.d.ts +0 -17
- package/lib/types/auth.d.ts +0 -7
- package/lib/types/connections.d.ts +0 -8
- package/lib/types/conversations.d.ts +0 -11
- package/lib/types/email.d.ts +0 -12
- package/lib/types/files.d.ts +0 -26
- package/lib/types/google.d.ts +0 -27
- package/lib/types/groups.d.ts +0 -22
- package/lib/types/images.d.ts +0 -42
- package/lib/types/index.d.ts +0 -18
- package/lib/types/locations.d.ts +0 -20
- package/lib/types/messages.d.ts +0 -27
- package/lib/types/notifications.d.ts +0 -19
- package/lib/types/payments.d.ts +0 -115
- package/lib/types/posts.d.ts +0 -47
- package/lib/types/statistics.d.ts +0 -3
- package/lib/types/tags.d.ts +0 -15
- package/lib/types/users.d.ts +0 -80
- package/lib/types/websocket.d.ts +0 -14
- package/lib/utils/analytics.d.ts +0 -14
- package/lib/utils/arangodb.d.ts +0 -9
- package/lib/utils/auth.d.ts +0 -5
- package/lib/utils/graphql.d.ts +0 -1
- package/lib/utils/index.d.ts +0 -6
- package/lib/utils/objects.d.ts +0 -3
- package/lib/utils/session.d.ts +0 -18
package/lib/actions/reactions.js
CHANGED
|
@@ -1,47 +1,22 @@
|
|
|
1
|
-
var __create = Object.create;
|
|
2
1
|
var __defProp = Object.defineProperty;
|
|
3
|
-
var __defProps = Object.defineProperties;
|
|
4
2
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
-
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
6
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
8
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
9
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
10
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
11
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
12
|
-
var __spreadValues = (a, b) => {
|
|
13
|
-
for (var prop in b || (b = {}))
|
|
14
|
-
if (__hasOwnProp.call(b, prop))
|
|
15
|
-
__defNormalProp(a, prop, b[prop]);
|
|
16
|
-
if (__getOwnPropSymbols)
|
|
17
|
-
for (var prop of __getOwnPropSymbols(b)) {
|
|
18
|
-
if (__propIsEnum.call(b, prop))
|
|
19
|
-
__defNormalProp(a, prop, b[prop]);
|
|
20
|
-
}
|
|
21
|
-
return a;
|
|
22
|
-
};
|
|
23
|
-
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
24
|
-
var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
|
|
25
|
-
var __require = typeof require !== "undefined" ? require : (x) => {
|
|
26
|
-
throw new Error('Dynamic require of "' + x + '" is not supported');
|
|
27
|
-
};
|
|
28
5
|
var __export = (target, all) => {
|
|
29
|
-
__markAsModule(target);
|
|
30
6
|
for (var name in all)
|
|
31
7
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
32
8
|
};
|
|
33
|
-
var
|
|
34
|
-
if (
|
|
35
|
-
for (let key of __getOwnPropNames(
|
|
36
|
-
if (!__hasOwnProp.call(
|
|
37
|
-
__defProp(
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
38
14
|
}
|
|
39
|
-
return
|
|
15
|
+
return to;
|
|
40
16
|
};
|
|
41
|
-
var
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
__export(exports, {
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
var reactions_exports = {};
|
|
19
|
+
__export(reactions_exports, {
|
|
45
20
|
addReaction: () => addReaction,
|
|
46
21
|
deleteReaction: () => deleteReaction,
|
|
47
22
|
deleteReactionByItem: () => deleteReactionByItem,
|
|
@@ -54,9 +29,10 @@ __export(exports, {
|
|
|
54
29
|
parseReactionOptions: () => parseReactionOptions,
|
|
55
30
|
updateReaction: () => updateReaction
|
|
56
31
|
});
|
|
57
|
-
|
|
58
|
-
var
|
|
59
|
-
var
|
|
32
|
+
module.exports = __toCommonJS(reactions_exports);
|
|
33
|
+
var import_utils = require("@nlabs/utils");
|
|
34
|
+
var import_arangojs = require("arangojs");
|
|
35
|
+
var import_utils2 = require("../utils");
|
|
60
36
|
const eventCategory = "reactions";
|
|
61
37
|
const parseReactionOptions = (options = {}) => {
|
|
62
38
|
const {
|
|
@@ -85,7 +61,7 @@ const addReaction = (context, itemId, reaction = {}, allowDuplicate = false) =>
|
|
|
85
61
|
const formatItemId = (0, import_utils.parseArangoId)(itemId);
|
|
86
62
|
const formatReactionName = (0, import_utils.parseChar)(itemName, 32);
|
|
87
63
|
const formatValue = (0, import_utils.parseString)(itemValue, 32);
|
|
88
|
-
const edgeCollection = database.collection("
|
|
64
|
+
const edgeCollection = database.collection("hasReaction");
|
|
89
65
|
const sessionDocId = `users/${sessionId}`;
|
|
90
66
|
const edgeId = (0, import_utils.createHash)(`reaction-${formatItemId}-${sessionId}`);
|
|
91
67
|
const edge = {
|
|
@@ -97,7 +73,7 @@ const addReaction = (context, itemId, reaction = {}, allowDuplicate = false) =>
|
|
|
97
73
|
value: itemValue !== void 0 ? formatValue : void 0
|
|
98
74
|
};
|
|
99
75
|
if (!allowDuplicate) {
|
|
100
|
-
const aqlQry = import_arangojs.aql`FOR r IN
|
|
76
|
+
const aqlQry = import_arangojs.aql`FOR r IN hasReaction
|
|
101
77
|
FILTER r._from == ${sessionDocId} && r._to == ${formatItemId} && r.name == ${formatReactionName}
|
|
102
78
|
LIMIT 1
|
|
103
79
|
RETURN r`;
|
|
@@ -129,11 +105,11 @@ const deleteReaction = (context, reactionId) => {
|
|
|
129
105
|
}, context).then(() => null);
|
|
130
106
|
}
|
|
131
107
|
const formatSessionId = `users/${(0, import_utils.parseId)(sessionId)}`;
|
|
132
|
-
const formatReactionId = `
|
|
108
|
+
const formatReactionId = `hasReaction/${(0, import_utils.parseId)(reactionId)}`;
|
|
133
109
|
const aqlQry = import_arangojs.aql`LET r = DOCUMENT(${formatReactionId})
|
|
134
110
|
FILTER r._from == ${formatSessionId}
|
|
135
111
|
LIMIT 1
|
|
136
|
-
REMOVE r IN
|
|
112
|
+
REMOVE r IN hasReaction
|
|
137
113
|
RETURN OLD`;
|
|
138
114
|
return database.query(aqlQry).then((cursor) => cursor.next()).catch((error) => (0, import_utils2.logError)({
|
|
139
115
|
action,
|
|
@@ -155,10 +131,10 @@ const deleteReactionByItem = (context, itemId, reactionName) => {
|
|
|
155
131
|
const formatSessionId = `users/${(0, import_utils.parseId)(sessionId)}`;
|
|
156
132
|
const formatItemDocId = (0, import_utils.parseArangoId)(itemId);
|
|
157
133
|
const formatReactionName = (0, import_utils.parseChar)(reactionName);
|
|
158
|
-
const aqlQry = import_arangojs.aql`FOR r in
|
|
134
|
+
const aqlQry = import_arangojs.aql`FOR r in hasReaction
|
|
159
135
|
FILTER r._from == ${formatSessionId} && r._to == ${formatItemDocId} && r.name == ${formatReactionName}
|
|
160
136
|
LIMIT 1
|
|
161
|
-
REMOVE r IN
|
|
137
|
+
REMOVE r IN hasReaction
|
|
162
138
|
RETURN OLD`;
|
|
163
139
|
return database.query(aqlQry).then((cursor) => cursor.next()).catch((error) => (0, import_utils2.logError)({
|
|
164
140
|
action,
|
|
@@ -190,10 +166,11 @@ const updateReaction = (context, reaction = {}) => {
|
|
|
190
166
|
name: formatName,
|
|
191
167
|
value: formatValue
|
|
192
168
|
};
|
|
193
|
-
const insert =
|
|
169
|
+
const insert = {
|
|
170
|
+
...update,
|
|
194
171
|
_key: edgeId,
|
|
195
172
|
added: Date.now()
|
|
196
|
-
}
|
|
173
|
+
};
|
|
197
174
|
const aqlQry = import_arangojs.aql`UPSERT ${{ _id: formatId }}
|
|
198
175
|
INSERT ${insert}
|
|
199
176
|
UPDATE ${update}
|
|
@@ -210,7 +187,7 @@ const getReactionCount = (context, itemId, reactionName) => {
|
|
|
210
187
|
const { database } = context;
|
|
211
188
|
const formatItemId = (0, import_utils.parseArangoId)(itemId);
|
|
212
189
|
const formatReactionName = (0, import_utils.parseChar)(reactionName, 32);
|
|
213
|
-
const aqlQry = import_arangojs.aql`FOR i, r IN INBOUND ${formatItemId}
|
|
190
|
+
const aqlQry = import_arangojs.aql`FOR i, r IN INBOUND ${formatItemId} hasReaction
|
|
214
191
|
FILTER r.name == ${formatReactionName}
|
|
215
192
|
COLLECT WITH COUNT INTO count
|
|
216
193
|
RETURN count`;
|
|
@@ -226,7 +203,7 @@ const getReactionCountByUser = (context, itemId, itemType, reactionName) => {
|
|
|
226
203
|
const formatItemId = (0, import_utils.parseArangoId)(itemId);
|
|
227
204
|
const formatReactionName = (0, import_utils.parseChar)(reactionName, 32);
|
|
228
205
|
const sessionDocId = `users/${sessionId}`;
|
|
229
|
-
const aqlQry = import_arangojs.aql`FOR i, r IN INBOUND ${formatItemId}
|
|
206
|
+
const aqlQry = import_arangojs.aql`FOR i, r IN INBOUND ${formatItemId} hasReaction
|
|
230
207
|
FILTER r.name == ${formatReactionName} && r._from == ${sessionDocId}
|
|
231
208
|
COLLECT reactionValue = r.value INTO reactionItems
|
|
232
209
|
RETURN MERGE(r, {count: LENGTH(reactionItems[*].r.value)})`;
|
|
@@ -266,7 +243,7 @@ const getGroupUsersByReaction = (context, params = {}) => {
|
|
|
266
243
|
`r.value == "${reaction}"`,
|
|
267
244
|
"u._id == r._from"
|
|
268
245
|
]).join(" && ");
|
|
269
|
-
const aqlQry = `FOR g, r IN INBOUND "${groupDocId}"
|
|
246
|
+
const aqlQry = `FOR g, r IN INBOUND "${groupDocId}" hasReaction
|
|
270
247
|
FOR u IN users
|
|
271
248
|
FILTER ${filterStr}
|
|
272
249
|
RETURN u`;
|
|
@@ -282,7 +259,7 @@ const getReactionsByItem = (context, itemId, reactionName, options) => {
|
|
|
282
259
|
const formatItemId = (0, import_utils.parseArangoId)(itemId);
|
|
283
260
|
const formatReactionName = (0, import_utils.parseChar)(reactionName, 32);
|
|
284
261
|
const { limit } = parseReactionOptions(options);
|
|
285
|
-
const aqlQry = `FOR i, r IN INBOUND "${formatItemId}"
|
|
262
|
+
const aqlQry = `FOR i, r IN INBOUND "${formatItemId}" hasReaction
|
|
286
263
|
FILTER r.name == "${formatReactionName}"
|
|
287
264
|
${limit.aql}
|
|
288
265
|
RETURN MERGE(i, {reaction: r})`;
|
|
@@ -298,7 +275,7 @@ const getItemsByReaction = (context, itemId, reactionName, options) => {
|
|
|
298
275
|
const formatItemId = (0, import_utils.parseArangoId)(itemId);
|
|
299
276
|
const formatReactionName = (0, import_utils.parseChar)(reactionName, 32);
|
|
300
277
|
const { limit } = parseReactionOptions(options);
|
|
301
|
-
const aqlQry = `FOR u, r IN OUTBOUND "${formatItemId}"
|
|
278
|
+
const aqlQry = `FOR u, r IN OUTBOUND "${formatItemId}" hasReaction
|
|
302
279
|
FILTER r.name == ${formatReactionName}
|
|
303
280
|
${limit.aql}
|
|
304
281
|
RETURN MERGE(u, {reaction: r})`;
|
|
@@ -315,7 +292,7 @@ const hasReaction = (context, itemId, reactionName, direction = "OUTBOUND") => {
|
|
|
315
292
|
const formatItemId = (0, import_utils.parseArangoId)(itemId);
|
|
316
293
|
const formatDirection = direction === "OUTBOUND" ? "OUTBOUND" : "INBOUND";
|
|
317
294
|
const itemDirection = direction === "OUTBOUND" ? "r._to" : "r._from";
|
|
318
|
-
const aqlQry = `FOR i, r IN ${formatDirection} "${sessionDocId}"
|
|
295
|
+
const aqlQry = `FOR i, r IN ${formatDirection} "${sessionDocId}" hasReaction
|
|
319
296
|
FILTER r.name == "${reactionName}" && ${itemDirection} == "${formatItemId}"
|
|
320
297
|
LIMIT 1
|
|
321
298
|
RETURN r`;
|
|
@@ -340,4 +317,4 @@ const hasReaction = (context, itemId, reactionName, direction = "OUTBOUND") => {
|
|
|
340
317
|
parseReactionOptions,
|
|
341
318
|
updateReaction
|
|
342
319
|
});
|
|
343
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FjdGlvbnMvcmVhY3Rpb25zLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJpbXBvcnQge2NyZWF0ZUhhc2gsIHBhcnNlQXJhbmdvSWQsIHBhcnNlQ2hhciwgcGFyc2VJZCwgcGFyc2VOdW0sIHBhcnNlU3RyaW5nfSBmcm9tICdAbmxhYnMvdXRpbHMnO1xuaW1wb3J0IHthcWx9IGZyb20gJ2FyYW5nb2pzJztcbmltcG9ydCB7QXFsUXVlcnl9IGZyb20gJ2FyYW5nb2pzL2FxbCc7XG5pbXBvcnQge0VkZ2VDb2xsZWN0aW9ufSBmcm9tICdhcmFuZ29qcy9jb2xsZWN0aW9uJztcbmltcG9ydCB7QXJyYXlDdXJzb3J9IGZyb20gJ2FyYW5nb2pzL2N1cnNvcic7XG5cbmltcG9ydCB7QXBpQ29udGV4dCwgQXBwQ29sbGVjdGlvblR5cGVzLCBRdWVyeUZpbHRlciwgVXNlciwgVXNlclJlYWN0aW9uUXVlcnl9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7Z2V0TGltaXQsIGxvZ0Vycm9yLCBsb2dFeGNlcHRpb259IGZyb20gJy4uL3V0aWxzJztcblxuY29uc3QgZXZlbnRDYXRlZ29yeTogc3RyaW5nID0gJ3JlYWN0aW9ucyc7XG5cbmV4cG9ydCB0eXBlIFJlYWN0aW9uRGlyZWN0aW9uID0gJ0lOQk9VTkQnIHwgJ09VVEJPVU5EJztcblxuZXhwb3J0IGludGVyZmFjZSBSZWFjdGlvbiB7XG4gIHJlYWRvbmx5IF9mcm9tPzogc3RyaW5nO1xuICByZWFkb25seSBfa2V5Pzogc3RyaW5nO1xuICByZWFkb25seSBfdG8/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGFkZGVkPzogbnVtYmVyO1xuICByZWFkb25seSBjb3VudD86IG51bWJlcjtcbiAgcmVhZG9ubHkgaWQ/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IG5hbWU/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHR5cGU/OiBBcHBDb2xsZWN0aW9uVHlwZXM7XG4gIHJlYWRvbmx5IHZhbHVlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlYWN0aW9uT3B0aW9ucyB7XG4gIHJlYWRvbmx5IGZyb20/OiBudW1iZXI7XG4gIHJlYWRvbmx5IHRvPzogbnVtYmVyO1xufVxuXG5leHBvcnQgY29uc3QgcGFyc2VSZWFjdGlvbk9wdGlvbnMgPSAob3B0aW9uczogUmVhY3Rpb25PcHRpb25zID0ge30pID0+IHtcbiAgY29uc3Qge1xuICAgIGZyb20gPSAwLFxuICAgIHRvID0gMzBcbiAgfSA9IG9wdGlvbnM7XG5cbiAgcmV0dXJuIHtcbiAgICBsaW1pdDogZ2V0TGltaXQoZnJvbSwgdG8pXG4gIH07XG59O1xuXG5leHBvcnQgY29uc3QgYWRkUmVhY3Rpb24gPSAoXG4gIGNvbnRleHQ6IEFwaUNvbnRleHQsXG4gIGl0ZW1JZDogc3RyaW5nLFxuICByZWFjdGlvbjogUmVhY3Rpb24gPSB7fSxcbiAgYWxsb3dEdXBsaWNhdGU6IGJvb2xlYW4gPSBmYWxzZVxuKTogUHJvbWlzZTxSZWFjdGlvbj4gPT4ge1xuICBjb25zdCBhY3Rpb246IHN0cmluZyA9ICdhZGRSZWFjdGlvbic7XG4gIGNvbnN0IHtkYXRhYmFzZSwgc2Vzc2lvbjoge3VzZXJJZDogc2Vzc2lvbklkfX0gPSBjb250ZXh0O1xuXG4gIGlmKCFzZXNzaW9uSWQpIHtcbiAgICByZXR1cm4gbG9nRXhjZXB0aW9uKHtcbiAgICAgIGFjdGlvbixcbiAgICAgIGNhdGVnb3J5OiBldmVudENhdGVnb3J5LFxuICAgICAgbGFiZWw6ICd1bmF1dGhvcml6ZWQnLFxuICAgICAgdmFsdWU6ICdpbnZhbGlkX3Nlc3Npb24nXG4gICAgfSwgY29udGV4dCkudGhlbigoKSA9PiBudWxsKTtcbiAgfVxuXG4gIGNvbnN0IHtcbiAgICBuYW1lOiBpdGVtTmFtZSA9ICdsaWtlJyxcbiAgICB2YWx1ZTogaXRlbVZhbHVlXG4gIH0gPSByZWFjdGlvbjtcbiAgY29uc3QgZm9ybWF0SXRlbUlkOiBzdHJpbmcgPSBwYXJzZUFyYW5nb0lkKGl0ZW1JZCk7XG4gIGNvbnN0IGZvcm1hdFJlYWN0aW9uTmFtZTogc3RyaW5nID0gcGFyc2VDaGFyKGl0ZW1OYW1lLCAzMik7XG4gIGNvbnN0IGZvcm1hdFZhbHVlOiBzdHJpbmcgPSBwYXJzZVN0cmluZyhpdGVtVmFsdWUsIDMyKTtcbiAgY29uc3QgZWRnZUNvbGxlY3Rpb246IEVkZ2VDb2xsZWN0aW9uID0gZGF0YWJhc2UuY29sbGVjdGlvbignaGFzUmVhY3Rpb25zJyk7XG4gIGNvbnN0IHNlc3Npb25Eb2NJZDogc3RyaW5nID0gYHVzZXJzLyR7c2Vzc2lvbklkfWA7XG4gIGNvbnN0IGVkZ2VJZDogc3RyaW5nID0gY3JlYXRlSGFzaChgcmVhY3Rpb24tJHtmb3JtYXRJdGVtSWR9LSR7c2Vzc2lvbklkfWApO1xuICBjb25zdCBlZGdlOiBSZWFjdGlvbiA9IHtcbiAgICBfZnJvbTogc2Vzc2lvbkRvY0lkLFxuICAgIF9rZXk6IGVkZ2VJZCxcbiAgICBfdG86IGZvcm1hdEl0ZW1JZCxcbiAgICBhZGRlZDogRGF0ZS5ub3coKSxcbiAgICBuYW1lOiBmb3JtYXRSZWFjdGlvbk5hbWUsXG4gICAgdmFsdWU6IGl0ZW1WYWx1ZSAhPT0gdW5kZWZpbmVkID8gZm9ybWF0VmFsdWUgOiB1bmRlZmluZWRcbiAgfTtcblxuICAvLyBDaGVjayBmb3IgZHVwbGljYXRlcyBpZiBub3QgYWxsb3dlZFxuICBpZighYWxsb3dEdXBsaWNhdGUpIHtcbiAgICAvLyBRdWVyeVxuICAgIGNvbnN0IGFxbFFyeTogQXFsUXVlcnkgPSBhcWxgRk9SIHIgSU4gaGFzUmVhY3Rpb25zXG4gICAgICBGSUxURVIgci5fZnJvbSA9PSAke3Nlc3Npb25Eb2NJZH0gJiYgci5fdG8gPT0gJHtmb3JtYXRJdGVtSWR9ICYmIHIubmFtZSA9PSAke2Zvcm1hdFJlYWN0aW9uTmFtZX1cbiAgICAgIExJTUlUIDFcbiAgICAgIFJFVFVSTiByYDtcblxuICAgIHJldHVybiBkYXRhYmFzZS5xdWVyeShhcWxRcnkpXG4gICAgICAudGhlbigoY3Vyc29yOiBBcnJheUN1cnNvcikgPT4gY3Vyc29yLm5leHQoKSlcbiAgICAgIC50aGVuKChyZWFjdGlvbikgPT4ge1xuICAgICAgICBpZighIXJlYWN0aW9uKSB7XG4gICAgICAgICAgcmV0dXJuIHJlYWN0aW9uO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGVkZ2VDb2xsZWN0aW9uLnNhdmUoZWRnZSwge3JldHVybk5ldzogdHJ1ZX0pLnRoZW4oKCkgPT4gZWRnZSk7XG4gICAgICB9KVxuICAgICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IHtcbiAgICAgICAgY29uc29sZS5sb2coJ2FkZFJlYWN0aW9uOjplcnJvcicsIGVycm9yKTtcbiAgICAgICAgcmV0dXJuIGxvZ0Vycm9yKHtcbiAgICAgICAgICBhY3Rpb24sXG4gICAgICAgICAgY2F0ZWdvcnk6IGV2ZW50Q2F0ZWdvcnksXG4gICAgICAgICAgbGFiZWw6ICdkYl9lcnJvcidcbiAgICAgICAgfSwgZXJyb3IsIGNvbnRleHQpLnRoZW4oKCkgPT4gbnVsbCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHJldHVybiBlZGdlQ29sbGVjdGlvbi5zYXZlKGVkZ2UsIHtyZXR1cm5OZXc6IHRydWV9KS50aGVuKCgpID0+IGVkZ2UpO1xufTtcblxuZXhwb3J0IGNvbnN0IGRlbGV0ZVJlYWN0aW9uID0gKGNvbnRleHQ6IEFwaUNvbnRleHQsIHJlYWN0aW9uSWQ6IHN0cmluZyk6IFByb21pc2U8UmVhY3Rpb24+ID0+IHtcbiAgY29uc3QgYWN0aW9uOiBzdHJpbmcgPSAnZGVsZXRlUmVhY3Rpb24nO1xuICBjb25zdCB7ZGF0YWJhc2UsIHNlc3Npb246IHt1c2VySWQ6IHNlc3Npb25JZH19ID0gY29udGV4dDtcblxuICBpZighc2Vzc2lvbklkKSB7XG4gICAgcmV0dXJuIGxvZ0V4Y2VwdGlvbih7XG4gICAgICBhY3Rpb24sXG4gICAgICBjYXRlZ29yeTogZXZlbnRDYXRlZ29yeSxcbiAgICAgIGxhYmVsOiAndW5hdXRob3JpemVkJyxcbiAgICAgIHZhbHVlOiAnaW52YWxpZF9zZXNzaW9uJ1xuICAgIH0sIGNvbnRleHQpLnRoZW4oKCkgPT4gbnVsbCk7XG4gIH1cblxuICBjb25zdCBmb3JtYXRTZXNzaW9uSWQ6IHN0cmluZyA9IGB1c2Vycy8ke3BhcnNlSWQoc2Vzc2lvbklkKX1gO1xuICBjb25zdCBmb3JtYXRSZWFjdGlvbklkOiBzdHJpbmcgPSBgaGFzUmVhY3Rpb25zLyR7cGFyc2VJZChyZWFjdGlvbklkKX1gO1xuXG4gIC8vIFF1ZXJ5XG4gIGNvbnN0IGFxbFFyeTogQXFsUXVlcnkgPSBhcWxgTEVUIHIgPSBET0NVTUVOVCgke2Zvcm1hdFJlYWN0aW9uSWR9KVxuICAgIEZJTFRFUiByLl9mcm9tID09ICR7Zm9ybWF0U2Vzc2lvbklkfVxuICAgIExJTUlUIDFcbiAgICBSRU1PVkUgciBJTiBoYXNSZWFjdGlvbnNcbiAgICBSRVRVUk4gT0xEYDtcblxuICByZXR1cm4gZGF0YWJhc2UucXVlcnkoYXFsUXJ5KVxuICAgIC50aGVuKChjdXJzb3I6IEFycmF5Q3Vyc29yKSA9PiBjdXJzb3IubmV4dCgpKVxuICAgIC5jYXRjaCgoZXJyb3I6IEVycm9yKSA9PiBsb2dFcnJvcih7XG4gICAgICBhY3Rpb24sXG4gICAgICBjYXRlZ29yeTogZXZlbnRDYXRlZ29yeSxcbiAgICAgIGxhYmVsOiAnZGJfZXJyb3InXG4gICAgfSwgZXJyb3IsIGNvbnRleHQpLnRoZW4oKCkgPT4gbnVsbCkpO1xufTtcblxuZXhwb3J0IGNvbnN0IGRlbGV0ZVJlYWN0aW9uQnlJdGVtID0gKFxuICBjb250ZXh0OiBBcGlDb250ZXh0LFxuICBpdGVtSWQ6IHN0cmluZyxcbiAgcmVhY3Rpb25OYW1lOiBzdHJpbmdcbik6IFByb21pc2U8UmVhY3Rpb24+ID0+IHtcbiAgY29uc3QgYWN0aW9uOiBzdHJpbmcgPSAnZGVsZXRlUmVhY3Rpb25CeUl0ZW0nO1xuICBjb25zdCB7ZGF0YWJhc2UsIHNlc3Npb246IHt1c2VySWQ6IHNlc3Npb25JZH19ID0gY29udGV4dDtcblxuICBpZighc2Vzc2lvbklkKSB7XG4gICAgcmV0dXJuIGxvZ0V4Y2VwdGlvbih7XG4gICAgICBhY3Rpb24sXG4gICAgICBjYXRlZ29yeTogZXZlbnRDYXRlZ29yeSxcbiAgICAgIGxhYmVsOiAndW5hdXRob3JpemVkJyxcbiAgICAgIHZhbHVlOiAnaW52YWxpZF9zZXNzaW9uJ1xuICAgIH0sIGNvbnRleHQpLnRoZW4oKCkgPT4gbnVsbCk7XG4gIH1cblxuICBjb25zdCBmb3JtYXRTZXNzaW9uSWQ6IHN0cmluZyA9IGB1c2Vycy8ke3BhcnNlSWQoc2Vzc2lvbklkKX1gO1xuICBjb25zdCBmb3JtYXRJdGVtRG9jSWQ6IHN0cmluZyA9IHBhcnNlQXJhbmdvSWQoaXRlbUlkKTtcbiAgY29uc3QgZm9ybWF0UmVhY3Rpb25OYW1lOiBzdHJpbmcgPSBwYXJzZUNoYXIocmVhY3Rpb25OYW1lKTtcblxuICAvLyBRdWVyeVxuICBjb25zdCBhcWxRcnk6IEFxbFF1ZXJ5ID0gYXFsYEZPUiByIGluIGhhc1JlYWN0aW9uc1xuICAgIEZJTFRFUiByLl9mcm9tID09ICR7Zm9ybWF0U2Vzc2lvbklkfSAmJiByLl90byA9PSAke2Zvcm1hdEl0ZW1Eb2NJZH0gJiYgci5uYW1lID09ICR7Zm9ybWF0UmVhY3Rpb25OYW1lfVxuICAgIExJTUlUIDFcbiAgICBSRU1PVkUgciBJTiBoYXNSZWFjdGlvbnNcbiAgICBSRVRVUk4gT0xEYDtcblxuICByZXR1cm4gZGF0YWJhc2UucXVlcnkoYXFsUXJ5KVxuICAgIC50aGVuKChjdXJzb3I6IEFycmF5Q3Vyc29yKSA9PiBjdXJzb3IubmV4dCgpKVxuICAgIC5jYXRjaCgoZXJyb3I6IEVycm9yKSA9PiBsb2dFcnJvcih7XG4gICAgICBhY3Rpb24sXG4gICAgICBjYXRlZ29yeTogZXZlbnRDYXRlZ29yeSxcbiAgICAgIGxhYmVsOiAnZGJfZXJyb3InXG4gICAgfSwgZXJyb3IsIGNvbnRleHQpLnRoZW4oKCkgPT4gbnVsbCkpO1xufTtcblxuZXhwb3J0IGNvbnN0IHVwZGF0ZVJlYWN0aW9uID0gKGNvbnRleHQ6IEFwaUNvbnRleHQsIHJlYWN0aW9uOiBSZWFjdGlvbiA9IHt9KTogUHJvbWlzZTxSZWFjdGlvbj4gPT4ge1xuICBjb25zdCBhY3Rpb246IHN0cmluZyA9ICd1cGRhdGVSZWFjdGlvbic7XG4gIGNvbnN0IHtkYXRhYmFzZSwgc2Vzc2lvbjoge3VzZXJJZDogc2Vzc2lvbklkfX0gPSBjb250ZXh0O1xuXG4gIGlmKCFzZXNzaW9uSWQpIHtcbiAgICByZXR1cm4gbG9nRXhjZXB0aW9uKHtcbiAgICAgIGFjdGlvbixcbiAgICAgIGNhdGVnb3J5OiBldmVudENhdGVnb3J5LFxuICAgICAgbGFiZWw6ICd1bmF1dGhvcml6ZWQnLFxuICAgICAgdmFsdWU6ICdpbnZhbGlkX3Nlc3Npb24nXG4gICAgfSwgY29udGV4dCkudGhlbigoKSA9PiBudWxsKTtcbiAgfVxuXG4gIGNvbnN0IHtcbiAgICBpZDogaXRlbUlkLFxuICAgIG5hbWU6IGl0ZW1OYW1lLFxuICAgIHZhbHVlOiBpdGVtVmFsdWVcbiAgfSA9IHJlYWN0aW9uO1xuICBjb25zdCBmb3JtYXRJZDogc3RyaW5nID0gcGFyc2VBcmFuZ29JZChpdGVtSWQpO1xuICBjb25zdCBmb3JtYXROYW1lOiBzdHJpbmcgPSBwYXJzZUNoYXIoaXRlbU5hbWUsIDMyKTtcbiAgY29uc3QgZm9ybWF0VmFsdWU6IHN0cmluZyA9IHBhcnNlU3RyaW5nKGl0ZW1WYWx1ZSwgMzIpO1xuICBjb25zdCBlZGdlSWQ6IHN0cmluZyA9IGNyZWF0ZUhhc2goYHJlYWN0aW9uLSR7Zm9ybWF0SWR9LSR7c2Vzc2lvbklkfWApO1xuICBjb25zdCB1cGRhdGU6IFJlYWN0aW9uID0ge1xuICAgIG5hbWU6IGZvcm1hdE5hbWUsXG4gICAgdmFsdWU6IGZvcm1hdFZhbHVlXG4gIH07XG4gIGNvbnN0IGluc2VydDogUmVhY3Rpb24gPSB7XG4gICAgLi4udXBkYXRlLFxuICAgIF9rZXk6IGVkZ2VJZCxcbiAgICBhZGRlZDogRGF0ZS5ub3coKVxuICB9O1xuXG4gIC8vIFF1ZXJ5XG4gIGNvbnN0IGFxbFFyeTogQXFsUXVlcnkgPSBhcWxgVVBTRVJUICR7e19pZDogZm9ybWF0SWR9fVxuICAgIElOU0VSVCAke2luc2VydH1cbiAgICBVUERBVEUgJHt1cGRhdGV9XG4gICAgTElNSVQgMVxuICAgIFJFVFVSTiBORVdgO1xuXG4gIHJldHVybiBkYXRhYmFzZS5xdWVyeShhcWxRcnkpXG4gICAgLnRoZW4oKGN1cnNvcjogQXJyYXlDdXJzb3IpID0+IGN1cnNvci5uZXh0KCkpXG4gICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IGxvZ0Vycm9yKHtcbiAgICAgIGFjdGlvbixcbiAgICAgIGNhdGVnb3J5OiBldmVudENhdGVnb3J5LFxuICAgICAgbGFiZWw6ICdkYl9lcnJvcidcbiAgICB9LCBlcnJvciwgY29udGV4dCkudGhlbigoKSA9PiBudWxsKSk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0UmVhY3Rpb25Db3VudCA9IChcbiAgY29udGV4dDogQXBpQ29udGV4dCxcbiAgaXRlbUlkOiBzdHJpbmcsXG4gIHJlYWN0aW9uTmFtZTogc3RyaW5nXG4pOiBQcm9taXNlPFJlYWN0aW9uPiA9PiB7XG4gIGNvbnN0IGFjdGlvbjogc3RyaW5nID0gJ2dldFJlYWN0aW9uQ291bnQnO1xuICBjb25zdCB7ZGF0YWJhc2V9ID0gY29udGV4dDtcbiAgY29uc3QgZm9ybWF0SXRlbUlkOiBzdHJpbmcgPSBwYXJzZUFyYW5nb0lkKGl0ZW1JZCk7XG4gIGNvbnN0IGZvcm1hdFJlYWN0aW9uTmFtZTogYW55ID0gcGFyc2VDaGFyKHJlYWN0aW9uTmFtZSwgMzIpO1xuXG4gIC8vIFF1ZXJ5XG4gIGNvbnN0IGFxbFFyeTogQXFsUXVlcnkgPSBhcWxgRk9SIGksIHIgSU4gSU5CT1VORCAke2Zvcm1hdEl0ZW1JZH0gaGFzUmVhY3Rpb25zXG4gICAgRklMVEVSIHIubmFtZSA9PSAke2Zvcm1hdFJlYWN0aW9uTmFtZX1cbiAgICBDT0xMRUNUIFdJVEggQ09VTlQgSU5UTyBjb3VudFxuICAgIFJFVFVSTiBjb3VudGA7XG5cbiAgcmV0dXJuIGRhdGFiYXNlLnF1ZXJ5KGFxbFFyeSlcbiAgICAudGhlbigoY3Vyc29yOiBBcnJheUN1cnNvcikgPT4gY3Vyc29yLm5leHQoKSlcbiAgICAuY2F0Y2goKGVycm9yOiBFcnJvcikgPT4gbG9nRXJyb3Ioe1xuICAgICAgYWN0aW9uLFxuICAgICAgY2F0ZWdvcnk6IGV2ZW50Q2F0ZWdvcnksXG4gICAgICBsYWJlbDogJ2RiX2Vycm9yJ1xuICAgIH0sIGVycm9yLCBjb250ZXh0KS50aGVuKCgpID0+IHVuZGVmaW5lZCkpO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldFJlYWN0aW9uQ291bnRCeVVzZXIgPSAoXG4gIGNvbnRleHQ6IEFwaUNvbnRleHQsXG4gIGl0ZW1JZDogc3RyaW5nLFxuICBpdGVtVHlwZTogc3RyaW5nLFxuICByZWFjdGlvbk5hbWU6IHN0cmluZ1xuKTogUHJvbWlzZTxSZWFjdGlvbltdPiA9PiB7XG4gIGNvbnN0IGFjdGlvbjogc3RyaW5nID0gJ2dldFJlYWN0aW9uQ291bnRCeVVzZXInO1xuICBjb25zdCB7ZGF0YWJhc2UsIHNlc3Npb246IHt1c2VySWQ6IHNlc3Npb25JZH19ID0gY29udGV4dDtcbiAgY29uc3QgZm9ybWF0SXRlbUlkOiBzdHJpbmcgPSBwYXJzZUFyYW5nb0lkKGl0ZW1JZCk7XG4gIGNvbnN0IGZvcm1hdFJlYWN0aW9uTmFtZTogYW55ID0gcGFyc2VDaGFyKHJlYWN0aW9uTmFtZSwgMzIpO1xuICBjb25zdCBzZXNzaW9uRG9jSWQ6IHN0cmluZyA9IGB1c2Vycy8ke3Nlc3Npb25JZH1gO1xuXG4gIC8vIFF1ZXJ5XG4gIGNvbnN0IGFxbFFyeTogQXFsUXVlcnkgPSBhcWxgRk9SIGksIHIgSU4gSU5CT1VORCAke2Zvcm1hdEl0ZW1JZH0gaGFzUmVhY3Rpb25zXG4gICAgICBGSUxURVIgci5uYW1lID09ICR7Zm9ybWF0UmVhY3Rpb25OYW1lfSAmJiByLl9mcm9tID09ICR7c2Vzc2lvbkRvY0lkfVxuICAgICAgQ09MTEVDVCByZWFjdGlvblZhbHVlID0gci52YWx1ZSBJTlRPIHJlYWN0aW9uSXRlbXNcbiAgICAgIFJFVFVSTiBNRVJHRShyLCB7Y291bnQ6IExFTkdUSChyZWFjdGlvbkl0ZW1zWypdLnIudmFsdWUpfSlgO1xuXG4gIHJldHVybiBkYXRhYmFzZS5xdWVyeShhcWxRcnkpXG4gICAgLnRoZW4oKGN1cnNvcjogQXJyYXlDdXJzb3IpID0+IGN1cnNvci5hbGwoKSlcbiAgICAuY2F0Y2goKGVycm9yOiBFcnJvcikgPT4gbG9nRXJyb3Ioe1xuICAgICAgYWN0aW9uLFxuICAgICAgY2F0ZWdvcnk6IGV2ZW50Q2F0ZWdvcnksXG4gICAgICBsYWJlbDogJ2RiX2Vycm9yJ1xuICAgIH0sIGVycm9yLCBjb250ZXh0KS50aGVuKCgpID0+IFtdKSk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0R3JvdXBVc2Vyc0J5UmVhY3Rpb24gPSAoY29udGV4dDogQXBpQ29udGV4dCwgcGFyYW1zOiBVc2VyUmVhY3Rpb25RdWVyeSA9IHt9KTogUHJvbWlzZTxVc2VyW10+ID0+IHtcbiAgY29uc3QgYWN0aW9uOiBzdHJpbmcgPSAnZ2V0R3JvdXBVc2Vyc0J5UmVhY3Rpb24nO1xuICBjb25zdCB7ZGF0YWJhc2UsIHNlc3Npb246IHt1c2VySWQ6IHNlc3Npb25JZH19ID0gY29udGV4dDtcblxuICBpZighc2Vzc2lvbklkKSB7XG4gICAgcmV0dXJuIGxvZ0V4Y2VwdGlvbih7XG4gICAgICBhY3Rpb24sXG4gICAgICBjYXRlZ29yeTogZXZlbnRDYXRlZ29yeSxcbiAgICAgIGxhYmVsOiAndW5hdXRob3JpemVkJyxcbiAgICAgIHZhbHVlOiAnaW52YWxpZF9zZXNzaW9uJ1xuICAgIH0sIGNvbnRleHQpLnRoZW4oKCkgPT4gbnVsbCk7XG4gIH1cblxuICBjb25zdCB7ZmlsdGVycyA9IFtdLCBpZDogZ3JvdXBJZCwgdmFsdWV9OiBVc2VyUmVhY3Rpb25RdWVyeSA9IHBhcmFtcztcbiAgY29uc3QgcmVhY3Rpb24gPSBwYXJzZUNoYXIodmFsdWUsIDMyKTtcbiAgY29uc3QgZ3JvdXBEb2NJZCA9IHBhcnNlQXJhbmdvSWQoZ3JvdXBJZCk7XG4gIGNvbnN0IGZpbHRlclN0cjogc3RyaW5nID0gZmlsdGVyc1xuICAgIC5tYXAoKGZpbHRlcjogUXVlcnlGaWx0ZXIpID0+IHtcbiAgICAgIGNvbnN0IHtjb25kaXRpb25hbCwgbmFtZSwgdmFsdWU6IHF1ZXJ5VmFsdWV9OiBRdWVyeUZpbHRlciA9IGZpbHRlcjtcbiAgICAgIGxldCBmaWx0ZXJDb25kOiBzdHJpbmcgPSBjb25kaXRpb25hbDtcblxuICAgICAgaWYoY29uZGl0aW9uYWwgIT09ICc+PScgJiYgY29uZGl0aW9uYWwgIT09ICc8PScgJiYgY29uZGl0aW9uYWwgIT09ICc+JyAmJiBjb25kaXRpb25hbCAhPT0gJzwnKSB7XG4gICAgICAgIGZpbHRlckNvbmQgPSAnPT0nO1xuICAgICAgfVxuXG4gICAgICBzd2l0Y2gobmFtZSkge1xuICAgICAgICBjYXNlICdhZGRlZCc6XG4gICAgICAgICAgcmV0dXJuIGByLmFkZGVkICR7ZmlsdGVyQ29uZH0gJHtwYXJzZU51bShxdWVyeVZhbHVlKX1gO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHJldHVybiAnJztcbiAgICAgIH1cbiAgICB9KVxuICAgIC5jb25jYXQoW1xuICAgICAgYHIudmFsdWUgPT0gXCIke3JlYWN0aW9ufVwiYCxcbiAgICAgICd1Ll9pZCA9PSByLl9mcm9tJ1xuICAgIF0pXG4gICAgLmpvaW4oJyAmJiAnKTtcblxuICAvLyBRdWVyeVxuICBjb25zdCBhcWxRcnk6IHN0cmluZyA9IGBGT1IgZywgciBJTiBJTkJPVU5EIFwiJHtncm91cERvY0lkfVwiIGhhc1JlYWN0aW9uc1xuICAgICAgRk9SIHUgSU4gdXNlcnNcbiAgICAgIEZJTFRFUiAke2ZpbHRlclN0cn1cbiAgICAgIFJFVFVSTiB1YDtcblxuICByZXR1cm4gZGF0YWJhc2UucXVlcnkoYXFsUXJ5KVxuICAgIC50aGVuKChjdXJzb3I6IEFycmF5Q3Vyc29yKSA9PiBjdXJzb3IuYWxsKCkpXG4gICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IGxvZ0Vycm9yKHtcbiAgICAgIGFjdGlvbixcbiAgICAgIGNhdGVnb3J5OiBldmVudENhdGVnb3J5LFxuICAgICAgbGFiZWw6ICdkYl9lcnJvcidcbiAgICB9LCBlcnJvciwgY29udGV4dCkudGhlbigoKSA9PiBbXSkpO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldFJlYWN0aW9uc0J5SXRlbSA9IChcbiAgY29udGV4dDogQXBpQ29udGV4dCxcbiAgaXRlbUlkOiBzdHJpbmcsXG4gIHJlYWN0aW9uTmFtZTogc3RyaW5nLFxuICBvcHRpb25zOiBSZWFjdGlvbk9wdGlvbnNcbik6IFByb21pc2U8VXNlcltdPiA9PiB7XG4gIGNvbnN0IGFjdGlvbjogc3RyaW5nID0gJ2dldFJlYWN0aW9uc0J5SXRlbSc7XG4gIGNvbnN0IHtkYXRhYmFzZX0gPSBjb250ZXh0O1xuICBjb25zdCBmb3JtYXRJdGVtSWQ6IHN0cmluZyA9IHBhcnNlQXJhbmdvSWQoaXRlbUlkKTtcbiAgY29uc3QgZm9ybWF0UmVhY3Rpb25OYW1lOiBzdHJpbmcgPSBwYXJzZUNoYXIocmVhY3Rpb25OYW1lLCAzMik7XG4gIGNvbnN0IHtsaW1pdH0gPSBwYXJzZVJlYWN0aW9uT3B0aW9ucyhvcHRpb25zKTtcbiAgY29uc3QgYXFsUXJ5OiBzdHJpbmcgPSBgRk9SIGksIHIgSU4gSU5CT1VORCBcIiR7Zm9ybWF0SXRlbUlkfVwiIGhhc1JlYWN0aW9uc1xuICAgIEZJTFRFUiByLm5hbWUgPT0gXCIke2Zvcm1hdFJlYWN0aW9uTmFtZX1cIlxuICAgICR7bGltaXQuYXFsfVxuICAgIFJFVFVSTiBNRVJHRShpLCB7cmVhY3Rpb246IHJ9KWA7XG5cbiAgcmV0dXJuIGRhdGFiYXNlLnF1ZXJ5KGFxbFFyeSlcbiAgICAudGhlbigoY3Vyc29yOiBBcnJheUN1cnNvcikgPT4gY3Vyc29yLmFsbCgpKVxuICAgIC5jYXRjaCgoZXJyb3I6IEVycm9yKSA9PiBsb2dFcnJvcih7XG4gICAgICBhY3Rpb24sXG4gICAgICBjYXRlZ29yeTogZXZlbnRDYXRlZ29yeSxcbiAgICAgIGxhYmVsOiAnZGJfZXJyb3InXG4gICAgfSwgZXJyb3IsIGNvbnRleHQpLnRoZW4oKCkgPT4gW10pKTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRJdGVtc0J5UmVhY3Rpb24gPSAoXG4gIGNvbnRleHQ6IEFwaUNvbnRleHQsXG4gIGl0ZW1JZDogc3RyaW5nLFxuICByZWFjdGlvbk5hbWU6IHN0cmluZyxcbiAgb3B0aW9uczogUmVhY3Rpb25PcHRpb25zXG4pOiBQcm9taXNlPFJlYWN0aW9uW10+ID0+IHtcbiAgY29uc3QgYWN0aW9uOiBzdHJpbmcgPSAnZ2V0SXRlbXNCeVJlYWN0aW9uJztcbiAgY29uc3Qge2RhdGFiYXNlfSA9IGNvbnRleHQ7XG4gIGNvbnN0IGZvcm1hdEl0ZW1JZDogc3RyaW5nID0gcGFyc2VBcmFuZ29JZChpdGVtSWQpO1xuICBjb25zdCBmb3JtYXRSZWFjdGlvbk5hbWU6IHN0cmluZyA9IHBhcnNlQ2hhcihyZWFjdGlvbk5hbWUsIDMyKTtcbiAgY29uc3Qge2xpbWl0fSA9IHBhcnNlUmVhY3Rpb25PcHRpb25zKG9wdGlvbnMpO1xuXG4gIC8vIFF1ZXJ5XG4gIGNvbnN0IGFxbFFyeTogc3RyaW5nID0gYEZPUiB1LCByIElOIE9VVEJPVU5EIFwiJHtmb3JtYXRJdGVtSWR9XCIgaGFzUmVhY3Rpb25zXG4gICAgRklMVEVSIHIubmFtZSA9PSAke2Zvcm1hdFJlYWN0aW9uTmFtZX1cbiAgICAke2xpbWl0LmFxbH1cbiAgICBSRVRVUk4gTUVSR0UodSwge3JlYWN0aW9uOiByfSlgO1xuXG4gIHJldHVybiBkYXRhYmFzZS5xdWVyeShhcWxRcnkpXG4gICAgLnRoZW4oKGN1cnNvcjogQXJyYXlDdXJzb3IpID0+IGN1cnNvci5hbGwoKSlcbiAgICAuY2F0Y2goKGVycm9yOiBFcnJvcikgPT4gbG9nRXJyb3Ioe1xuICAgICAgYWN0aW9uLFxuICAgICAgY2F0ZWdvcnk6IGV2ZW50Q2F0ZWdvcnksXG4gICAgICBsYWJlbDogJ2RiX2Vycm9yJ1xuICAgIH0sIGVycm9yLCBjb250ZXh0KS50aGVuKCgpID0+IFtdKSk7XG59O1xuXG5leHBvcnQgY29uc3QgaGFzUmVhY3Rpb24gPSAoXG4gIGNvbnRleHQ6IEFwaUNvbnRleHQsXG4gIGl0ZW1JZDogc3RyaW5nLFxuICByZWFjdGlvbk5hbWU6IHN0cmluZyxcbiAgZGlyZWN0aW9uOiBSZWFjdGlvbkRpcmVjdGlvbiA9ICdPVVRCT1VORCdcbik6IFByb21pc2U8Ym9vbGVhbj4gPT4ge1xuICBjb25zdCBhY3Rpb246IHN0cmluZyA9ICdoYXNSZWFjdGlvbic7XG4gIGNvbnN0IHtkYXRhYmFzZSwgc2Vzc2lvbjoge3VzZXJJZDogc2Vzc2lvbklkfX0gPSBjb250ZXh0O1xuICBjb25zdCBzZXNzaW9uRG9jSWQ6IHN0cmluZyA9IGB1c2Vycy8ke3Nlc3Npb25JZH1gO1xuICBjb25zdCBmb3JtYXRJdGVtSWQ6IHN0cmluZyA9IHBhcnNlQXJhbmdvSWQoaXRlbUlkKTtcbiAgY29uc3QgZm9ybWF0RGlyZWN0aW9uID0gZGlyZWN0aW9uID09PSAnT1VUQk9VTkQnID8gJ09VVEJPVU5EJyA6ICdJTkJPVU5EJztcbiAgY29uc3QgaXRlbURpcmVjdGlvbjogc3RyaW5nID0gZGlyZWN0aW9uID09PSAnT1VUQk9VTkQnID8gJ3IuX3RvJyA6ICdyLl9mcm9tJztcblxuICAvLyBRdWVyeVxuICBjb25zdCBhcWxRcnk6IHN0cmluZyA9IGBGT1IgaSwgciBJTiAke2Zvcm1hdERpcmVjdGlvbn0gXCIke3Nlc3Npb25Eb2NJZH1cIiBoYXNSZWFjdGlvbnNcbiAgICBGSUxURVIgci5uYW1lID09IFwiJHtyZWFjdGlvbk5hbWV9XCIgJiYgJHtpdGVtRGlyZWN0aW9ufSA9PSBcIiR7Zm9ybWF0SXRlbUlkfVwiXG4gICAgTElNSVQgMVxuICAgIFJFVFVSTiByYDtcblxuICBjb25zb2xlLmxvZyh7YXFsUXJ5fSk7XG4gIHJldHVybiBkYXRhYmFzZS5xdWVyeShhcWxRcnkpXG4gICAgLnRoZW4oKGN1cnNvcjogQXJyYXlDdXJzb3IpID0+IGN1cnNvci5uZXh0KCkpXG4gICAgLnRoZW4oKHJlYWN0aW9ucykgPT4gKHJlYWN0aW9ucyA/IHJlYWN0aW9ucy52YWx1ZSA9PT0gJ3RydWUnIDogZmFsc2UpKVxuICAgIC5jYXRjaCgoZXJyb3I6IEVycm9yKSA9PiBsb2dFcnJvcih7XG4gICAgICBhY3Rpb24sXG4gICAgICBjYXRlZ29yeTogZXZlbnRDYXRlZ29yeSxcbiAgICAgIGxhYmVsOiAnZGJfZXJyb3InXG4gICAgfSwgZXJyb3IsIGNvbnRleHQpLnRoZW4oKCkgPT4gZmFsc2UpKTtcbn07XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxtQkFBbUY7QUFDbkYsc0JBQWtCO0FBTWxCLG9CQUErQztBQUUvQyxNQUFNLGdCQUF3QjtBQXFCdkIsTUFBTSx1QkFBdUIsQ0FBQyxVQUEyQixPQUFPO0FBQ3JFLFFBQU07QUFBQSxJQUNKLE9BQU87QUFBQSxJQUNQLEtBQUs7QUFBQSxNQUNIO0FBRUosU0FBTztBQUFBLElBQ0wsT0FBTyw0QkFBUyxNQUFNO0FBQUE7QUFBQTtBQUluQixNQUFNLGNBQWMsQ0FDekIsU0FDQSxRQUNBLFdBQXFCLElBQ3JCLGlCQUEwQixVQUNKO0FBQ3RCLFFBQU0sU0FBaUI7QUFDdkIsUUFBTSxFQUFDLFVBQVUsU0FBUyxFQUFDLFFBQVEsZ0JBQWM7QUFFakQsTUFBRyxDQUFDLFdBQVc7QUFDYixXQUFPLGdDQUFhO0FBQUEsTUFDbEI7QUFBQSxNQUNBLFVBQVU7QUFBQSxNQUNWLE9BQU87QUFBQSxNQUNQLE9BQU87QUFBQSxPQUNOLFNBQVMsS0FBSyxNQUFNO0FBQUE7QUFHekIsUUFBTTtBQUFBLElBQ0osTUFBTSxXQUFXO0FBQUEsSUFDakIsT0FBTztBQUFBLE1BQ0w7QUFDSixRQUFNLGVBQXVCLGdDQUFjO0FBQzNDLFFBQU0scUJBQTZCLDRCQUFVLFVBQVU7QUFDdkQsUUFBTSxjQUFzQiw4QkFBWSxXQUFXO0FBQ25ELFFB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
|
|
320
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FjdGlvbnMvcmVhY3Rpb25zLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJpbXBvcnQge2NyZWF0ZUhhc2gsIHBhcnNlQXJhbmdvSWQsIHBhcnNlQ2hhciwgcGFyc2VJZCwgcGFyc2VOdW0sIHBhcnNlU3RyaW5nfSBmcm9tICdAbmxhYnMvdXRpbHMnO1xuaW1wb3J0IHthcWx9IGZyb20gJ2FyYW5nb2pzJztcbmltcG9ydCB7QXFsUXVlcnl9IGZyb20gJ2FyYW5nb2pzL2FxbCc7XG5pbXBvcnQge0VkZ2VDb2xsZWN0aW9ufSBmcm9tICdhcmFuZ29qcy9jb2xsZWN0aW9uJztcbmltcG9ydCB7QXJyYXlDdXJzb3J9IGZyb20gJ2FyYW5nb2pzL2N1cnNvcic7XG5cbmltcG9ydCB7QXBpQ29udGV4dCwgQXBwQ29sbGVjdGlvblR5cGVzLCBRdWVyeUZpbHRlciwgVXNlciwgVXNlclJlYWN0aW9uUXVlcnl9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7Z2V0TGltaXQsIGxvZ0Vycm9yLCBsb2dFeGNlcHRpb259IGZyb20gJy4uL3V0aWxzJztcblxuY29uc3QgZXZlbnRDYXRlZ29yeTogc3RyaW5nID0gJ3JlYWN0aW9ucyc7XG5cbmV4cG9ydCB0eXBlIFJlYWN0aW9uRGlyZWN0aW9uID0gJ0lOQk9VTkQnIHwgJ09VVEJPVU5EJztcblxuZXhwb3J0IGludGVyZmFjZSBSZWFjdGlvbiB7XG4gIHJlYWRvbmx5IF9mcm9tPzogc3RyaW5nO1xuICByZWFkb25seSBfa2V5Pzogc3RyaW5nO1xuICByZWFkb25seSBfdG8/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGFkZGVkPzogbnVtYmVyO1xuICByZWFkb25seSBjb3VudD86IG51bWJlcjtcbiAgcmVhZG9ubHkgaWQ/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IG5hbWU/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHR5cGU/OiBBcHBDb2xsZWN0aW9uVHlwZXM7XG4gIHJlYWRvbmx5IHZhbHVlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlYWN0aW9uT3B0aW9ucyB7XG4gIHJlYWRvbmx5IGZyb20/OiBudW1iZXI7XG4gIHJlYWRvbmx5IHRvPzogbnVtYmVyO1xufVxuXG5leHBvcnQgY29uc3QgcGFyc2VSZWFjdGlvbk9wdGlvbnMgPSAob3B0aW9uczogUmVhY3Rpb25PcHRpb25zID0ge30pID0+IHtcbiAgY29uc3Qge1xuICAgIGZyb20gPSAwLFxuICAgIHRvID0gMzBcbiAgfSA9IG9wdGlvbnM7XG5cbiAgcmV0dXJuIHtcbiAgICBsaW1pdDogZ2V0TGltaXQoZnJvbSwgdG8pXG4gIH07XG59O1xuXG5leHBvcnQgY29uc3QgYWRkUmVhY3Rpb24gPSAoXG4gIGNvbnRleHQ6IEFwaUNvbnRleHQsXG4gIGl0ZW1JZDogc3RyaW5nLFxuICByZWFjdGlvbjogUmVhY3Rpb24gPSB7fSxcbiAgYWxsb3dEdXBsaWNhdGU6IGJvb2xlYW4gPSBmYWxzZVxuKTogUHJvbWlzZTxSZWFjdGlvbj4gPT4ge1xuICBjb25zdCBhY3Rpb246IHN0cmluZyA9ICdhZGRSZWFjdGlvbic7XG4gIGNvbnN0IHtkYXRhYmFzZSwgc2Vzc2lvbjoge3VzZXJJZDogc2Vzc2lvbklkfX0gPSBjb250ZXh0O1xuXG4gIGlmKCFzZXNzaW9uSWQpIHtcbiAgICByZXR1cm4gbG9nRXhjZXB0aW9uKHtcbiAgICAgIGFjdGlvbixcbiAgICAgIGNhdGVnb3J5OiBldmVudENhdGVnb3J5LFxuICAgICAgbGFiZWw6ICd1bmF1dGhvcml6ZWQnLFxuICAgICAgdmFsdWU6ICdpbnZhbGlkX3Nlc3Npb24nXG4gICAgfSwgY29udGV4dCkudGhlbigoKSA9PiBudWxsKTtcbiAgfVxuXG4gIGNvbnN0IHtcbiAgICBuYW1lOiBpdGVtTmFtZSA9ICdsaWtlJyxcbiAgICB2YWx1ZTogaXRlbVZhbHVlXG4gIH0gPSByZWFjdGlvbjtcbiAgY29uc3QgZm9ybWF0SXRlbUlkOiBzdHJpbmcgPSBwYXJzZUFyYW5nb0lkKGl0ZW1JZCk7XG4gIGNvbnN0IGZvcm1hdFJlYWN0aW9uTmFtZTogc3RyaW5nID0gcGFyc2VDaGFyKGl0ZW1OYW1lLCAzMik7XG4gIGNvbnN0IGZvcm1hdFZhbHVlOiBzdHJpbmcgPSBwYXJzZVN0cmluZyhpdGVtVmFsdWUsIDMyKTtcbiAgY29uc3QgZWRnZUNvbGxlY3Rpb246IEVkZ2VDb2xsZWN0aW9uID0gZGF0YWJhc2UuY29sbGVjdGlvbignaGFzUmVhY3Rpb24nKTtcbiAgY29uc3Qgc2Vzc2lvbkRvY0lkOiBzdHJpbmcgPSBgdXNlcnMvJHtzZXNzaW9uSWR9YDtcbiAgY29uc3QgZWRnZUlkOiBzdHJpbmcgPSBjcmVhdGVIYXNoKGByZWFjdGlvbi0ke2Zvcm1hdEl0ZW1JZH0tJHtzZXNzaW9uSWR9YCk7XG4gIGNvbnN0IGVkZ2U6IFJlYWN0aW9uID0ge1xuICAgIF9mcm9tOiBzZXNzaW9uRG9jSWQsXG4gICAgX2tleTogZWRnZUlkLFxuICAgIF90bzogZm9ybWF0SXRlbUlkLFxuICAgIGFkZGVkOiBEYXRlLm5vdygpLFxuICAgIG5hbWU6IGZvcm1hdFJlYWN0aW9uTmFtZSxcbiAgICB2YWx1ZTogaXRlbVZhbHVlICE9PSB1bmRlZmluZWQgPyBmb3JtYXRWYWx1ZSA6IHVuZGVmaW5lZFxuICB9O1xuXG4gIC8vIENoZWNrIGZvciBkdXBsaWNhdGVzIGlmIG5vdCBhbGxvd2VkXG4gIGlmKCFhbGxvd0R1cGxpY2F0ZSkge1xuICAgIC8vIFF1ZXJ5XG4gICAgY29uc3QgYXFsUXJ5OiBBcWxRdWVyeSA9IGFxbGBGT1IgciBJTiBoYXNSZWFjdGlvblxuICAgICAgRklMVEVSIHIuX2Zyb20gPT0gJHtzZXNzaW9uRG9jSWR9ICYmIHIuX3RvID09ICR7Zm9ybWF0SXRlbUlkfSAmJiByLm5hbWUgPT0gJHtmb3JtYXRSZWFjdGlvbk5hbWV9XG4gICAgICBMSU1JVCAxXG4gICAgICBSRVRVUk4gcmA7XG5cbiAgICByZXR1cm4gZGF0YWJhc2UucXVlcnkoYXFsUXJ5KVxuICAgICAgLnRoZW4oKGN1cnNvcjogQXJyYXlDdXJzb3IpID0+IGN1cnNvci5uZXh0KCkpXG4gICAgICAudGhlbigocmVhY3Rpb24pID0+IHtcbiAgICAgICAgaWYoISFyZWFjdGlvbikge1xuICAgICAgICAgIHJldHVybiByZWFjdGlvbjtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBlZGdlQ29sbGVjdGlvbi5zYXZlKGVkZ2UsIHtyZXR1cm5OZXc6IHRydWV9KS50aGVuKCgpID0+IGVkZ2UpO1xuICAgICAgfSlcbiAgICAgIC5jYXRjaCgoZXJyb3I6IEVycm9yKSA9PiB7XG4gICAgICAgIGNvbnNvbGUubG9nKCdhZGRSZWFjdGlvbjo6ZXJyb3InLCBlcnJvcik7XG4gICAgICAgIHJldHVybiBsb2dFcnJvcih7XG4gICAgICAgICAgYWN0aW9uLFxuICAgICAgICAgIGNhdGVnb3J5OiBldmVudENhdGVnb3J5LFxuICAgICAgICAgIGxhYmVsOiAnZGJfZXJyb3InXG4gICAgICAgIH0sIGVycm9yLCBjb250ZXh0KS50aGVuKCgpID0+IG51bGwpO1xuICAgICAgfSk7XG4gIH1cblxuICByZXR1cm4gZWRnZUNvbGxlY3Rpb24uc2F2ZShlZGdlLCB7cmV0dXJuTmV3OiB0cnVlfSkudGhlbigoKSA9PiBlZGdlKTtcbn07XG5cbmV4cG9ydCBjb25zdCBkZWxldGVSZWFjdGlvbiA9IChjb250ZXh0OiBBcGlDb250ZXh0LCByZWFjdGlvbklkOiBzdHJpbmcpOiBQcm9taXNlPFJlYWN0aW9uPiA9PiB7XG4gIGNvbnN0IGFjdGlvbjogc3RyaW5nID0gJ2RlbGV0ZVJlYWN0aW9uJztcbiAgY29uc3Qge2RhdGFiYXNlLCBzZXNzaW9uOiB7dXNlcklkOiBzZXNzaW9uSWR9fSA9IGNvbnRleHQ7XG5cbiAgaWYoIXNlc3Npb25JZCkge1xuICAgIHJldHVybiBsb2dFeGNlcHRpb24oe1xuICAgICAgYWN0aW9uLFxuICAgICAgY2F0ZWdvcnk6IGV2ZW50Q2F0ZWdvcnksXG4gICAgICBsYWJlbDogJ3VuYXV0aG9yaXplZCcsXG4gICAgICB2YWx1ZTogJ2ludmFsaWRfc2Vzc2lvbidcbiAgICB9LCBjb250ZXh0KS50aGVuKCgpID0+IG51bGwpO1xuICB9XG5cbiAgY29uc3QgZm9ybWF0U2Vzc2lvbklkOiBzdHJpbmcgPSBgdXNlcnMvJHtwYXJzZUlkKHNlc3Npb25JZCl9YDtcbiAgY29uc3QgZm9ybWF0UmVhY3Rpb25JZDogc3RyaW5nID0gYGhhc1JlYWN0aW9uLyR7cGFyc2VJZChyZWFjdGlvbklkKX1gO1xuXG4gIC8vIFF1ZXJ5XG4gIGNvbnN0IGFxbFFyeTogQXFsUXVlcnkgPSBhcWxgTEVUIHIgPSBET0NVTUVOVCgke2Zvcm1hdFJlYWN0aW9uSWR9KVxuICAgIEZJTFRFUiByLl9mcm9tID09ICR7Zm9ybWF0U2Vzc2lvbklkfVxuICAgIExJTUlUIDFcbiAgICBSRU1PVkUgciBJTiBoYXNSZWFjdGlvblxuICAgIFJFVFVSTiBPTERgO1xuXG4gIHJldHVybiBkYXRhYmFzZS5xdWVyeShhcWxRcnkpXG4gICAgLnRoZW4oKGN1cnNvcjogQXJyYXlDdXJzb3IpID0+IGN1cnNvci5uZXh0KCkpXG4gICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IGxvZ0Vycm9yKHtcbiAgICAgIGFjdGlvbixcbiAgICAgIGNhdGVnb3J5OiBldmVudENhdGVnb3J5LFxuICAgICAgbGFiZWw6ICdkYl9lcnJvcidcbiAgICB9LCBlcnJvciwgY29udGV4dCkudGhlbigoKSA9PiBudWxsKSk7XG59O1xuXG5leHBvcnQgY29uc3QgZGVsZXRlUmVhY3Rpb25CeUl0ZW0gPSAoXG4gIGNvbnRleHQ6IEFwaUNvbnRleHQsXG4gIGl0ZW1JZDogc3RyaW5nLFxuICByZWFjdGlvbk5hbWU6IHN0cmluZ1xuKTogUHJvbWlzZTxSZWFjdGlvbj4gPT4ge1xuICBjb25zdCBhY3Rpb246IHN0cmluZyA9ICdkZWxldGVSZWFjdGlvbkJ5SXRlbSc7XG4gIGNvbnN0IHtkYXRhYmFzZSwgc2Vzc2lvbjoge3VzZXJJZDogc2Vzc2lvbklkfX0gPSBjb250ZXh0O1xuXG4gIGlmKCFzZXNzaW9uSWQpIHtcbiAgICByZXR1cm4gbG9nRXhjZXB0aW9uKHtcbiAgICAgIGFjdGlvbixcbiAgICAgIGNhdGVnb3J5OiBldmVudENhdGVnb3J5LFxuICAgICAgbGFiZWw6ICd1bmF1dGhvcml6ZWQnLFxuICAgICAgdmFsdWU6ICdpbnZhbGlkX3Nlc3Npb24nXG4gICAgfSwgY29udGV4dCkudGhlbigoKSA9PiBudWxsKTtcbiAgfVxuXG4gIGNvbnN0IGZvcm1hdFNlc3Npb25JZDogc3RyaW5nID0gYHVzZXJzLyR7cGFyc2VJZChzZXNzaW9uSWQpfWA7XG4gIGNvbnN0IGZvcm1hdEl0ZW1Eb2NJZDogc3RyaW5nID0gcGFyc2VBcmFuZ29JZChpdGVtSWQpO1xuICBjb25zdCBmb3JtYXRSZWFjdGlvbk5hbWU6IHN0cmluZyA9IHBhcnNlQ2hhcihyZWFjdGlvbk5hbWUpO1xuXG4gIC8vIFF1ZXJ5XG4gIGNvbnN0IGFxbFFyeTogQXFsUXVlcnkgPSBhcWxgRk9SIHIgaW4gaGFzUmVhY3Rpb25cbiAgICBGSUxURVIgci5fZnJvbSA9PSAke2Zvcm1hdFNlc3Npb25JZH0gJiYgci5fdG8gPT0gJHtmb3JtYXRJdGVtRG9jSWR9ICYmIHIubmFtZSA9PSAke2Zvcm1hdFJlYWN0aW9uTmFtZX1cbiAgICBMSU1JVCAxXG4gICAgUkVNT1ZFIHIgSU4gaGFzUmVhY3Rpb25cbiAgICBSRVRVUk4gT0xEYDtcblxuICByZXR1cm4gZGF0YWJhc2UucXVlcnkoYXFsUXJ5KVxuICAgIC50aGVuKChjdXJzb3I6IEFycmF5Q3Vyc29yKSA9PiBjdXJzb3IubmV4dCgpKVxuICAgIC5jYXRjaCgoZXJyb3I6IEVycm9yKSA9PiBsb2dFcnJvcih7XG4gICAgICBhY3Rpb24sXG4gICAgICBjYXRlZ29yeTogZXZlbnRDYXRlZ29yeSxcbiAgICAgIGxhYmVsOiAnZGJfZXJyb3InXG4gICAgfSwgZXJyb3IsIGNvbnRleHQpLnRoZW4oKCkgPT4gbnVsbCkpO1xufTtcblxuZXhwb3J0IGNvbnN0IHVwZGF0ZVJlYWN0aW9uID0gKGNvbnRleHQ6IEFwaUNvbnRleHQsIHJlYWN0aW9uOiBSZWFjdGlvbiA9IHt9KTogUHJvbWlzZTxSZWFjdGlvbj4gPT4ge1xuICBjb25zdCBhY3Rpb246IHN0cmluZyA9ICd1cGRhdGVSZWFjdGlvbic7XG4gIGNvbnN0IHtkYXRhYmFzZSwgc2Vzc2lvbjoge3VzZXJJZDogc2Vzc2lvbklkfX0gPSBjb250ZXh0O1xuXG4gIGlmKCFzZXNzaW9uSWQpIHtcbiAgICByZXR1cm4gbG9nRXhjZXB0aW9uKHtcbiAgICAgIGFjdGlvbixcbiAgICAgIGNhdGVnb3J5OiBldmVudENhdGVnb3J5LFxuICAgICAgbGFiZWw6ICd1bmF1dGhvcml6ZWQnLFxuICAgICAgdmFsdWU6ICdpbnZhbGlkX3Nlc3Npb24nXG4gICAgfSwgY29udGV4dCkudGhlbigoKSA9PiBudWxsKTtcbiAgfVxuXG4gIGNvbnN0IHtcbiAgICBpZDogaXRlbUlkLFxuICAgIG5hbWU6IGl0ZW1OYW1lLFxuICAgIHZhbHVlOiBpdGVtVmFsdWVcbiAgfSA9IHJlYWN0aW9uO1xuICBjb25zdCBmb3JtYXRJZDogc3RyaW5nID0gcGFyc2VBcmFuZ29JZChpdGVtSWQpO1xuICBjb25zdCBmb3JtYXROYW1lOiBzdHJpbmcgPSBwYXJzZUNoYXIoaXRlbU5hbWUsIDMyKTtcbiAgY29uc3QgZm9ybWF0VmFsdWU6IHN0cmluZyA9IHBhcnNlU3RyaW5nKGl0ZW1WYWx1ZSwgMzIpO1xuICBjb25zdCBlZGdlSWQ6IHN0cmluZyA9IGNyZWF0ZUhhc2goYHJlYWN0aW9uLSR7Zm9ybWF0SWR9LSR7c2Vzc2lvbklkfWApO1xuICBjb25zdCB1cGRhdGU6IFJlYWN0aW9uID0ge1xuICAgIG5hbWU6IGZvcm1hdE5hbWUsXG4gICAgdmFsdWU6IGZvcm1hdFZhbHVlXG4gIH07XG4gIGNvbnN0IGluc2VydDogUmVhY3Rpb24gPSB7XG4gICAgLi4udXBkYXRlLFxuICAgIF9rZXk6IGVkZ2VJZCxcbiAgICBhZGRlZDogRGF0ZS5ub3coKVxuICB9O1xuXG4gIC8vIFF1ZXJ5XG4gIGNvbnN0IGFxbFFyeTogQXFsUXVlcnkgPSBhcWxgVVBTRVJUICR7e19pZDogZm9ybWF0SWR9fVxuICAgIElOU0VSVCAke2luc2VydH1cbiAgICBVUERBVEUgJHt1cGRhdGV9XG4gICAgTElNSVQgMVxuICAgIFJFVFVSTiBORVdgO1xuXG4gIHJldHVybiBkYXRhYmFzZS5xdWVyeShhcWxRcnkpXG4gICAgLnRoZW4oKGN1cnNvcjogQXJyYXlDdXJzb3IpID0+IGN1cnNvci5uZXh0KCkpXG4gICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IGxvZ0Vycm9yKHtcbiAgICAgIGFjdGlvbixcbiAgICAgIGNhdGVnb3J5OiBldmVudENhdGVnb3J5LFxuICAgICAgbGFiZWw6ICdkYl9lcnJvcidcbiAgICB9LCBlcnJvciwgY29udGV4dCkudGhlbigoKSA9PiBudWxsKSk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0UmVhY3Rpb25Db3VudCA9IChcbiAgY29udGV4dDogQXBpQ29udGV4dCxcbiAgaXRlbUlkOiBzdHJpbmcsXG4gIHJlYWN0aW9uTmFtZTogc3RyaW5nXG4pOiBQcm9taXNlPFJlYWN0aW9uPiA9PiB7XG4gIGNvbnN0IGFjdGlvbjogc3RyaW5nID0gJ2dldFJlYWN0aW9uQ291bnQnO1xuICBjb25zdCB7ZGF0YWJhc2V9ID0gY29udGV4dDtcbiAgY29uc3QgZm9ybWF0SXRlbUlkOiBzdHJpbmcgPSBwYXJzZUFyYW5nb0lkKGl0ZW1JZCk7XG4gIGNvbnN0IGZvcm1hdFJlYWN0aW9uTmFtZTogYW55ID0gcGFyc2VDaGFyKHJlYWN0aW9uTmFtZSwgMzIpO1xuXG4gIC8vIFF1ZXJ5XG4gIGNvbnN0IGFxbFFyeTogQXFsUXVlcnkgPSBhcWxgRk9SIGksIHIgSU4gSU5CT1VORCAke2Zvcm1hdEl0ZW1JZH0gaGFzUmVhY3Rpb25cbiAgICBGSUxURVIgci5uYW1lID09ICR7Zm9ybWF0UmVhY3Rpb25OYW1lfVxuICAgIENPTExFQ1QgV0lUSCBDT1VOVCBJTlRPIGNvdW50XG4gICAgUkVUVVJOIGNvdW50YDtcblxuICByZXR1cm4gZGF0YWJhc2UucXVlcnkoYXFsUXJ5KVxuICAgIC50aGVuKChjdXJzb3I6IEFycmF5Q3Vyc29yKSA9PiBjdXJzb3IubmV4dCgpKVxuICAgIC5jYXRjaCgoZXJyb3I6IEVycm9yKSA9PiBsb2dFcnJvcih7XG4gICAgICBhY3Rpb24sXG4gICAgICBjYXRlZ29yeTogZXZlbnRDYXRlZ29yeSxcbiAgICAgIGxhYmVsOiAnZGJfZXJyb3InXG4gICAgfSwgZXJyb3IsIGNvbnRleHQpLnRoZW4oKCkgPT4gdW5kZWZpbmVkKSk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0UmVhY3Rpb25Db3VudEJ5VXNlciA9IChcbiAgY29udGV4dDogQXBpQ29udGV4dCxcbiAgaXRlbUlkOiBzdHJpbmcsXG4gIGl0ZW1UeXBlOiBzdHJpbmcsXG4gIHJlYWN0aW9uTmFtZTogc3RyaW5nXG4pOiBQcm9taXNlPFJlYWN0aW9uW10+ID0+IHtcbiAgY29uc3QgYWN0aW9uOiBzdHJpbmcgPSAnZ2V0UmVhY3Rpb25Db3VudEJ5VXNlcic7XG4gIGNvbnN0IHtkYXRhYmFzZSwgc2Vzc2lvbjoge3VzZXJJZDogc2Vzc2lvbklkfX0gPSBjb250ZXh0O1xuICBjb25zdCBmb3JtYXRJdGVtSWQ6IHN0cmluZyA9IHBhcnNlQXJhbmdvSWQoaXRlbUlkKTtcbiAgY29uc3QgZm9ybWF0UmVhY3Rpb25OYW1lOiBhbnkgPSBwYXJzZUNoYXIocmVhY3Rpb25OYW1lLCAzMik7XG4gIGNvbnN0IHNlc3Npb25Eb2NJZDogc3RyaW5nID0gYHVzZXJzLyR7c2Vzc2lvbklkfWA7XG5cbiAgLy8gUXVlcnlcbiAgY29uc3QgYXFsUXJ5OiBBcWxRdWVyeSA9IGFxbGBGT1IgaSwgciBJTiBJTkJPVU5EICR7Zm9ybWF0SXRlbUlkfSBoYXNSZWFjdGlvblxuICAgICAgRklMVEVSIHIubmFtZSA9PSAke2Zvcm1hdFJlYWN0aW9uTmFtZX0gJiYgci5fZnJvbSA9PSAke3Nlc3Npb25Eb2NJZH1cbiAgICAgIENPTExFQ1QgcmVhY3Rpb25WYWx1ZSA9IHIudmFsdWUgSU5UTyByZWFjdGlvbkl0ZW1zXG4gICAgICBSRVRVUk4gTUVSR0Uociwge2NvdW50OiBMRU5HVEgocmVhY3Rpb25JdGVtc1sqXS5yLnZhbHVlKX0pYDtcblxuICByZXR1cm4gZGF0YWJhc2UucXVlcnkoYXFsUXJ5KVxuICAgIC50aGVuKChjdXJzb3I6IEFycmF5Q3Vyc29yKSA9PiBjdXJzb3IuYWxsKCkpXG4gICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IGxvZ0Vycm9yKHtcbiAgICAgIGFjdGlvbixcbiAgICAgIGNhdGVnb3J5OiBldmVudENhdGVnb3J5LFxuICAgICAgbGFiZWw6ICdkYl9lcnJvcidcbiAgICB9LCBlcnJvciwgY29udGV4dCkudGhlbigoKSA9PiBbXSkpO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldEdyb3VwVXNlcnNCeVJlYWN0aW9uID0gKGNvbnRleHQ6IEFwaUNvbnRleHQsIHBhcmFtczogVXNlclJlYWN0aW9uUXVlcnkgPSB7fSk6IFByb21pc2U8VXNlcltdPiA9PiB7XG4gIGNvbnN0IGFjdGlvbjogc3RyaW5nID0gJ2dldEdyb3VwVXNlcnNCeVJlYWN0aW9uJztcbiAgY29uc3Qge2RhdGFiYXNlLCBzZXNzaW9uOiB7dXNlcklkOiBzZXNzaW9uSWR9fSA9IGNvbnRleHQ7XG5cbiAgaWYoIXNlc3Npb25JZCkge1xuICAgIHJldHVybiBsb2dFeGNlcHRpb24oe1xuICAgICAgYWN0aW9uLFxuICAgICAgY2F0ZWdvcnk6IGV2ZW50Q2F0ZWdvcnksXG4gICAgICBsYWJlbDogJ3VuYXV0aG9yaXplZCcsXG4gICAgICB2YWx1ZTogJ2ludmFsaWRfc2Vzc2lvbidcbiAgICB9LCBjb250ZXh0KS50aGVuKCgpID0+IG51bGwpO1xuICB9XG5cbiAgY29uc3Qge2ZpbHRlcnMgPSBbXSwgaWQ6IGdyb3VwSWQsIHZhbHVlfTogVXNlclJlYWN0aW9uUXVlcnkgPSBwYXJhbXM7XG4gIGNvbnN0IHJlYWN0aW9uID0gcGFyc2VDaGFyKHZhbHVlLCAzMik7XG4gIGNvbnN0IGdyb3VwRG9jSWQgPSBwYXJzZUFyYW5nb0lkKGdyb3VwSWQpO1xuICBjb25zdCBmaWx0ZXJTdHI6IHN0cmluZyA9IGZpbHRlcnNcbiAgICAubWFwKChmaWx0ZXI6IFF1ZXJ5RmlsdGVyKSA9PiB7XG4gICAgICBjb25zdCB7Y29uZGl0aW9uYWwsIG5hbWUsIHZhbHVlOiBxdWVyeVZhbHVlfTogUXVlcnlGaWx0ZXIgPSBmaWx0ZXI7XG4gICAgICBsZXQgZmlsdGVyQ29uZDogc3RyaW5nID0gY29uZGl0aW9uYWw7XG5cbiAgICAgIGlmKGNvbmRpdGlvbmFsICE9PSAnPj0nICYmIGNvbmRpdGlvbmFsICE9PSAnPD0nICYmIGNvbmRpdGlvbmFsICE9PSAnPicgJiYgY29uZGl0aW9uYWwgIT09ICc8Jykge1xuICAgICAgICBmaWx0ZXJDb25kID0gJz09JztcbiAgICAgIH1cblxuICAgICAgc3dpdGNoKG5hbWUpIHtcbiAgICAgICAgY2FzZSAnYWRkZWQnOlxuICAgICAgICAgIHJldHVybiBgci5hZGRlZCAke2ZpbHRlckNvbmR9ICR7cGFyc2VOdW0ocXVlcnlWYWx1ZSl9YDtcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICB9XG4gICAgfSlcbiAgICAuY29uY2F0KFtcbiAgICAgIGByLnZhbHVlID09IFwiJHtyZWFjdGlvbn1cImAsXG4gICAgICAndS5faWQgPT0gci5fZnJvbSdcbiAgICBdKVxuICAgIC5qb2luKCcgJiYgJyk7XG5cbiAgLy8gUXVlcnlcbiAgY29uc3QgYXFsUXJ5OiBzdHJpbmcgPSBgRk9SIGcsIHIgSU4gSU5CT1VORCBcIiR7Z3JvdXBEb2NJZH1cIiBoYXNSZWFjdGlvblxuICAgICAgRk9SIHUgSU4gdXNlcnNcbiAgICAgIEZJTFRFUiAke2ZpbHRlclN0cn1cbiAgICAgIFJFVFVSTiB1YDtcblxuICByZXR1cm4gZGF0YWJhc2UucXVlcnkoYXFsUXJ5KVxuICAgIC50aGVuKChjdXJzb3I6IEFycmF5Q3Vyc29yKSA9PiBjdXJzb3IuYWxsKCkpXG4gICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IGxvZ0Vycm9yKHtcbiAgICAgIGFjdGlvbixcbiAgICAgIGNhdGVnb3J5OiBldmVudENhdGVnb3J5LFxuICAgICAgbGFiZWw6ICdkYl9lcnJvcidcbiAgICB9LCBlcnJvciwgY29udGV4dCkudGhlbigoKSA9PiBbXSkpO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldFJlYWN0aW9uc0J5SXRlbSA9IChcbiAgY29udGV4dDogQXBpQ29udGV4dCxcbiAgaXRlbUlkOiBzdHJpbmcsXG4gIHJlYWN0aW9uTmFtZTogc3RyaW5nLFxuICBvcHRpb25zOiBSZWFjdGlvbk9wdGlvbnNcbik6IFByb21pc2U8VXNlcltdPiA9PiB7XG4gIGNvbnN0IGFjdGlvbjogc3RyaW5nID0gJ2dldFJlYWN0aW9uc0J5SXRlbSc7XG4gIGNvbnN0IHtkYXRhYmFzZX0gPSBjb250ZXh0O1xuICBjb25zdCBmb3JtYXRJdGVtSWQ6IHN0cmluZyA9IHBhcnNlQXJhbmdvSWQoaXRlbUlkKTtcbiAgY29uc3QgZm9ybWF0UmVhY3Rpb25OYW1lOiBzdHJpbmcgPSBwYXJzZUNoYXIocmVhY3Rpb25OYW1lLCAzMik7XG4gIGNvbnN0IHtsaW1pdH0gPSBwYXJzZVJlYWN0aW9uT3B0aW9ucyhvcHRpb25zKTtcbiAgY29uc3QgYXFsUXJ5OiBzdHJpbmcgPSBgRk9SIGksIHIgSU4gSU5CT1VORCBcIiR7Zm9ybWF0SXRlbUlkfVwiIGhhc1JlYWN0aW9uXG4gICAgRklMVEVSIHIubmFtZSA9PSBcIiR7Zm9ybWF0UmVhY3Rpb25OYW1lfVwiXG4gICAgJHtsaW1pdC5hcWx9XG4gICAgUkVUVVJOIE1FUkdFKGksIHtyZWFjdGlvbjogcn0pYDtcblxuICByZXR1cm4gZGF0YWJhc2UucXVlcnkoYXFsUXJ5KVxuICAgIC50aGVuKChjdXJzb3I6IEFycmF5Q3Vyc29yKSA9PiBjdXJzb3IuYWxsKCkpXG4gICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IGxvZ0Vycm9yKHtcbiAgICAgIGFjdGlvbixcbiAgICAgIGNhdGVnb3J5OiBldmVudENhdGVnb3J5LFxuICAgICAgbGFiZWw6ICdkYl9lcnJvcidcbiAgICB9LCBlcnJvciwgY29udGV4dCkudGhlbigoKSA9PiBbXSkpO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldEl0ZW1zQnlSZWFjdGlvbiA9IChcbiAgY29udGV4dDogQXBpQ29udGV4dCxcbiAgaXRlbUlkOiBzdHJpbmcsXG4gIHJlYWN0aW9uTmFtZTogc3RyaW5nLFxuICBvcHRpb25zOiBSZWFjdGlvbk9wdGlvbnNcbik6IFByb21pc2U8UmVhY3Rpb25bXT4gPT4ge1xuICBjb25zdCBhY3Rpb246IHN0cmluZyA9ICdnZXRJdGVtc0J5UmVhY3Rpb24nO1xuICBjb25zdCB7ZGF0YWJhc2V9ID0gY29udGV4dDtcbiAgY29uc3QgZm9ybWF0SXRlbUlkOiBzdHJpbmcgPSBwYXJzZUFyYW5nb0lkKGl0ZW1JZCk7XG4gIGNvbnN0IGZvcm1hdFJlYWN0aW9uTmFtZTogc3RyaW5nID0gcGFyc2VDaGFyKHJlYWN0aW9uTmFtZSwgMzIpO1xuICBjb25zdCB7bGltaXR9ID0gcGFyc2VSZWFjdGlvbk9wdGlvbnMob3B0aW9ucyk7XG5cbiAgLy8gUXVlcnlcbiAgY29uc3QgYXFsUXJ5OiBzdHJpbmcgPSBgRk9SIHUsIHIgSU4gT1VUQk9VTkQgXCIke2Zvcm1hdEl0ZW1JZH1cIiBoYXNSZWFjdGlvblxuICAgIEZJTFRFUiByLm5hbWUgPT0gJHtmb3JtYXRSZWFjdGlvbk5hbWV9XG4gICAgJHtsaW1pdC5hcWx9XG4gICAgUkVUVVJOIE1FUkdFKHUsIHtyZWFjdGlvbjogcn0pYDtcblxuICByZXR1cm4gZGF0YWJhc2UucXVlcnkoYXFsUXJ5KVxuICAgIC50aGVuKChjdXJzb3I6IEFycmF5Q3Vyc29yKSA9PiBjdXJzb3IuYWxsKCkpXG4gICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IGxvZ0Vycm9yKHtcbiAgICAgIGFjdGlvbixcbiAgICAgIGNhdGVnb3J5OiBldmVudENhdGVnb3J5LFxuICAgICAgbGFiZWw6ICdkYl9lcnJvcidcbiAgICB9LCBlcnJvciwgY29udGV4dCkudGhlbigoKSA9PiBbXSkpO1xufTtcblxuZXhwb3J0IGNvbnN0IGhhc1JlYWN0aW9uID0gKFxuICBjb250ZXh0OiBBcGlDb250ZXh0LFxuICBpdGVtSWQ6IHN0cmluZyxcbiAgcmVhY3Rpb25OYW1lOiBzdHJpbmcsXG4gIGRpcmVjdGlvbjogUmVhY3Rpb25EaXJlY3Rpb24gPSAnT1VUQk9VTkQnXG4pOiBQcm9taXNlPGJvb2xlYW4+ID0+IHtcbiAgY29uc3QgYWN0aW9uOiBzdHJpbmcgPSAnaGFzUmVhY3Rpb24nO1xuICBjb25zdCB7ZGF0YWJhc2UsIHNlc3Npb246IHt1c2VySWQ6IHNlc3Npb25JZH19ID0gY29udGV4dDtcbiAgY29uc3Qgc2Vzc2lvbkRvY0lkOiBzdHJpbmcgPSBgdXNlcnMvJHtzZXNzaW9uSWR9YDtcbiAgY29uc3QgZm9ybWF0SXRlbUlkOiBzdHJpbmcgPSBwYXJzZUFyYW5nb0lkKGl0ZW1JZCk7XG4gIGNvbnN0IGZvcm1hdERpcmVjdGlvbiA9IGRpcmVjdGlvbiA9PT0gJ09VVEJPVU5EJyA/ICdPVVRCT1VORCcgOiAnSU5CT1VORCc7XG4gIGNvbnN0IGl0ZW1EaXJlY3Rpb246IHN0cmluZyA9IGRpcmVjdGlvbiA9PT0gJ09VVEJPVU5EJyA/ICdyLl90bycgOiAnci5fZnJvbSc7XG5cbiAgLy8gUXVlcnlcbiAgY29uc3QgYXFsUXJ5OiBzdHJpbmcgPSBgRk9SIGksIHIgSU4gJHtmb3JtYXREaXJlY3Rpb259IFwiJHtzZXNzaW9uRG9jSWR9XCIgaGFzUmVhY3Rpb25cbiAgICBGSUxURVIgci5uYW1lID09IFwiJHtyZWFjdGlvbk5hbWV9XCIgJiYgJHtpdGVtRGlyZWN0aW9ufSA9PSBcIiR7Zm9ybWF0SXRlbUlkfVwiXG4gICAgTElNSVQgMVxuICAgIFJFVFVSTiByYDtcblxuICBjb25zb2xlLmxvZyh7YXFsUXJ5fSk7XG4gIHJldHVybiBkYXRhYmFzZS5xdWVyeShhcWxRcnkpXG4gICAgLnRoZW4oKGN1cnNvcjogQXJyYXlDdXJzb3IpID0+IGN1cnNvci5uZXh0KCkpXG4gICAgLnRoZW4oKHJlYWN0aW9ucykgPT4gKHJlYWN0aW9ucyA/IHJlYWN0aW9ucy52YWx1ZSA9PT0gJ3RydWUnIDogZmFsc2UpKVxuICAgIC5jYXRjaCgoZXJyb3I6IEVycm9yKSA9PiBsb2dFcnJvcih7XG4gICAgICBhY3Rpb24sXG4gICAgICBjYXRlZ29yeTogZXZlbnRDYXRlZ29yeSxcbiAgICAgIGxhYmVsOiAnZGJfZXJyb3InXG4gICAgfSwgZXJyb3IsIGNvbnRleHQpLnRoZW4oKCkgPT4gZmFsc2UpKTtcbn07XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLG1CQUFtRjtBQUNuRixzQkFBa0I7QUFNbEIsSUFBQUEsZ0JBQStDO0FBRS9DLE1BQU0sZ0JBQXdCO0FBcUJ2QixNQUFNLHVCQUF1QixDQUFDLFVBQTJCLENBQUMsTUFBTTtBQUNyRSxRQUFNO0FBQUEsSUFDSixPQUFPO0FBQUEsSUFDUCxLQUFLO0FBQUEsRUFDUCxJQUFJO0FBRUosU0FBTztBQUFBLElBQ0wsV0FBTyx3QkFBUyxNQUFNLEVBQUU7QUFBQSxFQUMxQjtBQUNGO0FBRU8sTUFBTSxjQUFjLENBQ3pCLFNBQ0EsUUFDQSxXQUFxQixDQUFDLEdBQ3RCLGlCQUEwQixVQUNKO0FBQ3RCLFFBQU0sU0FBaUI7QUFDdkIsUUFBTSxFQUFDLFVBQVUsU0FBUyxFQUFDLFFBQVEsVUFBUyxFQUFDLElBQUk7QUFFakQsTUFBRyxDQUFDLFdBQVc7QUFDYixlQUFPLDRCQUFhO0FBQUEsTUFDbEI7QUFBQSxNQUNBLFVBQVU7QUFBQSxNQUNWLE9BQU87QUFBQSxNQUNQLE9BQU87QUFBQSxJQUNULEdBQUcsT0FBTyxFQUFFLEtBQUssTUFBTSxJQUFJO0FBQUEsRUFDN0I7QUFFQSxRQUFNO0FBQUEsSUFDSixNQUFNLFdBQVc7QUFBQSxJQUNqQixPQUFPO0FBQUEsRUFDVCxJQUFJO0FBQ0osUUFBTSxtQkFBdUIsNEJBQWMsTUFBTTtBQUNqRCxRQUFNLHlCQUE2Qix3QkFB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
|
package/lib/actions/s3.js
CHANGED
|
@@ -4,27 +4,29 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
4
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
5
|
var __getProtoOf = Object.getPrototypeOf;
|
|
6
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
-
var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
|
|
8
|
-
var __require = typeof require !== "undefined" ? require : (x) => {
|
|
9
|
-
throw new Error('Dynamic require of "' + x + '" is not supported');
|
|
10
|
-
};
|
|
11
7
|
var __export = (target, all) => {
|
|
12
|
-
__markAsModule(target);
|
|
13
8
|
for (var name in all)
|
|
14
9
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
15
10
|
};
|
|
16
|
-
var
|
|
17
|
-
if (
|
|
18
|
-
for (let key of __getOwnPropNames(
|
|
19
|
-
if (!__hasOwnProp.call(
|
|
20
|
-
__defProp(
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
21
16
|
}
|
|
22
|
-
return
|
|
23
|
-
};
|
|
24
|
-
var __toModule = (module2) => {
|
|
25
|
-
return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
|
|
17
|
+
return to;
|
|
26
18
|
};
|
|
27
|
-
|
|
19
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
21
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
22
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
23
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
24
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
25
|
+
mod
|
|
26
|
+
));
|
|
27
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
|
+
var s3_exports = {};
|
|
29
|
+
__export(s3_exports, {
|
|
28
30
|
s3Delete: () => s3Delete,
|
|
29
31
|
s3DeleteList: () => s3DeleteList,
|
|
30
32
|
s3Get: () => s3Get,
|
|
@@ -32,8 +34,9 @@ __export(exports, {
|
|
|
32
34
|
s3Head: () => s3Head,
|
|
33
35
|
s3Put: () => s3Put
|
|
34
36
|
});
|
|
35
|
-
|
|
36
|
-
var
|
|
37
|
+
module.exports = __toCommonJS(s3_exports);
|
|
38
|
+
var import_aws_sdk = __toESM(require("aws-sdk"));
|
|
39
|
+
var import_config = require("../config");
|
|
37
40
|
const s3Get = (params) => new Promise((resolve, reject) => {
|
|
38
41
|
import_aws_sdk.default.config.update(import_config.Config.get("aws"));
|
|
39
42
|
const s3 = new import_aws_sdk.S3();
|
|
@@ -122,4 +125,4 @@ const s3GetSignedUrl = (params = {}) => {
|
|
|
122
125
|
s3Head,
|
|
123
126
|
s3Put
|
|
124
127
|
});
|
|
125
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FjdGlvbnMvczMudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDE5LVByZXNlbnQsIE5pdHJvZ2VuIExhYnMsIEluYy5cbiAqIENvcHlyaWdodHMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLiBTZWUgdGhlIGFjY29tcGFueWluZyBMSUNFTlNFIGZpbGUgZm9yIHRlcm1zLlxuICovXG5pbXBvcnQgYXdzLCB7UzN9IGZyb20gJ2F3cy1zZGsnO1xuaW1wb3J0IHtcbiAgRGVsZXRlT2JqZWN0T3V0cHV0LFxuICBEZWxldGVPYmplY3RSZXF1ZXN0LFxuICBEZWxldGVPYmplY3RzT3V0cHV0LFxuICBEZWxldGVPYmplY3RzUmVxdWVzdCxcbiAgR2V0T2JqZWN0T3V0cHV0LFxuICBHZXRPYmplY3RSZXF1ZXN0LFxuICBIZWFkT2JqZWN0T3V0cHV0LFxuICBIZWFkT2JqZWN0UmVxdWVzdCxcbiAgUHV0T2JqZWN0T3V0cHV0LFxuICBQdXRPYmplY3RSZXF1ZXN0XG59IGZyb20gJ2F3cy1zZGsvY2xpZW50cy9zMyc7XG5cbmltcG9ydCB7Q29uZmlnfSBmcm9tICcuLi9jb25maWcnO1xuXG4vLyBBV1MgUzNcbi8vIGNvbnN0IGV2ZW50Q2F0ZWdvcnk6IHN0cmluZyA9ICdzMyc7XG5cbmV4cG9ydCBjb25zdCBzM0dldCA9IChwYXJhbXM6IEdldE9iamVjdFJlcXVlc3QpOiBQcm9taXNlPEdldE9iamVjdE91dHB1dD4gPT5cbiAgbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIGF3cy5jb25maWcudXBkYXRlKENvbmZpZy5nZXQoJ2F3cycpKTtcbiAgICBjb25zdCBzMzogUzMgPSBuZXcgUzMoKTtcblxuICAgIGlmKCFwYXJhbXMuQnVja2V0KSB7XG4gICAgICBwYXJhbXMuQnVja2V0ID0gQ29uZmlnLmdldCgnYXdzLkJ1Y2tldCcpO1xuICAgIH1cblxuICAgIHMzLmdldE9iamVjdChwYXJhbXMsIChlcnJvcjogRXJyb3IsIG91dHB1dDogR2V0T2JqZWN0T3V0cHV0KSA9PiB7XG4gICAgICBpZihlcnJvcikge1xuICAgICAgICByZXR1cm4gcmVqZWN0KGVycm9yKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHJlc29sdmUob3V0cHV0KTtcbiAgICB9KTtcbiAgfSk7XG5cbmV4cG9ydCBjb25zdCBzM0hlYWQgPSAocGFyYW1zOiBIZWFkT2JqZWN0UmVxdWVzdCk6IFByb21pc2U8SGVhZE9iamVjdE91dHB1dD4gPT5cbiAgbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIGF3cy5jb25maWcudXBkYXRlKENvbmZpZy5nZXQoJ2F3cycpKTtcbiAgICBjb25zdCBzMzogUzMgPSBuZXcgUzMoKTtcblxuICAgIGlmKCFwYXJhbXMuQnVja2V0KSB7XG4gICAgICBwYXJhbXMuQnVja2V0ID0gQ29uZmlnLmdldCgnYXdzLkJ1Y2tldCcpO1xuICAgIH1cblxuICAgIHMzLmhlYWRPYmplY3QocGFyYW1zLCAoZXJyb3I6IEVycm9yLCBvdXRwdXQ6IEhlYWRPYmplY3RPdXRwdXQpID0+
|
|
128
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FjdGlvbnMvczMudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDE5LVByZXNlbnQsIE5pdHJvZ2VuIExhYnMsIEluYy5cbiAqIENvcHlyaWdodHMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLiBTZWUgdGhlIGFjY29tcGFueWluZyBMSUNFTlNFIGZpbGUgZm9yIHRlcm1zLlxuICovXG5pbXBvcnQgYXdzLCB7UzN9IGZyb20gJ2F3cy1zZGsnO1xuaW1wb3J0IHtcbiAgRGVsZXRlT2JqZWN0T3V0cHV0LFxuICBEZWxldGVPYmplY3RSZXF1ZXN0LFxuICBEZWxldGVPYmplY3RzT3V0cHV0LFxuICBEZWxldGVPYmplY3RzUmVxdWVzdCxcbiAgR2V0T2JqZWN0T3V0cHV0LFxuICBHZXRPYmplY3RSZXF1ZXN0LFxuICBIZWFkT2JqZWN0T3V0cHV0LFxuICBIZWFkT2JqZWN0UmVxdWVzdCxcbiAgUHV0T2JqZWN0T3V0cHV0LFxuICBQdXRPYmplY3RSZXF1ZXN0XG59IGZyb20gJ2F3cy1zZGsvY2xpZW50cy9zMyc7XG5cbmltcG9ydCB7Q29uZmlnfSBmcm9tICcuLi9jb25maWcnO1xuXG4vLyBBV1MgUzNcbi8vIGNvbnN0IGV2ZW50Q2F0ZWdvcnk6IHN0cmluZyA9ICdzMyc7XG5cbmV4cG9ydCBjb25zdCBzM0dldCA9IChwYXJhbXM6IEdldE9iamVjdFJlcXVlc3QpOiBQcm9taXNlPEdldE9iamVjdE91dHB1dD4gPT5cbiAgbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIGF3cy5jb25maWcudXBkYXRlKENvbmZpZy5nZXQoJ2F3cycpKTtcbiAgICBjb25zdCBzMzogUzMgPSBuZXcgUzMoKTtcblxuICAgIGlmKCFwYXJhbXMuQnVja2V0KSB7XG4gICAgICBwYXJhbXMuQnVja2V0ID0gQ29uZmlnLmdldCgnYXdzLkJ1Y2tldCcpO1xuICAgIH1cblxuICAgIHMzLmdldE9iamVjdChwYXJhbXMsIChlcnJvcjogRXJyb3IsIG91dHB1dDogR2V0T2JqZWN0T3V0cHV0KSA9PiB7XG4gICAgICBpZihlcnJvcikge1xuICAgICAgICByZXR1cm4gcmVqZWN0KGVycm9yKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHJlc29sdmUob3V0cHV0KTtcbiAgICB9KTtcbiAgfSk7XG5cbmV4cG9ydCBjb25zdCBzM0hlYWQgPSAocGFyYW1zOiBIZWFkT2JqZWN0UmVxdWVzdCk6IFByb21pc2U8SGVhZE9iamVjdE91dHB1dD4gPT5cbiAgbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIGF3cy5jb25maWcudXBkYXRlKENvbmZpZy5nZXQoJ2F3cycpKTtcbiAgICBjb25zdCBzMzogUzMgPSBuZXcgUzMoKTtcblxuICAgIGlmKCFwYXJhbXMuQnVja2V0KSB7XG4gICAgICBwYXJhbXMuQnVja2V0ID0gQ29uZmlnLmdldCgnYXdzLkJ1Y2tldCcpO1xuICAgIH1cblxuICAgIHMzLmhlYWRPYmplY3QocGFyYW1zLCAoZXJyb3I6IEVycm9yLCBvdXRwdXQ6IEhlYWRPYmplY3RPdXRwdXQpID0+IHtcbiAgICAgIGlmKGVycm9yKSB7XG4gICAgICAgIHJldHVybiByZWplY3QoZXJyb3IpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHJlc29sdmUob3V0cHV0KTtcbiAgICB9KTtcbiAgfSk7XG5cblxuZXhwb3J0IGNvbnN0IHMzUHV0ID0gKHBhcmFtczogUHV0T2JqZWN0UmVxdWVzdCk6IFByb21pc2U8UHV0T2JqZWN0T3V0cHV0PiA9PlxuICBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgYXdzLmNvbmZpZy51cGRhdGUoQ29uZmlnLmdldCgnYXdzJykpO1xuICAgIGNvbnN0IHMzID0gbmV3IGF3cy5TMygpO1xuXG4gICAgaWYoIXBhcmFtcy5CdWNrZXQpIHtcbiAgICAgIHBhcmFtcy5CdWNrZXQgPSBDb25maWcuZ2V0KCdhd3MuQnVja2V0Jyk7XG4gICAgfVxuXG4gICAgaWYoIXBhcmFtcy5TdG9yYWdlQ2xhc3MpIHtcbiAgICAgIHBhcmFtcy5TdG9yYWdlQ2xhc3MgPSAnUkVEVUNFRF9SRURVTkRBTkNZJztcbiAgICB9XG5cbiAgICBzMy5wdXRPYmplY3QocGFyYW1zLCAoZXJyb3I6IEVycm9yLCBvdXRwdXQ6IFB1dE9iamVjdE91dHB1dCkgPT4ge1xuICAgICAgaWYoZXJyb3IpIHtcbiAgICAgICAgcmV0dXJuIHJlamVjdChlcnJvcik7XG4gICAgICB9XG4gICAgICByZXR1cm4gcmVzb2x2ZShvdXRwdXQpO1xuICAgIH0pO1xuICB9KTtcblxuZXhwb3J0IGNvbnN0IHMzRGVsZXRlID0gKHBhcmFtczogRGVsZXRlT2JqZWN0UmVxdWVzdCk6IFByb21pc2U8RGVsZXRlT2JqZWN0T3V0cHV0PiA9PlxuICBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgYXdzLmNvbmZpZy51cGRhdGUoQ29uZmlnLmdldCgnYXdzJykpO1xuICAgIGNvbnN0IHMzOiBTMyA9IG5ldyBTMygpO1xuXG4gICAgaWYoIXBhcmFtcy5CdWNrZXQpIHtcbiAgICAgIHBhcmFtcy5CdWNrZXQgPSBDb25maWcuZ2V0KCdhd3MuQnVja2V0Jyk7XG4gICAgfVxuXG4gICAgczMuZGVsZXRlT2JqZWN0KHBhcmFtcywgKGVycm9yLCBvdXRwdXQ6IERlbGV0ZU9iamVjdE91dHB1dCkgPT4ge1xuICAgICAgaWYoZXJyb3IpIHtcbiAgICAgICAgcmV0dXJuIHJlamVjdChlcnJvcik7XG4gICAgICB9XG4gICAgICByZXR1cm4gcmVzb2x2ZShvdXRwdXQpO1xuICAgIH0pO1xuICB9KTtcblxuZXhwb3J0IGNvbnN0IHMzRGVsZXRlTGlzdCA9IChwYXJhbXM6IERlbGV0ZU9iamVjdHNSZXF1ZXN0KTogUHJvbWlzZTxEZWxldGVPYmplY3RzT3V0cHV0PiA9PlxuICBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgYXdzLmNvbmZpZy51cGRhdGUoQ29uZmlnLmdldCgnYXdzJykpO1xuICAgIGNvbnN0IHMzOiBTMyA9IG5ldyBTMygpO1xuXG4gICAgaWYoIXBhcmFtcy5CdWNrZXQpIHtcbiAgICAgIHBhcmFtcy5CdWNrZXQgPSBDb25maWcuZ2V0KCdhd3MuQnVja2V0Jyk7XG4gICAgfVxuXG4gICAgczMuZGVsZXRlT2JqZWN0cyhwYXJhbXMsIChlcnJvcjogRXJyb3IsIG91dHB1dDogRGVsZXRlT2JqZWN0c091dHB1dCkgPT4ge1xuICAgICAgaWYoZXJyb3IpIHtcbiAgICAgICAgcmV0dXJuIHJlamVjdChlcnJvcik7XG4gICAgICB9XG4gICAgICByZXR1cm4gcmVzb2x2ZShvdXRwdXQpO1xuICAgIH0pO1xuICB9KTtcblxuZXhwb3J0IGNvbnN0IHMzR2V0U2lnbmVkVXJsID0gKHBhcmFtczogYW55ID0ge30pOiBzdHJpbmcgPT4ge1xuICBhd3MuY29uZmlnLnVwZGF0ZShDb25maWcuZ2V0KCdhd3MnKSk7XG4gIGNvbnN0IHMzOiBTMyA9IG5ldyBTMygpO1xuXG4gIGlmKCFwYXJhbXMuRXhwaXJlcykge1xuICAgIHBhcmFtcy5FeHBpcmVzID0gMTIgKiA2MCAqIDYwO1xuICB9XG5cbiAgaWYoIXBhcmFtcy5CdWNrZXQpIHtcbiAgICBwYXJhbXMuQnVja2V0ID0gQ29uZmlnLmdldCgnYXdzLkJ1Y2tldCcpO1xuICB9XG5cbiAgcmV0dXJuIHMzLmdldFNpZ25lZFVybCgnZ2V0T2JqZWN0JywgcGFyYW1zKTtcbn07XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlBLHFCQUFzQjtBQWN0QixvQkFBcUI7QUFLZCxNQUFNLFFBQVEsQ0FBQyxXQUNwQixJQUFJLFFBQVEsQ0FBQyxTQUFTLFdBQVc7QUFDL0IsaUJBQUFBLFFBQUksT0FBTyxPQUFPLHFCQUFPLElBQUksS0FBSyxDQUFDO0FBQ25DLFFBQU0sS0FBUyxJQUFJLGtC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
|
package/lib/actions/search.js
CHANGED
|
@@ -1,54 +1,40 @@
|
|
|
1
1
|
var __create = Object.create;
|
|
2
2
|
var __defProp = Object.defineProperty;
|
|
3
|
-
var __defProps = Object.defineProperties;
|
|
4
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
-
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
6
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
8
5
|
var __getProtoOf = Object.getPrototypeOf;
|
|
9
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
10
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
11
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
12
|
-
var __spreadValues = (a, b) => {
|
|
13
|
-
for (var prop in b || (b = {}))
|
|
14
|
-
if (__hasOwnProp.call(b, prop))
|
|
15
|
-
__defNormalProp(a, prop, b[prop]);
|
|
16
|
-
if (__getOwnPropSymbols)
|
|
17
|
-
for (var prop of __getOwnPropSymbols(b)) {
|
|
18
|
-
if (__propIsEnum.call(b, prop))
|
|
19
|
-
__defNormalProp(a, prop, b[prop]);
|
|
20
|
-
}
|
|
21
|
-
return a;
|
|
22
|
-
};
|
|
23
|
-
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
24
|
-
var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
|
|
25
|
-
var __require = typeof require !== "undefined" ? require : (x) => {
|
|
26
|
-
throw new Error('Dynamic require of "' + x + '" is not supported');
|
|
27
|
-
};
|
|
28
7
|
var __export = (target, all) => {
|
|
29
|
-
__markAsModule(target);
|
|
30
8
|
for (var name in all)
|
|
31
9
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
32
10
|
};
|
|
33
|
-
var
|
|
34
|
-
if (
|
|
35
|
-
for (let key of __getOwnPropNames(
|
|
36
|
-
if (!__hasOwnProp.call(
|
|
37
|
-
__defProp(
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
38
16
|
}
|
|
39
|
-
return
|
|
40
|
-
};
|
|
41
|
-
var __toModule = (module2) => {
|
|
42
|
-
return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
|
|
17
|
+
return to;
|
|
43
18
|
};
|
|
44
|
-
|
|
19
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
21
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
22
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
23
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
24
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
25
|
+
mod
|
|
26
|
+
));
|
|
27
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
|
+
var search_exports = {};
|
|
29
|
+
__export(search_exports, {
|
|
45
30
|
getSearchList: () => getSearchList
|
|
46
31
|
});
|
|
47
|
-
|
|
48
|
-
var
|
|
49
|
-
var
|
|
50
|
-
var
|
|
51
|
-
var
|
|
32
|
+
module.exports = __toCommonJS(search_exports);
|
|
33
|
+
var import_arangojs = require("arangojs");
|
|
34
|
+
var import_flatten = __toESM(require("lodash/flatten"));
|
|
35
|
+
var import_uniqBy = __toESM(require("lodash/uniqBy"));
|
|
36
|
+
var import_utils = require("../utils");
|
|
37
|
+
var import_users2 = require("./users");
|
|
52
38
|
const eventCategory = "search";
|
|
53
39
|
const getSearchList = (context, query, from, to) => {
|
|
54
40
|
const action = "getList";
|
|
@@ -73,7 +59,7 @@ const getSearchList = (context, query, from, to) => {
|
|
|
73
59
|
const collectionIdList = itemId.split("/");
|
|
74
60
|
const collection = collectionIdList[0];
|
|
75
61
|
const name = collection === "users" ? (0, import_users2.getDisplayName)(item) : itemName;
|
|
76
|
-
return
|
|
62
|
+
return { ...item, name };
|
|
77
63
|
});
|
|
78
64
|
});
|
|
79
65
|
}
|
|
@@ -87,7 +73,7 @@ const getSearchList = (context, query, from, to) => {
|
|
|
87
73
|
const collectionIdList = itemId.split("/");
|
|
88
74
|
const collection = collectionIdList[0];
|
|
89
75
|
const name = collection === "users" ? (0, import_users2.getDisplayName)(item) : itemName;
|
|
90
|
-
return
|
|
76
|
+
return { ...item, name };
|
|
91
77
|
})).catch((error) => (0, import_utils.logException)({
|
|
92
78
|
action,
|
|
93
79
|
category: eventCategory,
|
|
@@ -99,4 +85,4 @@ const getSearchList = (context, query, from, to) => {
|
|
|
99
85
|
0 && (module.exports = {
|
|
100
86
|
getSearchList
|
|
101
87
|
});
|
|
102
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FjdGlvbnMvc2VhcmNoLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxOS1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuaW1wb3J0IHthcWx9IGZyb20gJ2FyYW5nb2pzJztcbmltcG9ydCB7QXFsUXVlcnl9IGZyb20gJ2FyYW5nb2pzL2FxbCc7XG5pbXBvcnQge0FycmF5Q3Vyc29yfSBmcm9tICdhcmFuZ29qcy9jdXJzb3InO1xuaW1wb3J0IGZsYXR0ZW4gZnJvbSAnbG9kYXNoL2ZsYXR0ZW4nO1xuaW1wb3J0IHVuaXFCeSBmcm9tICdsb2Rhc2gvdW5pcUJ5JztcblxuaW1wb3J0IHtBcmFuZ29EQkxpbWl0fSBmcm9tICcuLi90eXBlcy9hcmFuZ29kYic7XG5pbXBvcnQge0FwaUNvbnRleHR9IGZyb20gJy4uL3R5cGVzL2F1dGgnO1xuaW1wb3J0IHtVc2VyfSBmcm9tICcuLi90eXBlcy91c2Vycyc7XG5pbXBvcnQge2dldExpbWl0LCBsb2dFeGNlcHRpb259IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7Z2V0RGlzcGxheU5hbWV9IGZyb20gJy4vdXNlcnMnO1xuXG5jb25zdCBldmVudENhdGVnb3J5OiBzdHJpbmcgPSAnc2VhcmNoJztcblxuZXhwb3J0IGNvbnN0IGdldFNlYXJjaExpc3QgPSAoY29udGV4dDogQXBpQ29udGV4dCwgcXVlcnk6IHN0cmluZywgZnJvbTogbnVtYmVyLCB0bzogbnVtYmVyKTogUHJvbWlzZTxVc2VyW10+ID0+IHtcbiAgY29uc3QgYWN0aW9uOiBzdHJpbmcgPSAnZ2V0TGlzdCc7XG4gIGNvbnN0IHtkYXRhYmFzZX0gPSBjb250ZXh0O1xuICBjb25zdCBpc1N0cmluZzogYm9vbGVhbiA9IHRydWU7XG5cbiAgaWYoaXNTdHJpbmcpIHtcbiAgICBjb25zdCBmaWVsZHM6IGFueVtdID0gW1xuICAgICAge2NvbGxlY3Rpb246ICd1c2VycycsIGZpZWxkOiAnZmlyc3QnfSxcbiAgICAgIHtjb2xsZWN0aW9uOiAndXNlcnMnLCBmaWVsZDogJ2xhc3QnfSxcbiAgICAgIHtjb2xsZWN0aW9uOiAndXNlcnMnLCBmaWVsZDogJ2VtYWlsJ30sXG4gICAgICB7Y29sbGVjdGlvbjogJ3VzZXJzJywgZmllbGQ6ICd1c2VybmFtZSd9LFxuICAgICAge2NvbGxlY3Rpb246ICd1c2VycycsIGZpZWxkOiAnbmFtZSd9XG4gICAgXTtcblxuICAgIHJldHVybiBQcm9taXNlLmFsbChmaWVsZHMubWFwKChvYmopID0+IHtcbiAgICAgIGNvbnN0IHFyeTogc3RyaW5nID0gYHByZWZpeDoke3F1ZXJ5fWA7XG4gICAgICBjb25zdCB1c2VyUXJ5OiBBcWxRdWVyeSA9IGFxbGBGT1IgdSBJTiBGVUxMVEVYVCgke29iai5jb2xsZWN0aW9ufSwgJHtvYmouZmllbGR9LCAke3FyeX0sIDUwKSBSRVRVUk4gdWA7XG4gICAgICByZXR1cm4gZGF0YWJhc2UucXVlcnkodXNlclFyeSkudGhlbigoY3Vyc29yOiBBcnJheUN1cnNvcikgPT4gY3Vyc29yLmFsbCgpKTtcbiAgICB9KSlcbiAgICAgIC50aGVuKChyZXN1bHRzKSA9PiB7XG4gICAgICAgIGNvbnN0IGxpc3QgPSB1bmlxQnkoZmxhdHRlbihyZXN1bHRzKSwgJ19rZXknKTtcblxuICAgICAgICByZXR1cm4gbGlzdC5tYXAoKGl0ZW06IFVzZXIpID0+
|
|
88
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FjdGlvbnMvc2VhcmNoLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxOS1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuaW1wb3J0IHthcWx9IGZyb20gJ2FyYW5nb2pzJztcbmltcG9ydCB7QXFsUXVlcnl9IGZyb20gJ2FyYW5nb2pzL2FxbCc7XG5pbXBvcnQge0FycmF5Q3Vyc29yfSBmcm9tICdhcmFuZ29qcy9jdXJzb3InO1xuaW1wb3J0IGZsYXR0ZW4gZnJvbSAnbG9kYXNoL2ZsYXR0ZW4nO1xuaW1wb3J0IHVuaXFCeSBmcm9tICdsb2Rhc2gvdW5pcUJ5JztcblxuaW1wb3J0IHtBcmFuZ29EQkxpbWl0fSBmcm9tICcuLi90eXBlcy9hcmFuZ29kYic7XG5pbXBvcnQge0FwaUNvbnRleHR9IGZyb20gJy4uL3R5cGVzL2F1dGgnO1xuaW1wb3J0IHtVc2VyfSBmcm9tICcuLi90eXBlcy91c2Vycyc7XG5pbXBvcnQge2dldExpbWl0LCBsb2dFeGNlcHRpb259IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7Z2V0RGlzcGxheU5hbWV9IGZyb20gJy4vdXNlcnMnO1xuXG5jb25zdCBldmVudENhdGVnb3J5OiBzdHJpbmcgPSAnc2VhcmNoJztcblxuZXhwb3J0IGNvbnN0IGdldFNlYXJjaExpc3QgPSAoY29udGV4dDogQXBpQ29udGV4dCwgcXVlcnk6IHN0cmluZywgZnJvbTogbnVtYmVyLCB0bzogbnVtYmVyKTogUHJvbWlzZTxVc2VyW10+ID0+IHtcbiAgY29uc3QgYWN0aW9uOiBzdHJpbmcgPSAnZ2V0TGlzdCc7XG4gIGNvbnN0IHtkYXRhYmFzZX0gPSBjb250ZXh0O1xuICBjb25zdCBpc1N0cmluZzogYm9vbGVhbiA9IHRydWU7XG5cbiAgaWYoaXNTdHJpbmcpIHtcbiAgICBjb25zdCBmaWVsZHM6IGFueVtdID0gW1xuICAgICAge2NvbGxlY3Rpb246ICd1c2VycycsIGZpZWxkOiAnZmlyc3QnfSxcbiAgICAgIHtjb2xsZWN0aW9uOiAndXNlcnMnLCBmaWVsZDogJ2xhc3QnfSxcbiAgICAgIHtjb2xsZWN0aW9uOiAndXNlcnMnLCBmaWVsZDogJ2VtYWlsJ30sXG4gICAgICB7Y29sbGVjdGlvbjogJ3VzZXJzJywgZmllbGQ6ICd1c2VybmFtZSd9LFxuICAgICAge2NvbGxlY3Rpb246ICd1c2VycycsIGZpZWxkOiAnbmFtZSd9XG4gICAgXTtcblxuICAgIHJldHVybiBQcm9taXNlLmFsbChmaWVsZHMubWFwKChvYmopID0+IHtcbiAgICAgIGNvbnN0IHFyeTogc3RyaW5nID0gYHByZWZpeDoke3F1ZXJ5fWA7XG4gICAgICBjb25zdCB1c2VyUXJ5OiBBcWxRdWVyeSA9IGFxbGBGT1IgdSBJTiBGVUxMVEVYVCgke29iai5jb2xsZWN0aW9ufSwgJHtvYmouZmllbGR9LCAke3FyeX0sIDUwKSBSRVRVUk4gdWA7XG4gICAgICByZXR1cm4gZGF0YWJhc2UucXVlcnkodXNlclFyeSkudGhlbigoY3Vyc29yOiBBcnJheUN1cnNvcikgPT4gY3Vyc29yLmFsbCgpKTtcbiAgICB9KSlcbiAgICAgIC50aGVuKChyZXN1bHRzKSA9PiB7XG4gICAgICAgIGNvbnN0IGxpc3QgPSB1bmlxQnkoZmxhdHRlbihyZXN1bHRzKSwgJ19rZXknKTtcblxuICAgICAgICByZXR1cm4gbGlzdC5tYXAoKGl0ZW06IFVzZXIpID0+IHtcbiAgICAgICAgICBjb25zdCB7X2lkOiBpdGVtSWQsIG5hbWU6IGl0ZW1OYW1lfSA9IGl0ZW07XG4gICAgICAgICAgY29uc3QgY29sbGVjdGlvbklkTGlzdDogc3RyaW5nW10gPSBpdGVtSWQuc3BsaXQoJy8nKTtcbiAgICAgICAgICBjb25zdCBjb2xsZWN0aW9uOiBzdHJpbmcgPSBjb2xsZWN0aW9uSWRMaXN0WzBdO1xuICAgICAgICAgIGNvbnN0IG5hbWU6IHN0cmluZyA9IGNvbGxlY3Rpb24gPT09ICd1c2VycycgPyBnZXREaXNwbGF5TmFtZShpdGVtKSA6IGl0ZW1OYW1lO1xuXG4gICAgICAgICAgcmV0dXJuIHsuLi5pdGVtLCBuYW1lfTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIGNvbnN0IGxpbWl0OiBBcmFuZ29EQkxpbWl0ID0gZ2V0TGltaXQoZnJvbSwgdG8pO1xuICBjb25zdCBhcWxRcnk6IHN0cmluZyA9IGBGT1IgdSBJTiB1c2Vyc1xuICAgICAgICBGSUxURVIgdS5waG9uZSA9PSBcIiR7cXVlcnl9XCJcbiAgICAgICAgJHtsaW1pdC5hcWx9XG4gICAgICAgIFJFVFVSTiB1YDtcblxuICByZXR1cm4gZGF0YWJhc2UucXVlcnkoYXFsUXJ5KVxuICAgIC50aGVuKChjdXJzb3I6IEFycmF5Q3Vyc29yKSA9PiBjdXJzb3IuYWxsKCkpXG4gICAgLnRoZW4oKGxpc3Q6IFVzZXJbXSA9IFtdKSA9PiBsaXN0Lm1hcCgoaXRlbSA9IHt9KSA9PiB7XG4gICAgICBjb25zdCB7X2lkOiBpdGVtSWQsIG5hbWU6IGl0ZW1OYW1lfSA9IGl0ZW07XG4gICAgICBjb25zdCBjb2xsZWN0aW9uSWRMaXN0OiBzdHJpbmdbXSA9IGl0ZW1JZC5zcGxpdCgnLycpO1xuICAgICAgY29uc3QgY29sbGVjdGlvbjogc3RyaW5nID0gY29sbGVjdGlvbklkTGlzdFswXTtcbiAgICAgIGNvbnN0IG5hbWU6IHN0cmluZyA9IGNvbGxlY3Rpb24gPT09ICd1c2VycycgPyBnZXREaXNwbGF5TmFtZShpdGVtKSA6IGl0ZW1OYW1lO1xuXG4gICAgICByZXR1cm4gey4uLml0ZW0sIG5hbWV9O1xuICAgIH0pKVxuICAgIC5jYXRjaCgoZXJyb3I6IEVycm9yKSA9PiBsb2dFeGNlcHRpb24oe1xuICAgICAgYWN0aW9uLFxuICAgICAgY2F0ZWdvcnk6IGV2ZW50Q2F0ZWdvcnksXG4gICAgICBsYWJlbDogJ2RiX2Vycm9yJyxcbiAgICAgIHZhbHVlOiBlcnJvci5tZXNzYWdlXG4gICAgfSwgY29udGV4dCkudGhlbigoKSA9PiBudWxsKSk7XG59O1xuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlBLHNCQUFrQjtBQUdsQixxQkFBb0I7QUFDcEIsb0JBQW1CO0FBS25CLG1CQUFxQztBQUNyQyxJQUFBQSxnQkFBNkI7QUFFN0IsTUFBTSxnQkFBd0I7QUFFdkIsTUFBTSxnQkFBZ0IsQ0FBQyxTQUFxQixPQUFlLE1BQWMsT0FBZ0M7QUFDOUcsUUFBTSxTQUFpQjtBQUN2QixRQUFNLEVBQUMsU0FBUSxJQUFJO0FBQ25CLFFBQU0sV0FBb0I7QUFFMUIsTUFBRyxVQUFVO0FBQ1gsVUFBTSxTQUFnQjtBQUFBLE1BQ3BCLEVBQUMsWUFBWSxTQUFTLE9BQU8sUUFBTztBQUFBLE1BQ3BDLEVBQUMsWUFBWSxTQUFTLE9BQU8sT0FBTTtBQUFBLE1BQ25DLEVBQUMsWUFBWSxTQUFTLE9BQU8sUUFBTztBQUFBLE1BQ3BDLEVBQUMsWUFBWSxTQUFTLE9BQU8sV0FBVTtBQUFBLE1BQ3ZDLEVBQUMsWUFBWSxTQUFTLE9BQU8sT0FBTTtBQUFBLElBQ3JDO0FBRUEsV0FBTyxRQUFRLElBQUksT0FBTyxJQUFJLENBQUMsUUFBUTtBQUNyQyxZQUFNLE1BQWMsVUFBVSxLQUFLO0FBQ25DLFlBQU0sVUFBb0Isd0NBQXdCLElBQUksVUFBVSxLQUFLLElBQUksS0FBSyxLQUFLLEdBQUc7QUFDdEYsYUFBTyxTQUFTLE1BQU0sT0FBTyxFQUFFLEtBQUssQ0FBQyxXQUF3QixPQUFPLElBQUksQ0FBQztBQUFBLElBQzNFLENBQUMsQ0FBQyxFQUNDLEtBQUssQ0FBQyxZQUFZO0FBQ2pCLFlBQU0sV0FBTyxjQUFBQyxhQUFPLGVBQUFDLFNBQVEsT0FBTyxHQUFHLE1BQU07QUFFNUMsYUFBTyxLQUFLLElBQUksQ0FBQyxTQUFlO0FBQzlCLGNBQU0sRUFBQyxLQUFLLFFBQVEsTUFBTSxTQUFRLElBQUk7QUFDdEMsY0FBTSxtQkFBNkIsT0FBTyxNQUFNLEdBQUc7QUFDbkQsY0FBTSxhQUFxQixpQkFBaUIsQ0FBQztBQUM3QyxjQUFNLE9BQWUsZUFBZSxjQUFVLDhCQUFlLElBQUksSUFBSTtBQUVyRSxlQUFPLEVBQUMsR0FBRyxNQUFNLEtBQUk7QUFBQSxNQUN2QixDQUFDO0FBQUEsSUFDSCxDQUFDO0FBQUEsRUFDTDtBQUVBLFFBQU0sWUFBdUIsdUJBQVMsTUFBTSxFQUFFO0FBQzlDLFFBQU0sU0FBaUI7QUFBQSw2QkFDSSxLQUFLO0FBQUEsVUFDeEIsTUFBTSxHQUFHO0FBQUE7QUFHakIsU0FBTyxTQUFTLE1BQU0sTUFBTSxFQUN6QixLQUFLLENBQUMsV0FBd0IsT0FBTyxJQUFJLENBQUMsRUFDMUMsS0FBSyxDQUFDLE9BQWUsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNO0FBQ25ELFVBQU0sRUFBQyxLQUFLLFFBQVEsTUFBTSxTQUFRLElBQUk7QUFDdEMsVUFBTSxtQkFBNkIsT0FBTyxNQUFNLEdBQUc7QUFDbkQsVUFBTSxhQUFxQixpQkFBaUIsQ0FBQztBQUM3QyxVQUFNLE9BQWUsZUFBZSxjQUFVLDhCQUFlLElBQUksSUFBSTtBQUVyRSxXQUFPLEVBQUMsR0FBRyxNQUFNLEtBQUk7QUFBQSxFQUN2QixDQUFDLENBQUMsRUFDRCxNQUFNLENBQUMsY0FBaUIsMkJBQWE7QUFBQSxJQUNwQztBQUFBLElBQ0EsVUFBVTtBQUFBLElBQ1YsT0FBTztBQUFBLElBQ1AsT0FBTyxNQUFNO0FBQUEsRUFDZixHQUFHLE9BQU8sRUFBRSxLQUFLLE1BQU0sSUFBSSxDQUFDO0FBQ2hDOyIsCiAgIm5hbWVzIjogWyJpbXBvcnRfdXNlcnMiLCAidW5pcUJ5IiwgImZsYXR0ZW4iXQp9Cg==
|
package/lib/actions/sms.js
CHANGED
|
@@ -4,35 +4,38 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
4
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
5
|
var __getProtoOf = Object.getPrototypeOf;
|
|
6
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
-
var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
|
|
8
|
-
var __require = typeof require !== "undefined" ? require : (x) => {
|
|
9
|
-
throw new Error('Dynamic require of "' + x + '" is not supported');
|
|
10
|
-
};
|
|
11
7
|
var __export = (target, all) => {
|
|
12
|
-
__markAsModule(target);
|
|
13
8
|
for (var name in all)
|
|
14
9
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
15
10
|
};
|
|
16
|
-
var
|
|
17
|
-
if (
|
|
18
|
-
for (let key of __getOwnPropNames(
|
|
19
|
-
if (!__hasOwnProp.call(
|
|
20
|
-
__defProp(
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
21
16
|
}
|
|
22
|
-
return
|
|
23
|
-
};
|
|
24
|
-
var __toModule = (module2) => {
|
|
25
|
-
return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
|
|
17
|
+
return to;
|
|
26
18
|
};
|
|
27
|
-
|
|
19
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
21
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
22
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
23
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
24
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
25
|
+
mod
|
|
26
|
+
));
|
|
27
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
|
+
var sms_exports = {};
|
|
29
|
+
__export(sms_exports, {
|
|
28
30
|
sendSms: () => sendSms,
|
|
29
31
|
sendSmsTemplate: () => sendSmsTemplate
|
|
30
32
|
});
|
|
31
|
-
|
|
32
|
-
var
|
|
33
|
-
var
|
|
34
|
-
var
|
|
35
|
-
var
|
|
33
|
+
module.exports = __toCommonJS(sms_exports);
|
|
34
|
+
var import_utils = require("@nlabs/utils");
|
|
35
|
+
var import_fs = __toESM(require("fs"));
|
|
36
|
+
var import_twilio = __toESM(require("twilio"));
|
|
37
|
+
var import_config = require("../config");
|
|
38
|
+
var import_email = require("./email");
|
|
36
39
|
const sendSms = (params) => {
|
|
37
40
|
const {
|
|
38
41
|
app = {},
|
|
@@ -76,4 +79,4 @@ const sendSmsTemplate = (templateName, smsParams) => {
|
|
|
76
79
|
sendSms,
|
|
77
80
|
sendSmsTemplate
|
|
78
81
|
});
|
|
79
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FjdGlvbnMvc21zLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxOS1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuaW1wb3J0IHtwYXJzZVBob25lfSBmcm9tICdAbmxhYnMvdXRpbHMnO1xuaW1wb3J0IGZzIGZyb20gJ2ZzJztcbmltcG9ydCB0d2lsaW9TZGsgZnJvbSAndHdpbGlvJztcblxuaW1wb3J0IHtDb25maWd9IGZyb20gJy4uL2NvbmZpZyc7XG5pbXBvcnQge1NNU1BhcmFtc1R5cGUsIFR3aWxpb09wdGlvbnNUeXBlfSBmcm9tICcuLi90eXBlcy9ub3RpZmljYXRpb25zJztcbmltcG9ydCB7YXBwVGVtcGxhdGV9IGZyb20gJy4vZW1haWwnO1xuXG4vLyBjb25zdCBldmVudENhdGVnb3J5OiBzdHJpbmcgPSAnc21zJztcblxuLy8gVHdpbGlvXG5leHBvcnQgY29uc3Qgc2VuZFNtcyA9IChwYXJhbXM6IFNNU1BhcmFtc1R5cGUpOiBhbnkgPT4ge1xuICBjb25zdCB7XG4gICAgYXBwID0ge30sXG4gICAgY29udGVudCxcbiAgICB1c2VyID0ge31cbiAgfSA9IHBhcmFtcztcblxuICBjb25zdCBjb3VudHJ5ID0gdXNlci5jb3VudHJ5IHx8ICdVUyc7XG4gIGNvbnN0IHBob25lID0gcGFyc2VQaG9uZSh1c2VyLnBob25lLCBjb3VudHJ5KTtcbiAgY29uc3QgdGVtcGxhdGVDb250ZW50OiBzdHJpbmcgPSBhcHBUZW1wbGF0ZShhcHAsIGNvbnRlbnQpO1xuXG4gIGNvbnN0IHR3aWxpbzogYW55ID0gdHdpbGlvU2RrKENvbmZpZy5nZXQoJ3R3aWxpby5zaWQnKSwgQ29uZmlnLmdldCgndHdpbGlvLnRva2VuJykpO1xuICBjb25zdCBjZmc6IFR3aWxpb09wdGlvbnNUeXBlID0ge1xuICAgIGJvZHk6IHRlbXBsYXRlQ29udGVudCxcbiAgICBmcm9tOiBDb25maWcuZ2V0KCd0d2lsaW8ubnVtYmVyJyksXG4gICAgdG86IHBob25lXG4gIH07XG5cbiAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICB0d2lsaW8uc2VuZE1lc3NhZ2UoY2ZnLCAoZXJyb3IsIGRhdGEpID0+IHtcbiAgICAgIGlmKGVycm9yKSB7XG4gICAgICAgIHJlamVjdChuZXcgRXJyb3IoZXJyb3IuZXJyb3JfbWVzc2FnZSkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmVzb2x2ZShkYXRhKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3Qgc2VuZFNtc1RlbXBsYXRlID0gKHRlbXBsYXRlTmFtZTogc3RyaW5nLCBzbXNQYXJhbXM6IFNNU1BhcmFtc1R5cGUpOiBQcm9taXNlPGJvb2xlYW4+ID0+
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FjdGlvbnMvc21zLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxOS1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuaW1wb3J0IHtwYXJzZVBob25lfSBmcm9tICdAbmxhYnMvdXRpbHMnO1xuaW1wb3J0IGZzIGZyb20gJ2ZzJztcbmltcG9ydCB0d2lsaW9TZGsgZnJvbSAndHdpbGlvJztcblxuaW1wb3J0IHtDb25maWd9IGZyb20gJy4uL2NvbmZpZyc7XG5pbXBvcnQge1NNU1BhcmFtc1R5cGUsIFR3aWxpb09wdGlvbnNUeXBlfSBmcm9tICcuLi90eXBlcy9ub3RpZmljYXRpb25zJztcbmltcG9ydCB7YXBwVGVtcGxhdGV9IGZyb20gJy4vZW1haWwnO1xuXG4vLyBjb25zdCBldmVudENhdGVnb3J5OiBzdHJpbmcgPSAnc21zJztcblxuLy8gVHdpbGlvXG5leHBvcnQgY29uc3Qgc2VuZFNtcyA9IChwYXJhbXM6IFNNU1BhcmFtc1R5cGUpOiBhbnkgPT4ge1xuICBjb25zdCB7XG4gICAgYXBwID0ge30sXG4gICAgY29udGVudCxcbiAgICB1c2VyID0ge31cbiAgfSA9IHBhcmFtcztcblxuICBjb25zdCBjb3VudHJ5ID0gdXNlci5jb3VudHJ5IHx8ICdVUyc7XG4gIGNvbnN0IHBob25lID0gcGFyc2VQaG9uZSh1c2VyLnBob25lLCBjb3VudHJ5KTtcbiAgY29uc3QgdGVtcGxhdGVDb250ZW50OiBzdHJpbmcgPSBhcHBUZW1wbGF0ZShhcHAsIGNvbnRlbnQpO1xuXG4gIGNvbnN0IHR3aWxpbzogYW55ID0gdHdpbGlvU2RrKENvbmZpZy5nZXQoJ3R3aWxpby5zaWQnKSwgQ29uZmlnLmdldCgndHdpbGlvLnRva2VuJykpO1xuICBjb25zdCBjZmc6IFR3aWxpb09wdGlvbnNUeXBlID0ge1xuICAgIGJvZHk6IHRlbXBsYXRlQ29udGVudCxcbiAgICBmcm9tOiBDb25maWcuZ2V0KCd0d2lsaW8ubnVtYmVyJyksXG4gICAgdG86IHBob25lXG4gIH07XG5cbiAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICB0d2lsaW8uc2VuZE1lc3NhZ2UoY2ZnLCAoZXJyb3IsIGRhdGEpID0+IHtcbiAgICAgIGlmKGVycm9yKSB7XG4gICAgICAgIHJlamVjdChuZXcgRXJyb3IoZXJyb3IuZXJyb3JfbWVzc2FnZSkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmVzb2x2ZShkYXRhKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3Qgc2VuZFNtc1RlbXBsYXRlID0gKHRlbXBsYXRlTmFtZTogc3RyaW5nLCBzbXNQYXJhbXM6IFNNU1BhcmFtc1R5cGUpOiBQcm9taXNlPGJvb2xlYW4+ID0+IHtcbiAgY29uc3Qge2FwcCwgdXNlciwgdmFyc30gPSBzbXNQYXJhbXM7XG4gIHRyeSB7XG4gICAgY29uc3QgZGF0YSA9IGZzLnJlYWRGaWxlU3luYyhgLi90ZW1wbGF0ZXMvc21zLyR7dGVtcGxhdGVOYW1lfS50eHRgLCAndXRmOCcpO1xuICAgIGNvbnN0IHRleHQgPSBhcHBUZW1wbGF0ZShhcHAsIGRhdGEsIHZhcnMpO1xuICAgIGNvbnN0IHBhcmFtcyA9IHthcHAsIHRleHQsIHVzZXJ9O1xuXG4gICAgcmV0dXJuIHNlbmRTbXMocGFyYW1zKVxuICAgICAgLnRoZW4oKHJlcykgPT4gcmVzLnN0YXR1cyA9PT0gJ3F1ZXVlZCcpXG4gICAgICAuY2F0Y2goKGVycm9yOiBFcnJvcikgPT4ge1xuICAgICAgICB0aHJvdyBlcnJvcjtcbiAgICAgIH0pO1xuICB9IGNhdGNoKGVycm9yKSB7XG4gICAgcmV0dXJuIFByb21pc2UucmVqZWN0KGVycm9yKTtcbiAgfVxufTtcbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlBLG1CQUF5QjtBQUN6QixnQkFBZTtBQUNmLG9CQUFzQjtBQUV0QixvQkFBcUI7QUFFckIsbUJBQTBCO0FBS25CLE1BQU0sVUFBVSxDQUFDLFdBQStCO0FBQ3JELFFBQU07QUFBQSxJQUNKLE1BQU0sQ0FBQztBQUFBLElBQ1A7QUFBQSxJQUNBLE9BQU8sQ0FBQztBQUFBLEVBQ1YsSUFBSTtBQUVKLFFBQU0sVUFBVSxLQUFLLFdBQVc7QUFDaEMsUUFBTSxZQUFRLHlCQUFXLEtBQUssT0FBTyxPQUFPO0FBQzVDLFFBQU0sc0JBQTBCLDBCQUFZLEtBQUssT0FBTztBQUV4RCxRQUFNLGFBQWMsY0FBQUEsU0FBVSxxQkFBTyxJQUFJLFlBQVksR0FBRyxxQkFBTyxJQUFJLGNBQWMsQ0FBQztBQUNsRixRQUFNLE1BQXlCO0FBQUEsSUFDN0IsTUFBTTtBQUFBLElBQ04sTUFBTSxxQkFBTyxJQUFJLGVBQWU7QUFBQSxJQUNoQyxJQUFJO0FBQUEsRUFDTjtBQUVBLFNBQU8sSUFBSSxRQUFRLENBQUMsU0FBUyxXQUFXO0FBQ3RDLFdBQU8sWUFBWSxLQUFLLENBQUMsT0FBTyxTQUFTO0FBQ3ZDLFVBQUcsT0FBTztBQUNSLGVBQU8sSUFBSSxNQUFNLE1BQU0sYUFBYSxDQUFDO0FBQUEsTUFDdkMsT0FBTztBQUNMLGdCQUFRLElBQUk7QUFBQSxNQUNkO0FBQUEsSUFDRixDQUFDO0FBQUEsRUFDSCxDQUFDO0FBQ0g7QUFFTyxNQUFNLGtCQUFrQixDQUFDLGNBQXNCLGNBQStDO0FBQ25HLFFBQU0sRUFBQyxLQUFLLE1BQU0sS0FBSSxJQUFJO0FBQzFCLE1BQUk7QUFDRixVQUFNLE9BQU8sVUFBQUMsUUFBRyxhQUFhLG1CQUFtQixZQUFZLFFBQVEsTUFBTTtBQUMxRSxVQUFNLFdBQU8sMEJBQVksS0FBSyxNQUFNLElBQUk7QUFDeEMsVUFBTSxTQUFTLEVBQUMsS0FBSyxNQUFNLEtBQUk7QUFFL0IsV0FBTyxRQUFRLE1BQU0sRUFDbEIsS0FBSyxDQUFDLFFBQVEsSUFBSSxXQUFXLFFBQVEsRUFDckMsTUFBTSxDQUFDLFVBQWlCO0FBQ3ZCLFlBQU07QUFBQSxJQUNSLENBQUM7QUFBQSxFQUNMLFNBQVEsT0FBTztBQUNiLFdBQU8sUUFBUSxPQUFPLEtBQUs7QUFBQSxFQUM3QjtBQUNGOyIsCiAgIm5hbWVzIjogWyJ0d2lsaW9TZGsiLCAiZnMiXQp9Cg==
|