@tiba-spark/client-shared-lib 10.2.1-705 → 10.2.1-76
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/esm2022/libraries/enums/localization.enum.mjs +5 -1
- package/esm2022/libraries/service-proxy/cloud-service-proxies.mjs +165 -3
- package/esm2022/libraries/service-proxy/edge-service-proxies.mjs +350 -12
- package/esm2022/libraries/utils/helper.util.mjs +2 -2
- package/fesm2022/tiba-spark-client-shared-lib.mjs +522 -14
- package/fesm2022/tiba-spark-client-shared-lib.mjs.map +1 -1
- package/libraries/enums/localization.enum.d.ts +5 -1
- package/libraries/enums/localization.enum.d.ts.map +1 -1
- package/libraries/service-proxy/cloud-service-proxies.d.ts +54 -3
- package/libraries/service-proxy/cloud-service-proxies.d.ts.map +1 -1
- package/libraries/service-proxy/edge-service-proxies.d.ts +55 -10
- package/libraries/service-proxy/edge-service-proxies.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -159,7 +159,7 @@ export const MainModuleToSubModulesPermissionTypeMap = {
|
|
|
159
159
|
[Edge.PermissionType.CcMain]: [],
|
|
160
160
|
[Edge.PermissionType.AccountManagementMain]: [Edge.PermissionType.AccountManagementAccountView, Edge.PermissionType.AccountManagementAccountCreate, Edge.PermissionType.AccountManagementAccountUpdate, Edge.PermissionType.AccountManagementAccountDelete],
|
|
161
161
|
[Edge.PermissionType.MonthliesMain]: [Edge.PermissionType.MonthliesView, Edge.PermissionType.MonthliesCreate, Edge.PermissionType.MonthliesUpdate, Edge.PermissionType.MonthliesDelete, Edge.PermissionType.MonthlySeriesCreate],
|
|
162
|
-
[Edge.PermissionType.GuestMain]: [Edge.PermissionType.
|
|
162
|
+
[Edge.PermissionType.GuestMain]: [Edge.PermissionType.GuestView, Edge.PermissionType.GuestCreate, Edge.PermissionType.GuestUpdate, Edge.PermissionType.GuestDelete, Edge.PermissionType.GuestGroupView, Edge.PermissionType.GuestGroupCreate, Edge.PermissionType.GuestHotelGuestView, Edge.PermissionType.HotelGuestIOCreate],
|
|
163
163
|
[Edge.PermissionType.ValidationMain]: [
|
|
164
164
|
Edge.PermissionType.ValidationEValidationView, Edge.PermissionType.ValidationEValidationCreate, Edge.PermissionType.ValidationEValidationUpdate, Edge.PermissionType.ValidationEValidationDelete,
|
|
165
165
|
Edge.PermissionType.ValidationStickerView, Edge.PermissionType.ValidationStickerCreate, Edge.PermissionType.ValidationStickerUpdate, Edge.PermissionType.ValidationStickerDelete,
|
|
@@ -179,4 +179,4 @@ export const AppModuleToMainPermissionTypeMap = {
|
|
|
179
179
|
[Edge.AppModule.LotConfiguration]: Edge.PermissionType.LotConfigurationMain,
|
|
180
180
|
[Edge.AppModule.Management]: Edge.PermissionType.TenantSettingsMain,
|
|
181
181
|
};
|
|
182
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVyLnV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtc2hhcmVkLWxpYi9zcmMvbGlicmFyaWVzL3V0aWxzL2hlbHBlci51dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBVyxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDN0MsT0FBTyxFQUFhLHNCQUFzQixFQUFFLE1BQU0sR0FBRyxDQUFDO0FBQ3RELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUV0RCxPQUFPLEVBQVMsSUFBSSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFL0MsNEJBQTRCO0FBQzVCLGtDQUFrQztBQUNsQyxnREFBZ0Q7QUFDaEQsTUFBTSxVQUFVLFFBQVEsQ0FBSSxHQUFNLEVBQUUsSUFBYztJQUNoRCxJQUFJLEdBQUcsR0FBTSxFQUFPLENBQUM7SUFDckIsS0FBSyxJQUFJLEdBQUcsSUFBSSxHQUFHLEVBQUU7UUFDbkIsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFO1lBQzNCLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDckI7S0FDRjtJQUNELE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQztBQUVELE1BQU0sVUFBVSxxQkFBcUIsQ0FBQyxHQUFHO0lBQ3ZDLElBQUksR0FBRyxLQUFLLElBQUksSUFBSSxHQUFHLElBQUksQ0FBQyxFQUFFO1FBQzVCLEdBQUcsR0FBRyxDQUFDLElBQUksR0FBRyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztLQUM5QjtJQUNELE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQztBQUVELE1BQU0sQ0FBQyxLQUFLLFVBQVUsaUJBQWlCLENBQUMsSUFBWSxFQUFFLE9BQXlCO0lBQzdFLGlEQUFp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RUFBRSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMscUJBQXFCLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyx5QkFBeUIsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLGlDQUFpQyxDQUFDO0lBQzdMLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxlQUFlLENBQUM7Q0FDaEYsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGdDQUFnQyxHQUFtQztJQUM5RSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNO0lBQy9DLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLHFCQUFxQjtJQUNwRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhO0lBQzdELENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVM7SUFDdEQsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsY0FBYztJQUMvRCxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXO0lBQ3pELENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsb0JBQW9CO0lBQzNFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLGtCQUFrQjtDQUNwRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBOdW1iZXJNYXAsIGlzQ2hhcmFjdGVyTGVuZ3RoVmFsaWQgfSBmcm9tICcuJztcbmltcG9ydCB7IExPQ0FMX0VOR0xJU0hfTEFOR1VBR0UgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgT3BlcmF0b3IgfSBmcm9tICcuLi9waXBlcy9maWx0ZXIucGlwZSc7XG5pbXBvcnQgeyBDbG91ZCwgRWRnZSB9IGZyb20gJy4uL3NlcnZpY2UtcHJveHknO1xuXG4vLyBHZXRzIGFuIG9iamVjdCBvZiB0eXBlPFQ+XG4vLyBHZXRzIGFuIGFycmF5IG9mIGtleXMgdG8gaWdub3JlXG4vLyBSZXR1cm5zIGEgbmV3IG9iamVjdCB3aXRob3V0IHRoZSBvbWl0dGVkIGtleXNcbmV4cG9ydCBmdW5jdGlvbiBvbWl0S2V5czxUPihvYmo6IFQsIGtleXM6IHN0cmluZ1tdKSB7XG4gIHZhciBkdXA6IFQgPSB7fSBhcyBUO1xuICBmb3IgKHZhciBrZXkgaW4gb2JqKSB7XG4gICAgaWYgKGtleXMuaW5kZXhPZihrZXkpID09IC0xKSB7XG4gICAgICBkdXBba2V5XSA9IG9ialtrZXldO1xuICAgIH1cbiAgfVxuICByZXR1cm4gZHVwO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbnVtYmVyV2l0aExlYWRpbmdaZXJvKG51bSkge1xuICBpZiAobnVtICE9PSBudWxsICYmIG51bSA8PSA5KSB7XG4gICAgbnVtID0gKGAwJHtudW19YCkuc2xpY2UoLTEwKTtcbiAgfVxuICByZXR1cm4gbnVtO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZGVsYXlDYW5jZWxsYXRpb24odGltZTogbnVtYmVyLCBzdWJqZWN0OiBTdWJqZWN0PGJvb2xlYW4+KSB7XG4gIC8vIGNyZWF0ZSBhIHN1YnNjcmlwdGlvbiB0byB1c2Ugd2l0aCB5b3VyIHByb21pc2VcbiAgY29uc3Qgc3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gIGNvbnN0IHByb21pc2UgPSBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHtcbiAgICBjb25zdCBpZCA9IHNldFRpbWVvdXQocmVzb2x2ZSwgdGltZSk7XG4gICAgLy8gYWRkIHRlYXJkb3duIGxvZ2ljIHRvIHRoZSBzdWJzY3JpcHRpb25cbiAgICBzdWJzY3JpcHRpb24uYWRkKCgpID0+IHtcbiAgICAgIGNsZWFyVGltZW91dChpZCk7XG4gICAgICByZXNvbHZlKG51bGwpO1xuICAgIH0pO1xuICB9KTtcblxuICBjb25zdCBzdWJTdWJqZWN0ID0gc3ViamVjdC5zdWJzY3JpYmUoY2FuY2VsU3Vic2NyaXB0aW9uID0+IHtcbiAgICBpZiAoY2FuY2VsU3Vic2NyaXB0aW9uKSB7XG4gICAgICAvLyBjYWxsIHVuc3Vic2NyaWJlIHRvIGNhbmNlbFxuICAgICAgc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9KTtcblxuICAvLyB1c2UgdGhlIHByb21pc2UgaW52b2tlIHRoZSBkZWFseVxuICBhd2FpdCBwcm9taXNlO1xuXG4gIHN1YlN1YmplY3QudW5zdWJzY3JpYmUoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlcGxhY2VBbGwoc3RyLCBmaW5kLCByZXBsYWNlKSB7XG4gIHJldHVybiBzdHIucmVwbGFjZShuZXcgUmVnRXhwKGZpbmQsICdnJyksIHJlcGxhY2UpO1xufVxuXG5cbmV4cG9ydCBlbnVtIFJvd09wZXJhdGlvbiB7XG4gIEluc2VydCxcbiAgVXBkYXRlLFxuICBEZWxldGUsXG4gIE5vbmUsXG4gIEluc2VydFRvUGFyZW50XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtYXJrRW50aXR5QXNVbmNoYW5nZWQ8VD4oZW50aXR5OiBUKTogVCB7XG4gIHJldHVybiBvbWl0S2V5czxUPihlbnRpdHksIFsnZXhwYW5kZWQnLCAnZXhwYW5kaW5nJywgJ2NoYW5nZWQnLCAncm93T3BlcmF0aW9uJywgJ2ZpbmRSb3dJbmRleCddKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1hcmtFbnRpdGllc0FzQ2hhbmdlZDxUID0gYW55PihlbnRpdGllczogYW55W10sIHJvd09wZXJhdGlvbjogUm93T3BlcmF0aW9uID0gUm93T3BlcmF0aW9uLk5vbmUsXG4gIGZpbmRSb3dJbmRleD86IChlbnRpdHk6IFQsIGVudGl0aWVzOiBUW10pID0+IG51bWJlcikge1xuXG4gIGlmICgocm93T3BlcmF0aW9uID09PSBSb3dPcGVyYXRpb24uVXBkYXRlIHx8IHJvd09wZXJhdGlvbiA9PT0gUm93T3BlcmF0aW9uLkRlbGV0ZSkgJiYgIWZpbmRSb3dJbmRleCkge1xuICAgIGZpbmRSb3dJbmRleCA9IChlbnRpdHk6IGFueSwgZW50aXRpZXM6IGFueVtdKSA9PiBlbnRpdGllcy5maW5kSW5kZXgoZSA9PiBlLmlkID09PSBlbnRpdHkuaWQpO1xuICB9XG5cbiAgZmxhZ0VudGl0eShlbnRpdGllcywgdHJ1ZSwgcm93T3BlcmF0aW9uLCBmaW5kUm93SW5kZXgpO1xuXG4gIC8vc29sdXRpb24gZm9yIHVubWFya2VkIHByZXZpb3VlcyByb3dzXG4gIHNldFRpbWVvdXQoKCkgPT4gZmxhZ0VudGl0eShlbnRpdGllcywgZmFsc2UsIFJvd09wZXJhdGlvbi5Ob25lKSwgMTAwMCk7XG59XG5cbmV4cG9ydCB0eXBlIFJvd1RhYmxlUGF5bG9hZDxUID0gYW55PiA9IHsgcm93T3BlcmF0aW9uOiBSb3dPcGVyYXRpb24sIGNoYW5nZWQ6IGJvb2xlYW4sIGZpbmRSb3dJbmRleD86IChlbnRpdHk6IFQsIGVudGl0aWVzOiBUW10pID0+IG51bWJlciB9O1xuXG5mdW5jdGlvbiBmbGFnRW50aXR5PFQgZXh0ZW5kcyBSb3dUYWJsZVBheWxvYWQ+KGVudGl0aWVzOiBUW10sIGZsYWc6IGJvb2xlYW4sIHJvd09wZXJhdGlvbjogUm93T3BlcmF0aW9uLCBmaW5kUm93SW5kZXg/OiAoZW50aXR5OiBULCBlbnRpdGllczogVFtdKSA9PiBudW1iZXIpIHtcbiAgZW50aXRpZXMuZm9yRWFjaChlbnRpdHkgPT4ge1xuICAgIGVudGl0eS5jaGFuZ2VkID0gZmxhZztcbiAgICBlbnRpdHkucm93T3BlcmF0aW9uID0gcm93T3BlcmF0aW9uID8/IGVudGl0eS5yb3dPcGVyYXRpb247XG4gICAgZW50aXR5LmZpbmRSb3dJbmRleCA9IGZpbmRSb3dJbmRleCB8fCAoKGVudGl0eSwgZW50aXRpZXMpID0+IG51bGwpO1xuICB9KTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRBZGRyZXNzKGNpdHk6IHN0cmluZywgc3RyZWV0OiBzdHJpbmcpOiBzdHJpbmcge1xuICBsZXQgYWRkcmVzcyA9IG51bGw7XG4gIGlmIChjaXR5ICYmIHN0cmVldCkge1xuICAgIGFkZHJlc3MgPSBgJHtzdHJlZXR9LCAke2NpdHl9YDtcbiAgfSBlbHNlIGlmIChjaXR5KSB7XG4gICAgYWRkcmVzcyA9IGNpdHk7XG4gIH0gZWxzZSBpZiAoc3RyZWV0KSB7XG4gICAgYWRkcmVzcyA9IHN0cmVldDtcbiAgfVxuXG4gIHJldHVybiBhZGRyZXNzO1xufVxuXG5leHBvcnQgdHlwZSBGaWx0ZXJWYWx1ZVJlc29sdmVyPFQ+ID0gKG9iajogVCwgcHJvcGVydHlOYW1lOiBzdHJpbmcpID0+IGFueTtcbmV4cG9ydCB0eXBlIFNvbWVWYWx1ZVJlc29sdmVyPFQ+ID0gKG9iajogVCwgc3ViR3JvdXBQcm9wZXJ0eU5hbWU6IHN0cmluZywgcHJvcGVydHlOYW1lOiBzdHJpbmcsIHNlYXJjaFZhbHVlOiBzdHJpbmcsIG9wZXJhdG9yOiBPcGVyYXRvciwgcmVkdWNlOiBhbnkpID0+IGFueTtcblxuZXhwb3J0IGNvbnN0IGJhc2VSZWR1Y2U6IEZpbHRlclZhbHVlUmVzb2x2ZXI8YW55PiA9IChvYmo6IGFueSwgcHJvcGVydHlOYW1lOiBzdHJpbmcpID0+IHtcbiAgcmV0dXJuIG9ialtwcm9wZXJ0eU5hbWVdO1xufVxuXG5leHBvcnQgY29uc3QgZmlsdGVyS2V5VmFsdWVCYXNlUmVkdWNlOiBGaWx0ZXJWYWx1ZVJlc29sdmVyPHsga2V5OiBzdHJpbmc7IHZhbHVlOiBzdHJpbmc7IH0+ID0gKFxuICBvYmosXG4gIF8sXG4pID0+IG9iai52YWx1ZTtcblxuZXhwb3J0IGZ1bmN0aW9uKiBmbGF0dGVuQnlLZXkoYXJyYXksIG5lc3RlZEtleTogc3RyaW5nLCBkZXB0aCA9IDEpIHtcbiAgZm9yIChjb25zdCBpdGVtIG9mIGFycmF5KSB7XG4gICAgaWYgKGl0ZW1bbmVzdGVkS2V5XSAmJiBBcnJheS5pc0FycmF5KGl0ZW1bbmVzdGVkS2V5XSkgJiYgZGVwdGggPiAwKSB7XG4gICAgICB5aWVsZCogZmxhdHRlbkJ5S2V5KGl0ZW1bbmVzdGVkS2V5XSwgbmVzdGVkS2V5LCBkZXB0aCAtIDEpO1xuICAgIH0gZWxzZSB7XG4gICAgICB5aWVsZCBpdGVtO1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNJT1NEZXZpY2UoKSB7XG4gIHZhciBpc0lPUyA9IC9pUGFkfGlQaG9uZXxpUG9kLy50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpO1xuICB2YXIgaXNBcHBsZURldmljZSA9IG5hdmlnYXRvci51c2VyQWdlbnQuaW5jbHVkZXMoJ01hY2ludG9zaCcpO1xuICB2YXIgaXNUb3VjaFNjcmVlbiA9IG5hdmlnYXRvci5tYXhUb3VjaFBvaW50cyA+PSAxOyAvLyB0cnVlIGZvciBpT1MgMTMgKGFuZCBob3BlZnVsbHkgYmV5b25kKVxuICByZXR1cm4gaXNJT1MgfHwgKGlzQXBwbGVEZXZpY2UgJiYgKGlzVG91Y2hTY3JlZW4gfHwgaU9TMXRvMTJxdWlyaygpKSk7XG59XG5cbmZ1bmN0aW9uIGlPUzF0bzEycXVpcmsoKSB7XG4gIHZhciBhdWRpbyA9IG5ldyBBdWRpbygpOyAvLyB0ZW1wb3JhcnkgQXVkaW8gb2JqZWN0XG4gIGF1ZGlvLnZvbHVtZSA9IDAuNTsgLy8gaGFzIG5vIGVmZmVjdCBvbiBpT1MgPD0gMTJcbiAgcmV0dXJuIGF1ZGlvLnZvbHVtZSA9PT0gMTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNsZWVwKG1pbGxpc2Vjb25kczogbnVtYmVyKSB7XG4gIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4gc2V0VGltZW91dChyZXNvbHZlLCBtaWxsaXNlY29uZHMpKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzT2JqZWN0RW1wdHkob2JqOiB7fSkge1xuICByZXR1cm4gT2JqZWN0LmtleXMob2JqKS5sZW5ndGggPT09IDA7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1RydWVJbkJpbmFyeShkZWNpbWFsVmFsdWU6IG51bWJlciwgYml0UG9zaXRpb246IG51bWJlcik6IGJvb2xlYW4ge1xuICByZXR1cm4gKGRlY2ltYWxWYWx1ZSAmIGJpdFBvc2l0aW9uKSAhPT0gMDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNvbnZlcnRCaW5hcnlUb0RlY2ltYWwoYmluYXJ5U3RyaW5nOiBzdHJpbmcpOiBudW1iZXIge1xuICAvLyBVc2UgcGFyc2VJbnQgZnVuY3Rpb24gdG8gY29udmVydCBiaW5hcnkgc3RyaW5nIHRvIGRlY2ltYWwgbnVtYmVyXG4gIHJldHVybiBwYXJzZUludChiaW5hcnlTdHJpbmcsIDIpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY29udmVydERlY2ltYWxUb0JpbmFyeShkZWNpbWFsTnVtYmVyOiBudW1iZXIpOiBzdHJpbmcge1xuICAvLyBVc2UgdG9TdHJpbmcoMikgZnVuY3Rpb24gdG8gY29udmVydCBkZWNpbWFsIG51bWJlciB0byBiaW5hcnkgc3RyaW5nXG4gIHJldHVybiBpc05hTihkZWNpbWFsTnVtYmVyKSA/ICcnIDogZGVjaW1hbE51bWJlci50b1N0cmluZygyKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRpc3RpbmN0T2JqZWN0QnlQcm9wZXJ0eTxULCBLIGV4dGVuZHMga2V5b2YgVD4oYXJyOiBUW10sIHByb3A6IEspOiBUW10ge1xuICBjb25zdCBtYXAgPSBuZXcgTWFwPFRbS10sIFQ+KCk7XG4gIGFyci5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgIGNvbnN0IGtleSA9IGl0ZW1bcHJvcF07XG4gICAgaWYgKCFtYXAuaGFzKGtleSkpIHtcbiAgICAgIG1hcC5zZXQoa2V5LCBpdGVtKTtcbiAgICB9XG4gIH0pO1xuICByZXR1cm4gQXJyYXkuZnJvbShtYXAudmFsdWVzKCkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZGlzdGluY3RPYmplY3RCeVByb3BlcnRpZXM8VCwgSyBleHRlbmRzIGtleW9mIFQ+KGFycjogVFtdLCAuLi5wcm9wczogS1tdKTogVFtdIHtcbiAgY29uc3QgbWFwID0gbmV3IE1hcDxzdHJpbmcsIFQ+KCk7XG4gIGFyci5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgIGNvbnN0IGtleSA9IHByb3BzLm1hcChwcm9wID0+IGl0ZW1bcHJvcF0pLmpvaW4oJ18nKTtcbiAgICBpZiAoIW1hcC5oYXMoa2V5KSkge1xuICAgICAgbWFwLnNldChrZXksIGl0ZW0pO1xuICAgIH1cbiAgfSk7XG4gIHJldHVybiBBcnJheS5mcm9tKG1hcC52YWx1ZXMoKSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRDdXJyZW50TGFuZyh1c2VyU2V0dGluZ3M6IE1hcDxFZGdlLlNldHRpbmdzQ2F0ZWdvcnksIGFueT4pIHtcbiAgY29uc3QgdmFsdWU6IENsb3VkLkxvY2FsaXphdGlvbkR0byA9IHVzZXJTZXR0aW5ncz8uZ2V0KEVkZ2UuU2V0dGluZ3NDYXRlZ29yeS5Mb2NhbGl6YXRpb24pO1xuICByZXR1cm4gdmFsdWU/LmtleU5hbWUgPz8gTE9DQUxfRU5HTElTSF9MQU5HVUFHRTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzU2VhcmNoRmllbGRDaGFuZ2VkKHByZXY6IGFueSwgY3VycjogYW55KTogYm9vbGVhbiB7XG4gIGNvbnN0IGlzRmllbGRTZWxlY3RvckNoYW5nZWQgPSBwcmV2LnNlYXJjaEZpZWxkU2VsZWN0b3IgIT09IGN1cnIuc2VhcmNoRmllbGRTZWxlY3RvciAmJiBjdXJyLnNlYXJjaFZhbHVlO1xuICBjb25zdCBpc1NlYXJjaFZhbHVlQ2hhbmdlZCA9IHByZXYuc2VhcmNoVmFsdWUgIT09IGN1cnIuc2VhcmNoVmFsdWU7XG5cbiAgcmV0dXJuIChpc0ZpZWxkU2VsZWN0b3JDaGFuZ2VkIHx8IGlzU2VhcmNoVmFsdWVDaGFuZ2VkKSAmJiBpc0NoYXJhY3Rlckxlbmd0aFZhbGlkKGN1cnIuc2VhcmNoVmFsdWUpO1xufVxuXG5leHBvcnQgY29uc3QgTWFpbk1vZHVsZVRvU3ViTW9kdWxlc1Blcm1pc3Npb25UeXBlTWFwOiBOdW1iZXJNYXA8RWRnZS5QZXJtaXNzaW9uVHlwZVtdPiA9IHtcbiAgW0VkZ2UuUGVybWlzc2lvblR5cGUuQ2NNYWluXTogW10sXG4gIFtFZGdlLlBlcm1pc3Npb25UeXBlLkFjY291bnRNYW5hZ2VtZW50TWFpbl06IFtFZGdlLlBlcm1pc3Npb25UeXBlLkFjY291bnRNYW5hZ2VtZW50QWNjb3VudFZpZXcsIEVkZ2UuUGVybWlzc2lvblR5cGUuQWNjb3VudE1hbmFnZW1lbnRBY2NvdW50Q3JlYXRlLCBFZGdlLlBlcm1pc3Npb25UeXBlLkFjY291bnRNYW5hZ2VtZW50QWNjb3VudFVwZGF0ZSwgRWRnZS5QZXJtaXNzaW9uVHlwZS5BY2NvdW50TWFuYWdlbWVudEFjY291bnREZWxldGVdLFxuICBbRWRnZS5QZXJtaXNzaW9uVHlwZS5Nb250aGxpZXNNYWluXTogW0VkZ2UuUGVybWlzc2lvblR5cGUuTW9udGhsaWVzVmlldywgRWRnZS5QZXJtaXNzaW9uVHlwZS5Nb250aGxpZXNDcmVhdGUsIEVkZ2UuUGVybWlzc2lvblR5cGUuTW9udGhsaWVzVXBkYXRlLCBFZGdlLlBlcm1pc3Npb25UeXBlLk1vbnRobGllc0RlbGV0ZSwgRWRnZS5QZXJtaXNzaW9uVHlwZS5Nb250aGx5U2VyaWVzQ3JlYXRlXSxcbiAgW0VkZ2UuUGVybWlzc2lvblR5cGUuR3Vlc3RNYWluXTogW0VkZ2UuUGVybWlzc2lvblR5cGUuU2luZ2xlR3Vlc3QsIEVkZ2UuUGVybWlzc2lvblR5cGUuR3Vlc3RWaWV3LCBFZGdlLlBlcm1pc3Npb25UeXBlLkd1ZXN0Q3JlYXRlLCBFZGdlLlBlcm1pc3Npb25UeXBlLkd1ZXN0VXBkYXRlLCBFZGdlLlBlcm1pc3Npb25UeXBlLkd1ZXN0RGVsZXRlLCBFZGdlLlBlcm1pc3Npb25UeXBlLkd1ZXN0R3JvdXBWaWV3LCBFZGdlLlBlcm1pc3Npb25UeXBlLkd1ZXN0R3JvdXBDcmVhdGUsIEVkZ2UuUGVybWlzc2lvblR5cGUuR3Vlc3RIb3RlbEd1ZXN0VmlldywgRWRnZS5QZXJtaXNzaW9uVHlwZS5Ib3RlbEd1ZXN0SU9DcmVhdGVdLFxuICBbRWRnZS5QZXJtaXNzaW9uVHlwZS5WYWxpZGF0aW9uTWFpbl06IFtcbiAgICBFZGdlLlBlcm1pc3Npb25UeXBlLlZhbGlkYXRpb25FVmFsaWRhdGlvblZpZXcsIEVkZ2UuUGVybWlzc2lvblR5cGUuVmFsaWRhdGlvbkVWYWxpZGF0aW9uQ3JlYXRlLCBFZGdlLlBlcm1pc3Npb25UeXBlLlZhbGlkYXRpb25FVmFsaWRhdGlvblVwZGF0ZSwgRWRnZS5QZXJtaXNzaW9uVHlwZS5WYWxpZGF0aW9uRVZhbGlkYXRpb25EZWxldGUsXG4gICAgRWRnZS5QZXJtaXNzaW9uVHlwZS5WYWxpZGF0aW9uU3RpY2tlclZpZXcsIEVkZ2UuUGVybWlzc2lvblR5cGUuVmFsaWRhdGlvblN0aWNrZXJDcmVhdGUsIEVkZ2UuUGVybWlzc2lvblR5cGUuVmFsaWRhdGlvblN0aWNrZXJVcGRhdGUsIEVkZ2UuUGVybWlzc2lvblR5cGUuVmFsaWRhdGlvblN0aWNrZXJEZWxldGUsXG4gICAgRWRnZS5QZXJtaXNzaW9uVHlwZS5WYWxpZGF0aW9uQ291cG9uVmlldywgRWRnZS5QZXJtaXNzaW9uVHlwZS5WYWxpZGF0aW9uQ291cG9uQ3JlYXRlLCBFZGdlLlBlcm1pc3Npb25UeXBlLlZhbGlkYXRpb25Db3Vwb25VcGRhdGUsIEVkZ2UuUGVybWlzc2lvblR5cGUuVmFsaWRhdGlvbkNvdXBvbkRlbGV0ZV0sXG4gIFtFZGdlLlBlcm1pc3Npb25UeXBlLlJlcG9ydHNNYWluXTogW10sXG4gIFtFZGdlLlBlcm1pc3Npb25UeXBlLkxvdENvbmZpZ3VyYXRpb25NYWluXTogW0VkZ2UuUGVybWlzc2lvblR5cGUuTG90Q29uZmlndXJhdGlvblJhdGVzLCBFZGdlLlBlcm1pc3Npb25UeXBlLkxvdENvbmZpZ3VyYXRpb25TY2hlZHVsZXIsIEVkZ2UuUGVybWlzc2lvblR5cGUuTG90Q29uZmlndXJhdGlvblZhbGlkYXRpb25Qcm9maWxlXSxcbiAgW0VkZ2UuUGVybWlzc2lvblR5cGUuVGVuYW50U2V0dGluZ3NNYWluXTogW0VkZ2UuUGVybWlzc2lvblR5cGUuTWFuYWdlbWVudEFkbWluXVxufTtcblxuZXhwb3J0IGNvbnN0IEFwcE1vZHVsZVRvTWFpblBlcm1pc3Npb25UeXBlTWFwOiBOdW1iZXJNYXA8RWRnZS5QZXJtaXNzaW9uVHlwZT4gPSB7XG4gIFtFZGdlLkFwcE1vZHVsZS5DY106IEVkZ2UuUGVybWlzc2lvblR5cGUuQ2NNYWluLFxuICBbRWRnZS5BcHBNb2R1bGUuQWNjb3VudHNdOiBFZGdlLlBlcm1pc3Npb25UeXBlLkFjY291bnRNYW5hZ2VtZW50TWFpbixcbiAgW0VkZ2UuQXBwTW9kdWxlLk1vbnRobGllc106IEVkZ2UuUGVybWlzc2lvblR5cGUuTW9udGhsaWVzTWFpbixcbiAgW0VkZ2UuQXBwTW9kdWxlLkd1ZXN0c106IEVkZ2UuUGVybWlzc2lvblR5cGUuR3Vlc3RNYWluLFxuICBbRWRnZS5BcHBNb2R1bGUuVmFsaWRhdGlvbl06IEVkZ2UuUGVybWlzc2lvblR5cGUuVmFsaWRhdGlvbk1haW4sXG4gIFtFZGdlLkFwcE1vZHVsZS5SZXBvcnRzXTogRWRnZS5QZXJtaXNzaW9uVHlwZS5SZXBvcnRzTWFpbixcbiAgW0VkZ2UuQXBwTW9kdWxlLkxvdENvbmZpZ3VyYXRpb25dOiBFZGdlLlBlcm1pc3Npb25UeXBlLkxvdENvbmZpZ3VyYXRpb25NYWluLFxuICBbRWRnZS5BcHBNb2R1bGUuTWFuYWdlbWVudF06IEVkZ2UuUGVybWlzc2lvblR5cGUuVGVuYW50U2V0dGluZ3NNYWluLFxufTtcbiJdfQ==
|
|
182
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVyLnV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGllbnQtc2hhcmVkLWxpYi9zcmMvbGlicmFyaWVzL3V0aWxzL2hlbHBlci51dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBVyxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDN0MsT0FBTyxFQUFhLHNCQUFzQixFQUFFLE1BQU0sR0FBRyxDQUFDO0FBQ3RELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUV0RCxPQUFPLEVBQVMsSUFBSSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFL0MsNEJBQTRCO0FBQzVCLGtDQUFrQztBQUNsQyxnREFBZ0Q7QUFDaEQsTUFBTSxVQUFVLFFBQVEsQ0FBSSxHQUFNLEVBQUUsSUFBYztJQUNoRCxJQUFJLEdBQUcsR0FBTSxFQUFPLENBQUM7SUFDckIsS0FBSyxJQUFJLEdBQUcsSUFBSSxHQUFHLEVBQUU7UUFDbkIsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFO1lBQzNCLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDckI7S0FDRjtJQUNELE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQztBQUVELE1BQU0sVUFBVSxxQkFBcUIsQ0FBQyxHQUFHO0lBQ3ZDLElBQUksR0FBRyxLQUFLLElBQUksSUFBSSxHQUFHLElBQUksQ0FBQyxFQUFFO1FBQzVCLEdBQUcsR0FBRyxDQUFDLElBQUksR0FBRyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztLQUM5QjtJQUNELE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQztBQUVELE1BQU0sQ0FBQyxLQUFLLFVBQVUsaUJBQWlCLENBQUMsSUFBWSxFQUFFLE9BQXlCO0lBQzdFLGlEQUFp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cUJBQXFCLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyx5QkFBeUIsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLGlDQUFpQyxDQUFDO0lBQzdMLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxlQUFlLENBQUM7Q0FDaEYsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGdDQUFnQyxHQUFtQztJQUM5RSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNO0lBQy9DLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLHFCQUFxQjtJQUNwRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhO0lBQzdELENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVM7SUFDdEQsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsY0FBYztJQUMvRCxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXO0lBQ3pELENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsb0JBQW9CO0lBQzNFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLGtCQUFrQjtDQUNwRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBOdW1iZXJNYXAsIGlzQ2hhcmFjdGVyTGVuZ3RoVmFsaWQgfSBmcm9tICcuJztcbmltcG9ydCB7IExPQ0FMX0VOR0xJU0hfTEFOR1VBR0UgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgT3BlcmF0b3IgfSBmcm9tICcuLi9waXBlcy9maWx0ZXIucGlwZSc7XG5pbXBvcnQgeyBDbG91ZCwgRWRnZSB9IGZyb20gJy4uL3NlcnZpY2UtcHJveHknO1xuXG4vLyBHZXRzIGFuIG9iamVjdCBvZiB0eXBlPFQ+XG4vLyBHZXRzIGFuIGFycmF5IG9mIGtleXMgdG8gaWdub3JlXG4vLyBSZXR1cm5zIGEgbmV3IG9iamVjdCB3aXRob3V0IHRoZSBvbWl0dGVkIGtleXNcbmV4cG9ydCBmdW5jdGlvbiBvbWl0S2V5czxUPihvYmo6IFQsIGtleXM6IHN0cmluZ1tdKSB7XG4gIHZhciBkdXA6IFQgPSB7fSBhcyBUO1xuICBmb3IgKHZhciBrZXkgaW4gb2JqKSB7XG4gICAgaWYgKGtleXMuaW5kZXhPZihrZXkpID09IC0xKSB7XG4gICAgICBkdXBba2V5XSA9IG9ialtrZXldO1xuICAgIH1cbiAgfVxuICByZXR1cm4gZHVwO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbnVtYmVyV2l0aExlYWRpbmdaZXJvKG51bSkge1xuICBpZiAobnVtICE9PSBudWxsICYmIG51bSA8PSA5KSB7XG4gICAgbnVtID0gKGAwJHtudW19YCkuc2xpY2UoLTEwKTtcbiAgfVxuICByZXR1cm4gbnVtO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZGVsYXlDYW5jZWxsYXRpb24odGltZTogbnVtYmVyLCBzdWJqZWN0OiBTdWJqZWN0PGJvb2xlYW4+KSB7XG4gIC8vIGNyZWF0ZSBhIHN1YnNjcmlwdGlvbiB0byB1c2Ugd2l0aCB5b3VyIHByb21pc2VcbiAgY29uc3Qgc3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gIGNvbnN0IHByb21pc2UgPSBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHtcbiAgICBjb25zdCBpZCA9IHNldFRpbWVvdXQocmVzb2x2ZSwgdGltZSk7XG4gICAgLy8gYWRkIHRlYXJkb3duIGxvZ2ljIHRvIHRoZSBzdWJzY3JpcHRpb25cbiAgICBzdWJzY3JpcHRpb24uYWRkKCgpID0+IHtcbiAgICAgIGNsZWFyVGltZW91dChpZCk7XG4gICAgICByZXNvbHZlKG51bGwpO1xuICAgIH0pO1xuICB9KTtcblxuICBjb25zdCBzdWJTdWJqZWN0ID0gc3ViamVjdC5zdWJzY3JpYmUoY2FuY2VsU3Vic2NyaXB0aW9uID0+IHtcbiAgICBpZiAoY2FuY2VsU3Vic2NyaXB0aW9uKSB7XG4gICAgICAvLyBjYWxsIHVuc3Vic2NyaWJlIHRvIGNhbmNlbFxuICAgICAgc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9KTtcblxuICAvLyB1c2UgdGhlIHByb21pc2UgaW52b2tlIHRoZSBkZWFseVxuICBhd2FpdCBwcm9taXNlO1xuXG4gIHN1YlN1YmplY3QudW5zdWJzY3JpYmUoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlcGxhY2VBbGwoc3RyLCBmaW5kLCByZXBsYWNlKSB7XG4gIHJldHVybiBzdHIucmVwbGFjZShuZXcgUmVnRXhwKGZpbmQsICdnJyksIHJlcGxhY2UpO1xufVxuXG5cbmV4cG9ydCBlbnVtIFJvd09wZXJhdGlvbiB7XG4gIEluc2VydCxcbiAgVXBkYXRlLFxuICBEZWxldGUsXG4gIE5vbmUsXG4gIEluc2VydFRvUGFyZW50XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtYXJrRW50aXR5QXNVbmNoYW5nZWQ8VD4oZW50aXR5OiBUKTogVCB7XG4gIHJldHVybiBvbWl0S2V5czxUPihlbnRpdHksIFsnZXhwYW5kZWQnLCAnZXhwYW5kaW5nJywgJ2NoYW5nZWQnLCAncm93T3BlcmF0aW9uJywgJ2ZpbmRSb3dJbmRleCddKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1hcmtFbnRpdGllc0FzQ2hhbmdlZDxUID0gYW55PihlbnRpdGllczogYW55W10sIHJvd09wZXJhdGlvbjogUm93T3BlcmF0aW9uID0gUm93T3BlcmF0aW9uLk5vbmUsXG4gIGZpbmRSb3dJbmRleD86IChlbnRpdHk6IFQsIGVudGl0aWVzOiBUW10pID0+IG51bWJlcikge1xuXG4gIGlmICgocm93T3BlcmF0aW9uID09PSBSb3dPcGVyYXRpb24uVXBkYXRlIHx8IHJvd09wZXJhdGlvbiA9PT0gUm93T3BlcmF0aW9uLkRlbGV0ZSkgJiYgIWZpbmRSb3dJbmRleCkge1xuICAgIGZpbmRSb3dJbmRleCA9IChlbnRpdHk6IGFueSwgZW50aXRpZXM6IGFueVtdKSA9PiBlbnRpdGllcy5maW5kSW5kZXgoZSA9PiBlLmlkID09PSBlbnRpdHkuaWQpO1xuICB9XG5cbiAgZmxhZ0VudGl0eShlbnRpdGllcywgdHJ1ZSwgcm93T3BlcmF0aW9uLCBmaW5kUm93SW5kZXgpO1xuXG4gIC8vc29sdXRpb24gZm9yIHVubWFya2VkIHByZXZpb3VlcyByb3dzXG4gIHNldFRpbWVvdXQoKCkgPT4gZmxhZ0VudGl0eShlbnRpdGllcywgZmFsc2UsIFJvd09wZXJhdGlvbi5Ob25lKSwgMTAwMCk7XG59XG5cbmV4cG9ydCB0eXBlIFJvd1RhYmxlUGF5bG9hZDxUID0gYW55PiA9IHsgcm93T3BlcmF0aW9uOiBSb3dPcGVyYXRpb24sIGNoYW5nZWQ6IGJvb2xlYW4sIGZpbmRSb3dJbmRleD86IChlbnRpdHk6IFQsIGVudGl0aWVzOiBUW10pID0+IG51bWJlciB9O1xuXG5mdW5jdGlvbiBmbGFnRW50aXR5PFQgZXh0ZW5kcyBSb3dUYWJsZVBheWxvYWQ+KGVudGl0aWVzOiBUW10sIGZsYWc6IGJvb2xlYW4sIHJvd09wZXJhdGlvbjogUm93T3BlcmF0aW9uLCBmaW5kUm93SW5kZXg/OiAoZW50aXR5OiBULCBlbnRpdGllczogVFtdKSA9PiBudW1iZXIpIHtcbiAgZW50aXRpZXMuZm9yRWFjaChlbnRpdHkgPT4ge1xuICAgIGVudGl0eS5jaGFuZ2VkID0gZmxhZztcbiAgICBlbnRpdHkucm93T3BlcmF0aW9uID0gcm93T3BlcmF0aW9uID8/IGVudGl0eS5yb3dPcGVyYXRpb247XG4gICAgZW50aXR5LmZpbmRSb3dJbmRleCA9IGZpbmRSb3dJbmRleCB8fCAoKGVudGl0eSwgZW50aXRpZXMpID0+IG51bGwpO1xuICB9KTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRBZGRyZXNzKGNpdHk6IHN0cmluZywgc3RyZWV0OiBzdHJpbmcpOiBzdHJpbmcge1xuICBsZXQgYWRkcmVzcyA9IG51bGw7XG4gIGlmIChjaXR5ICYmIHN0cmVldCkge1xuICAgIGFkZHJlc3MgPSBgJHtzdHJlZXR9LCAke2NpdHl9YDtcbiAgfSBlbHNlIGlmIChjaXR5KSB7XG4gICAgYWRkcmVzcyA9IGNpdHk7XG4gIH0gZWxzZSBpZiAoc3RyZWV0KSB7XG4gICAgYWRkcmVzcyA9IHN0cmVldDtcbiAgfVxuXG4gIHJldHVybiBhZGRyZXNzO1xufVxuXG5leHBvcnQgdHlwZSBGaWx0ZXJWYWx1ZVJlc29sdmVyPFQ+ID0gKG9iajogVCwgcHJvcGVydHlOYW1lOiBzdHJpbmcpID0+IGFueTtcbmV4cG9ydCB0eXBlIFNvbWVWYWx1ZVJlc29sdmVyPFQ+ID0gKG9iajogVCwgc3ViR3JvdXBQcm9wZXJ0eU5hbWU6IHN0cmluZywgcHJvcGVydHlOYW1lOiBzdHJpbmcsIHNlYXJjaFZhbHVlOiBzdHJpbmcsIG9wZXJhdG9yOiBPcGVyYXRvciwgcmVkdWNlOiBhbnkpID0+IGFueTtcblxuZXhwb3J0IGNvbnN0IGJhc2VSZWR1Y2U6IEZpbHRlclZhbHVlUmVzb2x2ZXI8YW55PiA9IChvYmo6IGFueSwgcHJvcGVydHlOYW1lOiBzdHJpbmcpID0+IHtcbiAgcmV0dXJuIG9ialtwcm9wZXJ0eU5hbWVdO1xufVxuXG5leHBvcnQgY29uc3QgZmlsdGVyS2V5VmFsdWVCYXNlUmVkdWNlOiBGaWx0ZXJWYWx1ZVJlc29sdmVyPHsga2V5OiBzdHJpbmc7IHZhbHVlOiBzdHJpbmc7IH0+ID0gKFxuICBvYmosXG4gIF8sXG4pID0+IG9iai52YWx1ZTtcblxuZXhwb3J0IGZ1bmN0aW9uKiBmbGF0dGVuQnlLZXkoYXJyYXksIG5lc3RlZEtleTogc3RyaW5nLCBkZXB0aCA9IDEpIHtcbiAgZm9yIChjb25zdCBpdGVtIG9mIGFycmF5KSB7XG4gICAgaWYgKGl0ZW1bbmVzdGVkS2V5XSAmJiBBcnJheS5pc0FycmF5KGl0ZW1bbmVzdGVkS2V5XSkgJiYgZGVwdGggPiAwKSB7XG4gICAgICB5aWVsZCogZmxhdHRlbkJ5S2V5KGl0ZW1bbmVzdGVkS2V5XSwgbmVzdGVkS2V5LCBkZXB0aCAtIDEpO1xuICAgIH0gZWxzZSB7XG4gICAgICB5aWVsZCBpdGVtO1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNJT1NEZXZpY2UoKSB7XG4gIHZhciBpc0lPUyA9IC9pUGFkfGlQaG9uZXxpUG9kLy50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpO1xuICB2YXIgaXNBcHBsZURldmljZSA9IG5hdmlnYXRvci51c2VyQWdlbnQuaW5jbHVkZXMoJ01hY2ludG9zaCcpO1xuICB2YXIgaXNUb3VjaFNjcmVlbiA9IG5hdmlnYXRvci5tYXhUb3VjaFBvaW50cyA+PSAxOyAvLyB0cnVlIGZvciBpT1MgMTMgKGFuZCBob3BlZnVsbHkgYmV5b25kKVxuICByZXR1cm4gaXNJT1MgfHwgKGlzQXBwbGVEZXZpY2UgJiYgKGlzVG91Y2hTY3JlZW4gfHwgaU9TMXRvMTJxdWlyaygpKSk7XG59XG5cbmZ1bmN0aW9uIGlPUzF0bzEycXVpcmsoKSB7XG4gIHZhciBhdWRpbyA9IG5ldyBBdWRpbygpOyAvLyB0ZW1wb3JhcnkgQXVkaW8gb2JqZWN0XG4gIGF1ZGlvLnZvbHVtZSA9IDAuNTsgLy8gaGFzIG5vIGVmZmVjdCBvbiBpT1MgPD0gMTJcbiAgcmV0dXJuIGF1ZGlvLnZvbHVtZSA9PT0gMTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNsZWVwKG1pbGxpc2Vjb25kczogbnVtYmVyKSB7XG4gIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4gc2V0VGltZW91dChyZXNvbHZlLCBtaWxsaXNlY29uZHMpKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzT2JqZWN0RW1wdHkob2JqOiB7fSkge1xuICByZXR1cm4gT2JqZWN0LmtleXMob2JqKS5sZW5ndGggPT09IDA7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1RydWVJbkJpbmFyeShkZWNpbWFsVmFsdWU6IG51bWJlciwgYml0UG9zaXRpb246IG51bWJlcik6IGJvb2xlYW4ge1xuICByZXR1cm4gKGRlY2ltYWxWYWx1ZSAmIGJpdFBvc2l0aW9uKSAhPT0gMDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNvbnZlcnRCaW5hcnlUb0RlY2ltYWwoYmluYXJ5U3RyaW5nOiBzdHJpbmcpOiBudW1iZXIge1xuICAvLyBVc2UgcGFyc2VJbnQgZnVuY3Rpb24gdG8gY29udmVydCBiaW5hcnkgc3RyaW5nIHRvIGRlY2ltYWwgbnVtYmVyXG4gIHJldHVybiBwYXJzZUludChiaW5hcnlTdHJpbmcsIDIpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY29udmVydERlY2ltYWxUb0JpbmFyeShkZWNpbWFsTnVtYmVyOiBudW1iZXIpOiBzdHJpbmcge1xuICAvLyBVc2UgdG9TdHJpbmcoMikgZnVuY3Rpb24gdG8gY29udmVydCBkZWNpbWFsIG51bWJlciB0byBiaW5hcnkgc3RyaW5nXG4gIHJldHVybiBpc05hTihkZWNpbWFsTnVtYmVyKSA/ICcnIDogZGVjaW1hbE51bWJlci50b1N0cmluZygyKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRpc3RpbmN0T2JqZWN0QnlQcm9wZXJ0eTxULCBLIGV4dGVuZHMga2V5b2YgVD4oYXJyOiBUW10sIHByb3A6IEspOiBUW10ge1xuICBjb25zdCBtYXAgPSBuZXcgTWFwPFRbS10sIFQ+KCk7XG4gIGFyci5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgIGNvbnN0IGtleSA9IGl0ZW1bcHJvcF07XG4gICAgaWYgKCFtYXAuaGFzKGtleSkpIHtcbiAgICAgIG1hcC5zZXQoa2V5LCBpdGVtKTtcbiAgICB9XG4gIH0pO1xuICByZXR1cm4gQXJyYXkuZnJvbShtYXAudmFsdWVzKCkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZGlzdGluY3RPYmplY3RCeVByb3BlcnRpZXM8VCwgSyBleHRlbmRzIGtleW9mIFQ+KGFycjogVFtdLCAuLi5wcm9wczogS1tdKTogVFtdIHtcbiAgY29uc3QgbWFwID0gbmV3IE1hcDxzdHJpbmcsIFQ+KCk7XG4gIGFyci5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgIGNvbnN0IGtleSA9IHByb3BzLm1hcChwcm9wID0+IGl0ZW1bcHJvcF0pLmpvaW4oJ18nKTtcbiAgICBpZiAoIW1hcC5oYXMoa2V5KSkge1xuICAgICAgbWFwLnNldChrZXksIGl0ZW0pO1xuICAgIH1cbiAgfSk7XG4gIHJldHVybiBBcnJheS5mcm9tKG1hcC52YWx1ZXMoKSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRDdXJyZW50TGFuZyh1c2VyU2V0dGluZ3M6IE1hcDxFZGdlLlNldHRpbmdzQ2F0ZWdvcnksIGFueT4pIHtcbiAgY29uc3QgdmFsdWU6IENsb3VkLkxvY2FsaXphdGlvbkR0byA9IHVzZXJTZXR0aW5ncz8uZ2V0KEVkZ2UuU2V0dGluZ3NDYXRlZ29yeS5Mb2NhbGl6YXRpb24pO1xuICByZXR1cm4gdmFsdWU/LmtleU5hbWUgPz8gTE9DQUxfRU5HTElTSF9MQU5HVUFHRTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzU2VhcmNoRmllbGRDaGFuZ2VkKHByZXY6IGFueSwgY3VycjogYW55KTogYm9vbGVhbiB7XG4gIGNvbnN0IGlzRmllbGRTZWxlY3RvckNoYW5nZWQgPSBwcmV2LnNlYXJjaEZpZWxkU2VsZWN0b3IgIT09IGN1cnIuc2VhcmNoRmllbGRTZWxlY3RvciAmJiBjdXJyLnNlYXJjaFZhbHVlO1xuICBjb25zdCBpc1NlYXJjaFZhbHVlQ2hhbmdlZCA9IHByZXYuc2VhcmNoVmFsdWUgIT09IGN1cnIuc2VhcmNoVmFsdWU7XG5cbiAgcmV0dXJuIChpc0ZpZWxkU2VsZWN0b3JDaGFuZ2VkIHx8IGlzU2VhcmNoVmFsdWVDaGFuZ2VkKSAmJiBpc0NoYXJhY3Rlckxlbmd0aFZhbGlkKGN1cnIuc2VhcmNoVmFsdWUpO1xufVxuXG5leHBvcnQgY29uc3QgTWFpbk1vZHVsZVRvU3ViTW9kdWxlc1Blcm1pc3Npb25UeXBlTWFwOiBOdW1iZXJNYXA8RWRnZS5QZXJtaXNzaW9uVHlwZVtdPiA9IHtcbiAgW0VkZ2UuUGVybWlzc2lvblR5cGUuQ2NNYWluXTogW10sXG4gIFtFZGdlLlBlcm1pc3Npb25UeXBlLkFjY291bnRNYW5hZ2VtZW50TWFpbl06IFtFZGdlLlBlcm1pc3Npb25UeXBlLkFjY291bnRNYW5hZ2VtZW50QWNjb3VudFZpZXcsIEVkZ2UuUGVybWlzc2lvblR5cGUuQWNjb3VudE1hbmFnZW1lbnRBY2NvdW50Q3JlYXRlLCBFZGdlLlBlcm1pc3Npb25UeXBlLkFjY291bnRNYW5hZ2VtZW50QWNjb3VudFVwZGF0ZSwgRWRnZS5QZXJtaXNzaW9uVHlwZS5BY2NvdW50TWFuYWdlbWVudEFjY291bnREZWxldGVdLFxuICBbRWRnZS5QZXJtaXNzaW9uVHlwZS5Nb250aGxpZXNNYWluXTogW0VkZ2UuUGVybWlzc2lvblR5cGUuTW9udGhsaWVzVmlldywgRWRnZS5QZXJtaXNzaW9uVHlwZS5Nb250aGxpZXNDcmVhdGUsIEVkZ2UuUGVybWlzc2lvblR5cGUuTW9udGhsaWVzVXBkYXRlLCBFZGdlLlBlcm1pc3Npb25UeXBlLk1vbnRobGllc0RlbGV0ZSwgRWRnZS5QZXJtaXNzaW9uVHlwZS5Nb250aGx5U2VyaWVzQ3JlYXRlXSxcbiAgW0VkZ2UuUGVybWlzc2lvblR5cGUuR3Vlc3RNYWluXTogW0VkZ2UuUGVybWlzc2lvblR5cGUuR3Vlc3RWaWV3LCBFZGdlLlBlcm1pc3Npb25UeXBlLkd1ZXN0Q3JlYXRlLCBFZGdlLlBlcm1pc3Npb25UeXBlLkd1ZXN0VXBkYXRlLCBFZGdlLlBlcm1pc3Npb25UeXBlLkd1ZXN0RGVsZXRlLCBFZGdlLlBlcm1pc3Npb25UeXBlLkd1ZXN0R3JvdXBWaWV3LCBFZGdlLlBlcm1pc3Npb25UeXBlLkd1ZXN0R3JvdXBDcmVhdGUsIEVkZ2UuUGVybWlzc2lvblR5cGUuR3Vlc3RIb3RlbEd1ZXN0VmlldywgRWRnZS5QZXJtaXNzaW9uVHlwZS5Ib3RlbEd1ZXN0SU9DcmVhdGVdLFxuICBbRWRnZS5QZXJtaXNzaW9uVHlwZS5WYWxpZGF0aW9uTWFpbl06IFtcbiAgICBFZGdlLlBlcm1pc3Npb25UeXBlLlZhbGlkYXRpb25FVmFsaWRhdGlvblZpZXcsIEVkZ2UuUGVybWlzc2lvblR5cGUuVmFsaWRhdGlvbkVWYWxpZGF0aW9uQ3JlYXRlLCBFZGdlLlBlcm1pc3Npb25UeXBlLlZhbGlkYXRpb25FVmFsaWRhdGlvblVwZGF0ZSwgRWRnZS5QZXJtaXNzaW9uVHlwZS5WYWxpZGF0aW9uRVZhbGlkYXRpb25EZWxldGUsXG4gICAgRWRnZS5QZXJtaXNzaW9uVHlwZS5WYWxpZGF0aW9uU3RpY2tlclZpZXcsIEVkZ2UuUGVybWlzc2lvblR5cGUuVmFsaWRhdGlvblN0aWNrZXJDcmVhdGUsIEVkZ2UuUGVybWlzc2lvblR5cGUuVmFsaWRhdGlvblN0aWNrZXJVcGRhdGUsIEVkZ2UuUGVybWlzc2lvblR5cGUuVmFsaWRhdGlvblN0aWNrZXJEZWxldGUsXG4gICAgRWRnZS5QZXJtaXNzaW9uVHlwZS5WYWxpZGF0aW9uQ291cG9uVmlldywgRWRnZS5QZXJtaXNzaW9uVHlwZS5WYWxpZGF0aW9uQ291cG9uQ3JlYXRlLCBFZGdlLlBlcm1pc3Npb25UeXBlLlZhbGlkYXRpb25Db3Vwb25VcGRhdGUsIEVkZ2UuUGVybWlzc2lvblR5cGUuVmFsaWRhdGlvbkNvdXBvbkRlbGV0ZV0sXG4gIFtFZGdlLlBlcm1pc3Npb25UeXBlLlJlcG9ydHNNYWluXTogW10sXG4gIFtFZGdlLlBlcm1pc3Npb25UeXBlLkxvdENvbmZpZ3VyYXRpb25NYWluXTogW0VkZ2UuUGVybWlzc2lvblR5cGUuTG90Q29uZmlndXJhdGlvblJhdGVzLCBFZGdlLlBlcm1pc3Npb25UeXBlLkxvdENvbmZpZ3VyYXRpb25TY2hlZHVsZXIsIEVkZ2UuUGVybWlzc2lvblR5cGUuTG90Q29uZmlndXJhdGlvblZhbGlkYXRpb25Qcm9maWxlXSxcbiAgW0VkZ2UuUGVybWlzc2lvblR5cGUuVGVuYW50U2V0dGluZ3NNYWluXTogW0VkZ2UuUGVybWlzc2lvblR5cGUuTWFuYWdlbWVudEFkbWluXVxufTtcblxuZXhwb3J0IGNvbnN0IEFwcE1vZHVsZVRvTWFpblBlcm1pc3Npb25UeXBlTWFwOiBOdW1iZXJNYXA8RWRnZS5QZXJtaXNzaW9uVHlwZT4gPSB7XG4gIFtFZGdlLkFwcE1vZHVsZS5DY106IEVkZ2UuUGVybWlzc2lvblR5cGUuQ2NNYWluLFxuICBbRWRnZS5BcHBNb2R1bGUuQWNjb3VudHNdOiBFZGdlLlBlcm1pc3Npb25UeXBlLkFjY291bnRNYW5hZ2VtZW50TWFpbixcbiAgW0VkZ2UuQXBwTW9kdWxlLk1vbnRobGllc106IEVkZ2UuUGVybWlzc2lvblR5cGUuTW9udGhsaWVzTWFpbixcbiAgW0VkZ2UuQXBwTW9kdWxlLkd1ZXN0c106IEVkZ2UuUGVybWlzc2lvblR5cGUuR3Vlc3RNYWluLFxuICBbRWRnZS5BcHBNb2R1bGUuVmFsaWRhdGlvbl06IEVkZ2UuUGVybWlzc2lvblR5cGUuVmFsaWRhdGlvbk1haW4sXG4gIFtFZGdlLkFwcE1vZHVsZS5SZXBvcnRzXTogRWRnZS5QZXJtaXNzaW9uVHlwZS5SZXBvcnRzTWFpbixcbiAgW0VkZ2UuQXBwTW9kdWxlLkxvdENvbmZpZ3VyYXRpb25dOiBFZGdlLlBlcm1pc3Npb25UeXBlLkxvdENvbmZpZ3VyYXRpb25NYWluLFxuICBbRWRnZS5BcHBNb2R1bGUuTWFuYWdlbWVudF06IEVkZ2UuUGVybWlzc2lvblR5cGUuVGVuYW50U2V0dGluZ3NNYWluLFxufTtcbiJdfQ==
|