sk-front-lib 0.19.8 → 0.19.10
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/esm2020/crud/sk-cart.service.mjs +5 -5
- package/esm2020/model/lib/product.mjs +1 -1
- package/fesm2015/sk-front-lib-crud.mjs +4 -4
- package/fesm2015/sk-front-lib-crud.mjs.map +1 -1
- package/fesm2015/sk-front-lib-model.mjs.map +1 -1
- package/fesm2020/sk-front-lib-crud.mjs +4 -4
- package/fesm2020/sk-front-lib-crud.mjs.map +1 -1
- package/fesm2020/sk-front-lib-model.mjs.map +1 -1
- package/model/lib/product.d.ts +1 -0
- package/package.json +1 -1
|
@@ -93,13 +93,13 @@ export class SkCartLocalService {
|
|
|
93
93
|
const cartList = this.loadRaw();
|
|
94
94
|
const index = this.loadRaw().findIndex(item => item.id === cart.id);
|
|
95
95
|
if (index > -1) {
|
|
96
|
-
if (cart.product.maxBuyCount > 0 && cart.amount > cart.product.maxBuyCount) {
|
|
97
|
-
// 에러 리턴
|
|
98
|
-
return throwError(new Error('최대 구매 수량을 초과하였습니다.'));
|
|
99
|
-
}
|
|
100
96
|
cartList[index] = cart;
|
|
101
97
|
localStorage.setItem('cartData', SkUtils.encodeBase64(cartList));
|
|
102
98
|
}
|
|
99
|
+
if (cart.product.maxBuyCount > 0 && cart.amount > cart.product.maxBuyCount) {
|
|
100
|
+
// 에러 리턴
|
|
101
|
+
return throwError(new Error('최대 구매 수량을 초과하였습니다.'));
|
|
102
|
+
}
|
|
103
103
|
return of(cartList);
|
|
104
104
|
}
|
|
105
105
|
}
|
|
@@ -257,4 +257,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
257
257
|
providedIn: 'root'
|
|
258
258
|
}]
|
|
259
259
|
}], ctorParameters: function () { return [{ type: i2.SkAuthService }, { type: i1.SkApiService }, { type: SkCartApiService }, { type: SkCartLocalService }]; } });
|
|
260
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2stY2FydC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvc2stZnJvbnQtbGliL2NydWQvc3JjL3NrLWNhcnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUdsRCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDaEQsT0FBTyxFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRTlELE9BQU8sRUFBQyxlQUFlLEVBQWMsRUFBRSxFQUFnQixVQUFVLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDL0UsT0FBTyxFQUFDLEdBQUcsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pELE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFFckMsT0FBTyxFQUFnQixNQUFNLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQzs7OztBQW1CekQsTUFBTSxPQUFPLGdCQUFnQjtJQUV6QixZQUFvQixXQUF5QjtRQUF6QixnQkFBVyxHQUFYLFdBQVcsQ0FBYztJQUU3QyxDQUFDO0lBRUQsSUFBSTtRQUNBLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQVcsbUJBQW1CLENBQUMsQ0FBQyxJQUFJLENBQzNELEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQ3ZFLENBQUM7SUFDTixDQUFDO0lBRUQsR0FBRyxDQUFDLElBQVk7UUFDWixNQUFNLElBQUksR0FBa0I7WUFDeEIsT0FBTyxFQUFFLElB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LENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFNLE1BQU0sQ0FBQyxNQUFNLEVBQUU7WUFDMUQsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLO1lBQ25CLFlBQVk7WUFDWixXQUFXO1NBQ2QsQ0FBQyxDQUFDLEVBQ0gsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUM3QixDQUFDO0lBQ1YsQ0FBQzs7MkdBcktRLGFBQWE7K0dBQWIsYUFBYSxjQUZWLE1BQU07NEZBRVQsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2lzUGxhdGZvcm1Ccm93c2VyfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5cbmltcG9ydCB7SHR0cFBhcmFtc30gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtJbmplY3QsIEluamVjdGFibGUsIFBMQVRGT1JNX0lEfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIG9mLCBTdWJzY3JpcHRpb24sIHRocm93RXJyb3J9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXAsIHN3aXRjaE1hcCwgdGFrZSwgdGFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge1NrVXRpbHN9IGZyb20gJ3NrLWZyb250LWxpYic7XG5pbXBvcnQge1NrQXBpU2VydmljZX0gZnJvbSAnc2stZnJvbnQtbGliL2FwaSc7XG5pbXBvcnQge0lTa0NhcnRDcmVhdGUsIFNrQ2FydH0gZnJvbSAnc2stZnJvbnQtbGliL21vZGVsJztcbmltcG9ydCB7U2tBdXRoU2VydmljZX0gZnJvbSAnLi9zay1hdXRoLnNlcnZpY2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIENhcnRBYnN0cmFjdFNlcnZpY2Uge1xuICAgIGxvYWQoKTogT2JzZXJ2YWJsZTxTa0NhcnRbXT47XG5cbiAgICBjbGVhcigpOiBPYnNlcnZhYmxlPFNrQ2FydFtdPjtcblxuICAgIGFkZChjYXJ0OiBTa0NhcnQpOiBPYnNlcnZhYmxlPFNrQ2FydFtdPjtcblxuICAgIHJlbW92ZShjYXJ0czogU2tDYXJ0W10pOiBPYnNlcnZhYmxlPFNrQ2FydFtdPjtcblxuICAgIHVwZGF0ZShjYXJ0OiBTa0NhcnQpOiBPYnNlcnZhYmxlPFNrQ2FydFtdPjtcbn1cblxuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFNrQ2FydEFwaVNlcnZpY2UgaW1wbGVtZW50cyBDYXJ0QWJzdHJhY3RTZXJ2aWNlIHtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgX2FwaVNlcnZpY2U6IFNrQXBpU2VydmljZSkge1xuXG4gICAgfVxuXG4gICAgbG9hZCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2FwaVNlcnZpY2UuZ2V0PFNrQ2FydFtdPihgL2FwaS9wdWJsaWMvY2FydHNgKS5waXBlKFxuICAgICAgICAgICAgbWFwKHJlc3BvbnNlID0+IChyZXNwb25zZS5kYXRhIHx8IFtdKS5tYXAoaXRlbSA9PiBuZXcgU2tDYXJ0KGl0ZW0pKSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBhZGQoY2FydDogU2tDYXJ0KTogT2JzZXJ2YWJsZTxTa0NhcnRbXT4ge1xuICAgICAgICBjb25zdCBkYXRhOiBJU2tDYXJ0Q3JlYXRlID0ge1xuICAgICAgICAgICAgcHJvZHVjdDogY2FydC5wcm9kdWN0LmlkLFxuICAgICAgICAgICAgc2VsZWN0ZWRPcHRpb25zOiBjYXJ0Lm9wdGlvbnMubWFwKGl0ZW0gPT4gKHtcbiAgICAgICAgICAgICAgICB2YWx1ZTogaXRlbS52YWx1ZS5pZCxcbiAgICAgICAgICAgICAgICBvcHRpb246IGl0ZW0ub3B0aW9uLmlkLFxuICAgICAgICAgICAgICAgIGFtb3VudDogaXRlbS5hbW91bnRcbiAgICAgICAgICAgIH0pKSxcbiAgICAgICAgICAgIGFtb3VudDogY2FydC5hbW91bnQsXG4gICAgICAgICAgICBzZWxlY3RlZEdpZnRzOiAoY2FydC5naWZ0cyB8fCBbXSkubWFwKGl0ZW0gPT4gKHtpZDogaXRlbS5pZH0pKVxuICAgICAgICB9O1xuXG4gICAgICAgIHJldHVybiB0aGlzLl9hcGlTZXJ2aWNlLnBvc3Q8U2tDYXJ0W10+KGAvYXBpL3B1YmxpYy9jYXJ0c2AsIGRhdGEpLnBpcGUoXG4gICAgICAgICAgICBtYXAocmVzcG9uc2UgPT4gKHJlc3BvbnNlLmRhdGEgfHwgW10pLm1hcChpdGVtID0+IG5ldyBTa0NhcnQoaXRlbSkpKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGNsZWFyKCk6IE9ic2VydmFibGU8U2tDYXJ0W10+IHtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICByZW1vdmUoY2FydHM6IFNrQ2FydFtdKTogT2JzZXJ2YWJsZTxTa0NhcnRbXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5yZW1vdmVCeUlkQXJyYXkoY2FydHMubWFwKGNhcnQgPT4gY2FydC5pZCkpO1xuICAgIH1cblxuICAgIHJlbW92ZUJ5SWRBcnJheShpZEFycmF5OiBudW1iZXJbXSk6IE9ic2VydmFibGU8U2tDYXJ0W10+IHtcbiAgICAgICAgY29uc3QgaWRzID0gaWRBcnJheS5maWx0ZXIoaWQgPT4gTnVtYmVyKGlkKSA+PSAxKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2FwaVNlcnZpY2UuZGVsZXRlPFNrQ2FydFtdPihgL2FwaS9wdWJsaWMvY2FydHNgLCBuZXcgSHR0cFBhcmFtcygpLmFwcGVuZCgndGFyZ2V0JywgaWRzLmpvaW4oJywnKSkpLnBpcGUoXG4gICAgICAgICAgICBtYXAocmVzcG9uc2UgPT4gKHJlc3BvbnNlLmRhdGEgfHwgW10pLm1hcChpdGVtID0+IG5ldyBTa0NhcnQoaXRlbSkpKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHVwZGF0ZShjYXJ0OiBTa0NhcnQpOiBPYnNlcnZhYmxlPFNrQ2FydFtdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9hcGlTZXJ2aWNlLnB1dDxTa0NhcnRbXT4oYC9hcGkvcHVibGljL2NhcnRzLyR7Y2FydC5pZH1gLCB7YW1vdW50OiBjYXJ0LmFtb3VudH0pLnBpcGUoXG4gICAgICAgICAgICBtYXAocmVzcG9uc2UgPT4gKHJlc3BvbnNlLmRhdGEgfHwgW10pLm1hcChpdGVtID0+IG5ldyBTa0NhcnQoaXRlbSkpKVxuICAgICAgICApO1xuICAgIH1cbn1cblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBTa0NhcnRMb2NhbFNlcnZpY2UgaW1wbGVtZW50cyBDYXJ0QWJzdHJhY3RTZXJ2aWNlIHtcblxuICAgIHByaXZhdGUgaXNQbGF0Zm9ybUJyb3dzZXI6IGJvb2xlYW47XG5cbiAgICBjb25zdHJ1Y3RvcihASW5qZWN0KFBMQVRGT1JNX0lEKSBwcml2YXRlIHBsYXRmb3JtSWQ6IE9iamVjdCkge1xuICAgICAgICB0aGlzLmlzUGxhdGZvcm1Ccm93c2VyID0gaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKTtcbiAgICB9XG5cbiAgICBsb2FkUmF3KCkge1xuICAgICAgICBsZXQgZGF0YSA9IFtdO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgaWYgKHRoaXMuaXNQbGF0Zm9ybUJyb3dzZXIpIHtcbiAgICAgICAgICAgICAgICBkYXRhID0gKFNrVXRpbHMuZGVjb2RlQmFzZTY0KGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdjYXJ0RGF0YScpKSB8fCBbXSkubWFwKGl0ZW0gPT4gbmV3IFNrQ2FydChpdGVtKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIGRhdGEgPSBbXTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBkYXRhO1xuICAgIH1cblxuICAgIGxvYWQoKSB7XG4gICAgICAgIHJldHVybiBvZih0aGlzLmxvYWRSYXcoKSk7XG4gICAgfVxuXG4gICAgYWRkKGNhcnQ6IFNrQ2FydCk6IE9ic2VydmFibGU8U2tDYXJ0W10+IHtcbiAgICAgICAgY2FydC5pZCA9IE1hdGgucmFuZG9tKCk7XG4gICAgICAgIGNvbnN0IGNhcnRMaXN0ID0gW2NhcnQsIC4uLnRoaXMubG9hZFJhdygpXTtcbiAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ2NhcnREYXRhJywgU2tVdGlscy5lbmNvZGVCYXNlNjQoY2FydExpc3QpKTtcbiAgICAgICAgcmV0dXJuIG9mKGNhcnRMaXN0KTtcbiAgICB9XG5cbiAgICBjbGVhcigpOiBPYnNlcnZhYmxlPFNrQ2FydFtdPiB7XG4gICAgICAgIGNvbnN0IGNhcnRMaXN0ID0gW107XG4gICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdjYXJ0RGF0YScsIFNrVXRpbHMuZW5jb2RlQmFzZTY0KGNhcnRMaXN0KSk7XG4gICAgICAgIHJldHVybiBvZihjYXJ0TGlzdCk7XG4gICAgfVxuXG4gICAgcmVtb3ZlKGNhcnRzOiBTa0NhcnRbXSk6IE9ic2VydmFibGU8U2tDYXJ0W10+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMucmVtb3ZlQnlJZEFycmF5KGNhcnRzLm1hcChjYXJ0ID0+IGNhcnQuaWQpKTtcbiAgICB9XG5cbiAgICByZW1vdmVCeUlkQXJyYXkoaWRBcnJheTogbnVtYmVyW10pOiBPYnNlcnZhYmxlPFNrQ2FydFtdPiB7XG4gICAgICAgIGNvbnN0IHJlbW92ZWRJdGVtcyA9IHRoaXMubG9hZFJhdygpLmZpbHRlcihpdGVtID0+IGlkQXJyYXkuZmluZEluZGV4KGlkID0+IGlkID09PSBpdGVtLmlkKSA8IDApO1xuICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnY2FydERhdGEnLCBTa1V0aWxzLmVuY29kZUJhc2U2NChyZW1vdmVkSXRlbXMpKTtcbiAgICAgICAgcmV0dXJuIG9mKHJlbW92ZWRJdGVtcyk7XG4gICAgfVxuXG4gICAgdXBkYXRlKGNhcnQ6IFNrQ2FydCk6IE9ic2VydmFibGU8U2tDYXJ0W10+IHtcbiAgICAgICAgY29uc3QgY2FydExpc3QgPSB0aGlzLmxvYWRSYXcoKTtcbiAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLmxvYWRSYXcoKS5maW5kSW5kZXgoaXRlbSA9PiBpdGVtLmlkID09PSBjYXJ0LmlkKTtcbiAgICAgICAgaWYgKGluZGV4ID4gLTEpIHtcbiAgICAgICAgICAgIGlmIChjYXJ0LnByb2R1Y3QubWF4QnV5Q291bnQgPiAwICYmIGNhcnQuYW1vdW50ID4gY2FydC5wcm9kdWN0Lm1heEJ1eUNvdW50KSB7XG4gICAgICAgICAgICAgICAgLy8g7JeQ65+sIOumrO2EtFxuICAgICAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKG5ldyBFcnJvcign7LWc64yAIOq1rOunpCDsiJjrn4nsnYQg7LSI6rO87ZWY7JiA7Iq164uI64ukLicpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY2FydExpc3RbaW5kZXhdID0gY2FydDtcbiAgICAgICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdjYXJ0RGF0YScsIFNrVXRpbHMuZW5jb2RlQmFzZTY0KGNhcnRMaXN0KSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gb2YoY2FydExpc3QpO1xuICAgIH1cbn1cblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBTa0NhcnRTZXJ2aWNlIHtcblxuICAgIHByaXZhdGUgX2NhcnRJdGVtcyQ6IEJlaGF2aW9yU3ViamVjdDxTa0NhcnRbXT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KFtdKTtcbiAgICBwdWJsaWMgcmVhZG9ubHkgY2FydEl0ZW1zJDogT2JzZXJ2YWJsZTxTa0NhcnRbXT4gPSB0aGlzLl9jYXJ0SXRlbXMkLmFzT2JzZXJ2YWJsZSgpO1xuXG4gICAgZ2V0IGNhcnRJdGVtcygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NhcnRJdGVtcyQuZ2V0VmFsdWUoKTtcbiAgICB9XG5cbiAgICBzZXQgY2FydEl0ZW1zKHZhbHVlKSB7XG4gICAgICAgIHRoaXMuX2NhcnRJdGVtcyQubmV4dCh2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfc2VsZWN0ZWRJdGVtcyQ6IEJlaGF2aW9yU3ViamVjdDxudW1iZXJbXT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcltdPihbXSk7XG4gICAgcHVibGljIHJlYWRvbmx5IHNlbGVjdGVkSXRlbXMkOiBPYnNlcnZhYmxlPG51bWJlcltdPiA9IHRoaXMuX3NlbGVjdGVkSXRlbXMkLmFzT2JzZXJ2YWJsZSgpO1xuXG4gICAgZ2V0IHNlbGVjdGVkSXRlbXMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zZWxlY3RlZEl0ZW1zJC5nZXRWYWx1ZSgpO1xuICAgIH1cblxuICAgIHNldCBzZWxlY3RlZEl0ZW1zKHZhbHVlKSB7XG4gICAgICAgIHRoaXMuX3NlbGVjdGVkSXRlbXMkLm5leHQodmFsdWUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX215SW5mb1N1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBfYXV0aFNlcnZpY2U6IFNrQXV0aFNlcnZpY2UsXG4gICAgICAgICAgICAgICAgcHJpdmF0ZSBfYXBpU2VydmljZTogU2tBcGlTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIHByaXZhdGUgX2FwaUNhcnRTZXJ2aWNlOiBTa0NhcnRBcGlTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIHByaXZhdGUgX2FwaUxvY2FsU2VydmljZTogU2tDYXJ0TG9jYWxTZXJ2aWNlKSB7XG5cbiAgICAgICAgLy8gdGhpcy5fbXlJbmZvU3Vic2NyaXB0aW9uID0gdGhpcy5fYXV0aFNlcnZpY2UudXNlcmluZm8kLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIC8vICAgICB0aGlzLmxvYWQoKTtcbiAgICAgICAgLy8gfSk7XG4gICAgfVxuXG4gICAgbG9hZCgpIHtcbiAgICAgICAgdGhpcy5fYXV0aFNlcnZpY2UuY2hlY2tMb2dpbigpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBzd2l0Y2hNYXAocmVzdWx0ID0+IHJlc3VsdCA/IHRoaXMuX2FwaUNhcnRTZXJ2aWNlLmxvYWQoKSA6IHRoaXMuX2FwaUxvY2FsU2VydmljZS5sb2FkKCkpXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHJlc3VsdCA9PiB0aGlzLl9jYXJ0SXRlbXMkLm5leHQocmVzdWx0KSk7XG4gICAgfVxuXG4gICAgY2xlYXIoKSB7XG4gICAgICAgIHRoaXMuX2F1dGhTZXJ2aWNlLmNoZWNrTG9naW4oKVxuICAgICAgICAgICAgLnBpcGUoc3dpdGNoTWFwKHJlc3VsdCA9PiByZXN1bHQgPyB0aGlzLl9hcGlDYXJ0U2VydmljZS5jbGVhcigpIDogdGhpcy5fYXBpTG9jYWxTZXJ2aWNlLmNsZWFyKCkpKVxuICAgICAgICAgICAgLnN1YnNjcmliZShyZXN1bHQgPT4gdGhpcy5fY2FydEl0ZW1zJC5uZXh0KHJlc3VsdCkpO1xuICAgIH1cblxuICAgIGFkZChjYXJ0OiBTa0NhcnQpOiBPYnNlcnZhYmxlPFNrQ2FydFtdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9hdXRoU2VydmljZS5jaGVja0xvZ2luKClcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHN3aXRjaE1hcChyZXN1bHQgPT4gcmVzdWx0ID8gdGhpcy5fYXBpQ2FydFNlcnZpY2UuYWRkKGNhcnQpIDogdGhpcy5fYXBpTG9jYWxTZXJ2aWNlLmFkZChjYXJ0KSksXG4gICAgICAgICAgICAgICAgdGFwKHJlc3VsdCA9PiB0aGlzLl9jYXJ0SXRlbXMkLm5leHQocmVzdWx0KSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuXG4gICAgcmVtb3ZlKGNhcnRzOiBTa0NhcnRbXSkge1xuICAgICAgICB0aGlzLl9hdXRoU2VydmljZS5jaGVja0xvZ2luKClcbiAgICAgICAgICAgIC5waXBlKHN3aXRjaE1hcChyZXN1bHQgPT4gcmVzdWx0ID8gdGhpcy5fYXBpQ2FydFNlcnZpY2UucmVtb3ZlKGNhcnRzKSA6IHRoaXMuX2FwaUxvY2FsU2VydmljZS5yZW1vdmUoY2FydHMpKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUocmVzdWx0ID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLl9jYXJ0SXRlbXMkLm5leHQocmVzdWx0KTtcbiAgICAgICAgICAgICAgICB0aGlzLmNoZWNrU2VsZWN0ZWRJdGVtcygpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmVtb3ZlQnlJZEFycmF5KGlkQXJyYXk6IG51bWJlcltdKSB7XG4gICAgICAgIHRoaXMuX2F1dGhTZXJ2aWNlLmNoZWNrTG9naW4oKVxuICAgICAgICAgICAgLnBpcGUoc3dpdGNoTWFwKHJlc3VsdCA9PiByZXN1bHQgPyB0aGlzLl9hcGlDYXJ0U2VydmljZS5yZW1vdmVCeUlkQXJyYXkoaWRBcnJheSkgOiB0aGlzLl9hcGlMb2NhbFNlcnZpY2UucmVtb3ZlQnlJZEFycmF5KGlkQXJyYXkpKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUocmVzdWx0ID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLl9jYXJ0SXRlbXMkLm5leHQocmVzdWx0KTtcbiAgICAgICAgICAgICAgICB0aGlzLmNoZWNrU2VsZWN0ZWRJdGVtcygpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgdXBkYXRlKGNhcnQ6IFNrQ2FydCwgZXJyb3JDYWxsYmFjaz86IChlcnJvcjogYW55KSA9PiB2b2lkKSB7XG4gICAgICAgIHRoaXMuX2F1dGhTZXJ2aWNlLmNoZWNrTG9naW4oKVxuICAgICAgICAgICAgLnBpcGUoc3dpdGNoTWFwKHJlc3VsdCA9PiByZXN1bHQgPyB0aGlzLl9hcGlDYXJ0U2VydmljZS51cGRhdGUoY2FydCkgOiB0aGlzLl9hcGlMb2NhbFNlcnZpY2UudXBkYXRlKGNhcnQpKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUocmVzdWx0ID0+IHRoaXMuX2NhcnRJdGVtcyQubmV4dChyZXN1bHQpLCBlcnJvckNhbGxiYWNrKTtcbiAgICB9XG5cbiAgICBnZXRDYXJ0KGlkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NhcnRJdGVtcyQuZ2V0VmFsdWUoKS5maW5kKHZhbHVlID0+IHZhbHVlLmlkID09PSBpZCk7XG4gICAgfVxuXG4gICAgY2hlY2tTZWxlY3RlZEl0ZW1zKCkge1xuICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXMgPSB0aGlzLnNlbGVjdGVkSXRlbXMuZmlsdGVyKHZhbHVlID0+ICEhdGhpcy5nZXRDYXJ0KHZhbHVlKSk7XG4gICAgfVxuXG4gICAgc2VsZWN0QWxsKCkge1xuICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXMgPSB0aGlzLl9jYXJ0SXRlbXMkLmdldFZhbHVlKCkubWFwKGl0ZW0gPT4gaXRlbS5pZCk7XG4gICAgfVxuXG4gICAgZGVTZWxlY3RBbGwoKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcyA9IFtdO1xuICAgIH1cblxuICAgIHRvZ2dsZVNlbGVjdEFsbCgpIHtcbiAgICAgICAgaWYgKHRoaXMuc2VsZWN0ZWRJdGVtcy5sZW5ndGggPT09IHRoaXMuX2NhcnRJdGVtcyQuZ2V0VmFsdWUoKS5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuZGVTZWxlY3RBbGwoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0QWxsKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0b2dnbGVTZWxlY3QoY2FydDogU2tDYXJ0KSB7XG4gICAgICAgIGNvbnN0IHRhcmdldEluZGV4ID0gdGhpcy5zZWxlY3RlZEl0ZW1zLmZpbmRJbmRleChpdGVtID0+IGl0ZW0gPT09IGNhcnQuaWQpO1xuICAgICAgICBpZiAodGFyZ2V0SW5kZXggPT09IC0xKSB7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXMgPSBbLi4udGhpcy5zZWxlY3RlZEl0ZW1zLCBjYXJ0LmlkXTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IHRhcmdldCA9IHRoaXMuc2VsZWN0ZWRJdGVtcztcbiAgICAgICAgICAgIHRhcmdldC5zcGxpY2UodGFyZ2V0SW5kZXgsIDEpO1xuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zID0gdGFyZ2V0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaXNTZWxlY3RlZChjYXJ0OiBTa0NhcnQpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRJdGVtcy5maW5kSW5kZXgoaXRlbSA9PiBpdGVtID09PSBjYXJ0LmlkKSA+IC0xO1xuICAgIH1cblxuICAgIGlzU2VsZWN0ZWRBbGwoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnNlbGVjdGVkSXRlbXMubGVuZ3RoID4gMCAmJiB0aGlzLnNlbGVjdGVkSXRlbXMubGVuZ3RoID09PSB0aGlzLl9jYXJ0SXRlbXMkLmdldFZhbHVlKCkubGVuZ3RoO1xuICAgIH1cblxuICAgIGlzSW50ZXJtZWRpYXRlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5zZWxlY3RlZEl0ZW1zLmxlbmd0aCA+IDAgJiYgdGhpcy5zZWxlY3RlZEl0ZW1zLmxlbmd0aCAhPT0gdGhpcy5fY2FydEl0ZW1zJC5nZXRWYWx1ZSgpLmxlbmd0aDtcbiAgICB9XG5cbiAgICBjcmVhdGVPcmRlcihwYXltZW50VHlwZTogc3RyaW5nLCBhZmZpbGlhdGVLZXk6IHN0cmluZyk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9hdXRoU2VydmljZS5jaGVja0xvZ2luKClcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHRha2UoMSksXG4gICAgICAgICAgICAgICAgbWFwKHJlc3VsdCA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXN1bHQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBpVXJsOiBgL2FwaS9wdWJsaWMvb3JkZXJzL2Zyb20tY2FydGAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXM6IHRoaXMuc2VsZWN0ZWRJdGVtc1xuICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBpVXJsOiBgL2FwaS9wdWJsaWMvb3JkZXJzL2Zyb20tZGF0YWAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXM6IHRoaXMuc2VsZWN0ZWRJdGVtc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWFwKGlkID0+IHRoaXMuZ2V0Q2FydChpZCkpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tYXAoY2FydCA9PiAoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IGNhcnQuaWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9kdWN0SWQ6IGNhcnQucHJvZHVjdC5pZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFtb3VudDogY2FydC5hbW91bnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiAoY2FydC5vcHRpb25zIHx8IFtdKS5tYXAob3B0aW9uID0+ICh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uSWQ6IG9wdGlvbi5vcHRpb24uaWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVJZDogb3B0aW9uLnZhbHVlLmlkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFtb3VudDogb3B0aW9uLmFtb3VudCB8fCAxXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnaWZ0czogKGNhcnQuZ2lmdHMgfHwgW10pLm1hcChpdGVtID0+ICh7aWQ6IGl0ZW0uaWR9KSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkpXG4gICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKHJlc3VsdCA9PiB0aGlzLl9hcGlTZXJ2aWNlLnBvc3Q8YW55PihyZXN1bHQuYXBpVXJsLCB7XG4gICAgICAgICAgICAgICAgICAgIGl0ZW1zOiByZXN1bHQuaXRlbXMsXG4gICAgICAgICAgICAgICAgICAgIGFmZmlsaWF0ZUtleSxcbiAgICAgICAgICAgICAgICAgICAgcGF5bWVudFR5cGVcbiAgICAgICAgICAgICAgICB9KSksXG4gICAgICAgICAgICAgICAgbWFwKHJlc3VsdCA9PiByZXN1bHQuZGF0YSlcbiAgICAgICAgICAgICk7XG4gICAgfVxufVxuXG5cblxuIl19
|
|
260
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2stY2FydC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvc2stZnJvbnQtbGliL2NydWQvc3JjL3NrLWNhcnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUdsRCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDaEQsT0FBTyxFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRTlELE9BQU8sRUFBQyxlQUFlLEVBQWMsRUFBRSxFQUFnQixVQUFVLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDL0UsT0FBTyxFQUFDLEdBQUcsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pELE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFFckMsT0FBTyxFQUFnQixNQUFNLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQzs7OztBQW1CekQsTUFBTSxPQUFPLGdCQUFnQjtJQUV6QixZQUFvQixXQUF5QjtRQUF6QixnQkFBVyxHQUFYLFdBQVcsQ0FBYztJQUU3QyxDQUFDO0lBRUQsSUFBSTtRQUNBLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQVcsbUJBQW1CLENBQUMsQ0FBQyxJQUFJLENBQzNELEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQ3ZFLENBQUM7SUFDTixDQUFDO0lBRUQsR0FBRyxDQUFDLElBQVk7UUFDWixNQUFNLElBQUksR0FBa0I7WUFDeEIsT0FBTyxFQUFFLElB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QUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBTSxNQUFNLENBQUMsTUFBTSxFQUFFO1lBQzFELEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSztZQUNuQixZQUFZO1lBQ1osV0FBVztTQUNkLENBQUMsQ0FBQyxFQUNILEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FDN0IsQ0FBQztJQUNWLENBQUM7OzJHQXJLUSxhQUFhOytHQUFiLGFBQWEsY0FGVixNQUFNOzRGQUVULGFBQWE7a0JBSHpCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtpc1BsYXRmb3JtQnJvd3Nlcn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuXG5pbXBvcnQge0h0dHBQYXJhbXN9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7SW5qZWN0LCBJbmplY3RhYmxlLCBQTEFURk9STV9JRH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBvZiwgU3Vic2NyaXB0aW9uLCB0aHJvd0Vycm9yfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwLCBzd2l0Y2hNYXAsIHRha2UsIHRhcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtTa1V0aWxzfSBmcm9tICdzay1mcm9udC1saWInO1xuaW1wb3J0IHtTa0FwaVNlcnZpY2V9IGZyb20gJ3NrLWZyb250LWxpYi9hcGknO1xuaW1wb3J0IHtJU2tDYXJ0Q3JlYXRlLCBTa0NhcnR9IGZyb20gJ3NrLWZyb250LWxpYi9tb2RlbCc7XG5pbXBvcnQge1NrQXV0aFNlcnZpY2V9IGZyb20gJy4vc2stYXV0aC5zZXJ2aWNlJztcblxuZXhwb3J0IGludGVyZmFjZSBDYXJ0QWJzdHJhY3RTZXJ2aWNlIHtcbiAgICBsb2FkKCk6IE9ic2VydmFibGU8U2tDYXJ0W10+O1xuXG4gICAgY2xlYXIoKTogT2JzZXJ2YWJsZTxTa0NhcnRbXT47XG5cbiAgICBhZGQoY2FydDogU2tDYXJ0KTogT2JzZXJ2YWJsZTxTa0NhcnRbXT47XG5cbiAgICByZW1vdmUoY2FydHM6IFNrQ2FydFtdKTogT2JzZXJ2YWJsZTxTa0NhcnRbXT47XG5cbiAgICB1cGRhdGUoY2FydDogU2tDYXJ0KTogT2JzZXJ2YWJsZTxTa0NhcnRbXT47XG59XG5cblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBTa0NhcnRBcGlTZXJ2aWNlIGltcGxlbWVudHMgQ2FydEFic3RyYWN0U2VydmljZSB7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9hcGlTZXJ2aWNlOiBTa0FwaVNlcnZpY2UpIHtcblxuICAgIH1cblxuICAgIGxvYWQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9hcGlTZXJ2aWNlLmdldDxTa0NhcnRbXT4oYC9hcGkvcHVibGljL2NhcnRzYCkucGlwZShcbiAgICAgICAgICAgIG1hcChyZXNwb25zZSA9PiAocmVzcG9uc2UuZGF0YSB8fCBbXSkubWFwKGl0ZW0gPT4gbmV3IFNrQ2FydChpdGVtKSkpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgYWRkKGNhcnQ6IFNrQ2FydCk6IE9ic2VydmFibGU8U2tDYXJ0W10+IHtcbiAgICAgICAgY29uc3QgZGF0YTogSVNrQ2FydENyZWF0ZSA9IHtcbiAgICAgICAgICAgIHByb2R1Y3Q6IGNhcnQucHJvZHVjdC5pZCxcbiAgICAgICAgICAgIHNlbGVjdGVkT3B0aW9uczogY2FydC5vcHRpb25zLm1hcChpdGVtID0+ICh7XG4gICAgICAgICAgICAgICAgdmFsdWU6IGl0ZW0udmFsdWUuaWQsXG4gICAgICAgICAgICAgICAgb3B0aW9uOiBpdGVtLm9wdGlvbi5pZCxcbiAgICAgICAgICAgICAgICBhbW91bnQ6IGl0ZW0uYW1vdW50XG4gICAgICAgICAgICB9KSksXG4gICAgICAgICAgICBhbW91bnQ6IGNhcnQuYW1vdW50LFxuICAgICAgICAgICAgc2VsZWN0ZWRHaWZ0czogKGNhcnQuZ2lmdHMgfHwgW10pLm1hcChpdGVtID0+ICh7aWQ6IGl0ZW0uaWR9KSlcbiAgICAgICAgfTtcblxuICAgICAgICByZXR1cm4gdGhpcy5fYXBpU2VydmljZS5wb3N0PFNrQ2FydFtdPihgL2FwaS9wdWJsaWMvY2FydHNgLCBkYXRhKS5waXBlKFxuICAgICAgICAgICAgbWFwKHJlc3BvbnNlID0+IChyZXNwb25zZS5kYXRhIHx8IFtdKS5tYXAoaXRlbSA9PiBuZXcgU2tDYXJ0KGl0ZW0pKSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBjbGVhcigpOiBPYnNlcnZhYmxlPFNrQ2FydFtdPiB7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcmVtb3ZlKGNhcnRzOiBTa0NhcnRbXSk6IE9ic2VydmFibGU8U2tDYXJ0W10+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMucmVtb3ZlQnlJZEFycmF5KGNhcnRzLm1hcChjYXJ0ID0+IGNhcnQuaWQpKTtcbiAgICB9XG5cbiAgICByZW1vdmVCeUlkQXJyYXkoaWRBcnJheTogbnVtYmVyW10pOiBPYnNlcnZhYmxlPFNrQ2FydFtdPiB7XG4gICAgICAgIGNvbnN0IGlkcyA9IGlkQXJyYXkuZmlsdGVyKGlkID0+IE51bWJlcihpZCkgPj0gMSk7XG4gICAgICAgIHJldHVybiB0aGlzLl9hcGlTZXJ2aWNlLmRlbGV0ZTxTa0NhcnRbXT4oYC9hcGkvcHVibGljL2NhcnRzYCwgbmV3IEh0dHBQYXJhbXMoKS5hcHBlbmQoJ3RhcmdldCcsIGlkcy5qb2luKCcsJykpKS5waXBlKFxuICAgICAgICAgICAgbWFwKHJlc3BvbnNlID0+IChyZXNwb25zZS5kYXRhIHx8IFtdKS5tYXAoaXRlbSA9PiBuZXcgU2tDYXJ0KGl0ZW0pKSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICB1cGRhdGUoY2FydDogU2tDYXJ0KTogT2JzZXJ2YWJsZTxTa0NhcnRbXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fYXBpU2VydmljZS5wdXQ8U2tDYXJ0W10+KGAvYXBpL3B1YmxpYy9jYXJ0cy8ke2NhcnQuaWR9YCwge2Ftb3VudDogY2FydC5hbW91bnR9KS5waXBlKFxuICAgICAgICAgICAgbWFwKHJlc3BvbnNlID0+IChyZXNwb25zZS5kYXRhIHx8IFtdKS5tYXAoaXRlbSA9PiBuZXcgU2tDYXJ0KGl0ZW0pKSlcbiAgICAgICAgKTtcbiAgICB9XG59XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgU2tDYXJ0TG9jYWxTZXJ2aWNlIGltcGxlbWVudHMgQ2FydEFic3RyYWN0U2VydmljZSB7XG5cbiAgICBwcml2YXRlIGlzUGxhdGZvcm1Ccm93c2VyOiBib29sZWFuO1xuXG4gICAgY29uc3RydWN0b3IoQEluamVjdChQTEFURk9STV9JRCkgcHJpdmF0ZSBwbGF0Zm9ybUlkOiBPYmplY3QpIHtcbiAgICAgICAgdGhpcy5pc1BsYXRmb3JtQnJvd3NlciA9IGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCk7XG4gICAgfVxuXG4gICAgbG9hZFJhdygpIHtcbiAgICAgICAgbGV0IGRhdGEgPSBbXTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGlmICh0aGlzLmlzUGxhdGZvcm1Ccm93c2VyKSB7XG4gICAgICAgICAgICAgICAgZGF0YSA9IChTa1V0aWxzLmRlY29kZUJhc2U2NChsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnY2FydERhdGEnKSkgfHwgW10pLm1hcChpdGVtID0+IG5ldyBTa0NhcnQoaXRlbSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICBkYXRhID0gW107XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZGF0YTtcbiAgICB9XG5cbiAgICBsb2FkKCkge1xuICAgICAgICByZXR1cm4gb2YodGhpcy5sb2FkUmF3KCkpO1xuICAgIH1cblxuICAgIGFkZChjYXJ0OiBTa0NhcnQpOiBPYnNlcnZhYmxlPFNrQ2FydFtdPiB7XG4gICAgICAgIGNhcnQuaWQgPSBNYXRoLnJhbmRvbSgpO1xuICAgICAgICBjb25zdCBjYXJ0TGlzdCA9IFtjYXJ0LCAuLi50aGlzLmxvYWRSYXcoKV07XG4gICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdjYXJ0RGF0YScsIFNrVXRpbHMuZW5jb2RlQmFzZTY0KGNhcnRMaXN0KSk7XG4gICAgICAgIHJldHVybiBvZihjYXJ0TGlzdCk7XG4gICAgfVxuXG4gICAgY2xlYXIoKTogT2JzZXJ2YWJsZTxTa0NhcnRbXT4ge1xuICAgICAgICBjb25zdCBjYXJ0TGlzdCA9IFtdO1xuICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnY2FydERhdGEnLCBTa1V0aWxzLmVuY29kZUJhc2U2NChjYXJ0TGlzdCkpO1xuICAgICAgICByZXR1cm4gb2YoY2FydExpc3QpO1xuICAgIH1cblxuICAgIHJlbW92ZShjYXJ0czogU2tDYXJ0W10pOiBPYnNlcnZhYmxlPFNrQ2FydFtdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnJlbW92ZUJ5SWRBcnJheShjYXJ0cy5tYXAoY2FydCA9PiBjYXJ0LmlkKSk7XG4gICAgfVxuXG4gICAgcmVtb3ZlQnlJZEFycmF5KGlkQXJyYXk6IG51bWJlcltdKTogT2JzZXJ2YWJsZTxTa0NhcnRbXT4ge1xuICAgICAgICBjb25zdCByZW1vdmVkSXRlbXMgPSB0aGlzLmxvYWRSYXcoKS5maWx0ZXIoaXRlbSA9PiBpZEFycmF5LmZpbmRJbmRleChpZCA9PiBpZCA9PT0gaXRlbS5pZCkgPCAwKTtcbiAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ2NhcnREYXRhJywgU2tVdGlscy5lbmNvZGVCYXNlNjQocmVtb3ZlZEl0ZW1zKSk7XG4gICAgICAgIHJldHVybiBvZihyZW1vdmVkSXRlbXMpO1xuICAgIH1cblxuICAgIHVwZGF0ZShjYXJ0OiBTa0NhcnQpOiBPYnNlcnZhYmxlPFNrQ2FydFtdPiB7XG4gICAgICAgIGNvbnN0IGNhcnRMaXN0ID0gdGhpcy5sb2FkUmF3KCk7XG4gICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5sb2FkUmF3KCkuZmluZEluZGV4KGl0ZW0gPT4gaXRlbS5pZCA9PT0gY2FydC5pZCk7XG4gICAgICAgIGlmIChpbmRleCA+IC0xKSB7XG4gICAgICAgICAgICBjYXJ0TGlzdFtpbmRleF0gPSBjYXJ0O1xuICAgICAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ2NhcnREYXRhJywgU2tVdGlscy5lbmNvZGVCYXNlNjQoY2FydExpc3QpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjYXJ0LnByb2R1Y3QubWF4QnV5Q291bnQgPiAwICYmIGNhcnQuYW1vdW50ID4gY2FydC5wcm9kdWN0Lm1heEJ1eUNvdW50KSB7XG4gICAgICAgICAgICAvLyDsl5Drn6wg66as7YS0XG4gICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcihuZXcgRXJyb3IoJ+y1nOuMgCDqtazrp6Qg7IiY65+J7J2EIOy0iOqzvO2VmOyYgOyKteuLiOuLpC4nKSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gb2YoY2FydExpc3QpO1xuICAgIH1cbn1cblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBTa0NhcnRTZXJ2aWNlIHtcblxuICAgIHByaXZhdGUgX2NhcnRJdGVtcyQ6IEJlaGF2aW9yU3ViamVjdDxTa0NhcnRbXT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KFtdKTtcbiAgICBwdWJsaWMgcmVhZG9ubHkgY2FydEl0ZW1zJDogT2JzZXJ2YWJsZTxTa0NhcnRbXT4gPSB0aGlzLl9jYXJ0SXRlbXMkLmFzT2JzZXJ2YWJsZSgpO1xuXG4gICAgZ2V0IGNhcnRJdGVtcygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NhcnRJdGVtcyQuZ2V0VmFsdWUoKTtcbiAgICB9XG5cbiAgICBzZXQgY2FydEl0ZW1zKHZhbHVlKSB7XG4gICAgICAgIHRoaXMuX2NhcnRJdGVtcyQubmV4dCh2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfc2VsZWN0ZWRJdGVtcyQ6IEJlaGF2aW9yU3ViamVjdDxudW1iZXJbXT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcltdPihbXSk7XG4gICAgcHVibGljIHJlYWRvbmx5IHNlbGVjdGVkSXRlbXMkOiBPYnNlcnZhYmxlPG51bWJlcltdPiA9IHRoaXMuX3NlbGVjdGVkSXRlbXMkLmFzT2JzZXJ2YWJsZSgpO1xuXG4gICAgZ2V0IHNlbGVjdGVkSXRlbXMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zZWxlY3RlZEl0ZW1zJC5nZXRWYWx1ZSgpO1xuICAgIH1cblxuICAgIHNldCBzZWxlY3RlZEl0ZW1zKHZhbHVlKSB7XG4gICAgICAgIHRoaXMuX3NlbGVjdGVkSXRlbXMkLm5leHQodmFsdWUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX215SW5mb1N1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBfYXV0aFNlcnZpY2U6IFNrQXV0aFNlcnZpY2UsXG4gICAgICAgICAgICAgICAgcHJpdmF0ZSBfYXBpU2VydmljZTogU2tBcGlTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIHByaXZhdGUgX2FwaUNhcnRTZXJ2aWNlOiBTa0NhcnRBcGlTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIHByaXZhdGUgX2FwaUxvY2FsU2VydmljZTogU2tDYXJ0TG9jYWxTZXJ2aWNlKSB7XG5cbiAgICAgICAgLy8gdGhpcy5fbXlJbmZvU3Vic2NyaXB0aW9uID0gdGhpcy5fYXV0aFNlcnZpY2UudXNlcmluZm8kLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIC8vICAgICB0aGlzLmxvYWQoKTtcbiAgICAgICAgLy8gfSk7XG4gICAgfVxuXG4gICAgbG9hZCgpIHtcbiAgICAgICAgdGhpcy5fYXV0aFNlcnZpY2UuY2hlY2tMb2dpbigpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBzd2l0Y2hNYXAocmVzdWx0ID0+IHJlc3VsdCA/IHRoaXMuX2FwaUNhcnRTZXJ2aWNlLmxvYWQoKSA6IHRoaXMuX2FwaUxvY2FsU2VydmljZS5sb2FkKCkpXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHJlc3VsdCA9PiB0aGlzLl9jYXJ0SXRlbXMkLm5leHQocmVzdWx0KSk7XG4gICAgfVxuXG4gICAgY2xlYXIoKSB7XG4gICAgICAgIHRoaXMuX2F1dGhTZXJ2aWNlLmNoZWNrTG9naW4oKVxuICAgICAgICAgICAgLnBpcGUoc3dpdGNoTWFwKHJlc3VsdCA9PiByZXN1bHQgPyB0aGlzLl9hcGlDYXJ0U2VydmljZS5jbGVhcigpIDogdGhpcy5fYXBpTG9jYWxTZXJ2aWNlLmNsZWFyKCkpKVxuICAgICAgICAgICAgLnN1YnNjcmliZShyZXN1bHQgPT4gdGhpcy5fY2FydEl0ZW1zJC5uZXh0KHJlc3VsdCkpO1xuICAgIH1cblxuICAgIGFkZChjYXJ0OiBTa0NhcnQpOiBPYnNlcnZhYmxlPFNrQ2FydFtdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9hdXRoU2VydmljZS5jaGVja0xvZ2luKClcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHN3aXRjaE1hcChyZXN1bHQgPT4gcmVzdWx0ID8gdGhpcy5fYXBpQ2FydFNlcnZpY2UuYWRkKGNhcnQpIDogdGhpcy5fYXBpTG9jYWxTZXJ2aWNlLmFkZChjYXJ0KSksXG4gICAgICAgICAgICAgICAgdGFwKHJlc3VsdCA9PiB0aGlzLl9jYXJ0SXRlbXMkLm5leHQocmVzdWx0KSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuXG4gICAgcmVtb3ZlKGNhcnRzOiBTa0NhcnRbXSkge1xuICAgICAgICB0aGlzLl9hdXRoU2VydmljZS5jaGVja0xvZ2luKClcbiAgICAgICAgICAgIC5waXBlKHN3aXRjaE1hcChyZXN1bHQgPT4gcmVzdWx0ID8gdGhpcy5fYXBpQ2FydFNlcnZpY2UucmVtb3ZlKGNhcnRzKSA6IHRoaXMuX2FwaUxvY2FsU2VydmljZS5yZW1vdmUoY2FydHMpKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUocmVzdWx0ID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLl9jYXJ0SXRlbXMkLm5leHQocmVzdWx0KTtcbiAgICAgICAgICAgICAgICB0aGlzLmNoZWNrU2VsZWN0ZWRJdGVtcygpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmVtb3ZlQnlJZEFycmF5KGlkQXJyYXk6IG51bWJlcltdKSB7XG4gICAgICAgIHRoaXMuX2F1dGhTZXJ2aWNlLmNoZWNrTG9naW4oKVxuICAgICAgICAgICAgLnBpcGUoc3dpdGNoTWFwKHJlc3VsdCA9PiByZXN1bHQgPyB0aGlzLl9hcGlDYXJ0U2VydmljZS5yZW1vdmVCeUlkQXJyYXkoaWRBcnJheSkgOiB0aGlzLl9hcGlMb2NhbFNlcnZpY2UucmVtb3ZlQnlJZEFycmF5KGlkQXJyYXkpKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUocmVzdWx0ID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLl9jYXJ0SXRlbXMkLm5leHQocmVzdWx0KTtcbiAgICAgICAgICAgICAgICB0aGlzLmNoZWNrU2VsZWN0ZWRJdGVtcygpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgdXBkYXRlKGNhcnQ6IFNrQ2FydCwgZXJyb3JDYWxsYmFjaz86IChlcnJvcjogYW55KSA9PiB2b2lkKSB7XG4gICAgICAgIHRoaXMuX2F1dGhTZXJ2aWNlLmNoZWNrTG9naW4oKVxuICAgICAgICAgICAgLnBpcGUoc3dpdGNoTWFwKHJlc3VsdCA9PiByZXN1bHQgPyB0aGlzLl9hcGlDYXJ0U2VydmljZS51cGRhdGUoY2FydCkgOiB0aGlzLl9hcGlMb2NhbFNlcnZpY2UudXBkYXRlKGNhcnQpKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUocmVzdWx0ID0+IHRoaXMuX2NhcnRJdGVtcyQubmV4dChyZXN1bHQpLCBlcnJvckNhbGxiYWNrKTtcbiAgICB9XG5cbiAgICBnZXRDYXJ0KGlkOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NhcnRJdGVtcyQuZ2V0VmFsdWUoKS5maW5kKHZhbHVlID0+IHZhbHVlLmlkID09PSBpZCk7XG4gICAgfVxuXG4gICAgY2hlY2tTZWxlY3RlZEl0ZW1zKCkge1xuICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXMgPSB0aGlzLnNlbGVjdGVkSXRlbXMuZmlsdGVyKHZhbHVlID0+ICEhdGhpcy5nZXRDYXJ0KHZhbHVlKSk7XG4gICAgfVxuXG4gICAgc2VsZWN0QWxsKCkge1xuICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXMgPSB0aGlzLl9jYXJ0SXRlbXMkLmdldFZhbHVlKCkubWFwKGl0ZW0gPT4gaXRlbS5pZCk7XG4gICAgfVxuXG4gICAgZGVTZWxlY3RBbGwoKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcyA9IFtdO1xuICAgIH1cblxuICAgIHRvZ2dsZVNlbGVjdEFsbCgpIHtcbiAgICAgICAgaWYgKHRoaXMuc2VsZWN0ZWRJdGVtcy5sZW5ndGggPT09IHRoaXMuX2NhcnRJdGVtcyQuZ2V0VmFsdWUoKS5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuZGVTZWxlY3RBbGwoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0QWxsKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0b2dnbGVTZWxlY3QoY2FydDogU2tDYXJ0KSB7XG4gICAgICAgIGNvbnN0IHRhcmdldEluZGV4ID0gdGhpcy5zZWxlY3RlZEl0ZW1zLmZpbmRJbmRleChpdGVtID0+IGl0ZW0gPT09IGNhcnQuaWQpO1xuICAgICAgICBpZiAodGFyZ2V0SW5kZXggPT09IC0xKSB7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXMgPSBbLi4udGhpcy5zZWxlY3RlZEl0ZW1zLCBjYXJ0LmlkXTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IHRhcmdldCA9IHRoaXMuc2VsZWN0ZWRJdGVtcztcbiAgICAgICAgICAgIHRhcmdldC5zcGxpY2UodGFyZ2V0SW5kZXgsIDEpO1xuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zID0gdGFyZ2V0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaXNTZWxlY3RlZChjYXJ0OiBTa0NhcnQpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRJdGVtcy5maW5kSW5kZXgoaXRlbSA9PiBpdGVtID09PSBjYXJ0LmlkKSA+IC0xO1xuICAgIH1cblxuICAgIGlzU2VsZWN0ZWRBbGwoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnNlbGVjdGVkSXRlbXMubGVuZ3RoID4gMCAmJiB0aGlzLnNlbGVjdGVkSXRlbXMubGVuZ3RoID09PSB0aGlzLl9jYXJ0SXRlbXMkLmdldFZhbHVlKCkubGVuZ3RoO1xuICAgIH1cblxuICAgIGlzSW50ZXJtZWRpYXRlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5zZWxlY3RlZEl0ZW1zLmxlbmd0aCA+IDAgJiYgdGhpcy5zZWxlY3RlZEl0ZW1zLmxlbmd0aCAhPT0gdGhpcy5fY2FydEl0ZW1zJC5nZXRWYWx1ZSgpLmxlbmd0aDtcbiAgICB9XG5cbiAgICBjcmVhdGVPcmRlcihwYXltZW50VHlwZTogc3RyaW5nLCBhZmZpbGlhdGVLZXk6IHN0cmluZyk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9hdXRoU2VydmljZS5jaGVja0xvZ2luKClcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHRha2UoMSksXG4gICAgICAgICAgICAgICAgbWFwKHJlc3VsdCA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXN1bHQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBpVXJsOiBgL2FwaS9wdWJsaWMvb3JkZXJzL2Zyb20tY2FydGAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXM6IHRoaXMuc2VsZWN0ZWRJdGVtc1xuICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBpVXJsOiBgL2FwaS9wdWJsaWMvb3JkZXJzL2Zyb20tZGF0YWAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXM6IHRoaXMuc2VsZWN0ZWRJdGVtc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWFwKGlkID0+IHRoaXMuZ2V0Q2FydChpZCkpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tYXAoY2FydCA9PiAoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IGNhcnQuaWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9kdWN0SWQ6IGNhcnQucHJvZHVjdC5pZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFtb3VudDogY2FydC5hbW91bnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiAoY2FydC5vcHRpb25zIHx8IFtdKS5tYXAob3B0aW9uID0+ICh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uSWQ6IG9wdGlvbi5vcHRpb24uaWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVJZDogb3B0aW9uLnZhbHVlLmlkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFtb3VudDogb3B0aW9uLmFtb3VudCB8fCAxXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnaWZ0czogKGNhcnQuZ2lmdHMgfHwgW10pLm1hcChpdGVtID0+ICh7aWQ6IGl0ZW0uaWR9KSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkpXG4gICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKHJlc3VsdCA9PiB0aGlzLl9hcGlTZXJ2aWNlLnBvc3Q8YW55PihyZXN1bHQuYXBpVXJsLCB7XG4gICAgICAgICAgICAgICAgICAgIGl0ZW1zOiByZXN1bHQuaXRlbXMsXG4gICAgICAgICAgICAgICAgICAgIGFmZmlsaWF0ZUtleSxcbiAgICAgICAgICAgICAgICAgICAgcGF5bWVudFR5cGVcbiAgICAgICAgICAgICAgICB9KSksXG4gICAgICAgICAgICAgICAgbWFwKHJlc3VsdCA9PiByZXN1bHQuZGF0YSlcbiAgICAgICAgICAgICk7XG4gICAgfVxufVxuXG5cblxuIl19
|
|
@@ -153,4 +153,4 @@ export function getSkProductAccessPolicyText(accessPolicy) {
|
|
|
153
153
|
return accessPolicy;
|
|
154
154
|
}
|
|
155
155
|
}
|
|
156
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NrLWZyb250LWxpYi9tb2RlbC9zcmMvbGliL3Byb2R1Y3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLFNBQVMsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNsRCxPQUFPLEVBQUUsS0FBSyxFQUFVLE1BQU0sU0FBUyxDQUFDO0FBWXhDLE9BQU8sRUFBVyxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFlekMsTUFBTSxDQUFOLElBQVksYUFHWDtBQUhELFdBQVksYUFBYTtJQUNyQixvQ0FBbUIsQ0FBQTtJQUNuQixrQ0FBaUIsQ0FBQTtBQUNyQixDQUFDLEVBSFcsYUFBYSxLQUFiLGFBQWEsUUFHeEI7QUFFRCxNQUFNLENBQU4sSUFBWSxrQkFJWDtBQUpELFdBQVksa0JBQWtCO0lBQzFCLDJDQUFxQixDQUFBO0lBQ3JCLDJDQUFxQixDQUFBO0lBQ3JCLDZDQUF1QixDQUFBO0FBQzNCLENBQUMsRUFKVyxrQkFBa0IsS0FBbEIsa0JBQWtCLFFBSTdCO0FBRUQsTUFBTSxDQUFOLElBQVksZUFLWDtBQUxELFdBQVksZUFBZTtJQUN2Qix3Q0FBcUIsQ0FBQTtJQUNyQixvQ0FBaUIsQ0FBQTtJQUNqQixzQ0FBbUIsQ0FBQTtJQUNuQiw0Q0FBeUIsQ0FBQTtBQUM3QixDQUFDLEVBTFcsZUFBZSxLQUFmLGVBQWUsUUFLMUI7QUFFRCxNQUFNLENBQU4sSUFBWSxxQkFLWDtBQUxELFdBQVkscUJBQXFCO0lBQzdCLDBDQUFpQixDQUFBO0lBQ2pCLDBDQUFpQixDQUFBO0lBQ2pCLHFEQUE0QixDQUFBO0lBQzVCLHFEQUE0QixDQUFBO0FBQ2hDLENBQUMsRUFMVyxxQkFBcUIsS0FBckIscUJBQXFCLFFBS2hDO0FBU0QsTUFBTSxPQUFPLGNBQWM7SUFNdkIsWUFBWSxPQUF3QixFQUFFO1FBQ2xDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFB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QjtZQUNJLE9BQU8sWUFBWSxDQUFDO0tBQzNCO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElTa0FydGljbGUsIFNrQXJ0aWNsZSB9IGZyb20gJy4vYXJ0aWNsZSc7XG5pbXBvcnQgeyBBdWRpdCwgSUF1ZGl0IH0gZnJvbSAnLi9hdWRpdCc7XG5pbXBvcnQgeyBJU2tEb2N1bWVudFB1YmxpY0xpc3QgfSBmcm9tICcuL2RvY3VtZW50JztcbmltcG9ydCB7XG4gICAgU2tCcmFuZCxcbiAgICBTa0NhdGFsb2dFbWJlZCxcbiAgICBTa0NhdGVnb3J5LFxuICAgIFNrS2V5d29yZCxcbiAgICBTa05hdmVyRXBFbWJlZCxcbiAgICBTa09wZW5ncmFwaCxcbiAgICBTa1N1YkNhdGVnb3J5SXRlbSxcbiAgICBTa1ZhbHVlVHlwZVxufSBmcm9tICcuL2V0Yyc7XG5pbXBvcnQgeyBJU2tGaWxlLCBTa0ZpbGUgfSBmcm9tICcuL2ZpbGUnO1xuaW1wb3J0IHsgU2tQYXltZW50U3RhdHVzIH0gZnJvbSAnLi9wYXltZW50JztcbmltcG9ydCB7IElTa1Byb21vdGlvbkdpZnRHcm91cEl0ZW0sIElTa1Byb21vdGlvblB1YmxpY0xpc3QgfSBmcm9tICcuL3Byb21vdGlvbic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2tQcm9kdWN0Q291bnQge1xuICAgIHRvdGFsPzogbnVtYmVyO1xuICAgIHRyYXNoPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNrUHJvZHVjdFN0b2NrQ291bnQge1xuICAgIHRvdGFsSW4/OiBudW1iZXI7XG4gICAgdG90YWxPdXQ/OiBudW1iZXI7XG4gICAgY3VycmVudD86IG51bWJlcjtcbn1cblxuZXhwb3J0IGVudW0gU2tQcm9kdWN0VHlwZSB7XG4gICAgUGFja2FnZSA9ICdQQUNLQUdFJyxcbiAgICBTaW5nbGUgPSAnU0lOR0xFJ1xufVxuXG5leHBvcnQgZW51bSBTa1Byb2R1Y3RTdHVmZlR5cGUge1xuICAgIEhhcmR3YXJlID0gJ0hBUkRXQVJFJyxcbiAgICBTb2Z0d2FyZSA9ICdTT0ZUV0FSRScsXG4gICAgRnVybml0dXJlID0gJ0ZVUk5JVFVSRSdcbn1cblxuZXhwb3J0IGVudW0gU2tQcm9kdWN0U3RhdHVzIHtcbiAgICBQcmVvcmRlciA9ICdQUkVPUkRFUicsXG4gICAgT25zYWxlID0gJ09OU0FMRScsXG4gICAgU29sZG91dCA9ICdTT0xET1VUJyxcbiAgICBEZWFjdGl2YXRlID0gJ0RFQUNUSVZBVEUnXG59XG5cbmV4cG9ydCBlbnVtIFNrUHJvZHVjdEFjY2Vzc1BvbGljeSB7XG4gICAgUHVibGljID0gJ1BVQkxJQycsXG4gICAgSGlkZGVuID0gJ0hJRERFTicsXG4gICAgUHJpdmF0ZUxpbmsgPSAnUFJJVkFURV9MSU5LJyxcbiAgICBQcml2YXRlVXNlciA9ICdQUklWQVRFX1VTRVInXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVNrUHJvZHVjdEJyYW5kIHtcbiAgICBpZD86IG51bWJlcjtcbiAgICBwcm9kdWN0PzogSVNrUHJvZHVjdDtcbiAgICBicmFuZD86IFNrQnJhbmQ7XG4gICAgaXNEZWZhdWx0PzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGNsYXNzIFNrUHJvZHVjdEJyYW5kIHtcbiAgICBpZDogbnVtYmVyO1xuICAgIHByb2R1Y3Q6IFNrUHJvZHVjdDtcbiAgICBicmFuZDogU2tCcmFuZDtcbiAgICBpc0RlZmF1bHQ6IGJvb2xlYW47XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBJU2tQcm9kdWN0QnJhbmQgPSB7fSkge1xuICAgICAgICB0aGlzLmlkID0gZGF0YS5pZDtcbiAgICAgICAgdGhpcy5wcm9kdWN0ID0gZGF0YS5wcm9kdWN0ID8gbmV3IFNrUHJvZHVjdChkYXRhLnByb2R1Y3QpIDogbnVsbDtcbiAgICAgICAgdGhpcy5icmFuZCA9IGRhdGEuYnJhbmQ7XG4gICAgICAgIHRoaXMuaXNEZWZhdWx0ID0gZGF0YS5pc0RlZmF1bHQgfHwgZmFsc2U7XG4gICAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElTa1Byb2R1Y3RDYXRlZ29yeSB7XG4gICAgaWQ/OiBudW1iZXI7XG4gICAgcHJvZHVjdD86IElTa1Byb2R1Y3Q7XG4gICAgY2F0ZWdvcnk/OiBTa0NhdGVnb3J5O1xuICAgIGlzRGVmYXVsdD86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBjbGFzcyBTa1Byb2R1Y3RDYXRlZ29yeSB7XG4gICAgaWQ6IG51bWJlcjtcbiAgICBwcm9kdWN0OiBTa1Byb2R1Y3Q7XG4gICAgY2F0ZWdvcnk6IFNrQ2F0ZWdvcnk7XG4gICAgaXNEZWZhdWx0OiBib29sZWFuO1xuXG4gICAgY29uc3RydWN0b3IoZGF0YTogSVNrUHJvZHVjdENhdGVnb3J5ID0ge30pIHtcbiAgICAgICAgdGhpcy5pZCA9IGRhdGEuaWQ7XG4gICAgICAgIHRoaXMucHJvZHVjdCA9IGRhdGEucHJvZHVjdCA/IG5ldyBTa1Byb2R1Y3QoZGF0YS5wcm9kdWN0KSA6IG51bGw7XG4gICAgICAgIHRoaXMuY2F0ZWdvcnkgPSBkYXRhLmNhdGVnb3J5O1xuICAgICAgICB0aGlzLmlzRGVmYXVsdCA9IGRhdGEuaXNEZWZhdWx0IHx8IGZhbHNlO1xuICAgIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBJU2tQcm9kdWN0SW1hZ2Uge1xuICAgIGlkPzogbnVtYmVyO1xuICAgIHByb2R1Y3Q/OiBJU2tQcm9kdWN0O1xuICAgIGZpbGU/OiBJU2tGaWxlO1xuICAgIG9yZGVySW5kZXg/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBjbGFzcyBTa1Byb2R1Y3RJbWFnZSB7XG4gICAgaWQ6IG51bWJlcjtcbiAgICBwcm9kdWN0OiBTa1Byb2R1Y3Q7XG4gICAgZmlsZTogU2tGaWxlO1xuICAgIG9yZGVySW5kZXg6IG51bWJlcjtcblxuICAgIGNvbnN0cnVjdG9yKGRhdGE6IElTa1Byb2R1Y3RJbWFnZSA9IHt9KSB7XG4gICAgICAgIHRoaXMuaWQgPSBkYXRhLmlkO1xuICAgICAgICB0aGlzLnByb2R1Y3QgPSBkYXRhLnByb2R1Y3QgPyBuZXcgU2tQcm9kdWN0KGRhdGEucHJvZHVjdCkgOiBuZXcgU2tQcm9kdWN0KCk7XG4gICAgICAgIHRoaXMuZmlsZSA9IGRhdGEuZmlsZSA/IG5ldyBTa0ZpbGUoZGF0YS5maWxlKSA6IG5ldyBTa0ZpbGUoKTtcbiAgICAgICAgdGhpcy5vcmRlckluZGV4ID0gZGF0YS5vcmRlckluZGV4IHx8IC0xO1xuICAgIH1cbn1cblxuZXhwb3J0IGVudW0gU2tQcm9kdWN0T3B0aW9uVHlwZSB7XG4gICAgQmFzZSA9ICdCQVNFJywgICAgICAgICAgIC8vIOq4sOuzuOyYteyFmCAo7IOB7ZKI7J2YIOqwgOqyqSDrspTsnIQg7IKw7KCV7JeQIOyYge2WpeydhCDrr7jsuagpXG4gICAgQWRkaXRpb25hbCA9ICdBRERJVElPTkFMJywgICAgIC8vIOu2gOqwgOyYteyFmCAo7IOB7ZKI7J2YIOqwgOqyqSDrspTsnIQg7IKw7KCV7JeQIOyYge2WpeydhCDrr7jsuZjsp4Ag7JWK64qU64ukLilcbiAgICBNdWx0aXBsZSA9ICdNVUxUSVBMRScgICAgICAgIC8vIOy2lOqwgOyYteyFmCAo6rCA6rKpIOuylOychCDsgrDsoJXsl5Ag7JiB7Zal7J2EIOuvuOy5mOyngCDslYrsnLzrqbAsIOykkeuzteycvOuhnCDshKDtg50g6rCA64ql7ZWY64ukKVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElTa1Byb2R1Y3RPcHRpb24ge1xuICAgIGlkPzogbnVtYmVyO1xuICAgIHR5cGU/OiBTa1Byb2R1Y3RPcHRpb25UeXBlO1xuICAgIHRpdGxlPzogc3RyaW5nO1xuICAgIHZhbHVlcz86IElTa1Byb2R1Y3RPcHRpb25WYWx1ZVtdO1xuICAgIHByb21vdGlvbk9wdGlvbj86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVNrUHJvZHVjdE9wdGlvblZhbHVlIHtcbiAgICBpZD86IG51bWJlcjtcbiAgICB0aXRsZT86IHN0cmluZztcbiAgICB2YWx1ZT86IHN0cmluZztcbiAgICBhZGRlZFByaWNlPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElTa1Byb2R1Y3RPcHRpb25BbnN3ZXIge1xuICAgIGlkPzogbnVtYmVyO1xuICAgIHZhbHVlPzogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElTa1Byb2R1Y3RQYWNrYWdlIHtcbiAgICBpZD86IG51bWJlcjtcbiAgICBjaGlsZHJlbj86IElTa1Byb2R1Y3Q7XG4gICAgaGlkZGVuPzogYm9vbGVhbjtcbiAgICBzaGFyZT86IG51bWJlcjtcbiAgICBhbW91bnQ/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBjbGFzcyBTa1Byb2R1Y3RQYWNrYWdlIHtcbiAgICBpZDogbnVtYmVyO1xuICAgIGNoaWxkcmVuOiBTa1Byb2R1Y3Q7XG4gICAgaGlkZGVuOiBib29sZWFuO1xuICAgIHNoYXJlOiBudW1iZXI7XG4gICAgYW1vdW50OiBudW1iZXI7XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBJU2tQcm9kdWN0UGFja2FnZSA9IHt9KSB7XG4gICAgICAgIHRoaXMuaWQgPSBkYXRhLmlkO1xuICAgICAgICB0aGlzLmNoaWxkcmVuID0gZGF0YS5jaGlsZHJlbiA/IG5ldyBTa1Byb2R1Y3QoZGF0YS5jaGlsZHJlbikgOiBudWxsO1xuICAgICAgICB0aGlzLmhpZGRlbiA9IGRhdGEuaGlkZGVuIHx8IGZhbHNlO1xuICAgICAgICB0aGlzLnNoYXJlID0gZGF0YS5zaGFyZSB8fCAoZGF0YS5jaGlsZHJlbiA/IGRhdGEuY2hpbGRyZW4ucHJpY2UucmV0YWlsIDogMCk7XG4gICAgICAgIHRoaXMuYW1vdW50ID0gZGF0YS5hbW91bnQgfHwgMTtcbiAgICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2tQcm9kdWN0UHJpY2Uge1xuICAgIG1lc3NhZ2U/OiBzdHJpbmc7XG4gICAgcXVvdGFGcmVlPzogYm9vbGVhbjtcbiAgICBwYXltZW50TmF2ZXI/OiBib29sZWFuO1xuICAgIG9yaWdpbmFsPzogbnVtYmVyO1xuICAgIHJldGFpbD86IG51bWJlcjtcbiAgICBwb2ludEFtb3VudD86IG51bWJlcjtcbiAgICBwb2ludFR5cGU/OiBTa1ZhbHVlVHlwZTtcbiAgICByZWJhdGVBbW91bnQ/OiBudW1iZXI7XG4gICAgcmViYXRlVHlwZT86IFNrVmFsdWVUeXBlO1xuICAgIG1heFVzYWJsZVBvaW50PzogbnVtYmVyO1xuICAgIG1heEJ1eUNvdW50PzogbnVtYmVyO1xuICAgIHdob2xlc2FsZU5vcm1hbD86IG51bWJlcjtcbiAgICB3aG9sZXNhbGVEZWFsZXI/OiBudW1iZXI7XG4gICAgd2hvbGVzYWxlQ29uZGl0aW9uQT86IG51bWJlcjtcbiAgICB3aG9sZXNhbGVDb25kaXRpb25CPzogbnVtYmVyO1xuICAgIHdob2xlc2FsZUNvbmRpdGlvbkM/OiBudW1iZXI7XG4gICAgdXNlVmFyUHJpY2U/OiBib29sZWFuO1xuICAgIHVzZVZhclByaWNlWGM/OiBib29sZWFuO1xuICAgIHZhckN1cnJlbmN5Pzogc3RyaW5nO1xuICAgIHZhckZvcm11bGE/OiBzdHJpbmc7XG4gICAgdmFyTWFwPzogbnVtYmVyO1xuICAgIHZhckNvc3Q/OiBudW1iZXI7XG4gICAgdmFyQWRkQW1vdW50PzogbnVtYmVyO1xuICAgIHZhckFkZFBlcmNlbnQ/OiBudW1iZXI7XG4gICAgdmFyVXBkYXRlZERhdGU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2tQcm9kdWN0U3RvY2sge1xuICAgIHVzZVN0b2NrSGlzdG9yeT86IGJvb2xlYW47XG4gICAgdXNlQXV0b1N0YXR1c0NoYW5nZT86IGJvb2xlYW47XG4gICAgdXNlWGNoYW5nZUFwaT86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2tQcm9kdWN0RURlbGl2ZXJ5IHtcbiAgICBza3U/OiBzdHJpbmc7XG4gICAgZG93bmxvYWRMaW5rPzogc3RyaW5nO1xuICAgIHRlbXBsYXRlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElTa1Byb2R1Y3RTdG9ja0hpc3RvcnkgZXh0ZW5kcyBJQXVkaXQge1xuICAgIGlkPzogbnVtYmVyO1xuICAgIHVzZWQ/OiBib29sZWFuO1xuICAgIHNlcmlhbD86IHN0cmluZztcbiAgICBtZW1vPzogc3RyaW5nO1xufVxuXG5cbmV4cG9ydCBpbnRlcmZhY2UgSVNrUHJvZHVjdCBleHRlbmRzIElBdWRpdCB7XG4gICAgaWQ/OiBudW1iZXI7XG4gICAgdGl0bGU/OiBzdHJpbmc7XG4gICAgY29kZT86IHN0cmluZztcbiAgICB1cmw/OiBzdHJpbmc7XG4gICAgdHlwZT86IFNrUHJvZHVjdFR5cGU7XG4gICAgc3R1ZmZUeXBlPzogU2tQcm9kdWN0U3R1ZmZUeXBlO1xuICAgIHN0YXR1cz86IFNrUHJvZHVjdFN0YXR1cztcbiAgICBwcmVvcmRlclN0YXJ0RGF0ZT86IHN0cmluZztcbiAgICBicmFuZHM/OiBJU2tQcm9kdWN0QnJhbmRbXTtcbiAgICBjYXRlZ29yaWVzPzogSVNrUHJvZHVjdENhdGVnb3J5W107XG4gICAga2V5d29yZHM/OiBTa0tleXdvcmRbXTtcbiAgICBpbWFnZXM/OiBJU2tQcm9kdWN0SW1hZ2VbXTtcbiAgICBhY2Nlc3NQb2xpY3k/OiBTa1Byb2R1Y3RBY2Nlc3NQb2xpY3k7XG4gICAgYWNjZXNzUG9saWN5VmFsdWU/OiBzdHJpbmc7XG4gICAgcHJpY2U/OiBTa1Byb2R1Y3RQcmljZTtcbiAgICBzdG9ja0NvbmZpZz86IFNrUHJvZHVjdFN0b2NrO1xuICAgIGVkZWxpdmVyeT86IFNrUHJvZHVjdEVEZWxpdmVyeTtcbiAgICBmdXJuaXR1cmVBc3NlbWJseT86IGJvb2xlYW47XG4gICAgb3BlbmdyYXBoPzogU2tPcGVuZ3JhcGg7XG4gICAgbmF2ZXJlcD86IFNrTmF2ZXJFcEVtYmVkO1xuICAgIGNhdGFsb2c/OiBTa0NhdGFsb2dFbWJlZDtcbiAgICBvcHRpb25zPzogSVNrUHJvZHVjdE9wdGlvbltdO1xuICAgIGFydGljbGVEZXNjPzogSVNrQXJ0aWNsZTtcbiAgICBhcnRpY2xlU3BlYz86IElTa0FydGljbGU7XG4gICAgcGFja2FnZXM/OiBJU2tQcm9kdWN0UGFja2FnZVtdO1xuICAgIGFjdGl2YXRlZD86IGJvb2xlYW47XG4gICAgbGlzdE9yZGVyPzogbnVtYmVyO1xuICAgIHZpZXdDb3VudD86IG51bWJlcjtcbiAgICBzaW1wbGVUZXh0Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgU2tQcm9kdWN0IGV4dGVuZHMgQXVkaXQge1xuICAgIGlkOiBudW1iZXI7XG4gICAgdGl0bGU6IHN0cmluZztcbiAgICBjb2RlPzogc3RyaW5nO1xuICAgIHVybD86IHN0cmluZztcbiAgICB0eXBlOiBTa1Byb2R1Y3RUeXBlO1xuICAgIHN0dWZmVHlwZTogU2tQcm9kdWN0U3R1ZmZUeXBlO1xuICAgIHN0YXR1czogU2tQcm9kdWN0U3RhdHVzO1xuICAgIHByZW9yZGVyU3RhcnREYXRlOiBzdHJpbmc7XG4gICAgYnJhbmRzOiBTa1Byb2R1Y3RCcmFuZFtdO1xuICAgIGNhdGVnb3JpZXM6IFNrUHJvZHVjdENhdGVnb3J5W107XG4gICAga2V5d29yZHM6IFNrS2V5d29yZFtdO1xuICAgIGltYWdlczogU2tQcm9kdWN0SW1hZ2VbXTtcbiAgICBhY2Nlc3NQb2xpY3k6IFNrUHJvZHVjdEFjY2Vzc1BvbGljeTtcbiAgICBhY2Nlc3NQb2xpY3lWYWx1ZTogc3RyaW5nO1xuICAgIHByaWNlOiBTa1Byb2R1Y3RQcmljZTtcbiAgICBzdG9ja0NvbmZpZzogU2tQcm9kdWN0U3RvY2s7XG4gICAgZWRlbGl2ZXJ5OiBTa1Byb2R1Y3RFRGVsaXZlcnk7XG4gICAgZnVybml0dXJlQXNzZW1ibHk6IGJvb2xlYW47XG4gICAgb3BlbmdyYXBoOiBTa09wZW5ncmFwaDtcbiAgICBuYXZlcmVwOiBTa05hdmVyRXBFbWJlZDtcbiAgICBjYXRhbG9nOiBTa0NhdGFsb2dFbWJlZDtcbiAgICBvcHRpb25zOiBJU2tQcm9kdWN0T3B0aW9uW107XG4gICAgYXJ0aWNsZURlc2M6IElTa0FydGljbGU7XG4gICAgYXJ0aWNsZVNwZWM6IElTa0FydGljbGU7XG4gICAgcGFja2FnZXM6IFNrUHJvZHVjdFBhY2thZ2VbXTtcbiAgICBhY3RpdmF0ZWQ6IGJvb2xlYW47XG4gICAgbGlzdE9yZGVyOiBudW1iZXI7XG4gICAgdmlld0NvdW50OiBudW1iZXI7XG4gICAgc2ltcGxlVGV4dDogc3RyaW5nO1xuXG4gICAgY29uc3RydWN0b3IoZGF0YTogSVNrUHJvZHVjdCA9IHt9KSB7XG4gICAgICAgIHN1cGVyKGRhdGEpO1xuXG4gICAgICAgIHRoaXMuaWQgPSBkYXRhLmlkO1xuICAgICAgICB0aGlzLnRpdGxlID0gZGF0YS50aXRsZTtcbiAgICAgICAgdGhpcy5jb2RlID0gZGF0YS5jb2RlO1xuICAgICAgICB0aGlzLnVybCA9IGRhdGEudXJsO1xuICAgICAgICB0aGlzLnR5cGUgPSBkYXRhLnR5cGUgfHwgU2tQcm9kdWN0VHlwZS5TaW5nbGU7XG4gICAgICAgIHRoaXMuc3R1ZmZUeXBlID0gZGF0YS5zdHVmZlR5cGU7XG4gICAgICAgIHRoaXMuc3RhdHVzID0gZGF0YS5zdGF0dXMgfHwgU2tQcm9kdWN0U3RhdHVzLk9uc2FsZTtcbiAgICAgICAgdGhpcy5wcmVvcmRlclN0YXJ0RGF0ZSA9IGRhdGEucHJlb3JkZXJTdGFydERhdGU7XG4gICAgICAgIHRoaXMuYnJhbmRzID0gKGRhdGEuYnJhbmRzIHx8IFtdKS5tYXAoaXRlbSA9PiBuZXcgU2tQcm9kdWN0QnJhbmQoaXRlbSkpO1xuICAgICAgICB0aGlzLmNhdGVnb3JpZXMgPSAoZGF0YS5jYXRlZ29yaWVzIHx8IFtdKS5tYXAoaXRlbSA9PiBuZXcgU2tQcm9kdWN0Q2F0ZWdvcnkoaXRlbSkpO1xuICAgICAgICB0aGlzLmtleXdvcmRzID0gKGRhdGEua2V5d29yZHMgfHwgW10pO1xuICAgICAgICB0aGlzLmltYWdlcyA9IChkYXRhLmltYWdlcyB8fCBbXSkubWFwKGl0ZW0gPT4gbmV3IFNrUHJvZHVjdEltYWdlKGl0ZW0pKTtcbiAgICAgICAgdGhpcy5hY2Nlc3NQb2xpY3kgPSBkYXRhLmFjY2Vzc1BvbGljeSB8fCBTa1Byb2R1Y3RBY2Nlc3NQb2xpY3kuUHVibGljO1xuICAgICAgICB0aGlzLmFjY2Vzc1BvbGljeVZhbHVlID0gZGF0YS5hY2Nlc3NQb2xpY3lWYWx1ZTtcbiAgICAgICAgdGhpcy5wcmljZSA9IE9iamVjdC5hc3NpZ24oe30sIHtcbiAgICAgICAgICAgIG1lc3NhZ2U6ICcnLFxuICAgICAgICAgICAgcXVvdGFGcmVlOiBmYWxzZSxcbiAgICAgICAgICAgIHBheW1lbnROYXZlcjogZmFsc2UsXG4gICAgICAgICAgICBvcmlnaW5hbDogMCxcbiAgICAgICAgICAgIHJldGFpbDogMCxcbiAgICAgICAgICAgIHBvaW50QW1vdW50OiAwLFxuICAgICAgICAgICAgcG9pbnRUeXBlOiAnQU1PVU5UJyxcbiAgICAgICAgICAgIG1heFVzYWJsZVBvaW50OiA1MCxcbiAgICAgICAgICAgIHdob2xlc2FsZU5vcm1hbDogMCxcbiAgICAgICAgICAgIHdob2xlc2FsZURlYWxlcjogMCxcbiAgICAgICAgICAgIHdob2xlc2FsZUNvbmRpdGlvbkE6IDAsXG4gICAgICAgICAgICB3aG9sZXNhbGVDb25kaXRpb25COiAwLFxuICAgICAgICAgICAgd2hvbGVzYWxlQ29uZGl0aW9uQzogMCxcbiAgICAgICAgICAgIHVzZVZhclByaWNlOiBmYWxzZSxcbiAgICAgICAgICAgIHVzZVZhclByaWNlWGM6IGZhbHNlLFxuICAgICAgICAgICAgdmFyQ3VycmVuY3k6ICdVU0QnLFxuICAgICAgICAgICAgdmFyRm9ybXVsYTogJycsXG4gICAgICAgICAgICB2YXJNYXA6IDAsXG4gICAgICAgICAgICB2YXJDb3N0OiAwLFxuICAgICAgICAgICAgdmFyQWRkQW1vdW50OiAwLFxuICAgICAgICAgICAgdmFyQWRkUGVyY2VudDogMCxcbiAgICAgICAgICAgIHZhclVwZGF0ZWREYXRlOiBudWxsXG4gICAgICAgIH0sIGRhdGEucHJpY2UpO1xuICAgICAgICB0aGlzLnN0b2NrQ29uZmlnID0gT2JqZWN0LmFzc2lnbih7fSwge3VzZVN0b2NrSGlzdG9yeTogZmFsc2UsIHVzZUF1dG9TdGF0dXNDaGFuZ2U6IGZhbHNlLCB1c2VYY2hhbmdlQXBpOiBmYWxzZX0sIGRhdGEuc3RvY2tDb25maWcpO1xuICAgICAgICB0aGlzLm9wZW5ncmFwaCA9IE9iamVjdC5hc3NpZ24oe30sIHtvZ1RpdGxlOiAnJywgb2dBdXRvRmlsbDogdHJ1ZSwgb2dEZXNjOiAnJywgb2dJbWFnZTogbnVsbH0sIGRhdGEub3BlbmdyYXBoKTtcbiAgICAgICAgdGhpcy5uYXZlcmVwID0gT2JqZWN0LmFzc2lnbih7fSwge25hdmVyZXBTaG93OiB0cnVlLCBuYXZlcmVwQ3VzdG9tOiBmYWxzZSwgbmF2ZXJlcFRpdGxlOiAnJywgbmF2ZXJlcENhdGVnb3J5OiAnJ30sIGRhdGEubmF2ZXJlcCk7XG4gICAgICAgIHRoaXMuY2F0YWxvZyA9IE9iamVjdC5hc3NpZ24oe30sIHtjYXRhbG9nU2hvdzogdHJ1ZSwgY2F0YWxvZ0N1c3RvbTogZmFsc2UsIGNhdGFsb2dUaXRsZTogJycsIGNhdGFsb2dDYXRlZ29yeTogbnVsbH0sIGRhdGEuY2F0YWxvZyApO1xuICAgICAgICB0aGlzLmVkZWxpdmVyeSA9IE9iamVjdC5hc3NpZ24oe30sIHtza3U6ICcnLCBkb3dubG9hZExpbms6ICcnLCB0ZW1wbGF0ZTogJyd9LCBkYXRhLmVkZWxpdmVyeSk7XG4gICAgICAgIHRoaXMuZnVybml0dXJlQXNzZW1ibHkgPSBkYXRhLmZ1cm5pdHVyZUFzc2VtYmx5IHx8IGZhbHNlO1xuICAgICAgICB0aGlzLm9wdGlvbnMgPSBkYXRhLm9wdGlvbnMgfHwgW107XG4gICAgICAgIHRoaXMuYXJ0aWNsZURlc2MgPSBkYXRhLmFydGljbGVEZXNjID8gbmV3IFNrQXJ0aWNsZShkYXRhLmFydGljbGVEZXNjKSA6IG5ldyBTa0FydGljbGUoKTtcbiAgICAgICAgdGhpcy5hcnRpY2xlU3BlYyA9IGRhdGEuYXJ0aWNsZVNwZWMgPyBuZXcgU2tBcnRpY2xlKGRhdGEuYXJ0aWNsZVNwZWMpIDogbmV3IFNrQXJ0aWNsZSgpO1xuICAgICAgICB0aGlzLnBhY2thZ2VzID0gKGRhdGEucGFja2FnZXMgfHwgW10pLm1hcChpdGVtID0+IG5ldyBTa1Byb2R1Y3RQYWNrYWdlKGl0ZW0pKTtcbiAgICAgICAgdGhpcy5hY3RpdmF0ZWQgPSBkYXRhLmFjdGl2YXRlZCB8fCBmYWxzZTtcbiAgICAgICAgdGhpcy5saXN0T3JkZXIgPSBkYXRhLmxpc3RPcmRlciB8fCAwO1xuICAgICAgICB0aGlzLnZpZXdDb3VudCA9IGRhdGEudmlld0NvdW50IHx8IDA7XG4gICAgICAgIHRoaXMuc2ltcGxlVGV4dCA9IGRhdGEuc2ltcGxlVGV4dCB8fCAnJztcbiAgICB9XG5cbiAgICBpc0VtcHR5KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRoaXMuaWQ7XG4gICAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNrUHJvZHVjdExpc3RJdGVtIHtcbiAgICBpZD86IG51bWJlcjtcbiAgICB0aXRsZT86IHN0cmluZztcbiAgICBjb2RlPzogc3RyaW5nO1xuICAgIHVybD86IHN0cmluZztcbiAgICB0eXBlPzogU2tQcm9kdWN0VHlwZTtcbiAgICBzdHVmZlR5cGU/OiBTa1Byb2R1Y3RTdHVmZlR5cGU7XG4gICAgc3RhdHVzPzogU2tQcm9kdWN0U3RhdHVzO1xuICAgIGhhc1Byb21vdGlvbj86IGJvb2xlYW47XG4gICAgaGFzR2lmdD86IGJvb2xlYW47XG4gICAgcmVhbHRpbWVTb2Z0d2FyZT86IGJvb2xlYW47XG4gICAgZnVybml0dXJlQXNzZW1ibHk/OiBib29sZWFuO1xuICAgIGJyYW5kTmFtZT86IHN0cmluZztcbiAgICBicmFuZElkPzogbnVtYmVyO1xuICAgIGJyYW5kcz86IElTa1Byb2R1Y3RCcmFuZEl0ZW1bXTtcblxuICAgIHdpc2hsaXN0Q291bnQ/OiBudW1iZXI7XG4gICAgd2lzaGxpc3RNZT86IGJvb2xlYW47XG4gICAgaW1hZ2U/OiBJU2tGaWxlO1xuXG4gICAgcXVvdGFGcmVlPzogYm9vbGVhbjtcbiAgICBwcmljZU1lc3NhZ2U/OiBzdHJpbmc7XG4gICAgcHJpY2VPcmlnaW5hbD86IG51bWJlcjtcbiAgICBwcmljZURpc2NvdW50ZWQ/OiBudW1iZXI7XG4gICAgcHJpY2VNaW4/OiBudW1iZXI7XG4gICAgcHJpY2VNYXg/OiBudW1iZXI7XG4gICAgbWF4QnV5Q291bnQ/OiBudW1iZXI7XG5cbiAgICBwYWNrYWdlSXRlbXM/OiBJU2tQcm9kdWN0UGFja2FnZUxpc3RJdGVtW107XG5cbiAgICBhY2Nlc3NQb2xpY3k/OiBTa1Byb2R1Y3RBY2Nlc3NQb2xpY3k7XG4gICAgYWNjZXNzUG9saWN5VmFsdWU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVNrUHJvZHVjdERldGFpbCBleHRlbmRzIFNrUHJvZHVjdExpc3RJdGVtIHtcbiAgICBwb2ludD86IG51bWJlcjtcbiAgICBpbmNsdWRlZEluUGFja2FnZT86IGJvb2xlYW47XG4gICAgaW1hZ2VzPzogSVNrRmlsZVtdO1xuICAgIHNpbXBsZVRleHQ/OiBzdHJpbmc7XG4gICAgYXJ0aWNsZURlc2M/OiBJU2tBcnRpY2xlO1xuICAgIGFydGljbGVTcGVjPzogSVNrQXJ0aWNsZTtcbiAgICBvcGVuZ3JhcGg/OiBTa09wZW5ncmFwaDtcbiAgICBwYXltZW50TmF2ZXI/OiBib29sZWFuO1xuICAgIHBhY2thZ2VJdGVtcz86IElTa1Byb2R1Y3RQYWNrYWdlTGlzdEl0ZW1bXTtcbiAgICBsaW5rZWRTZXJpZXM/OiBJU2tQcm9kdWN0RGV0YWlsU2VyaWVzW107XG4gICAgbGlua2VkRG9jdW1lbnRzPzogSVNrRG9jdW1lbnRQdWJsaWNMaXN0W107XG4gICAgbGlua2VkUHJvbW90aW9ucz86IElTa1Byb21vdGlvblB1YmxpY0xpc3RbXTtcbiAgICBsaW5rZWRQcm9tb3Rpb25HaWZ0R3JvdXBzPzogSVNrUHJvbW90aW9uR2lmdEdyb3VwSXRlbVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElTa1Byb2R1Y3RQYWNrYWdlTGlzdEl0ZW0ge1xuICAgIGlkPzogbnVtYmVyO1xuICAgIHByb2R1Y3Q/OiBTa1Byb2R1Y3RMaXN0SXRlbTtcbiAgICBzaG93U3BlYz86IGJvb2xlYW47XG4gICAgc2hvd0Rlc2M/OiBib29sZWFuO1xuICAgIG9yZGVySW5kZXg/OiBudW1iZXI7XG4gICAgYW1vdW50PzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNrUHJvZHVjdFdpc2hsaXN0IHtcbiAgICB3aXNobGlzdENvdW50PzogbnVtYmVyO1xuICAgIHdpc2hsaXN0TWU/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElTa1Byb2R1Y3REZXRhaWxTZXJpZXNJdGVtIHtcbiAgICBpZD86IG51bWJlcjtcbiAgICB0aXRsZT86IHN0cmluZztcbiAgICB1cmw/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVNrUHJvZHVjdERldGFpbFNlcmllcyB7XG4gICAgaWQ/OiBudW1iZXI7XG4gICAgdGl0bGU/OiBzdHJpbmc7XG4gICAgaXRlbXM/OiBJU2tQcm9kdWN0RGV0YWlsU2VyaWVzSXRlbVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElTa1Byb2R1Y3RGaWx0ZXJEYXRhIHtcbiAgICBsb3dlc3RQcmljZT86IG51bWJlcjtcbiAgICBoaWdoZXN0UHJpY2U/OiBudW1iZXI7XG4gICAgbWluUHJpY2U/OiBudW1iZXI7XG4gICAgbWF4UHJpY2U/OiBudW1iZXI7XG4gICAgYXZhaWxhYmxlQnJhbmRzPzogU2tCcmFuZFtdO1xuICAgIGF2YWlsYWJsZUNhdGVnb3JpZXM/OiBTa0NhdGVnb3J5W107XG4gICAgYXZhaWxhYmxlU3ViQ2F0ZWdvcmllcz86IFNrQ2F0ZWdvcnlbXTtcbiAgICBzZWxlY3RlZFN1YkNhdGVnb3J5SXRlbXM/OiBTa1N1YkNhdGVnb3J5SXRlbVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElTa1Byb2R1Y3RCcmFuZEl0ZW0ge1xuICAgIGlkOiBudW1iZXI7XG4gICAgbmFtZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElTa1Byb2R1Y3RQdWJsaXNoIHtcbiAgICBpZD86IG51bWJlcjtcbiAgICBwcm9kdWN0SWQ/OiBudW1iZXI7XG4gICAgc3RhdHVzPzogU2tQcm9kdWN0U3RhdHVzO1xuICAgIHByZW9yZGVyU3RhcnREYXRlPzogc3RyaW5nO1xuICAgIGFjY2Vzc1BvbGljeT86IFNrUHJvZHVjdEFjY2Vzc1BvbGljeTtcbiAgICBhY3Rpb25EYXRlPzogc3RyaW5nO1xuICAgIGFjdGl2YXRlZD86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRTa1Byb2R1Y3RTdGF0dXNUZXh0KHN0YXR1czogU2tQcm9kdWN0U3RhdHVzKSB7XG4gICAgc3dpdGNoIChzdGF0dXMpIHtcbiAgICAgICAgY2FzZSBTa1Byb2R1Y3RTdGF0dXMuRGVhY3RpdmF0ZTpcbiAgICAgICAgICAgIHJldHVybiAn7YyQ66ekIOykkeyngCc7XG4gICAgICAgIGNhc2UgU2tQcm9kdWN0U3RhdHVzLk9uc2FsZTpcbiAgICAgICAgICAgIHJldHVybiAn7YyQ66ek7KSRJztcbiAgICAgICAgY2FzZSBTa1Byb2R1Y3RTdGF0dXMuUHJlb3JkZXI6XG4gICAgICAgICAgICByZXR1cm4gJ+yYiOyVve2MkOunpCc7XG4gICAgICAgIGNhc2UgU2tQcm9kdWN0U3RhdHVzLlNvbGRvdXQ6XG4gICAgICAgICAgICByZXR1cm4gJ+2SiOygiCc7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXR1cm4gc3RhdHVzO1xuICAgIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFNrUHJvZHVjdEFjY2Vzc1BvbGljeVRleHQoYWNjZXNzUG9saWN5OiBTa1Byb2R1Y3RBY2Nlc3NQb2xpY3kpIHtcbiAgICBzd2l0Y2ggKGFjY2Vzc1BvbGljeSkge1xuICAgICAgICBjYXNlIFNrUHJvZHVjdEFjY2Vzc1BvbGljeS5IaWRkZW46XG4gICAgICAgICAgICByZXR1cm4gJ+yWtOuTnOuvvCDsmbgg7KCR6re867aI6rCAJztcbiAgICAgICAgY2FzZSBTa1Byb2R1Y3RBY2Nlc3NQb2xpY3kuUHJpdmF0ZUxpbms6XG4gICAgICAgICAgICByZXR1cm4gJ+unge2BrOuhnOunjCDsoJHqt7wg6rCA64qlJztcbiAgICAgICAgY2FzZSBTa1Byb2R1Y3RBY2Nlc3NQb2xpY3kuUHJpdmF0ZVVzZXI6XG4gICAgICAgICAgICByZXR1cm4gJ+2VtOuLuSDsnKDsoIDrp4wg7KCR6re8IOqwgOuKpSc7XG4gICAgICAgIGNhc2UgU2tQcm9kdWN0QWNjZXNzUG9saWN5LlB1YmxpYzpcbiAgICAgICAgICAgIHJldHVybiAn6rO16rCcJztcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIHJldHVybiBhY2Nlc3NQb2xpY3k7XG4gICAgfVxufVxuXG5cbiJdfQ==
|
|
156
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NrLWZyb250LWxpYi9tb2RlbC9zcmMvbGliL3Byb2R1Y3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLFNBQVMsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNsRCxPQUFPLEVBQUUsS0FBSyxFQUFVLE1BQU0sU0FBUyxDQUFDO0FBWXhDLE9BQU8sRUFBVyxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFlekMsTUFBTSxDQUFOLElBQVksYUFHWDtBQUhELFdBQVksYUFBYTtJQUNyQixvQ0FBbUIsQ0FBQTtJQUNuQixrQ0FBaUIsQ0FBQTtBQUNyQixDQUFDLEVBSFcsYUFBYSxLQUFiLGFBQWEsUUFHeEI7QUFFRCxNQUFNLENBQU4sSUFBWSxrQkFJWDtBQUpELFdBQVksa0JBQWtCO0lBQzFCLDJDQUFxQixDQUFBO0lBQ3JCLDJDQUFxQixDQUFBO0lBQ3JCLDZDQUF1QixDQUFBO0FBQzNCLENBQUMsRUFKVyxrQkFBa0IsS0FBbEIsa0JBQWtCLFFBSTdCO0FBRUQsTUFBTSxDQUFOLElBQVksZUFLWDtBQUxELFdBQVksZUFBZTtJQUN2Qix3Q0FBcUIsQ0FBQTtJQUNyQixvQ0FBaUIsQ0FBQTtJQUNqQixzQ0FBbUIsQ0FBQTtJQUNuQiw0Q0FBeUIsQ0FBQTtBQUM3QixDQUFDLEVBTFcsZUFBZSxLQUFmLGVBQWUsUUFLMUI7QUFFRCxNQUFNLENBQU4sSUFBWSxxQkFLWDtBQUxELFdBQVkscUJBQXFCO0lBQzdCLDBDQUFpQixDQUFBO0lBQ2pCLDBDQUFpQixDQUFBO0lBQ2pCLHFEQUE0QixDQUFBO0lBQzVCLHFEQUE0QixDQUFBO0FBQ2hDLENBQUMsRUFMVyxxQkFBcUIsS0FBckIscUJBQXFCLFFBS2hDO0FBU0QsTUFBTSxPQUFPLGNBQWM7SUFNdkIsWUFBWSxPQUF3QixFQUFFO1FBQ2xDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFB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QjtZQUNJLE9BQU8sWUFBWSxDQUFDO0tBQzNCO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElTa0FydGljbGUsIFNrQXJ0aWNsZSB9IGZyb20gJy4vYXJ0aWNsZSc7XG5pbXBvcnQgeyBBdWRpdCwgSUF1ZGl0IH0gZnJvbSAnLi9hdWRpdCc7XG5pbXBvcnQgeyBJU2tEb2N1bWVudFB1YmxpY0xpc3QgfSBmcm9tICcuL2RvY3VtZW50JztcbmltcG9ydCB7XG4gICAgU2tCcmFuZCxcbiAgICBTa0NhdGFsb2dFbWJlZCxcbiAgICBTa0NhdGVnb3J5LFxuICAgIFNrS2V5d29yZCxcbiAgICBTa05hdmVyRXBFbWJlZCxcbiAgICBTa09wZW5ncmFwaCxcbiAgICBTa1N1YkNhdGVnb3J5SXRlbSxcbiAgICBTa1ZhbHVlVHlwZVxufSBmcm9tICcuL2V0Yyc7XG5pbXBvcnQgeyBJU2tGaWxlLCBTa0ZpbGUgfSBmcm9tICcuL2ZpbGUnO1xuaW1wb3J0IHsgU2tQYXltZW50U3RhdHVzIH0gZnJvbSAnLi9wYXltZW50JztcbmltcG9ydCB7IElTa1Byb21vdGlvbkdpZnRHcm91cEl0ZW0sIElTa1Byb21vdGlvblB1YmxpY0xpc3QgfSBmcm9tICcuL3Byb21vdGlvbic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2tQcm9kdWN0Q291bnQge1xuICAgIHRvdGFsPzogbnVtYmVyO1xuICAgIHRyYXNoPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNrUHJvZHVjdFN0b2NrQ291bnQge1xuICAgIHRvdGFsSW4/OiBudW1iZXI7XG4gICAgdG90YWxPdXQ/OiBudW1iZXI7XG4gICAgY3VycmVudD86IG51bWJlcjtcbn1cblxuZXhwb3J0IGVudW0gU2tQcm9kdWN0VHlwZSB7XG4gICAgUGFja2FnZSA9ICdQQUNLQUdFJyxcbiAgICBTaW5nbGUgPSAnU0lOR0xFJ1xufVxuXG5leHBvcnQgZW51bSBTa1Byb2R1Y3RTdHVmZlR5cGUge1xuICAgIEhhcmR3YXJlID0gJ0hBUkRXQVJFJyxcbiAgICBTb2Z0d2FyZSA9ICdTT0ZUV0FSRScsXG4gICAgRnVybml0dXJlID0gJ0ZVUk5JVFVSRSdcbn1cblxuZXhwb3J0IGVudW0gU2tQcm9kdWN0U3RhdHVzIHtcbiAgICBQcmVvcmRlciA9ICdQUkVPUkRFUicsXG4gICAgT25zYWxlID0gJ09OU0FMRScsXG4gICAgU29sZG91dCA9ICdTT0xET1VUJyxcbiAgICBEZWFjdGl2YXRlID0gJ0RFQUNUSVZBVEUnXG59XG5cbmV4cG9ydCBlbnVtIFNrUHJvZHVjdEFjY2Vzc1BvbGljeSB7XG4gICAgUHVibGljID0gJ1BVQkxJQycsXG4gICAgSGlkZGVuID0gJ0hJRERFTicsXG4gICAgUHJpdmF0ZUxpbmsgPSAnUFJJVkFURV9MSU5LJyxcbiAgICBQcml2YXRlVXNlciA9ICdQUklWQVRFX1VTRVInXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVNrUHJvZHVjdEJyYW5kIHtcbiAgICBpZD86IG51bWJlcjtcbiAgICBwcm9kdWN0PzogSVNrUHJvZHVjdDtcbiAgICBicmFuZD86IFNrQnJhbmQ7XG4gICAgaXNEZWZhdWx0PzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGNsYXNzIFNrUHJvZHVjdEJyYW5kIHtcbiAgICBpZDogbnVtYmVyO1xuICAgIHByb2R1Y3Q6IFNrUHJvZHVjdDtcbiAgICBicmFuZDogU2tCcmFuZDtcbiAgICBpc0RlZmF1bHQ6IGJvb2xlYW47XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBJU2tQcm9kdWN0QnJhbmQgPSB7fSkge1xuICAgICAgICB0aGlzLmlkID0gZGF0YS5pZDtcbiAgICAgICAgdGhpcy5wcm9kdWN0ID0gZGF0YS5wcm9kdWN0ID8gbmV3IFNrUHJvZHVjdChkYXRhLnByb2R1Y3QpIDogbnVsbDtcbiAgICAgICAgdGhpcy5icmFuZCA9IGRhdGEuYnJhbmQ7XG4gICAgICAgIHRoaXMuaXNEZWZhdWx0ID0gZGF0YS5pc0RlZmF1bHQgfHwgZmFsc2U7XG4gICAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElTa1Byb2R1Y3RDYXRlZ29yeSB7XG4gICAgaWQ/OiBudW1iZXI7XG4gICAgcHJvZHVjdD86IElTa1Byb2R1Y3Q7XG4gICAgY2F0ZWdvcnk/OiBTa0NhdGVnb3J5O1xuICAgIGlzRGVmYXVsdD86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBjbGFzcyBTa1Byb2R1Y3RDYXRlZ29yeSB7XG4gICAgaWQ6IG51bWJlcjtcbiAgICBwcm9kdWN0OiBTa1Byb2R1Y3Q7XG4gICAgY2F0ZWdvcnk6IFNrQ2F0ZWdvcnk7XG4gICAgaXNEZWZhdWx0OiBib29sZWFuO1xuXG4gICAgY29uc3RydWN0b3IoZGF0YTogSVNrUHJvZHVjdENhdGVnb3J5ID0ge30pIHtcbiAgICAgICAgdGhpcy5pZCA9IGRhdGEuaWQ7XG4gICAgICAgIHRoaXMucHJvZHVjdCA9IGRhdGEucHJvZHVjdCA/IG5ldyBTa1Byb2R1Y3QoZGF0YS5wcm9kdWN0KSA6IG51bGw7XG4gICAgICAgIHRoaXMuY2F0ZWdvcnkgPSBkYXRhLmNhdGVnb3J5O1xuICAgICAgICB0aGlzLmlzRGVmYXVsdCA9IGRhdGEuaXNEZWZhdWx0IHx8IGZhbHNlO1xuICAgIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBJU2tQcm9kdWN0SW1hZ2Uge1xuICAgIGlkPzogbnVtYmVyO1xuICAgIHByb2R1Y3Q/OiBJU2tQcm9kdWN0O1xuICAgIGZpbGU/OiBJU2tGaWxlO1xuICAgIG9yZGVySW5kZXg/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBjbGFzcyBTa1Byb2R1Y3RJbWFnZSB7XG4gICAgaWQ6IG51bWJlcjtcbiAgICBwcm9kdWN0OiBTa1Byb2R1Y3Q7XG4gICAgZmlsZTogU2tGaWxlO1xuICAgIG9yZGVySW5kZXg6IG51bWJlcjtcblxuICAgIGNvbnN0cnVjdG9yKGRhdGE6IElTa1Byb2R1Y3RJbWFnZSA9IHt9KSB7XG4gICAgICAgIHRoaXMuaWQgPSBkYXRhLmlkO1xuICAgICAgICB0aGlzLnByb2R1Y3QgPSBkYXRhLnByb2R1Y3QgPyBuZXcgU2tQcm9kdWN0KGRhdGEucHJvZHVjdCkgOiBuZXcgU2tQcm9kdWN0KCk7XG4gICAgICAgIHRoaXMuZmlsZSA9IGRhdGEuZmlsZSA/IG5ldyBTa0ZpbGUoZGF0YS5maWxlKSA6IG5ldyBTa0ZpbGUoKTtcbiAgICAgICAgdGhpcy5vcmRlckluZGV4ID0gZGF0YS5vcmRlckluZGV4IHx8IC0xO1xuICAgIH1cbn1cblxuZXhwb3J0IGVudW0gU2tQcm9kdWN0T3B0aW9uVHlwZSB7XG4gICAgQmFzZSA9ICdCQVNFJywgICAgICAgICAgIC8vIOq4sOuzuOyYteyFmCAo7IOB7ZKI7J2YIOqwgOqyqSDrspTsnIQg7IKw7KCV7JeQIOyYge2WpeydhCDrr7jsuagpXG4gICAgQWRkaXRpb25hbCA9ICdBRERJVElPTkFMJywgICAgIC8vIOu2gOqwgOyYteyFmCAo7IOB7ZKI7J2YIOqwgOqyqSDrspTsnIQg7IKw7KCV7JeQIOyYge2WpeydhCDrr7jsuZjsp4Ag7JWK64qU64ukLilcbiAgICBNdWx0aXBsZSA9ICdNVUxUSVBMRScgICAgICAgIC8vIOy2lOqwgOyYteyFmCAo6rCA6rKpIOuylOychCDsgrDsoJXsl5Ag7JiB7Zal7J2EIOuvuOy5mOyngCDslYrsnLzrqbAsIOykkeuzteycvOuhnCDshKDtg50g6rCA64ql7ZWY64ukKVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElTa1Byb2R1Y3RPcHRpb24ge1xuICAgIGlkPzogbnVtYmVyO1xuICAgIHR5cGU/OiBTa1Byb2R1Y3RPcHRpb25UeXBlO1xuICAgIHRpdGxlPzogc3RyaW5nO1xuICAgIHZhbHVlcz86IElTa1Byb2R1Y3RPcHRpb25WYWx1ZVtdO1xuICAgIHByb21vdGlvbk9wdGlvbj86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVNrUHJvZHVjdE9wdGlvblZhbHVlIHtcbiAgICBpZD86IG51bWJlcjtcbiAgICB0aXRsZT86IHN0cmluZztcbiAgICB2YWx1ZT86IHN0cmluZztcbiAgICBhZGRlZFByaWNlPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElTa1Byb2R1Y3RPcHRpb25BbnN3ZXIge1xuICAgIGlkPzogbnVtYmVyO1xuICAgIHZhbHVlPzogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElTa1Byb2R1Y3RQYWNrYWdlIHtcbiAgICBpZD86IG51bWJlcjtcbiAgICBjaGlsZHJlbj86IElTa1Byb2R1Y3Q7XG4gICAgaGlkZGVuPzogYm9vbGVhbjtcbiAgICBzaGFyZT86IG51bWJlcjtcbiAgICBhbW91bnQ/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBjbGFzcyBTa1Byb2R1Y3RQYWNrYWdlIHtcbiAgICBpZDogbnVtYmVyO1xuICAgIGNoaWxkcmVuOiBTa1Byb2R1Y3Q7XG4gICAgaGlkZGVuOiBib29sZWFuO1xuICAgIHNoYXJlOiBudW1iZXI7XG4gICAgYW1vdW50OiBudW1iZXI7XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBJU2tQcm9kdWN0UGFja2FnZSA9IHt9KSB7XG4gICAgICAgIHRoaXMuaWQgPSBkYXRhLmlkO1xuICAgICAgICB0aGlzLmNoaWxkcmVuID0gZGF0YS5jaGlsZHJlbiA/IG5ldyBTa1Byb2R1Y3QoZGF0YS5jaGlsZHJlbikgOiBudWxsO1xuICAgICAgICB0aGlzLmhpZGRlbiA9IGRhdGEuaGlkZGVuIHx8IGZhbHNlO1xuICAgICAgICB0aGlzLnNoYXJlID0gZGF0YS5zaGFyZSB8fCAoZGF0YS5jaGlsZHJlbiA/IGRhdGEuY2hpbGRyZW4ucHJpY2UucmV0YWlsIDogMCk7XG4gICAgICAgIHRoaXMuYW1vdW50ID0gZGF0YS5hbW91bnQgfHwgMTtcbiAgICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2tQcm9kdWN0UHJpY2Uge1xuICAgIG1lc3NhZ2U/OiBzdHJpbmc7XG4gICAgcXVvdGFGcmVlPzogYm9vbGVhbjtcbiAgICBwYXltZW50TmF2ZXI/OiBib29sZWFuO1xuICAgIG9yaWdpbmFsPzogbnVtYmVyO1xuICAgIHJldGFpbD86IG51bWJlcjtcbiAgICBwb2ludEFtb3VudD86IG51bWJlcjtcbiAgICBwb2ludFR5cGU/OiBTa1ZhbHVlVHlwZTtcbiAgICByZWJhdGVBbW91bnQ/OiBudW1iZXI7XG4gICAgcmViYXRlVHlwZT86IFNrVmFsdWVUeXBlO1xuICAgIG1heFVzYWJsZVBvaW50PzogbnVtYmVyO1xuICAgIG1heEJ1eUNvdW50PzogbnVtYmVyO1xuICAgIHdob2xlc2FsZU5vcm1hbD86IG51bWJlcjtcbiAgICB3aG9sZXNhbGVEZWFsZXI/OiBudW1iZXI7XG4gICAgd2hvbGVzYWxlQ29uZGl0aW9uQT86IG51bWJlcjtcbiAgICB3aG9sZXNhbGVDb25kaXRpb25CPzogbnVtYmVyO1xuICAgIHdob2xlc2FsZUNvbmRpdGlvbkM/OiBudW1iZXI7XG4gICAgdXNlVmFyUHJpY2U/OiBib29sZWFuO1xuICAgIHVzZVZhclByaWNlWGM/OiBib29sZWFuO1xuICAgIHZhckN1cnJlbmN5Pzogc3RyaW5nO1xuICAgIHZhckZvcm11bGE/OiBzdHJpbmc7XG4gICAgdmFyTWFwPzogbnVtYmVyO1xuICAgIHZhckNvc3Q/OiBudW1iZXI7XG4gICAgdmFyQWRkQW1vdW50PzogbnVtYmVyO1xuICAgIHZhckFkZFBlcmNlbnQ/OiBudW1iZXI7XG4gICAgdmFyVXBkYXRlZERhdGU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2tQcm9kdWN0U3RvY2sge1xuICAgIHVzZVN0b2NrSGlzdG9yeT86IGJvb2xlYW47XG4gICAgdXNlQXV0b1N0YXR1c0NoYW5nZT86IGJvb2xlYW47XG4gICAgdXNlWGNoYW5nZUFwaT86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2tQcm9kdWN0RURlbGl2ZXJ5IHtcbiAgICBza3U/OiBzdHJpbmc7XG4gICAgZG93bmxvYWRMaW5rPzogc3RyaW5nO1xuICAgIHRlbXBsYXRlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElTa1Byb2R1Y3RTdG9ja0hpc3RvcnkgZXh0ZW5kcyBJQXVkaXQge1xuICAgIGlkPzogbnVtYmVyO1xuICAgIHVzZWQ/OiBib29sZWFuO1xuICAgIHNlcmlhbD86IHN0cmluZztcbiAgICBtZW1vPzogc3RyaW5nO1xufVxuXG5cbmV4cG9ydCBpbnRlcmZhY2UgSVNrUHJvZHVjdCBleHRlbmRzIElBdWRpdCB7XG4gICAgaWQ/OiBudW1iZXI7XG4gICAgdGl0bGU/OiBzdHJpbmc7XG4gICAgY29kZT86IHN0cmluZztcbiAgICB1cmw/OiBzdHJpbmc7XG4gICAgdHlwZT86IFNrUHJvZHVjdFR5cGU7XG4gICAgc3R1ZmZUeXBlPzogU2tQcm9kdWN0U3R1ZmZUeXBlO1xuICAgIHN0YXR1cz86IFNrUHJvZHVjdFN0YXR1cztcbiAgICBwcmVvcmRlclN0YXJ0RGF0ZT86IHN0cmluZztcbiAgICBicmFuZHM/OiBJU2tQcm9kdWN0QnJhbmRbXTtcbiAgICBjYXRlZ29yaWVzPzogSVNrUHJvZHVjdENhdGVnb3J5W107XG4gICAga2V5d29yZHM/OiBTa0tleXdvcmRbXTtcbiAgICBpbWFnZXM/OiBJU2tQcm9kdWN0SW1hZ2VbXTtcbiAgICBhY2Nlc3NQb2xpY3k/OiBTa1Byb2R1Y3RBY2Nlc3NQb2xpY3k7XG4gICAgYWNjZXNzUG9saWN5VmFsdWU/OiBzdHJpbmc7XG4gICAgcHJpY2U/OiBTa1Byb2R1Y3RQcmljZTtcbiAgICBzdG9ja0NvbmZpZz86IFNrUHJvZHVjdFN0b2NrO1xuICAgIGVkZWxpdmVyeT86IFNrUHJvZHVjdEVEZWxpdmVyeTtcbiAgICBmdXJuaXR1cmVBc3NlbWJseT86IGJvb2xlYW47XG4gICAgb3BlbmdyYXBoPzogU2tPcGVuZ3JhcGg7XG4gICAgbmF2ZXJlcD86IFNrTmF2ZXJFcEVtYmVkO1xuICAgIGNhdGFsb2c/OiBTa0NhdGFsb2dFbWJlZDtcbiAgICBvcHRpb25zPzogSVNrUHJvZHVjdE9wdGlvbltdO1xuICAgIGFydGljbGVEZXNjPzogSVNrQXJ0aWNsZTtcbiAgICBhcnRpY2xlU3BlYz86IElTa0FydGljbGU7XG4gICAgcGFja2FnZXM/OiBJU2tQcm9kdWN0UGFja2FnZVtdO1xuICAgIGFjdGl2YXRlZD86IGJvb2xlYW47XG4gICAgbGlzdE9yZGVyPzogbnVtYmVyO1xuICAgIHZpZXdDb3VudD86IG51bWJlcjtcbiAgICBzaW1wbGVUZXh0Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgU2tQcm9kdWN0IGV4dGVuZHMgQXVkaXQge1xuICAgIGlkOiBudW1iZXI7XG4gICAgdGl0bGU6IHN0cmluZztcbiAgICBjb2RlPzogc3RyaW5nO1xuICAgIHVybD86IHN0cmluZztcbiAgICB0eXBlOiBTa1Byb2R1Y3RUeXBlO1xuICAgIHN0dWZmVHlwZTogU2tQcm9kdWN0U3R1ZmZUeXBlO1xuICAgIHN0YXR1czogU2tQcm9kdWN0U3RhdHVzO1xuICAgIHByZW9yZGVyU3RhcnREYXRlOiBzdHJpbmc7XG4gICAgYnJhbmRzOiBTa1Byb2R1Y3RCcmFuZFtdO1xuICAgIGNhdGVnb3JpZXM6IFNrUHJvZHVjdENhdGVnb3J5W107XG4gICAga2V5d29yZHM6IFNrS2V5d29yZFtdO1xuICAgIGltYWdlczogU2tQcm9kdWN0SW1hZ2VbXTtcbiAgICBhY2Nlc3NQb2xpY3k6IFNrUHJvZHVjdEFjY2Vzc1BvbGljeTtcbiAgICBhY2Nlc3NQb2xpY3lWYWx1ZTogc3RyaW5nO1xuICAgIHByaWNlOiBTa1Byb2R1Y3RQcmljZTtcbiAgICBzdG9ja0NvbmZpZzogU2tQcm9kdWN0U3RvY2s7XG4gICAgZWRlbGl2ZXJ5OiBTa1Byb2R1Y3RFRGVsaXZlcnk7XG4gICAgZnVybml0dXJlQXNzZW1ibHk6IGJvb2xlYW47XG4gICAgb3BlbmdyYXBoOiBTa09wZW5ncmFwaDtcbiAgICBuYXZlcmVwOiBTa05hdmVyRXBFbWJlZDtcbiAgICBjYXRhbG9nOiBTa0NhdGFsb2dFbWJlZDtcbiAgICBvcHRpb25zOiBJU2tQcm9kdWN0T3B0aW9uW107XG4gICAgYXJ0aWNsZURlc2M6IElTa0FydGljbGU7XG4gICAgYXJ0aWNsZVNwZWM6IElTa0FydGljbGU7XG4gICAgcGFja2FnZXM6IFNrUHJvZHVjdFBhY2thZ2VbXTtcbiAgICBhY3RpdmF0ZWQ6IGJvb2xlYW47XG4gICAgbGlzdE9yZGVyOiBudW1iZXI7XG4gICAgdmlld0NvdW50OiBudW1iZXI7XG4gICAgc2ltcGxlVGV4dDogc3RyaW5nO1xuXG4gICAgY29uc3RydWN0b3IoZGF0YTogSVNrUHJvZHVjdCA9IHt9KSB7XG4gICAgICAgIHN1cGVyKGRhdGEpO1xuXG4gICAgICAgIHRoaXMuaWQgPSBkYXRhLmlkO1xuICAgICAgICB0aGlzLnRpdGxlID0gZGF0YS50aXRsZTtcbiAgICAgICAgdGhpcy5jb2RlID0gZGF0YS5jb2RlO1xuICAgICAgICB0aGlzLnVybCA9IGRhdGEudXJsO1xuICAgICAgICB0aGlzLnR5cGUgPSBkYXRhLnR5cGUgfHwgU2tQcm9kdWN0VHlwZS5TaW5nbGU7XG4gICAgICAgIHRoaXMuc3R1ZmZUeXBlID0gZGF0YS5zdHVmZlR5cGU7XG4gICAgICAgIHRoaXMuc3RhdHVzID0gZGF0YS5zdGF0dXMgfHwgU2tQcm9kdWN0U3RhdHVzLk9uc2FsZTtcbiAgICAgICAgdGhpcy5wcmVvcmRlclN0YXJ0RGF0ZSA9IGRhdGEucHJlb3JkZXJTdGFydERhdGU7XG4gICAgICAgIHRoaXMuYnJhbmRzID0gKGRhdGEuYnJhbmRzIHx8IFtdKS5tYXAoaXRlbSA9PiBuZXcgU2tQcm9kdWN0QnJhbmQoaXRlbSkpO1xuICAgICAgICB0aGlzLmNhdGVnb3JpZXMgPSAoZGF0YS5jYXRlZ29yaWVzIHx8IFtdKS5tYXAoaXRlbSA9PiBuZXcgU2tQcm9kdWN0Q2F0ZWdvcnkoaXRlbSkpO1xuICAgICAgICB0aGlzLmtleXdvcmRzID0gKGRhdGEua2V5d29yZHMgfHwgW10pO1xuICAgICAgICB0aGlzLmltYWdlcyA9IChkYXRhLmltYWdlcyB8fCBbXSkubWFwKGl0ZW0gPT4gbmV3IFNrUHJvZHVjdEltYWdlKGl0ZW0pKTtcbiAgICAgICAgdGhpcy5hY2Nlc3NQb2xpY3kgPSBkYXRhLmFjY2Vzc1BvbGljeSB8fCBTa1Byb2R1Y3RBY2Nlc3NQb2xpY3kuUHVibGljO1xuICAgICAgICB0aGlzLmFjY2Vzc1BvbGljeVZhbHVlID0gZGF0YS5hY2Nlc3NQb2xpY3lWYWx1ZTtcbiAgICAgICAgdGhpcy5wcmljZSA9IE9iamVjdC5hc3NpZ24oe30sIHtcbiAgICAgICAgICAgIG1lc3NhZ2U6ICcnLFxuICAgICAgICAgICAgcXVvdGFGcmVlOiBmYWxzZSxcbiAgICAgICAgICAgIHBheW1lbnROYXZlcjogZmFsc2UsXG4gICAgICAgICAgICBvcmlnaW5hbDogMCxcbiAgICAgICAgICAgIHJldGFpbDogMCxcbiAgICAgICAgICAgIHBvaW50QW1vdW50OiAwLFxuICAgICAgICAgICAgcG9pbnRUeXBlOiAnQU1PVU5UJyxcbiAgICAgICAgICAgIG1heFVzYWJsZVBvaW50OiA1MCxcbiAgICAgICAgICAgIHdob2xlc2FsZU5vcm1hbDogMCxcbiAgICAgICAgICAgIHdob2xlc2FsZURlYWxlcjogMCxcbiAgICAgICAgICAgIHdob2xlc2FsZUNvbmRpdGlvbkE6IDAsXG4gICAgICAgICAgICB3aG9sZXNhbGVDb25kaXRpb25COiAwLFxuICAgICAgICAgICAgd2hvbGVzYWxlQ29uZGl0aW9uQzogMCxcbiAgICAgICAgICAgIHVzZVZhclByaWNlOiBmYWxzZSxcbiAgICAgICAgICAgIHVzZVZhclByaWNlWGM6IGZhbHNlLFxuICAgICAgICAgICAgdmFyQ3VycmVuY3k6ICdVU0QnLFxuICAgICAgICAgICAgdmFyRm9ybXVsYTogJycsXG4gICAgICAgICAgICB2YXJNYXA6IDAsXG4gICAgICAgICAgICB2YXJDb3N0OiAwLFxuICAgICAgICAgICAgdmFyQWRkQW1vdW50OiAwLFxuICAgICAgICAgICAgdmFyQWRkUGVyY2VudDogMCxcbiAgICAgICAgICAgIHZhclVwZGF0ZWREYXRlOiBudWxsXG4gICAgICAgIH0sIGRhdGEucHJpY2UpO1xuICAgICAgICB0aGlzLnN0b2NrQ29uZmlnID0gT2JqZWN0LmFzc2lnbih7fSwge3VzZVN0b2NrSGlzdG9yeTogZmFsc2UsIHVzZUF1dG9TdGF0dXNDaGFuZ2U6IGZhbHNlLCB1c2VYY2hhbmdlQXBpOiBmYWxzZX0sIGRhdGEuc3RvY2tDb25maWcpO1xuICAgICAgICB0aGlzLm9wZW5ncmFwaCA9IE9iamVjdC5hc3NpZ24oe30sIHtvZ1RpdGxlOiAnJywgb2dBdXRvRmlsbDogdHJ1ZSwgb2dEZXNjOiAnJywgb2dJbWFnZTogbnVsbH0sIGRhdGEub3BlbmdyYXBoKTtcbiAgICAgICAgdGhpcy5uYXZlcmVwID0gT2JqZWN0LmFzc2lnbih7fSwge25hdmVyZXBTaG93OiB0cnVlLCBuYXZlcmVwQ3VzdG9tOiBmYWxzZSwgbmF2ZXJlcFRpdGxlOiAnJywgbmF2ZXJlcENhdGVnb3J5OiAnJ30sIGRhdGEubmF2ZXJlcCk7XG4gICAgICAgIHRoaXMuY2F0YWxvZyA9IE9iamVjdC5hc3NpZ24oe30sIHtjYXRhbG9nU2hvdzogdHJ1ZSwgY2F0YWxvZ0N1c3RvbTogZmFsc2UsIGNhdGFsb2dUaXRsZTogJycsIGNhdGFsb2dDYXRlZ29yeTogbnVsbH0sIGRhdGEuY2F0YWxvZyApO1xuICAgICAgICB0aGlzLmVkZWxpdmVyeSA9IE9iamVjdC5hc3NpZ24oe30sIHtza3U6ICcnLCBkb3dubG9hZExpbms6ICcnLCB0ZW1wbGF0ZTogJyd9LCBkYXRhLmVkZWxpdmVyeSk7XG4gICAgICAgIHRoaXMuZnVybml0dXJlQXNzZW1ibHkgPSBkYXRhLmZ1cm5pdHVyZUFzc2VtYmx5IHx8IGZhbHNlO1xuICAgICAgICB0aGlzLm9wdGlvbnMgPSBkYXRhLm9wdGlvbnMgfHwgW107XG4gICAgICAgIHRoaXMuYXJ0aWNsZURlc2MgPSBkYXRhLmFydGljbGVEZXNjID8gbmV3IFNrQXJ0aWNsZShkYXRhLmFydGljbGVEZXNjKSA6IG5ldyBTa0FydGljbGUoKTtcbiAgICAgICAgdGhpcy5hcnRpY2xlU3BlYyA9IGRhdGEuYXJ0aWNsZVNwZWMgPyBuZXcgU2tBcnRpY2xlKGRhdGEuYXJ0aWNsZVNwZWMpIDogbmV3IFNrQXJ0aWNsZSgpO1xuICAgICAgICB0aGlzLnBhY2thZ2VzID0gKGRhdGEucGFja2FnZXMgfHwgW10pLm1hcChpdGVtID0+IG5ldyBTa1Byb2R1Y3RQYWNrYWdlKGl0ZW0pKTtcbiAgICAgICAgdGhpcy5hY3RpdmF0ZWQgPSBkYXRhLmFjdGl2YXRlZCB8fCBmYWxzZTtcbiAgICAgICAgdGhpcy5saXN0T3JkZXIgPSBkYXRhLmxpc3RPcmRlciB8fCAwO1xuICAgICAgICB0aGlzLnZpZXdDb3VudCA9IGRhdGEudmlld0NvdW50IHx8IDA7XG4gICAgICAgIHRoaXMuc2ltcGxlVGV4dCA9IGRhdGEuc2ltcGxlVGV4dCB8fCAnJztcbiAgICB9XG5cbiAgICBpc0VtcHR5KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRoaXMuaWQ7XG4gICAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNrUHJvZHVjdExpc3RJdGVtIHtcbiAgICBpZD86IG51bWJlcjtcbiAgICB0aXRsZT86IHN0cmluZztcbiAgICBjb2RlPzogc3RyaW5nO1xuICAgIHVybD86IHN0cmluZztcbiAgICB0eXBlPzogU2tQcm9kdWN0VHlwZTtcbiAgICBzdHVmZlR5cGU/OiBTa1Byb2R1Y3RTdHVmZlR5cGU7XG4gICAgc3RhdHVzPzogU2tQcm9kdWN0U3RhdHVzO1xuICAgIGhhc1Byb21vdGlvbj86IGJvb2xlYW47XG4gICAgaGFzR2lmdD86IGJvb2xlYW47XG4gICAgcmVhbHRpbWVTb2Z0d2FyZT86IGJvb2xlYW47XG4gICAgZnVybml0dXJlQXNzZW1ibHk/OiBib29sZWFuO1xuICAgIGJyYW5kTmFtZT86IHN0cmluZztcbiAgICBicmFuZElkPzogbnVtYmVyO1xuICAgIGJyYW5kcz86IElTa1Byb2R1Y3RCcmFuZEl0ZW1bXTtcbiAgICBvdmVyc2Vhcz86IGJvb2xlYW47XG5cbiAgICB3aXNobGlzdENvdW50PzogbnVtYmVyO1xuICAgIHdpc2hsaXN0TWU/OiBib29sZWFuO1xuICAgIGltYWdlPzogSVNrRmlsZTtcblxuICAgIHF1b3RhRnJlZT86IGJvb2xlYW47XG4gICAgcHJpY2VNZXNzYWdlPzogc3RyaW5nO1xuICAgIHByaWNlT3JpZ2luYWw/OiBudW1iZXI7XG4gICAgcHJpY2VEaXNjb3VudGVkPzogbnVtYmVyO1xuICAgIHByaWNlTWluPzogbnVtYmVyO1xuICAgIHByaWNlTWF4PzogbnVtYmVyO1xuICAgIG1heEJ1eUNvdW50PzogbnVtYmVyO1xuXG4gICAgcGFja2FnZUl0ZW1zPzogSVNrUHJvZHVjdFBhY2thZ2VMaXN0SXRlbVtdO1xuXG4gICAgYWNjZXNzUG9saWN5PzogU2tQcm9kdWN0QWNjZXNzUG9saWN5O1xuICAgIGFjY2Vzc1BvbGljeVZhbHVlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElTa1Byb2R1Y3REZXRhaWwgZXh0ZW5kcyBTa1Byb2R1Y3RMaXN0SXRlbSB7XG4gICAgcG9pbnQ/OiBudW1iZXI7XG4gICAgaW5jbHVkZWRJblBhY2thZ2U/OiBib29sZWFuO1xuICAgIGltYWdlcz86IElTa0ZpbGVbXTtcbiAgICBzaW1wbGVUZXh0Pzogc3RyaW5nO1xuICAgIGFydGljbGVEZXNjPzogSVNrQXJ0aWNsZTtcbiAgICBhcnRpY2xlU3BlYz86IElTa0FydGljbGU7XG4gICAgb3BlbmdyYXBoPzogU2tPcGVuZ3JhcGg7XG4gICAgcGF5bWVudE5hdmVyPzogYm9vbGVhbjtcbiAgICBwYWNrYWdlSXRlbXM/OiBJU2tQcm9kdWN0UGFja2FnZUxpc3RJdGVtW107XG4gICAgbGlua2VkU2VyaWVzPzogSVNrUHJvZHVjdERldGFpbFNlcmllc1tdO1xuICAgIGxpbmtlZERvY3VtZW50cz86IElTa0RvY3VtZW50UHVibGljTGlzdFtdO1xuICAgIGxpbmtlZFByb21vdGlvbnM/OiBJU2tQcm9tb3Rpb25QdWJsaWNMaXN0W107XG4gICAgbGlua2VkUHJvbW90aW9uR2lmdEdyb3Vwcz86IElTa1Byb21vdGlvbkdpZnRHcm91cEl0ZW1bXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJU2tQcm9kdWN0UGFja2FnZUxpc3RJdGVtIHtcbiAgICBpZD86IG51bWJlcjtcbiAgICBwcm9kdWN0PzogU2tQcm9kdWN0TGlzdEl0ZW07XG4gICAgc2hvd1NwZWM/OiBib29sZWFuO1xuICAgIHNob3dEZXNjPzogYm9vbGVhbjtcbiAgICBvcmRlckluZGV4PzogbnVtYmVyO1xuICAgIGFtb3VudD86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTa1Byb2R1Y3RXaXNobGlzdCB7XG4gICAgd2lzaGxpc3RDb3VudD86IG51bWJlcjtcbiAgICB3aXNobGlzdE1lPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJU2tQcm9kdWN0RGV0YWlsU2VyaWVzSXRlbSB7XG4gICAgaWQ/OiBudW1iZXI7XG4gICAgdGl0bGU/OiBzdHJpbmc7XG4gICAgdXJsPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElTa1Byb2R1Y3REZXRhaWxTZXJpZXMge1xuICAgIGlkPzogbnVtYmVyO1xuICAgIHRpdGxlPzogc3RyaW5nO1xuICAgIGl0ZW1zPzogSVNrUHJvZHVjdERldGFpbFNlcmllc0l0ZW1bXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJU2tQcm9kdWN0RmlsdGVyRGF0YSB7XG4gICAgbG93ZXN0UHJpY2U/OiBudW1iZXI7XG4gICAgaGlnaGVzdFByaWNlPzogbnVtYmVyO1xuICAgIG1pblByaWNlPzogbnVtYmVyO1xuICAgIG1heFByaWNlPzogbnVtYmVyO1xuICAgIGF2YWlsYWJsZUJyYW5kcz86IFNrQnJhbmRbXTtcbiAgICBhdmFpbGFibGVDYXRlZ29yaWVzPzogU2tDYXRlZ29yeVtdO1xuICAgIGF2YWlsYWJsZVN1YkNhdGVnb3JpZXM/OiBTa0NhdGVnb3J5W107XG4gICAgc2VsZWN0ZWRTdWJDYXRlZ29yeUl0ZW1zPzogU2tTdWJDYXRlZ29yeUl0ZW1bXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJU2tQcm9kdWN0QnJhbmRJdGVtIHtcbiAgICBpZDogbnVtYmVyO1xuICAgIG5hbWU6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJU2tQcm9kdWN0UHVibGlzaCB7XG4gICAgaWQ/OiBudW1iZXI7XG4gICAgcHJvZHVjdElkPzogbnVtYmVyO1xuICAgIHN0YXR1cz86IFNrUHJvZHVjdFN0YXR1cztcbiAgICBwcmVvcmRlclN0YXJ0RGF0ZT86IHN0cmluZztcbiAgICBhY2Nlc3NQb2xpY3k/OiBTa1Byb2R1Y3RBY2Nlc3NQb2xpY3k7XG4gICAgYWN0aW9uRGF0ZT86IHN0cmluZztcbiAgICBhY3RpdmF0ZWQ/OiBib29sZWFuO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0U2tQcm9kdWN0U3RhdHVzVGV4dChzdGF0dXM6IFNrUHJvZHVjdFN0YXR1cykge1xuICAgIHN3aXRjaCAoc3RhdHVzKSB7XG4gICAgICAgIGNhc2UgU2tQcm9kdWN0U3RhdHVzLkRlYWN0aXZhdGU6XG4gICAgICAgICAgICByZXR1cm4gJ+2MkOunpCDspJHsp4AnO1xuICAgICAgICBjYXNlIFNrUHJvZHVjdFN0YXR1cy5PbnNhbGU6XG4gICAgICAgICAgICByZXR1cm4gJ+2MkOunpOykkSc7XG4gICAgICAgIGNhc2UgU2tQcm9kdWN0U3RhdHVzLlByZW9yZGVyOlxuICAgICAgICAgICAgcmV0dXJuICfsmIjslb3tjJDrp6QnO1xuICAgICAgICBjYXNlIFNrUHJvZHVjdFN0YXR1cy5Tb2xkb3V0OlxuICAgICAgICAgICAgcmV0dXJuICftkojsoIgnO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuIHN0YXR1cztcbiAgICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRTa1Byb2R1Y3RBY2Nlc3NQb2xpY3lUZXh0KGFjY2Vzc1BvbGljeTogU2tQcm9kdWN0QWNjZXNzUG9saWN5KSB7XG4gICAgc3dpdGNoIChhY2Nlc3NQb2xpY3kpIHtcbiAgICAgICAgY2FzZSBTa1Byb2R1Y3RBY2Nlc3NQb2xpY3kuSGlkZGVuOlxuICAgICAgICAgICAgcmV0dXJuICfslrTrk5zrr7wg7Jm4IOygkeq3vOu2iOqwgCc7XG4gICAgICAgIGNhc2UgU2tQcm9kdWN0QWNjZXNzUG9saWN5LlByaXZhdGVMaW5rOlxuICAgICAgICAgICAgcmV0dXJuICfrp4HtgazroZzrp4wg7KCR6re8IOqwgOuKpSc7XG4gICAgICAgIGNhc2UgU2tQcm9kdWN0QWNjZXNzUG9saWN5LlByaXZhdGVVc2VyOlxuICAgICAgICAgICAgcmV0dXJuICftlbTri7kg7Jyg7KCA66eMIOygkeq3vCDqsIDriqUnO1xuICAgICAgICBjYXNlIFNrUHJvZHVjdEFjY2Vzc1BvbGljeS5QdWJsaWM6XG4gICAgICAgICAgICByZXR1cm4gJ+qzteqwnCc7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXR1cm4gYWNjZXNzUG9saWN5O1xuICAgIH1cbn1cblxuXG4iXX0=
|
|
@@ -911,13 +911,13 @@ class SkCartLocalService {
|
|
|
911
911
|
const cartList = this.loadRaw();
|
|
912
912
|
const index = this.loadRaw().findIndex(item => item.id === cart.id);
|
|
913
913
|
if (index > -1) {
|
|
914
|
-
if (cart.product.maxBuyCount > 0 && cart.amount > cart.product.maxBuyCount) {
|
|
915
|
-
// 에러 리턴
|
|
916
|
-
return throwError(new Error('최대 구매 수량을 초과하였습니다.'));
|
|
917
|
-
}
|
|
918
914
|
cartList[index] = cart;
|
|
919
915
|
localStorage.setItem('cartData', SkUtils.encodeBase64(cartList));
|
|
920
916
|
}
|
|
917
|
+
if (cart.product.maxBuyCount > 0 && cart.amount > cart.product.maxBuyCount) {
|
|
918
|
+
// 에러 리턴
|
|
919
|
+
return throwError(new Error('최대 구매 수량을 초과하였습니다.'));
|
|
920
|
+
}
|
|
921
921
|
return of(cartList);
|
|
922
922
|
}
|
|
923
923
|
}
|