raise-common-lib 0.0.26 → 0.0.27

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.
Files changed (73) hide show
  1. package/assets/language/fr.d.ts +3377 -0
  2. package/assets/language/ja.d.ts +3351 -0
  3. package/assets/language/ko.d.ts +3351 -0
  4. package/assets/language/zh-CN.d.ts +3064 -0
  5. package/assets/language/zh-TW.d.ts +3354 -0
  6. package/bundles/raise-common-lib.umd.js +18415 -477
  7. package/bundles/raise-common-lib.umd.js.map +1 -1
  8. package/bundles/raise-common-lib.umd.min.js +2 -2
  9. package/bundles/raise-common-lib.umd.min.js.map +1 -1
  10. package/esm2015/assets/language/fr.js +3384 -0
  11. package/esm2015/assets/language/ja.js +3358 -0
  12. package/esm2015/assets/language/ko.js +3358 -0
  13. package/esm2015/assets/language/zh-CN.js +3071 -0
  14. package/esm2015/assets/language/zh-TW.js +3361 -0
  15. package/esm2015/lib/form/checkbox-group/index.component.js +1 -1
  16. package/esm2015/lib/form/drawer-form/constants.js +29 -0
  17. package/esm2015/lib/form/drawer-form/drawer-form.component.js +524 -0
  18. package/esm2015/lib/form/radio-group/index.component.js +1 -1
  19. package/esm2015/lib/form/tag-input/index.component.js +44 -11
  20. package/esm2015/lib/layout/drawer/index.component.js +211 -0
  21. package/esm2015/lib/layout/main-container/index.component.js +48 -6
  22. package/esm2015/lib/layout/multi-tab/index.component.js +19 -4
  23. package/esm2015/lib/layout/rs-header/index.component.js +20 -5
  24. package/esm2015/lib/raise-common-lib.module.js +13 -2
  25. package/esm2015/lib/service/drawer.service.js +191 -0
  26. package/esm2015/lib/service/translation.service.js +142 -0
  27. package/esm2015/public-api.js +25 -20
  28. package/esm2015/raise-common-lib.js +2 -2
  29. package/esm5/assets/language/fr.js +3384 -0
  30. package/esm5/assets/language/ja.js +3358 -0
  31. package/esm5/assets/language/ko.js +3358 -0
  32. package/esm5/assets/language/zh-CN.js +3071 -0
  33. package/esm5/assets/language/zh-TW.js +3361 -0
  34. package/esm5/lib/form/checkbox-group/index.component.js +1 -1
  35. package/esm5/lib/form/drawer-form/constants.js +30 -0
  36. package/esm5/lib/form/drawer-form/drawer-form.component.js +634 -0
  37. package/esm5/lib/form/radio-group/index.component.js +1 -1
  38. package/esm5/lib/form/tag-input/index.component.js +60 -12
  39. package/esm5/lib/layout/drawer/index.component.js +255 -0
  40. package/esm5/lib/layout/main-container/index.component.js +52 -9
  41. package/esm5/lib/layout/multi-tab/index.component.js +18 -4
  42. package/esm5/lib/layout/rs-header/index.component.js +18 -5
  43. package/esm5/lib/raise-common-lib.module.js +13 -2
  44. package/esm5/lib/service/drawer.service.js +229 -0
  45. package/esm5/lib/service/translation.service.js +157 -0
  46. package/esm5/public-api.js +25 -20
  47. package/esm5/raise-common-lib.js +2 -2
  48. package/fesm2015/raise-common-lib.js +17820 -100
  49. package/fesm2015/raise-common-lib.js.map +1 -1
  50. package/fesm5/raise-common-lib.js +18412 -478
  51. package/fesm5/raise-common-lib.js.map +1 -1
  52. package/lib/form/drawer-form/constants.d.ts +34 -0
  53. package/lib/form/drawer-form/drawer-form.component.d.ts +63 -0
  54. package/lib/form/tag-input/index.component.d.ts +8 -2
  55. package/lib/layout/drawer/index.component.d.ts +24 -0
  56. package/lib/layout/main-container/index.component.d.ts +7 -0
  57. package/lib/layout/multi-tab/index.component.d.ts +3 -1
  58. package/lib/layout/rs-header/index.component.d.ts +4 -1
  59. package/lib/service/drawer.service.d.ts +33 -0
  60. package/lib/service/translation.service.d.ts +9 -0
  61. package/package.json +1 -1
  62. package/public-api.d.ts +24 -19
  63. package/raise-common-lib.metadata.json +1 -1
  64. package/src/assets/img/down-arrow.svg +3 -0
  65. package/src/assets/img/drawer-back.svg +4 -0
  66. package/src/assets/img/tooltip-icon.svg +4 -0
  67. package/src/assets/language/fr.ts +3603 -0
  68. package/src/assets/language/ja.ts +3501 -0
  69. package/src/assets/language/ko.ts +3478 -0
  70. package/src/assets/language/zh-CN.ts +3115 -0
  71. package/src/assets/language/zh-TW.ts +3411 -0
  72. package/src/assets/style/reset/dropdown.scss +12 -3
  73. package/src/assets/style/reset/input.scss +18 -3
@@ -9,6 +9,7 @@ import { ActivatedRoute, NavigationEnd, Router, } from "@angular/router";
9
9
  import { CommonFunctionService } from "../../service/common-function.service";
10
10
  import { KeepAliveService } from "../../service/keep-alive.service";
11
11
  import { filter } from "rxjs/operators";
12
+ import { DrawerService } from "../../service/drawer.service";
12
13
  export class MultiTabComponent {
13
14
  /**
14
15
  * @param {?} router
@@ -16,13 +17,15 @@ export class MultiTabComponent {
16
17
  * @param {?} activatedRoute
17
18
  * @param {?} keepAlive
18
19
  * @param {?} ref
20
+ * @param {?} drawer
19
21
  */
20
- constructor(router, cf, activatedRoute, keepAlive, ref) {
22
+ constructor(router, cf, activatedRoute, keepAlive, ref, drawer) {
21
23
  this.router = router;
22
24
  this.cf = cf;
23
25
  this.activatedRoute = activatedRoute;
24
26
  this.keepAlive = keepAlive;
25
27
  this.ref = ref;
28
+ this.drawer = drawer;
26
29
  this.singleReuseUrls = []; //只能单个缓存的url
27
30
  //只能单个缓存的url
28
31
  this.TAB_WIDTH = 164;
@@ -79,6 +82,9 @@ export class MultiTabComponent {
79
82
  /** @type {?} */
80
83
  const currentRoute = this.router.routerState.root.firstChild;
81
84
  if (currentRoute && !skipLocationChange) {
85
+ if (this.tabList.length === 0 && !state) {
86
+ return; // 初始化第一个url不加入multi-tab
87
+ }
82
88
  this.setTab(this.router.url, currentRoute.snapshot.routeConfig.path, state && state.title);
83
89
  }
84
90
  }
@@ -234,6 +240,7 @@ export class MultiTabComponent {
234
240
  */
235
241
  (ele) => !ele.url.includes(this.singleReuseUrls[singleIdx])));
236
242
  this.keepAlive.clearCache(url);
243
+ this.drawer.deleteCache(url);
237
244
  }
238
245
  this.addTab(url, title);
239
246
  }
@@ -247,6 +254,7 @@ export class MultiTabComponent {
247
254
  */
248
255
  refreshTab() {
249
256
  this.keepAlive.clearCache(this.tabList[this.selectedTab].url);
257
+ this.drawer.deleteCache(this.tabList[this.selectedTab].url);
250
258
  /** @type {?} */
251
259
  const currentUrl = this.router.url;
252
260
  this.router.navigateByUrl("/", { skipLocationChange: true }).then((/**
@@ -262,12 +270,13 @@ export class MultiTabComponent {
262
270
  */
263
271
  clearCache(url) {
264
272
  this.keepAlive.clearCache(url); // 调用自定义策略的清除缓存方法
273
+ this.drawer.deleteCache(url);
265
274
  }
266
275
  }
267
276
  MultiTabComponent.decorators = [
268
277
  { type: Component, args: [{
269
278
  selector: "rs-multi-tab",
270
- template: "<div class=\"rs-multi-tab\">\r\n <ul>\r\n <ng-container *ngFor=\"let tab of tabList; let i = index\">\r\n <li\r\n [ngClass]=\"selectedTab === i ? 'isSelect' : 'notSelect'\"\r\n (click)=\"changeTab(tab, i)\"\r\n >\r\n <ejs-tooltip\r\n id=\"notSelectTooltip\"\r\n [showTipPointer]=\"false\"\r\n [openDelay]=\"500\"\r\n *ngIf=\"tab.displayTitle !== tab.title; else originText\"\r\n style=\"height: 27px\"\r\n >\r\n <ng-template #content>\r\n <div class=\"tooltip-content\">\r\n {{ tab.title }}\r\n </div>\r\n </ng-template>\r\n <span class=\"tabTitle\">{{ tab.displayTitle }}</span>\r\n </ejs-tooltip>\r\n <ng-template #originText>\r\n <span class=\"tabTitle\">\r\n {{ tab.displayTitle }}\r\n </span>\r\n </ng-template>\r\n <span class=\"img-block\" *ngIf=\"selectedTab !== i\"></span>\r\n <img\r\n *ngIf=\"tabList.length !== 1\"\r\n src=\"../../../assets/img/close-url.svg\"\r\n (click)=\"closeTab(tab, i)\"\r\n />\r\n </li>\r\n </ng-container>\r\n </ul>\r\n <div class=\"refresh-tab\" (click)=\"refreshTab()\">\r\n <img\r\n id=\"loadingIcon\"\r\n alt\r\n class=\"refresh-btn\"\r\n src=\"../../../assets/img/desktop-refresh-btn.svg\"\r\n />\r\n <span>Refresh Current Tab</span>\r\n </div>\r\n</div>\r\n",
279
+ template: "<div class=\"rs-multi-tab\" *ngIf=\"tabList.length > 0\">\r\n <ul>\r\n <ng-container *ngFor=\"let tab of tabList; let i = index\">\r\n <li\r\n [ngClass]=\"selectedTab === i ? 'isSelect' : 'notSelect'\"\r\n (click)=\"changeTab(tab, i)\"\r\n >\r\n <ejs-tooltip\r\n id=\"notSelectTooltip\"\r\n [showTipPointer]=\"false\"\r\n [openDelay]=\"500\"\r\n *ngIf=\"tab.displayTitle !== tab.title; else originText\"\r\n style=\"height: 27px\"\r\n >\r\n <ng-template #content>\r\n <div class=\"tooltip-content\">\r\n {{ tab.title }}\r\n </div>\r\n </ng-template>\r\n <span class=\"tabTitle\">{{ tab.displayTitle }}</span>\r\n </ejs-tooltip>\r\n <ng-template #originText>\r\n <span class=\"tabTitle\">\r\n {{ tab.displayTitle }}\r\n </span>\r\n </ng-template>\r\n <span class=\"img-block\" *ngIf=\"selectedTab !== i\"></span>\r\n <img\r\n *ngIf=\"tabList.length !== 1\"\r\n src=\"../../../assets/img/close-url.svg\"\r\n (click)=\"closeTab(tab, i)\"\r\n />\r\n </li>\r\n </ng-container>\r\n </ul>\r\n <div class=\"refresh-tab\" (click)=\"refreshTab()\">\r\n <img\r\n id=\"loadingIcon\"\r\n alt\r\n class=\"refresh-btn\"\r\n src=\"../../../assets/img/desktop-refresh-btn.svg\"\r\n />\r\n <span>Refresh Current Tab</span>\r\n </div>\r\n</div>\r\n",
271
280
  styles: [".rs-multi-tab{border-bottom:1px solid #e5eaef;height:28px;width:100%;display:flex;justify-content:space-between}.rs-multi-tab ul{display:flex;margin:0 8px;padding:0;overflow:hidden;height:100%}.rs-multi-tab ul li{max-width:164px;padding:0 12px;display:flex;align-items:center;flex:auto;border:1px solid #e5eaef;border-bottom:none;color:#5f6f81;font-family:Arial;font-size:11px;font-style:normal;font-weight:400;line-height:28px;height:100%;background:#f8fafb;vertical-align:top;position:relative;cursor:default}.rs-multi-tab ul li .tabTitle{display:inline-block;white-space:nowrap;font-size:11px;font-family:Arial;font-style:normal;font-weight:400;line-height:16px;transition:width .3s}.rs-multi-tab ul li img{border-radius:4px;padding:4px;margin-left:6px;margin-top:1px;vertical-align:top;cursor:pointer}.rs-multi-tab ul li img:hover{background:#dce8f6}.rs-multi-tab ul li:not(:last-child){border-right:none}.rs-multi-tab ul li:first-of-type{border-top-left-radius:8px}.rs-multi-tab ul li:last-child{border-top-right-radius:8px}.rs-multi-tab ul .isSelect{color:#1f3f5c;background:#fff}.rs-multi-tab ul .notSelect img{display:none}.rs-multi-tab ul .notSelect .img-block{display:inline-block;width:22px}.rs-multi-tab ul .notSelect:hover{color:#1f3f5c;background-color:rgba(31,123,255,.04)}.rs-multi-tab ul .notSelect:hover .img-block{display:none}.rs-multi-tab ul .notSelect:hover img{display:inline-block}.rs-multi-tab .refresh-tab{cursor:pointer;text-align:right;color:#6c7c90;font-family:Arial;font-size:11px;font-style:normal;font-weight:400;line-height:28px;padding-right:12px}.rs-multi-tab .refresh-tab img{vertical-align:middle;margin-right:4px}.refresh-tab-loading{-webkit-animation:1s linear infinite spin;animation:1s linear infinite spin}@-webkit-keyframes spin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}@keyframes spin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}.tooltip-content{padding:4px;color:#f8fafb;font-family:Arial;font-size:11px;font-style:normal;font-weight:400;line-height:14px}@media (max-width:1400px){.refresh-tab{padding-right:0!important}.refresh-tab span{display:none!important}}@media (max-width:1100px){.rs-multi-tab ul li img{position:absolute;right:3px;background-color:#fff}.notSelect:hover img{position:absolute;right:3px;background-color:#eff5fb}.img-block{display:none!important}}@media (max-width:600px){.rs-multi-tab ul li{padding:0 8px}.rs-multi-tab ul .notSelect .img-block{width:0!important}}"]
272
281
  }] }
273
282
  ];
@@ -277,7 +286,8 @@ MultiTabComponent.ctorParameters = () => [
277
286
  { type: CommonFunctionService },
278
287
  { type: ActivatedRoute },
279
288
  { type: KeepAliveService },
280
- { type: ChangeDetectorRef }
289
+ { type: ChangeDetectorRef },
290
+ { type: DrawerService }
281
291
  ];
282
292
  MultiTabComponent.propDecorators = {
283
293
  singleReuseUrls: [{ type: Input }],
@@ -319,5 +329,10 @@ if (false) {
319
329
  * @private
320
330
  */
321
331
  MultiTabComponent.prototype.ref;
332
+ /**
333
+ * @type {?}
334
+ * @private
335
+ */
336
+ MultiTabComponent.prototype.drawer;
322
337
  }
323
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vcmFpc2UtY29tbW9uLWxpYi8iLCJzb3VyY2VzIjpbImxpYi9sYXlvdXQvbXVsdGktdGFiL2luZGV4LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxHQUVOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxjQUFjLEVBQ2QsYUFBYSxFQUNiLE1BQU0sR0FFUCxNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQU94QyxNQUFNLE9BQU8saUJBQWlCOzs7Ozs7OztJQUM1QixZQUNTLE1BQWMsRUFDZCxFQUF5QixFQUN6QixjQUE4QixFQUM5QixTQUEyQixFQUMxQixHQUFzQjtRQUp2QixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsT0FBRSxHQUFGLEVBQUUsQ0FBdUI7UUFDekIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQzFCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBRXZCLG9CQUFlLEdBQWEsRUFBRSxDQUFDLENBQUMsWUFBWTs7UUFFckQsY0FBUyxHQUFHLEdBQUcsQ0FBQztRQUNoQixlQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLGNBQVMsR0FBRyxFQUFFLENBQUM7UUFJZixZQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ2IsZ0JBQVcsR0FBVyxDQUFDLENBQUM7UUFDeEIsWUFBTyxHQUFXLEVBQUUsQ0FBQztRQUNyQixnQkFBVyxHQUFXLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxVQUFVO0lB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Q2hDLDJDQUFxQzs7SUFDckMsc0NBQWtDOzs7OztJQUNsQyxnQ0FBOEIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyDnu4Tku7bnsbtcclxuaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgSG9zdExpc3RlbmVyLFxyXG4gIElucHV0LFxyXG4gIE9uSW5pdCxcclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge1xyXG4gIEFjdGl2YXRlZFJvdXRlLFxyXG4gIE5hdmlnYXRpb25FbmQsXHJcbiAgUm91dGVyLFxyXG4gIFJvdXRlck91dGxldCxcclxufSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XHJcbmltcG9ydCB7IENvbW1vbkZ1bmN0aW9uU2VydmljZSB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL2NvbW1vbi1mdW5jdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IEtlZXBBbGl2ZVNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vc2VydmljZS9rZWVwLWFsaXZlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgZmlsdGVyIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJycy1tdWx0aS10YWJcIixcclxuICB0ZW1wbGF0ZVVybDogXCIuL2luZGV4LmNvbXBvbmVudC5odG1sXCIsXHJcbiAgc3R5bGVVcmxzOiBbXCIuL2luZGV4LmNvbXBvbmVudC5zY3NzXCJdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTXVsdGlUYWJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHJvdXRlcjogUm91dGVyLFxyXG4gICAgcHVibGljIGNmOiBDb21tb25GdW5jdGlvblNlcnZpY2UsXHJcbiAgICBwdWJsaWMgYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlLFxyXG4gICAgcHVibGljIGtlZXBBbGl2ZTogS2VlcEFsaXZlU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxyXG4gICkge31cclxuICBASW5wdXQoKSBzaW5nbGVSZXVzZVVybHM6IHN0cmluZ1tdID0gW107IC8v5Y+q6IO95Y2V5Liq57yT5a2Y55qEdXJsXHJcblxyXG4gIFRBQl9XSURUSCA9IDE2NDtcclxuICBHQVBfTk9STUFMID0gNTQ7XHJcbiAgR0FQX1NNQUxMID0gMzA7XHJcbiAgdGV4dEdhcDsgLy8g5paH5pys5LiO6L655qGG55qE5oC76Ze06LedXHJcbiAgZm9vOiBSb3V0ZXJPdXRsZXQ7XHJcbiAgY29tUmVmOiBhbnk7XHJcbiAgdGFiTGlzdCA9IFtdO1xyXG4gIHNlbGVjdGVkVGFiOiBudW1iZXIgPSAwO1xyXG4gIG1heFRhYnM6IG51bWJlciA9IDEwO1xyXG4gIHNjcmVlbldpZHRoOiBudW1iZXIgPSB3aW5kb3cuaW5uZXJXaWR0aDsgLy8g5Yid5aeL5YyW5bGP5bmV5a695bqmXHJcbiAgQEhvc3RMaXN0ZW5lcihcIndpbmRvdzpyZXNpemVcIiwgW1wiJGV2ZW50XCJdKVxyXG4gIG9uUmVzaXplKGV2ZW50KSB7XHJcbiAgICB0aGlzLnNjcmVlbldpZHRoID0gd2luZG93LmlubmVyV2lkdGg7IC8vIOabtOaWsOWxj+W5leWuveW6plxyXG4gICAgdGhpcy5zZXRFbGxpcHNpc1RpdGxlKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuaW5pdFRhYigpO1xyXG4gICAgLy8g6Kej5Yaz5Yi35paw6aG16Z2i5ZCO77yM6YCJ5Lit55qEIHRhYiDkuKLlpLHpl67pophcclxuICAgIGNvbnN0IGlzRXhpc3RJZHggPSB0aGlzLnRhYkxpc3QuZmluZEluZGV4KChlbGUpID0+IGVsZS51cmwgPT09IHRoaXMucm91dGVyLnVybCk7XHJcbiAgICBpZiAoaXNFeGlzdElkeCAhPT0gLTEpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZFRhYiA9IGlzRXhpc3RJZHg7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIHRoaXMucm91dGVyLmV2ZW50c1xyXG4gICAgICAucGlwZShmaWx0ZXIoKGV2ZW50KSA9PiBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpKVxyXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICBjb25zdCBuYXZpZ2F0aW9uID0gdGhpcy5yb3V0ZXIuZ2V0Q3VycmVudE5hdmlnYXRpb24oKTsgLy8g6I635Y+W5b2T5YmN5a+86IiqXHJcbiAgICAgICAgaWYgKG5hdmlnYXRpb24pIHtcclxuICAgICAgICAgIGNvbnN0IHN0YXRlID0gbmF2aWdhdGlvbi5leHRyYXMuc3RhdGU7IC8vIOiOt+WPluS8oOmAkueahCBzdGF0ZVxyXG4gICAgICAgICAgY29uc3Qgc2tpcExvY2F0aW9uQ2hhbmdlID0gbmF2aWdhdGlvbi5leHRyYXMuc2tpcExvY2F0aW9uQ2hhbmdlOyAvLyDojrflj5bmmK/lkKbot7Pov4cgbG9jYXRpb24gY2hhbmdlXHJcbiAgICAgICAgICBjb25zdCBjdXJyZW50Um91dGUgPSB0aGlzLnJvdXRlci5yb3V0ZXJTdGF0ZS5yb290LmZpcnN0Q2hpbGQ7XHJcbiAgICAgICAgICBpZiAoY3VycmVudFJvdXRlICYmICFza2lwTG9jYXRpb25DaGFuZ2UpIHtcclxuICAgICAgICAgICAgdGhpcy5zZXRUYWIoXHJcbiAgICAgICAgICAgICAgdGhpcy5yb3V0ZXIudXJsLFxyXG4gICAgICAgICAgICAgIGN1cnJlbnRSb3V0ZS5zbmFwc2hvdC5yb3V0ZUNvbmZpZy5wYXRoLFxyXG4gICAgICAgICAgICAgIHN0YXRlICYmIHN0YXRlLnRpdGxlXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIHRoaXMuc2V0RWxsaXBzaXNUaXRsZSgpO1xyXG4gIH1cclxuXHJcbiAgc2V0RWxsaXBzaXNUaXRsZSh0aXRsZT8pIHtcclxuICAgIHRoaXMudGV4dEdhcCA9IHRoaXMuR0FQX05PUk1BTDtcclxuICAgIGlmICh0aGlzLnNjcmVlbldpZHRoIDw9IDExMDApIHtcclxuICAgICAgdGhpcy50ZXh0R2FwID0gdGhpcy5HQVBfU01BTEw7XHJcbiAgICB9XHJcbiAgICBsZXQgeyBhbGxXaWR0aCwgbGVmdFdpZHRoLCByaWdodFdpZHRoIH0gPSB0aGlzLmNhbGNUYWJXaWR0aCgpO1xyXG4gICAgbGV0IHdpZHRoID0gTWF0aC5mbG9vcihcclxuICAgICAgKGFsbFdpZHRoIC0gcmlnaHRXaWR0aCkgLyAodGhpcy50YWJMaXN0ICYmIHRoaXMudGFiTGlzdC5sZW5ndGgpXHJcbiAgICApO1xyXG5cclxuICAgIGlmICh0aXRsZSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5jZi5zZXRNaWRkbGVFbGxpcHNpcyhcclxuICAgICAgICB0aXRsZSxcclxuICAgICAgICB3aWR0aCA+IHRoaXMuVEFCX1dJRFRIXHJcbiAgICAgICAgICA/IHRoaXMuVEFCX1dJRFRIIC0gdGhpcy50ZXh0R2FwXHJcbiAgICAgICAgICA6IHdpZHRoIC0gdGhpcy50ZXh0R2FwLFxyXG4gICAgICAgIDEyXHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnRhYkxpc3QuZm9yRWFjaCgoZWxlLCBpZHgpID0+IHtcclxuICAgICAgICBlbGUuZGlzcGxheVRpdGxlID0gdGhpcy5jZi5zZXRNaWRkbGVFbGxpcHNpcyhcclxuICAgICAgICAgIGVsZS50aXRsZSxcclxuICAgICAgICAgIHdpZHRoID4gdGhpcy5UQUJfV0lEVEhcclxuICAgICAgICAgICAgPyB0aGlzLlRBQl9XSURUSCAtIHRoaXMudGV4dEdhcFxyXG4gICAgICAgICAgICA6IHdpZHRoIC0gdGhpcy50ZXh0R2FwLFxyXG4gICAgICAgICAgMTJcclxuICAgICAgICApO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNhbGNUYWJXaWR0aCgpIHtcclxuICAgIGNvbnN0IHdyYXAgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKFwiLnJzLW11bHRpLXRhYlwiKTtcclxuICAgIGNvbnN0IHVsRWxlbWVudCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoXCIucnMtbXVsdGktdGFiID4gdWxcIik7XHJcbiAgICBjb25zdCByZWZyZXNoVGFiRGl2ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihcIi5ycy1tdWx0aS10YWIgLnJlZnJlc2gtdGFiXCIpO1xyXG4gICAgbGV0IGFsbFdpZHRoO1xyXG4gICAgbGV0IGxlZnRXaWR0aDtcclxuICAgIGxldCByaWdodFdpZHRoO1xyXG4gICAgaWYgKHdyYXAgJiYgdWxFbGVtZW50ICYmIHJlZnJlc2hUYWJEaXYpIHtcclxuICAgICAgLy8g6I635Y+W5YWD57Sg55qE5L2N572u5L+h5oGvXHJcbiAgICAgIGNvbnN0IHdyYXBSZWN0ID0gd3JhcC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgICAgY29uc3QgdWxSZWN0ID0gdWxFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG4gICAgICBjb25zdCByZWZyZXNoVGFiUmVjdCA9IHJlZnJlc2hUYWJEaXYuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcbiAgICAgIGFsbFdpZHRoID0gd3JhcFJlY3Qud2lkdGg7XHJcbiAgICAgIGxlZnRXaWR0aCA9IHVsUmVjdC53aWR0aDtcclxuICAgICAgcmlnaHRXaWR0aCA9IHJlZnJlc2hUYWJSZWN0LndpZHRoO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHtcclxuICAgICAgYWxsV2lkdGgsXHJcbiAgICAgIGxlZnRXaWR0aCxcclxuICAgICAgcmlnaHRXaWR0aCxcclxuICAgIH07XHJcbiAgfVxyXG4gIGluaXRUYWIoKSB7XHJcbiAgICBsZXQgVGFiQ2FjaGUgPSBKU09OLnBhcnNlKHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oXCJUYWJDYWNoZVwiKSk7XHJcbiAgICB0aGlzLnRhYkxpc3QgPSBUYWJDYWNoZSB8fCBbXTtcclxuICB9XHJcblxyXG4gIGNsb3NlVGFiKHRhYiwgaWR4KSB7XHJcbiAgICB0aGlzLnRhYkxpc3QgPSB0aGlzLnRhYkxpc3QuZmlsdGVyKChlbGUpID0+IGVsZS51cmwgIT09IHRhYi51cmwpO1xyXG4gICAgdGhpcy5jbGVhckNhY2hlKHRhYi51cmwpO1xyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRUYWIgPT09IGlkeCkge1xyXG4gICAgICBjb25zdCB0YXJnZXRJZHggPSBNYXRoLm1heCgwLCBpZHggLSAxKTtcclxuICAgICAgdGhpcy5jaGFuZ2VUYWIodGhpcy50YWJMaXN0W3RhcmdldElkeF0sIHRhcmdldElkeCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnNldEVsbGlwc2lzVGl0bGUoKTtcclxuICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0oXCJUYWJDYWNoZVwiLCBKU09OLnN0cmluZ2lmeSh0aGlzLnRhYkxpc3QpKTtcclxuICAgIHRoaXMucmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gIH1cclxuXHJcbiAgY2hhbmdlVGFiKHRhYiwgaWR4KSB7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKHRhYi51cmwpO1xyXG4gICAgdGhpcy5zZWxlY3RlZFRhYiA9IGlkeDtcclxuICAgIHRoaXMucmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gIH1cclxuXHJcbiAgYWRkVGFiKHVybCwgdGl0bGUpIHtcclxuICAgIGlmICh0aGlzLnRhYkxpc3QubGVuZ3RoID49IHRoaXMubWF4VGFicykge1xyXG4gICAgICB0aGlzLmNsb3NlVGFiKHRoaXMudGFiTGlzdFswXSwgMCk7IC8vIOWIoOmZpOesrOS4gOS4qlxyXG4gICAgfVxyXG4gICAgdGhpcy50YWJMaXN0LnB1c2goe1xyXG4gICAgICB1cmw6IHVybCxcclxuICAgICAgdGl0bGU6IHRpdGxlIHx8IFwiZGVmYXVsdFwiLFxyXG4gICAgICBkaXNwbGF5VGl0bGU6IHRoaXMuc2V0RWxsaXBzaXNUaXRsZSh0aXRsZSB8fCBcImRlZmF1bHRcIiksXHJcbiAgICB9KTtcclxuICAgIHRoaXMuc2VsZWN0ZWRUYWIgPSB0aGlzLnRhYkxpc3QubGVuZ3RoIC0gMTtcclxuICAgIHRoaXMuc2V0RWxsaXBzaXNUaXRsZSgpO1xyXG4gICAgc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbShcIlRhYkNhY2hlXCIsIEpTT04uc3RyaW5naWZ5KHRoaXMudGFiTGlzdCkpO1xyXG4gICAgdGhpcy5yZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0VGFiKHVybCwgcHVyZVVybD8sIHRpdGxlPykge1xyXG4gICAgY29uc3QgaXNFeGlzdElkeCA9IHRoaXMudGFiTGlzdC5maW5kSW5kZXgoKGVsZSkgPT4gZWxlLnVybCA9PT0gdXJsKTtcclxuICAgIGlmIChpc0V4aXN0SWR4ID09PSAtMSkge1xyXG4gICAgICBjb25zdCBzaW5nbGVJZHggPSB0aGlzLnNpbmdsZVJldXNlVXJscy5maW5kSW5kZXgoXHJcbiAgICAgICAgKGVsZSkgPT4gZWxlID09PSBwdXJlVXJsXHJcbiAgICAgICk7XHJcbiAgICAgIGlmIChzaW5nbGVJZHggIT09IC0xKSB7XHJcbiAgICAgICAgdGhpcy50YWJMaXN0ID0gdGhpcy50YWJMaXN0LmZpbHRlcihcclxuICAgICAgICAgIChlbGUpID0+ICFlbGUudXJsLmluY2x1ZGVzKHRoaXMuc2luZ2xlUmV1c2VVcmxzW3NpbmdsZUlkeF0pXHJcbiAgICAgICAgKTtcclxuICAgICAgICB0aGlzLmtlZXBBbGl2ZS5jbGVhckNhY2hlKHVybCk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5hZGRUYWIodXJsLCB0aXRsZSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkVGFiID0gaXNFeGlzdElkeDtcclxuICAgICAgdGhpcy5yZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZWZyZXNoVGFiKCkge1xyXG4gICAgdGhpcy5rZWVwQWxpdmUuY2xlYXJDYWNoZSh0aGlzLnRhYkxpc3RbdGhpcy5zZWxlY3RlZFRhYl0udXJsKTtcclxuICAgIGNvbnN0IGN1cnJlbnRVcmwgPSB0aGlzLnJvdXRlci51cmw7IC8vIOiOt+WPluW9k+WJjSBVUkxcclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoXCIvXCIsIHsgc2tpcExvY2F0aW9uQ2hhbmdlOiB0cnVlIH0pLnRoZW4oKCkgPT4ge1xyXG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKGN1cnJlbnRVcmwpOyAvLyDph43mlrDlr7zoiKrliLDlvZPliY0gVVJMXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGNsZWFyQ2FjaGUodXJsKSB7XHJcbiAgICB0aGlzLmtlZXBBbGl2ZS5jbGVhckNhY2hlKHVybCk7IC8vIOiwg+eUqOiHquWumuS5ieetlueVpeeahOa4hemZpOe8k+WtmOaWueazlVxyXG4gIH1cclxufVxyXG4iXX0=
338
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vcmFpc2UtY29tbW9uLWxpYi8iLCJzb3VyY2VzIjpbImxpYi9sYXlvdXQvbXVsdGktdGFiL2luZGV4LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxHQUVOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxjQUFjLEVBQ2QsYUFBYSxFQUNiLE1BQU0sR0FFUCxNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFPN0QsTUFBTSxPQUFPLGlCQUFpQjs7Ozs7Ozs7O0lBQzVCLFlBQ1MsTUFBYyxFQUNkLEVBQXlCLEVBQ3pCLGNBQThCLEVBQzlCLFNBQTJCLEVBQzFCLEdBQXNCLEVBQ3RCLE1BQXFCO1FBTHRCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxPQUFFLEdBQUYsRUFBRSxDQUF1QjtRQUN6QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDMUIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDdEIsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQUV0QixvQkFBZSxHQUFhLEVBQUUsQ0FBQyxDQUFDLFlBQVk7O1FBRXJELGNBQVMsR0FBRyxHQUFHLENBQUM7UUFDaEIsZUFBVSxHQUFHLEVBQUUsQ0FBQztRQUNoQixjQUFTLEdBQUcsRUFBRSxDQUFDO1FBSWYsWUFBTyxHQUFHLEVBQUUsQ0FBQztRQUNiLGdCQUFXLEdBQVcsQ0FB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Q0FBQyxDQUFDO0lBQy9CLENBQUM7OztZQTVMRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGNBQWM7Z0JBQ3hCLHcvQ0FBcUM7O2FBRXRDOzs7O1lBWkMsTUFBTTtZQUdDLHFCQUFxQjtZQUw1QixjQUFjO1lBTVAsZ0JBQWdCO1lBYnZCLGlCQUFpQjtZQWVWLGFBQWE7Ozs4QkFnQm5CLEtBQUs7dUJBWUwsWUFBWSxTQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQzs7OztJQVp6Qyw0Q0FBd0M7O0lBRXhDLHNDQUFnQjs7SUFDaEIsdUNBQWdCOztJQUNoQixzQ0FBZTs7SUFDZixvQ0FBUTs7SUFDUixnQ0FBa0I7O0lBQ2xCLG1DQUFZOztJQUNaLG9DQUFhOztJQUNiLHdDQUF3Qjs7SUFDeEIsb0NBQXFCOztJQUNyQix3Q0FBd0M7O0lBbEJ0QyxtQ0FBcUI7O0lBQ3JCLCtCQUFnQzs7SUFDaEMsMkNBQXFDOztJQUNyQyxzQ0FBa0M7Ozs7O0lBQ2xDLGdDQUE4Qjs7Ozs7SUFDOUIsbUNBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiLy8g57uE5Lu257G7XHJcbmltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ29tcG9uZW50LFxyXG4gIEhvc3RMaXN0ZW5lcixcclxuICBJbnB1dCxcclxuICBPbkluaXQsXHJcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtcclxuICBBY3RpdmF0ZWRSb3V0ZSxcclxuICBOYXZpZ2F0aW9uRW5kLFxyXG4gIFJvdXRlcixcclxuICBSb3V0ZXJPdXRsZXQsXHJcbn0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQgeyBDb21tb25GdW5jdGlvblNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vc2VydmljZS9jb21tb24tZnVuY3Rpb24uc2VydmljZVwiO1xyXG5pbXBvcnQgeyBLZWVwQWxpdmVTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2Uva2VlcC1hbGl2ZS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IGZpbHRlciB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xyXG5pbXBvcnQgeyBEcmF3ZXJTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2UvZHJhd2VyLnNlcnZpY2VcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcInJzLW11bHRpLXRhYlwiLFxyXG4gIHRlbXBsYXRlVXJsOiBcIi4vaW5kZXguY29tcG9uZW50Lmh0bWxcIixcclxuICBzdHlsZVVybHM6IFtcIi4vaW5kZXguY29tcG9uZW50LnNjc3NcIl0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNdWx0aVRhYkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwdWJsaWMgY2Y6IENvbW1vbkZ1bmN0aW9uU2VydmljZSxcclxuICAgIHB1YmxpYyBhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUsXHJcbiAgICBwdWJsaWMga2VlcEFsaXZlOiBLZWVwQWxpdmVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWY6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSBkcmF3ZXI6IERyYXdlclNlcnZpY2VcclxuICApIHt9XHJcbiAgQElucHV0KCkgc2luZ2xlUmV1c2VVcmxzOiBzdHJpbmdbXSA9IFtdOyAvL+WPquiDveWNleS4que8k+WtmOeahHVybFxyXG5cclxuICBUQUJfV0lEVEggPSAxNjQ7XHJcbiAgR0FQX05PUk1BTCA9IDU0O1xyXG4gIEdBUF9TTUFMTCA9IDMwO1xyXG4gIHRleHRHYXA7IC8vIOaWh+acrOS4jui+ueahhueahOaAu+mXtOi3nVxyXG4gIGZvbzogUm91dGVyT3V0bGV0O1xyXG4gIGNvbVJlZjogYW55O1xyXG4gIHRhYkxpc3QgPSBbXTtcclxuICBzZWxlY3RlZFRhYjogbnVtYmVyID0gMDtcclxuICBtYXhUYWJzOiBudW1iZXIgPSAxMDtcclxuICBzY3JlZW5XaWR0aDogbnVtYmVyID0gd2luZG93LmlubmVyV2lkdGg7IC8vIOWIneWni+WMluWxj+W5leWuveW6plxyXG4gIEBIb3N0TGlzdGVuZXIoXCJ3aW5kb3c6cmVzaXplXCIsIFtcIiRldmVudFwiXSlcclxuICBvblJlc2l6ZShldmVudCkge1xyXG4gICAgdGhpcy5zY3JlZW5XaWR0aCA9IHdpbmRvdy5pbm5lcldpZHRoOyAvLyDmm7TmlrDlsY/luZXlrr3luqZcclxuICAgIHRoaXMuc2V0RWxsaXBzaXNUaXRsZSgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmluaXRUYWIoKTtcclxuICAgIC8vIOino+WGs+WIt+aWsOmhtemdouWQju+8jOmAieS4reeahCB0YWIg5Lii5aSx6Zeu6aKYXHJcbiAgICBjb25zdCBpc0V4aXN0SWR4ID0gdGhpcy50YWJMaXN0LmZpbmRJbmRleChcclxuICAgICAgKGVsZSkgPT4gZWxlLnVybCA9PT0gdGhpcy5yb3V0ZXIudXJsXHJcbiAgICApO1xyXG4gICAgaWYgKGlzRXhpc3RJZHggIT09IC0xKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRUYWIgPSBpc0V4aXN0SWR4O1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMucm91dGVyLmV2ZW50c1xyXG4gICAgICAucGlwZShmaWx0ZXIoKGV2ZW50KSA9PiBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpKVxyXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICBjb25zdCBuYXZpZ2F0aW9uID0gdGhpcy5yb3V0ZXIuZ2V0Q3VycmVudE5hdmlnYXRpb24oKTsgLy8g6I635Y+W5b2T5YmN5a+86IiqXHJcbiAgICAgICAgaWYgKG5hdmlnYXRpb24pIHtcclxuICAgICAgICAgIGNvbnN0IHN0YXRlID0gbmF2aWdhdGlvbi5leHRyYXMuc3RhdGU7IC8vIOiOt+WPluS8oOmAkueahCBzdGF0ZVxyXG4gICAgICAgICAgY29uc3Qgc2tpcExvY2F0aW9uQ2hhbmdlID0gbmF2aWdhdGlvbi5leHRyYXMuc2tpcExvY2F0aW9uQ2hhbmdlOyAvLyDojrflj5bmmK/lkKbot7Pov4cgbG9jYXRpb24gY2hhbmdlXHJcbiAgICAgICAgICBjb25zdCBjdXJyZW50Um91dGUgPSB0aGlzLnJvdXRlci5yb3V0ZXJTdGF0ZS5yb290LmZpcnN0Q2hpbGQ7XHJcbiAgICAgICAgICBpZiAoY3VycmVudFJvdXRlICYmICFza2lwTG9jYXRpb25DaGFuZ2UpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMudGFiTGlzdC5sZW5ndGggPT09IDAgJiYgIXN0YXRlKSB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIC8vIOWIneWni+WMluesrOS4gOS4qnVybOS4jeWKoOWFpW11bHRpLXRhYlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuc2V0VGFiKFxyXG4gICAgICAgICAgICAgIHRoaXMucm91dGVyLnVybCxcclxuICAgICAgICAgICAgICBjdXJyZW50Um91dGUuc25hcHNob3Qucm91dGVDb25maWcucGF0aCxcclxuICAgICAgICAgICAgICBzdGF0ZSAmJiBzdGF0ZS50aXRsZVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB0aGlzLnNldEVsbGlwc2lzVGl0bGUoKTtcclxuICB9XHJcblxyXG4gIHNldEVsbGlwc2lzVGl0bGUodGl0bGU/KSB7XHJcbiAgICB0aGlzLnRleHRHYXAgPSB0aGlzLkdBUF9OT1JNQUw7XHJcbiAgICBpZiAodGhpcy5zY3JlZW5XaWR0aCA8PSAxMTAwKSB7XHJcbiAgICAgIHRoaXMudGV4dEdhcCA9IHRoaXMuR0FQX1NNQUxMO1xyXG4gICAgfVxyXG4gICAgbGV0IHsgYWxsV2lkdGgsIGxlZnRXaWR0aCwgcmlnaHRXaWR0aCB9ID0gdGhpcy5jYWxjVGFiV2lkdGgoKTtcclxuICAgIGxldCB3aWR0aCA9IE1hdGguZmxvb3IoXHJcbiAgICAgIChhbGxXaWR0aCAtIHJpZ2h0V2lkdGgpIC8gKHRoaXMudGFiTGlzdCAmJiB0aGlzLnRhYkxpc3QubGVuZ3RoKVxyXG4gICAgKTtcclxuXHJcbiAgICBpZiAodGl0bGUpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuY2Yuc2V0TWlkZGxlRWxsaXBzaXMoXHJcbiAgICAgICAgdGl0bGUsXHJcbiAgICAgICAgd2lkdGggPiB0aGlzLlRBQl9XSURUSFxyXG4gICAgICAgICAgPyB0aGlzLlRBQl9XSURUSCAtIHRoaXMudGV4dEdhcFxyXG4gICAgICAgICAgOiB3aWR0aCAtIHRoaXMudGV4dEdhcCxcclxuICAgICAgICAxMlxyXG4gICAgICApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy50YWJMaXN0LmZvckVhY2goKGVsZSwgaWR4KSA9PiB7XHJcbiAgICAgICAgZWxlLmRpc3BsYXlUaXRsZSA9IHRoaXMuY2Yuc2V0TWlkZGxlRWxsaXBzaXMoXHJcbiAgICAgICAgICBlbGUudGl0bGUsXHJcbiAgICAgICAgICB3aWR0aCA+IHRoaXMuVEFCX1dJRFRIXHJcbiAgICAgICAgICAgID8gdGhpcy5UQUJfV0lEVEggLSB0aGlzLnRleHRHYXBcclxuICAgICAgICAgICAgOiB3aWR0aCAtIHRoaXMudGV4dEdhcCxcclxuICAgICAgICAgIDEyXHJcbiAgICAgICAgKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjYWxjVGFiV2lkdGgoKSB7XHJcbiAgICBjb25zdCB3cmFwID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihcIi5ycy1tdWx0aS10YWJcIik7XHJcbiAgICBjb25zdCB1bEVsZW1lbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKFwiLnJzLW11bHRpLXRhYiA+IHVsXCIpO1xyXG4gICAgY29uc3QgcmVmcmVzaFRhYkRpdiA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoXCIucnMtbXVsdGktdGFiIC5yZWZyZXNoLXRhYlwiKTtcclxuICAgIGxldCBhbGxXaWR0aDtcclxuICAgIGxldCBsZWZ0V2lkdGg7XHJcbiAgICBsZXQgcmlnaHRXaWR0aDtcclxuICAgIGlmICh3cmFwICYmIHVsRWxlbWVudCAmJiByZWZyZXNoVGFiRGl2KSB7XHJcbiAgICAgIC8vIOiOt+WPluWFg+e0oOeahOS9jee9ruS/oeaBr1xyXG4gICAgICBjb25zdCB3cmFwUmVjdCA9IHdyYXAuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcbiAgICAgIGNvbnN0IHVsUmVjdCA9IHVsRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgICAgY29uc3QgcmVmcmVzaFRhYlJlY3QgPSByZWZyZXNoVGFiRGl2LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG4gICAgICBhbGxXaWR0aCA9IHdyYXBSZWN0LndpZHRoO1xyXG4gICAgICBsZWZ0V2lkdGggPSB1bFJlY3Qud2lkdGg7XHJcbiAgICAgIHJpZ2h0V2lkdGggPSByZWZyZXNoVGFiUmVjdC53aWR0aDtcclxuICAgIH1cclxuICAgIHJldHVybiB7XHJcbiAgICAgIGFsbFdpZHRoLFxyXG4gICAgICBsZWZ0V2lkdGgsXHJcbiAgICAgIHJpZ2h0V2lkdGgsXHJcbiAgICB9O1xyXG4gIH1cclxuICBpbml0VGFiKCkge1xyXG4gICAgbGV0IFRhYkNhY2hlID0gSlNPTi5wYXJzZShzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKFwiVGFiQ2FjaGVcIikpO1xyXG4gICAgdGhpcy50YWJMaXN0ID0gVGFiQ2FjaGUgfHwgW107XHJcbiAgfVxyXG5cclxuICBjbG9zZVRhYih0YWIsIGlkeCkge1xyXG4gICAgdGhpcy50YWJMaXN0ID0gdGhpcy50YWJMaXN0LmZpbHRlcigoZWxlKSA9PiBlbGUudXJsICE9PSB0YWIudXJsKTtcclxuICAgIHRoaXMuY2xlYXJDYWNoZSh0YWIudXJsKTtcclxuICAgIGlmICh0aGlzLnNlbGVjdGVkVGFiID09PSBpZHgpIHtcclxuICAgICAgY29uc3QgdGFyZ2V0SWR4ID0gTWF0aC5tYXgoMCwgaWR4IC0gMSk7XHJcbiAgICAgIHRoaXMuY2hhbmdlVGFiKHRoaXMudGFiTGlzdFt0YXJnZXRJZHhdLCB0YXJnZXRJZHgpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zZXRFbGxpcHNpc1RpdGxlKCk7XHJcbiAgICBzZXNzaW9uU3RvcmFnZS5zZXRJdGVtKFwiVGFiQ2FjaGVcIiwgSlNPTi5zdHJpbmdpZnkodGhpcy50YWJMaXN0KSk7XHJcbiAgICB0aGlzLnJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICB9XHJcblxyXG4gIGNoYW5nZVRhYih0YWIsIGlkeCkge1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybCh0YWIudXJsKTtcclxuICAgIHRoaXMuc2VsZWN0ZWRUYWIgPSBpZHg7XHJcbiAgICB0aGlzLnJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICB9XHJcblxyXG4gIGFkZFRhYih1cmwsIHRpdGxlKSB7XHJcbiAgICBpZiAodGhpcy50YWJMaXN0Lmxlbmd0aCA+PSB0aGlzLm1heFRhYnMpIHtcclxuICAgICAgdGhpcy5jbG9zZVRhYih0aGlzLnRhYkxpc3RbMF0sIDApOyAvLyDliKDpmaTnrKzkuIDkuKpcclxuICAgIH1cclxuICAgIHRoaXMudGFiTGlzdC5wdXNoKHtcclxuICAgICAgdXJsOiB1cmwsXHJcbiAgICAgIHRpdGxlOiB0aXRsZSB8fCBcImRlZmF1bHRcIixcclxuICAgICAgZGlzcGxheVRpdGxlOiB0aGlzLnNldEVsbGlwc2lzVGl0bGUodGl0bGUgfHwgXCJkZWZhdWx0XCIpLFxyXG4gICAgfSk7XHJcbiAgICB0aGlzLnNlbGVjdGVkVGFiID0gdGhpcy50YWJMaXN0Lmxlbmd0aCAtIDE7XHJcbiAgICB0aGlzLnNldEVsbGlwc2lzVGl0bGUoKTtcclxuICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0oXCJUYWJDYWNoZVwiLCBKU09OLnN0cmluZ2lmeSh0aGlzLnRhYkxpc3QpKTtcclxuICAgIHRoaXMucmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldFRhYih1cmwsIHB1cmVVcmw/LCB0aXRsZT8pIHtcclxuICAgIGNvbnN0IGlzRXhpc3RJZHggPSB0aGlzLnRhYkxpc3QuZmluZEluZGV4KChlbGUpID0+IGVsZS51cmwgPT09IHVybCk7XHJcbiAgICBpZiAoaXNFeGlzdElkeCA9PT0gLTEpIHtcclxuICAgICAgY29uc3Qgc2luZ2xlSWR4ID0gdGhpcy5zaW5nbGVSZXVzZVVybHMuZmluZEluZGV4KFxyXG4gICAgICAgIChlbGUpID0+IGVsZSA9PT0gcHVyZVVybFxyXG4gICAgICApO1xyXG4gICAgICBpZiAoc2luZ2xlSWR4ICE9PSAtMSkge1xyXG4gICAgICAgIHRoaXMudGFiTGlzdCA9IHRoaXMudGFiTGlzdC5maWx0ZXIoXHJcbiAgICAgICAgICAoZWxlKSA9PiAhZWxlLnVybC5pbmNsdWRlcyh0aGlzLnNpbmdsZVJldXNlVXJsc1tzaW5nbGVJZHhdKVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgdGhpcy5rZWVwQWxpdmUuY2xlYXJDYWNoZSh1cmwpO1xyXG4gICAgICAgIHRoaXMuZHJhd2VyLmRlbGV0ZUNhY2hlKHVybCk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5hZGRUYWIodXJsLCB0aXRsZSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkVGFiID0gaXNFeGlzdElkeDtcclxuICAgICAgdGhpcy5yZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZWZyZXNoVGFiKCkge1xyXG4gICAgdGhpcy5rZWVwQWxpdmUuY2xlYXJDYWNoZSh0aGlzLnRhYkxpc3RbdGhpcy5zZWxlY3RlZFRhYl0udXJsKTtcclxuICAgIHRoaXMuZHJhd2VyLmRlbGV0ZUNhY2hlKHRoaXMudGFiTGlzdFt0aGlzLnNlbGVjdGVkVGFiXS51cmwpO1xyXG4gICAgY29uc3QgY3VycmVudFVybCA9IHRoaXMucm91dGVyLnVybDsgLy8g6I635Y+W5b2T5YmNIFVSTFxyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybChcIi9cIiwgeyBza2lwTG9jYXRpb25DaGFuZ2U6IHRydWUgfSkudGhlbigoKSA9PiB7XHJcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoY3VycmVudFVybCk7IC8vIOmHjeaWsOWvvOiIquWIsOW9k+WJjSBVUkxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgY2xlYXJDYWNoZSh1cmwpIHtcclxuICAgIHRoaXMua2VlcEFsaXZlLmNsZWFyQ2FjaGUodXJsKTsgLy8g6LCD55So6Ieq5a6a5LmJ562W55Wl55qE5riF6Zmk57yT5a2Y5pa55rOVXHJcbiAgICB0aGlzLmRyYXdlci5kZWxldGVDYWNoZSh1cmwpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -5,8 +5,13 @@
5
5
  */
6
6
  // 组件类
7
7
  import { Component, EventEmitter, Input, Output, } from "@angular/core";
8
+ import { TranslationService } from "../../service/translation.service";
8
9
  export class RSHeaderComponent {
9
- constructor() {
10
+ /**
11
+ * @param {?} translationService
12
+ */
13
+ constructor(translationService) {
14
+ this.translationService = translationService;
10
15
  this.isCollapsed = false; // 接收输入属性
11
16
  // 接收输入属性
12
17
  this.lastLoginTime = new Date();
@@ -22,7 +27,7 @@ export class RSHeaderComponent {
22
27
  this._langOptions = options;
23
28
  if (options && options.length > 0) {
24
29
  /** @type {?} */
25
- const languageCode = localStorage.getItem("language");
30
+ const languageCode = localStorage.getItem("language") || "en";
26
31
  this.currentLang = options.find((/**
27
32
  * @param {?} e
28
33
  * @return {?}
@@ -43,10 +48,13 @@ export class RSHeaderComponent {
43
48
  this.translation = JSON.parse(localStorage.getItem("translation")) || {};
44
49
  }
45
50
  /**
51
+ * @param {?=} isCollapsed
46
52
  * @return {?}
47
53
  */
48
- onToggleMenu() {
49
- this.toggleMenu.emit(!this.isCollapsed);
54
+ onToggleMenu(isCollapsed) {
55
+ /** @type {?} */
56
+ const collapseState = isCollapsed !== undefined ? isCollapsed : !this.isCollapsed;
57
+ this.toggleMenu.emit(collapseState);
50
58
  }
51
59
  /**
52
60
  * @param {?} event
@@ -58,6 +66,7 @@ export class RSHeaderComponent {
58
66
  * @return {?}
59
67
  */
60
68
  (item) => item.text === event.item.text));
69
+ this.translationService.getTranslation(this.currentLang.languageCode);
61
70
  this.changeLanguage.emit(this.currentLang.languageCode);
62
71
  }
63
72
  }
@@ -68,6 +77,10 @@ RSHeaderComponent.decorators = [
68
77
  styles: [".rs-header{height:50px;background-color:var(--rs-container-bg);display:flex;justify-content:space-between}.rs-header .logo-wrap{width:240px;display:flex;padding:12px 0 0 20px}.rs-header .logo-wrap .toggle-menu-wrap{cursor:pointer;margin-right:8px}.rs-header .logo-wrap .logo{width:77px;height:32px}.rs-header .content-header-wrap{display:flex;justify-content:space-between;align-items:center;flex:1}.rs-header .bread-crumbs-wrap{padding-left:16px}.rs-header .rs-toolbar-wrap,.rs-header .rs-toolbar-wrap .quick-icon-group{display:flex;align-items:center}.rs-header .rs-toolbar-wrap .quick-icon-group ::ng-deep .header-icon{width:24px;height:24px;display:flex;justify-content:center;align-items:center;margin-right:24px;cursor:pointer}.rs-header .rs-toolbar-wrap .quick-icon-group ::ng-deep .header-icon svg{width:16px;height:16px;color:#6c7c90;stroke:#6c7c90}.rs-header .rs-toolbar-wrap .quick-icon-group ::ng-deep .header-icon:hover{border-radius:4px;background:rgba(31,123,255,.04)}.rs-header .rs-toolbar-wrap .quick-icon-group ::ng-deep .header-icon:hover svg{color:#1f7bff;stroke:#1f7bff}.rs-header .rs-toolbar-wrap .line{width:1px;height:24px;background-color:var(--rs-border-color)}.rs-header .rs-toolbar-wrap .langulage-wrap{padding:0 16px}.rs-header .rs-toolbar-wrap .last-login-wrap{padding:0 16px;color:var(--rs-labels-color);font-size:11px;font-weight:400;line-height:1}.rs-header .rs-toolbar-wrap .user-info-wrap{padding:0 20px 0 16px}"]
69
78
  }] }
70
79
  ];
80
+ /** @nocollapse */
81
+ RSHeaderComponent.ctorParameters = () => [
82
+ { type: TranslationService }
83
+ ];
71
84
  RSHeaderComponent.propDecorators = {
72
85
  isCollapsed: [{ type: Input }],
73
86
  lastLoginTime: [{ type: Input }],
@@ -93,5 +106,7 @@ if (false) {
93
106
  RSHeaderComponent.prototype.currentLang;
94
107
  /** @type {?} */
95
108
  RSHeaderComponent.prototype.translation;
109
+ /** @type {?} */
110
+ RSHeaderComponent.prototype.translationService;
96
111
  }
97
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vcmFpc2UtY29tbW9uLWxpYi8iLCJzb3VyY2VzIjpbImxpYi9sYXlvdXQvcnMtaGVhZGVyL2luZGV4LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQSxPQUFPLEVBQ0wsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBT3ZCLE1BQU0sT0FBTyxpQkFBaUI7SUFMOUI7UUFNVyxnQkFBVyxHQUFZLEtBQUssQ0FBQyxDQUFDLFNBQVM7O1FBRXZDLGtCQUFhLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQWdCcEMsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFHaEMsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRTVCLGlCQUFZLEdBQUcsRUFBRSxDQUFDO0lBbUI1QixDQUFDOzs7OztJQXRDQyxJQUNJLFdBQVcsQ0FBQyxPQUFjO1FBQzVCLElBQUksQ0FBQyxZQUFZLEdBQUcsT0FBTyxDQUFDO1FBQzVCLElBQUksT0FBTyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFOztrQkFDM0IsWUFBWSxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDO1lBQ3JELElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDLElBQUk7Ozs7WUFBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFlBQVksS0FBSyxZQUFZLEVBQUMsQ0FBQztTQUN6RTtJQUNILENBQUM7Ozs7SUFFRCxJQUFJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQzs7OztJQWFELFFBQVE7UUFDTixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMzRSxDQUFDOzs7O0lBRUQsWUFBWTtRQUNWLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzFDLENBQUM7Ozs7O0lBRUQsY0FBYyxDQUFDLEtBQUs7UUFDbEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUk7Ozs7UUFDdEMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQ3hDLENBQUM7UUFDRixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzFELENBQUM7OztZQS9DRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLFdBQVc7Z0JBQ3JCLHk3Q0FBcUM7O2FBRXRDOzs7MEJBRUUsS0FBSzs0QkFFTCxLQUFLOzBCQUVMLEtBQUs7eUJBYUwsTUFBTTs2QkFHTixNQUFNOzs7O0lBcEJQLHdDQUFzQzs7SUFFdEMsMENBQW9DOztJQWVwQyx1Q0FDZ0M7O0lBRWhDLDJDQUNvQzs7Ozs7SUFFcEMseUNBQTBCOztJQUUxQix3Q0FBaUI7O0lBQ2pCLHdDQUFtQiIsInNvdXJjZXNDb250ZW50IjpbIi8vIOe7hOS7tuexu1xyXG5pbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBDb250ZW50Q2hpbGQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE9uSW5pdCxcclxuICBPdXRwdXQsXHJcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcInJzLWhlYWRlclwiLFxyXG4gIHRlbXBsYXRlVXJsOiBcIi4vaW5kZXguY29tcG9uZW50Lmh0bWxcIixcclxuICBzdHlsZVVybHM6IFtcIi4vaW5kZXguY29tcG9uZW50LnNjc3NcIl0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSU0hlYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgaXNDb2xsYXBzZWQ6IGJvb2xlYW4gPSBmYWxzZTsgLy8g5o6l5pS26L6T5YWl5bGe5oCnXHJcblxyXG4gIEBJbnB1dCgpIGxhc3RMb2dpblRpbWUgPSBuZXcgRGF0ZSgpO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHNldCBsYW5nT3B0aW9ucyhvcHRpb25zOiBhbnlbXSkge1xyXG4gICAgdGhpcy5fbGFuZ09wdGlvbnMgPSBvcHRpb25zO1xyXG4gICAgaWYgKG9wdGlvbnMgJiYgb3B0aW9ucy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGNvbnN0IGxhbmd1YWdlQ29kZSA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwibGFuZ3VhZ2VcIik7XHJcbiAgICAgIHRoaXMuY3VycmVudExhbmcgPSBvcHRpb25zLmZpbmQoKGUpID0+IGUubGFuZ3VhZ2VDb2RlID09PSBsYW5ndWFnZUNvZGUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0IGxhbmdPcHRpb25zKCk6IGFueVtdIHtcclxuICAgIHJldHVybiB0aGlzLl9sYW5nT3B0aW9ucztcclxuICB9XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHRvZ2dsZU1lbnUgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIGNoYW5nZUxhbmd1YWdlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBwcml2YXRlIF9sYW5nT3B0aW9ucyA9IFtdO1xyXG5cclxuICBjdXJyZW50TGFuZzogYW55O1xyXG4gIHB1YmxpYyB0cmFuc2xhdGlvbjtcclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnRyYW5zbGF0aW9uID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcInRyYW5zbGF0aW9uXCIpKSB8fCB7fTtcclxuICB9XHJcblxyXG4gIG9uVG9nZ2xlTWVudSgpIHtcclxuICAgIHRoaXMudG9nZ2xlTWVudS5lbWl0KCF0aGlzLmlzQ29sbGFwc2VkKTtcclxuICB9XHJcblxyXG4gIHNlbGVjdExhbmd1YWdlKGV2ZW50KSB7XHJcbiAgICB0aGlzLmN1cnJlbnRMYW5nID0gdGhpcy5sYW5nT3B0aW9ucy5maW5kKFxyXG4gICAgICAoaXRlbSkgPT4gaXRlbS50ZXh0ID09PSBldmVudC5pdGVtLnRleHRcclxuICAgICk7XHJcbiAgICB0aGlzLmNoYW5nZUxhbmd1YWdlLmVtaXQodGhpcy5jdXJyZW50TGFuZy5sYW5ndWFnZUNvZGUpO1xyXG4gIH1cclxufVxyXG4iXX0=
112
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vcmFpc2UtY29tbW9uLWxpYi8iLCJzb3VyY2VzIjpbImxpYi9sYXlvdXQvcnMtaGVhZGVyL2luZGV4LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQSxPQUFPLEVBQ0wsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBTXZFLE1BQU0sT0FBTyxpQkFBaUI7Ozs7SUFDNUIsWUFBbUIsa0JBQXNDO1FBQXRDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFFaEQsZ0JBQVcsR0FBWSxLQUFLLENBQUMsQ0FBQyxTQUFTOztRQUV2QyxrQkFBYSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7UUFnQnBDLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBR2hDLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUU1QixpQkFBWSxHQUFHLEVBQUUsQ0FBQztJQXpCa0MsQ0FBQzs7Ozs7SUFNN0QsSUFDSSxXQUFXLENBQUMsT0FBYztRQUM1QixJQUFJLENBQUMsWUFBWSxHQUFHLE9BQU8sQ0FBQztRQUM1QixJQUFJLE9BQU8sSUFBSSxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTs7a0JBQzNCLFlBQVksR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLElBQUk7WUFDN0QsSUFBSSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsSUFBSTs7OztZQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsWUFBWSxLQUFLLFlBQVksRUFBQyxDQUFDO1NBQ3pFO0lBQ0gsQ0FBQzs7OztJQUVELElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDOzs7O0lBYUQsUUFBUTtRQUNOLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzNFLENBQUM7Ozs7O0lBRUQsWUFBWSxDQUFDLFdBQXFCOztjQUMxQixhQUFhLEdBQUcsV0FBVyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXO1FBQ2pGLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7Ozs7O0lBRUQsY0FBYyxDQUFDLEtBQUs7UUFDbEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUk7Ozs7UUFDdEMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQ3hDLENBQUM7UUFDRixJQUFJLENBQUMsa0JBQWtCLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDdEUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUMxRCxDQUFDOzs7WUFuREYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxXQUFXO2dCQUNyQix5N0NBQXFDOzthQUV0Qzs7OztZQUxRLGtCQUFrQjs7OzBCQVN4QixLQUFLOzRCQUVMLEtBQUs7MEJBRUwsS0FBSzt5QkFhTCxNQUFNOzZCQUdOLE1BQU07Ozs7SUFwQlAsd0NBQXNDOztJQUV0QywwQ0FBb0M7O0lBZXBDLHVDQUNnQzs7SUFFaEMsMkNBQ29DOzs7OztJQUVwQyx5Q0FBMEI7O0lBRTFCLHdDQUFpQjs7SUFDakIsd0NBQW1COztJQTVCUCwrQ0FBNkMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyDnu4Tku7bnsbtcclxuaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgQ29udGVudENoaWxkLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFRyYW5zbGF0aW9uU2VydmljZSB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL3RyYW5zbGF0aW9uLnNlcnZpY2VcIjtcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwicnMtaGVhZGVyXCIsXHJcbiAgdGVtcGxhdGVVcmw6IFwiLi9pbmRleC5jb21wb25lbnQuaHRtbFwiLFxyXG4gIHN0eWxlVXJsczogW1wiLi9pbmRleC5jb21wb25lbnQuc2Nzc1wiXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFJTSGVhZGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgdHJhbnNsYXRpb25TZXJ2aWNlOiBUcmFuc2xhdGlvblNlcnZpY2UpIHt9XHJcblxyXG4gIEBJbnB1dCgpIGlzQ29sbGFwc2VkOiBib29sZWFuID0gZmFsc2U7IC8vIOaOpeaUtui+k+WFpeWxnuaAp1xyXG5cclxuICBASW5wdXQoKSBsYXN0TG9naW5UaW1lID0gbmV3IERhdGUoKTtcclxuXHJcbiAgQElucHV0KClcclxuICBzZXQgbGFuZ09wdGlvbnMob3B0aW9uczogYW55W10pIHtcclxuICAgIHRoaXMuX2xhbmdPcHRpb25zID0gb3B0aW9ucztcclxuICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMubGVuZ3RoID4gMCkge1xyXG4gICAgICBjb25zdCBsYW5ndWFnZUNvZGUgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcImxhbmd1YWdlXCIpIHx8IFwiZW5cIjtcclxuICAgICAgdGhpcy5jdXJyZW50TGFuZyA9IG9wdGlvbnMuZmluZCgoZSkgPT4gZS5sYW5ndWFnZUNvZGUgPT09IGxhbmd1YWdlQ29kZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXQgbGFuZ09wdGlvbnMoKTogYW55W10ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2xhbmdPcHRpb25zO1xyXG4gIH1cclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgdG9nZ2xlTWVudSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgY2hhbmdlTGFuZ3VhZ2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIHByaXZhdGUgX2xhbmdPcHRpb25zID0gW107XHJcblxyXG4gIGN1cnJlbnRMYW5nOiBhbnk7XHJcbiAgcHVibGljIHRyYW5zbGF0aW9uO1xyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMudHJhbnNsYXRpb24gPSBKU09OLnBhcnNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwidHJhbnNsYXRpb25cIikpIHx8IHt9O1xyXG4gIH1cclxuXHJcbiAgb25Ub2dnbGVNZW51KGlzQ29sbGFwc2VkPzogYm9vbGVhbikge1xyXG4gICAgY29uc3QgY29sbGFwc2VTdGF0ZSA9IGlzQ29sbGFwc2VkICE9PSB1bmRlZmluZWQgPyBpc0NvbGxhcHNlZCA6ICF0aGlzLmlzQ29sbGFwc2VkO1xyXG4gICAgdGhpcy50b2dnbGVNZW51LmVtaXQoY29sbGFwc2VTdGF0ZSk7XHJcbiAgfVxyXG5cclxuICBzZWxlY3RMYW5ndWFnZShldmVudCkge1xyXG4gICAgdGhpcy5jdXJyZW50TGFuZyA9IHRoaXMubGFuZ09wdGlvbnMuZmluZChcclxuICAgICAgKGl0ZW0pID0+IGl0ZW0udGV4dCA9PT0gZXZlbnQuaXRlbS50ZXh0XHJcbiAgICApO1xyXG4gICAgdGhpcy50cmFuc2xhdGlvblNlcnZpY2UuZ2V0VHJhbnNsYXRpb24odGhpcy5jdXJyZW50TGFuZy5sYW5ndWFnZUNvZGUpO1xyXG4gICAgdGhpcy5jaGFuZ2VMYW5ndWFnZS5lbWl0KHRoaXMuY3VycmVudExhbmcubGFuZ3VhZ2VDb2RlKTtcclxuICB9XHJcbn1cclxuIl19
@@ -3,7 +3,7 @@
3
3
  * Generated from: lib/raise-common-lib.module.ts
4
4
  * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
5
  */
6
- import { NgModule } from "@angular/core";
6
+ import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from "@angular/core";
7
7
  import { ReactiveFormsModule, FormsModule } from "@angular/forms";
8
8
  import { HttpClientModule } from "@angular/common/http";
9
9
  import { CommonModule } from "@angular/common";
@@ -29,6 +29,7 @@ import { CommonFunctionService } from "./service/common-function.service";
29
29
  import { IconLoaderService } from "./service/icon-loader.service";
30
30
  import { DialogService } from "./service/dialog.service";
31
31
  import { KeepAliveService } from "./service/keep-alive.service";
32
+ import { TranslationService } from "./service/translation.service";
32
33
  import { CommonGridComponent } from "./common-grid/index.component";
33
34
  import { FloatBoxComponent } from "./float-box/index.component";
34
35
  import { RsPageListComponent } from "./layout/page-list/index.component";
@@ -39,6 +40,7 @@ import { RSHeaderComponent } from "./layout/rs-header/index.component";
39
40
  import { RSFooterComponent } from "./layout/rs-footer/index.component";
40
41
  import { RSAsideComponent } from "./layout/rs-aside/index.component";
41
42
  import { MultiTabComponent } from "./layout/multi-tab/index.component";
43
+ import { DrawerComponent } from "./layout/drawer/index.component";
42
44
  import { TagInputComponent } from "./form/tag-input/index.component";
43
45
  import { RadioGroupComponent } from "./form/radio-group/index.component";
44
46
  import { CheckboxGroupComponent } from "./form/checkbox-group/index.component";
@@ -46,6 +48,8 @@ import { SwitchInputComponent } from "./form/switch-input/index.component";
46
48
  import { NewActionNotificationComponent } from "./dialog/new-action-notification/new-action-notification.component";
47
49
  import { CommonDialogComponent } from "./dialog/common-dialog/index.component";
48
50
  import { CommonDeleteComponent } from "./dialog/common-delete-dialog/index.component";
51
+ import { DrawerService } from "./service/drawer.service";
52
+ import { DrawerFormComponent } from "./form/drawer-form/drawer-form.component";
49
53
  export class RaiseCommonLibModule {
50
54
  }
51
55
  RaiseCommonLibModule.decorators = [
@@ -68,6 +72,8 @@ RaiseCommonLibModule.decorators = [
68
72
  NewActionNotificationComponent,
69
73
  CommonDialogComponent,
70
74
  CommonDeleteComponent,
75
+ DrawerComponent,
76
+ DrawerFormComponent,
71
77
  ],
72
78
  imports: [
73
79
  CommonModule,
@@ -148,6 +154,8 @@ RaiseCommonLibModule.decorators = [
148
154
  IconLoaderService,
149
155
  DialogService,
150
156
  KeepAliveService,
157
+ DrawerService,
158
+ TranslationService,
151
159
  ],
152
160
  exports: [
153
161
  CommonModule,
@@ -206,12 +214,15 @@ RaiseCommonLibModule.decorators = [
206
214
  RadioGroupComponent,
207
215
  CheckboxGroupComponent,
208
216
  SwitchInputComponent,
217
+ DrawerComponent,
218
+ DrawerFormComponent,
209
219
  ],
210
220
  entryComponents: [
211
221
  NewActionNotificationComponent,
212
222
  CommonDialogComponent,
213
223
  CommonDeleteComponent,
214
224
  ],
225
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
215
226
  },] }
216
227
  ];
217
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFpc2UtY29tbW9uLWxpYi5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9yYWlzZS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL3JhaXNlLWNvbW1vbi1saWIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFDTCxVQUFVLEVBQ1YsV0FBVyxFQUNYLFdBQVcsRUFDWCxhQUFhLEVBQ2Isa0JBQWtCLEVBQ2xCLFdBQVcsRUFDWCxhQUFhLEVBQ2IsY0FBYyxFQUNkLG9CQUFvQixFQUNwQixnQkFBZ0IsRUFDaEIsaUJBQWlCLEVBQ2pCLGdCQUFnQixFQUNoQixnQkFBZ0IsRUFDaEIsV0FBVyxFQUNYLFlBQVksRUFDWixhQUFhLEdBQ2QsTUFBTSwrQkFBK0IsQ0FBQztBQUN2QyxPQUFPLEVBQ0wsWUFBWSxFQUNaLGNBQWMsRUFDZCxpQkFBaUIsRUFDakIsWUFBWSxHQUNiLE1BQU0saUNBQWlDLENBQUM7QUFDekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDN0UsT0FBTyxFQUNMLGdCQUFnQixFQUNoQixxQkFBcUIsRUFDckIsb0JBQW9CLEdBQ3JCLE1BQU0sbUNBQW1DLENBQUM7QUFFM0MsT0FBTyxFQUNMLGFBQWEsRUFDYixpQkFBaUIsRUFDakIsY0FBYyxFQUNkLG9CQUFvQixHQUNyQixNQUFNLGdDQUFnQyxDQUFDO0FBQ3hDLE9BQU8sRUFDTCxrQkFBa0Is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O29CQUNmLG9CQUFvQjtvQkFDcEIsaUJBQWlCO29CQUNqQix1QkFBdUI7b0JBQ3ZCLG1CQUFtQjtvQkFDbkIsaUJBQWlCO29CQUNqQixtQkFBbUI7b0JBQ25CLGtCQUFrQjtvQkFDbEIsZ0JBQWdCO29CQUNoQixpQkFBaUI7b0JBQ2pCLGlCQUFpQjtvQkFDakIsZ0JBQWdCO29CQUNoQixpQkFBaUI7b0JBQ2pCLHNCQUFzQjtvQkFDdEIsaUJBQWlCO29CQUNqQixtQkFBbUI7b0JBQ25CLHNCQUFzQjtvQkFDdEIsb0JBQW9CO2lCQUNyQjtnQkFDRCxlQUFlLEVBQUU7b0JBQ2YsOEJBQThCO29CQUM5QixxQkFBcUI7b0JBQ3JCLHFCQUFxQjtpQkFDdEI7YUFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSwgRm9ybXNNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHsgSHR0cENsaWVudE1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XHJcblxyXG5pbXBvcnQge1xyXG4gIEdyaWRNb2R1bGUsXHJcbiAgUGFnZVNlcnZpY2UsXHJcbiAgU29ydFNlcnZpY2UsXHJcbiAgRmlsdGVyU2VydmljZSxcclxuICBFeGNlbEV4cG9ydFNlcnZpY2UsXHJcbiAgRWRpdFNlcnZpY2UsXHJcbiAgUmVzaXplU2VydmljZSxcclxuICBUb29sYmFyU2VydmljZSxcclxuICBDb2x1bW5DaG9vc2VyU2VydmljZSxcclxuICBBZ2dyZWdhdGVTZXJ2aWNlLFxyXG4gIENvbHVtbk1lbnVTZXJ2aWNlLFxyXG4gIERldGFpbFJvd1NlcnZpY2UsXHJcbiAgU2VsZWN0aW9uU2VydmljZSxcclxuICBQYWdlck1vZHVsZSxcclxuICBHcm91cFNlcnZpY2UsXHJcbiAgR3JpZEFsbE1vZHVsZSxcclxufSBmcm9tIFwiQHN5bmNmdXNpb24vZWoyLWFuZ3VsYXItZ3JpZHNcIjtcclxuaW1wb3J0IHtcclxuICBTd2l0Y2hNb2R1bGUsXHJcbiAgQ2hlY2tCb3hNb2R1bGUsXHJcbiAgUmFkaW9CdXR0b25Nb2R1bGUsXHJcbiAgQnV0dG9uTW9kdWxlLFxyXG59IGZyb20gXCJAc3luY2Z1c2lvbi9lajItYW5ndWxhci1idXR0b25zXCI7XHJcbmltcG9ydCB7IERpYWdyYW1Nb2R1bGUgfSBmcm9tIFwiQHN5bmNmdXNpb24vZWoyLWFuZ3VsYXItZGlhZ3JhbXNcIjtcclxuaW1wb3J0IHsgVG9vbHRpcE1vZHVsZSwgRGlhbG9nTW9kdWxlIH0gZnJvbSBcIkBzeW5jZnVzaW9uL2VqMi1hbmd1bGFyLXBvcHVwc1wiO1xyXG5pbXBvcnQge1xyXG4gIERhdGVQaWNrZXJNb2R1bGUsXHJcbiAgRGF0ZVJhbmdlUGlja2VyTW9kdWxlLFxyXG4gIERhdGVUaW1lUGlja2VyTW9kdWxlLFxyXG59IGZyb20gXCJAc3luY2Z1c2lvbi9lajItYW5ndWxhci1jYWxlbmRhcnNcIjtcclxuXHJcbmltcG9ydCB7XHJcbiAgVGV4dEJveE1vZHVsZSxcclxuICBDb2xvclBpY2tlck1vZHVsZSxcclxuICBVcGxvYWRlck1vZHVsZSxcclxuICBOdW1lcmljVGV4dEJveE1vZHVsZSxcclxufSBmcm9tIFwiQHN5bmNmdXNpb24vZWoyLWFuZ3VsYXItaW5wdXRzXCI7XHJcbmltcG9ydCB7XHJcbiAgRHJvcERvd25MaXN0TW9kdWxlLFxyXG4gIE11bHRpU2VsZWN0QWxsTW9kdWxlLFxyXG4gIEF1dG9Db21wbGV0ZU1vZHVsZSxcclxuICBEcm9wRG93blRyZWVNb2R1bGUsXHJcbiAgTGlzdEJveE1vZHVsZSxcclxufSBmcm9tIFwiQHN5bmNmdXNpb24vZWoyLWFuZ3VsYXItZHJvcGRvd25zXCI7XHJcbmltcG9ydCB7XHJcbiAgUGl2b3RWaWV3QWxsTW9kdWxlLFxyXG4gIFBpdm90RmllbGRMaXN0QWxsTW9kdWxlLFxyXG59IGZyb20gXCJAc3luY2Z1c2lvbi9lajItYW5ndWxhci1waXZvdHZpZXdcIjtcclxuaW1wb3J0IHtcclxuICBDaGFydEFsbE1vZHVsZSxcclxuICBBY2N1bXVsYXRpb25DaGFydEFsbE1vZHVsZSxcclxuICBSYW5nZU5hdmlnYXRvckFsbE1vZHVsZSxcclxuICBBY2N1bXVsYXRpb25DaGFydE1vZHVsZSxcclxuICBQaWVTZXJpZXNTZXJ2aWNlLFxyXG4gIEFjY3VtdWxhdGlvbkxlZ2VuZFNlcnZpY2UsXHJcbiAgQWNjdW11bGF0aW9uVG9vbHRpcFNlcnZpY2UsXHJcbiAgQWNjdW11bGF0aW9uQW5ub3RhdGlvblNlcnZpY2UsXHJcbiAgQWNjdW11bGF0aW9uRGF0YUxhYmVsU2VydmljZSxcclxufSBmcm9tIFwiQHN5bmNmdXNpb24vZWoyLWFuZ3VsYXItY2hhcnRzXCI7XHJcbmltcG9ydCB7IERhc2hib2FyZExheW91dE1vZHVsZSB9IGZyb20gXCJAc3luY2Z1c2lvbi9lajItYW5ndWxhci1sYXlvdXRzXCI7XHJcbmltcG9ydCB7XHJcbiAgQ2Fyb3VzZWxBbGxNb2R1bGUsXHJcbiAgVG9vbGJhck1vZHVsZSxcclxuICBUYWJNb2R1bGUsXHJcbn0gZnJvbSBcIkBzeW5jZnVzaW9uL2VqMi1hbmd1bGFyLW5hdmlnYXRpb25zXCI7XHJcbmltcG9ydCB7XHJcbiAgUGRmVmlld2VyTW9kdWxlLFxyXG4gIExpbmtBbm5vdGF0aW9uU2VydmljZSxcclxuICBCb29rbWFya1ZpZXdTZXJ2aWNlLFxyXG4gIE1hZ25pZmljYXRpb25TZXJ2aWNlLFxyXG4gIFRodW1ibmFpbFZpZXdTZXJ2aWNlLFxyXG4gIFRvb2xiYXJTZXJ2aWNlIGFzIFBiZlRvb2xiYXJTZXJ2aWNlLFxyXG4gIE5hdmlnYXRpb25TZXJ2aWNlLFxyXG4gIFRleHRTZWFyY2hTZXJ2aWNlLFxyXG4gIFRleHRTZWxlY3Rpb25TZXJ2aWNlLFxyXG4gIFByaW50U2VydmljZSxcclxufSBmcm9tIFwiQHN5bmNmdXNpb24vZWoyLWFuZ3VsYXItcGRmdmlld2VyXCI7XHJcbmltcG9ydCB7XHJcbiAgRHJvcERvd25CdXR0b25Nb2R1bGUsXHJcbiAgU3BsaXRCdXR0b25Nb2R1bGUsXHJcbn0gZnJvbSBcIkBzeW5jZnVzaW9uL2VqMi1hbmd1bGFyLXNwbGl0YnV0dG9uc1wiO1xyXG5pbXBvcnQge1xyXG4gIFJpY2hUZXh0RWRpdG9yQWxsTW9kdWxlLFxyXG4gIEh0bWxFZGl0b3JTZXJ2aWNlLFxyXG4gIFRvb2xiYXJTZXJ2aWNlIGFzIFJpY2hFZGl0b3JUb29sYmFyU2VydmljZSxcclxufSBmcm9tIFwiQHN5bmNmdXNpb24vZWoyLWFuZ3VsYXItcmljaHRleHRlZGl0b3JcIjtcclxuXHJcbmltcG9ydCB7IE1hdFNuYWNrQmFyTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhclwiO1xyXG5pbXBvcnQgeyBNYXREaWFsb2dNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nXCI7XHJcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvblwiO1xyXG5cclxuLy8gc2VydmljZXNcclxuaW1wb3J0IHsgQ29tbW9uRnVuY3Rpb25TZXJ2aWNlIH0gZnJvbSBcIi4vc2VydmljZS9jb21tb24tZnVuY3Rpb24uc2VydmljZVwiO1xyXG5pbXBvcnQgeyBJY29uTG9hZGVyU2VydmljZSB9IGZyb20gXCIuL3NlcnZpY2UvaWNvbi1sb2FkZXIuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBEaWFsb2dTZXJ2aWNlIH0gZnJvbSBcIi4vc2VydmljZS9kaWFsb2cuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBLZWVwQWxpdmVTZXJ2aWNlIH0gZnJvbSBcIi4vc2VydmljZS9rZWVwLWFsaXZlLnNlcnZpY2VcIjtcclxuXHJcbmltcG9ydCB7IENvbW1vbkdyaWRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21tb24tZ3JpZC9pbmRleC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRmxvYXRCb3hDb21wb25lbnQgfSBmcm9tIFwiLi9mbG9hdC1ib3gvaW5kZXguY29tcG9uZW50XCI7XHJcblxyXG5pbXBvcnQgeyBSc1BhZ2VMaXN0Q29tcG9uZW50IH0gZnJvbSBcIi4vbGF5b3V0L3BhZ2UtbGlzdC9pbmRleC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgUnNQYWdlVGFiQ29tcG9uZW50IH0gZnJvbSBcIi4vbGF5b3V0L3BhZ2UtdGFiL2luZGV4LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBHcmlkQm94Q29tcG9uZW50IH0gZnJvbSBcIi4vbGF5b3V0L2dyaWQtYm94L2luZGV4LmNvbXBvbmVudFwiO1xyXG5cclxuaW1wb3J0IHsgTWFpbkNvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gXCIuL2xheW91dC9tYWluLWNvbnRhaW5lci9pbmRleC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgUlNIZWFkZXJDb21wb25lbnQgfSBmcm9tIFwiLi9sYXlvdXQvcnMtaGVhZGVyL2luZGV4LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBSU0Zvb3RlckNvbXBvbmVudCB9IGZyb20gXCIuL2xheW91dC9ycy1mb290ZXIvaW5kZXguY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFJTQXNpZGVDb21wb25lbnQgfSBmcm9tIFwiLi9sYXlvdXQvcnMtYXNpZGUvaW5kZXguY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IE11bHRpVGFiQ29tcG9uZW50IH0gZnJvbSBcIi4vbGF5b3V0L211bHRpLXRhYi9pbmRleC5jb21wb25lbnRcIjtcclxuXHJcbmltcG9ydCB7IFRhZ0lucHV0Q29tcG9uZW50IH0gZnJvbSBcIi4vZm9ybS90YWctaW5wdXQvaW5kZXguY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFJhZGlvR3JvdXBDb21wb25lbnQgfSBmcm9tIFwiLi9mb3JtL3JhZGlvLWdyb3VwL2luZGV4LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBDaGVja2JveEdyb3VwQ29tcG9uZW50IH0gZnJvbSBcIi4vZm9ybS9jaGVja2JveC1ncm91cC9pbmRleC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgU3dpdGNoSW5wdXRDb21wb25lbnQgfSBmcm9tIFwiLi9mb3JtL3N3aXRjaC1pbnB1dC9pbmRleC5jb21wb25lbnRcIjtcclxuXHJcbmltcG9ydCB7IE5ld0FjdGlvbk5vdGlmaWNhdGlvbkNvbXBvbmVudCB9IGZyb20gXCIuL2RpYWxvZy9uZXctYWN0aW9uLW5vdGlmaWNhdGlvbi9uZXctYWN0aW9uLW5vdGlmaWNhdGlvbi5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgQ29tbW9uRGlhbG9nQ29tcG9uZW50IH0gZnJvbSBcIi4vZGlhbG9nL2NvbW1vbi1kaWFsb2cvaW5kZXguY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IENvbW1vbkRlbGV0ZUNvbXBvbmVudCB9IGZyb20gXCIuL2RpYWxvZy9jb21tb24tZGVsZXRlLWRpYWxvZy9pbmRleC5jb21wb25lbnRcIjtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBDb21tb25HcmlkQ29tcG9uZW50LFxyXG4gICAgRmxvYXRCb3hDb21wb25lbnQsXHJcbiAgICBSc1BhZ2VMaXN0Q29tcG9uZW50LFxyXG4gICAgUnNQYWdlVGFiQ29tcG9uZW50LFxyXG4gICAgR3JpZEJveENvbXBvbmVudCxcclxuICAgIFJTSGVhZGVyQ29tcG9uZW50LFxyXG4gICAgUlNGb290ZXJDb21wb25lbnQsXHJcbiAgICBSU0FzaWRlQ29tcG9uZW50LFxyXG4gICAgTXVsdGlUYWJDb21wb25lbnQsXHJcbiAgICBNYWluQ29udGFpbmVyQ29tcG9uZW50LFxyXG4gICAgVGFnSW5wdXRDb21wb25lbnQsXHJcbiAgICBSYWRpb0dyb3VwQ29tcG9uZW50LFxyXG4gICAgQ2hlY2tib3hHcm91cENvbXBvbmVudCxcclxuICAgIFN3aXRjaElucHV0Q29tcG9uZW50LFxyXG4gICAgTmV3QWN0aW9uTm90aWZpY2F0aW9uQ29tcG9uZW50LFxyXG4gICAgQ29tbW9uRGlhbG9nQ29tcG9uZW50LFxyXG4gICAgQ29tbW9uRGVsZXRlQ29tcG9uZW50LFxyXG4gIF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgSHR0cENsaWVudE1vZHVsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIE1hdFNuYWNrQmFyTW9kdWxlLFxyXG4gICAgTWF0RGlhbG9nTW9kdWxlLFxyXG4gICAgTWF0SWNvbk1vZHVsZSxcclxuICAgIEdyaWRNb2R1bGUsXHJcbiAgICBQYWdlck1vZHVsZSxcclxuICAgIEdyaWRBbGxNb2R1bGUsXHJcbiAgICBTd2l0Y2hNb2R1bGUsXHJcbiAgICBDaGVja0JveE1vZHVsZSxcclxuICAgIFJhZGlvQnV0dG9uTW9kdWxlLFxyXG4gICAgQnV0dG9uTW9kdWxlLFxyXG4gICAgRGlhZ3JhbU1vZHVsZSxcclxuICAgIFRvb2x0aXBNb2R1bGUsXHJcbiAgICBEaWFsb2dNb2R1bGUsXHJcbiAgICBEYXRlUGlja2VyTW9kdWxlLFxyXG4gICAgRGF0ZVJhbmdlUGlja2VyTW9kdWxlLFxyXG4gICAgRGF0ZVRpbWVQaWNrZXJNb2R1bGUsXHJcbiAgICBUZXh0Qm94TW9kdWxlLFxyXG4gICAgQ29sb3JQaWNrZXJNb2R1bGUsXHJcbiAgICBVcGxvYWRlck1vZHVsZSxcclxuICAgIE51bWVyaWNUZXh0Qm94TW9kdWxlLFxyXG4gICAgRHJvcERvd25MaXN0TW9kdWxlLFxyXG4gICAgRHJvcERvd25UcmVlTW9kdWxlLFxyXG4gICAgTXVsdGlTZWxlY3RBbGxNb2R1bGUsXHJcbiAgICBBdXRvQ29tcGxldGVNb2R1bGUsXHJcbiAgICBMaXN0Qm94TW9kdWxlLFxyXG4gICAgUGl2b3RWaWV3QWxsTW9kdWxlLFxyXG4gICAgUGl2b3RGaWVsZExpc3RBbGxNb2R1bGUsXHJcbiAgICBDaGFydEFsbE1vZHVsZSxcclxuICAgIEFjY3VtdWxhdGlvbkNoYXJ0QWxsTW9kdWxlLFxyXG4gICAgUmFuZ2VOYXZpZ2F0b3JBbGxNb2R1bGUsXHJcbiAgICBBY2N1bXVsYXRpb25DaGFydE1vZHVsZSxcclxuICAgIERhc2hib2FyZExheW91dE1vZHVsZSxcclxuICAgIENhcm91c2VsQWxsTW9kdWxlLFxyXG4gICAgVG9vbGJhck1vZHVsZSxcclxuICAgIFRhYk1vZHVsZSxcclxuICAgIFBkZlZpZXdlck1vZHVsZSxcclxuICAgIERyb3BEb3duQnV0dG9uTW9kdWxlLFxyXG4gICAgU3BsaXRCdXR0b25Nb2R1bGUsXHJcbiAgICBSaWNoVGV4dEVkaXRvckFsbE1vZHVsZSxcclxuICBdLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAgUGFnZVNlcnZpY2UsXHJcbiAgICBTb3J0U2VydmljZSxcclxuICAgIEZpbHRlclNlcnZpY2UsXHJcbiAgICBFeGNlbEV4cG9ydFNlcnZpY2UsXHJcbiAgICBFZGl0U2VydmljZSxcclxuICAgIFJlc2l6ZVNlcnZpY2UsXHJcbiAgICBUb29sYmFyU2VydmljZSxcclxuICAgIENvbHVtbkNob29zZXJTZXJ2aWNlLFxyXG4gICAgQWdncmVnYXRlU2VydmljZSxcclxuICAgIENvbHVtbk1lbnVTZXJ2aWNlLFxyXG4gICAgRGV0YWlsUm93U2VydmljZSxcclxuICAgIFNlbGVjdGlvblNlcnZpY2UsXHJcbiAgICBHcm91cFNlcnZpY2UsXHJcbiAgICBQaWVTZXJpZXNTZXJ2aWNlLFxyXG4gICAgQWNjdW11bGF0aW9uTGVnZW5kU2VydmljZSxcclxuICAgIEFjY3VtdWxhdGlvblRvb2x0aXBTZXJ2aWNlLFxyXG4gICAgQWNjdW11bGF0aW9uQW5ub3RhdGlvblNlcnZpY2UsXHJcbiAgICBBY2N1bXVsYXRpb25EYXRhTGFiZWxTZXJ2aWNlLFxyXG4gICAgTGlua0Fubm90YXRpb25TZXJ2aWNlLFxyXG4gICAgQm9va21hcmtWaWV3U2VydmljZSxcclxuICAgIE1hZ25pZmljYXRpb25TZXJ2aWNlLFxyXG4gICAgVGh1bWJuYWlsVmlld1NlcnZpY2UsXHJcbiAgICBQYmZUb29sYmFyU2VydmljZSxcclxuICAgIE5hdmlnYXRpb25TZXJ2aWNlLFxyXG4gICAgVGV4dFNlYXJjaFNlcnZpY2UsXHJcbiAgICBUZXh0U2VsZWN0aW9uU2VydmljZSxcclxuICAgIFByaW50U2VydmljZSxcclxuICAgIEh0bWxFZGl0b3JTZXJ2aWNlLFxyXG4gICAgUmljaEVkaXRvclRvb2xiYXJTZXJ2aWNlLFxyXG5cclxuICAgIENvbW1vbkZ1bmN0aW9uU2VydmljZSxcclxuICAgIEljb25Mb2FkZXJTZXJ2aWNlLFxyXG4gICAgRGlhbG9nU2VydmljZSxcclxuICAgIEtlZXBBbGl2ZVNlcnZpY2UsXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBIdHRwQ2xpZW50TW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgTWF0U25hY2tCYXJNb2R1bGUsXHJcbiAgICBNYXREaWFsb2dNb2R1bGUsXHJcbiAgICBHcmlkTW9kdWxlLFxyXG4gICAgUGFnZXJNb2R1bGUsXHJcbiAgICBHcmlkQWxsTW9kdWxlLFxyXG4gICAgU3dpdGNoTW9kdWxlLFxyXG4gICAgQ2hlY2tCb3hNb2R1bGUsXHJcbiAgICBSYWRpb0J1dHRvbk1vZHVsZSxcclxuICAgIEJ1dHRvbk1vZHVsZSxcclxuICAgIERpYWdyYW1Nb2R1bGUsXHJcbiAgICBUb29sdGlwTW9kdWxlLFxyXG4gICAgRGlhbG9nTW9kdWxlLFxyXG4gICAgRGF0ZVBpY2tlck1vZHVsZSxcclxuICAgIERhdGVSYW5nZVBpY2tlck1vZHVsZSxcclxuICAgIERhdGVUaW1lUGlja2VyTW9kdWxlLFxyXG4gICAgVGV4dEJveE1vZHVsZSxcclxuICAgIENvbG9yUGlja2VyTW9kdWxlLFxyXG4gICAgVXBsb2FkZXJNb2R1bGUsXHJcbiAgICBOdW1lcmljVGV4dEJveE1vZHVsZSxcclxuICAgIERyb3BEb3duTGlzdE1vZHVsZSxcclxuICAgIERyb3BEb3duVHJlZU1vZHVsZSxcclxuICAgIE11bHRpU2VsZWN0QWxsTW9kdWxlLFxyXG4gICAgQXV0b0NvbXBsZXRlTW9kdWxlLFxyXG4gICAgTGlzdEJveE1vZHVsZSxcclxuICAgIFBpdm90Vmlld0FsbE1vZHVsZSxcclxuICAgIFBpdm90RmllbGRMaXN0QWxsTW9kdWxlLFxyXG4gICAgQ2hhcnRBbGxNb2R1bGUsXHJcbiAgICBBY2N1bXVsYXRpb25DaGFydEFsbE1vZHVsZSxcclxuICAgIFJhbmdlTmF2aWdhdG9yQWxsTW9kdWxlLFxyXG4gICAgQWNjdW11bGF0aW9uQ2hhcnRNb2R1bGUsXHJcbiAgICBEYXNoYm9hcmRMYXlvdXRNb2R1bGUsXHJcbiAgICBDYXJvdXNlbEFsbE1vZHVsZSxcclxuICAgIFRvb2xiYXJNb2R1bGUsXHJcbiAgICBUYWJNb2R1bGUsXHJcbiAgICBQZGZWaWV3ZXJNb2R1bGUsXHJcbiAgICBEcm9wRG93bkJ1dHRvbk1vZHVsZSxcclxuICAgIFNwbGl0QnV0dG9uTW9kdWxlLFxyXG4gICAgUmljaFRleHRFZGl0b3JBbGxNb2R1bGUsXHJcbiAgICBDb21tb25HcmlkQ29tcG9uZW50LFxyXG4gICAgRmxvYXRCb3hDb21wb25lbnQsXHJcbiAgICBSc1BhZ2VMaXN0Q29tcG9uZW50LFxyXG4gICAgUnNQYWdlVGFiQ29tcG9uZW50LFxyXG4gICAgR3JpZEJveENvbXBvbmVudCxcclxuICAgIFJTSGVhZGVyQ29tcG9uZW50LFxyXG4gICAgUlNGb290ZXJDb21wb25lbnQsXHJcbiAgICBSU0FzaWRlQ29tcG9uZW50LFxyXG4gICAgTXVsdGlUYWJDb21wb25lbnQsXHJcbiAgICBNYWluQ29udGFpbmVyQ29tcG9uZW50LFxyXG4gICAgVGFnSW5wdXRDb21wb25lbnQsXHJcbiAgICBSYWRpb0dyb3VwQ29tcG9uZW50LFxyXG4gICAgQ2hlY2tib3hHcm91cENvbXBvbmVudCxcclxuICAgIFN3aXRjaElucHV0Q29tcG9uZW50LFxyXG4gIF0sXHJcbiAgZW50cnlDb21wb25lbnRzOiBbXHJcbiAgICBOZXdBY3Rpb25Ob3RpZmljYXRpb25Db21wb25lbnQsXHJcbiAgICBDb21tb25EaWFsb2dDb21wb25lbnQsXHJcbiAgICBDb21tb25EZWxldGVDb21wb25lbnQsXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFJhaXNlQ29tbW9uTGliTW9kdWxlIHt9XHJcbiJdfQ==
228
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFpc2UtY29tbW9uLWxpYi5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9yYWlzZS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL3JhaXNlLWNvbW1vbi1saWIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLHNCQUFzQixFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFDTCxVQUFVLEVBQ1YsV0FBVyxFQUNYLFdBQVcsRUFDWCxhQUFhLEVBQ2Isa0JBQWtCLEVBQ2xCLFdBQVcsRUFDWCxhQUFhLEVBQ2IsY0FBYyxFQUNkLG9CQUFvQixFQUNwQixnQkFBZ0IsRUFDaEIsaUJBQWlCLEVBQ2pCLGdCQUFnQixFQUNoQixnQkFBZ0IsRUFDaEIsV0FBVyxFQUNYLFlBQVksRUFDWixhQUFhLEdBQ2QsTUFBTSwrQkFBK0IsQ0FBQztBQUN2QyxPQUFPLEVBQ0wsWUFBWSxFQUNaLGNBQWMsRUFDZCxpQkFBaUIsRUFDakIsWUFBWSxHQUNiLE1BQU0saUNBQWlDLENBQUM7QUFDekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDN0UsT0FBTyxFQUNMLGdCQUFnQixFQUNoQixxQkFBcUIsRUFDckIsb0JBQW9CLEdBQ3JCLE1BQU0sbUNBQW1DLENBQUM7QUFFM0MsT0FBTyxFQUNMLGFBQWEsRUFDYixpQkFBaUIsRUFDakIsY0FBYyxFQUNkLG9CQUFvQixHQUNyQixNQUFNLGdDQUFnQyxDQUFDO0FBQ3hDLE9BQU8s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QWlCO29CQUNqQixjQUFjO29CQUNkLG9CQUFvQjtvQkFDcEIsa0JBQWtCO29CQUNsQixrQkFBa0I7b0JBQ2xCLG9CQUFvQjtvQkFDcEIsa0JBQWtCO29CQUNsQixhQUFhO29CQUNiLGtCQUFrQjtvQkFDbEIsdUJBQXVCO29CQUN2QixjQUFjO29CQUNkLDBCQUEwQjtvQkFDMUIsdUJBQXVCO29CQUN2Qix1QkFBdUI7b0JBQ3ZCLHFCQUFxQjtvQkFDckIsaUJBQWlCO29CQUNqQixhQUFhO29CQUNiLFNBQVM7b0JBQ1QsZUFBZTtvQkFDZixvQkFBb0I7b0JBQ3BCLGlCQUFpQjtvQkFDakIsdUJBQXVCO29CQUN2QixtQkFBbUI7b0JBQ25CLGlCQUFpQjtvQkFDakIsbUJBQW1CO29CQUNuQixrQkFBa0I7b0JBQ2xCLGdCQUFnQjtvQkFDaEIsaUJBQWlCO29CQUNqQixpQkFBaUI7b0JBQ2pCLGdCQUFnQjtvQkFDaEIsaUJBQWlCO29CQUNqQixzQkFBc0I7b0JBQ3RCLGlCQUFpQjtvQkFDakIsbUJBQW1CO29CQUNuQixzQkFBc0I7b0JBQ3RCLG9CQUFvQjtvQkFDcEIsZUFBZTtvQkFDZixtQkFBbUI7aUJBQ3BCO2dCQUNELGVBQWUsRUFBRTtvQkFDZiw4QkFBOEI7b0JBQzlCLHFCQUFxQjtvQkFDckIscUJBQXFCO2lCQUN0QjtnQkFDRCxPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQzthQUNsQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIE5nTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSwgRm9ybXNNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHsgSHR0cENsaWVudE1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XHJcblxyXG5pbXBvcnQge1xyXG4gIEdyaWRNb2R1bGUsXHJcbiAgUGFnZVNlcnZpY2UsXHJcbiAgU29ydFNlcnZpY2UsXHJcbiAgRmlsdGVyU2VydmljZSxcclxuICBFeGNlbEV4cG9ydFNlcnZpY2UsXHJcbiAgRWRpdFNlcnZpY2UsXHJcbiAgUmVzaXplU2VydmljZSxcclxuICBUb29sYmFyU2VydmljZSxcclxuICBDb2x1bW5DaG9vc2VyU2VydmljZSxcclxuICBBZ2dyZWdhdGVTZXJ2aWNlLFxyXG4gIENvbHVtbk1lbnVTZXJ2aWNlLFxyXG4gIERldGFpbFJvd1NlcnZpY2UsXHJcbiAgU2VsZWN0aW9uU2VydmljZSxcclxuICBQYWdlck1vZHVsZSxcclxuICBHcm91cFNlcnZpY2UsXHJcbiAgR3JpZEFsbE1vZHVsZSxcclxufSBmcm9tIFwiQHN5bmNmdXNpb24vZWoyLWFuZ3VsYXItZ3JpZHNcIjtcclxuaW1wb3J0IHtcclxuICBTd2l0Y2hNb2R1bGUsXHJcbiAgQ2hlY2tCb3hNb2R1bGUsXHJcbiAgUmFkaW9CdXR0b25Nb2R1bGUsXHJcbiAgQnV0dG9uTW9kdWxlLFxyXG59IGZyb20gXCJAc3luY2Z1c2lvbi9lajItYW5ndWxhci1idXR0b25zXCI7XHJcbmltcG9ydCB7IERpYWdyYW1Nb2R1bGUgfSBmcm9tIFwiQHN5bmNmdXNpb24vZWoyLWFuZ3VsYXItZGlhZ3JhbXNcIjtcclxuaW1wb3J0IHsgVG9vbHRpcE1vZHVsZSwgRGlhbG9nTW9kdWxlIH0gZnJvbSBcIkBzeW5jZnVzaW9uL2VqMi1hbmd1bGFyLXBvcHVwc1wiO1xyXG5pbXBvcnQge1xyXG4gIERhdGVQaWNrZXJNb2R1bGUsXHJcbiAgRGF0ZVJhbmdlUGlja2VyTW9kdWxlLFxyXG4gIERhdGVUaW1lUGlja2VyTW9kdWxlLFxyXG59IGZyb20gXCJAc3luY2Z1c2lvbi9lajItYW5ndWxhci1jYWxlbmRhcnNcIjtcclxuXHJcbmltcG9ydCB7XHJcbiAgVGV4dEJveE1vZHVsZSxcclxuICBDb2xvclBpY2tlck1vZHVsZSxcclxuICBVcGxvYWRlck1vZHVsZSxcclxuICBOdW1lcmljVGV4dEJveE1vZHVsZSxcclxufSBmcm9tIFwiQHN5bmNmdXNpb24vZWoyLWFuZ3VsYXItaW5wdXRzXCI7XHJcbmltcG9ydCB7XHJcbiAgRHJvcERvd25MaXN0TW9kdWxlLFxyXG4gIE11bHRpU2VsZWN0QWxsTW9kdWxlLFxyXG4gIEF1dG9Db21wbGV0ZU1vZHVsZSxcclxuICBEcm9wRG93blRyZWVNb2R1bGUsXHJcbiAgTGlzdEJveE1vZHVsZSxcclxufSBmcm9tIFwiQHN5bmNmdXNpb24vZWoyLWFuZ3VsYXItZHJvcGRvd25zXCI7XHJcbmltcG9ydCB7XHJcbiAgUGl2b3RWaWV3QWxsTW9kdWxlLFxyXG4gIFBpdm90RmllbGRMaXN0QWxsTW9kdWxlLFxyXG59IGZyb20gXCJAc3luY2Z1c2lvbi9lajItYW5ndWxhci1waXZvdHZpZXdcIjtcclxuaW1wb3J0IHtcclxuICBDaGFydEFsbE1vZHVsZSxcclxuICBBY2N1bXVsYXRpb25DaGFydEFsbE1vZHVsZSxcclxuICBSYW5nZU5hdmlnYXRvckFsbE1vZHVsZSxcclxuICBBY2N1bXVsYXRpb25DaGFydE1vZHVsZSxcclxuICBQaWVTZXJpZXNTZXJ2aWNlLFxyXG4gIEFjY3VtdWxhdGlvbkxlZ2VuZFNlcnZpY2UsXHJcbiAgQWNjdW11bGF0aW9uVG9vbHRpcFNlcnZpY2UsXHJcbiAgQWNjdW11bGF0aW9uQW5ub3RhdGlvblNlcnZpY2UsXHJcbiAgQWNjdW11bGF0aW9uRGF0YUxhYmVsU2VydmljZSxcclxufSBmcm9tIFwiQHN5bmNmdXNpb24vZWoyLWFuZ3VsYXItY2hhcnRzXCI7XHJcbmltcG9ydCB7IERhc2hib2FyZExheW91dE1vZHVsZSB9IGZyb20gXCJAc3luY2Z1c2lvbi9lajItYW5ndWxhci1sYXlvdXRzXCI7XHJcbmltcG9ydCB7XHJcbiAgQ2Fyb3VzZWxBbGxNb2R1bGUsXHJcbiAgVG9vbGJhck1vZHVsZSxcclxuICBUYWJNb2R1bGUsXHJcbn0gZnJvbSBcIkBzeW5jZnVzaW9uL2VqMi1hbmd1bGFyLW5hdmlnYXRpb25zXCI7XHJcbmltcG9ydCB7XHJcbiAgUGRmVmlld2VyTW9kdWxlLFxyXG4gIExpbmtBbm5vdGF0aW9uU2VydmljZSxcclxuICBCb29rbWFya1ZpZXdTZXJ2aWNlLFxyXG4gIE1hZ25pZmljYXRpb25TZXJ2aWNlLFxyXG4gIFRodW1ibmFpbFZpZXdTZXJ2aWNlLFxyXG4gIFRvb2xiYXJTZXJ2aWNlIGFzIFBiZlRvb2xiYXJTZXJ2aWNlLFxyXG4gIE5hdmlnYXRpb25TZXJ2aWNlLFxyXG4gIFRleHRTZWFyY2hTZXJ2aWNlLFxyXG4gIFRleHRTZWxlY3Rpb25TZXJ2aWNlLFxyXG4gIFByaW50U2VydmljZSxcclxufSBmcm9tIFwiQHN5bmNmdXNpb24vZWoyLWFuZ3VsYXItcGRmdmlld2VyXCI7XHJcbmltcG9ydCB7XHJcbiAgRHJvcERvd25CdXR0b25Nb2R1bGUsXHJcbiAgU3BsaXRCdXR0b25Nb2R1bGUsXHJcbn0gZnJvbSBcIkBzeW5jZnVzaW9uL2VqMi1hbmd1bGFyLXNwbGl0YnV0dG9uc1wiO1xyXG5pbXBvcnQge1xyXG4gIFJpY2hUZXh0RWRpdG9yQWxsTW9kdWxlLFxyXG4gIEh0bWxFZGl0b3JTZXJ2aWNlLFxyXG4gIFRvb2xiYXJTZXJ2aWNlIGFzIFJpY2hFZGl0b3JUb29sYmFyU2VydmljZSxcclxufSBmcm9tIFwiQHN5bmNmdXNpb24vZWoyLWFuZ3VsYXItcmljaHRleHRlZGl0b3JcIjtcclxuXHJcbmltcG9ydCB7IE1hdFNuYWNrQmFyTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhclwiO1xyXG5pbXBvcnQgeyBNYXREaWFsb2dNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nXCI7XHJcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvblwiO1xyXG5cclxuLy8gc2VydmljZXNcclxuaW1wb3J0IHsgQ29tbW9uRnVuY3Rpb25TZXJ2aWNlIH0gZnJvbSBcIi4vc2VydmljZS9jb21tb24tZnVuY3Rpb24uc2VydmljZVwiO1xyXG5pbXBvcnQgeyBJY29uTG9hZGVyU2VydmljZSB9IGZyb20gXCIuL3NlcnZpY2UvaWNvbi1sb2FkZXIuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBEaWFsb2dTZXJ2aWNlIH0gZnJvbSBcIi4vc2VydmljZS9kaWFsb2cuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBLZWVwQWxpdmVTZXJ2aWNlIH0gZnJvbSBcIi4vc2VydmljZS9rZWVwLWFsaXZlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSBcIi4vc2VydmljZS90cmFuc2xhdGlvbi5zZXJ2aWNlXCI7XHJcblxyXG5pbXBvcnQgeyBDb21tb25HcmlkQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tbW9uLWdyaWQvaW5kZXguY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEZsb2F0Qm94Q29tcG9uZW50IH0gZnJvbSBcIi4vZmxvYXQtYm94L2luZGV4LmNvbXBvbmVudFwiO1xyXG5cclxuaW1wb3J0IHsgUnNQYWdlTGlzdENvbXBvbmVudCB9IGZyb20gXCIuL2xheW91dC9wYWdlLWxpc3QvaW5kZXguY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFJzUGFnZVRhYkNvbXBvbmVudCB9IGZyb20gXCIuL2xheW91dC9wYWdlLXRhYi9pbmRleC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgR3JpZEJveENvbXBvbmVudCB9IGZyb20gXCIuL2xheW91dC9ncmlkLWJveC9pbmRleC5jb21wb25lbnRcIjtcclxuXHJcbmltcG9ydCB7IE1haW5Db250YWluZXJDb21wb25lbnQgfSBmcm9tIFwiLi9sYXlvdXQvbWFpbi1jb250YWluZXIvaW5kZXguY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFJTSGVhZGVyQ29tcG9uZW50IH0gZnJvbSBcIi4vbGF5b3V0L3JzLWhlYWRlci9pbmRleC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgUlNGb290ZXJDb21wb25lbnQgfSBmcm9tIFwiLi9sYXlvdXQvcnMtZm9vdGVyL2luZGV4LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBSU0FzaWRlQ29tcG9uZW50IH0gZnJvbSBcIi4vbGF5b3V0L3JzLWFzaWRlL2luZGV4LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBNdWx0aVRhYkNvbXBvbmVudCB9IGZyb20gXCIuL2xheW91dC9tdWx0aS10YWIvaW5kZXguY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IERyYXdlckNvbXBvbmVudCB9IGZyb20gXCIuL2xheW91dC9kcmF3ZXIvaW5kZXguY29tcG9uZW50XCI7XHJcblxyXG5pbXBvcnQgeyBUYWdJbnB1dENvbXBvbmVudCB9IGZyb20gXCIuL2Zvcm0vdGFnLWlucHV0L2luZGV4LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBSYWRpb0dyb3VwQ29tcG9uZW50IH0gZnJvbSBcIi4vZm9ybS9yYWRpby1ncm91cC9pbmRleC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgQ2hlY2tib3hHcm91cENvbXBvbmVudCB9IGZyb20gXCIuL2Zvcm0vY2hlY2tib3gtZ3JvdXAvaW5kZXguY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFN3aXRjaElucHV0Q29tcG9uZW50IH0gZnJvbSBcIi4vZm9ybS9zd2l0Y2gtaW5wdXQvaW5kZXguY29tcG9uZW50XCI7XHJcblxyXG5pbXBvcnQgeyBOZXdBY3Rpb25Ob3RpZmljYXRpb25Db21wb25lbnQgfSBmcm9tIFwiLi9kaWFsb2cvbmV3LWFjdGlvbi1ub3RpZmljYXRpb24vbmV3LWFjdGlvbi1ub3RpZmljYXRpb24uY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IENvbW1vbkRpYWxvZ0NvbXBvbmVudCB9IGZyb20gXCIuL2RpYWxvZy9jb21tb24tZGlhbG9nL2luZGV4LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBDb21tb25EZWxldGVDb21wb25lbnQgfSBmcm9tIFwiLi9kaWFsb2cvY29tbW9uLWRlbGV0ZS1kaWFsb2cvaW5kZXguY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IERyYXdlclNlcnZpY2UgfSBmcm9tIFwiLi9zZXJ2aWNlL2RyYXdlci5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IERyYXdlckZvcm1Db21wb25lbnQgfSBmcm9tIFwiLi9mb3JtL2RyYXdlci1mb3JtL2RyYXdlci1mb3JtLmNvbXBvbmVudFwiO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIENvbW1vbkdyaWRDb21wb25lbnQsXHJcbiAgICBGbG9hdEJveENvbXBvbmVudCxcclxuICAgIFJzUGFnZUxpc3RDb21wb25lbnQsXHJcbiAgICBSc1BhZ2VUYWJDb21wb25lbnQsXHJcbiAgICBHcmlkQm94Q29tcG9uZW50LFxyXG4gICAgUlNIZWFkZXJDb21wb25lbnQsXHJcbiAgICBSU0Zvb3RlckNvbXBvbmVudCxcclxuICAgIFJTQXNpZGVDb21wb25lbnQsXHJcbiAgICBNdWx0aVRhYkNvbXBvbmVudCxcclxuICAgIE1haW5Db250YWluZXJDb21wb25lbnQsXHJcbiAgICBUYWdJbnB1dENvbXBvbmVudCxcclxuICAgIFJhZGlvR3JvdXBDb21wb25lbnQsXHJcbiAgICBDaGVja2JveEdyb3VwQ29tcG9uZW50LFxyXG4gICAgU3dpdGNoSW5wdXRDb21wb25lbnQsXHJcbiAgICBOZXdBY3Rpb25Ob3RpZmljYXRpb25Db21wb25lbnQsXHJcbiAgICBDb21tb25EaWFsb2dDb21wb25lbnQsXHJcbiAgICBDb21tb25EZWxldGVDb21wb25lbnQsXHJcbiAgICBEcmF3ZXJDb21wb25lbnQsXHJcbiAgICBEcmF3ZXJGb3JtQ29tcG9uZW50LFxyXG4gIF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgSHR0cENsaWVudE1vZHVsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIE1hdFNuYWNrQmFyTW9kdWxlLFxyXG4gICAgTWF0RGlhbG9nTW9kdWxlLFxyXG4gICAgTWF0SWNvbk1vZHVsZSxcclxuICAgIEdyaWRNb2R1bGUsXHJcbiAgICBQYWdlck1vZHVsZSxcclxuICAgIEdyaWRBbGxNb2R1bGUsXHJcbiAgICBTd2l0Y2hNb2R1bGUsXHJcbiAgICBDaGVja0JveE1vZHVsZSxcclxuICAgIFJhZGlvQnV0dG9uTW9kdWxlLFxyXG4gICAgQnV0dG9uTW9kdWxlLFxyXG4gICAgRGlhZ3JhbU1vZHVsZSxcclxuICAgIFRvb2x0aXBNb2R1bGUsXHJcbiAgICBEaWFsb2dNb2R1bGUsXHJcbiAgICBEYXRlUGlja2VyTW9kdWxlLFxyXG4gICAgRGF0ZVJhbmdlUGlja2VyTW9kdWxlLFxyXG4gICAgRGF0ZVRpbWVQaWNrZXJNb2R1bGUsXHJcbiAgICBUZXh0Qm94TW9kdWxlLFxyXG4gICAgQ29sb3JQaWNrZXJNb2R1bGUsXHJcbiAgICBVcGxvYWRlck1vZHVsZSxcclxuICAgIE51bWVyaWNUZXh0Qm94TW9kdWxlLFxyXG4gICAgRHJvcERvd25MaXN0TW9kdWxlLFxyXG4gICAgRHJvcERvd25UcmVlTW9kdWxlLFxyXG4gICAgTXVsdGlTZWxlY3RBbGxNb2R1bGUsXHJcbiAgICBBdXRvQ29tcGxldGVNb2R1bGUsXHJcbiAgICBMaXN0Qm94TW9kdWxlLFxyXG4gICAgUGl2b3RWaWV3QWxsTW9kdWxlLFxyXG4gICAgUGl2b3RGaWVsZExpc3RBbGxNb2R1bGUsXHJcbiAgICBDaGFydEFsbE1vZHVsZSxcclxuICAgIEFjY3VtdWxhdGlvbkNoYXJ0QWxsTW9kdWxlLFxyXG4gICAgUmFuZ2VOYXZpZ2F0b3JBbGxNb2R1bGUsXHJcbiAgICBBY2N1bXVsYXRpb25DaGFydE1vZHVsZSxcclxuICAgIERhc2hib2FyZExheW91dE1vZHVsZSxcclxuICAgIENhcm91c2VsQWxsTW9kdWxlLFxyXG4gICAgVG9vbGJhck1vZHVsZSxcclxuICAgIFRhYk1vZHVsZSxcclxuICAgIFBkZlZpZXdlck1vZHVsZSxcclxuICAgIERyb3BEb3duQnV0dG9uTW9kdWxlLFxyXG4gICAgU3BsaXRCdXR0b25Nb2R1bGUsXHJcbiAgICBSaWNoVGV4dEVkaXRvckFsbE1vZHVsZSxcclxuICBdLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAgUGFnZVNlcnZpY2UsXHJcbiAgICBTb3J0U2VydmljZSxcclxuICAgIEZpbHRlclNlcnZpY2UsXHJcbiAgICBFeGNlbEV4cG9ydFNlcnZpY2UsXHJcbiAgICBFZGl0U2VydmljZSxcclxuICAgIFJlc2l6ZVNlcnZpY2UsXHJcbiAgICBUb29sYmFyU2VydmljZSxcclxuICAgIENvbHVtbkNob29zZXJTZXJ2aWNlLFxyXG4gICAgQWdncmVnYXRlU2VydmljZSxcclxuICAgIENvbHVtbk1lbnVTZXJ2aWNlLFxyXG4gICAgRGV0YWlsUm93U2VydmljZSxcclxuICAgIFNlbGVjdGlvblNlcnZpY2UsXHJcbiAgICBHcm91cFNlcnZpY2UsXHJcbiAgICBQaWVTZXJpZXNTZXJ2aWNlLFxyXG4gICAgQWNjdW11bGF0aW9uTGVnZW5kU2VydmljZSxcclxuICAgIEFjY3VtdWxhdGlvblRvb2x0aXBTZXJ2aWNlLFxyXG4gICAgQWNjdW11bGF0aW9uQW5ub3RhdGlvblNlcnZpY2UsXHJcbiAgICBBY2N1bXVsYXRpb25EYXRhTGFiZWxTZXJ2aWNlLFxyXG4gICAgTGlua0Fubm90YXRpb25TZXJ2aWNlLFxyXG4gICAgQm9va21hcmtWaWV3U2VydmljZSxcclxuICAgIE1hZ25pZmljYXRpb25TZXJ2aWNlLFxyXG4gICAgVGh1bWJuYWlsVmlld1NlcnZpY2UsXHJcbiAgICBQYmZUb29sYmFyU2VydmljZSxcclxuICAgIE5hdmlnYXRpb25TZXJ2aWNlLFxyXG4gICAgVGV4dFNlYXJjaFNlcnZpY2UsXHJcbiAgICBUZXh0U2VsZWN0aW9uU2VydmljZSxcclxuICAgIFByaW50U2VydmljZSxcclxuICAgIEh0bWxFZGl0b3JTZXJ2aWNlLFxyXG4gICAgUmljaEVkaXRvclRvb2xiYXJTZXJ2aWNlLFxyXG5cclxuICAgIENvbW1vbkZ1bmN0aW9uU2VydmljZSxcclxuICAgIEljb25Mb2FkZXJTZXJ2aWNlLFxyXG4gICAgRGlhbG9nU2VydmljZSxcclxuICAgIEtlZXBBbGl2ZVNlcnZpY2UsXHJcbiAgICBEcmF3ZXJTZXJ2aWNlLFxyXG4gICAgVHJhbnNsYXRpb25TZXJ2aWNlLFxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgSHR0cENsaWVudE1vZHVsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIE1hdFNuYWNrQmFyTW9kdWxlLFxyXG4gICAgTWF0RGlhbG9nTW9kdWxlLFxyXG4gICAgR3JpZE1vZHVsZSxcclxuICAgIFBhZ2VyTW9kdWxlLFxyXG4gICAgR3JpZEFsbE1vZHVsZSxcclxuICAgIFN3aXRjaE1vZHVsZSxcclxuICAgIENoZWNrQm94TW9kdWxlLFxyXG4gICAgUmFkaW9CdXR0b25Nb2R1bGUsXHJcbiAgICBCdXR0b25Nb2R1bGUsXHJcbiAgICBEaWFncmFtTW9kdWxlLFxyXG4gICAgVG9vbHRpcE1vZHVsZSxcclxuICAgIERpYWxvZ01vZHVsZSxcclxuICAgIERhdGVQaWNrZXJNb2R1bGUsXHJcbiAgICBEYXRlUmFuZ2VQaWNrZXJNb2R1bGUsXHJcbiAgICBEYXRlVGltZVBpY2tlck1vZHVsZSxcclxuICAgIFRleHRCb3hNb2R1bGUsXHJcbiAgICBDb2xvclBpY2tlck1vZHVsZSxcclxuICAgIFVwbG9hZGVyTW9kdWxlLFxyXG4gICAgTnVtZXJpY1RleHRCb3hNb2R1bGUsXHJcbiAgICBEcm9wRG93bkxpc3RNb2R1bGUsXHJcbiAgICBEcm9wRG93blRyZWVNb2R1bGUsXHJcbiAgICBNdWx0aVNlbGVjdEFsbE1vZHVsZSxcclxuICAgIEF1dG9Db21wbGV0ZU1vZHVsZSxcclxuICAgIExpc3RCb3hNb2R1bGUsXHJcbiAgICBQaXZvdFZpZXdBbGxNb2R1bGUsXHJcbiAgICBQaXZvdEZpZWxkTGlzdEFsbE1vZHVsZSxcclxuICAgIENoYXJ0QWxsTW9kdWxlLFxyXG4gICAgQWNjdW11bGF0aW9uQ2hhcnRBbGxNb2R1bGUsXHJcbiAgICBSYW5nZU5hdmlnYXRvckFsbE1vZHVsZSxcclxuICAgIEFjY3VtdWxhdGlvbkNoYXJ0TW9kdWxlLFxyXG4gICAgRGFzaGJvYXJkTGF5b3V0TW9kdWxlLFxyXG4gICAgQ2Fyb3VzZWxBbGxNb2R1bGUsXHJcbiAgICBUb29sYmFyTW9kdWxlLFxyXG4gICAgVGFiTW9kdWxlLFxyXG4gICAgUGRmVmlld2VyTW9kdWxlLFxyXG4gICAgRHJvcERvd25CdXR0b25Nb2R1bGUsXHJcbiAgICBTcGxpdEJ1dHRvbk1vZHVsZSxcclxuICAgIFJpY2hUZXh0RWRpdG9yQWxsTW9kdWxlLFxyXG4gICAgQ29tbW9uR3JpZENvbXBvbmVudCxcclxuICAgIEZsb2F0Qm94Q29tcG9uZW50LFxyXG4gICAgUnNQYWdlTGlzdENvbXBvbmVudCxcclxuICAgIFJzUGFnZVRhYkNvbXBvbmVudCxcclxuICAgIEdyaWRCb3hDb21wb25lbnQsXHJcbiAgICBSU0hlYWRlckNvbXBvbmVudCxcclxuICAgIFJTRm9vdGVyQ29tcG9uZW50LFxyXG4gICAgUlNBc2lkZUNvbXBvbmVudCxcclxuICAgIE11bHRpVGFiQ29tcG9uZW50LFxyXG4gICAgTWFpbkNvbnRhaW5lckNvbXBvbmVudCxcclxuICAgIFRhZ0lucHV0Q29tcG9uZW50LFxyXG4gICAgUmFkaW9Hcm91cENvbXBvbmVudCxcclxuICAgIENoZWNrYm94R3JvdXBDb21wb25lbnQsXHJcbiAgICBTd2l0Y2hJbnB1dENvbXBvbmVudCxcclxuICAgIERyYXdlckNvbXBvbmVudCxcclxuICAgIERyYXdlckZvcm1Db21wb25lbnQsXHJcbiAgXSxcclxuICBlbnRyeUNvbXBvbmVudHM6IFtcclxuICAgIE5ld0FjdGlvbk5vdGlmaWNhdGlvbkNvbXBvbmVudCxcclxuICAgIENvbW1vbkRpYWxvZ0NvbXBvbmVudCxcclxuICAgIENvbW1vbkRlbGV0ZUNvbXBvbmVudCxcclxuICBdLFxyXG4gIHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFJhaXNlQ29tbW9uTGliTW9kdWxlIHt9XHJcbiJdfQ==
@@ -0,0 +1,191 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * Generated from: lib/service/drawer.service.ts
4
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
+ */
6
+ import { Injectable } from "@angular/core";
7
+ import { NavigationEnd, Router } from "@angular/router";
8
+ import { filter } from "rxjs/operators";
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "@angular/router";
11
+ /** @type {?} */
12
+ export const DefaultDrawerConfig = {
13
+ title: "Title",
14
+ mode: "inner",
15
+ };
16
+ export class DrawerService {
17
+ /**
18
+ * @param {?} router
19
+ */
20
+ constructor(router) {
21
+ this.router = router;
22
+ this.resultPromiseResolveMap = new Map();
23
+ }
24
+ /**
25
+ * @return {?}
26
+ */
27
+ get cacheKey() {
28
+ return this.router.url;
29
+ }
30
+ /**
31
+ * @return {?}
32
+ */
33
+ ngOnDestroy() {
34
+ this.removeDrawer();
35
+ }
36
+ /**
37
+ * @return {?}
38
+ */
39
+ listenRouterChange() {
40
+ this.routerSubscription = this.router.events
41
+ .pipe(filter((/**
42
+ * @param {?} event
43
+ * @return {?}
44
+ */
45
+ (event) => event instanceof NavigationEnd)))
46
+ .subscribe((/**
47
+ * @return {?}
48
+ */
49
+ () => {
50
+ /** @type {?} */
51
+ const drawer = this.uniqueDrawerComponent;
52
+ drawer && drawer.onRouteChange();
53
+ }));
54
+ }
55
+ /**
56
+ * @param {?} component
57
+ * @return {?}
58
+ */
59
+ setDrawer(component) {
60
+ if (this.uniqueDrawerComponent) {
61
+ this.removeDrawer();
62
+ }
63
+ this.uniqueDrawerComponent = component;
64
+ this.openedSubscription = component.$isOpened.subscribe((/**
65
+ * @param {?} value
66
+ * @return {?}
67
+ */
68
+ (value) => !value && this.hide()));
69
+ this.listenRouterChange();
70
+ }
71
+ /**
72
+ * @return {?}
73
+ */
74
+ removeDrawer() {
75
+ this.openedSubscription && this.openedSubscription.unsubscribe();
76
+ this.routerSubscription && this.routerSubscription.unsubscribe();
77
+ this.openedSubscription = null;
78
+ this.routerSubscription = null;
79
+ this.uniqueDrawerComponent = null;
80
+ }
81
+ /**
82
+ * @template T
83
+ * @param {?} component
84
+ * @param {?} config
85
+ * @param {?=} data
86
+ * @return {?}
87
+ */
88
+ show(component, config, data = {}) {
89
+ /** @type {?} */
90
+ const drawer = this.uniqueDrawerComponent;
91
+ if (!drawer || drawer.$isOpened.getValue()) {
92
+ return {
93
+ instance: null,
94
+ result: null,
95
+ };
96
+ }
97
+ return {
98
+ instance: drawer.show(component, config, data),
99
+ result: new Promise((/**
100
+ * @param {?} resolve
101
+ * @return {?}
102
+ */
103
+ (resolve) => {
104
+ /** @type {?} */
105
+ const cacheKey = this.cacheKey;
106
+ this.resultPromiseResolveMap.set(cacheKey, (/**
107
+ * @param {?} value
108
+ * @return {?}
109
+ */
110
+ (value) => {
111
+ resolve(value);
112
+ this.resultPromiseResolveMap.delete(cacheKey);
113
+ }));
114
+ })),
115
+ };
116
+ }
117
+ /**
118
+ * @return {?}
119
+ */
120
+ hide() {
121
+ /** @type {?} */
122
+ const drawer = this.uniqueDrawerComponent;
123
+ /** @type {?} */
124
+ const resolve = this.resultPromiseResolveMap.get(this.cacheKey);
125
+ if (resolve) {
126
+ resolve({ type: "hide" });
127
+ drawer && drawer.back();
128
+ }
129
+ }
130
+ /**
131
+ * @param {?=} data
132
+ * @return {?}
133
+ */
134
+ complete(data) {
135
+ /** @type {?} */
136
+ const drawer = this.uniqueDrawerComponent;
137
+ /** @type {?} */
138
+ const resolve = this.resultPromiseResolveMap.get(this.cacheKey);
139
+ if (resolve) {
140
+ resolve({ type: "complete", data });
141
+ drawer && drawer.back();
142
+ }
143
+ }
144
+ /**
145
+ * @param {?} cacheKey
146
+ * @return {?}
147
+ */
148
+ deleteCache(cacheKey) {
149
+ /** @type {?} */
150
+ const drawer = this.uniqueDrawerComponent;
151
+ drawer && drawer.deleteCache(cacheKey);
152
+ }
153
+ }
154
+ DrawerService.decorators = [
155
+ { type: Injectable, args: [{
156
+ providedIn: "root",
157
+ },] }
158
+ ];
159
+ /** @nocollapse */
160
+ DrawerService.ctorParameters = () => [
161
+ { type: Router }
162
+ ];
163
+ /** @nocollapse */ DrawerService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function DrawerService_Factory() { return new DrawerService(i0.ɵɵinject(i1.Router)); }, token: DrawerService, providedIn: "root" });
164
+ if (false) {
165
+ /**
166
+ * @type {?}
167
+ * @private
168
+ */
169
+ DrawerService.prototype.uniqueDrawerComponent;
170
+ /**
171
+ * @type {?}
172
+ * @private
173
+ */
174
+ DrawerService.prototype.resultPromiseResolveMap;
175
+ /**
176
+ * @type {?}
177
+ * @private
178
+ */
179
+ DrawerService.prototype.openedSubscription;
180
+ /**
181
+ * @type {?}
182
+ * @private
183
+ */
184
+ DrawerService.prototype.routerSubscription;
185
+ /**
186
+ * @type {?}
187
+ * @private
188
+ */
189
+ DrawerService.prototype.router;
190
+ }
191
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhd2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9yYWlzZS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2UvZHJhd2VyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3RELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBVXhDLE1BQU0sT0FBTyxtQkFBbUIsR0FBMkI7SUFDekQsS0FBSyxFQUFFLE9BQU87SUFDZCxJQUFJLEVBQUUsT0FBTztDQUNkO0FBVUQsTUFBTSxPQUFPLGFBQWE7Ozs7SUFPeEIsWUFBb0IsTUFBYztRQUFkLFdBQU0sR0FBTixNQUFNLENBQVE7UUFMMUIsNEJBQXVCLEdBQUcsSUFBSSxHQUFHLEVBQWdDLENBQUM7SUFLckMsQ0FBQzs7OztJQUV0QyxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDO0lBQ3pCLENBQUM7Ozs7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RCLENBQUM7Ozs7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTTthQUN6QyxJQUFJLENBQUMsTUFBTTs7OztRQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLFlBQVksYUFBYSxFQUFDLENBQUM7YUFDdkQsU0FBUzs7O1FBQUMsR0FBRyxFQUFFOztrQkFDUixNQUFNLEdBQUcsSUFBSSxDQUFDLHFCQUFxQjtZQUN6QyxNQUFNLElBQUksTUFBTSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ25DLENBQUMsRUFBQyxDQUFDO0lBQ1AsQ0FBQzs7Ozs7SUFFRCxTQUFTLENBQUMsU0FBMEI7UUFDbEMsSUFBSSxJQUFJLENBQUMscUJBQXFCLEVBQUU7WUFDOUIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1NBQ3JCO1FBQ0QsSUFBSSxDQUFDLHFCQUFxQixHQUFHLFNBQVMsQ0FBQztRQUN2QyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsU0FBUyxDQUFDLFNBQVMsQ0FBQyxTQUFTOzs7O1FBQ3JELENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQ2pDLENBQUM7UUFDRixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUM1QixDQUFDOzs7O0lBRUQsWUFBWTtRQUNWLElBQUksQ0FBQyxrQkFBa0IsSUFBSSxJQUFJLENBQUMsa0JBQWtCLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDakUsSUFBSSxDQUFDLGtCQUFrQixJQUFJLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNqRSxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDO1FBQy9CLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUM7UUFDL0IsSUFBSSxDQUFDLHFCQUFxQixHQUFHLElBQUksQ0FBQztJQUNwQyxDQUFDOzs7Ozs7OztJQUVELElBQUksQ0FDRixTQUFvQyxFQUNwQyxNQUFvQixFQUNwQixJQUFJLEdBQUcsRUFBRTs7Y0FFSCxNQUFNLEdBQUcsSUFBSSxDQUFDLHFCQUFxQjtRQUN6QyxJQUFJLENBQUMsTUFBTSxJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDMUMsT0FBTztnQkFDTCxRQUFRLEVBQUUsSUFBSTtnQkFDZCxNQUFNLEVBQUUsSUFBSTthQUNiLENBQUM7U0FDSDtRQUNELE9BQU87WUFDTCxRQUFRLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQztZQUM5QyxNQUFNLEVBQUUsSUFBSSxPQUFPOzs7O1lBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTs7c0JBQ3hCLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUTtnQkFDOUIsSUFBSSxDQUFDLHVCQUF1QixDQUFDLEdBQUcsQ0FBQyxRQUFROzs7O2dCQUFFLENBQUMsS0FBSyxFQUFFLEVBQUU7b0JBQ25ELE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDZixJQUFJLENBQUMsdUJBQXVCLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUNoRCxDQUFDLEVBQUMsQ0FBQztZQUNMLENBQUMsRUFBQztTQUNILENBQUM7SUFDSixDQUFDOzs7O0lBRUQsSUFBSTs7Y0FDSSxNQUFNLEdBQUcsSUFBSSxDQUFDLHFCQUFxQjs7Y0FDbkMsT0FBTyxHQUFHLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUMvRCxJQUFJLE9BQU8sRUFBRTtZQUNYLE9BQU8sQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO1lBQzFCLE1BQU0sSUFBSSxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDekI7SUFDSCxDQUFDOzs7OztJQUVELFFBQVEsQ0FBQyxJQUFVOztjQUNYLE1BQU0sR0FBRyxJQUFJLENBQUMscUJBQXFCOztjQUNuQyxPQUFPLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQy9ELElBQUksT0FBTyxFQUFFO1lBQ1gsT0FBTyxDQUFDLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ3BDLE1BQU0sSUFBSSxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDekI7SUFDSCxDQUFDOzs7OztJQUVELFdBQVcsQ0FBQyxRQUFnQjs7Y0FDcEIsTUFBTSxHQUFHLElBQUksQ0FBQyxxQkFBcUI7UUFDekMsTUFBTSxJQUFJLE1BQU0sQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDekMsQ0FBQzs7O1lBN0ZGLFVBQVUsU0FBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQjs7OztZQXZCdUIsTUFBTTs7Ozs7Ozs7SUF5QjVCLDhDQUErQzs7Ozs7SUFDL0MsZ0RBQTBFOzs7OztJQUUxRSwyQ0FBeUM7Ozs7O0lBQ3pDLDJDQUF5Qzs7Ozs7SUFFN0IsK0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT25EZXN0cm95IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgTmF2aWdhdGlvbkVuZCwgUm91dGVyIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgRHJhd2VyQ29tcG9uZW50IH0gZnJvbSBcIi4uL2xheW91dC9kcmF3ZXIvaW5kZXguY29tcG9uZW50XCI7XHJcblxyXG5leHBvcnQgdHlwZSBEcmF3ZXJDb25maWcgPSB7XHJcbiAgdGl0bGU6IHN0cmluZztcclxuICBzdWJUaXRsZT86IHN0cmluZztcclxuICBtb2RlPzogXCJvdXRlclwiIHwgXCJpbm5lclwiO1xyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IERlZmF1bHREcmF3ZXJDb25maWc6IFJlYWRvbmx5PERyYXdlckNvbmZpZz4gPSB7XHJcbiAgdGl0bGU6IFwiVGl0bGVcIixcclxuICBtb2RlOiBcImlubmVyXCIsXHJcbn07XHJcblxyXG5leHBvcnQgdHlwZSBEcmF3ZXJTaG93SW5zdGFuY2U8VD4gPSB7XHJcbiAgaW5zdGFuY2U6IFQ7XHJcbiAgcmVzdWx0OiBQcm9taXNlPHsgdHlwZTogXCJjb21wbGV0ZVwiIHwgXCJoaWRlXCI7IGRhdGE/OiBhbnkgfT47XHJcbn07XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogXCJyb290XCIsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEcmF3ZXJTZXJ2aWNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcclxuICBwcml2YXRlIHVuaXF1ZURyYXdlckNvbXBvbmVudDogRHJhd2VyQ29tcG9uZW50O1xyXG4gIHByaXZhdGUgcmVzdWx0UHJvbWlzZVJlc29sdmVNYXAgPSBuZXcgTWFwPHN0cmluZywgKHZhbHVlOiBhbnkpID0+IHZvaWQ+KCk7XHJcblxyXG4gIHByaXZhdGUgb3BlbmVkU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcbiAgcHJpdmF0ZSByb3V0ZXJTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZXI6IFJvdXRlcikge31cclxuXHJcbiAgZ2V0IGNhY2hlS2V5KCkge1xyXG4gICAgcmV0dXJuIHRoaXMucm91dGVyLnVybDtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5yZW1vdmVEcmF3ZXIoKTtcclxuICB9XHJcblxyXG4gIGxpc3RlblJvdXRlckNoYW5nZSgpIHtcclxuICAgIHRoaXMucm91dGVyU3Vic2NyaXB0aW9uID0gdGhpcy5yb3V0ZXIuZXZlbnRzXHJcbiAgICAgIC5waXBlKGZpbHRlcigoZXZlbnQpID0+IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGRyYXdlciA9IHRoaXMudW5pcXVlRHJhd2VyQ29tcG9uZW50O1xyXG4gICAgICAgIGRyYXdlciAmJiBkcmF3ZXIub25Sb3V0ZUNoYW5nZSgpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIHNldERyYXdlcihjb21wb25lbnQ6IERyYXdlckNvbXBvbmVudCkge1xyXG4gICAgaWYgKHRoaXMudW5pcXVlRHJhd2VyQ29tcG9uZW50KSB7XHJcbiAgICAgIHRoaXMucmVtb3ZlRHJhd2VyKCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnVuaXF1ZURyYXdlckNvbXBvbmVudCA9IGNvbXBvbmVudDtcclxuICAgIHRoaXMub3BlbmVkU3Vic2NyaXB0aW9uID0gY29tcG9uZW50LiRpc09wZW5lZC5zdWJzY3JpYmUoXHJcbiAgICAgICh2YWx1ZSkgPT4gIXZhbHVlICYmIHRoaXMuaGlkZSgpXHJcbiAgICApO1xyXG4gICAgdGhpcy5saXN0ZW5Sb3V0ZXJDaGFuZ2UoKTtcclxuICB9XHJcblxyXG4gIHJlbW92ZURyYXdlcigpIHtcclxuICAgIHRoaXMub3BlbmVkU3Vic2NyaXB0aW9uICYmIHRoaXMub3BlbmVkU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB0aGlzLnJvdXRlclN1YnNjcmlwdGlvbiAmJiB0aGlzLnJvdXRlclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgdGhpcy5vcGVuZWRTdWJzY3JpcHRpb24gPSBudWxsO1xyXG4gICAgdGhpcy5yb3V0ZXJTdWJzY3JpcHRpb24gPSBudWxsO1xyXG4gICAgdGhpcy51bmlxdWVEcmF3ZXJDb21wb25lbnQgPSBudWxsO1xyXG4gIH1cclxuXHJcbiAgc2hvdzxUPihcclxuICAgIGNvbXBvbmVudDogbmV3ICguLi5hcmdzOiBhbnlbXSkgPT4gVCxcclxuICAgIGNvbmZpZzogRHJhd2VyQ29uZmlnLFxyXG4gICAgZGF0YSA9IHt9XHJcbiAgKTogRHJhd2VyU2hvd0luc3RhbmNlPFQ+IHtcclxuICAgIGNvbnN0IGRyYXdlciA9IHRoaXMudW5pcXVlRHJhd2VyQ29tcG9uZW50O1xyXG4gICAgaWYgKCFkcmF3ZXIgfHwgZHJhd2VyLiRpc09wZW5lZC5nZXRWYWx1ZSgpKSB7XHJcbiAgICAgIHJldHVybiB7XHJcbiAgICAgICAgaW5zdGFuY2U6IG51bGwsXHJcbiAgICAgICAgcmVzdWx0OiBudWxsLFxyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHtcclxuICAgICAgaW5zdGFuY2U6IGRyYXdlci5zaG93KGNvbXBvbmVudCwgY29uZmlnLCBkYXRhKSxcclxuICAgICAgcmVzdWx0OiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGNhY2hlS2V5ID0gdGhpcy5jYWNoZUtleTtcclxuICAgICAgICB0aGlzLnJlc3VsdFByb21pc2VSZXNvbHZlTWFwLnNldChjYWNoZUtleSwgKHZhbHVlKSA9PiB7XHJcbiAgICAgICAgICByZXNvbHZlKHZhbHVlKTtcclxuICAgICAgICAgIHRoaXMucmVzdWx0UHJvbWlzZVJlc29sdmVNYXAuZGVsZXRlKGNhY2hlS2V5KTtcclxuICAgICAgICB9KTtcclxuICAgICAgfSksXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgaGlkZSgpIHtcclxuICAgIGNvbnN0IGRyYXdlciA9IHRoaXMudW5pcXVlRHJhd2VyQ29tcG9uZW50O1xyXG4gICAgY29uc3QgcmVzb2x2ZSA9IHRoaXMucmVzdWx0UHJvbWlzZVJlc29sdmVNYXAuZ2V0KHRoaXMuY2FjaGVLZXkpO1xyXG4gICAgaWYgKHJlc29sdmUpIHtcclxuICAgICAgcmVzb2x2ZSh7IHR5cGU6IFwiaGlkZVwiIH0pO1xyXG4gICAgICBkcmF3ZXIgJiYgZHJhd2VyLmJhY2soKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNvbXBsZXRlKGRhdGE/OiBhbnkpIHtcclxuICAgIGNvbnN0IGRyYXdlciA9IHRoaXMudW5pcXVlRHJhd2VyQ29tcG9uZW50O1xyXG4gICAgY29uc3QgcmVzb2x2ZSA9IHRoaXMucmVzdWx0UHJvbWlzZVJlc29sdmVNYXAuZ2V0KHRoaXMuY2FjaGVLZXkpO1xyXG4gICAgaWYgKHJlc29sdmUpIHtcclxuICAgICAgcmVzb2x2ZSh7IHR5cGU6IFwiY29tcGxldGVcIiwgZGF0YSB9KTtcclxuICAgICAgZHJhd2VyICYmIGRyYXdlci5iYWNrKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBkZWxldGVDYWNoZShjYWNoZUtleTogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBkcmF3ZXIgPSB0aGlzLnVuaXF1ZURyYXdlckNvbXBvbmVudDtcclxuICAgIGRyYXdlciAmJiBkcmF3ZXIuZGVsZXRlQ2FjaGUoY2FjaGVLZXkpO1xyXG4gIH1cclxufVxyXG4iXX0=