@discordeno/bot 22.0.1-next.bd4e6f1 → 22.0.1-next.bd98b3e
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/bot.d.ts +1 -1
- package/dist/bot.d.ts.map +1 -1
- package/dist/bot.js +2 -2
- package/dist/desiredProperties.d.ts +5 -0
- package/dist/desiredProperties.d.ts.map +1 -1
- package/dist/desiredProperties.js +1 -1
- package/dist/helpers.d.ts +1 -0
- package/dist/helpers.d.ts.map +1 -1
- package/dist/helpers.js +4 -1
- package/dist/transformers/automodRule.d.ts.map +1 -1
- package/dist/transformers/automodRule.js +3 -2
- package/dist/transformers/component.d.ts.map +1 -1
- package/dist/transformers/component.js +20 -1
- package/dist/transformers/reverse/component.d.ts.map +1 -1
- package/dist/transformers/reverse/component.js +13 -1
- package/dist/transformers/role.d.ts.map +1 -1
- package/dist/transformers/role.js +2 -1
- package/dist/transformers/types.d.ts +68 -4
- package/dist/transformers/types.d.ts.map +1 -1
- package/dist/transformers/types.js +1 -1
- package/dist/transformers/user.d.ts.map +1 -1
- package/dist/transformers/user.js +20 -3
- package/dist/transformers.d.ts +1 -1
- package/dist/transformers.d.ts.map +1 -1
- package/dist/transformers.js +1 -1
- package/package.json +19 -21
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"automodRule.d.ts","sourceRoot":"","sources":["../../src/transformers/automodRule.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAA;AAClE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAEpD,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,yBAAyB,GAAG,kBAAkB,
|
|
1
|
+
{"version":3,"file":"automodRule.d.ts","sourceRoot":"","sources":["../../src/transformers/automodRule.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAA;AAClE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAEpD,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,yBAAyB,GAAG,kBAAkB,CAkC5G"}
|
|
@@ -14,7 +14,8 @@ export function transformAutoModerationRule(bot, payload) {
|
|
|
14
14
|
regexPatterns: payload.trigger_metadata.regex_patterns,
|
|
15
15
|
presets: payload.trigger_metadata.presets,
|
|
16
16
|
allowList: payload.trigger_metadata.allow_list,
|
|
17
|
-
mentionTotalLimit: payload.trigger_metadata.mention_total_limit
|
|
17
|
+
mentionTotalLimit: payload.trigger_metadata.mention_total_limit,
|
|
18
|
+
mentionRaidProtectionEnabled: payload.trigger_metadata.mention_raid_protection_enabled
|
|
18
19
|
} : undefined,
|
|
19
20
|
actions: payload.actions.map((action)=>({
|
|
20
21
|
type: action.type,
|
|
@@ -28,4 +29,4 @@ export function transformAutoModerationRule(bot, payload) {
|
|
|
28
29
|
return bot.transformers.customizers.automodRule(bot, payload, rule);
|
|
29
30
|
}
|
|
30
31
|
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvYXV0b21vZFJ1bGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBEaXNjb3JkQXV0b01vZGVyYXRpb25SdWxlIH0gZnJvbSAnQGRpc2NvcmRlbm8vdHlwZXMnXG5pbXBvcnQgdHlwZSB7IEJvdCB9IGZyb20gJy4uL2JvdC5qcydcbmltcG9ydCB0eXBlIHsgQXV0b01vZGVyYXRpb25SdWxlIH0gZnJvbSAnLi90eXBlcy5qcydcblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUF1dG9Nb2RlcmF0aW9uUnVsZShib3Q6IEJvdCwgcGF5bG9hZDogRGlzY29yZEF1dG9Nb2RlcmF0aW9uUnVsZSk6IEF1dG9Nb2RlcmF0aW9uUnVsZSB7XG4gIGNvbnN0IHJ1bGUgPSB7XG4gICAgbmFtZTogcGF5bG9hZC5uYW1lLFxuICAgIGV2ZW50VHlwZTogcGF5bG9hZC5ldmVudF90eXBlLFxuICAgIHRyaWdnZXJUeXBlOiBwYXlsb2FkLnRyaWdnZXJfdHlwZSxcbiAgICBlbmFibGVkOiBwYXlsb2FkLmVuYWJsZWQsXG4gICAgaWQ6IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuaWQpLFxuICAgIGd1aWxkSWQ6IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuZ3VpbGRfaWQpLFxuICAgIGNyZWF0b3JJZDogYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5jcmVhdG9yX2lkKSxcbiAgICBleGVtcHRSb2xlczogcGF5bG9hZC5leGVtcHRfcm9sZXMubWFwKChpZCkgPT4gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UoaWQpKSxcbiAgICBleGVtcHRDaGFubmVsczogcGF5bG9hZC5leGVtcHRfY2hhbm5lbHMubWFwKChpZCkgPT4gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UoaWQpKSxcbiAgICB0cmlnZ2VyTWV0YWRhdGE6IHBheWxvYWQudHJpZ2dlcl9tZXRhZGF0YVxuICAgICAgPyB7XG4gICAgICAgICAga2V5d29yZEZpbHRlcjogcGF5bG9hZC50cmlnZ2VyX21ldGFkYXRhLmtleXdvcmRfZmlsdGVyLFxuICAgICAgICAgIHJlZ2V4UGF0dGVybnM6IHBheWxvYWQudHJpZ2dlcl9tZXRhZGF0YS5yZWdleF9wYXR0ZXJucyxcbiAgICAgICAgICBwcmVzZXRzOiBwYXlsb2FkLnRyaWdnZXJfbWV0YWRhdGEucHJlc2V0cyxcbiAgICAgICAgICBhbGxvd0xpc3Q6IHBheWxvYWQudHJpZ2dlcl9tZXRhZGF0YS5hbGxvd19saXN0LFxuICAgICAgICAgIG1lbnRpb25Ub3RhbExpbWl0OiBwYXlsb2FkLnRyaWdnZXJfbWV0YWRhdGEubWVudGlvbl90b3RhbF9saW1pdCxcbiAgICAgICAgICBtZW50aW9uUmFpZFByb3RlY3Rpb25FbmFibGVkOiBwYXlsb2FkLnRyaWdnZXJfbWV0YWRhdGEubWVudGlvbl9yYWlkX3Byb3RlY3Rpb25fZW5hYmxlZCxcbiAgICAgICAgfVxuICAgICAgOiB1bmRlZmluZWQsXG4gICAgYWN0aW9uczogcGF5bG9hZC5hY3Rpb25zLm1hcCgoYWN0aW9uKSA9PiAoe1xuICAgICAgdHlwZTogYWN0aW9uLnR5cGUsXG4gICAgICBtZXRhZGF0YTogYWN0aW9uLm1ldGFkYXRhXG4gICAgICAgID8ge1xuICAgICAgICAgICAgY2hhbm5lbElkOiBhY3Rpb24ubWV0YWRhdGEuY2hhbm5lbF9pZCA/IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKGFjdGlvbi5tZXRhZGF0YS5jaGFubmVsX2lkKSA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIGN1c3RvbU1lc3NhZ2U6IGFjdGlvbi5tZXRhZGF0YS5jdXN0b21fbWVzc2FnZSxcbiAgICAgICAgICAgIGR1cmF0aW9uU2Vjb25kczogYWN0aW9uLm1ldGFkYXRhLmR1cmF0aW9uX3NlY29uZHMsXG4gICAgICAgICAgfVxuICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICB9KSksXG4gIH0gYXMgQXV0b01vZGVyYXRpb25SdWxlXG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMuYXV0b21vZFJ1bGUoYm90LCBwYXlsb2FkLCBydWxlKVxufVxuIl0sIm5hbWVzIjpbInRyYW5zZm9ybUF1dG9Nb2RlcmF0aW9uUnVsZSIsImJvdCIsInBheWxvYWQiLCJydWxlIiwibmFtZSIsImV2ZW50VHlwZSIsImV2ZW50X3R5cGUiLCJ0cmlnZ2VyVHlwZSIsInRyaWdnZXJfdHlwZSIsImVuYWJsZWQiLCJpZCIsInRyYW5zZm9ybWVycyIsInNub3dmbGFrZSIsImd1aWxkSWQiLCJndWlsZF9pZCIsImNyZWF0b3JJZCIsImNyZWF0b3JfaWQiLCJleGVtcHRSb2xlcyIsImV4ZW1wdF9yb2xlcyIsIm1hcCIsImV4ZW1wdENoYW5uZWxzIiwiZXhlbXB0X2NoYW5uZWxzIiwidHJpZ2dlck1ldGFkYXRhIiwidHJpZ2dlcl9tZXRhZGF0YSIsImtleXdvcmRGaWx0ZXIiLCJrZXl3b3JkX2ZpbHRlciIsInJlZ2V4UGF0dGVybnMiLCJyZWdleF9wYXR0ZXJucyIsInByZXNldHMiLCJhbGxvd0xpc3QiLCJhbGxvd19saXN0IiwibWVudGlvblRvdGFsTGltaXQiLCJtZW50aW9uX3RvdGFsX2xpbWl0IiwibWVudGlvblJhaWRQcm90ZWN0aW9uRW5hYmxlZCIsIm1lbnRpb25fcmFpZF9wcm90ZWN0aW9uX2VuYWJsZWQiLCJ1bmRlZmluZWQiLCJhY3Rpb25zIiwiYWN0aW9uIiwidHlwZSIsIm1ldGFkYXRhIiwiY2hhbm5lbElkIiwiY2hhbm5lbF9pZCIsImN1c3RvbU1lc3NhZ2UiLCJjdXN0b21fbWVzc2FnZSIsImR1cmF0aW9uU2Vjb25kcyIsImR1cmF0aW9uX3NlY29uZHMiLCJjdXN0b21pemVycyIsImF1dG9tb2RSdWxlIl0sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLFNBQVNBLDRCQUE0QkMsR0FBUSxFQUFFQyxPQUFrQztJQUN0RixNQUFNQyxPQUFPO1FBQ1hDLE1BQU1GLFFBQVFFLElBQUk7UUFDbEJDLFdBQVdILFFBQVFJLFVBQVU7UUFDN0JDLGFBQWFMLFFBQVFNLFlBQVk7UUFDakNDLFNBQVNQLFFBQVFPLE9BQU87UUFDeEJDLElBQUlULElBQUlVLFlBQVksQ0FBQ0MsU0FBUyxDQUFDVixRQUFRUSxFQUFFO1FBQ3pDRyxTQUFTWixJQUFJVSxZQUFZLENBQUNDLFNBQVMsQ0FBQ1YsUUFBUVksUUFBUTtRQUNwREMsV0FBV2QsSUFBSVUsWUFBWSxDQUFDQyxTQUFTLENBQUNWLFFBQVFjLFVBQVU7UUFDeERDLGFBQWFmLFFBQVFnQixZQUFZLENBQUNDLEdBQUcsQ0FBQyxDQUFDVCxLQUFPVCxJQUFJVSxZQUFZLENBQUNDLFNBQVMsQ0FBQ0Y7UUFDekVVLGdCQUFnQmxCLFFBQVFtQixlQUFlLENBQUNGLEdBQUcsQ0FBQyxDQUFDVCxLQUFPVCxJQUFJVSxZQUFZLENBQUNDLFNBQVMsQ0FBQ0Y7UUFDL0VZLGlCQUFpQnBCLFFBQVFxQixnQkFBZ0IsR0FDckM7WUFDRUMsZUFBZXRCLFFBQVFxQixnQkFBZ0IsQ0FBQ0UsY0FBYztZQUN0REMsZUFBZXhCLFFBQVFxQixnQkFBZ0IsQ0FBQ0ksY0FBYztZQUN0REMsU0FBUzFCLFFBQVFxQixnQkFBZ0IsQ0FBQ0ssT0FBTztZQUN6Q0MsV0FBVzNCLFFBQVFxQixnQkFBZ0IsQ0FBQ08sVUFBVTtZQUM5Q0MsbUJBQW1CN0IsUUFBUXFCLGdCQUFnQixDQUFDUyxtQkFBbUI7WUFDL0RDLDhCQUE4Qi9CLFFBQVFxQixnQkFBZ0IsQ0FBQ1csK0JBQStCO1FBQ3hGLElBQ0FDO1FBQ0pDLFNBQVNsQyxRQUFRa0MsT0FBTyxDQUFDakIsR0FBRyxDQUFDLENBQUNrQixTQUFZLENBQUE7Z0JBQ3hDQyxNQUFNRCxPQUFPQyxJQUFJO2dCQUNqQkMsVUFBVUYsT0FBT0UsUUFBUSxHQUNyQjtvQkFDRUMsV0FBV0gsT0FBT0UsUUFBUSxDQUFDRSxVQUFVLEdBQUd4QyxJQUFJVSxZQUFZLENBQUNDLFNBQVMsQ0FBQ3lCLE9BQU9FLFFBQVEsQ0FBQ0UsVUFBVSxJQUFJTjtvQkFDakdPLGVBQWVMLE9BQU9FLFFBQVEsQ0FBQ0ksY0FBYztvQkFDN0NDLGlCQUFpQlAsT0FBT0UsUUFBUSxDQUFDTSxnQkFBZ0I7Z0JBQ25ELElBQ0FWO1lBQ04sQ0FBQTtJQUNGO0lBRUEsT0FBT2xDLElBQUlVLFlBQVksQ0FBQ21DLFdBQVcsQ0FBQ0MsV0FBVyxDQUFDOUMsS0FBS0MsU0FBU0M7QUFDaEUifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../src/transformers/component.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../src/transformers/component.ts"],"names":[],"mappings":"AAAA,OAAO,EAUL,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,mDAAmD,EAUxD,KAAK,wBAAwB,EAE9B,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAEhF,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,uBAAuB,GAAG,mDAAmD,GAAG,SAAS,CAmD9I;AAED,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,wBAAwB,GAAG,iBAAiB,CAYzG;AAED,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,uBAAuB,GAAG,gBAAgB,CAStG"}
|
|
@@ -43,6 +43,9 @@ export function transformComponent(bot, payload) {
|
|
|
43
43
|
case MessageComponentTypes.Label:
|
|
44
44
|
component = transformLabelComponent(bot, payload);
|
|
45
45
|
break;
|
|
46
|
+
case MessageComponentTypes.FileUpload:
|
|
47
|
+
component = transformFileUploadComponent(bot, payload);
|
|
48
|
+
break;
|
|
46
49
|
}
|
|
47
50
|
return bot.transformers.customizers.component(bot, payload, component);
|
|
48
51
|
}
|
|
@@ -219,5 +222,21 @@ function transformLabelComponent(bot, payload) {
|
|
|
219
222
|
if (props.component && payload.component) label.component = bot.transformers.component(bot, payload.component);
|
|
220
223
|
return label;
|
|
221
224
|
}
|
|
225
|
+
function transformFileUploadComponent(bot, payload) {
|
|
226
|
+
const props = bot.transformers.desiredProperties.component;
|
|
227
|
+
const fileUpload = {};
|
|
228
|
+
if (props.type && payload.type) fileUpload.type = payload.type;
|
|
229
|
+
if (props.id && payload.id) fileUpload.id = payload.id;
|
|
230
|
+
if (props.customId && payload.custom_id) fileUpload.customId = payload.custom_id;
|
|
231
|
+
// Check that this is a response
|
|
232
|
+
if ('values' in payload) {
|
|
233
|
+
if (props.values && payload.values) fileUpload.values = payload.values;
|
|
234
|
+
} else {
|
|
235
|
+
if (props.minValues && payload.min_values) fileUpload.minValues = payload.min_values;
|
|
236
|
+
if (props.maxValues && payload.max_values) fileUpload.maxValues = payload.max_values;
|
|
237
|
+
if (props.required && payload.required) fileUpload.required = payload.required;
|
|
238
|
+
}
|
|
239
|
+
return fileUpload;
|
|
240
|
+
}
|
|
222
241
|
|
|
223
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIHR5cGUgRGlzY29yZEFjdGlvblJvdyxcbiAgdHlwZSBEaXNjb3JkQnV0dG9uQ29tcG9uZW50LFxuICB0eXBlIERpc2NvcmRDb250YWluZXJDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZEZpbGVDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZExhYmVsQ29tcG9uZW50LFxuICB0eXBlIERpc2NvcmRMYWJlbEludGVyYWN0aW9uUmVzcG9uc2UsXG4gIHR5cGUgRGlzY29yZE1lZGlhR2FsbGVyeUNvbXBvbmVudCxcbiAgdHlwZSBEaXNjb3JkTWVkaWFHYWxsZXJ5SXRlbSxcbiAgdHlwZSBEaXNjb3JkTWVzc2FnZUNvbXBvbmVudCxcbiAgdHlwZSBEaXNjb3JkTWVzc2FnZUNvbXBvbmVudEZyb21Nb2RhbEludGVyYWN0aW9uUmVzcG9uc2UsXG4gIHR5cGUgRGlzY29yZFNlY3Rpb25Db21wb25lbnQsXG4gIHR5cGUgRGlzY29yZFNlbGVjdE1lbnVDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZFNlcGFyYXRvckNvbXBvbmVudCxcbiAgdHlwZSBEaXNjb3JkU3RyaW5nU2VsZWN0SW50ZXJhY3Rpb25SZXNwb25zZUZyb21Nb2RhbCxcbiAgdHlwZSBEaXNjb3JkVGV4dERpc3BsYXlDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZFRleHREaXNwbGF5SW50ZXJhY3Rpb25SZXNwb25zZSxcbiAgdHlwZSBEaXNjb3JkVGV4dElucHV0Q29tcG9uZW50LFxuICB0eXBlIERpc2NvcmRUZXh0SW5wdXRJbnRlcmFjdGlvblJlc3BvbnNlLFxuICB0eXBlIERpc2NvcmRUaHVtYm5haWxDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZFVuZnVybGVkTWVkaWFJdGVtLFxuICBNZXNzYWdlQ29tcG9uZW50VHlwZXMsXG59IGZyb20gJ0BkaXNjb3JkZW5vL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBCb3QgfSBmcm9tICcuLi9ib3QuanMnXG5pbXBvcnQgdHlwZSB7IENvbXBvbmVudCwgTWVkaWFHYWxsZXJ5SXRlbSwgVW5mdXJsZWRNZWRpYUl0ZW0gfSBmcm9tICcuL3R5cGVzLmpzJ1xuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtQ29tcG9uZW50KGJvdDogQm90LCBwYXlsb2FkOiBEaXNjb3JkTWVzc2FnZUNvbXBvbmVudCB8IERpc2NvcmRNZXNzYWdlQ29tcG9uZW50RnJvbU1vZGFsSW50ZXJhY3Rpb25SZXNwb25zZSk6IENvbXBvbmVudCB7XG4gIGxldCBjb21wb25lbnQ6IENvbXBvbmVudFxuXG4gIC8vIFRoaXMgc3dpdGNoIGlzIGV4aGF1c3RpdmUsIHNvIHdlIGRvbnQgbmVlZCB0aGUgZGVmYXVsdCBjYXNlIGFuZCBUUyBkb2VzIG5vdCBlcnJvciBvdXQgZm9yIHRoZSB1bi1pbml0aWFsaXplZCBjb21wb25lbnQgdmFyaWFibGVcbiAgc3dpdGNoIChwYXlsb2FkLnR5cGUpIHtcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5BY3Rpb25Sb3c6XG4gICAgICBjb21wb25lbnQgPSB0cmFuc2Zvcm1BY3Rpb25Sb3coYm90LCBwYXlsb2FkKVxuICAgICAgYnJlYWtcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5CdXR0b246XG4gICAgICBjb21wb25lbnQgPSB0cmFuc2Zvcm1CdXR0b25Db21wb25lbnQoYm90LCBwYXlsb2FkKVxuICAgICAgYnJlYWtcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5Db250YWluZXI6XG4gICAgICBjb21wb25lbnQgPSB0cmFuc2Zvcm1Db250YWluZXJDb21wb25lbnQoYm90LCBwYXlsb2FkKVxuICAgICAgYnJlYWtcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5UZXh0SW5wdXQ6XG4gICAgICBjb21wb25lbnQgPSB0cmFuc2Zvcm1JbnB1dFRleHRDb21wb25lbnQoYm90LCBwYXlsb2FkKVxuICAgICAgYnJlYWtcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5TdHJpbmdTZWxlY3Q6XG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuVXNlclNlbGVjdDpcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5Sb2xlU2VsZWN0OlxuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLk1lbnRpb25hYmxlU2VsZWN0OlxuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLkNoYW5uZWxTZWxlY3Q6XG4gICAgICBjb21wb25lbnQgPSB0cmFuc2Zvcm1TZWxlY3RNZW51Q29tcG9uZW50KGJvdCwgcGF5bG9hZClcbiAgICAgIGJyZWFrXG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuU2VjdGlvbjpcbiAgICAgIGNvbXBvbmVudCA9IHRyYW5zZm9ybVNlY3Rpb25Db21wb25lbnQoYm90LCBwYXlsb2FkKVxuICAgICAgYnJlYWtcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5UaHVtYm5haWw6XG4gICAgICBjb21wb25lbnQgPSB0cmFuc2Zvcm1UaHVtYm5haWxDb21wb25lbnQoYm90LCBwYXlsb2FkKVxuICAgICAgYnJlYWtcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5NZWRpYUdhbGxlcnk6XG4gICAgICBjb21wb25lbnQgPSB0cmFuc2Zvcm1NZWRpYUdhbGxlcnlDb21wb25lbnQoYm90LCBwYXlsb2FkKVxuICAgICAgYnJlYWtcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5GaWxlOlxuICAgICAgY29tcG9uZW50ID0gdHJhbnNmb3JtRmlsZUNvbXBvbmVudChib3QsIHBheWxvYWQpXG4gICAgICBicmVha1xuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLlNlcGFyYXRvcjpcbiAgICAgIGNvbXBvbmVudCA9IHRyYW5zZm9ybVNlcGFyYXRvckNvbXBvbmVudChib3QsIHBheWxvYWQpXG4gICAgICBicmVha1xuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLlRleHREaXNwbGF5OlxuICAgICAgY29tcG9uZW50ID0gdHJhbnNmb3JtVGV4dERpc3BsYXlDb21wb25lbnQoYm90LCBwYXlsb2FkKVxuICAgICAgYnJlYWtcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5MYWJlbDpcbiAgICAgIGNvbXBvbmVudCA9IHRyYW5zZm9ybUxhYmVsQ29tcG9uZW50KGJvdCwgcGF5bG9hZClcbiAgICAgIGJyZWFrXG4gIH1cblxuICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jdXN0b21pemVycy5jb21wb25lbnQoYm90LCBwYXlsb2FkLCBjb21wb25lbnQpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm1VbmZ1cmxlZE1lZGlhSXRlbShib3Q6IEJvdCwgcGF5bG9hZDogRGlzY29yZFVuZnVybGVkTWVkaWFJdGVtKTogVW5mdXJsZWRNZWRpYUl0ZW0ge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMudW5mdXJsZWRNZWRpYUl0ZW1cbiAgY29uc3QgbWVkaWFJdGVtID0ge30gYXMgVW5mdXJsZWRNZWRpYUl0ZW1cblxuICBpZiAocHJvcHMudXJsICYmIHBheWxvYWQudXJsKSBtZWRpYUl0ZW0udXJsID0gcGF5bG9hZC51cmxcbiAgaWYgKHByb3BzLnByb3h5VXJsICYmIHBheWxvYWQucHJveHlfdXJsKSBtZWRpYUl0ZW0ucHJveHlVcmwgPSBwYXlsb2FkLnByb3h5X3VybFxuICBpZiAocHJvcHMuaGVpZ2h0ICYmIHBheWxvYWQuaGVpZ2h0KSBtZWRpYUl0ZW0uaGVpZ2h0ID0gcGF5bG9hZC5oZWlnaHRcbiAgaWYgKHByb3BzLndpZHRoICYmIHBheWxvYWQud2lkdGgpIG1lZGlhSXRlbS53aWR0aCA9IHBheWxvYWQud2lkdGhcbiAgaWYgKHByb3BzLmNvbnRlbnRUeXBlICYmIHBheWxvYWQuY29udGVudF90eXBlKSBtZWRpYUl0ZW0uY29udGVudFR5cGUgPSBwYXlsb2FkLmNvbnRlbnRfdHlwZVxuICBpZiAocHJvcHMuYXR0YWNobWVudElkICYmIHBheWxvYWQuYXR0YWNobWVudF9pZCkgbWVkaWFJdGVtLmF0dGFjaG1lbnRJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuYXR0YWNobWVudF9pZClcblxuICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jdXN0b21pemVycy51bmZ1cmxlZE1lZGlhSXRlbShib3QsIHBheWxvYWQsIG1lZGlhSXRlbSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybU1lZGlhR2FsbGVyeUl0ZW0oYm90OiBCb3QsIHBheWxvYWQ6IERpc2NvcmRNZWRpYUdhbGxlcnlJdGVtKTogTWVkaWFHYWxsZXJ5SXRlbSB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5tZWRpYUdhbGxlcnlJdGVtXG4gIGNvbnN0IGdhbGxlcnlJdGVtID0ge30gYXMgTWVkaWFHYWxsZXJ5SXRlbVxuXG4gIGlmIChwcm9wcy5tZWRpYSAmJiBwYXlsb2FkLm1lZGlhKSBnYWxsZXJ5SXRlbS5tZWRpYSA9IGJvdC50cmFuc2Zvcm1lcnMudW5mdXJsZWRNZWRpYUl0ZW0oYm90LCBwYXlsb2FkLm1lZGlhKVxuICBpZiAocHJvcHMuZGVzY3JpcHRpb24gJiYgcGF5bG9hZC5kZXNjcmlwdGlvbikgZ2FsbGVyeUl0ZW0uZGVzY3JpcHRpb24gPSBwYXlsb2FkLmRlc2NyaXB0aW9uXG4gIGlmIChwcm9wcy5zcG9pbGVyICYmIHBheWxvYWQuc3BvaWxlcikgZ2FsbGVyeUl0ZW0uc3BvaWxlciA9IHBheWxvYWQuc3BvaWxlclxuXG4gIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmN1c3RvbWl6ZXJzLm1lZGlhR2FsbGVyeUl0ZW0oYm90LCBwYXlsb2FkLCBnYWxsZXJ5SXRlbSlcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtQWN0aW9uUm93KGJvdDogQm90LCBwYXlsb2FkOiBEaXNjb3JkQWN0aW9uUm93KTogQ29tcG9uZW50IHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmNvbXBvbmVudFxuICBjb25zdCBhY3Rpb25Sb3cgPSB7fSBhcyBDb21wb25lbnRcblxuICBpZiAocHJvcHMudHlwZSAmJiBwYXlsb2FkLnR5cGUpIGFjdGlvblJvdy50eXBlID0gcGF5bG9hZC50eXBlXG4gIGlmIChwcm9wcy5pZCAmJiBwYXlsb2FkLmlkKSBhY3Rpb25Sb3cuaWQgPSBwYXlsb2FkLmlkXG4gIGlmIChwcm9wcy5jb21wb25lbnRzICYmIHBheWxvYWQuY29tcG9uZW50cykgYWN0aW9uUm93LmNvbXBvbmVudHMgPSBwYXlsb2FkLmNvbXBvbmVudHMubWFwKChjb21wb25lbnQpID0+IGJvdC50cmFuc2Zvcm1lcnMuY29tcG9uZW50KGJvdCwgY29tcG9uZW50KSlcblxuICByZXR1cm4gYWN0aW9uUm93XG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybUNvbnRhaW5lckNvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogRGlzY29yZENvbnRhaW5lckNvbXBvbmVudCk6IENvbXBvbmVudCB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5jb21wb25lbnRcbiAgY29uc3QgY29udGFpbmVyID0ge30gYXMgQ29tcG9uZW50XG5cbiAgaWYgKHByb3BzLnR5cGUgJiYgcGF5bG9hZC50eXBlKSBjb250YWluZXIudHlwZSA9IHBheWxvYWQudHlwZVxuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgY29udGFpbmVyLmlkID0gcGF5bG9hZC5pZFxuICBpZiAocHJvcHMuYWNjZW50Q29sb3IgJiYgcGF5bG9hZC5hY2NlbnRfY29sb3IpIGNvbnRhaW5lci5hY2NlbnRDb2xvciA9IHBheWxvYWQuYWNjZW50X2NvbG9yXG4gIGlmIChwcm9wcy5zcG9pbGVyICYmIHBheWxvYWQuc3BvaWxlcikgY29udGFpbmVyLnNwb2lsZXIgPSBwYXlsb2FkLnNwb2lsZXJcbiAgaWYgKHByb3BzLmNvbXBvbmVudHMgJiYgcGF5bG9hZC5jb21wb25lbnRzKSBjb250YWluZXIuY29tcG9uZW50cyA9IHBheWxvYWQuY29tcG9uZW50cy5tYXAoKGNvbXBvbmVudCkgPT4gYm90LnRyYW5zZm9ybWVycy5jb21wb25lbnQoYm90LCBjb21wb25lbnQpKVxuXG4gIHJldHVybiBjb250YWluZXJcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtQnV0dG9uQ29tcG9uZW50KGJvdDogQm90LCBwYXlsb2FkOiBEaXNjb3JkQnV0dG9uQ29tcG9uZW50KTogQ29tcG9uZW50IHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmNvbXBvbmVudFxuICBjb25zdCBidXR0b24gPSB7fSBhcyBDb21wb25lbnRcblxuICBpZiAocHJvcHMudHlwZSAmJiBwYXlsb2FkLnR5cGUpIGJ1dHRvbi50eXBlID0gcGF5bG9hZC50eXBlXG4gIGlmIChwcm9wcy5pZCAmJiBwYXlsb2FkLmlkKSBidXR0b24uaWQgPSBwYXlsb2FkLmlkXG4gIGlmIChwcm9wcy5sYWJlbCAmJiBwYXlsb2FkLmxhYmVsKSBidXR0b24ubGFiZWwgPSBwYXlsb2FkLmxhYmVsXG4gIGlmIChwcm9wcy5jdXN0b21JZCAmJiBwYXlsb2FkLmN1c3RvbV9pZCkgYnV0dG9uLmN1c3RvbUlkID0gcGF5bG9hZC5jdXN0b21faWRcbiAgaWYgKHByb3BzLnN0eWxlICYmIHBheWxvYWQuc3R5bGUpIGJ1dHRvbi5zdHlsZSA9IHBheWxvYWQuc3R5bGVcbiAgaWYgKHByb3BzLmVtb2ppICYmIHBheWxvYWQuZW1vamkpIGJ1dHRvbi5lbW9qaSA9IGJvdC50cmFuc2Zvcm1lcnMuZW1vamkoYm90LCBwYXlsb2FkLmVtb2ppKVxuICBpZiAocHJvcHMudXJsICYmIHBheWxvYWQudXJsKSBidXR0b24udXJsID0gcGF5bG9hZC51cmxcbiAgaWYgKHByb3BzLmRpc2FibGVkICYmIHBheWxvYWQuZGlzYWJsZWQpIGJ1dHRvbi5kaXNhYmxlZCA9IHBheWxvYWQuZGlzYWJsZWRcbiAgaWYgKHByb3BzLnNrdUlkICYmIHBheWxvYWQuc2t1X2lkKSBidXR0b24uc2t1SWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLnNrdV9pZClcblxuICByZXR1cm4gYnV0dG9uXG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybUlucHV0VGV4dENvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogRGlzY29yZFRleHRJbnB1dENvbXBvbmVudCB8IERpc2NvcmRUZXh0SW5wdXRJbnRlcmFjdGlvblJlc3BvbnNlKTogQ29tcG9uZW50IHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmNvbXBvbmVudFxuICBjb25zdCBpbnB1dCA9IHt9IGFzIENvbXBvbmVudFxuXG4gIGlmIChwcm9wcy50eXBlICYmIHBheWxvYWQudHlwZSkgaW5wdXQudHlwZSA9IHBheWxvYWQudHlwZVxuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgaW5wdXQuaWQgPSBwYXlsb2FkLmlkXG4gIGlmIChwcm9wcy52YWx1ZSAmJiBwYXlsb2FkLnZhbHVlKSBpbnB1dC52YWx1ZSA9IHBheWxvYWQudmFsdWVcbiAgaWYgKHByb3BzLmN1c3RvbUlkICYmIHBheWxvYWQuY3VzdG9tX2lkKSBpbnB1dC5jdXN0b21JZCA9IHBheWxvYWQuY3VzdG9tX2lkXG5cbiAgLy8gQ2hlY2sgaWYgaXQgaXMgdGhlIGNvbXBvbmVudCBvciB0aGUgcmVzcG9uc2VcbiAgaWYgKCdzdHlsZScgaW4gcGF5bG9hZCkge1xuICAgIGlmIChwcm9wcy5zdHlsZSAmJiBwYXlsb2FkLnN0eWxlKSBpbnB1dC5zdHlsZSA9IHBheWxvYWQuc3R5bGVcbiAgICBpZiAocHJvcHMucmVxdWlyZWQgJiYgcGF5bG9hZC5yZXF1aXJlZCkgaW5wdXQucmVxdWlyZWQgPSBwYXlsb2FkLnJlcXVpcmVkXG4gICAgaWYgKHByb3BzLmxhYmVsICYmIHBheWxvYWQubGFiZWwpIGlucHV0LmxhYmVsID0gcGF5bG9hZC5sYWJlbFxuICAgIGlmIChwcm9wcy5wbGFjZWhvbGRlciAmJiBwYXlsb2FkLnBsYWNlaG9sZGVyKSBpbnB1dC5wbGFjZWhvbGRlciA9IHBheWxvYWQucGxhY2Vob2xkZXJcbiAgICBpZiAocHJvcHMubWluTGVuZ3RoICYmIHBheWxvYWQubWluX2xlbmd0aCkgaW5wdXQubWluTGVuZ3RoID0gcGF5bG9hZC5taW5fbGVuZ3RoXG4gICAgaWYgKHByb3BzLm1heExlbmd0aCAmJiBwYXlsb2FkLm1heF9sZW5ndGgpIGlucHV0Lm1heExlbmd0aCA9IHBheWxvYWQubWF4X2xlbmd0aFxuICB9XG5cbiAgcmV0dXJuIGlucHV0XG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybVNlbGVjdE1lbnVDb21wb25lbnQoYm90OiBCb3QsIHBheWxvYWQ6IERpc2NvcmRTZWxlY3RNZW51Q29tcG9uZW50IHwgRGlzY29yZFN0cmluZ1NlbGVjdEludGVyYWN0aW9uUmVzcG9uc2VGcm9tTW9kYWwpOiBDb21wb25lbnQge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMuY29tcG9uZW50XG4gIGNvbnN0IHNlbGVjdCA9IHt9IGFzIENvbXBvbmVudFxuXG4gIGlmIChwcm9wcy50eXBlICYmIHBheWxvYWQudHlwZSkgc2VsZWN0LnR5cGUgPSBwYXlsb2FkLnR5cGVcbiAgaWYgKHByb3BzLmlkICYmIHBheWxvYWQuaWQpIHNlbGVjdC5pZCA9IHBheWxvYWQuaWRcbiAgaWYgKHByb3BzLmN1c3RvbUlkICYmIHBheWxvYWQuY3VzdG9tX2lkKSBzZWxlY3QuY3VzdG9tSWQgPSBwYXlsb2FkLmN1c3RvbV9pZFxuXG4gIC8vIENoZWNrIGlmIHRoaXMgaXMgdGhlIHN0cmluZyBzZWxlY3QgcmVzcG9uc2VcbiAgaWYgKCd2YWx1ZXMnIGluIHBheWxvYWQpIHtcbiAgICBpZiAocHJvcHMudmFsdWVzICYmIHBheWxvYWQudmFsdWVzKSBzZWxlY3QudmFsdWVzID0gcGF5bG9hZC52YWx1ZXNcbiAgfSBlbHNlIHtcbiAgICBpZiAocHJvcHMucGxhY2Vob2xkZXIgJiYgcGF5bG9hZC5wbGFjZWhvbGRlcikgc2VsZWN0LnBsYWNlaG9sZGVyID0gcGF5bG9hZC5wbGFjZWhvbGRlclxuICAgIGlmIChwcm9wcy5taW5WYWx1ZXMgJiYgcGF5bG9hZC5taW5fdmFsdWVzKSBzZWxlY3QubWluVmFsdWVzID0gcGF5bG9hZC5taW5fdmFsdWVzXG4gICAgaWYgKHByb3BzLm1heFZhbHVlcyAmJiBwYXlsb2FkLm1heF92YWx1ZXMpIHNlbGVjdC5tYXhWYWx1ZXMgPSBwYXlsb2FkLm1heF92YWx1ZXNcbiAgICBpZiAocHJvcHMuZGVmYXVsdFZhbHVlcyAmJiBwYXlsb2FkLmRlZmF1bHRfdmFsdWVzKVxuICAgICAgc2VsZWN0LmRlZmF1bHRWYWx1ZXMgPSBwYXlsb2FkLmRlZmF1bHRfdmFsdWVzLm1hcCgoZGVmYXVsdFZhbHVlKSA9PiAoe1xuICAgICAgICBpZDogYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UoZGVmYXVsdFZhbHVlLmlkKSxcbiAgICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLnR5cGUsXG4gICAgICB9KSlcbiAgICBpZiAocHJvcHMuY2hhbm5lbFR5cGVzICYmIHBheWxvYWQuY2hhbm5lbF90eXBlcykgc2VsZWN0LmNoYW5uZWxUeXBlcyA9IHBheWxvYWQuY2hhbm5lbF90eXBlc1xuICAgIGlmIChwcm9wcy5vcHRpb25zICYmIHBheWxvYWQub3B0aW9ucylcbiAgICAgIHNlbGVjdC5vcHRpb25zID0gcGF5bG9hZC5vcHRpb25zLm1hcCgob3B0aW9uKSA9PiAoe1xuICAgICAgICBsYWJlbDogb3B0aW9uLmxhYmVsLFxuICAgICAgICB2YWx1ZTogb3B0aW9uLnZhbHVlLFxuICAgICAgICBkZXNjcmlwdGlvbjogb3B0aW9uLmRlc2NyaXB0aW9uLFxuICAgICAgICBlbW9qaTogb3B0aW9uLmVtb2ppXG4gICAgICAgICAgPyB7XG4gICAgICAgICAgICAgIGlkOiBvcHRpb24uZW1vamkuaWQgPyBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShvcHRpb24uZW1vamkuaWQpIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICBuYW1lOiBvcHRpb24uZW1vamkubmFtZSA/PyB1bmRlZmluZWQsXG4gICAgICAgICAgICAgIGFuaW1hdGVkOiBvcHRpb24uZW1vamkuYW5pbWF0ZWQsXG4gICAgICAgICAgICB9XG4gICAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgICAgIGRlZmF1bHQ6IG9wdGlvbi5kZWZhdWx0LFxuICAgICAgfSkpXG4gICAgaWYgKHByb3BzLmRpc2FibGVkICYmIHBheWxvYWQuZGlzYWJsZWQpIHNlbGVjdC5kaXNhYmxlZCA9IHBheWxvYWQuZGlzYWJsZWRcbiAgfVxuXG4gIHJldHVybiBzZWxlY3Rcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtU2VjdGlvbkNvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogRGlzY29yZFNlY3Rpb25Db21wb25lbnQpOiBDb21wb25lbnQge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMuY29tcG9uZW50XG4gIGNvbnN0IHNlY3Rpb24gPSB7fSBhcyBDb21wb25lbnRcblxuICBpZiAocHJvcHMudHlwZSAmJiBwYXlsb2FkLnR5cGUpIHNlY3Rpb24udHlwZSA9IHBheWxvYWQudHlwZVxuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgc2VjdGlvbi5pZCA9IHBheWxvYWQuaWRcbiAgaWYgKHByb3BzLmNvbXBvbmVudHMgJiYgcGF5bG9hZC5jb21wb25lbnRzKSBzZWN0aW9uLmNvbXBvbmVudHMgPSBwYXlsb2FkLmNvbXBvbmVudHMubWFwKChjb21wb25lbnQpID0+IGJvdC50cmFuc2Zvcm1lcnMuY29tcG9uZW50KGJvdCwgY29tcG9uZW50KSlcbiAgaWYgKHByb3BzLmFjY2Vzc29yeSAmJiBwYXlsb2FkLmFjY2Vzc29yeSkgc2VjdGlvbi5hY2Nlc3NvcnkgPSBib3QudHJhbnNmb3JtZXJzLmNvbXBvbmVudChib3QsIHBheWxvYWQuYWNjZXNzb3J5KVxuXG4gIHJldHVybiBzZWN0aW9uXG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybVRodW1ibmFpbENvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogRGlzY29yZFRodW1ibmFpbENvbXBvbmVudCk6IENvbXBvbmVudCB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5jb21wb25lbnRcbiAgY29uc3QgdGh1bWJuYWlsID0ge30gYXMgQ29tcG9uZW50XG5cbiAgaWYgKHByb3BzLnR5cGUgJiYgcGF5bG9hZC50eXBlKSB0aHVtYm5haWwudHlwZSA9IHBheWxvYWQudHlwZVxuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgdGh1bWJuYWlsLmlkID0gcGF5bG9hZC5pZFxuICBpZiAocHJvcHMubWVkaWEgJiYgcGF5bG9hZC5tZWRpYSkgdGh1bWJuYWlsLm1lZGlhID0gYm90LnRyYW5zZm9ybWVycy51bmZ1cmxlZE1lZGlhSXRlbShib3QsIHBheWxvYWQubWVkaWEpXG4gIGlmIChwcm9wcy5kZXNjcmlwdGlvbiAmJiBwYXlsb2FkLmRlc2NyaXB0aW9uKSB0aHVtYm5haWwuZGVzY3JpcHRpb24gPSBwYXlsb2FkLmRlc2NyaXB0aW9uXG4gIGlmIChwcm9wcy5zcG9pbGVyICYmIHBheWxvYWQuc3BvaWxlcikgdGh1bWJuYWlsLnNwb2lsZXIgPSBwYXlsb2FkLnNwb2lsZXJcblxuICByZXR1cm4gdGh1bWJuYWlsXG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybU1lZGlhR2FsbGVyeUNvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogRGlzY29yZE1lZGlhR2FsbGVyeUNvbXBvbmVudCk6IENvbXBvbmVudCB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5jb21wb25lbnRcbiAgY29uc3QgbWVkaWFHYWxsZXJ5ID0ge30gYXMgQ29tcG9uZW50XG5cbiAgaWYgKHByb3BzLnR5cGUgJiYgcGF5bG9hZC50eXBlKSBtZWRpYUdhbGxlcnkudHlwZSA9IHBheWxvYWQudHlwZVxuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgbWVkaWFHYWxsZXJ5LmlkID0gcGF5bG9hZC5pZFxuICBpZiAocHJvcHMuaXRlbXMgJiYgcGF5bG9hZC5pdGVtcykgbWVkaWFHYWxsZXJ5Lml0ZW1zID0gcGF5bG9hZC5pdGVtcy5tYXAoKGl0ZW0pID0+IGJvdC50cmFuc2Zvcm1lcnMubWVkaWFHYWxsZXJ5SXRlbShib3QsIGl0ZW0pKVxuXG4gIHJldHVybiBtZWRpYUdhbGxlcnlcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtRmlsZUNvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogRGlzY29yZEZpbGVDb21wb25lbnQpOiBDb21wb25lbnQge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMuY29tcG9uZW50XG4gIGNvbnN0IGZpbGUgPSB7fSBhcyBDb21wb25lbnRcblxuICBpZiAocHJvcHMudHlwZSAmJiBwYXlsb2FkLnR5cGUpIGZpbGUudHlwZSA9IHBheWxvYWQudHlwZVxuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgZmlsZS5pZCA9IHBheWxvYWQuaWRcbiAgaWYgKHByb3BzLmZpbGUgJiYgcGF5bG9hZC5maWxlKSBmaWxlLmZpbGUgPSBib3QudHJhbnNmb3JtZXJzLnVuZnVybGVkTWVkaWFJdGVtKGJvdCwgcGF5bG9hZC5maWxlKVxuICBpZiAocHJvcHMuc3BvaWxlciAmJiBwYXlsb2FkLnNwb2lsZXIpIGZpbGUuc3BvaWxlciA9IHBheWxvYWQuc3BvaWxlclxuICBpZiAocHJvcHMubmFtZSAmJiBwYXlsb2FkLm5hbWUpIGZpbGUubmFtZSA9IHBheWxvYWQubmFtZVxuICBpZiAocHJvcHMuc2l6ZSAmJiBwYXlsb2FkLnNpemUpIGZpbGUuc2l6ZSA9IHBheWxvYWQuc2l6ZVxuXG4gIHJldHVybiBmaWxlXG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybVRleHREaXNwbGF5Q29tcG9uZW50KGJvdDogQm90LCBwYXlsb2FkOiBEaXNjb3JkVGV4dERpc3BsYXlDb21wb25lbnQgfCBEaXNjb3JkVGV4dERpc3BsYXlJbnRlcmFjdGlvblJlc3BvbnNlKTogQ29tcG9uZW50IHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmNvbXBvbmVudFxuICBjb25zdCB0ZXh0RGlzcGxheSA9IHt9IGFzIENvbXBvbmVudFxuXG4gIGlmIChwcm9wcy50eXBlICYmIHBheWxvYWQudHlwZSkgdGV4dERpc3BsYXkudHlwZSA9IHBheWxvYWQudHlwZVxuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgdGV4dERpc3BsYXkuaWQgPSBwYXlsb2FkLmlkXG4gIC8vIFRoYXQgdGhhdCB0aGlzIGlzbid0IGEgcmVzcG9uc2VcbiAgaWYgKCdjb250ZW50JyBpbiBwYXlsb2FkKSB7XG4gICAgaWYgKHByb3BzLmNvbnRlbnQgJiYgcGF5bG9hZC5jb250ZW50KSB0ZXh0RGlzcGxheS5jb250ZW50ID0gcGF5bG9hZC5jb250ZW50XG4gIH1cblxuICByZXR1cm4gdGV4dERpc3BsYXlcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtU2VwYXJhdG9yQ29tcG9uZW50KGJvdDogQm90LCBwYXlsb2FkOiBEaXNjb3JkU2VwYXJhdG9yQ29tcG9uZW50KTogQ29tcG9uZW50IHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmNvbXBvbmVudFxuICBjb25zdCBzZXBhcmF0b3IgPSB7fSBhcyBDb21wb25lbnRcblxuICBpZiAocHJvcHMudHlwZSAmJiBwYXlsb2FkLnR5cGUpIHNlcGFyYXRvci50eXBlID0gcGF5bG9hZC50eXBlXG4gIGlmIChwcm9wcy5pZCAmJiBwYXlsb2FkLmlkKSBzZXBhcmF0b3IuaWQgPSBwYXlsb2FkLmlkXG4gIGlmIChwcm9wcy5kaXZpZGVyICYmIHBheWxvYWQuZGl2aWRlcikgc2VwYXJhdG9yLmRpdmlkZXIgPSBwYXlsb2FkLmRpdmlkZXJcbiAgaWYgKHByb3BzLnNwYWNpbmcgJiYgcGF5bG9hZC5zcGFjaW5nKSBzZXBhcmF0b3Iuc3BhY2luZyA9IHBheWxvYWQuc3BhY2luZ1xuXG4gIHJldHVybiBzZXBhcmF0b3Jcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtTGFiZWxDb21wb25lbnQoYm90OiBCb3QsIHBheWxvYWQ6IERpc2NvcmRMYWJlbENvbXBvbmVudCB8IERpc2NvcmRMYWJlbEludGVyYWN0aW9uUmVzcG9uc2UpOiBDb21wb25lbnQge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMuY29tcG9uZW50XG4gIGNvbnN0IGxhYmVsID0ge30gYXMgQ29tcG9uZW50XG5cbiAgaWYgKHByb3BzLnR5cGUgJiYgcGF5bG9hZC50eXBlKSBsYWJlbC50eXBlID0gcGF5bG9hZC50eXBlXG4gIGlmIChwcm9wcy5pZCAmJiBwYXlsb2FkLmlkKSBsYWJlbC5pZCA9IHBheWxvYWQuaWRcbiAgLy8gQ2hlY2sgdGhhdCB0aGlzIGlzbid0IGEgcmVzcG9uc2VcbiAgaWYgKCdsYWJlbCcgaW4gcGF5bG9hZCkge1xuICAgIGlmIChwcm9wcy5sYWJlbCAmJiBwYXlsb2FkLmxhYmVsKSBsYWJlbC5sYWJlbCA9IHBheWxvYWQubGFiZWxcbiAgICBpZiAocHJvcHMuZGVzY3JpcHRpb24gJiYgcGF5bG9hZC5kZXNjcmlwdGlvbikgbGFiZWwuZGVzY3JpcHRpb24gPSBwYXlsb2FkLmRlc2NyaXB0aW9uXG4gIH1cbiAgaWYgKHByb3BzLmNvbXBvbmVudCAmJiBwYXlsb2FkLmNvbXBvbmVudCkgbGFiZWwuY29tcG9uZW50ID0gYm90LnRyYW5zZm9ybWVycy5jb21wb25lbnQoYm90LCBwYXlsb2FkLmNvbXBvbmVudClcblxuICByZXR1cm4gbGFiZWxcbn1cbiJdLCJuYW1lcyI6WyJNZXNzYWdlQ29tcG9uZW50VHlwZXMiLCJ0cmFuc2Zvcm1Db21wb25lbnQiLCJib3QiLCJwYXlsb2FkIiwiY29tcG9uZW50IiwidHlwZSIsIkFjdGlvblJvdyIsInRyYW5zZm9ybUFjdGlvblJvdyIsIkJ1dHRvbiIsInRyYW5zZm9ybUJ1dHRvbkNvbXBvbmVudCIsIkNvbnRhaW5lciIsInRyYW5zZm9ybUNvbnRhaW5lckNvbXBvbmVudCIsIlRleHRJbnB1dCIsInRyYW5zZm9ybUlucHV0VGV4dENvbXBvbmVudCIsIlN0cmluZ1NlbGVjdCIsIlVzZXJTZWxlY3QiLCJSb2xlU2VsZWN0IiwiTWVudGlvbmFibGVTZWxlY3QiLCJDaGFubmVsU2VsZWN0IiwidHJhbnNmb3JtU2VsZWN0TWVudUNvbXBvbmVudCIsIlNlY3Rpb24iLCJ0cmFuc2Zvcm1TZWN0aW9uQ29tcG9uZW50IiwiVGh1bWJuYWlsIiwidHJhbnNmb3JtVGh1bWJuYWlsQ29tcG9uZW50IiwiTWVkaWFHYWxsZXJ5IiwidHJhbnNmb3JtTWVkaWFHYWxsZXJ5Q29tcG9uZW50IiwiRmlsZSIsInRyYW5zZm9ybUZpbGVDb21wb25lbnQiLCJTZXBhcmF0b3IiLCJ0cmFuc2Zvcm1TZXBhcmF0b3JDb21wb25lbnQiLCJUZXh0RGlzcGxheSIsInRyYW5zZm9ybVRleHREaXNwbGF5Q29tcG9uZW50IiwiTGFiZWwiLCJ0cmFuc2Zvcm1MYWJlbENvbXBvbmVudCIsInRyYW5zZm9ybWVycyIsImN1c3RvbWl6ZXJzIiwidHJhbnNmb3JtVW5mdXJsZWRNZWRpYUl0ZW0iLCJwcm9wcyIsImRlc2lyZWRQcm9wZXJ0aWVzIiwidW5mdXJsZWRNZWRpYUl0ZW0iLCJtZWRpYUl0ZW0iLCJ1cmwiLCJwcm94eVVybCIsInByb3h5X3VybCIsImhlaWdodCIsIndpZHRoIiwiY29udGVudFR5cGUiLCJjb250ZW50X3R5cGUiLCJhdHRhY2htZW50SWQiLCJhdHRhY2htZW50X2lkIiwic25vd2ZsYWtlIiwidHJhbnNmb3JtTWVkaWFHYWxsZXJ5SXRlbSIsIm1lZGlhR2FsbGVyeUl0ZW0iLCJnYWxsZXJ5SXRlbSIsIm1lZGlhIiwiZGVzY3JpcHRpb24iLCJzcG9pbGVyIiwiYWN0aW9uUm93IiwiaWQiLCJjb21wb25lbnRzIiwibWFwIiwiY29udGFpbmVyIiwiYWNjZW50Q29sb3IiLCJhY2NlbnRfY29sb3IiLCJidXR0b24iLCJsYWJlbCIsImN1c3RvbUlkIiwiY3VzdG9tX2lkIiwic3R5bGUiLCJlbW9qaSIsImRpc2FibGVkIiwic2t1SWQiLCJza3VfaWQiLCJpbnB1dCIsInZhbHVlIiwicmVxdWlyZWQiLCJwbGFjZWhvbGRlciIsIm1pbkxlbmd0aCIsIm1pbl9sZW5ndGgiLCJtYXhMZW5ndGgiLCJtYXhfbGVuZ3RoIiwic2VsZWN0IiwidmFsdWVzIiwibWluVmFsdWVzIiwibWluX3ZhbHVlcyIsIm1heFZhbHVlcyIsIm1heF92YWx1ZXMiLCJkZWZhdWx0VmFsdWVzIiwiZGVmYXVsdF92YWx1ZXMiLCJkZWZhdWx0VmFsdWUiLCJjaGFubmVsVHlwZXMiLCJjaGFubmVsX3R5cGVzIiwib3B0aW9ucyIsIm9wdGlvbiIsInVuZGVmaW5lZCIsIm5hbWUiLCJhbmltYXRlZCIsImRlZmF1bHQiLCJzZWN0aW9uIiwiYWNjZXNzb3J5IiwidGh1bWJuYWlsIiwibWVkaWFHYWxsZXJ5IiwiaXRlbXMiLCJpdGVtIiwiZmlsZSIsInNpemUiLCJ0ZXh0RGlzcGxheSIsImNvbnRlbnQiLCJzZXBhcmF0b3IiLCJkaXZpZGVyIiwic3BhY2luZyJdLCJtYXBwaW5ncyI6IkFBQUEsU0FxQkVBLHFCQUFxQixRQUNoQixvQkFBbUI7QUFJMUIsT0FBTyxTQUFTQyxtQkFBbUJDLEdBQVEsRUFBRUMsT0FBc0Y7SUFDakksSUFBSUM7SUFFSixrSUFBa0k7SUFDbEksT0FBUUQsUUFBUUUsSUFBSTtRQUNsQixLQUFLTCxzQkFBc0JNLFNBQVM7WUFDbENGLFlBQVlHLG1CQUFtQkwsS0FBS0M7WUFDcEM7UUFDRixLQUFLSCxzQkFBc0JRLE1BQU07WUFDL0JKLFlBQVlLLHlCQUF5QlAsS0FBS0M7WUFDMUM7UUFDRixLQUFLSCxzQkFBc0JVLFNBQVM7WUFDbENO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
|
|
242
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIHR5cGUgRGlzY29yZEFjdGlvblJvdyxcbiAgdHlwZSBEaXNjb3JkQnV0dG9uQ29tcG9uZW50LFxuICB0eXBlIERpc2NvcmRDb250YWluZXJDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZEZpbGVDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZEZpbGVVcGxvYWRDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZEZpbGVVcGxvYWRJbnRlcmFjdGlvblJlc3BvbnNlLFxuICB0eXBlIERpc2NvcmRMYWJlbENvbXBvbmVudCxcbiAgdHlwZSBEaXNjb3JkTGFiZWxJbnRlcmFjdGlvblJlc3BvbnNlLFxuICB0eXBlIERpc2NvcmRNZWRpYUdhbGxlcnlDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZE1lZGlhR2FsbGVyeUl0ZW0sXG4gIHR5cGUgRGlzY29yZE1lc3NhZ2VDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZE1lc3NhZ2VDb21wb25lbnRGcm9tTW9kYWxJbnRlcmFjdGlvblJlc3BvbnNlLFxuICB0eXBlIERpc2NvcmRTZWN0aW9uQ29tcG9uZW50LFxuICB0eXBlIERpc2NvcmRTZWxlY3RNZW51Q29tcG9uZW50LFxuICB0eXBlIERpc2NvcmRTZXBhcmF0b3JDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZFN0cmluZ1NlbGVjdEludGVyYWN0aW9uUmVzcG9uc2VGcm9tTW9kYWwsXG4gIHR5cGUgRGlzY29yZFRleHREaXNwbGF5Q29tcG9uZW50LFxuICB0eXBlIERpc2NvcmRUZXh0RGlzcGxheUludGVyYWN0aW9uUmVzcG9uc2UsXG4gIHR5cGUgRGlzY29yZFRleHRJbnB1dENvbXBvbmVudCxcbiAgdHlwZSBEaXNjb3JkVGV4dElucHV0SW50ZXJhY3Rpb25SZXNwb25zZSxcbiAgdHlwZSBEaXNjb3JkVGh1bWJuYWlsQ29tcG9uZW50LFxuICB0eXBlIERpc2NvcmRVbmZ1cmxlZE1lZGlhSXRlbSxcbiAgTWVzc2FnZUNvbXBvbmVudFR5cGVzLFxufSBmcm9tICdAZGlzY29yZGVuby90eXBlcydcbmltcG9ydCB0eXBlIHsgQm90IH0gZnJvbSAnLi4vYm90LmpzJ1xuaW1wb3J0IHR5cGUgeyBDb21wb25lbnQsIE1lZGlhR2FsbGVyeUl0ZW0sIFVuZnVybGVkTWVkaWFJdGVtIH0gZnJvbSAnLi90eXBlcy5qcydcblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUNvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogRGlzY29yZE1lc3NhZ2VDb21wb25lbnQgfCBEaXNjb3JkTWVzc2FnZUNvbXBvbmVudEZyb21Nb2RhbEludGVyYWN0aW9uUmVzcG9uc2UpOiBDb21wb25lbnQge1xuICBsZXQgY29tcG9uZW50OiBDb21wb25lbnRcblxuICAvLyBUaGlzIHN3aXRjaCBpcyBleGhhdXN0aXZlLCBzbyB3ZSBkb250IG5lZWQgdGhlIGRlZmF1bHQgY2FzZSBhbmQgVFMgZG9lcyBub3QgZXJyb3Igb3V0IGZvciB0aGUgdW4taW5pdGlhbGl6ZWQgY29tcG9uZW50IHZhcmlhYmxlXG4gIHN3aXRjaCAocGF5bG9hZC50eXBlKSB7XG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuQWN0aW9uUm93OlxuICAgICAgY29tcG9uZW50ID0gdHJhbnNmb3JtQWN0aW9uUm93KGJvdCwgcGF5bG9hZClcbiAgICAgIGJyZWFrXG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuQnV0dG9uOlxuICAgICAgY29tcG9uZW50ID0gdHJhbnNmb3JtQnV0dG9uQ29tcG9uZW50KGJvdCwgcGF5bG9hZClcbiAgICAgIGJyZWFrXG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuQ29udGFpbmVyOlxuICAgICAgY29tcG9uZW50ID0gdHJhbnNmb3JtQ29udGFpbmVyQ29tcG9uZW50KGJvdCwgcGF5bG9hZClcbiAgICAgIGJyZWFrXG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuVGV4dElucHV0OlxuICAgICAgY29tcG9uZW50ID0gdHJhbnNmb3JtSW5wdXRUZXh0Q29tcG9uZW50KGJvdCwgcGF5bG9hZClcbiAgICAgIGJyZWFrXG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuU3RyaW5nU2VsZWN0OlxuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLlVzZXJTZWxlY3Q6XG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuUm9sZVNlbGVjdDpcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5NZW50aW9uYWJsZVNlbGVjdDpcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5DaGFubmVsU2VsZWN0OlxuICAgICAgY29tcG9uZW50ID0gdHJhbnNmb3JtU2VsZWN0TWVudUNvbXBvbmVudChib3QsIHBheWxvYWQpXG4gICAgICBicmVha1xuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLlNlY3Rpb246XG4gICAgICBjb21wb25lbnQgPSB0cmFuc2Zvcm1TZWN0aW9uQ29tcG9uZW50KGJvdCwgcGF5bG9hZClcbiAgICAgIGJyZWFrXG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuVGh1bWJuYWlsOlxuICAgICAgY29tcG9uZW50ID0gdHJhbnNmb3JtVGh1bWJuYWlsQ29tcG9uZW50KGJvdCwgcGF5bG9hZClcbiAgICAgIGJyZWFrXG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuTWVkaWFHYWxsZXJ5OlxuICAgICAgY29tcG9uZW50ID0gdHJhbnNmb3JtTWVkaWFHYWxsZXJ5Q29tcG9uZW50KGJvdCwgcGF5bG9hZClcbiAgICAgIGJyZWFrXG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuRmlsZTpcbiAgICAgIGNvbXBvbmVudCA9IHRyYW5zZm9ybUZpbGVDb21wb25lbnQoYm90LCBwYXlsb2FkKVxuICAgICAgYnJlYWtcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5TZXBhcmF0b3I6XG4gICAgICBjb21wb25lbnQgPSB0cmFuc2Zvcm1TZXBhcmF0b3JDb21wb25lbnQoYm90LCBwYXlsb2FkKVxuICAgICAgYnJlYWtcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5UZXh0RGlzcGxheTpcbiAgICAgIGNvbXBvbmVudCA9IHRyYW5zZm9ybVRleHREaXNwbGF5Q29tcG9uZW50KGJvdCwgcGF5bG9hZClcbiAgICAgIGJyZWFrXG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuTGFiZWw6XG4gICAgICBjb21wb25lbnQgPSB0cmFuc2Zvcm1MYWJlbENvbXBvbmVudChib3QsIHBheWxvYWQpXG4gICAgICBicmVha1xuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLkZpbGVVcGxvYWQ6XG4gICAgICBjb21wb25lbnQgPSB0cmFuc2Zvcm1GaWxlVXBsb2FkQ29tcG9uZW50KGJvdCwgcGF5bG9hZClcbiAgICAgIGJyZWFrXG4gIH1cblxuICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jdXN0b21pemVycy5jb21wb25lbnQoYm90LCBwYXlsb2FkLCBjb21wb25lbnQpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm1VbmZ1cmxlZE1lZGlhSXRlbShib3Q6IEJvdCwgcGF5bG9hZDogRGlzY29yZFVuZnVybGVkTWVkaWFJdGVtKTogVW5mdXJsZWRNZWRpYUl0ZW0ge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMudW5mdXJsZWRNZWRpYUl0ZW1cbiAgY29uc3QgbWVkaWFJdGVtID0ge30gYXMgVW5mdXJsZWRNZWRpYUl0ZW1cblxuICBpZiAocHJvcHMudXJsICYmIHBheWxvYWQudXJsKSBtZWRpYUl0ZW0udXJsID0gcGF5bG9hZC51cmxcbiAgaWYgKHByb3BzLnByb3h5VXJsICYmIHBheWxvYWQucHJveHlfdXJsKSBtZWRpYUl0ZW0ucHJveHlVcmwgPSBwYXlsb2FkLnByb3h5X3VybFxuICBpZiAocHJvcHMuaGVpZ2h0ICYmIHBheWxvYWQuaGVpZ2h0KSBtZWRpYUl0ZW0uaGVpZ2h0ID0gcGF5bG9hZC5oZWlnaHRcbiAgaWYgKHByb3BzLndpZHRoICYmIHBheWxvYWQud2lkdGgpIG1lZGlhSXRlbS53aWR0aCA9IHBheWxvYWQud2lkdGhcbiAgaWYgKHByb3BzLmNvbnRlbnRUeXBlICYmIHBheWxvYWQuY29udGVudF90eXBlKSBtZWRpYUl0ZW0uY29udGVudFR5cGUgPSBwYXlsb2FkLmNvbnRlbnRfdHlwZVxuICBpZiAocHJvcHMuYXR0YWNobWVudElkICYmIHBheWxvYWQuYXR0YWNobWVudF9pZCkgbWVkaWFJdGVtLmF0dGFjaG1lbnRJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuYXR0YWNobWVudF9pZClcblxuICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jdXN0b21pemVycy51bmZ1cmxlZE1lZGlhSXRlbShib3QsIHBheWxvYWQsIG1lZGlhSXRlbSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybU1lZGlhR2FsbGVyeUl0ZW0oYm90OiBCb3QsIHBheWxvYWQ6IERpc2NvcmRNZWRpYUdhbGxlcnlJdGVtKTogTWVkaWFHYWxsZXJ5SXRlbSB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5tZWRpYUdhbGxlcnlJdGVtXG4gIGNvbnN0IGdhbGxlcnlJdGVtID0ge30gYXMgTWVkaWFHYWxsZXJ5SXRlbVxuXG4gIGlmIChwcm9wcy5tZWRpYSAmJiBwYXlsb2FkLm1lZGlhKSBnYWxsZXJ5SXRlbS5tZWRpYSA9IGJvdC50cmFuc2Zvcm1lcnMudW5mdXJsZWRNZWRpYUl0ZW0oYm90LCBwYXlsb2FkLm1lZGlhKVxuICBpZiAocHJvcHMuZGVzY3JpcHRpb24gJiYgcGF5bG9hZC5kZXNjcmlwdGlvbikgZ2FsbGVyeUl0ZW0uZGVzY3JpcHRpb24gPSBwYXlsb2FkLmRlc2NyaXB0aW9uXG4gIGlmIChwcm9wcy5zcG9pbGVyICYmIHBheWxvYWQuc3BvaWxlcikgZ2FsbGVyeUl0ZW0uc3BvaWxlciA9IHBheWxvYWQuc3BvaWxlclxuXG4gIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmN1c3RvbWl6ZXJzLm1lZGlhR2FsbGVyeUl0ZW0oYm90LCBwYXlsb2FkLCBnYWxsZXJ5SXRlbSlcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtQWN0aW9uUm93KGJvdDogQm90LCBwYXlsb2FkOiBEaXNjb3JkQWN0aW9uUm93KTogQ29tcG9uZW50IHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmNvbXBvbmVudFxuICBjb25zdCBhY3Rpb25Sb3cgPSB7fSBhcyBDb21wb25lbnRcblxuICBpZiAocHJvcHMudHlwZSAmJiBwYXlsb2FkLnR5cGUpIGFjdGlvblJvdy50eXBlID0gcGF5bG9hZC50eXBlXG4gIGlmIChwcm9wcy5pZCAmJiBwYXlsb2FkLmlkKSBhY3Rpb25Sb3cuaWQgPSBwYXlsb2FkLmlkXG4gIGlmIChwcm9wcy5jb21wb25lbnRzICYmIHBheWxvYWQuY29tcG9uZW50cykgYWN0aW9uUm93LmNvbXBvbmVudHMgPSBwYXlsb2FkLmNvbXBvbmVudHMubWFwKChjb21wb25lbnQpID0+IGJvdC50cmFuc2Zvcm1lcnMuY29tcG9uZW50KGJvdCwgY29tcG9uZW50KSlcblxuICByZXR1cm4gYWN0aW9uUm93XG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybUNvbnRhaW5lckNvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogRGlzY29yZENvbnRhaW5lckNvbXBvbmVudCk6IENvbXBvbmVudCB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5jb21wb25lbnRcbiAgY29uc3QgY29udGFpbmVyID0ge30gYXMgQ29tcG9uZW50XG5cbiAgaWYgKHByb3BzLnR5cGUgJiYgcGF5bG9hZC50eXBlKSBjb250YWluZXIudHlwZSA9IHBheWxvYWQudHlwZVxuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgY29udGFpbmVyLmlkID0gcGF5bG9hZC5pZFxuICBpZiAocHJvcHMuYWNjZW50Q29sb3IgJiYgcGF5bG9hZC5hY2NlbnRfY29sb3IpIGNvbnRhaW5lci5hY2NlbnRDb2xvciA9IHBheWxvYWQuYWNjZW50X2NvbG9yXG4gIGlmIChwcm9wcy5zcG9pbGVyICYmIHBheWxvYWQuc3BvaWxlcikgY29udGFpbmVyLnNwb2lsZXIgPSBwYXlsb2FkLnNwb2lsZXJcbiAgaWYgKHByb3BzLmNvbXBvbmVudHMgJiYgcGF5bG9hZC5jb21wb25lbnRzKSBjb250YWluZXIuY29tcG9uZW50cyA9IHBheWxvYWQuY29tcG9uZW50cy5tYXAoKGNvbXBvbmVudCkgPT4gYm90LnRyYW5zZm9ybWVycy5jb21wb25lbnQoYm90LCBjb21wb25lbnQpKVxuXG4gIHJldHVybiBjb250YWluZXJcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtQnV0dG9uQ29tcG9uZW50KGJvdDogQm90LCBwYXlsb2FkOiBEaXNjb3JkQnV0dG9uQ29tcG9uZW50KTogQ29tcG9uZW50IHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmNvbXBvbmVudFxuICBjb25zdCBidXR0b24gPSB7fSBhcyBDb21wb25lbnRcblxuICBpZiAocHJvcHMudHlwZSAmJiBwYXlsb2FkLnR5cGUpIGJ1dHRvbi50eXBlID0gcGF5bG9hZC50eXBlXG4gIGlmIChwcm9wcy5pZCAmJiBwYXlsb2FkLmlkKSBidXR0b24uaWQgPSBwYXlsb2FkLmlkXG4gIGlmIChwcm9wcy5sYWJlbCAmJiBwYXlsb2FkLmxhYmVsKSBidXR0b24ubGFiZWwgPSBwYXlsb2FkLmxhYmVsXG4gIGlmIChwcm9wcy5jdXN0b21JZCAmJiBwYXlsb2FkLmN1c3RvbV9pZCkgYnV0dG9uLmN1c3RvbUlkID0gcGF5bG9hZC5jdXN0b21faWRcbiAgaWYgKHByb3BzLnN0eWxlICYmIHBheWxvYWQuc3R5bGUpIGJ1dHRvbi5zdHlsZSA9IHBheWxvYWQuc3R5bGVcbiAgaWYgKHByb3BzLmVtb2ppICYmIHBheWxvYWQuZW1vamkpIGJ1dHRvbi5lbW9qaSA9IGJvdC50cmFuc2Zvcm1lcnMuZW1vamkoYm90LCBwYXlsb2FkLmVtb2ppKVxuICBpZiAocHJvcHMudXJsICYmIHBheWxvYWQudXJsKSBidXR0b24udXJsID0gcGF5bG9hZC51cmxcbiAgaWYgKHByb3BzLmRpc2FibGVkICYmIHBheWxvYWQuZGlzYWJsZWQpIGJ1dHRvbi5kaXNhYmxlZCA9IHBheWxvYWQuZGlzYWJsZWRcbiAgaWYgKHByb3BzLnNrdUlkICYmIHBheWxvYWQuc2t1X2lkKSBidXR0b24uc2t1SWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLnNrdV9pZClcblxuICByZXR1cm4gYnV0dG9uXG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybUlucHV0VGV4dENvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogRGlzY29yZFRleHRJbnB1dENvbXBvbmVudCB8IERpc2NvcmRUZXh0SW5wdXRJbnRlcmFjdGlvblJlc3BvbnNlKTogQ29tcG9uZW50IHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmNvbXBvbmVudFxuICBjb25zdCBpbnB1dCA9IHt9IGFzIENvbXBvbmVudFxuXG4gIGlmIChwcm9wcy50eXBlICYmIHBheWxvYWQudHlwZSkgaW5wdXQudHlwZSA9IHBheWxvYWQudHlwZVxuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgaW5wdXQuaWQgPSBwYXlsb2FkLmlkXG4gIGlmIChwcm9wcy52YWx1ZSAmJiBwYXlsb2FkLnZhbHVlKSBpbnB1dC52YWx1ZSA9IHBheWxvYWQudmFsdWVcbiAgaWYgKHByb3BzLmN1c3RvbUlkICYmIHBheWxvYWQuY3VzdG9tX2lkKSBpbnB1dC5jdXN0b21JZCA9IHBheWxvYWQuY3VzdG9tX2lkXG5cbiAgLy8gQ2hlY2sgaWYgaXQgaXMgdGhlIGNvbXBvbmVudCBvciB0aGUgcmVzcG9uc2VcbiAgaWYgKCdzdHlsZScgaW4gcGF5bG9hZCkge1xuICAgIGlmIChwcm9wcy5zdHlsZSAmJiBwYXlsb2FkLnN0eWxlKSBpbnB1dC5zdHlsZSA9IHBheWxvYWQuc3R5bGVcbiAgICBpZiAocHJvcHMucmVxdWlyZWQgJiYgcGF5bG9hZC5yZXF1aXJlZCkgaW5wdXQucmVxdWlyZWQgPSBwYXlsb2FkLnJlcXVpcmVkXG4gICAgaWYgKHByb3BzLmxhYmVsICYmIHBheWxvYWQubGFiZWwpIGlucHV0LmxhYmVsID0gcGF5bG9hZC5sYWJlbFxuICAgIGlmIChwcm9wcy5wbGFjZWhvbGRlciAmJiBwYXlsb2FkLnBsYWNlaG9sZGVyKSBpbnB1dC5wbGFjZWhvbGRlciA9IHBheWxvYWQucGxhY2Vob2xkZXJcbiAgICBpZiAocHJvcHMubWluTGVuZ3RoICYmIHBheWxvYWQubWluX2xlbmd0aCkgaW5wdXQubWluTGVuZ3RoID0gcGF5bG9hZC5taW5fbGVuZ3RoXG4gICAgaWYgKHByb3BzLm1heExlbmd0aCAmJiBwYXlsb2FkLm1heF9sZW5ndGgpIGlucHV0Lm1heExlbmd0aCA9IHBheWxvYWQubWF4X2xlbmd0aFxuICB9XG5cbiAgcmV0dXJuIGlucHV0XG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybVNlbGVjdE1lbnVDb21wb25lbnQoYm90OiBCb3QsIHBheWxvYWQ6IERpc2NvcmRTZWxlY3RNZW51Q29tcG9uZW50IHwgRGlzY29yZFN0cmluZ1NlbGVjdEludGVyYWN0aW9uUmVzcG9uc2VGcm9tTW9kYWwpOiBDb21wb25lbnQge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMuY29tcG9uZW50XG4gIGNvbnN0IHNlbGVjdCA9IHt9IGFzIENvbXBvbmVudFxuXG4gIGlmIChwcm9wcy50eXBlICYmIHBheWxvYWQudHlwZSkgc2VsZWN0LnR5cGUgPSBwYXlsb2FkLnR5cGVcbiAgaWYgKHByb3BzLmlkICYmIHBheWxvYWQuaWQpIHNlbGVjdC5pZCA9IHBheWxvYWQuaWRcbiAgaWYgKHByb3BzLmN1c3RvbUlkICYmIHBheWxvYWQuY3VzdG9tX2lkKSBzZWxlY3QuY3VzdG9tSWQgPSBwYXlsb2FkLmN1c3RvbV9pZFxuXG4gIC8vIENoZWNrIGlmIHRoaXMgaXMgdGhlIHN0cmluZyBzZWxlY3QgcmVzcG9uc2VcbiAgaWYgKCd2YWx1ZXMnIGluIHBheWxvYWQpIHtcbiAgICBpZiAocHJvcHMudmFsdWVzICYmIHBheWxvYWQudmFsdWVzKSBzZWxlY3QudmFsdWVzID0gcGF5bG9hZC52YWx1ZXNcbiAgfSBlbHNlIHtcbiAgICBpZiAocHJvcHMucGxhY2Vob2xkZXIgJiYgcGF5bG9hZC5wbGFjZWhvbGRlcikgc2VsZWN0LnBsYWNlaG9sZGVyID0gcGF5bG9hZC5wbGFjZWhvbGRlclxuICAgIGlmIChwcm9wcy5taW5WYWx1ZXMgJiYgcGF5bG9hZC5taW5fdmFsdWVzKSBzZWxlY3QubWluVmFsdWVzID0gcGF5bG9hZC5taW5fdmFsdWVzXG4gICAgaWYgKHByb3BzLm1heFZhbHVlcyAmJiBwYXlsb2FkLm1heF92YWx1ZXMpIHNlbGVjdC5tYXhWYWx1ZXMgPSBwYXlsb2FkLm1heF92YWx1ZXNcbiAgICBpZiAocHJvcHMuZGVmYXVsdFZhbHVlcyAmJiBwYXlsb2FkLmRlZmF1bHRfdmFsdWVzKVxuICAgICAgc2VsZWN0LmRlZmF1bHRWYWx1ZXMgPSBwYXlsb2FkLmRlZmF1bHRfdmFsdWVzLm1hcCgoZGVmYXVsdFZhbHVlKSA9PiAoe1xuICAgICAgICBpZDogYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UoZGVmYXVsdFZhbHVlLmlkKSxcbiAgICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLnR5cGUsXG4gICAgICB9KSlcbiAgICBpZiAocHJvcHMuY2hhbm5lbFR5cGVzICYmIHBheWxvYWQuY2hhbm5lbF90eXBlcykgc2VsZWN0LmNoYW5uZWxUeXBlcyA9IHBheWxvYWQuY2hhbm5lbF90eXBlc1xuICAgIGlmIChwcm9wcy5vcHRpb25zICYmIHBheWxvYWQub3B0aW9ucylcbiAgICAgIHNlbGVjdC5vcHRpb25zID0gcGF5bG9hZC5vcHRpb25zLm1hcCgob3B0aW9uKSA9PiAoe1xuICAgICAgICBsYWJlbDogb3B0aW9uLmxhYmVsLFxuICAgICAgICB2YWx1ZTogb3B0aW9uLnZhbHVlLFxuICAgICAgICBkZXNjcmlwdGlvbjogb3B0aW9uLmRlc2NyaXB0aW9uLFxuICAgICAgICBlbW9qaTogb3B0aW9uLmVtb2ppXG4gICAgICAgICAgPyB7XG4gICAgICAgICAgICAgIGlkOiBvcHRpb24uZW1vamkuaWQgPyBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShvcHRpb24uZW1vamkuaWQpIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICBuYW1lOiBvcHRpb24uZW1vamkubmFtZSA/PyB1bmRlZmluZWQsXG4gICAgICAgICAgICAgIGFuaW1hdGVkOiBvcHRpb24uZW1vamkuYW5pbWF0ZWQsXG4gICAgICAgICAgICB9XG4gICAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgICAgIGRlZmF1bHQ6IG9wdGlvbi5kZWZhdWx0LFxuICAgICAgfSkpXG4gICAgaWYgKHByb3BzLmRpc2FibGVkICYmIHBheWxvYWQuZGlzYWJsZWQpIHNlbGVjdC5kaXNhYmxlZCA9IHBheWxvYWQuZGlzYWJsZWRcbiAgfVxuXG4gIHJldHVybiBzZWxlY3Rcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtU2VjdGlvbkNvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogRGlzY29yZFNlY3Rpb25Db21wb25lbnQpOiBDb21wb25lbnQge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMuY29tcG9uZW50XG4gIGNvbnN0IHNlY3Rpb24gPSB7fSBhcyBDb21wb25lbnRcblxuICBpZiAocHJvcHMudHlwZSAmJiBwYXlsb2FkLnR5cGUpIHNlY3Rpb24udHlwZSA9IHBheWxvYWQudHlwZVxuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgc2VjdGlvbi5pZCA9IHBheWxvYWQuaWRcbiAgaWYgKHByb3BzLmNvbXBvbmVudHMgJiYgcGF5bG9hZC5jb21wb25lbnRzKSBzZWN0aW9uLmNvbXBvbmVudHMgPSBwYXlsb2FkLmNvbXBvbmVudHMubWFwKChjb21wb25lbnQpID0+IGJvdC50cmFuc2Zvcm1lcnMuY29tcG9uZW50KGJvdCwgY29tcG9uZW50KSlcbiAgaWYgKHByb3BzLmFjY2Vzc29yeSAmJiBwYXlsb2FkLmFjY2Vzc29yeSkgc2VjdGlvbi5hY2Nlc3NvcnkgPSBib3QudHJhbnNmb3JtZXJzLmNvbXBvbmVudChib3QsIHBheWxvYWQuYWNjZXNzb3J5KVxuXG4gIHJldHVybiBzZWN0aW9uXG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybVRodW1ibmFpbENvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogRGlzY29yZFRodW1ibmFpbENvbXBvbmVudCk6IENvbXBvbmVudCB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5jb21wb25lbnRcbiAgY29uc3QgdGh1bWJuYWlsID0ge30gYXMgQ29tcG9uZW50XG5cbiAgaWYgKHByb3BzLnR5cGUgJiYgcGF5bG9hZC50eXBlKSB0aHVtYm5haWwudHlwZSA9IHBheWxvYWQudHlwZVxuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgdGh1bWJuYWlsLmlkID0gcGF5bG9hZC5pZFxuICBpZiAocHJvcHMubWVkaWEgJiYgcGF5bG9hZC5tZWRpYSkgdGh1bWJuYWlsLm1lZGlhID0gYm90LnRyYW5zZm9ybWVycy51bmZ1cmxlZE1lZGlhSXRlbShib3QsIHBheWxvYWQubWVkaWEpXG4gIGlmIChwcm9wcy5kZXNjcmlwdGlvbiAmJiBwYXlsb2FkLmRlc2NyaXB0aW9uKSB0aHVtYm5haWwuZGVzY3JpcHRpb24gPSBwYXlsb2FkLmRlc2NyaXB0aW9uXG4gIGlmIChwcm9wcy5zcG9pbGVyICYmIHBheWxvYWQuc3BvaWxlcikgdGh1bWJuYWlsLnNwb2lsZXIgPSBwYXlsb2FkLnNwb2lsZXJcblxuICByZXR1cm4gdGh1bWJuYWlsXG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybU1lZGlhR2FsbGVyeUNvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogRGlzY29yZE1lZGlhR2FsbGVyeUNvbXBvbmVudCk6IENvbXBvbmVudCB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5jb21wb25lbnRcbiAgY29uc3QgbWVkaWFHYWxsZXJ5ID0ge30gYXMgQ29tcG9uZW50XG5cbiAgaWYgKHByb3BzLnR5cGUgJiYgcGF5bG9hZC50eXBlKSBtZWRpYUdhbGxlcnkudHlwZSA9IHBheWxvYWQudHlwZVxuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgbWVkaWFHYWxsZXJ5LmlkID0gcGF5bG9hZC5pZFxuICBpZiAocHJvcHMuaXRlbXMgJiYgcGF5bG9hZC5pdGVtcykgbWVkaWFHYWxsZXJ5Lml0ZW1zID0gcGF5bG9hZC5pdGVtcy5tYXAoKGl0ZW0pID0+IGJvdC50cmFuc2Zvcm1lcnMubWVkaWFHYWxsZXJ5SXRlbShib3QsIGl0ZW0pKVxuXG4gIHJldHVybiBtZWRpYUdhbGxlcnlcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtRmlsZUNvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogRGlzY29yZEZpbGVDb21wb25lbnQpOiBDb21wb25lbnQge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMuY29tcG9uZW50XG4gIGNvbnN0IGZpbGUgPSB7fSBhcyBDb21wb25lbnRcblxuICBpZiAocHJvcHMudHlwZSAmJiBwYXlsb2FkLnR5cGUpIGZpbGUudHlwZSA9IHBheWxvYWQudHlwZVxuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgZmlsZS5pZCA9IHBheWxvYWQuaWRcbiAgaWYgKHByb3BzLmZpbGUgJiYgcGF5bG9hZC5maWxlKSBmaWxlLmZpbGUgPSBib3QudHJhbnNmb3JtZXJzLnVuZnVybGVkTWVkaWFJdGVtKGJvdCwgcGF5bG9hZC5maWxlKVxuICBpZiAocHJvcHMuc3BvaWxlciAmJiBwYXlsb2FkLnNwb2lsZXIpIGZpbGUuc3BvaWxlciA9IHBheWxvYWQuc3BvaWxlclxuICBpZiAocHJvcHMubmFtZSAmJiBwYXlsb2FkLm5hbWUpIGZpbGUubmFtZSA9IHBheWxvYWQubmFtZVxuICBpZiAocHJvcHMuc2l6ZSAmJiBwYXlsb2FkLnNpemUpIGZpbGUuc2l6ZSA9IHBheWxvYWQuc2l6ZVxuXG4gIHJldHVybiBmaWxlXG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybVRleHREaXNwbGF5Q29tcG9uZW50KGJvdDogQm90LCBwYXlsb2FkOiBEaXNjb3JkVGV4dERpc3BsYXlDb21wb25lbnQgfCBEaXNjb3JkVGV4dERpc3BsYXlJbnRlcmFjdGlvblJlc3BvbnNlKTogQ29tcG9uZW50IHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmNvbXBvbmVudFxuICBjb25zdCB0ZXh0RGlzcGxheSA9IHt9IGFzIENvbXBvbmVudFxuXG4gIGlmIChwcm9wcy50eXBlICYmIHBheWxvYWQudHlwZSkgdGV4dERpc3BsYXkudHlwZSA9IHBheWxvYWQudHlwZVxuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgdGV4dERpc3BsYXkuaWQgPSBwYXlsb2FkLmlkXG4gIC8vIFRoYXQgdGhhdCB0aGlzIGlzbid0IGEgcmVzcG9uc2VcbiAgaWYgKCdjb250ZW50JyBpbiBwYXlsb2FkKSB7XG4gICAgaWYgKHByb3BzLmNvbnRlbnQgJiYgcGF5bG9hZC5jb250ZW50KSB0ZXh0RGlzcGxheS5jb250ZW50ID0gcGF5bG9hZC5jb250ZW50XG4gIH1cblxuICByZXR1cm4gdGV4dERpc3BsYXlcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtU2VwYXJhdG9yQ29tcG9uZW50KGJvdDogQm90LCBwYXlsb2FkOiBEaXNjb3JkU2VwYXJhdG9yQ29tcG9uZW50KTogQ29tcG9uZW50IHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmNvbXBvbmVudFxuICBjb25zdCBzZXBhcmF0b3IgPSB7fSBhcyBDb21wb25lbnRcblxuICBpZiAocHJvcHMudHlwZSAmJiBwYXlsb2FkLnR5cGUpIHNlcGFyYXRvci50eXBlID0gcGF5bG9hZC50eXBlXG4gIGlmIChwcm9wcy5pZCAmJiBwYXlsb2FkLmlkKSBzZXBhcmF0b3IuaWQgPSBwYXlsb2FkLmlkXG4gIGlmIChwcm9wcy5kaXZpZGVyICYmIHBheWxvYWQuZGl2aWRlcikgc2VwYXJhdG9yLmRpdmlkZXIgPSBwYXlsb2FkLmRpdmlkZXJcbiAgaWYgKHByb3BzLnNwYWNpbmcgJiYgcGF5bG9hZC5zcGFjaW5nKSBzZXBhcmF0b3Iuc3BhY2luZyA9IHBheWxvYWQuc3BhY2luZ1xuXG4gIHJldHVybiBzZXBhcmF0b3Jcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtTGFiZWxDb21wb25lbnQoYm90OiBCb3QsIHBheWxvYWQ6IERpc2NvcmRMYWJlbENvbXBvbmVudCB8IERpc2NvcmRMYWJlbEludGVyYWN0aW9uUmVzcG9uc2UpOiBDb21wb25lbnQge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMuY29tcG9uZW50XG4gIGNvbnN0IGxhYmVsID0ge30gYXMgQ29tcG9uZW50XG5cbiAgaWYgKHByb3BzLnR5cGUgJiYgcGF5bG9hZC50eXBlKSBsYWJlbC50eXBlID0gcGF5bG9hZC50eXBlXG4gIGlmIChwcm9wcy5pZCAmJiBwYXlsb2FkLmlkKSBsYWJlbC5pZCA9IHBheWxvYWQuaWRcbiAgLy8gQ2hlY2sgdGhhdCB0aGlzIGlzbid0IGEgcmVzcG9uc2VcbiAgaWYgKCdsYWJlbCcgaW4gcGF5bG9hZCkge1xuICAgIGlmIChwcm9wcy5sYWJlbCAmJiBwYXlsb2FkLmxhYmVsKSBsYWJlbC5sYWJlbCA9IHBheWxvYWQubGFiZWxcbiAgICBpZiAocHJvcHMuZGVzY3JpcHRpb24gJiYgcGF5bG9hZC5kZXNjcmlwdGlvbikgbGFiZWwuZGVzY3JpcHRpb24gPSBwYXlsb2FkLmRlc2NyaXB0aW9uXG4gIH1cbiAgaWYgKHByb3BzLmNvbXBvbmVudCAmJiBwYXlsb2FkLmNvbXBvbmVudCkgbGFiZWwuY29tcG9uZW50ID0gYm90LnRyYW5zZm9ybWVycy5jb21wb25lbnQoYm90LCBwYXlsb2FkLmNvbXBvbmVudClcblxuICByZXR1cm4gbGFiZWxcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtRmlsZVVwbG9hZENvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogRGlzY29yZEZpbGVVcGxvYWRDb21wb25lbnQgfCBEaXNjb3JkRmlsZVVwbG9hZEludGVyYWN0aW9uUmVzcG9uc2UpOiBDb21wb25lbnQge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMuY29tcG9uZW50XG4gIGNvbnN0IGZpbGVVcGxvYWQgPSB7fSBhcyBDb21wb25lbnRcblxuICBpZiAocHJvcHMudHlwZSAmJiBwYXlsb2FkLnR5cGUpIGZpbGVVcGxvYWQudHlwZSA9IHBheWxvYWQudHlwZVxuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgZmlsZVVwbG9hZC5pZCA9IHBheWxvYWQuaWRcbiAgaWYgKHByb3BzLmN1c3RvbUlkICYmIHBheWxvYWQuY3VzdG9tX2lkKSBmaWxlVXBsb2FkLmN1c3RvbUlkID0gcGF5bG9hZC5jdXN0b21faWRcblxuICAvLyBDaGVjayB0aGF0IHRoaXMgaXMgYSByZXNwb25zZVxuICBpZiAoJ3ZhbHVlcycgaW4gcGF5bG9hZCkge1xuICAgIGlmIChwcm9wcy52YWx1ZXMgJiYgcGF5bG9hZC52YWx1ZXMpIGZpbGVVcGxvYWQudmFsdWVzID0gcGF5bG9hZC52YWx1ZXNcbiAgfSBlbHNlIHtcbiAgICBpZiAocHJvcHMubWluVmFsdWVzICYmIHBheWxvYWQubWluX3ZhbHVlcykgZmlsZVVwbG9hZC5taW5WYWx1ZXMgPSBwYXlsb2FkLm1pbl92YWx1ZXNcbiAgICBpZiAocHJvcHMubWF4VmFsdWVzICYmIHBheWxvYWQubWF4X3ZhbHVlcykgZmlsZVVwbG9hZC5tYXhWYWx1ZXMgPSBwYXlsb2FkLm1heF92YWx1ZXNcbiAgICBpZiAocHJvcHMucmVxdWlyZWQgJiYgcGF5bG9hZC5yZXF1aXJlZCkgZmlsZVVwbG9hZC5yZXF1aXJlZCA9IHBheWxvYWQucmVxdWlyZWRcbiAgfVxuXG4gIHJldHVybiBmaWxlVXBsb2FkXG59XG4iXSwibmFtZXMiOlsiTWVzc2FnZUNvbXBvbmVudFR5cGVzIiwidHJhbnNmb3JtQ29tcG9uZW50IiwiYm90IiwicGF5bG9hZCIsImNvbXBvbmVudCIsInR5cGUiLCJBY3Rpb25Sb3ciLCJ0cmFuc2Zvcm1BY3Rpb25Sb3ciLCJCdXR0b24iLCJ0cmFuc2Zvcm1CdXR0b25Db21wb25lbnQiLCJDb250YWluZXIiLCJ0cmFuc2Zvcm1Db250YWluZXJDb21wb25lbnQiLCJUZXh0SW5wdXQiLCJ0cmFuc2Zvcm1JbnB1dFRleHRDb21wb25lbnQiLCJTdHJpbmdTZWxlY3QiLCJVc2VyU2VsZWN0IiwiUm9sZVNlbGVjdCIsIk1lbnRpb25hYmxlU2VsZWN0IiwiQ2hhbm5lbFNlbGVjdCIsInRyYW5zZm9ybVNlbGVjdE1lbnVDb21wb25lbnQiLCJTZWN0aW9uIiwidHJhbnNmb3JtU2VjdGlvbkNvbXBvbmVudCIsIlRodW1ibmFpbCIsInRyYW5zZm9ybVRodW1ibmFpbENvbXBvbmVudCIsIk1lZGlhR2FsbGVyeSIsInRyYW5zZm9ybU1lZGlhR2FsbGVyeUNvbXBvbmVudCIsIkZpbGUiLCJ0cmFuc2Zvcm1GaWxlQ29tcG9uZW50IiwiU2VwYXJhdG9yIiwidHJhbnNmb3JtU2VwYXJhdG9yQ29tcG9uZW50IiwiVGV4dERpc3BsYXkiLCJ0cmFuc2Zvcm1UZXh0RGlzcGxheUNvbXBvbmVudCIsIkxhYmVsIiwidHJhbnNmb3JtTGFiZWxDb21wb25lbnQiLCJGaWxlVXBsb2FkIiwidHJhbnNmb3JtRmlsZVVwbG9hZENvbXBvbmVudCIsInRyYW5zZm9ybWVycyIsImN1c3RvbWl6ZXJzIiwidHJhbnNmb3JtVW5mdXJsZWRNZWRpYUl0ZW0iLCJwcm9wcyIsImRlc2lyZWRQcm9wZXJ0aWVzIiwidW5mdXJsZWRNZWRpYUl0ZW0iLCJtZWRpYUl0ZW0iLCJ1cmwiLCJwcm94eVVybCIsInByb3h5X3VybCIsImhlaWdodCIsIndpZHRoIiwiY29udGVudFR5cGUiLCJjb250ZW50X3R5cGUiLCJhdHRhY2htZW50SWQiLCJhdHRhY2htZW50X2lkIiwic25vd2ZsYWtlIiwidHJhbnNmb3JtTWVkaWFHYWxsZXJ5SXRlbSIsIm1lZGlhR2FsbGVyeUl0ZW0iLCJnYWxsZXJ5SXRlbSIsIm1lZGlhIiwiZGVzY3JpcHRpb24iLCJzcG9pbGVyIiwiYWN0aW9uUm93IiwiaWQiLCJjb21wb25lbnRzIiwibWFwIiwiY29udGFpbmVyIiwiYWNjZW50Q29sb3IiLCJhY2NlbnRfY29sb3IiLCJidXR0b24iLCJsYWJlbCIsImN1c3RvbUlkIiwiY3VzdG9tX2lkIiwic3R5bGUiLCJlbW9qaSIsImRpc2FibGVkIiwic2t1SWQiLCJza3VfaWQiLCJpbnB1dCIsInZhbHVlIiwicmVxdWlyZWQiLCJwbGFjZWhvbGRlciIsIm1pbkxlbmd0aCIsIm1pbl9sZW5ndGgiLCJtYXhMZW5ndGgiLCJtYXhfbGVuZ3RoIiwic2VsZWN0IiwidmFsdWVzIiwibWluVmFsdWVzIiwibWluX3ZhbHVlcyIsIm1heFZhbHVlcyIsIm1heF92YWx1ZXMiLCJkZWZhdWx0VmFsdWVzIiwiZGVmYXVsdF92YWx1ZXMiLCJkZWZhdWx0VmFsdWUiLCJjaGFubmVsVHlwZXMiLCJjaGFubmVsX3R5cGVzIiwib3B0aW9ucyIsIm9wdGlvbiIsInVuZGVmaW5lZCIsIm5hbWUiLCJhbmltYXRlZCIsImRlZmF1bHQiLCJzZWN0aW9uIiwiYWNjZXNzb3J5IiwidGh1bWJuYWlsIiwibWVkaWFHYWxsZXJ5IiwiaXRlbXMiLCJpdGVtIiwiZmlsZSIsInNpemUiLCJ0ZXh0RGlzcGxheSIsImNvbnRlbnQiLCJzZXBhcmF0b3IiLCJkaXZpZGVyIiwic3BhY2luZyIsImZpbGVVcGxvYWQiXSwibWFwcGluZ3MiOiJBQUFBLFNB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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../../src/transformers/reverse/component.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../../src/transformers/reverse/component.ts"],"names":[],"mappings":"AAAA,OAAO,EASL,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,mDAAmD,EAQxD,KAAK,wBAAwB,EAG9B,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,cAAc,CAAA;AACvC,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAEjF,wBAAgB,oCAAoC,CAClD,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,SAAS,GACjB,uBAAuB,GAAG,mDAAmD,CAkC/E;AAED,wBAAgB,oDAAoD,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,iBAAiB,GAAG,wBAAwB,CASnI;AAED,wBAAgB,kDAAkD,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,gBAAgB,GAAG,uBAAuB,CAM/H"}
|
|
@@ -26,6 +26,8 @@ export function transformComponentToDiscordComponent(bot, payload) {
|
|
|
26
26
|
return transformThumbnailComponent(bot, payload);
|
|
27
27
|
case MessageComponentTypes.Label:
|
|
28
28
|
return transformLabelComponent(bot, payload);
|
|
29
|
+
case MessageComponentTypes.FileUpload:
|
|
30
|
+
return transformFileUploadComponent(bot, payload);
|
|
29
31
|
case MessageComponentTypes.Separator:
|
|
30
32
|
case MessageComponentTypes.TextDisplay:
|
|
31
33
|
// As of now they are compatible
|
|
@@ -178,5 +180,15 @@ function transformLabelComponent(bot, payload) {
|
|
|
178
180
|
component: bot.transformers.reverse.component(bot, payload.component)
|
|
179
181
|
};
|
|
180
182
|
}
|
|
183
|
+
function transformFileUploadComponent(bot, payload) {
|
|
184
|
+
return {
|
|
185
|
+
type: MessageComponentTypes.FileUpload,
|
|
186
|
+
id: payload.id,
|
|
187
|
+
custom_id: payload.customId,
|
|
188
|
+
max_values: payload.maxValues,
|
|
189
|
+
min_values: payload.minValues,
|
|
190
|
+
required: payload.required
|
|
191
|
+
};
|
|
192
|
+
}
|
|
181
193
|
|
|
182
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvcmV2ZXJzZS9jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgdHlwZSBCdXR0b25TdHlsZXMsXG4gIHR5cGUgRGlzY29yZEFjdGlvblJvdyxcbiAgdHlwZSBEaXNjb3JkQnV0dG9uQ29tcG9uZW50LFxuICB0eXBlIERpc2NvcmRDb250YWluZXJDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZEZpbGVDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZExhYmVsQ29tcG9uZW50LFxuICB0eXBlIERpc2NvcmRNZWRpYUdhbGxlcnlDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZE1lZGlhR2FsbGVyeUl0ZW0sXG4gIHR5cGUgRGlzY29yZE1lc3NhZ2VDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZE1lc3NhZ2VDb21wb25lbnRGcm9tTW9kYWxJbnRlcmFjdGlvblJlc3BvbnNlLFxuICB0eXBlIERpc2NvcmRTZWN0aW9uQ29tcG9uZW50LFxuICB0eXBlIERpc2NvcmRTZWxlY3RNZW51Q29tcG9uZW50LFxuICB0eXBlIERpc2NvcmRTdHJpbmdTZWxlY3RJbnRlcmFjdGlvblJlc3BvbnNlRnJvbU1vZGFsLFxuICB0eXBlIERpc2NvcmRUZXh0RGlzcGxheUNvbXBvbmVudCxcbiAgdHlwZSBEaXNjb3JkVGV4dElucHV0Q29tcG9uZW50LFxuICB0eXBlIERpc2NvcmRUZXh0SW5wdXRJbnRlcmFjdGlvblJlc3BvbnNlLFxuICB0eXBlIERpc2NvcmRUaHVtYm5haWxDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZFVuZnVybGVkTWVkaWFJdGVtLFxuICBNZXNzYWdlQ29tcG9uZW50VHlwZXMsXG4gIHR5cGUgVGV4dFN0eWxlcyxcbn0gZnJvbSAnQGRpc2NvcmRlbm8vdHlwZXMnXG5pbXBvcnQgdHlwZSB7IEJvdCB9IGZyb20gJy4uLy4uL2JvdC5qcydcbmltcG9ydCB0eXBlIHsgQ29tcG9uZW50LCBNZWRpYUdhbGxlcnlJdGVtLCBVbmZ1cmxlZE1lZGlhSXRlbSB9IGZyb20gJy4uL3R5cGVzLmpzJ1xuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtQ29tcG9uZW50VG9EaXNjb3JkQ29tcG9uZW50KFxuICBib3Q6IEJvdCxcbiAgcGF5bG9hZDogQ29tcG9uZW50LFxuKTogRGlzY29yZE1lc3NhZ2VDb21wb25lbnQgfCBEaXNjb3JkTWVzc2FnZUNvbXBvbmVudEZyb21Nb2RhbEludGVyYWN0aW9uUmVzcG9uc2Uge1xuICAvLyBUaGlzIHN3aXRjaCBzaG91bGQgaW5jbHVkZSBhbGwgY2FzZXNcbiAgc3dpdGNoIChwYXlsb2FkLnR5cGUpIHtcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5BY3Rpb25Sb3c6XG4gICAgICByZXR1cm4gdHJhbnNmb3JtQWN0aW9uUm93KGJvdCwgcGF5bG9hZClcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5CdXR0b246XG4gICAgICByZXR1cm4gdHJhbnNmb3JtQnV0dG9uQ29tcG9uZW50KGJvdCwgcGF5bG9hZClcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5Db250YWluZXI6XG4gICAgICByZXR1cm4gdHJhbnNmb3JtQ29udGFpbmVyQ29tcG9uZW50KGJvdCwgcGF5bG9hZClcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5UZXh0SW5wdXQ6XG4gICAgICByZXR1cm4gdHJhbnNmb3JtSW5wdXRUZXh0Q29tcG9uZW50KGJvdCwgcGF5bG9hZClcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5TdHJpbmdTZWxlY3Q6XG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuQ2hhbm5lbFNlbGVjdDpcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5Sb2xlU2VsZWN0OlxuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLlVzZXJTZWxlY3Q6XG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuTWVudGlvbmFibGVTZWxlY3Q6XG4gICAgICByZXR1cm4gdHJhbnNmb3JtU2VsZWN0TWVudUNvbXBvbmVudChib3QsIHBheWxvYWQpXG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuU2VjdGlvbjpcbiAgICAgIHJldHVybiB0cmFuc2Zvcm1TZWN0aW9uQ29tcG9uZW50KGJvdCwgcGF5bG9hZClcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5GaWxlOlxuICAgICAgcmV0dXJuIHRyYW5zZm9ybUZpbGVDb21wb25lbnQoYm90LCBwYXlsb2FkKVxuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLk1lZGlhR2FsbGVyeTpcbiAgICAgIHJldHVybiB0cmFuc2Zvcm1NZWRpYUdhbGxlcnlDb21wb25lbnQoYm90LCBwYXlsb2FkKVxuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLlRodW1ibmFpbDpcbiAgICAgIHJldHVybiB0cmFuc2Zvcm1UaHVtYm5haWxDb21wb25lbnQoYm90LCBwYXlsb2FkKVxuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLkxhYmVsOlxuICAgICAgcmV0dXJuIHRyYW5zZm9ybUxhYmVsQ29tcG9uZW50KGJvdCwgcGF5bG9hZClcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5TZXBhcmF0b3I6XG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuVGV4dERpc3BsYXk6XG4gICAgICAvLyBBcyBvZiBub3cgdGhleSBhcmUgY29tcGF0aWJsZVxuICAgICAgcmV0dXJuIHBheWxvYWQgYXMgRGlzY29yZE1lc3NhZ2VDb21wb25lbnRcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtVW5mdXJsZWRNZWRpYUl0ZW1Ub0Rpc2NvcmRVbmZ1cmxlZE1lZGlhSXRlbShib3Q6IEJvdCwgcGF5bG9hZDogVW5mdXJsZWRNZWRpYUl0ZW0pOiBEaXNjb3JkVW5mdXJsZWRNZWRpYUl0ZW0ge1xuICByZXR1cm4ge1xuICAgIHVybDogcGF5bG9hZC51cmwsXG4gICAgcHJveHlfdXJsOiBwYXlsb2FkLnByb3h5VXJsLFxuICAgIGhlaWdodDogcGF5bG9hZC5oZWlnaHQsXG4gICAgd2lkdGg6IHBheWxvYWQud2lkdGgsXG4gICAgY29udGVudF90eXBlOiBwYXlsb2FkLmNvbnRlbnRUeXBlLFxuICAgIGF0dGFjaG1lbnRfaWQ6IHBheWxvYWQuYXR0YWNobWVudElkID8gYm90LnRyYW5zZm9ybWVycy5yZXZlcnNlLnNub3dmbGFrZShwYXlsb2FkLmF0dGFjaG1lbnRJZCkgOiB1bmRlZmluZWQsXG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybU1lZGlhR2FsbGVyeUl0ZW1Ub0Rpc2NvcmRNZWRpYUdhbGxlcnlJdGVtKGJvdDogQm90LCBwYXlsb2FkOiBNZWRpYUdhbGxlcnlJdGVtKTogRGlzY29yZE1lZGlhR2FsbGVyeUl0ZW0ge1xuICByZXR1cm4ge1xuICAgIG1lZGlhOiBib3QudHJhbnNmb3JtZXJzLnJldmVyc2UudW5mdXJsZWRNZWRpYUl0ZW0oYm90LCBwYXlsb2FkLm1lZGlhKSxcbiAgICBkZXNjcmlwdGlvbjogcGF5bG9hZC5kZXNjcmlwdGlvbixcbiAgICBzcG9pbGVyOiBwYXlsb2FkLnNwb2lsZXIsXG4gIH1cbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtQWN0aW9uUm93KGJvdDogQm90LCBwYXlsb2FkOiBDb21wb25lbnQpOiBEaXNjb3JkQWN0aW9uUm93IHtcbiAgcmV0dXJuIHtcbiAgICB0eXBlOiBNZXNzYWdlQ29tcG9uZW50VHlwZXMuQWN0aW9uUm93LFxuICAgIGlkOiBwYXlsb2FkLmlkLFxuICAgIC8vIFRoZSBhY3Rpb25Sb3cuY29tcG9uZW50cyB0eXBlIGlzIGtpbmRhIGFubm95aW5nLCBzbyB3ZSBuZWVkIGEgY2FzdCBmb3IgdGhpc1xuICAgIGNvbXBvbmVudHM6IChwYXlsb2FkLmNvbXBvbmVudHM/Lm1hcCgoY29tcG9uZW50KSA9PiBib3QudHJhbnNmb3JtZXJzLnJldmVyc2UuY29tcG9uZW50KGJvdCwgY29tcG9uZW50KSkgPz8gW10pIGFzIERpc2NvcmRBY3Rpb25Sb3dbJ2NvbXBvbmVudHMnXSxcbiAgfVxufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm1Db250YWluZXJDb21wb25lbnQoYm90OiBCb3QsIHBheWxvYWQ6IENvbXBvbmVudCk6IERpc2NvcmRDb250YWluZXJDb21wb25lbnQge1xuICByZXR1cm4ge1xuICAgIHR5cGU6IE1lc3NhZ2VDb21wb25lbnRUeXBlcy5Db250YWluZXIsXG4gICAgaWQ6IHBheWxvYWQuaWQsXG4gICAgYWNjZW50X2NvbG9yOiBwYXlsb2FkLmFjY2VudENvbG9yLFxuICAgIHNwb2lsZXI6IHBheWxvYWQuc3BvaWxlcixcbiAgICBjb21wb25lbnRzOiAocGF5bG9hZC5jb21wb25lbnRzPy5tYXAoKGNvbXBvbmVudCkgPT4gYm90LnRyYW5zZm9ybWVycy5yZXZlcnNlLmNvbXBvbmVudChib3QsIGNvbXBvbmVudCkpID8/XG4gICAgICBbXSkgYXMgRGlzY29yZENvbnRhaW5lckNvbXBvbmVudFsnY29tcG9uZW50cyddLFxuICB9XG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybUJ1dHRvbkNvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogQ29tcG9uZW50KTogRGlzY29yZEJ1dHRvbkNvbXBvbmVudCB7XG4gIC8vIFNpbmNlIENvbXBvbmVudCBpcyBhIG1lcmdlIG9mIGFsbCBjb21wb25lbnRzLCBzb21lIGNhc3RzIGFyZSBuZWNlc3NhcnlcbiAgcmV0dXJuIHtcbiAgICB0eXBlOiBNZXNzYWdlQ29tcG9uZW50VHlwZXMuQnV0dG9uLFxuICAgIGlkOiBwYXlsb2FkLmlkLFxuICAgIHN0eWxlOiBwYXlsb2FkLnN0eWxlIGFzIEJ1dHRvblN0eWxlcyxcbiAgICBjdXN0b21faWQ6IHBheWxvYWQuY3VzdG9tSWQsXG4gICAgZGlzYWJsZWQ6IHBheWxvYWQuZGlzYWJsZWQsXG4gICAgZW1vamk6IHBheWxvYWQuZW1vamlcbiAgICAgID8ge1xuICAgICAgICAgIGlkOiBwYXlsb2FkLmVtb2ppLmlkID8gYm90LnRyYW5zZm9ybWVycy5yZXZlcnNlLnNub3dmbGFrZShwYXlsb2FkLmVtb2ppLmlkKSA6IG51bGwsXG4gICAgICAgICAgbmFtZTogcGF5bG9hZC5lbW9qaS5uYW1lID8/IG51bGwsXG4gICAgICAgICAgYW5pbWF0ZWQ6IHBheWxvYWQuZW1vamkuYW5pbWF0ZWQsXG4gICAgICAgIH1cbiAgICAgIDogdW5kZWZpbmVkLFxuICAgIGxhYmVsOiBwYXlsb2FkLmxhYmVsLFxuICAgIHVybDogcGF5bG9hZC51cmwsXG4gICAgc2t1X2lkOiBwYXlsb2FkLnNrdUlkID8gYm90LnRyYW5zZm9ybWVycy5yZXZlcnNlLnNub3dmbGFrZShwYXlsb2FkLnNrdUlkKSA6IHVuZGVmaW5lZCxcbiAgfVxufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm1JbnB1dFRleHRDb21wb25lbnQoX2JvdDogQm90LCBwYXlsb2FkOiBDb21wb25lbnQpOiBEaXNjb3JkVGV4dElucHV0Q29tcG9uZW50IHwgRGlzY29yZFRleHRJbnB1dEludGVyYWN0aW9uUmVzcG9uc2Uge1xuICAvLyBTaW5jZSBDb21wb25lbnQgaXMgYSBtZXJnZSBvZiBhbGwgY29tcG9uZW50cywgc29tZSBjYXN0cyBhcmUgbmVjZXNzYXJ5XG4gIHJldHVybiB7XG4gICAgdHlwZTogTWVzc2FnZUNvbXBvbmVudFR5cGVzLlRleHRJbnB1dCxcbiAgICBpZDogcGF5bG9hZC5pZCxcbiAgICBzdHlsZTogcGF5bG9hZC5zdHlsZSBhcyBUZXh0U3R5bGVzLFxuICAgIGN1c3RvbV9pZDogcGF5bG9hZC5jdXN0b21JZCEsXG4gICAgbGFiZWw6IHBheWxvYWQubGFiZWwhLFxuICAgIHZhbHVlOiBwYXlsb2FkLnZhbHVlLFxuICAgIG1heF9sZW5ndGg6IHBheWxvYWQubWF4TGVuZ3RoLFxuICAgIG1pbl9sZW5ndGg6IHBheWxvYWQubWluTGVuZ3RoLFxuICAgIHBsYWNlaG9sZGVyOiBwYXlsb2FkLnBsYWNlaG9sZGVyLFxuICAgIHJlcXVpcmVkOiBwYXlsb2FkLnJlcXVpcmVkLFxuICB9XG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybVNlbGVjdE1lbnVDb21wb25lbnQoYm90OiBCb3QsIHBheWxvYWQ6IENvbXBvbmVudCk6IERpc2NvcmRTZWxlY3RNZW51Q29tcG9uZW50IHwgRGlzY29yZFN0cmluZ1NlbGVjdEludGVyYWN0aW9uUmVzcG9uc2VGcm9tTW9kYWwge1xuICBpZiAocGF5bG9hZC52YWx1ZXMpIHtcbiAgICByZXR1cm4ge1xuICAgICAgdHlwZTogTWVzc2FnZUNvbXBvbmVudFR5cGVzLlN0cmluZ1NlbGVjdCxcbiAgICAgIHZhbHVlczogcGF5bG9hZC52YWx1ZXMsXG4gICAgICBjdXN0b21faWQ6IHBheWxvYWQuY3VzdG9tSWQhLFxuICAgICAgaWQ6IHBheWxvYWQuaWQhLFxuICAgIH1cbiAgfVxuXG4gIHJldHVybiB7XG4gICAgdHlwZTogcGF5bG9hZC50eXBlIGFzIERpc2NvcmRTZWxlY3RNZW51Q29tcG9uZW50Wyd0eXBlJ10sXG4gICAgaWQ6IHBheWxvYWQuaWQsXG4gICAgY3VzdG9tX2lkOiBwYXlsb2FkLmN1c3RvbUlkISxcbiAgICBjaGFubmVsX3R5cGVzOiBwYXlsb2FkLmNoYW5uZWxUeXBlcyxcbiAgICBkZWZhdWx0X3ZhbHVlczogcGF5bG9hZC5kZWZhdWx0VmFsdWVzPy5tYXAoKGRlZmF1bHRWYWx1ZSkgPT4gKHtcbiAgICAgIGlkOiBib3QudHJhbnNmb3JtZXJzLnJldmVyc2Uuc25vd2ZsYWtlKGRlZmF1bHRWYWx1ZS5pZCksXG4gICAgICB0eXBlOiBkZWZhdWx0VmFsdWUudHlwZSxcbiAgICB9KSksXG4gICAgZGlzYWJsZWQ6IHBheWxvYWQuZGlzYWJsZWQsXG4gICAgbWF4X3ZhbHVlczogcGF5bG9hZC5tYXhWYWx1ZXMsXG4gICAgbWluX3ZhbHVlczogcGF5bG9hZC5taW5WYWx1ZXMsXG4gICAgb3B0aW9uczogcGF5bG9hZC5vcHRpb25zPy5tYXAoKG9wdGlvbikgPT4gKHtcbiAgICAgIGxhYmVsOiBvcHRpb24ubGFiZWwsXG4gICAgICB2YWx1ZTogb3B0aW9uLnZhbHVlLFxuICAgICAgZGVzY3JpcHRpb246IG9wdGlvbi5kZXNjcmlwdGlvbixcbiAgICAgIGVtb2ppOiBvcHRpb24uZW1vamlcbiAgICAgICAgPyB7XG4gICAgICAgICAgICBpZDogb3B0aW9uLmVtb2ppLmlkID8gYm90LnRyYW5zZm9ybWVycy5yZXZlcnNlLnNub3dmbGFrZShvcHRpb24uZW1vamkuaWQpIDogbnVsbCxcbiAgICAgICAgICAgIG5hbWU6IG9wdGlvbi5lbW9qaS5uYW1lID8/IG51bGwsXG4gICAgICAgICAgICBhbmltYXRlZDogb3B0aW9uLmVtb2ppLmFuaW1hdGVkLFxuICAgICAgICAgIH1cbiAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgICBkZWZhdWx0OiBvcHRpb24uZGVmYXVsdCxcbiAgICB9KSksXG4gICAgcGxhY2Vob2xkZXI6IHBheWxvYWQucGxhY2Vob2xkZXIsXG4gICAgcmVxdWlyZWQ6IHBheWxvYWQucmVxdWlyZWQsXG4gIH1cbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtU2VjdGlvbkNvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogQ29tcG9uZW50KTogRGlzY29yZFNlY3Rpb25Db21wb25lbnQge1xuICByZXR1cm4ge1xuICAgIHR5cGU6IE1lc3NhZ2VDb21wb25lbnRUeXBlcy5TZWN0aW9uLFxuICAgIGlkOiBwYXlsb2FkLmlkLFxuICAgIGNvbXBvbmVudHM6IHBheWxvYWQuY29tcG9uZW50cz8ubWFwKChjb21wb25lbnQpID0+IGJvdC50cmFuc2Zvcm1lcnMucmV2ZXJzZS5jb21wb25lbnQoYm90LCBjb21wb25lbnQpKSBhcyBEaXNjb3JkVGV4dERpc3BsYXlDb21wb25lbnRbXSxcbiAgICBhY2Nlc3Nvcnk6IChwYXlsb2FkLmFjY2Vzc29yeSA/IGJvdC50cmFuc2Zvcm1lcnMucmV2ZXJzZS5jb21wb25lbnQoYm90LCBwYXlsb2FkLmFjY2Vzc29yeSkgOiB1bmRlZmluZWQpIGFzIERpc2NvcmRTZWN0aW9uQ29tcG9uZW50WydhY2Nlc3NvcnknXSxcbiAgfVxufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm1GaWxlQ29tcG9uZW50KGJvdDogQm90LCBwYXlsb2FkOiBDb21wb25lbnQpOiBEaXNjb3JkRmlsZUNvbXBvbmVudCB7XG4gIHJldHVybiB7XG4gICAgdHlwZTogTWVzc2FnZUNvbXBvbmVudFR5cGVzLkZpbGUsXG4gICAgaWQ6IHBheWxvYWQuaWQsXG4gICAgZmlsZTogYm90LnRyYW5zZm9ybWVycy5yZXZlcnNlLnVuZnVybGVkTWVkaWFJdGVtKGJvdCwgcGF5bG9hZC5maWxlISksXG4gICAgc3BvaWxlcjogcGF5bG9hZC5zcG9pbGVyLFxuICAgIG5hbWU6IHBheWxvYWQubmFtZSEsXG4gICAgc2l6ZTogcGF5bG9hZC5zaXplISxcbiAgfVxufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm1NZWRpYUdhbGxlcnlDb21wb25lbnQoYm90OiBCb3QsIHBheWxvYWQ6IENvbXBvbmVudCk6IERpc2NvcmRNZWRpYUdhbGxlcnlDb21wb25lbnQge1xuICByZXR1cm4ge1xuICAgIHR5cGU6IE1lc3NhZ2VDb21wb25lbnRUeXBlcy5NZWRpYUdhbGxlcnksXG4gICAgaWQ6IHBheWxvYWQuaWQsXG4gICAgaXRlbXM6IHBheWxvYWQuaXRlbXM/Lm1hcCgoaXRlbSkgPT4gYm90LnRyYW5zZm9ybWVycy5yZXZlcnNlLm1lZGlhR2FsbGVyeUl0ZW0oYm90LCBpdGVtKSkgPz8gW10sXG4gIH1cbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtVGh1bWJuYWlsQ29tcG9uZW50KGJvdDogQm90LCBwYXlsb2FkOiBDb21wb25lbnQpOiBEaXNjb3JkVGh1bWJuYWlsQ29tcG9uZW50IHtcbiAgcmV0dXJuIHtcbiAgICB0eXBlOiBNZXNzYWdlQ29tcG9uZW50VHlwZXMuVGh1bWJuYWlsLFxuICAgIGlkOiBwYXlsb2FkLmlkLFxuICAgIG1lZGlhOiBib3QudHJhbnNmb3JtZXJzLnJldmVyc2UudW5mdXJsZWRNZWRpYUl0ZW0oYm90LCBwYXlsb2FkLm1lZGlhISksXG4gICAgZGVzY3JpcHRpb246IHBheWxvYWQuZGVzY3JpcHRpb24sXG4gICAgc3BvaWxlcjogcGF5bG9hZC5zcG9pbGVyLFxuICB9XG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybUxhYmVsQ29tcG9uZW50KGJvdDogQm90LCBwYXlsb2FkOiBDb21wb25lbnQpOiBEaXNjb3JkTGFiZWxDb21wb25lbnQge1xuICByZXR1cm4ge1xuICAgIHR5cGU6IE1lc3NhZ2VDb21wb25lbnRUeXBlcy5MYWJlbCxcbiAgICBpZDogcGF5bG9hZC5pZCxcbiAgICBsYWJlbDogcGF5bG9hZC5sYWJlbCEsXG4gICAgZGVzY3JpcHRpb246IHBheWxvYWQuZGVzY3JpcHRpb24sXG4gICAgY29tcG9uZW50OiBib3QudHJhbnNmb3JtZXJzLnJldmVyc2UuY29tcG9uZW50KGJvdCwgcGF5bG9hZC5jb21wb25lbnQhKSBhcyBEaXNjb3JkTGFiZWxDb21wb25lbnRbJ2NvbXBvbmVudCddLFxuICB9XG59XG4iXSwibmFtZXMiOlsiTWVzc2FnZUNvbXBvbmVudFR5cGVzIiwidHJhbnNmb3JtQ29tcG9uZW50VG9EaXNjb3JkQ29tcG9uZW50IiwiYm90IiwicGF5bG9hZCIsInR5cGUiLCJBY3Rpb25Sb3ciLCJ0cmFuc2Zvcm1BY3Rpb25Sb3ciLCJCdXR0b24iLCJ0cmFuc2Zvcm1CdXR0b25Db21wb25lbnQiLCJDb250YWluZXIiLCJ0cmFuc2Zvcm1Db250YWluZXJDb21wb25lbnQiLCJUZXh0SW5wdXQiLCJ0cmFuc2Zvcm1JbnB1dFRleHRDb21wb25lbnQiLCJTdHJpbmdTZWxlY3QiLCJDaGFubmVsU2VsZWN0IiwiUm9sZVNlbGVjdCIsIlVzZXJTZWxlY3QiLCJNZW50aW9uYWJsZVNlbGVjdCIsInRyYW5zZm9ybVNlbGVjdE1lbnVDb21wb25lbnQiLCJTZWN0aW9uIiwidHJhbnNmb3JtU2VjdGlvbkNvbXBvbmVudCIsIkZpbGUiLCJ0cmFuc2Zvcm1GaWxlQ29tcG9uZW50IiwiTWVkaWFHYWxsZXJ5IiwidHJhbnNmb3JtTWVkaWFHYWxsZXJ5Q29tcG9uZW50IiwiVGh1bWJuYWlsIiwidHJhbnNmb3JtVGh1bWJuYWlsQ29tcG9uZW50IiwiTGFiZWwiLCJ0cmFuc2Zvcm1MYWJlbENvbXBvbmVudCIsIlNlcGFyYXRvciIsIlRleHREaXNwbGF5IiwidHJhbnNmb3JtVW5mdXJsZWRNZWRpYUl0ZW1Ub0Rpc2NvcmRVbmZ1cmxlZE1lZGlhSXRlbSIsInVybCIsInByb3h5X3VybCIsInByb3h5VXJsIiwiaGVpZ2h0Iiwid2lkdGgiLCJjb250ZW50X3R5cGUiLCJjb250ZW50VHlwZSIsImF0dGFjaG1lbnRfaWQiLCJhdHRhY2htZW50SWQiLCJ0cmFuc2Zvcm1lcnMiLCJyZXZlcnNlIiwic25vd2ZsYWtlIiwidW5kZWZpbmVkIiwidHJhbnNmb3JtTWVkaWFHYWxsZXJ5SXRlbVRvRGlzY29yZE1lZGlhR2FsbGVyeUl0ZW0iLCJtZWRpYSIsInVuZnVybGVkTWVkaWFJdGVtIiwiZGVzY3JpcHRpb24iLCJzcG9pbGVyIiwiaWQiLCJjb21wb25lbnRzIiwibWFwIiwiY29tcG9uZW50IiwiYWNjZW50X2NvbG9yIiwiYWNjZW50Q29sb3IiLCJzdHlsZSIsImN1c3RvbV9pZCIsImN1c3RvbUlkIiwiZGlzYWJsZWQiLCJlbW9qaSIsIm5hbWUiLCJhbmltYXRlZCIsImxhYmVsIiwic2t1X2lkIiwic2t1SWQiLCJfYm90IiwidmFsdWUiLCJtYXhfbGVuZ3RoIiwibWF4TGVuZ3RoIiwibWluX2xlbmd0aCIsIm1pbkxlbmd0aCIsInBsYWNlaG9sZGVyIiwicmVxdWlyZWQiLCJ2YWx1ZXMiLCJjaGFubmVsX3R5cGVzIiwiY2hhbm5lbFR5cGVzIiwiZGVmYXVsdF92YWx1ZXMiLCJkZWZhdWx0VmFsdWVzIiwiZGVmYXVsdFZhbHVlIiwibWF4X3ZhbHVlcyIsIm1heFZhbHVlcyIsIm1pbl92YWx1ZXMiLCJtaW5WYWx1ZXMiLCJvcHRpb25zIiwib3B0aW9uIiwiZGVmYXVsdCIsImFjY2Vzc29yeSIsImZpbGUiLCJzaXplIiwiaXRlbXMiLCJpdGVtIiwibWVkaWFHYWxsZXJ5SXRlbSJdLCJtYXBwaW5ncyI6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
|
|
194
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvcmV2ZXJzZS9jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgdHlwZSBCdXR0b25TdHlsZXMsXG4gIHR5cGUgRGlzY29yZEFjdGlvblJvdyxcbiAgdHlwZSBEaXNjb3JkQnV0dG9uQ29tcG9uZW50LFxuICB0eXBlIERpc2NvcmRDb250YWluZXJDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZEZpbGVDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZEZpbGVVcGxvYWRDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZExhYmVsQ29tcG9uZW50LFxuICB0eXBlIERpc2NvcmRNZWRpYUdhbGxlcnlDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZE1lZGlhR2FsbGVyeUl0ZW0sXG4gIHR5cGUgRGlzY29yZE1lc3NhZ2VDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZE1lc3NhZ2VDb21wb25lbnRGcm9tTW9kYWxJbnRlcmFjdGlvblJlc3BvbnNlLFxuICB0eXBlIERpc2NvcmRTZWN0aW9uQ29tcG9uZW50LFxuICB0eXBlIERpc2NvcmRTZWxlY3RNZW51Q29tcG9uZW50LFxuICB0eXBlIERpc2NvcmRTdHJpbmdTZWxlY3RJbnRlcmFjdGlvblJlc3BvbnNlRnJvbU1vZGFsLFxuICB0eXBlIERpc2NvcmRUZXh0RGlzcGxheUNvbXBvbmVudCxcbiAgdHlwZSBEaXNjb3JkVGV4dElucHV0Q29tcG9uZW50LFxuICB0eXBlIERpc2NvcmRUZXh0SW5wdXRJbnRlcmFjdGlvblJlc3BvbnNlLFxuICB0eXBlIERpc2NvcmRUaHVtYm5haWxDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZFVuZnVybGVkTWVkaWFJdGVtLFxuICBNZXNzYWdlQ29tcG9uZW50VHlwZXMsXG4gIHR5cGUgVGV4dFN0eWxlcyxcbn0gZnJvbSAnQGRpc2NvcmRlbm8vdHlwZXMnXG5pbXBvcnQgdHlwZSB7IEJvdCB9IGZyb20gJy4uLy4uL2JvdC5qcydcbmltcG9ydCB0eXBlIHsgQ29tcG9uZW50LCBNZWRpYUdhbGxlcnlJdGVtLCBVbmZ1cmxlZE1lZGlhSXRlbSB9IGZyb20gJy4uL3R5cGVzLmpzJ1xuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtQ29tcG9uZW50VG9EaXNjb3JkQ29tcG9uZW50KFxuICBib3Q6IEJvdCxcbiAgcGF5bG9hZDogQ29tcG9uZW50LFxuKTogRGlzY29yZE1lc3NhZ2VDb21wb25lbnQgfCBEaXNjb3JkTWVzc2FnZUNvbXBvbmVudEZyb21Nb2RhbEludGVyYWN0aW9uUmVzcG9uc2Uge1xuICAvLyBUaGlzIHN3aXRjaCBzaG91bGQgaW5jbHVkZSBhbGwgY2FzZXNcbiAgc3dpdGNoIChwYXlsb2FkLnR5cGUpIHtcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5BY3Rpb25Sb3c6XG4gICAgICByZXR1cm4gdHJhbnNmb3JtQWN0aW9uUm93KGJvdCwgcGF5bG9hZClcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5CdXR0b246XG4gICAgICByZXR1cm4gdHJhbnNmb3JtQnV0dG9uQ29tcG9uZW50KGJvdCwgcGF5bG9hZClcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5Db250YWluZXI6XG4gICAgICByZXR1cm4gdHJhbnNmb3JtQ29udGFpbmVyQ29tcG9uZW50KGJvdCwgcGF5bG9hZClcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5UZXh0SW5wdXQ6XG4gICAgICByZXR1cm4gdHJhbnNmb3JtSW5wdXRUZXh0Q29tcG9uZW50KGJvdCwgcGF5bG9hZClcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5TdHJpbmdTZWxlY3Q6XG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuQ2hhbm5lbFNlbGVjdDpcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5Sb2xlU2VsZWN0OlxuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLlVzZXJTZWxlY3Q6XG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuTWVudGlvbmFibGVTZWxlY3Q6XG4gICAgICByZXR1cm4gdHJhbnNmb3JtU2VsZWN0TWVudUNvbXBvbmVudChib3QsIHBheWxvYWQpXG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuU2VjdGlvbjpcbiAgICAgIHJldHVybiB0cmFuc2Zvcm1TZWN0aW9uQ29tcG9uZW50KGJvdCwgcGF5bG9hZClcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5GaWxlOlxuICAgICAgcmV0dXJuIHRyYW5zZm9ybUZpbGVDb21wb25lbnQoYm90LCBwYXlsb2FkKVxuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLk1lZGlhR2FsbGVyeTpcbiAgICAgIHJldHVybiB0cmFuc2Zvcm1NZWRpYUdhbGxlcnlDb21wb25lbnQoYm90LCBwYXlsb2FkKVxuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLlRodW1ibmFpbDpcbiAgICAgIHJldHVybiB0cmFuc2Zvcm1UaHVtYm5haWxDb21wb25lbnQoYm90LCBwYXlsb2FkKVxuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLkxhYmVsOlxuICAgICAgcmV0dXJuIHRyYW5zZm9ybUxhYmVsQ29tcG9uZW50KGJvdCwgcGF5bG9hZClcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5GaWxlVXBsb2FkOlxuICAgICAgcmV0dXJuIHRyYW5zZm9ybUZpbGVVcGxvYWRDb21wb25lbnQoYm90LCBwYXlsb2FkKVxuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLlNlcGFyYXRvcjpcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5UZXh0RGlzcGxheTpcbiAgICAgIC8vIEFzIG9mIG5vdyB0aGV5IGFyZSBjb21wYXRpYmxlXG4gICAgICByZXR1cm4gcGF5bG9hZCBhcyBEaXNjb3JkTWVzc2FnZUNvbXBvbmVudFxuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm1VbmZ1cmxlZE1lZGlhSXRlbVRvRGlzY29yZFVuZnVybGVkTWVkaWFJdGVtKGJvdDogQm90LCBwYXlsb2FkOiBVbmZ1cmxlZE1lZGlhSXRlbSk6IERpc2NvcmRVbmZ1cmxlZE1lZGlhSXRlbSB7XG4gIHJldHVybiB7XG4gICAgdXJsOiBwYXlsb2FkLnVybCxcbiAgICBwcm94eV91cmw6IHBheWxvYWQucHJveHlVcmwsXG4gICAgaGVpZ2h0OiBwYXlsb2FkLmhlaWdodCxcbiAgICB3aWR0aDogcGF5bG9hZC53aWR0aCxcbiAgICBjb250ZW50X3R5cGU6IHBheWxvYWQuY29udGVudFR5cGUsXG4gICAgYXR0YWNobWVudF9pZDogcGF5bG9hZC5hdHRhY2htZW50SWQgPyBib3QudHJhbnNmb3JtZXJzLnJldmVyc2Uuc25vd2ZsYWtlKHBheWxvYWQuYXR0YWNobWVudElkKSA6IHVuZGVmaW5lZCxcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtTWVkaWFHYWxsZXJ5SXRlbVRvRGlzY29yZE1lZGlhR2FsbGVyeUl0ZW0oYm90OiBCb3QsIHBheWxvYWQ6IE1lZGlhR2FsbGVyeUl0ZW0pOiBEaXNjb3JkTWVkaWFHYWxsZXJ5SXRlbSB7XG4gIHJldHVybiB7XG4gICAgbWVkaWE6IGJvdC50cmFuc2Zvcm1lcnMucmV2ZXJzZS51bmZ1cmxlZE1lZGlhSXRlbShib3QsIHBheWxvYWQubWVkaWEpLFxuICAgIGRlc2NyaXB0aW9uOiBwYXlsb2FkLmRlc2NyaXB0aW9uLFxuICAgIHNwb2lsZXI6IHBheWxvYWQuc3BvaWxlcixcbiAgfVxufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm1BY3Rpb25Sb3coYm90OiBCb3QsIHBheWxvYWQ6IENvbXBvbmVudCk6IERpc2NvcmRBY3Rpb25Sb3cge1xuICByZXR1cm4ge1xuICAgIHR5cGU6IE1lc3NhZ2VDb21wb25lbnRUeXBlcy5BY3Rpb25Sb3csXG4gICAgaWQ6IHBheWxvYWQuaWQsXG4gICAgLy8gVGhlIGFjdGlvblJvdy5jb21wb25lbnRzIHR5cGUgaXMga2luZGEgYW5ub3lpbmcsIHNvIHdlIG5lZWQgYSBjYXN0IGZvciB0aGlzXG4gICAgY29tcG9uZW50czogKHBheWxvYWQuY29tcG9uZW50cz8ubWFwKChjb21wb25lbnQpID0+IGJvdC50cmFuc2Zvcm1lcnMucmV2ZXJzZS5jb21wb25lbnQoYm90LCBjb21wb25lbnQpKSA/PyBbXSkgYXMgRGlzY29yZEFjdGlvblJvd1snY29tcG9uZW50cyddLFxuICB9XG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybUNvbnRhaW5lckNvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogQ29tcG9uZW50KTogRGlzY29yZENvbnRhaW5lckNvbXBvbmVudCB7XG4gIHJldHVybiB7XG4gICAgdHlwZTogTWVzc2FnZUNvbXBvbmVudFR5cGVzLkNvbnRhaW5lcixcbiAgICBpZDogcGF5bG9hZC5pZCxcbiAgICBhY2NlbnRfY29sb3I6IHBheWxvYWQuYWNjZW50Q29sb3IsXG4gICAgc3BvaWxlcjogcGF5bG9hZC5zcG9pbGVyLFxuICAgIGNvbXBvbmVudHM6IChwYXlsb2FkLmNvbXBvbmVudHM/Lm1hcCgoY29tcG9uZW50KSA9PiBib3QudHJhbnNmb3JtZXJzLnJldmVyc2UuY29tcG9uZW50KGJvdCwgY29tcG9uZW50KSkgPz9cbiAgICAgIFtdKSBhcyBEaXNjb3JkQ29udGFpbmVyQ29tcG9uZW50Wydjb21wb25lbnRzJ10sXG4gIH1cbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtQnV0dG9uQ29tcG9uZW50KGJvdDogQm90LCBwYXlsb2FkOiBDb21wb25lbnQpOiBEaXNjb3JkQnV0dG9uQ29tcG9uZW50IHtcbiAgLy8gU2luY2UgQ29tcG9uZW50IGlzIGEgbWVyZ2Ugb2YgYWxsIGNvbXBvbmVudHMsIHNvbWUgY2FzdHMgYXJlIG5lY2Vzc2FyeVxuICByZXR1cm4ge1xuICAgIHR5cGU6IE1lc3NhZ2VDb21wb25lbnRUeXBlcy5CdXR0b24sXG4gICAgaWQ6IHBheWxvYWQuaWQsXG4gICAgc3R5bGU6IHBheWxvYWQuc3R5bGUgYXMgQnV0dG9uU3R5bGVzLFxuICAgIGN1c3RvbV9pZDogcGF5bG9hZC5jdXN0b21JZCxcbiAgICBkaXNhYmxlZDogcGF5bG9hZC5kaXNhYmxlZCxcbiAgICBlbW9qaTogcGF5bG9hZC5lbW9qaVxuICAgICAgPyB7XG4gICAgICAgICAgaWQ6IHBheWxvYWQuZW1vamkuaWQgPyBib3QudHJhbnNmb3JtZXJzLnJldmVyc2Uuc25vd2ZsYWtlKHBheWxvYWQuZW1vamkuaWQpIDogbnVsbCxcbiAgICAgICAgICBuYW1lOiBwYXlsb2FkLmVtb2ppLm5hbWUgPz8gbnVsbCxcbiAgICAgICAgICBhbmltYXRlZDogcGF5bG9hZC5lbW9qaS5hbmltYXRlZCxcbiAgICAgICAgfVxuICAgICAgOiB1bmRlZmluZWQsXG4gICAgbGFiZWw6IHBheWxvYWQubGFiZWwsXG4gICAgdXJsOiBwYXlsb2FkLnVybCxcbiAgICBza3VfaWQ6IHBheWxvYWQuc2t1SWQgPyBib3QudHJhbnNmb3JtZXJzLnJldmVyc2Uuc25vd2ZsYWtlKHBheWxvYWQuc2t1SWQpIDogdW5kZWZpbmVkLFxuICB9XG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybUlucHV0VGV4dENvbXBvbmVudChfYm90OiBCb3QsIHBheWxvYWQ6IENvbXBvbmVudCk6IERpc2NvcmRUZXh0SW5wdXRDb21wb25lbnQgfCBEaXNjb3JkVGV4dElucHV0SW50ZXJhY3Rpb25SZXNwb25zZSB7XG4gIC8vIFNpbmNlIENvbXBvbmVudCBpcyBhIG1lcmdlIG9mIGFsbCBjb21wb25lbnRzLCBzb21lIGNhc3RzIGFyZSBuZWNlc3NhcnlcbiAgcmV0dXJuIHtcbiAgICB0eXBlOiBNZXNzYWdlQ29tcG9uZW50VHlwZXMuVGV4dElucHV0LFxuICAgIGlkOiBwYXlsb2FkLmlkLFxuICAgIHN0eWxlOiBwYXlsb2FkLnN0eWxlIGFzIFRleHRTdHlsZXMsXG4gICAgY3VzdG9tX2lkOiBwYXlsb2FkLmN1c3RvbUlkISxcbiAgICBsYWJlbDogcGF5bG9hZC5sYWJlbCEsXG4gICAgdmFsdWU6IHBheWxvYWQudmFsdWUsXG4gICAgbWF4X2xlbmd0aDogcGF5bG9hZC5tYXhMZW5ndGgsXG4gICAgbWluX2xlbmd0aDogcGF5bG9hZC5taW5MZW5ndGgsXG4gICAgcGxhY2Vob2xkZXI6IHBheWxvYWQucGxhY2Vob2xkZXIsXG4gICAgcmVxdWlyZWQ6IHBheWxvYWQucmVxdWlyZWQsXG4gIH1cbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtU2VsZWN0TWVudUNvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogQ29tcG9uZW50KTogRGlzY29yZFNlbGVjdE1lbnVDb21wb25lbnQgfCBEaXNjb3JkU3RyaW5nU2VsZWN0SW50ZXJhY3Rpb25SZXNwb25zZUZyb21Nb2RhbCB7XG4gIGlmIChwYXlsb2FkLnZhbHVlcykge1xuICAgIHJldHVybiB7XG4gICAgICB0eXBlOiBNZXNzYWdlQ29tcG9uZW50VHlwZXMuU3RyaW5nU2VsZWN0LFxuICAgICAgdmFsdWVzOiBwYXlsb2FkLnZhbHVlcyxcbiAgICAgIGN1c3RvbV9pZDogcGF5bG9hZC5jdXN0b21JZCEsXG4gICAgICBpZDogcGF5bG9hZC5pZCEsXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHtcbiAgICB0eXBlOiBwYXlsb2FkLnR5cGUgYXMgRGlzY29yZFNlbGVjdE1lbnVDb21wb25lbnRbJ3R5cGUnXSxcbiAgICBpZDogcGF5bG9hZC5pZCxcbiAgICBjdXN0b21faWQ6IHBheWxvYWQuY3VzdG9tSWQhLFxuICAgIGNoYW5uZWxfdHlwZXM6IHBheWxvYWQuY2hhbm5lbFR5cGVzLFxuICAgIGRlZmF1bHRfdmFsdWVzOiBwYXlsb2FkLmRlZmF1bHRWYWx1ZXM/Lm1hcCgoZGVmYXVsdFZhbHVlKSA9PiAoe1xuICAgICAgaWQ6IGJvdC50cmFuc2Zvcm1lcnMucmV2ZXJzZS5zbm93Zmxha2UoZGVmYXVsdFZhbHVlLmlkKSxcbiAgICAgIHR5cGU6IGRlZmF1bHRWYWx1ZS50eXBlLFxuICAgIH0pKSxcbiAgICBkaXNhYmxlZDogcGF5bG9hZC5kaXNhYmxlZCxcbiAgICBtYXhfdmFsdWVzOiBwYXlsb2FkLm1heFZhbHVlcyxcbiAgICBtaW5fdmFsdWVzOiBwYXlsb2FkLm1pblZhbHVlcyxcbiAgICBvcHRpb25zOiBwYXlsb2FkLm9wdGlvbnM/Lm1hcCgob3B0aW9uKSA9PiAoe1xuICAgICAgbGFiZWw6IG9wdGlvbi5sYWJlbCxcbiAgICAgIHZhbHVlOiBvcHRpb24udmFsdWUsXG4gICAgICBkZXNjcmlwdGlvbjogb3B0aW9uLmRlc2NyaXB0aW9uLFxuICAgICAgZW1vamk6IG9wdGlvbi5lbW9qaVxuICAgICAgICA/IHtcbiAgICAgICAgICAgIGlkOiBvcHRpb24uZW1vamkuaWQgPyBib3QudHJhbnNmb3JtZXJzLnJldmVyc2Uuc25vd2ZsYWtlKG9wdGlvbi5lbW9qaS5pZCkgOiBudWxsLFxuICAgICAgICAgICAgbmFtZTogb3B0aW9uLmVtb2ppLm5hbWUgPz8gbnVsbCxcbiAgICAgICAgICAgIGFuaW1hdGVkOiBvcHRpb24uZW1vamkuYW5pbWF0ZWQsXG4gICAgICAgICAgfVxuICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICAgIGRlZmF1bHQ6IG9wdGlvbi5kZWZhdWx0LFxuICAgIH0pKSxcbiAgICBwbGFjZWhvbGRlcjogcGF5bG9hZC5wbGFjZWhvbGRlcixcbiAgICByZXF1aXJlZDogcGF5bG9hZC5yZXF1aXJlZCxcbiAgfVxufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm1TZWN0aW9uQ29tcG9uZW50KGJvdDogQm90LCBwYXlsb2FkOiBDb21wb25lbnQpOiBEaXNjb3JkU2VjdGlvbkNvbXBvbmVudCB7XG4gIHJldHVybiB7XG4gICAgdHlwZTogTWVzc2FnZUNvbXBvbmVudFR5cGVzLlNlY3Rpb24sXG4gICAgaWQ6IHBheWxvYWQuaWQsXG4gICAgY29tcG9uZW50czogcGF5bG9hZC5jb21wb25lbnRzPy5tYXAoKGNvbXBvbmVudCkgPT4gYm90LnRyYW5zZm9ybWVycy5yZXZlcnNlLmNvbXBvbmVudChib3QsIGNvbXBvbmVudCkpIGFzIERpc2NvcmRUZXh0RGlzcGxheUNvbXBvbmVudFtdLFxuICAgIGFjY2Vzc29yeTogKHBheWxvYWQuYWNjZXNzb3J5ID8gYm90LnRyYW5zZm9ybWVycy5yZXZlcnNlLmNvbXBvbmVudChib3QsIHBheWxvYWQuYWNjZXNzb3J5KSA6IHVuZGVmaW5lZCkgYXMgRGlzY29yZFNlY3Rpb25Db21wb25lbnRbJ2FjY2Vzc29yeSddLFxuICB9XG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybUZpbGVDb21wb25lbnQoYm90OiBCb3QsIHBheWxvYWQ6IENvbXBvbmVudCk6IERpc2NvcmRGaWxlQ29tcG9uZW50IHtcbiAgcmV0dXJuIHtcbiAgICB0eXBlOiBNZXNzYWdlQ29tcG9uZW50VHlwZXMuRmlsZSxcbiAgICBpZDogcGF5bG9hZC5pZCxcbiAgICBmaWxlOiBib3QudHJhbnNmb3JtZXJzLnJldmVyc2UudW5mdXJsZWRNZWRpYUl0ZW0oYm90LCBwYXlsb2FkLmZpbGUhKSxcbiAgICBzcG9pbGVyOiBwYXlsb2FkLnNwb2lsZXIsXG4gICAgbmFtZTogcGF5bG9hZC5uYW1lISxcbiAgICBzaXplOiBwYXlsb2FkLnNpemUhLFxuICB9XG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybU1lZGlhR2FsbGVyeUNvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogQ29tcG9uZW50KTogRGlzY29yZE1lZGlhR2FsbGVyeUNvbXBvbmVudCB7XG4gIHJldHVybiB7XG4gICAgdHlwZTogTWVzc2FnZUNvbXBvbmVudFR5cGVzLk1lZGlhR2FsbGVyeSxcbiAgICBpZDogcGF5bG9hZC5pZCxcbiAgICBpdGVtczogcGF5bG9hZC5pdGVtcz8ubWFwKChpdGVtKSA9PiBib3QudHJhbnNmb3JtZXJzLnJldmVyc2UubWVkaWFHYWxsZXJ5SXRlbShib3QsIGl0ZW0pKSA/PyBbXSxcbiAgfVxufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm1UaHVtYm5haWxDb21wb25lbnQoYm90OiBCb3QsIHBheWxvYWQ6IENvbXBvbmVudCk6IERpc2NvcmRUaHVtYm5haWxDb21wb25lbnQge1xuICByZXR1cm4ge1xuICAgIHR5cGU6IE1lc3NhZ2VDb21wb25lbnRUeXBlcy5UaHVtYm5haWwsXG4gICAgaWQ6IHBheWxvYWQuaWQsXG4gICAgbWVkaWE6IGJvdC50cmFuc2Zvcm1lcnMucmV2ZXJzZS51bmZ1cmxlZE1lZGlhSXRlbShib3QsIHBheWxvYWQubWVkaWEhKSxcbiAgICBkZXNjcmlwdGlvbjogcGF5bG9hZC5kZXNjcmlwdGlvbixcbiAgICBzcG9pbGVyOiBwYXlsb2FkLnNwb2lsZXIsXG4gIH1cbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtTGFiZWxDb21wb25lbnQoYm90OiBCb3QsIHBheWxvYWQ6IENvbXBvbmVudCk6IERpc2NvcmRMYWJlbENvbXBvbmVudCB7XG4gIHJldHVybiB7XG4gICAgdHlwZTogTWVzc2FnZUNvbXBvbmVudFR5cGVzLkxhYmVsLFxuICAgIGlkOiBwYXlsb2FkLmlkLFxuICAgIGxhYmVsOiBwYXlsb2FkLmxhYmVsISxcbiAgICBkZXNjcmlwdGlvbjogcGF5bG9hZC5kZXNjcmlwdGlvbixcbiAgICBjb21wb25lbnQ6IGJvdC50cmFuc2Zvcm1lcnMucmV2ZXJzZS5jb21wb25lbnQoYm90LCBwYXlsb2FkLmNvbXBvbmVudCEpIGFzIERpc2NvcmRMYWJlbENvbXBvbmVudFsnY29tcG9uZW50J10sXG4gIH1cbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtRmlsZVVwbG9hZENvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogQ29tcG9uZW50KTogRGlzY29yZEZpbGVVcGxvYWRDb21wb25lbnQge1xuICByZXR1cm4ge1xuICAgIHR5cGU6IE1lc3NhZ2VDb21wb25lbnRUeXBlcy5GaWxlVXBsb2FkLFxuICAgIGlkOiBwYXlsb2FkLmlkLFxuICAgIGN1c3RvbV9pZDogcGF5bG9hZC5jdXN0b21JZCEsXG4gICAgbWF4X3ZhbHVlczogcGF5bG9hZC5tYXhWYWx1ZXMsXG4gICAgbWluX3ZhbHVlczogcGF5bG9hZC5taW5WYWx1ZXMsXG4gICAgcmVxdWlyZWQ6IHBheWxvYWQucmVxdWlyZWQsXG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJNZXNzYWdlQ29tcG9uZW50VHlwZXMiLCJ0cmFuc2Zvcm1Db21wb25lbnRUb0Rpc2NvcmRDb21wb25lbnQiLCJib3QiLCJwYXlsb2FkIiwidHlwZSIsIkFjdGlvblJvdyIsInRyYW5zZm9ybUFjdGlvblJvdyIsIkJ1dHRvbiIsInRyYW5zZm9ybUJ1dHRvbkNvbXBvbmVudCIsIkNvbnRhaW5lciIsInRyYW5zZm9ybUNvbnRhaW5lckNvbXBvbmVudCIsIlRleHRJbnB1dCIsInRyYW5zZm9ybUlucHV0VGV4dENvbXBvbmVudCIsIlN0cmluZ1NlbGVjdCIsIkNoYW5uZWxTZWxlY3QiLCJSb2xlU2VsZWN0IiwiVXNlclNlbGVjdCIsIk1lbnRpb25hYmxlU2VsZWN0IiwidHJhbnNmb3JtU2VsZWN0TWVudUNvbXBvbmVudCIsIlNlY3Rpb24iLCJ0cmFuc2Zvcm1TZWN0aW9uQ29tcG9uZW50IiwiRmlsZSIsInRyYW5zZm9ybUZpbGVDb21wb25lbnQiLCJNZWRpYUdhbGxlcnkiLCJ0cmFuc2Zvcm1NZWRpYUdhbGxlcnlDb21wb25lbnQiLCJUaHVtYm5haWwiLCJ0cmFuc2Zvcm1UaHVtYm5haWxDb21wb25lbnQiLCJMYWJlbCIsInRyYW5zZm9ybUxhYmVsQ29tcG9uZW50IiwiRmlsZVVwbG9hZCIsInRyYW5zZm9ybUZpbGVVcGxvYWRDb21wb25lbnQiLCJTZXBhcmF0b3IiLCJUZXh0RGlzcGxheSIsInRyYW5zZm9ybVVuZnVybGVkTWVkaWFJdGVtVG9EaXNjb3JkVW5mdXJsZWRNZWRpYUl0ZW0iLCJ1cmwiLCJwcm94eV91cmwiLCJwcm94eVVybCIsImhlaWdodCIsIndpZHRoIiwiY29udGVudF90eXBlIiwiY29udGVudFR5cGUiLCJhdHRhY2htZW50X2lkIiwiYXR0YWNobWVudElkIiwidHJhbnNmb3JtZXJzIiwicmV2ZXJzZSIsInNub3dmbGFrZSIsInVuZGVmaW5lZCIsInRyYW5zZm9ybU1lZGlhR2FsbGVyeUl0ZW1Ub0Rpc2NvcmRNZWRpYUdhbGxlcnlJdGVtIiwibWVkaWEiLCJ1bmZ1cmxlZE1lZGlhSXRlbSIsImRlc2NyaXB0aW9uIiwic3BvaWxlciIsImlkIiwiY29tcG9uZW50cyIsIm1hcCIsImNvbXBvbmVudCIsImFjY2VudF9jb2xvciIsImFjY2VudENvbG9yIiwic3R5bGUiLCJjdXN0b21faWQiLCJjdXN0b21JZCIsImRpc2FibGVkIiwiZW1vamkiLCJuYW1lIiwiYW5pbWF0ZWQiLCJsYWJlbCIsInNrdV9pZCIsInNrdUlkIiwiX2JvdCIsInZhbHVlIiwibWF4X2xlbmd0aCIsIm1heExlbmd0aCIsIm1pbl9sZW5ndGgiLCJtaW5MZW5ndGgiLCJwbGFjZWhvbGRlciIsInJlcXVpcmVkIiwidmFsdWVzIiwiY2hhbm5lbF90eXBlcyIsImNoYW5uZWxUeXBlcyIsImRlZmF1bHRfdmFsdWVzIiwiZGVmYXVsdFZhbHVlcyIsImRlZmF1bHRWYWx1ZSIsIm1heF92YWx1ZXMiLCJtYXhWYWx1ZXMiLCJtaW5fdmFsdWVzIiwibWluVmFsdWVzIiwib3B0aW9ucyIsIm9wdGlvbiIsImRlZmF1bHQiLCJhY2Nlc3NvcnkiLCJmaWxlIiwic2l6ZSIsIml0ZW1zIiwiaXRlbSIsIm1lZGlhR2FsbGVyeUl0ZW0iXSwibWFwcGluZ3MiOiJBQUFBLFNBb0JFQSxxQkFBcUIsUUFFaEIsb0JBQW1CO0FBSTFCLE9BQU8sU0FBU0MscUNBQ2RDLEdBQVEsRUFDUkMsT0FBa0I7SUFFbEIsdUNBQXVDO0lBQ3ZDLE9BQVFBLFFBQVFDLElBQUk7UUFDbEIsS0FBS0osc0JBQXNCSyxTQUFTO1lBQ2xDLE9BQU9DLG1CQUFtQkosS0FBS0M7UUFDakMsS0FBS0gsc0JBQXNCTyxNQUFNO1lBQy9CLE9BQU9DLHlCQUF5Qk4sS0FBS0M7UUFDdkMsS0FBS0gsc0JBQXNCUyxTQUFTO1lBQ2xDLE9BQU9DLDRCQUE0QlIsS0FBS0M7UUFDMUMsS0FBS0gsc0JBQXNCVyxTQUFTO1lBQ2xDLE9BQU9DLDRCQUE0QlYsS0FBS0M7UUFDMUMsS0FBS0gsc0JBQXNCYSxZQUFZO1FBQ3ZDLEtBQUtiLHNCQUFzQmMsYUFBYTtRQUN4QyxLQUFLZCxzQkFBc0JlLFVBQVU7UUFD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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"role.d.ts","sourceRoot":"","sources":["../../src/transformers/role.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAElF,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAIpC,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAElD,eAAO,MAAM,QAAQ,EAAE,IAsCtB,CAAA;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,SAAS,CAAA;CAAE,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"role.d.ts","sourceRoot":"","sources":["../../src/transformers/role.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAElF,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAIpC,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAElD,eAAO,MAAM,QAAQ,EAAE,IAsCtB,CAAA;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,SAAS,CAAA;CAAE,GAAG,IAAI,CA0BnG;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,iBAAiB,GAAG,UAAU,CAWpF"}
|
|
@@ -42,6 +42,7 @@ export function transformRole(bot, payload, extra) {
|
|
|
42
42
|
if (props.position) role.position = payload.position;
|
|
43
43
|
if (props.guildId && extra?.guildId) role.guildId = bot.transformers.snowflake(extra?.guildId);
|
|
44
44
|
if (props.color && payload.color !== undefined) role.color = payload.color;
|
|
45
|
+
if (props.colors && payload.colors) role.colors = bot.transformers.roleColors(bot, payload.colors);
|
|
45
46
|
if (props.permissions && payload.permissions) role.permissions = new Permissions(payload.permissions);
|
|
46
47
|
if (props.icon && payload.icon) role.icon = iconHashToBigInt(payload.icon);
|
|
47
48
|
if (props.unicodeEmoji && payload.unicode_emoji) role.unicodeEmoji = payload.unicode_emoji;
|
|
@@ -66,4 +67,4 @@ export function transformRoleColors(bot, payload) {
|
|
|
66
67
|
return bot.transformers.customizers.roleColors(bot, payload, roleColors);
|
|
67
68
|
}
|
|
68
69
|
|
|
69
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvcm9sZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEJpZ1N0cmluZywgRGlzY29yZFJvbGUsIERpc2NvcmRSb2xlQ29sb3JzIH0gZnJvbSAnQGRpc2NvcmRlbm8vdHlwZXMnXG5pbXBvcnQgeyBpY29uSGFzaFRvQmlnSW50IH0gZnJvbSAnQGRpc2NvcmRlbm8vdXRpbHMnXG5pbXBvcnQgdHlwZSB7IEJvdCB9IGZyb20gJy4uL2JvdC5qcydcbmltcG9ydCB0eXBlIHsgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvciwgU2V0dXBEZXNpcmVkUHJvcHMsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzIH0gZnJvbSAnLi4vZGVzaXJlZFByb3BlcnRpZXMuanMnXG5pbXBvcnQgeyBQZXJtaXNzaW9ucyB9IGZyb20gJy4vdG9nZ2xlcy9QZXJtaXNzaW9ucy5qcydcbmltcG9ydCB7IFJvbGVUb2dnbGVzIH0gZnJvbSAnLi90b2dnbGVzL3JvbGUuanMnXG5pbXBvcnQgdHlwZSB7IFJvbGUsIFJvbGVDb2xvcnMgfSBmcm9tICcuL3R5cGVzLmpzJ1xuXG5leHBvcnQgY29uc3QgYmFzZVJvbGU6IFJvbGUgPSB7XG4gIC8vIFRoaXMgYWxsb3dzIHR5cGVzY3JpcHQgdG8gc3RpbGwgY2hlY2sgZm9yIHR5cGUgZXJyb3JzIG9uIGZ1bmN0aW9ucyBiZWxvd1xuICAuLi4odW5kZWZpbmVkIGFzIHVua25vd24gYXMgUm9sZSksXG5cbiAgZ2V0IHRhZ3MoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGJvdElkOiB0aGlzLmludGVybmFsVGFncz8uYm90SWQsXG4gICAgICBpbnRlZ3JhdGlvbklkOiB0aGlzLmludGVybmFsVGFncz8uaW50ZWdyYXRpb25JZCxcbiAgICAgIHN1YnNjcmlwdGlvbkxpc3RpbmdJZDogdGhpcy5pbnRlcm5hbFRhZ3M/LnN1YnNjcmlwdGlvbkxpc3RpbmdJZCxcbiAgICAgIGF2YWlsYWJsZUZvclB1cmNoYXNlOiB0aGlzLnRvZ2dsZXM/LmF2YWlsYWJsZUZvclB1cmNoYXNlLFxuICAgICAgZ3VpbGRDb25uZWN0aW9uczogdGhpcy50b2dnbGVzPy5ndWlsZENvbm5lY3Rpb25zLFxuICAgICAgcHJlbWl1bVN1YnNjcmliZXI6IHRoaXMudG9nZ2xlcz8ucHJlbWl1bVN1YnNjcmliZXIsXG4gICAgfVxuICB9LFxuICAvKiogSWYgdGhpcyByb2xlIGlzIHNob3dlZCBzZXBhcmF0ZWx5IGluIHRoZSB1c2VyIGxpc3RpbmcgKi9cbiAgZ2V0IGhvaXN0KCkge1xuICAgIHJldHVybiAhIXRoaXMudG9nZ2xlcz8uaGFzKCdob2lzdCcpXG4gIH0sXG4gIC8qKiBXaGV0aGVyIHRoaXMgcm9sZSBpcyBtYW5hZ2VkIGJ5IGFuIGludGVncmF0aW9uICovXG4gIGdldCBtYW5hZ2VkKCkge1xuICAgIHJldHVybiAhIXRoaXMudG9nZ2xlcz8uaGFzKCdtYW5hZ2VkJylcbiAgfSxcbiAgLyoqIFdoZXRoZXIgdGhpcyByb2xlIGlzIG1lbnRpb25hYmxlICovXG4gIGdldCBtZW50aW9uYWJsZSgpIHtcbiAgICByZXR1cm4gISF0aGlzLnRvZ2dsZXM/LmhhcygnbWVudGlvbmFibGUnKVxuICB9LFxuICAvKiogV2hldGhlciB0aGlzIGlzIHRoZSBndWlsZHMgcHJlbWl1bSBzdWJzY3JpYmVyIHJvbGUgKi9cbiAgZ2V0IHByZW1pdW1TdWJzY3JpYmVyKCkge1xuICAgIHJldHVybiAhIXRoaXMudG9nZ2xlcz8uaGFzKCdwcmVtaXVtU3Vic2NyaWJlcicpXG4gIH0sXG4gIC8qKiBXaGV0aGVyIHRoaXMgcm9sZSBpcyBhdmFpbGFibGUgZm9yIHB1cmNoYXNlLiAqL1xuICBnZXQgYXZhaWxhYmxlRm9yUHVyY2hhc2UoKSB7XG4gICAgcmV0dXJuICEhdGhpcy50b2dnbGVzPy5oYXMoJ2F2YWlsYWJsZUZvclB1cmNoYXNlJylcbiAgfSxcbiAgLyoqIFdoZXRoZXIgdGhpcyBpcyBhIGd1aWxkJ3MgbGlua2VkIHJvbGUuICovXG4gIGdldCBndWlsZENvbm5lY3Rpb25zKCkge1xuICAgIHJldHVybiAhIXRoaXMudG9nZ2xlcz8uaGFzKCdndWlsZENvbm5lY3Rpb25zJylcbiAgfSxcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybVJvbGUoYm90OiBCb3QsIHBheWxvYWQ6IERpc2NvcmRSb2xlLCBleHRyYT86IHsgZ3VpbGRJZD86IEJpZ1N0cmluZyB9KTogUm9sZSB7XG4gIGNvbnN0IHJvbGU6IFNldHVwRGVzaXJlZFByb3BzPFJvbGUsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPiA9IE9iamVjdC5jcmVhdGUoYmFzZVJvbGUpXG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5yb2xlXG4gIGlmIChwcm9wcy5pZCAmJiBwYXlsb2FkLmlkKSByb2xlLmlkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5pZClcbiAgLy8gUm9sZSBuYW1lIGNhbiBiZSBhbiBlbXB0eSBzdHJpbmdcbiAgaWYgKHByb3BzLm5hbWUgJiYgcGF5bG9hZC5uYW1lICE9PSB1bmRlZmluZWQpIHJvbGUubmFtZSA9IHBheWxvYWQubmFtZVxuICBpZiAocHJvcHMucG9zaXRpb24pIHJvbGUucG9zaXRpb24gPSBwYXlsb2FkLnBvc2l0aW9uXG4gIGlmIChwcm9wcy5ndWlsZElkICYmIGV4dHJhPy5ndWlsZElkKSByb2xlLmd1aWxkSWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShleHRyYT8uZ3VpbGRJZClcbiAgaWYgKHByb3BzLmNvbG9yICYmIHBheWxvYWQuY29sb3IgIT09IHVuZGVmaW5lZCkgcm9sZS5jb2xvciA9IHBheWxvYWQuY29sb3JcbiAgaWYgKHByb3BzLnBlcm1pc3Npb25zICYmIHBheWxvYWQucGVybWlzc2lvbnMpIHJvbGUucGVybWlzc2lvbnMgPSBuZXcgUGVybWlzc2lvbnMocGF5bG9hZC5wZXJtaXNzaW9ucylcbiAgaWYgKHByb3BzLmljb24gJiYgcGF5bG9hZC5pY29uKSByb2xlLmljb24gPSBpY29uSGFzaFRvQmlnSW50KHBheWxvYWQuaWNvbilcbiAgaWYgKHByb3BzLnVuaWNvZGVFbW9qaSAmJiBwYXlsb2FkLnVuaWNvZGVfZW1vamkpIHJvbGUudW5pY29kZUVtb2ppID0gcGF5bG9hZC51bmljb2RlX2Vtb2ppXG4gIGlmIChwcm9wcy5mbGFncykgcm9sZS5mbGFncyA9IHBheWxvYWQuZmxhZ3NcbiAgaWYgKHByb3BzLnRhZ3MgJiYgcGF5bG9hZC50YWdzKSB7XG4gICAgcm9sZS5pbnRlcm5hbFRhZ3MgPSB7fVxuICAgIGlmIChwYXlsb2FkLnRhZ3MuYm90X2lkKSByb2xlLmludGVybmFsVGFncy5ib3RJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQudGFncy5ib3RfaWQpXG4gICAgaWYgKHBheWxvYWQudGFncy5pbnRlZ3JhdGlvbl9pZCkgcm9sZS5pbnRlcm5hbFRhZ3MuaW50ZWdyYXRpb25JZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQudGFncy5pbnRlZ3JhdGlvbl9pZClcbiAgICBpZiAocGF5bG9hZC50YWdzLnN1YnNjcmlwdGlvbl9saXN0aW5nX2lkKVxuICAgICAgcm9sZS5pbnRlcm5hbFRhZ3Muc3Vic2NyaXB0aW9uTGlzdGluZ0lkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC50YWdzLnN1YnNjcmlwdGlvbl9saXN0aW5nX2lkKVxuICB9XG4gIGlmIChwcm9wcy50b2dnbGVzKSByb2xlLnRvZ2dsZXMgPSBuZXcgUm9sZVRvZ2dsZXMocGF5bG9hZClcblxuICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jdXN0b21pemVycy5yb2xlKGJvdCwgcGF5bG9hZCwgcm9sZSwge1xuICAgIGd1aWxkSWQ6IGV4dHJhPy5ndWlsZElkID8gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UoZXh0cmEuZ3VpbGRJZCkgOiB1bmRlZmluZWQsXG4gIH0pXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm1Sb2xlQ29sb3JzKGJvdDogQm90LCBwYXlsb2FkOiBEaXNjb3JkUm9sZUNvbG9ycyk6IFJvbGVDb2xvcnMge1xuICBjb25zdCByb2xlQ29sb3JzID0ge30gYXMgU2V0dXBEZXNpcmVkUHJvcHM8Um9sZUNvbG9ycywgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5yb2xlQ29sb3JzXG5cbiAgaWYgKHByb3BzLnByaW1hcnlDb2xvciAmJiBwYXlsb2FkLnByaW1hcnlfY29sb3IgIT09IHVuZGVmaW5lZCkgcm9sZUNvbG9ycy5wcmltYXJ5Q29sb3IgPSBwYXlsb2FkLnByaW1hcnlfY29sb3JcbiAgaWYgKHByb3BzLnNlY29uZGFyeUNvbG9yICYmIHBheWxvYWQuc2Vjb25kYXJ5X2NvbG9yICE9PSB1bmRlZmluZWQgJiYgcGF5bG9hZC5zZWNvbmRhcnlfY29sb3IgIT09IG51bGwpXG4gICAgcm9sZUNvbG9ycy5zZWNvbmRhcnlDb2xvciA9IHBheWxvYWQuc2Vjb25kYXJ5X2NvbG9yXG4gIGlmIChwcm9wcy50ZXJ0aWFyeUNvbG9yICYmIHBheWxvYWQudGVydGlhcnlfY29sb3IgIT09IHVuZGVmaW5lZCAmJiBwYXlsb2FkLnRlcnRpYXJ5X2NvbG9yICE9PSBudWxsKVxuICAgIHJvbGVDb2xvcnMudGVydGlhcnlDb2xvciA9IHBheWxvYWQudGVydGlhcnlfY29sb3JcblxuICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jdXN0b21pemVycy5yb2xlQ29sb3JzKGJvdCwgcGF5bG9hZCwgcm9sZUNvbG9ycylcbn1cbiJdLCJuYW1lcyI6WyJpY29uSGFzaFRvQmlnSW50IiwiUGVybWlzc2lvbnMiLCJSb2xlVG9nZ2xlcyIsImJhc2VSb2xlIiwidW5kZWZpbmVkIiwidGFncyIsImJvdElkIiwiaW50ZXJuYWxUYWdzIiwiaW50ZWdyYXRpb25JZCIsInN1YnNjcmlwdGlvbkxpc3RpbmdJZCIsImF2YWlsYWJsZUZvclB1cmNoYXNlIiwidG9nZ2xlcyIsImd1aWxkQ29ubmVjdGlvbnMiLCJwcmVtaXVtU3Vic2NyaWJlciIsImhvaXN0IiwiaGFzIiwibWFuYWdlZCIsIm1lbnRpb25hYmxlIiwidHJhbnNmb3JtUm9sZSIsImJvdCIsInBheWxvYWQiLCJleHRyYSIsInJvbGUiLCJPYmplY3QiLCJjcmVhdGUiLCJwcm9wcyIsInRyYW5zZm9ybWVycyIsImRlc2lyZWRQcm9wZXJ0aWVzIiwiaWQiLCJzbm93Zmxha2UiLCJuYW1lIiwicG9zaXRpb24iLCJndWlsZElkIiwiY29sb3IiLCJwZXJtaXNzaW9ucyIsImljb24iLCJ1bmljb2RlRW1vamkiLCJ1bmljb2RlX2Vtb2ppIiwiZmxhZ3MiLCJib3RfaWQiLCJpbnRlZ3JhdGlvbl9pZCIsInN1YnNjcmlwdGlvbl9saXN0aW5nX2lkIiwiY3VzdG9taXplcnMiLCJ0cmFuc2Zvcm1Sb2xlQ29sb3JzIiwicm9sZUNvbG9ycyIsInByaW1hcnlDb2xvciIsInByaW1hcnlfY29sb3IiLCJzZWNvbmRhcnlDb2xvciIsInNlY29uZGFyeV9jb2xvciIsInRlcnRpYXJ5Q29sb3IiLCJ0ZXJ0aWFyeV9jb2xvciJdLCJtYXBwaW5ncyI6IkFBQ0EsU0FBU0EsZ0JBQWdCLFFBQVEsb0JBQW1CO0FBR3BELFNBQVNDLFdBQVcsUUFBUSwyQkFBMEI7QUFDdEQsU0FBU0MsV0FBVyxRQUFRLG9CQUFtQjtBQUcvQyxPQUFPLE1BQU1DLFdBQWlCO0lBQzVCLDJFQUEyRTtJQUMzRSxHQUFJQyxTQUFTO0lBRWIsSUFBSUMsUUFBTztRQUNULE9BQU87WUFDTEMsT0FBTyxJQUFJLENBQUNDLFlBQVksRUFBRUQ7WUFDMUJFLGVBQWUsSUFBSSxDQUFDRCxZQUFZLEVBQUVDO1lBQ2xDQyx1QkFBdUIsSUFBSSxDQUFDRixZQUFZLEVBQUVFO1lBQzFDQyxzQkFBc0IsSUFBSSxDQUFDQyxPQUFPLEVBQUVE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
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvcm9sZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEJpZ1N0cmluZywgRGlzY29yZFJvbGUsIERpc2NvcmRSb2xlQ29sb3JzIH0gZnJvbSAnQGRpc2NvcmRlbm8vdHlwZXMnXG5pbXBvcnQgeyBpY29uSGFzaFRvQmlnSW50IH0gZnJvbSAnQGRpc2NvcmRlbm8vdXRpbHMnXG5pbXBvcnQgdHlwZSB7IEJvdCB9IGZyb20gJy4uL2JvdC5qcydcbmltcG9ydCB0eXBlIHsgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvciwgU2V0dXBEZXNpcmVkUHJvcHMsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzIH0gZnJvbSAnLi4vZGVzaXJlZFByb3BlcnRpZXMuanMnXG5pbXBvcnQgeyBQZXJtaXNzaW9ucyB9IGZyb20gJy4vdG9nZ2xlcy9QZXJtaXNzaW9ucy5qcydcbmltcG9ydCB7IFJvbGVUb2dnbGVzIH0gZnJvbSAnLi90b2dnbGVzL3JvbGUuanMnXG5pbXBvcnQgdHlwZSB7IFJvbGUsIFJvbGVDb2xvcnMgfSBmcm9tICcuL3R5cGVzLmpzJ1xuXG5leHBvcnQgY29uc3QgYmFzZVJvbGU6IFJvbGUgPSB7XG4gIC8vIFRoaXMgYWxsb3dzIHR5cGVzY3JpcHQgdG8gc3RpbGwgY2hlY2sgZm9yIHR5cGUgZXJyb3JzIG9uIGZ1bmN0aW9ucyBiZWxvd1xuICAuLi4odW5kZWZpbmVkIGFzIHVua25vd24gYXMgUm9sZSksXG5cbiAgZ2V0IHRhZ3MoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGJvdElkOiB0aGlzLmludGVybmFsVGFncz8uYm90SWQsXG4gICAgICBpbnRlZ3JhdGlvbklkOiB0aGlzLmludGVybmFsVGFncz8uaW50ZWdyYXRpb25JZCxcbiAgICAgIHN1YnNjcmlwdGlvbkxpc3RpbmdJZDogdGhpcy5pbnRlcm5hbFRhZ3M/LnN1YnNjcmlwdGlvbkxpc3RpbmdJZCxcbiAgICAgIGF2YWlsYWJsZUZvclB1cmNoYXNlOiB0aGlzLnRvZ2dsZXM/LmF2YWlsYWJsZUZvclB1cmNoYXNlLFxuICAgICAgZ3VpbGRDb25uZWN0aW9uczogdGhpcy50b2dnbGVzPy5ndWlsZENvbm5lY3Rpb25zLFxuICAgICAgcHJlbWl1bVN1YnNjcmliZXI6IHRoaXMudG9nZ2xlcz8ucHJlbWl1bVN1YnNjcmliZXIsXG4gICAgfVxuICB9LFxuICAvKiogSWYgdGhpcyByb2xlIGlzIHNob3dlZCBzZXBhcmF0ZWx5IGluIHRoZSB1c2VyIGxpc3RpbmcgKi9cbiAgZ2V0IGhvaXN0KCkge1xuICAgIHJldHVybiAhIXRoaXMudG9nZ2xlcz8uaGFzKCdob2lzdCcpXG4gIH0sXG4gIC8qKiBXaGV0aGVyIHRoaXMgcm9sZSBpcyBtYW5hZ2VkIGJ5IGFuIGludGVncmF0aW9uICovXG4gIGdldCBtYW5hZ2VkKCkge1xuICAgIHJldHVybiAhIXRoaXMudG9nZ2xlcz8uaGFzKCdtYW5hZ2VkJylcbiAgfSxcbiAgLyoqIFdoZXRoZXIgdGhpcyByb2xlIGlzIG1lbnRpb25hYmxlICovXG4gIGdldCBtZW50aW9uYWJsZSgpIHtcbiAgICByZXR1cm4gISF0aGlzLnRvZ2dsZXM/LmhhcygnbWVudGlvbmFibGUnKVxuICB9LFxuICAvKiogV2hldGhlciB0aGlzIGlzIHRoZSBndWlsZHMgcHJlbWl1bSBzdWJzY3JpYmVyIHJvbGUgKi9cbiAgZ2V0IHByZW1pdW1TdWJzY3JpYmVyKCkge1xuICAgIHJldHVybiAhIXRoaXMudG9nZ2xlcz8uaGFzKCdwcmVtaXVtU3Vic2NyaWJlcicpXG4gIH0sXG4gIC8qKiBXaGV0aGVyIHRoaXMgcm9sZSBpcyBhdmFpbGFibGUgZm9yIHB1cmNoYXNlLiAqL1xuICBnZXQgYXZhaWxhYmxlRm9yUHVyY2hhc2UoKSB7XG4gICAgcmV0dXJuICEhdGhpcy50b2dnbGVzPy5oYXMoJ2F2YWlsYWJsZUZvclB1cmNoYXNlJylcbiAgfSxcbiAgLyoqIFdoZXRoZXIgdGhpcyBpcyBhIGd1aWxkJ3MgbGlua2VkIHJvbGUuICovXG4gIGdldCBndWlsZENvbm5lY3Rpb25zKCkge1xuICAgIHJldHVybiAhIXRoaXMudG9nZ2xlcz8uaGFzKCdndWlsZENvbm5lY3Rpb25zJylcbiAgfSxcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybVJvbGUoYm90OiBCb3QsIHBheWxvYWQ6IERpc2NvcmRSb2xlLCBleHRyYT86IHsgZ3VpbGRJZD86IEJpZ1N0cmluZyB9KTogUm9sZSB7XG4gIGNvbnN0IHJvbGU6IFNldHVwRGVzaXJlZFByb3BzPFJvbGUsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPiA9IE9iamVjdC5jcmVhdGUoYmFzZVJvbGUpXG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5yb2xlXG4gIGlmIChwcm9wcy5pZCAmJiBwYXlsb2FkLmlkKSByb2xlLmlkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5pZClcbiAgLy8gUm9sZSBuYW1lIGNhbiBiZSBhbiBlbXB0eSBzdHJpbmdcbiAgaWYgKHByb3BzLm5hbWUgJiYgcGF5bG9hZC5uYW1lICE9PSB1bmRlZmluZWQpIHJvbGUubmFtZSA9IHBheWxvYWQubmFtZVxuICBpZiAocHJvcHMucG9zaXRpb24pIHJvbGUucG9zaXRpb24gPSBwYXlsb2FkLnBvc2l0aW9uXG4gIGlmIChwcm9wcy5ndWlsZElkICYmIGV4dHJhPy5ndWlsZElkKSByb2xlLmd1aWxkSWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShleHRyYT8uZ3VpbGRJZClcbiAgaWYgKHByb3BzLmNvbG9yICYmIHBheWxvYWQuY29sb3IgIT09IHVuZGVmaW5lZCkgcm9sZS5jb2xvciA9IHBheWxvYWQuY29sb3JcbiAgaWYgKHByb3BzLmNvbG9ycyAmJiBwYXlsb2FkLmNvbG9ycykgcm9sZS5jb2xvcnMgPSBib3QudHJhbnNmb3JtZXJzLnJvbGVDb2xvcnMoYm90LCBwYXlsb2FkLmNvbG9ycylcbiAgaWYgKHByb3BzLnBlcm1pc3Npb25zICYmIHBheWxvYWQucGVybWlzc2lvbnMpIHJvbGUucGVybWlzc2lvbnMgPSBuZXcgUGVybWlzc2lvbnMocGF5bG9hZC5wZXJtaXNzaW9ucylcbiAgaWYgKHByb3BzLmljb24gJiYgcGF5bG9hZC5pY29uKSByb2xlLmljb24gPSBpY29uSGFzaFRvQmlnSW50KHBheWxvYWQuaWNvbilcbiAgaWYgKHByb3BzLnVuaWNvZGVFbW9qaSAmJiBwYXlsb2FkLnVuaWNvZGVfZW1vamkpIHJvbGUudW5pY29kZUVtb2ppID0gcGF5bG9hZC51bmljb2RlX2Vtb2ppXG4gIGlmIChwcm9wcy5mbGFncykgcm9sZS5mbGFncyA9IHBheWxvYWQuZmxhZ3NcbiAgaWYgKHByb3BzLnRhZ3MgJiYgcGF5bG9hZC50YWdzKSB7XG4gICAgcm9sZS5pbnRlcm5hbFRhZ3MgPSB7fVxuICAgIGlmIChwYXlsb2FkLnRhZ3MuYm90X2lkKSByb2xlLmludGVybmFsVGFncy5ib3RJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQudGFncy5ib3RfaWQpXG4gICAgaWYgKHBheWxvYWQudGFncy5pbnRlZ3JhdGlvbl9pZCkgcm9sZS5pbnRlcm5hbFRhZ3MuaW50ZWdyYXRpb25JZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQudGFncy5pbnRlZ3JhdGlvbl9pZClcbiAgICBpZiAocGF5bG9hZC50YWdzLnN1YnNjcmlwdGlvbl9saXN0aW5nX2lkKVxuICAgICAgcm9sZS5pbnRlcm5hbFRhZ3Muc3Vic2NyaXB0aW9uTGlzdGluZ0lkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC50YWdzLnN1YnNjcmlwdGlvbl9saXN0aW5nX2lkKVxuICB9XG4gIGlmIChwcm9wcy50b2dnbGVzKSByb2xlLnRvZ2dsZXMgPSBuZXcgUm9sZVRvZ2dsZXMocGF5bG9hZClcblxuICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jdXN0b21pemVycy5yb2xlKGJvdCwgcGF5bG9hZCwgcm9sZSwge1xuICAgIGd1aWxkSWQ6IGV4dHJhPy5ndWlsZElkID8gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UoZXh0cmEuZ3VpbGRJZCkgOiB1bmRlZmluZWQsXG4gIH0pXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm1Sb2xlQ29sb3JzKGJvdDogQm90LCBwYXlsb2FkOiBEaXNjb3JkUm9sZUNvbG9ycyk6IFJvbGVDb2xvcnMge1xuICBjb25zdCByb2xlQ29sb3JzID0ge30gYXMgU2V0dXBEZXNpcmVkUHJvcHM8Um9sZUNvbG9ycywgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5yb2xlQ29sb3JzXG5cbiAgaWYgKHByb3BzLnByaW1hcnlDb2xvciAmJiBwYXlsb2FkLnByaW1hcnlfY29sb3IgIT09IHVuZGVmaW5lZCkgcm9sZUNvbG9ycy5wcmltYXJ5Q29sb3IgPSBwYXlsb2FkLnByaW1hcnlfY29sb3JcbiAgaWYgKHByb3BzLnNlY29uZGFyeUNvbG9yICYmIHBheWxvYWQuc2Vjb25kYXJ5X2NvbG9yICE9PSB1bmRlZmluZWQgJiYgcGF5bG9hZC5zZWNvbmRhcnlfY29sb3IgIT09IG51bGwpXG4gICAgcm9sZUNvbG9ycy5zZWNvbmRhcnlDb2xvciA9IHBheWxvYWQuc2Vjb25kYXJ5X2NvbG9yXG4gIGlmIChwcm9wcy50ZXJ0aWFyeUNvbG9yICYmIHBheWxvYWQudGVydGlhcnlfY29sb3IgIT09IHVuZGVmaW5lZCAmJiBwYXlsb2FkLnRlcnRpYXJ5X2NvbG9yICE9PSBudWxsKVxuICAgIHJvbGVDb2xvcnMudGVydGlhcnlDb2xvciA9IHBheWxvYWQudGVydGlhcnlfY29sb3JcblxuICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jdXN0b21pemVycy5yb2xlQ29sb3JzKGJvdCwgcGF5bG9hZCwgcm9sZUNvbG9ycylcbn1cbiJdLCJuYW1lcyI6WyJpY29uSGFzaFRvQmlnSW50IiwiUGVybWlzc2lvbnMiLCJSb2xlVG9nZ2xlcyIsImJhc2VSb2xlIiwidW5kZWZpbmVkIiwidGFncyIsImJvdElkIiwiaW50ZXJuYWxUYWdzIiwiaW50ZWdyYXRpb25JZCIsInN1YnNjcmlwdGlvbkxpc3RpbmdJZCIsImF2YWlsYWJsZUZvclB1cmNoYXNlIiwidG9nZ2xlcyIsImd1aWxkQ29ubmVjdGlvbnMiLCJwcmVtaXVtU3Vic2NyaWJlciIsImhvaXN0IiwiaGFzIiwibWFuYWdlZCIsIm1lbnRpb25hYmxlIiwidHJhbnNmb3JtUm9sZSIsImJvdCIsInBheWxvYWQiLCJleHRyYSIsInJvbGUiLCJPYmplY3QiLCJjcmVhdGUiLCJwcm9wcyIsInRyYW5zZm9ybWVycyIsImRlc2lyZWRQcm9wZXJ0aWVzIiwiaWQiLCJzbm93Zmxha2UiLCJuYW1lIiwicG9zaXRpb24iLCJndWlsZElkIiwiY29sb3IiLCJjb2xvcnMiLCJyb2xlQ29sb3JzIiwicGVybWlzc2lvbnMiLCJpY29uIiwidW5pY29kZUVtb2ppIiwidW5pY29kZV9lbW9qaSIsImZsYWdzIiwiYm90X2lkIiwiaW50ZWdyYXRpb25faWQiLCJzdWJzY3JpcHRpb25fbGlzdGluZ19pZCIsImN1c3RvbWl6ZXJzIiwidHJhbnNmb3JtUm9sZUNvbG9ycyIsInByaW1hcnlDb2xvciIsInByaW1hcnlfY29sb3IiLCJzZWNvbmRhcnlDb2xvciIsInNlY29uZGFyeV9jb2xvciIsInRlcnRpYXJ5Q29sb3IiLCJ0ZXJ0aWFyeV9jb2xvciJdLCJtYXBwaW5ncyI6IkFBQ0EsU0FBU0EsZ0JBQWdCLFFBQVEsb0JBQW1CO0FBR3BELFNBQVNDLFdBQVcsUUFBUSwyQkFBMEI7QUFDdEQsU0FBU0MsV0FBVyxRQUFRLG9CQUFtQjtBQUcvQyxPQUFPLE1BQU1DLFdBQWlCO0lBQzVCLDJFQUEyRTtJQUMzRSxHQUFJQyxTQUFTO0lBRWIsSUFBSUMsUUFBTztRQUNULE9BQU87WUFDTEMsT0FBTyxJQUFJLENBQUNDLFlBQVks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
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ActivityTypes, ApplicationCommandOptionTypes, ApplicationCommandPermissionTypes, ApplicationCommandTypes, ApplicationFlags, AttachmentFlags, AuditLogEvents, AutoModerationActionType, AutoModerationEventTypes, AutoModerationTriggerTypes, BigString, ButtonStyles, Camelize, ChannelTypes, DefaultMessageNotificationLevels, DiscordActivityInstanceResource, DiscordActivityLocationKind, DiscordApplicationEventWebhookStatus, DiscordApplicationIntegrationType, DiscordAuditLogChange, DiscordAutoModerationRuleTriggerMetadataPresets, DiscordEntitlementType, DiscordGuildOnboardingMode, DiscordGuildOnboardingPromptType, DiscordInteractionContextType, DiscordInviteType, DiscordPollLayoutType, DiscordScheduledEventRecurrenceRuleFrequency, DiscordScheduledEventRecurrenceRuleMonth, DiscordScheduledEventRecurrenceRuleNWeekday, DiscordScheduledEventRecurrenceRuleWeekday, DiscordSkuType, DiscordSubscriptionStatus, DiscordTeamMemberRole, DiscordTemplateSerializedSourceGuild, DiscordWebhookEventType, EmbedTypes, ExplicitContentFilterLevels, ForumLayout, GuildNsfwLevel, IntegrationExpireBehaviors, InteractionCallbackData, InteractionCallbackOptions, InteractionResponseTypes, InteractionTypes, Localization, MessageActivityTypes, MessageComponentTypes, MessageTypes, MfaLevels, OAuth2Scope, Overwrite, PremiumTiers, PremiumTypes, PresenceStatus, RoleFlags, ScheduledEventEntityType, ScheduledEventPrivacyLevel, ScheduledEventStatus, SelectOption, SeparatorSpacingSize, SkuFlags, SortOrderTypes, StickerFormatTypes, StickerTypes, SystemChannelFlags, TeamMembershipStates, TextStyles, VerificationLevels, VideoQualityModes, WebhookTypes } from '@discordeno/types';
|
|
2
|
-
import type { Collection } from '@discordeno/utils';
|
|
2
|
+
import type { Collection, ImageOptions } from '@discordeno/utils';
|
|
3
3
|
import type { Bot } from '../bot.js';
|
|
4
4
|
import type { InteractionResolvedDataChannel, InteractionResolvedDataMember } from '../commandOptionsParser.js';
|
|
5
5
|
import type { DesiredPropertiesBehavior, TransformersDesiredProperties } from '../desiredProperties.js';
|
|
@@ -265,11 +265,57 @@ export interface AutoModerationRule {
|
|
|
265
265
|
actions: AutoModerationAction[];
|
|
266
266
|
}
|
|
267
267
|
export interface AutoModerationRuleTriggerMetadata {
|
|
268
|
+
/**
|
|
269
|
+
* Substrings which will be searched for in content.
|
|
270
|
+
*
|
|
271
|
+
* @remarks
|
|
272
|
+
* Only present with {@link AutoModerationTriggerTypes.Keyword} and {@link AutoModerationTriggerTypes.MemberProfile}.
|
|
273
|
+
*
|
|
274
|
+
* Can have up to 1000 elements in the array and each string can have up to 60 characters.
|
|
275
|
+
*/
|
|
268
276
|
keywordFilter?: string[];
|
|
277
|
+
/**
|
|
278
|
+
* Regular expression patterns which will be matched against content.
|
|
279
|
+
*
|
|
280
|
+
* @remarks
|
|
281
|
+
* Only present with {@link AutoModerationTriggerTypes.Keyword} and {@link AutoModerationTriggerTypes.MemberProfile}.
|
|
282
|
+
*
|
|
283
|
+
* Only Rust flavored regex is currently supported. Can have up to 10 elements in the array and each string can have up to 260 characters.
|
|
284
|
+
*/
|
|
285
|
+
regexPatterns?: string[];
|
|
286
|
+
/**
|
|
287
|
+
* The Discord pre-defined wordsets which will be searched for in content.
|
|
288
|
+
*
|
|
289
|
+
* @remarks
|
|
290
|
+
* Only present with {@link AutoModerationTriggerTypes.KeywordPreset}.
|
|
291
|
+
*/
|
|
269
292
|
presets?: DiscordAutoModerationRuleTriggerMetadataPresets[];
|
|
293
|
+
/**
|
|
294
|
+
* The substrings which should not trigger the rule.
|
|
295
|
+
*
|
|
296
|
+
* @remarks
|
|
297
|
+
* Only present with {@link AutoModerationTriggerTypes.Keyword}, {@link AutoModerationTriggerTypes.KeywordPreset} and {@link AutoModerationTriggerTypes.MemberProfile}.
|
|
298
|
+
*
|
|
299
|
+
* When used with {@link AutoModerationTriggerTypes.Keyword} and {@link AutoModerationTriggerTypes.MemberProfile}, there can be up to 100 elements in the array and each string can have up to 60 characters.
|
|
300
|
+
* When used with {@link AutoModerationTriggerTypes.KeywordPreset}, there can be up to 1000 elements in the array and each string can have up to 60 characters.
|
|
301
|
+
*/
|
|
270
302
|
allowList?: string[];
|
|
303
|
+
/**
|
|
304
|
+
* Total number of unique role and user mentions allowed per message.
|
|
305
|
+
*
|
|
306
|
+
* @remarks
|
|
307
|
+
* Only present with {@link AutoModerationTriggerTypes.MentionSpam}.
|
|
308
|
+
*
|
|
309
|
+
* Maximum of 50
|
|
310
|
+
*/
|
|
271
311
|
mentionTotalLimit?: number;
|
|
272
|
-
|
|
312
|
+
/**
|
|
313
|
+
* Whether to automatically detect mention raids.
|
|
314
|
+
*
|
|
315
|
+
* @remarks
|
|
316
|
+
* Only present with {@link AutoModerationTriggerTypes.MentionSpam}.
|
|
317
|
+
*/
|
|
318
|
+
mentionRaidProtectionEnabled?: boolean;
|
|
273
319
|
}
|
|
274
320
|
export interface AvatarDecorationData {
|
|
275
321
|
/** the avatar decoration hash */
|
|
@@ -780,7 +826,7 @@ export interface Interaction {
|
|
|
780
826
|
/** The type of interaction */
|
|
781
827
|
type: InteractionTypes;
|
|
782
828
|
/** Guild that the interaction was sent from */
|
|
783
|
-
guild
|
|
829
|
+
guild?: Partial<Guild>;
|
|
784
830
|
/** The guild it was sent from */
|
|
785
831
|
guildId?: bigint;
|
|
786
832
|
/** The channel it was sent from */
|
|
@@ -1576,6 +1622,10 @@ export interface User {
|
|
|
1576
1622
|
username: string;
|
|
1577
1623
|
/** The user's display name, if it is set. For bots, this is the application name */
|
|
1578
1624
|
globalName?: string;
|
|
1625
|
+
/** The user's display name based on `globalName` and `username` */
|
|
1626
|
+
displayName: string;
|
|
1627
|
+
/** Get the timestamp in milliseconds of user's creation date */
|
|
1628
|
+
createdTimestamp: number;
|
|
1579
1629
|
/** The user's chosen language option */
|
|
1580
1630
|
locale?: string;
|
|
1581
1631
|
/** The flags on a user's account */
|
|
@@ -1598,7 +1648,7 @@ export interface User {
|
|
|
1598
1648
|
banner?: bigint;
|
|
1599
1649
|
/** data for the user's avatar decoration */
|
|
1600
1650
|
avatarDecorationData?: AvatarDecorationData;
|
|
1601
|
-
/** The user tag in the form of username#discriminator */
|
|
1651
|
+
/** The user tag in the form of `username` or `username#discriminator` for legacy username system */
|
|
1602
1652
|
tag: string;
|
|
1603
1653
|
/** Whether the user belongs to an OAuth2 application */
|
|
1604
1654
|
bot: boolean;
|
|
@@ -1612,6 +1662,20 @@ export interface User {
|
|
|
1612
1662
|
collectibles?: Collectibles;
|
|
1613
1663
|
/** The user's primary guild */
|
|
1614
1664
|
primaryGuild?: UserPrimaryGuild;
|
|
1665
|
+
/** Get user's default avatar in formatted url */
|
|
1666
|
+
defaultAvatarUrl: string;
|
|
1667
|
+
/**
|
|
1668
|
+
* Get user's avatar in formatted url
|
|
1669
|
+
* @param options Image format options
|
|
1670
|
+
* @returns User's avatar in formatted url
|
|
1671
|
+
*/
|
|
1672
|
+
avatarUrl: (options?: ImageOptions) => string | undefined;
|
|
1673
|
+
/**
|
|
1674
|
+
* Get user's display avatar in formatted url
|
|
1675
|
+
* @param options Image format options
|
|
1676
|
+
* @returns User's display avatar in formatted url
|
|
1677
|
+
*/
|
|
1678
|
+
displayAvatarUrl: (options?: ImageOptions) => string;
|
|
1615
1679
|
}
|
|
1616
1680
|
export interface Collectibles {
|
|
1617
1681
|
/** object mapping of nameplate data */
|