raise-common-lib 0.0.245 → 0.0.247

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 (174) hide show
  1. package/bundles/raise-common-lib.umd.js +155 -171
  2. package/bundles/raise-common-lib.umd.js.map +1 -1
  3. package/bundles/raise-common-lib.umd.min.js +1 -1
  4. package/bundles/raise-common-lib.umd.min.js.map +1 -1
  5. package/esm2015/lib/layout/drawer/index.component.js +5 -24
  6. package/esm2015/lib/service/static-resource.service.js +5 -2
  7. package/esm5/lib/layout/drawer/index.component.js +5 -24
  8. package/esm5/lib/service/static-resource.service.js +5 -3
  9. package/fesm2015/raise-common-lib.js +125 -140
  10. package/fesm2015/raise-common-lib.js.map +1 -1
  11. package/fesm5/raise-common-lib.js +152 -168
  12. package/fesm5/raise-common-lib.js.map +1 -1
  13. package/lib/layout/drawer/index.component.d.ts +1 -4
  14. package/package.json +1 -1
  15. package/raise-common-lib.metadata.json +1 -1
  16. package/src/assets/img/dashboard_icon/AddPerson.svg +4 -0
  17. package/src/assets/img/dashboard_icon/Angle-double-left.svg +12 -0
  18. package/src/assets/img/dashboard_icon/Angle-double-right.svg +12 -0
  19. package/src/assets/img/dashboard_icon/Arrow_collapse.svg +3 -0
  20. package/src/assets/img/dashboard_icon/Arrow_expand.svg +3 -0
  21. package/src/assets/img/dashboard_icon/Close.svg +4 -0
  22. package/src/assets/img/dashboard_icon/Edit_label.svg +3 -0
  23. package/src/assets/img/dashboard_icon/RemoveMini.svg +3 -0
  24. package/src/assets/img/dashboard_icon/ShareTo.svg +3 -0
  25. package/src/assets/img/dashboard_icon/add-dashboard.svg +4 -0
  26. package/src/assets/img/dashboard_icon/add-tab.svg +4 -0
  27. package/src/assets/img/dashboard_icon/angle-left.svg +12 -0
  28. package/src/assets/img/dashboard_icon/angle-right.svg +12 -0
  29. package/src/assets/img/dashboard_icon/area-white.svg +3 -0
  30. package/src/assets/img/dashboard_icon/area.svg +3 -0
  31. package/src/assets/img/dashboard_icon/bar-white.svg +14 -0
  32. package/src/assets/img/dashboard_icon/bar.svg +14 -0
  33. package/src/assets/img/dashboard_icon/basic-icon-filter.svg +14 -0
  34. package/src/assets/img/dashboard_icon/chart-combined-active.svg +7 -0
  35. package/src/assets/img/dashboard_icon/chart-combined.svg +7 -0
  36. package/src/assets/img/dashboard_icon/column-white.svg +14 -0
  37. package/src/assets/img/dashboard_icon/column.svg +26 -0
  38. package/src/assets/img/dashboard_icon/customize.png +0 -0
  39. package/src/assets/img/dashboard_icon/dashboard-description.svg +18 -0
  40. package/src/assets/img/dashboard_icon/dashboard-download.svg +18 -0
  41. package/src/assets/img/dashboard_icon/dashboard-drag.svg +28 -0
  42. package/src/assets/img/dashboard_icon/dashboard-duplicate.svg +24 -0
  43. package/src/assets/img/dashboard_icon/dashboard-icon.svg +12 -0
  44. package/src/assets/img/dashboard_icon/dashboard-properties.svg +18 -0
  45. package/src/assets/img/dashboard_icon/dashboard-rename.svg +18 -0
  46. package/src/assets/img/dashboard_icon/dashboard-share.svg +20 -0
  47. package/src/assets/img/dashboard_icon/dashboard-tab-delete.svg +4 -0
  48. package/src/assets/img/dashboard_icon/dashboard_Share.svg +3 -0
  49. package/src/assets/img/dashboard_icon/dashboard_ToolsHide.svg +4 -0
  50. package/src/assets/img/dashboard_icon/datamart_.svg +5 -0
  51. package/src/assets/img/dashboard_icon/datamart_Admin.svg +3 -0
  52. package/src/assets/img/dashboard_icon/datamart_Asset Portfolio.svg +4 -0
  53. package/src/assets/img/dashboard_icon/datamart_Bank.svg +3 -0
  54. package/src/assets/img/dashboard_icon/datamart_CRM.svg +6 -0
  55. package/src/assets/img/dashboard_icon/datamart_Company.svg +6 -0
  56. package/src/assets/img/dashboard_icon/datamart_Compliance.svg +3 -0
  57. package/src/assets/img/dashboard_icon/datamart_Contact.svg +3 -0
  58. package/src/assets/img/dashboard_icon/datamart_DASHBOARD.svg +4 -0
  59. package/src/assets/img/dashboard_icon/datamart_DOCX.svg +4 -0
  60. package/src/assets/img/dashboard_icon/datamart_ESG.svg +4 -0
  61. package/src/assets/img/dashboard_icon/datamart_Financials - Company.svg +3 -0
  62. package/src/assets/img/dashboard_icon/datamart_Fund.svg +4 -0
  63. package/src/assets/img/dashboard_icon/datamart_FundFinancial.svg +4 -0
  64. package/src/assets/img/dashboard_icon/datamart_HTML.svg +4 -0
  65. package/src/assets/img/dashboard_icon/datamart_Logs.svg +8 -0
  66. package/src/assets/img/dashboard_icon/datamart_PDF.svg +5 -0
  67. package/src/assets/img/dashboard_icon/datamart_Project.svg +3 -0
  68. package/src/assets/img/dashboard_icon/datamart_Templates.svg +7 -0
  69. package/src/assets/img/dashboard_icon/datamart_Track Change.svg +3 -0
  70. package/src/assets/img/dashboard_icon/datamart_VirtualGroup.svg +5 -0
  71. package/src/assets/img/dashboard_icon/datamart_XLS.svg +4 -0
  72. package/src/assets/img/dashboard_icon/desktop_selected.svg +10 -0
  73. package/src/assets/img/dashboard_icon/desktop_unselected.svg +10 -0
  74. package/src/assets/img/dashboard_icon/favourite-grey.svg +3 -0
  75. package/src/assets/img/dashboard_icon/favourite-yellow.svg +3 -0
  76. package/src/assets/img/dashboard_icon/forms-checkbox-square-tick.svg +3 -0
  77. package/src/assets/img/dashboard_icon/ftable-white.svg +24 -0
  78. package/src/assets/img/dashboard_icon/ftable.svg +24 -0
  79. package/src/assets/img/dashboard_icon/gadget-basic-arrow-down.svg +14 -0
  80. package/src/assets/img/dashboard_icon/gadget-basic-format.svg +21 -0
  81. package/src/assets/img/dashboard_icon/gadget-basic-sub-total.svg +18 -0
  82. package/src/assets/img/dashboard_icon/gadget-basic-total-1.svg +9 -0
  83. package/src/assets/img/dashboard_icon/gadget-basic-total.svg +16 -0
  84. package/src/assets/img/dashboard_icon/gadget-columns.svg +12 -0
  85. package/src/assets/img/dashboard_icon/gadget-delete.svg +18 -0
  86. package/src/assets/img/dashboard_icon/gadget-download.svg +18 -0
  87. package/src/assets/img/dashboard_icon/gadget-duplicate.svg +24 -0
  88. package/src/assets/img/dashboard_icon/gadget-edit.svg +18 -0
  89. package/src/assets/img/dashboard_icon/gadget-filters-light.svg +9 -0
  90. package/src/assets/img/dashboard_icon/gadget-filters.svg +9 -0
  91. package/src/assets/img/dashboard_icon/gadget-format-0.svg +8 -0
  92. package/src/assets/img/dashboard_icon/gadget-format-1.svg +8 -0
  93. package/src/assets/img/dashboard_icon/gadget-format.svg +19 -0
  94. package/src/assets/img/dashboard_icon/gadget-fullscreen.svg +30 -0
  95. package/src/assets/img/dashboard_icon/gadget-settings.svg +18 -0
  96. package/src/assets/img/dashboard_icon/gadget-sub-total-0.svg +18 -0
  97. package/src/assets/img/dashboard_icon/gadget-sub-total-1.svg +18 -0
  98. package/src/assets/img/dashboard_icon/gadget-thumbnail.svg +12 -0
  99. package/src/assets/img/dashboard_icon/gadget-type-light.svg +15 -0
  100. package/src/assets/img/dashboard_icon/gadget-type.svg +16 -0
  101. package/src/assets/img/dashboard_icon/geo-white.svg +14 -0
  102. package/src/assets/img/dashboard_icon/geo.svg +14 -0
  103. package/src/assets/img/dashboard_icon/historic-IRR-white.svg +9 -0
  104. package/src/assets/img/dashboard_icon/historic-IRR.svg +5 -0
  105. package/src/assets/img/dashboard_icon/information-1.png +0 -0
  106. package/src/assets/img/dashboard_icon/information-grey.svg +4 -0
  107. package/src/assets/img/dashboard_icon/menu-change-group.svg +3 -0
  108. package/src/assets/img/dashboard_icon/menu-close.svg +20 -0
  109. package/src/assets/img/dashboard_icon/menu-delete.svg +18 -0
  110. package/src/assets/img/dashboard_icon/menu-description.svg +19 -0
  111. package/src/assets/img/dashboard_icon/menu-download.svg +24 -0
  112. package/src/assets/img/dashboard_icon/menu-drag.svg +28 -0
  113. package/src/assets/img/dashboard_icon/menu-duplicate.svg +26 -0
  114. package/src/assets/img/dashboard_icon/menu-properties.svg +18 -0
  115. package/src/assets/img/dashboard_icon/menu-rename.svg +23 -0
  116. package/src/assets/img/dashboard_icon/menu-share.svg +20 -0
  117. package/src/assets/img/dashboard_icon/menu-toolbar.svg +10 -0
  118. package/src/assets/img/dashboard_icon/mobile_selected.svg +10 -0
  119. package/src/assets/img/dashboard_icon/mobile_unselected.svg +10 -0
  120. package/src/assets/img/dashboard_icon/more_Save.svg +3 -0
  121. package/src/assets/img/dashboard_icon/more_View.svg +3 -0
  122. package/src/assets/img/dashboard_icon/multi-series-white.svg +20 -0
  123. package/src/assets/img/dashboard_icon/multi-series.svg +6 -0
  124. package/src/assets/img/dashboard_icon/paint-bucket.svg +6 -0
  125. package/src/assets/img/dashboard_icon/pie-white.svg +16 -0
  126. package/src/assets/img/dashboard_icon/pie.svg +16 -0
  127. package/src/assets/img/dashboard_icon/pivot-chart-active.svg +8 -0
  128. package/src/assets/img/dashboard_icon/pivot-chart.svg +8 -0
  129. package/src/assets/img/dashboard_icon/pivot-white.svg +8 -0
  130. package/src/assets/img/dashboard_icon/pivot.svg +8 -0
  131. package/src/assets/img/dashboard_icon/pivot_column.svg +9 -0
  132. package/src/assets/img/dashboard_icon/pivot_column_active.svg +9 -0
  133. package/src/assets/img/dashboard_icon/pivot_line.svg +12 -0
  134. package/src/assets/img/dashboard_icon/pivot_line_active.svg +12 -0
  135. package/src/assets/img/dashboard_icon/print-A2.svg +3 -0
  136. package/src/assets/img/dashboard_icon/radar-white.svg +19 -0
  137. package/src/assets/img/dashboard_icon/radar.svg +19 -0
  138. package/src/assets/img/dashboard_icon/saveAs.svg +3 -0
  139. package/src/assets/img/dashboard_icon/search_input.svg +4 -0
  140. package/src/assets/img/dashboard_icon/table-3-white.svg +16 -0
  141. package/src/assets/img/dashboard_icon/table-3.svg +16 -0
  142. package/src/assets/img/dashboard_icon/table-filter-off.svg +5 -0
  143. package/src/assets/img/dashboard_icon/table-filter-on.svg +5 -0
  144. package/src/assets/img/dashboard_icon/tag_dashboard_selected.svg +3 -0
  145. package/src/assets/img/dashboard_icon/tag_dashboard_unselected.svg +3 -0
  146. package/src/assets/img/dashboard_icon/tag_share_selected.svg +3 -0
  147. package/src/assets/img/dashboard_icon/tag_share_unselected.svg +3 -0
  148. package/src/assets/img/dashboard_icon/tick.svg +26 -0
  149. package/src/assets/img/dashboard_icon/toolbar_AddDashboard.svg +5 -0
  150. package/src/assets/img/dashboard_icon/toolbar_AddGroup.svg +3 -0
  151. package/src/assets/img/dashboard_icon/toolbar_AddReport.svg +3 -0
  152. package/src/assets/img/dashboard_icon/toolbar_CollapseAll.svg +3 -0
  153. package/src/assets/img/dashboard_icon/toolbar_Customize.svg +3 -0
  154. package/src/assets/img/dashboard_icon/toolbar_DeleteDark.svg +3 -0
  155. package/src/assets/img/dashboard_icon/toolbar_Duplicate.svg +3 -0
  156. package/src/assets/img/dashboard_icon/toolbar_Edit.svg +3 -0
  157. package/src/assets/img/dashboard_icon/toolbar_ExpandAll.svg +3 -0
  158. package/src/assets/img/dashboard_icon/toolbar_Search.svg +3 -0
  159. package/src/assets/img/dashboard_icon/topbar-menu.svg +33 -0
  160. package/src/assets/img/dashboard_icon/topbar-refresh.svg +17 -0
  161. package/src/assets/img/dashboard_icon/topbar-tool-off.svg +12 -0
  162. package/src/assets/img/dashboard_icon/topbar-tool-on.svg +12 -0
  163. package/src/assets/img/dashboard_icon/trade-up-white.svg +14 -0
  164. package/src/assets/img/dashboard_icon/trade-up.svg +14 -0
  165. package/src/assets/img/dashboard_icon/transpose-white.svg +16 -0
  166. package/src/assets/img/dashboard_icon/transpose.svg +16 -0
  167. package/src/assets/style/reset/button.scss +181 -0
  168. package/src/assets/style/reset/checkbox.scss +45 -0
  169. package/src/assets/style/reset/dropdown.scss +730 -0
  170. package/src/assets/style/reset/grid.scss +985 -0
  171. package/src/assets/style/reset/input.scss +97 -0
  172. package/src/assets/style/reset/mat-dialog.scss +12 -0
  173. package/src/assets/style/reset/radio.scss +37 -0
  174. package/src/assets/style/reset/switch.scss +32 -0
@@ -5,32 +5,21 @@
5
5
  */
6
6
  import { Component, ViewChild, ViewContainerRef, ComponentFactoryResolver, ElementRef, ChangeDetectorRef, } from "@angular/core";
7
7
  import { DefaultDrawerConfig, DrawerService, } from "../../service/drawer.service";
8
- import { StaticResourceService } from "../../service/static-resource.service";
9
8
  export class DrawerComponent {
10
9
  /**
11
10
  * @param {?} resolver
12
11
  * @param {?} service
13
12
  * @param {?} ref
14
- * @param {?} staticResourceService
15
13
  */
16
- constructor(resolver, service, ref, staticResourceService) {
14
+ constructor(resolver, service, ref) {
17
15
  this.resolver = resolver;
18
16
  this.service = service;
19
17
  this.ref = ref;
20
- this.staticResourceService = staticResourceService;
21
18
  this.config = DefaultDrawerConfig;
22
19
  this.useAnimation = "yes";
23
20
  this.isOpened = false;
24
21
  this.hiddenDrawer = true;
25
- this.backImage = null;
26
22
  this.componentRefMap = new Map();
27
- staticResourceService.load("/assets/img/drawer-back.svg", (/**
28
- * @param {?} result
29
- * @return {?}
30
- */
31
- (result) => {
32
- this.backImage = result;
33
- }));
34
23
  }
35
24
  /**
36
25
  * @private
@@ -288,16 +277,15 @@ export class DrawerComponent {
288
277
  DrawerComponent.decorators = [
289
278
  { type: Component, args: [{
290
279
  selector: "rs-drawer",
291
- template: "<div #element id=\"rs-drawer-container\" class=\"rs-drawer-container\">\n <div class=\"rs-drawer-content\">\n <ng-content></ng-content>\n </div>\n <div\n #drawer\n class=\"rs-drawer\"\n [attr.data-mode]=\"config.mode\"\n [attr.data-opened]=\"isOpened ? 'yes' : 'no'\"\n [attr.data-animation]=\"useAnimation\"\n [hidden]=\"hiddenDrawer\"\n (animationend)=\"onAnimationEnd()\"\n >\n <div class=\"drawer-header\" #header>\n <button class=\"drawer-return-button\" (click)=\"hide()\">\n <img [src]=\"backImage\" alt=\"back\" />\n <span class=\"drawer-sub-title\" *ngIf=\"config.subTitle\">\n {{ config.subTitle }}\n </span>\n </button>\n <div class=\"drawer-title\">{{ config.title }}</div>\n <div class=\"drawer-header-slot\" #headerSlot></div>\n </div>\n <div class=\"drawer-top-slot\" #topSlot></div>\n <div class=\"drawer-content-box\">\n <div class=\"drawer-content\" #content>\n <div class=\"drawer-content-container\">\n <ng-template #dynamicComponentContainer></ng-template>\n </div>\n </div>\n </div>\n <div class=\"drawer-toolbar-slot\" #toolbarSlot></div>\n </div>\n</div>\n",
292
- styles: [":host{display:block;height:100%}#rs-drawer-container{height:100%}.rs-drawer-container{height:100%;background-color:transparent;overflow:hidden;position:relative}.rs-drawer-container .rs-drawer-content{width:100%;height:100%;overflow:auto;margin-right:0!important}.rs-drawer-container .rs-drawer{width:100%;height:100%;border-left:none;background-color:transparent;overflow:visible;pointer-events:none;opacity:0;display:flex;flex-flow:column nowrap;position:absolute;z-index:2;top:0;left:100%}.rs-drawer-container .rs-drawer[data-opened=yes]{left:0;opacity:1}.rs-drawer-container .rs-drawer[data-animation=yes][data-opened=yes]{-webkit-animation:.5s ease-in-out drawer-open;animation:.5s ease-in-out drawer-open}@-webkit-keyframes drawer-open{from{left:100%;opacity:0}to{left:0;opacity:1}}@keyframes drawer-open{from{left:100%;opacity:0}to{left:0;opacity:1}}.rs-drawer-container .rs-drawer[data-animation=yes][data-opened=no]{-webkit-animation:.5s ease-in-out drawer-close;animation:.5s ease-in-out drawer-close}@-webkit-keyframes drawer-close{from{left:0;opacity:1}to{left:100%;opacity:0}}@keyframes drawer-close{from{left:0;opacity:1}to{left:100%;opacity:0}}.rs-drawer-container .rs-drawer[hidden]{display:none}.rs-drawer-container .rs-drawer .drawer-header{flex:none;display:flex;flex-flow:row nowrap;justify-content:flex-start;align-items:center;box-sizing:content-box;pointer-events:auto}.rs-drawer-container .rs-drawer .drawer-header .drawer-return-button{flex:none;display:flex;flex-flow:row nowrap;align-items:center;padding:0;border:none;background-color:transparent;cursor:pointer}.rs-drawer-container .rs-drawer .drawer-header .drawer-return-button img{width:24px;height:24px;margin-right:8px;transition:transform 125ms ease-in-out}.rs-drawer-container .rs-drawer .drawer-header .drawer-return-button:hover img{transform:translateX(-2px)}.rs-drawer-container .rs-drawer .drawer-header .drawer-return-button .drawer-sub-title{margin-right:12px;font-family:Arial;font-style:normal;font-weight:400}.rs-drawer-container .rs-drawer .drawer-header .drawer-title{flex:none;min-height:14px;padding:0 12px;border-left:1px solid #bdc4ca;font-family:Arial;font-style:normal;font-weight:400}.rs-drawer-container .rs-drawer .drawer-header .drawer-title:empty{padding:0}.rs-drawer-container .rs-drawer .drawer-content-box{flex:auto;height:0;background-color:#f7fafb;pointer-events:auto}.rs-drawer-container .rs-drawer .drawer-content{height:100%;padding:0 20px;border:1px solid #ebedf0;border-radius:15px;background-color:#fff;display:flex;flex-flow:column nowrap}.rs-drawer-container .rs-drawer .drawer-content .drawer-content-container{flex:auto;overflow:hidden auto}.rs-drawer-container .rs-drawer .drawer-toolbar-slot{flex:none;height:32px;margin-left:auto;display:flex;flex-flow:row nowrap;justify-content:flex-end;align-items:center;pointer-events:auto}.rs-drawer-container .rs-drawer .drawer-toolbar-slot:empty{display:none}.rs-drawer-container .rs-drawer .drawer-top-slot{flex:none;pointer-events:auto}.rs-drawer-container .rs-drawer .drawer-top-slot:empty{height:var(--drawer-top,0);pointer-events:none}.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-header{height:46px;padding:0 12px 0 8px;background-color:#f7fafb}.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-header .drawer-sub-title,.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-header .drawer-title{color:#1f3f5c;font-size:15px;font-weight:700;line-height:18px}.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-content{padding-bottom:20px}.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-content .drawer-content-container{margin-right:-20px;padding-right:20px}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-top-slot:empty+.drawer-content-box{padding-top:calc((var(--drawer-top,0) + 1) * 16px)}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-header{height:24px;padding:6px 0;border-bottom:1px solid #eaedf0}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-header .drawer-sub-title,.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-header .drawer-title{color:#44566c;font-size:12px;line-height:14px}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-header .drawer-title{font-weight:700}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-content .drawer-content-container{margin-right:-20px;padding-right:20px;padding-left:8px}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-toolbar-slot{width:100%;padding:16px 0;box-sizing:content-box;border-top:1px solid #eaedf0}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar]{display:flex;flex-flow:row nowrap;justify-content:flex-end;align-items:center;gap:12px}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button{display:flex;flex-flow:row nowrap;justify-content:center;align-items:center;gap:6px;min-width:80px;height:32px;padding:0 12px;border:1px solid #adb5bd;border-radius:4px;background-color:#fff;cursor:pointer;color:#44566c;font-size:13px;font-family:Arial;font-style:normal;font-weight:400;line-height:16px}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button:hover{border-color:#6c7c90}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button:disabled{opacity:1!important;border-color:#6c7c9066;color:#44566c66;cursor:unset}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button.primary{border:none;background-color:#1364b3;color:#fff}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button.primary:hover{background-color:#176bca}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button.primary:disabled{background-color:#1364b366}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button img{width:16px;height:16px}::ng-deep .rs-drawer-container .rs-drawer[data-mode=outer] .drawer-toolbar-slot [drawer-toolbar] button{height:26px;font-size:12px;line-height:14px}::ng-deep .rs-drawer-container .rs-drawer[data-mode=inner] .drawer-toolbar-slot [drawer-toolbar] button img{display:none}"]
280
+ template: "<div #element id=\"rs-drawer-container\" class=\"rs-drawer-container\">\n <div class=\"rs-drawer-content\">\n <ng-content></ng-content>\n </div>\n <div\n #drawer\n class=\"rs-drawer\"\n [attr.data-mode]=\"config.mode\"\n [attr.data-opened]=\"isOpened ? 'yes' : 'no'\"\n [attr.data-animation]=\"useAnimation\"\n [hidden]=\"hiddenDrawer\"\n (animationend)=\"onAnimationEnd()\"\n >\n <div class=\"drawer-header\" #header>\n <button class=\"drawer-return-button\" (click)=\"hide()\">\n <span class=\"drawer-sub-title\" *ngIf=\"config.subTitle\">\n {{ config.subTitle }}\n </span>\n </button>\n <div class=\"drawer-title\">{{ config.title }}</div>\n <div class=\"drawer-header-slot\" #headerSlot></div>\n </div>\n <div class=\"drawer-top-slot\" #topSlot></div>\n <div class=\"drawer-content-box\">\n <div class=\"drawer-content\" #content>\n <div class=\"drawer-content-container\">\n <ng-template #dynamicComponentContainer></ng-template>\n </div>\n </div>\n </div>\n <div class=\"drawer-toolbar-slot\" #toolbarSlot></div>\n </div>\n</div>\n",
281
+ styles: [":host{display:block;height:100%}#rs-drawer-container{height:100%}.rs-drawer-container{height:100%;background-color:transparent;overflow:hidden;position:relative}.rs-drawer-container .rs-drawer-content{width:100%;height:100%;overflow:auto;margin-right:0!important}.rs-drawer-container .rs-drawer{width:100%;height:100%;border-left:none;background-color:transparent;overflow:visible;pointer-events:none;opacity:0;display:flex;flex-flow:column nowrap;position:absolute;z-index:2;top:0;left:100%}.rs-drawer-container .rs-drawer[data-opened=yes]{left:0;opacity:1}.rs-drawer-container .rs-drawer[data-animation=yes][data-opened=yes]{-webkit-animation:.5s ease-in-out drawer-open;animation:.5s ease-in-out drawer-open}@-webkit-keyframes drawer-open{from{left:100%;opacity:0}to{left:0;opacity:1}}@keyframes drawer-open{from{left:100%;opacity:0}to{left:0;opacity:1}}.rs-drawer-container .rs-drawer[data-animation=yes][data-opened=no]{-webkit-animation:.5s ease-in-out drawer-close;animation:.5s ease-in-out drawer-close}@-webkit-keyframes drawer-close{from{left:0;opacity:1}to{left:100%;opacity:0}}@keyframes drawer-close{from{left:0;opacity:1}to{left:100%;opacity:0}}.rs-drawer-container .rs-drawer[hidden]{display:none}.rs-drawer-container .rs-drawer .drawer-header{flex:none;display:flex;flex-flow:row nowrap;justify-content:flex-start;align-items:center;box-sizing:content-box;pointer-events:auto}.rs-drawer-container .rs-drawer .drawer-header .drawer-return-button{flex:none;display:flex;flex-flow:row nowrap;align-items:center;padding:0;border:none;background-color:transparent;cursor:pointer}.rs-drawer-container .rs-drawer .drawer-header .drawer-return-button::before{content:url(\"data:image/svg+xml;charset=utf-8;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEyIDE4TDcuNTQ5ODYgMTJMMTIgNiIgc3Ryb2tlPSIjNkM3QzkwIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz4KPHBhdGggZD0iTTE3LjQyNyAxMi41QzE3LjcwMzEgMTIuNSAxNy45MjcgMTIuMjc2MSAxNy45MjcgMTJDMTcuOTI3IDExLjcyMzkgMTcuNzAzMSAxMS41IDE3LjQyNyAxMS41TDE3LjQyNyAxMi41Wk03LjM5ODkzIDEyLjVMMTcuNDI3IDEyLjVMMTcuNDI3IDExLjVMNy4zOTg5MyAxMS41TDcuMzk4OTMgMTIuNVoiIGZpbGw9IiM2QzdDOTAiLz4KPC9zdmc+Cg==\");width:24px;height:24px;margin-right:8px;transition:transform 125ms ease-in-out}.rs-drawer-container .rs-drawer .drawer-header .drawer-return-button:hover::before{transform:translateX(-2px)}.rs-drawer-container .rs-drawer .drawer-header .drawer-return-button .drawer-sub-title{margin-right:12px;font-family:Arial;font-style:normal;font-weight:400}.rs-drawer-container .rs-drawer .drawer-header .drawer-title{flex:none;min-height:14px;padding:0 12px;border-left:1px solid #bdc4ca;font-family:Arial;font-style:normal;font-weight:400}.rs-drawer-container .rs-drawer .drawer-header .drawer-title:empty{padding:0}.rs-drawer-container .rs-drawer .drawer-content-box{flex:auto;height:0;background-color:#f7fafb;pointer-events:auto}.rs-drawer-container .rs-drawer .drawer-content{height:100%;padding:0 20px;border:1px solid #ebedf0;border-radius:15px;background-color:#fff;display:flex;flex-flow:column nowrap}.rs-drawer-container .rs-drawer .drawer-content .drawer-content-container{flex:auto;overflow:hidden auto}.rs-drawer-container .rs-drawer .drawer-toolbar-slot{flex:none;height:32px;margin-left:auto;display:flex;flex-flow:row nowrap;justify-content:flex-end;align-items:center;pointer-events:auto}.rs-drawer-container .rs-drawer .drawer-toolbar-slot:empty{display:none}.rs-drawer-container .rs-drawer .drawer-top-slot{flex:none;pointer-events:auto}.rs-drawer-container .rs-drawer .drawer-top-slot:empty{height:var(--drawer-top,0);pointer-events:none}.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-header{height:46px;padding:0 12px 0 8px;background-color:#f7fafb}.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-header .drawer-sub-title,.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-header .drawer-title{color:#1f3f5c;font-size:15px;font-weight:700;line-height:18px}.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-content{padding-bottom:20px}.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-content .drawer-content-container{margin-right:-20px;padding-right:20px}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-top-slot:empty+.drawer-content-box{padding-top:calc((var(--drawer-top,0) + 1) * 16px)}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-header{height:24px;padding:6px 0;border-bottom:1px solid #eaedf0}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-header .drawer-sub-title,.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-header .drawer-title{color:#44566c;font-size:12px;line-height:14px}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-header .drawer-title{font-weight:700}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-content .drawer-content-container{margin-right:-20px;padding-right:20px;padding-left:8px}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-toolbar-slot{width:100%;padding:16px 0;box-sizing:content-box;border-top:1px solid #eaedf0}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar]{display:flex;flex-flow:row nowrap;justify-content:flex-end;align-items:center;gap:12px}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button{display:flex;flex-flow:row nowrap;justify-content:center;align-items:center;gap:6px;min-width:80px;height:32px;padding:0 12px;border:1px solid #adb5bd;border-radius:4px;background-color:#fff;cursor:pointer;color:#44566c;font-size:13px;font-family:Arial;font-style:normal;font-weight:400;line-height:16px}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button:hover{border-color:#6c7c90}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button:disabled{opacity:1!important;border-color:#6c7c9066;color:#44566c66;cursor:unset}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button.primary{border:none;background-color:#1364b3;color:#fff}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button.primary:hover{background-color:#176bca}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button.primary:disabled{background-color:#1364b366}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button img{width:16px;height:16px}::ng-deep .rs-drawer-container .rs-drawer[data-mode=outer] .drawer-toolbar-slot [drawer-toolbar] button{height:26px;font-size:12px;line-height:14px}::ng-deep .rs-drawer-container .rs-drawer[data-mode=inner] .drawer-toolbar-slot [drawer-toolbar] button img{display:none}"]
293
282
  }] }
294
283
  ];
295
284
  /** @nocollapse */
296
285
  DrawerComponent.ctorParameters = () => [
297
286
  { type: ComponentFactoryResolver },
298
287
  { type: DrawerService },
299
- { type: ChangeDetectorRef },
300
- { type: StaticResourceService }
288
+ { type: ChangeDetectorRef }
301
289
  ];
302
290
  DrawerComponent.propDecorators = {
303
291
  element: [{ type: ViewChild, args: ["element", { static: false },] }],
@@ -340,8 +328,6 @@ if (false) {
340
328
  DrawerComponent.prototype.isOpened;
341
329
  /** @type {?} */
342
330
  DrawerComponent.prototype.hiddenDrawer;
343
- /** @type {?} */
344
- DrawerComponent.prototype.backImage;
345
331
  /**
346
332
  * @type {?}
347
333
  * @private
@@ -362,10 +348,5 @@ if (false) {
362
348
  * @private
363
349
  */
364
350
  DrawerComponent.prototype.ref;
365
- /**
366
- * @type {?}
367
- * @private
368
- */
369
- DrawerComponent.prototype.staticResourceService;
370
351
  }
371
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vcmFpc2UtY29tbW9uLWxpYi8iLCJzb3VyY2VzIjpbImxpYi9sYXlvdXQvZHJhd2VyL2luZGV4LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsU0FBUyxFQUNULGdCQUFnQixFQUNoQix3QkFBd0IsRUFFeEIsVUFBVSxFQUNWLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBRUwsbUJBQW1CLEVBQ25CLGFBQWEsR0FDZCxNQUFNLDhCQUE4QixDQUFDO0FBQ3RDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBZTlFLE1BQU0sT0FBTyxlQUFlOzs7Ozs7O0lBMEIxQixZQUNVLFFBQWtDLEVBQ2xDLE9BQXNCLEVBQ3RCLEdBQXNCLEVBQ3RCLHFCQUE0QztRQUg1QyxhQUFRLEdBQVIsUUFBUSxDQUEwQjtRQUNsQyxZQUFPLEdBQVAsT0FBTyxDQUFlO1FBQ3RCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQ3RCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUFadEQsV0FBTSxHQUFpQixtQkFBbUIsQ0FBQztRQUMzQyxpQkFBWSxHQUFpQixLQUFLLENBQUM7UUFDbkMsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixpQkFBWSxHQUFHLElBQUksQ0FBQztRQUNwQixjQUFTLEdBQUcsSUFBSSxDQUFDO1FBRVQsb0JBQWUsR0FBRyxJQUFJLEdBQUcsRUFBa0MsQ0FBQztRQVFsRSxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsNkJBQTZCOzs7O1FBQUUsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUNuRSxJQUFJLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQztRQUMxQixDQUFDLEVBQUMsQ0FBQztJQUNMLENBQUM7Ozs7OztJQUVPLHNCQUFzQixDQUFDLFNBQXNDOzs7Y0FFN0QsT0FBTyxHQUFH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RUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7cUJBQ3JDLFNBQVMsU0FBQyxRQUFRLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO3NCQUNyQyxTQUFTLFNBQUMsU0FBUyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTswQkFFdEMsU0FBUyxTQUFDLGFBQWEsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7eUJBRTFDLFNBQVMsU0FBQyxZQUFZLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO3NCQUV6QyxTQUFTLFNBQUMsU0FBUyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTt3QkFFdEMsU0FBUyxTQUFDLDJCQUEyQixFQUFFO29CQUN0QyxJQUFJLEVBQUUsZ0JBQWdCO29CQUN0QixNQUFNLEVBQUUsS0FBSztpQkFDZDs7OztJQWRELGtDQUE2RTs7SUFDN0UsaUNBQTJFOztJQUMzRSxpQ0FBMkU7O0lBQzNFLGtDQUE2RTs7SUFFN0Usc0NBQ3dDOztJQUN4QyxxQ0FDdUM7O0lBQ3ZDLGtDQUE2RTs7Ozs7SUFFN0Usb0NBSW9DOztJQUVwQyxpQ0FBMkM7O0lBQzNDLHVDQUFtQzs7SUFDbkMsbUNBQWlCOztJQUNqQix1Q0FBb0I7O0lBQ3BCLG9DQUFpQjs7Ozs7SUFFakIsMENBQW9FOzs7OztJQUdsRSxtQ0FBMEM7Ozs7O0lBQzFDLGtDQUE4Qjs7Ozs7SUFDOUIsOEJBQThCOzs7OztJQUM5QixnREFBb0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NvbnRhaW5lclJlZixcbiAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICBDb21wb25lbnRSZWYsXG4gIEVsZW1lbnRSZWYsXG4gIENoYW5nZURldGVjdG9yUmVmLFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHtcbiAgRHJhd2VyQ29uZmlnLFxuICBEZWZhdWx0RHJhd2VyQ29uZmlnLFxuICBEcmF3ZXJTZXJ2aWNlLFxufSBmcm9tIFwiLi4vLi4vc2VydmljZS9kcmF3ZXIuc2VydmljZVwiO1xuaW1wb3J0IHsgU3RhdGljUmVzb3VyY2VTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2Uvc3RhdGljLXJlc291cmNlLnNlcnZpY2VcIjtcblxudHlwZSBEcmF3ZXJDb21wb25lbnRDYWNoZSA9IHtcbiAgcmVmOiBDb21wb25lbnRSZWY8YW55PjtcbiAgY29uZmlnOiBEcmF3ZXJDb25maWc7XG4gIHRvb2xiYXJFbDogSFRNTEVsZW1lbnQ7XG4gIGhlYWRlckVsOiBIVE1MRWxlbWVudDtcbiAgdG9wRWw6IEhUTUxFbGVtZW50O1xufTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcInJzLWRyYXdlclwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL2luZGV4LmNvbXBvbmVudC5odG1sXCIsXG4gIHN0eWxlVXJsczogW1wiLi9pbmRleC5jb21wb25lbnQuc2Nzc1wiXSxcbn0pXG5leHBvcnQgY2xhc3MgRHJhd2VyQ29tcG9uZW50IHtcbiAgQFZpZXdDaGlsZChcImVsZW1lbnRcIiwgeyBzdGF0aWM6IGZhbHNlIH0pIGVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuICBAVmlld0NoaWxkKFwiZHJhd2VyXCIsIHsgc3RhdGljOiBmYWxzZSB9KSBkcmF3ZXI6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuICBAVmlld0NoaWxkKFwiaGVhZGVyXCIsIHsgc3RhdGljOiBmYWxzZSB9KSBoZWFkZXI6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuICBAVmlld0NoaWxkKFwiY29udGVudFwiLCB7IHN0YXRpYzogZmFsc2UgfSkgY29udGVudDogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG5cbiAgQFZpZXdDaGlsZChcInRvb2xiYXJTbG90XCIsIHsgc3RhdGljOiBmYWxzZSB9KVxuICB0b29sYmFyU2xvdDogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG4gIEBWaWV3Q2hpbGQoXCJoZWFkZXJTbG90XCIsIHsgc3RhdGljOiBmYWxzZSB9KVxuICBoZWFkZXJTbG90OiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcbiAgQFZpZXdDaGlsZChcInRvcFNsb3RcIiwgeyBzdGF0aWM6IGZhbHNlIH0pIHRvcFNsb3Q6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuXG4gIEBWaWV3Q2hpbGQoXCJkeW5hbWljQ29tcG9uZW50Q29udGFpbmVyXCIsIHtcbiAgICByZWFkOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgIHN0YXRpYzogZmFsc2UsXG4gIH0pXG4gIHByaXZhdGUgY29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmO1xuXG4gIGNvbmZpZzogRHJhd2VyQ29uZmlnID0gRGVmYXVsdERyYXdlckNvbmZpZztcbiAgdXNlQW5pbWF0aW9uOiBcInllc1wiIHwgXCJub1wiID0gXCJ5ZXNcIjtcbiAgaXNPcGVuZWQgPSBmYWxzZTtcbiAgaGlkZGVuRHJhd2VyID0gdHJ1ZTtcbiAgYmFja0ltYWdlID0gbnVsbDtcblxuICBwcml2YXRlIGNvbXBvbmVudFJlZk1hcCA9IG5ldyBNYXA8c3RyaW5nLCBEcmF3ZXJDb21wb25lbnRDYWNoZVtdPigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICBwcml2YXRlIHNlcnZpY2U6IERyYXdlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgc3RhdGljUmVzb3VyY2VTZXJ2aWNlOiBTdGF0aWNSZXNvdXJjZVNlcnZpY2UsXG4gICkge1xuICAgIHN0YXRpY1Jlc291cmNlU2VydmljZS5sb2FkKFwiL2Fzc2V0cy9pbWcvZHJhd2VyLWJhY2suc3ZnXCIsIChyZXN1bHQpID0+IHtcbiAgICAgIHRoaXMuYmFja0ltYWdlID0gcmVzdWx0O1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVEeW5hbWljQ29tcG9uZW50KGNvbXBvbmVudDogbmV3ICguLi5hcmdzOiBhbnlbXSkgPT4gYW55KSB7XG4gICAgLy8g56Gu5L+d5Zyo6LCD55So5LmL5YmN55uu5qCH57uE5Lu25bey57uP5ZyoZW50cnlDb21wb25lbnRz5Lit5aOw5piOXG4gICAgY29uc3QgZmFjdG9yeSA9IHRoaXMucmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoY29tcG9uZW50KTtcbiAgICBjb25zdCBjb21wb25lbnRSZWYgPSB0aGlzLmNvbnRhaW5lci5jcmVhdGVDb21wb25lbnQoZmFjdG9yeSk7XG4gICAgcmV0dXJuIGNvbXBvbmVudFJlZjtcbiAgfVxuXG4gIHByaXZhdGUgZGVzdHJveUR5bmFtaWNDb21wb25lbnQoY29tcG9uZW50UmVmOiBDb21wb25lbnRSZWY8YW55Pikge1xuICAgIGlmIChjb21wb25lbnRSZWYpIHtcbiAgICAgIGNvbXBvbmVudFJlZi5kZXN0cm95KCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzZXRDb21wb25lbnREYXRhKFxuICAgIGNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPGFueT4sXG4gICAgZGF0YTogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9LFxuICApIHtcbiAgICAvLyDlpoLmnpzpnIDopoHkvKDpgJLmlbDmja7nu5nliqjmgIHnu4Tku7bvvIzlj6/ku6Xov5nmoLflgZpcbiAgICBpZiAoY29tcG9uZW50UmVmKSB7XG4gICAgICBPYmplY3QuZW50cmllcyhkYXRhKS5mb3JFYWNoKChba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgICAgY29tcG9uZW50UmVmLmluc3RhbmNlW2tleV0gPSB2YWx1ZTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0U2xvdEVsZW1lbnQoY29tcG9uZW50UmVmOiBDb21wb25lbnRSZWY8YW55Piwgc2VsZWN0b3I6IHN0cmluZykge1xuICAgIGNvbnN0IGNvbXBvbmVudEVsID0gY29tcG9uZW50UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcmV0dXJuIGNvbXBvbmVudEVsLnF1ZXJ5U2VsZWN0b3Ioc2VsZWN0b3IpIGFzIEhUTUxFbGVtZW50O1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRTbG90RWxlbWVudChzbG90RWw6IEhUTUxFbGVtZW50LCBjb250YWluZXJFbDogSFRNTEVsZW1lbnQpIHtcbiAgICBjb250YWluZXJFbC5pbm5lckhUTUwgPSBcIlwiO1xuICAgIGlmIChzbG90RWwpIHtcbiAgICAgIGNvbnRhaW5lckVsLmFwcGVuZChzbG90RWwpO1xuICAgIH1cbiAgfVxuXG4gIHNldENhY2hlKGNhY2hlOiBEcmF3ZXJDb21wb25lbnRDYWNoZSkge1xuICAgIHRoaXMuc2V0U2xvdEVsZW1lbnQoY2FjaGUudG9vbGJhckVsLCB0aGlzLnRvb2xiYXJTbG90Lm5hdGl2ZUVsZW1lbnQpO1xuICAgIHRoaXMuc2V0U2xvdEVsZW1lbnQoY2FjaGUuaGVhZGVyRWwsIHRoaXMuaGVhZGVyU2xvdC5uYXRpdmVFbGVtZW50KTtcbiAgICB0aGlzLnNldFNsb3RFbGVtZW50KGNhY2hlLnRvcEVsLCB0aGlzLnRvcFNsb3QubmF0aXZlRWxlbWVudCk7XG5cbiAgICBjb25zdCBkcmF3ZXJUb3AgPSBjYWNoZS5jb25maWcudG9wID8gYCR7Y2FjaGUuY29uZmlnLnRvcH1weGAgOiBcIlwiO1xuICAgIHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KFwiLS1kcmF3ZXItdG9wXCIsIGRyYXdlclRvcCk7XG5cbiAgICBpZiAoY2FjaGUuY29uZmlnLm1vZGUgPT09IFwiaW5uZXJcIikge1xuICAgICAgdGhpcy5jb250ZW50Lm5hdGl2ZUVsZW1lbnQuaW5zZXJ0QmVmb3JlKFxuICAgICAgICB0aGlzLmhlYWRlci5uYXRpdmVFbGVtZW50LFxuICAgICAgICB0aGlzLmNvbnRlbnQubmF0aXZlRWxlbWVudC5maXJzdENoaWxkLFxuICAgICAgKTtcbiAgICAgIHRoaXMuY29udGVudC5uYXRpdmVFbGVtZW50LmFwcGVuZCh0aGlzLnRvb2xiYXJTbG90Lm5hdGl2ZUVsZW1lbnQpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmRyYXdlci5uYXRpdmVFbGVtZW50Lmluc2VydEJlZm9yZShcbiAgICAgICAgdGhpcy5oZWFkZXIubmF0aXZlRWxlbWVudCxcbiAgICAgICAgdGhpcy5kcmF3ZXIubmF0aXZlRWxlbWVudC5maXJzdENoaWxkLFxuICAgICAgKTtcbiAgICAgIHRoaXMuaGVhZGVyLm5hdGl2ZUVsZW1lbnQuYXBwZW5kKHRoaXMudG9vbGJhclNsb3QubmF0aXZlRWxlbWVudCk7XG4gICAgfVxuXG4gICAgdGhpcy5jb25maWcgPSBjYWNoZS5jb25maWc7XG4gICAgdGhpcy5yZWYubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBzZXRDb25maWcoY29uZmlnOiBQYXJ0aWFsPERyYXdlckNvbmZpZz4pIHtcbiAgICBjb25zdCBjYWNoZXMgPSB0aGlzLmNvbXBvbmVudFJlZk1hcC5nZXQodGhpcy5zZXJ2aWNlLmNhY2hlS2V5KSB8fCBbXTtcbiAgICBjb25zdCBjYWNoZSA9IGNhY2hlcy5zbGljZSgtMSlbMF07XG4gICAgaWYgKGNhY2hlKSB7XG4gICAgICBjYWNoZS5jb25maWcgPSB7IC4uLmNhY2hlLmNvbmZpZywgLi4uY29uZmlnIH07XG4gICAgICB0aGlzLnNldENhY2hlKGNhY2hlKTtcbiAgICB9XG4gIH1cblxuICBzaG93PFQ+KFxuICAgIGNvbXBvbmVudDogbmV3ICguLi5hcmdzOiBhbnlbXSkgPT4gVCxcbiAgICBjb25maWc6IERyYXdlckNvbmZpZyxcbiAgICBkYXRhOiBSZWNvcmQ8c3RyaW5nLCBhbnk+LFxuICApOiBUIHtcbiAgICBjb25zdCBzaG93Q29uZmlnID0geyAuLi5EZWZhdWx0RHJhd2VyQ29uZmlnLCAuLi5jb25maWcgfTtcbiAgICBjb25zdCBjb21wb25lbnRSZWYgPSB0aGlzLmNyZWF0ZUR5bmFtaWNDb21wb25lbnQoY29tcG9uZW50KTtcbiAgICBjb25zdCB0b29sYmFyRWwgPSB0aGlzLmdldFNsb3RFbGVtZW50KGNvbXBvbmVudFJlZiwgXCJbZHJhd2VyLXRvb2xiYXJdXCIpO1xuICAgIGNvbnN0IGhlYWRlckVsID0gdGhpcy5nZXRTbG90RWxlbWVudChjb21wb25lbnRSZWYsIFwiW2RyYXdlci1oZWFkZXJdXCIpO1xuICAgIGNvbnN0IHRvcEVsID0gdGhpcy5nZXRTbG90RWxlbWVudChjb21wb25lbnRSZWYsIFwiW2RyYXdlci10b3BdXCIpO1xuICAgIGNvbnN0IGNhY2hlID0ge1xuICAgICAgY29uZmlnOiBzaG93Q29uZmlnLFxuICAgICAgcmVmOiBjb21wb25lbnRSZWYsXG4gICAgICB0b29sYmFyRWwsXG4gICAgICBoZWFkZXJFbCxcbiAgICAgIHRvcEVsLFxuICAgIH07XG5cbiAgICBjb25zdCBjYWNoZXMgPSB0aGlzLmNvbXBvbmVudFJlZk1hcC5nZXQodGhpcy5zZXJ2aWNlLmNhY2hlS2V5KSB8fCBbXTtcbiAgICB0aGlzLmNvbXBvbmVudFJlZk1hcC5zZXQodGhpcy5zZXJ2aWNlLmNhY2hlS2V5LCBbLi4uY2FjaGVzLCBjYWNoZV0pO1xuICAgIC8vIOWmguaenOaYr+esrOS4gOS4que8k+WtmO+8jOaJk+W8gOaKveWxiVxuICAgIGlmIChjYWNoZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aGlzLnRvZ2dsZU9wZW5TdGF0dXModHJ1ZSwgdHJ1ZSk7XG4gICAgfVxuICAgIHRoaXMudG9nZ2xlQ2FjaGUoY2FjaGUpO1xuICAgIHRoaXMuc2V0Q29tcG9uZW50RGF0YShjb21wb25lbnRSZWYsIGRhdGEpO1xuXG4gICAgcmV0dXJuIGNvbXBvbmVudFJlZi5pbnN0YW5jZTtcbiAgfVxuXG4gIGhpZGUoKSB7XG4gICAgdGhpcy5zZXJ2aWNlLmhpZGUoKTtcbiAgfVxuXG4gIGJhY2soKSB7XG4gICAgdGhpcy5kZWxldGVDYWNoZSh0aGlzLnNlcnZpY2UuY2FjaGVLZXkpO1xuXG4gICAgLy8g5aaC5p6c5pyJ5LiK5LiA5Liq57yT5a2Y77yM6K6+572u5Li65b2T5YmN57yT5a2Y77yM5ZCm5YiZ5YWz6Zet5oq95bGJXG4gICAgY29uc3QgY2FjaGVzID0gdGhpcy5jb21wb25lbnRSZWZNYXAuZ2V0KHRoaXMuc2VydmljZS5jYWNoZUtleSkgfHwgW107XG4gICAgY29uc3QgY2FjaGUgPSBjYWNoZXMuc2xpY2UoLTEpWzBdO1xuICAgIGlmIChjYWNoZSkge1xuICAgICAgdGhpcy50b2dnbGVDYWNoZShjYWNoZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudG9nZ2xlT3BlblN0YXR1cyhmYWxzZSwgdHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBkZWxldGVDYWNoZShjYWNoZUtleTogc3RyaW5nKSB7XG4gICAgY29uc3QgY2FjaGVzID0gdGhpcy5jb21wb25lbnRSZWZNYXAuZ2V0KGNhY2hlS2V5KSB8fCBbXTtcbiAgICBjb25zdCBjYWNoZSA9IGNhY2hlcy5zbGljZSgtMSlbMF07XG4gICAgaWYgKGNhY2hlKSB7XG4gICAgICB0aGlzLmRlc3Ryb3lEeW5hbWljQ29tcG9uZW50KGNhY2hlLnJlZik7XG4gICAgICBjYWNoZXMucG9wKCk7XG4gICAgfVxuICAgIGlmIChjYWNoZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aGlzLmNvbXBvbmVudFJlZk1hcC5kZWxldGUoY2FjaGVLZXkpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgdG9nZ2xlQ2FjaGUoY2FjaGU6IERyYXdlckNvbXBvbmVudENhY2hlKSB7XG4gICAgdGhpcy5jb21wb25lbnRSZWZNYXAuZm9yRWFjaCgoY2FjaGVzKSA9PiB7XG4gICAgICBjYWNoZXMuZm9yRWFjaCgoYykgPT4ge1xuICAgICAgICBjLnJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50LnN0eWxlLmRpc3BsYXkgPSBjID09PSBjYWNoZSA/IFwiXCIgOiBcIm5vbmVcIjtcbiAgICAgIH0pO1xuICAgIH0pO1xuICAgIHRoaXMuc2V0Q2FjaGUoY2FjaGUpO1xuICB9XG5cbiAgZGVsZXRlQWxsQ2FjaGUoY2FjaGVLZXk6IHN0cmluZykge1xuICAgIGNvbnN0IGNhY2hlcyA9IHRoaXMuY29tcG9uZW50UmVmTWFwLmdldChjYWNoZUtleSkgfHwgW107XG4gICAgY2FjaGVzLmZvckVhY2goKGNhY2hlKSA9PiB7XG4gICAgICB0aGlzLmRlc3Ryb3lEeW5hbWljQ29tcG9uZW50KGNhY2hlLnJlZik7XG4gICAgfSk7XG4gICAgdGhpcy5jb21wb25lbnRSZWZNYXAuZGVsZXRlKGNhY2hlS2V5KTtcbiAgfVxuXG4gIG9uUm91dGVDaGFuZ2UoKSB7XG4gICAgY29uc3QgY2FjaGVzID0gdGhpcy5jb21wb25lbnRSZWZNYXAuZ2V0KHRoaXMuc2VydmljZS5jYWNoZUtleSkgfHwgW107XG4gICAgY29uc3QgY2FjaGUgPSBjYWNoZXMuc2xpY2UoLTEpWzBdO1xuICAgIGlmIChjYWNoZSkge1xuICAgICAgdGhpcy50b2dnbGVDYWNoZShjYWNoZSk7XG4gICAgICB0aGlzLnRvZ2dsZU9wZW5TdGF0dXModHJ1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudG9nZ2xlT3BlblN0YXR1cyhmYWxzZSk7XG4gICAgfVxuICAgIHRoaXMudXNlQW5pbWF0aW9uID0gXCJub1wiO1xuICB9XG5cbiAgdG9nZ2xlT3BlblN0YXR1cyhpc09wZW46IGJvb2xlYW4sIHVzZUFuaW1hdGlvbiA9IGZhbHNlKSB7XG4gICAgdGhpcy5pc09wZW5lZCA9IGlzT3BlbjtcbiAgICB0aGlzLnVzZUFuaW1hdGlvbiA9IHVzZUFuaW1hdGlvbiA/IFwieWVzXCIgOiBcIm5vXCI7XG4gICAgdGhpcy5oaWRkZW5EcmF3ZXIgPSAhaXNPcGVuICYmICF1c2VBbmltYXRpb247XG4gICAgdGhpcy5yZWYubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBvbkFuaW1hdGlvbkVuZCgpIHtcbiAgICBpZiAoIXRoaXMuaXNPcGVuZWQpIHtcbiAgICAgIHRoaXMuaGlkZGVuRHJhd2VyID0gdHJ1ZTtcbiAgICAgIHRoaXMucmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cbiAgfVxufVxuIl19
352
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vcmFpc2UtY29tbW9uLWxpYi8iLCJzb3VyY2VzIjpbImxpYi9sYXlvdXQvZHJhd2VyL2luZGV4LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsU0FBUyxFQUNULGdCQUFnQixFQUNoQix3QkFBd0IsRUFFeEIsVUFBVSxFQUNWLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBRUwsbUJBQW1CLEVBQ25CLGFBQWEsR0FDZCxNQUFNLDhCQUE4QixDQUFDO0FBZ0J0QyxNQUFNLE9BQU8sZUFBZTs7Ozs7O0lBeUIxQixZQUNVLFFBQWtDLEVBQ2xDLE9BQXNCLEVBQ3RCLEdBQXNCO1FBRnRCLGFBQVEsR0FBUixRQUFRLENBQTBCO1FBQ2xDLFlBQU8sR0FBUCxPQUFPLENBQWU7UUFDdEIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFWaEMsV0FBTSxHQUFpQixtQkFBbUIsQ0FBQztRQUMzQyxpQkFBWSxHQUFpQixLQUFLLENBQUM7UUFDbkMsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixpQkFBWSxHQUFHLElBQUksQ0FBQztRQUVaLG9CQUFlLEdBQUcsSUFBSSxHQUFHLEVBQWtDLENBQUM7SUFNakUsQ0FBQzs7Ozs7O0lBRUksc0JBQXNCLENBQUMsU0FBc0M7OztjQUU3RCxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyxTQUFTLENBQUM7O2NBQzFELFlBQVksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUM7UUFDNUQsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQzs7Ozs7O0lBRU8sdUJBQXVCLENBQUMsWUFBK0I7UUFDN0QsSUFBSSxZQUFZLEVBQUU7WUFDaEIsWUFBWSxDQUFDLE9BQU8sRUFBRSxDQUFDO1NBQ3hCO0lBQ0gsQ0FBQzs7Ozs7OztJ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QVMsU0FBQyxTQUFTLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO3dCQUV0QyxTQUFTLFNBQUMsMkJBQTJCLEVBQUU7b0JBQ3RDLElBQUksRUFBRSxnQkFBZ0I7b0JBQ3RCLE1BQU0sRUFBRSxLQUFLO2lCQUNkOzs7O0lBZEQsa0NBQTZFOztJQUM3RSxpQ0FBMkU7O0lBQzNFLGlDQUEyRTs7SUFDM0Usa0NBQTZFOztJQUU3RSxzQ0FDd0M7O0lBQ3hDLHFDQUN1Qzs7SUFDdkMsa0NBQTZFOzs7OztJQUU3RSxvQ0FJb0M7O0lBRXBDLGlDQUEyQzs7SUFDM0MsdUNBQW1DOztJQUNuQyxtQ0FBaUI7O0lBQ2pCLHVDQUFvQjs7Ozs7SUFFcEIsMENBQW9FOzs7OztJQUdsRSxtQ0FBMEM7Ozs7O0lBQzFDLGtDQUE4Qjs7Ozs7SUFDOUIsOEJBQThCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdDb250YWluZXJSZWYsXG4gIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgQ29tcG9uZW50UmVmLFxuICBFbGVtZW50UmVmLFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7XG4gIERyYXdlckNvbmZpZyxcbiAgRGVmYXVsdERyYXdlckNvbmZpZyxcbiAgRHJhd2VyU2VydmljZSxcbn0gZnJvbSBcIi4uLy4uL3NlcnZpY2UvZHJhd2VyLnNlcnZpY2VcIjtcbmltcG9ydCB7IFN0YXRpY1Jlc291cmNlU2VydmljZSB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL3N0YXRpYy1yZXNvdXJjZS5zZXJ2aWNlXCI7XG5cbnR5cGUgRHJhd2VyQ29tcG9uZW50Q2FjaGUgPSB7XG4gIHJlZjogQ29tcG9uZW50UmVmPGFueT47XG4gIGNvbmZpZzogRHJhd2VyQ29uZmlnO1xuICB0b29sYmFyRWw6IEhUTUxFbGVtZW50O1xuICBoZWFkZXJFbDogSFRNTEVsZW1lbnQ7XG4gIHRvcEVsOiBIVE1MRWxlbWVudDtcbn07XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJycy1kcmF3ZXJcIixcbiAgdGVtcGxhdGVVcmw6IFwiLi9pbmRleC5jb21wb25lbnQuaHRtbFwiLFxuICBzdHlsZVVybHM6IFtcIi4vaW5kZXguY29tcG9uZW50LnNjc3NcIl0sXG59KVxuZXhwb3J0IGNsYXNzIERyYXdlckNvbXBvbmVudCB7XG4gIEBWaWV3Q2hpbGQoXCJlbGVtZW50XCIsIHsgc3RhdGljOiBmYWxzZSB9KSBlbGVtZW50OiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcbiAgQFZpZXdDaGlsZChcImRyYXdlclwiLCB7IHN0YXRpYzogZmFsc2UgfSkgZHJhd2VyOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcbiAgQFZpZXdDaGlsZChcImhlYWRlclwiLCB7IHN0YXRpYzogZmFsc2UgfSkgaGVhZGVyOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcbiAgQFZpZXdDaGlsZChcImNvbnRlbnRcIiwgeyBzdGF0aWM6IGZhbHNlIH0pIGNvbnRlbnQ6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuXG4gIEBWaWV3Q2hpbGQoXCJ0b29sYmFyU2xvdFwiLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgdG9vbGJhclNsb3Q6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuICBAVmlld0NoaWxkKFwiaGVhZGVyU2xvdFwiLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgaGVhZGVyU2xvdDogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG4gIEBWaWV3Q2hpbGQoXCJ0b3BTbG90XCIsIHsgc3RhdGljOiBmYWxzZSB9KSB0b3BTbG90OiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcblxuICBAVmlld0NoaWxkKFwiZHluYW1pY0NvbXBvbmVudENvbnRhaW5lclwiLCB7XG4gICAgcmVhZDogVmlld0NvbnRhaW5lclJlZixcbiAgICBzdGF0aWM6IGZhbHNlLFxuICB9KVxuICBwcml2YXRlIGNvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZjtcblxuICBjb25maWc6IERyYXdlckNvbmZpZyA9IERlZmF1bHREcmF3ZXJDb25maWc7XG4gIHVzZUFuaW1hdGlvbjogXCJ5ZXNcIiB8IFwibm9cIiA9IFwieWVzXCI7XG4gIGlzT3BlbmVkID0gZmFsc2U7XG4gIGhpZGRlbkRyYXdlciA9IHRydWU7XG5cbiAgcHJpdmF0ZSBjb21wb25lbnRSZWZNYXAgPSBuZXcgTWFwPHN0cmluZywgRHJhd2VyQ29tcG9uZW50Q2FjaGVbXT4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gICAgcHJpdmF0ZSBzZXJ2aWNlOiBEcmF3ZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgKSB7fVxuXG4gIHByaXZhdGUgY3JlYXRlRHluYW1pY0NvbXBvbmVudChjb21wb25lbnQ6IG5ldyAoLi4uYXJnczogYW55W10pID0+IGFueSkge1xuICAgIC8vIOehruS/neWcqOiwg+eUqOS5i+WJjeebruagh+e7hOS7tuW3sue7j+WcqGVudHJ5Q29tcG9uZW50c+S4reWjsOaYjlxuICAgIGNvbnN0IGZhY3RvcnkgPSB0aGlzLnJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KGNvbXBvbmVudCk7XG4gICAgY29uc3QgY29tcG9uZW50UmVmID0gdGhpcy5jb250YWluZXIuY3JlYXRlQ29tcG9uZW50KGZhY3RvcnkpO1xuICAgIHJldHVybiBjb21wb25lbnRSZWY7XG4gIH1cblxuICBwcml2YXRlIGRlc3Ryb3lEeW5hbWljQ29tcG9uZW50KGNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPGFueT4pIHtcbiAgICBpZiAoY29tcG9uZW50UmVmKSB7XG4gICAgICBjb21wb25lbnRSZWYuZGVzdHJveSgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2V0Q29tcG9uZW50RGF0YShcbiAgICBjb21wb25lbnRSZWY6IENvbXBvbmVudFJlZjxhbnk+LFxuICAgIGRhdGE6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fSxcbiAgKSB7XG4gICAgLy8g5aaC5p6c6ZyA6KaB5Lyg6YCS5pWw5o2u57uZ5Yqo5oCB57uE5Lu277yM5Y+v5Lul6L+Z5qC35YGaXG4gICAgaWYgKGNvbXBvbmVudFJlZikge1xuICAgICAgT2JqZWN0LmVudHJpZXMoZGF0YSkuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZVtrZXldID0gdmFsdWU7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldFNsb3RFbGVtZW50KGNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPGFueT4sIHNlbGVjdG9yOiBzdHJpbmcpIHtcbiAgICBjb25zdCBjb21wb25lbnRFbCA9IGNvbXBvbmVudFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50O1xuICAgIHJldHVybiBjb21wb25lbnRFbC5xdWVyeVNlbGVjdG9yKHNlbGVjdG9yKSBhcyBIVE1MRWxlbWVudDtcbiAgfVxuXG4gIHByaXZhdGUgc2V0U2xvdEVsZW1lbnQoc2xvdEVsOiBIVE1MRWxlbWVudCwgY29udGFpbmVyRWw6IEhUTUxFbGVtZW50KSB7XG4gICAgY29udGFpbmVyRWwuaW5uZXJIVE1MID0gXCJcIjtcbiAgICBpZiAoc2xvdEVsKSB7XG4gICAgICBjb250YWluZXJFbC5hcHBlbmQoc2xvdEVsKTtcbiAgICB9XG4gIH1cblxuICBzZXRDYWNoZShjYWNoZTogRHJhd2VyQ29tcG9uZW50Q2FjaGUpIHtcbiAgICB0aGlzLnNldFNsb3RFbGVtZW50KGNhY2hlLnRvb2xiYXJFbCwgdGhpcy50b29sYmFyU2xvdC5uYXRpdmVFbGVtZW50KTtcbiAgICB0aGlzLnNldFNsb3RFbGVtZW50KGNhY2hlLmhlYWRlckVsLCB0aGlzLmhlYWRlclNsb3QubmF0aXZlRWxlbWVudCk7XG4gICAgdGhpcy5zZXRTbG90RWxlbWVudChjYWNoZS50b3BFbCwgdGhpcy50b3BTbG90Lm5hdGl2ZUVsZW1lbnQpO1xuXG4gICAgY29uc3QgZHJhd2VyVG9wID0gY2FjaGUuY29uZmlnLnRvcCA/IGAke2NhY2hlLmNvbmZpZy50b3B9cHhgIDogXCJcIjtcbiAgICB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShcIi0tZHJhd2VyLXRvcFwiLCBkcmF3ZXJUb3ApO1xuXG4gICAgaWYgKGNhY2hlLmNvbmZpZy5tb2RlID09PSBcImlubmVyXCIpIHtcbiAgICAgIHRoaXMuY29udGVudC5uYXRpdmVFbGVtZW50Lmluc2VydEJlZm9yZShcbiAgICAgICAgdGhpcy5oZWFkZXIubmF0aXZlRWxlbWVudCxcbiAgICAgICAgdGhpcy5jb250ZW50Lm5hdGl2ZUVsZW1lbnQuZmlyc3RDaGlsZCxcbiAgICAgICk7XG4gICAgICB0aGlzLmNvbnRlbnQubmF0aXZlRWxlbWVudC5hcHBlbmQodGhpcy50b29sYmFyU2xvdC5uYXRpdmVFbGVtZW50KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kcmF3ZXIubmF0aXZlRWxlbWVudC5pbnNlcnRCZWZvcmUoXG4gICAgICAgIHRoaXMuaGVhZGVyLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgIHRoaXMuZHJhd2VyLm5hdGl2ZUVsZW1lbnQuZmlyc3RDaGlsZCxcbiAgICAgICk7XG4gICAgICB0aGlzLmhlYWRlci5uYXRpdmVFbGVtZW50LmFwcGVuZCh0aGlzLnRvb2xiYXJTbG90Lm5hdGl2ZUVsZW1lbnQpO1xuICAgIH1cblxuICAgIHRoaXMuY29uZmlnID0gY2FjaGUuY29uZmlnO1xuICAgIHRoaXMucmVmLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgc2V0Q29uZmlnKGNvbmZpZzogUGFydGlhbDxEcmF3ZXJDb25maWc+KSB7XG4gICAgY29uc3QgY2FjaGVzID0gdGhpcy5jb21wb25lbnRSZWZNYXAuZ2V0KHRoaXMuc2VydmljZS5jYWNoZUtleSkgfHwgW107XG4gICAgY29uc3QgY2FjaGUgPSBjYWNoZXMuc2xpY2UoLTEpWzBdO1xuICAgIGlmIChjYWNoZSkge1xuICAgICAgY2FjaGUuY29uZmlnID0geyAuLi5jYWNoZS5jb25maWcsIC4uLmNvbmZpZyB9O1xuICAgICAgdGhpcy5zZXRDYWNoZShjYWNoZSk7XG4gICAgfVxuICB9XG5cbiAgc2hvdzxUPihcbiAgICBjb21wb25lbnQ6IG5ldyAoLi4uYXJnczogYW55W10pID0+IFQsXG4gICAgY29uZmlnOiBEcmF3ZXJDb25maWcsXG4gICAgZGF0YTogUmVjb3JkPHN0cmluZywgYW55PixcbiAgKTogVCB7XG4gICAgY29uc3Qgc2hvd0NvbmZpZyA9IHsgLi4uRGVmYXVsdERyYXdlckNvbmZpZywgLi4uY29uZmlnIH07XG4gICAgY29uc3QgY29tcG9uZW50UmVmID0gdGhpcy5jcmVhdGVEeW5hbWljQ29tcG9uZW50KGNvbXBvbmVudCk7XG4gICAgY29uc3QgdG9vbGJhckVsID0gdGhpcy5nZXRTbG90RWxlbWVudChjb21wb25lbnRSZWYsIFwiW2RyYXdlci10b29sYmFyXVwiKTtcbiAgICBjb25zdCBoZWFkZXJFbCA9IHRoaXMuZ2V0U2xvdEVsZW1lbnQoY29tcG9uZW50UmVmLCBcIltkcmF3ZXItaGVhZGVyXVwiKTtcbiAgICBjb25zdCB0b3BFbCA9IHRoaXMuZ2V0U2xvdEVsZW1lbnQoY29tcG9uZW50UmVmLCBcIltkcmF3ZXItdG9wXVwiKTtcbiAgICBjb25zdCBjYWNoZSA9IHtcbiAgICAgIGNvbmZpZzogc2hvd0NvbmZpZyxcbiAgICAgIHJlZjogY29tcG9uZW50UmVmLFxuICAgICAgdG9vbGJhckVsLFxuICAgICAgaGVhZGVyRWwsXG4gICAgICB0b3BFbCxcbiAgICB9O1xuXG4gICAgY29uc3QgY2FjaGVzID0gdGhpcy5jb21wb25lbnRSZWZNYXAuZ2V0KHRoaXMuc2VydmljZS5jYWNoZUtleSkgfHwgW107XG4gICAgdGhpcy5jb21wb25lbnRSZWZNYXAuc2V0KHRoaXMuc2VydmljZS5jYWNoZUtleSwgWy4uLmNhY2hlcywgY2FjaGVdKTtcbiAgICAvLyDlpoLmnpzmmK/nrKzkuIDkuKrnvJPlrZjvvIzmiZPlvIDmir3lsYlcbiAgICBpZiAoY2FjaGVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy50b2dnbGVPcGVuU3RhdHVzKHRydWUsIHRydWUpO1xuICAgIH1cbiAgICB0aGlzLnRvZ2dsZUNhY2hlKGNhY2hlKTtcbiAgICB0aGlzLnNldENvbXBvbmVudERhdGEoY29tcG9uZW50UmVmLCBkYXRhKTtcblxuICAgIHJldHVybiBjb21wb25lbnRSZWYuaW5zdGFuY2U7XG4gIH1cblxuICBoaWRlKCkge1xuICAgIHRoaXMuc2VydmljZS5oaWRlKCk7XG4gIH1cblxuICBiYWNrKCkge1xuICAgIHRoaXMuZGVsZXRlQ2FjaGUodGhpcy5zZXJ2aWNlLmNhY2hlS2V5KTtcblxuICAgIC8vIOWmguaenOacieS4iuS4gOS4que8k+WtmO+8jOiuvue9ruS4uuW9k+WJjee8k+WtmO+8jOWQpuWImeWFs+mXreaKveWxiVxuICAgIGNvbnN0IGNhY2hlcyA9IHRoaXMuY29tcG9uZW50UmVmTWFwLmdldCh0aGlzLnNlcnZpY2UuY2FjaGVLZXkpIHx8IFtdO1xuICAgIGNvbnN0IGNhY2hlID0gY2FjaGVzLnNsaWNlKC0xKVswXTtcbiAgICBpZiAoY2FjaGUpIHtcbiAgICAgIHRoaXMudG9nZ2xlQ2FjaGUoY2FjaGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnRvZ2dsZU9wZW5TdGF0dXMoZmFsc2UsIHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZGVsZXRlQ2FjaGUoY2FjaGVLZXk6IHN0cmluZykge1xuICAgIGNvbnN0IGNhY2hlcyA9IHRoaXMuY29tcG9uZW50UmVmTWFwLmdldChjYWNoZUtleSkgfHwgW107XG4gICAgY29uc3QgY2FjaGUgPSBjYWNoZXMuc2xpY2UoLTEpWzBdO1xuICAgIGlmIChjYWNoZSkge1xuICAgICAgdGhpcy5kZXN0cm95RHluYW1pY0NvbXBvbmVudChjYWNoZS5yZWYpO1xuICAgICAgY2FjaGVzLnBvcCgpO1xuICAgIH1cbiAgICBpZiAoY2FjaGVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5jb21wb25lbnRSZWZNYXAuZGVsZXRlKGNhY2hlS2V5KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHRvZ2dsZUNhY2hlKGNhY2hlOiBEcmF3ZXJDb21wb25lbnRDYWNoZSkge1xuICAgIHRoaXMuY29tcG9uZW50UmVmTWFwLmZvckVhY2goKGNhY2hlcykgPT4ge1xuICAgICAgY2FjaGVzLmZvckVhY2goKGMpID0+IHtcbiAgICAgICAgYy5yZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudC5zdHlsZS5kaXNwbGF5ID0gYyA9PT0gY2FjaGUgPyBcIlwiIDogXCJub25lXCI7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgICB0aGlzLnNldENhY2hlKGNhY2hlKTtcbiAgfVxuXG4gIGRlbGV0ZUFsbENhY2hlKGNhY2hlS2V5OiBzdHJpbmcpIHtcbiAgICBjb25zdCBjYWNoZXMgPSB0aGlzLmNvbXBvbmVudFJlZk1hcC5nZXQoY2FjaGVLZXkpIHx8IFtdO1xuICAgIGNhY2hlcy5mb3JFYWNoKChjYWNoZSkgPT4ge1xuICAgICAgdGhpcy5kZXN0cm95RHluYW1pY0NvbXBvbmVudChjYWNoZS5yZWYpO1xuICAgIH0pO1xuICAgIHRoaXMuY29tcG9uZW50UmVmTWFwLmRlbGV0ZShjYWNoZUtleSk7XG4gIH1cblxuICBvblJvdXRlQ2hhbmdlKCkge1xuICAgIGNvbnN0IGNhY2hlcyA9IHRoaXMuY29tcG9uZW50UmVmTWFwLmdldCh0aGlzLnNlcnZpY2UuY2FjaGVLZXkpIHx8IFtdO1xuICAgIGNvbnN0IGNhY2hlID0gY2FjaGVzLnNsaWNlKC0xKVswXTtcbiAgICBpZiAoY2FjaGUpIHtcbiAgICAgIHRoaXMudG9nZ2xlQ2FjaGUoY2FjaGUpO1xuICAgICAgdGhpcy50b2dnbGVPcGVuU3RhdHVzKHRydWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnRvZ2dsZU9wZW5TdGF0dXMoZmFsc2UpO1xuICAgIH1cbiAgICB0aGlzLnVzZUFuaW1hdGlvbiA9IFwibm9cIjtcbiAgfVxuXG4gIHRvZ2dsZU9wZW5TdGF0dXMoaXNPcGVuOiBib29sZWFuLCB1c2VBbmltYXRpb24gPSBmYWxzZSkge1xuICAgIHRoaXMuaXNPcGVuZWQgPSBpc09wZW47XG4gICAgdGhpcy51c2VBbmltYXRpb24gPSB1c2VBbmltYXRpb24gPyBcInllc1wiIDogXCJub1wiO1xuICAgIHRoaXMuaGlkZGVuRHJhd2VyID0gIWlzT3BlbiAmJiAhdXNlQW5pbWF0aW9uO1xuICAgIHRoaXMucmVmLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgb25BbmltYXRpb25FbmQoKSB7XG4gICAgaWYgKCF0aGlzLmlzT3BlbmVkKSB7XG4gICAgICB0aGlzLmhpZGRlbkRyYXdlciA9IHRydWU7XG4gICAgICB0aGlzLnJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -31,7 +31,10 @@ export class StaticResourceService {
31
31
  return "";
32
32
  }
33
33
  if (this.ResultMap.has(url)) {
34
- return this.ResultMap.get(url) || "";
34
+ /** @type {?} */
35
+ const result = this.ResultMap.get(url) || "";
36
+ cb(result);
37
+ return result;
35
38
  }
36
39
  /** @type {?} */
37
40
  const res = yield fetch(url);
@@ -119,4 +122,4 @@ if (false) {
119
122
  */
120
123
  StaticResourceService.prototype.sanitizer;
121
124
  }
122
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGljLXJlc291cmNlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9yYWlzZS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2Uvc3RhdGljLXJlc291cmNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsWUFBWSxFQUFXLE1BQU0sMkJBQTJCLENBQUM7OztBQUtsRSxNQUFNLE9BQU8scUJBQXFCOzs7O0lBR2hDLFlBQW9CLFNBQXVCO1FBQXZCLGNBQVMsR0FBVCxTQUFTLENBQWM7UUFGbkMsY0FBUyxHQUFHLElBQUksR0FBRyxFQUFtQixDQUFDO0lBRUQsQ0FBQzs7Ozs7O0lBRXpDLElBQUksQ0FBQyxHQUFXLEVBQUU7OztJQUFxQyxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUE7O1lBQ25FLElBQUksQ0FBQyxHQUFHLElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxFQUFFO2dCQUNuQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ1AsT0FBTyxFQUFFLENBQUM7YUFDWDtZQUNELElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQzNCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDO2FBQ3RDOztrQkFFSyxHQUFHLEdBQUcsTUFBTSxLQUFLLENBQUMsR0FBRyxDQUFDO1lBQzVCLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFO2dCQUNYLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDUCxPQUFPLEVBQUUsQ0FBQzthQUNYOztrQkFFSyxJQUFJLEdBQUcsTUFBTSxHQUFHLENBQUMsSUFBSSxFQUFFO1lBQzdCLE9BQU8sSUFBSSxPQUFPOzs7O1lBQWUsQ0FBQyxPQUFPLEVBQUUsRUFBRTs7c0JBQ3JDLE1BQU0sR0FBRyxJQUFJLFVBQVUsRUFBRTs7c0JBQ3pCLFFBQVE7Ozs7Z0JBQUcsQ0FBQyxNQUFjLEVBQUUsRUFBRTs7MEJBQzVCLE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLHNCQUFzQixDQUFDLE1BQU0sQ0FBQztvQkFDN0QsSUFBSSxPQUFPLEVBQUU7d0JBQ1gsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDO3FCQUNsQztvQkFDRCxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7b0JBQ2pCLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDZCxDQUFDLENBQUE7Z0JBRUQsTUFBTSxDQUFDLFNBQVM7OztnQkFBRyxHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUMsbUJBQUEsTUFBTSxDQUFDLE1BQU0sRUFBVSxDQUFDLENBQUEsQ0FBQztnQkFDM0QsTUFBTSxDQUFDLE9BQU87OztnQkFBRyxHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUEsQ0FBQztnQkFDcEMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM3QixDQUFDLEVBQUMsQ0FBQztRQUNMLENBQUM7S0FBQTs7Ozs7O0lBRUssU0FBUyxDQUFDLEdBQVcsRUFBRSxFQUFrQzs7WUFDN0QsT0FBTyxJQUFJLEVBQUU7O3NCQUNMLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO2dCQUNuQyxJQUFJLE1BQU0sRUFBRTtvQkFDVixFQUFFLENBQUMsTUFBTSxDQUFDLENBQUM7b0JBQ1gsT0FBTyxNQUFNLENBQUM7aUJBQ2Y7Z0JBQ0QsTUFBTSxJQUFJLE9BQU87Ozs7Z0JBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEVBQUMsQ0FBQzthQUMzRDtRQUNILENBQUM7S0FBQTs7O1lBbERGLFVBQVUsU0FBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQjs7OztZQUpRLFlBQVk7Ozs7Ozs7O0lBTW5CLDBDQUErQzs7Ozs7SUFFbkMsMENBQStCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIsIFNhZmVVcmwgfSBmcm9tIFwiQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3NlclwiO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46IFwicm9vdFwiLFxufSlcbmV4cG9ydCBjbGFzcyBTdGF0aWNSZXNvdXJjZVNlcnZpY2Uge1xuICBwcml2YXRlIFJlc3VsdE1hcCA9IG5ldyBNYXA8c3RyaW5nLCBTYWZlVXJsPigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIpIHt9XG5cbiAgYXN5bmMgbG9hZCh1cmw6IHN0cmluZywgY2I6IChyZXN1bHQ6IFNhZmVVcmwgfCBcIlwiKSA9PiB2b2lkID0gKCkgPT4ge30pIHtcbiAgICBpZiAoIXVybCB8fCB0eXBlb2YgdXJsICE9PSBcInN0cmluZ1wiKSB7XG4gICAgICBjYihcIlwiKTtcbiAgICAgIHJldHVybiBcIlwiO1xuICAgIH1cbiAgICBpZiAodGhpcy5SZXN1bHRNYXAuaGFzKHVybCkpIHtcbiAgICAgIHJldHVybiB0aGlzLlJlc3VsdE1hcC5nZXQodXJsKSB8fCBcIlwiO1xuICAgIH1cblxuICAgIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKHVybCk7XG4gICAgaWYgKCFyZXMub2spIHtcbiAgICAgIGNiKFwiXCIpO1xuICAgICAgcmV0dXJuIFwiXCI7XG4gICAgfVxuXG4gICAgY29uc3QgYmxvYiA9IGF3YWl0IHJlcy5ibG9iKCk7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlPFNhZmVVcmwgfCBcIlwiPigocmVzb2x2ZSkgPT4ge1xuICAgICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcbiAgICAgIGNvbnN0IGNhbGxiYWNrID0gKHJlc3VsdDogc3RyaW5nKSA9PiB7XG4gICAgICAgIGNvbnN0IHNhZmVVcmwgPSB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0VXJsKHJlc3VsdCk7XG4gICAgICAgIGlmIChzYWZlVXJsKSB7XG4gICAgICAgICAgdGhpcy5SZXN1bHRNYXAuc2V0KHVybCwgc2FmZVVybCk7XG4gICAgICAgIH1cbiAgICAgICAgcmVzb2x2ZShzYWZlVXJsKTtcbiAgICAgICAgY2Ioc2FmZVVybCk7XG4gICAgICB9O1xuXG4gICAgICByZWFkZXIub25sb2FkZW5kID0gKCkgPT4gY2FsbGJhY2socmVhZGVyLnJlc3VsdCBhcyBzdHJpbmcpO1xuICAgICAgcmVhZGVyLm9uZXJyb3IgPSAoKSA9PiBjYWxsYmFjayhcIlwiKTtcbiAgICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGJsb2IpO1xuICAgIH0pO1xuICB9XG5cbiAgYXN5bmMgZm9yY2VMb2FkKHVybDogc3RyaW5nLCBjYjogKHJlc3VsdDogU2FmZVVybCB8IFwiXCIpID0+IHZvaWQpIHtcbiAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5sb2FkKHVybCk7XG4gICAgICBpZiAocmVzdWx0KSB7XG4gICAgICAgIGNiKHJlc3VsdCk7XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICB9XG4gICAgICBhd2FpdCBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4gc2V0VGltZW91dChyZXNvbHZlLCAyMDAwKSk7XG4gICAgfVxuICB9XG59XG4iXX0=
125
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGljLXJlc291cmNlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9yYWlzZS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2Uvc3RhdGljLXJlc291cmNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsWUFBWSxFQUFXLE1BQU0sMkJBQTJCLENBQUM7OztBQUtsRSxNQUFNLE9BQU8scUJBQXFCOzs7O0lBR2hDLFlBQW9CLFNBQXVCO1FBQXZCLGNBQVMsR0FBVCxTQUFTLENBQWM7UUFGbkMsY0FBUyxHQUFHLElBQUksR0FBRyxFQUFtQixDQUFDO0lBRUQsQ0FBQzs7Ozs7O0lBRXpDLElBQUksQ0FBQyxHQUFXLEVBQUU7OztJQUFxQyxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUE7O1lBQ25FLElBQUksQ0FBQyxHQUFHLElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxFQUFFO2dCQUNuQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ1AsT0FBTyxFQUFFLENBQUM7YUFDWDtZQUNELElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7O3NCQUNyQixNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRTtnQkFDNUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUNYLE9BQU8sTUFBTSxDQUFDO2FBQ2Y7O2tCQUVLLEdBQUcsR0FBRyxNQUFNLEtBQUssQ0FBQyxHQUFHLENBQUM7WUFDNUIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUU7Z0JBQ1gsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNQLE9BQU8sRUFBRSxDQUFDO2FBQ1g7O2tCQUVLLElBQUksR0FBRyxNQUFNLEdBQUcsQ0FBQyxJQUFJLEVBQUU7WUFDN0IsT0FBTyxJQUFJLE9BQU87Ozs7WUFBZSxDQUFDLE9BQU8sRUFBRSxFQUFFOztzQkFDckMsTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFOztzQkFDekIsUUFBUTs7OztnQkFBRyxDQUFDLE1BQWMsRUFBRSxFQUFFOzswQkFDNUIsT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsc0JBQXNCLENBQUMsTUFBTSxDQUFDO29CQUM3RCxJQUFJLE9BQU8sRUFBRTt3QkFDWCxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7cUJBQ2xDO29CQUNELE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztvQkFDakIsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUNkLENBQUMsQ0FBQTtnQkFFRCxNQUFNLENBQUMsU0FBUzs7O2dCQUFHLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxtQkFBQSxNQUFNLENBQUMsTUFBTSxFQUFVLENBQUMsQ0FBQSxDQUFDO2dCQUMzRCxNQUFNLENBQUMsT0FBTzs7O2dCQUFHLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQSxDQUFDO2dCQUNwQyxNQUFNLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzdCLENBQUMsRUFBQyxDQUFDO1FBQ0wsQ0FBQztLQUFBOzs7Ozs7SUFFSyxTQUFTLENBQUMsR0FBVyxFQUFFLEVBQWtDOztZQUM3RCxPQUFPLElBQUksRUFBRTs7c0JBQ0wsTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7Z0JBQ25DLElBQUksTUFBTSxFQUFFO29CQUNWLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFDWCxPQUFPLE1BQU0sQ0FBQztpQkFDZjtnQkFDRCxNQUFNLElBQUksT0FBTzs7OztnQkFBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsRUFBQyxDQUFDO2FBQzNEO1FBQ0gsQ0FBQztLQUFBOzs7WUFwREYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7O1lBSlEsWUFBWTs7Ozs7Ozs7SUFNbkIsMENBQStDOzs7OztJQUVuQywwQ0FBK0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZVVybCB9IGZyb20gXCJAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyXCI7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogXCJyb290XCIsXG59KVxuZXhwb3J0IGNsYXNzIFN0YXRpY1Jlc291cmNlU2VydmljZSB7XG4gIHByaXZhdGUgUmVzdWx0TWFwID0gbmV3IE1hcDxzdHJpbmcsIFNhZmVVcmw+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcikge31cblxuICBhc3luYyBsb2FkKHVybDogc3RyaW5nLCBjYjogKHJlc3VsdDogU2FmZVVybCB8IFwiXCIpID0+IHZvaWQgPSAoKSA9PiB7fSkge1xuICAgIGlmICghdXJsIHx8IHR5cGVvZiB1cmwgIT09IFwic3RyaW5nXCIpIHtcbiAgICAgIGNiKFwiXCIpO1xuICAgICAgcmV0dXJuIFwiXCI7XG4gICAgfVxuICAgIGlmICh0aGlzLlJlc3VsdE1hcC5oYXModXJsKSkge1xuICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5SZXN1bHRNYXAuZ2V0KHVybCkgfHwgXCJcIjtcbiAgICAgIGNiKHJlc3VsdCk7XG4gICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cblxuICAgIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKHVybCk7XG4gICAgaWYgKCFyZXMub2spIHtcbiAgICAgIGNiKFwiXCIpO1xuICAgICAgcmV0dXJuIFwiXCI7XG4gICAgfVxuXG4gICAgY29uc3QgYmxvYiA9IGF3YWl0IHJlcy5ibG9iKCk7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlPFNhZmVVcmwgfCBcIlwiPigocmVzb2x2ZSkgPT4ge1xuICAgICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcbiAgICAgIGNvbnN0IGNhbGxiYWNrID0gKHJlc3VsdDogc3RyaW5nKSA9PiB7XG4gICAgICAgIGNvbnN0IHNhZmVVcmwgPSB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0VXJsKHJlc3VsdCk7XG4gICAgICAgIGlmIChzYWZlVXJsKSB7XG4gICAgICAgICAgdGhpcy5SZXN1bHRNYXAuc2V0KHVybCwgc2FmZVVybCk7XG4gICAgICAgIH1cbiAgICAgICAgcmVzb2x2ZShzYWZlVXJsKTtcbiAgICAgICAgY2Ioc2FmZVVybCk7XG4gICAgICB9O1xuXG4gICAgICByZWFkZXIub25sb2FkZW5kID0gKCkgPT4gY2FsbGJhY2socmVhZGVyLnJlc3VsdCBhcyBzdHJpbmcpO1xuICAgICAgcmVhZGVyLm9uZXJyb3IgPSAoKSA9PiBjYWxsYmFjayhcIlwiKTtcbiAgICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGJsb2IpO1xuICAgIH0pO1xuICB9XG5cbiAgYXN5bmMgZm9yY2VMb2FkKHVybDogc3RyaW5nLCBjYjogKHJlc3VsdDogU2FmZVVybCB8IFwiXCIpID0+IHZvaWQpIHtcbiAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5sb2FkKHVybCk7XG4gICAgICBpZiAocmVzdWx0KSB7XG4gICAgICAgIGNiKHJlc3VsdCk7XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICB9XG4gICAgICBhd2FpdCBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4gc2V0VGltZW91dChyZXNvbHZlLCAyMDAwKSk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -6,27 +6,16 @@
6
6
  import * as tslib_1 from "tslib";
7
7
  import { Component, ViewChild, ViewContainerRef, ComponentFactoryResolver, ElementRef, ChangeDetectorRef, } from "@angular/core";
8
8
  import { DefaultDrawerConfig, DrawerService, } from "../../service/drawer.service";
9
- import { StaticResourceService } from "../../service/static-resource.service";
10
9
  var DrawerComponent = /** @class */ (function () {
11
- function DrawerComponent(resolver, service, ref, staticResourceService) {
12
- var _this = this;
10
+ function DrawerComponent(resolver, service, ref) {
13
11
  this.resolver = resolver;
14
12
  this.service = service;
15
13
  this.ref = ref;
16
- this.staticResourceService = staticResourceService;
17
14
  this.config = DefaultDrawerConfig;
18
15
  this.useAnimation = "yes";
19
16
  this.isOpened = false;
20
17
  this.hiddenDrawer = true;
21
- this.backImage = null;
22
18
  this.componentRefMap = new Map();
23
- staticResourceService.load("/assets/img/drawer-back.svg", (/**
24
- * @param {?} result
25
- * @return {?}
26
- */
27
- function (result) {
28
- _this.backImage = result;
29
- }));
30
19
  }
31
20
  /**
32
21
  * @private
@@ -361,16 +350,15 @@ var DrawerComponent = /** @class */ (function () {
361
350
  DrawerComponent.decorators = [
362
351
  { type: Component, args: [{
363
352
  selector: "rs-drawer",
364
- template: "<div #element id=\"rs-drawer-container\" class=\"rs-drawer-container\">\n <div class=\"rs-drawer-content\">\n <ng-content></ng-content>\n </div>\n <div\n #drawer\n class=\"rs-drawer\"\n [attr.data-mode]=\"config.mode\"\n [attr.data-opened]=\"isOpened ? 'yes' : 'no'\"\n [attr.data-animation]=\"useAnimation\"\n [hidden]=\"hiddenDrawer\"\n (animationend)=\"onAnimationEnd()\"\n >\n <div class=\"drawer-header\" #header>\n <button class=\"drawer-return-button\" (click)=\"hide()\">\n <img [src]=\"backImage\" alt=\"back\" />\n <span class=\"drawer-sub-title\" *ngIf=\"config.subTitle\">\n {{ config.subTitle }}\n </span>\n </button>\n <div class=\"drawer-title\">{{ config.title }}</div>\n <div class=\"drawer-header-slot\" #headerSlot></div>\n </div>\n <div class=\"drawer-top-slot\" #topSlot></div>\n <div class=\"drawer-content-box\">\n <div class=\"drawer-content\" #content>\n <div class=\"drawer-content-container\">\n <ng-template #dynamicComponentContainer></ng-template>\n </div>\n </div>\n </div>\n <div class=\"drawer-toolbar-slot\" #toolbarSlot></div>\n </div>\n</div>\n",
365
- styles: [":host{display:block;height:100%}#rs-drawer-container{height:100%}.rs-drawer-container{height:100%;background-color:transparent;overflow:hidden;position:relative}.rs-drawer-container .rs-drawer-content{width:100%;height:100%;overflow:auto;margin-right:0!important}.rs-drawer-container .rs-drawer{width:100%;height:100%;border-left:none;background-color:transparent;overflow:visible;pointer-events:none;opacity:0;display:flex;flex-flow:column nowrap;position:absolute;z-index:2;top:0;left:100%}.rs-drawer-container .rs-drawer[data-opened=yes]{left:0;opacity:1}.rs-drawer-container .rs-drawer[data-animation=yes][data-opened=yes]{-webkit-animation:.5s ease-in-out drawer-open;animation:.5s ease-in-out drawer-open}@-webkit-keyframes drawer-open{from{left:100%;opacity:0}to{left:0;opacity:1}}@keyframes drawer-open{from{left:100%;opacity:0}to{left:0;opacity:1}}.rs-drawer-container .rs-drawer[data-animation=yes][data-opened=no]{-webkit-animation:.5s ease-in-out drawer-close;animation:.5s ease-in-out drawer-close}@-webkit-keyframes drawer-close{from{left:0;opacity:1}to{left:100%;opacity:0}}@keyframes drawer-close{from{left:0;opacity:1}to{left:100%;opacity:0}}.rs-drawer-container .rs-drawer[hidden]{display:none}.rs-drawer-container .rs-drawer .drawer-header{flex:none;display:flex;flex-flow:row nowrap;justify-content:flex-start;align-items:center;box-sizing:content-box;pointer-events:auto}.rs-drawer-container .rs-drawer .drawer-header .drawer-return-button{flex:none;display:flex;flex-flow:row nowrap;align-items:center;padding:0;border:none;background-color:transparent;cursor:pointer}.rs-drawer-container .rs-drawer .drawer-header .drawer-return-button img{width:24px;height:24px;margin-right:8px;transition:transform 125ms ease-in-out}.rs-drawer-container .rs-drawer .drawer-header .drawer-return-button:hover img{transform:translateX(-2px)}.rs-drawer-container .rs-drawer .drawer-header .drawer-return-button .drawer-sub-title{margin-right:12px;font-family:Arial;font-style:normal;font-weight:400}.rs-drawer-container .rs-drawer .drawer-header .drawer-title{flex:none;min-height:14px;padding:0 12px;border-left:1px solid #bdc4ca;font-family:Arial;font-style:normal;font-weight:400}.rs-drawer-container .rs-drawer .drawer-header .drawer-title:empty{padding:0}.rs-drawer-container .rs-drawer .drawer-content-box{flex:auto;height:0;background-color:#f7fafb;pointer-events:auto}.rs-drawer-container .rs-drawer .drawer-content{height:100%;padding:0 20px;border:1px solid #ebedf0;border-radius:15px;background-color:#fff;display:flex;flex-flow:column nowrap}.rs-drawer-container .rs-drawer .drawer-content .drawer-content-container{flex:auto;overflow:hidden auto}.rs-drawer-container .rs-drawer .drawer-toolbar-slot{flex:none;height:32px;margin-left:auto;display:flex;flex-flow:row nowrap;justify-content:flex-end;align-items:center;pointer-events:auto}.rs-drawer-container .rs-drawer .drawer-toolbar-slot:empty{display:none}.rs-drawer-container .rs-drawer .drawer-top-slot{flex:none;pointer-events:auto}.rs-drawer-container .rs-drawer .drawer-top-slot:empty{height:var(--drawer-top,0);pointer-events:none}.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-header{height:46px;padding:0 12px 0 8px;background-color:#f7fafb}.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-header .drawer-sub-title,.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-header .drawer-title{color:#1f3f5c;font-size:15px;font-weight:700;line-height:18px}.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-content{padding-bottom:20px}.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-content .drawer-content-container{margin-right:-20px;padding-right:20px}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-top-slot:empty+.drawer-content-box{padding-top:calc((var(--drawer-top,0) + 1) * 16px)}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-header{height:24px;padding:6px 0;border-bottom:1px solid #eaedf0}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-header .drawer-sub-title,.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-header .drawer-title{color:#44566c;font-size:12px;line-height:14px}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-header .drawer-title{font-weight:700}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-content .drawer-content-container{margin-right:-20px;padding-right:20px;padding-left:8px}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-toolbar-slot{width:100%;padding:16px 0;box-sizing:content-box;border-top:1px solid #eaedf0}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar]{display:flex;flex-flow:row nowrap;justify-content:flex-end;align-items:center;gap:12px}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button{display:flex;flex-flow:row nowrap;justify-content:center;align-items:center;gap:6px;min-width:80px;height:32px;padding:0 12px;border:1px solid #adb5bd;border-radius:4px;background-color:#fff;cursor:pointer;color:#44566c;font-size:13px;font-family:Arial;font-style:normal;font-weight:400;line-height:16px}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button:hover{border-color:#6c7c90}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button:disabled{opacity:1!important;border-color:#6c7c9066;color:#44566c66;cursor:unset}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button.primary{border:none;background-color:#1364b3;color:#fff}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button.primary:hover{background-color:#176bca}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button.primary:disabled{background-color:#1364b366}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button img{width:16px;height:16px}::ng-deep .rs-drawer-container .rs-drawer[data-mode=outer] .drawer-toolbar-slot [drawer-toolbar] button{height:26px;font-size:12px;line-height:14px}::ng-deep .rs-drawer-container .rs-drawer[data-mode=inner] .drawer-toolbar-slot [drawer-toolbar] button img{display:none}"]
353
+ template: "<div #element id=\"rs-drawer-container\" class=\"rs-drawer-container\">\n <div class=\"rs-drawer-content\">\n <ng-content></ng-content>\n </div>\n <div\n #drawer\n class=\"rs-drawer\"\n [attr.data-mode]=\"config.mode\"\n [attr.data-opened]=\"isOpened ? 'yes' : 'no'\"\n [attr.data-animation]=\"useAnimation\"\n [hidden]=\"hiddenDrawer\"\n (animationend)=\"onAnimationEnd()\"\n >\n <div class=\"drawer-header\" #header>\n <button class=\"drawer-return-button\" (click)=\"hide()\">\n <span class=\"drawer-sub-title\" *ngIf=\"config.subTitle\">\n {{ config.subTitle }}\n </span>\n </button>\n <div class=\"drawer-title\">{{ config.title }}</div>\n <div class=\"drawer-header-slot\" #headerSlot></div>\n </div>\n <div class=\"drawer-top-slot\" #topSlot></div>\n <div class=\"drawer-content-box\">\n <div class=\"drawer-content\" #content>\n <div class=\"drawer-content-container\">\n <ng-template #dynamicComponentContainer></ng-template>\n </div>\n </div>\n </div>\n <div class=\"drawer-toolbar-slot\" #toolbarSlot></div>\n </div>\n</div>\n",
354
+ styles: [":host{display:block;height:100%}#rs-drawer-container{height:100%}.rs-drawer-container{height:100%;background-color:transparent;overflow:hidden;position:relative}.rs-drawer-container .rs-drawer-content{width:100%;height:100%;overflow:auto;margin-right:0!important}.rs-drawer-container .rs-drawer{width:100%;height:100%;border-left:none;background-color:transparent;overflow:visible;pointer-events:none;opacity:0;display:flex;flex-flow:column nowrap;position:absolute;z-index:2;top:0;left:100%}.rs-drawer-container .rs-drawer[data-opened=yes]{left:0;opacity:1}.rs-drawer-container .rs-drawer[data-animation=yes][data-opened=yes]{-webkit-animation:.5s ease-in-out drawer-open;animation:.5s ease-in-out drawer-open}@-webkit-keyframes drawer-open{from{left:100%;opacity:0}to{left:0;opacity:1}}@keyframes drawer-open{from{left:100%;opacity:0}to{left:0;opacity:1}}.rs-drawer-container .rs-drawer[data-animation=yes][data-opened=no]{-webkit-animation:.5s ease-in-out drawer-close;animation:.5s ease-in-out drawer-close}@-webkit-keyframes drawer-close{from{left:0;opacity:1}to{left:100%;opacity:0}}@keyframes drawer-close{from{left:0;opacity:1}to{left:100%;opacity:0}}.rs-drawer-container .rs-drawer[hidden]{display:none}.rs-drawer-container .rs-drawer .drawer-header{flex:none;display:flex;flex-flow:row nowrap;justify-content:flex-start;align-items:center;box-sizing:content-box;pointer-events:auto}.rs-drawer-container .rs-drawer .drawer-header .drawer-return-button{flex:none;display:flex;flex-flow:row nowrap;align-items:center;padding:0;border:none;background-color:transparent;cursor:pointer}.rs-drawer-container .rs-drawer .drawer-header .drawer-return-button::before{content:url(\"data:image/svg+xml;charset=utf-8;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEyIDE4TDcuNTQ5ODYgMTJMMTIgNiIgc3Ryb2tlPSIjNkM3QzkwIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz4KPHBhdGggZD0iTTE3LjQyNyAxMi41QzE3LjcwMzEgMTIuNSAxNy45MjcgMTIuMjc2MSAxNy45MjcgMTJDMTcuOTI3IDExLjcyMzkgMTcuNzAzMSAxMS41IDE3LjQyNyAxMS41TDE3LjQyNyAxMi41Wk03LjM5ODkzIDEyLjVMMTcuNDI3IDEyLjVMMTcuNDI3IDExLjVMNy4zOTg5MyAxMS41TDcuMzk4OTMgMTIuNVoiIGZpbGw9IiM2QzdDOTAiLz4KPC9zdmc+Cg==\");width:24px;height:24px;margin-right:8px;transition:transform 125ms ease-in-out}.rs-drawer-container .rs-drawer .drawer-header .drawer-return-button:hover::before{transform:translateX(-2px)}.rs-drawer-container .rs-drawer .drawer-header .drawer-return-button .drawer-sub-title{margin-right:12px;font-family:Arial;font-style:normal;font-weight:400}.rs-drawer-container .rs-drawer .drawer-header .drawer-title{flex:none;min-height:14px;padding:0 12px;border-left:1px solid #bdc4ca;font-family:Arial;font-style:normal;font-weight:400}.rs-drawer-container .rs-drawer .drawer-header .drawer-title:empty{padding:0}.rs-drawer-container .rs-drawer .drawer-content-box{flex:auto;height:0;background-color:#f7fafb;pointer-events:auto}.rs-drawer-container .rs-drawer .drawer-content{height:100%;padding:0 20px;border:1px solid #ebedf0;border-radius:15px;background-color:#fff;display:flex;flex-flow:column nowrap}.rs-drawer-container .rs-drawer .drawer-content .drawer-content-container{flex:auto;overflow:hidden auto}.rs-drawer-container .rs-drawer .drawer-toolbar-slot{flex:none;height:32px;margin-left:auto;display:flex;flex-flow:row nowrap;justify-content:flex-end;align-items:center;pointer-events:auto}.rs-drawer-container .rs-drawer .drawer-toolbar-slot:empty{display:none}.rs-drawer-container .rs-drawer .drawer-top-slot{flex:none;pointer-events:auto}.rs-drawer-container .rs-drawer .drawer-top-slot:empty{height:var(--drawer-top,0);pointer-events:none}.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-header{height:46px;padding:0 12px 0 8px;background-color:#f7fafb}.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-header .drawer-sub-title,.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-header .drawer-title{color:#1f3f5c;font-size:15px;font-weight:700;line-height:18px}.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-content{padding-bottom:20px}.rs-drawer-container .rs-drawer[data-mode=outer] .drawer-content .drawer-content-container{margin-right:-20px;padding-right:20px}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-top-slot:empty+.drawer-content-box{padding-top:calc((var(--drawer-top,0) + 1) * 16px)}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-header{height:24px;padding:6px 0;border-bottom:1px solid #eaedf0}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-header .drawer-sub-title,.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-header .drawer-title{color:#44566c;font-size:12px;line-height:14px}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-header .drawer-title{font-weight:700}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-content .drawer-content-container{margin-right:-20px;padding-right:20px;padding-left:8px}.rs-drawer-container .rs-drawer[data-mode=inner] .drawer-toolbar-slot{width:100%;padding:16px 0;box-sizing:content-box;border-top:1px solid #eaedf0}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar]{display:flex;flex-flow:row nowrap;justify-content:flex-end;align-items:center;gap:12px}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button{display:flex;flex-flow:row nowrap;justify-content:center;align-items:center;gap:6px;min-width:80px;height:32px;padding:0 12px;border:1px solid #adb5bd;border-radius:4px;background-color:#fff;cursor:pointer;color:#44566c;font-size:13px;font-family:Arial;font-style:normal;font-weight:400;line-height:16px}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button:hover{border-color:#6c7c90}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button:disabled{opacity:1!important;border-color:#6c7c9066;color:#44566c66;cursor:unset}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button.primary{border:none;background-color:#1364b3;color:#fff}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button.primary:hover{background-color:#176bca}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button.primary:disabled{background-color:#1364b366}::ng-deep .rs-drawer-container .rs-drawer .drawer-toolbar-slot [drawer-toolbar] button img{width:16px;height:16px}::ng-deep .rs-drawer-container .rs-drawer[data-mode=outer] .drawer-toolbar-slot [drawer-toolbar] button{height:26px;font-size:12px;line-height:14px}::ng-deep .rs-drawer-container .rs-drawer[data-mode=inner] .drawer-toolbar-slot [drawer-toolbar] button img{display:none}"]
366
355
  }] }
367
356
  ];
368
357
  /** @nocollapse */
369
358
  DrawerComponent.ctorParameters = function () { return [
370
359
  { type: ComponentFactoryResolver },
371
360
  { type: DrawerService },
372
- { type: ChangeDetectorRef },
373
- { type: StaticResourceService }
361
+ { type: ChangeDetectorRef }
374
362
  ]; };
375
363
  DrawerComponent.propDecorators = {
376
364
  element: [{ type: ViewChild, args: ["element", { static: false },] }],
@@ -416,8 +404,6 @@ if (false) {
416
404
  DrawerComponent.prototype.isOpened;
417
405
  /** @type {?} */
418
406
  DrawerComponent.prototype.hiddenDrawer;
419
- /** @type {?} */
420
- DrawerComponent.prototype.backImage;
421
407
  /**
422
408
  * @type {?}
423
409
  * @private
@@ -438,10 +424,5 @@ if (false) {
438
424
  * @private
439
425
  */
440
426
  DrawerComponent.prototype.ref;
441
- /**
442
- * @type {?}
443
- * @private
444
- */
445
- DrawerComponent.prototype.staticResourceService;
446
427
  }
447
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vcmFpc2UtY29tbW9uLWxpYi8iLCJzb3VyY2VzIjpbImxpYi9sYXlvdXQvZHJhd2VyL2luZGV4LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFNBQVMsRUFDVCxnQkFBZ0IsRUFDaEIsd0JBQXdCLEVBRXhCLFVBQVUsRUFDVixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUVMLG1CQUFtQixFQUNuQixhQUFhLEdBQ2QsTUFBTSw4QkFBOEIsQ0FBQztBQUN0QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQVU5RTtJQStCRSx5QkFDVSxRQUFrQyxFQUNsQyxPQUFzQixFQUN0QixHQUFzQixFQUN0QixxQkFBNEM7UUFKdEQsaUJBU0M7UUFSUyxhQUFRLEdBQVIsUUFBUSxDQUEwQjtRQUNsQyxZQUFPLEdBQVAsT0FBTyxDQUFlO1FBQ3RCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQ3RCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUFadEQsV0FBTSxHQUFpQixtQkFBbUIsQ0FBQztRQUMzQyxpQkFBWSxHQUFpQixLQUFLLENBQUM7UUFDbkMsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixpQkFBWSxHQUFHLElBQUksQ0FBQztRQUNwQixjQUFTLEdBQUcsSUFBSSxDQUFDO1FBRVQsb0JBQWUsR0FBRyxJQUFJLEdBQUcsRUFBa0MsQ0FBQztRQVFsRSxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsNkJBQTZCOzs7O1FBQUUsVUFBQyxNQUFNO1lBQy9ELEtBQUksQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDO1FBQzFCLENBQUMsRUFBQyxDQUFDO0lBQ0wsQ0FBQzs7Ozs7O0lBRU8sZ0RBQXNCOzs7OztJQUE5QixVQUErQixTQUFzQzs7O1lBRTdELE9BQU8sR0FBRyxJQUFJLENB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XG4gIFZpZXdDb250YWluZXJSZWYsXG4gIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgQ29tcG9uZW50UmVmLFxuICBFbGVtZW50UmVmLFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7XG4gIERyYXdlckNvbmZpZyxcbiAgRGVmYXVsdERyYXdlckNvbmZpZyxcbiAgRHJhd2VyU2VydmljZSxcbn0gZnJvbSBcIi4uLy4uL3NlcnZpY2UvZHJhd2VyLnNlcnZpY2VcIjtcbmltcG9ydCB7IFN0YXRpY1Jlc291cmNlU2VydmljZSB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL3N0YXRpYy1yZXNvdXJjZS5zZXJ2aWNlXCI7XG5cbnR5cGUgRHJhd2VyQ29tcG9uZW50Q2FjaGUgPSB7XG4gIHJlZjogQ29tcG9uZW50UmVmPGFueT47XG4gIGNvbmZpZzogRHJhd2VyQ29uZmlnO1xuICB0b29sYmFyRWw6IEhUTUxFbGVtZW50O1xuICBoZWFkZXJFbDogSFRNTEVsZW1lbnQ7XG4gIHRvcEVsOiBIVE1MRWxlbWVudDtcbn07XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJycy1kcmF3ZXJcIixcbiAgdGVtcGxhdGVVcmw6IFwiLi9pbmRleC5jb21wb25lbnQuaHRtbFwiLFxuICBzdHlsZVVybHM6IFtcIi4vaW5kZXguY29tcG9uZW50LnNjc3NcIl0sXG59KVxuZXhwb3J0IGNsYXNzIERyYXdlckNvbXBvbmVudCB7XG4gIEBWaWV3Q2hpbGQoXCJlbGVtZW50XCIsIHsgc3RhdGljOiBmYWxzZSB9KSBlbGVtZW50OiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcbiAgQFZpZXdDaGlsZChcImRyYXdlclwiLCB7IHN0YXRpYzogZmFsc2UgfSkgZHJhd2VyOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcbiAgQFZpZXdDaGlsZChcImhlYWRlclwiLCB7IHN0YXRpYzogZmFsc2UgfSkgaGVhZGVyOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcbiAgQFZpZXdDaGlsZChcImNvbnRlbnRcIiwgeyBzdGF0aWM6IGZhbHNlIH0pIGNvbnRlbnQ6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuXG4gIEBWaWV3Q2hpbGQoXCJ0b29sYmFyU2xvdFwiLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgdG9vbGJhclNsb3Q6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuICBAVmlld0NoaWxkKFwiaGVhZGVyU2xvdFwiLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgaGVhZGVyU2xvdDogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG4gIEBWaWV3Q2hpbGQoXCJ0b3BTbG90XCIsIHsgc3RhdGljOiBmYWxzZSB9KSB0b3BTbG90OiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcblxuICBAVmlld0NoaWxkKFwiZHluYW1pY0NvbXBvbmVudENvbnRhaW5lclwiLCB7XG4gICAgcmVhZDogVmlld0NvbnRhaW5lclJlZixcbiAgICBzdGF0aWM6IGZhbHNlLFxuICB9KVxuICBwcml2YXRlIGNvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZjtcblxuICBjb25maWc6IERyYXdlckNvbmZpZyA9IERlZmF1bHREcmF3ZXJDb25maWc7XG4gIHVzZUFuaW1hdGlvbjogXCJ5ZXNcIiB8IFwibm9cIiA9IFwieWVzXCI7XG4gIGlzT3BlbmVkID0gZmFsc2U7XG4gIGhpZGRlbkRyYXdlciA9IHRydWU7XG4gIGJhY2tJbWFnZSA9IG51bGw7XG5cbiAgcHJpdmF0ZSBjb21wb25lbnRSZWZNYXAgPSBuZXcgTWFwPHN0cmluZywgRHJhd2VyQ29tcG9uZW50Q2FjaGVbXT4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gICAgcHJpdmF0ZSBzZXJ2aWNlOiBEcmF3ZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIHN0YXRpY1Jlc291cmNlU2VydmljZTogU3RhdGljUmVzb3VyY2VTZXJ2aWNlLFxuICApIHtcbiAgICBzdGF0aWNSZXNvdXJjZVNlcnZpY2UubG9hZChcIi9hc3NldHMvaW1nL2RyYXdlci1iYWNrLnN2Z1wiLCAocmVzdWx0KSA9PiB7XG4gICAgICB0aGlzLmJhY2tJbWFnZSA9IHJlc3VsdDtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlRHluYW1pY0NvbXBvbmVudChjb21wb25lbnQ6IG5ldyAoLi4uYXJnczogYW55W10pID0+IGFueSkge1xuICAgIC8vIOehruS/neWcqOiwg+eUqOS5i+WJjeebruagh+e7hOS7tuW3sue7j+WcqGVudHJ5Q29tcG9uZW50c+S4reWjsOaYjlxuICAgIGNvbnN0IGZhY3RvcnkgPSB0aGlzLnJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KGNvbXBvbmVudCk7XG4gICAgY29uc3QgY29tcG9uZW50UmVmID0gdGhpcy5jb250YWluZXIuY3JlYXRlQ29tcG9uZW50KGZhY3RvcnkpO1xuICAgIHJldHVybiBjb21wb25lbnRSZWY7XG4gIH1cblxuICBwcml2YXRlIGRlc3Ryb3lEeW5hbWljQ29tcG9uZW50KGNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPGFueT4pIHtcbiAgICBpZiAoY29tcG9uZW50UmVmKSB7XG4gICAgICBjb21wb25lbnRSZWYuZGVzdHJveSgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2V0Q29tcG9uZW50RGF0YShcbiAgICBjb21wb25lbnRSZWY6IENvbXBvbmVudFJlZjxhbnk+LFxuICAgIGRhdGE6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fSxcbiAgKSB7XG4gICAgLy8g5aaC5p6c6ZyA6KaB5Lyg6YCS5pWw5o2u57uZ5Yqo5oCB57uE5Lu277yM5Y+v5Lul6L+Z5qC35YGaXG4gICAgaWYgKGNvbXBvbmVudFJlZikge1xuICAgICAgT2JqZWN0LmVudHJpZXMoZGF0YSkuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZVtrZXldID0gdmFsdWU7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldFNsb3RFbGVtZW50KGNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPGFueT4sIHNlbGVjdG9yOiBzdHJpbmcpIHtcbiAgICBjb25zdCBjb21wb25lbnRFbCA9IGNvbXBvbmVudFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50O1xuICAgIHJldHVybiBjb21wb25lbnRFbC5xdWVyeVNlbGVjdG9yKHNlbGVjdG9yKSBhcyBIVE1MRWxlbWVudDtcbiAgfVxuXG4gIHByaXZhdGUgc2V0U2xvdEVsZW1lbnQoc2xvdEVsOiBIVE1MRWxlbWVudCwgY29udGFpbmVyRWw6IEhUTUxFbGVtZW50KSB7XG4gICAgY29udGFpbmVyRWwuaW5uZXJIVE1MID0gXCJcIjtcbiAgICBpZiAoc2xvdEVsKSB7XG4gICAgICBjb250YWluZXJFbC5hcHBlbmQoc2xvdEVsKTtcbiAgICB9XG4gIH1cblxuICBzZXRDYWNoZShjYWNoZTogRHJhd2VyQ29tcG9uZW50Q2FjaGUpIHtcbiAgICB0aGlzLnNldFNsb3RFbGVtZW50KGNhY2hlLnRvb2xiYXJFbCwgdGhpcy50b29sYmFyU2xvdC5uYXRpdmVFbGVtZW50KTtcbiAgICB0aGlzLnNldFNsb3RFbGVtZW50KGNhY2hlLmhlYWRlckVsLCB0aGlzLmhlYWRlclNsb3QubmF0aXZlRWxlbWVudCk7XG4gICAgdGhpcy5zZXRTbG90RWxlbWVudChjYWNoZS50b3BFbCwgdGhpcy50b3BTbG90Lm5hdGl2ZUVsZW1lbnQpO1xuXG4gICAgY29uc3QgZHJhd2VyVG9wID0gY2FjaGUuY29uZmlnLnRvcCA/IGAke2NhY2hlLmNvbmZpZy50b3B9cHhgIDogXCJcIjtcbiAgICB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShcIi0tZHJhd2VyLXRvcFwiLCBkcmF3ZXJUb3ApO1xuXG4gICAgaWYgKGNhY2hlLmNvbmZpZy5tb2RlID09PSBcImlubmVyXCIpIHtcbiAgICAgIHRoaXMuY29udGVudC5uYXRpdmVFbGVtZW50Lmluc2VydEJlZm9yZShcbiAgICAgICAgdGhpcy5oZWFkZXIubmF0aXZlRWxlbWVudCxcbiAgICAgICAgdGhpcy5jb250ZW50Lm5hdGl2ZUVsZW1lbnQuZmlyc3RDaGlsZCxcbiAgICAgICk7XG4gICAgICB0aGlzLmNvbnRlbnQubmF0aXZlRWxlbWVudC5hcHBlbmQodGhpcy50b29sYmFyU2xvdC5uYXRpdmVFbGVtZW50KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kcmF3ZXIubmF0aXZlRWxlbWVudC5pbnNlcnRCZWZvcmUoXG4gICAgICAgIHRoaXMuaGVhZGVyLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgIHRoaXMuZHJhd2VyLm5hdGl2ZUVsZW1lbnQuZmlyc3RDaGlsZCxcbiAgICAgICk7XG4gICAgICB0aGlzLmhlYWRlci5uYXRpdmVFbGVtZW50LmFwcGVuZCh0aGlzLnRvb2xiYXJTbG90Lm5hdGl2ZUVsZW1lbnQpO1xuICAgIH1cblxuICAgIHRoaXMuY29uZmlnID0gY2FjaGUuY29uZmlnO1xuICAgIHRoaXMucmVmLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgc2V0Q29uZmlnKGNvbmZpZzogUGFydGlhbDxEcmF3ZXJDb25maWc+KSB7XG4gICAgY29uc3QgY2FjaGVzID0gdGhpcy5jb21wb25lbnRSZWZNYXAuZ2V0KHRoaXMuc2VydmljZS5jYWNoZUtleSkgfHwgW107XG4gICAgY29uc3QgY2FjaGUgPSBjYWNoZXMuc2xpY2UoLTEpWzBdO1xuICAgIGlmIChjYWNoZSkge1xuICAgICAgY2FjaGUuY29uZmlnID0geyAuLi5jYWNoZS5jb25maWcsIC4uLmNvbmZpZyB9O1xuICAgICAgdGhpcy5zZXRDYWNoZShjYWNoZSk7XG4gICAgfVxuICB9XG5cbiAgc2hvdzxUPihcbiAgICBjb21wb25lbnQ6IG5ldyAoLi4uYXJnczogYW55W10pID0+IFQsXG4gICAgY29uZmlnOiBEcmF3ZXJDb25maWcsXG4gICAgZGF0YTogUmVjb3JkPHN0cmluZywgYW55PixcbiAgKTogVCB7XG4gICAgY29uc3Qgc2hvd0NvbmZpZyA9IHsgLi4uRGVmYXVsdERyYXdlckNvbmZpZywgLi4uY29uZmlnIH07XG4gICAgY29uc3QgY29tcG9uZW50UmVmID0gdGhpcy5jcmVhdGVEeW5hbWljQ29tcG9uZW50KGNvbXBvbmVudCk7XG4gICAgY29uc3QgdG9vbGJhckVsID0gdGhpcy5nZXRTbG90RWxlbWVudChjb21wb25lbnRSZWYsIFwiW2RyYXdlci10b29sYmFyXVwiKTtcbiAgICBjb25zdCBoZWFkZXJFbCA9IHRoaXMuZ2V0U2xvdEVsZW1lbnQoY29tcG9uZW50UmVmLCBcIltkcmF3ZXItaGVhZGVyXVwiKTtcbiAgICBjb25zdCB0b3BFbCA9IHRoaXMuZ2V0U2xvdEVsZW1lbnQoY29tcG9uZW50UmVmLCBcIltkcmF3ZXItdG9wXVwiKTtcbiAgICBjb25zdCBjYWNoZSA9IHtcbiAgICAgIGNvbmZpZzogc2hvd0NvbmZpZyxcbiAgICAgIHJlZjogY29tcG9uZW50UmVmLFxuICAgICAgdG9vbGJhckVsLFxuICAgICAgaGVhZGVyRWwsXG4gICAgICB0b3BFbCxcbiAgICB9O1xuXG4gICAgY29uc3QgY2FjaGVzID0gdGhpcy5jb21wb25lbnRSZWZNYXAuZ2V0KHRoaXMuc2VydmljZS5jYWNoZUtleSkgfHwgW107XG4gICAgdGhpcy5jb21wb25lbnRSZWZNYXAuc2V0KHRoaXMuc2VydmljZS5jYWNoZUtleSwgWy4uLmNhY2hlcywgY2FjaGVdKTtcbiAgICAvLyDlpoLmnpzmmK/nrKzkuIDkuKrnvJPlrZjvvIzmiZPlvIDmir3lsYlcbiAgICBpZiAoY2FjaGVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy50b2dnbGVPcGVuU3RhdHVzKHRydWUsIHRydWUpO1xuICAgIH1cbiAgICB0aGlzLnRvZ2dsZUNhY2hlKGNhY2hlKTtcbiAgICB0aGlzLnNldENvbXBvbmVudERhdGEoY29tcG9uZW50UmVmLCBkYXRhKTtcblxuICAgIHJldHVybiBjb21wb25lbnRSZWYuaW5zdGFuY2U7XG4gIH1cblxuICBoaWRlKCkge1xuICAgIHRoaXMuc2VydmljZS5oaWRlKCk7XG4gIH1cblxuICBiYWNrKCkge1xuICAgIHRoaXMuZGVsZXRlQ2FjaGUodGhpcy5zZXJ2aWNlLmNhY2hlS2V5KTtcblxuICAgIC8vIOWmguaenOacieS4iuS4gOS4que8k+WtmO+8jOiuvue9ruS4uuW9k+WJjee8k+WtmO+8jOWQpuWImeWFs+mXreaKveWxiVxuICAgIGNvbnN0IGNhY2hlcyA9IHRoaXMuY29tcG9uZW50UmVmTWFwLmdldCh0aGlzLnNlcnZpY2UuY2FjaGVLZXkpIHx8IFtdO1xuICAgIGNvbnN0IGNhY2hlID0gY2FjaGVzLnNsaWNlKC0xKVswXTtcbiAgICBpZiAoY2FjaGUpIHtcbiAgICAgIHRoaXMudG9nZ2xlQ2FjaGUoY2FjaGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnRvZ2dsZU9wZW5TdGF0dXMoZmFsc2UsIHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZGVsZXRlQ2FjaGUoY2FjaGVLZXk6IHN0cmluZykge1xuICAgIGNvbnN0IGNhY2hlcyA9IHRoaXMuY29tcG9uZW50UmVmTWFwLmdldChjYWNoZUtleSkgfHwgW107XG4gICAgY29uc3QgY2FjaGUgPSBjYWNoZXMuc2xpY2UoLTEpWzBdO1xuICAgIGlmIChjYWNoZSkge1xuICAgICAgdGhpcy5kZXN0cm95RHluYW1pY0NvbXBvbmVudChjYWNoZS5yZWYpO1xuICAgICAgY2FjaGVzLnBvcCgpO1xuICAgIH1cbiAgICBpZiAoY2FjaGVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5jb21wb25lbnRSZWZNYXAuZGVsZXRlKGNhY2hlS2V5KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHRvZ2dsZUNhY2hlKGNhY2hlOiBEcmF3ZXJDb21wb25lbnRDYWNoZSkge1xuICAgIHRoaXMuY29tcG9uZW50UmVmTWFwLmZvckVhY2goKGNhY2hlcykgPT4ge1xuICAgICAgY2FjaGVzLmZvckVhY2goKGMpID0+IHtcbiAgICAgICAgYy5yZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudC5zdHlsZS5kaXNwbGF5ID0gYyA9PT0gY2FjaGUgPyBcIlwiIDogXCJub25lXCI7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgICB0aGlzLnNldENhY2hlKGNhY2hlKTtcbiAgfVxuXG4gIGRlbGV0ZUFsbENhY2hlKGNhY2hlS2V5OiBzdHJpbmcpIHtcbiAgICBjb25zdCBjYWNoZXMgPSB0aGlzLmNvbXBvbmVudFJlZk1hcC5nZXQoY2FjaGVLZXkpIHx8IFtdO1xuICAgIGNhY2hlcy5mb3JFYWNoKChjYWNoZSkgPT4ge1xuICAgICAgdGhpcy5kZXN0cm95RHluYW1pY0NvbXBvbmVudChjYWNoZS5yZWYpO1xuICAgIH0pO1xuICAgIHRoaXMuY29tcG9uZW50UmVmTWFwLmRlbGV0ZShjYWNoZUtleSk7XG4gIH1cblxuICBvblJvdXRlQ2hhbmdlKCkge1xuICAgIGNvbnN0IGNhY2hlcyA9IHRoaXMuY29tcG9uZW50UmVmTWFwLmdldCh0aGlzLnNlcnZpY2UuY2FjaGVLZXkpIHx8IFtdO1xuICAgIGNvbnN0IGNhY2hlID0gY2FjaGVzLnNsaWNlKC0xKVswXTtcbiAgICBpZiAoY2FjaGUpIHtcbiAgICAgIHRoaXMudG9nZ2xlQ2FjaGUoY2FjaGUpO1xuICAgICAgdGhpcy50b2dnbGVPcGVuU3RhdHVzKHRydWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnRvZ2dsZU9wZW5TdGF0dXMoZmFsc2UpO1xuICAgIH1cbiAgICB0aGlzLnVzZUFuaW1hdGlvbiA9IFwibm9cIjtcbiAgfVxuXG4gIHRvZ2dsZU9wZW5TdGF0dXMoaXNPcGVuOiBib29sZWFuLCB1c2VBbmltYXRpb24gPSBmYWxzZSkge1xuICAgIHRoaXMuaXNPcGVuZWQgPSBpc09wZW47XG4gICAgdGhpcy51c2VBbmltYXRpb24gPSB1c2VBbmltYXRpb24gPyBcInllc1wiIDogXCJub1wiO1xuICAgIHRoaXMuaGlkZGVuRHJhd2VyID0gIWlzT3BlbiAmJiAhdXNlQW5pbWF0aW9uO1xuICAgIHRoaXMucmVmLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgb25BbmltYXRpb25FbmQoKSB7XG4gICAgaWYgKCF0aGlzLmlzT3BlbmVkKSB7XG4gICAgICB0aGlzLmhpZGRlbkRyYXdlciA9IHRydWU7XG4gICAgICB0aGlzLnJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
428
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vcmFpc2UtY29tbW9uLWxpYi8iLCJzb3VyY2VzIjpbImxpYi9sYXlvdXQvZHJhd2VyL2luZGV4LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFNBQVMsRUFDVCxnQkFBZ0IsRUFDaEIsd0JBQXdCLEVBRXhCLFVBQVUsRUFDVixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUVMLG1CQUFtQixFQUNuQixhQUFhLEdBQ2QsTUFBTSw4QkFBOEIsQ0FBQztBQVd0QztJQThCRSx5QkFDVSxRQUFrQyxFQUNsQyxPQUFzQixFQUN0QixHQUFzQjtRQUZ0QixhQUFRLEdBQVIsUUFBUSxDQUEwQjtRQUNsQyxZQUFPLEdBQVAsT0FBTyxDQUFlO1FBQ3RCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBVmhDLFdBQU0sR0FBaUIsbUJBQW1CLENBQUM7UUFDM0MsaUJBQVksR0FBaUIsS0FBSyxDQUFDO1FBQ25DLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsaUJBQVksR0FBRyxJQUFJLENBQUM7UUFFWixvQkFBZSxHQUFHLElBQUksR0FBRyxFQUFrQyxDQUFDO0lBTWpFLENBQUM7Ozs7OztJQUVJLGdEQUFzQjs7Ozs7SUFBOUIsVUFBK0IsU0FBc0M7OztZQUU3RCxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyxTQUFTLENBQUM7O1lBQzFELFlBQVksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUM7UUFDNUQsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQzs7Ozs7O0lBRU8saURBQXVCOzs7OztJQUEvQixVQUFnQyxZQUErQjtRQUM3RCxJQUFJLFlBQVksRUFBRTtZQUNoQixZQUFZLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDeEI7SUFDSCxDQUFDOzs7Ozs7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LFNBQVMsU0FBQyxTQUFTLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFOzhCQUV0QyxTQUFTLFNBQUMsYUFBYSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTs2QkFFMUMsU0FBUyxTQUFDLFlBQVksRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7MEJBRXpDLFNBQVMsU0FBQyxTQUFTLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFOzRCQUV0QyxTQUFTLFNBQUMsMkJBQTJCLEVBQUU7d0JBQ3RDLElBQUksRUFBRSxnQkFBZ0I7d0JBQ3RCLE1BQU0sRUFBRSxLQUFLO3FCQUNkOztJQTZMSCxzQkFBQztDQUFBLEFBak5ELElBaU5DO1NBNU1ZLGVBQWU7OztJQUMxQixrQ0FBNkU7O0lBQzdFLGlDQUEyRTs7SUFDM0UsaUNBQTJFOztJQUMzRSxrQ0FBNkU7O0lBRTdFLHNDQUN3Qzs7SUFDeEMscUNBQ3VDOztJQUN2QyxrQ0FBNkU7Ozs7O0lBRTdFLG9DQUlvQzs7SUFFcEMsaUNBQTJDOztJQUMzQyx1Q0FBbUM7O0lBQ25DLG1DQUFpQjs7SUFDakIsdUNBQW9COzs7OztJQUVwQiwwQ0FBb0U7Ozs7O0lBR2xFLG1DQUEwQzs7Ozs7SUFDMUMsa0NBQThCOzs7OztJQUM5Qiw4QkFBOEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NvbnRhaW5lclJlZixcbiAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICBDb21wb25lbnRSZWYsXG4gIEVsZW1lbnRSZWYsXG4gIENoYW5nZURldGVjdG9yUmVmLFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHtcbiAgRHJhd2VyQ29uZmlnLFxuICBEZWZhdWx0RHJhd2VyQ29uZmlnLFxuICBEcmF3ZXJTZXJ2aWNlLFxufSBmcm9tIFwiLi4vLi4vc2VydmljZS9kcmF3ZXIuc2VydmljZVwiO1xuaW1wb3J0IHsgU3RhdGljUmVzb3VyY2VTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2Uvc3RhdGljLXJlc291cmNlLnNlcnZpY2VcIjtcblxudHlwZSBEcmF3ZXJDb21wb25lbnRDYWNoZSA9IHtcbiAgcmVmOiBDb21wb25lbnRSZWY8YW55PjtcbiAgY29uZmlnOiBEcmF3ZXJDb25maWc7XG4gIHRvb2xiYXJFbDogSFRNTEVsZW1lbnQ7XG4gIGhlYWRlckVsOiBIVE1MRWxlbWVudDtcbiAgdG9wRWw6IEhUTUxFbGVtZW50O1xufTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcInJzLWRyYXdlclwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL2luZGV4LmNvbXBvbmVudC5odG1sXCIsXG4gIHN0eWxlVXJsczogW1wiLi9pbmRleC5jb21wb25lbnQuc2Nzc1wiXSxcbn0pXG5leHBvcnQgY2xhc3MgRHJhd2VyQ29tcG9uZW50IHtcbiAgQFZpZXdDaGlsZChcImVsZW1lbnRcIiwgeyBzdGF0aWM6IGZhbHNlIH0pIGVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuICBAVmlld0NoaWxkKFwiZHJhd2VyXCIsIHsgc3RhdGljOiBmYWxzZSB9KSBkcmF3ZXI6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuICBAVmlld0NoaWxkKFwiaGVhZGVyXCIsIHsgc3RhdGljOiBmYWxzZSB9KSBoZWFkZXI6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuICBAVmlld0NoaWxkKFwiY29udGVudFwiLCB7IHN0YXRpYzogZmFsc2UgfSkgY29udGVudDogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG5cbiAgQFZpZXdDaGlsZChcInRvb2xiYXJTbG90XCIsIHsgc3RhdGljOiBmYWxzZSB9KVxuICB0b29sYmFyU2xvdDogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG4gIEBWaWV3Q2hpbGQoXCJoZWFkZXJTbG90XCIsIHsgc3RhdGljOiBmYWxzZSB9KVxuICBoZWFkZXJTbG90OiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcbiAgQFZpZXdDaGlsZChcInRvcFNsb3RcIiwgeyBzdGF0aWM6IGZhbHNlIH0pIHRvcFNsb3Q6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuXG4gIEBWaWV3Q2hpbGQoXCJkeW5hbWljQ29tcG9uZW50Q29udGFpbmVyXCIsIHtcbiAgICByZWFkOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgIHN0YXRpYzogZmFsc2UsXG4gIH0pXG4gIHByaXZhdGUgY29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmO1xuXG4gIGNvbmZpZzogRHJhd2VyQ29uZmlnID0gRGVmYXVsdERyYXdlckNvbmZpZztcbiAgdXNlQW5pbWF0aW9uOiBcInllc1wiIHwgXCJub1wiID0gXCJ5ZXNcIjtcbiAgaXNPcGVuZWQgPSBmYWxzZTtcbiAgaGlkZGVuRHJhd2VyID0gdHJ1ZTtcblxuICBwcml2YXRlIGNvbXBvbmVudFJlZk1hcCA9IG5ldyBNYXA8c3RyaW5nLCBEcmF3ZXJDb21wb25lbnRDYWNoZVtdPigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICBwcml2YXRlIHNlcnZpY2U6IERyYXdlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICApIHt9XG5cbiAgcHJpdmF0ZSBjcmVhdGVEeW5hbWljQ29tcG9uZW50KGNvbXBvbmVudDogbmV3ICguLi5hcmdzOiBhbnlbXSkgPT4gYW55KSB7XG4gICAgLy8g56Gu5L+d5Zyo6LCD55So5LmL5YmN55uu5qCH57uE5Lu25bey57uP5ZyoZW50cnlDb21wb25lbnRz5Lit5aOw5piOXG4gICAgY29uc3QgZmFjdG9yeSA9IHRoaXMucmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoY29tcG9uZW50KTtcbiAgICBjb25zdCBjb21wb25lbnRSZWYgPSB0aGlzLmNvbnRhaW5lci5jcmVhdGVDb21wb25lbnQoZmFjdG9yeSk7XG4gICAgcmV0dXJuIGNvbXBvbmVudFJlZjtcbiAgfVxuXG4gIHByaXZhdGUgZGVzdHJveUR5bmFtaWNDb21wb25lbnQoY29tcG9uZW50UmVmOiBDb21wb25lbnRSZWY8YW55Pikge1xuICAgIGlmIChjb21wb25lbnRSZWYpIHtcbiAgICAgIGNvbXBvbmVudFJlZi5kZXN0cm95KCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzZXRDb21wb25lbnREYXRhKFxuICAgIGNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPGFueT4sXG4gICAgZGF0YTogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9LFxuICApIHtcbiAgICAvLyDlpoLmnpzpnIDopoHkvKDpgJLmlbDmja7nu5nliqjmgIHnu4Tku7bvvIzlj6/ku6Xov5nmoLflgZpcbiAgICBpZiAoY29tcG9uZW50UmVmKSB7XG4gICAgICBPYmplY3QuZW50cmllcyhkYXRhKS5mb3JFYWNoKChba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgICAgY29tcG9uZW50UmVmLmluc3RhbmNlW2tleV0gPSB2YWx1ZTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0U2xvdEVsZW1lbnQoY29tcG9uZW50UmVmOiBDb21wb25lbnRSZWY8YW55Piwgc2VsZWN0b3I6IHN0cmluZykge1xuICAgIGNvbnN0IGNvbXBvbmVudEVsID0gY29tcG9uZW50UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcmV0dXJuIGNvbXBvbmVudEVsLnF1ZXJ5U2VsZWN0b3Ioc2VsZWN0b3IpIGFzIEhUTUxFbGVtZW50O1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRTbG90RWxlbWVudChzbG90RWw6IEhUTUxFbGVtZW50LCBjb250YWluZXJFbDogSFRNTEVsZW1lbnQpIHtcbiAgICBjb250YWluZXJFbC5pbm5lckhUTUwgPSBcIlwiO1xuICAgIGlmIChzbG90RWwpIHtcbiAgICAgIGNvbnRhaW5lckVsLmFwcGVuZChzbG90RWwpO1xuICAgIH1cbiAgfVxuXG4gIHNldENhY2hlKGNhY2hlOiBEcmF3ZXJDb21wb25lbnRDYWNoZSkge1xuICAgIHRoaXMuc2V0U2xvdEVsZW1lbnQoY2FjaGUudG9vbGJhckVsLCB0aGlzLnRvb2xiYXJTbG90Lm5hdGl2ZUVsZW1lbnQpO1xuICAgIHRoaXMuc2V0U2xvdEVsZW1lbnQoY2FjaGUuaGVhZGVyRWwsIHRoaXMuaGVhZGVyU2xvdC5uYXRpdmVFbGVtZW50KTtcbiAgICB0aGlzLnNldFNsb3RFbGVtZW50KGNhY2hlLnRvcEVsLCB0aGlzLnRvcFNsb3QubmF0aXZlRWxlbWVudCk7XG5cbiAgICBjb25zdCBkcmF3ZXJUb3AgPSBjYWNoZS5jb25maWcudG9wID8gYCR7Y2FjaGUuY29uZmlnLnRvcH1weGAgOiBcIlwiO1xuICAgIHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KFwiLS1kcmF3ZXItdG9wXCIsIGRyYXdlclRvcCk7XG5cbiAgICBpZiAoY2FjaGUuY29uZmlnLm1vZGUgPT09IFwiaW5uZXJcIikge1xuICAgICAgdGhpcy5jb250ZW50Lm5hdGl2ZUVsZW1lbnQuaW5zZXJ0QmVmb3JlKFxuICAgICAgICB0aGlzLmhlYWRlci5uYXRpdmVFbGVtZW50LFxuICAgICAgICB0aGlzLmNvbnRlbnQubmF0aXZlRWxlbWVudC5maXJzdENoaWxkLFxuICAgICAgKTtcbiAgICAgIHRoaXMuY29udGVudC5uYXRpdmVFbGVtZW50LmFwcGVuZCh0aGlzLnRvb2xiYXJTbG90Lm5hdGl2ZUVsZW1lbnQpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmRyYXdlci5uYXRpdmVFbGVtZW50Lmluc2VydEJlZm9yZShcbiAgICAgICAgdGhpcy5oZWFkZXIubmF0aXZlRWxlbWVudCxcbiAgICAgICAgdGhpcy5kcmF3ZXIubmF0aXZlRWxlbWVudC5maXJzdENoaWxkLFxuICAgICAgKTtcbiAgICAgIHRoaXMuaGVhZGVyLm5hdGl2ZUVsZW1lbnQuYXBwZW5kKHRoaXMudG9vbGJhclNsb3QubmF0aXZlRWxlbWVudCk7XG4gICAgfVxuXG4gICAgdGhpcy5jb25maWcgPSBjYWNoZS5jb25maWc7XG4gICAgdGhpcy5yZWYubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBzZXRDb25maWcoY29uZmlnOiBQYXJ0aWFsPERyYXdlckNvbmZpZz4pIHtcbiAgICBjb25zdCBjYWNoZXMgPSB0aGlzLmNvbXBvbmVudFJlZk1hcC5nZXQodGhpcy5zZXJ2aWNlLmNhY2hlS2V5KSB8fCBbXTtcbiAgICBjb25zdCBjYWNoZSA9IGNhY2hlcy5zbGljZSgtMSlbMF07XG4gICAgaWYgKGNhY2hlKSB7XG4gICAgICBjYWNoZS5jb25maWcgPSB7IC4uLmNhY2hlLmNvbmZpZywgLi4uY29uZmlnIH07XG4gICAgICB0aGlzLnNldENhY2hlKGNhY2hlKTtcbiAgICB9XG4gIH1cblxuICBzaG93PFQ+KFxuICAgIGNvbXBvbmVudDogbmV3ICguLi5hcmdzOiBhbnlbXSkgPT4gVCxcbiAgICBjb25maWc6IERyYXdlckNvbmZpZyxcbiAgICBkYXRhOiBSZWNvcmQ8c3RyaW5nLCBhbnk+LFxuICApOiBUIHtcbiAgICBjb25zdCBzaG93Q29uZmlnID0geyAuLi5EZWZhdWx0RHJhd2VyQ29uZmlnLCAuLi5jb25maWcgfTtcbiAgICBjb25zdCBjb21wb25lbnRSZWYgPSB0aGlzLmNyZWF0ZUR5bmFtaWNDb21wb25lbnQoY29tcG9uZW50KTtcbiAgICBjb25zdCB0b29sYmFyRWwgPSB0aGlzLmdldFNsb3RFbGVtZW50KGNvbXBvbmVudFJlZiwgXCJbZHJhd2VyLXRvb2xiYXJdXCIpO1xuICAgIGNvbnN0IGhlYWRlckVsID0gdGhpcy5nZXRTbG90RWxlbWVudChjb21wb25lbnRSZWYsIFwiW2RyYXdlci1oZWFkZXJdXCIpO1xuICAgIGNvbnN0IHRvcEVsID0gdGhpcy5nZXRTbG90RWxlbWVudChjb21wb25lbnRSZWYsIFwiW2RyYXdlci10b3BdXCIpO1xuICAgIGNvbnN0IGNhY2hlID0ge1xuICAgICAgY29uZmlnOiBzaG93Q29uZmlnLFxuICAgICAgcmVmOiBjb21wb25lbnRSZWYsXG4gICAgICB0b29sYmFyRWwsXG4gICAgICBoZWFkZXJFbCxcbiAgICAgIHRvcEVsLFxuICAgIH07XG5cbiAgICBjb25zdCBjYWNoZXMgPSB0aGlzLmNvbXBvbmVudFJlZk1hcC5nZXQodGhpcy5zZXJ2aWNlLmNhY2hlS2V5KSB8fCBbXTtcbiAgICB0aGlzLmNvbXBvbmVudFJlZk1hcC5zZXQodGhpcy5zZXJ2aWNlLmNhY2hlS2V5LCBbLi4uY2FjaGVzLCBjYWNoZV0pO1xuICAgIC8vIOWmguaenOaYr+esrOS4gOS4que8k+WtmO+8jOaJk+W8gOaKveWxiVxuICAgIGlmIChjYWNoZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aGlzLnRvZ2dsZU9wZW5TdGF0dXModHJ1ZSwgdHJ1ZSk7XG4gICAgfVxuICAgIHRoaXMudG9nZ2xlQ2FjaGUoY2FjaGUpO1xuICAgIHRoaXMuc2V0Q29tcG9uZW50RGF0YShjb21wb25lbnRSZWYsIGRhdGEpO1xuXG4gICAgcmV0dXJuIGNvbXBvbmVudFJlZi5pbnN0YW5jZTtcbiAgfVxuXG4gIGhpZGUoKSB7XG4gICAgdGhpcy5zZXJ2aWNlLmhpZGUoKTtcbiAgfVxuXG4gIGJhY2soKSB7XG4gICAgdGhpcy5kZWxldGVDYWNoZSh0aGlzLnNlcnZpY2UuY2FjaGVLZXkpO1xuXG4gICAgLy8g5aaC5p6c5pyJ5LiK5LiA5Liq57yT5a2Y77yM6K6+572u5Li65b2T5YmN57yT5a2Y77yM5ZCm5YiZ5YWz6Zet5oq95bGJXG4gICAgY29uc3QgY2FjaGVzID0gdGhpcy5jb21wb25lbnRSZWZNYXAuZ2V0KHRoaXMuc2VydmljZS5jYWNoZUtleSkgfHwgW107XG4gICAgY29uc3QgY2FjaGUgPSBjYWNoZXMuc2xpY2UoLTEpWzBdO1xuICAgIGlmIChjYWNoZSkge1xuICAgICAgdGhpcy50b2dnbGVDYWNoZShjYWNoZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudG9nZ2xlT3BlblN0YXR1cyhmYWxzZSwgdHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBkZWxldGVDYWNoZShjYWNoZUtleTogc3RyaW5nKSB7XG4gICAgY29uc3QgY2FjaGVzID0gdGhpcy5jb21wb25lbnRSZWZNYXAuZ2V0KGNhY2hlS2V5KSB8fCBbXTtcbiAgICBjb25zdCBjYWNoZSA9IGNhY2hlcy5zbGljZSgtMSlbMF07XG4gICAgaWYgKGNhY2hlKSB7XG4gICAgICB0aGlzLmRlc3Ryb3lEeW5hbWljQ29tcG9uZW50KGNhY2hlLnJlZik7XG4gICAgICBjYWNoZXMucG9wKCk7XG4gICAgfVxuICAgIGlmIChjYWNoZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aGlzLmNvbXBvbmVudFJlZk1hcC5kZWxldGUoY2FjaGVLZXkpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgdG9nZ2xlQ2FjaGUoY2FjaGU6IERyYXdlckNvbXBvbmVudENhY2hlKSB7XG4gICAgdGhpcy5jb21wb25lbnRSZWZNYXAuZm9yRWFjaCgoY2FjaGVzKSA9PiB7XG4gICAgICBjYWNoZXMuZm9yRWFjaCgoYykgPT4ge1xuICAgICAgICBjLnJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50LnN0eWxlLmRpc3BsYXkgPSBjID09PSBjYWNoZSA/IFwiXCIgOiBcIm5vbmVcIjtcbiAgICAgIH0pO1xuICAgIH0pO1xuICAgIHRoaXMuc2V0Q2FjaGUoY2FjaGUpO1xuICB9XG5cbiAgZGVsZXRlQWxsQ2FjaGUoY2FjaGVLZXk6IHN0cmluZykge1xuICAgIGNvbnN0IGNhY2hlcyA9IHRoaXMuY29tcG9uZW50UmVmTWFwLmdldChjYWNoZUtleSkgfHwgW107XG4gICAgY2FjaGVzLmZvckVhY2goKGNhY2hlKSA9PiB7XG4gICAgICB0aGlzLmRlc3Ryb3lEeW5hbWljQ29tcG9uZW50KGNhY2hlLnJlZik7XG4gICAgfSk7XG4gICAgdGhpcy5jb21wb25lbnRSZWZNYXAuZGVsZXRlKGNhY2hlS2V5KTtcbiAgfVxuXG4gIG9uUm91dGVDaGFuZ2UoKSB7XG4gICAgY29uc3QgY2FjaGVzID0gdGhpcy5jb21wb25lbnRSZWZNYXAuZ2V0KHRoaXMuc2VydmljZS5jYWNoZUtleSkgfHwgW107XG4gICAgY29uc3QgY2FjaGUgPSBjYWNoZXMuc2xpY2UoLTEpWzBdO1xuICAgIGlmIChjYWNoZSkge1xuICAgICAgdGhpcy50b2dnbGVDYWNoZShjYWNoZSk7XG4gICAgICB0aGlzLnRvZ2dsZU9wZW5TdGF0dXModHJ1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudG9nZ2xlT3BlblN0YXR1cyhmYWxzZSk7XG4gICAgfVxuICAgIHRoaXMudXNlQW5pbWF0aW9uID0gXCJub1wiO1xuICB9XG5cbiAgdG9nZ2xlT3BlblN0YXR1cyhpc09wZW46IGJvb2xlYW4sIHVzZUFuaW1hdGlvbiA9IGZhbHNlKSB7XG4gICAgdGhpcy5pc09wZW5lZCA9IGlzT3BlbjtcbiAgICB0aGlzLnVzZUFuaW1hdGlvbiA9IHVzZUFuaW1hdGlvbiA/IFwieWVzXCIgOiBcIm5vXCI7XG4gICAgdGhpcy5oaWRkZW5EcmF3ZXIgPSAhaXNPcGVuICYmICF1c2VBbmltYXRpb247XG4gICAgdGhpcy5yZWYubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBvbkFuaW1hdGlvbkVuZCgpIHtcbiAgICBpZiAoIXRoaXMuaXNPcGVuZWQpIHtcbiAgICAgIHRoaXMuaGlkZGVuRHJhd2VyID0gdHJ1ZTtcbiAgICAgIHRoaXMucmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -29,7 +29,7 @@ var StaticResourceService = /** @class */ (function () {
29
29
  */
30
30
  function () { }); }
31
31
  return tslib_1.__awaiter(this, void 0, void 0, function () {
32
- var res, blob;
32
+ var result, res, blob;
33
33
  var _this = this;
34
34
  return tslib_1.__generator(this, function (_a) {
35
35
  switch (_a.label) {
@@ -39,7 +39,9 @@ var StaticResourceService = /** @class */ (function () {
39
39
  return [2 /*return*/, ""];
40
40
  }
41
41
  if (this.ResultMap.has(url)) {
42
- return [2 /*return*/, this.ResultMap.get(url) || ""];
42
+ result = this.ResultMap.get(url) || "";
43
+ cb(result);
44
+ return [2 /*return*/, result];
43
45
  }
44
46
  return [4 /*yield*/, fetch(url)];
45
47
  case 1:
@@ -148,4 +150,4 @@ if (false) {
148
150
  */
149
151
  StaticResourceService.prototype.sanitizer;
150
152
  }
151
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGljLXJlc291cmNlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9yYWlzZS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2Uvc3RhdGljLXJlc291cmNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsWUFBWSxFQUFXLE1BQU0sMkJBQTJCLENBQUM7OztBQUVsRTtJQU1FLCtCQUFvQixTQUF1QjtRQUF2QixjQUFTLEdBQVQsU0FBUyxDQUFjO1FBRm5DLGNBQVMsR0FBRyxJQUFJLEdBQUcsRUFBbUIsQ0FBQztJQUVELENBQUM7Ozs7OztJQUV6QyxvQ0FBSTs7Ozs7SUFBVixVQUFXLEdBQVcsRUFBRSxFQUE2QztRQUE3QyxtQkFBQSxFQUFBOzs7UUFBcUMsY0FBTyxDQUFDLENBQUE7Ozs7Ozs7d0JBQ25FLElBQUksQ0FBQyxHQUFHLElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxFQUFFOzRCQUNuQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7NEJBQ1Asc0JBQU8sRUFBRSxFQUFDO3lCQUNYO3dCQUNELElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7NEJBQzNCLHNCQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsRUFBQzt5QkFDdEM7d0JBRVcscUJBQU0sS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFBOzt3QkFBdEIsR0FBRyxHQUFHLFNBQWdCO3dCQUM1QixJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRTs0QkFDWCxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7NEJBQ1Asc0JBQU8sRUFBRSxFQUFDO3lCQUNYO3dCQUVZLHFCQUFNLEdBQUcsQ0FBQyxJQUFJLEVBQUUsRUFBQTs7d0JBQXZCLElBQUksR0FBRyxTQUFnQjt3QkFDN0Isc0JBQU8sSUFBSSxPQUFPOzs7OzRCQUFlLFVBQUMsT0FBTzs7b0NBQ2pDLE1BQU0sR0FBRyxJQUFJLFVBQVUsRUFBRTs7b0NBQ3pCLFFBQVE7Ozs7Z0NBQUcsVUFBQyxNQUFjOzt3Q0FDeEIsT0FBTyxHQUFHLEtBQUksQ0FBQyxTQUFTLENBQUMsc0JBQXNCLENBQUMsTUFBTSxDQUFDO29DQUM3RCxJQUFJLE9BQU8sRUFBRTt3Q0FDWCxLQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7cUNBQ2xDO29DQUNELE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztvQ0FDakIsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dDQUNkLENBQUMsQ0FBQTtnQ0FFRCxNQUFNLENBQUMsU0FBUzs7O2dDQUFHLGNBQU0sT0FBQSxRQUFRLENBQUMsbUJBQUEsTUFBTSxDQUFDLE1BQU0sRUFBVSxDQUFDLEVBQWpDLENBQWlDLENBQUEsQ0FBQztnQ0FDM0QsTUFBTSxDQUFDLE9BQU87OztnQ0FBRyxjQUFNLE9BQUEsUUFBUSxDQUFDLEVBQUUsQ0FBQyxFQUFaLENBQVksQ0FBQSxDQUFDO2dDQUNwQyxNQUFNLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDOzRCQUM3QixDQUFDLEVBQUMsRUFBQzs7OztLQUNKOzs7Ozs7SUFFSyx5Q0FBUzs7Ozs7SUFBZixVQUFnQixHQUFXLEVBQUUsRUFBa0M7Ozs7Ozs2QkFDdEQsSUFBSTt3QkFDTSxxQkFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFBOzt3QkFBN0IsTUFBTSxHQUFHLFNBQW9CO3dCQUNuQyxJQUFJLE1BQU0sRUFBRTs0QkFDVixFQUFFLENBQUMsTUFBTSxDQUFDLENBQUM7NEJBQ1gsc0JBQU8sTUFBTSxFQUFDO3lCQUNmO3dCQUNELHFCQUFNLElBQUksT0FBTzs7Ozs0QkFBQyxVQUFDLE9BQU8sSUFBSyxPQUFBLFVBQVUsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEVBQXpCLENBQXlCLEVBQUMsRUFBQTs7d0JBQXpELFNBQXlELENBQUM7Ozs7OztLQUU3RDs7Z0JBbERGLFVBQVUsU0FBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7Ozs7Z0JBSlEsWUFBWTs7O2dDQURyQjtDQXNEQyxBQW5ERCxJQW1EQztTQWhEWSxxQkFBcUI7Ozs7OztJQUNoQywwQ0FBK0M7Ozs7O0lBRW5DLDBDQUErQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlVXJsIH0gZnJvbSBcIkBhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXJcIjtcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiBcInJvb3RcIixcbn0pXG5leHBvcnQgY2xhc3MgU3RhdGljUmVzb3VyY2VTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBSZXN1bHRNYXAgPSBuZXcgTWFwPHN0cmluZywgU2FmZVVybD4oKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHNhbml0aXplcjogRG9tU2FuaXRpemVyKSB7fVxuXG4gIGFzeW5jIGxvYWQodXJsOiBzdHJpbmcsIGNiOiAocmVzdWx0OiBTYWZlVXJsIHwgXCJcIikgPT4gdm9pZCA9ICgpID0+IHt9KSB7XG4gICAgaWYgKCF1cmwgfHwgdHlwZW9mIHVybCAhPT0gXCJzdHJpbmdcIikge1xuICAgICAgY2IoXCJcIik7XG4gICAgICByZXR1cm4gXCJcIjtcbiAgICB9XG4gICAgaWYgKHRoaXMuUmVzdWx0TWFwLmhhcyh1cmwpKSB7XG4gICAgICByZXR1cm4gdGhpcy5SZXN1bHRNYXAuZ2V0KHVybCkgfHwgXCJcIjtcbiAgICB9XG5cbiAgICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaCh1cmwpO1xuICAgIGlmICghcmVzLm9rKSB7XG4gICAgICBjYihcIlwiKTtcbiAgICAgIHJldHVybiBcIlwiO1xuICAgIH1cblxuICAgIGNvbnN0IGJsb2IgPSBhd2FpdCByZXMuYmxvYigpO1xuICAgIHJldHVybiBuZXcgUHJvbWlzZTxTYWZlVXJsIHwgXCJcIj4oKHJlc29sdmUpID0+IHtcbiAgICAgIGNvbnN0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XG4gICAgICBjb25zdCBjYWxsYmFjayA9IChyZXN1bHQ6IHN0cmluZykgPT4ge1xuICAgICAgICBjb25zdCBzYWZlVXJsID0gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFVybChyZXN1bHQpO1xuICAgICAgICBpZiAoc2FmZVVybCkge1xuICAgICAgICAgIHRoaXMuUmVzdWx0TWFwLnNldCh1cmwsIHNhZmVVcmwpO1xuICAgICAgICB9XG4gICAgICAgIHJlc29sdmUoc2FmZVVybCk7XG4gICAgICAgIGNiKHNhZmVVcmwpO1xuICAgICAgfTtcblxuICAgICAgcmVhZGVyLm9ubG9hZGVuZCA9ICgpID0+IGNhbGxiYWNrKHJlYWRlci5yZXN1bHQgYXMgc3RyaW5nKTtcbiAgICAgIHJlYWRlci5vbmVycm9yID0gKCkgPT4gY2FsbGJhY2soXCJcIik7XG4gICAgICByZWFkZXIucmVhZEFzRGF0YVVSTChibG9iKTtcbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIGZvcmNlTG9hZCh1cmw6IHN0cmluZywgY2I6IChyZXN1bHQ6IFNhZmVVcmwgfCBcIlwiKSA9PiB2b2lkKSB7XG4gICAgd2hpbGUgKHRydWUpIHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMubG9hZCh1cmwpO1xuICAgICAgaWYgKHJlc3VsdCkge1xuICAgICAgICBjYihyZXN1bHQpO1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgfVxuICAgICAgYXdhaXQgbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHNldFRpbWVvdXQocmVzb2x2ZSwgMjAwMCkpO1xuICAgIH1cbiAgfVxufVxuIl19
153
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGljLXJlc291cmNlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9yYWlzZS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2Uvc3RhdGljLXJlc291cmNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsWUFBWSxFQUFXLE1BQU0sMkJBQTJCLENBQUM7OztBQUVsRTtJQU1FLCtCQUFvQixTQUF1QjtRQUF2QixjQUFTLEdBQVQsU0FBUyxDQUFjO1FBRm5DLGNBQVMsR0FBRyxJQUFJLEdBQUcsRUFBbUIsQ0FBQztJQUVELENBQUM7Ozs7OztJQUV6QyxvQ0FBSTs7Ozs7SUFBVixVQUFXLEdBQVcsRUFBRSxFQUE2QztRQUE3QyxtQkFBQSxFQUFBOzs7UUFBcUMsY0FBTyxDQUFDLENBQUE7Ozs7Ozs7d0JBQ25FLElBQUksQ0FBQyxHQUFHLElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxFQUFFOzRCQUNuQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7NEJBQ1Asc0JBQU8sRUFBRSxFQUFDO3lCQUNYO3dCQUNELElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7NEJBQ3JCLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFOzRCQUM1QyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUM7NEJBQ1gsc0JBQU8sTUFBTSxFQUFDO3lCQUNmO3dCQUVXLHFCQUFNLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBQTs7d0JBQXRCLEdBQUcsR0FBRyxTQUFnQjt3QkFDNUIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUU7NEJBQ1gsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDOzRCQUNQLHNCQUFPLEVBQUUsRUFBQzt5QkFDWDt3QkFFWSxxQkFBTSxHQUFHLENBQUMsSUFBSSxFQUFFLEVBQUE7O3dCQUF2QixJQUFJLEdBQUcsU0FBZ0I7d0JBQzdCLHNCQUFPLElBQUksT0FBTzs7Ozs0QkFBZSxVQUFDLE9BQU87O29DQUNqQyxNQUFNLEdBQUcsSUFBSSxVQUFVLEVBQUU7O29DQUN6QixRQUFROzs7O2dDQUFHLFVBQUMsTUFBYzs7d0NBQ3hCLE9BQU8sR0FBRyxLQUFJLENBQUMsU0FBUyxDQUFDLHNCQUFzQixDQUFDLE1BQU0sQ0FBQztvQ0FDN0QsSUFBSSxPQUFPLEVBQUU7d0NBQ1gsS0FBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDO3FDQUNsQztvQ0FDRCxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7b0NBQ2pCLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQ0FDZCxDQUFDLENBQUE7Z0NBRUQsTUFBTSxDQUFDLFNBQVM7OztnQ0FBRyxjQUFNLE9BQUEsUUFBUSxDQUFDLG1CQUFBLE1BQU0sQ0FBQyxNQUFNLEVBQVUsQ0FBQyxFQUFqQyxDQUFpQyxDQUFBLENBQUM7Z0NBQzNELE1BQU0sQ0FBQyxPQUFPOzs7Z0NBQUcsY0FBTSxPQUFBLFFBQVEsQ0FBQyxFQUFFLENBQUMsRUFBWixDQUFZLENBQUEsQ0FBQztnQ0FDcEMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQzs0QkFDN0IsQ0FBQyxFQUFDLEVBQUM7Ozs7S0FDSjs7Ozs7O0lBRUsseUNBQVM7Ozs7O0lBQWYsVUFBZ0IsR0FBVyxFQUFFLEVBQWtDOzs7Ozs7NkJBQ3RELElBQUk7d0JBQ00scUJBQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBQTs7d0JBQTdCLE1BQU0sR0FBRyxTQUFvQjt3QkFDbkMsSUFBSSxNQUFNLEVBQUU7NEJBQ1YsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDOzRCQUNYLHNCQUFPLE1BQU0sRUFBQzt5QkFDZjt3QkFDRCxxQkFBTSxJQUFJLE9BQU87Ozs7NEJBQUMsVUFBQyxPQUFPLElBQUssT0FBQSxVQUFVLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxFQUF6QixDQUF5QixFQUFDLEVBQUE7O3dCQUF6RCxTQUF5RCxDQUFDOzs7Ozs7S0FFN0Q7O2dCQXBERixVQUFVLFNBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzs7O2dCQUpRLFlBQVk7OztnQ0FEckI7Q0F3REMsQUFyREQsSUFxREM7U0FsRFkscUJBQXFCOzs7Ozs7SUFDaEMsMENBQStDOzs7OztJQUVuQywwQ0FBK0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZVVybCB9IGZyb20gXCJAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyXCI7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogXCJyb290XCIsXG59KVxuZXhwb3J0IGNsYXNzIFN0YXRpY1Jlc291cmNlU2VydmljZSB7XG4gIHByaXZhdGUgUmVzdWx0TWFwID0gbmV3IE1hcDxzdHJpbmcsIFNhZmVVcmw+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcikge31cblxuICBhc3luYyBsb2FkKHVybDogc3RyaW5nLCBjYjogKHJlc3VsdDogU2FmZVVybCB8IFwiXCIpID0+IHZvaWQgPSAoKSA9PiB7fSkge1xuICAgIGlmICghdXJsIHx8IHR5cGVvZiB1cmwgIT09IFwic3RyaW5nXCIpIHtcbiAgICAgIGNiKFwiXCIpO1xuICAgICAgcmV0dXJuIFwiXCI7XG4gICAgfVxuICAgIGlmICh0aGlzLlJlc3VsdE1hcC5oYXModXJsKSkge1xuICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5SZXN1bHRNYXAuZ2V0KHVybCkgfHwgXCJcIjtcbiAgICAgIGNiKHJlc3VsdCk7XG4gICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cblxuICAgIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKHVybCk7XG4gICAgaWYgKCFyZXMub2spIHtcbiAgICAgIGNiKFwiXCIpO1xuICAgICAgcmV0dXJuIFwiXCI7XG4gICAgfVxuXG4gICAgY29uc3QgYmxvYiA9IGF3YWl0IHJlcy5ibG9iKCk7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlPFNhZmVVcmwgfCBcIlwiPigocmVzb2x2ZSkgPT4ge1xuICAgICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcbiAgICAgIGNvbnN0IGNhbGxiYWNrID0gKHJlc3VsdDogc3RyaW5nKSA9PiB7XG4gICAgICAgIGNvbnN0IHNhZmVVcmwgPSB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0VXJsKHJlc3VsdCk7XG4gICAgICAgIGlmIChzYWZlVXJsKSB7XG4gICAgICAgICAgdGhpcy5SZXN1bHRNYXAuc2V0KHVybCwgc2FmZVVybCk7XG4gICAgICAgIH1cbiAgICAgICAgcmVzb2x2ZShzYWZlVXJsKTtcbiAgICAgICAgY2Ioc2FmZVVybCk7XG4gICAgICB9O1xuXG4gICAgICByZWFkZXIub25sb2FkZW5kID0gKCkgPT4gY2FsbGJhY2socmVhZGVyLnJlc3VsdCBhcyBzdHJpbmcpO1xuICAgICAgcmVhZGVyLm9uZXJyb3IgPSAoKSA9PiBjYWxsYmFjayhcIlwiKTtcbiAgICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGJsb2IpO1xuICAgIH0pO1xuICB9XG5cbiAgYXN5bmMgZm9yY2VMb2FkKHVybDogc3RyaW5nLCBjYjogKHJlc3VsdDogU2FmZVVybCB8IFwiXCIpID0+IHZvaWQpIHtcbiAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5sb2FkKHVybCk7XG4gICAgICBpZiAocmVzdWx0KSB7XG4gICAgICAgIGNiKHJlc3VsdCk7XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICB9XG4gICAgICBhd2FpdCBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4gc2V0VGltZW91dChyZXNvbHZlLCAyMDAwKSk7XG4gICAgfVxuICB9XG59XG4iXX0=