ps-toolkit-ui 0.0.112 → 0.0.113

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.
@@ -145,20 +145,23 @@ export var PermissionTypeEnum;
145
145
  PermissionTypeEnum[PermissionTypeEnum["Form"] = -1] = "Form";
146
146
  PermissionTypeEnum[PermissionTypeEnum["Item"] = 0] = "Item";
147
147
  PermissionTypeEnum[PermissionTypeEnum["Access"] = 1] = "Access";
148
- PermissionTypeEnum[PermissionTypeEnum["Button"] = 2] = "Button";
149
- PermissionTypeEnum[PermissionTypeEnum["Option"] = 3] = "Option";
150
- PermissionTypeEnum[PermissionTypeEnum["OptionLink"] = 4] = "OptionLink";
151
- PermissionTypeEnum[PermissionTypeEnum["OptionLinkNewTab"] = 5] = "OptionLinkNewTab";
152
- PermissionTypeEnum[PermissionTypeEnum["OptionReport"] = 6] = "OptionReport";
153
- PermissionTypeEnum[PermissionTypeEnum["OptionFile"] = 7] = "OptionFile";
154
- PermissionTypeEnum[PermissionTypeEnum["OptionModal"] = 8] = "OptionModal";
155
- PermissionTypeEnum[PermissionTypeEnum["OptionConfirm"] = 9] = "OptionConfirm";
148
+ PermissionTypeEnum[PermissionTypeEnum["Option"] = 2] = "Option";
156
149
  })(PermissionTypeEnum || (PermissionTypeEnum = {}));
157
- export var PermissionOptionTypeEnum;
158
- (function (PermissionOptionTypeEnum) {
159
- PermissionOptionTypeEnum[PermissionOptionTypeEnum["Icon"] = 0] = "Icon";
160
- PermissionOptionTypeEnum[PermissionOptionTypeEnum["Button"] = 1] = "Button";
161
- })(PermissionOptionTypeEnum || (PermissionOptionTypeEnum = {}));
150
+ export var PermissionInputActionEnum;
151
+ (function (PermissionInputActionEnum) {
152
+ PermissionInputActionEnum[PermissionInputActionEnum["None"] = 0] = "None";
153
+ PermissionInputActionEnum[PermissionInputActionEnum["Link"] = 1] = "Link";
154
+ PermissionInputActionEnum[PermissionInputActionEnum["LinkNewTab"] = 2] = "LinkNewTab";
155
+ PermissionInputActionEnum[PermissionInputActionEnum["Report"] = 3] = "Report";
156
+ PermissionInputActionEnum[PermissionInputActionEnum["File"] = 4] = "File";
157
+ PermissionInputActionEnum[PermissionInputActionEnum["Modal"] = 5] = "Modal";
158
+ PermissionInputActionEnum[PermissionInputActionEnum["Confirm"] = 6] = "Confirm";
159
+ })(PermissionInputActionEnum || (PermissionInputActionEnum = {}));
160
+ export var PermissionInputTypeEnum;
161
+ (function (PermissionInputTypeEnum) {
162
+ PermissionInputTypeEnum[PermissionInputTypeEnum["Icon"] = 0] = "Icon";
163
+ PermissionInputTypeEnum[PermissionInputTypeEnum["Button"] = 1] = "Button";
164
+ })(PermissionInputTypeEnum || (PermissionInputTypeEnum = {}));
162
165
  export var VehicleType;
163
166
  (function (VehicleType) {
164
167
  VehicleType[VehicleType["Car"] = 1] = "Car";
@@ -173,4 +176,4 @@ export var TableOptionType;
173
176
  TableOptionType[TableOptionType["Show"] = 2] = "Show";
174
177
  TableOptionType[TableOptionType["Group"] = 3] = "Group";
175
178
  })(TableOptionType || (TableOptionType = {}));
176
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bS5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiJEOi9Qcm9qZWN0cy9Qc1Rvb2xraXQvVUkvcHJvamVjdHMvcHMtdG9vbGtpdC11aS9zcmMvIiwic291cmNlcyI6WyJsaWIvY2xhc3Nlcy9lbnVtLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFdBQVc7QUFDWCxNQUFNLE9BQU8sU0FBUztJQUNwQixNQUFNLENBQUMsU0FBUyxDQUFDLE9BQVk7UUFDM0IsT0FBTyxTQUFTLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFDRCxNQUFNLENBQUMsYUFBYSxDQUFDLE9BQVksRUFBRSxDQUFDO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUNELE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBWTtRQUN6QixPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssUUFBUSxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUNELE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFZO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDckMsT0FBTztnQkFDTCxHQUFHLEVBQUUsS0FBSyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUM7YUFDekIsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBRUQsTUFBTSxDQUFOLElBQVks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LDJDQUFPLENBQUE7SUFDUCx5REFBYyxDQUFBO0lBQ2QscURBQVksQ0FBQTtJQUNaLCtDQUFTLENBQUE7SUFDVCw2Q0FBUSxDQUFBO0FBQ1YsQ0FBQyxFQVBXLFdBQVcsS0FBWCxXQUFXLFFBT3RCO0FBQ0QsTUFBTSxDQUFOLElBQVksZUFLWDtBQUxELFdBQVksZUFBZTtJQUV6Qix5REFBVSxDQUFBO0lBQ1YscURBQVEsQ0FBQTtJQUNSLHVEQUFTLENBQUE7QUFDWCxDQUFDLEVBTFcsZUFBZSxLQUFmLGVBQWUsUUFLMUIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAZHluYW1pY1xyXG5leHBvcnQgY2xhc3MgRW51bVV0aWxzIHtcclxuICBzdGF0aWMgZ2V0VmFsdWVzKGVudW1PYmo6IGFueSk6IGFueVtdIHtcclxuICAgIHJldHVybiBFbnVtVXRpbHMuZ2V0S2V5cyhlbnVtT2JqKS5tYXAodmFsdWUgPT4gZW51bU9ialt2YWx1ZV0pO1xyXG4gIH1cclxuICBzdGF0aWMgZ2V0S2V5QnlWYWx1ZShlbnVtT2JqOiBhbnksIHYpOiBhbnlbXSB7XHJcbiAgICByZXR1cm4gdGhpcy5nZXRLZXlzKGVudW1PYmopLmZpbmQoa2V5ID0+IGVudW1PYmpba2V5XSA9PT0gdik7XHJcbiAgfVxyXG4gIHN0YXRpYyBnZXRLZXlzKGVudW1PYmo6IGFueSk6IGFueVtdIHtcclxuICAgIHJldHVybiBPYmplY3Qua2V5cyhlbnVtT2JqKS5maWx0ZXIoa2V5ID0+IHR5cGVvZiBlbnVtT2JqW2tleV0gPT09ICdudW1iZXInKTtcclxuICB9XHJcbiAgc3RhdGljIGdldEtleXNBbmRWYWx1ZXMoZW51bU9iajogYW55KTogYW55W10ge1xyXG4gICAgcmV0dXJuIHRoaXMuZ2V0S2V5cyhlbnVtT2JqKS5tYXAoa2V5ID0+IHtcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICBrZXksIHZhbHVlOiBlbnVtT2JqW2tleV1cclxuICAgICAgfTtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGVudW0gSW5wdXRFcnJvciB7XHJcbiAgUmVxdWlyZWQgPSAnUmVxdWlyZWQnLFxyXG4gIEludmFsaWQgPSAnSW52YWxpZCcsXHJcbiAgTGVuZ3RoID0gJ0xlbmd0aCcsXHJcbiAgTWluTGVuZ3RoID0gJ01pbkxlbmd0aCcsXHJcbiAgTWF4TGVuZ3RoID0gJ01heExlbmd0aCcsXHJcbiAgTWluQW1vdW50ID0gJ01pbkFtb3VudCcsXHJcbiAgTWF4QW1vdW50ID0gJ01heEFtb3VudCcsXHJcbiAgRXhwaXJlZCA9ICdFeHBpcmVkJyxcclxuICBFcnJvciA9ICdFcnJvcicsXHJcbiAgTm90TWF0Y2ggPSAnTm90TWF0Y2gnLFxyXG4gIE5vdEFsbG93ZWQgPSAnTm90QWxsb3dlZCcsXHJcbiAgTWF4Q29udGVudCA9ICdNYXhDb250ZW50JyxcclxuICBFeGlzdCA9ICdFeGlzdCcsXHJcbiAgTm90RXhpc3QgPSAnTm90RXhpc3QnLFxyXG4gIFdyb25nID0gJ1dyb25nJyxcclxuICBVcGxvYWQgPSAnVXBsb2FkJyxcclxufVxyXG5cclxuZXhwb3J0IGVudW0gSW5wdXRUeXBlIHtcclxuICBUZXh0LFxyXG4gIFBhc3N3b3JkLFxyXG4gIE1vYmlsZSxcclxuICBQaG9uZSxcclxuICBFbWFpbCxcclxuICBOYXRpb25hbENvZGUsXHJcbiAgUG9zdGFsQ29kZSxcclxuICBTaGViYSxcclxuICBOdW1iZXIsXHJcbiAgU2VsZWN0LFxyXG4gIFNlbGVjdFNlYXJjaCxcclxuICBTZWxlY3RBdXRvQ29tcGxldGUsXHJcbiAgRGF0ZSxcclxuICBUaW1lLFxyXG4gIERhdGVUaW1lLFxyXG4gIENoZWNrLFxyXG4gIFRleHRBcmVhLFxyXG4gIExhYmVsLFxyXG4gIEJ1dHRvbixcclxuICBTdWJtaXQsXHJcbiAgSWNvbixcclxuICBGaWxlLFxyXG4gIFVybCxcclxuICBQcmljZSxcclxuICBSYWRpbyxcclxuICBUcmVlLFxyXG4gIFBsYXF1ZSxcclxuICBQbGFxdWVNLFxyXG4gIFNlbGVjdEF1dG9Db21wbGV0ZVBsYXF1ZSxcclxuICBTZWxlY3RBdXRvQ29tcGxldGVQbGFxdWVNLFxyXG4gIEJhbmtDYXJkLFxyXG4gIENvbnN0YW50LFxyXG4gIEhpZGRlbixcclxuICBUYWJsZSxcclxuICBDYXJTZWFyY2gsXHJcbiAgQ2FyLFxyXG4gIEZpbmdlcixcclxufVxyXG5cclxuZXhwb3J0IGVudW0gT3BlcmF0aW9uRW51bVxyXG57XHJcbiAgQWxsID0gLTEsXHJcbiAgSW5zZXJ0ID0gMSxcclxuICBVcGRhdGUgPSAyLFxyXG4gIERlbGV0ZSA9IDMsXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIE1ldGhvZCB7XHJcbiAgR2V0LFxyXG4gIFBvc3QsXHJcbiAgRGVsZXRlLFxyXG4gIFB1dCxcclxuICBPcHRpb25zLFxyXG4gIFBhdGNoLFxyXG59XHJcblxyXG5leHBvcnQgZW51bSBUYWJsZUNvbGxUeXBlIHtcclxuICBUZXh0LFxyXG4gIERhdGUsXHJcbiAgVGltZSxcclxuICBEYXRlVGltZSxcclxuICBEYXRlRGlmLFxyXG4gIERhdGVSZW1haW4sXHJcbiAgVXJsLFxyXG4gIEltYWdlLFxyXG4gIEZ1bmN0aW9uLFxyXG4gIFByaWNlLFxyXG4gIFBsYXF1ZSxcclxuICBQbGFxdWVUZXh0LFxyXG4gIEZpbGVTaXplLFxyXG4gIEJvb2wsXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIFVzZXJUeXBlIHtcclxuICBBbGwgPSAwLFxyXG4gIEFkbWluID0gMSxcclxuICBVc2VyID0gMlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBTdGF0dXNFbnVtXHJcbntcclxuICBBbGwgPSAtMSxcclxuICBBY3RpdmUgPSAwLFxyXG4gIERlQWN0aXZlID0gMSxcclxuICBEZWxldGUgPSAyLFxyXG4gIFJlcG9ydCA9IDMsXHJcbn1cclxuZXhwb3J0IGVudW0gUGF5bWVudFN0YXR1c0VudW1cclxue1xyXG4gIEFsbCA9IDAsXHJcbiAgU3VjY2VzcyA9IDEwMCxcclxuICBOT0sgPSAxMDIsXHJcbiAgUmVxdWVzdCA9IDEwMyxcclxuICBOb3Rmb3VuZCA9IDEwNCxcclxuICBOb3RSZXF1ZXN0ID0gMTA1LFxyXG4gIE5vdGZvdW5kUGFja2FnZSA9IDEwNlxyXG59XHJcbmV4cG9ydCBlbnVtIFJlc3VsdFN0YXR1c0VudW1cclxue1xyXG4gIEZhaWxlZCA9IDAsXHJcbiAgU3VjY2VzcyA9IDEsXHJcbiAgVW5hdXRob3JpemVkID0gMixcclxuICBOb3RBY2Nlc3MgPSAzXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIFBlcm1pc3Npb25UeXBlRW51bVxyXG57XHJcbiAgRm9ybSA9IC0xLFxyXG4gIEl0ZW0gPSAwLFxyXG4gIEFjY2VzcyA9IDEsXHJcbiAgQnV0dG9uID0gMixcclxuICBPcHRpb24gPSAzLFxyXG4gIE9wdGlvbkxpbmsgPSA0LFxyXG4gIE9wdGlvbkxpbmtOZXdUYWIgPSA1LFxyXG4gIE9wdGlvblJlcG9ydCA9IDYsXHJcbiAgT3B0aW9uRmlsZSA9IDcsXHJcbiAgT3B0aW9uTW9kYWwgPSA4LFxyXG4gIE9wdGlvbkNvbmZpcm0gPSA5XHJcbn1cclxuZXhwb3J0IGVudW0gUGVybWlzc2lvbk9wdGlvblR5cGVFbnVtXHJcbntcclxuICBJY29uID0gMCxcclxuICBCdXR0b24gPSAxLFxyXG59XHJcblxyXG5leHBvcnQgZW51bSBWZWhpY2xlVHlwZVxyXG57XHJcbiAgQ2FyID0gMSxcclxuICBNb3RvcmN5Y2xlID0gMixcclxuICBBaXJwbGFuZSA9IDMsXHJcbiAgVHJhaW4gPSA0LFxyXG4gIFNoaXAgPSA1LFxyXG59XHJcbmV4cG9ydCBlbnVtIFRhYmxlT3B0aW9uVHlwZVxyXG57XHJcbiAgSGlkZGVuID0gMSxcclxuICBTaG93ID0gMixcclxuICBHcm91cCA9IDMsXHJcbn1cclxuIl19
179
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bS5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiJEOi9Qcm9qZWN0cy9Qc1Rvb2xraXQvVUkvcHJvamVjdHMvcHMtdG9vbGtpdC11aS9zcmMvIiwic291cmNlcyI6WyJsaWIvY2xhc3Nlcy9lbnVtLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFdBQVc7QUFDWCxNQUFNLE9BQU8sU0FBUztJQUNwQixNQUFNLENBQUMsU0FBUyxDQUFDLE9BQVk7UUFDM0IsT0FBTyxTQUFTLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFDRCxNQUFNLENBQUMsYUFBYSxDQUFDLE9BQVksRUFBRSxDQUFDO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUNELE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBWTtRQUN6QixPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssUUFBUSxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUNELE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFZO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDckMsT0FBTztnQkFDTCxHQUFHLEVBQUUsS0FBSyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUM7YUFDekIsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBRUQsTUFBTSxDQUFOLElBQVks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QUMsRUFKVyx1QkFBdUIsS0FBdkIsdUJBQXVCLFFBSWxDO0FBRUQsTUFBTSxDQUFOLElBQVksV0FPWDtBQVBELFdBQVksV0FBVztJQUVyQiwyQ0FBTyxDQUFBO0lBQ1AseURBQWMsQ0FBQTtJQUNkLHFEQUFZLENBQUE7SUFDWiwrQ0FBUyxDQUFBO0lBQ1QsNkNBQVEsQ0FBQTtBQUNWLENBQUMsRUFQVyxXQUFXLEtBQVgsV0FBVyxRQU90QjtBQUNELE1BQU0sQ0FBTixJQUFZLGVBS1g7QUFMRCxXQUFZLGVBQWU7SUFFekIseURBQVUsQ0FBQTtJQUNWLHFEQUFRLENBQUE7SUFDUix1REFBUyxDQUFBO0FBQ1gsQ0FBQyxFQUxXLGVBQWUsS0FBZixlQUFlLFFBSzFCIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQGR5bmFtaWNcclxuZXhwb3J0IGNsYXNzIEVudW1VdGlscyB7XHJcbiAgc3RhdGljIGdldFZhbHVlcyhlbnVtT2JqOiBhbnkpOiBhbnlbXSB7XHJcbiAgICByZXR1cm4gRW51bVV0aWxzLmdldEtleXMoZW51bU9iaikubWFwKHZhbHVlID0+IGVudW1PYmpbdmFsdWVdKTtcclxuICB9XHJcbiAgc3RhdGljIGdldEtleUJ5VmFsdWUoZW51bU9iajogYW55LCB2KTogYW55W10ge1xyXG4gICAgcmV0dXJuIHRoaXMuZ2V0S2V5cyhlbnVtT2JqKS5maW5kKGtleSA9PiBlbnVtT2JqW2tleV0gPT09IHYpO1xyXG4gIH1cclxuICBzdGF0aWMgZ2V0S2V5cyhlbnVtT2JqOiBhbnkpOiBhbnlbXSB7XHJcbiAgICByZXR1cm4gT2JqZWN0LmtleXMoZW51bU9iaikuZmlsdGVyKGtleSA9PiB0eXBlb2YgZW51bU9ialtrZXldID09PSAnbnVtYmVyJyk7XHJcbiAgfVxyXG4gIHN0YXRpYyBnZXRLZXlzQW5kVmFsdWVzKGVudW1PYmo6IGFueSk6IGFueVtdIHtcclxuICAgIHJldHVybiB0aGlzLmdldEtleXMoZW51bU9iaikubWFwKGtleSA9PiB7XHJcbiAgICAgIHJldHVybiB7XHJcbiAgICAgICAga2V5LCB2YWx1ZTogZW51bU9ialtrZXldXHJcbiAgICAgIH07XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIElucHV0RXJyb3Ige1xyXG4gIFJlcXVpcmVkID0gJ1JlcXVpcmVkJyxcclxuICBJbnZhbGlkID0gJ0ludmFsaWQnLFxyXG4gIExlbmd0aCA9ICdMZW5ndGgnLFxyXG4gIE1pbkxlbmd0aCA9ICdNaW5MZW5ndGgnLFxyXG4gIE1heExlbmd0aCA9ICdNYXhMZW5ndGgnLFxyXG4gIE1pbkFtb3VudCA9ICdNaW5BbW91bnQnLFxyXG4gIE1heEFtb3VudCA9ICdNYXhBbW91bnQnLFxyXG4gIEV4cGlyZWQgPSAnRXhwaXJlZCcsXHJcbiAgRXJyb3IgPSAnRXJyb3InLFxyXG4gIE5vdE1hdGNoID0gJ05vdE1hdGNoJyxcclxuICBOb3RBbGxvd2VkID0gJ05vdEFsbG93ZWQnLFxyXG4gIE1heENvbnRlbnQgPSAnTWF4Q29udGVudCcsXHJcbiAgRXhpc3QgPSAnRXhpc3QnLFxyXG4gIE5vdEV4aXN0ID0gJ05vdEV4aXN0JyxcclxuICBXcm9uZyA9ICdXcm9uZycsXHJcbiAgVXBsb2FkID0gJ1VwbG9hZCcsXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIElucHV0VHlwZSB7XHJcbiAgVGV4dCxcclxuICBQYXNzd29yZCxcclxuICBNb2JpbGUsXHJcbiAgUGhvbmUsXHJcbiAgRW1haWwsXHJcbiAgTmF0aW9uYWxDb2RlLFxyXG4gIFBvc3RhbENvZGUsXHJcbiAgU2hlYmEsXHJcbiAgTnVtYmVyLFxyXG4gIFNlbGVjdCxcclxuICBTZWxlY3RTZWFyY2gsXHJcbiAgU2VsZWN0QXV0b0NvbXBsZXRlLFxyXG4gIERhdGUsXHJcbiAgVGltZSxcclxuICBEYXRlVGltZSxcclxuICBDaGVjayxcclxuICBUZXh0QXJlYSxcclxuICBMYWJlbCxcclxuICBCdXR0b24sXHJcbiAgU3VibWl0LFxyXG4gIEljb24sXHJcbiAgRmlsZSxcclxuICBVcmwsXHJcbiAgUHJpY2UsXHJcbiAgUmFkaW8sXHJcbiAgVHJlZSxcclxuICBQbGFxdWUsXHJcbiAgUGxhcXVlTSxcclxuICBTZWxlY3RBdXRvQ29tcGxldGVQbGFxdWUsXHJcbiAgU2VsZWN0QXV0b0NvbXBsZXRlUGxhcXVlTSxcclxuICBCYW5rQ2FyZCxcclxuICBDb25zdGFudCxcclxuICBIaWRkZW4sXHJcbiAgVGFibGUsXHJcbiAgQ2FyU2VhcmNoLFxyXG4gIENhcixcclxuICBGaW5nZXIsXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIE9wZXJhdGlvbkVudW1cclxue1xyXG4gIEFsbCA9IC0xLFxyXG4gIEluc2VydCA9IDEsXHJcbiAgVXBkYXRlID0gMixcclxuICBEZWxldGUgPSAzLFxyXG59XHJcblxyXG5leHBvcnQgZW51bSBNZXRob2Qge1xyXG4gIEdldCxcclxuICBQb3N0LFxyXG4gIERlbGV0ZSxcclxuICBQdXQsXHJcbiAgT3B0aW9ucyxcclxuICBQYXRjaCxcclxufVxyXG5cclxuZXhwb3J0IGVudW0gVGFibGVDb2xsVHlwZSB7XHJcbiAgVGV4dCxcclxuICBEYXRlLFxyXG4gIFRpbWUsXHJcbiAgRGF0ZVRpbWUsXHJcbiAgRGF0ZURpZixcclxuICBEYXRlUmVtYWluLFxyXG4gIFVybCxcclxuICBJbWFnZSxcclxuICBGdW5jdGlvbixcclxuICBQcmljZSxcclxuICBQbGFxdWUsXHJcbiAgUGxhcXVlVGV4dCxcclxuICBGaWxlU2l6ZSxcclxuICBCb29sLFxyXG59XHJcblxyXG5leHBvcnQgZW51bSBVc2VyVHlwZSB7XHJcbiAgQWxsID0gMCxcclxuICBBZG1pbiA9IDEsXHJcbiAgVXNlciA9IDJcclxufVxyXG5cclxuZXhwb3J0IGVudW0gU3RhdHVzRW51bVxyXG57XHJcbiAgQWxsID0gLTEsXHJcbiAgQWN0aXZlID0gMCxcclxuICBEZUFjdGl2ZSA9IDEsXHJcbiAgRGVsZXRlID0gMixcclxuICBSZXBvcnQgPSAzLFxyXG59XHJcbmV4cG9ydCBlbnVtIFBheW1lbnRTdGF0dXNFbnVtXHJcbntcclxuICBBbGwgPSAwLFxyXG4gIFN1Y2Nlc3MgPSAxMDAsXHJcbiAgTk9LID0gMTAyLFxyXG4gIFJlcXVlc3QgPSAxMDMsXHJcbiAgTm90Zm91bmQgPSAxMDQsXHJcbiAgTm90UmVxdWVzdCA9IDEwNSxcclxuICBOb3Rmb3VuZFBhY2thZ2UgPSAxMDZcclxufVxyXG5leHBvcnQgZW51bSBSZXN1bHRTdGF0dXNFbnVtXHJcbntcclxuICBGYWlsZWQgPSAwLFxyXG4gIFN1Y2Nlc3MgPSAxLFxyXG4gIFVuYXV0aG9yaXplZCA9IDIsXHJcbiAgTm90QWNjZXNzID0gM1xyXG59XHJcblxyXG5leHBvcnQgZW51bSBQZXJtaXNzaW9uVHlwZUVudW1cclxue1xyXG4gIEZvcm0gPSAtMSxcclxuICBJdGVtID0gMCxcclxuICBBY2Nlc3MgPSAxLFxyXG4gIE9wdGlvbiA9IDIsXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIFBlcm1pc3Npb25JbnB1dEFjdGlvbkVudW1cclxue1xyXG4gIE5vbmUgPSAwLFxyXG4gIExpbmsgPSAxLFxyXG4gIExpbmtOZXdUYWIgPSAyLFxyXG4gIFJlcG9ydCA9IDMsXHJcbiAgRmlsZSA9IDQsXHJcbiAgTW9kYWwgPSA1LFxyXG4gIENvbmZpcm0gPSA2XHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIFBlcm1pc3Npb25JbnB1dFR5cGVFbnVtXHJcbntcclxuICBJY29uID0gMCxcclxuICBCdXR0b24gPSAxLFxyXG59XHJcblxyXG5leHBvcnQgZW51bSBWZWhpY2xlVHlwZVxyXG57XHJcbiAgQ2FyID0gMSxcclxuICBNb3RvcmN5Y2xlID0gMixcclxuICBBaXJwbGFuZSA9IDMsXHJcbiAgVHJhaW4gPSA0LFxyXG4gIFNoaXAgPSA1LFxyXG59XHJcbmV4cG9ydCBlbnVtIFRhYmxlT3B0aW9uVHlwZVxyXG57XHJcbiAgSGlkZGVuID0gMSxcclxuICBTaG93ID0gMixcclxuICBHcm91cCA9IDMsXHJcbn1cclxuIl19
@@ -1,10 +1,11 @@
1
1
  import { PermissionTypeEnum } from './enum.class';
2
2
  export class PermissionClass {
3
- constructor(Name = '', Icon = '', Type = null, OptionType = null, Area = '', Controller = '', Action = '', Condition = null, Accesses = []) {
3
+ constructor(Name = '', Icon = '', Type = null, InputType = null, InputAction = null, Area = '', Controller = '', Action = '', Condition = null, Accesses = []) {
4
4
  this.Name = Name;
5
5
  this.Icon = Icon;
6
6
  this.Type = Type;
7
- this.OptionType = OptionType;
7
+ this.InputType = InputType;
8
+ this.InputAction = InputAction;
8
9
  this.Area = Area;
9
10
  this.Controller = Controller;
10
11
  this.Action = Action;
@@ -20,17 +21,20 @@ export class PermissionClass {
20
21
  hasAccess(a) {
21
22
  return this.Accesses.filter(x => x.Action === a && x.Type === PermissionTypeEnum.Access).length > 0;
22
23
  }
24
+ getAccesses() {
25
+ return this.Accesses.filter(x => x.Type === PermissionTypeEnum.Access);
26
+ }
23
27
  delete(a) {
24
28
  this.Accesses = this.Accesses.filter(x => x.Action !== a);
25
29
  }
26
30
  hasOption(a) {
27
- return this.Accesses.filter(x => x.Action === a && x.Type !== PermissionTypeEnum.Access).length > 0;
31
+ return this.Accesses.filter(x => x.Action === a && x.Type === PermissionTypeEnum.Option).length > 0;
28
32
  }
29
33
  getOptions() {
30
- return this.Accesses.filter(x => x.Type !== PermissionTypeEnum.Access);
34
+ return this.Accesses.filter(x => x.Type === PermissionTypeEnum.Option);
31
35
  }
32
36
  getOption(a) {
33
- const c = this.Accesses.filter(x => x.Action === a && x.Type !== PermissionTypeEnum.Access);
37
+ const c = this.Accesses.filter(x => x.Action === a && x.Type === PermissionTypeEnum.Option);
34
38
  return c.length > 0 ? c[0] : null;
35
39
  }
36
40
  getUrl() {
@@ -39,4 +43,4 @@ export class PermissionClass {
39
43
  (this.Action ? this.Action : '');
40
44
  }
41
45
  }
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiJEOi9Qcm9qZWN0cy9Qc1Rvb2xraXQvVUkvcHJvamVjdHMvcHMtdG9vbGtpdC11aS9zcmMvIiwic291cmNlcyI6WyJsaWIvY2xhc3Nlcy9wZXJtaXNzaW9uLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBc0Msa0JBQWtCLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFHckYsTUFBTSxPQUFPLGVBQWU7SUFDMUIsWUFBbUIsT0FBZSxFQUFFLEVBQVMsT0FBZSxFQUFFLEVBQVMsT0FBMkIsSUFBSSxFQUNuRixhQUF1QyxJQUFJLEVBQVMsT0FBZSxFQUFFLEVBQ3JFLGFBQXFCLEVBQUUsRUFBUyxTQUFpQixFQUFFLEVBQVMsWUFBb0IsSUFBSSxFQUNwRixXQUE4QixFQUFFO1FBSGhDLFNBQUksR0FBSixJQUFJLENBQWE7UUFBUyxTQUFJLEdBQUosSUFBSSxDQUFhO1FBQVMsU0FBSSxHQUFKLElBQUksQ0FBMkI7UUFDbkYsZUFBVSxHQUFWLFVBQVUsQ0FBaUM7UUFBUyxTQUFJLEdBQUosSUFBSSxDQUFhO1FBQ3JFLGVBQVUsR0FBVixVQUFVLENBQWE7UUFBUyxXQUFNLEdBQU4sTUFBTSxDQUFhO1FBQVMsY0FBUyxHQUFULFNBQVMsQ0FBZTtRQUNwRixhQUFRLEdBQVIsUUFBUSxDQUF3QjtRQUduRCxjQUFTLEdBQVcsSUFBSSxDQUFDO1FBQ3pCLFlBQU8sR0FBa0IsSUFBSSxDQUFDO0lBSDlCLENBQUM7SUFJRCxTQUFTLENBQUMsQ0FBUztRQUNqQixNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEtBQUssa0JBQWtCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDNUYsT0FBTyxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDcEMsQ0FBQztJQUNELFNBQVMsQ0FBQyxDQUFTO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDdEcsQ0FBQztJQUNELE1BQU0sQ0FBQyxDQUFTO1FBQ2QsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUNELFNBQVMsQ0FBQyxDQUFTO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDdEcsQ0FBQztJQUNELFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBQ0QsU0FBUyxDQUFDLENBQVM7UUFDakIsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzVGLE9BQU8sQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ3BDLENBQUM7SUFDRCxNQUFNO1FBQ0osT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLFVBQVUsR0FBRyxHQUFHO1lBQ3JFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUM1QyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5wdXRUeXBlLCBQZXJtaXNzaW9uT3B0aW9uVHlwZUVudW0sIFBlcm1pc3Npb25UeXBlRW51bX0gZnJvbSAnLi9lbnVtLmNsYXNzJztcclxuaW1wb3J0IHtNb2RhbENsYXNzfSBmcm9tICcuL21vZGFsLmNsYXNzJztcclxuXHJcbmV4cG9ydCBjbGFzcyBQZXJtaXNzaW9uQ2xhc3Mge1xyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBOYW1lOiBzdHJpbmcgPSAnJywgcHVibGljIEljb246IHN0cmluZyA9ICcnLCBwdWJsaWMgVHlwZTogUGVybWlzc2lvblR5cGVFbnVtID0gbnVsbCxcclxuICAgICAgICAgICAgICBwdWJsaWMgT3B0aW9uVHlwZTogUGVybWlzc2lvbk9wdGlvblR5cGVFbnVtID0gbnVsbCwgcHVibGljIEFyZWE6IHN0cmluZyA9ICcnLFxyXG4gICAgICAgICAgICAgIHB1YmxpYyBDb250cm9sbGVyOiBzdHJpbmcgPSAnJywgcHVibGljIEFjdGlvbjogc3RyaW5nID0gJycsIHB1YmxpYyBDb25kaXRpb246IHN0cmluZyA9IG51bGwsXHJcbiAgICAgICAgICAgICAgcHVibGljIEFjY2Vzc2VzOiBQZXJtaXNzaW9uQ2xhc3NbXSA9IFtdKSB7XHJcbiAgfVxyXG4gIE1vZGFsOiBNb2RhbENsYXNzO1xyXG4gIFJlbGF0ZWRJZDogc3RyaW5nID0gbnVsbDtcclxuICBPbkNsaWNrOiAoYnRuKSA9PiB2b2lkID0gbnVsbDtcclxuICBnZXRBY2Nlc3MoYTogc3RyaW5nKTogUGVybWlzc2lvbkNsYXNze1xyXG4gICAgY29uc3QgYyA9IHRoaXMuQWNjZXNzZXMuZmlsdGVyKHggPT4geC5BY3Rpb24gPT09IGEgJiYgeC5UeXBlID09PSBQZXJtaXNzaW9uVHlwZUVudW0uQWNjZXNzKTtcclxuICAgIHJldHVybiBjLmxlbmd0aCA+IDAgPyBjWzBdIDogbnVsbDtcclxuICB9XHJcbiAgaGFzQWNjZXNzKGE6IHN0cmluZyk6IGJvb2xlYW57XHJcbiAgICByZXR1cm4gdGhpcy5BY2Nlc3Nlcy5maWx0ZXIoeCA9PiB4LkFjdGlvbiA9PT0gYSAmJiB4LlR5cGUgPT09IFBlcm1pc3Npb25UeXBlRW51bS5BY2Nlc3MpLmxlbmd0aCA+IDA7XHJcbiAgfVxyXG4gIGRlbGV0ZShhOiBzdHJpbmcpOiB2b2lke1xyXG4gICAgdGhpcy5BY2Nlc3NlcyA9IHRoaXMuQWNjZXNzZXMuZmlsdGVyKHggPT4geC5BY3Rpb24gIT09IGEpO1xyXG4gIH1cclxuICBoYXNPcHRpb24oYTogc3RyaW5nKTogYm9vbGVhbntcclxuICAgIHJldHVybiB0aGlzLkFjY2Vzc2VzLmZpbHRlcih4ID0+IHguQWN0aW9uID09PSBhICYmIHguVHlwZSAhPT0gUGVybWlzc2lvblR5cGVFbnVtLkFjY2VzcykubGVuZ3RoID4gMDtcclxuICB9XHJcbiAgZ2V0T3B0aW9ucygpOiBQZXJtaXNzaW9uQ2xhc3NbXXtcclxuICAgIHJldHVybiB0aGlzLkFjY2Vzc2VzLmZpbHRlcih4ID0+IHguVHlwZSAhPT0gUGVybWlzc2lvblR5cGVFbnVtLkFjY2Vzcyk7XHJcbiAgfVxyXG4gIGdldE9wdGlvbihhOiBzdHJpbmcpOiBQZXJtaXNzaW9uQ2xhc3N7XHJcbiAgICBjb25zdCBjID0gdGhpcy5BY2Nlc3Nlcy5maWx0ZXIoeCA9PiB4LkFjdGlvbiA9PT0gYSAmJiB4LlR5cGUgIT09IFBlcm1pc3Npb25UeXBlRW51bS5BY2Nlc3MpO1xyXG4gICAgcmV0dXJuIGMubGVuZ3RoID4gMCA/IGNbMF0gOiBudWxsO1xyXG4gIH1cclxuICBnZXRVcmwoKTogc3RyaW5ne1xyXG4gICAgcmV0dXJuICh0aGlzLkFyZWEgPyAnLycgKyB0aGlzLkFyZWEgOiAnJykgKyAnLycgKyB0aGlzLkNvbnRyb2xsZXIgKyAnLycgK1xyXG4gICAgICAodGhpcy5SZWxhdGVkSWQgPyBgJHt0aGlzLlJlbGF0ZWRJZH0vYCA6ICcnKSArXHJcbiAgICAgICh0aGlzLkFjdGlvbiA/IHRoaXMuQWN0aW9uIDogJycpO1xyXG4gIH1cclxufVxyXG4iXX0=
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiJEOi9Qcm9qZWN0cy9Qc1Rvb2xraXQvVUkvcHJvamVjdHMvcHMtdG9vbGtpdC11aS9zcmMvIiwic291cmNlcyI6WyJsaWIvY2xhc3Nlcy9wZXJtaXNzaW9uLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUQsa0JBQWtCLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFHcEcsTUFBTSxPQUFPLGVBQWU7SUFDMUIsWUFBbUIsT0FBZSxFQUFFLEVBQVMsT0FBZSxFQUFFLEVBQVMsT0FBMkIsSUFBSSxFQUNuRixZQUFxQyxJQUFJLEVBQVMsY0FBeUMsSUFBSSxFQUMvRixPQUFlLEVBQUUsRUFBUyxhQUFxQixFQUFFLEVBQVMsU0FBaUIsRUFBRSxFQUFTLFlBQW9CLElBQUksRUFDOUcsV0FBOEIsRUFBRTtRQUhoQyxTQUFJLEdBQUosSUFBSSxDQUFhO1FBQVMsU0FBSSxHQUFKLElBQUksQ0FBYTtRQUFTLFNBQUksR0FBSixJQUFJLENBQTJCO1FBQ25GLGNBQVMsR0FBVCxTQUFTLENBQWdDO1FBQVMsZ0JBQVcsR0FBWCxXQUFXLENBQWtDO1FBQy9GLFNBQUksR0FBSixJQUFJLENBQWE7UUFBUyxlQUFVLEdBQVYsVUFBVSxDQUFhO1FBQVMsV0FBTSxHQUFOLE1BQU0sQ0FBYTtRQUFTLGNBQVMsR0FBVCxTQUFTLENBQWU7UUFDOUcsYUFBUSxHQUFSLFFBQVEsQ0FBd0I7UUFHbkQsY0FBUyxHQUFXLElBQUksQ0FBQztRQUN6QixZQUFPLEdBQWtCLElBQUksQ0FBQztJQUg5QixDQUFDO0lBSUQsU0FBUyxDQUFDLENBQVM7UUFDakIsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzVGLE9BQU8sQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ3BDLENBQUM7SUFDRCxTQUFTLENBQUMsQ0FBUztRQUNqQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQ3RHLENBQUM7SUFDRCxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssa0JBQWtCLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUNELE1BQU0sQ0FBQyxDQUFTO1FBQ2QsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUNELFNBQVMsQ0FBQyxDQUFTO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDdEcsQ0FBQztJQUNELFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBQ0QsU0FBUyxDQUFDLENBQVM7UUFDakIsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzVGLE9BQU8sQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ3BDLENBQUM7SUFDRCxNQUFNO1FBQ0osT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLFVBQVUsR0FBRyxHQUFHO1lBQ3JFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUM1QyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7UGVybWlzc2lvbklucHV0QWN0aW9uRW51bSwgUGVybWlzc2lvbklucHV0VHlwZUVudW0sIFBlcm1pc3Npb25UeXBlRW51bX0gZnJvbSAnLi9lbnVtLmNsYXNzJztcclxuaW1wb3J0IHtNb2RhbENsYXNzfSBmcm9tICcuL21vZGFsLmNsYXNzJztcclxuXHJcbmV4cG9ydCBjbGFzcyBQZXJtaXNzaW9uQ2xhc3Mge1xyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBOYW1lOiBzdHJpbmcgPSAnJywgcHVibGljIEljb246IHN0cmluZyA9ICcnLCBwdWJsaWMgVHlwZTogUGVybWlzc2lvblR5cGVFbnVtID0gbnVsbCxcclxuICAgICAgICAgICAgICBwdWJsaWMgSW5wdXRUeXBlOiBQZXJtaXNzaW9uSW5wdXRUeXBlRW51bSA9IG51bGwsIHB1YmxpYyBJbnB1dEFjdGlvbjogUGVybWlzc2lvbklucHV0QWN0aW9uRW51bSA9IG51bGwsXHJcbiAgICAgICAgICAgICAgcHVibGljIEFyZWE6IHN0cmluZyA9ICcnLCBwdWJsaWMgQ29udHJvbGxlcjogc3RyaW5nID0gJycsIHB1YmxpYyBBY3Rpb246IHN0cmluZyA9ICcnLCBwdWJsaWMgQ29uZGl0aW9uOiBzdHJpbmcgPSBudWxsLFxyXG4gICAgICAgICAgICAgIHB1YmxpYyBBY2Nlc3NlczogUGVybWlzc2lvbkNsYXNzW10gPSBbXSkge1xyXG4gIH1cclxuICBNb2RhbDogTW9kYWxDbGFzcztcclxuICBSZWxhdGVkSWQ6IHN0cmluZyA9IG51bGw7XHJcbiAgT25DbGljazogKGJ0bikgPT4gdm9pZCA9IG51bGw7XHJcbiAgZ2V0QWNjZXNzKGE6IHN0cmluZyk6IFBlcm1pc3Npb25DbGFzc3tcclxuICAgIGNvbnN0IGMgPSB0aGlzLkFjY2Vzc2VzLmZpbHRlcih4ID0+IHguQWN0aW9uID09PSBhICYmIHguVHlwZSA9PT0gUGVybWlzc2lvblR5cGVFbnVtLkFjY2Vzcyk7XHJcbiAgICByZXR1cm4gYy5sZW5ndGggPiAwID8gY1swXSA6IG51bGw7XHJcbiAgfVxyXG4gIGhhc0FjY2VzcyhhOiBzdHJpbmcpOiBib29sZWFue1xyXG4gICAgcmV0dXJuIHRoaXMuQWNjZXNzZXMuZmlsdGVyKHggPT4geC5BY3Rpb24gPT09IGEgJiYgeC5UeXBlID09PSBQZXJtaXNzaW9uVHlwZUVudW0uQWNjZXNzKS5sZW5ndGggPiAwO1xyXG4gIH1cclxuICBnZXRBY2Nlc3NlcygpOiBQZXJtaXNzaW9uQ2xhc3NbXXtcclxuICAgIHJldHVybiB0aGlzLkFjY2Vzc2VzLmZpbHRlcih4ID0+IHguVHlwZSA9PT0gUGVybWlzc2lvblR5cGVFbnVtLkFjY2Vzcyk7XHJcbiAgfVxyXG4gIGRlbGV0ZShhOiBzdHJpbmcpOiB2b2lke1xyXG4gICAgdGhpcy5BY2Nlc3NlcyA9IHRoaXMuQWNjZXNzZXMuZmlsdGVyKHggPT4geC5BY3Rpb24gIT09IGEpO1xyXG4gIH1cclxuICBoYXNPcHRpb24oYTogc3RyaW5nKTogYm9vbGVhbntcclxuICAgIHJldHVybiB0aGlzLkFjY2Vzc2VzLmZpbHRlcih4ID0+IHguQWN0aW9uID09PSBhICYmIHguVHlwZSA9PT0gUGVybWlzc2lvblR5cGVFbnVtLk9wdGlvbikubGVuZ3RoID4gMDtcclxuICB9XHJcbiAgZ2V0T3B0aW9ucygpOiBQZXJtaXNzaW9uQ2xhc3NbXXtcclxuICAgIHJldHVybiB0aGlzLkFjY2Vzc2VzLmZpbHRlcih4ID0+IHguVHlwZSA9PT0gUGVybWlzc2lvblR5cGVFbnVtLk9wdGlvbik7XHJcbiAgfVxyXG4gIGdldE9wdGlvbihhOiBzdHJpbmcpOiBQZXJtaXNzaW9uQ2xhc3N7XHJcbiAgICBjb25zdCBjID0gdGhpcy5BY2Nlc3Nlcy5maWx0ZXIoeCA9PiB4LkFjdGlvbiA9PT0gYSAmJiB4LlR5cGUgPT09IFBlcm1pc3Npb25UeXBlRW51bS5PcHRpb24pO1xyXG4gICAgcmV0dXJuIGMubGVuZ3RoID4gMCA/IGNbMF0gOiBudWxsO1xyXG4gIH1cclxuICBnZXRVcmwoKTogc3RyaW5ne1xyXG4gICAgcmV0dXJuICh0aGlzLkFyZWEgPyAnLycgKyB0aGlzLkFyZWEgOiAnJykgKyAnLycgKyB0aGlzLkNvbnRyb2xsZXIgKyAnLycgK1xyXG4gICAgICAodGhpcy5SZWxhdGVkSWQgPyBgJHt0aGlzLlJlbGF0ZWRJZH0vYCA6ICcnKSArXHJcbiAgICAgICh0aGlzLkFjdGlvbiA/IHRoaXMuQWN0aW9uIDogJycpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,6 +1,6 @@
1
1
  import { ModalClass } from './modal.class';
2
2
  import { InputClass } from './form.class';
3
- import { InputType, Method, PermissionOptionTypeEnum, PermissionTypeEnum, TableCollType, TableOptionType } from './enum.class';
3
+ import { InputType, Method, PermissionInputActionEnum, PermissionInputTypeEnum, PermissionTypeEnum, TableCollType, TableOptionType } from './enum.class';
4
4
  import { RequestClass } from './request.class';
5
5
  import { PermissionClass } from './permission.class';
6
6
  import { HelperClass } from './helper.class';
@@ -110,50 +110,49 @@ export class TableClass {
110
110
  this.permission = false;
111
111
  return;
112
112
  }
113
- const insertAccess = this.permissions.getAccess('Insert');
114
- if (insertAccess != null) {
115
- const insert = new InputClass(this.environment, this.l, insertAccess.Name, 'fad fa-plus fa-rotate-90', InputType.Button, 'w-u green h-30');
116
- if (this.form) {
117
- this.form.url = this.form.baseUrl = this.url + 'Insert';
118
- if (!this.form.onTop) {
119
- insert.onClick = () => {
120
- this.form.onSuccessBase = () => {
121
- this.modal.hide();
122
- this.load();
113
+ for (const access of this.permissions.getAccesses()) {
114
+ const accessInp = new InputClass(this.environment, this.l, access.Name, access.Icon, access.InputType === PermissionInputTypeEnum.Button ? InputType.Button : InputType.Icon, 'w-u h-30');
115
+ if (access.Action === 'Insert') {
116
+ if (this.form) {
117
+ this.form.url = this.form.baseUrl = this.url + 'Insert';
118
+ if (!this.form.onTop) {
119
+ accessInp.onClick = () => {
120
+ this.form.onSuccessBase = () => {
121
+ this.modal.hide();
122
+ this.load();
123
+ };
124
+ this.showInsertModal();
123
125
  };
124
- this.showInsertModal();
125
- };
126
- this.buttons.unshift(insert);
126
+ this.buttons.unshift(accessInp);
127
+ }
128
+ else {
129
+ this.form.displayLabel = false;
130
+ }
127
131
  }
128
132
  else {
129
- this.form.displayLabel = false;
133
+ this.buttons.unshift(accessInp);
134
+ if (this.modal) {
135
+ accessInp.onClick = () => {
136
+ this.modal.show();
137
+ };
138
+ }
139
+ else {
140
+ accessInp.url = this.url + 'Insert';
141
+ }
130
142
  }
131
143
  }
132
- else {
133
- this.buttons.unshift(insert);
134
- if (this.modal) {
135
- insert.onClick = () => {
136
- this.modal.show();
137
- };
138
- }
139
- else {
140
- insert.url = this.url + 'Insert';
141
- }
144
+ else if (access.InputAction === PermissionInputActionEnum.Report) {
145
+ const p = new PermissionClass();
146
+ p.RelatedId = 'Index';
147
+ p.Area = this.permissions.Area;
148
+ p.Controller = 'Print';
149
+ p.Action = this.permissions.Controller;
150
+ accessInp.url = '/Report' + p.getUrl();
151
+ accessInp.urlNewTab = true;
142
152
  }
153
+ this.buttons.push(accessInp);
143
154
  }
144
- const reportAccess = this.permissions.getAccess('Report');
145
- if (reportAccess != null) {
146
- const report = new InputClass(this.environment, this.l, reportAccess.Name, reportAccess.Icon, InputType.Button, 'm-h-5');
147
- const p = new PermissionClass();
148
- p.RelatedId = 'Index';
149
- p.Area = this.permissions.Area;
150
- p.Controller = 'Print';
151
- p.Action = this.permissions.Controller;
152
- report.url = '/Report' + p.getUrl();
153
- report.urlNewTab = true;
154
- this.extraButtons.push(report);
155
- }
156
- if ((this.permissions.hasAccess('Insert') || this.permissions.hasAccess('Update')) && this.form) {
155
+ if ((this.permissions.hasAccess('Insert') || this.permissions.hasOption('Update')) && this.form) {
157
156
  this.form.addButtons('Save', 'green', true, this.permissions.Type === PermissionTypeEnum.Form ? (data) => {
158
157
  if (data.Id) {
159
158
  const i = this.rows.findIndex(x => x.Id === data.Id);
@@ -185,18 +184,18 @@ export class TableClass {
185
184
  if (this.options.filter(x => x.name === option.Name).length > 0) {
186
185
  continue;
187
186
  }
188
- const opt = new InputClass(this.environment, this.l, option.Name, option.Icon, option.OptionType === PermissionOptionTypeEnum.Icon ? InputType.Icon : InputType.Button, 'blue h-25 m-h-5 d-ib va-m f-u');
187
+ const opt = new InputClass(this.environment, this.l, option.Name, option.Icon, option.InputType === PermissionInputTypeEnum.Icon ? InputType.Icon : InputType.Button, 'blue h-25 m-h-5 d-ib va-m f-u');
189
188
  opt.condition = option.Condition;
190
- if (option.Type === PermissionTypeEnum.OptionLink || option.Type === PermissionTypeEnum.OptionLinkNewTab) {
189
+ if (option.InputAction === PermissionInputActionEnum.Link || option.InputAction === PermissionInputActionEnum.LinkNewTab) {
191
190
  const p = new PermissionClass();
192
191
  p.RelatedId = this.permissions.RelatedId;
193
192
  p.Area = this.permissions.Area;
194
193
  p.Controller = option.Controller ? option.Controller : this.permissions.Controller;
195
194
  p.Action = this.permissions.Action;
196
195
  opt.url = p.getUrl() + option.Action + '/{}';
197
- opt.urlNewTab = option.Type === PermissionTypeEnum.OptionLinkNewTab;
196
+ opt.urlNewTab = option.InputAction === PermissionInputActionEnum.LinkNewTab;
198
197
  }
199
- else if (option.Type === PermissionTypeEnum.OptionModal) {
198
+ else if (option.InputAction === PermissionInputActionEnum.Modal) {
200
199
  opt.modal = option.Modal;
201
200
  opt.onClick = (btn) => {
202
201
  if (opt.modal.table) {
@@ -241,7 +240,7 @@ export class TableClass {
241
240
  }
242
241
  };
243
242
  }
244
- else if (option.Type === PermissionTypeEnum.OptionReport) {
243
+ else if (option.InputAction === PermissionInputActionEnum.Report) {
245
244
  const p = new PermissionClass();
246
245
  p.RelatedId = 'Index';
247
246
  p.Area = this.permissions.Area;
@@ -250,7 +249,7 @@ export class TableClass {
250
249
  opt.url = '/Report' + p.getUrl() + '/{}';
251
250
  opt.urlNewTab = true;
252
251
  }
253
- else if (option.Type === PermissionTypeEnum.OptionFile) {
252
+ else if (option.InputAction === PermissionInputActionEnum.File) {
254
253
  const p = new PermissionClass();
255
254
  p.RelatedId = this.permissions.RelatedId;
256
255
  p.Area = this.permissions.Area;
@@ -259,7 +258,7 @@ export class TableClass {
259
258
  opt.url = '/File' + p.getUrl() + '/{}';
260
259
  opt.urlNewTab = true;
261
260
  }
262
- else if (option.Type === PermissionTypeEnum.OptionConfirm) {
261
+ else if (option.InputAction === PermissionInputActionEnum.Confirm) {
263
262
  opt.onClick = (btn) => {
264
263
  const p = new PermissionClass();
265
264
  p.RelatedId = this.permissions.RelatedId;
@@ -302,4 +301,4 @@ export class TableRowClass {
302
301
  this.children = children;
303
302
  }
304
303
  }
305
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiRDovUHJvamVjdHMvUHNUb29sa2l0L1VJL3Byb2plY3RzL3BzLXRvb2xraXQtdWkvc3JjLyIsInNvdXJjZXMiOlsibGliL2NsYXNzZXMvdGFibGUuY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQVksVUFBVSxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQ25ELE9BQU8sRUFBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLHdCQUF3QixFQUFFLGtCQUFrQixFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDN0gsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUNuRCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsTUFBTSxPQUFPLFVBQVU7SUFDckIsWUFBWSxXQUFnQixFQUFFLENBQW9CLEVBQUUsV0FBNEIsRUFBRSxPQUFlLEVBQUUsRUFBRSxNQUFjLEVBQUUsRUFDekcsVUFBa0IsRUFBRSxFQUFFLFNBQWlCLEVBQUU7UUFVckQsZ0JBQVcsR0FBUSxJQUFJLENBQUM7UUFHeEIsZUFBVSxHQUFHLElBQUksQ0FBQztRQUlsQixVQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ1gsUUFBRyxHQUFHLElBQUksQ0FBQztRQUNYLFdBQU0sR0FBVyxNQUFNLENBQUMsSUFBSSxDQUFDO1FBQzdCLFdBQU0sR0FBRyxFQUFFLENBQUM7UUFDWixZQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ2IsU0FBSSxHQUFxQixFQUFFLENBQUM7UUFDNUIsWUFBTyxHQUFpQixFQUFFLENBQUM7UUFDM0IsWUFBTyxHQUFpQixFQUFFLENBQUM7UUFDM0IsU0FBSSxHQUFHLEVBQUUsQ0FBQztRQUNWLFVB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QixJQUFJLEVBQVMsUUFBUTtRQUFyQixTQUFJLEdBQUosSUFBSSxDQUFBO1FBQVMsYUFBUSxHQUFSLFFBQVEsQ0FBQTtJQUN4QyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge01vZGFsQ2xhc3N9IGZyb20gJy4vbW9kYWwuY2xhc3MnO1xyXG5pbXBvcnQge0Zvcm1DbGFzcywgSW5wdXRDbGFzc30gZnJvbSAnLi9mb3JtLmNsYXNzJztcclxuaW1wb3J0IHtJbnB1dFR5cGUsIE1ldGhvZCwgUGVybWlzc2lvbk9wdGlvblR5cGVFbnVtLCBQZXJtaXNzaW9uVHlwZUVudW0sIFRhYmxlQ29sbFR5cGUsIFRhYmxlT3B0aW9uVHlwZX0gZnJvbSAnLi9lbnVtLmNsYXNzJztcclxuaW1wb3J0IHtSZXF1ZXN0Q2xhc3N9IGZyb20gJy4vcmVxdWVzdC5jbGFzcyc7XHJcbmltcG9ydCB7UGVybWlzc2lvbkNsYXNzfSBmcm9tICcuL3Blcm1pc3Npb24uY2xhc3MnO1xyXG5pbXBvcnQge0hlbHBlckNsYXNzfSBmcm9tICcuL2hlbHBlci5jbGFzcyc7XHJcblxyXG5leHBvcnQgY2xhc3MgVGFibGVDbGFzcyB7XHJcbiAgY29uc3RydWN0b3IoZW52aXJvbm1lbnQ6IGFueSwgbDogKGssIHY/KSA9PiBzdHJpbmcsIHBlcm1pc3Npb25zOiBQZXJtaXNzaW9uQ2xhc3MsIG5hbWU6IHN0cmluZyA9ICcnLCBjbHM6IHN0cmluZyA9ICcnLFxyXG4gICAgICAgICAgICAgIHBlclBhZ2U6IG51bWJlciA9IDEwLCBoZWlnaHQ6IG51bWJlciA9IDUwKSB7XHJcbiAgICB0aGlzLmVudmlyb25tZW50ID0gZW52aXJvbm1lbnQ7XHJcbiAgICB0aGlzLmwgPSBsO1xyXG4gICAgdGhpcy5uYW1lID0gbmFtZTtcclxuICAgIHRoaXMuaWQgPSB0aGlzLm5hbWU7XHJcbiAgICB0aGlzLnBlcm1pc3Npb25zID0gcGVybWlzc2lvbnM7XHJcbiAgICB0aGlzLmNsYXNzID0gY2xzO1xyXG4gICAgdGhpcy5wZXJQYWdlID0gcGVyUGFnZTtcclxuICAgIHRoaXMuaGVpZ2h0ID0gaGVpZ2h0O1xyXG4gIH1cclxuICBlbnZpcm9ubWVudDogYW55ID0gbnVsbDtcclxuICBsOiAoaywgdj8pID0+IHN0cmluZztcclxuICBwZXJtaXNzaW9uczogUGVybWlzc2lvbkNsYXNzO1xyXG4gIHBlcm1pc3Npb24gPSB0cnVlO1xyXG4gIG5hbWU6IHN0cmluZztcclxuICBpZDogc3RyaW5nO1xyXG4gIGNsYXNzOiBzdHJpbmc7XHJcbiAgc3R5bGUgPSB7fTtcclxuICB1cmwgPSBudWxsO1xyXG4gIG1ldGhvZDogTWV0aG9kID0gTWV0aG9kLlBvc3Q7XHJcbiAgaGVpZ2h0ID0gNDA7XHJcbiAgcGVyUGFnZSA9IDEwO1xyXG4gIGNvbHM6IFRhYmxlQ29sbENsYXNzW10gPSBbXTtcclxuICBidXR0b25zOiBJbnB1dENsYXNzW10gPSBbXTtcclxuICBvcHRpb25zOiBJbnB1dENsYXNzW10gPSBbXTtcclxuICByb3dzID0gW107XHJcbiAgY291bnQgPSAwO1xyXG4gIHBhZ2UgPSAxO1xyXG4gIHNvcnQgPSBudWxsO1xyXG4gIHF1ZXJ5UGFyYW1zID0ge307XHJcbiAgdGl0bGUgPSBudWxsO1xyXG4gIHNvcnRUeXBlID0gbnVsbDtcclxuICBkaXNwbGF5TGFiZWwgPSB0cnVlO1xyXG4gIHNvcnRhYmxlID0gZmFsc2U7XHJcbiAgb3B0aW9uVHlwZSA9IFRhYmxlT3B0aW9uVHlwZS5IaWRkZW47XHJcbiAgbG9hZGluZyA9IHRydWU7XHJcbiAgaGFzU3RhdHVzID0gZmFsc2U7XHJcbiAgaGFzQ2hpbGRyZW4gPSBmYWxzZTtcclxuICBjaGlsZHJlbkF1dG9Mb2FkID0gZmFsc2U7XHJcbiAgd2l0aFNlbGVjdCA9IGZhbHNlO1xyXG4gIHNob3dFeHRyYUJ1dHRvbnMgPSB0cnVlO1xyXG4gIGV4dHJhQnV0dG9uczogSW5wdXRDbGFzc1tdID0gW107XHJcbiAgZm9ybTogRm9ybUNsYXNzID0gbnVsbDtcclxuICBzZWFyY2hGb3JtOiBGb3JtQ2xhc3MgPSBudWxsO1xyXG4gIG1vZGFsOiBNb2RhbENsYXNzID0gbnVsbDtcclxuICBsZXZlbCA9IG51bGw7XHJcbiAgb25Mb2FkOiAoKSA9PiB2b2lkID0gbnVsbDtcclxuICBvblNvcnQ6ICgpID0+IHZvaWQgPSBudWxsO1xyXG4gIHNob3dDb25maXJtOiAobDogc3RyaW5nLCB1cmw6IHN0cmluZywgZGF0YSwgYWNjZXB0OiAoYnRuOiBJbnB1dENsYXNzKSA9PiB2b2lkKSA9PiB2b2lkID0gbnVsbDtcclxuICBoYXNPcHRpb24oKTogYm9vbGVhbnsgcmV0dXJuIHRoaXMucGVybWlzc2lvbnMgJiYgKHRoaXMucGVybWlzc2lvbnMuaGFzQWNjZXNzKCdEZWxldGUnKSB8fFxyXG4gICAgdGhpcy5wZXJtaXNzaW9ucy5oYXNBY2Nlc3MoJ1VwZGF0ZScpIHx8IHRoaXMuaGFzU3RhdHVzIHx8IHRoaXMub3B0aW9ucy5sZW5ndGggPiAwIHx8IHRoaXMuaGFzQ2hpbGRyZW4pOyB9XHJcbiAgbG9hZChidG4gPSBudWxsKTogdm9pZHtcclxuICAgIGlmICh0aGlzLnVybCl7XHJcbiAgICAgIG5ldyBSZXF1ZXN0Q2xhc3ModGhpcy5lbnZpcm9ubWVudCwgdGhpcy5sKS50YWJsZSh0aGlzLCBidG4pO1xyXG4gICAgfWVsc2V7XHJcbiAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2VhcmNoRGF0YSgpOiB7fSB7XHJcbiAgICBjb25zdCBkOiBhbnkgPSB7XHJcbiAgICAgIFBhZ2U6IHRoaXMucGFnZSxcclxuICAgICAgUGVyUGFnZTogdGhpcy5wZXJQYWdlLFxyXG4gICAgfTtcclxuICAgIGlmICh0aGlzLnNvcnRhYmxlKXtcclxuICAgICAgZC5Tb3J0ID0gJ1ByaW9yaXR5JztcclxuICAgICAgZC5Tb3J0VHlwZSA9ICdBU0MnO1xyXG4gICAgfWVsc2UgaWYgKHRoaXMuc29ydCl7XHJcbiAgICAgIGQuU29ydCA9IHRoaXMuc29ydDtcclxuICAgICAgZC5Tb3J0VHlwZSA9IHRoaXMuc29ydFR5cGU7XHJcbiAgICB9XHJcbiAgICBmb3IgKGNvbnN0IGMgb2YgdGhpcy5jb2xzLmZpbHRlcih4ID0+IHgud2l0aFNlYXJjaCAmJiB4LnNlYXJjaCAhPSBudWxsICYmIHguc2VhcmNoLmRhdGEoKSAhPSBudWxsICYmIHguc2VhcmNoLmRhdGEoKSAhPT0gJycpKXtcclxuICAgICAgZFtjLm5hbWVdID0gYy5zZWFyY2guZGF0YSgpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXMuc2VhcmNoRm9ybSA/IHRoaXMuc2VhcmNoRm9ybS5qc29uKGQpIDogZDtcclxuICB9XHJcbiAgZ2V0VXJsKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy51cmwgKyAnTGlzdCc7XHJcbiAgfVxyXG4gIHNob3dJbnNlcnRNb2RhbCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGluc2VydEFjY2VzcyA9IHRoaXMucGVybWlzc2lvbnMuZ2V0QWNjZXNzKCdJbnNlcnQnKTtcclxuICAgIHRoaXMuZm9ybS51cmwgPSB0aGlzLmZvcm0uYmFzZVVybCA9IHRoaXMudXJsICsgJ0luc2VydCc7XHJcbiAgICB0aGlzLmZvcm0ubmFtZSA9IGluc2VydEFjY2Vzcy5OYW1lO1xyXG4gICAgdGhpcy5mb3JtLm1ldGhvZCA9IE1ldGhvZC5Qb3N0O1xyXG4gICAgdGhpcy5mb3JtLmlucHV0cy5maWx0ZXIoeCA9PiB4LmluRWRpdERpc2FibGVkKS5mb3JFYWNoKHggPT4geC5kaXNhYmxlZCA9IGZhbHNlKTtcclxuICAgIHRoaXMuZm9ybS5pbnB1dHMuZmlsdGVyKHggPT4gIXguaW5FZGl0VmlzaWJsZSkuZm9yRWFjaCh4ID0+IHgudmlzaWJsZSA9IHRydWUpO1xyXG4gICAgdGhpcy5tb2RhbC5zaG93KCk7XHJcbiAgfVxyXG4gIHNldChjaGFuZ2VSb3dzID0gbnVsbCk6IHZvaWR7XHJcbiAgICB0aGlzLnBlcm1pc3Npb24gPSB0cnVlO1xyXG4gICAgaWYgKHRoaXMucGVybWlzc2lvbnMpXHJcbiAgICB7XHJcbiAgICAgIGNvbnN0IGxpc3RBY2Nlc3MgPSB0aGlzLnBlcm1pc3Npb25zLmdldEFjY2VzcygnTGlzdCcpO1xyXG4gICAgICBpZiAobGlzdEFjY2VzcyAhPT0gbnVsbCl7XHJcbiAgICAgICAgdGhpcy50aXRsZSA9IGxpc3RBY2Nlc3MuTmFtZTtcclxuICAgICAgICB0aGlzLnVybCA9IHRoaXMucGVybWlzc2lvbnMuZ2V0VXJsKCk7XHJcbiAgICAgICAgaWYgKHRoaXMucGVybWlzc2lvbnMuVHlwZSAhPT0gUGVybWlzc2lvblR5cGVFbnVtLkZvcm0pe1xyXG4gICAgICAgICAgdGhpcy5sb2FkKCk7XHJcbiAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1lbHNle1xyXG4gICAgICB0aGlzLnBlcm1pc3Npb24gPSBmYWxzZTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgY29uc3QgaW5zZXJ0QWNjZXNzID0gdGhpcy5wZXJtaXNzaW9ucy5nZXRBY2Nlc3MoJ0luc2VydCcpO1xyXG4gICAgaWYgKGluc2VydEFjY2VzcyAhPSBudWxsKXtcclxuICAgICAgY29uc3QgaW5zZXJ0ID0gbmV3IElucHV0Q2xhc3ModGhpcy5lbnZpcm9ubWVudCwgdGhpcy5sLCBpbnNlcnRBY2Nlc3MuTmFtZSwgJ2ZhZCBmYS1wbHVzIGZhLXJvdGF0ZS05MCcsIElucHV0VHlwZS5CdXR0b24sICd3LXUgZ3JlZW4gaC0zMCcpO1xyXG4gICAgICBpZiAodGhpcy5mb3JtKXtcclxuICAgICAgICB0aGlzLmZvcm0udXJsID0gdGhpcy5mb3JtLmJhc2VVcmwgPSB0aGlzLnVybCArICdJbnNlcnQnO1xyXG4gICAgICAgIGlmICghdGhpcy5mb3JtLm9uVG9wKXtcclxuICAgICAgICAgIGluc2VydC5vbkNsaWNrID0gKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmZvcm0ub25TdWNjZXNzQmFzZSA9ICgpID0+IHtcclxuICAgICAgICAgICAgICB0aGlzLm1vZGFsLmhpZGUoKTtcclxuICAgICAgICAgICAgICB0aGlzLmxvYWQoKTtcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgdGhpcy5zaG93SW5zZXJ0TW9kYWwoKTtcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgICB0aGlzLmJ1dHRvbnMudW5zaGlmdChpbnNlcnQpO1xyXG4gICAgICAgIH1lbHNle1xyXG4gICAgICAgICAgdGhpcy5mb3JtLmRpc3BsYXlMYWJlbCA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgfWVsc2V7XHJcbiAgICAgICAgdGhpcy5idXR0b25zLnVuc2hpZnQoaW5zZXJ0KTtcclxuICAgICAgICBpZiAodGhpcy5tb2RhbCl7XHJcbiAgICAgICAgICBpbnNlcnQub25DbGljayA9ICgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5tb2RhbC5zaG93KCk7XHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgIH1lbHNle1xyXG4gICAgICAgICAgaW5zZXJ0LnVybCA9IHRoaXMudXJsICsgJ0luc2VydCc7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBjb25zdCByZXBvcnRBY2Nlc3MgPSB0aGlzLnBlcm1pc3Npb25zLmdldEFjY2VzcygnUmVwb3J0Jyk7XHJcbiAgICBpZiAocmVwb3J0QWNjZXNzICE9IG51bGwpe1xyXG4gICAgICBjb25zdCByZXBvcnQgPSBuZXcgSW5wdXRDbGFzcyh0aGlzLmVudmlyb25tZW50LCB0aGlzLmwsIHJlcG9ydEFjY2Vzcy5OYW1lLCByZXBvcnRBY2Nlc3MuSWNvbiwgSW5wdXRUeXBlLkJ1dHRvbiwgJ20taC01Jyk7XHJcbiAgICAgIGNvbnN0IHAgPSBuZXcgUGVybWlzc2lvbkNsYXNzKCk7XHJcbiAgICAgIHAuUmVsYXRlZElkID0gJ0luZGV4JztcclxuICAgICAgcC5BcmVhID0gdGhpcy5wZXJtaXNzaW9ucy5BcmVhO1xyXG4gICAgICBwLkNvbnRyb2xsZXIgPSAnUHJpbnQnO1xyXG4gICAgICBwLkFjdGlvbiA9IHRoaXMucGVybWlzc2lvbnMuQ29udHJvbGxlcjtcclxuICAgICAgcmVwb3J0LnVybCA9ICcvUmVwb3J0JyArIHAuZ2V0VXJsKCk7XHJcbiAgICAgIHJlcG9ydC51cmxOZXdUYWIgPSAgdHJ1ZTtcclxuICAgICAgdGhpcy5leHRyYUJ1dHRvbnMucHVzaChyZXBvcnQpO1xyXG4gICAgfVxyXG4gICAgaWYgKCh0aGlzLnBlcm1pc3Npb25zLmhhc0FjY2VzcygnSW5zZXJ0JykgfHwgdGhpcy5wZXJtaXNzaW9ucy5oYXNBY2Nlc3MoJ1VwZGF0ZScpKSAmJiB0aGlzLmZvcm0pe1xyXG4gICAgICB0aGlzLmZvcm0uYWRkQnV0dG9ucygnU2F2ZScsICdncmVlbicsIHRydWUsIHRoaXMucGVybWlzc2lvbnMuVHlwZSA9PT0gUGVybWlzc2lvblR5cGVFbnVtLkZvcm0gPyAoZGF0YSkgPT4ge1xyXG4gICAgICAgIGlmIChkYXRhLklkKXtcclxuICAgICAgICAgIGNvbnN0IGkgPSB0aGlzLnJvd3MuZmluZEluZGV4KHggPT4geC5JZCA9PT0gZGF0YS5JZCk7XHJcbiAgICAgICAgICB0aGlzLnJvd3NbaV0gPSBkYXRhO1xyXG4gICAgICAgIH1lbHNle1xyXG4gICAgICAgICAgZGF0YS5JZCA9IHBhcnNlSW50KEhlbHBlckNsYXNzLnJhbmRvbSg1LCBmYWxzZSwgZmFsc2UpLCAxMCk7XHJcbiAgICAgICAgICB0aGlzLnJvd3MudW5zaGlmdChkYXRhKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGNoYW5nZVJvd3Mpe1xyXG4gICAgICAgICAgY2hhbmdlUm93cy5lbWl0KGRhdGEpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmZvcm0uY2xlYXIoKTtcclxuICAgICAgfSA6IG51bGwpO1xyXG4gICAgICBpZiAodGhpcy5mb3JtLm9uVG9wKXtcclxuICAgICAgICB0aGlzLmZvcm0ub25TdWNjZXNzQmFzZSA9ICgpID0+IHtcclxuICAgICAgICAgIHRoaXMuZm9ybS5jbGVhcigpO1xyXG4gICAgICAgICAgdGhpcy5sb2FkKCk7XHJcbiAgICAgICAgfTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBpZiAoIXRoaXMubW9kYWwpe1xyXG4gICAgICAgICAgdGhpcy5tb2RhbCA9IG5ldyBNb2RhbENsYXNzKHRoaXMuZW52aXJvbm1lbnQsIHRoaXMubCwgdGhpcy5uYW1lKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5tb2RhbC5mb3JtID0gdGhpcy5mb3JtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBmb3IgKGNvbnN0IG9wdGlvbiBvZiB0aGlzLnBlcm1pc3Npb25zLmdldE9wdGlvbnMoKSl7XHJcbiAgICAgIGlmICh0aGlzLm9wdGlvbnMuZmlsdGVyKHggPT4geC5uYW1lID09PSBvcHRpb24uTmFtZSkubGVuZ3RoID4gMCl7XHJcbiAgICAgICAgY29udGludWU7XHJcbiAgICAgIH1cclxuICAgICAgY29uc3Qgb3B0ID0gbmV3IElucHV0Q2xhc3ModGhpcy5lbnZpcm9ubWVudCwgdGhpcy5sLCBvcHRpb24uTmFtZSwgb3B0aW9uLkljb24sXHJcbiAgICAgICAgb3B0aW9uLk9wdGlvblR5cGUgPT09IFBlcm1pc3Npb25PcHRpb25UeXBlRW51bS5JY29uID8gSW5wdXRUeXBlLkljb24gOiBJbnB1dFR5cGUuQnV0dG9uLCAnYmx1ZSBoLTI1IG0taC01IGQtaWIgdmEtbSBmLXUnKTtcclxuICAgICAgb3B0LmNvbmRpdGlvbiA9IG9wdGlvbi5Db25kaXRpb247XHJcbiAgICAgIGlmIChvcHRpb24uVHlwZSA9PT0gUGVybWlzc2lvblR5cGVFbnVtLk9wdGlvbkxpbmsgfHwgb3B0aW9uLlR5cGUgPT09IFBlcm1pc3Npb25UeXBlRW51bS5PcHRpb25MaW5rTmV3VGFiKXtcclxuICAgICAgICBjb25zdCBwID0gbmV3IFBlcm1pc3Npb25DbGFzcygpO1xyXG4gICAgICAgIHAuUmVsYXRlZElkID0gdGhpcy5wZXJtaXNzaW9ucy5SZWxhdGVkSWQ7XHJcbiAgICAgICAgcC5BcmVhID0gdGhpcy5wZXJtaXNzaW9ucy5BcmVhO1xyXG4gICAgICAgIHAuQ29udHJvbGxlciA9IG9wdGlvbi5Db250cm9sbGVyID8gb3B0aW9uLkNvbnRyb2xsZXIgOiB0aGlzLnBlcm1pc3Npb25zLkNvbnRyb2xsZXI7XHJcbiAgICAgICAgcC5BY3Rpb24gPSB0aGlzLnBlcm1pc3Npb25zLkFjdGlvbjtcclxuICAgICAgICBvcHQudXJsID0gcC5nZXRVcmwoKSArIG9wdGlvbi5BY3Rpb24gKyAnL3t9JztcclxuICAgICAgICBvcHQudXJsTmV3VGFiID0gb3B0aW9uLlR5cGUgPT09IFBlcm1pc3Npb25UeXBlRW51bS5PcHRpb25MaW5rTmV3VGFiO1xyXG4gICAgICB9IGVsc2UgaWYgKG9wdGlvbi5UeXBlID09PSBQZXJtaXNzaW9uVHlwZUVudW0uT3B0aW9uTW9kYWwpe1xyXG4gICAgICAgIG9wdC5tb2RhbCA9IG9wdGlvbi5Nb2RhbDtcclxuICAgICAgICBvcHQub25DbGljayA9IChidG4pID0+IHtcclxuICAgICAgICAgIGlmIChvcHQubW9kYWwudGFibGUpe1xyXG4gICAgICAgICAgICBjb25zdCBwID0gbmV3IFBlcm1pc3Npb25DbGFzcygpO1xyXG4gICAgICAgICAgICBwLlJlbGF0ZWRJZCA9IGJ0bi5yb3cuSWQ7XHJcbiAgICAgICAgICAgIHAuQXJlYSA9IHRoaXMucGVybWlzc2lvbnMuQXJlYTtcclxuICAgICAgICAgICAgcC5Db250cm9sbGVyID0gdGhpcy5wZXJtaXNzaW9ucy5Db250cm9sbGVyO1xyXG4gICAgICAgICAgICBwLkFjdGlvbiA9IG9wdGlvbi5BY3Rpb247XHJcbiAgICAgICAgICAgIHAuQWNjZXNzZXMgPSBvcHRpb24uQWNjZXNzZXM7XHJcbiAgICAgICAgICAgIG9wdC5tb2RhbC50YWJsZS5wZXJtaXNzaW9ucyA9IHA7XHJcbiAgICAgICAgICAgIGlmIChvcHQubW9kYWwudGFibGUuZm9ybSl7XHJcbiAgICAgICAgICAgICAgb3B0Lm1vZGFsLnRhYmxlLmZvcm0udXJsID0gcC5nZXRVcmwoKSArICdJbnNlcnQnO1xyXG4gICAgICAgICAgICAgIG9wdC5tb2RhbC50YWJsZS5mb3JtLmJhc2VVcmwgPSBwLmdldFVybCgpICsgJ0luc2VydCc7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgb3B0Lm1vZGFsLnRhYmxlLnNldCgpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKG9wdC5tb2RhbC5mb3JtKXtcclxuICAgICAgICAgICAgb3B0Lm1vZGFsLmZvcm0ubmFtZSA9IG9wdGlvbi5OYW1lO1xyXG4gICAgICAgICAgICBvcHQubW9kYWwuZm9ybS51cmwgPSBvcHQubW9kYWwuZm9ybS5iYXNlVXJsICsgJ1VwZGF0ZS8nICsgYnRuLnJvdy5JZDtcclxuICAgICAgICAgICAgb3B0Lm1vZGFsLmZvcm0ubG9hZERhdGEob3B0Lm1vZGFsLmZvcm0uYmFzZVVybCArICdHZXQvJyArIGJ0bi5yb3cuSWQpO1xyXG4gICAgICAgICAgICBvcHQubW9kYWwuZm9ybS5vblN1Y2Nlc3NCYXNlID0gKCkgPT4ge1xyXG4gICAgICAgICAgICAgIG9wdC5tb2RhbC5oaWRlKCk7XHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAob3B0Lm1vZGFsLmFjY29yZGlvbil7XHJcbiAgICAgICAgICAgIGZvciAoY29uc3QgciBvZiBvcHQubW9kYWwuYWNjb3JkaW9uLnJvd3Mpe1xyXG4gICAgICAgICAgICAgIGlmIChyLnRhYmxlKXtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHAgPSBuZXcgUGVybWlzc2lvbkNsYXNzKCk7XHJcbiAgICAgICAgICAgICAgICBwLlJlbGF0ZWRJZCA9IGJ0bi5yb3cuSWQ7XHJcbiAgICAgICAgICAgICAgICBwLkFyZWEgPSB0aGlzLnBlcm1pc3Npb25zLkFyZWE7XHJcbiAgICAgICAgICAgICAgICBwLkNvbnRyb2xsZXIgPSB0aGlzLnBlcm1pc3Npb25zLkNvbnRyb2xsZXI7XHJcbiAgICAgICAgICAgICAgICBwLkFjdGlvbiA9IHIubmFtZTtcclxuICAgICAgICAgICAgICAgIHAuQWNjZXNzZXMgPSBvcHRpb24uQWNjZXNzZXM7XHJcbiAgICAgICAgICAgICAgICByLnRhYmxlLnBlcm1pc3Npb25zID0gcDtcclxuICAgICAgICAgICAgICAgIGlmIChyLnRhYmxlLmZvcm0pe1xyXG4gICAgICAgICAgICAgICAgICByLnRhYmxlLmZvcm0udXJsID0gcC5nZXRVcmwoKSArICdJbnNlcnQnO1xyXG4gICAgICAgICAgICAgICAgICByLnRhYmxlLmZvcm0uYmFzZVVybCA9IHAuZ2V0VXJsKCkgKyAnSW5zZXJ0JztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHIudGFibGUuc2V0KCk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfTtcclxuICAgICAgfSBlbHNlIGlmIChvcHRpb24uVHlwZSA9PT0gUGVybWlzc2lvblR5cGVFbnVtLk9wdGlvblJlcG9ydCl7XHJcbiAgICAgICAgY29uc3QgcCA9IG5ldyBQZXJtaXNzaW9uQ2xhc3MoKTtcclxuICAgICAgICBwLlJlbGF0ZWRJZCA9ICdJbmRleCc7XHJcbiAgICAgICAgcC5BcmVhID0gdGhpcy5wZXJtaXNzaW9ucy5BcmVhO1xyXG4gICAgICAgIHAuQ29udHJvbGxlciA9ICdQcmludCc7XHJcbiAgICAgICAgcC5BY3Rpb24gPSBvcHRpb24uQWN0aW9uO1xyXG4gICAgICAgIG9wdC51cmwgPSAnL1JlcG9ydCcgKyBwLmdldFVybCgpICsgJy97fSc7XHJcbiAgICAgICAgb3B0LnVybE5ld1RhYiA9IHRydWU7XHJcbiAgICAgIH0gZWxzZSBpZiAob3B0aW9uLlR5cGUgPT09IFBlcm1pc3Npb25UeXBlRW51bS5PcHRpb25GaWxlKXtcclxuICAgICAgICBjb25zdCBwID0gbmV3IFBlcm1pc3Npb25DbGFzcygpO1xyXG4gICAgICAgIHAuUmVsYXRlZElkID0gdGhpcy5wZXJtaXNzaW9ucy5SZWxhdGVkSWQ7XHJcbiAgICAgICAgcC5BcmVhID0gdGhpcy5wZXJtaXNzaW9ucy5BcmVhO1xyXG4gICAgICAgIHAuQ29udHJvbGxlciA9IHRoaXMucGVybWlzc2lvbnMuQ29udHJvbGxlcjtcclxuICAgICAgICBwLkFjdGlvbiA9ICh0aGlzLnBlcm1pc3Npb25zLkFjdGlvbiA/IHRoaXMucGVybWlzc2lvbnMuQWN0aW9uIDogJycpICsgb3B0aW9uLkFjdGlvbjtcclxuICAgICAgICBvcHQudXJsID0gJy9GaWxlJyArIHAuZ2V0VXJsKCkgKyAnL3t9JztcclxuICAgICAgICBvcHQudXJsTmV3VGFiID0gdHJ1ZTtcclxuICAgICAgfSBlbHNlIGlmIChvcHRpb24uVHlwZSA9PT0gUGVybWlzc2lvblR5cGVFbnVtLk9wdGlvbkNvbmZpcm0pe1xyXG4gICAgICAgIG9wdC5vbkNsaWNrID0gKGJ0bikgPT4ge1xyXG4gICAgICAgICAgY29uc3QgcCA9IG5ldyBQZXJtaXNzaW9uQ2xhc3MoKTtcclxuICAgICAgICAgIHAuUmVsYXRlZElkID0gdGhpcy5wZXJtaXNzaW9ucy5SZWxhdGVkSWQ7XHJcbiAgICAgICAgICBwLkFyZWEgPSB0aGlzLnBlcm1pc3Npb25zLkFyZWE7XHJcbiAgICAgICAgICBwLkNvbnRyb2xsZXIgPSB0aGlzLnBlcm1pc3Npb25zLkNvbnRyb2xsZXI7XHJcbiAgICAgICAgICBwLkFjdGlvbiA9IG9wdGlvbi5BY3Rpb247XHJcbiAgICAgICAgICB0aGlzLnNob3dDb25maXJtKHRoaXMubChvcHRpb24uQWN0aW9uICsgJ0NvbmZpcm0nKSwgcC5nZXRVcmwoKSArICcvJyArIGJ0bi5yb3cuSWQsIG51bGwsICgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5sb2FkKCk7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9O1xyXG4gICAgICB9IGVsc2UgaWYgKG9wdGlvbi5UeXBlID09PSBQZXJtaXNzaW9uVHlwZUVudW0uT3B0aW9uKXtcclxuICAgICAgICBpZiAob3B0aW9uLk9uQ2xpY2spe1xyXG4gICAgICAgICAgb3B0Lm9uQ2xpY2sgPSAoYnRuKSA9PiB7XHJcbiAgICAgICAgICAgIG9wdGlvbi5PbkNsaWNrKGJ0bik7XHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICB0aGlzLm9wdGlvbnMucHVzaChvcHQpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIFRhYmxlQ29sbENsYXNzIHtcclxuICBjb25zdHJ1Y3RvcihuYW1lOiBzdHJpbmcsIHBlcmNlbnQ6IG51bWJlciwgY2xzID0gJycsIHR5cGU6IFRhYmxlQ29sbFR5cGUgPSBUYWJsZUNvbGxUeXBlLlRleHQsXHJcbiAgICAgICAgICAgICAgd2l0aFNlYXJjaDogYm9vbGVhbiA9IHRydWUsIHNvcnQ6IGJvb2xlYW4gPSB0cnVlKSB7XHJcbiAgICB0aGlzLm5hbWUgPSBuYW1lO1xyXG4gICAgdGhpcy5wZXJjZW50ID0gcGVyY2VudDtcclxuICAgIHRoaXMuY2xhc3MgPSBjbHM7XHJcbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xyXG4gICAgdGhpcy53aXRoU2VhcmNoID0gd2l0aFNlYXJjaDtcclxuICAgIHRoaXMuc29ydCA9IHNvcnQ7XHJcbiAgfVxyXG4gIGVudW0gPSBudWxsO1xyXG4gIG5hbWU6IHN0cmluZztcclxuICBwZXJjZW50OiBudW1iZXI7XHJcbiAgY2xhc3M6IHN0cmluZztcclxuICBzb3J0ID0gdHJ1ZTtcclxuICB3aXRoU2VhcmNoOiBib29sZWFuO1xyXG4gIHNlYXJjaDogSW5wdXRDbGFzcyA9IG51bGw7XHJcbiAgdHlwZTogVGFibGVDb2xsVHlwZTtcclxuICBmdW46IChyb3cpID0+IHZvaWQgPSBudWxsO1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgVGFibGVSb3dDbGFzcyB7XHJcbiAgY29uc3RydWN0b3IocHVibGljIGRhdGEsIHB1YmxpYyBjaGlsZHJlbikge1xyXG4gIH1cclxufVxyXG4iXX0=
304
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiRDovUHJvamVjdHMvUHNUb29sa2l0L1VJL3Byb2plY3RzL3BzLXRvb2xraXQtdWkvc3JjLyIsInNvdXJjZXMiOlsibGliL2NsYXNzZXMvdGFibGUuY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQVksVUFBVSxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQ25ELE9BQU8sRUFDTCxTQUFTLEVBQ1QsTUFBTSxFQUNOLHlCQUF5QixFQUN6Qix1QkFBdUIsRUFDdkIsa0JBQWtCLEVBQ2xCLGFBQWEsRUFDYixlQUFlLEVBQ2hCLE1BQU0sY0FBYyxDQUFDO0FBQ3RCLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDbkQsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRTNDLE1BQU0sT0FBTyxVQUFVO0lBQ3JCLFlBQVksV0FBZ0IsRUFBRSxDQUFvQixFQUFFLFdBQTRCLEVBQUUsT0FBZSxFQUFFLEVBQUUsTUFBYyxFQUFFLEVBQ3pHLFVBQWtCLEVBQUUsRUFBRSxTQUFpQixFQUFFO1FBVXJELGdCQUFXLEdBQVEsSUFBSSxDQUFDO1FBR3hCLGVBQVUsR0FBRyxJQUFJLENBQUM7UUFJbEIsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUNYLFFBQUcsR0FBRyxJQUFJLENBQUM7UUFDWCxXQUFNLEdBQVcsTUFBTSxDQUFDLElBQUksQ0FBQztRQUM3QixXQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ1osWUFBTyxHQUFHLEVBQUUsQ0FBQztRQUNiLFNBQUksR0FBcUIsRUFBRSxDQUFDO1FBQzVCLFlBQU8sR0FBaUIsRUFBRSxDQUFDO1FBQzNCLFlBQU8sR0FBaUIsRUFBRSxDQUFDO1FBQzNCLFNBQUksR0FBRyxF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LENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TW9kYWxDbGFzc30gZnJvbSAnLi9tb2RhbC5jbGFzcyc7XHJcbmltcG9ydCB7Rm9ybUNsYXNzLCBJbnB1dENsYXNzfSBmcm9tICcuL2Zvcm0uY2xhc3MnO1xyXG5pbXBvcnQge1xyXG4gIElucHV0VHlwZSxcclxuICBNZXRob2QsXHJcbiAgUGVybWlzc2lvbklucHV0QWN0aW9uRW51bSxcclxuICBQZXJtaXNzaW9uSW5wdXRUeXBlRW51bSxcclxuICBQZXJtaXNzaW9uVHlwZUVudW0sXHJcbiAgVGFibGVDb2xsVHlwZSxcclxuICBUYWJsZU9wdGlvblR5cGVcclxufSBmcm9tICcuL2VudW0uY2xhc3MnO1xyXG5pbXBvcnQge1JlcXVlc3RDbGFzc30gZnJvbSAnLi9yZXF1ZXN0LmNsYXNzJztcclxuaW1wb3J0IHtQZXJtaXNzaW9uQ2xhc3N9IGZyb20gJy4vcGVybWlzc2lvbi5jbGFzcyc7XHJcbmltcG9ydCB7SGVscGVyQ2xhc3N9IGZyb20gJy4vaGVscGVyLmNsYXNzJztcclxuXHJcbmV4cG9ydCBjbGFzcyBUYWJsZUNsYXNzIHtcclxuICBjb25zdHJ1Y3RvcihlbnZpcm9ubWVudDogYW55LCBsOiAoaywgdj8pID0+IHN0cmluZywgcGVybWlzc2lvbnM6IFBlcm1pc3Npb25DbGFzcywgbmFtZTogc3RyaW5nID0gJycsIGNsczogc3RyaW5nID0gJycsXHJcbiAgICAgICAgICAgICAgcGVyUGFnZTogbnVtYmVyID0gMTAsIGhlaWdodDogbnVtYmVyID0gNTApIHtcclxuICAgIHRoaXMuZW52aXJvbm1lbnQgPSBlbnZpcm9ubWVudDtcclxuICAgIHRoaXMubCA9IGw7XHJcbiAgICB0aGlzLm5hbWUgPSBuYW1lO1xyXG4gICAgdGhpcy5pZCA9IHRoaXMubmFtZTtcclxuICAgIHRoaXMucGVybWlzc2lvbnMgPSBwZXJtaXNzaW9ucztcclxuICAgIHRoaXMuY2xhc3MgPSBjbHM7XHJcbiAgICB0aGlzLnBlclBhZ2UgPSBwZXJQYWdlO1xyXG4gICAgdGhpcy5oZWlnaHQgPSBoZWlnaHQ7XHJcbiAgfVxyXG4gIGVudmlyb25tZW50OiBhbnkgPSBudWxsO1xyXG4gIGw6IChrLCB2PykgPT4gc3RyaW5nO1xyXG4gIHBlcm1pc3Npb25zOiBQZXJtaXNzaW9uQ2xhc3M7XHJcbiAgcGVybWlzc2lvbiA9IHRydWU7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIGlkOiBzdHJpbmc7XHJcbiAgY2xhc3M6IHN0cmluZztcclxuICBzdHlsZSA9IHt9O1xyXG4gIHVybCA9IG51bGw7XHJcbiAgbWV0aG9kOiBNZXRob2QgPSBNZXRob2QuUG9zdDtcclxuICBoZWlnaHQgPSA0MDtcclxuICBwZXJQYWdlID0gMTA7XHJcbiAgY29sczogVGFibGVDb2xsQ2xhc3NbXSA9IFtdO1xyXG4gIGJ1dHRvbnM6IElucHV0Q2xhc3NbXSA9IFtdO1xyXG4gIG9wdGlvbnM6IElucHV0Q2xhc3NbXSA9IFtdO1xyXG4gIHJvd3MgPSBbXTtcclxuICBjb3VudCA9IDA7XHJcbiAgcGFnZSA9IDE7XHJcbiAgc29ydCA9IG51bGw7XHJcbiAgcXVlcnlQYXJhbXMgPSB7fTtcclxuICB0aXRsZSA9IG51bGw7XHJcbiAgc29ydFR5cGUgPSBudWxsO1xyXG4gIGRpc3BsYXlMYWJlbCA9IHRydWU7XHJcbiAgc29ydGFibGUgPSBmYWxzZTtcclxuICBvcHRpb25UeXBlID0gVGFibGVPcHRpb25UeXBlLkhpZGRlbjtcclxuICBsb2FkaW5nID0gdHJ1ZTtcclxuICBoYXNTdGF0dXMgPSBmYWxzZTtcclxuICBoYXNDaGlsZHJlbiA9IGZhbHNlO1xyXG4gIGNoaWxkcmVuQXV0b0xvYWQgPSBmYWxzZTtcclxuICB3aXRoU2VsZWN0ID0gZmFsc2U7XHJcbiAgc2hvd0V4dHJhQnV0dG9ucyA9IHRydWU7XHJcbiAgZXh0cmFCdXR0b25zOiBJbnB1dENsYXNzW10gPSBbXTtcclxuICBmb3JtOiBGb3JtQ2xhc3MgPSBudWxsO1xyXG4gIHNlYXJjaEZvcm06IEZvcm1DbGFzcyA9IG51bGw7XHJcbiAgbW9kYWw6IE1vZGFsQ2xhc3MgPSBudWxsO1xyXG4gIGxldmVsID0gbnVsbDtcclxuICBvbkxvYWQ6ICgpID0+IHZvaWQgPSBudWxsO1xyXG4gIG9uU29ydDogKCkgPT4gdm9pZCA9IG51bGw7XHJcbiAgc2hvd0NvbmZpcm06IChsOiBzdHJpbmcsIHVybDogc3RyaW5nLCBkYXRhLCBhY2NlcHQ6IChidG46IElucHV0Q2xhc3MpID0+IHZvaWQpID0+IHZvaWQgPSBudWxsO1xyXG4gIGhhc09wdGlvbigpOiBib29sZWFueyByZXR1cm4gdGhpcy5wZXJtaXNzaW9ucyAmJiAodGhpcy5wZXJtaXNzaW9ucy5oYXNBY2Nlc3MoJ0RlbGV0ZScpIHx8XHJcbiAgICB0aGlzLnBlcm1pc3Npb25zLmhhc0FjY2VzcygnVXBkYXRlJykgfHwgdGhpcy5oYXNTdGF0dXMgfHwgdGhpcy5vcHRpb25zLmxlbmd0aCA+IDAgfHwgdGhpcy5oYXNDaGlsZHJlbik7IH1cclxuICBsb2FkKGJ0biA9IG51bGwpOiB2b2lke1xyXG4gICAgaWYgKHRoaXMudXJsKXtcclxuICAgICAgbmV3IFJlcXVlc3RDbGFzcyh0aGlzLmVudmlyb25tZW50LCB0aGlzLmwpLnRhYmxlKHRoaXMsIGJ0bik7XHJcbiAgICB9ZWxzZXtcclxuICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZWFyY2hEYXRhKCk6IHt9IHtcclxuICAgIGNvbnN0IGQ6IGFueSA9IHtcclxuICAgICAgUGFnZTogdGhpcy5wYWdlLFxyXG4gICAgICBQZXJQYWdlOiB0aGlzLnBlclBhZ2UsXHJcbiAgICB9O1xyXG4gICAgaWYgKHRoaXMuc29ydGFibGUpe1xyXG4gICAgICBkLlNvcnQgPSAnUHJpb3JpdHknO1xyXG4gICAgICBkLlNvcnRUeXBlID0gJ0FTQyc7XHJcbiAgICB9ZWxzZSBpZiAodGhpcy5zb3J0KXtcclxuICAgICAgZC5Tb3J0ID0gdGhpcy5zb3J0O1xyXG4gICAgICBkLlNvcnRUeXBlID0gdGhpcy5zb3J0VHlwZTtcclxuICAgIH1cclxuICAgIGZvciAoY29uc3QgYyBvZiB0aGlzLmNvbHMuZmlsdGVyKHggPT4geC53aXRoU2VhcmNoICYmIHguc2VhcmNoICE9IG51bGwgJiYgeC5zZWFyY2guZGF0YSgpICE9IG51bGwgJiYgeC5zZWFyY2guZGF0YSgpICE9PSAnJykpe1xyXG4gICAgICBkW2MubmFtZV0gPSBjLnNlYXJjaC5kYXRhKCk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5zZWFyY2hGb3JtID8gdGhpcy5zZWFyY2hGb3JtLmpzb24oZCkgOiBkO1xyXG4gIH1cclxuICBnZXRVcmwoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLnVybCArICdMaXN0JztcclxuICB9XHJcbiAgc2hvd0luc2VydE1vZGFsKCk6IHZvaWQge1xyXG4gICAgY29uc3QgaW5zZXJ0QWNjZXNzID0gdGhpcy5wZXJtaXNzaW9ucy5nZXRBY2Nlc3MoJ0luc2VydCcpO1xyXG4gICAgdGhpcy5mb3JtLnVybCA9IHRoaXMuZm9ybS5iYXNlVXJsID0gdGhpcy51cmwgKyAnSW5zZXJ0JztcclxuICAgIHRoaXMuZm9ybS5uYW1lID0gaW5zZXJ0QWNjZXNzLk5hbWU7XHJcbiAgICB0aGlzLmZvcm0ubWV0aG9kID0gTWV0aG9kLlBvc3Q7XHJcbiAgICB0aGlzLmZvcm0uaW5wdXRzLmZpbHRlcih4ID0+IHguaW5FZGl0RGlzYWJsZWQpLmZvckVhY2goeCA9PiB4LmRpc2FibGVkID0gZmFsc2UpO1xyXG4gICAgdGhpcy5mb3JtLmlucHV0cy5maWx0ZXIoeCA9PiAheC5pbkVkaXRWaXNpYmxlKS5mb3JFYWNoKHggPT4geC52aXNpYmxlID0gdHJ1ZSk7XHJcbiAgICB0aGlzLm1vZGFsLnNob3coKTtcclxuICB9XHJcbiAgc2V0KGNoYW5nZVJvd3MgPSBudWxsKTogdm9pZHtcclxuICAgIHRoaXMucGVybWlzc2lvbiA9IHRydWU7XHJcbiAgICBpZiAodGhpcy5wZXJtaXNzaW9ucylcclxuICAgIHtcclxuICAgICAgY29uc3QgbGlzdEFjY2VzcyA9IHRoaXMucGVybWlzc2lvbnMuZ2V0QWNjZXNzKCdMaXN0Jyk7XHJcbiAgICAgIGlmIChsaXN0QWNjZXNzICE9PSBudWxsKXtcclxuICAgICAgICB0aGlzLnRpdGxlID0gbGlzdEFjY2Vzcy5OYW1lO1xyXG4gICAgICAgIHRoaXMudXJsID0gdGhpcy5wZXJtaXNzaW9ucy5nZXRVcmwoKTtcclxuICAgICAgICBpZiAodGhpcy5wZXJtaXNzaW9ucy5UeXBlICE9PSBQZXJtaXNzaW9uVHlwZUVudW0uRm9ybSl7XHJcbiAgICAgICAgICB0aGlzLmxvYWQoKTtcclxuICAgICAgICB9ZWxzZXtcclxuICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfWVsc2V7XHJcbiAgICAgIHRoaXMucGVybWlzc2lvbiA9IGZhbHNlO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBmb3IgKGNvbnN0IGFjY2VzcyBvZiB0aGlzLnBlcm1pc3Npb25zLmdldEFjY2Vzc2VzKCkpe1xyXG4gICAgICBjb25zdCBhY2Nlc3NJbnAgPSBuZXcgSW5wdXRDbGFzcyh0aGlzLmVudmlyb25tZW50LCB0aGlzLmwsIGFjY2Vzcy5OYW1lLCBhY2Nlc3MuSWNvbixcclxuICAgICAgICBhY2Nlc3MuSW5wdXRUeXBlID09PSBQZXJtaXNzaW9uSW5wdXRUeXBlRW51bS5CdXR0b24gPyBJbnB1dFR5cGUuQnV0dG9uIDogSW5wdXRUeXBlLkljb24sICd3LXUgaC0zMCcpO1xyXG4gICAgICBpZiAoYWNjZXNzLkFjdGlvbiA9PT0gJ0luc2VydCcpe1xyXG4gICAgICAgIGlmICh0aGlzLmZvcm0pe1xyXG4gICAgICAgICAgdGhpcy5mb3JtLnVybCA9IHRoaXMuZm9ybS5iYXNlVXJsID0gdGhpcy51cmwgKyAnSW5zZXJ0JztcclxuICAgICAgICAgIGlmICghdGhpcy5mb3JtLm9uVG9wKXtcclxuICAgICAgICAgICAgYWNjZXNzSW5wLm9uQ2xpY2sgPSAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgdGhpcy5mb3JtLm9uU3VjY2Vzc0Jhc2UgPSAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm1vZGFsLmhpZGUoKTtcclxuICAgICAgICAgICAgICAgIHRoaXMubG9hZCgpO1xyXG4gICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgdGhpcy5zaG93SW5zZXJ0TW9kYWwoKTtcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgdGhpcy5idXR0b25zLnVuc2hpZnQoYWNjZXNzSW5wKTtcclxuICAgICAgICAgIH1lbHNle1xyXG4gICAgICAgICAgICB0aGlzLmZvcm0uZGlzcGxheUxhYmVsID0gZmFsc2U7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICB0aGlzLmJ1dHRvbnMudW5zaGlmdChhY2Nlc3NJbnApO1xyXG4gICAgICAgICAgaWYgKHRoaXMubW9kYWwpe1xyXG4gICAgICAgICAgICBhY2Nlc3NJbnAub25DbGljayA9ICgpID0+IHtcclxuICAgICAgICAgICAgICB0aGlzLm1vZGFsLnNob3coKTtcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgIH1lbHNle1xyXG4gICAgICAgICAgICBhY2Nlc3NJbnAudXJsID0gdGhpcy51cmwgKyAnSW5zZXJ0JztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSBpZiAoYWNjZXNzLklucHV0QWN0aW9uID09PSBQZXJtaXNzaW9uSW5wdXRBY3Rpb25FbnVtLlJlcG9ydCl7XHJcbiAgICAgICAgY29uc3QgcCA9IG5ldyBQZXJtaXNzaW9uQ2xhc3MoKTtcclxuICAgICAgICBwLlJlbGF0ZWRJZCA9ICdJbmRleCc7XHJcbiAgICAgICAgcC5BcmVhID0gdGhpcy5wZXJtaXNzaW9ucy5BcmVhO1xyXG4gICAgICAgIHAuQ29udHJvbGxlciA9ICdQcmludCc7XHJcbiAgICAgICAgcC5BY3Rpb24gPSB0aGlzLnBlcm1pc3Npb25zLkNvbnRyb2xsZXI7XHJcbiAgICAgICAgYWNjZXNzSW5wLnVybCA9ICcvUmVwb3J0JyArIHAuZ2V0VXJsKCk7XHJcbiAgICAgICAgYWNjZXNzSW5wLnVybE5ld1RhYiA9ICB0cnVlO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuYnV0dG9ucy5wdXNoKGFjY2Vzc0lucCk7XHJcbiAgICB9XHJcbiAgICBpZiAoKHRoaXMucGVybWlzc2lvbnMuaGFzQWNjZXNzKCdJbnNlcnQnKSB8fCB0aGlzLnBlcm1pc3Npb25zLmhhc09wdGlvbignVXBkYXRlJykpICYmIHRoaXMuZm9ybSl7XHJcbiAgICAgIHRoaXMuZm9ybS5hZGRCdXR0b25zKCdTYXZlJywgJ2dyZWVuJywgdHJ1ZSwgdGhpcy5wZXJtaXNzaW9ucy5UeXBlID09PSBQZXJtaXNzaW9uVHlwZUVudW0uRm9ybSA/IChkYXRhKSA9PiB7XHJcbiAgICAgICAgaWYgKGRhdGEuSWQpe1xyXG4gICAgICAgICAgY29uc3QgaSA9IHRoaXMucm93cy5maW5kSW5kZXgoeCA9PiB4LklkID09PSBkYXRhLklkKTtcclxuICAgICAgICAgIHRoaXMucm93c1tpXSA9IGRhdGE7XHJcbiAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICBkYXRhLklkID0gcGFyc2VJbnQoSGVscGVyQ2xhc3MucmFuZG9tKDUsIGZhbHNlLCBmYWxzZSksIDEwKTtcclxuICAgICAgICAgIHRoaXMucm93cy51bnNoaWZ0KGRhdGEpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoY2hhbmdlUm93cyl7XHJcbiAgICAgICAgICBjaGFuZ2VSb3dzLmVtaXQoZGF0YSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuZm9ybS5jbGVhcigpO1xyXG4gICAgICB9IDogbnVsbCk7XHJcbiAgICAgIGlmICh0aGlzLmZvcm0ub25Ub3Ape1xyXG4gICAgICAgIHRoaXMuZm9ybS5vblN1Y2Nlc3NCYXNlID0gKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5mb3JtLmNsZWFyKCk7XHJcbiAgICAgICAgICB0aGlzLmxvYWQoKTtcclxuICAgICAgICB9O1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGlmICghdGhpcy5tb2RhbCl7XHJcbiAgICAgICAgICB0aGlzLm1vZGFsID0gbmV3IE1vZGFsQ2xhc3ModGhpcy5lbnZpcm9ubWVudCwgdGhpcy5sLCB0aGlzLm5hbWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLm1vZGFsLmZvcm0gPSB0aGlzLmZvcm07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGZvciAoY29uc3Qgb3B0aW9uIG9mIHRoaXMucGVybWlzc2lvbnMuZ2V0T3B0aW9ucygpKXtcclxuICAgICAgaWYgKHRoaXMub3B0aW9ucy5maWx0ZXIoeCA9PiB4Lm5hbWUgPT09IG9wdGlvbi5OYW1lKS5sZW5ndGggPiAwKXtcclxuICAgICAgICBjb250aW51ZTtcclxuICAgICAgfVxyXG4gICAgICBjb25zdCBvcHQgPSBuZXcgSW5wdXRDbGFzcyh0aGlzLmVudmlyb25tZW50LCB0aGlzLmwsIG9wdGlvbi5OYW1lLCBvcHRpb24uSWNvbixcclxuICAgICAgICBvcHRpb24uSW5wdXRUeXBlID09PSBQZXJtaXNzaW9uSW5wdXRUeXBlRW51bS5JY29uID8gSW5wdXRUeXBlLkljb24gOiBJbnB1dFR5cGUuQnV0dG9uLCAnYmx1ZSBoLTI1IG0taC01IGQtaWIgdmEtbSBmLXUnKTtcclxuICAgICAgb3B0LmNvbmRpdGlvbiA9IG9wdGlvbi5Db25kaXRpb247XHJcbiAgICAgIGlmIChvcHRpb24uSW5wdXRBY3Rpb24gPT09IFBlcm1pc3Npb25JbnB1dEFjdGlvbkVudW0uTGluayB8fCBvcHRpb24uSW5wdXRBY3Rpb24gPT09IFBlcm1pc3Npb25JbnB1dEFjdGlvbkVudW0uTGlua05ld1RhYil7XHJcbiAgICAgICAgY29uc3QgcCA9IG5ldyBQZXJtaXNzaW9uQ2xhc3MoKTtcclxuICAgICAgICBwLlJlbGF0ZWRJZCA9IHRoaXMucGVybWlzc2lvbnMuUmVsYXRlZElkO1xyXG4gICAgICAgIHAuQXJlYSA9IHRoaXMucGVybWlzc2lvbnMuQXJlYTtcclxuICAgICAgICBwLkNvbnRyb2xsZXIgPSBvcHRpb24uQ29udHJvbGxlciA/IG9wdGlvbi5Db250cm9sbGVyIDogdGhpcy5wZXJtaXNzaW9ucy5Db250cm9sbGVyO1xyXG4gICAgICAgIHAuQWN0aW9uID0gdGhpcy5wZXJtaXNzaW9ucy5BY3Rpb247XHJcbiAgICAgICAgb3B0LnVybCA9IHAuZ2V0VXJsKCkgKyBvcHRpb24uQWN0aW9uICsgJy97fSc7XHJcbiAgICAgICAgb3B0LnVybE5ld1RhYiA9IG9wdGlvbi5JbnB1dEFjdGlvbiA9PT0gUGVybWlzc2lvbklucHV0QWN0aW9uRW51bS5MaW5rTmV3VGFiO1xyXG4gICAgICB9IGVsc2UgaWYgKG9wdGlvbi5JbnB1dEFjdGlvbiA9PT0gUGVybWlzc2lvbklucHV0QWN0aW9uRW51bS5Nb2RhbCl7XHJcbiAgICAgICAgb3B0Lm1vZGFsID0gb3B0aW9uLk1vZGFsO1xyXG4gICAgICAgIG9wdC5vbkNsaWNrID0gKGJ0bikgPT4ge1xyXG4gICAgICAgICAgaWYgKG9wdC5tb2RhbC50YWJsZSl7XHJcbiAgICAgICAgICAgIGNvbnN0IHAgPSBuZXcgUGVybWlzc2lvbkNsYXNzKCk7XHJcbiAgICAgICAgICAgIHAuUmVsYXRlZElkID0gYnRuLnJvdy5JZDtcclxuICAgICAgICAgICAgcC5BcmVhID0gdGhpcy5wZXJtaXNzaW9ucy5BcmVhO1xyXG4gICAgICAgICAgICBwLkNvbnRyb2xsZXIgPSB0aGlzLnBlcm1pc3Npb25zLkNvbnRyb2xsZXI7XHJcbiAgICAgICAgICAgIHAuQWN0aW9uID0gb3B0aW9uLkFjdGlvbjtcclxuICAgICAgICAgICAgcC5BY2Nlc3NlcyA9IG9wdGlvbi5BY2Nlc3NlcztcclxuICAgICAgICAgICAgb3B0Lm1vZGFsLnRhYmxlLnBlcm1pc3Npb25zID0gcDtcclxuICAgICAgICAgICAgaWYgKG9wdC5tb2RhbC50YWJsZS5mb3JtKXtcclxuICAgICAgICAgICAgICBvcHQubW9kYWwudGFibGUuZm9ybS51cmwgPSBwLmdldFVybCgpICsgJ0luc2VydCc7XHJcbiAgICAgICAgICAgICAgb3B0Lm1vZGFsLnRhYmxlLmZvcm0uYmFzZVVybCA9IHAuZ2V0VXJsKCkgKyAnSW5zZXJ0JztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBvcHQubW9kYWwudGFibGUuc2V0KCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAob3B0Lm1vZGFsLmZvcm0pe1xyXG4gICAgICAgICAgICBvcHQubW9kYWwuZm9ybS5uYW1lID0gb3B0aW9uLk5hbWU7XHJcbiAgICAgICAgICAgIG9wdC5tb2RhbC5mb3JtLnVybCA9IG9wdC5tb2RhbC5mb3JtLmJhc2VVcmwgKyAnVXBkYXRlLycgKyBidG4ucm93LklkO1xyXG4gICAgICAgICAgICBvcHQubW9kYWwuZm9ybS5sb2FkRGF0YShvcHQubW9kYWwuZm9ybS5iYXNlVXJsICsgJ0dldC8nICsgYnRuLnJvdy5JZCk7XHJcbiAgICAgICAgICAgIG9wdC5tb2RhbC5mb3JtLm9uU3VjY2Vzc0Jhc2UgPSAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgb3B0Lm1vZGFsLmhpZGUoKTtcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGlmIChvcHQubW9kYWwuYWNjb3JkaW9uKXtcclxuICAgICAgICAgICAgZm9yIChjb25zdCByIG9mIG9wdC5tb2RhbC5hY2NvcmRpb24ucm93cyl7XHJcbiAgICAgICAgICAgICAgaWYgKHIudGFibGUpe1xyXG4gICAgICAgICAgICAgICAgY29uc3QgcCA9IG5ldyBQZXJtaXNzaW9uQ2xhc3MoKTtcclxuICAgICAgICAgICAgICAgIHAuUmVsYXRlZElkID0gYnRuLnJvdy5JZDtcclxuICAgICAgICAgICAgICAgIHAuQXJlYSA9IHRoaXMucGVybWlzc2lvbnMuQXJlYTtcclxuICAgICAgICAgICAgICAgIHAuQ29udHJvbGxlciA9IHRoaXMucGVybWlzc2lvbnMuQ29udHJvbGxlcjtcclxuICAgICAgICAgICAgICAgIHAuQWN0aW9uID0gci5uYW1lO1xyXG4gICAgICAgICAgICAgICAgcC5BY2Nlc3NlcyA9IG9wdGlvbi5BY2Nlc3NlcztcclxuICAgICAgICAgICAgICAgIHIudGFibGUucGVybWlzc2lvbnMgPSBwO1xyXG4gICAgICAgICAgICAgICAgaWYgKHIudGFibGUuZm9ybSl7XHJcbiAgICAgICAgICAgICAgICAgIHIudGFibGUuZm9ybS51cmwgPSBwLmdldFVybCgpICsgJ0luc2VydCc7XHJcbiAgICAgICAgICAgICAgICAgIHIudGFibGUuZm9ybS5iYXNlVXJsID0gcC5nZXRVcmwoKSArICdJbnNlcnQnO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgci50YWJsZS5zZXQoKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9O1xyXG4gICAgICB9IGVsc2UgaWYgKG9wdGlvbi5JbnB1dEFjdGlvbiA9PT0gUGVybWlzc2lvbklucHV0QWN0aW9uRW51bS5SZXBvcnQpe1xyXG4gICAgICAgIGNvbnN0IHAgPSBuZXcgUGVybWlzc2lvbkNsYXNzKCk7XHJcbiAgICAgICAgcC5SZWxhdGVkSWQgPSAnSW5kZXgnO1xyXG4gICAgICAgIHAuQXJlYSA9IHRoaXMucGVybWlzc2lvbnMuQXJlYTtcclxuICAgICAgICBwLkNvbnRyb2xsZXIgPSAnUHJpbnQnO1xyXG4gICAgICAgIHAuQWN0aW9uID0gb3B0aW9uLkFjdGlvbjtcclxuICAgICAgICBvcHQudXJsID0gJy9SZXBvcnQnICsgcC5nZXRVcmwoKSArICcve30nO1xyXG4gICAgICAgIG9wdC51cmxOZXdUYWIgPSB0cnVlO1xyXG4gICAgICB9IGVsc2UgaWYgKG9wdGlvbi5JbnB1dEFjdGlvbiA9PT0gUGVybWlzc2lvbklucHV0QWN0aW9uRW51bS5GaWxlKXtcclxuICAgICAgICBjb25zdCBwID0gbmV3IFBlcm1pc3Npb25DbGFzcygpO1xyXG4gICAgICAgIHAuUmVsYXRlZElkID0gdGhpcy5wZXJtaXNzaW9ucy5SZWxhdGVkSWQ7XHJcbiAgICAgICAgcC5BcmVhID0gdGhpcy5wZXJtaXNzaW9ucy5BcmVhO1xyXG4gICAgICAgIHAuQ29udHJvbGxlciA9IHRoaXMucGVybWlzc2lvbnMuQ29udHJvbGxlcjtcclxuICAgICAgICBwLkFjdGlvbiA9ICh0aGlzLnBlcm1pc3Npb25zLkFjdGlvbiA/IHRoaXMucGVybWlzc2lvbnMuQWN0aW9uIDogJycpICsgb3B0aW9uLkFjdGlvbjtcclxuICAgICAgICBvcHQudXJsID0gJy9GaWxlJyArIHAuZ2V0VXJsKCkgKyAnL3t9JztcclxuICAgICAgICBvcHQudXJsTmV3VGFiID0gdHJ1ZTtcclxuICAgICAgfSBlbHNlIGlmIChvcHRpb24uSW5wdXRBY3Rpb24gPT09IFBlcm1pc3Npb25JbnB1dEFjdGlvbkVudW0uQ29uZmlybSl7XHJcbiAgICAgICAgb3B0Lm9uQ2xpY2sgPSAoYnRuKSA9PiB7XHJcbiAgICAgICAgICBjb25zdCBwID0gbmV3IFBlcm1pc3Npb25DbGFzcygpO1xyXG4gICAgICAgICAgcC5SZWxhdGVkSWQgPSB0aGlzLnBlcm1pc3Npb25zLlJlbGF0ZWRJZDtcclxuICAgICAgICAgIHAuQXJlYSA9IHRoaXMucGVybWlzc2lvbnMuQXJlYTtcclxuICAgICAgICAgIHAuQ29udHJvbGxlciA9IHRoaXMucGVybWlzc2lvbnMuQ29udHJvbGxlcjtcclxuICAgICAgICAgIHAuQWN0aW9uID0gb3B0aW9uLkFjdGlvbjtcclxuICAgICAgICAgIHRoaXMuc2hvd0NvbmZpcm0odGhpcy5sKG9wdGlvbi5BY3Rpb24gKyAnQ29uZmlybScpLCBwLmdldFVybCgpICsgJy8nICsgYnRuLnJvdy5JZCwgbnVsbCwgKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmxvYWQoKTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH07XHJcbiAgICAgIH0gZWxzZSBpZiAob3B0aW9uLlR5cGUgPT09IFBlcm1pc3Npb25UeXBlRW51bS5PcHRpb24pe1xyXG4gICAgICAgIGlmIChvcHRpb24uT25DbGljayl7XHJcbiAgICAgICAgICBvcHQub25DbGljayA9IChidG4pID0+IHtcclxuICAgICAgICAgICAgb3B0aW9uLk9uQ2xpY2soYnRuKTtcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIHRoaXMub3B0aW9ucy5wdXNoKG9wdCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgVGFibGVDb2xsQ2xhc3Mge1xyXG4gIGNvbnN0cnVjdG9yKG5hbWU6IHN0cmluZywgcGVyY2VudDogbnVtYmVyLCBjbHMgPSAnJywgdHlwZTogVGFibGVDb2xsVHlwZSA9IFRhYmxlQ29sbFR5cGUuVGV4dCxcclxuICAgICAgICAgICAgICB3aXRoU2VhcmNoOiBib29sZWFuID0gdHJ1ZSwgc29ydDogYm9vbGVhbiA9IHRydWUpIHtcclxuICAgIHRoaXMubmFtZSA9IG5hbWU7XHJcbiAgICB0aGlzLnBlcmNlbnQgPSBwZXJjZW50O1xyXG4gICAgdGhpcy5jbGFzcyA9IGNscztcclxuICAgIHRoaXMudHlwZSA9IHR5cGU7XHJcbiAgICB0aGlzLndpdGhTZWFyY2ggPSB3aXRoU2VhcmNoO1xyXG4gICAgdGhpcy5zb3J0ID0gc29ydDtcclxuICB9XHJcbiAgZW51bSA9IG51bGw7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIHBlcmNlbnQ6IG51bWJlcjtcclxuICBjbGFzczogc3RyaW5nO1xyXG4gIHNvcnQgPSB0cnVlO1xyXG4gIHdpdGhTZWFyY2g6IGJvb2xlYW47XHJcbiAgc2VhcmNoOiBJbnB1dENsYXNzID0gbnVsbDtcclxuICB0eXBlOiBUYWJsZUNvbGxUeXBlO1xyXG4gIGZ1bjogKHJvdykgPT4gdm9pZCA9IG51bGw7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBUYWJsZVJvd0NsYXNzIHtcclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZGF0YSwgcHVibGljIGNoaWxkcmVuKSB7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -22,7 +22,7 @@ export class BaseComponent {
22
22
  return p.length > 0 ? this.getPermissionClass(p[0]) : null;
23
23
  }
24
24
  getPermissionClass(p) {
25
- return new PermissionClass(p.Name, p.Icon, p.Type, p.OptionType, this.app.area, p.Controller, p.Action, p.Condition, this.getPermissionAccessesClass(p.Id));
25
+ return new PermissionClass(p.Name, p.Icon, p.Type, p.InputType, p.InputAction, this.app.area, p.Controller, p.Action, p.Condition, this.getPermissionAccessesClass(p.Id));
26
26
  }
27
27
  getPermissionAccessesClass(parentId) {
28
28
  return this.app.currentUser.Permissions.filter(x => x.ParentId === parentId).map(x => this.getPermissionClass(x));
@@ -42,4 +42,4 @@ BaseComponent.ctorParameters = () => [
42
42
  null,
43
43
  null
44
44
  ];
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiRDovUHJvamVjdHMvUHNUb29sa2l0L1VJL3Byb2plY3RzL3BzLXRvb2xraXQtdWkvc3JjLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDNUQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFHekQsTUFBTSxPQUFnQixhQUFhO0lBR2pDLFlBQTZCLEdBQVEsRUFBUyxDQUFDLEVBQVMsSUFBSSxJQUFJO1FBQW5DLFFBQUcsR0FBSCxHQUFHLENBQUs7UUFBUyxNQUFDLEdBQUQsQ0FBQyxDQUFBO1FBQVMsTUFBQyxHQUFELENBQUMsQ0FBTztRQUM5RCxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBVyxFQUFFLENBQUMsR0FBRyxJQUFJLEVBQVUsRUFBRTtZQUN6QyxPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3ZELENBQUMsQ0FBQztRQUNGLElBQUksR0FBRyxDQUFDLFdBQVcsS0FBSyxJQUFJLEVBQUM7WUFDM0IsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3RELElBQUksSUFBSSxDQUFDLFdBQVcsRUFBQztnQkFDbkIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQzthQUNsQztTQUNGO0lBQ0gsQ0FBQztJQUNELGFBQWEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUk7UUFDdkIsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLElBQUksSUFBSSxHQUFHLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztZQUM5RyxHQUFHLENBQUMsSUFBSSxLQUFLLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQzdELENBQUM7SUFDRCxrQkFBa0IsQ0FBQyxDQUFNO1FBQ3ZCLE9BQU8sSUFBSSxlQUFlLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLFNBQVMsRUFDakgsSUFBSSxDQUFDLDBCQUEwQixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFDRCwwQkFBMEIsQ0FBQyxRQUFnQjtRQUN6QyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxLQUFLLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3BILENBQUM7SUFDRCxTQUFTLENBQUMsQ0FBUztRQUNqQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDbEUsQ0FBQztJQUNELFNBQVMsQ0FBQyxDQUFTO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUNsRSxDQUFDOzs7WUFoQ0YsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7UGVybWlzc2lvbkNsYXNzfSBmcm9tICcuLi9jbGFzc2VzL3Blcm1pc3Npb24uY2xhc3MnO1xyXG5pbXBvcnQge1Blcm1pc3Npb25UeXBlRW51bX0gZnJvbSAnLi4vY2xhc3Nlcy9lbnVtLmNsYXNzJztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VDb21wb25lbnQge1xyXG4gIGw6IChrLCB2PykgPT4gc3RyaW5nO1xyXG4gIHBlcm1pc3Npb25zOiBQZXJtaXNzaW9uQ2xhc3M7XHJcbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKHB1YmxpYyBhcHA6IGFueSwgcHVibGljIGMsIHB1YmxpYyBhID0gbnVsbCl7XHJcbiAgICB0aGlzLmwgPSAoa2V5OiBzdHJpbmcsIHYgPSBudWxsKTogc3RyaW5nID0+IHtcclxuICAgICAgcmV0dXJuIGFwcC5nZXRMKGAke2N9JHsoYSA/IGAuJHthfWAgOiAnJyl9YCwga2V5LCB2KTtcclxuICAgIH07XHJcbiAgICBpZiAoYXBwLmN1cnJlbnRVc2VyICE9PSBudWxsKXtcclxuICAgICAgdGhpcy5wZXJtaXNzaW9ucyA9IHRoaXMuZ2V0UGVybWlzc2lvbih0aGlzLmMsIHRoaXMuYSk7XHJcbiAgICAgIGlmICh0aGlzLnBlcm1pc3Npb25zKXtcclxuICAgICAgICB0aGlzLnBlcm1pc3Npb25zLkFyZWEgPSBhcHAuYXJlYTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBnZXRQZXJtaXNzaW9uKGMsIGEgPSBudWxsKTogYW55e1xyXG4gICAgY29uc3QgcCA9IHRoaXMuYXBwLmN1cnJlbnRVc2VyLlBlcm1pc3Npb25zLmZpbHRlcihwZXIgPT4gcGVyLkNvbnRyb2xsZXIgPT09IGMgJiYgKGEgPT0gbnVsbCB8fCBwZXIuQWN0aW9uID09PSBhKSAmJlxyXG4gICAgICBwZXIuVHlwZSA9PT0gUGVybWlzc2lvblR5cGVFbnVtLkl0ZW0pO1xyXG4gICAgcmV0dXJuIHAubGVuZ3RoID4gMCA/IHRoaXMuZ2V0UGVybWlzc2lvbkNsYXNzKHBbMF0pIDogbnVsbDtcclxuICB9XHJcbiAgZ2V0UGVybWlzc2lvbkNsYXNzKHA6IGFueSk6IFBlcm1pc3Npb25DbGFzc3tcclxuICAgIHJldHVybiBuZXcgUGVybWlzc2lvbkNsYXNzKHAuTmFtZSwgcC5JY29uLCBwLlR5cGUsIHAuT3B0aW9uVHlwZSwgdGhpcy5hcHAuYXJlYSwgcC5Db250cm9sbGVyLCBwLkFjdGlvbiwgcC5Db25kaXRpb24sXHJcbiAgICAgIHRoaXMuZ2V0UGVybWlzc2lvbkFjY2Vzc2VzQ2xhc3MocC5JZCkpO1xyXG4gIH1cclxuICBnZXRQZXJtaXNzaW9uQWNjZXNzZXNDbGFzcyhwYXJlbnRJZDogc3RyaW5nKTogUGVybWlzc2lvbkNsYXNzW117XHJcbiAgICByZXR1cm4gdGhpcy5hcHAuY3VycmVudFVzZXIuUGVybWlzc2lvbnMuZmlsdGVyKHggPT4geC5QYXJlbnRJZCA9PT0gcGFyZW50SWQpLm1hcCh4ID0+IHRoaXMuZ2V0UGVybWlzc2lvbkNsYXNzKHgpKTtcclxuICB9XHJcbiAgaGFzQWNjZXNzKGE6IHN0cmluZyk6IGJvb2xlYW57XHJcbiAgICByZXR1cm4gdGhpcy5wZXJtaXNzaW9ucyA/IHRoaXMucGVybWlzc2lvbnMuaGFzQWNjZXNzKGEpIDogZmFsc2U7XHJcbiAgfVxyXG4gIGhhc09wdGlvbihhOiBzdHJpbmcpOiBib29sZWFue1xyXG4gICAgcmV0dXJuIHRoaXMucGVybWlzc2lvbnMgPyB0aGlzLnBlcm1pc3Npb25zLmhhc09wdGlvbihhKSA6IGZhbHNlO1xyXG4gIH1cclxufVxyXG4iXX0=
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiRDovUHJvamVjdHMvUHNUb29sa2l0L1VJL3Byb2plY3RzL3BzLXRvb2xraXQtdWkvc3JjLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDNUQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFHekQsTUFBTSxPQUFnQixhQUFhO0lBR2pDLFlBQTZCLEdBQVEsRUFBUyxDQUFDLEVBQVMsSUFBSSxJQUFJO1FBQW5DLFFBQUcsR0FBSCxHQUFHLENBQUs7UUFBUyxNQUFDLEdBQUQsQ0FBQyxDQUFBO1FBQVMsTUFBQyxHQUFELENBQUMsQ0FBTztRQUM5RCxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBVyxFQUFFLENBQUMsR0FBRyxJQUFJLEVBQVUsRUFBRTtZQUN6QyxPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3ZELENBQUMsQ0FBQztRQUNGLElBQUksR0FBRyxDQUFDLFdBQVcsS0FBSyxJQUFJLEVBQUM7WUFDM0IsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3RELElBQUksSUFBSSxDQUFDLFdBQVcsRUFBQztnQkFDbkIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQzthQUNsQztTQUNGO0lBQ0gsQ0FBQztJQUNELGFBQWEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUk7UUFDdkIsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLElBQUksSUFBSSxHQUFHLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztZQUM5RyxHQUFHLENBQUMsSUFBSSxLQUFLLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQzdELENBQUM7SUFDRCxrQkFBa0IsQ0FBQyxDQUFNO1FBQ3ZCLE9BQU8sSUFBSSxlQUFlLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsU0FBUyxFQUMvSCxJQUFJLENBQUMsMEJBQTBCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUNELDBCQUEwQixDQUFDLFFBQWdCO1FBQ3pDLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLEtBQUssUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEgsQ0FBQztJQUNELFNBQVMsQ0FBQyxDQUFTO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUNsRSxDQUFDO0lBQ0QsU0FBUyxDQUFDLENBQVM7UUFDakIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ2xFLENBQUM7OztZQWhDRixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtQZXJtaXNzaW9uQ2xhc3N9IGZyb20gJy4uL2NsYXNzZXMvcGVybWlzc2lvbi5jbGFzcyc7XHJcbmltcG9ydCB7UGVybWlzc2lvblR5cGVFbnVtfSBmcm9tICcuLi9jbGFzc2VzL2VudW0uY2xhc3MnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZUNvbXBvbmVudCB7XHJcbiAgbDogKGssIHY/KSA9PiBzdHJpbmc7XHJcbiAgcGVybWlzc2lvbnM6IFBlcm1pc3Npb25DbGFzcztcclxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IocHVibGljIGFwcDogYW55LCBwdWJsaWMgYywgcHVibGljIGEgPSBudWxsKXtcclxuICAgIHRoaXMubCA9IChrZXk6IHN0cmluZywgdiA9IG51bGwpOiBzdHJpbmcgPT4ge1xyXG4gICAgICByZXR1cm4gYXBwLmdldEwoYCR7Y30keyhhID8gYC4ke2F9YCA6ICcnKX1gLCBrZXksIHYpO1xyXG4gICAgfTtcclxuICAgIGlmIChhcHAuY3VycmVudFVzZXIgIT09IG51bGwpe1xyXG4gICAgICB0aGlzLnBlcm1pc3Npb25zID0gdGhpcy5nZXRQZXJtaXNzaW9uKHRoaXMuYywgdGhpcy5hKTtcclxuICAgICAgaWYgKHRoaXMucGVybWlzc2lvbnMpe1xyXG4gICAgICAgIHRoaXMucGVybWlzc2lvbnMuQXJlYSA9IGFwcC5hcmVhO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIGdldFBlcm1pc3Npb24oYywgYSA9IG51bGwpOiBhbnl7XHJcbiAgICBjb25zdCBwID0gdGhpcy5hcHAuY3VycmVudFVzZXIuUGVybWlzc2lvbnMuZmlsdGVyKHBlciA9PiBwZXIuQ29udHJvbGxlciA9PT0gYyAmJiAoYSA9PSBudWxsIHx8IHBlci5BY3Rpb24gPT09IGEpICYmXHJcbiAgICAgIHBlci5UeXBlID09PSBQZXJtaXNzaW9uVHlwZUVudW0uSXRlbSk7XHJcbiAgICByZXR1cm4gcC5sZW5ndGggPiAwID8gdGhpcy5nZXRQZXJtaXNzaW9uQ2xhc3MocFswXSkgOiBudWxsO1xyXG4gIH1cclxuICBnZXRQZXJtaXNzaW9uQ2xhc3MocDogYW55KTogUGVybWlzc2lvbkNsYXNze1xyXG4gICAgcmV0dXJuIG5ldyBQZXJtaXNzaW9uQ2xhc3MocC5OYW1lLCBwLkljb24sIHAuVHlwZSwgcC5JbnB1dFR5cGUsIHAuSW5wdXRBY3Rpb24sIHRoaXMuYXBwLmFyZWEsIHAuQ29udHJvbGxlciwgcC5BY3Rpb24sIHAuQ29uZGl0aW9uLFxyXG4gICAgICB0aGlzLmdldFBlcm1pc3Npb25BY2Nlc3Nlc0NsYXNzKHAuSWQpKTtcclxuICB9XHJcbiAgZ2V0UGVybWlzc2lvbkFjY2Vzc2VzQ2xhc3MocGFyZW50SWQ6IHN0cmluZyk6IFBlcm1pc3Npb25DbGFzc1tde1xyXG4gICAgcmV0dXJuIHRoaXMuYXBwLmN1cnJlbnRVc2VyLlBlcm1pc3Npb25zLmZpbHRlcih4ID0+IHguUGFyZW50SWQgPT09IHBhcmVudElkKS5tYXAoeCA9PiB0aGlzLmdldFBlcm1pc3Npb25DbGFzcyh4KSk7XHJcbiAgfVxyXG4gIGhhc0FjY2VzcyhhOiBzdHJpbmcpOiBib29sZWFue1xyXG4gICAgcmV0dXJuIHRoaXMucGVybWlzc2lvbnMgPyB0aGlzLnBlcm1pc3Npb25zLmhhc0FjY2VzcyhhKSA6IGZhbHNlO1xyXG4gIH1cclxuICBoYXNPcHRpb24oYTogc3RyaW5nKTogYm9vbGVhbntcclxuICAgIHJldHVybiB0aGlzLnBlcm1pc3Npb25zID8gdGhpcy5wZXJtaXNzaW9ucy5oYXNPcHRpb24oYSkgOiBmYWxzZTtcclxuICB9XHJcbn1cclxuIl19